diff --git a/assets/manifest.json b/assets/manifest.json index ceb7d39..25e612f 100644 --- a/assets/manifest.json +++ b/assets/manifest.json @@ -3,7 +3,7 @@ "name": "Msg Gemini", "icons": [ { - "src": "https://uxwing.com/wp-content/themes/uxwing/download/brands-and-social-media/google-gemini-icon.png", + "src": "https://cdn.tiye.me/logo/gemini-icon.png", "sizes": "512x512" } ], diff --git a/calcit.cirru b/calcit.cirru index 43e8dd0..4407b5c 100644 --- a/calcit.cirru +++ b/calcit.cirru @@ -18,6 +18,18 @@ |T $ %{} :Leaf (:at 1739122331785) (:by |rJG4IHzWf) (:text |defatom) |b $ %{} :Leaf (:at 1739122364386) (:by |rJG4IHzWf) (:text |*gen-ai) |h $ %{} :Leaf (:at 1739122336037) (:by |rJG4IHzWf) (:text |nil) + |*gen-ai-new $ %{} :CodeEntry (:doc |) + :code $ %{} :Expr (:at 1744996557767) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996559066) (:by |rJG4IHzWf) (:text |defatom) + |b $ %{} :Leaf (:at 1744996557767) (:by |rJG4IHzWf) (:text |*gen-ai-new) + |h $ %{} :Leaf (:at 1744996560550) (:by |rJG4IHzWf) (:text |nil) + |*openai $ %{} :CodeEntry (:doc "|called openai sdk, but actually for openrouter") + :code $ %{} :Expr (:at 1745685331700) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685733719) (:by |rJG4IHzWf) (:text |defatom) + |b $ %{} :Leaf (:at 1745685331700) (:by |rJG4IHzWf) (:text |*openai) + |h $ %{} :Leaf (:at 1745685341848) (:by |rJG4IHzWf) (:text |nil) |call-anthropic-msg! $ %{} :CodeEntry (:doc |) :code $ %{} :Expr (:at 1728102945654) (:by |rJG4IHzWf) :data $ {} @@ -1539,6 +1551,1310 @@ |T $ %{} :Leaf (:at 1743535221950) (:by |rJG4IHzWf) (:text |assoc) |b $ %{} :Leaf (:at 1743535221950) (:by |rJG4IHzWf) (:text |:done?) |h $ %{} :Leaf (:at 1743535221950) (:by |rJG4IHzWf) (:text |true) + |call-genai-msg! $ %{} :CodeEntry (:doc |) + :code $ %{} :Expr (:at 1744996503800) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996503800) (:by |rJG4IHzWf) (:text |defn) + |b $ %{} :Leaf (:at 1744996503800) (:by |rJG4IHzWf) (:text |call-genai-msg!) + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |variant) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |cursor) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |state) + |l $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |prompt-text) + |o $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |d!) + |l $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |hint-fn) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |async) + |o $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |if) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |nil?) + |b $ %{} :Leaf (:at 1744996574433) (:by |rJG4IHzWf) (:text |@*gen-ai-new) + |h $ %{} :Expr (:at 1744996523115) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996523115) (:by |rJG4IHzWf) (:text |reset!) + |b $ %{} :Leaf (:at 1744996576252) (:by |rJG4IHzWf) (:text |*gen-ai-new) + |h $ %{} :Expr (:at 1744996523115) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996523115) (:by |rJG4IHzWf) (:text |new) + |b $ %{} :Leaf (:at 1744996523115) (:by |rJG4IHzWf) (:text |GoogleGenAI) + |h $ %{} :Expr (:at 1744996523115) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996523115) (:by |rJG4IHzWf) (:text |js-object) + |b $ %{} :Expr (:at 1744996523115) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996523115) (:by |rJG4IHzWf) (:text |:apiKey) + |b $ %{} :Expr (:at 1744996523115) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996523115) (:by |rJG4IHzWf) (:text |get-gemini-key!) + |q $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |if-let) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |abort) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |deref) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |*abort-control) + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |do) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |js/console.warn) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text "|\"Aborting prev") + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |.!abort) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |abort) + |s $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |d!) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:states) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |->) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |state) + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:answer) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |nil) + |l $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:loading?) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |true) + |t $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |let) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |selected) + |b $ %{} :Expr (:at 1746251494875) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1746251495408) (:by |rJG4IHzWf) (:text |if) + |L $ %{} :Expr (:at 1746251496431) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1746251498749) (:by |rJG4IHzWf) (:text |.includes?) + |T $ %{} :Leaf (:at 1746251495792) (:by |rJG4IHzWf) (:text |prompt-text) + |b $ %{} :Leaf (:at 1746251504656) (:by |rJG4IHzWf) (:text "|\"{{selected}}") + |T $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |js-await) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |get-selected) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |gen-ai) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |let) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |ai) + |b $ %{} :Leaf (:at 1744996582983) (:by |rJG4IHzWf) (:text |@*gen-ai-new) + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1746206962793) (:by |rJG4IHzWf) (:text |;) + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |js/console.log) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |ai) + |l $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |ai) + |l $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |content) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |.!replace) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |prompt-text) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text "|\"{{selected}}") + |l $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |or) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |selected) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text "|\"<未找到选中内容>") + |o $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |json?) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |or) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |.!includes) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |prompt-text) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text "|\"{{json}}") + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |.!includes) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |prompt-text) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text "|\"{{JSON}}") + |p $ %{} :Expr (:at 1744996903853) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996906007) (:by |rJG4IHzWf) (:text |think?) + |b $ %{} :Expr (:at 1744996909128) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996909128) (:by |rJG4IHzWf) (:text |or) + |b $ %{} :Expr (:at 1744996909128) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996909128) (:by |rJG4IHzWf) (:text |.!includes) + |b $ %{} :Leaf (:at 1744996909128) (:by |rJG4IHzWf) (:text |prompt-text) + |h $ %{} :Leaf (:at 1744996912200) (:by |rJG4IHzWf) (:text "|\"{{think}}") + |h $ %{} :Expr (:at 1744996909128) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996909128) (:by |rJG4IHzWf) (:text |.!includes) + |b $ %{} :Leaf (:at 1744996909128) (:by |rJG4IHzWf) (:text |prompt-text) + |h $ %{} :Leaf (:at 1744996916963) (:by |rJG4IHzWf) (:text "|\"{{THINK}}") + |pT $ %{} :Expr (:at 1744996903853) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746251262598) (:by |rJG4IHzWf) (:text |search?) + |b $ %{} :Expr (:at 1744996909128) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996909128) (:by |rJG4IHzWf) (:text |or) + |b $ %{} :Expr (:at 1744996909128) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996909128) (:by |rJG4IHzWf) (:text |.!includes) + |b $ %{} :Leaf (:at 1744996909128) (:by |rJG4IHzWf) (:text |prompt-text) + |h $ %{} :Leaf (:at 1746251255630) (:by |rJG4IHzWf) (:text "|\"{{search}}") + |h $ %{} :Expr (:at 1744996909128) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996909128) (:by |rJG4IHzWf) (:text |.!includes) + |b $ %{} :Leaf (:at 1744996909128) (:by |rJG4IHzWf) (:text |prompt-text) + |h $ %{} :Leaf (:at 1746251259223) (:by |rJG4IHzWf) (:text "|\"{{SEARCH}}") + |q $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |sdk-result) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |js-await) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996715393) (:by |rJG4IHzWf) (:text |.!generateContentStream) + |a $ %{} :Expr (:at 1744996869434) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996869227) (:by |rJG4IHzWf) (:text |.-models) + |b $ %{} :Leaf (:at 1744996873094) (:by |rJG4IHzWf) (:text |gen-ai) + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |js-object) + |X $ %{} :Expr (:at 1744996722150) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996726590) (:by |rJG4IHzWf) (:text |:model) + |b $ %{} :Expr (:at 1744996728479) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996728479) (:by |rJG4IHzWf) (:text |pick-model) + |b $ %{} :Leaf (:at 1744996728479) (:by |rJG4IHzWf) (:text |variant) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:contents) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |js-array) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |js-object) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:role) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text "|\"user") + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:parts) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |js-array) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |js-object) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:text) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |content) + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744997104367) (:by |rJG4IHzWf) (:text |:config) + |b $ %{} :Expr (:at 1744996984617) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1744996989402) (:by |rJG4IHzWf) (:text |js/Object.assign) + |L $ %{} :Expr (:at 1744996990284) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996992613) (:by |rJG4IHzWf) (:text |js-object) + |b $ %{} :Expr (:at 1744997001012) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744997008070) (:by |rJG4IHzWf) (:text |:thinkingConfig) + |b $ %{} :Expr (:at 1744997008993) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744997011580) (:by |rJG4IHzWf) (:text |js-object) + |b $ %{} :Expr (:at 1744997012706) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744997025055) (:by |rJG4IHzWf) (:text |:thinkingBudget) + |b $ %{} :Expr (:at 1744997040867) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1744997041460) (:by |rJG4IHzWf) (:text |if) + |L $ %{} :Leaf (:at 1744997043411) (:by |rJG4IHzWf) (:text |think?) + |P $ %{} :Leaf (:at 1744997224962) (:by |rJG4IHzWf) (:text |2000) + |T $ %{} :Leaf (:at 1744997025778) (:by |rJG4IHzWf) (:text |0) + |h $ %{} :Expr (:at 1744997028120) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744997034803) (:by |rJG4IHzWf) (:text |:includeThoughts) + |b $ %{} :Leaf (:at 1744997038830) (:by |rJG4IHzWf) (:text |think?) + |h $ %{} :Expr (:at 1744997158804) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744997158804) (:by |rJG4IHzWf) (:text |:httpOptions) + |b $ %{} :Expr (:at 1744997158804) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744997158804) (:by |rJG4IHzWf) (:text |js-object) + |b $ %{} :Expr (:at 1744997158804) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744997158804) (:by |rJG4IHzWf) (:text |:baseUrl) + |b $ %{} :Leaf (:at 1744997158804) (:by |rJG4IHzWf) (:text "|\"https://sf.chenyong.life") + |h $ %{} :Expr (:at 1744997158804) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744997158804) (:by |rJG4IHzWf) (:text |:signal) + |b $ %{} :Expr (:at 1744997158804) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744997158804) (:by |rJG4IHzWf) (:text |let) + |b $ %{} :Expr (:at 1744997158804) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Expr (:at 1744997158804) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744997158804) (:by |rJG4IHzWf) (:text |abort) + |b $ %{} :Expr (:at 1744997158804) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744997158804) (:by |rJG4IHzWf) (:text |new) + |b $ %{} :Leaf (:at 1744997158804) (:by |rJG4IHzWf) (:text |js/AbortController) + |h $ %{} :Expr (:at 1744997158804) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744997158804) (:by |rJG4IHzWf) (:text |reset!) + |b $ %{} :Leaf (:at 1744997158804) (:by |rJG4IHzWf) (:text |*abort-control) + |h $ %{} :Leaf (:at 1744997158804) (:by |rJG4IHzWf) (:text |abort) + |l $ %{} :Expr (:at 1744997158804) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744997158804) (:by |rJG4IHzWf) (:text |.-signal) + |b $ %{} :Leaf (:at 1744997158804) (:by |rJG4IHzWf) (:text |abort) + |l $ %{} :Expr (:at 1746207120795) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746207173015) (:by |rJG4IHzWf) (:text |:abortSignal) + |b $ %{} :Expr (:at 1746207120795) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746207120795) (:by |rJG4IHzWf) (:text |let) + |b $ %{} :Expr (:at 1746207120795) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Expr (:at 1746207120795) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746207120795) (:by |rJG4IHzWf) (:text |abort) + |b $ %{} :Expr (:at 1746207120795) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746207120795) (:by |rJG4IHzWf) (:text |new) + |b $ %{} :Leaf (:at 1746207120795) (:by |rJG4IHzWf) (:text |js/AbortController) + |h $ %{} :Expr (:at 1746207120795) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746207120795) (:by |rJG4IHzWf) (:text |reset!) + |b $ %{} :Leaf (:at 1746207120795) (:by |rJG4IHzWf) (:text |*abort-control) + |h $ %{} :Leaf (:at 1746207120795) (:by |rJG4IHzWf) (:text |abort) + |l $ %{} :Expr (:at 1746207120795) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746207120795) (:by |rJG4IHzWf) (:text |.-signal) + |b $ %{} :Leaf (:at 1746207120795) (:by |rJG4IHzWf) (:text |abort) + |o $ %{} :Expr (:at 1746251349330) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746251353156) (:by |rJG4IHzWf) (:text |:tools) + |b $ %{} :Expr (:at 1746251356212) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746251357995) (:by |rJG4IHzWf) (:text |js-array) + |b $ %{} :Expr (:at 1746251358400) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746251368606) (:by |rJG4IHzWf) (:text |js-object) + |b $ %{} :Expr (:at 1746251371459) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746251377905) (:by |rJG4IHzWf) (:text |:googleSearch) + |b $ %{} :Expr (:at 1746251378996) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746251383277) (:by |rJG4IHzWf) (:text |js-object) + |T $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |if) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |json?) + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |js-object) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text "|\"responseMimeType") + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text "|\"application/json") + |l $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |js/undefined) + |s $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |*text) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |atom) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text "|\"") + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |js-await) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |for-await-stream) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |sdk-result) + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |fn) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996793983) (:by |rJG4IHzWf) (:text |?) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |chunk) + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |if) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |some?) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |chunk) + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |do) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |swap!) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |*text) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |str) + |l $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996798115) (:by |rJG4IHzWf) (:text |.-text) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |chunk) + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |d!) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:states) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |->) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |state) + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:answer) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |@*text) + |l $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:loading?) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |false) + |o $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:done?) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |false) + |l $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |d!) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:states) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |->) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |state) + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:answer) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |@*text) + |l $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:loading?) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |false) + |o $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:done?) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |false) + |l $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |d!) + |b $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:states) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |->) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |state) + |h $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:answer) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |@*text) + |l $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:loading?) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |false) + |o $ %{} :Expr (:at 1744996505254) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |:done?) + |h $ %{} :Leaf (:at 1744996505254) (:by |rJG4IHzWf) (:text |true) + |call-imagin-msg! $ %{} :CodeEntry (:doc |) + :code $ %{} :Expr (:at 1744739404439) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739404439) (:by |rJG4IHzWf) (:text |defn) + |b $ %{} :Leaf (:at 1744739404439) (:by |rJG4IHzWf) (:text |call-imagin-msg!) + |h $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |variant) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |cursor) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |state) + |l $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |prompt-text) + |o $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |d!) + |l $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |hint-fn) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |async) + |o $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |if) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |nil?) + |b $ %{} :Leaf (:at 1744996553599) (:by |rJG4IHzWf) (:text |@*gen-ai-new) + |h $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |reset!) + |b $ %{} :Leaf (:at 1744996569759) (:by |rJG4IHzWf) (:text |*gen-ai-new) + |h $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |new) + |b $ %{} :Leaf (:at 1744739515215) (:by |rJG4IHzWf) (:text |GoogleGenAI) + |h $ %{} :Expr (:at 1744739516067) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1744739521608) (:by |rJG4IHzWf) (:text |js-object) + |T $ %{} :Expr (:at 1744739523028) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1744739527644) (:by |rJG4IHzWf) (:text |:apiKey) + |T $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |get-gemini-key!) + |p $ %{} :Expr (:at 1744741812227) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1744741822813) (:by |rJG4IHzWf) (:text |if-let) + |T $ %{} :Expr (:at 1744741816312) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741813294) (:by |rJG4IHzWf) (:text |target) + |b $ %{} :Expr (:at 1744741813294) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741813294) (:by |rJG4IHzWf) (:text |js/document.querySelector) + |b $ %{} :Leaf (:at 1744741813294) (:by |rJG4IHzWf) (:text "|\".show-image") + |b $ %{} :Expr (:at 1744741827128) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741830806) (:by |rJG4IHzWf) (:text |.!setAttribute) + |b $ %{} :Leaf (:at 1744741832553) (:by |rJG4IHzWf) (:text |target) + |h $ %{} :Leaf (:at 1744741838899) (:by |rJG4IHzWf) (:text "|\"src") + |l $ %{} :Leaf (:at 1744741833748) (:by |rJG4IHzWf) (:text "|\"") + |q $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |if-let) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |abort) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |deref) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |*abort-control) + |h $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |do) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |js/console.warn) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text "|\"Aborting prev") + |h $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |.!abort) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |abort) + |s $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |d!) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |:states) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |->) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |state) + |h $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |:answer) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |nil) + |l $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |:loading?) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |true) + |t $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |let) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |selected) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |js-await) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |get-selected) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |gen-ai) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |let) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |ai) + |b $ %{} :Leaf (:at 1744996564141) (:by |rJG4IHzWf) (:text |@*gen-ai-new) + |h $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |js/console.log) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |ai) + |l $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |ai) + |l $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |content) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |.!replace) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |prompt-text) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text "|\"{{selected}}") + |l $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |or) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |selected) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text "|\"<未找到选中内容>") + |q $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |sdk-result) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |js-await) + |b $ %{} :Expr (:at 1744739548120) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744740650804) (:by |rJG4IHzWf) (:text |.!generateContent) + |b $ %{} :Expr (:at 1744739554125) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1744739557239) (:by |rJG4IHzWf) (:text |.-models) + |T $ %{} :Leaf (:at 1744739548120) (:by |rJG4IHzWf) (:text |gen-ai) + |h $ %{} :Expr (:at 1744739548120) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739548120) (:by |rJG4IHzWf) (:text |js-object) + |b $ %{} :Expr (:at 1744739548120) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739548120) (:by |rJG4IHzWf) (:text |:model) + |b $ %{} :Leaf (:at 1744740147640) (:by |rJG4IHzWf) (:text "|\"gemini-2.0-flash-exp-image-generation") + |h $ %{} :Expr (:at 1744739573216) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739573216) (:by |rJG4IHzWf) (:text |:contents) + |b $ %{} :Leaf (:at 1744739621764) (:by |rJG4IHzWf) (:text |content) + |l $ %{} :Expr (:at 1744739575864) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739576749) (:by |rJG4IHzWf) (:text |:config) + |b $ %{} :Expr (:at 1744739580851) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739580851) (:by |rJG4IHzWf) (:text |js-object) + |b $ %{} :Expr (:at 1744739593881) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1744739596771) (:by |rJG4IHzWf) (:text |:httpOptions) + |T $ %{} :Expr (:at 1744739598631) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1744739600161) (:by |rJG4IHzWf) (:text |js-object) + |T $ %{} :Expr (:at 1744739580851) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739580851) (:by |rJG4IHzWf) (:text |:baseUrl) + |b $ %{} :Leaf (:at 1744739580851) (:by |rJG4IHzWf) (:text "|\"https://sf.chenyong.life") + |h $ %{} :Expr (:at 1744739580851) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739580851) (:by |rJG4IHzWf) (:text |:signal) + |b $ %{} :Expr (:at 1744739580851) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739580851) (:by |rJG4IHzWf) (:text |let) + |b $ %{} :Expr (:at 1744739580851) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Expr (:at 1744739580851) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739580851) (:by |rJG4IHzWf) (:text |abort) + |b $ %{} :Expr (:at 1744739580851) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739580851) (:by |rJG4IHzWf) (:text |new) + |b $ %{} :Leaf (:at 1744739580851) (:by |rJG4IHzWf) (:text |js/AbortController) + |h $ %{} :Expr (:at 1744739580851) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739580851) (:by |rJG4IHzWf) (:text |reset!) + |b $ %{} :Leaf (:at 1744739580851) (:by |rJG4IHzWf) (:text |*abort-control) + |h $ %{} :Leaf (:at 1744739580851) (:by |rJG4IHzWf) (:text |abort) + |l $ %{} :Expr (:at 1744739580851) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739580851) (:by |rJG4IHzWf) (:text |.-signal) + |b $ %{} :Leaf (:at 1744739580851) (:by |rJG4IHzWf) (:text |abort) + |l $ %{} :Expr (:at 1744740156064) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744740158165) (:by |rJG4IHzWf) (:text |:responseModalities) + |b $ %{} :Expr (:at 1744740160954) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744740163594) (:by |rJG4IHzWf) (:text |js-array) + |X $ %{} :Expr (:at 1744740174695) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1744740177378) (:by |rJG4IHzWf) (:text |.-TEXT) + |T $ %{} :Leaf (:at 1744740174060) (:by |rJG4IHzWf) (:text |Modality) + |Z $ %{} :Expr (:at 1744740174695) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1744740182118) (:by |rJG4IHzWf) (:text |.-IMAGE) + |T $ %{} :Leaf (:at 1744740174060) (:by |rJG4IHzWf) (:text |Modality) + |s $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |*text) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |atom) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text "|\"") + |h $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |js-await) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744740691012) (:by |rJG4IHzWf) (:text |->) + |a $ %{} :Leaf (:at 1744740693327) (:by |rJG4IHzWf) (:text |sdk-result) + |d $ %{} :Leaf (:at 1744740698768) (:by |rJG4IHzWf) (:text |.-candidates) + |f $ %{} :Leaf (:at 1744740700596) (:by |rJG4IHzWf) (:text |.-0) + |g $ %{} :Leaf (:at 1744740702858) (:by |rJG4IHzWf) (:text |.-content) + |gT $ %{} :Leaf (:at 1744740705900) (:by |rJG4IHzWf) (:text |.-parts) + |h $ %{} :Expr (:at 1744740708435) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1744740712258) (:by |rJG4IHzWf) (:text |.!forEach) + |T $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |fn) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |?) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |chunk) + |h $ %{} :Leaf (:at 1744740759697) (:by |rJG4IHzWf) (:text |_a) + |l $ %{} :Leaf (:at 1744740761161) (:by |rJG4IHzWf) (:text |_b) + |h $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |if) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |some?) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |chunk) + |h $ %{} :Expr (:at 1744740221593) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1744740231105) (:by |rJG4IHzWf) (:text |if-let) + |L $ %{} :Expr (:at 1744740231937) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744740232962) (:by |rJG4IHzWf) (:text |text) + |b $ %{} :Expr (:at 1744740233759) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744740233759) (:by |rJG4IHzWf) (:text |.-text) + |b $ %{} :Leaf (:at 1744740233759) (:by |rJG4IHzWf) (:text |chunk) + |T $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |do) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |swap!) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |*text) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |str) + |l $ %{} :Leaf (:at 1744740237234) (:by |rJG4IHzWf) (:text |text) + |h $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |d!) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |:states) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |->) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |state) + |h $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |:answer) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |@*text) + |l $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |:loading?) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |false) + |o $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |:done?) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |false) + |b $ %{} :Expr (:at 1744740788082) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744740790192) (:by |rJG4IHzWf) (:text |if-let) + |b $ %{} :Expr (:at 1744740790733) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744740792246) (:by |rJG4IHzWf) (:text |image-data) + |b $ %{} :Expr (:at 1744740797474) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744740803939) (:by |rJG4IHzWf) (:text |.-inlineData) + |b $ %{} :Leaf (:at 1744740806420) (:by |rJG4IHzWf) (:text |chunk) + |h $ %{} :Expr (:at 1744740811857) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744740812285) (:by |rJG4IHzWf) (:text |let) + |b $ %{} :Expr (:at 1744740813794) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Expr (:at 1744740815533) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741053357) (:by |rJG4IHzWf) (:text |image-blob) + |b $ %{} :Expr (:at 1744741031886) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741032137) (:by |rJG4IHzWf) (:text |base64ToBlob) + |b $ %{} :Expr (:at 1744741036388) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1744741038238) (:by |rJG4IHzWf) (:text |.-data) + |T $ %{} :Leaf (:at 1744741034609) (:by |rJG4IHzWf) (:text |image-data) + |b $ %{} :Expr (:at 1744741438046) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741441938) (:by |rJG4IHzWf) (:text |url) + |b $ %{} :Expr (:at 1744741442621) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741443458) (:by |rJG4IHzWf) (:text |js/URL.createObjectURL) + |b $ %{} :Leaf (:at 1744741445906) (:by |rJG4IHzWf) (:text |image-blob) + |h $ %{} :Expr (:at 1744741476463) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741477306) (:by |rJG4IHzWf) (:text |target) + |b $ %{} :Expr (:at 1744741477695) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741477695) (:by |rJG4IHzWf) (:text |js/document.querySelector) + |b $ %{} :Leaf (:at 1744741477695) (:by |rJG4IHzWf) (:text "|\".show-image") + |h $ %{} :Expr (:at 1744741481209) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741483765) (:by |rJG4IHzWf) (:text |->) + |b $ %{} :Leaf (:at 1744741484185) (:by |rJG4IHzWf) (:text |target) + |h $ %{} :Expr (:at 1744741485459) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741488697) (:by |rJG4IHzWf) (:text |.!setAttribute) + |b $ %{} :Leaf (:at 1744741534847) (:by |rJG4IHzWf) (:text "|\"src") + |h $ %{} :Leaf (:at 1744741491989) (:by |rJG4IHzWf) (:text |url) + |l $ %{} :Expr (:at 1744741503798) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1744741555815) (:by |rJG4IHzWf) (:text |;) + |T $ %{} :Leaf (:at 1744741504859) (:by |rJG4IHzWf) (:text |js/URL.revokeObjectURL) + |b $ %{} :Leaf (:at 1744741506881) (:by |rJG4IHzWf) (:text |url) + |o $ %{} :Expr (:at 1744741725113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |do) + |b $ %{} :Expr (:at 1744741725113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |swap!) + |b $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |*text) + |h $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |str) + |l $ %{} :Leaf (:at 1744741737479) (:by |rJG4IHzWf) (:text "|\"(image ready)") + |h $ %{} :Expr (:at 1744741725113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |d!) + |b $ %{} :Expr (:at 1744741725113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |:states) + |h $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Expr (:at 1744741725113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |->) + |b $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |state) + |h $ %{} :Expr (:at 1744741725113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |:answer) + |h $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |@*text) + |l $ %{} :Expr (:at 1744741725113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |:loading?) + |h $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |false) + |o $ %{} :Expr (:at 1744741725113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |:done?) + |h $ %{} :Leaf (:at 1744741725113) (:by |rJG4IHzWf) (:text |false) + |l $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |d!) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |:states) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |->) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |state) + |h $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |:answer) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |@*text) + |l $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |:loading?) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |false) + |o $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |:done?) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |false) + |l $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |d!) + |b $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |:states) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |->) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |state) + |h $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |:answer) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |@*text) + |l $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |:loading?) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |false) + |o $ %{} :Expr (:at 1744739405770) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |:done?) + |h $ %{} :Leaf (:at 1744739405770) (:by |rJG4IHzWf) (:text |true) + |call-openrouter! $ %{} :CodeEntry (:doc |) + :code $ %{} :Expr (:at 1745685220750) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685235599) (:by |rJG4IHzWf) (:text |defn) + |b $ %{} :Leaf (:at 1745685227473) (:by |rJG4IHzWf) (:text |call-openrouter!) + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |cursor) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |state) + |l $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |prompt-text) + |m $ %{} :Leaf (:at 1745685454534) (:by |rJG4IHzWf) (:text |variant) + |n $ %{} :Leaf (:at 1745685801126) (:by |rJG4IHzWf) (:text |thinking?) + |o $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |d!) + |l $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |hint-fn) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |async) + |o $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |if) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |nil?) + |b $ %{} :Leaf (:at 1745685325881) (:by |rJG4IHzWf) (:text |@*openai) + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |reset!) + |b $ %{} :Leaf (:at 1745685329180) (:by |rJG4IHzWf) (:text |*openai) + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |new) + |b $ %{} :Leaf (:at 1745685348981) (:by |rJG4IHzWf) (:text |OpenAI) + |h $ %{} :Expr (:at 1745685363477) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1745685369220) (:by |rJG4IHzWf) (:text |js-object) + |T $ %{} :Expr (:at 1745685371366) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1745685373515) (:by |rJG4IHzWf) (:text |:baseURL) + |L $ %{} :Leaf (:at 1745687249358) (:by |rJG4IHzWf) (:text "|\"https://openrouter.ai/api/v1") + |b $ %{} :Expr (:at 1745685376806) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1745685383329) (:by |rJG4IHzWf) (:text |:apiKey) + |T $ %{} :Expr (:at 1745685378277) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685378277) (:by |rJG4IHzWf) (:text |get-openrouter-key!) + |h $ %{} :Expr (:at 1745685385022) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685392346) (:by |rJG4IHzWf) (:text |:defaultHeaders) + |b $ %{} :Expr (:at 1745685392956) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685395637) (:by |rJG4IHzWf) (:text |js-object) + |l $ %{} :Expr (:at 1745685898763) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685900533) (:by |rJG4IHzWf) (:text |:dangerouslyAllowBrowser) + |b $ %{} :Leaf (:at 1745685901358) (:by |rJG4IHzWf) (:text |true) + |q $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |if-let) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |abort) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |deref) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |*abort-control) + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |do) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |js/console.warn) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text "|\"Aborting prev") + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |.!abort) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |abort) + |s $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |d!) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:states) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |->) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |state) + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:answer) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |nil) + |l $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:loading?) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |true) + |t $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |let) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |selected) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |js-await) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |get-selected) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685501865) (:by |rJG4IHzWf) (:text |openai) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |let) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |ai) + |b $ %{} :Leaf (:at 1745685504271) (:by |rJG4IHzWf) (:text |@*openai) + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1745687886013) (:by |rJG4IHzWf) (:text |;) + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |js/console.log) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |ai) + |l $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |ai) + |l $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |content) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |.!replace) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |prompt-text) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text "|\"{{selected}}") + |l $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |or) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |selected) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text "|\"<未找到选中内容>") + |o $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |json?) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |or) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |.!includes) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |prompt-text) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text "|\"{{json}}") + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |.!includes) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |prompt-text) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text "|\"{{JSON}}") + |q $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |sdk-result) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |js-await) + |b $ %{} :Expr (:at 1745686727645) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1745686728372) (:by |rJG4IHzWf) (:text |->) + |L $ %{} :Leaf (:at 1745686730368) (:by |rJG4IHzWf) (:text |openai) + |P $ %{} :Leaf (:at 1745686732505) (:by |rJG4IHzWf) (:text |.-chat) + |R $ %{} :Leaf (:at 1745686737455) (:by |rJG4IHzWf) (:text |.-completions) + |T $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685579669) (:by |rJG4IHzWf) (:text |.!create) + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |js-object) + |X $ %{} :Expr (:at 1745685598490) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685600093) (:by |rJG4IHzWf) (:text |:model) + |b $ %{} :Leaf (:at 1745685621902) (:by |rJG4IHzWf) (:text |variant) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685632633) (:by |rJG4IHzWf) (:text |:messages) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |js-array) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |js-object) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:role) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text "|\"user") + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685634682) (:by |rJG4IHzWf) (:text |:content) + |b $ %{} :Leaf (:at 1745685639066) (:by |rJG4IHzWf) (:text |content) + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1745685642069) (:by |rJG4IHzWf) (:text |;) + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:generationConfig) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |if) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |json?) + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |js-object) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text "|\"responseMimeType") + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text "|\"application/json") + |l $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |js/undefined) + |l $ %{} :Expr (:at 1745685653269) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685655281) (:by |rJG4IHzWf) (:text |:stream) + |b $ %{} :Leaf (:at 1745685656891) (:by |rJG4IHzWf) (:text |true) + |q $ %{} :Expr (:at 1745686448929) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745686451078) (:by |rJG4IHzWf) (:text |:headers) + |b $ %{} :Expr (:at 1745686451445) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745686456410) (:by |rJG4IHzWf) (:text |js-object) + |b $ %{} :Expr (:at 1745686456788) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745686458573) (:by |rJG4IHzWf) (:text |:HTTP-Referer) + |b $ %{} :Leaf (:at 1745686465794) (:by |rJG4IHzWf) (:text |js/location.host) + |l $ %{} :Expr (:at 1745687617050) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1745687621440) (:by |rJG4IHzWf) (:text |js-object) + |T $ %{} :Expr (:at 1745687616641) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745687616641) (:by |rJG4IHzWf) (:text |:signal) + |b $ %{} :Expr (:at 1745687616641) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745687616641) (:by |rJG4IHzWf) (:text |let) + |b $ %{} :Expr (:at 1745687616641) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Expr (:at 1745687616641) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745687616641) (:by |rJG4IHzWf) (:text |abort) + |b $ %{} :Expr (:at 1745687616641) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745687616641) (:by |rJG4IHzWf) (:text |new) + |b $ %{} :Leaf (:at 1745687616641) (:by |rJG4IHzWf) (:text |js/AbortController) + |h $ %{} :Expr (:at 1745687616641) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745687616641) (:by |rJG4IHzWf) (:text |reset!) + |b $ %{} :Leaf (:at 1745687616641) (:by |rJG4IHzWf) (:text |*abort-control) + |h $ %{} :Leaf (:at 1745687616641) (:by |rJG4IHzWf) (:text |abort) + |l $ %{} :Expr (:at 1745687616641) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745687616641) (:by |rJG4IHzWf) (:text |.-signal) + |b $ %{} :Leaf (:at 1745687616641) (:by |rJG4IHzWf) (:text |abort) + |s $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |*text) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |atom) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text "|\"") + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |js-await) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685687227) (:by |rJG4IHzWf) (:text |js-for-await) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |sdk-result) + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |fn) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |?) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |chunk) + |e $ %{} :Expr (:at 1745685702662) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1745687461040) (:by |rJG4IHzWf) (:text |;) + |T $ %{} :Leaf (:at 1745685705968) (:by |rJG4IHzWf) (:text |js/console.log) + |b $ %{} :Leaf (:at 1745685709512) (:by |rJG4IHzWf) (:text "|\"[CHUNK]") + |h $ %{} :Leaf (:at 1745685712183) (:by |rJG4IHzWf) (:text |chunk) + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |if) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |some?) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |chunk) + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |do) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |swap!) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |*text) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |str) + |l $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745686798491) (:by |rJG4IHzWf) (:text |->) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |chunk) + |h $ %{} :Leaf (:at 1745686802284) (:by |rJG4IHzWf) (:text |.-choices) + |l $ %{} :Leaf (:at 1745686803318) (:by |rJG4IHzWf) (:text |.-0) + |m $ %{} :Leaf (:at 1745687190625) (:by |rJG4IHzWf) (:text |.-delta) + |o $ %{} :Leaf (:at 1745687171972) (:by |rJG4IHzWf) (:text |.-content) + |q $ %{} :Expr (:at 1745686839174) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745686840382) (:by |rJG4IHzWf) (:text |or) + |b $ %{} :Leaf (:at 1745687199536) (:by |rJG4IHzWf) (:text "|\"") + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |d!) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:states) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |->) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |state) + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:answer) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |@*text) + |l $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:loading?) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |false) + |o $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:done?) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |false) + |l $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |d!) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:states) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |->) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |state) + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:answer) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |@*text) + |l $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:loading?) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |false) + |o $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:done?) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |false) + |l $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |d!) + |b $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:states) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |->) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |state) + |h $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:answer) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |@*text) + |l $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:loading?) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |false) + |o $ %{} :Expr (:at 1745685233559) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |assoc) + |b $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |:done?) + |h $ %{} :Leaf (:at 1745685233559) (:by |rJG4IHzWf) (:text |true) |comp-abort $ %{} :CodeEntry (:doc |) :code $ %{} :Expr (:at 1743534755260) (:by |rJG4IHzWf) :data $ {} @@ -1746,75 +3062,7 @@ |t $ %{} :Expr (:at 1729360299061) (:by |rJG4IHzWf) :data $ {} |T $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |:items) - |b $ %{} :Expr (:at 1729360299061) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |[]) - |b $ %{} :Expr (:at 1729360299061) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |::) - |b $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |:item) - |h $ %{} :Leaf (:at 1738811114508) (:by |rJG4IHzWf) (:text |:gemini-flash) - |l $ %{} :Leaf (:at 1734454146867) (:by |rJG4IHzWf) (:text "||Gemini Flash") - |c $ %{} :Expr (:at 1738811938766) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1738811938766) (:by |rJG4IHzWf) (:text |::) - |b $ %{} :Leaf (:at 1738811938766) (:by |rJG4IHzWf) (:text |:item) - |h $ %{} :Leaf (:at 1738811938766) (:by |rJG4IHzWf) (:text |:gemini-flash-lite) - |l $ %{} :Leaf (:at 1738811938766) (:by |rJG4IHzWf) (:text "||Gemini Flash Lite") - |e $ %{} :Expr (:at 1729360299061) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |::) - |b $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |:item) - |h $ %{} :Leaf (:at 1738811150998) (:by |rJG4IHzWf) (:text |:gemini-pro) - |l $ %{} :Leaf (:at 1737566015302) (:by |rJG4IHzWf) (:text "||Gemini Pro") - |eD $ %{} :Expr (:at 1729360299061) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |::) - |b $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |:item) - |h $ %{} :Leaf (:at 1744649694650) (:by |rJG4IHzWf) (:text |:gemini-pro-1.5) - |l $ %{} :Leaf (:at 1744649696565) (:by |rJG4IHzWf) (:text "||Gemini Pro 1.5") - |eT $ %{} :Expr (:at 1738811378124) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1738811378124) (:by |rJG4IHzWf) (:text |::) - |b $ %{} :Leaf (:at 1738811378124) (:by |rJG4IHzWf) (:text |:item) - |h $ %{} :Leaf (:at 1738811378124) (:by |rJG4IHzWf) (:text |:gemini-flash-thinking) - |l $ %{} :Leaf (:at 1738811378124) (:by |rJG4IHzWf) (:text "||Gemini Flash thinking") - |f $ %{} :Expr (:at 1729360299061) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |::) - |b $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |:item) - |h $ %{} :Leaf (:at 1735371169230) (:by |rJG4IHzWf) (:text |:gemini-thinking) - |l $ %{} :Leaf (:at 1735371162919) (:by |rJG4IHzWf) (:text "||Gemini thinking") - |g $ %{} :Expr (:at 1729360299061) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |::) - |b $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |:item) - |h $ %{} :Leaf (:at 1735371412635) (:by |rJG4IHzWf) (:text |:gemini-learnlm) - |l $ %{} :Leaf (:at 1735371417308) (:by |rJG4IHzWf) (:text "||Gemini LearnLM") - |h $ %{} :Expr (:at 1729360299061) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |::) - |b $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |:item) - |h $ %{} :Leaf (:at 1740504985229) (:by |rJG4IHzWf) (:text |:claude) - |l $ %{} :Leaf (:at 1740505331952) (:by |rJG4IHzWf) (:text "|\"Claude 3.5") - |j $ %{} :Expr (:at 1729360299061) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |::) - |b $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |:item) - |h $ %{} :Leaf (:at 1740504990738) (:by |rJG4IHzWf) (:text |:claude-3.7) - |l $ %{} :Leaf (:at 1740504996212) (:by |rJG4IHzWf) (:text "|\"Claude 3.7") - |k $ %{} :Expr (:at 1729360299061) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |::) - |b $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |:item) - |h $ %{} :Leaf (:at 1740505000420) (:by |rJG4IHzWf) (:text |:claude-3.7-thinking) - |l $ %{} :Leaf (:at 1740505007441) (:by |rJG4IHzWf) (:text "|\"Claude 3.7 Thinking") - |l $ %{} :Expr (:at 1729360299061) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |::) - |b $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |:item) - |h $ %{} :Leaf (:at 1729360997818) (:by |rJG4IHzWf) (:text |:deepinfra) - |l $ %{} :Leaf (:at 1729360337028) (:by |rJG4IHzWf) (:text "|\"Deepinfra") + |b $ %{} :Leaf (:at 1746250329626) (:by |rJG4IHzWf) (:text |models-menu) |u $ %{} :Expr (:at 1729360299061) (:by |rJG4IHzWf) :data $ {} |T $ %{} :Leaf (:at 1729360299061) (:by |rJG4IHzWf) (:text |:on-result) @@ -1884,6 +3132,28 @@ :data $ {} |D $ %{} :Leaf (:at 1723008319893) (:by |rJG4IHzWf) (:text |str-spaced) |b $ %{} :Leaf (:at 1728102216443) (:by |rJG4IHzWf) (:text |style-message-list) + |e $ %{} :Expr (:at 1744741393634) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741393634) (:by |rJG4IHzWf) (:text |if) + |b $ %{} :Expr (:at 1744741393634) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741393634) (:by |rJG4IHzWf) (:text |=) + |b $ %{} :Leaf (:at 1744741393634) (:by |rJG4IHzWf) (:text |:imagin-3) + |h $ %{} :Leaf (:at 1744741393634) (:by |rJG4IHzWf) (:text |model) + |h $ %{} :Expr (:at 1744741393634) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741393634) (:by |rJG4IHzWf) (:text |img) + |b $ %{} :Expr (:at 1744741393634) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741393634) (:by |rJG4IHzWf) (:text |{}) + |b $ %{} :Expr (:at 1744741393634) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741393634) (:by |rJG4IHzWf) (:text |:class-name) + |b $ %{} :Expr (:at 1744743036307) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1744743038194) (:by |rJG4IHzWf) (:text |str-spaced) + |L $ %{} :Leaf (:at 1744743044597) (:by |rJG4IHzWf) (:text |style-image) + |T $ %{} :Leaf (:at 1744741393634) (:by |rJG4IHzWf) (:text "|\"show-image") |h $ %{} :Expr (:at 1722445823902) (:by |rJG4IHzWf) :data $ {} |T $ %{} :Leaf (:at 1722445823902) (:by |rJG4IHzWf) (:text |if) @@ -1971,15 +3241,15 @@ :data $ {} |T $ %{} :Leaf (:at 1722482347320) (:by |rJG4IHzWf) (:text |either) |b $ %{} :Leaf (:at 1722482347683) (:by |rJG4IHzWf) (:text "|\"") - |h $ %{} :Expr (:at 1722482348223) (:by |rJG4IHzWf) + |h $ %{} :Expr (:at 1746250528169) (:by |rJG4IHzWf) :data $ {} - |T $ %{} :Leaf (:at 1722483575784) (:by |rJG4IHzWf) (:text |.!replace) - |b $ %{} :Leaf (:at 1722483515004) (:by |rJG4IHzWf) (:text |pattern-spaced-code) - |h $ %{} :Expr (:at 1722482611544) (:by |rJG4IHzWf) + |b $ %{} :Leaf (:at 1746250528169) (:by |rJG4IHzWf) (:text |.!replace) + |h $ %{} :Leaf (:at 1746250528169) (:by |rJG4IHzWf) (:text |pattern-spaced-code) + |l $ %{} :Expr (:at 1746250528169) (:by |rJG4IHzWf) :data $ {} - |D $ %{} :Leaf (:at 1722482616405) (:by |rJG4IHzWf) (:text |str) - |L $ %{} :Leaf (:at 1722482617960) (:by |rJG4IHzWf) (:text |&newline) - |T $ %{} :Leaf (:at 1722482626312) (:by |rJG4IHzWf) (:text "|\"```") + |T $ %{} :Leaf (:at 1746250528169) (:by |rJG4IHzWf) (:text |str) + |b $ %{} :Leaf (:at 1746250528169) (:by |rJG4IHzWf) (:text |&newline) + |h $ %{} :Leaf (:at 1746250528169) (:by |rJG4IHzWf) (:text "|\"```") |h $ %{} :Expr (:at 1722445823902) (:by |rJG4IHzWf) :data $ {} |T $ %{} :Leaf (:at 1722445823902) (:by |rJG4IHzWf) (:text |{}) @@ -2549,14 +3819,22 @@ |T $ %{} :Leaf (:at 1723603402548) (:by |rJG4IHzWf) (:text |=) |b $ %{} :Leaf (:at 1723603405327) (:by |rJG4IHzWf) (:text |action) |h $ %{} :Leaf (:at 1723603407398) (:by |rJG4IHzWf) (:text |:mount) - |h $ %{} :Expr (:at 1723603417488) (:by |rJG4IHzWf) + |h $ %{} :Expr (:at 1746207358366) (:by |rJG4IHzWf) :data $ {} - |D $ %{} :Leaf (:at 1723603471483) (:by |rJG4IHzWf) (:text |.!select) - |T $ %{} :Expr (:at 1723603407983) (:by |rJG4IHzWf) + |D $ %{} :Leaf (:at 1746207360911) (:by |rJG4IHzWf) (:text |js/setTimeout) + |T $ %{} :Expr (:at 1746207361619) (:by |rJG4IHzWf) :data $ {} - |D $ %{} :Leaf (:at 1723603414646) (:by |rJG4IHzWf) (:text |.!querySelector) - |T $ %{} :Leaf (:at 1723603408532) (:by |rJG4IHzWf) (:text |el) - |b $ %{} :Leaf (:at 1723603416886) (:by |rJG4IHzWf) (:text "|\"textarea") + |D $ %{} :Leaf (:at 1746207363230) (:by |rJG4IHzWf) (:text |fn) + |L $ %{} :Expr (:at 1746207363586) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Expr (:at 1723603417488) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1723603471483) (:by |rJG4IHzWf) (:text |.!select) + |T $ %{} :Expr (:at 1723603407983) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1723603414646) (:by |rJG4IHzWf) (:text |.!querySelector) + |T $ %{} :Leaf (:at 1723603408532) (:by |rJG4IHzWf) (:text |el) + |b $ %{} :Leaf (:at 1723603416886) (:by |rJG4IHzWf) (:text "|\"textarea") |first-line $ %{} :CodeEntry (:doc "|last message from error contains a line starts with \"data: \" and an extra error message. In order that JSON is parsed correctly, only first line is used now.") :code $ %{} :Expr (:at 1723138240850) (:by |rJG4IHzWf) :data $ {} @@ -2820,6 +4098,66 @@ |h $ %{} :Leaf (:at 1722963931640) (:by |rJG4IHzWf) (:text |v) |b $ %{} :Leaf (:at 1722963919289) (:by |rJG4IHzWf) (:text |v) |l $ %{} :Leaf (:at 1722963922770) (:by |rJG4IHzWf) (:text |key) + |get-openrouter-key! $ %{} :CodeEntry (:doc |) + :code $ %{} :Expr (:at 1745685764646) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685766012) (:by |rJG4IHzWf) (:text |defn) + |b $ %{} :Leaf (:at 1745685764646) (:by |rJG4IHzWf) (:text |get-openrouter-key!) + |h $ %{} :Expr (:at 1745685764646) (:by |rJG4IHzWf) + :data $ {} + |l $ %{} :Expr (:at 1745685767113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |let) + |b $ %{} :Expr (:at 1745685767113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Expr (:at 1745685767113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |key) + |b $ %{} :Expr (:at 1745685767113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |js/localStorage.getItem) + |b $ %{} :Leaf (:at 1745685773900) (:by |rJG4IHzWf) (:text "|\"openrouter-key") + |h $ %{} :Expr (:at 1745685767113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |if) + |b $ %{} :Expr (:at 1745685767113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |blank?) + |b $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |key) + |h $ %{} :Expr (:at 1745685767113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |let) + |b $ %{} :Expr (:at 1745685767113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Expr (:at 1745685767113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |v) + |b $ %{} :Expr (:at 1745685767113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |js/prompt) + |b $ %{} :Leaf (:at 1745685775340) (:by |rJG4IHzWf) (:text "|\"Required openrouter-key in localStorage") + |h $ %{} :Expr (:at 1745685767113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |if) + |b $ %{} :Expr (:at 1745685767113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |blank?) + |b $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |v) + |h $ %{} :Expr (:at 1745685767113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |raise) + |b $ %{} :Expr (:at 1745685767113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |new) + |b $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |js/Error) + |h $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text "|\"key is empty") + |l $ %{} :Expr (:at 1745685767113) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |js/localStorage.setItem) + |b $ %{} :Leaf (:at 1745685776393) (:by |rJG4IHzWf) (:text "|\"openrouter-key") + |h $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |v) + |o $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |v) + |l $ %{} :Leaf (:at 1745685767113) (:by |rJG4IHzWf) (:text |key) |json-pattern? $ %{} :CodeEntry (:doc |) :code $ %{} :Expr (:at 1743618322215) (:by |rJG4IHzWf) :data $ {} @@ -2841,6 +4179,116 @@ |T $ %{} :Leaf (:at 1743618333815) (:by |rJG4IHzWf) (:text |.!startsWith) |b $ %{} :Leaf (:at 1743618335770) (:by |rJG4IHzWf) (:text |text) |h $ %{} :Leaf (:at 1743618424197) (:by |rJG4IHzWf) (:text "|\"[") + |models-menu $ %{} :CodeEntry (:doc |) + :code $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |def) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |models-menu) + |h $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |[]) + |b $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:gemini-flash) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "||Gemini Flash") + |h $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:gemini-flash-lite) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "||Gemini Flash Lite") + |l $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:gemini-pro) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "||Gemini Pro") + |o $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:gemini-pro-1.5) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "||Gemini Pro 1.5") + |q $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:imagin-3) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "|\"Imagin 3") + |s $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:gemini-flash-thinking) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "||Gemini Flash thinking") + |t $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:gemini-thinking) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "||Gemini thinking") + |u $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:gemini-learnlm) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "||Gemini LearnLM") + |v $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:gemma) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "||Gemma 3 27b") + |w $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:openrouter/anthropic/claude-3.7-sonnet) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "|\"Openrouter Claude 3.7 Sonnet") + |x $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:openrouter/anthropic/claude-3.7-sonnet:thinking) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "|\"Openrouter Claude 3.7 Sonnet Thinking") + |y $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:openrouter/openai/gpt-4o) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "|\"Openrouter GPT 4o") + |z $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:openrouter/deepseek/deepseek-chat-v3-0324:free) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "|\"Openrouter deepseek/deepseek-chat-v3-0324:free") + |zD $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:claude) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "|\"Claude 3.5") + |zP $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:claude-3.7) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "|\"Claude 3.7") + |zY $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:claude-3.7-thinking) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "|\"Claude 3.7 Thinking") + |ze $ %{} :Expr (:at 1746250322424) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |::) + |b $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:item) + |h $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text |:deepinfra) + |l $ %{} :Leaf (:at 1746250322424) (:by |rJG4IHzWf) (:text "|\"Deepinfra") |pattern-spaced-code $ %{} :CodeEntry (:doc |) :code $ %{} :Expr (:at 1722483516034) (:by |rJG4IHzWf) :data $ {} @@ -2866,7 +4314,7 @@ :data $ {} |T $ %{} :Leaf (:at 1735371289067) (:by |rJG4IHzWf) (:text |case-default) |V $ %{} :Leaf (:at 1735371559392) (:by |rJG4IHzWf) (:text |variant) - |X $ %{} :Leaf (:at 1735371296979) (:by |rJG4IHzWf) (:text "|\"gemini-2.0-flash-exp") + |X $ %{} :Leaf (:at 1744995662204) (:by |rJG4IHzWf) (:text "|\"gemini-2.5-flash-preview-04-17") |b $ %{} :Expr (:at 1735371297708) (:by |rJG4IHzWf) :data $ {} |D $ %{} :Leaf (:at 1735371304843) (:by |rJG4IHzWf) (:text |:gemini-thinking) @@ -2891,6 +4339,10 @@ :data $ {} |D $ %{} :Leaf (:at 1737565986571) (:by |rJG4IHzWf) (:text |:gemini-flash-thinking) |T $ %{} :Leaf (:at 1737565967533) (:by |rJG4IHzWf) (:text "|\"gemini-2.0-flash-thinking-exp-01-21") + |q $ %{} :Expr (:at 1744995919322) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744995921383) (:by |rJG4IHzWf) (:text |:gemma) + |b $ %{} :Leaf (:at 1744995926511) (:by |rJG4IHzWf) (:text "|\"gemma-3-27b-it") |style-a-toggler $ %{} :CodeEntry (:doc |) :code $ %{} :Expr (:at 1728102579378) (:by |rJG4IHzWf) :data $ {} @@ -3059,6 +4511,41 @@ :data $ {} |T $ %{} :Leaf (:at 1743618485449) (:by |rJG4IHzWf) (:text |:font-size) |b $ %{} :Leaf (:at 1743618496096) (:by |rJG4IHzWf) (:text |13) + |style-image $ %{} :CodeEntry (:doc |) + :code $ %{} :Expr (:at 1744743046216) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744743047657) (:by |rJG4IHzWf) (:text |defstyle) + |b $ %{} :Leaf (:at 1744743046216) (:by |rJG4IHzWf) (:text |style-image) + |h $ %{} :Expr (:at 1744743046216) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744743049755) (:by |rJG4IHzWf) (:text |{}) + |b $ %{} :Expr (:at 1744743050288) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744743052178) (:by |rJG4IHzWf) (:text "|\"&") + |b $ %{} :Expr (:at 1744743052530) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744743052841) (:by |rJG4IHzWf) (:text |{}) + |b $ %{} :Expr (:at 1744743073698) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744743075125) (:by |rJG4IHzWf) (:text |:max-width) + |b $ %{} :Leaf (:at 1744743080157) (:by |rJG4IHzWf) (:text "|\"100%") + |h $ %{} :Expr (:at 1744743107698) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744743111212) (:by |rJG4IHzWf) (:text |:border-radius) + |b $ %{} :Leaf (:at 1744743131525) (:by |rJG4IHzWf) (:text "|\"6px") + |l $ %{} :Expr (:at 1744743114494) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744743117053) (:by |rJG4IHzWf) (:text |:border) + |b $ %{} :Expr (:at 1744743117317) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744743118219) (:by |rJG4IHzWf) (:text |str) + |b $ %{} :Leaf (:at 1744743121038) (:by |rJG4IHzWf) (:text "|\"1px solid ") + |h $ %{} :Expr (:at 1744743121796) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744743122152) (:by |rJG4IHzWf) (:text |hsl) + |b $ %{} :Leaf (:at 1744743123280) (:by |rJG4IHzWf) (:text |0) + |h $ %{} :Leaf (:at 1744743123614) (:by |rJG4IHzWf) (:text |0) + |l $ %{} :Leaf (:at 1744743124055) (:by |rJG4IHzWf) (:text |90) |style-md-content $ %{} :CodeEntry (:doc |) :code $ %{} :Expr (:at 1723139383524) (:by |rJG4IHzWf) :data $ {} @@ -3196,7 +4683,7 @@ |h $ %{} :Expr (:at 1723008334962) (:by |rJG4IHzWf) :data $ {} |T $ %{} :Leaf (:at 1723008334962) (:by |rJG4IHzWf) (:text |:padding) - |b $ %{} :Leaf (:at 1744649982981) (:by |rJG4IHzWf) (:text "|\"40px 16px 32vh 16px") + |b $ %{} :Leaf (:at 1744996052215) (:by |rJG4IHzWf) (:text "|\"40px 16px 20vh 16px") |l $ %{} :Expr (:at 1723008334962) (:by |rJG4IHzWf) :data $ {} |T $ %{} :Leaf (:at 1723008334962) (:by |rJG4IHzWf) (:text |:width) @@ -3349,7 +4836,7 @@ |l $ %{} :Expr (:at 1723010440562) (:by |rJG4IHzWf) :data $ {} |T $ %{} :Leaf (:at 1723010440562) (:by |rJG4IHzWf) (:text |:height) - |b $ %{} :Leaf (:at 1744033285597) (:by |rJG4IHzWf) (:text "|\"max(260px,40vh)") + |b $ %{} :Leaf (:at 1744741882322) (:by |rJG4IHzWf) (:text "|\"max(240px,32vh)") |submit-message! $ %{} :CodeEntry (:doc |) :code $ %{} :Expr (:at 1722409346610) (:by |rJG4IHzWf) :data $ {} @@ -3378,26 +4865,27 @@ :data $ {} |T $ %{} :Leaf (:at 1730141961875) (:by |rJG4IHzWf) (:text |atom) |b $ %{} :Leaf (:at 1730141968212) (:by |rJG4IHzWf) (:text "|\"") + |b $ %{} :Expr (:at 1744739427251) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739428752) (:by |rJG4IHzWf) (:text |model) + |b $ %{} :Expr (:at 1744739430913) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739430913) (:by |rJG4IHzWf) (:text |:model) + |b $ %{} :Leaf (:at 1744739430913) (:by |rJG4IHzWf) (:text |state) |T $ %{} :Expr (:at 1730141200420) (:by |rJG4IHzWf) :data $ {} |D $ %{} :Leaf (:at 1730141201098) (:by |rJG4IHzWf) (:text |try) |T $ %{} :Expr (:at 1728103361255) (:by |rJG4IHzWf) :data $ {} |T $ %{} :Leaf (:at 1729360703921) (:by |rJG4IHzWf) (:text |case-default) - |a $ %{} :Expr (:at 1729360947362) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1729360948288) (:by |rJG4IHzWf) (:text |:model) - |b $ %{} :Leaf (:at 1729360949878) (:by |rJG4IHzWf) (:text |state) + |a $ %{} :Leaf (:at 1744739433196) (:by |rJG4IHzWf) (:text |model) |d $ %{} :Expr (:at 1730141325307) (:by |rJG4IHzWf) :data $ {} |D $ %{} :Leaf (:at 1730141326796) (:by |rJG4IHzWf) (:text |js-await) |T $ %{} :Expr (:at 1729360694408) (:by |rJG4IHzWf) :data $ {} - |T $ %{} :Leaf (:at 1729360694408) (:by |rJG4IHzWf) (:text |call-gemini-msg!) - |X $ %{} :Expr (:at 1735371991481) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1735371991481) (:by |rJG4IHzWf) (:text |:model) - |b $ %{} :Leaf (:at 1735371991481) (:by |rJG4IHzWf) (:text |state) + |T $ %{} :Leaf (:at 1746206977434) (:by |rJG4IHzWf) (:text |call-genai-msg!) + |X $ %{} :Leaf (:at 1744739435930) (:by |rJG4IHzWf) (:text |model) |b $ %{} :Leaf (:at 1729360694408) (:by |rJG4IHzWf) (:text |cursor) |h $ %{} :Leaf (:at 1729360694408) (:by |rJG4IHzWf) (:text |state) |l $ %{} :Leaf (:at 1729360694408) (:by |rJG4IHzWf) (:text |prompt-text) @@ -3410,15 +4898,40 @@ |D $ %{} :Leaf (:at 1730141331118) (:by |rJG4IHzWf) (:text |js-await) |T $ %{} :Expr (:at 1728103381694) (:by |rJG4IHzWf) :data $ {} - |T $ %{} :Leaf (:at 1734454213951) (:by |rJG4IHzWf) (:text |call-gemini-msg!) - |X $ %{} :Expr (:at 1735371987151) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1735371987151) (:by |rJG4IHzWf) (:text |:model) - |b $ %{} :Leaf (:at 1735371987151) (:by |rJG4IHzWf) (:text |state) + |T $ %{} :Leaf (:at 1746206976099) (:by |rJG4IHzWf) (:text |call-genai-msg!) + |X $ %{} :Leaf (:at 1744739438563) (:by |rJG4IHzWf) (:text |model) |b $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |cursor) |h $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |state) |l $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |prompt-text) |q $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |d!) + |hD $ %{} :Expr (:at 1729360683058) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1746206985273) (:by |rJG4IHzWf) (:text |:gemini-1.5-pro) + |T $ %{} :Expr (:at 1730141328566) (:by |rJG4IHzWf) + :data $ {} + |D $ %{} :Leaf (:at 1730141331118) (:by |rJG4IHzWf) (:text |js-await) + |T $ %{} :Expr (:at 1728103381694) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1746206976099) (:by |rJG4IHzWf) (:text |call-genai-msg!) + |X $ %{} :Leaf (:at 1744739438563) (:by |rJG4IHzWf) (:text |model) + |b $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |cursor) + |h $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |state) + |l $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |prompt-text) + |q $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |d!) + |hT $ %{} :Expr (:at 1744739385014) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739388333) (:by |rJG4IHzWf) (:text |:imagin-3) + |b $ %{} :Expr (:at 1744739389621) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739390777) (:by |rJG4IHzWf) (:text |js-await) + |b $ %{} :Expr (:at 1744739391218) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739398432) (:by |rJG4IHzWf) (:text |call-imagin-msg!) + |b $ %{} :Leaf (:at 1744739441080) (:by |rJG4IHzWf) (:text |model) + |h $ %{} :Leaf (:at 1744739420548) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Leaf (:at 1744739420548) (:by |rJG4IHzWf) (:text |state) + |o $ %{} :Leaf (:at 1744739420548) (:by |rJG4IHzWf) (:text |prompt-text) + |q $ %{} :Leaf (:at 1744739420548) (:by |rJG4IHzWf) (:text |d!) |i $ %{} :Expr (:at 1729360683058) (:by |rJG4IHzWf) :data $ {} |D $ %{} :Leaf (:at 1735371194476) (:by |rJG4IHzWf) (:text |:gemini-thinking) @@ -3427,11 +4940,8 @@ |D $ %{} :Leaf (:at 1730141331118) (:by |rJG4IHzWf) (:text |js-await) |T $ %{} :Expr (:at 1728103381694) (:by |rJG4IHzWf) :data $ {} - |T $ %{} :Leaf (:at 1734454213951) (:by |rJG4IHzWf) (:text |call-gemini-msg!) - |X $ %{} :Expr (:at 1735371995411) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1735371995411) (:by |rJG4IHzWf) (:text |:model) - |b $ %{} :Leaf (:at 1735371995411) (:by |rJG4IHzWf) (:text |state) + |T $ %{} :Leaf (:at 1746206973600) (:by |rJG4IHzWf) (:text |call-genai-msg!) + |X $ %{} :Leaf (:at 1744739443230) (:by |rJG4IHzWf) (:text |model) |b $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |cursor) |h $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |state) |l $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |prompt-text) @@ -3444,11 +4954,8 @@ |D $ %{} :Leaf (:at 1730141331118) (:by |rJG4IHzWf) (:text |js-await) |T $ %{} :Expr (:at 1728103381694) (:by |rJG4IHzWf) :data $ {} - |T $ %{} :Leaf (:at 1734454213951) (:by |rJG4IHzWf) (:text |call-gemini-msg!) - |X $ %{} :Expr (:at 1735371995411) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1735371995411) (:by |rJG4IHzWf) (:text |:model) - |b $ %{} :Leaf (:at 1735371995411) (:by |rJG4IHzWf) (:text |state) + |T $ %{} :Leaf (:at 1746206971920) (:by |rJG4IHzWf) (:text |call-genai-msg!) + |X $ %{} :Leaf (:at 1744739445332) (:by |rJG4IHzWf) (:text |model) |b $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |cursor) |h $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |state) |l $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |prompt-text) @@ -3461,15 +4968,26 @@ |D $ %{} :Leaf (:at 1730141331118) (:by |rJG4IHzWf) (:text |js-await) |T $ %{} :Expr (:at 1728103381694) (:by |rJG4IHzWf) :data $ {} - |T $ %{} :Leaf (:at 1734454213951) (:by |rJG4IHzWf) (:text |call-gemini-msg!) - |X $ %{} :Expr (:at 1735371995411) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1735371995411) (:by |rJG4IHzWf) (:text |:model) - |b $ %{} :Leaf (:at 1735371995411) (:by |rJG4IHzWf) (:text |state) + |T $ %{} :Leaf (:at 1746206970182) (:by |rJG4IHzWf) (:text |call-genai-msg!) + |X $ %{} :Leaf (:at 1744739447463) (:by |rJG4IHzWf) (:text |model) |b $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |cursor) |h $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |state) |l $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |prompt-text) |q $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |d!) + |iP $ %{} :Expr (:at 1744996833684) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996839749) (:by |rJG4IHzWf) (:text |:gemini-flash) + |b $ %{} :Expr (:at 1744996841832) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996841832) (:by |rJG4IHzWf) (:text |js-await) + |b $ %{} :Expr (:at 1744996841832) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744996843722) (:by |rJG4IHzWf) (:text |call-genai-msg!) + |b $ %{} :Leaf (:at 1744996841832) (:by |rJG4IHzWf) (:text |model) + |h $ %{} :Leaf (:at 1744996841832) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Leaf (:at 1744996841832) (:by |rJG4IHzWf) (:text |state) + |o $ %{} :Leaf (:at 1744996841832) (:by |rJG4IHzWf) (:text |prompt-text) + |q $ %{} :Leaf (:at 1744996841832) (:by |rJG4IHzWf) (:text |d!) |iT $ %{} :Expr (:at 1729360683058) (:by |rJG4IHzWf) :data $ {} |D $ %{} :Leaf (:at 1735372002547) (:by |rJG4IHzWf) (:text |:gemini-learnlm) @@ -3478,11 +4996,8 @@ |D $ %{} :Leaf (:at 1730141331118) (:by |rJG4IHzWf) (:text |js-await) |T $ %{} :Expr (:at 1728103381694) (:by |rJG4IHzWf) :data $ {} - |T $ %{} :Leaf (:at 1734454213951) (:by |rJG4IHzWf) (:text |call-gemini-msg!) - |X $ %{} :Expr (:at 1735371995411) (:by |rJG4IHzWf) - :data $ {} - |T $ %{} :Leaf (:at 1735371995411) (:by |rJG4IHzWf) (:text |:model) - |b $ %{} :Leaf (:at 1735371995411) (:by |rJG4IHzWf) (:text |state) + |T $ %{} :Leaf (:at 1746206968523) (:by |rJG4IHzWf) (:text |call-genai-msg!) + |X $ %{} :Leaf (:at 1744739451997) (:by |rJG4IHzWf) (:text |model) |b $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |cursor) |h $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |state) |l $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |prompt-text) @@ -3546,6 +5061,66 @@ |l $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |prompt-text) |q $ %{} :Leaf (:at 1728103384687) (:by |rJG4IHzWf) (:text |d!) |s $ %{} :Leaf (:at 1730141981583) (:by |rJG4IHzWf) (:text |*text) + |o $ %{} :Expr (:at 1745685102239) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745686169150) (:by |rJG4IHzWf) (:text |:openrouter/anthropic/claude-3.7-sonnet) + |b $ %{} :Expr (:at 1745685125117) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685126394) (:by |rJG4IHzWf) (:text |js-await) + |b $ %{} :Expr (:at 1745685135930) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685228859) (:by |rJG4IHzWf) (:text |call-openrouter!) + |h $ %{} :Leaf (:at 1745685140141) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Leaf (:at 1745685140141) (:by |rJG4IHzWf) (:text |state) + |o $ %{} :Leaf (:at 1745685140141) (:by |rJG4IHzWf) (:text |prompt-text) + |q $ %{} :Leaf (:at 1745686194381) (:by |rJG4IHzWf) (:text "|\"anthropic/claude-3.7-sonnet") + |s $ %{} :Leaf (:at 1745685140141) (:by |rJG4IHzWf) (:text |true) + |t $ %{} :Leaf (:at 1745685140141) (:by |rJG4IHzWf) (:text |d!) + |p $ %{} :Expr (:at 1745685102239) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745687404021) (:by |rJG4IHzWf) (:text |:openrouter/anthropic/claude-3.7-sonnet:thinking) + |b $ %{} :Expr (:at 1745685125117) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685126394) (:by |rJG4IHzWf) (:text |js-await) + |b $ %{} :Expr (:at 1745685135930) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685228859) (:by |rJG4IHzWf) (:text |call-openrouter!) + |h $ %{} :Leaf (:at 1745685140141) (:by |rJG4IHzWf) (:text |cursor) + |l $ %{} :Leaf (:at 1745685140141) (:by |rJG4IHzWf) (:text |state) + |o $ %{} :Leaf (:at 1745685140141) (:by |rJG4IHzWf) (:text |prompt-text) + |q $ %{} :Leaf (:at 1745687406250) (:by |rJG4IHzWf) (:text "|\"anthropic/claude-3.7-sonnet:thinking") + |s $ %{} :Leaf (:at 1745685140141) (:by |rJG4IHzWf) (:text |true) + |t $ %{} :Leaf (:at 1745685140141) (:by |rJG4IHzWf) (:text |d!) + |q $ %{} :Expr (:at 1745685166963) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685174460) (:by |rJG4IHzWf) (:text |:openrouter/openai/gpt-4o) + |b $ %{} :Expr (:at 1745685193575) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685193575) (:by |rJG4IHzWf) (:text |js-await) + |b $ %{} :Expr (:at 1745685193575) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685230614) (:by |rJG4IHzWf) (:text |call-openrouter!) + |b $ %{} :Leaf (:at 1745685193575) (:by |rJG4IHzWf) (:text |cursor) + |h $ %{} :Leaf (:at 1745685193575) (:by |rJG4IHzWf) (:text |state) + |l $ %{} :Leaf (:at 1745685193575) (:by |rJG4IHzWf) (:text |prompt-text) + |o $ %{} :Leaf (:at 1745685205788) (:by |rJG4IHzWf) (:text "|\"openai/gpt-4o") + |q $ %{} :Leaf (:at 1745685193575) (:by |rJG4IHzWf) (:text |true) + |s $ %{} :Leaf (:at 1745685193575) (:by |rJG4IHzWf) (:text |d!) + |s $ %{} :Expr (:at 1745685166963) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745687737112) (:by |rJG4IHzWf) (:text |:openrouter/deepseek/deepseek-chat-v3-0324:free) + |b $ %{} :Expr (:at 1745685193575) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685193575) (:by |rJG4IHzWf) (:text |js-await) + |b $ %{} :Expr (:at 1745685193575) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685230614) (:by |rJG4IHzWf) (:text |call-openrouter!) + |b $ %{} :Leaf (:at 1745685193575) (:by |rJG4IHzWf) (:text |cursor) + |h $ %{} :Leaf (:at 1745685193575) (:by |rJG4IHzWf) (:text |state) + |l $ %{} :Leaf (:at 1745685193575) (:by |rJG4IHzWf) (:text |prompt-text) + |o $ %{} :Leaf (:at 1745687738969) (:by |rJG4IHzWf) (:text "|\"deepseek/deepseek-chat-v3-0324:free") + |q $ %{} :Leaf (:at 1745685193575) (:by |rJG4IHzWf) (:text |true) + |s $ %{} :Leaf (:at 1745685193575) (:by |rJG4IHzWf) (:text |d!) |b $ %{} :Expr (:at 1730141201947) (:by |rJG4IHzWf) :data $ {} |T $ %{} :Leaf (:at 1730141203451) (:by |rJG4IHzWf) (:text |fn) @@ -3629,6 +5204,7 @@ |yT $ %{} :Leaf (:at 1552321107012) (:by |rJG4IHzWf) (:text |input) |z $ %{} :Leaf (:at 1728102563048) (:by |rJG4IHzWf) (:text |a) |zD $ %{} :Leaf (:at 1743618349756) (:by |rJG4IHzWf) (:text |pre) + |zP $ %{} :Leaf (:at 1744741281287) (:by |rJG4IHzWf) (:text |img) |x $ %{} :Expr (:at 1499755354983) (:by nil) :data $ {} |j $ %{} :Leaf (:at 1499755354983) (:by |root) (:text |respo.comp.space) @@ -3695,6 +5271,7 @@ |T $ %{} :Leaf (:at 1723105000472) (:by |rJG4IHzWf) (:text |get-selected) |zj $ %{} :Expr (:at 1739122267726) (:by |rJG4IHzWf) :data $ {} + |D $ %{} :Leaf (:at 1746206998486) (:by |rJG4IHzWf) (:text |;) |T $ %{} :Leaf (:at 1739122268627) (:by |rJG4IHzWf) (:text "|\"@google/generative-ai") |b $ %{} :Leaf (:at 1739122270617) (:by |rJG4IHzWf) (:text |:refer) |h $ %{} :Expr (:at 1739122274807) (:by |rJG4IHzWf) @@ -3708,6 +5285,26 @@ :data $ {} |T $ %{} :Leaf (:at 1743789318472) (:by |rJG4IHzWf) (:text |memof1-call) |b $ %{} :Leaf (:at 1743791566514) (:by |rJG4IHzWf) (:text |memof1-call-by) + |zq $ %{} :Expr (:at 1744739495253) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739502073) (:by |rJG4IHzWf) (:text "|\"@google/genai") + |b $ %{} :Leaf (:at 1744739503331) (:by |rJG4IHzWf) (:text |:refer) + |h $ %{} :Expr (:at 1744739503585) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744739506336) (:by |rJG4IHzWf) (:text |GoogleGenAI) + |b $ %{} :Leaf (:at 1744740171208) (:by |rJG4IHzWf) (:text |Modality) + |zs $ %{} :Expr (:at 1744740964749) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744740968417) (:by |rJG4IHzWf) (:text "|\"../lib/image") + |b $ %{} :Leaf (:at 1744740969276) (:by |rJG4IHzWf) (:text |:refer) + |h $ %{} :Expr (:at 1744740969523) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1744741006867) (:by |rJG4IHzWf) (:text |base64ToBlob) + |zt $ %{} :Expr (:at 1745685299381) (:by |rJG4IHzWf) + :data $ {} + |T $ %{} :Leaf (:at 1745685301046) (:by |rJG4IHzWf) (:text "|\"openai") + |b $ %{} :Leaf (:at 1745685309289) (:by |rJG4IHzWf) (:text |:default) + |h $ %{} :Leaf (:at 1745685311158) (:by |rJG4IHzWf) (:text |OpenAI) |app.config $ %{} :FileEntry :defs $ {} |chrome-extension? $ %{} :CodeEntry (:doc |) diff --git a/compact.cirru b/compact.cirru index 4125e65..a028d95 100644 --- a/compact.cirru +++ b/compact.cirru @@ -10,6 +10,10 @@ :code $ quote (defatom *abort-control nil) |*gen-ai $ %{} :CodeEntry (:doc |) :code $ quote (defatom *gen-ai nil) + |*gen-ai-new $ %{} :CodeEntry (:doc |) + :code $ quote (defatom *gen-ai-new nil) + |*openai $ %{} :CodeEntry (:doc "|called openai sdk, but actually for openrouter") + :code $ quote (defatom *openai nil) |call-anthropic-msg! $ %{} :CodeEntry (:doc |) :code $ quote defn call-anthropic-msg! (cursor state prompt-text model thinking? d!) (hint-fn async) @@ -206,6 +210,171 @@ -> state (assoc :answer @*text) (assoc :loading? false) (assoc :done? false) d! $ :: :states cursor -> state (assoc :answer @*text) (assoc :loading? false) (assoc :done? true) + |call-genai-msg! $ %{} :CodeEntry (:doc |) + :code $ quote + defn call-genai-msg! (variant cursor state prompt-text d!) (hint-fn async) + if (nil? @*gen-ai-new) + reset! *gen-ai-new $ new GoogleGenAI + js-object $ :apiKey (get-gemini-key!) + if-let + abort $ deref *abort-control + do (js/console.warn "\"Aborting prev") (.!abort abort) + d! $ :: :states cursor + -> state (assoc :answer nil) (assoc :loading? true) + let + selected $ if (.includes? prompt-text "\"{{selected}}") + js-await $ get-selected + gen-ai $ let + ai @*gen-ai-new + ; js/console.log ai + , ai + content $ .!replace prompt-text "\"{{selected}}" (or selected "\"<未找到选中内容>") + json? $ or (.!includes prompt-text "\"{{json}}") (.!includes prompt-text "\"{{JSON}}") + think? $ or (.!includes prompt-text "\"{{think}}") (.!includes prompt-text "\"{{THINK}}") + search? $ or (.!includes prompt-text "\"{{search}}") (.!includes prompt-text "\"{{SEARCH}}") + sdk-result $ js-await + .!generateContentStream (.-models gen-ai) + js-object + :model $ pick-model variant + :contents $ js-array + js-object (:role "\"user") + :parts $ js-array + js-object $ :text content + :config $ js/Object.assign + js-object + :thinkingConfig $ js-object + :thinkingBudget $ if think? 2000 0 + :includeThoughts think? + :httpOptions $ js-object (:baseUrl "\"https://sf.chenyong.life") + :signal $ let + abort $ new js/AbortController + reset! *abort-control abort + .-signal abort + :abortSignal $ let + abort $ new js/AbortController + reset! *abort-control abort + .-signal abort + :tools $ js-array + js-object $ :googleSearch (js-object) + if json? + js-object $ "\"responseMimeType" "\"application/json" + , js/undefined + *text $ atom "\"" + js-await $ for-await-stream sdk-result + fn (? chunk) + if (some? chunk) + do + swap! *text str $ .-text chunk + d! $ :: :states cursor + -> state (assoc :answer @*text) (assoc :loading? false) (assoc :done? false) + d! $ :: :states cursor + -> state (assoc :answer @*text) (assoc :loading? false) (assoc :done? false) + d! $ :: :states cursor + -> state (assoc :answer @*text) (assoc :loading? false) (assoc :done? true) + |call-imagin-msg! $ %{} :CodeEntry (:doc |) + :code $ quote + defn call-imagin-msg! (variant cursor state prompt-text d!) (hint-fn async) + if (nil? @*gen-ai-new) + reset! *gen-ai-new $ new GoogleGenAI + js-object $ :apiKey (get-gemini-key!) + if-let + target $ js/document.querySelector "\".show-image" + .!setAttribute target "\"src" "\"" + if-let + abort $ deref *abort-control + do (js/console.warn "\"Aborting prev") (.!abort abort) + d! $ :: :states cursor + -> state (assoc :answer nil) (assoc :loading? true) + let + selected $ js-await (get-selected) + gen-ai $ let + ai @*gen-ai-new + js/console.log ai + , ai + content $ .!replace prompt-text "\"{{selected}}" (or selected "\"<未找到选中内容>") + sdk-result $ js-await + .!generateContent (.-models gen-ai) + js-object (:model "\"gemini-2.0-flash-exp-image-generation") (:contents content) + :config $ js-object + :httpOptions $ js-object (:baseUrl "\"https://sf.chenyong.life") + :signal $ let + abort $ new js/AbortController + reset! *abort-control abort + .-signal abort + :responseModalities $ js-array (.-TEXT Modality) (.-IMAGE Modality) + *text $ atom "\"" + js-await $ -> sdk-result .-candidates .-0 .-content .-parts + .!forEach $ fn (? chunk _a _b) + if (some? chunk) + if-let + text $ .-text chunk + do (swap! *text str text) + d! $ :: :states cursor + -> state (assoc :answer @*text) (assoc :loading? false) (assoc :done? false) + if-let + image-data $ .-inlineData chunk + let + image-blob $ base64ToBlob (.-data image-data) + url $ js/URL.createObjectURL image-blob + target $ js/document.querySelector "\".show-image" + -> target $ .!setAttribute "\"src" url + ; js/URL.revokeObjectURL url + do (swap! *text str "\"(image ready)") + d! $ :: :states cursor + -> state (assoc :answer @*text) (assoc :loading? false) (assoc :done? false) + d! $ :: :states cursor + -> state (assoc :answer @*text) (assoc :loading? false) (assoc :done? false) + d! $ :: :states cursor + -> state (assoc :answer @*text) (assoc :loading? false) (assoc :done? true) + |call-openrouter! $ %{} :CodeEntry (:doc |) + :code $ quote + defn call-openrouter! (cursor state prompt-text variant thinking? d!) (hint-fn async) + if (nil? @*openai) + reset! *openai $ new OpenAI + js-object (:baseURL "\"https://openrouter.ai/api/v1") + :apiKey $ get-openrouter-key! + :defaultHeaders $ js-object + :dangerouslyAllowBrowser true + if-let + abort $ deref *abort-control + do (js/console.warn "\"Aborting prev") (.!abort abort) + d! $ :: :states cursor + -> state (assoc :answer nil) (assoc :loading? true) + let + selected $ js-await (get-selected) + openai $ let + ai @*openai + ; js/console.log ai + , ai + content $ .!replace prompt-text "\"{{selected}}" (or selected "\"<未找到选中内容>") + json? $ or (.!includes prompt-text "\"{{json}}") (.!includes prompt-text "\"{{JSON}}") + sdk-result $ js-await + -> openai .-chat .-completions $ .!create + js-object (:model variant) + :messages $ js-array + js-object (:role "\"user") (:content content) + ; :generationConfig $ if json? + js-object $ "\"responseMimeType" "\"application/json" + , js/undefined + :stream true + :headers $ js-object (:HTTP-Referer js/location.host) + js-object $ :signal + let + abort $ new js/AbortController + reset! *abort-control abort + .-signal abort + *text $ atom "\"" + js-await $ js-for-await sdk-result + fn (? chunk) (; js/console.log "\"[CHUNK]" chunk) + if (some? chunk) + do + swap! *text str $ -> chunk .-choices .-0 .-delta .-content (or "\"") + d! $ :: :states cursor + -> state (assoc :answer @*text) (assoc :loading? false) (assoc :done? false) + d! $ :: :states cursor + -> state (assoc :answer @*text) (assoc :loading? false) (assoc :done? false) + d! $ :: :states cursor + -> state (assoc :answer @*text) (assoc :loading? false) (assoc :done? true) |comp-abort $ %{} :CodeEntry (:doc |) :code $ quote defn comp-abort (t) @@ -237,7 +406,7 @@ ; :card-class style-card ; :backdrop-class style-backdrop ; :confirm-class style-confirm - :items $ [] (:: :item :gemini-flash "|Gemini Flash") (:: :item :gemini-flash-lite "|Gemini Flash Lite") (:: :item :gemini-pro "|Gemini Pro") (:: :item :gemini-pro-1.5 "|Gemini Pro 1.5") (:: :item :gemini-flash-thinking "|Gemini Flash thinking") (:: :item :gemini-thinking "|Gemini thinking") (:: :item :gemini-learnlm "|Gemini LearnLM") (:: :item :claude "\"Claude 3.5") (:: :item :claude-3.7 "\"Claude 3.7") (:: :item :claude-3.7-thinking "\"Claude 3.7 Thinking") (:: :item :deepinfra "\"Deepinfra") + :items models-menu :on-result $ fn (result d!) d! cursor $ assoc state :model (nth result 1) div @@ -246,6 +415,9 @@ {} $ :class-name (str-spaced css/expand style-message-area) div {} $ :class-name (str-spaced style-message-list) + if (= :imagin-3 model) + img $ {} + :class-name $ str-spaced style-image "\"show-image" if (:loading? state) div ({}) memof1-call-by :abort-loading comp-abort $ str (turn-str model) "\" loading..." @@ -336,7 +508,8 @@ :code $ quote defeffect effect-focus () (action el at?) when (= action :mount) - .!select $ .!querySelector el "\"textarea" + js/setTimeout $ fn () + .!select $ .!querySelector el "\"textarea" |first-line $ %{} :CodeEntry (:doc "|last message from error contains a line starts with \"data: \" and an extra error message. In order that JSON is parsed correctly, only first line is used now.") :code $ quote defn first-line (tt) @@ -387,17 +560,32 @@ js/localStorage.setItem "\"gemini-key" v , v , key + |get-openrouter-key! $ %{} :CodeEntry (:doc |) + :code $ quote + defn get-openrouter-key! () $ let + key $ js/localStorage.getItem "\"openrouter-key" + if (blank? key) + let + v $ js/prompt "\"Required openrouter-key in localStorage" + if (blank? v) + raise $ new js/Error "\"key is empty" + js/localStorage.setItem "\"openrouter-key" v + , v + , key |json-pattern? $ %{} :CodeEntry (:doc |) :code $ quote defn json-pattern? (text) or (.!startsWith text "\"{") (.!startsWith text "\"[") + |models-menu $ %{} :CodeEntry (:doc |) + :code $ quote + def models-menu $ [] (:: :item :gemini-flash "|Gemini Flash") (:: :item :gemini-flash-lite "|Gemini Flash Lite") (:: :item :gemini-pro "|Gemini Pro") (:: :item :gemini-pro-1.5 "|Gemini Pro 1.5") (:: :item :imagin-3 "\"Imagin 3") (:: :item :gemini-flash-thinking "|Gemini Flash thinking") (:: :item :gemini-thinking "|Gemini thinking") (:: :item :gemini-learnlm "|Gemini LearnLM") (:: :item :gemma "|Gemma 3 27b") (:: :item :openrouter/anthropic/claude-3.7-sonnet "\"Openrouter Claude 3.7 Sonnet") (:: :item :openrouter/anthropic/claude-3.7-sonnet:thinking "\"Openrouter Claude 3.7 Sonnet Thinking") (:: :item :openrouter/openai/gpt-4o "\"Openrouter GPT 4o") (:: :item :openrouter/deepseek/deepseek-chat-v3-0324:free "\"Openrouter deepseek/deepseek-chat-v3-0324:free") (:: :item :claude "\"Claude 3.5") (:: :item :claude-3.7 "\"Claude 3.7") (:: :item :claude-3.7-thinking "\"Claude 3.7 Thinking") (:: :item :deepinfra "\"Deepinfra") |pattern-spaced-code $ %{} :CodeEntry (:doc |) :code $ quote def pattern-spaced-code $ noted "\"temp fix of nested code block" (&raw-code "\"/\\n\\s+```/g") |pick-model $ %{} :CodeEntry (:doc |) :code $ quote defn pick-model (variant) - case-default variant "\"gemini-2.0-flash-exp" (:gemini-thinking "\"gemini-2.0-flash-thinking-exp-1219") (:gemini-pro "\"gemini-2.5-pro-exp-03-25") (:gemini-pro-1.5 "\"gemini-1.5-pro") (:gemini-flash-lite "\"gemini-2.0-flash-lite-preview-02-05") (:gemini-learnlm "\"learnlm-1.5-pro-experimental") (:gemini-flash-thinking "\"gemini-2.0-flash-thinking-exp-01-21") + case-default variant "\"gemini-2.5-flash-preview-04-17" (:gemini-thinking "\"gemini-2.0-flash-thinking-exp-1219") (:gemini-pro "\"gemini-2.5-pro-exp-03-25") (:gemini-pro-1.5 "\"gemini-1.5-pro") (:gemini-flash-lite "\"gemini-2.0-flash-lite-preview-02-05") (:gemini-learnlm "\"learnlm-1.5-pro-experimental") (:gemini-flash-thinking "\"gemini-2.0-flash-thinking-exp-01-21") (:gemma "\"gemma-3-27b-it") |style-a-toggler $ %{} :CodeEntry (:doc |) :code $ quote defstyle style-a-toggler $ {} @@ -423,6 +611,11 @@ :code $ quote defstyle style-code-content $ {} "\"&" $ {} (:line-height "\"1.5") (:font-size 13) + |style-image $ %{} :CodeEntry (:doc |) + :code $ quote + defstyle style-image $ {} + "\"&" $ {} (:max-width "\"100%") (:border-radius "\"6px") + :border $ str "\"1px solid " (hsl 0 0 90) |style-md-content $ %{} :CodeEntry (:doc |) :code $ quote defstyle style-md-content $ {} @@ -439,7 +632,7 @@ |style-message-list $ %{} :CodeEntry (:doc |) :code $ quote defstyle style-message-list $ {} - "\"&" $ {} (:flex 2) (:padding "\"40px 16px 32vh 16px") (:width "\"100%") (:max-width 1200) (:margin :auto) (:position :relative) + "\"&" $ {} (:flex 2) (:padding "\"40px 16px 20vh 16px") (:width "\"100%") (:max-width 1200) (:margin :auto) (:position :relative) |style-more $ %{} :CodeEntry (:doc |) :code $ quote defstyle style-more $ {} @@ -460,29 +653,32 @@ :code $ quote defstyle style-textbox $ {} "\"&" $ {} (:border-radius 12) (:height "\"max(160px,20vh)") (:width "\"100%") (:transition-duration "\"320ms") - "\"&.focus-within" $ {} (:height "\"max(260px,40vh)") + "\"&.focus-within" $ {} (:height "\"max(240px,32vh)") |submit-message! $ %{} :CodeEntry (:doc |) :code $ quote defn submit-message! (cursor state prompt-text model d!) (hint-fn async) let *text $ atom "\"" + model $ :model state try - case-default (:model state) - js-await $ call-gemini-msg! (:model state) cursor state prompt-text d! - :gemini-pro $ js-await - call-gemini-msg! (:model state) cursor state prompt-text d! - :gemini-thinking $ js-await - call-gemini-msg! (:model state) cursor state prompt-text d! - :gemini-flash-thinking $ js-await - call-gemini-msg! (:model state) cursor state prompt-text d! - :gemini-flash-lite $ js-await - call-gemini-msg! (:model state) cursor state prompt-text d! - :gemini-learnlm $ js-await - call-gemini-msg! (:model state) cursor state prompt-text d! + case-default model + js-await $ call-genai-msg! model cursor state prompt-text d! + :gemini-pro $ js-await (call-genai-msg! model cursor state prompt-text d!) + :gemini-1.5-pro $ js-await (call-genai-msg! model cursor state prompt-text d!) + :imagin-3 $ js-await (call-imagin-msg! model cursor state prompt-text d!) + :gemini-thinking $ js-await (call-genai-msg! model cursor state prompt-text d!) + :gemini-flash-thinking $ js-await (call-genai-msg! model cursor state prompt-text d!) + :gemini-flash-lite $ js-await (call-genai-msg! model cursor state prompt-text d!) + :gemini-flash $ js-await (call-genai-msg! model cursor state prompt-text d!) + :gemini-learnlm $ js-await (call-genai-msg! model cursor state prompt-text d!) :claude $ js-await (call-anthropic-msg! cursor state prompt-text "\"claude-3-5-sonnet-20241022" false d!) :claude-3.7 $ js-await (call-anthropic-msg! cursor state prompt-text "\"claude-3-7-sonnet-20250219" false d!) :claude-3.7-thinking $ js-await (call-anthropic-msg! cursor state prompt-text "\"claude-3-7-sonnet-20250219" true d!) :deepinfra $ js-await (call-deepinfra-msg! cursor state prompt-text d! *text) + :openrouter/anthropic/claude-3.7-sonnet $ js-await (call-openrouter! cursor state prompt-text "\"anthropic/claude-3.7-sonnet" true d!) + :openrouter/anthropic/claude-3.7-sonnet:thinking $ js-await (call-openrouter! cursor state prompt-text "\"anthropic/claude-3.7-sonnet:thinking" true d!) + :openrouter/openai/gpt-4o $ js-await (call-openrouter! cursor state prompt-text "\"openai/gpt-4o" true d!) + :openrouter/deepseek/deepseek-chat-v3-0324:free $ js-await (call-openrouter! cursor state prompt-text "\"deepseek/deepseek-chat-v3-0324:free" true d!) fn (e) d! cursor $ -> state assoc :answer $ str @*text &newline &newline (str "\"Failed to load: " e) @@ -493,7 +689,7 @@ ns app.comp.container $ :require (respo-ui.css :as css) respo.css :refer $ defstyle respo.util.format :refer $ hsl - respo.core :refer $ defcomp defeffect <> >> div button textarea span input a pre + respo.core :refer $ defcomp defeffect <> >> div button textarea span input a pre img respo.comp.space :refer $ =< respo.comp.inspect :refer $ comp-inspect reel.comp.reel :refer $ comp-reel @@ -503,8 +699,11 @@ respo-ui.comp :refer $ comp-copy comp-close respo-alerts.core :refer $ use-modal-menu "\"../extension/get-selected" :refer $ get-selected - "\"@google/generative-ai" :refer $ GoogleGenerativeAI + ; "\"@google/generative-ai" :refer $ GoogleGenerativeAI memof.once :refer $ memof1-call memof1-call-by + "\"@google/genai" :refer $ GoogleGenAI Modality + "\"../lib/image" :refer $ base64ToBlob + "\"openai" :default OpenAI |app.config $ %{} :FileEntry :defs $ {} |chrome-extension? $ %{} :CodeEntry (:doc |) diff --git a/deps.cirru b/deps.cirru index 3b86c94..966b755 100644 --- a/deps.cirru +++ b/deps.cirru @@ -1,6 +1,6 @@ {} - :calcit-version |0.9.9 + :calcit-version |0.9.11 :dependencies $ {} |calcit-lang/lilac |main |calcit-lang/memof |main diff --git a/lib/image.mjs b/lib/image.mjs new file mode 100644 index 0000000..3678779 --- /dev/null +++ b/lib/image.mjs @@ -0,0 +1,20 @@ +export function base64ToBlob(base64Data, contentType) { + contentType = contentType || ''; // 默认为空字符串,浏览器会根据base64字符串自动识别 + const byteCharacters = atob(base64Data); + const byteArrays = []; + + for (let offset = 0; offset < byteCharacters.length; offset += 512) { // 512 是一个块大小,可以根据需求调整 + const slice = byteCharacters.slice(offset, offset + 512); + + const byteNumbers = new Array(slice.length); + for (let i = 0; i < slice.length; i++) { + byteNumbers[i] = slice.charCodeAt(i); + } + + const byteArray = new Uint8Array(byteNumbers); + byteArrays.push(byteArray); + } + + const blob = new Blob(byteArrays, { type: contentType }); + return blob; +} diff --git a/package.json b/package.json index 9704a33..0b6408d 100644 --- a/package.json +++ b/package.json @@ -1,17 +1,19 @@ { "dependencies": { - "@calcit/procs": "^0.9.9", - "@google/generative-ai": "^0.24.0", - "axios": "^1.8.4", + "@calcit/procs": "^0.9.11", + "@google/genai": "^0.12.0", + "axios": "^1.9.0", "cirru-color": "^0.2.4", - "copy-text-to-clipboard": "^3.2.0" + "copy-text-to-clipboard": "^3.2.0", + "openai": "^4.96.2" }, "devDependencies": { "bottom-tip": "^0.1.5", - "vite": "^6.2.6" + "vite": "^6.3.4" }, "scripts": { "build": "yarn vite build --base ./ && rm -rfv extension/dist && cp -vr dist extension/" }, - "version": "0.0.1" + "version": "0.0.1", + "packageManager": "yarn@1.22.19+sha1.4ba7fc5c6e704fce2066ecbfb0b0d8976fe62447" } diff --git a/yarn.lock b/yarn.lock index b0b506f..6831ae7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,10 +2,10 @@ # yarn lockfile v1 -"@calcit/procs@^0.9.9": - version "0.9.9" - resolved "https://registry.yarnpkg.com/@calcit/procs/-/procs-0.9.9.tgz#32336b73eb5adc8ea45a3cd9c396184a839640b3" - integrity sha512-Kvac+90bjvLiW5bbb1vnMdjKOtNyJxHjGpmAiMfxTpQxoCezd9shhTgGF+Z1C4RF9P+suNhb+nzaqnqCpNJQ4Q== +"@calcit/procs@^0.9.11": + version "0.9.11" + resolved "https://registry.npmmirror.com/@calcit/procs/-/procs-0.9.11.tgz#b57d033e6d4d70891a0820e8f25c4e2d21a6be20" + integrity sha512-vrmPKvzE/zSHXaP+cuBF0/jO+/8oN8gDN7QzAK+axvjVyzH8uJJA56d9dKyfkS5eR5fQAp7ll4xp4AVZ45qivg== dependencies: "@calcit/ternary-tree" "0.0.24" "@cirru/parser.ts" "^0.0.6" @@ -13,271 +13,327 @@ "@calcit/ternary-tree@0.0.24": version "0.0.24" - resolved "https://registry.yarnpkg.com/@calcit/ternary-tree/-/ternary-tree-0.0.24.tgz#9b58cf9f76c08c3995b98b59c71b85e1da32385c" + resolved "https://registry.npmmirror.com/@calcit/ternary-tree/-/ternary-tree-0.0.24.tgz#9b58cf9f76c08c3995b98b59c71b85e1da32385c" integrity sha512-IGs+VNYIrIF2bI3/cnQe2lFmZYaJe3+A0LArDloGbNaEzUTRoyba37FTZ8K9C+XRpUAO9K0q61sKY2vb4teWAA== "@cirru/parser.ts@^0.0.6": version "0.0.6" - resolved "https://registry.yarnpkg.com/@cirru/parser.ts/-/parser.ts-0.0.6.tgz#b95a84e02273fcbd71ff100925782b6f86410234" + resolved "https://registry.npmmirror.com/@cirru/parser.ts/-/parser.ts-0.0.6.tgz#b95a84e02273fcbd71ff100925782b6f86410234" integrity sha512-qpDNPq+IuuwYjQFI+wzpd3ntbF7lwJs90v1XWyLQbL9Ru4ld4aHxVGwW/9F/QOu5mEGCMXtagCoYDf0HtOpDZg== "@cirru/writer.ts@^0.1.5": version "0.1.5" - resolved "https://registry.yarnpkg.com/@cirru/writer.ts/-/writer.ts-0.1.5.tgz#890d96cd4a69609f1682932dad5d2d467abb327e" + resolved "https://registry.npmmirror.com/@cirru/writer.ts/-/writer.ts-0.1.5.tgz#890d96cd4a69609f1682932dad5d2d467abb327e" integrity sha512-QQVFJAOIdUtVJZwT23THZOzumSDXCLMQ0yFz5DzIGlWGXPNBuB7BwUvGtRuiQrzM2XV7ALOWmNsVC7vEOjObQQ== -"@esbuild/aix-ppc64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.25.2.tgz#b87036f644f572efb2b3c75746c97d1d2d87ace8" - integrity sha512-wCIboOL2yXZym2cgm6mlA742s9QeJ8DjGVaL39dLN4rRwrOgOyYSnOaFPhKZGLb2ngj4EyfAFjsNJwPXZvseag== - -"@esbuild/android-arm64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.25.2.tgz#5ca7dc20a18f18960ad8d5e6ef5cf7b0a256e196" - integrity sha512-5ZAX5xOmTligeBaeNEPnPaeEuah53Id2tX4c2CVP3JaROTH+j4fnfHCkr1PjXMd78hMst+TlkfKcW/DlTq0i4w== - -"@esbuild/android-arm@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.25.2.tgz#3c49f607b7082cde70c6ce0c011c362c57a194ee" - integrity sha512-NQhH7jFstVY5x8CKbcfa166GoV0EFkaPkCKBQkdPJFvo5u+nGXLEH/ooniLb3QI8Fk58YAx7nsPLozUWfCBOJA== - -"@esbuild/android-x64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.25.2.tgz#8a00147780016aff59e04f1036e7cb1b683859e2" - integrity sha512-Ffcx+nnma8Sge4jzddPHCZVRvIfQ0kMsUsCMcJRHkGJ1cDmhe4SsrYIjLUKn1xpHZybmOqCWwB0zQvsjdEHtkg== - -"@esbuild/darwin-arm64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.25.2.tgz#486efe7599a8d90a27780f2bb0318d9a85c6c423" - integrity sha512-MpM6LUVTXAzOvN4KbjzU/q5smzryuoNjlriAIx+06RpecwCkL9JpenNzpKd2YMzLJFOdPqBpuub6eVRP5IgiSA== - -"@esbuild/darwin-x64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.25.2.tgz#95ee222aacf668c7a4f3d7ee87b3240a51baf374" - integrity sha512-5eRPrTX7wFyuWe8FqEFPG2cU0+butQQVNcT4sVipqjLYQjjh8a8+vUTfgBKM88ObB85ahsnTwF7PSIt6PG+QkA== - -"@esbuild/freebsd-arm64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.2.tgz#67efceda8554b6fc6a43476feba068fb37fa2ef6" - integrity sha512-mLwm4vXKiQ2UTSX4+ImyiPdiHjiZhIaE9QvC7sw0tZ6HoNMjYAqQpGyui5VRIi5sGd+uWq940gdCbY3VLvsO1w== - -"@esbuild/freebsd-x64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.25.2.tgz#88a9d7ecdd3adadbfe5227c2122d24816959b809" - integrity sha512-6qyyn6TjayJSwGpm8J9QYYGQcRgc90nmfdUb0O7pp1s4lTY+9D0H9O02v5JqGApUyiHOtkz6+1hZNvNtEhbwRQ== - -"@esbuild/linux-arm64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.25.2.tgz#87be1099b2bbe61282333b084737d46bc8308058" - integrity sha512-gq/sjLsOyMT19I8obBISvhoYiZIAaGF8JpeXu1u8yPv8BE5HlWYobmlsfijFIZ9hIVGYkbdFhEqC0NvM4kNO0g== - -"@esbuild/linux-arm@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.25.2.tgz#72a285b0fe64496e191fcad222185d7bf9f816f6" - integrity sha512-UHBRgJcmjJv5oeQF8EpTRZs/1knq6loLxTsjc3nxO9eXAPDLcWW55flrMVc97qFPbmZP31ta1AZVUKQzKTzb0g== - -"@esbuild/linux-ia32@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.25.2.tgz#337a87a4c4dd48a832baed5cbb022be20809d737" - integrity sha512-bBYCv9obgW2cBP+2ZWfjYTU+f5cxRoGGQ5SeDbYdFCAZpYWrfjjfYwvUpP8MlKbP0nwZ5gyOU/0aUzZ5HWPuvQ== - -"@esbuild/linux-loong64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.25.2.tgz#1b81aa77103d6b8a8cfa7c094ed3d25c7579ba2a" - integrity sha512-SHNGiKtvnU2dBlM5D8CXRFdd+6etgZ9dXfaPCeJtz+37PIUlixvlIhI23L5khKXs3DIzAn9V8v+qb1TRKrgT5w== - -"@esbuild/linux-mips64el@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.25.2.tgz#afbe380b6992e7459bf7c2c3b9556633b2e47f30" - integrity sha512-hDDRlzE6rPeoj+5fsADqdUZl1OzqDYow4TB4Y/3PlKBD0ph1e6uPHzIQcv2Z65u2K0kpeByIyAjCmjn1hJgG0Q== - -"@esbuild/linux-ppc64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.25.2.tgz#6bf8695cab8a2b135cca1aa555226dc932d52067" - integrity sha512-tsHu2RRSWzipmUi9UBDEzc0nLc4HtpZEI5Ba+Omms5456x5WaNuiG3u7xh5AO6sipnJ9r4cRWQB2tUjPyIkc6g== - -"@esbuild/linux-riscv64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.25.2.tgz#43c2d67a1a39199fb06ba978aebb44992d7becc3" - integrity sha512-k4LtpgV7NJQOml/10uPU0s4SAXGnowi5qBSjaLWMojNCUICNu7TshqHLAEbkBdAszL5TabfvQ48kK84hyFzjnw== - -"@esbuild/linux-s390x@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.25.2.tgz#419e25737ec815c6dce2cd20d026e347cbb7a602" - integrity sha512-GRa4IshOdvKY7M/rDpRR3gkiTNp34M0eLTaC1a08gNrh4u488aPhuZOCpkF6+2wl3zAN7L7XIpOFBhnaE3/Q8Q== - -"@esbuild/linux-x64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.25.2.tgz#22451f6edbba84abe754a8cbd8528ff6e28d9bcb" - integrity sha512-QInHERlqpTTZ4FRB0fROQWXcYRD64lAoiegezDunLpalZMjcUcld3YzZmVJ2H/Cp0wJRZ8Xtjtj0cEHhYc/uUg== - -"@esbuild/netbsd-arm64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.2.tgz#744affd3b8d8236b08c5210d828b0698a62c58ac" - integrity sha512-talAIBoY5M8vHc6EeI2WW9d/CkiO9MQJ0IOWX8hrLhxGbro/vBXJvaQXefW2cP0z0nQVTdQ/eNyGFV1GSKrxfw== - -"@esbuild/netbsd-x64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.25.2.tgz#dbbe7521fd6d7352f34328d676af923fc0f8a78f" - integrity sha512-voZT9Z+tpOxrvfKFyfDYPc4DO4rk06qamv1a/fkuzHpiVBMOhpjK+vBmWM8J1eiB3OLSMFYNaOaBNLXGChf5tg== - -"@esbuild/openbsd-arm64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.2.tgz#f9caf987e3e0570500832b487ce3039ca648ce9f" - integrity sha512-dcXYOC6NXOqcykeDlwId9kB6OkPUxOEqU+rkrYVqJbK2hagWOMrsTGsMr8+rW02M+d5Op5NNlgMmjzecaRf7Tg== - -"@esbuild/openbsd-x64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.25.2.tgz#d2bb6a0f8ffea7b394bb43dfccbb07cabd89f768" - integrity sha512-t/TkWwahkH0Tsgoq1Ju7QfgGhArkGLkF1uYz8nQS/PPFlXbP5YgRpqQR3ARRiC2iXoLTWFxc6DJMSK10dVXluw== - -"@esbuild/sunos-x64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.25.2.tgz#49b437ed63fe333b92137b7a0c65a65852031afb" - integrity sha512-cfZH1co2+imVdWCjd+D1gf9NjkchVhhdpgb1q5y6Hcv9TP6Zi9ZG/beI3ig8TvwT9lH9dlxLq5MQBBgwuj4xvA== - -"@esbuild/win32-arm64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.25.2.tgz#081424168463c7d6c7fb78f631aede0c104373cf" - integrity sha512-7Loyjh+D/Nx/sOTzV8vfbB3GJuHdOQyrOryFdZvPHLf42Tk9ivBU5Aedi7iyX+x6rbn2Mh68T4qq1SDqJBQO5Q== - -"@esbuild/win32-ia32@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.25.2.tgz#3f9e87143ddd003133d21384944a6c6cadf9693f" - integrity sha512-WRJgsz9un0nqZJ4MfhabxaD9Ft8KioqU3JMinOTvobbX6MOSUigSBlogP8QB3uxpJDsFS6yN+3FDBdqE5lg9kg== - -"@esbuild/win32-x64@0.25.2": - version "0.25.2" - resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.25.2.tgz#839f72c2decd378f86b8f525e1979a97b920c67d" - integrity sha512-kM3HKb16VIXZyIeVrM1ygYmZBKybX8N4p754bw390wGO3Tf2j4L2/WYL+4suWujpgf6GBYs3jv7TyUivdd05JA== - -"@google/generative-ai@^0.24.0": - version "0.24.0" - resolved "https://registry.yarnpkg.com/@google/generative-ai/-/generative-ai-0.24.0.tgz#4d27af7d944c924a27a593c17ad1336535d53846" - integrity sha512-fnEITCGEB7NdX0BhoYZ/cq/7WPZ1QS5IzJJfC3Tg/OwkvBetMiVJciyaan297OvE4B9Jg1xvo0zIazX/9sGu1Q== - -"@rollup/rollup-android-arm-eabi@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.40.0.tgz#d964ee8ce4d18acf9358f96adc408689b6e27fe3" - integrity sha512-+Fbls/diZ0RDerhE8kyC6hjADCXA1K4yVNlH0EYfd2XjyH0UGgzaQ8MlT0pCXAThfxv3QUAczHaL+qSv1E4/Cg== - -"@rollup/rollup-android-arm64@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.40.0.tgz#9b5e130ecc32a5fc1e96c09ff371743ee71a62d3" - integrity sha512-PPA6aEEsTPRz+/4xxAmaoWDqh67N7wFbgFUJGMnanCFs0TV99M0M8QhhaSCks+n6EbQoFvLQgYOGXxlMGQe/6w== - -"@rollup/rollup-darwin-arm64@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.40.0.tgz#ef439182c739b20b3c4398cfc03e3c1249ac8903" - integrity sha512-GwYOcOakYHdfnjjKwqpTGgn5a6cUX7+Ra2HeNj/GdXvO2VJOOXCiYYlRFU4CubFM67EhbmzLOmACKEfvp3J1kQ== - -"@rollup/rollup-darwin-x64@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.40.0.tgz#d7380c1531ab0420ca3be16f17018ef72dd3d504" - integrity sha512-CoLEGJ+2eheqD9KBSxmma6ld01czS52Iw0e2qMZNpPDlf7Z9mj8xmMemxEucinev4LgHalDPczMyxzbq+Q+EtA== - -"@rollup/rollup-freebsd-arm64@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.40.0.tgz#cbcbd7248823c6b430ce543c59906dd3c6df0936" - integrity sha512-r7yGiS4HN/kibvESzmrOB/PxKMhPTlz+FcGvoUIKYoTyGd5toHp48g1uZy1o1xQvybwwpqpe010JrcGG2s5nkg== - -"@rollup/rollup-freebsd-x64@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.40.0.tgz#96bf6ff875bab5219c3472c95fa6eb992586a93b" - integrity sha512-mVDxzlf0oLzV3oZOr0SMJ0lSDd3xC4CmnWJ8Val8isp9jRGl5Dq//LLDSPFrasS7pSm6m5xAcKaw3sHXhBjoRw== - -"@rollup/rollup-linux-arm-gnueabihf@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.40.0.tgz#d80cd62ce6d40f8e611008d8dbf03b5e6bbf009c" - integrity sha512-y/qUMOpJxBMy8xCXD++jeu8t7kzjlOCkoxxajL58G62PJGBZVl/Gwpm7JK9+YvlB701rcQTzjUZ1JgUoPTnoQA== - -"@rollup/rollup-linux-arm-musleabihf@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.40.0.tgz#75440cfc1e8d0f87a239b4c31dfeaf4719b656b7" - integrity sha512-GoCsPibtVdJFPv/BOIvBKO/XmwZLwaNWdyD8TKlXuqp0veo2sHE+A/vpMQ5iSArRUz/uaoj4h5S6Pn0+PdhRjg== - -"@rollup/rollup-linux-arm64-gnu@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.40.0.tgz#ac527485ecbb619247fb08253ec8c551a0712e7c" - integrity sha512-L5ZLphTjjAD9leJzSLI7rr8fNqJMlGDKlazW2tX4IUF9P7R5TMQPElpH82Q7eNIDQnQlAyiNVfRPfP2vM5Avvg== - -"@rollup/rollup-linux-arm64-musl@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.40.0.tgz#74d2b5cb11cf714cd7d1682e7c8b39140e908552" - integrity sha512-ATZvCRGCDtv1Y4gpDIXsS+wfFeFuLwVxyUBSLawjgXK2tRE6fnsQEkE4csQQYWlBlsFztRzCnBvWVfcae/1qxQ== - -"@rollup/rollup-linux-loongarch64-gnu@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.40.0.tgz#a0a310e51da0b5fea0e944b0abd4be899819aef6" - integrity sha512-wG9e2XtIhd++QugU5MD9i7OnpaVb08ji3P1y/hNbxrQ3sYEelKJOq1UJ5dXczeo6Hj2rfDEL5GdtkMSVLa/AOg== - -"@rollup/rollup-linux-powerpc64le-gnu@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.40.0.tgz#4077e2862b0ac9f61916d6b474d988171bd43b83" - integrity sha512-vgXfWmj0f3jAUvC7TZSU/m/cOE558ILWDzS7jBhiCAFpY2WEBn5jqgbqvmzlMjtp8KlLcBlXVD2mkTSEQE6Ixw== - -"@rollup/rollup-linux-riscv64-gnu@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.40.0.tgz#5812a1a7a2f9581cbe12597307cc7ba3321cf2f3" - integrity sha512-uJkYTugqtPZBS3Z136arevt/FsKTF/J9dEMTX/cwR7lsAW4bShzI2R0pJVw+hcBTWF4dxVckYh72Hk3/hWNKvA== - -"@rollup/rollup-linux-riscv64-musl@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.40.0.tgz#973aaaf4adef4531375c36616de4e01647f90039" - integrity sha512-rKmSj6EXQRnhSkE22+WvrqOqRtk733x3p5sWpZilhmjnkHkpeCgWsFFo0dGnUGeA+OZjRl3+VYq+HyCOEuwcxQ== - -"@rollup/rollup-linux-s390x-gnu@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.40.0.tgz#9bad59e907ba5bfcf3e9dbd0247dfe583112f70b" - integrity sha512-SpnYlAfKPOoVsQqmTFJ0usx0z84bzGOS9anAC0AZ3rdSo3snecihbhFTlJZ8XMwzqAcodjFU4+/SM311dqE5Sw== - -"@rollup/rollup-linux-x64-gnu@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.40.0.tgz#68b045a720bd9b4d905f462b997590c2190a6de0" - integrity sha512-RcDGMtqF9EFN8i2RYN2W+64CdHruJ5rPqrlYw+cgM3uOVPSsnAQps7cpjXe9be/yDp8UC7VLoCoKC8J3Kn2FkQ== - -"@rollup/rollup-linux-x64-musl@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.40.0.tgz#8e703e2c2ad19ba7b2cb3d8c3a4ad11d4ee3a282" - integrity sha512-HZvjpiUmSNx5zFgwtQAV1GaGazT2RWvqeDi0hV+AtC8unqqDSsaFjPxfsO6qPtKRRg25SisACWnJ37Yio8ttaw== - -"@rollup/rollup-win32-arm64-msvc@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.40.0.tgz#c5bee19fa670ff5da5f066be6a58b4568e9c650b" - integrity sha512-UtZQQI5k/b8d7d3i9AZmA/t+Q4tk3hOC0tMOMSq2GlMYOfxbesxG4mJSeDp0EHs30N9bsfwUvs3zF4v/RzOeTQ== - -"@rollup/rollup-win32-ia32-msvc@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.40.0.tgz#846e02c17044bd922f6f483a3b4d36aac6e2b921" - integrity sha512-+m03kvI2f5syIqHXCZLPVYplP8pQch9JHyXKZ3AGMKlg8dCyr2PKHjwRLiW53LTrN/Nc3EqHOKxUxzoSPdKddA== - -"@rollup/rollup-win32-x64-msvc@4.40.0": - version "4.40.0" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.40.0.tgz#fd92d31a2931483c25677b9c6698106490cbbc76" - integrity sha512-lpPE1cLfP5oPzVjKMx10pgBmKELQnFJXHgvtHCtuJWOv8MxqdEIMNtgHgBFf7Ea2/7EuVwa9fodWUfXAlXZLZQ== +"@esbuild/aix-ppc64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/aix-ppc64/-/aix-ppc64-0.25.3.tgz#014180d9a149cffd95aaeead37179433f5ea5437" + integrity sha512-W8bFfPA8DowP8l//sxjJLSLkD8iEjMc7cBVyP+u4cEv9sM7mdUCkgsj+t0n/BWPFtv7WWCN5Yzj0N6FJNUUqBQ== + +"@esbuild/android-arm64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/android-arm64/-/android-arm64-0.25.3.tgz#649e47e04ddb24a27dc05c395724bc5f4c55cbfe" + integrity sha512-XelR6MzjlZuBM4f5z2IQHK6LkK34Cvv6Rj2EntER3lwCBFdg6h2lKbtRjpTTsdEjD/WSe1q8UyPBXP1x3i/wYQ== + +"@esbuild/android-arm@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/android-arm/-/android-arm-0.25.3.tgz#8a0f719c8dc28a4a6567ef7328c36ea85f568ff4" + integrity sha512-PuwVXbnP87Tcff5I9ngV0lmiSu40xw1At6i3GsU77U7cjDDB4s0X2cyFuBiDa1SBk9DnvWwnGvVaGBqoFWPb7A== + +"@esbuild/android-x64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/android-x64/-/android-x64-0.25.3.tgz#e2ab182d1fd06da9bef0784a13c28a7602d78009" + integrity sha512-ogtTpYHT/g1GWS/zKM0cc/tIebFjm1F9Aw1boQ2Y0eUQ+J89d0jFY//s9ei9jVIlkYi8AfOjiixcLJSGNSOAdQ== + +"@esbuild/darwin-arm64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/darwin-arm64/-/darwin-arm64-0.25.3.tgz#c7f3166fcece4d158a73dcfe71b2672ca0b1668b" + integrity sha512-eESK5yfPNTqpAmDfFWNsOhmIOaQA59tAcF/EfYvo5/QWQCzXn5iUSOnqt3ra3UdzBv073ykTtmeLJZGt3HhA+w== + +"@esbuild/darwin-x64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/darwin-x64/-/darwin-x64-0.25.3.tgz#d8c5342ec1a4bf4b1915643dfe031ba4b173a87a" + integrity sha512-Kd8glo7sIZtwOLcPbW0yLpKmBNWMANZhrC1r6K++uDR2zyzb6AeOYtI6udbtabmQpFaxJ8uduXMAo1gs5ozz8A== + +"@esbuild/freebsd-arm64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.3.tgz#9f7d789e2eb7747d4868817417cc968ffa84f35b" + integrity sha512-EJiyS70BYybOBpJth3M0KLOus0n+RRMKTYzhYhFeMwp7e/RaajXvP+BWlmEXNk6uk+KAu46j/kaQzr6au+JcIw== + +"@esbuild/freebsd-x64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/freebsd-x64/-/freebsd-x64-0.25.3.tgz#8ad35c51d084184a8e9e76bb4356e95350a64709" + integrity sha512-Q+wSjaLpGxYf7zC0kL0nDlhsfuFkoN+EXrx2KSB33RhinWzejOd6AvgmP5JbkgXKmjhmpfgKZq24pneodYqE8Q== + +"@esbuild/linux-arm64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/linux-arm64/-/linux-arm64-0.25.3.tgz#3af0da3d9186092a9edd4e28fa342f57d9e3cd30" + integrity sha512-xCUgnNYhRD5bb1C1nqrDV1PfkwgbswTTBRbAd8aH5PhYzikdf/ddtsYyMXFfGSsb/6t6QaPSzxtbfAZr9uox4A== + +"@esbuild/linux-arm@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/linux-arm/-/linux-arm-0.25.3.tgz#e91cafa95e4474b3ae3d54da12e006b782e57225" + integrity sha512-dUOVmAUzuHy2ZOKIHIKHCm58HKzFqd+puLaS424h6I85GlSDRZIA5ycBixb3mFgM0Jdh+ZOSB6KptX30DD8YOQ== + +"@esbuild/linux-ia32@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/linux-ia32/-/linux-ia32-0.25.3.tgz#81025732d85b68ee510161b94acdf7e3007ea177" + integrity sha512-yplPOpczHOO4jTYKmuYuANI3WhvIPSVANGcNUeMlxH4twz/TeXuzEP41tGKNGWJjuMhotpGabeFYGAOU2ummBw== + +"@esbuild/linux-loong64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/linux-loong64/-/linux-loong64-0.25.3.tgz#3c744e4c8d5e1148cbe60a71a11b58ed8ee5deb8" + integrity sha512-P4BLP5/fjyihmXCELRGrLd793q/lBtKMQl8ARGpDxgzgIKJDRJ/u4r1A/HgpBpKpKZelGct2PGI4T+axcedf6g== + +"@esbuild/linux-mips64el@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/linux-mips64el/-/linux-mips64el-0.25.3.tgz#1dfe2a5d63702db9034cc6b10b3087cc0424ec26" + integrity sha512-eRAOV2ODpu6P5divMEMa26RRqb2yUoYsuQQOuFUexUoQndm4MdpXXDBbUoKIc0iPa4aCO7gIhtnYomkn2x+bag== + +"@esbuild/linux-ppc64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/linux-ppc64/-/linux-ppc64-0.25.3.tgz#2e85d9764c04a1ebb346dc0813ea05952c9a5c56" + integrity sha512-ZC4jV2p7VbzTlnl8nZKLcBkfzIf4Yad1SJM4ZMKYnJqZFD4rTI+pBG65u8ev4jk3/MPwY9DvGn50wi3uhdaghg== + +"@esbuild/linux-riscv64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/linux-riscv64/-/linux-riscv64-0.25.3.tgz#a9ea3334556b09f85ccbfead58c803d305092415" + integrity sha512-LDDODcFzNtECTrUUbVCs6j9/bDVqy7DDRsuIXJg6so+mFksgwG7ZVnTruYi5V+z3eE5y+BJZw7VvUadkbfg7QA== + +"@esbuild/linux-s390x@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/linux-s390x/-/linux-s390x-0.25.3.tgz#f6a7cb67969222b200974de58f105dfe8e99448d" + integrity sha512-s+w/NOY2k0yC2p9SLen+ymflgcpRkvwwa02fqmAwhBRI3SC12uiS10edHHXlVWwfAagYSY5UpmT/zISXPMW3tQ== + +"@esbuild/linux-x64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/linux-x64/-/linux-x64-0.25.3.tgz#a237d3578ecdd184a3066b1f425e314ade0f8033" + integrity sha512-nQHDz4pXjSDC6UfOE1Fw9Q8d6GCAd9KdvMZpfVGWSJztYCarRgSDfOVBY5xwhQXseiyxapkiSJi/5/ja8mRFFA== + +"@esbuild/netbsd-arm64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.3.tgz#4c15c68d8149614ddb6a56f9c85ae62ccca08259" + integrity sha512-1QaLtOWq0mzK6tzzp0jRN3eccmN3hezey7mhLnzC6oNlJoUJz4nym5ZD7mDnS/LZQgkrhEbEiTn515lPeLpgWA== + +"@esbuild/netbsd-x64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/netbsd-x64/-/netbsd-x64-0.25.3.tgz#12f6856f8c54c2d7d0a8a64a9711c01a743878d5" + integrity sha512-i5Hm68HXHdgv8wkrt+10Bc50zM0/eonPb/a/OFVfB6Qvpiirco5gBA5bz7S2SHuU+Y4LWn/zehzNX14Sp4r27g== + +"@esbuild/openbsd-arm64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.3.tgz#ca078dad4a34df192c60233b058db2ca3d94bc5c" + integrity sha512-zGAVApJEYTbOC6H/3QBr2mq3upG/LBEXr85/pTtKiv2IXcgKV0RT0QA/hSXZqSvLEpXeIxah7LczB4lkiYhTAQ== + +"@esbuild/openbsd-x64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/openbsd-x64/-/openbsd-x64-0.25.3.tgz#c9178adb60e140e03a881d0791248489c79f95b2" + integrity sha512-fpqctI45NnCIDKBH5AXQBsD0NDPbEFczK98hk/aa6HJxbl+UtLkJV2+Bvy5hLSLk3LHmqt0NTkKNso1A9y1a4w== + +"@esbuild/sunos-x64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/sunos-x64/-/sunos-x64-0.25.3.tgz#03765eb6d4214ff27e5230af779e80790d1ee09f" + integrity sha512-ROJhm7d8bk9dMCUZjkS8fgzsPAZEjtRJqCAmVgB0gMrvG7hfmPmz9k1rwO4jSiblFjYmNvbECL9uhaPzONMfgA== + +"@esbuild/win32-arm64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/win32-arm64/-/win32-arm64-0.25.3.tgz#f1c867bd1730a9b8dfc461785ec6462e349411ea" + integrity sha512-YWcow8peiHpNBiIXHwaswPnAXLsLVygFwCB3A7Bh5jRkIBFWHGmNQ48AlX4xDvQNoMZlPYzjVOQDYEzWCqufMQ== + +"@esbuild/win32-ia32@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/win32-ia32/-/win32-ia32-0.25.3.tgz#77491f59ef6c9ddf41df70670d5678beb3acc322" + integrity sha512-qspTZOIGoXVS4DpNqUYUs9UxVb04khS1Degaw/MnfMe7goQ3lTfQ13Vw4qY/Nj0979BGvMRpAYbs/BAxEvU8ew== + +"@esbuild/win32-x64@0.25.3": + version "0.25.3" + resolved "https://registry.npmmirror.com/@esbuild/win32-x64/-/win32-x64-0.25.3.tgz#b17a2171f9074df9e91bfb07ef99a892ac06412a" + integrity sha512-ICgUR+kPimx0vvRzf+N/7L7tVSQeE3BYY+NhHRHXS1kBuPO7z2+7ea2HbhDyZdTephgvNvKrlDDKUexuCVBVvg== + +"@google/genai@^0.12.0": + version "0.12.0" + resolved "https://registry.npmmirror.com/@google/genai/-/genai-0.12.0.tgz#60cfa419f6e75fc1d47619e74f403e35a871b1a4" + integrity sha512-SJtCHac+HPgmwELpJpPKbaV4rk397bS2D42XgFR2NBEARDKd/79RcaRUFFd55pYUJ+gfaz9Bv6KYoiz/P6eZKA== + dependencies: + google-auth-library "^9.14.2" + ws "^8.18.0" + zod "^3.22.4" + zod-to-json-schema "^3.22.4" + +"@rollup/rollup-android-arm-eabi@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.40.1.tgz#e1562d360bca73c7bef6feef86098de3a2f1d442" + integrity sha512-kxz0YeeCrRUHz3zyqvd7n+TVRlNyTifBsmnmNPtk3hQURUyG9eAB+usz6DAwagMusjx/zb3AjvDUvhFGDAexGw== + +"@rollup/rollup-android-arm64@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.40.1.tgz#37ba63940211673e15dcc5f469a78e34276dbca7" + integrity sha512-PPkxTOisoNC6TpnDKatjKkjRMsdaWIhyuMkA4UsBXT9WEZY4uHezBTjs6Vl4PbqQQeu6oION1w2voYZv9yquCw== + +"@rollup/rollup-darwin-arm64@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.40.1.tgz#58b1eb86d997d71dabc5b78903233a3c27438ca0" + integrity sha512-VWXGISWFY18v/0JyNUy4A46KCFCb9NVsH+1100XP31lud+TzlezBbz24CYzbnA4x6w4hx+NYCXDfnvDVO6lcAA== + +"@rollup/rollup-darwin-x64@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.40.1.tgz#5e22dab3232b1e575d930ce891abb18fe19c58c9" + integrity sha512-nIwkXafAI1/QCS7pxSpv/ZtFW6TXcNUEHAIA9EIyw5OzxJZQ1YDrX+CL6JAIQgZ33CInl1R6mHet9Y/UZTg2Bw== + +"@rollup/rollup-freebsd-arm64@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.40.1.tgz#04c892d9ff864d66e31419634726ab0bebb33707" + integrity sha512-BdrLJ2mHTrIYdaS2I99mriyJfGGenSaP+UwGi1kB9BLOCu9SR8ZpbkmmalKIALnRw24kM7qCN0IOm6L0S44iWw== + +"@rollup/rollup-freebsd-x64@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.40.1.tgz#f4b1e091f7cf5afc9e3a029d70128ad56409ecfb" + integrity sha512-VXeo/puqvCG8JBPNZXZf5Dqq7BzElNJzHRRw3vjBE27WujdzuOPecDPc/+1DcdcTptNBep3861jNq0mYkT8Z6Q== + +"@rollup/rollup-linux-arm-gnueabihf@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.40.1.tgz#c8814bb5ce047a81b1fe4a33628dfd4ac52bd864" + integrity sha512-ehSKrewwsESPt1TgSE/na9nIhWCosfGSFqv7vwEtjyAqZcvbGIg4JAcV7ZEh2tfj/IlfBeZjgOXm35iOOjadcg== + +"@rollup/rollup-linux-arm-musleabihf@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.40.1.tgz#5b4e7bd83cbebbf5ffe958802dcfd4ee34bf73a3" + integrity sha512-m39iO/aaurh5FVIu/F4/Zsl8xppd76S4qoID8E+dSRQvTyZTOI2gVk3T4oqzfq1PtcvOfAVlwLMK3KRQMaR8lg== + +"@rollup/rollup-linux-arm64-gnu@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.40.1.tgz#141c848e53cee011e82a11777b8a51f1b3e8d77c" + integrity sha512-Y+GHnGaku4aVLSgrT0uWe2o2Rq8te9hi+MwqGF9r9ORgXhmHK5Q71N757u0F8yU1OIwUIFy6YiJtKjtyktk5hg== + +"@rollup/rollup-linux-arm64-musl@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.40.1.tgz#22ebeaf2fa301aa4aa6c84b760e6cd1d1ac7eb1e" + integrity sha512-jEwjn3jCA+tQGswK3aEWcD09/7M5wGwc6+flhva7dsQNRZZTe30vkalgIzV4tjkopsTS9Jd7Y1Bsj6a4lzz8gQ== + +"@rollup/rollup-linux-loongarch64-gnu@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.40.1.tgz#20b77dc78e622f5814ff8e90c14c938ceb8043bc" + integrity sha512-ySyWikVhNzv+BV/IDCsrraOAZ3UaC8SZB67FZlqVwXwnFhPihOso9rPOxzZbjp81suB1O2Topw+6Ug3JNegejQ== + +"@rollup/rollup-linux-powerpc64le-gnu@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.40.1.tgz#2c90f99c987ef1198d4f8d15d754c286e1f07b13" + integrity sha512-BvvA64QxZlh7WZWqDPPdt0GH4bznuL6uOO1pmgPnnv86rpUpc8ZxgZwcEgXvo02GRIZX1hQ0j0pAnhwkhwPqWg== + +"@rollup/rollup-linux-riscv64-gnu@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.40.1.tgz#9336fd5e47d7f4760d02aa85f76976176eef53ca" + integrity sha512-EQSP+8+1VuSulm9RKSMKitTav89fKbHymTf25n5+Yr6gAPZxYWpj3DzAsQqoaHAk9YX2lwEyAf9S4W8F4l3VBQ== + +"@rollup/rollup-linux-riscv64-musl@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.40.1.tgz#d75b4d54d46439bb5c6c13762788f57e798f5670" + integrity sha512-n/vQ4xRZXKuIpqukkMXZt9RWdl+2zgGNx7Uda8NtmLJ06NL8jiHxUawbwC+hdSq1rrw/9CghCpEONor+l1e2gA== + +"@rollup/rollup-linux-s390x-gnu@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.40.1.tgz#e9f09b802f1291839247399028beaef9ce034c81" + integrity sha512-h8d28xzYb98fMQKUz0w2fMc1XuGzLLjdyxVIbhbil4ELfk5/orZlSTpF/xdI9C8K0I8lCkq+1En2RJsawZekkg== + +"@rollup/rollup-linux-x64-gnu@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.40.1.tgz#0413169dc00470667dea8575c1129d4e7a73eb29" + integrity sha512-XiK5z70PEFEFqcNj3/zRSz/qX4bp4QIraTy9QjwJAb/Z8GM7kVUsD0Uk8maIPeTyPCP03ChdI+VVmJriKYbRHQ== + +"@rollup/rollup-linux-x64-musl@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.40.1.tgz#c76fd593323c60ea219439a00da6c6d33ffd0ea6" + integrity sha512-2BRORitq5rQ4Da9blVovzNCMaUlyKrzMSvkVR0D4qPuOy/+pMCrh1d7o01RATwVy+6Fa1WBw+da7QPeLWU/1mQ== + +"@rollup/rollup-win32-arm64-msvc@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.40.1.tgz#c7724c386eed0bda5ae7143e4081c1910cab349b" + integrity sha512-b2bcNm9Kbde03H+q+Jjw9tSfhYkzrDUf2d5MAd1bOJuVplXvFhWz7tRtWvD8/ORZi7qSCy0idW6tf2HgxSXQSg== + +"@rollup/rollup-win32-ia32-msvc@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.40.1.tgz#7749e1b65cb64fe6d41ad1ad9e970a0ccc8ac350" + integrity sha512-DfcogW8N7Zg7llVEfpqWMZcaErKfsj9VvmfSyRjCyo4BI3wPEfrzTtJkZG6gKP/Z92wFm6rz2aDO7/JfiR/whA== + +"@rollup/rollup-win32-x64-msvc@4.40.1": + version "4.40.1" + resolved "https://registry.npmmirror.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.40.1.tgz#8078b71fe0d5825dcbf83d52a7dc858b39da165c" + integrity sha512-ECyOuDeH3C1I8jH2MK1RtBJW+YPMvSfT0a5NN0nHfQYnDSJ6tUiZH3gzwVP5/Kfh/+Tt7tpWVF9LXNTnhTJ3kA== "@types/estree@1.0.7": version "1.0.7" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.7.tgz#4158d3105276773d5b7695cd4834b1722e4f37a8" + resolved "https://registry.npmmirror.com/@types/estree/-/estree-1.0.7.tgz#4158d3105276773d5b7695cd4834b1722e4f37a8" integrity sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ== +"@types/node-fetch@^2.6.4": + version "2.6.12" + resolved "https://registry.npmmirror.com/@types/node-fetch/-/node-fetch-2.6.12.tgz#8ab5c3ef8330f13100a7479e2cd56d3386830a03" + integrity sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA== + dependencies: + "@types/node" "*" + form-data "^4.0.0" + +"@types/node@*": + version "22.15.3" + resolved "https://registry.npmmirror.com/@types/node/-/node-22.15.3.tgz#b7fb9396a8ec5b5dfb1345d8ac2502060e9af68b" + integrity sha512-lX7HFZeHf4QG/J7tBZqrCAXwz9J5RD56Y6MpP0eJkka8p+K0RY/yBTW7CYFJ4VGCclxqOLKmiGP5juQc6MKgcw== + dependencies: + undici-types "~6.21.0" + +"@types/node@^18.11.18": + version "18.19.87" + resolved "https://registry.npmmirror.com/@types/node/-/node-18.19.87.tgz#690f000cc51e3c7f48bc00f7e86fac6eb550b709" + integrity sha512-OIAAu6ypnVZHmsHCeJ+7CCSub38QNBS9uceMQeg7K5Ur0Jr+wG9wEOEvvMbhp09pxD5czIUy/jND7s7Tb6Nw7A== + dependencies: + undici-types "~5.26.4" + +abort-controller@^3.0.0: + version "3.0.0" + resolved "https://registry.npmmirror.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" + integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== + dependencies: + event-target-shim "^5.0.0" + +agent-base@^7.1.2: + version "7.1.3" + resolved "https://registry.npmmirror.com/agent-base/-/agent-base-7.1.3.tgz#29435eb821bc4194633a5b89e5bc4703bafc25a1" + integrity sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw== + +agentkeepalive@^4.2.1: + version "4.6.0" + resolved "https://registry.npmmirror.com/agentkeepalive/-/agentkeepalive-4.6.0.tgz#35f73e94b3f40bf65f105219c623ad19c136ea6a" + integrity sha512-kja8j7PjmncONqaTsB8fQ+wE2mSU2DJ9D4XKoJ5PFWIdRMa6SLSN1ff4mOr4jCbfRSsxR4keIiySJU0N9T5hIQ== + dependencies: + humanize-ms "^1.2.1" + asynckit@^0.4.0: version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + resolved "https://registry.npmmirror.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== -axios@^1.8.4: - version "1.8.4" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.8.4.tgz#78990bb4bc63d2cae072952d374835950a82f447" - integrity sha512-eBSYY4Y68NNlHbHBMdeDmKNtDgXWhQsJcGqzO3iLUM0GraQFSS9cVgPX5I9b3lbdFKyYoAEGAZF1DwhTaljNAw== +axios@^1.9.0: + version "1.9.0" + resolved "https://registry.npmmirror.com/axios/-/axios-1.9.0.tgz#25534e3b72b54540077d33046f77e3b8d7081901" + integrity sha512-re4CqKTJaURpzbLHtIi6XpDv20/CnpXOtjRY5/CU32L8gU8ek9UIivcfvSWvmKEngmVbrUtPpdDwWDWL7DNHvg== dependencies: follow-redirects "^1.15.6" form-data "^4.0.0" proxy-from-env "^1.1.0" +base64-js@^1.3.0: + version "1.5.1" + resolved "https://registry.npmmirror.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== + +bignumber.js@^9.0.0: + version "9.3.0" + resolved "https://registry.npmmirror.com/bignumber.js/-/bignumber.js-9.3.0.tgz#bdba7e2a4c1a2eba08290e8dcad4f36393c92acd" + integrity sha512-EM7aMFTXbptt/wZdMlBv2t8IViwQL+h6SLHosp8Yf0dqJMTnY6iL32opnAB6kAdL0SZPuvcAzFr31o0c/R3/RA== + bottom-tip@^0.1.5: version "0.1.5" - resolved "https://registry.yarnpkg.com/bottom-tip/-/bottom-tip-0.1.5.tgz#ca81e738fba6ae956a5b4c55a78a127820c9b99e" + resolved "https://registry.npmmirror.com/bottom-tip/-/bottom-tip-0.1.5.tgz#ca81e738fba6ae956a5b4c55a78a127820c9b99e" integrity sha512-53RCkWg6hY8M7Y9lPgU2f2bAEejQh0H6SCL9B8ufFdYAOAH/cUEwxSsBIH0AcPbOcNaSgdEJr9OhdnTUENe5bA== dependencies: nanoid "^4.0.1" @@ -285,12 +341,17 @@ bottom-tip@^0.1.5: browser-split@0.0.1: version "0.0.1" - resolved "https://registry.yarnpkg.com/browser-split/-/browser-split-0.0.1.tgz#7b097574f8e3ead606fb4664e64adfdda2981a93" + resolved "https://registry.npmmirror.com/browser-split/-/browser-split-0.0.1.tgz#7b097574f8e3ead606fb4664e64adfdda2981a93" integrity sha512-JhvgRb2ihQhsljNda3BI8/UcRHVzrVwo3Q+P8vDtSiyobXuFpuZ9mq+MbRGMnC22CjW3RrfXdg6j6ITX8M+7Ow== +buffer-equal-constant-time@1.0.1: + version "1.0.1" + resolved "https://registry.npmmirror.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" + integrity sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA== + call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6" + resolved "https://registry.npmmirror.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6" integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== dependencies: es-errors "^1.3.0" @@ -298,48 +359,62 @@ call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: camelize@^1.0.0: version "1.0.1" - resolved "https://registry.yarnpkg.com/camelize/-/camelize-1.0.1.tgz#89b7e16884056331a35d6b5ad064332c91daa6c3" + resolved "https://registry.npmmirror.com/camelize/-/camelize-1.0.1.tgz#89b7e16884056331a35d6b5ad064332c91daa6c3" integrity sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ== cirru-color@^0.2.4: version "0.2.4" - resolved "https://registry.yarnpkg.com/cirru-color/-/cirru-color-0.2.4.tgz#19c5cb33cbf45d5bcccf8ecf1e45ef5673962a7a" + resolved "https://registry.npmmirror.com/cirru-color/-/cirru-color-0.2.4.tgz#19c5cb33cbf45d5bcccf8ecf1e45ef5673962a7a" integrity sha512-2ruNYgSyzrXirizCk2r9LNeu9+BXxEHNQVS1/RE2P7b1xoMjfYRiOpRaX2ecyCu4oF4HJGwYWi8vamiXI8ADEQ== combined-stream@^1.0.8: version "1.0.8" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + resolved "https://registry.npmmirror.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== dependencies: delayed-stream "~1.0.0" copy-text-to-clipboard@^3.2.0: version "3.2.0" - resolved "https://registry.yarnpkg.com/copy-text-to-clipboard/-/copy-text-to-clipboard-3.2.0.tgz#0202b2d9bdae30a49a53f898626dcc3b49ad960b" + resolved "https://registry.npmmirror.com/copy-text-to-clipboard/-/copy-text-to-clipboard-3.2.0.tgz#0202b2d9bdae30a49a53f898626dcc3b49ad960b" integrity sha512-RnJFp1XR/LOBDckxTib5Qjr/PMfkatD0MUCQgdpqS8MdKiNUzBjAQBEN6oUy+jW7LI93BBG3DtMB2KOOKpGs2Q== +debug@4: + version "4.4.0" + resolved "https://registry.npmmirror.com/debug/-/debug-4.4.0.tgz#2b3f2aea2ffeb776477460267377dc8710faba8a" + integrity sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA== + dependencies: + ms "^2.1.3" + delayed-stream@~1.0.0: version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + resolved "https://registry.npmmirror.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== dom-walk@^0.1.0: version "0.1.2" - resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.2.tgz#0c548bef048f4d1f2a97249002236060daa3fd84" + resolved "https://registry.npmmirror.com/dom-walk/-/dom-walk-0.1.2.tgz#0c548bef048f4d1f2a97249002236060daa3fd84" integrity sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w== dunder-proto@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a" + resolved "https://registry.npmmirror.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a" integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A== dependencies: call-bind-apply-helpers "^1.0.1" es-errors "^1.3.0" gopd "^1.2.0" +ecdsa-sig-formatter@1.0.11, ecdsa-sig-formatter@^1.0.11: + version "1.0.11" + resolved "https://registry.npmmirror.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz#ae0f0fa2d85045ef14a817daa3ce9acd0489e5bf" + integrity sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ== + dependencies: + safe-buffer "^5.0.1" + error@^4.3.0: version "4.4.0" - resolved "https://registry.yarnpkg.com/error/-/error-4.4.0.tgz#bf69ff251fb4a279c19adccdaa6b61e90d9bf12a" + resolved "https://registry.npmmirror.com/error/-/error-4.4.0.tgz#bf69ff251fb4a279c19adccdaa6b61e90d9bf12a" integrity sha512-SNDKualLUtT4StGFP7xNfuFybL2f6iJujFtrWuvJqGbVQGaN+adE23veqzPz1hjUjTunLi2EnJ+0SJxtbJreKw== dependencies: camelize "^1.0.0" @@ -348,24 +423,24 @@ error@^4.3.0: es-define-property@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" + resolved "https://registry.npmmirror.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa" integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== es-errors@^1.3.0: version "1.3.0" - resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" + resolved "https://registry.npmmirror.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== es-object-atoms@^1.0.0, es-object-atoms@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1" + resolved "https://registry.npmmirror.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1" integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA== dependencies: es-errors "^1.3.0" es-set-tostringtag@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz#f31dbbe0c183b00a6d26eb6325c810c0fd18bd4d" + resolved "https://registry.npmmirror.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz#f31dbbe0c183b00a6d26eb6325c810c0fd18bd4d" integrity sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA== dependencies: es-errors "^1.3.0" @@ -374,51 +449,71 @@ es-set-tostringtag@^2.1.0: hasown "^2.0.2" esbuild@^0.25.0: - version "0.25.2" - resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.25.2.tgz#55a1d9ebcb3aa2f95e8bba9e900c1a5061bc168b" - integrity sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ== + version "0.25.3" + resolved "https://registry.npmmirror.com/esbuild/-/esbuild-0.25.3.tgz#371f7cb41283e5b2191a96047a7a89562965a285" + integrity sha512-qKA6Pvai73+M2FtftpNKRxJ78GIjmFXFxd/1DVBqGo/qNhLSfv+G12n9pNoWdytJC8U00TrViOwpjT0zgqQS8Q== optionalDependencies: - "@esbuild/aix-ppc64" "0.25.2" - "@esbuild/android-arm" "0.25.2" - "@esbuild/android-arm64" "0.25.2" - "@esbuild/android-x64" "0.25.2" - "@esbuild/darwin-arm64" "0.25.2" - "@esbuild/darwin-x64" "0.25.2" - "@esbuild/freebsd-arm64" "0.25.2" - "@esbuild/freebsd-x64" "0.25.2" - "@esbuild/linux-arm" "0.25.2" - "@esbuild/linux-arm64" "0.25.2" - "@esbuild/linux-ia32" "0.25.2" - "@esbuild/linux-loong64" "0.25.2" - "@esbuild/linux-mips64el" "0.25.2" - "@esbuild/linux-ppc64" "0.25.2" - "@esbuild/linux-riscv64" "0.25.2" - "@esbuild/linux-s390x" "0.25.2" - "@esbuild/linux-x64" "0.25.2" - "@esbuild/netbsd-arm64" "0.25.2" - "@esbuild/netbsd-x64" "0.25.2" - "@esbuild/openbsd-arm64" "0.25.2" - "@esbuild/openbsd-x64" "0.25.2" - "@esbuild/sunos-x64" "0.25.2" - "@esbuild/win32-arm64" "0.25.2" - "@esbuild/win32-ia32" "0.25.2" - "@esbuild/win32-x64" "0.25.2" + "@esbuild/aix-ppc64" "0.25.3" + "@esbuild/android-arm" "0.25.3" + "@esbuild/android-arm64" "0.25.3" + "@esbuild/android-x64" "0.25.3" + "@esbuild/darwin-arm64" "0.25.3" + "@esbuild/darwin-x64" "0.25.3" + "@esbuild/freebsd-arm64" "0.25.3" + "@esbuild/freebsd-x64" "0.25.3" + "@esbuild/linux-arm" "0.25.3" + "@esbuild/linux-arm64" "0.25.3" + "@esbuild/linux-ia32" "0.25.3" + "@esbuild/linux-loong64" "0.25.3" + "@esbuild/linux-mips64el" "0.25.3" + "@esbuild/linux-ppc64" "0.25.3" + "@esbuild/linux-riscv64" "0.25.3" + "@esbuild/linux-s390x" "0.25.3" + "@esbuild/linux-x64" "0.25.3" + "@esbuild/netbsd-arm64" "0.25.3" + "@esbuild/netbsd-x64" "0.25.3" + "@esbuild/openbsd-arm64" "0.25.3" + "@esbuild/openbsd-x64" "0.25.3" + "@esbuild/sunos-x64" "0.25.3" + "@esbuild/win32-arm64" "0.25.3" + "@esbuild/win32-ia32" "0.25.3" + "@esbuild/win32-x64" "0.25.3" ev-store@^7.0.0: version "7.0.0" - resolved "https://registry.yarnpkg.com/ev-store/-/ev-store-7.0.0.tgz#1ab0c7f82136505dd74b31d17701cb2be6d26558" + resolved "https://registry.npmmirror.com/ev-store/-/ev-store-7.0.0.tgz#1ab0c7f82136505dd74b31d17701cb2be6d26558" integrity sha512-otazchNRnGzp2YarBJ+GXKVGvhxVATB1zmaStxJBYet0Dyq7A9VhH8IUEB/gRcL6Ch52lfpgPTRJ2m49epyMsQ== dependencies: individual "^3.0.0" +event-target-shim@^5.0.0: + version "5.0.1" + resolved "https://registry.npmmirror.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" + integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== + +extend@^3.0.2: + version "3.0.2" + resolved "https://registry.npmmirror.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== + +fdir@^6.4.4: + version "6.4.4" + resolved "https://registry.npmmirror.com/fdir/-/fdir-6.4.4.tgz#1cfcf86f875a883e19a8fab53622cfe992e8d2f9" + integrity sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg== + follow-redirects@^1.15.6: version "1.15.9" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.9.tgz#a604fa10e443bf98ca94228d9eebcc2e8a2c8ee1" + resolved "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.9.tgz#a604fa10e443bf98ca94228d9eebcc2e8a2c8ee1" integrity sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ== +form-data-encoder@1.7.2: + version "1.7.2" + resolved "https://registry.npmmirror.com/form-data-encoder/-/form-data-encoder-1.7.2.tgz#1f1ae3dccf58ed4690b86d87e4f57c654fbab040" + integrity sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A== + form-data@^4.0.0: version "4.0.2" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.2.tgz#35cabbdd30c3ce73deb2c42d3c8d3ed9ca51794c" + resolved "https://registry.npmmirror.com/form-data/-/form-data-4.0.2.tgz#35cabbdd30c3ce73deb2c42d3c8d3ed9ca51794c" integrity sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w== dependencies: asynckit "^0.4.0" @@ -426,19 +521,47 @@ form-data@^4.0.0: es-set-tostringtag "^2.1.0" mime-types "^2.1.12" +formdata-node@^4.3.2: + version "4.4.1" + resolved "https://registry.npmmirror.com/formdata-node/-/formdata-node-4.4.1.tgz#23f6a5cb9cb55315912cbec4ff7b0f59bbd191e2" + integrity sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ== + dependencies: + node-domexception "1.0.0" + web-streams-polyfill "4.0.0-beta.3" + fsevents@~2.3.2, fsevents@~2.3.3: version "2.3.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + resolved "https://registry.npmmirror.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== function-bind@^1.1.2: version "1.1.2" - resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + resolved "https://registry.npmmirror.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== +gaxios@^6.0.0, gaxios@^6.1.1: + version "6.7.1" + resolved "https://registry.npmmirror.com/gaxios/-/gaxios-6.7.1.tgz#ebd9f7093ede3ba502685e73390248bb5b7f71fb" + integrity sha512-LDODD4TMYx7XXdpwxAVRAIAuB0bzv0s+ywFonY46k126qzQHT9ygyoa9tncmOiQmmDrik65UYsEkv3lbfqQ3yQ== + dependencies: + extend "^3.0.2" + https-proxy-agent "^7.0.1" + is-stream "^2.0.0" + node-fetch "^2.6.9" + uuid "^9.0.1" + +gcp-metadata@^6.1.0: + version "6.1.1" + resolved "https://registry.npmmirror.com/gcp-metadata/-/gcp-metadata-6.1.1.tgz#f65aa69f546bc56e116061d137d3f5f90bdec494" + integrity sha512-a4tiq7E0/5fTjxPAaH4jpjkSv/uCaU2p5KC6HVGrvl0cDjA8iBZv4vv1gyzlmK0ZUKqwpOyQMKzZQe3lTit77A== + dependencies: + gaxios "^6.1.1" + google-logging-utils "^0.0.2" + json-bigint "^1.0.0" + get-intrinsic@^1.2.6: version "1.3.0" - resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" + resolved "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01" integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== dependencies: call-bind-apply-helpers "^1.0.2" @@ -454,7 +577,7 @@ get-intrinsic@^1.2.6: get-proto@^1.0.1: version "1.0.1" - resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1" + resolved "https://registry.npmmirror.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1" integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g== dependencies: dunder-proto "^1.0.1" @@ -462,93 +585,197 @@ get-proto@^1.0.1: global@^4.3.0: version "4.4.0" - resolved "https://registry.yarnpkg.com/global/-/global-4.4.0.tgz#3e7b105179006a323ed71aafca3e9c57a5cc6406" + resolved "https://registry.npmmirror.com/global/-/global-4.4.0.tgz#3e7b105179006a323ed71aafca3e9c57a5cc6406" integrity sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w== dependencies: min-document "^2.19.0" process "^0.11.10" +google-auth-library@^9.14.2: + version "9.15.1" + resolved "https://registry.npmmirror.com/google-auth-library/-/google-auth-library-9.15.1.tgz#0c5d84ed1890b2375f1cd74f03ac7b806b392928" + integrity sha512-Jb6Z0+nvECVz+2lzSMt9u98UsoakXxA2HGHMCxh+so3n90XgYWkq5dur19JAJV7ONiJY22yBTyJB1TSkvPq9Ng== + dependencies: + base64-js "^1.3.0" + ecdsa-sig-formatter "^1.0.11" + gaxios "^6.1.1" + gcp-metadata "^6.1.0" + gtoken "^7.0.0" + jws "^4.0.0" + +google-logging-utils@^0.0.2: + version "0.0.2" + resolved "https://registry.npmmirror.com/google-logging-utils/-/google-logging-utils-0.0.2.tgz#5fd837e06fa334da450433b9e3e1870c1594466a" + integrity sha512-NEgUnEcBiP5HrPzufUkBzJOD/Sxsco3rLNo1F1TNf7ieU8ryUzBhqba8r756CjLX7rn3fHl6iLEwPYuqpoKgQQ== + gopd@^1.2.0: version "1.2.0" - resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" + resolved "https://registry.npmmirror.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1" integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== +gtoken@^7.0.0: + version "7.1.0" + resolved "https://registry.npmmirror.com/gtoken/-/gtoken-7.1.0.tgz#d61b4ebd10132222817f7222b1e6064bd463fc26" + integrity sha512-pCcEwRi+TKpMlxAQObHDQ56KawURgyAf6jtIY046fJ5tIv3zDe/LEIubckAO8fj6JnAxLdmWkUfNyulQ2iKdEw== + dependencies: + gaxios "^6.0.0" + jws "^4.0.0" + has-symbols@^1.0.3, has-symbols@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338" + resolved "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338" integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== has-tostringtag@^1.0.2: version "1.0.2" - resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" + resolved "https://registry.npmmirror.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== dependencies: has-symbols "^1.0.3" hasown@^2.0.2: version "2.0.2" - resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + resolved "https://registry.npmmirror.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== dependencies: function-bind "^1.1.2" +https-proxy-agent@^7.0.1: + version "7.0.6" + resolved "https://registry.npmmirror.com/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz#da8dfeac7da130b05c2ba4b59c9b6cd66611a6b9" + integrity sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw== + dependencies: + agent-base "^7.1.2" + debug "4" + +humanize-ms@^1.2.1: + version "1.2.1" + resolved "https://registry.npmmirror.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" + integrity sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ== + dependencies: + ms "^2.0.0" + individual@^3.0.0: version "3.0.0" - resolved "https://registry.yarnpkg.com/individual/-/individual-3.0.0.tgz#e7ca4f85f8957b018734f285750dc22ec2f9862d" + resolved "https://registry.npmmirror.com/individual/-/individual-3.0.0.tgz#e7ca4f85f8957b018734f285750dc22ec2f9862d" integrity sha512-rUY5vtT748NMRbEMrTNiFfy29BgGZwGXUi2NFUVMWQrogSLzlJvQV9eeMWi+g1aVaQ53tpyLAQtd5x/JH0Nh1g== is-object@^1.0.1: version "1.0.2" - resolved "https://registry.yarnpkg.com/is-object/-/is-object-1.0.2.tgz#a56552e1c665c9e950b4a025461da87e72f86fcf" + resolved "https://registry.npmmirror.com/is-object/-/is-object-1.0.2.tgz#a56552e1c665c9e950b4a025461da87e72f86fcf" integrity sha512-2rRIahhZr2UWb45fIOuvZGpFtz0TyOZLf32KxBbSoUCeZR495zCKlWUKKUByk3geS2eAs7ZAABt0Y/Rx0GiQGA== +is-stream@^2.0.0: + version "2.0.1" + resolved "https://registry.npmmirror.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== + +json-bigint@^1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/json-bigint/-/json-bigint-1.0.0.tgz#ae547823ac0cad8398667f8cd9ef4730f5b01ff1" + integrity sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ== + dependencies: + bignumber.js "^9.0.0" + +jwa@^2.0.0: + version "2.0.0" + resolved "https://registry.npmmirror.com/jwa/-/jwa-2.0.0.tgz#a7e9c3f29dae94027ebcaf49975c9345593410fc" + integrity sha512-jrZ2Qx916EA+fq9cEAeCROWPTfCwi1IVHqT2tapuqLEVVDKFDENFw1oL+MwrTvH6msKxsd1YTDVw6uKEcsrLEA== + dependencies: + buffer-equal-constant-time "1.0.1" + ecdsa-sig-formatter "1.0.11" + safe-buffer "^5.0.1" + +jws@^4.0.0: + version "4.0.0" + resolved "https://registry.npmmirror.com/jws/-/jws-4.0.0.tgz#2d4e8cf6a318ffaa12615e9dec7e86e6c97310f4" + integrity sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg== + dependencies: + jwa "^2.0.0" + safe-buffer "^5.0.1" + math-intrinsics@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" + resolved "https://registry.npmmirror.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== mime-db@1.52.0: version "1.52.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + resolved "https://registry.npmmirror.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== mime-types@^2.1.12: version "2.1.35" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + resolved "https://registry.npmmirror.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== dependencies: mime-db "1.52.0" min-document@^2.19.0: version "2.19.0" - resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" + resolved "https://registry.npmmirror.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" integrity sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ== dependencies: dom-walk "^0.1.0" +ms@^2.0.0, ms@^2.1.3: + version "2.1.3" + resolved "https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + nanoid@^3.3.8: version "3.3.11" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.11.tgz#4f4f112cefbe303202f2199838128936266d185b" + resolved "https://registry.npmmirror.com/nanoid/-/nanoid-3.3.11.tgz#4f4f112cefbe303202f2199838128936266d185b" integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w== nanoid@^4.0.1: version "4.0.2" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-4.0.2.tgz#140b3c5003959adbebf521c170f282c5e7f9fb9e" + resolved "https://registry.npmmirror.com/nanoid/-/nanoid-4.0.2.tgz#140b3c5003959adbebf521c170f282c5e7f9fb9e" integrity sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw== next-tick@^0.2.2: version "0.2.2" - resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-0.2.2.tgz#75da4a927ee5887e39065880065b7336413b310d" + resolved "https://registry.npmmirror.com/next-tick/-/next-tick-0.2.2.tgz#75da4a927ee5887e39065880065b7336413b310d" integrity sha512-f7h4svPtl+QidoBv4taKXUjJ70G2asaZ8G28nS0OkqaalX8dwwrtWtyxEDPK62AC00ur/+/E0pUwBwY5EPn15Q== +node-domexception@1.0.0: + version "1.0.0" + resolved "https://registry.npmmirror.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5" + integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ== + +node-fetch@^2.6.7, node-fetch@^2.6.9: + version "2.7.0" + resolved "https://registry.npmmirror.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" + integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== + dependencies: + whatwg-url "^5.0.0" + +openai@^4.96.2: + version "4.96.2" + resolved "https://registry.npmmirror.com/openai/-/openai-4.96.2.tgz#a7d360597f273a5f6ed8dd22914e598013022fa4" + integrity sha512-R2XnxvMsizkROr7BV3uNp1q/3skwPZ7fmPjO1bXLnfB4Tu5xKxrT1EVwzjhxn0MZKBKAvOaGWS63jTMN6KrIXA== + dependencies: + "@types/node" "^18.11.18" + "@types/node-fetch" "^2.6.4" + abort-controller "^3.0.0" + agentkeepalive "^4.2.1" + form-data-encoder "1.7.2" + formdata-node "^4.3.2" + node-fetch "^2.6.7" + picocolors@^1.1.1: version "1.1.1" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" + resolved "https://registry.npmmirror.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== +picomatch@^4.0.2: + version "4.0.2" + resolved "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.2.tgz#77c742931e8f3b8820946c76cd0c1f13730d1dab" + integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg== + postcss@^8.5.3: version "8.5.3" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.5.3.tgz#1463b6f1c7fb16fe258736cba29a2de35237eafb" + resolved "https://registry.npmmirror.com/postcss/-/postcss-8.5.3.tgz#1463b6f1c7fb16fe258736cba29a2de35237eafb" integrity sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A== dependencies: nanoid "^3.3.8" @@ -557,56 +784,89 @@ postcss@^8.5.3: process@^0.11.10: version "0.11.10" - resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + resolved "https://registry.npmmirror.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== proxy-from-env@^1.1.0: version "1.1.0" - resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + resolved "https://registry.npmmirror.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== -rollup@^4.30.1: - version "4.40.0" - resolved "https://registry.yarnpkg.com/rollup/-/rollup-4.40.0.tgz#13742a615f423ccba457554f006873d5a4de1920" - integrity sha512-Noe455xmA96nnqH5piFtLobsGbCij7Tu+tb3c1vYjNbTkfzGqXqQXG3wJaYXkRZuQ0vEYN4bhwg7QnIrqB5B+w== +rollup@^4.34.9: + version "4.40.1" + resolved "https://registry.npmmirror.com/rollup/-/rollup-4.40.1.tgz#03d6c53ebb6a9c2c060ae686a61e72a2472b366f" + integrity sha512-C5VvvgCCyfyotVITIAv+4efVytl5F7wt+/I2i9q9GZcEXW9BP52YYOXC58igUi+LFZVHukErIIqQSWwv/M3WRw== dependencies: "@types/estree" "1.0.7" optionalDependencies: - "@rollup/rollup-android-arm-eabi" "4.40.0" - "@rollup/rollup-android-arm64" "4.40.0" - "@rollup/rollup-darwin-arm64" "4.40.0" - "@rollup/rollup-darwin-x64" "4.40.0" - "@rollup/rollup-freebsd-arm64" "4.40.0" - "@rollup/rollup-freebsd-x64" "4.40.0" - "@rollup/rollup-linux-arm-gnueabihf" "4.40.0" - "@rollup/rollup-linux-arm-musleabihf" "4.40.0" - "@rollup/rollup-linux-arm64-gnu" "4.40.0" - "@rollup/rollup-linux-arm64-musl" "4.40.0" - "@rollup/rollup-linux-loongarch64-gnu" "4.40.0" - "@rollup/rollup-linux-powerpc64le-gnu" "4.40.0" - "@rollup/rollup-linux-riscv64-gnu" "4.40.0" - "@rollup/rollup-linux-riscv64-musl" "4.40.0" - "@rollup/rollup-linux-s390x-gnu" "4.40.0" - "@rollup/rollup-linux-x64-gnu" "4.40.0" - "@rollup/rollup-linux-x64-musl" "4.40.0" - "@rollup/rollup-win32-arm64-msvc" "4.40.0" - "@rollup/rollup-win32-ia32-msvc" "4.40.0" - "@rollup/rollup-win32-x64-msvc" "4.40.0" + "@rollup/rollup-android-arm-eabi" "4.40.1" + "@rollup/rollup-android-arm64" "4.40.1" + "@rollup/rollup-darwin-arm64" "4.40.1" + "@rollup/rollup-darwin-x64" "4.40.1" + "@rollup/rollup-freebsd-arm64" "4.40.1" + "@rollup/rollup-freebsd-x64" "4.40.1" + "@rollup/rollup-linux-arm-gnueabihf" "4.40.1" + "@rollup/rollup-linux-arm-musleabihf" "4.40.1" + "@rollup/rollup-linux-arm64-gnu" "4.40.1" + "@rollup/rollup-linux-arm64-musl" "4.40.1" + "@rollup/rollup-linux-loongarch64-gnu" "4.40.1" + "@rollup/rollup-linux-powerpc64le-gnu" "4.40.1" + "@rollup/rollup-linux-riscv64-gnu" "4.40.1" + "@rollup/rollup-linux-riscv64-musl" "4.40.1" + "@rollup/rollup-linux-s390x-gnu" "4.40.1" + "@rollup/rollup-linux-x64-gnu" "4.40.1" + "@rollup/rollup-linux-x64-musl" "4.40.1" + "@rollup/rollup-win32-arm64-msvc" "4.40.1" + "@rollup/rollup-win32-ia32-msvc" "4.40.1" + "@rollup/rollup-win32-x64-msvc" "4.40.1" fsevents "~2.3.2" +safe-buffer@^5.0.1: + version "5.2.1" + resolved "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + source-map-js@^1.2.1: version "1.2.1" - resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" + resolved "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== string-template@~0.2.0: version "0.2.1" - resolved "https://registry.yarnpkg.com/string-template/-/string-template-0.2.1.tgz#42932e598a352d01fc22ec3367d9d84eec6c9add" + resolved "https://registry.npmmirror.com/string-template/-/string-template-0.2.1.tgz#42932e598a352d01fc22ec3367d9d84eec6c9add" integrity sha512-Yptehjogou2xm4UJbxJ4CxgZx12HBfeystp0y3x7s4Dj32ltVVG1Gg8YhKjHZkHicuKpZX/ffilA8505VbUbpw== +tinyglobby@^0.2.13: + version "0.2.13" + resolved "https://registry.npmmirror.com/tinyglobby/-/tinyglobby-0.2.13.tgz#a0e46515ce6cbcd65331537e57484af5a7b2ff7e" + integrity sha512-mEwzpUgrLySlveBwEVDMKk5B57bhLPYovRfPAXD5gA/98Opn0rCDj3GtLwFvCvH5RK9uPCExUROW5NjDwvqkxw== + dependencies: + fdir "^6.4.4" + picomatch "^4.0.2" + +tr46@~0.0.3: + version "0.0.3" + resolved "https://registry.npmmirror.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== + +undici-types@~5.26.4: + version "5.26.5" + resolved "https://registry.npmmirror.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" + integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== + +undici-types@~6.21.0: + version "6.21.0" + resolved "https://registry.npmmirror.com/undici-types/-/undici-types-6.21.0.tgz#691d00af3909be93a7faa13be61b3a5b50ef12cb" + integrity sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ== + +uuid@^9.0.1: + version "9.0.1" + resolved "https://registry.npmmirror.com/uuid/-/uuid-9.0.1.tgz#e188d4c8853cc722220392c424cd637f32293f30" + integrity sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA== + virtual-dom@^2.1.1: version "2.1.1" - resolved "https://registry.yarnpkg.com/virtual-dom/-/virtual-dom-2.1.1.tgz#80eda2d481b9ede0c049118cefcb4a05f21d1375" + resolved "https://registry.npmmirror.com/virtual-dom/-/virtual-dom-2.1.1.tgz#80eda2d481b9ede0c049118cefcb4a05f21d1375" integrity sha512-wb6Qc9Lbqug0kRqo/iuApfBpJJAq14Sk1faAnSmtqXiwahg7PVTvWMs9L02Z8nNIMqbwsxzBAA90bbtRLbw0zg== dependencies: browser-split "0.0.1" @@ -618,28 +878,64 @@ virtual-dom@^2.1.1: x-is-array "0.1.0" x-is-string "0.1.0" -vite@^6.2.6: - version "6.2.6" - resolved "https://registry.yarnpkg.com/vite/-/vite-6.2.6.tgz#7f0ccf2fdc0c1eda079ce258508728e2473d3f61" - integrity sha512-9xpjNl3kR4rVDZgPNdTL0/c6ao4km69a/2ihNQbcANz8RuCOK3hQBmLSJf3bRKVQjVMda+YvizNE8AwvogcPbw== +vite@^6.3.4: + version "6.3.4" + resolved "https://registry.npmmirror.com/vite/-/vite-6.3.4.tgz#d441a72c7cd9a93b719bb851250a4e6c119c9cff" + integrity sha512-BiReIiMS2fyFqbqNT/Qqt4CVITDU9M9vE+DKcVAsB+ZV0wvTKd+3hMbkpxz1b+NmEDMegpVbisKiAZOnvO92Sw== dependencies: esbuild "^0.25.0" + fdir "^6.4.4" + picomatch "^4.0.2" postcss "^8.5.3" - rollup "^4.30.1" + rollup "^4.34.9" + tinyglobby "^0.2.13" optionalDependencies: fsevents "~2.3.3" +web-streams-polyfill@4.0.0-beta.3: + version "4.0.0-beta.3" + resolved "https://registry.npmmirror.com/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz#2898486b74f5156095e473efe989dcf185047a38" + integrity sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug== + +webidl-conversions@^3.0.0: + version "3.0.1" + resolved "https://registry.npmmirror.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== + +whatwg-url@^5.0.0: + version "5.0.0" + resolved "https://registry.npmmirror.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== + dependencies: + tr46 "~0.0.3" + webidl-conversions "^3.0.0" + +ws@^8.18.0: + version "8.18.1" + resolved "https://registry.npmmirror.com/ws/-/ws-8.18.1.tgz#ea131d3784e1dfdff91adb0a4a116b127515e3cb" + integrity sha512-RKW2aJZMXeMxVpnZ6bck+RswznaxmzdULiBr6KY7XkTnW8uvt0iT9H5DkHUChXrc+uurzwa0rVI16n/Xzjdz1w== + x-is-array@0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/x-is-array/-/x-is-array-0.1.0.tgz#de520171d47b3f416f5587d629b89d26b12dc29d" + resolved "https://registry.npmmirror.com/x-is-array/-/x-is-array-0.1.0.tgz#de520171d47b3f416f5587d629b89d26b12dc29d" integrity sha512-goHPif61oNrr0jJgsXRfc8oqtYzvfiMJpTqwE7Z4y9uH+T3UozkGqQ4d2nX9mB9khvA8U2o/UbPOFjgC7hLWIA== x-is-string@0.1.0: version "0.1.0" - resolved "https://registry.yarnpkg.com/x-is-string/-/x-is-string-0.1.0.tgz#474b50865af3a49a9c4657f05acd145458f77d82" + resolved "https://registry.npmmirror.com/x-is-string/-/x-is-string-0.1.0.tgz#474b50865af3a49a9c4657f05acd145458f77d82" integrity sha512-GojqklwG8gpzOVEVki5KudKNoq7MbbjYZCbyWzEz7tyPA7eleiE0+ePwOWQQRb5fm86rD3S8Tc0tSFf3AOv50w== xtend@~4.0.0: version "4.0.2" - resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + resolved "https://registry.npmmirror.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== + +zod-to-json-schema@^3.22.4: + version "3.24.5" + resolved "https://registry.npmmirror.com/zod-to-json-schema/-/zod-to-json-schema-3.24.5.tgz#d1095440b147fb7c2093812a53c54df8d5df50a3" + integrity sha512-/AuWwMP+YqiPbsJx5D6TfgRTc4kTLjsh5SOcd4bLsfUg2RcEXrFMJl1DGgdHy2aCfsIA/cr/1JM0xcB2GZji8g== + +zod@^3.22.4: + version "3.24.3" + resolved "https://registry.npmmirror.com/zod/-/zod-3.24.3.tgz#1f40f750a05e477396da64438e0e1c0995dafd87" + integrity sha512-HhY1oqzWCQWuUqvBFnsyrtZRhyPeR7SUGv+C4+MsisMuVfSPx8HpwWqH8tRahSlt6M3PiFAcoeFhZAqIXTxoSg==