docker-client-mx 1.35.1 → 1.36.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 (69) hide show
  1. package/dist/docker-desktop-mx/browser/{chunk-ltArY2xW.js → chunk-2Z6qpzJF.js} +1 -1
  2. package/dist/docker-desktop-mx/browser/{chunk-Dh7vYMc8.js → chunk-6Vhi8rd8.js} +1 -1
  3. package/dist/docker-desktop-mx/browser/{chunk-DYUws9mp.js → chunk-6px89AQj.js} +1 -1
  4. package/dist/docker-desktop-mx/browser/{chunk-DRT1vtH_.js → chunk-B9UcPpda.js} +2 -2
  5. package/dist/docker-desktop-mx/browser/chunk-BK2A0qk2.js +1 -0
  6. package/dist/docker-desktop-mx/browser/{chunk-oQtDYwMw.js → chunk-BPHdfnbm.js} +1 -1
  7. package/dist/docker-desktop-mx/browser/{chunk-DFUzAyI0.js → chunk-BXKHiA8K.js} +1 -1
  8. package/dist/docker-desktop-mx/browser/{chunk-C38PgGs5.js → chunk-BiLhnMKi.js} +1 -1
  9. package/dist/docker-desktop-mx/browser/{chunk-CSTPKCSb.js → chunk-By8a25tN.js} +1 -1
  10. package/dist/docker-desktop-mx/browser/{chunk-BDeMOmys.js → chunk-Bz_HteBH.js} +1 -1
  11. package/dist/docker-desktop-mx/browser/{chunk-CmXGNv0-.js → chunk-CF1AqDMe.js} +1 -1
  12. package/dist/docker-desktop-mx/browser/chunk-CK0MxuKs.js +1 -0
  13. package/dist/docker-desktop-mx/browser/{chunk-CKI6HOt5.js → chunk-CLMm_XWR.js} +1 -1
  14. package/dist/docker-desktop-mx/browser/{chunk-sKoSitq-.js → chunk-Chnm8oNy.js} +1 -1
  15. package/dist/docker-desktop-mx/browser/{chunk-CfF5fStd.js → chunk-ChzmfIu4.js} +2 -2
  16. package/dist/docker-desktop-mx/browser/chunk-CrwwnTWy.js +1 -0
  17. package/dist/docker-desktop-mx/browser/chunk-CtOi-wU6.js +1 -0
  18. package/dist/docker-desktop-mx/browser/chunk-D2zLXdKA.js +1 -0
  19. package/dist/docker-desktop-mx/browser/{chunk-Dk2BOjJw.js → chunk-DJK2pDCE.js} +1 -1
  20. package/dist/docker-desktop-mx/browser/{chunk-BDwzLH5E.js → chunk-DKcHMtVX.js} +1 -1
  21. package/dist/docker-desktop-mx/browser/{chunk-MHYwHTvv.js → chunk-DLUPTp1Q.js} +1 -1
  22. package/dist/docker-desktop-mx/browser/chunk-DNBPj_aM.js +2 -0
  23. package/dist/docker-desktop-mx/browser/{chunk-Dj0SqC61.js → chunk-DSdDrNk7.js} +1 -1
  24. package/dist/docker-desktop-mx/browser/chunk-DdnN9mbh.js +1 -0
  25. package/dist/docker-desktop-mx/browser/{chunk-C-mSD_ks.js → chunk-DnMQ5zRD.js} +1 -1
  26. package/dist/docker-desktop-mx/browser/{chunk-C7ZKT99Y.js → chunk-Dob_vN7f.js} +1 -1
  27. package/dist/docker-desktop-mx/browser/chunk-Dxcj7_8z.js +1 -0
  28. package/dist/docker-desktop-mx/browser/chunk-ExURQ6xP.js +1 -0
  29. package/dist/docker-desktop-mx/browser/{chunk-Duka1ezn.js → chunk-GnwhPzR0.js} +1 -1
  30. package/dist/docker-desktop-mx/browser/{chunk-Bo4H3_Rk.js → chunk-InjvrsZj.js} +1 -1
  31. package/dist/docker-desktop-mx/browser/{chunk-DSXCkEOA.js → chunk-KsK8Et8A.js} +1 -1
  32. package/dist/docker-desktop-mx/browser/chunk-PPlXONP3.js +4 -0
  33. package/dist/docker-desktop-mx/browser/chunk-TgIBaKIJ.js +1 -0
  34. package/dist/docker-desktop-mx/browser/chunk-VaM0mOqO.js +1 -0
  35. package/dist/docker-desktop-mx/browser/{chunk-tewFiBKE.js → chunk-ZNZW7U7T.js} +1 -1
  36. package/dist/docker-desktop-mx/browser/chunk-p8V0QABx.js +1 -0
  37. package/dist/docker-desktop-mx/browser/index.html +2 -2
  38. package/dist/docker-desktop-mx/browser/main-OGMLFNXA.js +1 -0
  39. package/dist/docker-desktop-mx/browser/styles-MQHK3ARQ.css +1 -0
  40. package/dist-electron/attention.js +4 -1
  41. package/dist-electron/attention.js.map +1 -1
  42. package/dist-electron/channels.js +3 -0
  43. package/dist-electron/channels.js.map +1 -1
  44. package/dist-electron/ipc.js +13 -0
  45. package/dist-electron/ipc.js.map +1 -1
  46. package/dist-electron/log-export.js +83 -0
  47. package/dist-electron/log-export.js.map +1 -0
  48. package/dist-electron/memory-limit.js +58 -0
  49. package/dist-electron/memory-limit.js.map +1 -0
  50. package/dist-electron/preload.js +6 -0
  51. package/dist-electron/preload.js.map +1 -1
  52. package/dist-electron/updates.js +14 -0
  53. package/dist-electron/updates.js.map +1 -1
  54. package/package.json +1 -1
  55. package/dist/docker-desktop-mx/browser/chunk-BIryu19T.js +0 -1
  56. package/dist/docker-desktop-mx/browser/chunk-BgAYDwld.js +0 -1
  57. package/dist/docker-desktop-mx/browser/chunk-BgSpSEgy.js +0 -1
  58. package/dist/docker-desktop-mx/browser/chunk-C5hTG6ZQ.js +0 -1
  59. package/dist/docker-desktop-mx/browser/chunk-CkcMOifC.js +0 -1
  60. package/dist/docker-desktop-mx/browser/chunk-Cs8Jh9po.js +0 -1
  61. package/dist/docker-desktop-mx/browser/chunk-DAJsomrJ.js +0 -1
  62. package/dist/docker-desktop-mx/browser/chunk-DIjFiJIb.js +0 -1
  63. package/dist/docker-desktop-mx/browser/chunk-DOxgdvK8.js +0 -4
  64. package/dist/docker-desktop-mx/browser/chunk-DrmeYv5g.js +0 -1
  65. package/dist/docker-desktop-mx/browser/chunk-GNa4NoSX.js +0 -2
  66. package/dist/docker-desktop-mx/browser/chunk-V8IwFs3U.js +0 -1
  67. package/dist/docker-desktop-mx/browser/chunk-uyqlb3cB.js +0 -1
  68. package/dist/docker-desktop-mx/browser/main-EZ2B2NFK.js +0 -1
  69. package/dist/docker-desktop-mx/browser/styles-JS3HDDI4.css +0 -1
