@ai-projector/ide 0.0.0-stage → 0.11.1
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/LICENSE +21 -0
- package/README.md +35 -2
- package/bin/install-desktop +17 -0
- package/bin/install-desktop.cmd +11 -0
- package/bin/projector +22 -0
- package/bin/projector.cmd +11 -0
- package/dist/assets/CodeViewer--WUSmn5i.css +1 -0
- package/dist/assets/CodeViewer-C-C3aibO.js +1 -0
- package/dist/assets/DiscussionView-Cd3exhWx.css +1 -0
- package/dist/assets/DiscussionView-K3YyWE-E.js +2 -0
- package/dist/assets/EditorSettings-DlzJc8cp.js +13 -0
- package/dist/assets/EditorSettings-jSngmpPq.css +1 -0
- package/dist/assets/HtmlViewer-DULKK0_6.js +2 -0
- package/dist/assets/HtmlViewer-XHn9rACG.css +1 -0
- package/dist/assets/ImageViewport-BT_ftU4z.js +1 -0
- package/dist/assets/ImageViewport-JcG9P4B6.css +1 -0
- package/dist/assets/IssueView-ChJFmrTW.js +1 -0
- package/dist/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- package/dist/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/dist/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/dist/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/dist/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/dist/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- package/dist/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/dist/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- package/dist/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/dist/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/dist/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/dist/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- package/dist/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/dist/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- package/dist/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/dist/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- package/dist/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/dist/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/dist/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- package/dist/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/dist/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/dist/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/dist/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/dist/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- package/dist/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- package/dist/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/dist/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/dist/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/dist/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- package/dist/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/dist/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/dist/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/dist/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- package/dist/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/dist/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- package/dist/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/dist/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- package/dist/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/dist/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/dist/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/dist/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/dist/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- package/dist/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/dist/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- package/dist/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/dist/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/dist/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/dist/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- package/dist/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/dist/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- package/dist/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/dist/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/dist/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/dist/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/dist/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/dist/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- package/dist/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/dist/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- package/dist/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/dist/assets/MarkdownViewer-C646XbYf.css +1 -0
- package/dist/assets/MarkdownViewer-Dm2MVp3X.js +2 -0
- package/dist/assets/PullRequestView-Cipn5P0H.js +3 -0
- package/dist/assets/PullRequestView-CzZn9mOg.css +1 -0
- package/dist/assets/ReleaseView-Cz6dH4ej.js +2 -0
- package/dist/assets/ReleaseView-VLO9NVfI.css +1 -0
- package/dist/assets/SplitPanes-0-UT7ksm.css +1 -0
- package/dist/assets/SplitPanes-DNDTWIta.js +1 -0
- package/dist/assets/SvgViewer-DP6-1_fw.css +1 -0
- package/dist/assets/SvgViewer-DkoULP8F.js +2 -0
- package/dist/assets/TerminalView-C30_q784.css +1 -0
- package/dist/assets/TerminalView-fWmIbnZn.js +16 -0
- package/dist/assets/TrackerDetail-CBaLycQg.css +1 -0
- package/dist/assets/TrackerDetail-DuzfEwSZ.js +1 -0
- package/dist/assets/UiButton-AkN01P3P.css +1 -0
- package/dist/assets/UiButton-DvucBdmd.js +2 -0
- package/dist/assets/UiPanel-BUDYIo-h.css +1 -0
- package/dist/assets/UiPanel-DtI4DFYT.js +1 -0
- package/dist/assets/UiViewerPage-CMFEzZ2i.css +1 -0
- package/dist/assets/UiViewerPage-aHNgiSjO.js +2 -0
- package/dist/assets/VisualMarkdownEditor-1DNSAYyq.css +1 -0
- package/dist/assets/VisualMarkdownEditor-BHx2olWh.js +1070 -0
- package/dist/assets/_plugin-vue_export-helper-D62Ebo7D.js +3 -0
- package/dist/assets/apl-gfMMiTNf.js +1 -0
- package/dist/assets/asciiarmor-C_eisQCp.js +1 -0
- package/dist/assets/asn1-DCl_8MCW.js +1 -0
- package/dist/assets/asterisk-BEn0Cwpx.js +1 -0
- package/dist/assets/brainfuck-D5EjA2JK.js +1 -0
- package/dist/assets/clike-xvONpD0Z.js +1 -0
- package/dist/assets/clojure-BflJGmDX.js +1 -0
- package/dist/assets/cmake-84nbDH0I.js +1 -0
- package/dist/assets/cobol-DHLQUbN7.js +1 -0
- package/dist/assets/coffeescript-De_zI4J0.js +1 -0
- package/dist/assets/commonlisp-DgAKBe0r.js +1 -0
- package/dist/assets/compiler-dom.esm-bundler-C5a_rSi1.js +9 -0
- package/dist/assets/crystal-Bl6YKCG_.js +1 -0
- package/dist/assets/css-CnaYoQib.js +1 -0
- package/dist/assets/cypher-p9eYesGn.js +1 -0
- package/dist/assets/d-DWkQyNnU.js +1 -0
- package/dist/assets/diff-ChtP43wD.js +1 -0
- package/dist/assets/dist-23D313r2.js +13 -0
- package/dist/assets/dist-9YLT-RM-.js +11 -0
- package/dist/assets/dist-9guQ6tUS.js +1 -0
- package/dist/assets/dist-BA_HKdx1.js +2 -0
- package/dist/assets/dist-BMX-4S0G.js +1 -0
- package/dist/assets/dist-BQmIGtmd.js +6 -0
- package/dist/assets/dist-BVEl6uFx.js +1 -0
- package/dist/assets/dist-BuiJgwGF.js +9 -0
- package/dist/assets/dist-Bzl1vuDO.js +1 -0
- package/dist/assets/dist-C1mn-4rn.js +1 -0
- package/dist/assets/dist-CG79NjMk.js +1 -0
- package/dist/assets/dist-CRLdLpSX.js +2 -0
- package/dist/assets/dist-Coak6JQD.js +1 -0
- package/dist/assets/dist-CpgyHBvu.js +1 -0
- package/dist/assets/dist-CrRIwgTS.js +1 -0
- package/dist/assets/dist-Cu_4z-jQ.js +1 -0
- package/dist/assets/dist-CxoUUhWx.js +1 -0
- package/dist/assets/dist-CzOhSFRQ.js +1 -0
- package/dist/assets/dist-DN5Y0OA5.js +1 -0
- package/dist/assets/dist-Dqsd8MyB.js +1 -0
- package/dist/assets/dist-Dvv0YQ-H.js +23 -0
- package/dist/assets/dist-DzoDV6Eh.js +2 -0
- package/dist/assets/dist-NMUsQt1c.js +1 -0
- package/dist/assets/dist-ZRLBgDFY.js +1 -0
- package/dist/assets/dist-cLGxPfRN.js +1 -0
- package/dist/assets/dist-p1Xy77w3.js +1 -0
- package/dist/assets/dockerfile-DJkHQgkl.js +1 -0
- package/dist/assets/dtd-DTF72YNO.js +1 -0
- package/dist/assets/dylan-S7ucR4pR.js +1 -0
- package/dist/assets/ebnf-D4c0_ac3.js +1 -0
- package/dist/assets/ecl-BVIeWmwY.js +1 -0
- package/dist/assets/editor-theme-ClBxXjSu.js +1 -0
- package/dist/assets/eiffel-BEjRio4Q.js +1 -0
- package/dist/assets/elm-Cshzl8qu.js +1 -0
- package/dist/assets/erlang-BV0c4Hdn.js +1 -0
- package/dist/assets/events.worker-C2Opu9Sc.js +1 -0
- package/dist/assets/external-link-lkcxItwM.js +1 -0
- package/dist/assets/factor-LKH5gN8L.js +1 -0
- package/dist/assets/fcl-ClOhbFR7.js +1 -0
- package/dist/assets/forth-D6RzAl64.js +1 -0
- package/dist/assets/fortran-Bt6PBEDR.js +1 -0
- package/dist/assets/gas-BHEdbvp9.js +1 -0
- package/dist/assets/gherkin-oBAE_ms0.js +1 -0
- package/dist/assets/github-emoji-CXJ5RSZS.js +169 -0
- package/dist/assets/github-emoji-D8dkjuM_.css +1 -0
- package/dist/assets/groovy-CUrWKPia.js +1 -0
- package/dist/assets/haskell-BRsoo5mP.js +1 -0
- package/dist/assets/haxe-DjVOVvNP.js +1 -0
- package/dist/assets/http-CLVgA2GD.js +1 -0
- package/dist/assets/hub-DfPcTPCC.js +1 -0
- package/dist/assets/idl-BUZw3wgd.js +1 -0
- package/dist/assets/javascript-lS2r2ifg.js +1 -0
- package/dist/assets/julia-CQfgDRfP.js +1 -0
- package/dist/assets/livescript-BXxG0Yva.js +1 -0
- package/dist/assets/lua-DPCEkfD_.js +1 -0
- package/dist/assets/main-JoBAi6ol.css +1 -0
- package/dist/assets/main-iz4ud0jC.js +178 -0
- package/dist/assets/mathematica-u8YMmbU0.js +1 -0
- package/dist/assets/mbox-BEMVcqjs.js +1 -0
- package/dist/assets/mirc-C9zpzAZU.js +1 -0
- package/dist/assets/mllike-B45xgp2S.js +1 -0
- package/dist/assets/modelica-CqHI_q-D.js +1 -0
- package/dist/assets/mscgen-qgSLujhx.js +1 -0
- package/dist/assets/mumps-BSzj6Xyz.js +1 -0
- package/dist/assets/nginx-C-ORUuei.js +1 -0
- package/dist/assets/nsis-viPvXFiq.js +1 -0
- package/dist/assets/ntriples-CzMBulkp.js +1 -0
- package/dist/assets/octave-D2Q8cUp1.js +1 -0
- package/dist/assets/oz-BwTct_5T.js +1 -0
- package/dist/assets/pascal-Dp_KdFgX.js +1 -0
- package/dist/assets/perl-BkSkiI9m.js +1 -0
- package/dist/assets/pig-AF4Hwhju.js +1 -0
- package/dist/assets/powershell-D8WpQPaX.js +1 -0
- package/dist/assets/preload-helper-BLdHbfdN.js +1 -0
- package/dist/assets/properties-C357ku5U.js +1 -0
- package/dist/assets/protobuf-D1ij_kNL.js +1 -0
- package/dist/assets/pug-BqCHZ5xT.js +1 -0
- package/dist/assets/puppet-BZyAS7I4.js +1 -0
- package/dist/assets/python-B_1Jd8HM.js +1 -0
- package/dist/assets/q-B9NhS7L_.js +1 -0
- package/dist/assets/r-CxDmU1I4.js +1 -0
- package/dist/assets/rolldown-runtime-XKyaHtl9.js +1 -0
- package/dist/assets/rpm-gpDK5sbt.js +1 -0
- package/dist/assets/ruby-ChfNwlCY.js +1 -0
- package/dist/assets/sas-C2OyD2Y6.js +1 -0
- package/dist/assets/scheme-D9qYN0V5.js +1 -0
- package/dist/assets/shared.esm-bundler-DoSbGLUP.js +2 -0
- package/dist/assets/shared.worker-DpKROrNH.js +1 -0
- package/dist/assets/shell-DwuoZtxw.js +1 -0
- package/dist/assets/sieve-tLWDfEkZ.js +1 -0
- package/dist/assets/simple-mode-DXiLM1-G.js +1 -0
- package/dist/assets/smalltalk-BLp5-jwC.js +1 -0
- package/dist/assets/solr-B78wSQJQ.js +1 -0
- package/dist/assets/sparql-Dz-mlCAC.js +1 -0
- package/dist/assets/spreadsheet-CTIncYxj.js +1 -0
- package/dist/assets/sql-DuQMFDvy.js +1 -0
- package/dist/assets/stex-DNzd62Q_.js +1 -0
- package/dist/assets/styles-CCXo2OoQ.css +1 -0
- package/dist/assets/styles-DZDDPlL3.js +1 -0
- package/dist/assets/stylus-BOVgKnng.js +1 -0
- package/dist/assets/swift-DKB6_1j6.js +1 -0
- package/dist/assets/tcl-BGfruO1u.js +1 -0
- package/dist/assets/textile-C4jVoHG1.js +1 -0
- package/dist/assets/tiddlywiki-VlUiK86J.js +1 -0
- package/dist/assets/tiki-CvUEFusT.js +1 -0
- package/dist/assets/toml-BPTmHmyx.js +1 -0
- package/dist/assets/troff-C2dAgh7P.js +1 -0
- package/dist/assets/ttcn-PPSTk1ow.js +1 -0
- package/dist/assets/ttcn-cfg-2b4Gb5sE.js +1 -0
- package/dist/assets/turtle-Cx3rYX2g.js +1 -0
- package/dist/assets/vb-BthdM_4N.js +1 -0
- package/dist/assets/vbscript-D9f6rSsU.js +1 -0
- package/dist/assets/velocity-CqftRsjg.js +1 -0
- package/dist/assets/verilog-CjI9Y6RI.js +1 -0
- package/dist/assets/vhdl-kS471soi.js +1 -0
- package/dist/assets/webidl-D5jiJvOU.js +1 -0
- package/dist/assets/xquery-BKJx4mf9.js +1 -0
- package/dist/assets/yacas-CXXgtw0p.js +1 -0
- package/dist/assets/z80-Co3PbHdE.js +1 -0
- package/dist/favicon.svg +5 -0
- package/dist/file-icons/LICENSE-lucide.txt +43 -0
- package/dist/file-icons/NOTICE.md +8 -0
- package/dist/file-icons/icons/archive.svg +1 -0
- package/dist/file-icons/icons/assets.svg +1 -0
- package/dist/file-icons/icons/audio.svg +1 -0
- package/dist/file-icons/icons/c.svg +1 -0
- package/dist/file-icons/icons/components.svg +1 -0
- package/dist/file-icons/icons/config.svg +1 -0
- package/dist/file-icons/icons/cpp.svg +1 -0
- package/dist/file-icons/icons/css.svg +1 -0
- package/dist/file-icons/icons/database.svg +1 -0
- package/dist/file-icons/icons/docker.svg +1 -0
- package/dist/file-icons/icons/env.svg +1 -0
- package/dist/file-icons/icons/executable.svg +1 -0
- package/dist/file-icons/icons/file.svg +1 -0
- package/dist/file-icons/icons/folder-open.svg +1 -0
- package/dist/file-icons/icons/folder.svg +1 -0
- package/dist/file-icons/icons/font.svg +1 -0
- package/dist/file-icons/icons/git.svg +1 -0
- package/dist/file-icons/icons/go.svg +1 -0
- package/dist/file-icons/icons/graphql.svg +1 -0
- package/dist/file-icons/icons/html.svg +1 -0
- package/dist/file-icons/icons/ignore.svg +1 -0
- package/dist/file-icons/icons/image.svg +1 -0
- package/dist/file-icons/icons/java.svg +1 -0
- package/dist/file-icons/icons/javascript.svg +1 -0
- package/dist/file-icons/icons/json.svg +1 -0
- package/dist/file-icons/icons/kotlin.svg +1 -0
- package/dist/file-icons/icons/license.svg +1 -0
- package/dist/file-icons/icons/lock.svg +1 -0
- package/dist/file-icons/icons/markdown.svg +1 -0
- package/dist/file-icons/icons/package.svg +1 -0
- package/dist/file-icons/icons/php.svg +1 -0
- package/dist/file-icons/icons/python.svg +1 -0
- package/dist/file-icons/icons/react.svg +1 -0
- package/dist/file-icons/icons/ruby.svg +1 -0
- package/dist/file-icons/icons/rust.svg +1 -0
- package/dist/file-icons/icons/sass.svg +1 -0
- package/dist/file-icons/icons/shell.svg +1 -0
- package/dist/file-icons/icons/source.svg +1 -0
- package/dist/file-icons/icons/svelte.svg +1 -0
- package/dist/file-icons/icons/swift.svg +1 -0
- package/dist/file-icons/icons/tests.svg +1 -0
- package/dist/file-icons/icons/toml.svg +1 -0
- package/dist/file-icons/icons/typescript.svg +1 -0
- package/dist/file-icons/icons/video.svg +1 -0
- package/dist/file-icons/icons/vite.svg +1 -0
- package/dist/file-icons/icons/vue.svg +1 -0
- package/dist/file-icons/icons/yaml.svg +1 -0
- package/dist/file-icons/theme.json +572 -0
- package/dist/file-icons/theme.schema.json +137 -0
- package/dist/github.svg +1 -0
- package/dist/gitlab.svg +1 -0
- package/dist/hub.html +21 -0
- package/dist/icons/apple-touch-icon.png +0 -0
- package/dist/icons/icon-192.png +0 -0
- package/dist/icons/icon-512.png +0 -0
- package/dist/icons/maskable-512.png +0 -0
- package/dist/index.html +42 -0
- package/dist/manifest.webmanifest +37 -0
- package/dist/sw.js +81 -0
- package/package.json +62 -4
- package/packages/cli/app/agent-host.js +163 -0
- package/packages/cli/app/desktop.js +77 -0
- package/packages/cli/app/fix-node-pty.js +52 -0
- package/packages/cli/app/import-companion-key.js +57 -0
- package/packages/cli/app/install-desktop.js +4 -0
- package/packages/cli/app/launch.js +134 -0
- package/packages/cli/app/restart.js +32 -0
- package/packages/cli/commands/logs.js +10 -0
- package/packages/cli/commands/open.js +49 -0
- package/packages/cli/commands/projects.js +18 -0
- package/packages/cli/commands/run.js +39 -0
- package/packages/cli/commands/search.js +19 -0
- package/packages/cli/commands/server.js +32 -0
- package/packages/cli/commands/status.js +42 -0
- package/packages/cli/common/output.js +13 -0
- package/packages/cli/modules/api/index.js +60 -0
- package/packages/cli/modules/arguments/index.js +188 -0
- package/packages/cli/modules/command-runtime/index.js +24 -0
- package/packages/cli/modules/projects/index.js +118 -0
- package/packages/cli/modules/server/index.js +226 -0
- package/packages/cli/modules/server-process/index.js +204 -0
- package/packages/core/modules/agent-features/index.js +8 -0
- package/packages/core/modules/agent-judge/index.js +73 -0
- package/packages/core/modules/agent-read/index.js +25 -0
- package/packages/core/modules/agent-role/index.js +187 -0
- package/packages/core/modules/agent-task/contract.js +34 -0
- package/packages/core/modules/agent-task/index.js +1 -0
- package/packages/core/modules/agent-widgets/bars/index.js +11 -0
- package/packages/core/modules/agent-widgets/button/index.js +19 -0
- package/packages/core/modules/agent-widgets/card/index.js +13 -0
- package/packages/core/modules/agent-widgets/checks/index.js +19 -0
- package/packages/core/modules/agent-widgets/chips/index.js +15 -0
- package/packages/core/modules/agent-widgets/columns/index.js +12 -0
- package/packages/core/modules/agent-widgets/donut/index.js +11 -0
- package/packages/core/modules/agent-widgets/field/index.js +39 -0
- package/packages/core/modules/agent-widgets/form/index.js +18 -0
- package/packages/core/modules/agent-widgets/git-info/index.js +29 -0
- package/packages/core/modules/agent-widgets/image/index.js +22 -0
- package/packages/core/modules/agent-widgets/inline-icon/index.js +45 -0
- package/packages/core/modules/agent-widgets/input/index.js +16 -0
- package/packages/core/modules/agent-widgets/intelligent-form/index.js +32 -0
- package/packages/core/modules/agent-widgets/line/index.js +12 -0
- package/packages/core/modules/agent-widgets/row/index.js +11 -0
- package/packages/core/modules/agent-widgets/safe-secret-show/index.js +21 -0
- package/packages/core/modules/agent-widgets/slider/index.js +18 -0
- package/packages/core/modules/agent-widgets/stat/index.js +16 -0
- package/packages/core/modules/agent-widgets/steps/index.js +14 -0
- package/packages/core/modules/agent-widgets/tab/index.js +12 -0
- package/packages/core/modules/agent-widgets/tabs/index.js +24 -0
- package/packages/core/modules/agents-integration/claude/index.js +1 -0
- package/packages/core/modules/agents-integration/codex/index.js +1 -0
- package/packages/core/modules/agents-integration/cursor/index.js +1 -0
- package/packages/core/modules/agents-integration/kimi/index.js +1 -0
- package/packages/core/modules/agents-integration/opencode/index.js +1 -0
- package/packages/core/modules/app-paths/index.js +14 -0
- package/packages/core/modules/app-paths/logs.js +194 -0
- package/packages/core/modules/app-paths/network-mode.js +24 -0
- package/packages/core/modules/app-paths/paths.js +40 -0
- package/packages/core/modules/app-paths/server-mode.js +18 -0
- package/packages/core/modules/appearance/index.js +35 -0
- package/packages/core/modules/browser/index.js +86 -0
- package/packages/core/modules/devcontainer/classify.js +101 -0
- package/packages/core/modules/devcontainer/contract.js +1 -0
- package/packages/core/modules/devcontainer/index.js +1 -0
- package/packages/core/modules/directories/contract.js +1 -0
- package/packages/core/modules/directories/index.js +1 -0
- package/packages/core/modules/docker/contract.js +1 -0
- package/packages/core/modules/docker/index.js +1 -0
- package/packages/core/modules/editor-themes/index.js +17 -0
- package/packages/core/modules/environment/index.js +1 -0
- package/packages/core/modules/file-icons/contract.js +177 -0
- package/packages/core/modules/file-icons/index.js +1 -0
- package/packages/core/modules/github/index.js +23 -0
- package/packages/core/modules/gitlab/index.js +164 -0
- package/packages/core/modules/hub/index.js +1 -0
- package/packages/core/modules/hub/protocol.js +19 -0
- package/packages/core/modules/ide/agent-command.js +48 -0
- package/packages/core/modules/ide/command-help.js +73 -0
- package/packages/core/modules/ide/commands.js +191 -0
- package/packages/core/modules/ide/index.js +6 -0
- package/packages/core/modules/ide/keybinding-editor.js +34 -0
- package/packages/core/modules/ide/keybindings.js +45 -0
- package/packages/core/modules/ide/palette.js +33 -0
- package/packages/core/modules/ide/safety.js +10 -0
- package/packages/core/modules/launcher/actions.js +5 -0
- package/packages/core/modules/launcher/index.js +5 -0
- package/packages/core/modules/launcher/launcher-model.js +236 -0
- package/packages/core/modules/launcher/launcher.js +76 -0
- package/packages/core/modules/launcher/query.js +42 -0
- package/packages/core/modules/network-mode/index.js +3 -0
- package/packages/core/modules/network-mode/network-mode.js +8 -0
- package/packages/core/modules/os/bash.js +11 -0
- package/packages/core/modules/os/contract.js +1 -0
- package/packages/core/modules/os/index.js +3 -0
- package/packages/core/modules/os/modules/darwin/catalog.js +108 -0
- package/packages/core/modules/os/modules/darwin/directories.js +40 -0
- package/packages/core/modules/os/modules/darwin/docker.js +15 -0
- package/packages/core/modules/os/modules/darwin/gtk.js +6 -0
- package/packages/core/modules/os/modules/darwin/helper.swift +172 -0
- package/packages/core/modules/os/modules/darwin/index.js +12 -0
- package/packages/core/modules/os/modules/darwin/install-desktop.js +135 -0
- package/packages/core/modules/os/modules/darwin/processes.js +97 -0
- package/packages/core/modules/os/modules/darwin/resident.js +235 -0
- package/packages/core/modules/os/modules/darwin/secrets.js +53 -0
- package/packages/core/modules/os/modules/darwin/shell.js +105 -0
- package/packages/core/modules/os/modules/darwin/shortcut.js +61 -0
- package/packages/core/modules/os/modules/darwin/tools.js +52 -0
- package/packages/core/modules/os/modules/darwin/windows.js +135 -0
- package/packages/core/modules/os/modules/linux/bus.js +48 -0
- package/packages/core/modules/os/modules/linux/catalog.js +47 -0
- package/packages/core/modules/os/modules/linux/directories.js +49 -0
- package/packages/core/modules/os/modules/linux/docker.js +48 -0
- package/packages/core/modules/os/modules/linux/index.js +53 -0
- package/packages/core/modules/os/modules/linux/install-desktop.js +66 -0
- package/packages/core/modules/os/modules/linux/processes.js +85 -0
- package/packages/core/modules/os/modules/linux/resident.js +139 -0
- package/packages/core/modules/os/modules/linux/secrets.js +118 -0
- package/packages/core/modules/os/modules/linux/shortcut.js +124 -0
- package/packages/core/modules/os/modules/linux/tools.js +14 -0
- package/packages/core/modules/os/modules/linux/tray.js +190 -0
- package/packages/core/modules/os/modules/linux/windows.js +187 -0
- package/packages/core/modules/os/modules/windows/agent-process.js +60 -0
- package/packages/core/modules/os/modules/windows/alert.js +20 -0
- package/packages/core/modules/os/modules/windows/catalog.js +91 -0
- package/packages/core/modules/os/modules/windows/color-scheme.js +26 -0
- package/packages/core/modules/os/modules/windows/directories.js +101 -0
- package/packages/core/modules/os/modules/windows/docker.js +17 -0
- package/packages/core/modules/os/modules/windows/git.js +42 -0
- package/packages/core/modules/os/modules/windows/hwnd.js +275 -0
- package/packages/core/modules/os/modules/windows/index.js +28 -0
- package/packages/core/modules/os/modules/windows/install-desktop.js +140 -0
- package/packages/core/modules/os/modules/windows/kill-tree.js +26 -0
- package/packages/core/modules/os/modules/windows/processes.js +300 -0
- package/packages/core/modules/os/modules/windows/ps.js +73 -0
- package/packages/core/modules/os/modules/windows/resident-pipe.js +206 -0
- package/packages/core/modules/os/modules/windows/resident.js +286 -0
- package/packages/core/modules/os/modules/windows/secrets.js +110 -0
- package/packages/core/modules/os/modules/windows/shell.js +288 -0
- package/packages/core/modules/os/modules/windows/shortcut.js +82 -0
- package/packages/core/modules/os/modules/windows/tools.js +273 -0
- package/packages/core/modules/os/modules/windows/windows.js +133 -0
- package/packages/core/modules/os/os.js +175 -0
- package/packages/core/modules/os/session-env.js +11 -0
- package/packages/core/modules/os-posix/agent-process.js +105 -0
- package/packages/core/modules/os-posix/contract.js +1 -0
- package/packages/core/modules/os-posix/git.js +26 -0
- package/packages/core/modules/os-posix/index.js +4 -0
- package/packages/core/modules/os-posix/tools.js +258 -0
- package/packages/core/modules/os-posix/xdg.js +8 -0
- package/packages/core/modules/project/contract.js +1 -0
- package/packages/core/modules/project/index.js +1 -0
- package/packages/core/modules/project/ref.js +126 -0
- package/packages/core/modules/server-mode/index.js +3 -0
- package/packages/core/modules/server-mode/server-mode.js +13 -0
- package/packages/core/modules/terminal/contract.js +1 -0
- package/packages/core/modules/terminal/index.js +1 -0
- package/packages/core/modules/usage-analytics/index.js +80 -0
- package/packages/core/modules/widget-catalog/guide.js +76 -0
- package/packages/core/modules/widget-catalog/index.js +219 -0
- package/packages/core/modules/workspace/changes.js +114 -0
- package/packages/core/modules/workspace/contract.js +1 -0
- package/packages/core/modules/workspace/file-size.js +12 -0
- package/packages/core/modules/workspace/files-exclude.js +119 -0
- package/packages/core/modules/workspace/git-decorations.js +4 -0
- package/packages/core/modules/workspace/git-graph.js +35 -0
- package/packages/core/modules/workspace/index.js +11 -0
- package/packages/core/modules/workspace/paths.js +16 -0
- package/packages/core/modules/workspace/pipeline-status.js +86 -0
- package/packages/core/modules/workspace/pull-requests.js +1 -0
- package/packages/core/modules/workspace/pull-status.js +56 -0
- package/packages/core/modules/workspace/scope.js +34 -0
- package/packages/core/modules/workspace/search.js +28 -0
- package/packages/core/modules/workspace/tree-page.js +25 -0
- package/packages/server/app/agents.js +30 -0
- package/packages/server/app/api.js +159 -0
- package/packages/server/app/claude-runner.js +17 -0
- package/packages/server/app/dev-plugin.js +76 -0
- package/packages/server/app/dev-runtime.js +119 -0
- package/packages/server/app/features.js +35 -0
- package/packages/server/app/plugin.js +140 -0
- package/packages/server/app/projector-runner.js +15 -0
- package/packages/server/app/runtime-contract.js +1 -0
- package/packages/server/app/standalone.js +42 -0
- package/packages/server/app/static.js +57 -0
- package/packages/server/app/widgets-mcp.js +36 -0
- package/packages/server/app/widgets.js +54 -0
- package/packages/server/middlewares/local-origin.js +4 -0
- package/packages/server/modules/access/access.js +118 -0
- package/packages/server/modules/access/connections.js +36 -0
- package/packages/server/modules/access/http.js +93 -0
- package/packages/server/modules/access/hub.js +19 -0
- package/packages/server/modules/access/index.js +6 -0
- package/packages/server/modules/access/lan-url.js +21 -0
- package/packages/server/modules/access/password.js +68 -0
- package/packages/server/modules/access/session.js +38 -0
- package/packages/server/modules/agent/agent-host.js +46 -0
- package/packages/server/modules/agent/agent-runs.js +162 -0
- package/packages/server/modules/agent/attachments.js +88 -0
- package/packages/server/modules/agent/backend.js +1 -0
- package/packages/server/modules/agent/chat-archive.js +67 -0
- package/packages/server/modules/agent/command-bridge.js +94 -0
- package/packages/server/modules/agent/controls.js +10 -0
- package/packages/server/modules/agent/event-streams.js +40 -0
- package/packages/server/modules/agent/history-store.js +320 -0
- package/packages/server/modules/agent/history.js +160 -0
- package/packages/server/modules/agent/hosted-process.js +279 -0
- package/packages/server/modules/agent/hosted-run.js +85 -0
- package/packages/server/modules/agent/hosted-runner.js +126 -0
- package/packages/server/modules/agent/index.js +35 -0
- package/packages/server/modules/agent/injection.js +14 -0
- package/packages/server/modules/agent/jobs-diff.js +114 -0
- package/packages/server/modules/agent/jobs-files.js +65 -0
- package/packages/server/modules/agent/jobs-followup.js +66 -0
- package/packages/server/modules/agent/jobs-live.js +180 -0
- package/packages/server/modules/agent/jobs-store.js +59 -0
- package/packages/server/modules/agent/jobs-worktree.js +161 -0
- package/packages/server/modules/agent/jobs.js +316 -0
- package/packages/server/modules/agent/judge-store.js +21 -0
- package/packages/server/modules/agent/lens-request.js +34 -0
- package/packages/server/modules/agent/queue-store.js +21 -0
- package/packages/server/modules/agent/recent-chats.js +63 -0
- package/packages/server/modules/agent/registry.js +108 -0
- package/packages/server/modules/agent/replay.js +84 -0
- package/packages/server/modules/agent/request.js +132 -0
- package/packages/server/modules/agent/role-store.js +21 -0
- package/packages/server/modules/agent/run-hub.js +105 -0
- package/packages/server/modules/agent/run-request.js +208 -0
- package/packages/server/modules/agent/secret-show.js +108 -0
- package/packages/server/modules/agent/side-request.js +142 -0
- package/packages/server/modules/agent/usage-history.js +62 -0
- package/packages/server/modules/agent/worktrees.js +136 -0
- package/packages/server/modules/agent-features/catalog.js +18 -0
- package/packages/server/modules/agent-features/index.js +2 -0
- package/packages/server/modules/agent-features/store.js +172 -0
- package/packages/server/modules/agent-mcp/index.js +106 -0
- package/packages/server/modules/agent-roles/index.js +3 -0
- package/packages/server/modules/agent-roles/project.js +231 -0
- package/packages/server/modules/agent-roles/runtime.js +68 -0
- package/packages/server/modules/agent-roles/store.js +190 -0
- package/packages/server/modules/agents/acp/acp-backend.js +320 -0
- package/packages/server/modules/agents/acp/acp-client.js +153 -0
- package/packages/server/modules/agents/acp/acp-controls.js +179 -0
- package/packages/server/modules/agents/acp/acp-dialect.js +82 -0
- package/packages/server/modules/agents/acp/acp-elicitation.js +135 -0
- package/packages/server/modules/agents/acp/acp-events.js +340 -0
- package/packages/server/modules/agents/acp/acp-process.js +78 -0
- package/packages/server/modules/agents/acp/acp-programs.js +11 -0
- package/packages/server/modules/agents/acp/acp-tools.js +208 -0
- package/packages/server/modules/agents/acp/index.js +4 -0
- package/packages/server/modules/agents/acp/mcp-config.js +100 -0
- package/packages/server/modules/agents/claude-code/claude-code-backend.js +342 -0
- package/packages/server/modules/agents/claude-code/claude-code-checkpoints.js +97 -0
- package/packages/server/modules/agents/claude-code/claude-code-env.js +46 -0
- package/packages/server/modules/agents/claude-code/claude-code-events.js +299 -0
- package/packages/server/modules/agents/claude-code/claude-code-input.js +97 -0
- package/packages/server/modules/agents/claude-code/claude-code-replay.js +71 -0
- package/packages/server/modules/agents/claude-code/claude-code-sessions.js +207 -0
- package/packages/server/modules/agents/claude-code/claude-code-times.js +42 -0
- package/packages/server/modules/agents/claude-code/index.js +2 -0
- package/packages/server/modules/agents/claude-code/questions.js +51 -0
- package/packages/server/modules/agents/codex/dialect.js +130 -0
- package/packages/server/modules/agents/codex/forms.js +24 -0
- package/packages/server/modules/agents/codex/index.js +17 -0
- package/packages/server/modules/agents/cursor/dialect.js +66 -0
- package/packages/server/modules/agents/cursor/images.js +12 -0
- package/packages/server/modules/agents/cursor/index.js +30 -0
- package/packages/server/modules/agents/cursor/plan.js +44 -0
- package/packages/server/modules/agents/cursor/questions.js +37 -0
- package/packages/server/modules/agents/cursor/selection.js +29 -0
- package/packages/server/modules/agents/cursor/task.js +32 -0
- package/packages/server/modules/agents/cursor/todos.js +69 -0
- package/packages/server/modules/agents/ide-mcp/config.js +40 -0
- package/packages/server/modules/agents/ide-mcp/index.js +1 -0
- package/packages/server/modules/agents/ide-mcp/server.js +154 -0
- package/packages/server/modules/agents/kimi/dialect.js +18 -0
- package/packages/server/modules/agents/kimi/index.js +11 -0
- package/packages/server/modules/agents/opencode/dialect.js +232 -0
- package/packages/server/modules/agents/opencode/index.js +21 -0
- package/packages/server/modules/agents/opencode/read.js +46 -0
- package/packages/server/modules/agents/opencode/sessions.js +69 -0
- package/packages/server/modules/agents/projector/agent-lens.js +110 -0
- package/packages/server/modules/agents/projector/agent-tools.js +290 -0
- package/packages/server/modules/agents/projector/answer-doctor.js +32 -0
- package/packages/server/modules/agents/projector/form-doctor.js +33 -0
- package/packages/server/modules/agents/projector/index.js +12 -0
- package/packages/server/modules/agents/projector/project-instructions.js +34 -0
- package/packages/server/modules/agents/projector/projector-backend.js +350 -0
- package/packages/server/modules/agents/projector/projector-budget.js +70 -0
- package/packages/server/modules/agents/projector/projector-compaction.js +128 -0
- package/packages/server/modules/agents/projector/projector-controls.js +70 -0
- package/packages/server/modules/agents/projector/projector-guard.js +196 -0
- package/packages/server/modules/agents/projector/projector-history.js +87 -0
- package/packages/server/modules/agents/projector/projector-hooks.js +201 -0
- package/packages/server/modules/agents/projector/projector-input.js +40 -0
- package/packages/server/modules/agents/projector/projector-mcp-config.js +1 -0
- package/packages/server/modules/agents/projector/projector-mcp.js +119 -0
- package/packages/server/modules/agents/projector/projector-memory.js +92 -0
- package/packages/server/modules/agents/projector/projector-retry.js +52 -0
- package/packages/server/modules/agents/projector/projector-review.js +40 -0
- package/packages/server/modules/agents/projector/projector-side.js +56 -0
- package/packages/server/modules/agents/projector/projector-skills.js +143 -0
- package/packages/server/modules/agents/projector/projector-task.js +235 -0
- package/packages/server/modules/agents/projector/projector-usage.js +19 -0
- package/packages/server/modules/agents/projector/projector-web-search.js +76 -0
- package/packages/server/modules/agents/projector/projector-web.js +172 -0
- package/packages/server/modules/agents/projector/prompts.js +46 -0
- package/packages/server/modules/agents/projector/secrets/secret-destination.js +226 -0
- package/packages/server/modules/agents/projector/secrets/secret-show.js +23 -0
- package/packages/server/modules/agents/projector/secrets/secret-tools.js +124 -0
- package/packages/server/modules/agents/projector/tool-spec.js +4 -0
- package/packages/server/modules/agents/projector/tool-specs.js +167 -0
- package/packages/server/modules/agents/projector/widgets.js +4 -0
- package/packages/server/modules/agents/widgets-mcp/config.js +34 -0
- package/packages/server/modules/agents/widgets-mcp/index.js +1 -0
- package/packages/server/modules/agents-integration/_/usage-cache.js +19 -0
- package/packages/server/modules/agents-integration/claude/client.js +33 -0
- package/packages/server/modules/agents-integration/claude/index.js +1 -0
- package/packages/server/modules/agents-integration/claude/usage.js +49 -0
- package/packages/server/modules/agents-integration/codex/cli.js +86 -0
- package/packages/server/modules/agents-integration/codex/index.js +1 -0
- package/packages/server/modules/agents-integration/codex/usage.js +45 -0
- package/packages/server/modules/agents-integration/cursor/client.js +40 -0
- package/packages/server/modules/agents-integration/cursor/credentials.js +34 -0
- package/packages/server/modules/agents-integration/cursor/index.js +1 -0
- package/packages/server/modules/agents-integration/cursor/usage.js +59 -0
- package/packages/server/modules/agents-integration/kimi/client.js +48 -0
- package/packages/server/modules/agents-integration/kimi/credential-config.js +167 -0
- package/packages/server/modules/agents-integration/kimi/credentials.js +261 -0
- package/packages/server/modules/agents-integration/kimi/index.js +1 -0
- package/packages/server/modules/agents-integration/kimi/usage.js +149 -0
- package/packages/server/modules/agents-integration/opencode/client.js +30 -0
- package/packages/server/modules/agents-integration/opencode/credentials.js +36 -0
- package/packages/server/modules/agents-integration/opencode/index.js +1 -0
- package/packages/server/modules/agents-integration/opencode/usage.js +47 -0
- package/packages/server/modules/appearance/index.js +38 -0
- package/packages/server/modules/browser/cookies.js +112 -0
- package/packages/server/modules/browser/guard.js +55 -0
- package/packages/server/modules/browser/index.js +2 -0
- package/packages/server/modules/browser/key.js +34 -0
- package/packages/server/modules/browser/proxy.js +255 -0
- package/packages/server/modules/browser/rewrite.js +82 -0
- package/packages/server/modules/devcontainer/discovery.js +85 -0
- package/packages/server/modules/devcontainer/exec.js +81 -0
- package/packages/server/modules/devcontainer/index.js +4 -0
- package/packages/server/modules/devcontainer/launch.js +51 -0
- package/packages/server/modules/devcontainer/state.js +68 -0
- package/packages/server/modules/devcontainer/trust.js +41 -0
- package/packages/server/modules/directories/directories.js +34 -0
- package/packages/server/modules/directories/index.js +1 -0
- package/packages/server/modules/docker/actions.js +121 -0
- package/packages/server/modules/docker/daemon.js +72 -0
- package/packages/server/modules/docker/index.js +4 -0
- package/packages/server/modules/docker/settings.js +127 -0
- package/packages/server/modules/docker/snapshot.js +105 -0
- package/packages/server/modules/environments/execution.js +125 -0
- package/packages/server/modules/environments/index.js +3 -0
- package/packages/server/modules/environments/reconcile.js +62 -0
- package/packages/server/modules/environments/settings.js +58 -0
- package/packages/server/modules/events/implementation.js +85 -0
- package/packages/server/modules/events/index.js +1 -0
- package/packages/server/modules/folder-picker/index.js +1 -0
- package/packages/server/modules/folder-picker/pick-folder.js +2 -0
- package/packages/server/modules/git-import/clone.js +47 -0
- package/packages/server/modules/git-import/container.js +57 -0
- package/packages/server/modules/git-import/import.js +82 -0
- package/packages/server/modules/git-import/index.js +4 -0
- package/packages/server/modules/git-import/jobs.js +68 -0
- package/packages/server/modules/github/api.js +260 -0
- package/packages/server/modules/github/browser.js +185 -0
- package/packages/server/modules/github/clone.js +55 -0
- package/packages/server/modules/github/container.js +15 -0
- package/packages/server/modules/github/discussions.js +141 -0
- package/packages/server/modules/github/emojis.js +14 -0
- package/packages/server/modules/github/history.js +205 -0
- package/packages/server/modules/github/index.js +11 -0
- package/packages/server/modules/github/issues.js +81 -0
- package/packages/server/modules/github/navigation.js +35 -0
- package/packages/server/modules/github/pipelines.js +266 -0
- package/packages/server/modules/github/pulls.js +111 -0
- package/packages/server/modules/github/releases.js +241 -0
- package/packages/server/modules/gitlab/api.js +257 -0
- package/packages/server/modules/gitlab/base.js +24 -0
- package/packages/server/modules/gitlab/blob-search.js +110 -0
- package/packages/server/modules/gitlab/browser.js +296 -0
- package/packages/server/modules/gitlab/clone.js +78 -0
- package/packages/server/modules/gitlab/compare.js +68 -0
- package/packages/server/modules/gitlab/connection.js +55 -0
- package/packages/server/modules/gitlab/container.js +15 -0
- package/packages/server/modules/gitlab/history.js +127 -0
- package/packages/server/modules/gitlab/icon.js +67 -0
- package/packages/server/modules/gitlab/index.js +14 -0
- package/packages/server/modules/gitlab/issues.js +61 -0
- package/packages/server/modules/gitlab/merge-requests.js +287 -0
- package/packages/server/modules/gitlab/navigation.js +187 -0
- package/packages/server/modules/gitlab/oauth.js +250 -0
- package/packages/server/modules/gitlab/pipelines.js +240 -0
- package/packages/server/modules/gitlab/releases.js +226 -0
- package/packages/server/modules/gitlab/search.js +75 -0
- package/packages/server/modules/gitlab/trackers.js +96 -0
- package/packages/server/modules/http/download.js +50 -0
- package/packages/server/modules/http/http.js +8 -0
- package/packages/server/modules/http/index.js +2 -0
- package/packages/server/modules/hub/connector.js +114 -0
- package/packages/server/modules/hub/hub.js +142 -0
- package/packages/server/modules/hub/index.js +1 -0
- package/packages/server/modules/ide/editor-settings.js +37 -0
- package/packages/server/modules/ide/index.js +3 -0
- package/packages/server/modules/ide/keybindings.js +37 -0
- package/packages/server/modules/ide/mcp-bridge.js +150 -0
- package/packages/server/modules/instance/index.js +2 -0
- package/packages/server/modules/instance/instance.js +50 -0
- package/packages/server/modules/integration-store/index.js +2 -0
- package/packages/server/modules/integration-store/list.js +12 -0
- package/packages/server/modules/integration-store/store.js +141 -0
- package/packages/server/modules/judge/approval.js +35 -0
- package/packages/server/modules/judge/index.js +3 -0
- package/packages/server/modules/judge/settings.js +35 -0
- package/packages/server/modules/judge/verdict.js +141 -0
- package/packages/server/modules/launcher/browse.js +29 -0
- package/packages/server/modules/launcher/folders.js +138 -0
- package/packages/server/modules/launcher/hosted-search.js +43 -0
- package/packages/server/modules/launcher/index.js +12 -0
- package/packages/server/modules/launcher/launcher.js +352 -0
- package/packages/server/modules/launcher/potential.js +70 -0
- package/packages/server/modules/launcher/project-entries.js +165 -0
- package/packages/server/modules/network/eu-context.js +29 -0
- package/packages/server/modules/network/index.js +1 -0
- package/packages/server/modules/openai-gateway/config.js +125 -0
- package/packages/server/modules/openai-gateway/gateway.js +178 -0
- package/packages/server/modules/openai-gateway/index.js +7 -0
- package/packages/server/modules/preferences/index.js +7 -0
- package/packages/server/modules/preferences/preferences.js +142 -0
- package/packages/server/modules/processes/index.js +6 -0
- package/packages/server/modules/processes/processes.js +174 -0
- package/packages/server/modules/project-presentation/implementation.js +130 -0
- package/packages/server/modules/project-presentation/index.js +1 -0
- package/packages/server/modules/project-widgets/index.js +210 -0
- package/packages/server/modules/projects/discovery.js +179 -0
- package/packages/server/modules/projects/favicon.js +180 -0
- package/packages/server/modules/projects/index.js +11 -0
- package/packages/server/modules/projects/inspect.js +148 -0
- package/packages/server/modules/projects/remote-icon.js +39 -0
- package/packages/server/modules/projects/store.js +41 -0
- package/packages/server/modules/projects/types.js +1 -0
- package/packages/server/modules/providers/atomic-file.js +29 -0
- package/packages/server/modules/providers/balance.js +125 -0
- package/packages/server/modules/providers/index.js +15 -0
- package/packages/server/modules/providers/kinds.js +24 -0
- package/packages/server/modules/providers/model-list.js +16 -0
- package/packages/server/modules/providers/models.js +124 -0
- package/packages/server/modules/providers/openai-client.js +40 -0
- package/packages/server/modules/providers/provider-seeds.js +39 -0
- package/packages/server/modules/providers/provider-store.js +317 -0
- package/packages/server/modules/providers/quiet-model.js +36 -0
- package/packages/server/modules/providers/secret-obfuscation.js +48 -0
- package/packages/server/modules/providers/thinking.js +105 -0
- package/packages/server/modules/providers/types.js +1 -0
- package/packages/server/modules/restart/index.js +1 -0
- package/packages/server/modules/restart/restart.js +56 -0
- package/packages/server/modules/secrets/index.js +1 -0
- package/packages/server/modules/secrets/vault.js +51 -0
- package/packages/server/modules/spend/index.js +2 -0
- package/packages/server/modules/spend/ledger.js +82 -0
- package/packages/server/modules/spend/store.js +92 -0
- package/packages/server/modules/terminal/drop-files.js +42 -0
- package/packages/server/modules/terminal/index.js +15 -0
- package/packages/server/modules/terminal/link-files.js +44 -0
- package/packages/server/modules/terminal/scenario-folder.js +20 -0
- package/packages/server/modules/terminal/session-state.js +85 -0
- package/packages/server/modules/terminal/socket.js +159 -0
- package/packages/server/modules/terminal/terminal-activity.js +56 -0
- package/packages/server/modules/terminal/terminal-file.js +32 -0
- package/packages/server/modules/terminal/terminal-mouse.js +29 -0
- package/packages/server/modules/terminal/terminal.js +308 -0
- package/packages/server/modules/terminal/terminate.js +68 -0
- package/packages/server/modules/terminal-control/control.js +75 -0
- package/packages/server/modules/terminal-control/handlers.js +10 -0
- package/packages/server/modules/terminal-control/index.js +3 -0
- package/packages/server/modules/terminal-control/shared-socket.js +319 -0
- package/packages/server/modules/terminal-control/socket.js +153 -0
- package/packages/server/modules/transport/implementation.js +24 -0
- package/packages/server/modules/transport/index.js +2 -0
- package/packages/server/modules/transport/router.js +16 -0
- package/packages/server/modules/transport/types.js +1 -0
- package/packages/server/modules/usage-analytics/index.js +4 -0
- package/packages/server/modules/usage-analytics/limits.js +144 -0
- package/packages/server/modules/usage-analytics/overview.js +117 -0
- package/packages/server/modules/usage-analytics/providers.js +120 -0
- package/packages/server/modules/usage-analytics/store.js +152 -0
- package/packages/server/modules/window/desktop.js +24 -0
- package/packages/server/modules/window/index.js +8 -0
- package/packages/server/modules/window/window.js +86 -0
- package/packages/server/modules/workspace/archive.py +109 -0
- package/packages/server/modules/workspace/external-files.js +22 -0
- package/packages/server/modules/workspace/files-exclude.js +73 -0
- package/packages/server/modules/workspace/files.js +332 -0
- package/packages/server/modules/workspace/find-paths.js +92 -0
- package/packages/server/modules/workspace/git-branches.js +159 -0
- package/packages/server/modules/workspace/git-compare.js +121 -0
- package/packages/server/modules/workspace/git-history.js +182 -0
- package/packages/server/modules/workspace/git-sync.js +245 -0
- package/packages/server/modules/workspace/git-tree.js +126 -0
- package/packages/server/modules/workspace/git.js +276 -0
- package/packages/server/modules/workspace/ignored.js +23 -0
- package/packages/server/modules/workspace/import.js +190 -0
- package/packages/server/modules/workspace/index.js +15 -0
- package/packages/server/modules/workspace/paths.js +38 -0
- package/packages/server/modules/workspace/reveal.js +14 -0
- package/packages/server/modules/workspace/search.js +136 -0
- package/packages/server/modules/workspace/site.js +62 -0
- package/packages/server/modules/workspace/watcher.js +176 -0
- package/packages/server/routes/api/agent-answer-repair.js +35 -0
- package/packages/server/routes/api/agent-chats.js +77 -0
- package/packages/server/routes/api/agent-features.js +36 -0
- package/packages/server/routes/api/agent-form-repair.js +35 -0
- package/packages/server/routes/api/agent-hooks.js +35 -0
- package/packages/server/routes/api/agent-jobs.js +322 -0
- package/packages/server/routes/api/agent-judge.js +33 -0
- package/packages/server/routes/api/agent-lens.js +27 -0
- package/packages/server/routes/api/agent-mcp.js +41 -0
- package/packages/server/routes/api/agent-memory.js +33 -0
- package/packages/server/routes/api/agent-project-roles.js +112 -0
- package/packages/server/routes/api/agent-project-widgets.js +67 -0
- package/packages/server/routes/api/agent-roles.js +106 -0
- package/packages/server/routes/api/agent-secret-show.js +87 -0
- package/packages/server/routes/api/agent-side.js +70 -0
- package/packages/server/routes/api/agent-skills.js +31 -0
- package/packages/server/routes/api/agent-web.js +27 -0
- package/packages/server/routes/api/agent-worktrees.js +49 -0
- package/packages/server/routes/api/agent.js +269 -0
- package/packages/server/routes/api/analytics.js +21 -0
- package/packages/server/routes/api/app/hide.js +12 -0
- package/packages/server/routes/api/app/mode.js +49 -0
- package/packages/server/routes/api/app/network.js +54 -0
- package/packages/server/routes/api/app/open.js +33 -0
- package/packages/server/routes/api/app/quit.js +14 -0
- package/packages/server/routes/api/app/restart.js +18 -0
- package/packages/server/routes/api/appearance.js +70 -0
- package/packages/server/routes/api/browser.js +27 -0
- package/packages/server/routes/api/claude.js +15 -0
- package/packages/server/routes/api/codex.js +15 -0
- package/packages/server/routes/api/cursor.js +15 -0
- package/packages/server/routes/api/directories.js +16 -0
- package/packages/server/routes/api/docker.js +74 -0
- package/packages/server/routes/api/events.js +25 -0
- package/packages/server/routes/api/health.js +20 -0
- package/packages/server/routes/api/hub.js +26 -0
- package/packages/server/routes/api/ide/commands.js +72 -0
- package/packages/server/routes/api/ide/editor.js +37 -0
- package/packages/server/routes/api/ide/files-exclude.js +37 -0
- package/packages/server/routes/api/ide/keybindings.js +37 -0
- package/packages/server/routes/api/inspect.js +21 -0
- package/packages/server/routes/api/integrations/[...action].js +201 -0
- package/packages/server/routes/api/integrations/github-browse.js +190 -0
- package/packages/server/routes/api/kimi.js +15 -0
- package/packages/server/routes/api/launcher/icon.js +16 -0
- package/packages/server/routes/api/launcher/launch.js +27 -0
- package/packages/server/routes/api/launcher/search.js +20 -0
- package/packages/server/routes/api/launcher/settings.js +68 -0
- package/packages/server/routes/api/openai.js +94 -0
- package/packages/server/routes/api/opencode.js +15 -0
- package/packages/server/routes/api/pick-folder.js +12 -0
- package/packages/server/routes/api/preview-icon.js +21 -0
- package/packages/server/routes/api/projects/[id]/index.js +240 -0
- package/packages/server/routes/api/projects/[id]/site.js +59 -0
- package/packages/server/routes/api/projects/[id]/terminals.js +38 -0
- package/packages/server/routes/api/projects/[id]/workspace-read.js +126 -0
- package/packages/server/routes/api/projects/[id]/workspace.js +147 -0
- package/packages/server/routes/api/projects/index.js +62 -0
- package/packages/server/routes/api/providers/active.js +12 -0
- package/packages/server/routes/api/providers/balance.js +15 -0
- package/packages/server/routes/api/providers/models.js +19 -0
- package/packages/server/routes/api/providers.js +23 -0
- package/packages/server/routes/api/status.js +11 -0
- package/resources/icons/128.png +0 -0
- package/resources/icons/16.png +0 -0
- package/resources/icons/256.png +0 -0
- package/resources/icons/32.png +0 -0
- package/resources/icons/48.png +0 -0
- package/resources/icons/512.png +0 -0
- package/resources/icons/64.png +0 -0
- package/resources/icons/projector.svg +5 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.ui-heading[data-v-b744cfa3]{margin:0 0 var(--sp-3);font-size:var(--fs-md);font-weight:500}.small[data-v-b744cfa3]{font-size:var(--fs-sm)}.large[data-v-b744cfa3]{font-size:var(--fs-lg)}.semibold[data-v-b744cfa3]{font-weight:600}.secondary[data-v-b744cfa3]{color:var(--text-2)}.danger[data-v-e3d75622]{color:var(--err)}.muted[data-v-e3d75622]{color:var(--muted)}.note[data-v-e3d75622]{padding:var(--sp-2) var(--sp-3);font-size:var(--fs-xs);margin:0}.padded[data-v-e3d75622]{padding:var(--ui-message-padding,var(--sp-3))}.size-2xs[data-v-e3d75622]{font-size:var(--fs-2xs)}.size-xs[data-v-e3d75622]{font-size:var(--fs-xs)}.size-sm[data-v-e3d75622]{font-size:var(--fs-sm)}.flush[data-v-e3d75622]{margin:0}.wrap[data-v-e3d75622]{white-space:pre-wrap;overflow-wrap:anywhere}.ui-control-mono[data-v-cf3d980a]{font-family:var(--mono)}.ui-control-inset[data-v-cf3d980a]:is(input,select,textarea){font-size:var(--fs-xs);color:var(--text);background:var(--bg-sunken);border:1px solid var(--line);border-radius:var(--r-sm);padding:3px 8px}.ui-control-filled[data-v-cf3d980a]{background:var(--bg-2);border:1px solid var(--line);color:var(--text);border-radius:var(--r-sm);padding:var(--sp-2);padding-right:var(--ui-control-padding-right,var(--sp-2));min-width:0}.ui-control-grow[data-v-cf3d980a]{flex:1;min-width:0}.ui-control-swatch[data-v-cf3d980a]:is(input[type=color]){width:28px;height:var(--ui-control-swatch-height,26px);cursor:pointer;background:0 0;padding:2px}.ui-control-swatch-compact[data-v-cf3d980a]{--ui-control-swatch-height:24px}.ui-control-inline-select[data-v-cf3d980a]{width:auto;padding-block:var(--sp-1)}.ui-inline[data-v-7884340d]{gap:var(--inline-gap);display:flex}.ui-inline.inline[data-v-7884340d]{display:inline-flex}.hint[data-v-960e17d6]{color:var(--muted);font-size:var(--ui-hint-font-size,var(--fs-2xs));line-height:var(--lh);margin:0}.wrap[data-v-960e17d6]{overflow-wrap:anywhere}.ui-status-dot[data-v-69b117d7]{width:var(--ui-status-dot-size);height:var(--ui-status-dot-size);border-radius:var(--r-full)}.fixed[data-v-69b117d7]{flex-shrink:0}.inline[data-v-69b117d7]{display:inline-block}.circle[data-v-69b117d7]{border-radius:50%}.success[data-v-69b117d7]{background:var(--run)}.danger[data-v-69b117d7]{background:var(--err)}.warning[data-v-69b117d7]{background:var(--warn)}.muted[data-v-69b117d7]{background:var(--muted)}.faint[data-v-69b117d7]{background:var(--faint)}.ui-frame[data-v-3bebe9b9]{padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--r-md)}.ui-card[data-v-3bebe9b9]{gap:var(--sp-2);padding:var(--sp-3);border:1px solid var(--line-strong);border-radius:var(--r-lg);background:var(--bg-2);font-size:var(--fs-2xs);display:grid}.neutral[data-v-3bebe9b9]{color:var(--muted)}.compact[data-v-3bebe9b9]{padding:var(--sp-2) var(--sp-3)}.notice[data-v-3bebe9b9]{padding:10px 12px}.warning[data-v-3bebe9b9]{border-color:color-mix(in srgb, var(--warn) 40%, var(--bg-2));background:color-mix(in srgb, var(--warn) 8%, var(--bg-2))}.danger[data-v-3bebe9b9]{border-color:color-mix(in srgb, var(--err) 48%, var(--bg-2));background:color-mix(in srgb, var(--err) 8%, var(--bg-2))}.field[data-v-8be752df]{gap:6px;display:grid}.field-label[data-v-8be752df]{color:var(--muted);font-size:var(--fs-2xs);letter-spacing:var(--track-label);text-transform:uppercase}.plain[data-v-8be752df]{gap:var(--sp-2);min-width:0;color:var(--muted)}.field-hint[data-v-8be752df],.field-error[data-v-8be752df]{font-size:var(--fs-2xs);line-height:var(--lh);overflow-wrap:anywhere}.field-hint[data-v-8be752df]{color:var(--muted)}.field-error[data-v-8be752df]{color:var(--err)}.token[data-v-4571a4a7]{gap:var(--sp-2);display:grid}.hub[data-v-838a0fc6]{min-height:100dvh;padding:var(--sp-5);background:var(--bg);place-items:center;display:grid}.content[data-v-838a0fc6]{gap:var(--sp-5);width:min(100%,440px);display:grid}.brand[data-v-838a0fc6]{align-items:center;gap:var(--sp-3);color:var(--text);font-size:var(--fs-lg);font-weight:600;display:flex}.hub-label[data-v-838a0fc6]{margin-left:var(--sp-2);color:var(--muted);font-weight:400}.panel[data-v-838a0fc6]{gap:var(--sp-4);padding:var(--sp-5);color:var(--text)}.login[data-v-838a0fc6]{gap:var(--sp-4);display:grid}.devices[data-v-838a0fc6]{gap:var(--sp-2);display:grid}.device[data-v-838a0fc6]{justify-content:flex-start;gap:var(--sp-3);min-height:48px}.device-state[data-v-838a0fc6]{font-size:var(--fs-2xs);color:var(--muted);margin-left:auto}.empty[data-v-838a0fc6]{padding:var(--sp-3) 0}.footer[data-v-838a0fc6]{text-align:center}.settings[data-v-7570af78],.form[data-v-7570af78]{gap:var(--sp-4);display:grid}.form[data-v-7570af78]{max-width:480px}.hub-nav[data-v-af20bd01]{flex-shrink:0}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#10100f;--bg-2:#171716;--bg-3:#20201c;--bg-4:#2a2a26;--bg-sunken:#0c0c0b;--canvas:#080807;--line:#2c2c28;--line-strong:#46463f;--text:#ecece6;--text-2:#c9c9bf;--muted:#9a9a92;--faint:#80807a;--focus:#d8d2c4;--accent:#b8ab77;--run:#8fbf8a;--err:#d19585;--warn:#c4b386;--info:#7fb0d6;--search:#5c4a1e;--hover:color-mix(in srgb, var(--text) 5%, transparent);--active:color-mix(in srgb, var(--text) 9%, transparent);--selection:#3a3934;--overlay:#0009;--shadow-popover:0 12px 32px #0008;--shadow-modal:0 18px 60px #0009;--sans:"Noto Sans", "DejaVu Sans", "Liberation Sans", system-ui, sans-serif;--mono:"Noto Sans Mono", "DejaVu Sans Mono", ui-monospace, monospace;--fs-2xs:11px;--fs-xs:12px;--fs-sm:13px;--fs-md:15px;--fs-lg:20px;--fs-xl:28px;--lh:1.45;--track-label:.08em;--r-sm:3px;--r-md:6px;--r-lg:10px;--island-gap:var(--sp-2);--r-full:999px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--control-h:32px;--control-h-sm:28px;--t-fast:.12s ease;--t-base:.18s ease;--z-sticky:10;--z-expanded:30;--z-popover:100}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f6f1;--bg-2:#efeee8;--bg-3:#e5e3db;--bg-4:#d9d6cb;--bg-sunken:#fbfaf7;--canvas:#eceae3;--line:#d9d6cc;--line-strong:#b6b2a6;--text:#1d1d1a;--text-2:#38382f;--muted:#5e5e56;--faint:#64645b;--focus:#6d5f2c;--accent:#6f5d24;--run:#2f6b34;--err:#a33b2c;--warn:#795812;--info:#276b93;--search:#f2dfa0;--selection:#cfcabc;--overlay:#0006;--shadow-popover:0 12px 32px #0000001f;--shadow-modal:0 18px 60px #0000002e}[data-theme=contrast]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#000;--bg-2:#080808;--bg-3:#121212;--bg-4:#1e1e1e;--bg-sunken:#000;--canvas:#000;--line:#3d3d3d;--line-strong:#7a7a7a;--text:#fff;--text-2:#ededed;--muted:#c2c2c2;--faint:#a8a8a8;--focus:#ffd45c;--accent:#ffd45c;--run:#7dff9b;--err:#ff9b8a;--warn:#ffd166;--info:#8fd8ff;--search:#4a3a00;--selection:#3d3d3d;--overlay:#000000d9;--shadow-popover:0 12px 32px #000c;--shadow-modal:0 18px 60px #000000e6}*{box-sizing:border-box}html,body,#app{min-height:100%}body{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:var(--fs-md);line-height:var(--lh);margin:0}button,input,textarea,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:default}input,textarea,select{border:1px solid var(--line);border-radius:var(--r-sm);width:100%;padding:var(--sp-2) 10px;transition:border-color var(--t-fast);background:0 0;outline:none}input:hover:not(:disabled,:focus),textarea:hover:not(:disabled,:focus),select:hover:not(:disabled,:focus){border-color:var(--line-strong)}input:focus,textarea:focus,select:focus{border-color:var(--focus)}input::placeholder,textarea::placeholder{color:var(--faint)}input[type=checkbox],input[type=radio],input[type=range],input[type=color]{width:auto;accent-color:var(--focus);padding:0}textarea{resize:vertical;min-height:72px}select{appearance:none;background:linear-gradient(45deg, transparent 50%, var(--muted) 50%) right 14px center / 5px 5px no-repeat, linear-gradient(-45deg, transparent 50%, var(--muted) 50%) right 9px center / 5px 5px no-repeat;padding-right:28px}select option{background:var(--bg-2)}:focus-visible{outline:2px solid var(--focus);outline-offset:1px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:0}::selection{background:var(--selection)}*{scrollbar-color:var(--bg-4) transparent}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (width<=700px),(width<=1050px) and (height<=500px) and (pointer:coarse){:root{--fs-input:16px;--control-h:44px;--control-h-sm:40px}input:not([type=checkbox],[type=radio],[type=range],[type=color]),textarea:not(.xterm-helper-textarea),select{min-height:var(--control-h);font-size:var(--fs-input)}}.u-truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.u-sr-only{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}body .mobile-sheet.mobile-sheet{inset:auto var(--island-gap) max(var(--island-gap), env(safe-area-inset-bottom));overscroll-behavior:contain;border-radius:calc(var(--r-lg) + 4px);width:auto;max-width:none;max-height:min(72dvh,560px);box-shadow:0 0 0 100vmax var(--sheet-scrim,var(--overlay)), var(--shadow-popover);animation:sheet-up var(--t-base);position:fixed;overflow-y:auto}@keyframes sheet-up{0%{opacity:0;transform:translateY(24px)}}.note.error{color:var(--err)}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{V as e,W as t,q as n}from"./shared.esm-bundler-DoSbGLUP.js";import{A as r,D as i,Ft as a,Jt as o,O as s,R as c,Sn as l,St as u,Tt as d,V as f,Xt as p,Y as m,_ as h,at as g,b as _,ht as v,kn as y,lt as ee,nt as b,s as x,t as S,tt as C,v as w,x as T,xt as te,y as E,yn as D}from"./_plugin-vue_export-helper-D62Ebo7D.js";import{E as ne,b as O,n as k,t as A}from"./UiButton-DvucBdmd.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var j=S(r({__name:`UiHeading`,props:{as:{},size:{},spaceAfter:{},spaceBefore:{},weight:{},tone:{}},setup(n){return(r,i)=>(v(),E(d(n.as??`h2`),{class:e([`ui-heading`,{small:n.size===`sm`,large:n.size===`lg`,semibold:n.weight===`semibold`,secondary:n.tone===`secondary`}]),style:t(n.spaceAfter===void 0&&n.spaceBefore===void 0?void 0:{marginBottom:n.spaceAfter===void 0?void 0:n.spaceAfter===0?`0`:`var(--sp-${n.spaceAfter})`,marginTop:n.spaceBefore===void 0?void 0:n.spaceBefore===0?`0`:`var(--sp-${n.spaceBefore})`})},{default:o(()=>[u(r.$slots,`default`,{},void 0,!0)]),_:3},8,[`class`,`style`]))}}),[[`__scopeId`,`data-v-b744cfa3`]]),M=S(r({__name:`UiMessage`,props:{as:{},tone:{},variant:{},size:{},padding:{},flush:{type:Boolean},wrap:{type:Boolean}},setup(n){return(r,i)=>(v(),E(d(n.as??`p`),{class:e([`message`,[n.tone,n.variant,n.size?`size-${n.size}`:void 0,{flush:n.flush,wrap:n.wrap}]]),style:t(n.padding===void 0?void 0:{"--ui-message-padding":`var(--sp-${n.padding})`})},{default:o(()=>[u(r.$slots,`default`,{},void 0,!0)]),_:3},8,[`style`,`class`]))}}),[[`__scopeId`,`data-v-e3d75622`]]),N=Symbol(`ui-control-scope`),P=r({props:{as:{type:String,default:`input`},modelValue:null,value:null,modelModifiers:{type:Object,default:()=>({})},mono:Boolean,grow:Boolean,appearance:String,swatchSize:String},emits:[`update:modelValue`],setup(e,{attrs:t,emit:n,slots:r,expose:i}){let a=m(N,void 0),o=c(),s=l(),u=()=>Object.hasOwn(o.vnode.props??{},`modelValue`)||Object.hasOwn(o.vnode.props??{},`model-value`),d=!1,h={deep:!0,created(...e){d=!1,u()&&(O.created?.(...e),d=!0)},mounted(...e){u()&&O.mounted?.(...e)},beforeUpdate(...e){u()&&(d||=(O.created?.(e[0],e[1],e[2],null),!0),O.beforeUpdate?.(...e))},updated(...e){u()&&O.updated?.(...e)}};return i({get element(){return s.value},focus(e){s.value?.focus(e)},select(){let e=s.value;(e instanceof HTMLInputElement||e instanceof HTMLTextAreaElement)&&e.select()}}),()=>p(f(e.as,{ref:s,...e.value===void 0?{}:{value:e.value},class:{"ui-control-mono":e.mono,"ui-control-grow":e.grow,"ui-control-inset":e.appearance===`inset`,"ui-control-filled":e.appearance===`filled`,"ui-control-swatch":e.appearance===`swatch`&&t.type===`color`,"ui-control-swatch-compact":e.swatchSize===`sm`,"ui-control-inline-select":e.appearance===`inline-select`&&e.as===`select`},style:e.as!==`textarea`&&![`checkbox`,`radio`].includes(String(t.type))?a?.value:void 0,"onUpdate:modelValue":e=>{u()&&n(`update:modelValue`,e)}},r.default?.()),[[h,e.modelValue,void 0,e.modelModifiers]])}}),F=S(P,[[`__scopeId`,`data-v-cf3d980a`]]),I=S(r({__name:`UiInline`,props:{as:{},gap:{},inline:{type:Boolean},align:{},justify:{},wrap:{type:Boolean}},setup(n){return(r,i)=>(v(),E(d(n.as??`div`),{class:e([`ui-inline`,{inline:n.inline}]),style:t({"--inline-gap":n.gap===`none`?`normal`:n.gap&&!Number.isInteger(n.gap)?`${n.gap*4}px`:`var(--sp-${n.gap??2})`,alignItems:n.align??`center`,justifyContent:n.justify===`between`?`space-between`:n.justify??`start`,flexWrap:n.wrap?`wrap`:`nowrap`})},{default:o(()=>[u(r.$slots,`default`,{},void 0,!0)]),_:3},8,[`class`,`style`]))}}),[[`__scopeId`,`data-v-7884340d`]]),L=S(r({__name:`UiHint`,props:{size:{},spaceAfter:{},spaceBefore:{},leading:{},wrap:{type:Boolean}},setup(n){return(r,i)=>(v(),T(`p`,{class:e([`hint`,{wrap:n.wrap}]),style:t({fontSize:n.size?`var(--fs-${n.size})`:void 0,marginTop:n.spaceBefore?`var(--sp-${n.spaceBefore})`:void 0,lineHeight:n.leading===`inherit`?`inherit`:void 0,marginBottom:n.spaceAfter?`var(--sp-${n.spaceAfter})`:void 0})},[u(r.$slots,`default`,{},void 0,!0)],6))}}),[[`__scopeId`,`data-v-960e17d6`]]),R=[{id:`dark`,title:`Тёмная`,description:`Спокойная тёплая тёмная схема Projector.`},{id:`light`,title:`Светлая`,description:`Тёплая светлая схема для яркого окружения.`},{id:`contrast`,title:`Высокий контраст`,description:`Чёрный фон и яркие акценты для максимальной читаемости.`},{id:`auto`,title:`Как в системе`,description:`Следует за светлой или тёмной темой операционной системы.`}],z=`dark`;function B(e){return R.some(t=>t.id===e)}function V(e,t){return e===`auto`?t?`light`:`dark`:e}function re(e){return e===`light`?`light`:`dark`}var ie=l(z),H,U=!1;function ae(){let e=document.documentElement.dataset.appearance;return B(e)?e:z}function oe(e){document.querySelector(`meta[name="color-scheme"]`)?.setAttribute(`content`,re(e));let t=getComputedStyle(document.documentElement).getPropertyValue(`--bg-2`).trim();t&&document.querySelector(`meta[name="theme-color"]`)?.setAttribute(`content`,t)}function W(e){ie.value=e;let t=V(e,H?.matches??!1),n=document.documentElement;return n.dataset.appearance=e,n.dataset.theme=t,oe(t),t}function se(){U||(U=!0,W(ae()),H=window.matchMedia(`(prefers-color-scheme: light)`),H.addEventListener(`change`,()=>{ie.value===`auto`&&W(`auto`)}))}function G(e={}){let t=D(!1),n=e.busy??D(!1),r=e.error??D(``),i=e.status??D(``);async function a(e,i){r.value=``,n.value=!0;try{return await e(),t.value=!0,!0}catch(e){return r.value=e instanceof Error?e.message:i,!1}finally{n.value=!1}}async function o(e,t){n.value=!0,r.value=``,i.value=``;try{let n=await e();return i.value=typeof t.success==`function`?t.success(n):t.success??(typeof n==`string`?n:``),n}catch(e){t.rollback?.(),r.value=e instanceof Error?e.message:t.errorFallback;return}finally{n.value=!1}}function s(e){return o(e,{errorFallback:`Не удалось выполнить`})}return{ready:t,busy:n,error:r,status:i,load:a,perform:o,run:s}}var K=S(r({__name:`UiStatusDot`,props:{as:{},size:{},tone:{},inline:{type:Boolean},shrink:{type:Boolean},radius:{}},setup(n){return(r,i)=>(v(),E(d(n.as??`span`),{class:e([`ui-status-dot`,[n.tone,{inline:n.inline,fixed:!n.shrink,circle:n.radius===`circle`}]]),style:t({"--ui-status-dot-size":`${n.size??7}px`})},null,8,[`class`,`style`]))}}),[[`__scopeId`,`data-v-69b117d7`]]),q=Symbol(`ide-commands`);function J(e,t){let n=m(q);if(!n)throw Error(`IDE command host is not installed`);let r=n.createScope(e,t);g(()=>r.dispose());function i(e,t){r.activate(),r.executeCommand(e,t).catch(n.reportError)}function a(e){if(e.defaultPrevented)return;let t=e.target,n=t instanceof Element&&!!t.closest(`input,textarea,select,[contenteditable="true"]`),a=r.resolveKeybinding(e,n);a&&(e.preventDefault(),e.stopPropagation(),i(a.command,a.args))}function o(e,t,a={}){n.revision.value;let o=r.describe(e,t);if(!o)throw Error(`Unknown menu command: ${e}`);return{id:e,label:a.label??o.title,shortcut:o.shortcut,disabled:!o.enabled,separator:a.separator,danger:a.danger,command:e,args:t,run:()=>i(e,t)}}return{scope:r,run:i,keydown:a,item:o}}function Y(e){if(e===void 0)return{};if(!e||typeof e!=`object`||Array.isArray(e))throw Error(`Аргументы команды должны быть объектом`);return e}function ce(e){let t=[];return g(()=>t.forEach(e=>e())),(n,r,i,a,o,s)=>{t.push(e.registerCommand({id:n,title:r,description:i,arguments:o,run:a,enabled:s}))}}function le(e,t){let n=e[t];if(n!==void 0&&typeof n!=`string`)throw Error(`${t} должен быть строкой`);return n}function X(e=globalThis.location?.pathname??``){return/^\/devices\/[a-z0-9][a-z0-9-]{0,62}(?:\/|$)/.exec(e)?.[0].replace(/\/$/,``)??``}function ue(){let e=X();return e?`/api${e}`:``}function de(e){let t=String(e),n=ue();if(!n)return t;if(t.startsWith(`/api/`)&&!t.startsWith(`/api/devices/`)&&!t.startsWith(`/api/hub/`))return n+t.slice(4);try{let e=new URL(t);if(e.host===location.host&&[`http:`,`https:`,`ws:`,`wss:`].includes(e.protocol))return e.pathname=de(e.pathname),e.href}catch{}return t}function fe(e){if(e.includes(`.tabs.`)){let t=e.split(`.`).at(-1);return{description:`Действие над вкладками области. Без id используется текущая вкладка. Закрытие несохранённого файла может запросить подтверждение.`,arguments:t===`reorder`?{ids:`string[]: все идентификаторы вкладок без повторений в новом порядке`}:t===`rename`?{id:`string (необязательно): идентификатор вкладки`,label:`string (необязательно): новое имя; без label откроется ввод имени`}:{id:`string (необязательно): идентификатор вкладки`}}}if(e.startsWith(`ide.workbench.panel.`))return{description:`Действие над блоком вкладки: разделить вправо или вниз, скрыть блок. Без id используется активная вкладка блока с фокусом. Разделить можно блок минимум с двумя вкладками.`,arguments:{id:`string (необязательно): идентификатор вкладки`}};if(e.startsWith(`ide.fileTree.`)){let t={path:`string (необязательно): путь относительно корня проекта; без него текущая запись дерева`};return t.kind=`string (необязательно): directory для действий над папкой; иначе file`,/\.(create|duplicate|rename|paste)$/.test(e)&&(t.directory=`string (необязательно): каталог назначения относительно корня`),/\.(create|duplicate|rename)$/.test(e)&&(t.name=`string (необязательно): имя записи; без него откроется диалог`),e.endsWith(`.delete`)&&(t.confirm=`boolean: true только при явном запросе пользователя на удаление; иначе диалог подтверждения`),{description:`Действие в дереве файлов текущего проекта. Явный path не зависит от выбранной строки. Файловые операции возвращают source/destination; открытие файла или диалога возвращает после передачи действия UI.`,arguments:/\.(refresh|collapseAll|contextMenu)$/.test(e)?{}:t}}return e.startsWith(`ide.git.`)?{description:`Действие Git в текущем проекте. stage/unstage/discard: path файла, префикс папки или пустая строка для всей группы. discard (в т.ч. для папки) восстанавливает рабочий файл из индекса; untracked переносит в корзину.`,arguments:e.endsWith(`.refresh`)?{}:{path:`string: путь относительно проекта`,staged:`boolean (необязательно): true для индекса, false для рабочей версии`,...e.endsWith(`.discard`)?{confirm:`boolean: true только при явном запросе пользователя на откат; иначе подтверждение`}:{}}}:e.startsWith(`ide.editor.file.`)?{description:`Действие над уже открытым файлом. Без id используется активный файл. file.open открывает рабочую версию активного сравнения.`,arguments:{id:`string (необязательно): идентификатор открытой вкладки`}}:e===`ide.keybindings.save`?{description:`Сохранить сочетание, записанное в открытом диалоге редактора клавиш. Требуется запись с клавиатуры.`,arguments:{}}:e.startsWith(`ide.keybindings.`)?{description:`Действие над видимой строкой редактора клавиш.`,arguments:{command:`string: ID команды строки`,index:`number: индекс её привязки`}}:{description:`Действие в указанной области Projector; использует её текущий UI-контекст.`,arguments:{}}}var pe={Space:` `,Minus:`-`,Equal:`=`,BracketLeft:`[`,BracketRight:`]`,Backslash:`\\`,Semicolon:`;`,Quote:`'`,Backquote:"`",Comma:`,`,Period:`.`,Slash:`/`,IntlBackslash:`\\`};function me(e){let t=e.code??``;return/^Key[A-Z]$/.test(t)?t.slice(3).toLowerCase():/^Digit[0-9]$/.test(t)?t.slice(5):pe[t]??e.key}function he(e,t){return!e||Object.entries(e).every(([e,n])=>t[e]===n)}function ge(e,t){let n=e.toLowerCase().split(`+`),r=n.pop(),i=me(t),a=n.includes(`mod`);return(r===i.toLowerCase()||r===`space`&&i===` `)&&(a?!!(t.ctrlKey||t.metaKey):!!t.ctrlKey===n.includes(`ctrl`))&&(a?!(t.ctrlKey&&t.metaKey):!!t.metaKey===n.includes(`meta`))&&!!t.altKey===n.includes(`alt`)&&!!t.shiftKey===n.includes(`shift`)}function _e(e){if(!Array.isArray(e)||e.length>500)throw Error(`Ожидается список до 500 привязок`);return e.map(e=>{if(!e||typeof e!=`object`||typeof e.command!=`string`||!e.command.trim()||typeof e.key!=`string`||!e.key.trim())throw Error(`Укажите command и key для каждой привязки`);let t=e.key.split(`+`);if(!t.at(-1)||t.slice(0,-1).some(e=>![`mod`,`ctrl`,`meta`,`alt`,`shift`].includes(e.toLowerCase()))||new Set(t.map(e=>e.toLowerCase())).size!==t.length||t.some(e=>e.toLowerCase()===`mod`)&&t.some(e=>[`ctrl`,`meta`].includes(e.toLowerCase())))throw Error(`Некорректная клавиша: ${e.key}`);if(e.when!==void 0&&(!e.when||Array.isArray(e.when)||typeof e.when!=`object`||Object.values(e.when).some(e=>e!==null&&![`string`,`boolean`,`number`].includes(typeof e))))throw Error(`when должен содержать значения ключей контекста`);for(let t of[`disabled`,`allowInput`])if(e[t]!==void 0&&typeof e[t]!=`boolean`)throw Error(`${t} должен быть boolean`);return{key:e.key,command:e.command,...e.when===void 0?{}:{when:{...e.when}},...e.args===void 0?{}:{args:e.args},...e.disabled===void 0?{}:{disabled:e.disabled},...e.allowInput===void 0?{}:{allowInput:e.allowInput}}})}function ve(e=[]){let t=new Map,n=new Set,r=[],i=``,a=()=>{for(let e of n)e()},o=()=>[...e.filter(e=>!r.some(t=>t.command===e.command)),...r].filter(e=>!e.disabled);function s(e,n,r){let i=t.get(e),a=i?.commands.get(n);if(i&&a)return{id:n,title:a.title,description:a.description??fe(n).description,arguments:{...a.arguments??fe(n).arguments},...a.palette===!1?{palette:!1}:{},scope:e,enabled:a.enabled?.(r)??!0,shortcut:o().findLast(e=>e.command===n&&he(e.when,i.context()))?.key.replace(/Mod/g,`Ctrl`)}}async function c(e,n,r={}){let a=r.scope??i,o=t.get(a)?.commands.get(e);if(!o)throw Error(`Команда ${e} не зарегистрирована в области ${a||`(нет активной области)`}`);if(r.signal?.aborted){let e=Error(`Выполнение отменено`);throw e.name=`AbortError`,e}if(!s(a,e,n)?.enabled)throw Error(`Команда ${e} сейчас недоступна`);return await o.run(n,{signal:r.signal})}function l(e,n){if(t.has(e))throw Error(`Область команд ${e} уже зарегистрирована`);let r={context:n,commands:new Map};return t.set(e,r),a(),{id:e,activate(){i=e},registerCommand(e){if(r.commands.has(e.id))throw Error(`Команда ${e.id} уже зарегистрирована`);return r.commands.set(e.id,e),a(),()=>{r.commands.get(e.id)===e&&(r.commands.delete(e.id),a())}},describe:(t,n)=>s(e,t,n),executeCommand:(t,n,r={})=>c(t,n,{...r,scope:e}),resolveKeybinding(t,r=!1){if(t.isComposing||t.repeat)return;let i={...n(),inputFocus:r};return o().findLast(n=>(n.allowInput||!r)&&ge(n.key,t)&&he(n.when,i)&&s(e,n.command,n.args)?.enabled)},dispose(){t.get(e)===r&&(t.delete(e),i===e&&(i=``),a())}}}return{createScope:l,describeCommand:s,executeCommand:c,getCommands:()=>[...t.keys()].flatMap(e=>[...t.get(e).commands.keys()].map(t=>s(e,t))),getActiveScope:()=>i,getScopes:()=>[...t.entries()].map(([e,t])=>({id:e,context:t.context()})),getKeybindings:()=>structuredClone(o()),getDefaultKeybindings:()=>structuredClone(e),getKeybindingOverrides:()=>structuredClone(r),setKeybindings(e){r=_e(e),a()},subscribe(e){return n.add(e),()=>{n.delete(e)}}}}var Z={surface:`fileTree`},ye=[{key:`Mod+Shift+P`,command:`ide.workbench.commandPalette.open`,allowInput:!0},{key:`F1`,command:`ide.workbench.commandPalette.open`,allowInput:!0},{key:`F2`,command:`ide.fileTree.file.rename`,when:{...Z,entryKind:`file`}},{key:`F2`,command:`ide.fileTree.directory.rename`,when:{...Z,entryKind:`directory`}},{key:`Delete`,command:`ide.fileTree.entry.delete`,when:Z},{key:`Mod+C`,command:`ide.fileTree.entry.copy`,when:Z},{key:`Mod+X`,command:`ide.fileTree.entry.cut`,when:Z},{key:`Mod+V`,command:`ide.fileTree.entry.paste`,when:Z},{key:`Enter`,command:`ide.fileTree.file.open`,when:{...Z,entryKind:`file`}},{key:`Enter`,command:`ide.fileTree.directory.toggle`,when:{...Z,entryKind:`directory`}},{key:`Shift+F10`,command:`ide.fileTree.contextMenu`,when:Z},{key:`ContextMenu`,command:`ide.fileTree.contextMenu`,when:Z},{key:`ArrowRight`,command:`ide.workbench.tabs.next`},{key:`ArrowLeft`,command:`ide.workbench.tabs.previous`},{key:`Home`,command:`ide.workbench.tabs.first`},{key:`End`,command:`ide.workbench.tabs.last`},{key:`Shift+F10`,command:`ide.workbench.tabs.contextMenu`},{key:`ContextMenu`,command:`ide.workbench.tabs.contextMenu`},{key:`F2`,command:`ide.workbench.tabs.rename`},{key:`Alt+PageDown`,command:`ide.workbench.tab.next`},{key:`Alt+PageUp`,command:`ide.workbench.tab.previous`},{key:`Mod+S`,command:`ide.editor.file.save`,when:{surface:`editor`},allowInput:!0},{key:`Mod+Shift+L`,command:`ide.editor.selection.toChat`,when:{surface:`editor`},allowInput:!0},{key:`Mod+Shift+M`,command:`ide.editor.markdown.toggleSource`,when:{surface:`editor`},allowInput:!0}],be=new Set(`delete remove rm clear kill stop reset discard revert push pull commit stage unstage merge clone install uninstall password run exec start restart save import write create new rename move add set apply send input login logout shell prune build up down`.split(` `)),xe=new Set(`read result list get info search refresh describe status find more filter open toggle focus show copy recent diff log worktree`.split(` `));function Se(e){let t=e.split(/[.\-_]|(?<=[a-z])(?=[A-Z])/).map(e=>e.toLowerCase());return t.some(e=>xe.has(e))&&!t.some(e=>be.has(e))}var Ce=S(r({__name:`UiCard`,props:{as:{},appearance:{},tone:{},density:{}},setup(t){return(n,r)=>(v(),E(d(t.as??`section`),{class:e(t.appearance===`frame`?`ui-frame`:[`ui-card`,t.tone??`neutral`,t.density??`regular`])},{default:o(()=>[u(n.$slots,`default`,{},void 0,!0)]),_:3},8,[`class`]))}}),[[`__scopeId`,`data-v-3bebe9b9`]]),we=[`id`,`aria-hidden`],Te=[`id`,`aria-hidden`],Q=S(r({__name:`UiField`,props:{label:{},layout:{},as:{},for:{},hint:{},error:{},required:{type:Boolean},gap:{}},setup(r){let s=r,c=a(),l=h(()=>s.for??c),f=h(()=>s.as??(s.layout===`plain`?`label`:`div`)),p=h(()=>({id:l.value,required:s.required||void 0,"aria-invalid":s.error?!0:void 0,"aria-describedby":[s.hint&&`${c}-hint`,s.error&&`${c}-error`].filter(Boolean).join(` `)||void 0}));return(a,s)=>(v(),E(d(f.value),{class:e([`field`,r.layout??`caption`]),for:f.value===`label`?l.value:void 0,style:t(r.gap===void 0?void 0:{gap:`var(--sp-${r.gap})`})},{default:o(()=>[r.layout===`plain`?(v(),T(x,{key:0},[i(n(r.label),1)],64)):(v(),E(d(f.value===`label`?`span`:`label`),{key:1,class:`field-label`,for:f.value===`label`?void 0:l.value},{default:o(()=>[i(n(r.label),1)]),_:1},8,[`for`])),u(a.$slots,`default`,{control:p.value},void 0,!0),r.hint?(v(),T(`span`,{key:2,id:`${y(c)}-hint`,class:`field-hint`,"aria-hidden":f.value===`label`||void 0},n(r.hint),9,we)):_(``,!0),r.error?(v(),T(`span`,{key:3,id:`${y(c)}-error`,class:`field-error`,"aria-hidden":f.value===`label`||void 0},n(r.error),9,Te)):_(``,!0)]),_:3},8,[`class`,`for`,`style`]))}}),[[`__scopeId`,`data-v-8be752df`]]);function Ee(e){return typeof e==`string`&&/^[a-z0-9][a-z0-9-]{0,62}$/.test(e)}function De(e){if(typeof e!=`string`||!e.startsWith(`/devices/`)||e.includes(`\\`))return`/`;try{let t=new URL(e,`https://hub.invalid`);return t.origin!==`https://hub.invalid`||!/^\/devices\/[a-z0-9][a-z0-9-]{0,62}(?:\/|$)/.test(t.pathname)?`/`:t.pathname+t.search+t.hash}catch{return`/`}}async function $(e,t){let n=await fetch(e,{...t,cache:`no-store`}),r=await n.json();if(!n.ok)throw Error(r.error||`Ошибка Hub (${n.status})`);return r}async function Oe(){await $(`/api/hub/session`,{method:`DELETE`}),location.assign(`/login`)}var ke=S(r({__name:`HubToken`,setup(e){let t=D(``),r=D(!1),a=D(``),c=new AbortController,l,u=J(`hub-token`,()=>({surface:`hub`}));function d(){clearTimeout(l),t.value=``}return u.scope.registerCommand({id:`ide.hub.token.show`,title:`Показать токен подключения Hub`,description:`Запрашивает токен для подключения устройств после проверки сессии Hub и показывает его на 30 секунд.`,enabled:()=>!r.value&&!t.value,run:async()=>{r.value=!0,a.value=``;try{let e=await $(`/api/hub/device-token`,{method:`POST`,signal:c.signal});if(c.signal.aborted)return;t.value=e.token,l=setTimeout(d,3e4)}catch{c.signal.aborted||(a.value=`Не удалось показать токен. Проверьте вход в Hub и повторите попытку.`)}finally{r.value=!1}}}),u.scope.registerCommand({id:`ide.hub.token.hide`,title:`Скрыть токен подключения Hub`,description:`Очищает показанный токен подключения устройств.`,enabled:()=>!!t.value,run:d}),g(()=>{c.abort(),d()}),(e,c)=>(v(),T(`section`,{class:`token`,onFocusin:c[2]||=e=>y(u).scope.activate(),onPointerdown:c[3]||=e=>y(u).scope.activate(),onKeydown:c[4]||=(...e)=>y(u).keydown&&y(u).keydown(...e)},[t.value?(v(),E(Q,{key:0,label:`Токен подключения устройств`},{default:o(({control:e})=>[s(F,C(e,{value:t.value,readonly:``,mono:``,autocomplete:`off`,spellcheck:`false`}),null,16,[`value`])]),_:1})):_(``,!0),t.value?(v(),E(A,{key:1,size:`sm`,onClick:c[0]||=e=>y(u).run(`ide.hub.token.hide`)},{default:o(()=>[...c[5]||=[i(`Скрыть токен`,-1)]]),_:1})):(v(),E(A,{key:2,size:`sm`,busy:r.value,onClick:c[1]||=e=>y(u).run(`ide.hub.token.show`)},{default:o(()=>[...c[6]||=[i(`Показать токен подключения`,-1)]]),_:1},8,[`busy`])),s(L,null,{default:o(()=>[...c[7]||=[i(`Для добавления машины в настройках Hub локального Projector. Токен скроется через 30 секунд.`,-1)]]),_:1}),a.value?(v(),E(M,{key:3,tone:`danger`,role:`alert`},{default:o(()=>[i(n(a.value),1)]),_:1})):_(``,!0)],32))}}),[[`__scopeId`,`data-v-4571a4a7`]]),Ae={class:`content`},je={class:`devices`,"aria-label":`Устройства Hub`},Me={class:`device-state`},Ne=S(r({__name:`HubConsole`,setup(e){let t=D(!1),r=D(!0),a=D(!1),c=D(!1),l=D(``),u=D(``),d=D(),f=D([]),p,m=!1,h=De(new URLSearchParams(location.search).get(`next`)),S=J(`hub`,()=>({surface:`hub`,authenticated:t.value}));async function O(){if(!(c.value||m)){c.value=!0;try{let e=await $(`/api/hub/session`);if(m||(t.value=e.authenticated,!e.authenticated))return;let n=await $(`/api/hub/devices`);m||(f.value=n.devices,l.value=``)}catch(e){m||(l.value=e instanceof Error?e.message:`Hub недоступен`)}finally{c.value=!1}}}async function N(){if(!a.value&&u.value){a.value=!0,l.value=``;try{await $(`/api/hub/session`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({password:u.value})}),u.value=``,location.assign(h)}catch(e){l.value=e instanceof Error?e.message:`Не удалось войти`}finally{a.value=!1,l.value&&(await b(),d.value?.focus(),d.value?.select())}}}return S.scope.registerCommand({id:`ide.hub.login`,title:`Войти в Hub`,description:`Проверяет пароль и открывает устройства или страницу, с которой был запрошен вход.`,enabled:()=>!a.value&&!!u.value,run:N}),S.scope.registerCommand({id:`ide.hub.devices.refresh`,title:`Обновить устройства Hub`,description:`Перечитывает список устройств и состояние их подключений.`,enabled:()=>t.value&&!c.value,run:O}),S.scope.registerCommand({id:`ide.hub.device.open`,title:`Открыть устройство`,description:`Открывает Projector на подключённой машине в отдельном контексте страницы.`,arguments:{deviceId:`string: id подключённого устройства`},run:e=>{let{deviceId:t}=Y(e);if(!Ee(t)||!f.value.some(e=>e.id===t&&e.online))throw Error(`Устройство недоступно`);location.assign(`/devices/${t}/`)}}),S.scope.registerCommand({id:`ide.hub.logout`,title:`Выйти из Hub`,description:`Отзывает текущую сессию браузера и закрывает её соединения с устройствами. Задания и терминалы остаются на устройствах.`,run:async()=>{try{await Oe(),t.value=!1}catch{l.value=`Не удалось выйти. Повторите попытку.`}}}),ee(async()=>{await O(),!m&&(r.value=!1,t.value&&location.pathname===`/login`&&h!==`/`?location.replace(h):(await b(),d.value?.focus(),p=setInterval(()=>{t.value&&O()},5e3)))}),g(()=>{m=!0,clearInterval(p)}),(e,p)=>(v(),T(`main`,{class:`hub`,onFocusin:p[4]||=e=>y(S).scope.activate(),onPointerdown:p[5]||=e=>y(S).scope.activate(),onKeydown:p[6]||=(...e)=>y(S).keydown&&y(S).keydown(...e)},[w(`div`,Ae,[p[16]||=w(`header`,{class:`brand`},[w(`img`,{src:`/favicon.svg`,alt:``,width:`28`,height:`28`}),w(`span`,null,[i(`projector`),w(`span`,{class:`hub-label`},`hub`)])],-1),s(Ce,{class:`panel`},{default:o(()=>[r.value?(v(),E(k,{key:0,label:`Подключение к Hub`})):t.value?(v(),T(x,{key:2},[s(I,{justify:`between`},{default:o(()=>[s(j,{as:`h1`},{default:o(()=>[...p[10]||=[i(`Устройства`,-1)]]),_:1}),s(A,{size:`sm`,appearance:`quiet`,onClick:p[2]||=e=>y(S).run(`ide.hub.logout`)},{default:o(()=>[...p[11]||=[i(`Выйти`,-1)]]),_:1})]),_:1}),s(L,null,{default:o(()=>[...p[12]||=[i(`Выберите машину, с которой хотите работать.`,-1)]]),_:1}),l.value?(v(),E(M,{key:0,tone:`danger`,role:`alert`},{default:o(()=>[i(n(l.value),1)]),_:1})):_(``,!0),w(`div`,je,[(v(!0),T(x,null,te(f.value,e=>(v(),E(A,{key:e.id,class:`device`,disabled:!e.online,onClick:t=>y(S).run(`ide.hub.device.open`,{deviceId:e.id})},{default:o(()=>[s(K,{tone:e.online?`success`:`muted`},null,8,[`tone`]),w(`strong`,null,n(e.name),1),w(`span`,Me,n(e.online?`Подключено`:`Не в сети`),1)]),_:2},1032,[`disabled`,`onClick`]))),128)),f.value.length?_(``,!0):(v(),E(L,{key:0,class:`empty`},{default:o(()=>[...p[13]||=[i(`Нет подключённых устройств. Откройте настройки Hub в локальном Projector, чтобы подключить машину.`,-1)]]),_:1}))]),s(A,{size:`sm`,busy:c.value,onClick:p[3]||=e=>y(S).run(`ide.hub.devices.refresh`)},{default:o(()=>[...p[14]||=[i(`Обновить`,-1)]]),_:1},8,[`busy`]),s(ke)],64)):(v(),T(x,{key:1},[s(j,{as:`h1`,size:`lg`},{default:o(()=>[...p[7]||=[i(`Вход в Hub`,-1)]]),_:1}),s(L,null,{default:o(()=>[...p[8]||=[i(`Войдите, чтобы открыть Projector на подключённых устройствах.`,-1)]]),_:1}),w(`form`,{class:`login`,onSubmit:p[1]||=ne(e=>y(S).run(`ide.hub.login`),[`prevent`])},[s(Q,{label:`Пароль`,required:``},{default:o(({control:e})=>[s(F,C(e,{ref_key:`input`,ref:d,modelValue:u.value,"onUpdate:modelValue":p[0]||=e=>u.value=e,type:`password`,autocomplete:`current-password`,disabled:a.value}),null,16,[`modelValue`,`disabled`])]),_:1}),l.value?(v(),E(M,{key:0,tone:`danger`,role:`alert`},{default:o(()=>[i(n(l.value),1)]),_:1})):_(``,!0),s(A,{type:`submit`,appearance:`solid`,busy:a.value,disabled:!u.value},{default:o(()=>[...p[9]||=[i(`Войти`,-1)]]),_:1},8,[`busy`,`disabled`])],32)],64))]),_:1}),s(L,{class:`footer`},{default:o(()=>[...p[15]||=[i(`Ваши проекты и задания остаются на ваших устройствах.`,-1)]]),_:1})])],32))}}),[[`__scopeId`,`data-v-838a0fc6`]]),Pe=[`value`],Fe=S(r({__name:`HubSettings`,setup(e){let t=l(),r=D(``),a=D(``),c=D(``),u=D(``),d=!!X(),{ready:f,busy:p,error:m,status:b,load:S,perform:O}=G(),k=J(`hub-settings`,()=>({surface:`hub-settings`,online:t.value?.online??!1})),N,P=new AbortController,R=h(()=>!!a.value.trim()&&Ee(c.value)&&(!!u.value||t.value?.connections.some(e=>e.url===a.value.replace(/\/$/,``))));async function z(e=!1){let n=await $(`/api/hub`,{signal:P.signal});P.signal.aborted||(t.value=n,e&&B(n.url??n.connections[0]?.url??``))}function B(e){r.value=e;let n=t.value?.connections.find(t=>t.url===e);a.value=n?.url??``,c.value=n?.deviceId??``,u.value=``}async function V(e){await O(async()=>{t.value=await $(`/api/hub`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e),signal:P.signal}),r.value&&!t.value.connections.some(e=>e.url===r.value)&&B(``)},{errorFallback:`Не удалось изменить подключение Hub`})}async function re(){await O(async()=>{let e=await $(`/api/hub`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({action:`save`,url:a.value.trim(),deviceId:c.value,token:u.value}),signal:P.signal});P.signal.aborted||(t.value=e,B(new URL(a.value.trim()).origin),u.value=``)},{errorFallback:`Не удалось подключиться к Hub`,success:`Подключение сохранено`})}return k.scope.registerCommand({id:`ide.hub.connection.save`,title:`Сохранить Hub`,description:`Сохраняет адрес Hub, id устройства и токен. Для подключения выберите сохранённый Hub.`,enabled:()=>f.value&&!p.value&&!!R.value,run:re}),k.scope.registerCommand({id:`ide.hub.connection.select`,title:`Выбрать сохранённый Hub`,description:`Выбирает Hub для редактирования или очищает форму для нового подключения.`,arguments:{url:`string: адрес сохранённого Hub или пустая строка`},run:e=>{let{url:n}=Y(e);if(typeof n!=`string`||n&&!t.value?.connections.some(e=>e.url===n))throw Error(`Hub не найден`);B(n)}}),k.scope.registerCommand({id:`ide.hub.connection.activate`,title:`Подключить выбранный Hub`,description:`Отключает предыдущий туннель и подключает выбранный Hub, сохраняя терминалы и задания.`,enabled:()=>!p.value&&!!r.value&&t.value?.url!==r.value,run:()=>V({action:`activate`,url:r.value})}),k.scope.registerCommand({id:`ide.hub.connection.delete`,title:`Удалить сохранённый Hub`,description:`Удаляет выбранное подключение и его токен; активный туннель отключается.`,enabled:()=>!p.value&&!!r.value,run:()=>V({action:`delete`,url:r.value})}),k.scope.registerCommand({id:`ide.hub.connection.disconnect`,title:`Отключить Projector от Hub`,description:`Останавливает туннель, сохраняя Hub и токен для следующего подключения.`,enabled:()=>!p.value&&!!t.value?.enabled,run:()=>V({enabled:!1})}),k.scope.registerCommand({id:`ide.hub.open`,title:`Открыть Hub`,description:`Открывает интерфейс настроенного Hub в новой вкладке браузера.`,enabled:()=>!!r.value,run:()=>{r.value&&window.open(r.value,`_blank`,`noopener,noreferrer`)}}),ee(async()=>{d||(await S(()=>z(!0),`Не удалось загрузить подключение Hub`),P.signal.aborted||(N=setInterval(()=>{p.value||z().catch(()=>{})},3e3)))}),g(()=>{P.abort(),clearInterval(N)}),(e,l)=>(v(),T(`section`,{class:`settings`,onFocusin:l[9]||=e=>y(k).scope.activate(),onPointerdown:l[10]||=e=>y(k).scope.activate(),onKeydown:l[11]||=(...e)=>y(k).keydown&&y(k).keydown(...e)},[s(j,{as:`h2`,size:`sm`},{default:o(()=>[...l[12]||=[i(`Подключения к Hub`,-1)]]),_:1}),d?(v(),E(L,{key:0},{default:o(()=>[...l[13]||=[i(`Подключение управляется в локальном Projector на этой машине.`,-1)]]),_:1})):(v(),T(x,{key:1},[s(L,null,{default:o(()=>[...l[14]||=[i(`Hub даёт доступ к этой машине через общий веб-интерфейс. Локальный сервер остаётся доступным по своему адресу.`,-1)]]),_:1}),s(Q,{label:`Сохранённые хабы`,hint:`Одновременно активно только одно подключение.`},{default:o(({control:e})=>[s(F,C(e,{as:`select`,"model-value":r.value,disabled:!y(f)||y(p),"onUpdate:modelValue":l[0]||=e=>y(k).run(`ide.hub.connection.select`,{url:e})}),{default:o(()=>[l[15]||=w(`option`,{value:``},`Новый Hub`,-1),(v(!0),T(x,null,te(t.value?.connections,e=>(v(),T(`option`,{key:e.url,value:e.url},n(e.url)+n(t.value?.url===e.url?` · активен`:``),9,Pe))),128))]),_:1},16,[`model-value`,`disabled`])]),_:1}),r.value?(v(),E(I,{key:0,wrap:``},{default:o(()=>[s(A,{disabled:y(p)||t.value?.url===r.value,onClick:l[1]||=e=>y(k).run(`ide.hub.connection.activate`)},{default:o(()=>[...l[16]||=[i(`Подключить`,-1)]]),_:1},8,[`disabled`]),s(A,{disabled:y(p),onClick:l[2]||=e=>y(k).run(`ide.hub.open`)},{default:o(()=>[...l[17]||=[i(`Открыть Hub`,-1)]]),_:1},8,[`disabled`]),s(A,{disabled:y(p),onClick:l[3]||=e=>y(k).run(`ide.hub.connection.delete`)},{default:o(()=>[...l[18]||=[i(`Удалить`,-1)]]),_:1},8,[`disabled`])]),_:1})):_(``,!0),t.value?.url?(v(),E(L,{key:1},{default:o(()=>[i(`Активный Hub: `+n(t.value.url),1)]),_:1})):_(``,!0),t.value?(v(),E(I,{key:2,role:`status`},{default:o(()=>[s(K,{tone:t.value.online?`success`:t.value.enabled?`warning`:`muted`},null,8,[`tone`]),i(n(t.value.online?`Подключено`:t.value.enabled?`Ожидание подключения`:`Не подключено`),1)]),_:1})):_(``,!0),t.value?.error?(v(),E(M,{key:3,tone:`danger`,role:`status`},{default:o(()=>[i(n(t.value.error),1)]),_:1})):_(``,!0),w(`form`,{class:`form`,onSubmit:l[8]||=ne(e=>y(k).run(`ide.hub.connection.save`),[`prevent`])},[s(Q,{label:`Адрес Hub`,hint:`HTTPS-адрес; для localhost также разрешён HTTP.`,required:``},{default:o(({control:e})=>[s(F,C(e,{modelValue:a.value,"onUpdate:modelValue":l[4]||=e=>a.value=e,type:`url`,placeholder:`https://hub.example.com`,disabled:y(p)}),null,16,[`modelValue`,`disabled`])]),_:1}),s(Q,{label:`ID устройства`,hint:`Латинские строчные буквы, цифры и дефис. Стабильное имя этой машины.`,required:``},{default:o(({control:e})=>[s(F,C(e,{modelValue:c.value,"onUpdate:modelValue":l[5]||=e=>c.value=e,pattern:`[a-z0-9][a-z0-9\\-]{0,62}`,maxlength:`63`,placeholder:`workstation`,disabled:y(p)}),null,16,[`modelValue`,`disabled`])]),_:1}),s(Q,{label:`Токен подключения`,hint:r.value?`Оставьте пустым, чтобы сохранить существующий токен для этого Hub.`:`Токен устройства, настроенный на Hub; отличается от пароля входа.`},{default:o(({control:e})=>[s(F,C(e,{modelValue:u.value,"onUpdate:modelValue":l[6]||=e=>u.value=e,type:`password`,autocomplete:`new-password`,disabled:y(p)}),null,16,[`modelValue`,`disabled`])]),_:1},8,[`hint`]),s(I,{wrap:``},{default:o(()=>[s(A,{type:`submit`,appearance:`solid`,busy:y(p),disabled:!y(f)||!R.value},{default:o(()=>[i(n(r.value?`Сохранить`:`Добавить Hub`),1)]),_:1},8,[`busy`,`disabled`]),t.value?.enabled?(v(),E(A,{key:0,disabled:y(p),onClick:l[7]||=e=>y(k).run(`ide.hub.connection.disconnect`)},{default:o(()=>[...l[19]||=[i(`Отключить`,-1)]]),_:1},8,[`disabled`])):_(``,!0)]),_:1})],32),y(m)||y(b)?(v(),E(M,{key:4,tone:y(m)?`danger`:void 0,role:`status`},{default:o(()=>[i(n(y(m)||y(b)),1)]),_:1},8,[`tone`])):_(``,!0)],64))],32))}}),[[`__scopeId`,`data-v-7570af78`]]),Ie=S(r({__name:`HubNavigation`,setup(e){let t=h(()=>X().split(`/`)[2]),r=J(`hub-navigation`,()=>({surface:`hub-navigation`,device:t.value??``}));return r.scope.registerCommand({id:`ide.hub.devices.open`,title:`Устройства Hub`,description:`Возвращает к списку устройств Hub. Текущие задания и терминалы продолжают работать на машине.`,run:()=>location.assign(`/`)}),r.scope.registerCommand({id:`ide.hub.logout`,title:`Выйти из Hub`,description:`Отзывает текущую сессию Hub и закрывает её удалённые соединения.`,run:Oe}),(e,a)=>t.value?(v(),E(I,{key:0,class:`hub-nav`,onFocusin:a[2]||=e=>y(r).scope.activate(),onPointerdown:a[3]||=e=>y(r).scope.activate(),onKeydown:y(r).keydown},{default:o(()=>[s(A,{size:`sm`,appearance:`quiet`,title:`Устройства Hub · ${t.value}`,onClick:a[0]||=e=>y(r).run(`ide.hub.devices.open`)},{default:o(()=>[i(`Hub · `+n(t.value),1)]),_:1},8,[`title`]),s(A,{size:`sm`,appearance:`quiet`,onClick:a[1]||=e=>y(r).run(`ide.hub.logout`)},{default:o(()=>[...a[4]||=[i(`Выйти`,-1)]]),_:1})]),_:1},8,[`onKeydown`])):_(``,!0)}}),[[`__scopeId`,`data-v-af20bd01`]]);export{M as A,se as C,I as D,L as E,F as O,ae as S,B as T,ce as _,Ce as a,G as b,ve as c,ue as d,X as f,le as g,q as h,Q as i,j,N as k,_e as l,Y as m,Fe as n,Se as o,de as p,Ne as r,ye as s,Ie as t,me as u,J as v,R as w,W as x,K as y};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=`a.abbr.address.area.article.aside.audio.b.base.bdi.bdo.bgsound.blockquote.body.br.button.canvas.caption.cite.code.col.colgroup.data.datalist.dd.del.details.dfn.div.dl.dt.em.embed.fieldset.figcaption.figure.footer.form.h1.h2.h3.h4.h5.h6.head.header.hgroup.hr.html.i.iframe.img.input.ins.kbd.keygen.label.legend.li.link.main.map.mark.marquee.menu.menuitem.meta.meter.nav.nobr.noframes.noscript.object.ol.optgroup.option.output.p.param.pre.progress.q.rp.rt.ruby.s.samp.script.section.select.small.source.span.strong.style.sub.summary.sup.table.tbody.td.textarea.tfoot.th.thead.time.tr.track.u.ul.var.video`.split(`.`),t=[`domain`,`regexp`,`url-prefix`,`url`],n=[`all`,`aural`,`braille`,`handheld`,`print`,`projection`,`screen`,`tty`,`tv`,`embossed`],r=`width.min-width.max-width.height.min-height.max-height.device-width.min-device-width.max-device-width.device-height.min-device-height.max-device-height.aspect-ratio.min-aspect-ratio.max-aspect-ratio.device-aspect-ratio.min-device-aspect-ratio.max-device-aspect-ratio.color.min-color.max-color.color-index.min-color-index.max-color-index.monochrome.min-monochrome.max-monochrome.resolution.min-resolution.max-resolution.scan.grid.dynamic-range.video-dynamic-range`.split(`.`),i=`align-content.align-items.align-self.alignment-adjust.alignment-baseline.anchor-point.animation.animation-delay.animation-direction.animation-duration.animation-fill-mode.animation-iteration-count.animation-name.animation-play-state.animation-timing-function.appearance.azimuth.backface-visibility.background.background-attachment.background-clip.background-color.background-image.background-origin.background-position.background-repeat.background-size.baseline-shift.binding.bleed.bookmark-label.bookmark-level.bookmark-state.bookmark-target.border.border-bottom.border-bottom-color.border-bottom-left-radius.border-bottom-right-radius.border-bottom-style.border-bottom-width.border-collapse.border-color.border-image.border-image-outset.border-image-repeat.border-image-slice.border-image-source.border-image-width.border-left.border-left-color.border-left-style.border-left-width.border-radius.border-right.border-right-color.border-right-style.border-right-width.border-spacing.border-style.border-top.border-top-color.border-top-left-radius.border-top-right-radius.border-top-style.border-top-width.border-width.bottom.box-decoration-break.box-shadow.box-sizing.break-after.break-before.break-inside.caption-side.clear.clip.color.color-profile.column-count.column-fill.column-gap.column-rule.column-rule-color.column-rule-style.column-rule-width.column-span.column-width.columns.content.counter-increment.counter-reset.crop.cue.cue-after.cue-before.cursor.direction.display.dominant-baseline.drop-initial-after-adjust.drop-initial-after-align.drop-initial-before-adjust.drop-initial-before-align.drop-initial-size.drop-initial-value.elevation.empty-cells.fit.fit-position.flex.flex-basis.flex-direction.flex-flow.flex-grow.flex-shrink.flex-wrap.float.float-offset.flow-from.flow-into.font.font-feature-settings.font-family.font-kerning.font-language-override.font-size.font-size-adjust.font-stretch.font-style.font-synthesis.font-variant.font-variant-alternates.font-variant-caps.font-variant-east-asian.font-variant-ligatures.font-variant-numeric.font-variant-position.font-weight.grid.grid-area.grid-auto-columns.grid-auto-flow.grid-auto-position.grid-auto-rows.grid-column.grid-column-end.grid-column-start.grid-row.grid-row-end.grid-row-start.grid-template.grid-template-areas.grid-template-columns.grid-template-rows.hanging-punctuation.height.hyphens.icon.image-orientation.image-rendering.image-resolution.inline-box-align.justify-content.left.letter-spacing.line-break.line-height.line-stacking.line-stacking-ruby.line-stacking-shift.line-stacking-strategy.list-style.list-style-image.list-style-position.list-style-type.margin.margin-bottom.margin-left.margin-right.margin-top.marker-offset.marks.marquee-direction.marquee-loop.marquee-play-count.marquee-speed.marquee-style.max-height.max-width.min-height.min-width.move-to.nav-down.nav-index.nav-left.nav-right.nav-up.object-fit.object-position.opacity.order.orphans.outline.outline-color.outline-offset.outline-style.outline-width.overflow.overflow-style.overflow-wrap.overflow-x.overflow-y.padding.padding-bottom.padding-left.padding-right.padding-top.page.page-break-after.page-break-before.page-break-inside.page-policy.pause.pause-after.pause-before.perspective.perspective-origin.pitch.pitch-range.play-during.position.presentation-level.punctuation-trim.quotes.region-break-after.region-break-before.region-break-inside.region-fragment.rendering-intent.resize.rest.rest-after.rest-before.richness.right.rotation.rotation-point.ruby-align.ruby-overhang.ruby-position.ruby-span.shape-image-threshold.shape-inside.shape-margin.shape-outside.size.speak.speak-as.speak-header.speak-numeral.speak-punctuation.speech-rate.stress.string-set.tab-size.table-layout.target.target-name.target-new.target-position.text-align.text-align-last.text-decoration.text-decoration-color.text-decoration-line.text-decoration-skip.text-decoration-style.text-emphasis.text-emphasis-color.text-emphasis-position.text-emphasis-style.text-height.text-indent.text-justify.text-outline.text-overflow.text-shadow.text-size-adjust.text-space-collapse.text-transform.text-underline-position.text-wrap.top.transform.transform-origin.transform-style.transition.transition-delay.transition-duration.transition-property.transition-timing-function.unicode-bidi.vertical-align.visibility.voice-balance.voice-duration.voice-family.voice-pitch.voice-range.voice-rate.voice-stress.voice-volume.volume.white-space.widows.width.will-change.word-break.word-spacing.word-wrap.z-index.clip-path.clip-rule.mask.enable-background.filter.flood-color.flood-opacity.lighting-color.stop-color.stop-opacity.pointer-events.color-interpolation.color-interpolation-filters.color-rendering.fill.fill-opacity.fill-rule.image-rendering.marker.marker-end.marker-mid.marker-start.shape-rendering.stroke.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke-width.text-rendering.baseline-shift.dominant-baseline.glyph-orientation-horizontal.glyph-orientation-vertical.text-anchor.writing-mode.font-smoothing.osx-font-smoothing`.split(`.`),a=[`scrollbar-arrow-color`,`scrollbar-base-color`,`scrollbar-dark-shadow-color`,`scrollbar-face-color`,`scrollbar-highlight-color`,`scrollbar-shadow-color`,`scrollbar-3d-light-color`,`scrollbar-track-color`,`shape-inside`,`searchfield-cancel-button`,`searchfield-decoration`,`searchfield-results-button`,`searchfield-results-decoration`,`zoom`],o=[`font-family`,`src`,`unicode-range`,`font-variant`,`font-feature-settings`,`font-stretch`,`font-weight`,`font-style`],s=`aliceblue.antiquewhite.aqua.aquamarine.azure.beige.bisque.black.blanchedalmond.blue.blueviolet.brown.burlywood.cadetblue.chartreuse.chocolate.coral.cornflowerblue.cornsilk.crimson.cyan.darkblue.darkcyan.darkgoldenrod.darkgray.darkgreen.darkkhaki.darkmagenta.darkolivegreen.darkorange.darkorchid.darkred.darksalmon.darkseagreen.darkslateblue.darkslategray.darkturquoise.darkviolet.deeppink.deepskyblue.dimgray.dodgerblue.firebrick.floralwhite.forestgreen.fuchsia.gainsboro.ghostwhite.gold.goldenrod.gray.grey.green.greenyellow.honeydew.hotpink.indianred.indigo.ivory.khaki.lavender.lavenderblush.lawngreen.lemonchiffon.lightblue.lightcoral.lightcyan.lightgoldenrodyellow.lightgray.lightgreen.lightpink.lightsalmon.lightseagreen.lightskyblue.lightslategray.lightsteelblue.lightyellow.lime.limegreen.linen.magenta.maroon.mediumaquamarine.mediumblue.mediumorchid.mediumpurple.mediumseagreen.mediumslateblue.mediumspringgreen.mediumturquoise.mediumvioletred.midnightblue.mintcream.mistyrose.moccasin.navajowhite.navy.oldlace.olive.olivedrab.orange.orangered.orchid.palegoldenrod.palegreen.paleturquoise.palevioletred.papayawhip.peachpuff.peru.pink.plum.powderblue.purple.rebeccapurple.red.rosybrown.royalblue.saddlebrown.salmon.sandybrown.seagreen.seashell.sienna.silver.skyblue.slateblue.slategray.snow.springgreen.steelblue.tan.teal.thistle.tomato.turquoise.violet.wheat.white.whitesmoke.yellow.yellowgreen`.split(`.`),c=`above.absolute.activeborder.additive.activecaption.afar.after-white-space.ahead.alias.all.all-scroll.alphabetic.alternate.always.amharic.amharic-abegede.antialiased.appworkspace.arabic-indic.armenian.asterisks.attr.auto.avoid.avoid-column.avoid-page.avoid-region.background.backwards.baseline.below.bidi-override.binary.bengali.blink.block.block-axis.bold.bolder.border.border-box.both.bottom.break.break-all.break-word.bullets.button.buttonface.buttonhighlight.buttonshadow.buttontext.calc.cambodian.capitalize.caps-lock-indicator.caption.captiontext.caret.cell.center.checkbox.circle.cjk-decimal.cjk-earthly-branch.cjk-heavenly-stem.cjk-ideographic.clear.clip.close-quote.col-resize.collapse.column.compact.condensed.conic-gradient.contain.content.contents.content-box.context-menu.continuous.copy.counter.counters.cover.crop.cross.crosshair.currentcolor.cursive.cyclic.dashed.decimal.decimal-leading-zero.default.default-button.destination-atop.destination-in.destination-out.destination-over.devanagari.disc.discard.disclosure-closed.disclosure-open.document.dot-dash.dot-dot-dash.dotted.double.down.e-resize.ease.ease-in.ease-in-out.ease-out.element.ellipse.ellipsis.embed.end.ethiopic.ethiopic-abegede.ethiopic-abegede-am-et.ethiopic-abegede-gez.ethiopic-abegede-ti-er.ethiopic-abegede-ti-et.ethiopic-halehame-aa-er.ethiopic-halehame-aa-et.ethiopic-halehame-am-et.ethiopic-halehame-gez.ethiopic-halehame-om-et.ethiopic-halehame-sid-et.ethiopic-halehame-so-et.ethiopic-halehame-ti-er.ethiopic-halehame-ti-et.ethiopic-halehame-tig.ethiopic-numeric.ew-resize.expanded.extends.extra-condensed.extra-expanded.fantasy.fast.fill.fixed.flat.flex.footnotes.forwards.from.geometricPrecision.georgian.graytext.groove.gujarati.gurmukhi.hand.hangul.hangul-consonant.hebrew.help.hidden.hide.high.higher.highlight.highlighttext.hiragana.hiragana-iroha.horizontal.hsl.hsla.icon.ignore.inactiveborder.inactivecaption.inactivecaptiontext.infinite.infobackground.infotext.inherit.initial.inline.inline-axis.inline-block.inline-flex.inline-table.inset.inside.intrinsic.invert.italic.japanese-formal.japanese-informal.justify.kannada.katakana.katakana-iroha.keep-all.khmer.korean-hangul-formal.korean-hanja-formal.korean-hanja-informal.landscape.lao.large.larger.left.level.lighter.line-through.linear.linear-gradient.lines.list-item.listbox.listitem.local.logical.loud.lower.lower-alpha.lower-armenian.lower-greek.lower-hexadecimal.lower-latin.lower-norwegian.lower-roman.lowercase.ltr.malayalam.match.matrix.matrix3d.media-play-button.media-slider.media-sliderthumb.media-volume-slider.media-volume-sliderthumb.medium.menu.menulist.menulist-button.menutext.message-box.middle.min-intrinsic.mix.mongolian.monospace.move.multiple.myanmar.n-resize.narrower.ne-resize.nesw-resize.no-close-quote.no-drop.no-open-quote.no-repeat.none.normal.not-allowed.nowrap.ns-resize.numbers.numeric.nw-resize.nwse-resize.oblique.octal.open-quote.optimizeLegibility.optimizeSpeed.oriya.oromo.outset.outside.outside-shape.overlay.overline.padding.padding-box.painted.page.paused.persian.perspective.plus-darker.plus-lighter.pointer.polygon.portrait.pre.pre-line.pre-wrap.preserve-3d.progress.push-button.radial-gradient.radio.read-only.read-write.read-write-plaintext-only.rectangle.region.relative.repeat.repeating-linear-gradient.repeating-radial-gradient.repeating-conic-gradient.repeat-x.repeat-y.reset.reverse.rgb.rgba.ridge.right.rotate.rotate3d.rotateX.rotateY.rotateZ.round.row-resize.rtl.run-in.running.s-resize.sans-serif.scale.scale3d.scaleX.scaleY.scaleZ.scroll.scrollbar.scroll-position.se-resize.searchfield.searchfield-cancel-button.searchfield-decoration.searchfield-results-button.searchfield-results-decoration.semi-condensed.semi-expanded.separate.serif.show.sidama.simp-chinese-formal.simp-chinese-informal.single.skew.skewX.skewY.skip-white-space.slide.slider-horizontal.slider-vertical.sliderthumb-horizontal.sliderthumb-vertical.slow.small.small-caps.small-caption.smaller.solid.somali.source-atop.source-in.source-out.source-over.space.spell-out.square.square-button.standard.start.static.status-bar.stretch.stroke.sub.subpixel-antialiased.super.sw-resize.symbolic.symbols.table.table-caption.table-cell.table-column.table-column-group.table-footer-group.table-header-group.table-row.table-row-group.tamil.telugu.text.text-bottom.text-top.textarea.textfield.thai.thick.thin.threeddarkshadow.threedface.threedhighlight.threedlightshadow.threedshadow.tibetan.tigre.tigrinya-er.tigrinya-er-abegede.tigrinya-et.tigrinya-et-abegede.to.top.trad-chinese-formal.trad-chinese-informal.translate.translate3d.translateX.translateY.translateZ.transparent.ultra-condensed.ultra-expanded.underline.up.upper-alpha.upper-armenian.upper-greek.upper-hexadecimal.upper-latin.upper-norwegian.upper-roman.uppercase.urdu.url.var.vertical.vertical-text.visible.visibleFill.visiblePainted.visibleStroke.visual.w-resize.wait.wave.wider.window.windowframe.windowtext.words.x-large.x-small.xor.xx-large.xx-small.bicubic.optimizespeed.grayscale.row.row-reverse.wrap.wrap-reverse.column-reverse.flex-start.flex-end.space-between.space-around.unset`.split(`.`),l=[`in`,`and`,`or`,`not`,`is not`,`is a`,`is`,`isnt`,`defined`,`if unless`],u=[`for`,`if`,`else`,`unless`,`from`,`to`],d=[`null`,`true`,`false`,`href`,`title`,`type`,`not-allowed`,`readonly`,`disabled`],f=e.concat(t,n,r,i,a,s,c,o,l,u,d,[`@font-face`,`@keyframes`,`@media`,`@viewport`,`@page`,`@host`,`@supports`,`@block`,`@css`]);function p(e){return e=e.sort(function(e,t){return t>e}),RegExp(`^((`+e.join(`)|(`)+`))\\b`)}function m(e){for(var t={},n=0;n<e.length;++n)t[e[n]]=!0;return t}function ee(e){return e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,`\\$&`)}var te=m(e),h=/^(a|b|i|s|col|em)$/i,g=m(i),_=m(a),v=m(c),y=m(s),b=m(t),x=p(t),S=m(r),C=m(n),w=m(o),ne=/^\s*([.]{2,3}|&&|\|\||\*\*|[?!=:]?=|[-+*\/%<>]=?|\?:|\~)/,re=p(l),T=m(u),E=new RegExp(/^\-(moz|ms|o|webkit)-/i),D=m(d),O=``,k={},A,j,M,N;function P(e,t){if(O=e.string.match(/(^[\w-]+\s*=\s*$)|(^\s*[\w-]+\s*=\s*[\w-])|(^\s*(\.|#|@|\$|\&|\[|\d|\+|::?|\{|\>|~|\/)?\s*[\w-]*([a-z0-9-]|\*|\/\*)(\(|,)?)/),t.context.line.firstWord=O?O[0].replace(/^\s*/,``):``,t.context.line.indent=e.indentation(),A=e.peek(),e.match(`//`))return e.skipToEnd(),[`comment`,`comment`];if(e.match(`/*`))return t.tokenize=F,F(e,t);if(A==`"`||A==`'`)return e.next(),t.tokenize=I(A),t.tokenize(e,t);if(A==`@`)return e.next(),e.eatWhile(/[\w\\-]/),[`def`,e.current()];if(A==`#`){if(e.next(),e.match(/^[0-9a-f]{3}([0-9a-f]([0-9a-f]{2}){0,2})?\b(?!-)/i))return[`atom`,`atom`];if(e.match(/^[a-z][\w-]*/i))return[`builtin`,`hash`]}return e.match(E)?[`meta`,`vendor-prefixes`]:e.match(/^-?[0-9]?\.?[0-9]/)?(e.eatWhile(/[a-z%]/i),[`number`,`unit`]):A==`!`?(e.next(),[e.match(/^(important|optional)/i)?`keyword`:`operator`,`important`]):A==`.`&&e.match(/^\.[a-z][\w-]*/i)?[`qualifier`,`qualifier`]:e.match(x)?(e.peek()==`(`&&(t.tokenize=L),[`property`,`word`]):e.match(/^[a-z][\w-]*\(/i)?(e.backUp(1),[`keyword`,`mixin`]):e.match(/^(\+|-)[a-z][\w-]*\(/i)?(e.backUp(1),[`keyword`,`block-mixin`]):e.string.match(/^\s*&/)&&e.match(/^[-_]+[a-z][\w-]*/)?[`qualifier`,`qualifier`]:e.match(/^(\/|&)(-|_|:|\.|#|[a-z])/)?(e.backUp(1),[`variableName.special`,`reference`]):e.match(/^&{1}\s*$/)?[`variableName.special`,`reference`]:e.match(re)?[`operator`,`operator`]:e.match(/^\$?[-_]*[a-z0-9]+[\w-]*/i)?e.match(/^(\.|\[)[\w-\'\"\]]+/i,!1)&&!U(e.current())?(e.match(`.`),[`variable`,`variable-name`]):[`variable`,`word`]:e.match(ne)?[`operator`,e.current()]:/[:;,{}\[\]\(\)]/.test(A)?(e.next(),[null,A]):(e.next(),[null,null])}function F(e,t){for(var n=!1,r;(r=e.next())!=null;){if(n&&r==`/`){t.tokenize=null;break}n=r==`*`}return[`comment`,`comment`]}function I(e){return function(t,n){for(var r=!1,i;(i=t.next())!=null;){if(i==e&&!r){e==`)`&&t.backUp(1);break}r=!r&&i==`\\`}return(i==e||!r&&e!=`)`)&&(n.tokenize=null),[`string`,`string`]}}function L(e,t){return e.next(),t.tokenize=e.match(/\s*[\"\')]/,!1)?null:I(`)`),[null,`(`]}function R(e,t,n,r){this.type=e,this.indent=t,this.prev=n,this.line=r||{firstWord:``,indent:0}}function z(e,t,n,r){return r=r>=0?r:t.indentUnit,e.context=new R(n,t.indentation()+r,e.context),n}function B(e,t,n){var r=e.context.indent-t.indentUnit;return n||=!1,e.context=e.context.prev,n&&(e.context.indent=r),e.context.type}function V(e,t,n){return k[n.context.type](e,t,n)}function H(e,t,n,r){for(var i=r||1;i>0;i--)n.context=n.context.prev;return V(e,t,n)}function U(e){return e.toLowerCase()in te}function W(e){return e=e.toLowerCase(),e in g||e in w}function G(e){return e.toLowerCase()in T}function K(e){return e.toLowerCase().match(E)}function q(e){var t=e.toLowerCase(),n=`variable`;return U(e)?n=`tag`:G(e)?n=`block-keyword`:W(e)?n=`property`:t in v||t in D?n=`atom`:t==`return`||t in y?n=`keyword`:e.match(/^[A-Z]/)&&(n=`string`),n}function J(e,t){return Q(t)&&(e==`{`||e==`]`||e==`hash`||e==`qualifier`)||e==`block-mixin`}function Y(e,t){return e==`{`&&t.match(/^\s*\$?[\w-]+/i,!1)}function X(e,t){return e==`:`&&t.match(/^[a-z-]+/,!1)}function Z(e){return e.sol()||e.string.match(RegExp(`^\\s*`+ee(e.current())))}function Q(e){return e.eol()||e.match(/^\s*$/,!1)}function $(e){var t=/^\s*[-_]*[a-z0-9]+[\w-]*/i,n=typeof e==`string`?e.match(t):e.string.match(t);return n?n[0].replace(/^\s*/,``):``}k.block=function(e,t,n){if(e==`comment`&&Z(t)||e==`,`&&Q(t)||e==`mixin`)return z(n,t,`block`,0);if(Y(e,t))return z(n,t,`interpolation`);if(Q(t)&&e==`]`&&!/^\s*(\.|#|:|\[|\*|&)/.test(t.string)&&!U($(t)))return z(n,t,`block`,0);if(J(e,t))return z(n,t,`block`);if(e==`}`&&Q(t))return z(n,t,`block`,0);if(e==`variable-name`)return t.string.match(/^\s?\$[\w-\.\[\]\'\"]+$/)||G($(t))?z(n,t,`variableName`):z(n,t,`variableName`,0);if(e==`=`)return!Q(t)&&!G($(t))?z(n,t,`block`,0):z(n,t,`block`);if(e==`*`&&(Q(t)||t.match(/\s*(,|\.|#|\[|:|{)/,!1)))return N=`tag`,z(n,t,`block`);if(X(e,t))return z(n,t,`pseudo`);if(/@(font-face|media|supports|(-moz-)?document)/.test(e))return z(n,t,Q(t)?`block`:`atBlock`);if(/@(-(moz|ms|o|webkit)-)?keyframes$/.test(e))return z(n,t,`keyframes`);if(/@extends?/.test(e))return z(n,t,`extend`,0);if(e&&e.charAt(0)==`@`)return t.indentation()>0&&W(t.current().slice(1))?(N=`variable`,`block`):/(@import|@require|@charset)/.test(e)?z(n,t,`block`,0):z(n,t,`block`);if(e==`reference`&&Q(t))return z(n,t,`block`);if(e==`(`)return z(n,t,`parens`);if(e==`vendor-prefixes`)return z(n,t,`vendorPrefixes`);if(e==`word`){var r=t.current();if(N=q(r),N==`property`)return Z(t)?z(n,t,`block`,0):(N=`atom`,`block`);if(N==`tag`){if(/embed|menu|pre|progress|sub|table/.test(r)&&W($(t))||t.string.match(RegExp(`\\[\\s*`+r+`|`+r+`\\s*\\]`)))return N=`atom`,`block`;if(h.test(r)&&(Z(t)&&t.string.match(/=/)||!Z(t)&&!t.string.match(/^(\s*\.|#|\&|\[|\/|>|\*)/)&&!U($(t))))return N=`variable`,G($(t))?`block`:z(n,t,`block`,0);if(Q(t))return z(n,t,`block`)}if(N==`block-keyword`)return N=`keyword`,t.current(/(if|unless)/)&&!Z(t)?`block`:z(n,t,`block`);if(r==`return`)return z(n,t,`block`,0);if(N==`variable`&&t.string.match(/^\s?\$[\w-\.\[\]\'\"]+$/))return z(n,t,`block`)}return n.context.type},k.parens=function(e,t,n){if(e==`(`)return z(n,t,`parens`);if(e==`)`)return n.context.prev.type==`parens`?B(n,t):t.string.match(/^[a-z][\w-]*\(/i)&&Q(t)||G($(t))||/(\.|#|:|\[|\*|&|>|~|\+|\/)/.test($(t))||!t.string.match(/^-?[a-z][\w-\.\[\]\'\"]*\s*=/)&&U($(t))?z(n,t,`block`):t.string.match(/^[\$-]?[a-z][\w-\.\[\]\'\"]*\s*=/)||t.string.match(/^\s*(\(|\)|[0-9])/)||t.string.match(/^\s+[a-z][\w-]*\(/i)||t.string.match(/^\s+[\$-]?[a-z]/i)?z(n,t,`block`,0):Q(t)?z(n,t,`block`):z(n,t,`block`,0);if(e&&e.charAt(0)==`@`&&W(t.current().slice(1))&&(N=`variable`),e==`word`){var r=t.current();N=q(r),N==`tag`&&h.test(r)&&(N=`variable`),(N==`property`||r==`to`)&&(N=`atom`)}return e==`variable-name`?z(n,t,`variableName`):X(e,t)?z(n,t,`pseudo`):n.context.type},k.vendorPrefixes=function(e,t,n){return e==`word`?(N=`property`,z(n,t,`block`,0)):B(n,t)},k.pseudo=function(e,t,n){return W($(t.string))?H(e,t,n):(t.match(/^[a-z-]+/),N=`variableName.special`,Q(t)?z(n,t,`block`):B(n,t))},k.atBlock=function(e,t,n){if(e==`(`)return z(n,t,`atBlock_parens`);if(J(e,t))return z(n,t,`block`);if(Y(e,t))return z(n,t,`interpolation`);if(e==`word`){var r=t.current().toLowerCase();if(N=/^(only|not|and|or)$/.test(r)?`keyword`:b.hasOwnProperty(r)?`tag`:C.hasOwnProperty(r)?`attribute`:S.hasOwnProperty(r)?`property`:_.hasOwnProperty(r)?`string.special`:q(t.current()),N==`tag`&&Q(t))return z(n,t,`block`)}return e==`operator`&&/^(not|and|or)$/.test(t.current())&&(N=`keyword`),n.context.type},k.atBlock_parens=function(e,t,n){if(e==`{`||e==`}`)return n.context.type;if(e==`)`)return Q(t)?z(n,t,`block`):z(n,t,`atBlock`);if(e==`word`){var r=t.current().toLowerCase();return N=q(r),/^(max|min)/.test(r)&&(N=`property`),N==`tag`&&(N=h.test(r)?`variable`:`atom`),n.context.type}return k.atBlock(e,t,n)},k.keyframes=function(e,t,n){return t.indentation()==`0`&&(e==`}`&&Z(t)||e==`]`||e==`hash`||e==`qualifier`||U(t.current()))?H(e,t,n):e==`{`?z(n,t,`keyframes`):e==`}`?Z(t)?B(n,t,!0):z(n,t,`keyframes`):e==`unit`&&/^[0-9]+\%$/.test(t.current())?z(n,t,`keyframes`):e==`word`&&(N=q(t.current()),N==`block-keyword`)?(N=`keyword`,z(n,t,`keyframes`)):/@(font-face|media|supports|(-moz-)?document)/.test(e)?z(n,t,Q(t)?`block`:`atBlock`):e==`mixin`?z(n,t,`block`,0):n.context.type},k.interpolation=function(e,t,n){return e==`{`&&B(n,t)&&z(n,t,`block`),e==`}`?t.string.match(/^\s*(\.|#|:|\[|\*|&|>|~|\+|\/)/i)||t.string.match(/^\s*[a-z]/i)&&U($(t))?z(n,t,`block`):!t.string.match(/^(\{|\s*\&)/)||t.match(/\s*[\w-]/,!1)?z(n,t,`block`,0):z(n,t,`block`):e==`variable-name`?z(n,t,`variableName`,0):(e==`word`&&(N=q(t.current()),N==`tag`&&(N=`atom`)),n.context.type)},k.extend=function(e,t,n){return e==`[`||e==`=`?`extend`:e==`]`?B(n,t):e==`word`?(N=q(t.current()),`extend`):B(n,t)},k.variableName=function(e,t,n){return e==`string`||e==`[`||e==`]`||t.current().match(/^(\.|\$)/)?(t.current().match(/^\.[\w-]+/i)&&(N=`variable`),`variableName`):H(e,t,n)};var ie={name:`stylus`,startState:function(){return{tokenize:null,state:`block`,context:new R(`block`,0,null)}},token:function(e,t){return!t.tokenize&&e.eatSpace()?null:(j=(t.tokenize||P)(e,t),j&&typeof j==`object`&&(M=j[1],j=j[0]),N=j,t.state=k[t.state](M,e,t),N)},indent:function(e,t,n){var r=e.context,i=t&&t.charAt(0),a=r.indent,o=$(t),s=r.line.indent,c=e.context.prev?e.context.prev.line.firstWord:``,l=e.context.prev?e.context.prev.line.indent:s;return r.prev&&(i==`}`&&(r.type==`block`||r.type==`atBlock`||r.type==`keyframes`)||i==`)`&&(r.type==`parens`||r.type==`atBlock_parens`)||i==`{`&&r.type==`at`)?a=r.indent-n.unit:/(\})/.test(i)||(/@|\$|\d/.test(i)||/^\{/.test(t)||/^\s*\/(\/|\*)/.test(t)||/^\s*\/\*/.test(c)||/^\s*[\w-\.\[\]\'\"]+\s*(\?|:|\+)?=/i.test(t)||/^(\+|-)?[a-z][\w-]*\(/i.test(t)||/^return/.test(t)||G(o)?a=s:/(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(i)||U(o)?a=/\,\s*$/.test(c)?l:/(\.|#|:|\[|\*|&|>|~|\+|\/)/.test(c)||U(c)?s<=l?l:l+n.unit:s:!/,\s*$/.test(t)&&(K(o)||W(o))&&(a=G(c)?s<=l?l:l+n.unit:/^\{/.test(c)?s<=l?s:l+n.unit:K(c)||W(c)?s>=l?l:s:/^(\.|#|:|\[|\*|&|@|\+|\-|>|~|\/)/.test(c)||/=\s*$/.test(c)||U(c)||/^\$[\w-\.\[\]\'\"]/.test(c)?l+n.unit:s)),a},languageData:{indentOnInput:/^\s*\}$/,commentTokens:{line:`//`,block:{open:`/*`,close:`*/`}},autocomplete:f}};export{ie as stylus};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){for(var t={},n=0;n<e.length;n++)t[e[n]]=!0;return t}var t=e(`_.var.let.actor.class.enum.extension.import.protocol.struct.func.typealias.associatedtype.open.public.internal.fileprivate.private.deinit.init.new.override.self.subscript.super.convenience.dynamic.final.indirect.lazy.required.static.unowned.unowned(safe).unowned(unsafe).weak.as.is.break.case.continue.default.else.fallthrough.for.guard.if.in.repeat.switch.where.while.defer.return.inout.mutating.nonmutating.isolated.nonisolated.catch.do.rethrows.throw.throws.async.await.try.didSet.get.set.willSet.assignment.associativity.infix.left.none.operator.postfix.precedence.precedencegroup.prefix.right.Any.AnyObject.Type.dynamicType.Self.Protocol.__COLUMN__.__FILE__.__FUNCTION__.__LINE__`.split(`.`)),n=e([`var`,`let`,`actor`,`class`,`enum`,`extension`,`import`,`protocol`,`struct`,`func`,`typealias`,`associatedtype`,`for`]),r=e([`true`,`false`,`nil`,`self`,`super`,`_`]),i=e([`Array`,`Bool`,`Character`,`Dictionary`,`Double`,`Float`,`Int`,`Int8`,`Int16`,`Int32`,`Int64`,`Never`,`Optional`,`Set`,`String`,`UInt8`,`UInt16`,`UInt32`,`UInt64`,`Void`]),a=`+-/*%=|&<>~^?!`,o=`:;,.(){}[]`,s=/^\-?0b[01][01_]*/,c=/^\-?0o[0-7][0-7_]*/,l=/^\-?0x[\dA-Fa-f][\dA-Fa-f_]*(?:(?:\.[\dA-Fa-f][\dA-Fa-f_]*)?[Pp]\-?\d[\d_]*)?/,u=/^\-?\d[\d_]*(?:\.\d[\d_]*)?(?:[Ee]\-?\d[\d_]*)?/,d=/^\$\d+|(`?)[_A-Za-z][_A-Za-z$0-9]*\1/,f=/^\.(?:\$\d+|(`?)[_A-Za-z][_A-Za-z$0-9]*\1)/,p=/^\#[A-Za-z]+/,m=/^@(?:\$\d+|(`?)[_A-Za-z][_A-Za-z$0-9]*\1)/;function h(e,h,g){if(e.sol()&&(h.indented=e.indentation()),e.eatSpace())return null;var y=e.peek();if(y==`/`){if(e.match(`//`))return e.skipToEnd(),`comment`;if(e.match(`/*`))return h.tokenize.push(v),v(e,h)}if(e.match(p))return`builtin`;if(e.match(m))return`attribute`;if(e.match(s)||e.match(c)||e.match(l)||e.match(u))return`number`;if(e.match(f))return`property`;if(a.indexOf(y)>-1)return e.next(),`operator`;if(o.indexOf(y)>-1)return e.next(),e.match(`..`),`punctuation`;var b;if(b=e.match(/("""|"|')/)){var x=_.bind(null,b[0]);return h.tokenize.push(x),x(e,h)}if(e.match(d)){var S=e.current();return i.hasOwnProperty(S)?`type`:r.hasOwnProperty(S)?`atom`:t.hasOwnProperty(S)?(n.hasOwnProperty(S)&&(h.prev=`define`),`keyword`):g==`define`?`def`:`variable`}return e.next(),null}function g(){var e=0;return function(t,n,r){var i=h(t,n,r);if(i==`punctuation`){if(t.current()==`(`)++e;else if(t.current()==`)`){if(e==0)return t.backUp(1),n.tokenize.pop(),n.tokenize[n.tokenize.length-1](t,n);--e}}return i}}function _(e,t,n){for(var r=e.length==1,i,a=!1;i=t.peek();)if(a){if(t.next(),i==`(`)return n.tokenize.push(g()),`string`;a=!1}else if(t.match(e))return n.tokenize.pop(),`string`;else t.next(),a=i==`\\`;return r&&n.tokenize.pop(),`string`}function v(e,t){for(var n;n=e.next();)if(n===`/`&&e.eat(`*`))t.tokenize.push(v);else if(n===`*`&&e.eat(`/`)){t.tokenize.pop();break}return`comment`}function y(e,t,n){this.prev=e,this.align=t,this.indented=n}function b(e,t){var n=t.match(/^\s*($|\/[\/\*]|[)}\]])/,!1)?null:t.column()+1;e.context=new y(e.context,n,e.indented)}function x(e){e.context&&=(e.indented=e.context.indented,e.context.prev)}var S={name:`swift`,startState:function(){return{prev:null,context:null,indented:0,tokenize:[]}},token:function(e,t){var n=t.prev;t.prev=null;var r=(t.tokenize[t.tokenize.length-1]||h)(e,t,n);if(!r||r==`comment`?t.prev=n:t.prev||=r,r==`punctuation`){var i=/[\(\[\{]|([\]\)\}])/.exec(e.current());i&&(i[1]?x:b)(t,e)}return r},indent:function(e,t,n){var r=e.context;if(!r)return 0;var i=/^[\]\}\)]/.test(t);return r.align==null?r.indented+(i?0:n.unit):r.align-+!!i},languageData:{indentOnInput:/^\s*[\)\}\]]$/,commentTokens:{line:`//`,block:{open:`/*`,close:`*/`}},closeBrackets:{brackets:[`(`,`[`,`{`,`'`,`"`,"`"]}}};export{S as swift};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){for(var t={},n=e.split(` `),r=0;r<n.length;++r)t[n[r]]=!0;return t}var t=e(`Tcl safe after append array auto_execok auto_import auto_load auto_mkindex auto_mkindex_old auto_qualify auto_reset bgerror binary break catch cd close concat continue dde eof encoding error eval exec exit expr fblocked fconfigure fcopy file fileevent filename filename flush for foreach format gets glob global history http if incr info interp join lappend lindex linsert list llength load lrange lreplace lsearch lset lsort memory msgcat namespace open package parray pid pkg::create pkg_mkIndex proc puts pwd re_syntax read regex regexp registry regsub rename resource return scan seek set socket source split string subst switch tcl_endOfWord tcl_findLibrary tcl_startOfNextWord tcl_wordBreakAfter tcl_startOfPreviousWord tcl_wordBreakBefore tcltest tclvars tell time trace unknown unset update uplevel upvar variable vwait`),n=e(`if elseif else and not or eq ne in ni for foreach while switch`),r=/[+\-*&%=<>!?^\/\|]/;function i(e,t,n){return t.tokenize=n,n(e,t)}function a(e,a){var l=a.beforeParams;a.beforeParams=!1;var u=e.next();if((u==`"`||u==`'`)&&a.inParams)return i(e,a,o(u));if(/[\[\]{}\(\),;\.]/.test(u))return u==`(`&&l?a.inParams=!0:u==`)`&&(a.inParams=!1),null;if(/\d/.test(u))return e.eatWhile(/[\w\.]/),`number`;if(u==`#`)return e.eat(`*`)?i(e,a,s):u==`#`&&e.match(/ *\[ *\[/)?i(e,a,c):(e.skipToEnd(),`comment`);if(u==`"`)return e.skipTo(/"/),`comment`;if(u==`$`)return e.eatWhile(/[$_a-z0-9A-Z\.{:]/),e.eatWhile(/}/),a.beforeParams=!0,`builtin`;if(r.test(u))return e.eatWhile(r),`comment`;e.eatWhile(/[\w\$_{}\xa1-\uffff]/);var d=e.current().toLowerCase();return t&&t.propertyIsEnumerable(d)?`keyword`:n&&n.propertyIsEnumerable(d)?(a.beforeParams=!0,`keyword`):null}function o(e){return function(t,n){for(var r=!1,i,o=!1;(i=t.next())!=null;){if(i==e&&!r){o=!0;break}r=!r&&i==`\\`}return o&&(n.tokenize=a),`string`}}function s(e,t){for(var n=!1,r;r=e.next();){if(r==`#`&&n){t.tokenize=a;break}n=r==`*`}return`comment`}function c(e,t){for(var n=0,r;r=e.next();){if(r==`#`&&n==2){t.tokenize=a;break}r==`]`?n++:r!=` `&&(n=0)}return`meta`}var l={name:`tcl`,startState:function(){return{tokenize:a,beforeParams:!1,inParams:!1}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{commentTokens:{line:`#`}}};export{l as tcl};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={addition:`inserted`,attributes:`propertyName`,bold:`strong`,cite:`keyword`,code:`monospace`,definitionList:`list`,deletion:`deleted`,div:`punctuation`,em:`emphasis`,footnote:`variable`,footCite:`qualifier`,header:`heading`,html:`comment`,image:`atom`,italic:`emphasis`,link:`link`,linkDefinition:`link`,list1:`list`,list2:`list.special`,list3:`list`,notextile:`string.special`,pre:`operator`,p:`content`,quote:`bracket`,span:`quote`,specialChar:`character`,strong:`strong`,sub:`content.special`,sup:`content.special`,table:`variableName.special`,tableHeading:`operator`};function t(e,t){t.mode=u.newLayout,t.tableHeading=!1,t.layoutType===`definitionList`&&t.spanningLayout&&e.match(l(`definitionListEnd`),!1)&&(t.spanningLayout=!1)}function n(t,n,a){if(a===`_`)return t.eat(`_`)?r(t,n,`italic`,/__/,2):r(t,n,`em`,/_/,1);if(a===`*`)return t.eat(`*`)?r(t,n,`bold`,/\*\*/,2):r(t,n,`strong`,/\*/,1);if(a===`[`)return t.match(/\d+\]/)&&(n.footCite=!0),i(n);if(a===`(`&&t.match(/^(r|tm|c)\)/))return e.specialChar;if(a===`<`&&t.match(/(\w+)[^>]+>[^<]+<\/\1>/))return e.html;if(a===`?`&&t.eat(`?`))return r(t,n,`cite`,/\?\?/,2);if(a===`=`&&t.eat(`=`))return r(t,n,`notextile`,/==/,2);if(a===`-`&&!t.eat(`-`))return r(t,n,`deletion`,/-/,1);if(a===`+`)return r(t,n,`addition`,/\+/,1);if(a===`~`)return r(t,n,`sub`,/~/,1);if(a===`^`)return r(t,n,`sup`,/\^/,1);if(a===`%`)return r(t,n,`span`,/%/,1);if(a===`@`)return r(t,n,`code`,/@/,1);if(a===`!`){var o=r(t,n,`image`,/(?:\([^\)]+\))?!/,1);return t.match(/^:\S+/),o}return i(n)}function r(e,t,n,r,a){var o=e.pos>a?e.string.charAt(e.pos-a-1):null,s=e.peek();if(t[n]){if((!s||/\W/.test(s))&&o&&/\S/.test(o)){var c=i(t);return t[n]=!1,c}}else(!o||/\W/.test(o))&&s&&/\S/.test(s)&&e.match(RegExp(`^.*\\S`+r.source+`(?:\\W|$)`),!1)&&(t[n]=!0,t.mode=u.attributes);return i(t)}function i(t){var n=a(t);if(n)return n;var r=[];return t.layoutType&&r.push(e[t.layoutType]),r=r.concat(o(t,`addition`,`bold`,`cite`,`code`,`deletion`,`em`,`footCite`,`image`,`italic`,`link`,`span`,`strong`,`sub`,`sup`,`table`,`tableHeading`)),t.layoutType===`header`&&r.push(e.header+`-`+t.header),r.length?r.join(` `):null}function a(t){var n=t.layoutType;switch(n){case`notextile`:case`code`:case`pre`:return e[n];default:return t.notextile?e.notextile+(n?` `+e[n]:``):null}}function o(t){for(var n=[],r=1;r<arguments.length;++r)t[arguments[r]]&&n.push(e[arguments[r]]);return n}function s(e){var t=e.spanningLayout,n=e.layoutType;for(var r in e)e.hasOwnProperty(r)&&delete e[r];e.mode=u.newLayout,t&&(e.layoutType=n,e.spanningLayout=!0)}var c={cache:{},single:{bc:`bc`,bq:`bq`,definitionList:/- .*?:=+/,definitionListEnd:/.*=:\s*$/,div:`div`,drawTable:/\|.*\|/,foot:/fn\d+/,header:/h[1-6]/,html:/\s*<(?:\/)?(\w+)(?:[^>]+)?>(?:[^<]+<\/\1>)?/,link:/[^"]+":\S/,linkDefinition:/\[[^\s\]]+\]\S+/,list:/(?:#+|\*+)/,notextile:`notextile`,para:`p`,pre:`pre`,table:`table`,tableCellAttributes:/[\/\\]\d+/,tableHeading:/\|_\./,tableText:/[^"_\*\[\(\?\+~\^%@|-]+/,text:/[^!"_=\*\[\(<\?\+~\^%@-]+/},attributes:{align:/(?:<>|<|>|=)/,selector:/\([^\(][^\)]+\)/,lang:/\[[^\[\]]+\]/,pad:/(?:\(+|\)+){1,2}/,css:/\{[^\}]+\}/},createRe:function(e){switch(e){case`drawTable`:return c.makeRe(`^`,c.single.drawTable,`$`);case`html`:return c.makeRe(`^`,c.single.html,`(?:`,c.single.html,`)*`,`$`);case`linkDefinition`:return c.makeRe(`^`,c.single.linkDefinition,`$`);case`listLayout`:return c.makeRe(`^`,c.single.list,l(`allAttributes`),`*\\s+`);case`tableCellAttributes`:return c.makeRe(`^`,c.choiceRe(c.single.tableCellAttributes,l(`allAttributes`)),`+\\.`);case`type`:return c.makeRe(`^`,l(`allTypes`));case`typeLayout`:return c.makeRe(`^`,l(`allTypes`),l(`allAttributes`),`*\\.\\.?`,`(\\s+|$)`);case`attributes`:return c.makeRe(`^`,l(`allAttributes`),`+`);case`allTypes`:return c.choiceRe(c.single.div,c.single.foot,c.single.header,c.single.bc,c.single.bq,c.single.notextile,c.single.pre,c.single.table,c.single.para);case`allAttributes`:return c.choiceRe(c.attributes.selector,c.attributes.css,c.attributes.lang,c.attributes.align,c.attributes.pad);default:return c.makeRe(`^`,c.single[e])}},makeRe:function(){for(var e=``,t=0;t<arguments.length;++t){var n=arguments[t];e+=typeof n==`string`?n:n.source}return new RegExp(e)},choiceRe:function(){for(var e=[arguments[0]],t=1;t<arguments.length;++t)e[t*2-1]=`|`,e[t*2]=arguments[t];return e.unshift(`(?:`),e.push(`)`),c.makeRe.apply(null,e)}};function l(e){return c.cache[e]||(c.cache[e]=c.createRe(e))}var u={newLayout:function(e,t){if(e.match(l(`typeLayout`),!1))return t.spanningLayout=!1,(t.mode=u.blockType)(e,t);var n;return a(t)||(e.match(l(`listLayout`),!1)?n=u.list:e.match(l(`drawTable`),!1)?n=u.table:e.match(l(`linkDefinition`),!1)?n=u.linkDefinition:e.match(l(`definitionList`))?n=u.definitionList:e.match(l(`html`),!1)&&(n=u.html)),(t.mode=n||u.text)(e,t)},blockType:function(e,t){var n,r;if(t.layoutType=null,n=e.match(l(`type`)))r=n[0];else return(t.mode=u.text)(e,t);return(n=r.match(l(`header`)))?(t.layoutType=`header`,t.header=parseInt(n[0][1])):r.match(l(`bq`))?t.layoutType=`quote`:r.match(l(`bc`))?t.layoutType=`code`:r.match(l(`foot`))?t.layoutType=`footnote`:r.match(l(`notextile`))?t.layoutType=`notextile`:r.match(l(`pre`))?t.layoutType=`pre`:r.match(l(`div`))?t.layoutType=`div`:r.match(l(`table`))&&(t.layoutType=`table`),t.mode=u.attributes,i(t)},text:function(e,t){if(e.match(l(`text`)))return i(t);var r=e.next();return r===`"`?(t.mode=u.link)(e,t):n(e,t,r)},attributes:function(t,n){return n.mode=u.layoutLength,t.match(l(`attributes`))?e.attributes:i(n)},layoutLength:function(e,t){return e.eat(`.`)&&e.eat(`.`)&&(t.spanningLayout=!0),t.mode=u.text,i(t)},list:function(e,t){t.listDepth=e.match(l(`list`))[0].length;var n=(t.listDepth-1)%3;return t.layoutType=n?n===1?`list2`:`list3`:`list1`,t.mode=u.attributes,i(t)},link:function(t,n){return n.mode=u.text,t.match(l(`link`))?(t.match(/\S+/),e.link):i(n)},linkDefinition:function(t){return t.skipToEnd(),e.linkDefinition},definitionList:function(e,t){return e.match(l(`definitionList`)),t.layoutType=`definitionList`,e.match(/\s*$/)?t.spanningLayout=!0:t.mode=u.attributes,i(t)},html:function(t){return t.skipToEnd(),e.html},table:function(e,t){return t.layoutType=`table`,(t.mode=u.tableCell)(e,t)},tableCell:function(e,t){return e.match(l(`tableHeading`))?t.tableHeading=!0:e.eat(`|`),t.mode=u.tableCellAttributes,i(t)},tableCellAttributes:function(t,n){return n.mode=u.tableText,t.match(l(`tableCellAttributes`))?e.attributes:i(n)},tableText:function(e,t){return e.match(l(`tableText`))?i(t):e.peek()===`|`?(t.mode=u.tableCell,i(t)):n(e,t,e.next())}},d={name:`textile`,startState:function(){return{mode:u.newLayout}},token:function(e,n){return e.sol()&&t(e,n),n.mode(e,n)},blankLine:s};export{d as textile};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={},t={allTags:!0,closeAll:!0,list:!0,newJournal:!0,newTiddler:!0,permaview:!0,saveChanges:!0,search:!0,slider:!0,tabs:!0,tag:!0,tagging:!0,tags:!0,tiddler:!0,timeline:!0,today:!0,version:!0,option:!0,with:!0,filter:!0},n=/[\w_\-]/i,r=/^\-\-\-\-+$/,i=/^\/\*\*\*$/,a=/^\*\*\*\/$/,o=/^<<<$/,s=/^\/\/\{\{\{$/,c=/^\/\/\}\}\}$/,l=/^<!--\{\{\{-->$/,u=/^<!--\}\}\}-->$/,d=/^\{\{\{$/,f=/^\}\}\}$/,p=/.*?\}\}\}/;function m(e,t,n){return t.tokenize=n,n(e,t)}function h(t,f){var p=t.sol(),h=t.peek();if(f.block=!1,p&&/[<\/\*{}\-]/.test(h)){if(t.match(d))return f.block=!0,m(t,f,v);if(t.match(o))return`quote`;if(t.match(i)||t.match(a)||t.match(s)||t.match(c)||t.match(l)||t.match(u))return`comment`;if(t.match(r))return`contentSeparator`}if(t.next(),p&&/[\/\*!#;:>|]/.test(h)){if(h==`!`)return t.skipToEnd(),`header`;if(h==`*`)return t.eatWhile(`*`),`comment`;if(h==`#`)return t.eatWhile(`#`),`comment`;if(h==`;`)return t.eatWhile(`;`),`comment`;if(h==`:`)return t.eatWhile(`:`),`comment`;if(h==`>`)return t.eatWhile(`>`),`quote`;if(h==`|`)return`header`}if(h==`{`&&t.match(`{{`))return m(t,f,v);if(/[hf]/i.test(h)&&/[ti]/i.test(t.peek())&&t.match(/\b(ttps?|tp|ile):\/\/[\-A-Z0-9+&@#\/%?=~_|$!:,.;]*[A-Z0-9+&@#\/%=~_|$]/i))return`link`;if(h==`"`)return`string`;if(h==`~`||/[\[\]]/.test(h)&&t.match(h))return`brace`;if(h==`@`)return t.eatWhile(n),`link`;if(/\d/.test(h))return t.eatWhile(/\d/),`number`;if(h==`/`){if(t.eat(`%`))return m(t,f,g);if(t.eat(`/`))return m(t,f,y)}if(h==`_`&&t.eat(`_`))return m(t,f,b);if(h==`-`&&t.eat(`-`)){if(t.peek()!=` `)return m(t,f,x);if(t.peek()==` `)return`brace`}return h==`'`&&t.eat(`'`)?m(t,f,_):h==`<`&&t.eat(`<`)?m(t,f,S):(t.eatWhile(/[\w\$_]/),e.propertyIsEnumerable(t.current())?`keyword`:null)}function g(e,t){for(var n=!1,r;r=e.next();){if(r==`/`&&n){t.tokenize=h;break}n=r==`%`}return`comment`}function _(e,t){for(var n=!1,r;r=e.next();){if(r==`'`&&n){t.tokenize=h;break}n=r==`'`}return`strong`}function v(e,t){var n=t.block;return n&&e.current()?`comment`:!n&&e.match(p)||n&&e.sol()&&e.match(f)?(t.tokenize=h,`comment`):(e.next(),`comment`)}function y(e,t){for(var n=!1,r;r=e.next();){if(r==`/`&&n){t.tokenize=h;break}n=r==`/`}return`emphasis`}function b(e,t){for(var n=!1,r;r=e.next();){if(r==`_`&&n){t.tokenize=h;break}n=r==`_`}return`link`}function x(e,t){for(var n=!1,r;r=e.next();){if(r==`-`&&n){t.tokenize=h;break}n=r==`-`}return`deleted`}function S(e,n){if(e.current()==`<<`)return`meta`;var r=e.next();return r?r==`>`&&e.peek()==`>`?(e.next(),n.tokenize=h,`meta`):(e.eatWhile(/[\w\$_]/),t.propertyIsEnumerable(e.current())?`keyword`:null):(n.tokenize=h,null)}var C={name:`tiddlywiki`,startState:function(){return{tokenize:h}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)}};export{C as tiddlyWiki};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e,t,r){return function(i,a){for(;!i.eol();){if(i.match(t)){a.tokenize=n;break}i.next()}return r&&(a.tokenize=r),e}}function t(e){return function(t,r){for(;!t.eol();)t.next();return r.tokenize=n,e}}function n(r,i){function o(e){return i.tokenize=e,e(r,i)}var s=r.sol(),c=r.next();switch(c){case`{`:return r.eat(`/`),r.eatSpace(),r.eatWhile(/[^\s\u00a0=\"\'\/?(}]/),i.tokenize=a,`tag`;case`_`:if(r.eat(`_`))return o(e(`strong`,`__`,n));break;case`'`:if(r.eat(`'`))return o(e(`em`,`''`,n));break;case`(`:if(r.eat(`(`))return o(e(`link`,`))`,n));break;case`[`:return o(e(`url`,`]`,n));case`|`:if(r.eat(`|`))return o(e(`comment`,`||`));break;case`-`:if(r.eat(`=`))return o(e(`header string`,`=-`,n));if(r.eat(`-`))return o(e(`error tw-deleted`,`--`,n));break;case`=`:if(r.match(`==`))return o(e(`tw-underline`,`===`,n));break;case`:`:if(r.eat(`:`))return o(e(`comment`,`::`));break;case`^`:return o(e(`tw-box`,`^`));case`~`:if(r.match(`np~`))return o(e(`meta`,`~/np~`))}if(s)switch(c){case`!`:return r.match(`!!!!!`)||r.match(`!!!!`)||r.match(`!!!`)||r.match(`!!`),o(t(`header string`));case`*`:case`#`:case`+`:return o(t(`tw-listitem bracket`))}return null}var r,i;function a(e,t){var r=e.next(),a=e.peek();return r==`}`?(t.tokenize=n,`tag`):r==`(`||r==`)`?`bracket`:r==`=`?(i=`equals`,a==`>`&&(e.next(),a=e.peek()),/[\'\"]/.test(a)||(t.tokenize=s()),`operator`):/[\'\"]/.test(r)?(t.tokenize=o(r),t.tokenize(e,t)):(e.eatWhile(/[^\s\u00a0=\"\'\/?]/),`keyword`)}function o(e){return function(t,n){for(;!t.eol();)if(t.next()==e){n.tokenize=a;break}return`string`}}function s(){return function(e,t){for(;!e.eol();){var n=e.next(),r=e.peek();if(n==` `||n==`,`||/[ )}]/.test(r)){t.tokenize=a;break}}return`string`}}var c,l;function u(){for(var e=arguments.length-1;e>=0;e--)c.cc.push(arguments[e])}function d(){return u.apply(null,arguments),!0}function f(e,t){var n=c.context&&c.context.noIndent;c.context={prev:c.context,pluginName:e,indent:c.indented,startOfLine:t,noIndent:n}}function p(){c.context&&(c.context=c.context.prev)}function m(e){if(e==`openPlugin`)return c.pluginName=r,d(_,h(c.startOfLine));if(e==`closePlugin`){var t=!1;return c.context?(t=c.context.pluginName!=r,p()):t=!0,t&&(l=`error`),d(g(t))}return e==`string`&&(c.context&&c.context.name==`!cdata`||f(`!cdata`),c.tokenize==n&&p()),d()}function h(e){return function(t){return t==`selfclosePlugin`||t==`endPlugin`||t==`endPlugin`&&f(c.pluginName,e),d()}}function g(e){return function(t){return e&&(l=`error`),t==`endPlugin`?d():u()}}function _(e){return e==`keyword`?(l=`attribute`,d(_)):e==`equals`?d(v,_):u()}function v(e){return e==`keyword`?(l=`string`,d()):e==`string`?d(y):u()}function y(e){return e==`string`?d(y):u()}var b={name:`tiki`,startState:function(){return{tokenize:n,cc:[],indented:0,startOfLine:!0,pluginName:null,context:null}},token:function(e,t){if(e.sol()&&(t.startOfLine=!0,t.indented=e.indentation()),e.eatSpace())return null;l=i=r=null;var n=t.tokenize(e,t);if((n||i)&&n!=`comment`)for(c=t;!(t.cc.pop()||m)(i||n););return t.startOfLine=!1,l||n},indent:function(e,t,n){var r=e.context;if(r&&r.noIndent)return 0;for(r&&/^{\//.test(t)&&(r=r.prev);r&&!r.startOfLine;)r=r.prev;return r?r.indent+n.unit:0}};export{b as tiki};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={name:`toml`,startState:function(){return{inString:!1,stringType:``,lhs:!0,inArray:0}},token:function(e,t){let n;if(!t.inString&&(n=e.match(/^('''|"""|'|")/))&&(t.stringType=n[0],t.inString=!0),e.sol()&&!t.inString&&t.inArray===0&&(t.lhs=!0),t.inString){for(;t.inString;)if(e.match(t.stringType))t.inString=!1;else if(e.peek()===`\\`)e.next(),e.next();else if(e.eol())break;else e.match(/^.[^\\\"\']*/);return t.lhs?`property`:`string`}return t.inArray&&e.peek()===`]`?(e.next(),t.inArray--,`bracket`):t.lhs&&e.peek()===`[`&&e.skipTo(`]`)?(e.next(),e.peek()===`]`&&e.next(),`atom`):e.peek()===`#`?(e.skipToEnd(),`comment`):e.eatSpace()?null:t.lhs&&e.eatWhile(function(e){return e!=`=`&&e!=` `})?`property`:t.lhs&&e.peek()===`=`?(e.next(),t.lhs=!1,null):!t.lhs&&e.match(/^\d\d\d\d[\d\-\:\.T]*Z/)||!t.lhs&&(e.match(`true`)||e.match(`false`))?`atom`:!t.lhs&&e.peek()===`[`?(t.inArray++,e.next(),`bracket`):!t.lhs&&e.match(/^\-?\d+(?:\.\d+)?/)?`number`:(e.eatSpace()||e.next(),null)},languageData:{commentTokens:{line:`#`}}};export{e as toml};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={};function t(t){if(t.eatSpace())return null;var n=t.sol(),r=t.next();if(r===`\\`)return t.match(`fB`)||t.match(`fR`)||t.match(`fI`)||t.match(`u`)||t.match(`d`)||t.match(`%`)||t.match(`&`)?`string`:t.match(`m[`)?(t.skipTo(`]`),t.next(),`string`):t.match(`s+`)||t.match(`s-`)?(t.eatWhile(/[\d-]/),`string`):((t.match(`(`)||t.match(`*(`))&&t.eatWhile(/[\w-]/),`string`);if(n&&(r===`.`||r===`'`)&&t.eat(`\\`)&&t.eat(`"`))return t.skipToEnd(),`comment`;if(n&&r===`.`){if(t.match(`B `)||t.match(`I `)||t.match(`R `))return`attribute`;if(t.match(`TH `)||t.match(`SH `)||t.match(`SS `)||t.match(`HP `))return t.skipToEnd(),`quote`;if(t.match(/[A-Z]/)&&t.match(/[A-Z]/)||t.match(/[a-z]/)&&t.match(/[a-z]/))return`attribute`}t.eatWhile(/[\w-]/);var i=t.current();return e.hasOwnProperty(i)?e[i]:null}function n(e,n){return(n.tokens[0]||t)(e,n)}var r={name:`troff`,startState:function(){return{tokens:[]}},token:function(e,t){return n(e,t)}};export{r as troff};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){for(var t={},n=e.split(` `),r=0;r<n.length;++r)t[n[r]]=!0;return t}var t={name:`ttcn`,keywords:e(`activate address alive all alt altstep and and4b any break case component const continue control deactivate display do else encode enumerated except exception execute extends extension external for from function goto group if import in infinity inout interleave label language length log match message mixed mod modifies module modulepar mtc noblock not not4b nowait of on optional or or4b out override param pattern port procedure record recursive rem repeat return runs select self sender set signature system template testcase to type union value valueof var variant while with xor xor4b`),builtin:e(`bit2hex bit2int bit2oct bit2str char2int char2oct encvalue decomp decvalue float2int float2str hex2bit hex2int hex2oct hex2str int2bit int2char int2float int2hex int2oct int2str int2unichar isbound ischosen ispresent isvalue lengthof log2str oct2bit oct2char oct2hex oct2int oct2str regexp replace rnd sizeof str2bit str2float str2hex str2int str2oct substr unichar2int unichar2char enum2int`),types:e(`anytype bitstring boolean char charstring default float hexstring integer objid octetstring universal verdicttype timer`),timerOps:e(`read running start stop timeout`),portOps:e(`call catch check clear getcall getreply halt raise receive reply send trigger`),configOps:e(`create connect disconnect done kill killed map unmap`),verdictOps:e(`getverdict setverdict`),sutOps:e(`action`),functionOps:e(`apply derefers refers`),verdictConsts:e(`error fail inconc none pass`),booleanConsts:e(`true false`),otherConsts:e(`null NULL omit`),visibilityModifiers:e(`private public friend`),templateMatch:e(`complement ifpresent subset superset permutation`),multiLineStrings:!0},n=[];function r(e){if(e)for(var t in e)e.hasOwnProperty(t)&&n.push(t)}r(t.keywords),r(t.builtin),r(t.timerOps),r(t.portOps);var i=t.keywords||{},a=t.builtin||{},o=t.timerOps||{},s=t.portOps||{},c=t.configOps||{},l=t.verdictOps||{},u=t.sutOps||{},d=t.functionOps||{},f=t.verdictConsts||{},p=t.booleanConsts||{},m=t.otherConsts||{},h=t.types||{},g=t.visibilityModifiers||{},_=t.templateMatch||{},v=t.multiLineStrings,y=t.indentStatements!==!1,b=/[+\-*&@=<>!\/]/,x;function S(e,t){var n=e.next();if(n==`"`||n==`'`)return t.tokenize=C(n),t.tokenize(e,t);if(/[\[\]{}\(\),;\\:\?\.]/.test(n))return x=n,`punctuation`;if(n==`#`)return e.skipToEnd(),`atom`;if(n==`%`)return e.eatWhile(/\b/),`atom`;if(/\d/.test(n))return e.eatWhile(/[\w\.]/),`number`;if(n==`/`){if(e.eat(`*`))return t.tokenize=w,w(e,t);if(e.eat(`/`))return e.skipToEnd(),`comment`}if(b.test(n))return n==`@`&&(e.match(`try`)||e.match(`catch`)||e.match(`lazy`))?`keyword`:(e.eatWhile(b),`operator`);e.eatWhile(/[\w\$_\xa1-\uffff]/);var r=e.current();return i.propertyIsEnumerable(r)?`keyword`:a.propertyIsEnumerable(r)?`builtin`:o.propertyIsEnumerable(r)||c.propertyIsEnumerable(r)||l.propertyIsEnumerable(r)||s.propertyIsEnumerable(r)||u.propertyIsEnumerable(r)||d.propertyIsEnumerable(r)?`def`:f.propertyIsEnumerable(r)||p.propertyIsEnumerable(r)||m.propertyIsEnumerable(r)?`string`:h.propertyIsEnumerable(r)?`typeName.standard`:g.propertyIsEnumerable(r)?`modifier`:_.propertyIsEnumerable(r)?`atom`:`variable`}function C(e){return function(t,n){for(var r=!1,i,a=!1;(i=t.next())!=null;){if(i==e&&!r){var o=t.peek();o&&(o=o.toLowerCase(),(o==`b`||o==`h`||o==`o`)&&t.next()),a=!0;break}r=!r&&i==`\\`}return(a||!(r||v))&&(n.tokenize=null),`string`}}function w(e,t){for(var n=!1,r;r=e.next();){if(r==`/`&&n){t.tokenize=null;break}n=r==`*`}return`comment`}function T(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function E(e,t,n){var r=e.indented;return e.context&&e.context.type==`statement`&&(r=e.context.indented),e.context=new T(r,t,n,null,e.context)}function D(e){var t=e.context.type;return(t==`)`||t==`]`||t==`}`)&&(e.indented=e.context.indented),e.context=e.context.prev}var O={name:`ttcn`,startState:function(){return{tokenize:null,context:new T(0,0,`top`,!1),indented:0,startOfLine:!0}},token:function(e,t){var n=t.context;if(e.sol()&&(n.align??(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0),e.eatSpace())return null;x=null;var r=(t.tokenize||S)(e,t);if(r==`comment`)return r;if(n.align??(n.align=!0),(x==`;`||x==`:`||x==`,`)&&n.type==`statement`)D(t);else if(x==`{`)E(t,e.column(),`}`);else if(x==`[`)E(t,e.column(),`]`);else if(x==`(`)E(t,e.column(),`)`);else if(x==`}`){for(;n.type==`statement`;)n=D(t);for(n.type==`}`&&(n=D(t));n.type==`statement`;)n=D(t)}else x==n.type?D(t):y&&((n.type==`}`||n.type==`top`)&&x!=`;`||n.type==`statement`&&x==`newstatement`)&&E(t,e.column(),`statement`);return t.startOfLine=!1,r},languageData:{indentOnInput:/^\s*[{}]$/,commentTokens:{line:`//`,block:{open:`/*`,close:`*/`}},autocomplete:n}};export{O as ttcn};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){for(var t={},n=e.split(` `),r=0;r<n.length;++r)t[n[r]]=!0;return t}var t={name:`ttcn-cfg`,keywords:e(`Yes No LogFile FileMask ConsoleMask AppendFile TimeStampFormat LogEventTypes SourceInfoFormat LogEntityName LogSourceInfo DiskFullAction LogFileNumber LogFileSize MatchingHints Detailed Compact SubCategories Stack Single None Seconds DateTime Time Stop Error Retry Delete TCPPort KillTimer NumHCs UnixSocketsEnabled LocalAddress`),fileNCtrlMaskOptions:e(`TTCN_EXECUTOR TTCN_ERROR TTCN_WARNING TTCN_PORTEVENT TTCN_TIMEROP TTCN_VERDICTOP TTCN_DEFAULTOP TTCN_TESTCASE TTCN_ACTION TTCN_USER TTCN_FUNCTION TTCN_STATISTICS TTCN_PARALLEL TTCN_MATCHING TTCN_DEBUG EXECUTOR ERROR WARNING PORTEVENT TIMEROP VERDICTOP DEFAULTOP TESTCASE ACTION USER FUNCTION STATISTICS PARALLEL MATCHING DEBUG LOG_ALL LOG_NOTHING ACTION_UNQUALIFIED DEBUG_ENCDEC DEBUG_TESTPORT DEBUG_UNQUALIFIED DEFAULTOP_ACTIVATE DEFAULTOP_DEACTIVATE DEFAULTOP_EXIT DEFAULTOP_UNQUALIFIED ERROR_UNQUALIFIED EXECUTOR_COMPONENT EXECUTOR_CONFIGDATA EXECUTOR_EXTCOMMAND EXECUTOR_LOGOPTIONS EXECUTOR_RUNTIME EXECUTOR_UNQUALIFIED FUNCTION_RND FUNCTION_UNQUALIFIED MATCHING_DONE MATCHING_MCSUCCESS MATCHING_MCUNSUCC MATCHING_MMSUCCESS MATCHING_MMUNSUCC MATCHING_PCSUCCESS MATCHING_PCUNSUCC MATCHING_PMSUCCESS MATCHING_PMUNSUCC MATCHING_PROBLEM MATCHING_TIMEOUT MATCHING_UNQUALIFIED PARALLEL_PORTCONN PARALLEL_PORTMAP PARALLEL_PTC PARALLEL_UNQUALIFIED PORTEVENT_DUALRECV PORTEVENT_DUALSEND PORTEVENT_MCRECV PORTEVENT_MCSEND PORTEVENT_MMRECV PORTEVENT_MMSEND PORTEVENT_MQUEUE PORTEVENT_PCIN PORTEVENT_PCOUT PORTEVENT_PMIN PORTEVENT_PMOUT PORTEVENT_PQUEUE PORTEVENT_STATE PORTEVENT_UNQUALIFIED STATISTICS_UNQUALIFIED STATISTICS_VERDICT TESTCASE_FINISH TESTCASE_START TESTCASE_UNQUALIFIED TIMEROP_GUARD TIMEROP_READ TIMEROP_START TIMEROP_STOP TIMEROP_TIMEOUT TIMEROP_UNQUALIFIED USER_UNQUALIFIED VERDICTOP_FINAL VERDICTOP_GETVERDICT VERDICTOP_SETVERDICT VERDICTOP_UNQUALIFIED WARNING_UNQUALIFIED`),externalCommands:e(`BeginControlPart EndControlPart BeginTestCase EndTestCase`),multiLineStrings:!0},n=t.keywords,r=t.fileNCtrlMaskOptions,i=t.externalCommands,a=t.multiLineStrings,o=t.indentStatements!==!1,s=/[\|]/,c;function l(e,t){var a=e.next();if(a==`"`||a==`'`)return t.tokenize=u(a),t.tokenize(e,t);if(/[:=]/.test(a))return c=a,`punctuation`;if(a==`#`)return e.skipToEnd(),`comment`;if(/\d/.test(a))return e.eatWhile(/[\w\.]/),`number`;if(s.test(a))return e.eatWhile(s),`operator`;if(a==`[`)return e.eatWhile(/[\w_\]]/),`number`;e.eatWhile(/[\w\$_]/);var o=e.current();return n.propertyIsEnumerable(o)?`keyword`:r.propertyIsEnumerable(o)?`atom`:i.propertyIsEnumerable(o)?`deleted`:`variable`}function u(e){return function(t,n){for(var r=!1,i,o=!1;(i=t.next())!=null;){if(i==e&&!r){var s=t.peek();s&&(s=s.toLowerCase(),(s==`b`||s==`h`||s==`o`)&&t.next()),o=!0;break}r=!r&&i==`\\`}return(o||!(r||a))&&(n.tokenize=null),`string`}}function d(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function f(e,t,n){var r=e.indented;return e.context&&e.context.type==`statement`&&(r=e.context.indented),e.context=new d(r,t,n,null,e.context)}function p(e){var t=e.context.type;return(t==`)`||t==`]`||t==`}`)&&(e.indented=e.context.indented),e.context=e.context.prev}var m={name:`ttcn`,startState:function(){return{tokenize:null,context:new d(0,0,`top`,!1),indented:0,startOfLine:!0}},token:function(e,t){var n=t.context;if(e.sol()&&(n.align??(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0),e.eatSpace())return null;c=null;var r=(t.tokenize||l)(e,t);if(r==`comment`)return r;if(n.align??(n.align=!0),(c==`;`||c==`:`||c==`,`)&&n.type==`statement`)p(t);else if(c==`{`)f(t,e.column(),`}`);else if(c==`[`)f(t,e.column(),`]`);else if(c==`(`)f(t,e.column(),`)`);else if(c==`}`){for(;n.type==`statement`;)n=p(t);for(n.type==`}`&&(n=p(t));n.type==`statement`;)n=p(t)}else c==n.type?p(t):o&&((n.type==`}`||n.type==`top`)&&c!=`;`||n.type==`statement`&&c==`newstatement`)&&f(t,e.column(),`statement`);return t.startOfLine=!1,r},languageData:{indentOnInput:/^\s*[{}]$/,commentTokens:{line:`#`}}};export{m as ttcnCfg};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e;function t(e){return RegExp(`^(?:`+e.join(`|`)+`)$`,`i`)}t([]);var n=t([`@prefix`,`@base`,`a`]),r=/[*+\-<>=&|]/;function i(t,i){var o=t.next();if(e=null,o==`<`&&!t.match(/^[\s\u00a0=]/,!1))return t.match(/^[^\s\u00a0>]*>?/),`atom`;if(o==`"`||o==`'`)return i.tokenize=a(o),i.tokenize(t,i);if(/[{}\(\),\.;\[\]]/.test(o))return e=o,null;if(o==`#`)return t.skipToEnd(),`comment`;if(r.test(o))return t.eatWhile(r),null;if(o==`:`)return`operator`;if(t.eatWhile(/[_\w\d]/),t.peek()==`:`)return`variableName.special`;var s=t.current();return n.test(s)?`meta`:o>=`A`&&o<=`Z`?`comment`:`keyword`;var s}function a(e){return function(t,n){for(var r=!1,a;(a=t.next())!=null;){if(a==e&&!r){n.tokenize=i;break}r=!r&&a==`\\`}return`string`}}function o(e,t,n){e.context={prev:e.context,indent:e.indent,col:n,type:t}}function s(e){e.indent=e.context.indent,e.context=e.context.prev}var c={name:`turtle`,startState:function(){return{tokenize:i,context:null,indent:0,col:0}},token:function(t,n){if(t.sol()&&(n.context&&n.context.align==null&&(n.context.align=!1),n.indent=t.indentation()),t.eatSpace())return null;var r=n.tokenize(t,n);if(r!=`comment`&&n.context&&n.context.align==null&&n.context.type!=`pattern`&&(n.context.align=!0),e==`(`)o(n,`)`,t.column());else if(e==`[`)o(n,`]`,t.column());else if(e==`{`)o(n,`}`,t.column());else if(/[\]\}\)]/.test(e)){for(;n.context&&n.context.type==`pattern`;)s(n);n.context&&e==n.context.type&&s(n)}else e==`.`&&n.context&&n.context.type==`pattern`?s(n):/atom|string|variable/.test(r)&&n.context&&(/[\}\]]/.test(n.context.type)?o(n,`pattern`,t.column()):n.context.type==`pattern`&&!n.context.align&&(n.context.align=!0,n.context.col=t.column()));return r},indent:function(e,t,n){var r=t&&t.charAt(0),i=e.context;if(/[\]\}]/.test(r))for(;i&&i.type==`pattern`;)i=i.prev;var a=i&&r==i.type;return i?i.type==`pattern`?i.col:i.align?i.col+ +!a:i.indent+(a?0:n.unit):0},languageData:{commentTokens:{line:`#`}}};export{c as turtle};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=`error`;function t(e){return RegExp(`^((`+e.join(`)|(`)+`))\\b`,`i`)}var n=RegExp(`^[\\+\\-\\*/%&\\\\|\\^~<>!]`),r=RegExp("^[\\(\\)\\[\\]\\{\\}@,:`=;\\.]"),i=RegExp(`^((==)|(<>)|(<=)|(>=)|(<>)|(<<)|(>>)|(//)|(\\*\\*))`),a=RegExp(`^((\\+=)|(\\-=)|(\\*=)|(%=)|(/=)|(&=)|(\\|=)|(\\^=))`),o=RegExp(`^((//=)|(>>=)|(<<=)|(\\*\\*=))`),s=RegExp(`^[_A-Za-z][_A-Za-z0-9]*`),c=[`class`,`module`,`sub`,`enum`,`select`,`while`,`if`,`function`,`get`,`set`,`property`,`try`,`structure`,`synclock`,`using`,`with`],l=[`else`,`elseif`,`case`,`catch`,`finally`],u=[`next`,`loop`],d=[`and`,`andalso`,`or`,`orelse`,`xor`,`in`,`not`,`is`,`isnot`,`like`],f=t(d),p=`#const.#else.#elseif.#end.#if.#region.addhandler.addressof.alias.as.byref.byval.cbool.cbyte.cchar.cdate.cdbl.cdec.cint.clng.cobj.compare.const.continue.csbyte.cshort.csng.cstr.cuint.culng.cushort.declare.default.delegate.dim.directcast.each.erase.error.event.exit.explicit.false.for.friend.gettype.goto.handles.implements.imports.infer.inherits.interface.isfalse.istrue.lib.me.mod.mustinherit.mustoverride.my.mybase.myclass.namespace.narrowing.new.nothing.notinheritable.notoverridable.of.off.on.operator.option.optional.out.overloads.overridable.overrides.paramarray.partial.private.protected.public.raiseevent.readonly.redim.removehandler.resume.return.shadows.shared.static.step.stop.strict.then.throw.to.true.trycast.typeof.until.until.when.widening.withevents.writeonly`.split(`.`),m=`object.boolean.char.string.byte.sbyte.short.ushort.int16.uint16.integer.uinteger.int32.uint32.long.ulong.int64.uint64.decimal.single.double.float.date.datetime.intptr.uintptr`.split(`.`),h=t(p),g=t(m),_=`"`,v=t(c),y=t(l),b=t(u),x=t([`end`]),S=t([`do`]),C=null;function w(e,t){t.currentIndent++}function T(e,t){t.currentIndent--}function E(t,c){if(t.eatSpace())return null;if(t.peek()===`'`)return t.skipToEnd(),`comment`;if(t.match(/^((&H)|(&O))?[0-9\.a-f]/i,!1)){var l=!1;if((t.match(/^\d*\.\d+F?/i)||t.match(/^\d+\.\d*F?/)||t.match(/^\.\d+F?/))&&(l=!0),l)return t.eat(/J/i),`number`;var u=!1;if(t.match(/^&H[0-9a-f]+/i)||t.match(/^&O[0-7]+/i)?u=!0:t.match(/^[1-9]\d*F?/)?(t.eat(/J/i),u=!0):t.match(/^0(?![\dx])/i)&&(u=!0),u)return t.eat(/L/i),`number`}return t.match(_)?(c.tokenize=D(t.current()),c.tokenize(t,c)):t.match(o)||t.match(a)?null:t.match(i)||t.match(n)||t.match(f)?`operator`:t.match(r)?null:t.match(S)?(w(t,c),c.doInCurrentLine=!0,`keyword`):t.match(v)?(c.doInCurrentLine?c.doInCurrentLine=!1:w(t,c),`keyword`):t.match(y)?`keyword`:t.match(x)?(T(t,c),T(t,c),`keyword`):t.match(b)?(T(t,c),`keyword`):t.match(g)||t.match(h)?`keyword`:t.match(s)?`variable`:(t.next(),e)}function D(e){var t=e.length==1,n=`string`;return function(r,i){for(;!r.eol();){if(r.eatWhile(/[^'"]/),r.match(e))return i.tokenize=E,n;r.eat(/['"]/)}return t&&(i.tokenize=E),n}}function O(t,n){var r=n.tokenize(t,n),i=t.current();if(i===`.`)return r=n.tokenize(t,n),r===`variable`?`variable`:e;var a=`[({`.indexOf(i);return a!==-1&&w(t,n),C===`dedent`&&T(t,n)||(a=`])}`.indexOf(i),a!==-1&&T(t,n))?e:r}var k={name:`vb`,startState:function(){return{tokenize:E,lastToken:null,currentIndent:0,nextLineIndent:0,doInCurrentLine:!1}},token:function(e,t){e.sol()&&(t.currentIndent+=t.nextLineIndent,t.nextLineIndent=0,t.doInCurrentLine=0);var n=O(e,t);return t.lastToken={style:n,content:e.current()},n},indent:function(e,t,n){var r=t.replace(/^\s+|\s+$/g,``);return r.match(b)||r.match(x)||r.match(y)?n.unit*(e.currentIndent-1):e.currentIndent<0?0:e.currentIndent*n.unit},languageData:{closeBrackets:{brackets:[`(`,`[`,`{`,`"`]},commentTokens:{line:`'`},autocomplete:c.concat(l).concat(u).concat(d).concat(p).concat(m)}};export{k as vb};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){var t=`error`;function n(e){return RegExp(`^((`+e.join(`)|(`)+`))\\b`,`i`)}var r=RegExp(`^[\\+\\-\\*/&\\\\\\^<>=]`),i=RegExp(`^((<>)|(<=)|(>=))`),a=RegExp(`^[\\.,]`),o=RegExp(`^[\\(\\)]`),s=RegExp(`^[A-Za-z][_A-Za-z0-9]*`),c=[`class`,`sub`,`select`,`while`,`if`,`function`,`property`,`with`,`for`],l=[`else`,`elseif`,`case`],u=[`next`,`loop`,`wend`],d=n([`and`,`or`,`not`,`xor`,`is`,`mod`,`eqv`,`imp`]),f=[`dim`,`redim`,`then`,`until`,`randomize`,`byval`,`byref`,`new`,`property`,`exit`,`in`,`const`,`private`,`public`,`get`,`set`,`let`,`stop`,`on error resume next`,`on error goto 0`,`option explicit`,`call`,`me`],p=[`true`,`false`,`nothing`,`empty`,`null`],m=`abs.array.asc.atn.cbool.cbyte.ccur.cdate.cdbl.chr.cint.clng.cos.csng.cstr.date.dateadd.datediff.datepart.dateserial.datevalue.day.escape.eval.execute.exp.filter.formatcurrency.formatdatetime.formatnumber.formatpercent.getlocale.getobject.getref.hex.hour.inputbox.instr.instrrev.int.fix.isarray.isdate.isempty.isnull.isnumeric.isobject.join.lbound.lcase.left.len.loadpicture.log.ltrim.rtrim.trim.maths.mid.minute.month.monthname.msgbox.now.oct.replace.rgb.right.rnd.round.scriptengine.scriptenginebuildversion.scriptenginemajorversion.scriptengineminorversion.second.setlocale.sgn.sin.space.split.sqr.strcomp.string.strreverse.tan.time.timer.timeserial.timevalue.typename.ubound.ucase.unescape.vartype.weekday.weekdayname.year`.split(`.`),h=`vbBlack.vbRed.vbGreen.vbYellow.vbBlue.vbMagenta.vbCyan.vbWhite.vbBinaryCompare.vbTextCompare.vbSunday.vbMonday.vbTuesday.vbWednesday.vbThursday.vbFriday.vbSaturday.vbUseSystemDayOfWeek.vbFirstJan1.vbFirstFourDays.vbFirstFullWeek.vbGeneralDate.vbLongDate.vbShortDate.vbLongTime.vbShortTime.vbObjectError.vbOKOnly.vbOKCancel.vbAbortRetryIgnore.vbYesNoCancel.vbYesNo.vbRetryCancel.vbCritical.vbQuestion.vbExclamation.vbInformation.vbDefaultButton1.vbDefaultButton2.vbDefaultButton3.vbDefaultButton4.vbApplicationModal.vbSystemModal.vbOK.vbCancel.vbAbort.vbRetry.vbIgnore.vbYes.vbNo.vbCr.VbCrLf.vbFormFeed.vbLf.vbNewLine.vbNullChar.vbNullString.vbTab.vbVerticalTab.vbUseDefault.vbTrue.vbFalse.vbEmpty.vbNull.vbInteger.vbLong.vbSingle.vbDouble.vbCurrency.vbDate.vbString.vbObject.vbError.vbBoolean.vbVariant.vbDataObject.vbDecimal.vbByte.vbArray`.split(`.`),g=[`WScript`,`err`,`debug`,`RegExp`],_=[`description`,`firstindex`,`global`,`helpcontext`,`helpfile`,`ignorecase`,`length`,`number`,`pattern`,`source`,`value`,`count`],v=[`clear`,`execute`,`raise`,`replace`,`test`,`write`,`writeline`,`close`,`open`,`state`,`eof`,`update`,`addnew`,`end`,`createobject`,`quit`],y=[`server`,`response`,`request`,`session`,`application`],b=[`buffer`,`cachecontrol`,`charset`,`contenttype`,`expires`,`expiresabsolute`,`isclientconnected`,`pics`,`status`,`clientcertificate`,`cookies`,`form`,`querystring`,`servervariables`,`totalbytes`,`contents`,`staticobjects`,`codepage`,`lcid`,`sessionid`,`timeout`,`scripttimeout`],x=[`addheader`,`appendtolog`,`binarywrite`,`end`,`flush`,`redirect`,`binaryread`,`remove`,`removeall`,`lock`,`unlock`,`abandon`,`getlasterror`,`htmlencode`,`mappath`,`transfer`,`urlencode`],S=v.concat(_);g=g.concat(h),e.isASP&&(g=g.concat(y),S=S.concat(x,b));var C=n(f),w=n(p),T=n(m),E=n(g),D=n(S),O=`"`,k=n(c),A=n(l),j=n(u),M=n([`end`]),N=n([`do`]),P=n([`on error resume next`,`exit`]),F=n([`rem`]);function I(e,t){t.currentIndent++}function L(e,t){t.currentIndent--}function R(e,n){if(e.eatSpace())return null;if(e.peek()===`'`||e.match(F))return e.skipToEnd(),`comment`;if(e.match(/^((&H)|(&O))?[0-9\.]/i,!1)&&!e.match(/^((&H)|(&O))?[0-9\.]+[a-z_]/i,!1)){var c=!1;if((e.match(/^\d*\.\d+/i)||e.match(/^\d+\.\d*/)||e.match(/^\.\d+/))&&(c=!0),c)return e.eat(/J/i),`number`;var l=!1;if(e.match(/^&H[0-9a-f]+/i)||e.match(/^&O[0-7]+/i)?l=!0:e.match(/^[1-9]\d*F?/)?(e.eat(/J/i),l=!0):e.match(/^0(?![\dx])/i)&&(l=!0),l)return e.eat(/L/i),`number`}return e.match(O)?(n.tokenize=z(e.current()),n.tokenize(e,n)):e.match(i)||e.match(r)||e.match(d)?`operator`:e.match(a)?null:e.match(o)?`bracket`:e.match(P)?(n.doInCurrentLine=!0,`keyword`):e.match(N)?(I(e,n),n.doInCurrentLine=!0,`keyword`):e.match(k)?(n.doInCurrentLine?n.doInCurrentLine=!1:I(e,n),`keyword`):e.match(A)?`keyword`:e.match(M)?(L(e,n),L(e,n),`keyword`):e.match(j)?(n.doInCurrentLine?n.doInCurrentLine=!1:L(e,n),`keyword`):e.match(C)?`keyword`:e.match(w)?`atom`:e.match(D)?`variableName.special`:e.match(T)||e.match(E)?`builtin`:e.match(s)?`variable`:(e.next(),t)}function z(e){var t=e.length==1,n=`string`;return function(r,i){for(;!r.eol();){if(r.eatWhile(/[^'"]/),r.match(e))return i.tokenize=R,n;r.eat(/['"]/)}return t&&(i.tokenize=R),n}}function B(e,n){var r=n.tokenize(e,n),i=e.current();return i===`.`?(r=n.tokenize(e,n),i=e.current(),r&&(r.substr(0,8)===`variable`||r===`builtin`||r===`keyword`)?((r===`builtin`||r===`keyword`)&&(r=`variable`),S.indexOf(i.substr(1))>-1&&(r=`keyword`),r):t):r}return{name:`vbscript`,startState:function(){return{tokenize:R,lastToken:null,currentIndent:0,nextLineIndent:0,doInCurrentLine:!1,ignoreKeyword:!1}},token:function(e,t){e.sol()&&(t.currentIndent+=t.nextLineIndent,t.nextLineIndent=0,t.doInCurrentLine=0);var n=B(e,t);return t.lastToken={style:n,content:e.current()},n===null&&(n=null),n},indent:function(e,t,n){var r=t.replace(/^\s+|\s+$/g,``);return r.match(j)||r.match(M)||r.match(A)?n.unit*(e.currentIndent-1):e.currentIndent<0?0:e.currentIndent*n.unit}}}var t=e({});e({isASP:!0});export{t as vbScript};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){for(var t={},n=e.split(` `),r=0;r<n.length;++r)t[n[r]]=!0;return t}var t=e(`#end #else #break #stop #[[ #]] #{end} #{else} #{break} #{stop}`),n=e(`#if #elseif #foreach #set #include #parse #macro #define #evaluate #{if} #{elseif} #{foreach} #{set} #{include} #{parse} #{macro} #{define} #{evaluate}`),r=e(`$foreach.count $foreach.hasNext $foreach.first $foreach.last $foreach.topmost $foreach.parent.count $foreach.parent.hasNext $foreach.parent.first $foreach.parent.last $foreach.parent $velocityCount $!bodyContent $bodyContent`),i=/[+\-*&%=<>!?:\/|]/;function a(e,t,n){return t.tokenize=n,n(e,t)}function o(e,o){var u=o.beforeParams;o.beforeParams=!1;var d=e.next();if(d==`'`&&!o.inString&&o.inParams)return o.lastTokenWasBuiltin=!1,a(e,o,s(d));if(d==`"`){if(o.lastTokenWasBuiltin=!1,o.inString)return o.inString=!1,`string`;if(o.inParams)return a(e,o,s(d))}else if(/[\[\]{}\(\),;\.]/.test(d))return d==`(`&&u?o.inParams=!0:d==`)`&&(o.inParams=!1,o.lastTokenWasBuiltin=!0),null;else if(/\d/.test(d))return o.lastTokenWasBuiltin=!1,e.eatWhile(/[\w\.]/),`number`;else if(d==`#`&&e.eat(`*`))return o.lastTokenWasBuiltin=!1,a(e,o,c);else if(d==`#`&&e.match(/ *\[ *\[/))return o.lastTokenWasBuiltin=!1,a(e,o,l);else if(d==`#`&&e.eat(`#`))return o.lastTokenWasBuiltin=!1,e.skipToEnd(),`comment`;else if(d==`$`)return e.eat(`!`),e.eatWhile(/[\w\d\$_\.{}-]/),r&&r.propertyIsEnumerable(e.current())?`keyword`:(o.lastTokenWasBuiltin=!0,o.beforeParams=!0,`builtin`);else if(i.test(d))return o.lastTokenWasBuiltin=!1,e.eatWhile(i),`operator`;else{e.eatWhile(/[\w\$_{}@]/);var f=e.current();return t&&t.propertyIsEnumerable(f)?`keyword`:n&&n.propertyIsEnumerable(f)||e.current().match(/^#@?[a-z0-9_]+ *$/i)&&e.peek()==`(`&&!(n&&n.propertyIsEnumerable(f.toLowerCase()))?(o.beforeParams=!0,o.lastTokenWasBuiltin=!1,`keyword`):o.inString?(o.lastTokenWasBuiltin=!1,`string`):e.pos>f.length&&e.string.charAt(e.pos-f.length-1)==`.`&&o.lastTokenWasBuiltin?`builtin`:(o.lastTokenWasBuiltin=!1,null)}}function s(e){return function(t,n){for(var r=!1,i,a=!1;(i=t.next())!=null;){if(i==e&&!r){a=!0;break}if(e==`"`&&t.peek()==`$`&&!r){n.inString=!0,a=!0;break}r=!r&&i==`\\`}return a&&(n.tokenize=o),`string`}}function c(e,t){for(var n=!1,r;r=e.next();){if(r==`#`&&n){t.tokenize=o;break}n=r==`*`}return`comment`}function l(e,t){for(var n=0,r;r=e.next();){if(r==`#`&&n==2){t.tokenize=o;break}r==`]`?n++:r!=` `&&(n=0)}return`meta`}var u={name:`velocity`,startState:function(){return{tokenize:o,beforeParams:!1,inParams:!1,inString:!1,lastTokenWasBuiltin:!1}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{commentTokens:{line:`##`,block:{open:`#*`,close:`*#`}}}};export{u as velocity};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){var t=e.statementIndentUnit,n=e.dontAlignCalls,r=e.noIndentKeywords||[],i=e.multiLineStrings,a=e.hooks||{};function o(e){for(var t={},n=e.split(` `),r=0;r<n.length;++r)t[n[r]]=!0;return t}var s=o(`accept_on alias always always_comb always_ff always_latch and assert assign assume automatic before begin bind bins binsof bit break buf bufif0 bufif1 byte case casex casez cell chandle checker class clocking cmos config const constraint context continue cover covergroup coverpoint cross deassign default defparam design disable dist do edge else end endcase endchecker endclass endclocking endconfig endfunction endgenerate endgroup endinterface endmodule endpackage endprimitive endprogram endproperty endspecify endsequence endtable endtask enum event eventually expect export extends extern final first_match for force foreach forever fork forkjoin function generate genvar global highz0 highz1 if iff ifnone ignore_bins illegal_bins implements implies import incdir include initial inout input inside instance int integer interconnect interface intersect join join_any join_none large let liblist library local localparam logic longint macromodule matches medium modport module nand negedge nettype new nexttime nmos nor noshowcancelled not notif0 notif1 null or output package packed parameter pmos posedge primitive priority program property protected pull0 pull1 pulldown pullup pulsestyle_ondetect pulsestyle_onevent pure rand randc randcase randsequence rcmos real realtime ref reg reject_on release repeat restrict return rnmos rpmos rtran rtranif0 rtranif1 s_always s_eventually s_nexttime s_until s_until_with scalared sequence shortint shortreal showcancelled signed small soft solve specify specparam static string strong strong0 strong1 struct super supply0 supply1 sync_accept_on sync_reject_on table tagged task this throughout time timeprecision timeunit tran tranif0 tranif1 tri tri0 tri1 triand trior trireg type typedef union unique unique0 unsigned until until_with untyped use uwire var vectored virtual void wait wait_order wand weak weak0 weak1 while wildcard wire with within wor xnor xor`),c=/[\+\-\*\/!~&|^%=?:]/,l=/[\[\]{}()]/,u=/\d[0-9_]*/,d=/\d*\s*'s?d\s*\d[0-9_]*/i,f=/\d*\s*'s?b\s*[xz01][xz01_]*/i,p=/\d*\s*'s?o\s*[xz0-7][xz0-7_]*/i,m=/\d*\s*'s?h\s*[0-9a-fxz?][0-9a-fxz?_]*/i,h=/(\d[\d_]*(\.\d[\d_]*)?E-?[\d_]+)|(\d[\d_]*\.\d[\d_]*)/i,g=/^((\w+)|[)}\]])/,_=/[)}\]]/,v,y,b=o(`case checker class clocking config function generate interface module package primitive program property specify sequence table task`),x={};for(var S in b)x[S]=`end`+S;for(var C in x.begin=`end`,x.casex=`endcase`,x.casez=`endcase`,x.do=`while`,x.fork=`join;join_any;join_none`,x.covergroup=`endgroup`,r){var S=r[C];x[S]&&(x[S]=void 0)}var w=o(`always always_comb always_ff always_latch assert assign assume else export for foreach forever if import initial repeat while`);function T(e,t){var n=e.peek(),r;if(a[n]&&(r=a[n](e,t))!=0||a.tokenBase&&(r=a.tokenBase(e,t))!=0)return r;if(/[,;:\.]/.test(n))return v=e.next(),null;if(l.test(n))return v=e.next(),`bracket`;if(n=="`")return e.next(),e.eatWhile(/[\w\$_]/)?`def`:null;if(n==`$`)return e.next(),e.eatWhile(/[\w\$_]/)?`meta`:null;if(n==`#`)return e.next(),e.eatWhile(/[\d_.]/),`def`;if(n==`"`)return e.next(),t.tokenize=E(n),t.tokenize(e,t);if(n==`/`){if(e.next(),e.eat(`*`))return t.tokenize=D,D(e,t);if(e.eat(`/`))return e.skipToEnd(),`comment`;e.backUp(1)}if(e.match(h)||e.match(d)||e.match(f)||e.match(p)||e.match(m)||e.match(u)||e.match(h))return`number`;if(e.eatWhile(c))return`meta`;if(e.eatWhile(/[\w\$_]/)){var i=e.current();return s[i]?(x[i]&&(v=`newblock`),w[i]&&(v=`newstatement`),y=i,`keyword`):`variable`}return e.next(),null}function E(e){return function(t,n){for(var r=!1,a,o=!1;(a=t.next())!=null;){if(a==e&&!r){o=!0;break}r=!r&&a==`\\`}return(o||!(r||i))&&(n.tokenize=T),`string`}}function D(e,t){for(var n=!1,r;r=e.next();){if(r==`/`&&n){t.tokenize=T;break}n=r==`*`}return`comment`}function O(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function k(e,t,n){var r=e.indented;return e.context=new O(r,t,n,null,e.context)}function A(e){var t=e.context.type;return(t==`)`||t==`]`||t==`}`)&&(e.indented=e.context.indented),e.context=e.context.prev}function j(e,t){if(e==t)return!0;var n=t.split(`;`);for(var r in n)if(e==n[r])return!0;return!1}function M(){var e=[];for(var t in x)if(x[t]){var n=x[t].split(`;`);for(var r in n)e.push(n[r])}return RegExp(`[{}()\\[\\]]|(`+e.join(`|`)+`)$`)}return{name:`verilog`,startState:function(e){var t={tokenize:null,context:new O(-e,0,`top`,!1),indented:0,startOfLine:!0};return a.startState&&a.startState(t),t},token:function(e,t){var n=t.context;if(e.sol()&&(n.align??(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0),a.token){var r=a.token(e,t);if(r!==void 0)return r}if(e.eatSpace())return null;v=null,y=null;var r=(t.tokenize||T)(e,t);if(r==`comment`||r==`meta`||r==`variable`)return r;if(n.align??(n.align=!0),v==n.type)A(t);else if(v==`;`&&n.type==`statement`||n.type&&j(y,n.type))for(n=A(t);n&&n.type==`statement`;)n=A(t);else if(v==`{`)k(t,e.column(),`}`);else if(v==`[`)k(t,e.column(),`]`);else if(v==`(`)k(t,e.column(),`)`);else if(n&&n.type==`endcase`&&v==`:`)k(t,e.column(),`statement`);else if(v==`newstatement`)k(t,e.column(),`statement`);else if(v==`newblock`&&(y!=`function`||!n||n.type!=`statement`&&n.type!=`endgroup`)&&!(y==`task`&&n&&n.type==`statement`)){var i=x[y];k(t,e.column(),i)}return t.startOfLine=!1,r},indent:function(e,r,i){if(e.tokenize!=T&&e.tokenize!=null)return null;if(a.indent){var o=a.indent(e);if(o>=0)return o}var s=e.context,c=r&&r.charAt(0);s.type==`statement`&&c==`}`&&(s=s.prev);var l=!1,u=r.match(g);return u&&(l=j(u[0],s.type)),s.type==`statement`?s.indented+(c==`{`?0:t||i.unit):_.test(s.type)&&s.align&&!n?s.column+ +!l:s.type==`)`&&!l?s.indented+(t||i.unit):s.indented+(l?0:i.unit)},languageData:{indentOnInput:M(),commentTokens:{line:`//`,block:{open:`/*`,close:`*/`}}}}}var t=e({}),n={"|":`link`,">":`property`,$:`variable`,$$:`variable`,"?$":`qualifier`,"?*":`qualifier`,"-":`contentSeparator`,"/":`property`,"/-":`property`,"@":`variableName.special`,"@-":`variableName.special`,"@++":`variableName.special`,"@+=":`variableName.special`,"@+=-":`variableName.special`,"@--":`variableName.special`,"@-=":`variableName.special`,"%+":`tag`,"%-":`tag`,"%":`tag`,">>":`tag`,"<<":`tag`,"<>":`tag`,"#":`tag`,"^":`attribute`,"^^":`attribute`,"^!":`attribute`,"*":`variable`,"**":`variable`,"\\":`keyword`,'"':`comment`},r={"/":`beh-hier`,">":`beh-hier`,"-":`phys-hier`,"|":`pipe`,"?":`when`,"@":`stage`,"\\":`keyword`},i=3,a=/^([~!@#\$%\^&\*-\+=\?\/\\\|'"<>]+)([\d\w_]*)/,o=/^[! ] */,s=/^\/[\/\*]/;e({hooks:{electricInput:!1,token:function(e,t){var c=void 0,l;if(e.sol()&&!t.tlvInBlockComment){e.peek()==`\\`&&(c=`def`,e.skipToEnd(),e.string.match(/\\SV/)?t.tlvCodeActive=!1:e.string.match(/\\TLV/)&&(t.tlvCodeActive=!0)),t.tlvCodeActive&&e.pos==0&&t.indented==0&&(l=e.match(o,!1))&&(t.indented=l[0].length);var u=t.indented,d=u/i;if(d<=t.tlvIndentationStyle.length){var f=e.string.length==u,p=d*i;if(p<e.string.length){var m=e.string.slice(p),h=m[0];r[h]&&(l=m.match(a))&&n[l[1]]&&(u+=i,h==`\\`&&p>0||(t.tlvIndentationStyle[d]=r[h],d++))}if(!f)for(;t.tlvIndentationStyle.length>d;)t.tlvIndentationStyle.pop()}t.tlvNextIndent=u}if(t.tlvCodeActive){var l;if(c===void 0){if(t.tlvInBlockComment)e.match(/^.*?\*\//)?t.tlvInBlockComment=!1:e.skipToEnd(),c=`comment`;else if((l=e.match(s))&&!t.tlvInBlockComment)l[0]==`//`?e.skipToEnd():t.tlvInBlockComment=!0,c=`comment`;else if(l=e.match(a)){var g=l[1],_=l[2];n.hasOwnProperty(g)&&(_.length>0||e.eol())?c=n[g]:e.backUp(e.current().length-1)}else e.match(/^\t+/)?c=`invalid`:e.match(/^[\[\]{}\(\);\:]+/)?c=`meta`:(l=e.match(/^[mM]4([\+_])?[\w\d_]*/))?c=l[1]==`+`?`keyword.special`:`keyword`:e.match(/^ +/)?e.eol()&&(c=`error`):e.match(/^[\w\d_]+/)?c=`number`:e.next()}}else e.match(/^[mM]4([\w\d_]*)/)&&(c=`keyword`);return c},indent:function(e){return e.tlvCodeActive==1?e.tlvNextIndent:-1},startState:function(e){e.tlvIndentationStyle=[],e.tlvCodeActive=!0,e.tlvNextIndent=-1,e.tlvInBlockComment=!1}}});export{t as verilog};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){for(var t={},n=e.split(`,`),r=0;r<n.length;++r){var i=n[r].toUpperCase(),a=n[r].charAt(0).toUpperCase()+n[r].slice(1);t[n[r]]=!0,t[i]=!0,t[a]=!0}return t}function t(e){return e.eatWhile(/[\w\$_]/),`meta`}var n=e(`null`),r={"`":t,$:t},i=e(`abs,access,after,alias,all,and,architecture,array,assert,attribute,begin,block,body,buffer,bus,case,component,configuration,constant,disconnect,downto,else,elsif,end,end block,end case,end component,end for,end generate,end if,end loop,end process,end record,end units,entity,exit,file,for,function,generate,generic,generic map,group,guarded,if,impure,in,inertial,inout,is,label,library,linkage,literal,loop,map,mod,nand,new,next,nor,null,of,on,open,or,others,out,package,package body,port,port map,postponed,procedure,process,pure,range,record,register,reject,rem,report,return,rol,ror,select,severity,signal,sla,sll,sra,srl,subtype,then,to,transport,type,unaffected,units,until,use,variable,wait,when,while,with,xnor,xor`),a=e(`architecture,entity,begin,case,port,else,elsif,end,for,function,if`),o=/[&|~><!\)\(*#%@+\/=?\:;}{,\.\^\-\[\]]/,s;function c(e,t){var c=e.next();if(r[c]){var d=r[c](e,t);if(d!==!1)return d}if(c==`"`)return t.tokenize=u(c),t.tokenize(e,t);if(c==`'`)return t.tokenize=l(c),t.tokenize(e,t);if(/[\[\]{}\(\),;\:\.]/.test(c))return s=c,null;if(/[\d']/.test(c))return e.eatWhile(/[\w\.']/),`number`;if(c==`-`&&e.eat(`-`))return e.skipToEnd(),`comment`;if(o.test(c))return e.eatWhile(o),`operator`;e.eatWhile(/[\w\$_]/);var f=e.current();return i.propertyIsEnumerable(f.toLowerCase())?(a.propertyIsEnumerable(f)&&(s=`newstatement`),`keyword`):n.propertyIsEnumerable(f)?`atom`:`variable`}function l(e){return function(t,n){for(var r=!1,i,a=!1;(i=t.next())!=null;){if(i==e&&!r){a=!0;break}r=!r&&i==`--`}return(a||!r)&&(n.tokenize=c),`string`}}function u(e){return function(t,n){for(var r=!1,i,a=!1;(i=t.next())!=null;){if(i==e&&!r){a=!0;break}r=!r&&i==`--`}return(a||!r)&&(n.tokenize=c),`string.special`}}function d(e,t,n,r,i){this.indented=e,this.column=t,this.type=n,this.align=r,this.prev=i}function f(e,t,n){return e.context=new d(e.indented,t,n,null,e.context)}function p(e){var t=e.context.type;return(t==`)`||t==`]`||t==`}`)&&(e.indented=e.context.indented),e.context=e.context.prev}var m={name:`vhdl`,startState:function(e){return{tokenize:null,context:new d(-e,0,`top`,!1),indented:0,startOfLine:!0}},token:function(e,t){var n=t.context;if(e.sol()&&(n.align??(n.align=!1),t.indented=e.indentation(),t.startOfLine=!0),e.eatSpace())return null;s=null;var r=(t.tokenize||c)(e,t);if(r==`comment`||r==`meta`)return r;if(n.align??(n.align=!0),(s==`;`||s==`:`)&&n.type==`statement`)p(t);else if(s==`{`)f(t,e.column(),`}`);else if(s==`[`)f(t,e.column(),`]`);else if(s==`(`)f(t,e.column(),`)`);else if(s==`}`){for(;n.type==`statement`;)n=p(t);for(n.type==`}`&&(n=p(t));n.type==`statement`;)n=p(t)}else s==n.type?p(t):(n.type==`}`||n.type==`top`||n.type==`statement`&&s==`newstatement`)&&f(t,e.column(),`statement`);return t.startOfLine=!1,r},indent:function(e,t,n){if(e.tokenize!=c&&e.tokenize!=null)return 0;var r=t&&t.charAt(0),i=e.context,a=r==i.type;return i.type==`statement`?i.indented+(r==`{`?0:n.unit):i.align?i.column+ +!a:i.indented+(a?0:n.unit)},languageData:{indentOnInput:/^\s*[{}]$/,commentTokens:{line:`--`}}};export{m as vhdl};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){return RegExp(`^((`+e.join(`)|(`)+`))\\b`)}var t=[`Clamp`,`Constructor`,`EnforceRange`,`Exposed`,`ImplicitThis`,`Global`,`PrimaryGlobal`,`LegacyArrayClass`,`LegacyUnenumerableNamedProperties`,`LenientThis`,`NamedConstructor`,`NewObject`,`NoInterfaceObject`,`OverrideBuiltins`,`PutForwards`,`Replaceable`,`SameObject`,`TreatNonObjectAsNull`,`TreatNullAs`,`EmptyString`,`Unforgeable`,`Unscopeable`],n=e(t),r=`unsigned.short.long.unrestricted.float.double.boolean.byte.octet.Promise.ArrayBuffer.DataView.Int8Array.Int16Array.Int32Array.Uint8Array.Uint16Array.Uint32Array.Uint8ClampedArray.Float32Array.Float64Array.ByteString.DOMString.USVString.sequence.object.RegExp.Error.DOMException.FrozenArray.any.void`.split(`.`),i=e(r),a=[`attribute`,`callback`,`const`,`deleter`,`dictionary`,`enum`,`getter`,`implements`,`inherit`,`interface`,`iterable`,`legacycaller`,`maplike`,`partial`,`required`,`serializer`,`setlike`,`setter`,`static`,`stringifier`,`typedef`,`optional`,`readonly`,`or`],o=e(a),s=[`true`,`false`,`Infinity`,`NaN`,`null`],c=e(s),l=e([`callback`,`dictionary`,`enum`,`interface`]),u=e([`typedef`]),d=/^[:<=>?]/,f=/^-?([1-9][0-9]*|0[Xx][0-9A-Fa-f]+|0[0-7]*)/,p=/^-?(([0-9]+\.[0-9]*|[0-9]*\.[0-9]+)([Ee][+-]?[0-9]+)?|[0-9]+[Ee][+-]?[0-9]+)/,m=/^_?[A-Za-z][0-9A-Z_a-z-]*/,h=/^_?[A-Za-z][0-9A-Z_a-z-]*(?=\s*;)/,g=/^"[^"]*"/,_=/^\/\*.*?\*\//,v=/^\/\*.*/,y=/^.*?\*\//;function b(e,t){if(e.eatSpace())return null;if(t.inComment)return e.match(y)?(t.inComment=!1,`comment`):(e.skipToEnd(),`comment`);if(e.match(`//`))return e.skipToEnd(),`comment`;if(e.match(_))return`comment`;if(e.match(v))return t.inComment=!0,`comment`;if(e.match(/^-?[0-9\.]/,!1)&&(e.match(f)||e.match(p)))return`number`;if(e.match(g))return`string`;if(t.startDef&&e.match(m))return`def`;if(t.endDef&&e.match(h))return t.endDef=!1,`def`;if(e.match(o))return`keyword`;if(e.match(i)){var r=t.lastToken,a=(e.match(/^\s*(.+?)\b/,!1)||[])[1];return r===`:`||r===`implements`||a===`implements`||a===`=`?`builtin`:`type`}return e.match(n)?`builtin`:e.match(c)?`atom`:e.match(m)?`variable`:e.match(d)?`operator`:(e.next(),null)}var x={name:`webidl`,startState:function(){return{inComment:!1,lastToken:``,startDef:!1,endDef:!1}},token:function(e,t){var n=b(e,t);if(n){var r=e.current();t.lastToken=r,n===`keyword`?(t.startDef=l.test(r),t.endDef=t.endDef||u.test(r)):t.startDef=!1}return n},languageData:{autocomplete:t.concat(r).concat(a).concat(s)}};export{x as webIDL};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=function(){function e(e){return{type:e,style:`keyword`}}for(var t=e(`operator`),n={type:`atom`,style:`atom`},r={type:`punctuation`,style:null},i={type:`axis_specifier`,style:`qualifier`},a={",":r},o=`after.all.allowing.ancestor.ancestor-or-self.any.array.as.ascending.at.attribute.base-uri.before.boundary-space.by.case.cast.castable.catch.child.collation.comment.construction.contains.content.context.copy.copy-namespaces.count.decimal-format.declare.default.delete.descendant.descendant-or-self.descending.diacritics.different.distance.document.document-node.element.else.empty.empty-sequence.encoding.end.entire.every.exactly.except.external.first.following.following-sibling.for.from.ftand.ftnot.ft-option.ftor.function.fuzzy.greatest.group.if.import.in.inherit.insensitive.insert.instance.intersect.into.invoke.is.item.language.last.lax.least.let.levels.lowercase.map.modify.module.most.namespace.next.no.node.nodes.no-inherit.no-preserve.not.occurs.of.only.option.order.ordered.ordering.paragraph.paragraphs.parent.phrase.preceding.preceding-sibling.preserve.previous.processing-instruction.relationship.rename.replace.return.revalidation.same.satisfies.schema.schema-attribute.schema-element.score.self.sensitive.sentence.sentences.sequence.skip.sliding.some.stable.start.stemming.stop.strict.strip.switch.text.then.thesaurus.times.to.transform.treat.try.tumbling.type.typeswitch.union.unordered.update.updating.uppercase.using.validate.value.variable.version.weight.when.where.wildcards.window.with.without.word.words.xquery`.split(`.`),s=0,c=o.length;s<c;s++)a[o[s]]=e(o[s]);for(var l=`xs:anyAtomicType.xs:anySimpleType.xs:anyType.xs:anyURI.xs:base64Binary.xs:boolean.xs:byte.xs:date.xs:dateTime.xs:dateTimeStamp.xs:dayTimeDuration.xs:decimal.xs:double.xs:duration.xs:ENTITIES.xs:ENTITY.xs:float.xs:gDay.xs:gMonth.xs:gMonthDay.xs:gYear.xs:gYearMonth.xs:hexBinary.xs:ID.xs:IDREF.xs:IDREFS.xs:int.xs:integer.xs:item.xs:java.xs:language.xs:long.xs:Name.xs:NCName.xs:negativeInteger.xs:NMTOKEN.xs:NMTOKENS.xs:nonNegativeInteger.xs:nonPositiveInteger.xs:normalizedString.xs:NOTATION.xs:numeric.xs:positiveInteger.xs:precisionDecimal.xs:QName.xs:short.xs:string.xs:time.xs:token.xs:unsignedByte.xs:unsignedInt.xs:unsignedLong.xs:unsignedShort.xs:untyped.xs:untypedAtomic.xs:yearMonthDuration`.split(`.`),s=0,c=l.length;s<c;s++)a[l[s]]=n;for(var u=[`eq`,`ne`,`lt`,`le`,`gt`,`ge`,`:=`,`=`,`>`,`>=`,`<`,`<=`,`.`,`|`,`?`,`and`,`or`,`div`,`idiv`,`mod`,`*`,`/`,`+`,`-`],s=0,c=u.length;s<c;s++)a[u[s]]=t;for(var d=[`self::`,`attribute::`,`child::`,`descendant::`,`descendant-or-self::`,`parent::`,`ancestor::`,`ancestor-or-self::`,`following::`,`preceding::`,`following-sibling::`,`preceding-sibling::`],s=0,c=d.length;s<c;s++)a[d[s]]=i;return a}();function t(e,t,n){return t.tokenize=n,n(e,t)}function n(n,i){var c=n.next(),p=!1,g=h(n);if(c==`<`){if(n.match(`!--`,!0))return t(n,i,l);if(n.match(`![CDATA`,!1))return i.tokenize=u,`tag`;if(n.match(`?`,!1))return t(n,i,d);var y=n.eat(`/`);n.eatSpace();for(var b=``,x;x=n.eat(/[^\s\u00a0=<>\"\'\/?]/);)b+=x;return t(n,i,s(b,y))}if(c==`{`)return _(i,{type:`codeblock`}),null;if(c==`}`)return v(i),null;if(f(i))return c==`>`?`tag`:c==`/`&&n.eat(`>`)?(v(i),`tag`):`variable`;if(/\d/.test(c))return n.match(/^\d*(?:\.\d*)?(?:E[+\-]?\d+)?/),`atom`;if(c===`(`&&n.eat(`:`))return _(i,{type:`comment`}),t(n,i,r);if(!g&&(c===`"`||c===`'`))return a(n,i,c);if(c===`$`)return t(n,i,o);if(c===`:`&&n.eat(`=`))return`keyword`;if(c===`(`)return _(i,{type:`paren`}),null;if(c===`)`)return v(i),null;if(c===`[`)return _(i,{type:`bracket`}),null;if(c===`]`)return v(i),null;var S=e.propertyIsEnumerable(c)&&e[c];if(g&&c===`"`)for(;n.next()!==`"`;);if(g&&c===`'`)for(;n.next()!==`'`;);S||n.eatWhile(/[\w\$_-]/);var C=n.eat(`:`);!n.eat(`:`)&&C&&n.eatWhile(/[\w\$_-]/),n.match(/^[ \t]*\(/,!1)&&(p=!0);var w=n.current();return S=e.propertyIsEnumerable(w)&&e[w],p&&!S&&(S={type:`function_call`,style:`def`}),m(i)?(v(i),`variable`):((w==`element`||w==`attribute`||S.type==`axis_specifier`)&&_(i,{type:`xmlconstructor`}),S?S.style:`variable`)}function r(e,t){for(var n=!1,r=!1,i=0,a;a=e.next();){if(a==`)`&&n){if(i>0)i--;else{v(t);break}}else a==`:`&&r&&i++;n=a==`:`,r=a==`(`}return`comment`}function i(e,t){return function(r,i){for(var a;a=r.next();)if(a==e){v(i),t&&(i.tokenize=t);break}else if(r.match(`{`,!1)&&p(i))return _(i,{type:`codeblock`}),i.tokenize=n,`string`;return`string`}}function a(e,n,r,a){let o=i(r,a);return _(n,{type:`string`,name:r,tokenize:o}),t(e,n,o)}function o(e,t){var r=/[\w\$_-]/;if(e.eat(`"`)){for(;e.next()!==`"`;);e.eat(`:`)}else e.eatWhile(r),e.match(`:=`,!1)||e.eat(`:`);return e.eatWhile(r),t.tokenize=n,`variable`}function s(e,t){return function(r,i){if(r.eatSpace(),t&&r.eat(`>`))return v(i),i.tokenize=n,`tag`;if(r.eat(`/`)||_(i,{type:`tag`,name:e,tokenize:n}),r.eat(`>`))i.tokenize=n;else return i.tokenize=c,`tag`;return`tag`}}function c(e,t){var r=e.next();return r==`/`&&e.eat(`>`)?(p(t)&&v(t),f(t)&&v(t),`tag`):r==`>`?(p(t)&&v(t),`tag`):r==`=`?null:r==`"`||r==`'`?a(e,t,r,c):(p(t)||_(t,{type:`attribute`,tokenize:c}),e.eat(/[a-zA-Z_:]/),e.eatWhile(/[-a-zA-Z0-9_:.]/),e.eatSpace(),(e.match(`>`,!1)||e.match(`/`,!1))&&(v(t),t.tokenize=n),`attribute`)}function l(e,t){for(var r;r=e.next();)if(r==`-`&&e.match(`->`,!0))return t.tokenize=n,`comment`}function u(e,t){for(var r;r=e.next();)if(r==`]`&&e.match(`]`,!0))return t.tokenize=n,`comment`}function d(e,t){for(var r;r=e.next();)if(r==`?`&&e.match(`>`,!0))return t.tokenize=n,`processingInstruction`}function f(e){return g(e,`tag`)}function p(e){return g(e,`attribute`)}function m(e){return g(e,`xmlconstructor`)}function h(e){return e.current()===`"`?e.match(/^[^\"]+\"\:/,!1):e.current()===`'`&&e.match(/^[^\"]+\'\:/,!1)}function g(e,t){return e.stack.length&&e.stack[e.stack.length-1].type==t}function _(e,t){e.stack.push(t)}function v(e){e.stack.pop(),e.tokenize=e.stack.length&&e.stack[e.stack.length-1].tokenize||n}var y={name:`xquery`,startState:function(){return{tokenize:n,cc:[],stack:[]}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},languageData:{commentTokens:{block:{open:`(:`,close:`:)`}}}};export{y as xQuery};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){for(var t={},n=e.split(` `),r=0;r<n.length;++r)t[n[r]]=!0;return t}var t=e(`Assert BackQuote D Defun Deriv For ForEach FromFile FromString Function Integrate InverseTaylor Limit LocalSymbols Macro MacroRule MacroRulePattern NIntegrate Rule RulePattern Subst TD TExplicitSum TSum Taylor Taylor1 Taylor2 Taylor3 ToFile ToStdout ToString TraceRule Until While`),n=`(?:(?:\\.\\d+|\\d+\\.\\d*|\\d+)(?:[eE][+-]?\\d+)?)`,r=`(?:[a-zA-Z\\$'][a-zA-Z0-9\\$']*)`,i=new RegExp(n),a=new RegExp(r),o=RegExp(r+`?_`+r),s=RegExp(r+`\\s*\\(`);function c(e,n){var r=e.next();if(r===`"`)return n.tokenize=l,n.tokenize(e,n);if(r===`/`){if(e.eat(`*`))return n.tokenize=u,n.tokenize(e,n);if(e.eat(`/`))return e.skipToEnd(),`comment`}e.backUp(1);var c=e.match(/^(\w+)\s*\(/,!1);c!==null&&t.hasOwnProperty(c[1])&&n.scopes.push(`bodied`);var f=d(n);if(f===`bodied`&&r===`[`&&n.scopes.pop(),(r===`[`||r===`{`||r===`(`)&&n.scopes.push(r),f=d(n),(f===`[`&&r===`]`||f===`{`&&r===`}`||f===`(`&&r===`)`)&&n.scopes.pop(),r===`;`)for(;f===`bodied`;)n.scopes.pop(),f=d(n);return e.match(/\d+ *#/,!0,!1)?`qualifier`:e.match(i,!0,!1)?`number`:e.match(o,!0,!1)?`variableName.special`:e.match(/(?:\[|\]|{|}|\(|\))/,!0,!1)?`bracket`:e.match(s,!0,!1)?(e.backUp(1),`variableName.function`):e.match(a,!0,!1)?`variable`:e.match(/(?:\\|\+|\-|\*|\/|,|;|\.|:|@|~|=|>|<|&|\||_|`|'|\^|\?|!|%|#)/,!0,!1)?`operator`:`error`}function l(e,t){for(var n,r=!1,i=!1;(n=e.next())!=null;){if(n===`"`&&!i){r=!0;break}i=!i&&n===`\\`}return r&&!i&&(t.tokenize=c),`string`}function u(e,t){for(var n,r;(r=e.next())!=null;){if(n===`*`&&r===`/`){t.tokenize=c;break}n=r}return`comment`}function d(e){var t=null;return e.scopes.length>0&&(t=e.scopes[e.scopes.length-1]),t}var f={name:`yacas`,startState:function(){return{tokenize:c,scopes:[]}},token:function(e,t){return e.eatSpace()?null:t.tokenize(e,t)},indent:function(e,t,n){if(e.tokenize!==c&&e.tokenize!==null)return null;var r=0;return(t===`]`||t===`];`||t===`}`||t===`};`||t===`);`)&&(r=-1),(e.scopes.length+r)*n.unit},languageData:{electricInput:/[{}\[\]()\;]/,commentTokens:{line:`//`,block:{open:`/*`,close:`*/`}}}};export{f as yacas};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function e(e){var t,n;e?(t=/^(exx?|(ld|cp)([di]r?)?|[lp]ea|pop|push|ad[cd]|cpl|daa|dec|inc|neg|sbc|sub|and|bit|[cs]cf|x?or|res|set|r[lr]c?a?|r[lr]d|s[lr]a|srl|djnz|nop|[de]i|halt|im|in([di]mr?|ir?|irx|2r?)|ot(dmr?|[id]rx|imr?)|out(0?|[di]r?|[di]2r?)|tst(io)?|slp)(\.([sl]?i)?[sl])?\b/i,n=/^(((call|j[pr]|rst|ret[in]?)(\.([sl]?i)?[sl])?)|(rs|st)mix)\b/i):(t=/^(exx?|(ld|cp|in)([di]r?)?|pop|push|ad[cd]|cpl|daa|dec|inc|neg|sbc|sub|and|bit|[cs]cf|x?or|res|set|r[lr]c?a?|r[lr]d|s[lr]a|srl|djnz|nop|rst|[de]i|halt|im|ot[di]r|out[di]?)\b/i,n=/^(call|j[pr]|ret[in]?|b_?(call|jump))\b/i);var r=/^(af?|bc?|c|de?|e|hl?|l|i[xy]?|r|sp)\b/i,i=/^(n?[zc]|p[oe]?|m)\b/i,a=/^([hl][xy]|i[xy][hl]|slia|sll)\b/i,o=/^([\da-f]+h|[0-7]+o|[01]+b|\d+d?)\b/i;return{name:`z80`,startState:function(){return{context:0}},token:function(s,c){if(s.column()||(c.context=0),s.eatSpace())return null;var l;if(s.eatWhile(/\w/)){if(e&&s.eat(`.`)&&s.eatWhile(/\w/),l=s.current(),s.indentation()){if((c.context==1||c.context==4)&&r.test(l))return c.context=4,`variable`;if(c.context==2&&i.test(l))return c.context=4,`variableName.special`;if(t.test(l))return c.context=1,`keyword`;if(n.test(l))return c.context=2,`keyword`;if(c.context==4&&o.test(l))return`number`;if(a.test(l))return`error`}else if(s.match(o))return`number`;else return null}else if(s.eat(`;`))return s.skipToEnd(),`comment`;else if(s.eat(`"`)){for(;(l=s.next())&&l!=`"`;)l==`\\`&&s.next();return`string`}else if(s.eat(`'`)){if(s.match(/\\?.'/))return`number`}else if(s.eat(`.`)||s.sol()&&s.eat(`#`)){if(c.context=5,s.eatWhile(/\w/))return`def`}else if(s.eat(`$`)){if(s.eatWhile(/[\da-f]/i))return`number`}else if(s.eat(`%`)){if(s.eatWhile(/[01]/))return`number`}else s.next();return null}}}var t=e(!1);e(!0);export{t as z80};
|
package/dist/favicon.svg
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
|
|
2
|
+
<rect width="32" height="32" rx="6" fill="#171716"/>
|
|
3
|
+
<path d="M8 22 L16 8 L24 22" fill="none" stroke="#ecece6" stroke-width="1.8" stroke-linecap="round" stroke-linejoin="round"/>
|
|
4
|
+
<path d="M11 22 L16 14 L21 22" fill="none" stroke="#ecece6" stroke-width="1.2" stroke-linecap="round" opacity=".35"/>
|
|
5
|
+
</svg>
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
ISC License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Lucide Icons and Contributors
|
|
4
|
+
|
|
5
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
6
|
+
purpose with or without fee is hereby granted, provided that the above
|
|
7
|
+
copyright notice and this permission notice appear in all copies.
|
|
8
|
+
|
|
9
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
10
|
+
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
11
|
+
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
12
|
+
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
13
|
+
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
14
|
+
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
15
|
+
OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
The following Lucide icons are derived from the Feather project:
|
|
20
|
+
|
|
21
|
+
airplay, alert-circle, alert-octagon, alert-triangle, aperture, arrow-down-circle, arrow-down-left, arrow-down-right, arrow-down, arrow-left-circle, arrow-left, arrow-right-circle, arrow-right, arrow-up-circle, arrow-up-left, arrow-up-right, arrow-up, at-sign, calendar, cast, check, chevron-down, chevron-left, chevron-right, chevron-up, chevrons-down, chevrons-left, chevrons-right, chevrons-up, circle, clipboard, clock, code, columns, command, compass, corner-down-left, corner-down-right, corner-left-down, corner-left-up, corner-right-down, corner-right-up, corner-up-left, corner-up-right, crosshair, database, divide-circle, divide-square, dollar-sign, download, external-link, feather, frown, hash, headphones, help-circle, info, italic, key, layout, life-buoy, link-2, link, loader, lock, log-in, log-out, maximize, meh, minimize, minimize-2, minus-circle, minus-square, minus, monitor, moon, more-horizontal, more-vertical, move, music, navigation-2, navigation, octagon, pause-circle, percent, plus-circle, plus-square, plus, power, radio, rss, search, server, share, shopping-bag, sidebar, smartphone, smile, square, table-2, tablet, target, terminal, trash-2, trash, triangle, tv, type, upload, x-circle, x-octagon, x-square, x, zoom-in, zoom-out
|
|
22
|
+
|
|
23
|
+
The MIT License (MIT) (for the icons listed above)
|
|
24
|
+
|
|
25
|
+
Copyright (c) 2013-present Cole Bemis
|
|
26
|
+
|
|
27
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
28
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
29
|
+
in the Software without restriction, including without limitation the rights
|
|
30
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
31
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
32
|
+
furnished to do so, subject to the following conditions:
|
|
33
|
+
|
|
34
|
+
The above copyright notice and this permission notice shall be included in all
|
|
35
|
+
copies or substantial portions of the Software.
|
|
36
|
+
|
|
37
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
38
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
39
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
40
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
41
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
42
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
43
|
+
SOFTWARE.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Icon sources
|
|
2
|
+
|
|
3
|
+
The Projector Pastel theme uses a Catppuccin Mocha palette and icons extracted from the installed Iconify collections. No VSCode extension assets are included.
|
|
4
|
+
|
|
5
|
+
- Lucide (`@iconify-json/lucide`): Lucide Icons and Contributors, ISC; some icons derive from Feather (Cole Bemis, MIT). Full license: [LICENSE-lucide.txt](LICENSE-lucide.txt). Source: https://github.com/lucide-icons/lucide
|
|
6
|
+
- Simple Icons (`@iconify-json/simple-icons`): Simple Icons Collaborators, CC0 1.0. Source and license: https://github.com/simple-icons/simple-icons and https://creativecommons.org/publicdomain/zero/1.0/
|
|
7
|
+
|
|
8
|
+
Simple Icons provides the language/framework logos: git, typescript, javascript, vue, react, html, css, sass, python, rust, go, ruby, php, c, cpp, docker, vite, svelte, kotlin, swift, graphql. Other SVG files use Lucide. Logo names and designs belong to their respective owners.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><rect width="20" height="5" x="2" y="3" rx="1"/><path d="M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8m-10 4h4"/></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><path d="m22 11l-1.296-1.296a2.4 2.4 0 0 0-3.408 0L11 16"/><path d="M4 8a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2"/><circle cx="13" cy="7" r="1" fill="currentColor"/><rect width="14" height="14" x="8" y="2" rx="2"/></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><path d="M9 18V5l12-2v13"/><circle cx="6" cy="18" r="3"/><circle cx="18" cy="16" r="3"/></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M16.592 9.196s-.354-3.298-3.627-3.39c-3.274-.09-4.955 2.474-4.955 6.14s1.858 6.597 5.045 6.597c3.184 0 3.538-3.665 3.538-3.665l6.104.365s.36 3.31-2.196 5.836c-2.552 2.524-5.69 2.937-7.876 2.92c-2.19-.016-5.226.035-8.16-2.97c-2.938-3.01-3.436-5.93-3.436-8.8s.556-6.67 4.047-9.55C7.444.72 9.849 0 12.254 0c10.042 0 10.717 9.26 10.717 9.26z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><path d="M10 22V7a1 1 0 0 0-1-1H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5a1 1 0 0 0-1-1H2"/><rect width="8" height="8" x="14" y="2" rx="1"/></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0a2.34 2.34 0 0 0 3.319 1.915a2.34 2.34 0 0 1 2.33 4.033a2.34 2.34 0 0 0 0 3.831a2.34 2.34 0 0 1-2.33 4.033a2.34 2.34 0 0 0-3.319 1.915a2.34 2.34 0 0 1-4.659 0a2.34 2.34 0 0 0-3.32-1.915a2.34 2.34 0 0 1-2.33-4.033a2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"/><circle cx="12" cy="12" r="3"/></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M22.394 6c-.167-.29-.398-.543-.652-.69L12.926.22c-.509-.294-1.34-.294-1.848 0L2.26 5.31c-.508.293-.923 1.013-.923 1.6v10.18c0 .294.104.62.271.91s.398.543.652.69l8.816 5.09c.508.293 1.34.293 1.848 0l8.816-5.09c.254-.147.485-.4.652-.69s.27-.616.27-.91V6.91c.003-.294-.1-.62-.268-.91M12 19.11c-3.92 0-7.109-3.19-7.109-7.11s3.19-7.11 7.11-7.11a7.13 7.13 0 0 1 6.156 3.553l-3.076 1.78a3.57 3.57 0 0 0-3.08-1.78A3.56 3.56 0 0 0 8.444 12A3.56 3.56 0 0 0 12 15.555a3.57 3.57 0 0 0 3.08-1.778l3.078 1.78A7.14 7.14 0 0 1 12 19.11m7.11-6.715h-.79v.79h-.79v-.79h-.79v-.79h.79v-.79h.79v.79h.79zm2.962 0h-.79v.79h-.79v-.79h-.79v-.79h.79v-.79h.79v.79h.79z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M0 0v20.16A3.84 3.84 0 0 0 3.84 24h16.32A3.84 3.84 0 0 0 24 20.16V3.84A3.84 3.84 0 0 0 20.16 0Zm14.256 13.08c1.56 0 2.28 1.08 2.304 2.64h-1.608c.024-.288-.048-.6-.144-.84c-.096-.192-.288-.264-.552-.264c-.456 0-.696.264-.696.84c-.024.576.288.888.768 1.08c.72.288 1.608.744 1.92 1.296q.432.648.432 1.656c0 1.608-.912 2.592-2.496 2.592c-1.656 0-2.4-1.032-2.424-2.688h1.68c0 .792.264 1.176.792 1.176c.264 0 .456-.072.552-.24c.192-.312.24-1.176-.048-1.512c-.312-.408-.912-.6-1.32-.816q-.828-.396-1.224-.936c-.24-.36-.36-.888-.36-1.536c0-1.44.936-2.472 2.424-2.448m5.4 0c1.584 0 2.304 1.08 2.328 2.64h-1.608c0-.288-.048-.6-.168-.84c-.096-.192-.264-.264-.528-.264c-.48 0-.72.264-.72.84s.288.888.792 1.08c.696.288 1.608.744 1.92 1.296c.264.432.408.984.408 1.656c.024 1.608-.888 2.592-2.472 2.592c-1.68 0-2.424-1.056-2.448-2.688h1.68c0 .744.264 1.176.792 1.176c.264 0 .456-.072.552-.24c.216-.312.264-1.176-.048-1.512c-.288-.408-.888-.6-1.32-.816c-.552-.264-.96-.576-1.2-.936s-.36-.888-.36-1.536c-.024-1.44.912-2.472 2.4-2.448m-11.031.018c.711-.006 1.419.198 1.839.63c.432.432.672 1.128.648 1.992H9.336c.024-.456-.096-.792-.432-.96c-.312-.144-.768-.048-.888.24c-.12.264-.192.576-.168.864v3.504c0 .744.264 1.128.768 1.128a.65.65 0 0 0 .552-.264c.168-.24.192-.552.168-.84h1.776c.096 1.632-.984 2.712-2.568 2.688c-1.536 0-2.496-.864-2.472-2.472v-4.032c0-.816.24-1.44.696-1.848c.432-.408 1.146-.624 1.857-.63"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><ellipse cx="12" cy="5" rx="9" ry="3"/><path d="M3 5v14a9 3 0 0 0 18 0V5"/><path d="M3 12a9 3 0 0 0 18 0"/></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M13.983 11.078h2.119a.186.186 0 0 0 .186-.185V9.006a.186.186 0 0 0-.186-.186h-2.119a.185.185 0 0 0-.185.185v1.888c0 .102.083.185.185.185m-2.954-5.43h2.118a.186.186 0 0 0 .186-.186V3.574a.186.186 0 0 0-.186-.185h-2.118a.185.185 0 0 0-.185.185v1.888c0 .102.082.185.185.185m0 2.716h2.118a.187.187 0 0 0 .186-.186V6.29a.186.186 0 0 0-.186-.185h-2.118a.185.185 0 0 0-.185.185v1.887c0 .102.082.185.185.186m-2.93 0h2.12a.186.186 0 0 0 .184-.186V6.29a.185.185 0 0 0-.185-.185H8.1a.185.185 0 0 0-.185.185v1.887c0 .102.083.185.185.186m-2.964 0h2.119a.186.186 0 0 0 .185-.186V6.29a.185.185 0 0 0-.185-.185H5.136a.186.186 0 0 0-.186.185v1.887c0 .102.084.185.186.186m5.893 2.715h2.118a.186.186 0 0 0 .186-.185V9.006a.186.186 0 0 0-.186-.186h-2.118a.185.185 0 0 0-.185.185v1.888c0 .102.082.185.185.185m-2.93 0h2.12a.185.185 0 0 0 .184-.185V9.006a.185.185 0 0 0-.184-.186h-2.12a.185.185 0 0 0-.184.185v1.888c0 .102.083.185.185.185m-2.964 0h2.119a.185.185 0 0 0 .185-.185V9.006a.185.185 0 0 0-.184-.186h-2.12a.186.186 0 0 0-.186.186v1.887c0 .102.084.185.186.185m-2.92 0h2.12a.185.185 0 0 0 .184-.185V9.006a.185.185 0 0 0-.184-.186h-2.12a.185.185 0 0 0-.184.185v1.888c0 .102.082.185.185.185M23.763 9.89c-.065-.051-.672-.51-1.954-.51q-.508.001-1.01.087c-.248-1.7-1.653-2.53-1.716-2.566l-.344-.199l-.226.327c-.284.438-.49.922-.612 1.43c-.23.97-.09 1.882.403 2.661c-.595.332-1.55.413-1.744.42H.751a.75.75 0 0 0-.75.748a11.4 11.4 0 0 0 .692 4.062c.545 1.428 1.355 2.48 2.41 3.124c1.18.723 3.1 1.137 5.275 1.137a15.7 15.7 0 0 0 2.93-.266a12.3 12.3 0 0 0 3.823-1.389a10.5 10.5 0 0 0 2.61-2.136c1.252-1.418 1.998-2.997 2.553-4.4h.221c1.372 0 2.215-.549 2.68-1.009c.309-.293.55-.65.707-1.046l.098-.288Z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><path d="M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z"/><circle cx="16.5" cy="7.5" r=".5" fill="currentColor"/></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><path d="M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"/><path d="M14 2v5a1 1 0 0 0 1 1h5M8 16l2-2l-2-2m4 6h4"/></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><path d="M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"/><path d="M14 2v5a1 1 0 0 0 1 1h5"/></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m6 14l1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 4v16M4 7V5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v2M9 20h6"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M13.09 23.549a1.54 1.54 0 0 1-2.18 0L.451 13.089a1.54 1.54 0 0 1 0-2.179l7.191-7.19l2.733 2.733a1.85 1.85 0 0 0 .964 2.326v6.66a1.849 1.849 0 1 0 1.54 0V8.957l2.508 2.508a1.85 1.85 0 1 0 1.09-1.09l-2.634-2.634a1.85 1.85 0 0 0-2.378-2.377L8.73 2.63L10.91.451a1.54 1.54 0 0 1 2.179 0l10.459 10.46a1.54 1.54 0 0 1 0 2.179z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M1.811 10.231c-.047 0-.058-.023-.035-.059l.246-.315c.023-.035.081-.058.128-.058h4.172c.046 0 .058.035.035.07l-.199.303c-.023.036-.082.07-.117.07zM.047 11.306c-.047 0-.059-.023-.035-.058l.245-.316c.023-.035.082-.058.129-.058h5.328c.047 0 .07.035.058.07l-.093.28c-.012.047-.058.07-.105.07zm2.828 1.075c-.047 0-.059-.035-.035-.07l.163-.292c.023-.035.07-.07.117-.07h2.337c.047 0 .07.035.07.082l-.023.28c0 .047-.047.082-.082.082zm12.129-2.36c-.736.187-1.239.327-1.963.514c-.176.046-.187.058-.34-.117c-.174-.199-.303-.327-.548-.444c-.737-.362-1.45-.257-2.115.175c-.795.514-1.204 1.274-1.192 2.22c.011.935.654 1.706 1.577 1.835c.795.105 1.46-.175 1.987-.77c.105-.13.198-.27.315-.434H10.47c-.245 0-.304-.152-.222-.35c.152-.362.432-.97.596-1.274a.32.32 0 0 1 .292-.187h4.253c-.023.316-.023.631-.07.947a5 5 0 0 1-.958 2.29c-.841 1.11-1.94 1.8-3.33 1.986c-1.145.152-2.209-.07-3.143-.77c-.865-.655-1.356-1.52-1.484-2.595c-.152-1.274.222-2.419.993-3.424c.83-1.086 1.928-1.776 3.272-2.02c1.098-.2 2.15-.07 3.096.571c.62.41 1.063.97 1.356 1.648c.07.105.023.164-.117.2m3.868 6.461c-1.064-.024-2.034-.328-2.852-1.029a3.67 3.67 0 0 1-1.262-2.255c-.21-1.32.152-2.489.947-3.529c.853-1.122 1.881-1.706 3.272-1.95c1.192-.21 2.314-.095 3.33.595c.923.63 1.496 1.484 1.648 2.605c.198 1.578-.257 2.863-1.344 3.962c-.771.783-1.718 1.273-2.805 1.495c-.315.06-.63.07-.934.106m2.78-4.72c-.011-.153-.011-.27-.034-.387c-.21-1.157-1.274-1.81-2.384-1.554c-1.087.245-1.788.935-2.045 2.033c-.21.912.234 1.835 1.075 2.21c.643.28 1.285.244 1.905-.07c.923-.48 1.425-1.228 1.484-2.233z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M12.002 0a2.138 2.138 0 1 0 0 4.277a2.138 2.138 0 1 0 0-4.277m8.54 4.931a2.138 2.138 0 1 0 0 4.277a2.138 2.138 0 1 0 0-4.277m0 9.862a2.138 2.138 0 1 0 0 4.277a2.138 2.138 0 1 0 0-4.277m-8.54 4.931a2.138 2.138 0 1 0 0 4.276a2.138 2.138 0 1 0 0-4.276m-8.542-4.93a2.138 2.138 0 1 0 0 4.276a2.138 2.138 0 1 0 0-4.277zm0-9.863a2.138 2.138 0 1 0 0 4.277a2.138 2.138 0 1 0 0-4.277m8.542-3.378L2.953 6.777v10.448l9.049 5.224l9.047-5.224V6.777zm0 1.601l7.66 13.27H4.34zm-1.387.371L3.97 15.037V7.363zm2.774 0l6.646 3.838v7.674zM5.355 17.44h13.293l-6.646 3.836z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M1.5 0h21l-1.91 21.563L11.977 24l-8.564-2.438zm7.031 9.75l-.232-2.718l10.059.003l.23-2.622L5.412 4.41l.698 8.01h9.126l-.326 3.426l-2.91.804l-2.955-.81l-.188-2.11H6.248l.33 4.171L12 19.351l5.379-1.443l.744-8.157z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><path d="M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575a1 1 0 0 1 0 .696a10.8 10.8 0 0 1-1.444 2.49m-6.41-.679a3 3 0 0 1-4.242-4.242"/><path d="M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151a1 1 0 0 1 0-.696a10.75 10.75 0 0 1 4.446-5.143M2 2l20 20"/></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><rect width="18" height="18" x="3" y="3" rx="2" ry="2"/><circle cx="9" cy="9" r="2"/><path d="m21 15l-3.086-3.086a2 2 0 0 0-2.828 0L6 21"/></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10 2v2m4-2v2m2 4a1 1 0 0 1 1 1v8a4 4 0 0 1-4 4H7a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1h14a4 4 0 1 1 0 8h-1M6 2v2"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="currentColor" d="M0 0h24v24H0zm22.034 18.276c-.175-1.095-.888-2.015-3.003-2.873c-.736-.345-1.554-.585-1.797-1.14c-.091-.33-.105-.51-.046-.705c.15-.646.915-.84 1.515-.66c.39.12.75.42.976.9c1.034-.676 1.034-.676 1.755-1.125c-.27-.42-.404-.601-.586-.78c-.63-.705-1.469-1.065-2.834-1.034l-.705.089c-.676.165-1.32.525-1.71 1.005c-1.14 1.291-.811 3.541.569 4.471c1.365 1.02 3.361 1.244 3.616 2.205c.24 1.17-.87 1.545-1.966 1.41c-.811-.18-1.26-.586-1.755-1.336l-1.83 1.051c.21.48.45.689.81 1.109c1.74 1.756 6.09 1.666 6.871-1.004c.029-.09.24-.705.074-1.65zm-8.983-7.245h-2.248c0 1.938-.009 3.864-.009 5.805c0 1.232.063 2.363-.138 2.711c-.33.689-1.18.601-1.566.48c-.396-.196-.597-.466-.83-.855c-.063-.105-.11-.196-.127-.196l-1.825 1.125c.305.63.75 1.172 1.324 1.517c.855.51 2.004.675 3.207.405c.783-.226 1.458-.691 1.811-1.411c.51-.93.402-2.07.397-3.346c.012-2.054 0-4.109 0-6.179z"/></svg>
|