@duplicati/ngclient 0.0.124 → 0.0.131

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 (212) hide show
  1. package/assets/spk.woff2 +0 -0
  2. package/chunk-3IRKJXHE.js +6 -0
  3. package/chunk-3KIPRGE2.js +1 -0
  4. package/chunk-3PYBMCOB.js +1 -0
  5. package/chunk-4D2NUH5S.js +1 -0
  6. package/chunk-5PEBIF7G.js +1 -0
  7. package/chunk-5ZODA7EN.js +1 -0
  8. package/{chunk-XUPWJEL7.js → chunk-76QLZQIX.js} +1 -1
  9. package/chunk-7LEXBIXG.js +1 -0
  10. package/{chunk-VZBWK3XF.js → chunk-ABF3SFY5.js} +1 -1
  11. package/chunk-AGU2PEL5.js +1 -0
  12. package/{chunk-6EWRKJSC.js → chunk-B5FKLIHW.js} +1 -1
  13. package/chunk-BISTLAYK.js +1 -0
  14. package/chunk-CPQOWCF6.js +2 -0
  15. package/chunk-CTRHZCKS.js +1 -0
  16. package/chunk-CYLI6ZJ3.js +1 -0
  17. package/chunk-D6CQCWWK.js +1 -0
  18. package/chunk-DDV32SDB.js +1 -0
  19. package/chunk-DM2VSIZA.js +1 -0
  20. package/chunk-E4Z6XEMU.js +1 -0
  21. package/chunk-EKZRKTLM.js +1 -0
  22. package/chunk-EUDKD2JW.js +1 -0
  23. package/{chunk-OQPUBCLB.js → chunk-F74MXVWD.js} +1 -1
  24. package/chunk-FLMFEFKM.js +1 -0
  25. package/chunk-FO4W6SOP.js +1 -0
  26. package/chunk-FPLBURO5.js +1 -0
  27. package/chunk-FWVOVJCG.js +2 -0
  28. package/chunk-FWZV4DTQ.js +2 -0
  29. package/chunk-GGT3NXAX.js +1 -0
  30. package/chunk-GU7U3EFF.js +1 -0
  31. package/chunk-GW37Y5Z7.js +1 -0
  32. package/{chunk-S75WBVE3.js → chunk-HWCTRSCV.js} +1 -1
  33. package/chunk-IAE5MH6W.js +1 -0
  34. package/{chunk-DLJSVAM2.js → chunk-JWFYA3TO.js} +1 -1
  35. package/{chunk-4V45XF67.js → chunk-K5AQUIEE.js} +1 -1
  36. package/{chunk-KPH4ZAFT.js → chunk-K5P3KNHL.js} +1 -1
  37. package/chunk-K6EZTPNQ.js +7 -0
  38. package/chunk-KA4H3PM5.js +1 -0
  39. package/chunk-KQAO2YHR.js +1 -0
  40. package/chunk-KU6D4KVX.js +1 -0
  41. package/{chunk-GQGMGFDX.js → chunk-KV7SEZ24.js} +1 -1
  42. package/chunk-LPSXYSH2.js +1 -0
  43. package/{chunk-QUOBR5MG.js → chunk-LQ2PCH6Q.js} +1 -1
  44. package/chunk-LXOONGVP.js +1 -0
  45. package/chunk-LZGUK3CQ.js +2 -0
  46. package/chunk-MHALSLG3.js +1 -0
  47. package/chunk-MXNLMTFY.js +1 -0
  48. package/{chunk-HIW2CN45.js → chunk-N334RUEQ.js} +1 -1
  49. package/chunk-OMZ3W4RW.js +1 -0
  50. package/{chunk-6DNRCK5D.js → chunk-P45GAY6A.js} +1 -1
  51. package/chunk-P4ZYFRD3.js +1 -0
  52. package/chunk-Q3ILJYED.js +1 -0
  53. package/{chunk-ED7PHXLX.js → chunk-Q5QHAGHB.js} +1 -1
  54. package/chunk-R3TWV35H.js +4 -0
  55. package/chunk-R43ZLOB3.js +1 -0
  56. package/chunk-RFBJR3ZC.js +1 -0
  57. package/chunk-RVLLX2SW.js +1 -0
  58. package/chunk-RZWJA6W3.js +3 -0
  59. package/chunk-TOP2X7ZJ.js +1 -0
  60. package/chunk-TUOSYDUU.js +1 -0
  61. package/chunk-U4OAPG74.js +2 -0
  62. package/chunk-UFZFKKK7.js +1 -0
  63. package/chunk-UHRBTTCA.js +1 -0
  64. package/chunk-UIC4BWTY.js +1 -0
  65. package/chunk-UUG7G5LZ.js +1 -0
  66. package/chunk-UVLJAD66.js +1 -0
  67. package/chunk-UYWLCW5G.js +1 -0
  68. package/chunk-VKD4Y3YQ.js +1 -0
  69. package/chunk-VNYGRDVP.js +1 -0
  70. package/chunk-W2XSKJJ5.js +1 -0
  71. package/chunk-WIDMAJIO.js +1 -0
  72. package/{chunk-M5RL4LRX.js → chunk-WIJ3HW7I.js} +1 -1
  73. package/chunk-WWHML7QK.js +56 -0
  74. package/chunk-WY2KPAVB.js +1 -0
  75. package/chunk-XD26KCAE.js +1 -0
  76. package/chunk-XHQO75TB.js +1 -0
  77. package/chunk-XOZRQBBW.js +1 -0
  78. package/chunk-YBFTPRR5.js +1 -0
  79. package/chunk-YFRT24NZ.js +1 -0
  80. package/chunk-YXIITZFM.js +1 -0
  81. package/{chunk-TCEYGZ6D.js → chunk-Z24H5QI5.js} +2 -2
  82. package/chunk-Z2VKXGKY.js +1 -0
  83. package/chunk-ZE5QAS4M.js +1 -0
  84. package/index.html +2 -2
  85. package/locale/messages.cs.json +4 -2
  86. package/locale/messages.da.json +5 -2
  87. package/locale/messages.de.json +48 -8
  88. package/locale/messages.en_GB.json +4 -2
  89. package/locale/messages.es.json +4 -2
  90. package/locale/messages.fi.json +7 -2
  91. package/locale/messages.fr.json +7 -2
  92. package/locale/messages.hu.json +6 -2
  93. package/locale/messages.it.json +32 -21
  94. package/locale/messages.ja_JP.json +8 -2
  95. package/locale/messages.nl_NL.json +53 -21
  96. package/locale/messages.pl.json +9 -2
  97. package/locale/messages.pt.json +8 -2
  98. package/locale/messages.pt_BR.json +10 -3
  99. package/locale/messages.ru.json +8 -2
  100. package/locale/messages.sr_RS.json +9 -2
  101. package/locale/messages.sv_SE.json +9 -2
  102. package/locale/messages.zh_CN.json +376 -48
  103. package/locale/messages.zh_TW.json +9 -2
  104. package/main-JMFOP3Z7.js +1 -0
  105. package/package.json +1 -1
  106. package/polyfills-COBLRUJG.js +1 -0
  107. package/{styles-P2AEFLUS.css → styles-ORRIWQJ5.css} +1 -1
  108. package/chunk-25II37TZ.js +0 -1
  109. package/chunk-2CXHZS6X.js +0 -1
  110. package/chunk-3UPH6V5C.js +0 -1
  111. package/chunk-43BIRTPL.js +0 -1
  112. package/chunk-4DR45FFH.js +0 -2
  113. package/chunk-4KE2I7OA.js +0 -7
  114. package/chunk-5C7A7QU6.js +0 -1
  115. package/chunk-65U4B3NQ.js +0 -2
  116. package/chunk-65ZYAFPI.js +0 -1
  117. package/chunk-6LCXRM3A.js +0 -1
  118. package/chunk-6V7W7EKR.js +0 -1
  119. package/chunk-7733YRW4.js +0 -1
  120. package/chunk-7BATQNXR.js +0 -1
  121. package/chunk-7CGTOI24.js +0 -1
  122. package/chunk-7V4TPS4B.js +0 -1
  123. package/chunk-ABANCAM5.js +0 -1
  124. package/chunk-BLKMQJR5.js +0 -1
  125. package/chunk-BTZEFBCF.js +0 -1
  126. package/chunk-CZDE5P4F.js +0 -1
  127. package/chunk-DYTQQHMA.js +0 -1
  128. package/chunk-EBXJGPRA.js +0 -1
  129. package/chunk-EPDVUHOD.js +0 -1
  130. package/chunk-ERHGJIOQ.js +0 -2
  131. package/chunk-ESAGJOZZ.js +0 -1
  132. package/chunk-FP6LM56A.js +0 -1
  133. package/chunk-FQ55IACT.js +0 -1
  134. package/chunk-FSKPPAVO.js +0 -1
  135. package/chunk-FWQNZX5S.js +0 -1
  136. package/chunk-GUKBMCIX.js +0 -1
  137. package/chunk-IVGY6D4N.js +0 -56
  138. package/chunk-J52HAQJB.js +0 -1
  139. package/chunk-KAFLAM3J.js +0 -1
  140. package/chunk-LUKUBN2Z.js +0 -1
  141. package/chunk-N5FH4YAX.js +0 -2
  142. package/chunk-O7TLFEOP.js +0 -1
  143. package/chunk-OAWADV5X.js +0 -1
  144. package/chunk-ONV552SH.js +0 -1
  145. package/chunk-PDODLSPH.js +0 -1
  146. package/chunk-PSVKQSIF.js +0 -1
  147. package/chunk-QMFHJSCY.js +0 -1
  148. package/chunk-QXUYK52Y.js +0 -1
  149. package/chunk-RODUXVVT.js +0 -1
  150. package/chunk-S5G6POQS.js +0 -1
  151. package/chunk-SIHNMW2E.js +0 -1
  152. package/chunk-SPAJFGWZ.js +0 -1
  153. package/chunk-SX2OA5DO.js +0 -1
  154. package/chunk-T5WAKBP3.js +0 -1
  155. package/chunk-T7QZL5YJ.js +0 -2
  156. package/chunk-TH7CWIA2.js +0 -1
  157. package/chunk-U4XTHU5I.js +0 -1
  158. package/chunk-U7YVVKGQ.js +0 -1
  159. package/chunk-UEYPJIJG.js +0 -1
  160. package/chunk-UI4M5G5W.js +0 -1
  161. package/chunk-URJQR7VG.js +0 -1
  162. package/chunk-V7XW25LT.js +0 -1
  163. package/chunk-VPTXHYYV.js +0 -6
  164. package/chunk-VTTBYFSH.js +0 -1
  165. package/chunk-VYAA7G37.js +0 -1
  166. package/chunk-W66AXGSW.js +0 -1
  167. package/chunk-WOTGLW6Y.js +0 -4
  168. package/chunk-WRKRV6RQ.js +0 -1
  169. package/chunk-XATCN7MB.js +0 -1
  170. package/chunk-XHPURHO2.js +0 -1
  171. package/chunk-YUZKJZ22.js +0 -1
  172. package/chunk-YZDNOP4R.js +0 -1
  173. package/chunk-Z2TE5POZ.js +0 -1
  174. package/chunk-ZMLGDPCK.js +0 -3
  175. package/locale/angular/cs.mjs +0 -21
  176. package/locale/angular/da.mjs +0 -17
  177. package/locale/angular/de.mjs +0 -17
  178. package/locale/angular/en-GB.mjs +0 -17
  179. package/locale/angular/es.mjs +0 -19
  180. package/locale/angular/extra/cs.mjs +0 -11
  181. package/locale/angular/extra/da.mjs +0 -11
  182. package/locale/angular/extra/de.mjs +0 -11
  183. package/locale/angular/extra/en-GB.mjs +0 -11
  184. package/locale/angular/extra/es.mjs +0 -11
  185. package/locale/angular/extra/fi.mjs +0 -11
  186. package/locale/angular/extra/fr.mjs +0 -11
  187. package/locale/angular/extra/hu.mjs +0 -11
  188. package/locale/angular/extra/it.mjs +0 -11
  189. package/locale/angular/extra/ja.mjs +0 -11
  190. package/locale/angular/extra/nl.mjs +0 -11
  191. package/locale/angular/extra/pl.mjs +0 -11
  192. package/locale/angular/extra/pt.mjs +0 -11
  193. package/locale/angular/extra/ru.mjs +0 -11
  194. package/locale/angular/extra/sr.mjs +0 -11
  195. package/locale/angular/extra/sv.mjs +0 -11
  196. package/locale/angular/extra/zh-Hans.mjs +0 -11
  197. package/locale/angular/extra/zh-Hant.mjs +0 -11
  198. package/locale/angular/fi.mjs +0 -17
  199. package/locale/angular/fr.mjs +0 -19
  200. package/locale/angular/hu.mjs +0 -17
  201. package/locale/angular/it.mjs +0 -19
  202. package/locale/angular/ja.mjs +0 -15
  203. package/locale/angular/nl.mjs +0 -17
  204. package/locale/angular/pl.mjs +0 -21
  205. package/locale/angular/pt.mjs +0 -19
  206. package/locale/angular/ru.mjs +0 -21
  207. package/locale/angular/sr.mjs +0 -19
  208. package/locale/angular/sv.mjs +0 -17
  209. package/locale/angular/zh-Hans.mjs +0 -15
  210. package/locale/angular/zh-Hant.mjs +0 -15
  211. package/main-JBXUJPKQ.js +0 -1
  212. package/polyfills-6QHLTIIN.js +0 -1
