@duplicati/ngclient 0.0.230 → 0.0.232

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 (137) hide show
  1. package/assets/dest-icons/googleworkspace.png +0 -0
  2. package/assets/sh.woff2 +0 -0
  3. package/{chunk-DFEb6rgg.js → chunk-B52v_pjw.js} +2 -2
  4. package/{chunk-OLi7f6y7.js → chunk-B53Wj4F9.js} +1 -1
  5. package/chunk-B73LRsqH.js +1 -0
  6. package/{chunk-CRAg6SRo.js → chunk-B8uF0dom.js} +1 -1
  7. package/{chunk-DuIUmwWN.js → chunk-B9maI7Xa.js} +3 -3
  8. package/chunk-BBU0vswn.js +1 -0
  9. package/chunk-BBsBaTWO.js +1 -0
  10. package/chunk-BEhUV7oX.js +1 -0
  11. package/{chunk-DmKJmG9z.js → chunk-BI14DMeb.js} +1 -1
  12. package/chunk-BO2GlieG.js +1 -0
  13. package/{chunk-D2g5mSLr.js → chunk-BS8PXjJJ.js} +1 -1
  14. package/{chunk-B2TXzbpy.js → chunk-BTgf5lfZ.js} +1 -1
  15. package/{chunk-C-NgIZiF.js → chunk-BVEyeg9y.js} +1 -1
  16. package/{chunk-DaGzYsVs.js → chunk-BYWmNy-_.js} +1 -1
  17. package/chunk-BaxM-kGV.js +2 -0
  18. package/{chunk-CT9ziigM.js → chunk-Bb6BmVO4.js} +2 -2
  19. package/{chunk-DPNAj9Vc.js → chunk-Bja52qI7.js} +1 -1
  20. package/chunk-BkIXk6uR.js +2 -0
  21. package/{chunk-BjAIXsAS.js → chunk-BkUa7yBI.js} +1 -1
  22. package/chunk-BlTnmRGU.js +1 -0
  23. package/chunk-Bo1yB-fQ.js +1 -0
  24. package/{chunk-C7pjkqKB.js → chunk-Box6Lckh.js} +1 -1
  25. package/{chunk-wyNyzSXi.js → chunk-BpRWdcC8.js} +1 -1
  26. package/chunk-BqN36tfl.js +1 -0
  27. package/chunk-Brvxo-yI.js +1 -0
  28. package/{chunk-BIOMsSHI.js → chunk-Bt_Ie-F3.js} +1 -1
  29. package/chunk-BvGGBIy7.js +1 -0
  30. package/chunk-C4GeR7BF.js +1 -0
  31. package/{chunk-C4kBXz3C.js → chunk-C80zvTbO.js} +1 -1
  32. package/{chunk-D6aNT_wo.js → chunk-CAwTsBqQ.js} +1 -1
  33. package/chunk-CGArETYn.js +1 -0
  34. package/{chunk-BYJA6sbi.js → chunk-CHzwXmsn.js} +1 -1
  35. package/{chunk-C6QX7znk.js → chunk-CIcBoEH1.js} +1 -1
  36. package/{chunk-Fw6nFDZK.js → chunk-CKnRcyHZ.js} +2 -2
  37. package/chunk-CTRzgLM9.js +2 -0
  38. package/{chunk-CJ0GoaW1.js → chunk-CTm37hI-.js} +1 -1
  39. package/chunk-CTwO6j97.js +1 -0
  40. package/chunk-CUaRQ2FJ.js +1 -0
  41. package/chunk-CUuyy9Er.js +1 -0
  42. package/chunk-CVQPUpDQ.js +3 -0
  43. package/{chunk-I0R6Ty-p.js → chunk-CX26gEKv.js} +1 -1
  44. package/chunk-CZoVeRAG.js +2 -0
  45. package/{chunk-DtA6Mvdt.js → chunk-CartdZy-.js} +1 -1
  46. package/{chunk-DWkdK0Ib.js → chunk-Cg09iQR5.js} +1 -1
  47. package/{chunk-BD9-OWSe.js → chunk-CgyaUJSI.js} +1 -1
  48. package/chunk-Cjb79u3p.js +2 -0
  49. package/chunk-CkrxdjhU.js +2 -0
  50. package/chunk-CtEMAj2d.js +2 -0
  51. package/chunk-Cu2bh6aQ.js +1 -0
  52. package/chunk-Cu4siB3B.js +4 -0
  53. package/{chunk-Ca1C9pJ0.js → chunk-CwKy8pxa.js} +1 -1
  54. package/chunk-Cz0KuBHB.js +2 -0
  55. package/chunk-D5tms-6w.js +1 -0
  56. package/chunk-DI7suso2.js +1 -0
  57. package/{chunk-DD_QfWih.js → chunk-DJJ8GbYi.js} +1 -1
  58. package/{chunk-C1kucB1O.js → chunk-DKZlKdfB.js} +2 -2
  59. package/chunk-DTu0ZYnR.js +1 -0
  60. package/{chunk-khm9J_G0.js → chunk-DUYvFN8m.js} +1 -1
  61. package/{chunk-Cgbi9MZq.js → chunk-DY3nK3tu.js} +1 -1
  62. package/chunk-DYnVzNxt.js +1 -0
  63. package/{chunk-D2g44FyO.js → chunk-DZm4l28A.js} +2 -2
  64. package/chunk-Da_-7L7P.js +2 -0
  65. package/{chunk-D5lj-fQk.js → chunk-DmDqcC4A.js} +1 -1
  66. package/chunk-Dn8nZWLd.js +1 -0
  67. package/{chunk-dmyIQdVx.js → chunk-DoQHDPZg.js} +1 -1
  68. package/{chunk-PVmXLw9b.js → chunk-DqIU7ViF.js} +1 -1
  69. package/{chunk-B728v9oc.js → chunk-Dum38U6w.js} +2 -2
  70. package/{chunk-OFYkgZA1.js → chunk-DvyGZpE4.js} +2 -2
  71. package/{chunk-RQ_MoiOh.js → chunk-DzmZd524.js} +1 -1
  72. package/chunk-Rp7-yjlz.js +1 -0
  73. package/chunk-Saq2s7Ep.js +2 -0
  74. package/{chunk-DN6f5jXR.js → chunk-aOMoAKYY.js} +1 -1
  75. package/chunk-ihUnHtR7.js +3 -0
  76. package/{chunk-Dj3xknEh.js → chunk-ivwxSoND.js} +1 -1
  77. package/chunk-kU0H989B.js +14 -0
  78. package/chunk-mby7fvmj.js +1 -0
  79. package/{chunk-BzIY4AaX.js → chunk-umW-K0Ca.js} +1 -1
  80. package/chunk-vPGrgL1U.js +1 -0
  81. package/chunk-vnqcxg-9.js +2 -0
  82. package/index.html +1 -1
  83. package/locale/messages.de.json +1 -1
  84. package/locale/messages.de_CH.json +1 -1
  85. package/locale/messages.de_DE.json +1 -1
  86. package/locale/messages.en.json +65 -1
  87. package/locale/messages.fr.json +1 -1
  88. package/locale/messages.fr_CA.json +1 -1
  89. package/locale/messages.fr_FR.json +1 -1
  90. package/locale/messages.it.json +95 -2
  91. package/locale/messages.it_IT.json +94 -1
  92. package/locale/messages.json +65 -1
  93. package/locale/messages.nl_BE.json +1 -1
  94. package/locale/messages.nl_NL.json +1 -1
  95. package/locale/messages.zh_HK.json +152 -8
  96. package/main-VVQP2YE7.js +16 -0
  97. package/package.json +1 -1
  98. package/chunk-3RXp81pP.js +0 -1
  99. package/chunk-B0RBkC1E.js +0 -1
  100. package/chunk-BB1pOOUx.js +0 -1
  101. package/chunk-BIL3nR4_.js +0 -2
  102. package/chunk-BOOAIFTC.js +0 -1
  103. package/chunk-BaGYaLxZ.js +0 -2
  104. package/chunk-Bceym75m.js +0 -1
  105. package/chunk-BfZh4DNq.js +0 -2
  106. package/chunk-BlSN71kd.js +0 -1
  107. package/chunk-Bq7wRTmy.js +0 -2
  108. package/chunk-ByhuT4BS.js +0 -14
  109. package/chunk-CBgNjPex.js +0 -1
  110. package/chunk-CEyp0Xmg.js +0 -1
  111. package/chunk-CFne6FXR.js +0 -1
  112. package/chunk-CGn_EA_5.js +0 -2
  113. package/chunk-CJ1mxauG.js +0 -2
  114. package/chunk-CMJCX33P.js +0 -1
  115. package/chunk-CWAvlP_u.js +0 -1
  116. package/chunk-CYQJGwsB.js +0 -1
  117. package/chunk-Ca-HIRNP.js +0 -1
  118. package/chunk-CegwkGVu.js +0 -3
  119. package/chunk-CgcnOoRq.js +0 -2
  120. package/chunk-Ck9c9Juw.js +0 -1
  121. package/chunk-CnRCpl-v.js +0 -2
  122. package/chunk-CrgyDps4.js +0 -1
  123. package/chunk-DDBflo2l.js +0 -4
  124. package/chunk-Df7q8ewK.js +0 -1
  125. package/chunk-Dgns65Zu.js +0 -2
  126. package/chunk-Dh6x3lXP.js +0 -2
  127. package/chunk-DipTNkHN.js +0 -1
  128. package/chunk-DkdGEw1e.js +0 -1
  129. package/chunk-DtdFhFa9.js +0 -1
  130. package/chunk-DwKPz2Gn.js +0 -3
  131. package/chunk-DwMhABnQ.js +0 -2
  132. package/chunk-HWQc1Hoa.js +0 -1
  133. package/chunk-LL0IHZns.js +0 -1
  134. package/chunk-Zo-grJt3.js +0 -1
  135. package/chunk-glhLCQrb.js +0 -1
  136. package/chunk-yF6CJHRg.js +0 -1
  137. package/main-KFKZO6SJ.js +0 -16
