codebay 0.10.1 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/.mochi/manifest.json +199 -173
  2. package/.mochi/svelte-client/HydratableIsland-dammyce5.js +1 -0
  3. package/.mochi/svelte-client/_hydrate-AppShell_2rtnxn6pgp2rh-v65ctd99.js +2 -0
  4. package/.mochi/svelte-client/_hydrate-AvatarsView_257s9yq1wwr4f-htjfv8q9.js +14 -0
  5. package/.mochi/svelte-client/_hydrate-InstanceView_2ma45l9bybfhl-v07seqge.js +1 -0
  6. package/.mochi/svelte-client/_hydrate-SettingsView_8hmarwmf8onq-hj9yvqc4.js +38 -0
  7. package/.mochi/svelte-client/chunk-0zkdsrth.js +2 -0
  8. package/.mochi/svelte-client/{chunk-bn731rda.js → chunk-566rqq4c.js} +2 -2
  9. package/.mochi/svelte-client/chunk-79aj59e0.js +2 -0
  10. package/.mochi/svelte-client/{chunk-wvtkwfsh.js → chunk-czkxd74n.js} +1 -1
  11. package/.mochi/svelte-client/{chunk-p20tkpde.js → chunk-hxydjtda.js} +1 -1
  12. package/.mochi/svelte-client/chunk-qx1defbm.js +2 -0
  13. package/.mochi/svelte-client/chunk-r3wxmmc0.js +2 -0
  14. package/.mochi/svelte-client/{chunk-j72r8pkk.js → chunk-vs6pd2b4.js} +2 -2
  15. package/.mochi/svelte-client/{chunk-t0ap7q89.js → chunk-wjagstre.js} +1 -1
  16. package/.mochi/svelte-client/{chunk-0fjx3z3r.js → chunk-y9yy1004.js} +1 -1
  17. package/.mochi/svelte-compile/{App-59cdj86f.server.js → App-mzn3dqjm.server.js} +182 -72
  18. package/.mochi/svelte-compile/{Avatars-fmagfyj2.server.js → Avatars-c0k5jx8q.server.js} +3 -6
  19. package/.mochi/svelte-compile/{Instance-s1gqwzmx.server.js → Instance-hj76qnha.server.js} +4 -4
  20. package/.mochi/svelte-compile/{Settings-k447mt0x.server.js → Settings-tvc5yp08.server.js} +39 -28
  21. package/.mochi/svelte-compile/chunk-ed46m58e.js +22 -0
  22. package/.mochi/svelte-compile/{chunk-th2dbqvc.js → chunk-gz6hv1h5.js} +5 -1
  23. package/.mochi/svelte-compile/chunk-zd49axkf.js +65 -0
  24. package/.mochi/svelte-css/{AppBar-3bxinv4pabv8l.css → AppBar-1gtu2me3fni8e.css} +1 -1
  25. package/.mochi/svelte-css/AvatarEditor-1mjvec6bwdkv8.css +1 -0
  26. package/.mochi/svelte-css/{AvatarsView-2llo48w0wt0xn.css → AvatarsView-26ya4ep5n1ze7.css} +1 -1
  27. package/.mochi/svelte-css/Button-208u50wkms8ya.css +1 -0
  28. package/.mochi/svelte-css/CoinButton-2727devjtsn10.css +1 -0
  29. package/.mochi/svelte-css/CredMenu-7qowd1oxujet.css +1 -0
  30. package/.mochi/svelte-css/DashboardView-17a0b8epjurhb.css +1 -0
  31. package/.mochi/svelte-css/FolderBrowser-i0uj58dph27f.css +1 -0
  32. package/.mochi/svelte-css/HealthBox-r0giuhjn2wj4.css +1 -0
  33. package/.mochi/svelte-css/IdeBar-1mtgemqfuvqzi.css +1 -0
  34. package/.mochi/svelte-css/InstanceCard-25z7nas7y98zk.css +1 -0
  35. package/.mochi/svelte-css/InstanceFilter-2vglmyy0yrbbc.css +1 -0
  36. package/.mochi/svelte-css/InstanceView-oozmmctp8m3p.css +1 -0
  37. package/.mochi/svelte-css/SettingsCog-1jdeprd3ilczz.css +1 -0
  38. package/.mochi/svelte-css/{SettingsView-n3oy75uonzp2.css → SettingsView-bccw34agd2bj.css} +1 -1
  39. package/.mochi/svelte-css/StatusBadge-2eisdtnrsnfdc.css +1 -0
  40. package/.mochi/svelte-css/TerminalPane-2ywc86rhtmr9l.css +1 -0
  41. package/.mochi/svelte-css/ThemePicker-3fw4synubier0.css +1 -0
  42. package/migrations/0008_config_migrated.sql +1 -0
  43. package/package.json +8 -8
  44. package/src/components/AppBar.svelte +2 -2
  45. package/src/components/AppShell.svelte +71 -7
  46. package/src/components/AvatarEditor.svelte +10 -10
  47. package/src/components/AvatarsView.svelte +0 -0
  48. package/src/components/Button.svelte +13 -9
  49. package/src/components/CoinButton.svelte +2 -2
  50. package/src/components/CredMenu.svelte +8 -6
  51. package/src/components/DashboardView.svelte +2 -2
  52. package/src/components/FolderBrowser.svelte +39 -36
  53. package/src/components/HealthBox.svelte +5 -4
  54. package/src/components/IdeBar.svelte +286 -112
  55. package/src/components/InstanceCard.svelte +7 -7
  56. package/src/components/InstanceFilter.svelte +6 -6
  57. package/src/components/InstanceView.svelte +27 -21
  58. package/src/components/SettingsCog.svelte +4 -3
  59. package/src/components/SettingsView.svelte +7 -11
  60. package/src/components/StatusBadge.svelte +8 -6
  61. package/src/components/TerminalPane.svelte +19 -7
  62. package/src/components/ThemePicker.svelte +150 -8
  63. package/src/components/TopBar.svelte +1 -1
  64. package/src/components/UiShowcase.svelte +300 -64
  65. package/src/lib/db.server.ts +7 -3
  66. package/src/lib/devcontainer.server.ts +181 -33
  67. package/src/lib/docker.server.ts +10 -0
  68. package/src/lib/git.server.ts +28 -0
  69. package/src/lib/instances.server.ts +47 -6
  70. package/src/lib/tab-nav.ts +30 -0
  71. package/src/routes.ts +12 -0
  72. package/src/shell.html +56 -23
  73. package/src/theme.ts +8 -1
  74. package/src/toast.ts +9 -0
  75. package/src/types.ts +7 -0
  76. package/.mochi/svelte-client/HydratableIsland-aebn1fa1.js +0 -1
  77. package/.mochi/svelte-client/_hydrate-AppShell_2rtnxn6pgp2rh-rx6arrv5.js +0 -2
  78. package/.mochi/svelte-client/_hydrate-AvatarsView_257s9yq1wwr4f-jpjdmgpe.js +0 -14
  79. package/.mochi/svelte-client/_hydrate-InstanceView_2ma45l9bybfhl-c9y47dat.js +0 -1
  80. package/.mochi/svelte-client/_hydrate-SettingsView_8hmarwmf8onq-d61feq89.js +0 -38
  81. package/.mochi/svelte-client/chunk-8xvr02wh.js +0 -2
  82. package/.mochi/svelte-client/chunk-9143wy3j.js +0 -2
  83. package/.mochi/svelte-client/chunk-k37wj1jm.js +0 -2
  84. package/.mochi/svelte-client/chunk-pc0fm37c.js +0 -2
  85. package/.mochi/svelte-compile/chunk-3t7v4hk0.js +0 -52
  86. package/.mochi/svelte-compile/chunk-gkjgybb2.js +0 -15
  87. package/.mochi/svelte-css/AvatarEditor-2mdq8ss346drw.css +0 -1
  88. package/.mochi/svelte-css/Button-oharop2xz6am.css +0 -1
  89. package/.mochi/svelte-css/CoinButton-1rej3sh3tkjud.css +0 -1
  90. package/.mochi/svelte-css/CredMenu-9hwgeptp7crb.css +0 -1
  91. package/.mochi/svelte-css/DashboardView-1cy4xpqhja9sx.css +0 -1
  92. package/.mochi/svelte-css/FolderBrowser-2pxp9z1o7zixk.css +0 -1
  93. package/.mochi/svelte-css/HealthBox-er2her0jukwl.css +0 -1
  94. package/.mochi/svelte-css/IdeBar-3bgr3m5z0lpeg.css +0 -1
  95. package/.mochi/svelte-css/InstanceCard-3vnltxnbxkvay.css +0 -1
  96. package/.mochi/svelte-css/InstanceFilter-3q6x0jt0hcgpz.css +0 -1
  97. package/.mochi/svelte-css/InstanceView-1pd7j16bd2b16.css +0 -1
  98. package/.mochi/svelte-css/SettingsCog-jftyadvo64qo.css +0 -1
  99. package/.mochi/svelte-css/StatusBadge-3mq0j7z6aq4j.css +0 -1
  100. package/.mochi/svelte-css/TerminalPane-3bwgk6ulzq6b3.css +0 -1
  101. package/.mochi/svelte-css/ThemePicker-1ir8jyocm8mvi.css +0 -1