@@ -0,0 +1 @@
1
+ import{a}from"./chunk-LZGUK3CQ.js";import"./chunk-76QLZQIX.js";import"./chunk-MHALSLG3.js";import"./chunk-FWVOVJCG.js";import"./chunk-VKD4Y3YQ.js";import"./chunk-WIDMAJIO.js";import"./chunk-K6EZTPNQ.js";import"./chunk-EUDKD2JW.js";export{a as default};
@@ -1 +1 @@
1
- import{a as m}from"./chunk-XHPURHO2.js";import{h as u}from"./chunk-N5FH4YAX.js";import{B as h,E as s,F as p,P as d,Rc as N,T as l,Z as r,n as c,va as o,x as f}from"./chunk-4KE2I7OA.js";var b=class a{#e=r(u);#s=r(m);serverState=this.#s.serverState;serverStateEffect=N(()=>{let t=this.#s.serverState();t?.LastNotificationUpdateID&&this.updateLastNotificationEventId(t?.LastNotificationUpdateID)});#o=-1;#a=o(!1);#t=o([]);#i=o([]);notifications=this.#t.asReadonly();init(){this.notifications().length===0&&this.getNotifications()}updateLastNotificationEventId(t){this.#o!==t&&(this.#o=t,this.getNotifications())}getNotifications(){this.#a.set(!0),this.#e.getApiV1Notifications().pipe(s(1),d(t=>this.#t.set(t)),p(()=>this.#a.set(!1))).subscribe()}getNofication(t){this.#e.getApiV1NotificationById({id:t}).pipe(s(1)).subscribe()}deleteNotification(t){let i=this.#t(),e=i[t];this.#i.set(i),i.splice(t,1),this.#t.set(i),this.#e.deleteApiV1NotificationById({id:e.ID}).pipe(s(1)).subscribe({error:()=>{this.#t.set(this.#i()),this.#i.set([])}})}deleteAllNotifications(){let t=this.#t();this.#i.set(t),this.#t.set([]);let i=t.map(e=>this.#e.deleteApiV1NotificationById({id:e.ID}).pipe(h(()=>c(e))));f(i).pipe(s(1)).subscribe({next:e=>{let v=e.filter(n=>n!=null&&"ID"in n);this.#t.set(v),this.#i.set([])},error:()=>{this.#t.set(this.#i()),this.#i.set([])}})}static \u0275fac=function(i){return new(i||a)};static \u0275prov=l({token:a,factory:a.\u0275fac,providedIn:"root"})};export{b as a};
1
+ import{a as m}from"./chunk-4D2NUH5S.js";import{h as u}from"./chunk-FWVOVJCG.js";import{B as h,E as s,F as p,Hc as N,P as d,S as l,X as r,la as o,n as c,x as f}from"./chunk-K6EZTPNQ.js";var b=class a{#e=r(u);#s=r(m);serverState=this.#s.serverState;serverStateEffect=N(()=>{let t=this.#s.serverState();t?.LastNotificationUpdateID&&this.updateLastNotificationEventId(t?.LastNotificationUpdateID)});#o=-1;#a=o(!1);#t=o([]);#i=o([]);notifications=this.#t.asReadonly();init(){this.notifications().length===0&&this.getNotifications()}updateLastNotificationEventId(t){this.#o!==t&&(this.#o=t,this.getNotifications())}getNotifications(){this.#a.set(!0),this.#e.getApiV1Notifications().pipe(s(1),d(t=>this.#t.set(t)),p(()=>this.#a.set(!1))).subscribe()}getNofication(t){this.#e.getApiV1NotificationById({id:t}).pipe(s(1)).subscribe()}deleteNotification(t){let i=this.#t(),e=i[t];this.#i.set(i),i.splice(t,1),this.#t.set(i),this.#e.deleteApiV1NotificationById({id:e.ID}).pipe(s(1)).subscribe({error:()=>{this.#t.set(this.#i()),this.#i.set([])}})}deleteAllNotifications(){let t=this.#t();this.#i.set(t),this.#t.set([]);let i=t.map(e=>this.#e.deleteApiV1NotificationById({id:e.ID}).pipe(h(()=>c(e))));f(i).pipe(s(1)).subscribe({next:e=>{let v=e.filter(n=>n!=null&&"ID"in n);this.#t.set(v),this.#i.set([])},error:()=>{this.#t.set(this.#i()),this.#i.set([])}})}static \u0275fac=function(i){return new(i||a)};static \u0275prov=l({token:a,factory:a.\u0275fac,providedIn:"root"})};export{b as a};
@@ -0,0 +1 @@
1
+ import{c as P,e as v,f as L,i as w,n as V,q as x,r as X,t as U}from"./chunk-3KIPRGE2.js";import{d as A,e as I}from"./chunk-7LEXBIXG.js";import"./chunk-P4ZYFRD3.js";import{B,a as y,c as b,g as h,l as $}from"./chunk-MHALSLG3.js";import{h as G}from"./chunk-FWVOVJCG.js";import"./chunk-VKD4Y3YQ.js";import"./chunk-WIDMAJIO.js";import{F as g,Hb as C,Ib as E,Jb as f,Mb as O,N as T,Nb as m,Oa as F,X as u,_a as R,_b as k,bc as N,la as p,pb as S,qb as D,rc as M,ub as c,vb as i,wb as r,xb as _}from"./chunk-K6EZTPNQ.js";import"./chunk-EUDKD2JW.js";var j=()=>["/"];function z(l,e){l&1&&(i(0,"spk-form-field")(1,"label",11),f(2,2),r(),_(3,"input",12),r())}var a=new X,d=class l{#t=u(b);#e=u(G);#o=u(A);isRestoring=p(!1);isSecureFile=p(!1);importForm=a.group({config:a.control(""),cmdline:a.control(!1),importMetadata:a.control(!1),direct:a.control(!1),passphrase:a.control("")});selectedFile=p(null);onFileDropped(e){let t=e.target?.files?.item(0);if(t){let n=new FileReader;this.isSecureFile.set(t.type!=="application/json"),n.onload=this.#n.bind(this),n.readAsArrayBuffer(t)}}#n(e){let o=e.target?.result;this.importForm.patchValue({config:this.#r(o)})}#r(e){let o=new Uint8Array(e),t=o.byteLength,n="";for(let s=0;s<t;s++)n+=String.fromCharCode(o[s]);return btoa(n)}submit(){this.isRestoring.set(!0),this.#e.postApiV1BackupsImport({requestBody:this.importForm.value}).pipe(T(e=>{let t={Backup:e.data.Backup};return this.#e.postApiV1Backups({requestBody:t,temporary:!0})}),g(()=>this.isRestoring.set(!1))).subscribe({next:e=>{this.#o.navigate(["/restore-draft",e.ID])},error:e=>{this.#t.error(e.message)}})}static \u0275fac=function(o){return new(o||l)};static \u0275cmp=R({type:l,selectors:[["app-restore-from-config"]],decls:16,vars:7,consts:()=>{let e;e=$localize` Restore from config ${"\uFFFD#3\uFFFD"}:START_TAG_DIV:${"\uFFFD#4\uFFFD"}:START_TAG_BUTTON:${"[\uFFFD#5\uFFFD|\uFFFD#7\uFFFD]"}:START_TAG_SPK_ICON:arrow-left${"[\uFFFD/#5\uFFFD|\uFFFD/#7\uFFFD]"}:CLOSE_TAG_SPK_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_SPK_ICON:download-simple${"[\uFFFD/#5\uFFFD|\uFFFD/#7\uFFFD]"}:CLOSE_TAG_SPK_ICON: Restore ${"[\uFFFD/#4\uFFFD|\uFFFD/#6\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD/#3\uFFFD"}:CLOSE_TAG_DIV:`,e=O(e);let o;o=$localize`Select a configuration file`;let t;return t=$localize`Passphrase`,[e,o,t,[1,"actions"],["spk-button","","type","button",1,"outlined",3,"routerLink"],["spk-button","","type","submit",1,"raised","primary",3,"click","disabled"],["autocomplete","off",3,"formGroup"],["spkDragDrop","",3,"fileDropped"],["for","file"],["type","file","accept",".json,.aes",3,"change"],["suffix",""],["for","passphrase"],["type","password","formControlName","passphrase"]]},template:function(o,t){o&1&&(i(0,"header")(1,"h3"),C(2,0),i(3,"div",3)(4,"button",4),_(5,"spk-icon"),r(),i(6,"button",5),m("click",function(){return t.submit()}),_(7,"spk-icon"),r()(),E(),r()(),i(8,"form",6)(9,"spk-form-field",7),m("fileDropped",function(s){return t.onFileDropped(s)}),i(10,"label",8),f(11,1),r(),i(12,"input",9),m("change",function(s){return t.onFileDropped(s)}),r(),i(13,"spk-icon",10),N(14,"upload"),r()(),S(15,z,4,0,"spk-form-field"),r()),o&2&&(F(4),c("routerLink",M(6,j)),F(2),k("loader",t.isRestoring()),c("disabled",t.isRestoring()),F(2),c("formGroup",t.importForm),F(7),D(t.isSecureFile()?15:-1))},dependencies:[U,w,P,v,L,V,x,I,B,$,y,h],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}"],changeDetection:0})};export{d as default};
@@ -0,0 +1,2 @@
1
+ import{a as q}from"./chunk-WY2KPAVB.js";import{a as W,d as X,g as z}from"./chunk-MHALSLG3.js";import{h as J}from"./chunk-FWVOVJCG.js";import"./chunk-VKD4Y3YQ.js";import"./chunk-WIDMAJIO.js";import{Bb as f,Hb as A,Hc as G,Ib as D,Jb as y,La as k,Nb as C,Oa as r,Ob as S,X as h,_a as F,ba as d,bc as s,ca as _,cc as I,dc as L,ec as w,gc as N,hc as $,ic as B,la as m,mc as V,pb as v,qb as M,r as E,rb as P,rc as U,sb as R,tb as x,ub as g,vb as o,wb as a,xb as u}from"./chunk-K6EZTPNQ.js";import{a as O,b as T}from"./chunk-EUDKD2JW.js";var K=()=>({maxWidth:"700px",width:"100%"});function j(l,t){if(l&1&&(o(0,"a",9)(1,"spk-icon"),s(2,"link"),a()()),l&2){let e=S().$implicit;g("href",V(e.Url),k)}}function H(l,t){if(l&1){let e=f();o(0,"div",2)(1,"h4"),s(2),v(3,j,3,2,"a",9),a(),o(4,"p"),s(5),u(6,"br"),o(7,"i"),s(8),a()(),o(9,"div",10)(10,"button",11),C("click",function(){let i=d(e).$implicit,c=S();return _(c.openLicense(i))}),A(11,1),u(12,"spk-icon"),D(),a()()()}if(l&2){let e=t.$implicit;r(2),w(" ",e.Title," - ",e.data==null?null:e.data.license," "),r(),M(e.Url?3:-1),r(2),L(" ",e.data==null?null:e.data.description," "),r(3),I(e.data==null?null:e.data.notes)}}var b=class l{#e=h(J);licenses=q(this.#e.getApiV1Licenses().pipe(E(t=>t.map(e=>T(O({},e),{data:e.Jsondata?JSON.parse(e.Jsondata):null})))));dialogIsOpen=m(!1);dialogLicense=m(null);#t=G(()=>{this.dialogLicense()&&this.dialogIsOpen.set(!0)});openLicense(t){this.dialogLicense.set(t)}closeLicense(){this.dialogIsOpen.set(!1),this.dialogLicense.set(null)}breakIntoLines(t){let e=t.split(`
2
+ `),n="";for(let i=0;i<e.length;i++)n+=`<li>${e[i]}</li>`;return n}static \u0275fac=function(e){return new(e||l)};static \u0275cmp=F({type:l,selectors:[["app-libraries"]],decls:14,vars:5,consts:()=>{let t;t=$localize`Libraries`;let e;return e=$localize` Details ${"\uFFFD#12\uFFFD"}:START_TAG_SPK_ICON:arrow-square-in${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SPK_ICON:`,[t,e,[1,"license"],[3,"isOpenChange","isOpen","options"],["header",""],["content",""],[1,"license-dialog"],["footer",""],["spk-button","","type","button",3,"click"],[3,"href"],[1,"actions"],["spk-button","",3,"click"]]},template:function(e,n){if(e&1){let i=f();o(0,"h3"),y(1,0),a(),R(2,H,13,5,"div",2,P),o(4,"spk-dialog",3),B("isOpenChange",function(p){return d(i),$(n.dialogIsOpen,p)||(n.dialogIsOpen=p),_(p)}),o(5,"header",4)(6,"h3"),s(7),a()(),o(8,"div",5)(9,"div",6),s(10),a()(),o(11,"footer",7)(12,"button",8),C("click",function(){return d(i),n.dialogLicense.set(null),_(n.dialogIsOpen.set(!1))}),s(13,"Close"),a()()()}if(e&2){let i,c;r(2),x(n.licenses()),r(2),N("isOpen",n.dialogIsOpen),g("options",U(4,K)),r(3),I((i=n.dialogLicense())==null?null:i.Title);let p=((c=n.dialogLicense())==null?null:c.License)??"";r(3),L(" ",p," ")}},dependencies:[W,z,X],styles:["[_nghost-%COMP%]{display:block}h3[_ngcontent-%COMP%]{font:var(--title-30);margin:0 0 1.25rem}h4[_ngcontent-%COMP%]{font:var(--paragraph-10)}a[_ngcontent-%COMP%]{text-decoration:none}.license[_ngcontent-%COMP%]{padding:1rem;border-bottom:1px solid var(--base-4);display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.license[_ngcontent-%COMP%]:first-of-type{border-top:1px solid var(--base-4)}.license[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{display:flex;gap:.25rem;align-items:center}.license-dialog[_ngcontent-%COMP%]{background-color:var(--base-1);color:var(--base-12);padding:2.5rem 2.5rem 2.5rem 1.5rem;border-radius:var(--shape-3);overflow:auto;max-height:31.25rem;white-space:pre;border:1px solid var(--base-4)}"],changeDetection:0})};export{b as default};
@@ -0,0 +1 @@
1
+ import{b as a,c as b,d as c}from"./chunk-3IRKJXHE.js";import"./chunk-KA4H3PM5.js";import"./chunk-FLMFEFKM.js";import"./chunk-WIJ3HW7I.js";import"./chunk-N334RUEQ.js";import"./chunk-K5AQUIEE.js";import"./chunk-WY2KPAVB.js";import"./chunk-3PYBMCOB.js";import"./chunk-RHW5QVAY.js";import"./chunk-FPLBURO5.js";import"./chunk-3KIPRGE2.js";import"./chunk-7LEXBIXG.js";import"./chunk-P4ZYFRD3.js";import"./chunk-MHALSLG3.js";import"./chunk-FWVOVJCG.js";import"./chunk-VKD4Y3YQ.js";import"./chunk-WIDMAJIO.js";import"./chunk-K6EZTPNQ.js";import"./chunk-EUDKD2JW.js";export{a as createDestinationForm,b as createDestinationFormGroup,c as default};
@@ -0,0 +1 @@
1
+ import{a as $}from"./chunk-Q3ILJYED.js";import{a as R}from"./chunk-WY2KPAVB.js";import"./chunk-4D2NUH5S.js";import"./chunk-XD26KCAE.js";import"./chunk-KQAO2YHR.js";import"./chunk-3PYBMCOB.js";import"./chunk-RHW5QVAY.js";import"./chunk-FPLBURO5.js";import"./chunk-JWFYA3TO.js";import"./chunk-3KIPRGE2.js";import"./chunk-UVLJAD66.js";import{b as A,e as N}from"./chunk-7LEXBIXG.js";import"./chunk-P4ZYFRD3.js";import{a as k,g as B}from"./chunk-MHALSLG3.js";import{h as O}from"./chunk-FWVOVJCG.js";import"./chunk-KV7SEZ24.js";import"./chunk-VKD4Y3YQ.js";import"./chunk-WIDMAJIO.js";import"./chunk-LQ2PCH6Q.js";import{Gc as M,Hb as c,Ib as d,Jb as l,Mb as g,Nb as I,Oa as i,X as C,_a as p,bc as E,dc as L,la as r,pb as s,qb as u,rb as f,sb as S,tb as T,vb as F,wb as a,xb as _}from"./chunk-K6EZTPNQ.js";import"./chunk-EUDKD2JW.js";function b(e,t){e&1&&l(0,2,1)}function P(e,t){e&1&&l(0,2,2)}function h(e,t){e&1&&l(0,2,3)}function v(e,t){e&1&&l(0,2,4)}function U(e,t){if(e&1&&(E(0),_(1,"br")),e&2){let n=t.$implicit;L(" ",n," ")}}var D=class e{#t=C(O);#e=C(A);#n=R(this.#e.params);runId=M(()=>this.#n()?.runId);offset=r(0);status=r("starting");messageLog=r([]);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(n=>[...n,...t.Items])})},1e3);evalStatus(t){t.Started===!0&&t.Finished===!0&&(this.status.set("finished"),clearInterval(this.interval)),t.Started===!0&&t.Finished===!1&&this.status.set("started")}abort(){this.#t.postApiV1CommandlineByRunidAbort({runid:this.runId()}).subscribe({next:t=>{this.status.set("aborted"),clearInterval(this.interval)}})}static \u0275fac=function(n){return new(n||e)};static \u0275cmp=p({type:e,selectors:[["app-commandline-result"]],decls:18,vars:4,consts:()=>{let t;t=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SPK_ICON:arrow-left${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SPK_ICON: Back `;let n;n=$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=g(o),[t,n,o,[1,"back"],["type","button","spk-button","","routerLink","../",1,"small"],["type","button","spk-button","",1,"small",3,"click"],[1,"status"]]},template:function(n,o){n&1&&(_(0,"app-status-bar"),F(1,"section")(2,"div",3)(3,"button",4),c(4,0),_(5,"spk-icon"),d(),a()(),F(6,"h3"),c(7,1),F(8,"button",5),I("click",function(){return o.abort()}),a(),d(),a(),F(9,"div",6),c(10,2),s(11,b,1,0),s(12,P,1,0),s(13,h,1,0),s(14,v,1,0),d(),a(),F(15,"code"),S(16,U,2,1,null,null,f),a()()),n&2&&(i(11),u(o.status()==="starting"?11:-1),i(),u(o.status()==="started"?12:-1),i(),u(o.status()==="finished"?13:-1),i(),u(o.status()==="aborted"?14:-1),i(2),T(o.messageLog()))},dependencies:[$,k,B,N],styles:["[_nghost-%COMP%]{display:block}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;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);overflow:auto;white-space:pre}"],changeDetection:0})};export{D as default};
@@ -0,0 +1 @@
1
+ import{d as b}from"./chunk-UVLJAD66.js";import"./chunk-7LEXBIXG.js";import"./chunk-P4ZYFRD3.js";import{g as h}from"./chunk-MHALSLG3.js";import"./chunk-FWVOVJCG.js";import"./chunk-VKD4Y3YQ.js";import"./chunk-WIDMAJIO.js";import{Jb as c,Oa as u,Pb as f,Qb as l,X as p,_a as s,bc as O,pb as _,qb as C,vb as t,wb as i,xb as g}from"./chunk-K6EZTPNQ.js";import"./chunk-EUDKD2JW.js";var v=["*",[["","footer",""]]],T=["*","[footer]"],r=class n{static \u0275fac=function(e){return new(e||n)};static \u0275cmp=s({type:n,selectors:[["app-custom-card"]],ngContentSelectors:T,decls:11,vars:0,consts:[[1,"card"],["src","/assets/noise/auth-noise.svg",1,"noise"],[1,"header-title"],["src","/assets/duplicati/duplicati.svg","alt",""],[1,"bg"]],template:function(e,a){e&1&&(f(v),t(0,"div",0),g(1,"img",1),t(2,"header")(3,"div",2),g(4,"img",3),O(5," Duplicati "),i()(),t(6,"main"),l(7),t(8,"footer"),l(9,1),i()()(),g(10,"div",4))},styles:['[_nghost-%COMP%]{height:100vh;width:100vw;display:flex;align-items:center;justify-content:center;background-color:var(--base-2)}body.dark [_nghost-%COMP%] .card[_ngcontent-%COMP%]:before{background:radial-gradient(rgba(var(--primary-rgb-900),1),#0000 60%)}.card[_ngcontent-%COMP%]{max-width:30rem;width:100%;position:relative;z-index:100;background-color:var(--base-1);border-radius:var(--shape-5);box-shadow:var(--box-shadow-40);border:1px solid var(--base-3);overflow:hidden}.card[_ngcontent-%COMP%]:before{content:"";position:absolute;height:30rem;transform:translateY(-17.8125rem);left:0;right:0;z-index:-2;background:radial-gradient(rgba(var(--primary-rgb-100),1),#0000 60%)}.card[_ngcontent-%COMP%] img.noise[_ngcontent-%COMP%]{position:absolute;height:30rem;width:100%;transform:translateY(-17.8125rem);left:0;right:0;z-index:-1;-webkit-mask-image:radial-gradient(#000,#0000 60%);mask-image:radial-gradient(#000,#0000 60%)}header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;padding:2rem 2rem 0;gap:.75rem;position:relative;z-index:10}.header-title[_ngcontent-%COMP%]{font:var(--title-30);display:flex;align-items:center;gap:.625rem}.header-title[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{height:1.75rem;filter:drop-shadow(0 2px 3px rgba(0,0,0,.3))}main[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;padding:2rem;gap:2.5rem;position:relative;z-index:10}main[_ngcontent-%COMP%] footer[_ngcontent-%COMP%]{font:var(--paragraph-40);color:var(--base-9);text-align:center;text-wrap:balance}.bg[_ngcontent-%COMP%]{position:fixed;inset:0;width:100vw;height:100vh;background-image:url(/assets/backgrounds/base-bg.svg);background-size:cover;background-position:center;background-repeat:no-repeat}body.dark[_ngcontent-%COMP%] .bg[_ngcontent-%COMP%]{opacity:1}footer[_ngcontent-%COMP%]:empty{display:none}'],changeDetection:0})};function y(n,o){n&1&&(t(0,"h3"),c(1,0),i())}function S(n,o){n&1&&(t(0,"h3"),c(1,1),i(),t(2,"button",3),c(3,2),i())}var d=class n{#e=p(b);isLoggingOut=this.#e.isLoggingOut;ngOnInit(){this.#e.logout()}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=s({type:n,selectors:[["app-logout"]],decls:3,vars:1,consts:()=>{let o;o=$localize`Logging out...`;let e;e=$localize`You have successfully logged out your being redirected to login page.`;let a;return a=$localize`Go to login page`,[o,e,a,["spk-button","","routerLink","/",1,"raised","primary"]]},template:function(e,a){e&1&&(t(0,"app-custom-card"),_(1,y,2,0,"h3")(2,S,4,0),i()),e&2&&(u(),C(a.isLoggingOut()?1:2))},dependencies:[r,h],styles:["[_nghost-%COMP%]{display:block}"],changeDetection:0})};export{d as default};
@@ -0,0 +1 @@
1
+ import{a as x}from"./chunk-B5FKLIHW.js";import{a as Q}from"./chunk-3PYBMCOB.js";import{b as U,d as H}from"./chunk-7LEXBIXG.js";import{b as K,c as j,e as W,g as q,p as Y}from"./chunk-MHALSLG3.js";import{h as J}from"./chunk-FWVOVJCG.js";import{Bb as f,Gc as B,Hb as R,Ib as D,Jb as _,La as M,Mc as S,Nb as u,Oa as r,Ob as s,X as N,_a as A,ac as V,ba as C,bc as F,ca as I,cc as P,dc as z,jc as G,kc as X,lc as O,pb as d,qb as p,sb as b,tb as v,ub as m,vb as a,wb as l,xb as g,yb as y,zb as L}from"./chunk-K6EZTPNQ.js";function it(n,e){if(n&1&&F(0),n&2){s();let t=O(0);z(" ",t.Message," ")}}function nt(n,e){if(n&1&&(a(0,"div"),R(1,1),g(2,"a",15),D(),l()),n&2){s();let t=O(0);r(2),m("href",t.DownloadLink,M)}}function ot(n,e){if(n&1){let t=f();a(0,"button",14),u("click",function(){C(t);let i=s(),c=O(0);return I(i.doRepair(c.BackupID))}),_(1,2),l()}}function at(n,e){if(n&1){let t=f();a(0,"button",14),u("click",function(){C(t);let i=s(),c=O(0);return I(i.doDownloadBugreport(c))}),_(1,3),l()}}function rt(n,e){if(n&1&&g(0,"spk-progress-bar",17),n&2){let t,o=s(2);m("value",(t=o.serverState())==null?null:t.UpdateDownloadProgress)}}function lt(n,e){if(n&1){let t=f();a(0,"div",13),y(1),_(2,4),L(),a(3,"a",16),F(4),l(),d(5,rt,1,1,"spk-progress-bar",17),a(6,"button",14),u("click",function(){C(t);let i=s();return I(i.doShowUpdate())}),_(7,5),l()()}if(n&2){let t,o,i=s(),c=O(0);r(3),m("href",(t=i.serverState())==null?null:t.UpdateDownloadLink,M),r(),P(c.Message),r(),p(((o=i.serverState())==null?null:o.UpdaterState)==="Downloading"?5:-1)}}function ct(n,e){if(n&1){let t=f();a(0,"button",14),u("click",function(){C(t);let i=s(),c=O(0);return I(i.doShowLog(c.BackupID))}),_(1,6),l()}}function _t(n,e){if(n&1){let t=f();a(0,"button",14),u("click",function(){C(t);let i=s();return I(i.doShowLink("https://docs.duplicati.com/detailed-descriptions/the-server-database"))}),_(1,7),l()}}function st(n,e){if(n&1){let t=f();a(0,"button",14),u("click",function(){C(t);let i=s();return I(i.doShowLink("https://docs.duplicati.com/detailed-descriptions/the-server-database"))}),_(1,8),l()}}var dt={Error:"error",Warning:"warn",Information:"primary"},E=class n{#t=N(H);#o=N(U);#a=N(W);#e=N(j);#i=N(x);#n=N(J);serverState=this.#i.serverState;index=S.required();notification=S.required();deleteNotificationByIndex(){this.#i.deleteNotification(this.index())}deleteAllNotifications(){this.#i.deleteAllNotifications()}getAlertType(e){return e&&dt[e]||"primary"}doShowLog(e){this.#n.getApiV1BackupByIdIsactive({id:e}).subscribe({next:t=>{this.#t.navigate(["/backup/"+e+"/log"])},error:t=>{if(t.status===404){let o={title:$localize`Error`,message:$localize`The backup is missing, has it been deleted?`,confirmText:$localize`OK`,cancelText:null};parseInt(e)+""!=e&&(o={title:$localize`Error`,message:$localize`The backup was temporary and does not exist anymore, so the log data is lost`,confirmText:$localize`OK`,cancelText:null}),this.#a.open(Q,{maxWidth:"550px",width:"100%",data:o})}else this.#e.error($localize`Failed to find backup: `+t.message)}})}doRepair(e){this.#n.postApiV1BackupByIdRepair({id:e}).subscribe({next:()=>{this.#e.success($localize`Backup repaired`),this.#t.navigate(["./"],{onSameUrlNavigation:"reload",relativeTo:this.#o})},error:t=>{this.#e.error($localize`Failed to repair backup: `+t.message)}})}doShowUpdate(){this.#t.navigate(["/about/changelog"])}doShowLink(e){window.open(e,"_blank")}doDownloadBugreport(e){let t=e.Action.slice(19);this.#n.postApiV1AuthIssuetokenByOperation({operation:`bugreport/${t}`}).subscribe({next:o=>{if(!o.Token){this.#e.error("Failed to get bug report URL: No token generated");return}e.DownloadLink=o.Token},error:o=>{this.#e.error(`Failed to get bug report URL: ${o.message}`)}})}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=A({type:n,selectors:[["app-notification"]],inputs:{index:[1,"index"],notification:[1,"notification"]},decls:16,vars:12,consts:()=>{let e;e=$localize`Dismiss`;let t;t=$localize` If the backup file was not downloaded automatically, ${"\uFFFD#2\uFFFD"}:START_LINK:right click and choose "Save as …"${"\uFFFD/#2\uFFFD"}:CLOSE_LINK:`;let o;o=$localize`Repair`;let i;i=$localize`Download`;let c;c=$localize`New update found:`;let $;$=$localize`Show Update`;let h;h=$localize`Show Log`;let k;k=$localize` Show Help `;let w;return w=$localize` Show Help `,[e,t,o,i,c,$,h,k,w,["sparkle-alert-title",""],["sparkle-alert-content","",1,"content"],[1,"actions"],["spk-button","",1,"small","outlined"],[1,"message"],["spk-button","",1,"small","outlined",3,"click"],["target","_blank",3,"href"],[3,"href"],[3,"value"]]},template:function(t,o){if(t&1){let i=f();G(0),a(1,"spk-alert")(2,"div",9),F(3),l(),a(4,"div",10),d(5,it,1,1),d(6,nt,3,1,"div"),a(7,"div",11),d(8,ot,2,0,"button",12),d(9,at,2,0,"button",12),d(10,lt,8,3,"div",13),d(11,ct,2,0,"button",12),d(12,_t,2,0,"button",12),d(13,st,2,0,"button",12),a(14,"button",14),u("click",function(){return C(i),I(o.deleteNotificationByIndex())}),_(15,0),l()()()()}if(t&2){let i=X(o.notification());r(),V(o.getAlertType(i.Type)),r(2),P(i.Title),r(2),p(i.Action!=="update:new"&&i.Action!=="update:manual"?5:-1),r(),p(i!=null&&i.DownloadLink?6:-1),r(2),p(i.Message!=null&&i.Message.includes("please run repair")?8:-1),r(),p(i.Action!=null&&i.Action.startsWith("bug-report:created:")&&!i.DownloadLink?9:-1),r(),p(i.Action==="update:new"?10:-1),r(),p(i.Action==="backup:show-log"?11:-1),r(),p(i.Action==="config:issue:unencrypted-database"?12:-1),r(),p(i.Action==="config:issue:windows-folder-used"?13:-1)}},dependencies:[Y,q,K],styles:["[_nghost-%COMP%]{display:block}"],changeDetection:0})};var pt=(n,e)=>e.ID;function Nt(n,e){if(n&1&&g(0,"app-notification",1),n&2){let t=e.$implicit,o=e.$index;m("index",o)("notification",t)}}function Tt(n,e){n&1&&(a(0,"div",2)(1,"p"),_(2,0),l()())}var Z=class n{#t=N(x);notificationFilterPredicate=S();notifications=B(()=>{let e=this.notificationFilterPredicate()?.predicate,t=this.#t.notifications();return typeof e!="function"?t:t.filter(e)});static \u0275fac=function(t){return new(t||n)};static \u0275cmp=A({type:n,selectors:[["app-notifications"]],inputs:{notificationFilterPredicate:[1,"notificationFilterPredicate"]},decls:3,vars:1,consts:()=>{let e;return e=$localize`No more notifications`,[e,[3,"index","notification"],[1,"notification-list"]]},template:function(t,o){t&1&&b(0,Nt,1,2,"app-notification",1,pt,!1,Tt,3,0,"div",2),t&2&&v(o.notifications())},dependencies:[E],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;gap:.5rem}.content[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem}.actions[_ngcontent-%COMP%]{display:flex;gap:.25rem;justify-content:flex-end}.notification-list[_ngcontent-%COMP%]{padding:1rem;display:flex;flex-direction:column;gap:1rem;text-align:center}"],changeDetection:0})};export{E as a,Z as b};
@@ -0,0 +1 @@
1
+ import{a}from"./chunk-JWFYA3TO.js";import"./chunk-VKD4Y3YQ.js";import"./chunk-WIDMAJIO.js";import"./chunk-K6EZTPNQ.js";import"./chunk-EUDKD2JW.js";export{a as BytesPipe};
@@ -0,0 +1 @@
1
+ import{a as W}from"./chunk-Q3ILJYED.js";import"./chunk-4D2NUH5S.js";import{a as z}from"./chunk-XD26KCAE.js";import"./chunk-KQAO2YHR.js";import"./chunk-3PYBMCOB.js";import"./chunk-RHW5QVAY.js";import"./chunk-FPLBURO5.js";import"./chunk-JWFYA3TO.js";import"./chunk-3KIPRGE2.js";import"./chunk-UVLJAD66.js";import{e as S}from"./chunk-7LEXBIXG.js";import"./chunk-P4ZYFRD3.js";import{a as g,g as E,h as R,k as G,p as w}from"./chunk-MHALSLG3.js";import{h as X}from"./chunk-FWVOVJCG.js";import"./chunk-KV7SEZ24.js";import"./chunk-VKD4Y3YQ.js";import"./chunk-WIDMAJIO.js";import"./chunk-LQ2PCH6Q.js";import{Hb as y,Ib as A,Jb as s,Kb as I,Lb as B,Oa as a,Ob as d,X as u,_a as T,bc as r,db as O,ec as L,mb as M,nb as P,pb as F,qb as N,rb as x,rc as m,sb as $,sc as v,tb as D,ub as _,vb as t,wb as i,xb as l,yb as b,zb as h}from"./chunk-K6EZTPNQ.js";import"./chunk-EUDKD2JW.js";var j=()=>[R,E,g,S],K=()=>["/restore-from-files"],q=()=>["/restore/from-config"],V=n=>["/restore",n];function H(n,o){if(n&1&&(t(0,"spk-card",5),l(1,"img",10),t(2,"div",7)(3,"h3"),s(4,1),i(),t(5,"p"),r(6),i()(),t(7,"button",8),y(8,2),l(9,"spk-icon"),A(),i()()),n&2){let e=o.$implicit;a(4),I((e.Backup==null?null:e.Backup.Name)??"Backup name missing"),B(4),a(2),L(" ",(e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.SourceSizeString)??"-"," / ",(e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.BackupListCount)??"-"," "),a(),_("routerLink",v(4,V,e.Backup==null?null:e.Backup.ID))}}function J(n,o){if(n&1&&$(0,H,10,6,"spk-card",5,x),n&2){let e=d(2);D(e.backups())}}function Q(n,o){n&1&&(b(0),s(1,3),h())}function U(n,o){if(n&1&&F(0,J,2,0)(1,Q,2,0,"ng-container"),n&2){let e=d();N(e.backups().length?0:1)}}function Y(n,o){n&1&&(t(0,"div",11),l(1,"spk-progress-bar",12),t(2,"div",7)(3,"h3"),s(4,4),i()()())}var f=class n{#e=u(z);#t=u(X);backups=this.#e.backups;backupsLoading=this.#e.backupsLoading;ngOnInit(){this.#e.getBackups(!0)}restoreNow(o){this.#t.postApiV1BackupByIdRestore({id:o.Backup?.ID,requestBody:{}})}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=T({type:n,selectors:[["app-restore"]],decls:32,vars:5,consts:()=>{let o;o=$localize`Where do you want to restore from?`;let e;e=$localize`Restore ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let p;p=$localize` Restore ${"\uFFFD#9\uFFFD"}:START_TAG_SPK_ICON:arrow-right${"\uFFFD/#9\uFFFD"}:CLOSE_TAG_SPK_ICON:`;let k;k=$localize`No backups founds`;let C;return C=$localize`Loading backups...`,[o,e,p,k,C,[1,"type-a"],["src","assets/images/backup.png","alt","","width","48px"],[1,"text"],["spk-button","",3,"routerLink"],["src","assets/images/restore.png","alt","","width","48px"],["src","assets/images/folder.png","alt","","width","48px"],[1,"loading-list"],[1,"indeterminate","primary"]]},template:function(e,p){e&1&&(l(0,"app-status-bar"),t(1,"section")(2,"h2"),s(3,0),i(),t(4,"spk-card",5),l(5,"img",6),t(6,"div",7)(7,"h3"),r(8,"Direct restore from backup files"),i(),t(9,"p"),r(10,"Point to your backup files and restore from there."),i()(),t(11,"button",8),r(12," Start "),t(13,"spk-icon"),r(14,"play-circle"),i()()(),t(15,"spk-card",5),l(16,"img",9),t(17,"div",7)(18,"h3"),r(19,"Restore from configuration"),i(),t(20,"p"),r(21,"Load destination from an exported job or a storage provider"),i()(),t(22,"button",8),r(23," Start "),t(24,"spk-icon"),r(25,"play-circle"),i()()(),t(26,"spk-divider"),r(27,"Or existing"),i(),O(28,U,2,1)(29,Y,5,0),M(30,28,j,null,29),i()),e&2&&(a(11),_("routerLink",m(3,K)),a(11),_("routerLink",m(4,q)),a(8),P(!p.backupsLoading()))},dependencies:[W,R,E,G,g,w,S],styles:["[_nghost-%COMP%]{display:block}h2[_ngcontent-%COMP%]{font:var(--title-30);text-align:center;padding:2rem}section[_ngcontent-%COMP%]{max-width:43.75rem;margin:0 auto;padding:2rem 1rem;display:flex;flex-direction:column;gap:1rem}spk-divider[_ngcontent-%COMP%]{color:var(--base-8)}spk-card[_ngcontent-%COMP%]{display:flex;align-items:center;gap:1rem;--card-padding: 2rem}spk-card[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{flex:1 0;display:flex;flex-direction:column;gap:.25rem}"],changeDetection:0})};export{f as default};
@@ -0,0 +1 @@
1
+ import{a as Q}from"./chunk-FLMFEFKM.js";import{a as Be}from"./chunk-WIJ3HW7I.js";import{a as oe}from"./chunk-WY2KPAVB.js";import{a as te}from"./chunk-3PYBMCOB.js";import{a as J}from"./chunk-FPLBURO5.js";import{b as Ae,c as y,e as L,f as $,h as ve,i as b,k as we,n as D,q as A,r as v,s as Ge,t as w}from"./chunk-3KIPRGE2.js";import{b as R,d as N}from"./chunk-7LEXBIXG.js";import{A as De,a as I,e as Me,g as k,l as ye,p as Le,q as $e,t as be}from"./chunk-MHALSLG3.js";import{h as M}from"./chunk-FWVOVJCG.js";import{la as H}from"./chunk-VKD4Y3YQ.js";import{B as Fe,Bb as B,E as ee,F as T,Hb as u,Hc as q,Ib as F,J as me,Jb as E,Kb as Te,Lb as Ee,N as Se,Nb as O,O as X,Oa as m,Ob as x,S as de,X as p,_a as h,_b as Oe,ba as f,bc as j,ca as C,db as ge,ec as fe,gc as Ce,hc as Re,i as _e,ic as Ne,la as _,o as ce,pb as z,qb as Y,qc as Pe,rc as he,ub as S,vb as r,vc as Ie,wb as l,x as Z,xb as c,xc as ke,y as ue,yb as K,zb as U}from"./chunk-K6EZTPNQ.js";var xe=new v,Xe=()=>xe.group({passphrase:xe.control("")}),ie=class a{#t=p(M);#e=p(P);#o=p(N);#n=p(R);encryptionForm=this.#e.encryptionForm;creatingTemporaryBackup=_(!1);next(){let i=this.#e.destinationTargetUrl();if(!i)throw new Error("No target URL");this.creatingTemporaryBackup.set(!0);let e=this.encryptionForm.value?.passphrase??null,t=[{Name:"--no-encryption",Value:"true"}];e&&(t=[{Name:"--passphrase",Value:e}]),this.#t.postApiV1Backups({requestBody:{Backup:{TargetURL:i,Settings:t}},temporary:!0}).pipe(T(()=>this.creatingTemporaryBackup.set(!1))).subscribe({next:o=>{let n=o.ID;this.#o.navigate([`/restore-draft/${n}`])},error:o=>{console.error(o)}})}back(){this.#e.isFileRestore()?this.#o.navigate(["encryption"],{relativeTo:this.#n.parent}):this.#e.exit()}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=h({type:a,selectors:[["app-restore-encryption"]],decls:12,vars:1,consts:()=>{let i;i=$localize`Enter backup passphrase if defined.`;let e;e=$localize`Password`;let t;t=$localize`${"\uFFFD#8\uFFFD"}:START_TAG_SPK_ICON:arrow-left${"\uFFFD/#8\uFFFD"}:CLOSE_TAG_SPK_ICON: Back `;let o;return o=$localize`${"\uFFFD#11\uFFFD"}:START_TAG_SPK_ICON:arrow-right${"\uFFFD/#11\uFFFD"}:CLOSE_TAG_SPK_ICON: Continue `,[e,t,o,[3,"submit","formGroup"],["for","password"],["type","password","id","password","placeholder",i,"formControlName","passphrase"],[1,"form-actions"],["spk-button","","type","button",3,"click"],["spk-button","","type","submit",1,"raised","primary"]]},template:function(e,t){e&1&&(r(0,"form",3),O("submit",function(){return t.next()}),r(1,"spk-form-field")(2,"label",4),E(3,0),l(),c(4,"input",5),l(),r(5,"div",6)(6,"button",7),O("click",function(){return t.back()}),u(7,1),c(8,"spk-icon"),F(),l(),r(9,"button",8),u(10,2),c(11,"spk-icon"),F(),l()()()),e&2&&S("formGroup",t.encryptionForm)},dependencies:[w,b,y,L,$,D,A,ye,I,k],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}"],changeDetection:0})};var Ke=()=>({standalone:!0});function Ue(a,i){a&1&&c(0,"spk-progress-bar",7)}function je(a,i){if(a&1&&(r(0,"div",14),j(1),Ie(2,"date"),l()),a&2){let e=i.$implicit;m(),fe("",e.Version,": ",ke(2,2,e.Time,"medium"))}}function qe(a,i){a&1&&c(0,"spk-progress-bar",7)}function He(a,i){if(a&1&&(r(0,"app-file-tree",13)(1,"label",15),E(2,4),l(),c(3,"input",16),l()),a&2){let e=x(2);S("rootPaths",e.rootPaths())("backupSettings",e.backupSettings())("multiSelect",!0)("showFiles",!0)}}function Je(a,i){if(a&1){let e=B();r(0,"spk-select",11),O("cleared",function(){f(e);let o=x();return C(o.abortLoading())}),r(1,"input",12),Ne("ngModelChange",function(o){f(e);let n=x();return Re(n.selectOption,o)||(n.selectOption=o),C(o)}),l(),ge(2,je,3,5,"ng-template"),l(),z(3,qe,1,0,"spk-progress-bar",7),z(4,He,4,4,"app-file-tree",13)}if(a&2){let e=x();S("options",e.versionOptions())("isClearable",!1),m(),Ce("ngModel",e.selectOption),S("ngModelOptions",he(6,Ke)),m(2),Y(e.isDraft()||e.isRepairing()||e.versionOptionsLoading()||e.loadingRootPath()?3:-1),m(),Y(e.showFileTree()?4:-1)}}var se=new v,ze=()=>se.group({filesToRestore:se.control(""),passphrase:se.control(null)}),re=class a{#t=p(M);#e=p(P);#o=p(J);#n=p(N);#i=p(R);#s=p(H);#r=null;#a=null;selectFilesForm=this.#e.selectFilesForm;selectFilesFormSignal=this.#e.selectFilesFormSignal;selectOption=this.#e.selectOption;backupId=this.#e.backupId;versionOptionsLoading=this.#e.versionOptionsLoading;versionOptions=this.#e.versionOptions;isDraft=this.#e.isDraft;isFileRestore=this.#e.isFileRestore;showFileTree=_(!1);backupSettings=_(null);rootPaths=_([]);loadingRootPath=_(!1);isRepairing=_(!1);loadingEffect=q(()=>{if(this.versionOptionsLoading())return;let e=this.versionOptions();if(e&&e?.length>0){let t=e[0].Version;this.selectOption.set(t.toString())}});backupSettingsEffect=q(()=>{let i=this.backupId(),e=this.isRepairing(),t=this.selectOption();if(!t||!i)return;let n=this.versionOptions()?.find(d=>d.Version===parseInt(t))?.Time??null;if(!n||e)return;let s={id:i+"",time:n};this.backupSettings.set(s),this.getRootPath(s)});repairEffect=q(()=>{let i=this.selectOption(),e=this.versionOptions();if(i){let t=e.find(s=>s.Version===parseInt(i));if(t===void 0)return;let o=this.backupId(),n=`${o}+${t.Time}`;if(this.#a===n)return;this.#a=n,this.isRepairing.set(!0),this.#t.postApiV1BackupByIdRepairupdate({id:o,requestBody:{only_paths:!0,time:t.Time}}).pipe(X(this.abortLoading$),T(()=>{this.#a=null})).subscribe(s=>{let d=s.ID;var G=window.setInterval(()=>{this.#t.getApiV1TaskByTaskid({taskid:d}).subscribe(W=>{W.Status==="Completed"&&(clearInterval(G),this.isRepairing.set(!1))})},1e3)})}});getRootPath(i){let e={id:i.id+"",time:i.time,prefixOnly:!0,folderContents:!1},t=i.id+"";this.isRepairing()||this.#r===t||(this.#r=t,this.loadingRootPath.set(!0),this.showFileTree.set(!1),this.#o.hasV2ListOperations()?this.#t.postApiV2BackupListFolder({requestBody:{BackupId:i.id,Time:i.time,Paths:null,PageSize:0,Page:0}}).pipe(X(this.abortLoading$),T(()=>{this.showFileTree.set(!0),this.loadingRootPath.set(!1),this.#r=null})).subscribe({next:o=>{let n=(o.Data??[]).map(s=>s.Path??"");n.length>0?this.rootPaths.set(n):this.rootPaths.set(["/"])}}):this.#t.getApiV1BackupByIdFiles(e).pipe(X(this.abortLoading$),T(()=>{this.showFileTree.set(!0),this.loadingRootPath.set(!1)})).subscribe({next:o=>{let n=o.Files.map(s=>s.Path??"");n.length>0?this.rootPaths.set(n):this.rootPaths.set(["/"])}}))}abortLoading$=new _e;abortLoading(){this.showFileTree.set(!1),this.loadingRootPath.set(!1),this.abortLoading$.next(!0)}displayFn(){let i=this.versionOptions();return e=>{if(!e)return"";let t=i?.find(o=>typeof o.Version=="number"&&o.Version.toString()===e);return t?`${t.Version}: ${this.#s.transform(t.Time,"medium")}`:""}}next(){this.#n.navigate(["options"],{relativeTo:this.#i.parent})}back(){this.#e.isFileRestore()?this.#n.navigate(["encryption"],{relativeTo:this.#i.parent}):this.#e.exit()}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=h({type:a,selectors:[["app-select-files"]],features:[Pe([H])],decls:13,vars:3,consts:()=>{let i;i=$localize`Select files`;let e;e=$localize`${"\uFFFD#9\uFFFD"}:START_TAG_SPK_ICON:arrow-left${"\uFFFD/#9\uFFFD"}:CLOSE_TAG_SPK_ICON: ${"\uFFFD0\uFFFD"}:INTERPOLATION: `;let t;t=$localize`${"\uFFFD#12\uFFFD"}:START_TAG_SPK_ICON:arrow-right${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SPK_ICON: Continue `;let o;o=$localize`Select an option...`;let n;return n=$localize`Path`,[["formRef",""],i,e,t,n,[3,"submit","formGroup"],[1,"title-30"],[1,"indeterminate","primary"],[1,"form-actions"],["spk-button","","type","button",3,"click"],["spk-button","","type","submit",1,"raised","primary"],["value","Version",3,"cleared","options","isClearable"],["type","text","placeholder",o,3,"ngModelChange","ngModel","ngModelOptions"],[3,"rootPaths","backupSettings","multiSelect","showFiles"],[1,"custom-option"],["for","path"],["type","text","id","path","formControlName","filesToRestore"]]},template:function(e,t){if(e&1){let o=B();r(0,"form",5,0),O("submit",function(){return f(o),C(t.next())}),r(2,"h3",6),E(3,1),l(),z(4,Ue,1,0,"spk-progress-bar",7)(5,Je,5,7),r(6,"div",8)(7,"button",9),O("click",function(){return f(o),C(t.back())}),u(8,2),c(9,"spk-icon"),F(),l(),r(10,"button",10),u(11,3),c(12,"spk-icon"),F(),l()()()}e&2&&(S("formGroup",t.selectFilesForm),m(4),Y(t.versionOptionsLoading()?4:5),m(5),Te(t.isFileRestore()?"Back":"Exit"),Ee(8))},dependencies:[Ge,b,y,L,$,ve,w,D,A,H,Q,k,I,be,Le],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}"],changeDetection:0})};var P=class a{#t=p(N);#e=p(R);#o=p(J);#n=p(Me);#i=p(M);backupId=_(null);backup=_(null);destinationTargetUrl=_(null);selectFilesForm=ze();optionsForm=Ye();encryptionForm=Xe();optionsFormSignal=oe(this.optionsForm.valueChanges);selectFilesFormSignal=oe(this.selectFilesForm.valueChanges);selectOption=_(null);versionOptionsLoading=_(!1);versionOptions=_([]);isSubmitting=_(!1);isDraft=_(!1);isFileRestore=_(!1);isFullWidthPage=_(!1);init(i,e=!1,t=!1){this.backupId.set(i),this.isFileRestore.set(e),this.isDraft.set(t),e&&this.#t.navigate(["/restore-from-files/destination"]),e||this.getBackup(!0)}updateTargetUrl(i){this.destinationTargetUrl.set(i)}submit(){this.isSubmitting.set(!0);let i=this.backupId(),e=this.optionsForm.value,t=this.selectFilesForm.value,o=this.selectOption(),n=this.versionOptions()?.find(s=>s.Version===(o&&parseInt(o)));this.#i.postApiV1BackupByIdRestore({id:i??"",requestBody:{paths:t.filesToRestore?.split("\0").map(s=>`${s}*`)??[],passphrase:t.passphrase??null,time:n?.Time,restore_path:e.restoreFromPath,overwrite:e.handleExisting==="overwrite",permissions:e.permissions,skip_metadata:!0}}).pipe(T(()=>this.isSubmitting.set(!1))).subscribe({next:()=>{this.#t.navigate(["./progress"],{relativeTo:this.#e})},error:s=>{console.error("restore error",s)}})}exit(){this.#n.open(te,{data:{title:$localize`Confirm exit?`,message:$localize`Are you sure you want to exit?`,confirmText:$localize`Yes`,cancelText:$localize`Cancel`},closed:i=>{i&&(this.#s(),this.#t.navigate(["/"]))}})}getVersionOptions(){this.versionOptions()}loadFilesetsWithRetryv2(i,e=2){return this.#i.postApiV2BackupListFilesets({requestBody:{BackupId:i}}).pipe(Fe(t=>{let o=t?.error?.body?.StatusCode==="EncryptedStorageNoPassphrase",n=t?.error?.body?.StatusCode==="FolderMissing",s=t?.error?.body?.StatusCode==="EmptyRemoteFolder";return o||n||s||e===0?ce(()=>t):ue(1e3).pipe(Se(()=>this.loadFilesetsWithRetryv2(i,e-1)))}))}getBackup(i=!1){let e=this.backupId();this.versionOptionsLoading.set(!0),this.#o.hasV2ListOperations()?Z([this.#i.getApiV1BackupById({id:e}),this.loadFilesetsWithRetryv2(e)]).pipe(ee(1),T(()=>this.versionOptionsLoading.set(!1))).subscribe({next:([t,o])=>{if(o.Error)throw new Error(o.Error);this.versionOptions.set((o.Data??[]).map(n=>({Version:n.Version??-1,IsFullBackup:n.IsFullBackup??void 0,Time:n.Time??"<missing>",FileCount:n.FileCount??void 0,FileSizes:n.FileSizes??void 0}))),this.backup.set(t)},error:t=>{let o=t?.error?.body?.StatusCode==="EncryptedStorageNoPassphrase",n=t?.error?.body?.StatusCode==="FolderMissing",s=t?.error?.body?.StatusCode==="EmptyRemoteFolder",d=$localize`An error occurred while loading the backup filesets: ${t.message}`;o&&(d=$localize`The remote storage is encrypted. Please enter the passphrase to access the backup.`),n&&(d=$localize`The backup storage folder was not found.`),s&&(d=$localize`The backup storage folder does not contain any filesets.`),this.#n.open(te,{data:{title:$localize`Failed to load backup filesets`,message:d,confirmText:$localize`OK`,cancelText:void 0},closed:G=>{this.#t.navigate([o?"/restore-from-files/encryption":"/restore-from-files/destination"])}})}}):Z([this.#i.getApiV1BackupById({id:e}),this.#i.getApiV1BackupByIdFilesets({id:e}).pipe(me(3))]).pipe(ee(1),T(()=>this.versionOptionsLoading.set(!1))).subscribe({next:([t,o])=>{this.versionOptions.set(o.map(n=>({Version:n.Version??-1,IsFullBackup:(n.IsFullBackup??1)==1,Time:n.Time??"<missing>",FileCount:n.FileCount??void 0,FileSizes:n.FileSizes??void 0}))),this.backup.set(t)}})}#s(){this.selectFilesForm.reset(),this.optionsForm.reset()}static \u0275fac=function(e){return new(e||a)};static \u0275prov=de({token:a,factory:a.\u0275fac,providedIn:"root"})};var V=new v,Ye=()=>V.group({restoreFrom:V.control("orignal"),restoreFromPath:V.control(""),handleExisting:V.control("overwrite"),permissions:V.control(!1)}),ae=class a{#t=p(P);#e=p(N);#o=p(R);optionsForm=this.#t.optionsForm;optionsFormSignal=this.#t.optionsFormSignal;isSubmitting=this.#t.isSubmitting;goBack(){this.#e.navigate(["select-files"],{relativeTo:this.#o.parent})}submit(){this.#t.submit()}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=h({type:a,selectors:[["app-advanced-options-settings"]],decls:39,vars:6,consts:()=>{let i;i=$localize`Restore options`;let e;e=$localize`Where do you want to restore files to?`;let t;t=$localize` Original location ${"\uFFFD#9\uFFFD\uFFFD/#9\uFFFD"}:TAG_INPUT:`;let o;o=$localize` Pick location ${"\uFFFD#12\uFFFD\uFFFD/#12\uFFFD"}:TAG_INPUT:`;let n;n=$localize`How do you want to handle existing files?`;let s;s=$localize` Overwrite ${"\uFFFD#22\uFFFD\uFFFD/#22\uFFFD"}:TAG_INPUT:`;let d;d=$localize` Save different versions with timestamp in file name ${"\uFFFD#25\uFFFD\uFFFD/#25\uFFFD"}:TAG_INPUT:`;let G;G=$localize`Permissions`;let W;W=$localize` Restore read/write permissions ${"\uFFFD#31\uFFFD\uFFFD/#31\uFFFD"}:TAG_INPUT:`;let le;le=$localize`${"\uFFFD#35\uFFFD"}:START_TAG_SPK_ICON:arrow-left${"\uFFFD/#35\uFFFD"}:CLOSE_TAG_SPK_ICON: Go back `;let pe;return pe=$localize`${"\uFFFD#38\uFFFD"}:START_TAG_SPK_ICON:arrow-right${"\uFFFD/#38\uFFFD"}:CLOSE_TAG_SPK_ICON: Submit `,[["formRef",""],i,e,t,o,n,s,d,G,W,le,pe,[3,"submit","formGroup"],[1,"title-30"],[3,"disallowToggle"],["title",""],[1,"raised","primary"],["type","radio","name","restoreFrom","value","orignal","formControlName","restoreFrom"],["type","radio","name","restoreFrom","value","pickLocation","formControlName","restoreFrom"],[3,"disabled"],["for","path"],["type","text","id","path","formControlName","restoreFromPath"],["type","radio","name","handleExisting","value","overwrite","formControlName","handleExisting"],["type","radio","name","handleExisting","value","saveTimestamp","formControlName","handleExisting"],[1,"primary","raised"],["type","checkbox","formControlName","permissions"],[1,"form-actions"],["spk-button","","type","button",3,"click"],["spk-button","","type","submit",1,"raised","primary"]]},template:function(e,t){if(e&1){let o=B();r(0,"form",12,0),O("submit",function(){return f(o),C(t.submit())}),r(2,"h3",13),E(3,1),l(),r(4,"app-toggle-card",14),K(5,15),E(6,2),U(),r(7,"spk-radio",16),u(8,3),c(9,"input",17),F(),l(),r(10,"spk-radio",16),u(11,4),c(12,"input",18),F(),l(),r(13,"app-file-tree",19)(14,"label",20),j(15,"Path"),l(),c(16,"input",21),l()(),r(17,"app-toggle-card",14),K(18,15),E(19,5),U(),r(20,"spk-radio",16),u(21,6),c(22,"input",22),F(),l(),r(23,"spk-radio",16),u(24,7),c(25,"input",23),F(),l()(),r(26,"app-toggle-card"),K(27,15),E(28,8),U(),r(29,"spk-toggle",24),u(30,9),c(31,"input",25),F(),l()(),r(32,"div",26)(33,"button",27),O("click",function(){return f(o),C(t.goBack())}),u(34,10),c(35,"spk-icon"),F(),l(),r(36,"button",28),u(37,11),c(38,"spk-icon"),F(),l()()()}if(e&2){let o;S("formGroup",t.optionsForm),m(4),S("disallowToggle",!0),m(9),S("disabled",((o=t.optionsFormSignal())==null?null:o.restoreFrom)!=="pickLocation"),m(4),S("disallowToggle",!0),m(19),Oe("loader",t.isSubmitting())}},dependencies:[w,b,y,Ae,we,L,$,D,A,Be,Q,De,$e,k,I],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}"],changeDetection:0})};export{Ye as a,ae as b,Xe as c,ie as d,ze as e,re as f,P as g};
@@ -0,0 +1 @@
1
+ var k=Object.defineProperty,l=Object.defineProperties;var m=Object.getOwnPropertyDescriptors;var e=Object.getOwnPropertySymbols;var h=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable;var j=a=>{throw TypeError(a)};var g=(a,b,c)=>b in a?k(a,b,{enumerable:!0,configurable:!0,writable:!0,value:c}):a[b]=c,n=(a,b)=>{for(var c in b||={})h.call(b,c)&&g(a,c,b[c]);if(e)for(var c of e(b))i.call(b,c)&&g(a,c,b[c]);return a},o=(a,b)=>l(a,m(b));var p=(a,b)=>{var c={};for(var d in a)h.call(a,d)&&b.indexOf(d)<0&&(c[d]=a[d]);if(a!=null&&e)for(var d of e(a))b.indexOf(d)<0&&i.call(a,d)&&(c[d]=a[d]);return c};var f=(a,b,c)=>b.has(a)||j("Cannot "+c);var q=(a,b,c)=>(f(a,b,"read from private field"),c?c.call(a):b.get(a)),r=(a,b,c)=>b.has(a)?j("Cannot add the same private member more than once"):b instanceof WeakSet?b.add(a):b.set(a,c),s=(a,b,c,d)=>(f(a,b,"write to private field"),d?d.call(a,c):b.set(a,c),c),t=(a,b,c)=>(f(a,b,"access private method"),c);export{n as a,o as b,p as c,q as d,r as e,s as f,t as g};
@@ -1 +1 @@
1
- import{a as m}from"./chunk-QUOBR5MG.js";import{Z as p,jb as a}from"./chunk-4KE2I7OA.js";var u=class e{#t=p(m);transform(t,n=!1,...f){if(!t)return"";let r=t.split(".")[0],s=parseInt(r.split(":")[0])??0,i=parseInt(r.split(":")[1])??0,o=parseInt(r.split(":")[2])??0;return n?`${s}h ${i}m ${o}s`:this.#t.duration({hours:s,minutes:i,seconds:o}).humanize()}static \u0275fac=function(n){return new(n||e)};static \u0275pipe=a({name:"durationFormat",type:e,pure:!0})};export{u as a};
1
+ import{a as m}from"./chunk-LQ2PCH6Q.js";import{X as p,bb as a}from"./chunk-K6EZTPNQ.js";var u=class e{#t=p(m);transform(t,n=!1,...f){if(!t)return"";let r=t.split(".")[0],s=parseInt(r.split(":")[0])??0,i=parseInt(r.split(":")[1])??0,o=parseInt(r.split(":")[2])??0;return n?`${s}h ${i}m ${o}s`:this.#t.duration({hours:s,minutes:i,seconds:o}).humanize()}static \u0275fac=function(n){return new(n||e)};static \u0275pipe=a({name:"durationFormat",type:e,pure:!0})};export{u as a};
@@ -0,0 +1 @@
1
+ import{a as xe}from"./chunk-FPLBURO5.js";import{s as Me}from"./chunk-3KIPRGE2.js";import{A as ve,a as me,f as Ce,l as Pe,n as Ee,p as Te}from"./chunk-MHALSLG3.js";import{h as be}from"./chunk-FWVOVJCG.js";import{ea as ge}from"./chunk-VKD4Y3YQ.js";import{Ab as U,B as ie,Bb as B,F as q,Gc as W,Hc as A,Jb as $,Kb as ae,Lb as ce,Lc as Y,Mc as T,Nb as R,Nc as Z,Oa as m,Ob as u,Pb as de,Qb as D,Wb as z,X,Xb as pe,Yb as J,Zb as ue,_a as se,_b as v,ba as N,bc as S,ca as k,db as Q,dc as he,la as M,n as te,pb as O,qb as F,r as L,sb as oe,sc as V,tb as re,tc as _e,ub as K,vb as h,wb as f,x as ne,xb as le,zc as fe}from"./chunk-K6EZTPNQ.js";import{a as j,b as G}from"./chunk-EUDKD2JW.js";var we=["treeContainer"],Ne=["formRef"],ke=[[["label"]],[["label"]],[["input"]]],Re=["label","label","input"],Ie=o=>({children:o,level:0}),Oe=o=>({$implicit:o}),We=(o,t)=>({children:o,level:t}),Ae=(o,t)=>t.id;function Le(o,t){if(o&1){let e=B();h(0,"spk-button-group")(1,"button",13),R("click",function(){N(e);let i=u();return k(i.pathDiscoveryMethod.set("browse"))}),$(2,4),f(),h(3,"button",13),R("click",function(){N(e);let i=u();return k(i.pathDiscoveryMethod.set("path"))}),$(4,5),f()()}if(o&2){let e=u();m(),v("active",e.pathDiscoveryMethod()==="browse"),m(2),v("active",e.pathDiscoveryMethod()==="path")}}function Be(o,t){o&1&&le(0,"spk-progress-bar",9)}function $e(o,t){o&1&&(h(0,"spk-icon",18),S(1,"caret-down"),f(),h(2,"spk-icon",16),S(3,"folder-open"),f())}function De(o,t){o&1&&(h(0,"spk-icon"),S(1,"file"),f())}function Ve(o,t){o&1&&(h(0,"spk-icon",18),S(1,"caret-right"),f(),h(2,"spk-icon",16),S(3,"folder"),f())}function He(o,t){if(o&1&&O(0,$e,4,0)(1,De,2,0,"spk-icon")(2,Ve,4,0),o&2){let e=u(2).$implicit;F(e.children.length?0:e.cls==="file"?1:2)}}function je(o,t){o&1&&(h(0,"spk-icon",16),S(1,"desktop-tower"),f())}function Ge(o,t){o&1&&U(0)}function qe(o,t){if(o&1&&Q(0,Ge,1,0,"ng-container",10),o&2){let e=u(2).$implicit,n=u().$implicit;u();let i=J(7);K("ngTemplateOutlet",i)("ngTemplateOutletContext",V(5,Oe,_e(2,We,e.children,n.level+1)))}}function Xe(o,t){if(o&1){let e=B();h(0,"div",14,3),R("click",function(){N(e);let i=u().$implicit,r=u(2);return k(r.toggleNode(i.id,i))}),h(2,"div",15),O(3,He,3,1)(4,je,2,0,"spk-icon",16),f(),h(5,"div",17),R("click",function(i){N(e);let r=u().$implicit,a=u(2);return k(a.toggleSelectedNode(i,r))}),S(6),f()(),O(7,qe,1,7,"ng-container")}if(o&2){let e=u().$implicit,n=u().$implicit,i=u();v("accepted",e.accepted===!0)("active",e.evalState===i.TreeEvalEnum.Included)("indeterminate",e.isIndeterminate)("open",e.children.length)("usually-hidden",e.hidden)("root",n.level===0),m(2),v("file",e.cls==="file"),m(),F(e.id!=="/"?3:4),m(3),he(" ",e.text," "),m(),F(e.children.length>0?7:-1)}}function Qe(o,t){if(o&1&&O(0,Xe,8,17),o&2){let e=t.$implicit,n=u(2);F(e.hidden&&n._showHiddenNodes()||!e.hidden?0:-1)}}function Ke(o,t){if(o&1&&(h(0,"spk-list"),oe(1,Qe,1,1,null,null,Ae),f()),o&2){let e=t.$implicit;ue("padding-left",e.level*.25,"rem"),m(),re(e.children)}}function Ue(o,t){o&1&&U(0)}function ze(o,t){if(o&1){let e=B();h(0,"spk-toggle",19),R("click",function(){N(e);let i=u();return k(i._showHiddenNodes.set(!i._showHiddenNodes()))}),$(1,6),f()}if(o&2){let e=u();v("active",e._showHiddenNodes()),m(),ae(e.showFiles()?"files":"folders"),ce(1)}}var Fe=(r=>(r[r.ExcludedByParent=-2]="ExcludedByParent",r[r.Excluded=-1]="Excluded",r[r.None=0]="None",r[r.Included=1]="Included",r[r.IncludedByParent=2]="IncludedByParent",r))(Fe||{}),ee=class o{#e=X(be);#t=X(xe);multiSelect=T(!1);disabled=T(!1);showFiles=T(!1);selectFiles=T(!1);accepts=T(null);startingPath=T(null);rootPaths=T([]);backupSettings=T(null);pathRefreshTrigger=T(!1);showHiddenNodes=T(!1);hideShortcuts=T(!1);includes=Y();excludes=Y();_showHiddenNodes=M(!1);treeContainerRef=Z("treeContainer");formRef=Z("formRef");pathDiscoveryMethod=M("browse");isLoading=M(!1);currentPath=M("/");#n=M(null);treeSearchQuery=M("");treeNodes=M([]);isWindows=W(()=>this.#t.systemInfo()?.OSType==="Windows");filterGroups=this.#t.filterGroups();isByBackupSettings=W(()=>{let t=this.backupSettings();return!(t===void 0||t?.id===void 0||t?.time===void 0)});searchableTreeNodes=W(()=>{let t=this.treeSearchQuery();return t?this.treeNodes().filter(e=>e.text?.toLowerCase().includes(t.toLowerCase())):this.treeNodes()});TreeEvalEnum=Fe;treeStructure=W(()=>{let t=this.showHiddenNodes(),e=this.currentPath().split("\0").filter(s=>s!==""&&s!=="/"),n=structuredClone(e);for(let s=0;s<n.length;s++){let c=n[s].slice(1);if(c.startsWith("{")&&c.endsWith("}")){let p=c.slice(1,-1),d=this.filterGroups?.FilterGroups[p];if(d&&d.length){let b=d.map(P=>`-${P}`);n.splice(s,1,...b)}}}let i=this.searchableTreeNodes(),r=this.rootPaths(),a=this.accepts(),C=this.isWindows(),l=[];return r.length>0?l=r.map(s=>({id:s,resolvedpath:s,text:s,parentPath:"",children:[],evalState:0,isIndeterminate:!1,cls:"folder"})):l=[{id:"/",resolvedpath:"/",text:"Computer",parentPath:"",children:[],evalState:0,isIndeterminate:!1,cls:"folder"}],l.map(s=>{let g=new Map,c=s?.id;a&&(s.accepted=!0),g.set(s.id,s);let p=r.length>0?i.filter(d=>d.parentPath===s.id):i;for(let d of p){let b=r.length>0?d.id.replace(c??"",""):d.id,P=C?"\\":"/",_=b.split(P).filter(Boolean),E="",x=s;for(let H of _){if(E+=H+P,!g.has(E)){let I=d.hidden===!0&&t?0:this.#r(n,d.id,d.cls,x,C),y={id:d.id,isIndeterminate:this.isIndeterminate(n,d.id),evalState:I,parentPath:E,resolvedpath:d.id?.startsWith("%")?d.resolvedpath+P:E,hidden:d.hidden,text:d.text,cls:d.cls,children:[]};a&&(y.accepted=this.matchAccepts(a,y)),g.set(E,y),x.children.push(y)}x=g.get(E)}}return s}),l});#r(t,e,n,i,r){if(i.evalState===-1)return-2;let a=0,C=t.filter(s=>!s.startsWith("-")&&!s.startsWith("+")),l=t.filter(s=>s.startsWith("-")||s.startsWith("+"));if(C.length===0)return a;for(let s=0;s<C.length;s++){let g=C[s];if(e?.startsWith(g)){a=1;break}}if(l.length===0)return a;for(let s=0;s<l.length;s++){let g=l[s],c=g.slice(1),p=g.startsWith("-")?"exclude":"include",d=r?"\\":"/";if((r?c.slice(2):c).startsWith(d)&&c.endsWith(d)){if(n!=="folder")continue;if(e===c){a=p==="include"?1:-1;break}}if(c.startsWith("*")&&c.endsWith(`*${d}`)){if(n!=="folder")continue;let _=c.slice(1,-2);if(_==="")break;if(e?.includes(_+d)){a=p==="include"?1:-1;break}}if(c.startsWith("[.*")&&c.endsWith(`[^\\${d}]*]`)){if(n!=="file")continue;let _=c.slice(3,-7);if(new RegExp(_).test(e)){a=p==="include"?1:-1;break}}if(c.startsWith("[")&&c.endsWith("]")){let _=c.slice(1,-1),E=this.translateCSharpRegex(_);if(new RegExp(`${E}`).test(e)){a=p==="include"?1:-1;break}}if(c.startsWith("*.")){if(n!=="file"||c.replace("*.","").length===0)continue;if(this.#s(e,c,!0)){a=p==="include"?1:-1;break}}if(c==="")continue;if(c===e){a=p==="include"?1:-1;break}if(this.#s(e,c,!0)){a=p==="include"?1:-1;break}}return a}translateCSharpRegex(t){let e=t;e=e.replace(/^@/,"");let n=/\(\?<(?<name>\w+)>(?<pattern>[^)]+)\)/g;return e=e.replace(n,(i,r,a)=>`(${a})`),e=e.replace(/\\/g,"\\\\"),e}isIndeterminate(t,e){return t.some(n=>n.startsWith(e))}#s(t,e,n=!1){let i=e.replace(/\*/g,".*").replace(/\?/g,".").replace(/\[!([^\]]+)\]/g,"[^$1]");return new RegExp(`${i}${n?"$":""}`).test(t)}showHiddenNodesEffect=A(()=>this._showHiddenNodes.set(this.showHiddenNodes()));pathDiscoveryMethodEffect=A(()=>{let t=this.pathDiscoveryMethod(),e=this.#n();t==="browse"&&e&&this.currentPath.set(e.value)});matchAccepts(t,e){if(!t||e.cls==="folder"||e.id==="/")return!0;let n=t.split(",");if(n.length===0)return!0;let i="."+e.id.slice(e.id.indexOf("."));return i?n.some(r=>i.endsWith(r)):!1}currentPathEffect=A(()=>{let t=this.#n();t&&(t.value=this.currentPath(),t.dispatchEvent(new Event("input")))});inputValueChangeAbortController=null;inputRefEffect=A(()=>{let t=this.formRef()?.nativeElement?.querySelector("input");t&&(this.#a(t),this.inputValueChangeAbortController&&this.inputValueChangeAbortController.abort(),this.inputValueChangeAbortController=new AbortController,t.addEventListener("inputValueChanged",e=>{this.currentPath.set(e.detail.value)},{signal:this.inputValueChangeAbortController.signal}),this.#n.set(t),t.autocomplete="off")});ngOnInit(){let t=this.startingPath();if(t)this.currentPath.set(t),this.#p(t);else{let e=this.rootPaths();e&&e.length>0?this.#i(null,e[0]):this.#i(null,"/")}}toggleSelectedNode(t,e){if(e.id==="/"||(t.stopPropagation(),e.evalState===-2))return;if(this.selectFiles()&&e.cls==="folder"){this.toggleNode(e.id,e);return}if(this.accepts()&&!e.accepted)return;let i=this.currentPath().split("\0").filter(a=>a!==""&&a!=="/"),r=this.isChildOfSelected(e)?`-${e.id}`:e.id;this.multiSelect()?i.includes(e.id)?this.currentPath.set(i.filter(a=>a!==e.id).join("\0")):i.some(a=>a.startsWith(r))?this.currentPath.set(i.filter(a=>a!==r).join("\0")):this.currentPath.set([...i,r].join("\0")):i.includes(e.id)?this.currentPath.set(i.filter(a=>a!==e.id).join("\0")):this.currentPath.set(e.id)}isChildOfSelected(t){return this.currentPath().split("\0").filter(n=>n!==""&&n!=="/").some(n=>t.id?.startsWith(n)||`-${t.id}`.startsWith(n))}toggleNode(t,e=null){e?.cls==="folder"&&(e?.children.length?this.treeNodes.update(n=>n.filter(i=>!i.id?.startsWith(e.id)||i.id===e.id)):this.#i(e,t))}#l(){setTimeout(()=>{let e=this.treeContainerRef()?.nativeElement?.querySelector(".active");e&&e.scrollIntoView({behavior:"smooth",block:"center"})},100)}#a(t){return Object.defineProperty(t,"value",{configurable:!0,get(){return Object.getOwnPropertyDescriptor(HTMLInputElement.prototype,"value").get.call(this)},set(e){return Object.getOwnPropertyDescriptor(HTMLInputElement.prototype,"value").set.call(this,e),this.dispatchEvent(new CustomEvent("inputValueChanged",{bubbles:!0,cancelable:!0,detail:{value:e}})),e}}),t}#c(t){return this.#e.postApiV1Filesystem({showHidden:!0,requestBody:{path:t},onlyFolders:!this.showFiles()})}#d(t){let e=this.backupSettings();if(this.#t.hasV2ListOperations())return this.#e.postApiV2BackupListFolder({requestBody:{BackupId:e.id,Time:e.time,Paths:t?[t]:null,PageSize:0,Page:0}}).pipe(L(n=>n.Data??[]));{let n={id:e.id+"",prefixOnly:!1,folderContents:!0,time:e.time,filter:t?"@"+t:void 0};return this.#e.getApiV1BackupByIdFiles(n).pipe(L(i=>i.Files??[]))}}#o(t){return this.isByBackupSettings()?this.#d(t):this.#c(t)}#p(t){let e=this.isWindows(),n=t.split("\0").filter(l=>l.startsWith("-")).map(l=>l.slice(1,-1)),i=t.split("\0").filter(l=>!l.startsWith("-")).filter(Boolean),r=i.map(l=>{let s=l.split(e?"\\":"/");return s.at(-1)!==""&&s.pop(),s}),a=["/"];r.forEach(l=>{l.forEach((s,g)=>{let c=l.slice(0,g+1).join(e?"\\":"/"),p=c;p.indexOf(":")===-1&&!p.startsWith("%")&&(p="/"+c),a.includes(p)||a.push(p)})}),this.isLoading.set(!0);let C=a.map(l=>this.#o(l).pipe(L(s=>({status:"success",value:s,url:l})),ie(s=>te({status:"error",value:s,url:l}))));ne(C).pipe(q(()=>this.isLoading.set(!1))).subscribe({next:l=>{let s=l.filter(c=>c.status==="success"),g=l.filter(c=>c.status==="error");this.treeNodes.update(c=>{let p=s.flatMap(b=>b.value.map(P=>{let _=P.id,E=P.id.startsWith("%")&&P.id.endsWith("%")?P.resolvedpath+"/":P.id,x=_&&_.split("/").filter(Boolean).slice(0,-1).join("/"),I="/"+(_&&_.split("/").filter(Boolean).join("/")),y=i.findIndex(w=>this.multiSelect()?I.startsWith(w):I===w)>-1,Se=i.findIndex(w=>w===_)>-1,ye=n.findIndex(w=>w===I)>-1;return G(j({},P),{cls:E.endsWith("/")||E.endsWith("\\")?"folder":"file",parentPath:x.startsWith("%")?x:"/"+x,isSelected:y&&!ye||Se})})),d=[...new Map([...c,...p].map(b=>[b.id,b])).values()];return this.#l(),d})}})}#i(t=null,e="/"){this.isLoading.set(!0),this.#o(e).pipe(q(()=>this.isLoading.set(!1))).subscribe({next:n=>{let i=this.isByBackupSettings()?n.map(r=>{let C=r.Path.includes("\\")?"\\":"/";return{text:r.Path.split(C).filter(l=>l!=="").pop(),id:r.Path,cls:r.Path.endsWith(C)?"folder":"file",leaf:t!==null,resolvedpath:r.Path,hidden:!1}}):n;this.treeNodes.update(r=>{let a=i.map(l=>{let g=l.id.includes("\\")?"\\":"/",c=l.id.startsWith("%")&&l.id.endsWith("%")||l.id.endsWith(g)?"folder":"file";return G(j({},l),{cls:c,parentPath:e})}),C=[...new Map([...r,...a].map(l=>[l.id,l])).values()];return this.hideShortcuts()?C.filter(l=>!l.id.startsWith("%")):C})}})}static \u0275fac=function(e){return new(e||o)};static \u0275cmp=se({type:o,selectors:[["app-file-tree"]],viewQuery:function(e,n){e&1&&(z(n.treeContainerRef,we,5),z(n.formRef,Ne,5)),e&2&&pe(2)},hostVars:2,hostBindings:function(e,n){e&2&&v("disabled",n.disabled())},inputs:{multiSelect:[1,"multiSelect"],disabled:[1,"disabled"],showFiles:[1,"showFiles"],selectFiles:[1,"selectFiles"],accepts:[1,"accepts"],startingPath:[1,"startingPath"],rootPaths:[1,"rootPaths"],backupSettings:[1,"backupSettings"],pathRefreshTrigger:[1,"pathRefreshTrigger"],showHiddenNodes:[1,"showHiddenNodes"],hideShortcuts:[1,"hideShortcuts"]},outputs:{includes:"includes",excludes:"excludes"},ngContentSelectors:Re,decls:15,vars:15,consts:()=>{let t;t=$localize` Browse path `;let e;e=$localize` Manually type path `;let n;return n=$localize` Show hidden ${"\uFFFD0\uFFFD"}:INTERPOLATION: `,[["treeContainer",""],["recursiveTree",""],["formRef",""],["treeNode",""],t,e,n,[1,"section"],[1,"browse-files"],[1,"indeterminate","primary"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"primary","raised","browse-files-toggle",3,"active"],[1,"form-field"],["type","button",3,"click"],["action","",3,"click"],[1,"icon"],[1,"primary"],[1,"text",3,"click"],[1,"small"],[1,"primary","raised","browse-files-toggle",3,"click"]]},template:function(e,n){if(e&1&&(de(ke),O(0,Le,5,4,"spk-button-group"),h(1,"div",7),D(2,0,["ngProjectAs","label",5,["label"]]),h(3,"div",8,0),O(5,Be,1,0,"spk-progress-bar",9),Q(6,Ke,3,2,"ng-template",null,1,fe)(8,Ue,1,0,"ng-container",10),f(),O(9,ze,2,3,"spk-toggle",11),f(),h(10,"div",12,2)(12,"spk-form-field"),D(13,1,["ngProjectAs","label",5,["label"]]),D(14,2,["ngProjectAs","input",5,["input"]]),f()()),e&2){let i=J(7);F(n.multiSelect()?-1:0),m(),v("hidden",n.pathDiscoveryMethod()!=="browse"),m(2),v("visualize-accepted",n.accepts()),m(2),F(n.isLoading()?5:-1),m(3),K("ngTemplateOutlet",i)("ngTemplateOutletContext",V(13,Oe,V(11,Ie,n.treeStructure()))),m(),F(!n.accepts()&&!n.isByBackupSettings()?9:-1),m(),v("hidden",n.pathDiscoveryMethod()!=="path")}},dependencies:[Ce,ve,me,Pe,Ee,Te,ge,Me],styles:['[_nghost-%COMP%]{display:flex;flex-direction:column;gap:1rem}.disabled[_nghost-%COMP%]{opacity:.5;-webkit-user-select:none;user-select:none;pointer-events:none;position:relative}.disabled[_nghost-%COMP%]:before{content:"";position:absolute;inset:0;background:transparent}.fill[_nghost-%COMP%]{height:auto;overflow:hidden;flex:1 0}.fill[_nghost-%COMP%] .section[_ngcontent-%COMP%]{height:auto;overflow:hidden;flex:1 0;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr;grid-template-areas:"label toggle" "tree tree"}.fill[_nghost-%COMP%] .browse-files[_ngcontent-%COMP%]{resize:none;height:initial;grid-area:tree}.fill[_nghost-%COMP%] label[_ngcontent-%COMP%]{grid-area:label}.fill[_nghost-%COMP%] spk-toggle[_ngcontent-%COMP%]{grid-area:toggle;flex-direction:row-reverse}.section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}.form-field.hidden[_ngcontent-%COMP%]{display:none}.browse-files[_ngcontent-%COMP%]{display:flex;gap:.5rem;padding:.5rem 1rem;height:12.5rem;border:1px solid var(--base-4);border-radius:var(--shape-3);overflow:auto;resize:vertical;background:var(--base-1);position:relative}.browse-files[_ngcontent-%COMP%] spk-progress-bar[_ngcontent-%COMP%]{position:absolute;top:0;left:0;right:0}.browse-files.visualize-accepted[_ngcontent-%COMP%] [action][_ngcontent-%COMP%]:not(.accepted){opacity:.5}.browse-files.visualize-accepted[_ngcontent-%COMP%] [action].accepted[_ngcontent-%COMP%]{opacity:1}.browse-files[_ngcontent-%COMP%] spk-list[_ngcontent-%COMP%]{--list-active-bg: var(--base-3);gap:.125rem;padding:0;height:min-content;min-width:min-content}.browse-files[_ngcontent-%COMP%] spk-list[_ngcontent-%COMP%] [action][_ngcontent-%COMP%]{padding:0;gap:0;border:1px solid transparent}.browse-files[_ngcontent-%COMP%] spk-list[_ngcontent-%COMP%] [action].active[_ngcontent-%COMP%]{border-color:transparent;--list-active-bg: var(--primary-2)}.browse-files[_ngcontent-%COMP%] spk-list[_ngcontent-%COMP%] [action].indeterminate[_ngcontent-%COMP%]{border-color:var(--primary-4)}.browse-files[_ngcontent-%COMP%] spk-list[_ngcontent-%COMP%] [action].usually-hidden[_ngcontent-%COMP%]{opacity:.6}.browse-files[_ngcontent-%COMP%] spk-list[_ngcontent-%COMP%] [action].root[_ngcontent-%COMP%]{gap:.25rem}.browse-files[_ngcontent-%COMP%] spk-list[_ngcontent-%COMP%] [action].root[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]:has(spk-icon:nth-child(2)){width:3rem}.browse-files[_ngcontent-%COMP%] spk-list[_ngcontent-%COMP%] [action].root[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:1.5rem}.browse-files[_ngcontent-%COMP%] spk-list[_ngcontent-%COMP%] [action][_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{flex:1 0;height:100%;width:max-content;display:flex;align-items:center}.browse-files[_ngcontent-%COMP%] spk-list[_ngcontent-%COMP%] [action][_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{width:3rem;gap:.25rem;height:1.5rem;display:flex;align-items:center;justify-content:center;cursor:pointer}.browse-files[_ngcontent-%COMP%] spk-list[_ngcontent-%COMP%] [action][_ngcontent-%COMP%] .icon.file[_ngcontent-%COMP%]{width:2rem;padding:0 .25rem}.browse-files-toggle[_ngcontent-%COMP%]{color:var(--base-9)}.hidden[_ngcontent-%COMP%]{display:none}'],changeDetection:0})};export{ee as a};
@@ -0,0 +1 @@
1
+ import{e as a,f as b}from"./chunk-EKZRKTLM.js";import"./chunk-FLMFEFKM.js";import"./chunk-WIJ3HW7I.js";import"./chunk-WY2KPAVB.js";import"./chunk-3PYBMCOB.js";import"./chunk-FPLBURO5.js";import"./chunk-3KIPRGE2.js";import"./chunk-7LEXBIXG.js";import"./chunk-P4ZYFRD3.js";import"./chunk-MHALSLG3.js";import"./chunk-FWVOVJCG.js";import"./chunk-VKD4Y3YQ.js";import"./chunk-WIDMAJIO.js";import"./chunk-K6EZTPNQ.js";import"./chunk-EUDKD2JW.js";export{a as createRestoreSelectFilesForm,b as default};
@@ -0,0 +1 @@
1
+ import{h as c}from"./chunk-FWVOVJCG.js";import{F as a,Gc as i,P as p,S as u,X as l,la as o}from"./chunk-K6EZTPNQ.js";var m=class r{#e=l(c);isLoaded=o(!1);systemInfo=o(null);filterGroups=o(null);backendModules=i(()=>this.systemInfo()?.BackendModules??[]);allOptionsGrouped=i(()=>{let s={displayName:"Default",options:this.systemInfo()?.Options?.map(this.#s)??[]},e=this.systemInfo()?.GenericModules?.map(t=>({displayName:t.DisplayName??t.Key,options:t.Options?.map(this.#s)??[]}))??[],n=this.systemInfo()?.CompressionModules?.map(t=>({displayName:t.DisplayName??t.Key,options:t.Options?.map(this.#s)??[]}))??[],d=this.systemInfo()?.EncryptionModules?.map(t=>({displayName:t.DisplayName??t.Key,options:t.Options?.map(this.#s)??[]}))??[];return[s,...e,...n,...d]});allOptions=i(()=>this.allOptionsGrouped().reduce((s,e)=>[...s,...e.options],[]));hasWebSocket=i(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:websocket"));hasV2ListOperations=i(()=>{let s=this.systemInfo()?.APIExtensions??[];return s.includes("v2:backup:list-filesets")&&s.includes("v2:backup:list-folder")});hasV2TestOperations=i(()=>(this.systemInfo()?.APIExtensions??[]).includes("v2:destination:test"));hasProgressSubscribeOption=i(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:subscribe:progress"));hasTaskSubscribeOption=i(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:subscribe:taskqueue"));hasBackupListSubscribeOption=i(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:subscribe:backuplist"));hasWebSocketAuth=i(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:websocket:authenticate"));preload(s=!1){let e=this.#e.getApiV1Systeminfo().pipe(p(n=>{this.systemInfo.set(n)}),a(()=>this.isLoaded.set(!0)));if(s)return e;e.subscribe()}preloadFilterGroups(s=!1){let e=this.#e.getApiV1SysteminfoFiltergroups().pipe(p(n=>{this.filterGroups.set(n)}),a(()=>this.isLoaded.set(!0)));if(s)return e;e.subscribe()}#s(s){return{name:s.Name,type:s.Type,shortDescription:s.ShortDescription??void 0,longDescription:s.LongDescription??void 0,deprecatedDescription:s.Deprecated??!1?s.DeprecationMessage??void 0:void 0,options:s.ValidValues,defaultValue:s.DefaultValue}}static \u0275fac=function(e){return new(e||r)};static \u0275prov=u({token:r,factory:r.\u0275fac,providedIn:"root"})};export{m as a};
@@ -0,0 +1,2 @@
1
+ import{a as De,f as we}from"./chunk-WIDMAJIO.js";import{$ as Pe,B as ne,C as Te,F as ve,N as q,Q as w,S as v,V as I,W as g,X as T,Y as Be,_ as Ve,f as ie,ga as ke,gb as Ie,ha as Ee,m as be,n as U,na as Oe,o as oe,r as O,x as Re,z as ge}from"./chunk-K6EZTPNQ.js";import{a as E,b as Ae}from"./chunk-EUDKD2JW.js";var G=class{},M=class{},b=class s{headers;normalizedNames=new Map;lazyInit;lazyUpdate=null;constructor(e){e?typeof e=="string"?this.lazyInit=()=>{this.headers=new Map,e.split(`
2
+ `).forEach(t=>{let r=t.indexOf(":");if(r>0){let o=t.slice(0,r),p=t.slice(r+1).trim();this.addHeaderEntry(o,p)}})}:typeof Headers<"u"&&e instanceof Headers?(this.headers=new Map,e.forEach((t,r)=>{this.addHeaderEntry(r,t)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(e).forEach(([t,r])=>{this.setHeaderEntries(t,r)})}:this.headers=new Map}has(e){return this.init(),this.headers.has(e.toLowerCase())}get(e){this.init();let t=this.headers.get(e.toLowerCase());return t&&t.length>0?t[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(e){return this.init(),this.headers.get(e.toLowerCase())||null}append(e,t){return this.clone({name:e,value:t,op:"a"})}set(e,t){return this.clone({name:e,value:t,op:"s"})}delete(e,t){return this.clone({name:e,value:t,op:"d"})}maybeSetNormalizedName(e,t){this.normalizedNames.has(t)||this.normalizedNames.set(t,e)}init(){this.lazyInit&&(this.lazyInit instanceof s?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(e=>this.applyUpdate(e)),this.lazyUpdate=null))}copyFrom(e){e.init(),Array.from(e.headers.keys()).forEach(t=>{this.headers.set(t,e.headers.get(t)),this.normalizedNames.set(t,e.normalizedNames.get(t))})}clone(e){let t=new s;return t.lazyInit=this.lazyInit&&this.lazyInit instanceof s?this.lazyInit:this,t.lazyUpdate=(this.lazyUpdate||[]).concat([e]),t}applyUpdate(e){let t=e.name.toLowerCase();switch(e.op){case"a":case"s":let r=e.value;if(typeof r=="string"&&(r=[r]),r.length===0)return;this.maybeSetNormalizedName(e.name,t);let o=(e.op==="a"?this.headers.get(t):void 0)||[];o.push(...r),this.headers.set(t,o);break;case"d":let p=e.value;if(!p)this.headers.delete(t),this.normalizedNames.delete(t);else{let i=this.headers.get(t);if(!i)return;i=i.filter(d=>p.indexOf(d)===-1),i.length===0?(this.headers.delete(t),this.normalizedNames.delete(t)):this.headers.set(t,i)}break}}addHeaderEntry(e,t){let r=e.toLowerCase();this.maybeSetNormalizedName(e,r),this.headers.has(r)?this.headers.get(r).push(t):this.headers.set(r,[t])}setHeaderEntries(e,t){let r=(Array.isArray(t)?t:[t]).map(p=>p.toString()),o=e.toLowerCase();this.headers.set(o,r),this.maybeSetNormalizedName(e,o)}forEach(e){this.init(),Array.from(this.normalizedNames.keys()).forEach(t=>e(this.normalizedNames.get(t),this.headers.get(t)))}};var H=class{encodeKey(e){return Se(e)}encodeValue(e){return Se(e)}decodeKey(e){return decodeURIComponent(e)}decodeValue(e){return decodeURIComponent(e)}};function Ye(s,e){let t=new Map;return s.length>0&&s.replace(/^\?/,"").split("&").forEach(o=>{let p=o.indexOf("="),[i,d]=p==-1?[e.decodeKey(o),""]:[e.decodeKey(o.slice(0,p)),e.decodeValue(o.slice(p+1))],u=t.get(i)||[];u.push(d),t.set(i,u)}),t}var Qe=/%(\d[a-f0-9])/gi,Ze={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function Se(s){return encodeURIComponent(s).replace(Qe,(e,t)=>Ze[t]??e)}function $(s){return`${s}`}var V=class s{map;encoder;updates=null;cloneFrom=null;constructor(e={}){if(this.encoder=e.encoder||new H,e.fromString){if(e.fromObject)throw new w(2805,!1);this.map=Ye(e.fromString,this.encoder)}else e.fromObject?(this.map=new Map,Object.keys(e.fromObject).forEach(t=>{let r=e.fromObject[t],o=Array.isArray(r)?r.map($):[$(r)];this.map.set(t,o)})):this.map=null}has(e){return this.init(),this.map.has(e)}get(e){this.init();let t=this.map.get(e);return t?t[0]:null}getAll(e){return this.init(),this.map.get(e)||null}keys(){return this.init(),Array.from(this.map.keys())}append(e,t){return this.clone({param:e,value:t,op:"a"})}appendAll(e){let t=[];return Object.keys(e).forEach(r=>{let o=e[r];Array.isArray(o)?o.forEach(p=>{t.push({param:r,value:p,op:"a"})}):t.push({param:r,value:o,op:"a"})}),this.clone(t)}set(e,t){return this.clone({param:e,value:t,op:"s"})}delete(e,t){return this.clone({param:e,value:t,op:"d"})}toString(){return this.init(),this.keys().map(e=>{let t=this.encoder.encodeKey(e);return this.map.get(e).map(r=>t+"="+this.encoder.encodeValue(r)).join("&")}).filter(e=>e!=="").join("&")}clone(e){let t=new s({encoder:this.encoder});return t.cloneFrom=this.cloneFrom||this,t.updates=(this.updates||[]).concat(e),t}init(){this.map===null&&(this.map=new Map),this.cloneFrom!==null&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(e=>this.map.set(e,this.cloneFrom.map.get(e))),this.updates.forEach(e=>{switch(e.op){case"a":case"s":let t=(e.op==="a"?this.map.get(e.param):void 0)||[];t.push($(e.value)),this.map.set(e.param,t);break;case"d":if(e.value!==void 0){let r=this.map.get(e.param)||[],o=r.indexOf($(e.value));o!==-1&&r.splice(o,1),r.length>0?this.map.set(e.param,r):this.map.delete(e.param)}else{this.map.delete(e.param);break}}}),this.cloneFrom=this.updates=null)}};var Y=class{map=new Map;set(e,t){return this.map.set(e,t),this}get(e){return this.map.has(e)||this.map.set(e,e.defaultValue()),this.map.get(e)}delete(e){return this.map.delete(e),this}has(e){return this.map.has(e)}keys(){return this.map.keys()}};function et(s){switch(s){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}function Ne(s){return typeof ArrayBuffer<"u"&&s instanceof ArrayBuffer}function xe(s){return typeof Blob<"u"&&s instanceof Blob}function Ge(s){return typeof FormData<"u"&&s instanceof FormData}function tt(s){return typeof URLSearchParams<"u"&&s instanceof URLSearchParams}var z="Content-Type",Q="Accept",ce="X-Request-URL",Fe="text/plain",Le="application/json",Ce=`${Le}, ${Fe}, */*`,x=class s{url;body=null;headers;context;reportProgress=!1;withCredentials=!1;keepalive=!1;responseType="json";method;params;urlWithParams;transferCache;constructor(e,t,r,o){this.url=t,this.method=e.toUpperCase();let p;if(et(this.method)||o?(this.body=r!==void 0?r:null,p=o):p=r,p&&(this.reportProgress=!!p.reportProgress,this.withCredentials=!!p.withCredentials,this.keepalive=!!p.keepalive,p.responseType&&(this.responseType=p.responseType),p.headers&&(this.headers=p.headers),p.context&&(this.context=p.context),p.params&&(this.params=p.params),this.transferCache=p.transferCache),this.headers??=new b,this.context??=new Y,!this.params)this.params=new V,this.urlWithParams=t;else{let i=this.params.toString();if(i.length===0)this.urlWithParams=t;else{let d=t.indexOf("?"),u=d===-1?"?":d<t.length-1?"&":"";this.urlWithParams=t+u+i}}}serializeBody(){return this.body===null?null:typeof this.body=="string"||Ne(this.body)||xe(this.body)||Ge(this.body)||tt(this.body)?this.body:this.body instanceof V?this.body.toString():typeof this.body=="object"||typeof this.body=="boolean"||Array.isArray(this.body)?JSON.stringify(this.body):this.body.toString()}detectContentTypeHeader(){return this.body===null||Ge(this.body)?null:xe(this.body)?this.body.type||null:Ne(this.body)?null:typeof this.body=="string"?Fe:this.body instanceof V?"application/x-www-form-urlencoded;charset=UTF-8":typeof this.body=="object"||typeof this.body=="number"||typeof this.body=="boolean"?Le:null}clone(e={}){let t=e.method||this.method,r=e.url||this.url,o=e.responseType||this.responseType,p=e.keepalive??this.keepalive,i=e.transferCache??this.transferCache,d=e.body!==void 0?e.body:this.body,u=e.withCredentials??this.withCredentials,h=e.reportProgress??this.reportProgress,m=e.headers||this.headers,A=e.params||this.params,j=e.context??this.context;return e.setHeaders!==void 0&&(m=Object.keys(e.setHeaders).reduce((y,R)=>y.set(R,e.setHeaders[R]),m)),e.setParams&&(A=Object.keys(e.setParams).reduce((y,R)=>y.set(R,e.setParams[R]),A)),new s(t,r,d,{params:A,headers:m,context:j,reportProgress:h,responseType:o,withCredentials:u,transferCache:i,keepalive:p})}},P=function(s){return s[s.Sent=0]="Sent",s[s.UploadProgress=1]="UploadProgress",s[s.ResponseHeader=2]="ResponseHeader",s[s.DownloadProgress=3]="DownloadProgress",s[s.Response=4]="Response",s[s.User=5]="User",s}(P||{}),F=class{headers;status;statusText;url;ok;type;constructor(e,t=200,r="OK"){this.headers=e.headers||new b,this.status=e.status!==void 0?e.status:t,this.statusText=e.statusText||r,this.url=e.url||null,this.ok=this.status>=200&&this.status<300}},J=class s extends F{constructor(e={}){super(e)}type=P.ResponseHeader;clone(e={}){return new s({headers:e.headers||this.headers,status:e.status!==void 0?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}},L=class s extends F{body;constructor(e={}){super(e),this.body=e.body!==void 0?e.body:null}type=P.Response;clone(e={}){return new s({body:e.body!==void 0?e.body:this.body,headers:e.headers||this.headers,status:e.status!==void 0?e.status:this.status,statusText:e.statusText||this.statusText,url:e.url||this.url||void 0})}},B=class extends F{name="HttpErrorResponse";message;error;ok=!1;constructor(e){super(e,0,"Unknown Error"),this.status>=200&&this.status<300?this.message=`Http failure during parsing for ${e.url||"(unknown url)"}`:this.message=`Http failure response for ${e.url||"(unknown url)"}: ${e.status} ${e.statusText}`,this.error=e.error||null}},_e=200,st=204;function ae(s,e){return{body:e,headers:s.headers,context:s.context,observe:s.observe,params:s.params,reportProgress:s.reportProgress,responseType:s.responseType,withCredentials:s.withCredentials,transferCache:s.transferCache,keepalive:s.keepalive}}var C=(()=>{class s{handler;constructor(t){this.handler=t}request(t,r,o={}){let p;if(t instanceof x)p=t;else{let u;o.headers instanceof b?u=o.headers:u=new b(o.headers);let h;o.params&&(o.params instanceof V?h=o.params:h=new V({fromObject:o.params})),p=new x(t,r,o.body!==void 0?o.body:null,{headers:u,context:o.context,params:h,reportProgress:o.reportProgress,responseType:o.responseType||"json",withCredentials:o.withCredentials,transferCache:o.transferCache,keepalive:o.keepalive})}let i=U(p).pipe(Te(u=>this.handler.handle(u)));if(t instanceof x||o.observe==="events")return i;let d=i.pipe(ge(u=>u instanceof L));switch(o.observe||"body"){case"body":switch(p.responseType){case"arraybuffer":return d.pipe(O(u=>{if(u.body!==null&&!(u.body instanceof ArrayBuffer))throw new w(2806,!1);return u.body}));case"blob":return d.pipe(O(u=>{if(u.body!==null&&!(u.body instanceof Blob))throw new w(2807,!1);return u.body}));case"text":return d.pipe(O(u=>{if(u.body!==null&&typeof u.body!="string")throw new w(2808,!1);return u.body}));case"json":default:return d.pipe(O(u=>u.body))}case"response":return d;default:throw new w(2809,!1)}}delete(t,r={}){return this.request("DELETE",t,r)}get(t,r={}){return this.request("GET",t,r)}head(t,r={}){return this.request("HEAD",t,r)}jsonp(t,r){return this.request("JSONP",t,{params:new V().append(r,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,r={}){return this.request("OPTIONS",t,r)}patch(t,r,o={}){return this.request("PATCH",t,ae(o,r))}post(t,r,o={}){return this.request("POST",t,ae(o,r))}put(t,r,o={}){return this.request("PUT",t,ae(o,r))}static \u0275fac=function(r){return new(r||s)(g(G))};static \u0275prov=v({token:s,factory:s.\u0275fac})}return s})(),rt=/^\)\]\}',?\n/;function Me(s){if(s.url)return s.url;let e=ce.toLocaleLowerCase();return s.headers.get(e)}var je=new I(""),W=(()=>{class s{fetchImpl=T(pe,{optional:!0})?.fetch??((...t)=>globalThis.fetch(...t));ngZone=T(Ie);destroyRef=T(Ee);destroyed=!1;constructor(){this.destroyRef.onDestroy(()=>{this.destroyed=!0})}handle(t){return new ie(r=>{let o=new AbortController;return this.doRequest(t,o.signal,r).then(ue,p=>r.error(new B({error:p}))),()=>o.abort()})}async doRequest(t,r,o){let p=this.createRequestInit(t),i;try{let y=this.ngZone.runOutsideAngular(()=>this.fetchImpl(t.urlWithParams,E({signal:r},p)));it(y),o.next({type:P.Sent}),i=await y}catch(y){o.error(new B({error:y,status:y.status??0,statusText:y.statusText,url:t.urlWithParams,headers:y.headers}));return}let d=new b(i.headers),u=i.statusText,h=Me(i)??t.urlWithParams,m=i.status,A=null;if(t.reportProgress&&o.next(new J({headers:d,status:m,statusText:u,url:h})),i.body){let y=i.headers.get("content-length"),R=[],c=i.body.getReader(),l=0,k,S,f=typeof Zone<"u"&&Zone.current,N=!1;if(await this.ngZone.runOutsideAngular(async()=>{for(;;){if(this.destroyed){await c.cancel(),N=!0;break}let{done:D,value:re}=await c.read();if(D)break;if(R.push(re),l+=re.length,t.reportProgress){S=t.responseType==="text"?(S??"")+(k??=new TextDecoder).decode(re,{stream:!0}):void 0;let me=()=>o.next({type:P.DownloadProgress,total:y?+y:void 0,loaded:l,partialText:S});f?f.run(me):me()}}}),N){o.complete();return}let se=this.concatChunks(R,l);try{let D=i.headers.get(z)??"";A=this.parseBody(t,se,D)}catch(D){o.error(new B({error:D,headers:new b(i.headers),status:i.status,statusText:i.statusText,url:Me(i)??t.urlWithParams}));return}}m===0&&(m=A?_e:0),m>=200&&m<300?(o.next(new L({body:A,headers:d,status:m,statusText:u,url:h})),o.complete()):o.error(new B({error:A,headers:d,status:m,statusText:u,url:h}))}parseBody(t,r,o){switch(t.responseType){case"json":let p=new TextDecoder().decode(r).replace(rt,"");return p===""?null:JSON.parse(p);case"text":return new TextDecoder().decode(r);case"blob":return new Blob([r],{type:o});case"arraybuffer":return r.buffer}}createRequestInit(t){let r={},o=t.withCredentials?"include":void 0;if(t.headers.forEach((p,i)=>r[p]=i.join(",")),t.headers.has(Q)||(r[Q]=Ce),!t.headers.has(z)){let p=t.detectContentTypeHeader();p!==null&&(r[z]=p)}return{body:t.serializeBody(),method:t.method,headers:r,credentials:o,keepalive:t.keepalive}}concatChunks(t,r){let o=new Uint8Array(r),p=0;for(let i of t)o.set(i,p),p+=i.length;return o}static \u0275fac=function(r){return new(r||s)};static \u0275prov=v({token:s,factory:s.\u0275fac})}return s})(),pe=class{};function ue(){}function it(s){s.then(ue,ue)}function ot(s,e){return e(s)}function nt(s,e,t){return(r,o)=>Pe(t,()=>e(r,p=>s(p,o)))}var le=new I(""),Ue=new I(""),qe=new I("",{providedIn:"root",factory:()=>!0});var Z=(()=>{class s extends G{backend;injector;chain=null;pendingTasks=T(Oe);contributeToStability=T(qe);constructor(t,r){super(),this.backend=t,this.injector=r}handle(t){if(this.chain===null){let r=Array.from(new Set([...this.injector.get(le),...this.injector.get(Ue,[])]));this.chain=r.reduceRight((o,p)=>nt(o,p,this.injector),ot)}if(this.contributeToStability){let r=this.pendingTasks.add();return this.chain(t,o=>this.backend.handle(o)).pipe(ve(r))}else return this.chain(t,r=>this.backend.handle(r))}static \u0275fac=function(r){return new(r||s)(g(M),g(Ve))};static \u0275prov=v({token:s,factory:s.\u0275fac})}return s})();var at=/^\)\]\}',?\n/,pt=RegExp(`^${ce}:`,"m");function ut(s){return"responseURL"in s&&s.responseURL?s.responseURL:pt.test(s.getAllResponseHeaders())?s.getResponseHeader(ce):null}var de=(()=>{class s{xhrFactory;constructor(t){this.xhrFactory=t}handle(t){if(t.method==="JSONP")throw new w(-2800,!1);t.keepalive;let r=this.xhrFactory;return(r.\u0275loadImpl?be(r.\u0275loadImpl()):U(null)).pipe(q(()=>new ie(p=>{let i=r.build();if(i.open(t.method,t.urlWithParams),t.withCredentials&&(i.withCredentials=!0),t.headers.forEach((c,l)=>i.setRequestHeader(c,l.join(","))),t.headers.has(Q)||i.setRequestHeader(Q,Ce),!t.headers.has(z)){let c=t.detectContentTypeHeader();c!==null&&i.setRequestHeader(z,c)}if(t.responseType){let c=t.responseType.toLowerCase();i.responseType=c!=="json"?c:"text"}let d=t.serializeBody(),u=null,h=()=>{if(u!==null)return u;let c=i.statusText||"OK",l=new b(i.getAllResponseHeaders()),k=ut(i)||t.url;return u=new J({headers:l,status:i.status,statusText:c,url:k}),u},m=()=>{let{headers:c,status:l,statusText:k,url:S}=h(),f=null;l!==st&&(f=typeof i.response>"u"?i.responseText:i.response),l===0&&(l=f?_e:0);let N=l>=200&&l<300;if(t.responseType==="json"&&typeof f=="string"){let se=f;f=f.replace(at,"");try{f=f!==""?JSON.parse(f):null}catch(D){f=se,N&&(N=!1,f={error:D,text:f})}}N?(p.next(new L({body:f,headers:c,status:l,statusText:k,url:S||void 0})),p.complete()):p.error(new B({error:f,headers:c,status:l,statusText:k,url:S||void 0}))},A=c=>{let{url:l}=h(),k=new B({error:c,status:i.status||0,statusText:i.statusText||"Unknown Error",url:l||void 0});p.error(k)},j=!1,y=c=>{j||(p.next(h()),j=!0);let l={type:P.DownloadProgress,loaded:c.loaded};c.lengthComputable&&(l.total=c.total),t.responseType==="text"&&i.responseText&&(l.partialText=i.responseText),p.next(l)},R=c=>{let l={type:P.UploadProgress,loaded:c.loaded};c.lengthComputable&&(l.total=c.total),p.next(l)};return i.addEventListener("load",m),i.addEventListener("error",A),i.addEventListener("timeout",A),i.addEventListener("abort",A),t.reportProgress&&(i.addEventListener("progress",y),d!==null&&i.upload&&i.upload.addEventListener("progress",R)),i.send(d),p.next({type:P.Sent}),()=>{i.removeEventListener("error",A),i.removeEventListener("abort",A),i.removeEventListener("load",m),i.removeEventListener("timeout",A),t.reportProgress&&(i.removeEventListener("progress",y),d!==null&&i.upload&&i.upload.removeEventListener("progress",R)),i.readyState!==i.DONE&&i.abort()}})))}static \u0275fac=function(r){return new(r||s)(g(we))};static \u0275prov=v({token:s,factory:s.\u0275fac})}return s})(),ze=new I(""),dt="XSRF-TOKEN",ct=new I("",{providedIn:"root",factory:()=>dt}),lt="X-XSRF-TOKEN",ht=new I("",{providedIn:"root",factory:()=>lt}),X=class{},yt=(()=>{class s{doc;cookieName;lastCookieString="";lastToken=null;parseCount=0;constructor(t,r){this.doc=t,this.cookieName=r}getToken(){let t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=De(t,this.cookieName),this.lastCookieString=t),this.lastToken}static \u0275fac=function(r){return new(r||s)(g(ke),g(ct))};static \u0275prov=v({token:s,factory:s.\u0275fac})}return s})();function ft(s,e){let t=s.url.toLowerCase();if(!T(ze)||s.method==="GET"||s.method==="HEAD"||t.startsWith("http://")||t.startsWith("https://"))return e(s);let r=T(X).getToken(),o=T(ht);return r!=null&&!s.headers.has(o)&&(s=s.clone({headers:s.headers.set(o,r)})),e(s)}var ee=function(s){return s[s.Interceptors=0]="Interceptors",s[s.LegacyInterceptors=1]="LegacyInterceptors",s[s.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",s[s.NoXsrfProtection=3]="NoXsrfProtection",s[s.JsonpSupport=4]="JsonpSupport",s[s.RequestsMadeViaParent=5]="RequestsMadeViaParent",s[s.Fetch=6]="Fetch",s}(ee||{});function Je(s,e){return{\u0275kind:s,\u0275providers:e}}function mt(...s){let e=[C,de,Z,{provide:G,useExisting:Z},{provide:M,useFactory:()=>T(je,{optional:!0})??T(de)},{provide:le,useValue:ft,multi:!0},{provide:ze,useValue:!0},{provide:X,useClass:yt}];for(let t of s)e.push(...t.\u0275providers);return Be(e)}function At(s){return Je(ee.Interceptors,s.map(e=>({provide:le,useValue:e,multi:!0})))}function bt(){return Je(ee.Fetch,[W,{provide:je,useExisting:W},{provide:M,useExisting:W}])}var he=class{_fns;constructor(){this._fns=[]}eject(e){let t=this._fns.indexOf(e);t!==-1&&(this._fns=[...this._fns.slice(0,t),...this._fns.slice(t+1)])}use(e){this._fns=[...this._fns,e]}},n={BASE:"",CREDENTIALS:"include",ENCODE_PATH:void 0,HEADERS:void 0,PASSWORD:void 0,TOKEN:void 0,USERNAME:void 0,VERSION:"1",WITH_CREDENTIALS:!1,interceptors:{response:new he}};var _=class extends Error{url;status;statusText;body;request;constructor(e,t,r){super(r),this.name="ApiError",this.url=t.url,this.status=t.status,this.statusText=t.statusText,this.body=t.body,this.request=e}};var K=s=>typeof s=="string",ye=s=>K(s)&&s!=="",fe=s=>s instanceof Blob,Xe=s=>s instanceof FormData,gt=s=>{try{return btoa(s)}catch{return Buffer.from(s).toString("base64")}},Tt=s=>{let e=[],t=(o,p)=>{e.push(`${encodeURIComponent(o)}=${encodeURIComponent(String(p))}`)},r=(o,p)=>{p!=null&&(p instanceof Date?t(o,p.toISOString()):Array.isArray(p)?p.forEach(i=>r(o,i)):typeof p=="object"?Object.entries(p).forEach(([i,d])=>r(`${o}[${i}]`,d)):t(o,p))};return Object.entries(s).forEach(([o,p])=>r(o,p)),e.length?`?${e.join("&")}`:""},vt=(s,e)=>{let t=s.ENCODE_PATH||encodeURI,r=e.url.replace("{api-version}",s.VERSION).replace(/{(.*?)}/g,(p,i)=>e.path?.hasOwnProperty(i)?t(String(e.path[i])):p),o=s.BASE+r;return e.query?o+Tt(e.query):o},Bt=s=>{if(s.formData){let e=new FormData,t=(r,o)=>{K(o)||fe(o)?e.append(r,o):e.append(r,JSON.stringify(o))};return Object.entries(s.formData).filter(([,r])=>r!=null).forEach(([r,o])=>{Array.isArray(o)?o.forEach(p=>t(r,p)):t(r,o)}),e}},te=async(s,e)=>typeof e=="function"?e(s):e,Vt=(s,e)=>Re({token:te(e,s.TOKEN),username:te(e,s.USERNAME),password:te(e,s.PASSWORD),additionalHeaders:te(e,s.HEADERS)}).pipe(O(({token:t,username:r,password:o,additionalHeaders:p})=>{let i=Object.entries(E(E({Accept:"application/json"},p),e.headers)).filter(([,d])=>d!=null).reduce((d,[u,h])=>Ae(E({},d),{[u]:String(h)}),{});if(ye(t)&&(i.Authorization=`Bearer ${t}`),ye(r)&&ye(o)){let d=gt(`${r}:${o}`);i.Authorization=`Basic ${d}`}return e.body!==void 0&&(e.mediaType?i["Content-Type"]=e.mediaType:fe(e.body)?i["Content-Type"]=e.body.type||"application/octet-stream":K(e.body)?i["Content-Type"]="text/plain":Xe(e.body)||(i["Content-Type"]="application/json")),new b(i)})),Pt=s=>{if(s.body)return s.mediaType?.includes("application/json")||s.mediaType?.includes("+json")?JSON.stringify(s.body):K(s.body)||fe(s.body)||Xe(s.body)?s.body:JSON.stringify(s.body)},kt=(s,e,t,r,o,p,i)=>t.request(e.method,r,{headers:i,body:o??p,withCredentials:s.WITH_CREDENTIALS,observe:"response"}),Et=(s,e)=>{if(e){let t=s.headers.get(e);if(K(t))return t}},Ot=s=>{if(s.status!==204&&s.body!==null)return s.body},It=(s,e)=>{let r=E({400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",407:"Proxy Authentication Required",408:"Request Timeout",409:"Conflict",410:"Gone",411:"Length Required",412:"Precondition Failed",413:"Payload Too Large",414:"URI Too Long",415:"Unsupported Media Type",416:"Range Not Satisfiable",417:"Expectation Failed",418:"Im a teapot",421:"Misdirected Request",422:"Unprocessable Content",423:"Locked",424:"Failed Dependency",425:"Too Early",426:"Upgrade Required",428:"Precondition Required",429:"Too Many Requests",431:"Request Header Fields Too Large",451:"Unavailable For Legal Reasons",500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported",506:"Variant Also Negotiates",507:"Insufficient Storage",508:"Loop Detected",510:"Not Extended",511:"Network Authentication Required"},s.errors)[e.status];if(r)throw new _(s,e,r);if(!e.ok){let o=e.status??"unknown",p=e.statusText??"unknown",i=(()=>{try{return JSON.stringify(e.body,null,2)}catch{return}})();throw new _(s,e,`Generic Error: status: ${o}; status text: ${p}; body: ${i}`)}},a=(s,e,t)=>{let r=vt(s,t),o=Bt(t),p=Pt(t);return Vt(s,t).pipe(q(i=>kt(s,t,e,r,p,o,i)),q(async i=>{for(let m of s.interceptors.response._fns)i=await m(i);let d=Ot(i),u=Et(i,t.responseHeader),h=d;return t.responseTransformer&&i.ok&&(h=await t.responseTransformer(d)),{url:r,ok:i.ok,status:i.status,statusText:i.statusText,body:u??h}}),ne(i=>i.status?U({url:r,ok:i.ok,status:i.status,statusText:i.statusText,body:i.error??i.statusText}):oe(()=>i)),O(i=>(It(t,i),i.body)),ne(i=>oe(()=>i)))};var Ke=class s{constructor(e){this.http=e}getApiV1Commandline(){return a(n,this.http,{method:"GET",url:"/api/v1/commandline"})}static \u0275fac=function(t){return new(t||s)(g(C))};static \u0275prov=v({token:s,factory:s.\u0275fac,providedIn:"root"})},$e=class s{constructor(e){this.http=e}postApiV1Commandline(e){return a(n,this.http,{method:"POST",url:"/api/v1/commandline",body:e.requestBody,mediaType:"application/json"})}getApiV1Acknowledgements(){return a(n,this.http,{method:"GET",url:"/api/v1/acknowledgements"})}postApiV1AuthRefresh(){return a(n,this.http,{method:"POST",url:"/api/v1/auth/refresh"})}postApiV1AuthSignin(e){return a(n,this.http,{method:"POST",url:"/api/v1/auth/signin",body:e.requestBody,mediaType:"application/json"})}postApiV1AuthLogin(e){return a(n,this.http,{method:"POST",url:"/api/v1/auth/login",body:e.requestBody,mediaType:"application/json"})}postApiV1AuthIssuesignintoken(e){return a(n,this.http,{method:"POST",url:"/api/v1/auth/issuesignintoken",body:e.requestBody,mediaType:"application/json"})}postApiV1AuthRefreshLogout(){return a(n,this.http,{method:"POST",url:"/api/v1/auth/refresh/logout"})}postApiV1AuthIssuetokenByOperation(e){return a(n,this.http,{method:"POST",url:"/api/v1/auth/issuetoken/{operation}",path:{operation:e.operation}})}postApiV1AuthIssueForeverToken(){return a(n,this.http,{method:"POST",url:"/api/v1/auth/issue-forever-token"})}getApiV1Backupdefaults(){return a(n,this.http,{method:"GET",url:"/api/v1/backupdefaults"})}getApiV1Backups(e={}){return a(n,this.http,{method:"GET",url:"/api/v1/backups",query:{orderBy:e.orderBy}})}postApiV1Backups(e){return a(n,this.http,{method:"POST",url:"/api/v1/backups",query:{temporary:e.temporary,existingdb:e.existingdb},body:e.requestBody,mediaType:"application/json"})}postApiV1BackupsImport(e){return a(n,this.http,{method:"POST",url:"/api/v1/backups/import",body:e.requestBody,mediaType:"application/json"})}getApiV1BugreportByReportid(e){return a(n,this.http,{method:"GET",url:"/api/v1/bugreport/{reportid}",path:{reportid:e.reportid},query:{token:e.token}})}getApiV1Changelog(e={}){return a(n,this.http,{method:"GET",url:"/api/v1/changelog",query:{"from-update":e.fromUpdate}})}getApiV1CommandlineByRunid(e){return a(n,this.http,{method:"GET",url:"/api/v1/commandline/{runid}",path:{runid:e.runid},query:{offset:e.offset,pagesize:e.pagesize}})}postApiV1CommandlineByRunidAbort(e){return a(n,this.http,{method:"POST",url:"/api/v1/commandline/{runid}/abort",path:{runid:e.runid}})}postApiV1Filesystem(e){return a(n,this.http,{method:"POST",url:"/api/v1/filesystem",query:{onlyFolders:e.onlyFolders,showHidden:e.showHidden},body:e.requestBody,mediaType:"application/json"})}postApiV1FilesystemValidate(e){return a(n,this.http,{method:"POST",url:"/api/v1/filesystem/validate",body:e.requestBody,mediaType:"application/json"})}getApiV1Hyperv(){return a(n,this.http,{method:"GET",url:"/api/v1/hyperv"})}getApiV1HypervByKey(e){return a(n,this.http,{method:"GET",url:"/api/v1/hyperv/{key}",path:{key:e.key}})}getApiV1Licenses(){return a(n,this.http,{method:"GET",url:"/api/v1/licenses"})}getApiV1LogdataPoll(e){return a(n,this.http,{method:"GET",url:"/api/v1/logdata/poll",query:{level:e.level,id:e.id,pagesize:e.pagesize}})}getApiV1LogdataLog(e={}){return a(n,this.http,{method:"GET",url:"/api/v1/logdata/log",query:{offset:e.offset,pagesize:e.pagesize}})}getApiV1LogdataCrashlog(){return a(n,this.http,{method:"GET",url:"/api/v1/logdata/crashlog"})}getApiV1Mssql(){return a(n,this.http,{method:"GET",url:"/api/v1/mssql"})}getApiV1MssqlByKey(e){return a(n,this.http,{method:"GET",url:"/api/v1/mssql/{key}",path:{key:e.key}})}getApiV1NotificationById(e){return a(n,this.http,{method:"GET",url:"/api/v1/notification/{id}",path:{id:e.id}})}deleteApiV1NotificationById(e){return a(n,this.http,{method:"DELETE",url:"/api/v1/notification/{id}",path:{id:e.id}})}getApiV1Notifications(){return a(n,this.http,{method:"GET",url:"/api/v1/notifications"})}getApiV1Progressstate(){return a(n,this.http,{method:"GET",url:"/api/v1/progressstate"})}getApiV1RemotecontrolStatus(){return a(n,this.http,{method:"GET",url:"/api/v1/remotecontrol/status"})}postApiV1RemoteoperationDbpath(e){return a(n,this.http,{method:"POST",url:"/api/v1/remoteoperation/dbpath",body:e.requestBody,mediaType:"application/json"})}postApiV1RemoteoperationTest(e){return a(n,this.http,{method:"POST",url:"/api/v1/remoteoperation/test",query:{autocreate:e.autocreate},body:e.requestBody,mediaType:"application/json"})}postApiV1RemoteoperationCreate(e){return a(n,this.http,{method:"POST",url:"/api/v1/remoteoperation/create",body:e.requestBody,mediaType:"application/json"})}getApiV1Serversettings(){return a(n,this.http,{method:"GET",url:"/api/v1/serversettings"})}patchApiV1Serversettings(e){return a(n,this.http,{method:"PATCH",url:"/api/v1/serversettings",body:e.requestBody,mediaType:"application/json"})}getApiV1ServersettingByKey(e){return a(n,this.http,{method:"GET",url:"/api/v1/serversetting/{key}",path:{key:e.key}})}putApiV1ServersettingByKey(e){return a(n,this.http,{method:"PUT",url:"/api/v1/serversetting/{key}",path:{key:e.key},body:e.requestBody,mediaType:"application/json"})}getApiV1Serverstate(e={}){return a(n,this.http,{method:"GET",url:"/api/v1/serverstate",query:{lastEventId:e.lastEventId,longpoll:e.longpoll,duration:e.duration}})}postApiV1ServerstatePause(e={}){return a(n,this.http,{method:"POST",url:"/api/v1/serverstate/pause",query:{duration:e.duration,pauseTransfers:e.pauseTransfers}})}postApiV1ServerstateResume(){return a(n,this.http,{method:"POST",url:"/api/v1/serverstate/resume"})}getApiV1Systeminfo(){return a(n,this.http,{method:"GET",url:"/api/v1/systeminfo"})}getApiV1SysteminfoFiltergroups(){return a(n,this.http,{method:"GET",url:"/api/v1/systeminfo/filtergroups"})}getApiV1Tasks(){return a(n,this.http,{method:"GET",url:"/api/v1/tasks"})}getApiV1TaskByTaskid(e){return a(n,this.http,{method:"GET",url:"/api/v1/task/{taskid}",path:{taskid:e.taskid}})}postApiV1TaskByTaskidStop(e){return a(n,this.http,{method:"POST",url:"/api/v1/task/{taskid}/stop",path:{taskid:e.taskid}})}postApiV1TaskByTaskidAbort(e){return a(n,this.http,{method:"POST",url:"/api/v1/task/{taskid}/abort",path:{taskid:e.taskid}})}getApiV1Uisettings(){return a(n,this.http,{method:"GET",url:"/api/v1/uisettings"})}postApiV1Uisettings(e){return a(n,this.http,{method:"POST",url:"/api/v1/uisettings",body:e.requestBody,mediaType:"application/json"})}getApiV1UisettingsByScheme(e){return a(n,this.http,{method:"GET",url:"/api/v1/uisettings/{scheme}",path:{scheme:e.scheme}})}patchApiV1UisettingsByScheme(e){return a(n,this.http,{method:"PATCH",url:"/api/v1/uisettings/{scheme}",path:{scheme:e.scheme},body:e.requestBody,mediaType:"application/json"})}postApiV1UpdatesCheck(){return a(n,this.http,{method:"POST",url:"/api/v1/updates/check"})}postApiV1WebmoduleByModulekey(e){return a(n,this.http,{method:"POST",url:"/api/v1/webmodule/{modulekey}",path:{modulekey:e.modulekey},body:e.requestBody,mediaType:"application/json"})}getApiV1BackupById(e){return a(n,this.http,{method:"GET",url:"/api/v1/backup/{id}",path:{id:e.id}})}putApiV1BackupById(e){return a(n,this.http,{method:"PUT",url:"/api/v1/backup/{id}",path:{id:e.id},body:e.requestBody,mediaType:"application/json"})}deleteApiV1BackupById(e){return a(n,this.http,{method:"DELETE",url:"/api/v1/backup/{id}",path:{id:e.id},query:{"delete-remote-files":e.deleteRemoteFiles,"delete-local-db":e.deleteLocalDb,force:e.force}})}getApiV1BackupByIdFiles(e){return a(n,this.http,{method:"GET",url:"/api/v1/backup/{id}/files",path:{id:e.id},query:{filter:e.filter,time:e.time,"all-versions":e.allVersions,"prefix-only":e.prefixOnly,"folder-contents":e.folderContents}})}getApiV1BackupByIdLog(e){return a(n,this.http,{method:"GET",url:"/api/v1/backup/{id}/log",path:{id:e.id},query:{offset:e.offset,pagesize:e.pagesize}})}getApiV1BackupByIdRemotelog(e){return a(n,this.http,{method:"GET",url:"/api/v1/backup/{id}/remotelog",path:{id:e.id},query:{offset:e.offset,pagesize:e.pagesize}})}getApiV1BackupByIdFilesets(e){return a(n,this.http,{method:"GET",url:"/api/v1/backup/{id}/filesets",path:{id:e.id},query:{"include-metadata":e.includeMetadata,"from-remote-only":e.fromRemoteOnly}})}getApiV1BackupByIdExportArgsonly(e){return a(n,this.http,{method:"GET",url:"/api/v1/backup/{id}/export-argsonly",path:{id:e.id},query:{"export-passwords":e.exportPasswords,passphrase:e.passphrase}})}getApiV1BackupByIdExportCmdline(e){return a(n,this.http,{method:"GET",url:"/api/v1/backup/{id}/export-cmdline",path:{id:e.id},query:{"export-passwords":e.exportPasswords,passphrase:e.passphrase}})}getApiV1BackupByIdExport(e){return a(n,this.http,{method:"GET",url:"/api/v1/backup/{id}/export",path:{id:e.id},query:{"export-passwords":e.exportPasswords,passphrase:e.passphrase,token:e.token}})}getApiV1BackupByIdIsdbusedelsewhere(e){return a(n,this.http,{method:"GET",url:"/api/v1/backup/{id}/isdbusedelsewhere",path:{id:e.id}})}getApiV1BackupByIdIsactive(e){return a(n,this.http,{method:"GET",url:"/api/v1/backup/{id}/isactive",path:{id:e.id}})}postApiV1BackupByIdDeletedb(e){return a(n,this.http,{method:"POST",url:"/api/v1/backup/{id}/deletedb",path:{id:e.id}})}postApiV1BackupByIdMovedb(e){return a(n,this.http,{method:"POST",url:"/api/v1/backup/{id}/movedb",path:{id:e.id},body:e.requestBody,mediaType:"application/json"})}postApiV1BackupByIdUpdatedb(e){return a(n,this.http,{method:"POST",url:"/api/v1/backup/{id}/updatedb",path:{id:e.id},body:e.requestBody,mediaType:"application/json"})}postApiV1BackupByIdRestore(e){return a(n,this.http,{method:"POST",url:"/api/v1/backup/{id}/restore",path:{id:e.id},body:e.requestBody,mediaType:"application/json"})}postApiV1BackupByIdCreatereport(e){return a(n,this.http,{method:"POST",url:"/api/v1/backup/{id}/createreport",path:{id:e.id}})}postApiV1BackupByIdRepair(e){return a(n,this.http,{method:"POST",url:"/api/v1/backup/{id}/repair",path:{id:e.id},body:e.requestBody,mediaType:"application/json"})}postApiV1BackupByIdRepairupdate(e){return a(n,this.http,{method:"POST",url:"/api/v1/backup/{id}/repairupdate",path:{id:e.id},body:e.requestBody,mediaType:"application/json"})}postApiV1BackupByIdVacuum(e){return a(n,this.http,{method:"POST",url:"/api/v1/backup/{id}/vacuum",path:{id:e.id}})}postApiV1BackupByIdVerify(e){return a(n,this.http,{method:"POST",url:"/api/v1/backup/{id}/verify",path:{id:e.id}})}postApiV1BackupByIdCompact(e){return a(n,this.http,{method:"POST",url:"/api/v1/backup/{id}/compact",path:{id:e.id}})}postApiV1BackupByIdStart(e){return a(n,this.http,{method:"POST",url:"/api/v1/backup/{id}/start",path:{id:e.id},query:{skipQueue:e.skipQueue}})}postApiV1BackupByIdRun(e){return a(n,this.http,{method:"POST",url:"/api/v1/backup/{id}/run",path:{id:e.id},query:{skipQueue:e.skipQueue}})}postApiV1BackupByIdReportRemoteSize(e){return a(n,this.http,{method:"POST",url:"/api/v1/backup/{id}/report-remote-size",path:{id:e.id}})}postApiV1BackupByIdCopytotemp(e){return a(n,this.http,{method:"POST",url:"/api/v1/backup/{id}/copytotemp",path:{id:e.id}})}postApiV1RemotecontrolEnable(){return a(n,this.http,{method:"POST",url:"/api/v1/remotecontrol/enable"})}postApiV1RemotecontrolDisable(){return a(n,this.http,{method:"POST",url:"/api/v1/remotecontrol/disable"})}deleteApiV1RemotecontrolRegistration(){return a(n,this.http,{method:"DELETE",url:"/api/v1/remotecontrol/registration"})}postApiV1RemotecontrolRegister(e){return a(n,this.http,{method:"POST",url:"/api/v1/remotecontrol/register",body:e.requestBody,mediaType:"application/json"})}deleteApiV1RemotecontrolRegister(){return a(n,this.http,{method:"DELETE",url:"/api/v1/remotecontrol/register"})}postApiV2BackupListFilesets(e){return a(n,this.http,{method:"POST",url:"/api/v2/backup/list-filesets",body:e.requestBody,mediaType:"application/json"})}postApiV2BackupListFolder(e){return a(n,this.http,{method:"POST",url:"/api/v2/backup/list-folder",body:e.requestBody,mediaType:"application/json"})}postApiV2BackupListVersions(e){return a(n,this.http,{method:"POST",url:"/api/v2/backup/list-versions",body:e.requestBody,mediaType:"application/json"})}postApiV2BackupSearch(e){return a(n,this.http,{method:"POST",url:"/api/v2/backup/search",body:e.requestBody,mediaType:"application/json"})}postApiV2DestinationTest(e){return a(n,this.http,{method:"POST",url:"/api/v2/destination/test",body:e.requestBody,mediaType:"application/json"})}static \u0275fac=function(t){return new(t||s)(g(C))};static \u0275prov=v({token:s,factory:s.\u0275fac,providedIn:"root"})},We=class s{constructor(e){this.http=e}getApiV1Webmodules(){return a(n,this.http,{method:"GET",url:"/api/v1/webmodules"})}static \u0275fac=function(t){return new(t||s)(g(C))};static \u0275prov=v({token:s,factory:s.\u0275fac,providedIn:"root"})};export{b as a,L as b,C as c,mt as d,At as e,bt as f,Ke as g,$e as h,We as i};
@@ -0,0 +1,2 @@
1
+ import{wa as T}from"./chunk-VKD4Y3YQ.js";var d=":",x="|",B="@@",v="\u241F",E;function N(e){E??=new TextEncoder;let t=E.encode(e),n=new DataView(t.buffer,t.byteOffset,t.byteLength),s=$(n,t.length,0),l=$(n,t.length,102072);return s==0&&(l==0||l==1)&&(s=s^319790063,l=l^-1801410264),BigInt.asUintN(32,BigInt(s))<<BigInt(32)|BigInt.asUintN(32,BigInt(l))}function C(e,t=""){let n=N(e);return t&&(n=BigInt.asUintN(64,n<<BigInt(1))|n>>BigInt(63)&BigInt(1),n+=N(t)),BigInt.asUintN(63,n).toString()}function $(e,t,n){let s=2654435769,l=2654435769,a=0,o=t-12;for(;a<=o;a+=12){s+=e.getUint32(a,!0),l+=e.getUint32(a+4,!0),n+=e.getUint32(a+8,!0);let i=R(s,l,n);s=i[0],l=i[1],n=i[2]}let r=t-a;return n+=t,r>=4?(s+=e.getUint32(a,!0),a+=4,r>=8?(l+=e.getUint32(a,!0),a+=4,r>=9&&(n+=e.getUint8(a++)<<8),r>=10&&(n+=e.getUint8(a++)<<16),r===11&&(n+=e.getUint8(a++)<<24)):(r>=5&&(l+=e.getUint8(a++)),r>=6&&(l+=e.getUint8(a++)<<8),r===7&&(l+=e.getUint8(a++)<<16))):(r>=1&&(s+=e.getUint8(a++)),r>=2&&(s+=e.getUint8(a++)<<8),r===3&&(s+=e.getUint8(a++)<<16)),R(s,l,n)[2]}function R(e,t,n){return e-=t,e-=n,e^=n>>>13,t-=n,t-=e,t^=e<<8,n-=e,n-=t,n^=t>>>13,e-=t,e-=n,e^=n>>>12,t-=n,t-=e,t^=e<<16,n-=e,n-=t,n^=t>>>5,e-=t,e-=n,e^=n>>>3,t-=n,t-=e,t^=e<<10,n-=e,n-=t,n^=t>>>15,[e,t,n]}function z(e,t,n,s,l=[]){let a={},o={},r={},i=y(e[0],e.raw[0]),u=[i.text],I=[],h=i.text;for(let c=1;c<e.length;c++){let{messagePart:S,placeholderName:f=P(c),associatedMessageId:A}=j(e[c],e.raw[c]);h+=`{$${f}}${S}`,t!==void 0&&(a[f]=t[c-1],o[f]=l[c-1]),I.push(f),A!==void 0&&(r[f]=A),u.push(S)}let L=i.customId||C(h,i.meaning||""),b=i.legacyIds?i.legacyIds.filter(c=>c!==L):[];return{id:L,legacyIds:b,substitutions:a,substitutionLocations:o,text:h,customId:i.customId,meaning:i.meaning||"",description:i.description||"",messageParts:u,messagePartLocations:s,placeholderNames:I,associatedMessageIds:r,location:n}}function y(e,t){let{text:n,block:s}=O(e,t);if(s===void 0)return{text:n};{let[l,...a]=s.split(v),[o,r]=l.split(B,2),[i,u]=o.split(x,2);return u===void 0&&(u=i,i=void 0),u===""&&(u=void 0),{text:n,meaning:i,description:u,customId:r,legacyIds:a}}}function j(e,t){let{text:n,block:s}=O(e,t);if(s===void 0)return{messagePart:n};{let[l,a]=s.split(B);return{messagePart:n,placeholderName:l,associatedMessageId:a}}}function O(e,t){if(t.charAt(0)!==d)return{text:e};{let n=_(e,t);return{block:e.substring(1,n),text:e.substring(n+1)}}}function P(e){return e===1?"PH":`PH_${e-1}`}function _(e,t){for(let n=1,s=1;n<e.length;n++,s++)if(t[s]==="\\")s++;else if(e[n]===d)return n;throw new Error(`Unterminated $localize metadata block in "${t}".`)}var m=class extends Error{parsedMessage;type="MissingTranslationError";constructor(t){super(`No translation found for ${U(t)}.`),this.parsedMessage=t}};function D(e,t,n){let s=z(t,n),l=e[s.id];if(s.legacyIds!==void 0)for(let a=0;a<s.legacyIds.length&&l===void 0;a++)l=e[s.legacyIds[a]];if(l===void 0)throw new m(s);return[l.messageParts,l.placeholderNames.map(a=>{if(s.substitutions.hasOwnProperty(a))return s.substitutions[a];throw new Error(`There is a placeholder name mismatch with the translation provided for the message ${U(s)}.
2
+ The translation contains a placeholder with name ${a}, which does not exist in the message.`)})]}function k(e){let t=e.split(/{\$([^}]*)}/),n=[t[0]],s=[];for(let a=1;a<t.length-1;a+=2)s.push(t[a]),n.push(`${t[a+1]}`);let l=n.map(a=>a.charAt(0)===d?"\\"+a:a);return{text:e,messageParts:G(n,l),placeholderNames:s}}function G(e,t){return Object.defineProperty(e,"raw",{value:t}),e}function U(e){let t=e.meaning&&` - "${e.meaning}"`,n=e.legacyIds&&e.legacyIds.length>0?` [${e.legacyIds.map(s=>`"${s}"`).join(", ")}]`:"";return`"${e.id}"${n} ("${e.text}"${t})`}function M(e){$localize.translate||($localize.translate=K),$localize.TRANSLATIONS||($localize.TRANSLATIONS={}),Object.keys(e).forEach(t=>{$localize.TRANSLATIONS[t]=k(e[t])})}function K(e,t){try{return D($localize.TRANSLATIONS,e,t)}catch(n){return console.warn(n.message),[e,t]}}var g="en-US",Y=[{value:"en",label:"English (en-US)"},{value:"en-GB",label:"English (en-GB)"},{value:"cs",label:"Czech (cs)"},{value:"da",label:"Danish (da)"},{value:"de",label:"German (de)"},{value:"es",label:"Spanish (es)"},{value:"fi",label:"Finnish (fi)"},{value:"fr",label:"French (fr)"},{value:"hu",label:"Hungarian (hu)"},{value:"it",label:"Italian (it)"},{value:"ja-JP",label:"Japanese (ja-JP)"},{value:"nl-NL",label:"Dutch (nl-NL)"},{value:"pl",label:"Polish (pl)"},{value:"pt-BR",label:"Portuguese (pt-BR)"},{value:"pt",label:"Portuguese (pt)"},{value:"ru",label:"Russian (ru)"},{value:"sr-RS",label:"Serbian (sr-RS)"},{value:"sv-SE",label:"Swedish (sv-SE)"},{value:"zh-CN",label:"Chinese (zh-CN)"},{value:"zh-TW",label:"Chinese (zh-TW)"}],p={en:"en","en-US":"en","en-GB":"en-GB","en-AU":"en","en-CA":"en",cs:"cs","cs-CZ":"cs",da:"da","da-DK":"da",de:"de","de-DE":"de","de-AT":"de",es:"es","es-ES":"es","es-MX":"es",fi:"fi","fi-FI":"fi",fr:"fr","fr-FR":"fr","fr-CA":"fr",hu:"hu","hu-HU":"hu",it:"it","it-IT":"it",ja:"ja-JP","ja-JP":"ja-JP",nl:"nl-NL","nl-NL":"nl-NL","nl-BE":"nl-NL",pl:"pl","pl-PL":"pl",pt:"pt","pt-BR":"pt-BR","pt-PT":"pt",ru:"ru","ru-RU":"ru",sr:"sr-RS","sr-RS":"sr-RS",sv:"sv-SE","sv-SE":"sv-SE","sv-FI":"sv-SE",zh:"zh-CN","zh-CN":"zh-CN","zh-SG":"zh-CN","zh-TW":"zh-TW","zh-HK":"zh-TW"},F={"ja-JP":"ja","nl-NL":"nl","sr-RS":"sr","sv-SE":"sv","zh-CN":"zh-Hans","zh-TW":"zh-Hant"},w=Array.from(new Set(Object.values(p)));function Z(e){return e?p[e]??"en":"en"}function q(){let e=localStorage.getItem("v1:duplicati:locale")||g,t=w.find(o=>o===e)??g,n=p[t]??p[t.split("-")[0]]??g;if(t===g)return t;import(`/locale/angular/${F[n]??n}.mjs`).then(o=>T(o.default));var l=n.replace(/-/g,"_");let a=t==="en"?"":"."+l;return fetch(`/locale/messages${a}.json`).then(o=>o.json()).then(o=>{M(o.translations),$localize.locale=t}),t}export{Y as a,Z as b,q as c};
@@ -0,0 +1 @@
1
+ import{g as D}from"./chunk-EKZRKTLM.js";import{a as X}from"./chunk-Q3ILJYED.js";import{l as x}from"./chunk-3IRKJXHE.js";import"./chunk-KA4H3PM5.js";import"./chunk-FLMFEFKM.js";import"./chunk-WIJ3HW7I.js";import"./chunk-N334RUEQ.js";import"./chunk-K5AQUIEE.js";import{a as g}from"./chunk-WY2KPAVB.js";import"./chunk-4D2NUH5S.js";import"./chunk-XD26KCAE.js";import"./chunk-KQAO2YHR.js";import"./chunk-3PYBMCOB.js";import"./chunk-RHW5QVAY.js";import"./chunk-FPLBURO5.js";import"./chunk-JWFYA3TO.js";import"./chunk-3KIPRGE2.js";import"./chunk-UVLJAD66.js";import{a as I,b as G,c as W,d as h,e as y,f as v}from"./chunk-7LEXBIXG.js";import"./chunk-P4ZYFRD3.js";import{q as w,v as K}from"./chunk-MHALSLG3.js";import"./chunk-FWVOVJCG.js";import"./chunk-KV7SEZ24.js";import"./chunk-VKD4Y3YQ.js";import"./chunk-WIDMAJIO.js";import"./chunk-LQ2PCH6Q.js";import{Hb as _,Hc as N,Ib as F,Oa as l,Ob as E,X as c,_a as $,_b as L,la as A,pb as O,qb as k,qc as M,rc as T,sc as R,ub as r,vb as t,wb as n,xb as a}from"./chunk-K6EZTPNQ.js";import"./chunk-EUDKD2JW.js";var b=()=>["/restore-from-files/destination"],z=()=>["/restore-from-files/encryption"],B=()=>["/restore-from-files/select-files"],U=()=>["/restore-from-files/options"],j=e=>["/restore-draft",e,"select-files"],H=e=>["/restore-draft",e,"options"],V=e=>["/restore",e,"select-files"],q=e=>["/restore",e,"options"],J=e=>["/restore",e,"progress"];function Q(e,i){e&1&&(t(0,"div",9),_(1,0),a(2,"spk-radio"),F(),n(),t(3,"div",9),_(4,1),a(5,"spk-radio"),F(),n(),t(6,"div",9),_(7,2),a(8,"spk-radio"),F(),n(),t(9,"div",9),_(10,3),a(11,"spk-radio"),F(),n()),e&2&&(r("routerLink",T(4,b)),l(3),r("routerLink",T(5,z)),l(3),r("routerLink",T(6,B)),l(3),r("routerLink",T(7,U)))}function Y(e,i){if(e&1&&(t(0,"div",9),_(1,4),a(2,"spk-radio"),F(),n(),t(3,"div",9),_(4,5),a(5,"spk-radio"),F(),n()),e&2){let o=E();r("routerLink",R(2,j,o.backupId())),l(3),r("routerLink",R(4,H,o.backupId()))}}function Z(e,i){if(e&1&&(t(0,"div",9),_(1,6),a(2,"spk-radio"),F(),n(),t(3,"div",9),_(4,7),a(5,"spk-radio"),F(),n()),e&2){let o=E();r("routerLink",R(2,V,o.backupId())),l(3),r("routerLink",R(4,q,o.backupId()))}}function ee(e,i){if(e&1&&(t(0,"div",9),_(1,8),a(2,"spk-radio"),F(),n()),e&2){let o=E();r("routerLink",R(1,J,o.backupId()))}}var f=class e{#o=c(G);#t=c(h);#e=c(D);#n=g(this.#o.params);#i=g(this.#o.url);#a=g(this.#o.children[0].url);backupId=this.#e.backupId;isDraft=this.#e.isDraft;isFileRestore=this.#e.isFileRestore;isProgressPage=A(!1);paramsChanged=N(()=>{let i=this.#a(),o=this.#n()?.id,s=!!this.#i()?.find(S=>S.path==="restore-draft"),p=!!this.#i()?.find(S=>S.path==="restore-from-files"),u=!!i?.find(S=>S.path==="progress");this.isProgressPage.set(u),this.#e.init(o,p,p||s)});ngOnInit(){this.#t.events.subscribe(i=>{if(i instanceof I){let o=i.urlAfterRedirects;this.isProgressPage.set(o.includes("progress"))}})}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=$({type:e,selectors:[["app-restore-flow"]],hostVars:2,hostBindings:function(o,s){o&2&&L("full-width",s.isProgressPage())},features:[M([D,x])],decls:8,vars:2,consts:()=>{let i;i=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SPK_RADIO:${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SPK_RADIO: Destination `;let o;o=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SPK_RADIO:${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SPK_RADIO: Encryption `;let s;s=$localize`${"\uFFFD#8\uFFFD"}:START_TAG_SPK_RADIO:${"\uFFFD/#8\uFFFD"}:CLOSE_TAG_SPK_RADIO: Select files `;let p;p=$localize`${"\uFFFD#11\uFFFD"}:START_TAG_SPK_RADIO:${"\uFFFD/#11\uFFFD"}:CLOSE_TAG_SPK_RADIO: Options `;let u;u=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SPK_RADIO:${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SPK_RADIO: Select files `;let S;S=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SPK_RADIO:${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SPK_RADIO: Options `;let P;P=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SPK_RADIO:${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SPK_RADIO: Select files `;let C;C=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SPK_RADIO:${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SPK_RADIO: Options `;let m;return m=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SPK_RADIO:${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SPK_RADIO: Progress `,[i,o,s,p,u,S,P,C,m,["step","","routerLinkActive","active",3,"routerLink"]]},template:function(o,s){o&1&&(a(0,"app-status-bar"),t(1,"spk-stepper"),O(2,Q,12,8)(3,Y,6,6)(4,Z,6,6),O(5,ee,3,3,"div",9),n(),t(6,"section"),a(7,"router-outlet"),n()),o&2&&(l(2),k(s.isFileRestore()?2:s.isDraft()?3:4),l(3),k(s.isProgressPage()?5:-1))},dependencies:[K,w,X,W,y,v],styles:["[_nghost-%COMP%]{display:block}.full-width[_nghost-%COMP%] section[_ngcontent-%COMP%]{max-width:62.5rem}spk-stepper[_ngcontent-%COMP%]{max-width:31.25rem;margin:2.5rem auto}section[_ngcontent-%COMP%]{max-width:31.25rem;margin:0 auto 2.5rem}"],changeDetection:0})};export{f as default};
@@ -0,0 +1 @@
1
+ import{a as M}from"./chunk-Q3ILJYED.js";import"./chunk-4D2NUH5S.js";import"./chunk-XD26KCAE.js";import"./chunk-KQAO2YHR.js";import"./chunk-3PYBMCOB.js";import"./chunk-RHW5QVAY.js";import"./chunk-FPLBURO5.js";import"./chunk-JWFYA3TO.js";import"./chunk-3KIPRGE2.js";import"./chunk-UVLJAD66.js";import{c as O,e as C,f as S}from"./chunk-7LEXBIXG.js";import"./chunk-P4ZYFRD3.js";import{y as d}from"./chunk-MHALSLG3.js";import"./chunk-FWVOVJCG.js";import"./chunk-KV7SEZ24.js";import"./chunk-VKD4Y3YQ.js";import"./chunk-WIDMAJIO.js";import"./chunk-LQ2PCH6Q.js";import{Jb as n,_a as c,vb as e,wb as t,xb as l}from"./chunk-K6EZTPNQ.js";import"./chunk-EUDKD2JW.js";var s=class a{static \u0275fac=function(o){return new(o||a)};static \u0275cmp=c({type:a,selectors:[["app-about"]],decls:19,vars:0,consts:()=>{let _;_=$localize`General`;let o;o=$localize`Changelog`;let r;r=$localize`Libraries`;let u;u=$localize`System info`;let g;g=$localize`Server settings`;let T;T=$localize`Logs`;let A;return A=$localize`Crash log`,[_,o,r,u,g,T,A,[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&&(l(0,"app-status-bar"),e(1,"div",7)(2,"spk-tabs",8)(3,"button",9),n(4,0),t(),e(5,"button",10),n(6,1),t(),e(7,"button",11),n(8,2),t(),e(9,"button",12),n(10,3),t(),e(11,"button",13),n(12,4),t(),e(13,"button",14),n(14,5),t(),e(15,"button",15),n(16,6),t()(),e(17,"section"),l(18,"router-outlet"),t()())},dependencies:[M,d,O,C,S],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;gap:0}.content[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:1rem 0}.content[_ngcontent-%COMP%] spk-tabs[_ngcontent-%COMP%]{margin:0 2rem}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:2rem 0}"],changeDetection:0})};export{s as default};
@@ -0,0 +1 @@
1
+ import{a as Le,b as Re}from"./chunk-DDV32SDB.js";import{a as $e}from"./chunk-ABF3SFY5.js";import{a as x}from"./chunk-B5FKLIHW.js";import"./chunk-4D2NUH5S.js";import{a as fe}from"./chunk-XD26KCAE.js";import"./chunk-KQAO2YHR.js";import"./chunk-3PYBMCOB.js";import"./chunk-RHW5QVAY.js";import"./chunk-FPLBURO5.js";import"./chunk-JWFYA3TO.js";import{a as Ie}from"./chunk-HWCTRSCV.js";import{c as Pe,d as Oe,e as he,h as De,r as ke,s as Ne,t as Me}from"./chunk-3KIPRGE2.js";import{b as de,d as Ee}from"./chunk-UVLJAD66.js";import{c as ce,e as pe,f as ue}from"./chunk-7LEXBIXG.js";import"./chunk-P4ZYFRD3.js";import{C as Te,a as M,b as G,c as Se,e as ge,g as w,k as Fe,l as Ae,n as Ce,u as me}from"./chunk-MHALSLG3.js";import{h as H}from"./chunk-FWVOVJCG.js";import"./chunk-VKD4Y3YQ.js";import"./chunk-WIDMAJIO.js";import{Bb as f,F as V,Gc as re,Hb as p,Hc as j,Ib as u,Jb as O,Lc as le,Mb as R,Nb as g,Nc as _e,Oa as r,Ob as c,Pc as Q,Wb as ne,X as A,Xb as oe,_a as N,_b as v,ac as $,ba as C,bc as F,ca as m,cc as X,dc as K,gc as z,hc as W,ic as q,jc as ie,kc as ae,la as E,lc as y,pb as d,qb as S,rb as Z,rc as se,sb as ee,tb as te,ub as h,vb as a,wb as i,xb as l}from"./chunk-K6EZTPNQ.js";import{a as Y,b as B}from"./chunk-EUDKD2JW.js";var Ge=["scroller"];function we(n,o){n&1&&(a(0,"spk-icon"),F(1,"bell-ringing"),i())}function He(n,o){n&1&&(a(0,"spk-icon"),F(1,"bell"),i())}function xe(n,o){if(n&1&&l(0,"app-notification",8),n&2){c(2);let e=y(6);h("index",0)("notification",e.content)}}function Ue(n,o){if(n&1&&(a(0,"div",11),F(1),i()),n&2){c(3);let e=y(6);r(),K(" ",e.content.content," ")}}function Ye(n,o){if(n&1&&(a(0,"spk-alert")(1,"div",10),F(2),i(),d(3,Ue,2,1,"div",11),i()),n&2){c(2);let e=y(6);$(e.content.type||"error"),r(2),X(e.content.title),r(),S(e.content.content?3:-1)}}function Be(n,o){if(n&1&&(a(0,"div",6),d(1,xe,1,2,"app-notification",8)(2,Ye,4,4,"spk-alert",9),i()),n&2){c();let e=y(6);r(),S(e.type==="notification"?1:2)}}function Ve(n,o){if(n&1){let e=f();a(0,"div",7)(1,"div",12)(2,"h6",13),p(3,2),a(4,"button",5),g("click",function(){C(e);let s=c();return m(s.toggleNotifications())}),l(5,"spk-icon"),i(),u(),i(),a(6,"div",14,0)(8,"div",15),l(9,"app-notifications"),i()()()()}}function Xe(n,o){if(n&1&&(a(0,"div",20),F(1),i()),n&2){let e=c().$implicit;r(),K(" ",e.content," ")}}function Ke(n,o){if(n&1){let e=f();a(0,"spk-alert",18,1),g("click",function(){let s=C(e).$implicit,_=c(2);return m(_.deleteAlertByIndex(s.id))}),a(2,"div",19),F(3),i(),d(4,Xe,2,1,"div",20),i()}if(n&2){let e=o.$implicit;$(e.type),h("id",e.id),r(3),X(e.title),r(),S(e.content?4:-1)}}function ze(n,o){n&1&&(a(0,"p",17),O(1,4),i())}function We(n,o){if(n&1){let e=f();a(0,"div",7)(1,"div",12)(2,"h6",13),p(3,3),a(4,"button",5),g("click",function(){C(e);let s=c();return m(s.toggleAlerts())}),l(5,"spk-icon"),i(),u(),i(),a(6,"div",14,0)(8,"div",15),ee(9,Ke,5,5,"spk-alert",16,Z,!1,ze,2,0,"p",17),i()()()()}if(n&2){let e=c();r(9),te(e.alertHistory())}}var ye=new ke,b=class n{#e=A(Se);#t=A(x);isSubmitting=E(!1);messageSent=E(!1);form=ye.group({message:ye.control("",[Oe.required])});notifications=this.#t.notifications;shownMessage=E(null);shownMessageInterval=null;alertHistory=this.#e.alertHistory;alertHistoryIsOpen=this.#e.alertHistoryIsOpen;alertHistoryIsHidden=this.#e.alertHistoryIsHidden;numberOfOpenAlerts=re(()=>this.alertHistory().filter(o=>o.isOpen).length);scroller=_e("scroller");isAlertsOpen=Q(!1);isNotificationsOpen=Q(!1);previousHistoryCount=E(null);previousNotificationsCount=E(null);constructor(){j(()=>{let o=this.alertHistory(),e=this.notifications();e.length&&this.previousHistoryCount()!==o.length&&!this.isNotificationsOpen()?(this.shownMessage.set({content:e[0],countDown:3,type:"notification"}),this.previousHistoryCount.set(o.length),this.shownMessageInterval=setInterval(()=>{let t=this.shownMessage();if(t?.countDown===0){this.shownMessage.set(null),this.shownMessageInterval=null;return}t!==null&&this.shownMessage.update(s=>B(Y({},s),{countDown:s.countDown-1}))},1e3)):o.length&&this.previousHistoryCount()!==o.length&&!this.isAlertsOpen()&&(this.shownMessage.set({content:o[0],countDown:3,type:"alert"}),this.previousHistoryCount.set(o.length),this.shownMessageInterval=setInterval(()=>{let t=this.shownMessage();if(t?.countDown===0){this.shownMessage.set(null),this.shownMessageInterval=null;return}t!==null&&this.shownMessage.update(s=>B(Y({},s),{countDown:s.countDown-1}))},1e3))}),j(()=>{this.alertHistoryIsOpen(),this.scrollToBottom()})}resetPreviewMessage(){this.shownMessage.set(null),this.shownMessageInterval=null}toggleAlerts(){this.isAlertsOpen()?this.isAlertsOpen.set(!1):(this.isAlertsOpen.set(!0),this.isNotificationsOpen.set(!1),this.resetPreviewMessage())}toggleNotifications(){this.isNotificationsOpen.set(!this.isNotificationsOpen()),this.isAlertsOpen()&&this.isAlertsOpen.set(!1)}deleteAlertByIndex(o){this.#e.removeAlert(o)}scrollToBottom(){this.scroller()&&this.scroller()?.nativeElement&&this.scroller().nativeElement.scrollTo(0,this.scroller().nativeElement.scrollHeight)}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=N({type:n,selectors:[["app-service-hub"]],viewQuery:function(e,t){e&1&&ne(t.scroller,Ge,5),e&2&&oe()},inputs:{isAlertsOpen:[1,"isAlertsOpen"],isNotificationsOpen:[1,"isNotificationsOpen"]},outputs:{isAlertsOpen:"isAlertsOpenChange",isNotificationsOpen:"isNotificationsOpenChange"},decls:10,vars:9,consts:()=>{let o;o=$localize` Notifications ${"\uFFFD#4\uFFFD"}:START_TAG_BUTTON:${"\uFFFD#5\uFFFD"}:START_TAG_SPK_ICON:x-circle${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SPK_ICON:${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_BUTTON:`;let e;e=$localize` Alerts ${"\uFFFD#4\uFFFD"}:START_TAG_BUTTON:${"\uFFFD#5\uFFFD"}:START_TAG_SPK_ICON:x-circle${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SPK_ICON:${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_BUTTON:`;let t;return t=$localize`No alerts yet`,[["scroller",""],["alerts",""],o,e,t,["spk-button","",3,"click"],[1,"preview-alert-wrap"],[1,"alert-stream-modal"],[3,"index","notification"],[3,"class"],["sparkle-alert-title",""],["sparkle-alert-content",""],[1,"alert-stream-modal-content"],[1,"paragraph-20"],[1,"alert-stream-modal-list-scroller"],[1,"alert-stream-modal-list"],[3,"class","id"],[1,"no-alerts"],[3,"click","id"],["title",""],["content",""]]},template:function(e,t){if(e&1){let s=f();a(0,"button",5),g("click",function(){return C(s),m(t.toggleAlerts())}),a(1,"spk-icon"),F(2,"info"),i()(),a(3,"button",5),g("click",function(){return C(s),m(t.toggleNotifications())}),d(4,we,2,0,"spk-icon")(5,He,2,0,"spk-icon"),i(),ie(6),d(7,Be,3,1,"div",6),d(8,Ve,10,0,"div",7),d(9,We,12,1,"div",7)}if(e&2){$(t.alertHistory().length?"error":""),r(3),$(t.notifications().length?"error":""),r(),S(t.notifications().length?4:5),r(2);let s=ae(t.shownMessage());r(),S(s?7:-1),r(),S(t.isNotificationsOpen()?8:-1),r(),S(t.isAlertsOpen()?9:-1)}},dependencies:[Me,G,M,w,Re,Le],styles:["[_nghost-%COMP%]{display:flex;position:fixed;gap:.5rem;bottom:1.5rem;right:1.5rem;z-index:5000}@media only screen and (max-width: 768px){[_nghost-%COMP%]{bottom:1rem;right:1rem}}[_nghost-%COMP%] h6[_ngcontent-%COMP%]{margin:0}.preview-alert-wrap[_ngcontent-%COMP%]{position:absolute;bottom:2.6875rem;right:0;display:flex;flex-direction:column;min-width:15.625rem}.helpdesk-modal[_ngcontent-%COMP%]{position:absolute;bottom:2.6875rem;right:0;display:flex;flex-direction:column}@media only screen and (max-width: 768px){.helpdesk-modal[_ngcontent-%COMP%]{bottom:2.6875rem}}.helpdesk-modal-content[_ngcontent-%COMP%]{position:relative;display:flex;flex-direction:column;gap:1rem;min-width:20rem;border:1px solid var(--base-4);background-color:var(--base-1);border-radius:var(--shape-2)}.helpdesk-modal-content[_ngcontent-%COMP%] .message-sent[_ngcontent-%COMP%]{padding:0 1rem 1rem;text-wrap:pretty}.helpdesk-modal-content[_ngcontent-%COMP%] h6[_ngcontent-%COMP%]{padding:1rem;border-bottom:1px solid var(--base-4);display:flex;align-items:center;justify-content:space-between}.helpdesk-modal-content[_ngcontent-%COMP%] form[_ngcontent-%COMP%]{padding:0 1rem 1rem;display:flex;flex-direction:column;align-items:flex-end;gap:1rem}.helpdesk-modal-content[_ngcontent-%COMP%] form[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{width:100%;text-wrap:pretty}.helpdesk-modal-content[_ngcontent-%COMP%] form[_ngcontent-%COMP%] mat-form-field[_ngcontent-%COMP%]{width:100%}.alert-stream-modal[_ngcontent-%COMP%]{position:absolute;bottom:2.6875rem;right:0;display:flex;flex-direction:column}@media only screen and (max-width: 768px){.alert-stream-modal[_ngcontent-%COMP%]{bottom:2.6875rem}}.alert-stream-modal-list-scroller[_ngcontent-%COMP%]{overflow-y:auto;max-height:18.75rem}.alert-stream-modal-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem;padding:1rem;border-radius:var(--shape-2)}.alert-stream-modal-content[_ngcontent-%COMP%]{position:relative;display:flex;flex-direction:column;min-width:20rem;border:1px solid var(--base-4);background-color:var(--base-1);border-radius:var(--shape-2)}.alert-stream-modal-content[_ngcontent-%COMP%] h6[_ngcontent-%COMP%]{padding:1rem;border-bottom:1px solid var(--base-4);display:flex;align-items:center;justify-content:space-between}.no-alerts[_ngcontent-%COMP%]{padding:1rem;display:flex;flex-direction:column;gap:1rem;text-align:center}"],changeDetection:0})};function qe(n,o){n&1&&(a(0,"spk-icon",14),F(1,"check"),i())}function je(n,o){n&1&&(a(0,"spk-icon",15),F(1,"prohibit"),i())}function Qe(n,o){if(n&1){let e=f();a(0,"button",20),g("click",function(){C(e);let s=c();return m(s.updatePassphrase())}),O(1,5),i()}if(n&2){let e=c();v("loader",e.isUpdating())}}function Je(n,o){if(n&1){let e=f();a(0,"button",21),g("click",function(){C(e);let s=c();return m(s.updatePassphrase())}),O(1,6),i()}if(n&2){let e=c();v("loader",e.isUpdating()),h("disabled",!0)}}var U=class n{#e=A(H);closed=le();isUpdating=E(!1);passphrase=E("");repeatPassphrase=E("");updatePassphrase(){this.passphrase()===this.repeatPassphrase()&&(this.isUpdating.set(!0),this.#e.patchApiV1Serversettings({requestBody:{"server-passphrase":this.passphrase()}}).pipe(V(()=>this.isUpdating.set(!1))).subscribe({next:()=>this.closed.emit()}))}cancel(){this.isUpdating.set(!0),this.#e.patchApiV1Serversettings({requestBody:{"has-asked-for-password-change":"True"}}).pipe(V(()=>this.isUpdating.set(!1))).subscribe({next:()=>this.closed.emit()})}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=N({type:n,selectors:[["app-change-passphrase-alert-dialog"]],outputs:{closed:"closed"},decls:23,vars:7,consts:()=>{let o;o=$localize`Enter new password`;let e;e=$localize`Repeat password`;let t;t=$localize`Password have to be filled and have to match`;let s;s=$localize`Change passphrase`;let _;_=$localize` Duplicati needs to be secured with a passphrase and a random passphrase has been generated for you. ${"[\uFFFD#6\uFFFD\uFFFD/#6\uFFFD|\uFFFD#7\uFFFD\uFFFD/#7\uFFFD]"}:LINE_BREAK:${"[\uFFFD#6\uFFFD\uFFFD/#6\uFFFD|\uFFFD#7\uFFFD\uFFFD/#7\uFFFD]"}:LINE_BREAK: If you open Duplicati from the tray icon, you do not need a passphrase, but if you plan to open it from another location you need to set a passphrase you know. Do you want to set a passphrase now? `,_=R(_);let D;D=$localize`Passphrase`;let k;k=$localize`Repeat passphrase`;let I;I=$localize`Not now thanks`;let L;L=$localize` Yes, update passphrase now `;let T;return T=$localize` Yes, update passphrase now `,[s,_,D,k,I,L,T,["header",""],["content",""],["type","warning"],["for","password"],["type","password","name","password","autocomplete","disabled","placeholder",o,"tabindex","1",3,"ngModelChange","ngModel"],["for","repeatPassword"],["type","password","name","repeatPassword","autocomplete","disabled","placeholder",e,"tabindex","2",3,"ngModelChange","disabled","ngModel"],["suffix","",1,"spk-success"],["suffix",""],["footer",""],["spk-button","",3,"click"],["spk-button","",1,"raised","primary",3,"loader"],["spk-button","","spkTooltip",t,1,"raised","primary",3,"loader","disabled"],["spk-button","",1,"raised","primary",3,"click"],["spk-button","","spkTooltip",t,1,"raised","primary",3,"click","disabled"]]},template:function(e,t){e&1&&(a(0,"header",7)(1,"h3"),O(2,0),i()(),a(3,"div",8)(4,"spk-alert",9),p(5,1),l(6,"br")(7,"br"),u(),i(),a(8,"spk-form-field")(9,"label",10),O(10,2),i(),a(11,"input",11),q("ngModelChange",function(_){return W(t.passphrase,_)||(t.passphrase=_),_}),i()(),a(12,"spk-form-field")(13,"label",12),O(14,3),i(),a(15,"input",13),q("ngModelChange",function(_){return W(t.repeatPassphrase,_)||(t.repeatPassphrase=_),_}),i(),d(16,qe,2,0,"spk-icon",14)(17,je,2,0,"spk-icon",15),i()(),a(18,"footer",16)(19,"button",17),g("click",function(){return t.cancel()}),O(20,4),i(),d(21,Qe,2,2,"button",18)(22,Je,2,3,"button",19),i()),e&2&&(r(11),z("ngModel",t.passphrase),r(4),h("disabled",t.passphrase().length===0),z("ngModel",t.repeatPassphrase),r(),S(t.passphrase().length!==0&&t.passphrase()===t.repeatPassphrase()?16:17),r(3),v("loader",t.isUpdating()),r(2),S(t.passphrase().length!==0&&t.passphrase()===t.repeatPassphrase()?21:22))},dependencies:[Ne,Pe,he,De,G,Ae,M,Te],styles:["[_nghost-%COMP%]{display:block;--dialog-p: 1.5rem}[content][_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem}"],changeDetection:0})};var Ze=()=>({exact:!0});function et(n,o){n&1&&(a(0,"spk-icon"),F(1,"sun"),i())}function tt(n,o){n&1&&(a(0,"spk-icon"),F(1,"moon"),i())}function nt(n,o){if(n&1){let e=f();a(0,"button",22),g("click",function(){C(e);let s=c();return m(s.changeDefaultClientTo("ngax"))}),p(1,7),l(2,"spk-icon"),u(),i(),a(3,"button",22),g("click",function(){C(e);let s=c();return m(s.logout())}),p(4,8),l(5,"spk-icon"),u(),i()}}var J=class n{#e=A($e);#t=A(H);#n=A(fe);#o=A(de);#i=A(ge);#a=A(x);#s=A(Ee);relayIsEnabled=this.#o.relayIsEnabled;isDarkMode=this.#e.isDarkMode;ngOnInit(){return this.#a.init(),this.#n.getBackups(!0),this.#t.getApiV1Serversettings().subscribe({next:o=>{let e=o["autogenerated-passphrase"]==="True",t=o["has-asked-for-password-change"]==="True";e&&!t&&this.#i.open(U,{maxWidth:"500px"})}})}toggleBodyClass(){this.#e.toggleBodyClass()}changeDefaultClientTo(o){this.#r(o),window.location.replace(`/${o}`)}logout(){this.#s.logout()}#r(o){var e=new Date;e.setTime(e.getTime()+90*24*60*60*1e3),document.cookie="default-client="+o+"; expires="+e.toUTCString()+"; path=/"}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=N({type:n,selectors:[["app-layout"]],decls:37,vars:4,consts:()=>{let o;o=$localize`${"\uFFFD#10\uFFFD"}:START_TAG_SPK_ICON:house${"\uFFFD/#10\uFFFD"}:CLOSE_TAG_SPK_ICON: Home `;let e;e=$localize`${"\uFFFD#13\uFFFD"}:START_TAG_SPK_ICON:database${"\uFFFD/#13\uFFFD"}:CLOSE_TAG_SPK_ICON: Add backup `;let t;t=$localize`${"\uFFFD#16\uFFFD"}:START_TAG_SPK_ICON:clock-counter-clockwise${"\uFFFD/#16\uFFFD"}:CLOSE_TAG_SPK_ICON: Restore `;let s;s=$localize`${"\uFFFD#19\uFFFD"}:START_TAG_SPK_ICON:gear${"\uFFFD/#19\uFFFD"}:CLOSE_TAG_SPK_ICON: Settings `;let _;_=$localize`${"\uFFFD#26\uFFFD"}:START_TAG_SPK_ICON:info${"\uFFFD/#26\uFFFD"}:CLOSE_TAG_SPK_ICON: About Duplicati `;let D;D=$localize`${"\uFFFD#29\uFFFD"}:START_TAG_SPK_ICON:files${"[\uFFFD/#29\uFFFD|\uFFFD/#30\uFFFD]"}:CLOSE_TAG_SPK_ICON: Documentation ${"\uFFFD#30\uFFFD"}:START_TAG_SPK_ICON_1:arrow-square-out${"[\uFFFD/#29\uFFFD|\uFFFD/#30\uFFFD]"}:CLOSE_TAG_SPK_ICON:`,D=R(D);let k;k=$localize`${"\uFFFD#33\uFFFD"}:START_TAG_SPK_ICON:chats-circle${"[\uFFFD/#33\uFFFD|\uFFFD/#34\uFFFD]"}:CLOSE_TAG_SPK_ICON: Visit forum ${"\uFFFD#34\uFFFD"}:START_TAG_SPK_ICON_1:arrow-square-out${"[\uFFFD/#33\uFFFD|\uFFFD/#34\uFFFD]"}:CLOSE_TAG_SPK_ICON:`,k=R(k);let I;I=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SPK_ICON:skip-back${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SPK_ICON: Use old UI `;let L;return L=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SPK_ICON:sign-out${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SPK_ICON: Log out `,[o,e,t,s,_,D,k,I,L,["sidenav",""],["spk-button","",1,"icon","small",3,"click"],[1,"base-1","primary"],["action","","routerLink","/","routerLinkActive","active",3,"routerLinkActiveOptions"],["action","","routerLink","/add-backup","routerLinkActive","active"],["action","","routerLink","/restore","routerLinkActive","active"],["action","","routerLink","/settings","routerLinkActive","active"],[1,"spacer"],[1,"base-1l","primary"],["action","","routerLink","/about","routerLinkActive","active"],["href","https://docs.duplicati.com","target","_blank","action",""],["suffix",""],["href","https://forum.duplicati.com","target","_blank","action",""],["action","",3,"click"]]},template:function(e,t){e&1&&(a(0,"spk-sidenav")(1,"div",9)(2,"header"),l(3,"app-logo"),a(4,"button",10),g("click",function(){return t.toggleBodyClass()}),d(5,et,2,0,"spk-icon")(6,tt,2,0,"spk-icon"),i()(),a(7,"spk-list",11)(8,"button",12),p(9,0),l(10,"spk-icon"),u(),i(),a(11,"button",13),p(12,1),l(13,"spk-icon"),u(),i(),a(14,"button",14),p(15,2),l(16,"spk-icon"),u(),i(),a(17,"button",15),p(18,3),l(19,"spk-icon"),u(),i()(),l(20,"div",16),a(21,"spk-list",17),d(22,nt,6,0),l(23,"spk-divider"),a(24,"button",18),p(25,4),l(26,"spk-icon"),u(),i(),a(27,"a",19),p(28,5),l(29,"spk-icon")(30,"spk-icon",20),u(),i(),a(31,"a",21),p(32,6),l(33,"spk-icon")(34,"spk-icon",20),u(),i()()(),l(35,"router-outlet")(36,"app-service-hub"),i()),e&2&&(r(5),S(t.isDarkMode()?5:6),r(3),h("routerLinkActiveOptions",se(3,Ze)),r(14),S(t.relayIsEnabled()?-1:22))},dependencies:[ce,pe,ue,me,M,Ce,w,Fe,b,Ie],styles:["[_nghost-%COMP%]{height:100vh;width:100%;overflow:hidden}header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:1.25rem;gap:.75rem}h3[title][_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between}div[sidenav][_ngcontent-%COMP%]{display:flex;flex-direction:column;height:100vh}"],changeDetection:0})};export{J as default};