shioricode 0.4.21 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +39 -5
- package/dist/BunHttpServer-Bfvwsc6z.mjs +370 -0
- package/dist/NodeHttpServer-CSNPDIKf.mjs +4133 -0
- package/dist/bin.cjs +22361 -18883
- package/dist/bin.mjs +22354 -18876
- package/dist/client/assets/ArtifactPanel-1Tg5ZLm5.js +2 -0
- package/dist/client/assets/ChatMarkdown-BvwoXC6z.js +3 -0
- package/dist/client/assets/DiffPanel-D-xp36wD.js +64 -0
- package/dist/client/assets/DiffPanelShell-DdBr4p9c.js +2 -0
- package/dist/client/assets/DiffWorkerPoolProvider--93ReMXi.js +2 -0
- package/dist/client/assets/DockedSidebarResizeHandle-C2HyIoOR.js +2 -0
- package/dist/client/assets/NoActiveThreadState-B_C5Y_aO.js +2 -0
- package/dist/client/assets/ProviderModelPicker-BWTkQW8f.js +2 -0
- package/dist/client/assets/SettingsPanels-DGYlfoWv.js +4 -0
- package/dist/client/assets/_chat-BhqvWJHj.js +2 -0
- package/dist/client/assets/_chat._threadId-Blwb3CRP.js +289 -0
- package/dist/client/assets/_chat.index-oZTnMcB3.js +2 -0
- package/dist/client/assets/assistantPersonalityOptions-35I7ygr6.js +2 -0
- package/dist/client/assets/automations-ChGelqHO.js +2 -0
- package/dist/client/assets/badge-BkzSFcY-.js +2 -0
- package/dist/client/assets/clientSettings--1UP2ayD.js +2 -0
- package/dist/client/assets/collapsible-CqRg_DyH.js +2 -0
- package/dist/client/assets/dialog-C7Ppq2qI.js +2 -0
- package/dist/client/assets/dist-C5QFNSAb.js +1 -0
- package/dist/client/assets/dotm-3x3-1-DNt3xDWl.js +2 -0
- package/dist/client/assets/dotm-3x3-10-BEPO2XGt.js +2 -0
- package/dist/client/assets/dotm-3x3-11-C0tdJ290.js +2 -0
- package/dist/client/assets/dotm-3x3-12-jdh3FFNy.js +2 -0
- package/dist/client/assets/dotm-3x3-13-B4fjfa7T.js +2 -0
- package/dist/client/assets/dotm-3x3-14-Cg2LIaCb.js +2 -0
- package/dist/client/assets/dotm-3x3-15-YweecAOr.js +2 -0
- package/dist/client/assets/dotm-3x3-16--VH62Fxh.js +2 -0
- package/dist/client/assets/dotm-3x3-18-D7yaQ_9P.js +2 -0
- package/dist/client/assets/dotm-3x3-19-TZFiTkAa.js +2 -0
- package/dist/client/assets/dotm-3x3-2-CQTu6XaT.js +2 -0
- package/dist/client/assets/dotm-3x3-20-CtUZV5ao.js +2 -0
- package/dist/client/assets/dotm-3x3-21-BbVSO3wy.js +2 -0
- package/dist/client/assets/dotm-3x3-3-ChFPfySu.js +2 -0
- package/dist/client/assets/dotm-3x3-4-BeZLHcTf.js +2 -0
- package/dist/client/assets/dotm-3x3-5-C00uzVRR.js +2 -0
- package/dist/client/assets/dotm-3x3-6-VpzpA2u6.js +2 -0
- package/dist/client/assets/dotm-3x3-7-B6Y8f5ze.js +2 -0
- package/dist/client/assets/dotm-3x3-8-pu30VS8f.js +2 -0
- package/dist/client/assets/dotm-3x3-9-DmEYSrRj.js +2 -0
- package/dist/client/assets/dotm-circular-1-C2SE8kJ7.js +2 -0
- package/dist/client/assets/dotm-circular-10-BsnMrWY4.js +2 -0
- package/dist/client/assets/dotm-circular-11-_CxMWmqu.js +2 -0
- package/dist/client/assets/dotm-circular-12-BcGZtddU.js +2 -0
- package/dist/client/assets/dotm-circular-13-BHiAa7HM.js +2 -0
- package/dist/client/assets/dotm-circular-14-CrzVNoad.js +2 -0
- package/dist/client/assets/dotm-circular-15-f6X-pfsm.js +2 -0
- package/dist/client/assets/dotm-circular-16-CLtKoM73.js +2 -0
- package/dist/client/assets/dotm-circular-17-D7vHiJsH.js +2 -0
- package/dist/client/assets/dotm-circular-18-CYEFDs4o.js +2 -0
- package/dist/client/assets/dotm-circular-19-DkNDRAJ1.js +2 -0
- package/dist/client/assets/dotm-circular-2-ClO8F6Fo.js +2 -0
- package/dist/client/assets/dotm-circular-20-De-aaHRx.js +2 -0
- package/dist/client/assets/dotm-circular-3-CuNVZVTq.js +2 -0
- package/dist/client/assets/dotm-circular-4-0oUKiWae.js +2 -0
- package/dist/client/assets/dotm-circular-5-BhQb9loH.js +2 -0
- package/dist/client/assets/dotm-circular-6-D9pqQg7b.js +2 -0
- package/dist/client/assets/dotm-circular-7-DMKST3bM.js +2 -0
- package/dist/client/assets/dotm-circular-8-DUzIx6F6.js +2 -0
- package/dist/client/assets/dotm-circular-9-Rpy71Png.js +2 -0
- package/dist/client/assets/dotm-hex-1-DST25vDE.js +2 -0
- package/dist/client/assets/dotm-hex-10-B5_MRSUa.js +2 -0
- package/dist/client/assets/dotm-hex-2-DEt8Ehj3.js +2 -0
- package/dist/client/assets/dotm-hex-3-DI4OeJzc.js +2 -0
- package/dist/client/assets/dotm-hex-4-B8bTBg8v.js +2 -0
- package/dist/client/assets/dotm-hex-5-BHMk4AiZ.js +2 -0
- package/dist/client/assets/dotm-hex-5-aosBXIlg.js +1 -0
- package/dist/client/assets/dotm-hex-6-DLJqVcZZ.js +2 -0
- package/dist/client/assets/dotm-hex-7-Cc5Agkc9.js +2 -0
- package/dist/client/assets/dotm-hex-8-C3B8LVfK.js +2 -0
- package/dist/client/assets/dotm-hex-9-Aaz__Vdu.js +2 -0
- package/dist/client/assets/dotm-square-1-BMp3XqYM.js +2 -0
- package/dist/client/assets/dotm-square-10-Bg1CbdiH.js +2 -0
- package/dist/client/assets/dotm-square-11-CCeLfhIK.js +2 -0
- package/dist/client/assets/dotm-square-12-CvjGJjY5.js +2 -0
- package/dist/client/assets/dotm-square-13-BmX9qeu4.js +2 -0
- package/dist/client/assets/dotm-square-14-D9poakSs.js +2 -0
- package/dist/client/assets/dotm-square-15-0UH3gGNN.js +2 -0
- package/dist/client/assets/dotm-square-16-COHmgy2B.js +2 -0
- package/dist/client/assets/dotm-square-17-DS-W77Qc.js +2 -0
- package/dist/client/assets/dotm-square-18-Ccsu8b1k.js +2 -0
- package/dist/client/assets/dotm-square-19-5ebT2r-P.js +2 -0
- package/dist/client/assets/dotm-square-2-DSK3cRn0.js +2 -0
- package/dist/client/assets/dotm-square-20-DxzWv9kf.js +2 -0
- package/dist/client/assets/dotm-square-3-DCPucSJQ.js +2 -0
- package/dist/client/assets/dotm-square-4-DnG5LB-X.js +2 -0
- package/dist/client/assets/dotm-square-5-BnTOAzyJ.js +2 -0
- package/dist/client/assets/dotm-square-6-BxyO-d55.js +2 -0
- package/dist/client/assets/dotm-square-7-DrWd3L89.js +2 -0
- package/dist/client/assets/dotm-square-8-K5O9wfjk.js +2 -0
- package/dist/client/assets/dotm-square-9-DWJ5Fs8s.js +2 -0
- package/dist/client/assets/dotm-triangle-1-Coa2lfMO.js +2 -0
- package/dist/client/assets/dotm-triangle-10-CUNmY4JS.js +2 -0
- package/dist/client/assets/dotm-triangle-11-DQTbFuzy.js +2 -0
- package/dist/client/assets/dotm-triangle-12-BJpD2MFM.js +2 -0
- package/dist/client/assets/dotm-triangle-13-CqTvPNii.js +2 -0
- package/dist/client/assets/dotm-triangle-14-BDWQhjlG.js +2 -0
- package/dist/client/assets/dotm-triangle-15-CpW9VBme.js +2 -0
- package/dist/client/assets/dotm-triangle-16-BQMSRn_2.js +2 -0
- package/dist/client/assets/dotm-triangle-17-BEEIpZjH.js +2 -0
- package/dist/client/assets/dotm-triangle-18-CubguOUs.js +2 -0
- package/dist/client/assets/dotm-triangle-19-Dm7kh547.js +2 -0
- package/dist/client/assets/dotm-triangle-2-DMj8JSuG.js +2 -0
- package/dist/client/assets/dotm-triangle-20-CWNNUSCs.js +2 -0
- package/dist/client/assets/dotm-triangle-3-D2v5fOgr.js +2 -0
- package/dist/client/assets/dotm-triangle-4-L03yKxeH.js +2 -0
- package/dist/client/assets/dotm-triangle-5-CDDVgRZE.js +2 -0
- package/dist/client/assets/dotm-triangle-6-B5JpN3QH.js +2 -0
- package/dist/client/assets/dotm-triangle-7-DP-4GFg5.js +2 -0
- package/dist/client/assets/dotm-triangle-8-CuIdXTEw.js +2 -0
- package/dist/client/assets/dotm-triangle-9-CZVroDYN.js +2 -0
- package/dist/client/assets/dotmatrix-core-71nPaRVi.css +1 -0
- package/dist/client/assets/dotmatrix-core-CnY83Cc6.js +2 -0
- package/dist/client/assets/empty-CwEqZDMX.js +2 -0
- package/dist/client/assets/gitReactQuery-BBOGuHot.js +2 -0
- package/dist/client/assets/index-BgrJjdw5.css +2 -0
- package/dist/client/assets/index-DvBh1mNh.js +6 -0
- package/dist/client/assets/input-emuaAuIe.js +2 -0
- package/dist/client/assets/pull-requests-xKFO2G81.js +46 -0
- package/dist/client/assets/queuedTurnsStore-I4LoXHLF.js +2 -0
- package/dist/client/assets/scroll-area-kK2XF1gm.js +2 -0
- package/dist/client/assets/separator-CSqq2xHm.js +2 -0
- package/dist/client/assets/settings-C9R1j3GG.js +2 -0
- package/dist/client/assets/settings.appearance-Cac_fbGk.js +2 -0
- package/dist/client/assets/settings.archived-KRU4XARw.js +2 -0
- package/dist/client/assets/settings.computer-use-BL801Zu5.js +2 -0
- package/dist/client/assets/settings.credits-Brx-cGXe.js +30 -0
- package/dist/client/assets/settings.general-BXcV60tY.js +2 -0
- package/dist/client/assets/settings.mcp-DEMm4v5q.js +2 -0
- package/dist/client/assets/settings.mobile-DF1raoba.js +2 -0
- package/dist/client/assets/settings.plugins-CewrpoKP.js +2 -0
- package/dist/client/assets/settings.remote-BufK_lG_.js +2 -0
- package/dist/client/assets/settings.skills-Cz9xy1ba.js +2 -0
- package/dist/client/assets/settings.theme-builder-BU_DRAvo.js +2 -0
- package/dist/client/assets/skillsMcpShared-DxxY1mEt.js +2 -0
- package/dist/client/assets/store-BQMb1nBV.js +12 -0
- package/dist/client/assets/terminalStateStore-C38k-Eaw.js +2 -0
- package/dist/client/assets/textarea-DXuuOfmM.js +2 -0
- package/dist/client/assets/toggle-group-CvAnsecf.js +2 -0
- package/dist/client/assets/toggle-nUm5N7vp.js +2 -0
- package/dist/client/assets/uiStateStore-Di3ieZaJ.js +2 -0
- package/dist/client/assets/useHandleNewThread-WYMZPumx.js +2 -0
- package/dist/client/assets/useSettings-DOuHg9jg.js +2 -0
- package/dist/client/assets/useTheme-Dhz9U3on.js +2 -0
- package/dist/client/assets/utils-B-Di8CjF.js +2 -0
- package/dist/client/assets/vendor--lexical-clipboard-WreJbm08.js +12 -0
- package/dist/client/assets/vendor--lexical-dragon-BWkDBdfg.js +3 -0
- package/dist/client/assets/vendor--lexical-history-BmCIf2Hc.js +2 -0
- package/dist/client/assets/vendor--lexical-plain-text-Dk9Pmo4j.js +2 -0
- package/dist/client/assets/vendor--lexical-react-B6TeCrpE.js +2 -0
- package/dist/client/assets/vendor--pierre-theme-Px6arbTM.js +2 -0
- package/dist/client/assets/vendor--shikijs-core-BvuCEFk2.js +13 -0
- package/dist/client/assets/vendor--shikijs-engine-javascript-9nIWxzwA.js +142 -0
- package/dist/client/assets/vendor--shikijs-engine-oniguruma-CHLjiLaC.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-abap-DcmCbGmK.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-actionscript-3-ZvaN1Eje.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-ada-BxnlQB9p.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-angular-expression-Dprae7Dp.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-angular-html-C6F9WLxK.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-angular-inline-style-CqklzDIJ.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-angular-inline-template-B7jAOWOF.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-angular-ts-C4rQFmjQ.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-apache-DjX2KG_v.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-apex-B0SOJKMe.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-apl-DxLKB1Oy.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-applescript-CdyH1W6p.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-ara-N7qeniUJ.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-asciidoc-DxhxCzfV.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-asm--PKz-Xrb.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-astro-BqICgctf.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-awk-BoyJTXS1.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-ballerina-B1t_jgix.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-bat-DnAb-WeH.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-beancount-1pEG2fPv.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-berry-87paaHOF.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-bibtex-gY4ycEJI.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-bicep-CXMK_JMH.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-bird2-DvRa8xSN.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-blade-CdhrtWLa.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-bsl-BEQAR6p1.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-c-B84hOGb3.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-c3-DdY0UkIF.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-cadence-engRbeCX.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-cairo-1R2FdBtr.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-clarity-BbPJ1xZ9.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-clojure-DHXrm59n.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-cmake-DIASScPf.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-cobol-ClcwQx6v.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-codeowners-BeG0Tpsy.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-codeql-BWwJtpCu.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-coffee-NS15w6Hp.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-common-lisp-DI9GHZ4B.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-coq-CkCNwQHm.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-cpp-Dsk_2ajx.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-crystal-DSY_Cqb7.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-csharp-DPjYAai_.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-csv-Dcu9OHM-.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-cue-DdAsIUq_.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-cypher-CvNgnifp.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-d-DD9QeIRO.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-dart-g77er-Fm.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-dax-BK56aEeP.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-desktop-Cw_ggTPp.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-diff-CwUc-cbM.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-docker-CXFl1ZKG.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-dotenv-BF3dNPuI.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-dream-maker-B_8j7CZ4.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-edge-D3mgVWhq.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-elixir-CzfhRRPs.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-elm-BnGKxU73.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-emacs-lisp-C8lQ5Cys.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-erb-30nzblxd.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-erlang-DmQD-VTE.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-es-tag-css-Clxvdb5O.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-es-tag-glsl-D518Klt8.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-es-tag-html-Bv2aw2HG.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-es-tag-sql-TsG4Kqo4.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-es-tag-xml-BKjnSMVs.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-fennel-Duq5z7sy.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-fish-B-zVLEYF.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-fluent-B5jf2huh.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-fortran-fixed-form-BniplwZY.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-fsharp-B9pQ72f8.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-gdresource-BL4VCefv.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-genie-hb-fhi7_.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-gherkin-q5d2sJfS.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-git-commit-DxbxMXzG.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-git-rebase-CZv991wX.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-gleam-DT_WN53n.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-glimmer-js-Co0Vra8I.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-glimmer-ts-C1gNpwN4.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-gn-BpGe7M-N.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-gnuplot-B51_TE9r.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-go-DpVCD9Rm.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-groovy-CEsci4X4.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-hack-4gKQiLIN.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-handlebars-BK9RBeK5.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-haskell-B7R0Sc46.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-haxe-Cw7nxwNZ.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-hcl-9TjRcJDH.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-hjson-DLy9Vr8T.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-hlsl-BNX0W3Ib.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-http-DLEq8L0H.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-hurl-BQP57wtq.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-hxml-CRBUtkcU.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-hy-DIOTTcV0.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-imba-CNfQ52HL.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-ini-BSfza1Xx.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-jinja-Uo-X_YtF.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-jison-CJ9CPTG4.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-json5-Bc08xGQv.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-jsonc-BcyOaQJF.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-jsonl-B2usOWtF.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-jsonnet-CaUzUtyK.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-jssm-DN9FM-mQ.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-julia-B6pYszi2.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-just-2JwvQzCJ.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-kdl-BNCf1fUs.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-kotlin-Cit00xyO.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-kusto-DuhrCHoo.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-latex-DcJyxYUc.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-lean--NrjGoXR.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-less-Brj1eAno.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-liquid-BolSDsn0.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-llvm-TsGF-VFU.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-log-CHQ3qbpC.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-logo-BI2ph7cn.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-luau-B3F47Y-D.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-make-BW4SZZOv.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-markdown-nix-1e37lYOS.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-markdown-vue-zRfmoy2v.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-marko-DgdnBlTD.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-matlab-RIhykqW8.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-mdc-CT9kpZzP.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-mdx-B-9u_aNs.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-mermaid-D1WFFBbN.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-mipsasm-BFzuWDRo.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-mojo-BiMshWPo.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-moonbit-GCYiMXbo.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-move-hL67V-g-.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-narrat-DKIzQf9n.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-nextflow-yQisqiWM.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-nginx-C-MschKO.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-nim-BK5y7eK8.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-nix-DpTLstXt.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-nushell-BhAGI5Hf.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-objective-c-CR25pWPI.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-objective-cpp-BSWp9ibZ.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-ocaml-C4O6Rc2J.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-odin-76dqxdA8.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-openscad-BU0mCPRi.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-pascal-B-d7BmeZ.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-php-BhoNqx4_.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-pkl-oOoND5HD.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-plsql-AxOCqqS5.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-po-BwnTwIg-.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-polar-DLALCWIL.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-powerquery-Dx2OIuJ-.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-powershell-D8lFG1SQ.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-prisma-DGRuUehv.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-prolog-BM8w4oH9.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-proto-CU4wTAg2.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-pug-BobDkxQt.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-puppet-BtytIIdU.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-purescript-CMQO87R1.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-qml-flzbuy_B.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-qmldir--hWbLfBm.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-qss-gVK-i6VT.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-racket-CYsJlK0D.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-raku-CIvCNwUx.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-razor-CPyN7Eol.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-reg-B8kYDtZf.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-rel-CiHTZwO5.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-riscv-DHozEfLK.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-ron-t5DMYF2X.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-rosmsg-C1g3u2M7.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-rst-BRqxdg93.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-rust-ByaVAE1I.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-sas-BZiNrVCS.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-sass-C4a6Xqej.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-scala-CZimREdo.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-scheme-DwKnDgZ7.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-shaderlab-BNfPkJiH.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-shellsession-U-GfB0fl.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-smalltalk-DxyGOhae.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-solidity-fRv_Eweb.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-soy-DHqfKVC3.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-sparql-jsFBb2QI.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-splunk--Cp0P2vO.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-ssh-config-B863wQOJ.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-stata-BExUf06x.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-stylus-CYmGkv2A.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-surrealql-CdfW_9zD.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-svelte-B8mwaR7i.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-swift-BSC65jxu.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-system-verilog-64uFtNK_.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-systemd-DgjacZbI.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-talonscript-By6u-shi.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-tasl-C_wKwViL.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-tcl-Cam-eKgc.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-templ-CpE9Egbs.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-terraform-DBAwK290.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-toml-mWKqsjoL.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-ts-tags-kvFyldjK.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-tsv-gXntOUK3.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-twig-BLvpHZjM.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-typespec-BZxEfIGT.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-typst-BnWmVy2d.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-v-Bw8Y_5kN.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-vala-DHCCZHej.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-vb-B_-vRNpM.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-verilog-BnaVi7hU.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-vhdl-DlPso0IQ.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-viml-B6kEclaH.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-vue-Dtz6EGmH.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-vue-html-CmkloXDU.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-vue-vine-Blr8oEhH.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-vyper-DemEdTg5.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-wasm-DnHAa75f.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-wenyan-8vzCY0x3.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-wgsl-BZaATzM9.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-wikitext-CCcw801U.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-wit-BcpT3wK7.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-wolfram-B3xGRZA7.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-xsl-T2oJ1VbC.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-zenscript-DkZTGffr.js +2 -0
- package/dist/client/assets/vendor--shikijs-langs-zig-Br6uK_ah.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-andromeeda-B-c6mSfY.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-aurora-x-YJPUjQ8z.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-ayu-dark-B5HBM2pY.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-ayu-light-Vhe-tFC6.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-ayu-mirage-Cw56ZP9G.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-catppuccin-frappe-BkwJ1o_i.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-catppuccin-latte-BvTeiqdy.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-catppuccin-macchiato-CsGVBdWW.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-catppuccin-mocha-BBgq3Ffg.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-dark-plus-Cuyj7uR8.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-dracula-41hkrd50.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-dracula-soft-BfVG0jpE.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-everforest-dark-BWuvbIAP.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-everforest-light-DUZxDXGC.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-github-dark-DAJ3HLga.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-github-dark-default-B3-xw3fX.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-github-dark-dimmed-BG9m8GbM.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-github-dark-high-contrast-Bo9r6hZr.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-github-light-BnN1FFfM.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-github-light-default-CzW_9lG4.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-github-light-high-contrast-iTl7yrZj.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-gruvbox-dark-hard-qeLwdEjA.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-gruvbox-dark-medium-B74n19aL.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-gruvbox-dark-soft-B8NFTx3O.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-gruvbox-light-hard-CnfgSb0d.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-gruvbox-light-medium-BOm4-i1Q.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-gruvbox-light-soft-oOGe5GCc.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-horizon-ChFb-N-I.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-horizon-bright-2DrxdAAC.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-houston-BoXkOxJ4.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-kanagawa-dragon-DO9NO4Bu.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-kanagawa-lotus-C-KkmG1-.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-kanagawa-wave-Dd7wWLhx.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-laserwave-C6j3dmsE.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-light-plus-p_dpmCBw.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-material-theme-DxDhU6PB.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-material-theme-darker-DghDOrX_.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-material-theme-lighter-B8lK9I4D.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-material-theme-ocean-B6Yj_C_U.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-material-theme-palenight-CWVefu5Y.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-min-dark-A3Fh8l1q.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-min-light-CElND9HJ.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-monokai-CFJYL84Y.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-night-owl-D5Jim-kU.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-night-owl-light-BtL8Tsoy.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-nord-BuWJGjqO.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-one-dark-pro-Qsb1XdMv.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-one-light-Cn7QfkXU.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-plastic-CLaYk0hw.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-poimandres-DaOe_6tx.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-red-CRFW6xJ8.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-rose-pine-dawn-BLdq3-mG.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-rose-pine-ePuQCUnX.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-rose-pine-moon-B89t1tQH.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-slack-dark-bux3HTif.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-slack-ochin-uyL-MKTn.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-snazzy-light-C8tCBvDQ.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-solarized-dark-DQSHUedi.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-solarized-light-CPmhbNnx.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-synthwave-84-Bqs5NQzq.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-tokyo-night-5XH44-rr.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-vesper-DCLCHfED.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-vitesse-black-CgMYzcNB.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-vitesse-dark-BVvaedJ3.js +2 -0
- package/dist/client/assets/vendor--shikijs-themes-vitesse-light-DuGEe3es.js +2 -0
- package/dist/client/assets/vendor--shikijs-transformers-llbiZRed.js +2 -0
- package/dist/client/assets/vendor--ungap-structured-clone-gq95-Rac.js +2 -0
- package/dist/client/assets/vendor--xterm-addon-fit-DakFApj0.js +2 -0
- package/dist/client/assets/vendor-bail-DhrDEj3K.js +2 -0
- package/dist/client/assets/vendor-decode-named-character-reference-BSa-H5E1.js +2 -0
- package/dist/client/assets/vendor-devlop-CczaZgST.js +2 -0
- package/dist/client/assets/vendor-diff-BC6ceXD2.js +14 -0
- package/dist/client/assets/vendor-diffs-TCBcYN7E.js +1777 -0
- package/dist/client/assets/vendor-entities-DUknvTjV.js +2 -0
- package/dist/client/assets/vendor-escape-string-regexp-p5L46G1N.js +2 -0
- package/dist/client/assets/vendor-estree-util-is-identifier-name-DorDRIRc.js +2 -0
- package/dist/client/assets/vendor-extend-BW3CRMi7.js +2 -0
- package/dist/client/assets/vendor-hast-util-from-dom-au1lVC4c.js +2 -0
- package/dist/client/assets/vendor-hast-util-from-html-isomorphic-K8KOY4Zz.js +2 -0
- package/dist/client/assets/vendor-hast-util-from-parse5-DmgJK_2_.js +3 -0
- package/dist/client/assets/vendor-hast-util-is-element-D35XnMcP.js +2 -0
- package/dist/client/assets/vendor-hast-util-raw-DrJxi__t.js +2 -0
- package/dist/client/assets/vendor-hast-util-to-jsx-runtime-Cj_7lYX5.js +3 -0
- package/dist/client/assets/vendor-hast-util-to-text-dhtewVzz.js +4 -0
- package/dist/client/assets/vendor-html-url-attributes-D4rN65P3.js +2 -0
- package/dist/client/assets/vendor-is-plain-obj-BHbCDlbd.js +2 -0
- package/dist/client/assets/vendor-katex-C_40Fys8.js +258 -0
- package/dist/client/assets/vendor-longest-streak-CMXHzExg.js +2 -0
- package/dist/client/assets/vendor-markdown-DHoMS86o.js +33 -0
- package/dist/client/assets/vendor-motion-dom-B1NO2AyA.js +2 -0
- package/dist/client/assets/vendor-qrcode-generator-BI2MWdJH.js +4 -0
- package/dist/client/assets/vendor-react-icons-DMjx4moa.js +2 -0
- package/dist/client/assets/vendor-rehype-katex-Cslyo582.js +2 -0
- package/dist/client/assets/vendor-rehype-raw-CztSeCAV.js +2 -0
- package/dist/client/assets/vendor-remark-math-MaPo0twq.js +2 -0
- package/dist/client/assets/vendor-shiki-CSULnrRc.js +2 -0
- package/dist/client/assets/vendor-tanstack-CM5SpFmF.js +5 -0
- package/dist/client/assets/vendor-ui-DmvKhMzf.js +25 -0
- package/dist/client/index.html +30 -28
- package/package.json +2 -2
- package/dist/BunHttpServer-B_KPsEV1.mjs +0 -370
- package/dist/NodeHttpServer-DdGTnpiS.mjs +0 -4133
- package/dist/client/assets/ArtifactPanel-CdR4rtqI.js +0 -2
- package/dist/client/assets/ChatMarkdown-LC7VQG0i.js +0 -3
- package/dist/client/assets/DiffPanel-Dj0UZJm3.js +0 -64
- package/dist/client/assets/DiffPanelShell-xseg5JQo.js +0 -2
- package/dist/client/assets/DiffWorkerPoolProvider-D6XJdZWI.js +0 -2
- package/dist/client/assets/DockedSidebarResizeHandle-DkVhNVa1.js +0 -2
- package/dist/client/assets/NoActiveThreadState-CQmuWJhb.js +0 -2
- package/dist/client/assets/ProviderModelPicker-Bze2CcYx.js +0 -2
- package/dist/client/assets/SettingsPanels-DqCqBUI7.js +0 -4
- package/dist/client/assets/_chat-CKouNPVs.js +0 -2
- package/dist/client/assets/_chat._threadId-CU4xs7Dd.js +0 -289
- package/dist/client/assets/_chat.index-20AQsDPh.js +0 -2
- package/dist/client/assets/assistantPersonalityOptions-BnBdEssM.js +0 -2
- package/dist/client/assets/automations-CWJGpvWf.js +0 -2
- package/dist/client/assets/badge-1VUDnpuQ.js +0 -2
- package/dist/client/assets/clientSettings-5THztvzS.js +0 -2
- package/dist/client/assets/collapsible--nYYN5Zg.js +0 -2
- package/dist/client/assets/dialog-BzCtORYk.js +0 -2
- package/dist/client/assets/dist-DNQcGyCm.js +0 -1
- package/dist/client/assets/empty-DrPVL67l.js +0 -2
- package/dist/client/assets/gitReactQuery-Be_6T0Ee.js +0 -2
- package/dist/client/assets/index-B58EBW6O.js +0 -6
- package/dist/client/assets/index-Cr2B1Z-_.css +0 -2
- package/dist/client/assets/input-DWDmgkdY.js +0 -2
- package/dist/client/assets/pull-requests-Doz3BMXH.js +0 -46
- package/dist/client/assets/queuedTurnsStore-CIDk30NZ.js +0 -2
- package/dist/client/assets/scroll-area-CFMQ9e4_.js +0 -2
- package/dist/client/assets/separator-BdZ-ET3V.js +0 -2
- package/dist/client/assets/settings-BGn4mjTS.js +0 -2
- package/dist/client/assets/settings.appearance-Ckvmtwdi.js +0 -2
- package/dist/client/assets/settings.archived-2t5UQQrc.js +0 -2
- package/dist/client/assets/settings.computer-use-Dfj_6GTK.js +0 -2
- package/dist/client/assets/settings.credits-BUY8PBTc.js +0 -30
- package/dist/client/assets/settings.general-Bvydzs1m.js +0 -2
- package/dist/client/assets/settings.mcp-Byoxze4F.js +0 -2
- package/dist/client/assets/settings.mobile-BUu4CP8r.js +0 -2
- package/dist/client/assets/settings.plugins-CAvGUyw-.js +0 -2
- package/dist/client/assets/settings.remote-BaGj1Eao.js +0 -2
- package/dist/client/assets/settings.skills-B-UfH45M.js +0 -2
- package/dist/client/assets/settings.theme-builder-DYn2dp1p.js +0 -2
- package/dist/client/assets/skillsMcpShared-RFZJX9uG.js +0 -2
- package/dist/client/assets/store-KYb5gyLf.js +0 -12
- package/dist/client/assets/terminalStateStore-DBL14uZB.js +0 -2
- package/dist/client/assets/textarea-CeNMtAmc.js +0 -2
- package/dist/client/assets/toggle-BR_nJmIu.js +0 -2
- package/dist/client/assets/toggle-group-Tr8y9Pwx.js +0 -2
- package/dist/client/assets/uiStateStore-CC1coFoR.js +0 -2
- package/dist/client/assets/useHandleNewThread-CRjy_n7m.js +0 -2
- package/dist/client/assets/useSettings-CvQQz7AW.js +0 -2
- package/dist/client/assets/useTheme-D0lWhUH9.js +0 -2
- package/dist/client/assets/utils-D1UgimcN.js +0 -2
- package/dist/client/assets/vendor--lexical-clipboard-DCk1K_zj.js +0 -12
- package/dist/client/assets/vendor--lexical-dragon-M1lgHzh4.js +0 -3
- package/dist/client/assets/vendor--lexical-history-CPhYRzwL.js +0 -2
- package/dist/client/assets/vendor--lexical-plain-text-DQrkEZNZ.js +0 -2
- package/dist/client/assets/vendor--lexical-react-Dg6NVZQt.js +0 -2
- package/dist/client/assets/vendor--pierre-theme-BqjYxgTW.js +0 -2
- package/dist/client/assets/vendor--shikijs-core-BAnPeRVm.js +0 -13
- package/dist/client/assets/vendor--shikijs-engine-javascript-DmYKhP_-.js +0 -142
- package/dist/client/assets/vendor--shikijs-engine-oniguruma-BDZnigcB.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-abap-M23ryfn9.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-actionscript-3-BD5kvI6v.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-ada-qu3EGCeA.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-angular-expression-Bb0NlclD.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-angular-html-BVz5jIRE.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-angular-inline-style-CXXjnGFM.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-angular-inline-template-PI88mjwZ.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-angular-ts-BOh6qyRZ.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-apache-BAfhHC-h.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-apex-C4LBVt3N.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-apl-BBkFvwAF.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-applescript-DgpjVdNA.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-ara-Cv65SFCF.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-asciidoc-Dvf_KF_t.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-asm-C-dKflhp.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-astro-Bn_nWK70.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-awk-CViFEtMx.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-ballerina-BMeV1Fw-.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-bat-DFg3dfFC.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-beancount-DSCGKbCl.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-berry-BCZG-tTT.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-bibtex-YiSZ96C1.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-bicep-BVYis31i.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-bird2-DfBptrdS.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-blade-3gbFo0pY.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-bsl-BPBVye1_.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-c-B3kctpau.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-c3-CauC6i11.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-cadence-B0XPUJ81.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-cairo-lEm-3fXi.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-clarity-Drfe_5R5.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-clojure-D0ATT0p6.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-cmake-ChmqiQAL.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-cobol-Bldlgrni.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-codeowners-CAlq8EM3.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-codeql-TN6fTWXc.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-coffee-Baw2cmIc.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-common-lisp-CCQA_bKA.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-coq-EHVulUZc.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-cpp-R4Fc4fG4.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-crystal-D3Bl3uNi.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-csharp-BbA_ksBP.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-csv-CEgnh3_m.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-cue-OUj7ciok.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-cypher-2QonYoVe.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-d-DTqYmm1f.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-dart-ZsDlLgOr.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-dax-FBhyY7Ce.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-desktop-CfKkeSq5.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-diff-D7JELD0_.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-docker-Bm53hIPh.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-dotenv-pW_eoP5x.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-dream-maker-RyNI5DJS.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-edge-BHOOVwds.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-elixir-CtGbQgM4.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-elm-DbMOFydP.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-emacs-lisp-CFHoVk9V.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-erb-3Q2SxhLM.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-erlang-CjgFXHIB.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-es-tag-css-BgIhdHvt.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-es-tag-glsl-DSCx8ySb.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-es-tag-html-DdF18EVz.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-es-tag-sql-B3ArDlnC.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-es-tag-xml-CJ28ww2b.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-fennel-9hmtT2ll.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-fish-DxXZiQJM.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-fluent-DY3si0WH.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-fortran-fixed-form-ES8pePfx.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-fsharp-UjhxyjSp.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-gdresource-D3ywXdtE.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-genie-SGQyPX98.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-gherkin-CZee9jD6.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-git-commit-D2Yl0yDL.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-git-rebase-DvdvBUG7.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-gleam-DHaiFvSa.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-glimmer-js-CNgh52fG.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-glimmer-ts-B7WERoCC.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-gn-vBoxHsTs.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-gnuplot-BBDGBlwU.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-go-D4qJ1Ial.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-groovy-B0HIA74w.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-hack-DNin4P05.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-handlebars-CwjKFd5F.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-haskell-CA0FrtN5.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-haxe-CwOM3tuS.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-hcl-B5yTsKjI.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-hjson-C1eNMzAY.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-hlsl-DCKyy7p_.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-http-DKaJERg1.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-hurl-DLzh2jLx.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-hxml-C57NdJsz.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-hy-CnKdf-kZ.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-imba-bZIHewME.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-ini-CXndjnC2.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-jinja-BpdgZ3bZ.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-jison-DjPWX2oY.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-json5-BeBM_l39.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-jsonc-DlImpako.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-jsonl-TgC-pjtk.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-jsonnet-CeADe9O8.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-jssm-AqRfwZ5V.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-julia-CrRQEyQB.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-just-DfatXtxY.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-kdl-D4X_DrdX.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-kotlin-YwHESrIc.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-kusto-BBIMTH5f.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-latex-DmES95lZ.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-lean-BEujkO91.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-less-B1zMmXgJ.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-liquid-DyrPgnB-.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-llvm-DJORPudy.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-log-BviG1WpR.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-logo-DR3vtyBT.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-luau-CzDq6A3l.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-make-Dzzm7x7s.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-markdown-nix-DAzfFICR.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-markdown-vue-DUuZn2lF.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-marko-BPbTvBwT.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-matlab-CpHEr3YY.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-mdc-Bo7QSvVQ.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-mdx-DkEqNKn8.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-mermaid-DuKkNTZp.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-mipsasm-EyGuVDFn.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-mojo-D0Ygvv43.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-moonbit-Dwo62KeG.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-move-eyT6_cPt.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-narrat-BfCL2Ft2.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-nextflow-BOI1RN3M.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-nginx-hWU8SWXM.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-nim-B65diT4I.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-nix-C4lyWPql.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-nushell-BYVWTqXd.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-objective-c-CpMTS_Js.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-objective-cpp-S-T4sy0p.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-ocaml-Cl4IrLz7.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-odin-KOB8Q8Bm.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-openscad-6THVqo2-.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-pascal-D66KHu7t.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-php-CAOA9sQN.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-pkl-DIwBBFru.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-plsql-B7IrBQsf.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-po-DvVZ7MBw.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-polar-BnAd8wmi.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-powerquery-DGQhLIHU.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-powershell-QosasV6_.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-prisma-DV29a_aw.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-prolog-BKnN9LYA.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-proto-ZBEpRTcl.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-pug-BilcrfxA.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-puppet-B6quVxC3.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-purescript-DcPQMOAb.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-qml-Cb64CV_x.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-qmldir-D5VB_y3D.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-qss-6hcG9MFc.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-racket-CLJfYkrI.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-raku-caAPUlYX.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-razor-MSYjwJ4S.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-reg-B0lcwnkt.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-rel-Rkp2NdPG.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-riscv-BWcllNO8.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-ron-B4Qgm4dc.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-rosmsg-D_8pSj_m.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-rst-BcK5xkVC.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-rust-BWbyTSk0.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-sas-DouC4v3l.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-sass-CXs-zyRy.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-scala-8XUZ7UFo.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-scheme-BQ_dJ_qx.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-shaderlab-ApVOP38O.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-shellsession-BErVmRSk.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-smalltalk-CUfozAOL.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-solidity-BeCW_eh2.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-soy-BHVaT22t.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-sparql-DeQ4D9kB.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-splunk-B6oR3fdW.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-ssh-config-CvLm3efS.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-stata-iXWNDDoP.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-stylus-01aTRig6.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-surrealql-QCVqJ0b3.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-svelte-ByGgQUG3.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-swift-D2qviZjn.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-system-verilog-BQhPNpV1.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-systemd-B2zxbhys.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-talonscript-BFQKTLbf.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-tasl-CjL1p0_1.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-tcl-XWXINywr.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-templ-l5SBpIN3.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-terraform-DN1KWXQI.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-toml-CCNYIT6f.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-ts-tags-BIdvBx1T.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-tsv-D2RzOSAs.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-twig-CAzOlZrI.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-typespec-BuhkHXIa.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-typst-EuHWMe1I.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-v-QImb2O5R.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-vala-ZbOWvTdB.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-vb-963yiWmh.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-verilog-B2jw8mKy.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-vhdl-BrJK1VDe.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-viml-C8TSeNgT.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-vue-DbIFMi28.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-vue-html-BXcyghbH.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-vue-vine-BXiOV7FZ.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-vyper-BEG-tdoQ.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-wasm-C9auNtLR.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-wenyan-CVNKYyqq.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-wgsl-CPv2JETM.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-wikitext-Dj5USDAt.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-wit-BgVKv1BB.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-wolfram-CzDsO-cu.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-xsl-wm8OVNsA.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-zenscript-Bhc_9F_A.js +0 -2
- package/dist/client/assets/vendor--shikijs-langs-zig-Dp6yHgul.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-andromeeda-B39Cct_V.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-aurora-x-tYBwgIas.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-ayu-dark-Bl5_65r5.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-ayu-light-CWlkmCUt.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-ayu-mirage-BLlWY2r-.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-catppuccin-frappe-BgV9gMz6.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-catppuccin-latte-2thKPRi4.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-catppuccin-macchiato-DgXBiWe_.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-catppuccin-mocha-DZP-iRXh.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-dark-plus-BtsdPNnC.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-dracula-soft-C6jQtqBj.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-dracula-xd4eCttF.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-everforest-dark-CGqzgmus.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-everforest-light-IrtgcSp6.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-github-dark-B_EVv_qp.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-github-dark-default-CqTiwZQ3.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-github-dark-dimmed-eJmmb2XY.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-github-dark-high-contrast-DJvMMBP5.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-github-light-4hvO5uJm.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-github-light-default-CBrNN1u4.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-github-light-high-contrast-c_bCxsPW.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-gruvbox-dark-hard-DelJt3Tq.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-gruvbox-dark-medium-oVEQkq8o.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-gruvbox-dark-soft-DRe-W3U7.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-gruvbox-light-hard-D6BXuRGs.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-gruvbox-light-medium-ca45Xt_L.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-gruvbox-light-soft-CpXm-FGd.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-horizon-bright-Or6QNCPB.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-horizon-nPlGoZbS.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-houston-KdRpxxrq.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-kanagawa-dragon-_EB90QZV.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-kanagawa-lotus-xVRS22aC.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-kanagawa-wave-ldKb7Lt2.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-laserwave-Bt57ZEQ1.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-light-plus-sAZL5xfv.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-material-theme-Dt6ngFPz.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-material-theme-darker-CCQckQh4.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-material-theme-lighter-Dood4HQY.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-material-theme-ocean-BvJks6C_.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-material-theme-palenight-CzUtRxKt.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-min-dark-De9MHvAK.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-min-light-CeOpF5bK.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-monokai-HYI9nkM5.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-night-owl-0zoYfhxX.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-night-owl-light-DqU4eQSx.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-nord-NeXJGOqb.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-one-dark-pro-CEkf50X_.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-one-light-C5SeL1pj.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-plastic-BJXzEa6N.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-poimandres-B8wUpJ6-.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-red-DfmVRHmT.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-rose-pine-W7PApUhA.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-rose-pine-dawn-CO9NROH7.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-rose-pine-moon-CzBfEEsz.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-slack-dark-Cp7DV95Y.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-slack-ochin-B9L1eHX2.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-snazzy-light-CJ6h0FEK.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-solarized-dark-BaTg99uq.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-solarized-light-DEYuXd25.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-synthwave-84-D3yVdrOJ.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-tokyo-night-CwyyylqG.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-vesper-CnfqnxS1.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-vitesse-black-DdH7Qydw.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-vitesse-dark-BVKIyd9G.js +0 -2
- package/dist/client/assets/vendor--shikijs-themes-vitesse-light-CH7k5Zx0.js +0 -2
- package/dist/client/assets/vendor--shikijs-transformers-BGbD80GE.js +0 -2
- package/dist/client/assets/vendor--ungap-structured-clone-Cizgq48a.js +0 -2
- package/dist/client/assets/vendor--xterm-addon-fit-2SkXNpWc.js +0 -2
- package/dist/client/assets/vendor-bail-DslLbDNc.js +0 -2
- package/dist/client/assets/vendor-decode-named-character-reference-D4JeqJXO.js +0 -2
- package/dist/client/assets/vendor-devlop-B6gNJmK1.js +0 -2
- package/dist/client/assets/vendor-diff-JjX2GAnZ.js +0 -14
- package/dist/client/assets/vendor-diffs-CBk6gACd.js +0 -1777
- package/dist/client/assets/vendor-entities-BPEYRqUt.js +0 -2
- package/dist/client/assets/vendor-escape-string-regexp-CIAWGUO4.js +0 -2
- package/dist/client/assets/vendor-estree-util-is-identifier-name-DNVaWizQ.js +0 -2
- package/dist/client/assets/vendor-extend-BluXZM4M.js +0 -2
- package/dist/client/assets/vendor-hast-util-from-dom-D6Kxj_46.js +0 -2
- package/dist/client/assets/vendor-hast-util-from-html-isomorphic-CXMxlE2r.js +0 -2
- package/dist/client/assets/vendor-hast-util-from-parse5-CcT-aLaC.js +0 -3
- package/dist/client/assets/vendor-hast-util-is-element-CqD06dHC.js +0 -2
- package/dist/client/assets/vendor-hast-util-raw-ryote2N_.js +0 -2
- package/dist/client/assets/vendor-hast-util-to-jsx-runtime-Dkh1YHjw.js +0 -3
- package/dist/client/assets/vendor-hast-util-to-text-B8A4M-9u.js +0 -4
- package/dist/client/assets/vendor-html-url-attributes-CbutxRIG.js +0 -2
- package/dist/client/assets/vendor-is-plain-obj-1mGkbioL.js +0 -2
- package/dist/client/assets/vendor-katex-VTL7DqQH.js +0 -258
- package/dist/client/assets/vendor-longest-streak-BaNpuKju.js +0 -2
- package/dist/client/assets/vendor-markdown-0FVMTLPP.js +0 -33
- package/dist/client/assets/vendor-motion-dom-ChuUZHv5.js +0 -2
- package/dist/client/assets/vendor-qrcode-generator-CJtPPqPY.js +0 -4
- package/dist/client/assets/vendor-react-icons-DzNJMww6.js +0 -2
- package/dist/client/assets/vendor-rehype-katex-C9b0nLo5.js +0 -2
- package/dist/client/assets/vendor-rehype-raw-YN9Ua-2h.js +0 -2
- package/dist/client/assets/vendor-remark-math-lcIzMrmT.js +0 -2
- package/dist/client/assets/vendor-shiki-BWANXXDP.js +0 -2
- package/dist/client/assets/vendor-tanstack-DxB_J8A7.js +0 -5
- package/dist/client/assets/vendor-ui-CJZCHXkp.js +0 -25
- package/dist/client/assets/vendor-unicode-animations-xZRLz3EO.js +0 -2
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{t as e}from"./vendor-react-BvVnE5E6.js";import{c as t}from"./vendor--lexical-react-B6TeCrpE.js";import{t as n}from"./utils-B-Di8CjF.js";import{Et as r}from"./vendor-ui-DmvKhMzf.js";var i=e(),a=t();function o(e){let t=(0,i.c)(23),o,s,c,l,u;t[0]===e?(o=t[1],s=t[2],c=t[3],l=t[4],u=t[5]):({className:o,size:c,unstyled:l,nativeInput:u,...s}=e,t[0]=e,t[1]=o,t[2]=s,t[3]=c,t[4]=l,t[5]=u);let d=c===void 0?`default`:c,f=l===void 0?!1:l,p=u===void 0?!1:u,m=d===`sm`&&`h-7.5 px-[calc(--spacing(2.5)-1px)] leading-7.5 sm:h-6.5 sm:leading-6.5`,h=d===`lg`&&`h-9.5 leading-9.5 sm:h-8.5 sm:leading-8.5`,g=s.type===`search`&&`[&::-webkit-search-cancel-button]:appearance-none [&::-webkit-search-decoration]:appearance-none [&::-webkit-search-results-button]:appearance-none [&::-webkit-search-results-decoration]:appearance-none`,_=s.type===`file`&&`text-muted-foreground file:me-3 file:bg-transparent file:font-medium file:text-foreground file:text-sm`,v;t[6]!==m||t[7]!==h||t[8]!==g||t[9]!==_?(v=n(`h-8.5 w-full min-w-0 rounded-[inherit] px-[calc(--spacing(3)-1px)] leading-8.5 outline-none placeholder:text-muted-foreground/72 sm:h-7.5 sm:leading-7.5 [transition:background-color_5000000s_ease-in-out_0s]`,m,h,g,_),t[6]=m,t[7]=h,t[8]=g,t[9]=_,t[10]=v):v=t[10];let y=v,b;t[11]!==o||t[12]!==f?(b=n(!f&&`relative inline-flex w-full rounded-lg border border-input bg-background not-dark:bg-clip-padding text-base text-foreground shadow-xs/5 ring-ring/24 transition-shadow before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-lg)-1px)] not-has-disabled:not-has-focus-visible:not-has-aria-invalid:before:shadow-[0_1px_--theme(--color-black/4%)] has-focus-visible:has-aria-invalid:border-destructive/64 has-focus-visible:has-aria-invalid:ring-destructive/16 has-aria-invalid:border-destructive/36 has-focus-visible:border-ring has-autofill:bg-foreground/4 has-disabled:opacity-64 has-[:disabled,:focus-visible,[aria-invalid]]:shadow-none has-focus-visible:ring-[3px] sm:text-sm dark:bg-input/32 dark:has-autofill:bg-foreground/8 dark:has-aria-invalid:ring-destructive/24 dark:not-has-disabled:not-has-focus-visible:not-has-aria-invalid:before:shadow-[0_-1px_--theme(--color-white/6%)]`,o)||void 0,t[11]=o,t[12]=f,t[13]=b):b=t[13];let x;t[14]!==y||t[15]!==p||t[16]!==s||t[17]!==d?(x=p?(0,a.jsx)(`input`,{className:y,"data-slot":`input`,size:typeof d==`number`?d:void 0,...s}):(0,a.jsx)(r,{className:y,"data-slot":`input`,size:typeof d==`number`?d:void 0,...s}),t[14]=y,t[15]=p,t[16]=s,t[17]=d,t[18]=x):x=t[18];let S;return t[19]!==d||t[20]!==x||t[21]!==b?(S=(0,a.jsx)(`span`,{className:b,"data-size":d,"data-slot":`input-control`,children:x}),t[19]=d,t[20]=x,t[21]=b,t[22]=S):S=t[22],S}export{o as t};
|
|
2
|
+
//# sourceMappingURL=input-emuaAuIe.js.map
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-COnpUsM8.js";import{Ci as t,b as n}from"./vendor--effect-atom-react-6hEhKm5I.js";import"./vendor--floating-ui-react-dom-CGq-bz3X.js";import{t as r}from"./vendor-react-BvVnE5E6.js";import{c as i,d as a,f as o,m as s,w as c}from"./vendor-tanstack-CM5SpFmF.js";import{c as l}from"./vendor--lexical-react-B6TeCrpE.js";import{P as u,h as d,l as f,s as p,u as m}from"./clientSettings--1UP2ayD.js";import"./vendor-effect-Chd9hYxF.js";import{V as h,c as g,t as _}from"./utils-B-Di8CjF.js";import{Ct as v,St as y,i as b,jt as x,ot as S,vt as C}from"./store-BQMb1nBV.js";import{t as w}from"./uiStateStore-Di3ieZaJ.js";import{Bn as T,En as E,Fr as D,Hn as O,Ln as k,Pr as A,Tn as j,Un as M,Yn as N,ar as ee,fr as te,or as P,wr as ne}from"./vendor-ui-DmvKhMzf.js";import{L as re,a as ie,n as ae}from"./vendor-diffs-TCBcYN7E.js";import{a as oe,c as F,i as se,o as ce,r as le,s as ue}from"./gitReactQuery-BBOGuHot.js";import"./input-emuaAuIe.js";import{t as I}from"./scroll-area-kK2XF1gm.js";import"./separator-CSqq2xHm.js";import{G as L,J as R,K as z,U as B,V as de,X as V,Y as H,i as fe,q as pe}from"./index-DvBh1mNh.js";import{a as me,i as he,l as ge,s as _e}from"./DiffPanelShell-DdBr4p9c.js";import{t as ve}from"./useTheme-Dhz9U3on.js";import"./vendor--shikijs-core-BvuCEFk2.js";import"./vendor-hast-util-to-jsx-runtime-Cj_7lYX5.js";import"./vendor-hast-util-raw-DrJxi__t.js";import"./vendor-extend-BW3CRMi7.js";import"./vendor-katex-C_40Fys8.js";import{t as U}from"./ChatMarkdown-BvwoXC6z.js";import"./vendor--shikijs-engine-javascript-9nIWxzwA.js";import"./vendor-diff-BC6ceXD2.js";import{n as ye,r as be,t as xe}from"./toggle-group-CvAnsecf.js";import"./toggle-nUm5N7vp.js";import{t as Se}from"./badge-BkzSFcY-.js";import{t as Ce}from"./DockedSidebarResizeHandle-C2HyIoOR.js";import{a as W,i as G,n as we,o as K,r as q,t as J}from"./empty-CwEqZDMX.js";import{n as Te,r as Ee,t as De}from"./collapsible-CqRg_DyH.js";var Y=r(),X=e(t(),1),Oe={open:`Open`,closed:`Closed`,draft:`Draft`},ke={open:`bg-success/12 text-success`,draft:`bg-muted-foreground/10 text-muted-foreground`,merged:`bg-violet-500/12 text-violet-600 dark:text-violet-400`,closed:`bg-destructive/12 text-destructive`};function Ae(e){return e.state===`merged`?`merged`:e.state===`closed`?`closed`:e.isDraft===!0?`draft`:`open`}function je(e){return e instanceof Error&&e.message.trim().length>0?e.message:typeof e==`string`&&e.trim().length>0?e:null}function Me(e){let t=e.toLowerCase();return t.includes(`not authenticated`)||t.includes(`gh auth login`)||t.includes(`no oauth token`)}function Ne(e){let t=e.toLowerCase();return t.includes(`command not found: gh`)||t.includes("gh`) is required")}function Pe(e){let t=je(e);return t?t.toLowerCase().includes(`not a git repository`)?`Pull requests are unavailable because this project is not a git repository.`:Ne(t)?"GitHub CLI (`gh`) is required to view pull requests for this project.":Me(t)?"Authenticate GitHub CLI with `gh auth login` to view pull requests for this project.":t:`Failed to load pull requests.`}function Fe(e,t){switch(t){case`closed`:return e.filter(e=>e.state===`closed`||e.state===`merged`);case`draft`:return e.filter(e=>e.state===`open`&&e.isDraft===!0);default:return e.filter(e=>e.state===`open`)}}function Ie(e){return e.status===`success`?e.visiblePullRequestsCount>0:!0}function Le(e){switch(e){case`closed`:return{title:`No closed pull requests`,description:`Closed and merged pull requests from your projects will show up here.`};case`draft`:return{title:`No draft pull requests`,description:`Draft pull requests from your projects will show up here.`};default:return{title:`No open pull requests`,description:`Open a PR from any of your projects and it will show up here.`}}}var Z=l(),Re=`pull_requests_detail_sidebar_width`,ze=448,Be=960,Ve=.5,He=`
|
|
2
|
+
[data-diffs-header],
|
|
3
|
+
[data-diff],
|
|
4
|
+
[data-file],
|
|
5
|
+
[data-error-wrapper],
|
|
6
|
+
[data-virtualizer-buffer] {
|
|
7
|
+
--diffs-bg: color-mix(in srgb, var(--card) 90%, var(--background)) !important;
|
|
8
|
+
--diffs-light-bg: color-mix(in srgb, var(--card) 90%, var(--background)) !important;
|
|
9
|
+
--diffs-dark-bg: color-mix(in srgb, var(--card) 90%, var(--background)) !important;
|
|
10
|
+
--diffs-token-light-bg: transparent;
|
|
11
|
+
--diffs-token-dark-bg: transparent;
|
|
12
|
+
|
|
13
|
+
--diffs-bg-context-override: color-mix(in srgb, var(--background) 97%, var(--foreground));
|
|
14
|
+
--diffs-bg-hover-override: color-mix(in srgb, var(--background) 94%, var(--foreground));
|
|
15
|
+
--diffs-bg-separator-override: color-mix(in srgb, var(--background) 95%, var(--foreground));
|
|
16
|
+
--diffs-bg-buffer-override: color-mix(in srgb, var(--background) 90%, var(--foreground));
|
|
17
|
+
|
|
18
|
+
--diffs-bg-addition-override: color-mix(in srgb, var(--background) 92%, var(--success));
|
|
19
|
+
--diffs-bg-addition-number-override: color-mix(in srgb, var(--background) 88%, var(--success));
|
|
20
|
+
--diffs-bg-addition-hover-override: color-mix(in srgb, var(--background) 85%, var(--success));
|
|
21
|
+
--diffs-bg-addition-emphasis-override: color-mix(in srgb, var(--background) 80%, var(--success));
|
|
22
|
+
|
|
23
|
+
--diffs-bg-deletion-override: color-mix(in srgb, var(--background) 92%, var(--destructive));
|
|
24
|
+
--diffs-bg-deletion-number-override: color-mix(in srgb, var(--background) 88%, var(--destructive));
|
|
25
|
+
--diffs-bg-deletion-hover-override: color-mix(in srgb, var(--background) 85%, var(--destructive));
|
|
26
|
+
--diffs-bg-deletion-emphasis-override: color-mix(in srgb, var(--background) 80%, var(--destructive));
|
|
27
|
+
|
|
28
|
+
background-color: var(--diffs-bg) !important;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
[data-file-info] {
|
|
32
|
+
background-color: color-mix(in srgb, var(--card) 94%, var(--foreground)) !important;
|
|
33
|
+
border-block-color: var(--border) !important;
|
|
34
|
+
color: var(--foreground) !important;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
[data-diffs-header] {
|
|
38
|
+
position: sticky !important;
|
|
39
|
+
top: 0;
|
|
40
|
+
z-index: 4;
|
|
41
|
+
background-color: color-mix(in srgb, var(--card) 94%, var(--foreground)) !important;
|
|
42
|
+
border-bottom: 1px solid var(--border) !important;
|
|
43
|
+
}
|
|
44
|
+
`,Ue={"--diffs-font-family":`var(--font-mono)`,"--diffs-header-font-family":`var(--font-mono)`};function Q(e){return Math.max(ze,Math.min(e,Be))}function We(){return typeof window>`u`?ze:Q(window.innerWidth*Ve)}function Ge(e){let t=e.name??e.prevName??``;return t.startsWith(`a/`)||t.startsWith(`b/`)?t.slice(2):t}function Ke(e){return e.cacheKey??`${e.prevName??`none`}:${e.name}`}function qe(e){let t=(0,Y.c)(33),{filter:r,open:i,projectId:a,number:o,onClose:s}=e,c=B(),l=(0,X.useRef)(null),u=(0,X.useRef)(null),[d,f]=(0,X.useState)(Je),p;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(p=e=>{let t=Q(e);f(t),m(Re,t,n)},t[0]=p):p=t[0];let h=p,g;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(g=()=>{u.current=null,document.body.style.removeProperty(`cursor`),document.body.style.removeProperty(`user-select`)},t[1]=g):g=t[1];let v=g,y;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(y=e=>{e.button!==0||!l.current||(u.current={pointerId:e.pointerId,startWidth:l.current.getBoundingClientRect().width,startX:e.clientX},e.preventDefault(),e.currentTarget.setPointerCapture(e.pointerId),document.body.style.cursor=`col-resize`,document.body.style.userSelect=`none`)},t[2]=y):y=t[2];let b=y,x;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(x=e=>{let t=u.current;!t||t.pointerId!==e.pointerId||(f(Q(t.startWidth+(t.startX-e.clientX))),e.preventDefault())},t[3]=x):x=t[3];let S=x,C;t[4]===d?C=t[5]:(C=e=>{let t=u.current;!t||t.pointerId!==e.pointerId||(h(d),e.currentTarget.hasPointerCapture(e.pointerId)&&e.currentTarget.releasePointerCapture(e.pointerId),v(),e.preventDefault())},t[4]=d,t[5]=C);let w=C,T,E;if(t[6]===Symbol.for(`react.memo_cache_sentinel`)?(T=()=>()=>v(),E=[v],t[6]=T,t[7]=E):(T=t[6],E=t[7]),(0,X.useEffect)(T,E),!i||a===null||o===null)return null;if(c){let e;t[8]===s?e=t[9]:(e=e=>{e||s()},t[8]=s,t[9]=e);let n;t[10]!==r||t[11]!==o||t[12]!==s||t[13]!==a?(n=(0,Z.jsx)(V,{side:`bottom`,showCloseButton:!1,keepMounted:!0,className:`h-[min(92dvh,900px)] w-full max-w-full p-0`,children:(0,Z.jsx)(Ye,{filter:r,projectId:a,number:o,onClose:s})}),t[10]=r,t[11]=o,t[12]=s,t[13]=a,t[14]=n):n=t[14];let c;return t[15]!==i||t[16]!==e||t[17]!==n?(c=(0,Z.jsx)(H,{open:i,onOpenChange:e,children:n}),t[15]=i,t[16]=e,t[17]=n,t[18]=c):c=t[18],c}let D;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(D=_(`relative hidden min-h-0 shrink-0 border-l border-border bg-card text-foreground md:flex`),t[19]=D):D=t[19];let O;t[20]===d?O=t[21]:(O={width:d},t[20]=d,t[21]=O);let k;t[22]===w?k=t[23]:(k=(0,Z.jsx)(Ce,{ariaLabel:`Resize pull request detail panel`,onPointerCancel:w,onPointerDown:b,onPointerMove:S,onPointerUp:w}),t[22]=w,t[23]=k);let A;t[24]!==r||t[25]!==o||t[26]!==s||t[27]!==a?(A=(0,Z.jsx)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col`,children:(0,Z.jsx)(Ye,{filter:r,projectId:a,number:o,onClose:s})}),t[24]=r,t[25]=o,t[26]=s,t[27]=a,t[28]=A):A=t[28];let j;return t[29]!==k||t[30]!==A||t[31]!==O?(j=(0,Z.jsxs)(`div`,{ref:l,className:D,style:O,children:[k,A]}),t[29]=k,t[30]=A,t[31]=O,t[32]=j):j=t[32],j}function Je(){let e=f(Re,n);return e===null?We():Q(e)}function Ye({filter:e,projectId:t,number:n,onClose:r}){let o=c(),l=s(),{resolvedTheme:u}=ve(),f=(0,X.useRef)(null),m=b(e=>e.projects.find(e=>e.id===t)??null),w=m?.cwd??null,D=a(le({cwd:w,filter:e})),O=(0,X.useMemo)(()=>D.data?D.data.pullRequests.find(e=>e.number===n)??null:null,[D.data,n]),A=a(ce({cwd:w,number:n})),j=A.data?.diff??``,N=(0,X.useMemo)(()=>{let e=j.trim();return e.length===0?null:_e(e,`pull-requests-panel:${u}`)},[j,u]),F=(0,X.useMemo)(()=>{let e=j.trim();if(e.length===0)return[];try{return re(e,N??void 0).flatMap(e=>e.files).toSorted((e,t)=>Ge(e).localeCompare(Ge(t),void 0,{numeric:!0,sensitivity:`base`}))}catch{return[]}},[N,j]),I=be({rootRef:f,enabled:!A.isLoading&&!A.isError&&F.length>0&&!!N,dependencyKey:`${N??`none`}:${A.isError?`error`:`ok`}:${A.isLoading?`loading`:`ready`}:${F.length}:${u}`}),L=a(ue({cwd:w,number:n,pullRequest:O})),z=a(oe({cwd:w,number:n})),[B,de]=(0,X.useState)(`files`),V=L.data?.summary??null,H=i(se({cwd:w,queryClient:l})),fe=(0,X.useCallback)(()=>{if(!O)return;let e=d();e&&e.shell.openExternal(O.url).catch(e=>{console.warn(`Failed to open pull request in browser.`,e)})},[O]),pe=(0,X.useCallback)(async()=>{if(!(!O||!w))try{let e=await H.mutateAsync({reference:String(O.number),mode:`worktree`});o({to:`/`,search:t=>({...t,branch:e.branch,worktreePath:e.worktreePath})})}catch(e){console.warn(`Failed to checkout pull request.`,e)}},[o,H,w,O]),Ce=(0,X.useCallback)(()=>{if(!O||!m)return;let e=V&&V.length>0?`\n\n**AI summary of changes:**\n${V}`:``,t=[`Please review pull request #${O.number}: **${O.title}**.`,``,`- URL: ${O.url}`,`- State: ${O.state}`,`- Base branch: \`${O.baseBranch}\``,`- Head branch: \`${O.headBranch}\``,e,``,`Walk through the changes file by file, highlight bugs, risky refactors, security or performance concerns, and suggest concrete improvements. Finish with a short overall verdict and a list of follow-up actions.`].join(`
|
|
45
|
+
`),n=S.getState(),r=g();n.setProjectDraftThreadId(m.id,r,{createdAt:new Date().toISOString(),envMode:`local`,runtimeMode:h}),n.applyStickyState(r),n.setPrompt(r,t),o({to:`/$threadId`,params:{threadId:r}})},[o,m,O,V]),we=O?.state===`open`?`success`:O?.state===`merged`?`secondary`:`error`,Te=!A.isLoading&&!A.isError&&F.length>0&&!I;return(0,Z.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[(0,Z.jsxs)(`header`,{children:[(0,Z.jsxs)(`div`,{className:`flex items-start gap-2.5 px-4 pt-3.5 pb-2.5`,children:[O?(0,Z.jsx)(`span`,{className:_(`mt-px flex size-8 shrink-0 items-center justify-center rounded-lg`,ke[Ae(O)]),"aria-hidden":!0,children:(0,Z.jsx)(P,{className:`size-4`})}):(0,Z.jsx)(R,{className:`mt-px size-8 shrink-0 rounded-lg`}),(0,Z.jsx)(`div`,{className:`min-w-0 flex-1`,children:O?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`h2`,{className:`text-balance line-clamp-2 text-base font-semibold leading-snug text-foreground`,children:O.title}),(0,Z.jsxs)(`div`,{className:`mt-1.5 flex flex-wrap items-center gap-x-2 gap-y-1 text-xs text-muted-foreground`,children:[(0,Z.jsx)(Se,{variant:we,className:`h-5 px-1.5 text-[10px] uppercase tracking-wide`,children:O.state}),O.isDraft?(0,Z.jsx)(Se,{variant:`outline`,className:`h-5 px-1.5 text-[10px] uppercase tracking-wide`,children:`Draft`}):null,(0,Z.jsxs)(`span`,{className:`tabular-nums`,children:[`#`,O.number]})]}),(0,Z.jsxs)(`div`,{className:`mt-1 flex min-w-0 items-center gap-1 text-[11px]`,children:[(0,Z.jsx)(T,{className:`size-3 shrink-0 text-muted-foreground/50`,"aria-hidden":!0}),(0,Z.jsx)(`span`,{className:`max-w-[45%] truncate font-mono text-muted-foreground/80`,children:O.headBranch}),(0,Z.jsx)(k,{className:`size-2.5 shrink-0 text-muted-foreground/40`,"aria-hidden":!0}),(0,Z.jsx)(`span`,{className:`max-w-[45%] truncate font-mono text-muted-foreground/50`,children:O.baseBranch})]})]}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`h-4 w-48 animate-pulse rounded bg-muted`}),(0,Z.jsx)(`div`,{className:`mt-2 h-3 w-64 animate-pulse rounded bg-muted/70`})]})}),(0,Z.jsx)(p,{type:`button`,size:`icon`,variant:`ghost`,"aria-label":`Close pull request detail`,className:`size-7 shrink-0`,onClick:r,children:(0,Z.jsx)(M,{className:`size-4`,"aria-hidden":!0})})]}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5 px-4 pb-3`,children:[(0,Z.jsxs)(`div`,{className:`inline-flex`,children:[(0,Z.jsxs)(p,{type:`button`,size:`xs`,disabled:!O||H.isPending,className:`gap-1.5 rounded-r-none`,onClick:()=>{pe()},children:[(0,Z.jsx)(ne,{className:`size-3.5`,"aria-hidden":!0}),H.isPending?`Checking out…`:`Checkout`]}),(0,Z.jsxs)(C,{children:[(0,Z.jsx)(x,{render:(0,Z.jsx)(p,{type:`button`,size:`xs`,"aria-label":`More checkout options`,disabled:!O||H.isPending,className:`-ml-px rounded-l-none border-l border-l-primary-foreground/20 px-1.5`}),children:(0,Z.jsx)(ee,{className:`size-3.5`,"aria-hidden":!0})}),(0,Z.jsxs)(v,{align:`end`,side:`bottom`,children:[(0,Z.jsxs)(y,{onClick:()=>{pe()},children:[(0,Z.jsx)(ne,{className:`size-3.5`,"aria-hidden":!0}),`Checkout`]}),(0,Z.jsxs)(y,{onClick:fe,children:[(0,Z.jsx)(te,{className:`size-3.5`,"aria-hidden":!0}),`Open in GitHub`]})]})]})]}),(0,Z.jsxs)(p,{type:`button`,size:`xs`,variant:`outline`,disabled:!O||!m,className:`gap-1.5`,onClick:Ce,children:[(0,Z.jsx)(E,{className:`size-3.5`,"aria-hidden":!0}),`Review`]})]}),(0,Z.jsx)(`div`,{className:`border-t border-border/60 px-4 py-3`,children:L.isLoading?(0,Z.jsxs)(`div`,{className:`flex flex-col gap-1.5`,"aria-label":`Loading pull request summary`,children:[(0,Z.jsx)(R,{className:`h-3 w-11/12 rounded-full`}),(0,Z.jsx)(R,{className:`h-3 w-10/12 rounded-full`}),(0,Z.jsx)(R,{className:`h-3 w-9/12 rounded-full`}),(0,Z.jsx)(R,{className:`h-3 w-8/12 rounded-full`})]}):L.isError?(0,Z.jsx)(`p`,{className:`text-pretty text-xs text-muted-foreground/80`,children:`Failed to summarize this pull request.`}):V&&V.length>0?(0,Z.jsx)(U,{text:V,cwd:w??void 0,className:`text-xs leading-relaxed text-muted-foreground`}):(0,Z.jsx)(`p`,{className:`text-pretty text-xs text-muted-foreground/60`,children:`No summary generated for this pull request.`})})]}),(0,Z.jsx)(`div`,{className:`my-2 flex h-9 shrink-0 items-center px-4`,children:(0,Z.jsxs)(ye,{value:[B],onValueChange:e=>{let t=e[0];(t===`files`||t===`conversation`)&&de(t)},className:`h-7 gap-1`,children:[(0,Z.jsx)(xe,{value:`files`,className:`h-6 px-2 text-xs`,children:`Files`}),(0,Z.jsxs)(xe,{value:`conversation`,className:`h-6 gap-1 px-2 text-xs`,children:[`Conversation`,z.data?(()=>{let e=z.data.comments.length+z.data.reviews.length;return e>0?(0,Z.jsx)(`span`,{className:`ml-1 tabular-nums text-muted-foreground/60`,children:e}):null})():null]})]})}),B===`conversation`?(0,Z.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:(0,Z.jsx)(tt,{query:z,projectCwd:w,pullRequestUrl:O?.url??null})}):(0,Z.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,style:Ue,children:A.isLoading?(0,Z.jsx)(me,{label:`Loading the diff`}):A.isError?(0,Z.jsx)(`div`,{className:`flex h-full items-center justify-center p-6`,children:(0,Z.jsx)(J,{children:(0,Z.jsxs)(G,{children:[(0,Z.jsx)(W,{variant:`icon`,children:(0,Z.jsx)(M,{})}),(0,Z.jsx)(K,{className:`text-pretty`,children:`Failed to load diff`}),(0,Z.jsx)(q,{className:`text-pretty`,children:A.error instanceof Error?A.error.message:`The diff could not be retrieved.`})]})})}):F.length===0?(0,Z.jsx)(`div`,{className:`flex h-full items-center justify-center p-6`,children:(0,Z.jsx)(J,{children:(0,Z.jsxs)(G,{children:[(0,Z.jsx)(K,{className:`text-pretty`,children:`No changes to show`}),(0,Z.jsx)(q,{className:`text-pretty`,children:`This pull request has an empty diff.`})]})})}):(0,Z.jsxs)(`div`,{className:`relative h-full min-h-0`,children:[Te?(0,Z.jsx)(he,{label:`Loading the diff`}):null,(0,Z.jsx)(`div`,{ref:f,className:`h-full min-h-0`,children:(0,Z.jsx)(ie,{className:`diff-render-surface h-full min-h-0 overflow-auto px-2 pb-2`,config:{overscrollSize:600,intersectionObserverMargin:1200},children:F.map(e=>{let t=`${Ke(e)}:${u}`;return(0,Z.jsx)(`div`,{"data-diff-file-path":Ge(e),className:`diff-render-file mb-2 rounded-md first:mt-2 last:mb-0`,children:(0,Z.jsx)(ae,{fileDiff:e,options:{diffStyle:`unified`,lineDiffType:`none`,overflow:`scroll`,theme:ge(u),themeType:u,unsafeCSS:He}})},t)})})})]})})]})}function Xe(e){let t=[];for(let n of e.comments)t.push({kind:`comment`,id:`comment:${n.id}`,createdAt:n.createdAt,data:n});for(let n of e.reviews)t.push({kind:`review`,id:`review:${n.id}`,createdAt:n.submittedAt,data:n});return t.sort((e,t)=>e.createdAt===t.createdAt?0:e.createdAt<t.createdAt?-1:1),t}function Ze(e){if(!e)return``;let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString(void 0,{dateStyle:`medium`,timeStyle:`short`})}function Qe(e){switch(e){case`approved`:return{label:`approved these changes`,tone:`success`};case`changes_requested`:return{label:`requested changes`,tone:`destructive`};case`dismissed`:return{label:`dismissed a review`,tone:`muted`};case`pending`:return{label:`started a pending review`,tone:`muted`};default:return{label:`left a review`,tone:`muted`}}}function $e(e){let t=(0,Y.c)(11),{author:n}=e,[r,i]=(0,X.useState)(!1),a=n??``,o,s;t[0]===a?(o=t[1],s=t[2]):(s=a.trim(),o=s.charAt(0).toUpperCase(),t[0]=a,t[1]=o,t[2]=s);let c=o;if(s.length>0&&!r){let e=`https://github.com/${encodeURIComponent(s)}.png?size=64`,n=`${s} avatar`,r;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(r=()=>i(!0),t[3]=r):r=t[3];let a;return t[4]!==e||t[5]!==n?(a=(0,Z.jsx)(`img`,{src:e,alt:n,loading:`lazy`,decoding:`async`,className:`size-7 shrink-0 rounded-full border border-border/60 bg-muted object-cover`,onError:r}),t[4]=e,t[5]=n,t[6]=a):a=t[6],a}let l;t[7]===c?l=t[8]:(l=c.length>0?c:(0,Z.jsx)(O,{className:`size-3.5`}),t[7]=c,t[8]=l);let u;return t[9]===l?u=t[10]:(u=(0,Z.jsx)(`div`,{className:`flex size-7 shrink-0 items-center justify-center rounded-full bg-muted text-[11px] font-medium text-muted-foreground`,"aria-hidden":!0,children:l}),t[9]=l,t[10]=u),u}function et(e){let t=(0,Y.c)(25),{author:n,createdAt:r,children:i,headerExtra:a,url:o}=e,s;t[0]===n?s=t[1]:(s=(0,Z.jsx)($e,{author:n}),t[0]=n,t[1]=s);let c=n??`Unknown user`,l;t[2]===c?l=t[3]:(l=(0,Z.jsx)(`span`,{className:`truncate font-medium text-foreground`,children:c}),t[2]=c,t[3]=l);let u;t[4]===a?u=t[5]:(u=a?(0,Z.jsx)(`span`,{className:`truncate`,children:a}):null,t[4]=a,t[5]=u);let d;t[6]===r?d=t[7]:(d=Ze(r),t[6]=r,t[7]=d);let f;t[8]===d?f=t[9]:(f=(0,Z.jsx)(`span`,{className:`ml-auto shrink-0 tabular-nums text-muted-foreground/70`,children:d}),t[8]=d,t[9]=f);let p;t[10]===o?p=t[11]:(p=o?(0,Z.jsx)(`a`,{href:o,target:`_blank`,rel:`noopener noreferrer`,className:`text-muted-foreground/70 transition-colors hover:text-foreground`,"aria-label":`Open on GitHub`,children:(0,Z.jsx)(te,{className:`size-3`})}):null,t[10]=o,t[11]=p);let m;t[12]!==l||t[13]!==u||t[14]!==f||t[15]!==p?(m=(0,Z.jsxs)(`header`,{className:`flex items-center gap-2 border-b border-border/60 px-3 py-1.5 text-xs text-muted-foreground`,children:[l,u,f,p]}),t[12]=l,t[13]=u,t[14]=f,t[15]=p,t[16]=m):m=t[16];let h;t[17]===i?h=t[18]:(h=(0,Z.jsx)(`div`,{className:`px-3 py-2`,children:i}),t[17]=i,t[18]=h);let g;t[19]!==m||t[20]!==h?(g=(0,Z.jsxs)(`div`,{className:`min-w-0 flex-1 rounded-lg border border-border/60 bg-card/60`,children:[m,h]}),t[19]=m,t[20]=h,t[21]=g):g=t[21];let _;return t[22]!==s||t[23]!==g?(_=(0,Z.jsxs)(`article`,{className:`flex gap-3 text-sm`,children:[s,g]}),t[22]=s,t[23]=g,t[24]=_):_=t[24],_}function tt(e){let t=(0,Y.c)(29),{query:n,projectCwd:r}=e;if(n.isLoading){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsx)(`div`,{className:`flex h-full flex-col gap-3 overflow-hidden p-4`,children:[0,1,2].map(nt)}),t[0]=e):e=t[0],e}if(n.isError){let e,r;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsx)(W,{variant:`icon`,children:(0,Z.jsx)(M,{})}),r=(0,Z.jsx)(K,{className:`text-pretty`,children:`Failed to load conversation`}),t[1]=e,t[2]=r):(e=t[1],r=t[2]);let i=n.error instanceof Error?n.error.message:`The conversation could not be retrieved.`,a;return t[3]===i?a=t[4]:(a=(0,Z.jsx)(`div`,{className:`flex h-full items-center justify-center p-6`,children:(0,Z.jsx)(J,{children:(0,Z.jsxs)(G,{children:[e,r,(0,Z.jsx)(q,{className:`text-pretty`,children:i})]})})}),t[3]=i,t[4]=a),a}let i=n.data;if(!i)return null;let a,o,s,c,l,u;if(t[5]!==i||t[6]!==r){u=Symbol.for(`react.early_return_sentinel`);bb0:{let e=Xe(i);if(i.description.length===0&&e.length===0){let e;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsx)(`div`,{className:`flex h-full items-center justify-center p-6`,children:(0,Z.jsx)(J,{children:(0,Z.jsxs)(G,{children:[(0,Z.jsx)(W,{variant:`icon`,children:(0,Z.jsx)(D,{})}),(0,Z.jsx)(K,{className:`text-pretty`,children:`No conversation yet`}),(0,Z.jsx)(q,{className:`text-pretty`,children:`This pull request has no description or comments.`})]})})}),t[13]=e):e=t[13],u=e;break bb0}a=I,l=`h-full`,o=`flex flex-col gap-3 p-4`,t[14]!==i.description||t[15]!==i.descriptionAuthor||t[16]!==i.descriptionCreatedAt||t[17]!==r?(s=i.description.length>0?(0,Z.jsx)(et,{author:i.descriptionAuthor,createdAt:i.descriptionCreatedAt??``,headerExtra:`opened this pull request`,children:(0,Z.jsx)(U,{text:i.description,cwd:r??void 0,className:`text-xs leading-relaxed text-foreground/90`})}):null,t[14]=i.description,t[15]=i.descriptionAuthor,t[16]=i.descriptionCreatedAt,t[17]=r,t[18]=s):s=t[18];let n;t[19]===r?n=t[20]:(n=e=>e.kind===`comment`?(0,Z.jsx)(et,{author:e.data.author,createdAt:e.data.createdAt,headerExtra:`commented`,...e.data.url?{url:e.data.url}:{},children:(0,Z.jsx)(U,{text:e.data.body,cwd:r??void 0,className:`text-xs leading-relaxed text-foreground/90`})},e.id):(0,Z.jsx)(rt,{review:e.data,projectCwd:r},e.id),t[19]=r,t[20]=n),c=e.map(n)}t[5]=i,t[6]=r,t[7]=a,t[8]=o,t[9]=s,t[10]=c,t[11]=l,t[12]=u}else a=t[7],o=t[8],s=t[9],c=t[10],l=t[11],u=t[12];if(u!==Symbol.for(`react.early_return_sentinel`))return u;let d;t[21]!==o||t[22]!==s||t[23]!==c?(d=(0,Z.jsxs)(`div`,{className:o,children:[s,c]}),t[21]=o,t[22]=s,t[23]=c,t[24]=d):d=t[24];let f;return t[25]!==a||t[26]!==l||t[27]!==d?(f=(0,Z.jsx)(a,{className:l,children:d}),t[25]=a,t[26]=l,t[27]=d,t[28]=f):f=t[28],f}function nt(e){return(0,Z.jsxs)(`div`,{className:`flex gap-3`,children:[(0,Z.jsx)(R,{className:`size-7 rounded-full`}),(0,Z.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,Z.jsx)(R,{className:`h-3 w-36 rounded-full`}),(0,Z.jsx)(R,{className:`h-3 w-11/12 rounded-full`}),(0,Z.jsx)(R,{className:`h-3 w-9/12 rounded-full`})]})]},e)}function rt(e){let t=(0,Y.c)(21),{review:n,projectCwd:r}=e,i;t[0]===n.state?i=t[1]:(i=Qe(n.state),t[0]=n.state,t[1]=i);let{label:a,tone:o}=i,s=n.state===`approved`?A:n.state===`changes_requested`?j:D,c=o===`success`?`text-success`:o===`destructive`?`text-destructive`:`text-muted-foreground`,l;t[2]===c?l=t[3]:(l=_(`flex items-center gap-1`,c),t[2]=c,t[3]=l);let u;t[4]===s?u=t[5]:(u=(0,Z.jsx)(s,{className:`size-3`,"aria-hidden":!0}),t[4]=s,t[5]=u);let d;t[6]!==a||t[7]!==l||t[8]!==u?(d=(0,Z.jsxs)(`span`,{className:l,children:[u,a]}),t[6]=a,t[7]=l,t[8]=u,t[9]=d):d=t[9];let f=d,p;t[10]===n.url?p=t[11]:(p=n.url?{url:n.url}:{},t[10]=n.url,t[11]=p);let m;t[12]!==r||t[13]!==n.body?(m=n.body.length>0?(0,Z.jsx)(U,{text:n.body,cwd:r??void 0,className:`text-xs leading-relaxed text-foreground/90`}):(0,Z.jsx)(`p`,{className:`text-xs italic text-muted-foreground/70`,children:`No review body.`}),t[12]=r,t[13]=n.body,t[14]=m):m=t[14];let h;return t[15]!==f||t[16]!==n.author||t[17]!==n.submittedAt||t[18]!==p||t[19]!==m?(h=(0,Z.jsx)(et,{author:n.author,createdAt:n.submittedAt,headerExtra:f,...p,children:m}),t[15]=f,t[16]=n.author,t[17]=n.submittedAt,t[18]=p,t[19]=m,t[20]=h):h=t[20],h}var $=[`open`,`draft`,`closed`];function it({filter:e,selectedProjectId:t,selectedNumber:n,onSelect:r,onFilterChange:i,columnClass:a}){let c=s(),l=b(e=>e.projects),d=w(e=>e.requestProjectAdd),f=o({queries:l.flatMap(e=>$.map(t=>le({cwd:e.cwd,filter:t})))}),m=(0,X.useMemo)(()=>{let e={open:[],draft:[],closed:[]};for(let[t,n]of f.entries())e[$[t%$.length]].push(n);return e},[f]),h=m[e],g=(0,X.useMemo)(()=>{let e={};for(let t of $){let n=m[t];if(n.some(e=>e.isLoading)){e[t]=null;continue}let r=0;for(let e of n)e.data&&(r+=Fe(e.data.pullRequests,t).length);e[t]=r}return e},[m]),[v,y]=(0,X.useState)({}),x=(0,X.useCallback)((e,t)=>{y(n=>n[e]===t?n:{...n,[e]:t})},[]),S=(0,X.useMemo)(()=>l.map((t,n)=>{let r=h[n];if(!r)return{project:t,state:{status:`loading`},visiblePullRequests:[]};if(r.isError)return{project:t,state:{status:`error`,message:Pe(r.error)},visiblePullRequests:[]};if(!r.data)return{project:t,state:{status:`loading`},visiblePullRequests:[]};let i=Fe(r.data.pullRequests,e);return{project:t,state:{status:`success`,pullRequests:r.data.pullRequests},visiblePullRequests:i}}),[e,l,h]),C=S.reduce((e,t)=>e+t.visiblePullRequests.length,0),T=h.every(e=>!e.isLoading)&&C===0,E=Le(e),D=(0,X.useCallback)(()=>{c.invalidateQueries({queryKey:F.all})},[c]);return l.length===0?(0,Z.jsx)(`div`,{className:`flex min-h-0 flex-1 items-center justify-center p-6`,children:(0,Z.jsxs)(J,{children:[(0,Z.jsxs)(G,{children:[(0,Z.jsx)(W,{variant:`icon`,children:(0,Z.jsx)(P,{})}),(0,Z.jsx)(K,{className:`text-pretty`,children:`No projects registered`}),(0,Z.jsx)(q,{className:`text-pretty`,children:`Open a project in ShioriCode to see its pull requests here.`})]}),(0,Z.jsx)(we,{children:(0,Z.jsx)(p,{onClick:d,children:`Open Folder`})})]})}):(0,Z.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:[(0,Z.jsx)(`div`,{className:`flex h-12 shrink-0 items-center border-b border-border/40`,children:(0,Z.jsxs)(`div`,{className:_(a,`flex h-full items-center justify-between gap-3`),children:[(0,Z.jsx)(`div`,{role:`radiogroup`,"aria-label":`Pull request filter`,className:`inline-flex h-7 items-center gap-0.5 rounded-lg border border-border/60 bg-muted/40 p-0.5`,children:$.map(t=>{let n=t===e,r=g[t];return(0,Z.jsxs)(`button`,{type:`button`,role:`radio`,"aria-checked":n,onClick:()=>i(t),className:_(`inline-flex h-6 items-center gap-1.5 rounded-md px-2.5 text-xs font-medium leading-none transition-colors`,n?`bg-background text-foreground shadow-sm`:`text-muted-foreground hover:text-foreground`),children:[(0,Z.jsx)(`span`,{children:Oe[t]}),(0,Z.jsx)(`span`,{className:_(`min-w-4 rounded-full px-1 text-center text-[10px] tabular-nums`,n?`bg-muted-foreground/15 text-foreground`:`opacity-60`),children:r??`–`})]},t)})}),(0,Z.jsxs)(L,{children:[(0,Z.jsx)(pe,{render:(0,Z.jsx)(p,{type:`button`,size:`icon-xs`,variant:`ghost`,className:`text-muted-foreground hover:text-foreground`,onClick:D,"aria-label":`Refresh pull requests`,children:(0,Z.jsx)(N,{className:`size-3.5`,"aria-hidden":!0})})}),(0,Z.jsx)(z,{children:`Refresh`})]})]})}),(0,Z.jsx)(I,{className:`min-h-0 flex-1`,children:(0,Z.jsxs)(`div`,{className:_(a,`flex flex-col gap-1.5 pt-3 pb-4`),children:[S.map(({project:i,state:a,visiblePullRequests:o})=>{let s=a.status===`success`?o.length:null,c=v[i.id]??Ie({status:a.status,visiblePullRequestsCount:s??0});return(0,Z.jsxs)(De,{open:c,onOpenChange:e=>x(i.id,e),children:[(0,Z.jsxs)(Ee,{className:_(`group/section sticky top-0 z-10 flex w-full items-center gap-1.5 rounded-md px-1 py-2`,u?`bg-background text-left`:`bg-background/80 backdrop-blur-md text-left`,`text-[11px] font-semibold uppercase tracking-wider text-muted-foreground/80`,`transition-colors hover:text-foreground`),children:[(0,Z.jsx)(ee,{className:_(`size-3.5 shrink-0 opacity-50 transition-transform`,c?`rotate-0`:`-rotate-90`),"aria-hidden":!0}),(0,Z.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:i.name}),s===null?a.status===`loading`?(0,Z.jsx)(R,{className:`h-3 w-5 rounded-full`}):null:(0,Z.jsx)(`span`,{className:`shrink-0 rounded-full bg-muted-foreground/10 px-1.5 text-[10px] font-semibold tabular-nums text-muted-foreground normal-case tracking-normal`,children:s})]}),(0,Z.jsx)(Te,{children:(0,Z.jsx)(at,{filter:e,projectId:i.id,state:a,visiblePullRequests:o,selectedProjectId:t,selectedNumber:n,onSelect:r})})]},i.id)}),T?(0,Z.jsx)(`div`,{className:`p-6`,children:(0,Z.jsx)(J,{children:(0,Z.jsxs)(G,{children:[(0,Z.jsx)(W,{variant:`icon`,children:(0,Z.jsx)(P,{})}),(0,Z.jsx)(K,{className:`text-pretty`,children:E.title}),(0,Z.jsx)(q,{className:`text-pretty`,children:E.description})]})})}):null]})})]})}function at(e){let t=(0,Y.c)(30),{filter:n,projectId:r,state:i,visiblePullRequests:a,selectedProjectId:o,selectedNumber:s,onSelect:c}=e;if(i.status===`loading`){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsx)(`ul`,{className:`flex flex-col gap-1 pb-2`,children:[0,1,2].map(ot)}),t[0]=e):e=t[0],e}if(i.status===`error`){let e;t[1]===i.message?e=t[2]:(e=Me(i.message),t[1]=i.message,t[2]=e);let n=e,r;t[3]===i.message?r=t[4]:(r=Ne(i.message),t[3]=i.message,t[4]=r);let a=r,o=a?`GitHub CLI (gh) is required to list pull requests.`:n?`GitHub CLI is not authenticated.`:i.message,s;t[5]===o?s=t[6]:(s=(0,Z.jsx)(`p`,{className:`text-xs text-destructive/90 text-pretty`,children:o}),t[5]=o,t[6]=s);let c;t[7]!==n||t[8]!==a?(c=a?(0,Z.jsx)(`a`,{href:`https://cli.github.com`,target:`_blank`,rel:`noopener noreferrer`,className:`text-xs text-primary underline-offset-2 hover:underline`,children:`Install GitHub CLI`}):n?(0,Z.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Run `,(0,Z.jsx)(`span`,{className:`font-mono`,children:`gh auth login`}),` in a terminal.`]}):null,t[7]=n,t[8]=a,t[9]=c):c=t[9];let l;return t[10]!==s||t[11]!==c?(l=(0,Z.jsxs)(`div`,{className:`flex flex-col gap-1.5 px-4 pb-3 pt-1`,children:[s,c]}),t[10]=s,t[11]=c,t[12]=l):l=t[12],l}if(a.length===0){let e;t[13]===n?e=t[14]:(e=Le(n),t[13]=n,t[14]=e);let r;return t[15]===e.title?r=t[16]:(r=(0,Z.jsxs)(`p`,{className:`px-4 pb-3 pt-1 text-xs text-muted-foreground/60`,children:[e.title,`.`]}),t[15]=e.title,t[16]=r),r}let l;if(t[17]!==c||t[18]!==r||t[19]!==s||t[20]!==o||t[21]!==a){let e;t[23]!==c||t[24]!==r||t[25]!==s||t[26]!==o?(e=e=>(0,Z.jsx)(`li`,{children:(0,Z.jsx)(st,{pullRequest:e,isActive:o===r&&s===e.number,onSelect:()=>c({projectId:r,number:e.number})})},e.number),t[23]=c,t[24]=r,t[25]=s,t[26]=o,t[27]=e):e=t[27],l=a.map(e),t[17]=c,t[18]=r,t[19]=s,t[20]=o,t[21]=a,t[22]=l}else l=t[22];let u;return t[28]===l?u=t[29]:(u=(0,Z.jsx)(`ul`,{className:`flex flex-col gap-0.5 pb-2`,children:l}),t[28]=l,t[29]=u),u}function ot(e){return(0,Z.jsxs)(`li`,{className:`flex items-center gap-2.5 py-2 pl-2 pr-2.5`,children:[(0,Z.jsx)(R,{className:`size-7 shrink-0 rounded-md`}),(0,Z.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1.5`,children:[(0,Z.jsx)(R,{className:`h-3 w-[70%] rounded-full`}),(0,Z.jsx)(R,{className:`h-2.5 w-[40%] rounded-full`})]})]},e)}function st(e){let t=(0,Y.c)(34),{pullRequest:n,isActive:r,onSelect:i}=e,a=ke[Ae(n)],o=r||void 0,s=r&&`border-border/60 bg-sidebar-accent`,c;t[0]===s?c=t[1]:(c=_(`group/pr flex w-full min-w-0 items-center gap-2.5 rounded-lg border border-transparent py-2 pl-2 pr-2.5 text-left`,`hover:bg-sidebar-accent/60 hover:border-border/50`,`focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring`,s),t[0]=s,t[1]=c);let l;t[2]===a?l=t[3]:(l=_(`flex size-7 shrink-0 items-center justify-center rounded-md`,a),t[2]=a,t[3]=l);let u;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,Z.jsx)(P,{className:`size-3.5`}),t[4]=u):u=t[4];let d;t[5]===l?d=t[6]:(d=(0,Z.jsx)(`span`,{className:l,"aria-hidden":!0,children:u}),t[5]=l,t[6]=d);let f;t[7]===n.title?f=t[8]:(f=(0,Z.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-[13px] font-medium leading-tight text-foreground`,children:n.title}),t[7]=n.title,t[8]=f);let p;t[9]===n.isDraft?p=t[10]:(p=n.isDraft?(0,Z.jsx)(`span`,{className:`shrink-0 rounded border border-border/60 px-1 py-px text-[9px] font-semibold uppercase tracking-wider text-muted-foreground`,children:`Draft`}):null,t[9]=n.isDraft,t[10]=p);let m;t[11]===n.number?m=t[12]:(m=(0,Z.jsxs)(`span`,{className:`shrink-0 text-[11px] tabular-nums text-muted-foreground/50`,children:[`#`,n.number]}),t[11]=n.number,t[12]=m);let h;t[13]!==f||t[14]!==p||t[15]!==m?(h=(0,Z.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1.5`,children:[f,p,m]}),t[13]=f,t[14]=p,t[15]=m,t[16]=h):h=t[16];let g;t[17]===n.headBranch?g=t[18]:(g=(0,Z.jsx)(`span`,{className:`max-w-[45%] truncate font-mono text-muted-foreground/80`,children:n.headBranch}),t[17]=n.headBranch,t[18]=g);let v;t[19]===Symbol.for(`react.memo_cache_sentinel`)?(v=(0,Z.jsx)(k,{className:`size-2.5 shrink-0 text-muted-foreground/40`,"aria-hidden":!0}),t[19]=v):v=t[19];let y;t[20]===n.baseBranch?y=t[21]:(y=(0,Z.jsx)(`span`,{className:`max-w-[45%] truncate font-mono text-muted-foreground/50`,children:n.baseBranch}),t[20]=n.baseBranch,t[21]=y);let b;t[22]!==g||t[23]!==y?(b=(0,Z.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1 text-[11px]`,children:[g,v,y]}),t[22]=g,t[23]=y,t[24]=b):b=t[24];let x;t[25]!==h||t[26]!==b?(x=(0,Z.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[h,b]}),t[25]=h,t[26]=b,t[27]=x):x=t[27];let S;return t[28]!==i||t[29]!==o||t[30]!==x||t[31]!==c||t[32]!==d?(S=(0,Z.jsxs)(`button`,{type:`button`,onClick:i,"data-active":o,className:c,children:[d,x]}),t[28]=i,t[29]=o,t[30]=x,t[31]=c,t[32]=d,t[33]=S):S=t[33],S}function ct(e){let t=(0,Y.c)(29),{search:n}=e,r=c(),i=n.filter??`open`,a;t[0]!==i||t[1]!==r?(a=e=>{r({to:`/pull-requests`,search:{projectId:e.projectId,number:e.number,filter:i}})},t[0]=i,t[1]=r,t[2]=a):a=t[2];let o=a,s;t[3]!==i||t[4]!==r?(s=()=>{r({to:`/pull-requests`,search:{filter:i}})},t[3]=i,t[4]=r,t[5]=s):s=t[5];let l=s,d;t[6]===r?d=t[7]:(d=e=>{r({to:`/pull-requests`,search:{filter:e}})},t[6]=r,t[7]=d);let f=d,p=n.projectId??null,m=n.number??null,h=p!==null&&m!==null,g=h?`w-full px-4`:`mx-auto w-full max-w-3xl px-4`,v;t[8]===g?v=t[9]:(v=u?(0,Z.jsx)(`div`,{className:`drag-region flex h-[52px] shrink-0 items-center`,children:(0,Z.jsxs)(`div`,{className:_(g,`flex h-full items-center gap-2 select-none`),children:[(0,Z.jsx)(P,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Z.jsx)(`h1`,{className:`text-sm font-semibold tracking-tight text-foreground`,children:`Pull Requests`})]})}):(0,Z.jsx)(`header`,{className:`flex h-12 shrink-0 items-center`,children:(0,Z.jsxs)(`div`,{className:_(g,`flex h-full items-center gap-2`),children:[(0,Z.jsx)(P,{className:`size-4 shrink-0 text-muted-foreground`,"aria-hidden":!0}),(0,Z.jsx)(`h1`,{className:`text-sm font-semibold tracking-tight text-foreground`,children:`Pull Requests`})]})}),t[8]=g,t[9]=v);let y;t[10]!==f||t[11]!==g||t[12]!==i||t[13]!==o||t[14]!==m||t[15]!==p?(y=(0,Z.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-hidden`,children:(0,Z.jsx)(it,{filter:i,selectedProjectId:p,selectedNumber:m,onSelect:o,onFilterChange:f,columnClass:g})}),t[10]=f,t[11]=g,t[12]=i,t[13]=o,t[14]=m,t[15]=p,t[16]=y):y=t[16];let b;t[17]!==v||t[18]!==y?(b=(0,Z.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden bg-background [contain:paint]`,children:[v,y]}),t[17]=v,t[18]=y,t[19]=b):b=t[19];let x;t[20]!==l||t[21]!==h||t[22]!==i||t[23]!==m||t[24]!==p?(x=(0,Z.jsx)(qe,{filter:i,open:h,projectId:p,number:m,onClose:l}),t[20]=l,t[21]=h,t[22]=i,t[23]=m,t[24]=p,t[25]=x):x=t[25];let S;return t[26]!==b||t[27]!==x?(S=(0,Z.jsx)(de,{className:`h-dvh min-h-0 overflow-hidden overscroll-y-none bg-background text-foreground`,children:(0,Z.jsxs)(`div`,{className:`relative isolate flex min-h-0 min-w-0 flex-1 overflow-hidden`,children:[b,x]})}),t[26]=b,t[27]=x,t[28]=S):S=t[28],S}function lt(){let e=(0,Y.c)(2),t=fe.useSearch(),n;return e[0]===t?n=e[1]:(n=(0,Z.jsx)(ct,{search:t}),e[0]=t,e[1]=n),n}export{lt as component};
|
|
46
|
+
//# sourceMappingURL=pull-requests-xKFO2G81.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{Y as e}from"./vendor--effect-atom-react-6hEhKm5I.js";import{Q as t}from"./utils-B-Di8CjF.js";import{i as n,n as r,r as i}from"./vendor-zustand-qsUGoIcm.js";import{Xt as a,Yt as o,Zt as s}from"./store-BQMb1nBV.js";var c=`shioricode:queued-turns:v1`,l=1,u=Object.freeze({queuedTurnsByThreadId:{}}),d=Object.freeze([]),f=o(typeof localStorage<`u`?localStorage:a(),300);s(`queued-turns`,()=>{f.flush()});function p(e){return typeof e==`object`&&!!e}function m(e){switch(e){case`failed`:return`failed`;case`sending`:return`queued`;default:return`queued`}}function h(n){if(!p(n))return null;let r=p(n.composerSnapshot)?n.composerSnapshot:null,i=typeof n.id==`string`?n.id:``,a=typeof n.threadId==`string`?n.threadId:``,o=typeof n.messageId==`string`?n.messageId:``,s=typeof n.text==`string`?n.text:``,c=typeof n.titleSeed==`string`?n.titleSeed:``,l=typeof n.createdAt==`string`?n.createdAt:``;if(i.length===0||a.length===0||o.length===0||c.length===0||l.length===0)return null;let u=Array.isArray(n.attachments)?n.attachments:[],d=Array.isArray(r?.persistedAttachments)?r.persistedAttachments:[],f=Array.isArray(r?.terminalContexts)?r.terminalContexts:[],h=typeof r?.prompt==`string`?r.prompt:``,g=n.modelSelection,_=n.runtimeMode,v=n.interactionMode,y=e(t)(n.goalIntent)?n.goalIntent:null;return!g||_!==`approval-required`&&_!==`full-access`||v!==`default`&&v!==`plan`?null:{id:i,threadId:a,messageId:o,text:s,attachments:u,modelSelection:g,runtimeMode:_,interactionMode:v,goalIntent:y,titleSeed:c,createdAt:l,composerSnapshot:{prompt:h,persistedAttachments:d,terminalContexts:f},status:m(n.status),errorMessage:typeof n.errorMessage==`string`&&n.errorMessage.trim().length>0?n.errorMessage:null}}function g(e){if(!p(e))return u;let t={};for(let[n,r]of Object.entries(e.queuedTurnsByThreadId??{})){if(!Array.isArray(r)||n.length===0)continue;let e=r.map(e=>h(e)).filter(e=>e!==null).map(e=>e.status===`sending`?{id:e.id,threadId:e.threadId,messageId:e.messageId,text:e.text,attachments:e.attachments,modelSelection:e.modelSelection,runtimeMode:e.runtimeMode,interactionMode:e.interactionMode,goalIntent:e.goalIntent,titleSeed:e.titleSeed,createdAt:e.createdAt,composerSnapshot:e.composerSnapshot,status:`queued`,errorMessage:null}:e);e.length>0&&(t[n]=e)}return{queuedTurnsByThreadId:t}}function _(e){let t={};for(let[n,r]of Object.entries(e.queuedTurnsByThreadId)){let e=(r??[]).filter(e=>e.id.length>0);e.length>0&&(t[n]=e)}return{queuedTurnsByThreadId:t}}function v(e,t,n){let r=e.queuedTurnsByThreadId[t]??[],i=n(r);if(i===r)return e;let a={...e.queuedTurnsByThreadId};return i.length===0?delete a[t]:a[t]=i,{queuedTurnsByThreadId:a}}var y=n()(i(e=>({queuedTurnsByThreadId:{},enqueueQueuedTurn:t=>{let n={...t,status:`queued`,errorMessage:null};return e(e=>v(e,t.threadId,e=>[...e,n])),n},removeQueuedTurn:(t,n)=>{t.length===0||n.length===0||e(e=>v(e,t,e=>e.filter(e=>e.id!==n)))},markQueuedTurnSending:(t,n)=>{t.length===0||n.length===0||e(e=>v(e,t,e=>e.map(e=>e.id===n?{...e,status:`sending`,errorMessage:null}:e)))},markQueuedTurnFailed:(t,n,r)=>{t.length===0||n.length===0||e(e=>v(e,t,e=>e.map(e=>e.id===n?{...e,status:`failed`,errorMessage:r.trim().length>0?r:`Failed to send queued message.`}:e)))},clearQueuedTurns:t=>{t.length!==0&&e(e=>{if(!(t in e.queuedTurnsByThreadId))return e;let n={...e.queuedTurnsByThreadId};return delete n[t],{queuedTurnsByThreadId:n}})}}),{name:c,version:l,storage:r(()=>f),partialize:_,merge:(e,t)=>({...t,...g(e)})}));function b(e,t){return t?e[t]??d:d}export{y as n,b as t};
|
|
2
|
+
//# sourceMappingURL=queuedTurnsStore-I4LoXHLF.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-COnpUsM8.js";import{Ci as t}from"./vendor--effect-atom-react-6hEhKm5I.js";import{t as n}from"./vendor-react-BvVnE5E6.js";import{c as r}from"./vendor--lexical-react-B6TeCrpE.js";import{t as i}from"./utils-B-Di8CjF.js";import{Ct as a,St as o,Tt as s,wt as c,xt as l}from"./vendor-ui-DmvKhMzf.js";var u=n(),d=e(t(),1),f=r();function p(e){let t=(0,u.c)(30),n,r,a,o,p,g;t[0]===e?(n=t[1],r=t[2],a=t[3],o=t[4],p=t[5],g=t[6]):({className:r,children:n,scrollFade:o,scrollbarGutter:p,hideScrollbars:g,...a}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=a,t[4]=o,t[5]=p,t[6]=g);let _=o===void 0?!1:o,v=p===void 0?!1:p,y=g===void 0?!1:g,[b,x]=(0,d.useState)(0),[S,C]=(0,d.useState)(0),w;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(w=e=>{let t=e.scrollTop,n=e.scrollHeight-e.scrollTop-e.clientHeight,r=m;x(r(t)),C(r(n))},t[7]=w):w=t[7];let T=w,E;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(E=e=>{T(e.currentTarget)},t[8]=E):E=t[8];let D=E,O;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(O=e=>{e&&T(e)},t[9]=O):O=t[9];let k=O,A;t[10]===r?A=t[11]:(A=i(`relative size-full min-h-0`,r),t[10]=r,t[11]=A);let j=v&&`data-has-overflow-y:pe-2.5 data-has-overflow-x:pb-2.5`,M=y&&`[-ms-overflow-style:none] [scrollbar-width:none] [&::-webkit-scrollbar]:hidden`,N;t[12]!==j||t[13]!==M?(N=i(`h-full overscroll-contain rounded-[inherit] outline-none transition-shadows focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-1 focus-visible:ring-offset-background data-has-overflow-x:overscroll-x-contain`,j,M),t[12]=j,t[13]=M,t[14]=N):N=t[14];let P;t[15]!==n||t[16]!==N?(P=(0,f.jsx)(c,{className:N,onScroll:D,ref:k,"data-slot":`scroll-area-viewport`,children:n}),t[15]=n,t[16]=N,t[17]=P):P=t[17];let F;t[18]!==S||t[19]!==_||t[20]!==b?(F=_?(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(`div`,{"aria-hidden":`true`,className:`pointer-events-none absolute inset-x-0 top-0 h-6 rounded-t-[inherit] bg-linear-to-b from-background to-transparent`,style:{opacity:b}}),(0,f.jsx)(`div`,{"aria-hidden":`true`,className:`pointer-events-none absolute inset-x-0 bottom-0 h-6 rounded-b-[inherit] bg-linear-to-t from-background to-transparent`,style:{opacity:S}})]}):null,t[18]=S,t[19]=_,t[20]=b,t[21]=F):F=t[21];let I;t[22]===y?I=t[23]:(I=!y&&(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(h,{orientation:`vertical`}),(0,f.jsx)(h,{orientation:`horizontal`}),(0,f.jsx)(l,{"data-slot":`scroll-area-corner`})]}),t[22]=y,t[23]=I);let L;return t[24]!==a||t[25]!==P||t[26]!==F||t[27]!==I||t[28]!==A?(L=(0,f.jsxs)(s,{className:A,...a,children:[P,F,I]}),t[24]=a,t[25]=P,t[26]=F,t[27]=I,t[28]=A,t[29]=L):L=t[29],L}function m(e){return Math.max(0,Math.min(1,e/56))}function h(e){let t=(0,u.c)(11),n,r,s;t[0]===e?(n=t[1],r=t[2],s=t[3]):({className:n,orientation:s,...r}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=s);let c=s===void 0?`vertical`:s,l;t[4]===n?l=t[5]:(l=i(`m-1 flex opacity-0 transition-opacity delay-300 data-[orientation=horizontal]:h-1.5 data-[orientation=vertical]:w-1.5 data-[orientation=horizontal]:flex-col data-hovering:opacity-100 data-scrolling:opacity-100 data-hovering:delay-0 data-scrolling:delay-0 data-hovering:duration-100 data-scrolling:duration-100`,n),t[4]=n,t[5]=l);let d;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,f.jsx)(o,{className:`relative flex-1 rounded-full bg-foreground/20`,"data-slot":`scroll-area-thumb`}),t[6]=d):d=t[6];let p;return t[7]!==c||t[8]!==r||t[9]!==l?(p=(0,f.jsx)(a,{className:l,"data-slot":`scroll-area-scrollbar`,orientation:c,...r,children:d}),t[7]=c,t[8]=r,t[9]=l,t[10]=p):p=t[10],p}export{p as t};
|
|
2
|
+
//# sourceMappingURL=scroll-area-kK2XF1gm.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{t as e}from"./vendor-react-BvVnE5E6.js";import{c as t}from"./vendor--lexical-react-B6TeCrpE.js";import{t as n}from"./utils-B-Di8CjF.js";import{tn as r}from"./vendor-ui-DmvKhMzf.js";var i=e(),a=t();function o(e){let t=(0,i.c)(10),o,s,c;t[0]===e?(o=t[1],s=t[2],c=t[3]):({className:o,orientation:c,...s}=e,t[0]=e,t[1]=o,t[2]=s,t[3]=c);let l=c===void 0?`horizontal`:c,u;t[4]===o?u=t[5]:(u=n(`shrink-0 bg-border data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:w-px data-[orientation=vertical]:not-[[class^='h-']]:not-[[class*='_h-']]:self-stretch`,o),t[4]=o,t[5]=u);let d;return t[6]!==l||t[7]!==s||t[8]!==u?(d=(0,a.jsx)(r,{className:u,"data-slot":`separator`,orientation:l,...s}),t[6]=l,t[7]=s,t[8]=u,t[9]=d):d=t[9],d}export{o as t};
|
|
2
|
+
//# sourceMappingURL=separator-CSqq2xHm.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-COnpUsM8.js";import{Ci as t}from"./vendor--effect-atom-react-6hEhKm5I.js";import"./vendor--floating-ui-react-dom-CGq-bz3X.js";import{t as n}from"./vendor-react-BvVnE5E6.js";import{w as r,y as i}from"./vendor-tanstack-CM5SpFmF.js";import{c as a}from"./vendor--lexical-react-B6TeCrpE.js";import{P as o,s}from"./clientSettings--1UP2ayD.js";import"./vendor-effect-Chd9hYxF.js";import"./utils-B-Di8CjF.js";import"./store-BQMb1nBV.js";import"./terminalStateStore-C38k-Eaw.js";import"./uiStateStore-Di3ieZaJ.js";import{cr as c}from"./vendor-ui-DmvKhMzf.js";import"./useSettings-DOuHg9jg.js";import"./useHandleNewThread-WYMZPumx.js";import"./gitReactQuery-BBOGuHot.js";import"./input-emuaAuIe.js";import"./scroll-area-kK2XF1gm.js";import"./separator-CSqq2xHm.js";import{Q as l,V as u,Z as d}from"./index-DvBh1mNh.js";import"./ProviderModelPicker-BWTkQW8f.js";import"./empty-CwEqZDMX.js";import"./collapsible-CqRg_DyH.js";import{d as f}from"./SettingsPanels-DGYlfoWv.js";var p=n(),m=e(t()),h=a();function g(){let e=(0,p.c)(19),[t,n]=(0,m.useState)(0),a;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=()=>n(_),e[0]=a):a=e[0];let{changedSettingLabels:g,restoreDefaults:v}=f(a),y=r(),b;e[1]===y?b=e[2]:(b=()=>{y(l(d()))},e[1]=y,e[2]=b);let x=b,S,C;e[3]===x?(S=e[4],C=e[5]):(S=()=>{let e=e=>{e.defaultPrevented||e.key===`Escape`&&(e.preventDefault(),x())};return window.addEventListener(`keydown`,e),()=>{window.removeEventListener(`keydown`,e)}},C=[x],e[3]=x,e[4]=S,e[5]=C),(0,m.useEffect)(S,C);let w;e[6]!==g||e[7]!==v?(w=!o&&(0,h.jsx)(`header`,{className:`border-b border-border px-3 py-2 sm:px-5`,children:(0,h.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,h.jsx)(`span`,{className:`text-sm font-medium text-foreground`,children:`Settings`}),(0,h.jsx)(`div`,{className:`ms-auto flex items-center gap-2`,children:(0,h.jsxs)(s,{size:`xs`,variant:`outline`,disabled:g.length===0,onClick:()=>void v(),children:[(0,h.jsx)(c,{className:`size-3.5`}),`Restore defaults`]})})]})}),e[6]=g,e[7]=v,e[8]=w):w=e[8];let T;e[9]!==g||e[10]!==v?(T=o&&(0,h.jsxs)(`div`,{className:`app-titlebar-window-controls-inset drag-region flex h-[52px] shrink-0 items-center border-b border-border px-5 [--app-titlebar-base-left-padding:1.25rem]`,children:[(0,h.jsx)(`span`,{className:`text-xs font-medium tracking-wide text-muted-foreground/70`,children:`Settings`}),(0,h.jsx)(`div`,{className:`ms-auto flex items-center gap-2`,children:(0,h.jsxs)(s,{size:`xs`,variant:`outline`,disabled:g.length===0,onClick:()=>void v(),children:[(0,h.jsx)(c,{className:`size-3.5`}),`Restore defaults`]})})]}),e[9]=g,e[10]=v,e[11]=T):T=e[11];let E;e[12]===Symbol.for(`react.memo_cache_sentinel`)?(E=(0,h.jsx)(i,{}),e[12]=E):E=e[12];let D;e[13]===t?D=e[14]:(D=(0,h.jsx)(`div`,{className:`min-h-0 flex flex-1 flex-col`,children:E},t),e[13]=t,e[14]=D);let O;return e[15]!==w||e[16]!==T||e[17]!==D?(O=(0,h.jsx)(u,{className:`h-dvh min-h-0 overflow-hidden overscroll-y-none bg-background text-foreground isolate`,children:(0,h.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1 flex-col bg-background text-foreground`,children:[w,T,D]})}),e[15]=w,e[16]=T,e[17]=D,e[18]=O):O=e[18],O}function _(e){return e+1}function v(){let e=(0,p.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,h.jsx)(g,{}),e[0]=t):t=e[0],t}export{v as component};
|
|
2
|
+
//# sourceMappingURL=settings-C9R1j3GG.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-COnpUsM8.js";import{Ci as t}from"./vendor--effect-atom-react-6hEhKm5I.js";import"./vendor--floating-ui-react-dom-CGq-bz3X.js";import{t as n}from"./vendor-react-BvVnE5E6.js";import{C as r}from"./vendor-tanstack-CM5SpFmF.js";import{c as i}from"./vendor--lexical-react-B6TeCrpE.js";import{P as a,s as o}from"./clientSettings--1UP2ayD.js";import"./vendor-effect-Chd9hYxF.js";import{S as s,v as c,y as l}from"./utils-B-Di8CjF.js";import"./store-BQMb1nBV.js";import"./terminalStateStore-C38k-Eaw.js";import"./uiStateStore-Di3ieZaJ.js";import{Br as u,Nn as d,Un as ee}from"./vendor-ui-DmvKhMzf.js";import{n as te,r as ne}from"./useSettings-DOuHg9jg.js";import"./useHandleNewThread-WYMZPumx.js";import"./gitReactQuery-BBOGuHot.js";import{t as f}from"./input-emuaAuIe.js";import{G as p,K as m,h as re,it as h,q as g}from"./index-DvBh1mNh.js";import{i as ie,t as ae}from"./useTheme-Dhz9U3on.js";import{a as _,i as v,o as y,r as b,s as x}from"./ProviderModelPicker-BWTkQW8f.js";import"./empty-CwEqZDMX.js";import"./collapsible-CqRg_DyH.js";import{a as oe,c as S,l as C,n as w,o as T,p as E,r as D,s as O,u as k}from"./SettingsPanels-DGYlfoWv.js";var A=n(),j=e(t(),1),M=i(),N=[{value:`system`,label:`System`},{value:`light`,label:`Light`},{value:`dark`,label:`Dark`}],P={light:`Light theme`,dark:`Dark theme`};function F(e){let t=(0,A.c)(9),{label:n,onClick:r}=e,i=`Reset ${n} to default`,a;t[0]===r?a=t[1]:(a=e=>{e.stopPropagation(),r()},t[0]=r,t[1]=a);let s;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,M.jsx)(d,{className:`size-3`}),t[2]=s):s=t[2];let c;t[3]!==i||t[4]!==a?(c=(0,M.jsx)(g,{render:(0,M.jsx)(o,{size:`icon-xs`,variant:`ghost`,"aria-label":i,className:`size-5 rounded-sm p-0 text-muted-foreground hover:text-foreground`,onClick:a,children:s})}),t[3]=i,t[4]=a,t[5]=c):c=t[5];let l;t[6]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,M.jsx)(m,{side:`top`,children:`Reset to default`}),t[6]=l):l=t[6];let u;return t[7]===c?u=t[8]:(u=(0,M.jsxs)(p,{children:[c,l]}),t[7]=c,t[8]=u),u}function I(){let{theme:e,setTheme:t,importedThemes:n,lightThemeId:i,darkThemeId:d,setThemeAssignment:p,importTheme:m,removeImportedTheme:g,themeOptionsByAppearance:A}=ae(),I=te(),{updateSettings:L}=ne(),[R,z]=(0,j.useState)(!1),[B,se]=(0,j.useState)({all:[],monospace:[]}),[V,H]=(0,j.useState)(``),[U,W]=(0,j.useState)(``),[G,K]=(0,j.useState)(!1),q=(0,j.useRef)(null),ce=(0,j.useCallback)(()=>{q.current?.click()},[]),le=(0,j.useCallback)(async e=>{let t=Array.from(e.target.files??[]);if(e.target.value=``,t.length===0)return;z(!0);let n=[];for(let e of t)try{let t=m(await e.text());n.push(t.name)}catch(t){h.add({type:`error`,title:`Could not import ${e.name}`,description:t instanceof Error?t.message:`The theme file is invalid JSON.`})}n.length>0&&h.add({type:`success`,title:n.length===1?`Imported ${n[0]}`:`Imported ${n.length} themes`,description:n.length===1?`The imported theme is now selected for its appearance.`:`Each imported theme is now selected for its matching appearance.`}),z(!1)},[m]);(0,j.useEffect)(()=>{let e=!1;return K(!0),ie().then(t=>{e||se(t)}).finally(()=>{e||K(!1)}),()=>{e=!0}},[]);let J=(0,j.useMemo)(()=>C(B.all,I.uiFontFamily,D),[B.all,I.uiFontFamily]),Y=(0,j.useMemo)(()=>k(J,V),[J,V]),X=(0,j.useMemo)(()=>C(B.monospace,I.codeFontFamily,w),[B.monospace,I.codeFontFamily]),Z=(0,j.useMemo)(()=>k(X,U),[X,U]),Q=Math.max(0,J.length-1),$=Math.max(0,X.length-1);return(0,M.jsxs)(oe,{children:[(0,M.jsxs)(O,{title:`Themes`,children:[(0,M.jsx)(T,{title:`Theme mode`,description:`Choose when the app resolves to its light or dark appearance.`,resetAction:e===s.themeMode?null:(0,M.jsx)(F,{label:`theme mode`,onClick:()=>t(`system`)}),control:(0,M.jsxs)(b,{value:e,onValueChange:e=>{(e===`system`||e===`light`||e===`dark`)&&t(e)},children:[(0,M.jsx)(y,{className:`w-full sm:w-40`,"aria-label":`Theme preference`,children:(0,M.jsx)(x,{children:N.find(t=>t.value===e)?.label??`System`})}),(0,M.jsx)(_,{align:`end`,alignItemWithTrigger:!1,children:N.map(e=>(0,M.jsx)(v,{hideIndicator:!0,value:e.value,children:e.label},e.value))})]})}),(0,M.jsx)(T,{title:P.light,description:`Used whenever the app resolves to its light appearance.`,resetAction:i===`builtin:shioricode-light`?null:(0,M.jsx)(F,{label:`light theme`,onClick:()=>p(`light`,l)}),control:(0,M.jsxs)(b,{value:i,onValueChange:e=>{e&&p(`light`,e)},children:[(0,M.jsx)(y,{className:`w-full sm:w-52`,"aria-label":`Light theme`,children:(0,M.jsx)(x,{children:A.light.find(e=>e.id===i)?.name??`Shiori Light`})}),(0,M.jsx)(_,{align:`end`,alignItemWithTrigger:!1,children:A.light.map(e=>(0,M.jsx)(v,{hideIndicator:!0,value:e.id,children:e.name},e.id))})]})}),(0,M.jsx)(T,{title:P.dark,description:`Used whenever the app resolves to its dark appearance.`,resetAction:d===`builtin:shioricode-dark`?null:(0,M.jsx)(F,{label:`dark theme`,onClick:()=>p(`dark`,c)}),control:(0,M.jsxs)(b,{value:d,onValueChange:e=>{e&&p(`dark`,e)},children:[(0,M.jsx)(y,{className:`w-full sm:w-52`,"aria-label":`Dark theme`,children:(0,M.jsx)(x,{children:A.dark.find(e=>e.id===d)?.name??`Shiori Dark`})}),(0,M.jsx)(_,{align:`end`,alignItemWithTrigger:!1,children:A.dark.map(e=>(0,M.jsx)(v,{hideIndicator:!0,value:e.id,children:e.name},e.id))})]})}),(0,M.jsxs)(T,{title:`Import themes`,description:`Import JSON theme files. Each file targets either the light or dark appearance and becomes the active theme for that appearance.`,control:(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(`input`,{ref:q,type:`file`,accept:`.json,application/json`,multiple:!0,className:`hidden`,onChange:le}),(0,M.jsx)(o,{size:`sm`,variant:`outline`,disabled:R,onClick:ce,children:R?(0,M.jsx)(re,{children:`Importing themes`}):`Import JSON`})]}),children:[n.length>0?(0,M.jsx)(`div`,{className:`mt-4 space-y-2`,children:n.map(e=>(0,M.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-xl border border-border/80 bg-background/60 px-3 py-3 sm:flex-row sm:items-center sm:justify-between`,children:[(0,M.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[(0,M.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,M.jsx)(`p`,{className:`text-sm font-medium text-foreground`,children:e.name}),(0,M.jsx)(`span`,{className:`rounded-full bg-muted px-2 py-0.5 text-[10px] font-medium uppercase tracking-[0.12em] text-muted-foreground`,children:e.appearance}),e.appearance===`light`&&i===e.id?(0,M.jsx)(`span`,{className:`rounded-full bg-primary/12 px-2 py-0.5 text-[10px] font-medium uppercase tracking-[0.12em] text-primary`,children:`Active`}):null,e.appearance===`dark`&&d===e.id?(0,M.jsx)(`span`,{className:`rounded-full bg-primary/12 px-2 py-0.5 text-[10px] font-medium uppercase tracking-[0.12em] text-primary`,children:`Active`}):null]}),e.description?(0,M.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e.description}):null,(0,M.jsx)(`p`,{className:`text-[11px] text-muted-foreground/80`,children:e.author?`By ${e.author}`:`Imported theme`})]}),(0,M.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,M.jsx)(o,{size:`xs`,variant:`outline`,onClick:()=>p(e.appearance,e.id),children:`Use`}),(0,M.jsx)(o,{size:`icon-xs`,variant:`ghost`,"aria-label":`Remove ${e.name}`,onClick:()=>g(e.id),children:(0,M.jsx)(ee,{className:`size-3.5`})})]})]},e.id))}):(0,M.jsx)(`div`,{className:`mt-4 rounded-xl border border-dashed border-border/80 bg-background/40 px-3 py-4 text-xs text-muted-foreground`,children:`Imported themes will appear here after you add a JSON file.`}),(0,M.jsxs)(r,{to:`/settings/theme-builder`,className:`mt-3 inline-flex items-center gap-1.5 text-xs text-muted-foreground transition-colors hover:text-foreground`,children:[(0,M.jsx)(u,{className:`size-3`}),`Build your own theme`]})]})]}),a?(0,M.jsx)(O,{title:`Window`,children:(0,M.jsx)(T,{title:`Translucent sidebar`,description:`Make the sidebar translucent so desktop content is visible behind it. macOS only.`,resetAction:I.sidebarTranslucent===s.sidebarTranslucent?null:(0,M.jsx)(F,{label:`translucent sidebar`,onClick:()=>L({sidebarTranslucent:!1})}),control:(0,M.jsx)(E,{checked:I.sidebarTranslucent,onCheckedChange:e=>L({sidebarTranslucent:!!e}),"aria-label":`Enable translucent sidebar`})})}):null,(0,M.jsxs)(O,{title:`Interface`,children:[(0,M.jsx)(T,{title:`Hide personal details`,description:`Mask personal details in the interface to reduce casual on-screen exposure.`,resetAction:I.blurPersonalData===s.blurPersonalData?null:(0,M.jsx)(F,{label:`personal details masking`,onClick:()=>L({blurPersonalData:s.blurPersonalData})}),control:(0,M.jsx)(E,{checked:I.blurPersonalData,onCheckedChange:e=>L({blurPersonalData:!!e}),"aria-label":`Hide personal details`})}),(0,M.jsx)(T,{title:`UI font`,description:`Choose the interface font. Installed fonts load from your system when available.`,status:G?`Loading installed fonts...`:Q>0?`${Q} installed fonts available.`:`Using system defaults only.`,resetAction:I.uiFontFamily===s.uiFontFamily?null:(0,M.jsx)(F,{label:`UI font`,onClick:()=>L({uiFontFamily:s.uiFontFamily})}),control:(0,M.jsxs)(b,{value:I.uiFontFamily,onOpenChange:e=>{e||H(``)},onValueChange:e=>{e&&L({uiFontFamily:e})},children:[(0,M.jsx)(y,{className:`w-full sm:w-56`,"aria-label":`UI font`,children:(0,M.jsx)(x,{children:J.find(e=>e.value===I.uiFontFamily)?.label??D.label})}),(0,M.jsx)(_,{align:`end`,alignItemWithTrigger:!1,header:(0,M.jsx)(f,{autoFocus:!0,value:V,placeholder:`Search fonts`,"aria-label":`Search UI fonts`,className:`h-8`,onChange:e=>H(e.target.value),onKeyDown:e=>e.stopPropagation()}),listClassName:`max-h-[min(var(--available-height),18rem)]`,children:Y.length>0?Y.map(e=>(0,M.jsx)(v,{hideIndicator:!0,value:e.value,children:e.label},e.value)):(0,M.jsx)(`div`,{className:`px-3 py-2 text-sm text-muted-foreground`,children:`No fonts found.`})})]})}),(0,M.jsx)(T,{title:`Code font`,description:`Choose the monospace font used for code, diffs, terminals, and inline shortcuts.`,status:G?`Loading installed fonts...`:$>0?`${$} monospace fonts available.`:`Using system monospace by default.`,resetAction:I.codeFontFamily===s.codeFontFamily?null:(0,M.jsx)(F,{label:`code font`,onClick:()=>L({codeFontFamily:s.codeFontFamily})}),control:(0,M.jsxs)(b,{value:I.codeFontFamily,onOpenChange:e=>{e||W(``)},onValueChange:e=>{e&&L({codeFontFamily:e})},children:[(0,M.jsx)(y,{className:`w-full sm:w-56`,"aria-label":`Code font`,children:(0,M.jsx)(x,{children:X.find(e=>e.value===I.codeFontFamily)?.label??w.label})}),(0,M.jsx)(_,{align:`end`,alignItemWithTrigger:!1,header:(0,M.jsx)(f,{autoFocus:!0,value:U,placeholder:`Search fonts`,"aria-label":`Search code fonts`,className:`h-8`,onChange:e=>W(e.target.value),onKeyDown:e=>e.stopPropagation()}),listClassName:`max-h-[min(var(--available-height),18rem)]`,children:Z.length>0?Z.map(e=>(0,M.jsx)(v,{hideIndicator:!0,value:e.value,children:e.label},e.value)):(0,M.jsx)(`div`,{className:`px-3 py-2 text-sm text-muted-foreground`,children:`No fonts found.`})})]})}),(0,M.jsx)(T,{title:`Time format`,description:`System default follows your browser or OS clock preference.`,resetAction:I.timestampFormat===s.timestampFormat?null:(0,M.jsx)(F,{label:`time format`,onClick:()=>L({timestampFormat:s.timestampFormat})}),control:(0,M.jsxs)(b,{value:I.timestampFormat,onValueChange:e=>{(e===`locale`||e===`12-hour`||e===`24-hour`)&&L({timestampFormat:e})},children:[(0,M.jsx)(y,{className:`w-full sm:w-40`,"aria-label":`Timestamp format`,children:(0,M.jsx)(x,{children:S[I.timestampFormat]})}),(0,M.jsxs)(_,{align:`end`,alignItemWithTrigger:!1,children:[(0,M.jsx)(v,{hideIndicator:!0,value:`locale`,children:S.locale}),(0,M.jsx)(v,{hideIndicator:!0,value:`12-hour`,children:S[`12-hour`]}),(0,M.jsx)(v,{hideIndicator:!0,value:`24-hour`,children:S[`24-hour`]})]})]})}),(0,M.jsx)(T,{title:`Diff line wrapping`,description:`Set the default wrap state when the diff panel opens.`,resetAction:I.diffWordWrap===s.diffWordWrap?null:(0,M.jsx)(F,{label:`diff line wrapping`,onClick:()=>L({diffWordWrap:s.diffWordWrap})}),control:(0,M.jsx)(E,{checked:I.diffWordWrap,onCheckedChange:e=>L({diffWordWrap:!!e}),"aria-label":`Wrap diff lines by default`})})]})]})}var L=I;export{L as component};
|
|
2
|
+
//# sourceMappingURL=settings.appearance-Cac_fbGk.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import"./vendor--effect-atom-react-6hEhKm5I.js";import"./vendor--floating-ui-react-dom-CGq-bz3X.js";import"./vendor-react-BvVnE5E6.js";import"./vendor-tanstack-CM5SpFmF.js";import"./vendor--lexical-react-B6TeCrpE.js";import"./clientSettings--1UP2ayD.js";import"./vendor-effect-Chd9hYxF.js";import"./utils-B-Di8CjF.js";import"./store-BQMb1nBV.js";import"./terminalStateStore-C38k-Eaw.js";import"./uiStateStore-Di3ieZaJ.js";import"./vendor-ui-DmvKhMzf.js";import"./useSettings-DOuHg9jg.js";import"./useHandleNewThread-WYMZPumx.js";import"./gitReactQuery-BBOGuHot.js";import"./input-emuaAuIe.js";import"./ProviderModelPicker-BWTkQW8f.js";import"./empty-CwEqZDMX.js";import"./collapsible-CqRg_DyH.js";import{t as e}from"./SettingsPanels-DGYlfoWv.js";var t=e;export{t as component};
|
|
2
|
+
//# sourceMappingURL=settings.archived-KRU4XARw.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import"./vendor--effect-atom-react-6hEhKm5I.js";import"./vendor--floating-ui-react-dom-CGq-bz3X.js";import{t as e}from"./vendor-react-BvVnE5E6.js";import"./vendor-tanstack-CM5SpFmF.js";import{c as t}from"./vendor--lexical-react-B6TeCrpE.js";import{h as n}from"./clientSettings--1UP2ayD.js";import"./vendor-effect-Chd9hYxF.js";import"./utils-B-Di8CjF.js";import"./store-BQMb1nBV.js";import"./terminalStateStore-C38k-Eaw.js";import"./uiStateStore-Di3ieZaJ.js";import{kr as r}from"./vendor-ui-DmvKhMzf.js";import{n as i,r as a}from"./useSettings-DOuHg9jg.js";import"./useHandleNewThread-WYMZPumx.js";import"./gitReactQuery-BBOGuHot.js";import"./input-emuaAuIe.js";import"./ProviderModelPicker-BWTkQW8f.js";import"./empty-CwEqZDMX.js";import"./collapsible-CqRg_DyH.js";import{a as o,o as s,p as c,s as l}from"./SettingsPanels-DGYlfoWv.js";var u=e(),d=t();function f(){let e=(0,u.c)(9),t=i(),{updateSettings:f}=a(),m;e[0]!==t.computerUse.enabled||e[1]!==f?(m=function(e){e!==t.computerUse.enabled&&(f({computerUse:{enabled:e}}),n()?.server.refreshProviders().catch(p))},e[0]=t.computerUse.enabled,e[1]=f,e[2]=m):m=e[2];let h=m,g;e[3]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,d.jsx)(r,{className:`size-3.5`}),e[3]=g):g=e[3];let _;e[4]===h?_=e[5]:(_=e=>h(!!e),e[4]=h,e[5]=_);let v;return e[6]!==t.computerUse.enabled||e[7]!==_?(v=(0,d.jsx)(o,{children:(0,d.jsx)(l,{title:`Computer Use`,icon:g,children:(0,d.jsx)(s,{title:`Enable Computer Use`,description:`Allow agents to see and control this Mac using screenshots, the pointer, keyboard, and scrolling.`,control:(0,d.jsx)(c,{checked:t.computerUse.enabled,onCheckedChange:_,"aria-label":`Enable Computer Use`})})})}),e[6]=t.computerUse.enabled,e[7]=_,e[8]=v):v=e[8],v}function p(e){console.warn(`[computer-use] failed to refresh providers after settings change`,e)}var m=f;export{m as component};
|
|
2
|
+
//# sourceMappingURL=settings.computer-use-BL801Zu5.js.map
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-COnpUsM8.js";import{Ci as t}from"./vendor--effect-atom-react-6hEhKm5I.js";import"./vendor--floating-ui-react-dom-CGq-bz3X.js";import{t as n}from"./vendor-react-BvVnE5E6.js";import{c as r}from"./vendor--lexical-react-B6TeCrpE.js";import"./vendor-effect-Chd9hYxF.js";import"./utils-B-Di8CjF.js";import{ar as i}from"./vendor-ui-DmvKhMzf.js";import{n as a,t as o}from"./collapsible-CqRg_DyH.js";var s=n(),c=e(t(),1),l=r(),u=`Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
2
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
3
|
+
in the Software without restriction, including without limitation the rights
|
|
4
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
5
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
6
|
+
furnished to do so, subject to the following conditions:
|
|
7
|
+
|
|
8
|
+
The above copyright notice and this permission notice shall be included in all
|
|
9
|
+
copies or substantial portions of the Software.
|
|
10
|
+
|
|
11
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
12
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
13
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
14
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
15
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
16
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
17
|
+
SOFTWARE.`,d=`Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
|
|
18
|
+
|
|
19
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
20
|
+
|
|
21
|
+
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.`,f={MIT:u,"Apache-2.0":d},p=[{name:`t3code`,copyright:`2026 T3 Tools Inc.`,license:`MIT`,url:`https://github.com/pingdotgg/t3code`,fullText:`MIT License
|
|
22
|
+
|
|
23
|
+
Copyright (c) 2026 T3 Tools Inc.
|
|
24
|
+
|
|
25
|
+
${u}`},{name:`Codex`,copyright:`2025 OpenAI`,license:`Apache-2.0`,url:`https://github.com/openai/codex`},{name:`Claude Agent SDK`,copyright:`2025 Anthropic, PBC`,license:`MIT`,url:`https://github.com/anthropics/anthropic-sdk-python`,fullText:`MIT License
|
|
26
|
+
|
|
27
|
+
Copyright (c) 2025 Anthropic, PBC
|
|
28
|
+
|
|
29
|
+
${u}`}],m=`underline decoration-muted-foreground/30 underline-offset-2 transition-colors hover:text-foreground`,h=`relative overflow-hidden rounded-2xl border bg-card text-card-foreground shadow-xs/5 not-dark:bg-clip-padding before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-2xl)-1px)] before:shadow-[0_1px_--theme(--color-black/4%)] dark:before:shadow-[0_-1px_--theme(--color-white/6%)]`;function g(){let e=(0,s.c)(7),t;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=new Set,e[0]=t):t=e[0];let[n,r]=(0,c.useState)(t),u;e[1]===Symbol.for(`react.memo_cache_sentinel`)?(u=function(e){r(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},e[1]=u):u=e[1];let d=u,g;e[2]===Symbol.for(`react.memo_cache_sentinel`)?(g=(0,l.jsx)(`h2`,{className:`text-[11px] font-medium text-muted-foreground`,children:`Credits / Licenses`}),e[2]=g):g=e[2];let _;e[3]===n?_=e[4]:(_=p.map((e,t)=>{let r=e.fullText??f[e.license],s=n.has(e.name);return(0,l.jsxs)(`div`,{className:t>0?`border-t border-border`:``,children:[(0,l.jsxs)(`button`,{type:`button`,className:`flex w-full cursor-pointer items-center gap-3 px-4 py-2.5 text-left sm:px-5`,onClick:()=>d(e.name),children:[(0,l.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,l.jsx)(`span`,{className:`text-sm text-foreground`,children:e.name}),e.copyright?(0,l.jsxs)(`p`,{className:`mt-0.5 text-xs text-muted-foreground`,children:[`© `,e.copyright]}):null]}),(0,l.jsx)(`span`,{className:`shrink-0 text-[11px] text-muted-foreground`,children:e.license}),(0,l.jsx)(i,{className:`size-3.5 shrink-0 text-muted-foreground transition-transform duration-200 ${s?`rotate-180`:``}`})]}),(0,l.jsx)(o,{open:s,children:(0,l.jsx)(a,{children:(0,l.jsxs)(`div`,{className:`border-t border-border/50 px-4 py-3 sm:px-5`,children:[(0,l.jsx)(`div`,{className:`flex items-center gap-2 pb-2`,children:(0,l.jsx)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,className:`text-xs text-muted-foreground ${m}`,children:`View on GitHub`})}),r?(0,l.jsx)(`pre`,{className:`whitespace-pre-wrap text-[11px] leading-relaxed text-muted-foreground`,children:r}):(0,l.jsx)(`p`,{className:`text-[11px] text-muted-foreground`,children:`See repository for full license text.`})]})})})]},e.name)}),e[3]=n,e[4]=_);let v;return e[5]===_?v=e[6]:(v=(0,l.jsx)(`div`,{className:`flex-1 overflow-y-auto p-6`,children:(0,l.jsx)(`div`,{className:`mx-auto flex w-full max-w-4xl flex-col gap-6`,children:(0,l.jsxs)(`section`,{className:`space-y-3`,children:[g,(0,l.jsx)(`div`,{className:h,children:_})]})})}),e[5]=_,e[6]=v),v}var _=g;export{_ as component};
|
|
30
|
+
//# sourceMappingURL=settings.credits-Brx-cGXe.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import"./vendor--effect-atom-react-6hEhKm5I.js";import"./vendor--floating-ui-react-dom-CGq-bz3X.js";import"./vendor-react-BvVnE5E6.js";import"./vendor-tanstack-CM5SpFmF.js";import"./vendor--lexical-react-B6TeCrpE.js";import"./clientSettings--1UP2ayD.js";import"./vendor-effect-Chd9hYxF.js";import"./utils-B-Di8CjF.js";import"./store-BQMb1nBV.js";import"./terminalStateStore-C38k-Eaw.js";import"./uiStateStore-Di3ieZaJ.js";import"./vendor-ui-DmvKhMzf.js";import"./useSettings-DOuHg9jg.js";import"./useHandleNewThread-WYMZPumx.js";import"./gitReactQuery-BBOGuHot.js";import"./input-emuaAuIe.js";import"./ProviderModelPicker-BWTkQW8f.js";import"./empty-CwEqZDMX.js";import"./collapsible-CqRg_DyH.js";import{i as e}from"./SettingsPanels-DGYlfoWv.js";var t=e;export{t as component};
|
|
2
|
+
//# sourceMappingURL=settings.general-BXcV60tY.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-COnpUsM8.js";import{Ci as t}from"./vendor--effect-atom-react-6hEhKm5I.js";import"./vendor--floating-ui-react-dom-CGq-bz3X.js";import{t as n}from"./vendor-react-BvVnE5E6.js";import{d as r}from"./vendor-tanstack-CM5SpFmF.js";import{c as i}from"./vendor--lexical-react-B6TeCrpE.js";import{f as a,s as o}from"./clientSettings--1UP2ayD.js";import"./vendor-effect-Chd9hYxF.js";import{rt as s,t as c}from"./utils-B-Di8CjF.js";import"./store-BQMb1nBV.js";import"./terminalStateStore-C38k-Eaw.js";import"./uiStateStore-Di3ieZaJ.js";import{Pn as l,Wn as u,Wr as d,fr as f,vr as p,wn as m}from"./vendor-ui-DmvKhMzf.js";import"./useSettings-DOuHg9jg.js";import"./useHandleNewThread-WYMZPumx.js";import"./gitReactQuery-BBOGuHot.js";import{t as h}from"./input-emuaAuIe.js";import"./scroll-area-kK2XF1gm.js";import{F as g,N as _,P as v,d as y,it as b}from"./index-DvBh1mNh.js";import{a as x,i as S,o as C,r as w,s as T}from"./ProviderModelPicker-BWTkQW8f.js";import{a as E,c as D,i as O,l as k,n as A,r as ee,s as te,t as ne}from"./dialog-C7Ppq2qI.js";import{t as re}from"./badge-BkzSFcY-.js";import{a as j,i as M,o as ie,r as N,t as ae}from"./empty-CwEqZDMX.js";import"./collapsible-CqRg_DyH.js";import{a as P,f as oe,o as F,p as I,s as L}from"./SettingsPanels-DGYlfoWv.js";import{a as se,i as R,o as z,r as B,s as V,t as H}from"./skillsMcpShared-DxxY1mEt.js";var U=n(),W=e(t(),1),G=i();function K(e){return[e.name,e.transport,e.transport===`stdio`?[e.command??``,...e.args??[]].join(` `):e.url??``,JSON.stringify(e.headers??{}),JSON.stringify(e.envHttpHeaders??{}),e.bearerTokenEnvVar??``,(e.oauthScopes??[]).join(`,`),e.oauthResource??``,e.providers.join(`,`)].join(`|`)}function q(e){return e.name.replace(/^(codex|claude):/,``)}function J(e){return[e.source,e.sourceName??``,e.configPath??``,K(e)].join(`|`)}function Y(e){return Object.keys(e??{}).some(e=>e.toLowerCase()===`authorization`)}function X(e){return e.transport!==`stdio`&&!Y(e.headers)&&!Y(e.envHttpHeaders)&&!e.bearerTokenEnvVar?.trim()}function Z(e){let t=(0,U.c)(4),{transport:n}=e,r;t[0]===n?r=t[1]:(r=n===`stdio`?`stdio`:n.toUpperCase(),t[0]=n,t[1]=r);let i=r,a;return t[2]===i?a=t[3]:(a=(0,G.jsx)(re,{variant:`secondary`,className:`text-[10px] font-mono uppercase`,children:i}),t[2]=i,t[3]=a),a}function ce(e){let t=(0,U.c)(45),{server:n,onToggle:r,onDelete:i,onAuthenticate:a,authPending:s,grouped:u}=e,f;t[0]!==n.args||t[1]!==n.command||t[2]!==n.transport||t[3]!==n.url?(f=n.transport===`stdio`?[n.command,...n.args??[]].join(` `):n.url??``,t[0]=n.args,t[1]=n.command,t[2]=n.transport,t[3]=n.url,t[4]=f):f=t[4];let p=f,m=n.auth.status===`unauthenticated`,h=n.auth.message??`Authentication required`,g=n.auth.status===`authenticated`?`Authenticated`:null,_=m&&typeof a==`function`,v=u&&`pl-10 sm:pl-11`,y;t[5]===v?y=t[6]:(y=c(`flex items-center gap-3 border-t border-border/60 px-4 py-2.5 sm:px-5`,v),t[5]=v,t[6]=y);let b;t[7]===n?b=t[8]:(b=q(n),t[7]=n,t[8]=b);let x;t[9]===b?x=t[10]:(x=(0,G.jsx)(`span`,{className:`text-sm font-medium text-foreground`,children:b}),t[9]=b,t[10]=x);let S;t[11]!==h||t[12]!==m?(S=m?(0,G.jsx)(`span`,{title:h,children:(0,G.jsx)(d,{className:`size-3.5 shrink-0 text-amber-600`,"aria-label":h})}):null,t[11]=h,t[12]=m,t[13]=S):S=t[13];let C;t[14]===n.transport?C=t[15]:(C=(0,G.jsx)(Z,{transport:n.transport}),t[14]=n.transport,t[15]=C);let w;t[16]!==x||t[17]!==S||t[18]!==C?(w=(0,G.jsxs)(`div`,{className:`flex items-center gap-2`,children:[x,S,C]}),t[16]=x,t[17]=S,t[18]=C,t[19]=w):w=t[19];let T;t[20]===p?T=t[21]:(T=(0,G.jsx)(`p`,{className:`truncate font-mono text-[11px] text-muted-foreground`,children:p}),t[20]=p,t[21]=T);let E;t[22]!==w||t[23]!==T?(E=(0,G.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[w,T]}),t[22]=w,t[23]=T,t[24]=E):E=t[24];let D;t[25]!==g||t[26]!==h||t[27]!==s||t[28]!==a||t[29]!==_?(D=_?(0,G.jsx)(o,{size:`xs`,variant:`link`,className:`h-auto px-0 text-amber-700 hover:text-amber-800`,disabled:s,onClick:a,title:h,children:s?`Authenticating…`:`Authenticate`}):g?(0,G.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:g}):null,t[25]=g,t[26]=h,t[27]=s,t[28]=a,t[29]=_,t[30]=D):D=t[30];let O;t[31]!==r||t[32]!==n.enabled||t[33]!==n.readOnly?(O=(0,G.jsx)(I,{checked:n.enabled,disabled:n.readOnly,onCheckedChange:r}),t[31]=r,t[32]=n.enabled,t[33]=n.readOnly,t[34]=O):O=t[34];let k;t[35]===i?k=t[36]:(k=i?(0,G.jsx)(o,{size:`icon-xs`,variant:`ghost`,onClick:i,children:(0,G.jsx)(l,{className:`size-3.5 text-muted-foreground`})}):null,t[35]=i,t[36]=k);let A;t[37]!==D||t[38]!==O||t[39]!==k?(A=(0,G.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[D,O,k]}),t[37]=D,t[38]=O,t[39]=k,t[40]=A):A=t[40];let ee;return t[41]!==E||t[42]!==A||t[43]!==y?(ee=(0,G.jsxs)(`div`,{className:y,children:[E,A]}),t[41]=E,t[42]=A,t[43]=y,t[44]=ee):ee=t[44],ee}var le=[{value:`stdio`,label:`stdio`},{value:`sse`,label:`SSE`},{value:`http`,label:`HTTP`}],ue=[{value:`claudeAgent`,label:s.claudeAgent},{value:`glm`,label:s.glm},{value:`codex`,label:s.codex}];function de(e){let t=(0,U.c)(51),{onAdd:n}=e,[r,i]=(0,W.useState)(!1),[a,s]=(0,W.useState)(``),[c,l]=(0,W.useState)(`stdio`),[d,f]=(0,W.useState)(``),[p,m]=(0,W.useState)(``),[g,_]=(0,W.useState)(``),v;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(v=[],t[0]=v):v=t[0];let[y,b]=(0,W.useState)(v),S;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(S=()=>{s(``),l(`stdio`),f(``),m(``),_(``),b([])},t[1]=S):S=t[1];let re=S,j=a.trim().length>0&&(c===`stdio`?p.trim().length>0:d.trim().length>0),M;t[2]!==g||t[3]!==p||t[4]!==j||t[5]!==a||t[6]!==n||t[7]!==y||t[8]!==c||t[9]!==d?(M=()=>{j&&(n({name:a.trim(),transport:c,enabled:!0,providers:y,...c===`stdio`?{command:p.trim(),...g.trim()?{args:g.trim().split(/\s+/)}:{}}:{url:d.trim()}}),re(),i(!1))},t[2]=g,t[3]=p,t[4]=j,t[5]=a,t[6]=n,t[7]=y,t[8]=c,t[9]=d,t[10]=M):M=t[10];let ie=M,N;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(N=e=>{b(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},t[11]=N):N=t[11];let ae=N,P;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(P=(0,G.jsx)(k,{render:(0,G.jsxs)(o,{size:`sm`,variant:`outline`,className:`gap-1.5`,children:[(0,G.jsx)(u,{className:`size-3.5`}),`Add Server`]})}),t[12]=P):P=t[12];let F;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(F=(0,G.jsxs)(E,{children:[(0,G.jsx)(D,{children:`Add MCP Server`}),(0,G.jsx)(ee,{children:`Configure an MCP server to extend your coding agent with additional tools.`})]}),t[13]=F):F=t[13];let I;t[14]===ie?I=t[15]:(I=e=>{e.preventDefault(),ie()},t[14]=ie,t[15]=I);let L;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(L=(0,G.jsxs)(`label`,{htmlFor:`mcp-server-name`,className:`text-sm font-medium`,children:[`Name `,(0,G.jsx)(`span`,{className:`text-destructive`,children:`*`})]}),t[16]=L):L=t[16];let se;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(se=e=>s(e.target.value),t[17]=se):se=t[17];let R;t[18]===a?R=t[19]:(R=(0,G.jsxs)(`div`,{className:`space-y-1.5`,children:[L,(0,G.jsx)(h,{id:`mcp-server-name`,required:!0,autoComplete:`off`,placeholder:`e.g. GitHub, Filesystem`,value:a,onChange:se})]}),t[18]=a,t[19]=R);let z;t[20]===Symbol.for(`react.memo_cache_sentinel`)?(z=(0,G.jsx)(`label`,{className:`text-sm font-medium`,children:`Transport`}),t[20]=z):z=t[20];let B;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(B=e=>l(e),t[21]=B):B=t[21];let V;t[22]===Symbol.for(`react.memo_cache_sentinel`)?(V=(0,G.jsx)(C,{children:(0,G.jsx)(T,{})}),t[22]=V):V=t[22];let H;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(H=(0,G.jsx)(x,{children:le.map(fe)}),t[23]=H):H=t[23];let K;t[24]===c?K=t[25]:(K=(0,G.jsxs)(`div`,{className:`space-y-1.5`,children:[z,(0,G.jsxs)(w,{value:c,onValueChange:B,children:[V,H]})]}),t[24]=c,t[25]=K);let q;t[26]!==g||t[27]!==p||t[28]!==c||t[29]!==d?(q=c===`stdio`?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,G.jsxs)(`label`,{htmlFor:`mcp-server-command`,className:`text-sm font-medium`,children:[`Command `,(0,G.jsx)(`span`,{className:`text-destructive`,children:`*`})]}),(0,G.jsx)(h,{id:`mcp-server-command`,required:!0,autoComplete:`off`,placeholder:`e.g. npx, node, python`,value:p,onChange:e=>m(e.target.value),className:`font-mono`})]}),(0,G.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,G.jsxs)(`label`,{htmlFor:`mcp-server-args`,className:`text-sm font-medium`,children:[`Arguments `,(0,G.jsx)(`span`,{className:`text-muted-foreground`,children:`(optional)`})]}),(0,G.jsx)(h,{id:`mcp-server-args`,autoComplete:`off`,placeholder:`e.g. -y @modelcontextprotocol/server-github`,value:g,onChange:e=>_(e.target.value),className:`font-mono`})]})]}):(0,G.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,G.jsxs)(`label`,{htmlFor:`mcp-server-url`,className:`text-sm font-medium`,children:[`URL `,(0,G.jsx)(`span`,{className:`text-destructive`,children:`*`})]}),(0,G.jsx)(h,{id:`mcp-server-url`,required:!0,autoComplete:`url`,placeholder:`https://mcp.example.com/sse`,value:d,onChange:e=>f(e.target.value),className:`font-mono`})]}),t[26]=g,t[27]=p,t[28]=c,t[29]=d,t[30]=q):q=t[30];let J;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(J=(0,G.jsxs)(`div`,{className:`text-sm font-medium`,children:[`Providers `,(0,G.jsx)(`span`,{className:`font-normal text-muted-foreground`,children:`(none = all)`})]}),t[31]=J):J=t[31];let Y;t[32]===y?Y=t[33]:(Y=ue.map(e=>(0,G.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2.5 text-sm`,children:[(0,G.jsx)(oe,{checked:y.includes(e.value),onCheckedChange:()=>ae(e.value)}),(0,G.jsx)(`span`,{className:`select-none`,children:e.label})]},e.value)),t[32]=y,t[33]=Y);let X;t[34]===Y?X=t[35]:(X=(0,G.jsxs)(`div`,{className:`space-y-2`,children:[J,(0,G.jsx)(`div`,{className:`flex flex-col gap-3 sm:flex-row sm:flex-wrap sm:gap-x-8 sm:gap-y-2`,children:Y})]}),t[34]=Y,t[35]=X);let Z;t[36]!==R||t[37]!==K||t[38]!==q||t[39]!==X?(Z=(0,G.jsxs)(`div`,{className:`space-y-4 px-6 py-4`,children:[R,K,q,X]}),t[36]=R,t[37]=K,t[38]=q,t[39]=X,t[40]=Z):Z=t[40];let ce;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(ce=(0,G.jsx)(A,{render:(0,G.jsx)(o,{variant:`outline`,type:`button`,children:`Cancel`})}),t[41]=ce):ce=t[41];let de=!j,Q;t[42]===de?Q=t[43]:(Q=(0,G.jsxs)(O,{children:[ce,(0,G.jsx)(o,{type:`submit`,disabled:de,children:`Add Server`})]}),t[42]=de,t[43]=Q);let $;t[44]!==Z||t[45]!==Q||t[46]!==I?($=(0,G.jsxs)(te,{className:`sm:max-w-md`,children:[F,(0,G.jsxs)(`form`,{className:`contents`,onSubmit:I,children:[Z,Q]})]}),t[44]=Z,t[45]=Q,t[46]=I,t[47]=$):$=t[47];let pe;return t[48]!==r||t[49]!==$?(pe=(0,G.jsxs)(ne,{open:r,onOpenChange:i,children:[P,$]}),t[48]=r,t[49]=$,t[50]=pe):pe=t[50],pe}function fe(e){return(0,G.jsx)(S,{value:e.value,children:e.label},e.value)}function Q(){let e=(0,U.c)(2),t=$,n;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,G.jsx)(m,{className:`size-3.5`}),e[0]=n):n=e[0];let r;return e[1]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,G.jsx)(L,{title:`Codex`,icon:n,children:(0,G.jsx)(F,{title:`Managed MCP at session start`,description:`ShioriCode injects configured MCP servers into an isolated Codex runtime home for each session, while Codex continues to load its own user and project config.`,control:(0,G.jsxs)(o,{size:`sm`,variant:`outline`,className:`gap-1.5`,onClick:t,children:[(0,G.jsx)(f,{className:`size-3`}),`Open global config.toml`]})})}),e[1]=r):r=e[1],r}function $(){let e={}.CODEX_HOME??`${{}.HOME??`~`}/.codex`;y(a(),`${e}/config.toml`).catch(pe)}function pe(){}function me(){let e=(0,U.c)(2),t=he,n;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(n=(0,G.jsx)(m,{className:`size-3.5`}),e[0]=n):n=e[0];let r;return e[1]===Symbol.for(`react.memo_cache_sentinel`)?(r=(0,G.jsx)(L,{title:`Claude`,icon:n,children:(0,G.jsx)(F,{title:`Filesystem settings`,description:`ShioriCode lets Claude load user and project MCP configuration from Claude settings sources.`,control:(0,G.jsxs)(o,{size:`sm`,variant:`outline`,className:`gap-1.5`,onClick:t,children:[(0,G.jsx)(f,{className:`size-3`}),`Open settings.json`]})})}),e[1]=r):r=e[1],r}function he(){let e={}.HOME??`~`;y(a(),`${e}/.claude/settings.json`).catch(ge)}function ge(){}function _e({servers:e,displayedServers:t,warnings:n,isLoading:r,authenticatingServerKey:i,onAdd:a,onAuthenticate:o,onToggle:s,onDelete:c,onDeleteExternal:l}){let[u,f]=(0,W.useState)(``),m=(0,W.useCallback)(t=>{if(t.readOnly)return-1;let n=K(t);return e.findIndex(e=>K(e)===n)},[e]),h=(0,W.useMemo)(()=>u?t.filter(e=>z(u,e.name,e.source,e.transport,e.url,e.command)):t,[t,u]),y=(0,W.useMemo)(()=>se(h),[h]),b=t.length>5,x=y.size>1,S=(e,t)=>{let n=m(e);return(0,G.jsx)(ce,{server:e,grouped:t,authPending:i===J(e),...X(e)?{onAuthenticate:()=>o(e)}:{},...n>=0?{onToggle:()=>s(n),onDelete:()=>c(n)}:{onDelete:()=>l(e)}},`${e.source}|${K(e)}`)};return(0,G.jsxs)(L,{title:`MCP Servers`,icon:(0,G.jsx)(p,{className:`size-3.5`}),headerAction:(0,G.jsx)(de,{onAdd:a}),children:[n.length>0?(0,G.jsx)(`div`,{className:`px-4 pb-0 pt-4 sm:px-5`,children:(0,G.jsxs)(_,{variant:`warning`,className:`rounded-2xl`,children:[(0,G.jsx)(d,{}),(0,G.jsx)(g,{children:`MCP needs attention`}),(0,G.jsx)(v,{children:n.map(e=>(0,G.jsx)(`p`,{children:e},e))})]})}):null,t.length===0?(0,G.jsxs)(ae,{className:`min-h-48`,children:[(0,G.jsx)(j,{variant:`icon`,children:(0,G.jsx)(p,{})}),(0,G.jsxs)(M,{children:[(0,G.jsx)(ie,{children:r?`Loading MCP servers`:`No MCP servers configured`}),(0,G.jsx)(N,{children:r?`Checking ShioriCode, Codex, and Claude MCP configuration.`:`Add MCP servers to extend your coding agents with additional tools and capabilities.`})]})]}):(0,G.jsxs)(G.Fragment,{children:[b?(0,G.jsx)(B,{value:u,onChange:f,placeholder:`Filter MCP servers…`,resultCount:h.length,totalCount:t.length}):null,(0,G.jsx)(`div`,{className:`max-h-96 overflow-y-auto`,children:h.length===0?(0,G.jsxs)(`p`,{className:`px-4 py-6 text-center text-sm text-muted-foreground sm:px-5`,children:[`No servers match “`,u,`”`]}):x?Array.from(y.entries()).map(([e,t])=>(0,G.jsx)(R,{source:e,count:t.length,defaultOpen:!0,children:t.map(e=>S(e,!0))},e)):h.map(e=>S(e,!1))})]})]})}function ve(){let{servers:e,persistServers:t,queryClient:n}=V(),[i,o]=(0,W.useState)(null),s=r({queryKey:H,queryFn:()=>a().server.listMcpServers(),staleTime:5e3}),c=e.map(e=>({...e,source:e.providers.includes(`claudeAgent`)?`claude`:`codex`,readOnly:!1,auth:{status:`unknown`}})),l=s.data?.servers??c,u=s.data?.warnings??[],d=(0,W.useCallback)(n=>{t([...e,n])},[t,e]),f=(0,W.useCallback)(n=>{t(e.map((e,t)=>t===n?{...e,enabled:!e.enabled}:e))},[t,e]),p=(0,W.useCallback)(n=>{t(e.filter((e,t)=>t!==n))},[t,e]),m=(0,W.useCallback)(e=>{a().server.removeMcpServer({source:e.source,name:e.name,...e.sourceName?{sourceName:e.sourceName}:{},...e.configPath?{configPath:e.configPath}:{}}).then(()=>n.invalidateQueries({queryKey:H}))},[n]),h=(0,W.useCallback)(async e=>{let t=J(e);o(t);try{await a().server.authenticateMcpServer({source:e.source,name:e.name,...e.sourceName?{sourceName:e.sourceName}:{},...e.configPath?{configPath:e.configPath}:{}}),b.add({type:`success`,title:`Authenticated ${q(e)}`})}catch(e){b.add({type:`error`,title:e instanceof Error?e.message:`Failed to authenticate MCP server.`})}finally{o(e=>e===t?null:e),n.invalidateQueries({queryKey:H})}},[n]);return(0,G.jsxs)(P,{children:[(0,G.jsx)(_e,{servers:e,displayedServers:l,warnings:u,isLoading:s.isLoading,authenticatingServerKey:i,onAdd:d,onAuthenticate:h,onToggle:f,onDelete:p,onDeleteExternal:m}),(0,G.jsx)(Q,{}),(0,G.jsx)(me,{})]})}var ye=ve;export{ye as component};
|
|
2
|
+
//# sourceMappingURL=settings.mcp-DEMm4v5q.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-COnpUsM8.js";import{Ci as t}from"./vendor--effect-atom-react-6hEhKm5I.js";import"./vendor--floating-ui-react-dom-CGq-bz3X.js";import{t as n}from"./vendor-react-BvVnE5E6.js";import"./vendor-tanstack-CM5SpFmF.js";import{c as r}from"./vendor--lexical-react-B6TeCrpE.js";import{s as i}from"./clientSettings--1UP2ayD.js";import"./vendor-effect-Chd9hYxF.js";import{d as a,t as o}from"./utils-B-Di8CjF.js";import"./store-BQMb1nBV.js";import"./terminalStateStore-C38k-Eaw.js";import"./uiStateStore-Di3ieZaJ.js";import{$n as s,An as c,Ar as l,Fn as u,Nr as d,Vr as f,Yn as p}from"./vendor-ui-DmvKhMzf.js";import"./useSettings-DOuHg9jg.js";import"./useHandleNewThread-WYMZPumx.js";import"./gitReactQuery-BBOGuHot.js";import"./input-emuaAuIe.js";import{F as m,N as h,P as g,jt as _}from"./index-DvBh1mNh.js";import"./ProviderModelPicker-BWTkQW8f.js";import"./empty-CwEqZDMX.js";import"./collapsible-CqRg_DyH.js";import{a as v,o as y,s as b}from"./SettingsPanels-DGYlfoWv.js";import{t as x}from"./vendor-qrcode-generator-BI2MWdJH.js";var S=n(),C=e(t(),1),w=r();function T(e,t={}){let n=new URL(a({protocol:`http`,pathname:e}));for(let[e,r]of Object.entries(t))n.searchParams.set(e,r);return n.toString()}async function E(e,t,n){let r=await fetch(T(e,n),{...t,headers:{"Content-Type":`application/json`,...t?.headers}}),i=await r.json();if(!r.ok||!i.success)throw Error(i.success?`Mobile pairing request failed.`:i.error);return i.data}var D=[`Install ShioriCode from the App Store on your iPhone.`,`Open the app and tap “Pair a desktop”.`,`Point the camera at the code shown here.`];function O(e){let t=(0,S.c)(5),[n,r]=(0,C.useState)(k),i,a;if(t[0]===e?(i=t[1],a=t[2]):(i=()=>{if(!e)return;let t=window.setInterval(()=>r(Date.now()),1e3);return()=>window.clearInterval(t)},a=[e],t[0]=e,t[1]=i,t[2]=a),(0,C.useEffect)(i,a),!e)return null;let o=new Date(e).getTime()-n,s;return t[3]===o?s=t[4]:(s=Number.isNaN(o)?null:Math.max(0,o),t[3]=o,t[4]=s),s}function k(){return Date.now()}function A(e){let t=Math.ceil(e/1e3);return`${Math.floor(t/60)}:${(t%60).toString().padStart(2,`0`)}`}function j(){let e=_(),[t,n]=(0,C.useState)(null),[r,a]=(0,C.useState)(null),[S,T]=(0,C.useState)(null),[k,j]=(0,C.useState)(!1),[M,N]=(0,C.useState)(null),[P,F]=(0,C.useState)(!1),I=O(t?.expiresAt??null),L=I!==null&&I<=0,R=typeof navigator<`u`&&!!navigator.clipboard,z=(0,C.useMemo)(()=>e?M?{dot:`bg-destructive`,label:`Error`}:r?.paired?{dot:`bg-success`,label:`Paired`}:L?{dot:`bg-warning`,label:`Expired`}:t?{dot:`bg-info`,label:`Waiting`,pulse:!0}:{dot:`bg-muted-foreground/40`,label:`Loading`}:{dot:`bg-muted-foreground/40`,label:`Disabled`},[e,M,r?.paired,L,t]),B=(0,C.useCallback)(async()=>{if(j(!0),N(null),F(!1),!e){n(null),a(null),T(null),j(!1);return}try{let e=await E(`/api/mobile/pairing-sessions`,{method:`POST`,body:`{}`});n(e),a(null);let t=x(0,`M`);t.addData(e.qrPayload,`Byte`),t.make(),T(t.createDataURL(8,1))}catch(e){N(e instanceof Error?e.message:`Failed to create pairing QR code.`),n(null),a(null),T(null)}finally{j(!1)}},[e]);(0,C.useEffect)(()=>{e&&B()},[B,e]),(0,C.useEffect)(()=>{if(!e||!t||r?.paired||L)return;let n=window.setInterval(()=>{E(`/api/mobile/pairing-sessions/status`,{method:`GET`},{pairingId:t.pairingId}).then(a).catch(()=>void 0)},1500);return()=>window.clearInterval(n)},[e,t,r?.paired,L]);let V=(0,C.useCallback)(async()=>{!t?.qrPayload||typeof navigator>`u`||!navigator.clipboard||(await navigator.clipboard.writeText(t.qrPayload),F(!0),window.setTimeout(()=>F(!1),1200))},[t?.qrPayload]);return(0,w.jsx)(v,{children:(0,w.jsx)(b,{title:`Mobile App`,icon:(0,w.jsx)(f,{className:`size-3.5`}),headerAction:(0,w.jsxs)(`div`,{className:`flex items-center gap-2`,children:[e?(0,w.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 text-[11px] font-medium text-muted-foreground`,children:[(0,w.jsx)(`span`,{className:o(`size-1.5 rounded-full`,z.dot,z.pulse&&`animate-pulse`)}),z.label]}):null,(0,w.jsxs)(i,{size:`xs`,variant:`outline`,disabled:k||!e,onClick:()=>void B(),children:[k?(0,w.jsx)(c,{className:`size-3.5 animate-spin`}):(0,w.jsx)(p,{className:`size-3.5`}),`New code`]})]}),children:e?(0,w.jsx)(w.Fragment,{children:(0,w.jsx)(y,{title:`Pair your iPhone`,description:`Scan this code from the ShioriCode iOS app — over the same network, or from anywhere when both devices are on Tailscale.`,children:(0,w.jsxs)(`div`,{className:`mt-1 grid gap-4 md:grid-cols-[auto_1fr] md:items-start`,children:[(0,w.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[(0,w.jsx)(`div`,{className:`flex size-56 items-center justify-center rounded-xl border border-border bg-white p-3 shadow-inner sm:size-60`,children:S?(0,w.jsx)(`img`,{src:S,alt:`ShioriCode mobile pairing QR code`,className:`size-full rounded-md`}):(0,w.jsx)(c,{className:`size-6 animate-spin text-muted-foreground`})}),I===null?null:(0,w.jsxs)(`div`,{className:o(`inline-flex items-center gap-1.5 rounded-full border px-2.5 py-0.5 text-[11px] font-medium tabular-nums`,L||I<3e4?`border-warning/30 text-warning`:`border-border text-muted-foreground`),children:[(0,w.jsx)(u,{className:`size-3`}),L?`Expired`:`Expires in ${A(I)}`]})]}),(0,w.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-3`,children:[r?.paired?(0,w.jsxs)(h,{variant:`success`,children:[(0,w.jsx)(d,{}),(0,w.jsx)(m,{children:`Paired`}),(0,w.jsxs)(g,{children:[r.pairedDeviceName??`Your iPhone`,` is connected to this desktop.`]})]}):L?(0,w.jsxs)(h,{variant:`warning`,children:[(0,w.jsx)(u,{}),(0,w.jsx)(m,{children:`Code expired`}),(0,w.jsx)(g,{children:`This code is no longer valid. Generate a new one to finish pairing.`})]}):(0,w.jsxs)(h,{variant:`info`,children:[(0,w.jsx)(f,{}),(0,w.jsx)(m,{children:`Waiting for scan`}),(0,w.jsx)(g,{children:`The code is single-use and short-lived.`})]}),M?(0,w.jsxs)(h,{variant:`error`,children:[(0,w.jsx)(m,{children:`Pairing unavailable`}),(0,w.jsx)(g,{children:M})]}):null,r?.paired?(0,w.jsx)(`p`,{className:`text-xs leading-5 text-muted-foreground`,children:`You can now start threads, watch runs, and approve actions from your iPhone.`}):(0,w.jsx)(`ol`,{className:`space-y-2`,children:D.map((e,t)=>(0,w.jsxs)(`li`,{className:`flex items-start gap-2.5`,children:[(0,w.jsx)(`span`,{className:`mt-px flex size-5 shrink-0 items-center justify-center rounded-full border border-border bg-muted/40 text-[11px] font-medium text-muted-foreground`,children:t+1}),(0,w.jsx)(`span`,{className:`text-xs leading-5 text-muted-foreground`,children:e})]},e))}),(0,w.jsx)(`div`,{children:(0,w.jsxs)(i,{size:`sm`,variant:`outline`,disabled:!t?.qrPayload||!R,onClick:()=>void V(),children:[(0,w.jsx)(l,{className:`size-3.5`}),P?`Copied`:`Copy pairing payload`]})})]})]})})}):(0,w.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-3 px-6 py-12 text-center`,children:[(0,w.jsx)(`div`,{className:`flex size-10 items-center justify-center rounded-lg border bg-muted/40 text-muted-foreground`,children:(0,w.jsx)(s,{className:`size-5`})}),(0,w.jsxs)(`div`,{className:`space-y-1`,children:[(0,w.jsx)(`p`,{className:`text-sm font-medium text-foreground`,children:`Mobile pairing is disabled`}),(0,w.jsx)(`p`,{className:`mx-auto max-w-sm text-xs leading-5 text-muted-foreground`,children:`Mobile pairing is currently disabled for this ShioriCode deployment. Enable it from your server configuration to pair your iPhone.`})]})]})})})}var M=j;export{M as component};
|
|
2
|
+
//# sourceMappingURL=settings.mobile-DF1raoba.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import"./vendor--effect-atom-react-6hEhKm5I.js";import"./vendor--floating-ui-react-dom-CGq-bz3X.js";import{t as e}from"./vendor-react-BvVnE5E6.js";import"./vendor-tanstack-CM5SpFmF.js";import{c as t}from"./vendor--lexical-react-B6TeCrpE.js";import{f as n,s as r}from"./clientSettings--1UP2ayD.js";import"./vendor-effect-Chd9hYxF.js";import"./utils-B-Di8CjF.js";import"./store-BQMb1nBV.js";import"./terminalStateStore-C38k-Eaw.js";import"./uiStateStore-Di3ieZaJ.js";import{En as i,Pn as a,Wn as o,_r as s,fr as c,mr as l,yn as u}from"./vendor-ui-DmvKhMzf.js";import"./useSettings-DOuHg9jg.js";import"./useHandleNewThread-WYMZPumx.js";import"./gitReactQuery-BBOGuHot.js";import"./input-emuaAuIe.js";import{it as d}from"./index-DvBh1mNh.js";import"./ProviderModelPicker-BWTkQW8f.js";import{t as f}from"./badge-BkzSFcY-.js";import"./empty-CwEqZDMX.js";import"./collapsible-CqRg_DyH.js";import{a as p,p as m,s as h}from"./SettingsPanels-DGYlfoWv.js";import{s as g}from"./skillsMcpShared-DxxY1mEt.js";import{a as _,i as v,n as y,r as b,t as x}from"./vendor-react-icons-DMjx4moa.js";var S=e(),C={github:x,notion:y,stripe:b,vercel:_,context7:v,filesystem:s,playwright:l,"sequential-thinking":i};function w(e){return C[e]??u}var T=`marketplace-`,E=[{id:`github`,name:`GitHub`,category:`Developer`,summary:`Repository, issue, pull request, and code search tools for agent sessions.`,commandPreview:`npx -y @modelcontextprotocol/server-github`,docsUrl:`https://github.com/modelcontextprotocol/servers/tree/main/src/github`,requiredEnvironment:[`GITHUB_PERSONAL_ACCESS_TOKEN`],server:{transport:`stdio`,command:`npx`,args:[`-y`,`@modelcontextprotocol/server-github`],providers:[]}},{id:`filesystem`,name:`Filesystem`,category:`Files`,summary:`Read and write files in the current workspace through an MCP server.`,commandPreview:`npx -y @modelcontextprotocol/server-filesystem .`,docsUrl:`https://github.com/modelcontextprotocol/servers/tree/main/src/filesystem`,requiredEnvironment:[],server:{transport:`stdio`,command:`npx`,args:[`-y`,`@modelcontextprotocol/server-filesystem`,`.`],providers:[]}},{id:`context7`,name:`Context7`,category:`Knowledge`,summary:`Fetch current library documentation and code examples during implementation.`,commandPreview:`npx -y @upstash/context7-mcp`,docsUrl:`https://github.com/upstash/context7`,requiredEnvironment:[],server:{transport:`stdio`,command:`npx`,args:[`-y`,`@upstash/context7-mcp`],providers:[]}},{id:`playwright`,name:`Playwright`,category:`Browser`,summary:`Browser automation tools for inspecting, testing, and debugging local web apps.`,commandPreview:`npx -y @playwright/mcp@latest`,docsUrl:`https://github.com/microsoft/playwright-mcp`,requiredEnvironment:[],server:{transport:`stdio`,command:`npx`,args:[`-y`,`@playwright/mcp@latest`],providers:[]}},{id:`stripe`,name:`Stripe`,category:`Payments`,summary:`Inspect Stripe resources and documentation through Stripe's hosted OAuth MCP.`,commandPreview:`https://mcp.stripe.com`,docsUrl:`https://docs.stripe.com/mcp`,requiredEnvironment:[],server:{transport:`http`,url:`https://mcp.stripe.com`,oauthResource:`https://mcp.stripe.com`,providers:[]}},{id:`notion`,name:`Notion`,category:`Knowledge`,summary:`Search and update Notion workspace content through Notion's hosted OAuth MCP.`,commandPreview:`https://mcp.notion.com`,docsUrl:`https://developers.notion.com/guides/mcp/mcp`,requiredEnvironment:[],server:{transport:`http`,url:`https://mcp.notion.com`,oauthResource:`https://mcp.notion.com`,providers:[]}},{id:`vercel`,name:`Vercel`,category:`Developer`,summary:`Manage Vercel projects, deployments, logs, and docs through hosted OAuth MCP.`,commandPreview:`https://mcp.vercel.com`,docsUrl:`https://vercel.com/docs/agent-resources/vercel-mcp`,requiredEnvironment:[],server:{transport:`http`,url:`https://mcp.vercel.com`,oauthResource:`https://mcp.vercel.com`,providers:[]}},{id:`sequential-thinking`,name:`Sequential Thinking`,category:`Reasoning`,summary:`Structured scratchpad tools for planning, decomposition, and revision.`,commandPreview:`npx -y @modelcontextprotocol/server-sequential-thinking`,docsUrl:`https://github.com/modelcontextprotocol/servers/tree/main/src/sequentialthinking`,requiredEnvironment:[],server:{transport:`stdio`,command:`npx`,args:[`-y`,`@modelcontextprotocol/server-sequential-thinking`],providers:[]}}];function D(e){return`${T}${e}`}function O(e){return E.find(t=>t.id===e)}function k(e,t){let n=D(t);return e.find(e=>e.name===n)}function A(e){return{...e.server,name:D(e.id),enabled:!0}}function j(e,t){let n=O(t);if(!n)return[...e];let r=A(n),i=e.findIndex(e=>e.name===r.name);return i<0?[...e,r]:e.map((e,t)=>t===i?{...r,enabled:e.enabled}:e)}function M(e,t,n){let r=D(t);return e.map(e=>e.name===r?{...e,enabled:n}:e)}function N(e,t){let n=D(t);return e.filter(e=>e.name!==n)}var P=t();function F(e){let t=(0,S.c)(8),{servers:n,onInstall:i,onToggle:s,onUninstall:l}=e,d=I,p;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,P.jsx)(u,{className:`size-3.5`}),t[0]=p):p=t[0];let g;t[1]!==i||t[2]!==s||t[3]!==l||t[4]!==n?(g=E.map(e=>{let t=k(n,e.id),u=t?.enabled??!1;return(0,P.jsxs)(`div`,{className:`grid gap-3 px-4 py-3.5 sm:grid-cols-[minmax(0,1fr)_auto] sm:items-center sm:px-5`,children:[(0,P.jsxs)(`div`,{className:`flex min-w-0 items-start gap-3`,children:[(0,P.jsx)(`span`,{className:`mt-0.5 flex size-8 shrink-0 items-center justify-center rounded-lg border bg-card text-foreground`,children:(0,P.jsx)(w(e.id),{className:`size-4`})}),(0,P.jsxs)(`div`,{className:`min-w-0 space-y-2`,children:[(0,P.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-2`,children:[(0,P.jsx)(`h3`,{className:`min-w-0 text-sm font-medium text-foreground`,children:e.name}),(0,P.jsx)(f,{variant:`secondary`,className:`text-[10px]`,children:e.category}),t?(0,P.jsx)(f,{variant:u?`default`:`outline`,className:`text-[10px]`,children:u?`Enabled`:`Installed`}):null]}),(0,P.jsx)(`p`,{className:`max-w-[42rem] text-xs leading-5 text-muted-foreground`,children:e.summary}),(0,P.jsxs)(`div`,{className:`flex min-w-0 flex-wrap items-center gap-x-3 gap-y-1 text-[11px] text-muted-foreground`,children:[(0,P.jsx)(`span`,{className:`min-w-0 truncate font-mono`,children:e.commandPreview}),e.requiredEnvironment?.length?(0,P.jsxs)(`span`,{className:`shrink-0`,children:[`Requires `,e.requiredEnvironment.join(`, `)]}):null]})]})]}),(0,P.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2 sm:justify-end`,children:[e.docsUrl?(0,P.jsx)(r,{size:`icon-xs`,variant:`ghost`,"aria-label":`Open ${e.name} connector documentation`,onClick:()=>d(e.docsUrl),children:(0,P.jsx)(c,{className:`size-3.5 text-muted-foreground`})}):null,t?(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)(m,{checked:u,onCheckedChange:t=>s(e.id,t)}),(0,P.jsx)(r,{size:`icon-xs`,variant:`ghost`,"aria-label":`Uninstall ${e.name} connector`,onClick:()=>l(e.id),children:(0,P.jsx)(a,{className:`size-3.5 text-muted-foreground`})})]}):(0,P.jsxs)(r,{size:`sm`,variant:`outline`,className:`gap-1.5`,onClick:()=>i(e.id),children:[(0,P.jsx)(o,{className:`size-3.5`}),`Install`]})]})]},e.id)}),t[1]=i,t[2]=s,t[3]=l,t[4]=n,t[5]=g):g=t[5];let _;return t[6]===g?_=t[7]:(_=(0,P.jsx)(h,{title:`Plugin Marketplace`,icon:p,children:(0,P.jsx)(`div`,{className:`divide-y divide-border`,children:g})}),t[6]=g,t[7]=_),_}function I(e){n().shell.openExternal(e).catch(()=>{window.open(e,`_blank`,`noopener,noreferrer`)})}function L(){let e=(0,S.c)(14),{servers:t,persistServers:n}=g(),r;e[0]!==n||e[1]!==t?(r=e=>{n(j(t,e));let r=E.find(t=>t.id===e);d.add({type:`success`,title:r?`Installed ${r.name}`:`Installed connector`})},e[0]=n,e[1]=t,e[2]=r):r=e[2];let i=r,a;e[3]!==n||e[4]!==t?(a=(e,r)=>{n(M(t,e,r))},e[3]=n,e[4]=t,e[5]=a):a=e[5];let o=a,s;e[6]!==n||e[7]!==t?(s=e=>{n(N(t,e))},e[6]=n,e[7]=t,e[8]=s):s=e[8];let c=s,l;return e[9]!==i||e[10]!==o||e[11]!==c||e[12]!==t?(l=(0,P.jsx)(p,{children:(0,P.jsx)(F,{servers:t,onInstall:i,onToggle:o,onUninstall:c})}),e[9]=i,e[10]=o,e[11]=c,e[12]=t,e[13]=l):l=e[13],l}var R=L;export{R as component};
|
|
2
|
+
//# sourceMappingURL=settings.plugins-CewrpoKP.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-COnpUsM8.js";import{Ci as t}from"./vendor--effect-atom-react-6hEhKm5I.js";import"./vendor--floating-ui-react-dom-CGq-bz3X.js";import{t as n}from"./vendor-react-BvVnE5E6.js";import"./vendor-tanstack-CM5SpFmF.js";import{c as r}from"./vendor--lexical-react-B6TeCrpE.js";import{_ as i,s as a}from"./clientSettings--1UP2ayD.js";import"./vendor-effect-Chd9hYxF.js";import"./utils-B-Di8CjF.js";import"./store-BQMb1nBV.js";import"./terminalStateStore-C38k-Eaw.js";import"./uiStateStore-Di3ieZaJ.js";import{$n as o,An as s,Ar as c,Mr as l,Nr as u,Rn as d,Vr as f,Yn as p,fr as m,kr as h,mr as g,vr as _}from"./vendor-ui-DmvKhMzf.js";import"./useSettings-DOuHg9jg.js";import"./useHandleNewThread-WYMZPumx.js";import"./gitReactQuery-BBOGuHot.js";import{t as v}from"./input-emuaAuIe.js";import{D as y,F as b,N as x,P as S,l as C,u as w}from"./index-DvBh1mNh.js";import"./ProviderModelPicker-BWTkQW8f.js";import"./empty-CwEqZDMX.js";import"./collapsible-CqRg_DyH.js";import{a as T,o as E,s as D}from"./SettingsPanels-DGYlfoWv.js";import{t as O}from"./vendor-qrcode-generator-BI2MWdJH.js";var k=n(),A=e(t(),1),j=r();function ee(e){let t=(0,k.c)(24),{url:n}=e,[r,i]=(0,A.useState)(!1),[o,s]=(0,A.useState)(!1),l,d;if(t[0]!==n){let e=O(0,`M`);e.addData(n,`Byte`),e.make(),d=e.createDataURL(7,2),t[0]=n,t[1]=d}else d=t[1];l=d;let p=l,m=typeof navigator<`u`&&!!navigator.clipboard,h;t[2]===n?h=t[3]:(h=async()=>{m&&(await navigator.clipboard.writeText(n),s(!0),window.setTimeout(()=>s(!1),1200))},t[2]=n,t[3]=h);let g=h,_;t[4]===n?_=t[5]:(_=(0,j.jsx)(`code`,{className:`min-w-0 flex-1 truncate rounded-md border border-border bg-muted/40 px-3 py-2 text-xs`,children:n}),t[4]=n,t[5]=_);let v;t[6]===g?v=t[7]:(v=()=>void g(),t[6]=g,t[7]=v);let y;t[8]===o?y=t[9]:(y=o?(0,j.jsx)(u,{className:`size-3.5`}):(0,j.jsx)(c,{className:`size-3.5`}),t[8]=o,t[9]=y);let b=o?`Copied`:`Copy`,x;t[10]!==v||t[11]!==y||t[12]!==b?(x=(0,j.jsxs)(a,{size:`sm`,variant:`outline`,disabled:!m,onClick:v,children:[y,b]}),t[10]=v,t[11]=y,t[12]=b,t[13]=x):x=t[13];let S;t[14]===Symbol.for(`react.memo_cache_sentinel`)?(S=(0,j.jsxs)(a,{size:`sm`,variant:`outline`,onClick:()=>i(M),children:[(0,j.jsx)(f,{className:`size-3.5`}),`QR`]}),t[14]=S):S=t[14];let C;t[15]!==_||t[16]!==x?(C=(0,j.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[_,x,S]}),t[15]=_,t[16]=x,t[17]=C):C=t[17];let w;t[18]!==p||t[19]!==r?(w=r?(0,j.jsxs)(`div`,{className:`flex flex-col items-center gap-2 rounded-xl border border-border bg-white p-4`,children:[(0,j.jsx)(`img`,{src:p,alt:`Remote access QR code`,className:`size-56 max-w-full rounded-md`}),(0,j.jsx)(`p`,{className:`text-center text-xs text-muted-foreground`,children:`Scan with the iOS app to prefill Remote Server, or open it in a browser.`})]}):null,t[18]=p,t[19]=r,t[20]=w):w=t[20];let T;return t[21]!==C||t[22]!==w?(T=(0,j.jsxs)(`div`,{className:`space-y-3`,children:[C,w]}),t[21]=C,t[22]=w,t[23]=T):T=t[23],T}function M(e){return!e}var N=[{id:`method`,title:`Who can reach it`},{id:`prerequisites`,title:`Get ready`},{id:`credentials`,title:`Sign-in`},{id:`enable`,title:`Turn on`}],P=[{value:`shiori-link`,label:`ShioriCode Link`,badge:`Recommended · no Tailscale`,description:`Get a stable shiori.codes link through Shiori's hosted relay. Sign in once; this machine only makes an outbound encrypted connection.`},{value:`tailscale-serve`,label:`Only my devices`,badge:`Private · recommended`,description:`Reachable from devices signed into your tailnet (phone, laptop…) — Tailscale gates the network, your sign-in gates the app. No ports, DNS, or certificates to manage.`},{value:`tailscale-funnel`,label:`Public link`,badge:`Anywhere, behind sign-in`,description:`A public https://….ts.net address that works from any browser — your sign-in is the only gate, so use a strong password. Zero infrastructure.`}];function F(e,t){if(e===`shiori-link`)return[{id:`shiori-account`,label:`Shiori account is connected`,ok:t.link.accountLinked,hint:t.link.accountLinked?null:`Sign in to Shiori in your browser, then return here.`,href:null}];let n=t.tailscale,r=[{id:`installed`,label:`Tailscale is installed`,ok:n.installed,hint:n.installed?null:`Install Tailscale on this machine, then check again.`,href:n.installed?null:`https://tailscale.com/download`},{id:`running`,label:`Tailscale is connected`,ok:n.running,hint:n.running?null:n.backendState===`NeedsLogin`?"Open the Tailscale app and sign in (or run `tailscale up`).":"Open the Tailscale app or run `tailscale up`.",href:null}];return e===`tailscale-funnel`&&r.push({id:`https`,label:`HTTPS certificates are enabled on your tailnet`,ok:n.httpsEnabled,hint:n.httpsEnabled?null:`In the Tailscale admin console, open DNS and enable HTTPS certificates.`,href:n.httpsEnabled?null:`https://login.tailscale.com/admin/dns`}),r}function I(e){return e.keepExisting?null:e.username.trim()?e.password.length<8?`Use at least 8 characters — this password is the only thing between the internet and this machine.`:e.password===e.confirm?null:`Passwords don't match.`:`Pick a username.`}var L=4e3;function R({status:e,onStatus:t,onClose:n,initialMethod:r}){let[o,c]=(0,A.useState)(`method`),[f,h]=(0,A.useState)(r??`shiori-link`),[g,_]=(0,A.useState)(e.username??``),[y,T]=(0,A.useState)(``),[E,D]=(0,A.useState)(``),[O,k]=(0,A.useState)(e.authConfigured),[M,R]=(0,A.useState)(!1),[z,B]=(0,A.useState)(null),[V,H]=(0,A.useState)(!1),[U,W]=(0,A.useState)(null),[G,K]=(0,A.useState)(!1),q=N.findIndex(e=>e.id===o),J=(0,A.useCallback)(async()=>{try{t(await i().remote.getStatus())}catch{}},[t]);(0,A.useEffect)(()=>{if(o!==`prerequisites`)return;let e=window.setInterval(()=>void J(),L);return()=>window.clearInterval(e)},[o,J]);let te=(0,A.useCallback)(()=>{B(null);let e=N[q-1];e&&!V&&c(e.id)},[q,V]),ne=(0,A.useCallback)(()=>{B(null),c(`prerequisites`)},[]),re=(0,A.useCallback)(()=>{B(null),c(`credentials`)},[]),ie=(0,A.useCallback)(async()=>{R(!0),B(null);try{let e=await i().remote.beginLinkSignIn({provider:`github`});(await window.desktopBridge?.openExternal(e.authUrl)===!1||window.desktopBridge===void 0)&&window.open(e.authUrl,`_blank`,`noopener,noreferrer`)}catch(e){B(e instanceof Error?e.message:`Couldn't start Shiori sign-in.`)}finally{R(!1)}},[]),Y=(0,A.useCallback)(async()=>{B(null);let e=I({username:g,password:y,confirm:E,keepExisting:O});if(e){B(e);return}if(O){c(`enable`);return}R(!0);try{t(await i().remote.setCredentials({username:g.trim(),password:y})),await w(g.trim(),y),T(``),D(``),c(`enable`)}catch(e){B(e instanceof Error?e.message:`Couldn't save the credentials.`)}finally{R(!1)}},[g,y,E,O,t]),X=(0,A.useCallback)(async()=>{B(null),R(!0);try{t(await i().remote.setExposure({method:f})),H(!0)}catch(e){B(e instanceof Error?e.message:`Couldn't turn on remote access.`)}finally{R(!1)}},[f,t]),ae=(0,A.useCallback)(async()=>{K(!0),W(null);try{W(await i().remote.testConnection())}catch(e){W({ok:!1,url:null,latencyMs:null,error:e instanceof Error?e.message:`Test failed.`})}finally{K(!1)}},[]),Z=F(f,e),Q=Z.every(e=>e.ok),$=P.find(e=>e.value===f);return(0,j.jsxs)(`div`,{className:`space-y-4 px-4 py-4 sm:px-5`,children:[(0,j.jsx)(`ol`,{className:`flex flex-wrap items-center gap-x-2 gap-y-1 text-[11px]`,children:N.map((e,t)=>{let n=t<q?`done`:t===q?`current`:`upcoming`;return(0,j.jsxs)(`li`,{className:`flex items-center gap-2`,children:[t>0?(0,j.jsx)(`span`,{className:`text-muted-foreground/40`,children:`—`}):null,(0,j.jsxs)(`span`,{className:n===`current`?`font-medium text-foreground`:n===`done`?`text-primary`:`text-muted-foreground`,children:[t+1,`. `,e.title]})]},e.id)})}),z?(0,j.jsxs)(x,{variant:`error`,children:[(0,j.jsx)(b,{children:`Couldn't continue`}),(0,j.jsx)(S,{children:z})]}):null,o===`method`?(0,j.jsx)(`div`,{className:`space-y-3`,children:(0,j.jsx)(`div`,{className:`grid gap-2`,children:P.map(e=>{let t=f===e.value;return(0,j.jsxs)(`button`,{type:`button`,onClick:()=>h(e.value),className:`flex flex-col items-start gap-0.5 rounded-lg border px-3 py-2.5 text-left transition-colors ${t?`border-primary bg-primary/5 ring-1 ring-primary`:`border-border hover:bg-muted/40`}`,children:[(0,j.jsxs)(`span`,{className:`flex items-center gap-2 text-sm font-medium text-foreground`,children:[t?(0,j.jsx)(u,{className:`size-3.5 text-primary`}):null,e.label,(0,j.jsx)(`span`,{className:`rounded-full border border-border px-1.5 py-px text-[10px] font-normal text-muted-foreground`,children:e.badge})]}),(0,j.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:e.description})]},e.value)})})}):null,o===`prerequisites`?(0,j.jsxs)(`div`,{className:`space-y-3`,children:[(0,j.jsx)(`ul`,{className:`divide-y divide-border rounded-lg border border-border`,children:Z.map(e=>(0,j.jsxs)(`li`,{className:`flex items-start gap-2.5 px-3 py-2.5`,children:[e.ok?(0,j.jsx)(u,{className:`mt-0.5 size-4 shrink-0 text-emerald-500`}):(0,j.jsx)(l,{className:`mt-0.5 size-4 shrink-0 text-muted-foreground`}),(0,j.jsxs)(`div`,{className:`min-w-0 space-y-0.5`,children:[(0,j.jsx)(`div`,{className:`text-sm text-foreground`,children:e.label}),!e.ok&&e.hint?(0,j.jsxs)(`div`,{className:`text-xs text-muted-foreground`,children:[e.hint,` `,e.href?(0,j.jsxs)(`a`,{href:e.href,target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center gap-0.5 text-primary hover:underline`,children:[`Open`,(0,j.jsx)(m,{className:`size-3`})]}):null]}):null]})]},e.id))}),(0,j.jsxs)(`p`,{className:`flex items-center gap-1.5 text-[11px] text-muted-foreground`,children:[(0,j.jsx)(p,{className:`size-3 animate-spin [animation-duration:3s]`}),`Checking automatically — finish the steps above and they'll turn green.`]}),f===`shiori-link`&&!e.link.accountLinked?(0,j.jsxs)(a,{size:`sm`,disabled:M,onClick:()=>void ie(),children:[M?(0,j.jsx)(s,{className:`size-3.5 animate-spin`}):null,`Sign in with GitHub`,(0,j.jsx)(m,{className:`size-3.5`})]}):null]}):null,o===`credentials`?(0,j.jsxs)(`div`,{className:`space-y-3`,children:[e.authConfigured?(0,j.jsx)(x,{variant:`info`,children:(0,j.jsxs)(S,{children:[`A sign-in is already set`,e.username?` for “${e.username}”`:``,`.`,` `,(0,j.jsx)(`button`,{type:`button`,className:`font-medium text-primary hover:underline`,onClick:()=>k(e=>!e),children:O?`Set a new one instead`:`Keep the existing one`})]})}):(0,j.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`This username and password is what you'll type on your phone or any remote browser. Anyone who signs in has full access to this machine — make it strong.`}),O?null:(0,j.jsxs)(`div`,{className:`grid gap-3 sm:grid-cols-3`,children:[(0,j.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,j.jsx)(C,{htmlFor:`wizard-username`,children:`Username`}),(0,j.jsx)(v,{id:`wizard-username`,autoComplete:`username`,value:g,onChange:e=>_(e.target.value),disabled:M})]}),(0,j.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,j.jsx)(C,{htmlFor:`wizard-password`,children:`Password`}),(0,j.jsx)(v,{id:`wizard-password`,type:`password`,autoComplete:`new-password`,value:y,onChange:e=>T(e.target.value),disabled:M})]}),(0,j.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,j.jsx)(C,{htmlFor:`wizard-confirm`,children:`Confirm password`}),(0,j.jsx)(v,{id:`wizard-confirm`,type:`password`,autoComplete:`new-password`,value:E,onChange:e=>D(e.target.value),disabled:M})]})]})]}):null,o===`enable`?(0,j.jsx)(`div`,{className:`space-y-3`,children:V?(0,j.jsxs)(j.Fragment,{children:[(0,j.jsxs)(x,{variant:`success`,children:[(0,j.jsx)(b,{children:`Remote access is on`}),(0,j.jsx)(S,{children:e.url?`Open this URL on your phone or another device and sign in.`:`Waiting for the URL — refresh in a moment.`})]}),e.url?(0,j.jsx)(ee,{url:e.url}):null,(0,j.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,j.jsxs)(a,{size:`sm`,variant:`outline`,disabled:G,onClick:()=>void ae(),children:[G?(0,j.jsx)(s,{className:`size-3.5 animate-spin`}):null,`Test connection`]}),U?(0,j.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-xs ${U.ok?`text-emerald-600 dark:text-emerald-400`:`text-destructive`}`,children:[U.ok?(0,j.jsx)(u,{className:`size-3.5`}):(0,j.jsx)(l,{className:`size-3.5`}),U.ok?`Reachable${U.latencyMs===null?``:` · ${U.latencyMs}ms`}`:U.error??`Not reachable.`]}):null]})]}):(0,j.jsxs)(j.Fragment,{children:[(0,j.jsxs)(`p`,{className:`text-xs text-muted-foreground`,children:[`Ready to go:`,` `,(0,j.jsx)(`span`,{className:`font-medium text-foreground`,children:$?.label}),`. Sign-in required for every device.`,f===`tailscale-funnel`?` The first public request can take a minute while Tailscale provisions the TLS certificate.`:f===`shiori-link`?` The first setup downloads a checksum-verified connector and can take a moment.`:``]}),(0,j.jsxs)(a,{disabled:M,onClick:()=>void X(),children:[M?(0,j.jsx)(s,{className:`size-3.5 animate-spin`}):null,`Turn on remote access`]})]})}):null,(0,j.jsxs)(`div`,{className:`flex items-center justify-between border-t border-border pt-3`,children:[(0,j.jsx)(`div`,{children:q>0&&!V?(0,j.jsxs)(a,{size:`sm`,variant:`ghost`,disabled:M,onClick:te,children:[(0,j.jsx)(d,{className:`size-3.5`}),`Back`]}):null}),(0,j.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,j.jsx)(a,{size:`sm`,variant:`ghost`,disabled:M,onClick:n,children:V?`Done`:`Cancel`}),o===`method`?(0,j.jsx)(a,{size:`sm`,onClick:ne,children:`Continue`}):null,o===`prerequisites`?(0,j.jsx)(a,{size:`sm`,disabled:M||!Q,onClick:re,children:`Continue`}):null,o===`credentials`?(0,j.jsxs)(a,{size:`sm`,disabled:M,onClick:()=>void Y(),children:[M?(0,j.jsx)(s,{className:`size-3.5 animate-spin`}):null,`Continue`]}):null]})]})]})}function z(){let e=(0,k.c)(29),{busy:t,connect:n,error:r,label:i,supported:o}=y(),[s,c]=(0,A.useState)(``);if(!o)return null;let l;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,j.jsx)(h,{className:`size-3.5`}),e[0]=l):l=e[0];let u;e[1]===r?u=e[2]:(u=r?(0,j.jsx)(x,{variant:`error`,className:`mb-3`,children:(0,j.jsx)(S,{children:r})}):null,e[1]=r,e[2]=u);let d;e[3]===Symbol.for(`react.memo_cache_sentinel`)?(d=(0,j.jsx)(C,{htmlFor:`desktop-remote-url`,children:`Add a remote`}),e[3]=d):d=e[3];let f;e[4]===Symbol.for(`react.memo_cache_sentinel`)?(f=e=>c(e.target.value),e[4]=f):f=e[4];let p;e[5]!==n||e[6]!==s?(p=e=>{e.key===`Enter`&&s.trim()&&n(s.trim())},e[5]=n,e[6]=s,e[7]=p):p=e[7];let m;e[8]!==t||e[9]!==p||e[10]!==s?(m=(0,j.jsx)(v,{id:`desktop-remote-url`,type:`url`,inputMode:`url`,placeholder:`sc-….link.shiori.codes`,value:s,disabled:t,onChange:f,onKeyDown:p}),e[8]=t,e[9]=p,e[10]=s,e[11]=m):m=e[11];let g;e[12]!==t||e[13]!==s?(g=t||!s.trim(),e[12]=t,e[13]=s,e[14]=g):g=e[14];let _;e[15]!==n||e[16]!==s?(_=()=>void n(s.trim()),e[15]=n,e[16]=s,e[17]=_):_=e[17];let b=t?`Connecting…`:`Connect`,w;e[18]!==g||e[19]!==_||e[20]!==b?(w=(0,j.jsx)(a,{disabled:g,onClick:_,children:b}),e[18]=g,e[19]=_,e[20]=b,e[21]=w):w=e[21];let T;e[22]!==m||e[23]!==w?(T=(0,j.jsx)(`div`,{className:`grid gap-3`,children:(0,j.jsxs)(`div`,{className:`space-y-1.5`,children:[d,(0,j.jsxs)(`div`,{className:`flex gap-2`,children:[m,w]})]})}),e[22]=m,e[23]=w,e[24]=T):T=e[24];let O;return e[25]!==i||e[26]!==u||e[27]!==T?(O=(0,j.jsx)(D,{title:`Connection`,icon:l,children:(0,j.jsxs)(E,{title:`Run ShioriCode on`,description:`Add a server here, then switch between environments from the main sidebar.`,status:i,children:[u,T]})}),e[25]=i,e[26]=u,e[27]=T,e[28]=O):O=e[28],O}var B=[{value:`off`,label:`Off`,hint:`This machine only`},{value:`shiori-link`,label:`Link`,hint:`Public · hosted by Shiori`},{value:`tailscale-serve`,label:`My devices`,hint:`Private · via your tailnet`},{value:`tailscale-funnel`,label:`Public link`,hint:`Anywhere · behind sign-in`}];function V(e){let t=new Date(e).getTime();if(Number.isNaN(t))return`unknown`;let n=Math.max(0,Math.round((Date.now()-t)/1e3));if(n<45)return`just now`;let r=Math.round(n/60);if(r<60)return`${r}m ago`;let i=Math.round(r/60);return i<24?`${i}h ago`:`${Math.round(i/24)}d ago`}function H(){let[e,t]=(0,A.useState)(null),[n,r]=(0,A.useState)(!0),[c,d]=(0,A.useState)(!1),[f,m]=(0,A.useState)(!1),[h,y]=(0,A.useState)(null),[w,O]=(0,A.useState)(!1),[k,M]=(0,A.useState)(void 0),[N,P]=(0,A.useState)(null),[F,I]=(0,A.useState)(!1),L=(0,A.useRef)(!1),[H,U]=(0,A.useState)(``),[W,G]=(0,A.useState)(``),K=(0,A.useCallback)(async()=>{d(!0),y(null);try{t(await i().remote.getStatus())}catch(e){y(e instanceof Error?e.message:`Failed to load remote status.`)}finally{d(!1)}},[]);(0,A.useEffect)(()=>{let e=!1;return i().remote.getStatus().then(n=>{e||(t(n),!L.current&&n.desiredMethod===`off`&&!n.enabled&&(L.current=!0,O(!0)))}).catch(t=>{e||y(t instanceof Error?t.message:`Failed to load remote status.`)}).finally(()=>{e||r(!1)}),()=>{e=!0}},[]),(0,A.useEffect)(()=>{e?.username&&U(e.username)},[e?.username]);let q=(0,A.useCallback)(async e=>{m(!0),y(null);try{t(await e())}catch(e){y(e instanceof Error?e.message:`Something went wrong.`)}finally{m(!1)}},[]),J=(0,A.useCallback)(e=>q(()=>i().remote.setExposure({method:e})),[q]),te=(0,A.useCallback)(()=>q(()=>i().remote.setCredentials({username:H.trim(),password:W}).then(e=>(G(``),e))),[q,H,W]),ne=(0,A.useCallback)(e=>q(()=>i().remote.revokeSession({sessionId:e})),[q]);(0,A.useCallback)(()=>q(()=>i().remote.disconnectLinkAccount({})),[q]);let re=(0,A.useCallback)(async()=>{I(!0),P(null);try{P(await i().remote.testConnection())}catch(e){P({ok:!1,url:null,latencyMs:null,error:e instanceof Error?e.message:`Test failed.`})}finally{I(!1)}},[]),ie=(0,A.useCallback)(e=>{M(e),O(!0)},[]),Y=e?.tailscale,X=e?.link,ae=!!X?.accountLinked,Z=!!Y?.installed,Q=!!(Y?.installed&&Y.httpsEnabled),$=!!(e&&e.desiredMethod!==`off`&&e.desiredMethod!==e.method),oe=(0,A.useMemo)(()=>e?e.enabled?e.reachability===`public`?`Public`:`Live`:`Off`:`…`,[e]);return n?(0,j.jsx)(T,{children:(0,j.jsxs)(`div`,{className:`flex items-center gap-2 px-1 py-8 text-sm text-muted-foreground`,children:[(0,j.jsx)(s,{className:`size-4 animate-spin`}),`Loading remote access…`]})}):(0,j.jsxs)(T,{children:[(0,j.jsx)(z,{}),(0,j.jsx)(D,{title:`Remote access`,icon:(0,j.jsx)(g,{className:`size-3.5`}),headerAction:(0,j.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,j.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 text-[11px] font-medium ${e?.enabled?`text-emerald-600 dark:text-emerald-400`:`text-muted-foreground`}`,children:[(0,j.jsx)(`span`,{className:`size-1.5 rounded-full ${e?.enabled?`bg-emerald-500`:`bg-muted-foreground/50`}`}),oe]}),(0,j.jsx)(a,{size:`xs`,variant:`outline`,disabled:f||c,onClick:()=>void K(),children:(0,j.jsx)(p,{className:`size-3.5 ${c?`animate-spin`:``}`})})]}),children:w&&e?(0,j.jsx)(R,{status:e,onStatus:t,onClose:()=>{O(!1),M(void 0)},...k===void 0?{}:{initialMethod:k}},k??`default`):(0,j.jsxs)(E,{title:`Reach ShioriCode from your phone and other devices`,description:`The server keeps running on this machine; remote access only changes how devices reach it. Anyone who signs in has full access — keep the password strong.`,status:e?.enabled&&e.url?`${e.sessions.length} device${e.sessions.length===1?``:`s`} connected`:void 0,control:(0,j.jsx)(a,{size:`sm`,variant:`outline`,disabled:f,onClick:()=>ie(),children:e?.enabled?`Run setup again`:`Set up remote access`}),children:[h?(0,j.jsxs)(x,{variant:`error`,className:`mb-3`,children:[(0,j.jsx)(b,{children:`Couldn't complete that`}),(0,j.jsx)(S,{children:h})]}):null,$&&e?(0,j.jsxs)(x,{variant:`warning`,className:`mb-3`,children:[(0,j.jsx)(b,{children:`Remote access was interrupted`}),(0,j.jsx)(S,{children:(0,j.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,j.jsx)(`span`,{children:e.notice??`The exposure no longer matches what you set up.`}),(0,j.jsx)(a,{size:`xs`,variant:`outline`,disabled:f,onClick:()=>void J(e.desiredMethod),children:`Repair`})]})})]}):null,e?.enabled&&e.url?(0,j.jsxs)(`div`,{className:`space-y-3`,children:[(0,j.jsx)(ee,{url:e.url}),(0,j.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,j.jsxs)(a,{size:`sm`,variant:`outline`,disabled:F,onClick:()=>void re(),children:[F?(0,j.jsx)(s,{className:`size-3.5 animate-spin`}):null,`Test connection`]}),N?(0,j.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-xs ${N.ok?`text-emerald-600 dark:text-emerald-400`:`text-destructive`}`,children:[N.ok?(0,j.jsx)(u,{className:`size-3.5`}):(0,j.jsx)(l,{className:`size-3.5`}),N.ok?`Reachable${N.latencyMs===null?``:` · ${N.latencyMs}ms`}`:N.error??`Not reachable.`]}):null]})]}):(0,j.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`Not exposed yet. Use the setup wizard to get a link in about a minute.`}),e?.notice&&!$?(0,j.jsx)(x,{variant:`warning`,className:`mt-3`,children:(0,j.jsx)(S,{children:e.notice})}):null]})}),w?null:(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(D,{title:`How it's reached`,icon:(0,j.jsx)(_,{className:`size-3.5`}),children:(0,j.jsxs)(E,{title:`Access method`,description:X?.accountLinked?`Link is ready. Tailscale remains available for private tailnet-only access.`:Y?.installed?Y.running?`Connect Shiori for Link, or keep using this machine's Tailscale connection.`:`Connect Shiori for Link without Tailscale, or reconnect the Tailscale app.`:`ShioriCode Link gives this machine a hosted link without Tailscale, ports, or DNS setup.`,children:[(0,j.jsx)(`div`,{className:`mt-1 grid gap-2 sm:grid-cols-2 lg:grid-cols-4`,children:B.map(t=>{let n=e?.method===t.value;return(0,j.jsxs)(`button`,{type:`button`,disabled:f||t.value===`shiori-link`&&!ae||t.value===`tailscale-serve`&&!Z||t.value===`tailscale-funnel`&&!Q,onClick:()=>void J(t.value),className:`flex flex-col items-start gap-0.5 rounded-lg border px-3 py-2.5 text-left transition-colors disabled:cursor-not-allowed disabled:opacity-50 ${n?`border-primary bg-primary/5 ring-1 ring-primary`:`border-border hover:bg-muted/40`}`,children:[(0,j.jsxs)(`span`,{className:`flex items-center gap-1.5 text-sm font-medium text-foreground`,children:[n?(0,j.jsx)(u,{className:`size-3.5 text-primary`}):null,t.label]}),(0,j.jsx)(`span`,{className:`text-[11px] text-muted-foreground`,children:t.hint})]},t.value)})}),Y&&!Y.installed?(0,j.jsxs)(`p`,{className:`mt-2 text-[11px] text-muted-foreground`,children:[(0,j.jsx)(`a`,{href:`https://tailscale.com/download`,target:`_blank`,rel:`noreferrer`,className:`text-primary hover:underline`,children:`Download Tailscale`}),` `,`and sign in, then come back — the setup wizard checks it live.`]}):null,Q||e?.method===`tailscale-funnel`?null:Y?.installed&&!Y.httpsEnabled?(0,j.jsx)(`p`,{className:`mt-2 text-[11px] text-muted-foreground`,children:`Public access needs HTTPS certificates enabled on your tailnet (admin console → DNS → Enable HTTPS).`}):null]})}),(0,j.jsx)(D,{title:`Sign-in`,children:(0,j.jsx)(E,{title:`Owner credentials`,description:e?.requireAuth?`A login is required for remote access.`:`Set a password so the iOS app and remote browsers can sign in. It's required the moment you expose this machine.`,status:e?.authConfigured?`Configured${e.username?` · ${e.username}`:``}`:`Not set`,children:(0,j.jsxs)(`div`,{className:`mt-1 grid gap-3 sm:grid-cols-[1fr_1fr_auto] sm:items-end`,children:[(0,j.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,j.jsx)(C,{htmlFor:`remote-username`,children:`Username`}),(0,j.jsx)(v,{id:`remote-username`,autoComplete:`username`,value:H,onChange:e=>U(e.target.value),disabled:f})]}),(0,j.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,j.jsx)(C,{htmlFor:`remote-password`,children:e?.authConfigured?`New password`:`Password`}),(0,j.jsx)(v,{id:`remote-password`,type:`password`,autoComplete:`new-password`,value:W,onChange:e=>G(e.target.value),disabled:f})]}),(0,j.jsx)(a,{disabled:f||H.trim().length===0||W.length===0,onClick:()=>void te(),children:e?.authConfigured?`Update`:`Set password`})]})})}),(0,j.jsx)(D,{title:`Devices`,icon:(0,j.jsx)(o,{className:`size-3.5`}),children:(0,j.jsx)(E,{title:`Connected devices`,description:`Sessions that have signed in remotely. Revoke one to sign it out immediately.`,children:e&&e.sessions.length>0?(0,j.jsx)(`div`,{className:`mt-1 divide-y divide-border rounded-lg border border-border`,children:e.sessions.map(e=>(0,j.jsxs)(`div`,{className:`flex min-w-0 items-center justify-between gap-3 px-3 py-2.5`,children:[(0,j.jsxs)(`div`,{className:`min-w-0`,children:[(0,j.jsx)(`div`,{className:`truncate text-sm text-foreground`,children:e.label??e.username}),(0,j.jsxs)(`div`,{className:`text-[11px] text-muted-foreground`,children:[`last seen `,V(e.lastSeenAt)]})]}),(0,j.jsx)(a,{size:`xs`,variant:`ghost`,disabled:f,onClick:()=>void ne(e.id),children:`Revoke`})]},e.id))}):(0,j.jsx)(`p`,{className:`mt-1 text-xs text-muted-foreground`,children:`No devices connected yet.`})})})]})]})}var U=H;export{U as component};
|
|
2
|
+
//# sourceMappingURL=settings.remote-BufK_lG_.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-COnpUsM8.js";import{Ci as t}from"./vendor--effect-atom-react-6hEhKm5I.js";import"./vendor--floating-ui-react-dom-CGq-bz3X.js";import{t as n}from"./vendor-react-BvVnE5E6.js";import{d as r,m as i}from"./vendor-tanstack-CM5SpFmF.js";import{c as a}from"./vendor--lexical-react-B6TeCrpE.js";import{f as o,s}from"./clientSettings--1UP2ayD.js";import"./vendor-effect-Chd9hYxF.js";import"./utils-B-Di8CjF.js";import"./store-BQMb1nBV.js";import"./terminalStateStore-C38k-Eaw.js";import"./uiStateStore-Di3ieZaJ.js";import{En as c,Pn as l}from"./vendor-ui-DmvKhMzf.js";import"./useSettings-DOuHg9jg.js";import"./useHandleNewThread-WYMZPumx.js";import"./gitReactQuery-BBOGuHot.js";import"./input-emuaAuIe.js";import"./ProviderModelPicker-BWTkQW8f.js";import{t as u}from"./badge-BkzSFcY-.js";import{a as d,i as f,o as p,r as m,t as h}from"./empty-CwEqZDMX.js";import"./collapsible-CqRg_DyH.js";import{a as g,s as _}from"./SettingsPanels-DGYlfoWv.js";import{a as v,i as y,n as b,o as x,r as S}from"./skillsMcpShared-DxxY1mEt.js";var C=n(),w=e(t(),1),T=a();function E(e){let t=(0,C.c)(18),{skill:n,onDelete:r}=e,i;t[0]===n.name?i=t[1]:(i=(0,T.jsx)(`span`,{className:`text-sm font-medium text-foreground`,children:n.name}),t[0]=n.name,t[1]=i);let a;t[2]===n.scope?a=t[3]:(a=(0,T.jsx)(u,{variant:`outline`,className:`text-[10px] capitalize`,children:n.scope}),t[2]=n.scope,t[3]=a);let o;t[4]!==i||t[5]!==a?(o=(0,T.jsxs)(`div`,{className:`flex items-center gap-2`,children:[i,a]}),t[4]=i,t[5]=a,t[6]=o):o=t[6];let c;t[7]===n.description?c=t[8]:(c=n.description?(0,T.jsx)(`p`,{className:`mt-0.5 line-clamp-1 text-xs text-muted-foreground`,children:n.description}):null,t[7]=n.description,t[8]=c);let d;t[9]!==o||t[10]!==c?(d=(0,T.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[o,c]}),t[9]=o,t[10]=c,t[11]=d):d=t[11];let f;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,T.jsx)(l,{className:`size-3.5 text-muted-foreground`}),t[12]=f):f=t[12];let p;t[13]===r?p=t[14]:(p=(0,T.jsx)(s,{size:`icon-xs`,variant:`ghost`,onClick:r,children:f}),t[13]=r,t[14]=p);let m;return t[15]!==d||t[16]!==p?(m=(0,T.jsxs)(`div`,{className:`flex items-center gap-3 border-t border-border/60 px-4 py-2.5 pl-10 sm:px-5 sm:pl-11`,children:[d,p]}),t[15]=d,t[16]=p,t[17]=m):m=t[17],m}function D({skills:e,onDelete:t}){let[n,r]=(0,w.useState)(``),i=(0,w.useMemo)(()=>n?e.filter(e=>x(n,e.name,e.description,e.source,e.scope)):e,[e,n]),a=(0,w.useMemo)(()=>v(i),[i]),o=e.length>5,s=a.size>1;return(0,T.jsx)(_,{title:`Skills`,icon:(0,T.jsx)(c,{className:`size-3.5`}),children:e.length===0?(0,T.jsxs)(h,{className:`min-h-36`,children:[(0,T.jsx)(d,{variant:`icon`,children:(0,T.jsx)(c,{})}),(0,T.jsxs)(f,{children:[(0,T.jsx)(p,{children:`No skills found`}),(0,T.jsx)(m,{children:`Add skills under ~/.agents/skills or workspace .agents/skills.`})]})]}):(0,T.jsxs)(T.Fragment,{children:[o?(0,T.jsx)(S,{value:n,onChange:r,placeholder:`Filter skills…`,resultCount:i.length,totalCount:e.length}):null,(0,T.jsx)(`div`,{className:`max-h-96 overflow-y-auto`,children:i.length===0?(0,T.jsxs)(`p`,{className:`px-4 py-6 text-center text-sm text-muted-foreground sm:px-5`,children:[`No skills match “`,n,`”`]}):s?Array.from(a.entries()).map(([e,n])=>(0,T.jsx)(y,{source:e,count:n.length,defaultOpen:!0,children:n.map(e=>(0,T.jsx)(E,{skill:e,onDelete:()=>t(e)},`${e.scope}|${e.path}`))},e)):i.map(e=>(0,T.jsx)(E,{skill:e,onDelete:()=>t(e)},`${e.source}|${e.scope}|${e.path}`))})]})})}function O(){let e=(0,C.c)(7),t=i(),n;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(n={queryKey:b,queryFn:k,staleTime:5e3},e[0]=n):n=e[0];let a=r(n),s;e[1]===t?s=e[2]:(s=e=>{o().server.removeSkill({source:e.source,name:e.name,path:e.path}).then(()=>t.invalidateQueries({queryKey:b}))},e[1]=t,e[2]=s);let l=s,u;return e[3]!==l||e[4]!==a.data?.skills||e[5]!==a.isLoading?(u=(0,T.jsx)(g,{children:a.isLoading?(0,T.jsx)(_,{title:`Skills`,icon:(0,T.jsx)(c,{className:`size-3.5`}),children:(0,T.jsxs)(h,{className:`min-h-36`,children:[(0,T.jsx)(d,{variant:`icon`,children:(0,T.jsx)(c,{})}),(0,T.jsxs)(f,{children:[(0,T.jsx)(p,{children:`Loading skills`}),(0,T.jsx)(m,{children:`Checking ShioriCode, Codex, and Claude skill locations.`})]})]})}):(0,T.jsx)(D,{skills:a.data?.skills??[],onDelete:l})}),e[3]=l,e[4]=a.data?.skills,e[5]=a.isLoading,e[6]=u):u=e[6],u}function k(){return o().server.listSkills()}var A=O;export{A as component};
|
|
2
|
+
//# sourceMappingURL=settings.skills-Cz9xy1ba.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-COnpUsM8.js";import{Ci as t}from"./vendor--effect-atom-react-6hEhKm5I.js";import"./vendor--floating-ui-react-dom-CGq-bz3X.js";import{t as n}from"./vendor-react-BvVnE5E6.js";import{C as r}from"./vendor-tanstack-CM5SpFmF.js";import{c as i}from"./vendor--lexical-react-B6TeCrpE.js";import{s as a}from"./clientSettings--1UP2ayD.js";import"./vendor-effect-Chd9hYxF.js";import{O as o,t as s}from"./utils-B-Di8CjF.js";import"./store-BQMb1nBV.js";import"./terminalStateStore-C38k-Eaw.js";import"./uiStateStore-Di3ieZaJ.js";import{Ar as c,Or as l,Rn as u,ar as d,cr as f,tr as p,wr as m}from"./vendor-ui-DmvKhMzf.js";import"./useSettings-DOuHg9jg.js";import"./useHandleNewThread-WYMZPumx.js";import"./gitReactQuery-BBOGuHot.js";import{t as h}from"./input-emuaAuIe.js";import{it as g}from"./index-DvBh1mNh.js";import{n as _,t as v}from"./useTheme-Dhz9U3on.js";import{a as y,i as b,o as x,r as S,s as ee}from"./ProviderModelPicker-BWTkQW8f.js";import"./empty-CwEqZDMX.js";import{n as C,r as w,t as T}from"./collapsible-CqRg_DyH.js";import{a as E,o as D,s as O}from"./SettingsPanels-DGYlfoWv.js";var te=n(),k=e(t(),1),A=i(),j=[{label:`Base`,description:`Main application background and text colors.`,tokens:[{key:`background`,label:`Background`},{key:`foreground`,label:`Foreground`}]},{label:`Primary`,description:`Buttons, links, and key interactive elements.`,tokens:[{key:`primary`,label:`Primary`},{key:`primaryForeground`,label:`Primary text`}]},{label:`Secondary`,description:`Secondary buttons and less prominent controls.`,tokens:[{key:`secondary`,label:`Secondary`},{key:`secondaryForeground`,label:`Secondary text`}]},{label:`Card`,description:`Card surfaces and their text.`,tokens:[{key:`card`,label:`Card`},{key:`cardForeground`,label:`Card text`}]},{label:`Popover`,description:`Dropdown menus, tooltips, and floating panels.`,tokens:[{key:`popover`,label:`Popover`},{key:`popoverForeground`,label:`Popover text`}]},{label:`Muted`,description:`Subdued backgrounds and secondary text.`,tokens:[{key:`muted`,label:`Muted`},{key:`mutedForeground`,label:`Muted text`}]},{label:`Accent`,description:`Hover states and highlighted areas.`,tokens:[{key:`accent`,label:`Accent`},{key:`accentForeground`,label:`Accent text`}]},{label:`Borders & Input`,description:`Borders, input fields, and focus rings.`,tokens:[{key:`border`,label:`Border`},{key:`input`,label:`Input border`},{key:`ring`,label:`Focus ring`}]},{label:`Destructive`,description:`Errors, deletions, and dangerous actions.`,tokens:[{key:`destructive`,label:`Destructive`},{key:`destructiveForeground`,label:`Destructive text`}]},{label:`Status`,description:`Informational, success, and warning indicators.`,tokens:[{key:`info`,label:`Info`},{key:`infoForeground`,label:`Info text`},{key:`success`,label:`Success`},{key:`successForeground`,label:`Success text`},{key:`warning`,label:`Warning`},{key:`warningForeground`,label:`Warning text`}]}],ne=[{label:`Chrome`,colors:[{key:`background`,label:`Background`},{key:`foreground`,label:`Foreground`},{key:`cursor`,label:`Cursor`},{key:`selectionBackground`,label:`Selection`}]},{label:`Scrollbar`,colors:[{key:`scrollbarSliderBackground`,label:`Scrollbar`},{key:`scrollbarSliderHoverBackground`,label:`Scrollbar hover`},{key:`scrollbarSliderActiveBackground`,label:`Scrollbar active`}]},{label:`ANSI Colors`,colors:[{key:`black`,label:`Black`},{key:`red`,label:`Red`},{key:`green`,label:`Green`},{key:`yellow`,label:`Yellow`},{key:`blue`,label:`Blue`},{key:`magenta`,label:`Magenta`},{key:`cyan`,label:`Cyan`},{key:`white`,label:`White`}]},{label:`Bright ANSI Colors`,colors:[{key:`brightBlack`,label:`Bright black`},{key:`brightRed`,label:`Bright red`},{key:`brightGreen`,label:`Bright green`},{key:`brightYellow`,label:`Bright yellow`},{key:`brightBlue`,label:`Bright blue`},{key:`brightMagenta`,label:`Bright magenta`},{key:`brightCyan`,label:`Bright cyan`},{key:`brightWhite`,label:`Bright white`}]}];function M(e){let{radius:t,tokens:n,terminal:r}=_(e);return{radius:t,tokens:n,terminalColors:r}}function N(e){return parseInt(e,10).toString(16).padStart(2,`0`)}function P(e){let t=e.trim();if(/^#[0-9a-fA-F]{6}$/i.test(t))return t;if(/^#[0-9a-fA-F]{3}$/i.test(t)){let[,e,n,r]=/^#(.)(.)(.)$/i.exec(t);return`#${e}${e}${n}${n}${r}${r}`}let n=/^rgb\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i.exec(t);return n?`#${N(n[1])}${N(n[2])}${N(n[3])}`:t}function F(e){return/^#[0-9a-fA-F]{6}$/i.test(e.trim())}function I(e){let t=(0,te.c)(28),{label:n,value:r,onChange:i}=e,a,o;t[0]===r?(a=t[1],o=t[2]):(a=P(r),o=F(a),t[0]=r,t[1]=a,t[2]=o);let s=o,c=(0,k.useRef)(null),l;t[3]===a?l=t[4]:(l={backgroundColor:a},t[3]=a,t[4]=l);let u;t[5]===Symbol.for(`react.memo_cache_sentinel`)?(u=()=>c.current?.click(),t[5]=u):u=t[5];let d=`Pick color for ${n}`,f=s?a:`#000000`,p;t[6]===i?p=t[7]:(p=e=>i(e.target.value),t[6]=i,t[7]=p);let m;t[8]!==f||t[9]!==p?(m=(0,A.jsx)(`input`,{ref:c,type:`color`,value:f,onChange:p,className:`absolute inset-0 cursor-pointer opacity-0`,tabIndex:-1}),t[8]=f,t[9]=p,t[10]=m):m=t[10];let g;t[11]!==l||t[12]!==d||t[13]!==m?(g=(0,A.jsx)(`button`,{type:`button`,className:`group relative size-8 shrink-0 cursor-pointer rounded-lg border border-border shadow-xs/5 transition-shadow hover:ring-2 hover:ring-ring/24`,style:l,onClick:u,"aria-label":d,children:m}),t[11]=l,t[12]=d,t[13]=m,t[14]=g):g=t[14];let _;t[15]===n?_=t[16]:(_=(0,A.jsx)(`span`,{className:`text-xs text-muted-foreground`,children:n}),t[15]=n,t[16]=_);let v;t[17]===i?v=t[18]:(v=e=>i(e.target.value),t[17]=i,t[18]=v);let y;t[19]!==v||t[20]!==r?(y=(0,A.jsx)(h,{size:`sm`,value:r,onChange:v,className:`font-mono text-xs`,spellCheck:!1,autoComplete:`off`}),t[19]=v,t[20]=r,t[21]=y):y=t[21];let b;t[22]!==y||t[23]!==_?(b=(0,A.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-0.5`,children:[_,y]}),t[22]=y,t[23]=_,t[24]=b):b=t[24];let x;return t[25]!==b||t[26]!==g?(x=(0,A.jsxs)(`div`,{className:`flex items-center gap-2.5`,children:[g,b]}),t[25]=b,t[26]=g,t[27]=x):x=t[27],x}function L(e){let t=(0,te.c)(113),{tokens:n}=e,r;t[0]!==n.accent||t[1]!==n.background||t[2]!==n.border||t[3]!==n.card||t[4]!==n.cardForeground||t[5]!==n.destructive||t[6]!==n.destructiveForeground||t[7]!==n.foreground||t[8]!==n.info||t[9]!==n.input||t[10]!==n.muted||t[11]!==n.mutedForeground||t[12]!==n.primary||t[13]!==n.primaryForeground||t[14]!==n.secondary||t[15]!==n.secondaryForeground||t[16]!==n.success||t[17]!==n.warning?(r={"--p-bg":n.background,"--p-fg":n.foreground,"--p-card":n.card,"--p-card-fg":n.cardForeground,"--p-primary":n.primary,"--p-primary-fg":n.primaryForeground,"--p-secondary":n.secondary,"--p-secondary-fg":n.secondaryForeground,"--p-muted":n.muted,"--p-muted-fg":n.mutedForeground,"--p-accent":n.accent,"--p-border":n.border,"--p-input":n.input,"--p-destructive":n.destructive,"--p-destructive-fg":n.destructiveForeground,"--p-info":n.info,"--p-success":n.success,"--p-warning":n.warning,borderColor:n.border},t[0]=n.accent,t[1]=n.background,t[2]=n.border,t[3]=n.card,t[4]=n.cardForeground,t[5]=n.destructive,t[6]=n.destructiveForeground,t[7]=n.foreground,t[8]=n.info,t[9]=n.input,t[10]=n.muted,t[11]=n.mutedForeground,t[12]=n.primary,t[13]=n.primaryForeground,t[14]=n.secondary,t[15]=n.secondaryForeground,t[16]=n.success,t[17]=n.warning,t[18]=r):r=t[18];let i=r,a=`1px solid ${n.border}`,o;t[19]!==a||t[20]!==n.card?(o={backgroundColor:n.card,borderBottom:a},t[19]=a,t[20]=n.card,t[21]=o):o=t[21];let s;t[22]===n.destructive?s=t[23]:(s=(0,A.jsx)(`span`,{className:`size-2.5 rounded-full`,style:{backgroundColor:n.destructive}}),t[22]=n.destructive,t[23]=s);let c;t[24]===n.warning?c=t[25]:(c=(0,A.jsx)(`span`,{className:`size-2.5 rounded-full`,style:{backgroundColor:n.warning}}),t[24]=n.warning,t[25]=c);let l;t[26]===n.success?l=t[27]:(l=(0,A.jsx)(`span`,{className:`size-2.5 rounded-full`,style:{backgroundColor:n.success}}),t[26]=n.success,t[27]=l);let u;t[28]!==s||t[29]!==c||t[30]!==l?(u=(0,A.jsxs)(`div`,{className:`flex gap-1.5`,children:[s,c,l]}),t[28]=s,t[29]=c,t[30]=l,t[31]=u):u=t[31];let d;t[32]===n.mutedForeground?d=t[33]:(d=(0,A.jsx)(`span`,{className:`text-[10px] font-medium`,style:{color:n.mutedForeground},children:`Preview`}),t[32]=n.mutedForeground,t[33]=d);let f;t[34]!==o||t[35]!==u||t[36]!==d?(f=(0,A.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2`,style:o,children:[u,d]}),t[34]=o,t[35]=u,t[36]=d,t[37]=f):f=t[37];let p;t[38]===n.background?p=t[39]:(p={backgroundColor:n.background},t[38]=n.background,t[39]=p);let m=`1px solid ${n.border}`,h;t[40]===m?h=t[41]:(h={borderRight:m},t[40]=m,t[41]=h);let g;t[42]!==n.accent||t[43]!==n.foreground?(g=(0,A.jsx)(`div`,{className:`rounded-md px-2 py-1 text-[10px] font-medium`,style:{backgroundColor:n.accent,color:n.foreground},children:`Active item`}),t[42]=n.accent,t[43]=n.foreground,t[44]=g):g=t[44];let _;t[45]===n.mutedForeground?_=t[46]:(_=(0,A.jsx)(`div`,{className:`rounded-md px-2 py-1 text-[10px]`,style:{color:n.mutedForeground},children:`Menu item`}),t[45]=n.mutedForeground,t[46]=_);let v;t[47]===n.mutedForeground?v=t[48]:(v=(0,A.jsx)(`div`,{className:`rounded-md px-2 py-1 text-[10px]`,style:{color:n.mutedForeground},children:`Menu item`}),t[47]=n.mutedForeground,t[48]=v);let y;t[49]!==h||t[50]!==g||t[51]!==_||t[52]!==v?(y=(0,A.jsxs)(`div`,{className:`w-28 shrink-0 space-y-1 p-2`,style:h,children:[g,_,v]}),t[49]=h,t[50]=g,t[51]=_,t[52]=v,t[53]=y):y=t[53];let b;t[54]===n.foreground?b=t[55]:(b=(0,A.jsx)(`span`,{className:`text-xs font-semibold`,style:{color:n.foreground},children:`Theme Preview`}),t[54]=n.foreground,t[55]=b);let x;t[56]===n.mutedForeground?x=t[57]:(x=(0,A.jsx)(`p`,{className:`text-[10px] leading-relaxed`,style:{color:n.mutedForeground},children:`This is how your theme will look in the application.`}),t[56]=n.mutedForeground,t[57]=x);let S;t[58]!==b||t[59]!==x?(S=(0,A.jsxs)(`div`,{className:`space-y-1`,children:[b,x]}),t[58]=b,t[59]=x,t[60]=S):S=t[60];let ee=`1px solid ${n.border}`,C;t[61]!==ee||t[62]!==n.card?(C={backgroundColor:n.card,border:ee},t[61]=ee,t[62]=n.card,t[63]=C):C=t[63];let w;t[64]===n.cardForeground?w=t[65]:(w=(0,A.jsx)(`span`,{className:`text-[10px] font-medium`,style:{color:n.cardForeground},children:`Card component`}),t[64]=n.cardForeground,t[65]=w);let T;t[66]===n.mutedForeground?T=t[67]:(T=(0,A.jsx)(`p`,{className:`mt-0.5 text-[10px]`,style:{color:n.mutedForeground},children:`Cards contain grouped content.`}),t[66]=n.mutedForeground,t[67]=T);let E;t[68]!==C||t[69]!==w||t[70]!==T?(E=(0,A.jsxs)(`div`,{className:`rounded-lg p-2.5`,style:C,children:[w,T]}),t[68]=C,t[69]=w,t[70]=T,t[71]=E):E=t[71];let D;t[72]!==n.primary||t[73]!==n.primaryForeground?(D=(0,A.jsx)(`span`,{className:`rounded-md px-2.5 py-1 text-[10px] font-medium`,style:{backgroundColor:n.primary,color:n.primaryForeground},children:`Primary`}),t[72]=n.primary,t[73]=n.primaryForeground,t[74]=D):D=t[74];let O;t[75]!==n.secondary||t[76]!==n.secondaryForeground?(O=(0,A.jsx)(`span`,{className:`rounded-md px-2.5 py-1 text-[10px] font-medium`,style:{backgroundColor:n.secondary,color:n.secondaryForeground},children:`Secondary`}),t[75]=n.secondary,t[76]=n.secondaryForeground,t[77]=O):O=t[77];let k;t[78]!==n.destructive||t[79]!==n.destructiveForeground?(k=(0,A.jsx)(`span`,{className:`rounded-md px-2.5 py-1 text-[10px] font-medium`,style:{backgroundColor:n.destructive,color:n.destructiveForeground},children:`Delete`}),t[78]=n.destructive,t[79]=n.destructiveForeground,t[80]=k):k=t[80];let j;t[81]!==D||t[82]!==O||t[83]!==k?(j=(0,A.jsxs)(`div`,{className:`flex flex-wrap gap-1.5`,children:[D,O,k]}),t[81]=D,t[82]=O,t[83]=k,t[84]=j):j=t[84];let ne=`1px solid ${n.input}`,M;t[85]!==ne||t[86]!==n.background||t[87]!==n.mutedForeground?(M=(0,A.jsx)(`div`,{className:`rounded-md px-2 py-1 text-[10px]`,style:{backgroundColor:n.background,border:ne,color:n.mutedForeground},children:`Placeholder text...`}),t[85]=ne,t[86]=n.background,t[87]=n.mutedForeground,t[88]=M):M=t[88];let N;t[89]===n.info?N=t[90]:(N=(0,A.jsx)(`span`,{className:`rounded-full px-2 py-0.5 text-[9px] font-medium text-white`,style:{backgroundColor:n.info},children:`Info`}),t[89]=n.info,t[90]=N);let P;t[91]===n.success?P=t[92]:(P=(0,A.jsx)(`span`,{className:`rounded-full px-2 py-0.5 text-[9px] font-medium text-white`,style:{backgroundColor:n.success},children:`Success`}),t[91]=n.success,t[92]=P);let F;t[93]===n.warning?F=t[94]:(F=(0,A.jsx)(`span`,{className:`rounded-full px-2 py-0.5 text-[9px] font-medium text-white`,style:{backgroundColor:n.warning},children:`Warning`}),t[93]=n.warning,t[94]=F);let I;t[95]!==N||t[96]!==P||t[97]!==F?(I=(0,A.jsxs)(`div`,{className:`flex gap-1.5`,children:[N,P,F]}),t[95]=N,t[96]=P,t[97]=F,t[98]=I):I=t[98];let L;t[99]!==S||t[100]!==E||t[101]!==j||t[102]!==M||t[103]!==I?(L=(0,A.jsxs)(`div`,{className:`flex-1 space-y-2.5 p-3`,children:[S,E,j,M,I]}),t[99]=S,t[100]=E,t[101]=j,t[102]=M,t[103]=I,t[104]=L):L=t[104];let R;t[105]!==p||t[106]!==y||t[107]!==L?(R=(0,A.jsxs)(`div`,{className:`flex`,style:p,children:[y,L]}),t[105]=p,t[106]=y,t[107]=L,t[108]=R):R=t[108];let re;return t[109]!==f||t[110]!==i||t[111]!==R?(re=(0,A.jsxs)(`div`,{className:`overflow-hidden rounded-xl border shadow-xs/5`,style:i,children:[f,R]}),t[109]=f,t[110]=i,t[111]=R,t[112]=re):re=t[112],re}function R(){let e=(0,te.c)(108),{themeOptionsByAppearance:t,importTheme:n}=v(),i;e[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=M(`dark`),e[0]=i):i=e[0];let _=i,N,P;e[1]!==t.dark||e[2]!==t.light?(P=[...t.light,...t.dark],e[1]=t.dark,e[2]=t.light,e[3]=P):P=e[3],N=P;let F=N,[R,oe]=(0,k.useState)(``),[z,se]=(0,k.useState)(``),[B,ce]=(0,k.useState)(``),[V,le]=(0,k.useState)(`dark`),[H,ue]=(0,k.useState)(_.radius),[U,de]=(0,k.useState)(_.tokens),[W,fe]=(0,k.useState)(_.terminalColors),[pe,me]=(0,k.useState)(!1),he;e[4]===Symbol.for(`react.memo_cache_sentinel`)?(he=(e,t)=>{de(n=>({...n,[e]:t}))},e[4]=he):he=e[4];let ge=he,_e;e[5]===Symbol.for(`react.memo_cache_sentinel`)?(_e=(e,t)=>{fe(n=>({...n,[e]:t}))},e[5]=_e):_e=e[5];let ve=_e,ye;e[6]===F?ye=e[7]:(ye=e=>{if(e==null)return;let t=F.find(t=>t.id===e);t&&(le(t.appearance),de({...t.tokens}),t.terminal?fe({...t.terminal}):fe(M(t.appearance).terminalColors),t.radius&&ue(t.radius))},e[6]=F,e[7]=ye);let be=ye,xe;e[8]===Symbol.for(`react.memo_cache_sentinel`)?(xe=e=>{if(e!==`light`&&e!==`dark`)return;let t=M(e);le(e),ue(t.radius),de(t.tokens),fe(t.terminalColors)},e[8]=xe):xe=e[8];let Se=xe,Ce;e[9]===V?Ce=e[10]:(Ce=()=>{let e=M(V);oe(``),se(``),ce(``),ue(e.radius),de(e.tokens),fe(e.terminalColors)},e[9]=V,e[10]=Ce);let we=Ce,Te;e[11]!==V||e[12]!==z||e[13]!==B||e[14]!==R||e[15]!==H||e[16]!==W||e[17]!==U?(Te=()=>JSON.stringify({version:1,name:R.trim()||`Untitled Theme`,appearance:V,author:z.trim()||void 0,description:B.trim()||void 0,radius:H,tokens:U,terminal:W},null,2),e[11]=V,e[12]=z,e[13]=B,e[14]=R,e[15]=H,e[16]=W,e[17]=U,e[18]=Te):Te=e[18];let G=Te,Ee;e[19]!==V||e[20]!==G||e[21]!==n||e[22]!==R?(Ee=()=>{let e=R.trim()||`Untitled Theme`;try{n(G()),g.add({type:`success`,title:`Saved "${e}"`,description:`The theme is now active for your ${V} appearance.`})}catch(e){let t=e;g.add({type:`error`,title:`Could not save theme`,description:t instanceof Error?t.message:`The theme data is invalid.`})}},e[19]=V,e[20]=G,e[21]=n,e[22]=R,e[23]=Ee):Ee=e[23];let De=Ee,Oe;e[24]!==G||e[25]!==R?(Oe=()=>{let e=G(),t=new Blob([e],{type:`application/json`}),n=URL.createObjectURL(t),r=document.createElement(`a`);r.href=n,r.download=`${(R.trim()||`theme`).toLowerCase().replace(/[^a-z0-9]+/g,`-`)}.json`,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(n)},e[24]=G,e[25]=R,e[26]=Oe):Oe=e[26];let ke=Oe,Ae;e[27]===G?Ae=e[28]:(Ae=()=>{navigator.clipboard.writeText(G()).then(ae,ie)},e[27]=G,e[28]=Ae);let je=Ae,Me=o.every(e=>U[e]?.trim()),Ne,Pe;e[29]===Symbol.for(`react.memo_cache_sentinel`)?(Ne=(0,A.jsxs)(r,{to:`/settings/appearance`,className:`inline-flex items-center gap-1 text-xs text-muted-foreground transition-colors hover:text-foreground`,children:[(0,A.jsx)(u,{className:`size-3.5`}),`Appearance`]}),Pe=(0,A.jsx)(`span`,{className:`text-border`,children:`/`}),e[29]=Ne,e[30]=Pe):(Ne=e[29],Pe=e[30]);let Fe;e[31]===Symbol.for(`react.memo_cache_sentinel`)?(Fe=(0,A.jsxs)(`div`,{className:`flex items-center gap-3`,children:[Ne,Pe,(0,A.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,A.jsx)(p,{className:`size-4 text-primary`}),(0,A.jsx)(`h1`,{className:`text-sm font-semibold text-foreground`,children:`Theme Builder`})]})]}),e[31]=Fe):Fe=e[31];let Ie;e[32]===Symbol.for(`react.memo_cache_sentinel`)?(Ie=(0,A.jsx)(c,{className:`size-3.5`}),e[32]=Ie):Ie=e[32];let K;e[33]===je?K=e[34]:(K=(0,A.jsxs)(a,{size:`sm`,variant:`ghost`,onClick:je,title:`Copy JSON`,children:[Ie,`Copy JSON`]}),e[33]=je,e[34]=K);let Le;e[35]===Symbol.for(`react.memo_cache_sentinel`)?(Le=(0,A.jsx)(m,{className:`size-3.5`}),e[35]=Le):Le=e[35];let q;e[36]===ke?q=e[37]:(q=(0,A.jsxs)(a,{size:`sm`,variant:`outline`,onClick:ke,children:[Le,`Export`]}),e[36]=ke,e[37]=q);let Re=!Me,ze;e[38]===Symbol.for(`react.memo_cache_sentinel`)?(ze=(0,A.jsx)(l,{className:`size-3.5`}),e[38]=ze):ze=e[38];let J;e[39]!==De||e[40]!==Re?(J=(0,A.jsxs)(a,{size:`sm`,variant:`default`,disabled:Re,onClick:De,children:[ze,`Save & Apply`]}),e[39]=De,e[40]=Re,e[41]=J):J=e[41];let Y;e[42]!==K||e[43]!==q||e[44]!==J?(Y=(0,A.jsxs)(`div`,{className:`flex items-center justify-between`,children:[Fe,(0,A.jsxs)(`div`,{className:`flex items-center gap-2`,children:[K,q,J]})]}),e[42]=K,e[43]=q,e[44]=J,e[45]=Y):Y=e[45];let Be;e[46]===Symbol.for(`react.memo_cache_sentinel`)?(Be=e=>oe(e.target.value),e[46]=Be):Be=e[46];let X;e[47]===R?X=e[48]:(X=(0,A.jsx)(D,{title:`Name`,description:`Give your theme a recognizable name.`,control:(0,A.jsx)(h,{size:`sm`,value:R,onChange:Be,placeholder:`My Theme`,className:`w-full sm:w-52`})}),e[47]=R,e[48]=X);let Ve;e[49]===Symbol.for(`react.memo_cache_sentinel`)?(Ve=e=>se(e.target.value),e[49]=Ve):Ve=e[49];let Z;e[50]===z?Z=e[51]:(Z=(0,A.jsx)(D,{title:`Author`,description:`Optional creator attribution.`,control:(0,A.jsx)(h,{size:`sm`,value:z,onChange:Ve,placeholder:`Your name`,className:`w-full sm:w-52`})}),e[50]=z,e[51]=Z);let He;e[52]===Symbol.for(`react.memo_cache_sentinel`)?(He=e=>ce(e.target.value),e[52]=He):He=e[52];let Q;e[53]===B?Q=e[54]:(Q=(0,A.jsx)(D,{title:`Description`,description:`A short summary of the theme's look and feel.`,control:(0,A.jsx)(h,{size:`sm`,value:B,onChange:He,placeholder:`A warm dark palette with…`,className:`w-full sm:w-52`})}),e[53]=B,e[54]=Q);let Ue=V===`light`?`Light`:`Dark`,We;e[55]===Ue?We=e[56]:(We=(0,A.jsx)(x,{className:`w-full sm:w-40`,"aria-label":`Appearance`,children:(0,A.jsx)(ee,{children:Ue})}),e[55]=Ue,e[56]=We);let Ge;e[57]===Symbol.for(`react.memo_cache_sentinel`)?(Ge=(0,A.jsxs)(y,{align:`end`,alignItemWithTrigger:!1,children:[(0,A.jsx)(b,{hideIndicator:!0,value:`light`,children:`Light`}),(0,A.jsx)(b,{hideIndicator:!0,value:`dark`,children:`Dark`})]}),e[57]=Ge):Ge=e[57];let Ke;e[58]!==V||e[59]!==We?(Ke=(0,A.jsx)(D,{title:`Appearance`,description:`Whether this theme targets light or dark mode.`,control:(0,A.jsxs)(S,{value:V,onValueChange:Se,children:[We,Ge]})}),e[58]=V,e[59]=We,e[60]=Ke):Ke=e[60];let qe;e[61]===Symbol.for(`react.memo_cache_sentinel`)?(qe=e=>ue(e.target.value),e[61]=qe):qe=e[61];let Je;e[62]===H?Je=e[63]:(Je=(0,A.jsx)(D,{title:`Border radius`,description:`Default border radius for UI components.`,control:(0,A.jsx)(h,{size:`sm`,value:H,onChange:qe,placeholder:`0.625rem`,className:`w-full sm:w-40 font-mono text-xs`})}),e[62]=H,e[63]=Je);let Ye;e[64]===Symbol.for(`react.memo_cache_sentinel`)?(Ye=(0,A.jsx)(x,{className:`w-full sm:w-52`,"aria-label":`Base theme`,children:(0,A.jsx)(ee,{children:`Choose a theme...`})}),e[64]=Ye):Ye=e[64];let Xe;e[65]===F?Xe=e[66]:(Xe=(0,A.jsx)(y,{align:`end`,alignItemWithTrigger:!1,children:F.map(re)}),e[65]=F,e[66]=Xe);let Ze;e[67]!==be||e[68]!==Xe?(Ze=(0,A.jsx)(D,{title:`Start from base`,description:`Load colors from an existing theme to use as a starting point.`,control:(0,A.jsxs)(S,{value:``,onValueChange:be,children:[Ye,Xe]})}),e[67]=be,e[68]=Xe,e[69]=Ze):Ze=e[69];let Qe;e[70]!==X||e[71]!==Z||e[72]!==Q||e[73]!==Ke||e[74]!==Je||e[75]!==Ze?(Qe=(0,A.jsxs)(O,{title:`Theme Details`,children:[X,Z,Q,Ke,Je,Ze]}),e[70]=X,e[71]=Z,e[72]=Q,e[73]=Ke,e[74]=Je,e[75]=Ze,e[76]=Qe):Qe=e[76];let $e,et;e[77]===U?($e=e[78],et=e[79]):($e=(0,A.jsx)(O,{title:`Live Preview`,children:(0,A.jsx)(`div`,{className:`p-4`,children:(0,A.jsx)(L,{tokens:U})})}),et=j.map(e=>(0,A.jsx)(O,{title:e.label,children:(0,A.jsxs)(`div`,{className:`px-4 py-4 sm:px-5`,children:[(0,A.jsx)(`p`,{className:`mb-4 text-xs text-muted-foreground`,children:e.description}),(0,A.jsx)(`div`,{className:`grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3`,children:e.tokens.map(e=>(0,A.jsx)(I,{label:e.label,value:U[e.key],onChange:t=>ge(e.key,t)},e.key))})]})},e.label)),e[77]=U,e[78]=$e,e[79]=et);let tt;e[80]===Symbol.for(`react.memo_cache_sentinel`)?(tt=s(`inline-flex items-center gap-1 text-[11px] text-muted-foreground transition-colors hover:text-foreground`),e[80]=tt):tt=e[80];let nt=pe&&`rotate-180`,rt;e[81]===nt?rt=e[82]:(rt=s(`size-3.5 transition-transform duration-200`,nt),e[81]=nt,e[82]=rt);let it;e[83]===rt?it=e[84]:(it=(0,A.jsx)(d,{className:rt}),e[83]=rt,e[84]=it);let at=pe?`Collapse`:`Expand`,$;e[85]!==it||e[86]!==at?($=(0,A.jsxs)(w,{className:tt,children:[it,at]}),e[85]=it,e[86]=at,e[87]=$):$=e[87];let ot;e[88]===W?ot=e[89]:(ot=ne.map(e=>(0,A.jsxs)(`div`,{className:`border-t border-border px-4 py-4 first:border-t-0 sm:px-5`,children:[(0,A.jsx)(`p`,{className:`mb-4 text-xs font-medium text-foreground`,children:e.label}),(0,A.jsx)(`div`,{className:`grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3`,children:e.colors.map(e=>(0,A.jsx)(I,{label:e.label,value:W[e.key],onChange:t=>ve(e.key,t)},e.key))})]},e.label)),e[88]=W,e[89]=ot);let st;e[90]===ot?st=e[91]:(st=(0,A.jsx)(C,{children:ot}),e[90]=ot,e[91]=st);let ct;e[92]!==$||e[93]!==st?(ct=(0,A.jsx)(O,{title:`Terminal Colors`,headerAction:$,children:st}),e[92]=$,e[93]=st,e[94]=ct):ct=e[94];let lt;e[95]!==ct||e[96]!==pe?(lt=(0,A.jsx)(T,{open:pe,onOpenChange:me,children:ct}),e[95]=ct,e[96]=pe,e[97]=lt):lt=e[97];let ut;e[98]===Symbol.for(`react.memo_cache_sentinel`)?(ut=(0,A.jsx)(f,{className:`size-3.5`}),e[98]=ut):ut=e[98];let dt;e[99]===we?dt=e[100]:(dt=(0,A.jsx)(`div`,{className:`flex justify-end pb-6`,children:(0,A.jsxs)(a,{size:`sm`,variant:`ghost`,onClick:we,children:[ut,`Reset all colors`]})}),e[99]=we,e[100]=dt);let ft;return e[101]!==Y||e[102]!==Qe||e[103]!==$e||e[104]!==et||e[105]!==lt||e[106]!==dt?(ft=(0,A.jsxs)(E,{children:[Y,Qe,$e,et,lt,dt]}),e[101]=Y,e[102]=Qe,e[103]=$e,e[104]=et,e[105]=lt,e[106]=dt,e[107]=ft):ft=e[107],ft}function re(e){return(0,A.jsxs)(b,{hideIndicator:!0,value:e.id,children:[e.name,(0,A.jsxs)(`span`,{className:`ml-1.5 text-muted-foreground`,children:[`(`,e.appearance,`)`]})]},e.id)}function ie(){g.add({type:`error`,title:`Copy failed`,description:`Could not copy to clipboard.`})}function ae(){g.add({type:`success`,title:`Copied to clipboard`,description:`Theme JSON has been copied.`})}var oe=R;export{oe as component};
|
|
2
|
+
//# sourceMappingURL=settings.theme-builder-BU_DRAvo.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as e}from"./rolldown-runtime-COnpUsM8.js";import{Ci as t}from"./vendor--effect-atom-react-6hEhKm5I.js";import{t as n}from"./vendor-react-BvVnE5E6.js";import{m as r}from"./vendor-tanstack-CM5SpFmF.js";import{c as i}from"./vendor--lexical-react-B6TeCrpE.js";import{t as a}from"./utils-B-Di8CjF.js";import{ar as o,jn as s}from"./vendor-ui-DmvKhMzf.js";import{n as c,r as l}from"./useSettings-DOuHg9jg.js";import{t as u}from"./badge-BkzSFcY-.js";import{n as d,r as f,t as p}from"./collapsible-CqRg_DyH.js";var m=n(),h=e(t(),1),g=i(),_=[`settings`,`mcpServers`,`effective`],v=[`settings`,`skills`,`effective`],y=[];function b(e){let t=(0,m.c)(14),{value:n,onChange:r,placeholder:i,resultCount:a,totalCount:o}=e,c=n.length>0,l;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,g.jsx)(s,{className:`size-3.5 shrink-0 text-muted-foreground`}),t[0]=l):l=t[0];let u;t[1]===r?u=t[2]:(u=e=>r(e.target.value),t[1]=r,t[2]=u);let d;t[3]!==i||t[4]!==u||t[5]!==n?(d=(0,g.jsx)(`input`,{type:`text`,value:n,onChange:u,placeholder:i,className:`min-w-0 flex-1 bg-transparent text-sm text-foreground outline-none placeholder:text-muted-foreground/60`}),t[3]=i,t[4]=u,t[5]=n,t[6]=d):d=t[6];let f;t[7]!==c||t[8]!==a||t[9]!==o?(f=c?(0,g.jsxs)(`span`,{className:`shrink-0 text-[11px] tabular-nums text-muted-foreground`,children:[a,` / `,o]}):null,t[7]=c,t[8]=a,t[9]=o,t[10]=f):f=t[10];let p;return t[11]!==d||t[12]!==f?(p=(0,g.jsxs)(`div`,{className:`flex items-center gap-2 border-b border-border px-4 py-2 sm:px-5`,children:[l,d,f]}),t[11]=d,t[12]=f,t[13]=p):p=t[13],p}function x(e){let t=(0,m.c)(18),{source:n,count:r,defaultOpen:i,children:s}=e,[c,l]=(0,h.useState)(i),_=!c&&`-rotate-90`,v;t[0]===_?v=t[1]:(v=a(`size-3.5 shrink-0 text-muted-foreground transition-transform duration-200`,_),t[0]=_,t[1]=v);let y;t[2]===v?y=t[3]:(y=(0,g.jsx)(o,{className:v}),t[2]=v,t[3]=y);let b;t[4]===n?b=t[5]:(b=(0,g.jsx)(`span`,{className:`text-xs font-medium capitalize text-foreground`,children:n}),t[4]=n,t[5]=b);let x;t[6]===r?x=t[7]:(x=(0,g.jsx)(u,{variant:`secondary`,className:`text-[10px] tabular-nums`,children:r}),t[6]=r,t[7]=x);let S;t[8]!==y||t[9]!==b||t[10]!==x?(S=(0,g.jsxs)(f,{className:`flex w-full items-center gap-2 border-t border-border px-4 py-2.5 first:border-t-0 hover:bg-accent/40 sm:px-5`,children:[y,b,x]}),t[8]=y,t[9]=b,t[10]=x,t[11]=S):S=t[11];let C;t[12]===s?C=t[13]:(C=(0,g.jsx)(d,{children:(0,g.jsx)(`div`,{children:s})}),t[12]=s,t[13]=C);let w;return t[14]!==c||t[15]!==S||t[16]!==C?(w=(0,g.jsxs)(p,{open:c,onOpenChange:l,children:[S,C]}),t[14]=c,t[15]=S,t[16]=C,t[17]=w):w=t[17],w}var S=[`shiori`,`codex`,`claude`];function C(e){let t=new Map;for(let n of e){let e=t.get(n.source);e?e.push(n):t.set(n.source,[n])}let n=new Map;for(let e of S){let r=t.get(e);r&&n.set(e,r)}for(let[e,r]of t)n.has(e)||n.set(e,r);return n}function w(e,...t){let n=e.toLowerCase();return t.some(e=>e?.toLowerCase().includes(n))}function T(){let e=(0,m.c)(7),t=c(),{updateSettings:n}=l(),i=r(),a=t.mcpServers?.servers??y,o;e[0]!==i||e[1]!==n?(o=e=>{n({mcpServers:{servers:e}}),i.invalidateQueries({queryKey:_}),i.invalidateQueries({queryKey:v})},e[0]=i,e[1]=n,e[2]=o):o=e[2];let s=o,u;return e[3]!==s||e[4]!==i||e[5]!==a?(u={servers:a,persistServers:s,queryClient:i},e[3]=s,e[4]=i,e[5]=a,e[6]=u):u=e[6],u}export{C as a,x as i,v as n,w as o,b as r,T as s,_ as t};
|
|
2
|
+
//# sourceMappingURL=skillsMcpShared-DxxY1mEt.js.map
|