pisper 0.5.21-linux-x64.0 → 0.5.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.en.md +53 -0
- package/README.md +46 -46
- package/bin/pisper.mjs +48 -0
- package/lib/install.mjs +392 -0
- package/lib/npm-platform.mjs +41 -0
- package/lib/npm-update.mjs +165 -0
- package/lib/platform.mjs +43 -0
- package/lib/postinstall.mjs +3 -0
- package/package.json +36 -14
- package/updater.pubkey +1 -0
- package/web/.vite/manifest.json +2249 -0
- package/web/assets/AnimatedContent-BiVNqD3m.js +1 -0
- package/web/assets/AnimatedList-CJTx-B8I.js +1 -0
- package/web/assets/AppOverlays-C_v-1VL6.js +1 -0
- package/web/assets/AppSelect-g6etLk2g.js +1 -0
- package/web/assets/AssetsPage-Dt5ST6Ej.js +1 -0
- package/web/assets/ChannelsPage-C9dO2yLN.js +1 -0
- package/web/assets/ChatHistoryPage-ZvSTAtXB.js +1 -0
- package/web/assets/ChatPage-BD3WkozH.js +9 -0
- package/web/assets/ClickSpark-BhxL8WOQ.js +1 -0
- package/web/assets/ConfigPage-ifZdPO01.js +1 -0
- package/web/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
- package/web/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
- package/web/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
- package/web/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
- package/web/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
- package/web/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
- package/web/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
- package/web/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
- package/web/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
- package/web/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
- package/web/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
- package/web/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
- package/web/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
- package/web/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
- package/web/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
- package/web/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
- package/web/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
- package/web/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
- package/web/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
- package/web/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
- package/web/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
- package/web/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
- package/web/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
- package/web/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
- package/web/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
- package/web/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
- package/web/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
- package/web/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
- package/web/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
- package/web/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
- package/web/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
- package/web/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
- package/web/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
- package/web/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
- package/web/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
- package/web/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
- package/web/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
- package/web/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
- package/web/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
- package/web/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
- package/web/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
- package/web/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
- package/web/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
- package/web/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
- package/web/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
- package/web/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
- package/web/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
- package/web/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
- package/web/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
- package/web/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
- package/web/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
- package/web/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
- package/web/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
- package/web/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
- package/web/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
- package/web/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
- package/web/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
- package/web/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
- package/web/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
- package/web/assets/MarkdownMessage-CMr3WuAI.js +1 -0
- package/web/assets/MemoryPage-D5Hjoc5p.js +1 -0
- package/web/assets/PageHeader-BKfO_vPe.js +1 -0
- package/web/assets/PluginsPage-DhkVJf05.js +1 -0
- package/web/assets/PreviewPages-mRjRmA0i.js +1 -0
- package/web/assets/SchedulesPage-DNe-Y6o5.js +1 -0
- package/web/assets/ShinyText-fuaKxKqJ.js +1 -0
- package/web/assets/SkillsPage-PguSYt8I.js +1 -0
- package/web/assets/StarOrbit-BlI6MhVr.js +1 -0
- package/web/assets/TerminalPanel-BrP-ENHg.css +1 -0
- package/web/assets/TerminalPanel-DrnfpA8m.js +18 -0
- package/web/assets/Threads-DskDSsK6.js +1 -0
- package/web/assets/WelcomeEffects-Bf8Z6qHU.js +1 -0
- package/web/assets/WorkflowsPage-C6sGl2oG.js +1 -0
- package/web/assets/WorkspacePicker-Cu2Z5jid.js +1 -0
- package/web/assets/alert-B7D8joCd.js +1 -0
- package/web/assets/alert-dialog-D5F_JQyX.js +1 -0
- package/web/assets/andromeeda-vGVdxbeo.js +1 -0
- package/web/assets/angular-html-17rlCfBS.js +1 -0
- package/web/assets/angular-ts-it3MaXWH.js +1 -0
- package/web/assets/astro-BEVDzCov.js +1 -0
- package/web/assets/aurora-x-CDeNXAV0.js +1 -0
- package/web/assets/ayu-dark-DluEY0Gj.js +1 -0
- package/web/assets/ayu-light-C3h-C4tm.js +1 -0
- package/web/assets/ayu-mirage-Bqwy1Gya.js +1 -0
- package/web/assets/blade-B3yUZIOx.js +1 -0
- package/web/assets/brand-CFOXmGdd.js +1 -0
- package/web/assets/button-DzlQCSNK.js +1 -0
- package/web/assets/c-aGSZMVdM.js +1 -0
- package/web/assets/catppuccin-frappe-C9Q5zVZY.js +1 -0
- package/web/assets/catppuccin-latte-CtsyrtPq.js +1 -0
- package/web/assets/catppuccin-macchiato-R8nAf1vR.js +1 -0
- package/web/assets/catppuccin-mocha-DjuaAJKi.js +1 -0
- package/web/assets/chevron-down-DXmj1gMQ.js +1 -0
- package/web/assets/circle-dot-CbGG7s_7.js +1 -0
- package/web/assets/coffee-ouOQ86EC.js +1 -0
- package/web/assets/copy-DO0sQBgx.js +1 -0
- package/web/assets/cpp-Bm3vm43L.js +1 -0
- package/web/assets/css-CWcS1xXm.js +1 -0
- package/web/assets/csv-Dx-8-gkx.js +1 -0
- package/web/assets/dark-plus-Cs2F2srj.js +1 -0
- package/web/assets/dist-BaCXUSxG.js +1 -0
- package/web/assets/dist-Bv5OI2pf.js +1 -0
- package/web/assets/dracula-BHWKrbxM.js +1 -0
- package/web/assets/dracula-soft-5eyTD99u.js +1 -0
- package/web/assets/earth-D-KiHvdO.js +1 -0
- package/web/assets/es2015-CfKlxLgF.js +41 -0
- package/web/assets/everforest-dark-sB-x3p7T.js +1 -0
- package/web/assets/everforest-light-Df2xbC6M.js +1 -0
- package/web/assets/field-CCo2X7MX.js +1 -0
- package/web/assets/file-B6GksU4A.js +1 -0
- package/web/assets/file-code-corner-3gopYCm4.js +1 -0
- package/web/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2 +0 -0
- package/web/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2 +0 -0
- package/web/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2 +0 -0
- package/web/assets/geist-latin-wght-normal-BgDaEnEv.woff2 +0 -0
- package/web/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2 +0 -0
- package/web/assets/github-dark-C-LZuMrd.js +1 -0
- package/web/assets/github-dark-default-DXG-b-1a.js +1 -0
- package/web/assets/github-dark-dimmed-Bx1FflLF.js +1 -0
- package/web/assets/github-dark-high-contrast-B_tTalzw.js +1 -0
- package/web/assets/github-light-EUqPIrTm.js +1 -0
- package/web/assets/github-light-default-BXViO-2h.js +1 -0
- package/web/assets/github-light-high-contrast-B68TUdTA.js +1 -0
- package/web/assets/glsl-TOBAB6bO.js +1 -0
- package/web/assets/graphql-BEmIBNve.js +1 -0
- package/web/assets/gruvbox-dark-hard-C820rvS2.js +1 -0
- package/web/assets/gruvbox-dark-medium-BPjhmG05.js +1 -0
- package/web/assets/gruvbox-dark-soft-MrdJrrXF.js +1 -0
- package/web/assets/gruvbox-light-hard-BC_s9l72.js +1 -0
- package/web/assets/gruvbox-light-medium-BAWPOn9u.js +1 -0
- package/web/assets/gruvbox-light-soft-BSMLrYjP.js +1 -0
- package/web/assets/haml-CDWtFtU9.js +1 -0
- package/web/assets/handlebars-BNtjo3pL.js +1 -0
- package/web/assets/horizon-CE9ld1lL.js +1 -0
- package/web/assets/horizon-bright-DSNQnXHK.js +1 -0
- package/web/assets/houston-CsvMBhTu.js +1 -0
- package/web/assets/html-BVyvp26C.js +1 -0
- package/web/assets/html-derivative-BseLpURQ.js +1 -0
- package/web/assets/http-CkCfSMV9.js +1 -0
- package/web/assets/hurl-syYMt6Rn.js +1 -0
- package/web/assets/image-Bu_a9jz0.js +1 -0
- package/web/assets/imba-DsUTQ-LC.js +1 -0
- package/web/assets/index-BIQcwjFR.js +41 -0
- package/web/assets/index-Btu6aNk7.css +2 -0
- package/web/assets/java-duG_UTKe.js +1 -0
- package/web/assets/javascript-DWVbOe4X.js +1 -0
- package/web/assets/jinja-Boj4niAz.js +1 -0
- package/web/assets/jison-CHwnC1Pv.js +1 -0
- package/web/assets/json-qhed-kSA.js +1 -0
- package/web/assets/json5-BR5RXkoi.js +1 -0
- package/web/assets/jsonc-CYpm1nAK.js +1 -0
- package/web/assets/jsonl-CmCQp5Yx.js +1 -0
- package/web/assets/jsx-fcCEM_-L.js +1 -0
- package/web/assets/julia-VoF7UKfw.js +1 -0
- package/web/assets/kanagawa-dragon-Bozd7klA.js +1 -0
- package/web/assets/kanagawa-lotus-BmuOG9ZW.js +1 -0
- package/web/assets/kanagawa-wave-BML5mF2J.js +1 -0
- package/web/assets/laserwave-C_8bwKvT.js +1 -0
- package/web/assets/less-DVTAwKKz.js +1 -0
- package/web/assets/light-plus-DVQuIRkW.js +1 -0
- package/web/assets/link-2-SOWAopyR.js +1 -0
- package/web/assets/loader-circle-i0WYlBWu.js +1 -0
- package/web/assets/markdown-BYOwaDjH.js +1 -0
- package/web/assets/marko-Cupn1xhw.js +1 -0
- package/web/assets/material-theme-Bm3Qr25_.js +1 -0
- package/web/assets/material-theme-darker-2IIEA8gg.js +1 -0
- package/web/assets/material-theme-lighter-uhdI0v04.js +1 -0
- package/web/assets/material-theme-ocean-CHQ94UKr.js +1 -0
- package/web/assets/material-theme-palenight-B5W6OYN7.js +1 -0
- package/web/assets/mdc-4FfK5iWR.js +1 -0
- package/web/assets/mdx-DQZ5AkYe.js +1 -0
- package/web/assets/message-circle-C3tSGsW0.js +1 -0
- package/web/assets/min-dark-BSWPekZh.js +1 -0
- package/web/assets/min-light-DDpmG2fV.js +1 -0
- package/web/assets/monokai-B_bV9PQ9.js +1 -0
- package/web/assets/network-zt1ahOiz.js +1 -0
- package/web/assets/night-owl-DhmEMT88.js +1 -0
- package/web/assets/night-owl-light-eJ-hLW7d.js +1 -0
- package/web/assets/nord-Cb4Vim4T.js +1 -0
- package/web/assets/one-dark-pro-CLwyXe_n.js +1 -0
- package/web/assets/one-light-D7Lr4KcI.js +1 -0
- package/web/assets/panel-top-DYcS-wiY.js +1 -0
- package/web/assets/paperclip-t0nP1kBQ.js +1 -0
- package/web/assets/pencil-BOb7CieI.js +1 -0
- package/web/assets/php-CUREQQ7f.js +1 -0
- package/web/assets/pick-system-directory-BnIFt85A.js +1 -0
- package/web/assets/plastic-DQwYfKfQ.js +1 -0
- package/web/assets/play-V5zloi0R.js +1 -0
- package/web/assets/poimandres-DRFjx7u4.js +1 -0
- package/web/assets/postcss-BXeXVLqQ.js +1 -0
- package/web/assets/progress-DWkHIRCG.js +6 -0
- package/web/assets/pug-CQyGKZpv.js +1 -0
- package/web/assets/python-gzcpVVnB.js +1 -0
- package/web/assets/r-C5FwQflr.js +1 -0
- package/web/assets/react-bits-DQli9s7O.css +1 -0
- package/web/assets/red-DX1BQOs8.js +1 -0
- package/web/assets/regexp--aR2_iz7.js +1 -0
- package/web/assets/rolldown-runtime-B0Z9INg1.js +1 -0
- package/web/assets/rose-pine-aMsaMD1D.js +1 -0
- package/web/assets/rose-pine-dawn-8PwUyIlP.js +1 -0
- package/web/assets/rose-pine-moon-DO-qXg-I.js +1 -0
- package/web/assets/sass-DXrisJhu.js +1 -0
- package/web/assets/save-CTsP04bb.js +1 -0
- package/web/assets/scss-Davl4E3T.js +1 -0
- package/web/assets/search-Chj7BjSz.js +1 -0
- package/web/assets/shellscript-CLZ0U2zV.js +1 -0
- package/web/assets/shield-check-By9gGYwr.js +1 -0
- package/web/assets/slack-dark-DnToyrRv.js +1 -0
- package/web/assets/slack-ochin-B2OO5cIa.js +1 -0
- package/web/assets/smithy-Dgaz7aur.js +1 -0
- package/web/assets/snazzy-light-4G7pJPwS.js +1 -0
- package/web/assets/solarized-dark-UdsmMDCL.js +1 -0
- package/web/assets/solarized-light-C1IUL_tW.js +1 -0
- package/web/assets/sql-b92rrcVl.js +1 -0
- package/web/assets/square-DQQwOv3-.js +1 -0
- package/web/assets/square-terminal-ByK0g_OZ.js +1 -0
- package/web/assets/stylus-B6D30XZt.js +1 -0
- package/web/assets/sun-CiCuEpCg.js +1 -0
- package/web/assets/svelte-BfstjgUc.js +1 -0
- package/web/assets/synthwave-84-nFMaYfgc.js +1 -0
- package/web/assets/tag-B0fT5ThM.js +1 -0
- package/web/assets/tokyo-night-oM2G3aXe.js +1 -0
- package/web/assets/trash-2-2GzVxk5J.js +1 -0
- package/web/assets/ts-tags-Cckpt1jI.js +1 -0
- package/web/assets/tsx-JMDX3aQ7.js +1 -0
- package/web/assets/typescript-BAz-bF8J.js +1 -0
- package/web/assets/use-i18n-DmLwOjO5.js +1 -0
- package/web/assets/usePagePrimaryAction-Bw0OFTDZ.js +1 -0
- package/web/assets/utils-C8uzG5AZ.js +1 -0
- package/web/assets/vendor-dockview-D5adAaCg.css +1 -0
- package/web/assets/vendor-dockview-yY5mBM3U.js +1 -0
- package/web/assets/vendor-markdown-CWK5AVhB.js +130 -0
- package/web/assets/vendor-markdown-plugins-DCl4I7Pz.js +263 -0
- package/web/assets/vendor-motion-XxgxfZSY.js +9 -0
- package/web/assets/vendor-react-CHuvPdJE.js +9 -0
- package/web/assets/vendor-router-Bw2aAdMs.js +4 -0
- package/web/assets/vendor-shiki-runtime-CxE5QolQ.js +153 -0
- package/web/assets/vendor-state-DE1O_s6m.js +1 -0
- package/web/assets/vendor-ui-DvrYggeS.js +1 -0
- package/web/assets/vendor-xyflow-CnjXtcyK.js +7 -0
- package/web/assets/vendor-xyflow-DLioOiRN.css +1 -0
- package/web/assets/vesper-DdrHHSXu.js +1 -0
- package/web/assets/vitesse-black-fwtXNY1n.js +1 -0
- package/web/assets/vitesse-dark-BZCL-v6S.js +1 -0
- package/web/assets/vitesse-light-VbXTXTou.js +1 -0
- package/web/assets/vue-3H7P6ncC.js +1 -0
- package/web/assets/vue-html-DZGW9MGR.js +1 -0
- package/web/assets/vue-vine-BECt67gq.js +1 -0
- package/web/assets/wasm-BnjxR4X6.js +1 -0
- package/web/assets/wasm-ByWQv1Qj.js +1 -0
- package/web/assets/wgsl-BsKzXJz4.js +1 -0
- package/web/assets/wit-DdvCle-K.js +1 -0
- package/web/assets/wrench-DkHcVlxK.js +1 -0
- package/web/assets/xml-CNfvW5JP.js +1 -0
- package/web/assets/yaml-rwi0_p6S.js +1 -0
- package/web/assets/zap-CRNpJWAy.js +1 -0
- package/web/favicon.svg +25 -0
- package/web/icons.svg +24 -0
- package/web/index.html +72 -0
- package/web/memory-galaxy-background.webp +0 -0
- package/web/mobile-startup.html +316 -0
- package/web/notification-sw.js +13 -0
- package/web/tauri-pet.css +117 -0
- package/web/tauri-pet.html +16 -0
- package/web/tauri-pet.js +117 -0
- package/components/runtime/Pisper_Runtime_Node_0.5.20_linux_x86_64.tar.gz +0 -0
- package/components/runtime/Pisper_Runtime_Node_0.5.20_linux_x86_64.tar.gz.sig +0 -1
- package/components/tui/Pisper_TUI_Component_0.5.12_linux_x86_64.tar.gz +0 -0
- package/components/tui/Pisper_TUI_Component_0.5.12_linux_x86_64.tar.gz.sig +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./vendor-react-CHuvPdJE.js";import{t}from"./utils-C8uzG5AZ.js";/* empty css */var n=e(),r=[`M-20 18 C120 0 170 76 320 42 S520 2 700 54 S920 104 1100 44`,`M-30 48 C110 82 200 6 350 48 S560 94 720 44 S930 2 1110 62`,`M-20 82 C130 42 220 112 390 68 S610 24 760 74 S940 118 1110 72`,`M-30 112 C120 142 260 72 420 112 S660 154 820 106 S980 62 1120 118`];function i({className:e,...i}){return(0,n.jsx)(`svg`,{"aria-hidden":`true`,className:t(`rb-threads`,e),preserveAspectRatio:`none`,viewBox:`0 0 1080 140`,...i,children:r.map((e,t)=>(0,n.jsx)(`path`,{d:e,style:{animationDelay:`${t*-.7}s`}},e))})}export{i as Threads};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{i as t,t as n}from"./vendor-react-CHuvPdJE.js";import{t as r}from"./utils-C8uzG5AZ.js";/* empty css */import{t as i}from"./ChatPage-BD3WkozH.js";var a=e(t(),1),o=n();function s({text:e,className:t,delay:n=45}){let i=e.split(/(\s+)/);return(0,o.jsx)(`span`,{className:r(`rb-blur-text`,t),"aria-label":e,children:i.map((e,t)=>/^\s+$/.test(e)?e:(0,o.jsx)(`span`,{"aria-hidden":`true`,className:`rb-blur-text-word`,style:{"--rb-delay":`${t*n}ms`},children:e},`${e}-${t}`))})}function c({children:e,className:t,targetSelector:n=`[data-target-cursor]`}){let i=(0,a.useRef)(null),s=(0,a.useRef)(null),c=(0,a.useRef)(null),l=(0,a.useCallback)(()=>window.matchMedia(`(pointer: fine)`).matches&&!window.matchMedia(`(prefers-reduced-motion: reduce)`).matches,[]),u=(0,a.useCallback)(e=>{let t=i.current,n=c.current;if(!t||!n)return;let r=t.getBoundingClientRect(),a=e.getBoundingClientRect();n.style.transform=`translate3d(${a.left-r.left-7}px, ${a.top-r.top-7}px, 0)`,n.style.width=`${a.width+14}px`,n.style.height=`${a.height+14}px`,n.dataset.visible=`true`},[]),d=(0,a.useCallback)(e=>{if(!l())return;let t=i.current,r=s.current,a=c.current;if(!t||!r||!a)return;let o=t.getBoundingClientRect();r.style.transform=`translate3d(${e.clientX-o.left}px, ${e.clientY-o.top}px, 0)`,r.dataset.visible=`true`;let d=e.target?.closest(n);d&&t.contains(d)?u(d):a.dataset.visible=`false`},[l,u,n]),f=(0,a.useCallback)(()=>{s.current&&(s.current.dataset.visible=`false`),c.current&&(c.current.dataset.visible=`false`)},[]),p=(0,a.useCallback)(e=>{let t=e.target?.closest(n);t&&i.current?.contains(t)&&u(t)},[u,n]),m=(0,a.useCallback)(e=>{let t=e.relatedTarget;t instanceof Element&&i.current?.contains(t)||c.current&&(c.current.dataset.visible=`false`)},[]);return(0,o.jsxs)(`div`,{ref:i,className:r(`rb-target-cursor`,t),onPointerMove:d,onPointerLeave:f,onFocusCapture:p,onBlurCapture:m,children:[e,(0,o.jsx)(`span`,{ref:s,className:`rb-target-cursor-dot`,"aria-hidden":`true`}),(0,o.jsxs)(`span`,{ref:c,className:`rb-target-cursor-frame`,"aria-hidden":`true`,children:[(0,o.jsx)(`i`,{}),(0,o.jsx)(`i`,{}),(0,o.jsx)(`i`,{}),(0,o.jsx)(`i`,{})]})]})}var l=36e5,u=320;function d(e){let[t,n]=(0,a.useState)(0),[r,i]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{if(e.length<2||window.matchMedia(`(prefers-reduced-motion: reduce)`).matches)return;let t=window.setInterval(()=>{i(!0),window.setTimeout(()=>{n(t=>(t+1)%e.length),i(!1)},u)},l);return()=>window.clearInterval(t)},[e.length]),{title:e[t]||e[0]||``,leaving:r}}function f({children:e,titles:t}){let{title:n,leaving:r}=d(t);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(`div`,{"aria-hidden":`true`,className:`pointer-events-none absolute inset-0 bg-[radial-gradient(560px_380px_at_50%_24%,rgba(168,85,247,.1),transparent_70%),radial-gradient(420px_300px_at_66%_62%,rgba(236,72,153,.07),transparent_72%)]`}),(0,o.jsxs)(c,{className:`relative z-[1] grid w-full max-w-[680px] place-items-center [padding:12px_20px_30px]`,children:[(0,o.jsx)(`div`,{className:`[animation:transcript-stage-enter_.5s_var(--ease-out)_both]`,children:(0,o.jsx)(i,{})}),(0,o.jsx)(`h2`,{className:`text-[var(--accent-strong)] [animation:transcript-stage-enter_.55s_var(--ease-out)_both] [animation-delay:70ms]`,children:(0,o.jsx)(`span`,{className:`block [transition:opacity_.32s_ease,filter_.32s_ease,transform_.32s_ease] ${r?`translate-y-[4px] opacity-0 blur-[6px]`:`opacity-100 blur-0`}`,children:(0,o.jsx)(s,{text:n},n)})}),e]})]})}export{f as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{i as t,t as n}from"./vendor-react-CHuvPdJE.js";import{d as r,l as i,s as a}from"./vendor-router-Bw2aAdMs.js";import{n as o,t as s}from"./button-DzlQCSNK.js";import{t as c}from"./use-i18n-DmLwOjO5.js";import{n as l,t as u}from"./AppSelect-g6etLk2g.js";import{i as d,n as f,r as p,t as m}from"./progress-DWkHIRCG.js";import{t as h}from"./utils-C8uzG5AZ.js";import{t as g}from"./chevron-down-DXmj1gMQ.js";import{n as _,t as v}from"./copy-DO0sQBgx.js";import{t as y}from"./file-code-corner-3gopYCm4.js";import{t as b}from"./file-B6GksU4A.js";import{t as x}from"./image-Bu_a9jz0.js";import{t as S}from"./message-circle-C3tSGsW0.js";import{t as C}from"./network-zt1ahOiz.js";import{t as w}from"./pencil-BOb7CieI.js";import{t as T}from"./play-V5zloi0R.js";import{t as E}from"./search-Chj7BjSz.js";import{t as D}from"./square-DQQwOv3-.js";import{t as O}from"./trash-2-2GzVxk5J.js";import{t as k}from"./zap-CRNpJWAy.js";import{B as A,Bt as j,Dt as M,E as ee,Et as N,G as P,It as te,Lt as F,Rt as I,St as L,T as ne,Tt as re,U as R,Vt as ie,_t as ae,a as oe,d as z,f as B,g as V,h as H,kt as se,m as U,n as ce,p as le,r as ue,u as de,vt as W,w as fe}from"./index-BIQcwjFR.js";import{t as G}from"./field-CCo2X7MX.js";import{t as pe}from"./usePagePrimaryAction-Bw0OFTDZ.js";import{n as K,t as me}from"./alert-B7D8joCd.js";import{a as he,c as ge,d as _e,f as q,i as J,l as ve,n as ye,o as be,r as xe,s as Se,t as Ce,u as we}from"./vendor-xyflow-CnjXtcyK.js";var Te=o(`file-up`,[[`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`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M12 12v6`,key:`3ahymv`}],[`path`,{d:`m15 15-3-3-3 3`,key:`15xj92`}]]),Ee=o(`grip-vertical`,[[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}],[`circle`,{cx:`9`,cy:`5`,r:`1`,key:`hp0tcf`}],[`circle`,{cx:`9`,cy:`19`,r:`1`,key:`fkjjf6`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`15`,cy:`5`,r:`1`,key:`19l28e`}],[`circle`,{cx:`15`,cy:`19`,r:`1`,key:`f4zoj3`}]]),Y=e(t(),1),X=n(),De=({className:e,...t})=>(0,X.jsx)(xe,{className:h(`gap-px overflow-hidden rounded-md border bg-card p-1 shadow-none!`,`[&>button]:rounded-md [&>button]:border-none! [&>button]:bg-transparent! [&>button]:hover:bg-secondary!`,e),...t}),Oe=[`trigger`,`prompt`,`skill`,`file`,`mcp`,`notification`,`condition`,`parallel`,`approval`];function ke({data:e,selected:t}){return(0,X.jsxs)(`div`,{className:h(`flow-node [.workflow-mini-map_&.compact]:w-[100px] [.workflow-mini-map_&.compact]:min-h-[42px] [.workflow-mini-map_&.compact]:p-[5px_8px] [.workflow-mini-map_&.compact]:cursor-default [.workflow-mini-map_&.compact_small]:text-[11px] [.workflow-mini-map_&.compact_strong]:max-w-[100%] [.workflow-mini-map_&.compact_strong]:overflow-hidden [.workflow-mini-map_&.compact_strong]:text-[12px] [.workflow-mini-map_&.compact_strong]:text-ellipsis [.workflow-mini-map_&.compact_strong]:whitespace-nowrap [&_small]:text-[var(--text-muted)] [&_small]:text-[13px] [&_strong]:text-[13px] [&.active]:border-[var(--star)] [&.active]:[animation:star-node-pulse_2.4s_var(--ease-out)_infinite] [&.type-condition]:border-[var(--warning-border)] [&.type-condition]:bg-[var(--warning-subtle)] [&.type-parallel]:border-[var(--violet-border)] [&.type-parallel]:bg-[var(--violet-soft)] [&.type-approval]:border-[var(--approval-border)] [&.type-approval]:bg-[var(--success-subtle)] [&.type-notification]:border-[var(--notification-border)] [&.type-notification]:bg-[var(--notification-soft)] dark:[&.type-condition]:bg-[var(--warning-soft)] dark:[&.type-并行]:bg-[var(--violet-soft)] dark:[&.type-审批]:bg-[var(--success-subtle)] dark:[&.type-通知]:bg-[var(--notification-soft)] relative flex w-[120px] min-h-[49px] flex-col items-start justify-center gap-[3px] [border:1px_solid_var(--accent-border)] rounded-[var(--r-sm)] bg-[var(--accent-soft)] [padding:7px_10px] text-left shadow-[0_8px_18px_-14px_var(--node-shadow)] cursor-grab`,`type-${e.kind}`,t&&`active`,e.compact&&`compact`),children:[!e.compact&&e.kind!==`trigger`&&(0,X.jsx)(J,{id:`input`,className:`flow-port after:absolute after:[content:''] after:inset-[-8px] absolute z-[3] w-[12px] h-[12px] [border:2px_solid_var(--solid)] rounded-[50%] bg-[var(--text)] [cursor:crosshair] input [.flow-port&]:top-[50%] [.flow-port&]:left-[-7px] [.flow-port&]:[transform:translateY(-50%)]`,type:`target`,position:q.Left,title:e.inputLabel,"aria-label":e.inputLabel}),!e.compact&&e.kind===`condition`?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(J,{id:`true`,className:`flow-port after:absolute after:[content:''] after:inset-[-8px] absolute z-[3] w-[12px] h-[12px] [border:2px_solid_var(--solid)] rounded-[50%] bg-[var(--text)] [cursor:crosshair] output [.flow-port&]:top-[50%] [.flow-port&]:right-[-7px] [.flow-port&]:[transform:translateY(-50%)] condition-true`,type:`source`,position:q.Right,title:`true`,"aria-label":`true`}),(0,X.jsx)(J,{id:`false`,className:`flow-port after:absolute after:[content:''] after:inset-[-8px] absolute z-[3] w-[12px] h-[12px] [border:2px_solid_var(--solid)] rounded-[50%] bg-[var(--text)] [cursor:crosshair] output [.flow-port&]:top-[50%] [.flow-port&]:right-[-7px] [.flow-port&]:[transform:translateY(-50%)] condition-false`,type:`source`,position:q.Bottom,title:`false`,"aria-label":`false`})]}):!e.compact&&(0,X.jsx)(J,{id:`output`,className:`flow-port after:absolute after:[content:''] after:inset-[-8px] absolute z-[3] w-[12px] h-[12px] [border:2px_solid_var(--solid)] rounded-[50%] bg-[var(--text)] [cursor:crosshair] output [.flow-port&]:top-[50%] [.flow-port&]:right-[-7px] [.flow-port&]:[transform:translateY(-50%)]`,type:`source`,position:q.Right,title:e.outputLabel,"aria-label":e.outputLabel}),(0,X.jsx)(`small`,{children:e.typeLabel}),(0,X.jsx)(`strong`,{children:e.label})]})}var Ae={workflow:ke};function je(e){return typeof e==`string`&&Oe.includes(e)}function Me(e){return e.data.kind===`condition`?`var(--warning-strong)`:e.data.kind===`parallel`?`var(--workflow-violet)`:e.data.kind===`approval`?`var(--success)`:e.data.kind===`notification`?`var(--notification-border)`:`var(--star-strong)`}function Ne({nodes:e,edges:t,selectedNodeId:n,selectedEdgeId:r,hint:i,inputLabel:a,outputLabel:o,nodeTypeLabel:s,onAddNode:c,onConnect:l,onMoveNode:u,onSelectNode:d,onSelectEdge:f,onClearSelection:p,onDeleteNodes:m,onDeleteEdges:h}){let{screenToFlowPosition:g}=ve(),_=(0,Y.useMemo)(()=>e.map(e=>({id:e.id,type:`workflow`,position:{x:e.x,y:e.y},selected:e.id===n,data:{kind:e.kind,label:e.label,typeLabel:s(e.kind),inputLabel:a,outputLabel:o}})),[a,s,e,o,n]),v=(0,Y.useRef)(new Set),y=(0,Y.useRef)(new Map),b=(0,Y.useRef)(null),[x,S,C]=ge(_);(0,Y.useEffect)(()=>{S(e=>{let t=new Map(e.map(e=>[e.id,e])),n=e.length!==_.length,r=_.map(e=>{let r=t.get(e.id);if(!r)return n=!0,e;let i=v.current.has(e.id)?r.position:e.position,a=r.data.kind===e.data.kind&&r.data.label===e.data.label&&r.data.typeLabel===e.data.typeLabel&&r.data.inputLabel===e.data.inputLabel&&r.data.outputLabel===e.data.outputLabel&&r.data.compact===e.data.compact;return i.x===r.position.x&&i.y===r.position.y&&r.selected===e.selected&&a?r:(n=!0,{...r,position:i,selected:e.selected,data:e.data})});return n?r:e})},[_,S]);let w=(0,Y.useCallback)(()=>{b.current=null,y.current.forEach((e,t)=>u(t,e)),y.current.clear()},[u]),T=(0,Y.useCallback)((e,t)=>{y.current.set(e,t),b.current??=requestAnimationFrame(w)},[w]);(0,Y.useEffect)(()=>()=>{b.current!==null&&cancelAnimationFrame(b.current)},[]);let E=(0,Y.useMemo)(()=>t.map(e=>({id:e.id,source:e.source,sourceHandle:e.sourcePort,target:e.target,targetHandle:e.targetPort,selected:e.id===r,markerEnd:{type:_e.ArrowClosed,width:16,height:16,color:`var(--canvas-edge)`},style:{stroke:`var(--canvas-edge)`,strokeWidth:2}})),[t,r]),D=(0,Y.useCallback)(e=>{!e.source||!e.target||l(e.source,e.target,e.sourceHandle||`output`)},[l]),O=(0,Y.useCallback)(e=>{e.preventDefault(),e.dataTransfer.dropEffect=`move`},[]),k=(0,Y.useCallback)(e=>{e.preventDefault();let t={};try{t=JSON.parse(e.dataTransfer.getData(`text/plain`)||`{}`)}catch{return}if(!je(t.kind))return;let n=g({x:e.clientX,y:e.clientY});c(t.kind,typeof t.label==`string`?t.label:s(t.kind),n)},[s,c,g]);return(0,X.jsxs)(`div`,{className:`workflow-react-flow absolute inset-0`,children:[(0,X.jsxs)(Se,{nodes:x,edges:E,nodeTypes:Ae,onNodesChange:C,connectionMode:we.Strict,deleteKeyCode:[`Backspace`,`Delete`],fitView:!0,fitViewOptions:{padding:.18,minZoom:.55,maxZoom:1},minZoom:.35,maxZoom:1.8,snapToGrid:!0,snapGrid:[20,20],panOnDrag:!0,zoomOnDoubleClick:!1,onConnect:D,onNodeClick:(e,t)=>d(t.id),onEdgeClick:(e,t)=>f(t.id),onPaneClick:p,onNodeDragStart:(e,t)=>v.current.add(t.id),onNodeDrag:(e,t)=>T(t.id,t.position),onNodeDragStop:(e,t)=>{v.current.delete(t.id),y.current.delete(t.id),u(t.id,t.position)},onNodesDelete:e=>m(e.map(e=>e.id)),onEdgesDelete:e=>h(e.map(e=>e.id)),onDragOver:O,onDrop:k,children:[(0,X.jsx)(Ce,{variant:ye.Dots,gap:20,size:1.2,color:`var(--canvas-grid)`}),(0,X.jsx)(he,{className:`workflow-react-flow-minimap [border:1px_solid_var(--stroke)] rounded-[var(--r-sm)] !bg-[var(--surface-subtle)]`,nodeColor:Me,nodeStrokeWidth:3,pannable:!0,zoomable:!0}),(0,X.jsx)(De,{position:`top-left`,showInteractive:!1})]}),(0,X.jsx)(`div`,{className:`absolute z-[5] [left:12px] [bottom:10px] text-[var(--text-muted)] text-[12px] pointer-events-none`,children:i})]})}function Pe(e){return(0,X.jsx)(be,{children:(0,X.jsx)(Ne,{...e})})}function Fe(e){return new Map(e.map((e,t)=>[e.id,t]))}function Ie(e=[],t){return e.slice(1).map((n,r)=>{let i=e[r];return{id:t?.(r,i.id,n.id)||`edge-${r}-${i.id}-${n.id}`,source:i.id,sourcePort:`output`,target:n.id,targetPort:`input`}})}function Le(e=[],t=[]){let n=e.filter(e=>e.enabled!==!1),r=new Set(n.map(e=>e.id)),i=t.filter(e=>r.has(e.source)&&r.has(e.target)),a=new Map(n.map(e=>[e.id,[]])),o=new Map(n.map(e=>[e.id,[]])),s=new Map(n.map(e=>[e.id,0])),c=Fe(n);for(let e of i)a.get(e.target)?.push(e),o.get(e.source)?.push(e),s.set(e.target,(s.get(e.target)||0)+1);let l=n.filter(e=>s.get(e.id)===0),u=[];for(;l.length;){l.sort((e,t)=>c.get(e.id)-c.get(t.id));let e=l.shift();u.push(e);for(let t of o.get(e.id)||[]){let e=(s.get(t.target)||0)-1;s.set(t.target,e),e===0&&l.push(n.find(e=>e.id===t.target))}}let d=n.filter(e=>(a.get(e.id)||[]).length===0),f=d.find(e=>e.kind===`trigger`)||d[0];return{nodes:n,edges:i,incoming:a,outgoing:o,order:u,roots:d,unconnected:n.filter(e=>e.id!==f?.id&&(a.get(e.id)||[]).length===0),invalidTriggerTargets:n.filter(e=>e.kind===`trigger`&&(a.get(e.id)||[]).length>0),hasCycle:u.length!==n.length}}function Re(e,t,n,r,i=`output`){return Le(e,[...t,{id:`__candidate__`,source:n,sourcePort:i,target:r,targetPort:`input`}]).hasCycle}var ze={trigger:`触发器`,prompt:`任务`,skill:`Skill`,file:`文件`,mcp:`MCP`,notification:`通知`,condition:`判断`,parallel:`并行`,approval:`审批`},Be=[{kind:`trigger`,label:`手动触发`,Icon:k},{kind:`prompt`,label:`运行 Prompt`,Icon:j},{kind:`skill`,label:`调用 Skill`,Icon:d},{kind:`file`,label:`读写文件`,Icon:y},{kind:`mcp`,label:`调用 MCP`,Icon:re},{kind:`condition`,label:`条件分支`,Icon:f},{kind:`parallel`,label:`并行汇合`,Icon:C},{kind:`approval`,label:`人工审批`,Icon:F},{kind:`notification`,label:`发送通知`,Icon:ie}];function Ve(e,t){return t(e===`trigger`?`workflows:workflowsPage.triggerNode`:e===`skill`?`workflows:workflowsPage.skillNode`:e===`file`?`workflows:workflowsPage.fileNode`:e===`mcp`?`workflows:workflowsPage.mcpNode`:e===`notification`?`workflows:workflowsPage.notificationNode`:e===`condition`?`workflows:workflowsPage.conditionNode`:e===`parallel`?`workflows:workflowsPage.parallelNode`:e===`approval`?`workflows:workflowsPage.approvalNode`:`workflows:workflowsPage.task`)}function He(e,t){return t(e===`trigger`?`workflows:workflowsPage.manualTrigger`:e===`skill`?`workflows:workflowsPage.callSkill`:e===`file`?`workflows:workflowsPage.readWriteFiles`:e===`mcp`?`workflows:workflowsPage.callMcp`:e===`condition`?`workflows:workflowsPage.conditionBranch`:e===`parallel`?`workflows:workflowsPage.parallelJoin`:e===`approval`?`workflows:workflowsPage.humanApproval`:e===`notification`?`workflows:workflowsPage.sendNotification`:`workflows:workflowsPage.runPrompt`)}function Ue(e,t){return t(e===`pr-fix`?`workflows:workflowsPage.prFix`:e===`research`?`workflows:workflowsPage.research`:e===`report`?`workflows:workflowsPage.dailyWeeklyReport`:e===`asset`?`workflows:workflowsPage.assetGeneration`:e===`release`?`workflows:workflowsPage.releasePreparation`:`workflows:workflowsPage.codeReview`)}function We(e,t){return t(e===`pr-fix`?`workflows:workflowsPage.prFixDescription`:e===`research`?`workflows:workflowsPage.researchDescription`:e===`report`?`workflows:workflowsPage.reportDescription`:e===`asset`?`workflows:workflowsPage.assetDescription`:e===`release`?`workflows:workflowsPage.releaseDescription`:`workflows:workflowsPage.codeReviewDescription`)}function Z(e,t,n,r,i,a,o={}){return{id:e,kind:t,label:n,prompt:r,x:i,y:a,model:null,executionMode:`full-access`,retries:0,timeoutMinutes:20,failurePolicy:`stop`,enabled:!0,outputFormat:`text`,skillName:``,requestedToolNames:[],condition:{source:`previous`,operator:`exists`,value:``},approval:{message:``,timeoutMinutes:60},notification:{title:``,content:``},notificationTargets:[],...o}}function Ge(e){return Ie(e,()=>crypto.randomUUID())}var Ke=[{id:`code-review`,name:`代码审查`,description:`读取 diff → 运行测试 → 生成 review`,Icon:_,nodes:[Z(`review-trigger`,`trigger`,`手动触发`,``,65,45),Z(`review-diff`,`file`,`读取 diff`,`读取当前工作区的 git diff,识别改动范围与高风险文件。`,235,45),Z(`review-test`,`prompt`,`运行检查`,`运行适合当前项目的测试与 lint,记录失败原因。`,405,45),Z(`review-report`,`prompt`,`生成 review`,`结合 diff 和验证结果,输出按严重度排序的代码审查结论。`,235,180),Z(`review-notify`,`notification`,`发送结果`,``,405,180)]},{id:`pr-fix`,name:`PR 修复`,description:`定位失败 → 修改代码 → 回归测试`,Icon:f,nodes:[Z(`fix-trigger`,`trigger`,`手动触发`,``,65,45),Z(`fix-find`,`prompt`,`定位失败`,`检查项目状态与失败信息,定位最可能的根因。`,235,45),Z(`fix-code`,`prompt`,`修改代码`,`修复已定位的问题,保留用户已有改动,不执行破坏性命令。`,405,45),Z(`fix-test`,`prompt`,`回归测试`,`运行针对性测试和构建,确认修复没有引入回归。`,235,180),Z(`fix-notify`,`notification`,`通知结果`,``,405,180)]},{id:`research`,name:`资料调研`,description:`搜索资料 → 提取引用 → 点亮星忆`,Icon:E,nodes:[Z(`research-trigger`,`trigger`,`手动输入`,``,65,45),Z(`research-search`,`prompt`,`搜索资料`,`围绕工作流描述中的主题检索项目内资料与可用信息源。`,235,45),Z(`research-summary`,`prompt`,`整理引用`,`整理关键结论、证据、限制和下一步建议。`,405,45),Z(`research-memory`,`prompt`,`保存星忆`,`把适合长期保留的结论写入 Agent 记忆。`,320,180)]},{id:`report`,name:`日报周报`,description:`汇总会话 → 生成摘要 → 渠道通知`,Icon:b,nodes:[Z(`report-trigger`,`trigger`,`手动触发`,``,65,45),Z(`report-collect`,`prompt`,`汇总进展`,`汇总当前项目近期完成事项、风险与待办。`,235,45),Z(`report-write`,`prompt`,`生成报告`,`将汇总内容整理为清晰的日报或周报。`,405,45),Z(`report-notify`,`notification`,`渠道通知`,``,320,180)]},{id:`asset`,name:`资产生成`,description:`生成图片 → 存入资产库 → 通知验收`,Icon:x,nodes:[Z(`asset-trigger`,`trigger`,`手动输入`,``,65,45),Z(`asset-generate`,`prompt`,`生成视觉资产`,`根据工作流描述生成需要的视觉资产,并保存生成文件。`,235,45),Z(`asset-check`,`prompt`,`检查产物`,`检查生成资产是否完整、可访问并符合需求。`,405,45),Z(`asset-notify`,`notification`,`通知验收`,``,320,180)]},{id:`release`,name:`发布准备`,description:`版本检查 → changelog → 创建发布单`,Icon:N,nodes:[Z(`release-trigger`,`trigger`,`手动触发`,``,65,45),Z(`release-check`,`prompt`,`版本检查`,`检查工作区、测试、构建和版本信息是否满足发布要求。`,235,45),Z(`release-log`,`prompt`,`生成 changelog`,`根据近期提交和改动生成 changelog 与发布说明。`,405,45),Z(`release-report`,`prompt`,`发布清单`,`生成最终发布检查清单并标记阻塞项。`,320,180)]}];function qe(e=``){let t=[Z(crypto.randomUUID(),`trigger`,`手动触发`,``,65,45),Z(crypto.randomUUID(),`prompt`,`运行 Prompt`,``,235,45)];return{id:``,name:`未命名工作流`,description:``,status:`draft`,revision:1,cwd:e,model:null,inputs:[],tags:[],visibility:`private`,notifications:[],nodes:t,edges:Ge(t)}}function Je(e,t=``){let n=e.nodes.map(e=>({...e,id:crypto.randomUUID()}));return{...qe(t),name:e.name,description:e.description,nodes:n,edges:Ge(n)}}function Ye({draft:e,selectedNodeId:t,selectedEdgeId:n,t:r,onAddNode:i,onConnect:a,onMoveNode:o,onSelectNode:s,onSelectEdge:c,onClearSelection:l,onDeleteNodes:u,onDeleteEdges:d}){return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(U,{size:`sm`,className:`workflow-card [&_h2]:text-[16px] [&_h2]:tracking-[-.02em] [.detail-stack_>_&]:[flex:0_0_auto] [border:1px_solid_var(--stroke)] rounded-[var(--r-xs)] bg-[var(--panel)] text-[var(--text)] shadow-[0_1px_2px_var(--sh-edge),0_14px_32px_-24px_var(--shadow)] node-library [&_[data-slot='card-content']_>_div_>_small]:block [&_[data-slot='card-content']_>_div_>_small]:h-[15px] [&_[data-slot='card-content']_>_div_>_small]:text-[var(--text-muted)] [&_[data-slot='card-content']_>_div_>_small]:text-[13px] [&_[data-slot='card-content']_>_div_>_small]:font-[600] [&_[data-slot='card-content']_>_div_>_button]:grid [&_[data-slot='card-content']_>_div_>_button]:w-full [&_[data-slot='card-content']_>_div_>_button]:grid-cols-[auto_minmax(0,1fr)_auto] [&_[data-slot='card-content']_>_div_>_button]:items-center [&_[data-slot='card-content']_>_div_>_button]:gap-[7px] [&_[data-slot='card-content']_>_div_>_button]:border-0 [&_[data-slot='card-content']_>_div_>_button]:[border-top:1px_solid_var(--stroke-soft)] [&_[data-slot='card-content']_>_div_>_button]:bg-transparent [&_[data-slot='card-content']_>_div_>_button]:p-[8px_3px] [&_[data-slot='card-content']_>_div_>_button]:text-[var(--text)] [&_[data-slot='card-content']_>_div_>_button]:text-left [&_[data-slot='card-content']_>_div_>_button]:text-[12px] [&_[data-slot='card-content']_>_div_>_button]:cursor-grab [&_[data-slot='card-content']_>_div_>_button_span]:text-[var(--text-muted)] [&_[data-slot='card-content']_>_div_>_button_span]:text-[13px] max-[650px]:max-h-[220px] overflow-auto gap-0 py-0`,children:(0,X.jsxs)(H,{className:`p-3.5`,children:[(0,X.jsx)(V,{className:`workflow-section-title [.selection-list_&]:mb-[8px] [.node-library_&]:mb-[8px] text-[var(--text-soft)] text-[13px] font-[700] leading-[1.4]`,children:r(`workflows:workflowsPage.nodeLibrary`)}),Be.map(({kind:e,label:t,Icon:n})=>(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`small`,{children:e===`trigger`?r(`workflows:workflowsPage.triggerGroup`):``}),(0,X.jsxs)(`button`,{draggable:!0,onDragStart:n=>n.dataTransfer.setData(`text/plain`,JSON.stringify({kind:e,label:t})),children:[(0,X.jsx)(n,{size:15}),He(e,r),(0,X.jsx)(`span`,{title:r(`workflows:workflowsPage.drag`),"aria-label":r(`workflows:workflowsPage.drag`),children:(0,X.jsx)(Ee,{size:13})})]})]},e))]})}),(0,X.jsx)(U,{size:`sm`,className:`workflow-card [&_h2]:text-[16px] [&_h2]:tracking-[-.02em] [.detail-stack_>_&]:[flex:0_0_auto] [border:1px_solid_var(--stroke)] rounded-[var(--r-xs)] bg-[var(--panel)] text-[var(--text)] shadow-[0_1px_2px_var(--sh-edge),0_14px_32px_-24px_var(--shadow)] builder-canvas relative min-h-[620px] overflow-hidden p-0 !bg-[var(--canvas-bg)] dark:bg-[var(--canvas-bg)] max-[650px]:min-w-[620px] gap-0 py-0`,children:(0,X.jsx)(Pe,{nodes:e.nodes,edges:e.edges,selectedNodeId:t,selectedEdgeId:n,hint:r(`workflows:workflowsPage.dragFromANodeOutputToTheTargetInputToConnectThem`),inputLabel:r(`workflows:workflowsPage.inputPort`),outputLabel:r(`workflows:workflowsPage.outputPort`),nodeTypeLabel:e=>Ve(e,r),onAddNode:i,onConnect:a,onMoveNode:o,onSelectNode:s,onSelectEdge:c,onClearSelection:l,onDeleteNodes:u,onDeleteEdges:d})})]})}function Xe(e){let t=Math.max(0,Math.round((Number(e)||0)/1e3));return t<60?`${t}s`:`${Math.floor(t/60)}m ${t%60}s`}function Ze(e,t){return t(e===`running`?`workflows:workflowsPage.running`:e===`waiting_approval`?`workflows:workflowsPage.waitingApproval`:e===`completed`?`workflows:workflowsPage.completed`:e===`failed`?`workflows:workflowsPage.failed`:e===`cancelled`?`workflows:workflowsPage.stopped`:e===`interrupted`?`workflows:workflowsPage.interrupted`:`workflows:workflowsPage.draft`)}function Qe({value:e,onChange:t,t:n}){return(0,X.jsx)(de,{value:e,onValueChange:e=>t(e),children:(0,X.jsxs)(z,{className:`workflow-filter-list [&_[data-slot='tabs-trigger']]:min-w-[56px] [&_[data-slot='tabs-trigger']]:flex-none [&_[data-slot='tabs-trigger']]:[padding-inline:12px] [&_[data-slot='tabs-trigger']]:text-[12px] w-fit max-w-[100%] overflow-x-auto [scrollbar-width:none]`,children:[(0,X.jsx)(B,{value:`workflows`,children:n(`workflows:workflowsPage.workflows`)}),(0,X.jsx)(B,{value:`runs`,children:n(`workflows:workflowsPage.runHistory`)}),(0,X.jsx)(B,{value:`templates`,children:n(`workflows:workflowsPage.templates`)})]})})}function $e({workflows:e,runs:t,busyId:n,language:r,t:i,onRun:a,onEdit:o,onDuplicate:c,onExport:l,onImport:u,onDelete:d}){let f=(0,Y.useRef)(null),p=e=>t.filter(t=>t.workflowId===e).sort((e,t)=>Date.parse(t.startedAt)-Date.parse(e.startedAt))[0];return(0,X.jsx)(U,{size:`sm`,className:`workflow-card [&_h2]:text-[16px] [&_h2]:tracking-[-.02em] [.detail-stack_>_&]:[flex:0_0_auto] [border:1px_solid_var(--stroke)] rounded-[var(--r-xs)] bg-[var(--panel)] text-[var(--text)] shadow-[0_1px_2px_var(--sh-edge),0_14px_32px_-24px_var(--shadow)] workflow-assets-panel overflow-hidden gap-0 py-0`,children:(0,X.jsxs)(H,{className:`p-0`,children:[(0,X.jsxs)(`div`,{className:`workflow-table-head [&_>_div]:flex [&_>_div]:min-w-0 [&_>_div]:flex-col [&_>_div]:gap-[2px] [&_small]:text-[var(--text-muted)] [&_small]:text-[11px] flex min-h-[58px] items-center justify-between gap-[12px] [border-bottom:1px_solid_var(--stroke-soft)] [padding:10px_14px]`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(V,{className:`workflow-section-title [.selection-list_&]:mb-[8px] [.node-library_&]:mb-[8px] text-[var(--text-soft)] text-[13px] font-[700] leading-[1.4]`,children:i(`workflows:workflowsPage.workflows`)}),(0,X.jsx)(`small`,{children:i(`workflows:workflowsPage.countWorkflows`,{count:e.length})})]}),(0,X.jsxs)(s,{size:`sm`,variant:`outline`,onClick:()=>f.current?.click(),children:[(0,X.jsx)(Te,{"data-icon":`inline-start`}),i(`workflows:workflowsPage.import`)]}),(0,X.jsx)(`input`,{ref:f,className:`sr-only`,type:`file`,accept:`application/json,.json`,onChange:async e=>{let t=e.target.files?.[0];if(t)try{u(JSON.parse(await t.text()))}catch{u(null)}finally{e.currentTarget.value=``}}})]}),e.length?(0,X.jsx)(`div`,{className:`flex flex-col`,children:e.map(e=>{let t=p(e.id),u=[`running`,`waiting_approval`].includes(t?.status||``);return(0,X.jsxs)(`div`,{className:`workflow-asset-row first:[border-top:0] max-[650px]:grid-cols-[minmax(0,1fr)_92px] max-[650px]:gap-[8px_12px] max-[650px]:[padding-block:10px] grid min-h-[62px] grid-cols-[minmax(220px,1fr)_110px_150px_auto] items-center gap-[14px] [border-top:1px_solid_var(--stroke-soft)] [padding:8px_12px_8px_14px]`,children:[(0,X.jsxs)(`button`,{className:`workflow-asset-main [&_strong]:overflow-hidden [&_strong]:text-ellipsis [&_strong]:whitespace-nowrap [&_small]:overflow-hidden [&_small]:text-ellipsis [&_small]:whitespace-nowrap [&_strong]:text-[13px] [&_small]:text-[var(--text-muted)] [&_small]:text-[11px] flex min-w-0 flex-col gap-[3px] border-0 bg-transparent text-[var(--text)] text-left cursor-pointer`,onClick:()=>o(e.id),children:[(0,X.jsx)(`strong`,{children:e.name}),(0,X.jsx)(`small`,{children:e.description||e.cwd})]}),(0,X.jsxs)(`span`,{className:`workflow-state [&_small]:overflow-hidden [&_small]:text-[var(--text-muted)] [&_small]:text-[10px] [&_small]:font-[400] [&_small]:text-ellipsis [&_small]:whitespace-nowrap [&.running]:text-[var(--warning-strong)] [&.waiting_approval]:text-[var(--warning-strong)] [&.completed]:text-[var(--success)] [&.published]:text-[var(--success)] [&.failed]:text-[var(--danger)] max-[650px]:[.workflow-asset-row_>_&:nth-of-type(2)]:[grid-column:1] flex min-w-0 flex-col gap-[2px] text-[var(--text-secondary)] text-[11px] font-[600] ${e.status}`,children:[e.status===`published`?i(`workflows:workflowsPage.published`):i(`workflows:workflowsPage.draft`),(0,X.jsxs)(`small`,{children:[`v`,e.revision]})]}),(0,X.jsxs)(`span`,{className:`workflow-state [&_small]:overflow-hidden [&_small]:text-[var(--text-muted)] [&_small]:text-[10px] [&_small]:font-[400] [&_small]:text-ellipsis [&_small]:whitespace-nowrap [&.running]:text-[var(--warning-strong)] [&.waiting_approval]:text-[var(--warning-strong)] [&.completed]:text-[var(--success)] [&.published]:text-[var(--success)] [&.failed]:text-[var(--danger)] max-[650px]:[.workflow-asset-row_>_&:nth-of-type(2)]:[grid-column:1] flex min-w-0 flex-col gap-[2px] text-[var(--text-secondary)] text-[11px] font-[600] ${t?.status||`idle`}`,children:[t?Ze(t.status,i):i(`workflows:workflowsPage.neverRun`),(0,X.jsx)(`small`,{children:t?R(t.startedAt,r):e.visibility})]}),(0,X.jsxs)(`div`,{className:`workflow-row-actions max-[650px]:[grid-column:2] max-[650px]:[grid-row:1/3] max-[650px]:flex-wrap flex items-center justify-end gap-[3px]`,children:[(0,X.jsx)(s,{size:`icon-xs`,variant:u?`secondary`:`outline`,disabled:u||n===e.id,title:i(`workflows:workflowsPage.run`),onClick:()=>a(e),children:n===e.id?(0,X.jsx)(M,{className:`animate-spin`}):(0,X.jsx)(T,{fill:`currentColor`})}),(0,X.jsx)(s,{size:`icon-xs`,variant:`ghost`,title:i(`workflows:workflowsPage.edit`),onClick:()=>o(e.id),children:(0,X.jsx)(w,{})}),(0,X.jsx)(s,{size:`icon-xs`,variant:`ghost`,title:i(`workflows:workflowsPage.duplicateWorkflow`),onClick:()=>c(e),children:(0,X.jsx)(v,{})}),(0,X.jsx)(s,{size:`icon-xs`,variant:`ghost`,title:i(`workflows:workflowsPage.export`),onClick:()=>l(e),children:(0,X.jsx)(te,{})}),(0,X.jsx)(s,{size:`icon-xs`,variant:`ghost`,disabled:u,title:i(`workflows:workflowsPage.delete`),onClick:()=>d(e),children:(0,X.jsx)(O,{})})]})]},e.id)})}):(0,X.jsx)(`div`,{className:`channel-route-empty [&_strong]:mt-[9px] [&_strong]:text-[var(--text)] [&_strong]:text-[12px] [&_span]:mt-[4px] [&_span]:text-[13px] [&.compact]:min-h-[110px] [.workflow-assets-panel_&]:min-h-[150px] [.workflow-assets-panel_&]:border-0 [.workflow-assets-panel_&]:bg-transparent grid min-h-[185px] place-content-center justify-items-center text-[var(--text-muted)] text-center compact`,children:(0,X.jsx)(`strong`,{children:i(`workflows:workflowsPage.noMatchingWorkflows`)})})]})})}function et({runs:e,busyId:t,language:n,t:r,onStop:i,onRetry:a,onApproval:o}){let[c,u]=(0,Y.useState)(e[0]?.id||``),d=[...e].sort((e,t)=>Date.parse(t.startedAt)-Date.parse(e.startedAt));return(0,X.jsxs)(`div`,{className:`flex flex-col gap-[8px]`,children:[d.map(e=>{let d=c===e.id,f=Math.round((Number(e.completedNodes)||0)/Math.max(1,Number(e.totalNodes)||1)*100);return(0,X.jsx)(U,{size:`sm`,className:`workflow-card [&_h2]:text-[16px] [&_h2]:tracking-[-.02em] [.detail-stack_>_&]:[flex:0_0_auto] [border:1px_solid_var(--stroke)] rounded-[var(--r-xs)] bg-[var(--panel)] text-[var(--text)] shadow-[0_1px_2px_var(--sh-edge),0_14px_32px_-24px_var(--shadow)] overflow-hidden gap-0 py-0`,children:(0,X.jsxs)(H,{className:`p-0`,children:[(0,X.jsxs)(`button`,{className:`workflow-run-summary hover:bg-[var(--surface-hover)] [&_>_span]:flex [&_>_span]:min-w-0 [&_>_span]:flex-col [&_>_span]:gap-[2px] [&_strong]:overflow-hidden [&_strong]:text-ellipsis [&_strong]:whitespace-nowrap [&_small]:overflow-hidden [&_small]:text-ellipsis [&_small]:whitespace-nowrap [&_strong]:text-[13px] [&_small]:text-[var(--text-muted)] [&_small]:text-[11px] [&_small]:[font-style:normal] [&_em]:text-[var(--text-muted)] [&_em]:text-[11px] [&_em]:[font-style:normal] [&_[data-slot='progress']]:h-[5px] max-[650px]:grid-cols-[18px_minmax(0,1fr)_54px] max-[650px]:gap-[8px] max-[650px]:[&_[data-slot='progress']]:[grid-column:2/4] grid w-full min-h-[58px] grid-cols-[18px_minmax(180px,1fr)_minmax(120px,240px)_70px] items-center gap-[12px] border-0 bg-transparent [padding:9px_14px] text-[var(--text)] text-left cursor-pointer`,onClick:()=>u(d?``:e.id),children:[d?(0,X.jsx)(g,{size:15}):(0,X.jsx)(I,{size:15}),(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`strong`,{children:e.workflowName||e.workflowId}),(0,X.jsxs)(`small`,{children:[Ze(e.status,r),` · `,R(e.startedAt,n),` · v`,e.workflowRevision||1]})]}),(0,X.jsx)(m,{value:e.status===`completed`?100:f}),(0,X.jsx)(`em`,{children:Xe(e.durationMs)})]}),d&&(0,X.jsxs)(`div`,{className:`workflow-run-detail max-[650px]:pl-[14px] flex flex-col gap-[10px] [border-top:1px_solid_var(--stroke-soft)] [padding:12px_14px_14px_44px]`,children:[(e.summary||e.error)&&(0,X.jsx)(`div`,{className:`workflow-run-result [&.failed]:border-[var(--danger)] [&.failed]:text-[var(--danger)] [border-left:2px_solid_var(--success)] [padding:4px_8px] text-[var(--text-secondary)] text-[12px] whitespace-pre-wrap ${e.error?`failed`:``}`,children:e.error||e.summary}),(0,X.jsx)(`div`,{className:`flex flex-col`,children:(e.nodes||[]).map(n=>(0,X.jsxs)(`div`,{className:`workflow-run-node first:[border-top:0] [&_>_span:nth-child(2)]:flex [&_>_span:nth-child(2)]:min-w-0 [&_>_span:nth-child(2)]:flex-col [&_>_span:nth-child(2)]:gap-[2px] [&_strong]:text-[12px] [&_small]:text-[var(--text-muted)] [&_small]:text-[11px] [&_p]:text-[var(--text-muted)] [&_p]:text-[11px] [&_p]:mt-[3px] [&_p]:whitespace-pre-wrap max-[650px]:grid-cols-[18px_minmax(0,1fr)] max-[650px]:[&_>_div]:[grid-column:2] grid min-h-[46px] grid-cols-[20px_minmax(0,1fr)_auto] items-center gap-[8px] [border-top:1px_solid_var(--stroke-soft)] [padding:6px_0] ${n.status}`,children:[(0,X.jsx)(`span`,{className:`workflow-node-status [.workflow-run-node.completed_&]:text-[var(--success)] [.workflow-run-node.failed_&]:text-[var(--danger)] grid place-items-center text-[var(--text-muted)]`,children:n.status===`completed`?(0,X.jsx)(l,{size:14}):n.status===`failed`?(0,X.jsx)(p,{size:14}):n.status===`running`||n.status===`waiting_approval`?(0,X.jsx)(M,{className:n.status===`running`?`animate-spin`:``,size:14}):(0,X.jsx)(D,{size:12})}),(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`strong`,{children:n.label}),(0,X.jsxs)(`small`,{children:[Ze(n.status,r),` · `,Xe(n.durationMs),` ·`,` `,r(`workflows:workflowsPage.countAttempts`,{count:n.attempts||0})]}),(n.error||n.summary)&&(0,X.jsx)(`p`,{children:n.error||n.summary})]}),n.status===`waiting_approval`&&(0,X.jsxs)(`div`,{className:`workflow-approval-actions flex gap-[6px]`,children:[(0,X.jsxs)(s,{size:`xs`,disabled:t===n.id,onClick:()=>o(e,n.id,!0),children:[(0,X.jsx)(l,{"data-icon":`inline-start`}),r(`workflows:workflowsPage.approve`)]}),(0,X.jsxs)(s,{size:`xs`,variant:`destructive`,disabled:t===n.id,onClick:()=>o(e,n.id,!1),children:[(0,X.jsx)(p,{"data-icon":`inline-start`}),r(`workflows:workflowsPage.reject`)]})]})]},n.id))}),(0,X.jsx)(`div`,{className:`workflow-run-detail-actions flex gap-[6px]`,children:[`running`,`waiting_approval`].includes(e.status)?(0,X.jsxs)(s,{size:`sm`,variant:`destructive`,onClick:()=>i(e),children:[(0,X.jsx)(D,{"data-icon":`inline-start`}),r(`workflows:workflowsPage.stop`)]}):[`failed`,`cancelled`,`interrupted`].includes(e.status)?(0,X.jsxs)(s,{size:`sm`,variant:`outline`,onClick:()=>a(e),children:[(0,X.jsx)(M,{"data-icon":`inline-start`}),r(`workflows:workflowsPage.retryRun`)]}):null})]})]})},e.id)}),!d.length&&(0,X.jsx)(ue,{size:`sm`,className:`workflow-card [&_h2]:text-[16px] [&_h2]:tracking-[-.02em] [.detail-stack_>_&]:[flex:0_0_auto] [border:1px_solid_var(--stroke)] rounded-[var(--r-xs)] bg-[var(--panel)] text-[var(--text)] shadow-[0_1px_2px_var(--sh-edge),0_14px_32px_-24px_var(--shadow)]`,children:(0,X.jsx)(`strong`,{children:r(`workflows:workflowsPage.noRunHistory`)})})]})}function tt({t:e,onOpenTemplate:t}){return(0,X.jsx)(`div`,{className:`workflow-template-gallery [&_>_button]:grid [&_>_button]:min-h-[72px] [&_>_button]:grid-cols-[34px_minmax(0,1fr)_18px] [&_>_button]:items-center [&_>_button]:gap-[10px] [&_>_button]:[border:1px_solid_var(--stroke)] [&_>_button]:rounded-[var(--r-sm)] [&_>_button]:bg-[var(--panel)] [&_>_button]:p-[11px] [&_>_button]:text-[var(--text)] [&_>_button]:text-left [&_>_button]:cursor-pointer [&_>_button:hover]:border-[var(--accent-border)] [&_>_button:hover]:bg-[var(--surface-hover)] [&_button_>_span:nth-child(2)]:flex [&_button_>_span:nth-child(2)]:min-w-0 [&_button_>_span:nth-child(2)]:flex-col [&_button_>_span:nth-child(2)]:gap-[3px] [&_strong]:text-[13px] [&_small]:overflow-hidden [&_small]:text-[var(--text-muted)] [&_small]:text-[11px] [&_small]:text-ellipsis [&_small]:whitespace-nowrap max-[650px]:grid-cols-[1fr] grid grid-cols-[repeat(2,minmax(0,1fr))] gap-[8px]`,children:Ke.map(n=>{let r=n.Icon;return(0,X.jsxs)(`button`,{onClick:()=>t(n.id),children:[(0,X.jsx)(`span`,{className:`list-icon [.chat-resource-list_&]:grid [.chat-resource-list_&]:w-[28px] [.chat-resource-list_&]:h-[28px] [.chat-resource-list_&]:place-items-center [.chat-resource-list_&]:rounded-[var(--r-sm)] [.chat-resource-list_&]:bg-[var(--surface-subtle)] [.chat-resource-list_&]:text-[var(--star-strong)] [.session-workflow-summary_&]:grid [.session-workflow-summary_&]:w-[28px] [.session-workflow-summary_&]:h-[28px] [.session-workflow-summary_&]:place-items-center [.session-workflow-summary_&]:rounded-[var(--r-sm)] [.session-workflow-summary_&]:bg-[var(--surface-subtle)] [.session-workflow-summary_&]:text-[var(--star-strong)] grid w-[27px] h-[27px] place-items-center rounded-[var(--r-sm)] bg-[var(--accent-soft)] text-[var(--star-strong)] [.workflow-template-gallery_&]:grid [.workflow-template-gallery_&]:w-[32px] [.workflow-template-gallery_&]:h-[32px] [.workflow-template-gallery_&]:place-items-center [.workflow-template-gallery_&]:rounded-[var(--r-sm)] [.workflow-template-gallery_&]:bg-[var(--surface-subtle)] [.workflow-template-gallery_&]:text-[var(--star-strong)]`,children:(0,X.jsx)(r,{size:16})}),(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`strong`,{children:Ue(n.id,e)}),(0,X.jsx)(`small`,{children:We(n.id,e)})]}),(0,X.jsx)(I,{size:15})]},n.id)})})}function nt({data:e,t}){let n=e.runs.filter(e=>e.status===`failed`).length,r=e.runs.filter(e=>e.status===`waiting_approval`).length,i=e.runs.filter(e=>e.status===`completed`),a=i.length?i.reduce((e,t)=>e+(t.durationMs||0),0)/i.length:0;return(0,X.jsxs)(`div`,{className:`workflow-operations-strip [&_>_span]:inline-flex [&_>_span]:[align-items:baseline] [&_>_span]:gap-[5px] [&_>_span]:text-[var(--text-muted)] [&_>_span]:text-[11px] [&_>_span]:whitespace-nowrap [&_strong]:text-[var(--text)] [&_strong]:text-[13px] [&_strong]:[font-variant-numeric:tabular-nums] max-[650px]:justify-between max-[650px]:gap-[6px] max-[650px]:overflow-x-auto max-[650px]:[&_>_span]:flex-col max-[650px]:[&_>_span]:gap-[0] flex min-w-0 items-center gap-[18px]`,children:[(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`strong`,{children:e.limits.running}),t(`workflows:workflowsPage.running`)]}),(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`strong`,{children:r}),t(`workflows:workflowsPage.waitingApproval`)]}),(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`strong`,{children:n}),t(`workflows:workflowsPage.failed`)]}),(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`strong`,{children:Xe(a)}),t(`workflows:workflowsPage.averageDuration`)]})]})}function Q({className:e,...t}){return(0,X.jsx)(`textarea`,{"data-slot":`textarea`,className:h(`flex field-sizing-content min-h-16 w-full rounded-lg border border-input bg-transparent px-2.5 py-2 text-base transition-colors outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40`,e),...t})}function rt(e){let t=Math.max(0,Math.round((Number(e)||0)/1e3));return t<60?`${t} 秒`:`${Math.floor(t/60)} 分 ${t%60} 秒`}function it({run:e,t}){return(0,X.jsxs)(oe,{role:`status`,children:[(0,X.jsx)(M,{className:`animate-spin`,size:16}),(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`strong`,{children:t(`workflows:workflowsPage.workflowRunning`)}),(0,X.jsx)(`small`,{children:t(`workflows:workflowsPage.runningNodeCompletedTotalCompleted`,{node:e.currentNodeLabel||t(`workflows:workflowsPage.preparing`),completed:e.completedNodes,total:e.totalNodes})})]})]})}function at({run:e,language:t,t:n}){return(0,X.jsx)(U,{size:`sm`,className:`workflow-card [&_h2]:text-[16px] [&_h2]:tracking-[-.02em] [.detail-stack_>_&]:[flex:0_0_auto] [border:1px_solid_var(--stroke)] rounded-[var(--r-xs)] bg-[var(--panel)] text-[var(--text)] shadow-[0_1px_2px_var(--sh-edge),0_14px_32px_-24px_var(--shadow)] gap-0 py-0`,children:(0,X.jsxs)(H,{className:`p-3.5`,children:[(0,X.jsx)(V,{className:`workflow-section-title [.selection-list_&]:mb-[8px] [.node-library_&]:mb-[8px] text-[var(--text-soft)] text-[13px] font-[700] leading-[1.4]`,children:n(`workflows:workflowsPage.latestRun`)}),e?(0,X.jsxs)(`div`,{className:`activity-row [&_span]:flex [&_span]:min-w-0 [&_span]:flex-col [&_span]:gap-[3px] [&_strong]:text-[13px] [&_small]:text-[var(--text-muted)] [&_small]:text-[13px] [&_span]:text-[var(--text)] [&.failed]:text-[var(--danger)] [&.running]:text-[var(--star-strong)] grid grid-cols-[auto_minmax(0,1fr)] items-center gap-[9px] [border-top:1px_solid_var(--stroke-soft)] [padding:9px_2px] text-[var(--success)] ${e.status}`,children:[e.status===`running`?(0,X.jsx)(M,{className:`animate-spin`,size:15}):e.status===`completed`?(0,X.jsx)(F,{size:15}):(0,X.jsx)(L,{size:15}),(0,X.jsxs)(`span`,{children:[(0,X.jsx)(`strong`,{children:e.status===`completed`?e.summary||n(`workflows:workflowsPage.workflowCompleted`):e.status===`running`?e.currentNodeLabel||n(`workflows:workflowsPage.running`):e.error||n(`workflows:workflowsPage.workflowFailed`)}),(0,X.jsxs)(`small`,{children:[R(e.startedAt,t),` · `,rt(e.durationMs)]})]})]}):(0,X.jsx)(`p`,{className:`muted-copy m-[8px_0_14px] text-[var(--text-muted)] text-[12px] leading-[1.55]`,children:n(`workflows:workflowsPage.noRunHistory`)})]})})}var ot={browser:{Icon:ie},feishu:{Icon:j},weixin:{Icon:S}},st=[`read-only`,`workspace-write`,`full-access`];function ct(e,t){return t(e===`read-only`?`workflows:workflowsPage.readOnly`:e===`workspace-write`?`workflows:workflowsPage.workspaceWrite`:`workflows:workflowsPage.fullAccess`)}function lt(e,t){return t(e===`read-only`?`workflows:workflowsPage.readOnlyHelp`:e===`workspace-write`?`workflows:workflowsPage.workspaceWriteHelp`:`workflows:workflowsPage.fullAccessHelp`)}function ut(e,t){return t(e===`feishu`?`workflows:workflowsPage.feishu`:e===`weixin`?`workflows:workflowsPage.weChat`:`workflows:workflowsPage.browserNotification`)}function dt({draft:e,catalog:t,t:n,onUpdateDraft:r}){return(0,X.jsx)(U,{size:`sm`,className:`workflow-card [&_h2]:text-[16px] [&_h2]:tracking-[-.02em] [.detail-stack_>_&]:[flex:0_0_auto] [border:1px_solid_var(--stroke)] rounded-[var(--r-xs)] bg-[var(--panel)] text-[var(--text)] shadow-[0_1px_2px_var(--sh-edge),0_14px_32px_-24px_var(--shadow)] gap-0 py-0`,children:(0,X.jsxs)(H,{className:`p-3.5`,children:[(0,X.jsx)(V,{className:`workflow-section-title [.selection-list_&]:mb-[8px] [.node-library_&]:mb-[8px] text-[var(--text-soft)] text-[13px] font-[700] leading-[1.4]`,children:n(`workflows:workflowsPage.workflowSettings`)}),(0,X.jsxs)(G,{variant:`control`,children:[n(`workflows:workflowsPage.name`),(0,X.jsx)(A,{value:e.name,onChange:e=>r({name:e.target.value})})]}),(0,X.jsxs)(G,{variant:`control`,children:[n(`workflows:workflowsPage.description`),(0,X.jsx)(Q,{value:e.description,onChange:e=>r({description:e.target.value})})]}),(0,X.jsxs)(G,{variant:`control`,children:[n(`workflows:workflowsPage.workingDirectory`),(0,X.jsx)(A,{value:e.cwd,onChange:e=>r({cwd:e.target.value})})]}),(0,X.jsxs)(`div`,{className:`form-grid grid gap-[9px] three [.form-grid&]:grid-cols-[repeat(3,minmax(0,1fr))] max-[650px]:[.form-grid&]:grid-cols-[1fr]`,children:[(0,X.jsxs)(G,{variant:`control`,children:[n(`workflows:workflowsPage.visibility`),(0,X.jsxs)(u,{value:e.visibility,onChange:e=>r({visibility:e.target.value===`shared`?`shared`:`private`}),children:[(0,X.jsx)(`option`,{value:`private`,children:n(`workflows:workflowsPage.private`)}),(0,X.jsx)(`option`,{value:`shared`,children:n(`workflows:workflowsPage.shared`)})]})]}),(0,X.jsxs)(G,{variant:`control`,children:[n(`workflows:workflowsPage.tags`),(0,X.jsx)(A,{value:e.tags.join(`, `),onChange:e=>r({tags:e.target.value.split(`,`).map(e=>e.trim()).filter(Boolean)})})]}),(0,X.jsxs)(G,{variant:`control`,children:[n(`workflows:workflowsPage.revision`),(0,X.jsx)(A,{value:`v${e.revision}`,disabled:!0})]})]}),(0,X.jsxs)(G,{variant:`control`,children:[n(`workflows:workflowsPage.defaultModel`),(0,X.jsxs)(u,{value:e.model?`${e.model.provider}/${e.model.model}`:``,onChange:e=>{let n=t.models.find(t=>`${t.provider}/${t.model}`===e.target.value);r({model:n?{provider:n.provider,model:n.model}:null})},children:[(0,X.jsx)(`option`,{value:``,children:n(`workflows:workflowsPage.useSystemDefault`)}),t.models.map(e=>(0,X.jsx)(`option`,{value:`${e.provider}/${e.model}`,children:e.label},`${e.provider}/${e.model}`))]})]}),(0,X.jsxs)(`div`,{className:`workflow-inputs-editor`,children:[(0,X.jsxs)(ce,{children:[(0,X.jsx)(`strong`,{children:n(`workflows:workflowsPage.inputParameters`)}),(0,X.jsx)(s,{size:`icon-xs`,variant:`ghost`,title:n(`workflows:workflowsPage.addInput`),onClick:()=>r({inputs:[...e.inputs,{id:crypto.randomUUID(),name:`input_${e.inputs.length+1}`,label:n(`workflows:workflowsPage.newInput`),type:`string`,required:!1,defaultValue:``,description:``}]}),children:(0,X.jsx)(se,{})})]}),e.inputs.map(t=>(0,X.jsxs)(`div`,{className:`workflow-input-row`,children:[(0,X.jsx)(A,{value:t.name,"aria-label":n(`workflows:workflowsPage.parameterName`),onChange:n=>r({inputs:e.inputs.map(e=>e.id===t.id?{...e,name:n.target.value}:e)})}),(0,X.jsxs)(u,{value:t.type,"aria-label":n(`workflows:workflowsPage.parameterType`),onChange:n=>r({inputs:e.inputs.map(e=>e.id===t.id?{...e,type:n.target.value}:e)}),children:[(0,X.jsx)(`option`,{value:`string`,children:`String`}),(0,X.jsx)(`option`,{value:`text`,children:`Text`}),(0,X.jsx)(`option`,{value:`number`,children:`Number`}),(0,X.jsx)(`option`,{value:`boolean`,children:`Boolean`})]}),(0,X.jsxs)(`label`,{className:`workflow-required-input`,children:[(0,X.jsx)(`input`,{type:`checkbox`,checked:t.required,onChange:n=>r({inputs:e.inputs.map(e=>e.id===t.id?{...e,required:n.target.checked}:e)})}),n(`workflows:workflowsPage.required`)]}),(0,X.jsx)(s,{size:`icon-xs`,variant:`ghost`,title:n(`workflows:workflowsPage.delete`),onClick:()=>r({inputs:e.inputs.filter(e=>e.id!==t.id)}),children:(0,X.jsx)(O,{})})]},t.id))]})]})})}function ft({node:e,catalog:t,t:n,systemNotificationPermission:r,onUpdateNode:i,onToggleNotification:a,onOpenChannels:o,onOpenSystemNotificationSettings:c}){let l=[`feishu`,`weixin`].some(e=>t.notificationTargets[e]?.enabled),u=r==="default"||r===`granted`;return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(G,{variant:`control`,children:[n(`workflows:workflowsPage.notificationTitle`),(0,X.jsx)(A,{value:e.notification.title,onChange:t=>i({notification:{...e.notification,title:t.target.value}}),placeholder:`{{workflow.name}}`})]}),(0,X.jsxs)(G,{variant:`control`,children:[n(`workflows:workflowsPage.notificationContent`),(0,X.jsx)(Q,{value:e.notification.content,onChange:t=>i({notification:{...e.notification,content:t.target.value}}),placeholder:`{{inputs.name}} · {{previous.summary}}`})]}),(0,X.jsx)(`strong`,{className:`block [margin-top:12px] text-[var(--text-secondary)] text-[12px]`,children:n(`workflows:workflowsPage.notificationChannels`)}),!l&&(0,X.jsxs)(me,{className:`workflow-notification-alert [&_[data-slot='alert-description']]:flex [&_[data-slot='alert-description']]:items-center [&_[data-slot='alert-description']]:gap-[4px] [&_[data-slot='alert-description']]:text-[11px] [&_[data-slot='alert-description']]:leading-[1.4] [margin:10px_0_6px] [border-color:color-mix(in_srgb,var(--warning)_35%,var(--border))] bg-[color-mix(in_srgb,var(--warning)_7%,var(--card))] text-[var(--text-secondary)]`,children:[(0,X.jsx)(L,{}),(0,X.jsxs)(K,{children:[n(`workflows:workflowsPage.noExternalNotificationChannelsEnabled`),(0,X.jsx)(s,{type:`button`,variant:`link`,size:`sm`,onClick:o,children:n(`workflows:workflowsPage.openChannelSettings`)})]})]}),(r===`denied`||r===`unsupported`)&&(0,X.jsxs)(me,{className:`workflow-notification-alert [&_[data-slot='alert-description']]:flex [&_[data-slot='alert-description']]:items-center [&_[data-slot='alert-description']]:gap-[4px] [&_[data-slot='alert-description']]:text-[11px] [&_[data-slot='alert-description']]:leading-[1.4] [margin:10px_0_6px] [border-color:color-mix(in_srgb,var(--warning)_35%,var(--border))] bg-[color-mix(in_srgb,var(--warning)_7%,var(--card))] text-[var(--text-secondary)]`,children:[(0,X.jsx)(L,{}),(0,X.jsxs)(K,{children:[n(r===`unsupported`?`workflows:workflowsPage.systemNotificationsUnsupported`:`workflows:workflowsPage.systemNotificationPermissionRequired`),(0,X.jsx)(s,{type:`button`,variant:`link`,size:`sm`,onClick:c,children:n(`workflows:workflowsPage.openSystemNotificationSettings`)})]})]}),Object.entries(ot).map(([i,o])=>{let s=o.Icon,c=i===`browser`?u:!!t.notificationTargets[i]?.enabled;return(0,X.jsxs)(`div`,{className:`toggle-line [&_>_span]:flex [&_>_span]:items-center [&_>_span]:gap-[7px] [&_>_span]:text-[12px] flex min-h-[34px] items-center justify-between [border-top:1px_solid_var(--stroke-soft)]`,children:[(0,X.jsxs)(`span`,{children:[(0,X.jsx)(s,{size:15}),ut(i,n)]}),(0,X.jsx)(le,{checked:c&&(i!==`browser`||r===`granted`&&t.notificationTargets.browser.enabled)&&e.notificationTargets.includes(i),disabled:!c,"aria-label":ut(i,n),title:i===`browser`?c?t.notificationTargets.browser.enabled?n(`workflows:workflowsPage.systemNotificationsEnabled`):n(`workflows:workflowsPage.systemNotificationReady`):n(`workflows:workflowsPage.systemNotificationPermissionRequired`):n(c?`workflows:workflowsPage.notificationChannelEnabled`:`workflows:workflowsPage.notificationChannelNotEnabled`),onCheckedChange:()=>void a(i)})]},i)})]})}function pt({edge:e,nodes:t,t:n,onDelete:r}){let i=new Map(t.map(e=>[e.id,e]));return(0,X.jsx)(U,{size:`sm`,className:`workflow-card [&_h2]:text-[16px] [&_h2]:tracking-[-.02em] [.detail-stack_>_&]:[flex:0_0_auto] [border:1px_solid_var(--stroke)] rounded-[var(--r-xs)] bg-[var(--panel)] text-[var(--text)] shadow-[0_1px_2px_var(--sh-edge),0_14px_32px_-24px_var(--shadow)] gap-0 py-0`,children:(0,X.jsxs)(H,{className:`p-3.5`,children:[(0,X.jsx)(V,{className:`workflow-section-title [.selection-list_&]:mb-[8px] [.node-library_&]:mb-[8px] text-[var(--text-soft)] text-[13px] font-[700] leading-[1.4]`,children:n(`workflows:workflowsPage.selectedConnection`)}),(0,X.jsxs)(`div`,{className:`workflow-edge-summary [&_strong]:overflow-hidden [&_strong]:text-ellipsis [&_strong]:whitespace-nowrap [&_span]:text-[var(--text-muted)] grid grid-cols-[minmax(0,1fr)_auto_minmax(0,1fr)] items-center gap-[8px] [margin:10px_0]`,children:[(0,X.jsx)(`strong`,{children:i.get(e.source)?.label||n(`workflows:workflowsPage.unknownNode`)}),(0,X.jsx)(`span`,{children:`→`}),(0,X.jsx)(`strong`,{children:i.get(e.target)?.label||n(`workflows:workflowsPage.unknownNode`)})]}),(0,X.jsx)(`p`,{className:`muted-copy m-[8px_0_14px] text-[var(--text-muted)] text-[12px] leading-[1.55]`,children:n(`workflows:workflowsPage.pressDeleteOrBackspaceToRemoveThisConnection`)}),(0,X.jsxs)(s,{size:`sm`,variant:`destructive`,onClick:r,children:[(0,X.jsx)(O,{"data-icon":`inline-start`}),n(`workflows:workflowsPage.deleteConnection`)]})]})})}function mt({node:e,selectedEdge:t,catalog:n,t:r,onUpdateNode:i,systemNotificationPermission:a,onToggleNotification:o,onCopy:c,onDelete:l,onOpenChannels:d,onOpenSystemNotificationSettings:f}){return(0,X.jsx)(U,{size:`sm`,className:`workflow-card [&_h2]:text-[16px] [&_h2]:tracking-[-.02em] [.detail-stack_>_&]:[flex:0_0_auto] [border:1px_solid_var(--stroke)] rounded-[var(--r-xs)] bg-[var(--panel)] text-[var(--text)] shadow-[0_1px_2px_var(--sh-edge),0_14px_32px_-24px_var(--shadow)] gap-0 py-0`,children:(0,X.jsxs)(H,{className:`p-3.5`,children:[(0,X.jsx)(V,{className:`workflow-section-title [.selection-list_&]:mb-[8px] [.node-library_&]:mb-[8px] text-[var(--text-soft)] text-[13px] font-[700] leading-[1.4]`,children:r(`workflows:workflowsPage.selectedNode`)}),e?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(G,{variant:`control`,children:[r(`workflows:workflowsPage.nodeName`),(0,X.jsx)(A,{value:e.label,onChange:e=>i({label:e.target.value})})]}),(0,X.jsxs)(G,{variant:`control`,children:[r(`workflows:workflowsPage.nodeModel`),(0,X.jsxs)(u,{value:e.model?`${e.model.provider}/${e.model.model}`:``,onChange:e=>{let t=n.models.find(t=>`${t.provider}/${t.model}`===e.target.value);i({model:t?{provider:t.provider,model:t.model}:null})},children:[(0,X.jsx)(`option`,{value:``,children:r(`workflows:workflowsPage.inheritWorkflowDefaultModel`)}),n.models.map(e=>(0,X.jsx)(`option`,{value:`${e.provider}/${e.model}`,children:e.label},`${e.provider}/${e.model}`))]})]}),(0,X.jsxs)(`div`,{className:`form-grid grid gap-[9px] three [.form-grid&]:grid-cols-[repeat(3,minmax(0,1fr))] max-[650px]:[.form-grid&]:grid-cols-[1fr]`,children:[(0,X.jsxs)(G,{variant:`control`,children:[r(`workflows:workflowsPage.retryCount`),(0,X.jsx)(A,{type:`number`,min:`0`,max:`3`,value:e.retries,onChange:e=>i({retries:Number(e.target.value)})})]}),(0,X.jsxs)(G,{variant:`control`,children:[r(`workflows:workflowsPage.timeoutMinutes`),(0,X.jsx)(A,{type:`number`,min:`1`,max:`240`,value:e.timeoutMinutes,onChange:e=>i({timeoutMinutes:Number(e.target.value)})})]}),(0,X.jsxs)(G,{variant:`control`,children:[r(`workflows:workflowsPage.failureHandling`),(0,X.jsxs)(u,{value:e.failurePolicy,onChange:e=>i({failurePolicy:e.target.value===`skip`?`skip`:`stop`}),children:[(0,X.jsx)(`option`,{value:`stop`,children:r(`workflows:workflowsPage.stopImmediately`)}),(0,X.jsx)(`option`,{value:`skip`,children:r(`workflows:workflowsPage.skipThisNode`)})]})]})]}),[`prompt`,`skill`,`file`,`mcp`].includes(e.kind)&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(G,{variant:`control`,children:[r(`workflows:workflowsPage.executionMode`),(0,X.jsx)(u,{value:e.executionMode,onChange:e=>i({executionMode:e.target.value}),children:st.map(e=>(0,X.jsx)(`option`,{value:e,children:ct(e,r)},e))}),(0,X.jsx)(`small`,{children:lt(e.executionMode,r)})]}),e.kind===`skill`&&(0,X.jsxs)(G,{variant:`control`,children:[`Skill`,(0,X.jsxs)(u,{value:e.skillName,onChange:e=>i({skillName:e.target.value}),children:[(0,X.jsx)(`option`,{value:``,children:r(`workflows:workflowsPage.chooseSkill`)}),n.skills.map(e=>(0,X.jsx)(`option`,{value:e.name,children:e.name},e.id))]})]}),e.kind===`mcp`&&(0,X.jsxs)(G,{variant:`control`,children:[r(`workflows:workflowsPage.mcpToolNames`),(0,X.jsx)(A,{value:e.requestedToolNames.join(`, `),onChange:e=>i({requestedToolNames:e.target.value.split(`,`).map(e=>e.trim()).filter(Boolean)}),placeholder:`server.tool_name`})]}),(0,X.jsxs)(G,{variant:`control`,children:[`Prompt`,(0,X.jsx)(Q,{value:e.prompt,onChange:e=>i({prompt:e.target.value}),placeholder:r(`workflows:workflowsPage.describeTheWorkTheAgentShouldCompleteInThisNode`)})]}),(0,X.jsxs)(G,{variant:`control`,children:[r(`workflows:workflowsPage.outputFormat`),(0,X.jsxs)(u,{value:e.outputFormat,onChange:e=>i({outputFormat:e.target.value===`json`?`json`:`text`}),children:[(0,X.jsx)(`option`,{value:`text`,children:`Text`}),(0,X.jsx)(`option`,{value:`json`,children:`JSON`})]})]})]}),e.kind===`condition`&&(0,X.jsxs)(`div`,{className:`form-grid grid gap-[9px] three [.form-grid&]:grid-cols-[repeat(3,minmax(0,1fr))] max-[650px]:[.form-grid&]:grid-cols-[1fr]`,children:[(0,X.jsxs)(G,{variant:`control`,children:[r(`workflows:workflowsPage.dataPath`),(0,X.jsx)(A,{value:e.condition.source,onChange:t=>i({condition:{...e.condition,source:t.target.value}}),placeholder:`inputs.approved`})]}),(0,X.jsxs)(G,{variant:`control`,children:[r(`workflows:workflowsPage.operator`),(0,X.jsx)(u,{value:e.condition.operator,onChange:t=>i({condition:{...e.condition,operator:t.target.value}}),children:[`exists`,`not_exists`,`equals`,`not_equals`,`contains`,`greater_than`,`less_than`].map(e=>(0,X.jsx)(`option`,{value:e,children:e},e))})]}),(0,X.jsxs)(G,{variant:`control`,children:[r(`workflows:workflowsPage.comparisonValue`),(0,X.jsx)(A,{value:String(e.condition.value??``),onChange:t=>i({condition:{...e.condition,value:t.target.value}})})]})]}),e.kind===`notification`&&(0,X.jsx)(ft,{node:e,catalog:n,t:r,systemNotificationPermission:a,onUpdateNode:i,onToggleNotification:o,onOpenChannels:d,onOpenSystemNotificationSettings:f}),e.kind===`approval`&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(G,{variant:`control`,children:[r(`workflows:workflowsPage.approvalMessage`),(0,X.jsx)(Q,{value:e.approval.message,onChange:t=>i({approval:{...e.approval,message:t.target.value}})})]}),(0,X.jsxs)(G,{variant:`control`,children:[r(`workflows:workflowsPage.approvalTimeout`),(0,X.jsx)(A,{type:`number`,min:`1`,max:`10080`,value:e.approval.timeoutMinutes,onChange:t=>i({approval:{...e.approval,timeoutMinutes:Number(t.target.value)}})})]})]}),(0,X.jsxs)(`div`,{className:`mt-[15px] flex gap-2 max-[650px]:flex-wrap`,children:[(0,X.jsxs)(s,{size:`sm`,variant:`secondary`,onClick:c,children:[(0,X.jsx)(v,{"data-icon":`inline-start`}),r(`workflows:workflowsPage.duplicateNode`)]}),(0,X.jsxs)(s,{size:`sm`,variant:`destructive`,onClick:l,children:[(0,X.jsx)(O,{"data-icon":`inline-start`}),r(`workflows:workflowsPage.deleteNode`)]})]})]}):(0,X.jsx)(`p`,{className:`muted-copy m-[8px_0_14px] text-[var(--text-muted)] text-[12px] leading-[1.55]`,children:r(t?`workflows:workflowsPage.aConnectionIsCurrentlySelected`:`workflows:workflowsPage.dragNodesFromTheLeftToStartBuildingTheWorkflow`)})]})})}function ht({draft:e,catalog:t,selectedNode:n,selectedEdge:r,currentRun:i,language:a,t:o,onUpdateDraft:s,onUpdateNode:c,systemNotificationPermission:l,onToggleNotification:u,onDeleteEdge:d,onCopyNode:f,onDeleteNode:p,onOpenChannels:m,onOpenSystemNotificationSettings:h}){return(0,X.jsxs)(`div`,{className:`detail-stack flex min-w-0 flex-col gap-[12px] [.mcp-layout_>_&]:min-h-0 max-[1150px]:[.memory-layout_>_&]:[grid-column:1/-1] max-[1150px]:[.memory-layout_>_&]:grid max-[1150px]:[.memory-layout_>_&]:grid-cols-[repeat(2,minmax(0,1fr))] max-[1150px]:[.mcp-layout_>_&]:[grid-column:1/-1] max-[1150px]:[.mcp-layout_>_&]:grid max-[1150px]:[.mcp-layout_>_&]:grid-cols-[repeat(2,minmax(0,1fr))] max-[1150px]:[.skills-layout_>_&]:[grid-column:1/-1] max-[1150px]:[.skills-layout_>_&]:grid max-[1150px]:[.skills-layout_>_&]:grid-cols-[repeat(2,minmax(0,1fr))] max-[650px]:[.memory-layout_>_&]:[grid-column:auto] max-[650px]:[.memory-layout_>_&]:grid-cols-[1fr] max-[650px]:[.mcp-layout_>_&]:[grid-column:auto] max-[650px]:[.mcp-layout_>_&]:grid-cols-[1fr] max-[650px]:[.skills-layout_>_&]:[grid-column:auto] max-[650px]:[.skills-layout_>_&]:grid-cols-[1fr] inspector !min-w-0 max-[1150px]:[.builder-layout_>_&]:[grid-column:1/-1] max-[1150px]:[.builder-layout_>_&]:grid max-[1150px]:[.builder-layout_>_&]:grid-cols-[repeat(2,minmax(0,1fr))] max-[900px]:[.builder-layout_>_&]:[grid-column:1/-1]`,children:[(0,X.jsx)(dt,{draft:e,catalog:t,t:o,onUpdateDraft:s}),r&&(0,X.jsx)(pt,{edge:r,nodes:e.nodes,t:o,onDelete:d}),(0,X.jsx)(mt,{node:n,selectedEdge:r,catalog:t,t:o,onUpdateNode:c,systemNotificationPermission:l,onToggleNotification:u,onCopy:f,onDelete:p,onOpenChannels:m,onOpenSystemNotificationSettings:h}),e.id&&(0,X.jsx)(at,{run:i,language:a,t:o})]})}var gt={workflows:[],runs:[],limits:{maxConcurrent:4,running:0},notificationTargets:{browser:{enabled:!1},feishu:{enabled:!1},weixin:{enabled:!1}},models:[],skills:[],cwd:``};function $(e){return e instanceof Error?e.message:String(e)}function _t({notify:e,requestConfirm:t,query:n}){let{t:r}=c(),[i,a]=(0,Y.useState)(gt),[o,s]=(0,Y.useState)(`all`),[l,u]=(0,Y.useState)(!0),[d,f]=(0,Y.useState)(``),[p,m]=(0,Y.useState)(``),h=(0,Y.useCallback)(async()=>{try{a(await P(`/api/workflows`)),m(``)}catch(e){m($(e))}finally{u(!1)}},[]);(0,Y.useEffect)(()=>{h()},[h]),(0,Y.useEffect)(()=>{let e=window.setInterval(()=>{h()},i.limits.running?1500:8e3);return()=>window.clearInterval(e)},[i.limits.running,h]);let g=(0,Y.useCallback)(e=>i.runs.filter(t=>t.workflowId===e).sort((e,t)=>Date.parse(t.startedAt)-Date.parse(e.startedAt))[0],[i.runs]);return{data:i,filter:o,setFilter:s,loading:l,busyId:d,error:p,visibleWorkflows:(0,Y.useMemo)(()=>i.workflows.filter(e=>{let t=g(e.id);return`${e.name} ${e.description}`.toLowerCase().includes(n.toLowerCase())?o===`running`?t?.status===`running`:o===`failed`?t?.status===`failed`:o===`draft`?e.status===`draft`:o!==`presets`:!1}),[i.workflows,o,g,n]),latestRun:g,runWorkflow:(0,Y.useCallback)(async(t,n={})=>{f(t.id),m(``);try{await P(`/api/workflows/${encodeURIComponent(t.id)}/run`,{method:`POST`,body:JSON.stringify({inputs:n})}),await h(),e(r(`workflows:workflowsPage.workflowStarted`))}catch(t){let n=$(t);m(n),e(n,`error`)}finally{f(``)}},[h,e,r]),stopRun:(0,Y.useCallback)(async t=>{f(t.id),m(``);try{await P(`/api/workflow-runs/${encodeURIComponent(t.id)}/stop`,{method:`POST`,body:`{}`}),await h(),e(r(`workflows:workflowsPage.stoppingWorkflow`),`info`)}catch(t){let n=$(t);m(n),e(n,`error`)}finally{f(``)}},[h,e,r]),retryRun:(0,Y.useCallback)(async t=>{f(t.id);try{await P(`/api/workflow-runs/${encodeURIComponent(t.id)}/retry`,{method:`POST`,body:`{}`}),await h(),e(r(`workflows:workflowsPage.workflowStarted`))}catch(t){let n=$(t);m(n),e(n,`error`)}finally{f(``)}},[h,e,r]),resolveApproval:(0,Y.useCallback)(async(t,n,r)=>{f(n);try{await P(`/api/workflow-runs/${encodeURIComponent(t.id)}/approvals/${encodeURIComponent(n)}`,{method:`POST`,body:JSON.stringify({approved:r})}),await h()}catch(t){let n=$(t);m(n),e(n,`error`)}finally{f(``)}},[h,e]),duplicateWorkflow:(0,Y.useCallback)(async t=>{f(t.id);try{await P(`/api/workflows/${encodeURIComponent(t.id)}/duplicate`,{method:`POST`,body:`{}`}),await h(),e(r(`workflows:workflowsPage.workflowDuplicated`))}catch(t){let n=$(t);m(n),e(n,`error`)}finally{f(``)}},[h,e,r]),exportWorkflow:(0,Y.useCallback)(async t=>{try{let e=await P(`/api/workflows/${encodeURIComponent(t.id)}/export`),n=new Blob([JSON.stringify(e,null,2)],{type:`application/json`}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=`${t.name.replace(/[\\/:*?"<>|]/g,`-`)}.pisper-workflow.json`,i.click(),URL.revokeObjectURL(r)}catch(t){e($(t),`error`)}},[e]),importWorkflow:(0,Y.useCallback)(async t=>{f(`import`);try{await P(`/api/workflows/import`,{method:`POST`,body:JSON.stringify(t)}),await h(),e(r(`workflows:workflowsPage.workflowImported`))}catch(t){let n=$(t);m(n),e(n,`error`)}finally{f(``)}},[h,e,r]),removeWorkflow:(0,Y.useCallback)(async n=>{if(await t?.({title:r(`workflows:workflowsPage.deleteWorkflow`),message:r(`workflows:workflowsPage.deleteWorkflowNameAndItsRunHistory`,{name:n.name}),confirmLabel:r(`workflows:workflowsPage.delete`),tone:`danger`})){f(n.id);try{await P(`/api/workflows/${encodeURIComponent(n.id)}`,{method:`DELETE`}),await h(),e(r(`workflows:workflowsPage.workflowDeleted`))}catch(t){let n=$(t);m(n),e(n,`error`)}finally{f(``)}}},[h,e,t,r])}}function vt({workflowId:e,templateId:t,notify:n,onCreated:r}){let{t:i}=c(),[a,o]=(0,Y.useState)(gt),[s,l]=(0,Y.useState)(null),[u,d]=(0,Y.useState)(``),[f,p]=(0,Y.useState)(``),[m,h]=(0,Y.useState)(!0),[g,_]=(0,Y.useState)(!1),[v,y]=(0,Y.useState)(``),b=!!window.pisperDesktop?.showNotification,[x,S]=(0,Y.useState)(()=>b?`checking`:fe()),C=(0,Y.useCallback)(async()=>{if(!b){S(fe());return}let e=window.pisperDesktop?.getNotificationStatus;if(!e){S(`granted`);return}try{let t=await e(),n=t?.permission;S(n==="default"||n===`denied`||n===`granted`||n===`checking`||n===`unsupported`?n:t?.supported===!1?`unsupported`:`granted`)}catch{S(`unsupported`)}},[b]),w=(0,Y.useCallback)(async()=>{try{let n=await P(`/api/workflows`);o(n);let r=e===`new`?null:n.workflows.find(t=>t.id===e),a=Ke.find(e=>e.id===t),s=r?structuredClone(r):a?Je(a,n.cwd):qe(n.cwd);l(s),d(e=>s.nodes.some(t=>t.id===e)?e:s.nodes[0]?.id||``),p(``),y(r||e===`new`?``:i(`workflows:workflowsPage.workflowNotFoundABlankEditorWasOpened`))}catch(e){y($(e))}finally{h(!1)}},[i,t,e]);(0,Y.useEffect)(()=>{w()},[w]),(0,Y.useEffect)(()=>{C();let e=()=>void C();return window.addEventListener(`focus`,e),()=>window.removeEventListener(`focus`,e)},[C]);let T=(0,Y.useMemo)(()=>a.runs.filter(e=>e.workflowId===s?.id).sort((e,t)=>Date.parse(t.startedAt)-Date.parse(e.startedAt))[0],[a.runs,s?.id]),E=T?.status===`running`;(0,Y.useEffect)(()=>{if(!E)return;let e=window.setInterval(async()=>{try{o(await P(`/api/workflows`))}catch{}},1500);return()=>window.clearInterval(e)},[E]);let D=(0,Y.useMemo)(()=>s?.nodes.find(e=>e.id===u)||null,[s?.nodes,u]),O=(0,Y.useMemo)(()=>s?.edges.find(e=>e.id===f)||null,[s?.edges,f]),k=(0,Y.useCallback)(e=>{l(t=>t&&{...t,...e})},[]),A=(0,Y.useCallback)(e=>{l(t=>t&&{...t,nodes:t.nodes.map(t=>t.id===u?{...t,...e}:t)})},[u]),j=(0,Y.useCallback)(e=>{d(e),p(``)},[]),M=(0,Y.useCallback)(e=>{p(e),d(``)},[]),N=(0,Y.useCallback)(()=>{d(``),p(``)},[]),te=(0,Y.useCallback)((e,t,r=`output`)=>{if(!s||e===t)return;let a=s.nodes.find(e=>e.id===t);if(!a||a.kind===`trigger`){n(i(`workflows:workflowsPage.aTriggerCannotHaveAnUpstreamConnection`),`error`);return}if(s.edges.some(n=>n.source===e&&n.target===t&&n.sourcePort===r)){n(i(`workflows:workflowsPage.thisConnectionAlreadyExists`),`info`);return}if(Re(s.nodes,s.edges,e,t,r)){n(i(`workflows:workflowsPage.aWorkflowCannotContainCyclicConnections`),`error`);return}let o={id:crypto.randomUUID(),source:e,sourcePort:r,target:t,targetPort:`input`};l(e=>e&&{...e,edges:[...e.edges,o]}),p(o.id),d(``),n(i(`workflows:workflowsPage.connectionCreated`),`info`)},[s,n,i]),F=(0,Y.useCallback)(e=>{if(!e.length)return;let t=new Set(e);l(e=>e&&{...e,edges:e.edges.filter(e=>!t.has(e.id))}),p(``),n(i(`workflows:workflowsPage.connectionDeleted`),`info`)},[n,i]),I=(0,Y.useCallback)(()=>{f&&F([f])},[F,f]),L=(0,Y.useCallback)(e=>{if(!e.length)return;let t=new Set(e);l(e=>e&&{...e,nodes:e.nodes.filter(e=>!t.has(e.id)),edges:e.edges.filter(e=>!t.has(e.source)&&!t.has(e.target))}),N(),n(i(`workflows:workflowsPage.nodeDeleted`),`info`)},[N,n,i]),re=(0,Y.useCallback)((e,t,n)=>{let r=crypto.randomUUID();l(i=>i&&{...i,nodes:[...i.nodes,Z(r,e,t||ze[e],``,n.x,n.y)]}),d(r),p(``)},[]),R=(0,Y.useCallback)((e,t)=>{l(n=>n&&{...n,nodes:n.nodes.map(n=>n.id===e&&(n.x!==t.x||n.y!==t.y)?{...n,x:t.x,y:t.y}:n)})},[]),ie=(0,Y.useCallback)(()=>{if(!D)return;let e=crypto.randomUUID();l(t=>t&&{...t,nodes:[...t.nodes,{...D,id:e,label:`${D.label} 副本`,x:D.x+25,y:D.y+25}]}),d(e),p(``),n(i(`workflows:workflowsPage.nodeDuplicated`),`info`)},[n,D,i]),ae=(0,Y.useCallback)(()=>{D&&L([D.id])},[L,D]),oe=(0,Y.useCallback)(async e=>{if(!D||D.kind!==`notification`)return;let t=D.notificationTargets;if(e!==`browser`){if(t.includes(e)){A({notificationTargets:t.filter(t=>t!==e)});return}if(!a.notificationTargets[e]?.enabled)return;A({notificationTargets:[...t,e]});return}if(t.includes(e)&&a.notificationTargets.browser.enabled&&x===`granted`){A({notificationTargets:t.filter(t=>t!==e)});return}let r=x;if(b){await C();let e=await window.pisperDesktop?.getNotificationStatus?.();r=e?.permission||(e?.supported===!1?`unsupported`:`granted`)}else if(r=await ee(),S(r),r===`granted`)try{await ne()}catch(e){n($(e),`error`);return}if(r!==`granted`){n(i(r===`unsupported`?`workflows:workflowsPage.systemNotificationsUnsupported`:`workflows:workflowsPage.systemNotificationPermissionRequired`),`error`);return}try{let r=await P(`/api/settings/notifications/browser`,{method:`PATCH`,body:JSON.stringify({enabled:!0})});o(e=>({...e,notificationTargets:{...e.notificationTargets,browser:{enabled:r.browser.enabled}}})),A({notificationTargets:t.includes(e)?t:[...t,e]}),n(i(`workflows:workflowsPage.systemNotificationsEnabled`))}catch(e){n($(e),`error`)}},[a.notificationTargets,b,n,C,D,x,i,A]),z=(0,Y.useCallback)(async(e=`draft`,t=!1)=>{if(!s)return null;_(!0),y(``);try{let c=new Set(Object.entries(a.notificationTargets).filter(([e,t])=>t.enabled&&(e!==`browser`||x===`granted`||x===`checking`)).map(([e])=>e)),u={...s,status:e,notifications:s.notifications.filter(e=>c.has(e)),nodes:s.nodes.map(e=>({...e,notificationTargets:e.notificationTargets.filter(e=>c.has(e))}))},d=s.id?await P(`/api/workflows/${encodeURIComponent(s.id)}`,{method:`PATCH`,body:JSON.stringify(u)}):await P(`/api/workflows`,{method:`POST`,body:JSON.stringify(u)});return o(d.state),l(structuredClone(d.workflow)),s.id||r(d.workflow.id),t||n(i(e===`published`?`workflows:workflowsPage.workflowPublished`:`workflows:workflowsPage.workflowDraftSaved`)),d.workflow}catch(e){let t=$(e);return y(t),n(t,`error`),null}finally{_(!1)}},[a.notificationTargets,s,n,r,x,i]);return{catalog:a,draft:s,selectedNode:D,selectedEdge:O,selectedNodeId:u,selectedEdgeId:f,currentRun:T,loading:m,busy:g,running:E,error:v,systemNotificationPermission:x,updateDraft:k,updateNode:A,addEdge:te,removeEdges:F,removeSelectedEdge:I,removeNodes:L,addNode:re,moveNode:R,copyNode:ie,deleteNode:ae,toggleNotification:oe,selectNode:j,selectEdge:M,clearSelection:N,saveWorkflow:z,runWorkflow:(0,Y.useCallback)(async()=>{let e=await z(s?.status||`draft`,!0);if(e){_(!0);try{await P(`/api/workflows/${encodeURIComponent(e.id)}/run`,{method:`POST`,body:`{}`}),o(await P(`/api/workflows`)),n(i(`workflows:workflowsPage.workflowStarted`))}catch(e){let t=$(e);y(t),n(t,`error`)}finally{_(!1)}}},[s?.status,n,z,i]),stopWorkflow:(0,Y.useCallback)(async()=>{if(!(!T||T.status!==`running`)){_(!0);try{await P(`/api/workflow-runs/${encodeURIComponent(T.id)}/stop`,{method:`POST`,body:`{}`}),o(await P(`/api/workflows`)),n(i(`workflows:workflowsPage.stoppingWorkflow`),`info`)}catch(e){let t=$(e);y(t),n(t,`error`)}finally{_(!1)}}},[T,n,i]),publishWorkflow:(0,Y.useCallback)(()=>z(`published`),[z])}}function yt({message:e}){return e?(0,X.jsxs)(me,{variant:`destructive`,children:[(0,X.jsx)(L,{}),(0,X.jsx)(K,{children:e})]}):null}function bt({label:e}){return(0,X.jsxs)(ue,{size:`sm`,className:`workflow-card [&_h2]:text-[16px] [&_h2]:tracking-[-.02em] [.detail-stack_>_&]:[flex:0_0_auto] [border:1px_solid_var(--stroke)] rounded-[var(--r-xs)] bg-[var(--panel)] text-[var(--text)] shadow-[0_1px_2px_var(--sh-edge),0_14px_32px_-24px_var(--shadow)] gap-2 py-4`,children:[(0,X.jsx)(M,{className:`animate-spin`,size:23}),(0,X.jsx)(`h2`,{children:e})]})}function xt({notify:e,requestConfirm:t,query:n=``}){let{t:r,language:i}=c(),o=a(),[s,l]=(0,Y.useState)(`workflows`),u=_t({notify:e,requestConfirm:t,query:n});return u.loading?(0,X.jsx)(bt,{label:r(`workflows:workflowsPage.loadingWorkflows`)}):(0,X.jsxs)(`div`,{className:`workflows-page flex min-h-[100%] flex-col gap-[12px]`,children:[(0,X.jsx)(yt,{message:u.error}),(0,X.jsxs)(`div`,{className:`workflow-page-toolbar max-[650px]:items-stretch max-[650px]:flex-col max-[650px]:gap-[8px] flex min-w-0 items-center justify-between gap-[16px]`,children:[(0,X.jsx)(Qe,{value:s,t:r,onChange:l}),(0,X.jsx)(nt,{data:u.data,t:r})]}),s===`workflows`?(0,X.jsx)($e,{workflows:u.visibleWorkflows,runs:u.data.runs,busyId:u.busyId,language:i,t:r,onRun:e=>void u.runWorkflow(e),onEdit:e=>o(W(e)),onDuplicate:e=>void u.duplicateWorkflow(e),onExport:e=>void u.exportWorkflow(e),onImport:e=>void u.importWorkflow(e),onDelete:e=>void u.removeWorkflow(e)}):s===`runs`?(0,X.jsx)(et,{runs:u.data.runs,busyId:u.busyId,language:i,t:r,onStop:e=>void u.stopRun(e),onRetry:e=>void u.retryRun(e),onApproval:(e,t,n)=>void u.resolveApproval(e,t,n)}):(0,X.jsx)(tt,{t:r,onOpenTemplate:e=>o(`${W(`new`)}?template=${encodeURIComponent(e)}`)})]})}function St({notify:e,registerPrimaryAction:t,registerWorkflowActions:n}){let{t:o,language:s}=c(),l=a(),{workflowId:u=`new`}=i(),[d]=r(),f=(0,Y.useCallback)(e=>{l(W(e),{replace:!0})},[l]),p=vt({workflowId:u,templateId:d.get(`template`),notify:e,onCreated:f}),{busy:m,publishWorkflow:h,runWorkflow:g,running:_,saveWorkflow:v,stopWorkflow:y}=p;return pe(t,h),(0,Y.useEffect)(()=>n?.({save:()=>v(`draft`),run:_?y:g,busy:m,running:_}),[m,n,g,_,v,y]),p.loading||!p.draft?(0,X.jsx)(bt,{label:o(`workflows:workflowsPage.loadingWorkflowEditor`)}):(0,X.jsxs)(`div`,{className:`preview-page flex min-h-[100%] flex-col workflow-editor-page`,children:[(0,X.jsx)(yt,{message:p.error}),p.running&&p.currentRun&&(0,X.jsx)(it,{run:p.currentRun,t:o}),(0,X.jsxs)(`div`,{className:`builder-layout [.preview-page_>_&]:min-h-0 [.preview-page_>_&]:flex-1 max-[1150px]:grid-cols-[180px_minmax(460px,1fr)] max-[900px]:grid-cols-[180px_minmax(520px,1fr)] max-[900px]:overflow-auto max-[650px]:flex max-[650px]:min-w-0 max-[650px]:flex-col max-[650px]:overflow-visible max-[650px]:[.page-workflowCreate_&]:w-[900px] grid min-h-[100%] grid-cols-[205px_minmax(480px,1fr)_300px] gap-[12px]`,children:[(0,X.jsx)(Ye,{draft:p.draft,selectedNodeId:p.selectedNodeId,selectedEdgeId:p.selectedEdgeId,t:o,onAddNode:p.addNode,onConnect:p.addEdge,onMoveNode:p.moveNode,onSelectNode:p.selectNode,onSelectEdge:p.selectEdge,onClearSelection:p.clearSelection,onDeleteNodes:p.removeNodes,onDeleteEdges:p.removeEdges}),(0,X.jsx)(ht,{draft:p.draft,catalog:p.catalog,selectedNode:p.selectedNode,selectedEdge:p.selectedEdge,currentRun:p.currentRun,language:s,t:o,systemNotificationPermission:p.systemNotificationPermission,onUpdateDraft:p.updateDraft,onUpdateNode:p.updateNode,onToggleNotification:p.toggleNotification,onDeleteEdge:p.removeSelectedEdge,onCopyNode:p.copyNode,onDeleteNode:p.deleteNode,onOpenChannels:()=>l(ae.channels),onOpenSystemNotificationSettings:()=>{if(window.pisperDesktop?.openNotificationSettings){window.pisperDesktop.openNotificationSettings();return}l(`/config/notifications`)}})]})]})}export{St as WorkflowBuilder,xt as WorkflowsPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{i as t,t as n}from"./vendor-react-CHuvPdJE.js";import{n as r,s as i,t as a}from"./button-DzlQCSNK.js";import{f as o,h as s,m as c,p as l,t as u}from"./use-i18n-DmLwOjO5.js";import{u as d}from"./es2015-CfKlxLgF.js";import{t as f}from"./dist-Bv5OI2pf.js";import{n as p,r as m}from"./AppSelect-g6etLk2g.js";import{t as h}from"./utils-C8uzG5AZ.js";import{t as g}from"./loader-circle-i0WYlBWu.js";import{A as _,B as v,F as y,G as b,M as x,N as S,P as C,Rt as w,St as T,j as E,nn as D}from"./index-BIQcwjFR.js";import{n as O,t as k}from"./alert-B7D8joCd.js";var A=e(t(),1),j=n(),M=Object.defineProperty,N=(e,t)=>M(e,`name`,{value:t,configurable:!0});function P(e,t){return A.useReducer((e,n)=>t[e][n]??e,e)}N(P,`useStateMachine`);var F=`ScrollArea`,[I,ee]=c(F),[te,L]=I(F),ne=A.forwardRef(N(function(e,t){let{__scopeScrollArea:n,type:r=`hover`,dir:a,scrollHideDelay:o=600,...c}=e,[l,u]=A.useState(null),[d,f]=A.useState(null),[p,m]=A.useState(null),[h,g]=A.useState(null),[_,v]=A.useState(null),[y,b]=A.useState(0),[x,S]=A.useState(0),[C,w]=A.useState(!1),[T,E]=A.useState(!1),O=i(t,u),k=D(a);return(0,j.jsx)(te,{scope:n,type:r,dir:k,scrollHideDelay:o,scrollArea:l,viewport:d,onViewportChange:f,content:p,onContentChange:m,scrollbarX:h,onScrollbarXChange:g,scrollbarXEnabled:C,onScrollbarXEnabledChange:w,scrollbarY:_,onScrollbarYChange:v,scrollbarYEnabled:T,onScrollbarYEnabledChange:E,onCornerWidthChange:b,onCornerHeightChange:S,children:(0,j.jsx)(s.div,{dir:k,...c,ref:O,style:{position:`relative`,"--radix-scroll-area-corner-width":y+`px`,"--radix-scroll-area-corner-height":x+`px`,...e.style}})})},`ScrollArea`)),re=`ScrollAreaViewport`,ie=A.forwardRef(N(function(e,t){let{__scopeScrollArea:n,children:r,nonce:a,...o}=e,c=L(re,n),l=A.useRef(null),u=i(t,l,c.onViewportChange);return(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(ae,{nonce:a}),(0,j.jsx)(s.div,{"data-radix-scroll-area-viewport":``,...o,ref:u,style:{overflowX:c.scrollbarXEnabled?`scroll`:`hidden`,overflowY:c.scrollbarYEnabled?`scroll`:`hidden`,...e.style},children:(0,j.jsx)(`div`,{ref:c.onContentChange,style:{minWidth:`100%`,display:`table`},children:r})})]})},`ScrollAreaViewport`)),ae=A.memo(N(function({nonce:e}){return(0,j.jsx)(`style`,{dangerouslySetInnerHTML:{__html:`[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}`},nonce:e})},`ScrollAreaViewportStyle`),(e,t)=>e.nonce===t.nonce),R=`ScrollAreaScrollbar`,oe=A.forwardRef(N(function(e,t){let{forceMount:n,...r}=e,i=L(R,e.__scopeScrollArea),{onScrollbarXEnabledChange:a,onScrollbarYEnabledChange:o}=i,s=e.orientation===`horizontal`;return A.useEffect(()=>(s?a(!0):o(!0),()=>{s?a(!1):o(!1)}),[s,a,o]),i.type===`hover`?(0,j.jsx)(se,{...r,ref:t,forceMount:n}):i.type===`scroll`?(0,j.jsx)(ce,{...r,ref:t,forceMount:n}):i.type===`auto`?(0,j.jsx)(z,{...r,ref:t,forceMount:n}):i.type===`always`?(0,j.jsx)(B,{...r,ref:t,"data-state":`visible`}):null},`ScrollAreaScrollbar`)),se=A.forwardRef(N(function(e,t){let{forceMount:n,...r}=e,i=L(R,e.__scopeScrollArea),[a,o]=A.useState(!1);return A.useEffect(()=>{let e=i.scrollArea,t=0;if(e){let n=N(()=>{window.clearTimeout(t),o(!0)},`handlePointerEnter`),r=N(()=>{t=window.setTimeout(()=>o(!1),i.scrollHideDelay)},`handlePointerLeave`);return e.addEventListener(`pointerenter`,n),e.addEventListener(`pointerleave`,r),()=>{window.clearTimeout(t),e.removeEventListener(`pointerenter`,n),e.removeEventListener(`pointerleave`,r)}}},[i.scrollArea,i.scrollHideDelay]),(0,j.jsx)(d,{present:n||a,children:(0,j.jsx)(z,{"data-state":a?`visible`:`hidden`,...r,ref:t})})},`ScrollAreaScrollbarHover`)),ce=A.forwardRef(N(function(e,t){let{forceMount:n,...r}=e,i=L(R,e.__scopeScrollArea),a=e.orientation===`horizontal`,o=Q(()=>c(`SCROLL_END`),100),[s,c]=P(`hidden`,{hidden:{SCROLL:`scrolling`},scrolling:{SCROLL_END:`idle`,POINTER_ENTER:`interacting`},interacting:{SCROLL:`interacting`,POINTER_LEAVE:`idle`},idle:{HIDE:`hidden`,SCROLL:`scrolling`,POINTER_ENTER:`interacting`}});return A.useEffect(()=>{if(s===`idle`){let e=window.setTimeout(()=>c(`HIDE`),i.scrollHideDelay);return()=>window.clearTimeout(e)}},[s,i.scrollHideDelay,c]),A.useEffect(()=>{let e=i.viewport,t=a?`scrollLeft`:`scrollTop`;if(e){let n=e[t],r=N(()=>{let r=e[t];n!==r&&(c(`SCROLL`),o()),n=r},`handleScroll`);return e.addEventListener(`scroll`,r),()=>e.removeEventListener(`scroll`,r)}},[i.viewport,a,c,o]),(0,j.jsx)(d,{present:n||s!==`hidden`,children:(0,j.jsx)(B,{"data-state":s===`hidden`?`hidden`:`visible`,...r,ref:t,onPointerEnter:l(e.onPointerEnter,()=>c(`POINTER_ENTER`)),onPointerLeave:l(e.onPointerLeave,()=>c(`POINTER_LEAVE`))})})},`ScrollAreaScrollbarScroll`)),z=A.forwardRef(N(function(e,t){let n=L(R,e.__scopeScrollArea),{forceMount:r,...i}=e,[a,o]=A.useState(!1),s=e.orientation===`horizontal`,c=Q(()=>{if(n.viewport){let e=n.viewport.offsetWidth<n.viewport.scrollWidth,t=n.viewport.offsetHeight<n.viewport.scrollHeight;o(s?e:t)}},10);return $(n.viewport,c),$(n.content,c),(0,j.jsx)(d,{present:r||a,children:(0,j.jsx)(B,{"data-state":a?`visible`:`hidden`,...i,ref:t})})},`ScrollAreaScrollbarAuto`)),B=A.forwardRef(N(function(e,t){let{orientation:n=`vertical`,...r}=e,i=L(R,e.__scopeScrollArea),a=A.useRef(null),o=A.useRef(0),[s,c]=A.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),l=K(s.viewport,s.content),u={...r,sizes:s,onSizesChange:c,hasThumb:l>0&&l<1,onThumbChange:N(e=>a.current=e,`onThumbChange`),onThumbPointerUp:N(()=>o.current=0,`onThumbPointerUp`),onThumbPointerDown:N(e=>o.current=e,`onThumbPointerDown`)};function d(e,t){return J(e,o.current,s,t)}return N(d,`getScrollPosition`),n===`horizontal`?(0,j.jsx)(le,{...u,ref:t,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=i.viewport.scrollLeft,t=Y(e,s,i.dir);a.current.style.transform=`translate3d(${t}px, 0, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollLeft=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollLeft=d(e,i.dir))}}):n===`vertical`?(0,j.jsx)(ue,{...u,ref:t,onThumbPositionChange:()=>{if(i.viewport&&a.current){let e=i.viewport.scrollTop,t=Y(e,s);a.current.style.transform=`translate3d(0, ${t}px, 0)`}},onWheelScroll:e=>{i.viewport&&(i.viewport.scrollTop=e)},onDragScroll:e=>{i.viewport&&(i.viewport.scrollTop=d(e))}}):null},`ScrollAreaScrollbarVisible`)),le=A.forwardRef(N(function(e,t){let{sizes:n,onSizesChange:r,...a}=e,o=L(R,e.__scopeScrollArea),[s,c]=A.useState(),l=A.useRef(null),u=i(t,l,o.onScrollbarXChange);return A.useEffect(()=>{l.current&&c(getComputedStyle(l.current))},[l]),(0,j.jsx)(H,{"data-orientation":`horizontal`,...a,ref:u,sizes:n,style:{bottom:0,left:o.dir===`rtl`?`var(--radix-scroll-area-corner-width)`:0,right:o.dir===`ltr`?`var(--radix-scroll-area-corner-width)`:0,"--radix-scroll-area-thumb-width":q(n)+`px`,...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.x),onDragScroll:t=>e.onDragScroll(t.x),onWheelScroll:(t,n)=>{if(o.viewport){let r=o.viewport.scrollLeft+t.deltaX;e.onWheelScroll(r),Z(r,n)&&t.preventDefault()}},onResize:()=>{l.current&&o.viewport&&s&&r({content:o.viewport.scrollWidth,viewport:o.viewport.offsetWidth,scrollbar:{size:l.current.clientWidth,paddingStart:G(s.paddingLeft),paddingEnd:G(s.paddingRight)}})}})},`ScrollAreaScrollbarX`)),ue=A.forwardRef(N(function(e,t){let{sizes:n,onSizesChange:r,...a}=e,o=L(R,e.__scopeScrollArea),[s,c]=A.useState(),l=A.useRef(null),u=i(t,l,o.onScrollbarYChange);return A.useEffect(()=>{l.current&&c(getComputedStyle(l.current))},[l]),(0,j.jsx)(H,{"data-orientation":`vertical`,...a,ref:u,sizes:n,style:{top:0,right:o.dir===`ltr`?0:void 0,left:o.dir===`rtl`?0:void 0,bottom:`var(--radix-scroll-area-corner-height)`,"--radix-scroll-area-thumb-height":q(n)+`px`,...e.style},onThumbPointerDown:t=>e.onThumbPointerDown(t.y),onDragScroll:t=>e.onDragScroll(t.y),onWheelScroll:(t,n)=>{if(o.viewport){let r=o.viewport.scrollTop+t.deltaY;e.onWheelScroll(r),Z(r,n)&&t.preventDefault()}},onResize:()=>{l.current&&o.viewport&&s&&r({content:o.viewport.scrollHeight,viewport:o.viewport.offsetHeight,scrollbar:{size:l.current.clientHeight,paddingStart:G(s.paddingTop),paddingEnd:G(s.paddingBottom)}})}})},`ScrollAreaScrollbarY`)),[de,V]=I(R),H=A.forwardRef(N(function(e,t){let{__scopeScrollArea:n,sizes:r,hasThumb:a,onThumbChange:o,onThumbPointerUp:c,onThumbPointerDown:u,onThumbPositionChange:d,onDragScroll:p,onWheelScroll:m,onResize:h,...g}=e,_=L(R,n),[v,y]=A.useState(null),b=i(t,y),x=A.useRef(null),S=A.useRef(``),C=_.viewport,w=r.content-r.viewport,T=f(m),E=f(d),D=Q(h,10);function O(e){if(x.current){let t=e.clientX-x.current.left,n=e.clientY-x.current.top;p({x:t,y:n})}}return N(O,`handleDragScroll`),A.useEffect(()=>{let e=N(e=>{let t=e.target;v?.contains(t)&&T(e,w)},`handleWheel`);return document.addEventListener(`wheel`,e,{passive:!1}),()=>document.removeEventListener(`wheel`,e,{passive:!1})},[C,v,w,T]),A.useEffect(E,[r,E]),$(v,D),$(_.content,D),(0,j.jsx)(de,{scope:n,scrollbar:v,hasThumb:a,onThumbChange:f(o),onThumbPointerUp:f(c),onThumbPositionChange:E,onThumbPointerDown:f(u),children:(0,j.jsx)(s.div,{...g,ref:b,style:{position:`absolute`,...g.style},onPointerDown:l(e.onPointerDown,e=>{e.button===0&&(e.target.setPointerCapture(e.pointerId),x.current=v.getBoundingClientRect(),S.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect=`none`,_.viewport&&(_.viewport.style.scrollBehavior=`auto`),O(e))}),onPointerMove:l(e.onPointerMove,O),onPointerUp:l(e.onPointerUp,e=>{let t=e.target;t.hasPointerCapture(e.pointerId)&&t.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=S.current,_.viewport&&(_.viewport.style.scrollBehavior=``),x.current=null})})})},`ScrollAreaScrollbarImpl`)),U=`ScrollAreaThumb`,fe=A.forwardRef(N(function(e,t){let{forceMount:n,...r}=e,i=V(U,e.__scopeScrollArea);return(0,j.jsx)(d,{present:n||i.hasThumb,children:(0,j.jsx)(pe,{ref:t,...r})})},`ScrollAreaThumb`)),pe=A.forwardRef(N(function(e,t){let{__scopeScrollArea:n,style:r,...a}=e,o=L(U,n),c=V(U,n),{onThumbPositionChange:u}=c,d=i(t,c.onThumbChange),f=A.useRef(void 0),p=Q(()=>{f.current&&=(f.current(),void 0)},100);return A.useEffect(()=>{let e=o.viewport;if(e){let t=N(()=>{if(p(),!f.current){let t=ge(e,u);f.current=t,u()}},`handleScroll`);return u(),e.addEventListener(`scroll`,t),()=>e.removeEventListener(`scroll`,t)}},[o.viewport,p,u]),(0,j.jsx)(s.div,{"data-state":c.hasThumb?`visible`:`hidden`,...a,ref:d,style:{width:`var(--radix-scroll-area-thumb-width)`,height:`var(--radix-scroll-area-thumb-height)`,...r},onPointerDownCapture:l(e.onPointerDownCapture,e=>{let t=e.target.getBoundingClientRect(),n=e.clientX-t.left,r=e.clientY-t.top;c.onThumbPointerDown({x:n,y:r})}),onPointerUp:l(e.onPointerUp,c.onThumbPointerUp)})},`ScrollAreaThumbImpl`)),W=`ScrollAreaCorner`,me=A.forwardRef(N(function(e,t){let n=L(W,e.__scopeScrollArea),r=!!(n.scrollbarX&&n.scrollbarY);return n.type!==`scroll`&&r?(0,j.jsx)(he,{...e,ref:t}):null},`ScrollAreaCorner`)),he=A.forwardRef(N(function(e,t){let{__scopeScrollArea:n,...r}=e,i=L(W,n),[a,o]=A.useState(0),[c,l]=A.useState(0),u=!!(a&&c),{onCornerWidthChange:d,onCornerHeightChange:f}=i;return $(i.scrollbarX,()=>{let e=i.scrollbarX?.offsetHeight||0;i.onCornerHeightChange(e),l(e)}),$(i.scrollbarY,()=>{let e=i.scrollbarY?.offsetWidth||0;i.onCornerWidthChange(e),o(e)}),A.useEffect(()=>()=>{d(0),f(0)},[d,f]),u?(0,j.jsx)(s.div,{...r,ref:t,style:{width:a,height:c,position:`absolute`,right:i.dir===`ltr`?0:void 0,left:i.dir===`rtl`?0:void 0,bottom:0,...e.style}}):null},`ScrollAreaCornerImpl`));function G(e){return e?parseInt(e,10):0}N(G,`toInt`);function K(e,t){let n=e/t;return isNaN(n)?0:n}N(K,`getThumbRatio`);function q(e){let t=K(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}N(q,`getThumbSize`);function J(e,t,n,r=`ltr`){let i=q(n),a=i/2,o=t||a,s=i-o,c=n.scrollbar.paddingStart+o,l=n.scrollbar.size-n.scrollbar.paddingEnd-s,u=n.content-n.viewport,d=r===`ltr`?[0,u]:[u*-1,0];return X([c,l],d)(e)}N(J,`getScrollPositionFromPointer`);function Y(e,t,n=`ltr`){let r=q(t),i=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,a=t.scrollbar.size-i,o=t.content-t.viewport,s=a-r,c=n===`ltr`?[0,o]:[o*-1,0],l=m(e,c);return X([0,o],[0,s])(l)}N(Y,`getThumbOffsetFromScroll`);function X(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];let r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}N(X,`linearScale`);function Z(e,t){return e>0&&e<t}N(Z,`isScrollingWithinScrollbarBounds`);var ge=N((e,t=()=>{})=>{let n={left:e.scrollLeft,top:e.scrollTop},r=0;return N((function i(){let a={left:e.scrollLeft,top:e.scrollTop},o=n.left!==a.left,s=n.top!==a.top;(o||s)&&t(),n=a,r=window.requestAnimationFrame(i)}),`loop`)(),()=>window.cancelAnimationFrame(r)},`addUnlinkedScrollListener`);function Q(e,t){let n=f(e),r=A.useRef(0);return A.useEffect(()=>()=>window.clearTimeout(r.current),[]),A.useCallback(()=>{window.clearTimeout(r.current),r.current=window.setTimeout(n,t)},[n,t])}N(Q,`useDebounceCallback`);function $(e,t){let n=f(t);o(()=>{let t=0;if(e){let r=new ResizeObserver(()=>{cancelAnimationFrame(t),t=window.requestAnimationFrame(n)});return r.observe(e),()=>{window.cancelAnimationFrame(t),r.unobserve(e)}}},[e,n])}N($,`useResizeObserver`);var _e=ne,ve=ie,ye=me,be=r(`arrow-up`,[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]),xe=r(`folder`,[[`path`,{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`,key:`1kt360`}]]);function Se({className:e,children:t,...n}){return(0,j.jsxs)(_e,{"data-slot":`scroll-area`,className:h(`relative`,e),...n,children:[(0,j.jsx)(ve,{"data-slot":`scroll-area-viewport`,className:`size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1`,children:t}),(0,j.jsx)(Ce,{}),(0,j.jsx)(ye,{})]})}function Ce({className:e,orientation:t=`vertical`,...n}){return(0,j.jsx)(oe,{"data-slot":`scroll-area-scrollbar`,"data-orientation":t,orientation:t,className:h(`flex touch-none p-px transition-colors select-none data-horizontal:h-2.5 data-horizontal:flex-col data-horizontal:border-t data-horizontal:border-t-transparent data-vertical:h-full data-vertical:w-2.5 data-vertical:border-l data-vertical:border-l-transparent`,e),...n,children:(0,j.jsx)(fe,{"data-slot":`scroll-area-thumb`,className:`relative flex-1 rounded-full bg-border`})})}function we({open:e,initialPath:t=``,description:n,onOpenChange:r,onSelect:i}){let{t:o}=u(),[s,c]=(0,A.useState)(t),[l,d]=(0,A.useState)(null),[f,m]=(0,A.useState)(!1),[h,D]=(0,A.useState)(!1),[M,N]=(0,A.useState)(``),P=(0,A.useRef)(0),F=(0,A.useCallback)(async e=>{let t=++P.current;m(!0),N(``);try{let n=await b(`/api/directories?path=${encodeURIComponent(e.trim())}`);if(t!==P.current)return;c(n.path),d(n)}catch(e){if(t!==P.current)return;N(e instanceof Error?e.message:String(e))}finally{t===P.current&&m(!1)}},[]);(0,A.useEffect)(()=>{if(!e){P.current+=1;return}c(t),d(null),D(!1),F(t)},[F,t,e]);let I=e=>{e.preventDefault(),F(s)},ee=async()=>{if(s.trim()){D(!0),N(``);try{await i(s.trim()),r(!1)}catch(e){N(e instanceof Error?e.message:String(e))}finally{D(!1)}}};return(0,j.jsx)(_,{open:e,onOpenChange:e=>!h&&r(e),children:(0,j.jsxs)(E,{showCloseButton:!h,className:`max-w-[calc(100vw-24px)]! gap-0 overflow-hidden p-0 sm:max-w-[620px]!`,children:[(0,j.jsxs)(C,{className:`border-b px-4 py-3 pr-12`,children:[(0,j.jsx)(y,{children:o(`common:workspacePicker.setWorkingDirectory`)}),(0,j.jsx)(x,{children:n||o(`common:workspacePicker.selectDirectoryDescription`)})]}),(0,j.jsxs)(`form`,{className:`flex min-w-0 items-center gap-2 px-4 py-3`,onSubmit:I,children:[(0,j.jsx)(a,{type:`button`,variant:`outline`,size:`icon`,title:o(`common:workspacePicker.parentFolder`),"aria-label":o(`common:workspacePicker.parentFolder`),disabled:f||!l?.parent,onClick:()=>l?.parent&&void F(l.parent),children:(0,j.jsx)(be,{})}),(0,j.jsx)(v,{className:`min-w-0 flex-1 font-mono text-[12px]`,value:s,disabled:h,"aria-label":o(`common:workspacePicker.workingDirectoryPath`),placeholder:o(`common:workspacePicker.enterAbsolutePath`),onChange:e=>c(e.target.value)}),(0,j.jsxs)(a,{type:`submit`,variant:`secondary`,disabled:f||h||!s.trim(),children:[f?(0,j.jsx)(g,{className:`animate-spin`}):(0,j.jsx)(w,{}),o(`common:workspacePicker.go`)]})]}),(0,j.jsx)(Se,{className:`h-[min(340px,45dvh)] border-y bg-muted/20`,children:(0,j.jsxs)(`div`,{className:`p-2`,children:[l?.directories.map(e=>(0,j.jsxs)(`button`,{type:`button`,className:`grid h-9 w-full grid-cols-[24px_minmax(0,1fr)_20px] items-center rounded-md px-2 text-left text-[13px] hover:bg-muted focus-visible:ring-2 focus-visible:ring-ring focus-visible:outline-none`,title:e.path,disabled:f||h,onClick:()=>void F(e.path),children:[(0,j.jsx)(xe,{className:`size-4 text-content-muted`}),(0,j.jsx)(`span`,{className:`truncate`,children:e.name}),(0,j.jsx)(w,{className:`size-4 text-content-muted`})]},e.path)),f&&(0,j.jsxs)(`div`,{className:`flex h-32 items-center justify-center gap-2 text-content-muted`,children:[(0,j.jsx)(g,{className:`size-4 animate-spin`}),(0,j.jsx)(`span`,{children:o(`common:workspacePicker.readingFolder`)})]}),!f&&l&&!l.directories.length&&(0,j.jsx)(`div`,{className:`flex h-32 items-center justify-center text-content-muted`,children:o(`common:workspacePicker.thisFolderHasNoSubfolders`)})]})}),M&&(0,j.jsxs)(k,{variant:`destructive`,className:`mx-4 mt-3 w-auto`,children:[(0,j.jsx)(T,{}),(0,j.jsx)(O,{children:M})]}),(0,j.jsxs)(S,{className:`m-0 border-t-0 bg-transparent px-4 py-3`,children:[(0,j.jsx)(a,{type:`button`,variant:`outline`,disabled:h,onClick:()=>r(!1),children:o(`common:ui.cancel`)}),(0,j.jsxs)(a,{type:`button`,variant:`secondary`,disabled:f||h||!s.trim(),onClick:()=>void ee(),children:[h?(0,j.jsx)(g,{className:`animate-spin`}):(0,j.jsx)(p,{}),o(h?`common:workspacePicker.switching`:`common:workspacePicker.useThisFolder`)]})]})]})})}export{be as i,Se as n,xe as r,we as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./rolldown-runtime-B0Z9INg1.js";import{i as e,t}from"./vendor-react-CHuvPdJE.js";import{t as n}from"./vendor-ui-DvrYggeS.js";import{t as r}from"./utils-C8uzG5AZ.js";e();var i=t(),a=n(`group/alert relative grid w-full gap-0.5 rounded-lg border px-2.5 py-2 text-left text-sm has-data-[slot=alert-action]:relative has-data-[slot=alert-action]:pr-18 has-[>svg]:grid-cols-[auto_1fr] has-[>svg]:gap-x-2 *:[svg]:row-span-2 *:[svg]:translate-y-0.5 *:[svg]:text-current *:[svg:not([class*='size-'])]:size-4`,{variants:{variant:{default:`bg-card text-card-foreground`,destructive:`bg-card text-destructive *:data-[slot=alert-description]:text-destructive/90 *:[svg]:text-current`}},defaultVariants:{variant:`default`}});function o({className:e,variant:t,...n}){return(0,i.jsx)(`div`,{"data-slot":`alert`,role:`alert`,className:r(a({variant:t}),e),...n})}function s({className:e,...t}){return(0,i.jsx)(`div`,{"data-slot":`alert-description`,className:r(`text-sm text-balance text-muted-foreground md:text-pretty [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground [&_p:not(:last-child)]:mb-4`,e),...t})}export{s as n,o as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-B0Z9INg1.js";import{i as t,t as n}from"./vendor-react-CHuvPdJE.js";import{n as r,s as i,t as a}from"./button-DzlQCSNK.js";import{m as o,p as s}from"./use-i18n-DmLwOjO5.js";import{t as c}from"./utils-C8uzG5AZ.js";import{$t as l,Jt as u,Qt as d,Xt as f,Yt as p,Zt as m,en as h,qt as g,tn as _}from"./index-BIQcwjFR.js";var v=e(t(),1),y=n(),b=Object.defineProperty,x=(e,t)=>b(e,`name`,{value:t,configurable:!0}),[S,ee]=o(`AlertDialog`,[_]),C=_(),w=x(e=>{let{__scopeAlertDialog:t,...n}=e,r=C(t);return(0,y.jsx)(g,{...r,...n,modal:!0})},`AlertDialog`);v.forwardRef(x(function(e,t){let{__scopeAlertDialog:n,...r}=e,i=C(n);return(0,y.jsx)(h,{...i,...r,ref:t})},`AlertDialogTrigger`));var T=x(e=>{let{__scopeAlertDialog:t,...n}=e,r=C(t);return(0,y.jsx)(d,{...r,...n})},`AlertDialogPortal`),E=v.forwardRef(x(function(e,t){let{__scopeAlertDialog:n,...r}=e,i=C(n);return(0,y.jsx)(m,{...i,...r,ref:t})},`AlertDialogOverlay`)),[D,O]=S(`AlertDialogContent`),k=v.forwardRef(x(function(e,t){let{__scopeAlertDialog:n,children:r,...a}=e,o=C(n),c=v.useRef(null),l=i(t,c),u=v.useRef(null);return(0,y.jsx)(D,{scope:n,cancelRef:u,children:(0,y.jsx)(p,{role:`alertdialog`,...o,...a,ref:l,onOpenAutoFocus:s(a.onOpenAutoFocus,e=>{e.preventDefault(),u.current?.focus({preventScroll:!0})}),onPointerDownOutside:e=>e.preventDefault(),onInteractOutside:e=>e.preventDefault(),children:r})})},`AlertDialogContent`)),A=v.forwardRef(x(function(e,t){let{__scopeAlertDialog:n,...r}=e,i=C(n);return(0,y.jsx)(l,{...i,...r,ref:t})},`AlertDialogTitle`)),j=v.forwardRef(x(function(e,t){let{__scopeAlertDialog:n,...r}=e,i=C(n);return(0,y.jsx)(f,{...i,...r,ref:t})},`AlertDialogDescription`)),M=v.forwardRef(x(function(e,t){let{__scopeAlertDialog:n,...r}=e,i=C(n);return(0,y.jsx)(u,{...i,...r,ref:t})},`AlertDialogAction`)),N=`AlertDialogCancel`,P=v.forwardRef(x(function(e,t){let{__scopeAlertDialog:n,...r}=e,{cancelRef:a}=O(N,n),o=C(n),s=i(t,a);return(0,y.jsx)(u,{...o,...r,ref:s})},`AlertDialogCancel`)),F=w,te=T,I=E,L=k,R=M,z=P,B=A,V=j,H=r(`eye`,[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`,key:`1nclc0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),U=r(`shield-alert`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`M12 8v4`,key:`1got3b`}],[`path`,{d:`M12 16h.01`,key:`1drbdi`}]]);function W(e,t){return e?.id===`read`?t(`plugins:toolLabels.read`):e?.id===`ls`?t(`plugins:toolLabels.list`):e?.id===`grep`?t(`plugins:toolLabels.grep`):e?.id===`find`?t(`plugins:toolLabels.find`):e?.id===`edit`?t(`plugins:toolLabels.edit`):e?.id===`write`?t(`plugins:toolLabels.write`):e?.id===`bash`?t(`plugins:toolLabels.shell`):e?.id===`web_search`?t(`plugins:toolLabels.webSearch`):e?.id===`browser_automation`?t(`plugins:toolLabels.browserControl`):e?.id===`generate_visual`?t(`plugins:toolLabels.visualGeneration`):e?.id===`skill_create`?t(`plugins:toolLabels.skillCreate`):e?.id===`plugin_create`?t(`plugins:toolLabels.pluginCreate`):e?.id===`memory_search`?t(`plugins:toolLabels.memorySearch`):e?.id===`memory_remember`?t(`plugins:toolLabels.memoryRemember`):e?.id===`mcp_list`?t(`plugins:toolLabels.mcpList`):e?.id===`mcp_manage`?t(`plugins:toolLabels.mcpManage`):String(e?.name||e?.id||``)}function G(e,t){return e?.id===`read`?t(`plugins:toolLabels.readDescription`):e?.id===`ls`?t(`plugins:toolLabels.listDescription`):e?.id===`grep`?t(`plugins:toolLabels.grepDescription`):e?.id===`find`?t(`plugins:toolLabels.findDescription`):e?.id===`edit`?t(`plugins:toolLabels.editDescription`):e?.id===`write`?t(`plugins:toolLabels.writeDescription`):e?.id===`bash`?t(`plugins:toolLabels.shellDescription`):e?.id===`web_search`?t(`plugins:toolLabels.webSearchDescription`):e?.id===`browser_automation`?t(`plugins:toolLabels.browserControlDescription`):e?.id===`generate_visual`?t(`plugins:toolLabels.visualGenerationDescription`):e?.id===`skill_create`?t(`plugins:toolLabels.skillCreateDescription`):e?.id===`plugin_create`?t(`plugins:toolLabels.pluginCreateDescription`):e?.id===`memory_search`?t(`plugins:toolLabels.memorySearchDescription`):e?.id===`memory_remember`?t(`plugins:toolLabels.memoryRememberDescription`):e?.id===`mcp_list`?t(`plugins:toolLabels.mcpListDescription`):e?.id===`mcp_manage`?t(`plugins:toolLabels.mcpManageDescription`):String(e?.description||``)}function K(e,t){return e===`high`||e===`高风险`?t(`plugins:toolLabels.highRisk`):e===`medium`||e===`中风险`?t(`plugins:toolLabels.mediumRisk`):e===`low`||e===`低风险`?t(`plugins:toolLabels.lowRisk`):String(e||``)}function q(e,t){return e===`filesystem`||e===`文件系统`?t(`plugins:toolLabels.fileSystem`):e===`search`||e===`搜索`?t(`plugins:toolLabels.search`):e===`terminal`||e===`终端`?t(`plugins:toolLabels.terminal`):e===`visual`||e===`视觉`?t(`plugins:toolLabels.visual`):e===`skills`||e===`技能`?t(`plugins:toolLabels.skills`):e===`plugins`||e===`插件`?t(`plugins:toolLabels.plugins`):e===`browser`||e===`浏览器`?t(`plugins:toolLabels.browser`):e===`memory`||e===`星忆`?t(`plugins:toolLabels.memory`):e===`mcp`||e===`MCP`?t(`plugins:toolLabels.mcp`):e===`collaboration`||e===`协作`?t(`plugins:toolLabels.collaboration`):String(e||``)}function J(e,t){return[`read`,`ls`,`grep`,`find`,`edit`,`write`].includes(String(e.id))?t(`plugins:toolLabels.currentChatWorkspace`):e.id===`bash`?t(`plugins:toolLabels.currentOsUser`):e.id===`web_search`?t(`plugins:toolLabels.bingPublicWebSearch`):e.id===`browser_automation`?t(`plugins:toolLabels.isolatedSessionBrowser`):e.id===`generate_visual`?t(`plugins:toolLabels.visualProviderAndWorkspace`):e.id===`skill_create`?t(`plugins:toolLabels.projectAndGlobalSkills`):e.id===`plugin_create`?t(`plugins:toolLabels.globalPluginSources`):e.id===`memory_search`||e.id===`memory_remember`?t(`plugins:toolLabels.globalAndProjectMemory`):e.id===`mcp_list`||e.id===`mcp_manage`?t(`plugins:toolLabels.applicationMcpConfiguration`):String(e.scope||``)}function Y(e){return e===`high`||e===`高风险`}function X({...e}){return(0,y.jsx)(F,{"data-slot":`alert-dialog`,...e})}function Z({...e}){return(0,y.jsx)(te,{"data-slot":`alert-dialog-portal`,...e})}function Q({className:e,...t}){return(0,y.jsx)(I,{"data-slot":`alert-dialog-overlay`,className:c(`fixed inset-0 z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0`,e),...t})}function $({className:e,size:t=`default`,...n}){return(0,y.jsxs)(Z,{children:[(0,y.jsx)(Q,{}),(0,y.jsx)(L,{"data-slot":`alert-dialog-content`,"data-size":t,className:c(`group/alert-dialog-content fixed top-1/2 left-1/2 z-50 grid max-h-[calc(100dvh-2rem)] w-full -translate-x-1/2 -translate-y-1/2 gap-4 overflow-y-auto overscroll-contain rounded-xl bg-popover p-4 text-popover-foreground ring-1 ring-foreground/10 duration-100 outline-none data-[size=default]:max-w-xs data-[size=sm]:max-w-xs data-[size=default]:sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,e),...n})]})}function ne({className:e,...t}){return(0,y.jsx)(`div`,{"data-slot":`alert-dialog-header`,className:c(`grid grid-rows-[auto_1fr] place-items-center gap-1.5 text-center has-data-[slot=alert-dialog-media]:grid-rows-[auto_auto_1fr] has-data-[slot=alert-dialog-media]:gap-x-4 sm:group-data-[size=default]/alert-dialog-content:place-items-start sm:group-data-[size=default]/alert-dialog-content:text-left sm:group-data-[size=default]/alert-dialog-content:has-data-[slot=alert-dialog-media]:grid-rows-[auto_1fr]`,e),...t})}function re({className:e,...t}){return(0,y.jsx)(`div`,{"data-slot":`alert-dialog-footer`,className:c(`-mx-4 -mb-4 flex flex-col-reverse gap-2 rounded-b-xl border-t bg-muted/50 p-4 group-data-[size=sm]/alert-dialog-content:grid group-data-[size=sm]/alert-dialog-content:grid-cols-2 sm:flex-row sm:justify-end`,e),...t})}function ie({className:e,...t}){return(0,y.jsx)(`div`,{"data-slot":`alert-dialog-media`,className:c(`mb-2 inline-flex size-10 items-center justify-center rounded-md bg-muted sm:group-data-[size=default]/alert-dialog-content:row-span-2 *:[svg:not([class*='size-'])]:size-6`,e),...t})}function ae({className:e,...t}){return(0,y.jsx)(B,{"data-slot":`alert-dialog-title`,className:c(`font-heading text-base font-medium sm:group-data-[size=default]/alert-dialog-content:group-has-data-[slot=alert-dialog-media]/alert-dialog-content:col-start-2`,e),...t})}function oe({className:e,...t}){return(0,y.jsx)(V,{"data-slot":`alert-dialog-description`,className:c(`text-sm text-balance text-muted-foreground md:text-pretty *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground`,e),...t})}function se({className:e,variant:t=`default`,size:n=`default`,...r}){return(0,y.jsx)(a,{variant:t,size:n,asChild:!0,children:(0,y.jsx)(R,{"data-slot":`alert-dialog-action`,className:c(e),...r})})}function ce({className:e,variant:t=`outline`,size:n=`default`,...r}){return(0,y.jsx)(a,{variant:t,size:n,asChild:!0,children:(0,y.jsx)(z,{"data-slot":`alert-dialog-cancel`,className:c(e),...r})})}export{H as _,oe as a,ie as c,q as d,G as f,U as g,J as h,$ as i,ae as l,K as m,se as n,re as o,W as p,ce as r,ne as s,X as t,Y as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e=Object.freeze(JSON.parse(`{"colors":{"activityBar.background":"#23262E","activityBar.dropBackground":"#3a404e","activityBar.foreground":"#BAAFC0","activityBarBadge.background":"#00b0ff","activityBarBadge.foreground":"#20232B","badge.background":"#00b0ff","badge.foreground":"#20232B","button.background":"#00e8c5cc","button.hoverBackground":"#07d4b6cc","debugExceptionWidget.background":"#FF9F2E60","debugExceptionWidget.border":"#FF9F2E60","debugToolBar.background":"#20232A","diffEditor.insertedTextBackground":"#29BF1220","diffEditor.removedTextBackground":"#F21B3F20","dropdown.background":"#2b303b","dropdown.border":"#363c49","editor.background":"#23262E","editor.findMatchBackground":"#f39d1256","editor.findMatchBorder":"#f39d12b6","editor.findMatchHighlightBackground":"#59b8b377","editor.foreground":"#D5CED9","editor.hoverHighlightBackground":"#373941","editor.lineHighlightBackground":"#2e323d","editor.lineHighlightBorder":"#2e323d","editor.rangeHighlightBackground":"#372F3C","editor.selectionBackground":"#3D4352","editor.selectionHighlightBackground":"#4F435580","editor.wordHighlightBackground":"#4F4355","editor.wordHighlightStrongBackground":"#db45a280","editorBracketMatch.background":"#746f77","editorBracketMatch.border":"#746f77","editorCodeLens.foreground":"#746f77","editorCursor.foreground":"#FFF","editorError.foreground":"#FC644D","editorGroup.background":"#23262E","editorGroup.dropBackground":"#495061d7","editorGroupHeader.tabsBackground":"#23262E","editorGutter.addedBackground":"#9BC53DBB","editorGutter.deletedBackground":"#FC644DBB","editorGutter.modifiedBackground":"#5BC0EBBB","editorHoverWidget.background":"#373941","editorHoverWidget.border":"#00e8c5cc","editorIndentGuide.activeBackground":"#585C66","editorIndentGuide.background":"#333844","editorLineNumber.foreground":"#746f77","editorLink.activeForeground":"#3B79C7","editorOverviewRuler.border":"#1B1D23","editorRuler.foreground":"#4F4355","editorSuggestWidget.background":"#20232A","editorSuggestWidget.border":"#372F3C","editorSuggestWidget.selectedBackground":"#373941","editorWarning.foreground":"#FF9F2E","editorWhitespace.foreground":"#333844","editorWidget.background":"#20232A","errorForeground":"#FC644D","extensionButton.prominentBackground":"#07d4b6cc","extensionButton.prominentHoverBackground":"#07d4b5b0","focusBorder":"#746f77","foreground":"#D5CED9","gitDecoration.ignoredResourceForeground":"#555555","input.background":"#2b303b","input.placeholderForeground":"#746f77","inputOption.activeBorder":"#C668BA","inputValidation.errorBackground":"#D65343","inputValidation.errorBorder":"#D65343","inputValidation.infoBackground":"#3A6395","inputValidation.infoBorder":"#3A6395","inputValidation.warningBackground":"#DE9237","inputValidation.warningBorder":"#DE9237","list.activeSelectionBackground":"#23262E","list.activeSelectionForeground":"#00e8c6","list.dropBackground":"#3a404e","list.focusBackground":"#282b35","list.focusForeground":"#eee","list.hoverBackground":"#23262E","list.hoverForeground":"#eee","list.inactiveSelectionBackground":"#23262E","list.inactiveSelectionForeground":"#00e8c6","merge.currentContentBackground":"#F9267240","merge.currentHeaderBackground":"#F92672","merge.incomingContentBackground":"#3B79C740","merge.incomingHeaderBackground":"#3B79C7BB","minimapSlider.activeBackground":"#60698060","minimapSlider.background":"#58607460","minimapSlider.hoverBackground":"#60698060","notification.background":"#2d313b","notification.buttonBackground":"#00e8c5cc","notification.buttonHoverBackground":"#07d4b5b0","notification.errorBackground":"#FC644D","notification.infoBackground":"#00b0ff","notification.warningBackground":"#FF9F2E","panel.background":"#23262E","panel.border":"#1B1D23","panelTitle.activeBorder":"#23262E","panelTitle.inactiveForeground":"#746f77","peekView.border":"#23262E","peekViewEditor.background":"#1A1C22","peekViewEditor.matchHighlightBackground":"#FF9F2E60","peekViewResult.background":"#1A1C22","peekViewResult.matchHighlightBackground":"#FF9F2E60","peekViewResult.selectionBackground":"#23262E","peekViewTitle.background":"#1A1C22","peekViewTitleDescription.foreground":"#746f77","pickerGroup.border":"#4F4355","pickerGroup.foreground":"#746f77","progressBar.background":"#C668BA","scrollbar.shadow":"#23262E","scrollbarSlider.activeBackground":"#3A3F4CCC","scrollbarSlider.background":"#3A3F4C77","scrollbarSlider.hoverBackground":"#3A3F4CAA","selection.background":"#746f77","sideBar.background":"#23262E","sideBar.foreground":"#999999","sideBarSectionHeader.background":"#23262E","sideBarTitle.foreground":"#00e8c6","statusBar.background":"#23262E","statusBar.debuggingBackground":"#FC644D","statusBar.noFolderBackground":"#23262E","statusBarItem.activeBackground":"#00e8c5cc","statusBarItem.hoverBackground":"#07d4b5b0","statusBarItem.prominentBackground":"#07d4b5b0","statusBarItem.prominentHoverBackground":"#00e8c5cc","tab.activeBackground":"#23262e","tab.activeBorder":"#00e8c6","tab.activeForeground":"#00e8c6","tab.inactiveBackground":"#23262E","tab.inactiveForeground":"#746f77","terminal.ansiBlue":"#7cb7ff","terminal.ansiBrightBlue":"#7cb7ff","terminal.ansiBrightCyan":"#00e8c6","terminal.ansiBrightGreen":"#96E072","terminal.ansiBrightMagenta":"#ff00aa","terminal.ansiBrightRed":"#ee5d43","terminal.ansiBrightYellow":"#FFE66D","terminal.ansiCyan":"#00e8c6","terminal.ansiGreen":"#96E072","terminal.ansiMagenta":"#ff00aa","terminal.ansiRed":"#ee5d43","terminal.ansiYellow":"#FFE66D","terminalCursor.background":"#23262E","terminalCursor.foreground":"#FFE66D","titleBar.activeBackground":"#23262E","walkThrough.embeddedEditorBackground":"#23262E","widget.shadow":"#14151A"},"displayName":"Andromeeda","name":"andromeeda","semanticTokenColors":{"property.declaration:javascript":"#D5CED9","variable.defaultLibrary:javascript":"#f39c12"},"tokenColors":[{"settings":{"background":"#23262E","foreground":"#D5CED9"}},{"scope":["comment","markup.quote.markdown","meta.diff","meta.diff.header"],"settings":{"foreground":"#A0A1A7cc"}},{"scope":["meta.template.expression.js","constant.name.attribute.tag.jade","punctuation.definition.metadata.markdown","punctuation.definition.string.end.markdown","punctuation.definition.string.begin.markdown","string.unquoted.cmake"],"settings":{"foreground":"#D5CED9"}},{"scope":["variable","support.variable","entity.name.tag.yaml","constant.character.entity.html","source.css entity.name.tag.reference","beginning.punctuation.definition.list.markdown","source.css entity.other.attribute-name.parent-selector","meta.structure.dictionary.json support.type.property-name"],"settings":{"foreground":"#00e8c6"}},{"scope":["markup.bold","constant.numeric","meta.group.regexp","constant.other.php","support.constant.ext.php","constant.other.class.php","support.constant.core.php","fenced_code.block.language","constant.other.caps.python","entity.other.attribute-name","support.type.exception.python","source.css keyword.other.unit","variable.other.object.property.js.jsx","variable.other.object.js"],"settings":{"foreground":"#f39c12"}},{"scope":["markup.list","text.xml string","entity.name.type","support.function","entity.other.attribute-name","meta.at-rule.extend","entity.name.function","entity.other.inherited-class","entity.other.keyframe-offset.css","text.html.markdown string.quoted","meta.function-call.generic.python","meta.at-rule.extend support.constant","entity.other.attribute-name.class.jade","source.css entity.other.attribute-name","text.xml punctuation.definition.string"],"settings":{"foreground":"#FFE66D"}},{"scope":["markup.heading","variable.language.this.js","variable.language.special.self.python"],"settings":{"foreground":"#ff00aa"}},{"scope":["punctuation.definition.interpolation","punctuation.section.embedded.end.php","punctuation.section.embedded.end.ruby","punctuation.section.embedded.begin.php","punctuation.section.embedded.begin.ruby","punctuation.definition.template-expression","entity.name.tag"],"settings":{"foreground":"#f92672"}},{"scope":["storage","keyword","meta.link","meta.image","markup.italic","source.js support.type","support.type"],"settings":{"foreground":"#c74ded"}},{"scope":["string.regexp","markup.changed"],"settings":{"foreground":"#7cb7ff"}},{"scope":["constant","support.class","keyword.operator","support.constant","text.html.markdown string","source.css support.function","source.php support.function","support.function.magic.python","entity.other.attribute-name.id","markup.deleted"],"settings":{"foreground":"#ee5d43"}},{"scope":["string","text.html.php string","markup.inline.raw","markup.inserted","punctuation.definition.string","punctuation.definition.markdown","text.html meta.embedded source.js string","text.html.php punctuation.definition.string","text.html meta.embedded source.js punctuation.definition.string","text.html punctuation.definition.string","text.html string"],"settings":{"foreground":"#96E072"}},{"scope":["entity.other.inherited-class"],"settings":{"fontStyle":"underline"}}],"type":"dark"}`));export{e as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./rolldown-runtime-B0Z9INg1.js";import{t}from"./html-BVyvp26C.js";var n=[Object.freeze(JSON.parse('{"injectionSelector":"L:text.html -comment","name":"angular-expression","patterns":[{"include":"#ngExpression"}],"repository":{"arrayLiteral":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.ts"}},"end":"]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.array.literal.ts","patterns":[{"include":"#ngExpression"},{"include":"#punctuationComma"}]},"booleanLiteral":{"patterns":[{"match":"(?<![$.])\\\\btrue\\\\b(?!\\\\$)","name":"constant.language.boolean.true.ts"},{"match":"(?<![$.])\\\\bfalse\\\\b(?!\\\\$)","name":"constant.language.boolean.false.ts"}]},"expressionOperator":{"patterns":[{"captures":{"1":{"name":"keyword.operator.logical.ts"},"2":{"name":"entity.name.function.pipe.ng"}},"match":"((?<!\\\\|)\\\\|(?!\\\\|))\\\\s?([-$0-9A-Z_a-z]*)"},{"match":"(?<![$.])\\\\b(let)\\\\b(?!\\\\$)","name":"storage.type.ts"},{"match":"(?<![$.])\\\\b(await)\\\\b(?!\\\\$)","name":"keyword.control.flow.ts"},{"match":"(?<![$.])\\\\bdelete\\\\b(?!\\\\$)","name":"keyword.operator.expression.delete.ts"},{"match":"(?<![$.])\\\\bin\\\\b(?!\\\\$)","name":"keyword.operator.expression.in.ts"},{"match":"(?<![$.])\\\\bof\\\\b(?!\\\\$)","name":"keyword.operator.expression.of.ts"},{"match":"(?<![$.])\\\\bif\\\\b(?!\\\\$)","name":"keyword.control.if.ts"},{"match":"(?<![$.])\\\\belse\\\\b(?!\\\\$)","name":"keyword.control.else.ts"},{"match":"(?<![$.])\\\\bthen\\\\b(?!\\\\$)","name":"keyword.control.then.ts"},{"match":"(?<![$.])\\\\binstanceof\\\\b(?!\\\\$)","name":"keyword.operator.expression.instanceof.ts"},{"match":"(?<![$.])\\\\bnew\\\\b(?!\\\\$)","name":"keyword.operator.new.ts"},{"match":"(?<![$.])\\\\bvoid\\\\b(?!\\\\$)","name":"keyword.operator.expression.void.ts"},{"begin":"(?<![$.])\\\\bas\\\\b(?!\\\\$)","beginCaptures":{"0":{"name":"storage.type.as.ts"}},"end":"(?=$|[]\\"\'),:;}])","patterns":[{"include":"#type"}]},{"match":"(?:\\\\*|(?<!\\\\()/|[-%+])=","name":"keyword.operator.assignment.compound.ts"},{"match":"(?:[\\\\&^]|<<|>>>??|\\\\|)=","name":"keyword.operator.assignment.compound.bitwise.ts"},{"match":"<<|>>>?","name":"keyword.operator.bitwise.shift.ts"},{"match":"[!=]==?","name":"keyword.operator.comparison.ts"},{"match":"<=|>=|<>|[<>]","name":"keyword.operator.relational.ts"},{"match":"!|&&|\\\\?\\\\?|\\\\|\\\\|","name":"keyword.operator.logical.ts"},{"match":"[\\\\&^|~]","name":"keyword.operator.bitwise.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"match":"--","name":"keyword.operator.decrement.ts"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.ts"},{"match":"[-%*+/]","name":"keyword.operator.arithmetic.ts"},{"captures":{"1":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[$_[:alnum:]])\\\\s*(/)(?![*/])"},{"include":"#typeofOperator"}]},"functionCall":{"begin":"(?=(\\\\??\\\\.\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(<([^<>]|<[^<>]+>)+>\\\\s*)?\\\\()","end":"(?<=\\\\))(?!(\\\\??\\\\.\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(<([^<>]|<[^<>]+>)+>\\\\s*)?\\\\()","patterns":[{"match":"\\\\?","name":"punctuation.accessor.ts"},{"match":"\\\\.","name":"punctuation.accessor.ts"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.function.ts"},{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#type"},{"include":"#punctuationComma"}]},{"include":"#parenExpression"}]},"functionParameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.ts"}},"name":"meta.parameters.ts","patterns":[{"include":"#decorator"},{"include":"#parameterName"},{"include":"#variableInitializer"},{"match":",","name":"punctuation.separator.parameter.ts"}]},"identifiers":{"patterns":[{"match":"([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*\\\\.\\\\s*prototype\\\\b(?!\\\\$))","name":"support.class.ts"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"constant.other.object.property.ts"},"3":{"name":"variable.other.object.property.ts"}},"match":"([!?]?\\\\.)\\\\s*(?:(\\\\p{upper}[$_\\\\d[:upper:]]*)|([$_[:alpha:]][$_[:alnum:]]*))(?=\\\\s*\\\\.\\\\s*[$_[:alpha:]][$_[:alnum:]]*)"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"entity.name.function.ts"}},"match":"(?:([!?]?\\\\.)\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*=\\\\s*((async\\\\s+)|(function\\\\s*[(<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)|((<([^<>]|<[^<>]+>)+>\\\\s*)?\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)(\\\\s*:\\\\s*(.)*)?\\\\s*=>)))"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"constant.other.property.ts"}},"match":"([!?]?\\\\.)\\\\s*(\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"variable.other.property.ts"}},"match":"([!?]?\\\\.)\\\\s*([$_[:alpha:]][$_[:alnum:]]*)"},{"captures":{"1":{"name":"constant.other.object.ts"},"2":{"name":"variable.other.object.ts"}},"match":"(?:(\\\\p{upper}[$_\\\\d[:upper:]]*)|([$_[:alpha:]][$_[:alnum:]]*))(?=\\\\s*\\\\.\\\\s*[$_[:alpha:]][$_[:alnum:]]*)"},{"match":"(\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])","name":"constant.character.other"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"variable.other.readwrite.ts"}]},"literal":{"name":"literal.ts","patterns":[{"include":"#numericLiteral"},{"include":"#booleanLiteral"},{"include":"#nullLiteral"},{"include":"#undefinedLiteral"},{"include":"#numericConstantLiteral"},{"include":"#arrayLiteral"},{"include":"#thisLiteral"}]},"ngExpression":{"name":"meta.expression.ng","patterns":[{"include":"#string"},{"include":"#literal"},{"include":"#ternaryExpression"},{"include":"#expressionOperator"},{"include":"#functionCall"},{"include":"#identifiers"},{"include":"#parenExpression"},{"include":"#punctuationComma"},{"include":"#punctuationSemicolon"},{"include":"#punctuationAccessor"}]},"nullLiteral":{"match":"(?<![$.])\\\\bnull\\\\b(?!\\\\$)","name":"constant.language.null.ts"},"numericConstantLiteral":{"patterns":[{"match":"(?<![$.])\\\\bNaN\\\\b(?!\\\\$)","name":"constant.language.nan.ts"},{"match":"(?<![$.])\\\\bInfinity\\\\b(?!\\\\$)","name":"constant.language.infinity.ts"}]},"numericLiteral":{"patterns":[{"match":"\\\\b(?<!\\\\$)0([Xx])\\\\h+\\\\b(?!\\\\$)","name":"constant.numeric.hex.ts"},{"match":"\\\\b(?<!\\\\$)0([Bb])[01]+\\\\b(?!\\\\$)","name":"constant.numeric.binary.ts"},{"match":"\\\\\\\\b(?<!\\\\$)0([Oo])?[0-7]+\\\\b(?!\\\\$)","name":"constant.numeric.octal.ts"},{"captures":{"0":{"name":"constant.numeric.decimal.ts"},"1":{"name":"meta.delimiter.decimal.period.ts"},"2":{"name":"meta.delimiter.decimal.period.ts"},"3":{"name":"meta.delimiter.decimal.period.ts"},"4":{"name":"meta.delimiter.decimal.period.ts"},"5":{"name":"meta.delimiter.decimal.period.ts"},"6":{"name":"meta.delimiter.decimal.period.ts"}},"match":"(?<!\\\\$)(?:\\\\b[0-9]+(\\\\.)[0-9]+[Ee][-+]?[0-9]+\\\\b|\\\\b[0-9]+(\\\\.)[Ee][-+]?[0-9]+\\\\b|\\\\B(\\\\.)[0-9]+[Ee][-+]?[0-9]+\\\\b|\\\\b[0-9]+[Ee][-+]?[0-9]+\\\\b|\\\\b[0-9]+(\\\\.)\\\\B|\\\\B(\\\\.)[0-9]+\\\\b|\\\\b[0-9]+\\\\b(?!\\\\.))(?!\\\\$)"}]},"parameterName":{"patterns":[{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.operator.rest.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:\\\\s*\\\\b(readonly)\\\\s+)?(?:\\\\s*\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(\\\\.\\\\.\\\\.)?\\\\s*(?<![:=])([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*((async\\\\s+)|(function\\\\s*[(<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)|((<([^<>]|<[^<>]+>)+>\\\\s*)?\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)(\\\\s*:\\\\s*(.)*)?\\\\s*=>)))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>))))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.operator.rest.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:\\\\s*\\\\b(readonly)\\\\s+)?(?:\\\\s*\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(\\\\.\\\\.\\\\.)?\\\\s*(?<![:=])([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(\\\\??)"}]},"parenExpression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#ngExpression"},{"include":"#punctuationComma"}]},"punctuationAccessor":{"match":"(?:\\\\?|!?)\\\\.","name":"punctuation.accessor.ts"},"punctuationComma":{"match":",","name":"punctuation.separator.comma.ts"},"punctuationSemicolon":{"match":";","name":"punctuation.terminator.statement.ts"},"qstringDouble":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\\")|([^\\\\n\\\\\\\\])$","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.double.ts","patterns":[{"include":"#stringCharacterEscape"}]},"qstringSingle":{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\')|([^\\\\n\\\\\\\\])$","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.single.ts","patterns":[{"include":"#stringCharacterEscape"}]},"string":{"patterns":[{"include":"#qstringSingle"},{"include":"#qstringDouble"},{"include":"#templateLiteral"}]},"stringCharacterEscape":{"match":"\\\\\\\\(x\\\\h{2}|[012][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)","name":"constant.character.escape.ts"},"templateLiteral":{"patterns":[{"include":"#templateLiteralCall"},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#templateLiteralSubstitutionElement"},{"include":"#stringCharacterEscape"}]}]},"templateLiteralCall":{"patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([$_[:alpha:]][$_[:alnum:]]*)(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?`)","end":"(?=`)","patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([$_[:alpha:]][$_[:alnum:]]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.function.tagged-template.ts"}]},{"include":"#typeArguments"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"}},"end":"(?=`)","patterns":[{"include":"#typeArguments"}]}]},"templateLiteralSubstitutionElement":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#ngExpression"}]},"ternaryExpression":{"begin":"(?!\\\\?\\\\.\\\\s*\\\\D)(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#ngExpression"}]},"thisLiteral":{"match":"(?<![$.])\\\\bthis\\\\b(?!\\\\$)","name":"variable.language.this.ts"},"type":{"name":"meta.type.ts","patterns":[{"include":"#string"},{"include":"#numericLiteral"},{"include":"#typeBuiltinLiterals"},{"include":"#typeTuple"},{"include":"#typeObject"},{"include":"#typeOperators"},{"include":"#typeFnTypeParameters"},{"include":"#typeParenOrFunctionParameters"},{"include":"#typeName"}]},"typeAnnotation":{"begin":":","beginCaptures":{"0":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?=$|[]),;}]|//|\\")|(?==[^>])|(?<=[]$)>_}[:alpha:]])\\\\s*(?=\\\\{)","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]},"typeArguments":{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#typeArgumentsBody"}]},"typeArgumentsBody":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(_)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"include":"#type"},{"include":"#punctuationComma"}]},"typeBuiltinLiterals":{"match":"(?<![$.])\\\\b(this|true|false|undefined|null)\\\\b(?!\\\\$)","name":"support.type.builtin.ts"},"typeFnTypeParameters":{"patterns":[{"captures":{"1":{"name":"keyword.control.new.ts"}},"match":"(?<![$.])\\\\b(new)\\\\b(?=\\\\s*<)","name":"meta.type.constructor.ts"},{"begin":"(?<![$.])\\\\b(new)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"keyword.control.new.ts"}},"end":"(?<=\\\\))","name":"meta.type.constructor.ts","patterns":[{"include":"#functionParameters"}]},{"begin":"(?<=>)\\\\s*(?=\\\\()","end":"(?<=\\\\))","include":"#typeofOperator","name":"meta.type.function.ts","patterns":[{"include":"#functionParameters"}]},{"begin":"((?=\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>))))))","end":"(?<=\\\\))","name":"meta.type.function.ts","patterns":[{"include":"#functionParameters"}]}]},"typeName":{"patterns":[{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*([!?]?\\\\.)"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"entity.name.type.ts"}]},"typeObject":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.object.type.ts","patterns":[{"include":"#typeObjectMembers"}]},"typeObjectMembers":{"patterns":[{"include":"#typeAnnotation"},{"include":"#punctuationComma"},{"include":"#punctuationSemicolon"}]},"typeOperators":{"patterns":[{"include":"#typeofOperator"},{"match":"[\\\\&|]","name":"keyword.operator.type.ts"},{"match":"(?<![$.])\\\\bkeyof\\\\b(?!\\\\$)","name":"keyword.operator.expression.keyof.ts"}]},"typeParenOrFunctionParameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.type.paren.cover.ts","patterns":[{"include":"#type"},{"include":"#functionParameters"}]},"typeTuple":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.ts"}},"end":"]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.type.tuple.ts","patterns":[{"include":"#type"},{"include":"#punctuationComma"}]},"typeofOperator":{"match":"(?<![$.])\\\\btypeof\\\\b(?!\\\\$)","name":"keyword.operator.expression.typeof.ts"},"undefinedLiteral":{"match":"(?<![$.])\\\\bundefined\\\\b(?!\\\\$)","name":"constant.language.undefined.ts"},"variableInitializer":{"begin":"(?<![!=])(=)(?!=)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=$|[]),;}])","patterns":[{"include":"#ngExpression"}]}},"scopeName":"expression.ng"}'))],r=Object.freeze(JSON.parse(`{"injectTo":["text.html.derivative","text.html.derivative.ng","source.ts.ng"],"injectionSelector":"L:text.html -comment -expression.ng -meta.tag -source.css -source.js","name":"angular-let-declaration","patterns":[{"include":"#letDeclaration"}],"repository":{"letDeclaration":{"begin":"(@let)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(=)?","beginCaptures":{"1":{"name":"storage.type.ng"},"2":{"name":"variable.other.constant.ng"},"3":{"name":"keyword.operator.assignment.ng"}},"end":"(?<=;)","name":"meta.definition.variable.ng","patterns":[{"include":"#letInitializer"}]},"letInitializer":{"begin":"\\\\s*","beginCaptures":{"0":{"name":"keyword.operator.assignment.ng"}},"contentName":"meta.definition.variable.initializer.ng","end":";","endCaptures":{"0":{"name":"punctuation.terminator.statement.ng"}},"patterns":[{"include":"expression.ng"}]}},"scopeName":"template.let.ng","embeddedLangs":["angular-expression"]}`)),i=[...n,r],a=Object.freeze(JSON.parse(`{"injectTo":["text.html.derivative","text.html.derivative.ng","source.ts.ng"],"injectionSelector":"L:text.html -comment","name":"angular-template","patterns":[{"include":"#interpolation"}],"repository":{"interpolation":{"begin":"\\\\{\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"contentName":"expression.ng","end":"}}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"expression.ng"}]}},"scopeName":"template.ng","embeddedLangs":["angular-expression"]}`)),o=[...n,a],s=Object.freeze(JSON.parse(`{"injectTo":["text.html.derivative","text.html.derivative.ng","source.ts.ng"],"injectionSelector":"L:text.html -comment -expression.ng -meta.tag -source.css -source.js","name":"angular-template-blocks","patterns":[{"include":"#block"}],"repository":{"block":{"begin":"(@)(if|else if|else|defer|placeholder|loading|error|switch|case|default|for|empty)\\\\s*","beginCaptures":{"1":{"patterns":[{"include":"#transition"}]},"2":{"name":"keyword.control.block.kind.ng"}},"end":"(?<=})","name":"control.block.ng","patterns":[{"include":"#blockExpression"},{"include":"#blockBody"}]},"blockBody":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"contentName":"control.block.body.ng","end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"text.html.derivative.ng"},{"include":"template.ng"}]},"blockExpression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"contentName":"control.block.expression.ng","end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#blockExpressionOfClause"},{"include":"#blockExpressionLetBinding"},{"include":"#blockExpressionTrackClause"},{"include":"expression.ng"}]},"blockExpressionLetBinding":{"begin":"\\\\blet\\\\b","beginCaptures":{"0":{"name":"storage.type.ng"}},"end":"(?=[$)])|(?<=;)","patterns":[{"include":"expression.ng"}]},"blockExpressionOfClause":{"begin":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s+(of)\\\\b","beginCaptures":{"1":{"name":"variable.other.constant.ng"},"2":{"name":"keyword.operator.expression.of.ng"}},"end":"(?=[$)])|(?<=;)","patterns":[{"include":"expression.ng"}]},"blockExpressionTrackClause":{"begin":"\\\\btrack\\\\b","beginCaptures":{"0":{"name":"keyword.control.track.ng"}},"end":"(?=[$)])|(?<=;)","patterns":[{"include":"expression.ng"}]},"transition":{"match":"@","name":"keyword.control.block.transition.ng"}},"scopeName":"template.blocks.ng","embeddedLangs":["angular-expression","angular-template"]}`)),c=[...n,...o,s],l=e({default:()=>d}),u=Object.freeze(JSON.parse(`{"displayName":"Angular HTML","injections":{"R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)":{"patterns":[{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"}]}},"name":"angular-html","patterns":[{"include":"text.html.basic#core-minus-invalid"},{"begin":"(</?)(\\\\w[^>\\\\s]*)(?<!/)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"((?: ?/)?>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.unrecognized.html.derivative","patterns":[{"include":"text.html.basic#attribute"}]}],"scopeName":"text.html.derivative.ng","embeddedLangs":["html","angular-expression","angular-let-declaration","angular-template","angular-template-blocks"]}`)),d=[...t,...n,...i,...o,...c,u];export{i as a,o as i,l as n,n as o,c as r,d as t};
|