turtlecode 0.1.0
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 +48 -0
- package/assets/_headers +17 -0
- package/assets/apple-touch-icon-v3.png +0 -0
- package/assets/apple-touch-icon.png +0 -0
- package/assets/assets/BerkleyMono-CyIs-Bwl.otf +0 -0
- package/assets/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- package/assets/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/assets/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/assets/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/assets/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/assets/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- package/assets/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/assets/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- package/assets/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/assets/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/assets/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/assets/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- package/assets/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/assets/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- package/assets/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/assets/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- package/assets/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/assets/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/assets/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- package/assets/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/assets/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/assets/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/assets/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/assets/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- package/assets/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- package/assets/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/assets/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/assets/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/assets/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- package/assets/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/assets/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/assets/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/assets/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- package/assets/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/assets/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- package/assets/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/assets/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- package/assets/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/assets/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/assets/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/assets/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/assets/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- package/assets/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/assets/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- package/assets/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/assets/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/assets/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/assets/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- package/assets/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/assets/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- package/assets/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/assets/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/assets/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/assets/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/assets/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/assets/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- package/assets/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/assets/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- package/assets/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/assets/assets/__vite-browser-external-2447137e-BIHI7g3E.js +1 -0
- package/assets/assets/_basePickBy-B_7ShcHh.js +1 -0
- package/assets/assets/_baseUniq-BsW7XEuT.js +1 -0
- package/assets/assets/abap-BdImnpbu.js +1 -0
- package/assets/assets/abap-BrgZPUOV.js +6 -0
- package/assets/assets/actionscript-3-CfeIJUat.js +1 -0
- package/assets/assets/ada-bCR0ucgS.js +1 -0
- package/assets/assets/alert-01-BJxg7Br3.js +1 -0
- package/assets/assets/alert-01-BuOD_o_q.aac +0 -0
- package/assets/assets/alert-02-B_yYorxz.js +1 -0
- package/assets/assets/alert-02-CS75AsoP.aac +0 -0
- package/assets/assets/alert-03-DrFH92rH.js +1 -0
- package/assets/assets/alert-04-BvTiGxWY.js +1 -0
- package/assets/assets/alert-04-CaGsIGFP.aac +0 -0
- package/assets/assets/alert-05-CFi_H2fs.js +1 -0
- package/assets/assets/alert-05-D2gbGoRH.aac +0 -0
- package/assets/assets/alert-06-GK5Tqy6u.aac +0 -0
- package/assets/assets/alert-06-IqbtOTTn.js +1 -0
- package/assets/assets/alert-07-0r0kiLGz.aac +0 -0
- package/assets/assets/alert-07-B2AcuX88.js +1 -0
- package/assets/assets/alert-08-CZowNquU.aac +0 -0
- package/assets/assets/alert-08-pIF0yjmQ.js +1 -0
- package/assets/assets/alert-09-CidmJWaA.js +1 -0
- package/assets/assets/alert-10-84PPn2Zu.js +1 -0
- package/assets/assets/alert-10-Ck5hR7zH.aac +0 -0
- package/assets/assets/amoled-XzrX3rqH.js +1 -0
- package/assets/assets/android-studio-t3zZ7G0e.svg +369 -0
- package/assets/assets/andromeeda-C-Jbm3Hp.js +1 -0
- package/assets/assets/angular-html-CU67Zn6k.js +1 -0
- package/assets/assets/angular-ts-BwZT4LLn.js +1 -0
- package/assets/assets/antigravity-m-mWKI7R.svg +97 -0
- package/assets/assets/apache-Pmp26Uib.js +1 -0
- package/assets/assets/apex-DDbsPZ6N.js +1 -0
- package/assets/assets/apex-DyP6w7ZV.js +6 -0
- package/assets/assets/apl-dKokRX4l.js +1 -0
- package/assets/assets/applescript-Co6uUVPk.js +1 -0
- package/assets/assets/ar-BBkUbD-U.js +1 -0
- package/assets/assets/ar-DNixbgcA.js +3 -0
- package/assets/assets/ara-BRHolxvo.js +1 -0
- package/assets/assets/arc-BbW57NUb.js +1 -0
- package/assets/assets/architectureDiagram-2XIMDMQ5-DVePwAIo.js +36 -0
- package/assets/assets/asciidoc-Dv7Oe6Be.js +1 -0
- package/assets/assets/asm-D_Q5rh1f.js +1 -0
- package/assets/assets/astro-CbQHKStN.js +1 -0
- package/assets/assets/aura-WWK1QSNq.js +1 -0
- package/assets/assets/aurora-x-D-2ljcwZ.js +1 -0
- package/assets/assets/auth-callback-C2n64Qcj.js +1 -0
- package/assets/assets/awk-DMzUqQB5.js +1 -0
- package/assets/assets/ayu-DOIePaTS.js +1 -0
- package/assets/assets/ayu-dark-Cv9koXgw.js +1 -0
- package/assets/assets/azcli-BaLxmfj-.js +6 -0
- package/assets/assets/ballerina-BFfxhgS-.js +1 -0
- package/assets/assets/bat-BkioyH1T.js +1 -0
- package/assets/assets/bat-CFOPXBzS.js +6 -0
- package/assets/assets/beancount-k_qm7-4y.js +1 -0
- package/assets/assets/berry-uYugtg8r.js +1 -0
- package/assets/assets/bibtex-CHM0blh-.js +1 -0
- package/assets/assets/bicep-BfEKNvv3.js +7 -0
- package/assets/assets/bicep-Bmn6On1c.js +1 -0
- package/assets/assets/bip-bop-01-SdbMMaiV.js +1 -0
- package/assets/assets/bip-bop-02-CujvGF7f.js +1 -0
- package/assets/assets/bip-bop-03-BPb7xYJT.js +1 -0
- package/assets/assets/bip-bop-03-DXp7Zb0f.aac +0 -0
- package/assets/assets/bip-bop-04-CfVtpI7z.aac +0 -0
- package/assets/assets/bip-bop-04-dSUw_8vI.js +1 -0
- package/assets/assets/bip-bop-05-BNanGIjD.js +1 -0
- package/assets/assets/bip-bop-06-BuvNosjK.aac +0 -0
- package/assets/assets/bip-bop-06-DiKbyBF9.js +1 -0
- package/assets/assets/bip-bop-07-BoG3Fd8O.js +1 -0
- package/assets/assets/bip-bop-08-C6sK41fd.js +1 -0
- package/assets/assets/bip-bop-08-DBf7Bwjz.aac +0 -0
- package/assets/assets/bip-bop-09-AXzGc7YL.js +1 -0
- package/assets/assets/bip-bop-09-CxEgoAHQ.aac +0 -0
- package/assets/assets/bip-bop-10-E37zfY9y.js +1 -0
- package/assets/assets/blade-DVc8C-J4.js +1 -0
- package/assets/assets/blockDiagram-WCTKOSBZ-C1Ni5oSK.js +132 -0
- package/assets/assets/br-BylU6CIZ.js +3 -0
- package/assets/assets/br-CZ3IHiCZ.js +1 -0
- package/assets/assets/bs-Beusmqm9.js +3 -0
- package/assets/assets/bs-C7sqWY8X.js +1 -0
- package/assets/assets/bsl-BO_Y6i37.js +1 -0
- package/assets/assets/c-BIGW1oBm.js +1 -0
- package/assets/assets/c4Diagram-IC4MRINW-g8EmnUUA.js +10 -0
- package/assets/assets/cadence-Bv_4Rxtq.js +1 -0
- package/assets/assets/cairo-KRGpt6FW.js +1 -0
- package/assets/assets/cameligo-BFG1Mk7z.js +6 -0
- package/assets/assets/carbonfox-DDZsuZPB.js +1 -0
- package/assets/assets/catppuccin-DZcIPKtX.js +1 -0
- package/assets/assets/catppuccin-frappe-BbhwKQAy.js +1 -0
- package/assets/assets/catppuccin-frappe-DFWUc33u.js +1 -0
- package/assets/assets/catppuccin-latte-C9dUb6Cb.js +1 -0
- package/assets/assets/catppuccin-macchiato-Cusx3TK6.js +1 -0
- package/assets/assets/catppuccin-macchiato-DQyhUUbL.js +1 -0
- package/assets/assets/catppuccin-mocha-D87Tk5Gz.js +1 -0
- package/assets/assets/channel-CPcPUiyc.js +1 -0
- package/assets/assets/chunk-4BX2VUAB-CGR6NDgJ.js +1 -0
- package/assets/assets/chunk-55IACEB6-CuagpIkW.js +1 -0
- package/assets/assets/chunk-FMBD7UC4-CBSUaebz.js +15 -0
- package/assets/assets/chunk-JSJVCQXG-DK5RSVJJ.js +1 -0
- package/assets/assets/chunk-KX2RTZJC-D_r6FHlr.js +1 -0
- package/assets/assets/chunk-NQ4KR5QH-_-NyPl-E.js +220 -0
- package/assets/assets/chunk-QZHKN3VN-CMDZeFvi.js +1 -0
- package/assets/assets/chunk-VVM5DH6Z-COaOSPgd.js +1 -0
- package/assets/assets/chunk-WL4C6EOR-p1mj0O6S.js +189 -0
- package/assets/assets/clarity-D53aC0YG.js +1 -0
- package/assets/assets/classDiagram-VBA2DB6C-BAnp4Zaa.js +1 -0
- package/assets/assets/classDiagram-v2-RAHNMMFH-BAnp4Zaa.js +1 -0
- package/assets/assets/clojure-DTECt2xU.js +6 -0
- package/assets/assets/clojure-P80f7IUj.js +1 -0
- package/assets/assets/clone-Cf5BTVxd.js +1 -0
- package/assets/assets/cmake-D1j8_8rp.js +1 -0
- package/assets/assets/cobalt2-DAVdkIoy.js +1 -0
- package/assets/assets/cobol-nwyudZeR.js +1 -0
- package/assets/assets/codeowners-Bp6g37R7.js +1 -0
- package/assets/assets/codeql-DsOJ9woJ.js +1 -0
- package/assets/assets/codicon-DCmgc-ay.ttf +0 -0
- package/assets/assets/coffee-CDGzqUPQ.js +6 -0
- package/assets/assets/coffee-Ch7k5sss.js +1 -0
- package/assets/assets/common-lisp-Cg-RD9OK.js +1 -0
- package/assets/assets/connection-popover-Sip4k8lc.js +1 -0
- package/assets/assets/context-popover-jX8NoD9w.js +1 -0
- package/assets/assets/coq-DkFqJrB1.js +1 -0
- package/assets/assets/cose-bilkent-S5V4N54A-C5LXU9pd.js +1 -0
- package/assets/assets/cpp-CLLBncYj.js +6 -0
- package/assets/assets/cpp-CofmeUqb.js +1 -0
- package/assets/assets/crystal-tKQVLTB8.js +1 -0
- package/assets/assets/csharp-K5feNrxe.js +1 -0
- package/assets/assets/csharp-dUCx_-0o.js +6 -0
- package/assets/assets/csp-5Rap-vPy.js +6 -0
- package/assets/assets/css-D3h14YRZ.js +8 -0
- package/assets/assets/css-DPfMkruS.js +1 -0
- package/assets/assets/css.worker-CWXDKZjk.js +84 -0
- package/assets/assets/cssMode-xHiM5mcb.js +9 -0
- package/assets/assets/csv-fuZLfV_i.js +1 -0
- package/assets/assets/cue-D82EKSYY.js +1 -0
- package/assets/assets/cursor-CX4xD2IP.js +1 -0
- package/assets/assets/cypher-COkxafJQ.js +1 -0
- package/assets/assets/cypher-DrQuvNYM.js +6 -0
- package/assets/assets/cytoscape.esm-DtBltrT8.js +331 -0
- package/assets/assets/d-85-TOEBH.js +1 -0
- package/assets/assets/da--imEne2-.js +3 -0
- package/assets/assets/da-DKIMy0WC.js +1 -0
- package/assets/assets/dagre-KLK3FWXG-m-9cmD-w.js +4 -0
- package/assets/assets/dark-plus-C3mMm8J8.js +1 -0
- package/assets/assets/dart-CF10PKvl.js +1 -0
- package/assets/assets/dart-CFKIUWau.js +6 -0
- package/assets/assets/dax-CEL-wOlO.js +1 -0
- package/assets/assets/de-BXo_WxK1.js +3 -0
- package/assets/assets/de-W5dPqUFm.js +1 -0
- package/assets/assets/defaultLocale-DX6XiGOO.js +1 -0
- package/assets/assets/desktop-BmXAJ9_W.js +1 -0
- package/assets/assets/diagram-E7M64L7V-Cn-5LVpt.js +24 -0
- package/assets/assets/diagram-IFDJBPK2-CD8BK0Gp.js +43 -0
- package/assets/assets/diagram-P4PSJMXO-JVUlmg7w.js +24 -0
- package/assets/assets/dialog-clone-project-BgrtjUcd.js +1 -0
- package/assets/assets/dialog-connect-provider-BEqcXIot.js +2 -0
- package/assets/assets/dialog-create-project-TcSOut-3.js +1 -0
- package/assets/assets/dialog-edit-project-BfeaBlLZ.js +1 -0
- package/assets/assets/dialog-fork-D0oj4IQ5.js +1 -0
- package/assets/assets/dialog-manage-models-mDJUOPob.js +1 -0
- package/assets/assets/dialog-select-directory-BocFiQ9d.js +6 -0
- package/assets/assets/dialog-select-file-CifFpv3x.js +1 -0
- package/assets/assets/dialog-select-mcp-Bz0DoDof.js +1 -0
- package/assets/assets/dialog-select-model-unpaid-Da_CQzO4.js +2 -0
- package/assets/assets/dialog-select-provider-2iOfyWxy.js +1 -0
- package/assets/assets/dialog-select-server-DBhmJ2f8.js +1 -0
- package/assets/assets/dialog-settings-gGxknIbS.js +1 -0
- package/assets/assets/diff-D97Zzqfu.js +1 -0
- package/assets/assets/docker-BcOcwvcX.js +1 -0
- package/assets/assets/dockerfile-Zznr-cwX.js +6 -0
- package/assets/assets/dotenv-Da5cRb03.js +1 -0
- package/assets/assets/dracula-Bwy36Hqr.js +1 -0
- package/assets/assets/dracula-BzJJZx-M.js +1 -0
- package/assets/assets/dracula-soft-BXkSAIEj.js +1 -0
- package/assets/assets/dream-maker-BtqSS_iP.js +1 -0
- package/assets/assets/ecl-Ce3n6wWz.js +6 -0
- package/assets/assets/edge-BkV0erSs.js +1 -0
- package/assets/assets/editor.worker-DERb3WoQ.js +12 -0
- package/assets/assets/elixir-CDX3lj18.js +1 -0
- package/assets/assets/elixir-deUWdS0T.js +6 -0
- package/assets/assets/elm-DbKCFpqz.js +1 -0
- package/assets/assets/emacs-lisp-C9XAeP06.js +1 -0
- package/assets/assets/erDiagram-INFDFZHY-7L6v8ikj.js +70 -0
- package/assets/assets/erb-BOJIQeun.js +1 -0
- package/assets/assets/erlang-DsQrWhSR.js +1 -0
- package/assets/assets/es-BKl1__G4.js +1 -0
- package/assets/assets/es-DAHGSdnh.js +3 -0
- package/assets/assets/everforest-CeaUU-qR.js +1 -0
- package/assets/assets/everforest-dark-BgDCqdQA.js +1 -0
- package/assets/assets/everforest-light-C8M2exoo.js +1 -0
- package/assets/assets/fennel-BYunw83y.js +1 -0
- package/assets/assets/file-icon-CgbvTpIc.js +1 -0
- package/assets/assets/fish-BvzEVeQv.js +1 -0
- package/assets/assets/flexoki-Cuz5xwiW.js +1 -0
- package/assets/assets/flow9-i9-g7ZhI.js +6 -0
- package/assets/assets/flowDiagram-PKNHOUZH-aJT2T3cx.js +162 -0
- package/assets/assets/fluent-C4IJs8-o.js +1 -0
- package/assets/assets/fortran-fixed-form-BZjJHVRy.js +1 -0
- package/assets/assets/fortran-free-form-D22FLkUw.js +1 -0
- package/assets/assets/fr-BGWW507w.js +1 -0
- package/assets/assets/fr-P_mrJW12.js +3 -0
- package/assets/assets/freemarker2-BgcPHQt-.js +8 -0
- package/assets/assets/fsharp-CXgrBDvD.js +1 -0
- package/assets/assets/fsharp-CzKuDChf.js +6 -0
- package/assets/assets/ganttDiagram-A5KZAMGK-C5vwClxA.js +292 -0
- package/assets/assets/gdresource-B7Tvp0Sc.js +1 -0
- package/assets/assets/gdscript-DTMYz4Jt.js +1 -0
- package/assets/assets/gdshader-DkwncUOv.js +1 -0
- package/assets/assets/genie-D0YGMca9.js +1 -0
- package/assets/assets/gherkin-DyxjwDmM.js +1 -0
- package/assets/assets/ghostty-web-CyXMoQwm.js +13 -0
- package/assets/assets/git-commit-F4YmCXRG.js +1 -0
- package/assets/assets/git-rebase-r7XF79zn.js +1 -0
- package/assets/assets/gitGraphDiagram-K3NZZRJ6-CI0SeLE3.js +65 -0
- package/assets/assets/github-Bnlt5SaI.js +1 -0
- package/assets/assets/github-dark-DHJKELXO.js +1 -0
- package/assets/assets/github-dark-default-Cuk6v7N8.js +1 -0
- package/assets/assets/github-dark-dimmed-DH5Ifo-i.js +1 -0
- package/assets/assets/github-dark-high-contrast-E3gJ1_iC.js +1 -0
- package/assets/assets/github-light-DAi9KRSo.js +1 -0
- package/assets/assets/github-light-default-D7oLnXFd.js +1 -0
- package/assets/assets/github-light-high-contrast-BfjtVDDH.js +1 -0
- package/assets/assets/gleam-BspZqrRM.js +1 -0
- package/assets/assets/glimmer-js-Rg0-pVw9.js +1 -0
- package/assets/assets/glimmer-ts-U6CK756n.js +1 -0
- package/assets/assets/glsl-DplSGwfg.js +1 -0
- package/assets/assets/gnuplot-DdkO51Og.js +1 -0
- package/assets/assets/go-Cphgjts3.js +6 -0
- package/assets/assets/go-Dn2_MT6a.js +1 -0
- package/assets/assets/graph-CFcaDaoV.js +1 -0
- package/assets/assets/graphql-Cg7bfA9N.js +6 -0
- package/assets/assets/graphql-ChdNCCLP.js +1 -0
- package/assets/assets/groovy-gcz8RCvz.js +1 -0
- package/assets/assets/gruvbox-CpxwLcJ7.js +1 -0
- package/assets/assets/gruvbox-dark-hard-CFHQjOhq.js +1 -0
- package/assets/assets/gruvbox-dark-medium-GsRaNv29.js +1 -0
- package/assets/assets/gruvbox-dark-soft-CVdnzihN.js +1 -0
- package/assets/assets/gruvbox-light-hard-CH1njM8p.js +1 -0
- package/assets/assets/gruvbox-light-medium-DRw_LuNl.js +1 -0
- package/assets/assets/gruvbox-light-soft-hJgmCMqR.js +1 -0
- package/assets/assets/hack-CaT9iCJl.js +1 -0
- package/assets/assets/haml-B8DHNrY2.js +1 -0
- package/assets/assets/handlebars-BL8al0AC.js +1 -0
- package/assets/assets/handlebars-DSpGDIPh.js +6 -0
- package/assets/assets/haskell-Df6bDoY_.js +1 -0
- package/assets/assets/haxe-CzTSHFRz.js +1 -0
- package/assets/assets/hcl-0cvrggvQ.js +6 -0
- package/assets/assets/hcl-BWvSN4gD.js +1 -0
- package/assets/assets/hjson-D5-asLiD.js +1 -0
- package/assets/assets/hlsl-D3lLCCz7.js +1 -0
- package/assets/assets/home-6Va-8zmR.js +1 -0
- package/assets/assets/houston-DnULxvSX.js +1 -0
- package/assets/assets/html-CNWh6Ln_.js +6 -0
- package/assets/assets/html-GMplVEZG.js +1 -0
- package/assets/assets/html-derivative-BFtXZ54Q.js +1 -0
- package/assets/assets/html.worker-C8-N0mNh.js +461 -0
- package/assets/assets/htmlMode-LcU-TZaJ.js +9 -0
- package/assets/assets/http-jrhK8wxY.js +1 -0
- package/assets/assets/hurl-irOxFIW8.js +1 -0
- package/assets/assets/hxml-Bvhsp5Yf.js +1 -0
- package/assets/assets/hy-DFXneXwc.js +1 -0
- package/assets/assets/imba-DGztddWO.js +1 -0
- package/assets/assets/index-DpJDxStT.css +1 -0
- package/assets/assets/index-bSvs-Qh3.js +2544 -0
- package/assets/assets/infoDiagram-LFFYTUFH-H6835-cD.js +2 -0
- package/assets/assets/ini-BEwlwnbL.js +1 -0
- package/assets/assets/ini-Drc7WvVn.js +6 -0
- package/assets/assets/init-Gi6I4Gst.js +1 -0
- package/assets/assets/ishikawaDiagram-PHBUUO56-y62OJXdI.js +70 -0
- package/assets/assets/ja-8gbzy_Uq.js +3 -0
- package/assets/assets/ja-nNUG5Jbd.js +1 -0
- package/assets/assets/java-B_fMsGYe.js +6 -0
- package/assets/assets/java-CylS5w8V.js +1 -0
- package/assets/assets/javascript-CTmFPESg.js +6 -0
- package/assets/assets/javascript-wDzz0qaB.js +1 -0
- package/assets/assets/jinja-4LBKfQ-Z.js +1 -0
- package/assets/assets/jison-wvAkD_A8.js +1 -0
- package/assets/assets/jobs-popover-DRbIcR2O.js +1 -0
- package/assets/assets/journeyDiagram-4ABVD52K-Bi9XcKs5.js +139 -0
- package/assets/assets/json-Cp-IABpG.js +1 -0
- package/assets/assets/json.worker-B4wBgYVH.js +49 -0
- package/assets/assets/json5-C9tS-k6U.js +1 -0
- package/assets/assets/jsonMode-CW1XLtuQ.js +15 -0
- package/assets/assets/jsonc-Des-eS-w.js +1 -0
- package/assets/assets/jsonl-DcaNXYhu.js +1 -0
- package/assets/assets/jsonnet-DFQXde-d.js +1 -0
- package/assets/assets/jssm-C2t-YnRu.js +1 -0
- package/assets/assets/jsx-g9-lgVsj.js +1 -0
- package/assets/assets/julia-Bqgm2twL.js +6 -0
- package/assets/assets/julia-C8NyazO9.js +1 -0
- package/assets/assets/kanagawa-C2GZrYFD.js +1 -0
- package/assets/assets/kanagawa-dragon-CkXjmgJE.js +1 -0
- package/assets/assets/kanagawa-lotus-CfQXZHmo.js +1 -0
- package/assets/assets/kanagawa-wave-DWedfzmr.js +1 -0
- package/assets/assets/kanban-definition-K7BYSVSG-DE01LQ5I.js +89 -0
- package/assets/assets/kdl-DV7GczEv.js +1 -0
- package/assets/assets/ko-Cz45-37g.js +1 -0
- package/assets/assets/ko-D9Z7tTxK.js +3 -0
- package/assets/assets/kotlin-BSkB5QuD.js +6 -0
- package/assets/assets/kotlin-BdnUsdx6.js +1 -0
- package/assets/assets/kusto-BvAqAH-y.js +1 -0
- package/assets/assets/laserwave-DUszq2jm.js +1 -0
- package/assets/assets/latex-BdAV_C_H.js +1 -0
- package/assets/assets/layout-C6rurAvx.js +1 -0
- package/assets/assets/lean-Bc6EcWN3.js +1 -0
- package/assets/assets/less-B1dDrJ26.js +1 -0
- package/assets/assets/less-BsTHnhdd.js +7 -0
- package/assets/assets/lexon-YWi4-JPR.js +6 -0
- package/assets/assets/light-plus-B7mTdjB0.js +1 -0
- package/assets/assets/linear-ilW0Y4uJ.js +1 -0
- package/assets/assets/liquid-DB5uFXiY.js +6 -0
- package/assets/assets/liquid-DYVedYrR.js +1 -0
- package/assets/assets/list-BPk4NMWt.js +1 -0
- package/assets/assets/llvm-BtvRca6l.js +1 -0
- package/assets/assets/log-2UxHyX5q.js +1 -0
- package/assets/assets/logo-BtOb2qkB.js +1 -0
- package/assets/assets/lua-BbnMAYS6.js +1 -0
- package/assets/assets/lua-nf6ki56Z.js +6 -0
- package/assets/assets/luau-CXu1NL6O.js +1 -0
- package/assets/assets/lucent-orng-BLBLS6VI.js +1 -0
- package/assets/assets/m3-Cpb6xl2v.js +6 -0
- package/assets/assets/make-CHLpvVh8.js +1 -0
- package/assets/assets/markdown-Cvjx9yec.js +1 -0
- package/assets/assets/markdown-DSZPf7rp.js +6 -0
- package/assets/assets/marko-CPi9NSCl.js +1 -0
- package/assets/assets/material-CDQyWXdQ.js +1 -0
- package/assets/assets/material-theme-D5KoaKCx.js +1 -0
- package/assets/assets/material-theme-darker-BfHTSMKl.js +1 -0
- package/assets/assets/material-theme-lighter-B0m2ddpp.js +1 -0
- package/assets/assets/material-theme-ocean-CyktbL80.js +1 -0
- package/assets/assets/material-theme-palenight-Csfq5Kiy.js +1 -0
- package/assets/assets/matlab-D7o27uSR.js +1 -0
- package/assets/assets/matrix-wjRIPmmp.js +1 -0
- package/assets/assets/mdc-DUICxH0z.js +1 -0
- package/assets/assets/mdx-Cmh6b_Ma.js +1 -0
- package/assets/assets/mdx-Q7_EfF7H.js +6 -0
- package/assets/assets/mercury-CL9KPSEM.js +1 -0
- package/assets/assets/mermaid-DKYwYmdq.js +1 -0
- package/assets/assets/mermaid.core-DdXWHS-1.js +254 -0
- package/assets/assets/min-dark-CafNBF8u.js +1 -0
- package/assets/assets/min-light-CTRr51gU.js +1 -0
- package/assets/assets/mindmap-definition-YRQLILUH-BajbwusW.js +68 -0
- package/assets/assets/mips-B_c3zf-v.js +6 -0
- package/assets/assets/mipsasm-CKIfxQSi.js +1 -0
- package/assets/assets/mojo-1DNp92w6.js +1 -0
- package/assets/assets/monokai-BmT5Sw19.js +1 -0
- package/assets/assets/monokai-D4h5O-jR.js +1 -0
- package/assets/assets/move-Bu9oaDYs.js +1 -0
- package/assets/assets/msdax-rUNN04Wq.js +6 -0
- package/assets/assets/mysql-DDwshQtU.js +6 -0
- package/assets/assets/narrat-DRg8JJMk.js +1 -0
- package/assets/assets/nextflow-BrzmwbiE.js +1 -0
- package/assets/assets/nginx-DknmC5AR.js +1 -0
- package/assets/assets/night-owl-C39BiMTA.js +1 -0
- package/assets/assets/nightowl-Pa1W3oWG.js +1 -0
- package/assets/assets/nim-CVrawwO9.js +1 -0
- package/assets/assets/nix-c8nO5XWb.js +1 -0
- package/assets/assets/no-BGj8YYYB.js +3 -0
- package/assets/assets/no-DQ9niEg2.js +1 -0
- package/assets/assets/nope-01-HWHtipgi.js +1 -0
- package/assets/assets/nope-02-CzaO3Yrz.js +1 -0
- package/assets/assets/nope-02-EygnDbCM.aac +0 -0
- package/assets/assets/nope-03-D3_ztwN2.js +1 -0
- package/assets/assets/nope-04-CmCNjd7G.js +1 -0
- package/assets/assets/nope-05-DY6LpiuN.js +1 -0
- package/assets/assets/nope-05-DZsXzrQW.aac +0 -0
- package/assets/assets/nope-06-CfV385SL.js +1 -0
- package/assets/assets/nope-07-nvIV4VRE.js +1 -0
- package/assets/assets/nope-08-COPo0uNf.aac +0 -0
- package/assets/assets/nope-08-HcI83CoX.js +1 -0
- package/assets/assets/nope-09-8gNK4nDO.js +1 -0
- package/assets/assets/nope-10-C1PuPJJ6.js +1 -0
- package/assets/assets/nope-11-BjKpOuL0.js +1 -0
- package/assets/assets/nope-11-CVdXg8G-.aac +0 -0
- package/assets/assets/nope-12-BJR1Ka3c.aac +0 -0
- package/assets/assets/nope-12-XTIkittV.js +1 -0
- package/assets/assets/nord-Ddv68eIx.js +1 -0
- package/assets/assets/nord-NfRmCUpk.js +1 -0
- package/assets/assets/nushell-C-sUppwS.js +1 -0
- package/assets/assets/objective-c-B5zXfXm9.js +6 -0
- package/assets/assets/objective-c-DXmwc3jG.js +1 -0
- package/assets/assets/objective-cpp-CLxacb5B.js +1 -0
- package/assets/assets/ocaml-C0hk2d4L.js +1 -0
- package/assets/assets/one-dark-Bjk1FzZz.js +1 -0
- package/assets/assets/one-dark-pro-DVMEJ2y_.js +1 -0
- package/assets/assets/one-light-PoHY5YXO.js +1 -0
- package/assets/assets/onedarkpro-BqVu_Wgg.js +1 -0
- package/assets/assets/opencode-D7rBuNi7.js +1 -0
- package/assets/assets/openscad-C4EeE6gA.js +1 -0
- package/assets/assets/ordinal-Cboi1Yqb.js +1 -0
- package/assets/assets/orng-BM7q_Z0y.js +1 -0
- package/assets/assets/osaka-jade-LSg9CtTT.js +1 -0
- package/assets/assets/palenight-Djgtir2l.js +1 -0
- package/assets/assets/pascal-CXOwvkN_.js +6 -0
- package/assets/assets/pascal-D93ZcfNL.js +1 -0
- package/assets/assets/pascaligo-Bc-ZgV77.js +6 -0
- package/assets/assets/perl-C0TMdlhV.js +1 -0
- package/assets/assets/perl-CwNk8-XU.js +6 -0
- package/assets/assets/pgsql-tGk8EFnU.js +6 -0
- package/assets/assets/php-CDn_0X-4.js +1 -0
- package/assets/assets/php-CpIb_Oan.js +6 -0
- package/assets/assets/pieDiagram-SKSYHLDU-DxK57epR.js +30 -0
- package/assets/assets/pierre-dark-ClCaJvdG.js +1 -0
- package/assets/assets/pierre-light-zjGsWSiE.js +1 -0
- package/assets/assets/pkl-u5AG7uiY.js +1 -0
- package/assets/assets/pl-B1PbnQJF.js +1 -0
- package/assets/assets/pl-D8a1LVH2.js +3 -0
- package/assets/assets/pla-B03wrqEc.js +6 -0
- package/assets/assets/plastic-3e1v2bzS.js +1 -0
- package/assets/assets/plsql-ChMvpjG-.js +1 -0
- package/assets/assets/po-BTJTHyun.js +1 -0
- package/assets/assets/poimandres-CS3Unz2-.js +1 -0
- package/assets/assets/polar-C0HS_06l.js +1 -0
- package/assets/assets/postcss-CXtECtnM.js +1 -0
- package/assets/assets/postiats-BKlk5iyT.js +6 -0
- package/assets/assets/powerquery-Bhzvs7bI.js +6 -0
- package/assets/assets/powerquery-CEu0bR-o.js +1 -0
- package/assets/assets/powershell-Dd3NCNK9.js +6 -0
- package/assets/assets/powershell-Dpen1YoG.js +1 -0
- package/assets/assets/prisma-Dd19v3D-.js +1 -0
- package/assets/assets/prolog-CbFg5uaA.js +1 -0
- package/assets/assets/proto-DyJlTyXw.js +1 -0
- package/assets/assets/protobuf-COyEY5Pt.js +7 -0
- package/assets/assets/pug-BaJupSGV.js +6 -0
- package/assets/assets/pug-CGlum2m_.js +1 -0
- package/assets/assets/puppet-BMWR74SV.js +1 -0
- package/assets/assets/purescript-CklMAg4u.js +1 -0
- package/assets/assets/purify.es-A66Cw1IH.js +2 -0
- package/assets/assets/python-B3qjyNJj.js +6 -0
- package/assets/assets/python-B6aJPvgy.js +1 -0
- package/assets/assets/qml-3beO22l8.js +1 -0
- package/assets/assets/qmldir-C8lEn-DE.js +1 -0
- package/assets/assets/qsharp-DXyYeYxl.js +6 -0
- package/assets/assets/qss-IeuSbFQv.js +1 -0
- package/assets/assets/quadrantDiagram-337W2JSQ-CZMB9UKV.js +7 -0
- package/assets/assets/r-CdQndTaG.js +6 -0
- package/assets/assets/r-DiinP2Uv.js +1 -0
- package/assets/assets/racket-BqYA7rlc.js +1 -0
- package/assets/assets/raku-DXvB9xmW.js +1 -0
- package/assets/assets/razor-CE9lU5zL.js +1 -0
- package/assets/assets/razor-CJkx1qh1.js +6 -0
- package/assets/assets/red-bN70gL4F.js +1 -0
- package/assets/assets/redis-CVwtpugi.js +6 -0
- package/assets/assets/redshift-25W9uPmb.js +6 -0
- package/assets/assets/reg-C-SQnVFl.js +1 -0
- package/assets/assets/regexp-CDVJQ6XC.js +1 -0
- package/assets/assets/rel-C3B-1QV4.js +1 -0
- package/assets/assets/requirementDiagram-Z7DCOOCP-BlyteLn_.js +73 -0
- package/assets/assets/restructuredtext-DfzH4Xui.js +6 -0
- package/assets/assets/riscv-BM1_JUlF.js +1 -0
- package/assets/assets/rose-pine-dawn-DHQR4-dF.js +1 -0
- package/assets/assets/rose-pine-moon-D4_iv3hh.js +1 -0
- package/assets/assets/rose-pine-qdsjHGoJ.js +1 -0
- package/assets/assets/rosepine-DFf5RIYd.js +1 -0
- package/assets/assets/rosmsg-BJDFO7_C.js +1 -0
- package/assets/assets/rst-B0xPkSld.js +1 -0
- package/assets/assets/ru-BwS-kFcs.js +3 -0
- package/assets/assets/ru-Cz7sqdk-.js +1 -0
- package/assets/assets/ruby-BvKwtOVI.js +1 -0
- package/assets/assets/ruby-Cp1zYvxS.js +6 -0
- package/assets/assets/rust-B1yitclQ.js +1 -0
- package/assets/assets/rust-D5C2fndG.js +6 -0
- package/assets/assets/sankeyDiagram-WA2Y5GQK-DrdtRBZz.js +10 -0
- package/assets/assets/sas-cz2c8ADy.js +1 -0
- package/assets/assets/sass-Cj5Yp3dK.js +1 -0
- package/assets/assets/sb-CDntyWJ8.js +6 -0
- package/assets/assets/scala-BoFRg7Ot.js +6 -0
- package/assets/assets/scala-C151Ov-r.js +1 -0
- package/assets/assets/scheme-Bio4gycK.js +6 -0
- package/assets/assets/scheme-C98Dy4si.js +1 -0
- package/assets/assets/scss-4Ik7cdeQ.js +8 -0
- package/assets/assets/scss-OYdSNvt2.js +1 -0
- package/assets/assets/sdbl-DVxCFoDh.js +1 -0
- package/assets/assets/select-CEKfrTm2.js +1 -0
- package/assets/assets/sequenceDiagram-2WXFIKYE-B2cOVhRx.js +145 -0
- package/assets/assets/server-row-BhbnbNJy.js +1 -0
- package/assets/assets/session-CdcUAq9-.js +60 -0
- package/assets/assets/shaderlab-Dg9Lc6iA.js +1 -0
- package/assets/assets/shadesofpurple-BtwY-YRg.js +1 -0
- package/assets/assets/shell-CX-rkNHf.js +6 -0
- package/assets/assets/shellscript-Yzrsuije.js +1 -0
- package/assets/assets/shellsession-BADoaaVG.js +1 -0
- package/assets/assets/slack-dark-BthQWCQV.js +1 -0
- package/assets/assets/slack-ochin-DqwNpetd.js +1 -0
- package/assets/assets/smalltalk-BERRCDM3.js +1 -0
- package/assets/assets/snazzy-light-Bw305WKR.js +1 -0
- package/assets/assets/solarized-B2lq4jlr.js +1 -0
- package/assets/assets/solarized-dark-DXbdFlpD.js +1 -0
- package/assets/assets/solarized-light-L9t79GZl.js +1 -0
- package/assets/assets/solidity-Tw7wswEv.js +6 -0
- package/assets/assets/solidity-rGO070M0.js +1 -0
- package/assets/assets/sophia-C5WLch3f.js +6 -0
- package/assets/assets/soy-Brmx7dQM.js +1 -0
- package/assets/assets/sparql-DHaeiCBh.js +6 -0
- package/assets/assets/sparql-rVzFXLq3.js +1 -0
- package/assets/assets/splunk-BtCnVYZw.js +1 -0
- package/assets/assets/sprite-B0ryth1W.svg +1121 -0
- package/assets/assets/sprite-Fb-TFjRY.svg +11707 -0
- package/assets/assets/sql-BLtJtn59.js +1 -0
- package/assets/assets/sql-CCSDG5nI.js +6 -0
- package/assets/assets/ssh-config-_ykCGR6B.js +1 -0
- package/assets/assets/st-pnP8ivHi.js +6 -0
- package/assets/assets/staplebops-01-gmydkbKo.js +1 -0
- package/assets/assets/staplebops-02-dGmDElbO.js +1 -0
- package/assets/assets/staplebops-03-Aug82oH0.aac +0 -0
- package/assets/assets/staplebops-03-DK1yH6J2.js +1 -0
- package/assets/assets/staplebops-04-Bi3-8HzN.js +1 -0
- package/assets/assets/staplebops-04-olyHi8qQ.aac +0 -0
- package/assets/assets/staplebops-05-BVmKob0k.js +1 -0
- package/assets/assets/staplebops-06-BAYmihXf.js +1 -0
- package/assets/assets/staplebops-06-Cj_2vOI4.aac +0 -0
- package/assets/assets/staplebops-07-_-IkdLL4.js +1 -0
- package/assets/assets/staplebops-07-cqQEvbIf.aac +0 -0
- package/assets/assets/stata-BH5u7GGu.js +1 -0
- package/assets/assets/stateDiagram-RAJIS63D-C4udRYnl.js +1 -0
- package/assets/assets/stateDiagram-v2-FVOUBMTO-CECUON5A.js +1 -0
- package/assets/assets/status-popover-body-DkLpfJ2k.js +2 -0
- package/assets/assets/stylus-BEDo0Tqx.js +1 -0
- package/assets/assets/svelte-3Dk4HxPD.js +1 -0
- package/assets/assets/swift-Dg5xB15N.js +1 -0
- package/assets/assets/swift-DwJ7jVG9.js +8 -0
- package/assets/assets/switch-DPq0vsit.js +1 -0
- package/assets/assets/synthwave-84-CbfX1IO0.js +1 -0
- package/assets/assets/synthwave84-mo9EICVe.js +1 -0
- package/assets/assets/system-verilog-CnnmHF94.js +1 -0
- package/assets/assets/systemd-4A_iFExJ.js +1 -0
- package/assets/assets/systemverilog-B9Xyijhd.js +6 -0
- package/assets/assets/tabs-dF68ik4J.js +1 -0
- package/assets/assets/tag--BCZ5q7_.js +1 -0
- package/assets/assets/talonscript-CkByrt1z.js +1 -0
- package/assets/assets/tasl-QIJgUcNo.js +1 -0
- package/assets/assets/tcl-DnHyzjbg.js +6 -0
- package/assets/assets/tcl-dwOrl1Do.js +1 -0
- package/assets/assets/templ-W15q3VgB.js +1 -0
- package/assets/assets/terraform-BETggiCN.js +1 -0
- package/assets/assets/tex-CxkMU7Pf.js +1 -0
- package/assets/assets/th-GkB0dxVv.js +1 -0
- package/assets/assets/th-sZWfOGpx.js +3 -0
- package/assets/assets/timeline-definition-YZTLITO2-C18tfizI.js +61 -0
- package/assets/assets/tokyo-night-hegEt444.js +1 -0
- package/assets/assets/tokyonight-CbcoahaJ.js +1 -0
- package/assets/assets/toml-vGWfd6FD.js +1 -0
- package/assets/assets/tr-BKF3NFWB.js +3 -0
- package/assets/assets/tr-EOOdZMuM.js +1 -0
- package/assets/assets/treemap-KZPCXAKY-C7fWdgj-.js +162 -0
- package/assets/assets/trellis-6YKi26t8.js +891 -0
- package/assets/assets/trellis-CZsWDIog.css +6 -0
- package/assets/assets/trellis-badge-demo-BDa3ILpo.js +1 -0
- package/assets/assets/trellis-op-icon-5x1lMwNH.js +1 -0
- package/assets/assets/ts-tags-zn1MmPIZ.js +1 -0
- package/assets/assets/ts.worker-DUVIPRKP.js +51334 -0
- package/assets/assets/tsMode-Bg19hQiu.js +16 -0
- package/assets/assets/tsv-B_m7g4N7.js +1 -0
- package/assets/assets/tsx-COt5Ahok.js +1 -0
- package/assets/assets/turtle-BsS91CYL.js +1 -0
- package/assets/assets/twig-CO9l9SDP.js +1 -0
- package/assets/assets/twig-CPajHgWi.js +6 -0
- package/assets/assets/typescript-8CtqEj8t.js +6 -0
- package/assets/assets/typescript-BPQ3VLAy.js +1 -0
- package/assets/assets/typespec-BGHnOYBU.js +1 -0
- package/assets/assets/typespec-D-MeaMDU.js +6 -0
- package/assets/assets/typst-DHCkPAjA.js +1 -0
- package/assets/assets/v-BcVCzyr7.js +1 -0
- package/assets/assets/vala-CsfeWuGM.js +1 -0
- package/assets/assets/vb-D17OF-Vu.js +1 -0
- package/assets/assets/vb-DgyLZaXg.js +6 -0
- package/assets/assets/vennDiagram-LZ73GAT5-DWmAgqdE.js +34 -0
- package/assets/assets/vercel-BEJw6zHg.js +1 -0
- package/assets/assets/verilog-BQ8w6xss.js +1 -0
- package/assets/assets/vesper-67WFNJYM.js +1 -0
- package/assets/assets/vesper-DU1UobuO.js +1 -0
- package/assets/assets/vhdl-CeAyd5Ju.js +1 -0
- package/assets/assets/viml-CJc9bBzg.js +1 -0
- package/assets/assets/vitesse-black-Bkuqu6BP.js +1 -0
- package/assets/assets/vitesse-dark-D0r3Knsf.js +1 -0
- package/assets/assets/vitesse-light-CVO1_9PV.js +1 -0
- package/assets/assets/vscode-C5BXgFjm.svg +39 -0
- package/assets/assets/vue-DnHKYNfI.js +1 -0
- package/assets/assets/vue-html-CChd_i61.js +1 -0
- package/assets/assets/vue-vine-8moa0y9V.js +1 -0
- package/assets/assets/vyper-CDx5xZoG.js +1 -0
- package/assets/assets/wasm-CG6Dc4jp.js +1 -0
- package/assets/assets/wasm-MzD3tlZU.js +1 -0
- package/assets/assets/wenyan-BV7otONQ.js +1 -0
- package/assets/assets/wgsl-DYQUnd45.js +303 -0
- package/assets/assets/wgsl-Dx-B1_4e.js +1 -0
- package/assets/assets/wikitext-BhOHFoWU.js +1 -0
- package/assets/assets/wit-5i3qLPDT.js +1 -0
- package/assets/assets/wolfram-lXgVvXCa.js +1 -0
- package/assets/assets/worker-BDowWIry.js +155 -0
- package/assets/assets/xml-BKjz9euG.js +6 -0
- package/assets/assets/xml-sdJ4AIDG.js +1 -0
- package/assets/assets/xsl-CtQFsRM5.js +1 -0
- package/assets/assets/xychartDiagram-JWTSCODW-Ckcyhr_q.js +7 -0
- package/assets/assets/yaml-Buea-lGh.js +1 -0
- package/assets/assets/yaml-jJWTWPtR.js +6 -0
- package/assets/assets/yup-01-BtRq6dLN.aac +0 -0
- package/assets/assets/yup-01-Cv8FIGVN.js +1 -0
- package/assets/assets/yup-02-BIvWfOQf.js +1 -0
- package/assets/assets/yup-03-BHLEoqSS.aac +0 -0
- package/assets/assets/yup-03-DlJPYLhC.js +1 -0
- package/assets/assets/yup-04-C7yadpJT.aac +0 -0
- package/assets/assets/yup-04-CrvHiQIe.js +1 -0
- package/assets/assets/yup-05-CrtAHyVr.js +1 -0
- package/assets/assets/yup-05-CuuaeyjC.aac +0 -0
- package/assets/assets/yup-06-W4HuBYhb.js +1 -0
- package/assets/assets/zenburn-3iKGnI7X.js +1 -0
- package/assets/assets/zenscript-DVFEvuxE.js +1 -0
- package/assets/assets/zh-CibzNL3Z.js +3 -0
- package/assets/assets/zh-DqNk452I.js +1 -0
- package/assets/assets/zht-CfMMeSr0.js +1 -0
- package/assets/assets/zht-DsVmxmyh.js +3 -0
- package/assets/assets/zig-VOosw3JB.js +1 -0
- package/assets/favicon-96x96-v3.png +0 -0
- package/assets/favicon-96x96.png +0 -0
- package/assets/favicon-v3.ico +0 -0
- package/assets/favicon-v3.svg +7 -0
- package/assets/favicon.ico +0 -0
- package/assets/favicon.svg +7 -0
- package/assets/index.html +56 -0
- package/assets/logo.svg +9 -0
- package/assets/oc-theme-preload.js +35 -0
- package/assets/site.webmanifest +21 -0
- package/assets/social-share-zen.png +0 -0
- package/assets/social-share.png +0 -0
- package/assets/web-app-manifest-192x192.png +0 -0
- package/assets/web-app-manifest-512x512.png +0 -0
- package/bin/cli.mjs +111 -0
- package/package.json +35 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
const e={"command.category.suggested":"Vorgeschlagen","command.category.view":"Ansicht","command.category.project":"Projekt","command.category.provider":"Anbieter","command.category.server":"Server","command.category.session":"Sitzung","command.category.theme":"Thema","command.category.language":"Sprache","command.category.file":"Datei","command.category.context":"Kontext","command.category.terminal":"Terminal","command.category.model":"Modell","command.category.mcp":"MCP","command.category.agent":"Agent","command.category.permissions":"Berechtigungen","command.category.workspace":"Arbeitsbereich","command.category.settings":"Einstellungen","theme.scheme.system":"System","theme.scheme.light":"Hell","theme.scheme.dark":"Dunkel","command.sidebar.toggle":"Seitenleiste umschalten","command.project.open":"Projekt öffnen","command.provider.connect":"Anbieter verbinden","command.server.switch":"Server wechseln","command.settings.open":"Einstellungen öffnen","command.session.previous":"Vorherige Sitzung","command.session.next":"Nächste Sitzung","command.session.previous.unseen":"Vorherige ungelesene Sitzung","command.session.next.unseen":"Nächste ungelesene Sitzung","command.session.archive":"Sitzung archivieren","command.palette":"Befehlspalette","command.theme.cycle":"Thema wechseln","command.theme.set":"Thema verwenden: {{theme}}","command.theme.scheme.cycle":"Farbschema wechseln","command.theme.scheme.set":"Farbschema verwenden: {{scheme}}","command.language.cycle":"Sprache wechseln","command.language.set":"Sprache verwenden: {{language}}","command.session.new":"Neue Sitzung","command.file.open":"Datei öffnen","command.tab.close":"Tab schließen","command.context.addSelection":"Auswahl zum Kontext hinzufügen","command.context.addSelection.description":"Ausgewählte Zeilen aus der aktuellen Datei hinzufügen","command.input.focus":"Eingabefeld fokussieren","command.terminal.toggle":"Terminal umschalten","command.fileTree.toggle":"Dateibaum umschalten","command.review.toggle":"Überprüfung umschalten","command.terminal.new":"Neues Terminal","command.terminal.new.description":"Neuen Terminal-Tab erstellen","command.steps.toggle":"Schritte umschalten","command.steps.toggle.description":"Schritte für die aktuelle Nachricht anzeigen oder ausblenden","command.message.previous":"Vorherige Nachricht","command.message.previous.description":"Zur vorherigen Benutzernachricht gehen","command.message.next":"Nächste Nachricht","command.message.next.description":"Zur nächsten Benutzernachricht gehen","command.model.choose":"Modell wählen","command.model.choose.description":"Ein anderes Modell auswählen","command.mcp.toggle":"MCPs umschalten","command.mcp.toggle.description":"MCPs umschalten","command.agent.cycle":"Agent wechseln","command.agent.cycle.description":"Zum nächsten Agenten wechseln","command.agent.cycle.reverse":"Agent rückwärts wechseln","command.agent.cycle.reverse.description":"Zum vorherigen Agenten wechseln","command.model.variant.cycle":"Denkaufwand wechseln","command.model.variant.cycle.description":"Zum nächsten Aufwandslevel wechseln","command.prompt.mode.shell":"Shell","command.prompt.mode.normal":"Prompt","command.permissions.autoaccept.enable":"Berechtigungen automatisch akzeptieren","command.permissions.autoaccept.disable":"Automatische Akzeptanz von Berechtigungen stoppen","command.workspace.toggle":"Arbeitsbereiche umschalten","command.workspace.toggle.description":"Mehrere Arbeitsbereiche in der Seitenleiste aktivieren oder deaktivieren","command.session.undo":"Rückgängig","command.session.undo.description":"Letzte Nachricht rückgängig machen","command.session.redo":"Wiederherstellen","command.session.redo.description":"Letzte rückgängig gemachte Nachricht wiederherstellen","command.session.compact":"Sitzung komprimieren","command.session.compact.description":"Sitzung zusammenfassen, um die Kontextgröße zu reduzieren","command.session.fork":"Von Nachricht abzweigen","command.session.fork.description":"Neue Sitzung aus einer früheren Nachricht erstellen","command.session.share":"Sitzung teilen","command.session.share.description":"Diese Sitzung teilen und URL in die Zwischenablage kopieren","command.session.unshare":"Teilen der Sitzung aufheben","command.session.unshare.description":"Teilen dieser Sitzung beenden","palette.search.placeholder":"Dateien, Befehle und Sitzungen durchsuchen","palette.empty":"Keine Ergebnisse gefunden","palette.group.commands":"Befehle","palette.group.files":"Dateien","dialog.provider.search.placeholder":"Anbieter durchsuchen","dialog.provider.empty":"Keine Anbieter gefunden","dialog.provider.group.popular":"Beliebt","dialog.provider.group.other":"Andere","dialog.provider.tag.recommended":"Empfohlen","dialog.provider.opencode.note":"Kuratierte Modelle inklusive Claude, GPT, Gemini und mehr","dialog.provider.opencode.tagline":"Zuverlässige, optimierte Modelle","dialog.provider.opencodeGo.tagline":"Kostengünstiges Abo für alle","dialog.provider.anthropic.note":"Mit Claude Pro/Max oder API-Schlüssel verbinden","dialog.provider.copilot.note":"Mit Copilot oder API-Schlüssel verbinden","dialog.provider.openai.note":"Mit ChatGPT Pro/Plus oder API-Schlüssel verbinden","dialog.provider.google.note":"Gemini-Modelle für schnelle, strukturierte Antworten","dialog.provider.openrouter.note":"Zugriff auf alle unterstützten Modelle über einen Anbieter","dialog.provider.vercel.note":"Einheitlicher Zugriff auf KI-Modelle mit intelligentem Routing","dialog.model.select.title":"Modell auswählen","dialog.model.search.placeholder":"Modelle durchsuchen","dialog.model.empty":"Keine Modellergebnisse","dialog.model.manage":"Modelle verwalten","dialog.model.manage.description":"Anpassen, welche Modelle in der Modellauswahl erscheinen.","dialog.model.manage.provider.toggle":"Alle {{provider}}-Modelle umschalten","dialog.model.unpaid.freeModels.title":"Kostenlose Modelle von OpenCode","dialog.model.unpaid.addMore.title":"Weitere Modelle von beliebten Anbietern hinzufügen","dialog.provider.viewAll":"Mehr Anbieter anzeigen","provider.connect.title":"{{provider}} verbinden","provider.connect.title.anthropicProMax":"Mit Claude Pro/Max anmelden","provider.connect.selectMethod":"Anmeldemethode für {{provider}} auswählen.","provider.connect.method.apiKey":"API-Schlüssel","provider.connect.status.inProgress":"Autorisierung läuft...","provider.connect.status.waiting":"Warten auf Autorisierung...","provider.connect.status.failed":"Autorisierung fehlgeschlagen: {{error}}","provider.connect.apiKey.description":"Geben Sie Ihren {{provider}} API-Schlüssel ein, um Ihr Konto zu verbinden und {{provider}} Modelle in OpenCode zu nutzen.","provider.connect.apiKey.label":"{{provider}} API-Schlüssel","provider.connect.apiKey.placeholder":"API-Schlüssel","provider.connect.apiKey.required":"API-Schlüssel ist erforderlich","provider.connect.opencodeZen.line1":"OpenCode Zen bietet Ihnen Zugriff auf eine kuratierte Auswahl zuverlässiger, optimierter Modelle für Coding-Agenten.","provider.connect.opencodeZen.line2":"Mit einem einzigen API-Schlüssel erhalten Sie Zugriff auf Modelle wie Claude, GPT, Gemini, GLM und mehr.","provider.connect.opencodeZen.visit.prefix":"Besuchen Sie ","provider.connect.opencodeZen.visit.link":"opencode.ai/zen","provider.connect.opencodeZen.visit.suffix":", um Ihren API-Schlüssel zu erhalten.","provider.connect.oauth.code.visit.prefix":"Besuchen Sie ","provider.connect.oauth.code.visit.link":"diesen Link","provider.connect.oauth.code.visit.suffix":", um Ihren Autorisierungscode zu erhalten, Ihr Konto zu verbinden und {{provider}} Modelle in OpenCode zu nutzen.","provider.connect.oauth.code.label":"{{method}} Autorisierungscode","provider.connect.oauth.code.placeholder":"Autorisierungscode","provider.connect.oauth.code.required":"Autorisierungscode ist erforderlich","provider.connect.oauth.code.invalid":"Ungültiger Autorisierungscode","provider.connect.oauth.auto.visit.prefix":"Besuchen Sie ","provider.connect.oauth.auto.visit.link":"diesen Link","provider.connect.oauth.auto.visit.suffix":" und geben Sie den untenstehenden Code ein, um Ihr Konto zu verbinden und {{provider}} Modelle in OpenCode zu nutzen.","provider.connect.oauth.auto.confirmationCode":"Bestätigungscode","provider.connect.toast.connected.title":"{{provider}} verbunden","provider.connect.toast.connected.description":"{{provider}} Modelle sind jetzt verfügbar.","provider.custom.title":"Benutzerdefinierter Anbieter","provider.custom.description.prefix":"Konfigurieren Sie einen OpenAI-kompatiblen Anbieter. Siehe die ","provider.custom.description.link":"Anbieter-Konfigurationsdokumente","provider.custom.description.suffix":".","provider.custom.field.providerID.label":"Anbieter-ID","provider.custom.field.providerID.placeholder":"myprovider","provider.custom.field.providerID.description":"Kleinbuchstaben, Zahlen, Bindestriche oder Unterstriche","provider.custom.field.name.label":"Anzeigename","provider.custom.field.name.placeholder":"Mein KI-Anbieter","provider.custom.field.baseURL.label":"Basis-URL","provider.custom.field.baseURL.placeholder":"https://api.myprovider.com/v1","provider.custom.field.apiKey.label":"API-Schlüssel","provider.custom.field.apiKey.placeholder":"API-Schlüssel","provider.custom.field.apiKey.description":"Optional. Leer lassen, wenn Sie die Authentifizierung über Header verwalten.","provider.custom.models.label":"Modelle","provider.custom.models.id.label":"ID","provider.custom.models.id.placeholder":"model-id","provider.custom.models.name.label":"Name","provider.custom.models.name.placeholder":"Anzeigename","provider.custom.models.remove":"Modell entfernen","provider.custom.models.add":"Modell hinzufügen","provider.custom.headers.label":"Header (optional)","provider.custom.headers.key.label":"Header","provider.custom.headers.key.placeholder":"Header-Name","provider.custom.headers.value.label":"Wert","provider.custom.headers.value.placeholder":"wert","provider.custom.headers.remove":"Header entfernen","provider.custom.headers.add":"Header hinzufügen","provider.custom.error.providerID.required":"Anbieter-ID ist erforderlich","provider.custom.error.providerID.format":"Verwenden Sie Kleinbuchstaben, Zahlen, Bindestriche oder Unterstriche","provider.custom.error.providerID.exists":"Diese Anbieter-ID existiert bereits","provider.custom.error.name.required":"Anzeigename ist erforderlich","provider.custom.error.baseURL.required":"Basis-URL ist erforderlich","provider.custom.error.baseURL.format":"Muss mit http:// oder https:// beginnen","provider.custom.error.required":"Erforderlich","provider.custom.error.duplicate":"Duplikat","provider.disconnect.toast.disconnected.title":"{{provider}} getrennt","provider.disconnect.toast.disconnected.description":"Die {{provider}}-Modelle sind nicht mehr verfügbar.","model.tag.free":"Kostenlos","model.tag.latest":"Neueste","model.provider.anthropic":"Anthropic","model.provider.openai":"OpenAI","model.provider.google":"Google","model.provider.xai":"xAI","model.provider.meta":"Meta","model.input.text":"Text","model.input.image":"Bild","model.input.audio":"Audio","model.input.video":"Video","model.input.pdf":"PDF","model.tooltip.allows":"Erlaubt: {{inputs}}","model.tooltip.reasoning.allowed":"Erlaubt Reasoning","model.tooltip.reasoning.none":"Kein Reasoning","model.tooltip.context":"Kontextlimit {{limit}}","common.search.placeholder":"Suchen","common.goBack":"Zurück","common.goForward":"Vorwärts navigieren","common.loading":"Laden","common.loading.ellipsis":"...","common.cancel":"Abbrechen","common.connect":"Verbinden","common.disconnect":"Trennen","common.continue":"Absenden","common.submit":"Absenden","common.save":"Speichern","common.saving":"Speichert...","common.default":"Standard","common.attachment":"Anhang","prompt.placeholder.shell":"Shell-Befehl eingeben...","prompt.placeholder.normal":'Fragen Sie alles... "{{example}}"',"prompt.placeholder.simple":"Fragen Sie alles...","prompt.placeholder.summarizeComments":"Kommentare zusammenfassen…","prompt.placeholder.summarizeComment":"Kommentar zusammenfassen…","prompt.mode.shell":"Shell","prompt.mode.normal":"Prompt","prompt.mode.shell.exit":"esc zum Verlassen","prompt.example.1":"Ein TODO in der Codebasis beheben","prompt.example.2":"Was ist der Tech-Stack dieses Projekts?","prompt.example.3":"Fehlerhafte Tests beheben","prompt.example.4":"Erkläre, wie die Authentifizierung funktioniert","prompt.example.5":"Sicherheitslücken finden und beheben","prompt.example.6":"Unit-Tests für den Benutzerdienst hinzufügen","prompt.example.7":"Diese Funktion lesbarer gestalten","prompt.example.8":"Was bedeutet dieser Fehler?","prompt.example.9":"Hilf mir, dieses Problem zu debuggen","prompt.example.10":"API-Dokumentation generieren","prompt.example.11":"Datenbankabfragen optimieren","prompt.example.12":"Eingabevalidierung hinzufügen","prompt.example.13":"Neue Komponente erstellen für...","prompt.example.14":"Wie deploye ich dieses Projekt?","prompt.example.15":"Meinen Code auf Best Practices überprüfen","prompt.example.16":"Fehlerbehandlung zu dieser Funktion hinzufügen","prompt.example.17":"Erkläre dieses Regex-Muster","prompt.example.18":"Dies in TypeScript konvertieren","prompt.example.19":"Logging in der gesamten Codebasis hinzufügen","prompt.example.20":"Welche Abhängigkeiten sind veraltet?","prompt.example.21":"Hilf mir, ein Migrationsskript zu schreiben","prompt.example.22":"Caching für diesen Endpunkt implementieren","prompt.example.23":"Paginierung zu dieser Liste hinzufügen","prompt.example.24":"CLI-Befehl erstellen für...","prompt.example.25":"Wie funktionieren Umgebungsvariablen hier?","prompt.popover.emptyResults":"Keine passenden Ergebnisse","prompt.popover.emptyCommands":"Keine passenden Befehle","prompt.dropzone.label":"Bilder, PDFs oder Textdateien hier ablegen","prompt.dropzone.file.label":"Ablegen zum @Erwähnen der Datei","prompt.slash.badge.custom":"benutzerdefiniert","prompt.slash.badge.skill":"Skill","prompt.slash.badge.mcp":"MCP","prompt.context.active":"aktiv","prompt.context.includeActiveFile":"Aktive Datei einbeziehen","prompt.context.removeActiveFile":"Aktive Datei aus dem Kontext entfernen","prompt.context.removeFile":"Datei aus dem Kontext entfernen","prompt.action.attachFile":"Datei anhängen","prompt.attachment.remove":"Anhang entfernen","prompt.action.send":"Senden","prompt.action.stop":"Stopp","prompt.toast.pasteUnsupported.title":"Nicht unterstützter Anhang","prompt.toast.pasteUnsupported.description":"Hier können nur Bilder, PDFs oder Textdateien angehängt werden.","prompt.toast.modelAgentRequired.title":"Wählen Sie einen Agenten und ein Modell","prompt.toast.modelAgentRequired.description":"Wählen Sie einen Agenten und ein Modell, bevor Sie eine Eingabe senden.","prompt.toast.worktreeCreateFailed.title":"Worktree konnte nicht erstellt werden","prompt.toast.sessionCreateFailed.title":"Sitzung konnte nicht erstellt werden","prompt.toast.shellSendFailed.title":"Shell-Befehl konnte nicht gesendet werden","prompt.toast.commandSendFailed.title":"Befehl konnte nicht gesendet werden","prompt.toast.promptSendFailed.title":"Eingabe konnte nicht gesendet werden","prompt.toast.promptSendFailed.description":"Sitzung konnte nicht abgerufen werden","dialog.mcp.title":"MCPs","dialog.mcp.description":"{{enabled}} von {{total}} aktiviert","dialog.mcp.empty":"Keine MCPs konfiguriert","dialog.lsp.empty":"LSPs automatisch nach Dateityp erkannt","dialog.plugins.empty":"In opencode.json konfigurierte Plugins","mcp.status.connected":"verbunden","mcp.status.failed":"fehlgeschlagen","mcp.status.needs_auth":"benötigt Authentifizierung","mcp.status.disabled":"deaktiviert","dialog.fork.empty":"Keine Nachrichten zum Abzweigen vorhanden","dialog.directory.search.placeholder":"Ordner durchsuchen","dialog.directory.empty":"Keine Ordner gefunden","dialog.server.title":"Server","dialog.server.description":"Wechseln Sie den OpenCode-Server, mit dem sich diese App verbindet.","dialog.server.search.placeholder":"Server durchsuchen","dialog.server.empty":"Noch keine Server","dialog.server.add.title":"Server hinzufügen","dialog.server.add.url":"Server-URL","dialog.server.add.placeholder":"http://localhost:4096","dialog.server.add.error":"Verbindung zum Server fehlgeschlagen","dialog.server.add.checking":"Prüfen...","dialog.server.add.button":"Server hinzufügen","dialog.server.add.name":"Servername (optional)","dialog.server.add.namePlaceholder":"Localhost","dialog.server.add.username":"Benutzername (optional)","dialog.server.add.password":"Passwort (optional)","dialog.server.edit.title":"Server bearbeiten","dialog.server.default.title":"Standardserver","dialog.server.default.description":"Beim App-Start mit diesem Server verbinden, anstatt einen lokalen Server zu starten. Erfordert Neustart.","dialog.server.default.none":"Kein Server ausgewählt","dialog.server.default.set":"Aktuellen Server als Standard setzen","dialog.server.default.clear":"Löschen","dialog.server.action.remove":"Server entfernen","dialog.server.menu.edit":"Bearbeiten","dialog.server.menu.default":"Als Standard festlegen","dialog.server.menu.defaultRemove":"Standard entfernen","dialog.server.menu.delete":"Löschen","dialog.server.current":"Aktueller Server","dialog.server.status.default":"Standard","dialog.project.edit.title":"Projekt bearbeiten","dialog.project.edit.name":"Name","dialog.project.edit.icon":"Icon","dialog.project.edit.icon.alt":"Projekt-Icon","dialog.project.edit.icon.hint":"Klicken oder Bild ziehen","dialog.project.edit.icon.recommended":"Empfohlen: 128x128px","dialog.project.edit.color":"Farbe","dialog.project.edit.color.select":"{{color}}-Farbe auswählen","dialog.project.edit.worktree.startup":"Startup-Skript für Arbeitsbereich","dialog.project.edit.worktree.startup.description":"Wird nach dem Erstellen eines neuen Arbeitsbereichs (Worktree) ausgeführt.","dialog.project.edit.worktree.startup.placeholder":"z. B. bun install","context.breakdown.title":"Kontext-Aufschlüsselung","context.breakdown.note":'Ungefähre Aufschlüsselung der Eingabe-Token. "Andere" beinhaltet Werkzeugdefinitionen und Overhead.',"context.breakdown.system":"System","context.breakdown.user":"Benutzer","context.breakdown.assistant":"Assistent","context.breakdown.tool":"Werkzeugaufrufe","context.breakdown.other":"Andere","context.systemPrompt.title":"System-Prompt","context.rawMessages.title":"Rohdaten der Nachrichten","context.stats.session":"Sitzung","context.stats.messages":"Nachrichten","context.stats.provider":"Anbieter","context.stats.model":"Modell","context.stats.limit":"Kontextlimit","context.stats.totalTokens":"Gesamt-Token","context.stats.usage":"Nutzung","context.stats.inputTokens":"Eingabe-Token","context.stats.outputTokens":"Ausgabe-Token","context.stats.reasoningTokens":"Reasoning-Token","context.stats.cacheTokens":"Cache-Token (lesen/schreiben)","context.stats.userMessages":"Benutzernachrichten","context.stats.assistantMessages":"Assistentennachrichten","context.stats.totalCost":"Gesamtkosten","context.stats.sessionCreated":"Sitzung erstellt","context.stats.lastActivity":"Letzte Aktivität","context.usage.tokens":"Token","context.usage.usage":"Nutzung","context.usage.cost":"Kosten","context.usage.clickToView":"Klicken, um Kontext anzuzeigen","context.usage.view":"Kontextnutzung anzeigen","language.en":"English","language.zh":"简体中文","language.zht":"繁體中文","language.ko":"한국어","language.de":"Deutsch","language.es":"Español","language.fr":"Français","language.da":"Dansk","language.ja":"日本語","language.pl":"Polski","language.ru":"Русский","language.ar":"العربية","language.no":"Norsk","language.br":"Português (Brasil)","language.bs":"Bosanski","language.th":"ไทย","language.tr":"Türkçe","toast.language.title":"Sprache","toast.language.description":"Zu {{language}} gewechselt","toast.theme.title":"Thema gewechselt","toast.scheme.title":"Farbschema","toast.workspace.enabled.title":"Arbeitsbereiche aktiviert","toast.workspace.enabled.description":"Mehrere Worktrees werden jetzt in der Seitenleiste angezeigt","toast.workspace.disabled.title":"Arbeitsbereiche deaktiviert","toast.workspace.disabled.description":"Nur der Haupt-Worktree wird in der Seitenleiste angezeigt","toast.permissions.autoaccept.on.title":"Berechtigungen werden automatisch akzeptiert","toast.permissions.autoaccept.on.description":"Berechtigungsanfragen werden automatisch genehmigt","toast.permissions.autoaccept.off.title":"Automatische Akzeptanz von Berechtigungen gestoppt","toast.permissions.autoaccept.off.description":"Berechtigungsanfragen erfordern eine Genehmigung","toast.model.none.title":"Kein Modell ausgewählt","toast.model.none.description":"Verbinden Sie einen Anbieter, um diese Sitzung zusammenzufassen","toast.file.loadFailed.title":"Datei konnte nicht geladen werden","toast.file.listFailed.title":"Dateien konnten nicht aufgelistet werden","toast.context.noLineSelection.title":"Keine Zeilenauswahl","toast.context.noLineSelection.description":"Wählen Sie zuerst einen Zeilenbereich in einem Datei-Tab aus.","toast.session.share.copyFailed.title":"URL konnte nicht in die Zwischenablage kopiert werden","toast.session.share.success.title":"Sitzung geteilt","toast.session.share.success.description":"Teilen-URL in die Zwischenablage kopiert!","toast.session.share.failed.title":"Sitzung konnte nicht geteilt werden","toast.session.share.failed.description":"Beim Teilen der Sitzung ist ein Fehler aufgetreten","toast.session.unshare.success.title":"Teilen der Sitzung aufgehoben","toast.session.unshare.success.description":"Teilen der Sitzung erfolgreich aufgehoben!","toast.session.unshare.failed.title":"Aufheben des Teilens fehlgeschlagen","toast.session.unshare.failed.description":"Beim Aufheben des Teilens ist ein Fehler aufgetreten","toast.session.listFailed.title":"Sitzungen für {{project}} konnten nicht geladen werden","toast.update.title":"Update verfügbar","toast.update.description":"Eine neue Version von OpenCode ({{version}}) ist zur Installation verfügbar.","toast.update.action.installRestart":"Installieren und neu starten","toast.update.action.notYet":"Noch nicht","error.page.title":"Etwas ist schiefgelaufen","error.page.description":"Beim Laden der Anwendung ist ein Fehler aufgetreten.","error.page.details.label":"Fehlerdetails","error.page.action.restart":"Neustart","error.page.action.checking":"Prüfen...","error.page.action.checkUpdates":"Nach Updates suchen","error.page.action.updateTo":"Auf {{version}} aktualisieren","error.page.report.prefix":"Bitte melden Sie diesen Fehler dem OpenCode-Team","error.page.report.discord":"auf Discord","error.page.version":"Version: {{version}}","error.dev.rootNotFound":"Wurzelelement nicht gefunden. Haben Sie vergessen, es in Ihre index.html aufzunehmen? Oder wurde das id-Attribut falsch geschrieben?","error.globalSync.connectFailed":"Verbindung zum Server fehlgeschlagen. Läuft ein Server unter `{{url}}`?","directory.error.invalidUrl":"Ungültiges Verzeichnis in der URL.","error.chain.unknown":"Unbekannter Fehler","error.chain.causedBy":"Verursacht durch:","error.chain.apiError":"API-Fehler","error.chain.status":"Status: {{status}}","error.chain.retryable":"Wiederholbar: {{retryable}}","error.chain.responseBody":`Antwort-Body:
|
|
2
|
+
{{body}}`,"error.chain.didYouMean":"Meinten Sie: {{suggestions}}","error.chain.modelNotFound":"Modell nicht gefunden: {{provider}}/{{model}}","error.chain.checkConfig":"Überprüfen Sie Ihre Konfiguration (opencode.json) auf Anbieter-/Modellnamen","error.chain.mcpFailed":'MCP-Server "{{name}}" fehlgeschlagen. Hinweis: OpenCode unterstützt noch keine MCP-Authentifizierung.',"error.chain.providerAuthFailed":"Anbieter-Authentifizierung fehlgeschlagen ({{provider}}): {{message}}","error.chain.providerInitFailed":'Anbieter "{{provider}}" konnte nicht initialisiert werden. Überprüfen Sie Anmeldeinformationen und Konfiguration.',"error.chain.configJsonInvalid":"Konfigurationsdatei unter {{path}} ist kein gültiges JSON(C)","error.chain.configJsonInvalidWithMessage":"Konfigurationsdatei unter {{path}} ist kein gültiges JSON(C): {{message}}","error.chain.configDirectoryTypo":'Verzeichnis "{{dir}}" in {{path}} ist ungültig. Benennen Sie das Verzeichnis in "{{suggestion}}" um oder entfernen Sie es. Dies ist ein häufiger Tippfehler.',"error.chain.configFrontmatterError":`Frontmatter in {{path}} konnte nicht geparst werden:
|
|
3
|
+
{{message}}`,"error.chain.configInvalid":"Konfigurationsdatei unter {{path}} ist ungültig","error.chain.configInvalidWithMessage":"Konfigurationsdatei unter {{path}} ist ungültig: {{message}}","notification.permission.title":"Berechtigung erforderlich","notification.permission.description":"{{sessionTitle}} in {{projectName}} benötigt Berechtigung","notification.question.title":"Frage","notification.question.description":"{{sessionTitle}} in {{projectName}} hat eine Frage","notification.action.goToSession":"Zur Sitzung gehen","notification.session.responseReady.title":"Antwort bereit","notification.session.error.title":"Sitzungsfehler","notification.session.error.fallbackDescription":"Ein Fehler ist aufgetreten","home.recentProjects":"Letzte Projekte","home.empty.title":"Keine letzten Projekte","home.empty.description":"Starten Sie, indem Sie ein lokales Projekt öffnen","session.tab.session":"Sitzung","session.tab.review":"Überprüfung","session.tab.track":"Verfolgung","session.tab.code":"Code","session.tab.context":"Kontext","session.panel.reviewAndFiles":"Überprüfung und Dateien","session.review.filesChanged":"{{count}} Dateien geändert","session.review.change.one":"Änderung","session.review.change.other":"Änderungen","session.review.loadingChanges":"Lade Änderungen...","session.review.empty":"Noch keine Änderungen in dieser Sitzung","session.review.noVcs":"Kein Git-Versionskontrollsystem erkannt, Änderungen werden nicht angezeigt","session.review.noSnapshot":"Snapshot-Tracking ist in der Konfiguration deaktiviert, daher sind Sitzungsänderungen nicht verfügbar","session.review.noChanges":"Keine Änderungen","session.files.selectToOpen":"Datei zum Öffnen auswählen","session.files.all":"Alle Dateien","session.files.empty":"Keine Dateien","session.fileTree.newFile":"Neue Datei","session.fileTree.newFolder":"Neuer Ordner","session.fileTree.expandAll":"Alle aufklappen","session.fileTree.collapseAll":"Alle zuklappen","session.fileTree.refresh":"Aktualisieren","session.files.binaryContent":"Binärdatei (Inhalt kann nicht angezeigt werden)","session.messages.renderEarlier":"Frühere Nachrichten rendern","session.messages.loadingEarlier":"Lade frühere Nachrichten...","session.messages.loadEarlier":"Frühere Nachrichten laden","session.messages.loading":"Lade Nachrichten...","session.messages.jumpToLatest":"Zum neuesten springen","session.context.addToContext":"{{selection}} zum Kontext hinzufügen","session.todo.title":"Aufgaben","session.todo.collapse":"Einklappen","session.todo.expand":"Ausklappen","session.followupDock.summary.one":"{{count}} Nachricht in der Warteschlange","session.followupDock.summary.other":"{{count}} Nachrichten in der Warteschlange","session.followupDock.sendNow":"Jetzt senden","session.followupDock.edit":"Bearbeiten","session.followupDock.collapse":"Warteschlange einklappen","session.followupDock.expand":"Warteschlange ausklappen","session.revertDock.summary.one":"{{count}} zurückgesetzte Nachricht","session.revertDock.summary.other":"{{count}} zurückgesetzte Nachrichten","session.revertDock.collapse":"Zurückgesetzte Nachrichten einklappen","session.revertDock.expand":"Zurückgesetzte Nachrichten ausklappen","session.revertDock.restore":"Nachricht wiederherstellen","session.new.title":"Baue, was du willst","session.new.worktree.main":"Haupt-Branch","session.new.worktree.mainWithBranch":"Haupt-Branch ({{branch}})","session.new.worktree.create":"Neuen Worktree erstellen","session.new.lastModified":"Zuletzt geändert","session.header.search.placeholder":"{{project}} durchsuchen","session.header.searchFiles":"Dateien suchen","session.header.openIn":"Öffnen in","session.header.open.action":"{{app}} öffnen","session.header.open.ariaLabel":"In {{app}} öffnen","session.header.open.menu":"Öffnen-Optionen","session.header.open.copyPath":"Pfad kopieren","status.popover.trigger":"Status","status.popover.ariaLabel":"Serverkonfigurationen","status.popover.tab.servers":"Server","status.popover.tab.mcp":"MCP","status.popover.tab.lsp":"LSP","status.popover.tab.plugins":"Plugins","status.popover.action.manageServers":"Server verwalten","session.share.popover.title":"Im Web veröffentlichen","session.share.popover.description.shared":"Diese Sitzung ist öffentlich im Web. Sie ist für jeden mit dem Link zugänglich.","session.share.popover.description.unshared":"Sitzung öffentlich im Web teilen. Sie wird für jeden mit dem Link zugänglich sein.","session.share.action.share":"Teilen","session.share.action.publish":"Veröffentlichen","session.share.action.publishing":"Veröffentliche...","session.share.action.unpublish":"Veröffentlichung aufheben","session.share.action.unpublishing":"Hebe Veröffentlichung auf...","session.share.action.view":"Ansehen","session.share.copy.copied":"Kopiert","session.share.copy.copyLink":"Link kopieren","lsp.tooltip.none":"Keine LSP-Server","lsp.label.connected":"{{count}} LSP","prompt.loading":"Lade Prompt...","terminal.loading":"Lade Terminal...","terminal.title":"Terminal","terminal.title.numbered":"Terminal {{number}}","terminal.close":"Terminal schließen","terminal.connectionLost.title":"Verbindung verloren","terminal.connectionLost.description":"Die Terminalverbindung wurde unterbrochen. Das kann passieren, wenn der Server neu startet.","common.closeTab":"Tab schließen","common.dismiss":"Verwerfen","common.requestFailed":"Anfrage fehlgeschlagen","common.moreOptions":"Weitere Optionen","common.learnMore":"Mehr erfahren","common.rename":"Umbenennen","common.reset":"Zurücksetzen","common.archive":"Archivieren","common.delete":"Löschen","common.close":"Schließen","common.edit":"Bearbeiten","common.loadMore":"Mehr laden","common.key.esc":"ESC","sidebar.menu.toggle":"Menü umschalten","sidebar.nav.projectsAndSessions":"Projekte und Sitzungen","sidebar.settings":"Einstellungen","sidebar.help":"Hilfe","sidebar.workspaces.enable":"Arbeitsbereiche aktivieren","sidebar.workspaces.disable":"Arbeitsbereiche deaktivieren","sidebar.gettingStarted.title":"Erste Schritte","sidebar.gettingStarted.line1":"OpenCode enthält kostenlose Modelle, damit Sie sofort loslegen können.","sidebar.gettingStarted.line2":"Verbinden Sie einen beliebigen Anbieter, um Modelle wie Claude, GPT, Gemini usw. zu nutzen.","sidebar.project.recentSessions":"Letzte Sitzungen","sidebar.project.viewAllSessions":"Alle Sitzungen anzeigen","sidebar.project.clearNotifications":"Benachrichtigungen löschen","app.name.desktop":"OpenCode Desktop","settings.section.desktop":"Desktop","settings.section.server":"Server","settings.tab.general":"Allgemein","settings.tab.shortcuts":"Tastenkombinationen","settings.desktop.section.wsl":"WSL","settings.desktop.wsl.title":"WSL-Integration","settings.desktop.wsl.description":"OpenCode-Server innerhalb von WSL unter Windows ausführen.","settings.general.section.appearance":"Erscheinungsbild","settings.general.section.notifications":"Systembenachrichtigungen","settings.general.section.updates":"Updates","settings.general.section.sounds":"Soundeffekte","settings.general.section.feed":"Feed","settings.general.section.display":"Anzeige","settings.general.row.language.title":"Sprache","settings.general.row.language.description":"Die Anzeigesprache für OpenCode ändern","settings.general.row.appearance.title":"Erscheinungsbild","settings.general.row.appearance.description":"Anpassen, wie OpenCode auf Ihrem Gerät aussieht","settings.general.row.colorScheme.title":"Farbschema","settings.general.row.colorScheme.description":"Wählen Sie, ob OpenCode dem System-, hellen oder dunklen Thema folgt","settings.general.row.theme.title":"Thema","settings.general.row.theme.description":"Das Thema von OpenCode anpassen.","settings.general.row.font.title":"Code-Schriftart","settings.general.row.font.description":"Die in Codeblöcken und Terminals verwendete Schriftart anpassen","settings.general.row.uiFont.title":"UI-Schriftart","settings.general.row.uiFont.description":"Die im gesamten Interface verwendete Schriftart anpassen","settings.general.row.followup.title":"Verhalten bei Folgefragen","settings.general.row.followup.description":"Wählen Sie, ob Folgefragen sofort steuern oder in einer Warteschlange warten","settings.general.row.followup.option.queue":"Warteschlange","settings.general.row.followup.option.steer":"Steuern","settings.general.row.reasoningSummaries.title":"Reasoning-Zusammenfassungen anzeigen","settings.general.row.reasoningSummaries.description":"Zusammenfassungen des Modell-Reasonings in der Timeline anzeigen","settings.general.row.shellToolPartsExpanded.title":"Shell-Tool-Abschnitte ausklappen","settings.general.row.shellToolPartsExpanded.description":"Shell-Tool-Abschnitte standardmäßig in der Timeline ausgeklappt anzeigen","settings.general.row.editToolPartsExpanded.title":"Edit-Tool-Abschnitte ausklappen","settings.general.row.editToolPartsExpanded.description":"Edit-, Write- und Patch-Tool-Abschnitte standardmäßig in der Timeline ausgeklappt anzeigen","settings.general.row.wayland.title":"Natives Wayland verwenden","settings.general.row.wayland.description":"X11-Fallback unter Wayland deaktivieren. Erfordert Neustart.","settings.general.row.wayland.tooltip":"Unter Linux mit Monitoren unterschiedlicher Bildwiederholraten kann natives Wayland stabiler sein.","settings.general.row.releaseNotes.title":"Versionshinweise","settings.general.row.releaseNotes.description":'"Neuigkeiten"-Pop-ups nach Updates anzeigen',"settings.updates.row.startup.title":"Beim Start nach Updates suchen","settings.updates.row.startup.description":"Beim Start von OpenCode automatisch nach Updates suchen","settings.updates.row.check.title":"Nach Updates suchen","settings.updates.row.check.description":"Manuell nach Updates suchen und installieren, wenn verfügbar","settings.updates.action.checkNow":"Jetzt prüfen","settings.updates.action.checking":"Wird geprüft...","settings.updates.toast.latest.title":"Du bist auf dem neuesten Stand","settings.updates.toast.latest.description":"Du verwendest die aktuelle Version von OpenCode.","sound.option.none":"Keine","sound.option.alert01":"Alarm 01","sound.option.alert02":"Alarm 02","sound.option.alert03":"Alarm 03","sound.option.alert04":"Alarm 04","sound.option.alert05":"Alarm 05","sound.option.alert06":"Alarm 06","sound.option.alert07":"Alarm 07","sound.option.alert08":"Alarm 08","sound.option.alert09":"Alarm 09","sound.option.alert10":"Alarm 10","sound.option.bipbop01":"Bip-bop 01","sound.option.bipbop02":"Bip-bop 02","sound.option.bipbop03":"Bip-bop 03","sound.option.bipbop04":"Bip-bop 04","sound.option.bipbop05":"Bip-bop 05","sound.option.bipbop06":"Bip-bop 06","sound.option.bipbop07":"Bip-bop 07","sound.option.bipbop08":"Bip-bop 08","sound.option.bipbop09":"Bip-bop 09","sound.option.bipbop10":"Bip-bop 10","sound.option.staplebops01":"Staplebops 01","sound.option.staplebops02":"Staplebops 02","sound.option.staplebops03":"Staplebops 03","sound.option.staplebops04":"Staplebops 04","sound.option.staplebops05":"Staplebops 05","sound.option.staplebops06":"Staplebops 06","sound.option.staplebops07":"Staplebops 07","sound.option.nope01":"Nein 01","sound.option.nope02":"Nein 02","sound.option.nope03":"Nein 03","sound.option.nope04":"Nein 04","sound.option.nope05":"Nein 05","sound.option.nope06":"Nein 06","sound.option.nope07":"Nein 07","sound.option.nope08":"Nein 08","sound.option.nope09":"Nein 09","sound.option.nope10":"Nein 10","sound.option.nope11":"Nein 11","sound.option.nope12":"Nein 12","sound.option.yup01":"Ja 01","sound.option.yup02":"Ja 02","sound.option.yup03":"Ja 03","sound.option.yup04":"Ja 04","sound.option.yup05":"Ja 05","sound.option.yup06":"Ja 06","settings.general.notifications.agent.title":"Agent","settings.general.notifications.agent.description":"Systembenachrichtigung anzeigen, wenn der Agent fertig ist oder Aufmerksamkeit benötigt","settings.general.notifications.permissions.title":"Berechtigungen","settings.general.notifications.permissions.description":"Systembenachrichtigung anzeigen, wenn eine Berechtigung erforderlich ist","settings.general.notifications.errors.title":"Fehler","settings.general.notifications.errors.description":"Systembenachrichtigung anzeigen, wenn ein Fehler auftritt","settings.general.sounds.agent.title":"Agent","settings.general.sounds.agent.description":"Ton abspielen, wenn der Agent fertig ist oder Aufmerksamkeit benötigt","settings.general.sounds.permissions.title":"Berechtigungen","settings.general.sounds.permissions.description":"Ton abspielen, wenn eine Berechtigung erforderlich ist","settings.general.sounds.errors.title":"Fehler","settings.general.sounds.errors.description":"Ton abspielen, wenn ein Fehler auftritt","settings.shortcuts.title":"Tastenkombinationen","settings.shortcuts.reset.button":"Auf Standard zurücksetzen","settings.shortcuts.reset.toast.title":"Tastenkombinationen zurückgesetzt","settings.shortcuts.reset.toast.description":"Die Tastenkombinationen wurden auf die Standardwerte zurückgesetzt.","settings.shortcuts.conflict.title":"Tastenkombination bereits in Verwendung","settings.shortcuts.conflict.description":"{{keybind}} ist bereits {{titles}} zugewiesen.","settings.shortcuts.unassigned":"Nicht zugewiesen","settings.shortcuts.pressKeys":"Tasten drücken","settings.shortcuts.search.placeholder":"Tastenkürzel suchen","settings.shortcuts.search.empty":"Keine Tastenkürzel gefunden","settings.shortcuts.group.general":"Allgemein","settings.shortcuts.group.session":"Sitzung","settings.shortcuts.group.navigation":"Navigation","settings.shortcuts.group.modelAndAgent":"Modell und Agent","settings.shortcuts.group.terminal":"Terminal","settings.shortcuts.group.prompt":"Prompt","settings.providers.title":"Anbieter","settings.providers.description":"Anbietereinstellungen können hier konfiguriert werden.","settings.providers.section.connected":"Verbundene Anbieter","settings.providers.connected.empty":"Keine verbundenen Anbieter","settings.providers.section.popular":"Beliebte Anbieter","settings.providers.tag.environment":"Umgebung","settings.providers.tag.config":"Konfiguration","settings.providers.tag.custom":"Benutzerdefiniert","settings.providers.tag.other":"Andere","settings.models.title":"Modelle","settings.models.description":"Modelleinstellungen können hier konfiguriert werden.","settings.agents.title":"Agenten","settings.agents.description":"Agenteneinstellungen können hier konfiguriert werden.","settings.commands.title":"Befehle","settings.commands.description":"Befehlseinstellungen können hier konfiguriert werden.","settings.mcp.title":"MCP","settings.mcp.description":"MCP-Einstellungen können hier konfiguriert werden.","settings.permissions.title":"Berechtigungen","settings.permissions.description":"Steuern Sie, welche Tools der Server standardmäßig verwenden darf.","settings.permissions.section.tools":"Tools","settings.permissions.toast.updateFailed.title":"Berechtigungen konnten nicht aktualisiert werden","settings.permissions.action.allow":"Erlauben","settings.permissions.action.ask":"Fragen","settings.permissions.action.deny":"Verweigern","settings.permissions.tool.read.title":"Lesen","settings.permissions.tool.read.description":"Lesen einer Datei (stimmt mit dem Dateipfad überein)","settings.permissions.tool.edit.title":"Bearbeiten","settings.permissions.tool.edit.description":"Dateien ändern, einschließlich Bearbeitungen, Schreibvorgängen, Patches und Mehrfachbearbeitungen","settings.permissions.tool.glob.title":"Glob","settings.permissions.tool.glob.description":"Dateien mithilfe von Glob-Mustern abgleichen","settings.permissions.tool.grep.title":"Grep","settings.permissions.tool.grep.description":"Dateiinhalte mit regulären Ausdrücken durchsuchen","settings.permissions.tool.list.title":"Auflisten","settings.permissions.tool.list.description":"Dateien in einem Verzeichnis auflisten","settings.permissions.tool.bash.title":"Bash","settings.permissions.tool.bash.description":"Shell-Befehle ausführen","settings.permissions.tool.task.title":"Aufgabe","settings.permissions.tool.task.description":"Unteragenten starten","settings.permissions.tool.skill.title":"Fähigkeit","settings.permissions.tool.skill.description":"Eine Fähigkeit nach Namen laden","settings.permissions.tool.lsp.title":"LSP","settings.permissions.tool.lsp.description":"Language-Server-Abfragen ausführen","settings.permissions.tool.todowrite.title":"Todo schreiben","settings.permissions.tool.todowrite.description":"Die Todo-Liste aktualisieren","settings.permissions.tool.webfetch.title":"Web-Abruf","settings.permissions.tool.webfetch.description":"Inhalt von einer URL abrufen","settings.permissions.tool.websearch.title":"Web-Suche","settings.permissions.tool.websearch.description":"Das Web durchsuchen","settings.permissions.tool.codesearch.title":"Code-Suche","settings.permissions.tool.codesearch.description":"Code im Web durchsuchen","settings.permissions.tool.external_directory.title":"Externes Verzeichnis","settings.permissions.tool.external_directory.description":"Zugriff auf Dateien außerhalb des Projektverzeichnisses","settings.permissions.tool.doom_loop.title":"Doom Loop","settings.permissions.tool.doom_loop.description":"Wiederholte Tool-Aufrufe mit identischer Eingabe erkennen","session.delete.failed.title":"Sitzung konnte nicht gelöscht werden","session.delete.title":"Sitzung löschen","session.delete.confirm":'Sitzung "{{name}}" löschen?',"session.delete.button":"Sitzung löschen","workspace.new":"Neuer Arbeitsbereich","workspace.type.local":"lokal","workspace.type.sandbox":"Sandbox","workspace.create.failed.title":"Arbeitsbereich konnte nicht erstellt werden","workspace.delete.failed.title":"Arbeitsbereich konnte nicht gelöscht werden","workspace.resetting.title":"Arbeitsbereich wird zurückgesetzt","workspace.resetting.description":"Dies kann eine Minute dauern.","workspace.reset.failed.title":"Arbeitsbereich konnte nicht zurückgesetzt werden","workspace.reset.success.title":"Arbeitsbereich zurückgesetzt","workspace.reset.success.description":"Der Arbeitsbereich entspricht jetzt dem Standard-Branch.","workspace.error.stillPreparing":"Arbeitsbereich wird noch vorbereitet","workspace.status.checking":"Suche nach nicht zusammengeführten Änderungen...","workspace.status.error":"Git-Status konnte nicht überprüft werden.","workspace.status.clean":"Keine nicht zusammengeführten Änderungen erkannt.","workspace.status.dirty":"Nicht zusammengeführte Änderungen in diesem Arbeitsbereich erkannt.","workspace.delete.title":"Arbeitsbereich löschen","workspace.delete.confirm":'Arbeitsbereich "{{name}}" löschen?',"workspace.delete.button":"Arbeitsbereich löschen","workspace.reset.title":"Arbeitsbereich zurücksetzen","workspace.reset.confirm":'Arbeitsbereich "{{name}}" zurücksetzen?',"workspace.reset.button":"Arbeitsbereich zurücksetzen","workspace.reset.archived.none":"Keine aktiven Sitzungen werden archiviert.","workspace.reset.archived.one":"1 Sitzung wird archiviert.","workspace.reset.archived.many":"{{count}} Sitzungen werden archiviert.","workspace.reset.note":"Dadurch wird der Arbeitsbereich auf den Standard-Branch zurückgesetzt.","common.open":"Öffnen","dialog.releaseNotes.action.getStarted":"Loslegen","dialog.releaseNotes.action.next":"Weiter","dialog.releaseNotes.action.hideFuture":"In Zukunft nicht mehr anzeigen","dialog.releaseNotes.media.alt":"Vorschau auf die Version","toast.project.reloadFailed.title":"Fehler beim Neuladen von {{project}}","error.server.invalidConfiguration":"Ungültige Konfiguration","common.moreCountSuffix":" (+{{count}} weitere)","common.time.justNow":"Gerade eben","common.time.minutesAgo.short":"vor {{count}} Min","common.time.hoursAgo.short":"vor {{count}} Std","common.time.daysAgo.short":"vor {{count}} Tg","settings.providers.connected.environmentDescription":"Verbunden aus Ihren Umgebungsvariablen","settings.providers.custom.description":"Fügen Sie einen OpenAI-kompatiblen Anbieter per Basis-URL hinzu.","app.server.unreachable":"Konnte {{server}} nicht erreichen","app.server.retrying":"Automatische erneute Verbindung...","app.server.otherServers":"Andere Server","dialog.server.add.usernamePlaceholder":"Benutzername","dialog.server.add.passwordPlaceholder":"Passwort","server.row.noUsername":"Kein Benutzername","session.review.noVcs.createGit.title":"Git-Repository erstellen","session.review.noVcs.createGit.description":"Änderungen in diesem Projekt verfolgen, überprüfen und rückgängig machen","session.review.noVcs.createGit.actionLoading":"Git-Repository wird erstellt...","session.review.noVcs.createGit.action":"Git-Repository erstellen","session.todo.progress":"{{done}} von {{total}} Aufgaben erledigt","session.question.progress":"{{current}} von {{total}} Fragen","session.header.open.finder":"Finder","session.header.open.fileExplorer":"Datei-Explorer","session.header.open.fileManager":"Dateimanager","session.header.open.app.vscode":"VS Code","session.header.open.app.cursor":"Cursor","session.header.open.app.zed":"Zed","session.header.open.app.textmate":"TextMate","session.header.open.app.antigravity":"Antigravity","session.header.open.app.terminal":"Terminal","session.header.open.app.iterm2":"iTerm2","session.header.open.app.ghostty":"Ghostty","session.header.open.app.warp":"Warp","session.header.open.app.xcode":"Xcode","session.header.open.app.androidStudio":"Android Studio","session.header.open.app.powershell":"PowerShell","session.header.open.app.sublimeText":"Sublime Text","debugBar.ariaLabel":"Entwicklungs-Leistungsdiagnose","debugBar.na":"n.v.","debugBar.nav.label":"NAV","debugBar.nav.tip":"Letzter abgeschlossener Routenübergang, der eine Sitzungsseite berührt, gemessen vom Start des Routers bis zum ersten Rendern nach dem Einschwingen.","debugBar.fps.label":"FPS","debugBar.fps.tip":"Gleitende Bilder pro Sekunde in den letzten 5 Sekunden.","debugBar.frame.label":"FRAME","debugBar.frame.tip":"Schlechteste Frame-Zeit in den letzten 5 Sekunden.","debugBar.jank.label":"JANK","debugBar.jank.tip":"Frames über 32ms in den letzten 5 Sekunden.","debugBar.long.label":"LONG","debugBar.long.tip":"Blockierte Zeit und Anzahl langer Aufgaben in den letzten 5 Sekunden. Max Aufgabe: {{max}}.","debugBar.delay.label":"DELAY","debugBar.delay.tip":"Schlechteste beobachtete Eingabeverzögerung in den letzten 5 Sekunden.","debugBar.inp.label":"INP","debugBar.inp.tip":"Ungefähre Interaktionsdauer in den letzten 5 Sekunden. Dies ist INP-ähnlich, nicht das offizielle Web Vitals INP.","debugBar.cls.label":"CLS","debugBar.cls.tip":"Kumulative Layoutverschiebung für die aktuelle App-Lebensdauer.","debugBar.mem.label":"MEM","debugBar.mem.tipUnavailable":"Verwendeter JS-Heap vs Heap-Limit. Nur Chromium.","debugBar.mem.tip":"Verwendeter JS-Heap vs Heap-Limit. {{used}} von {{limit}}.","common.key.ctrl":"Strg","common.key.alt":"Alt","common.key.shift":"Umschalt","common.key.meta":"Meta","common.key.space":"Leertaste","common.key.backspace":"Rücktaste","common.key.enter":"Eingabe","common.key.tab":"Tab","common.key.delete":"Entf","common.key.home":"Pos1","common.key.end":"Ende","common.key.pageUp":"Bild auf","common.key.pageDown":"Bild ab","common.key.insert":"Einfg","common.unknown":"unbekannt","error.page.circular":"[Zirkulär]","error.globalSDK.noServerAvailable":"Kein Server verfügbar","error.globalSDK.serverNotAvailable":"Server nicht verfügbar","error.childStore.persistedCacheCreateFailed":"Dauerhafter Cache konnte nicht erstellt werden","error.childStore.persistedProjectMetadataCreateFailed":"Dauerhafte Projektmetadaten konnten nicht erstellt werden","error.childStore.persistedProjectIconCreateFailed":"Dauerhaftes Projekticon konnte nicht erstellt werden","error.childStore.storeCreateFailed":"Speicher konnte nicht erstellt werden","terminal.connectionLost.abnormalClose":"WebSocket abnormal geschlossen: {{code}}"};export{e as dict};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e={"ui.sessionReview.title":"Sitzungsänderungen","ui.sessionReview.title.lastTurn":"Änderungen der letzten Runde","ui.sessionReview.diffStyle.unified":"Vereinheitlicht","ui.sessionReview.diffStyle.split":"Geteilt","ui.sessionReview.openFile":"Datei öffnen","ui.sessionReview.selection.line":"Zeile {{line}}","ui.sessionReview.selection.lines":"Zeilen {{start}}-{{end}}","ui.sessionReview.expandAll":"Alle erweitern","ui.sessionReview.collapseAll":"Alle reduzieren","ui.sessionReview.change.added":"Hinzugefügt","ui.sessionReview.change.removed":"Entfernt","ui.sessionReview.change.modified":"Geändert","ui.sessionReview.image.loading":"Wird geladen...","ui.sessionReview.image.placeholder":"Bild","ui.sessionReview.largeDiff.title":"Diff zu groß zum Rendern","ui.sessionReview.largeDiff.meta":"Limit: {{limit}} geänderte Zeilen. Aktuell: {{current}} geänderte Zeilen.","ui.sessionReview.largeDiff.renderAnyway":"Trotzdem rendern","ui.fileMedia.kind.image":"bild","ui.fileMedia.kind.audio":"audio","ui.fileMedia.state.removed":"{{kind}} entfernt","ui.fileMedia.state.loading":"{{kind}} wird geladen","ui.fileMedia.state.error":"Fehler bei {{kind}}","ui.fileMedia.state.unavailable":"{{kind}} nicht verfügbar","ui.fileMedia.binary.title":"Binärdatei","ui.fileMedia.binary.description.path":"{{path}} kann nicht angezeigt werden, da es sich um eine Binärdatei handelt.","ui.fileMedia.binary.description.default":"Diese Datei kann nicht angezeigt werden, da es sich um eine Binärdatei handelt.","ui.lineComment.label.prefix":"Kommentar zu ","ui.lineComment.label.suffix":"","ui.lineComment.editorLabel.prefix":"Kommentiere ","ui.lineComment.editorLabel.suffix":"","ui.lineComment.placeholder":"Kommentar hinzufügen","ui.lineComment.submit":"Kommentieren","ui.sessionTurn.steps.show":"Schritte anzeigen","ui.sessionTurn.steps.hide":"Schritte ausblenden","ui.sessionTurn.summary.response":"Antwort","ui.sessionTurn.diff.showMore":"Weitere Änderungen anzeigen ({{count}})","ui.sessionTurn.retry.retrying":"erneuter Versuch","ui.sessionTurn.retry.inSeconds":"in {{seconds}}s","ui.sessionTurn.retry.attempt":"Versuch #{{attempt}}","ui.sessionTurn.retry.attemptLine":"{{line}} - Versuch #{{attempt}}","ui.sessionTurn.retry.geminiHot":"gemini ist gerade sehr überlastet","ui.sessionTurn.error.freeUsageExceeded":"Kostenloses Nutzungslimit überschritten","ui.sessionTurn.error.addCredits":"Guthaben aufladen","ui.sessionTurn.status.delegating":"Arbeit delegieren","ui.sessionTurn.status.planning":"Nächste Schritte planen","ui.sessionTurn.status.gatheringContext":"Erkunden","ui.sessionTurn.status.gatheredContext":"Erkundet","ui.sessionTurn.status.searchingCodebase":"Codebasis durchsuchen","ui.sessionTurn.status.searchingWeb":"Web durchsuchen","ui.sessionTurn.status.makingEdits":"Änderungen vornehmen","ui.sessionTurn.status.runningCommands":"Befehle ausführen","ui.sessionTurn.status.thinking":"Denken","ui.sessionTurn.status.thinkingWithTopic":"Denken - {{topic}}","ui.sessionTurn.status.gatheringThoughts":"Gedanken sammeln","ui.sessionTurn.status.consideringNextSteps":"Nächste Schritte erwägen","ui.messagePart.questions.dismissed":"Fragen verworfen","ui.messagePart.compaction":"Sitzung komprimiert","ui.messagePart.context.read.one":"{{count}} Lesevorgang","ui.messagePart.context.read.other":"{{count}} Lesevorgänge","ui.messagePart.context.search.one":"{{count}} Suche","ui.messagePart.context.search.other":"{{count}} Suchen","ui.messagePart.context.list.one":"{{count}} Liste","ui.messagePart.context.list.other":"{{count}} Listen","ui.messagePart.diagnostic.error":"Fehler","ui.messagePart.title.edit":"Bearbeiten","ui.messagePart.title.write":"Schreiben","ui.messagePart.option.typeOwnAnswer":"Eigene Antwort eingeben","ui.messagePart.review.title":"Antworten überprüfen","ui.list.loading":"Laden","ui.list.empty":"Keine Ergebnisse","ui.list.clearFilter":"Filter löschen","ui.list.emptyWithFilter.prefix":"Keine Ergebnisse für","ui.list.emptyWithFilter.suffix":"","ui.messageNav.newMessage":"Neue Nachricht","ui.textField.copyToClipboard":"In die Zwischenablage kopieren","ui.textField.copyLink":"Link kopieren","ui.textField.copied":"Kopiert","ui.imagePreview.alt":"Bildvorschau","ui.scrollView.ariaLabel":"scrollbarer Inhalt","ui.tool.read":"Lesen","ui.tool.loaded":"Geladen","ui.tool.list":"Auflisten","ui.tool.glob":"Glob","ui.tool.grep":"Grep","ui.tool.webfetch":"Webabruf","ui.tool.websearch":"Websuche","ui.tool.codesearch":"Codesuche","ui.tool.shell":"Shell","ui.tool.patch":"Patch","ui.tool.todos":"Aufgaben","ui.tool.todos.read":"Aufgaben lesen","ui.tool.questions":"Fragen","ui.tool.agent":"{{type}} Agent","ui.tool.agent.default":"Agent","ui.common.file.one":"Datei","ui.common.file.other":"Dateien","ui.common.question.one":"Frage","ui.common.question.other":"Fragen","ui.common.add":"Hinzufügen","ui.common.back":"Zurück","ui.common.cancel":"Abbrechen","ui.common.confirm":"Bestätigen","ui.common.dismiss":"Verwerfen","ui.common.close":"Schließen","ui.common.next":"Weiter","ui.common.submit":"Absenden","ui.permission.deny":"Verweigern","ui.permission.allowAlways":"Immer erlauben","ui.permission.allowOnce":"Einmal erlauben","ui.message.expand":"Nachricht erweitern","ui.message.collapse":"Nachricht reduzieren","ui.message.copy":"Kopieren","ui.message.copyMessage":"Nachricht kopieren","ui.message.forkMessage":"In neue Sitzung abzweigen","ui.message.revertMessage":"Auf diesen Punkt zurücksetzen","ui.message.copyResponse":"Antwort kopieren","ui.message.copied":"Kopiert!","ui.message.interrupted":"Unterbrochen","ui.message.queued":"In Warteschlange","ui.message.attachment.alt":"Anhang","ui.patch.action.deleted":"Gelöscht","ui.patch.action.created":"Erstellt","ui.patch.action.moved":"Verschoben","ui.patch.action.patched":"Gepatched","ui.question.subtitle.answered":"{{count}} beantwortet","ui.question.answer.none":"(keine Antwort)","ui.question.review.notAnswered":"(nicht beantwortet)","ui.question.multiHint":"Alle zutreffenden auswählen","ui.question.singleHint":"Eine Antwort auswählen","ui.question.custom.placeholder":"Geben Sie Ihre Antwort ein...","ui.fileSearch.placeholder":"Suchen","ui.fileSearch.previousMatch":"Vorheriges Ergebnis","ui.fileSearch.nextMatch":"Nächstes Ergebnis","ui.fileSearch.close":"Suche schließen","ui.tool.task":"Aufgabe","ui.tool.skill":"Fähigkeit","ui.basicTool.called":"`{{tool}}` aufgerufen","ui.toolErrorCard.failed":"Fehlgeschlagen","ui.toolErrorCard.copyError":"Fehler kopieren","ui.message.duration.seconds":"{{count}}s","ui.message.duration.minutesSeconds":"{{minutes}}m {{seconds}}s"};export{e as dict};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function J(n){return Math.abs(n=Math.round(n))>=1e21?n.toLocaleString("en").replace(/,/g,""):n.toString(10)}function j(n,t){if(!isFinite(n)||n===0)return null;var e=(n=t?n.toExponential(t-1):n.toExponential()).indexOf("e"),i=n.slice(0,e);return[i.length>1?i[0]+i.slice(2):i,+n.slice(e+1)]}function K(n){return n=j(Math.abs(n)),n?n[1]:NaN}function Q(n,t){return function(e,i){for(var o=e.length,a=[],c=0,h=n[0],M=0;o>0&&h>0&&(M+h+1>i&&(h=Math.max(1,i-M)),a.push(e.substring(o-=h,o+h)),!((M+=h+1)>i));)h=n[c=(c+1)%n.length];return a.reverse().join(t)}}function V(n){return function(t){return t.replace(/[0-9]/g,function(e){return n[+e]})}}var W=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function $(n){if(!(t=W.exec(n)))throw new Error("invalid format: "+n);var t;return new L({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}$.prototype=L.prototype;function L(n){this.fill=n.fill===void 0?" ":n.fill+"",this.align=n.align===void 0?">":n.align+"",this.sign=n.sign===void 0?"-":n.sign+"",this.symbol=n.symbol===void 0?"":n.symbol+"",this.zero=!!n.zero,this.width=n.width===void 0?void 0:+n.width,this.comma=!!n.comma,this.precision=n.precision===void 0?void 0:+n.precision,this.trim=!!n.trim,this.type=n.type===void 0?"":n.type+""}L.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function _(n){n:for(var t=n.length,e=1,i=-1,o;e<t;++e)switch(n[e]){case".":i=o=e;break;case"0":i===0&&(i=e),o=e;break;default:if(!+n[e])break n;i>0&&(i=0);break}return i>0?n.slice(0,i)+n.slice(o+1):n}var N;function v(n,t){var e=j(n,t);if(!e)return N=void 0,n.toPrecision(t);var i=e[0],o=e[1],a=o-(N=Math.max(-8,Math.min(8,Math.floor(o/3)))*3)+1,c=i.length;return a===c?i:a>c?i+new Array(a-c+1).join("0"):a>0?i.slice(0,a)+"."+i.slice(a):"0."+new Array(1-a).join("0")+j(n,Math.max(0,t+a-1))[0]}function X(n,t){var e=j(n,t);if(!e)return n+"";var i=e[0],o=e[1];return o<0?"0."+new Array(-o).join("0")+i:i.length>o+1?i.slice(0,o+1)+"."+i.slice(o+1):i+new Array(o-i.length+2).join("0")}const O={"%":(n,t)=>(n*100).toFixed(t),b:n=>Math.round(n).toString(2),c:n=>n+"",d:J,e:(n,t)=>n.toExponential(t),f:(n,t)=>n.toFixed(t),g:(n,t)=>n.toPrecision(t),o:n=>Math.round(n).toString(8),p:(n,t)=>X(n*100,t),r:X,s:v,X:n=>Math.round(n).toString(16).toUpperCase(),x:n=>Math.round(n).toString(16)};function R(n){return n}var U=Array.prototype.map,Y=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function nn(n){var t=n.grouping===void 0||n.thousands===void 0?R:Q(U.call(n.grouping,Number),n.thousands+""),e=n.currency===void 0?"":n.currency[0]+"",i=n.currency===void 0?"":n.currency[1]+"",o=n.decimal===void 0?".":n.decimal+"",a=n.numerals===void 0?R:V(U.call(n.numerals,String)),c=n.percent===void 0?"%":n.percent+"",h=n.minus===void 0?"−":n.minus+"",M=n.nan===void 0?"NaN":n.nan+"";function T(f,g){f=$(f);var b=f.fill,p=f.align,m=f.sign,w=f.symbol,S=f.zero,E=f.width,F=f.comma,y=f.precision,C=f.trim,d=f.type;d==="n"?(F=!0,d="g"):O[d]||(y===void 0&&(y=12),C=!0,d="g"),(S||b==="0"&&p==="=")&&(S=!0,b="0",p="=");var q=(g&&g.prefix!==void 0?g.prefix:"")+(w==="$"?e:w==="#"&&/[boxX]/.test(d)?"0"+d.toLowerCase():""),B=(w==="$"?i:/[%p]/.test(d)?c:"")+(g&&g.suffix!==void 0?g.suffix:""),D=O[d],H=/[defgprs%]/.test(d);y=y===void 0?6:/[gprs]/.test(d)?Math.max(1,Math.min(21,y)):Math.max(0,Math.min(20,y));function G(r){var l=q,u=B,x,I,k;if(d==="c")u=D(r)+u,r="";else{r=+r;var P=r<0||1/r<0;if(r=isNaN(r)?M:D(Math.abs(r),y),C&&(r=_(r)),P&&+r==0&&m!=="+"&&(P=!1),l=(P?m==="("?m:h:m==="-"||m==="("?"":m)+l,u=(d==="s"&&!isNaN(r)&&N!==void 0?Y[8+N/3]:"")+u+(P&&m==="("?")":""),H){for(x=-1,I=r.length;++x<I;)if(k=r.charCodeAt(x),48>k||k>57){u=(k===46?o+r.slice(x+1):r.slice(x))+u,r=r.slice(0,x);break}}}F&&!S&&(r=t(r,1/0));var z=l.length+r.length+u.length,s=z<E?new Array(E-z+1).join(b):"";switch(F&&S&&(r=t(s+r,s.length?E-u.length:1/0),s=""),p){case"<":r=l+r+u+s;break;case"=":r=l+s+r+u;break;case"^":r=s.slice(0,z=s.length>>1)+l+r+u+s.slice(z);break;default:r=s+l+r+u;break}return a(r)}return G.toString=function(){return f+""},G}function Z(f,g){var b=Math.max(-8,Math.min(8,Math.floor(K(g)/3)))*3,p=Math.pow(10,-b),m=T((f=$(f),f.type="f",f),{suffix:Y[8+b/3]});return function(w){return m(p*w)}}return{format:T,formatPrefix:Z}}var A,tn,rn;en({thousands:",",grouping:[3],currency:["$",""]});function en(n){return A=nn(n),tn=A.format,rn=A.formatPrefix,A}export{rn as a,tn as b,K as e,$ as f};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=Object.freeze(JSON.parse('{"displayName":"Desktop","name":"desktop","patterns":[{"include":"#layout"},{"include":"#keywords"},{"include":"#values"},{"include":"#inCommands"},{"include":"#inCategories"}],"repository":{"inCategories":{"patterns":[{"match":"(?<=^Categories.*)AudioVideo|(?<=^Categories.*)Audio|(?<=^Categories.*)Video|(?<=^Categories.*)Development|(?<=^Categories.*)Education|(?<=^Categories.*)Game|(?<=^Categories.*)Graphics|(?<=^Categories.*)Network|(?<=^Categories.*)Office|(?<=^Categories.*)Science|(?<=^Categories.*)Settings|(?<=^Categories.*)System|(?<=^Categories.*)Utility","name":"markup.bold"}]},"inCommands":{"patterns":[{"match":"(?<=^Exec.*\\\\s)-+\\\\S+","name":"variable.parameter"},{"match":"(?<=^Exec.*)\\\\s%[FUcfiku]\\\\s","name":"variable.language"},{"match":"\\".*\\"","name":"string"}]},"keywords":{"patterns":[{"match":"^(?:Type|Version|Name|GenericName|NoDisplay|Comment|Icon|Hidden|OnlyShowIn|NotShowIn|DBusActivatable|TryExec|Exec|Path|Terminal|Actions|MimeType|Categories|Implements|Keywords|StartupNotify|StartupWMClass|URL|PrefersNonDefaultGPU|Encoding)\\\\b","name":"keyword"},{"match":"^X-[- 0-9A-z]*","name":"keyword.other"},{"match":"(?<!^)\\\\[.+]","name":"constant.language"},{"match":"^(?:GtkTheme|MetacityTheme|IconTheme|CursorTheme|ButtonLayout|ApplicationFont)\\\\b","name":"keyword"}]},"layout":{"patterns":[{"begin":"^\\\\[Desktop","end":"]","name":"markup.heading"},{"begin":"^\\\\[X-\\\\w*","end":"]","name":"markup.heading"},{"match":"^\\\\s*#.*","name":"comment"},{"match":";","name":"strong"}]},"values":{"patterns":[{"match":"(?<=^\\\\S+)=","name":"keyword.operator"},{"match":"\\\\b(?:tru|fals)e\\\\b","name":"variable.other"},{"match":"(?<=^Version.*)\\\\d+(\\\\.?\\\\d*)","name":"variable.other"}]}},"scopeName":"source.desktop"}')),a=[e];export{a as default};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import{_ as w,E as ee,G as te,I as de,d as he,l as J,aV as P,b as pe,a as ue,p as fe,q as me,g as ge,s as ye,F as Se,aW as ve,y as xe}from"./mermaid.core-DdXWHS-1.js";import{s as be}from"./chunk-KX2RTZJC-D_r6FHlr.js";import{p as we}from"./chunk-4BX2VUAB-CGR6NDgJ.js";import{p as Ce}from"./treemap-KZPCXAKY-C7fWdgj-.js";import{s as Y}from"./trellis-6YKi26t8.js";import{b as H}from"./defaultLocale-DX6XiGOO.js";import{o as Z}from"./ordinal-Cboi1Yqb.js";import"./index-bSvs-Qh3.js";import"./purify.es-A66Cw1IH.js";import"./_baseUniq-BsW7XEuT.js";import"./_basePickBy-B_7ShcHh.js";import"./clone-Cf5BTVxd.js";import"./select-CEKfrTm2.js";import"./chunk-VVM5DH6Z-COaOSPgd.js";import"./trellis-op-icon-5x1lMwNH.js";import"./init-Gi6I4Gst.js";function Te(e){var a=0,n=e.children,l=n&&n.length;if(!l)a=1;else for(;--l>=0;)a+=n[l].value;e.value=a}function Le(){return this.eachAfter(Te)}function $e(e,a){let n=-1;for(const l of this)e.call(a,l,++n,this);return this}function Ae(e,a){for(var n=this,l=[n],o,i,d=-1;n=l.pop();)if(e.call(a,n,++d,this),o=n.children)for(i=o.length-1;i>=0;--i)l.push(o[i]);return this}function Fe(e,a){for(var n=this,l=[n],o=[],i,d,h,m=-1;n=l.pop();)if(o.push(n),i=n.children)for(d=0,h=i.length;d<h;++d)l.push(i[d]);for(;n=o.pop();)e.call(a,n,++m,this);return this}function ke(e,a){let n=-1;for(const l of this)if(e.call(a,l,++n,this))return l}function Ne(e){return this.eachAfter(function(a){for(var n=+e(a.data)||0,l=a.children,o=l&&l.length;--o>=0;)n+=l[o].value;a.value=n})}function Me(e){return this.eachBefore(function(a){a.children&&a.children.sort(e)})}function _e(e){for(var a=this,n=ze(a,e),l=[a];a!==n;)a=a.parent,l.push(a);for(var o=l.length;e!==n;)l.splice(o,0,e),e=e.parent;return l}function ze(e,a){if(e===a)return e;var n=e.ancestors(),l=a.ancestors(),o=null;for(e=n.pop(),a=l.pop();e===a;)o=e,e=n.pop(),a=l.pop();return o}function Ve(){for(var e=this,a=[e];e=e.parent;)a.push(e);return a}function De(){return Array.from(this)}function Pe(){var e=[];return this.eachBefore(function(a){a.children||e.push(a)}),e}function Be(){var e=this,a=[];return e.each(function(n){n!==e&&a.push({source:n.parent,target:n})}),a}function*Ee(){var e=this,a,n=[e],l,o,i;do for(a=n.reverse(),n=[];e=a.pop();)if(yield e,l=e.children)for(o=0,i=l.length;o<i;++o)n.push(l[o]);while(n.length)}function K(e,a){e instanceof Map?(e=[void 0,e],a===void 0&&(a=Ie)):a===void 0&&(a=We);for(var n=new j(e),l,o=[n],i,d,h,m;l=o.pop();)if((d=a(l.data))&&(m=(d=Array.from(d)).length))for(l.children=d,h=m-1;h>=0;--h)o.push(i=d[h]=new j(d[h])),i.parent=l,i.depth=l.depth+1;return n.eachBefore(Oe)}function Re(){return K(this).eachBefore(He)}function We(e){return e.children}function Ie(e){return Array.isArray(e)?e[1]:null}function He(e){e.data.value!==void 0&&(e.value=e.data.value),e.data=e.data.data}function Oe(e){var a=0;do e.height=a;while((e=e.parent)&&e.height<++a)}function j(e){this.data=e,this.depth=this.height=0,this.parent=null}j.prototype=K.prototype={constructor:j,count:Le,each:$e,eachAfter:Fe,eachBefore:Ae,find:ke,sum:Ne,sort:Me,path:_e,ancestors:Ve,descendants:De,leaves:Pe,links:Be,copy:Re,[Symbol.iterator]:Ee};function Ge(e){if(typeof e!="function")throw new Error;return e}function O(){return 0}function G(e){return function(){return e}}function qe(e){e.x0=Math.round(e.x0),e.y0=Math.round(e.y0),e.x1=Math.round(e.x1),e.y1=Math.round(e.y1)}function Xe(e,a,n,l,o){for(var i=e.children,d,h=-1,m=i.length,c=e.value&&(l-a)/e.value;++h<m;)d=i[h],d.y0=n,d.y1=o,d.x0=a,d.x1=a+=d.value*c}function Ye(e,a,n,l,o){for(var i=e.children,d,h=-1,m=i.length,c=e.value&&(o-n)/e.value;++h<m;)d=i[h],d.x0=a,d.x1=l,d.y0=n,d.y1=n+=d.value*c}var je=(1+Math.sqrt(5))/2;function Ue(e,a,n,l,o,i){for(var d=[],h=a.children,m,c,p=0,b=0,r=h.length,x,S,v=a.value,u,g,N,k,V,E,M;p<r;){x=o-n,S=i-l;do u=h[b++].value;while(!u&&b<r);for(g=N=u,E=Math.max(S/x,x/S)/(v*e),M=u*u*E,V=Math.max(N/M,M/g);b<r;++b){if(u+=c=h[b].value,c<g&&(g=c),c>N&&(N=c),M=u*u*E,k=Math.max(N/M,M/g),k>V){u-=c;break}V=k}d.push(m={value:u,dice:x<S,children:h.slice(p,b)}),m.dice?Xe(m,n,l,o,v?l+=S*u/v:i):Ye(m,n,l,v?n+=x*u/v:o,i),v-=u,p=b}return d}const Ze=(function e(a){function n(l,o,i,d,h){Ue(a,l,o,i,d,h)}return n.ratio=function(l){return e((l=+l)>1?l:1)},n})(je);function Je(){var e=Ze,a=!1,n=1,l=1,o=[0],i=O,d=O,h=O,m=O,c=O;function p(r){return r.x0=r.y0=0,r.x1=n,r.y1=l,r.eachBefore(b),o=[0],a&&r.eachBefore(qe),r}function b(r){var x=o[r.depth],S=r.x0+x,v=r.y0+x,u=r.x1-x,g=r.y1-x;u<S&&(S=u=(S+u)/2),g<v&&(v=g=(v+g)/2),r.x0=S,r.y0=v,r.x1=u,r.y1=g,r.children&&(x=o[r.depth+1]=i(r)/2,S+=c(r)-x,v+=d(r)-x,u-=h(r)-x,g-=m(r)-x,u<S&&(S=u=(S+u)/2),g<v&&(v=g=(v+g)/2),e(r,S,v,u,g))}return p.round=function(r){return arguments.length?(a=!!r,p):a},p.size=function(r){return arguments.length?(n=+r[0],l=+r[1],p):[n,l]},p.tile=function(r){return arguments.length?(e=Ge(r),p):e},p.padding=function(r){return arguments.length?p.paddingInner(r).paddingOuter(r):p.paddingInner()},p.paddingInner=function(r){return arguments.length?(i=typeof r=="function"?r:G(+r),p):i},p.paddingOuter=function(r){return arguments.length?p.paddingTop(r).paddingRight(r).paddingBottom(r).paddingLeft(r):p.paddingTop()},p.paddingTop=function(r){return arguments.length?(d=typeof r=="function"?r:G(+r),p):d},p.paddingRight=function(r){return arguments.length?(h=typeof r=="function"?r:G(+r),p):h},p.paddingBottom=function(r){return arguments.length?(m=typeof r=="function"?r:G(+r),p):m},p.paddingLeft=function(r){return arguments.length?(c=typeof r=="function"?r:G(+r),p):c},p}var ae=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=pe,this.getAccTitle=ue,this.setDiagramTitle=fe,this.getDiagramTitle=me,this.getAccDescription=ge,this.setAccDescription=ye}static{w(this,"TreeMapDB")}getNodes(){return this.nodes}getConfig(){const e=Se,a=te();return ee({...e.treemap,...a.treemap??{}})}addNode(e,a){this.nodes.push(e),this.levels.set(e,a),a===0&&(this.outerNodes.push(e),this.root??=e)}getRoot(){return{name:"",children:this.outerNodes}}addClass(e,a){const n=this.classes.get(e)??{id:e,styles:[],textStyles:[]},l=a.replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");l&&l.forEach(o=>{ve(o)&&(n?.textStyles?n.textStyles.push(o):n.textStyles=[o]),n?.styles?n.styles.push(o):n.styles=[o]}),this.classes.set(e,n)}getClasses(){return this.classes}getStylesForClass(e){return this.classes.get(e)?.styles??[]}clear(){xe(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}};function ne(e){if(!e.length)return[];const a=[],n=[];return e.forEach(l=>{const o={name:l.name,children:l.type==="Leaf"?void 0:[]};for(o.classSelector=l?.classSelector,l?.cssCompiledStyles&&(o.cssCompiledStyles=l.cssCompiledStyles),l.type==="Leaf"&&l.value!==void 0&&(o.value=l.value);n.length>0&&n[n.length-1].level>=l.level;)n.pop();if(n.length===0)a.push(o);else{const i=n[n.length-1].node;i.children?i.children.push(o):i.children=[o]}l.type!=="Leaf"&&n.push({node:o,level:l.level})}),a}w(ne,"buildHierarchy");var Ke=w((e,a)=>{we(e,a);const n=[];for(const i of e.TreemapRows??[])i.$type==="ClassDefStatement"&&a.addClass(i.className??"",i.styleText??"");for(const i of e.TreemapRows??[]){const d=i.item;if(!d)continue;const h=i.indent?parseInt(i.indent):0,m=Qe(d),c=d.classSelector?a.getStylesForClass(d.classSelector):[],p=c.length>0?c:void 0,b={level:h,name:m,type:d.$type,value:d.value,classSelector:d.classSelector,cssCompiledStyles:p};n.push(b)}const l=ne(n),o=w((i,d)=>{for(const h of i)a.addNode(h,d),h.children&&h.children.length>0&&o(h.children,d+1)},"addNodesRecursively");o(l,0)},"populate"),Qe=w(e=>e.name?String(e.name):"","getItemName"),le={parser:{yy:void 0},parse:w(async e=>{try{const n=await Ce("treemap",e);J.debug("Treemap AST:",n);const l=le.parser?.yy;if(!(l instanceof ae))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Ke(n,l)}catch(a){throw J.error("Error parsing treemap:",a),a}},"parse")},et=10,B=10,q=25,tt=w((e,a,n,l)=>{const o=l.db,i=o.getConfig(),d=i.padding??et,h=o.getDiagramTitle(),m=o.getRoot(),{themeVariables:c}=te();if(!m)return;const p=h?30:0,b=de(a),r=i.nodeWidth?i.nodeWidth*B:960,x=i.nodeHeight?i.nodeHeight*B:500,S=r,v=x+p;b.attr("viewBox",`0 0 ${S} ${v}`),he(b,v,S,i.useMaxWidth);let u;try{const t=i.valueFormat||",";if(t==="$0,0")u=w(s=>"$"+H(",")(s),"valueFormat");else if(t.startsWith("$")&&t.includes(",")){const s=/\.\d+/.exec(t),f=s?s[0]:"";u=w(C=>"$"+H(","+f)(C),"valueFormat")}else if(t.startsWith("$")){const s=t.substring(1);u=w(f=>"$"+H(s||"")(f),"valueFormat")}else u=H(t)}catch(t){J.error("Error creating format function:",t),u=H(",")}const g=Z().range(["transparent",c.cScale0,c.cScale1,c.cScale2,c.cScale3,c.cScale4,c.cScale5,c.cScale6,c.cScale7,c.cScale8,c.cScale9,c.cScale10,c.cScale11]),N=Z().range(["transparent",c.cScalePeer0,c.cScalePeer1,c.cScalePeer2,c.cScalePeer3,c.cScalePeer4,c.cScalePeer5,c.cScalePeer6,c.cScalePeer7,c.cScalePeer8,c.cScalePeer9,c.cScalePeer10,c.cScalePeer11]),k=Z().range([c.cScaleLabel0,c.cScaleLabel1,c.cScaleLabel2,c.cScaleLabel3,c.cScaleLabel4,c.cScaleLabel5,c.cScaleLabel6,c.cScaleLabel7,c.cScaleLabel8,c.cScaleLabel9,c.cScaleLabel10,c.cScaleLabel11]);h&&b.append("text").attr("x",S/2).attr("y",p/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(h);const V=b.append("g").attr("transform",`translate(0, ${p})`).attr("class","treemapContainer"),E=K(m).sum(t=>t.value??0).sort((t,s)=>(s.value??0)-(t.value??0)),Q=Je().size([r,x]).paddingTop(t=>t.children&&t.children.length>0?q+B:0).paddingInner(d).paddingLeft(t=>t.children&&t.children.length>0?B:0).paddingRight(t=>t.children&&t.children.length>0?B:0).paddingBottom(t=>t.children&&t.children.length>0?B:0).round(!0)(E),re=Q.descendants().filter(t=>t.children&&t.children.length>0),R=V.selectAll(".treemapSection").data(re).enter().append("g").attr("class","treemapSection").attr("transform",t=>`translate(${t.x0},${t.y0})`);R.append("rect").attr("width",t=>t.x1-t.x0).attr("height",q).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",t=>t.depth===0?"display: none;":""),R.append("clipPath").attr("id",(t,s)=>`clip-section-${a}-${s}`).append("rect").attr("width",t=>Math.max(0,t.x1-t.x0-12)).attr("height",q),R.append("rect").attr("width",t=>t.x1-t.x0).attr("height",t=>t.y1-t.y0).attr("class",(t,s)=>`treemapSection section${s}`).attr("fill",t=>g(t.data.name)).attr("fill-opacity",.6).attr("stroke",t=>N(t.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",t=>{if(t.depth===0)return"display: none;";const s=P({cssCompiledStyles:t.data.cssCompiledStyles});return s.nodeStyles+";"+s.borderStyles.join(";")}),R.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",q/2).attr("dominant-baseline","middle").text(t=>t.depth===0?"":t.data.name).attr("font-weight","bold").attr("style",t=>{if(t.depth===0)return"display: none;";const s="dominant-baseline: middle; font-size: 12px; fill:"+k(t.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",f=P({cssCompiledStyles:t.data.cssCompiledStyles});return s+f.labelStyles.replace("color:","fill:")}).each(function(t){if(t.depth===0)return;const s=Y(this),f=t.data.name;s.text(f);const C=t.x1-t.x0,L=6;let $;i.showValues!==!1&&t.value?$=C-10-30-10-L:$=C-L-6;const A=Math.max(15,$),y=s.node();if(y.getComputedTextLength()>A){let T=f;for(;T.length>0;){if(T=f.substring(0,T.length-1),T.length===0){s.text("..."),y.getComputedTextLength()>A&&s.text("");break}if(s.text(T+"..."),y.getComputedTextLength()<=A)break}}}),i.showValues!==!1&&R.append("text").attr("class","treemapSectionValue").attr("x",t=>t.x1-t.x0-10).attr("y",q/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(t=>t.value?u(t.value):"").attr("font-style","italic").attr("style",t=>{if(t.depth===0)return"display: none;";const s="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+k(t.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",f=P({cssCompiledStyles:t.data.cssCompiledStyles});return s+f.labelStyles.replace("color:","fill:")});const se=Q.leaves(),X=V.selectAll(".treemapLeafGroup").data(se).enter().append("g").attr("class",(t,s)=>`treemapNode treemapLeafGroup leaf${s}${t.data.classSelector?` ${t.data.classSelector}`:""}x`).attr("transform",t=>`translate(${t.x0},${t.y0})`);X.append("rect").attr("width",t=>t.x1-t.x0).attr("height",t=>t.y1-t.y0).attr("class","treemapLeaf").attr("fill",t=>t.parent?g(t.parent.data.name):g(t.data.name)).attr("style",t=>P({cssCompiledStyles:t.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",t=>t.parent?g(t.parent.data.name):g(t.data.name)).attr("stroke-width",3),X.append("clipPath").attr("id",(t,s)=>`clip-${a}-${s}`).append("rect").attr("width",t=>Math.max(0,t.x1-t.x0-4)).attr("height",t=>Math.max(0,t.y1-t.y0-4)),X.append("text").attr("class","treemapLabel").attr("x",t=>(t.x1-t.x0)/2).attr("y",t=>(t.y1-t.y0)/2).attr("style",t=>{const s="text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:"+k(t.data.name)+";",f=P({cssCompiledStyles:t.data.cssCompiledStyles});return s+f.labelStyles.replace("color:","fill:")}).attr("clip-path",(t,s)=>`url(#clip-${a}-${s})`).text(t=>t.data.name).each(function(t){const s=Y(this),f=t.x1-t.x0,C=t.y1-t.y0,L=s.node(),$=4,D=f-2*$,A=C-2*$;if(D<10||A<10){s.style("display","none");return}let y=parseInt(s.style("font-size"),10);const _=8,F=28,T=.6,z=6,W=2;for(;L.getComputedTextLength()>D&&y>_;)y--,s.style("font-size",`${y}px`);let I=Math.max(z,Math.min(F,Math.round(y*T))),U=y+W+I;for(;U>A&&y>_&&(y--,I=Math.max(z,Math.min(F,Math.round(y*T))),!(I<z&&y===_));)s.style("font-size",`${y}px`),U=y+W+I;s.style("font-size",`${y}px`),(L.getComputedTextLength()>D||y<_||A<y)&&s.style("display","none")}),i.showValues!==!1&&X.append("text").attr("class","treemapValue").attr("x",s=>(s.x1-s.x0)/2).attr("y",function(s){return(s.y1-s.y0)/2}).attr("style",s=>{const f="text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:"+k(s.data.name)+";",C=P({cssCompiledStyles:s.data.cssCompiledStyles});return f+C.labelStyles.replace("color:","fill:")}).attr("clip-path",(s,f)=>`url(#clip-${a}-${f})`).text(s=>s.value?u(s.value):"").each(function(s){const f=Y(this),C=this.parentNode;if(!C){f.style("display","none");return}const L=Y(C).select(".treemapLabel");if(L.empty()||L.style("display")==="none"){f.style("display","none");return}const $=parseFloat(L.style("font-size")),D=28,A=.6,y=6,_=2,F=Math.max(y,Math.min(D,Math.round($*A)));f.style("font-size",`${F}px`);const z=(s.y1-s.y0)/2+$/2+_;f.attr("y",z);const W=s.x1-s.x0,oe=s.y1-s.y0-4,ce=W-8;f.node().getComputedTextLength()>ce||z+F>oe||F<y?f.style("display","none"):f.style("display",null)});const ie=i.diagramPadding??8;be(b,ie,"flowchart",i?.useMaxWidth||!1)},"draw"),at=w(function(e,a){return a.db.getClasses()},"getClasses"),nt={draw:tt,getClasses:at},lt={sectionStrokeColor:"black",sectionStrokeWidth:"1",sectionFillColor:"#efefef",leafStrokeColor:"black",leafStrokeWidth:"1",leafFillColor:"#efefef",labelColor:"black",labelFontSize:"12px",valueFontSize:"10px",valueColor:"black",titleColor:"black",titleFontSize:"14px"},rt=w(({treemap:e}={})=>{const a=ee(lt,e);return`
|
|
2
|
+
.treemapNode.section {
|
|
3
|
+
stroke: ${a.sectionStrokeColor};
|
|
4
|
+
stroke-width: ${a.sectionStrokeWidth};
|
|
5
|
+
fill: ${a.sectionFillColor};
|
|
6
|
+
}
|
|
7
|
+
.treemapNode.leaf {
|
|
8
|
+
stroke: ${a.leafStrokeColor};
|
|
9
|
+
stroke-width: ${a.leafStrokeWidth};
|
|
10
|
+
fill: ${a.leafFillColor};
|
|
11
|
+
}
|
|
12
|
+
.treemapLabel {
|
|
13
|
+
fill: ${a.labelColor};
|
|
14
|
+
font-size: ${a.labelFontSize};
|
|
15
|
+
}
|
|
16
|
+
.treemapValue {
|
|
17
|
+
fill: ${a.valueColor};
|
|
18
|
+
font-size: ${a.valueFontSize};
|
|
19
|
+
}
|
|
20
|
+
.treemapTitle {
|
|
21
|
+
fill: ${a.titleColor};
|
|
22
|
+
font-size: ${a.titleFontSize};
|
|
23
|
+
}
|
|
24
|
+
`},"getStyles"),st=rt,Tt={parser:le,get db(){return new ae},renderer:nt,styles:st};export{Tt as diagram};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import{s as k,g as I,q as R,p as E,a as F,b as _,_ as l,I as D,y as G,E as f,F as z,G as C,l as P,$ as W,d as B}from"./mermaid.core-DdXWHS-1.js";import{p as V}from"./chunk-4BX2VUAB-CGR6NDgJ.js";import{p as H}from"./treemap-KZPCXAKY-C7fWdgj-.js";import"./index-bSvs-Qh3.js";import"./purify.es-A66Cw1IH.js";import"./trellis-6YKi26t8.js";import"./select-CEKfrTm2.js";import"./chunk-VVM5DH6Z-COaOSPgd.js";import"./trellis-op-icon-5x1lMwNH.js";import"./_baseUniq-BsW7XEuT.js";import"./_basePickBy-B_7ShcHh.js";import"./clone-Cf5BTVxd.js";var x={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},w={axes:[],curves:[],options:x},g=structuredClone(w),j=z.radar,q=l(()=>f({...j,...C().radar}),"getConfig"),b=l(()=>g.axes,"getAxes"),N=l(()=>g.curves,"getCurves"),U=l(()=>g.options,"getOptions"),X=l(a=>{g.axes=a.map(t=>({name:t.name,label:t.label??t.name}))},"setAxes"),Y=l(a=>{g.curves=a.map(t=>({name:t.name,label:t.label??t.name,entries:Z(t.entries)}))},"setCurves"),Z=l(a=>{if(a[0].axis==null)return a.map(e=>e.value);const t=b();if(t.length===0)throw new Error("Axes must be populated before curves for reference entries");return t.map(e=>{const r=a.find(s=>s.axis?.$refText===e.name);if(r===void 0)throw new Error("Missing entry for axis "+e.label);return r.value})},"computeCurveEntries"),J=l(a=>{const t=a.reduce((e,r)=>(e[r.name]=r,e),{});g.options={showLegend:t.showLegend?.value??x.showLegend,ticks:t.ticks?.value??x.ticks,max:t.max?.value??x.max,min:t.min?.value??x.min,graticule:t.graticule?.value??x.graticule}},"setOptions"),K=l(()=>{G(),g=structuredClone(w)},"clear"),$={getAxes:b,getCurves:N,getOptions:U,setAxes:X,setCurves:Y,setOptions:J,getConfig:q,clear:K,setAccTitle:_,getAccTitle:F,setDiagramTitle:E,getDiagramTitle:R,getAccDescription:I,setAccDescription:k},Q=l(a=>{V(a,$);const{axes:t,curves:e,options:r}=a;$.setAxes(t),$.setCurves(e),$.setOptions(r)},"populate"),tt={parse:l(async a=>{const t=await H("radar",a);P.debug(t),Q(t)},"parse")},et=l((a,t,e,r)=>{const s=r.db,o=s.getAxes(),i=s.getCurves(),n=s.getOptions(),c=s.getConfig(),d=s.getDiagramTitle(),u=D(t),p=at(u,c),m=n.max??Math.max(...i.map(y=>Math.max(...y.entries))),h=n.min,v=Math.min(c.width,c.height)/2;rt(p,o,v,n.ticks,n.graticule),st(p,o,v,c),M(p,o,i,h,m,n.graticule,c),T(p,i,n.showLegend,c),p.append("text").attr("class","radarTitle").text(d).attr("x",0).attr("y",-c.height/2-c.marginTop)},"draw"),at=l((a,t)=>{const e=t.width+t.marginLeft+t.marginRight,r=t.height+t.marginTop+t.marginBottom,s={x:t.marginLeft+t.width/2,y:t.marginTop+t.height/2};return B(a,r,e,t.useMaxWidth??!0),a.attr("viewBox",`0 0 ${e} ${r}`),a.append("g").attr("transform",`translate(${s.x}, ${s.y})`)},"drawFrame"),rt=l((a,t,e,r,s)=>{if(s==="circle")for(let o=0;o<r;o++){const i=e*(o+1)/r;a.append("circle").attr("r",i).attr("class","radarGraticule")}else if(s==="polygon"){const o=t.length;for(let i=0;i<r;i++){const n=e*(i+1)/r,c=t.map((d,u)=>{const p=2*u*Math.PI/o-Math.PI/2,m=n*Math.cos(p),h=n*Math.sin(p);return`${m},${h}`}).join(" ");a.append("polygon").attr("points",c).attr("class","radarGraticule")}}},"drawGraticule"),st=l((a,t,e,r)=>{const s=t.length;for(let o=0;o<s;o++){const i=t[o].label,n=2*o*Math.PI/s-Math.PI/2;a.append("line").attr("x1",0).attr("y1",0).attr("x2",e*r.axisScaleFactor*Math.cos(n)).attr("y2",e*r.axisScaleFactor*Math.sin(n)).attr("class","radarAxisLine"),a.append("text").text(i).attr("x",e*r.axisLabelFactor*Math.cos(n)).attr("y",e*r.axisLabelFactor*Math.sin(n)).attr("class","radarAxisLabel")}},"drawAxes");function M(a,t,e,r,s,o,i){const n=t.length,c=Math.min(i.width,i.height)/2;e.forEach((d,u)=>{if(d.entries.length!==n)return;const p=d.entries.map((m,h)=>{const v=2*Math.PI*h/n-Math.PI/2,y=A(m,r,s,c),S=y*Math.cos(v),O=y*Math.sin(v);return{x:S,y:O}});o==="circle"?a.append("path").attr("d",L(p,i.curveTension)).attr("class",`radarCurve-${u}`):o==="polygon"&&a.append("polygon").attr("points",p.map(m=>`${m.x},${m.y}`).join(" ")).attr("class",`radarCurve-${u}`)})}l(M,"drawCurves");function A(a,t,e,r){const s=Math.min(Math.max(a,t),e);return r*(s-t)/(e-t)}l(A,"relativeRadius");function L(a,t){const e=a.length;let r=`M${a[0].x},${a[0].y}`;for(let s=0;s<e;s++){const o=a[(s-1+e)%e],i=a[s],n=a[(s+1)%e],c=a[(s+2)%e],d={x:i.x+(n.x-o.x)*t,y:i.y+(n.y-o.y)*t},u={x:n.x-(c.x-i.x)*t,y:n.y-(c.y-i.y)*t};r+=` C${d.x},${d.y} ${u.x},${u.y} ${n.x},${n.y}`}return`${r} Z`}l(L,"closedRoundCurve");function T(a,t,e,r){if(!e)return;const s=(r.width/2+r.marginRight)*3/4,o=-(r.height/2+r.marginTop)*3/4,i=20;t.forEach((n,c)=>{const d=a.append("g").attr("transform",`translate(${s}, ${o+c*i})`);d.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${c}`),d.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(n.label)})}l(T,"drawLegend");var nt={draw:et},ot=l((a,t)=>{let e="";for(let r=0;r<a.THEME_COLOR_LIMIT;r++){const s=a[`cScale${r}`];e+=`
|
|
2
|
+
.radarCurve-${r} {
|
|
3
|
+
color: ${s};
|
|
4
|
+
fill: ${s};
|
|
5
|
+
fill-opacity: ${t.curveOpacity};
|
|
6
|
+
stroke: ${s};
|
|
7
|
+
stroke-width: ${t.curveStrokeWidth};
|
|
8
|
+
}
|
|
9
|
+
.radarLegendBox-${r} {
|
|
10
|
+
fill: ${s};
|
|
11
|
+
fill-opacity: ${t.curveOpacity};
|
|
12
|
+
stroke: ${s};
|
|
13
|
+
}
|
|
14
|
+
`}return e},"genIndexStyles"),it=l(a=>{const t=W(),e=C(),r=f(t,e.themeVariables),s=f(r.radar,a);return{themeVariables:r,radarOptions:s}},"buildRadarStyleOptions"),lt=l(({radar:a}={})=>{const{themeVariables:t,radarOptions:e}=it(a);return`
|
|
15
|
+
.radarTitle {
|
|
16
|
+
font-size: ${t.fontSize};
|
|
17
|
+
color: ${t.titleColor};
|
|
18
|
+
dominant-baseline: hanging;
|
|
19
|
+
text-anchor: middle;
|
|
20
|
+
}
|
|
21
|
+
.radarAxisLine {
|
|
22
|
+
stroke: ${e.axisColor};
|
|
23
|
+
stroke-width: ${e.axisStrokeWidth};
|
|
24
|
+
}
|
|
25
|
+
.radarAxisLabel {
|
|
26
|
+
dominant-baseline: middle;
|
|
27
|
+
text-anchor: middle;
|
|
28
|
+
font-size: ${e.axisLabelFontSize}px;
|
|
29
|
+
color: ${e.axisColor};
|
|
30
|
+
}
|
|
31
|
+
.radarGraticule {
|
|
32
|
+
fill: ${e.graticuleColor};
|
|
33
|
+
fill-opacity: ${e.graticuleOpacity};
|
|
34
|
+
stroke: ${e.graticuleColor};
|
|
35
|
+
stroke-width: ${e.graticuleStrokeWidth};
|
|
36
|
+
}
|
|
37
|
+
.radarLegendText {
|
|
38
|
+
text-anchor: start;
|
|
39
|
+
font-size: ${e.legendFontSize}px;
|
|
40
|
+
dominant-baseline: hanging;
|
|
41
|
+
}
|
|
42
|
+
${ot(t,e)}
|
|
43
|
+
`},"styles"),Ct={parser:tt,db:$,renderer:nt,styles:lt};export{Ct as diagram};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import{_ as m,E as b,I as $,d as B,l as u,b as C,a as S,p as D,q as T,g as E,s as F,F as P,G as z,y as A}from"./mermaid.core-DdXWHS-1.js";import{p as W}from"./chunk-4BX2VUAB-CGR6NDgJ.js";import{p as _}from"./treemap-KZPCXAKY-C7fWdgj-.js";import"./index-bSvs-Qh3.js";import"./purify.es-A66Cw1IH.js";import"./trellis-6YKi26t8.js";import"./select-CEKfrTm2.js";import"./chunk-VVM5DH6Z-COaOSPgd.js";import"./trellis-op-icon-5x1lMwNH.js";import"./_baseUniq-BsW7XEuT.js";import"./_basePickBy-B_7ShcHh.js";import"./clone-Cf5BTVxd.js";var N=P.packet,w=class{constructor(){this.packet=[],this.setAccTitle=C,this.getAccTitle=S,this.setDiagramTitle=D,this.getDiagramTitle=T,this.getAccDescription=E,this.setAccDescription=F}static{m(this,"PacketDB")}getConfig(){const t=b({...N,...z().packet});return t.showBits&&(t.paddingY+=10),t}getPacket(){return this.packet}pushWord(t){t.length>0&&this.packet.push(t)}clear(){A(),this.packet=[]}},I=1e4,L=m((t,e)=>{W(t,e);let r=-1,o=[],n=1;const{bitsPerRow:l}=e.getConfig();for(let{start:a,end:s,bits:d,label:c}of t.blocks){if(a!==void 0&&s!==void 0&&s<a)throw new Error(`Packet block ${a} - ${s} is invalid. End must be greater than start.`);if(a??=r+1,a!==r+1)throw new Error(`Packet block ${a} - ${s??a} is not contiguous. It should start from ${r+1}.`);if(d===0)throw new Error(`Packet block ${a} is invalid. Cannot have a zero bit field.`);for(s??=a+(d??1)-1,d??=s-a+1,r=s,u.debug(`Packet block ${a} - ${r} with label ${c}`);o.length<=l+1&&e.getPacket().length<I;){const[p,i]=M({start:a,end:s,bits:d,label:c},n,l);if(o.push(p),p.end+1===n*l&&(e.pushWord(o),o=[],n++),!i)break;({start:a,end:s,bits:d,label:c}=i)}}e.pushWord(o)},"populate"),M=m((t,e,r)=>{if(t.start===void 0)throw new Error("start should have been set during first phase");if(t.end===void 0)throw new Error("end should have been set during first phase");if(t.start>t.end)throw new Error(`Block start ${t.start} is greater than block end ${t.end}.`);if(t.end+1<=e*r)return[t,void 0];const o=e*r-1,n=e*r;return[{start:t.start,end:o,label:t.label,bits:o-t.start},{start:n,end:t.end,label:t.label,bits:t.end-n}]},"getNextFittingBlock"),v={parser:{yy:void 0},parse:m(async t=>{const e=await _("packet",t),r=v.parser?.yy;if(!(r instanceof w))throw new Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");u.debug(e),L(e,r)},"parse")},Y=m((t,e,r,o)=>{const n=o.db,l=n.getConfig(),{rowHeight:a,paddingY:s,bitWidth:d,bitsPerRow:c}=l,p=n.getPacket(),i=n.getDiagramTitle(),h=a+s,g=h*(p.length+1)-(i?0:a),k=d*c+2,f=$(e);f.attr("viewBox",`0 0 ${k} ${g}`),B(f,g,k,l.useMaxWidth);for(const[x,y]of p.entries())G(f,y,x,l);f.append("text").text(i).attr("x",k/2).attr("y",g-h/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),G=m((t,e,r,{rowHeight:o,paddingX:n,paddingY:l,bitWidth:a,bitsPerRow:s,showBits:d})=>{const c=t.append("g"),p=r*(o+l)+l;for(const i of e){const h=i.start%s*a+1,g=(i.end-i.start+1)*a-n;if(c.append("rect").attr("x",h).attr("y",p).attr("width",g).attr("height",o).attr("class","packetBlock"),c.append("text").attr("x",h+g/2).attr("y",p+o/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(i.label),!d)continue;const k=i.end===i.start,f=p-2;c.append("text").attr("x",h+(k?g/2:0)).attr("y",f).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",k?"middle":"start").text(i.start),k||c.append("text").attr("x",h+g).attr("y",f).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(i.end)}},"drawWord"),O={draw:Y},j={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},q=m(({packet:t}={})=>{const e=b(j,t);return`
|
|
2
|
+
.packetByte {
|
|
3
|
+
font-size: ${e.byteFontSize};
|
|
4
|
+
}
|
|
5
|
+
.packetByte.start {
|
|
6
|
+
fill: ${e.startByteColor};
|
|
7
|
+
}
|
|
8
|
+
.packetByte.end {
|
|
9
|
+
fill: ${e.endByteColor};
|
|
10
|
+
}
|
|
11
|
+
.packetLabel {
|
|
12
|
+
fill: ${e.labelColor};
|
|
13
|
+
font-size: ${e.labelFontSize};
|
|
14
|
+
}
|
|
15
|
+
.packetTitle {
|
|
16
|
+
fill: ${e.titleColor};
|
|
17
|
+
font-size: ${e.titleFontSize};
|
|
18
|
+
}
|
|
19
|
+
.packetBlock {
|
|
20
|
+
stroke: ${e.blockStrokeColor};
|
|
21
|
+
stroke-width: ${e.blockStrokeWidth};
|
|
22
|
+
fill: ${e.blockFillColor};
|
|
23
|
+
}
|
|
24
|
+
`},"styles"),rt={parser:v,get db(){return new w},renderer:O,styles:q};export{rt as diagram};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as x,z as v,f as $,H as w,m as i,l,I as _,p as k,n as d,B as m,G as C,t as f}from"./index-bSvs-Qh3.js";var D=f('<form class="flex flex-col gap-4 p-6 pt-0"><div class="flex items-center gap-2 text-12-regular text-text-weak"><span></span></div><div class="flex justify-end gap-2">'),S=f('<p class="text-12-regular text-red-500">');function z(y){const u=x(),b=v(),r=$(),[t,a]=w({url:"",busy:!1,error:""});async function g(){const e=t.url.trim();if(!(!e||t.busy)){a("busy",!0),a("error","");try{const n=await fetch(`${b.url}/global/clone`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({url:e})}),s=await n.json();if(!n.ok){a("error",s.error||r.t("dialog.clone.error"));return}y.onSelect(s.path),u.close()}catch{a("error",r.t("dialog.clone.error"))}finally{a("busy",!1)}}}function h(e){e.preventDefault(),g()}return i(C,{get title(){return r.t("dialog.clone.title")},class:"w-full max-w-[440px] mx-auto",get children(){var e=D(),n=e.firstChild,s=n.firstChild,c=n.nextSibling;return e.addEventListener("submit",h),l(n,i(_,{name:"branch",size:"small",class:"shrink-0 text-icon-weak"}),s),l(s,()=>r.t("dialog.clone.description")),l(e,i(k,{autofocus:!0,type:"url",placeholder:"https://github.com/owner/repo",get value(){return t.url},onChange:o=>a("url",o),onKeyDown:o=>{o.key==="Enter"&&(o.preventDefault(),g())}}),c),l(e,(()=>{var o=d(()=>!!t.error);return()=>o()&&(()=>{var p=S();return l(p,()=>t.error),p})()})(),c),l(c,i(m,{type:"button",variant:"ghost",size:"large",onClick:()=>u.close(),get children(){return r.t("common.cancel")}}),null),l(c,i(m,{type:"submit",variant:"primary",size:"large",get disabled(){return!t.url.trim()||t.busy},get children(){return d(()=>!!t.busy)()?r.t("common.loading"):r.t("dialog.clone.action")}}),null),e}})}export{z as DialogCloneProject};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dialog-select-provider-2iOfyWxy.js","assets/index-bSvs-Qh3.js","assets/index-DpJDxStT.css","assets/list-BPk4NMWt.js","assets/chunk-VVM5DH6Z-COaOSPgd.js","assets/tag--BCZ5q7_.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{v as re,b as ve,a9 as he,ab as fe,$ as me,l as i,t as x,c as ge,u as xe,z as ye,f as be,a7 as _e,P as we,i as _,A as $e,H as O,O as ke,m as r,aB as L,aC as f,n as Y,aD as Z,I as Se,q as Ce,Q as De,G as Ie,p as A,B as R,o as ze,aE as Pe,J as Ee,_ as Ke}from"./index-bSvs-Qh3.js";import{L as ee}from"./list-BPk4NMWt.js";import{P as Le}from"./tag--BCZ5q7_.js";var Te=x("<a>");function G(h){const T=ve(),[b,S]=he(h,["href","children","class"]);return(()=>{var n=Te();return n.$$click=F=>{b.href&&(F.preventDefault(),T.openLink(b.href))},fe(n,me({get href(){return b.href},get class(){return`text-text-strong underline ${b.class??""}`}},S),!1,!0),i(n,()=>b.children),n})()}re(["click"]);var Me=x('<div class="w-full flex flex-col gap-1.5"><div class="text-14-regular text-text-base"></div><div>'),Oe=x('<form class="flex flex-col items-start gap-4">'),Ae=x('<div class="w-full flex items-center gap-x-2"><div class="w-4 h-2 rounded-[1px] bg-input-base shadow-xs-border-base flex items-center justify-center"><div class="w-2.5 h-0.5 ml-0 bg-icon-strong-base hidden"data-slot=list-item-extra-icon></div></div><span></span><span class="text-14-regular text-text-weak">'),te=x('<div class="text-14-regular text-text-base">'),Fe=x("<div>"),je=x('<div class="w-full flex items-center gap-x-2"><div class="w-4 h-2 rounded-[1px] bg-input-base shadow-xs-border-base flex items-center justify-center"><div class="w-2.5 h-0.5 ml-0 bg-icon-strong-base hidden"data-slot=list-item-extra-icon></div></div><span>'),qe=x('<div class="flex flex-col gap-4"><div class="text-14-regular text-text-base"></div><div class="text-14-regular text-text-base"></div><div class="text-14-regular text-text-base">'),Be=x('<div class="flex flex-col gap-6"><form class="flex flex-col items-start gap-4">'),Ve=x('<div class="flex flex-col gap-6"><div class="text-14-regular text-text-base"></div><form class="flex flex-col items-start gap-4">'),Ze=x('<div class="flex flex-col gap-6"><div class="text-14-regular text-text-base"></div><div class="text-14-regular text-text-base flex items-center gap-4"><span>'),H=x('<div class="text-14-regular text-text-base"><div class="flex items-center gap-x-2"><span>'),Re=x('<div class="flex flex-col gap-6 px-2.5 pb-3"><div class="px-2.5 flex gap-4 items-center"><div class="text-16-medium text-text-strong"></div></div><div class="px-2.5 pb-10 flex flex-col gap-6"><div tabindex=0>');function Ge(h){const T=ge(),b=xe(),S=ye(),n=be(),F=_e(),J=()=>{Ke(()=>import("./dialog-select-provider-2iOfyWxy.js").then(e=>e.d),__vite__mapDeps([0,1,2,3,4,5])).then(e=>{T.show(()=>r(e.DialogSelectProvider,{}))})},C={value:!0},w={current:void 0};we(()=>{C.value=!1,w.current!==void 0&&(clearTimeout(w.current),w.current=void 0)});const $=_(()=>F.all().find(e=>e.id===h.provider)??b.data.provider.all.find(e=>e.id===h.provider)),j=_(()=>[{type:"api",label:n.t("provider.connect.method.apiKey")}]),[Q]=$e(()=>h.provider,async()=>{const e=b.data.provider_auth[h.provider];if(e)return e;const t=await S.client.provider.auth();return C.value?(b.set("provider_auth",t.data??{}),t.data?.[h.provider]??j()):j()}),N=_(()=>Q.loading&&!b.data.provider_auth[h.provider]),I=_(()=>Q.latest??b.data.provider_auth[h.provider]??j()),[d,ne]=O({methodIndex:void 0,authorization:void 0,state:"pending",error:void 0});function k(e){ne(Pe(t=>{if(e.type==="method.select"){t.methodIndex=e.index,t.authorization=void 0,t.state=void 0,t.error=void 0;return}if(e.type==="method.reset"){t.methodIndex=void 0,t.authorization=void 0,t.state=void 0,t.error=void 0;return}if(e.type==="auth.prompt"){t.state="prompt",t.error=void 0;return}if(e.type==="auth.pending"){t.state="pending",t.error=void 0;return}if(e.type==="auth.complete"){t.state="complete",t.authorization=e.authorization,t.error=void 0;return}t.state="error",t.error=e.error}))}const z=_(()=>d.methodIndex!==void 0?I().at(d.methodIndex):void 0),oe=e=>e?e.type==="api"?n.t("provider.connect.method.apiKey"):e.label??"":"";function M(e,t){if(e&&typeof e=="object"&&"data"in e){const o=e.data;if(typeof o?.message=="string"&&o.message)return o.message}if(e&&typeof e=="object"&&"error"in e){const o=M(e.error,"");if(o)return o}if(e&&typeof e=="object"&&"message"in e){const o=e.message;if(typeof o=="string"&&o)return o}return e instanceof Error&&e.message?e.message:typeof e=="string"&&e?e:t}async function q(e,t){w.current!==void 0&&(clearTimeout(w.current),w.current=void 0);const o=I()[e];if(k({type:"method.select",index:e}),o.type==="oauth"){if(o.prompts?.length&&!t){k({type:"auth.prompt"});return}k({type:"auth.pending"});const c=Date.now();await S.client.provider.oauth.authorize({providerID:h.provider,method:e,inputs:t},{throwOnError:!0}).then(a=>{if(!C.value)return;const u=1e3-(Date.now()-c);if(u>0){w.current!==void 0&&clearTimeout(w.current),w.current=setTimeout(()=>{w.current=void 0,C.value&&k({type:"auth.complete",authorization:a.data})},u);return}k({type:"auth.complete",authorization:a.data})}).catch(a=>{C.value&&k({type:"auth.error",error:M(a,n.t("common.requestFailed"))})})}}function ie(){const[e,t]=O({value:{},index:0}),o=_(()=>{const l=z();return l?.type!=="oauth"?[]:l.prompts??[]}),c=(l,p)=>{if(!l.when)return!0;const g=p[l.when.key];return g===void 0?!1:l.when.op==="eq"?g===l.when.value:g!==l.when.value},a=_(()=>{const l=o(),p=l.findIndex((g,K)=>K>=e.index&&c(g,e.value));if(p!==-1)return{index:p,prompt:l[p]}}),s=_(()=>{const l=a();return!l||l.prompt.type!=="text"?!1:(e.value[l.prompt.key]??"").trim().length>0});async function u(l,p){if(d.methodIndex===void 0)return;const g=o().findIndex((K,y)=>y>l&&c(K,p));if(g!==-1){t("index",g);return}await q(d.methodIndex,p)}async function v(l){l.preventDefault();const p=a();!p||p.prompt.type!=="text"||s()&&await u(p.index,e.value)}const m=()=>a(),P=_(()=>{const l=m()?.prompt;if(!(!l||l.type!=="text"))return l}),E=_(()=>{const l=m()?.prompt;if(!(!l||l.type!=="select"))return l});return(()=>{var l=Oe();return l.addEventListener("submit",v),i(l,r(L,{get children(){return[r(f,{get when(){return m()?.prompt.type==="text"},get children(){return[r(A,{type:"text",get label(){return P()?.message??""},get placeholder(){return P()?.placeholder},get value(){return Y(()=>!!P())()?e.value[P().key]??"":""},onChange:p=>{const g=P();g&&t("value",g.key,p)}}),r(R,{class:"w-auto",type:"submit",size:"large",variant:"primary",get disabled(){return!s()},get children(){return n.t("common.continue")}})]}}),r(f,{get when(){return m()?.prompt.type==="select"},get children(){var p=Me(),g=p.firstChild,K=g.nextSibling;return i(g,()=>E()?.message),i(K,r(ee,{get items(){return E()?.options??[]},key:y=>y.value,get current(){return E()?.options.find(y=>y.value===e.value[E().key])},onSelect:y=>{if(!y)return;const D=E();if(!D)return;const V={...e.value,[D.key]:y.value};t("value",D.key,y.value),u(m().index,V)},children:y=>(()=>{var D=Ae(),V=D.firstChild,X=V.nextSibling,pe=X.nextSibling;return i(X,()=>y.label),i(pe,()=>y.hint),D})()})),p}})]}})),l})()}let U;function ae(e){e.key==="Enter"&&e.target instanceof HTMLInputElement||e.key!=="Escape"&&U?.onKeyDown(e)}let W=!1;ke(()=>{W||N()||I().length===1&&(W=!0,q(0))});async function B(){await S.client.global.dispose(),T.close(),Ee({variant:"success",icon:"circle-check",title:n.t("provider.connect.toast.connected.title",{provider:$().name}),description:n.t("provider.connect.toast.connected.description",{provider:$().name})})}function le(){if(I().length===1){J();return}if(d.authorization){k({type:"method.reset"});return}if(d.methodIndex!==void 0){k({type:"method.reset"});return}J()}function se(){return[(()=>{var e=te();return i(e,()=>n.t("provider.connect.selectMethod",{provider:$().name})),e})(),(()=>{var e=Fe();return i(e,r(ee,{ref:t=>{U=t},items:I,key:t=>t?.label,onSelect:async(t,o)=>{t&&q(o)},children:t=>(()=>{var o=je(),c=o.firstChild,a=c.nextSibling;return i(a,()=>oe(t)),o})()})),e})()]}function ce(){const[e,t]=O({value:"",error:void 0});async function o(c){c.preventDefault();const a=c.currentTarget,u=new FormData(a).get("apiKey");if(!u?.trim()){t("error",n.t("provider.connect.apiKey.required"));return}t("error",void 0),await S.client.auth.set({providerID:h.provider,auth:{type:"api",key:u}}),await B()}return(()=>{var c=Be(),a=c.firstChild;return i(c,r(L,{get children(){return[r(f,{get when(){return $().id==="opencode"},get children(){var s=qe(),u=s.firstChild,v=u.nextSibling,m=v.nextSibling;return i(u,()=>n.t("provider.connect.opencodeZen.line1")),i(v,()=>n.t("provider.connect.opencodeZen.line2")),i(m,()=>n.t("provider.connect.opencodeZen.visit.prefix"),null),i(m,r(G,{href:"https://opencode.ai/zen",tabIndex:-1,get children(){return n.t("provider.connect.opencodeZen.visit.link")}}),null),i(m,()=>n.t("provider.connect.opencodeZen.visit.suffix"),null),s}}),r(f,{when:!0,get children(){var s=te();return i(s,()=>n.t("provider.connect.apiKey.description",{provider:$().name})),s}})]}}),a),a.addEventListener("submit",o),i(a,r(A,{autofocus:!0,type:"text",get label(){return n.t("provider.connect.apiKey.label",{provider:$().name})},get placeholder(){return n.t("provider.connect.apiKey.placeholder")},name:"apiKey",get value(){return e.value},onChange:s=>t("value",s),get validationState(){return e.error?"invalid":void 0},get error(){return e.error}}),null),i(a,r(R,{class:"w-auto",type:"submit",size:"large",variant:"primary",get children(){return n.t("common.continue")}}),null),c})()}function ue(){const[e,t]=O({value:"",error:void 0});async function o(c){c.preventDefault();const a=c.currentTarget,u=new FormData(a).get("code");if(!u?.trim()){t("error",n.t("provider.connect.oauth.code.required"));return}t("error",void 0);const v=await S.client.provider.oauth.callback({providerID:h.provider,method:d.methodIndex,code:u}).then(m=>m.error?{ok:!1,error:m.error}:{ok:!0}).catch(m=>({ok:!1,error:m}));if(v.ok){await B();return}t("error",M(v.error,n.t("provider.connect.oauth.code.invalid")))}return(()=>{var c=Ve(),a=c.firstChild,s=a.nextSibling;return i(a,()=>n.t("provider.connect.oauth.code.visit.prefix"),null),i(a,r(G,{get href(){return d.authorization.url},get children(){return n.t("provider.connect.oauth.code.visit.link")}}),null),i(a,()=>n.t("provider.connect.oauth.code.visit.suffix",{provider:$().name}),null),s.addEventListener("submit",o),i(s,r(A,{autofocus:!0,type:"text",get label(){return n.t("provider.connect.oauth.code.label",{method:z()?.label??""})},get placeholder(){return n.t("provider.connect.oauth.code.placeholder")},name:"code",get value(){return e.value},onChange:u=>t("value",u),get validationState(){return e.error?"invalid":void 0},get error(){return e.error}}),null),i(s,r(R,{class:"w-auto",type:"submit",size:"large",variant:"primary",get children(){return n.t("common.continue")}}),null),c})()}function de(){const e=_(()=>{const t=d.authorization?.instructions;return t?.includes(":")?t.split(":")[1]?.trim():t});return ze(()=>{(async()=>{const t=await S.client.provider.oauth.callback({providerID:h.provider,method:d.methodIndex}).then(o=>o.error?{ok:!1,error:o.error}:{ok:!0}).catch(o=>({ok:!1,error:o}));if(C.value){if(!t.ok){const o=M(t.error,n.t("common.requestFailed"));k({type:"auth.error",error:o});return}await B()}})()}),(()=>{var t=Ze(),o=t.firstChild,c=o.nextSibling,a=c.firstChild;return i(o,()=>n.t("provider.connect.oauth.auto.visit.prefix"),null),i(o,r(G,{get href(){return d.authorization.url},get children(){return n.t("provider.connect.oauth.auto.visit.link")}}),null),i(o,()=>n.t("provider.connect.oauth.auto.visit.suffix",{provider:$().name}),null),i(t,r(A,{get label(){return n.t("provider.connect.oauth.auto.confirmationCode")},class:"font-mono",get value(){return e()},readOnly:!0,copyable:!0}),c),i(c,r(Z,{}),a),i(a,()=>n.t("provider.connect.status.waiting")),t})()}return r(Ie,{get title(){return r(De,{tabIndex:-1,icon:"arrow-left",variant:"ghost",onClick:le,get"aria-label"(){return n.t("common.goBack")}})},get children(){var e=Re(),t=e.firstChild,o=t.firstChild,c=t.nextSibling,a=c.firstChild;return i(t,r(Le,{get id(){return h.provider},class:"size-5 shrink-0 icon-strong-base"}),o),i(o,r(L,{get children(){return[r(f,{get when(){return Y(()=>h.provider==="anthropic")()&&z()?.label?.toLowerCase().includes("max")},get children(){return n.t("provider.connect.title.anthropicProMax")}}),r(f,{when:!0,get children(){return n.t("provider.connect.title",{provider:$().name})}})]}})),a.$$keydown=ae,i(a,r(L,{get children(){return[r(f,{get when(){return N()},get children(){var s=H(),u=s.firstChild,v=u.firstChild;return i(u,r(Z,{}),v),i(v,()=>n.t("provider.connect.status.inProgress")),s}}),r(f,{get when(){return d.methodIndex===void 0},get children(){return r(se,{})}}),r(f,{get when(){return d.state==="pending"},get children(){var s=H(),u=s.firstChild,v=u.firstChild;return i(u,r(Z,{}),v),i(v,()=>n.t("provider.connect.status.inProgress")),s}}),r(f,{get when(){return d.state==="prompt"},get children(){return r(ie,{})}}),r(f,{get when(){return d.state==="error"},get children(){var s=H(),u=s.firstChild,v=u.firstChild;return i(u,r(Se,{name:"circle-ban-sign",class:"text-icon-critical-base"}),v),i(v,()=>n.t("provider.connect.status.failed",{error:d.error??""})),s}}),r(f,{get when(){return z()?.type==="api"},get children(){return r(ce,{})}}),r(f,{get when(){return z()?.type==="oauth"},get children(){return r(L,{get children(){return[r(f,{get when(){return d.authorization?.method==="code"},get children(){return r(ue,{})}}),r(f,{get when(){return d.authorization?.method==="auto"},get children(){return r(de,{})}})]}})}})]}})),Ce(()=>a.autofocus=d.methodIndex===void 0?!0:void 0),e}})}re(["keydown"]);const Ne=Object.freeze(Object.defineProperty({__proto__:null,DialogConnectProvider:Ge},Symbol.toStringTag,{value:"Module"}));export{Ge as D,G as L,Ne as d};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as v,z as $,u as k,f as w,H as C,m as l,l as o,I as S,p as D,B as p,G as _,t as j,J as z}from"./index-bSvs-Qh3.js";var T=j('<form class="flex flex-col gap-4 p-6 pt-0"><div class="flex items-center gap-2 text-12-regular text-text-weak"><span class=truncate>/</span></div><div class="flex justify-end gap-2">');function G(d){const m=v(),y=$(),h=k(),a=w(),x=()=>h.data.path.home||"",g=()=>x()+"/.turtlecode",[r,c]=C({name:"",busy:!1});async function f(){const e=r.name.trim();if(!e||r.busy)return;const n=e.replace(/[<>:"/\\|?*\x00-\x1f]/g,"-"),t=`${g()}/${n}`;c("busy",!0);try{await fetch(`${y.url}/global/mkdir`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:t})}).then(s=>{if(!s.ok)throw new Error(`mkdir failed: ${s.status}`);return s.json()}),d.onSelect(d.multiple?[t]:t),m.close()}catch{z({variant:"error",title:a.t("dialog.directory.create.error")})}finally{c("busy",!1)}}function b(e){e.preventDefault(),f()}return l(_,{get title(){return a.t("dialog.directory.create")},class:"w-full max-w-[400px] mx-auto",get children(){var e=T(),n=e.firstChild,t=n.firstChild,s=t.firstChild,u=n.nextSibling;return e.addEventListener("submit",b),o(n,l(S,{name:"folder-add-left",size:"small",class:"shrink-0 text-icon-weak"}),t),o(t,g,s),o(e,l(D,{autofocus:!0,type:"text",get placeholder(){return a.t("dialog.directory.create.placeholder")},get value(){return r.name},onChange:i=>c("name",i),onKeyDown:i=>{i.key==="Enter"&&(i.preventDefault(),f())}}),u),o(u,l(p,{type:"button",variant:"ghost",size:"large",onClick:()=>m.close(),get children(){return a.t("common.cancel")}}),null),o(u,l(p,{type:"submit",variant:"primary",size:"large",get disabled(){return!r.name.trim()||r.busy},get children(){return a.t("dialog.directory.create.action")}}),null),e}})}export{G as DialogCreateProject};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as te,z as re,u as ae,f as oe,i as A,C as ie,H as ne,L as le,m as l,l as o,p as F,S as I,q as L,y as j,Z as P,$ as R,a0 as G,I as K,j as se,F as ce,V as M,B as T,n as de,G as ue,t as p,v as ve}from"./index-bSvs-Qh3.js";var ge=p('<img class="size-full object-cover">'),fe=p('<div class="flex flex-col gap-2"><label class="text-12-medium text-text-weak"></label><div class="flex gap-1.5">'),me=p('<form class="flex flex-col gap-6 p-6 pt-0"><div class="flex flex-col gap-4"><div class="flex flex-col gap-2"><label class="text-12-medium text-text-weak"></label><div class="flex gap-3 items-start"><div class=relative><div class="relative size-16 rounded-md transition-colors cursor-pointer"></div><div class="absolute inset-0 size-16 bg-surface-raised-stronger-non-alpha/90 rounded-[6px] z-10 pointer-events-none flex items-center justify-center transition-opacity"></div><div class="absolute inset-0 size-16 bg-surface-raised-stronger-non-alpha/90 rounded-[6px] z-10 pointer-events-none flex items-center justify-center transition-opacity"></div></div><input id=icon-upload type=file accept=image/* class=hidden><div class="flex flex-col gap-1.5 text-12-regular text-text-weak self-center"><span></span><span></span></div></div></div></div><div class="flex justify-end gap-2">'),pe=p('<div class="size-full flex items-center justify-center">'),be=p("<button type=button>");const xe=["pink","mint","orange","purple","cyan","lime"];function je(s){const y=te(),B=re(),_=ae(),i=oe(),w=A(()=>ie(s.project.worktree)),k=A(()=>s.project.name||w()),[e,c]=ne({name:k(),color:s.project.icon?.color||"pink",iconUrl:s.project.icon?.override||"",startup:s.project.commands?.start??"",dragOver:!1,iconHover:!1});let U;function z(r){if(!r.type.startsWith("image/"))return;const a=new FileReader;a.onload=g=>{c("iconUrl",g.target?.result),c("iconHover",!1)},a.readAsDataURL(r)}function N(r){r.preventDefault(),c("dragOver",!1);const a=r.dataTransfer?.files[0];a&&z(a)}function V(r){r.preventDefault(),c("dragOver",!0)}function q(){c("dragOver",!1)}function W(r){const g=r.target.files?.[0];g&&z(g)}function Y(){c("iconUrl","")}const b=le(()=>({mutationFn:async()=>{const r=e.name.trim()===w()?"":e.name.trim(),a=e.startup.trim();if(s.project.id&&s.project.id!=="global"){await B.client.project.update({projectID:s.project.id,directory:s.project.worktree,name:r,icon:{color:e.color,override:e.iconUrl},commands:{start:a}}),_.project.icon(s.project.worktree,e.iconUrl||void 0),y.close();return}_.project.meta(s.project.worktree,{name:r,icon:{color:e.color,override:e.iconUrl||void 0},commands:{start:a||void 0}}),y.close()}}));function Z(r){r.preventDefault(),!b.isPending&&b.mutate()}return l(ue,{get title(){return i.t("dialog.project.edit.title")},class:"w-full max-w-[480px] mx-auto",get children(){var r=me(),a=r.firstChild,g=a.firstChild,C=g.firstChild,J=C.nextSibling,x=J.firstChild,f=x.firstChild,h=f.nextSibling,$=h.nextSibling,S=x.nextSibling,Q=S.nextSibling,D=Q.firstChild,X=D.nextSibling,E=a.nextSibling;return r.addEventListener("submit",Z),o(a,l(F,{autofocus:!0,type:"text",get label(){return i.t("dialog.project.edit.name")},get placeholder(){return w()},get value(){return e.name},onChange:t=>c("name",t)}),g),o(C,()=>i.t("dialog.project.edit.icon")),x.addEventListener("mouseleave",()=>c("iconHover",!1)),x.addEventListener("mouseenter",()=>c("iconHover",!0)),f.$$click=()=>{e.iconUrl&&e.iconHover?Y():U?.click()},f.addEventListener("dragleave",q),f.addEventListener("dragover",V),f.addEventListener("drop",N),o(f,l(I,{get when(){return e.iconUrl},get fallback(){return(()=>{var t=pe();return o(t,l(P,R({get fallback(){return e.name||k()}},()=>G(e.color),{class:"size-full text-[32px]"}))),t})()},get children(){var t=ge();return L(d=>{var m=e.iconUrl,n=i.t("dialog.project.edit.icon.alt");return m!==d.e&&j(t,"src",d.e=m),n!==d.t&&j(t,"alt",d.t=n),d},{e:void 0,t:void 0}),t}})),o(h,l(K,{name:"cloud-upload",size:"large",class:"text-icon-on-interactive-base drop-shadow-sm"})),o($,l(K,{name:"trash",size:"large",class:"text-icon-on-interactive-base drop-shadow-sm"})),S.addEventListener("change",W),se(t=>{U=t},S),o(D,()=>i.t("dialog.project.edit.icon.hint")),o(X,()=>i.t("dialog.project.edit.icon.recommended")),o(a,l(I,{get when(){return!e.iconUrl},get children(){var t=fe(),d=t.firstChild,m=d.nextSibling;return o(d,()=>i.t("dialog.project.edit.color")),o(m,l(ce,{each:xe,children:n=>(()=>{var v=be();return v.$$click=()=>c("color",n),o(v,l(P,R({get fallback(){return e.name||k()}},()=>G(n),{class:"size-full rounded"}))),L(u=>{var H=i.t("dialog.project.edit.color.select",{color:n}),O=e.color===n,ee={"flex items-center justify-center size-10 p-0.5 rounded-lg overflow-hidden transition-colors cursor-default":!0,"bg-transparent border-2 border-icon-strong-base hover:bg-surface-base-hover":e.color===n,"bg-transparent border border-transparent hover:bg-surface-base-hover hover:border-border-weak-base":e.color!==n};return H!==u.e&&j(v,"aria-label",u.e=H),O!==u.t&&j(v,"aria-pressed",u.t=O),u.a=M(v,ee,u.a),u},{e:void 0,t:void 0,a:void 0}),v})()})),t}}),null),o(a,l(F,{multiline:!0,get label(){return i.t("dialog.project.edit.worktree.startup")},get description(){return i.t("dialog.project.edit.worktree.startup.description")},get placeholder(){return i.t("dialog.project.edit.worktree.startup.placeholder")},get value(){return e.startup},onChange:t=>c("startup",t),spellcheck:!1,class:"max-h-14 w-full overflow-y-auto font-mono text-xs"}),null),o(E,l(T,{type:"button",variant:"ghost",size:"large",onClick:()=>y.close(),get children(){return i.t("common.cancel")}}),null),o(E,l(T,{type:"submit",variant:"primary",size:"large",get disabled(){return b.isPending},get children(){return de(()=>!!b.isPending)()?i.t("common.saving"):i.t("common.save")}}),null),L(t=>{var d={"border-text-interactive-base bg-surface-info-base/20":e.dragOver,"border-border-base hover:border-border-strong":!e.dragOver,"overflow-hidden":!!e.iconUrl},m=!!(e.iconHover&&!e.iconUrl),n=!(e.iconHover&&!e.iconUrl),v=!!(e.iconHover&&e.iconUrl),u=!(e.iconHover&&e.iconUrl);return t.e=M(f,d,t.e),m!==t.t&&h.classList.toggle("opacity-100",t.t=m),n!==t.a&&h.classList.toggle("opacity-0",t.a=n),v!==t.o&&$.classList.toggle("opacity-100",t.o=v),u!==t.i&&$.classList.toggle("opacity-0",t.i=u),t},{e:void 0,t:void 0,a:void 0,o:void 0,i:void 0}),r}})}ve(["click"]);export{je as DialogEditProject};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a4 as v,d as D,a1 as S,a2 as k,a5 as _,c as $,f as w,i as P,m as d,l as p,G as F,r as L,J as u,t as I}from"./index-bSvs-Qh3.js";import{L as T}from"./list-BPk4NMWt.js";import{e as b}from"./session-CdcUAq9-.js";import"./chunk-VVM5DH6Z-COaOSPgd.js";import"./tabs-dF68ik4J.js";import"./select-CEKfrTm2.js";import"./trellis-6YKi26t8.js";import"./trellis-op-icon-5x1lMwNH.js";import"./purify.es-A66Cw1IH.js";import"./tag--BCZ5q7_.js";import"./file-icon-CgbvTpIc.js";var q=I('<div class="w-full flex items-center gap-2"><span class="truncate flex-1 min-w-0 text-left font-normal"></span><span class="text-text-weak shrink-0 font-normal">');function C(i){return i.toLocaleTimeString(void 0,{timeStyle:"short"})}const O=()=>{const i=v(),g=D(),c=S(),l=k(),f=_(),h=$(),r=w(),x=P(()=>{const t=i.id;if(!t)return[];const a=c.data.message[t]??[],o=[];for(const s of a){if(s.role!=="user")continue;const e=(c.data.part[s.id]??[]).find(n=>n.type==="text"&&!n.synthetic&&!n.ignored);e&&o.push({id:s.id,text:e.text.replace(/\n/g," ").slice(0,200),time:C(new Date(s.time.created))})}return o.reverse()}),y=t=>{if(!t)return;const a=i.id;if(!a)return;const o=c.data.part[t.id]??[],s=b(o,{directory:l.directory,attachmentName:r.t("common.attachment")}),m=L(l.directory);l.client.session.fork({sessionID:a,messageID:t.id}).then(e=>{if(!e.data){u({title:r.t("common.requestFailed")});return}h.close(),f.set(s,void 0,{dir:m,id:e.data.id}),g(`/${m}/session/${e.data.id}`)}).catch(e=>{const n=e instanceof Error?e.message:String(e);u({title:r.t("common.requestFailed"),description:n})})};return d(F,{get title(){return r.t("command.session.fork")},get children(){return d(T,{class:"flex-1 min-h-0 [&_[data-slot=list-scroll]]:flex-1 [&_[data-slot=list-scroll]]:min-h-0",get search(){return{placeholder:r.t("common.search.placeholder"),autofocus:!0}},get emptyMessage(){return r.t("dialog.fork.empty")},key:t=>t.id,items:x,filterKeys:["text"],onSelect:y,children:t=>(()=>{var a=q(),o=a.firstChild,s=o.nextSibling;return p(o,()=>t.text),p(s,()=>t.time),a})()})}})};export{O as DialogFork};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a6 as y,f as D,c as b,m as o,l as n,Y as I,B as k,G as $,t as g,a8 as C,v as P}from"./index-bSvs-Qh3.js";import{L}from"./list-BPk4NMWt.js";import{S as c}from"./switch-DPq0vsit.js";import{D as _}from"./dialog-select-provider-2iOfyWxy.js";import"./chunk-VVM5DH6Z-COaOSPgd.js";import"./tag--BCZ5q7_.js";import"./dialog-connect-provider-BEqcXIot.js";var B=g("<span>"),S=g('<div class="w-full flex items-center justify-between gap-x-3"><span></span><div>');const j=()=>{const t=y(),d=D(),u=b(),v=()=>{u.show(()=>o(_,{}))},s=e=>C.indexOf(e),m=e=>t.model.list().filter(r=>r.provider.id===e),h=e=>m(e).every(r=>t.model.visible({modelID:r.id,providerID:r.provider.id})),f=(e,r)=>{m(e).forEach(i=>{t.model.setVisibility({modelID:i.id,providerID:i.provider.id},r)})};return o($,{get title(){return d.t("dialog.model.manage")},get description(){return d.t("dialog.model.manage.description")},get action(){return o(k,{class:"h-7 -my-1 text-14-medium",icon:"plus-small",tabIndex:-1,onClick:v,get children(){return d.t("command.provider.connect")}})},get children(){return o(L,{get search(){return{placeholder:d.t("dialog.model.search.placeholder"),autofocus:!0}},get emptyMessage(){return d.t("dialog.model.empty")},key:e=>`${e?.provider?.id}:${e?.id}`,get items(){return t.model.list()},filterKeys:["provider.name","name","id"],sortBy:(e,r)=>e.name.localeCompare(r.name),groupBy:e=>e.provider.id,groupHeader:e=>{const r=e.items[0].provider;return[(()=>{var i=B();return n(i,()=>r.name),i})(),o(I,{placement:"top",get value(){return d.t("dialog.model.manage.provider.toggle",{provider:r.name})},get children(){return o(c,{class:"-mr-1",get checked(){return h(r.id)},onChange:i=>f(r.id,i),hideLabel:!0,get children(){return r.name}})}})]},sortGroupsBy:(e,r)=>{const i=s(e.items[0].provider.id),l=s(r.items[0].provider.id),a=i>=0,p=l>=0;return a&&!p?-1:!a&&p?1:i-l},onSelect:e=>{if(!e)return;const r={modelID:e.id,providerID:e.provider.id};t.model.setVisibility(r,!t.model.visible(r))},children:e=>(()=>{var r=S(),i=r.firstChild,l=i.nextSibling;return n(i,()=>e.name),l.$$click=a=>a.stopPropagation(),n(l,o(c,{get checked(){return!!t.model.visible({modelID:e.id,providerID:e.provider.id})},onChange:a=>{t.model.setVisibility({modelID:e.id,providerID:e.provider.id},a)}})),r})()})}})};P(["click"]);export{j as DialogManageModels};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dialog-create-project-TcSOut-3.js","assets/index-bSvs-Qh3.js","assets/index-DpJDxStT.css","assets/dialog-clone-project-BgrtjUcd.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{u as J,z as Q,a as U,c as X,f as tt,h as et,i as C,A as rt,C as D,m as _,l as b,I as M,E as nt,_ as Z,G as st,t as T}from"./index-bSvs-Qh3.js";import{F as B}from"./file-icon-CgbvTpIc.js";import{L as ot,f as it}from"./list-BPk4NMWt.js";import"./chunk-VVM5DH6Z-COaOSPgd.js";var G=T('<div class="w-full flex items-center justify-between rounded-md"><div class="flex items-center gap-x-3 grow min-w-0"><span class="text-14-regular text-text-interactive-base">'),at=T('<div class="w-full flex items-center justify-between rounded-md"><div class="flex items-center gap-x-3 grow min-w-0"><div class="flex items-center text-14-regular min-w-0"><span class="text-text-strong whitespace-nowrap">~</span><span class="text-text-weak whitespace-nowrap">/'),ct=T('<div class="w-full flex items-center justify-between rounded-md"><div class="flex items-center gap-x-3 grow min-w-0"><div class="flex items-center text-14-regular min-w-0"><span class="text-text-weak whitespace-nowrap overflow-hidden overflow-ellipsis truncate min-w-0"></span><span class="text-text-strong whitespace-nowrap"></span><span class="text-text-weak whitespace-nowrap">/');const I="__clone__";function H(n){return((n??"").split(/\r?\n/)[0]??"").replace(/[\u0000-\u001F\u007F]/g,"").trim()}function lt(n){const t=n.replaceAll("\\","/");return t.startsWith("//")&&!t.startsWith("///")?"//"+t.slice(2).replace(/\/+/g,"/"):t.replace(/\/+/g,"/")}function x(n){const t=lt(n);return/^[A-Za-z]:$/.test(t)?t+"/":t}function p(n){const t=x(n);return t==="/"||t==="//"||/^[A-Za-z]:\/$/.test(t)?t:t.replace(/\/+$/,"")}function ut(n,t){const o=p(n??""),a=p(t).replace(/^\/+/,"");return o?a?o.endsWith("/")?o+a:o+"/"+a:o:a}function O(n){const t=x(n);return t.startsWith("//")?"//":t.startsWith("/")?"/":/^[A-Za-z]:\//.test(t)?t.slice(0,3):""}function ft(n){const t=p(n);if(t==="/"||t==="//"||/^[A-Za-z]:\/$/.test(t))return t;const o=t.lastIndexOf("/");return o<=0?"/":o===2&&/^[A-Za-z]:/.test(t)?t.slice(0,3):t.slice(0,o)}function dt(n){const t=x(n.trim());return t?t.startsWith("~")?"tilde":O(t)?"absolute":"relative":"relative"}function N(n,t){const o=p(n);if(!t)return"";const a=p(t),g=o.toLowerCase(),l=a.toLowerCase();return g===l?"~":g.startsWith(l+"/")?"~"+o.slice(a.length):""}function V(n,t,o){const a=p(n);return dt(t)==="absolute"?a:N(a,o)||a}function q(n,t,o){const a=p(n),g=N(a,t),l=c=>c?c.endsWith("/")?c:c+"/":"",w=Array.from(new Set([a,l(a),g,l(g),D(a)].filter(Boolean))).join(`
|
|
3
|
+
`);return{absolute:a,search:w,group:o}}function ht(n){const t=new Set;return n.filter(o=>t.has(o.absolute)?!1:(t.add(o.absolute),!0))}function pt(n){const t=new Map;let o=0;const a=w=>{const c=n.start();if(!c)return;const i=x(w);if(!i)return{directory:p(c),path:""};const y=n.home();if(i==="~")return{directory:p(y||c),path:""};if(i.startsWith("~/"))return{directory:p(y||c),path:i.slice(2)};const u=O(i);return u?{directory:p(u),path:i.slice(u.length)}:{directory:p(c),path:i}},g=async w=>{const c=p(w),i=t.get(c);if(i)return i;const y=n.sdk.client.file.list({directory:c,path:""}).then(u=>u.data??[]).catch(()=>[]).then(u=>u.filter(d=>d.type==="directory").map(d=>({name:d.name,absolute:p(x(d.absolute))})));return t.set(c,y),y},l=async(w,c,i)=>{const y=await g(w);return c?it.go(c,y,{key:"name",limit:i}).map(u=>u.obj.absolute):y.slice(0,i).map(u=>u.absolute)};return async w=>{const c=++o,i=()=>c===o,y=H(w),u=a(y);if(!u)return[];const d=x(y),W=d.startsWith("~")||!!O(d)||d.includes("/"),z=x(u.path),L=()=>n.sdk.client.find.files({directory:u.directory,query:z,type:"directory",limit:50}).then(m=>m.data??[]).catch(()=>[]);if(!W){const m=await L();return i()?m.map(F=>ut(u.directory,F)).slice(0,50):[]}const v=z.replace(/^\/+/,"").split("/"),R=v.slice(0,v.length-1).filter(m=>m&&m!=="."),S=v[v.length-1]??"",E=12,P=4;let e=[u.directory];for(const m of R){if(!i())return[];if(m===".."){e=e.map(ft);continue}const F=(await Promise.all(e.map(Y=>l(Y,m,P)))).flat();if(!i())return[];if(e=Array.from(new Set(F)).slice(0,E),e.length===0)return[]}const f=(await Promise.all(e.map(m=>l(m,S,50)))).flat();if(!i())return[];const r=Array.from(new Set(f)),s=d.startsWith("~")?p(u.directory):"";if(!!d.endsWith("/")||!S)return(s?Array.from(new Set([s,...r])):r).slice(0,50);const $=S.toLowerCase(),k=r.filter(m=>D(m).toLowerCase()===$)[0];if(!k)return r.slice(0,50);const j=await l(k,"",30);if(!i())return[];const K=Array.from(new Set([...r,...j]));return(s?Array.from(new Set([s,...K])):K).slice(0,50)}}function _t(n){const t=J(),o=Q(),a=U(),g=X(),l=tt(),[w,c]=et("");let i;const y=C(()=>!(t.data.path.home||t.data.path.directory)),[u]=rt(()=>y()?!0:void 0,async()=>o.client.path.get().then(e=>e.data).catch(()=>{}),{initialValue:void 0}),d=C(()=>t.data.path.home||u()?.home||""),W=C(()=>d()+"/.turtlecode"),z=C(()=>W()),L=pt({sdk:o,home:d,start:z}),v=C(()=>{const e=a.projects.list(),f=new Map;for(const r of e){let s=0;const h=[r.worktree,...r.sandboxes??[]];for(const $ of h){const A=t.child($,{bootstrap:!1})[0].session;for(const k of A){if(k.time.archived)continue;const j=k.time.updated??k.time.created;j>s&&(s=j)}}f.set(r.worktree,s)}return e.map((r,s)=>({project:r,at:f.get(r.worktree)??0,index:s})).sort((r,s)=>s.at-r.at||r.index-s.index).slice(0,5).map(({project:r})=>{const s=q(r.worktree,d(),"recent"),h=r.name||D(r.worktree);return{...s,search:`${s.search}
|
|
4
|
+
${h}`}})}),R={absolute:"__create__",search:l.t("dialog.directory.create")+`
|
|
5
|
+
new blank project`,group:"create"},S={absolute:I,search:l.t("dialog.clone.title")+`
|
|
6
|
+
clone github import`,group:"create"},E=async e=>{const r=(await L(e)).map(s=>q(s,d(),"folders"));return[R,S,...ht([...v(),...r])]};function P(e){n.onSelect(n.multiple?[e]:e),g.close()}return _(st,{get title(){return n.title??l.t("command.project.open")},get children(){return _(ot,{get search(){return{placeholder:l.t("dialog.directory.search.placeholder"),autofocus:!0}},get emptyMessage(){return l.t("dialog.directory.empty")},get loadingMessage(){return l.t("common.loading")},items:E,key:e=>e.absolute,filterKeys:["search"],groupBy:e=>e.group,sortGroupsBy:(e,f)=>e.category===f.category?0:e.category==="create"?-1:f.category==="create"?1:e.category==="recent"?-1:1,groupHeader:e=>{if(e.category!=="create")return e.category==="recent"?l.t("home.recentProjects"):l.t("command.project.open")},ref:e=>i=e,onFilter:e=>c(H(e)),onKeyEvent:(e,f)=>{if(e.key!=="Tab"||e.shiftKey||!f)return;e.preventDefault(),e.stopPropagation();const r=V(f.absolute,w(),d());i?.setFilter(r.endsWith("/")?r:r+"/")},onSelect:e=>{if(e){if(e.absolute==="__create__"){g.close(),setTimeout(()=>{Z(()=>import("./dialog-create-project-TcSOut-3.js"),__vite__mapDeps([0,1,2])).then(f=>{g.show(()=>_(f.DialogCreateProject,{get multiple(){return n.multiple},get onSelect(){return n.onSelect}}),()=>n.onSelect(null))})});return}if(e.absolute===I){g.close(),setTimeout(()=>{Z(()=>import("./dialog-clone-project-BgrtjUcd.js"),__vite__mapDeps([3,1,2])).then(f=>{g.show(()=>_(f.DialogCloneProject,{onSelect:r=>r&&P(r)}),()=>n.onSelect(null))})});return}P(e.absolute)}},children:e=>{if(e.absolute==="__create__")return(()=>{var r=G(),s=r.firstChild,h=s.firstChild;return b(s,_(M,{name:"plus",size:"small",class:"shrink-0 size-4 text-icon-interactive-base"}),h),b(h,()=>l.t("dialog.directory.create")),r})();if(e.absolute===I)return(()=>{var r=G(),s=r.firstChild,h=s.firstChild;return b(s,_(M,{name:"branch",size:"small",class:"shrink-0 size-4 text-icon-interactive-base"}),h),b(h,()=>l.t("dialog.clone.title")),r})();const f=V(e.absolute,w(),d());return f==="~"?(()=>{var r=at(),s=r.firstChild,h=s.firstChild;return b(s,_(B,{get node(){return{path:e.absolute,type:"directory"}},class:"shrink-0 size-4"}),h),r})():(()=>{var r=ct(),s=r.firstChild,h=s.firstChild,$=h.firstChild,A=$.nextSibling;return b(s,_(B,{get node(){return{path:e.absolute,type:"directory"}},class:"shrink-0 size-4"}),h),b($,()=>nt(f)),b(A,()=>D(f)),r})()}})}})}export{_t as DialogSelectDirectory};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{l as g,q as T,V as Q,t as S,aH as U,f as X,a as Z,aI as ee,c as te,d as ne,z as se,u as re,h as ae,i as b,P as oe,m as y,aJ as ie,aB as ce,aC as K,S as M,aK as le,I as de,E as ue,C as O,G as fe,r as ge}from"./index-bSvs-Qh3.js";import{F as he}from"./file-icon-CgbvTpIc.js";import{L as me}from"./list-BPk4NMWt.js";import{u as pe}from"./trellis-6YKi26t8.js";import{c as we}from"./session-CdcUAq9-.js";import"./chunk-VVM5DH6Z-COaOSPgd.js";import"./select-CEKfrTm2.js";import"./trellis-op-icon-5x1lMwNH.js";import"./tabs-dF68ik4J.js";import"./purify.es-A66Cw1IH.js";import"./tag--BCZ5q7_.js";var ye=S("<span data-component=keybind>");function ve(t){return(()=>{var n=ye();return g(n,()=>t.children),T(a=>Q(n,{...t.classList??{},[t.class??""]:!!t.class},a)),n})()}function be(t,n){const a=new Date(t),r=new Date().getTime()-a.getTime(),c=Math.floor(r/1e3),u=Math.floor(c/60),o=Math.floor(u/60),f=Math.floor(o/24);return c<60?n("common.time.justNow"):u<60?n("common.time.minutesAgo.short",{count:u}):o<24?n("common.time.hoursAgo.short",{count:o}):n("common.time.daysAgo.short",{count:f})}var P=S('<span class="text-14-regular text-text-weak truncate">'),xe=S('<div class="w-full flex items-center justify-between gap-4"><div class="flex items-center gap-2 min-w-0"><span class="text-14-regular text-text-strong whitespace-nowrap">'),$e=S('<span class="text-12-regular text-text-weak whitespace-nowrap ml-2">'),ke=S('<div class="w-full flex items-center justify-between rounded-md pl-1"><div class="flex items-center gap-x-3 grow min-w-0"><div class="flex items-center gap-2 min-w-0"><span class="text-14-regular text-text-strong truncate">'),Se=S('<div class="w-full flex items-center justify-between rounded-md pl-1"><div class="flex items-center gap-x-3 grow min-w-0"><div class="flex items-center text-14-regular"><span class="text-text-weak whitespace-nowrap overflow-hidden overflow-ellipsis truncate min-w-0"></span><span class="text-text-strong whitespace-nowrap">');const E=5,_e=["session.new","workspace.new","session.previous","session.next","terminal.toggle","review.toggle"],q=t=>{const n=new Set,a=[];for(const h of t)n.has(h.id)||(n.add(h.id),a.push(h));return a},A=(t,n)=>({id:"command:"+t.id,type:"command",title:t.title,description:t.description,keybind:t.keybind,category:n,option:t}),D=(t,n)=>({id:"file:"+t,type:"file",title:t,category:n,path:t}),Ce=(t,n)=>({id:`session:${t.directory}:${t.id}`,type:"session",title:t.title,description:t.description,category:n,directory:t.directory,sessionID:t.id,archived:t.archived,updated:t.updated});function Me(t){const n=b(()=>t.filesOnly()?[]:t.command.options.filter(r=>!r.disabled&&!r.id.startsWith("suggested.")&&r.id!=="file.open")),a=b(()=>{const r=t.language.t("palette.group.commands");return n().map(c=>A(c,r))}),h=b(()=>{const r=n(),c=new Map(_e.map((i,l)=>[i,l])),u=r.filter(i=>c.has(i.id)),o=u.length?u:r.slice(0,E),f=u.length?[...o].sort((i,l)=>(c.get(i.id)??0)-(c.get(l.id)??0)):o,v=t.language.t("palette.group.commands");return f.map(i=>A(i,v))});return{allowed:n,list:a,picks:h}}function De(t){const n=we({tabs:t.tabs,pathFromTab:t.file.pathFromTab,normalizeTab:r=>r.startsWith("file://")?t.file.tab(r):r}),a=b(()=>{const r=n.openedTabs(),c=n.activeFileTab(),u=c?[c,...r.filter(i=>i!==c)]:r,o=new Set,f=t.language.t("palette.group.files"),v=[];for(const i of u){const l=t.file.pathFromTab(i);l&&(o.has(l)||(o.add(l),v.push(D(l,f))))}return v.slice(0,E)}),h=b(()=>{const r=t.language.t("palette.group.files");return t.file.tree.children("").filter(o=>o.type==="file").map(o=>o.path).sort((o,f)=>o.localeCompare(f)).slice(0,E).map(o=>D(o,r))});return{recent:a,root:h}}function Fe(t){const n={token:0,inflight:void 0,cached:void 0};return{sessions:h=>{if(!h.trim())return n.token+=1,n.inflight=void 0,n.cached=void 0,[];if(n.cached)return n.cached;if(n.inflight)return n.inflight;const c=n.token,u=t.workspaces();return u.length===0?[]:(n.inflight=Promise.all(u.map(o=>{const f=t.label(o);return t.globalSDK.client.session.list({directory:o,roots:!0}).then(v=>(v.data??[]).filter(i=>!!i?.id).map(i=>({id:i.id,title:i.title??t.language.t("command.session.new"),description:f,directory:o,archived:i.time?.archived,updated:i.time?.updated}))).catch(()=>[])})).then(o=>{if(n.token!==c)return[];const f=new Set,v=t.language.t("command.category.session"),i=o.flat().filter(l=>{const $=`${l.directory}:${l.id}`;return f.has($)?!1:(f.add($),!0)}).map(l=>Ce(l,v));return n.cached=i,i}).catch(()=>[]).finally(()=>{n.inflight=void 0}),n.inflight)}}}function ze(t){const n=U(),a=X(),h=Z(),r=ee(),c=te(),u=ne(),o=se(),f=re(),{params:v,tabs:i,view:l}=pe(),$=()=>t.mode==="files",k={cleanup:void 0,committed:!1},[N,z]=ae(!1),I=Me({filesOnly:$,command:n,language:a}),_=De({file:r,tabs:i,language:a}),L=b(()=>ie(v.dir)??""),j=b(()=>{const e=L();if(e)return h.projects.list().find(s=>s.worktree===e||s.sandboxes?.includes(e))}),G=b(()=>{const e=L(),s=j();if(!s)return e?[e]:[];const d=[s.worktree,...s.sandboxes??[]];return e&&!d.includes(e)?[...d,e]:d}),H=b(()=>f.data.path.home),R=e=>{const s=j(),d=s&&e===s.worktree?a.t("workspace.type.local"):a.t("workspace.type.sandbox"),[p]=f.child(e,{bootstrap:!1}),m=H(),w=m?e.replace(m,"~"):e,x=p.vcs?.branch??O(e);return`${d} : ${x||w}`},{sessions:B}=Fe({workspaces:G,label:R,globalSDK:o,language:a}),W=async e=>{const s=e.trim();if(z(s.length>0),!s&&$()){const x=r.tree.state("")?.loaded,F=x?Promise.resolve():r.tree.list(""),C=q([..._.recent(),..._.root()]);return x||C.length>0?C:(await F,q([..._.recent(),..._.root()]))}if(!s)return[...I.picks(),..._.recent()];if($()){const x=await r.searchFiles(s),F=a.t("palette.group.files");return x.map(C=>D(C,F))}const[d,p]=await Promise.all([r.searchFiles(s),Promise.resolve(B(s))]),m=a.t("palette.group.files"),w=d.map(x=>D(x,m));return[...I.list(),...p,...w]},J=e=>{k.cleanup?.(),e&&e.type==="command"&&(k.cleanup=e.option?.onHighlight?.())},V=e=>{const s=r.tab(e);i().open(s),r.load(e),l().reviewPanel.opened()||l().reviewPanel.open(),h.fileTree.setTab("all"),t.onOpenFile?.(e),i().setActive(s)},Y=e=>{if(e){if(k.committed=!0,k.cleanup=void 0,c.close(),e.type==="command"){e.option?.onSelect?.("palette");return}if(e.type==="session"){if(!e.directory||!e.sessionID)return;u(`/${ge(e.directory)}/session/${e.sessionID}`);return}e.path&&V(e.path)}};return oe(()=>{k.committed||k.cleanup?.()}),y(fe,{class:"pt-3 pb-0 !max-h-[480px]",transition:!0,get children(){return y(me,{get search(){return{placeholder:$()?a.t("session.header.searchFiles"):a.t("palette.search.placeholder"),autofocus:!0,hideIcon:!0}},get emptyMessage(){return a.t("palette.empty")},get loadingMessage(){return a.t("common.loading")},items:W,key:e=>e.id,filterKeys:["title","description","category"],get groupBy(){return N()?e=>e.category:()=>""},onMove:J,onSelect:Y,children:e=>y(ce,{get fallback(){return(()=>{var s=Se(),d=s.firstChild,p=d.firstChild,m=p.firstChild,w=m.nextSibling;return g(d,y(he,{get node(){return{path:e.path??"",type:"file"}},class:"shrink-0 size-4"}),p),g(m,()=>ue(e.path??"")),g(w,()=>O(e.path??"")),s})()},get children(){return[y(K,{get when(){return e.type==="command"},get children(){var s=xe(),d=s.firstChild,p=d.firstChild;return g(p,()=>e.title),g(d,y(M,{get when(){return e.description},get children(){var m=P();return g(m,()=>e.description),m}}),null),g(s,y(M,{get when(){return e.keybind},get children(){return y(ve,{class:"rounded-[4px]",get children(){return le(e.keybind??"",a.t)}})}}),null),s}}),y(K,{get when(){return e.type==="session"},get children(){var s=ke(),d=s.firstChild,p=d.firstChild,m=p.firstChild;return g(d,y(de,{name:"bubble-5",size:"small",class:"shrink-0 text-icon-weak"}),p),g(m,()=>e.title),g(p,y(M,{get when(){return e.description},get children(){var w=P();return g(w,()=>e.description),T(()=>w.classList.toggle("opacity-70",!!e.archived)),w}}),null),g(s,y(M,{get when(){return e.updated},get children(){var w=$e();return g(w,()=>be(new Date(e.updated).toISOString(),a.t)),w}}),null),T(()=>m.classList.toggle("opacity-70",!!e.archived)),s}})]}})})}})}export{ze as DialogSelectFile};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a1 as P,a2 as M,f as D,H as E,O as $,a3 as j,J as F,i as h,L as K,m as u,v as O,l as c,S as v,n as b,G as q,t as m}from"./index-bSvs-Qh3.js";import{L as B}from"./list-BPk4NMWt.js";import{S as G}from"./switch-DPq0vsit.js";import"./chunk-VVM5DH6Z-COaOSPgd.js";var H=m('<span class="text-11-regular text-text-weaker">'),J=m('<span class="text-11-regular text-text-weak">'),T=m('<span class="text-11-regular text-text-weaker truncate">'),z=m('<div class="w-full flex items-center justify-between gap-x-3"><div class="flex flex-col gap-0.5 min-w-0"><div class="flex items-center gap-2"><span class=truncate></span></div></div><div>');const A={connected:"mcp.status.connected",failed:"mcp.status.failed",needs_auth:"mcp.status.needs_auth",disabled:"mcp.status.disabled"},U=()=>{const s=P(),d=M(),l=D(),[_,o]=E({done:!1,loading:!1});$(j(()=>s.data.mcp_ready,(e,t)=>{!e&&t&&o("done",!1)},{defer:!0})),$(()=>{if(!(_.done||_.loading)){if(s.data.mcp_ready){o("done",!0);return}o("loading",!0),d.client.mcp.status().then(e=>{s.set("mcp",e.data??{}),s.set("mcp_ready",!0),o("done",!0)}).catch(e=>{o("done",!0),F({variant:"error",title:l.t("common.requestFailed"),description:e instanceof Error?e.message:String(e)})}).finally(()=>{o("loading",!1)})}});const p=h(()=>Object.entries(s.data.mcp??{}).map(([e,t])=>({name:e,status:t.status})).sort((e,t)=>e.name.localeCompare(t.name))),n=K(()=>({mutationFn:async e=>{s.data.mcp[e]?.status==="connected"?await d.client.mcp.disconnect({name:e}):await d.client.mcp.connect({name:e});const i=await d.client.mcp.status();i.data&&s.set("mcp",i.data)}})),S=h(()=>p().filter(e=>e.status==="connected").length),k=h(()=>p().length);return u(q,{get title(){return l.t("dialog.mcp.title")},get description(){return l.t("dialog.mcp.description",{enabled:S(),total:k()})},get children(){return u(B,{get search(){return{placeholder:l.t("common.search.placeholder"),autofocus:!0}},get emptyMessage(){return l.t("dialog.mcp.empty")},key:e=>e?.name??"",items:p,filterKeys:["name","status"],sortBy:(e,t)=>e.name.localeCompare(t.name),onSelect:e=>{!e||n.isPending||n.mutate(e.name)},children:e=>{const t=()=>s.data.mcp[e.name],i=()=>t()?.status,w=()=>{const r=i()?A[i()]:void 0;if(r)return l.t(r)},x=()=>{const r=t();return r?.status==="failed"?r.error:void 0},C=()=>i()==="connected";return(()=>{var r=z(),g=r.firstChild,f=g.firstChild,L=f.firstChild,y=g.nextSibling;return c(L,()=>e.name),c(f,u(v,{get when(){return w()},get children(){var a=H();return c(a,w),a}}),null),c(f,u(v,{get when(){return b(()=>!!n.isPending)()&&n.variables===e.name},get children(){var a=J();return c(a,()=>l.t("common.loading.ellipsis")),a}}),null),c(g,u(v,{get when(){return x()},get children(){var a=T();return c(a,x),a}}),null),y.$$click=a=>a.stopPropagation(),c(y,u(G,{get checked(){return C()},get disabled(){return b(()=>!!n.isPending)()&&n.variables===e.name},onChange:()=>{n.isPending||n.mutate(e.name)}})),r})()}})}})};O(["click"]);export{U as DialogSelectMcp};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dialog-connect-provider-BEqcXIot.js","assets/index-bSvs-Qh3.js","assets/index-DpJDxStT.css","assets/list-BPk4NMWt.js","assets/chunk-VVM5DH6Z-COaOSPgd.js","assets/tag--BCZ5q7_.js","assets/dialog-select-provider-2iOfyWxy.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{a6 as k,c as S,a7 as E,f as I,m as t,l as r,S as c,Y as L,n as T,a8 as g,B as M,G as O,t as u,_ as w,v as A}from"./index-bSvs-Qh3.js";import{L as $}from"./list-BPk4NMWt.js";import{T as m,P as B}from"./tag--BCZ5q7_.js";import{M as R}from"./session-CdcUAq9-.js";import"./chunk-VVM5DH6Z-COaOSPgd.js";import"./tabs-dF68ik4J.js";import"./select-CEKfrTm2.js";import"./trellis-6YKi26t8.js";import"./trellis-op-icon-5x1lMwNH.js";import"./purify.es-A66Cw1IH.js";import"./file-icon-CgbvTpIc.js";var G=u('<div class="flex flex-col gap-3 px-2.5"><div class="text-14-medium text-text-base px-2.5">'),K=u('<div class="px-1.5 pb-1.5"><div class="w-full rounded-sm border border-border-weak-base bg-surface-raised-base"><div class="w-full flex flex-col items-start gap-4 px-1.5 pt-4 pb-4"><div class="px-2 text-14-medium text-text-base"></div><div class=w-full>'),V=u('<div class="w-full flex items-center gap-x-2.5"><span>'),h=u('<div class="text-14-regular text-text-weak">'),j=u('<div class="w-full flex items-center gap-x-3"><span>');const Z=b=>{const v=b.model??k().model,f=S(),y=E(),i=I(),D=l=>{w(()=>import("./dialog-connect-provider-BEqcXIot.js").then(s=>s.d),__vite__mapDeps([0,1,2,3,4,5])).then(s=>{f.show(()=>t(s.DialogConnectProvider,{provider:l}))})},C=()=>{w(()=>import("./dialog-select-provider-2iOfyWxy.js").then(l=>l.d),__vite__mapDeps([6,1,2,3,4,5,0])).then(l=>{f.show(()=>t(l.DialogSelectProvider,{}))})};let _;const P=l=>{l.key!=="Escape"&&_?.onKeyDown(l)};return t(O,{get title(){return i.t("dialog.model.select.title")},class:"overflow-y-auto [&_[data-slot=dialog-body]]:overflow-visible [&_[data-slot=dialog-body]]:flex-none",get children(){return[(()=>{var l=G(),s=l.firstChild;return l.$$keydown=P,r(s,()=>i.t("dialog.model.unpaid.freeModels.title")),r(l,t($,{class:"[&_[data-slot=list-scroll]]:overflow-visible",ref:e=>_=e,get items(){return v.list},get current(){return v.current()},key:e=>`${e.provider.id}:${e.id}`,itemWrapper:(e,d)=>t(L,{class:"w-full",placement:"right-start",gutter:12,get value(){return t(R,{model:e,get latest(){return e.latest},get free(){return T(()=>e.provider.id==="opencode")()&&(!e.cost||e.cost.input===0)}})},children:d}),onSelect:e=>{v.set(e?{modelID:e.id,providerID:e.provider.id}:void 0,{recent:!0}),f.close()},children:e=>(()=>{var d=V(),p=d.firstChild;return r(p,()=>e.name),r(d,t(m,{get children(){return i.t("model.tag.free")}}),null),r(d,t(c,{get when(){return e.latest},get children(){return t(m,{get children(){return i.t("model.tag.latest")}})}}),null),d})()}),null),l})(),(()=>{var l=K(),s=l.firstChild,e=s.firstChild,d=e.firstChild,p=d.nextSibling;return r(d,()=>i.t("dialog.model.unpaid.addMore.title")),r(p,t($,{class:"w-full px-0",key:o=>o?.id,get items(){return y.popular},activeIcon:"plus-small",sortBy:(o,n)=>g.includes(o.id)&&g.includes(n.id)?g.indexOf(o.id)-g.indexOf(n.id):o.name.localeCompare(n.name),onSelect:o=>{o&&D(o.id)},children:o=>(()=>{var n=j(),x=n.firstChild;return r(n,t(B,{"data-slot":"list-item-extra-icon",get id(){return o.id}}),x),r(x,()=>o.name),r(n,t(c,{get when(){return o.id==="opencode"},get children(){var a=h();return r(a,()=>i.t("dialog.provider.opencode.tagline")),a}}),null),r(n,t(c,{get when(){return o.id==="opencode"},get children(){return t(m,{get children(){return i.t("dialog.provider.tag.recommended")}})}}),null),r(n,t(c,{get when(){return o.id==="opencode-go"},get children(){return[(()=>{var a=h();return r(a,()=>i.t("dialog.provider.opencodeGo.tagline")),a})(),t(m,{get children(){return i.t("dialog.provider.tag.recommended")}})]}}),null),r(n,t(c,{get when(){return o.id==="anthropic"},get children(){var a=h();return r(a,()=>i.t("dialog.provider.anthropic.note")),a}}),null),n})()}),null),r(p,t(M,{variant:"ghost",class:"w-full justify-start px-[11px] py-3.5 gap-4.5 text-14-medium",icon:"dot-grid",onClick:C,get children(){return i.t("dialog.provider.viewAll")}}),null),l})()]}})};A(["keydown"]);export{Z as DialogSelectModelUnpaid};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{c as Z,u as le,z as ne,f as ee,H as se,L as de,J as A,m as o,l as a,p as k,F as V,Q as F,q as J,y as N,B as T,n as ce,G as re,t as B,aG as j,aE as q,a7 as ue,S as U,a8 as K}from"./index-bSvs-Qh3.js";import{L as ve}from"./list-BPk4NMWt.js";import{P as te,T as H}from"./tag--BCZ5q7_.js";import{L as me,D as pe}from"./dialog-connect-provider-BEqcXIot.js";const ge=/^[a-z0-9][a-z0-9-_]*$/,he="@ai-sdk/openai-compatible";function fe(n){const h=n.form.providerID.trim(),s=n.form.name.trim(),y=n.form.baseURL.trim(),r=n.form.apiKey.trim(),d=r.match(/^\{env:([^}]+)\}$/)?.[1]?.trim(),v=r&&!d?r:void 0,t=h?ge.test(h)?void 0:n.t("provider.custom.error.providerID.format"):n.t("provider.custom.error.providerID.required"),u=s?void 0:n.t("provider.custom.error.name.required"),g=y?/^https?:\/\//.test(y)?void 0:n.t("provider.custom.error.baseURL.format"):n.t("provider.custom.error.baseURL.required"),x=n.disabledProviders.includes(h),_=t?void 0:n.existingProviderIDs.has(h)&&!x?n.t("provider.custom.error.providerID.exists"):void 0,w=new Set,I=n.form.models.map(l=>{const p=l.id.trim(),f=p?w.has(p)?n.t("provider.custom.error.duplicate"):(()=>{w.add(p)})():n.t("provider.custom.error.required"),P=l.name.trim()?void 0:n.t("provider.custom.error.required");return{id:f,name:P}}),M=I.every(l=>!l.id&&!l.name),z=Object.fromEntries(n.form.models.map(l=>[l.id.trim(),{name:l.name.trim()}])),D=new Set,L=n.form.headers.map(l=>{const p=l.key.trim(),f=l.value.trim();if(!p&&!f)return{};const P=p?D.has(p.toLowerCase())?n.t("provider.custom.error.duplicate"):(()=>{D.add(p.toLowerCase())})():n.t("provider.custom.error.required"),E=f?void 0:n.t("provider.custom.error.required");return{key:P,value:E}}),e=L.every(l=>!l.key&&!l.value),i=Object.fromEntries(n.form.headers.map(l=>({key:l.key.trim(),value:l.value.trim()})).filter(l=>!!l.key&&!!l.value).map(l=>[l.key,l.value])),m={providerID:t??_,name:u,baseURL:g};return!t&&!_&&!u&&!g&&M&&e?{err:m,models:I,headers:L,result:{providerID:h,name:s,key:v,config:{npm:he,name:s,...d?{env:[d]}:{},options:{baseURL:y,...Object.keys(i).length?{headers:i}:{}},models:z}}}:{err:m,models:I,headers:L}}let be=0;const oe=()=>`row-${be++}`,Q=()=>({row:oe(),id:"",name:"",err:{}}),W=()=>({row:oe(),key:"",value:"",err:{}});var ye=B('<div class="flex flex-col gap-6 px-2.5 pb-3 overflow-y-auto max-h-[60vh]"><div class="px-2.5 flex gap-4 items-center"><div class="text-16-medium text-text-strong"></div></div><form class="px-2.5 pb-6 flex flex-col gap-6"><p class="text-14-regular text-text-base"></p><div class="flex flex-col gap-4"></div><div class="flex flex-col gap-3"><label class="text-12-medium text-text-weak"></label></div><div class="flex flex-col gap-3"><label class="text-12-medium text-text-weak">'),X=B('<div class="flex gap-2 items-start"><div class=flex-1></div><div class=flex-1>');function xe(n){const h=Z(),s=le(),y=ne(),r=ee(),[d,v]=se({providerID:"",name:"",baseURL:"",apiKey:"",models:[Q()],headers:[W()],err:{}}),t=()=>{if(n.back==="close"){h.close();return}h.show(()=>o(ae,{}))},u=()=>{v("models",q(e=>{e.push(Q())}))},g=e=>{d.models.length<=1||v("models",q(i=>{i.splice(e,1)}))},x=()=>{v("headers",q(e=>{e.push(W())}))},_=e=>{d.headers.length<=1||v("headers",q(i=>{i.splice(e,1)}))},w=(e,i)=>{v(e,i),e!=="apiKey"&&v("err",e,void 0)},I=(e,i,m)=>{j(()=>{v("models",e,i,m),v("models",e,"err",i,void 0)})},M=(e,i,m)=>{j(()=>{v("headers",e,i,m),v("headers",e,"err",i,void 0)})},z=()=>{const e=fe({form:d,t:r.t,disabledProviders:s.data.config.disabled_providers??[],existingProviderIDs:new Set(s.data.provider.all.map(i=>i.id))});return j(()=>{v("err",e.err),e.models.forEach((i,m)=>v("models",m,"err",i)),e.headers.forEach((i,m)=>v("headers",m,"err",i))}),e.result},D=de(()=>({mutationFn:async e=>{const m=(s.data.config.disabled_providers??[]).filter($=>$!==e.providerID);return e.key&&await y.client.auth.set({providerID:e.providerID,auth:{type:"api",key:e.key}}),await s.updateConfig({provider:{[e.providerID]:e.config},disabled_providers:m}),e},onSuccess:e=>{h.close(),A({variant:"success",icon:"circle-check",title:r.t("provider.connect.toast.connected.title",{provider:e.name}),description:r.t("provider.connect.toast.connected.description",{provider:e.name})})},onError:e=>{const i=e instanceof Error?e.message:String(e);A({title:r.t("common.requestFailed"),description:i})}})),L=e=>{if(e.preventDefault(),D.isPending)return;const i=z();i&&D.mutate(i)};return o(re,{get title(){return o(F,{tabIndex:-1,icon:"arrow-left",variant:"ghost",onClick:t,get"aria-label"(){return r.t("common.goBack")}})},transition:!0,get children(){var e=ye(),i=e.firstChild,m=i.firstChild,$=i.nextSibling,l=$.firstChild,p=l.nextSibling,f=p.nextSibling,P=f.firstChild,E=f.nextSibling,ie=E.firstChild;return a(i,o(te,{id:"synthetic",class:"size-5 shrink-0 icon-strong-base"}),m),a(m,()=>r.t("provider.custom.title")),$.addEventListener("submit",L),a(l,()=>r.t("provider.custom.description.prefix"),null),a(l,o(me,{href:"https://opencode.ai/docs/providers/#custom-provider",tabIndex:-1,get children(){return r.t("provider.custom.description.link")}}),null),a(l,()=>r.t("provider.custom.description.suffix"),null),a(p,o(k,{autofocus:!0,get label(){return r.t("provider.custom.field.providerID.label")},get placeholder(){return r.t("provider.custom.field.providerID.placeholder")},get description(){return r.t("provider.custom.field.providerID.description")},get value(){return d.providerID},onChange:c=>w("providerID",c),get validationState(){return d.err.providerID?"invalid":void 0},get error(){return d.err.providerID}}),null),a(p,o(k,{get label(){return r.t("provider.custom.field.name.label")},get placeholder(){return r.t("provider.custom.field.name.placeholder")},get value(){return d.name},onChange:c=>w("name",c),get validationState(){return d.err.name?"invalid":void 0},get error(){return d.err.name}}),null),a(p,o(k,{get label(){return r.t("provider.custom.field.baseURL.label")},get placeholder(){return r.t("provider.custom.field.baseURL.placeholder")},get value(){return d.baseURL},onChange:c=>w("baseURL",c),get validationState(){return d.err.baseURL?"invalid":void 0},get error(){return d.err.baseURL}}),null),a(p,o(k,{get label(){return r.t("provider.custom.field.apiKey.label")},get placeholder(){return r.t("provider.custom.field.apiKey.placeholder")},get description(){return r.t("provider.custom.field.apiKey.description")},get value(){return d.apiKey},onChange:c=>w("apiKey",c)}),null),a(P,()=>r.t("provider.custom.models.label")),a(f,o(V,{get each(){return d.models},children:(c,C)=>(()=>{var b=X(),R=b.firstChild,G=R.nextSibling;return a(R,o(k,{get label(){return r.t("provider.custom.models.id.label")},hideLabel:!0,get placeholder(){return r.t("provider.custom.models.id.placeholder")},get value(){return c.id},onChange:S=>I(C(),"id",S),get validationState(){return c.err.id?"invalid":void 0},get error(){return c.err.id}})),a(G,o(k,{get label(){return r.t("provider.custom.models.name.label")},hideLabel:!0,get placeholder(){return r.t("provider.custom.models.name.placeholder")},get value(){return c.name},onChange:S=>I(C(),"name",S),get validationState(){return c.err.name?"invalid":void 0},get error(){return c.err.name}})),a(b,o(F,{type:"button",icon:"trash",variant:"ghost",class:"mt-1.5",onClick:()=>g(C()),get disabled(){return d.models.length<=1},get"aria-label"(){return r.t("provider.custom.models.remove")}}),null),J(()=>N(b,"data-row",c.row)),b})()}),null),a(f,o(T,{type:"button",size:"small",variant:"ghost",icon:"plus-small",onClick:u,class:"self-start",get children(){return r.t("provider.custom.models.add")}}),null),a(ie,()=>r.t("provider.custom.headers.label")),a(E,o(V,{get each(){return d.headers},children:(c,C)=>(()=>{var b=X(),R=b.firstChild,G=R.nextSibling;return a(R,o(k,{get label(){return r.t("provider.custom.headers.key.label")},hideLabel:!0,get placeholder(){return r.t("provider.custom.headers.key.placeholder")},get value(){return c.key},onChange:S=>M(C(),"key",S),get validationState(){return c.err.key?"invalid":void 0},get error(){return c.err.key}})),a(G,o(k,{get label(){return r.t("provider.custom.headers.value.label")},hideLabel:!0,get placeholder(){return r.t("provider.custom.headers.value.placeholder")},get value(){return c.value},onChange:S=>M(C(),"value",S),get validationState(){return c.err.value?"invalid":void 0},get error(){return c.err.value}})),a(b,o(F,{type:"button",icon:"trash",variant:"ghost",class:"mt-1.5",onClick:()=>_(C()),get disabled(){return d.headers.length<=1},get"aria-label"(){return r.t("provider.custom.headers.remove")}}),null),J(()=>N(b,"data-row",c.row)),b})()}),null),a(E,o(T,{type:"button",size:"small",variant:"ghost",icon:"plus-small",onClick:x,class:"self-start",get children(){return r.t("provider.custom.headers.add")}}),null),a($,o(T,{class:"w-auto self-start",type:"submit",size:"large",variant:"primary",get disabled(){return D.isPending},get children(){return ce(()=>!!D.isPending)()?r.t("common.saving"):r.t("common.submit")}}),null),e}})}var Y=B('<div class="text-14-regular text-text-weak">'),ke=B('<div class="px-1.25 w-full flex items-center gap-x-3"><span>');const O="_custom",ae=()=>{const n=Z(),h=ue(),s=ee(),y=()=>s.t("dialog.provider.group.popular"),r=()=>s.t("dialog.provider.group.other"),d=()=>s.t("settings.providers.tag.custom"),v=t=>{if(t==="anthropic")return s.t("dialog.provider.anthropic.note");if(t==="openai")return s.t("dialog.provider.openai.note");if(t.startsWith("github-copilot"))return s.t("dialog.provider.copilot.note");if(t==="opencode-go")return s.t("dialog.provider.opencodeGo.tagline")};return o(re,{get title(){return s.t("command.provider.connect")},transition:!0,get children(){return o(ve,{get search(){return{placeholder:s.t("dialog.provider.search.placeholder"),autofocus:!0}},get emptyMessage(){return s.t("dialog.provider.empty")},activeIcon:"plus-small",key:t=>t?.id,items:()=>(s.locale(),[{id:O,name:d()},...h.all()]),filterKeys:["id","name"],groupBy:t=>K.includes(t.id)?y():r(),sortBy:(t,u)=>t.id===O?-1:u.id===O?1:K.includes(t.id)&&K.includes(u.id)?K.indexOf(t.id)-K.indexOf(u.id):t.name.localeCompare(u.name),sortGroupsBy:(t,u)=>{const g=y();return t.category===g&&u.category!==g?-1:u.category===g&&t.category!==g?1:0},onSelect:t=>{if(t){if(t.id===O){n.show(()=>o(xe,{back:"providers"}));return}n.show(()=>o(pe,{get provider(){return t.id}}))}},children:t=>(()=>{var u=ke(),g=u.firstChild;return a(u,o(te,{"data-slot":"list-item-extra-icon",get id(){return t.id}}),g),a(g,()=>t.name),a(u,o(U,{get when(){return t.id==="opencode"},get children(){var x=Y();return a(x,()=>s.t("dialog.provider.opencode.tagline")),x}}),null),a(u,o(U,{get when(){return t.id===O},get children(){return o(H,{get children(){return s.t("settings.providers.tag.custom")}})}}),null),a(u,o(U,{get when(){return t.id==="opencode"},get children(){return o(H,{get children(){return s.t("dialog.provider.tag.recommended")}})}}),null),a(u,o(U,{get when(){return v(t.id)},children:x=>(()=>{var _=Y();return a(_,x),_})()}),null),a(u,o(U,{get when(){return t.id==="opencode-go"},get children(){return o(H,{get children(){return s.t("dialog.provider.tag.recommended")}})}}),null),u})()})}})},Se=Object.freeze(Object.defineProperty({__proto__:null,DialogSelectProvider:ae},Symbol.toStringTag,{value:"Module"}));export{ae as D,xe as a,Se as d};
|