@@ -1,38 +0,0 @@
1
- import{h as xf,i as jL,j as Zf,k as AL,l as XL,m as YL,n as KL}from"/_mochi/client/chunk-j72r8pkk.js";import{o as xL,p as CL}from"/_mochi/client/chunk-8xvr02wh.js";import{r as jf}from"/_mochi/client/chunk-t0ap7q89.js";import{A as LS,B as a,C as JL,E as WL,y as ZL,z as zf}from"/_mochi/client/chunk-k37wj1jm.js";import{F as H,G as Cf,J as QL}from"/_mochi/client/chunk-9143wy3j.js";import{$ as B1,Aa as i,Ca as Z,Da as A,Ea as D,Ha as j1,Ka as IL,M as f,Ma as h,N as V,Na as y1,Qa as F,R as t0,Ra as X1,S as a0,Sa as L1,Ta as d,Va as m,Wa as T1,Ya as G,Za as R,_ as wL,_a as fL,ba as x,bb as O,da as y,db as Nf,eb as VL,fa as B,ga as L,ha as u1,ia as w,ja as zL,ma as Q,ra as I,wa as u,xa as e0,ya as p}from"/_mochi/client/chunk-bn731rda.js";import"/_mochi/client/chunk-wvtkwfsh.js";var r8=new Set(["$$slots","$$events","$$legacy"]);function E0(J,C){let X=G(C,r8),W=[["path",{d:"M22 7.7c0-.6-.4-1.2-.8-1.5l-6.3-3.9a1.72 1.72 0 0 0-1.7 0l-10.3 6c-.5.2-.9.8-.9 1.4v6.6c0 .5.4 1.2.8 1.5l6.3 3.9a1.72 1.72 0 0 0 1.7 0l10.3-6c.5-.3.9-1 .9-1.5Z"}],["path",{d:"M10 21.9V14L2.1 9.1"}],["path",{d:"m10 14 11.9-6.9"}],["path",{d:"M14 19.8v-8.1"}],["path",{d:"M18 17.5V9.4"}]];H(J,R({name:"container"},()=>X,{get iconNode(){return W}}))}var o8=new Set(["$$slots","$$events","$$legacy"]);function c0(J,C){let X=G(C,o8),W=[["path",{d:"M12 2v10"}],["path",{d:"M18.4 6.6a9 9 0 1 1-12.77.04"}]];H(J,R({name:"power"},()=>X,{get iconNode(){return W}}))}var n8=new Set(["$$slots","$$events","$$legacy"]);function g0(J,C){let X=G(C,n8),W=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"}],["path",{d:"M16 9a5 5 0 0 1 0 6"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728"}]];H(J,R({name:"volume-2"},()=>X,{get iconNode(){return W}}))}var _8=new Set(["$$slots","$$events","$$legacy"]);function m0(J,C){let X=G(C,_8),W=[["circle",{cx:"11",cy:"4",r:"2"}],["circle",{cx:"18",cy:"8",r:"2"}],["circle",{cx:"20",cy:"16",r:"2"}],["path",{d:"M9 10a5 5 0 0 1 5 5v3.5a3.5 3.5 0 0 1-6.84 1.045Q6.52 17.48 4.46 16.84A3.5 3.5 0 0 1 5.5 10Z"}]];H(J,R({name:"paw-print"},()=>X,{get iconNode(){return W}}))}var Sw=new Set(["$$slots","$$events","$$legacy"]);function i0(J,C){let X=G(C,Sw),W=[["path",{d:"M12 2v2"}],["path",{d:"M14.837 16.385a6 6 0 1 1-7.223-7.222c.624-.147.97.66.715 1.248a4 4 0 0 0 5.26 5.259c.589-.255 1.396.09 1.248.715"}],["path",{d:"M16 12a4 4 0 0 0-4-4"}],["path",{d:"m19 5-1.256 1.256"}],["path",{d:"M20 12h2"}]];H(J,R({name:"sun-moon"},()=>X,{get iconNode(){return W}}))}var Iw=new Set(["$$slots","$$events","$$legacy"]);function s0(J,C){let X=G(C,Iw),W=[["circle",{cx:"12",cy:"12",r:"4"}],["path",{d:"M12 2v2"}],["path",{d:"M12 20v2"}],["path",{d:"m4.93 4.93 1.41 1.41"}],["path",{d:"m17.66 17.66 1.41 1.41"}],["path",{d:"M2 12h2"}],["path",{d:"M20 12h2"}],["path",{d:"m6.34 17.66-1.41 1.41"}],["path",{d:"m19.07 4.93-1.41 1.41"}]];H(J,R({name:"sun"},()=>X,{get iconNode(){return W}}))}var fw=new Set(["$$slots","$$events","$$legacy"]);function u0(J,C){let X=G(C,fw),W=[["path",{d:"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"}]];H(J,R({name:"moon"},()=>X,{get iconNode(){return W}}))}var Nw=new Set(["$$slots","$$events","$$legacy"]);function d0(J,C){let X=G(C,Nw),W=[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21"}]];H(J,R({name:"monitor"},()=>X,{get iconNode(){return W}}))}var oN="theme";function nN(){let J=Nf.get(oN);return J==="dark"||J==="light"?J:"auto"}function _N(J){Nf.set(oN,J,{expires:400,path:"/"})}function SL(J){if(J==="auto")delete document.documentElement.dataset.theme;else document.documentElement.dataset.theme=J}var Lw=p('<button type="button" role="radio"><!> </button>'),yw=p('<div class="picker svelte-3gcwuj" role="radiogroup" aria-label="Theme"></div>');function Lf(J,C){t0(C,!0);let X=x(B(nN())),W=[{value:"auto",label:"Auto",icon:d0},{value:"light",label:"Light",icon:s0},{value:"dark",label:"Dark",icon:u0}];function x1(N1){y(X,N1,!0),_N(N1),SL(N1)}var f1=yw();j1(f1,21,()=>W,({value:N1,label:c,icon:o})=>N1,(N1,c)=>{let o=()=>I(c).value,C1=()=>I(c).label,k1=()=>I(c).icon;var Z1=Lw();let G1;var d1=L(Z1);IL(d1,k1,(J1,a1)=>{a1(J1,{size:13})});var t1=w(d1);f(Z1),Q(()=>{G1=y1(Z1,1,"segment svelte-3gcwuj",null,G1,{active:I(X)===o()}),d(Z1,"aria-checked",I(X)===o()),A(t1,` ${C1()??""}`)}),u("click",Z1,()=>x1(o())),Z(N1,Z1)}),f(f1),Z(J,f1),a0()}e0(["click"]);var ww=new Set(["$$slots","$$events","$$legacy"]);function v0(J,C){let X=G(C,ww),W=[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"}]];H(J,R({name:"layers"},()=>X,{get iconNode(){return W}}))}var zw=new Set(["$$slots","$$events","$$legacy"]);function $0(J,C){let X=G(C,zw),W=[["path",{d:"M9 13h6"}],["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z"}]];H(J,R({name:"folder-minus"},()=>X,{get iconNode(){return W}}))}var xw=new Set(["$$slots","$$events","$$legacy"]);function V1(J,C){let X=G(C,xw),W=[["path",{d:"M10 11v6"}],["path",{d:"M14 11v6"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"}],["path",{d:"M3 6h18"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"}]];H(J,R({name:"trash-2"},()=>X,{get iconNode(){return W}}))}var Cw=new Set(["$$slots","$$events","$$legacy"]);function i1(J,C){let X=G(C,Cw),W=[["path",{d:"m15 12-9.373 9.373a1 1 0 0 1-3.001-3L12 9"}],["path",{d:"m18 15 4-4"}],["path",{d:"m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172v-.344a2 2 0 0 0-.586-1.414l-1.657-1.657A6 6 0 0 0 12.516 3H9l1.243 1.243A6 6 0 0 1 12 8.485V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5"}]];H(J,R({name:"hammer"},()=>X,{get iconNode(){return W}}))}var Zw=new Set(["$$slots","$$events","$$legacy"]);function s1(J,C){let X=G(C,Zw),W=[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor"}]];H(J,R({name:"key-round"},()=>X,{get iconNode(){return W}}))}var jw=new Set(["$$slots","$$events","$$legacy"]);function r0(J,C){let X=G(C,jw),W=[["path",{d:"M10 15H6a4 4 0 0 0-4 4v2"}],["path",{d:"m14.305 16.53.923-.382"}],["path",{d:"m15.228 13.852-.923-.383"}],["path",{d:"m16.852 12.228-.383-.923"}],["path",{d:"m16.852 17.772-.383.924"}],["path",{d:"m19.148 12.228.383-.923"}],["path",{d:"m19.53 18.696-.382-.924"}],["path",{d:"m20.772 13.852.924-.383"}],["path",{d:"m20.772 16.148.924.383"}],["circle",{cx:"18",cy:"15",r:"3"}],["circle",{cx:"9",cy:"7",r:"4"}]];H(J,R({name:"user-cog"},()=>X,{get iconNode(){return W}}))}var Qw=new Set(["$$slots","$$events","$$legacy"]);function o0(J,C){let X=G(C,Qw),W=[["path",{d:"M12 20v2"}],["path",{d:"M12 2v2"}],["path",{d:"M17 20v2"}],["path",{d:"M17 2v2"}],["path",{d:"M2 12h2"}],["path",{d:"M2 17h2"}],["path",{d:"M2 7h2"}],["path",{d:"M20 12h2"}],["path",{d:"M20 17h2"}],["path",{d:"M20 7h2"}],["path",{d:"M7 20v2"}],["path",{d:"M7 2v2"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1"}]];H(J,R({name:"cpu"},()=>X,{get iconNode(){return W}}))}var Jw=new Set(["$$slots","$$events","$$legacy"]);function n0(J,C){let X=G(C,Jw),W=[["path",{d:"M8 21s-4-3-4-9 4-9 4-9"}],["path",{d:"M16 3s4 3 4 9-4 9-4 9"}],["line",{x1:"15",x2:"9",y1:"9",y2:"15"}],["line",{x1:"9",x2:"15",y1:"9",y2:"15"}]];H(J,R({name:"variable"},()=>X,{get iconNode(){return W}}))}var Ww=new Set(["$$slots","$$events","$$legacy"]);function _0(J,C){let X=G(C,Ww),W=[["path",{d:"M12.4 2.7a2.5 2.5 0 0 1 3.4 0l5.5 5.5a2.5 2.5 0 0 1 0 3.4l-3.7 3.7a2.5 2.5 0 0 1-3.4 0L8.7 9.8a2.5 2.5 0 0 1 0-3.4z"}],["path",{d:"m14 7 3 3"}],["path",{d:"m9.4 10.6-6.814 6.814A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814"}]];H(J,R({name:"key-square"},()=>X,{get iconNode(){return W}}))}var Aw=new Set(["$$slots","$$events","$$legacy"]);function SS(J,C){let X=G(C,Aw),W=[["path",{d:"M10 5H3"}],["path",{d:"M12 19H3"}],["path",{d:"M14 3v4"}],["path",{d:"M16 17v4"}],["path",{d:"M21 12h-9"}],["path",{d:"M21 19h-5"}],["path",{d:"M21 5h-7"}],["path",{d:"M8 10v4"}],["path",{d:"M8 12H3"}]];H(J,R({name:"sliders-horizontal"},()=>X,{get iconNode(){return W}}))}var Xw=new Set(["$$slots","$$events","$$legacy"]);function IS(J,C){let X=G(C,Xw),W=[["path",{d:"M11 5h10"}],["path",{d:"M11 12h10"}],["path",{d:"M11 19h10"}],["path",{d:"M4 4h1v5"}],["path",{d:"M4 9h2"}],["path",{d:"M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02"}]];H(J,R({name:"list-ordered"},()=>X,{get iconNode(){return W}}))}var Yw=new Set(["$$slots","$$events","$$legacy"]);function fS(J,C){let X=G(C,Yw),W=[["path",{d:"M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z"}],["path",{d:"m7 16.5-4.74-2.85"}],["path",{d:"m7 16.5 5-3"}],["path",{d:"M7 16.5v5.17"}],["path",{d:"M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z"}],["path",{d:"m17 16.5-5-3"}],["path",{d:"m17 16.5 4.74-2.85"}],["path",{d:"M17 16.5v5.17"}],["path",{d:"M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z"}],["path",{d:"M12 8 7.26 5.15"}],["path",{d:"m12 8 4.74-2.85"}],["path",{d:"M12 13.5V8"}]];H(J,R({name:"boxes"},()=>X,{get iconNode(){return W}}))}var Kw=new Set(["$$slots","$$events","$$legacy"]);function NS(J,C){let X=G(C,Kw),W=[["path",{d:"M15.39 4.39a1 1 0 0 0 1.68-.474 2.5 2.5 0 1 1 3.014 3.015 1 1 0 0 0-.474 1.68l1.683 1.682a2.414 2.414 0 0 1 0 3.414L19.61 15.39a1 1 0 0 1-1.68-.474 2.5 2.5 0 1 0-3.014 3.015 1 1 0 0 1 .474 1.68l-1.683 1.682a2.414 2.414 0 0 1-3.414 0L8.61 19.61a1 1 0 0 0-1.68.474 2.5 2.5 0 1 1-3.014-3.015 1 1 0 0 0 .474-1.68l-1.683-1.682a2.414 2.414 0 0 1 0-3.414L4.39 8.61a1 1 0 0 1 1.68.474 2.5 2.5 0 1 0 3.014-3.015 1 1 0 0 1-.474-1.68l1.683-1.682a2.414 2.414 0 0 1 3.414 0z"}]];H(J,R({name:"puzzle"},()=>X,{get iconNode(){return W}}))}var Vw=p('<div class="coin-row svelte-1ioj7vz"><span class="pixel-line svelte-1ioj7vz" aria-hidden="true"></span> <a class="coin-btn svelte-1ioj7vz" aria-label="Draw your own avatar" title="Draw your own avatar"><span class="new svelte-1ioj7vz" aria-hidden="true">New</span> <span class="coin svelte-1ioj7vz" aria-hidden="true"><!></span></a> <span class="pixel-line svelte-1ioj7vz" aria-hidden="true"></span></div>');function yf(J,C){let X=fL(C,"href",3,"/avatars"),W={name:"coin",pixels:["..####..",".#....#.","#..##..#","#.####.#","#.####.#","#..##..#",".#....#.","..####.."]};var x1=Vw(),f1=w(L(x1),2),N1=w(L(f1),2),c=L(N1);LS(c,{get art(){return W},name:"coin",scale:3}),f(N1),f(f1),V(2),f(x1),Q(()=>d(f1,"href",X())),Z(J,x1)}var Gw=new Set(["$$slots","$$events","$$legacy"]);function yS(J,C){let X=G(C,Gw),W=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"m9 12 2 2 4-4"}]];H(J,R({name:"shield-check"},()=>X,{get iconNode(){return W}}))}var Rw=new Set(["$$slots","$$events","$$legacy"]);function wS(J,C){let X=G(C,Rw),W=[["path",{d:"m12 14 4-4"}],["path",{d:"M3.34 19a10 10 0 1 1 17.32 0"}]];H(J,R({name:"gauge"},()=>X,{get iconNode(){return W}}))}var Hw=p('<span class="title svelte-1n6ht58">Settings</span>'),S1=p('<div class="sub svelte-1n6ht58"><div class="msg error svelte-1n6ht58"> </div></div>'),NL=p('<button type="button"> </button>'),Uw=p('<span class="arch svelte-1n6ht58" title="Docker daemon architecture"> </span>'),Pw=p(`Your Docker daemon runs on <strong> </strong> — pick an image that publishes
2
- an <strong> </strong> manifest, or the pull will fail.`,1),I1=p('<div class="msg error svelte-1n6ht58"> </div>'),wf=p('<div class="msg ok svelte-1n6ht58">Saved.</div>'),Dw=p(`<form class="row divided token-row svelte-1n6ht58" method="POST" action="?/gitIdentityOverride"><div class="label svelte-1n6ht58"><div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Identity</div> <div class="desc svelte-1n6ht58">Both fields are required — leave either blank and the container falls back to the
3
- host's identity.</div></div></div> <div class="model-fields svelte-1n6ht58"><label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Name</span> <input type="text" name="name" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" placeholder="Jane Doe"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Email</span> <input type="text" name="email" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" placeholder="jane@example.com"/></label> <div class="model-save-row svelte-1n6ht58"><!></div></div> <!></form>`),z1=p('<div class="msg ok svelte-1n6ht58"> </div>'),Fw=p('<span class="arch svelte-1n6ht58" title="Disabled while LiteLLM + Bedrock mode is on">disabled</span>'),Mw=p(`<form class="row divided token-row svelte-1n6ht58" method="POST" action="?/githubToken"><div class="label svelte-1n6ht58"><div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">GitHub token</div> <div class="desc svelte-1n6ht58">macOS / Linux: run <code class="svelte-1n6ht58">gh auth token</code> to print your GitHub CLI token, or
4
- create a Personal Access Token at <code class="svelte-1n6ht58">github.com/settings/tokens</code> (scopes: <code class="svelte-1n6ht58">repo</code>, <code class="svelte-1n6ht58">read:org</code>). Leave blank and Save to clear.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="password" name="githubToken" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/> <!></div> <!></form> <form class="row divided token-row svelte-1n6ht58" method="POST" action="?/claudeToken"><div class="label svelte-1n6ht58"><div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Claude Code token</div> <div class="desc svelte-1n6ht58">macOS / Linux: run <code class="svelte-1n6ht58">claude setup-token</code> to mint a long-lived token and
5
- paste it here. Copying a live login out of the keychain or <code class="svelte-1n6ht58">~/.claude/.credentials.json</code> works too, but that credential rotates —
6
- the first <code class="svelte-1n6ht58">claude</code> to refresh it signs the other one out. Leave blank and Save
7
- to clear.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="password" name="claudeToken" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/> <!></div> <!></form>`,1),Bw=p('<span class="arch svelte-1n6ht58">disabled</span>'),Tw=p(`Route <code class="svelte-1n6ht58">claude</code> through a LiteLLM proxy fronting AWS Bedrock instead of Anthropic's
8
- default API. When enabled, the Bedrock endpoint variables are injected into every new
9
- container, host OAuth credentials are not used, and "Set tokens manually" is disabled.`,1),kw=p('<form class="row divided token-row svelte-1n6ht58" method="POST" action="?/customBaseUrl"><div class="label svelte-1n6ht58"><div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Base URL</div> <div class="desc svelte-1n6ht58">The LiteLLM proxy endpoint, e.g. <code class="svelte-1n6ht58">https://litellm.example.com/bedrock</code>. Passed as <code class="svelte-1n6ht58">ANTHROPIC_BEDROCK_BASE_URL</code>.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="text" name="baseUrl" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off" placeholder="https://litellm.example.com/bedrock"/> <!></div> <!></form> <form class="row divided token-row svelte-1n6ht58" method="POST" action="?/customToken"><div class="label svelte-1n6ht58"><div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Auth token</div> <div class="desc svelte-1n6ht58">Your LiteLLM API key. Passed as <code class="svelte-1n6ht58">ANTHROPIC_AUTH_TOKEN</code>. Leave blank and\n\t\t\t\t\t\t\t\tSave to clear.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="password" name="token" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/> <!></div> <!></form> <form class="row divided token-row svelte-1n6ht58" method="POST" action="?/customModels"><div class="label svelte-1n6ht58"><div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Model IDs</div> <div class="desc svelte-1n6ht58">Model aliases to use for each tier. Prefilled with defaults from the reference\n\t\t\t\t\t\t\t\tlauncher script. Leave a field as-is to keep its current value.</div></div></div> <div class="model-fields svelte-1n6ht58"><label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Opus</span> <input type="text" name="opusModel" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Sonnet</span> <input type="text" name="sonnetModel" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Haiku</span> <input type="text" name="haikuModel" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Small/fast</span> <input type="text" name="smallFastModel" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Default</span> <input type="text" name="defaultModel" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <div class="model-save-row svelte-1n6ht58"><!></div></div> <!></form>',1),pw=p('<span class="arch svelte-1n6ht58" title="Disabled while LiteLLM + Bedrock is on">disabled</span>'),hw=p(`Pin which model <code class="svelte-1n6ht58">claude</code> uses on the standard (subscription) path. Only
10
- the fields you fill are injected into new containers as <code class="svelte-1n6ht58">ANTHROPIC_*_MODEL</code> variables; blanks fall through to Claude Code's own defaults.`,1),Ow=p('<form class="row divided token-row svelte-1n6ht58" method="POST" action="?/manualModels"><div class="label svelte-1n6ht58"><div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Model IDs</div> <div class="desc svelte-1n6ht58">A model name or alias per tier, e.g. <code class="svelte-1n6ht58">opusplan</code>, <code class="svelte-1n6ht58">opus</code>, <code class="svelte-1n6ht58">sonnet</code>, or a full <code class="svelte-1n6ht58">claude-…</code> id. Leave a field blank to skip it.</div></div></div> <div class="model-fields svelte-1n6ht58"><label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Opus</span> <input type="text" name="opusModel" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Sonnet</span> <input type="text" name="sonnetModel" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Haiku</span> <input type="text" name="haikuModel" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Small/fast</span> <input type="text" name="smallFastModel" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <label class="model-row svelte-1n6ht58"><span class="model-label svelte-1n6ht58">Default</span> <input type="text" name="defaultModel" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off"/></label> <div class="model-save-row svelte-1n6ht58"><!></div></div> <!></form>'),LL=p('<input type="hidden" name="names"/>'),qw=p('<form class="var-item svelte-1n6ht58" method="POST" action="?/hostEnvVarNames"><!> <span class="var-name svelte-1n6ht58"> </span> <span> </span> <button type="submit" class="var-remove svelte-1n6ht58"><!></button></form>'),yL=p('<div class="var-empty svelte-1n6ht58">No variables added yet.</div>'),bw=p('<div class="row divided var-row svelte-1n6ht58"><div class="var-list svelte-1n6ht58"></div> <form class="var-add svelte-1n6ht58" method="POST" action="?/hostEnvVarNames"><!> <input type="text" name="names" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off" placeholder="AWS_ACCESS_KEY_ID"/> <!></form> <!></div>'),lw=p('<form class="var-item svelte-1n6ht58" method="POST" action="?/removeCustomEnvVar"><input type="hidden" name="name"/> <span class="var-name svelte-1n6ht58"> </span> <span class="var-status present svelte-1n6ht58" title="Set — injected into every new container">•••• saved</span> <button type="submit" class="var-remove svelte-1n6ht58"><!></button></form>'),Ew=p('<div class="row divided var-row svelte-1n6ht58"><div class="var-list svelte-1n6ht58"></div> <form class="var-add svelte-1n6ht58" method="POST" action="?/setCustomEnvVar"><input type="text" name="name" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off" placeholder="MY_SECRET"/> <input type="password" name="value" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" autocomplete="off" placeholder="value"/> <!></form> <!></div>'),cw=p('<form method="POST" action="?/petChoose" class="svelte-1n6ht58"><input type="hidden" name="name"/> <button type="submit"><!></button></form>'),gw=p('<div class="sub pets svelte-1n6ht58"></div>'),mw=p('<span class="shutting svelte-1n6ht58">Server is shutting down — you can close this tab.</span>'),iw=p(`<div class="page svelte-1n6ht58"><!> <main class="content svelte-1n6ht58"><section class="card svelte-1n6ht58"><form class="row svelte-1n6ht58" method="POST" action="?/defaultMode"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Default editor</div> <div class="desc svelte-1n6ht58">What new instances start in. <strong>Full IDE</strong> serves browser VS Code; <strong>Terminal</strong> is lighter — just Claude Code in a terminal, no code-server. You
11
- can override this per instance when creating one.</div></div></div> <input type="hidden" name="mode"/> <div class="mode-toggle svelte-1n6ht58" role="group" aria-label="Default editor mode"><button type="button"><!> Full IDE</button> <button type="button"><!> Terminal</button></div></form> <!></section> <section class="card svelte-1n6ht58"><form class="row svelte-1n6ht58" method="POST" action="?/claudePermissionMode"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Claude permission mode</div> <div class="desc svelte-1n6ht58">The mode Claude Code starts in inside new instances. <strong>Default</strong> runs <code class="svelte-1n6ht58">--dangerously-skip-permissions</code>, which never prompts; the other three pass <code class="svelte-1n6ht58">--permission-mode</code> instead, because the skip flag overrides them. Applies on
12
- create and rebuild, not to already-running instances.</div></div></div> <input type="hidden" name="mode"/> <div class="mode-toggle svelte-1n6ht58" role="group" aria-label="Claude permission mode"></div></form> <!></section> <section class="card svelte-1n6ht58"><form class="row svelte-1n6ht58" method="POST" action="?/claudeEffortLevel"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Claude effort level</div> <div class="desc svelte-1n6ht58">The default reasoning effort Claude Code starts new sessions at inside instances,
13
- written to <code class="svelte-1n6ht58">~/.claude/settings.json</code>. Applies on create and rebuild, not to
14
- already-running instances.</div></div></div> <input type="hidden" name="level"/> <div class="mode-toggle svelte-1n6ht58" role="group" aria-label="Claude effort level"></div></form> <!></section> <section class="card svelte-1n6ht58"><form class="row image-row svelte-1n6ht58" method="POST" action="?/defaultImage"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Default container image <!></div> <div class="desc svelte-1n6ht58">Used only when a project folder ships no devcontainer.json. Takes effect for instances
15
- created from now on.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="text" name="image" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" placeholder="mcr.microsoft.com/devcontainers/base:ubuntu"/> <!> <!></div> <div class="desc tip svelte-1n6ht58"><!></div> <!></form></section> <section class="card svelte-1n6ht58"><form class="row image-row svelte-1n6ht58" method="POST" action="?/copyIgnorePatterns"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Skip when copying a local folder</div> <div class="desc svelte-1n6ht58">Comma-separated folder/file names excluded when copying a local source folder into a
16
- new instance's workspace. Leave blank to copy everything. Only applies to local
17
- folders — cloning a Git repo URL is unaffected.</div></div></div> <div class="image-controls svelte-1n6ht58"><input type="text" name="patterns" class="image-input svelte-1n6ht58" spellcheck="false" autocapitalize="off" autocorrect="off" placeholder="node_modules, .venv, dist"/> <!> <!></div> <!></form></section> <section class="card svelte-1n6ht58"><form class="row svelte-1n6ht58" method="POST" action="?/gitIdentityToggle"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Override git identity</div> <div class="desc svelte-1n6ht58">Inject a name and email as <code class="svelte-1n6ht58">git config --global user.name/user.email</code> in every
18
- new container, taking precedence over the host's own git config. When off, each container
19
- falls back to the host's identity.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled" class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> <!> <!></section> <section class="card svelte-1n6ht58"><form class="row svelte-1n6ht58" method="POST" action="?/disableBuildCache"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Disable build cache</div> <div class="desc svelte-1n6ht58">Build every new container with <code class="svelte-1n6ht58">--build-no-cache</code>. Applies to first boot
20
- and rebuilds — slower, but always picks up upstream image/layer changes.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled" class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> <!> <form class="row divided svelte-1n6ht58" method="POST" action="?/clearBuildCache"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Clear build cache</div> <div class="desc svelte-1n6ht58">Purge Docker's BuildKit layer cache now, so the next build runs uncached. Doesn't
21
- remove pulled images.</div> <!></div></div> <!></form> <form class="row divided svelte-1n6ht58" method="POST" action="?/rebuildAllNoCache"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Rebuild running containers (no cache)</div> <div class="desc svelte-1n6ht58">Rebuild every currently-running instance from scratch, without using any cached image
22
- layers. In-container edits are kept; stopped instances are left alone.</div> <!></div></div> <!></form></section> <section><form class="row svelte-1n6ht58" method="POST" action="?/manualTokensToggle"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Set tokens manually <!></div> <div class="desc svelte-1n6ht58"><!></div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled" class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> <!> <!></section> <section><form class="row svelte-1n6ht58" method="POST" action="?/customEndpointToggle"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">LiteLLM + Bedrock <!></div> <div class="desc svelte-1n6ht58"><!></div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled" class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> <!> <!></section> <section><form class="row svelte-1n6ht58" method="POST" action="?/manualModelToggle"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Override models manually <!></div> <div class="desc svelte-1n6ht58"><!></div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled" class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> <!> <!></section> <section class="card svelte-1n6ht58"><form class="row svelte-1n6ht58" method="POST" action="?/hostEnvVarsToggle"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Host environment variables</div> <div class="desc svelte-1n6ht58">Forward selected environment variables from this machine into every new container's
23
- interactive shells. Values are read from this process's own environment at container
24
- start and are never shown here or stored — only the variable names are saved.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled" class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> <!> <!></section> <section class="card svelte-1n6ht58"><form class="row svelte-1n6ht58" method="POST" action="?/customEnvVarsToggle"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Custom environment variables</div> <div class="desc svelte-1n6ht58">Inject your own <code class="svelte-1n6ht58">NAME=value</code> pairs into every new container as <code class="svelte-1n6ht58">containerEnv</code>, available to all processes. Values are secret — stored
25
- locally, masked in the build log, and never shown here after saving. Re-add a name to
26
- update its value.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled" class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> <!> <!></section> <section class="card svelte-1n6ht58"><div class="row svelte-1n6ht58"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Theme</div> <div class="desc svelte-1n6ht58">Light, dark, or follow the browser preference automatically (auto).</div></div></div> <!></div></section> <section class="card svelte-1n6ht58"><div class="row svelte-1n6ht58"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Attention sound</div> <div class="desc svelte-1n6ht58">Play a chime when an instance finishes a task or needs your input.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></div></section> <section class="card svelte-1n6ht58"><form class="row svelte-1n6ht58" method="POST" action="?/petToggle"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Pet logo</div> <div class="desc svelte-1n6ht58">Swap the box in the header for a pixel pet.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled" class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> <!> <!></section> <section class="card svelte-1n6ht58"><details class="advanced svelte-1n6ht58"><summary class="svelte-1n6ht58"><!> <span class="name svelte-1n6ht58">Advanced</span> <span class="hint svelte-1n6ht58">escape hatches — defaults are right for almost everyone</span></summary> <form class="row divided svelte-1n6ht58" method="POST" action="?/serialInjectionsToggle"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Serial boot injections</div> <div class="desc svelte-1n6ht58">Run boot injections one at a time instead of in parallel stages. Slower boot; useful
27
- when diagnosing injection interference.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled" class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> <!> <form class="row divided svelte-1n6ht58" method="POST" action="?/noBuildkitToggle"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Don't force BuildKit</div> <div class="desc svelte-1n6ht58">Skip setting <code class="svelte-1n6ht58">DOCKER_BUILDKIT=1</code> for container builds and let the daemon's
28
- default builder decide. For daemons where forcing BuildKit breaks builds.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled" class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> <!> <form class="row divided svelte-1n6ht58" method="POST" action="?/blockingExtInstallToggle"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Blocking IDE extension install</div> <div class="desc svelte-1n6ht58">Install the Claude Code IDE extension before code-server starts, so the first window
29
- always has it active. Slower first boot.</div></div></div> <label class="switch svelte-1n6ht58"><input type="checkbox" name="enabled" class="svelte-1n6ht58"/> <span class="track svelte-1n6ht58"><span class="thumb svelte-1n6ht58"></span></span></label></form> <!> <form class="row divided svelte-1n6ht58" method="POST" action="?/clearVersionCache"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Clear claude-code version cache</div> <div class="desc svelte-1n6ht58">Forget the cached latest-version check; the next instance boot asks the npm registry
30
- again.</div> <!></div></div> <!></form></details></section> <section class="card danger-card svelte-1n6ht58"><form class="row svelte-1n6ht58" method="POST" action="?/shutdown"><div class="label svelte-1n6ht58"><!> <div class="text svelte-1n6ht58"><div class="name svelte-1n6ht58">Delete database, containers, and shut down</div> <div class="desc svelte-1n6ht58">Stop and remove every instance and its container, delete all copied workspaces and the
31
- database, then shut down the server. This cannot be undone.</div></div></div> <!></form></section> <!> <div class="version svelte-1n6ht58"> </div></main></div> <!>`,1);function Qf(J,C){t0(C,!0);let X=x(B(AL())),W=x(B(C.pet)),x1=x(!1),f1=x(null),N1=x(!1);zL(()=>QL());function c(S){return{onPending:S.setSaving,submit:({cancel:N})=>{if(S.confirmMessage&&!confirm(S.confirmMessage)){N();return}return S.setError(null),S.setMsg?.(null),({result:z})=>{if(z.type==="success")S.onSuccess(z.data);else if(z.type==="failure")S.setError(z.data?.error??"Request failed");else if(z.type==="error")S.setError("Network error. Try again.")}}}}function o(S){return{onPending:S.setSaving,submit:({formData:N})=>{let z=N.get("enabled")==="on";return S.setError(null),({result:j})=>{if(j.type==="success"){S.onSuccess?.(j.data);return}S.set(!z),S.setError(j.type==="failure"?j.data?.error??"Request failed":"Network error. Try again.")}}}}let C1=x(B(C.defaultMode)),k1=x(!1),Z1=x(null),G1,d1=c({setSaving:(S)=>y(k1,S,!0),setError:(S)=>y(Z1,S,!0),setMsg:()=>{},onSuccess:(S)=>{if(S?.mode)y(C1,S.mode,!0)}});function t1(S){if(S===I(C1))return;B1(()=>y(C1,S,!0)),G1?.requestSubmit()}let J1=x(B(C.claudePermissionMode)),a1=x(!1),zS=x(null),xS,GL=c({setSaving:(S)=>y(a1,S,!0),setError:(S)=>y(zS,S,!0),setMsg:()=>{},onSuccess:(S)=>{if(S?.mode)y(J1,S.mode,!0)}}),RL={default:"Default",manual:"Manual",auto:"Auto",plan:"Plan"};function HL(S){if(S===I(J1))return;B1(()=>y(J1,S,!0)),xS?.requestSubmit()}let R1=x(B(C.claudeEffortLevel)),Jf=x(!1),CS=x(null),ZS,UL=c({setSaving:(S)=>y(Jf,S,!0),setError:(S)=>y(CS,S,!0),setMsg:()=>{},onSuccess:(S)=>{if(S?.level)y(R1,S.level,!0)}}),PL={low:"Low",medium:"Medium",high:"High",xhigh:"X-High",max:"Max"};function DL(S){if(S===I(R1))return;B1(()=>y(R1,S,!0)),ZS?.requestSubmit()}let p1=x(B(C.defaultImage)),jS=x(!1),QS=x(null),JS=x(!1),WS,FL=c({setSaving:(S)=>y(jS,S,!0),setError:(S)=>y(QS,S,!0),setMsg:(S)=>y(JS,!!S),onSuccess:(S)=>{y(p1,S?.image??I(p1),!0),y(JS,!0)}});function ML(){B1(()=>y(p1,C.builtinImage,!0)),WS?.requestSubmit()}let h1=x(B(C.copyIgnorePatterns)),AS=x(!1),XS=x(null),YS=x(!1),KS,BL=c({setSaving:(S)=>y(AS,S,!0),setError:(S)=>y(XS,S,!0),setMsg:(S)=>y(YS,!!S),onSuccess:(S)=>{y(h1,S?.patterns??I(h1),!0),y(YS,!0)}});function TL(){B1(()=>y(h1,C.builtinCopyIgnore,!0)),KS?.requestSubmit()}let e1=x(B(C.gitIdentityEnabled)),Wf=x(!1),VS=x(null),kL=o({set:(S)=>y(e1,S,!0),setSaving:(S)=>y(Wf,S,!0),setError:(S)=>y(VS,S,!0)}),v1=x(B(C.gitIdentityName)),$1=x(B(C.gitIdentityEmail)),Af=x(!1),GS=x(null),RS=x(!1),pL=c({setSaving:(S)=>y(Af,S,!0),setError:(S)=>y(GS,S,!0),setMsg:(S)=>y(RS,!!S),onSuccess:(S)=>{y(v1,S?.name??I(v1),!0),y($1,S?.email??I($1),!0),y(RS,!0)}}),HS=x(B(C.disableBuildCache)),Xf=x(!1),US=x(null),hL=o({set:(S)=>y(HS,S,!0),setSaving:(S)=>y(Xf,S,!0),setError:(S)=>y(US,S,!0)}),PS=x(!1),r1=x(null),DS=x(null);function OL(S){if(S<=0)return"0 B";let N=["B","KB","MB","GB","TB"],z=Math.min(Math.floor(Math.log(S)/Math.log(1024)),N.length-1);return`${(S/1024**z).toFixed(z===0?0:1)} ${N[z]}`}let qL=c({setSaving:(S)=>y(PS,S,!0),setError:(S)=>y(DS,S,!0),setMsg:(S)=>y(r1,S,!0),onSuccess:(S)=>{y(r1,`Cleared — freed ${OL(S?.spaceReclaimed??0)}.`)}}),FS=x(!1),o1=x(null),MS=x(null),bL=c({setSaving:(S)=>y(FS,S,!0),setError:(S)=>y(MS,S,!0),setMsg:(S)=>y(o1,S,!0),confirmMessage:"Rebuild every running container from scratch (no build cache)? Each will restart and may take a while.",onSuccess:(S)=>{let N=S?.count??0;y(o1,N===0?"No running containers to rebuild.":`Rebuilding ${N} container(s)…`,!0)}}),BS=x(B(C.advancedSerialInjections)),Yf=x(!1),TS=x(null),lL=o({set:(S)=>y(BS,S,!0),setSaving:(S)=>y(Yf,S,!0),setError:(S)=>y(TS,S,!0)}),kS=x(B(C.advancedNoBuildkit)),Kf=x(!1),pS=x(null),EL=o({set:(S)=>y(kS,S,!0),setSaving:(S)=>y(Kf,S,!0),setError:(S)=>y(pS,S,!0)}),hS=x(B(C.advancedBlockingExtInstall)),Vf=x(!1),OS=x(null),cL=o({set:(S)=>y(hS,S,!0),setSaving:(S)=>y(Vf,S,!0),setError:(S)=>y(OS,S,!0)}),qS=x(!1),n1=x(null),bS=x(null),gL=c({setSaving:(S)=>y(qS,S,!0),setError:(S)=>y(bS,S,!0),setMsg:(S)=>y(n1,S,!0),onSuccess:()=>{y(n1,"Cleared — the next instance boot re-checks the registry.")}}),O1=x(B(C.manualTokensEnabled)),Gf=x(!1),lS=x(null),mL=o({set:(S)=>y(O1,S,!0),setSaving:(S)=>y(Gf,S,!0),setError:(S)=>y(lS,S,!0)}),ES=x(B(C.githubTokenSet)),cS=x(""),Rf=x(!1),_1=x(null),gS=x(null),iL=c({setSaving:(S)=>y(Rf,S,!0),setError:(S)=>y(gS,S,!0),setMsg:(S)=>y(_1,S,!0),onSuccess:(S)=>{y(ES,S?.set??!1,!0),y(cS,""),y(_1,I(ES)?"Saved.":"Cleared.",!0)}}),mS=x(B(C.claudeTokenSet)),iS=x(""),Hf=x(!1),S0=x(null),sS=x(null),sL=c({setSaving:(S)=>y(Hf,S,!0),setError:(S)=>y(sS,S,!0),setMsg:(S)=>y(S0,S,!0),onSuccess:(S)=>{y(mS,S?.set??!1,!0),y(iS,""),y(S0,I(mS)?"Saved.":"Cleared.",!0)}}),n=x(B(C.customEndpointEnabled)),Uf=x(!1),uS=x(null),uL=o({set:(S)=>y(n,S,!0),setSaving:(S)=>y(Uf,S,!0),setError:(S)=>y(uS,S,!0),onSuccess:(S)=>{if(S?.enabled)y(H1,!1)}}),Pf=x(B(C.customEndpointBaseUrl)),Df=x(!1),I0=x(null),dS=x(null),dL=c({setSaving:(S)=>y(Df,S,!0),setError:(S)=>y(dS,S,!0),setMsg:(S)=>y(I0,S,!0),onSuccess:(S)=>{y(I0,S?.set?"Saved.":"Cleared.",!0)}}),tS=x(""),aS=x(B(C.customEndpointTokenSet)),Ff=x(!1),f0=x(null),eS=x(null),tL=c({setSaving:(S)=>y(Ff,S,!0),setError:(S)=>y(eS,S,!0),setMsg:(S)=>y(f0,S,!0),onSuccess:(S)=>{y(aS,S?.set??!1,!0),y(tS,""),y(f0,I(aS)?"Saved.":"Cleared.",!0)}}),Mf=x(B(C.customEndpointOpusModel)),Bf=x(B(C.customEndpointSonnetModel)),Tf=x(B(C.customEndpointHaikuModel)),kf=x(B(C.customEndpointSmallFastModel)),pf=x(B(C.customEndpointModel)),hf=x(!1),N0=x(null),vS=x(null),aL=c({setSaving:(S)=>y(hf,S,!0),setError:(S)=>y(vS,S,!0),setMsg:(S)=>y(N0,S,!0),onSuccess:()=>{y(N0,"Saved.")}}),H1=x(B(C.manualModelOverrideEnabled)),Of=x(!1),$S=x(null),eL=o({set:(S)=>y(H1,S,!0),setSaving:(S)=>y(Of,S,!0),setError:(S)=>y($S,S,!0),onSuccess:(S)=>{if(S?.enabled)y(n,!1)}}),qf=x(B(C.manualOpusModel)),bf=x(B(C.manualSonnetModel)),lf=x(B(C.manualHaikuModel)),Ef=x(B(C.manualSmallFastModel)),cf=x(B(C.manualModel)),gf=x(!1),L0=x(null),rS=x(null),vL=c({setSaving:(S)=>y(gf,S,!0),setError:(S)=>y(rS,S,!0),setMsg:(S)=>y(L0,S,!0),onSuccess:()=>{y(L0,"Saved.")}}),U1=wL(()=>I(O1)?"Set tokens manually":I(H1)?"Override models manually":null),y0=x(B(C.hostEnvVarsEnabled)),mf=x(!1),oS=x(null),$L=o({set:(S)=>y(y0,S,!0),setSaving:(S)=>y(mf,S,!0),setError:(S)=>y(oS,S,!0),onSuccess:(S)=>{y(D1,S?.presence??{},!0)}}),P1=x(B([...C.hostEnvVarNames])),D1=x(B({...C.hostEnvVarPresence})),nS=x(""),w0=x(!1),q1=x(null),Y1=x(null),rL={onPending:(S)=>y(w0,S,!0),submit:({formData:S,cancel:N})=>{y(Y1,null),y(q1,null);let z=S.getAll("names").map(String),U=(z.pop()??"").trim().toUpperCase();if(!U){N();return}if(!/^[A-Za-z_][A-Za-z0-9_]*$/.test(U)){y(Y1,`Invalid variable name: ${U}`),N();return}if(y(nS,""),z.includes(U)){N();return}let b=[...z,U];S.delete("names");for(let q of b)S.append("names",q);return({result:q})=>{if(q.type==="success")y(P1,b,!0),y(D1,q.data?.presence??{},!0),y(q1,"Saved.");else if(q.type==="failure")y(Y1,q.data?.error??"Request failed",!0);else if(q.type==="error")y(Y1,"Network error. Try again.")}}};function oL(S){return c({setSaving:(N)=>y(w0,N,!0),setError:(N)=>y(Y1,N,!0),setMsg:(N)=>y(q1,N,!0),onSuccess:(N)=>{y(P1,I(P1).filter((z)=>z!==S),!0),y(D1,N?.presence??{},!0)}})}let z0=x(B(C.customEnvVarsEnabled)),sf=x(!1),_S=x(null),nL=o({set:(S)=>y(z0,S,!0),setSaving:(S)=>y(sf,S,!0),setError:(S)=>y(_S,S,!0)}),b1=x(B([...C.customEnvVarNames])),SI=x(""),II=x(""),x0=x(!1),l1=x(null),W1=x(null),_L={onPending:(S)=>y(x0,S,!0),submit:({formData:S,cancel:N})=>{y(W1,null),y(l1,null);let z=String(S.get("name")??"").trim(),j=String(S.get("value")??"");if(!z||!j){y(W1,!z?"Name is required.":"Value is required.",!0),N();return}if(!/^[A-Za-z_][A-Za-z0-9_]*$/.test(z)){y(W1,`Invalid variable name: ${z}`),N();return}return S.set("name",z),({result:U})=>{if(U.type==="success")y(b1,U.data?.names??I(b1),!0),y(SI,""),y(II,""),y(l1,"Saved.");else if(U.type==="failure")y(W1,U.data?.error??"Request failed",!0);else if(U.type==="error")y(W1,"Network error. Try again.")}}};function Sy(S){return c({setSaving:(N)=>y(x0,N,!0),setError:(N)=>y(W1,N,!0),setMsg:(N)=>y(l1,N,!0),onSuccess:(N)=>{y(b1,N?.names??I(b1).filter((z)=>z!==S),!0)}})}function Iy(S){if(y(X,S,!0),XL(S),YL(),S)KL("done")}let fy={onPending:(S)=>y(x1,S,!0),submit:()=>{return y(f1,null),({result:S})=>{if(S.type==="success"){y(W,S.data?.name?zf(S.data.name):void 0,!0);return}y(f1,S.type==="failure"?S.data?.error??"Request failed":"Network error. Try again.",!0)}}};function Ny(S){return c({setSaving:(N)=>y(x1,N,!0),setError:(N)=>y(f1,N,!0),onSuccess:(N)=>{y(W,(N?.name?zf(N.name):void 0)??S,!0)}})}let Ly={submit:({cancel:S})=>{if(!confirm("Delete the database, remove all instances and their containers, and shut down the server? This cannot be undone.")){S();return}y(N1,!0)}};var uf=iw(),fI=u1(uf),df=L(fI);WL(df,{children:(S,N)=>{var z=Hw();Z(S,z)},$$slots:{default:!0}});var tf=w(df,2),NI=L(tf),E1=L(NI),LI=L(E1),yy=L(LI);xf(yy,{size:20}),V(2),f(LI);var yI=w(LI,2);F(yI);var af=w(yI,2),K1=L(af);let ef;var wy=L(K1);jL(wy,{size:15}),V(),f(K1);var F1=w(K1,2);let vf;var zy=L(F1);xf(zy,{size:15}),V(),f(F1),f(af),f(E1),T1(E1,(S)=>G1=S,()=>G1),h(E1,()=>O(d1));var xy=w(E1,2);{var Cy=(S)=>{var N=S1(),z=L(N),j=L(z,!0);f(z),f(N),Q(()=>A(j,I(Z1))),Z(S,N)};D(xy,(S)=>{if(I(Z1))S(Cy)})}f(NI);var wI=w(NI,2),c1=L(wI),zI=L(c1),Zy=L(zI);yS(Zy,{size:20}),V(2),f(zI);var xI=w(zI,2);F(xI);var $f=w(xI,2);j1($f,20,()=>xL,(S)=>S,(S,N)=>{var z=NL();let j;var U=L(z,!0);f(z),Q(()=>{j=y1(z,1,"mode-btn svelte-1n6ht58",null,j,{active:I(J1)===N}),d(z,"aria-pressed",I(J1)===N),z.disabled=I(a1),A(U,RL[N])}),u("click",z,()=>HL(N)),Z(S,z)}),f($f),f(c1),T1(c1,(S)=>xS=S,()=>xS),h(c1,()=>O(GL));var jy=w(c1,2);{var Qy=(S)=>{var N=S1(),z=L(N),j=L(z,!0);f(z),f(N),Q(()=>A(j,I(zS))),Z(S,N)};D(jy,(S)=>{if(I(zS))S(Qy)})}f(wI);var CI=w(wI,2),g1=L(CI),ZI=L(g1),Jy=L(ZI);wS(Jy,{size:20}),V(2),f(ZI);var jI=w(ZI,2);F(jI);var rf=w(jI,2);j1(rf,20,()=>CL,(S)=>S,(S,N)=>{var z=NL();let j;var U=L(z,!0);f(z),Q(()=>{j=y1(z,1,"mode-btn svelte-1n6ht58",null,j,{active:I(R1)===N}),d(z,"aria-pressed",I(R1)===N),z.disabled=I(Jf),A(U,PL[N])}),u("click",z,()=>DL(N)),Z(S,z)}),f(rf),f(g1),T1(g1,(S)=>ZS=S,()=>ZS),h(g1,()=>O(UL));var Wy=w(g1,2);{var Ay=(S)=>{var N=S1(),z=L(N),j=L(z,!0);f(z),f(N),Q(()=>A(j,I(CS))),Z(S,N)};D(Wy,(S)=>{if(I(CS))S(Ay)})}f(CI);var QI=w(CI,2),C0=L(QI),JI=L(C0),of=L(JI);E0(of,{size:20});var nf=w(of,2),_f=L(nf),Xy=w(L(_f));{var Yy=(S)=>{var N=Uw(),z=L(N,!0);f(N),Q(()=>A(z,C.dockerArch)),Z(S,N)};D(Xy,(S)=>{if(C.dockerArch)S(Yy)})}f(_f),V(2),f(nf),f(JI);var WI=w(JI,2),AI=L(WI);F(AI);var SN=w(AI,2);a(SN,{type:"submit",get disabled(){return I(jS)},children:(S,N)=>{V();var z=i("Save");Z(S,z)},$$slots:{default:!0}});var Ky=w(SN,2);a(Ky,{type:"button",get icon(){return jf},get disabled(){return I(jS)},onclick:ML,get title(){return`Reset to default (${C.builtinImage??""})`},"aria-label":"Reset to default image"}),f(WI);var XI=w(WI,2),Vy=L(XI);{var Gy=(S)=>{var N=Pw(),z=w(u1(N)),j=L(z,!0);f(z);var U=w(z,2),b=L(U,!0);f(U),V(),Q(()=>{A(j,C.dockerArch),A(b,C.dockerArch)}),Z(S,N)},Ry=(S)=>{var N=i(`Pick an image whose manifest covers your Docker daemon's architecture, or the pull will
32
- fail.`);Z(S,N)};D(Vy,(S)=>{if(C.dockerArch)S(Gy);else S(Ry,-1)})}f(XI);var Hy=w(XI,2);{var Uy=(S)=>{var N=I1(),z=L(N,!0);f(N),Q(()=>A(z,I(QS))),Z(S,N)},Py=(S)=>{var N=wf();Z(S,N)};D(Hy,(S)=>{if(I(QS))S(Uy);else if(I(JS))S(Py,1)})}f(C0),T1(C0,(S)=>WS=S,()=>WS),h(C0,()=>O(FL)),f(QI);var YI=w(QI,2),Z0=L(YI),KI=L(Z0),Dy=L(KI);$0(Dy,{size:20}),V(2),f(KI);var VI=w(KI,2),GI=L(VI);F(GI);var IN=w(GI,2);a(IN,{type:"submit",get disabled(){return I(AS)},children:(S,N)=>{V();var z=i("Save");Z(S,z)},$$slots:{default:!0}});var Fy=w(IN,2);a(Fy,{type:"button",get icon(){return jf},get disabled(){return I(AS)},onclick:TL,get title(){return`Reset to default (${C.builtinCopyIgnore??""})`},"aria-label":"Reset to default copy-ignore patterns"}),f(VI);var My=w(VI,2);{var By=(S)=>{var N=I1(),z=L(N,!0);f(N),Q(()=>A(z,I(XS))),Z(S,N)},Ty=(S)=>{var N=wf();Z(S,N)};D(My,(S)=>{if(I(XS))S(By);else if(I(YS))S(Ty,1)})}f(Z0),T1(Z0,(S)=>KS=S,()=>KS),h(Z0,()=>O(BL)),f(YI);var RI=w(YI,2),j0=L(RI),HI=L(j0),ky=L(HI);r0(ky,{size:20}),V(2),f(HI);var fN=w(HI,2),Q0=L(fN);F(Q0),V(2),f(fN),f(j0),h(j0,()=>O(kL));var NN=w(j0,2);{var py=(S)=>{var N=S1(),z=L(N),j=L(z,!0);f(z),f(N),Q(()=>A(j,I(VS))),Z(S,N)};D(NN,(S)=>{if(I(VS))S(py)})}var hy=w(NN,2);{var Oy=(S)=>{var N=Dw(),z=w(L(N),2),j=L(z),U=w(L(j),2);F(U),f(j);var b=w(j,2),q=w(L(b),2);F(q),f(b);var e=w(b,2),_=L(e);a(_,{type:"submit",get disabled(){return I(Af)},children:(P,s)=>{V();var v=i("Save");Z(P,v)},$$slots:{default:!0}}),f(e),f(z);var t=w(z,2);{var Y=(P)=>{var s=I1(),v=L(s,!0);f(s),Q(()=>A(v,I(GS))),Z(P,s)},K=(P)=>{var s=wf();Z(P,s)};D(t,(P)=>{if(I(GS))P(Y);else if(I(RS))P(K,1)})}f(N),h(N,()=>O(pL)),m(U,()=>I(v1),(P)=>y(v1,P)),m(q,()=>I($1),(P)=>y($1,P)),Z(S,N)};D(hy,(S)=>{if(I(e1))S(Oy)})}f(RI);var UI=w(RI,2),J0=L(UI),PI=L(J0),qy=L(PI);v0(qy,{size:20}),V(2),f(PI);var LN=w(PI,2),W0=L(LN);F(W0),V(2),f(LN),f(J0),h(J0,()=>O(hL));var yN=w(J0,2);{var by=(S)=>{var N=S1(),z=L(N),j=L(z,!0);f(z),f(N),Q(()=>A(j,I(US))),Z(S,N)};D(yN,(S)=>{if(I(US))S(by)})}var A0=w(yN,2),DI=L(A0),wN=L(DI);V1(wN,{size:20});var zN=w(wN,2),ly=w(L(zN),4);{var Ey=(S)=>{var N=I1(),z=L(N,!0);f(N),Q(()=>A(z,I(DS))),Z(S,N)},cy=(S)=>{var N=z1(),z=L(N,!0);f(N),Q(()=>A(z,I(r1))),Z(S,N)};D(ly,(S)=>{if(I(DS))S(Ey);else if(I(r1))S(cy,1)})}f(zN),f(DI);var gy=w(DI,2);a(gy,{type:"submit",get icon(){return V1},get disabled(){return I(PS)},children:(S,N)=>{V();var z=i();Q(()=>A(z,I(PS)?"Clearing…":"Clear cache")),Z(S,z)},$$slots:{default:!0}}),f(A0),h(A0,()=>O(qL));var FI=w(A0,2),MI=L(FI),xN=L(MI);i1(xN,{size:20});var CN=w(xN,2),my=w(L(CN),4);{var iy=(S)=>{var N=I1(),z=L(N,!0);f(N),Q(()=>A(z,I(MS))),Z(S,N)},sy=(S)=>{var N=z1(),z=L(N,!0);f(N),Q(()=>A(z,I(o1))),Z(S,N)};D(my,(S)=>{if(I(MS))S(iy);else if(I(o1))S(sy,1)})}f(CN),f(MI);var uy=w(MI,2);a(uy,{type:"submit",get icon(){return i1},get disabled(){return I(FS)},children:(S,N)=>{V();var z=i();Q(()=>A(z,I(FS)?"Starting…":"Rebuild all")),Z(S,z)},$$slots:{default:!0}}),f(FI),h(FI,()=>O(bL)),f(UI);var X0=w(UI,2);let ZN;var Y0=L(X0),BI=L(Y0),jN=L(BI);s1(jN,{size:20});var QN=w(jN,2),TI=L(QN),dy=w(L(TI));{var ty=(S)=>{var N=Fw();Z(S,N)};D(dy,(S)=>{if(I(n))S(ty)})}f(TI);var JN=w(TI,2),ay=L(JN);{var ey=(S)=>{var N=i(`Not available while LiteLLM + Bedrock mode is enabled — Claude credentials are
33
- provided by the LiteLLM endpoint instead.`);Z(S,N)},vy=(S)=>{var N=i(`Provide GitHub and Claude Code tokens yourself instead of discovering them from this
34
- machine. Useful on a headless server or when signed in as a different identity. A
35
- token set here is injected into every new container and overrides host credential
36
- discovery.`);Z(S,N)};D(ay,(S)=>{if(I(n))S(ey);else S(vy,-1)})}f(JN),f(QN),f(BI);var WN=w(BI,2),K0=L(WN);F(K0),V(2),f(WN),f(Y0),h(Y0,()=>O(mL));var AN=w(Y0,2);{var $y=(S)=>{var N=S1(),z=L(N),j=L(z,!0);f(z),f(N),Q(()=>A(j,I(lS))),Z(S,N)};D(AN,(S)=>{if(I(lS))S($y)})}var ry=w(AN,2);{var oy=(S)=>{var N=Mw(),z=u1(N),j=w(L(z),2),U=L(j);F(U);var b=w(U,2);a(b,{type:"submit",get disabled(){return I(Rf)},children:(T,l)=>{V();var k=i("Save");Z(T,k)},$$slots:{default:!0}}),f(j);var q=w(j,2);{var e=(T)=>{var l=I1(),k=L(l,!0);f(l),Q(()=>A(k,I(gS))),Z(T,l)},_=(T)=>{var l=z1(),k=L(l,!0);f(l),Q(()=>A(k,I(_1))),Z(T,l)};D(q,(T)=>{if(I(gS))T(e);else if(I(_1))T(_,1)})}f(z),h(z,()=>O(iL));var t=w(z,2),Y=w(L(t),2),K=L(Y);F(K);var P=w(K,2);a(P,{type:"submit",get disabled(){return I(Hf)},children:(T,l)=>{V();var k=i("Save");Z(T,k)},$$slots:{default:!0}}),f(Y);var s=w(Y,2);{var v=(T)=>{var l=I1(),k=L(l,!0);f(l),Q(()=>A(k,I(sS))),Z(T,l)},Q1=(T)=>{var l=z1(),k=L(l,!0);f(l),Q(()=>A(k,I(S0))),Z(T,l)};D(s,(T)=>{if(I(sS))T(v);else if(I(S0))T(Q1,1)})}f(t),h(t,()=>O(sL)),Q(()=>{d(U,"placeholder",I(ES)?"•••••••• (saved)":"ghp_… / gho_…"),d(K,"placeholder",I(mS)?"•••••••• (saved)":"sk-ant-oat…")}),m(U,()=>I(cS),(T)=>y(cS,T)),m(K,()=>I(iS),(T)=>y(iS,T)),Z(S,N)};D(ry,(S)=>{if(I(O1)&&!I(n))S(oy)})}f(X0);var V0=w(X0,2);let XN;var G0=L(V0),kI=L(G0),YN=L(kI);s1(YN,{size:20});var KN=w(YN,2),pI=L(KN),ny=w(L(pI));{var _y=(S)=>{var N=Bw();Q(()=>d(N,"title",`Disabled while ${I(U1)??""} is on`)),Z(S,N)};D(ny,(S)=>{if(I(U1))S(_y)})}f(pI);var VN=w(pI,2),S8=L(VN);{var I8=(S)=>{var N=i();Q(()=>A(N,`Not available while "${I(U1)??""}" is enabled — these modes are mutually
37
- incompatible.`)),Z(S,N)},f8=(S)=>{var N=Tw();V(2),Z(S,N)};D(S8,(S)=>{if(I(U1))S(I8);else S(f8,-1)})}f(VN),f(KN),f(kI);var GN=w(kI,2),R0=L(GN);F(R0),V(2),f(GN),f(G0),h(G0,()=>O(uL));var RN=w(G0,2);{var N8=(S)=>{var N=S1(),z=L(N),j=L(z,!0);f(z),f(N),Q(()=>A(j,I(uS))),Z(S,N)};D(RN,(S)=>{if(I(uS))S(N8)})}var L8=w(RN,2);{var y8=(S)=>{var N=kw(),z=u1(N),j=w(L(z),2),U=L(j);F(U);var b=w(U,2);a(b,{type:"submit",get disabled(){return I(Df)},children:(M,E)=>{V();var $=i("Save");Z(M,$)},$$slots:{default:!0}}),f(j);var q=w(j,2);{var e=(M)=>{var E=I1(),$=L(E,!0);f(E),Q(()=>A($,I(dS))),Z(M,E)},_=(M)=>{var E=z1(),$=L(E,!0);f(E),Q(()=>A($,I(I0))),Z(M,E)};D(q,(M)=>{if(I(dS))M(e);else if(I(I0))M(_,1)})}f(z),h(z,()=>O(dL));var t=w(z,2),Y=w(L(t),2),K=L(Y);F(K);var P=w(K,2);a(P,{type:"submit",get disabled(){return I(Ff)},children:(M,E)=>{V();var $=i("Save");Z(M,$)},$$slots:{default:!0}}),f(Y);var s=w(Y,2);{var v=(M)=>{var E=I1(),$=L(E,!0);f(E),Q(()=>A($,I(eS))),Z(M,E)},Q1=(M)=>{var E=z1(),$=L(E,!0);f(E),Q(()=>A($,I(f0))),Z(M,E)};D(s,(M)=>{if(I(eS))M(v);else if(I(f0))M(Q1,1)})}f(t),h(t,()=>O(tL));var T=w(t,2),l=w(L(T),2),k=L(l),r=w(L(k),2);F(r),f(k);var w1=w(k,2),A1=w(L(w1),2);F(A1),f(w1);var m1=w(w1,2),M1=w(L(m1),2);F(M1),f(m1);var If=w(m1,2),vN=w(L(If),2);F(vN),f(If);var ff=w(If,2),$N=w(L(ff),2);F($N),f(ff);var rN=w(ff,2),a8=L(rN);a(a8,{type:"submit",get disabled(){return I(hf)},children:(M,E)=>{V();var $=i("Save models");Z(M,$)},$$slots:{default:!0}}),f(rN),f(l);var e8=w(l,2);{var v8=(M)=>{var E=I1(),$=L(E,!0);f(E),Q(()=>A($,I(vS))),Z(M,E)},$8=(M)=>{var E=z1(),$=L(E,!0);f(E),Q(()=>A($,I(N0))),Z(M,E)};D(e8,(M)=>{if(I(vS))M(v8);else if(I(N0))M($8,1)})}f(T),h(T,()=>O(aL)),Q(()=>d(K,"placeholder",I(aS)?"•••••••• (saved)":"sk-…")),m(U,()=>I(Pf),(M)=>y(Pf,M)),m(K,()=>I(tS),(M)=>y(tS,M)),m(r,()=>I(Mf),(M)=>y(Mf,M)),m(A1,()=>I(Bf),(M)=>y(Bf,M)),m(M1,()=>I(Tf),(M)=>y(Tf,M)),m(vN,()=>I(kf),(M)=>y(kf,M)),m($N,()=>I(pf),(M)=>y(pf,M)),Z(S,N)};D(L8,(S)=>{if(I(n))S(y8)})}f(V0);var H0=w(V0,2);let HN;var U0=L(H0),hI=L(U0),UN=L(hI);o0(UN,{size:18});var PN=w(UN,2),OI=L(PN),w8=w(L(OI));{var z8=(S)=>{var N=pw();Z(S,N)};D(w8,(S)=>{if(I(n))S(z8)})}f(OI);var DN=w(OI,2),x8=L(DN);{var C8=(S)=>{var N=i(`Not available while "LiteLLM + Bedrock" is enabled — these modes are mutually
38
- incompatible.`);Z(S,N)},Z8=(S)=>{var N=hw();V(4),Z(S,N)};D(x8,(S)=>{if(I(n))S(C8);else S(Z8,-1)})}f(DN),f(PN),f(hI);var FN=w(hI,2),P0=L(FN);F(P0),V(2),f(FN),f(U0),h(U0,()=>O(eL));var MN=w(U0,2);{var j8=(S)=>{var N=S1(),z=L(N),j=L(z,!0);f(z),f(N),Q(()=>A(j,I($S))),Z(S,N)};D(MN,(S)=>{if(I($S))S(j8)})}var Q8=w(MN,2);{var J8=(S)=>{var N=Ow(),z=w(L(N),2),j=L(z),U=w(L(j),2);F(U),f(j);var b=w(j,2),q=w(L(b),2);F(q),f(b);var e=w(b,2),_=w(L(e),2);F(_),f(e);var t=w(e,2),Y=w(L(t),2);F(Y),f(t);var K=w(t,2),P=w(L(K),2);F(P),f(K);var s=w(K,2),v=L(s);a(v,{type:"submit",get disabled(){return I(gf)},children:(k,r)=>{V();var w1=i("Save models");Z(k,w1)},$$slots:{default:!0}}),f(s),f(z);var Q1=w(z,2);{var T=(k)=>{var r=I1(),w1=L(r,!0);f(r),Q(()=>A(w1,I(rS))),Z(k,r)},l=(k)=>{var r=z1(),w1=L(r,!0);f(r),Q(()=>A(w1,I(L0))),Z(k,r)};D(Q1,(k)=>{if(I(rS))k(T);else if(I(L0))k(l,1)})}f(N),h(N,()=>O(vL)),m(U,()=>I(qf),(k)=>y(qf,k)),m(q,()=>I(bf),(k)=>y(bf,k)),m(_,()=>I(lf),(k)=>y(lf,k)),m(Y,()=>I(Ef),(k)=>y(Ef,k)),m(P,()=>I(cf),(k)=>y(cf,k)),Z(S,N)};D(Q8,(S)=>{if(I(H1))S(J8)})}f(H0);var qI=w(H0,2),D0=L(qI),bI=L(D0),W8=L(bI);n0(W8,{size:20}),V(2),f(bI);var BN=w(bI,2),F0=L(BN);F(F0),V(2),f(BN),f(D0),h(D0,()=>O($L));var TN=w(D0,2);{var A8=(S)=>{var N=S1(),z=L(N),j=L(z,!0);f(z),f(N),Q(()=>A(j,I(oS))),Z(S,N)};D(TN,(S)=>{if(I(oS))S(A8)})}var X8=w(TN,2);{var Y8=(S)=>{var N=bw(),z=L(N);j1(z,20,()=>I(P1),(Y)=>Y,(Y,K)=>{var P=qw(),s=L(P);j1(s,16,()=>I(P1).filter((A1)=>A1!==K),(A1)=>A1,(A1,m1)=>{var M1=LL();F(M1),Q(()=>X1(M1,m1)),Z(A1,M1)});var v=w(s,2),Q1=L(v,!0);f(v);var T=w(v,2);let l;var k=L(T,!0);f(T);var r=w(T,2),w1=L(r);Cf(w1,{size:13}),f(r),f(P),h(P,()=>O(oL(K))),Q(()=>{A(Q1,K),l=y1(T,1,"var-status svelte-1n6ht58",null,l,{present:I(D1)[K]}),d(T,"title",I(D1)[K]?"Set on this host — will be injected":"Not set on this host — will be skipped"),A(k,I(D1)[K]?"set":"missing"),r.disabled=I(w0),d(r,"aria-label",`Remove ${K}`)}),Z(Y,P)},(Y)=>{var K=yL();Z(Y,K)}),f(z);var j=w(z,2),U=L(j);j1(U,16,()=>I(P1),(Y)=>Y,(Y,K)=>{var P=LL();F(P),Q(()=>X1(P,K)),Z(Y,P)});var b=w(U,2);F(b);var q=w(b,2);a(q,{type:"submit",get icon(){return Zf},get disabled(){return I(w0)},children:(Y,K)=>{V();var P=i("Add");Z(Y,P)},$$slots:{default:!0}}),f(j),h(j,()=>O(rL));var e=w(j,2);{var _=(Y)=>{var K=I1(),P=L(K,!0);f(K),Q(()=>A(P,I(Y1))),Z(Y,K)},t=(Y)=>{var K=z1(),P=L(K,!0);f(K),Q(()=>A(P,I(q1))),Z(Y,K)};D(e,(Y)=>{if(I(Y1))Y(_);else if(I(q1))Y(t,1)})}f(N),m(b,()=>I(nS),(Y)=>y(nS,Y)),Z(S,N)};D(X8,(S)=>{if(I(y0))S(Y8)})}f(qI);var lI=w(qI,2),M0=L(lI),EI=L(M0),K8=L(EI);_0(K8,{size:20}),V(2),f(EI);var kN=w(EI,2),B0=L(kN);F(B0),V(2),f(kN),f(M0),h(M0,()=>O(nL));var pN=w(M0,2);{var V8=(S)=>{var N=S1(),z=L(N),j=L(z,!0);f(z),f(N),Q(()=>A(j,I(_S))),Z(S,N)};D(pN,(S)=>{if(I(_S))S(V8)})}var G8=w(pN,2);{var R8=(S)=>{var N=Ew(),z=L(N);j1(z,20,()=>I(b1),(Y)=>Y,(Y,K)=>{var P=lw(),s=L(P);F(s);var v=w(s,2),Q1=L(v,!0);f(v);var T=w(v,4),l=L(T);Cf(l,{size:13}),f(T),f(P),h(P,()=>O(Sy(K))),Q(()=>{X1(s,K),A(Q1,K),T.disabled=I(x0),d(T,"aria-label",`Remove ${K}`)}),Z(Y,P)},(Y)=>{var K=yL();Z(Y,K)}),f(z);var j=w(z,2),U=L(j);F(U);var b=w(U,2);F(b);var q=w(b,2);a(q,{type:"submit",get icon(){return Zf},get disabled(){return I(x0)},children:(Y,K)=>{V();var P=i("Add");Z(Y,P)},$$slots:{default:!0}}),f(j),h(j,()=>O(_L));var e=w(j,2);{var _=(Y)=>{var K=I1(),P=L(K,!0);f(K),Q(()=>A(P,I(W1))),Z(Y,K)},t=(Y)=>{var K=z1(),P=L(K,!0);f(K),Q(()=>A(P,I(l1))),Z(Y,K)};D(e,(Y)=>{if(I(W1))Y(_);else if(I(l1))Y(t,1)})}f(N),m(U,()=>I(SI),(Y)=>y(SI,Y)),m(b,()=>I(II),(Y)=>y(II,Y)),Z(S,N)};D(G8,(S)=>{if(I(z0))S(R8)})}f(lI);var cI=w(lI,2),hN=L(cI),gI=L(hN),H8=L(gI);i0(H8,{size:20}),V(2),f(gI);var U8=w(gI,2);Lf(U8,{}),f(hN),f(cI);var mI=w(cI,2),ON=L(mI),iI=L(ON),P8=L(iI);g0(P8,{size:20}),V(2),f(iI);var qN=w(iI,2),sI=L(qN);F(sI),V(2),f(qN),f(ON),f(mI);var uI=w(mI,2),T0=L(uI),dI=L(T0),D8=L(dI);m0(D8,{size:18}),V(2),f(dI);var bN=w(dI,2),k0=L(bN);F(k0),V(2),f(bN),f(T0),h(T0,()=>O(fy));var lN=w(T0,2);{var F8=(S)=>{var N=S1(),z=L(N),j=L(z,!0);f(z),f(N),Q(()=>A(j,I(f1))),Z(S,N)};D(lN,(S)=>{if(I(f1))S(F8)})}var M8=w(lN,2);{var B8=(S)=>{var N=gw();j1(N,21,()=>ZL,(z)=>z.name,(z,j)=>{var U=cw(),b=L(U);F(b);var q=w(b,2);let e;var _=L(q);LS(_,{get art(){return I(j)},get name(){return I(j).name},scale:4}),f(q),f(U),h(U,()=>O(Ny(I(j)))),Q(()=>{X1(b,I(j).name),e=y1(q,1,"pet svelte-1n6ht58",null,e,{selected:I(j).name===I(W).name}),q.disabled=I(x1),d(q,"title",I(j).name),d(q,"aria-label",I(j).name),d(q,"aria-pressed",I(j).name===I(W).name)}),Z(z,U)}),f(N),Z(S,N)};D(M8,(S)=>{if(I(W))S(B8)})}f(uI);var tI=w(uI,2),EN=L(tI),aI=L(EN),T8=L(aI);SS(T8,{size:20}),V(4),f(aI);var p0=w(aI,2),eI=L(p0),k8=L(eI);IS(k8,{size:20}),V(2),f(eI);var cN=w(eI,2),h0=L(cN);F(h0),V(2),f(cN),f(p0),h(p0,()=>O(lL));var gN=w(p0,2);{var p8=(S)=>{var N=S1(),z=L(N),j=L(z,!0);f(z),f(N),Q(()=>A(j,I(TS))),Z(S,N)};D(gN,(S)=>{if(I(TS))S(p8)})}var O0=w(gN,2),vI=L(O0),h8=L(vI);fS(h8,{size:20}),V(2),f(vI);var mN=w(vI,2),q0=L(mN);F(q0),V(2),f(mN),f(O0),h(O0,()=>O(EL));var iN=w(O0,2);{var O8=(S)=>{var N=S1(),z=L(N),j=L(z,!0);f(z),f(N),Q(()=>A(j,I(pS))),Z(S,N)};D(iN,(S)=>{if(I(pS))S(O8)})}var b0=w(iN,2),$I=L(b0),q8=L($I);NS(q8,{size:20}),V(2),f($I);var sN=w($I,2),l0=L(sN);F(l0),V(2),f(sN),f(b0),h(b0,()=>O(cL));var uN=w(b0,2);{var b8=(S)=>{var N=S1(),z=L(N),j=L(z,!0);f(z),f(N),Q(()=>A(j,I(OS))),Z(S,N)};D(uN,(S)=>{if(I(OS))S(b8)})}var rI=w(uN,2),oI=L(rI),dN=L(oI);V1(dN,{size:20});var tN=w(dN,2),l8=w(L(tN),4);{var E8=(S)=>{var N=I1(),z=L(N,!0);f(N),Q(()=>A(z,I(bS))),Z(S,N)},c8=(S)=>{var N=z1(),z=L(N,!0);f(N),Q(()=>A(z,I(n1))),Z(S,N)};D(l8,(S)=>{if(I(bS))S(E8);else if(I(n1))S(c8,1)})}f(tN),f(oI);var g8=w(oI,2);a(g8,{type:"submit",get icon(){return V1},get disabled(){return I(qS)},children:(S,N)=>{V();var z=i();Q(()=>A(z,I(qS)?"Clearing…":"Clear cache")),Z(S,z)},$$slots:{default:!0}}),f(rI),h(rI,()=>O(gL)),f(EN),f(tI);var nI=w(tI,2),_I=L(nI),Sf=L(_I),m8=L(Sf);c0(m8,{size:20}),V(2),f(Sf);var i8=w(Sf,2);{var s8=(S)=>{var N=mw();Z(S,N)},u8=(S)=>{a(S,{type:"submit",variant:"danger",children:(N,z)=>{V();var j=i("Delete & shut down");Z(N,j)},$$slots:{default:!0}})};D(i8,(S)=>{if(I(N1))S(s8);else S(u8,-1)})}f(_I),h(_I,()=>O(Ly)),f(nI);var aN=w(nI,2);yf(aN,{});var eN=w(aN,2),d8=L(eN);f(eN),f(tf),f(fI);var t8=w(fI,2);JL(t8,{toastOptions:{style:"border:1px solid var(--ink); background:var(--bg-card); color:var(--ink); box-shadow:4px 4px 0 var(--ink); font-family:var(--font-mono); font-size:13px;"}}),Q(()=>{X1(yI,I(C1)),ef=y1(K1,1,"mode-btn svelte-1n6ht58",null,ef,{active:I(C1)==="ide"}),d(K1,"aria-pressed",I(C1)==="ide"),K1.disabled=I(k1),vf=y1(F1,1,"mode-btn svelte-1n6ht58",null,vf,{active:I(C1)==="terminal"}),d(F1,"aria-pressed",I(C1)==="terminal"),F1.disabled=I(k1),X1(xI,I(J1)),X1(jI,I(R1)),L1(Q0,I(e1)),Q0.disabled=I(Wf),L1(W0,I(HS)),W0.disabled=I(Xf),ZN=y1(X0,1,"card svelte-1n6ht58",null,ZN,{"disabled-card":I(n)}),L1(K0,I(O1)),K0.disabled=I(Gf)||I(n),XN=y1(V0,1,"card svelte-1n6ht58",null,XN,{"disabled-card":I(U1)}),L1(R0,I(n)),R0.disabled=I(Uf)||!!I(U1),HN=y1(H0,1,"card svelte-1n6ht58",null,HN,{"disabled-card":I(n)}),L1(P0,I(H1)),P0.disabled=I(Of)||I(n),L1(F0,I(y0)),F0.disabled=I(mf),L1(B0,I(z0)),B0.disabled=I(sf),L1(sI,I(X)),L1(k0,!!I(W)),k0.disabled=I(x1),L1(h0,I(BS)),h0.disabled=I(Yf),L1(q0,I(kS)),q0.disabled=I(Kf),L1(l0,I(hS)),l0.disabled=I(Vf),A(d8,`Codebay v${C.version??""}`)}),u("click",K1,()=>t1("ide")),u("click",F1,()=>t1("terminal")),m(AI,()=>I(p1),(S)=>y(p1,S)),m(GI,()=>I(h1),(S)=>y(h1,S)),u("change",Q0,(S)=>{y(e1,S.currentTarget.checked,!0),S.currentTarget.form?.requestSubmit()}),u("change",W0,(S)=>{y(HS,S.currentTarget.checked,!0),S.currentTarget.form?.requestSubmit()}),u("change",K0,(S)=>{y(O1,S.currentTarget.checked,!0),S.currentTarget.form?.requestSubmit()}),u("change",R0,(S)=>{y(n,S.currentTarget.checked,!0),S.currentTarget.form?.requestSubmit()}),u("change",P0,(S)=>{y(H1,S.currentTarget.checked,!0),S.currentTarget.form?.requestSubmit()}),u("change",F0,(S)=>{y(y0,S.currentTarget.checked,!0),S.currentTarget.form?.requestSubmit()}),u("change",B0,(S)=>{y(z0,S.currentTarget.checked,!0),S.currentTarget.form?.requestSubmit()}),u("change",sI,(S)=>Iy(S.currentTarget.checked)),u("change",k0,(S)=>S.currentTarget.form?.requestSubmit()),u("change",h0,(S)=>{y(BS,S.currentTarget.checked,!0),S.currentTarget.form?.requestSubmit()}),u("change",q0,(S)=>{y(kS,S.currentTarget.checked,!0),S.currentTarget.form?.requestSubmit()}),u("change",l0,(S)=>{y(hS,S.currentTarget.checked,!0),S.currentTarget.form?.requestSubmit()}),Z(J,uf),a0()}e0(["click","change"]);VL("SettingsView_8hmarwmf8onq",Qf);
@@ -1,2 +0,0 @@
1
- var k=["default","manual","auto","plan"];var q=["low","medium","high","xhigh","max"];function w(f){let j=`/p/${f.id}/`;return f.remote_workspace_folder?`${j}?folder=${encodeURIComponent(f.remote_workspace_folder)}`:j}
2
- export{k as o,q as p,w as q};
@@ -1,2 +0,0 @@
1
- import{Ba as A,Ca as h,Ga as T,Ha as j,Ja as B,K as _,L as y,La as M,M as I,O as g,Q as b,R as N,S as W,Ua as u,Ya as n,Za as X,_ as a,_a as r,ga as w,ha as E,ia as L,ra as i,za as z}from"/_mochi/client/chunk-bn731rda.js";g();var H={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"},C=H;var x=(e)=>{for(let t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1};var O=Symbol("lucide-context");var k=()=>b(O);var ee=new Set(["$$slots","$$events","$$legacy","name","color","size","strokeWidth","absoluteStrokeWidth","iconNode","children"]),te=z("<svg><!><!></svg>");function f(e,t){N(t,!0);let o=k()??{},c=r(t,"color",19,()=>o.color??"currentColor"),l=r(t,"size",19,()=>o.size??24),m=r(t,"strokeWidth",19,()=>o.strokeWidth??2),J=r(t,"absoluteStrokeWidth",19,()=>o.absoluteStrokeWidth??!1),K=r(t,"iconNode",19,()=>[]),p=n(t,ee),Q=a(()=>J()?Number(m())*24/Number(l()):m());var s=te();u(s,(d)=>({...C,...d,...p,width:l(),height:l(),stroke:c(),"stroke-width":i(Q),class:["lucide-icon lucide",o.class,t.name&&`lucide-${t.name}`,t.class]}),[()=>!t.children&&!x(p)&&{"aria-hidden":"true"}]);var $=w(s);j($,17,K,T,(d,U)=>{var v=a(()=>y(i(U),2));let V=()=>i(v)[0],Y=()=>i(v)[1];var S=A(),Z=E(S);M(Z,V,!0,(G,re)=>{u(G,()=>({...Y()}))}),h(d,S)});var R=L($);B(R,()=>t.children??_),I(s),h(e,s),W()}var oe=new Set(["$$slots","$$events","$$legacy"]);function q(e,t){let o=n(t,oe),c=[["path",{d:"M18 6 6 18"}],["path",{d:"m6 6 12 12"}]];f(e,X({name:"x"},()=>o,{get iconNode(){return c}}))}function Ce(e){return`${e}?popup=1`}function D(){return new URLSearchParams(location.search).has("popup")}function F(){window.close(),setTimeout(()=>{location.href="/"},100)}function xe(e){if(e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;if(!D())return;e.preventDefault(),F()}function be(){if(!D())return()=>{};history.pushState({},"",location.href);let e=()=>F();return window.addEventListener("popstate",e),()=>window.removeEventListener("popstate",e)}
2
- export{f as F,q as G,Ce as H,xe as I,be as J};
@@ -1,2 +0,0 @@
1
- import{F as mr,I as lr}from"/_mochi/client/chunk-9143wy3j.js";import{$a as pr,Aa as ar,Ba as S,Ca as f,Da as Tt,Ea as I,Ga as Oe,Ha as ut,Ia as qt,Ja as mt,K as it,Ka as N,M as z,N as Fe,Na as O,Oa as E,P as Ne,Pa as Ht,R as B,S as Y,T as ft,Ta as kt,U as It,Ua as lt,V as D,W as sr,Wa as or,X as nr,Xa as w,Ya as At,Za as pt,_ as U,_a as d,ab as rr,ba as j,ca as P,da as h,ga as C,ha as R,ia as G,ja as Ue,ka as W,la as V,ma as M,ra as s,sa as X,ta as T,va as ot,wa as at,xa as vt,ya as _}from"/_mochi/client/chunk-bn731rda.js";var dr={name:"anchor",robot:!0,pixels:["...##...","..#..#..","..#..#..",".######.","...##...","#..##..#","########",".######."]},Bt=dr;var $r={name:"ant-head",pixels:["#......#",".#....#.",".######.","#..##..#","#..##..#","#..##..#",".######.","...##..."]},Yt=$r;var cr={name:"apple",pixels:["...##...","...#....",".##..##.","#.######","#.######","#.######",".#.####.","..####.."]},Gt=cr;var vr={name:"bear",robot:!0,pixels:["##....##","###..###","########","##.##.##","########","########","###..###",".######."]},Jt=vr;var ur={name:"bee",robot:!0,pixels:[".#....#.","##.##.##","#.####.#",".######.",".######.","........",".######.","..####.."]},Kt=ur;var Ar={name:"bob-marley",pixels:["..####..",".######.","##....##","#.#..#.#","#......#","##.##.##","#.####.#","#..##..#"]},Wt=Ar;var yr={name:"bodybuilder",pixels:["...##...","...##...",".#....#.","#..##..#","##....##","##.##.##","........","...##..."]},Xt=yr;var xr={name:"car",pixels:["........","..####..","..#..#..","..#..#..","########","########","########",".##..##."]},Zt=xr;var _r={name:"carpathians",pixels:["........",".#......","......##",".....###","#...####","##.#####","###.####","####.###"]},Ft=_r;var gr={name:"cat",robot:!0,pixels:["##....##","##....##","########","##.##.##","########","#.####.#","########",".####.##"]},Ut=gr;var hr={name:"cat-body",pixels:["....##..","#.#..###","###....#","###..###","########","########","#.#..#.#","#.#..#.#"]},Ot=hr;var br={name:"cat-sits",pixels:["..#..#..","..####..","..####..",".####...","####..##","####.#.#","####...#",".######."]},Nt=br;var Tr={name:"celtic-cross",pixels:["...##...",".#.##.#.","...##...","########","########","...##...",".#.##.#.","...##..."]},Vt=Tr;var qr={name:"cherry",robot:!0,pixels:["......##","....###.","...##.#.","..#..#..",".##.##..","#.###.#.","#.###.#.",".###.#.."]},wt=qr;var zr={name:"cotton",pixels:["....##..","....##..",".##.....",".##..##.","...#.##.","....#...","...#....","...#...."]},jt=zr;var Mr={name:"crab",robot:!0,pixels:[".#....#.","##....##","##.##.##",".######.","########","##.##.##","##....##",".#....#."]},Dt=Mr;var Cr={name:"crown",robot:!0,pixels:["#......#","#..##..#","##.##.##","##.##.##","########","#.#.#.#.","########","########"]},te=Cr;var kr={name:"diamond",pixels:[".######.","##.#.#.#","#.#.#.#.","########","#.######",".#.####.","..#.##..","...##..."]},ee=kr;var Hr={name:"dog",robot:!0,pixels:["##....##","##.##.##","########","###..###","########","########","##.##.##",".######."]},re=Hr;var Ir={name:"elephant",pixels:["...###..",".#####..","####.#..","######..","######.#","##.##.#.","##.##...","##.##..."]},ae=Ir;var Rr={name:"fish",robot:!0,pixels:["......#.",".###.##.","#####.##","#.#####.","#.#####.","#####.##",".###.##.","......#."]},oe=Rr;var Pr={name:"fleur-de-lis",pixels:["...##...","...#....",".###.##.","#.##...#","...##...",".#.##.#.",".######.","...##..."]},pe=Pr;var Er={name:"flower",robot:!0,pixels:["..#..#..",".###.##.","########",".######.","..####..","...##...","..##.##.","...##..."]},se=Er;var Sr={name:"fox",robot:!0,pixels:["##....##","##....##","########","###..###","########","########",".######.","..####.."]},ne=Sr;var Qr={name:"frog",robot:!0,pixels:[".#....#.","###..###","########","########","########","########",".######.","..####.."]},ie=Qr;var Lr={name:"ghost",robot:!0,pixels:["..####..",".######.","##.##.##","##.##.##","########","########","########","#.##.##."]},me=Lr;var Br={name:"giraffe",pixels:["....#.#.","....####","....#...","....#...","....#...","....#...","#####...","##.##..."]},le=Br;var Yr={name:"glasses",pixels:["##..##..","#.#.##.#",".#######","........",".##..##.",".##..##.","#..##..#","########"]},fe=Yr;var Gr={name:"heart",pixels:["........","........",".##.##..","#..#..#.","#.....#.",".#...#..","..#.#...","...#...."]},de=Gr;var Jr={name:"horse",pixels:["....#.#.","....####","....####","....##..","######..","#.#.##..","#.#.##..","#.#.##.."]},$e=Jr;var Kr={name:"invader",robot:!0,pixels:["#......#",".#....#.","########","##.##.##","########","..####..",".##..##.","#.#..#.#"]},ce=Kr;var Wr={name:"kangaroo",pixels:["..#.#...","..###...",".####...","...##...","..#####.","...####.","...##.#.","..###..#"]},ve=Wr;var Xr={name:"key",robot:!0,pixels:[".####...","##..##..","##..##..","##..##..",".####...","..##....","..####..","..##.##."]},ue=Xr;var Zr={name:"lightning",robot:!0,pixels:["...#####","..####..",".####...",".#######","..######","...#####","..####..",".###...."]},Ae=Zr;var Fr={name:"mushroom",robot:!0,pixels:["..####..",".######.","########","########","########","..####..","..####..",".######."]},ye=Fr;var Ur={name:"octopus",robot:!0,pixels:["..####..",".######.","###..###","########","########","########",".######.","#.#.#.#."]},xe=Ur;var Or={name:"owl",robot:!0,pixels:["#......#","##....##",".######.",".#.##.#.",".#.##.#.",".######.",".######.","..#..#.."]},_e=Or;var Nr={name:"penguin",robot:!0,pixels:["..####..",".######.",".##..##.",".#.##.#.","##...##.","##...##.","#######.",".#....#."]},ge=Nr;var Vr={name:"planet",robot:!0,pixels:["...###..","..#####.","#.#####.",".#######","..#####.","..####..",".###....","........"]},he=Vr;var wr={name:"praying-mantis",pixels:["#.....#.",".#...#..",".##.##..","#..#..#.","#..#..#.",".#####..","..#.#...","...#...."]},be=wr;var jr={name:"rabbit",robot:!0,pixels:[".#....#.",".##..##.",".##..##.","..####..",".######.","###..###","#..##..#",".######."]},Te=jr;var Dr={name:"rat",pixels:["...#.#..","...#####","...#.#..","..###...",".####.#.","#####..#","####..#.",".#####.."]},qe=Dr;var ta={name:"robot",robot:!0,pixels:["...##...","...#....",".######.","#.####.#","#..##..#",".######.",".#####..",".######."]},ze=ta;var ea={name:"rocket",robot:!0,pixels:["...##...","..####..","..#..#..","..####..",".######.","##.##.##","..#..#..","...##..."]},Me=ea;var ra={name:"sea",pixels:["#.#.....",".#..#.#.",".....#..","...#....","........","########",".##..###","##.###.."]},Ce=ra;var aa={name:"skull",pixels:[".######.","#..#..##","#..#..##","########",".##.##..",".#####..",".#.#.#..","........"]},ke=aa;var oa={name:"snail",robot:!0,pixels:[".####..#","#....#.#","#.##.#.#","#.#..#.#","#....##.","#...#.#.","######.#",".######."]},He=oa;var pa={name:"snake",pixels:["...###..",".###..#.","#.#..#..","##..#..#","...#..#.","..#...##",".#.....#",".######."]},Ie=pa;var sa={name:"snakegame",pixels:["########","#......#","#.##...#","#.#..#.#","#.##...#","#..##..#","#......#","########"]},Re=sa;var na={name:"snowflake",pixels:["#..##..#",".##..##.",".#.##.#.","#.####.#","#.####.#",".#.##.#.",".##..##.","#..##..#"]},Pe=na;var ia={name:"star",robot:!0,pixels:["...##...","...##...","########",".######.",".######.",".##..##.","##....##","#......#"]},Ee=ia;var ma={name:"strawberry",pixels:["...#....","..#...#.","..#..#.#",".###..#.","#####...","#####...",".###....","..#....."]},Se=ma;var la={name:"svelte",pixels:["..#####.",".###..#.","##...#..","########","########","..#...##",".#..###.",".####..."]},Qe=la;var fa={name:"target",robot:!0,pixels:["..####..",".#....#.","#......#","#..##..#","#..##..#","#......#",".#....#.","..####.."]},Le=fa;var da={name:"tree",robot:!0,pixels:["...##...","..####..",".######.","..####..",".######.","########","...##...","...##..."]},Be=da;var $a={name:"ukraine",pixels:["...##...","#..##..#","##.##.##","#..##..#","##.##.##","#..##..#","########","...##..."]},Ye=$a;var ca={name:"vangogh-almond-blossoms",pixels:["....#.#.",".....#..","####....","#...#..#",".#...##.","..#....#",".#.#....","..#....."]},Ge=ca;var va={name:"wasp",pixels:[".....##.",".##.###.",".###....","..#.#...",".#.#.#..","##..##..","##......","........"]},Je=va;var ua={name:"whale",pixels:["#.#.#...",".#.#....","..#.....","..#.....",".####...","######.#","#.####.#","########"]},Ke=ua;var Aa={name:"wheat",pixels:["........","....#.#.","...#.#..","..#.#.#.","..##.#..","..###...",".#......","#......."]},We=Aa;var ya={name:"windmill",pixels:["........",".#...#..","..#.#...","...#....","..#.#...",".#.#.#..","..###...","..###..."]},Xe=ya;var xa={name:"yinyan",pixels:[".......#",".##...##",".##..###","....####","...#####","..###..#",".####..#","########"]},Ze=xa;var np=0,ip=1,mp=2,lp=8,fp=8;function Ct(e){let t=[];for(let r of e.pixels)for(let a of r)t.push(a==="#"?1:a==="+"?2:0);return t}var _a=[Bt,Yt,Gt,Jt,Kt,Wt,Xt,Zt,Ft,Ut,Ot,Nt,Vt,wt,jt,Dt,te,ee,re,ae,oe,pe,se,ne,ie,me,le,fe,de,$e,ce,ve,ue,Ae,ye,xe,_e,ge,he,be,Te,qe,ze,Me,Ce,ke,He,Ie,Re,Pe,Ee,Se,Qe,Le,Be,Ye,Ge,Je,Ke,We,Xe,Ze];function gs(e){return e?_a.find((t)=>t.name===e):void 0}var ga=_("<span></span>"),ha=_('<span class="invert svelte-1pre9qb" aria-hidden="true"></span> <span class="bloom svelte-1pre9qb" aria-hidden="true"></span>',1),ba=_('<span role="img"><!> <!></span>');function Ta(e,t){B(t,!0);let r=d(t,"scale",3,6),a=d(t,"interactive",3,!1),n=j(!1),l=j(!1),o=j("50%"),v=j("50%"),i=j(0),u=j(0),c;function $(H){let L=H.currentTarget.getBoundingClientRect(),Z=(H.clientX-L.left)/L.width,F=(H.clientY-L.top)/L.height;h(o,Z*100+"%"),h(v,F*100+"%"),h(u,(Z*360+F*140)%360),h(i,(F*300-Z*120+360)%360)}function A(H){if(!a())return;H.currentTarget.setPointerCapture?.(H.pointerId),$(H),clearTimeout(c),h(l,!1),h(n,!0)}function g(H){if(s(n))$(H)}function m(){if(!s(n))return;h(n,!1),h(l,!0),clearTimeout(c),c=setTimeout(()=>h(l,!1),250)}Ue(()=>()=>clearTimeout(c));let p=U(()=>Math.max(1,Math.round(r()))),y=U(()=>s(p)>=2?0.5:0),x=U(()=>t.art??null),b=U(()=>s(x)?Ct(s(x)):[]),k=U(()=>Array.from({length:100},(H,L)=>{let Z=Math.floor(L/10),F=L%10;return Z>=1&&Z<=8&&F>=1&&F<=8?s(b)[(Z-1)*8+(F-1)]??0:0}));var q=ba();let Q;var rt=C(q);ut(rt,17,()=>s(k),Oe,(H,L)=>{var Z=ga();let F;M(()=>F=O(Z,1,"px svelte-1pre9qb",null,F,{on:s(L)===1,gray:s(L)===2})),f(H,Z)});var nt=G(rt,2);{var fr=(H)=>{var L=ha();Fe(2),f(H,L)};I(nt,(H)=>{if(a())H(fr)})}z(q),M(()=>{Q=O(q,1,"avatar svelte-1pre9qb",null,Q,{interactive:a(),pressed:s(n),ghosting:s(l)}),kt(q,"aria-label",t.name),kt(q,"title",s(x)?.name),E(q,`width:${10*s(p)}px;height:${10*s(p)}px;--gap:${s(y)??""}px;--bx:${s(o)??""};--by:${s(v)??""};--spin:${s(i)??""}deg;--hue:${s(u)??""}deg`)}),at("pointerdown",q,A),at("pointermove",q,g),at("pointerup",q,m),ot("pointercancel",q,m),ot("lostpointercapture",q,m),f(e,q),Y()}vt(["pointerdown","pointermove","pointerup"]);var qa=new Set(["$$slots","$$events","$$legacy","variant","size","ghost","square","icon","iconSize","href","disabled","onclick","children"]),za=_("<a><!> <!></a>"),Ma=_("<button><!> <!></button>");function Ca(e,t){let r=d(t,"variant",3,"default"),a=d(t,"size",3,"md"),n=d(t,"ghost",3,!1),l=d(t,"square",3,!1),o=d(t,"disabled",3,!1),v=At(t,qa),i=U(()=>t.icon),u=U(()=>t.iconSize??(a()==="lg"?18:a()==="sm"?13:15));var c=S(),$=R(c);{var A=(m)=>{var p=za();lt(p,()=>({class:`btn ${r()??""} ${a()??""}`,href:o()?void 0:t.href,"aria-disabled":o()||void 0,tabindex:o()?-1:void 0,...v,[Ht]:{ghost:n(),square:l()}}),void 0,void 0,void 0,"svelte-1klcfz0");var y=C(p);{var x=(k)=>{var q=S(),Q=R(q);N(Q,()=>s(i),(rt,nt)=>{nt(rt,{get size(){return s(u)}})}),f(k,q)};I(y,(k)=>{if(s(i))k(x)})}var b=G(y,2);mt(b,()=>t.children??it),z(p),f(m,p)},g=(m)=>{var p=Ma();lt(p,()=>({class:`btn ${r()??""} ${a()??""}`,onclick:t.onclick,disabled:o(),...v,[Ht]:{ghost:n(),square:l()}}),void 0,void 0,void 0,"svelte-1klcfz0");var y=C(p);{var x=(k)=>{var q=S(),Q=R(q);N(Q,()=>s(i),(rt,nt)=>{nt(rt,{get size(){return s(u)}})}),f(k,q)};I(y,(k)=>{if(s(i))k(x)})}var b=G(y,2);mt(b,()=>t.children??it),z(p),f(m,p)};I($,(m)=>{if(t.href)m(A);else m(g,-1)})}f(e,c)}Ne();function Rt(e,t,r,a){var n,l,o=!1,v=r.length>=2,i=(m,p,y)=>{if(n=p,v)l=m;if(!o){let x=t(m,p,y);if(t.length<2)p(x);else return x}o=!1},u=It(e,i,a),c=!Array.isArray(e);function $(m){var p=r(m,l);if(c)o=!0,e.set(p);else p.forEach((y,x)=>{o=!0,e[x].set(y)});o=!1}var A=!1;function g(m){var p,y,x,b;if(A){b=m(D(u)),n(b);return}var k=u.subscribe((q)=>{if(!A)x=q;else if(!p)p=!0;else y=!0});if(b=m(x),A=!0,n(b),k(),A=!1,y)b=D(u);if(p)$(b)}return{subscribe:u.subscribe,set(m){g(()=>m)},update:g}}var ka=20,tt=ft([]),Pt=ft(null),yt=new Map,Ve=(e)=>{if(yt.has(e))return;let t=setTimeout(()=>{yt.delete(e),St(e)},1000);yt.set(e,t)},Ha=(e)=>{let t=yt.get(e);if(t)clearTimeout(t)};function Et(e){if(e.id)Ha(e.id);tt.update((t)=>t.map((r)=>r.id===e.id?{...r,...e}:r))}function Ia(e){tt.update((t)=>[e,...t].slice(0,ka))}function we(e){if(D(tt).find((t)=>t.id===e.id))Et(e);else Ia(e)}function je(e){tt.update((t)=>{if(e)Ve(e);else t.forEach((r)=>{Ve(r.id)});return t.map((r)=>r.id===e||e===void 0?{...r,visible:!1}:r)})}function St(e){tt.update((t)=>{if(e===void 0)return[];return t.filter((r)=>r.id!==e)})}function De(e){Pt.set(e)}function tr(e){let t;Pt.update((r)=>{return t=e-(r||0),null}),tt.update((r)=>r.map((a)=>({...a,pauseDuration:a.pauseDuration+t})))}var Ra={blank:4000,error:4000,success:2000,loading:1/0,custom:4000};function Qt(e={}){return{toasts:Rt(tt,(r)=>r.map((a)=>({...e,...e[a.type],...a,duration:a.duration||e[a.type]?.duration||e?.duration||Ra[a.type],style:[e.style,e[a.type]?.style,a.style].join(";")})),(r)=>r),pausedAt:Pt}}var Pa=(e)=>typeof e==="function",xt=(e,t)=>Pa(e)?e(t):e;var er=(()=>{let e=0;return()=>{return e+=1,e.toString()}})(),dt=(()=>{let e;return()=>{if(e===void 0&&typeof window<"u"){let t=matchMedia("(prefers-reduced-motion: reduce)");e=!t||t.matches}return e}})();var Ea=(e,t="blank",r)=>({createdAt:Date.now(),visible:!0,type:t,ariaProps:{role:"status","aria-live":"polite"},message:e,pauseDuration:0,...r,id:r?.id||er()}),$t=(e)=>(t,r)=>{let a=Ea(t,e,r);return we(a),a.id},K=(e,t)=>$t("blank")(e,t);K.error=$t("error");K.success=$t("success");K.loading=$t("loading");K.custom=$t("custom");K.dismiss=(e)=>{je(e)};K.remove=(e)=>St(e);K.promise=(e,t,r)=>{let a=K.loading(t.loading,{...r,...r?.loading});return e.then((n)=>{return K.success(xt(t.success,n),{id:a,...r,...r?.success}),n}).catch((n)=>{K.error(xt(t.error,n),{id:a,...r,...r?.error})}),e};var ct=K;function Sa(e,t,r){let{reverseOrder:a,gutter:n=8,defaultPosition:l}=r||{},o=t.filter((c)=>(c.position||l)===(e.position||l)&&c.height),v=o.findIndex((c)=>c.id===e.id),i=o.filter((c,$)=>$<v&&c.visible).length;return o.filter((c)=>c.visible).slice(...a?[i+1]:[0,i]).reduce((c,$)=>c+($.height||0)+n,0)}var Qa={startPause(){De(Date.now())},endPause(){tr(Date.now())},updateHeight:(e,t)=>{Et({id:e,height:t})},calculateOffset:Sa};function _t(e){let{toasts:t,pausedAt:r}=Qt(e),a=new Map,n,l=[r.subscribe((o)=>{if(o){for(let[,v]of a)clearTimeout(v);a.clear()}n=o}),t.subscribe((o)=>{if(n)return;let v=Date.now();for(let i of o){if(a.has(i.id))continue;if(i.duration===1/0)continue;let u=(i.duration||0)+i.pauseDuration-(v-i.createdAt);if(u<0){if(i.visible)ct.dismiss(i.id);return null}a.set(i.id,setTimeout(()=>ct.dismiss(i.id),u))}})];return rr(()=>{for(let o of l)o()}),{toasts:t,handlers:Qa}}var La=_('<div class="svelte-1did3zw"></div>');function gt(e,t){let r=d(t,"primary",8,"#61d345"),a=d(t,"secondary",8,"#fff");var n=La();let l;M(()=>l=E(n,"",l,{"--primary":r(),"--secondary":a()})),f(e,n)}var Ba=_('<div class="svelte-1ro2ggf"></div>');function ht(e,t){let r=d(t,"primary",8,"#ff4b4b"),a=d(t,"secondary",8,"#fff");var n=Ba();let l;M(()=>l=E(n,"",l,{"--primary":r(),"--secondary":a()})),f(e,n)}var Ya=_('<div class="svelte-tyythq"></div>');function bt(e,t){let r=d(t,"primary",8,"#616161"),a=d(t,"secondary",8,"#e0e0e0");var n=Ya();let l;M(()=>l=E(n,"",l,{"--primary":r(),"--secondary":a()})),f(e,n)}var Ga=_('<div class="animated svelte-t33qv2"> </div>'),Ja=_('<div class="status svelte-t33qv2"><!></div>'),Ka=_('<div class="indicator svelte-t33qv2"><!> <!></div>');function st(e,t){B(t,!1);let r=P(),a=P(),n=P(),l=d(t,"toast",8);W(()=>(s(r),s(a),s(n),T(l())),()=>{(($)=>{h(r,$.type),h(a,$.icon),h(n,$.iconTheme)})(l())}),V();var o=S(),v=R(o);{var i=($)=>{var A=Ga(),g=C(A,!0);z(A),M(()=>Tt(g,s(a))),f($,A)},u=($)=>{var A=S(),g=R(A);N(g,()=>s(a),(m,p)=>{p(m,{})}),f($,A)},c=($)=>{var A=Ka(),g=C(A);bt(g,pt(()=>s(n)));var m=G(g,2);{var p=(y)=>{var x=Ja(),b=C(x);{var k=(Q)=>{ht(Q,pt(()=>s(n)))},q=(Q)=>{gt(Q,pt(()=>s(n)))};I(b,(Q)=>{if(s(r)==="error")Q(k);else Q(q,-1)})}z(x),f(y,x)};I(m,(y)=>{if(s(r)!=="loading")y(p)})}z(A),f($,A)};I(v,($)=>{if(typeof s(a)==="string")$(i);else if(typeof s(a)<"u")$(u,1);else if(s(r)!=="blank")$(c,2)})}f(e,o),Y()}var Wa=_("<div><!></div>");function et(e,t){B(t,!1);let r=d(t,"toast",8);w();var a=Wa();lt(a,()=>({class:"message",...r().ariaProps}),void 0,void 0,void 0,"svelte-1gudbf6");var n=C(a);{var l=(v)=>{var i=ar();M(()=>Tt(i,(T(r()),X(()=>r().message)))),f(v,i)},o=(v)=>{var i=S(),u=R(i);N(u,()=>r().message,(c,$)=>{$(c,{get toast(){return r()}})}),f(v,i)};I(n,(v)=>{if(T(r()),X(()=>typeof r().message==="string"))v(l);else v(o,-1)})}z(a),f(e,a),Y()}var Xa=_("<!> <!>",1),Za=_("<div><!></div>");function zt(e,t){B(t,!1);let r=d(t,"toast",8),a=d(t,"position",24,()=>{return}),n=d(t,"style",8,""),l=d(t,"Component",24,()=>{return}),o=P(),v=P();W(()=>(T(r()),T(a()),dt),()=>{let g=(r().position||a()||"top-center").includes("top");h(o,g?1:-1);let[m,p]=dt()?["fadeIn","fadeOut"]:["enter","exit"];h(v,r().visible?m:p)}),V(),w();var i=Za();let u;var c=C(i);{var $=(g)=>{var m=S(),p=R(m);N(p,l,(y,x)=>{x(y,{$$slots:{icon:(b,k)=>{st(b,{get toast(){return r()},slot:"icon"})},message:(b,k)=>{et(b,{get toast(){return r()},slot:"message"})}}})}),f(g,m)},A=(g)=>{var m=S(),p=R(m);qt(p,t,"default",{get ToastIcon(){return st},get ToastMessage(){return et},get toast(){return r()}},(y)=>{var x=Xa(),b=R(x);st(b,{get toast(){return r()}});var k=G(b,2);et(k,{get toast(){return r()}}),f(y,x)}),f(g,m)};I(c,(g)=>{if(l())g($);else g(A,-1)})}z(i),M(()=>{O(i,1,`base ${(T(r()),s(v),X(()=>r().height?s(v):"transparent"))??""} ${(T(r()),X(()=>r().className||""))??""}`,"svelte-yae3e8"),u=E(i,`${n()??""}; ${(T(r()),X(()=>r().style))??""}`,u,{"--factor":s(o)})}),f(e,i),Y()}var Fa=_("<div><!></div>");function Lt(e,t){B(t,!1);let r=P(),a=P(),n=P(),l=P(),o=d(t,"toast",8),v=d(t,"setHeight",8),i=P();pr(()=>{v()(s(i).getBoundingClientRect().height)}),W(()=>T(o()),()=>{h(r,o().position?.includes("top")?0:null)}),W(()=>T(o()),()=>{h(a,o().position?.includes("bottom")?0:null)}),W(()=>T(o()),()=>{h(n,o().position?.includes("top")?1:-1)}),W(()=>T(o()),()=>{h(l,o().position?.includes("center")&&"center"||(o().position?.includes("right")||o().position?.includes("end"))&&"flex-end"||null)}),V(),w();var u=Fa();let c,$;var A=C(u);{var g=(p)=>{et(p,{get toast(){return o()}})},m=(p)=>{var y=S(),x=R(y);qt(x,t,"default",{get toast(){return o()}},(b)=>{zt(b,{get toast(){return o()},get position(){return T(o()),X(()=>o().position)}})}),f(p,y)};I(A,(p)=>{if(T(o()),X(()=>o().type==="custom"))p(g);else p(m,-1)})}z(u),or(u,(p)=>h(i,p),()=>s(i)),M((p)=>{c=O(u,1,"wrapper svelte-1pz3gqy",null,c,p),$=E(u,"",$,{"--factor":s(n),"--offset":(T(o()),X(()=>o().offset)),top:s(r),bottom:s(a),"justify-content":s(l)})},[()=>({active:o().visible,transition:!dt()})]),f(e,u),Y()}var Ua=_('<div role="alert"></div>');function ir(e,t){B(t,!1);let r=()=>sr($,"$toasts",a),[a,n]=nr(),l=d(t,"reverseOrder",8,!1),o=d(t,"position",8,"top-center"),v=d(t,"toastOptions",24,()=>{return}),i=d(t,"gutter",8,8),u=d(t,"containerStyle",24,()=>{return}),c=d(t,"containerClassName",24,()=>{return}),{toasts:$,handlers:A}=_t(v()),g=P();W(()=>(r(),T(o()),T(l()),T(i())),()=>{h(g,r().map((p)=>({...p,position:p.position||o(),offset:A.calculateOffset(p,r(),{reverseOrder:l(),gutter:i(),defaultPosition:o()})})))}),V(),w();var m=Ua();ut(m,5,()=>s(g),(p)=>p.id,(p,y)=>{Lt(p,{get toast(){return s(y)},setHeight:(x)=>A.updateHeight(s(y).id,x)})}),z(m),M(()=>{O(m,1,`toaster ${(c()||"")??""}`,"svelte-haq5xk"),E(m,u())}),ot("mouseenter",m,function(...p){A.startPause?.apply(this,p)}),ot("mouseleave",m,function(...p){A.endPause?.apply(this,p)}),f(e,m),Y(),n()}var ei=ct;var Oa=new Set(["$$slots","$$events","$$legacy"]);function Mt(e,t){let r=At(t,Oa),a=[["path",{d:"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"}],["path",{d:"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"}]];mr(e,pt({name:"house"},()=>r,{get iconNode(){return a}}))}var Na=_('<header class="bar svelte-fcv4i8"><a class="home svelte-fcv4i8" href="/" title="All instances" aria-label="All instances"><!></a> <!></header>');function Va(e,t){var r=Na(),a=C(r),n=C(a);Mt(n,{size:18}),z(a);var l=G(a,2);mt(l,()=>t.children??it),z(r),at("click",a,function(...o){lr?.apply(this,o)}),f(e,r)}vt(["click"]);
2
- export{np as s,ip as t,mp as u,lp as v,fp as w,Ct as x,_a as y,gs as z,Ta as A,Ca as B,ir as C,ei as D,Va as E};
@@ -1,2 +0,0 @@
1
- import{Ca as B,Da as R,M as u,Na as q,ga as S,ma as _,ya as r}from"/_mochi/client/chunk-bn731rda.js";async function P(h,i,$="Request failed"){let t=await fetch(h,{...i,headers:{...i?.headers,["X-Codebay-Request"]:"1"}});if(!t.ok){let n=await t.json().catch(()=>null);throw Error(n?.error?.message??$)}return await t.json().catch(()=>({}))}function z(h,i,$){return p("POST",h,i,$)}function A(h,i,$){return p("DELETE",h,i,$)}function p(h,i,$,t){return P(i,$===void 0?{method:h}:{method:h,headers:{"Content-Type":"application/json"},body:JSON.stringify($)},t)}function D(h){return`http://${typeof window>"u"?"localhost":window.location.hostname}:${h}`}var U=r("<span> </span>");function j(h,i){let $={creating:"Booting…",running:"Running",stopped:"Stopped",error:"Error"};var t=U(),n=S(t,!0);u(t),_(()=>{q(t,1,`status ${i.status??""}`,"svelte-1hqr9xd"),R(n,$[i.status])}),B(h,t)}function v(h,i,$){let t=null,n=null,x=!1,o=()=>{let w=location.protocol==="https:"?"wss:":"ws:";t=new WebSocket(`${w}//${location.host}${h}`),t.onopen=()=>$?.(),t.onmessage=(H)=>i(H.data),t.onclose=()=>{if(!x)n=setTimeout(o,1000)},t.onerror=()=>t?.close()};return o(),()=>{if(x=!0,n)clearTimeout(n);t?.close()}}function L(h,i){return v("/api/stream",($)=>{let t;try{t=JSON.parse($)}catch{return}h(t)},i)}
2
- export{P as a,z as b,A as c,D as d,j as e,v as f,L as g};
@@ -1,52 +0,0 @@
1
- // @bun
2
- // src/api.ts
3
- var APP_REQUEST_HEADER = "X-Codebay-Request";
4
- async function apiFetch(url, init, fallbackMessage = "Request failed") {
5
- const res = await fetch(url, {
6
- ...init,
7
- headers: {
8
- ...init?.headers,
9
- [APP_REQUEST_HEADER]: "1"
10
- }
11
- });
12
- if (!res.ok) {
13
- const data = await res.json().catch(() => null);
14
- throw new Error(data?.error?.message ?? fallbackMessage);
15
- }
16
- return await res.json().catch(() => ({}));
17
- }
18
- function apiPost(url, body, fallbackMessage) {
19
- return apiJson("POST", url, body, fallbackMessage);
20
- }
21
- function apiDelete(url, body, fallbackMessage) {
22
- return apiJson("DELETE", url, body, fallbackMessage);
23
- }
24
- function apiJson(method, url, body, fallbackMessage) {
25
- return apiFetch(url, body === undefined ? { method } : {
26
- method,
27
- headers: { "Content-Type": "application/json" },
28
- body: JSON.stringify(body)
29
- }, fallbackMessage);
30
- }
31
-
32
- // src/lib/links.ts
33
- function forwardedPortUrl(hostPort) {
34
- const host = typeof window === "undefined" ? "localhost" : window.location.hostname;
35
- return `http://${host}:${hostPort}`;
36
- }
37
-
38
- // src/components/StatusBadge.svelte
39
- import"svelte/internal/flags/async";
40
- import * as $ from "svelte/internal/server";
41
- function StatusBadge($$renderer, $$props) {
42
- let { status } = $$props;
43
- const label = {
44
- creating: "Booting\u2026",
45
- running: "Running",
46
- stopped: "Stopped",
47
- error: "Error"
48
- };
49
- $$renderer.push(`<span${$.attr_class(`status ${$.stringify(status)}`, "svelte-1hqr9xd")}>${$.escape(label[status])}</span>`);
50
- }
51
-
52
- export { apiFetch, apiPost, apiDelete, forwardedPortUrl, StatusBadge };
@@ -1,15 +0,0 @@
1
- // @bun
2
- // src/types.ts
3
- var CLAUDE_PERMISSION_MODES = [
4
- "default",
5
- "manual",
6
- "auto",
7
- "plan"
8
- ];
9
- var CLAUDE_EFFORT_LEVELS = ["low", "medium", "high", "xhigh", "max"];
10
- function ideUrl(instance) {
11
- const base = `/p/${instance.id}/`;
12
- return instance.remote_workspace_folder ? `${base}?folder=${encodeURIComponent(instance.remote_workspace_folder)}` : base;
13
- }
14
-
15
- export { CLAUDE_PERMISSION_MODES, CLAUDE_EFFORT_LEVELS, ideUrl };
@@ -1 +0,0 @@
1
- .editor.svelte-qu6vp4{display:flex;background:var(--bg-card);border:1px solid var(--rule);overflow:hidden;flex-direction:column;width:100%}.head.svelte-qu6vp4{display:flex;border-bottom:1px solid var(--ink);background:var(--ink);justify-content:space-between;align-items: center;gap:12px;padding:14px 18px}.head.svelte-qu6vp4 h2:where(.svelte-qu6vp4){font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--bg);margin:0;font-size:17px;font-weight:700}.head-cancel.svelte-qu6vp4{display:inline-flex;border:1px solid var(--bg);color:var(--bg);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;background:0 0;flex:none;align-items: center;gap:6px;padding:5px 10px;font-size:11px}.head-cancel.svelte-qu6vp4:hover{background:var(--bg);color:var(--ink)}.head-cancel.svelte-qu6vp4:focus-visible{outline:none;box-shadow:0 0 0 2px var(--rule-soft)}.body.svelte-qu6vp4{display:flex;flex-wrap:wrap;gap:18px;padding:18px}.grid-frame.svelte-qu6vp4{display:grid;grid-template-columns:repeat(10,40px);grid-template-rows:repeat(10,40px);border:1px solid var(--ink);background:var(--bg);flex:none;width:400px;height:400px}.ring-cell.svelte-qu6vp4{box-sizing:border-box;background-clip:content-box;background-color:var(--rule-soft);opacity:.4;padding:0 1px 1px 0}.grid.svelte-qu6vp4{display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);grid-column:2/10;grid-row:2/10;cursor:crosshair;touch-action:none}.cell.svelte-qu6vp4{box-sizing:border-box;background-clip:content-box;background-color:var(--rule-soft);padding:0 1px 1px 0}.cell.gray.svelte-qu6vp4{background-color:var(--led-gray)}.cell.on.svelte-qu6vp4{background-color:var(--ink)}.side.svelte-qu6vp4{display:flex;flex-direction:column;flex:1;gap:16px;min-width:160px}.preview-label.svelte-qu6vp4{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);font-size:11px;font-family:var(--font-mono)}.preview-row.svelte-qu6vp4{display:flex;align-items: flex-end;gap:10px;margin-top:6px}.name-field.svelte-qu6vp4{display:flex;flex-direction:column;gap:6px}.name-field.svelte-qu6vp4 input:where(.svelte-qu6vp4){font-family:var(--font-mono);border:1px solid var(--ink);background:var(--bg);color:var(--ink);padding:8px 12px;font-size:13px}.name-field.svelte-qu6vp4 input:where(.svelte-qu6vp4)::placeholder{color:var(--ink-faint)}.name-field.svelte-qu6vp4 input[readonly]:where(.svelte-qu6vp4){color:var(--ink-soft);cursor:default}.name-field.svelte-qu6vp4 input:where(.svelte-qu6vp4):focus{outline:none;box-shadow:inset 3px 3px 0 var(--rule-soft)}.mode-field.svelte-qu6vp4{display:flex;flex-direction:column;gap:6px}.modes.svelte-qu6vp4{display:flex;border:1px solid var(--ink)}.mode.svelte-qu6vp4{border:none;border-right:1px solid var(--ink);background:var(--bg);color:var(--ink);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;flex:1;padding:7px 6px;font-size:11px}.mode.svelte-qu6vp4:last-child{border-right:none}.mode.active.svelte-qu6vp4{background:var(--ink);color:var(--bg)}.mode.svelte-qu6vp4:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--rule-soft)}.tools.svelte-qu6vp4{display:flex;gap:8px}.foot.svelte-qu6vp4{display:flex;border-top:1px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items: center;gap:12px;padding:14px 18px}.hint.svelte-qu6vp4{font-family:var(--font-mono);color:var(--ink-faint);flex:1;min-width:180px;font-size:12px}.actions.svelte-qu6vp4{display:flex;gap:8px}.actions.svelte-qu6vp4 .btn{white-space:nowrap}
@@ -1 +0,0 @@
1
- .btn.svelte-1klcfz0{display:inline-flex;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--ink);background:var(--bg-card);color:var(--ink);cursor:pointer;text-decoration:none;justify-content:center;align-items: center;gap:7px;font-weight:600}.btn.svelte-1klcfz0:disabled{opacity:.4;cursor:not-allowed}.btn[aria-disabled=true].svelte-1klcfz0{opacity:.4;cursor:not-allowed;pointer-events:none}.btn.sm.svelte-1klcfz0{padding:7px 12px;font-size:12px}.btn.md.svelte-1klcfz0{padding:9px 16px;font-size:13px}.btn.lg.svelte-1klcfz0{padding:12px 22px;font-size:15px}.btn.square.svelte-1klcfz0{padding:0}.btn.square.sm.svelte-1klcfz0{width:30px;height:30px}.btn.square.md.svelte-1klcfz0{width:35px;height:35px}.btn.square.lg.svelte-1klcfz0{width:44px;height:44px}.btn.default.svelte-1klcfz0:hover:not(:disabled){background:var(--ink);color:var(--bg)}.btn.primary.svelte-1klcfz0{background:var(--ink);color:var(--bg);font-weight:700}.btn.primary.svelte-1klcfz0:hover:not(:disabled){background:var(--bg-card);color:var(--ink)}.btn.ghost.svelte-1klcfz0{background:0 0;border-style:dashed}.btn.ghost.svelte-1klcfz0:hover:not(:disabled){background:var(--ink);color:var(--bg);border-style:solid}.btn.danger.svelte-1klcfz0{color:var(--danger);border-color:var(--danger)}.btn.danger.svelte-1klcfz0:hover:not(:disabled){color:var(--danger);background-color:var(--danger-soft);background-image:linear-gradient(90deg,var(--danger)50%,transparent 0),linear-gradient(90deg,var(--danger)50%,transparent 0),linear-gradient(0deg,var(--danger)50%,transparent 0),linear-gradient(0deg,var(--danger)50%,transparent 0);animation:svelte-1klcfz0-marching-ants 2s linear infinite;background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;background-size:14px 2px,14px 2px,2px 14px,2px 14px;border-color:#0000}@keyframes svelte-1klcfz0-marching-ants{to{background-position:28px 0,-28px 100%,0 -28px,100% 28px}}
@@ -1 +0,0 @@
1
- .coin-row.svelte-1ioj7vz{display:flex;align-items: center;gap:16px;width:100%;max-width:560px;padding:8px 0}.pixel-line.svelte-1ioj7vz{background:repeating-linear-gradient(90deg,var(--rule)0 2px,transparent 2px 6px);flex:1;height:2px}.coin-btn.svelte-1ioj7vz{display:flex;cursor:pointer;text-decoration:none;background:0 0;border:none;flex-direction:column;flex:none;align-items: center;gap:4px;padding:4px}.new.svelte-1ioj7vz{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--ink-soft);animation:svelte-1ioj7vz-coin-blink 2.6s steps(1,end)infinite;font-size:8px;font-weight:700}.coin.svelte-1ioj7vz{display:block;box-shadow:2px 2px 0 var(--ink);animation:svelte-1ioj7vz-coin-spin 2.6s ease-in-out infinite}.coin-btn.svelte-1ioj7vz:hover .coin:where(.svelte-1ioj7vz){animation:none;box-shadow:1px 1px 0 var(--ink);transform:translate(1px,1px)}.coin-btn.svelte-1ioj7vz:focus-visible{outline:2px solid var(--ink);outline-offset:2px}@keyframes svelte-1ioj7vz-coin-spin{0%,55%{transform:scaleX(1)}66%{transform:scaleX(.12)}78%{transform:scaleX(-1)}89%{transform:scaleX(.12)}to{transform:scaleX(1)}}@keyframes svelte-1ioj7vz-coin-blink{0%,55%,to{opacity:1}66%,89%{opacity:.25}}@media (prefers-reduced-motion:reduce){.coin.svelte-1ioj7vz,.new.svelte-1ioj7vz{animation:none}}
@@ -1 +0,0 @@
1
- .cred-menu.svelte-vongf9{position:relative;display:inline-flex}.cred.svelte-vongf9{display:inline-flex;border:1px solid var(--ink);background:var(--ink);color:var(--bg);cursor:pointer;justify-content:center;align-items: center;width:32px;height:32px;font-size:14px;line-height:1}.cred.svelte-vongf9:hover{background:var(--bg);color:var(--ink)}.cred.ok.svelte-vongf9{background:var(--ok-bg);border-color:var(--ok-line);color:var(--ok-ink)}.cred.ok.svelte-vongf9:hover{background:var(--ok-ink);border-color:var(--ok-ink);color:var(--ok-bg)}.cred.warn.svelte-vongf9{background:var(--warn-bg);border-color:var(--warn-line);color:var(--warn-ink)}.cred.warn.svelte-vongf9:hover{background:var(--warn-ink);border-color:var(--warn-ink);color:var(--warn-bg)}.cred.error.svelte-vongf9{background:var(--bg);color:var(--ink)}.cred-dropdown.svelte-vongf9{position:absolute;z-index:20;background:var(--bg-card);min-width:220px;padding:6px;top:calc(100% + 6px);right:0}.cred-row.svelte-vongf9{display:flex;color:var(--ink);text-align:left;font-family:var(--font-mono);cursor:pointer;background:0 0;border:0;align-items: center;gap:9px;width:100%;padding:7px 9px;font-size:12px}.cred-row.svelte-vongf9:hover{background:var(--ink);color:var(--bg)}.cred-row.svelte-vongf9:hover .cred-state:where(.svelte-vongf9){color:var(--bg)}.dot.svelte-vongf9{border:1px solid;flex:none;width:9px;height:9px}.dot.on.svelte-vongf9{background:currentColor}.dot.off.svelte-vongf9{background:0 0}.cred-state.svelte-vongf9{color:var(--ink-soft);margin-left:auto}
@@ -1 +0,0 @@
1
- .stage.svelte-146pixd{max-width:1080px;margin:0 auto;padding:28px 24px 80px}.banner.svelte-146pixd{display:flex;font-family:var(--font-mono);flex-wrap:wrap;gap:8px;margin-bottom:20px;padding:12px 16px;font-size:13px}.banner.error.svelte-146pixd{background:var(--bg-card);color:var(--ink);border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink)}.empty.svelte-146pixd{text-align:center;padding:80px 20px}.empty-title.svelte-146pixd{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px;font-size:26px;font-weight:700}.empty-sub.svelte-146pixd{color:var(--ink-soft);margin:0 0 22px}.grid.svelte-146pixd{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px;margin:0;padding:0}
@@ -1 +0,0 @@
1
- .overlay.svelte-oq97c4{position:fixed;background:color-mix(in srgb,var(--ink)50%,transparent);display:grid;z-index:50;place-items: center;padding:24px;inset:0}.modal.svelte-oq97c4{display:flex;background:var(--bg-card);overflow:hidden;box-shadow:8px 8px 0 var(--ink);flex-direction:column;width:min(620px,100%);max-height:80vh}.head.svelte-oq97c4{display:flex;border-bottom:1px solid var(--ink);background:var(--ink);justify-content:space-between;align-items: center;padding:14px 18px}.head.svelte-oq97c4 h2:where(.svelte-oq97c4){font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--bg);margin:0;font-size:17px;font-weight:700}.x.svelte-oq97c4{display:inline-flex;cursor:pointer;color:var(--bg);background:0 0;border:none;align-items: center}.x.svelte-oq97c4:hover{opacity:.7}.mode.svelte-oq97c4{display:flex;border-bottom:1px solid var(--rule-soft);align-items: center;gap:12px;padding:12px 18px}.mode-label.svelte-oq97c4{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);font-size:11px}.mode-toggle.svelte-oq97c4{display:flex;border:1px solid var(--ink)}.mode-btn.svelte-oq97c4{display:inline-flex;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;background:var(--bg);color:var(--ink);cursor:pointer;border:none;align-items: center;gap:6px;padding:7px 14px;font-size:12px;font-weight:700}.mode-btn.svelte-oq97c4+.mode-btn:where(.svelte-oq97c4){border-left:1px solid var(--ink)}.mode-btn.active.svelte-oq97c4{background:var(--ink);color:var(--bg)}.clone.svelte-oq97c4{border-bottom:1px solid var(--rule-soft);padding:12px 18px}.clone-label.svelte-oq97c4{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);padding-bottom:6px;font-size:11px}.clone-row.svelte-oq97c4{display:flex;gap:8px}.clone-url.svelte-oq97c4,.clone-branch.svelte-oq97c4{font-family:var(--font-mono);border:1px solid var(--ink);background:var(--bg);color:var(--ink);padding:8px 12px;font-size:13px}.clone-url.svelte-oq97c4{flex:1;min-width:0}.clone-branch.svelte-oq97c4{flex:none;width:140px}.clone-url.svelte-oq97c4::placeholder,.clone-branch.svelte-oq97c4::placeholder{color:var(--ink-faint)}.clone-url.svelte-oq97c4:focus,.clone-branch.svelte-oq97c4:focus{outline:none;box-shadow:inset 3px 3px 0 var(--rule-soft)}.clone-btn.svelte-oq97c4{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--ink);background:var(--ink);color:var(--bg);cursor:pointer;white-space:nowrap;padding:8px 14px;font-size:12px;font-weight:700}.clone-btn.svelte-oq97c4:hover:not(:disabled){background:var(--bg-card);color:var(--ink)}.clone-btn.svelte-oq97c4:disabled{opacity:.4;cursor:not-allowed}.crumbs.svelte-oq97c4{border-bottom:1px solid var(--rule-soft);overflow-x:auto;overflow-y:hidden;flex-shrink:0;min-height:18px;padding:10px 18px}.crumbs.svelte-oq97c4 code:where(.svelte-oq97c4){font-family:var(--font-mono);color:var(--ink-soft);white-space:nowrap;font-size:12px}.recent.svelte-oq97c4{border-bottom:1px solid var(--rule-soft);overflow:auto;flex-shrink:0;max-height:40vh;padding:8px}.recent-label.svelte-oq97c4{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);padding:2px 10px 6px;font-size:11px}.recent-row.svelte-oq97c4{position:relative;display:flex;align-items: center}.recent-pick.svelte-oq97c4{display:flex;cursor:pointer;font:inherit;text-align:left;color:var(--ink);background:0 0;border:none;border-radius:8px;flex:1;align-items: center;gap:10px;min-width:0;padding:8px 10px}.recent-pick.svelte-oq97c4:hover{background:var(--ink);color:var(--bg)}.recent-pick.svelte-oq97c4:hover .recent-path:where(.svelte-oq97c4){color:var(--bg)}.recent-text.svelte-oq97c4{display:flex;flex-direction:column;min-width:0}.recent-name.svelte-oq97c4{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-path.svelte-oq97c4{font-family:var(--font-mono);color:var(--ink-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.recent-x.svelte-oq97c4{position:absolute;display:inline-flex;background:var(--bg-card);color:var(--ink-soft);cursor:pointer;opacity:0;border:none;border-radius:6px;align-items: center;padding:5px 7px;line-height:1;top:50%;right:8px;transform:translateY(-50%)}.recent-row.svelte-oq97c4:hover .recent-x:where(.svelte-oq97c4){opacity:1}.recent-x.svelte-oq97c4:hover{color:var(--bg);background:var(--ink)}.recent-toggle.svelte-oq97c4{cursor:pointer;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--ink);background:0 0;border:none;margin:4px 6px 2px;padding:4px 6px;font-size:12px}.recent-toggle.svelte-oq97c4:hover{text-decoration:underline}.search.svelte-oq97c4{border-bottom:1px solid var(--rule-soft);padding:10px 18px}.search.svelte-oq97c4 input:where(.svelte-oq97c4){font-family:var(--font-mono);border:1px solid var(--ink);background:var(--bg);color:var(--ink);width:100%;padding:8px 12px;font-size:13px}.search.svelte-oq97c4 input:where(.svelte-oq97c4)::placeholder{color:var(--ink-faint)}.search.svelte-oq97c4 input:where(.svelte-oq97c4):focus{outline:none;box-shadow:inset 3px 3px 0 var(--rule-soft)}.list.svelte-oq97c4{overflow:auto;flex:1;padding:8px}.row.svelte-oq97c4{display:flex;border:1px solid #0000;border-radius:8px;align-items: center;gap:6px;padding:2px 4px}.row.first-match.svelte-oq97c4{border-color:var(--rule-soft)}.row.svelte-oq97c4 .nav:where(.svelte-oq97c4){display:flex;cursor:pointer;font:inherit;text-align:left;color:var(--ink);background:0 0;border:none;border-radius:8px;flex:1;align-items: center;gap:10px;padding:9px 10px}.row.svelte-oq97c4 .nav:where(.svelte-oq97c4):hover{background:var(--ink);color:var(--bg)}.row.svelte-oq97c4 .nav:where(.svelte-oq97c4):hover .icon:where(.svelte-oq97c4){color:var(--bg)}.ename.svelte-oq97c4{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge.svelte-oq97c4{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink);border:1px solid var(--ink);background:0 0;padding:2px 5px;font-size:9px;font-weight:600}.row.svelte-oq97c4 .nav:where(.svelte-oq97c4):hover .badge:where(.svelte-oq97c4){color:var(--bg);border-color:var(--bg)}.pick-inline.svelte-oq97c4{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;border:1px solid var(--ink);background:var(--bg-card);cursor:pointer;color:var(--ink);padding:6px 10px;font-size:11px;font-weight:600}.pick-inline.svelte-oq97c4:hover{background:var(--ink);color:var(--bg)}.muted.svelte-oq97c4{color:var(--ink-faint);text-align:center;padding:18px}.muted.err.svelte-oq97c4{color:var(--ink);font-weight:600}.warn.svelte-oq97c4{display:flex;background:var(--warn-bg);color:var(--warn-ink);font-family:var(--font-mono);border-top:1px solid var(--warn-line);align-items: flex-start;gap:8px;padding:10px 18px;font-size:12.5px}.warn.svelte-oq97c4 svg{flex:none;margin-top:1px}.warn.svelte-oq97c4 code:where(.svelte-oq97c4){font-family:var(--font-mono);border:1px solid var(--warn-line);background:#ffffff59;padding:0 5px;font-size:.9em}.foot.svelte-oq97c4{display:flex;border-top:1px solid var(--ink);justify-content:space-between;align-items: center;gap:12px;padding:14px 18px}.hint.svelte-oq97c4{font-family:var(--font-mono);color:var(--ink-faint);font-size:12px}.primary.svelte-oq97c4{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--ink);background:var(--ink);color:var(--bg);cursor:pointer;white-space:nowrap;padding:9px 16px;font-size:13px;font-weight:700}.primary.svelte-oq97c4:hover:not(:disabled){background:var(--bg-card);color:var(--ink)}.primary.svelte-oq97c4:disabled{opacity:.4;cursor:not-allowed}.icon.svelte-oq97c4{display:inline-flex;color:var(--ink-soft);align-items: center}
@@ -1 +0,0 @@
1
- .healthwrap.svelte-1hnopyv{overflow:hidden}.healthwrap.dim.svelte-1hnopyv{opacity:.5}.health.svelte-1hnopyv{background:var(--bg-card);display:grid;grid-template-columns:max-content 1fr max-content;align-items: center}.hrow.svelte-1hnopyv{display:grid;grid-template-columns:subgrid;grid-column:1/-1;border-top:1px solid var(--rule-soft);align-items: center;gap:12px;padding:10px 14px}.hrow.svelte-1hnopyv:first-child{border-top:none}.box.svelte-1hnopyv{border:1px solid var(--ink);display:inline-flex;color:var(--ink);justify-content:center;align-items: center;width:16px;height:16px}.box.ok.svelte-1hnopyv{background:var(--ink);color:var(--bg)}.box.bad.svelte-1hnopyv{background:0 0}.box.idle.svelte-1hnopyv{border-color:var(--ink-faint)}.hlabel.svelte-1hnopyv{font-family:var(--font-mono);color:var(--ink-soft);font-size:13px}.hvalue.svelte-1hnopyv{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);justify-self:end;font-size:11px;font-weight:700}.hfoot.svelte-1hnopyv{border-top:1px solid var(--rule-soft);background:var(--bg);font-family:var(--font-mono);color:var(--ink-faint);padding:7px 14px;font-size:11px}
@@ -1 +0,0 @@
1
- .right.svelte-r39acv{display:flex;align-items:stretch;margin-left:auto}.cog.svelte-r39acv,.reload.svelte-r39acv{display:inline-flex;color:var(--ink);border-left:1px solid var(--rule);flex:none;justify-content:center;align-items: center;width:48px}.reload.svelte-r39acv{appearance:none;cursor:pointer;background:0 0;border-top:0;border-bottom:0;border-right:0;padding:0}.cog.svelte-r39acv:hover,.reload.svelte-r39acv:hover{background:var(--ink);color:var(--bg)}.tabs.svelte-r39acv{display:flex;overflow-x:auto;align-items:stretch;min-width:0}.tab.svelte-r39acv{display:inline-flex;border-right:1px solid var(--rule-soft);align-items:stretch}.tab.active.svelte-r39acv{background:var(--ink)}.tab.attn-done.svelte-r39acv{animation:svelte-r39acv-attn-pulse-green 1.8s ease-in-out infinite}.tab.attn-waiting.svelte-r39acv{animation:svelte-r39acv-attn-pulse-amber 1.8s ease-in-out infinite}@keyframes svelte-r39acv-attn-pulse-green{0%,to{background:0 0;box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--attn-done)40%,transparent)}50%{background:color-mix(in srgb,var(--attn-done)32%,transparent);box-shadow:inset 0 -2px 0 var(--attn-done)}}@keyframes svelte-r39acv-attn-pulse-amber{0%,to{background:0 0;box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--attn-waiting)40%,transparent)}50%{background:color-mix(in srgb,var(--attn-waiting)32%,transparent);box-shadow:inset 0 -2px 0 var(--attn-waiting)}}@media (prefers-reduced-motion:reduce){.tab.attn-done.svelte-r39acv,.tab.attn-waiting.svelte-r39acv{animation-duration:0s;background:color-mix(in srgb,var(--attn-done)28%,transparent)}.tab.attn-waiting.svelte-r39acv{background:color-mix(in srgb,var(--attn-waiting)28%,transparent)}}.tab-label.svelte-r39acv{appearance:none;cursor:pointer;color:var(--ink-soft);font-family:var(--font-mono);display:inline-flex;text-transform:uppercase;letter-spacing:.06em;background:0 0;border:0;align-items: center;gap:10px;max-width:240px;padding:0 12px;font-size:12px}.tab-name.svelte-r39acv{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tab-mode.svelte-r39acv{display:inline-flex;opacity:.75;flex:none;align-items: center}.tab.svelte-r39acv:not(.active) .tab-label:where(.svelte-r39acv):hover{color:var(--ink)}.tab.active.svelte-r39acv .tab-label:where(.svelte-r39acv){color:var(--bg)}.tab-label.editing.svelte-r39acv{cursor:default}.tab-name-edit.svelte-r39acv{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--ink-soft);background:var(--bg);color:var(--ink);outline:none;width:130px;margin:0;padding:2px 4px;font-size:12px}
@@ -1 +0,0 @@
1
- .card.svelte-13338y7{position:relative;background:var(--bg-card);padding:16px 16px 14px;transition:transform 80ms steps(2,end),box-shadow 80ms steps(2,end)}.card.svelte-13338y7:hover:not(.busy){box-shadow:6px 6px 0 var(--ink);transform:translate(-1px,-1px)}.busy-overlay.svelte-13338y7{position:absolute;z-index:1;display:flex;background:color-mix(in srgb,var(--bg-card)78%,transparent);justify-content:center;align-items: center;inset:0}.busy-label.svelte-13338y7{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;border:1px solid var(--ink);background:var(--ink);color:var(--bg);animation:svelte-13338y7-lcd-blink 1.1s steps(1)infinite;padding:4px 9px;font-size:12px;font-weight:600}@keyframes svelte-13338y7-lcd-blink{50%{background:0 0;color:var(--ink)}}@media (prefers-reduced-motion:reduce){.busy-label.svelte-13338y7{animation:none}}.card-head.svelte-13338y7{display:flex;align-items: center;gap:11px}.attn.svelte-13338y7{border:1px solid var(--ink);flex:none;width:14px;height:14px}.attn.attn-done.svelte-13338y7{background:var(--attn-done);animation:svelte-13338y7-card-attn-pulse 1.4s ease-in-out infinite}.attn.attn-waiting.svelte-13338y7{background:var(--attn-waiting);animation:svelte-13338y7-card-attn-pulse 1.4s ease-in-out infinite}@keyframes svelte-13338y7-card-attn-pulse{0%,to{box-shadow:0 0 #0000;filter:brightness(.85)}50%{box-shadow:0 0 7px 2px color-mix(in srgb,currentColor 60%,transparent);filter:brightness(1.15)}}.attn.attn-done.svelte-13338y7{color:var(--attn-done)}.attn.attn-waiting.svelte-13338y7{color:var(--attn-waiting)}@media (prefers-reduced-motion:reduce){.attn.svelte-13338y7{animation:none;filter:none}}.name.svelte-13338y7{font-family:var(--font-mono);overflow-wrap:anywhere;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;flex:1;min-width:0;margin:0;padding:2px 4px;font-size:15px;font-weight:600}.name.svelte-13338y7:hover{border-color:var(--ink-faint)}.name-edit.svelte-13338y7{font-family:var(--font-mono);border:1px solid var(--ink);background:var(--bg);color:var(--ink);outline:none;flex:1;min-width:0;margin:0;padding:2px 4px;font-size:15px;font-weight:600}.path.svelte-13338y7{font-family:var(--font-mono);color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:10px;font-size:12px}.card-error.svelte-13338y7{font-family:var(--font-mono);color:var(--ink);background:var(--bg);border:1px solid var(--ink);overflow:auto;max-height:80px;margin-top:10px;padding:8px 10px;font-size:12px}.actions.svelte-13338y7{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
@@ -1 +0,0 @@
1
- .picker.svelte-12yor8r{display:inline-flex;border:1px solid var(--ink);background:var(--bg-card);flex:none}.segment.svelte-12yor8r{display:inline-flex;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink);cursor:pointer;background:0 0;border:none;align-items: center;gap:6px;padding:7px 12px;font-size:12px;font-weight:600}.segment.svelte-12yor8r+.segment:where(.svelte-12yor8r){border-left:1px solid var(--ink)}.segment.svelte-12yor8r:hover:not(.active){background:var(--ink);color:var(--bg)}.segment.active.svelte-12yor8r{background:var(--ink);color:var(--bg);cursor:default;font-weight:700}.segment.svelte-12yor8r:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}
@@ -1 +0,0 @@
1
- .topbar.svelte-15fxkvm{display:flex;border-bottom:1px solid var(--rule);align-items: center;gap:18px;padding:16px 24px}.back.svelte-15fxkvm{display:inline-flex;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);text-decoration:none;align-items: center;gap:5px;font-size:12px}.back.svelte-15fxkvm:hover{color:var(--ink)}.title.svelte-15fxkvm{display:flex;flex:1;align-items: center;gap:12px}.name.svelte-15fxkvm{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.03em;font-size:20px;font-weight:700}.open.svelte-15fxkvm{display:inline-flex;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink);text-decoration:none;border:1px solid var(--ink);align-items: center;gap:6px;padding:7px 12px;font-size:12px;font-weight:600}.open.svelte-15fxkvm:hover{background:var(--ink);color:var(--bg)}.restart.svelte-15fxkvm{display:inline-flex;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink);background:var(--bg);border:1px solid var(--ink);cursor:pointer;align-items: center;gap:6px;padding:7px 12px;font-size:12px;font-weight:600}.restart.svelte-15fxkvm:hover:not(:disabled){background:var(--ink);color:var(--bg)}.restart.svelte-15fxkvm:disabled{opacity:.5;cursor:not-allowed}.restart-err.svelte-15fxkvm{font-family:var(--font-mono);color:var(--danger);margin:0;padding:8px 24px 0;font-size:12px}.stage.svelte-15fxkvm{max-width:1200px;margin:0 auto;padding:20px 24px 40px}.meta.svelte-15fxkvm{display:grid;grid-template-columns:max-content 1fr;align-items: center;gap:6px 14px;margin-bottom:18px}.meta.svelte-15fxkvm .k:where(.svelte-15fxkvm){font-family:var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-size:12px;font-weight:700}.meta.svelte-15fxkvm code:where(.svelte-15fxkvm){font-family:var(--font-mono);color:var(--ink-soft);font-size:13px}.meta.svelte-15fxkvm code.muted:where(.svelte-15fxkvm){color:var(--ink-faint)}.healthslot.svelte-15fxkvm,.ports.svelte-15fxkvm{margin-bottom:18px}.ports-bar.svelte-15fxkvm{display:flex;justify-content:space-between;align-items: center}.rebuild.svelte-15fxkvm{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;background:var(--bg);color:var(--ink);border:1px solid var(--bg);cursor:pointer;padding:4px 9px;font-size:10px;font-weight:600}.rebuild.svelte-15fxkvm:hover:not(:disabled){color:var(--bg);background:0 0}.rebuild.svelte-15fxkvm:disabled{opacity:.5;cursor:not-allowed}.ports-body.svelte-15fxkvm{background:var(--bg-card);padding:12px 14px 14px}.port-list.svelte-15fxkvm{list-style:none;display:flex;flex-direction:column;gap:6px;margin:0 0 12px;padding:0}.port-list.svelte-15fxkvm li:where(.svelte-15fxkvm){display:flex;font-family:var(--font-mono);align-items: center;gap:8px;font-size:13px}.port-list.svelte-15fxkvm .cp:where(.svelte-15fxkvm){color:var(--ink);font-weight:600}.port-list.svelte-15fxkvm .arr:where(.svelte-15fxkvm){color:var(--ink-faint)}.port-list.svelte-15fxkvm a:where(.svelte-15fxkvm){display:inline-flex;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink-faint);align-items: center;gap:4px}.port-list.svelte-15fxkvm a:where(.svelte-15fxkvm):hover{border-bottom-color:var(--ink)}.rm.svelte-15fxkvm{border:1px solid var(--ink-faint);color:var(--ink-soft);cursor:pointer;background:0 0;width:20px;height:20px;margin-left:auto;font-size:15px;line-height:1}.rm.svelte-15fxkvm:hover{border-color:var(--danger);color:var(--danger)}.empty.svelte-15fxkvm{font-family:var(--font-mono);color:var(--ink-faint);margin:0 0 12px;font-size:12px}.add.svelte-15fxkvm{display:flex;gap:8px}.add.svelte-15fxkvm input:where(.svelte-15fxkvm){font-family:var(--font-mono);border:1px solid var(--ink);background:var(--bg);color:var(--ink);outline:none;flex:1;min-width:0;padding:6px 9px;font-size:13px}.add.svelte-15fxkvm button:where(.svelte-15fxkvm){font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;border:1px solid var(--ink);background:var(--bg-card);color:var(--ink);cursor:pointer;padding:6px 14px;font-size:12px;font-weight:600}.add.svelte-15fxkvm button:where(.svelte-15fxkvm):hover{background:var(--ink);color:var(--bg)}.port-err.svelte-15fxkvm{font-family:var(--font-mono);color:var(--danger);margin:10px 0 0;font-size:12px}.hint.svelte-15fxkvm{font-family:var(--font-mono);color:var(--ink-faint);margin:10px 0 0;font-size:11px}.hint.pending.svelte-15fxkvm{color:var(--ink-soft)}.hint.svelte-15fxkvm code:where(.svelte-15fxkvm){color:var(--ink)}.logwrap.svelte-15fxkvm{overflow:hidden}.log-bar.svelte-15fxkvm{display:flex;justify-content:space-between;align-items: center}.log-actions.svelte-15fxkvm{display:flex;align-items: center;gap:6px}.copy.svelte-15fxkvm{display:inline-flex;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;background:var(--bg);color:var(--ink);border:1px solid var(--bg);cursor:pointer;align-items: center;gap:5px;padding:4px 9px;font-size:10px;font-weight:600}.copy.svelte-15fxkvm:hover:not(:disabled),.copy.active.svelte-15fxkvm{color:var(--bg);background:0 0}.dot.svelte-15fxkvm{background:var(--attn-done);border-radius:50%;flex:none;width:6px;height:6px}.copy.svelte-15fxkvm:disabled{opacity:.5;cursor:not-allowed}.logs.svelte-15fxkvm{position:relative;background:repeating-linear-gradient(0deg,var(--screen-line)0 1px,transparent 1px 3px),var(--screen-bg);color:var(--screen-ink);overflow:auto;overflow-anchor:none;height:calc(100vh - 320px);min-height:360px;padding:14px}.logs.svelte-15fxkvm pre:where(.svelte-15fxkvm){font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word;margin:0;font-size:12.5px;line-height:1.5}@keyframes svelte-15fxkvm-lcd-blink{50%{background:0 0}}.caret.svelte-15fxkvm{display:inline-block;background:var(--screen-ink);vertical-align:text-bottom;animation:svelte-15fxkvm-lcd-blink 1.05s steps(1)infinite;width:.6em;height:1.05em;margin-left:2px}.err.svelte-15fxkvm{background:var(--bg-card);color:var(--ink);border-top:2px solid var(--ink);font-family:var(--font-mono);padding:12px 14px;font-size:13px}
@@ -1 +0,0 @@
1
- .cog.svelte-1e745g8{display:inline-flex;border:1px solid var(--ink);background:var(--bg-card);color:var(--ink);justify-content:center;align-items: center;width:32px;height:32px}.cog.svelte-1e745g8:hover{background:var(--ink);color:var(--bg)}
@@ -1 +0,0 @@
1
- .status.svelte-1hqr9xd{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;border:1px solid var(--ink);white-space:nowrap;padding:3px 7px;font-size:10px;font-weight:600}.status.running.svelte-1hqr9xd{background:var(--ink);color:var(--bg)}.status.stopped.svelte-1hqr9xd{color:var(--ink-soft);border-color:var(--ink-faint);background:0 0}.status.creating.svelte-1hqr9xd{background:var(--ink);color:var(--bg);animation:svelte-1hqr9xd-lcd-blink 1.1s steps(1)infinite}.status.error.svelte-1hqr9xd{background:var(--danger);color:var(--bg);border-color:var(--danger);font-weight:700}@keyframes svelte-1hqr9xd-lcd-blink{50%{background:0 0;color:var(--ink)}}
@@ -1 +0,0 @@
1
- .term.svelte-ui3nvu{background:var(--bg);box-sizing:border-box;width:100%;height:100%;padding:6px 8px}.term.svelte-ui3nvu .xterm,.term.svelte-ui3nvu .xterm-viewport{height:100%}.overlay.svelte-ui3nvu{position:absolute;display:flex;pointer-events:none;align-items: center;gap:8px;top:6px;right:8px}.status.svelte-ui3nvu{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-faint);font-size:11px}.overlay.svelte-ui3nvu button{pointer-events:auto;appearance:none;display:inline-flex;cursor:pointer;background:var(--bg);border:1px solid var(--rule);color:var(--ink);opacity:.3;justify-content:center;align-items: center;width:24px;height:24px;padding:0;transition:opacity .15s}.overlay.svelte-ui3nvu button:hover,.overlay.svelte-ui3nvu button[aria-pressed=true]{opacity:1;background:var(--ink);color:var(--bg)}.overlay.svelte-ui3nvu button:focus-visible{opacity:1;background:var(--ink);color:var(--bg)}@media (prefers-reduced-motion:reduce){.overlay.svelte-ui3nvu button{transition:none}}
@@ -1 +0,0 @@
1
- .picker.svelte-3gcwuj{display:inline-flex;border:1px solid var(--ink);background:var(--bg-card);flex:none}.segment.svelte-3gcwuj{display:inline-flex;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink);cursor:pointer;background:0 0;border:none;align-items: center;gap:6px;padding:7px 12px;font-size:12px;font-weight:600}.segment.svelte-3gcwuj+.segment:where(.svelte-3gcwuj){border-left:1px solid var(--ink)}.segment.svelte-3gcwuj:hover:not(.active){background:var(--ink);color:var(--bg)}.segment.active.svelte-3gcwuj{background:var(--ink);color:var(--bg);cursor:default;font-weight:700}.segment.svelte-3gcwuj:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}