@bytespell/shella 0.1.5 → 0.1.7
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/dist/bin/cli.js +921 -0
- package/dist/bin/cli.js.map +1 -0
- package/dist/index.js +849 -0
- package/dist/index.js.map +1 -0
- package/dist/public/assets/_baseUniq-D9TYleYv.js +1 -0
- package/dist/public/assets/apex-D8_7TLub.js +1 -0
- package/dist/public/assets/arc-Bqkc3LZm.js +1 -0
- package/dist/public/assets/architectureDiagram-VXUJARFQ-C7pQ9eBc.js +36 -0
- package/dist/public/assets/ayu-dark-CmMr59Fi.js +1 -0
- package/dist/public/assets/blade-D4QpJJKB.js +1 -0
- package/dist/public/assets/blockDiagram-VD42YOAC-C47kjU51.js +122 -0
- package/dist/public/assets/c3-VCDPK7BO.js +1 -0
- package/dist/public/assets/c4Diagram-YG6GDRKO-hYDGImzM.js +10 -0
- package/dist/public/assets/channel-CZbjQww4.js +1 -0
- package/dist/public/assets/chunk-4BX2VUAB-d6tzfYU_.js +1 -0
- package/dist/public/assets/chunk-55IACEB6-hAlvgHob.js +1 -0
- package/dist/public/assets/chunk-B4BG7PRW-DcHYkNpL.js +165 -0
- package/dist/public/assets/chunk-DI55MBZ5-DmYTN3pZ.js +220 -0
- package/dist/public/assets/chunk-FMBD7UC4-D7fqP24E.js +15 -0
- package/dist/public/assets/chunk-QN33PNHL-DHEaHAkH.js +1 -0
- package/dist/public/assets/chunk-QZHKN3VN-CUEecr31.js +1 -0
- package/dist/public/assets/chunk-TZMSLE5B-CQC5olzQ.js +1 -0
- package/dist/public/assets/classDiagram-2ON5EDUG-DdwUVrxi.js +1 -0
- package/dist/public/assets/classDiagram-v2-WZHVMYZB-DdwUVrxi.js +1 -0
- package/dist/public/assets/clone-OD5JE1Cw.js +1 -0
- package/dist/public/assets/code-block-IT6T5CEO-BNFAFcIE.js +2 -0
- package/dist/public/assets/cose-bilkent-S5V4N54A-XGPrPsXQ.js +1 -0
- package/dist/public/assets/dagre-6UL2VRFP-BcyWIYPE.js +4 -0
- package/dist/public/assets/diagram-PSM6KHXK-CBJyRzHu.js +24 -0
- package/dist/public/assets/diagram-QEK2KX5R-BBxj1vYL.js +43 -0
- package/dist/public/assets/diagram-S2PKOQOG-BTSvV1S3.js +24 -0
- package/dist/public/assets/erDiagram-Q2GNP2WA-Cmcj_23w.js +60 -0
- package/dist/public/assets/flowDiagram-NV44I4VS-CshqyJY8.js +162 -0
- package/dist/public/assets/fortran-fixed-form-CkoXwp7k.js +1 -0
- package/dist/public/assets/fortran-free-form-BxgE0vQu.js +1 -0
- package/dist/public/assets/ganttDiagram-JELNMOA3-o7FTrO1I.js +267 -0
- package/dist/public/assets/gitGraphDiagram-NY62KEGX-DMYNojPU.js +65 -0
- package/dist/public/assets/gn-n2N0HUVH.js +1 -0
- package/dist/public/assets/graph-C1exCUhk.js +1 -0
- package/dist/public/assets/index-Bk8vmlSI.css +1 -0
- package/dist/public/assets/index-DpDVi1Yh.js +1701 -0
- package/dist/public/assets/infoDiagram-WHAUD3N6-BtpyTGJr.js +2 -0
- package/dist/public/assets/journeyDiagram-XKPGCS4Q-Ca9OoHtc.js +139 -0
- package/dist/public/assets/julia-CxzCAyBv.js +1 -0
- package/dist/public/assets/kanban-definition-3W4ZIXB7-CsE7CD0y.js +89 -0
- package/dist/public/assets/kusto-DZf3V79B.js +1 -0
- package/dist/public/assets/latex-B4uzh10-.js +1 -0
- package/dist/public/assets/layout-BPf4wWku.js +1 -0
- package/dist/public/assets/lean-BZvkOJ9d.js +1 -0
- package/dist/public/assets/linear-Hmh70sq7.js +1 -0
- package/dist/public/assets/luau-C-HG3fhB.js +1 -0
- package/dist/public/assets/marko-DZsq8hO1.js +1 -0
- package/dist/public/assets/mermaid-mWjccvbQ.js +1 -0
- package/dist/public/assets/mermaid.core-E3JM4XVX.js +191 -0
- package/dist/public/assets/min-6ojrcLrh.js +1 -0
- package/dist/public/assets/mindmap-definition-VGOIOE7T-BjpBHYC_.js +68 -0
- package/dist/public/assets/mojo-B93PlW-d.js +1 -0
- package/dist/public/assets/moonbit-Ba13S78F.js +1 -0
- package/dist/public/assets/nix-CwoSXNpI.js +1 -0
- package/dist/public/assets/pieDiagram-ADFJNKIX-D6FIx46U.js +30 -0
- package/dist/public/assets/proto-C7zT0LnQ.js +1 -0
- package/dist/public/assets/quadrantDiagram-AYHSOK5B-Dc3CfRHY.js +7 -0
- package/dist/public/assets/r-Dspwwk_N.js +1 -0
- package/dist/public/assets/razor-C1TweQQi.js +1 -0
- package/dist/public/assets/requirementDiagram-UZGBJVZJ-tmNqVojO.js +64 -0
- package/dist/public/assets/sankeyDiagram-TZEHDZUN-C2bvNED8.js +10 -0
- package/dist/public/assets/sequenceDiagram-WL72ISMW-DoNmZswJ.js +145 -0
- package/dist/public/assets/stateDiagram-FKZM4ZOC-B8Lk-Kak.js +1 -0
- package/dist/public/assets/stateDiagram-v2-4FDKWEC3-Cvy-UNc6.js +1 -0
- package/dist/public/assets/svelte-zxCyuUbr.js +1 -0
- package/dist/public/assets/tex-CvyZ59Mk.js +1 -0
- package/dist/public/assets/timeline-definition-IT6M3QCI-UdDQrtnd.js +61 -0
- package/dist/public/assets/treemap-KMMF4GRG-Dkfqpf3u.js +128 -0
- package/dist/public/assets/vue-DN_0RTcg.js +1 -0
- package/dist/public/assets/vue-html-AaS7Mt5G.js +1 -0
- package/dist/public/assets/vue-vine-CQOfvN7w.js +1 -0
- package/dist/public/assets/xychartDiagram-PRI3JC2R-BiR50II_.js +7 -0
- package/dist/public/favicon.svg +4 -0
- package/dist/public/index.html +20 -0
- package/package.json +29 -60
- package/public/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- package/public/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/public/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/public/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/public/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/public/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- package/public/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/public/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- package/public/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/public/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/public/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/public/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- package/public/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/public/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- package/public/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/public/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- package/public/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/public/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/public/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- package/public/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/public/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/public/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/public/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/public/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- package/public/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- package/public/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/public/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/public/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/public/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- package/public/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/public/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/public/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/public/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- package/public/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/public/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- package/public/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/public/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- package/public/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/public/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/public/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/public/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/public/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- package/public/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/public/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- package/public/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/public/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/public/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/public/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- package/public/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/public/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- package/public/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/public/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/public/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/public/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/public/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/public/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- package/public/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/public/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- package/public/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/public/assets/_baseUniq-D9TYleYv.js +1 -0
- package/public/assets/abap-BdImnpbu.js +1 -0
- package/public/assets/actionscript-3-CfeIJUat.js +1 -0
- package/public/assets/ada-bCR0ucgS.js +1 -0
- package/public/assets/andromeeda-C-Jbm3Hp.js +1 -0
- package/public/assets/angular-html-CU67Zn6k.js +1 -0
- package/public/assets/angular-ts-BwZT4LLn.js +1 -0
- package/public/assets/apache-Pmp26Uib.js +1 -0
- package/public/assets/apex-D8_7TLub.js +1 -0
- package/public/assets/apl-dKokRX4l.js +1 -0
- package/public/assets/applescript-Co6uUVPk.js +1 -0
- package/public/assets/ara-BRHolxvo.js +1 -0
- package/public/assets/arc-Bqkc3LZm.js +1 -0
- package/public/assets/architectureDiagram-VXUJARFQ-C7pQ9eBc.js +36 -0
- package/public/assets/asciidoc-Dv7Oe6Be.js +1 -0
- package/public/assets/asm-D_Q5rh1f.js +1 -0
- package/public/assets/astro-CbQHKStN.js +1 -0
- package/public/assets/aurora-x-D-2ljcwZ.js +1 -0
- package/public/assets/awk-DMzUqQB5.js +1 -0
- package/public/assets/ayu-dark-CmMr59Fi.js +1 -0
- package/public/assets/ballerina-BFfxhgS-.js +1 -0
- package/public/assets/bat-BkioyH1T.js +1 -0
- package/public/assets/beancount-k_qm7-4y.js +1 -0
- package/public/assets/berry-uYugtg8r.js +1 -0
- package/public/assets/bibtex-CHM0blh-.js +1 -0
- package/public/assets/bicep-Bmn6On1c.js +1 -0
- package/public/assets/blade-D4QpJJKB.js +1 -0
- package/public/assets/blockDiagram-VD42YOAC-C47kjU51.js +122 -0
- package/public/assets/bsl-BO_Y6i37.js +1 -0
- package/public/assets/c-BIGW1oBm.js +1 -0
- package/public/assets/c3-VCDPK7BO.js +1 -0
- package/public/assets/c4Diagram-YG6GDRKO-hYDGImzM.js +10 -0
- package/public/assets/cadence-Bv_4Rxtq.js +1 -0
- package/public/assets/cairo-KRGpt6FW.js +1 -0
- package/public/assets/catppuccin-frappe-DFWUc33u.js +1 -0
- package/public/assets/catppuccin-latte-C9dUb6Cb.js +1 -0
- package/public/assets/catppuccin-macchiato-DQyhUUbL.js +1 -0
- package/public/assets/catppuccin-mocha-D87Tk5Gz.js +1 -0
- package/public/assets/channel-CZbjQww4.js +1 -0
- package/public/assets/chunk-4BX2VUAB-d6tzfYU_.js +1 -0
- package/public/assets/chunk-55IACEB6-hAlvgHob.js +1 -0
- package/public/assets/chunk-B4BG7PRW-DcHYkNpL.js +165 -0
- package/public/assets/chunk-DI55MBZ5-DmYTN3pZ.js +220 -0
- package/public/assets/chunk-FMBD7UC4-D7fqP24E.js +15 -0
- package/public/assets/chunk-QN33PNHL-DHEaHAkH.js +1 -0
- package/public/assets/chunk-QZHKN3VN-CUEecr31.js +1 -0
- package/public/assets/chunk-TZMSLE5B-CQC5olzQ.js +1 -0
- package/public/assets/clarity-D53aC0YG.js +1 -0
- package/public/assets/classDiagram-2ON5EDUG-DdwUVrxi.js +1 -0
- package/public/assets/classDiagram-v2-WZHVMYZB-DdwUVrxi.js +1 -0
- package/public/assets/clojure-P80f7IUj.js +1 -0
- package/public/assets/clone-OD5JE1Cw.js +1 -0
- package/public/assets/cmake-D1j8_8rp.js +1 -0
- package/public/assets/cobol-nwyudZeR.js +1 -0
- package/public/assets/code-block-IT6T5CEO-BNFAFcIE.js +2 -0
- package/public/assets/codeowners-Bp6g37R7.js +1 -0
- package/public/assets/codeql-DsOJ9woJ.js +1 -0
- package/public/assets/coffee-Ch7k5sss.js +1 -0
- package/public/assets/common-lisp-Cg-RD9OK.js +1 -0
- package/public/assets/coq-DkFqJrB1.js +1 -0
- package/public/assets/cose-bilkent-S5V4N54A-XGPrPsXQ.js +1 -0
- package/public/assets/cpp-CofmeUqb.js +1 -0
- package/public/assets/crystal-tKQVLTB8.js +1 -0
- package/public/assets/csharp-K5feNrxe.js +1 -0
- package/public/assets/css-DPfMkruS.js +1 -0
- package/public/assets/csv-fuZLfV_i.js +1 -0
- package/public/assets/cue-D82EKSYY.js +1 -0
- package/public/assets/cypher-COkxafJQ.js +1 -0
- package/public/assets/cytoscape.esm-5J0xJHOV.js +321 -0
- package/public/assets/d-85-TOEBH.js +1 -0
- package/public/assets/dagre-6UL2VRFP-BcyWIYPE.js +4 -0
- package/public/assets/dark-plus-C3mMm8J8.js +1 -0
- package/public/assets/dart-CF10PKvl.js +1 -0
- package/public/assets/dax-CEL-wOlO.js +1 -0
- package/public/assets/defaultLocale-C4B-KCzX.js +1 -0
- package/public/assets/desktop-BmXAJ9_W.js +1 -0
- package/public/assets/diagram-PSM6KHXK-CBJyRzHu.js +24 -0
- package/public/assets/diagram-QEK2KX5R-BBxj1vYL.js +43 -0
- package/public/assets/diagram-S2PKOQOG-BTSvV1S3.js +24 -0
- package/public/assets/diff-D97Zzqfu.js +1 -0
- package/public/assets/docker-BcOcwvcX.js +1 -0
- package/public/assets/dotenv-Da5cRb03.js +1 -0
- package/public/assets/dracula-BzJJZx-M.js +1 -0
- package/public/assets/dracula-soft-BXkSAIEj.js +1 -0
- package/public/assets/dream-maker-BtqSS_iP.js +1 -0
- package/public/assets/edge-BkV0erSs.js +1 -0
- package/public/assets/elixir-CDX3lj18.js +1 -0
- package/public/assets/elm-DbKCFpqz.js +1 -0
- package/public/assets/emacs-lisp-C9XAeP06.js +1 -0
- package/public/assets/erDiagram-Q2GNP2WA-Cmcj_23w.js +60 -0
- package/public/assets/erb-BOJIQeun.js +1 -0
- package/public/assets/erlang-DsQrWhSR.js +1 -0
- package/public/assets/everforest-dark-BgDCqdQA.js +1 -0
- package/public/assets/everforest-light-C8M2exoo.js +1 -0
- package/public/assets/fennel-BYunw83y.js +1 -0
- package/public/assets/fish-BvzEVeQv.js +1 -0
- package/public/assets/flowDiagram-NV44I4VS-CshqyJY8.js +162 -0
- package/public/assets/fluent-C4IJs8-o.js +1 -0
- package/public/assets/fortran-fixed-form-CkoXwp7k.js +1 -0
- package/public/assets/fortran-free-form-BxgE0vQu.js +1 -0
- package/public/assets/fsharp-CXgrBDvD.js +1 -0
- package/public/assets/ganttDiagram-JELNMOA3-o7FTrO1I.js +267 -0
- package/public/assets/gdresource-B7Tvp0Sc.js +1 -0
- package/public/assets/gdscript-DTMYz4Jt.js +1 -0
- package/public/assets/gdshader-DkwncUOv.js +1 -0
- package/public/assets/genie-D0YGMca9.js +1 -0
- package/public/assets/gherkin-DyxjwDmM.js +1 -0
- package/public/assets/git-commit-F4YmCXRG.js +1 -0
- package/public/assets/git-rebase-r7XF79zn.js +1 -0
- package/public/assets/gitGraphDiagram-NY62KEGX-DMYNojPU.js +65 -0
- package/public/assets/github-dark-DHJKELXO.js +1 -0
- package/public/assets/github-dark-default-Cuk6v7N8.js +1 -0
- package/public/assets/github-dark-dimmed-DH5Ifo-i.js +1 -0
- package/public/assets/github-dark-high-contrast-E3gJ1_iC.js +1 -0
- package/public/assets/github-light-DAi9KRSo.js +1 -0
- package/public/assets/github-light-default-D7oLnXFd.js +1 -0
- package/public/assets/github-light-high-contrast-BfjtVDDH.js +1 -0
- package/public/assets/gleam-BspZqrRM.js +1 -0
- package/public/assets/glimmer-js-Rg0-pVw9.js +1 -0
- package/public/assets/glimmer-ts-U6CK756n.js +1 -0
- package/public/assets/glsl-DplSGwfg.js +1 -0
- package/public/assets/gn-n2N0HUVH.js +1 -0
- package/public/assets/gnuplot-DdkO51Og.js +1 -0
- package/public/assets/go-Dn2_MT6a.js +1 -0
- package/public/assets/graph-C1exCUhk.js +1 -0
- package/public/assets/graphql-ChdNCCLP.js +1 -0
- package/public/assets/groovy-gcz8RCvz.js +1 -0
- package/public/assets/gruvbox-dark-hard-CFHQjOhq.js +1 -0
- package/public/assets/gruvbox-dark-medium-GsRaNv29.js +1 -0
- package/public/assets/gruvbox-dark-soft-CVdnzihN.js +1 -0
- package/public/assets/gruvbox-light-hard-CH1njM8p.js +1 -0
- package/public/assets/gruvbox-light-medium-DRw_LuNl.js +1 -0
- package/public/assets/gruvbox-light-soft-hJgmCMqR.js +1 -0
- package/public/assets/hack-CaT9iCJl.js +1 -0
- package/public/assets/haml-B8DHNrY2.js +1 -0
- package/public/assets/handlebars-BL8al0AC.js +1 -0
- package/public/assets/haskell-Df6bDoY_.js +1 -0
- package/public/assets/haxe-CzTSHFRz.js +1 -0
- package/public/assets/hcl-BWvSN4gD.js +1 -0
- package/public/assets/hjson-D5-asLiD.js +1 -0
- package/public/assets/hlsl-D3lLCCz7.js +1 -0
- package/public/assets/houston-DnULxvSX.js +1 -0
- package/public/assets/html-GMplVEZG.js +1 -0
- package/public/assets/html-derivative-BFtXZ54Q.js +1 -0
- package/public/assets/http-jrhK8wxY.js +1 -0
- package/public/assets/hurl-irOxFIW8.js +1 -0
- package/public/assets/hxml-Bvhsp5Yf.js +1 -0
- package/public/assets/hy-DFXneXwc.js +1 -0
- package/public/assets/imba-DGztddWO.js +1 -0
- package/public/assets/index-Bk8vmlSI.css +1 -0
- package/public/assets/index-DpDVi1Yh.js +1701 -0
- package/public/assets/infoDiagram-WHAUD3N6-BtpyTGJr.js +2 -0
- package/public/assets/ini-BEwlwnbL.js +1 -0
- package/public/assets/init-Gi6I4Gst.js +1 -0
- package/public/assets/inter-cyrillic-400-normal-HOLc17fK.woff +0 -0
- package/public/assets/inter-cyrillic-400-normal-obahsSVq.woff2 +0 -0
- package/public/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2 +0 -0
- package/public/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff +0 -0
- package/public/assets/inter-greek-400-normal-B4URO6DV.woff2 +0 -0
- package/public/assets/inter-greek-400-normal-q2sYcFCs.woff +0 -0
- package/public/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2 +0 -0
- package/public/assets/inter-greek-ext-400-normal-KugGGMne.woff +0 -0
- package/public/assets/inter-latin-400-normal-C38fXH4l.woff2 +0 -0
- package/public/assets/inter-latin-400-normal-CyCys3Eg.woff +0 -0
- package/public/assets/inter-latin-ext-400-normal-77YHD8bZ.woff +0 -0
- package/public/assets/inter-latin-ext-400-normal-C1nco2VV.woff2 +0 -0
- package/public/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff +0 -0
- package/public/assets/inter-vietnamese-400-normal-DMkecbls.woff2 +0 -0
- package/public/assets/java-CylS5w8V.js +1 -0
- package/public/assets/javascript-wDzz0qaB.js +1 -0
- package/public/assets/jinja-4LBKfQ-Z.js +1 -0
- package/public/assets/jison-wvAkD_A8.js +1 -0
- package/public/assets/journeyDiagram-XKPGCS4Q-Ca9OoHtc.js +139 -0
- package/public/assets/json-Cp-IABpG.js +1 -0
- package/public/assets/json5-C9tS-k6U.js +1 -0
- package/public/assets/jsonc-Des-eS-w.js +1 -0
- package/public/assets/jsonl-DcaNXYhu.js +1 -0
- package/public/assets/jsonnet-DFQXde-d.js +1 -0
- package/public/assets/jssm-C2t-YnRu.js +1 -0
- package/public/assets/jsx-g9-lgVsj.js +1 -0
- package/public/assets/julia-CxzCAyBv.js +1 -0
- package/public/assets/kanagawa-dragon-CkXjmgJE.js +1 -0
- package/public/assets/kanagawa-lotus-CfQXZHmo.js +1 -0
- package/public/assets/kanagawa-wave-DWedfzmr.js +1 -0
- package/public/assets/kanban-definition-3W4ZIXB7-CsE7CD0y.js +89 -0
- package/public/assets/katex-DvXFAOB1.css +1 -0
- package/public/assets/kdl-DV7GczEv.js +1 -0
- package/public/assets/kotlin-BdnUsdx6.js +1 -0
- package/public/assets/kusto-DZf3V79B.js +1 -0
- package/public/assets/laserwave-DUszq2jm.js +1 -0
- package/public/assets/latex-B4uzh10-.js +1 -0
- package/public/assets/layout-BPf4wWku.js +1 -0
- package/public/assets/lean-BZvkOJ9d.js +1 -0
- package/public/assets/less-B1dDrJ26.js +1 -0
- package/public/assets/light-plus-B7mTdjB0.js +1 -0
- package/public/assets/linear-Hmh70sq7.js +1 -0
- package/public/assets/liquid-DYVedYrR.js +1 -0
- package/public/assets/llvm-BtvRca6l.js +1 -0
- package/public/assets/log-2UxHyX5q.js +1 -0
- package/public/assets/logo-BtOb2qkB.js +1 -0
- package/public/assets/lua-BbnMAYS6.js +1 -0
- package/public/assets/luau-C-HG3fhB.js +1 -0
- package/public/assets/make-CHLpvVh8.js +1 -0
- package/public/assets/markdown-Cvjx9yec.js +1 -0
- package/public/assets/marko-DZsq8hO1.js +1 -0
- package/public/assets/material-theme-D5KoaKCx.js +1 -0
- package/public/assets/material-theme-darker-BfHTSMKl.js +1 -0
- package/public/assets/material-theme-lighter-B0m2ddpp.js +1 -0
- package/public/assets/material-theme-ocean-CyktbL80.js +1 -0
- package/public/assets/material-theme-palenight-Csfq5Kiy.js +1 -0
- package/public/assets/matlab-D7o27uSR.js +1 -0
- package/public/assets/mdc-DUICxH0z.js +1 -0
- package/public/assets/mdx-Cmh6b_Ma.js +1 -0
- package/public/assets/mermaid-mWjccvbQ.js +1 -0
- package/public/assets/mermaid.core-E3JM4XVX.js +191 -0
- package/public/assets/min-6ojrcLrh.js +1 -0
- package/public/assets/min-dark-CafNBF8u.js +1 -0
- package/public/assets/min-light-CTRr51gU.js +1 -0
- package/public/assets/mindmap-definition-VGOIOE7T-BjpBHYC_.js +68 -0
- package/public/assets/mipsasm-CKIfxQSi.js +1 -0
- package/public/assets/mojo-B93PlW-d.js +1 -0
- package/public/assets/monokai-D4h5O-jR.js +1 -0
- package/public/assets/moonbit-Ba13S78F.js +1 -0
- package/public/assets/move-Bu9oaDYs.js +1 -0
- package/public/assets/narrat-DRg8JJMk.js +1 -0
- package/public/assets/nextflow-BrzmwbiE.js +1 -0
- package/public/assets/nginx-DknmC5AR.js +1 -0
- package/public/assets/night-owl-C39BiMTA.js +1 -0
- package/public/assets/nim-CVrawwO9.js +1 -0
- package/public/assets/nix-CwoSXNpI.js +1 -0
- package/public/assets/nord-Ddv68eIx.js +1 -0
- package/public/assets/nushell-C-sUppwS.js +1 -0
- package/public/assets/objective-c-DXmwc3jG.js +1 -0
- package/public/assets/objective-cpp-CLxacb5B.js +1 -0
- package/public/assets/ocaml-C0hk2d4L.js +1 -0
- package/public/assets/one-dark-pro-DVMEJ2y_.js +1 -0
- package/public/assets/one-light-PoHY5YXO.js +1 -0
- package/public/assets/openscad-C4EeE6gA.js +1 -0
- package/public/assets/ordinal-Cboi1Yqb.js +1 -0
- package/public/assets/pascal-D93ZcfNL.js +1 -0
- package/public/assets/perl-C0TMdlhV.js +1 -0
- package/public/assets/php-CDn_0X-4.js +1 -0
- package/public/assets/pieDiagram-ADFJNKIX-D6FIx46U.js +30 -0
- package/public/assets/pierre-dark-BXuwtOqb.js +1 -0
- package/public/assets/pierre-light-dckrK0oj.js +1 -0
- package/public/assets/pkl-u5AG7uiY.js +1 -0
- package/public/assets/plastic-3e1v2bzS.js +1 -0
- package/public/assets/plsql-ChMvpjG-.js +1 -0
- package/public/assets/po-BTJTHyun.js +1 -0
- package/public/assets/poimandres-CS3Unz2-.js +1 -0
- package/public/assets/polar-C0HS_06l.js +1 -0
- package/public/assets/postcss-CXtECtnM.js +1 -0
- package/public/assets/powerquery-CEu0bR-o.js +1 -0
- package/public/assets/powershell-Dpen1YoG.js +1 -0
- package/public/assets/prisma-Dd19v3D-.js +1 -0
- package/public/assets/prolog-CbFg5uaA.js +1 -0
- package/public/assets/proto-C7zT0LnQ.js +1 -0
- package/public/assets/pug-CGlum2m_.js +1 -0
- package/public/assets/puppet-BMWR74SV.js +1 -0
- package/public/assets/purescript-CklMAg4u.js +1 -0
- package/public/assets/python-B6aJPvgy.js +1 -0
- package/public/assets/qml-3beO22l8.js +1 -0
- package/public/assets/qmldir-C8lEn-DE.js +1 -0
- package/public/assets/qss-IeuSbFQv.js +1 -0
- package/public/assets/quadrantDiagram-AYHSOK5B-Dc3CfRHY.js +7 -0
- package/public/assets/r-Dspwwk_N.js +1 -0
- package/public/assets/racket-BqYA7rlc.js +1 -0
- package/public/assets/raku-DXvB9xmW.js +1 -0
- package/public/assets/razor-C1TweQQi.js +1 -0
- package/public/assets/red-bN70gL4F.js +1 -0
- package/public/assets/reg-C-SQnVFl.js +1 -0
- package/public/assets/regexp-CDVJQ6XC.js +1 -0
- package/public/assets/rel-C3B-1QV4.js +1 -0
- package/public/assets/requirementDiagram-UZGBJVZJ-tmNqVojO.js +64 -0
- package/public/assets/riscv-BM1_JUlF.js +1 -0
- package/public/assets/rose-pine-dawn-DHQR4-dF.js +1 -0
- package/public/assets/rose-pine-moon-D4_iv3hh.js +1 -0
- package/public/assets/rose-pine-qdsjHGoJ.js +1 -0
- package/public/assets/rosmsg-BJDFO7_C.js +1 -0
- package/public/assets/rst-B0xPkSld.js +1 -0
- package/public/assets/ruby-BvKwtOVI.js +1 -0
- package/public/assets/rust-B1yitclQ.js +1 -0
- package/public/assets/sankeyDiagram-TZEHDZUN-C2bvNED8.js +10 -0
- package/public/assets/sas-cz2c8ADy.js +1 -0
- package/public/assets/sass-Cj5Yp3dK.js +1 -0
- package/public/assets/scala-C151Ov-r.js +1 -0
- package/public/assets/scheme-C98Dy4si.js +1 -0
- package/public/assets/scss-OYdSNvt2.js +1 -0
- package/public/assets/sdbl-DVxCFoDh.js +1 -0
- package/public/assets/sequenceDiagram-WL72ISMW-DoNmZswJ.js +145 -0
- package/public/assets/shaderlab-Dg9Lc6iA.js +1 -0
- package/public/assets/shellscript-Yzrsuije.js +1 -0
- package/public/assets/shellsession-BADoaaVG.js +1 -0
- package/public/assets/slack-dark-BthQWCQV.js +1 -0
- package/public/assets/slack-ochin-DqwNpetd.js +1 -0
- package/public/assets/smalltalk-BERRCDM3.js +1 -0
- package/public/assets/snazzy-light-Bw305WKR.js +1 -0
- package/public/assets/solarized-dark-DXbdFlpD.js +1 -0
- package/public/assets/solarized-light-L9t79GZl.js +1 -0
- package/public/assets/solidity-rGO070M0.js +1 -0
- package/public/assets/soy-Brmx7dQM.js +1 -0
- package/public/assets/sparql-rVzFXLq3.js +1 -0
- package/public/assets/splunk-BtCnVYZw.js +1 -0
- package/public/assets/sql-BLtJtn59.js +1 -0
- package/public/assets/ssh-config-_ykCGR6B.js +1 -0
- package/public/assets/stata-BH5u7GGu.js +1 -0
- package/public/assets/stateDiagram-FKZM4ZOC-B8Lk-Kak.js +1 -0
- package/public/assets/stateDiagram-v2-4FDKWEC3-Cvy-UNc6.js +1 -0
- package/public/assets/stylus-BEDo0Tqx.js +1 -0
- package/public/assets/svelte-zxCyuUbr.js +1 -0
- package/public/assets/swift-Dg5xB15N.js +1 -0
- package/public/assets/synthwave-84-CbfX1IO0.js +1 -0
- package/public/assets/system-verilog-CnnmHF94.js +1 -0
- package/public/assets/systemd-4A_iFExJ.js +1 -0
- package/public/assets/talonscript-CkByrt1z.js +1 -0
- package/public/assets/tasl-QIJgUcNo.js +1 -0
- package/public/assets/tcl-dwOrl1Do.js +1 -0
- package/public/assets/templ-W15q3VgB.js +1 -0
- package/public/assets/terraform-BETggiCN.js +1 -0
- package/public/assets/tex-CvyZ59Mk.js +1 -0
- package/public/assets/timeline-definition-IT6M3QCI-UdDQrtnd.js +61 -0
- package/public/assets/tokyo-night-hegEt444.js +1 -0
- package/public/assets/toml-vGWfd6FD.js +1 -0
- package/public/assets/treemap-KMMF4GRG-Dkfqpf3u.js +128 -0
- package/public/assets/ts-tags-zn1MmPIZ.js +1 -0
- package/public/assets/tsv-B_m7g4N7.js +1 -0
- package/public/assets/tsx-COt5Ahok.js +1 -0
- package/public/assets/turtle-BsS91CYL.js +1 -0
- package/public/assets/twig-CO9l9SDP.js +1 -0
- package/public/assets/typescript-BPQ3VLAy.js +1 -0
- package/public/assets/typespec-BGHnOYBU.js +1 -0
- package/public/assets/typst-DHCkPAjA.js +1 -0
- package/public/assets/v-BcVCzyr7.js +1 -0
- package/public/assets/vala-CsfeWuGM.js +1 -0
- package/public/assets/vb-D17OF-Vu.js +1 -0
- package/public/assets/verilog-BQ8w6xss.js +1 -0
- package/public/assets/vesper-DU1UobuO.js +1 -0
- package/public/assets/vhdl-CeAyd5Ju.js +1 -0
- package/public/assets/viml-CJc9bBzg.js +1 -0
- package/public/assets/vitesse-black-Bkuqu6BP.js +1 -0
- package/public/assets/vitesse-dark-D0r3Knsf.js +1 -0
- package/public/assets/vitesse-light-CVO1_9PV.js +1 -0
- package/public/assets/vue-DN_0RTcg.js +1 -0
- package/public/assets/vue-html-AaS7Mt5G.js +1 -0
- package/public/assets/vue-vine-CQOfvN7w.js +1 -0
- package/public/assets/vyper-CDx5xZoG.js +1 -0
- package/public/assets/wasm-CG6Dc4jp.js +1 -0
- package/public/assets/wasm-MzD3tlZU.js +1 -0
- package/public/assets/wenyan-BV7otONQ.js +1 -0
- package/public/assets/wgsl-Dx-B1_4e.js +1 -0
- package/public/assets/wikitext-BhOHFoWU.js +1 -0
- package/public/assets/wit-5i3qLPDT.js +1 -0
- package/public/assets/wolfram-lXgVvXCa.js +1 -0
- package/public/assets/xml-sdJ4AIDG.js +1 -0
- package/public/assets/xsl-CtQFsRM5.js +1 -0
- package/public/assets/xychartDiagram-PRI3JC2R-BiR50II_.js +7 -0
- package/public/assets/yaml-Buea-lGh.js +1 -0
- package/public/assets/zenscript-DVFEvuxE.js +1 -0
- package/public/assets/zig-VOosw3JB.js +1 -0
- package/public/favicon.svg +4 -0
- package/public/index.html +20 -0
- package/README.md +0 -150
- package/bin/cli.js +0 -370
- package/dev/cli.tsx +0 -38
- package/dist/config/openai-codex-models.json +0 -205
- package/dist/server/index.d.ts +0 -6
- package/dist/server/index.js +0 -180
- package/dist/server/lib/opencode-client.d.ts +0 -14
- package/dist/server/lib/opencode-client.js +0 -17
- package/dist/server/lib/opencode-config.d.ts +0 -14
- package/dist/server/lib/opencode-config.js +0 -25
- package/dist/server/middleware/cors.d.ts +0 -6
- package/dist/server/middleware/cors.js +0 -8
- package/dist/server/routes/config.d.ts +0 -12
- package/dist/server/routes/config.js +0 -207
- package/dist/server/routes/directory.d.ts +0 -8
- package/dist/server/routes/directory.js +0 -84
- package/dist/server/routes/init.d.ts +0 -16
- package/dist/server/routes/init.js +0 -39
- package/dist/server/routes/local-llm.d.ts +0 -8
- package/dist/server/routes/local-llm.js +0 -255
- package/dist/server/routes/logs.d.ts +0 -2
- package/dist/server/routes/logs.js +0 -53
- package/dist/server/routes/model-state.d.ts +0 -2
- package/dist/server/routes/model-state.js +0 -81
- package/dist/server/routes/prompt.d.ts +0 -16
- package/dist/server/routes/prompt.js +0 -173
- package/dist/server/routes/proxy.d.ts +0 -2
- package/dist/server/routes/proxy.js +0 -122
- package/dist/server/routes/session.d.ts +0 -8
- package/dist/server/routes/session.js +0 -63
- package/dist/server/routes/status.d.ts +0 -9
- package/dist/server/routes/status.js +0 -54
- package/dist/server/routes/usage.d.ts +0 -12
- package/dist/server/routes/usage.js +0 -60
- package/dist/server/routes/windows.d.ts +0 -2
- package/dist/server/routes/windows.js +0 -125
- package/dist/server/schema.d.ts +0 -235
- package/dist/server/schema.js +0 -25
- package/dist/server/services/database.d.ts +0 -14
- package/dist/server/services/database.js +0 -123
- package/dist/server/services/sse-manager.d.ts +0 -16
- package/dist/server/services/sse-manager.js +0 -44
- package/dist/web/assets/_baseUniq-BxVG561Z.js +0 -1
- package/dist/web/assets/amazon-bedrock-B_u4Gv8g.svg +0 -3
- package/dist/web/assets/apex-DDbsPZ6N.js +0 -1
- package/dist/web/assets/arc-B9TFF79T.js +0 -1
- package/dist/web/assets/architectureDiagram-VXUJARFQ-BMRLMpf8.js +0 -36
- package/dist/web/assets/ayu-dark-Cv9koXgw.js +0 -1
- package/dist/web/assets/blade-DVc8C-J4.js +0 -1
- package/dist/web/assets/blockDiagram-VD42YOAC-DBQKFxeQ.js +0 -122
- package/dist/web/assets/c4Diagram-YG6GDRKO-TiYEZrdu.js +0 -10
- package/dist/web/assets/channel-aOIIaiSs.js +0 -1
- package/dist/web/assets/chunk-4BX2VUAB-CWCp0N17.js +0 -1
- package/dist/web/assets/chunk-55IACEB6-CeVCFKqv.js +0 -1
- package/dist/web/assets/chunk-B4BG7PRW-B-AoaHJt.js +0 -165
- package/dist/web/assets/chunk-DI55MBZ5-CCGkXnX-.js +0 -220
- package/dist/web/assets/chunk-FMBD7UC4-Bcupjeb_.js +0 -15
- package/dist/web/assets/chunk-QN33PNHL-DlyUQaTO.js +0 -1
- package/dist/web/assets/chunk-QZHKN3VN-THN-at_3.js +0 -1
- package/dist/web/assets/chunk-TZMSLE5B-CtErOFJM.js +0 -1
- package/dist/web/assets/classDiagram-2ON5EDUG-BFLMv18M.js +0 -1
- package/dist/web/assets/classDiagram-v2-WZHVMYZB-BFLMv18M.js +0 -1
- package/dist/web/assets/clone-BR_FHSwu.js +0 -1
- package/dist/web/assets/code-block-QI2IAROF-CPI-88R6.js +0 -2
- package/dist/web/assets/cose-bilkent-S5V4N54A-YrHmsLe4.js +0 -1
- package/dist/web/assets/dagre-6UL2VRFP-Dcvw3qhj.js +0 -4
- package/dist/web/assets/deepinfra-Dq_BB8I0.svg +0 -4
- package/dist/web/assets/diagram-PSM6KHXK-B135EOe6.js +0 -24
- package/dist/web/assets/diagram-QEK2KX5R-w3KdB_-u.js +0 -43
- package/dist/web/assets/diagram-S2PKOQOG-DYssvOTP.js +0 -24
- package/dist/web/assets/erDiagram-Q2GNP2WA-DpnuE7B_.js +0 -60
- package/dist/web/assets/flowDiagram-NV44I4VS-BhcJ-8Yu.js +0 -162
- package/dist/web/assets/fortran-fixed-form-BZjJHVRy.js +0 -1
- package/dist/web/assets/fortran-free-form-D22FLkUw.js +0 -1
- package/dist/web/assets/ganttDiagram-JELNMOA3-ButVkRCz.js +0 -267
- package/dist/web/assets/gitGraphDiagram-NY62KEGX-ZLz8eoSo.js +0 -65
- package/dist/web/assets/google-vertex-BCu5nGvk.svg +0 -10
- package/dist/web/assets/graph-CKmCFGqF.js +0 -1
- package/dist/web/assets/huggingface-DlwzPJmc.svg +0 -3
- package/dist/web/assets/index-BHJDUcNL.js +0 -1719
- package/dist/web/assets/index-CcAJUkQw.css +0 -1
- package/dist/web/assets/index-DEiKajXR.js +0 -1
- package/dist/web/assets/infoDiagram-WHAUD3N6-C_h94brE.js +0 -2
- package/dist/web/assets/journeyDiagram-XKPGCS4Q-u0bPRxxb.js +0 -139
- package/dist/web/assets/julia-C8NyazO9.js +0 -1
- package/dist/web/assets/kanban-definition-3W4ZIXB7-DkM-KD6Y.js +0 -89
- package/dist/web/assets/kimi-for-coding-eVEHug_h.svg +0 -3
- package/dist/web/assets/kusto-BvAqAH-y.js +0 -1
- package/dist/web/assets/latex-BdAV_C_H.js +0 -1
- package/dist/web/assets/layout-DGSU3MQw.js +0 -1
- package/dist/web/assets/lean-Bc6EcWN3.js +0 -1
- package/dist/web/assets/linear-Dck9QCb9.js +0 -1
- package/dist/web/assets/luau-CXu1NL6O.js +0 -1
- package/dist/web/assets/lucidquery-DRFbix82.svg +0 -3
- package/dist/web/assets/marko-CPi9NSCl.js +0 -1
- package/dist/web/assets/mermaid-DKYwYmdq.js +0 -1
- package/dist/web/assets/mermaid.core-DfB-jqaz.js +0 -191
- package/dist/web/assets/min-CqEcl9J0.js +0 -1
- package/dist/web/assets/mindmap-definition-VGOIOE7T-D1KrSALz.js +0 -68
- package/dist/web/assets/mojo-1DNp92w6.js +0 -1
- package/dist/web/assets/moonshotai-BeF2wtIV.svg +0 -3
- package/dist/web/assets/nix-c8nO5XWb.js +0 -1
- package/dist/web/assets/ollama-cloud-BIdeu-re.svg +0 -7
- package/dist/web/assets/pieDiagram-ADFJNKIX-CZ-507Bd.js +0 -30
- package/dist/web/assets/proto-DyJlTyXw.js +0 -1
- package/dist/web/assets/quadrantDiagram-AYHSOK5B-Jw0og6Ix.js +0 -7
- package/dist/web/assets/r-DiinP2Uv.js +0 -1
- package/dist/web/assets/razor-CE9lU5zL.js +0 -1
- package/dist/web/assets/requirementDiagram-UZGBJVZJ-5JWD7TEH.js +0 -64
- package/dist/web/assets/sankeyDiagram-TZEHDZUN-DzlxPj37.js +0 -10
- package/dist/web/assets/sequenceDiagram-WL72ISMW-Cui1ykiA.js +0 -145
- package/dist/web/assets/stateDiagram-FKZM4ZOC-CCdGE_zt.js +0 -1
- package/dist/web/assets/stateDiagram-v2-4FDKWEC3-CsLg9bzy.js +0 -1
- package/dist/web/assets/svelte-3Dk4HxPD.js +0 -1
- package/dist/web/assets/tex-CxkMU7Pf.js +0 -1
- package/dist/web/assets/timeline-definition-IT6M3QCI-CP2T8mHI.js +0 -61
- package/dist/web/assets/treemap-KMMF4GRG-DGBVlHVf.js +0 -128
- package/dist/web/assets/venice-CeIHfrIB.svg +0 -4
- package/dist/web/assets/vue-DnHKYNfI.js +0 -1
- package/dist/web/assets/vue-html-CChd_i61.js +0 -1
- package/dist/web/assets/vue-vine-8moa0y9V.js +0 -1
- package/dist/web/assets/welcome-screen-test-DnIwI3hf.js +0 -1
- package/dist/web/assets/xychartDiagram-PRI3JC2R-DDlMipkA.js +0 -7
- package/dist/web/favicon.svg +0 -4
- package/dist/web/index.html +0 -20
- /package/dist/{web → public}/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- /package/dist/{web → public}/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- /package/dist/{web → public}/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- /package/dist/{web → public}/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- /package/dist/{web → public}/assets/abap-BdImnpbu.js +0 -0
- /package/dist/{web → public}/assets/actionscript-3-CfeIJUat.js +0 -0
- /package/dist/{web → public}/assets/ada-bCR0ucgS.js +0 -0
- /package/dist/{web → public}/assets/andromeeda-C-Jbm3Hp.js +0 -0
- /package/dist/{web → public}/assets/angular-html-CU67Zn6k.js +0 -0
- /package/dist/{web → public}/assets/angular-ts-BwZT4LLn.js +0 -0
- /package/dist/{web → public}/assets/apache-Pmp26Uib.js +0 -0
- /package/dist/{web → public}/assets/apl-dKokRX4l.js +0 -0
- /package/dist/{web → public}/assets/applescript-Co6uUVPk.js +0 -0
- /package/dist/{web → public}/assets/ara-BRHolxvo.js +0 -0
- /package/dist/{web → public}/assets/asciidoc-Dv7Oe6Be.js +0 -0
- /package/dist/{web → public}/assets/asm-D_Q5rh1f.js +0 -0
- /package/dist/{web → public}/assets/astro-CbQHKStN.js +0 -0
- /package/dist/{web → public}/assets/aurora-x-D-2ljcwZ.js +0 -0
- /package/dist/{web → public}/assets/awk-DMzUqQB5.js +0 -0
- /package/dist/{web → public}/assets/ballerina-BFfxhgS-.js +0 -0
- /package/dist/{web → public}/assets/bat-BkioyH1T.js +0 -0
- /package/dist/{web → public}/assets/beancount-k_qm7-4y.js +0 -0
- /package/dist/{web → public}/assets/berry-uYugtg8r.js +0 -0
- /package/dist/{web → public}/assets/bibtex-CHM0blh-.js +0 -0
- /package/dist/{web → public}/assets/bicep-Bmn6On1c.js +0 -0
- /package/dist/{web → public}/assets/bsl-BO_Y6i37.js +0 -0
- /package/dist/{web → public}/assets/c-BIGW1oBm.js +0 -0
- /package/dist/{web → public}/assets/cadence-Bv_4Rxtq.js +0 -0
- /package/dist/{web → public}/assets/cairo-KRGpt6FW.js +0 -0
- /package/dist/{web → public}/assets/catppuccin-frappe-DFWUc33u.js +0 -0
- /package/dist/{web → public}/assets/catppuccin-latte-C9dUb6Cb.js +0 -0
- /package/dist/{web → public}/assets/catppuccin-macchiato-DQyhUUbL.js +0 -0
- /package/dist/{web → public}/assets/catppuccin-mocha-D87Tk5Gz.js +0 -0
- /package/dist/{web → public}/assets/clarity-D53aC0YG.js +0 -0
- /package/dist/{web → public}/assets/clojure-P80f7IUj.js +0 -0
- /package/dist/{web → public}/assets/cmake-D1j8_8rp.js +0 -0
- /package/dist/{web → public}/assets/cobol-nwyudZeR.js +0 -0
- /package/dist/{web → public}/assets/codeowners-Bp6g37R7.js +0 -0
- /package/dist/{web → public}/assets/codeql-DsOJ9woJ.js +0 -0
- /package/dist/{web → public}/assets/coffee-Ch7k5sss.js +0 -0
- /package/dist/{web → public}/assets/common-lisp-Cg-RD9OK.js +0 -0
- /package/dist/{web → public}/assets/coq-DkFqJrB1.js +0 -0
- /package/dist/{web → public}/assets/cpp-CofmeUqb.js +0 -0
- /package/dist/{web → public}/assets/crystal-tKQVLTB8.js +0 -0
- /package/dist/{web → public}/assets/csharp-K5feNrxe.js +0 -0
- /package/dist/{web → public}/assets/css-DPfMkruS.js +0 -0
- /package/dist/{web → public}/assets/csv-fuZLfV_i.js +0 -0
- /package/dist/{web → public}/assets/cue-D82EKSYY.js +0 -0
- /package/dist/{web → public}/assets/cypher-COkxafJQ.js +0 -0
- /package/dist/{web → public}/assets/cytoscape.esm-5J0xJHOV.js +0 -0
- /package/dist/{web → public}/assets/d-85-TOEBH.js +0 -0
- /package/dist/{web → public}/assets/dark-plus-C3mMm8J8.js +0 -0
- /package/dist/{web → public}/assets/dart-CF10PKvl.js +0 -0
- /package/dist/{web → public}/assets/dax-CEL-wOlO.js +0 -0
- /package/dist/{web → public}/assets/defaultLocale-C4B-KCzX.js +0 -0
- /package/dist/{web → public}/assets/desktop-BmXAJ9_W.js +0 -0
- /package/dist/{web → public}/assets/diff-D97Zzqfu.js +0 -0
- /package/dist/{web → public}/assets/docker-BcOcwvcX.js +0 -0
- /package/dist/{web → public}/assets/dotenv-Da5cRb03.js +0 -0
- /package/dist/{web → public}/assets/dracula-BzJJZx-M.js +0 -0
- /package/dist/{web → public}/assets/dracula-soft-BXkSAIEj.js +0 -0
- /package/dist/{web → public}/assets/dream-maker-BtqSS_iP.js +0 -0
- /package/dist/{web → public}/assets/edge-BkV0erSs.js +0 -0
- /package/dist/{web → public}/assets/elixir-CDX3lj18.js +0 -0
- /package/dist/{web → public}/assets/elm-DbKCFpqz.js +0 -0
- /package/dist/{web → public}/assets/emacs-lisp-C9XAeP06.js +0 -0
- /package/dist/{web → public}/assets/erb-BOJIQeun.js +0 -0
- /package/dist/{web → public}/assets/erlang-DsQrWhSR.js +0 -0
- /package/dist/{web → public}/assets/everforest-dark-BgDCqdQA.js +0 -0
- /package/dist/{web → public}/assets/everforest-light-C8M2exoo.js +0 -0
- /package/dist/{web → public}/assets/fennel-BYunw83y.js +0 -0
- /package/dist/{web → public}/assets/fish-BvzEVeQv.js +0 -0
- /package/dist/{web → public}/assets/fluent-C4IJs8-o.js +0 -0
- /package/dist/{web → public}/assets/fsharp-CXgrBDvD.js +0 -0
- /package/dist/{web → public}/assets/gdresource-B7Tvp0Sc.js +0 -0
- /package/dist/{web → public}/assets/gdscript-DTMYz4Jt.js +0 -0
- /package/dist/{web → public}/assets/gdshader-DkwncUOv.js +0 -0
- /package/dist/{web → public}/assets/genie-D0YGMca9.js +0 -0
- /package/dist/{web → public}/assets/gherkin-DyxjwDmM.js +0 -0
- /package/dist/{web → public}/assets/git-commit-F4YmCXRG.js +0 -0
- /package/dist/{web → public}/assets/git-rebase-r7XF79zn.js +0 -0
- /package/dist/{web → public}/assets/github-dark-DHJKELXO.js +0 -0
- /package/dist/{web → public}/assets/github-dark-default-Cuk6v7N8.js +0 -0
- /package/dist/{web → public}/assets/github-dark-dimmed-DH5Ifo-i.js +0 -0
- /package/dist/{web → public}/assets/github-dark-high-contrast-E3gJ1_iC.js +0 -0
- /package/dist/{web → public}/assets/github-light-DAi9KRSo.js +0 -0
- /package/dist/{web → public}/assets/github-light-default-D7oLnXFd.js +0 -0
- /package/dist/{web → public}/assets/github-light-high-contrast-BfjtVDDH.js +0 -0
- /package/dist/{web → public}/assets/gleam-BspZqrRM.js +0 -0
- /package/dist/{web → public}/assets/glimmer-js-Rg0-pVw9.js +0 -0
- /package/dist/{web → public}/assets/glimmer-ts-U6CK756n.js +0 -0
- /package/dist/{web → public}/assets/glsl-DplSGwfg.js +0 -0
- /package/dist/{web → public}/assets/gnuplot-DdkO51Og.js +0 -0
- /package/dist/{web → public}/assets/go-Dn2_MT6a.js +0 -0
- /package/dist/{web → public}/assets/graphql-ChdNCCLP.js +0 -0
- /package/dist/{web → public}/assets/groovy-gcz8RCvz.js +0 -0
- /package/dist/{web → public}/assets/gruvbox-dark-hard-CFHQjOhq.js +0 -0
- /package/dist/{web → public}/assets/gruvbox-dark-medium-GsRaNv29.js +0 -0
- /package/dist/{web → public}/assets/gruvbox-dark-soft-CVdnzihN.js +0 -0
- /package/dist/{web → public}/assets/gruvbox-light-hard-CH1njM8p.js +0 -0
- /package/dist/{web → public}/assets/gruvbox-light-medium-DRw_LuNl.js +0 -0
- /package/dist/{web → public}/assets/gruvbox-light-soft-hJgmCMqR.js +0 -0
- /package/dist/{web → public}/assets/hack-CaT9iCJl.js +0 -0
- /package/dist/{web → public}/assets/haml-B8DHNrY2.js +0 -0
- /package/dist/{web → public}/assets/handlebars-BL8al0AC.js +0 -0
- /package/dist/{web → public}/assets/haskell-Df6bDoY_.js +0 -0
- /package/dist/{web → public}/assets/haxe-CzTSHFRz.js +0 -0
- /package/dist/{web → public}/assets/hcl-BWvSN4gD.js +0 -0
- /package/dist/{web → public}/assets/hjson-D5-asLiD.js +0 -0
- /package/dist/{web → public}/assets/hlsl-D3lLCCz7.js +0 -0
- /package/dist/{web → public}/assets/houston-DnULxvSX.js +0 -0
- /package/dist/{web → public}/assets/html-GMplVEZG.js +0 -0
- /package/dist/{web → public}/assets/html-derivative-BFtXZ54Q.js +0 -0
- /package/dist/{web → public}/assets/http-jrhK8wxY.js +0 -0
- /package/dist/{web → public}/assets/hurl-irOxFIW8.js +0 -0
- /package/dist/{web → public}/assets/hxml-Bvhsp5Yf.js +0 -0
- /package/dist/{web → public}/assets/hy-DFXneXwc.js +0 -0
- /package/dist/{web → public}/assets/imba-DGztddWO.js +0 -0
- /package/dist/{web → public}/assets/ini-BEwlwnbL.js +0 -0
- /package/dist/{web → public}/assets/init-Gi6I4Gst.js +0 -0
- /package/dist/{web → public}/assets/inter-cyrillic-400-normal-HOLc17fK.woff +0 -0
- /package/dist/{web → public}/assets/inter-cyrillic-400-normal-obahsSVq.woff2 +0 -0
- /package/dist/{web → public}/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2 +0 -0
- /package/dist/{web → public}/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff +0 -0
- /package/dist/{web → public}/assets/inter-greek-400-normal-B4URO6DV.woff2 +0 -0
- /package/dist/{web → public}/assets/inter-greek-400-normal-q2sYcFCs.woff +0 -0
- /package/dist/{web → public}/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2 +0 -0
- /package/dist/{web → public}/assets/inter-greek-ext-400-normal-KugGGMne.woff +0 -0
- /package/dist/{web → public}/assets/inter-latin-400-normal-C38fXH4l.woff2 +0 -0
- /package/dist/{web → public}/assets/inter-latin-400-normal-CyCys3Eg.woff +0 -0
- /package/dist/{web → public}/assets/inter-latin-ext-400-normal-77YHD8bZ.woff +0 -0
- /package/dist/{web → public}/assets/inter-latin-ext-400-normal-C1nco2VV.woff2 +0 -0
- /package/dist/{web → public}/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff +0 -0
- /package/dist/{web → public}/assets/inter-vietnamese-400-normal-DMkecbls.woff2 +0 -0
- /package/dist/{web → public}/assets/java-CylS5w8V.js +0 -0
- /package/dist/{web → public}/assets/javascript-wDzz0qaB.js +0 -0
- /package/dist/{web → public}/assets/jinja-4LBKfQ-Z.js +0 -0
- /package/dist/{web → public}/assets/jison-wvAkD_A8.js +0 -0
- /package/dist/{web → public}/assets/json-Cp-IABpG.js +0 -0
- /package/dist/{web → public}/assets/json5-C9tS-k6U.js +0 -0
- /package/dist/{web → public}/assets/jsonc-Des-eS-w.js +0 -0
- /package/dist/{web → public}/assets/jsonl-DcaNXYhu.js +0 -0
- /package/dist/{web → public}/assets/jsonnet-DFQXde-d.js +0 -0
- /package/dist/{web → public}/assets/jssm-C2t-YnRu.js +0 -0
- /package/dist/{web → public}/assets/jsx-g9-lgVsj.js +0 -0
- /package/dist/{web → public}/assets/kanagawa-dragon-CkXjmgJE.js +0 -0
- /package/dist/{web → public}/assets/kanagawa-lotus-CfQXZHmo.js +0 -0
- /package/dist/{web → public}/assets/kanagawa-wave-DWedfzmr.js +0 -0
- /package/dist/{web → public}/assets/katex-DvXFAOB1.css +0 -0
- /package/dist/{web → public}/assets/kdl-DV7GczEv.js +0 -0
- /package/dist/{web → public}/assets/kotlin-BdnUsdx6.js +0 -0
- /package/dist/{web → public}/assets/laserwave-DUszq2jm.js +0 -0
- /package/dist/{web → public}/assets/less-B1dDrJ26.js +0 -0
- /package/dist/{web → public}/assets/light-plus-B7mTdjB0.js +0 -0
- /package/dist/{web → public}/assets/liquid-DYVedYrR.js +0 -0
- /package/dist/{web → public}/assets/llvm-BtvRca6l.js +0 -0
- /package/dist/{web → public}/assets/log-2UxHyX5q.js +0 -0
- /package/dist/{web → public}/assets/logo-BtOb2qkB.js +0 -0
- /package/dist/{web → public}/assets/lua-BbnMAYS6.js +0 -0
- /package/dist/{web → public}/assets/make-CHLpvVh8.js +0 -0
- /package/dist/{web → public}/assets/markdown-Cvjx9yec.js +0 -0
- /package/dist/{web → public}/assets/material-theme-D5KoaKCx.js +0 -0
- /package/dist/{web → public}/assets/material-theme-darker-BfHTSMKl.js +0 -0
- /package/dist/{web → public}/assets/material-theme-lighter-B0m2ddpp.js +0 -0
- /package/dist/{web → public}/assets/material-theme-ocean-CyktbL80.js +0 -0
- /package/dist/{web → public}/assets/material-theme-palenight-Csfq5Kiy.js +0 -0
- /package/dist/{web → public}/assets/matlab-D7o27uSR.js +0 -0
- /package/dist/{web → public}/assets/mdc-DUICxH0z.js +0 -0
- /package/dist/{web → public}/assets/mdx-Cmh6b_Ma.js +0 -0
- /package/dist/{web → public}/assets/min-dark-CafNBF8u.js +0 -0
- /package/dist/{web → public}/assets/min-light-CTRr51gU.js +0 -0
- /package/dist/{web → public}/assets/mipsasm-CKIfxQSi.js +0 -0
- /package/dist/{web → public}/assets/monokai-D4h5O-jR.js +0 -0
- /package/dist/{web → public}/assets/move-Bu9oaDYs.js +0 -0
- /package/dist/{web → public}/assets/narrat-DRg8JJMk.js +0 -0
- /package/dist/{web → public}/assets/nextflow-BrzmwbiE.js +0 -0
- /package/dist/{web → public}/assets/nginx-DknmC5AR.js +0 -0
- /package/dist/{web → public}/assets/night-owl-C39BiMTA.js +0 -0
- /package/dist/{web → public}/assets/nim-CVrawwO9.js +0 -0
- /package/dist/{web → public}/assets/nord-Ddv68eIx.js +0 -0
- /package/dist/{web → public}/assets/nushell-C-sUppwS.js +0 -0
- /package/dist/{web → public}/assets/objective-c-DXmwc3jG.js +0 -0
- /package/dist/{web → public}/assets/objective-cpp-CLxacb5B.js +0 -0
- /package/dist/{web → public}/assets/ocaml-C0hk2d4L.js +0 -0
- /package/dist/{web → public}/assets/one-dark-pro-DVMEJ2y_.js +0 -0
- /package/dist/{web → public}/assets/one-light-PoHY5YXO.js +0 -0
- /package/dist/{web → public}/assets/openscad-C4EeE6gA.js +0 -0
- /package/dist/{web → public}/assets/ordinal-Cboi1Yqb.js +0 -0
- /package/dist/{web → public}/assets/pascal-D93ZcfNL.js +0 -0
- /package/dist/{web → public}/assets/perl-C0TMdlhV.js +0 -0
- /package/dist/{web → public}/assets/php-CDn_0X-4.js +0 -0
- /package/dist/{web → public}/assets/pierre-dark-BXuwtOqb.js +0 -0
- /package/dist/{web → public}/assets/pierre-light-dckrK0oj.js +0 -0
- /package/dist/{web → public}/assets/pkl-u5AG7uiY.js +0 -0
- /package/dist/{web → public}/assets/plastic-3e1v2bzS.js +0 -0
- /package/dist/{web → public}/assets/plsql-ChMvpjG-.js +0 -0
- /package/dist/{web → public}/assets/po-BTJTHyun.js +0 -0
- /package/dist/{web → public}/assets/poimandres-CS3Unz2-.js +0 -0
- /package/dist/{web → public}/assets/polar-C0HS_06l.js +0 -0
- /package/dist/{web → public}/assets/postcss-CXtECtnM.js +0 -0
- /package/dist/{web → public}/assets/powerquery-CEu0bR-o.js +0 -0
- /package/dist/{web → public}/assets/powershell-Dpen1YoG.js +0 -0
- /package/dist/{web → public}/assets/prisma-Dd19v3D-.js +0 -0
- /package/dist/{web → public}/assets/prolog-CbFg5uaA.js +0 -0
- /package/dist/{web → public}/assets/pug-CGlum2m_.js +0 -0
- /package/dist/{web → public}/assets/puppet-BMWR74SV.js +0 -0
- /package/dist/{web → public}/assets/purescript-CklMAg4u.js +0 -0
- /package/dist/{web → public}/assets/python-B6aJPvgy.js +0 -0
- /package/dist/{web → public}/assets/qml-3beO22l8.js +0 -0
- /package/dist/{web → public}/assets/qmldir-C8lEn-DE.js +0 -0
- /package/dist/{web → public}/assets/qss-IeuSbFQv.js +0 -0
- /package/dist/{web → public}/assets/racket-BqYA7rlc.js +0 -0
- /package/dist/{web → public}/assets/raku-DXvB9xmW.js +0 -0
- /package/dist/{web → public}/assets/red-bN70gL4F.js +0 -0
- /package/dist/{web → public}/assets/reg-C-SQnVFl.js +0 -0
- /package/dist/{web → public}/assets/regexp-CDVJQ6XC.js +0 -0
- /package/dist/{web → public}/assets/rel-C3B-1QV4.js +0 -0
- /package/dist/{web → public}/assets/riscv-BM1_JUlF.js +0 -0
- /package/dist/{web → public}/assets/rose-pine-dawn-DHQR4-dF.js +0 -0
- /package/dist/{web → public}/assets/rose-pine-moon-D4_iv3hh.js +0 -0
- /package/dist/{web → public}/assets/rose-pine-qdsjHGoJ.js +0 -0
- /package/dist/{web → public}/assets/rosmsg-BJDFO7_C.js +0 -0
- /package/dist/{web → public}/assets/rst-B0xPkSld.js +0 -0
- /package/dist/{web → public}/assets/ruby-BvKwtOVI.js +0 -0
- /package/dist/{web → public}/assets/rust-B1yitclQ.js +0 -0
- /package/dist/{web → public}/assets/sas-cz2c8ADy.js +0 -0
- /package/dist/{web → public}/assets/sass-Cj5Yp3dK.js +0 -0
- /package/dist/{web → public}/assets/scala-C151Ov-r.js +0 -0
- /package/dist/{web → public}/assets/scheme-C98Dy4si.js +0 -0
- /package/dist/{web → public}/assets/scss-OYdSNvt2.js +0 -0
- /package/dist/{web → public}/assets/sdbl-DVxCFoDh.js +0 -0
- /package/dist/{web → public}/assets/shaderlab-Dg9Lc6iA.js +0 -0
- /package/dist/{web → public}/assets/shellscript-Yzrsuije.js +0 -0
- /package/dist/{web → public}/assets/shellsession-BADoaaVG.js +0 -0
- /package/dist/{web → public}/assets/slack-dark-BthQWCQV.js +0 -0
- /package/dist/{web → public}/assets/slack-ochin-DqwNpetd.js +0 -0
- /package/dist/{web → public}/assets/smalltalk-BERRCDM3.js +0 -0
- /package/dist/{web → public}/assets/snazzy-light-Bw305WKR.js +0 -0
- /package/dist/{web → public}/assets/solarized-dark-DXbdFlpD.js +0 -0
- /package/dist/{web → public}/assets/solarized-light-L9t79GZl.js +0 -0
- /package/dist/{web → public}/assets/solidity-rGO070M0.js +0 -0
- /package/dist/{web → public}/assets/soy-Brmx7dQM.js +0 -0
- /package/dist/{web → public}/assets/sparql-rVzFXLq3.js +0 -0
- /package/dist/{web → public}/assets/splunk-BtCnVYZw.js +0 -0
- /package/dist/{web → public}/assets/sql-BLtJtn59.js +0 -0
- /package/dist/{web → public}/assets/ssh-config-_ykCGR6B.js +0 -0
- /package/dist/{web → public}/assets/stata-BH5u7GGu.js +0 -0
- /package/dist/{web → public}/assets/stylus-BEDo0Tqx.js +0 -0
- /package/dist/{web → public}/assets/swift-Dg5xB15N.js +0 -0
- /package/dist/{web → public}/assets/synthwave-84-CbfX1IO0.js +0 -0
- /package/dist/{web → public}/assets/system-verilog-CnnmHF94.js +0 -0
- /package/dist/{web → public}/assets/systemd-4A_iFExJ.js +0 -0
- /package/dist/{web → public}/assets/talonscript-CkByrt1z.js +0 -0
- /package/dist/{web → public}/assets/tasl-QIJgUcNo.js +0 -0
- /package/dist/{web → public}/assets/tcl-dwOrl1Do.js +0 -0
- /package/dist/{web → public}/assets/templ-W15q3VgB.js +0 -0
- /package/dist/{web → public}/assets/terraform-BETggiCN.js +0 -0
- /package/dist/{web → public}/assets/tokyo-night-hegEt444.js +0 -0
- /package/dist/{web → public}/assets/toml-vGWfd6FD.js +0 -0
- /package/dist/{web → public}/assets/ts-tags-zn1MmPIZ.js +0 -0
- /package/dist/{web → public}/assets/tsv-B_m7g4N7.js +0 -0
- /package/dist/{web → public}/assets/tsx-COt5Ahok.js +0 -0
- /package/dist/{web → public}/assets/turtle-BsS91CYL.js +0 -0
- /package/dist/{web → public}/assets/twig-CO9l9SDP.js +0 -0
- /package/dist/{web → public}/assets/typescript-BPQ3VLAy.js +0 -0
- /package/dist/{web → public}/assets/typespec-BGHnOYBU.js +0 -0
- /package/dist/{web → public}/assets/typst-DHCkPAjA.js +0 -0
- /package/dist/{web → public}/assets/v-BcVCzyr7.js +0 -0
- /package/dist/{web → public}/assets/vala-CsfeWuGM.js +0 -0
- /package/dist/{web → public}/assets/vb-D17OF-Vu.js +0 -0
- /package/dist/{web → public}/assets/verilog-BQ8w6xss.js +0 -0
- /package/dist/{web → public}/assets/vesper-DU1UobuO.js +0 -0
- /package/dist/{web → public}/assets/vhdl-CeAyd5Ju.js +0 -0
- /package/dist/{web → public}/assets/viml-CJc9bBzg.js +0 -0
- /package/dist/{web → public}/assets/vitesse-black-Bkuqu6BP.js +0 -0
- /package/dist/{web → public}/assets/vitesse-dark-D0r3Knsf.js +0 -0
- /package/dist/{web → public}/assets/vitesse-light-CVO1_9PV.js +0 -0
- /package/dist/{web → public}/assets/vyper-CDx5xZoG.js +0 -0
- /package/dist/{web → public}/assets/wasm-CG6Dc4jp.js +0 -0
- /package/dist/{web → public}/assets/wasm-MzD3tlZU.js +0 -0
- /package/dist/{web → public}/assets/wenyan-BV7otONQ.js +0 -0
- /package/dist/{web → public}/assets/wgsl-Dx-B1_4e.js +0 -0
- /package/dist/{web → public}/assets/wikitext-BhOHFoWU.js +0 -0
- /package/dist/{web → public}/assets/wit-5i3qLPDT.js +0 -0
- /package/dist/{web → public}/assets/wolfram-lXgVvXCa.js +0 -0
- /package/dist/{web → public}/assets/xml-sdJ4AIDG.js +0 -0
- /package/dist/{web → public}/assets/xsl-CtQFsRM5.js +0 -0
- /package/dist/{web → public}/assets/yaml-Buea-lGh.js +0 -0
- /package/dist/{web → public}/assets/zenscript-DVFEvuxE.js +0 -0
- /package/dist/{web → public}/assets/zig-VOosw3JB.js +0 -0
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
import { Router } from 'express';
|
|
2
|
-
const OPENCODE_URL = process.env.OPENCODE_URL || 'http://localhost:4096';
|
|
3
|
-
const router = Router();
|
|
4
|
-
// Routes that should return 202 immediately without waiting for OpenCode response.
|
|
5
|
-
// These are "fire-and-forget" - the browser doesn't need the response body,
|
|
6
|
-
// and waiting would cause the UI to hang while OpenCode processes the request.
|
|
7
|
-
const FIRE_AND_FORGET_PATTERNS = [
|
|
8
|
-
{ method: 'POST', pattern: /^\/session\/[^/]+\/shell$/ },
|
|
9
|
-
{ method: 'POST', pattern: /^\/session\/[^/]+\/command$/ },
|
|
10
|
-
{ method: 'POST', pattern: /^\/session\/[^/]+\/abort$/ },
|
|
11
|
-
{ method: 'POST', pattern: /^\/session\/[^/]+\/revert$/ },
|
|
12
|
-
{ method: 'POST', pattern: /^\/session\/[^/]+\/unrevert$/ },
|
|
13
|
-
{ method: 'POST', pattern: /^\/session\/[^/]+\/summarize$/ },
|
|
14
|
-
// Permission endpoints (old and new SDK versions)
|
|
15
|
-
{ method: 'POST', pattern: /^\/session\/[^/]+\/permissions\/[^/]+$/ },
|
|
16
|
-
{ method: 'POST', pattern: /^\/permission\/[^/]+\/reply$/ },
|
|
17
|
-
];
|
|
18
|
-
const isFireAndForget = (method, path) => {
|
|
19
|
-
// Strip query string for matching
|
|
20
|
-
const pathWithoutQuery = path.split('?')[0];
|
|
21
|
-
return FIRE_AND_FORGET_PATTERNS.some((route) => route.method === method && route.pattern.test(pathWithoutQuery));
|
|
22
|
-
};
|
|
23
|
-
const buildTargetUrl = (req) => {
|
|
24
|
-
const url = new URL(req.url, OPENCODE_URL);
|
|
25
|
-
return url;
|
|
26
|
-
};
|
|
27
|
-
const buildHeaders = (req, includeBody) => {
|
|
28
|
-
const headers = {};
|
|
29
|
-
if (typeof req.headers['accept'] === 'string') {
|
|
30
|
-
headers['accept'] = req.headers['accept'];
|
|
31
|
-
}
|
|
32
|
-
if (includeBody) {
|
|
33
|
-
headers['content-type'] = 'application/json';
|
|
34
|
-
}
|
|
35
|
-
return headers;
|
|
36
|
-
};
|
|
37
|
-
const hasBody = (method) => {
|
|
38
|
-
return ['POST', 'PUT', 'PATCH'].includes(method);
|
|
39
|
-
};
|
|
40
|
-
// Fire-and-forget: send request to OpenCode but return 202 immediately
|
|
41
|
-
const fireAndForget = (req, label) => {
|
|
42
|
-
const url = buildTargetUrl(req);
|
|
43
|
-
const headers = buildHeaders(req, hasBody(req.method));
|
|
44
|
-
fetch(url, {
|
|
45
|
-
method: req.method,
|
|
46
|
-
headers,
|
|
47
|
-
body: hasBody(req.method) ? JSON.stringify(req.body ?? {}) : undefined,
|
|
48
|
-
}).catch((error) => {
|
|
49
|
-
console.error(`[proxy] ${label} fire-and-forget error:`, error);
|
|
50
|
-
});
|
|
51
|
-
};
|
|
52
|
-
// Stream proxy: forward request and stream response back
|
|
53
|
-
const streamProxy = async (req, res) => {
|
|
54
|
-
const url = buildTargetUrl(req);
|
|
55
|
-
const headers = buildHeaders(req, hasBody(req.method));
|
|
56
|
-
try {
|
|
57
|
-
const response = await fetch(url, {
|
|
58
|
-
method: req.method,
|
|
59
|
-
headers,
|
|
60
|
-
body: hasBody(req.method) ? JSON.stringify(req.body ?? {}) : undefined,
|
|
61
|
-
});
|
|
62
|
-
// Forward status
|
|
63
|
-
res.status(response.status);
|
|
64
|
-
// Forward headers (except content-length which may be wrong after buffering)
|
|
65
|
-
response.headers.forEach((value, key) => {
|
|
66
|
-
if (key.toLowerCase() !== 'content-length') {
|
|
67
|
-
res.setHeader(key, value);
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
// Handle 204 No Content
|
|
71
|
-
if (response.status === 204 || !response.body) {
|
|
72
|
-
res.end();
|
|
73
|
-
return;
|
|
74
|
-
}
|
|
75
|
-
// Check if this is SSE
|
|
76
|
-
const contentType = response.headers.get('content-type') ?? '';
|
|
77
|
-
const isSSE = contentType.includes('text/event-stream');
|
|
78
|
-
if (isSSE) {
|
|
79
|
-
// SSE: stream chunks as they arrive
|
|
80
|
-
res.setHeader('Cache-Control', 'no-cache');
|
|
81
|
-
res.setHeader('Connection', 'keep-alive');
|
|
82
|
-
const reader = response.body.getReader();
|
|
83
|
-
try {
|
|
84
|
-
while (true) {
|
|
85
|
-
const { done, value } = await reader.read();
|
|
86
|
-
if (done)
|
|
87
|
-
break;
|
|
88
|
-
res.write(value);
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
finally {
|
|
92
|
-
reader.releaseLock();
|
|
93
|
-
}
|
|
94
|
-
res.end();
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
// Non-SSE: buffer and send
|
|
98
|
-
const buffer = Buffer.from(await response.arrayBuffer());
|
|
99
|
-
res.send(buffer);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
catch (error) {
|
|
103
|
-
console.error(`[proxy] ${req.method} ${req.url} error:`, error);
|
|
104
|
-
res.status(502).json({ error: 'Failed to proxy request to OpenCode' });
|
|
105
|
-
}
|
|
106
|
-
};
|
|
107
|
-
// Log all proxied requests
|
|
108
|
-
router.use((req, _res, next) => {
|
|
109
|
-
console.log(`[proxy] ${req.method} ${req.url}`);
|
|
110
|
-
next();
|
|
111
|
-
});
|
|
112
|
-
// Main proxy handler
|
|
113
|
-
router.use('/', async (req, res) => {
|
|
114
|
-
if (isFireAndForget(req.method, req.url)) {
|
|
115
|
-
const label = req.url.split('?')[0];
|
|
116
|
-
fireAndForget(req, label);
|
|
117
|
-
res.status(202).end();
|
|
118
|
-
return;
|
|
119
|
-
}
|
|
120
|
-
await streamProxy(req, res);
|
|
121
|
-
});
|
|
122
|
-
export default router;
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Session Routes
|
|
3
|
-
*
|
|
4
|
-
* Intercepts OpenCode session endpoints to apply shella-specific transformations.
|
|
5
|
-
* Currently handles message chunking on compaction boundaries.
|
|
6
|
-
*/
|
|
7
|
-
declare const router: import("express-serve-static-core").Router;
|
|
8
|
-
export default router;
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Session Routes
|
|
3
|
-
*
|
|
4
|
-
* Intercepts OpenCode session endpoints to apply shella-specific transformations.
|
|
5
|
-
* Currently handles message chunking on compaction boundaries.
|
|
6
|
-
*/
|
|
7
|
-
import { Router } from 'express';
|
|
8
|
-
import { opencodeClient } from '../lib/opencode-client.js';
|
|
9
|
-
const router = Router();
|
|
10
|
-
/**
|
|
11
|
-
* GET /session/:sessionId/message
|
|
12
|
-
*
|
|
13
|
-
* Fetches messages for a session and applies compaction chunking.
|
|
14
|
-
* Only returns messages from the last compaction boundary onwards,
|
|
15
|
-
* reducing payload size and frontend memory for long-running sessions.
|
|
16
|
-
*/
|
|
17
|
-
router.get('/:sessionId/message', async (req, res) => {
|
|
18
|
-
const { sessionId } = req.params;
|
|
19
|
-
const directory = req.query.directory;
|
|
20
|
-
if (!directory) {
|
|
21
|
-
res.status(400).json({ error: 'directory query parameter is required' });
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
try {
|
|
25
|
-
const response = await opencodeClient.session.messages({
|
|
26
|
-
sessionID: sessionId,
|
|
27
|
-
directory,
|
|
28
|
-
});
|
|
29
|
-
const allMessages = (response.data ?? []);
|
|
30
|
-
// Find the last message with a compaction part
|
|
31
|
-
let lastCompactionIndex = -1;
|
|
32
|
-
for (let i = allMessages.length - 1; i >= 0; i--) {
|
|
33
|
-
const msg = allMessages[i];
|
|
34
|
-
if (msg.parts?.some((p) => p.type === 'compaction')) {
|
|
35
|
-
lastCompactionIndex = i;
|
|
36
|
-
break;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
// If compaction found, return only messages from compaction onwards
|
|
40
|
-
if (lastCompactionIndex >= 0) {
|
|
41
|
-
const chunkedResponse = {
|
|
42
|
-
data: allMessages.slice(lastCompactionIndex),
|
|
43
|
-
hasEarlierChunks: lastCompactionIndex > 0,
|
|
44
|
-
chunkBoundaryMessageId: allMessages[lastCompactionIndex].info.id,
|
|
45
|
-
};
|
|
46
|
-
console.log(`[session] GET /${sessionId}/message - chunked: ${allMessages.length} -> ${chunkedResponse.data.length} messages`);
|
|
47
|
-
res.json(chunkedResponse);
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
// No compaction - return all messages
|
|
51
|
-
const fullResponse = {
|
|
52
|
-
data: allMessages,
|
|
53
|
-
hasEarlierChunks: false,
|
|
54
|
-
};
|
|
55
|
-
console.log(`[session] GET /${sessionId}/message - no compaction: ${allMessages.length} messages`);
|
|
56
|
-
res.json(fullResponse);
|
|
57
|
-
}
|
|
58
|
-
catch (error) {
|
|
59
|
-
console.error(`[session] GET /${sessionId}/message error:`, error);
|
|
60
|
-
res.status(502).json({ error: 'Failed to fetch messages from OpenCode' });
|
|
61
|
-
}
|
|
62
|
-
});
|
|
63
|
-
export default router;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Status endpoint - checks if the server has been configured (onboarding complete).
|
|
3
|
-
*
|
|
4
|
-
* This is used by the frontend to determine whether to show the welcome screen.
|
|
5
|
-
* Unlike localStorage-based checks, this is server-side so it works correctly
|
|
6
|
-
* when the same browser connects to different shella servers.
|
|
7
|
-
*/
|
|
8
|
-
declare const router: import("express-serve-static-core").Router;
|
|
9
|
-
export default router;
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Status endpoint - checks if the server has been configured (onboarding complete).
|
|
3
|
-
*
|
|
4
|
-
* This is used by the frontend to determine whether to show the welcome screen.
|
|
5
|
-
* Unlike localStorage-based checks, this is server-side so it works correctly
|
|
6
|
-
* when the same browser connects to different shella servers.
|
|
7
|
-
*/
|
|
8
|
-
import { Router } from 'express';
|
|
9
|
-
import { eq } from 'drizzle-orm';
|
|
10
|
-
import { getDatabase, saveDatabase } from '../services/database.js';
|
|
11
|
-
import { settings } from '../schema.js';
|
|
12
|
-
const router = Router();
|
|
13
|
-
const CONFIGURED_KEY = 'configured';
|
|
14
|
-
/**
|
|
15
|
-
* GET /__shella/status
|
|
16
|
-
* Returns the server configuration status.
|
|
17
|
-
*/
|
|
18
|
-
router.get('/', async (_req, res) => {
|
|
19
|
-
try {
|
|
20
|
-
const db = await getDatabase();
|
|
21
|
-
const result = await db.select().from(settings).where(eq(settings.key, CONFIGURED_KEY));
|
|
22
|
-
const configured = result.length > 0 && result[0].value === 'true';
|
|
23
|
-
res.json({ configured });
|
|
24
|
-
}
|
|
25
|
-
catch (err) {
|
|
26
|
-
console.error('[status] Failed to get status:', err);
|
|
27
|
-
res.status(500).json({ error: 'Failed to get status' });
|
|
28
|
-
}
|
|
29
|
-
});
|
|
30
|
-
/**
|
|
31
|
-
* POST /__shella/status/configured
|
|
32
|
-
* Marks the server as configured (onboarding complete).
|
|
33
|
-
*/
|
|
34
|
-
router.post('/configured', async (_req, res) => {
|
|
35
|
-
try {
|
|
36
|
-
const db = await getDatabase();
|
|
37
|
-
// Upsert the configured setting
|
|
38
|
-
await db
|
|
39
|
-
.insert(settings)
|
|
40
|
-
.values({ key: CONFIGURED_KEY, value: 'true' })
|
|
41
|
-
.onConflictDoUpdate({
|
|
42
|
-
target: settings.key,
|
|
43
|
-
set: { value: 'true' },
|
|
44
|
-
});
|
|
45
|
-
// Persist immediately
|
|
46
|
-
saveDatabase();
|
|
47
|
-
res.json({ success: true });
|
|
48
|
-
}
|
|
49
|
-
catch (err) {
|
|
50
|
-
console.error('[status] Failed to set configured:', err);
|
|
51
|
-
res.status(500).json({ error: 'Failed to set configured' });
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
export default router;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Usage Limits API Routes
|
|
3
|
-
*
|
|
4
|
-
* Fetches AI provider usage data.
|
|
5
|
-
* Uses @bytespell/model-provider-usage-limits for the heavy lifting.
|
|
6
|
-
*
|
|
7
|
-
* Note: Routing is now handled server-side in prompt.ts.
|
|
8
|
-
* Usage data is also included in the config response.
|
|
9
|
-
* This endpoint is kept for debugging/manual refresh.
|
|
10
|
-
*/
|
|
11
|
-
declare const router: import("express-serve-static-core").Router;
|
|
12
|
-
export default router;
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Usage Limits API Routes
|
|
3
|
-
*
|
|
4
|
-
* Fetches AI provider usage data.
|
|
5
|
-
* Uses @bytespell/model-provider-usage-limits for the heavy lifting.
|
|
6
|
-
*
|
|
7
|
-
* Note: Routing is now handled server-side in prompt.ts.
|
|
8
|
-
* Usage data is also included in the config response.
|
|
9
|
-
* This endpoint is kept for debugging/manual refresh.
|
|
10
|
-
*/
|
|
11
|
-
import { Router } from 'express';
|
|
12
|
-
import { getUsage, detectAuthTokens } from '@bytespell/model-provider-usage-limits';
|
|
13
|
-
const router = Router();
|
|
14
|
-
/**
|
|
15
|
-
* GET /usage
|
|
16
|
-
*
|
|
17
|
-
* Fetch usage data for all authenticated providers.
|
|
18
|
-
* Auto-detects tokens from OpenCode's auth.json.
|
|
19
|
-
*
|
|
20
|
-
* Query params:
|
|
21
|
-
* - bypass_cache: "true" to skip cache
|
|
22
|
-
*/
|
|
23
|
-
router.get('/usage', async (req, res) => {
|
|
24
|
-
const bypassCache = req.query.bypass_cache === 'true';
|
|
25
|
-
console.log(`[usage] GET /usage (bypass_cache=${bypassCache})`);
|
|
26
|
-
try {
|
|
27
|
-
// Check what tokens are available (for logging)
|
|
28
|
-
const tokens = detectAuthTokens();
|
|
29
|
-
const tokenProviders = Object.keys(tokens);
|
|
30
|
-
console.log(`[usage] Detected tokens for: ${tokenProviders.join(', ') || 'none'}`);
|
|
31
|
-
if (tokenProviders.length === 0) {
|
|
32
|
-
console.log(`[usage] No provider tokens available`);
|
|
33
|
-
res.json({ providers: {}, message: 'No authenticated providers found' });
|
|
34
|
-
return;
|
|
35
|
-
}
|
|
36
|
-
const results = await getUsage({
|
|
37
|
-
autoDetectAuthTokens: true,
|
|
38
|
-
bypassCache,
|
|
39
|
-
});
|
|
40
|
-
const providerCount = Object.keys(results).length;
|
|
41
|
-
console.log(`[usage] Fetched usage for ${providerCount} provider(s)`);
|
|
42
|
-
// Log summary for each provider
|
|
43
|
-
for (const [provider, result] of Object.entries(results)) {
|
|
44
|
-
if (result?.data?.primary) {
|
|
45
|
-
const { usedPercent, paceDelta, window } = result.data.primary;
|
|
46
|
-
console.log(`[usage] ${provider}: ${usedPercent.toFixed(1)}% used (${window}), pace: ${paceDelta ?? 'n/a'}%`);
|
|
47
|
-
}
|
|
48
|
-
else if (result?.error) {
|
|
49
|
-
console.log(`[usage] ${provider}: error - ${result.error.message}`);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
res.json({ providers: results });
|
|
53
|
-
}
|
|
54
|
-
catch (error) {
|
|
55
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
56
|
-
console.error(`[usage] Error fetching usage:`, message);
|
|
57
|
-
res.status(500).json({ error: message });
|
|
58
|
-
}
|
|
59
|
-
});
|
|
60
|
-
export default router;
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import { Router } from 'express';
|
|
2
|
-
import { eq } from 'drizzle-orm';
|
|
3
|
-
import { getDatabase, saveDatabase } from '../services/database.js';
|
|
4
|
-
import { windows } from '../schema.js';
|
|
5
|
-
import { setupSSE, sendSSE, addWindowClient, removeWindowClient, broadcastWindowEvent, } from '../services/sse-manager.js';
|
|
6
|
-
const router = Router();
|
|
7
|
-
// SSE endpoint for window sync
|
|
8
|
-
router.get('/events', (req, res) => {
|
|
9
|
-
const clientId = req.headers['x-client-id'];
|
|
10
|
-
const client = setupSSE(res, clientId);
|
|
11
|
-
sendSSE(client, { type: 'connected' });
|
|
12
|
-
addWindowClient(client);
|
|
13
|
-
req.on('close', () => removeWindowClient(client));
|
|
14
|
-
});
|
|
15
|
-
// List all windows
|
|
16
|
-
router.get('/windows', async (_req, res) => {
|
|
17
|
-
try {
|
|
18
|
-
const db = await getDatabase();
|
|
19
|
-
const allWindows = db.select().from(windows).orderBy(windows.createdAt).all();
|
|
20
|
-
res.json(allWindows);
|
|
21
|
-
}
|
|
22
|
-
catch (err) {
|
|
23
|
-
console.error('[windows] Failed to list windows:', err);
|
|
24
|
-
res.status(500).json({ error: 'Failed to list windows' });
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
// Create a new window
|
|
28
|
-
router.post('/windows', async (req, res) => {
|
|
29
|
-
try {
|
|
30
|
-
const db = await getDatabase();
|
|
31
|
-
const clientId = req.headers['x-client-id'];
|
|
32
|
-
const body = req.body;
|
|
33
|
-
if (!body.id || !body.directoryId || !body.createdAt) {
|
|
34
|
-
res.status(400).json({ error: 'Missing required fields: id, directoryId, createdAt' });
|
|
35
|
-
return;
|
|
36
|
-
}
|
|
37
|
-
const newWindow = {
|
|
38
|
-
id: body.id,
|
|
39
|
-
directoryId: body.directoryId,
|
|
40
|
-
rootSessionId: body.rootSessionId ?? null,
|
|
41
|
-
lastActiveAt: body.lastActiveAt ?? body.createdAt, // Default to createdAt
|
|
42
|
-
agent: body.agent ?? null,
|
|
43
|
-
modelProvider: body.modelProvider ?? null,
|
|
44
|
-
modelId: body.modelId ?? null,
|
|
45
|
-
label: body.label ?? null,
|
|
46
|
-
createdAt: body.createdAt,
|
|
47
|
-
};
|
|
48
|
-
db.insert(windows).values(newWindow).run();
|
|
49
|
-
saveDatabase(); // Persist immediately to avoid data loss on restart
|
|
50
|
-
const created = db.select().from(windows).where(eq(windows.id, body.id)).get();
|
|
51
|
-
broadcastWindowEvent({ type: 'window:created', window: created, sourceClientId: clientId });
|
|
52
|
-
res.json(created);
|
|
53
|
-
}
|
|
54
|
-
catch (err) {
|
|
55
|
-
console.error('[windows] Failed to create window:', err);
|
|
56
|
-
res.status(500).json({ error: 'Failed to create window' });
|
|
57
|
-
}
|
|
58
|
-
});
|
|
59
|
-
// Update a window
|
|
60
|
-
router.patch('/windows/:id', async (req, res) => {
|
|
61
|
-
try {
|
|
62
|
-
const db = await getDatabase();
|
|
63
|
-
const clientId = req.headers['x-client-id'];
|
|
64
|
-
const windowId = req.params.id;
|
|
65
|
-
const body = req.body;
|
|
66
|
-
// Check if window exists
|
|
67
|
-
const existing = db.select().from(windows).where(eq(windows.id, windowId)).get();
|
|
68
|
-
if (!existing) {
|
|
69
|
-
res.status(404).json({ error: 'Window not found' });
|
|
70
|
-
return;
|
|
71
|
-
}
|
|
72
|
-
// directoryId is immutable - reject any attempt to change it
|
|
73
|
-
if (body.directoryId !== undefined) {
|
|
74
|
-
res.status(400).json({ error: 'directoryId cannot be changed after window creation' });
|
|
75
|
-
return;
|
|
76
|
-
}
|
|
77
|
-
// Build update object (only include provided fields)
|
|
78
|
-
const updates = {};
|
|
79
|
-
if (body.rootSessionId !== undefined)
|
|
80
|
-
updates.rootSessionId = body.rootSessionId;
|
|
81
|
-
if (body.lastActiveAt !== undefined)
|
|
82
|
-
updates.lastActiveAt = body.lastActiveAt;
|
|
83
|
-
if (body.agent !== undefined)
|
|
84
|
-
updates.agent = body.agent;
|
|
85
|
-
if (body.modelProvider !== undefined)
|
|
86
|
-
updates.modelProvider = body.modelProvider;
|
|
87
|
-
if (body.modelId !== undefined)
|
|
88
|
-
updates.modelId = body.modelId;
|
|
89
|
-
if (body.label !== undefined)
|
|
90
|
-
updates.label = body.label;
|
|
91
|
-
if (Object.keys(updates).length > 0) {
|
|
92
|
-
db.update(windows).set(updates).where(eq(windows.id, windowId)).run();
|
|
93
|
-
saveDatabase(); // Persist immediately to avoid data loss on restart
|
|
94
|
-
}
|
|
95
|
-
const updated = db.select().from(windows).where(eq(windows.id, windowId)).get();
|
|
96
|
-
broadcastWindowEvent({ type: 'window:updated', window: updated, sourceClientId: clientId });
|
|
97
|
-
res.json(updated);
|
|
98
|
-
}
|
|
99
|
-
catch (err) {
|
|
100
|
-
console.error('[windows] Failed to update window:', err);
|
|
101
|
-
res.status(500).json({ error: 'Failed to update window' });
|
|
102
|
-
}
|
|
103
|
-
});
|
|
104
|
-
// Delete a window
|
|
105
|
-
router.delete('/windows/:id', async (req, res) => {
|
|
106
|
-
try {
|
|
107
|
-
const db = await getDatabase();
|
|
108
|
-
const clientId = req.headers['x-client-id'];
|
|
109
|
-
const windowId = req.params.id;
|
|
110
|
-
const existing = db.select().from(windows).where(eq(windows.id, windowId)).get();
|
|
111
|
-
if (!existing) {
|
|
112
|
-
res.status(404).json({ error: 'Window not found' });
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
db.delete(windows).where(eq(windows.id, windowId)).run();
|
|
116
|
-
saveDatabase(); // Persist immediately to avoid data loss on restart
|
|
117
|
-
broadcastWindowEvent({ type: 'window:deleted', windowId, sourceClientId: clientId });
|
|
118
|
-
res.json({ ok: true });
|
|
119
|
-
}
|
|
120
|
-
catch (err) {
|
|
121
|
-
console.error('[windows] Failed to delete window:', err);
|
|
122
|
-
res.status(500).json({ error: 'Failed to delete window' });
|
|
123
|
-
}
|
|
124
|
-
});
|
|
125
|
-
export default router;
|