@@ -1,2 +1,2 @@
1
- import {e as ee}from'./chunk-B0RBkC1E.js';import'./chunk-BB1pOOUx.js';import'./chunk-DN6f5jXR.js';import'./chunk-3RXp81pP.js';import {r as rt,n as nn,s as st,Y as Yt,e as en}from'./chunk-ByhuT4BS.js';import'./chunk-C4kBXz3C.js';import'./chunk-Dh6x3lXP.js';import'./chunk-DD_QfWih.js';import'./chunk-khm9J_G0.js';import'./chunk-wyNyzSXi.js';import {h,G,V}from'./chunk-CegwkGVu.js';import'./chunk-CT9ziigM.js';import'./chunk-D5lj-fQk.js';import'./chunk-D6aNT_wo.js';import {c}from'./chunk-OLi7f6y7.js';import'./chunk-B2TXzbpy.js';import {T,a5 as g,a6 as be$1,B as y1,U as Ue$1,N as Nt,G as Ga,at as h$1,d as dw,v,f as N,j as mg,Q as Qi,o as oT,H as Hl,D as DE,i as iT,t as tC,$ as $g,K as lC,X as XT,n as nC,k as gT,F as Fg,S as Sd,x as xd,q as PC,O as Og,P as Pg,au as Lg,av as eC,I as Qg,z as gg,a1 as cT,ap as sT,a2 as lT,s as sm,l as HC,p as DD,w as im,y as TD,E as nm}from'./main-KFKZO6SJ.js';import {f}from'./chunk-DPNAj9Vc.js';import {d}from'./chunk-CRAg6SRo.js';import {F as Fe$1}from'./chunk-DuIUmwWN.js';import {B as Bn,Z as Ze,R as Rn,J as Jt}from'./chunk-DipTNkHN.js';import'./chunk-Fw6nFDZK.js';import'./chunk-Ca1C9pJ0.js';import'./chunk-C-NgIZiF.js';import'./chunk-PVmXLw9b.js';import'./chunk-C7pjkqKB.js';function Ee(n,t){n&1&&(Qi(0,"div",13),mg(1,"sh-progress-bar",14),Qi(2,"div",15)(3,"h3"),XT(4,2),Hl()()());}function Fe(n,t){n&1&&(Qi(0,"sh-divider"),XT(1,5),Hl());}function Ie(n,t){if(n&1&&(Qi(0,"p",20),PC(1),Hl()),n&2){let e=nC().$implicit;DE(),nm(e.Description);}}function Ne(n,t){if(n&1&&(Qi(0,"p",20),PC(1),Hl()),n&2){let e=nC().$implicit,o=nC(3);DE(),nm(o.getSimplePath(e.BaseUrl));}}function ye(n,t){if(n&1){let e=gT();Qi(0,"button",25),Fg("click",function(i){Sd(e);let r=nC().$implicit,f=nC(3);return xd(f.updateBackupsSync(r,i))}),PC(1," Update backups "),Hl();}if(n&2){let e=nC(4);gg("disabled",e.isSaving());}}function he(n,t){if(n&1){let e=gT();Qi(0,"app-destination-list-item",18),Fg("click",function(){let i=Sd(e).$implicit,r=nC(3);return xd(r.selectDestination(i))}),Qi(1,"h3",19),PC(2),Hl(),oT(3,Ie,2,1,"p",20)(4,Ne,2,1,"p",20),Qi(5,"div",21),oT(6,ye,2,1,"button",22),Qi(7,"button",23),Fg("click",function(i){let r=Sd(e).$implicit,f=nC(3);return xd(f.deleteDestination(r.ID,i))}),Qi(8,"sh-icon"),PC(9,"trash"),Hl()(),Qi(10,"button",24),Og(11,6),mg(12,"sh-icon"),Pg(),Hl()()();}if(n&2){let e=t.$implicit,o=nC(3);gg("targetUrl",e.BaseUrl),DE(2),nm(e.Name||e.BaseUrl),DE(),iT(e.Description?3:4),DE(3),iT(o.isOutOfSync(e)?6:-1);}}function Oe(n,t){if(n&1){let e=gT();Qi(0,"sh-card",16),Fg("click",function(){Sd(e);let i=nC(2);return xd(i.selectDestination("new"))})("keydown.enter",function(i){return i.target.click()})("keydown.space",function(i){return i.target.click()}),Qi(1,"sh-icon"),PC(2,"plus-circle"),Hl(),Qi(3,"div",15)(4,"h3"),XT(5,3),Hl(),Qi(6,"p"),XT(7,4),Hl()()(),oT(8,Fe,2,0,"sh-divider"),cT(9,he,13,4,"app-destination-list-item",17,sT);}if(n&2){let e=nC(2);DE(8),iT(e.destinations().length>0?8:-1),DE(),lT(e.destinations());}}function xe(n,t){if(n&1&&(Qi(0,"h2"),XT(1,1),Hl(),oT(2,Ee,5,0,"div",13)(3,Oe,11,1)),n&2){let e=nC();DE(2),iT(e.isLoading()?2:3);}}function Be(n,t){n&1&&XT(0,10,1);}function Pe(n,t){n&1&&XT(0,10,2);}function Ae(n,t){n&1&&XT(0,10,3);}function Me(n,t){if(n&1){let e=gT();Qi(0,"button",37),Fg("click",function(){Sd(e);let i=nC(2);return xd(i.testDestination())}),Og(1,10),oT(2,Be,1,0)(3,Pe,1,0)(4,Ae,1,0),Pg(),Hl();}if(n&2){let e=nC(2);gg("disabled",e.testSignal()=="testing"),DE(2),iT(e.testSignal()=="testing"?2:e.testResponse()?.action==="success"?3:4);}}function be(n,t){if(n&1){let e=gT();Qi(0,"div",32)(1,"sh-form-field")(2,"label"),XT(3,11),Hl(),Qi(4,"input",38),sm("ngModelChange",function(i){Sd(e);let r=nC(2);return HC(r.editName,i)||(r.editName=i),xd(i)}),Hl(),DD(),Hl()();}if(n&2){let e=nC(2);DE(4),im("ngModel",e.editName),TD();}}function $e(n,t){if(n&1){let e=gT();Qi(0,"app-test-url",39,0),sm("targetUrlChange",function(i){Sd(e);let r=nC(2);return HC(r.editBaseUrl,i)||(r.editBaseUrl=i),xd(i)})("testSignalChange",function(i){Sd(e);let r=nC(2);return HC(r.testSignal,i)||(r.testSignal=i),xd(i)}),Hl();}if(n&2){let e=nC(2);im("targetUrl",e.editBaseUrl)("testSignal",e.testSignal),gg("connectionStringId",e.selectedDestinationId())("backupId",null)("sourcePrefix",null)("suppressErrorDialogs",true)("askToCreate",true)("testExpectation","any")("readOnlyTest",false)("moduleType","Backend");}}function ke(n,t){if(n&1){let e=gT();Qi(0,"app-destination-list-item",40)(1,"button",41),Fg("click",function(){Sd(e);let i=nC(2);return xd(i.removeDestination())}),XT(2,12),Hl()(),Qi(3,"app-single-destination",42),sm("targetUrlChange",function(i){Sd(e);let r=nC(2);return HC(r.editBaseUrl,i)||(r.editBaseUrl=i),xd(i)}),Hl();}if(n&2){let e=nC(2);gg("targetUrl",e.editBaseUrl()),DE(3),im("targetUrl",e.editBaseUrl);}}function Re(n,t){if(n&1){let e=gT();Qi(0,"app-destination-list",43),Fg("setDestination",function(i){Sd(e);let r=nC(2);return xd(r.setDestination(i))}),Hl();}}function Le(n,t){n&1&&XT(0,9,1);}function we(n,t){n&1&&XT(0,9,2);}function Ue(n,t){n&1&&XT(0,9,3);}function ve(n,t){n&1&&XT(0,9,4);}function Ge(n,t){if(n&1){let e=gT();Qi(0,"header",26)(1,"button",23),Fg("click",function(){Sd(e);let i=nC();return xd(i.cancelEdit())}),Qi(2,"sh-icon"),PC(3,"arrow-left"),Hl()()(),Qi(4,"div",27)(5,"sh-card",28)(6,"header",29)(7,"h3"),XT(8,7),Hl(),Qi(9,"div",30),oT(10,Me,5,2,"button",31),Hl()(),oT(11,be,5,1,"div",32),oT(12,$e,2,10,"app-test-url",33),oT(13,ke,4,2)(14,Re,1,0,"app-destination-list"),Hl(),Qi(15,"div",34)(16,"button",35),Fg("click",function(){Sd(e);let i=nC();return xd(i.cancelEdit())}),XT(17,8),Hl(),Qi(18,"button",36),Fg("click",function(){Sd(e);let i=nC();return xd(i.testResponse()?.action==="success"||i.testResponse()?.action==="missing-folder"||!i.isUrlChanged()?i.save():i.testDestination())}),Og(19,9),oT(20,Le,1,0)(21,we,1,0)(22,Ue,1,0)(23,ve,1,0),Pg(),Hl()()();}if(n&2){let e=nC();DE(8),Lg(e.selectedDestination()==="new"?"New Destination":"Edit Destination"),eC(8),DE(2),iT(e.editBaseUrl()?10:-1),DE(),iT(e.selectedDestination()!=="new"?11:-1),DE(),iT(e.editBaseUrl()?12:-1),DE(),iT(e.editBaseUrl()?13:14),DE(5),Qg("primary",e.testResponse()?.action==="success"||!e.isUrlChanged())("warn",e.isUrlChanged()&&e.testSignal()===null||e.testSignal()==="testing"||e.testResponse()?.action==="missing-folder")("error",e.testResponse()&&e.testResponse()?.action!=="success"&&e.testResponse()?.action!=="missing-folder"),gg("disabled",!e.editBaseUrl()||e.isSaving()||e.testSignal()==="testing"),DE(2),iT(e.isSaving()?20:e.testSignal()==="testing"?21:e.testResponse()?.action==="success"||e.testResponse()?.action==="missing-folder"||!e.isUrlChanged()?22:23);}}var R=class n{#e=T(rt);#t=T(g);#n=T(be$1);getSimplePath=h;backups=this.#t.backups;constructor(){this.#t.getBackups();}isSaving=this.#e.isSaving;destinations=this.#e.destinations;isLoading=this.#e.resourceDestinations.isLoading;testUrl=y1(nn);selectedDestination=Ue$1(null);selectedDestinationId=Nt(()=>this.selectedDestination()!=="new"?this.selectedDestination().ID:null);editName=Ue$1(null);editDescription=Ue$1(null);editBaseUrl=Ue$1(null);initialBaseUrl=Ue$1(null);isUrlChanged=Nt(()=>{let t=this.editBaseUrl(),e=this.initialBaseUrl();return this.selectedDestination()==="new"?true:t!==e});testSignal=Ue$1(null);testResponse=Nt(()=>{let t=this.testSignal();return t&&typeof t!="string"?t:null});getOutOfSyncBackupIds(t){if(!t.Backups)return [];let e=new Map(this.backups().map(o=>[o.Backup?.ID,o.Backup]));return t.Backups.filter(o=>{let i=e.get(o.ID);return i&&i.TargetURL!==t.BaseUrl}).map(o=>o.ID).filter(o=>!!o)}isOutOfSync(t){return this.getOutOfSyncBackupIds(t).length>0}#i=Ga(()=>{this.editBaseUrl(),this.testSignal.set(null);});selectDestination(t){this.selectedDestination.set(t),this.testSignal.set(null),t==="new"?(this.editName.set(null),this.editDescription.set(null),this.editBaseUrl.set(null),this.initialBaseUrl.set(null)):(this.editName.set(t.Name),this.editDescription.set(t.Description),this.editBaseUrl.set(t.BaseUrl),this.initialBaseUrl.set(t.BaseUrl),this.#e.getById(t.ID).subscribe(e=>{e.Data&&(this.editName.set(e.Data.Name),this.editDescription.set(e.Data.Description),this.editBaseUrl.set(e.Data.BaseUrl??null),this.initialBaseUrl.set(e.Data.BaseUrl??null));}));}cancelEdit(){this.selectedDestination.set(null);}setDestination(t){let e=G(t??"");if(e){if(e.mapper.default){let o=e.mapper.default("");this.editBaseUrl.set(o);return}this.editBaseUrl.set(`${t}://`);}}removeDestination(){this.editBaseUrl.set(null);}async testDestination(){(await this.testUrl()?.testDestination(false))?.action==="missing-folder"&&this.promptCreateFolder();}promptCreateFolder(){this.#n.open(h$1,{data:{title:$localize`Folder missing`,message:$localize`The specified folder does not exist. Would you like to create it now?`,confirmText:$localize`Create Folder`,cancelText:$localize`Dismiss`},closed:t=>{t&&this.testUrl()?.createFolder();}});}save(){let t=this.selectedDestination();t&&this.performSave(t);}performSave(t){let e=this.editName(),o=this.editDescription(),i=this.editBaseUrl();if(t==="new"){let I=V(i??"")?.displayName??"Destination",y=this.destinations().filter(F=>F.Name?.startsWith(I)).length;e=`${I} #${y+1}`,o=null;}let r={Name:e,Description:o,BaseUrl:i};this.#e.save(t,r).subscribe(()=>{this.selectedDestination.set(null),this.#e.reload(),this.#t.getBackups(true);});}updateBackupsSync(t,e){e.stopPropagation();let o=this.getOutOfSyncBackupIds(t);this.#n.open(h$1,{data:{title:$localize`Update backups`,message:$localize`Are you sure you want to update ${o.length} backup(s) to use the current connection string?`,confirmText:$localize`Update`,cancelText:$localize`Cancel`},closed:i=>{i&&this.#e.updateBackups(t.ID,o).subscribe(()=>{this.#e.reload(),this.#t.getBackups(true);});}});}deleteDestination(t,e){e.stopPropagation(),this.#n.open(h$1,{data:{title:$localize`Delete destination`,message:$localize`Are you sure you want to delete this destination?`,confirmText:$localize`Delete`,confirmVariant:"error",cancelText:$localize`Cancel`},closed:o=>{o&&this.#e.delete(t).subscribe(()=>{this.#e.reload();});}});}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=dw({type:n,selectors:[["app-destinations"]],viewQuery:function(e,o){e&1&&$g(o.testUrl,nn,5),e&2&&lC();},decls:4,vars:1,consts:()=>{let t;t=$localize`Destinations`;let e;e=$localize`Loading destinations...`;let o;o=$localize`Add new destination`;let i;i=$localize`Configure a new storage location.`;let r;r=$localize`Or manage your saved destinations`;let f;f=$localize` Manage ${"\uFFFD#12\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SH_ICON:`;let I;I=$localize`${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let y;y=$localize`Cancel`;let F;F=$localize`${"\uFFFD*20:1\uFFFD"}:START_BLOCK_IF: Saving... ${"\uFFFD/*20:1\uFFFD"}:CLOSE_BLOCK_IF:${"\uFFFD*21:2\uFFFD"}:START_BLOCK_ELSE_IF: Testing... ${"[\uFFFD/*21:2\uFFFD|\uFFFD/*22:3\uFFFD]"}:CLOSE_BLOCK_ELSE_IF:${"\uFFFD*22:3\uFFFD"}:START_BLOCK_ELSE_IF_1: Save Destination ${"[\uFFFD/*21:2\uFFFD|\uFFFD/*22:3\uFFFD]"}:CLOSE_BLOCK_ELSE_IF:${"\uFFFD*23:4\uFFFD"}:START_BLOCK_ELSE: Test & Save ${"\uFFFD/*23:4\uFFFD"}:CLOSE_BLOCK_ELSE:`,F=tC(F);let L;L=$localize`${"\uFFFD*2:1\uFFFD"}:START_BLOCK_IF: Testing... ${"\uFFFD/*2:1\uFFFD"}:CLOSE_BLOCK_IF:${"\uFFFD*3:2\uFFFD"}:START_BLOCK_ELSE_IF: Retry test ${"\uFFFD/*3:2\uFFFD"}:CLOSE_BLOCK_ELSE_IF:${"\uFFFD*4:3\uFFFD"}:START_BLOCK_ELSE: Test destination ${"\uFFFD/*4:3\uFFFD"}:CLOSE_BLOCK_ELSE:`;let w;w=$localize`Name`;let U;U=$localize`Name`;let v;return v=$localize`Change`,[["testUrl",""],t,e,o,i,r,f,I,y,F,L,U,v,[1,"loading-list"],[1,"indeterminate","primary"],[1,"text"],["tabindex","0",1,"type-a","actionable","add-new",3,"click","keydown.enter","keydown.space"],["variant","type-a",1,"actionable",3,"targetUrl"],["variant","type-a",1,"actionable",3,"click","targetUrl"],["displayName",""],["description",""],[1,"manage-actions"],["shButton","","type","button",1,"small","raised","primary",3,"disabled"],["shButton","","iconOnly","","type","button",1,"ghost",3,"click"],["shButton","","type","button",1,"manage-btn"],["shButton","","type","button",1,"small","raised","primary",3,"click","disabled"],[1,"edit-header"],[1,"edit-form"],[1,"config-section","type-c"],[1,"dest-config-header"],[1,"actions"],["shButton","","type","button",1,"small","ghost",3,"disabled"],[1,"form-row"],[3,"targetUrl","testSignal","connectionStringId","backupId","sourcePrefix","suppressErrorDialogs","askToCreate","testExpectation","readOnlyTest","moduleType"],[1,"form-footer"],["shButton","","type","button",3,"click"],["shButton","","type","button",1,"raised",3,"click","disabled"],["shButton","","type","button",1,"small","ghost",3,"click","disabled"],["placeholder",w,3,"ngModelChange","ngModel"],[3,"targetUrlChange","testSignalChange","targetUrl","testSignal","connectionStringId","backupId","sourcePrefix","suppressErrorDialogs","askToCreate","testExpectation","readOnlyTest","moduleType"],[1,"selected-backend",3,"targetUrl"],["shButton","","type","button",1,"ghost",3,"click"],[3,"targetUrlChange","targetUrl"],[3,"setDestination"]]},template:function(e,o){e&1&&(mg(0,"app-status-bar"),Qi(1,"section"),oT(2,xe,4,1)(3,Ge,24,13),Hl()),e&2&&(DE(2),iT(o.selectedDestination()===null?2:3));},dependencies:[st,Yt,en,ee,d,v,N,f,Fe$1,c,nn,Bn,Ze,Rn,Jt],styles:["[_nghost-%COMP%]{display:block}section[_ngcontent-%COMP%]{max-width:43.75rem;margin:0 auto;padding:2rem 1rem;display:flex;flex-direction:column;gap:1rem}h2[_ngcontent-%COMP%]{font:var(--title-30);text-align:center;padding:2rem}h3[_ngcontent-%COMP%]{font:var(--paragraph-10)}.actionable[_ngcontent-%COMP%]{cursor:pointer}.actionable[_ngcontent-%COMP%]:after{transition:inset .1s linear}.actionable[_ngcontent-%COMP%]:hover{--card-shp: 0}.custom-info[_ngcontent-%COMP%]{flex:1}.custom-info[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font:var(--body-10);color:var(--base-7);margin:.25rem 0 0}.manage-actions[_ngcontent-%COMP%]{display:flex;gap:.5rem;align-items:center}@media(max-width:600px){.manage-actions[_ngcontent-%COMP%] .manage-btn[_ngcontent-%COMP%]{display:none}}.add-new[_ngcontent-%COMP%]{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:var(--base-1);color:var(--primary-8)}.add-new[_ngcontent-%COMP%] sh-icon[_ngcontent-%COMP%]{font-size:2.5rem;opacity:.8}.edit-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.edit-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.edit-form[_ngcontent-%COMP%] .form-row[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:1.5rem}@media(max-width:600px){.edit-form[_ngcontent-%COMP%] .form-row[_ngcontent-%COMP%]{grid-template-columns:1fr}}.edit-form[_ngcontent-%COMP%] .config-section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem}.edit-form[_ngcontent-%COMP%] .config-section[_ngcontent-%COMP%] .dest-config-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center}.edit-form[_ngcontent-%COMP%] .form-footer[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem;padding-top:1.5rem;border-top:1px solid var(--base-3)}.selected-backend[_ngcontent-%COMP%]{margin-bottom:.5rem}.loading-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem;align-items:center;padding:4rem}.loading-list[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{text-align:center}"]})};
1
+ import {e as ee}from'./chunk-C4GeR7BF.js';import'./chunk-CUaRQ2FJ.js';import'./chunk-aOMoAKYY.js';import'./chunk-BEhUV7oX.js';import {s as st,o as on,l as lt,Q as Qt,t as tn}from'./chunk-kU0H989B.js';import'./chunk-C80zvTbO.js';import'./chunk-Cjb79u3p.js';import'./chunk-DJJ8GbYi.js';import'./chunk-DUYvFN8m.js';import'./chunk-BpRWdcC8.js';import {h,G,V}from'./chunk-ihUnHtR7.js';import'./chunk-Bb6BmVO4.js';import'./chunk-DmDqcC4A.js';import'./chunk-CAwTsBqQ.js';import {c}from'./chunk-B53Wj4F9.js';import'./chunk-BTgf5lfZ.js';import {T,a5 as g,a6 as be$1,E as D1,G as Ge$1,N as Nt,z as za,at as h$1,h as hw,v,d as N,j as vg,Q as Qi,f as aT,$ as $l,C as CE,i as cT,o as oC,W as Wg,K as fC,n as nC,k as iC,l as vT,V as Vg,r as kd,O as Od,w as jC,L as Lg,F as Fg,au as jg,av as rC,Y as Yg,A as yg,a1 as dT,ap as lT,a2 as fT,p as cm,U as UC,s as CD,x as am,y as _D,J as om}from'./main-VVQP2YE7.js';import {f}from'./chunk-Bja52qI7.js';import {d}from'./chunk-B8uF0dom.js';import {F as Fe$1}from'./chunk-B9maI7Xa.js';import {B as Bn,Z as Ze,R as Rn,J as Jt}from'./chunk-BO2GlieG.js';import'./chunk-CKnRcyHZ.js';import'./chunk-CwKy8pxa.js';import'./chunk-BVEyeg9y.js';import'./chunk-DqIU7ViF.js';import'./chunk-Box6Lckh.js';function Ee(n,t){n&1&&(Qi(0,"div",13),vg(1,"sh-progress-bar",14),Qi(2,"div",15)(3,"h3"),nC(4,2),$l()()());}function Fe(n,t){n&1&&(Qi(0,"sh-divider"),nC(1,5),$l());}function Ie(n,t){if(n&1&&(Qi(0,"p",20),jC(1),$l()),n&2){let e=iC().$implicit;CE(),om(e.Description);}}function Ne(n,t){if(n&1&&(Qi(0,"p",20),jC(1),$l()),n&2){let e=iC().$implicit,o=iC(3);CE(),om(o.getSimplePath(e.BaseUrl));}}function ye(n,t){if(n&1){let e=vT();Qi(0,"button",25),Vg("click",function(i){kd(e);let r=iC().$implicit,f=iC(3);return Od(f.updateBackupsSync(r,i))}),jC(1," Update backups "),$l();}if(n&2){let e=iC(4);yg("disabled",e.isSaving());}}function he(n,t){if(n&1){let e=vT();Qi(0,"app-destination-list-item",18),Vg("click",function(){let i=kd(e).$implicit,r=iC(3);return Od(r.selectDestination(i))}),Qi(1,"h3",19),jC(2),$l(),aT(3,Ie,2,1,"p",20)(4,Ne,2,1,"p",20),Qi(5,"div",21),aT(6,ye,2,1,"button",22),Qi(7,"button",23),Vg("click",function(i){let r=kd(e).$implicit,f=iC(3);return Od(f.deleteDestination(r.ID,i))}),Qi(8,"sh-icon"),jC(9,"trash"),$l()(),Qi(10,"button",24),Lg(11,6),vg(12,"sh-icon"),Fg(),$l()()();}if(n&2){let e=t.$implicit,o=iC(3);yg("targetUrl",e.BaseUrl),CE(2),om(e.Name||e.BaseUrl),CE(),cT(e.Description?3:4),CE(3),cT(o.isOutOfSync(e)?6:-1);}}function Oe(n,t){if(n&1){let e=vT();Qi(0,"sh-card",16),Vg("click",function(){kd(e);let i=iC(2);return Od(i.selectDestination("new"))})("keydown.enter",function(i){return i.target.click()})("keydown.space",function(i){return i.target.click()}),Qi(1,"sh-icon"),jC(2,"plus-circle"),$l(),Qi(3,"div",15)(4,"h3"),nC(5,3),$l(),Qi(6,"p"),nC(7,4),$l()()(),aT(8,Fe,2,0,"sh-divider"),dT(9,he,13,4,"app-destination-list-item",17,lT);}if(n&2){let e=iC(2);CE(8),cT(e.destinations().length>0?8:-1),CE(),fT(e.destinations());}}function xe(n,t){if(n&1&&(Qi(0,"h2"),nC(1,1),$l(),aT(2,Ee,5,0,"div",13)(3,Oe,11,1)),n&2){let e=iC();CE(2),cT(e.isLoading()?2:3);}}function Be(n,t){n&1&&nC(0,10,1);}function Pe(n,t){n&1&&nC(0,10,2);}function Ae(n,t){n&1&&nC(0,10,3);}function Me(n,t){if(n&1){let e=vT();Qi(0,"button",37),Vg("click",function(){kd(e);let i=iC(2);return Od(i.testDestination())}),Lg(1,10),aT(2,Be,1,0)(3,Pe,1,0)(4,Ae,1,0),Fg(),$l();}if(n&2){let e=iC(2);yg("disabled",e.testSignal()=="testing"),CE(2),cT(e.testSignal()=="testing"?2:e.testResponse()?.action==="success"?3:4);}}function be(n,t){if(n&1){let e=vT();Qi(0,"div",32)(1,"sh-form-field")(2,"label"),nC(3,11),$l(),Qi(4,"input",38),cm("ngModelChange",function(i){kd(e);let r=iC(2);return UC(r.editName,i)||(r.editName=i),Od(i)}),$l(),CD(),$l()();}if(n&2){let e=iC(2);CE(4),am("ngModel",e.editName),_D();}}function $e(n,t){if(n&1){let e=vT();Qi(0,"app-test-url",39,0),cm("targetUrlChange",function(i){kd(e);let r=iC(2);return UC(r.editBaseUrl,i)||(r.editBaseUrl=i),Od(i)})("testSignalChange",function(i){kd(e);let r=iC(2);return UC(r.testSignal,i)||(r.testSignal=i),Od(i)}),$l();}if(n&2){let e=iC(2);am("targetUrl",e.editBaseUrl)("testSignal",e.testSignal),yg("connectionStringId",e.selectedDestinationId())("backupId",null)("sourcePrefix",null)("suppressErrorDialogs",true)("askToCreate",true)("testExpectation","any")("readOnlyTest",false)("moduleType","Backend");}}function ke(n,t){if(n&1){let e=vT();Qi(0,"app-destination-list-item",40)(1,"button",41),Vg("click",function(){kd(e);let i=iC(2);return Od(i.removeDestination())}),nC(2,12),$l()(),Qi(3,"app-single-destination",42),cm("targetUrlChange",function(i){kd(e);let r=iC(2);return UC(r.editBaseUrl,i)||(r.editBaseUrl=i),Od(i)}),$l();}if(n&2){let e=iC(2);yg("targetUrl",e.editBaseUrl()),CE(3),am("targetUrl",e.editBaseUrl);}}function Re(n,t){if(n&1){let e=vT();Qi(0,"app-destination-list",43),Vg("setDestination",function(i){kd(e);let r=iC(2);return Od(r.setDestination(i))}),$l();}}function Le(n,t){n&1&&nC(0,9,1);}function we(n,t){n&1&&nC(0,9,2);}function Ue(n,t){n&1&&nC(0,9,3);}function ve(n,t){n&1&&nC(0,9,4);}function Ge(n,t){if(n&1){let e=vT();Qi(0,"header",26)(1,"button",23),Vg("click",function(){kd(e);let i=iC();return Od(i.cancelEdit())}),Qi(2,"sh-icon"),jC(3,"arrow-left"),$l()()(),Qi(4,"div",27)(5,"sh-card",28)(6,"header",29)(7,"h3"),nC(8,7),$l(),Qi(9,"div",30),aT(10,Me,5,2,"button",31),$l()(),aT(11,be,5,1,"div",32),aT(12,$e,2,10,"app-test-url",33),aT(13,ke,4,2)(14,Re,1,0,"app-destination-list"),$l(),Qi(15,"div",34)(16,"button",35),Vg("click",function(){kd(e);let i=iC();return Od(i.cancelEdit())}),nC(17,8),$l(),Qi(18,"button",36),Vg("click",function(){kd(e);let i=iC();return Od(i.testResponse()?.action==="success"||i.testResponse()?.action==="missing-folder"||!i.isUrlChanged()?i.save():i.testDestination())}),Lg(19,9),aT(20,Le,1,0)(21,we,1,0)(22,Ue,1,0)(23,ve,1,0),Fg(),$l()()();}if(n&2){let e=iC();CE(8),jg(e.selectedDestination()==="new"?"New Destination":"Edit Destination"),rC(8),CE(2),cT(e.editBaseUrl()?10:-1),CE(),cT(e.selectedDestination()!=="new"?11:-1),CE(),cT(e.editBaseUrl()?12:-1),CE(),cT(e.editBaseUrl()?13:14),CE(5),Yg("primary",e.testResponse()?.action==="success"||!e.isUrlChanged())("warn",e.isUrlChanged()&&e.testSignal()===null||e.testSignal()==="testing"||e.testResponse()?.action==="missing-folder")("error",e.testResponse()&&e.testResponse()?.action!=="success"&&e.testResponse()?.action!=="missing-folder"),yg("disabled",!e.editBaseUrl()||e.isSaving()||e.testSignal()==="testing"),CE(2),cT(e.isSaving()?20:e.testSignal()==="testing"?21:e.testResponse()?.action==="success"||e.testResponse()?.action==="missing-folder"||!e.isUrlChanged()?22:23);}}var R=class n{#e=T(st);#t=T(g);#n=T(be$1);getSimplePath=h;backups=this.#t.backups;constructor(){this.#t.getBackups();}isSaving=this.#e.isSaving;destinations=this.#e.destinations;isLoading=this.#e.resourceDestinations.isLoading;testUrl=D1(on);selectedDestination=Ge$1(null);selectedDestinationId=Nt(()=>this.selectedDestination()!=="new"?this.selectedDestination().ID:null);editName=Ge$1(null);editDescription=Ge$1(null);editBaseUrl=Ge$1(null);initialBaseUrl=Ge$1(null);isUrlChanged=Nt(()=>{let t=this.editBaseUrl(),e=this.initialBaseUrl();return this.selectedDestination()==="new"?true:t!==e});testSignal=Ge$1(null);testResponse=Nt(()=>{let t=this.testSignal();return t&&typeof t!="string"?t:null});getOutOfSyncBackupIds(t){if(!t.Backups)return [];let e=new Map(this.backups().map(o=>[o.Backup?.ID,o.Backup]));return t.Backups.filter(o=>{let i=e.get(o.ID);return i&&i.TargetURL!==t.BaseUrl}).map(o=>o.ID).filter(o=>!!o)}isOutOfSync(t){return this.getOutOfSyncBackupIds(t).length>0}#i=za(()=>{this.editBaseUrl(),this.testSignal.set(null);});selectDestination(t){this.selectedDestination.set(t),this.testSignal.set(null),t==="new"?(this.editName.set(null),this.editDescription.set(null),this.editBaseUrl.set(null),this.initialBaseUrl.set(null)):(this.editName.set(t.Name),this.editDescription.set(t.Description),this.editBaseUrl.set(t.BaseUrl),this.initialBaseUrl.set(t.BaseUrl),this.#e.getById(t.ID).subscribe(e=>{e.Data&&(this.editName.set(e.Data.Name),this.editDescription.set(e.Data.Description),this.editBaseUrl.set(e.Data.BaseUrl??null),this.initialBaseUrl.set(e.Data.BaseUrl??null));}));}cancelEdit(){this.selectedDestination.set(null);}setDestination(t){let e=G(t??"");if(e){if(e.mapper.default){let o=e.mapper.default("");this.editBaseUrl.set(o);return}this.editBaseUrl.set(`${t}://`);}}removeDestination(){this.editBaseUrl.set(null);}async testDestination(){(await this.testUrl()?.testDestination(false))?.action==="missing-folder"&&this.promptCreateFolder();}promptCreateFolder(){this.#n.open(h$1,{data:{title:$localize`Folder missing`,message:$localize`The specified folder does not exist. Would you like to create it now?`,confirmText:$localize`Create Folder`,cancelText:$localize`Dismiss`},closed:t=>{t&&this.testUrl()?.createFolder();}});}save(){let t=this.selectedDestination();t&&this.performSave(t);}performSave(t){let e=this.editName(),o=this.editDescription(),i=this.editBaseUrl();if(t==="new"){let I=V(i??"")?.displayName??"Destination",y=this.destinations().filter(F=>F.Name?.startsWith(I)).length;e=`${I} #${y+1}`,o=null;}let r={Name:e,Description:o,BaseUrl:i};this.#e.save(t,r).subscribe(()=>{this.selectedDestination.set(null),this.#e.reload(),this.#t.getBackups(true);});}updateBackupsSync(t,e){e.stopPropagation();let o=this.getOutOfSyncBackupIds(t);this.#n.open(h$1,{data:{title:$localize`Update backups`,message:$localize`Are you sure you want to update ${o.length} backup(s) to use the current connection string?`,confirmText:$localize`Update`,cancelText:$localize`Cancel`},closed:i=>{i&&this.#e.updateBackups(t.ID,o).subscribe(()=>{this.#e.reload(),this.#t.getBackups(true);});}});}deleteDestination(t,e){e.stopPropagation(),this.#n.open(h$1,{data:{title:$localize`Delete destination`,message:$localize`Are you sure you want to delete this destination?`,confirmText:$localize`Delete`,confirmVariant:"error",cancelText:$localize`Cancel`},closed:o=>{o&&this.#e.delete(t).subscribe(()=>{this.#e.reload();});}});}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=hw({type:n,selectors:[["app-destinations"]],viewQuery:function(e,o){e&1&&Wg(o.testUrl,on,5),e&2&&fC();},decls:4,vars:1,consts:()=>{let t;t=$localize`Destinations`;let e;e=$localize`Loading destinations...`;let o;o=$localize`Add new destination`;let i;i=$localize`Configure a new storage location.`;let r;r=$localize`Or manage your saved destinations`;let f;f=$localize` Manage ${"\uFFFD#12\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SH_ICON:`;let I;I=$localize`${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let y;y=$localize`Cancel`;let F;F=$localize`${"\uFFFD*20:1\uFFFD"}:START_BLOCK_IF: Saving... ${"\uFFFD/*20:1\uFFFD"}:CLOSE_BLOCK_IF:${"\uFFFD*21:2\uFFFD"}:START_BLOCK_ELSE_IF: Testing... ${"[\uFFFD/*21:2\uFFFD|\uFFFD/*22:3\uFFFD]"}:CLOSE_BLOCK_ELSE_IF:${"\uFFFD*22:3\uFFFD"}:START_BLOCK_ELSE_IF_1: Save Destination ${"[\uFFFD/*21:2\uFFFD|\uFFFD/*22:3\uFFFD]"}:CLOSE_BLOCK_ELSE_IF:${"\uFFFD*23:4\uFFFD"}:START_BLOCK_ELSE: Test & Save ${"\uFFFD/*23:4\uFFFD"}:CLOSE_BLOCK_ELSE:`,F=oC(F);let L;L=$localize`${"\uFFFD*2:1\uFFFD"}:START_BLOCK_IF: Testing... ${"\uFFFD/*2:1\uFFFD"}:CLOSE_BLOCK_IF:${"\uFFFD*3:2\uFFFD"}:START_BLOCK_ELSE_IF: Retry test ${"\uFFFD/*3:2\uFFFD"}:CLOSE_BLOCK_ELSE_IF:${"\uFFFD*4:3\uFFFD"}:START_BLOCK_ELSE: Test destination ${"\uFFFD/*4:3\uFFFD"}:CLOSE_BLOCK_ELSE:`;let w;w=$localize`Name`;let U;U=$localize`Name`;let v;return v=$localize`Change`,[["testUrl",""],t,e,o,i,r,f,I,y,F,L,U,v,[1,"loading-list"],[1,"indeterminate","primary"],[1,"text"],["tabindex","0",1,"type-a","actionable","add-new",3,"click","keydown.enter","keydown.space"],["variant","type-a",1,"actionable",3,"targetUrl"],["variant","type-a",1,"actionable",3,"click","targetUrl"],["displayName",""],["description",""],[1,"manage-actions"],["shButton","","type","button",1,"small","raised","primary",3,"disabled"],["shButton","","iconOnly","","type","button",1,"ghost",3,"click"],["shButton","","type","button",1,"manage-btn"],["shButton","","type","button",1,"small","raised","primary",3,"click","disabled"],[1,"edit-header"],[1,"edit-form"],[1,"config-section","type-c"],[1,"dest-config-header"],[1,"actions"],["shButton","","type","button",1,"small","ghost",3,"disabled"],[1,"form-row"],[3,"targetUrl","testSignal","connectionStringId","backupId","sourcePrefix","suppressErrorDialogs","askToCreate","testExpectation","readOnlyTest","moduleType"],[1,"form-footer"],["shButton","","type","button",3,"click"],["shButton","","type","button",1,"raised",3,"click","disabled"],["shButton","","type","button",1,"small","ghost",3,"click","disabled"],["placeholder",w,3,"ngModelChange","ngModel"],[3,"targetUrlChange","testSignalChange","targetUrl","testSignal","connectionStringId","backupId","sourcePrefix","suppressErrorDialogs","askToCreate","testExpectation","readOnlyTest","moduleType"],[1,"selected-backend",3,"targetUrl"],["shButton","","type","button",1,"ghost",3,"click"],[3,"targetUrlChange","targetUrl"],[3,"setDestination"]]},template:function(e,o){e&1&&(vg(0,"app-status-bar"),Qi(1,"section"),aT(2,xe,4,1)(3,Ge,24,13),$l()),e&2&&(CE(2),cT(o.selectedDestination()===null?2:3));},dependencies:[lt,Qt,tn,ee,d,v,N,f,Fe$1,c,on,Bn,Ze,Rn,Jt],styles:["[_nghost-%COMP%]{display:block}section[_ngcontent-%COMP%]{max-width:43.75rem;margin:0 auto;padding:2rem 1rem;display:flex;flex-direction:column;gap:1rem}h2[_ngcontent-%COMP%]{font:var(--title-30);text-align:center;padding:2rem}h3[_ngcontent-%COMP%]{font:var(--paragraph-10)}.actionable[_ngcontent-%COMP%]{cursor:pointer}.actionable[_ngcontent-%COMP%]:after{transition:inset .1s linear}.actionable[_ngcontent-%COMP%]:hover{--card-shp: 0}.custom-info[_ngcontent-%COMP%]{flex:1}.custom-info[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font:var(--body-10);color:var(--base-7);margin:.25rem 0 0}.manage-actions[_ngcontent-%COMP%]{display:flex;gap:.5rem;align-items:center}@media(max-width:600px){.manage-actions[_ngcontent-%COMP%] .manage-btn[_ngcontent-%COMP%]{display:none}}.add-new[_ngcontent-%COMP%]{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:var(--base-1);color:var(--primary-8)}.add-new[_ngcontent-%COMP%] sh-icon[_ngcontent-%COMP%]{font-size:2.5rem;opacity:.8}.edit-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.edit-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.edit-form[_ngcontent-%COMP%] .form-row[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr;gap:1rem;margin-bottom:1.5rem}@media(max-width:600px){.edit-form[_ngcontent-%COMP%] .form-row[_ngcontent-%COMP%]{grid-template-columns:1fr}}.edit-form[_ngcontent-%COMP%] .config-section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem}.edit-form[_ngcontent-%COMP%] .config-section[_ngcontent-%COMP%] .dest-config-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center}.edit-form[_ngcontent-%COMP%] .form-footer[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem;padding-top:1.5rem;border-top:1px solid var(--base-3)}.selected-backend[_ngcontent-%COMP%]{margin-bottom:.5rem}.loading-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem;align-items:center;padding:4rem}.loading-list[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{text-align:center}"]})};
2
2
  export{R as default};
@@ -0,0 +1 @@
1
+ import {ShipTable as ot}from'./chunk-B52v_pjw.js';import'./chunk-BTgf5lfZ.js';import {T,ab as C,a6 as be,a5 as g,e as ee,b as I1,N as Nt,G as Ge,z as za,ai as m,aj as l,at as h,H as qu,h as hw,v as v$1,_ as _t,aH as m$1,b2 as m$2,Q as Qi,n as nC,$ as $l,f as aT,V as Vg,p as cm,C as CE,au as jg,av as rC,i as cT,A as yg,a3 as KC,Y as Yg,x as am,o as oC,U as UC,j as vg,l as vT,r as kd,k as iC,O as Od,a1 as dT,a2 as fT,w as jC,aM as ob,J as om,aN as ab,aR as sb}from'./main-VVQP2YE7.js';import {d}from'./chunk-B8uF0dom.js';import {$}from'./chunk-Box6Lckh.js';import {U}from'./chunk-DqIU7ViF.js';var de=()=>["/"],Se=(l,n)=>n.Version;function ce(l,n){l&1&&(Qi(0,"div",11),vg(1,"sh-progress-bar",19),Qi(2,"p"),nC(3,4),$l()());}function Ce(l,n){l&1&&(Qi(0,"div",12)(1,"p"),nC(2,5),$l()());}function me(l,n){if(l&1){let e=vT();Qi(0,"tr",26),Vg("click",function(i){let r=kd(e).$implicit,S=iC(2);return Od(S.toggleSelected(r.Version,i))}),Qi(1,"td")(2,"sh-checkbox",22),Vg("click",function(i){let r=kd(e).$implicit,S=iC(2);return Od(S.toggleSelected(r.Version,i))}),$l()(),Qi(3,"td"),jC(4),$l(),Qi(5,"td"),jC(6),ob(7,"relativeTime"),$l(),Qi(8,"td"),jC(9),ob(10,"relativeTime"),$l(),Qi(11,"td"),jC(12),ob(13,"bytes"),$l(),Qi(14,"td"),jC(15),$l()();}if(l&2){let e=n.$implicit;CE(2),yg("checked",e.Selected),CE(2),om(e.Version),CE(2),om(ab(7,6,e.Time,true)),CE(3),om(ab(10,9,e.Time,false)),CE(3),om(sb(13,12,e.FileSizes)),CE(3),om(e.FileCount);}}function pe(l,n){if(l&1){let e=vT();Qi(0,"sh-table",20),cm("sortByColumnChange",function(i){kd(e);let r=iC();return UC(r.sortByColumn,i)||(r.sortByColumn=i),Od(i)}),Qi(1,"tr",21)(2,"th")(3,"sh-checkbox",22),Vg("click",function(){kd(e);let i=iC();return Od(i.toggleSelect())}),$l()(),Qi(4,"th",23),nC(5,6),$l(),Qi(6,"th",23),nC(7,7),$l(),Qi(8,"th",23),nC(9,8),$l(),Qi(10,"th",24),nC(11,9),$l(),Qi(12,"th",25),nC(13,10),$l()(),dT(14,me,16,14,"tr",null,Se),$l();}if(l&2){let e=iC();yg("data",e.versions())("loading",e.isLoading()),am("sortByColumn",e.sortByColumn),CE(3),Yg("indeterminate",e.indeterminate()),yg("checked",e.allSelected()),CE(11),fT(e.versions());}}var v=class l$1{#e=T(C);#n=T(be);#t=T(g);#i=T(ee);id=I1.required();backup=Nt(()=>{this.#t.backups();return this.#t.getBackupById(this.id())});versionsResource=$({params:()=>({id:this.id()}),stream:({params:n})=>this.#e.postApiV2BackupListFilesets({requestBody:{BackupId:n.id}})});isLoading=Nt(()=>this.versionsResource.isLoading());isDeleting=Ge(false);performCompact=Ge(true);versions=Ge([]);constructor(){za(()=>{let n=this.versionsResource.value();if(n){let e=(n.Data??[]).slice().sort((t,i)=>t.Time<i.Time?1:t.Time>i.Time?-1:0);this.versions.set(e.map(t=>m(l({},t),{Selected:false})));}});}selectedItems=Nt(()=>this.versions().filter(n=>n.Selected));allSelected=Nt(()=>this.selectedItems().length===this.versions().length&&this.versions().length>0);noneSelected=Nt(()=>this.selectedItems().length===0);indeterminate=Nt(()=>this.selectedItems().length>0&&!this.allSelected());sortByColumn=Ge("version");toggleSelected(n,e){e?.stopPropagation(),this.versions.update(t=>t.map(i=>i.Version===n?m(l({},i),{Selected:!i.Selected}):i));}toggleSelect(){this.allSelected()?this.selectNone():this.selectAll();}selectAll(){this.versions.update(n=>n.map(e=>m(l({},e),{Selected:true})));}selectNone(){this.versions.update(n=>n.map(e=>m(l({},e),{Selected:false})));}deleteVersions(){let n=this.selectedItems();if(n.length===0)return;let e=n.length,t=n.map(i=>i.Version);this.#n.open(h,{data:{title:$localize`Confirm delete`,message:$localize`Are you sure you want to delete ${e} version(s)?`,confirmText:$localize`Delete versions`,cancelText:$localize`Cancel`},closed:i=>{i&&(this.isDeleting.set(true),this.#e.postApiV2BackupDeleteVersions({requestBody:{BackupId:this.id(),Versions:t,SuppressCompact:!this.performCompact()}}).pipe(qu(()=>this.isDeleting.set(false))).subscribe({next:()=>{this.#i.navigate(["/"]);}}));}});}static \u0275fac=function(e){return new(e||l$1)};static \u0275cmp=hw({type:l$1,selectors:[["app-delete-versions"]],inputs:{id:[1,"id"]},decls:13,vars:11,consts:()=>{let n;n=$localize`Delete versions from ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let e;e=$localize`Cancel`;let t;t=$localize`{VAR_PLURAL, plural, =1 {1 version} other {{INTERPOLATION} versions}}`,t=oC(t,{INTERPOLATION:"\uFFFD1\uFFFD",VAR_PLURAL:"\uFFFD0\uFFFD"});let i;i=$localize` Delete ${t}:ICU@@85461926550041466: `;let r;r=$localize`Compact after deletion`;let S;S=$localize`Fetching versions from destination...`;let $;$=$localize`No versions found for this backup.`;let b;b=$localize`Version`;let B;B=$localize`Timestamp`;let k;k=$localize`When`;let G;G=$localize`Size`;let x;return x=$localize`Files`,[n,e,i,r,S,$,b,B,k,G,x,[1,"loading-state"],[1,"empty-state"],[1,"type-b",3,"data","loading","sortByColumn"],[1,"actions"],["shButton","",3,"routerLink","disabled"],["shButton","",1,"raised","error",3,"click","disabled"],[1,"sub-actions"],[1,"primary","raised",3,"checkedChange","checked"],[1,"primary","indeterminate"],[1,"type-b",3,"sortByColumnChange","data","loading","sortByColumn"],["thead",""],[1,"primary","raised",3,"click","checked"],["shSort","version"],["shSort","size"],["shSort","files"],[3,"click"]]},template:function(e,t){e&1&&(Qi(0,"h3"),nC(1,0),$l(),aT(2,ce,4,0,"div",11)(3,Ce,3,0,"div",12)(4,pe,16,6,"sh-table",13),Qi(5,"div",14)(6,"button",15),nC(7,1),$l(),Qi(8,"button",16),Vg("click",function(){return t.deleteVersions()}),nC(9,2),$l()(),Qi(10,"div",17)(11,"sh-checkbox",18),cm("checkedChange",function(r){return UC(t.performCompact,r)||(t.performCompact=r),r}),nC(12,3),$l()()),e&2&&(CE(),jg(t.backup()?.Backup?.Name),rC(1),CE(),cT(t.isLoading()?2:t.versions().length===0?3:4),CE(4),yg("routerLink",KC(10,de))("disabled",t.isDeleting()),CE(2),Yg("loading",t.isDeleting()),yg("disabled",t.isDeleting()||t.selectedItems().length===0||t.isLoading()),CE(),jg(t.selectedItems().length)(t.selectedItems().length),rC(9),CE(2),am("checked",t.performCompact));},dependencies:[v$1,U,d,ot,_t,m$1,m$2],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;padding:2.5rem;max-width:43.75rem}h3[_ngcontent-%COMP%]{font:var(--title-30);margin:0}sh-table[_ngcontent-%COMP%]{padding:2rem 0}.loading-state[_ngcontent-%COMP%], .empty-state[_ngcontent-%COMP%]{padding:2rem 0;display:flex;flex-direction:column;gap:1rem}.actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;gap:.5rem;padding-top:2rem}.sub-actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;gap:.5rem;padding-top:.5rem;padding-bottom:2rem}"]})};export{v as default};
@@ -1,3 +1,3 @@
1
- import {OptionsListComponent as Oe}from'./chunk-Dgns65Zu.js';import {e as ee$1}from'./chunk-B0RBkC1E.js';import'./chunk-BB1pOOUx.js';import'./chunk-DN6f5jXR.js';import'./chunk-3RXp81pP.js';import {k as ke,j as jt}from'./chunk-ByhuT4BS.js';import'./chunk-C4kBXz3C.js';import'./chunk-Dh6x3lXP.js';import'./chunk-DD_QfWih.js';import'./chunk-khm9J_G0.js';import'./chunk-wyNyzSXi.js';import'./chunk-CegwkGVu.js';import {N as Nt$2}from'./chunk-CT9ziigM.js';import'./chunk-D5lj-fQk.js';import'./chunk-D6aNT_wo.js';import {c as c$1}from'./chunk-OLi7f6y7.js';import'./chunk-B2TXzbpy.js';import {T,ab as C,e as ee,aw as W,aW as G,aX as y,m,N as Nt$1,U as Ue,G as Ga,d as dw,_ as _t,v,f as N,j as mg,Q as Qi,O as Og,P as Pg,H as Hl,o as oT,D as DE,i as iT,aD as zC,aY as x,aZ as ee$2,k as gT,p as DD,X as XT,s as sm,S as Sd,n as nC,l as HC,x as xd,F as Fg,z as gg,a3 as QC,y as TD,w as im,I as Qg,au as Lg,av as eC}from'./main-KFKZO6SJ.js';import'./chunk-DPNAj9Vc.js';import {d}from'./chunk-CRAg6SRo.js';import {F as Fe}from'./chunk-DuIUmwWN.js';import {j as jn,B as Bn,T as Tn,Z as Ze,R as Rn,P as Pn,G as Gn,g as gn,h as hn}from'./chunk-DipTNkHN.js';import {a as at}from'./chunk-Fw6nFDZK.js';import'./chunk-Ca1C9pJ0.js';import'./chunk-C-NgIZiF.js';import {L}from'./chunk-C7pjkqKB.js';import'./chunk-PVmXLw9b.js';var I=class m{#t=new Map;saveState(e){let t=x();return this.#t.set(t,e),t}getState(e){return this.#t.get(e)}static \u0275fac=function(t){return new(t||m)};static \u0275prov=ee$2({token:m,factory:m.\u0275fac,providedIn:"root"})};var Tt=()=>["backup"];function ft(m,e){m&1&&mg(0,"sh-progress-bar",10);}function Nt(m,e){if(m&1){let t=gT();Qi(0,"form",11)(1,"sh-select",12)(2,"label",13),Og(3,1),mg(4,"sh-icon",14),Pg(),Hl(),mg(5,"input",15),DD(),Hl(),Qi(6,"sh-form-field")(7,"label",16),Og(8,2),mg(9,"sh-icon",17),Pg(),Hl(),mg(10,"textarea",18),DD(),Hl(),Qi(11,"sh-form-field")(12,"label",19),Og(13,3),mg(14,"sh-icon",20),Pg(),Hl(),mg(15,"textarea",21),DD(),Hl()(),Qi(16,"sh-divider"),XT(17,4),Hl(),Qi(18,"form",11)(19,"sh-form-field")(20,"label",22),Og(21,5),mg(22,"sh-icon",23),Pg(),Hl(),mg(23,"input",24),DD(),Hl(),Qi(24,"sh-form-field")(25,"label",25),Og(26,6),mg(27,"sh-icon",26),Pg(),Hl(),mg(28,"input",27),DD(),Hl(),Qi(29,"app-filters",28),sm("filtersChange",function(i){Sd(t);let s=nC();return HC(s.filters,i)||(s.filters=i),xd(i)}),Fg("filtersChange",function(i){Sd(t);let s=nC();return xd(s.updateFilters(i))}),Hl()(),Qi(30,"app-options-list",29),sm("optionsChange",function(i){Sd(t);let s=nC();return HC(s.settings,i)||(s.settings=i),xd(i)}),Hl(),Qi(31,"div",30)(32,"button",31),Fg("click",function(){Sd(t);let i=nC();return xd(i.submit())}),Og(33,7),mg(34,"sh-icon"),Pg(),Hl()();}if(m&2){let t=nC();gg("formGroup",t.baseCmdForm),DE(),gg("options",t.commandOptions()??QC(11,Tt))("inlineSearch",true),DE(4),TD(),DE(5),TD(),DE(5),TD(),DE(3),gg("formGroup",t.standardFields),DE(5),TD(),DE(5),TD(),DE(),im("filters",t.filters),gg("osType",t.osType()??""),DE(),im("options",t.settings),gg("hasFreeTextSettings",true),DE(2),Qg("loading",t.isSubmitting()),DE(2),Lg(t.baseCmdForm.value.command),eC(33);}}var c=new jn,$=class m$1{#t=T(ke);#n=T(C);#o=T(ee);#e=T(W);#a=T(G);#s=T(y);#i=T(I);#r=T(m);osType=Nt$1(()=>this.#r.systemInfo()?.OSType);#l=L(this.#e.params);commandOptions=L(this.#a.getApiV1Commandline());isSubmitting=Ue(false);optionsFields=this.#t.optionsFields;standardFields=c.group({"backup-id":c.control(""),"backup-name":c.control(""),dbpath:c.control(""),filters:c.array([])});baseCmdForm=c.group({command:c.control("backup"),targetUrl:c.control(""),arguments:c.control("")});finishedLoading=this.#t.finishedLoading;backupId=this.#t.backupId;filters=Ue([]);settings=this.#t.settings;updateFilters(e){this.standardFields.controls.filters.clear(),e.forEach(t=>this.standardFields.controls.filters.push(c.control(t))),this.filters.set(e);}#m=Ga(()=>{let e=this.#l()?.id;this.#t.backupId.set(e),this.getBackup(e);});getBackup(e){this.#n.getApiV1BackupById({id:e}).subscribe({next:t=>{this.#t.mapScheduleToForm(t.Schedule??null),t.Backup&&(this.#t.mapGeneralToForm(t.Backup),this.mapStandardFieldsToForm(t.Backup),this.mapBaseCmdToForm(t.Backup),this.#t.mapOptionsToForms(t.Backup,true)),this.applyStateFromUrl(),this.#t.finishedLoading.set(true);}});}mapStandardFieldsToForm(e){if(this.standardFields.patchValue({dbpath:e.DBPath,"backup-id":e.ID,"backup-name":e.Name}),this.standardFields.controls.filters.clear(),e.Filters&&e.Filters.length){let t=e.Filters.map(n=>`${n.Include?"":"-"}${n.Expression}`);t.forEach(n=>{this.standardFields.controls.filters.push(c.control(n));}),this.filters.set(t);}else this.filters.set([]);}submit(){this.#s.resumeDialogCheck(()=>this.#c());}#c(){this.isSubmitting.set(true);let e=this.updateUrl(),t=this.baseCmdForm.value,n=t.targetUrl??"",i=(t.arguments??"").split(`
1
+ import {OptionsListComponent as Oe}from'./chunk-CZoVeRAG.js';import {e as ee$1}from'./chunk-C4GeR7BF.js';import'./chunk-CUaRQ2FJ.js';import'./chunk-aOMoAKYY.js';import'./chunk-BEhUV7oX.js';import {k as ke,j as jt}from'./chunk-kU0H989B.js';import'./chunk-C80zvTbO.js';import'./chunk-Cjb79u3p.js';import'./chunk-DJJ8GbYi.js';import'./chunk-DUYvFN8m.js';import'./chunk-BpRWdcC8.js';import'./chunk-ihUnHtR7.js';import {N as Nt$2}from'./chunk-Bb6BmVO4.js';import'./chunk-DmDqcC4A.js';import'./chunk-CAwTsBqQ.js';import {c as c$1}from'./chunk-B53Wj4F9.js';import'./chunk-BTgf5lfZ.js';import {T,ab as C,e as ee,aw as W,aW as G,aX as y,m,N as Nt$1,G as Ge,z as za,h as hw,_ as _t,v,d as N,j as vg,Q as Qi,L as Lg,F as Fg,$ as $l,f as aT,C as CE,i as cT,aD as YC,aY as x,aZ as ee$2,l as vT,s as CD,n as nC,p as cm,r as kd,k as iC,U as UC,O as Od,V as Vg,A as yg,a3 as KC,y as _D,x as am,Y as Yg,au as jg,av as rC}from'./main-VVQP2YE7.js';import'./chunk-Bja52qI7.js';import {d}from'./chunk-B8uF0dom.js';import {F as Fe}from'./chunk-B9maI7Xa.js';import {j as jn,B as Bn,T as Tn,Z as Ze,R as Rn,P as Pn,G as Gn,g as gn,h as hn}from'./chunk-BO2GlieG.js';import {a as at}from'./chunk-CKnRcyHZ.js';import'./chunk-CwKy8pxa.js';import'./chunk-BVEyeg9y.js';import {L}from'./chunk-Box6Lckh.js';import'./chunk-DqIU7ViF.js';var I=class m{#t=new Map;saveState(e){let t=x();return this.#t.set(t,e),t}getState(e){return this.#t.get(e)}static \u0275fac=function(t){return new(t||m)};static \u0275prov=ee$2({token:m,factory:m.\u0275fac,providedIn:"root"})};var Tt=()=>["backup"];function ft(m,e){m&1&&vg(0,"sh-progress-bar",10);}function Nt(m,e){if(m&1){let t=vT();Qi(0,"form",11)(1,"sh-select",12)(2,"label",13),Lg(3,1),vg(4,"sh-icon",14),Fg(),$l(),vg(5,"input",15),CD(),$l(),Qi(6,"sh-form-field")(7,"label",16),Lg(8,2),vg(9,"sh-icon",17),Fg(),$l(),vg(10,"textarea",18),CD(),$l(),Qi(11,"sh-form-field")(12,"label",19),Lg(13,3),vg(14,"sh-icon",20),Fg(),$l(),vg(15,"textarea",21),CD(),$l()(),Qi(16,"sh-divider"),nC(17,4),$l(),Qi(18,"form",11)(19,"sh-form-field")(20,"label",22),Lg(21,5),vg(22,"sh-icon",23),Fg(),$l(),vg(23,"input",24),CD(),$l(),Qi(24,"sh-form-field")(25,"label",25),Lg(26,6),vg(27,"sh-icon",26),Fg(),$l(),vg(28,"input",27),CD(),$l(),Qi(29,"app-filters",28),cm("filtersChange",function(i){kd(t);let s=iC();return UC(s.filters,i)||(s.filters=i),Od(i)}),Vg("filtersChange",function(i){kd(t);let s=iC();return Od(s.updateFilters(i))}),$l()(),Qi(30,"app-options-list",29),cm("optionsChange",function(i){kd(t);let s=iC();return UC(s.settings,i)||(s.settings=i),Od(i)}),$l(),Qi(31,"div",30)(32,"button",31),Vg("click",function(){kd(t);let i=iC();return Od(i.submit())}),Lg(33,7),vg(34,"sh-icon"),Fg(),$l()();}if(m&2){let t=iC();yg("formGroup",t.baseCmdForm),CE(),yg("options",t.commandOptions()??KC(11,Tt))("inlineSearch",true),CE(4),_D(),CE(5),_D(),CE(5),_D(),CE(3),yg("formGroup",t.standardFields),CE(5),_D(),CE(5),_D(),CE(),am("filters",t.filters),yg("osType",t.osType()??""),CE(),am("options",t.settings),yg("hasFreeTextSettings",true),CE(2),Yg("loading",t.isSubmitting()),CE(2),jg(t.baseCmdForm.value.command),rC(33);}}var c=new jn,$=class m$1{#t=T(ke);#n=T(C);#o=T(ee);#e=T(W);#a=T(G);#s=T(y);#i=T(I);#r=T(m);osType=Nt$1(()=>this.#r.systemInfo()?.OSType);#l=L(this.#e.params);commandOptions=L(this.#a.getApiV1Commandline());isSubmitting=Ge(false);optionsFields=this.#t.optionsFields;standardFields=c.group({"backup-id":c.control(""),"backup-name":c.control(""),dbpath:c.control(""),filters:c.array([])});baseCmdForm=c.group({command:c.control("backup"),targetUrl:c.control(""),arguments:c.control("")});finishedLoading=this.#t.finishedLoading;backupId=this.#t.backupId;filters=Ge([]);settings=this.#t.settings;updateFilters(e){this.standardFields.controls.filters.clear(),e.forEach(t=>this.standardFields.controls.filters.push(c.control(t))),this.filters.set(e);}#m=za(()=>{let e=this.#l()?.id;this.#t.backupId.set(e),this.getBackup(e);});getBackup(e){this.#n.getApiV1BackupById({id:e}).subscribe({next:t=>{this.#t.mapScheduleToForm(t.Schedule??null),t.Backup&&(this.#t.mapGeneralToForm(t.Backup),this.mapStandardFieldsToForm(t.Backup),this.mapBaseCmdToForm(t.Backup),this.#t.mapOptionsToForms(t.Backup,true)),this.applyStateFromUrl(),this.#t.finishedLoading.set(true);}});}mapStandardFieldsToForm(e){if(this.standardFields.patchValue({dbpath:e.DBPath,"backup-id":e.ID,"backup-name":e.Name}),this.standardFields.controls.filters.clear(),e.Filters&&e.Filters.length){let t=e.Filters.map(n=>`${n.Include?"":"-"}${n.Expression}`);t.forEach(n=>{this.standardFields.controls.filters.push(c.control(n));}),this.filters.set(t);}else this.filters.set([]);}submit(){this.#s.resumeDialogCheck(()=>this.#c());}#c(){this.isSubmitting.set(true);let e=this.updateUrl(),t=this.baseCmdForm.value,n=t.targetUrl??"",i=(t.arguments??"").split(`
2
2
  `)??[],s=[n,...i].filter(o=>o.length>0),g=this.standardFields.value,N=g.filters??[],E=[t.command,...s,`--backup-name=${g["backup-name"]}`,`--dbpath=${g.dbpath}`,`--backup-id=${g["backup-id"]}`,...N.filter(o=>o).map(o=>o.startsWith("-")?`--exclude=${o?.slice(1)}`:`--include=${o}`),...this.#t.mapFormsToSettings(["backup-id","backup-name","dbpath"]).map(o=>`${o.Name.startsWith("--")?"":"--"}${o.Name}=${o.Value}`),"--disable-module=console-password-input"];this.#n.postApiV1Commandline({requestBody:E}).subscribe({next:o=>{o.Status==="OK"&&this.#o.navigate(["backup",this.backupId(),"commandline",o.ID],{queryParams:{state:e}});},error:()=>{this.isSubmitting.set(false);}});}mapBaseCmdToForm(e){let t=e.TargetURL??null;t&&this.baseCmdForm.patchValue({targetUrl:t??"",arguments:e.Sources?.join(`
3
- `)??""});}updateUrl(){let e=this.baseCmdForm.value,t=this.standardFields.value,n=t.filters??[],i=this.settings(),s=this.#i.saveState({command:e.command,targetUrl:e.targetUrl,arguments:e.arguments,backupId:t["backup-id"],backupName:t["backup-name"],dbpath:t.dbpath,filters:n,options:i});return this.#o.navigate([],{relativeTo:this.#e,queryParams:{state:s},replaceUrl:true}),s}applyStateFromUrl(){let t=this.#e.snapshot.queryParams.state;if(!t)return;let n=this.#i.getState(t);n&&(this.baseCmdForm.patchValue({command:n.command,targetUrl:n.targetUrl,arguments:n.arguments}),this.standardFields.patchValue({"backup-id":n.backupId,"backup-name":n.backupName,dbpath:n.dbpath}),n.filters&&(this.standardFields.controls.filters.clear(),n.filters.forEach(i=>{this.standardFields.controls.filters.push(c.control(i));}),this.filters.set(n.filters)),n.options&&n.options.length>0&&this.settings.set(n.options));}static \u0275fac=function(t){return new(t||m$1)};static \u0275cmp=dw({type:m$1,selectors:[["app-commandline"]],features:[zC([ke])],decls:8,vars:1,consts:()=>{let e;e=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SH_ICON:arrow-left${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SH_ICON: Back `;let t;t=$localize` Command ${"\uFFFD#4\uFFFD"}:START_TAG_SH_ICON:question${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SH_ICON:`;let n;n=$localize` TargetUrl ${"\uFFFD#9\uFFFD"}:START_TAG_SH_ICON:question${"\uFFFD/#9\uFFFD"}:CLOSE_TAG_SH_ICON:`;let i;i=$localize` Commandline Arguments ${"\uFFFD#14\uFFFD"}:START_TAG_SH_ICON:question${"\uFFFD/#14\uFFFD"}:CLOSE_TAG_SH_ICON:`;let s;s=$localize`Advanced options`;let g;g=$localize` Backup ID ${"\uFFFD#22\uFFFD"}:START_TAG_SH_ICON:question${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SH_ICON:`;let N;N=$localize` Backup Name ${"\uFFFD#27\uFFFD"}:START_TAG_SH_ICON:question${"\uFFFD/#27\uFFFD"}:CLOSE_TAG_SH_ICON:`;let E;return E=$localize`${"\uFFFD#34\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#34\uFFFD"}:CLOSE_TAG_SH_ICON: Run "${"\uFFFD0\uFFFD"}:INTERPOLATION:" command now `,[e,t,n,i,s,g,N,E,[1,"back"],["type","button","shButton","","routerLink","/",1,"small"],[1,"indeterminate","primary"],[3,"formGroup"],["placeholder","Select a command...",3,"options","inlineSearch"],["for","command"],["shTooltip","Choose the command to execute"],["type","text","id","command","formControlName","command"],["for","targetUrl"],["shTooltip","Enter the URL of the backup target"],["id","targetUrl","autocomplete","off","formControlName","targetUrl"],["for","arguments"],["shTooltip","Enter one argument per line without quotes (e.g., *.txt)"],["id","arguments","autocomplete","off","rows","5","formControlName","arguments","placeholder","Enter one argument per line without quotes (e.g., *.txt)",1,"arguments"],["for","backup-id"],["shTooltip","The ID of the backup configuration this run belongs to (can be empty)"],["id","backup-id","formControlName","backup-id"],["for","backup-name"],["shTooltip","The optional name of the backup"],["id","backup-name","formControlName","backup-name"],[3,"filtersChange","filters","osType"],[3,"optionsChange","options","hasFreeTextSettings"],[1,"form-actions"],["shButton","",1,"raised","primary",3,"click"]]},template:function(t,n){t&1&&(mg(0,"app-status-bar"),Qi(1,"section")(2,"div",8)(3,"button",9),Og(4,0),mg(5,"sh-icon"),Pg(),Hl()(),oT(6,ft,1,0,"sh-progress-bar",10)(7,Nt,35,12),Hl()),t&2&&(DE(6),iT(n.finishedLoading()?7:6));},dependencies:[Bn,Tn,Ze,Rn,Pn,ee$1,Oe,jt,Gn,gn,hn,_t,Fe,v,c$1,Nt$2,d,N,at],styles:["[_nghost-%COMP%]{display:block}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:100%;max-width:40rem;padding:2.5rem;gap:1.25rem}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end}.row-inputs[_ngcontent-%COMP%]{display:flex;align-items:flex-end;gap:.5rem}.row-inputs[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{flex:1 0}.arguments[_ngcontent-%COMP%]{min-height:6rem;white-space:pre}"]})};export{$ as default};
3
+ `)??""});}updateUrl(){let e=this.baseCmdForm.value,t=this.standardFields.value,n=t.filters??[],i=this.settings(),s=this.#i.saveState({command:e.command,targetUrl:e.targetUrl,arguments:e.arguments,backupId:t["backup-id"],backupName:t["backup-name"],dbpath:t.dbpath,filters:n,options:i});return this.#o.navigate([],{relativeTo:this.#e,queryParams:{state:s},replaceUrl:true}),s}applyStateFromUrl(){let t=this.#e.snapshot.queryParams.state;if(!t)return;let n=this.#i.getState(t);n&&(this.baseCmdForm.patchValue({command:n.command,targetUrl:n.targetUrl,arguments:n.arguments}),this.standardFields.patchValue({"backup-id":n.backupId,"backup-name":n.backupName,dbpath:n.dbpath}),n.filters&&(this.standardFields.controls.filters.clear(),n.filters.forEach(i=>{this.standardFields.controls.filters.push(c.control(i));}),this.filters.set(n.filters)),n.options&&n.options.length>0&&this.settings.set(n.options));}static \u0275fac=function(t){return new(t||m$1)};static \u0275cmp=hw({type:m$1,selectors:[["app-commandline"]],features:[YC([ke])],decls:8,vars:1,consts:()=>{let e;e=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SH_ICON:arrow-left${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SH_ICON: Back `;let t;t=$localize` Command ${"\uFFFD#4\uFFFD"}:START_TAG_SH_ICON:question${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SH_ICON:`;let n;n=$localize` TargetUrl ${"\uFFFD#9\uFFFD"}:START_TAG_SH_ICON:question${"\uFFFD/#9\uFFFD"}:CLOSE_TAG_SH_ICON:`;let i;i=$localize` Commandline Arguments ${"\uFFFD#14\uFFFD"}:START_TAG_SH_ICON:question${"\uFFFD/#14\uFFFD"}:CLOSE_TAG_SH_ICON:`;let s;s=$localize`Advanced options`;let g;g=$localize` Backup ID ${"\uFFFD#22\uFFFD"}:START_TAG_SH_ICON:question${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SH_ICON:`;let N;N=$localize` Backup Name ${"\uFFFD#27\uFFFD"}:START_TAG_SH_ICON:question${"\uFFFD/#27\uFFFD"}:CLOSE_TAG_SH_ICON:`;let E;return E=$localize`${"\uFFFD#34\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#34\uFFFD"}:CLOSE_TAG_SH_ICON: Run "${"\uFFFD0\uFFFD"}:INTERPOLATION:" command now `,[e,t,n,i,s,g,N,E,[1,"back"],["type","button","shButton","","routerLink","/",1,"small"],[1,"indeterminate","primary"],[3,"formGroup"],["placeholder","Select a command...",3,"options","inlineSearch"],["for","command"],["shTooltip","Choose the command to execute"],["type","text","id","command","formControlName","command"],["for","targetUrl"],["shTooltip","Enter the URL of the backup target"],["id","targetUrl","autocomplete","off","formControlName","targetUrl"],["for","arguments"],["shTooltip","Enter one argument per line without quotes (e.g., *.txt)"],["id","arguments","autocomplete","off","rows","5","formControlName","arguments","placeholder","Enter one argument per line without quotes (e.g., *.txt)",1,"arguments"],["for","backup-id"],["shTooltip","The ID of the backup configuration this run belongs to (can be empty)"],["id","backup-id","formControlName","backup-id"],["for","backup-name"],["shTooltip","The optional name of the backup"],["id","backup-name","formControlName","backup-name"],[3,"filtersChange","filters","osType"],[3,"optionsChange","options","hasFreeTextSettings"],[1,"form-actions"],["shButton","",1,"raised","primary",3,"click"]]},template:function(t,n){t&1&&(vg(0,"app-status-bar"),Qi(1,"section")(2,"div",8)(3,"button",9),Lg(4,0),vg(5,"sh-icon"),Fg(),$l()(),aT(6,ft,1,0,"sh-progress-bar",10)(7,Nt,35,12),$l()),t&2&&(CE(6),cT(n.finishedLoading()?7:6));},dependencies:[Bn,Tn,Ze,Rn,Pn,ee$1,Oe,jt,Gn,gn,hn,_t,Fe,v,c$1,Nt$2,d,N,at],styles:["[_nghost-%COMP%]{display:block}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:100%;max-width:40rem;padding:2.5rem;gap:1.25rem}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end}.row-inputs[_ngcontent-%COMP%]{display:flex;align-items:flex-end;gap:.5rem}.row-inputs[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{flex:1 0}.arguments[_ngcontent-%COMP%]{min-height:6rem;white-space:pre}"]})};export{$ as default};
@@ -0,0 +1,2 @@
1
+ import {d}from'./chunk-BS8PXjJJ.js';import'./chunk-CZoVeRAG.js';import {t as tn,Q as Qt,l as lt,o as on,k as ke}from'./chunk-kU0H989B.js';import'./chunk-C80zvTbO.js';import'./chunk-Cjb79u3p.js';import'./chunk-DJJ8GbYi.js';import'./chunk-DUYvFN8m.js';import'./chunk-BpRWdcC8.js';import {V,G}from'./chunk-ihUnHtR7.js';import'./chunk-Bb6BmVO4.js';import {v as ve$1}from'./chunk-DmDqcC4A.js';import'./chunk-CAwTsBqQ.js';import'./chunk-B53Wj4F9.js';import'./chunk-BTgf5lfZ.js';import {T,e as ee,aw as W,a6 as be,bF as ve,E as D1,G as Ge,N as Nt,at as h,h as hw,v,d as N,a0 as de,u as ue,l as vT,ak as um,Q as Qi,V as Vg,n as nC,$ as $l,f as aT,p as cm,r as kd,U as UC,O as Od,L as Lg,j as vg,F as Fg,al as WC,C as CE,i as cT,x as am,A as yg,o as oC,aD as YC,W as Wg,K as fC,k as iC,w as jC,aP as ql,aQ as Gl,ao as qC,s as CD,a3 as KC,y as _D}from'./main-VVQP2YE7.js';import'./chunk-Bja52qI7.js';import'./chunk-B8uF0dom.js';import {F as Fe$1}from'./chunk-B9maI7Xa.js';import {B as Bn,T as Tn,Z as Ze,R as Rn,P as Pn,J as Jt,a as Zt}from'./chunk-BO2GlieG.js';import'./chunk-CKnRcyHZ.js';import'./chunk-CwKy8pxa.js';import'./chunk-BVEyeg9y.js';import'./chunk-DqIU7ViF.js';import'./chunk-Box6Lckh.js';var Fe=["formRef"],De=["testUrl"],Ee=()=>({maxWidth:"700px",width:"100%"});function Oe(o,i){if(o&1){let e=vT();Qi(0,"button",24),Vg("click",function(){kd(e);let t=iC();return Od(t.openTargetUrlDialog())}),Lg(1,5),vg(2,"sh-icon"),Fg(),$l();}}function fe(o,i){if(o&1){let e=vT();Qi(0,"button",24),Vg("click",function(){kd(e);let t=iC(2);return Od(t.copyTargetUrl())}),Lg(1,7),vg(2,"sh-icon"),Fg(),$l();}}function he(o,i){if(o&1){let e=vT();Qi(0,"sh-menu")(1,"button",15)(2,"sh-icon"),jC(3,"dots-three-vertical"),$l()(),ql(4,25),Qi(5,"button",24),Vg("click",function(){kd(e);let t=iC();return Od(t.openTargetUrlDialog())}),Lg(6,6),vg(7,"sh-icon"),Fg(),$l(),aT(8,fe,3,0,"button",15),Gl(),$l();}if(o&2){iC();let e=qC(0);CE(8),cT(e?8:-1);}}function Pe(o,i){if(o&1){let e=vT();Qi(0,"app-destination-list-item",17)(1,"button",20),Vg("click",function(){kd(e);let t=iC();return Od(t.removeDestination())}),nC(2,8),$l()();}if(o&2){iC();let e=qC(12);yg("destination",e);}}function ye(o,i){if(o&1){let e=vT();Qi(0,"app-destination-list",26),Vg("setDestination",function(t){kd(e);let l=iC();return Od(l.setDestination(t))}),$l();}}function Ae(o,i){if(o&1){let e=vT();Qi(0,"app-single-destination",27),cm("targetUrlChange",function(t){kd(e);let l=iC();return UC(l.targetUrlModel,t)||(l.targetUrlModel=t),Od(t)}),$l();}if(o&2){let e=iC();am("targetUrl",e.targetUrlModel);}}function Me(o,i){o&1&&(Lg(0,4,1),vg(1,"sh-icon",22),Fg());}function Re(o,i){o&1&&(Lg(0,4,2),vg(1,"sh-icon"),Fg());}function Ue(o,i){if(o&1){let e=vT();Qi(0,"sh-dialog",28),cm("isOpenChange",function(t){kd(e);let l=iC();return UC(l.targetUrlDialogOpen,t)||(l.targetUrlDialogOpen=t),Od(t)}),Qi(1,"header",29)(2,"div",30)(3,"h2"),nC(4,9),$l(),Qi(5,"sh-alert",31),nC(6,10),$l()()(),Qi(7,"div",32)(8,"sh-form-field")(9,"textarea",33),cm("ngModelChange",function(t){kd(e);let l=iC();return UC(l.targetUrlCtrl,t)||(l.targetUrlCtrl=t),Od(t)}),$l(),CD(),$l()(),Qi(10,"footer",34)(11,"button",20),Vg("click",function(){kd(e);let t=iC();return Od(t.closeTargetUrlDialog(false))}),jC(12,"Cancel"),$l(),Qi(13,"button",35),Vg("click",function(){kd(e);let t=iC();return Od(t.closeTargetUrlDialog(true))}),Lg(14,11),vg(15,"sh-icon"),Fg(),$l()()();}if(o&2){let e=iC();am("isOpen",e.targetUrlDialogOpen),yg("options",KC(3,Ee)),CE(9),am("ngModel",e.targetUrlCtrl),_D();}}var w=class o{#i=T(ee);#o=T(W);#n=T(be);injector=T(ve);#e=T(d);formRef=D1.required("formRef");testUrlComponent=D1.required("testUrl");testSignal=this.#e.destinationTestSignal;targetUrlModel=this.#e.destinationTargetUrl;targetUrlCtrl=Ge(null);targetUrlInitial=Ge(null);targetUrlDialogOpen=Ge(false);toggleNewDestination=Ge(true);selectedDestinationType=Nt(()=>{let i=this.#e.destinationTargetUrl();return i?V(i):null});selectedDestinationTypeOption=Nt(()=>{let i=this.selectedDestinationType();return i?{key:i.customKey??i.key,customKey:i.customKey??null,displayName:i.displayName,description:i.description,sourceDescription:i.sourceDescription??null,icon:i.icon}:null});copyTargetUrl(){navigator.clipboard.writeText(this.#e.destinationTargetUrl()??"");}openTargetUrlDialog(){let i=this.#e.destinationTargetUrl();this.targetUrlCtrl.set(i),this.targetUrlInitial.set(i),this.targetUrlDialogOpen.set(true);}closeTargetUrlDialog(i=false){this.targetUrlDialogOpen.set(false);let e=this.targetUrlCtrl(),n=this.targetUrlInitial();!i||e===n||!e||this.#e.updateTargetUrl(e);}setDestination(i){let e=G(i??"");if(e){if(e.mapper.default){let n=e.mapper.default("");this.#e.updateTargetUrl(n);return}this.#e.updateTargetUrl(`${i}://`);}}removeDestination(){this.#e.updateTargetUrl(null);}goBack(){this.#i.navigate(["/"]);}next(){let i=this.testSignal();if(i===null){this.#n.open(h,{data:{title:$localize`Test destination`,message:$localize`You have not tested the destination yet. Do you want to test it now?`,confirmText:$localize`Test now`,cancelText:$localize`Skip test and continue`},closed:n=>{n?this.testUrlComponent()?.testDestination(false)?.then(t=>{t.action==="success"&&t.containsBackup?this.#t():this.#n.open(h,{data:{title:$localize`Test did not succeed`,message:t.errorMessage??$localize`Failed to test the destination.`,confirmText:$localize`OK`,cancelText:void 0}});}):this.#t();}});return}let e=typeof i=="string"?null:i;if(e?.action!=="success"||!e.containsBackup){this.#n.open(h,{data:{title:$localize`Test destination`,message:$localize`The destination has not been tested successfully. Are you sure you want to continue?`,confirmText:$localize`Edit destination`,cancelText:$localize`Yes, continue`},closed:n=>{n||this.#t();}});return}this.#t();}#t(){this.#i.navigate(["encryption"],{relativeTo:this.#o.parent});}static \u0275fac=function(e){return new(e||o)};static \u0275cmp=hw({type:o,selectors:[["app-import-destination-destination"]],viewQuery:function(e,n){e&1&&Wg(n.formRef,Fe,5)(n.testUrlComponent,De,5),e&2&&fC(2);},features:[YC([ke])],decls:25,vars:18,consts:()=>{let i;i=$localize`Backup destination`;let e;e=$localize`${"\uFFFD#19\uFFFD"}:START_TAG_SH_ICON:arrow-left${"\uFFFD/#19\uFFFD"}:CLOSE_TAG_SH_ICON: Go back `;let n;n=$localize`${"\uFFFD*22:1\uFFFD"}:START_BLOCK_IF:${"\uFFFD#1:1\uFFFD"}:START_TAG_SH_ICON:spinner${"[\uFFFD/#1:1\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_SH_ICON:${"\uFFFD/*22:1\uFFFD"}:CLOSE_BLOCK_IF:${"\uFFFD*23:2\uFFFD"}:START_BLOCK_ELSE:${"\uFFFD#1:2\uFFFD"}:START_TAG_SH_ICON_1:arrow-right${"[\uFFFD/#1:1\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_SH_ICON:${"\uFFFD/*23:2\uFFFD"}:CLOSE_BLOCK_ELSE: Continue `,n=oC(n);let t;t=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:link${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON: Set target URL `;let l;l=$localize`${"\uFFFD#7\uFFFD"}:START_TAG_SH_ICON:link${"\uFFFD/#7\uFFFD"}:CLOSE_TAG_SH_ICON: Edit target URL `;let g;g=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:copy${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON: Copy URL to clipboard `;let L;L=$localize`Change`;let b;b=$localize`Edit target URL`;let B;B=$localize`Be careful, this will overwrite everything you have in your destination.`;let G;return G=$localize` Override target URL ${"\uFFFD#15\uFFFD"}:START_TAG_SH_ICON:swap${"\uFFFD/#15\uFFFD"}:CLOSE_TAG_SH_ICON:`,[["formRef",""],["testUrl",""],i,e,n,t,l,g,L,b,B,G,[3,"submit"],[1,"title-30"],[1,"actions"],["shButton","","type","button",1,"small"],[3,"targetUrlChange","testSignalChange","targetUrl","testSignal","backupId","sourcePrefix","suppressErrorDialogs","askToCreate","testExpectation","readOnlyTest","moduleType"],[1,"current-destination",3,"destination"],[3,"targetUrl"],[1,"form-actions"],["shButton","","type","button",3,"click"],["shButton","","type","submit",1,"raised","primary",3,"disabled"],[1,"loader"],[3,"isOpen","options"],["shButton","","type","button",1,"small",3,"click"],["menu",""],[3,"setDestination"],[3,"targetUrlChange","targetUrl"],[3,"isOpenChange","isOpen","options"],["header",""],[1,"target-dialog-header"],[1,"warn"],["content",""],["id","targetUrl","autocomplete","off",3,"ngModelChange","ngModel"],["footer",""],["shButton","","type","submit",1,"raised","primary",3,"click"]]},template:function(e,n){if(e&1){let t=vT();um(0),Qi(1,"form",12,0),Vg("submit",function(){return n.next()}),Qi(3,"header")(4,"h3",13)(5,"span"),nC(6,2),$l(),Qi(7,"div",14),aT(8,Oe,3,0,"button",15)(9,he,9,1,"sh-menu"),$l()(),Qi(10,"app-test-url",16,1),cm("targetUrlChange",function(g){return kd(t),UC(n.targetUrlModel,g)||(n.targetUrlModel=g),Od(g)})("testSignalChange",function(g){return kd(t),UC(n.testSignal,g)||(n.testSignal=g),Od(g)}),$l(),um(12),aT(13,Pe,3,1,"app-destination-list-item",17),$l(),aT(14,ye,1,0,"app-destination-list"),aT(15,Ae,1,1,"app-single-destination",18),Qi(16,"div",19)(17,"button",20),Vg("click",function(){return n.goBack()}),Lg(18,3),vg(19,"sh-icon"),Fg(),$l(),Qi(20,"button",21),Lg(21,4),aT(22,Me,2,0,"sh-icon",22)(23,Re,2,0,"sh-icon"),Fg(),$l()()(),aT(24,Ue,16,4,"sh-dialog",23);}if(e&2){let t=WC(!!n.targetUrlModel());CE(8),cT(t?9:8),CE(2),am("targetUrl",n.targetUrlModel)("testSignal",n.testSignal),yg("backupId",null)("sourcePrefix",null)("suppressErrorDialogs",false)("askToCreate",false)("testExpectation","containsBackup")("readOnlyTest",true)("moduleType","Backend"),CE(2);let l=WC(n.selectedDestinationTypeOption());CE(),cT(l?13:-1),CE(),cT(t?-1:14),CE(),cT(t?15:-1),CE(5),yg("disabled",n.testSignal()=="testing"||!t),CE(2),cT(n.testSignal()=="testing"?22:23),CE(2),cT(n.targetUrlDialogOpen()?24:-1);}},dependencies:[tn,Qt,lt,Bn,Tn,Ze,Rn,Pn,Jt,Zt,v,Fe$1,ve$1,N,de,ue,on],styles:["[_nghost-%COMP%]{display:block;width:100%;max-width:40rem}header[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%], header[_ngcontent-%COMP%] sh-alert[_ngcontent-%COMP%]{width:100%}header[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;gap:.5rem}header[_ngcontent-%COMP%] p[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{cursor:pointer;text-decoration:underline}header[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{display:flex;gap:.5rem}pre[_ngcontent-%COMP%]{white-space:pre-wrap}.field-row[_ngcontent-%COMP%]{display:grid;align-items:flex-end;grid-template-columns:1fr 2.5rem;gap:.5rem}.field-row.single-field[_ngcontent-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}.clickable[_ngcontent-%COMP%]{cursor:pointer;color:var(--primary-8)}.most-common-destinations[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.most-common-destinations[_ngcontent-%COMP%] .tile[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border:1px solid var(--base-4);border-radius:var(--shape-3);box-shadow:var(--box-shadow-10);background-color:var(--base-2);cursor:pointer}.most-common-destinations[_ngcontent-%COMP%] .tile[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font:var(--paragraph-10);margin:0}[prefix].link[_ngcontent-%COMP%]{cursor:pointer;text-decoration:underline;color:var(--primary-8)}textarea[_ngcontent-%COMP%] ~ grammarly-extension[_ngcontent-%COMP%]{display:none}.target-dialog-header[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:.5rem}"]})};
2
+ export{w as default};
@@ -1,2 +1,2 @@
1
- import {o as oe$1,F as Fe}from'./chunk-DuIUmwWN.js';import {T,ad as br,bB as yD,bu as N,N as Nt,b as g1,af as m1,ac as h1,U as Ue,B as y1,G as Ga,b$ as oe,c0 as ae,bv as le,d as dw,f as N$1,k as gT,L as oC,Q as Qi,s as sm,S as Sd,l as HC,x as xd,F as Fg,Y as iC,o as oT,H as Hl,j as mg,w as im,z as gg,a3 as QC,D as DE,I as Qg,aC as hg,i as iT,$ as $g,K as lC,q as PC}from'./main-KFKZO6SJ.js';var X=["inputRef"],Z=["optionsRef"],ee=["*",[["","menu",""]]],te=["*","[menu]"],ie=()=>({closeOnButton:false,closeOnEsc:true});function ne(a,J){a&1&&(Qi(0,"sh-icon",5),PC(1,"caret-down"),Hl());}function se(a,J){a&1&&(Qi(0,"sh-icon",6),PC(1,"caret-right"),Hl());}var m=[],ve=(()=>{class a{constructor(){this.#i=T(br),this.#t=T(yD),this.#e=T(N),this.parentMenu=T(a,{optional:true,skipSelf:true}),this.isSubmenu=Nt(()=>this.parentMenu!==null),this.asMultiLayer=g1(false),this.openIndicator=g1(false),this.disabled=g1(false),this.customOptionElementSelectors=g1(["button"]),this.keepClickedOptionActive=g1(false),this.closeOnClick=g1(true),this.isOpen=m1(false),this.closed=h1(),this.searchable=g1(false),this.activeOptionIndex=Ue(-1),this.inputRef=y1("inputRef"),this.optionsRef=y1("optionsRef"),this.openMenusEffect=Ga(t=>{this.isOpen()&&m.push(this),t(()=>{let i=m.indexOf(this);i>-1&&m.splice(i,1);});}),this.options=oe(this.optionsRef,this.customOptionElementSelectors),this.optionsEl=Nt(()=>{let t=this.optionsRef()?.nativeElement;return t?this.options.signal().filter(i=>i.disabled?false:i.closest(".options")===t):[]}),this.inputValue=ae(this.inputRef),this.optionsId=le(),this.activeOptionId=Ue(void 0),this.abortController=null,this.optionsEffect=Ga(t=>{if(this.abortController!==null&&(this.abortController.abort(),this.abortController=null),!this.isOpen())return;if(this.searchable()&&this.#e.pause(),t(()=>{this.searchable()&&this.#e.resume();}),this.abortController=new AbortController,!this.searchable())this.#i.documentElement.addEventListener("keydown",this.keyDownEventListener,{signal:this.abortController.signal});else {let n=this.inputRef()?.nativeElement;n&&n.addEventListener("keydown",this.keyDownEventListener,{signal:this.abortController.signal});}let e=this.inputRef()?.nativeElement;e&&(queueMicrotask(()=>e.focus()),this.closeOnClick()||this.optionsRef()?.nativeElement?.addEventListener("click",s=>{let o=s.target,r=this.activeElements();if(!r.length){let c=this.optionsEl();this.activeElements.set(c),r=c;}let p=r.findIndex(c=>c===o);p>-1&&(this.activeOptionIndex.set(p),e.focus());}));}),this.keyDownEventListener=t=>{if(m.at(-1)!==this)return;let i=this.activeOptionIndex(),e=this.searchable();if(this.#e.matches(t,"menu.next"))t.preventDefault(),this.activeOptionIndex.set(this.nextActiveIndex(i));else if(this.#e.matches(t,"menu.prev"))t.preventDefault(),this.activeOptionIndex.set(this.prevActiveIndex(i));else if(this.#e.matches(t,"menu.open-submenu")){if(!e&&i>-1){let n=this.activeElements()[i];if(n.parentElement?.hasAttribute("trigger")){t.preventDefault();let o=new CustomEvent("ship-menu-open",{bubbles:true,cancelable:true,detail:{keyboard:true}});n.dispatchEvent(o);}}}else if(this.#e.matches(t,"menu.close-submenu"))!e&&this.isSubmenu()&&(t.preventDefault(),this.close("closed"));else if(this.#e.matches(t,"menu.select")){let n=t.key==="Enter",s=t.key===" "||t.key==="Spacebar";if((n||s&&!e)&&(t.preventDefault(),i>-1)){let o=this.activeElements()[i];if(o.parentElement?.hasAttribute("trigger")){let p=new CustomEvent("ship-menu-open",{bubbles:true,cancelable:true,detail:{keyboard:true}});o.dispatchEvent(p);}else o.click(),o.querySelector("sh-checkbox")||queueMicrotask(()=>this.close("active"));}}else if(t.key==="Tab"){let n=this.activeElements();if(!n.length){let s=this.optionsEl();this.activeElements.set(s),n=s;}t.shiftKey?i<=0?(t.preventDefault(),this.close("closed")):(t.preventDefault(),this.activeOptionIndex.set(this.prevActiveIndex(i))):i>=n.length-1?(t.preventDefault(),this.close("closed")):(t.preventDefault(),this.activeOptionIndex.set(this.nextActiveIndex(i)));}},this._lastElementList=[],this.activeElements=Ue([]),this.lastInputValue="",this.inputValueEffect=Ga(()=>{if(!this.searchable()){this.activeElements.set(this.optionsEl());return}let i=(this.inputValue()??"").toLowerCase();if(this.#n(),!i||i===""){let n=this.optionsEl();this.activeElements.set(n),this._lastElementList=n;for(let s=0;s<n.length;s++)this.#t.removeStyle(n[s],"order"),n[s].id||(n[s].id=`${this.optionsId}-option-${s}`),n[s].setAttribute("role","option");return}if(!i||i==="")return;let e=this._lastElementList.length&&i.length>this.lastInputValue.length?this._lastElementList:this.optionsEl();this.lastInputValue=i;for(let n=0;n<e.length;n++){let s=e[n],o=s.textContent?.toLowerCase()||"",r=this.#s(o,i);s.value=r;}e=e.filter(n=>n.value>0).sort((n,s)=>s.value-n.value);for(let n=0;n<e.length;n++)this.#t.setStyle(e[n],"order",n);this.activeElements.set(e),this._lastElementList=e;for(let n=0;n<e.length;n++)e[n].id||(e[n].id=`${this.optionsId}-option-${n}`),e[n].setAttribute("role","option");}),this.activeOptionIndexEffect=Ga(()=>{let t=this.activeElements(),i=this.activeOptionIndex();for(let e=0;e<t.length;e++)t[e].classList.remove("active"),t[e].removeAttribute("aria-selected");if(i>-1){let e=t[i];e.scrollIntoView({block:"center"}),e.classList.add("active"),e.setAttribute("aria-selected","true"),this.activeOptionId.set(e.id);}else this.activeOptionId.set(void 0);});}#i;#t;#e;toggleIsOpen(t){t.preventDefault(),t.stopPropagation(),!this.disabled()&&(this.isOpen()?this.close("fromPopover"):this.open());}open(){this.disabled()||(this.isOpen.set(true),this.searchable()&&setTimeout(()=>this.inputRef()?.nativeElement.focus()));}onShipMenuOpen(t){t.preventDefault(),t.stopPropagation(),this.open(),t.detail?.keyboard&&setTimeout(()=>{this.activeOptionIndex.set(0);},50);}#s(t,i){if(!i)return 0;let e=0,n=-1,s=0,o=true;for(let r=0;r<i.length;r++){let p=i[r];if(t.length>n+1&&t[n+1]===p)e+=r===0?100:150,n++,s++;else {let c=t.indexOf(p,n+1);if(r>0&&(o=false),c===-1)return 0;e+=100,n=c,s++;}}return o&&i.length===s&&(e+=1e3),e+=s*20,e}nextActiveIndex(t){let i=this.activeElements();if(!i.length){let n=this.optionsEl();this.activeElements.set(n),i=n;}if(t===-1||t===i.length-1)return 0;let e=t+1;return i[e].disabled?this.nextActiveIndex(e):e}prevActiveIndex(t){let i=this.activeElements();if(!i.length){let n=this.optionsEl();this.activeElements.set(n),i=n;}if(t===0||t===-1)return i.length-1;let e=t-1;return i[e].disabled?this.prevActiveIndex(e):e}close(t="closed",i){this.inputValue.set("");let e=this.inputRef()?.nativeElement;if(e&&(e.value=""),this.closeOnClick()&&((!this.keepClickedOptionActive()||t==="closed")&&this.#n(),this.isOpen.set(false),this.closed.emit(t==="active"),this.isSubmenu())){let n=this.parentMenu?.inputRef()?.nativeElement;n&&queueMicrotask(()=>n.focus());}}#n(){this.activeOptionIndex.set(-1);let t=this.optionsEl();for(let i=0;i<t.length;i++)t[i].classList.remove("active"),t[i].removeAttribute("aria-selected");}ngOnDestroy(){this.abortController&&(this.abortController.abort(),this.abortController=null);let t=m.indexOf(this);t>-1&&m.splice(t,1);}static{this.\u0275fac=function(i){return new(i||a)};}static{this.\u0275cmp=dw({type:a,selectors:[["sh-menu"]],viewQuery:function(i,e){i&1&&$g(e.inputRef,X,5)(e.optionsRef,Z,5),i&2&&lC(2);},hostVars:6,hostBindings:function(i,e){i&1&&Fg("ship-menu-open",function(s){return e.onShipMenuOpen(s)}),i&2&&Qg("disabled",e.disabled())("has-search",e.searchable())("multi-layer",e.asMultiLayer());},inputs:{asMultiLayer:[1,"asMultiLayer"],openIndicator:[1,"openIndicator"],disabled:[1,"disabled"],customOptionElementSelectors:[1,"customOptionElementSelectors"],keepClickedOptionActive:[1,"keepClickedOptionActive"],closeOnClick:[1,"closeOnClick"],isOpen:[1,"isOpen"],searchable:[1,"searchable"]},outputs:{isOpen:"isOpenChange",closed:"closed"},ngContentSelectors:te,decls:13,vars:21,consts:[["formFieldWrapper",""],["inputRef",""],["optionsRef",""],[3,"isOpenChange","closed","isOpen","disableOpenByClick","asMultiLayer","options"],["trigger","","role","combobox","aria-haspopup","listbox",3,"click"],[1,"open-indicator"],[1,"submenu-indicator"],[1,"form-field-wrap"],[1,"small","stretch"],["type","text","placeholder","Search","role","combobox","aria-autocomplete","list"],["role","listbox",1,"options",3,"click","id"]],template:function(i,e){if(i&1){let n=gT();oC(ee),Qi(0,"sh-popover",3,0),sm("isOpenChange",function(o){return Sd(n),HC(e.isOpen,o)||(e.isOpen=o),xd(o)}),Fg("closed",function(){return e.close("fromPopover")}),Qi(2,"div",4),Fg("click",function(o){return e.toggleIsOpen(o)}),iC(3),oT(4,ne,2,0,"sh-icon",5),oT(5,se,2,0,"sh-icon",6),Hl(),Qi(6,"div",7)(7,"sh-form-field",8),mg(8,"input",9,1),Hl()(),Qi(10,"div",10,2),Fg("click",function(){return e.close("active")}),iC(12,1),Hl()();}i&2&&(im("isOpen",e.isOpen),gg("disableOpenByClick",true)("asMultiLayer",e.asMultiLayer())("options",QC(20,ie)),DE(2),Qg("is-open",e.isOpen()),hg("aria-expanded",e.isOpen())("aria-controls",e.optionsId)("aria-activedescendant",e.activeOptionId()),DE(2),iT(e.openIndicator()?4:-1),DE(),iT(e.isSubmenu()?5:-1),DE(2),Qg("hidden",e.searchable()===false),DE(),hg("aria-expanded",e.isOpen())("aria-controls",e.optionsId)("aria-activedescendant",e.activeOptionId()),DE(2),Qg("searching",e.searchable()&&e.inputValue()!==""),gg("id",e.optionsId),hg("aria-activedescendant",e.activeOptionId()));},dependencies:[oe$1,Fe,N$1],styles:[`sh-menu{--menu-mh: 20rem;display:inline-flex;position:relative}sh-menu.disabled{opacity:.5;pointer-events:none}sh-menu.stretch{width:100%}sh-menu.stretch [trigger]>*{width:100%}sh-menu.has-search sh-popover .options [title]{position:sticky;border-bottom:var(--border-10)}sh-menu.has-search .form-field-wrap{margin:.5rem .5rem 0}sh-menu.has-search .options{margin:.25rem 0 0}sh-menu.multi-layer [trigger]:has(sh-icon.open-indicator).is-open .open-indicator{transform:translateY(-50%) rotate(-90deg)}sh-menu.multi-layer [trigger]:has(sh-icon.open-indicator){display:flex}sh-menu.multi-layer [trigger]:has(sh-icon.open-indicator) .open-indicator{right:1rem}sh-menu.multi-layer [trigger] button:first-child{margin-top:0}sh-menu [trigger]:has(sh-icon.open-indicator){position:relative}sh-menu [trigger]:has(sh-icon.open-indicator)>:first-child{padding-right:2rem}sh-menu [trigger]:has(sh-icon.open-indicator) .open-indicator{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);color:var(--base-8);font-size:1rem;font-weight:inherit;pointer-events:none;transition:transform 75ms ease-in-out}sh-menu [trigger]:has(sh-icon.open-indicator).is-open .open-indicator{transform:translateY(-50%) rotate(-180deg)}sh-menu [trigger]:has(sh-icon.submenu-indicator){position:relative}sh-menu [trigger]:has(sh-icon.submenu-indicator)>:first-child{padding-right:2rem!important}sh-menu [trigger]:has(sh-icon.submenu-indicator) .submenu-indicator{position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:var(--base-8);font-size:1rem;font-weight:inherit;pointer-events:none;transition:transform 75ms ease-in-out}sh-menu [trigger]:has(sh-icon.submenu-indicator).is-open .submenu-indicator{transform:translateY(-50%) rotate(90deg)}sh-menu sh-popover{flex:1 0}sh-menu sh-popover .popover{padding:0}sh-menu sh-popover .popover-content{overflow:hidden}sh-menu sh-popover .form-field-wrap sh-form-field{z-index:10;background-color:var(--base-1)}sh-menu sh-popover .form-field-wrap sh-form-field.hidden{opacity:0;height:0;width:0;min-width:0;min-height:0;margin:0}sh-menu sh-popover .options{z-index:2;position:relative;display:flex;flex-direction:column;gap:.25rem;padding:0;margin:0;max-height:var(--menu-mh);overflow:auto}sh-menu sh-popover .options sh-menu:first-child,sh-menu sh-popover .options button:first-child{margin-top:.5rem}sh-menu sh-popover .options.searching button[disabled]{display:none}sh-menu sh-popover .options.searching button[value="0"]{display:none}sh-menu sh-popover .options.searching>*:not(button){display:none}sh-menu sh-popover .options:after{content:"";display:block;width:100%;min-height:.25rem;order:9999999}sh-menu sh-popover .options [title]{font:var(--paragraph-30);color:var(--base-8);padding:.5rem .75rem;margin:0;-webkit-user-select:none;user-select:none;position:relative;top:0;z-index:10;background-color:var(--base-1)}sh-menu sh-popover .options button{display:flex;justify-content:flex-start;align-items:center;text-align:left;height:auto;margin:0 .5rem;padding:.25rem .5rem;gap:0 .5rem;width:calc(100% - 1rem);border-radius:var(--shape-2);appearance:none;background-color:transparent;border:0;cursor:pointer;color:var(--base-12);transition:transform 125ms linear;transform:scale(1)}sh-menu sh-popover .options button:before{content:"";min-height:1.5rem;display:inline-block;width:0;margin-right:-.5rem}sh-menu sh-popover .options button:active{transform:scale(.98)}sh-menu sh-popover .options button[disabled]{opacity:.3;cursor:initial}sh-menu sh-popover .options button[disabled]:hover{background-color:transparent}sh-menu sh-popover .options button [suffix]{order:999;color:var(--base-8);font:var(--paragraph-30);justify-self:flex-end;display:inline-flex;flex:1 0;justify-content:flex-end}sh-menu sh-popover .options button sh-icon{font-size:1rem}sh-menu sh-popover .options button.active,sh-menu sh-popover .options button:hover{background-color:var(--base-2);color:var(--base-12)}sh-menu sh-popover .options button.focused{background-color:var(--primary-2);color:var(--base-12)}sh-menu sh-popover .options button.focused:hover{background-color:var(--primary-3)}
1
+ import {o as oe$1,F as Fe}from'./chunk-B9maI7Xa.js';import {T,ad as Mr,bC as ED,bv as N,N as Nt,b as I1,af as E1,ac as v1,G as Ge,E as D1,z as za,c1 as oe,c2 as ae,bw as le,h as hw,d as N$1,l as vT,M as aC,Q as Qi,p as cm,r as kd,U as UC,O as Od,V as Vg,X as cC,f as aT,$ as $l,j as vg,x as am,A as yg,a3 as KC,C as CE,Y as Yg,aC as mg,i as cT,W as Wg,K as fC,w as jC}from'./main-VVQP2YE7.js';var X=["inputRef"],Z=["optionsRef"],ee=["*",[["","menu",""]]],te=["*","[menu]"],ie=()=>({closeOnButton:false,closeOnEsc:true});function ne(a,J){a&1&&(Qi(0,"sh-icon",5),jC(1,"caret-down"),$l());}function se(a,J){a&1&&(Qi(0,"sh-icon",6),jC(1,"caret-right"),$l());}var m=[],ve=(()=>{class a{constructor(){this.#i=T(Mr),this.#t=T(ED),this.#e=T(N),this.parentMenu=T(a,{optional:true,skipSelf:true}),this.isSubmenu=Nt(()=>this.parentMenu!==null),this.asMultiLayer=I1(false),this.openIndicator=I1(false),this.disabled=I1(false),this.customOptionElementSelectors=I1(["button"]),this.keepClickedOptionActive=I1(false),this.closeOnClick=I1(true),this.isOpen=E1(false),this.closed=v1(),this.searchable=I1(false),this.activeOptionIndex=Ge(-1),this.inputRef=D1("inputRef"),this.optionsRef=D1("optionsRef"),this.openMenusEffect=za(t=>{this.isOpen()&&m.push(this),t(()=>{let i=m.indexOf(this);i>-1&&m.splice(i,1);});}),this.options=oe(this.optionsRef,this.customOptionElementSelectors),this.optionsEl=Nt(()=>{let t=this.optionsRef()?.nativeElement;return t?this.options.signal().filter(i=>i.disabled?false:i.closest(".options")===t):[]}),this.inputValue=ae(this.inputRef),this.optionsId=le(),this.activeOptionId=Ge(void 0),this.abortController=null,this.optionsEffect=za(t=>{if(this.abortController!==null&&(this.abortController.abort(),this.abortController=null),!this.isOpen())return;if(this.searchable()&&this.#e.pause(),t(()=>{this.searchable()&&this.#e.resume();}),this.abortController=new AbortController,!this.searchable())this.#i.documentElement.addEventListener("keydown",this.keyDownEventListener,{signal:this.abortController.signal});else {let n=this.inputRef()?.nativeElement;n&&n.addEventListener("keydown",this.keyDownEventListener,{signal:this.abortController.signal});}let e=this.inputRef()?.nativeElement;e&&(queueMicrotask(()=>e.focus()),this.closeOnClick()||this.optionsRef()?.nativeElement?.addEventListener("click",s=>{let o=s.target,r=this.activeElements();if(!r.length){let c=this.optionsEl();this.activeElements.set(c),r=c;}let p=r.findIndex(c=>c===o);p>-1&&(this.activeOptionIndex.set(p),e.focus());}));}),this.keyDownEventListener=t=>{if(m.at(-1)!==this)return;let i=this.activeOptionIndex(),e=this.searchable();if(this.#e.matches(t,"menu.next"))t.preventDefault(),this.activeOptionIndex.set(this.nextActiveIndex(i));else if(this.#e.matches(t,"menu.prev"))t.preventDefault(),this.activeOptionIndex.set(this.prevActiveIndex(i));else if(this.#e.matches(t,"menu.open-submenu")){if(!e&&i>-1){let n=this.activeElements()[i];if(n.parentElement?.hasAttribute("trigger")){t.preventDefault();let o=new CustomEvent("ship-menu-open",{bubbles:true,cancelable:true,detail:{keyboard:true}});n.dispatchEvent(o);}}}else if(this.#e.matches(t,"menu.close-submenu"))!e&&this.isSubmenu()&&(t.preventDefault(),this.close("closed"));else if(this.#e.matches(t,"menu.select")){let n=t.key==="Enter",s=t.key===" "||t.key==="Spacebar";if((n||s&&!e)&&(t.preventDefault(),i>-1)){let o=this.activeElements()[i];if(o.parentElement?.hasAttribute("trigger")){let p=new CustomEvent("ship-menu-open",{bubbles:true,cancelable:true,detail:{keyboard:true}});o.dispatchEvent(p);}else o.click(),o.querySelector("sh-checkbox")||queueMicrotask(()=>this.close("active"));}}else if(t.key==="Tab"){let n=this.activeElements();if(!n.length){let s=this.optionsEl();this.activeElements.set(s),n=s;}t.shiftKey?i<=0?(t.preventDefault(),this.close("closed")):(t.preventDefault(),this.activeOptionIndex.set(this.prevActiveIndex(i))):i>=n.length-1?(t.preventDefault(),this.close("closed")):(t.preventDefault(),this.activeOptionIndex.set(this.nextActiveIndex(i)));}},this._lastElementList=[],this.activeElements=Ge([]),this.lastInputValue="",this.inputValueEffect=za(()=>{if(!this.searchable()){this.activeElements.set(this.optionsEl());return}let i=(this.inputValue()??"").toLowerCase();if(this.#n(),!i||i===""){let n=this.optionsEl();this.activeElements.set(n),this._lastElementList=n;for(let s=0;s<n.length;s++)this.#t.removeStyle(n[s],"order"),n[s].id||(n[s].id=`${this.optionsId}-option-${s}`),n[s].setAttribute("role","option");return}if(!i||i==="")return;let e=this._lastElementList.length&&i.length>this.lastInputValue.length?this._lastElementList:this.optionsEl();this.lastInputValue=i;for(let n=0;n<e.length;n++){let s=e[n],o=s.textContent?.toLowerCase()||"",r=this.#s(o,i);s.value=r;}e=e.filter(n=>n.value>0).sort((n,s)=>s.value-n.value);for(let n=0;n<e.length;n++)this.#t.setStyle(e[n],"order",n);this.activeElements.set(e),this._lastElementList=e;for(let n=0;n<e.length;n++)e[n].id||(e[n].id=`${this.optionsId}-option-${n}`),e[n].setAttribute("role","option");}),this.activeOptionIndexEffect=za(()=>{let t=this.activeElements(),i=this.activeOptionIndex();for(let e=0;e<t.length;e++)t[e].classList.remove("active"),t[e].removeAttribute("aria-selected");if(i>-1){let e=t[i];e.scrollIntoView({block:"center"}),e.classList.add("active"),e.setAttribute("aria-selected","true"),this.activeOptionId.set(e.id);}else this.activeOptionId.set(void 0);});}#i;#t;#e;toggleIsOpen(t){t.preventDefault(),t.stopPropagation(),!this.disabled()&&(this.isOpen()?this.close("fromPopover"):this.open());}open(){this.disabled()||(this.isOpen.set(true),this.searchable()&&setTimeout(()=>this.inputRef()?.nativeElement.focus()));}onShipMenuOpen(t){t.preventDefault(),t.stopPropagation(),this.open(),t.detail?.keyboard&&setTimeout(()=>{this.activeOptionIndex.set(0);},50);}#s(t,i){if(!i)return 0;let e=0,n=-1,s=0,o=true;for(let r=0;r<i.length;r++){let p=i[r];if(t.length>n+1&&t[n+1]===p)e+=r===0?100:150,n++,s++;else {let c=t.indexOf(p,n+1);if(r>0&&(o=false),c===-1)return 0;e+=100,n=c,s++;}}return o&&i.length===s&&(e+=1e3),e+=s*20,e}nextActiveIndex(t){let i=this.activeElements();if(!i.length){let n=this.optionsEl();this.activeElements.set(n),i=n;}if(t===-1||t===i.length-1)return 0;let e=t+1;return i[e].disabled?this.nextActiveIndex(e):e}prevActiveIndex(t){let i=this.activeElements();if(!i.length){let n=this.optionsEl();this.activeElements.set(n),i=n;}if(t===0||t===-1)return i.length-1;let e=t-1;return i[e].disabled?this.prevActiveIndex(e):e}close(t="closed",i){this.inputValue.set("");let e=this.inputRef()?.nativeElement;if(e&&(e.value=""),this.closeOnClick()&&((!this.keepClickedOptionActive()||t==="closed")&&this.#n(),this.isOpen.set(false),this.closed.emit(t==="active"),this.isSubmenu())){let n=this.parentMenu?.inputRef()?.nativeElement;n&&queueMicrotask(()=>n.focus());}}#n(){this.activeOptionIndex.set(-1);let t=this.optionsEl();for(let i=0;i<t.length;i++)t[i].classList.remove("active"),t[i].removeAttribute("aria-selected");}ngOnDestroy(){this.abortController&&(this.abortController.abort(),this.abortController=null);let t=m.indexOf(this);t>-1&&m.splice(t,1);}static{this.\u0275fac=function(i){return new(i||a)};}static{this.\u0275cmp=hw({type:a,selectors:[["sh-menu"]],viewQuery:function(i,e){i&1&&Wg(e.inputRef,X,5)(e.optionsRef,Z,5),i&2&&fC(2);},hostVars:6,hostBindings:function(i,e){i&1&&Vg("ship-menu-open",function(s){return e.onShipMenuOpen(s)}),i&2&&Yg("disabled",e.disabled())("has-search",e.searchable())("multi-layer",e.asMultiLayer());},inputs:{asMultiLayer:[1,"asMultiLayer"],openIndicator:[1,"openIndicator"],disabled:[1,"disabled"],customOptionElementSelectors:[1,"customOptionElementSelectors"],keepClickedOptionActive:[1,"keepClickedOptionActive"],closeOnClick:[1,"closeOnClick"],isOpen:[1,"isOpen"],searchable:[1,"searchable"]},outputs:{isOpen:"isOpenChange",closed:"closed"},ngContentSelectors:te,decls:13,vars:21,consts:[["formFieldWrapper",""],["inputRef",""],["optionsRef",""],[3,"isOpenChange","closed","isOpen","disableOpenByClick","asMultiLayer","options"],["trigger","","role","combobox","aria-haspopup","listbox",3,"click"],[1,"open-indicator"],[1,"submenu-indicator"],[1,"form-field-wrap"],[1,"small","stretch"],["type","text","placeholder","Search","role","combobox","aria-autocomplete","list"],["role","listbox",1,"options",3,"click","id"]],template:function(i,e){if(i&1){let n=vT();aC(ee),Qi(0,"sh-popover",3,0),cm("isOpenChange",function(o){return kd(n),UC(e.isOpen,o)||(e.isOpen=o),Od(o)}),Vg("closed",function(){return e.close("fromPopover")}),Qi(2,"div",4),Vg("click",function(o){return e.toggleIsOpen(o)}),cC(3),aT(4,ne,2,0,"sh-icon",5),aT(5,se,2,0,"sh-icon",6),$l(),Qi(6,"div",7)(7,"sh-form-field",8),vg(8,"input",9,1),$l()(),Qi(10,"div",10,2),Vg("click",function(){return e.close("active")}),cC(12,1),$l()();}i&2&&(am("isOpen",e.isOpen),yg("disableOpenByClick",true)("asMultiLayer",e.asMultiLayer())("options",KC(20,ie)),CE(2),Yg("is-open",e.isOpen()),mg("aria-expanded",e.isOpen())("aria-controls",e.optionsId)("aria-activedescendant",e.activeOptionId()),CE(2),cT(e.openIndicator()?4:-1),CE(),cT(e.isSubmenu()?5:-1),CE(2),Yg("hidden",e.searchable()===false),CE(),mg("aria-expanded",e.isOpen())("aria-controls",e.optionsId)("aria-activedescendant",e.activeOptionId()),CE(2),Yg("searching",e.searchable()&&e.inputValue()!==""),yg("id",e.optionsId),mg("aria-activedescendant",e.activeOptionId()));},dependencies:[oe$1,Fe,N$1],styles:[`sh-menu{--menu-mh: 20rem;display:inline-flex;position:relative}sh-menu.disabled{opacity:.5;pointer-events:none}sh-menu.stretch{width:100%}sh-menu.stretch [trigger]>*{width:100%}sh-menu.has-search sh-popover .options [title]{position:sticky;border-bottom:var(--border-10)}sh-menu.has-search .form-field-wrap{margin:.5rem .5rem 0}sh-menu.has-search .options{margin:.25rem 0 0}sh-menu.multi-layer [trigger]:has(sh-icon.open-indicator).is-open .open-indicator{transform:translateY(-50%) rotate(-90deg)}sh-menu.multi-layer [trigger]:has(sh-icon.open-indicator){display:flex}sh-menu.multi-layer [trigger]:has(sh-icon.open-indicator) .open-indicator{right:1rem}sh-menu.multi-layer [trigger] button:first-child{margin-top:0}sh-menu [trigger]:has(sh-icon.open-indicator){position:relative}sh-menu [trigger]:has(sh-icon.open-indicator)>:first-child{padding-right:2rem}sh-menu [trigger]:has(sh-icon.open-indicator) .open-indicator{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);color:var(--base-8);font-size:1rem;font-weight:inherit;pointer-events:none;transition:transform 75ms ease-in-out}sh-menu [trigger]:has(sh-icon.open-indicator).is-open .open-indicator{transform:translateY(-50%) rotate(-180deg)}sh-menu [trigger]:has(sh-icon.submenu-indicator){position:relative}sh-menu [trigger]:has(sh-icon.submenu-indicator)>:first-child{padding-right:2rem!important}sh-menu [trigger]:has(sh-icon.submenu-indicator) .submenu-indicator{position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:var(--base-8);font-size:1rem;font-weight:inherit;pointer-events:none;transition:transform 75ms ease-in-out}sh-menu [trigger]:has(sh-icon.submenu-indicator).is-open .submenu-indicator{transform:translateY(-50%) rotate(90deg)}sh-menu sh-popover{flex:1 0}sh-menu sh-popover .popover{padding:0}sh-menu sh-popover .popover-content{overflow:hidden}sh-menu sh-popover .form-field-wrap sh-form-field{z-index:10;background-color:var(--base-1)}sh-menu sh-popover .form-field-wrap sh-form-field.hidden{opacity:0;height:0;width:0;min-width:0;min-height:0;margin:0}sh-menu sh-popover .options{z-index:2;position:relative;display:flex;flex-direction:column;gap:.25rem;padding:0;margin:0;max-height:var(--menu-mh);overflow:auto}sh-menu sh-popover .options sh-menu:first-child,sh-menu sh-popover .options button:first-child{margin-top:.5rem}sh-menu sh-popover .options.searching button[disabled]{display:none}sh-menu sh-popover .options.searching button[value="0"]{display:none}sh-menu sh-popover .options.searching>*:not(button){display:none}sh-menu sh-popover .options:after{content:"";display:block;width:100%;min-height:.25rem;order:9999999}sh-menu sh-popover .options [title]{font:var(--paragraph-30);color:var(--base-8);padding:.5rem .75rem;margin:0;-webkit-user-select:none;user-select:none;position:relative;top:0;z-index:10;background-color:var(--base-1)}sh-menu sh-popover .options button{display:flex;justify-content:flex-start;align-items:center;text-align:left;height:auto;margin:0 .5rem;padding:.25rem .5rem;gap:0 .5rem;width:calc(100% - 1rem);border-radius:var(--shape-2);appearance:none;background-color:transparent;border:0;cursor:pointer;color:var(--base-12);transition:transform 125ms linear;transform:scale(1)}sh-menu sh-popover .options button:before{content:"";min-height:1.5rem;display:inline-block;width:0;margin-right:-.5rem}sh-menu sh-popover .options button:active{transform:scale(.98)}sh-menu sh-popover .options button[disabled]{opacity:.3;cursor:initial}sh-menu sh-popover .options button[disabled]:hover{background-color:transparent}sh-menu sh-popover .options button [suffix]{order:999;color:var(--base-8);font:var(--paragraph-30);justify-self:flex-end;display:inline-flex;flex:1 0;justify-content:flex-end}sh-menu sh-popover .options button sh-icon{font-size:1rem}sh-menu sh-popover .options button.active,sh-menu sh-popover .options button:hover{background-color:var(--base-2);color:var(--base-12)}sh-menu sh-popover .options button.focused{background-color:var(--primary-2);color:var(--base-12)}sh-menu sh-popover .options button.focused:hover{background-color:var(--primary-3)}
2
2
  `],encapsulation:2});}}return a})();export{ve as v};
@@ -0,0 +1 @@
1
+ import {h as hw,Z as lr,j as vg}from'./main-VVQP2YE7.js';var t=class o{static \u0275fac=function(e){return new(e||o)};static \u0275cmp=hw({type:o,selectors:[["app-welcome"]],decls:1,vars:0,template:function(e,m){e&1&&vg(0,"router-outlet");},dependencies:[lr],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;min-height:100vh}"]})};export{t as default};
@@ -1 +1 @@
1
- import {T,ab as C,a6 as be,a5 as g,e as ee$1,b as g1,N as Nt,U as Ue,G as Ga,at as h,C as Bu,d as dw,v,_ as _t,aH as m,b1 as m$1,Q as Qi,X as XT,H as Hl,o as oT,F as Fg,D as DE,au as Lg,av as eC,i as iT,z as gg,a3 as QC,I as Qg,j as mg,a1 as cT,n as nC,a2 as lT,O as Og,aM as tb,P as Pg,aN as ob,q as PC,E as nm,aR as rb}from'./main-KFKZO6SJ.js';import {f}from'./chunk-DPNAj9Vc.js';import {d}from'./chunk-CRAg6SRo.js';import {$}from'./chunk-C7pjkqKB.js';var W=()=>["/"],Y=(n,e)=>e.FilesetID,Z=(n,e)=>e.Path;function ee(n,e){n&1&&(Qi(0,"div",6),mg(1,"sh-progress-bar",12),Qi(2,"p"),XT(3,3),Hl()());}function ie(n,e){n&1&&(Qi(0,"div",7)(1,"p"),XT(2,4),Hl()());}function ne(n,e){if(n&1&&(Qi(0,"span",18),PC(1),tb(2,"bytes"),Hl()),n&2){let i=nC().$implicit;DE(),nm(rb(2,1,i.Size));}}function te(n,e){if(n&1&&(Qi(0,"div",16)(1,"span",17),PC(2),Hl(),oT(3,ne,3,3,"span",18),Hl()),n&2){let i=e.$implicit;DE(2),nm(i.Path),DE(),iT(i.Size?3:-1);}}function oe(n,e){if(n&1&&(Qi(0,"sh-card",13)(1,"h3")(2,"span"),Og(3,5),mg(4,"span",14),tb(5,"relativeTime"),Pg(),Hl()(),Qi(6,"div",15),cT(7,te,4,2,"div",16,Z),Hl()()),n&2){let i=nC().$implicit;DE(5),Lg(i.FilesetID)(ob(5,2,i.FilesetTime,true)),eC(3),DE(2),lT(i.Files);}}function le(n,e){if(n&1&&oT(0,oe,9,5,"sh-card",13),n&2){let i=e.$implicit;iT(i.Files?.length?0:-1);}}function ae(n,e){if(n&1&&(Qi(0,"div",8),cT(1,le,1,1,null,null,Y),Hl()),n&2){let i=nC();DE(),lT(i.filesets());}}var B=class n{#e=T(C);#i=T(be);#n=T(g);#t=T(ee$1);id=g1.required();backup=Nt(()=>this.#n.getBackupById(this.id()));brokenFilesResource=$({params:()=>({id:this.id()}),stream:({params:e})=>this.#e.postApiV2BackupListBrokenFiles({requestBody:{BackupId:e.id}})});isLoading=Nt(()=>this.brokenFilesResource.isLoading());isPurging=Ue(false);filesets=Ue([]);constructor(){Ga(()=>{let e=this.brokenFilesResource.value();if(e){let i=(e.Data??[]).slice().sort((t,r)=>t.FilesetTime<r.FilesetTime?1:t.FilesetTime>r.FilesetTime?-1:0);this.filesets.set(i);}});}totalFiles=Nt(()=>this.filesets().reduce((e,i)=>e+(i.Files?.length??0),0));hasBrokenFiles=Nt(()=>this.totalFiles()>0);purgeBrokenFiles(){let e=this.totalFiles();e!==0&&this.#i.open(h,{data:{title:$localize`Confirm purge`,message:$localize`Are you sure you want to fully remove ${e} broken file(s)?`,confirmText:$localize`Purge broken files`,cancelText:$localize`Cancel`},closed:i=>{i&&(this.isPurging.set(true),this.#e.postApiV2BackupPurgeBrokenFiles({requestBody:{BackupId:this.id()}}).pipe(Bu(()=>this.isPurging.set(false))).subscribe({next:()=>{this.#t.navigate(["/"]);}}));}});}static \u0275fac=function(i){return new(i||n)};static \u0275cmp=dw({type:n,selectors:[["app-broken-files"]],inputs:{id:[1,"id"]},decls:10,vars:8,consts:()=>{let e;e=$localize`Purge broken files for ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let i;i=$localize`Cancel`;let t;t=$localize` Purge broken files `;let r;r=$localize`Checking for broken files...`;let R;R=$localize`No broken files found for this backup.`;let k;return k=$localize` Version ${"\uFFFD0\uFFFD"}:INTERPOLATION: at ${"\uFFFD#4\uFFFD"}:START_TAG_SPAN:${"\uFFFD1\uFFFD"}:INTERPOLATION_1:${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SPAN:`,[e,i,t,r,R,k,[1,"loading-state"],[1,"empty-state"],[1,"fileset-list"],[1,"actions"],["shButton","",3,"routerLink","disabled"],["shButton","",1,"raised","error",3,"click","disabled"],[1,"primary","indeterminate"],[1,"type-a","full-width"],[1,"time"],[1,"file-list"],[1,"file"],[1,"path"],[1,"size"]]},template:function(i,t){i&1&&(Qi(0,"h3"),XT(1,0),Hl(),oT(2,ee,4,0,"div",6)(3,ie,3,0,"div",7)(4,ae,3,0,"div",8),Qi(5,"div",9)(6,"button",10),XT(7,1),Hl(),Qi(8,"button",11),Fg("click",function(){return t.purgeBrokenFiles()}),XT(9,2),Hl()()),i&2&&(DE(),Lg(t.backup()?.Backup?.Name),eC(1),DE(),iT(t.isLoading()?2:t.hasBrokenFiles()?4:3),DE(4),gg("routerLink",QC(7,W))("disabled",t.isPurging()),DE(2),Qg("loading",t.isPurging()),gg("disabled",t.isPurging()||!t.hasBrokenFiles()||t.isLoading()));},dependencies:[v,f,d,_t,m,m$1],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;padding:2.5rem;max-width:43.75rem}h3[_ngcontent-%COMP%]{font:var(--title-30);margin:0}h3[_ngcontent-%COMP%] .time[_ngcontent-%COMP%]{font:var(--text-20);opacity:.7;margin-left:.5rem}.loading-state[_ngcontent-%COMP%], .empty-state[_ngcontent-%COMP%]{padding:2rem 0;display:flex;flex-direction:column;gap:1rem}.fileset-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem;margin:1rem 0}.file-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem;padding-top:.5rem}.file[_ngcontent-%COMP%]{display:flex;justify-content:space-between;gap:1rem;align-items:baseline}.file[_ngcontent-%COMP%] .path[_ngcontent-%COMP%]{word-break:break-all}.file[_ngcontent-%COMP%] .size[_ngcontent-%COMP%]{white-space:nowrap;opacity:.7}.actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;gap:.5rem;padding:2rem 0}"]})};export{B as default};
1
+ import {T,ab as C,a6 as be,a5 as g,e as ee$1,b as I1,N as Nt,G as Ge,z as za,at as h,H as qu,h as hw,v,_ as _t,aH as m,b2 as m$1,Q as Qi,n as nC,$ as $l,f as aT,V as Vg,C as CE,au as jg,av as rC,i as cT,A as yg,a3 as KC,Y as Yg,j as vg,a1 as dT,k as iC,a2 as fT,L as Lg,aM as ob,F as Fg,aN as ab,w as jC,J as om,aR as sb}from'./main-VVQP2YE7.js';import {f}from'./chunk-Bja52qI7.js';import {d}from'./chunk-B8uF0dom.js';import {$}from'./chunk-Box6Lckh.js';var W=()=>["/"],Y=(n,e)=>e.FilesetID,Z=(n,e)=>e.Path;function ee(n,e){n&1&&(Qi(0,"div",6),vg(1,"sh-progress-bar",12),Qi(2,"p"),nC(3,3),$l()());}function ie(n,e){n&1&&(Qi(0,"div",7)(1,"p"),nC(2,4),$l()());}function ne(n,e){if(n&1&&(Qi(0,"span",18),jC(1),ob(2,"bytes"),$l()),n&2){let i=iC().$implicit;CE(),om(sb(2,1,i.Size));}}function te(n,e){if(n&1&&(Qi(0,"div",16)(1,"span",17),jC(2),$l(),aT(3,ne,3,3,"span",18),$l()),n&2){let i=e.$implicit;CE(2),om(i.Path),CE(),cT(i.Size?3:-1);}}function oe(n,e){if(n&1&&(Qi(0,"sh-card",13)(1,"h3")(2,"span"),Lg(3,5),vg(4,"span",14),ob(5,"relativeTime"),Fg(),$l()(),Qi(6,"div",15),dT(7,te,4,2,"div",16,Z),$l()()),n&2){let i=iC().$implicit;CE(5),jg(i.FilesetID)(ab(5,2,i.FilesetTime,true)),rC(3),CE(2),fT(i.Files);}}function le(n,e){if(n&1&&aT(0,oe,9,5,"sh-card",13),n&2){let i=e.$implicit;cT(i.Files?.length?0:-1);}}function ae(n,e){if(n&1&&(Qi(0,"div",8),dT(1,le,1,1,null,null,Y),$l()),n&2){let i=iC();CE(),fT(i.filesets());}}var B=class n{#e=T(C);#i=T(be);#n=T(g);#t=T(ee$1);id=I1.required();backup=Nt(()=>this.#n.getBackupById(this.id()));brokenFilesResource=$({params:()=>({id:this.id()}),stream:({params:e})=>this.#e.postApiV2BackupListBrokenFiles({requestBody:{BackupId:e.id}})});isLoading=Nt(()=>this.brokenFilesResource.isLoading());isPurging=Ge(false);filesets=Ge([]);constructor(){za(()=>{let e=this.brokenFilesResource.value();if(e){let i=(e.Data??[]).slice().sort((t,r)=>t.FilesetTime<r.FilesetTime?1:t.FilesetTime>r.FilesetTime?-1:0);this.filesets.set(i);}});}totalFiles=Nt(()=>this.filesets().reduce((e,i)=>e+(i.Files?.length??0),0));hasBrokenFiles=Nt(()=>this.totalFiles()>0);purgeBrokenFiles(){let e=this.totalFiles();e!==0&&this.#i.open(h,{data:{title:$localize`Confirm purge`,message:$localize`Are you sure you want to fully remove ${e} broken file(s)?`,confirmText:$localize`Purge broken files`,cancelText:$localize`Cancel`},closed:i=>{i&&(this.isPurging.set(true),this.#e.postApiV2BackupPurgeBrokenFiles({requestBody:{BackupId:this.id()}}).pipe(qu(()=>this.isPurging.set(false))).subscribe({next:()=>{this.#t.navigate(["/"]);}}));}});}static \u0275fac=function(i){return new(i||n)};static \u0275cmp=hw({type:n,selectors:[["app-broken-files"]],inputs:{id:[1,"id"]},decls:10,vars:8,consts:()=>{let e;e=$localize`Purge broken files for ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let i;i=$localize`Cancel`;let t;t=$localize` Purge broken files `;let r;r=$localize`Checking for broken files...`;let R;R=$localize`No broken files found for this backup.`;let k;return k=$localize` Version ${"\uFFFD0\uFFFD"}:INTERPOLATION: at ${"\uFFFD#4\uFFFD"}:START_TAG_SPAN:${"\uFFFD1\uFFFD"}:INTERPOLATION_1:${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SPAN:`,[e,i,t,r,R,k,[1,"loading-state"],[1,"empty-state"],[1,"fileset-list"],[1,"actions"],["shButton","",3,"routerLink","disabled"],["shButton","",1,"raised","error",3,"click","disabled"],[1,"primary","indeterminate"],[1,"type-a","full-width"],[1,"time"],[1,"file-list"],[1,"file"],[1,"path"],[1,"size"]]},template:function(i,t){i&1&&(Qi(0,"h3"),nC(1,0),$l(),aT(2,ee,4,0,"div",6)(3,ie,3,0,"div",7)(4,ae,3,0,"div",8),Qi(5,"div",9)(6,"button",10),nC(7,1),$l(),Qi(8,"button",11),Vg("click",function(){return t.purgeBrokenFiles()}),nC(9,2),$l()()),i&2&&(CE(),jg(t.backup()?.Backup?.Name),rC(1),CE(),cT(t.isLoading()?2:t.hasBrokenFiles()?4:3),CE(4),yg("routerLink",KC(7,W))("disabled",t.isPurging()),CE(2),Yg("loading",t.isPurging()),yg("disabled",t.isPurging()||!t.hasBrokenFiles()||t.isLoading()));},dependencies:[v,f,d,_t,m,m$1],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;padding:2.5rem;max-width:43.75rem}h3[_ngcontent-%COMP%]{font:var(--title-30);margin:0}h3[_ngcontent-%COMP%] .time[_ngcontent-%COMP%]{font:var(--text-20);opacity:.7;margin-left:.5rem}.loading-state[_ngcontent-%COMP%], .empty-state[_ngcontent-%COMP%]{padding:2rem 0;display:flex;flex-direction:column;gap:1rem}.fileset-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem;margin:1rem 0}.file-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem;padding-top:.5rem}.file[_ngcontent-%COMP%]{display:flex;justify-content:space-between;gap:1rem;align-items:baseline}.file[_ngcontent-%COMP%] .path[_ngcontent-%COMP%]{word-break:break-all}.file[_ngcontent-%COMP%] .size[_ngcontent-%COMP%]{white-space:nowrap;opacity:.7}.actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;gap:.5rem;padding:2rem 0}"]})};export{B as default};
@@ -1,2 +1,2 @@
1
- import {T,ae as Jr,bu as N,B as y1,bU as B$1,af as m1,bV as re,b as g1,b8 as ce,d as dw,f as N$1,L as oC,Q as Qi,q as PC,H as Hl,Y as iC,o as oT,h as bC,D as DE,i as iT,F as Fg,aC as hg,$ as $g,K as lC,k as gT,S as Sd,n as nC,x as xd,z as gg}from'./main-KFKZO6SJ.js';var B=["internalInput"],K=["*"];function Q(i,T){if(i&1){let t=gT();Qi(0,"input",6,0),Fg("change",function(n){Sd(t);let u=nC();return xd(u.onInternalInputChange(n))}),Hl();}if(i&2){let t=nC();gg("checked",t.checked()),hg("disabled",t.disabled()?"":null);}}var U=(()=>{class i{constructor(){this.#e=T(Jr),this.#n=T(N),this.internalInput=y1("internalInput"),this.projectedInputs=B$1("input:not(.internal-input)",{childList:true,attributes:true}),this.checked=m1(false),this.currentClassList=re(),this.color=g1(null),this.variant=g1(null),this.readonly=g1(false),this.disabled=g1(false),this.noInternalInput=g1(false),this.hostClasses=ce("checkbox",{color:this.color,variant:this.variant,readonly:this.readonly});}#e;#n;onInternalInputChange(t){if(this.disabled())return;let e=t.target;this.checked.set(e.checked);}onKeyDown(t){if(this.#n.matches(t,"checkbox.toggle")){let e=this.internalInput()?.nativeElement;e&&getComputedStyle(e).display!=="none"?e.click():this.#e.nativeElement.click(),t.preventDefault();}}static{this.\u0275fac=function(e){return new(e||i)};}static{this.\u0275cmp=dw({type:i,selectors:[["sh-checkbox"]],viewQuery:function(e,n){e&1&&$g(n.internalInput,B,5),e&2&&lC();},hostVars:6,hostBindings:function(e,n){e&1&&Fg("keydown",function(L){return n.onKeyDown(L)}),e&2&&(hg("disabled",n.disabled()?"":null)("role",n.noInternalInput()?"checkbox":null)("aria-checked",n.noInternalInput()?n.checked():null)("tabindex",n.noInternalInput()?n.disabled()?"-1":"0":null),bC(n.hostClasses()));},inputs:{checked:[1,"checked"],color:[1,"color"],variant:[1,"variant"],readonly:[1,"readonly"],disabled:[1,"disabled"],noInternalInput:[1,"noInternalInput"]},outputs:{checked:"checkedChange"},ngContentSelectors:K,decls:8,vars:3,consts:[["internalInput",""],[1,"box","sh-sheet"],[1,"inherit","default-indicator"],[1,"inherit","indeterminate-indicator"],[1,"label"],["type","checkbox",1,"internal-input",3,"checked"],["type","checkbox",1,"internal-input",3,"change","checked"]],template:function(e,n){e&1&&(oC(),Qi(0,"div",1)(1,"sh-icon",2),PC(2,"check-bold"),Hl(),Qi(3,"sh-icon",3),PC(4,"minus-bold"),Hl()(),Qi(5,"div",4),iC(6),Hl(),oT(7,Q,2,2,"input",5)),e&2&&(bC(n.currentClassList()),DE(7),iT(n.projectedInputs().length===0&&!n.noInternalInput()?7:-1));},dependencies:[N$1],styles:[`sh-checkbox .sh-sheet{--box-bw: .0625rem;--box-bc: var(--sheet-bc);--sheet-s: var(--shape-1)}sh-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative;border:0}sh-checkbox:focus-visible>.box,sh-checkbox:has(input:focus-visible)>.box{outline:2px solid var(--primary-8);outline-offset:2px}sh-checkbox>input.internal-input,sh-checkbox .label>input{appearance:none;position:absolute;inset:0;cursor:pointer;z-index:0;margin:0}sh-checkbox>input.internal-input:focus,sh-checkbox>input.internal-input:focus-visible,sh-checkbox .label>input:focus,sh-checkbox .label>input:focus-visible{outline:none}sh-checkbox:has(.label>input)>input.internal-input{display:none}sh-checkbox .label:empty{display:none}sh-checkbox:has(input[disabled]),sh-checkbox[disabled]:not([disabled=false]){opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none;cursor:initial}sh-checkbox .box{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;cursor:pointer;position:relative;border:var(--box-bw) solid var(--box-bc)}sh-checkbox .box sh-icon{opacity:0;font-weight:700;transition:opacity 75ms linear}sh-checkbox .box sh-icon.indeterminate-indicator{display:none}sh-checkbox.raised:not(:has(input:checked)):not(.active) .box,sh-checkbox.flat:not(:has(input:checked)):not(.active) .box{background:transparent;border:var(--border-10);border-color:var(--box-bc)}sh-checkbox.indeterminate .box sh-icon.indeterminate-indicator{display:block}sh-checkbox.indeterminate .box sh-icon.default-indicator{display:none}sh-checkbox:has(input:checked) .box sh-icon,sh-checkbox.indeterminate .box sh-icon,sh-checkbox.active .box sh-icon{opacity:1}sh-checkbox:hover .box sh-icon{opacity:.5}
1
+ import {T,ae as eo,bv as N,E as D1,bV as B$1,af as E1,bW as re,b as I1,b9 as ce,h as hw,d as N$1,M as aC,Q as Qi,w as jC,$ as $l,X as cC,f as aT,g as NC,C as CE,i as cT,V as Vg,aC as mg,W as Wg,K as fC,l as vT,r as kd,k as iC,O as Od,A as yg}from'./main-VVQP2YE7.js';var B=["internalInput"],K=["*"];function Q(i,T){if(i&1){let t=vT();Qi(0,"input",6,0),Vg("change",function(n){kd(t);let u=iC();return Od(u.onInternalInputChange(n))}),$l();}if(i&2){let t=iC();yg("checked",t.checked()),mg("disabled",t.disabled()?"":null);}}var U=(()=>{class i{constructor(){this.#e=T(eo),this.#n=T(N),this.internalInput=D1("internalInput"),this.projectedInputs=B$1("input:not(.internal-input)",{childList:true,attributes:true}),this.checked=E1(false),this.currentClassList=re(),this.color=I1(null),this.variant=I1(null),this.readonly=I1(false),this.disabled=I1(false),this.noInternalInput=I1(false),this.hostClasses=ce("checkbox",{color:this.color,variant:this.variant,readonly:this.readonly});}#e;#n;onInternalInputChange(t){if(this.disabled())return;let e=t.target;this.checked.set(e.checked);}onKeyDown(t){if(this.#n.matches(t,"checkbox.toggle")){let e=this.internalInput()?.nativeElement;e&&getComputedStyle(e).display!=="none"?e.click():this.#e.nativeElement.click(),t.preventDefault();}}static{this.\u0275fac=function(e){return new(e||i)};}static{this.\u0275cmp=hw({type:i,selectors:[["sh-checkbox"]],viewQuery:function(e,n){e&1&&Wg(n.internalInput,B,5),e&2&&fC();},hostVars:6,hostBindings:function(e,n){e&1&&Vg("keydown",function(L){return n.onKeyDown(L)}),e&2&&(mg("disabled",n.disabled()?"":null)("role",n.noInternalInput()?"checkbox":null)("aria-checked",n.noInternalInput()?n.checked():null)("tabindex",n.noInternalInput()?n.disabled()?"-1":"0":null),NC(n.hostClasses()));},inputs:{checked:[1,"checked"],color:[1,"color"],variant:[1,"variant"],readonly:[1,"readonly"],disabled:[1,"disabled"],noInternalInput:[1,"noInternalInput"]},outputs:{checked:"checkedChange"},ngContentSelectors:K,decls:8,vars:3,consts:[["internalInput",""],[1,"box","sh-sheet"],[1,"inherit","default-indicator"],[1,"inherit","indeterminate-indicator"],[1,"label"],["type","checkbox",1,"internal-input",3,"checked"],["type","checkbox",1,"internal-input",3,"change","checked"]],template:function(e,n){e&1&&(aC(),Qi(0,"div",1)(1,"sh-icon",2),jC(2,"check-bold"),$l(),Qi(3,"sh-icon",3),jC(4,"minus-bold"),$l()(),Qi(5,"div",4),cC(6),$l(),aT(7,Q,2,2,"input",5)),e&2&&(NC(n.currentClassList()),CE(7),cT(n.projectedInputs().length===0&&!n.noInternalInput()?7:-1));},dependencies:[N$1],styles:[`sh-checkbox .sh-sheet{--box-bw: .0625rem;--box-bc: var(--sheet-bc);--sheet-s: var(--shape-1)}sh-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative;border:0}sh-checkbox:focus-visible>.box,sh-checkbox:has(input:focus-visible)>.box{outline:2px solid var(--primary-8);outline-offset:2px}sh-checkbox>input.internal-input,sh-checkbox .label>input{appearance:none;position:absolute;inset:0;cursor:pointer;z-index:0;margin:0}sh-checkbox>input.internal-input:focus,sh-checkbox>input.internal-input:focus-visible,sh-checkbox .label>input:focus,sh-checkbox .label>input:focus-visible{outline:none}sh-checkbox:has(.label>input)>input.internal-input{display:none}sh-checkbox .label:empty{display:none}sh-checkbox:has(input[disabled]),sh-checkbox[disabled]:not([disabled=false]){opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none;cursor:initial}sh-checkbox .box{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;cursor:pointer;position:relative;border:var(--box-bw) solid var(--box-bc)}sh-checkbox .box sh-icon{opacity:0;font-weight:700;transition:opacity 75ms linear}sh-checkbox .box sh-icon.indeterminate-indicator{display:none}sh-checkbox.raised:not(:has(input:checked)):not(.active) .box,sh-checkbox.flat:not(:has(input:checked)):not(.active) .box{background:transparent;border:var(--border-10);border-color:var(--box-bc)}sh-checkbox.indeterminate .box sh-icon.indeterminate-indicator{display:block}sh-checkbox.indeterminate .box sh-icon.default-indicator{display:none}sh-checkbox:has(input:checked) .box sh-icon,sh-checkbox.indeterminate .box sh-icon,sh-checkbox.active .box sh-icon{opacity:1}sh-checkbox:hover .box sh-icon{opacity:.5}
2
2
  `],encapsulation:2});}}return i})();export{U};
@@ -1,2 +1,2 @@
1
- import {J}from'./chunk-khm9J_G0.js';import {T,ah as fe$1,a6 as be,ab as C,a5 as g,e as ee,U as Ue,C as Bu,at as h,d as dw,_ as _t,f as N,v,Q as Qi,O as Og,j as mg,H as Hl,F as Fg,P as Pg,o as oT,X as XT,p as DD,D as DE,z as gg,a3 as QC,I as Qg,i as iT,y as TD,t as tC,ae as Jr,B as y1,b as g1,af as m1,N as Nt,G as Ga,L as oC,Y as iC,q as PC,h as bC,aC as hg,$ as $g,K as lC,n as nC,E as nm,aa as Gl}from'./main-KFKZO6SJ.js';import {F as Fe$1}from'./chunk-DuIUmwWN.js';import {j as jn,G as Gn,T as Tn,Z as Ze,y as yt,R as Rn,P as Pn,g as gn,h as hn}from'./chunk-DipTNkHN.js';var de=["input"],me=[[["label"]]],fe=["label"],Fe=["ngProjectAs","label",5,["label"]];function _e(n,o){if(n&1&&(Qi(0,"div",3),PC(1),Hl()),n&2){let e=nC();DE(),nm(e.files()[0].name);}}function ge(n,o){if(n&1&&(Qi(0,"div",3),PC(1),Hl()),n&2){let e=nC();DE(),Gl("",e.files().length," files selected");}}function he(n,o){if(n&1&&(Qi(0,"div",4),PC(1),Hl()),n&2){let e=nC();DE(),nm(e.filesOver()?e.overlayText():e.placeholder());}}var ce=(()=>{class n{constructor(){this._el=T(Jr),this.inputRef=y1.required("input"),this.filesOver=Ue(false),this.multiple=g1(),this.accept=g1(null),this.placeholder=m1("Click or drag files here"),this.overlayText=g1("Drop files here"),this.files=m1([]),this.fileUploadClasses=Nt(()=>this._el.nativeElement.classList.toString()),this.inputEffect=Ga(()=>{let e=this.inputRef().nativeElement;e&&(e.placeholder&&this.placeholder.set(e.placeholder),e.addEventListener("dragover",t=>{t.preventDefault(),this.filesOver.set(true);}),e.addEventListener("dragleave",t=>{t.preventDefault(),this.filesOver.set(false);}),e.addEventListener("drop",t=>{t.preventDefault(),this.filesOver.set(false);let i=t.dataTransfer?.files;i&&i.length>0&&(this.handleFileUpload(Array.from(i)),e.files=i);}),e.addEventListener("change",t=>{t.preventDefault(),this.handleFileUpload(Array.from(t.target.files));}));});}handleFileUpload(e){this.multiple()?this.files.update(t=>[...t,...e]):this.files.set(e);}static{this.\u0275fac=function(t){return new(t||n)};}static{this.\u0275cmp=dw({type:n,selectors:[["sh-file-upload"]],viewQuery:function(t,i){t&1&&$g(i.inputRef,de,5),t&2&&lC();},inputs:{multiple:[1,"multiple"],accept:[1,"accept"],placeholder:[1,"placeholder"],overlayText:[1,"overlayText"],files:[1,"files"]},outputs:{placeholder:"placeholderChange",files:"filesChange"},ngContentSelectors:fe,decls:12,vars:7,consts:[["inputWrap",""],["input",""],["ngProjectAs","input",5,["input"],1,"input"],[1,"files-text"],[1,"placeholder"],["type","file"],[1,"bg-overlay"],["suffix",""]],template:function(t,i){t&1&&(oC(me),Qi(0,"sh-form-field"),iC(1,0,Fe),Qi(2,"div",2,0),oT(4,_e,2,1,"div",3)(5,ge,2,1,"div",3)(6,he,2,1,"div",4),mg(7,"input",5,1)(9,"div",6),Hl(),Qi(10,"sh-icon",7),PC(11,"upload-simple"),Hl()()),t&2&&(bC(i.fileUploadClasses()),DE(4),iT(i.files().length===1?4:i.files().length>1?5:6),DE(3),hg("multiple",i.multiple())("accept",i.accept()),DE(2),Qg("files-over",i.filesOver()));},dependencies:[Fe$1,N],styles:[`sh-file-upload{--fu-bg-active: rgba(0, 0, 0, .1);display:flex;flex-direction:column;gap:.75rem;position:relative;width:100%}sh-file-upload sh-list{border-radius:var(--shape-3);background-color:var(--base-2)}sh-file-upload .files-text,sh-file-upload .placeholder{color:var(--base-8);font:var(--paragraph-30B)}sh-file-upload input{position:absolute;opacity:0;inset:0;cursor:pointer;z-index:100}sh-file-upload .bg-overlay{opacity:0;position:absolute;inset:.0625rem;background-color:var(--fu-bg-active);transition:opacity 125ms linear;z-index:0;border-radius:var(--ff-s)}sh-file-upload .bg-overlay.files-over{opacity:1}
2
- `],encapsulation:2});}}return n})();var Te=()=>["/"];function Ce(n,o){n&1&&(Qi(0,"sh-form-field")(1,"label",14),XT(2,3),Hl(),mg(3,"input",15),DD(),Hl()),n&2&&(DE(3),TD());}var d=new jn,M=class n{#t=T(fe$1);#i=T(be);#o=T(C);#n=T(g);#e=T(ee);isImporting=Ue(false);isSecureFile=Ue(false);isValid=Ue(false);importForm=d.group({config:d.control(""),cmdline:d.control(false),import_metadata:d.control(false),direct:d.control(false),passphrase:d.control("")});selectedFile=Ue([]);onFileDropped(o){let e=o[0];if(e){let t=new FileReader;this.isSecureFile.set(e.type!=="application/json"),t.onload=this.#a.bind(this),t.readAsArrayBuffer(e);}}#a(o){let e=o.target?.result;this.isSecureFile.set(this.#r(e)!=="json"),this.importForm.patchValue({config:this.#l(e)}),this.isValid.set(this.importForm.value.config!=="");}#r(o){let e=new Uint8Array(o);if(e.length>=5&&e[0]===65&&e[1]===69&&e[2]===83&&e[4]===0)return "aes";try{let t=new TextDecoder().decode(o),i=JSON.parse(t);if(typeof i=="object"&&i!==null)return "json"}catch{}return "unknown"}#l(o){let e=new Uint8Array(o),t=e.byteLength,i="";for(let s=0;s<t;s++)i+=String.fromCharCode(e[s]);return btoa(i)}submit(){this.isImporting.set(true);let o=this.importForm.value.direct??false;this.#o.postApiV1BackupsImport({requestBody:this.importForm.value}).pipe(Bu(()=>this.isImporting.set(false))).subscribe({next:e=>{if(o){this.#t.success("Backup imported successfully."),this.#e.navigate(["/"]);return}let t=this.#n.addDraftBackup(e.data);this.#e.navigate(["/backup-draft",t]);},error:e=>{let t=e.message||$localize`Unknown error`;this.#i.open(h,{data:{title:$localize`Failed to import backup`,message:t,confirmText:$localize`OK`,cancelText:void 0}});}});}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=dw({type:n,selectors:[["app-import"]],decls:19,vars:8,consts:()=>{let o;o=$localize` Import backup configuration ${"\uFFFD#3\uFFFD"}:START_TAG_DIV:${"\uFFFD#4\uFFFD"}:START_TAG_BUTTON:${"[\uFFFD#5\uFFFD|\uFFFD#7\uFFFD]"}:START_TAG_SH_ICON:arrow-left${"[\uFFFD/#5\uFFFD|\uFFFD/#7\uFFFD]"}:CLOSE_TAG_SH_ICON: Back ${"[\uFFFD/#4\uFFFD|\uFFFD/#6\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD#6\uFFFD"}:START_TAG_BUTTON_1:${"[\uFFFD#5\uFFFD|\uFFFD#7\uFFFD]"}:START_TAG_SH_ICON:download-simple${"[\uFFFD/#5\uFFFD|\uFFFD/#7\uFFFD]"}:CLOSE_TAG_SH_ICON: Import ${"[\uFFFD/#4\uFFFD|\uFFFD/#6\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD/#3\uFFFD"}:CLOSE_TAG_DIV:`,o=tC(o);let e;e=$localize`Import Metadata`;let t;t=$localize`Save now`;let i;return i=$localize`Passphrase`,[o,e,t,i,[1,"actions"],["shButton","","type","button",1,"outlined",3,"routerLink"],["shButton","","type","submit",1,"raised","primary",3,"click","disabled"],["autocomplete","off",3,"formGroup"],["accept",".json,.aes",3,"filesChange","files"],[1,"primary","raised"],["for","importMetadata"],["type","checkbox","formControlName","import_metadata"],["for","direct"],["type","checkbox","formControlName","direct"],["for","passphrase"],["type","password","autocomplete","disabled","formControlName","passphrase"]]},template:function(e,t){e&1&&(Qi(0,"header")(1,"h3"),Og(2,0),Qi(3,"div",4)(4,"button",5),mg(5,"sh-icon"),Hl(),Qi(6,"button",6),Fg("click",function(){return t.submit()}),mg(7,"sh-icon"),Hl()(),Pg(),Hl()(),Qi(8,"form",7)(9,"sh-file-upload",8),Fg("filesChange",function(s){return t.onFileDropped(s)}),Hl(),oT(10,Ce,4,0,"sh-form-field"),Qi(11,"sh-toggle",9)(12,"label",10),XT(13,1),Hl(),mg(14,"input",11),DD(),Hl(),Qi(15,"sh-toggle",9)(16,"label",12),XT(17,2),Hl(),mg(18,"input",13),DD(),Hl()()),e&2&&(DE(4),gg("routerLink",QC(7,Te)),DE(2),Qg("loading",t.isImporting()),gg("disabled",t.isImporting()||!t.isValid()),DE(2),gg("formGroup",t.importForm),DE(),gg("files",t.selectedFile()),DE(),iT(t.isSecureFile()?10:-1),DE(4),TD(),DE(4),TD());},dependencies:[Gn,Tn,Ze,yt,Rn,Pn,gn,hn,_t,Fe$1,N,v,J,ce],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;gap:2rem;padding:3rem}h3[_ngcontent-%COMP%]{font:var(--title-30);display:flex;align-items:center;justify-content:space-between}.actions[_ngcontent-%COMP%]{display:flex;gap:.5rem}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem;max-width:31.25rem}sh-file-upload[_ngcontent-%COMP%]{width:100%}"]})};export{M as default};
1
+ import {J}from'./chunk-DUYvFN8m.js';import {T,ah as fe$1,a6 as be,ab as C,a5 as g,e as ee,G as Ge,H as qu,at as h,h as hw,_ as _t,d as N,v,Q as Qi,L as Lg,j as vg,$ as $l,V as Vg,F as Fg,f as aT,n as nC,s as CD,C as CE,A as yg,a3 as KC,Y as Yg,i as cT,y as _D,o as oC,ae as eo,E as D1,b as I1,af as E1,N as Nt,z as za,M as aC,X as cC,w as jC,g as NC,aC as mg,W as Wg,K as fC,k as iC,J as om,aa as Ql}from'./main-VVQP2YE7.js';import {F as Fe$1}from'./chunk-B9maI7Xa.js';import {j as jn,G as Gn,T as Tn,Z as Ze,y as yt,R as Rn,P as Pn,g as gn,h as hn}from'./chunk-BO2GlieG.js';var de=["input"],me=[[["label"]]],fe=["label"],Fe=["ngProjectAs","label",5,["label"]];function _e(n,o){if(n&1&&(Qi(0,"div",3),jC(1),$l()),n&2){let e=iC();CE(),om(e.files()[0].name);}}function ge(n,o){if(n&1&&(Qi(0,"div",3),jC(1),$l()),n&2){let e=iC();CE(),Ql("",e.files().length," files selected");}}function he(n,o){if(n&1&&(Qi(0,"div",4),jC(1),$l()),n&2){let e=iC();CE(),om(e.filesOver()?e.overlayText():e.placeholder());}}var ce=(()=>{class n{constructor(){this._el=T(eo),this.inputRef=D1.required("input"),this.filesOver=Ge(false),this.multiple=I1(),this.accept=I1(null),this.placeholder=E1("Click or drag files here"),this.overlayText=I1("Drop files here"),this.files=E1([]),this.fileUploadClasses=Nt(()=>this._el.nativeElement.classList.toString()),this.inputEffect=za(()=>{let e=this.inputRef().nativeElement;e&&(e.placeholder&&this.placeholder.set(e.placeholder),e.addEventListener("dragover",t=>{t.preventDefault(),this.filesOver.set(true);}),e.addEventListener("dragleave",t=>{t.preventDefault(),this.filesOver.set(false);}),e.addEventListener("drop",t=>{t.preventDefault(),this.filesOver.set(false);let i=t.dataTransfer?.files;i&&i.length>0&&(this.handleFileUpload(Array.from(i)),e.files=i);}),e.addEventListener("change",t=>{t.preventDefault(),this.handleFileUpload(Array.from(t.target.files));}));});}handleFileUpload(e){this.multiple()?this.files.update(t=>[...t,...e]):this.files.set(e);}static{this.\u0275fac=function(t){return new(t||n)};}static{this.\u0275cmp=hw({type:n,selectors:[["sh-file-upload"]],viewQuery:function(t,i){t&1&&Wg(i.inputRef,de,5),t&2&&fC();},inputs:{multiple:[1,"multiple"],accept:[1,"accept"],placeholder:[1,"placeholder"],overlayText:[1,"overlayText"],files:[1,"files"]},outputs:{placeholder:"placeholderChange",files:"filesChange"},ngContentSelectors:fe,decls:12,vars:7,consts:[["inputWrap",""],["input",""],["ngProjectAs","input",5,["input"],1,"input"],[1,"files-text"],[1,"placeholder"],["type","file"],[1,"bg-overlay"],["suffix",""]],template:function(t,i){t&1&&(aC(me),Qi(0,"sh-form-field"),cC(1,0,Fe),Qi(2,"div",2,0),aT(4,_e,2,1,"div",3)(5,ge,2,1,"div",3)(6,he,2,1,"div",4),vg(7,"input",5,1)(9,"div",6),$l(),Qi(10,"sh-icon",7),jC(11,"upload-simple"),$l()()),t&2&&(NC(i.fileUploadClasses()),CE(4),cT(i.files().length===1?4:i.files().length>1?5:6),CE(3),mg("multiple",i.multiple())("accept",i.accept()),CE(2),Yg("files-over",i.filesOver()));},dependencies:[Fe$1,N],styles:[`sh-file-upload{--fu-bg-active: rgba(0, 0, 0, .1);display:flex;flex-direction:column;gap:.75rem;position:relative;width:100%}sh-file-upload sh-list{border-radius:var(--shape-3);background-color:var(--base-2)}sh-file-upload .files-text,sh-file-upload .placeholder{color:var(--base-8);font:var(--paragraph-30B)}sh-file-upload input{position:absolute;opacity:0;inset:0;cursor:pointer;z-index:100}sh-file-upload .bg-overlay{opacity:0;position:absolute;inset:.0625rem;background-color:var(--fu-bg-active);transition:opacity 125ms linear;z-index:0;border-radius:var(--ff-s)}sh-file-upload .bg-overlay.files-over{opacity:1}
2
+ `],encapsulation:2});}}return n})();var Te=()=>["/"];function Ce(n,o){n&1&&(Qi(0,"sh-form-field")(1,"label",14),nC(2,3),$l(),vg(3,"input",15),CD(),$l()),n&2&&(CE(3),_D());}var d=new jn,M=class n{#t=T(fe$1);#i=T(be);#o=T(C);#n=T(g);#e=T(ee);isImporting=Ge(false);isSecureFile=Ge(false);isValid=Ge(false);importForm=d.group({config:d.control(""),cmdline:d.control(false),import_metadata:d.control(false),direct:d.control(false),passphrase:d.control("")});selectedFile=Ge([]);onFileDropped(o){let e=o[0];if(e){let t=new FileReader;this.isSecureFile.set(e.type!=="application/json"),t.onload=this.#a.bind(this),t.readAsArrayBuffer(e);}}#a(o){let e=o.target?.result;this.isSecureFile.set(this.#r(e)!=="json"),this.importForm.patchValue({config:this.#l(e)}),this.isValid.set(this.importForm.value.config!=="");}#r(o){let e=new Uint8Array(o);if(e.length>=5&&e[0]===65&&e[1]===69&&e[2]===83&&e[4]===0)return "aes";try{let t=new TextDecoder().decode(o),i=JSON.parse(t);if(typeof i=="object"&&i!==null)return "json"}catch{}return "unknown"}#l(o){let e=new Uint8Array(o),t=e.byteLength,i="";for(let s=0;s<t;s++)i+=String.fromCharCode(e[s]);return btoa(i)}submit(){this.isImporting.set(true);let o=this.importForm.value.direct??false;this.#o.postApiV1BackupsImport({requestBody:this.importForm.value}).pipe(qu(()=>this.isImporting.set(false))).subscribe({next:e=>{if(o){this.#t.success("Backup imported successfully."),this.#e.navigate(["/"]);return}let t=this.#n.addDraftBackup(e.data);this.#e.navigate(["/backup-draft",t]);},error:e=>{let t=e.message||$localize`Unknown error`;this.#i.open(h,{data:{title:$localize`Failed to import backup`,message:t,confirmText:$localize`OK`,cancelText:void 0}});}});}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=hw({type:n,selectors:[["app-import"]],decls:19,vars:8,consts:()=>{let o;o=$localize` Import backup configuration ${"\uFFFD#3\uFFFD"}:START_TAG_DIV:${"\uFFFD#4\uFFFD"}:START_TAG_BUTTON:${"[\uFFFD#5\uFFFD|\uFFFD#7\uFFFD]"}:START_TAG_SH_ICON:arrow-left${"[\uFFFD/#5\uFFFD|\uFFFD/#7\uFFFD]"}:CLOSE_TAG_SH_ICON: Back ${"[\uFFFD/#4\uFFFD|\uFFFD/#6\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD#6\uFFFD"}:START_TAG_BUTTON_1:${"[\uFFFD#5\uFFFD|\uFFFD#7\uFFFD]"}:START_TAG_SH_ICON:download-simple${"[\uFFFD/#5\uFFFD|\uFFFD/#7\uFFFD]"}:CLOSE_TAG_SH_ICON: Import ${"[\uFFFD/#4\uFFFD|\uFFFD/#6\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD/#3\uFFFD"}:CLOSE_TAG_DIV:`,o=oC(o);let e;e=$localize`Import Metadata`;let t;t=$localize`Save now`;let i;return i=$localize`Passphrase`,[o,e,t,i,[1,"actions"],["shButton","","type","button",1,"outlined",3,"routerLink"],["shButton","","type","submit",1,"raised","primary",3,"click","disabled"],["autocomplete","off",3,"formGroup"],["accept",".json,.aes",3,"filesChange","files"],[1,"primary","raised"],["for","importMetadata"],["type","checkbox","formControlName","import_metadata"],["for","direct"],["type","checkbox","formControlName","direct"],["for","passphrase"],["type","password","autocomplete","disabled","formControlName","passphrase"]]},template:function(e,t){e&1&&(Qi(0,"header")(1,"h3"),Lg(2,0),Qi(3,"div",4)(4,"button",5),vg(5,"sh-icon"),$l(),Qi(6,"button",6),Vg("click",function(){return t.submit()}),vg(7,"sh-icon"),$l()(),Fg(),$l()(),Qi(8,"form",7)(9,"sh-file-upload",8),Vg("filesChange",function(s){return t.onFileDropped(s)}),$l(),aT(10,Ce,4,0,"sh-form-field"),Qi(11,"sh-toggle",9)(12,"label",10),nC(13,1),$l(),vg(14,"input",11),CD(),$l(),Qi(15,"sh-toggle",9)(16,"label",12),nC(17,2),$l(),vg(18,"input",13),CD(),$l()()),e&2&&(CE(4),yg("routerLink",KC(7,Te)),CE(2),Yg("loading",t.isImporting()),yg("disabled",t.isImporting()||!t.isValid()),CE(2),yg("formGroup",t.importForm),CE(),yg("files",t.selectedFile()),CE(),cT(t.isSecureFile()?10:-1),CE(4),_D(),CE(4),_D());},dependencies:[Gn,Tn,Ze,yt,Rn,Pn,gn,hn,_t,Fe$1,N,v,J,ce],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;gap:2rem;padding:3rem}h3[_ngcontent-%COMP%]{font:var(--title-30);display:flex;align-items:center;justify-content:space-between}.actions[_ngcontent-%COMP%]{display:flex;gap:.5rem}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem;max-width:31.25rem}sh-file-upload[_ngcontent-%COMP%]{width:100%}"]})};export{M as default};
@@ -1,4 +1,4 @@
1
- import {L as L$1}from'./chunk-C7pjkqKB.js';import {T,ab as C$1,bq as je$1,br as x$1,aG as pt$1,d as dw,R as Bl,X as XT,W as $l,V as yg,D as DE,aq as Eg,aD as zC,aj as l,ai as m,bs as $p}from'./main-KFKZO6SJ.js';function j(){return {async:false,breaks:false,extensions:null,gfm:true,hooks:null,pedantic:false,renderer:null,silent:false,tokenizer:null,walkTokens:null}}var R=j();function Te(n){R=n;}var P={exec:()=>null};function p(n,e=""){let r=typeof n=="string"?n:n.source,s={replace:(t,l)=>{let i=typeof l=="string"?l:l.source;return i=i.replace(x.caret,"$1"),r=r.replace(t,i),s},getRegex:()=>new RegExp(r,e)};return s}var Ne=(()=>{try{return !!new RegExp("(?<=1)(?<!1)")}catch{return false}})(),x={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:n=>new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}#`),htmlBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}<(?:[a-z].*>|!--)`,"i")},Oe=/^(?:[ \t]*(?:\n|$))+/,Ze=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,De=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,E=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,Ge=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Q=/(?:[*+-]|\d{1,9}[.)])/,ze=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,Ae=p(ze).replace(/bull/g,Q).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),He=p(ze).replace(/bull/g,Q).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),F=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,je=/^[^\n]+/,U=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,Qe=p(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",U).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Fe=p(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Q).getRegex(),q="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",X=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,Ue=p("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",X).replace("tag",q).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),_e=p(F).replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",q).getRegex(),Xe=p(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",_e).getRegex(),W={blockquote:Xe,code:Ze,def:Qe,fences:De,heading:Ge,hr:E,html:Ue,lheading:Ae,list:Fe,newline:Oe,paragraph:_e,table:P,text:je},me=p("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",q).getRegex(),We=m(l({},W),{lheading:He,table:me,paragraph:p(F).replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",me).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",q).getRegex()}),Ve=m(l({},W),{html:p(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",X).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:P,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:p(F).replace("hr",E).replace("heading",` *#{1,6} *[^
1
+ import {L as L$1}from'./chunk-Box6Lckh.js';import {T,ab as C$1,br as je$1,bs as x$1,aG as pt$1,h as hw,P as Ul,n as nC,S as Wl,R as Ig,C as CE,aq as wg,aD as YC,aj as l,ai as m,bt as Gp}from'./main-VVQP2YE7.js';function j(){return {async:false,breaks:false,extensions:null,gfm:true,hooks:null,pedantic:false,renderer:null,silent:false,tokenizer:null,walkTokens:null}}var R=j();function Te(n){R=n;}var P={exec:()=>null};function p(n,e=""){let r=typeof n=="string"?n:n.source,s={replace:(t,l)=>{let i=typeof l=="string"?l:l.source;return i=i.replace(x.caret,"$1"),r=r.replace(t,i),s},getRegex:()=>new RegExp(r,e)};return s}var Ne=(()=>{try{return !!new RegExp("(?<=1)(?<!1)")}catch{return false}})(),x={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:n=>new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}#`),htmlBeginRegex:n=>new RegExp(`^ {0,${Math.min(3,n-1)}}<(?:[a-z].*>|!--)`,"i")},Oe=/^(?:[ \t]*(?:\n|$))+/,Ze=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,De=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,E=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,Ge=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Q=/(?:[*+-]|\d{1,9}[.)])/,ze=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,Ae=p(ze).replace(/bull/g,Q).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),He=p(ze).replace(/bull/g,Q).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),F=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,je=/^[^\n]+/,U=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,Qe=p(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",U).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Fe=p(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Q).getRegex(),q="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",X=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,Ue=p("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",X).replace("tag",q).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),_e=p(F).replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",q).getRegex(),Xe=p(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",_e).getRegex(),W={blockquote:Xe,code:Ze,def:Qe,fences:De,heading:Ge,hr:E,html:Ue,lheading:Ae,list:Fe,newline:Oe,paragraph:_e,table:P,text:je},me=p("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",q).getRegex(),We=m(l({},W),{lheading:He,table:me,paragraph:p(F).replace("hr",E).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",me).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",q).getRegex()}),Ve=m(l({},W),{html:p(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",X).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:P,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:p(F).replace("hr",E).replace("heading",` *#{1,6} *[^
2
2
  ]`).replace("lheading",Ae).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()}),Je=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Ke=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Ce=/^( {2,}|\\)\n(?!\s*$)/,Ye=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,N=/[\p{P}\p{S}]/u,V=/[\s\p{P}\p{S}]/u,Pe=/[^\s\p{P}\p{S}]/u,et=p(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,V).getRegex(),Ee=/(?!~)[\p{P}\p{S}]/u,tt=/(?!~)[\s\p{P}\p{S}]/u,rt=/(?:[^\s\p{P}\p{S}]|~)/u,nt=p(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",Ne?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),ve=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,st=p(ve,"u").replace(/punct/g,N).getRegex(),it=p(ve,"u").replace(/punct/g,Ee).getRegex(),Ie="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",lt=p(Ie,"gu").replace(/notPunctSpace/g,Pe).replace(/punctSpace/g,V).replace(/punct/g,N).getRegex(),at=p(Ie,"gu").replace(/notPunctSpace/g,rt).replace(/punctSpace/g,tt).replace(/punct/g,Ee).getRegex(),ot=p("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Pe).replace(/punctSpace/g,V).replace(/punct/g,N).getRegex(),ct=p(/\\(punct)/,"gu").replace(/punct/g,N).getRegex(),ht=p(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),pt=p(X).replace("(?:-->|$)","-->").getRegex(),ut=p("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",pt).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),L=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,gt=p(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",L).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Le=p(/^!?\[(label)\]\[(ref)\]/).replace("label",L).replace("ref",U).getRegex(),Be=p(/^!?\[(ref)\](?:\[\])?/).replace("ref",U).getRegex(),kt=p("reflink|nolink(?!\\()","g").replace("reflink",Le).replace("nolink",Be).getRegex(),we=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,J={_backpedal:P,anyPunctuation:ct,autolink:ht,blockSkip:nt,br:Ce,code:Ke,del:P,emStrongLDelim:st,emStrongRDelimAst:lt,emStrongRDelimUnd:ot,escape:Je,link:gt,nolink:Be,punctuation:et,reflink:Le,reflinkSearch:kt,tag:ut,text:Ye,url:P},dt=m(l({},J),{link:p(/^!?\[(label)\]\((.*?)\)/).replace("label",L).getRegex(),reflink:p(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",L).getRegex()}),D=m(l({},J),{emStrongRDelimAst:at,emStrongLDelim:it,url:p(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",we).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:p(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",we).getRegex()}),ft=m(l({},D),{br:p(Ce).replace("{2,}","*").getRegex(),text:p(D.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()}),I={normal:W,gfm:We,pedantic:Ve},A={normal:J,gfm:D,breaks:ft,pedantic:dt},xt={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},ye=n=>xt[n];function S(n,e){if(e){if(x.escapeTest.test(n))return n.replace(x.escapeReplace,ye)}else if(x.escapeTestNoEncode.test(n))return n.replace(x.escapeReplaceNoEncode,ye);return n}function Se(n){try{n=encodeURI(n).replace(x.percentDecode,"%");}catch{return null}return n}function $e(n,e){let r=n.replace(x.findPipe,(l,i,o)=>{let a=false,h=i;for(;--h>=0&&o[h]==="\\";)a=!a;return a?"|":" |"}),s=r.split(x.splitPipe),t=0;if(s[0].trim()||s.shift(),s.length>0&&!s.at(-1)?.trim()&&s.pop(),e)if(s.length>e)s.splice(e);else for(;s.length<e;)s.push("");for(;t<s.length;t++)s[t]=s[t].trim().replace(x.slashPipe,"|");return s}function _(n,e,r){let s=n.length;if(s===0)return "";let t=0;for(;t<s;){let l=n.charAt(s-t-1);if(l===e&&true)t++;else break}return n.slice(0,s-t)}function bt(n,e){if(n.indexOf(e[1])===-1)return -1;let r=0;for(let s=0;s<n.length;s++)if(n[s]==="\\")s++;else if(n[s]===e[0])r++;else if(n[s]===e[1]&&(r--,r<0))return s;return r>0?-2:-1}function Re(n,e,r,s,t){let l=e.href,i=e.title||null,o=n[1].replace(t.other.outputLinkReplace,"$1");s.state.inLink=true;let a={type:n[0].charAt(0)==="!"?"image":"link",raw:r,href:l,title:i,text:o,tokens:s.inlineTokens(o)};return s.state.inLink=false,a}function mt(n,e,r){let s=n.match(r.other.indentCodeCompensation);if(s===null)return e;let t=s[1];return e.split(`
3
3
  `).map(l=>{let i=l.match(r.other.beginningSpace);if(i===null)return l;let[o]=i;return o.length>=t.length?l.slice(t.length):l}).join(`
4
4
  `)}var B=class{options;rules;lexer;constructor(n){this.options=n||R;}space(n){let e=this.rules.block.newline.exec(n);if(e&&e[0].length>0)return {type:"space",raw:e[0]}}code(n){let e=this.rules.block.code.exec(n);if(e){let r=e[0].replace(this.rules.other.codeRemoveIndent,"");return {type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?r:_(r,`
@@ -57,5 +57,5 @@ ${n}</tr>
57
57
  `}tablecell(n){let e=this.parser.parseInline(n.tokens),r=n.header?"th":"td";return (n.align?`<${r} align="${n.align}">`:`<${r}>`)+e+`</${r}>
58
58
  `}strong({tokens:n}){return `<strong>${this.parser.parseInline(n)}</strong>`}em({tokens:n}){return `<em>${this.parser.parseInline(n)}</em>`}codespan({text:n}){return `<code>${S(n,true)}</code>`}br(n){return "<br>"}del({tokens:n}){return `<del>${this.parser.parseInline(n)}</del>`}link({href:n,title:e,tokens:r}){let s=this.parser.parseInline(r),t=Se(n);if(t===null)return s;n=t;let l='<a href="'+n+'"';return e&&(l+=' title="'+S(e)+'"'),l+=">"+s+"</a>",l}image({href:n,title:e,text:r,tokens:s}){s&&(r=this.parser.parseInline(s,this.parser.textRenderer));let t=Se(n);if(t===null)return S(r);n=t;let l=`<img src="${n}" alt="${r}"`;return e&&(l+=` title="${S(e)}"`),l+=">",l}text(n){return "tokens"in n&&n.tokens?this.parser.parseInline(n.tokens):"escaped"in n&&n.escaped?n.text:S(n.text)}},K=class{strong({text:n}){return n}em({text:n}){return n}codespan({text:n}){return n}del({text:n}){return n}html({text:n}){return n}text({text:n}){return n}link({text:n}){return ""+n}image({text:n}){return ""+n}br(){return ""}},y=class H{options;renderer;textRenderer;constructor(e){this.options=e||R,this.options.renderer=this.options.renderer||new M,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new K;}static parse(e,r){return new H(r).parse(e)}static parseInline(e,r){return new H(r).parseInline(e)}parse(e,r=true){let s="";for(let t=0;t<e.length;t++){let l=e[t];if(this.options.extensions?.renderers?.[l.type]){let o=l,a=this.options.extensions.renderers[o.type].call({parser:this},o);if(a!==false||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(o.type)){s+=a||"";continue}}let i=l;switch(i.type){case "space":{s+=this.renderer.space(i);continue}case "hr":{s+=this.renderer.hr(i);continue}case "heading":{s+=this.renderer.heading(i);continue}case "code":{s+=this.renderer.code(i);continue}case "table":{s+=this.renderer.table(i);continue}case "blockquote":{s+=this.renderer.blockquote(i);continue}case "list":{s+=this.renderer.list(i);continue}case "html":{s+=this.renderer.html(i);continue}case "def":{s+=this.renderer.def(i);continue}case "paragraph":{s+=this.renderer.paragraph(i);continue}case "text":{let o=i,a=this.renderer.text(o);for(;t+1<e.length&&e[t+1].type==="text";)o=e[++t],a+=`
59
59
  `+this.renderer.text(o);r?s+=this.renderer.paragraph({type:"paragraph",raw:a,text:a,tokens:[{type:"text",raw:a,text:a,escaped:true}]}):s+=a;continue}default:{let o='Token with "'+i.type+'" type was not found.';if(this.options.silent)return console.error(o),"";throw new Error(o)}}}return s}parseInline(e,r=this.renderer){let s="";for(let t=0;t<e.length;t++){let l=e[t];if(this.options.extensions?.renderers?.[l.type]){let o=this.options.extensions.renderers[l.type].call({parser:this},l);if(o!==false||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(l.type)){s+=o||"";continue}}let i=l;switch(i.type){case "escape":{s+=r.text(i);break}case "html":{s+=r.html(i);break}case "link":{s+=r.link(i);break}case "image":{s+=r.image(i);break}case "strong":{s+=r.strong(i);break}case "em":{s+=r.em(i);break}case "codespan":{s+=r.codespan(i);break}case "br":{s+=r.br(i);break}case "del":{s+=r.del(i);break}case "text":{s+=r.text(i);break}default:{let o='Token with "'+i.type+'" type was not found.';if(this.options.silent)return console.error(o),"";throw new Error(o)}}}return s}},C=class{options;block;constructor(n){this.options=n||R;}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens","emStrongMask"]);static passThroughHooksRespectAsync=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(n){return n}postprocess(n){return n}processAllTokens(n){return n}emStrongMask(n){return n}provideLexer(){return this.block?w.lex:w.lexInline}provideParser(){return this.block?y.parse:y.parseInline}},wt=class{defaults=j();options=this.setOptions;parse=this.parseMarkdown(true);parseInline=this.parseMarkdown(false);Parser=y;Renderer=M;TextRenderer=K;Lexer=w;Tokenizer=B;Hooks=C;constructor(...n){this.use(...n);}walkTokens(n,e){let r=[];for(let s of n)switch(r=r.concat(e.call(this,s)),s.type){case "table":{let t=s;for(let l of t.header)r=r.concat(this.walkTokens(l.tokens,e));for(let l of t.rows)for(let i of l)r=r.concat(this.walkTokens(i.tokens,e));break}case "list":{let t=s;r=r.concat(this.walkTokens(t.items,e));break}default:{let t=s;this.defaults.extensions?.childTokens?.[t.type]?this.defaults.extensions.childTokens[t.type].forEach(l=>{let i=t[l].flat(1/0);r=r.concat(this.walkTokens(i,e));}):t.tokens&&(r=r.concat(this.walkTokens(t.tokens,e)));}}return r}use(...n){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return n.forEach(r=>{let s=l({},r);if(s.async=this.defaults.async||s.async||false,r.extensions&&(r.extensions.forEach(t=>{if(!t.name)throw new Error("extension name required");if("renderer"in t){let l=e.renderers[t.name];l?e.renderers[t.name]=function(...i){let o=t.renderer.apply(this,i);return o===false&&(o=l.apply(this,i)),o}:e.renderers[t.name]=t.renderer;}if("tokenizer"in t){if(!t.level||t.level!=="block"&&t.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let l=e[t.level];l?l.unshift(t.tokenizer):e[t.level]=[t.tokenizer],t.start&&(t.level==="block"?e.startBlock?e.startBlock.push(t.start):e.startBlock=[t.start]:t.level==="inline"&&(e.startInline?e.startInline.push(t.start):e.startInline=[t.start]));}"childTokens"in t&&t.childTokens&&(e.childTokens[t.name]=t.childTokens);}),s.extensions=e),r.renderer){let t=this.defaults.renderer||new M(this.defaults);for(let l in r.renderer){if(!(l in t))throw new Error(`renderer '${l}' does not exist`);if(["options","parser"].includes(l))continue;let i=l,o=r.renderer[i],a=t[i];t[i]=(...h)=>{let c=o.apply(t,h);return c===false&&(c=a.apply(t,h)),c||""};}s.renderer=t;}if(r.tokenizer){let t=this.defaults.tokenizer||new B(this.defaults);for(let l in r.tokenizer){if(!(l in t))throw new Error(`tokenizer '${l}' does not exist`);if(["options","rules","lexer"].includes(l))continue;let i=l,o=r.tokenizer[i],a=t[i];t[i]=(...h)=>{let c=o.apply(t,h);return c===false&&(c=a.apply(t,h)),c};}s.tokenizer=t;}if(r.hooks){let t=this.defaults.hooks||new C;for(let l in r.hooks){if(!(l in t))throw new Error(`hook '${l}' does not exist`);if(["options","block"].includes(l))continue;let i=l,o=r.hooks[i],a=t[i];C.passThroughHooks.has(l)?t[i]=h=>{if(this.defaults.async&&C.passThroughHooksRespectAsync.has(l))return (async()=>{let k=await o.call(t,h);return a.call(t,k)})();let c=o.call(t,h);return a.call(t,c)}:t[i]=(...h)=>{if(this.defaults.async)return (async()=>{let k=await o.apply(t,h);return k===false&&(k=await a.apply(t,h)),k})();let c=o.apply(t,h);return c===false&&(c=a.apply(t,h)),c};}s.hooks=t;}if(r.walkTokens){let t=this.defaults.walkTokens,l=r.walkTokens;s.walkTokens=function(i){let o=[];return o.push(l.call(this,i)),t&&(o=o.concat(t.call(this,i))),o};}this.defaults=l(l({},this.defaults),s);}),this}setOptions(n){return this.defaults=l(l({},this.defaults),n),this}lexer(n,e){return w.lex(n,e??this.defaults)}parser(n,e){return y.parse(n,e??this.defaults)}parseMarkdown(n){return (e,r)=>{let s=l({},r),t=l(l({},this.defaults),s),l$1=this.onError(!!t.silent,!!t.async);if(this.defaults.async===true&&s.async===false)return l$1(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof e>"u"||e===null)return l$1(new Error("marked(): input parameter is undefined or null"));if(typeof e!="string")return l$1(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected"));if(t.hooks&&(t.hooks.options=t,t.hooks.block=n),t.async)return (async()=>{let i=t.hooks?await t.hooks.preprocess(e):e,o=await(t.hooks?await t.hooks.provideLexer():n?w.lex:w.lexInline)(i,t),a=t.hooks?await t.hooks.processAllTokens(o):o;t.walkTokens&&await Promise.all(this.walkTokens(a,t.walkTokens));let h=await(t.hooks?await t.hooks.provideParser():n?y.parse:y.parseInline)(a,t);return t.hooks?await t.hooks.postprocess(h):h})().catch(l$1);try{t.hooks&&(e=t.hooks.preprocess(e));let i=(t.hooks?t.hooks.provideLexer():n?w.lex:w.lexInline)(e,t);t.hooks&&(i=t.hooks.processAllTokens(i)),t.walkTokens&&this.walkTokens(i,t.walkTokens);let o=(t.hooks?t.hooks.provideParser():n?y.parse:y.parseInline)(i,t);return t.hooks&&(o=t.hooks.postprocess(o)),o}catch(i){return l$1(i)}}}onError(n,e){return r=>{if(r.message+=`
60
- Please report this to https://github.com/markedjs/marked.`,n){let s="<p>An error occurred:</p><pre>"+S(r.message+"",true)+"</pre>";return e?Promise.resolve(s):s}if(e)return Promise.reject(r);throw r}}},$=new wt;function g(n,e){return $.parse(n,e)}g.options=g.setOptions=function(n){return $.setOptions(n),g.defaults=$.defaults,Te(g.defaults),g};g.getDefaults=j;g.defaults=R;g.use=function(...n){return $.use(...n),g.defaults=$.defaults,Te(g.defaults),g};g.walkTokens=function(n,e){return $.walkTokens(n,e)};g.parseInline=$.parseInline;g.Parser=y;g.parser=y.parse;g.Renderer=M;g.TextRenderer=K;g.Lexer=w;g.lexer=w.lex;g.Tokenizer=B;g.Hooks=C;g.parse=g;g.options;g.setOptions;g.use;g.walkTokens;g.parseInline;y.parse;w.lex;var Y=new x$1("Marked"),Me={provide:Y,useFactory:()=>g};var ee=class n{#e=T(C$1);#t=T(je$1);#r=T(Y);changelog=L$1(this.#e.getApiV1Changelog().pipe(pt$1(e=>{let s=this.#t.bypassSecurityTrustHtml(e.Changelog??"").toString();return s.startsWith("SafeValue must use [property]=binding: ")&&(s=s.replace("SafeValue must use [property]=binding: ","")),this.#r.parse(s.replace(/^[\u200B\u200C\u200D\u200E\u200F\uFEFF]/,""))})));static \u0275fac=function(r){return new(r||n)};static \u0275cmp=dw({type:n,selectors:[["app-changelog"]],features:[zC([Me])],decls:3,vars:1,consts:()=>{let e;return e=$localize`Changelog`,[e,[1,"markdown-output",3,"innerHTML"]]},template:function(r,s){r&1&&(Bl(0,"h3"),XT(1,0),$l(),yg(2,"div",1)),r&2&&(DE(2),Eg("innerHTML",s.changelog(),$p));},styles:["[_nghost-%COMP%]{display:block;padding:0 2.5rem}h3[_ngcontent-%COMP%]{font:var(--title-30);margin:0 0 1.25rem}"]})};
60
+ Please report this to https://github.com/markedjs/marked.`,n){let s="<p>An error occurred:</p><pre>"+S(r.message+"",true)+"</pre>";return e?Promise.resolve(s):s}if(e)return Promise.reject(r);throw r}}},$=new wt;function g(n,e){return $.parse(n,e)}g.options=g.setOptions=function(n){return $.setOptions(n),g.defaults=$.defaults,Te(g.defaults),g};g.getDefaults=j;g.defaults=R;g.use=function(...n){return $.use(...n),g.defaults=$.defaults,Te(g.defaults),g};g.walkTokens=function(n,e){return $.walkTokens(n,e)};g.parseInline=$.parseInline;g.Parser=y;g.parser=y.parse;g.Renderer=M;g.TextRenderer=K;g.Lexer=w;g.lexer=w.lex;g.Tokenizer=B;g.Hooks=C;g.parse=g;g.options;g.setOptions;g.use;g.walkTokens;g.parseInline;y.parse;w.lex;var Y=new x$1("Marked"),Me={provide:Y,useFactory:()=>g};var ee=class n{#e=T(C$1);#t=T(je$1);#r=T(Y);changelog=L$1(this.#e.getApiV1Changelog().pipe(pt$1(e=>{let s=this.#t.bypassSecurityTrustHtml(e.Changelog??"").toString();return s.startsWith("SafeValue must use [property]=binding: ")&&(s=s.replace("SafeValue must use [property]=binding: ","")),this.#r.parse(s.replace(/^[\u200B\u200C\u200D\u200E\u200F\uFEFF]/,""))})));static \u0275fac=function(r){return new(r||n)};static \u0275cmp=hw({type:n,selectors:[["app-changelog"]],features:[YC([Me])],decls:3,vars:1,consts:()=>{let e;return e=$localize`Changelog`,[e,[1,"markdown-output",3,"innerHTML"]]},template:function(r,s){r&1&&(Ul(0,"h3"),nC(1,0),Wl(),Ig(2,"div",1)),r&2&&(CE(2),wg("innerHTML",s.changelog(),Gp));},styles:["[_nghost-%COMP%]{display:block;padding:0 2.5rem}h3[_ngcontent-%COMP%]{font:var(--title-30);margin:0 0 1.25rem}"]})};
61
61
  export{ee as default};
@@ -1 +1 @@
1
- import {w}from'./chunk-BYJA6sbi.js';import {e as ee}from'./chunk-B0RBkC1E.js';import'./chunk-BB1pOOUx.js';import'./chunk-DN6f5jXR.js';import'./chunk-3RXp81pP.js';import'./chunk-CT9ziigM.js';import'./chunk-D5lj-fQk.js';import'./chunk-OLi7f6y7.js';import'./chunk-B2TXzbpy.js';import {d as dw,Z as lr,_ as _t,a8 as To,j as mg,Q as Qi,X as XT,H as Hl}from'./main-KFKZO6SJ.js';import'./chunk-CRAg6SRo.js';import'./chunk-DuIUmwWN.js';import'./chunk-DipTNkHN.js';import'./chunk-Fw6nFDZK.js';import'./chunk-Ca1C9pJ0.js';import'./chunk-C-NgIZiF.js';import'./chunk-PVmXLw9b.js';import'./chunk-C7pjkqKB.js';var l=class s{static \u0275fac=function(o){return new(o||s)};static \u0275cmp=dw({type:s,selectors:[["app-about"]],decls:19,vars:0,consts:()=>{let i;i=$localize`General`;let o;o=$localize`Changelog`;let r;r=$localize`Libraries`;let C;C=$localize`System info`;let a;a=$localize`Server settings`;let E;E=$localize`Logs`;let O;return O=$localize`Crash log`,[i,o,r,C,a,E,O,[1,"content"],[1,"primary"],["tab","","routerLink","/about/general","routerLinkActive","active"],["tab","","routerLink","/about/changelog","routerLinkActive","active"],["tab","","routerLink","/about/libraries","routerLinkActive","active"],["tab","","routerLink","/about/system-info","routerLinkActive","active"],["tab","","routerLink","/about/server-settings","routerLinkActive","active"],["tab","","routerLink","/about/logs","routerLinkActive","active"],["tab","","routerLink","/about/crashlogs","routerLinkActive","active"]]},template:function(o,r){o&1&&(mg(0,"app-status-bar"),Qi(1,"div",7)(2,"sh-tabs",8)(3,"button",9),XT(4,0),Hl(),Qi(5,"button",10),XT(6,1),Hl(),Qi(7,"button",11),XT(8,2),Hl(),Qi(9,"button",12),XT(10,3),Hl(),Qi(11,"button",13),XT(12,4),Hl(),Qi(13,"button",14),XT(14,5),Hl(),Qi(15,"button",15),XT(16,6),Hl()(),Qi(17,"section"),mg(18,"router-outlet"),Hl()());},dependencies:[ee,w,lr,_t,To],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;gap:0}.content[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:1rem 0}.content[_ngcontent-%COMP%] sh-tabs[_ngcontent-%COMP%]{margin:0 2rem 2rem}.content[_ngcontent-%COMP%] section[_ngcontent-%COMP%]{padding:0}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:2rem}"]})};export{l as default};
1
+ import {w}from'./chunk-CHzwXmsn.js';import {e as ee}from'./chunk-C4GeR7BF.js';import'./chunk-CUaRQ2FJ.js';import'./chunk-aOMoAKYY.js';import'./chunk-BEhUV7oX.js';import'./chunk-Bb6BmVO4.js';import'./chunk-DmDqcC4A.js';import'./chunk-B53Wj4F9.js';import'./chunk-BTgf5lfZ.js';import {h as hw,Z as lr,_ as _t,a8 as To,j as vg,Q as Qi,n as nC,$ as $l}from'./main-VVQP2YE7.js';import'./chunk-B8uF0dom.js';import'./chunk-B9maI7Xa.js';import'./chunk-BO2GlieG.js';import'./chunk-CKnRcyHZ.js';import'./chunk-CwKy8pxa.js';import'./chunk-BVEyeg9y.js';import'./chunk-DqIU7ViF.js';import'./chunk-Box6Lckh.js';var l=class s{static \u0275fac=function(o){return new(o||s)};static \u0275cmp=hw({type:s,selectors:[["app-about"]],decls:19,vars:0,consts:()=>{let i;i=$localize`General`;let o;o=$localize`Changelog`;let r;r=$localize`Libraries`;let C;C=$localize`System info`;let a;a=$localize`Server settings`;let E;E=$localize`Logs`;let O;return O=$localize`Crash log`,[i,o,r,C,a,E,O,[1,"content"],[1,"primary"],["tab","","routerLink","/about/general","routerLinkActive","active"],["tab","","routerLink","/about/changelog","routerLinkActive","active"],["tab","","routerLink","/about/libraries","routerLinkActive","active"],["tab","","routerLink","/about/system-info","routerLinkActive","active"],["tab","","routerLink","/about/server-settings","routerLinkActive","active"],["tab","","routerLink","/about/logs","routerLinkActive","active"],["tab","","routerLink","/about/crashlogs","routerLinkActive","active"]]},template:function(o,r){o&1&&(vg(0,"app-status-bar"),Qi(1,"div",7)(2,"sh-tabs",8)(3,"button",9),nC(4,0),$l(),Qi(5,"button",10),nC(6,1),$l(),Qi(7,"button",11),nC(8,2),$l(),Qi(9,"button",12),nC(10,3),$l(),Qi(11,"button",13),nC(12,4),$l(),Qi(13,"button",14),nC(14,5),$l(),Qi(15,"button",15),nC(16,6),$l()(),Qi(17,"section"),vg(18,"router-outlet"),$l()());},dependencies:[ee,w,lr,_t,To],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;gap:0}.content[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:1rem 0}.content[_ngcontent-%COMP%] sh-tabs[_ngcontent-%COMP%]{margin:0 2rem 2rem}.content[_ngcontent-%COMP%] section[_ngcontent-%COMP%]{padding:0}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:2rem}"]})};export{l as default};
@@ -0,0 +1 @@
1
+ import {e as ee}from'./chunk-C4GeR7BF.js';import'./chunk-CUaRQ2FJ.js';import'./chunk-aOMoAKYY.js';import'./chunk-BEhUV7oX.js';import'./chunk-Bb6BmVO4.js';import'./chunk-DmDqcC4A.js';import'./chunk-B53Wj4F9.js';import'./chunk-BTgf5lfZ.js';import {T,ab as C,aw as W,N as Nt,G as Ge,E as D1,a_ as S1,h as hw,d as N,v,_ as _t,j as vg,Q as Qi,L as Lg,F as Fg,$ as $l,V as Vg,f as aT,a1 as dT,C as CE,A as yg,a$ as JC,i as cT,a2 as fT,o as oC,W as Wg,K as fC,n as nC,w as jC,aa as Ql,ap as lT}from'./main-VVQP2YE7.js';import'./chunk-B8uF0dom.js';import'./chunk-B9maI7Xa.js';import'./chunk-BO2GlieG.js';import'./chunk-CKnRcyHZ.js';import'./chunk-CwKy8pxa.js';import'./chunk-BVEyeg9y.js';import {L}from'./chunk-Box6Lckh.js';import'./chunk-DqIU7ViF.js';var G=["logOutput"],K=n=>({state:n});function w(n,t){n&1&&nC(0,3,1);}function x(n,t){n&1&&nC(0,3,2);}function q(n,t){n&1&&nC(0,3,3);}function H(n,t){n&1&&nC(0,3,4);}function J(n,t){if(n&1&&(jC(0),vg(1,"br")),n&2){let e=t.$implicit;Ql(" ",e," ");}}var p=class n{#t=T(C);#e=T(W);#n=L(this.#e.params);#o=L(this.#e.queryParams);runId=Nt(()=>this.#n()?.runId);stateId=Nt(()=>this.#o()?.state);offset=Ge(0);status=Ge("starting");messageLog=Ge([]);logOutput=D1.required("logOutput");autoScrollEnabled=Ge(true);scrollToBottomEffect=S1(()=>{if(this.messageLog(),!this.autoScrollEnabled())return;let t=this.logOutput().nativeElement;t.scrollTop=t.scrollHeight;});interval=setInterval(()=>{this.#t.getApiV1CommandlineByRunid({runid:this.runId(),offset:this.offset(),pagesize:100}).subscribe(t=>{this.offset.set(t.Count),this.evalStatus(t),this.messageLog.update(e=>[...e,...t.Items]);});},1e3);evalStatus(t){t.Started===true&&t.Finished===true&&(this.status.set("finished"),clearInterval(this.interval)),t.Started===true&&t.Finished===false&&this.status.set("started");}updateAutoScroll(){let t=this.logOutput().nativeElement,e=t.scrollHeight-t.scrollTop-t.clientHeight;this.autoScrollEnabled.set(e<=2);}abort(){this.#t.postApiV1CommandlineByRunidAbort({runid:this.runId()}).subscribe({next:t=>{this.status.set("aborted"),clearInterval(this.interval);}});}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=hw({type:n,selectors:[["app-commandline-result"]],viewQuery:function(e,o){e&1&&Wg(o.logOutput,G,5),e&2&&fC();},decls:19,vars:7,consts:()=>{let t;t=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SH_ICON:arrow-left${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SH_ICON: Back `;let e;e=$localize` Running commandline task... ${"\uFFFD#8\uFFFD"}:START_TAG_BUTTON:Abort${"\uFFFD/#8\uFFFD"}:CLOSE_TAG_BUTTON:`;let o;return o=$localize`${"\uFFFD*11:1\uFFFD"}:START_BLOCK_IF: Starting... ${"[\uFFFD/*11:1\uFFFD|\uFFFD/*12:2\uFFFD|\uFFFD/*13:3\uFFFD|\uFFFD/*14:4\uFFFD]"}:CLOSE_BLOCK_IF:${"\uFFFD*12:2\uFFFD"}:START_BLOCK_IF_1: Started! ${"[\uFFFD/*11:1\uFFFD|\uFFFD/*12:2\uFFFD|\uFFFD/*13:3\uFFFD|\uFFFD/*14:4\uFFFD]"}:CLOSE_BLOCK_IF:${"\uFFFD*13:3\uFFFD"}:START_BLOCK_IF_2: Finished! ${"[\uFFFD/*11:1\uFFFD|\uFFFD/*12:2\uFFFD|\uFFFD/*13:3\uFFFD|\uFFFD/*14:4\uFFFD]"}:CLOSE_BLOCK_IF:${"\uFFFD*14:4\uFFFD"}:START_BLOCK_IF_3: Aborted! ${"[\uFFFD/*11:1\uFFFD|\uFFFD/*12:2\uFFFD|\uFFFD/*13:3\uFFFD|\uFFFD/*14:4\uFFFD]"}:CLOSE_BLOCK_IF:`,o=oC(o),[["logOutput",""],t,e,o,[1,"back"],["type","button","shButton","","routerLink","../",1,"small",3,"queryParams"],["type","button","shButton","",1,"small",3,"click"],[1,"status"],[3,"scroll"]]},template:function(e,o){e&1&&(vg(0,"app-status-bar"),Qi(1,"section")(2,"div",4)(3,"button",5),Lg(4,1),vg(5,"sh-icon"),Fg(),$l()(),Qi(6,"h3"),Lg(7,2),Qi(8,"button",6),Vg("click",function(){return o.abort()}),$l(),Fg(),$l(),Qi(9,"div",7),Lg(10,3),aT(11,w,1,0),aT(12,x,1,0),aT(13,q,1,0),aT(14,H,1,0),Fg(),$l(),Qi(15,"code",8,0),Vg("scroll",function(){return o.updateAutoScroll()}),dT(17,J,2,1,null,null,lT),$l()()),e&2&&(CE(3),yg("queryParams",JC(5,K,o.stateId())),CE(8),cT(o.status()==="starting"?11:-1),CE(),cT(o.status()==="started"?12:-1),CE(),cT(o.status()==="finished"?13:-1),CE(),cT(o.status()==="aborted"?14:-1),CE(3),fT(o.messageLog()));},dependencies:[ee,N,v,_t],styles:["[_nghost-%COMP%]{display:block;height:100%;min-height:0;width:100%}section[_ngcontent-%COMP%]{box-sizing:border-box;display:flex;flex-direction:column;height:100%;min-height:0;width:100%;padding:2.5rem;gap:1.25rem}code[_ngcontent-%COMP%]{background:color-mix(in srgb,var(--base-8),#000 70%);color:#fff;padding:2.5rem 2.5rem 2.5rem 1.5rem;border-radius:var(--shape-3);flex:1 1 auto;min-height:0;overflow:auto;white-space:pre}"]})};export{p as default};
@@ -0,0 +1,2 @@
1
+ import {w}from'./chunk-Cg09iQR5.js';import {T,e as ee,B as v,D as A,G as Ge,E as D1,z as za,H as qu,h as hw,d as N,v as v$1,u as ue,Q as Qi,V as Vg,f as aT,j as vg,$ as $l,L as Lg,F as Fg,s as CD,w as jC,A as yg,C as CE,i as cT,y as _D,J as om,Y as Yg,W as Wg,K as fC,n as nC}from'./main-VVQP2YE7.js';import {F as Fe}from'./chunk-B9maI7Xa.js';import {j as jn,m as me,G as Gn,T as Tn,Z as Ze,y as yt,R as Rn,P as Pn,g as gn,h as hn}from'./chunk-BO2GlieG.js';import {U}from'./chunk-DqIU7ViF.js';var Y=["passwordInput"];function Z(l,n){l&1&&(Qi(0,"sh-alert",6),nC(1,4),$l());}var h=new jn,C=class l{#e=T(ee);#n=T(v);rememberMe=A("rememberMe",false,true);failedLogin=Ge(false);successLogin=Ge(false);isLoading=Ge(false);loginForm=h.group({pass:h.control("",me.required),rememberMe:h.control(this.rememberMe())});showPassword=Ge(false);passwordInput=D1("passwordInput");passwordEffect=za(()=>{this.failedLogin()&&queueMicrotask(()=>this.passwordInput()?.nativeElement?.focus());});ngOnInit(){this.loginForm.controls.rememberMe.valueChanges.subscribe(n=>this.rememberMe.set(n??false)),queueMicrotask(()=>this.passwordInput()?.nativeElement?.focus());}submit(){let n=this.loginForm.value.pass;this.rememberMe.set(this.loginForm.value.rememberMe??false),n&&(this.isLoading.set(true),this.#n.login(n,this.rememberMe()).pipe(qu(()=>{this.isLoading.set(false),this.failedLogin.set(true);})).subscribe({next:()=>{this.successLogin.set(true),this.#e.navigate(["/"]);}}));}static \u0275fac=function(o){return new(o||l)};static \u0275cmp=hw({type:l,selectors:[["app-login"]],viewQuery:function(o,e){o&1&&Wg(e.passwordInput,Y,5),o&2&&fC();},decls:23,vars:6,consts:()=>{let n;n=$localize`Enter your password`;let o;o=$localize` Password ${"\uFFFD#9\uFFFD"}:START_LINK:${"\uFFFD#10\uFFFD"}:START_TAG_SH_ICON:question${"\uFFFD/#10\uFFFD"}:CLOSE_TAG_SH_ICON:${"\uFFFD/#9\uFFFD"}:CLOSE_LINK:`;let e;e=$localize` Login ${"\uFFFD#17\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#17\uFFFD"}:CLOSE_TAG_SH_ICON:`;let m;m=$localize` Keep me logged in ${"\uFFFD#20\uFFFD\uFFFD/#20\uFFFD"}:TAG_INPUT:`;let N;return N=$localize` Remember to enter a password, if you can't remember the password open the duplicati client on the machine in question and make sure you open it through the tray icon then go into settings to change the password. `,[["passwordInput",""],o,e,m,N,[3,"submit","formGroup"],["type","warning"],[1,"logo-login"],[1,"inner"],[1,"login-row"],["for","password"],["href","https://docs.duplicati.com/configuration-and-management/duplicati-access-password#access-from-the-trayicon","target","_blank","rel","noopener noreferrer"],["name","password","autocomplete","current-password","placeholder",n,"tabindex","1","formControlName","pass",3,"type"],["suffix","",3,"click"],["shButton","","type","submit",1,"raised","primary","login-button"],[1,"raised","primary"],["type","checkbox","id","rememberMe","tabindex","2","formControlName","rememberMe"],[1,"login-row","checkbox"],["for","rememberMe",1,"remember-me"]]},template:function(o,e){o&1&&(Qi(0,"form",5),Vg("submit",function(){return e.submit()}),aT(1,Z,2,0,"sh-alert",6),Qi(2,"div",7),vg(3,"app-logo"),$l(),Qi(4,"div",8)(5,"div",9)(6,"sh-form-field")(7,"label",10),Lg(8,1),Qi(9,"a",11),vg(10,"sh-icon"),$l(),Fg(),$l(),vg(11,"input",12,0),CD(),Qi(13,"sh-icon",13),Vg("click",function(){return e.showPassword.set(!e.showPassword())}),jC(14),$l()(),Qi(15,"button",14),Lg(16,2),vg(17,"sh-icon"),Fg(),$l()(),Qi(18,"sh-checkbox",15),Lg(19,3),vg(20,"input",16),CD(),Fg(),$l(),Qi(21,"div",17),vg(22,"label",18),$l()()()),o&2&&(yg("formGroup",e.loginForm),CE(),cT(e.failedLogin()&&!e.successLogin()?1:-1),CE(10),yg("type",e.showPassword()?"text":"password"),_D(),CE(3),om(e.showPassword()?"eye":"eye-slash"),CE(),Yg("loading",e.isLoading()),CE(5),_D());},dependencies:[Gn,Tn,Ze,yt,Rn,Pn,gn,hn,w,Fe,N,v$1,ue,U],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{width:100vw;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem}form[_ngcontent-%COMP%] .inner[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:1rem}form[_ngcontent-%COMP%] .inner[_ngcontent-%COMP%] .checkbox[_ngcontent-%COMP%]{align-self:flex-start}sh-alert[_ngcontent-%COMP%]{max-width:20rem;margin:0 auto}h3[_ngcontent-%COMP%]{font:var(--title-30)}.login-row[_ngcontent-%COMP%]{display:flex;align-items:flex-end;gap:.5rem}.logo-login[_ngcontent-%COMP%]{top:0;left:0;padding:1.25rem;position:fixed}.login-button[_ngcontent-%COMP%]{padding-left:1.5rem;padding-right:1.5rem}"]})};
2
+ export{C as default};