@waniwani/sdk 0.1.20-beta.2 → 0.1.20-beta.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +103 -52
- package/dist/abap-KGVIZMDC.js +3 -0
- package/dist/abap-KGVIZMDC.js.map +1 -0
- package/dist/actionscript-3-2UHK5QYP.js +3 -0
- package/dist/actionscript-3-2UHK5QYP.js.map +1 -0
- package/dist/ada-JKTWR5BV.js +3 -0
- package/dist/ada-JKTWR5BV.js.map +1 -0
- package/dist/andromeeda-HAPOYWX3.js +3 -0
- package/dist/andromeeda-HAPOYWX3.js.map +1 -0
- package/dist/angular-html-EOIKHM3D.js +3 -0
- package/dist/angular-html-EOIKHM3D.js.map +1 -0
- package/dist/angular-ts-A7ZNTSV6.js +3 -0
- package/dist/angular-ts-A7ZNTSV6.js.map +1 -0
- package/dist/apache-MPGFGQFB.js +3 -0
- package/dist/apache-MPGFGQFB.js.map +1 -0
- package/dist/apex-BOAZL66Z.js +3 -0
- package/dist/apex-BOAZL66Z.js.map +1 -0
- package/dist/apl-QBN4KIYA.js +3 -0
- package/dist/apl-QBN4KIYA.js.map +1 -0
- package/dist/applescript-C4CJ3STL.js +3 -0
- package/dist/applescript-C4CJ3STL.js.map +1 -0
- package/dist/ara-FSFFBRSD.js +3 -0
- package/dist/ara-FSFFBRSD.js.map +1 -0
- package/dist/asciidoc-QQK2LANG.js +3 -0
- package/dist/asciidoc-QQK2LANG.js.map +1 -0
- package/dist/asm-X43A2VYW.js +3 -0
- package/dist/asm-X43A2VYW.js.map +1 -0
- package/dist/astro-OQUOYMBE.js +3 -0
- package/dist/astro-OQUOYMBE.js.map +1 -0
- package/dist/aurora-x-R6WAWEBC.js +3 -0
- package/dist/aurora-x-R6WAWEBC.js.map +1 -0
- package/dist/awk-4Z3PRTF7.js +3 -0
- package/dist/awk-4Z3PRTF7.js.map +1 -0
- package/dist/ayu-dark-KMD4YO7F.js +3 -0
- package/dist/ayu-dark-KMD4YO7F.js.map +1 -0
- package/dist/ayu-light-2ATPDILG.js +3 -0
- package/dist/ayu-light-2ATPDILG.js.map +1 -0
- package/dist/ayu-mirage-LJ7PG5AM.js +3 -0
- package/dist/ayu-mirage-LJ7PG5AM.js.map +1 -0
- package/dist/ballerina-JCXSJ2QD.js +3 -0
- package/dist/ballerina-JCXSJ2QD.js.map +1 -0
- package/dist/bat-XFWR7RMZ.js +3 -0
- package/dist/bat-XFWR7RMZ.js.map +1 -0
- package/dist/beancount-7BBDB4BH.js +3 -0
- package/dist/beancount-7BBDB4BH.js.map +1 -0
- package/dist/berry-PQ2BEJIZ.js +3 -0
- package/dist/berry-PQ2BEJIZ.js.map +1 -0
- package/dist/bibtex-J2PAB23I.js +3 -0
- package/dist/bibtex-J2PAB23I.js.map +1 -0
- package/dist/bicep-TNKT6R3W.js +3 -0
- package/dist/bicep-TNKT6R3W.js.map +1 -0
- package/dist/blade-QBDEYXMB.js +3 -0
- package/dist/blade-QBDEYXMB.js.map +1 -0
- package/dist/bsl-PQW6E45S.js +3 -0
- package/dist/bsl-PQW6E45S.js.map +1 -0
- package/dist/c-PZBJFNXE.js +3 -0
- package/dist/c-PZBJFNXE.js.map +1 -0
- package/dist/c3-GP7XYHE6.js +3 -0
- package/dist/c3-GP7XYHE6.js.map +1 -0
- package/dist/cadence-NABGDHKY.js +3 -0
- package/dist/cadence-NABGDHKY.js.map +1 -0
- package/dist/cairo-WQSC2GLN.js +3 -0
- package/dist/cairo-WQSC2GLN.js.map +1 -0
- package/dist/catppuccin-frappe-Z4Y2POK6.js +3 -0
- package/dist/catppuccin-frappe-Z4Y2POK6.js.map +1 -0
- package/dist/catppuccin-latte-4TQUIKX4.js +3 -0
- package/dist/catppuccin-latte-4TQUIKX4.js.map +1 -0
- package/dist/catppuccin-macchiato-B7YYPERT.js +3 -0
- package/dist/catppuccin-macchiato-B7YYPERT.js.map +1 -0
- package/dist/catppuccin-mocha-KX33VXKA.js +3 -0
- package/dist/catppuccin-mocha-KX33VXKA.js.map +1 -0
- package/dist/chat/index.d.ts +15 -5
- package/dist/chat/index.js +49 -1
- package/dist/chat/index.js.map +1 -1
- package/dist/chat/next-js/index.d.ts +95 -40
- package/dist/chat/next-js/index.js +1 -1
- package/dist/chat/next-js/index.js.map +1 -1
- package/dist/chat/server/index.d.ts +5 -0
- package/dist/chat/styles.css +1 -1
- package/dist/chunk-2RR26LLP.js +3 -0
- package/dist/chunk-2RR26LLP.js.map +1 -0
- package/dist/chunk-3MXGGSWX.js +3 -0
- package/dist/chunk-3MXGGSWX.js.map +1 -0
- package/dist/chunk-4LBJUPWV.js +3 -0
- package/dist/chunk-4LBJUPWV.js.map +1 -0
- package/dist/chunk-4VTSQZWF.js +3 -0
- package/dist/chunk-4VTSQZWF.js.map +1 -0
- package/dist/chunk-7JLJRE2N.js +3 -0
- package/dist/chunk-7JLJRE2N.js.map +1 -0
- package/dist/chunk-7PHUBJVC.js +3 -0
- package/dist/chunk-7PHUBJVC.js.map +1 -0
- package/dist/chunk-AGWJ4LUC.js +3 -0
- package/dist/chunk-AGWJ4LUC.js.map +1 -0
- package/dist/chunk-ASVQBXNX.js +3 -0
- package/dist/chunk-ASVQBXNX.js.map +1 -0
- package/dist/chunk-ATLIFHJQ.js +3 -0
- package/dist/chunk-ATLIFHJQ.js.map +1 -0
- package/dist/chunk-BWAU264B.js +3 -0
- package/dist/chunk-BWAU264B.js.map +1 -0
- package/dist/chunk-C2XW4T23.js +3 -0
- package/dist/chunk-C2XW4T23.js.map +1 -0
- package/dist/chunk-C3DWQQH3.js +3 -0
- package/dist/chunk-C3DWQQH3.js.map +1 -0
- package/dist/chunk-CIEDXAJY.js +3 -0
- package/dist/chunk-CIEDXAJY.js.map +1 -0
- package/dist/chunk-CNY3RWNZ.js +3 -0
- package/dist/chunk-CNY3RWNZ.js.map +1 -0
- package/dist/chunk-ED2SBPIQ.js +3 -0
- package/dist/chunk-ED2SBPIQ.js.map +1 -0
- package/dist/chunk-F3QSOBPN.js +3 -0
- package/dist/chunk-F3QSOBPN.js.map +1 -0
- package/dist/chunk-FHRHXPXN.js +3 -0
- package/dist/chunk-FHRHXPXN.js.map +1 -0
- package/dist/chunk-FWHINPYE.js +3 -0
- package/dist/chunk-FWHINPYE.js.map +1 -0
- package/dist/chunk-HMEGK7JX.js +3 -0
- package/dist/chunk-HMEGK7JX.js.map +1 -0
- package/dist/chunk-HU77EH3T.js +3 -0
- package/dist/chunk-HU77EH3T.js.map +1 -0
- package/dist/chunk-HVAT4SNH.js +116 -0
- package/dist/chunk-HVAT4SNH.js.map +1 -0
- package/dist/chunk-IXROC4D6.js +3 -0
- package/dist/chunk-IXROC4D6.js.map +1 -0
- package/dist/chunk-JVRIR5KA.js +3 -0
- package/dist/chunk-JVRIR5KA.js.map +1 -0
- package/dist/chunk-JXSURY23.js +3 -0
- package/dist/chunk-JXSURY23.js.map +1 -0
- package/dist/chunk-JZBW5KEX.js +3 -0
- package/dist/chunk-JZBW5KEX.js.map +1 -0
- package/dist/chunk-M4CKEROZ.js +3 -0
- package/dist/chunk-M4CKEROZ.js.map +1 -0
- package/dist/chunk-NWMKWKIF.js +3 -0
- package/dist/chunk-NWMKWKIF.js.map +1 -0
- package/dist/chunk-OZU5OBWU.js +3 -0
- package/dist/chunk-OZU5OBWU.js.map +1 -0
- package/dist/chunk-Q7Y54EZU.js +3 -0
- package/dist/chunk-Q7Y54EZU.js.map +1 -0
- package/dist/chunk-QLNWMFSL.js +3 -0
- package/dist/chunk-QLNWMFSL.js.map +1 -0
- package/dist/chunk-R5U25TSM.js +3 -0
- package/dist/chunk-R5U25TSM.js.map +1 -0
- package/dist/chunk-RH56J7QY.js +3 -0
- package/dist/chunk-RH56J7QY.js.map +1 -0
- package/dist/chunk-RLHBVYHM.js +3 -0
- package/dist/chunk-RLHBVYHM.js.map +1 -0
- package/dist/chunk-RYVXTIMY.js +3 -0
- package/dist/chunk-RYVXTIMY.js.map +1 -0
- package/dist/chunk-U4R5XKLD.js +3 -0
- package/dist/chunk-U4R5XKLD.js.map +1 -0
- package/dist/chunk-V3ZDECK5.js +3 -0
- package/dist/chunk-V3ZDECK5.js.map +1 -0
- package/dist/chunk-VBWVDIIW.js +3 -0
- package/dist/chunk-VBWVDIIW.js.map +1 -0
- package/dist/chunk-VME4UB43.js +3 -0
- package/dist/chunk-VME4UB43.js.map +1 -0
- package/dist/chunk-VNX5AK2O.js +3 -0
- package/dist/chunk-VNX5AK2O.js.map +1 -0
- package/dist/chunk-WKR2RWJ6.js +3 -0
- package/dist/chunk-WKR2RWJ6.js.map +1 -0
- package/dist/chunk-XD5VGPVP.js +3 -0
- package/dist/chunk-XD5VGPVP.js.map +1 -0
- package/dist/chunk-Z3IKGRKN.js +3 -0
- package/dist/chunk-Z3IKGRKN.js.map +1 -0
- package/dist/chunk-Z7QCZ4DQ.js +3 -0
- package/dist/chunk-Z7QCZ4DQ.js.map +1 -0
- package/dist/chunk-ZHMHS6LG.js +3 -0
- package/dist/chunk-ZHMHS6LG.js.map +1 -0
- package/dist/chunk-ZU32Z5HV.js +3 -0
- package/dist/chunk-ZU32Z5HV.js.map +1 -0
- package/dist/clarity-NXNSINKX.js +3 -0
- package/dist/clarity-NXNSINKX.js.map +1 -0
- package/dist/clojure-Y57BKRMA.js +3 -0
- package/dist/clojure-Y57BKRMA.js.map +1 -0
- package/dist/cmake-LVMEA3JZ.js +3 -0
- package/dist/cmake-LVMEA3JZ.js.map +1 -0
- package/dist/cobol-6DNJTKH3.js +3 -0
- package/dist/cobol-6DNJTKH3.js.map +1 -0
- package/dist/code-block-37QAKDTI-M2QCKVTI.js +4 -0
- package/dist/code-block-37QAKDTI-M2QCKVTI.js.map +1 -0
- package/dist/codeowners-JYHOTXQS.js +3 -0
- package/dist/codeowners-JYHOTXQS.js.map +1 -0
- package/dist/codeql-IWWSYR3L.js +3 -0
- package/dist/codeql-IWWSYR3L.js.map +1 -0
- package/dist/coffee-NNDQ5QXC.js +3 -0
- package/dist/coffee-NNDQ5QXC.js.map +1 -0
- package/dist/common-lisp-JKXCDYH3.js +3 -0
- package/dist/common-lisp-JKXCDYH3.js.map +1 -0
- package/dist/coq-BEHPNP64.js +3 -0
- package/dist/coq-BEHPNP64.js.map +1 -0
- package/dist/cpp-IALOHSZA.js +3 -0
- package/dist/cpp-IALOHSZA.js.map +1 -0
- package/dist/crystal-ZDP3FIUI.js +3 -0
- package/dist/crystal-ZDP3FIUI.js.map +1 -0
- package/dist/csharp-ODFBXRGA.js +3 -0
- package/dist/csharp-ODFBXRGA.js.map +1 -0
- package/dist/css-CJGL5AVH.js +3 -0
- package/dist/css-CJGL5AVH.js.map +1 -0
- package/dist/csv-LIK4TU3Z.js +3 -0
- package/dist/csv-LIK4TU3Z.js.map +1 -0
- package/dist/cue-UAAEAKHI.js +3 -0
- package/dist/cue-UAAEAKHI.js.map +1 -0
- package/dist/cypher-SZPVUQZJ.js +3 -0
- package/dist/cypher-SZPVUQZJ.js.map +1 -0
- package/dist/d-VSCA3XHG.js +3 -0
- package/dist/d-VSCA3XHG.js.map +1 -0
- package/dist/dark-plus-LNHXUR7U.js +3 -0
- package/dist/dark-plus-LNHXUR7U.js.map +1 -0
- package/dist/dart-A4PE6FIS.js +3 -0
- package/dist/dart-A4PE6FIS.js.map +1 -0
- package/dist/dax-TILIKSFB.js +3 -0
- package/dist/dax-TILIKSFB.js.map +1 -0
- package/dist/desktop-75KK3D55.js +3 -0
- package/dist/desktop-75KK3D55.js.map +1 -0
- package/dist/diff-HOT6P45M.js +3 -0
- package/dist/diff-HOT6P45M.js.map +1 -0
- package/dist/docker-FF35TY6T.js +3 -0
- package/dist/docker-FF35TY6T.js.map +1 -0
- package/dist/dotenv-FVPPHJI3.js +3 -0
- package/dist/dotenv-FVPPHJI3.js.map +1 -0
- package/dist/dracula-T2CMBBQ5.js +3 -0
- package/dist/dracula-T2CMBBQ5.js.map +1 -0
- package/dist/dracula-soft-SMFRNKX2.js +3 -0
- package/dist/dracula-soft-SMFRNKX2.js.map +1 -0
- package/dist/dream-maker-SYE3ZPSJ.js +3 -0
- package/dist/dream-maker-SYE3ZPSJ.js.map +1 -0
- package/dist/edge-CCLQ2CKA.js +3 -0
- package/dist/edge-CCLQ2CKA.js.map +1 -0
- package/dist/elixir-F6DQGRKA.js +3 -0
- package/dist/elixir-F6DQGRKA.js.map +1 -0
- package/dist/elm-5QRQXDZ6.js +3 -0
- package/dist/elm-5QRQXDZ6.js.map +1 -0
- package/dist/emacs-lisp-NJ4S4OHV.js +3 -0
- package/dist/emacs-lisp-NJ4S4OHV.js.map +1 -0
- package/dist/erb-HGSLHT5Y.js +3 -0
- package/dist/erb-HGSLHT5Y.js.map +1 -0
- package/dist/erlang-APEONNZ6.js +3 -0
- package/dist/erlang-APEONNZ6.js.map +1 -0
- package/dist/everforest-dark-DBZHIUAO.js +3 -0
- package/dist/everforest-dark-DBZHIUAO.js.map +1 -0
- package/dist/everforest-light-TDAGYJUK.js +3 -0
- package/dist/everforest-light-TDAGYJUK.js.map +1 -0
- package/dist/fennel-7OCMFVPS.js +3 -0
- package/dist/fennel-7OCMFVPS.js.map +1 -0
- package/dist/fish-BC46ME2N.js +3 -0
- package/dist/fish-BC46ME2N.js.map +1 -0
- package/dist/fluent-MXZS6EX3.js +3 -0
- package/dist/fluent-MXZS6EX3.js.map +1 -0
- package/dist/fortran-fixed-form-35BC2KX6.js +3 -0
- package/dist/fortran-fixed-form-35BC2KX6.js.map +1 -0
- package/dist/fortran-free-form-AXRAI2HH.js +3 -0
- package/dist/fortran-free-form-AXRAI2HH.js.map +1 -0
- package/dist/fsharp-JKNSQXHD.js +3 -0
- package/dist/fsharp-JKNSQXHD.js.map +1 -0
- package/dist/gdresource-ZMKZGPZV.js +3 -0
- package/dist/gdresource-ZMKZGPZV.js.map +1 -0
- package/dist/gdscript-HNCVXEYB.js +3 -0
- package/dist/gdscript-HNCVXEYB.js.map +1 -0
- package/dist/gdshader-XAJ4QRYP.js +3 -0
- package/dist/gdshader-XAJ4QRYP.js.map +1 -0
- package/dist/genie-HEFVQZAP.js +3 -0
- package/dist/genie-HEFVQZAP.js.map +1 -0
- package/dist/gherkin-OFBRDPXX.js +3 -0
- package/dist/gherkin-OFBRDPXX.js.map +1 -0
- package/dist/git-commit-ZE2M3Q5H.js +3 -0
- package/dist/git-commit-ZE2M3Q5H.js.map +1 -0
- package/dist/git-rebase-3N3INGLU.js +3 -0
- package/dist/git-rebase-3N3INGLU.js.map +1 -0
- package/dist/github-dark-3E25TTAN.js +3 -0
- package/dist/github-dark-3E25TTAN.js.map +1 -0
- package/dist/github-dark-default-KCBFVSS5.js +3 -0
- package/dist/github-dark-default-KCBFVSS5.js.map +1 -0
- package/dist/github-dark-dimmed-WRCBXEVS.js +3 -0
- package/dist/github-dark-dimmed-WRCBXEVS.js.map +1 -0
- package/dist/github-dark-high-contrast-ET7SAHAV.js +3 -0
- package/dist/github-dark-high-contrast-ET7SAHAV.js.map +1 -0
- package/dist/github-light-6FNTZH5H.js +3 -0
- package/dist/github-light-6FNTZH5H.js.map +1 -0
- package/dist/github-light-default-GGTAKNM7.js +3 -0
- package/dist/github-light-default-GGTAKNM7.js.map +1 -0
- package/dist/github-light-high-contrast-LHYKPR5E.js +3 -0
- package/dist/github-light-high-contrast-LHYKPR5E.js.map +1 -0
- package/dist/gleam-NFFQFQLP.js +3 -0
- package/dist/gleam-NFFQFQLP.js.map +1 -0
- package/dist/glimmer-js-RSUW6JYN.js +3 -0
- package/dist/glimmer-js-RSUW6JYN.js.map +1 -0
- package/dist/glimmer-ts-EZGWLX5T.js +3 -0
- package/dist/glimmer-ts-EZGWLX5T.js.map +1 -0
- package/dist/glsl-VJLRYEVJ.js +3 -0
- package/dist/glsl-VJLRYEVJ.js.map +1 -0
- package/dist/gn-UH2XQWLG.js +3 -0
- package/dist/gn-UH2XQWLG.js.map +1 -0
- package/dist/gnuplot-K6IV6NNR.js +3 -0
- package/dist/gnuplot-K6IV6NNR.js.map +1 -0
- package/dist/go-BDV7RR5G.js +3 -0
- package/dist/go-BDV7RR5G.js.map +1 -0
- package/dist/graphql-YEJQLMOO.js +3 -0
- package/dist/graphql-YEJQLMOO.js.map +1 -0
- package/dist/groovy-SX7K3XGL.js +3 -0
- package/dist/groovy-SX7K3XGL.js.map +1 -0
- package/dist/gruvbox-dark-hard-IQWZCHF7.js +3 -0
- package/dist/gruvbox-dark-hard-IQWZCHF7.js.map +1 -0
- package/dist/gruvbox-dark-medium-ARPWF4FS.js +3 -0
- package/dist/gruvbox-dark-medium-ARPWF4FS.js.map +1 -0
- package/dist/gruvbox-dark-soft-ODS6FPID.js +3 -0
- package/dist/gruvbox-dark-soft-ODS6FPID.js.map +1 -0
- package/dist/gruvbox-light-hard-KFA5YFDW.js +3 -0
- package/dist/gruvbox-light-hard-KFA5YFDW.js.map +1 -0
- package/dist/gruvbox-light-medium-MMET4L3Y.js +3 -0
- package/dist/gruvbox-light-medium-MMET4L3Y.js.map +1 -0
- package/dist/gruvbox-light-soft-DBZDERMK.js +3 -0
- package/dist/gruvbox-light-soft-DBZDERMK.js.map +1 -0
- package/dist/hack-3TGPQNR2.js +3 -0
- package/dist/hack-3TGPQNR2.js.map +1 -0
- package/dist/haml-335RVEQR.js +3 -0
- package/dist/haml-335RVEQR.js.map +1 -0
- package/dist/handlebars-73IS6B2J.js +3 -0
- package/dist/handlebars-73IS6B2J.js.map +1 -0
- package/dist/haskell-P5PTJARU.js +3 -0
- package/dist/haskell-P5PTJARU.js.map +1 -0
- package/dist/haxe-RCPSSA3N.js +3 -0
- package/dist/haxe-RCPSSA3N.js.map +1 -0
- package/dist/hcl-AKKZAVC2.js +3 -0
- package/dist/hcl-AKKZAVC2.js.map +1 -0
- package/dist/hjson-REXV6F6N.js +3 -0
- package/dist/hjson-REXV6F6N.js.map +1 -0
- package/dist/hlsl-AJ7VWOVL.js +3 -0
- package/dist/hlsl-AJ7VWOVL.js.map +1 -0
- package/dist/horizon-FSOMPXNP.js +3 -0
- package/dist/horizon-FSOMPXNP.js.map +1 -0
- package/dist/houston-FAQBCORN.js +3 -0
- package/dist/houston-FAQBCORN.js.map +1 -0
- package/dist/html-654LNGWF.js +3 -0
- package/dist/html-654LNGWF.js.map +1 -0
- package/dist/html-derivative-CMQ7BFDQ.js +3 -0
- package/dist/html-derivative-CMQ7BFDQ.js.map +1 -0
- package/dist/http-NEPTRAQZ.js +3 -0
- package/dist/http-NEPTRAQZ.js.map +1 -0
- package/dist/hurl-V6ZX2Q3F.js +3 -0
- package/dist/hurl-V6ZX2Q3F.js.map +1 -0
- package/dist/hxml-5BXJCAAU.js +3 -0
- package/dist/hxml-5BXJCAAU.js.map +1 -0
- package/dist/hy-SB4TMFE7.js +3 -0
- package/dist/hy-SB4TMFE7.js.map +1 -0
- package/dist/imba-Y64MHYWP.js +3 -0
- package/dist/imba-Y64MHYWP.js.map +1 -0
- package/dist/index.d.ts +134 -41
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/ini-J2OP4CNW.js +3 -0
- package/dist/ini-J2OP4CNW.js.map +1 -0
- package/dist/java-MJKJ5GPP.js +3 -0
- package/dist/java-MJKJ5GPP.js.map +1 -0
- package/dist/javascript-IYAGHPR6.js +3 -0
- package/dist/javascript-IYAGHPR6.js.map +1 -0
- package/dist/jinja-WPD26JJ6.js +3 -0
- package/dist/jinja-WPD26JJ6.js.map +1 -0
- package/dist/jison-UYDZQBN5.js +3 -0
- package/dist/jison-UYDZQBN5.js.map +1 -0
- package/dist/json-5V4JESJO.js +3 -0
- package/dist/json-5V4JESJO.js.map +1 -0
- package/dist/json5-7SHUZD3R.js +3 -0
- package/dist/json5-7SHUZD3R.js.map +1 -0
- package/dist/jsonc-X3Z34FN3.js +3 -0
- package/dist/jsonc-X3Z34FN3.js.map +1 -0
- package/dist/jsonl-6I3D2HM6.js +3 -0
- package/dist/jsonl-6I3D2HM6.js.map +1 -0
- package/dist/jsonnet-PZEQIBYV.js +3 -0
- package/dist/jsonnet-PZEQIBYV.js.map +1 -0
- package/dist/jssm-GJJ25IKR.js +3 -0
- package/dist/jssm-GJJ25IKR.js.map +1 -0
- package/dist/jsx-NI2J427C.js +3 -0
- package/dist/jsx-NI2J427C.js.map +1 -0
- package/dist/julia-QPZ7EOS6.js +3 -0
- package/dist/julia-QPZ7EOS6.js.map +1 -0
- package/dist/kanagawa-dragon-JNDVF5RJ.js +3 -0
- package/dist/kanagawa-dragon-JNDVF5RJ.js.map +1 -0
- package/dist/kanagawa-lotus-S7JK6TQ6.js +3 -0
- package/dist/kanagawa-lotus-S7JK6TQ6.js.map +1 -0
- package/dist/kanagawa-wave-QJJIMVEV.js +3 -0
- package/dist/kanagawa-wave-QJJIMVEV.js.map +1 -0
- package/dist/kdl-IA7HA2TL.js +3 -0
- package/dist/kdl-IA7HA2TL.js.map +1 -0
- package/dist/kotlin-CCRMGYMI.js +3 -0
- package/dist/kotlin-CCRMGYMI.js.map +1 -0
- package/dist/kusto-7DW25GYH.js +3 -0
- package/dist/kusto-7DW25GYH.js.map +1 -0
- package/dist/laserwave-YFP3EJVX.js +3 -0
- package/dist/laserwave-YFP3EJVX.js.map +1 -0
- package/dist/latex-F2CTDTFG.js +3 -0
- package/dist/latex-F2CTDTFG.js.map +1 -0
- package/dist/lean-MGJJWBTR.js +3 -0
- package/dist/lean-MGJJWBTR.js.map +1 -0
- package/dist/less-WFSIMX5G.js +3 -0
- package/dist/less-WFSIMX5G.js.map +1 -0
- package/dist/light-plus-NGDHCPUZ.js +3 -0
- package/dist/light-plus-NGDHCPUZ.js.map +1 -0
- package/dist/liquid-7CFNUD3V.js +3 -0
- package/dist/liquid-7CFNUD3V.js.map +1 -0
- package/dist/llvm-CFQSEDXB.js +3 -0
- package/dist/llvm-CFQSEDXB.js.map +1 -0
- package/dist/log-YQNML6LA.js +3 -0
- package/dist/log-YQNML6LA.js.map +1 -0
- package/dist/logo-2PPKBL2M.js +3 -0
- package/dist/logo-2PPKBL2M.js.map +1 -0
- package/dist/lua-RPAMRKNG.js +3 -0
- package/dist/lua-RPAMRKNG.js.map +1 -0
- package/dist/luau-GR2DOH6N.js +3 -0
- package/dist/luau-GR2DOH6N.js.map +1 -0
- package/dist/make-DQQEEPI4.js +3 -0
- package/dist/make-DQQEEPI4.js.map +1 -0
- package/dist/markdown-OC5ILZSY.js +3 -0
- package/dist/markdown-OC5ILZSY.js.map +1 -0
- package/dist/marko-XSB3CTWQ.js +3 -0
- package/dist/marko-XSB3CTWQ.js.map +1 -0
- package/dist/material-theme-H2BHKUKX.js +3 -0
- package/dist/material-theme-H2BHKUKX.js.map +1 -0
- package/dist/material-theme-darker-VENCGWTB.js +3 -0
- package/dist/material-theme-darker-VENCGWTB.js.map +1 -0
- package/dist/material-theme-lighter-SDMLS22W.js +3 -0
- package/dist/material-theme-lighter-SDMLS22W.js.map +1 -0
- package/dist/material-theme-ocean-UHDBRLVF.js +3 -0
- package/dist/material-theme-ocean-UHDBRLVF.js.map +1 -0
- package/dist/material-theme-palenight-3TB2BEET.js +3 -0
- package/dist/material-theme-palenight-3TB2BEET.js.map +1 -0
- package/dist/matlab-YQY6FS4U.js +3 -0
- package/dist/matlab-YQY6FS4U.js.map +1 -0
- package/dist/mcp/index.d.ts +397 -39
- package/dist/mcp/index.js +3 -3
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/react.d.ts +84 -25
- package/dist/mcp/react.js +7 -7
- package/dist/mcp/react.js.map +1 -1
- package/dist/mcp-apps-client-6WEBHSGH.js +3 -0
- package/dist/mcp-apps-client-6WEBHSGH.js.map +1 -0
- package/dist/mdc-TEVTGSC7.js +3 -0
- package/dist/mdc-TEVTGSC7.js.map +1 -0
- package/dist/mdx-ZIH2JLVR.js +3 -0
- package/dist/mdx-ZIH2JLVR.js.map +1 -0
- package/dist/mermaid-4DMBBIKO-NR6M3PLG.js +3 -0
- package/dist/mermaid-4DMBBIKO-NR6M3PLG.js.map +1 -0
- package/dist/mermaid-WPX56SBB.js +3 -0
- package/dist/mermaid-WPX56SBB.js.map +1 -0
- package/dist/min-dark-CQ5WKNT7.js +3 -0
- package/dist/min-dark-CQ5WKNT7.js.map +1 -0
- package/dist/min-light-LZRD4NPR.js +3 -0
- package/dist/min-light-LZRD4NPR.js.map +1 -0
- package/dist/mipsasm-IDXQRZ2B.js +3 -0
- package/dist/mipsasm-IDXQRZ2B.js.map +1 -0
- package/dist/mojo-MH7EQVOK.js +3 -0
- package/dist/mojo-MH7EQVOK.js.map +1 -0
- package/dist/monokai-WHRY6275.js +3 -0
- package/dist/monokai-WHRY6275.js.map +1 -0
- package/dist/moonbit-5JDFTWKE.js +3 -0
- package/dist/moonbit-5JDFTWKE.js.map +1 -0
- package/dist/move-RWSXKYDY.js +3 -0
- package/dist/move-RWSXKYDY.js.map +1 -0
- package/dist/narrat-QJUEXMVV.js +3 -0
- package/dist/narrat-QJUEXMVV.js.map +1 -0
- package/dist/nextflow-2EICNZA3.js +3 -0
- package/dist/nextflow-2EICNZA3.js.map +1 -0
- package/dist/nginx-RIWAEC5Z.js +3 -0
- package/dist/nginx-RIWAEC5Z.js.map +1 -0
- package/dist/night-owl-7PNEW2JB.js +3 -0
- package/dist/night-owl-7PNEW2JB.js.map +1 -0
- package/dist/night-owl-light-GJUYOOJR.js +3 -0
- package/dist/night-owl-light-GJUYOOJR.js.map +1 -0
- package/dist/nim-JPSYX5KC.js +3 -0
- package/dist/nim-JPSYX5KC.js.map +1 -0
- package/dist/nix-XCKQVWCN.js +3 -0
- package/dist/nix-XCKQVWCN.js.map +1 -0
- package/dist/nord-EVGUMUX2.js +3 -0
- package/dist/nord-EVGUMUX2.js.map +1 -0
- package/dist/nushell-QGW7HANA.js +3 -0
- package/dist/nushell-QGW7HANA.js.map +1 -0
- package/dist/objective-c-V7KYXFHL.js +3 -0
- package/dist/objective-c-V7KYXFHL.js.map +1 -0
- package/dist/objective-cpp-NKUEWVGU.js +3 -0
- package/dist/objective-cpp-NKUEWVGU.js.map +1 -0
- package/dist/ocaml-QT2CZJZN.js +3 -0
- package/dist/ocaml-QT2CZJZN.js.map +1 -0
- package/dist/odin-MVMIXBHP.js +3 -0
- package/dist/odin-MVMIXBHP.js.map +1 -0
- package/dist/one-dark-pro-PMTR3SA7.js +3 -0
- package/dist/one-dark-pro-PMTR3SA7.js.map +1 -0
- package/dist/one-light-O7WH4N5X.js +3 -0
- package/dist/one-light-O7WH4N5X.js.map +1 -0
- package/dist/openai-client-HLQSYZJC.js +3 -0
- package/dist/openai-client-HLQSYZJC.js.map +1 -0
- package/dist/openscad-BJDUXUUZ.js +3 -0
- package/dist/openscad-BJDUXUUZ.js.map +1 -0
- package/dist/pascal-HGWEFD6L.js +3 -0
- package/dist/pascal-HGWEFD6L.js.map +1 -0
- package/dist/perl-X4IFZB22.js +3 -0
- package/dist/perl-X4IFZB22.js.map +1 -0
- package/dist/php-3V7EPUAN.js +3 -0
- package/dist/php-3V7EPUAN.js.map +1 -0
- package/dist/pkl-VA5ZK5DW.js +3 -0
- package/dist/pkl-VA5ZK5DW.js.map +1 -0
- package/dist/plastic-FBVUW6NJ.js +3 -0
- package/dist/plastic-FBVUW6NJ.js.map +1 -0
- package/dist/plsql-J7A7YWFH.js +3 -0
- package/dist/plsql-J7A7YWFH.js.map +1 -0
- package/dist/po-5RDI65JX.js +3 -0
- package/dist/po-5RDI65JX.js.map +1 -0
- package/dist/poimandres-WBB7GZAD.js +3 -0
- package/dist/poimandres-WBB7GZAD.js.map +1 -0
- package/dist/polar-VUJL2E7F.js +3 -0
- package/dist/polar-VUJL2E7F.js.map +1 -0
- package/dist/postcss-ESTB5G7N.js +3 -0
- package/dist/postcss-ESTB5G7N.js.map +1 -0
- package/dist/powerquery-ODTEKQCW.js +3 -0
- package/dist/powerquery-ODTEKQCW.js.map +1 -0
- package/dist/powershell-ZOYRAWBJ.js +3 -0
- package/dist/powershell-ZOYRAWBJ.js.map +1 -0
- package/dist/prisma-QHG2W5GE.js +3 -0
- package/dist/prisma-QHG2W5GE.js.map +1 -0
- package/dist/prolog-CSAPG5PH.js +3 -0
- package/dist/prolog-CSAPG5PH.js.map +1 -0
- package/dist/proto-WDNJBTSW.js +3 -0
- package/dist/proto-WDNJBTSW.js.map +1 -0
- package/dist/pug-P7LS6DER.js +3 -0
- package/dist/pug-P7LS6DER.js.map +1 -0
- package/dist/puppet-LHFWHTY3.js +3 -0
- package/dist/puppet-LHFWHTY3.js.map +1 -0
- package/dist/purescript-DUFJP4FY.js +3 -0
- package/dist/purescript-DUFJP4FY.js.map +1 -0
- package/dist/python-5ZNZSNQ2.js +3 -0
- package/dist/python-5ZNZSNQ2.js.map +1 -0
- package/dist/qml-LTAXB6W5.js +3 -0
- package/dist/qml-LTAXB6W5.js.map +1 -0
- package/dist/qmldir-7Z2ODQLM.js +3 -0
- package/dist/qmldir-7Z2ODQLM.js.map +1 -0
- package/dist/qss-FDFD3HQD.js +3 -0
- package/dist/qss-FDFD3HQD.js.map +1 -0
- package/dist/r-6ZOS53WN.js +3 -0
- package/dist/r-6ZOS53WN.js.map +1 -0
- package/dist/racket-7AYZPEUI.js +3 -0
- package/dist/racket-7AYZPEUI.js.map +1 -0
- package/dist/raku-A4F6VHVG.js +3 -0
- package/dist/raku-A4F6VHVG.js.map +1 -0
- package/dist/razor-4QOCK4UD.js +3 -0
- package/dist/razor-4QOCK4UD.js.map +1 -0
- package/dist/red-7KAMONOP.js +3 -0
- package/dist/red-7KAMONOP.js.map +1 -0
- package/dist/reg-FAPHGG66.js +3 -0
- package/dist/reg-FAPHGG66.js.map +1 -0
- package/dist/regexp-5BYLYA2R.js +3 -0
- package/dist/regexp-5BYLYA2R.js.map +1 -0
- package/dist/rel-7DJ7HHU4.js +3 -0
- package/dist/rel-7DJ7HHU4.js.map +1 -0
- package/dist/riscv-YIYJATFG.js +3 -0
- package/dist/riscv-YIYJATFG.js.map +1 -0
- package/dist/ron-HYYMCHTX.js +3 -0
- package/dist/ron-HYYMCHTX.js.map +1 -0
- package/dist/rose-pine-F2G5IHZD.js +3 -0
- package/dist/rose-pine-F2G5IHZD.js.map +1 -0
- package/dist/rose-pine-dawn-ALZ7XGH2.js +3 -0
- package/dist/rose-pine-dawn-ALZ7XGH2.js.map +1 -0
- package/dist/rose-pine-moon-D3K4SWUL.js +3 -0
- package/dist/rose-pine-moon-D3K4SWUL.js.map +1 -0
- package/dist/rosmsg-FDNH6QF7.js +3 -0
- package/dist/rosmsg-FDNH6QF7.js.map +1 -0
- package/dist/rst-WIWCR2KQ.js +3 -0
- package/dist/rst-WIWCR2KQ.js.map +1 -0
- package/dist/ruby-LXZJUMFB.js +3 -0
- package/dist/ruby-LXZJUMFB.js.map +1 -0
- package/dist/rust-V3GMJA2K.js +3 -0
- package/dist/rust-V3GMJA2K.js.map +1 -0
- package/dist/sas-D3G4GB3X.js +3 -0
- package/dist/sas-D3G4GB3X.js.map +1 -0
- package/dist/sass-JTO65AGR.js +3 -0
- package/dist/sass-JTO65AGR.js.map +1 -0
- package/dist/scala-4XQGFSVM.js +3 -0
- package/dist/scala-4XQGFSVM.js.map +1 -0
- package/dist/scheme-CB7AC7IL.js +3 -0
- package/dist/scheme-CB7AC7IL.js.map +1 -0
- package/dist/scss-6SKV4OGI.js +3 -0
- package/dist/scss-6SKV4OGI.js.map +1 -0
- package/dist/sdbl-LKGZFJ46.js +3 -0
- package/dist/sdbl-LKGZFJ46.js.map +1 -0
- package/dist/shaderlab-K536DHEB.js +3 -0
- package/dist/shaderlab-K536DHEB.js.map +1 -0
- package/dist/shellscript-LRNUKUSZ.js +3 -0
- package/dist/shellscript-LRNUKUSZ.js.map +1 -0
- package/dist/shellsession-IBQK7VWQ.js +3 -0
- package/dist/shellsession-IBQK7VWQ.js.map +1 -0
- package/dist/slack-dark-YFPJODWS.js +3 -0
- package/dist/slack-dark-YFPJODWS.js.map +1 -0
- package/dist/slack-ochin-H67AWZOI.js +3 -0
- package/dist/slack-ochin-H67AWZOI.js.map +1 -0
- package/dist/smalltalk-DQOSWAW7.js +3 -0
- package/dist/smalltalk-DQOSWAW7.js.map +1 -0
- package/dist/snazzy-light-OUVS63VK.js +3 -0
- package/dist/snazzy-light-OUVS63VK.js.map +1 -0
- package/dist/solarized-dark-2RCAVEXJ.js +3 -0
- package/dist/solarized-dark-2RCAVEXJ.js.map +1 -0
- package/dist/solarized-light-XFSENHTC.js +3 -0
- package/dist/solarized-light-XFSENHTC.js.map +1 -0
- package/dist/solidity-V2FMZEG4.js +3 -0
- package/dist/solidity-V2FMZEG4.js.map +1 -0
- package/dist/soy-VW3CKXWF.js +3 -0
- package/dist/soy-VW3CKXWF.js.map +1 -0
- package/dist/sparql-L2VKP7YP.js +3 -0
- package/dist/sparql-L2VKP7YP.js.map +1 -0
- package/dist/splunk-KDKHP7GC.js +3 -0
- package/dist/splunk-KDKHP7GC.js.map +1 -0
- package/dist/sql-UF27CALT.js +3 -0
- package/dist/sql-UF27CALT.js.map +1 -0
- package/dist/ssh-config-JC2DQ6ED.js +3 -0
- package/dist/ssh-config-JC2DQ6ED.js.map +1 -0
- package/dist/stata-7PXCUY24.js +3 -0
- package/dist/stata-7PXCUY24.js.map +1 -0
- package/dist/stylus-2L7N3EZD.js +3 -0
- package/dist/stylus-2L7N3EZD.js.map +1 -0
- package/dist/surrealql-ZY3E6XEL.js +3 -0
- package/dist/surrealql-ZY3E6XEL.js.map +1 -0
- package/dist/svelte-Q45XIK2A.js +3 -0
- package/dist/svelte-Q45XIK2A.js.map +1 -0
- package/dist/swift-XBH5HZSC.js +3 -0
- package/dist/swift-XBH5HZSC.js.map +1 -0
- package/dist/synthwave-84-5XXB3K6S.js +3 -0
- package/dist/synthwave-84-5XXB3K6S.js.map +1 -0
- package/dist/system-verilog-VRAUSZY3.js +3 -0
- package/dist/system-verilog-VRAUSZY3.js.map +1 -0
- package/dist/systemd-JOTSGJD4.js +3 -0
- package/dist/systemd-JOTSGJD4.js.map +1 -0
- package/dist/talonscript-NNZRZKOU.js +3 -0
- package/dist/talonscript-NNZRZKOU.js.map +1 -0
- package/dist/tasl-MBFZ4QNC.js +3 -0
- package/dist/tasl-MBFZ4QNC.js.map +1 -0
- package/dist/tcl-4GEDCBVE.js +3 -0
- package/dist/tcl-4GEDCBVE.js.map +1 -0
- package/dist/templ-3XM7DLQ3.js +3 -0
- package/dist/templ-3XM7DLQ3.js.map +1 -0
- package/dist/terraform-XTHOS4UK.js +3 -0
- package/dist/terraform-XTHOS4UK.js.map +1 -0
- package/dist/tex-UXMN2CV7.js +3 -0
- package/dist/tex-UXMN2CV7.js.map +1 -0
- package/dist/tokyo-night-CHJCCBJH.js +3 -0
- package/dist/tokyo-night-CHJCCBJH.js.map +1 -0
- package/dist/toml-J6K55ZSV.js +3 -0
- package/dist/toml-J6K55ZSV.js.map +1 -0
- package/dist/ts-tags-7WGDLEKX.js +3 -0
- package/dist/ts-tags-7WGDLEKX.js.map +1 -0
- package/dist/tsv-DOUJHQDQ.js +3 -0
- package/dist/tsv-DOUJHQDQ.js.map +1 -0
- package/dist/tsx-G5BMVRHK.js +3 -0
- package/dist/tsx-G5BMVRHK.js.map +1 -0
- package/dist/turtle-JHJ7W6U5.js +3 -0
- package/dist/turtle-JHJ7W6U5.js.map +1 -0
- package/dist/twig-C6YWFFZU.js +3 -0
- package/dist/twig-C6YWFFZU.js.map +1 -0
- package/dist/typescript-LMKEAHFC.js +3 -0
- package/dist/typescript-LMKEAHFC.js.map +1 -0
- package/dist/typespec-5CLTIJYY.js +3 -0
- package/dist/typespec-5CLTIJYY.js.map +1 -0
- package/dist/typst-4W4Z436Z.js +3 -0
- package/dist/typst-4W4Z436Z.js.map +1 -0
- package/dist/v-Y4SBDBN7.js +3 -0
- package/dist/v-Y4SBDBN7.js.map +1 -0
- package/dist/vala-UMKT2MFA.js +3 -0
- package/dist/vala-UMKT2MFA.js.map +1 -0
- package/dist/vb-DQ7A5WJU.js +3 -0
- package/dist/vb-DQ7A5WJU.js.map +1 -0
- package/dist/verilog-N6ZF7GQD.js +3 -0
- package/dist/verilog-N6ZF7GQD.js.map +1 -0
- package/dist/vesper-Y5GIEAN4.js +3 -0
- package/dist/vesper-Y5GIEAN4.js.map +1 -0
- package/dist/vhdl-BNYDT37G.js +3 -0
- package/dist/vhdl-BNYDT37G.js.map +1 -0
- package/dist/viml-37RMDCBC.js +3 -0
- package/dist/viml-37RMDCBC.js.map +1 -0
- package/dist/vitesse-black-7TI33KHX.js +3 -0
- package/dist/vitesse-black-7TI33KHX.js.map +1 -0
- package/dist/vitesse-dark-FOB25MRB.js +3 -0
- package/dist/vitesse-dark-FOB25MRB.js.map +1 -0
- package/dist/vitesse-light-4WCNCTCO.js +3 -0
- package/dist/vitesse-light-4WCNCTCO.js.map +1 -0
- package/dist/vue-O6SLORWU.js +3 -0
- package/dist/vue-O6SLORWU.js.map +1 -0
- package/dist/vue-html-ZLTZN573.js +3 -0
- package/dist/vue-html-ZLTZN573.js.map +1 -0
- package/dist/vue-vine-6JKAZ54I.js +3 -0
- package/dist/vue-vine-6JKAZ54I.js.map +1 -0
- package/dist/vyper-GVXF46KD.js +3 -0
- package/dist/vyper-GVXF46KD.js.map +1 -0
- package/dist/wasm-EOPKAILK.js +3 -0
- package/dist/wasm-EOPKAILK.js.map +1 -0
- package/dist/wasm-NTB4O7GL.js +3 -0
- package/dist/wasm-NTB4O7GL.js.map +1 -0
- package/dist/wenyan-W7WB3BC7.js +3 -0
- package/dist/wenyan-W7WB3BC7.js.map +1 -0
- package/dist/wgsl-7GTDVXHG.js +3 -0
- package/dist/wgsl-7GTDVXHG.js.map +1 -0
- package/dist/wikitext-ASAFPAIL.js +3 -0
- package/dist/wikitext-ASAFPAIL.js.map +1 -0
- package/dist/wit-ZBCR6544.js +3 -0
- package/dist/wit-ZBCR6544.js.map +1 -0
- package/dist/wolfram-SZRZOETJ.js +3 -0
- package/dist/wolfram-SZRZOETJ.js.map +1 -0
- package/dist/xml-EBTJCOTU.js +3 -0
- package/dist/xml-EBTJCOTU.js.map +1 -0
- package/dist/xsl-IBYEXWDX.js +3 -0
- package/dist/xsl-IBYEXWDX.js.map +1 -0
- package/dist/yaml-GMVQNECR.js +3 -0
- package/dist/yaml-GMVQNECR.js.map +1 -0
- package/dist/zenscript-O2TZFP4A.js +3 -0
- package/dist/zenscript-O2TZFP4A.js.map +1 -0
- package/dist/zig-ZLGM7IMN.js +3 -0
- package/dist/zig-ZLGM7IMN.js.map +1 -0
- package/package.json +15 -39
- package/dist/mcp-apps-client-Z62VBB36.js +0 -3
- package/dist/mcp-apps-client-Z62VBB36.js.map +0 -1
- package/dist/openai-client-MVV4KJUO.js +0 -3
- package/dist/openai-client-MVV4KJUO.js.map +0 -1
package/dist/mcp/react.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
|
|
2
3
|
import React$1, { ReactNode, SetStateAction } from 'react';
|
|
3
4
|
|
|
4
5
|
/**
|
|
@@ -121,23 +122,11 @@ declare function updateMockTheme(theme: Theme): void;
|
|
|
121
122
|
/**
|
|
122
123
|
* Result from calling a tool
|
|
123
124
|
*/
|
|
124
|
-
type ToolCallResult =
|
|
125
|
-
content?: Array<{
|
|
126
|
-
type: string;
|
|
127
|
-
text?: string;
|
|
128
|
-
}>;
|
|
129
|
-
structuredContent?: Record<string, unknown>;
|
|
130
|
-
};
|
|
125
|
+
type ToolCallResult = CallToolResult;
|
|
131
126
|
/**
|
|
132
127
|
* Tool result notification (what the host pushes to the widget)
|
|
133
128
|
*/
|
|
134
|
-
type ToolResult =
|
|
135
|
-
content?: Array<{
|
|
136
|
-
type: string;
|
|
137
|
-
text?: string;
|
|
138
|
-
}>;
|
|
139
|
-
structuredContent?: Record<string, unknown>;
|
|
140
|
-
};
|
|
129
|
+
type ToolResult = CallToolResult;
|
|
141
130
|
/**
|
|
142
131
|
* Unified widget client interface that works on both OpenAI and MCP Apps.
|
|
143
132
|
*
|
|
@@ -241,14 +230,14 @@ interface UnifiedWidgetClient {
|
|
|
241
230
|
onMaxHeightChange(callback: (maxHeight: number | null) => void): () => void;
|
|
242
231
|
/**
|
|
243
232
|
* Get the tool response metadata.
|
|
244
|
-
* OpenAI
|
|
245
|
-
* MCP Apps: returns
|
|
233
|
+
* OpenAI: returns metadata from window.openai.toolResponseMetadata.
|
|
234
|
+
* MCP Apps: returns `_meta` from the latest `ui/notifications/tool-result`, if provided by host.
|
|
246
235
|
*/
|
|
247
236
|
getToolResponseMetadata(): UnknownObject | null;
|
|
248
237
|
/**
|
|
249
238
|
* Subscribe to tool response metadata changes.
|
|
250
|
-
* OpenAI
|
|
251
|
-
* MCP Apps:
|
|
239
|
+
* OpenAI: subscribes to toolResponseMetadata changes.
|
|
240
|
+
* MCP Apps: fires when tool result `_meta` changes.
|
|
252
241
|
*/
|
|
253
242
|
onToolResponseMetadataChange(callback: (metadata: UnknownObject | null) => void): () => void;
|
|
254
243
|
/**
|
|
@@ -285,8 +274,8 @@ declare function useDisplayMode(): DisplayMode;
|
|
|
285
274
|
type FlowActionResult<T> = {
|
|
286
275
|
/** Current widget data. Initially from useToolOutput, then updated inline on same-widget transitions. */
|
|
287
276
|
data: T | null;
|
|
288
|
-
/** Advance the flow with the user's answer.
|
|
289
|
-
advance: (value: string, followUpText?: string) => void;
|
|
277
|
+
/** Advance the flow with the user's answer. Optionally include `stateUpdates` to update any flow field at this step. */
|
|
278
|
+
advance: (value: string, followUpText?: string, stateUpdates?: Record<string, unknown>) => void;
|
|
290
279
|
/** True while a callTool request is in flight. */
|
|
291
280
|
isAdvancing: boolean;
|
|
292
281
|
};
|
|
@@ -304,6 +293,8 @@ type FlowActionResult<T> = {
|
|
|
304
293
|
* const { data, advance, isAdvancing } = useFlowAction<OptionPickerProps>("option_picker");
|
|
305
294
|
* // On click:
|
|
306
295
|
* advance(option.id, option.label);
|
|
296
|
+
* // With extra cross-field updates:
|
|
297
|
+
* // advance(option.id, option.label, { role: "CTO" });
|
|
307
298
|
* ```
|
|
308
299
|
*/
|
|
309
300
|
declare function useFlowAction<T extends Record<string, unknown>>(resourceId: string): FlowActionResult<T>;
|
|
@@ -383,15 +374,83 @@ declare function useTheme(): Theme;
|
|
|
383
374
|
declare function useToolOutput<T extends Record<string, unknown>>(): T | null;
|
|
384
375
|
|
|
385
376
|
/**
|
|
386
|
-
* Get tool response metadata
|
|
387
|
-
* Contains
|
|
388
|
-
*
|
|
389
|
-
* Returns null
|
|
377
|
+
* Get tool response metadata.
|
|
378
|
+
* Contains host/tool metadata (for example identifiers like
|
|
379
|
+
* `openai/widgetSessionId` and custom tool `_meta` fields).
|
|
380
|
+
* Returns null when the host does not provide metadata.
|
|
390
381
|
*
|
|
391
382
|
* @returns The tool response metadata object or null if not available
|
|
392
383
|
*/
|
|
393
384
|
declare function useToolResponseMetadata(): UnknownObject | null;
|
|
394
385
|
|
|
386
|
+
/**
|
|
387
|
+
* Options for the useWaniwani hook.
|
|
388
|
+
*/
|
|
389
|
+
interface UseWaniwaniOptions {
|
|
390
|
+
/**
|
|
391
|
+
* JWT widget token for authenticating directly with the WaniWani backend.
|
|
392
|
+
* If omitted, the hook resolves from tool response metadata
|
|
393
|
+
* (`toolResponseMetadata.waniwani` or `toolResponseMetadata._meta.waniwani`).
|
|
394
|
+
*/
|
|
395
|
+
token?: string;
|
|
396
|
+
/**
|
|
397
|
+
* The V2 batch endpoint URL to POST tracking events to.
|
|
398
|
+
* If omitted, the hook resolves from tool response metadata
|
|
399
|
+
* (`toolResponseMetadata.waniwani` or `toolResponseMetadata._meta.waniwani`).
|
|
400
|
+
*/
|
|
401
|
+
endpoint?: string;
|
|
402
|
+
/**
|
|
403
|
+
* Session ID to use for event correlation.
|
|
404
|
+
* If omitted, the hook resolves from tool response metadata
|
|
405
|
+
* (`toolResponseMetadata.waniwani.sessionId`), then falls back to a random UUID.
|
|
406
|
+
*/
|
|
407
|
+
sessionId?: string;
|
|
408
|
+
/**
|
|
409
|
+
* Additional metadata to include with every tracked event.
|
|
410
|
+
*/
|
|
411
|
+
metadata?: Record<string, unknown>;
|
|
412
|
+
}
|
|
413
|
+
/**
|
|
414
|
+
* The tracking API returned by `useWaniwani()`.
|
|
415
|
+
*/
|
|
416
|
+
interface WaniwaniWidget {
|
|
417
|
+
/** Tie all subsequent widget events to this user. */
|
|
418
|
+
identify(userId: string, traits?: Record<string, unknown>): void;
|
|
419
|
+
/** Record a funnel step. Auto-incrementing sequence per session. */
|
|
420
|
+
step(name: string, meta?: Record<string, unknown>): void;
|
|
421
|
+
/** Record a generic custom event. */
|
|
422
|
+
track(event: string, properties?: Record<string, unknown>): void;
|
|
423
|
+
/** Record a revenue attribution event. */
|
|
424
|
+
conversion(name: string, data: {
|
|
425
|
+
value: number;
|
|
426
|
+
currency: string;
|
|
427
|
+
meta?: Record<string, unknown>;
|
|
428
|
+
}): void;
|
|
429
|
+
}
|
|
430
|
+
/**
|
|
431
|
+
* React hook for WaniWani widget tracking.
|
|
432
|
+
*
|
|
433
|
+
* Auto-captures DOM events (clicks, link clicks, errors, scrolls, form
|
|
434
|
+
* interactions) and provides manual tracking methods. Returns a singleton
|
|
435
|
+
* instance shared across all consumers.
|
|
436
|
+
*
|
|
437
|
+
* Config resolution order:
|
|
438
|
+
* 1. Explicit `endpoint` (+ optional `token` / `sessionId`) options
|
|
439
|
+
* 2. `toolResponseMetadata.waniwani` from WidgetProvider context
|
|
440
|
+
* 3. No-op if neither is available
|
|
441
|
+
*
|
|
442
|
+
* @example
|
|
443
|
+
* ```tsx
|
|
444
|
+
* function MyWidget() {
|
|
445
|
+
* const wani = useWaniwani();
|
|
446
|
+
* // Auto-captures clicks, links, errors, scrolls, forms
|
|
447
|
+
* // Optionally call wani.track("custom_event") for manual events
|
|
448
|
+
* return <a href="https://example.com">Visit</a>;
|
|
449
|
+
* }
|
|
450
|
+
* ```
|
|
451
|
+
*/
|
|
452
|
+
declare function useWaniwani(options?: UseWaniwaniOptions): WaniwaniWidget;
|
|
453
|
+
|
|
395
454
|
/**
|
|
396
455
|
* Provider props
|
|
397
456
|
*/
|
|
@@ -465,4 +524,4 @@ declare function useWidgetState<T extends UnknownObject>(defaultState?: T | (()
|
|
|
465
524
|
|
|
466
525
|
declare const LoadingWidget: () => react_jsx_runtime.JSX.Element;
|
|
467
526
|
|
|
468
|
-
export { DevModeProvider, type DeviceType, type DisplayMode, type FlowActionResult, InitializeNextJsInChatGpt, LoadingWidget, type SafeArea, type SafeAreaInsets, type Theme, type UnknownObject, type UserAgent, WidgetProvider, getMockState, initializeMockOpenAI, updateMockDisplayMode, updateMockGlobal, updateMockTheme, updateMockToolOutput, useCallTool, useDisplayMode, useFlowAction, useIsChatGptApp, useLocale, useMaxHeight, useOpenExternal, useRequestDisplayMode, useSafeArea, useSendFollowUp, useTheme, useToolOutput, useToolResponseMetadata, useWidgetClient, useWidgetState };
|
|
527
|
+
export { DevModeProvider, type DeviceType, type DisplayMode, type FlowActionResult, InitializeNextJsInChatGpt, LoadingWidget, type SafeArea, type SafeAreaInsets, type Theme, type UnknownObject, type UseWaniwaniOptions, type UserAgent, type WaniwaniWidget, WidgetProvider, getMockState, initializeMockOpenAI, updateMockDisplayMode, updateMockGlobal, updateMockTheme, updateMockToolOutput, useCallTool, useDisplayMode, useFlowAction, useIsChatGptApp, useLocale, useMaxHeight, useOpenExternal, useRequestDisplayMode, useSafeArea, useSendFollowUp, useTheme, useToolOutput, useToolResponseMetadata, useWaniwani, useWidgetClient, useWidgetState };
|
package/dist/mcp/react.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import{a as
|
|
2
|
+
import{a as Y}from"../chunk-DGSC74SV.js";import{b as P}from"../chunk-ZUGQBRJF.js";import{Fragment as Ke,jsx as $,jsxs as ze}from"react/jsx-runtime";function je({baseUrl:e}){return ze(Ke,{children:[$("base",{href:e}),$("script",{children:`window.innerBaseUrl = ${JSON.stringify(e)}`}),$("script",{children:'window.__isChatGptApp = typeof window.openai !== "undefined";'}),$("script",{children:"("+(()=>{let t=window.innerBaseUrl,n=document.documentElement;new MutationObserver(p=>{p.forEach(i=>{if(i.type==="attributes"&&i.target===n){let l=i.attributeName;l&&l!=="suppresshydrationwarning"&&l!=="class"&&l!=="style"&&n.removeAttribute(l)}})}).observe(n,{attributes:!0,attributeOldValue:!0});let o=history.replaceState;history.replaceState=(p,i,l)=>{let a=new URL(l??"",window.location.href),h=a.pathname+a.search+a.hash;o.call(history,i,h)};let d=history.pushState;history.pushState=(p,i,l)=>{let a=new URL(l??"",window.location.href),h=a.pathname+a.search+a.hash;d.call(history,i,h)};let f=new URL(t).origin,m=window.self!==window.top;if(window.addEventListener("click",p=>{let i=p?.target?.closest("a");if(!i||!i.href)return;let l=new URL(i.href,window.location.href);if(l.origin!==window.location.origin&&l.origin!==f)try{window.openai&&(window.openai?.openExternal({href:i.href}),p.preventDefault())}catch{console.warn("openExternal failed, likely not in OpenAI client")}},!0),m&&window.location.origin!==f){let p=window.fetch;window.fetch=(i,l)=>{let a;if(typeof i=="string"||i instanceof URL?a=new URL(i,window.location.href):a=new URL(i.url,window.location.href),a.origin===f)return typeof i=="string"||i instanceof URL?i=a.toString():i=new Request(a.toString(),i),p.call(window,i,{...l,mode:"cors"});if(a.origin===window.location.origin){let h=new URL(t);return h.pathname=a.pathname,h.search=a.search,h.hash=a.hash,a=h,typeof i=="string"||i instanceof URL?i=a.toString():i=new Request(a.toString(),i),p.call(window,i,{...l,mode:"cors"})}return p.call(window,i,l)}}}).toString()+")()"})]})}import{useCallback as _,useEffect as F,useRef as oe,useState as E}from"react";var ce={theme:"dark",userAgent:{device:{type:"desktop"},capabilities:{hover:!0,touch:!1}},locale:"en",maxHeight:800,displayMode:"inline",safeArea:{insets:{top:0,bottom:0,left:0,right:0}},toolInput:{},toolOutput:null,toolResponseMetadata:null,widgetState:null},B={...ce};function j(e){typeof window>"u"||window.openai||(B={...ce,toolOutput:e??null},window.openai={...B,requestDisplayMode:async({mode:t})=>(N("displayMode",t),{mode:t}),callTool:async(t,n)=>(console.log(`[DevMode] callTool: ${t}`,n),{result:JSON.stringify({mock:!0,tool:t,args:n})}),sendFollowUpMessage:async({prompt:t})=>{console.log(`[DevMode] sendFollowUpMessage: ${t}`)},openExternal:({href:t})=>{console.log(`[DevMode] openExternal: ${t}`),window.open(t,"_blank")},setWidgetState:async t=>{N("widgetState",t)}},window.dispatchEvent(new P({globals:B})))}function N(e,t){typeof window>"u"||!window.openai||(B[e]=t,window.openai[e]=t,window.dispatchEvent(new P({globals:{[e]:t}})))}function X(){return{...B}}function K(e){N("toolOutput",e)}function z(e){N("displayMode",e)}function G(e){N("theme",e)}import{Fragment as re,jsx as s,jsxs as v}from"react/jsx-runtime";var J=150;function ue({className:e}){return v("svg",{className:e,viewBox:"0 0 24 24",fill:"none",role:"img","aria-label":"Dev Controls",children:[s("rect",{x:"4",y:"4",width:"10",height:"10",rx:"2",stroke:"currentColor",strokeWidth:"1.5"}),s("rect",{x:"10",y:"10",width:"10",height:"10",rx:"2",stroke:"currentColor",strokeWidth:"1.5",fill:"currentColor",fillOpacity:"0.15"})]})}function Ge({className:e}){return s("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:s("path",{d:"M18 6L6 18M6 6l12 12"})})}function Ve({className:e}){return s("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:s("rect",{x:"2",y:"4",width:"12",height:"8",rx:"1.5",stroke:"currentColor",strokeWidth:"1.25"})})}function Ye({className:e}){return v("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:[s("rect",{x:"1.5",y:"3",width:"13",height:"10",rx:"1.5",stroke:"currentColor",strokeWidth:"1.25"}),s("rect",{x:"8.5",y:"7",width:"5",height:"4",rx:"0.75",fill:"currentColor"})]})}function $e({className:e}){return s("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:s("path",{d:"M2 5.5V3.5C2 2.95 2.45 2.5 3 2.5H5.5M10.5 2.5H13C13.55 2.5 14 2.95 14 3.5V5.5M14 10.5V12.5C14 13.05 13.55 13.5 13 13.5H10.5M5.5 13.5H3C2.45 13.5 2 13.05 2 12.5V10.5",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})})}function Xe({className:e}){return v("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:[s("circle",{cx:"8",cy:"8",r:"2.5",stroke:"currentColor",strokeWidth:"1.25"}),s("path",{d:"M8 2v1.5M8 12.5V14M2 8h1.5M12.5 8H14M4.11 4.11l1.06 1.06M10.83 10.83l1.06 1.06M4.11 11.89l1.06-1.06M10.83 5.17l1.06-1.06",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round"})]})}function Je({className:e}){return s("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:s("path",{d:"M13.5 9.5a5.5 5.5 0 01-7-7 5.5 5.5 0 107 7z",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})})}function qe({className:e}){return v("svg",{"aria-hidden":"true",className:e,viewBox:"0 0 16 16",fill:"none",children:[s("path",{d:"M2.5 8a5.5 5.5 0 019.37-3.9M13.5 8a5.5 5.5 0 01-9.37 3.9",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round"}),s("path",{d:"M12.5 2v3h-3M3.5 14v-3h3",stroke:"currentColor",strokeWidth:"1.25",strokeLinecap:"round",strokeLinejoin:"round"})]})}var Ze=`
|
|
3
3
|
@keyframes devPanelSlideIn {
|
|
4
4
|
0% {
|
|
5
5
|
opacity: 0;
|
|
@@ -47,22 +47,22 @@ import{a as j}from"../chunk-DGSC74SV.js";import{b as W}from"../chunk-ZUGQBRJF.js
|
|
|
47
47
|
.dev-json-editor::-webkit-scrollbar-thumb:hover {
|
|
48
48
|
background: rgba(255, 255, 255, 0.15);
|
|
49
49
|
}
|
|
50
|
-
`;function
|
|
50
|
+
`;function ge({defaultProps:e,widgetPaths:t,children:n}){let[r,o]=E(!1),[d,f]=E(!1);return F(()=>{if(new URLSearchParams(window.location.search).get("platform")==="mcp-apps"){o(!0);return}if(t&&t.length>0){let p=window.location.pathname,i=t.some(l=>p===l||p.startsWith(`${l}/`));f(i),i&&j(e)}else j(e),f(!0);o(!0)},[e,t]),r?d?v(re,{children:[s(Qe,{children:n}),s(et,{defaultProps:e})]}):s(re,{children:n}):null}function Qe({children:e}){return s("div",{className:"min-h-screen bg-[#212121] flex items-center justify-center p-8",children:s("div",{className:"relative w-full max-w-md overflow-hidden rounded-2xl sm:rounded-3xl border border-[#414141]",style:{boxShadow:"0px 0px 0px 1px #414141, 0px 4px 14px rgba(0,0,0,0.24)"},children:e})})}function pe({options:e,value:t,onChange:n}){let r=e.findIndex(o=>o.value===t);return v("div",{className:"relative flex p-0.5 rounded-lg",style:{background:"rgba(255, 255, 255, 0.04)",border:"1px solid rgba(255, 255, 255, 0.06)"},children:[s("div",{className:"absolute top-0.5 bottom-0.5 rounded-md transition-transform duration-150 ease-out",style:{width:`calc(${100/e.length}% - 2px)`,left:"2px",transform:`translateX(calc(${r*100}% + ${r*2}px))`,background:"rgba(255, 255, 255, 0.1)"}}),e.map(o=>v("button",{type:"button",onClick:()=>n(o.value),className:`
|
|
51
51
|
relative z-10 flex-1 flex items-center justify-center gap-1.5 px-2 py-1.5
|
|
52
52
|
text-xs font-medium rounded-md transition-colors duration-150
|
|
53
|
-
${t===
|
|
54
|
-
`,children:[
|
|
53
|
+
${t===o.value?"text-white":"text-gray-400 hover:text-gray-300"}
|
|
54
|
+
`,children:[o.icon,s("span",{className:"capitalize",children:o.label})]},o.value))]})}function et({defaultProps:e}){let[t,n]=E(()=>typeof window>"u"?!1:localStorage.getItem("dev-controls-open")==="true"),[r,o]=E(!1),[d,f]=E(t),[m,p]=E("inline"),[i,l]=E("dark"),[a,h]=E(!1),[A,O]=E(()=>JSON.stringify(e??{},null,2)),[M,I]=E(null),C=oe(null),D=oe(null),T=oe(null);F(()=>{let g=X();p(g.displayMode),l(g.theme)},[]),F(()=>{typeof window>"u"||(window.openai||(window.openai={}),window.openai.safeArea={insets:{top:0,bottom:a?J:0,left:0,right:0}},window.dispatchEvent(new P({globals:{safeArea:window.openai.safeArea}})))},[a]),F(()=>{localStorage.setItem("dev-controls-open",String(t))},[t]);let k=_(()=>{f(!0),requestAnimationFrame(()=>{n(!0)})},[]),u=_(()=>{o(!0),n(!1),setTimeout(()=>{f(!1),o(!1)},150)},[]),c=_(()=>{t?u():k()},[t,k,u]);F(()=>{let g=S=>{(S.metaKey||S.ctrlKey)&&S.shiftKey&&S.key==="d"&&(S.preventDefault(),c()),S.key==="Escape"&&t&&u()};return window.addEventListener("keydown",g),()=>window.removeEventListener("keydown",g)},[t,c,u]),F(()=>{if(!t)return;let g=S=>{T.current&&!T.current.contains(S.target)&&u()};return document.addEventListener("mousedown",g),()=>document.removeEventListener("mousedown",g)},[t,u]);let y=_(g=>{p(g),z(g)},[]),b=_(g=>{l(g),G(g)},[]),x=_(g=>{try{let S=JSON.parse(g);I(null),K(S)}catch{I("Invalid JSON")}},[]),ne=_(g=>{O(g),C.current&&clearTimeout(C.current),C.current=setTimeout(()=>{x(g)},500)},[x]),H=_(()=>{C.current&&clearTimeout(C.current),x(A)},[x,A]),He=_(()=>{let g=JSON.stringify(e??{},null,2);O(g),I(null),K(e??{}),p("inline"),z("inline"),l("dark"),G("dark")},[e]),Pe=[{value:"inline",label:"inline",icon:s(Ve,{className:"w-3.5 h-3.5"})},{value:"pip",label:"pip",icon:s(Ye,{className:"w-3.5 h-3.5"})},{value:"fullscreen",label:"full",icon:s($e,{className:"w-3.5 h-3.5"})}],Be=[{value:"light",label:"light",icon:s(Xe,{className:"w-3.5 h-3.5"})},{value:"dark",label:"dark",icon:s(Je,{className:"w-3.5 h-3.5"})}];return v(re,{children:[s("style",{dangerouslySetInnerHTML:{__html:Ze}}),v("div",{ref:T,className:"fixed bottom-4 right-4 z-[9999] font-['Inter',_system-ui,_sans-serif]",children:[v("button",{type:"button",onClick:c,className:"group relative flex items-center justify-center w-11 h-11 rounded-xl transition-all duration-200 ease-out hover:scale-105 active:scale-95",style:{background:"rgba(14, 14, 16, 0.95)",backdropFilter:"blur(16px)",WebkitBackdropFilter:"blur(16px)",border:"1px solid rgba(255, 255, 255, 0.08)",boxShadow:`
|
|
55
55
|
0 4px 12px rgba(0, 0, 0, 0.4),
|
|
56
56
|
0 0 0 1px rgba(255, 255, 255, 0.05),
|
|
57
57
|
inset 0 1px 0 rgba(255, 255, 255, 0.04)
|
|
58
|
-
`},"aria-label":"Toggle Dev Controls","aria-expanded":t,children:[
|
|
58
|
+
`},"aria-label":"Toggle Dev Controls","aria-expanded":t,children:[s(ue,{className:`w-5 h-5 transition-all duration-200 ${t?"text-indigo-400 scale-110":"text-gray-300 group-hover:text-white"}`}),s("div",{className:"absolute inset-0 rounded-xl opacity-0 group-hover:opacity-100 transition-opacity duration-200 pointer-events-none",style:{background:"radial-gradient(circle at center, rgba(99, 102, 241, 0.15) 0%, transparent 70%)"}})]}),d&&v("div",{ref:D,className:`absolute bottom-14 right-0 w-80 ${t&&!r?"dev-panel-enter":"dev-panel-exit"}`,style:{maxHeight:"calc(100vh - 120px)",background:"rgba(14, 14, 16, 0.92)",backdropFilter:"blur(24px)",WebkitBackdropFilter:"blur(24px)",border:"1px solid rgba(255, 255, 255, 0.06)",borderRadius:"16px",boxShadow:`
|
|
59
59
|
0 25px 50px -12px rgba(0, 0, 0, 0.6),
|
|
60
60
|
0 0 0 1px rgba(255, 255, 255, 0.05),
|
|
61
61
|
inset 0 1px 0 rgba(255, 255, 255, 0.04)
|
|
62
|
-
`},children:[d("div",{className:"flex items-center justify-between px-4 py-3",style:{borderBottom:"1px solid rgba(255, 255, 255, 0.06)"},children:[d("div",{className:"flex items-center gap-2",children:[o(Y,{className:"w-4 h-4 text-gray-400"}),o("span",{className:"text-sm font-medium text-white",children:"Dev Controls"})]}),d("div",{className:"flex items-center gap-2",children:[o("span",{className:"text-[10px] font-medium text-gray-500 px-1.5 py-0.5 rounded",style:{background:"rgba(255, 255, 255, 0.04)",border:"1px solid rgba(255, 255, 255, 0.06)"},children:typeof navigator<"u"&&navigator.platform?.includes("Mac")?"\u2318\u21E7D":"Ctrl+Shift+D"}),o("button",{type:"button",onClick:M,className:"p-1 rounded-md text-gray-500 hover:text-gray-300 hover:bg-white/5 transition-colors",children:o(Oe,{className:"w-4 h-4"})})]})]}),d("div",{className:"p-4 space-y-5 overflow-y-auto",style:{maxHeight:"calc(100vh - 200px)"},children:[d("div",{children:[o("label",{htmlFor:"display-mode",className:"text-[11px] font-medium uppercase tracking-wider text-gray-500 block mb-2",children:"Display Mode"}),o(X,{options:Te,value:w,onChange:be})]}),d("div",{children:[o("label",{htmlFor:"theme",className:"text-[11px] font-medium uppercase tracking-wider text-gray-500 block mb-2",children:"Theme"}),o(X,{options:Se,value:n,onChange:ve})]}),d("div",{children:[o("label",{htmlFor:"safe-area",className:"text-[11px] font-medium uppercase tracking-wider text-gray-500 block mb-2",children:"Safe Area (Chat Input)"}),d("button",{type:"button",onClick:()=>g(!r),className:`w-full flex items-center justify-between px-3 py-2.5 rounded-lg text-xs font-medium transition-all duration-150 ${r?"text-emerald-400":"text-gray-400"}`,style:{background:r?"rgba(34, 197, 94, 0.1)":"rgba(255, 255, 255, 0.04)",border:r?"1px solid rgba(34, 197, 94, 0.3)":"1px solid rgba(255, 255, 255, 0.06)"},children:[o("span",{children:"Mock ChatGPT Input Bar"}),o("span",{className:`px-2 py-0.5 rounded text-[10px] font-semibold ${r?"bg-emerald-500/20 text-emerald-400":"bg-gray-500/20 text-gray-500"}`,children:r?"ON":"OFF"})]}),r&&d("p",{className:"text-[10px] text-gray-500 mt-1.5",children:["bottom: ",B,"px"]})]}),d("div",{children:[o("label",{htmlFor:"widget-props",className:"text-[11px] font-medium uppercase tracking-wider text-gray-500 block mb-2",children:"Widget Props"}),o("textarea",{value:R,onChange:i=>ke(i.target.value),onBlur:Me,className:"dev-json-editor w-full min-h-[160px] text-xs text-gray-200 p-3 rounded-lg resize-none focus:outline-none transition-colors",style:{background:"rgba(0, 0, 0, 0.3)",border:x?"1px solid rgba(239, 68, 68, 0.5)":"1px solid rgba(255, 255, 255, 0.06)",fontFamily:"'JetBrains Mono', 'SF Mono', 'Fira Code', monospace",lineHeight:1.6},onFocus:i=>{x||(i.target.style.borderColor="rgba(99, 102, 241, 0.5)")},onBlurCapture:i=>{x||(i.target.style.borderColor="rgba(255, 255, 255, 0.06)")},spellCheck:!1}),x&&d("p",{className:"text-red-400 text-[11px] mt-1.5 flex items-center gap-1",children:[o("svg",{"aria-hidden":"true","aria-label":"Error",className:"w-3 h-3",viewBox:"0 0 16 16",fill:"currentColor",children:o("path",{d:"M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zM7 4.5h2v4H7v-4zm0 5h2v2H7v-2z"})}),x]})]}),d("button",{type:"button",onClick:Ce,className:"w-full flex items-center justify-center gap-2 px-3 py-2 rounded-lg text-xs font-medium text-gray-400 transition-all duration-150 hover:text-gray-200",style:{background:"rgba(255, 255, 255, 0.04)",border:"1px solid rgba(255, 255, 255, 0.06)"},onMouseEnter:i=>{i.currentTarget.style.background="rgba(255, 255, 255, 0.08)",i.currentTarget.style.borderColor="rgba(255, 255, 255, 0.1)"},onMouseLeave:i=>{i.currentTarget.style.background="rgba(255, 255, 255, 0.04)",i.currentTarget.style.borderColor="rgba(255, 255, 255, 0.06)"},children:[o(Ue,{className:"w-3.5 h-3.5"}),"Reset to Defaults"]})]})]})]}),r&&d("div",{className:"fixed bottom-0 left-0 right-0 z-[9998] flex items-center justify-center pointer-events-none",style:{height:`${B}px`,background:"linear-gradient(to top, #1a1a1a 0%, #1a1a1a 80%, transparent 100%)"},children:[d("div",{className:"w-full max-w-2xl mx-4 px-4 py-3 rounded-2xl bg-[#2f2f2f] border border-[#424242] flex items-center gap-3",children:[o("div",{className:"w-8 h-8 rounded-full bg-[#424242] flex items-center justify-center",children:o("svg",{"aria-hidden":"true",className:"w-4 h-4 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:o("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 4v16m8-8H4"})})}),o("div",{className:"flex-1 text-gray-400 text-sm",children:"Ask me anything..."}),o("div",{className:"w-8 h-8 rounded-full bg-[#424242] flex items-center justify-center",children:o("svg",{"aria-hidden":"true",className:"w-4 h-4 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:o("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 11a7 7 0 01-7 7m0 0a7 7 0 01-7-7m7 7v4m0 0H8m4 0h4m-4-8a3 3 0 01-3-3V5a3 3 0 116 0v6a3 3 0 01-3 3z"})})})]}),d("div",{className:"absolute bottom-1 text-[10px] text-gray-600 font-mono",children:["Mock SafeArea: bottom=",B,"px"]})]})]})}import{useCallback as Be}from"react";import F,{createContext as je,useCallback as ee,useContext as _e,useEffect as te,useState as q,useSyncExternalStore as Ke}from"react";async function Z(){let{detectPlatform:e}=await import("../platform-GKYYQBCS.js");if(e()==="openai"){let{OpenAIWidgetClient:a}=await import("../openai-client-MVV4KJUO.js");return new a}else{let{MCPAppsWidgetClient:a}=await import("../mcp-apps-client-Z62VBB36.js");return new a}}var oe=je(null);function ne({children:e,loading:t=null,onError:a}){let[c,u]=q(null),[m,f]=q(null),[w,p]=q(!0);return te(()=>{let n=!0,s=null;async function r(){try{let g=await Z();await g.connect(),n?(s=g,u(g),p(!1)):g.close()}catch(g){n&&(console.error("error",g),f(g instanceof Error?g:new Error(String(g))),p(!1))}}return r(),()=>{n=!1,s?.close()}},[]),te(()=>{if(!c)return;let n=s=>{document.documentElement.classList.toggle("dark",s==="dark")};return n(c.getTheme()),c.onThemeChange(n)},[c]),m&&a?F.createElement(F.Fragment,null,a(m)):w||!c?F.createElement(F.Fragment,null,t):F.createElement(oe.Provider,{value:c},e)}function l(e){let t=_e(oe);if(!t)throw new Error("useWidgetClient must be used within a WidgetProvider");let a=ee(m=>e==="toolOutput"?t.onToolResult(()=>m()):e==="theme"?t.onThemeChange(()=>m()):e==="displayMode"?t.onDisplayModeChange(()=>m()):e==="safeArea"?t.onSafeAreaChange(()=>m()):e==="maxHeight"?t.onMaxHeightChange(()=>m()):e==="toolResponseMetadata"?t.onToolResponseMetadataChange(()=>m()):e==="widgetState"?t.onWidgetStateChange(()=>m()):()=>{},[t,e]),c=ee(()=>e==="toolOutput"?t.getToolOutput():e==="theme"?t.getTheme():e==="displayMode"?t.getDisplayMode():e==="locale"?t.getLocale():e==="safeArea"?t.getSafeArea():e==="maxHeight"?t.getMaxHeight():e==="toolResponseMetadata"?t.getToolResponseMetadata():e==="widgetState"?t.getWidgetState():null,[t,e]),u=Ke(a,c,c);return e?u:t}function re(){let e=l();return Be((t,a)=>e.callTool(t,a),[e])}function ae(){return l("displayMode")}import{useCallback as ze,useRef as Ge,useState as ie}from"react";function z(){return l("toolOutput")}function se(e){if(!e?.__flow)return null;let t=e.__flow;return!t.flowId||!t.step||!t.state?null:t}function Je(e){let t=e.content?.find(a=>a.type==="text"&&a.text);if(!t?.text)return null;try{return JSON.parse(t.text)}catch{return null}}function le(e){let t=l(),a=z(),[c,u]=ie(null),[m,f]=ie(!1),w=Ge(null),p=c??a,n=p?se(p):null;n&&(w.current=n);let s=ze(async(g,R)=>{let N=j();if(console.log("platform",N),N==="openai"){t.sendFollowUp(R??g);return}let x=w.current;if(console.log("flowMeta",x),!!x){f(!0);try{let h=await t.callTool(x.flowId,{action:"widget_result",step:x.step,state:x.state,answer:g}),v=Je(h);if(!v)return;if(v.status==="widget"&&v.widgetId===e&&h.structuredContent){let U=se(h.structuredContent);U&&(w.current=U);let{__flow:L,...P}=h.structuredContent;u(P)}}catch(h){console.error("useFlowAction: callTool failed",h)}finally{f(!1)}}},[t,e]);return{data:c??a,advance:s,isAdvancing:m}}import{useSyncExternalStore as $e}from"react";function de(){return $e(()=>()=>{},()=>typeof window>"u"?!1:window.__isChatGptApp===!0,()=>!1)}function ce(){return l("locale")}function ue(){return l("maxHeight")}import{useCallback as qe}from"react";function pe(){let e=l();return qe(t=>e.openExternal(t),[e])}import{useCallback as Ve}from"react";function ge(){let e=l();return Ve(t=>e.requestDisplayMode(t),[e])}function me(){return l("safeArea")}import{useCallback as Ye}from"react";function fe(){let e=l();return Ye(t=>e.sendFollowUp(t),[e])}function we(){return l("theme")}function xe(){return l("toolResponseMetadata")}import{useCallback as Xe,useEffect as Qe,useState as Ze}from"react";function he(e){let t=l("widgetState"),[a,c]=Ze(()=>t??(typeof e=="function"?e():e??null));Qe(()=>{c(t)},[t]);let u=Xe(m=>{c(f=>{let w=typeof m=="function"?m(f):m;return j()==="openai"&&w!=null&&window.openai?.setWidgetState(w),w})},[]);return[a,u]}import{jsx as T,jsxs as ye}from"react/jsx-runtime";var et=()=>ye("div",{className:"flex flex-col items-center justify-center h-full min-h-[120px] gap-4",children:[ye("div",{className:"flex gap-2",children:[T("div",{className:"w-3 h-3 rounded-full bg-gradient-to-r from-blue-400 to-cyan-400 animate-bounce [animation-delay:-0.3s]"}),T("div",{className:"w-3 h-3 rounded-full bg-gradient-to-r from-cyan-400 to-teal-400 animate-bounce [animation-delay:-0.15s]"}),T("div",{className:"w-3 h-3 rounded-full bg-gradient-to-r from-teal-400 to-emerald-400 animate-bounce"})]}),T("p",{className:"text-sm font-medium text-transparent bg-clip-text bg-gradient-to-r from-slate-400 via-slate-200 to-slate-400 bg-[length:200%_100%] animate-[shimmer_1.5s_ease-in-out_infinite]",children:"Loading widget..."}),T("div",{className:"absolute inset-0 flex items-center justify-center pointer-events-none",children:T("div",{className:"w-16 h-16 rounded-full border-2 border-blue-400/20 animate-ping"})}),T("style",{children:`
|
|
62
|
+
`},children:[v("div",{className:"flex items-center justify-between px-4 py-3",style:{borderBottom:"1px solid rgba(255, 255, 255, 0.06)"},children:[v("div",{className:"flex items-center gap-2",children:[s(ue,{className:"w-4 h-4 text-gray-400"}),s("span",{className:"text-sm font-medium text-white",children:"Dev Controls"})]}),v("div",{className:"flex items-center gap-2",children:[s("span",{className:"text-[10px] font-medium text-gray-500 px-1.5 py-0.5 rounded",style:{background:"rgba(255, 255, 255, 0.04)",border:"1px solid rgba(255, 255, 255, 0.06)"},children:typeof navigator<"u"&&navigator.platform?.includes("Mac")?"\u2318\u21E7D":"Ctrl+Shift+D"}),s("button",{type:"button",onClick:u,className:"p-1 rounded-md text-gray-500 hover:text-gray-300 hover:bg-white/5 transition-colors",children:s(Ge,{className:"w-4 h-4"})})]})]}),v("div",{className:"p-4 space-y-5 overflow-y-auto",style:{maxHeight:"calc(100vh - 200px)"},children:[v("div",{children:[s("label",{htmlFor:"display-mode",className:"text-[11px] font-medium uppercase tracking-wider text-gray-500 block mb-2",children:"Display Mode"}),s(pe,{options:Pe,value:m,onChange:y})]}),v("div",{children:[s("label",{htmlFor:"theme",className:"text-[11px] font-medium uppercase tracking-wider text-gray-500 block mb-2",children:"Theme"}),s(pe,{options:Be,value:i,onChange:b})]}),v("div",{children:[s("label",{htmlFor:"safe-area",className:"text-[11px] font-medium uppercase tracking-wider text-gray-500 block mb-2",children:"Safe Area (Chat Input)"}),v("button",{type:"button",onClick:()=>h(!a),className:`w-full flex items-center justify-between px-3 py-2.5 rounded-lg text-xs font-medium transition-all duration-150 ${a?"text-emerald-400":"text-gray-400"}`,style:{background:a?"rgba(34, 197, 94, 0.1)":"rgba(255, 255, 255, 0.04)",border:a?"1px solid rgba(34, 197, 94, 0.3)":"1px solid rgba(255, 255, 255, 0.06)"},children:[s("span",{children:"Mock ChatGPT Input Bar"}),s("span",{className:`px-2 py-0.5 rounded text-[10px] font-semibold ${a?"bg-emerald-500/20 text-emerald-400":"bg-gray-500/20 text-gray-500"}`,children:a?"ON":"OFF"})]}),a&&v("p",{className:"text-[10px] text-gray-500 mt-1.5",children:["bottom: ",J,"px"]})]}),v("div",{children:[s("label",{htmlFor:"widget-props",className:"text-[11px] font-medium uppercase tracking-wider text-gray-500 block mb-2",children:"Widget Props"}),s("textarea",{value:A,onChange:g=>ne(g.target.value),onBlur:H,className:"dev-json-editor w-full min-h-[160px] text-xs text-gray-200 p-3 rounded-lg resize-none focus:outline-none transition-colors",style:{background:"rgba(0, 0, 0, 0.3)",border:M?"1px solid rgba(239, 68, 68, 0.5)":"1px solid rgba(255, 255, 255, 0.06)",fontFamily:"'JetBrains Mono', 'SF Mono', 'Fira Code', monospace",lineHeight:1.6},onFocus:g=>{M||(g.target.style.borderColor="rgba(99, 102, 241, 0.5)")},onBlurCapture:g=>{M||(g.target.style.borderColor="rgba(255, 255, 255, 0.06)")},spellCheck:!1}),M&&v("p",{className:"text-red-400 text-[11px] mt-1.5 flex items-center gap-1",children:[s("svg",{"aria-hidden":"true","aria-label":"Error",className:"w-3 h-3",viewBox:"0 0 16 16",fill:"currentColor",children:s("path",{d:"M8 1.5a6.5 6.5 0 100 13 6.5 6.5 0 000-13zM7 4.5h2v4H7v-4zm0 5h2v2H7v-2z"})}),M]})]}),v("button",{type:"button",onClick:He,className:"w-full flex items-center justify-center gap-2 px-3 py-2 rounded-lg text-xs font-medium text-gray-400 transition-all duration-150 hover:text-gray-200",style:{background:"rgba(255, 255, 255, 0.04)",border:"1px solid rgba(255, 255, 255, 0.06)"},onMouseEnter:g=>{g.currentTarget.style.background="rgba(255, 255, 255, 0.08)",g.currentTarget.style.borderColor="rgba(255, 255, 255, 0.1)"},onMouseLeave:g=>{g.currentTarget.style.background="rgba(255, 255, 255, 0.04)",g.currentTarget.style.borderColor="rgba(255, 255, 255, 0.06)"},children:[s(qe,{className:"w-3.5 h-3.5"}),"Reset to Defaults"]})]})]})]}),a&&v("div",{className:"fixed bottom-0 left-0 right-0 z-[9998] flex items-center justify-center pointer-events-none",style:{height:`${J}px`,background:"linear-gradient(to top, #1a1a1a 0%, #1a1a1a 80%, transparent 100%)"},children:[v("div",{className:"w-full max-w-2xl mx-4 px-4 py-3 rounded-2xl bg-[#2f2f2f] border border-[#424242] flex items-center gap-3",children:[s("div",{className:"w-8 h-8 rounded-full bg-[#424242] flex items-center justify-center",children:s("svg",{"aria-hidden":"true",className:"w-4 h-4 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:s("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 4v16m8-8H4"})})}),s("div",{className:"flex-1 text-gray-400 text-sm",children:"Ask me anything..."}),s("div",{className:"w-8 h-8 rounded-full bg-[#424242] flex items-center justify-center",children:s("svg",{"aria-hidden":"true",className:"w-4 h-4 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:s("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 11a7 7 0 01-7 7m0 0a7 7 0 01-7-7m7 7v4m0 0H8m4 0h4m-4-8a3 3 0 01-3-3V5a3 3 0 116 0v6a3 3 0 01-3 3z"})})})]}),v("div",{className:"absolute bottom-1 text-[10px] text-gray-600 font-mono",children:["Mock SafeArea: bottom=",J,"px"]})]})]})}import{useCallback as rt}from"react";import V,{createContext as tt,useCallback as me,useContext as nt,useEffect as he,useState as ie,useSyncExternalStore as ot}from"react";async function fe(){let{detectPlatform:e}=await import("../platform-GKYYQBCS.js");if(e()==="openai"){let{OpenAIWidgetClient:n}=await import("../openai-client-HLQSYZJC.js");return new n}else{let{MCPAppsWidgetClient:n}=await import("../mcp-apps-client-6WEBHSGH.js");return new n}}var q=tt(null);function we({children:e,loading:t=null,onError:n}){let[r,o]=ie(null),[d,f]=ie(null),[m,p]=ie(!0);return he(()=>{let i=!0,l=null;async function a(){try{let h=await fe();await h.connect(),i?(l=h,o(h),p(!1)):h.close()}catch(h){i&&(console.error("error",h),f(h instanceof Error?h:new Error(String(h))),p(!1))}}return a(),()=>{i=!1,l?.close()}},[]),he(()=>{if(!r)return;let i=l=>{document.documentElement.classList.toggle("dark",l==="dark"),document.documentElement.style.colorScheme=l==="dark"?"dark":"auto"};return i(r.getTheme()),r.onThemeChange(i)},[r]),d&&n?V.createElement(V.Fragment,null,n(d)):m||!r?V.createElement(V.Fragment,null,t):V.createElement(q.Provider,{value:r},e)}function w(e){let t=nt(q);if(!t)throw new Error("useWidgetClient must be used within a WidgetProvider");let n=me(d=>e==="toolOutput"?t.onToolResult(()=>d()):e==="theme"?t.onThemeChange(()=>d()):e==="displayMode"?t.onDisplayModeChange(()=>d()):e==="safeArea"?t.onSafeAreaChange(()=>d()):e==="maxHeight"?t.onMaxHeightChange(()=>d()):e==="toolResponseMetadata"?t.onToolResponseMetadataChange(()=>d()):e==="widgetState"?t.onWidgetStateChange(()=>d()):()=>{},[t,e]),r=me(()=>e==="toolOutput"?t.getToolOutput():e==="theme"?t.getTheme():e==="displayMode"?t.getDisplayMode():e==="locale"?t.getLocale():e==="safeArea"?t.getSafeArea():e==="maxHeight"?t.getMaxHeight():e==="toolResponseMetadata"?t.getToolResponseMetadata():e==="widgetState"?t.getWidgetState():null,[t,e]),o=ot(n,r,r);return e?o:t}function ve(){let e=w();return rt((t,n)=>e.callTool(t,n),[e])}function ye(){return w("displayMode")}import{useCallback as it,useRef as st,useState as se}from"react";function Z(){return w("toolOutput")}function Q(){return w("toolResponseMetadata")}function xe(e){if(!e?.flow)return null;let t=e.flow;return!t.flowId||!t.step||!t.state?null:t}function at(e){let t=(e.content??[]).filter(n=>n.type==="text").map(n=>n.text).join("").trim();if(!t)return null;try{return JSON.parse(t)}catch{return null}}function be(e){let t=w(),n=Z(),r=Q(),[o,d]=se(null),[f,m]=se(null),[p,i]=se(!1),l=st(null),a=f??r,h=a?xe(a):null;h&&(l.current=h);let A=it(async(M,I,C)=>{if(Y()==="openai"){t.sendFollowUp(I??M);return}let T=l.current;if(T){i(!0);try{let k=await t.callTool(T.flowId,{action:"widget_result",_meta:{flow:{step:T.step,state:T.state}},answer:M,...C?{stateUpdates:C}:{}}),u=at(k);if(!u)return;if(u.status==="widget"&&k.structuredContent){let c=xe(k._meta);c?.widgetId===e&&(l.current=c,d(k.structuredContent),k._meta&&m(k._meta))}}catch(k){console.error("useFlowAction: callTool failed",k)}finally{i(!1)}}},[t,e]);return{data:o??n,advance:A,isAdvancing:p}}import{useSyncExternalStore as lt}from"react";function ke(){return lt(()=>()=>{},()=>typeof window>"u"?!1:window.__isChatGptApp===!0,()=>!1)}function Me(){return w("locale")}function Ce(){return w("maxHeight")}import{useCallback as dt}from"react";function Te(){let e=w();return dt(t=>e.openExternal(t),[e])}import{useCallback as ct}from"react";function Se(){let e=w();return ct(t=>e.requestDisplayMode(t),[e])}function Ee(){return w("safeArea")}import{useCallback as ut}from"react";function Re(){let e=w();return ut(t=>e.sendFollowUp(t),[e])}function _e(){return w("theme")}import{useContext as mt,useEffect as le,useMemo as ht,useRef as wt,useState as Le}from"react";function pt(){return crypto.randomUUID()}function R(e,t,n){return{event_id:pt(),event_type:t,timestamp:new Date().toISOString(),source:"widget",session_id:e.sessionId,trace_id:e.traceId,...n}}function We(e){let t=e.trim().split(/\s+/),n=t[0]||"",r={};for(let o=1;o<t.length;o++){let d=t[o].indexOf(":");if(d===-1)continue;let f=t[o].slice(0,d),m=t[o].slice(d+1),p=Number(m);r[f]=Number.isFinite(p)&&m!==""?p:m}return{name:n,props:r}}function Ae(e){let t=e.tagName.toLowerCase();return t==="input"||t==="textarea"||t==="select"}function Ie(e,t){let n=[],r=typeof navigator<"u"?navigator:void 0,o=r&&"connection"in r?r.connection:void 0;t([R(e,"widget_render",{metadata:{viewport_width:window.innerWidth,viewport_height:window.innerHeight,device_pixel_ratio:window.devicePixelRatio??1,touch_support:"ontouchstart"in window?1:0,connection_type:o?.effectiveType??"unknown",timezone:Intl.DateTimeFormat().resolvedOptions().timeZone}})]);let d=u=>{t([R(e,"widget_error",{metadata:{error_message:u.message,error_stack:(u.error?.stack??"").slice(0,1024),error_source:u.filename??"unknown"}})])};window.addEventListener("error",d),n.push(()=>window.removeEventListener("error",d));let f=u=>{let c=u.reason,y=c instanceof Error?c.message:String(c),b=c instanceof Error?(c.stack??"").slice(0,1024):"";t([R(e,"widget_error",{metadata:{error_message:y,error_stack:b,error_source:"unhandledrejection"}})])};window.addEventListener("unhandledrejection",f),n.push(()=>window.removeEventListener("unhandledrejection",f));let m=u=>{let c=u.target;t([R(e,"widget_click",{metadata:{target_tag:c?.tagName?.toLowerCase()??"unknown",target_id:c?.id||void 0,target_class:c?.className||void 0,click_x:u.clientX,click_y:u.clientY}})])};document.addEventListener("click",m,{capture:!0}),n.push(()=>document.removeEventListener("click",m,{capture:!0}));let p=u=>{let y=u.target?.closest?.("[data-ww-conversion]");if(!y)return;let{name:b,props:x}=We(y.getAttribute("data-ww-conversion")||"");b&&t([R(e,"conversion",{event_name:b,conversion_value:typeof x.value=="number"?x.value:0,conversion_currency:typeof x.currency=="string"?x.currency:"USD",metadata:Object.keys(x).length>0?x:void 0})])};document.addEventListener("click",p,{capture:!0}),n.push(()=>document.removeEventListener("click",p,{capture:!0}));let i=0,l=u=>{let y=u.target?.closest?.("[data-ww-step]");if(!y)return;let{name:b,props:x}=We(y.getAttribute("data-ww-step")||"");b&&(i++,t([R(e,"step",{event_name:b,step_sequence:i,metadata:Object.keys(x).length>0?x:void 0})]))};document.addEventListener("click",l,{capture:!0}),n.push(()=>document.removeEventListener("click",l,{capture:!0}));let a=u=>{let c=u.target?.closest?.("a");if(!c)return;let y=c.getAttribute("href")??"",b=y.startsWith("http")&&!y.startsWith(window.location.origin);t([R(e,"widget_link_click",{metadata:{href:y,link_text:(c.textContent??"").slice(0,200),is_external:b}})])};document.addEventListener("click",a,{capture:!0}),n.push(()=>document.removeEventListener("click",a,{capture:!0}));let h=null,A=window.scrollY||0,O=()=>{h||(h=setTimeout(()=>{h=null;let u=window.scrollY||document.documentElement.scrollTop,c=document.documentElement.scrollHeight-document.documentElement.clientHeight,y=c>0?Math.round(u/c*100):0,b=u>=A?"down":"up";A=u,t([R(e,"widget_scroll",{metadata:{scroll_depth_pct:y,scroll_direction:b,viewport_height:window.innerHeight}})])},250))};window.addEventListener("scroll",O,{passive:!0}),n.push(()=>{window.removeEventListener("scroll",O),h&&clearTimeout(h)});let M=new WeakMap,I=u=>{let c=u.target;!c||!Ae(c)||M.set(c,Date.now())},C=u=>{let c=u.target;if(!c||!Ae(c))return;let y=M.get(c),b=y?Date.now()-y:0,x=c;t([R(e,"widget_form_field",{metadata:{field_name:x.name||x.id||void 0,field_type:x.type||c.tagName.toLowerCase(),time_in_field_ms:b,filled:!!x.value}})])};document.addEventListener("focusin",I,{capture:!0}),document.addEventListener("focusout",C,{capture:!0}),n.push(()=>{document.removeEventListener("focusin",I,{capture:!0}),document.removeEventListener("focusout",C,{capture:!0})});let D=new WeakMap,T=u=>{let y=u.target?.closest?.("form");y&&!D.has(y)&&D.set(y,Date.now())};document.addEventListener("focusin",T,{capture:!0}),n.push(()=>document.removeEventListener("focusin",T,{capture:!0}));let k=u=>{let c=u.target,y=c?D.get(c):void 0,b=0;if(c){let x=c.querySelectorAll("input, textarea, select");for(let ne of x){let H=ne;(H.validity&&!H.validity.valid||H.getAttribute("aria-invalid")==="true")&&b++}}t([R(e,"widget_form_submit",{metadata:{form_id:c?.id||void 0,time_to_submit_ms:y?Date.now()-y:void 0,validation_errors:b}})])};return document.addEventListener("submit",k,{capture:!0}),n.push(()=>document.removeEventListener("submit",k,{capture:!0})),()=>{for(let u of n)u()}}var gt="@waniwani/sdk";function ft(e){let n=e.event_type.startsWith("widget_")?e.event_type:`widget_${e.event_type}`,r={};e.session_id&&(r.sessionId=e.session_id),e.trace_id&&(r.traceId=e.trace_id),e.user_id&&(r.externalUserId=e.user_id);let o={...e.metadata??{}};return e.event_name&&(o.event_name=e.event_name),{id:e.event_id,type:"mcp.event",name:n,source:e.source||"widget",timestamp:e.timestamp,correlation:r,properties:o,metadata:{}}}function ae(e){return JSON.stringify({sentAt:new Date().toISOString(),source:{sdk:gt,version:"0.1.0"},events:e.map(ft)})}var ee=class{buffer=[];timer=null;flushing=!1;pendingFlush=!1;stopped=!1;config;teardownVisibility=null;teardownPagehide=null;constructor(t){this.config=t,this.start(),this.registerTeardown()}send(t){if(!this.stopped){if(this.buffer.push(...t),this.buffer.length>200){let n=this.buffer.length-200;this.buffer.splice(0,n)}this.buffer.length>=20&&this.flush().catch(()=>{})}}async flush(){if(!(this.stopped||this.buffer.length===0)){if(this.flushing){this.pendingFlush=!0;return}this.flushing=!0;try{let t=this.buffer.splice(0,20);await this.sendBatch(t)}finally{this.flushing=!1,this.pendingFlush&&this.buffer.length>0&&!this.stopped&&(this.pendingFlush=!1,this.flush().catch(()=>{}))}}}stop(){this.stopped=!0,this.timer&&(clearInterval(this.timer),this.timer=null),typeof document<"u"&&this.teardownVisibility&&(document.removeEventListener("visibilitychange",this.teardownVisibility),this.teardownVisibility=null),typeof window<"u"&&this.teardownPagehide&&(window.removeEventListener("pagehide",this.teardownPagehide),this.teardownPagehide=null)}beaconFlush(){if(this.buffer.length===0)return;let t=[...this.buffer];this.buffer.length=0;let n={"Content-Type":"application/json"};if(this.config.token&&(n.Authorization=`Bearer ${this.config.token}`),typeof fetch<"u"){this.sendKeepAliveChunked(this.config.endpoint,t,n);return}typeof navigator<"u"&&typeof navigator.sendBeacon=="function"&&this.sendBeaconChunked(this.config.endpoint,t)}sendKeepAliveChunked(t,n,r){let o=ae(n);if(o.length<=6e4){fetch(t,{method:"POST",headers:r,body:o,keepalive:!0}).catch(()=>{});return}if(n.length<=1)return;let d=Math.ceil(n.length/2);this.sendKeepAliveChunked(t,n.slice(0,d),r),this.sendKeepAliveChunked(t,n.slice(d),r)}sendBeaconChunked(t,n){let r=ae(n);if(r.length<=6e4){navigator.sendBeacon(t,new Blob([r],{type:"application/json"}));return}if(n.length<=1)return;let o=Math.ceil(n.length/2);this.sendBeaconChunked(t,n.slice(0,o)),this.sendBeaconChunked(t,n.slice(o))}start(){this.timer||(this.timer=setInterval(()=>{this.flush().catch(()=>{})},5e3))}registerTeardown(){typeof document>"u"||(this.teardownVisibility=()=>{document.visibilityState==="hidden"&&this.beaconFlush()},this.teardownPagehide=()=>{this.beaconFlush()},document.addEventListener("visibilitychange",this.teardownVisibility),window.addEventListener("pagehide",this.teardownPagehide))}async sendBatch(t){let n=ae(t),r={"Content-Type":"application/json"};this.config.token&&(r.Authorization=`Bearer ${this.config.token}`);for(let o=0;o<=3;o++)try{let d=await fetch(this.config.endpoint,{method:"POST",headers:r,body:n});if(d.status===200||d.status===207)return;if(d.status===401){this.stopped=!0;return}if(d.status>=500&&o<3){await this.delay(1e3*2**o);continue}if(d.status===429&&o<3){let f=d.headers.get("Retry-After"),m=f?Number(f):NaN,p=Number.isFinite(m)?m*1e3:1e3*2**o;await this.delay(p);continue}return}catch{if(o<3){await this.delay(1e3*2**o);continue}return}}delay(t){return new Promise(n=>setTimeout(n,t))}};var de={identify(){},step(){},track(){},conversion(){}},W=null,te=0;function vt(){return crypto.randomUUID()}function U(e){if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function yt(){return{widget:de,cleanup:()=>{},config:null}}function Ne(e){if(!e)return null;let t=e.getToolResponseMetadata();if(!t)return null;let n=t._meta,r=t.waniwani??n?.waniwani,o=U(r?.endpoint);return o?{endpoint:o,token:U(r?.token),sessionId:U(r?.sessionId)}:null}function Oe(e,t){return e?.endpoint===t?.endpoint&&e?.token===t?.token&&e?.sessionId===t?.sessionId}function xt(e){let[t,n]=Le(()=>Ne(e));return le(()=>{if(!e){n(o=>o===null?o:null);return}let r=()=>{let o=Ne(e);n(d=>Oe(d,o)?d:o)};return r(),e.onToolResponseMetadataChange(()=>{r()})},[e]),t}function bt(e,t){let n=e.sessionId??crypto.randomUUID(),r=crypto.randomUUID(),o=new ee({endpoint:e.endpoint,token:e.token,metadata:t}),d,f=0,m=l=>{o.send(l)},p=Ie({sessionId:n,traceId:r,metadata:t},m);function i(l,a){return{event_id:vt(),event_type:l,timestamp:new Date().toISOString(),source:"widget",session_id:n,trace_id:r,user_id:d,...a}}return{widget:{identify(l,a){d=l,m([i("identify",{user_id:l,user_traits:a})])},step(l,a){f++,m([i("step",{event_name:l,step_sequence:f,metadata:a})])},track(l,a){m([i("track",{event_name:l,metadata:a})])},conversion(l,a){m([i("conversion",{event_name:l,conversion_value:a.value,conversion_currency:a.currency,metadata:a.meta})])}},cleanup:()=>{p(),o.stop()},config:e}}function De(e={}){let t=mt(q),n=xt(t),r=U(e.endpoint),o=U(e.token),d=U(e.sessionId),f=ht(()=>r?{endpoint:r,token:o??n?.token,sessionId:d??n?.sessionId}:n,[r,o,d,n]),[m,p]=Le(de),i=wt(e.metadata);return i.current=e.metadata,le(()=>(te++,()=>{te=Math.max(te-1,0),te===0&&(W?.cleanup(),W=null)}),[]),le(()=>{if(!(typeof window>"u")){if(!f){W?.config&&(W.cleanup(),W=yt(),p(de));return}Oe(W?.config,f)||(W?.cleanup(),W=bt(f,i.current),p(W.widget))}},[f]),m}import{useCallback as kt,useEffect as Mt,useState as Ct}from"react";function Fe(e){let t=w("widgetState"),[n,r]=Ct(()=>t??(typeof e=="function"?e():e??null));Mt(()=>{r(t)},[t]);let o=kt(d=>{r(f=>{let m=typeof d=="function"?d(f):d;return Y()==="openai"&&m!=null&&window.openai?.setWidgetState(m),m})},[]);return[n,o]}import{jsx as L,jsxs as Ue}from"react/jsx-runtime";var Tt=()=>Ue("div",{className:"flex flex-col items-center justify-center h-full min-h-[120px] gap-4",children:[Ue("div",{className:"flex gap-2",children:[L("div",{className:"w-3 h-3 rounded-full bg-gradient-to-r from-blue-400 to-cyan-400 animate-bounce [animation-delay:-0.3s]"}),L("div",{className:"w-3 h-3 rounded-full bg-gradient-to-r from-cyan-400 to-teal-400 animate-bounce [animation-delay:-0.15s]"}),L("div",{className:"w-3 h-3 rounded-full bg-gradient-to-r from-teal-400 to-emerald-400 animate-bounce"})]}),L("p",{className:"text-sm font-medium text-transparent bg-clip-text bg-gradient-to-r from-slate-400 via-slate-200 to-slate-400 bg-[length:200%_100%] animate-[shimmer_1.5s_ease-in-out_infinite]",children:"Loading widget..."}),L("div",{className:"absolute inset-0 flex items-center justify-center pointer-events-none",children:L("div",{className:"w-16 h-16 rounded-full border-2 border-blue-400/20 animate-ping"})}),L("style",{children:`
|
|
63
63
|
@keyframes shimmer {
|
|
64
64
|
0% { background-position: 200% 0; }
|
|
65
65
|
100% { background-position: -200% 0; }
|
|
66
66
|
}
|
|
67
|
-
`})]});export{
|
|
67
|
+
`})]});export{ge as DevModeProvider,je as InitializeNextJsInChatGpt,Tt as LoadingWidget,we as WidgetProvider,X as getMockState,j as initializeMockOpenAI,z as updateMockDisplayMode,N as updateMockGlobal,G as updateMockTheme,K as updateMockToolOutput,ve as useCallTool,ye as useDisplayMode,be as useFlowAction,ke as useIsChatGptApp,Me as useLocale,Ce as useMaxHeight,Te as useOpenExternal,Se as useRequestDisplayMode,Ee as useSafeArea,Re as useSendFollowUp,_e as useTheme,Z as useToolOutput,Q as useToolResponseMetadata,De as useWaniwani,w as useWidgetClient,Fe as useWidgetState};
|
|
68
68
|
//# sourceMappingURL=react.js.map
|