@@ -1 +1 @@
1
- import{At as Wm,B as Jm,Fn as mj,Gn as pg,H as Kr,Kn as pj,P as I,Sn as jc,Tr as zr,V as Km,X as Nc,Zn as rf,_r as wt,an as f,et as OE,hr as wc,i as $i,in as ec,k as Gm,o as $t,on as fS,x as ES,xn as jE,y as Dj,yr as xm}from"./chunk-DOxgdvK8.js";import{L as xo,N as sr,T as jn,_ as Vn,d as Qo,m as To,o as Ho,z as zo}from"./chunk-Bo4H3_Rk.js";var X;var G;var J;var p;var E;var j=f(()=>{Kr();Kr();sr();sr();[X,G]=xo(`RdxSwitchContext`,`components/switch`),J=()=>{let i=I(p),f=To();return{checked:i.checkedState,disabled:$t(()=>!!f.disabled()),readonly:i.readonly,required:i.required,name:i.name,form:i.form,value:i.submitValue,ariaLabel:i.ariaLabel,ariaLabelledBy:i.ariaLabelledBy,registerNativeInput:n=>i.registerNativeInput(n),markAsTouched:()=>i.markAsTouched()}},p=(()=>{class i extends Ho{constructor(){super(),this.cva=To(),this.id=jc(jn(`rdx-switch-`)),this.defaultChecked=jc(void 0,{transform:e=>e===void 0?void 0:Dj(e)}),this.checked=mj(!1),this.disabled=jc(!1,{transform:Dj}),this.readonly=jc(!1,{transform:Dj}),this.required=jc(!1,{transform:Dj}),this.name=jc(),this.form=jc(),this.submitValue=jc(`on`,{alias:`value`}),this.uncheckedValue=jc(),this.ariaLabelledBy=jc(void 0,{alias:`aria-labelledby`}),this.ariaLabel=jc(void 0,{alias:`aria-label`}),this.onCheckedChange=pj(),this.checkedState=$t(()=>!!this.cva.value()),this.isDisabled=$t(()=>!!this.cva.disabled()),this.nativeInput=wt(null),this.nativeInputOwnsValue=$t(()=>this.nativeInput()!==null&&(this.checkedState()||this.uncheckedValue()===void 0)),this.invalidState=this.formUi.invalidState,this.touchedState=this.formUi.touchedState,this.dirtyState=this.formUi.dirtyState,Qo({name:this.name,form:this.form,disabled:this.isDisabled,value:this.checkedState,serialize:e=>{let t=e?this.submitValue():this.uncheckedValue();return t===void 0?[]:[t]},hasNativeControl:this.nativeInputOwnsValue,syncNativeControl:()=>{let e=this.nativeInput();e&&(e.checked=this.checkedState())},defaultValue:()=>this.defaultChecked()??this.checkedState(),onReset:e=>{this.checked.set(e),this.resetNgControl(e)||this.cva.writeValue(e),this.formUi.resetInteractionState?.()}});let n=!1;rf(()=>{let e=this.defaultChecked();!n&&e!==void 0&&(n=!0,this.checked.set(e),this.cva.setValue(e))})}formUiTouchTarget(){return To()}markAsTouched(){this.formUi.markAsTouched()}toggle(n){if(this.isDisabled()||this.readonly())return;let e=!this.cva.value(),t=n?.currentTarget instanceof HTMLElement?n.currentTarget:void 0,{eventDetails:d}=zo(`none`,n??new Event(`switch.checked-change`),t);this.onCheckedChange.emit({checked:e,eventDetails:d}),!d.isCanceled()&&(this.checked.set(e),this.cva.setValue(e),this.formUi.markDirty())}registerNativeInput(n){return this.nativeInput.set(n),()=>{this.nativeInput()===n&&this.nativeInput.set(null)}}static{this.ɵfac=function(e){return new(e||i)}}static{this.ɵdir=OE({type:i,selectors:[[`button`,`rdxSwitchRoot`,``]],hostAttrs:[`role`,`switch`,`type`,`button`],hostVars:15,hostBindings:function(e,t){e&1&&Jm(`click`,function(O){return t.toggle(O)})(`blur`,function(){return t.markAsTouched()}),e&2&&(Km(`id`,t.id()),zr(`aria-checked`,t.checkedState())(`aria-required`,t.required()?`true`:void 0)(`aria-readonly`,t.readonly()?`true`:void 0)(`aria-invalid`,t.displayValid()===!1?`true`:void 0)(`data-checked`,t.checkedState()?``:void 0)(`data-unchecked`,t.checkedState()?void 0:``)(`data-disabled`,t.isDisabled()?``:void 0)(`data-readonly`,t.readonly()?``:void 0)(`data-required`,t.required()?``:void 0)(`data-invalid`,t.displayValid()===!1?``:void 0)(`data-valid`,t.displayValid()===!0?``:void 0)(`data-touched`,t.touchedState()?``:void 0)(`data-dirty`,t.dirtyState()?``:void 0)(`disabled`,t.isDisabled()?``:void 0))},inputs:{id:[1,`id`],defaultChecked:[1,`defaultChecked`],checked:[1,`checked`],disabled:[1,`disabled`],readonly:[1,`readonly`],required:[1,`required`],name:[1,`name`],form:[1,`form`],submitValue:[1,`value`,`submitValue`],uncheckedValue:[1,`uncheckedValue`],ariaLabelledBy:[1,`aria-labelledby`,`ariaLabelledBy`],ariaLabel:[1,`aria-label`,`ariaLabel`]},outputs:{checked:`checkedChange`,onCheckedChange:`onCheckedChange`},exportAs:[`rdxSwitchRoot`],features:[ES([G(J)]),jE([{directive:Vn,inputs:[`value`,`checked`,`disabled`,`disabled`]}]),xm]})}}return i})(),E=(()=>{class i{constructor(){this.rootContext=X()}static{this.ɵfac=function(e){return new(e||i)}}static{this.ɵdir=OE({type:i,selectors:[[`span`,`rdxSwitchThumb`,``]],hostVars:5,hostBindings:function(e,t){e&2&&zr(`data-checked`,t.rootContext.checked()?``:void 0)(`data-unchecked`,t.rootContext.checked()?void 0:``)(`data-disabled`,t.rootContext.disabled()?``:void 0)(`data-readonly`,t.rootContext.readonly()?``:void 0)(`data-required`,t.rootContext.required()?``:void 0)},exportAs:[`rdxSwitchThumb`]})}}return i})()});var P;var K=f(()=>{Kr();j();Kr();P=class i{label=jc.required();on=mj.required();disabled=jc(!1);static ɵfac=function(n){return new(n||i)};static ɵcmp=wc({type:i,selectors:[[`app-filter-switch`]],hostAttrs:[1,`flex`,`items-center`,`gap-2`,`text-[13px]`,`text-ink-300`],inputs:{label:[1,`label`],on:[1,`on`],disabled:[1,`disabled`]},outputs:{on:`onChange`},decls:4,vars:4,consts:[[`type`,`button`,`rdxSwitchRoot`,``,1,`mx-focus`,`relative`,`h-5`,`w-9`,`shrink-0`,`cursor-pointer`,`rounded-full`,`border`,`border-ink-700`,`bg-ink-800`,`transition-colors`,`data-[checked]:border-accent`,`data-[checked]:bg-accent`,`disabled:cursor-not-allowed`,`disabled:opacity-50`,3,`onCheckedChange`,`checked`,`disabled`],[`rdxSwitchThumb`,``,1,`block`,`size-3.5`,`translate-x-[3px]`,`rounded-full`,`bg-ink-400`,`transition-transform`,`data-[checked]:translate-x-[19px]`,`data-[checked]:bg-white`]],template:function(n,e){n&1&&($i(0,`button`,0),Jm(`onCheckedChange`,function(d){return e.on.set(d.checked)}),Gm(1,`span`,1),Nc(),$i(2,`span`),fS(3),Nc()),n&2&&(Wm(`checked`,e.on())(`disabled`,e.disabled()),zr(`aria-label`,e.label()),ec(3),pg(e.label()))},dependencies:[p,E],encapsulation:2})}});export{P as n,K as t};
1
+ import{B as Jm,En as jc,Fn as mj,Ft as Wm,Gn as pg,H as Kr,Kn as pj,P as I,Tn as jE,Tr as zr,V as Km,X as Nc,Zn as rf,_r as wt,cn as ec,et as OE,hr as wc,i as $i,k as Gm,ln as f,o as $t,un as fS,x as ES,y as Dj,yr as xm}from"./chunk-PPlXONP3.js";import{L as xo,N as sr,T as jn,_ as Vn,d as Qo,m as To,o as Ho,z as zo}from"./chunk-InjvrsZj.js";var X;var G;var J;var p;var E;var j=f(()=>{Kr();Kr();sr();sr();[X,G]=xo(`RdxSwitchContext`,`components/switch`),J=()=>{let i=I(p),f=To();return{checked:i.checkedState,disabled:$t(()=>!!f.disabled()),readonly:i.readonly,required:i.required,name:i.name,form:i.form,value:i.submitValue,ariaLabel:i.ariaLabel,ariaLabelledBy:i.ariaLabelledBy,registerNativeInput:n=>i.registerNativeInput(n),markAsTouched:()=>i.markAsTouched()}},p=(()=>{class i extends Ho{constructor(){super(),this.cva=To(),this.id=jc(jn(`rdx-switch-`)),this.defaultChecked=jc(void 0,{transform:e=>e===void 0?void 0:Dj(e)}),this.checked=mj(!1),this.disabled=jc(!1,{transform:Dj}),this.readonly=jc(!1,{transform:Dj}),this.required=jc(!1,{transform:Dj}),this.name=jc(),this.form=jc(),this.submitValue=jc(`on`,{alias:`value`}),this.uncheckedValue=jc(),this.ariaLabelledBy=jc(void 0,{alias:`aria-labelledby`}),this.ariaLabel=jc(void 0,{alias:`aria-label`}),this.onCheckedChange=pj(),this.checkedState=$t(()=>!!this.cva.value()),this.isDisabled=$t(()=>!!this.cva.disabled()),this.nativeInput=wt(null),this.nativeInputOwnsValue=$t(()=>this.nativeInput()!==null&&(this.checkedState()||this.uncheckedValue()===void 0)),this.invalidState=this.formUi.invalidState,this.touchedState=this.formUi.touchedState,this.dirtyState=this.formUi.dirtyState,Qo({name:this.name,form:this.form,disabled:this.isDisabled,value:this.checkedState,serialize:e=>{let t=e?this.submitValue():this.uncheckedValue();return t===void 0?[]:[t]},hasNativeControl:this.nativeInputOwnsValue,syncNativeControl:()=>{let e=this.nativeInput();e&&(e.checked=this.checkedState())},defaultValue:()=>this.defaultChecked()??this.checkedState(),onReset:e=>{this.checked.set(e),this.resetNgControl(e)||this.cva.writeValue(e),this.formUi.resetInteractionState?.()}});let n=!1;rf(()=>{let e=this.defaultChecked();!n&&e!==void 0&&(n=!0,this.checked.set(e),this.cva.setValue(e))})}formUiTouchTarget(){return To()}markAsTouched(){this.formUi.markAsTouched()}toggle(n){if(this.isDisabled()||this.readonly())return;let e=!this.cva.value(),t=n?.currentTarget instanceof HTMLElement?n.currentTarget:void 0,{eventDetails:d}=zo(`none`,n??new Event(`switch.checked-change`),t);this.onCheckedChange.emit({checked:e,eventDetails:d}),!d.isCanceled()&&(this.checked.set(e),this.cva.setValue(e),this.formUi.markDirty())}registerNativeInput(n){return this.nativeInput.set(n),()=>{this.nativeInput()===n&&this.nativeInput.set(null)}}static{this.ɵfac=function(e){return new(e||i)}}static{this.ɵdir=OE({type:i,selectors:[[`button`,`rdxSwitchRoot`,``]],hostAttrs:[`role`,`switch`,`type`,`button`],hostVars:15,hostBindings:function(e,t){e&1&&Jm(`click`,function(O){return t.toggle(O)})(`blur`,function(){return t.markAsTouched()}),e&2&&(Km(`id`,t.id()),zr(`aria-checked`,t.checkedState())(`aria-required`,t.required()?`true`:void 0)(`aria-readonly`,t.readonly()?`true`:void 0)(`aria-invalid`,t.displayValid()===!1?`true`:void 0)(`data-checked`,t.checkedState()?``:void 0)(`data-unchecked`,t.checkedState()?void 0:``)(`data-disabled`,t.isDisabled()?``:void 0)(`data-readonly`,t.readonly()?``:void 0)(`data-required`,t.required()?``:void 0)(`data-invalid`,t.displayValid()===!1?``:void 0)(`data-valid`,t.displayValid()===!0?``:void 0)(`data-touched`,t.touchedState()?``:void 0)(`data-dirty`,t.dirtyState()?``:void 0)(`disabled`,t.isDisabled()?``:void 0))},inputs:{id:[1,`id`],defaultChecked:[1,`defaultChecked`],checked:[1,`checked`],disabled:[1,`disabled`],readonly:[1,`readonly`],required:[1,`required`],name:[1,`name`],form:[1,`form`],submitValue:[1,`value`,`submitValue`],uncheckedValue:[1,`uncheckedValue`],ariaLabelledBy:[1,`aria-labelledby`,`ariaLabelledBy`],ariaLabel:[1,`aria-label`,`ariaLabel`]},outputs:{checked:`checkedChange`,onCheckedChange:`onCheckedChange`},exportAs:[`rdxSwitchRoot`],features:[ES([G(J)]),jE([{directive:Vn,inputs:[`value`,`checked`,`disabled`,`disabled`]}]),xm]})}}return i})(),E=(()=>{class i{constructor(){this.rootContext=X()}static{this.ɵfac=function(e){return new(e||i)}}static{this.ɵdir=OE({type:i,selectors:[[`span`,`rdxSwitchThumb`,``]],hostVars:5,hostBindings:function(e,t){e&2&&zr(`data-checked`,t.rootContext.checked()?``:void 0)(`data-unchecked`,t.rootContext.checked()?void 0:``)(`data-disabled`,t.rootContext.disabled()?``:void 0)(`data-readonly`,t.rootContext.readonly()?``:void 0)(`data-required`,t.rootContext.required()?``:void 0)},exportAs:[`rdxSwitchThumb`]})}}return i})()});var P;var K=f(()=>{Kr();j();Kr();P=class i{label=jc.required();on=mj.required();disabled=jc(!1);static ɵfac=function(n){return new(n||i)};static ɵcmp=wc({type:i,selectors:[[`app-filter-switch`]],hostAttrs:[1,`flex`,`items-center`,`gap-2`,`text-[13px]`,`text-ink-300`],inputs:{label:[1,`label`],on:[1,`on`],disabled:[1,`disabled`]},outputs:{on:`onChange`},decls:4,vars:4,consts:[[`type`,`button`,`rdxSwitchRoot`,``,1,`mx-focus`,`relative`,`h-5`,`w-9`,`shrink-0`,`cursor-pointer`,`rounded-full`,`border`,`border-ink-700`,`bg-ink-800`,`transition-colors`,`data-[checked]:border-accent`,`data-[checked]:bg-accent`,`disabled:cursor-not-allowed`,`disabled:opacity-50`,3,`onCheckedChange`,`checked`,`disabled`],[`rdxSwitchThumb`,``,1,`block`,`size-3.5`,`translate-x-[3px]`,`rounded-full`,`bg-ink-400`,`transition-transform`,`data-[checked]:translate-x-[19px]`,`data-[checked]:bg-white`]],template:function(n,e){n&1&&($i(0,`button`,0),Jm(`onCheckedChange`,function(d){return e.on.set(d.checked)}),Gm(1,`span`,1),Nc(),$i(2,`span`),fS(3),Nc()),n&2&&(Wm(`checked`,e.on())(`disabled`,e.disabled()),zr(`aria-label`,e.label()),ec(3),pg(e.label()))},dependencies:[p,E],encapsulation:2})}});export{P as n,K as t};
@@ -1 +1 @@
1
- import{an as f}from"./chunk-DOxgdvK8.js";function i(e,r,t){e.navigate([],{relativeTo:r,queryParams:{[t]:null},queryParamsHandling:`merge`,replaceUrl:!0})}var o=f(()=>{});export{o as n,i as t};
1
+ import{ln as f}from"./chunk-PPlXONP3.js";function i(e,r,t){e.navigate([],{relativeTo:r,queryParams:{[t]:null},queryParamsHandling:`merge`,replaceUrl:!0})}var o=f(()=>{});export{o as n,i as t};
@@ -1 +1 @@
1
- import{H as Kr,Pt as X,_r as wt,an as f}from"./chunk-DOxgdvK8.js";function g(s){try{return localStorage.getItem(u+s)}catch{return null}}function o(s,n){try{localStorage.setItem(u+s,n)}catch{}}function y(s){try{localStorage.removeItem(u+s)}catch{}}function b(s){if(s===null)return new Set;try{let n=JSON.parse(s);return new Set(Array.isArray(n)?n.filter(r=>typeof r==`string`):[])}catch{return new Set}}function v(s){if(s===null)return new Map;try{let n=JSON.parse(s);if(!Array.isArray(n))return new Map;let r=n.filter(t=>Array.isArray(t)&&t.length===2&&typeof t[0]==`string`&&typeof t[1]==`string`);return new Map(r)}catch{return new Map}}var u;var p;var M=f(()=>{Kr();Kr();u=`mx.pref.`;p=class s{flags=new Map;sets=new Map;maps=new Map;choices=new Map;flag(n,r=!1){let t=this.flags.get(n);if(t!==void 0)return t;let i=g(n),e=wt(i===null?r:i===`true`),f=e.set.bind(e);return e.set=l=>{f(l),o(n,String(l))},e.update=l=>e.set(l(e())),this.flags.set(n,e),e}names(n){let r=this.sets.get(n);if(r!==void 0)return r;let t=wt(b(g(n))),i=t.set.bind(t);return t.set=e=>{i(e),o(n,JSON.stringify([...e]))},t.update=e=>t.set(e(t())),this.sets.set(n,t),t}entries(n){let r=this.maps.get(n);if(r!==void 0)return r;let t=wt(v(g(n))),i=t.set.bind(t);return t.set=e=>{i(e),o(n,JSON.stringify([...e]))},t.update=e=>t.set(e(t())),this.maps.set(n,t),t}choice(n){let r=this.choices.get(n);if(r!==void 0)return r;let t=wt(g(n)),i=t.set.bind(t);return t.set=e=>{i(e),e===null?y(n):o(n,e)},t.update=e=>t.set(e(t())),this.choices.set(n,t),t}static ɵfac=function(r){return new(r||s)};static ɵprov=X({token:s,factory:s.ɵfac,providedIn:`root`})}});export{p as n,M as t};
1
+ import{H as Kr,_r as wt,ln as f,zt as X}from"./chunk-PPlXONP3.js";function g(s){try{return localStorage.getItem(u+s)}catch{return null}}function o(s,n){try{localStorage.setItem(u+s,n)}catch{}}function y(s){try{localStorage.removeItem(u+s)}catch{}}function b(s){if(s===null)return new Set;try{let n=JSON.parse(s);return new Set(Array.isArray(n)?n.filter(r=>typeof r==`string`):[])}catch{return new Set}}function v(s){if(s===null)return new Map;try{let n=JSON.parse(s);if(!Array.isArray(n))return new Map;let r=n.filter(t=>Array.isArray(t)&&t.length===2&&typeof t[0]==`string`&&typeof t[1]==`string`);return new Map(r)}catch{return new Map}}var u;var p;var M=f(()=>{Kr();Kr();u=`mx.pref.`;p=class s{flags=new Map;sets=new Map;maps=new Map;choices=new Map;flag(n,r=!1){let t=this.flags.get(n);if(t!==void 0)return t;let i=g(n),e=wt(i===null?r:i===`true`),f=e.set.bind(e);return e.set=l=>{f(l),o(n,String(l))},e.update=l=>e.set(l(e())),this.flags.set(n,e),e}names(n){let r=this.sets.get(n);if(r!==void 0)return r;let t=wt(b(g(n))),i=t.set.bind(t);return t.set=e=>{i(e),o(n,JSON.stringify([...e]))},t.update=e=>t.set(e(t())),this.sets.set(n,t),t}entries(n){let r=this.maps.get(n);if(r!==void 0)return r;let t=wt(v(g(n))),i=t.set.bind(t);return t.set=e=>{i(e),o(n,JSON.stringify([...e]))},t.update=e=>t.set(e(t())),this.maps.set(n,t),t}choice(n){let r=this.choices.get(n);if(r!==void 0)return r;let t=wt(g(n)),i=t.set.bind(t);return t.set=e=>{i(e),e===null?y(n):o(n,e)},t.update=e=>t.set(e(t())),this.choices.set(n,t),t}static ɵfac=function(r){return new(r||s)};static ɵprov=X({token:s,factory:s.ɵfac,providedIn:`root`})}});export{p as n,M as t};
@@ -1,4 +1,4 @@
1
- import{$n as sT,At as Wm,B as Jm,Bn as oT,Dn as kg,En as kc,Fn as mj,Gn as pg,H as Kr,J as My,M as HC,P as I,Pn as mg,Sn as jc,Tr as zr,Vt as _c,W as Ld,Wt as ag,X as Nc,Xt as bg,Zn as rf,_r as wt,_t as Sc,an as f,bt as Tc,c as Am,en as dT,gt as SS,hr as wc,ht as SC,i as $i,in as ec,jn as lT,k as Gm,lt as RC,o as $t,on as fS,qt as bS,r as $d,rn as eH,sr as vS,ur as vg,vn as hg,xr as yS,yt as TC}from"./chunk-DOxgdvK8.js";import"./chunk-C7ZKT99Y.js";import{n as y,t as c}from"./chunk-C-mSD_ks.js";import{n as y$1,t as f$1}from"./chunk-oQtDYwMw.js";import{n as v,t as u}from"./chunk-MHYwHTvv.js";import{n as x,t as u$1}from"./chunk-Cs8Jh9po.js";import"./chunk-Bo4H3_Rk.js";import{a as Yt,r as Q,s as fe,u as ra}from"./chunk-uyqlb3cB.js";import"./chunk-BDeMOmys.js";import{_ as pn,d as dn,f as fn,g as ln,l as an,m as ie,r as Je$1,u as cn,v as un}from"./chunk-C5hTG6ZQ.js";import{n as o,t as i}from"./chunk-Dh7vYMc8.js";import{n as V,t as G$1}from"./chunk-BgAYDwld.js";import{n as W,t as J}from"./chunk-sKoSitq-.js";import{n as u$2,t as c$1}from"./chunk-CKI6HOt5.js";function Me(n,t){if(n&1){let e=RC();$i(0,`button`,18),Jm(`click`,function(){let o=Ld(e).$implicit;return $d(HC(2).view.set(o))}),fS(1),Nc()}if(n&2){let e=t.$implicit,i=HC(2);ag(`border-accent`,i.view()===e)(`text-accent`,i.view()===e),zr(`data-testid`,`compose-view-`+e)(`aria-pressed`,i.view()===e),ec(),_c(` `,e===`raw`?i.t().raw:i.t().resolved,` `)}}function Re(n,t){n&1&&($i(0,`pre`,9),fS(1),Nc()),n&2&&(ec(),pg(t))}function Ne(n,t){n&1&&($i(0,`p`,10),fS(1),Nc()),n&2&&(ec(),pg(t))}function Ve(n,t){if(n&1&&($i(0,`p`,11),fS(1),Nc()),n&2){let e=HC(2);ec(),pg(e.t().loading)}}function Oe(n,t){n&1&&($i(0,`span`,13),fS(1),Nc()),n&2&&(ec(),pg(t))}function Be(n,t){if(n&1){let e=RC();Gm(0,`div`,2),$i(1,`div`,3)(2,`div`,4)(3,`h2`,5),fS(4),Nc(),$i(5,`p`,6),fS(6),Nc(),$i(7,`div`,7),Tc(8,Me,2,7,`button`,8,Sc),Nc(),SC(10,Re,2,1,`pre`,9)(11,Ne,2,1,`p`,10)(12,Ve,2,1,`p`,11),$i(13,`div`,12),SC(14,Oe,2,1,`span`,13),$i(15,`button`,14),Gm(16,`app-icon`,15),fS(17),Nc(),$i(18,`button`,16),Jm(`click`,function(){Ld(e);return $d(HC().copy())}),Gm(19,`app-icon`,17),fS(20),Nc()()()()}if(n&2){let e,i,o=HC();ec(4),pg(o.t().title(o.project())),ec(2),_c(` `,o.view()===`raw`?o.t().rawHint:o.t().resolvedHint,` `),ec(2),kc(o.views),ec(2),TC((e=o.body())?10:(e=o.problem())?11:12,e),ec(4),TC((i=o.copyProblem())?14:-1,i),ec(2),Wm(`size`,14),ec(),_c(` `,o.common().close,` `),ec(),Wm(`disabled`,o.body()===null),ec(),Wm(`name`,o.copied()?`check`:`copy`)(`size`,14),ec(),_c(` `,o.copied()?o.common().copied:o.common().copy,` `)}}var G;var _e=f(()=>{Kr();Je$1();lT();dT();sT();Kr();G=class n{open=mj(!1);project=jc.required();t=$t(()=>oT().compose.file);common=$t(()=>oT().common);views=[`raw`,`resolved`];view=wt(`raw`);files=wt(null);config=wt(null);copied=wt(!1);copyProblem=wt(null);constructor(){rf(()=>{if(!this.open())return;let t=this.project();kg(()=>{this.load(t)})})}body(){if(this.view()===`resolved`){let e=this.config();return e?.ok===!0?e.yaml:null}let t=this.files();return t?.ok!==!0?null:t.files.map(e=>`# ${e.path}
1
+ import{B as Jm,Ct as Tc,Dn as kC,En as jc,Fn as mj,Ft as Wm,Gn as pg,H as Kr,J as My,Jt as ag,Kt as _m,M as HC,Mn as lk,On as kc,P as I,Pn as mg,Sn as hg,Tr as zr,Vn as ok,W as Ld,X as Nc,Zn as rf,Zt as bS,_r as wt,_t as SS,cn as ec,en as bg,er as sk,gt as SC,hr as wc,i as $i,in as dk,k as Gm,ln as f,o as $t,r as $d,s as Ac,sn as eH,sr as vS,un as fS,ur as vg,ut as RC,vt as Sc,wt as Tg,xr as yS}from"./chunk-PPlXONP3.js";import"./chunk-Dob_vN7f.js";import{n as y,t as c}from"./chunk-DnMQ5zRD.js";import{n as y$1,t as f$1}from"./chunk-BPHdfnbm.js";import{n as v,t as u}from"./chunk-DLUPTp1Q.js";import{n as x,t as u$1}from"./chunk-Dxcj7_8z.js";import"./chunk-InjvrsZj.js";import{a as Yt,r as Q,s as fe,u as ra}from"./chunk-CrwwnTWy.js";import"./chunk-Bz_HteBH.js";import{_ as pn,d as dn,f as fn,g as ln,l as an,m as ie,r as Je$1,u as cn,v as un}from"./chunk-DdnN9mbh.js";import{n as u$2,t as c$1}from"./chunk-CLMm_XWR.js";import{n as o,t as i}from"./chunk-6Vhi8rd8.js";import{n as V,t as G$1}from"./chunk-p8V0QABx.js";import{n as W,t as J}from"./chunk-Chnm8oNy.js";function Me(n,t){if(n&1){let e=RC();$i(0,`button`,18),Jm(`click`,function(){let o=Ld(e).$implicit;return $d(HC(2).view.set(o))}),fS(1),Nc()}if(n&2){let e=t.$implicit,i=HC(2);ag(`border-accent`,i.view()===e)(`text-accent`,i.view()===e),zr(`data-testid`,`compose-view-`+e)(`aria-pressed`,i.view()===e),ec(),Ac(` `,e===`raw`?i.t().raw:i.t().resolved,` `)}}function Re(n,t){n&1&&($i(0,`pre`,9),fS(1),Nc()),n&2&&(ec(),pg(t))}function Ne(n,t){n&1&&($i(0,`p`,10),fS(1),Nc()),n&2&&(ec(),pg(t))}function Ve(n,t){if(n&1&&($i(0,`p`,11),fS(1),Nc()),n&2){let e=HC(2);ec(),pg(e.t().loading)}}function Oe(n,t){n&1&&($i(0,`span`,13),fS(1),Nc()),n&2&&(ec(),pg(t))}function Be(n,t){if(n&1){let e=RC();Gm(0,`div`,2),$i(1,`div`,3)(2,`div`,4)(3,`h2`,5),fS(4),Nc(),$i(5,`p`,6),fS(6),Nc(),$i(7,`div`,7),kc(8,Me,2,7,`button`,8,Sc),Nc(),SC(10,Re,2,1,`pre`,9)(11,Ne,2,1,`p`,10)(12,Ve,2,1,`p`,11),$i(13,`div`,12),SC(14,Oe,2,1,`span`,13),$i(15,`button`,14),Gm(16,`app-icon`,15),fS(17),Nc(),$i(18,`button`,16),Jm(`click`,function(){Ld(e);return $d(HC().copy())}),Gm(19,`app-icon`,17),fS(20),Nc()()()()}if(n&2){let e,i,o=HC();ec(4),pg(o.t().title(o.project())),ec(2),Ac(` `,o.view()===`raw`?o.t().rawHint:o.t().resolvedHint,` `),ec(2),Tc(o.views),ec(2),kC((e=o.body())?10:(e=o.problem())?11:12,e),ec(4),kC((i=o.copyProblem())?14:-1,i),ec(2),Wm(`size`,14),ec(),Ac(` `,o.common().close,` `),ec(),Wm(`disabled`,o.body()===null),ec(),Wm(`name`,o.copied()?`check`:`copy`)(`size`,14),ec(),Ac(` `,o.copied()?o.common().copied:o.common().copy,` `)}}var G;var _e=f(()=>{Kr();Je$1();lk();dk();sk();Kr();G=class n{open=mj(!1);project=jc.required();t=$t(()=>ok().compose.file);common=$t(()=>ok().common);views=[`raw`,`resolved`];view=wt(`raw`);files=wt(null);config=wt(null);copied=wt(!1);copyProblem=wt(null);constructor(){rf(()=>{if(!this.open())return;let t=this.project();Tg(()=>{this.load(t)})})}body(){if(this.view()===`resolved`){let e=this.config();return e?.ok===!0?e.yaml:null}let t=this.files();return t?.ok!==!0?null:t.files.map(e=>`# ${e.path}
2
2
  ${e.problem??(e.content.trim()===``?this.t().empty:e.content)}`).join(`
3
3
 
4
- `)}problem(){let t=this.view()===`resolved`?this.config():this.files();return t?.ok===!1?t.problem:null}async copy(){let t=this.body();if(t!==null)try{await navigator.clipboard.writeText(t),this.copyProblem.set(null),this.copied.set(!0),setTimeout(()=>this.copied.set(!1),1500)}catch(e){this.copyProblem.set(this.t().copyFailed(eH(e)))}}async load(t){this.files.set(null),this.config.set(null),this.copied.set(!1),this.copyProblem.set(null),this.view.set(`raw`);let[e,i]=await Promise.all([window.electron.compose.files(t).catch(o=>({ok:!1,problem:eH(o)})),window.electron.compose.config(t).catch(o=>({ok:!1,problem:eH(o)}))]);this.files.set(e),this.config.set(i)}static ɵfac=function(e){return new(e||n)};static ɵcmp=wc({type:n,selectors:[[`app-compose-file-dialog`]],inputs:{open:[1,`open`],project:[1,`project`]},outputs:{open:`openChange`},decls:2,vars:1,consts:[[`rdxDialogRoot`,``,3,`openChange`,`open`],[`rdxDialogPortal`,``],[`rdxDialogBackdrop`,``,1,`fixed`,`inset-0`,`z-40`,`bg-black/50`],[`rdxDialogViewport`,``,1,`fixed`,`inset-0`,`z-50`,`grid`,`place-items-center`,`p-4`],[`rdxDialogPopup`,``,`data-testid`,`compose-file-dialog`,1,`flex`,`max-h-[85vh]`,`w-full`,`max-w-4xl`,`flex-col`,`rounded-lg`,`border`,`border-ink-700`,`bg-ink-850`,`p-5`,`shadow-2xl`],[`rdxDialogTitle`,``,1,`text-[15px]`,`font-semibold`,`text-ink-100`],[`rdxDialogDescription`,``,1,`mt-1`,`text-[13px]`,`text-ink-400`],[1,`mt-3`,`flex`,`shrink-0`,`gap-1`],[`type`,`button`,1,`mx-btn`,`mx-focus`,3,`border-accent`,`text-accent`],[`data-testid`,`compose-file-text`,1,`mt-3`,`min-h-0`,`flex-1`,`overflow-auto`,`rounded-md`,`border`,`border-ink-700`,`bg-ink-900`,`p-3`,`font-mono`,`text-[12px]`,`leading-relaxed`,`whitespace-pre`,`text-ink-200`],[1,`mt-4`,`rounded-md`,`border`,`border-danger/40`,`bg-danger/10`,`px-3`,`py-2`,`text-[13px]`,`text-danger`],[1,`mt-4`,`text-[13px]`,`text-ink-400`],[1,`mt-4`,`flex`,`items-center`,`justify-end`,`gap-2`],[1,`mr-auto`,`text-[12px]`,`text-danger`],[`type`,`button`,`rdxDialogClose`,``,1,`mx-btn`,`mx-focus`],[`name`,`close`,3,`size`],[`type`,`button`,`data-testid`,`compose-file-copy`,1,`mx-btn`,`mx-focus`,3,`click`,`disabled`],[3,`name`,`size`],[`type`,`button`,1,`mx-btn`,`mx-focus`,3,`click`]],template:function(e,i){e&1&&($i(0,`div`,0),vg(`openChange`,function(l){return vS(i.open,l)||(i.open=l),l}),Am(1,Be,21,10,`ng-template`,1),Nc()),e&2&&hg(`open`,i.open)},dependencies:[ie,ln,an,pn,cn,fn,dn,un,My],encapsulation:2})}});function Ae(n,t){if(n&1&&($i(0,`div`,6),fS(1),Nc()),n&2){let e=HC();ec(),pg(e.version)}}function ze(n,t){if(n&1&&($i(0,`div`,13),fS(1),Nc()),n&2){let e=HC();ec(),pg(e.problem)}}function We(n,t){n&1&&SC(0,Ae,2,1,`div`,6)(1,ze,2,1,`div`,13),n&2&&TC(t.cliAvailable?0:1)}function He(n,t){if(n&1&&($i(0,`div`,6),fS(1),Nc()),n&2){let e=HC();ec(),pg(e.t().updating)}}function qe(n,t){if(n&1&&($i(0,`span`,20),fS(1),Nc()),n&2){let e=t;Wm(`title`,e),ec(),pg(e)}}function Qe(n,t){if(n&1&&($i(0,`div`,23),fS(1),Nc()),n&2){let e=HC(2);ec(),pg(e.t().busy)}}function Je(n,t){if(n&1&&($i(0,`span`,34),fS(1),Nc()),n&2){let e=t.$implicit;ec(),_c(` `,e.hostPort?e.hostPort+`:`+e.containerPort:e.containerPort,` `)}}function Ke(n,t){if(n&1&&($i(0,`span`,32),Tc(1,Je,2,1,`span`,34,$e),Nc()),n&2){let e=HC().$implicit;ec(),kc(e.ports.slice(0,2))}}function Ue(n,t){if(n&1&&($i(0,`div`,30),Gm(1,`app-state-dot`,17),$i(2,`a`,31),fS(3),Nc(),$i(4,`span`,32),fS(5),Nc(),$i(6,`span`,33),fS(7),Nc(),SC(8,Ke,3,0,`span`,32),Nc()),n&2){let e=t.$implicit;ec(),Wm(`state`,e.state),ec(),Wm(`routerLink`,SS(6,Ge,e.id)),ec(),pg(e.name),ec(2),pg(e.status),ec(2),pg(e.image),ec(),TC(e.ports.length>0?8:-1)}}function Xe(n,t){if(n&1){let e=RC();$i(0,`div`,25)(1,`div`,26)(2,`div`,27),fS(3),Nc(),$i(4,`button`,28),Jm(`click`,function(){let o=Ld(e).$implicit,l=HC(2).$implicit;return $d(HC().recreate(l,o))}),Gm(5,`app-icon`,29),fS(6),Nc()(),Tc(7,Ue,9,8,`div`,30,Le),Nc()}if(n&2){let e=t.$implicit,i=HC(2).$implicit,o=bS(0),l=HC();ec(3),pg(e.name),ec(),Wm(`disabled`,o||!l.canCompose(i))(`title`,l.canCompose(i)?l.t().recreateTitle:l.composeBlockedReason(i)),zr(`data-testid`,`compose-recreate-`+e.name)(`aria-label`,l.t().recreateAria(e.name)),ec(),Wm(`size`,14),ec(),_c(` `,l.t().recreate,` `),ec(),kc(e.containers)}}function Ye(n,t){if(n&1&&($i(0,`div`,24),Tc(1,Xe,9,7,`div`,25,be),Nc()),n&2){let e=HC().$implicit;ec(),kc(e.services)}}function Ze(n,t){if(n&1){let e=RC();bg(0),$i(1,`div`,9)(2,`div`,14)(3,`button`,15),Jm(`click`,function(){let o=Ld(e).$implicit;return $d(HC().toggle(o.name))}),Gm(4,`app-icon`,16)(5,`app-state-dot`,17),$i(6,`span`,18),fS(7),Nc()(),$i(8,`span`,19),fS(9),Nc(),SC(10,qe,2,2,`span`,20),$i(11,`div`,21)(12,`app-action-menu`,22),Jm(`picked`,function(o){let l=Ld(e).$implicit;return $d(HC().onProjectMenu(o,l))}),Nc()()(),SC(13,Qe,2,1,`div`,23),SC(14,Ye,3,0,`div`,24),Nc()}if(n&2){let e,i=t.$implicit,o=HC(),l=yS(o.busy(i));ec(3),zr(`aria-expanded`,o.isExpanded(i.name))(`aria-label`,o.isExpanded(i.name)?o.t().collapse(i.name):o.t().expand(i.name)),ec(),Wm(`name`,o.isExpanded(i.name)?`chevronDown`:`chevronRight`)(`size`,14),ec(),Wm(`state`,i.state),ec(2),pg(i.name),ec(2),mg(` `,o.projectLabelOf(i.state),` · `,o.t().runningOf(i.running,i.total),` `),ec(),TC((e=i.workingDir)?10:-1,e),ec(2),Wm(`label`,o.t().menuAria(i.name))(`items`,o.projectMenu(i)),ec(),TC(l?13:-1),ec(),TC(o.isExpanded(i.name)?14:-1)}}function et(n,t){if(n&1&&($i(0,`p`,10),fS(1),Nc()),n&2){let e=HC();ec(),pg(e.t().empty)}}var Ge;var be;var Le;var $e;var ye;f(()=>{Kr();ra();y$1();y();v();sT();J();dT();x();u$2();_e();G$1();o();Kr();Ge=n=>[`/containers`,n],be=(n,t)=>t.name,Le=(n,t)=>t.id,$e=(n,t)=>t.containerPort;ye=class n{containers=I(u);compose=I(c);t=$t(()=>oT().compose);common=$t(()=>oT().common);loading=this.containers.loading;problem=this.containers.problem;composePending=this.compose.pending;containerPending=this.containers.pending;status=this.compose.status;projects=$t(()=>f$1(this.containers.containers()));expanded=wt(new Set);confirmOpen=wt(!1);fileOpen=wt(!1);fileProject=wt(``);pendingDown=wt(null);bestand=jc(void 0);afbreken=jc(void 0);router=I(fe);route=I(Q);constructor(){this.containers.refresh(),this.compose.loadStatus(),rf(()=>{let t=this.bestand();t!==void 0&&kg(()=>{this.fileProject.set(t),this.fileOpen.set(!0),i(this.router,this.route,`bestand`)})}),rf(()=>{let t=this.afbreken();t!==void 0&&kg(()=>{this.pendingDown.set(t),this.confirmOpen.set(!0),i(this.router,this.route,`afbreken`)})})}isExpanded(t){return this.expanded().has(t)}toggle(t){let e=new Set(this.expanded());e.delete(t)||e.add(t),this.expanded.set(e)}projectLabelOf(t){return this.t().state[t]}busy(t){return this.composePending().has(t.name)||t.containerIds.some(e=>this.containerPending().has(e))}composeBlockedReason(t){let e=this.status();return e!==null&&!e.cliAvailable?this.t().noCli:t.workingDir===null?this.t().noWorkingDir:``}canCompose(t){return this.composeBlockedReason(t)===``}run(t,e){this.containers.runMany(t,e.containerIds)}up(t){this.compose.up(t.name)}projectMenu(t){let e=this.t(),i=this.common(),o=this.busy(t),l=this.canCompose(t),k=l?void 0:this.composeBlockedReason(t);return[{id:`up`,label:e.up,icon:`plus`,disabled:o||!l,hint:k??`docker compose up -d`},{id:`start`,label:i.start,icon:`play`,disabled:o},{id:`stop`,label:i.stop,icon:`stop`,disabled:o},{id:`restart`,label:i.restart,icon:`refresh`,disabled:o},{id:`file`,label:e.file.button,icon:`file`,disabled:t.workingDir===null,separated:!0},{id:`down`,label:e.down,icon:`trash`,danger:!0,disabled:o||!l,hint:k??`docker compose down`,separated:!0}]}onProjectMenu(t,e){t===`up`?this.up(e):t===`file`?this.openFile(e):t===`down`?this.askDown(e):this.run(t,e)}recreate(t,e){this.compose.recreate(t.name,e.name)}openFile(t){this.fileProject.set(t.name),this.fileOpen.set(!0)}askDown(t){this.pendingDown.set(t.name),this.confirmOpen.set(!0)}confirmDown(){let t=this.pendingDown();t!==null&&(this.compose.down(t),this.pendingDown.set(null))}downDescription(){let t=this.pendingDown();return t===null?``:this.t().downDialog.description(t)}static ɵfac=function(e){return new(e||n)};static ɵcmp=wc({type:n,selectors:[[`app-compose-page`]],inputs:{bestand:[1,`bestand`],afbreken:[1,`afbreken`]},decls:18,vars:12,consts:[[1,`flex`,`h-full`,`flex-col`],[1,`shrink-0`,`px-6`,`pt-5`,`pb-3`],[1,`flex`,`flex-wrap`,`items-start`,`gap-4`],[1,`text-xl`,`font-semibold`,`tracking-tight`,`text-ink-100`],[1,`mt-1`,`max-w-prose`,`text-[13px]`,`text-ink-400`],[1,`ml-auto`,`text-right`],[1,`text-[12px]`,`text-ink-500`],[3,`problem`],[1,`min-h-0`,`flex-1`,`space-y-3`,`overflow-y-auto`,`px-6`,`pb-6`],[1,`rounded-lg`,`border`,`border-ink-700`,`bg-ink-850`],[1,`py-10`,`text-center`,`text-[13px]`,`text-ink-400`],[3,`openChange`,`open`,`project`],[3,`openChange`,`confirmed`,`open`,`title`,`description`,`confirmLabel`],[1,`max-w-xs`,`text-[12px]`,`text-warn`],[1,`flex`,`flex-wrap`,`items-center`,`gap-3`,`px-3`,`py-2.5`],[`type`,`button`,1,`mx-focus`,`flex`,`min-w-0`,`cursor-pointer`,`items-center`,`gap-2`,`text-left`,3,`click`],[1,`shrink-0`,`text-ink-500`,3,`name`,`size`],[3,`state`],[1,`truncate`,`text-[14px]`,`font-medium`,`text-ink-100`],[1,`shrink-0`,`text-[12px]`,`text-ink-400`],[1,`min-w-0`,`truncate`,`font-mono`,`text-[11px]`,`text-ink-500`,3,`title`],[1,`ml-auto`,`shrink-0`],[`compact`,``,3,`picked`,`label`,`items`],[1,`px-3`,`pb-2`,`text-[12px]`,`text-ink-500`],[1,`border-t`,`border-ink-800`],[1,`border-b`,`border-ink-800`,`px-3`,`py-2`,`last:border-b-0`],[1,`flex`,`items-center`,`gap-3`],[1,`text-[12px]`,`font-medium`,`text-ink-300`],[`type`,`button`,1,`mx-btn`,`mx-focus`,`ml-auto`,3,`click`,`disabled`,`title`],[`name`,`refresh`,3,`size`],[1,`mt-1`,`flex`,`flex-wrap`,`items-center`,`gap-3`,`pl-3`,`text-[13px]`],[1,`mx-focus`,`min-w-0`,`truncate`,`text-ink-100`,`hover:text-accent`,`hover:underline`,3,`routerLink`],[1,`shrink-0`,`text-ink-500`],[1,`min-w-0`,`truncate`,`text-ink-400`],[1,`mr-2`]],template:function(e,i){if(e&1&&($i(0,`section`,0)(1,`div`,1)(2,`div`,2)(3,`div`)(4,`h1`,3),fS(5),Nc(),$i(6,`p`,4),fS(7),Nc()(),$i(8,`div`,5),SC(9,We,2,1),SC(10,He,2,1,`div`,6),Nc()(),Gm(11,`app-page-messages`,7),Nc(),$i(12,`div`,8),Tc(13,Ze,15,14,`div`,9,be,!1,et,2,1,`p`,10),Nc()(),$i(16,`app-compose-file-dialog`,11),vg(`openChange`,function(l){return vS(i.fileOpen,l)||(i.fileOpen=l),l}),Nc(),$i(17,`app-confirm-dialog`,12),vg(`openChange`,function(l){return vS(i.confirmOpen,l)||(i.confirmOpen=l),l}),Jm(`confirmed`,function(){return i.confirmDown()}),Nc()),e&2){let o;ec(5),pg(i.t().title),ec(2),pg(i.t().intro),ec(2),TC((o=i.status())?9:-1,o),ec(),TC(i.loading()?10:-1),ec(),Wm(`problem`,i.problem()),ec(2),kc(i.projects()),ec(3),hg(`open`,i.fileOpen),Wm(`project`,i.fileProject()),ec(),hg(`open`,i.confirmOpen),Wm(`title`,i.t().downDialog.title)(`description`,i.downDescription())(`confirmLabel`,i.t().downDialog.confirm)}},dependencies:[Yt,My,W,u$1,c$1,G,V],encapsulation:2})}})();export{ye as ComposePage};
4
+ `)}problem(){let t=this.view()===`resolved`?this.config():this.files();return t?.ok===!1?t.problem:null}async copy(){let t=this.body();if(t!==null)try{await navigator.clipboard.writeText(t),this.copyProblem.set(null),this.copied.set(!0),setTimeout(()=>this.copied.set(!1),1500)}catch(e){this.copyProblem.set(this.t().copyFailed(eH(e)))}}async load(t){this.files.set(null),this.config.set(null),this.copied.set(!1),this.copyProblem.set(null),this.view.set(`raw`);let[e,i]=await Promise.all([window.electron.compose.files(t).catch(o=>({ok:!1,problem:eH(o)})),window.electron.compose.config(t).catch(o=>({ok:!1,problem:eH(o)}))]);this.files.set(e),this.config.set(i)}static ɵfac=function(e){return new(e||n)};static ɵcmp=wc({type:n,selectors:[[`app-compose-file-dialog`]],inputs:{open:[1,`open`],project:[1,`project`]},outputs:{open:`openChange`},decls:2,vars:1,consts:[[`rdxDialogRoot`,``,3,`openChange`,`open`],[`rdxDialogPortal`,``],[`rdxDialogBackdrop`,``,1,`fixed`,`inset-0`,`z-40`,`bg-black/50`],[`rdxDialogViewport`,``,1,`fixed`,`inset-0`,`z-50`,`grid`,`place-items-center`,`p-4`],[`rdxDialogPopup`,``,`data-testid`,`compose-file-dialog`,1,`flex`,`max-h-[85vh]`,`w-full`,`max-w-4xl`,`flex-col`,`rounded-lg`,`border`,`border-ink-700`,`bg-ink-850`,`p-5`,`shadow-2xl`],[`rdxDialogTitle`,``,1,`text-[15px]`,`font-semibold`,`text-ink-100`],[`rdxDialogDescription`,``,1,`mt-1`,`text-[13px]`,`text-ink-400`],[1,`mt-3`,`flex`,`shrink-0`,`gap-1`],[`type`,`button`,1,`mx-btn`,`mx-focus`,3,`border-accent`,`text-accent`],[`data-testid`,`compose-file-text`,1,`mt-3`,`min-h-0`,`flex-1`,`overflow-auto`,`rounded-md`,`border`,`border-ink-700`,`bg-ink-900`,`p-3`,`font-mono`,`text-[12px]`,`leading-relaxed`,`whitespace-pre`,`text-ink-200`],[1,`mt-4`,`rounded-md`,`border`,`border-danger/40`,`bg-danger/10`,`px-3`,`py-2`,`text-[13px]`,`text-danger`],[1,`mt-4`,`text-[13px]`,`text-ink-400`],[1,`mt-4`,`flex`,`items-center`,`justify-end`,`gap-2`],[1,`mr-auto`,`text-[12px]`,`text-danger`],[`type`,`button`,`rdxDialogClose`,``,1,`mx-btn`,`mx-focus`],[`name`,`close`,3,`size`],[`type`,`button`,`data-testid`,`compose-file-copy`,1,`mx-btn`,`mx-focus`,3,`click`,`disabled`],[3,`name`,`size`],[`type`,`button`,1,`mx-btn`,`mx-focus`,3,`click`]],template:function(e,i){e&1&&($i(0,`div`,0),vg(`openChange`,function(l){return vS(i.open,l)||(i.open=l),l}),_m(1,Be,21,10,`ng-template`,1),Nc()),e&2&&hg(`open`,i.open)},dependencies:[ie,ln,an,pn,cn,fn,dn,un,My],encapsulation:2})}});function Ae(n,t){if(n&1&&($i(0,`div`,6),fS(1),Nc()),n&2){let e=HC();ec(),pg(e.version)}}function ze(n,t){if(n&1&&($i(0,`div`,13),fS(1),Nc()),n&2){let e=HC();ec(),pg(e.problem)}}function We(n,t){n&1&&SC(0,Ae,2,1,`div`,6)(1,ze,2,1,`div`,13),n&2&&kC(t.cliAvailable?0:1)}function He(n,t){if(n&1&&($i(0,`div`,6),fS(1),Nc()),n&2){let e=HC();ec(),pg(e.t().updating)}}function qe(n,t){if(n&1&&($i(0,`span`,20),fS(1),Nc()),n&2){let e=t;Wm(`title`,e),ec(),pg(e)}}function Qe(n,t){if(n&1&&($i(0,`div`,23),fS(1),Nc()),n&2){let e=HC(2);ec(),pg(e.t().busy)}}function Je(n,t){if(n&1&&($i(0,`span`,34),fS(1),Nc()),n&2){let e=t.$implicit;ec(),Ac(` `,e.hostPort?e.hostPort+`:`+e.containerPort:e.containerPort,` `)}}function Ke(n,t){if(n&1&&($i(0,`span`,32),kc(1,Je,2,1,`span`,34,$e),Nc()),n&2){let e=HC().$implicit;ec(),Tc(e.ports.slice(0,2))}}function Ue(n,t){if(n&1&&($i(0,`div`,30),Gm(1,`app-state-dot`,17),$i(2,`a`,31),fS(3),Nc(),$i(4,`span`,32),fS(5),Nc(),$i(6,`span`,33),fS(7),Nc(),SC(8,Ke,3,0,`span`,32),Nc()),n&2){let e=t.$implicit;ec(),Wm(`state`,e.state),ec(),Wm(`routerLink`,SS(6,Ge,e.id)),ec(),pg(e.name),ec(2),pg(e.status),ec(2),pg(e.image),ec(),kC(e.ports.length>0?8:-1)}}function Xe(n,t){if(n&1){let e=RC();$i(0,`div`,25)(1,`div`,26)(2,`div`,27),fS(3),Nc(),$i(4,`button`,28),Jm(`click`,function(){let o=Ld(e).$implicit,l=HC(2).$implicit;return $d(HC().recreate(l,o))}),Gm(5,`app-icon`,29),fS(6),Nc()(),kc(7,Ue,9,8,`div`,30,Le),Nc()}if(n&2){let e=t.$implicit,i=HC(2).$implicit,o=bS(0),l=HC();ec(3),pg(e.name),ec(),Wm(`disabled`,o||!l.canCompose(i))(`title`,l.canCompose(i)?l.t().recreateTitle:l.composeBlockedReason(i)),zr(`data-testid`,`compose-recreate-`+e.name)(`aria-label`,l.t().recreateAria(e.name)),ec(),Wm(`size`,14),ec(),Ac(` `,l.t().recreate,` `),ec(),Tc(e.containers)}}function Ye(n,t){if(n&1&&($i(0,`div`,24),kc(1,Xe,9,7,`div`,25,be),Nc()),n&2){let e=HC().$implicit;ec(),Tc(e.services)}}function Ze(n,t){if(n&1){let e=RC();bg(0),$i(1,`div`,9)(2,`div`,14)(3,`button`,15),Jm(`click`,function(){let o=Ld(e).$implicit;return $d(HC().toggle(o.name))}),Gm(4,`app-icon`,16)(5,`app-state-dot`,17),$i(6,`span`,18),fS(7),Nc()(),$i(8,`span`,19),fS(9),Nc(),SC(10,qe,2,2,`span`,20),$i(11,`div`,21)(12,`app-action-menu`,22),Jm(`picked`,function(o){let l=Ld(e).$implicit;return $d(HC().onProjectMenu(o,l))}),Nc()()(),SC(13,Qe,2,1,`div`,23),SC(14,Ye,3,0,`div`,24),Nc()}if(n&2){let e,i=t.$implicit,o=HC(),l=yS(o.busy(i));ec(3),zr(`aria-expanded`,o.isExpanded(i.name))(`aria-label`,o.isExpanded(i.name)?o.t().collapse(i.name):o.t().expand(i.name)),ec(),Wm(`name`,o.isExpanded(i.name)?`chevronDown`:`chevronRight`)(`size`,14),ec(),Wm(`state`,i.state),ec(2),pg(i.name),ec(2),mg(` `,o.projectLabelOf(i.state),` · `,o.t().runningOf(i.running,i.total),` `),ec(),kC((e=i.workingDir)?10:-1,e),ec(2),Wm(`label`,o.t().menuAria(i.name))(`items`,o.projectMenu(i)),ec(),kC(l?13:-1),ec(),kC(o.isExpanded(i.name)?14:-1)}}function et(n,t){if(n&1&&($i(0,`p`,10),fS(1),Nc()),n&2){let e=HC();ec(),pg(e.t().empty)}}var Ge;var be;var Le;var $e;var ye;f(()=>{Kr();ra();y$1();y();v();sk();J();dk();x();u$2();_e();G$1();o();Kr();Ge=n=>[`/containers`,n],be=(n,t)=>t.name,Le=(n,t)=>t.id,$e=(n,t)=>t.containerPort;ye=class n{containers=I(u);compose=I(c);t=$t(()=>ok().compose);common=$t(()=>ok().common);loading=this.containers.loading;problem=this.containers.problem;composePending=this.compose.pending;containerPending=this.containers.pending;status=this.compose.status;projects=$t(()=>f$1(this.containers.containers()));expanded=wt(new Set);confirmOpen=wt(!1);fileOpen=wt(!1);fileProject=wt(``);pendingDown=wt(null);bestand=jc(void 0);afbreken=jc(void 0);router=I(fe);route=I(Q);constructor(){this.containers.refresh(),this.compose.loadStatus(),rf(()=>{let t=this.bestand();t!==void 0&&Tg(()=>{this.fileProject.set(t),this.fileOpen.set(!0),i(this.router,this.route,`bestand`)})}),rf(()=>{let t=this.afbreken();t!==void 0&&Tg(()=>{this.pendingDown.set(t),this.confirmOpen.set(!0),i(this.router,this.route,`afbreken`)})})}isExpanded(t){return this.expanded().has(t)}toggle(t){let e=new Set(this.expanded());e.delete(t)||e.add(t),this.expanded.set(e)}projectLabelOf(t){return this.t().state[t]}busy(t){return this.composePending().has(t.name)||t.containerIds.some(e=>this.containerPending().has(e))}composeBlockedReason(t){let e=this.status();return e!==null&&!e.cliAvailable?this.t().noCli:t.workingDir===null?this.t().noWorkingDir:``}canCompose(t){return this.composeBlockedReason(t)===``}run(t,e){this.containers.runMany(t,e.containerIds)}up(t){this.compose.up(t.name)}projectMenu(t){let e=this.t(),i=this.common(),o=this.busy(t),l=this.canCompose(t),k=l?void 0:this.composeBlockedReason(t);return[{id:`up`,label:e.up,icon:`plus`,disabled:o||!l,hint:k??`docker compose up -d`},{id:`start`,label:i.start,icon:`play`,disabled:o},{id:`stop`,label:i.stop,icon:`stop`,disabled:o},{id:`restart`,label:i.restart,icon:`refresh`,disabled:o},{id:`file`,label:e.file.button,icon:`file`,disabled:t.workingDir===null,separated:!0},{id:`down`,label:e.down,icon:`trash`,danger:!0,disabled:o||!l,hint:k??`docker compose down`,separated:!0}]}onProjectMenu(t,e){t===`up`?this.up(e):t===`file`?this.openFile(e):t===`down`?this.askDown(e):this.run(t,e)}recreate(t,e){this.compose.recreate(t.name,e.name)}openFile(t){this.fileProject.set(t.name),this.fileOpen.set(!0)}askDown(t){this.pendingDown.set(t.name),this.confirmOpen.set(!0)}confirmDown(){let t=this.pendingDown();t!==null&&(this.compose.down(t),this.pendingDown.set(null))}downDescription(){let t=this.pendingDown();return t===null?``:this.t().downDialog.description(t)}static ɵfac=function(e){return new(e||n)};static ɵcmp=wc({type:n,selectors:[[`app-compose-page`]],inputs:{bestand:[1,`bestand`],afbreken:[1,`afbreken`]},decls:18,vars:12,consts:[[1,`flex`,`h-full`,`flex-col`],[1,`shrink-0`,`px-6`,`pt-5`,`pb-3`],[1,`flex`,`flex-wrap`,`items-start`,`gap-4`],[1,`text-xl`,`font-semibold`,`tracking-tight`,`text-ink-100`],[1,`mt-1`,`max-w-prose`,`text-[13px]`,`text-ink-400`],[1,`ml-auto`,`text-right`],[1,`text-[12px]`,`text-ink-500`],[3,`problem`],[1,`min-h-0`,`flex-1`,`space-y-3`,`overflow-y-auto`,`px-6`,`pb-6`],[1,`rounded-lg`,`border`,`border-ink-700`,`bg-ink-850`],[1,`py-10`,`text-center`,`text-[13px]`,`text-ink-400`],[3,`openChange`,`open`,`project`],[3,`openChange`,`confirmed`,`open`,`title`,`description`,`confirmLabel`],[1,`max-w-xs`,`text-[12px]`,`text-warn`],[1,`flex`,`flex-wrap`,`items-center`,`gap-3`,`px-3`,`py-2.5`],[`type`,`button`,1,`mx-focus`,`flex`,`min-w-0`,`cursor-pointer`,`items-center`,`gap-2`,`text-left`,3,`click`],[1,`shrink-0`,`text-ink-500`,3,`name`,`size`],[3,`state`],[1,`truncate`,`text-[14px]`,`font-medium`,`text-ink-100`],[1,`shrink-0`,`text-[12px]`,`text-ink-400`],[1,`min-w-0`,`truncate`,`font-mono`,`text-[11px]`,`text-ink-500`,3,`title`],[1,`ml-auto`,`shrink-0`],[`compact`,``,3,`picked`,`label`,`items`],[1,`px-3`,`pb-2`,`text-[12px]`,`text-ink-500`],[1,`border-t`,`border-ink-800`],[1,`border-b`,`border-ink-800`,`px-3`,`py-2`,`last:border-b-0`],[1,`flex`,`items-center`,`gap-3`],[1,`text-[12px]`,`font-medium`,`text-ink-300`],[`type`,`button`,1,`mx-btn`,`mx-focus`,`ml-auto`,3,`click`,`disabled`,`title`],[`name`,`refresh`,3,`size`],[1,`mt-1`,`flex`,`flex-wrap`,`items-center`,`gap-3`,`pl-3`,`text-[13px]`],[1,`mx-focus`,`min-w-0`,`truncate`,`text-ink-100`,`hover:text-accent`,`hover:underline`,3,`routerLink`],[1,`shrink-0`,`text-ink-500`],[1,`min-w-0`,`truncate`,`text-ink-400`],[1,`mr-2`]],template:function(e,i){if(e&1&&($i(0,`section`,0)(1,`div`,1)(2,`div`,2)(3,`div`)(4,`h1`,3),fS(5),Nc(),$i(6,`p`,4),fS(7),Nc()(),$i(8,`div`,5),SC(9,We,2,1),SC(10,He,2,1,`div`,6),Nc()(),Gm(11,`app-page-messages`,7),Nc(),$i(12,`div`,8),kc(13,Ze,15,14,`div`,9,be,!1,et,2,1,`p`,10),Nc()(),$i(16,`app-compose-file-dialog`,11),vg(`openChange`,function(l){return vS(i.fileOpen,l)||(i.fileOpen=l),l}),Nc(),$i(17,`app-confirm-dialog`,12),vg(`openChange`,function(l){return vS(i.confirmOpen,l)||(i.confirmOpen=l),l}),Jm(`confirmed`,function(){return i.confirmDown()}),Nc()),e&2){let o;ec(5),pg(i.t().title),ec(2),pg(i.t().intro),ec(2),kC((o=i.status())?9:-1,o),ec(),kC(i.loading()?10:-1),ec(),Wm(`problem`,i.problem()),ec(2),Tc(i.projects()),ec(3),hg(`open`,i.fileOpen),Wm(`project`,i.fileProject()),ec(),hg(`open`,i.confirmOpen),Wm(`title`,i.t().downDialog.title)(`description`,i.downDescription())(`confirmLabel`,i.t().downDialog.confirm)}},dependencies:[Yt,My,W,u$1,c$1,G,V],encapsulation:2})}})();export{ye as ComposePage};
@@ -0,0 +1 @@
1
+ import"./chunk-PPlXONP3.js";import"./chunk-GnwhPzR0.js";import{n as ro,t as Ql}from"./chunk-ChzmfIu4.js";Ql();export{ro as TerminalView};
@@ -1 +1 @@
1
- import{an as f$1}from"./chunk-DOxgdvK8.js";function g(a,t){return a===0?`stopped`:a===t?`running`:`partial`}function f(a){let t=new Map;for(let n of a){if(n.composeProject===null)continue;let o=t.get(n.composeProject);o===void 0?t.set(n.composeProject,[n]):o.push(n)}let c=[];for(let[n,o]of t){let i=new Map;for(let e of o){let r=e.composeService??e.name,s=i.get(r);s===void 0?i.set(r,[e]):s.push(e)}let l=[...i.entries()].map(([e,r])=>({name:e,containers:[...r].sort((s,u)=>s.name.localeCompare(u.name))})).sort((e,r)=>e.name.localeCompare(r.name)),m=o.filter(e=>e.state===`running`).length,p=o.find(e=>e.composeWorkingDir!==null);c.push({name:n,workingDir:p?.composeWorkingDir??null,configFiles:p?.composeConfigFiles??[],services:l,containerIds:o.map(e=>e.id),total:o.length,running:m,state:g(m,o.length)})}return c.sort((n,o)=>n.name.localeCompare(o.name))}var y=f$1(()=>{});export{y as n,f as t};
1
+ import{ln as f$1}from"./chunk-PPlXONP3.js";function g(a,t){return a===0?`stopped`:a===t?`running`:`partial`}function f(a){let t=new Map;for(let n of a){if(n.composeProject===null)continue;let o=t.get(n.composeProject);o===void 0?t.set(n.composeProject,[n]):o.push(n)}let c=[];for(let[n,o]of t){let i=new Map;for(let e of o){let r=e.composeService??e.name,s=i.get(r);s===void 0?i.set(r,[e]):s.push(e)}let l=[...i.entries()].map(([e,r])=>({name:e,containers:[...r].sort((s,u)=>s.name.localeCompare(u.name))})).sort((e,r)=>e.name.localeCompare(r.name)),m=o.filter(e=>e.state===`running`).length,p=o.find(e=>e.composeWorkingDir!==null);c.push({name:n,workingDir:p?.composeWorkingDir??null,configFiles:p?.composeConfigFiles??[],services:l,containerIds:o.map(e=>e.id),total:o.length,running:m,state:g(m,o.length)})}return c.sort((n,o)=>n.name.localeCompare(o.name))}var y=f$1(()=>{});export{y as n,f as t};
@@ -1 +1 @@
1
- import{$n as sT,Bn as oT,H as Kr,P as I,Pt as X,_r as wt,an as f$1,jn as lT,lr as ve,o as $t,rn as eH}from"./chunk-DOxgdvK8.js";import{n as u,t as f$2}from"./chunk-C7ZKT99Y.js";var y;var f=f$1(()=>{Kr();lT();f$2();sT();Kr();y=class s{toast=I(u);items=wt([]);busy=wt(!1);loadProblem=wt(null);running=wt(new Set);networks=this.items.asReadonly();loading=this.busy.asReadonly();problem=this.loadProblem.asReadonly();pending=this.running.asReadonly();unusedCount=$t(()=>this.items().filter(e=>!e.builtIn&&e.connected===0).length);constructor(){I(ve).onDestroy(window.electron.events.subscribe(e=>{e.includes(`network`)&&this.refresh()}))}async refresh(){this.busy.set(!0);try{this.items.set(await window.electron.networks.list()),this.loadProblem.set(null)}catch(e){this.loadProblem.set(eH(e))}finally{this.busy.set(!1)}}async create(e){let t;try{let r=await window.electron.networks.create(e);t=r.ok?null:r.problem}catch(r){t=eH(r)}return t===null&&(this.toast.success(oT().networks.created(e.name)),await this.refresh()),t}async remove(e){this.running.update(t=>new Set(t).add(e));try{let t=await window.electron.networks.remove(e);t.ok||this.toast.error(t.problem)}finally{this.running.update(t=>{let r=new Set(t);return r.delete(e),r})}await this.refresh()}async removeMany(e){await Promise.all(e.map(t=>this.remove(t)))}async prune(){this.busy.set(!0);try{let e=await window.electron.networks.prune();e.ok?this.toast.success(e.removed===0?oT().common.nothingToPrune:oT().networks.pruned(e.removed)):this.toast.error(e.problem)}finally{this.busy.set(!1)}await this.refresh()}static ɵfac=function(t){return new(t||s)};static ɵprov=X({token:s,factory:s.ɵfac,providedIn:`root`})}});export{y as n,f as t};
1
+ import{H as Kr,Mn as lk,P as I,Vn as ok,_r as wt,er as sk,ln as f$1,lr as ve,o as $t,sn as eH,zt as X}from"./chunk-PPlXONP3.js";import{n as u,t as f$2}from"./chunk-Dob_vN7f.js";var y;var f=f$1(()=>{Kr();lk();f$2();sk();Kr();y=class s{toast=I(u);items=wt([]);busy=wt(!1);loadProblem=wt(null);running=wt(new Set);networks=this.items.asReadonly();loading=this.busy.asReadonly();problem=this.loadProblem.asReadonly();pending=this.running.asReadonly();unusedCount=$t(()=>this.items().filter(e=>!e.builtIn&&e.connected===0).length);constructor(){I(ve).onDestroy(window.electron.events.subscribe(e=>{e.includes(`network`)&&this.refresh()}))}async refresh(){this.busy.set(!0);try{this.items.set(await window.electron.networks.list()),this.loadProblem.set(null)}catch(e){this.loadProblem.set(eH(e))}finally{this.busy.set(!1)}}async create(e){let t;try{let r=await window.electron.networks.create(e);t=r.ok?null:r.problem}catch(r){t=eH(r)}return t===null&&(this.toast.success(ok().networks.created(e.name)),await this.refresh()),t}async remove(e){this.running.update(t=>new Set(t).add(e));try{let t=await window.electron.networks.remove(e);t.ok||this.toast.error(t.problem)}finally{this.running.update(t=>{let r=new Set(t);return r.delete(e),r})}await this.refresh()}async removeMany(e){await Promise.all(e.map(t=>this.remove(t)))}async prune(){this.busy.set(!0);try{let e=await window.electron.networks.prune();e.ok?this.toast.success(e.removed===0?ok().common.nothingToPrune:ok().networks.pruned(e.removed)):this.toast.error(e.problem)}finally{this.busy.set(!1)}await this.refresh()}static ɵfac=function(t){return new(t||s)};static ɵprov=X({token:s,factory:s.ɵfac,providedIn:`root`})}});export{y as n,f as t};
@@ -1 +1 @@
1
- import{$n as sT,At as Wm,B as Jm,Bn as oT,Dn as kg,En as kc,Fn as mj,Gn as pg,H as Kr,In as nS,J as My,M as HC,P as I,Sn as jc,Tr as zr,Vt as _c,W as Ld,Wt as ag,X as Nc,Zn as rf,_r as wt,an as f,bt as Tc,c as Am,en as dT,hr as wc,ht as SC,i as $i,in as ec,jn as lT,k as Gm,lt as RC,o as $t,on as fS,r as $d,rn as eH,sr as vS,ur as vg,vn as hg,yt as TC}from"./chunk-DOxgdvK8.js";import"./chunk-C7ZKT99Y.js";import{i as h,n as N,r as d}from"./chunk-Dj0SqC61.js";import{n as w,t as B}from"./chunk-Dk2BOjJw.js";import{n as x,t as u}from"./chunk-Cs8Jh9po.js";import"./chunk-Bo4H3_Rk.js";import{r as Q$1,s as fe$1,u as ra}from"./chunk-uyqlb3cB.js";import"./chunk-BDeMOmys.js";import{_ as pn,d as dn,f as fn,g as ln,l as an,m as ie,r as Je$1,u as cn,v as un}from"./chunk-C5hTG6ZQ.js";import{i as z,n as oe,r as x$1}from"./chunk-BIryu19T.js";import{n as P,t as K}from"./chunk-ltArY2xW.js";import{n as p,t as M}from"./chunk-DYUws9mp.js";import{n as o,t as i}from"./chunk-Dh7vYMc8.js";import{n as V,t as G$1}from"./chunk-BgAYDwld.js";import{n as W,t as J}from"./chunk-sKoSitq-.js";function Be(i,t){if(i&1){let e=RC();$i(0,`label`,12)(1,`input`,20),Jm(`change`,function(){let l=Ld(e).$implicit;return $d(HC(2).kind.set(l.kind))}),Nc(),$i(2,`span`)(3,`span`,21),fS(4),Nc(),$i(5,`span`,22),fS(6),Nc()()()}if(i&2){let e=t.$implicit,n=HC(2);ec(),Wm(`value`,e.kind)(`checked`,n.kind()===e.kind)(`disabled`,n.busy()),ec(3),pg(e.label),ec(2),pg(e.hint)}}function Ne(i,t){if(i&1){let e=RC();$i(0,`label`,8)(1,`span`,9),fS(2),Nc(),$i(3,`input`,23),Jm(`input`,function(l){Ld(e);return $d(HC(2).path.set(l.target.value))}),Nc(),$i(4,`span`,24),fS(5),Nc()()}if(i&2){let e=HC(2);ec(2),pg(e.t().folderLabel),ec(),nS(e.field),Wm(`value`,e.path())(`disabled`,e.busy()),ec(2),pg(e.t().folderHint)}}function ze(i,t){if(i&1){let e=RC();$i(0,`label`,8)(1,`span`,9),fS(2),Nc(),$i(3,`input`,25),Jm(`input`,function(l){Ld(e);return $d(HC(2).server.set(l.target.value))}),Nc()(),$i(4,`label`,8)(5,`span`,9),fS(6),Nc(),$i(7,`input`,26),Jm(`input`,function(l){Ld(e);return $d(HC(2).path.set(l.target.value))}),Nc(),$i(8,`span`,24),fS(9),Nc()()}if(i&2){let e=HC(2);ec(2),pg(e.t().nfsServerLabel),ec(),nS(e.field),Wm(`value`,e.server())(`disabled`,e.busy()),ec(3),pg(e.t().nfsPathLabel),ec(),nS(e.field),Wm(`value`,e.path())(`disabled`,e.busy()),ec(2),pg(e.t().nfsHint)}}function Re(i,t){if(i&1){let e=RC();$i(0,`details`,13)(1,`summary`,27),fS(2),Nc(),$i(3,`label`,28)(4,`span`,9),fS(5),Nc(),$i(6,`input`,29),Jm(`input`,function(l){Ld(e);return $d(HC(2).driver.set(l.target.value))}),Nc(),$i(7,`span`,24),fS(8),Nc()()()}if(i&2){let e=HC(2);Wm(`open`,e.driver()!==`local`),ec(2),pg(e.t().advanced),ec(3),pg(e.t().driverLabel),ec(),nS(e.field),Wm(`value`,e.driver())(`disabled`,e.busy()),ec(2),pg(e.t().driverHint)}}function Oe(i,t){i&1&&($i(0,`p`,14),fS(1),Nc()),i&2&&(ec(),pg(t))}function Le(i,t){if(i&1){let e=RC();Gm(0,`div`,2),$i(1,`div`,3)(2,`div`,4)(3,`h2`,5),fS(4),Nc(),$i(5,`p`,6),fS(6),Nc(),$i(7,`form`,7),Jm(`submit`,function(l){Ld(e);return $d(HC().submit(l))}),$i(8,`label`,8)(9,`span`,9),fS(10),Nc(),$i(11,`input`,10),Jm(`input`,function(l){Ld(e);return $d(HC().name.set(l.target.value))}),Nc()(),$i(12,`fieldset`)(13,`legend`,9),fS(14),Nc(),$i(15,`div`,11),Tc(16,Be,7,5,`label`,12,Pe),Nc()(),SC(18,Ne,6,6,`label`,8)(19,ze,10,11)(20,Re,9,8,`details`,13),SC(21,Oe,2,1,`p`,14),$i(22,`div`,15)(23,`button`,16),Gm(24,`app-icon`,17),fS(25),Nc(),$i(26,`button`,18),Gm(27,`app-icon`,19),fS(28),Nc()()()()()}if(i&2){let e,n,l=HC();ec(4),pg(l.t().title),ec(2),pg(l.t().description),ec(4),pg(l.t().nameLabel),ec(),nS(l.field),Wm(`placeholder`,l.t().namePlaceholder)(`value`,l.name())(`disabled`,l.busy()),ec(3),pg(l.t().storageLabel),ec(2),kc(l.kinds()),ec(2),TC((e=l.kind())===`folder`?18:e===`nfs`?19:20),ec(3),TC((n=l.problem())?21:-1,n),ec(3),Wm(`size`,14),ec(),_c(` `,l.common().cancel,` `),ec(),Wm(`disabled`,!l.canSubmit()),ec(),Wm(`size`,14),ec(),_c(` `,l.busy()?l.t().creating:l.t().submit,` `)}}var Pe;var We;var Q;var fe=f(()=>{Kr();Je$1();B();dT();sT();Kr();Pe=(i,t)=>t.kind;We=`mx-focus mt-1 w-full rounded-md border border-ink-700 bg-ink-800 px-3 py-1.5 text-[13px] text-ink-100 placeholder:text-ink-500`,Q=class i{store=I(w);open=mj(!1);t=$t(()=>oT().volumes.createDialog);common=$t(()=>oT().common);field=We;kinds=$t(()=>{let t=this.t();return[{kind:`docker`,label:t.storage.docker,hint:t.storage.dockerHint},{kind:`folder`,label:t.storage.folder,hint:t.storage.folderHint},{kind:`nfs`,label:t.storage.nfs,hint:t.storage.nfsHint}]});name=wt(``);kind=wt(`docker`);driver=wt(`local`);path=wt(``);server=wt(``);busy=wt(!1);problem=wt(null);storage=$t(()=>{let t=this.path().trim();switch(this.kind()){case`docker`:return this.driver().trim()===``?null:{kind:`docker`,driver:this.driver().trim()};case`folder`:return t===``?null:{kind:`folder`,path:t};case`nfs`:return t===``||this.server().trim()===``?null:{kind:`nfs`,server:this.server().trim(),path:t}}});canSubmit=$t(()=>!this.busy()&&this.name().trim()!==``&&this.storage()!==null);constructor(){rf(()=>{this.open()&&kg(()=>{this.name.set(``),this.kind.set(`docker`),this.driver.set(`local`),this.path.set(``),this.server.set(``),this.problem.set(null)})})}submit(t){t.preventDefault();let e=this.storage();!this.canSubmit()||e===null||(this.busy.set(!0),this.problem.set(null),this.store.create({name:this.name().trim(),storage:e}).then(n=>{this.problem.set(n),n===null&&this.open.set(!1)}).finally(()=>this.busy.set(!1)))}static ɵfac=function(e){return new(e||i)};static ɵcmp=wc({type:i,selectors:[[`app-create-volume-dialog`]],inputs:{open:[1,`open`]},outputs:{open:`openChange`},decls:2,vars:1,consts:[[`rdxDialogRoot`,``,3,`openChange`,`open`],[`rdxDialogPortal`,``],[`rdxDialogBackdrop`,``,1,`fixed`,`inset-0`,`z-40`,`bg-black/50`],[`rdxDialogViewport`,``,1,`fixed`,`inset-0`,`z-50`,`grid`,`place-items-center`,`p-4`],[`rdxDialogPopup`,``,1,`w-full`,`max-w-md`,`rounded-lg`,`border`,`border-ink-700`,`bg-ink-850`,`p-5`,`shadow-2xl`],[`rdxDialogTitle`,``,1,`text-[15px]`,`font-semibold`,`text-ink-100`],[`rdxDialogDescription`,``,1,`mt-1`,`text-[13px]`,`text-ink-400`],[1,`mt-4`,`space-y-3`,3,`submit`],[1,`block`],[1,`text-[12px]`,`text-ink-400`],[`type`,`text`,`autocomplete`,`off`,`spellcheck`,`false`,3,`input`,`placeholder`,`value`,`disabled`],[1,`mt-1`,`space-y-1`],[1,`flex`,`cursor-pointer`,`items-start`,`gap-2`,`rounded-md`,`px-2`,`py-1.5`,`hover:bg-ink-800`],[1,`text-[12px]`,`text-ink-400`,3,`open`],[`role`,`alert`,1,`text-[13px]`,`text-danger`],[1,`flex`,`justify-end`,`gap-2`,`pt-2`],[`type`,`button`,`rdxDialogClose`,``,1,`mx-btn`,`mx-focus`],[`name`,`close`,3,`size`],[`type`,`submit`,1,`mx-btn`,`mx-focus`,3,`disabled`],[`name`,`plus`,3,`size`],[`type`,`radio`,`name`,`volume-storage`,1,`mt-0.5`,`accent-accent`,3,`change`,`value`,`checked`,`disabled`],[1,`block`,`text-[13px]`,`text-ink-100`],[1,`block`,`text-[12px]`,`text-ink-500`],[`type`,`text`,`placeholder`,`/srv/data`,`autocomplete`,`off`,`spellcheck`,`false`,3,`input`,`value`,`disabled`],[1,`mt-1`,`block`,`text-[12px]`,`text-ink-500`],[`type`,`text`,`placeholder`,`nas.local`,`autocomplete`,`off`,`spellcheck`,`false`,3,`input`,`value`,`disabled`],[`type`,`text`,`placeholder`,`/volume1/data`,`autocomplete`,`off`,`spellcheck`,`false`,3,`input`,`value`,`disabled`],[1,`cursor-pointer`,`select-none`],[1,`mt-2`,`block`],[`type`,`text`,`autocomplete`,`off`,`spellcheck`,`false`,3,`input`,`value`,`disabled`]],template:function(e,n){e&1&&($i(0,`div`,0),vg(`openChange`,function(s){return vS(n.open,s)||(n.open=s),s}),Am(1,Le,29,16,`ng-template`,1),Nc()),e&2&&hg(`open`,n.open)},dependencies:[ie,ln,an,pn,cn,fn,dn,un,My],encapsulation:2})}});function $e(i,t){if(i&1&&($i(0,`span`,17),fS(1),Nc()),i&2){let e=HC().$implicit;ec(),pg(e.label)}}function je(i,t){i&1&&($i(0,`span`,19),fS(1,`/`),Nc())}function Ae(i,t){if(i&1){let e=RC();$i(0,`button`,18),Jm(`click`,function(){Ld(e);let l=HC().$implicit;return $d(HC(2).go(l.path))}),fS(1),Nc(),SC(2,je,2,0,`span`,19)}if(i&2){let e=HC().$implicit;ec(),_c(` `,e.label,` `),ec(),TC(e.path!==`/`?2:-1)}}function He(i,t){if(i&1&&SC(0,$e,2,1,`span`,17)(1,Ae,3,2),i&2){let e=t.$index,n=t.$count;TC(e===n-1?0:1)}}function Ke(i,t){i&1&&($i(0,`p`,11),fS(1),Nc()),i&2&&(ec(),pg(t))}function qe(i,t){if(i&1&&($i(0,`p`,12),fS(1),Nc()),i&2){let e=HC(2);ec(),pg(e.t().loading)}}function Qe(i,t){if(i&1&&($i(0,`p`,12),fS(1),Nc()),i&2){let e=HC(2);ec(),pg(e.t().empty)}}function Ge(i,t){if(i&1){let e=RC();$i(0,`button`,24),Jm(`click`,function(){Ld(e);let l=HC().$implicit,s=HC(3);return $d(s.go(s.childOf(l)))}),fS(1),Nc()}if(i&2){let e=HC().$implicit;ec(),_c(` `,e.name,` `)}}function Je(i,t){if(i&1&&($i(0,`span`,23),fS(1),Nc()),i&2){let e=HC().$implicit;ec(),pg(e.name)}}function Xe(i,t){if(i&1&&($i(0,`li`,20),Gm(1,`app-icon`,21),SC(2,Ge,2,1,`button`,22)(3,Je,2,1,`span`,23),Nc()),i&2){let e=t.$implicit;ec(),ag(`text-accent`,e.kind===`dir`)(`text-ink-500`,e.kind===`file`),Wm(`name`,e.kind===`dir`?`folder`:`file`)(`size`,15),ec(),TC(e.kind===`dir`?2:3)}}function Ye(i,t){if(i&1&&($i(0,`ul`,13),Tc(1,Xe,4,7,`li`,20,Fe),Nc()),i&2){let e=HC(2);ec(),kc(e.entries())}}function Ze(i,t){if(i&1){let e=RC();Gm(0,`div`,2),$i(1,`div`,3)(2,`div`,4)(3,`h2`,5),fS(4),Nc(),$i(5,`p`,6),fS(6),Nc(),$i(7,`div`,7)(8,`button`,8),Jm(`click`,function(){Ld(e);let l=HC();return $d(l.go(l.parentOf(l.path())))}),Gm(9,`app-icon`,9),Nc(),$i(10,`nav`,10),Tc(11,He,2,1,null,null,Ue),Nc()(),SC(13,Ke,2,1,`p`,11)(14,qe,2,1,`p`,12)(15,Qe,2,1,`p`,12)(16,Ye,3,0,`ul`,13),$i(17,`div`,14)(18,`button`,15),Gm(19,`app-icon`,16),fS(20),Nc()()()()}if(i&2){let e,n=HC();ec(4),pg(n.t().title(n.volume())),ec(2),pg(n.t().description),ec(2),Wm(`disabled`,n.path()===`/`||n.busy()),zr(`aria-label`,n.t().up),ec(),Wm(`size`,14),ec(),zr(`aria-label`,n.t().path),ec(),kc(n.crumbs()),ec(2),TC((e=n.problem())?13:n.busy()?14:n.entries().length===0?15:16,e),ec(6),Wm(`size`,14),ec(),_c(` `,n.common().close,` `)}}var Ue;var Fe;var G;var be=f(()=>{Kr();Je$1();lT();dT();sT();Kr();Ue=(i,t)=>t.path,Fe=(i,t)=>t.name;G=class i{open=mj(!1);volume=jc.required();t=$t(()=>oT().volumes.browse);common=$t(()=>oT().common);path=wt(`/`);entries=wt([]);busy=wt(!1);problem=wt(null);crumbs=$t(()=>{let t=this.path().split(`/`).filter(e=>e!==``);return[{label:`/`,path:`/`},...t.map((e,n)=>({label:e,path:`/${t.slice(0,n+1).join(`/`)}`}))]});constructor(){rf(()=>{let t=this.open(),e=this.volume();kg(()=>{t?(this.path.set(`/`),this.load(e)):window.electron.volumes.closeBrowser().catch(()=>{})})})}go(t){this.path.set(t),this.load(this.volume())}parentOf(t){return`/${t.split(`/`).filter(n=>n!==``).slice(0,-1).join(`/`)}`}childOf(t){let e=this.path();return e.endsWith(`/`)?`${e}${t.name}`:`${e}/${t.name}`}async load(t){this.busy.set(!0);try{let e=await window.electron.volumes.browse(t,this.path());this.path.set(e.path),e.ok?(this.entries.set(e.entries),this.problem.set(null)):(this.entries.set([]),this.problem.set(e.problem))}catch(e){this.entries.set([]),this.problem.set(eH(e))}finally{this.busy.set(!1)}}static ɵfac=function(e){return new(e||i)};static ɵcmp=wc({type:i,selectors:[[`app-volume-browser-dialog`]],inputs:{open:[1,`open`],volume:[1,`volume`]},outputs:{open:`openChange`},decls:2,vars:1,consts:[[`rdxDialogRoot`,``,3,`openChange`,`open`],[`rdxDialogPortal`,``],[`rdxDialogBackdrop`,``,1,`fixed`,`inset-0`,`z-40`,`bg-black/50`],[`rdxDialogViewport`,``,1,`fixed`,`inset-0`,`z-50`,`grid`,`place-items-center`,`p-4`],[`rdxDialogPopup`,``,`data-testid`,`volume-browser-dialog`,1,`flex`,`max-h-[85vh]`,`w-full`,`max-w-2xl`,`flex-col`,`rounded-lg`,`border`,`border-ink-700`,`bg-ink-850`,`p-5`,`shadow-2xl`],[`rdxDialogTitle`,``,1,`text-[15px]`,`font-semibold`,`text-ink-100`],[`rdxDialogDescription`,``,1,`mt-1`,`text-[13px]`,`text-ink-400`],[1,`mt-3`,`flex`,`shrink-0`,`items-center`,`gap-2`],[`type`,`button`,`data-testid`,`volume-up`,1,`mx-btn`,`mx-focus`,3,`click`,`disabled`],[`name`,`arrow-up`,3,`size`],[1,`flex`,`min-w-0`,`flex-1`,`flex-wrap`,`items-center`,`font-mono`,`text-[12px]`],[1,`mt-3`,`rounded-md`,`border`,`border-danger/40`,`bg-danger/10`,`px-3`,`py-2`,`text-[13px]`,`text-danger`],[1,`mt-4`,`text-[13px]`,`text-ink-400`],[`data-testid`,`volume-list`,1,`mt-3`,`min-h-0`,`flex-1`,`divide-y`,`divide-ink-800`,`overflow-auto`,`text-[13px]`],[1,`mt-4`,`flex`,`justify-end`],[`type`,`button`,`rdxDialogClose`,``,1,`mx-btn`,`mx-focus`],[`name`,`close`,3,`size`],[`aria-current`,`location`,1,`text-ink-100`],[`type`,`button`,1,`mx-focus`,`cursor-pointer`,`text-ink-400`,`hover:text-ink-100`,3,`click`],[1,`px-1`,`text-ink-600`],[1,`flex`,`items-center`,`gap-2`,`py-1.5`],[3,`name`,`size`],[`type`,`button`,1,`mx-focus`,`min-w-0`,`flex-1`,`cursor-pointer`,`truncate`,`text-left`,`text-ink-100`,`hover:underline`],[1,`min-w-0`,`flex-1`,`truncate`,`text-ink-200`],[`type`,`button`,1,`mx-focus`,`min-w-0`,`flex-1`,`cursor-pointer`,`truncate`,`text-left`,`text-ink-100`,`hover:underline`,3,`click`]],template:function(e,n){e&1&&($i(0,`div`,0),vg(`openChange`,function(s){return vS(n.open,s)||(n.open=s),s}),Am(1,Ze,21,9,`ng-template`,1),Nc()),e&2&&hg(`open`,n.open)},dependencies:[ie,ln,an,pn,cn,fn,dn,un,My],encapsulation:2})}});function et(i,t){if(i&1&&($i(0,`span`,7),fS(1),Nc()),i&2){let e=HC();ec(),_c(`· `,e.t().calculating)}}function tt(i,t){if(i&1&&($i(0,`span`,17),fS(1),Nc()),i&2){let e=HC();ec(),pg(e.t().refreshing)}}function nt(i,t){if(i&1){let e=RC();$i(0,`div`,19)(1,`span`,31),fS(2),Nc(),$i(3,`button`,32),Jm(`click`,function(){Ld(e);return $d(HC().askRemoveSelected())}),Gm(4,`app-icon`,33),fS(5),Nc()()}if(i&2){let e=HC();ec(2),pg(e.t().selected(e.selected().size)),ec(2),Wm(`size`,14),ec(),_c(` `,e.common().remove,` `)}}function it(i,t){if(i&1&&($i(0,`div`,35),fS(1),Nc()),i&2){let e=HC().$implicit;ec(),pg(e.composeProject)}}function ot(i,t){if(i&1&&($i(0,`div`,34),fS(1),Nc(),SC(2,it,2,1,`div`,35)),i&2){let e=t.$implicit;Wm(`title`,e.mountpoint),ec(),pg(e.name),ec(),TC(e.composeProject?2:-1)}}function at(i,t){if(i&1&&($i(0,`span`,36),fS(1),Nc()),i&2){let e=t.$implicit;ec(),pg(e.driver)}}function rt(i,t){if(i&1&&($i(0,`span`,37),fS(1),Nc()),i&2){let e=HC().$implicit,n=HC();ec(),pg(n.t().containerCount(e.inUseBy))}}function lt(i,t){i&1&&($i(0,`span`,38),fS(1,`—`),Nc())}function st(i,t){if(i&1&&SC(0,rt,2,1,`span`,37)(1,lt,2,0,`span`,38),i&2){let e=t.$implicit;TC(e.inUseBy>0?0:1)}}function mt(i,t){if(i&1&&($i(0,`span`,39),fS(1),Nc()),i&2){let e=t.$implicit,n=HC();ec(),pg(n.ageOf(e.createdAt))}}function pt(i,t){if(i&1&&($i(0,`span`,40),fS(1),Nc()),i&2){let e=t.$implicit,n=HC();ec(),pg(n.sizeOf(e.sizeBytes))}}function dt(i,t){if(i&1){let e=RC();$i(0,`div`,41)(1,`app-action-menu`,42),Jm(`picked`,function(l){let s=Ld(e).$implicit;return $d(HC().onRowMenu(l,s))}),Nc()()}if(i&2){let e=t.$implicit,n=HC();ec(),Wm(`label`,n.t().rowMenu(e.name))(`items`,n.rowMenu(e))}}var ve;f(()=>{Kr();h();M();B();G$1();J();oe();K();dT();x();fe();sT();be();ra();o();Kr();ve=class i$1{store=I(w);preferences=I(p);t=$t(()=>oT().volumes);common=$t(()=>oT().common);columns=$t(()=>{let t=this.t().columns;return[{key:`name`,label:t.name},{key:`driver`,label:t.driver,width:`100px`},{key:`inUse`,label:t.inUse,width:`110px`},{key:`created`,label:t.created,width:`150px`},{key:`size`,label:t.size,width:`100px`,align:`right`},{key:`actions`,label:t.actions,width:`84px`,align:`right`}]});loading=this.store.loading;loadingSizes=this.store.loadingSizes;problem=this.store.problem;pending=this.store.pending;unusedCount=this.store.unusedCount;search=wt(``);zoek=jc(void 0);onlyUnused=this.preferences.flag(`volumes.onlyUnused`);selected=wt(new Set);action=wt(null);confirmOpen=wt(!1);createOpen=wt(!1);browseOpen=wt(!1);browseVolume=wt(``);rows=$t(()=>{let t=this.search().trim().toLowerCase(),e=this.onlyUnused();return this.store.volumes().filter(n=>e&&n.inUseBy>0?!1:t===``||n.name.toLowerCase().includes(t))});totalSize=$t(()=>d(this.store.totalBytes()));trackKey=t=>t.name;inkijk=jc(void 0);router=I(fe$1);route=I(Q$1);constructor(){rf(()=>{let t=this.inkijk();t!==void 0&&kg(()=>{this.browseVolume.set(t),this.browseOpen.set(!0),i(this.router,this.route,`inkijk`)})}),rf(()=>{let t=this.zoek();t!==void 0&&kg(()=>this.search.set(t))}),this.store.refresh()}sizeOf(t){return t===null?`—`:d(t)}ageOf(t){return t===0?`—`:N(t)}removalReason(t){return t.inUseBy>0?this.t().inUseReason(t.inUseBy):this.common().remove}backup(t){this.store.backup(t.name)}backupTitle(t){return t.inUseBy>0?this.t().backupTitleInUse(t.name):this.t().backupTitle(t.name)}rowMenu(t){let e=this.pending().has(t.name),n=this.t();return[{id:`browse`,label:n.rowBrowse,icon:`folder`,disabled:e},{id:`backup`,label:n.rowBackup,icon:`download`,disabled:e,hint:this.backupTitle(t)},{id:`restore`,label:n.rowRestore,icon:`upload`,disabled:e,hint:n.restoreTitle(t.name)},{id:`remove`,label:this.common().remove,icon:`trash`,disabled:e||t.inUseBy>0,danger:!0,separated:!0,hint:this.removalReason(t)}]}onRowMenu(t,e){t===`browse`?(this.browseVolume.set(e.name),this.browseOpen.set(!0)):t===`backup`?this.backup(e):t===`restore`?this.askRestore(e):this.askRemove(e)}askRestore(t){let e=this.t().restore;this.action.set({names:[t.name],title:e.title(t.name),description:e.description(t.inUseBy),confirmLabel:e.confirm,all:!1,restore:!0}),this.confirmOpen.set(!0)}askRemove(t){let e=this.t().remove;this.action.set({names:[t.name],title:e.title,description:e.description(t.name),confirmLabel:this.common().remove,all:!1}),this.confirmOpen.set(!0)}askRemoveSelected(){let t=[...this.selected()],e=this.t().remove;this.action.set({names:t,title:e.manyTitle,description:e.manyDescription(t.length),confirmLabel:this.common().remove,all:!1}),this.confirmOpen.set(!0)}menuItems=$t(()=>[{id:`create`,label:this.t().menu.create,icon:`plus`},{id:`prune-anonymous`,label:this.t().menu.pruneAnonymous,icon:`broom`,separated:!0},{id:`prune-unused`,label:this.t().menu.pruneUnused,icon:`broom`}]);onMenu(t){t===`create`?this.createOpen.set(!0):this.askPrune(t===`prune-unused`)}askPrune(t){let e=this.t().prune;this.action.set({names:[],title:t?e.allTitle:e.anonymousTitle,description:t?e.allDescription:e.anonymousDescription,confirmLabel:e.confirm,all:t}),this.confirmOpen.set(!0)}confirm(){let t=this.action();t!==null&&(t.restore===!0?this.store.restore(t.names[0]):t.names.length===0?this.store.prune(t.all):(this.store.removeMany(t.names,!1),this.selected.set(new Set)),this.action.set(null))}actionTitle(){return this.action()?.title??``}actionDescription(){return this.action()?.description??``}actionConfirmLabel(){return this.action()?.confirmLabel??this.common().remove}actionConfirmIcon(){let t=this.action();return t?.restore===!0?`upload`:t?.names.length===0?`broom`:`trash`}static ɵfac=function(e){return new(e||i$1)};static ɵcmp=wc({type:i$1,selectors:[[`app-volumes-page`]],inputs:{zoek:[1,`zoek`],inkijk:[1,`inkijk`]},decls:42,vars:30,consts:[[1,`flex`,`h-full`,`flex-col`],[1,`shrink-0`,`px-6`,`pt-5`,`pb-3`],[1,`flex`,`flex-wrap`,`items-start`,`gap-4`],[1,`text-xl`,`font-semibold`,`tracking-tight`,`text-ink-100`],[1,`mt-3`,`flex`,`flex-wrap`,`gap-x-10`,`gap-y-2`],[1,`text-[12px]`,`text-ink-400`],[1,`text-[15px]`,`font-medium`,`text-ink-100`],[1,`text-[12px]`,`font-normal`,`text-ink-500`],[1,`ml-auto`],[3,`picked`,`label`,`items`],[1,`mt-4`,`flex`,`flex-wrap`,`items-center`,`gap-4`],[1,`relative`,`flex`,`items-center`],[1,`pointer-events-none`,`absolute`,`left-2.5`,`text-ink-500`],[`name`,`search`,3,`size`],[1,`sr-only`],[`type`,`search`,1,`mx-focus`,`w-72`,`rounded-md`,`border`,`border-ink-700`,`bg-ink-850`,`py-1.5`,`pr-3`,`pl-8`,`text-[13px]`,`text-ink-100`,`placeholder:text-ink-500`,3,`input`,`placeholder`,`value`],[3,`onChange`,`label`,`on`],[1,`text-[12px]`,`text-ink-500`],[3,`problem`],[1,`mt-3`,`flex`,`items-center`,`gap-2`,`rounded-md`,`border`,`border-ink-700`,`bg-ink-850`,`px-3`,`py-2`],[1,`min-h-0`,`flex-1`,`overflow-y-auto`,`px-6`,`pb-6`],[3,`selectedChange`,`columns`,`rows`,`trackKey`,`selected`,`emptyMessage`],[`appCell`,`name`],[`appCell`,`driver`],[`appCell`,`inUse`],[`appCell`,`created`],[`appCell`,`size`],[`appCell`,`actions`],[3,`openChange`,`open`],[3,`openChange`,`open`,`volume`],[3,`openChange`,`confirmed`,`open`,`title`,`description`,`confirmLabel`,`confirmIcon`],[1,`text-[13px]`,`text-ink-200`],[`type`,`button`,1,`mx-btn`,`mx-focus`,`ml-auto`,`text-danger`,`hover:text-danger`,3,`click`],[`name`,`trash`,3,`size`],[1,`truncate`,`text-ink-100`,3,`title`],[1,`truncate`,`text-[11px]`,`text-ink-500`],[1,`text-ink-300`],[1,`text-ink-200`],[1,`text-ink-600`],[1,`text-ink-400`],[1,`tabular-nums`,`text-ink-200`],[1,`flex`,`items-center`,`justify-end`],[`compact`,``,3,`picked`,`label`,`items`]],template:function(e,n){e&1&&($i(0,`section`,0)(1,`div`,1)(2,`div`,2)(3,`div`)(4,`h1`,3),fS(5),Nc(),$i(6,`div`,4)(7,`div`)(8,`div`,5),fS(9),Nc(),$i(10,`div`,6),fS(11),SC(12,et,2,1,`span`,7),Nc()(),$i(13,`div`)(14,`div`,5),fS(15),Nc(),$i(16,`div`,6),fS(17),Nc()()()(),$i(18,`div`,8)(19,`app-action-menu`,9),Jm(`picked`,function(s){return n.onMenu(s)}),Nc()()(),$i(20,`div`,10)(21,`label`,11)(22,`span`,12),Gm(23,`app-icon`,13),Nc(),$i(24,`span`,14),fS(25),Nc(),$i(26,`input`,15),Jm(`input`,function(s){return n.search.set(s.target.value)}),Nc()(),$i(27,`app-filter-switch`,16),vg(`onChange`,function(s){return vS(n.onlyUnused,s)||(n.onlyUnused=s),s}),Nc(),SC(28,tt,2,1,`span`,17),Nc(),Gm(29,`app-page-messages`,18),SC(30,nt,6,3,`div`,19),Nc(),$i(31,`div`,20)(32,`app-data-table`,21),vg(`selectedChange`,function(s){return vS(n.selected,s)||(n.selected=s),s}),Am(33,ot,3,3,`ng-template`,22)(34,at,2,1,`ng-template`,23)(35,st,2,1,`ng-template`,24)(36,mt,2,1,`ng-template`,25)(37,pt,2,1,`ng-template`,26)(38,dt,2,2,`ng-template`,27),Nc()()(),$i(39,`app-create-volume-dialog`,28),vg(`openChange`,function(s){return vS(n.createOpen,s)||(n.createOpen=s),s}),Nc(),$i(40,`app-volume-browser-dialog`,29),vg(`openChange`,function(s){return vS(n.browseOpen,s)||(n.browseOpen=s),s}),Nc(),$i(41,`app-confirm-dialog`,30),vg(`openChange`,function(s){return vS(n.confirmOpen,s)||(n.confirmOpen=s),s}),Jm(`confirmed`,function(){return n.confirm()}),Nc()),e&2&&(ec(5),pg(n.t().title),ec(4),pg(n.t().diskSpace),ec(2),_c(` `,n.totalSize(),` `),ec(),TC(n.loadingSizes()?12:-1),ec(3),pg(n.t().unused),ec(2),pg(n.unusedCount()),ec(2),Wm(`label`,n.t().menuLabel)(`items`,n.menuItems()),ec(4),Wm(`size`,15),ec(2),pg(n.t().searchLabel),ec(),Wm(`placeholder`,n.t().searchLabel)(`value`,n.search()),ec(),Wm(`label`,n.t().onlyUnused),hg(`on`,n.onlyUnused),ec(),TC(n.loading()?28:-1),ec(),Wm(`problem`,n.problem()),ec(),TC(n.selected().size>0?30:-1),ec(2),Wm(`columns`,n.columns())(`rows`,n.rows())(`trackKey`,n.trackKey),hg(`selected`,n.selected),Wm(`emptyMessage`,n.t().empty),ec(7),hg(`open`,n.createOpen),ec(),hg(`open`,n.browseOpen),Wm(`volume`,n.browseVolume()),ec(),hg(`open`,n.confirmOpen),Wm(`title`,n.actionTitle())(`description`,n.actionDescription())(`confirmLabel`,n.actionConfirmLabel())(`confirmIcon`,n.actionConfirmIcon()))},dependencies:[z,x$1,My,W,u,P,V,Q,G],encapsulation:2})}})();export{ve as VolumesPage};
1
+ import{B as Jm,Ct as Tc,Dn as kC,En as jc,Fn as mj,Ft as Wm,Gn as pg,H as Kr,In as nS,J as My,Jt as ag,Kt as _m,M as HC,Mn as lk,On as kc,P as I,Sn as hg,Tr as zr,Vn as ok,W as Ld,X as Nc,Zn as rf,_r as wt,cn as ec,er as sk,gt as SC,hr as wc,i as $i,in as dk,k as Gm,ln as f,o as $t,r as $d,s as Ac,sn as eH,sr as vS,un as fS,ur as vg,ut as RC,wt as Tg}from"./chunk-PPlXONP3.js";import"./chunk-Dob_vN7f.js";import{i as h,n as N,r as d}from"./chunk-DSdDrNk7.js";import{n as w,t as B}from"./chunk-DJK2pDCE.js";import{n as x,t as u}from"./chunk-Dxcj7_8z.js";import"./chunk-InjvrsZj.js";import{r as Q$1,s as fe$1,u as ra}from"./chunk-CrwwnTWy.js";import"./chunk-Bz_HteBH.js";import{_ as pn,d as dn,f as fn,g as ln,l as an,m as ie,r as Je$1,u as cn,v as un}from"./chunk-DdnN9mbh.js";import{n as o,t as i}from"./chunk-6Vhi8rd8.js";import{n as V,t as G$1}from"./chunk-p8V0QABx.js";import{n as W,t as J}from"./chunk-Chnm8oNy.js";import{n as P,t as K}from"./chunk-2Z6qpzJF.js";import{n as p,t as M}from"./chunk-6px89AQj.js";import{i as z,n as oe,r as x$1}from"./chunk-VaM0mOqO.js";function Be(i,t){if(i&1){let e=RC();$i(0,`label`,12)(1,`input`,20),Jm(`change`,function(){let l=Ld(e).$implicit;return $d(HC(2).kind.set(l.kind))}),Nc(),$i(2,`span`)(3,`span`,21),fS(4),Nc(),$i(5,`span`,22),fS(6),Nc()()()}if(i&2){let e=t.$implicit,n=HC(2);ec(),Wm(`value`,e.kind)(`checked`,n.kind()===e.kind)(`disabled`,n.busy()),ec(3),pg(e.label),ec(2),pg(e.hint)}}function Ne(i,t){if(i&1){let e=RC();$i(0,`label`,8)(1,`span`,9),fS(2),Nc(),$i(3,`input`,23),Jm(`input`,function(l){Ld(e);return $d(HC(2).path.set(l.target.value))}),Nc(),$i(4,`span`,24),fS(5),Nc()()}if(i&2){let e=HC(2);ec(2),pg(e.t().folderLabel),ec(),nS(e.field),Wm(`value`,e.path())(`disabled`,e.busy()),ec(2),pg(e.t().folderHint)}}function ze(i,t){if(i&1){let e=RC();$i(0,`label`,8)(1,`span`,9),fS(2),Nc(),$i(3,`input`,25),Jm(`input`,function(l){Ld(e);return $d(HC(2).server.set(l.target.value))}),Nc()(),$i(4,`label`,8)(5,`span`,9),fS(6),Nc(),$i(7,`input`,26),Jm(`input`,function(l){Ld(e);return $d(HC(2).path.set(l.target.value))}),Nc(),$i(8,`span`,24),fS(9),Nc()()}if(i&2){let e=HC(2);ec(2),pg(e.t().nfsServerLabel),ec(),nS(e.field),Wm(`value`,e.server())(`disabled`,e.busy()),ec(3),pg(e.t().nfsPathLabel),ec(),nS(e.field),Wm(`value`,e.path())(`disabled`,e.busy()),ec(2),pg(e.t().nfsHint)}}function Re(i,t){if(i&1){let e=RC();$i(0,`details`,13)(1,`summary`,27),fS(2),Nc(),$i(3,`label`,28)(4,`span`,9),fS(5),Nc(),$i(6,`input`,29),Jm(`input`,function(l){Ld(e);return $d(HC(2).driver.set(l.target.value))}),Nc(),$i(7,`span`,24),fS(8),Nc()()()}if(i&2){let e=HC(2);Wm(`open`,e.driver()!==`local`),ec(2),pg(e.t().advanced),ec(3),pg(e.t().driverLabel),ec(),nS(e.field),Wm(`value`,e.driver())(`disabled`,e.busy()),ec(2),pg(e.t().driverHint)}}function Oe(i,t){i&1&&($i(0,`p`,14),fS(1),Nc()),i&2&&(ec(),pg(t))}function Le(i,t){if(i&1){let e=RC();Gm(0,`div`,2),$i(1,`div`,3)(2,`div`,4)(3,`h2`,5),fS(4),Nc(),$i(5,`p`,6),fS(6),Nc(),$i(7,`form`,7),Jm(`submit`,function(l){Ld(e);return $d(HC().submit(l))}),$i(8,`label`,8)(9,`span`,9),fS(10),Nc(),$i(11,`input`,10),Jm(`input`,function(l){Ld(e);return $d(HC().name.set(l.target.value))}),Nc()(),$i(12,`fieldset`)(13,`legend`,9),fS(14),Nc(),$i(15,`div`,11),kc(16,Be,7,5,`label`,12,Pe),Nc()(),SC(18,Ne,6,6,`label`,8)(19,ze,10,11)(20,Re,9,8,`details`,13),SC(21,Oe,2,1,`p`,14),$i(22,`div`,15)(23,`button`,16),Gm(24,`app-icon`,17),fS(25),Nc(),$i(26,`button`,18),Gm(27,`app-icon`,19),fS(28),Nc()()()()()}if(i&2){let e,n,l=HC();ec(4),pg(l.t().title),ec(2),pg(l.t().description),ec(4),pg(l.t().nameLabel),ec(),nS(l.field),Wm(`placeholder`,l.t().namePlaceholder)(`value`,l.name())(`disabled`,l.busy()),ec(3),pg(l.t().storageLabel),ec(2),Tc(l.kinds()),ec(2),kC((e=l.kind())===`folder`?18:e===`nfs`?19:20),ec(3),kC((n=l.problem())?21:-1,n),ec(3),Wm(`size`,14),ec(),Ac(` `,l.common().cancel,` `),ec(),Wm(`disabled`,!l.canSubmit()),ec(),Wm(`size`,14),ec(),Ac(` `,l.busy()?l.t().creating:l.t().submit,` `)}}var Pe;var We;var Q;var fe=f(()=>{Kr();Je$1();B();dk();sk();Kr();Pe=(i,t)=>t.kind;We=`mx-focus mt-1 w-full rounded-md border border-ink-700 bg-ink-800 px-3 py-1.5 text-[13px] text-ink-100 placeholder:text-ink-500`,Q=class i{store=I(w);open=mj(!1);t=$t(()=>ok().volumes.createDialog);common=$t(()=>ok().common);field=We;kinds=$t(()=>{let t=this.t();return[{kind:`docker`,label:t.storage.docker,hint:t.storage.dockerHint},{kind:`folder`,label:t.storage.folder,hint:t.storage.folderHint},{kind:`nfs`,label:t.storage.nfs,hint:t.storage.nfsHint}]});name=wt(``);kind=wt(`docker`);driver=wt(`local`);path=wt(``);server=wt(``);busy=wt(!1);problem=wt(null);storage=$t(()=>{let t=this.path().trim();switch(this.kind()){case`docker`:return this.driver().trim()===``?null:{kind:`docker`,driver:this.driver().trim()};case`folder`:return t===``?null:{kind:`folder`,path:t};case`nfs`:return t===``||this.server().trim()===``?null:{kind:`nfs`,server:this.server().trim(),path:t}}});canSubmit=$t(()=>!this.busy()&&this.name().trim()!==``&&this.storage()!==null);constructor(){rf(()=>{this.open()&&Tg(()=>{this.name.set(``),this.kind.set(`docker`),this.driver.set(`local`),this.path.set(``),this.server.set(``),this.problem.set(null)})})}submit(t){t.preventDefault();let e=this.storage();!this.canSubmit()||e===null||(this.busy.set(!0),this.problem.set(null),this.store.create({name:this.name().trim(),storage:e}).then(n=>{this.problem.set(n),n===null&&this.open.set(!1)}).finally(()=>this.busy.set(!1)))}static ɵfac=function(e){return new(e||i)};static ɵcmp=wc({type:i,selectors:[[`app-create-volume-dialog`]],inputs:{open:[1,`open`]},outputs:{open:`openChange`},decls:2,vars:1,consts:[[`rdxDialogRoot`,``,3,`openChange`,`open`],[`rdxDialogPortal`,``],[`rdxDialogBackdrop`,``,1,`fixed`,`inset-0`,`z-40`,`bg-black/50`],[`rdxDialogViewport`,``,1,`fixed`,`inset-0`,`z-50`,`grid`,`place-items-center`,`p-4`],[`rdxDialogPopup`,``,1,`w-full`,`max-w-md`,`rounded-lg`,`border`,`border-ink-700`,`bg-ink-850`,`p-5`,`shadow-2xl`],[`rdxDialogTitle`,``,1,`text-[15px]`,`font-semibold`,`text-ink-100`],[`rdxDialogDescription`,``,1,`mt-1`,`text-[13px]`,`text-ink-400`],[1,`mt-4`,`space-y-3`,3,`submit`],[1,`block`],[1,`text-[12px]`,`text-ink-400`],[`type`,`text`,`autocomplete`,`off`,`spellcheck`,`false`,3,`input`,`placeholder`,`value`,`disabled`],[1,`mt-1`,`space-y-1`],[1,`flex`,`cursor-pointer`,`items-start`,`gap-2`,`rounded-md`,`px-2`,`py-1.5`,`hover:bg-ink-800`],[1,`text-[12px]`,`text-ink-400`,3,`open`],[`role`,`alert`,1,`text-[13px]`,`text-danger`],[1,`flex`,`justify-end`,`gap-2`,`pt-2`],[`type`,`button`,`rdxDialogClose`,``,1,`mx-btn`,`mx-focus`],[`name`,`close`,3,`size`],[`type`,`submit`,1,`mx-btn`,`mx-focus`,3,`disabled`],[`name`,`plus`,3,`size`],[`type`,`radio`,`name`,`volume-storage`,1,`mt-0.5`,`accent-accent`,3,`change`,`value`,`checked`,`disabled`],[1,`block`,`text-[13px]`,`text-ink-100`],[1,`block`,`text-[12px]`,`text-ink-500`],[`type`,`text`,`placeholder`,`/srv/data`,`autocomplete`,`off`,`spellcheck`,`false`,3,`input`,`value`,`disabled`],[1,`mt-1`,`block`,`text-[12px]`,`text-ink-500`],[`type`,`text`,`placeholder`,`nas.local`,`autocomplete`,`off`,`spellcheck`,`false`,3,`input`,`value`,`disabled`],[`type`,`text`,`placeholder`,`/volume1/data`,`autocomplete`,`off`,`spellcheck`,`false`,3,`input`,`value`,`disabled`],[1,`cursor-pointer`,`select-none`],[1,`mt-2`,`block`],[`type`,`text`,`autocomplete`,`off`,`spellcheck`,`false`,3,`input`,`value`,`disabled`]],template:function(e,n){e&1&&($i(0,`div`,0),vg(`openChange`,function(s){return vS(n.open,s)||(n.open=s),s}),_m(1,Le,29,16,`ng-template`,1),Nc()),e&2&&hg(`open`,n.open)},dependencies:[ie,ln,an,pn,cn,fn,dn,un,My],encapsulation:2})}});function $e(i,t){if(i&1&&($i(0,`span`,17),fS(1),Nc()),i&2){let e=HC().$implicit;ec(),pg(e.label)}}function je(i,t){i&1&&($i(0,`span`,19),fS(1,`/`),Nc())}function Ae(i,t){if(i&1){let e=RC();$i(0,`button`,18),Jm(`click`,function(){Ld(e);let l=HC().$implicit;return $d(HC(2).go(l.path))}),fS(1),Nc(),SC(2,je,2,0,`span`,19)}if(i&2){let e=HC().$implicit;ec(),Ac(` `,e.label,` `),ec(),kC(e.path!==`/`?2:-1)}}function He(i,t){if(i&1&&SC(0,$e,2,1,`span`,17)(1,Ae,3,2),i&2){let e=t.$index,n=t.$count;kC(e===n-1?0:1)}}function Ke(i,t){i&1&&($i(0,`p`,11),fS(1),Nc()),i&2&&(ec(),pg(t))}function qe(i,t){if(i&1&&($i(0,`p`,12),fS(1),Nc()),i&2){let e=HC(2);ec(),pg(e.t().loading)}}function Qe(i,t){if(i&1&&($i(0,`p`,12),fS(1),Nc()),i&2){let e=HC(2);ec(),pg(e.t().empty)}}function Ge(i,t){if(i&1){let e=RC();$i(0,`button`,24),Jm(`click`,function(){Ld(e);let l=HC().$implicit,s=HC(3);return $d(s.go(s.childOf(l)))}),fS(1),Nc()}if(i&2){let e=HC().$implicit;ec(),Ac(` `,e.name,` `)}}function Je(i,t){if(i&1&&($i(0,`span`,23),fS(1),Nc()),i&2){let e=HC().$implicit;ec(),pg(e.name)}}function Xe(i,t){if(i&1&&($i(0,`li`,20),Gm(1,`app-icon`,21),SC(2,Ge,2,1,`button`,22)(3,Je,2,1,`span`,23),Nc()),i&2){let e=t.$implicit;ec(),ag(`text-accent`,e.kind===`dir`)(`text-ink-500`,e.kind===`file`),Wm(`name`,e.kind===`dir`?`folder`:`file`)(`size`,15),ec(),kC(e.kind===`dir`?2:3)}}function Ye(i,t){if(i&1&&($i(0,`ul`,13),kc(1,Xe,4,7,`li`,20,Fe),Nc()),i&2){let e=HC(2);ec(),Tc(e.entries())}}function Ze(i,t){if(i&1){let e=RC();Gm(0,`div`,2),$i(1,`div`,3)(2,`div`,4)(3,`h2`,5),fS(4),Nc(),$i(5,`p`,6),fS(6),Nc(),$i(7,`div`,7)(8,`button`,8),Jm(`click`,function(){Ld(e);let l=HC();return $d(l.go(l.parentOf(l.path())))}),Gm(9,`app-icon`,9),Nc(),$i(10,`nav`,10),kc(11,He,2,1,null,null,Ue),Nc()(),SC(13,Ke,2,1,`p`,11)(14,qe,2,1,`p`,12)(15,Qe,2,1,`p`,12)(16,Ye,3,0,`ul`,13),$i(17,`div`,14)(18,`button`,15),Gm(19,`app-icon`,16),fS(20),Nc()()()()}if(i&2){let e,n=HC();ec(4),pg(n.t().title(n.volume())),ec(2),pg(n.t().description),ec(2),Wm(`disabled`,n.path()===`/`||n.busy()),zr(`aria-label`,n.t().up),ec(),Wm(`size`,14),ec(),zr(`aria-label`,n.t().path),ec(),Tc(n.crumbs()),ec(2),kC((e=n.problem())?13:n.busy()?14:n.entries().length===0?15:16,e),ec(6),Wm(`size`,14),ec(),Ac(` `,n.common().close,` `)}}var Ue;var Fe;var G;var be=f(()=>{Kr();Je$1();lk();dk();sk();Kr();Ue=(i,t)=>t.path,Fe=(i,t)=>t.name;G=class i{open=mj(!1);volume=jc.required();t=$t(()=>ok().volumes.browse);common=$t(()=>ok().common);path=wt(`/`);entries=wt([]);busy=wt(!1);problem=wt(null);crumbs=$t(()=>{let t=this.path().split(`/`).filter(e=>e!==``);return[{label:`/`,path:`/`},...t.map((e,n)=>({label:e,path:`/${t.slice(0,n+1).join(`/`)}`}))]});constructor(){rf(()=>{let t=this.open(),e=this.volume();Tg(()=>{t?(this.path.set(`/`),this.load(e)):window.electron.volumes.closeBrowser().catch(()=>{})})})}go(t){this.path.set(t),this.load(this.volume())}parentOf(t){return`/${t.split(`/`).filter(n=>n!==``).slice(0,-1).join(`/`)}`}childOf(t){let e=this.path();return e.endsWith(`/`)?`${e}${t.name}`:`${e}/${t.name}`}async load(t){this.busy.set(!0);try{let e=await window.electron.volumes.browse(t,this.path());this.path.set(e.path),e.ok?(this.entries.set(e.entries),this.problem.set(null)):(this.entries.set([]),this.problem.set(e.problem))}catch(e){this.entries.set([]),this.problem.set(eH(e))}finally{this.busy.set(!1)}}static ɵfac=function(e){return new(e||i)};static ɵcmp=wc({type:i,selectors:[[`app-volume-browser-dialog`]],inputs:{open:[1,`open`],volume:[1,`volume`]},outputs:{open:`openChange`},decls:2,vars:1,consts:[[`rdxDialogRoot`,``,3,`openChange`,`open`],[`rdxDialogPortal`,``],[`rdxDialogBackdrop`,``,1,`fixed`,`inset-0`,`z-40`,`bg-black/50`],[`rdxDialogViewport`,``,1,`fixed`,`inset-0`,`z-50`,`grid`,`place-items-center`,`p-4`],[`rdxDialogPopup`,``,`data-testid`,`volume-browser-dialog`,1,`flex`,`max-h-[85vh]`,`w-full`,`max-w-2xl`,`flex-col`,`rounded-lg`,`border`,`border-ink-700`,`bg-ink-850`,`p-5`,`shadow-2xl`],[`rdxDialogTitle`,``,1,`text-[15px]`,`font-semibold`,`text-ink-100`],[`rdxDialogDescription`,``,1,`mt-1`,`text-[13px]`,`text-ink-400`],[1,`mt-3`,`flex`,`shrink-0`,`items-center`,`gap-2`],[`type`,`button`,`data-testid`,`volume-up`,1,`mx-btn`,`mx-focus`,3,`click`,`disabled`],[`name`,`arrow-up`,3,`size`],[1,`flex`,`min-w-0`,`flex-1`,`flex-wrap`,`items-center`,`font-mono`,`text-[12px]`],[1,`mt-3`,`rounded-md`,`border`,`border-danger/40`,`bg-danger/10`,`px-3`,`py-2`,`text-[13px]`,`text-danger`],[1,`mt-4`,`text-[13px]`,`text-ink-400`],[`data-testid`,`volume-list`,1,`mt-3`,`min-h-0`,`flex-1`,`divide-y`,`divide-ink-800`,`overflow-auto`,`text-[13px]`],[1,`mt-4`,`flex`,`justify-end`],[`type`,`button`,`rdxDialogClose`,``,1,`mx-btn`,`mx-focus`],[`name`,`close`,3,`size`],[`aria-current`,`location`,1,`text-ink-100`],[`type`,`button`,1,`mx-focus`,`cursor-pointer`,`text-ink-400`,`hover:text-ink-100`,3,`click`],[1,`px-1`,`text-ink-600`],[1,`flex`,`items-center`,`gap-2`,`py-1.5`],[3,`name`,`size`],[`type`,`button`,1,`mx-focus`,`min-w-0`,`flex-1`,`cursor-pointer`,`truncate`,`text-left`,`text-ink-100`,`hover:underline`],[1,`min-w-0`,`flex-1`,`truncate`,`text-ink-200`],[`type`,`button`,1,`mx-focus`,`min-w-0`,`flex-1`,`cursor-pointer`,`truncate`,`text-left`,`text-ink-100`,`hover:underline`,3,`click`]],template:function(e,n){e&1&&($i(0,`div`,0),vg(`openChange`,function(s){return vS(n.open,s)||(n.open=s),s}),_m(1,Ze,21,9,`ng-template`,1),Nc()),e&2&&hg(`open`,n.open)},dependencies:[ie,ln,an,pn,cn,fn,dn,un,My],encapsulation:2})}});function et(i,t){if(i&1&&($i(0,`span`,7),fS(1),Nc()),i&2){let e=HC();ec(),Ac(`· `,e.t().calculating)}}function tt(i,t){if(i&1&&($i(0,`span`,17),fS(1),Nc()),i&2){let e=HC();ec(),pg(e.t().refreshing)}}function nt(i,t){if(i&1){let e=RC();$i(0,`div`,19)(1,`span`,31),fS(2),Nc(),$i(3,`button`,32),Jm(`click`,function(){Ld(e);return $d(HC().askRemoveSelected())}),Gm(4,`app-icon`,33),fS(5),Nc()()}if(i&2){let e=HC();ec(2),pg(e.t().selected(e.selected().size)),ec(2),Wm(`size`,14),ec(),Ac(` `,e.common().remove,` `)}}function it(i,t){if(i&1&&($i(0,`div`,35),fS(1),Nc()),i&2){let e=HC().$implicit;ec(),pg(e.composeProject)}}function ot(i,t){if(i&1&&($i(0,`div`,34),fS(1),Nc(),SC(2,it,2,1,`div`,35)),i&2){let e=t.$implicit;Wm(`title`,e.mountpoint),ec(),pg(e.name),ec(),kC(e.composeProject?2:-1)}}function at(i,t){if(i&1&&($i(0,`span`,36),fS(1),Nc()),i&2){let e=t.$implicit;ec(),pg(e.driver)}}function rt(i,t){if(i&1&&($i(0,`span`,37),fS(1),Nc()),i&2){let e=HC().$implicit,n=HC();ec(),pg(n.t().containerCount(e.inUseBy))}}function lt(i,t){i&1&&($i(0,`span`,38),fS(1,`—`),Nc())}function st(i,t){if(i&1&&SC(0,rt,2,1,`span`,37)(1,lt,2,0,`span`,38),i&2){let e=t.$implicit;kC(e.inUseBy>0?0:1)}}function mt(i,t){if(i&1&&($i(0,`span`,39),fS(1),Nc()),i&2){let e=t.$implicit,n=HC();ec(),pg(n.ageOf(e.createdAt))}}function pt(i,t){if(i&1&&($i(0,`span`,40),fS(1),Nc()),i&2){let e=t.$implicit,n=HC();ec(),pg(n.sizeOf(e.sizeBytes))}}function dt(i,t){if(i&1){let e=RC();$i(0,`div`,41)(1,`app-action-menu`,42),Jm(`picked`,function(l){let s=Ld(e).$implicit;return $d(HC().onRowMenu(l,s))}),Nc()()}if(i&2){let e=t.$implicit,n=HC();ec(),Wm(`label`,n.t().rowMenu(e.name))(`items`,n.rowMenu(e))}}var ve;f(()=>{Kr();h();M();B();G$1();J();oe();K();dk();x();fe();sk();be();ra();o();Kr();ve=class i$1{store=I(w);preferences=I(p);t=$t(()=>ok().volumes);common=$t(()=>ok().common);columns=$t(()=>{let t=this.t().columns;return[{key:`name`,label:t.name},{key:`driver`,label:t.driver,width:`100px`},{key:`inUse`,label:t.inUse,width:`110px`},{key:`created`,label:t.created,width:`150px`},{key:`size`,label:t.size,width:`100px`,align:`right`},{key:`actions`,label:t.actions,width:`84px`,align:`right`}]});loading=this.store.loading;loadingSizes=this.store.loadingSizes;problem=this.store.problem;pending=this.store.pending;unusedCount=this.store.unusedCount;search=wt(``);zoek=jc(void 0);onlyUnused=this.preferences.flag(`volumes.onlyUnused`);selected=wt(new Set);action=wt(null);confirmOpen=wt(!1);createOpen=wt(!1);browseOpen=wt(!1);browseVolume=wt(``);rows=$t(()=>{let t=this.search().trim().toLowerCase(),e=this.onlyUnused();return this.store.volumes().filter(n=>e&&n.inUseBy>0?!1:t===``||n.name.toLowerCase().includes(t))});totalSize=$t(()=>d(this.store.totalBytes()));trackKey=t=>t.name;inkijk=jc(void 0);router=I(fe$1);route=I(Q$1);constructor(){rf(()=>{let t=this.inkijk();t!==void 0&&Tg(()=>{this.browseVolume.set(t),this.browseOpen.set(!0),i(this.router,this.route,`inkijk`)})}),rf(()=>{let t=this.zoek();t!==void 0&&Tg(()=>this.search.set(t))}),this.store.refresh()}sizeOf(t){return t===null?`—`:d(t)}ageOf(t){return t===0?`—`:N(t)}removalReason(t){return t.inUseBy>0?this.t().inUseReason(t.inUseBy):this.common().remove}backup(t){this.store.backup(t.name)}backupTitle(t){return t.inUseBy>0?this.t().backupTitleInUse(t.name):this.t().backupTitle(t.name)}rowMenu(t){let e=this.pending().has(t.name),n=this.t();return[{id:`browse`,label:n.rowBrowse,icon:`folder`,disabled:e},{id:`backup`,label:n.rowBackup,icon:`download`,disabled:e,hint:this.backupTitle(t)},{id:`restore`,label:n.rowRestore,icon:`upload`,disabled:e,hint:n.restoreTitle(t.name)},{id:`remove`,label:this.common().remove,icon:`trash`,disabled:e||t.inUseBy>0,danger:!0,separated:!0,hint:this.removalReason(t)}]}onRowMenu(t,e){t===`browse`?(this.browseVolume.set(e.name),this.browseOpen.set(!0)):t===`backup`?this.backup(e):t===`restore`?this.askRestore(e):this.askRemove(e)}askRestore(t){let e=this.t().restore;this.action.set({names:[t.name],title:e.title(t.name),description:e.description(t.inUseBy),confirmLabel:e.confirm,all:!1,restore:!0}),this.confirmOpen.set(!0)}askRemove(t){let e=this.t().remove;this.action.set({names:[t.name],title:e.title,description:e.description(t.name),confirmLabel:this.common().remove,all:!1}),this.confirmOpen.set(!0)}askRemoveSelected(){let t=[...this.selected()],e=this.t().remove;this.action.set({names:t,title:e.manyTitle,description:e.manyDescription(t.length),confirmLabel:this.common().remove,all:!1}),this.confirmOpen.set(!0)}menuItems=$t(()=>[{id:`create`,label:this.t().menu.create,icon:`plus`},{id:`prune-anonymous`,label:this.t().menu.pruneAnonymous,icon:`broom`,separated:!0},{id:`prune-unused`,label:this.t().menu.pruneUnused,icon:`broom`}]);onMenu(t){t===`create`?this.createOpen.set(!0):this.askPrune(t===`prune-unused`)}askPrune(t){let e=this.t().prune;this.action.set({names:[],title:t?e.allTitle:e.anonymousTitle,description:t?e.allDescription:e.anonymousDescription,confirmLabel:e.confirm,all:t}),this.confirmOpen.set(!0)}confirm(){let t=this.action();t!==null&&(t.restore===!0?this.store.restore(t.names[0]):t.names.length===0?this.store.prune(t.all):(this.store.removeMany(t.names,!1),this.selected.set(new Set)),this.action.set(null))}actionTitle(){return this.action()?.title??``}actionDescription(){return this.action()?.description??``}actionConfirmLabel(){return this.action()?.confirmLabel??this.common().remove}actionConfirmIcon(){let t=this.action();return t?.restore===!0?`upload`:t?.names.length===0?`broom`:`trash`}static ɵfac=function(e){return new(e||i$1)};static ɵcmp=wc({type:i$1,selectors:[[`app-volumes-page`]],inputs:{zoek:[1,`zoek`],inkijk:[1,`inkijk`]},decls:42,vars:30,consts:[[1,`flex`,`h-full`,`flex-col`],[1,`shrink-0`,`px-6`,`pt-5`,`pb-3`],[1,`flex`,`flex-wrap`,`items-start`,`gap-4`],[1,`text-xl`,`font-semibold`,`tracking-tight`,`text-ink-100`],[1,`mt-3`,`flex`,`flex-wrap`,`gap-x-10`,`gap-y-2`],[1,`text-[12px]`,`text-ink-400`],[1,`text-[15px]`,`font-medium`,`text-ink-100`],[1,`text-[12px]`,`font-normal`,`text-ink-500`],[1,`ml-auto`],[3,`picked`,`label`,`items`],[1,`mt-4`,`flex`,`flex-wrap`,`items-center`,`gap-4`],[1,`relative`,`flex`,`items-center`],[1,`pointer-events-none`,`absolute`,`left-2.5`,`text-ink-500`],[`name`,`search`,3,`size`],[1,`sr-only`],[`type`,`search`,1,`mx-focus`,`w-72`,`rounded-md`,`border`,`border-ink-700`,`bg-ink-850`,`py-1.5`,`pr-3`,`pl-8`,`text-[13px]`,`text-ink-100`,`placeholder:text-ink-500`,3,`input`,`placeholder`,`value`],[3,`onChange`,`label`,`on`],[1,`text-[12px]`,`text-ink-500`],[3,`problem`],[1,`mt-3`,`flex`,`items-center`,`gap-2`,`rounded-md`,`border`,`border-ink-700`,`bg-ink-850`,`px-3`,`py-2`],[1,`min-h-0`,`flex-1`,`overflow-y-auto`,`px-6`,`pb-6`],[3,`selectedChange`,`columns`,`rows`,`trackKey`,`selected`,`emptyMessage`],[`appCell`,`name`],[`appCell`,`driver`],[`appCell`,`inUse`],[`appCell`,`created`],[`appCell`,`size`],[`appCell`,`actions`],[3,`openChange`,`open`],[3,`openChange`,`open`,`volume`],[3,`openChange`,`confirmed`,`open`,`title`,`description`,`confirmLabel`,`confirmIcon`],[1,`text-[13px]`,`text-ink-200`],[`type`,`button`,1,`mx-btn`,`mx-focus`,`ml-auto`,`text-danger`,`hover:text-danger`,3,`click`],[`name`,`trash`,3,`size`],[1,`truncate`,`text-ink-100`,3,`title`],[1,`truncate`,`text-[11px]`,`text-ink-500`],[1,`text-ink-300`],[1,`text-ink-200`],[1,`text-ink-600`],[1,`text-ink-400`],[1,`tabular-nums`,`text-ink-200`],[1,`flex`,`items-center`,`justify-end`],[`compact`,``,3,`picked`,`label`,`items`]],template:function(e,n){e&1&&($i(0,`section`,0)(1,`div`,1)(2,`div`,2)(3,`div`)(4,`h1`,3),fS(5),Nc(),$i(6,`div`,4)(7,`div`)(8,`div`,5),fS(9),Nc(),$i(10,`div`,6),fS(11),SC(12,et,2,1,`span`,7),Nc()(),$i(13,`div`)(14,`div`,5),fS(15),Nc(),$i(16,`div`,6),fS(17),Nc()()()(),$i(18,`div`,8)(19,`app-action-menu`,9),Jm(`picked`,function(s){return n.onMenu(s)}),Nc()()(),$i(20,`div`,10)(21,`label`,11)(22,`span`,12),Gm(23,`app-icon`,13),Nc(),$i(24,`span`,14),fS(25),Nc(),$i(26,`input`,15),Jm(`input`,function(s){return n.search.set(s.target.value)}),Nc()(),$i(27,`app-filter-switch`,16),vg(`onChange`,function(s){return vS(n.onlyUnused,s)||(n.onlyUnused=s),s}),Nc(),SC(28,tt,2,1,`span`,17),Nc(),Gm(29,`app-page-messages`,18),SC(30,nt,6,3,`div`,19),Nc(),$i(31,`div`,20)(32,`app-data-table`,21),vg(`selectedChange`,function(s){return vS(n.selected,s)||(n.selected=s),s}),_m(33,ot,3,3,`ng-template`,22)(34,at,2,1,`ng-template`,23)(35,st,2,1,`ng-template`,24)(36,mt,2,1,`ng-template`,25)(37,pt,2,1,`ng-template`,26)(38,dt,2,2,`ng-template`,27),Nc()()(),$i(39,`app-create-volume-dialog`,28),vg(`openChange`,function(s){return vS(n.createOpen,s)||(n.createOpen=s),s}),Nc(),$i(40,`app-volume-browser-dialog`,29),vg(`openChange`,function(s){return vS(n.browseOpen,s)||(n.browseOpen=s),s}),Nc(),$i(41,`app-confirm-dialog`,30),vg(`openChange`,function(s){return vS(n.confirmOpen,s)||(n.confirmOpen=s),s}),Jm(`confirmed`,function(){return n.confirm()}),Nc()),e&2&&(ec(5),pg(n.t().title),ec(4),pg(n.t().diskSpace),ec(2),Ac(` `,n.totalSize(),` `),ec(),kC(n.loadingSizes()?12:-1),ec(3),pg(n.t().unused),ec(2),pg(n.unusedCount()),ec(2),Wm(`label`,n.t().menuLabel)(`items`,n.menuItems()),ec(4),Wm(`size`,15),ec(2),pg(n.t().searchLabel),ec(),Wm(`placeholder`,n.t().searchLabel)(`value`,n.search()),ec(),Wm(`label`,n.t().onlyUnused),hg(`on`,n.onlyUnused),ec(),kC(n.loading()?28:-1),ec(),Wm(`problem`,n.problem()),ec(),kC(n.selected().size>0?30:-1),ec(2),Wm(`columns`,n.columns())(`rows`,n.rows())(`trackKey`,n.trackKey),hg(`selected`,n.selected),Wm(`emptyMessage`,n.t().empty),ec(7),hg(`open`,n.createOpen),ec(),hg(`open`,n.browseOpen),Wm(`volume`,n.browseVolume()),ec(),hg(`open`,n.confirmOpen),Wm(`title`,n.actionTitle())(`description`,n.actionDescription())(`confirmLabel`,n.actionConfirmLabel())(`confirmIcon`,n.actionConfirmIcon()))},dependencies:[z,x$1,My,W,u,P,V,Q,G],encapsulation:2})}})();export{ve as VolumesPage};
@@ -1 +1 @@
1
- import{$n as sT,At as Wm,B as Jm,Bn as oT,Dn as kg,En as kc,Fn as mj,Gn as pg,H as Kr,In as nS,J as My,Kn as pj,M as HC,P as I,Pn as mg,Pt as X,Sn as jc,Tr as zr,Vt as _c,W as Ld,X as Nc,Zn as rf,_r as wt,_t as Sc,an as f,bt as Tc,c as Am,en as dT,gt as SS,hr as wc,ht as SC,i as $i,in as ec,k as Gm,lr as ve,lt as RC,m as CS,o as $t,on as fS,pt as Rp,r as $d,sr as vS,ur as vg,vn as hg,yt as TC}from"./chunk-DOxgdvK8.js";import"./chunk-C7ZKT99Y.js";import{i as h,r as d}from"./chunk-Dj0SqC61.js";import{n as v,t as u}from"./chunk-MHYwHTvv.js";import"./chunk-Bo4H3_Rk.js";import{a as Yt,u as ra}from"./chunk-uyqlb3cB.js";import"./chunk-BDeMOmys.js";import{_ as pn,d as dn,f as fn,g as ln,l as an,m as ie,r as Je$1,u as cn,v as un}from"./chunk-C5hTG6ZQ.js";import{i as z,n as oe,r as x,t as h$1}from"./chunk-BIryu19T.js";import{n as P,t as K}from"./chunk-ltArY2xW.js";import{n as p,t as M}from"./chunk-DYUws9mp.js";import{n as V,t as G$1}from"./chunk-BgAYDwld.js";import{n as W,t as J}from"./chunk-sKoSitq-.js";import{n as u$1,t as c}from"./chunk-CKI6HOt5.js";var je;var q;var Se=f(()=>{Kr();M();Kr();je=`containers.groups`,q=class i{assignments=I(p).entries(je);names=$t(()=>[...new Set(this.assignments().values())].sort((e,n)=>e.localeCompare(n)));groupOf(t){return this.assignments().get(t)??null}assign(t,e){let n=e.trim();if(n===``)return;let o=new Map(this.assignments());for(let a of t)o.set(a,n);this.assignments.set(o)}release(t){let e=new Map(this.assignments());for(let n of t)e.delete(n);this.assignments.set(e)}rename(t,e){let n=e.trim();if(n===``||n===t)return;let o=new Map(this.assignments());for(let[a,m]of o)m===t&&o.set(a,n);this.assignments.set(o)}dissolve(t){let e=new Map([...this.assignments()].filter(([,n])=>n!==t));this.assignments.set(e)}static ɵfac=function(e){return new(e||i)};static ɵprov=X({token:i,factory:i.ɵfac,providedIn:`root`})}});function Fe(i,t){if(i&1){let e=RC();$i(0,`button`,20),Jm(`click`,function(){let o=Ld(e).$implicit;return $d(HC(3).onInput(o))}),fS(1),Nc()}if(i&2){let e=t.$implicit;ec(),_c(` `,e,` `)}}function Le(i,t){if(i&1&&($i(0,`div`)(1,`span`,9),fS(2),Nc(),$i(3,`div`,18),Tc(4,Fe,2,1,`button`,19,Sc),Nc()()),i&2){let e=HC(2);ec(2),pg(e.t().existing),ec(2),kc(e.others())}}function Be(i,t){i&1&&($i(0,`p`,12),fS(1),Nc()),i&2&&(ec(),pg(t))}function $e(i,t){if(i&1){let e=RC();Gm(0,`div`,2),$i(1,`div`,3)(2,`div`,4)(3,`h2`,5),fS(4),Nc(),$i(5,`p`,6),fS(6),Nc(),$i(7,`form`,7),Jm(`submit`,function(o){Ld(e);return $d(HC().submit(o))}),$i(8,`label`,8)(9,`span`,9),fS(10),Nc(),$i(11,`input`,10),Jm(`input`,function(o){Ld(e);return $d(HC().onInput(o.target.value))}),Nc()(),SC(12,Le,6,1,`div`),$i(13,`p`,11),fS(14),Nc(),SC(15,Be,2,1,`p`,12),$i(16,`div`,13)(17,`button`,14),Gm(18,`app-icon`,15),fS(19),Nc(),$i(20,`button`,16),Gm(21,`app-icon`,17),fS(22),Nc()()()()()}if(i&2){let e,n=HC();ec(4),pg(n.title()),ec(2),pg(n.description()),ec(4),pg(n.t().nameLabel),ec(),nS(n.field),Wm(`placeholder`,n.t().namePlaceholder)(`value`,n.name()),ec(),TC(n.others().length>0?12:-1),ec(2),pg(n.t().hint),ec(),TC((e=n.problem())?15:-1,e),ec(3),Wm(`size`,14),ec(),_c(` `,n.common().cancel,` `),ec(),Wm(`disabled`,!n.canSubmit()),ec(),Wm(`size`,14),ec(),_c(` `,n.t().submit,` `)}}var We;var U;var De=f(()=>{Kr();Je$1();dT();sT();Kr();We=`mx-focus mt-1 w-full rounded-md border border-ink-700 bg-ink-800 px-3 py-1.5 text-[13px] text-ink-100 placeholder:text-ink-500`,U=class i{open=mj(!1);title=jc.required();description=jc.required();initial=jc(``);suggestions=jc([]);reserved=jc([]);submitted=pj();t=$t(()=>oT().containers.page.groupDialog);common=$t(()=>oT().common);field=We;name=wt(``);touched=wt(!1);others=$t(()=>this.suggestions().filter(t=>t!==this.initial()));canSubmit=$t(()=>{let t=this.name().trim();return t!==``&&!this.reserved().includes(t)});problem=$t(()=>{let t=this.name().trim();return this.touched()?t===``?this.t().empty:this.reserved().includes(t)?this.t().reserved(t):null:null});constructor(){rf(()=>{this.open()&&kg(()=>{this.name.set(this.initial()),this.touched.set(!1)})})}onInput(t){this.name.set(t),this.touched.set(!0)}submit(t){if(t.preventDefault(),!this.canSubmit()){this.touched.set(!0);return}this.open.set(!1),this.submitted.emit(this.name().trim())}static ɵfac=function(e){return new(e||i)};static ɵcmp=wc({type:i,selectors:[[`app-group-name-dialog`]],inputs:{open:[1,`open`],title:[1,`title`],description:[1,`description`],initial:[1,`initial`],suggestions:[1,`suggestions`],reserved:[1,`reserved`]},outputs:{open:`openChange`,submitted:`submitted`},decls:2,vars:1,consts:[[`rdxDialogRoot`,``,3,`openChange`,`open`],[`rdxDialogPortal`,``],[`rdxDialogBackdrop`,``,1,`fixed`,`inset-0`,`z-40`,`bg-black/50`],[`rdxDialogViewport`,``,1,`fixed`,`inset-0`,`z-50`,`grid`,`place-items-center`,`p-4`],[`rdxDialogPopup`,``,1,`w-full`,`max-w-md`,`rounded-lg`,`border`,`border-ink-700`,`bg-ink-850`,`p-5`,`shadow-2xl`],[`rdxDialogTitle`,``,1,`text-[15px]`,`font-semibold`,`text-ink-100`],[`rdxDialogDescription`,``,1,`mt-1`,`text-[13px]`,`text-ink-400`],[1,`mt-4`,`space-y-3`,3,`submit`],[1,`block`],[1,`text-[12px]`,`text-ink-400`],[`type`,`text`,`autocomplete`,`off`,`spellcheck`,`false`,`data-testid`,`groepsnaam`,3,`input`,`placeholder`,`value`],[1,`text-[12px]`,`text-ink-500`],[`role`,`alert`,1,`text-[13px]`,`text-danger`],[1,`flex`,`justify-end`,`gap-2`,`pt-2`],[`type`,`button`,`rdxDialogClose`,``,1,`mx-btn`,`mx-focus`],[`name`,`close`,3,`size`],[`type`,`submit`,1,`mx-btn`,`mx-focus`,3,`disabled`],[`name`,`check`,3,`size`],[1,`mt-1`,`flex`,`flex-wrap`,`gap-1.5`],[`type`,`button`,1,`mx-focus`,`cursor-pointer`,`rounded-full`,`border`,`border-ink-700`,`px-2.5`,`py-0.5`,`text-[12px]`,`text-ink-300`,`transition-colors`,`hover:border-accent`,`hover:text-ink-100`],[`type`,`button`,1,`mx-focus`,`cursor-pointer`,`rounded-full`,`border`,`border-ink-700`,`px-2.5`,`py-0.5`,`text-[12px]`,`text-ink-300`,`transition-colors`,`hover:border-accent`,`hover:text-ink-100`,3,`click`]],template:function(e,n){e&1&&($i(0,`div`,0),vg(`openChange`,function(a){return vS(n.open,a)||(n.open=a),a}),Am(1,$e,23,15,`ng-template`,1),Nc()),e&2&&hg(`open`,n.open)},dependencies:[ie,ln,an,pn,cn,fn,dn,un,My],encapsulation:2})}});function Ue(i,t){i&1&&($i(0,`p`,13),fS(1),Nc()),i&2&&(ec(),_c(` `,t,` `))}function He(i,t){if(i&1){let e=RC();$i(0,`button`,31),Jm(`click`,function(){Ld(e);return $d(HC(2).askGroupSelected())}),Gm(1,`app-icon`,37),fS(2),Nc()}if(i&2){let e=HC(2);ec(),Wm(`size`,14),ec(),_c(` `,e.t().group.addToGroup,` `)}}function Ye(i,t){if(i&1){let e=RC();$i(0,`div`,14)(1,`span`,28),fS(2),Nc(),$i(3,`button`,29),Jm(`click`,function(){Ld(e);return $d(HC().runSelected(`start`))}),Gm(4,`app-icon`,30),fS(5),Nc(),$i(6,`button`,31),Jm(`click`,function(){Ld(e);return $d(HC().runSelected(`stop`))}),Gm(7,`app-icon`,32),fS(8),Nc(),$i(9,`button`,31),Jm(`click`,function(){Ld(e);return $d(HC().runSelected(`restart`))}),Gm(10,`app-icon`,33),fS(11),Nc(),SC(12,He,3,2,`button`,34),$i(13,`button`,35),Jm(`click`,function(){Ld(e);return $d(HC().askRemoveSelected())}),Gm(14,`app-icon`,36),fS(15),Nc()()}if(i&2){let e=HC();ec(2),pg(e.t().selected(e.selected().size)),ec(2),Wm(`size`,14),ec(),_c(` `,e.common().start,` `),ec(2),Wm(`size`,14),ec(),_c(` `,e.common().stop,` `),ec(2),Wm(`size`,14),ec(),_c(` `,e.common().restart,` `),ec(),TC(e.groupableSelection().length>0?12:-1),ec(2),Wm(`size`,14),ec(),_c(` `,e.common().remove,` `)}}function Je(i,t){if(i&1&&($i(0,`span`,42),fS(1),Nc()),i&2){let e=HC(2);ec(),_c(` `,e.t().group.manual,` `)}}function Qe(i,t){if(i&1){let e=RC();$i(0,`div`,38)(1,`button`,39),Jm(`click`,function(){let o=Ld(e).$implicit;return $d(HC().toggleGroup(o.key))}),Gm(2,`app-icon`,40),$i(3,`span`,41),fS(4),Nc()(),SC(5,Je,2,1,`span`,42),$i(6,`span`,43),fS(7),Nc(),$i(8,`div`,44)(9,`span`,45),fS(10),Nc(),$i(11,`span`,46),fS(12),Nc(),$i(13,`div`,47)(14,`app-action-menu`,48),Jm(`picked`,function(o){let a=Ld(e).$implicit;return $d(HC().onGroupMenu(o,a))}),Nc()()()()}if(i&2){let e=t.$implicit,n=HC(),o=n.groupBusy(e);ec(),zr(`aria-expanded`,!e.collapsed)(`aria-label`,e.collapsed?n.t().group.expand(e.label):n.t().group.collapse(e.label)),ec(),Wm(`name`,e.collapsed?`chevronRight`:`chevronDown`)(`size`,14),ec(2),pg(e.label),ec(),TC(e.manual?5:-1),ec(2),mg(` `,n.groupCount(e),` · `,n.groupRunning(e),` `),ec(3),pg(n.groupCpu(e)),ec(2),pg(n.groupMemory(e)),ec(2),Wm(`label`,n.t().group.menu(e.label))(`items`,n.groupMenu(e,o))}}function Xe(i,t){if(i&1&&Gm(0,`app-state-dot`,49),i&2){let e=t.$implicit;Wm(`state`,e.state)(`title`,e.status),zr(`aria-label`,e.status)}}function Ze(i,t){if(i&1&&($i(0,`a`,52),Gm(1,`app-icon`,54),Nc()),i&2){let e=t,n=HC().$implicit,o=HC();Wm(`routerLink`,SS(4,Y,n.id))(`title`,o.t().row.missingNetwork(e)),zr(`aria-label`,o.t().row.missingNetwork(e)),ec(),Wm(`size`,13)}}function et(i,t){if(i&1&&($i(0,`a`,53),Gm(1,`app-icon`,55),Nc()),i&2){let e=HC().$implicit,n=HC();Wm(`routerLink`,SS(5,Y,e.id))(`queryParams`,CS(7,Ke))(`title`,n.actions().copyDiagnosis),zr(`aria-label`,n.t().row.diagnosisOf(e.name)),ec(),Wm(`size`,13)}}function tt(i,t){if(i&1&&($i(0,`div`,50)(1,`a`,51),fS(2),Nc(),SC(3,Ze,2,6,`a`,52),SC(4,et,2,8,`a`,53),Nc()),i&2){let e,n=t.$implicit,o=HC();ec(),Wm(`routerLink`,SS(5,Y,n.id))(`title`,n.name),ec(),pg(n.name),ec(),TC((e=n.missingNetwork)?3:-1,e),ec(),TC(o.inTrouble(n)?4:-1)}}function nt(i,t){if(i&1&&($i(0,`span`,56),fS(1),Nc()),i&2){let e=t.$implicit;ec(),pg(e.shortId)}}function it(i,t){if(i&1&&($i(0,`span`,57),fS(1),Nc()),i&2){let e=t.$implicit;Wm(`title`,e.image),ec(),pg(e.image)}}function ot(i,t){if(i&1&&($i(0,`a`,60),fS(1),Gm(2,`app-icon`,62),Nc()),i&2){let e=HC().$implicit;Wm(`href`,`http://localhost:`+e.hostPort,Rp),ec(),mg(` `,e.hostPort,`:`,e.containerPort,` `),ec(),Wm(`size`,11)}}function rt(i,t){if(i&1&&($i(0,`span`,61),fS(1),Nc()),i&2){let e=HC().$implicit;ec(),mg(``,e.containerPort,`/`,e.protocol)}}function at(i,t){if(i&1&&SC(0,ot,3,4,`a`,60)(1,rt,2,2,`span`,61),i&2){let e=t.$implicit;TC(e.hostPort?0:1)}}function st(i,t){if(i&1&&($i(0,`span`,58),fS(1),Nc()),i&2){let e=HC().$implicit;ec(),_c(`+`,e.ports.length-2)}}function lt(i,t){i&1&&($i(0,`span`,59),fS(1,`—`),Nc())}function pt(i,t){if(i&1&&(Tc(0,at,2,1,null,null,qe),SC(2,st,2,1,`span`,58),SC(3,lt,2,0,`span`,59)),i&2){let e=t.$implicit;kc(e.ports.slice(0,2)),ec(2),TC(e.ports.length>2?2:-1),ec(),TC(e.ports.length===0?3:-1)}}function dt(i,t){if(i&1&&($i(0,`span`,63),fS(1),Nc()),i&2){let e=t.$implicit,n=HC();ec(),pg(n.cpuOf(e.id))}}function ct(i,t){if(i&1&&($i(0,`span`,63),fS(1),Nc()),i&2){let e=t.$implicit,n=HC();ec(),pg(n.memoryOf(e.id))}}function mt(i,t){if(i&1){let e=RC();$i(0,`div`,64)(1,`app-action-menu`,48),Jm(`picked`,function(o){let a=Ld(e).$implicit;return $d(HC().onRowMenu(o,a))}),Nc()()}if(i&2){let e=t.$implicit,n=HC(),o=n.pending().has(e.id);ec(),Wm(`label`,n.t().row.menu(e.name))(`items`,n.rowMenu(e,o))}}var Y;var Ke;var qe;var G;var Pe;f(()=>{Kr();ra();v();h();Se();M();G$1();J();oe();K();dT();u$1();sT();De();Kr();Y=i=>[`/containers`,i],Ke=()=>({diagnose:1}),qe=(i,t)=>t.containerPort;G=``,Pe=class i{store=I(u);preferences=I(p);ownGroups=I(q);t=$t(()=>oT().containers.page);actions=$t(()=>oT().containers.actions);common=$t(()=>oT().common);columns=$t(()=>{let t=this.t().columns;return[{key:`state`,label:``,width:`28px`},{key:`name`,label:t.name},{key:`shortId`,label:t.id,width:`120px`},{key:`image`,label:t.image},{key:`ports`,label:t.ports,width:`170px`},{key:`cpu`,label:t.cpu,width:`80px`,align:`right`},{key:`memory`,label:t.memory,width:`110px`,align:`right`},{key:`actions`,label:t.actions,width:`84px`,align:`right`}]});loading=this.store.loading;problem=this.store.problem;stats=this.store.stats;pending=this.store.pending;search=wt(``);zoek=jc(void 0);onlyRunning=this.preferences.flag(`containers.onlyRunning`);collapsed=this.preferences.names(`containers.collapsedGroups`);selected=wt(new Set);removal=wt(null);confirmOpen=wt(!1);groupEdit=wt(null);groupDialogOpen=wt(!1);ownGroupNames=this.ownGroups.names;composeProjects=$t(()=>{let t=new Set;for(let e of this.store.containers())e.composeProject!==null&&t.add(e.composeProject);return[...t]});groupableSelection=$t(()=>{let t=this.selected();return this.store.containers().filter(e=>t.has(e.id)&&e.composeProject===null)});rows=$t(()=>{let t=this.search().trim().toLowerCase(),e=this.onlyRunning();return this.store.containers().filter(n=>e&&n.state!==`running`?!1:t===``?!0:`${n.name} ${n.image} ${n.shortId}`.toLowerCase().includes(t))});groups=$t(()=>{let t=this.rows(),e=new Map;for(let m of t){let k=this.groupKeyOf(m),N=e.get(k);N===void 0?e.set(k,[m]):N.push(m)}if(!this.store.containers().some(m=>this.groupKeyOf(m)!==G))return null;let n=this.collapsed(),o=this.composeProjects(),a=[...e.keys()].filter(m=>m!==G).sort((m,k)=>m.localeCompare(k));return e.has(G)&&a.push(G),a.map(m=>{let k=e.get(m)??[],N=n.has(m);return{key:m,label:m===G?this.t().group.loose:m,manual:m!==G&&!o.includes(m),rows:N?[]:k,all:k,running:k.filter(Ee=>Ee.state===`running`).length,collapsed:N}})});visibleRows=$t(()=>{let t=this.groups();return t===null?this.rows():t.flatMap(e=>e.rows)});totals=$t(()=>{let t=0,e=0;for(let n of this.store.runningIds()){let o=this.stats().get(n);t+=o?.cpuPercent??0,e+=o?.memoryBytes??0}return{cpu:t,memory:d(e)}});selectedIds=$t(()=>[...this.selected()]);trackKey=t=>t.id;constructor(){rf(()=>{let t=this.zoek();t!==void 0&&kg(()=>this.search.set(t))}),rf(()=>this.store.watchStats(this.store.runningIds())),I(ve).onDestroy(()=>this.store.watchStats([])),this.store.refresh()}groupKeyOf(t){return t.composeProject??this.ownGroups.groupOf(t.name)??G}inTrouble(t){return(t.state===`exited`||t.state===`dead`)&&t.exitCode!==null&&t.exitCode!==0&&t.exitCode!==143||t.state===`restarting`||t.status.includes(`(unhealthy)`)}cpuOf(t){let e=this.stats().get(t);return e===void 0?`—`:`${e.cpuPercent.toFixed(2)}%`}memoryOf(t){let e=this.stats().get(t);return e===void 0?`—`:d(e.memoryBytes)}primaryAction(t){let e=this.common();return t.state===`running`||t.state===`restarting`?{action:`stop`,icon:`stop`,label:e.stop}:t.state===`paused`?{action:`unpause`,icon:`play`,label:this.actions().resume}:{action:`start`,icon:`play`,label:e.start}}toggleGroup(t){let e=new Set(this.collapsed());if(!e.delete(t)){e.add(t);let n=new Set((this.groups()??[]).find(a=>a.key===t)?.all.map(a=>a.id)),o=new Set([...this.selected()].filter(a=>!n.has(a)));this.selected.set(o)}this.collapsed.set(e)}groupCount(t){return this.t().group.count(t.all.length)}groupRunning(t){return this.t().group.running(t.running)}groupCpu(t){let e=t.all.map(n=>this.stats().get(n.id)).filter(n=>n!==void 0);return e.length===0?`—`:`${e.reduce((n,o)=>n+o.cpuPercent,0).toFixed(2)}%`}groupMemory(t){let e=t.all.map(n=>this.stats().get(n.id)).filter(n=>n!==void 0);return e.length===0?`—`:d(e.reduce((n,o)=>n+o.memoryBytes,0))}groupBusy(t){return t.all.some(e=>this.pending().has(e.id))}rowMenu(t,e){let n=this.primaryAction(t),o=t.state===`running`,a=this.t().group,m=[{id:n.action,label:n.label,icon:n.icon,disabled:e},{id:`restart`,label:this.common().restart,icon:`refresh`,disabled:e||!o},{id:`pause`,label:this.actions().pause,icon:`pause`,disabled:e||!o}];return t.composeProject===null&&(m.push({id:`group`,label:a.addToGroup,icon:`folder`,separated:!0}),this.ownGroups.groupOf(t.name)!==null&&m.push({id:`ungroup`,label:a.removeFromGroup,icon:`close`})),m.push({id:`remove`,label:this.common().remove,icon:`trash`,disabled:e,danger:!0,separated:!0}),m}onRowMenu(t,e){switch(t){case`remove`:this.askRemove(e);break;case`group`:this.askGroup([e.name]);break;case`ungroup`:this.ownGroups.release([e.name]);break;default:this.run(t,e.id)}}groupMenu(t,e){let n=this.t().group,o=t.running===0,a=[{id:`start`,label:n.startAll,icon:`play`,disabled:e},{id:`stop`,label:n.stopAll,icon:`stop`,disabled:e||o},{id:`restart`,label:n.restartAll,icon:`refresh`,disabled:e||o}];return t.manual&&a.push({id:`rename`,label:n.rename,icon:`pencil`,separated:!0},{id:`dissolve`,label:n.dissolve,icon:`eraser`}),a.push({id:`remove`,label:n.removeAll,icon:`trash`,disabled:e,danger:!0,separated:!0}),a}onGroupMenu(t,e){switch(t){case`remove`:this.askRemoveGroup(e);break;case`rename`:this.askRenameGroup(e.key);break;case`dissolve`:this.ownGroups.dissolve(e.key);break;default:this.runGroup(t,e)}}runGroup(t,e){this.store.runMany(t,e.all.map(n=>n.id))}askRemoveGroup(t){this.removal.set({kind:`group`,ids:t.all.map(e=>e.id),project:t.label}),this.confirmOpen.set(!0)}run(t,e){this.store.run(t,e)}runSelected(t){this.store.runMany(t,this.selectedIds())}askRemove(t){this.removal.set({kind:`one`,ids:[t.id],name:t.name}),this.confirmOpen.set(!0)}askRemoveSelected(){let t=this.selectedIds();this.removal.set({kind:`many`,ids:t}),this.confirmOpen.set(!0)}askGroup(t){t.length!==0&&(this.groupEdit.set({kind:`assign`,names:t}),this.groupDialogOpen.set(!0))}askGroupSelected(){this.askGroup(this.groupableSelection().map(t=>t.name))}askRenameGroup(t){this.groupEdit.set({kind:`rename`,group:t}),this.groupDialogOpen.set(!0)}groupDialogTitle(){let t=this.t().groupDialog;return this.groupEdit()?.kind===`rename`?t.renameTitle:t.assignTitle}groupDialogDescription(){let t=this.groupEdit(),e=this.t().groupDialog;return t===null?``:t.kind===`rename`?e.renameDescription(t.group):t.names.length===1?e.assignOne(t.names[0]):e.assignMany(t.names.length)}groupDialogInitial(){let t=this.groupEdit();if(t===null)return``;if(t.kind===`rename`)return t.group;let e=new Set(t.names.map(o=>this.ownGroups.groupOf(o))),[n]=e;return e.size===1&&n!==void 0&&n!==null?n:``}onGroupName(t){let e=this.groupEdit();e!==null&&(e.kind===`assign`?this.ownGroups.assign(e.names,t):this.renameGroup(e.group,t),this.groupEdit.set(null))}renameGroup(t,e){this.ownGroups.rename(t,e);let n=this.collapsed();if(n.has(t)){let o=new Set(n);o.delete(t),o.add(e),this.collapsed.set(o)}}confirmRemove(){let t=this.removal();t!==null&&(this.store.runMany(`remove`,t.ids),this.selected.set(new Set),this.removal.set(null))}removalDescription(){let t=this.removal();if(t===null)return``;let e=this.t().confirm;switch(t.kind){case`one`:return e.one(t.name);case`many`:return e.many(t.ids.length);case`group`:return e.group(t.ids.length,t.project)}}static ɵfac=function(e){return new(e||i)};static ɵcmp=wc({type:i,selectors:[[`app-containers-page`]],inputs:{zoek:[1,`zoek`]},decls:38,vars:28,consts:[[1,`flex`,`h-full`,`flex-col`],[1,`shrink-0`,`px-6`,`pt-5`,`pb-3`],[1,`text-xl`,`font-semibold`,`tracking-tight`,`text-ink-100`],[1,`mt-3`,`flex`,`flex-wrap`,`gap-x-10`,`gap-y-2`],[1,`text-[12px]`,`text-ink-400`],[1,`text-[15px]`,`font-medium`,`text-ink-100`],[1,`mt-4`,`flex`,`flex-wrap`,`items-center`,`gap-4`],[1,`relative`,`flex`,`items-center`],[1,`pointer-events-none`,`absolute`,`left-2.5`,`text-ink-500`],[`name`,`search`,3,`size`],[1,`sr-only`],[`type`,`search`,1,`mx-focus`,`w-72`,`rounded-md`,`border`,`border-ink-700`,`bg-ink-850`,`py-1.5`,`pr-3`,`pl-8`,`text-[13px]`,`text-ink-100`,`placeholder:text-ink-500`,3,`input`,`placeholder`,`value`],[3,`onChange`,`label`,`on`],[1,`mt-3`,`rounded-md`,`border`,`border-danger/40`,`bg-danger/10`,`px-3`,`py-2`,`text-[13px]`,`text-danger`],[1,`mt-3`,`flex`,`items-center`,`gap-2`,`rounded-md`,`border`,`border-ink-700`,`bg-ink-850`,`px-3`,`py-2`],[1,`min-h-0`,`flex-1`,`overflow-y-auto`,`px-6`,`pb-6`],[3,`selectedChange`,`columns`,`rows`,`groups`,`trackKey`,`selected`,`emptyMessage`],[`appGroupHeader`,``],[`appCell`,`state`],[`appCell`,`name`],[`appCell`,`shortId`],[`appCell`,`image`],[`appCell`,`ports`],[`appCell`,`cpu`],[`appCell`,`memory`],[`appCell`,`actions`],[3,`openChange`,`confirmed`,`open`,`title`,`description`],[3,`openChange`,`submitted`,`open`,`title`,`description`,`initial`,`suggestions`,`reserved`],[1,`text-[13px]`,`text-ink-200`],[`type`,`button`,1,`mx-btn`,`mx-focus`,`ml-auto`,3,`click`],[`name`,`play`,3,`size`],[`type`,`button`,1,`mx-btn`,`mx-focus`,3,`click`],[`name`,`stop`,3,`size`],[`name`,`refresh`,3,`size`],[`type`,`button`,1,`mx-btn`,`mx-focus`],[`type`,`button`,1,`mx-btn`,`mx-focus`,`text-danger`,`hover:text-danger`,3,`click`],[`name`,`trash`,3,`size`],[`name`,`folder`,3,`size`],[1,`flex`,`items-center`,`gap-3`],[`type`,`button`,1,`mx-focus`,`flex`,`min-w-0`,`cursor-pointer`,`items-center`,`gap-2`,`text-left`,3,`click`],[1,`shrink-0`,`text-ink-500`,3,`name`,`size`],[1,`truncate`,`font-medium`,`text-ink-100`],[1,`shrink-0`,`rounded`,`border`,`border-ink-700`,`px-1.5`,`py-0.5`,`text-[11px]`,`text-ink-400`],[1,`shrink-0`,`text-[12px]`,`text-ink-400`],[1,`ml-auto`,`flex`,`shrink-0`,`items-center`],[`data-testid`,`groep-cpu`,1,`w-20`,`shrink-0`,`text-right`,`tabular-nums`,`text-[12px]`,`text-ink-400`],[`data-testid`,`groep-geheugen`,1,`w-[110px]`,`shrink-0`,`text-right`,`tabular-nums`,`text-[12px]`,`text-ink-400`],[1,`flex`,`w-[84px]`,`shrink-0`,`items-center`,`justify-end`],[`compact`,``,3,`picked`,`label`,`items`],[3,`state`,`title`],[1,`flex`,`min-w-0`,`items-center`,`gap-1.5`],[1,`mx-focus`,`block`,`truncate`,`text-ink-100`,`hover:text-accent`,`hover:underline`,3,`routerLink`,`title`],[`data-testid`,`row-missing-network`,1,`mx-focus`,`shrink-0`,`rounded`,`text-danger`,`hover:text-ink-100`,3,`routerLink`,`title`],[`data-testid`,`row-diagnose`,1,`mx-focus`,`shrink-0`,`rounded`,`text-warn`,`hover:text-ink-100`,3,`routerLink`,`queryParams`,`title`],[`name`,`networks`,3,`size`],[`name`,`warning`,3,`size`],[1,`font-mono`,`text-[12px]`,`text-ink-400`],[1,`block`,`truncate`,`text-ink-300`,3,`title`],[1,`text-[11px]`,`text-ink-500`],[1,`text-ink-600`],[`target`,`_blank`,`rel`,`noreferrer`,1,`mx-focus`,`mr-2`,`inline-flex`,`items-center`,`gap-1`,`text-accent`,`hover:underline`,3,`href`],[1,`mr-2`,`text-ink-500`],[`name`,`external`,3,`size`],[1,`tabular-nums`,`text-ink-200`],[1,`flex`,`items-center`,`justify-end`]],template:function(e,n){if(e&1&&($i(0,`section`,0)(1,`div`,1)(2,`h1`,2),fS(3),Nc(),$i(4,`div`,3)(5,`div`)(6,`div`,4),fS(7),Nc(),$i(8,`div`,5),fS(9),Nc()(),$i(10,`div`)(11,`div`,4),fS(12),Nc(),$i(13,`div`,5),fS(14),Nc()()(),$i(15,`div`,6)(16,`label`,7)(17,`span`,8),Gm(18,`app-icon`,9),Nc(),$i(19,`span`,10),fS(20),Nc(),$i(21,`input`,11),Jm(`input`,function(a){return n.search.set(a.target.value)}),Nc()(),$i(22,`app-filter-switch`,12),vg(`onChange`,function(a){return vS(n.onlyRunning,a)||(n.onlyRunning=a),a}),Nc()(),SC(23,Ue,2,1,`p`,13),SC(24,Ye,16,10,`div`,14),Nc(),$i(25,`div`,15)(26,`app-data-table`,16),vg(`selectedChange`,function(a){return vS(n.selected,a)||(n.selected=a),a}),Am(27,Qe,15,12,`ng-template`,17)(28,Xe,1,3,`ng-template`,18)(29,tt,5,7,`ng-template`,19)(30,nt,2,1,`ng-template`,20)(31,it,2,2,`ng-template`,21)(32,pt,4,2,`ng-template`,22)(33,dt,2,1,`ng-template`,23)(34,ct,2,1,`ng-template`,24)(35,mt,2,2,`ng-template`,25),Nc()()(),$i(36,`app-confirm-dialog`,26),vg(`openChange`,function(a){return vS(n.confirmOpen,a)||(n.confirmOpen=a),a}),Jm(`confirmed`,function(){return n.confirmRemove()}),Nc(),$i(37,`app-group-name-dialog`,27),vg(`openChange`,function(a){return vS(n.groupDialogOpen,a)||(n.groupDialogOpen=a),a}),Jm(`submitted`,function(a){return n.onGroupName(a)}),Nc()),e&2){let o;ec(3),pg(n.t().title),ec(4),pg(n.t().cpuUsage),ec(2),_c(``,n.totals().cpu.toFixed(2),`%`),ec(3),pg(n.t().memoryUsage),ec(2),pg(n.totals().memory),ec(4),Wm(`size`,15),ec(2),pg(n.t().search),ec(),Wm(`placeholder`,n.t().search)(`value`,n.search()),ec(),Wm(`label`,n.t().onlyRunning),hg(`on`,n.onlyRunning),ec(),TC((o=n.problem())?23:-1,o),ec(),TC(n.selected().size>0?24:-1),ec(2),Wm(`columns`,n.columns())(`rows`,n.visibleRows())(`groups`,n.groups())(`trackKey`,n.trackKey),hg(`selected`,n.selected),Wm(`emptyMessage`,n.t().empty),ec(10),hg(`open`,n.confirmOpen),Wm(`title`,n.t().confirm.title)(`description`,n.removalDescription()),ec(),hg(`open`,n.groupDialogOpen),Wm(`title`,n.groupDialogTitle())(`description`,n.groupDialogDescription())(`initial`,n.groupDialogInitial())(`suggestions`,n.ownGroupNames())(`reserved`,n.composeProjects())}},dependencies:[z,x,h$1,My,W,Yt,P,c,V,U],encapsulation:2})}})();export{Pe as ContainersPage};
1
+ import{B as Jm,Ct as Tc,Dn as kC,En as jc,Fn as mj,Ft as Wm,Gn as pg,H as Kr,In as nS,J as My,Kn as pj,Kt as _m,M as HC,On as kc,P as I,Pn as mg,Sn as hg,Tr as zr,Vn as ok,W as Ld,X as Nc,Zn as rf,_r as wt,_t as SS,cn as ec,er as sk,gt as SC,hr as wc,i as $i,in as dk,k as Gm,ln as f,lr as ve,m as CS,mt as Rp,o as $t,r as $d,s as Ac,sr as vS,un as fS,ur as vg,ut as RC,vt as Sc,wt as Tg,zt as X}from"./chunk-PPlXONP3.js";import"./chunk-Dob_vN7f.js";import{i as h,r as d}from"./chunk-DSdDrNk7.js";import{n as v,t as u}from"./chunk-DLUPTp1Q.js";import"./chunk-InjvrsZj.js";import{a as Yt,u as ra}from"./chunk-CrwwnTWy.js";import"./chunk-Bz_HteBH.js";import{_ as pn,d as dn,f as fn,g as ln,l as an,m as ie,r as Je$1,u as cn,v as un}from"./chunk-DdnN9mbh.js";import{n as u$1,t as c}from"./chunk-CLMm_XWR.js";import{n as V,t as G$1}from"./chunk-p8V0QABx.js";import{n as W,t as J}from"./chunk-Chnm8oNy.js";import{n as P,t as K}from"./chunk-2Z6qpzJF.js";import{n as p,t as M}from"./chunk-6px89AQj.js";import{i as z,n as oe,r as x,t as h$1}from"./chunk-VaM0mOqO.js";var je;var q;var Se=f(()=>{Kr();M();Kr();je=`containers.groups`,q=class i{assignments=I(p).entries(je);names=$t(()=>[...new Set(this.assignments().values())].sort((e,n)=>e.localeCompare(n)));groupOf(t){return this.assignments().get(t)??null}assign(t,e){let n=e.trim();if(n===``)return;let o=new Map(this.assignments());for(let a of t)o.set(a,n);this.assignments.set(o)}release(t){let e=new Map(this.assignments());for(let n of t)e.delete(n);this.assignments.set(e)}rename(t,e){let n=e.trim();if(n===``||n===t)return;let o=new Map(this.assignments());for(let[a,m]of o)m===t&&o.set(a,n);this.assignments.set(o)}dissolve(t){let e=new Map([...this.assignments()].filter(([,n])=>n!==t));this.assignments.set(e)}static ɵfac=function(e){return new(e||i)};static ɵprov=X({token:i,factory:i.ɵfac,providedIn:`root`})}});function Fe(i,t){if(i&1){let e=RC();$i(0,`button`,20),Jm(`click`,function(){let o=Ld(e).$implicit;return $d(HC(3).onInput(o))}),fS(1),Nc()}if(i&2){let e=t.$implicit;ec(),Ac(` `,e,` `)}}function Le(i,t){if(i&1&&($i(0,`div`)(1,`span`,9),fS(2),Nc(),$i(3,`div`,18),kc(4,Fe,2,1,`button`,19,Sc),Nc()()),i&2){let e=HC(2);ec(2),pg(e.t().existing),ec(2),Tc(e.others())}}function Be(i,t){i&1&&($i(0,`p`,12),fS(1),Nc()),i&2&&(ec(),pg(t))}function $e(i,t){if(i&1){let e=RC();Gm(0,`div`,2),$i(1,`div`,3)(2,`div`,4)(3,`h2`,5),fS(4),Nc(),$i(5,`p`,6),fS(6),Nc(),$i(7,`form`,7),Jm(`submit`,function(o){Ld(e);return $d(HC().submit(o))}),$i(8,`label`,8)(9,`span`,9),fS(10),Nc(),$i(11,`input`,10),Jm(`input`,function(o){Ld(e);return $d(HC().onInput(o.target.value))}),Nc()(),SC(12,Le,6,1,`div`),$i(13,`p`,11),fS(14),Nc(),SC(15,Be,2,1,`p`,12),$i(16,`div`,13)(17,`button`,14),Gm(18,`app-icon`,15),fS(19),Nc(),$i(20,`button`,16),Gm(21,`app-icon`,17),fS(22),Nc()()()()()}if(i&2){let e,n=HC();ec(4),pg(n.title()),ec(2),pg(n.description()),ec(4),pg(n.t().nameLabel),ec(),nS(n.field),Wm(`placeholder`,n.t().namePlaceholder)(`value`,n.name()),ec(),kC(n.others().length>0?12:-1),ec(2),pg(n.t().hint),ec(),kC((e=n.problem())?15:-1,e),ec(3),Wm(`size`,14),ec(),Ac(` `,n.common().cancel,` `),ec(),Wm(`disabled`,!n.canSubmit()),ec(),Wm(`size`,14),ec(),Ac(` `,n.t().submit,` `)}}var We;var U;var De=f(()=>{Kr();Je$1();dk();sk();Kr();We=`mx-focus mt-1 w-full rounded-md border border-ink-700 bg-ink-800 px-3 py-1.5 text-[13px] text-ink-100 placeholder:text-ink-500`,U=class i{open=mj(!1);title=jc.required();description=jc.required();initial=jc(``);suggestions=jc([]);reserved=jc([]);submitted=pj();t=$t(()=>ok().containers.page.groupDialog);common=$t(()=>ok().common);field=We;name=wt(``);touched=wt(!1);others=$t(()=>this.suggestions().filter(t=>t!==this.initial()));canSubmit=$t(()=>{let t=this.name().trim();return t!==``&&!this.reserved().includes(t)});problem=$t(()=>{let t=this.name().trim();return this.touched()?t===``?this.t().empty:this.reserved().includes(t)?this.t().reserved(t):null:null});constructor(){rf(()=>{this.open()&&Tg(()=>{this.name.set(this.initial()),this.touched.set(!1)})})}onInput(t){this.name.set(t),this.touched.set(!0)}submit(t){if(t.preventDefault(),!this.canSubmit()){this.touched.set(!0);return}this.open.set(!1),this.submitted.emit(this.name().trim())}static ɵfac=function(e){return new(e||i)};static ɵcmp=wc({type:i,selectors:[[`app-group-name-dialog`]],inputs:{open:[1,`open`],title:[1,`title`],description:[1,`description`],initial:[1,`initial`],suggestions:[1,`suggestions`],reserved:[1,`reserved`]},outputs:{open:`openChange`,submitted:`submitted`},decls:2,vars:1,consts:[[`rdxDialogRoot`,``,3,`openChange`,`open`],[`rdxDialogPortal`,``],[`rdxDialogBackdrop`,``,1,`fixed`,`inset-0`,`z-40`,`bg-black/50`],[`rdxDialogViewport`,``,1,`fixed`,`inset-0`,`z-50`,`grid`,`place-items-center`,`p-4`],[`rdxDialogPopup`,``,1,`w-full`,`max-w-md`,`rounded-lg`,`border`,`border-ink-700`,`bg-ink-850`,`p-5`,`shadow-2xl`],[`rdxDialogTitle`,``,1,`text-[15px]`,`font-semibold`,`text-ink-100`],[`rdxDialogDescription`,``,1,`mt-1`,`text-[13px]`,`text-ink-400`],[1,`mt-4`,`space-y-3`,3,`submit`],[1,`block`],[1,`text-[12px]`,`text-ink-400`],[`type`,`text`,`autocomplete`,`off`,`spellcheck`,`false`,`data-testid`,`groepsnaam`,3,`input`,`placeholder`,`value`],[1,`text-[12px]`,`text-ink-500`],[`role`,`alert`,1,`text-[13px]`,`text-danger`],[1,`flex`,`justify-end`,`gap-2`,`pt-2`],[`type`,`button`,`rdxDialogClose`,``,1,`mx-btn`,`mx-focus`],[`name`,`close`,3,`size`],[`type`,`submit`,1,`mx-btn`,`mx-focus`,3,`disabled`],[`name`,`check`,3,`size`],[1,`mt-1`,`flex`,`flex-wrap`,`gap-1.5`],[`type`,`button`,1,`mx-focus`,`cursor-pointer`,`rounded-full`,`border`,`border-ink-700`,`px-2.5`,`py-0.5`,`text-[12px]`,`text-ink-300`,`transition-colors`,`hover:border-accent`,`hover:text-ink-100`],[`type`,`button`,1,`mx-focus`,`cursor-pointer`,`rounded-full`,`border`,`border-ink-700`,`px-2.5`,`py-0.5`,`text-[12px]`,`text-ink-300`,`transition-colors`,`hover:border-accent`,`hover:text-ink-100`,3,`click`]],template:function(e,n){e&1&&($i(0,`div`,0),vg(`openChange`,function(a){return vS(n.open,a)||(n.open=a),a}),_m(1,$e,23,15,`ng-template`,1),Nc()),e&2&&hg(`open`,n.open)},dependencies:[ie,ln,an,pn,cn,fn,dn,un,My],encapsulation:2})}});function Ue(i,t){i&1&&($i(0,`p`,13),fS(1),Nc()),i&2&&(ec(),Ac(` `,t,` `))}function He(i,t){if(i&1){let e=RC();$i(0,`button`,31),Jm(`click`,function(){Ld(e);return $d(HC(2).askGroupSelected())}),Gm(1,`app-icon`,37),fS(2),Nc()}if(i&2){let e=HC(2);ec(),Wm(`size`,14),ec(),Ac(` `,e.t().group.addToGroup,` `)}}function Ye(i,t){if(i&1){let e=RC();$i(0,`div`,14)(1,`span`,28),fS(2),Nc(),$i(3,`button`,29),Jm(`click`,function(){Ld(e);return $d(HC().runSelected(`start`))}),Gm(4,`app-icon`,30),fS(5),Nc(),$i(6,`button`,31),Jm(`click`,function(){Ld(e);return $d(HC().runSelected(`stop`))}),Gm(7,`app-icon`,32),fS(8),Nc(),$i(9,`button`,31),Jm(`click`,function(){Ld(e);return $d(HC().runSelected(`restart`))}),Gm(10,`app-icon`,33),fS(11),Nc(),SC(12,He,3,2,`button`,34),$i(13,`button`,35),Jm(`click`,function(){Ld(e);return $d(HC().askRemoveSelected())}),Gm(14,`app-icon`,36),fS(15),Nc()()}if(i&2){let e=HC();ec(2),pg(e.t().selected(e.selected().size)),ec(2),Wm(`size`,14),ec(),Ac(` `,e.common().start,` `),ec(2),Wm(`size`,14),ec(),Ac(` `,e.common().stop,` `),ec(2),Wm(`size`,14),ec(),Ac(` `,e.common().restart,` `),ec(),kC(e.groupableSelection().length>0?12:-1),ec(2),Wm(`size`,14),ec(),Ac(` `,e.common().remove,` `)}}function Je(i,t){if(i&1&&($i(0,`span`,42),fS(1),Nc()),i&2){let e=HC(2);ec(),Ac(` `,e.t().group.manual,` `)}}function Qe(i,t){if(i&1){let e=RC();$i(0,`div`,38)(1,`button`,39),Jm(`click`,function(){let o=Ld(e).$implicit;return $d(HC().toggleGroup(o.key))}),Gm(2,`app-icon`,40),$i(3,`span`,41),fS(4),Nc()(),SC(5,Je,2,1,`span`,42),$i(6,`span`,43),fS(7),Nc(),$i(8,`div`,44)(9,`span`,45),fS(10),Nc(),$i(11,`span`,46),fS(12),Nc(),$i(13,`div`,47)(14,`app-action-menu`,48),Jm(`picked`,function(o){let a=Ld(e).$implicit;return $d(HC().onGroupMenu(o,a))}),Nc()()()()}if(i&2){let e=t.$implicit,n=HC(),o=n.groupBusy(e);ec(),zr(`aria-expanded`,!e.collapsed)(`aria-label`,e.collapsed?n.t().group.expand(e.label):n.t().group.collapse(e.label)),ec(),Wm(`name`,e.collapsed?`chevronRight`:`chevronDown`)(`size`,14),ec(2),pg(e.label),ec(),kC(e.manual?5:-1),ec(2),mg(` `,n.groupCount(e),` · `,n.groupRunning(e),` `),ec(3),pg(n.groupCpu(e)),ec(2),pg(n.groupMemory(e)),ec(2),Wm(`label`,n.t().group.menu(e.label))(`items`,n.groupMenu(e,o))}}function Xe(i,t){if(i&1&&Gm(0,`app-state-dot`,49),i&2){let e=t.$implicit;Wm(`state`,e.state)(`title`,e.status),zr(`aria-label`,e.status)}}function Ze(i,t){if(i&1&&($i(0,`a`,52),Gm(1,`app-icon`,54),Nc()),i&2){let e=t,n=HC().$implicit,o=HC();Wm(`routerLink`,SS(4,Y,n.id))(`title`,o.t().row.missingNetwork(e)),zr(`aria-label`,o.t().row.missingNetwork(e)),ec(),Wm(`size`,13)}}function et(i,t){if(i&1&&($i(0,`a`,53),Gm(1,`app-icon`,55),Nc()),i&2){let e=HC().$implicit,n=HC();Wm(`routerLink`,SS(5,Y,e.id))(`queryParams`,CS(7,Ke))(`title`,n.actions().copyDiagnosis),zr(`aria-label`,n.t().row.diagnosisOf(e.name)),ec(),Wm(`size`,13)}}function tt(i,t){if(i&1&&($i(0,`div`,50)(1,`a`,51),fS(2),Nc(),SC(3,Ze,2,6,`a`,52),SC(4,et,2,8,`a`,53),Nc()),i&2){let e,n=t.$implicit,o=HC();ec(),Wm(`routerLink`,SS(5,Y,n.id))(`title`,n.name),ec(),pg(n.name),ec(),kC((e=n.missingNetwork)?3:-1,e),ec(),kC(o.inTrouble(n)?4:-1)}}function nt(i,t){if(i&1&&($i(0,`span`,56),fS(1),Nc()),i&2){let e=t.$implicit;ec(),pg(e.shortId)}}function it(i,t){if(i&1&&($i(0,`span`,57),fS(1),Nc()),i&2){let e=t.$implicit;Wm(`title`,e.image),ec(),pg(e.image)}}function ot(i,t){if(i&1&&($i(0,`a`,60),fS(1),Gm(2,`app-icon`,62),Nc()),i&2){let e=HC().$implicit;Wm(`href`,`http://localhost:`+e.hostPort,Rp),ec(),mg(` `,e.hostPort,`:`,e.containerPort,` `),ec(),Wm(`size`,11)}}function rt(i,t){if(i&1&&($i(0,`span`,61),fS(1),Nc()),i&2){let e=HC().$implicit;ec(),mg(``,e.containerPort,`/`,e.protocol)}}function at(i,t){if(i&1&&SC(0,ot,3,4,`a`,60)(1,rt,2,2,`span`,61),i&2){let e=t.$implicit;kC(e.hostPort?0:1)}}function st(i,t){if(i&1&&($i(0,`span`,58),fS(1),Nc()),i&2){let e=HC().$implicit;ec(),Ac(`+`,e.ports.length-2)}}function lt(i,t){i&1&&($i(0,`span`,59),fS(1,`—`),Nc())}function pt(i,t){if(i&1&&(kc(0,at,2,1,null,null,qe),SC(2,st,2,1,`span`,58),SC(3,lt,2,0,`span`,59)),i&2){let e=t.$implicit;Tc(e.ports.slice(0,2)),ec(2),kC(e.ports.length>2?2:-1),ec(),kC(e.ports.length===0?3:-1)}}function dt(i,t){if(i&1&&($i(0,`span`,63),fS(1),Nc()),i&2){let e=t.$implicit,n=HC();ec(),pg(n.cpuOf(e.id))}}function ct(i,t){if(i&1&&($i(0,`span`,63),fS(1),Nc()),i&2){let e=t.$implicit,n=HC();ec(),pg(n.memoryOf(e.id))}}function mt(i,t){if(i&1){let e=RC();$i(0,`div`,64)(1,`app-action-menu`,48),Jm(`picked`,function(o){let a=Ld(e).$implicit;return $d(HC().onRowMenu(o,a))}),Nc()()}if(i&2){let e=t.$implicit,n=HC(),o=n.pending().has(e.id);ec(),Wm(`label`,n.t().row.menu(e.name))(`items`,n.rowMenu(e,o))}}var Y;var Ke;var qe;var G;var Pe;f(()=>{Kr();ra();v();h();Se();M();G$1();J();oe();K();dk();u$1();sk();De();Kr();Y=i=>[`/containers`,i],Ke=()=>({diagnose:1}),qe=(i,t)=>t.containerPort;G=``,Pe=class i{store=I(u);preferences=I(p);ownGroups=I(q);t=$t(()=>ok().containers.page);actions=$t(()=>ok().containers.actions);common=$t(()=>ok().common);columns=$t(()=>{let t=this.t().columns;return[{key:`state`,label:``,width:`28px`},{key:`name`,label:t.name},{key:`shortId`,label:t.id,width:`120px`},{key:`image`,label:t.image},{key:`ports`,label:t.ports,width:`170px`},{key:`cpu`,label:t.cpu,width:`80px`,align:`right`},{key:`memory`,label:t.memory,width:`110px`,align:`right`},{key:`actions`,label:t.actions,width:`84px`,align:`right`}]});loading=this.store.loading;problem=this.store.problem;stats=this.store.stats;pending=this.store.pending;search=wt(``);zoek=jc(void 0);onlyRunning=this.preferences.flag(`containers.onlyRunning`);collapsed=this.preferences.names(`containers.collapsedGroups`);selected=wt(new Set);removal=wt(null);confirmOpen=wt(!1);groupEdit=wt(null);groupDialogOpen=wt(!1);ownGroupNames=this.ownGroups.names;composeProjects=$t(()=>{let t=new Set;for(let e of this.store.containers())e.composeProject!==null&&t.add(e.composeProject);return[...t]});groupableSelection=$t(()=>{let t=this.selected();return this.store.containers().filter(e=>t.has(e.id)&&e.composeProject===null)});rows=$t(()=>{let t=this.search().trim().toLowerCase(),e=this.onlyRunning();return this.store.containers().filter(n=>e&&n.state!==`running`?!1:t===``?!0:`${n.name} ${n.image} ${n.shortId}`.toLowerCase().includes(t))});groups=$t(()=>{let t=this.rows(),e=new Map;for(let m of t){let k=this.groupKeyOf(m),N=e.get(k);N===void 0?e.set(k,[m]):N.push(m)}if(!this.store.containers().some(m=>this.groupKeyOf(m)!==G))return null;let n=this.collapsed(),o=this.composeProjects(),a=[...e.keys()].filter(m=>m!==G).sort((m,k)=>m.localeCompare(k));return e.has(G)&&a.push(G),a.map(m=>{let k=e.get(m)??[],N=n.has(m);return{key:m,label:m===G?this.t().group.loose:m,manual:m!==G&&!o.includes(m),rows:N?[]:k,all:k,running:k.filter(Ee=>Ee.state===`running`).length,collapsed:N}})});visibleRows=$t(()=>{let t=this.groups();return t===null?this.rows():t.flatMap(e=>e.rows)});totals=$t(()=>{let t=0,e=0;for(let n of this.store.runningIds()){let o=this.stats().get(n);t+=o?.cpuPercent??0,e+=o?.memoryBytes??0}return{cpu:t,memory:d(e)}});selectedIds=$t(()=>[...this.selected()]);trackKey=t=>t.id;constructor(){rf(()=>{let t=this.zoek();t!==void 0&&Tg(()=>this.search.set(t))}),rf(()=>this.store.watchStats(this.store.runningIds())),I(ve).onDestroy(()=>this.store.watchStats([])),this.store.refresh()}groupKeyOf(t){return t.composeProject??this.ownGroups.groupOf(t.name)??G}inTrouble(t){return(t.state===`exited`||t.state===`dead`)&&t.exitCode!==null&&t.exitCode!==0&&t.exitCode!==143||t.state===`restarting`||t.status.includes(`(unhealthy)`)}cpuOf(t){let e=this.stats().get(t);return e===void 0?`—`:`${e.cpuPercent.toFixed(2)}%`}memoryOf(t){let e=this.stats().get(t);return e===void 0?`—`:d(e.memoryBytes)}primaryAction(t){let e=this.common();return t.state===`running`||t.state===`restarting`?{action:`stop`,icon:`stop`,label:e.stop}:t.state===`paused`?{action:`unpause`,icon:`play`,label:this.actions().resume}:{action:`start`,icon:`play`,label:e.start}}toggleGroup(t){let e=new Set(this.collapsed());if(!e.delete(t)){e.add(t);let n=new Set((this.groups()??[]).find(a=>a.key===t)?.all.map(a=>a.id)),o=new Set([...this.selected()].filter(a=>!n.has(a)));this.selected.set(o)}this.collapsed.set(e)}groupCount(t){return this.t().group.count(t.all.length)}groupRunning(t){return this.t().group.running(t.running)}groupCpu(t){let e=t.all.map(n=>this.stats().get(n.id)).filter(n=>n!==void 0);return e.length===0?`—`:`${e.reduce((n,o)=>n+o.cpuPercent,0).toFixed(2)}%`}groupMemory(t){let e=t.all.map(n=>this.stats().get(n.id)).filter(n=>n!==void 0);return e.length===0?`—`:d(e.reduce((n,o)=>n+o.memoryBytes,0))}groupBusy(t){return t.all.some(e=>this.pending().has(e.id))}rowMenu(t,e){let n=this.primaryAction(t),o=t.state===`running`,a=this.t().group,m=[{id:n.action,label:n.label,icon:n.icon,disabled:e},{id:`restart`,label:this.common().restart,icon:`refresh`,disabled:e||!o},{id:`pause`,label:this.actions().pause,icon:`pause`,disabled:e||!o}];return t.composeProject===null&&(m.push({id:`group`,label:a.addToGroup,icon:`folder`,separated:!0}),this.ownGroups.groupOf(t.name)!==null&&m.push({id:`ungroup`,label:a.removeFromGroup,icon:`close`})),m.push({id:`remove`,label:this.common().remove,icon:`trash`,disabled:e,danger:!0,separated:!0}),m}onRowMenu(t,e){switch(t){case`remove`:this.askRemove(e);break;case`group`:this.askGroup([e.name]);break;case`ungroup`:this.ownGroups.release([e.name]);break;default:this.run(t,e.id)}}groupMenu(t,e){let n=this.t().group,o=t.running===0,a=[{id:`start`,label:n.startAll,icon:`play`,disabled:e},{id:`stop`,label:n.stopAll,icon:`stop`,disabled:e||o},{id:`restart`,label:n.restartAll,icon:`refresh`,disabled:e||o}];return t.manual&&a.push({id:`rename`,label:n.rename,icon:`pencil`,separated:!0},{id:`dissolve`,label:n.dissolve,icon:`eraser`}),a.push({id:`remove`,label:n.removeAll,icon:`trash`,disabled:e,danger:!0,separated:!0}),a}onGroupMenu(t,e){switch(t){case`remove`:this.askRemoveGroup(e);break;case`rename`:this.askRenameGroup(e.key);break;case`dissolve`:this.ownGroups.dissolve(e.key);break;default:this.runGroup(t,e)}}runGroup(t,e){this.store.runMany(t,e.all.map(n=>n.id))}askRemoveGroup(t){this.removal.set({kind:`group`,ids:t.all.map(e=>e.id),project:t.label}),this.confirmOpen.set(!0)}run(t,e){this.store.run(t,e)}runSelected(t){this.store.runMany(t,this.selectedIds())}askRemove(t){this.removal.set({kind:`one`,ids:[t.id],name:t.name}),this.confirmOpen.set(!0)}askRemoveSelected(){let t=this.selectedIds();this.removal.set({kind:`many`,ids:t}),this.confirmOpen.set(!0)}askGroup(t){t.length!==0&&(this.groupEdit.set({kind:`assign`,names:t}),this.groupDialogOpen.set(!0))}askGroupSelected(){this.askGroup(this.groupableSelection().map(t=>t.name))}askRenameGroup(t){this.groupEdit.set({kind:`rename`,group:t}),this.groupDialogOpen.set(!0)}groupDialogTitle(){let t=this.t().groupDialog;return this.groupEdit()?.kind===`rename`?t.renameTitle:t.assignTitle}groupDialogDescription(){let t=this.groupEdit(),e=this.t().groupDialog;return t===null?``:t.kind===`rename`?e.renameDescription(t.group):t.names.length===1?e.assignOne(t.names[0]):e.assignMany(t.names.length)}groupDialogInitial(){let t=this.groupEdit();if(t===null)return``;if(t.kind===`rename`)return t.group;let e=new Set(t.names.map(o=>this.ownGroups.groupOf(o))),[n]=e;return e.size===1&&n!==void 0&&n!==null?n:``}onGroupName(t){let e=this.groupEdit();e!==null&&(e.kind===`assign`?this.ownGroups.assign(e.names,t):this.renameGroup(e.group,t),this.groupEdit.set(null))}renameGroup(t,e){this.ownGroups.rename(t,e);let n=this.collapsed();if(n.has(t)){let o=new Set(n);o.delete(t),o.add(e),this.collapsed.set(o)}}confirmRemove(){let t=this.removal();t!==null&&(this.store.runMany(`remove`,t.ids),this.selected.set(new Set),this.removal.set(null))}removalDescription(){let t=this.removal();if(t===null)return``;let e=this.t().confirm;switch(t.kind){case`one`:return e.one(t.name);case`many`:return e.many(t.ids.length);case`group`:return e.group(t.ids.length,t.project)}}static ɵfac=function(e){return new(e||i)};static ɵcmp=wc({type:i,selectors:[[`app-containers-page`]],inputs:{zoek:[1,`zoek`]},decls:38,vars:28,consts:[[1,`flex`,`h-full`,`flex-col`],[1,`shrink-0`,`px-6`,`pt-5`,`pb-3`],[1,`text-xl`,`font-semibold`,`tracking-tight`,`text-ink-100`],[1,`mt-3`,`flex`,`flex-wrap`,`gap-x-10`,`gap-y-2`],[1,`text-[12px]`,`text-ink-400`],[1,`text-[15px]`,`font-medium`,`text-ink-100`],[1,`mt-4`,`flex`,`flex-wrap`,`items-center`,`gap-4`],[1,`relative`,`flex`,`items-center`],[1,`pointer-events-none`,`absolute`,`left-2.5`,`text-ink-500`],[`name`,`search`,3,`size`],[1,`sr-only`],[`type`,`search`,1,`mx-focus`,`w-72`,`rounded-md`,`border`,`border-ink-700`,`bg-ink-850`,`py-1.5`,`pr-3`,`pl-8`,`text-[13px]`,`text-ink-100`,`placeholder:text-ink-500`,3,`input`,`placeholder`,`value`],[3,`onChange`,`label`,`on`],[1,`mt-3`,`rounded-md`,`border`,`border-danger/40`,`bg-danger/10`,`px-3`,`py-2`,`text-[13px]`,`text-danger`],[1,`mt-3`,`flex`,`items-center`,`gap-2`,`rounded-md`,`border`,`border-ink-700`,`bg-ink-850`,`px-3`,`py-2`],[1,`min-h-0`,`flex-1`,`overflow-y-auto`,`px-6`,`pb-6`],[3,`selectedChange`,`columns`,`rows`,`groups`,`trackKey`,`selected`,`emptyMessage`],[`appGroupHeader`,``],[`appCell`,`state`],[`appCell`,`name`],[`appCell`,`shortId`],[`appCell`,`image`],[`appCell`,`ports`],[`appCell`,`cpu`],[`appCell`,`memory`],[`appCell`,`actions`],[3,`openChange`,`confirmed`,`open`,`title`,`description`],[3,`openChange`,`submitted`,`open`,`title`,`description`,`initial`,`suggestions`,`reserved`],[1,`text-[13px]`,`text-ink-200`],[`type`,`button`,1,`mx-btn`,`mx-focus`,`ml-auto`,3,`click`],[`name`,`play`,3,`size`],[`type`,`button`,1,`mx-btn`,`mx-focus`,3,`click`],[`name`,`stop`,3,`size`],[`name`,`refresh`,3,`size`],[`type`,`button`,1,`mx-btn`,`mx-focus`],[`type`,`button`,1,`mx-btn`,`mx-focus`,`text-danger`,`hover:text-danger`,3,`click`],[`name`,`trash`,3,`size`],[`name`,`folder`,3,`size`],[1,`flex`,`items-center`,`gap-3`],[`type`,`button`,1,`mx-focus`,`flex`,`min-w-0`,`cursor-pointer`,`items-center`,`gap-2`,`text-left`,3,`click`],[1,`shrink-0`,`text-ink-500`,3,`name`,`size`],[1,`truncate`,`font-medium`,`text-ink-100`],[1,`shrink-0`,`rounded`,`border`,`border-ink-700`,`px-1.5`,`py-0.5`,`text-[11px]`,`text-ink-400`],[1,`shrink-0`,`text-[12px]`,`text-ink-400`],[1,`ml-auto`,`flex`,`shrink-0`,`items-center`],[`data-testid`,`groep-cpu`,1,`w-20`,`shrink-0`,`text-right`,`tabular-nums`,`text-[12px]`,`text-ink-400`],[`data-testid`,`groep-geheugen`,1,`w-[110px]`,`shrink-0`,`text-right`,`tabular-nums`,`text-[12px]`,`text-ink-400`],[1,`flex`,`w-[84px]`,`shrink-0`,`items-center`,`justify-end`],[`compact`,``,3,`picked`,`label`,`items`],[3,`state`,`title`],[1,`flex`,`min-w-0`,`items-center`,`gap-1.5`],[1,`mx-focus`,`block`,`truncate`,`text-ink-100`,`hover:text-accent`,`hover:underline`,3,`routerLink`,`title`],[`data-testid`,`row-missing-network`,1,`mx-focus`,`shrink-0`,`rounded`,`text-danger`,`hover:text-ink-100`,3,`routerLink`,`title`],[`data-testid`,`row-diagnose`,1,`mx-focus`,`shrink-0`,`rounded`,`text-warn`,`hover:text-ink-100`,3,`routerLink`,`queryParams`,`title`],[`name`,`networks`,3,`size`],[`name`,`warning`,3,`size`],[1,`font-mono`,`text-[12px]`,`text-ink-400`],[1,`block`,`truncate`,`text-ink-300`,3,`title`],[1,`text-[11px]`,`text-ink-500`],[1,`text-ink-600`],[`target`,`_blank`,`rel`,`noreferrer`,1,`mx-focus`,`mr-2`,`inline-flex`,`items-center`,`gap-1`,`text-accent`,`hover:underline`,3,`href`],[1,`mr-2`,`text-ink-500`],[`name`,`external`,3,`size`],[1,`tabular-nums`,`text-ink-200`],[1,`flex`,`items-center`,`justify-end`]],template:function(e,n){if(e&1&&($i(0,`section`,0)(1,`div`,1)(2,`h1`,2),fS(3),Nc(),$i(4,`div`,3)(5,`div`)(6,`div`,4),fS(7),Nc(),$i(8,`div`,5),fS(9),Nc()(),$i(10,`div`)(11,`div`,4),fS(12),Nc(),$i(13,`div`,5),fS(14),Nc()()(),$i(15,`div`,6)(16,`label`,7)(17,`span`,8),Gm(18,`app-icon`,9),Nc(),$i(19,`span`,10),fS(20),Nc(),$i(21,`input`,11),Jm(`input`,function(a){return n.search.set(a.target.value)}),Nc()(),$i(22,`app-filter-switch`,12),vg(`onChange`,function(a){return vS(n.onlyRunning,a)||(n.onlyRunning=a),a}),Nc()(),SC(23,Ue,2,1,`p`,13),SC(24,Ye,16,10,`div`,14),Nc(),$i(25,`div`,15)(26,`app-data-table`,16),vg(`selectedChange`,function(a){return vS(n.selected,a)||(n.selected=a),a}),_m(27,Qe,15,12,`ng-template`,17)(28,Xe,1,3,`ng-template`,18)(29,tt,5,7,`ng-template`,19)(30,nt,2,1,`ng-template`,20)(31,it,2,2,`ng-template`,21)(32,pt,4,2,`ng-template`,22)(33,dt,2,1,`ng-template`,23)(34,ct,2,1,`ng-template`,24)(35,mt,2,2,`ng-template`,25),Nc()()(),$i(36,`app-confirm-dialog`,26),vg(`openChange`,function(a){return vS(n.confirmOpen,a)||(n.confirmOpen=a),a}),Jm(`confirmed`,function(){return n.confirmRemove()}),Nc(),$i(37,`app-group-name-dialog`,27),vg(`openChange`,function(a){return vS(n.groupDialogOpen,a)||(n.groupDialogOpen=a),a}),Jm(`submitted`,function(a){return n.onGroupName(a)}),Nc()),e&2){let o;ec(3),pg(n.t().title),ec(4),pg(n.t().cpuUsage),ec(2),Ac(``,n.totals().cpu.toFixed(2),`%`),ec(3),pg(n.t().memoryUsage),ec(2),pg(n.totals().memory),ec(4),Wm(`size`,15),ec(2),pg(n.t().search),ec(),Wm(`placeholder`,n.t().search)(`value`,n.search()),ec(),Wm(`label`,n.t().onlyRunning),hg(`on`,n.onlyRunning),ec(),kC((o=n.problem())?23:-1,o),ec(),kC(n.selected().size>0?24:-1),ec(2),Wm(`columns`,n.columns())(`rows`,n.visibleRows())(`groups`,n.groups())(`trackKey`,n.trackKey),hg(`selected`,n.selected),Wm(`emptyMessage`,n.t().empty),ec(10),hg(`open`,n.confirmOpen),Wm(`title`,n.t().confirm.title)(`description`,n.removalDescription()),ec(),hg(`open`,n.groupDialogOpen),Wm(`title`,n.groupDialogTitle())(`description`,n.groupDialogDescription())(`initial`,n.groupDialogInitial())(`suggestions`,n.ownGroupNames())(`reserved`,n.composeProjects())}},dependencies:[z,x,h$1,My,W,Yt,P,c,V,U],encapsulation:2})}})();export{Pe as ContainersPage};
@@ -1 +1 @@
1
- import{G as M,H as Kr,Zn as rf,an as f$1,n as $D}from"./chunk-DOxgdvK8.js";import{A as or,N as sr}from"./chunk-Bo4H3_Rk.js";function L(r){return{provide:v,useFactory:r}}var p;var N;var f;var v;var g=f$1(()=>{Kr();sr();p={mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}},N=50,f=class{constructor(e){this.host=e,this.nodes=[],this.prevAnimationNames=new WeakMap,this.pendingExits=new Set,this.removeListeners=null,this.closeTimestamp=0,this.exitVersion=0,this.waapiPending=!1,this.safetyTimer=null,this.prevPresent=e.present(),this.state=this.prevPresent?`mounted`:`unmounted`,this.prevPresent&&this.mount(),rf(()=>{let i=e.present();i!==this.prevPresent&&(this.prevPresent=i,i?this.send(`MOUNT`):e.isBrowser?(this.closeTimestamp=this.now(),$D(()=>this.evaluateExit(),{injector:e.injector})):this.send(`UNMOUNT`))},{injector:e.injector,debugName:`PresenceMachine.present`})}dispose(){this.unmount()}evaluateExit(){if(this.state!==`mounted`||this.host.present())return;this.pendingExits.clear();for(let i of this.nodes){let t=getComputedStyle(i),n=t.animationName||`none`,s=this.prevAnimationNames.get(i)??`none`;n!==`none`&&t.display!==`none`&&s!==n&&this.pendingExits.add(i)}let e=this.collectExitAnimations();if(this.pendingExits.size===0&&e.length===0){this.send(`UNMOUNT`);return}if(this.send(`ANIMATION_OUT`),e.length>0){this.waapiPending=!0;let i=this.exitVersion;Promise.all(e.map(t=>t.finished.catch(()=>{}))).then(()=>this.finishExit(i)),this.armSafetyNet(i,e)}}collectExitAnimations(){if(!this.host.isBrowser)return[];let e=[];for(let i of this.nodes)if(typeof i.getAnimations==`function`)for(let t of i.getAnimations({subtree:!0})){let n=t.startTime===null||Number(t.startTime)>=this.closeTimestamp;(t.playState===`running`||t.pending)&&n&&e.push(t)}return e}armSafetyNet(e,i){let t=new Set(this.nodes);for(let s of i){let o=s.effect?.target;o instanceof HTMLElement&&t.add(o)}let n=0;for(let s of t)n=Math.max(n,or(s));this.clearSafetyNet(),this.safetyTimer=setTimeout(()=>this.finishExit(e),n+N)}finishExit(e){e===this.exitVersion&&(this.waapiPending=!1,this.clearSafetyNet(),this.send(`ANIMATION_END`))}clearSafetyNet(){this.safetyTimer!==null&&(clearTimeout(this.safetyTimer),this.safetyTimer=null)}send(e){let i=p[this.state][e];if(!(i===void 0||i===this.state))if(this.state=i,i===`mounted`)if(this.exitVersion++,this.waapiPending=!1,this.clearSafetyNet(),this.nodes.length>0){this.pendingExits.clear();for(let t of this.nodes)this.prevAnimationNames.set(t,this.getAnimationName(t))}else this.mount();else i===`unmounted`&&(this.exitVersion++,this.unmount())}mount(){if(this.nodes=this.host.mountView(),this.host.isBrowser&&this.nodes.length>0){for(let e of this.nodes)this.prevAnimationNames.set(e,this.getAnimationName(e));this.addAnimationListeners()}}unmount(){this.removeListeners?.(),this.removeListeners=null,this.clearSafetyNet(),this.waapiPending=!1,this.host.destroyView(),this.nodes=[],this.pendingExits.clear()}addAnimationListeners(){let e=t=>{let n=t.target;this.nodes.includes(n)&&this.prevAnimationNames.set(n,this.getAnimationName(n))},i=t=>{let n=t.target;this.nodes.includes(n)&&this.getAnimationName(n).includes(t.animationName)&&(this.pendingExits.delete(n),!this.waapiPending&&this.pendingExits.size===0&&this.finishExit(this.exitVersion))};for(let t of this.nodes)t.addEventListener(`animationstart`,e),t.addEventListener(`animationcancel`,i),t.addEventListener(`animationend`,i);this.removeListeners=()=>{for(let t of this.nodes)t.removeEventListener(`animationstart`,e),t.removeEventListener(`animationcancel`,i),t.removeEventListener(`animationend`,i)}}getAnimationName(e){return(this.host.isBrowser?getComputedStyle(e).animationName:``)||`none`}now(){let e=typeof document<`u`?document.timeline?.currentTime:null;return typeof e==`number`?e:Number(e??0)}},v=new M(`RdxPresenceContext`)});export{v as i,f as n,g as r,L as t};
1
+ import{G as M,H as Kr,Zn as rf,ln as f$1,n as $D}from"./chunk-PPlXONP3.js";import{A as or,N as sr}from"./chunk-InjvrsZj.js";function L(r){return{provide:v,useFactory:r}}var p;var N;var f;var v;var g=f$1(()=>{Kr();sr();p={mounted:{UNMOUNT:`unmounted`,ANIMATION_OUT:`unmountSuspended`},unmountSuspended:{MOUNT:`mounted`,ANIMATION_END:`unmounted`},unmounted:{MOUNT:`mounted`}},N=50,f=class{constructor(e){this.host=e,this.nodes=[],this.prevAnimationNames=new WeakMap,this.pendingExits=new Set,this.removeListeners=null,this.closeTimestamp=0,this.exitVersion=0,this.waapiPending=!1,this.safetyTimer=null,this.prevPresent=e.present(),this.state=this.prevPresent?`mounted`:`unmounted`,this.prevPresent&&this.mount(),rf(()=>{let i=e.present();i!==this.prevPresent&&(this.prevPresent=i,i?this.send(`MOUNT`):e.isBrowser?(this.closeTimestamp=this.now(),$D(()=>this.evaluateExit(),{injector:e.injector})):this.send(`UNMOUNT`))},{injector:e.injector,debugName:`PresenceMachine.present`})}dispose(){this.unmount()}evaluateExit(){if(this.state!==`mounted`||this.host.present())return;this.pendingExits.clear();for(let i of this.nodes){let t=getComputedStyle(i),n=t.animationName||`none`,s=this.prevAnimationNames.get(i)??`none`;n!==`none`&&t.display!==`none`&&s!==n&&this.pendingExits.add(i)}let e=this.collectExitAnimations();if(this.pendingExits.size===0&&e.length===0){this.send(`UNMOUNT`);return}if(this.send(`ANIMATION_OUT`),e.length>0){this.waapiPending=!0;let i=this.exitVersion;Promise.all(e.map(t=>t.finished.catch(()=>{}))).then(()=>this.finishExit(i)),this.armSafetyNet(i,e)}}collectExitAnimations(){if(!this.host.isBrowser)return[];let e=[];for(let i of this.nodes)if(typeof i.getAnimations==`function`)for(let t of i.getAnimations({subtree:!0})){let n=t.startTime===null||Number(t.startTime)>=this.closeTimestamp;(t.playState===`running`||t.pending)&&n&&e.push(t)}return e}armSafetyNet(e,i){let t=new Set(this.nodes);for(let s of i){let o=s.effect?.target;o instanceof HTMLElement&&t.add(o)}let n=0;for(let s of t)n=Math.max(n,or(s));this.clearSafetyNet(),this.safetyTimer=setTimeout(()=>this.finishExit(e),n+N)}finishExit(e){e===this.exitVersion&&(this.waapiPending=!1,this.clearSafetyNet(),this.send(`ANIMATION_END`))}clearSafetyNet(){this.safetyTimer!==null&&(clearTimeout(this.safetyTimer),this.safetyTimer=null)}send(e){let i=p[this.state][e];if(!(i===void 0||i===this.state))if(this.state=i,i===`mounted`)if(this.exitVersion++,this.waapiPending=!1,this.clearSafetyNet(),this.nodes.length>0){this.pendingExits.clear();for(let t of this.nodes)this.prevAnimationNames.set(t,this.getAnimationName(t))}else this.mount();else i===`unmounted`&&(this.exitVersion++,this.unmount())}mount(){if(this.nodes=this.host.mountView(),this.host.isBrowser&&this.nodes.length>0){for(let e of this.nodes)this.prevAnimationNames.set(e,this.getAnimationName(e));this.addAnimationListeners()}}unmount(){this.removeListeners?.(),this.removeListeners=null,this.clearSafetyNet(),this.waapiPending=!1,this.host.destroyView(),this.nodes=[],this.pendingExits.clear()}addAnimationListeners(){let e=t=>{let n=t.target;this.nodes.includes(n)&&this.prevAnimationNames.set(n,this.getAnimationName(n))},i=t=>{let n=t.target;this.nodes.includes(n)&&this.getAnimationName(n).includes(t.animationName)&&(this.pendingExits.delete(n),!this.waapiPending&&this.pendingExits.size===0&&this.finishExit(this.exitVersion))};for(let t of this.nodes)t.addEventListener(`animationstart`,e),t.addEventListener(`animationcancel`,i),t.addEventListener(`animationend`,i);this.removeListeners=()=>{for(let t of this.nodes)t.removeEventListener(`animationstart`,e),t.removeEventListener(`animationcancel`,i),t.removeEventListener(`animationend`,i)}}getAnimationName(e){return(this.host.isBrowser?getComputedStyle(e).animationName:``)||`none`}now(){let e=typeof document<`u`?document.timeline?.currentTime:null;return typeof e==`number`?e:Number(e??0)}},v=new M(`RdxPresenceContext`)});export{v as i,f as n,g as r,L as t};