@duplicati/ngclient 0.0.118 → 0.0.119

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 (102) hide show
  1. package/{chunk-ZRFL62SL.js → chunk-2GE6FFGI.js} +1 -1
  2. package/{chunk-45NW2WR4.js → chunk-2P3DXYGR.js} +1 -1
  3. package/{chunk-IK7CPFZB.js → chunk-2SQBD7LN.js} +1 -1
  4. package/{chunk-BIZAKOYU.js → chunk-3AIKVVWP.js} +1 -1
  5. package/chunk-3GGSYR5J.js +1 -0
  6. package/{chunk-GWVX5STR.js → chunk-3KUVV3SB.js} +1 -1
  7. package/{chunk-XP7PWMT2.js → chunk-3XVU2YA6.js} +1 -1
  8. package/{chunk-2GCIICW5.js → chunk-4FUHLIJW.js} +1 -1
  9. package/{chunk-ETX7VKB3.js → chunk-4LLC3Q7O.js} +1 -1
  10. package/{chunk-42DBG4A6.js → chunk-4RIDBZOK.js} +1 -1
  11. package/{chunk-YTDBBO6I.js → chunk-4YUBZYBH.js} +1 -1
  12. package/{chunk-ELMONRIG.js → chunk-5ENRUF35.js} +1 -1
  13. package/{chunk-C6XTRC7P.js → chunk-5LKXKKAK.js} +1 -1
  14. package/{chunk-TRR5XEEM.js → chunk-65UN5LE6.js} +1 -1
  15. package/{chunk-476PQHLI.js → chunk-6KSS7VQS.js} +1 -1
  16. package/{chunk-BJIL3R5K.js → chunk-6WZGDK7U.js} +1 -1
  17. package/{chunk-3GYZOEPN.js → chunk-7NBGN46A.js} +1 -1
  18. package/{chunk-XDHEMLPD.js → chunk-A6XWHATE.js} +1 -1
  19. package/{chunk-XZ7HNUSV.js → chunk-AACJQG7X.js} +1 -1
  20. package/chunk-ADO3ABTT.js +1 -0
  21. package/{chunk-L72ALLHJ.js → chunk-AHUC7M75.js} +6 -6
  22. package/{chunk-SL6SRYFT.js → chunk-AL5KGNEF.js} +1 -1
  23. package/{chunk-P7O2NK5N.js → chunk-B3WLZK7W.js} +1 -1
  24. package/chunk-B64M2BXZ.js +1 -0
  25. package/{chunk-M7ENBMEW.js → chunk-BAX2AJJJ.js} +1 -1
  26. package/{chunk-HCBCZ5NX.js → chunk-CH7FSO4Y.js} +1 -1
  27. package/{chunk-JE3JBXTZ.js → chunk-CPTR6AJI.js} +1 -1
  28. package/chunk-CRJHIWSF.js +1 -0
  29. package/{chunk-C3M5C7JC.js → chunk-CZUGA62N.js} +2 -2
  30. package/chunk-DCYB2NQH.js +1 -0
  31. package/{chunk-I5SC52QU.js → chunk-DX6BDDDV.js} +1 -1
  32. package/{chunk-VJQVHIW5.js → chunk-ELZWH543.js} +1 -1
  33. package/{chunk-S5EF63OY.js → chunk-FRSQ5NDX.js} +1 -1
  34. package/chunk-G5CT45UH.js +1 -0
  35. package/{chunk-AGPUJOBO.js → chunk-GYUN7KFJ.js} +1 -1
  36. package/{chunk-MAVZY7BL.js → chunk-HFNFJ7G2.js} +1 -1
  37. package/chunk-HHSMSBNM.js +1 -0
  38. package/{chunk-N2MDNESH.js → chunk-HTX2RSBS.js} +1 -1
  39. package/{chunk-O445WX5K.js → chunk-HXN7IX3Q.js} +1 -1
  40. package/chunk-JRZGF4BZ.js +1 -0
  41. package/{chunk-HWBBTXU3.js → chunk-K5C3JCVH.js} +1 -1
  42. package/chunk-KBJGYXKV.js +1 -0
  43. package/{chunk-44DHERTN.js → chunk-KHGD372Q.js} +1 -1
  44. package/chunk-KYQWUXYN.js +1 -0
  45. package/{chunk-54VPI5KJ.js → chunk-LDJVMU7P.js} +1 -1
  46. package/{chunk-WFAZP46A.js → chunk-LJDOQTEF.js} +1 -1
  47. package/{chunk-7L2WUS2V.js → chunk-M3WT5B3C.js} +1 -1
  48. package/{chunk-COT4PUVO.js → chunk-MUBWT5H2.js} +1 -1
  49. package/{chunk-EQWH3TBL.js → chunk-NF3MS2YP.js} +1 -1
  50. package/{chunk-NIBE7CI2.js → chunk-NPZU4SBS.js} +1 -1
  51. package/{chunk-XYMSYNUD.js → chunk-OEIF7NQ5.js} +1 -1
  52. package/{chunk-MU24KCIK.js → chunk-OHZGASM5.js} +1 -1
  53. package/{chunk-FBX4Q2XW.js → chunk-PHIZVVHX.js} +1 -1
  54. package/chunk-PKRMVTCU.js +1 -0
  55. package/{chunk-B5MQU4UL.js → chunk-Q6M5VRZV.js} +1 -1
  56. package/chunk-QVNFX6ZC.js +1 -0
  57. package/{chunk-JFNFY6VY.js → chunk-RHII5WE3.js} +1 -1
  58. package/chunk-RKAIZDDW.js +1 -0
  59. package/{chunk-L2M4ZKII.js → chunk-RLUT4FSI.js} +1 -1
  60. package/{chunk-HFIC4JNY.js → chunk-RSZISHXB.js} +1 -1
  61. package/chunk-RXHYUPYG.js +6 -0
  62. package/{chunk-YCAQITZE.js → chunk-SSJ4VQB4.js} +2 -2
  63. package/{chunk-MQJUTAQD.js → chunk-T6KX6ACI.js} +1 -1
  64. package/{chunk-DOP6RFEG.js → chunk-TCDECRYI.js} +1 -1
  65. package/{chunk-R3PVYKQS.js → chunk-TJJORMQV.js} +1 -1
  66. package/{chunk-F7E55RI6.js → chunk-UABJ67OY.js} +1 -1
  67. package/{chunk-5BHYO5SK.js → chunk-UXUVYBYP.js} +1 -1
  68. package/{chunk-P7IBR2UW.js → chunk-VGAQB3OD.js} +1 -1
  69. package/chunk-W4RKRM2O.js +1 -0
  70. package/{chunk-FJVMA6GA.js → chunk-WFM6YWRN.js} +1 -1
  71. package/chunk-WU3ALGNP.js +1 -0
  72. package/{chunk-F2GEUOGZ.js → chunk-WZRSQ7XL.js} +1 -1
  73. package/{chunk-CDWP7I44.js → chunk-X6PSFVBL.js} +1 -1
  74. package/{chunk-TQHNKGRL.js → chunk-XR4SRVOQ.js} +1 -1
  75. package/{chunk-3RIVWHQR.js → chunk-XWF632WO.js} +2 -2
  76. package/{chunk-2WGKWTVM.js → chunk-YW5R7NEG.js} +2 -2
  77. package/{chunk-PVLYH62N.js → chunk-YY3JAYQZ.js} +1 -1
  78. package/chunk-Z45ZPMZS.js +1 -0
  79. package/chunk-ZHMYBX5F.js +1 -0
  80. package/{chunk-BJGA55H2.js → chunk-ZQSBINUM.js} +1 -1
  81. package/index.html +2 -2
  82. package/{main-I7BOOCNM.js → main-PDJMO4FF.js} +1 -1
  83. package/package.json +1 -1
  84. package/{styles-EXA64NMM.css → styles-P2AEFLUS.css} +1 -1
  85. package/chunk-3PDXD5UG.js +0 -1
  86. package/chunk-4RAO2JRJ.js +0 -1
  87. package/chunk-7RELJ5CQ.js +0 -1
  88. package/chunk-CCJ5LW7S.js +0 -1
  89. package/chunk-I7KXABQT.js +0 -1
  90. package/chunk-IZFSAAIF.js +0 -1
  91. package/chunk-JSZOZDJQ.js +0 -1
  92. package/chunk-SKABVF5Q.js +0 -1
  93. package/chunk-SQQKW2DQ.js +0 -1
  94. package/chunk-TEYVVULJ.js +0 -1
  95. package/chunk-TRCPJYNH.js +0 -1
  96. package/chunk-UNXP3IN4.js +0 -1
  97. package/chunk-V756QT7J.js +0 -1
  98. package/chunk-WLU27TDA.js +0 -1
  99. package/chunk-WRPHCCP7.js +0 -6
  100. package/chunk-X3TVMZLM.js +0 -1
  101. package/chunk-XL7YUTMF.js +0 -1
  102. package/chunk-YDLHVAEO.js +0 -1
@@ -1 +1 @@
1
- import{Oc as m,Q as d,Qc as g,Z as y,ca as l,la as b,va as a}from"./chunk-L72ALLHJ.js";import{a as f,b as v}from"./chunk-7CGTOI24.js";function p(o,e){let r=!e?.manualCleanup;r&&!e?.injector&&l(p);let c=r?e?.injector?.get(b)??y(b):null,u=h(e?.equal),n;e?.requireSync?n=a({kind:0},{equal:u}):n=a({kind:1,value:e?.initialValue},{equal:u});let i=o.subscribe({next:t=>n.set({kind:1,value:t}),error:t=>{if(e?.rejectErrors)throw t;n.set({kind:2,error:t})}});if(e?.requireSync&&n().kind===0)throw new d(601,!1);return c?.onDestroy(i.unsubscribe.bind(i)),m(()=>{let t=n();switch(t.kind){case 1:return t.value;case 2:throw t.error;case 0:throw new d(601,!1)}},{equal:e?.equal})}function h(o=Object.is){return(e,r)=>e.kind===1&&r.kind===1&&o(e.value,r.value)}function w(o){return o?.injector||l(w),g(v(f({},o),{loader:void 0,stream:e=>{let r,c=()=>r.unsubscribe();e.abortSignal.addEventListener("abort",c);let u=a({value:void 0}),n,i=new Promise(s=>n=s);function t(s){u.set(s),n?.(u),n=void 0}return r=o.loader(e).subscribe({next:s=>t({value:s}),error:s=>t({error:s}),complete:()=>{n&&t({error:new Error("Resource completed before producing a value")}),e.abortSignal.removeEventListener("abort",c)}}),i}}))}export{p as a,w as b};
1
+ import{Pc as m,Q as d,Rc as g,Z as y,ca as l,la as b,va as a}from"./chunk-AHUC7M75.js";import{a as f,b as v}from"./chunk-7CGTOI24.js";function p(o,e){let r=!e?.manualCleanup;r&&!e?.injector&&l(p);let c=r?e?.injector?.get(b)??y(b):null,u=h(e?.equal),n;e?.requireSync?n=a({kind:0},{equal:u}):n=a({kind:1,value:e?.initialValue},{equal:u});let i=o.subscribe({next:t=>n.set({kind:1,value:t}),error:t=>{if(e?.rejectErrors)throw t;n.set({kind:2,error:t})}});if(e?.requireSync&&n().kind===0)throw new d(601,!1);return c?.onDestroy(i.unsubscribe.bind(i)),m(()=>{let t=n();switch(t.kind){case 1:return t.value;case 2:throw t.error;case 0:throw new d(601,!1)}},{equal:e?.equal})}function h(o=Object.is){return(e,r)=>e.kind===1&&r.kind===1&&o(e.value,r.value)}function w(o){return o?.injector||l(w),g(v(f({},o),{loader:void 0,stream:e=>{let r,c=()=>r.unsubscribe();e.abortSignal.addEventListener("abort",c);let u=a({value:void 0}),n,i=new Promise(s=>n=s);function t(s){u.set(s),n?.(u),n=void 0}return r=o.loader(e).subscribe({next:s=>t({value:s}),error:s=>t({error:s}),complete:()=>{n&&t({error:new Error("Resource completed before producing a value")}),e.abortSignal.removeEventListener("abort",c)}}),i}}))}export{p as a,w as b};
@@ -1,2 +1,2 @@
1
- import{a as y,x as w}from"./chunk-SL6SRYFT.js";import{h as B}from"./chunk-S5EF63OY.js";import{pa as $}from"./chunk-7L2WUS2V.js";import{Ab as S,Ac as A,Bb as m,Cb as O,Db as o,Eb as i,F as C,Fb as I,Jb as b,Rb as p,Ua as r,Vb as h,Wb as c,Z as T,ea as E,fa as L,gb as M,ic as s,jc as g,lb as f,nc as D,oc as N,pc as k,ub as P,va as d,vb as R,wb as G,yc as v,zb as x}from"./chunk-L72ALLHJ.js";import"./chunk-7CGTOI24.js";function U(a,e){if(a&1&&(o(0,"li"),s(1),i()),a&2){let t=e.$implicit;r(),g(t)}}function X(a,e){if(a&1&&(o(0,"tr")(1,"td",10)(2,"code")(3,"ol",11),m(4,U,2,1,"li",null,S),i()()()()),a&2){let t=c().$implicit,n=c();r(),R("grid-column","1 / -1")("height","auto"),r(3),O(n.breakIntoLines(t.Exception))}}function F(a,e){if(a&1){let t=b();o(0,"tr",7),h("click",function(){let _=E(t).$index,l=c();return L(l.toggleRow(_))}),o(1,"td"),s(2),v(3,"date"),i(),o(4,"td",8),s(5),i(),o(6,"td"),s(7),i(),o(8,"td")(9,"button",9)(10,"spk-icon"),s(11,"caret-down"),i()()()(),f(12,X,6,4,"tr")}if(a&2){let t=e.$implicit,n=e.$index,_=c();r(2),g(A(3,6,t.Timestamp,"MMM dd. hh:mm")),r(3),g(t.BackupID>=0?t.BackupID:"-"),r(2),g(t.Message),r(2),G("rotated-icon",n===_.openRowIndex()),r(3),x(n===_.openRowIndex()?12:-1)}}var z=["BackupID","Timestamp","Message","actions"],u=class a{#e=T(B);displayedColumns=d(z);logsLoading=d(!0);openRowIndex=d(null);logs=d([]);ngOnInit(){this.init()}init(){this.#e.getApiV1LogdataLog().pipe(C(()=>this.logsLoading.set(!1))).subscribe({next:e=>{this.logs.set(e)}})}toggleRow(e){this.openRowIndex.set(e===this.openRowIndex()?null:e)}breakIntoLines(e){return e?e.split(`
2
- `):[]}static \u0275fac=function(t){return new(t||a)};static \u0275cmp=M({type:a,selectors:[["app-logs-stored"]],decls:13,vars:2,consts:()=>{let e;e=$localize`Timestamp`;let t;t=$localize`Backup ID`;let n;n=$localize`Message`;let _;return _=$localize`No data available`,[e,t,n,_,[3,"dataChange","data","loading"],["table-header",""],["table-no-rows",""],[3,"click"],[1,"id"],["spk-button","","type","button",1,"outlined","small"],[2,"white-space","pre-wrap"],[1,"line-numbers-ol"]]},template:function(t,n){t&1&&(o(0,"spk-table",4),k("dataChange",function(l){return N(n.logs,l)||(n.logs=l),l}),o(1,"tr",5)(2,"th"),p(3,0),i(),o(4,"th"),p(5,1),i(),o(6,"th"),p(7,2),i(),I(8,"th"),i(),m(9,F,13,9,null,null,S),o(11,"div",6),p(12,3),i()()),t&2&&(D("data",n.logs),P("loading",n.logsLoading()),r(9),O(n.logs()))},dependencies:[w,$,y],styles:["[_nghost-%COMP%]{display:block}h3[_ngcontent-%COMP%]{font:var(--title-30);margin:0 0 1.25rem}spk-table[_ngcontent-%COMP%]{--table-columns: auto auto 1fr auto}spk-table[_ngcontent-%COMP%] td.id[_ngcontent-%COMP%]{justify-content:center}spk-table[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:has(code){padding:1rem .75rem;overflow:hidden}spk-table[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:has(code) code[_ngcontent-%COMP%]{background-color:var(--grey-800);color:var(--grey-100);padding:2.5rem 2.5rem 2.5rem 1.5rem;border-radius:var(--shape-3);overflow:auto;white-space:pre}"],changeDetection:0})};export{u as default};
1
+ import{a as w,x as y}from"./chunk-AL5KGNEF.js";import{h as B}from"./chunk-FRSQ5NDX.js";import{pa as v}from"./chunk-M3WT5B3C.js";import{Ab as m,Bb as S,Bc as $,Cb as O,Db as o,Eb as i,F as C,Fb as x,Jb as I,Rb as p,Ua as r,Vb as h,Wb as c,Z as T,ea as E,fa as L,gb as M,jc as s,kc as g,lb as f,oc as D,pc as N,qc as k,ub as P,va as d,vb as R,wb as G,zb as b,zc as A}from"./chunk-AHUC7M75.js";import"./chunk-7CGTOI24.js";function U(a,e){if(a&1&&(o(0,"li"),s(1),i()),a&2){let t=e.$implicit;r(),g(t)}}function X(a,e){if(a&1&&(o(0,"tr")(1,"td",10)(2,"code")(3,"ol",11),S(4,U,2,1,"li",null,m),i()()()()),a&2){let t=c().$implicit,n=c();r(),R("grid-column","1 / -1")("height","auto"),r(3),O(n.breakIntoLines(t.Exception))}}function F(a,e){if(a&1){let t=I();o(0,"tr",7),h("click",function(){let _=E(t).$index,l=c();return L(l.toggleRow(_))}),o(1,"td"),s(2),A(3,"date"),i(),o(4,"td",8),s(5),i(),o(6,"td"),s(7),i(),o(8,"td")(9,"button",9)(10,"spk-icon"),s(11,"caret-down"),i()()()(),f(12,X,6,4,"tr")}if(a&2){let t=e.$implicit,n=e.$index,_=c();r(2),g($(3,6,t.Timestamp,"MMM dd. hh:mm")),r(3),g(t.BackupID>=0?t.BackupID:"-"),r(2),g(t.Message),r(2),G("rotated-icon",n===_.openRowIndex()),r(3),b(n===_.openRowIndex()?12:-1)}}var z=["BackupID","Timestamp","Message","actions"],u=class a{#e=T(B);displayedColumns=d(z);logsLoading=d(!0);openRowIndex=d(null);logs=d([]);ngOnInit(){this.init()}init(){this.#e.getApiV1LogdataLog().pipe(C(()=>this.logsLoading.set(!1))).subscribe({next:e=>{this.logs.set(e)}})}toggleRow(e){this.openRowIndex.set(e===this.openRowIndex()?null:e)}breakIntoLines(e){return e?e.split(`
2
+ `):[]}static \u0275fac=function(t){return new(t||a)};static \u0275cmp=M({type:a,selectors:[["app-logs-stored"]],decls:13,vars:2,consts:()=>{let e;e=$localize`Timestamp`;let t;t=$localize`Backup ID`;let n;n=$localize`Message`;let _;return _=$localize`No data available`,[e,t,n,_,[3,"dataChange","data","loading"],["table-header",""],["table-no-rows",""],[3,"click"],[1,"id"],["spk-button","","type","button",1,"outlined","small"],[2,"white-space","pre-wrap"],[1,"line-numbers-ol"]]},template:function(t,n){t&1&&(o(0,"spk-table",4),k("dataChange",function(l){return N(n.logs,l)||(n.logs=l),l}),o(1,"tr",5)(2,"th"),p(3,0),i(),o(4,"th"),p(5,1),i(),o(6,"th"),p(7,2),i(),x(8,"th"),i(),S(9,F,13,9,null,null,m),o(11,"div",6),p(12,3),i()()),t&2&&(D("data",n.logs),P("loading",n.logsLoading()),r(9),O(n.logs()))},dependencies:[y,v,w],styles:["[_nghost-%COMP%]{display:block}h3[_ngcontent-%COMP%]{font:var(--title-30);margin:0 0 1.25rem}spk-table[_ngcontent-%COMP%]{--table-columns: auto auto 1fr auto}spk-table[_ngcontent-%COMP%] td.id[_ngcontent-%COMP%]{justify-content:center}spk-table[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:has(code){padding:1rem .75rem;overflow:hidden}spk-table[_ngcontent-%COMP%] td[_ngcontent-%COMP%]:has(code) 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{u as default};
@@ -1,4 +1,4 @@
1
- import{g as Yt}from"./chunk-B5MQU4UL.js";import{a as Jt,l as Z}from"./chunk-WRPHCCP7.js";import{a as qt,b as jt}from"./chunk-44DHERTN.js";import{a as Xt}from"./chunk-54VPI5KJ.js";import{a as Qt}from"./chunk-WFAZP46A.js";import{a as Wt,c as zt}from"./chunk-V756QT7J.js";import"./chunk-EQWH3TBL.js";import"./chunk-TQHNKGRL.js";import"./chunk-F2GEUOGZ.js";import{a as ht}from"./chunk-BIZAKOYU.js";import"./chunk-RHW5QVAY.js";import{b as $t,c as wt,e as At,f as vt,g as Pt,i as Vt,j as bt,m as Mt,n as Gt,o as Bt,p as Lt,q as Ut,r as Ht,t as Kt}from"./chunk-ELMONRIG.js";import{b as gt,d as ft}from"./chunk-C6XTRC7P.js";import"./chunk-MAVZY7BL.js";import{A as It,C as yt,a as Dt,b as St,d as Et,e as Ot,l as xt,o as kt,p as Rt,t as Nt}from"./chunk-SL6SRYFT.js";import{c as Ct}from"./chunk-S5EF63OY.js";import{ia as Tt}from"./chunk-7L2WUS2V.js";import{$a as ot,$b as rt,Ab as I,Bb as y,Bc as L,Cb as h,Db as l,Eb as r,F as nt,Fb as u,Gb as $,Hb as w,Ib as b,Jb as S,Oc as H,Pb as E,Pc as dt,Qb as O,Rb as M,Sb as X,Tb as q,Ua as a,Ub as U,Vb as f,Wb as s,Z as N,Zb as k,ac as d,ea as C,fa as g,fc as lt,gb as at,gc as st,hc as A,ic as _,jc as j,ka as it,kc as D,lb as m,lc as pt,nc as _t,oc as ct,pc as mt,qc as Q,rc as J,sc as Y,tc as Ft,ub as c,uc as ut,va as x,vc as G,wb as z,xc as B,zb as F}from"./chunk-L72ALLHJ.js";import"./chunk-7CGTOI24.js";var Zt=["formRef"],te=(n,i,t,e)=>({index:n,formView:i,formGroupName:"custom",destinationType:t,oauthField:e}),W=n=>({$implicit:n}),ee=(n,i,t,e)=>({index:n,formView:i,formGroupName:"dynamic",destinationType:t,oauthField:e}),ne=(n,i,t,e)=>({index:n,formView:i,formGroupName:"advanced",destinationType:t,oauthField:e}),ie=(n,i,t,e)=>({index:n,formView:i,formGroupName:"advanced",asHttpOptions:!0,destinationType:t,oauthField:e}),oe=()=>({maxWidth:"700px",width:"100%"});function ae(n,i){n&1&&(E(0,5,2),u(1,"spk-icon"),O())}function re(n,i){n&1&&M(0,5,3)}function le(n,i){if(n&1){let t=S();E(0,5,1),l(1,"button",21),f("click",function(){C(t);let o=s();return g(o.testDestination())}),m(2,ae,2,0)(3,re,1,0),r(),O()}if(n&2){let t=s();a(),z("success",t.successfulTest()),a(),F(t.successfulTest()?2:3)}}function se(n,i){if(n&1){let t=S();l(0,"p",27),f("click",function(){C(t);let o=s();return g(o.removeDestinationFormGroup(o.destinationCount()-1))}),E(1,8),u(2,"span",28),O(),r()}}function pe(n,i){if(n&1){let t=S();l(0,"div",34),f("click",function(){let o=C(t).$implicit,p=s(2);return g(p.addDestinationFormGroup(o.key))}),l(1,"h3"),_(2),r(),l(3,"p"),_(4),r()()}if(n&2){let t=i.$implicit;a(2),j(t.displayName),a(2),j(t.description)}}function _e(n,i){if(n&1){let t=S();l(0,"button",35,1),f("click",function(){let o=C(t).$implicit,p=s(2);return g(p.addDestinationFormGroup(o.key))}),_(2),r()}if(n&2){let t=i.$implicit;a(2),D(" ",t.displayName," ")}}function ce(n,i){if(n&1&&(l(0,"div",29),y(1,pe,5,2,"div",30,I),r(),l(3,"spk-menu",31)(4,"button",32),M(5,9),r(),$(6,20),y(7,_e,3,1,"button",33,I),w(),r()),n&2){let t=s();a(),h(t.destinationTypeOptionsFocused()),a(2),c("searchable",!0),a(4),h(t.destinationTypeOptionsNotFocused())}}function me(n,i){n&1&&b(0)}function Fe(n,i){if(n&1&&m(0,me,1,0,"ng-container",40),n&2){let t,e=i.$implicit,o=i.$index;s();let p=A(29),T=s();c("ngTemplateOutlet",p)("ngTemplateOutletContext",G(7,W,B(2,te,o,e,(t=T.destinationFormSignal())==null||t.destinations==null||t.destinations[0]==null?null:t.destinations[0].destinationType,T.destinationFormPair().oauthField)))}}function ue(n,i){n&1&&b(0)}function de(n,i){if(n&1&&m(0,ue,1,0,"ng-container",40),n&2){let t,e=i.$implicit,o=i.$index;s();let p=A(29),T=s();c("ngTemplateOutlet",p)("ngTemplateOutletContext",G(7,W,B(2,ee,o,e,(t=T.destinationFormSignal())==null||t.destinations==null||t.destinations[0]==null?null:t.destinations[0].destinationType,T.destinationFormPair().oauthField)))}}function Te(n,i){if(n&1){let t=S();E(0,10,1),l(1,"button",35,1),f("click",function(){let o=C(t).$implicit,p=s(2);return g(p.addAdvancedFormPair(o,0))}),r(),O()}if(n&2){let t=i.$implicit;a(),X(t.name),q(0)}}function Ce(n,i){n&1&&b(0)}function ge(n,i){if(n&1&&m(0,Ce,1,0,"ng-container",40),n&2){let t,e=i.$implicit,o=i.$index;s();let p=A(29),T=s();c("ngTemplateOutlet",p)("ngTemplateOutletContext",G(7,W,B(2,ne,o,e,(t=T.destinationFormSignal())==null||t.destinations==null||t.destinations[0]==null?null:t.destinations[0].destinationType,T.destinationFormPair().oauthField)))}}function fe(n,i){if(n&1){let t=S();E(0,11,1),l(1,"button",35,1),f("click",function(){let o=C(t).$implicit,p=s(2);return g(p.addHttpOption(o,0))}),r(),O()}if(n&2){let t=i.$implicit;a(),X(t.name),q(0)}}function De(n,i){n&1&&b(0)}function Se(n,i){if(n&1&&m(0,De,1,0,"ng-container",40),n&2){let t,e=i.$implicit,o=i.$index;s();let p=A(29),T=s();c("ngTemplateOutlet",p)("ngTemplateOutletContext",G(7,W,B(2,ie,o,e,(t=T.destinationFormSignal())==null||t.destinations==null||t.destinations[0]==null?null:t.destinations[0].destinationType,T.destinationFormPair().oauthField)))}}function Ee(n,i){if(n&1&&(l(0,"spk-icon",48),_(1,"question"),r()),n&2){let t=s(2).$implicit;c("spkTooltip",t.formView.longDescription)}}function Oe(n,i){if(n&1&&(l(0,"app-file-tree",43)(1,"label",47),_(2),m(3,Ee,2,1,"spk-icon",48),r(),u(4,"input",49),r()),n&2){let t,e=s().$implicit,o=s(2);c("startingPath",o.getFormFieldValue(0,e.formGroupName,e.formView.name))("accepts",e.formView.accepts)("showFiles",!0)("hideShortcuts",!0)("showHiddenNodes",!0)("selectFiles",!0),a(),d("for","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),a(),D(" ",(t=e.formView.shortDescription)!==null&&t!==void 0?t:e.formView.name," "),a(),F(e.formView.longDescription?3:-1),a(),d("id","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),k("formControlName",e.formView.name)}}function xe(n,i){if(n&1&&(l(0,"spk-icon",48),_(1,"question"),r()),n&2){let t=s(2).$implicit;c("spkTooltip",t.formView.longDescription)}}function ke(n,i){if(n&1&&(l(0,"app-file-tree",44)(1,"label",47),_(2),m(3,xe,2,1,"spk-icon",48),r(),u(4,"input",49),r()),n&2){let t,e=s().$implicit,o=s(2);c("hideShortcuts",!0)("startingPath",o.getFormFieldValue(0,e.formGroupName,e.formView.name)),a(),d("for","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),a(),D(" ",(t=e.formView.shortDescription)!==null&&t!==void 0?t:e.formView.name," "),a(),F(e.formView.longDescription?3:-1),a(),d("id","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),k("formControlName",e.formView.name)}}function Re(n,i){if(n&1&&(l(0,"spk-icon",48),_(1,"question"),r()),n&2){let t=s(2).$implicit;c("spkTooltip",t.formView.longDescription)}}function Ne(n,i){n&1&&(l(0,"spk-icon",51),_(1,"link"),r())}function Ie(n,i){n&1&&(l(0,"spk-icon",51),_(1,"envelope"),r())}function ye(n,i){n&1&&(l(0,"spk-icon",51),_(1,"textbox"),r())}function he(n,i){if(n&1&&(l(0,"spk-form-field")(1,"label",47),_(2),m(3,Re,2,1,"spk-icon",48),r(),u(4,"input",50),m(5,Ne,2,0,"spk-icon",51)(6,Ie,2,0,"spk-icon",51)(7,ye,2,0,"spk-icon",51),r()),n&2){let t,e=s().$implicit;a(),d("for","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),a(),D(" ",(t=e.formView.shortDescription)!==null&&t!==void 0?t:e.formView.name," "),a(),F(e.formView.longDescription?3:-1),a(),d("id","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),k("formControlName",e.formView.name),c("type",e.formView.type==="Email"?"email":"text"),a(),F(e.formView.type==="Path"?5:e.formView.type==="Email"?6:7)}}function $e(n,i){if(n&1){let t=S();l(0,"span",55),f("click",function(){C(t);let o=s(2).$implicit,p=s(2);return g(p.oauthStartTokenCreation(o.destinationType))}),_(1,"AuthID"),r()}}function we(n,i){n&1&&(l(0,"spk-icon",51),_(1,"password"),r())}function Ae(n,i){if(n&1){let t=S();l(0,"spk-icon",56),f("click",function(){C(t);let o=s(2).$implicit;return g(o.formView.showPassword=!o.formView.showPassword)}),_(1," eye "),r()}}function ve(n,i){if(n&1){let t=S();l(0,"spk-icon",56),f("click",function(){C(t);let o=s(2).$implicit;return g(o.formView.showPassword=!o.formView.showPassword)}),_(1," eye-slash "),r()}}function Pe(n,i){if(n&1&&(l(0,"spk-form-field")(1,"label",47),_(2),r(),u(3,"input",52),m(4,$e,2,0,"span",53)(5,we,2,0,"spk-icon",51)(6,Ae,2,0,"spk-icon",54)(7,ve,2,0,"spk-icon",54),r()),n&2){let t,e=s().$implicit;a(),d("for","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),a(),D(" ",(t=e.formView.shortDescription)!==null&&t!==void 0?t:e.formView.name," "),a(),d("id","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),k("formControlName",e.formView.name),c("type",e.formView.showPassword?"text":"password"),a(),F(e.oauthField===e.formView.name?4:5),a(2),F(e.formView.showPassword?6:7)}}function Ve(n,i){if(n&1&&(l(0,"spk-icon",48),_(1,"question"),r()),n&2){let t=s(3).$implicit;c("spkTooltip",t.formView.longDescription)}}function be(n,i){if(n&1&&_(0),n&2){let t=i.$implicit;D(" ",t," ")}}function Me(n,i){if(n&1&&(l(0,"spk-select",57)(1,"label",47),_(2),m(3,Ve,2,1,"spk-icon",48),r(),u(4,"input",49),r(),m(5,be,1,1,"ng-template",null,3,L)),n&2){let t,e=A(6);s();let o=Y(0),p=s().$implicit;c("options",o)("isClearable",!1)("optionTemplate",e),a(),d("for","destination-",p.formGroupName,"-",p.index,"-",p.asHttpOptions?"http":"other",""),a(),D(" ",(t=p.formView.shortDescription)!==null&&t!==void 0?t:p.formView.name," "),a(),F(p.formView.longDescription?3:-1),a(),d("id","destination-",p.formGroupName,"-",p.index,"-",p.asHttpOptions?"http":"other",""),k("formControlName",p.formView.name)}}function Ge(n,i){if(n&1&&(Q(0),m(1,Me,7,14)),n&2){let t=s().$implicit,e=J(t.formView.loadOptions?t.formView.loadOptions(s(2).injector)():t.formView.options);a(),F(e?1:-1)}}function Be(n,i){if(n&1&&(l(0,"spk-icon",48),_(1,"question"),r()),n&2){let t=s(3).$implicit;c("spkTooltip",t.formView.longDescription)}}function Le(n,i){if(n&1&&_(0),n&2){let t=i.$implicit;pt(" ",t.key," ",t.value?"("+t.value+")":""," ")}}function Ue(n,i){if(n&1&&(l(0,"spk-select",59)(1,"label",47),_(2),m(3,Be,2,1,"spk-icon",48),r(),u(4,"input",49),r(),m(5,Le,1,2,"ng-template",null,4,L)),n&2){let t,e=A(6);s();let o=Y(0),p=s().$implicit;c("options",o)("asFreeText",!0)("inlineSearch",!0)("optionTemplate",e),a(),d("for","destination-",p.formGroupName,"-",p.index,"-",p.asHttpOptions?"http":"other",""),a(),D(" ",(t=p.formView.shortDescription)!==null&&t!==void 0?t:p.formView.name," "),a(),F(p.formView.longDescription?3:-1),a(),d("id","destination-",p.formGroupName,"-",p.index,"-",p.asHttpOptions?"http":"other",""),k("formControlName",p.formView.name)}}function He(n,i){n&1&&u(0,"spk-progress-bar",58)}function Ke(n,i){if(n&1&&(Q(0),m(1,Ue,7,15)(2,He,1,0,"spk-progress-bar",58)),n&2){let t=s().$implicit,e=J(t.formView.loadOptions?t.formView.loadOptions(s(2).injector)():t.formView.options);a(),F(e?1:2)}}function We(n,i){if(n&1&&(l(0,"spk-icon",48),_(1,"question"),r()),n&2){let t=s(2).$implicit;c("spkTooltip",t.formView.longDescription)}}function ze(n,i){if(n&1&&(l(0,"app-size",45)(1,"label",47),_(2),m(3,We,2,1,"spk-icon",48),r()()),n&2){let t,e=s().$implicit;c("inputType",e.Name)("formControlName",e.formView.name)("customId",`destination-{{ item.formGroupName }}-{{ item.index }}-{{
1
+ import{g as Yt}from"./chunk-Q6M5VRZV.js";import{a as Jt,l as Z}from"./chunk-RXHYUPYG.js";import{a as qt,b as jt}from"./chunk-KHGD372Q.js";import{a as Xt}from"./chunk-LDJVMU7P.js";import{a as Qt}from"./chunk-LJDOQTEF.js";import{a as Wt,c as zt}from"./chunk-B64M2BXZ.js";import"./chunk-NF3MS2YP.js";import"./chunk-XR4SRVOQ.js";import"./chunk-WZRSQ7XL.js";import{a as ht}from"./chunk-3AIKVVWP.js";import"./chunk-RHW5QVAY.js";import{b as $t,c as wt,e as At,f as vt,g as Pt,i as Vt,j as bt,m as Mt,n as Gt,o as Bt,p as Lt,q as Ut,r as Ht,t as Kt}from"./chunk-5ENRUF35.js";import{b as gt,d as ft}from"./chunk-5LKXKKAK.js";import"./chunk-HFNFJ7G2.js";import{A as It,C as yt,a as Dt,b as St,d as Et,e as Ot,l as xt,o as kt,p as Rt,t as Nt}from"./chunk-AL5KGNEF.js";import{c as Ct}from"./chunk-FRSQ5NDX.js";import{ia as Tt}from"./chunk-M3WT5B3C.js";import{$a as ot,$b as rt,Ab as I,Bb as y,Cb as h,Cc as L,Db as l,Eb as r,F as nt,Fb as u,Gb as $,Hb as w,Ib as b,Jb as S,Pb as E,Pc as H,Qb as O,Qc as dt,Rb as M,Sb as X,Tb as q,Ua as a,Ub as U,Vb as f,Wb as s,Z as N,Zb as k,ac as d,ea as C,fa as g,gb as at,gc as lt,hc as st,ic as A,jc as _,ka as it,kc as j,lb as m,lc as D,mc as pt,oc as _t,pc as ct,qc as mt,rc as Q,sc as J,tc as Y,ub as c,uc as Ft,va as x,vc as ut,wb as z,wc as G,yc as B,zb as F}from"./chunk-AHUC7M75.js";import"./chunk-7CGTOI24.js";var Zt=["formRef"],te=(n,i,t,e)=>({index:n,formView:i,formGroupName:"custom",destinationType:t,oauthField:e}),W=n=>({$implicit:n}),ee=(n,i,t,e)=>({index:n,formView:i,formGroupName:"dynamic",destinationType:t,oauthField:e}),ne=(n,i,t,e)=>({index:n,formView:i,formGroupName:"advanced",destinationType:t,oauthField:e}),ie=(n,i,t,e)=>({index:n,formView:i,formGroupName:"advanced",asHttpOptions:!0,destinationType:t,oauthField:e}),oe=()=>({maxWidth:"700px",width:"100%"});function ae(n,i){n&1&&(E(0,5,2),u(1,"spk-icon"),O())}function re(n,i){n&1&&M(0,5,3)}function le(n,i){if(n&1){let t=S();E(0,5,1),l(1,"button",21),f("click",function(){C(t);let o=s();return g(o.testDestination())}),m(2,ae,2,0)(3,re,1,0),r(),O()}if(n&2){let t=s();a(),z("success",t.successfulTest()),a(),F(t.successfulTest()?2:3)}}function se(n,i){if(n&1){let t=S();l(0,"p",27),f("click",function(){C(t);let o=s();return g(o.removeDestinationFormGroup(o.destinationCount()-1))}),E(1,8),u(2,"span",28),O(),r()}}function pe(n,i){if(n&1){let t=S();l(0,"div",34),f("click",function(){let o=C(t).$implicit,p=s(2);return g(p.addDestinationFormGroup(o.key))}),l(1,"h3"),_(2),r(),l(3,"p"),_(4),r()()}if(n&2){let t=i.$implicit;a(2),j(t.displayName),a(2),j(t.description)}}function _e(n,i){if(n&1){let t=S();l(0,"button",35,1),f("click",function(){let o=C(t).$implicit,p=s(2);return g(p.addDestinationFormGroup(o.key))}),_(2),r()}if(n&2){let t=i.$implicit;a(2),D(" ",t.displayName," ")}}function ce(n,i){if(n&1&&(l(0,"div",29),y(1,pe,5,2,"div",30,I),r(),l(3,"spk-menu",31)(4,"button",32),M(5,9),r(),$(6,20),y(7,_e,3,1,"button",33,I),w(),r()),n&2){let t=s();a(),h(t.destinationTypeOptionsFocused()),a(2),c("searchable",!0),a(4),h(t.destinationTypeOptionsNotFocused())}}function me(n,i){n&1&&b(0)}function Fe(n,i){if(n&1&&m(0,me,1,0,"ng-container",40),n&2){let t,e=i.$implicit,o=i.$index;s();let p=A(29),T=s();c("ngTemplateOutlet",p)("ngTemplateOutletContext",G(7,W,B(2,te,o,e,(t=T.destinationFormSignal())==null||t.destinations==null||t.destinations[0]==null?null:t.destinations[0].destinationType,T.destinationFormPair().oauthField)))}}function ue(n,i){n&1&&b(0)}function de(n,i){if(n&1&&m(0,ue,1,0,"ng-container",40),n&2){let t,e=i.$implicit,o=i.$index;s();let p=A(29),T=s();c("ngTemplateOutlet",p)("ngTemplateOutletContext",G(7,W,B(2,ee,o,e,(t=T.destinationFormSignal())==null||t.destinations==null||t.destinations[0]==null?null:t.destinations[0].destinationType,T.destinationFormPair().oauthField)))}}function Te(n,i){if(n&1){let t=S();E(0,10,1),l(1,"button",35,1),f("click",function(){let o=C(t).$implicit,p=s(2);return g(p.addAdvancedFormPair(o,0))}),r(),O()}if(n&2){let t=i.$implicit;a(),X(t.name),q(0)}}function Ce(n,i){n&1&&b(0)}function ge(n,i){if(n&1&&m(0,Ce,1,0,"ng-container",40),n&2){let t,e=i.$implicit,o=i.$index;s();let p=A(29),T=s();c("ngTemplateOutlet",p)("ngTemplateOutletContext",G(7,W,B(2,ne,o,e,(t=T.destinationFormSignal())==null||t.destinations==null||t.destinations[0]==null?null:t.destinations[0].destinationType,T.destinationFormPair().oauthField)))}}function fe(n,i){if(n&1){let t=S();E(0,11,1),l(1,"button",35,1),f("click",function(){let o=C(t).$implicit,p=s(2);return g(p.addHttpOption(o,0))}),r(),O()}if(n&2){let t=i.$implicit;a(),X(t.name),q(0)}}function De(n,i){n&1&&b(0)}function Se(n,i){if(n&1&&m(0,De,1,0,"ng-container",40),n&2){let t,e=i.$implicit,o=i.$index;s();let p=A(29),T=s();c("ngTemplateOutlet",p)("ngTemplateOutletContext",G(7,W,B(2,ie,o,e,(t=T.destinationFormSignal())==null||t.destinations==null||t.destinations[0]==null?null:t.destinations[0].destinationType,T.destinationFormPair().oauthField)))}}function Ee(n,i){if(n&1&&(l(0,"spk-icon",48),_(1,"question"),r()),n&2){let t=s(2).$implicit;c("spkTooltip",t.formView.longDescription)}}function Oe(n,i){if(n&1&&(l(0,"app-file-tree",43)(1,"label",47),_(2),m(3,Ee,2,1,"spk-icon",48),r(),u(4,"input",49),r()),n&2){let t,e=s().$implicit,o=s(2);c("startingPath",o.getFormFieldValue(0,e.formGroupName,e.formView.name))("accepts",e.formView.accepts)("showFiles",!0)("hideShortcuts",!0)("showHiddenNodes",!0)("selectFiles",!0),a(),d("for","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),a(),D(" ",(t=e.formView.shortDescription)!==null&&t!==void 0?t:e.formView.name," "),a(),F(e.formView.longDescription?3:-1),a(),d("id","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),k("formControlName",e.formView.name)}}function xe(n,i){if(n&1&&(l(0,"spk-icon",48),_(1,"question"),r()),n&2){let t=s(2).$implicit;c("spkTooltip",t.formView.longDescription)}}function ke(n,i){if(n&1&&(l(0,"app-file-tree",44)(1,"label",47),_(2),m(3,xe,2,1,"spk-icon",48),r(),u(4,"input",49),r()),n&2){let t,e=s().$implicit,o=s(2);c("hideShortcuts",!0)("startingPath",o.getFormFieldValue(0,e.formGroupName,e.formView.name)),a(),d("for","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),a(),D(" ",(t=e.formView.shortDescription)!==null&&t!==void 0?t:e.formView.name," "),a(),F(e.formView.longDescription?3:-1),a(),d("id","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),k("formControlName",e.formView.name)}}function Re(n,i){if(n&1&&(l(0,"spk-icon",48),_(1,"question"),r()),n&2){let t=s(2).$implicit;c("spkTooltip",t.formView.longDescription)}}function Ne(n,i){n&1&&(l(0,"spk-icon",51),_(1,"link"),r())}function Ie(n,i){n&1&&(l(0,"spk-icon",51),_(1,"envelope"),r())}function ye(n,i){n&1&&(l(0,"spk-icon",51),_(1,"textbox"),r())}function he(n,i){if(n&1&&(l(0,"spk-form-field")(1,"label",47),_(2),m(3,Re,2,1,"spk-icon",48),r(),u(4,"input",50),m(5,Ne,2,0,"spk-icon",51)(6,Ie,2,0,"spk-icon",51)(7,ye,2,0,"spk-icon",51),r()),n&2){let t,e=s().$implicit;a(),d("for","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),a(),D(" ",(t=e.formView.shortDescription)!==null&&t!==void 0?t:e.formView.name," "),a(),F(e.formView.longDescription?3:-1),a(),d("id","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),k("formControlName",e.formView.name),c("type",e.formView.type==="Email"?"email":"text"),a(),F(e.formView.type==="Path"?5:e.formView.type==="Email"?6:7)}}function $e(n,i){if(n&1){let t=S();l(0,"span",55),f("click",function(){C(t);let o=s(2).$implicit,p=s(2);return g(p.oauthStartTokenCreation(o.destinationType))}),_(1,"AuthID"),r()}}function we(n,i){n&1&&(l(0,"spk-icon",51),_(1,"password"),r())}function Ae(n,i){if(n&1){let t=S();l(0,"spk-icon",56),f("click",function(){C(t);let o=s(2).$implicit;return g(o.formView.showPassword=!o.formView.showPassword)}),_(1," eye "),r()}}function ve(n,i){if(n&1){let t=S();l(0,"spk-icon",56),f("click",function(){C(t);let o=s(2).$implicit;return g(o.formView.showPassword=!o.formView.showPassword)}),_(1," eye-slash "),r()}}function Pe(n,i){if(n&1&&(l(0,"spk-form-field")(1,"label",47),_(2),r(),u(3,"input",52),m(4,$e,2,0,"span",53)(5,we,2,0,"spk-icon",51)(6,Ae,2,0,"spk-icon",54)(7,ve,2,0,"spk-icon",54),r()),n&2){let t,e=s().$implicit;a(),d("for","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),a(),D(" ",(t=e.formView.shortDescription)!==null&&t!==void 0?t:e.formView.name," "),a(),d("id","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),k("formControlName",e.formView.name),c("type",e.formView.showPassword?"text":"password"),a(),F(e.oauthField===e.formView.name?4:5),a(2),F(e.formView.showPassword?6:7)}}function Ve(n,i){if(n&1&&(l(0,"spk-icon",48),_(1,"question"),r()),n&2){let t=s(3).$implicit;c("spkTooltip",t.formView.longDescription)}}function be(n,i){if(n&1&&_(0),n&2){let t=i.$implicit;D(" ",t," ")}}function Me(n,i){if(n&1&&(l(0,"spk-select",57)(1,"label",47),_(2),m(3,Ve,2,1,"spk-icon",48),r(),u(4,"input",49),r(),m(5,be,1,1,"ng-template",null,3,L)),n&2){let t,e=A(6);s();let o=Y(0),p=s().$implicit;c("options",o)("isClearable",!1)("optionTemplate",e),a(),d("for","destination-",p.formGroupName,"-",p.index,"-",p.asHttpOptions?"http":"other",""),a(),D(" ",(t=p.formView.shortDescription)!==null&&t!==void 0?t:p.formView.name," "),a(),F(p.formView.longDescription?3:-1),a(),d("id","destination-",p.formGroupName,"-",p.index,"-",p.asHttpOptions?"http":"other",""),k("formControlName",p.formView.name)}}function Ge(n,i){if(n&1&&(Q(0),m(1,Me,7,14)),n&2){let t=s().$implicit,e=J(t.formView.loadOptions?t.formView.loadOptions(s(2).injector)():t.formView.options);a(),F(e?1:-1)}}function Be(n,i){if(n&1&&(l(0,"spk-icon",48),_(1,"question"),r()),n&2){let t=s(3).$implicit;c("spkTooltip",t.formView.longDescription)}}function Le(n,i){if(n&1&&_(0),n&2){let t=i.$implicit;pt(" ",t.key," ",t.value?"("+t.value+")":""," ")}}function Ue(n,i){if(n&1&&(l(0,"spk-select",59)(1,"label",47),_(2),m(3,Be,2,1,"spk-icon",48),r(),u(4,"input",49),r(),m(5,Le,1,2,"ng-template",null,4,L)),n&2){let t,e=A(6);s();let o=Y(0),p=s().$implicit;c("options",o)("asFreeText",!0)("inlineSearch",!0)("optionTemplate",e),a(),d("for","destination-",p.formGroupName,"-",p.index,"-",p.asHttpOptions?"http":"other",""),a(),D(" ",(t=p.formView.shortDescription)!==null&&t!==void 0?t:p.formView.name," "),a(),F(p.formView.longDescription?3:-1),a(),d("id","destination-",p.formGroupName,"-",p.index,"-",p.asHttpOptions?"http":"other",""),k("formControlName",p.formView.name)}}function He(n,i){n&1&&u(0,"spk-progress-bar",58)}function Ke(n,i){if(n&1&&(Q(0),m(1,Ue,7,15)(2,He,1,0,"spk-progress-bar",58)),n&2){let t=s().$implicit,e=J(t.formView.loadOptions?t.formView.loadOptions(s(2).injector)():t.formView.options);a(),F(e?1:2)}}function We(n,i){if(n&1&&(l(0,"spk-icon",48),_(1,"question"),r()),n&2){let t=s(2).$implicit;c("spkTooltip",t.formView.longDescription)}}function ze(n,i){if(n&1&&(l(0,"app-size",45)(1,"label",47),_(2),m(3,We,2,1,"spk-icon",48),r()()),n&2){let t,e=s().$implicit;c("inputType",e.Name)("formControlName",e.formView.name)("customId",`destination-{{ item.formGroupName }}-{{ item.index }}-{{
2
2
  item.asHttpOptions ? 'http' : 'other'
3
3
  }}`),a(),d("for","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),a(),D(" ",(t=e.formView.shortDescription)!==null&&t!==void 0?t:e.formView.name," "),a(),F(e.formView.longDescription?3:-1)}}function Xe(n,i){if(n&1&&(l(0,"spk-icon",48),_(1,"question"),r()),n&2){let t=s(2).$implicit;c("spkTooltip",t.formView.longDescription)}}function qe(n,i){if(n&1&&(l(0,"spk-form-field")(1,"label",47),_(2),m(3,Xe,2,1,"spk-icon",48),r(),u(4,"input",60),l(5,"spk-icon",51),_(6,"numpad"),r()()),n&2){let t,e=s().$implicit;a(),d("for","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),a(),D(" ",(t=e.formView.shortDescription)!==null&&t!==void 0?t:e.formView.name," "),a(),F(e.formView.longDescription?3:-1),a(),d("id","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),k("formControlName",e.formView.name)}}function je(n,i){if(n&1&&(l(0,"spk-icon",48),_(1,"question"),r()),n&2){let t=s(2).$implicit;c("spkTooltip",t.formView.longDescription)}}function Qe(n,i){if(n&1&&(l(0,"spk-toggle",46)(1,"label",47),_(2),m(3,je,2,1,"spk-icon",48),r(),u(4,"input",61),r()),n&2){let t,e=s().$implicit;a(),d("for","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),a(),D(" ",(t=e.formView.shortDescription)!==null&&t!==void 0?t:e.formView.name," "),a(),F(e.formView.longDescription?3:-1),a(),d("id","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),k("formControlName",e.formView.name)}}function Je(n,i){if(n&1&&(l(0,"spk-icon",48),_(1,"question"),r()),n&2){let t=s(2).$implicit;c("spkTooltip",t.formView.longDescription)}}function Ye(n,i){if(n&1&&_(0),n&2){let t=i.$implicit;D(" ",t," ")}}function Ze(n,i){if(n&1&&(l(0,"spk-select",62)(1,"label",47),_(2),m(3,Je,2,1,"spk-icon",48),r(),u(4,"input",63),r(),m(5,Ye,1,1,"ng-template",null,4,L)),n&2){let t,e=A(6),o=s().$implicit;c("options",o.formView.options)("selectMultiple",!0)("optionTemplate",e),a(),rt("for","destination-",o.formGroupName,"-",o.index,""),a(),D(" ",(t=o.formView.shortDescription)!==null&&t!==void 0?t:o.formView.name," "),a(),F(o.formView.longDescription?3:-1),a(),k("formControlName",o.formView.name)}}function tn(n,i){if(n&1&&(l(0,"spk-icon",48),_(1,"question"),r()),n&2){let t=s(2).$implicit;c("spkTooltip",t.formView.longDescription)}}function en(n,i){if(n&1&&(l(0,"app-timespan",45)(1,"label",47),_(2),m(3,tn,2,1,"spk-icon",48),r()()),n&2){let t,e=s().$implicit;c("inputType",e.formView.name)("formControlName",e.formView.name)("customId","destination-"+e.formGroupName+"-"+e.index+"-"+(e.asHttpOptions?"http":"other")),a(),d("for","destination-",e.formGroupName,"-",e.index,"-",e.asHttpOptions?"http":"other",""),a(),D(" ",(t=e.formView.shortDescription)!==null&&t!==void 0?t:e.formView.name," "),a(),F(e.formView.longDescription?3:-1)}}function nn(n,i){if(n&1){let t=S();l(0,"button",64),f("click",function(){C(t);let o=s().$implicit,p=s(2);return g(p.removeFormView(o.formView,0))}),l(1,"spk-icon"),_(2,"x-circle"),r()()}}function on(n,i){if(n&1&&(l(0,"div",41),$(1,42),m(2,Oe,5,17,"app-file-tree",43)(3,ke,5,13,"app-file-tree",44)(4,he,8,13,"spk-form-field")(5,Pe,8,13,"spk-form-field")(6,Ge,2,2)(7,Ke,3,2)(8,ze,4,9,"app-size",45)(9,qe,7,11,"spk-form-field")(10,Qe,5,11,"spk-toggle",46)(11,Ze,7,9)(12,en,4,9,"app-timespan",45),w(),m(13,nn,3,0,"button",32),r()),n&2){let t=i.$implicit;z("single-field",t.formGroupName!=="advanced"),a(),c("formGroupName",t.formGroupName),a(),F(t.formView.type==="FileTree"?2:t.formView.type==="FolderTree"?3:t.formView.type==="String"||t.formView.type==="Path"||t.formView.type==="Email"?4:t.formView.type==="Password"?5:t.formView.type==="Enumeration"?6:t.formView.type==="NonValidatedSelectableString"?7:t.formView.type==="Size"?8:t.formView.type==="Integer"?9:t.formView.type==="Boolean"?10:t.formView.type==="Flags"?11:t.formView.type==="Timespan"||t.formView.type==="DateTime"?12:-1),a(11),F(t.formGroupName==="advanced"?13:-1)}}function an(n,i){if(n&1&&($(0,22)(1,36),y(2,Fe,1,9,"ng-container",null,I),y(4,de,1,9,"ng-container",null,I),l(6,"app-toggle-card",37),$(7,38),E(8,10),l(9,"spk-menu",31)(10,"button",39),u(11,"spk-icon"),r(),$(12,20),y(13,Te,3,1,"button",33,I),w(),r(),O(),w(),y(15,ge,1,9,"ng-container",null,I),r(),l(17,"app-toggle-card",37),$(18,38),E(19,11),l(20,"spk-menu",31)(21,"button",39),u(22,"spk-icon"),r(),$(23,20),y(24,fe,3,1,"button",33,I),w(),r(),O(),w(),y(26,Se,1,9,"ng-container",null,I),r(),m(28,on,14,5,"ng-template",null,2,L),w()()),n&2){let t=s();a(2),h(t.destinationFormPair().custom),a(2),h(t.destinationFormPair().dynamic),a(2),c("disallowToggle",!0),a(3),c("searchable",!0),a(),c("disabled",t.notSelectedAdvancedFormPair().length===0),a(3),h(t.notSelectedAdvancedFormPair()),a(2),h(t.selectedAdvancedFormPair()),a(2),c("disallowToggle",!0),a(3),c("searchable",!0),a(),c("disabled",t.notSelectedHttpOptions().length===0),a(3),h(t.notSelectedHttpOptions()),a(2),h(t.selectedHttpOptions())}}function rn(n,i){if(n&1){let t=S();l(0,"spk-dialog",65),mt("isOpenChange",function(o){C(t);let p=s();return ct(p.targetUrlDialogOpen,o)||(p.targetUrlDialogOpen=o),g(o)}),l(1,"header",66)(2,"h2"),M(3,12),r(),l(4,"spk-alert",67),M(5,13),r()(),l(6,"div",68)(7,"spk-form-field"),u(8,"textarea",69),r()(),l(9,"footer",70)(10,"button",24),f("click",function(){C(t);let o=s();return g(o.closeTargetUrlDialog(!1))}),_(11,"Cancel"),r(),l(12,"button",71),f("click",function(){C(t);let o=s();return g(o.closeTargetUrlDialog(!0))}),E(13,14),u(14,"spk-icon"),O(),r()()()}if(n&2){let t=s();_t("isOpen",t.targetUrlDialogOpen),c("options",ut(3,oe)),a(8),c("formControl",t.targetUrlCtrl)}}var K=new Ht,wn=(n={destinations:[]})=>K.group({destinations:K.array(n.destinations)}),An=({key:n,customGroup:i,dynamicGroup:t,advancedGroup:e})=>K.group({destinationType:K.control(n),custom:i,dynamic:t,advanced:e}),tt=class n{#a=N(ft);#r=N(gt);#l=N(Ct);#t=N(Z);#s=N(Ot);#p=N(Jt);#e=N(Yt);injector=N(it);formRef=ot.required("formRef");destinationForm=this.#t.destinationForm;destinationFormPair=this.#t.destinationFormPair;selectedAdvancedFormPair=this.#t.selectedAdvancedFormPair;notSelectedAdvancedFormPair=this.#t.notSelectedAdvancedFormPair;selectedHttpOptions=this.#t.selectedHttpOptions;notSelectedHttpOptions=this.#t.notSelectedHttpOptions;destinationOptions=this.#t.destinationOptions;destinationFormSignal=this.#t.destinationFormSignal;destinationCount=H(()=>this.destinationFormSignal()?.destinations?.length??0);successfulTest=x(!1);destinationTypeOptionsInFocus=x(["file","ssh","s3","gcs","googledrive","azure"]);destinationTypeOptions=x(zt.map(i=>({key:i.customKey??i.key,customKey:i.customKey??null,displayName:i.displayName,description:i.description})));destinationTypeOptionsFocused=H(()=>{let i=this.destinationTypeOptionsInFocus(),t=this.destinationTypeOptions();return i.map(e=>t.find(o=>o.key===e))});destinationTypeOptionsNotFocused=H(()=>{let i=this.destinationTypeOptionsInFocus();return this.destinationTypeOptions().filter(e=>!i.includes(e.key))});targetUrlEffect=dt(()=>{if(this.destinationFormSignal(),this.destinationForm.valid){let i=this.#t.getCurrentTargetUrl();this.#e.updateTargetUrl(i[0])}else this.#e.updateTargetUrl(null)});ngOnInit(){let i=this.#e.destinationTargetUrl();i&&this.#t.updateFieldsFromTargetUrl(i)}getFormFieldValue(i,t,e){return((this.destinationForm.controls.destinations.controls?.[i]).controls?.[t]).controls[e].value}addDestinationFormGroup(i){this.#t.addDestinationFormGroup(i)}addAdvancedFormPair(i,t){this.#t.addAdvancedFormPair(i,t)}removeFormView(i,t){this.#t.removeAdvancedFormPair(i,t)}addHttpOption(i,t){this.#t.addHttpOption(i,t)}targetUrlCtrl=new Pt;targetUrlInitial=x(null);targetUrlDialogOpen=x(!1);openTargetUrlDialog(){let t=this.#t.getCurrentTargetUrl()[0];this.targetUrlCtrl.setValue(t),this.targetUrlInitial.set(t),this.targetUrlDialogOpen.set(!0)}closeTargetUrlDialog(i=!1){this.targetUrlDialogOpen.set(!1);let t=this.targetUrlCtrl.value,e=this.targetUrlInitial();!i||t===e||this.#t.updateFieldsFromTargetUrl(this.targetUrlCtrl.value)}testDestination(i=0){let e=this.#t.getCurrentTargetUrl()[i];e&&this.#p.testDestination(e,i,!1).subscribe({next:o=>{if(o.action==="success"){o.anyFilesFound===!1&&this.#s.open(ht,{data:{title:$localize`Empty destination`,message:$localize`The remote destination does not contain any files.
4
- Check that the details are correct and that the destination is not empty.`,confirmText:$localize`OK`,cancelText:void 0}}),this.successfulTest.set(!0),setTimeout(()=>{this.successfulTest.set(!1)},3e3);return}if(o.action==="generic-error"){this.successfulTest.set(!1);return}o.action==="trust-cert"&&this.#t.addHttpOptionByName("accept-specified-ssl-hash",o.destinationIndex,o.certData),o.action==="approve-host-key"&&this.#t.addOrUpdateAdvancedFormPairByName("ssh-fingerprint",o.destinationIndex,o.reportedHostKey),o.testAgain&&this.testDestination(o.destinationIndex)}})}mapToTargetUrl(i){return Wt(i.value)}removeDestinationFormGroup(i){this.destinationForm.controls.destinations.removeAt(i)}displayFn(i){let t=this.destinationOptions().find(e=>e.Key===i);return t?`${t.DisplayName}`:""}goBack(){this.#e.exit()}next(){this.#a.navigate(["encryption"],{relativeTo:this.#r.parent})}#n=x("https://duplicati-oauth-handler.appspot.com/").asReadonly();#i=x(Math.random().toString(36).substring(2)+Math.random().toString(36).substring(2)).asReadonly();#o=x(!1);#_=x(null);keyCreation(){}oauthStartTokenCreation(i){this.#o.set(!0);let t=450,e=600,o=this.#n()+"?type="+i+"&token="+this.#i(),p=screen.width/2-t/2,T=screen.height/2-e/2,v=window.open(o,"_blank","height="+e+",width="+t+",menubar=0,status=0,titlebar=0,toolbar=0,left="+p+",top="+T);v?.addEventListener("blur",P=>{console.log("event blur",P)}),v?.addEventListener("beforeunload",P=>{console.log("event beforeunload",P),this.#l.get(this.#n()+"fetch?callback=JSON_CALLBACK",{params:{token:this.#i()}}).pipe(nt(()=>this.#o.set(!1))).subscribe({next:V=>{console.log("res",V),V?.authid&&this.#_.set(V.authid)}})})}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=at({type:n,selectors:[["app-restore-destination"]],viewQuery:function(t,e){t&1&&lt(e.formRef,Zt,5),t&2&&st()},features:[Ft([Z])],decls:24,vars:6,consts:()=>{let i;i=$localize` Backup placement ${"\uFFFD#5\uFFFD"}:START_TAG_DIV:${"\uFFFD*6:1\uFFFD"}:START_BLOCK_IF_1:${"\uFFFD#1:1\uFFFD"}:START_TAG_BUTTON:${"\uFFFD*2:2\uFFFD"}:START_BLOCK_IF: Connected ${"[\uFFFD#1:2\uFFFD|\uFFFD#9\uFFFD|\uFFFD#12\uFFFD]"}:START_TAG_SPK_ICON:check${"[\uFFFD/#1:2\uFFFD|\uFFFD/#9\uFFFD|\uFFFD/#12\uFFFD]"}:CLOSE_TAG_SPK_ICON:${"[\uFFFD/*2:2\uFFFD|\uFFFD/*6:1\uFFFD]"}:CLOSE_BLOCK_IF:${"\uFFFD*3:3\uFFFD"}:START_BLOCK_ELSE: Test destination ${"\uFFFD/*3:3\uFFFD"}:CLOSE_BLOCK_ELSE:${"[\uFFFD/#1:1\uFFFD|\uFFFD/#8\uFFFD|\uFFFD/#11\uFFFD]"}:CLOSE_TAG_BUTTON:${"[\uFFFD/*2:2\uFFFD|\uFFFD/*6:1\uFFFD]"}:CLOSE_BLOCK_IF:${"\uFFFD#7\uFFFD"}:START_TAG_SPK_MENU:${"\uFFFD#8\uFFFD"}:START_TAG_BUTTON_1:${"[\uFFFD#1:2\uFFFD|\uFFFD#9\uFFFD|\uFFFD#12\uFFFD]"}:START_TAG_SPK_ICON:dots-three-vertical${"[\uFFFD/#1:2\uFFFD|\uFFFD/#9\uFFFD|\uFFFD/#12\uFFFD]"}:CLOSE_TAG_SPK_ICON:${"[\uFFFD/#1:1\uFFFD|\uFFFD/#8\uFFFD|\uFFFD/#11\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD#10\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD#11\uFFFD"}:START_TAG_BUTTON_2:${"[\uFFFD#1:2\uFFFD|\uFFFD#9\uFFFD|\uFFFD#12\uFFFD]"}:START_TAG_SPK_ICON:link${"[\uFFFD/#1:2\uFFFD|\uFFFD/#9\uFFFD|\uFFFD/#12\uFFFD]"}:CLOSE_TAG_SPK_ICON: Edit target URL ${"[\uFFFD/#1:1\uFFFD|\uFFFD/#8\uFFFD|\uFFFD/#11\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD/#10\uFFFD"}:CLOSE_TAG_NG_CONTAINER:${"\uFFFD/#7\uFFFD"}:CLOSE_TAG_SPK_MENU:${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_DIV:`,i=U(i);let t;t=$localize`${"\uFFFD#19\uFFFD"}:START_TAG_SPK_ICON:arrow-left${"\uFFFD/#19\uFFFD"}:CLOSE_TAG_SPK_ICON: Exit `;let e;e=$localize`${"\uFFFD#22\uFFFD"}:START_TAG_SPK_ICON:arrow-right${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SPK_ICON: Continue `;let o;o=$localize` Want to select another destination? ${"\uFFFD#2\uFFFD"}:START_TAG_SPAN:Click here${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SPAN:`;let p;p=$localize`Other destinations`;let T;T=$localize` Advanced options ${"\uFFFD#9\uFFFD"}:START_TAG_SPK_MENU:${"\uFFFD#10\uFFFD"}:START_TAG_BUTTON: Add advanced option ${"\uFFFD#11\uFFFD"}:START_TAG_SPK_ICON:plus${"\uFFFD/#11\uFFFD"}:CLOSE_TAG_SPK_ICON:${"[\uFFFD/#10\uFFFD|\uFFFD/#1:1\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD#12\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD*14:1\uFFFD"}:START_BLOCK_FOR:${"\uFFFD#1:1\uFFFD"}:START_TAG_BUTTON_1: ${"\uFFFD0:1\uFFFD"}:INTERPOLATION: ${"[\uFFFD/#10\uFFFD|\uFFFD/#1:1\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD/*14:1\uFFFD"}:CLOSE_BLOCK_FOR:${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_NG_CONTAINER:${"\uFFFD/#9\uFFFD"}:CLOSE_TAG_SPK_MENU:`,T=U(T);let v;v=$localize` Http options ${"\uFFFD#20\uFFFD"}:START_TAG_SPK_MENU:${"\uFFFD#21\uFFFD"}:START_TAG_BUTTON: Add http option ${"\uFFFD#22\uFFFD"}:START_TAG_SPK_ICON:plus${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SPK_ICON:${"[\uFFFD/#21\uFFFD|\uFFFD/#1:1\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD#23\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD*25:1\uFFFD"}:START_BLOCK_FOR:${"\uFFFD#1:1\uFFFD"}:START_TAG_BUTTON_1: ${"\uFFFD0:1\uFFFD"}:INTERPOLATION: ${"[\uFFFD/#21\uFFFD|\uFFFD/#1:1\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD/*25:1\uFFFD"}:CLOSE_BLOCK_FOR:${"\uFFFD/#23\uFFFD"}:CLOSE_TAG_NG_CONTAINER:${"\uFFFD/#20\uFFFD"}:CLOSE_TAG_SPK_MENU:`,v=U(v);let P;P=$localize`Edit target URL`;let V;V=$localize` Be careful, this will overwrite everything you have in your destination. `;let et;return et=$localize` Override target URL ${"\uFFFD#14\uFFFD"}:START_TAG_SPK_ICON:swap${"\uFFFD/#14\uFFFD"}:CLOSE_TAG_SPK_ICON:`,[["formRef",""],["option",""],["fieldTemplate",""],["enumOptionTemplate",""],["optionTemplate",""],i,t,e,o,p,T,v,P,V,et,[3,"submit","formGroup"],[1,"title-30"],[1,"actions"],["spk-button","","type","button",1,"small",3,"success"],["spk-button","","type","button",1,"small"],["menu",""],["spk-button","","type","button",1,"small",3,"click"],["formArrayName","destinations"],[1,"form-actions"],["spk-button","","type","button",3,"click"],["spk-button","","type","submit",1,"raised","primary"],[3,"isOpen","options"],[3,"click"],[1,"spk-primary"],[1,"most-common-destinations"],[1,"tile"],[3,"searchable"],["spk-button","","type","button",1,"outlined"],["type","button"],[1,"tile",3,"click"],["type","button",3,"click"],["formGroupName","0"],[3,"disallowToggle"],["title",""],["spk-button","","type","button",1,"outlined","small",3,"disabled"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"field-row"],[3,"formGroupName"],[3,"startingPath","accepts","showFiles","hideShortcuts","showHiddenNodes","selectFiles"],[3,"hideShortcuts","startingPath"],[3,"inputType","formControlName","customId"],[1,"primary","raised"],[3,"for"],[1,"primary",3,"spkTooltip"],["type","text",3,"id","formControlName"],[3,"type","id","formControlName"],["prefix",""],["autocomplete","off",3,"type","id","formControlName"],["prefix","",1,"link"],["suffix","",1,"clickable"],["prefix","",1,"link",3,"click"],["suffix","",1,"clickable",3,"click"],[3,"options","isClearable","optionTemplate"],[1,"indeterminate","primary"],["label","key","value","value",3,"options","asFreeText","inlineSearch","optionTemplate"],["type","number",3,"id","formControlName"],["type","checkbox",3,"id","formControlName"],[1,"primary","raised",3,"options","selectMultiple","optionTemplate"],["type","text","id","text",3,"formControlName"],["spk-button","","type","button",1,"outlined",3,"click"],[3,"isOpenChange","isOpen","options"],["header",""],[1,"warning"],["content",""],["id","targetUrl","autocomplete","off",3,"formControl"],["footer",""],["spk-button","","type","submit",1,"raised","primary",3,"click"]]},template:function(t,e){if(t&1){let o=S();l(0,"form",15,0),f("submit",function(){return C(o),g(e.next())}),l(2,"header")(3,"h3",16),E(4,5),l(5,"div",17),m(6,le,4,3,"button",18),l(7,"spk-menu")(8,"button",19),u(9,"spk-icon"),r(),$(10,20),l(11,"button",21),f("click",function(){return C(o),g(e.openTargetUrlDialog())}),u(12,"spk-icon"),r(),w(),r()(),O(),r(),m(13,se,3,0,"p"),r(),m(14,ce,9,1)(15,an,30,6,"ng-container",22),l(16,"div",23)(17,"button",24),f("click",function(){return C(o),g(e.goBack())}),E(18,6),u(19,"spk-icon"),O(),r(),l(20,"button",25),E(21,7),u(22,"spk-icon"),O(),r()()(),m(23,rn,15,4,"spk-dialog",26)}if(t&2){let o;c("formGroup",e.destinationForm),a(6),F(e.destinationCount()>0?6:-1),a(7),F(e.destinationCount()>0?13:-1),a(),F(e.destinationCount()===0?14:-1),a(),F(!((o=e.destinationFormSignal())==null||o.destinations==null)&&o.destinations.length?15:-1),a(8),F(e.targetUrlDialogOpen()?23:-1)}},dependencies:[Kt,Vt,wt,bt,$t,At,vt,Mt,Gt,Ut,Bt,Lt,Tt,xt,kt,Dt,It,Et,St,Nt,Rt,yt,jt,qt,Qt,Xt],styles:["[_nghost-%COMP%]{display:block;width:100%;max-width:32.5rem;padding:2.5rem}header[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%], header[_ngcontent-%COMP%] spk-alert[_ngcontent-%COMP%]{width:100%}header[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;gap:.5rem}header[_ngcontent-%COMP%] p[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{cursor:pointer;text-decoration:underline}header[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{display:flex;gap:.5rem}pre[_ngcontent-%COMP%]{white-space:pre-wrap}.field-row[_ngcontent-%COMP%]{display:grid;align-items:flex-end;grid-template-columns:1fr 2.5rem;gap:.5rem}.field-row.single-field[_ngcontent-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}.form-column[_ngcontent-%COMP%]{display:flex;flex-direction:column}.form-column[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.25rem}.form-column[_ngcontent-%COMP%] spk-icon[_ngcontent-%COMP%]{font-size:1rem}.form-row[_ngcontent-%COMP%]{display:grid;grid-template-columns:2fr 1fr;gap:.5rem;align-items:flex-end}.clickable[_ngcontent-%COMP%]{cursor:pointer;color:var(--primary-500)}.most-common-destinations[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.most-common-destinations[_ngcontent-%COMP%] .tile[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border:1px solid var(--base-4);border-radius:var(--shape-3);box-shadow:var(--shadow-1);background-color:var(--base-2);cursor:pointer}.most-common-destinations[_ngcontent-%COMP%] .tile[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font:var(--paragraph-10);margin:0}[prefix].link[_ngcontent-%COMP%]{cursor:pointer;text-decoration:underline;color:var(--primary-500)}textarea[_ngcontent-%COMP%] ~ grammarly-extension[_ngcontent-%COMP%]{display:none}"],changeDetection:0})};export{wn as createDestinationForm,An as createDestinationFormGroup,tt as default};
4
+ Check that the details are correct and that the destination is not empty.`,confirmText:$localize`OK`,cancelText:void 0}}),this.successfulTest.set(!0),setTimeout(()=>{this.successfulTest.set(!1)},3e3);return}if(o.action==="generic-error"){this.successfulTest.set(!1);return}o.action==="trust-cert"&&this.#t.addHttpOptionByName("accept-specified-ssl-hash",o.destinationIndex,o.certData),o.action==="approve-host-key"&&this.#t.addOrUpdateAdvancedFormPairByName("ssh-fingerprint",o.destinationIndex,o.reportedHostKey),o.testAgain&&this.testDestination(o.destinationIndex)}})}mapToTargetUrl(i){return Wt(i.value)}removeDestinationFormGroup(i){this.destinationForm.controls.destinations.removeAt(i)}displayFn(i){let t=this.destinationOptions().find(e=>e.Key===i);return t?`${t.DisplayName}`:""}goBack(){this.#e.exit()}next(){this.#a.navigate(["encryption"],{relativeTo:this.#r.parent})}#n=x("https://duplicati-oauth-handler.appspot.com/").asReadonly();#i=x(Math.random().toString(36).substring(2)+Math.random().toString(36).substring(2)).asReadonly();#o=x(!1);#_=x(null);keyCreation(){}oauthStartTokenCreation(i){this.#o.set(!0);let t=450,e=600,o=this.#n()+"?type="+i+"&token="+this.#i(),p=screen.width/2-t/2,T=screen.height/2-e/2,v=window.open(o,"_blank","height="+e+",width="+t+",menubar=0,status=0,titlebar=0,toolbar=0,left="+p+",top="+T);v?.addEventListener("blur",P=>{console.log("event blur",P)}),v?.addEventListener("beforeunload",P=>{console.log("event beforeunload",P),this.#l.get(this.#n()+"fetch?callback=JSON_CALLBACK",{params:{token:this.#i()}}).pipe(nt(()=>this.#o.set(!1))).subscribe({next:V=>{console.log("res",V),V?.authid&&this.#_.set(V.authid)}})})}static \u0275fac=function(t){return new(t||n)};static \u0275cmp=at({type:n,selectors:[["app-restore-destination"]],viewQuery:function(t,e){t&1&&lt(e.formRef,Zt,5),t&2&&st()},features:[Ft([Z])],decls:24,vars:6,consts:()=>{let i;i=$localize` Backup placement ${"\uFFFD#5\uFFFD"}:START_TAG_DIV:${"\uFFFD*6:1\uFFFD"}:START_BLOCK_IF_1:${"\uFFFD#1:1\uFFFD"}:START_TAG_BUTTON:${"\uFFFD*2:2\uFFFD"}:START_BLOCK_IF: Connected ${"[\uFFFD#1:2\uFFFD|\uFFFD#9\uFFFD|\uFFFD#12\uFFFD]"}:START_TAG_SPK_ICON:check${"[\uFFFD/#1:2\uFFFD|\uFFFD/#9\uFFFD|\uFFFD/#12\uFFFD]"}:CLOSE_TAG_SPK_ICON:${"[\uFFFD/*2:2\uFFFD|\uFFFD/*6:1\uFFFD]"}:CLOSE_BLOCK_IF:${"\uFFFD*3:3\uFFFD"}:START_BLOCK_ELSE: Test destination ${"\uFFFD/*3:3\uFFFD"}:CLOSE_BLOCK_ELSE:${"[\uFFFD/#1:1\uFFFD|\uFFFD/#8\uFFFD|\uFFFD/#11\uFFFD]"}:CLOSE_TAG_BUTTON:${"[\uFFFD/*2:2\uFFFD|\uFFFD/*6:1\uFFFD]"}:CLOSE_BLOCK_IF:${"\uFFFD#7\uFFFD"}:START_TAG_SPK_MENU:${"\uFFFD#8\uFFFD"}:START_TAG_BUTTON_1:${"[\uFFFD#1:2\uFFFD|\uFFFD#9\uFFFD|\uFFFD#12\uFFFD]"}:START_TAG_SPK_ICON:dots-three-vertical${"[\uFFFD/#1:2\uFFFD|\uFFFD/#9\uFFFD|\uFFFD/#12\uFFFD]"}:CLOSE_TAG_SPK_ICON:${"[\uFFFD/#1:1\uFFFD|\uFFFD/#8\uFFFD|\uFFFD/#11\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD#10\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD#11\uFFFD"}:START_TAG_BUTTON_2:${"[\uFFFD#1:2\uFFFD|\uFFFD#9\uFFFD|\uFFFD#12\uFFFD]"}:START_TAG_SPK_ICON:link${"[\uFFFD/#1:2\uFFFD|\uFFFD/#9\uFFFD|\uFFFD/#12\uFFFD]"}:CLOSE_TAG_SPK_ICON: Edit target URL ${"[\uFFFD/#1:1\uFFFD|\uFFFD/#8\uFFFD|\uFFFD/#11\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD/#10\uFFFD"}:CLOSE_TAG_NG_CONTAINER:${"\uFFFD/#7\uFFFD"}:CLOSE_TAG_SPK_MENU:${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_DIV:`,i=U(i);let t;t=$localize`${"\uFFFD#19\uFFFD"}:START_TAG_SPK_ICON:arrow-left${"\uFFFD/#19\uFFFD"}:CLOSE_TAG_SPK_ICON: Exit `;let e;e=$localize`${"\uFFFD#22\uFFFD"}:START_TAG_SPK_ICON:arrow-right${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SPK_ICON: Continue `;let o;o=$localize` Want to select another destination? ${"\uFFFD#2\uFFFD"}:START_TAG_SPAN:Click here${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SPAN:`;let p;p=$localize`Other destinations`;let T;T=$localize` Advanced options ${"\uFFFD#9\uFFFD"}:START_TAG_SPK_MENU:${"\uFFFD#10\uFFFD"}:START_TAG_BUTTON: Add advanced option ${"\uFFFD#11\uFFFD"}:START_TAG_SPK_ICON:plus${"\uFFFD/#11\uFFFD"}:CLOSE_TAG_SPK_ICON:${"[\uFFFD/#10\uFFFD|\uFFFD/#1:1\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD#12\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD*14:1\uFFFD"}:START_BLOCK_FOR:${"\uFFFD#1:1\uFFFD"}:START_TAG_BUTTON_1: ${"\uFFFD0:1\uFFFD"}:INTERPOLATION: ${"[\uFFFD/#10\uFFFD|\uFFFD/#1:1\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD/*14:1\uFFFD"}:CLOSE_BLOCK_FOR:${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_NG_CONTAINER:${"\uFFFD/#9\uFFFD"}:CLOSE_TAG_SPK_MENU:`,T=U(T);let v;v=$localize` Http options ${"\uFFFD#20\uFFFD"}:START_TAG_SPK_MENU:${"\uFFFD#21\uFFFD"}:START_TAG_BUTTON: Add http option ${"\uFFFD#22\uFFFD"}:START_TAG_SPK_ICON:plus${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SPK_ICON:${"[\uFFFD/#21\uFFFD|\uFFFD/#1:1\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD#23\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD*25:1\uFFFD"}:START_BLOCK_FOR:${"\uFFFD#1:1\uFFFD"}:START_TAG_BUTTON_1: ${"\uFFFD0:1\uFFFD"}:INTERPOLATION: ${"[\uFFFD/#21\uFFFD|\uFFFD/#1:1\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD/*25:1\uFFFD"}:CLOSE_BLOCK_FOR:${"\uFFFD/#23\uFFFD"}:CLOSE_TAG_NG_CONTAINER:${"\uFFFD/#20\uFFFD"}:CLOSE_TAG_SPK_MENU:`,v=U(v);let P;P=$localize`Edit target URL`;let V;V=$localize` Be careful, this will overwrite everything you have in your destination. `;let et;return et=$localize` Override target URL ${"\uFFFD#14\uFFFD"}:START_TAG_SPK_ICON:swap${"\uFFFD/#14\uFFFD"}:CLOSE_TAG_SPK_ICON:`,[["formRef",""],["option",""],["fieldTemplate",""],["enumOptionTemplate",""],["optionTemplate",""],i,t,e,o,p,T,v,P,V,et,[3,"submit","formGroup"],[1,"title-30"],[1,"actions"],["spk-button","","type","button",1,"small",3,"success"],["spk-button","","type","button",1,"small"],["menu",""],["spk-button","","type","button",1,"small",3,"click"],["formArrayName","destinations"],[1,"form-actions"],["spk-button","","type","button",3,"click"],["spk-button","","type","submit",1,"raised","primary"],[3,"isOpen","options"],[3,"click"],[1,"spk-primary"],[1,"most-common-destinations"],[1,"tile"],[3,"searchable"],["spk-button","","type","button",1,"outlined"],["type","button"],[1,"tile",3,"click"],["type","button",3,"click"],["formGroupName","0"],[3,"disallowToggle"],["title",""],["spk-button","","type","button",1,"outlined","small",3,"disabled"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"field-row"],[3,"formGroupName"],[3,"startingPath","accepts","showFiles","hideShortcuts","showHiddenNodes","selectFiles"],[3,"hideShortcuts","startingPath"],[3,"inputType","formControlName","customId"],[1,"primary","raised"],[3,"for"],[1,"primary",3,"spkTooltip"],["type","text",3,"id","formControlName"],[3,"type","id","formControlName"],["prefix",""],["autocomplete","off",3,"type","id","formControlName"],["prefix","",1,"link"],["suffix","",1,"clickable"],["prefix","",1,"link",3,"click"],["suffix","",1,"clickable",3,"click"],[3,"options","isClearable","optionTemplate"],[1,"indeterminate","primary"],["label","key","value","value",3,"options","asFreeText","inlineSearch","optionTemplate"],["type","number",3,"id","formControlName"],["type","checkbox",3,"id","formControlName"],[1,"primary","raised",3,"options","selectMultiple","optionTemplate"],["type","text","id","text",3,"formControlName"],["spk-button","","type","button",1,"outlined",3,"click"],[3,"isOpenChange","isOpen","options"],["header",""],[1,"warning"],["content",""],["id","targetUrl","autocomplete","off",3,"formControl"],["footer",""],["spk-button","","type","submit",1,"raised","primary",3,"click"]]},template:function(t,e){if(t&1){let o=S();l(0,"form",15,0),f("submit",function(){return C(o),g(e.next())}),l(2,"header")(3,"h3",16),E(4,5),l(5,"div",17),m(6,le,4,3,"button",18),l(7,"spk-menu")(8,"button",19),u(9,"spk-icon"),r(),$(10,20),l(11,"button",21),f("click",function(){return C(o),g(e.openTargetUrlDialog())}),u(12,"spk-icon"),r(),w(),r()(),O(),r(),m(13,se,3,0,"p"),r(),m(14,ce,9,1)(15,an,30,6,"ng-container",22),l(16,"div",23)(17,"button",24),f("click",function(){return C(o),g(e.goBack())}),E(18,6),u(19,"spk-icon"),O(),r(),l(20,"button",25),E(21,7),u(22,"spk-icon"),O(),r()()(),m(23,rn,15,4,"spk-dialog",26)}if(t&2){let o;c("formGroup",e.destinationForm),a(6),F(e.destinationCount()>0?6:-1),a(7),F(e.destinationCount()>0?13:-1),a(),F(e.destinationCount()===0?14:-1),a(),F(!((o=e.destinationFormSignal())==null||o.destinations==null)&&o.destinations.length?15:-1),a(8),F(e.targetUrlDialogOpen()?23:-1)}},dependencies:[Kt,Vt,wt,bt,$t,At,vt,Mt,Gt,Ut,Bt,Lt,Tt,xt,kt,Dt,It,Et,St,Nt,Rt,yt,jt,qt,Qt,Xt],styles:["[_nghost-%COMP%]{display:block;width:100%;max-width:32.5rem;padding:2.5rem}header[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%], header[_ngcontent-%COMP%] spk-alert[_ngcontent-%COMP%]{width:100%}header[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;gap:.5rem}header[_ngcontent-%COMP%] p[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{cursor:pointer;text-decoration:underline}header[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{display:flex;gap:.5rem}pre[_ngcontent-%COMP%]{white-space:pre-wrap}.field-row[_ngcontent-%COMP%]{display:grid;align-items:flex-end;grid-template-columns:1fr 2.5rem;gap:.5rem}.field-row.single-field[_ngcontent-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}.form-column[_ngcontent-%COMP%]{display:flex;flex-direction:column}.form-column[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.25rem}.form-column[_ngcontent-%COMP%] spk-icon[_ngcontent-%COMP%]{font-size:1rem}.form-row[_ngcontent-%COMP%]{display:grid;grid-template-columns:2fr 1fr;gap:.5rem;align-items:flex-end}.clickable[_ngcontent-%COMP%]{cursor:pointer;color:var(--primary-500)}.most-common-destinations[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.most-common-destinations[_ngcontent-%COMP%] .tile[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border:1px solid var(--base-4);border-radius:var(--shape-3);box-shadow:var(--box-shadow-10);background-color:var(--base-2);cursor:pointer}.most-common-destinations[_ngcontent-%COMP%] .tile[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font:var(--paragraph-10);margin:0}[prefix].link[_ngcontent-%COMP%]{cursor:pointer;text-decoration:underline;color:var(--primary-500)}textarea[_ngcontent-%COMP%] ~ grammarly-extension[_ngcontent-%COMP%]{display:none}"],changeDetection:0})};export{wn as createDestinationForm,An as createDestinationFormGroup,tt as default};
@@ -1 +1 @@
1
- import{a as ae}from"./chunk-P7O2NK5N.js";import{a as te}from"./chunk-TQHNKGRL.js";import"./chunk-MU24KCIK.js";import"./chunk-TRR5XEEM.js";import{a as Q}from"./chunk-FJVMA6GA.js";import"./chunk-BIZAKOYU.js";import"./chunk-RHW5QVAY.js";import"./chunk-HFIC4JNY.js";import{c as Y,e as Z,h as x,s as ee}from"./chunk-ELMONRIG.js";import"./chunk-BJGA55H2.js";import"./chunk-XP7PWMT2.js";import{b as z,e as q}from"./chunk-C6XTRC7P.js";import"./chunk-MAVZY7BL.js";import{a as H,g as W,l as j}from"./chunk-SL6SRYFT.js";import{h as J}from"./chunk-S5EF63OY.js";import"./chunk-JFNFY6VY.js";import"./chunk-7L2WUS2V.js";import"./chunk-DOP6RFEG.js";import{Db as i,E as g,Eb as a,F as d,Fb as l,N as E,Oc as k,Pb as p,Pc as h,Qb as r,Rb as F,Sb as L,Tb as U,Ua as s,Vb as u,Z as D,gb as y,ic as C,lb as v,nc as w,oc as X,pc as V,r as O,ub as A,va as c,wb as P,yb as G,zb as K}from"./chunk-L72ALLHJ.js";import"./chunk-7CGTOI24.js";function ie(S,t){S&1&&(i(0,"spk-icon",18),C(1,"check"),a())}function ne(S,t){S&1&&(i(0,"spk-icon",18),C(1,"warning"),a())}var m=class S{#a=D(z);#i=D(Q);#e=D(J);#t="";backupId=te(this.#a.params.pipe(O(t=>t.id)));activeBackup=k(()=>{let t=this.#i.backups().find(_=>_.Backup?.ID===this.backupId());return this.#t=t?.Backup?.DBPath??"",t});backupFilePath=c("");lastValidatedPath=c("");isValidatedPath=k(()=>this.lastValidatedPath()===this.backupFilePath());pathHasChanged=k(()=>this.backupFilePath()!==this.#t);backupFilePathEffect=h(()=>{let t=this.backupFilePath();t!==""&&this.#e.postApiV1FilesystemValidate({requestBody:{path:t}}).subscribe({next:()=>this.lastValidatedPath.set(t)})});isRestoring=c(!1);isRepairing=c(!1);isDeleting=c(!1);isSavingDbPath=c(!1);isSavingAndRepairing=c(!1);isMovingDb=c(!1);activeBackupEffect=h(()=>{let t=this.activeBackup();if(!t)return;let _=t.Backup?.DBPath??"";this.backupFilePath.set(_)});repairDatabase(){this.isRepairing.set(!0),this.#e.postApiV1BackupByIdRepair({id:this.backupId()}).pipe(g(1),d(()=>this.isRepairing.set(!1))).subscribe()}deleteDatabase(){this.isDeleting.set(!0),this.#e.postApiV1BackupByIdDeletedb({id:this.backupId()}).pipe(g(1),d(()=>this.isDeleting.set(!1))).subscribe()}restoreDatabase(){this.isRestoring.set(!0),this.#e.postApiV1BackupByIdDeletedb({id:this.backupId()}).pipe(g(1),E(()=>this.#e.postApiV1BackupByIdRepair({id:this.backupId()})),d(()=>this.isRestoring.set(!1))).subscribe()}resetDatabasePath(){this.backupFilePath.set(this.#t)}saveDatabasePath(){this.isSavingDbPath.set(!0),this.#e.postApiV1BackupByIdUpdatedb({id:this.backupId(),requestBody:{path:this.backupFilePath()}}).pipe(d(()=>this.isSavingDbPath.set(!1))).subscribe()}saveAndRepairDatabasePath(){this.isSavingAndRepairing.set(!0),this.#e.postApiV1BackupByIdUpdatedb({id:this.backupId(),requestBody:{path:this.backupFilePath()}}).pipe(E(()=>this.#e.postApiV1BackupByIdRepair({id:this.backupId()})),d(()=>this.isSavingAndRepairing.set(!1)))}moveDatabasePath(){this.isMovingDb.set(!0),this.#e.postApiV1BackupByIdMovedb({id:this.backupId(),requestBody:{path:this.backupFilePath()}}).pipe(d(()=>this.isMovingDb.set(!1))).subscribe()}static \u0275fac=function(_){return new(_||S)};static \u0275cmp=y({type:S,selectors:[["app-database"]],decls:46,vars:18,consts:()=>{let t;t=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SPK_ICON:arrow-left${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SPK_ICON: Back `;let _;_=$localize`Local database for ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let e;e=$localize` Each backup has a local database associated with it, which stores information about the remote backup on the local machine. This makes it faster to perform many operations, and reduces the amount of data that needs to be downloaded for each operation. `;let n;n=$localize`Maintenance`;let T;T=$localize` If the backup and the remote storage is out of sync, Duplicati will require that you perform a repair operation to synchronize the database. If the repair is unsuccessful, you can delete the local database and re-generate. `;let b;b=$localize`${"\uFFFD#19\uFFFD"}:START_TAG_SPK_ICON:wrench${"\uFFFD/#19\uFFFD"}:CLOSE_TAG_SPK_ICON: Repair `;let f;f=$localize`${"\uFFFD#22\uFFFD"}:START_TAG_SPK_ICON:trash${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SPK_ICON: Delete `;let B;B=$localize`${"\uFFFD#25\uFFFD"}:START_TAG_SPK_ICON:clock-counter-clockwise${"\uFFFD/#25\uFFFD"}:CLOSE_TAG_SPK_ICON: Restore (delete and repair) `;let I;I=$localize`Placement`;let M;M=$localize`${"\uFFFD#36\uFFFD"}:START_TAG_SPK_ICON:backspace${"\uFFFD/#36\uFFFD"}:CLOSE_TAG_SPK_ICON: Reset `;let N;N=$localize`${"\uFFFD#39\uFFFD"}:START_TAG_SPK_ICON:floppy-disk${"\uFFFD/#39\uFFFD"}:CLOSE_TAG_SPK_ICON: Save `;let $;$=$localize`${"\uFFFD#42\uFFFD"}:START_TAG_SPK_ICON:wrench${"\uFFFD/#42\uFFFD"}:CLOSE_TAG_SPK_ICON: Save & Repair `;let R;return R=$localize`${"\uFFFD#45\uFFFD"}:START_TAG_SPK_ICON:flow-arrow${"\uFFFD/#45\uFFFD"}:CLOSE_TAG_SPK_ICON: Move existing database `,[t,_,e,n,T,b,f,B,I,M,N,$,R,[1,"back"],["type","button","spk-button","","routerLink","/",1,"small"],[1,"actions","maintenance"],["spk-button","",3,"click","disabled"],["type","text",3,"ngModelChange","ngModel"],["prefix",""],[1,"actions","placement"]]},template:function(_,e){if(_&1&&(l(0,"app-status-bar"),i(1,"section")(2,"div",13)(3,"button",14),p(4,0),l(5,"spk-icon"),r(),a()(),i(6,"article")(7,"h1"),F(8,1),a(),i(9,"p"),F(10,2),a()(),i(11,"article")(12,"h2"),F(13,3),a(),i(14,"p"),F(15,4),a(),i(16,"div",15)(17,"button",16),u("click",function(){return e.repairDatabase()}),p(18,5),l(19,"spk-icon"),r(),a(),i(20,"button",16),u("click",function(){return e.deleteDatabase()}),p(21,6),l(22,"spk-icon"),r(),a(),i(23,"button",16),u("click",function(){return e.restoreDatabase()}),p(24,7),l(25,"spk-icon"),r(),a()()(),i(26,"article")(27,"h2"),F(28,8),a(),i(29,"spk-form-field")(30,"input",17),V("ngModelChange",function(T){return X(e.backupFilePath,T)||(e.backupFilePath=T),T}),a(),v(31,ie,2,0,"spk-icon",18)(32,ne,2,0,"spk-icon",18),a(),i(33,"div",19)(34,"button",16),u("click",function(){return e.resetDatabasePath()}),p(35,9),l(36,"spk-icon"),r(),a(),i(37,"button",16),u("click",function(){return e.saveDatabasePath()}),p(38,10),l(39,"spk-icon"),r(),a(),i(40,"button",16),u("click",function(){return e.saveAndRepairDatabasePath()}),p(41,11),l(42,"spk-icon"),r(),a(),i(43,"button",16),u("click",function(){return e.moveDatabasePath()}),p(44,12),l(45,"spk-icon"),r(),a()()()()),_&2){let n;s(8),L((n=e.activeBackup())==null||n.Backup==null?null:n.Backup.Name),U(8),s(9),P("loader",e.isRepairing()),A("disabled",!e.isValidatedPath()),s(3),P("loader",e.isDeleting()),A("disabled",!e.isValidatedPath()),s(3),P("loader",e.isRestoring()),A("disabled",e.pathHasChanged()),s(6),G(e.isValidatedPath()?"success":"error"),s(),w("ngModel",e.backupFilePath),s(),K(e.isValidatedPath()?31:32),s(3),A("disabled",!e.pathHasChanged()),s(3),A("disabled",!e.pathHasChanged()),s(3),A("disabled",!e.pathHasChanged()),s(3),A("disabled",!e.pathHasChanged())}},dependencies:[ee,Y,Z,x,ae,W,j,H,q],styles:["[_nghost-%COMP%]{display:block}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2rem;padding:2rem}article[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem}h1[_ngcontent-%COMP%]{font:var(--title-20)}h2[_ngcontent-%COMP%]{font:var(--title-30)}.actions[_ngcontent-%COMP%]{display:flex;gap:.5rem}"],changeDetection:0})};export{m as default};
1
+ import{a as ae}from"./chunk-B3WLZK7W.js";import{a as te}from"./chunk-XR4SRVOQ.js";import"./chunk-OHZGASM5.js";import"./chunk-65UN5LE6.js";import{a as Q}from"./chunk-WFM6YWRN.js";import"./chunk-3AIKVVWP.js";import"./chunk-RHW5QVAY.js";import"./chunk-RSZISHXB.js";import{c as Y,e as Z,h as x,s as ee}from"./chunk-5ENRUF35.js";import"./chunk-ZQSBINUM.js";import"./chunk-3XVU2YA6.js";import{b as z,e as q}from"./chunk-5LKXKKAK.js";import"./chunk-HFNFJ7G2.js";import{a as H,g as W,l as j}from"./chunk-AL5KGNEF.js";import{h as J}from"./chunk-FRSQ5NDX.js";import"./chunk-RHII5WE3.js";import"./chunk-M3WT5B3C.js";import"./chunk-TCDECRYI.js";import{Db as i,E as g,Eb as a,F as d,Fb as l,N as E,Pb as p,Pc as k,Qb as r,Qc as h,Rb as F,Sb as L,Tb as U,Ua as s,Vb as u,Z as D,gb as y,jc as C,lb as v,oc as w,pc as X,qc as V,r as O,ub as A,va as c,wb as P,yb as G,zb as K}from"./chunk-AHUC7M75.js";import"./chunk-7CGTOI24.js";function ie(S,t){S&1&&(i(0,"spk-icon",18),C(1,"check"),a())}function ne(S,t){S&1&&(i(0,"spk-icon",18),C(1,"warning"),a())}var m=class S{#a=D(z);#i=D(Q);#e=D(J);#t="";backupId=te(this.#a.params.pipe(O(t=>t.id)));activeBackup=k(()=>{let t=this.#i.backups().find(_=>_.Backup?.ID===this.backupId());return this.#t=t?.Backup?.DBPath??"",t});backupFilePath=c("");lastValidatedPath=c("");isValidatedPath=k(()=>this.lastValidatedPath()===this.backupFilePath());pathHasChanged=k(()=>this.backupFilePath()!==this.#t);backupFilePathEffect=h(()=>{let t=this.backupFilePath();t!==""&&this.#e.postApiV1FilesystemValidate({requestBody:{path:t}}).subscribe({next:()=>this.lastValidatedPath.set(t)})});isRestoring=c(!1);isRepairing=c(!1);isDeleting=c(!1);isSavingDbPath=c(!1);isSavingAndRepairing=c(!1);isMovingDb=c(!1);activeBackupEffect=h(()=>{let t=this.activeBackup();if(!t)return;let _=t.Backup?.DBPath??"";this.backupFilePath.set(_)});repairDatabase(){this.isRepairing.set(!0),this.#e.postApiV1BackupByIdRepair({id:this.backupId()}).pipe(g(1),d(()=>this.isRepairing.set(!1))).subscribe()}deleteDatabase(){this.isDeleting.set(!0),this.#e.postApiV1BackupByIdDeletedb({id:this.backupId()}).pipe(g(1),d(()=>this.isDeleting.set(!1))).subscribe()}restoreDatabase(){this.isRestoring.set(!0),this.#e.postApiV1BackupByIdDeletedb({id:this.backupId()}).pipe(g(1),E(()=>this.#e.postApiV1BackupByIdRepair({id:this.backupId()})),d(()=>this.isRestoring.set(!1))).subscribe()}resetDatabasePath(){this.backupFilePath.set(this.#t)}saveDatabasePath(){this.isSavingDbPath.set(!0),this.#e.postApiV1BackupByIdUpdatedb({id:this.backupId(),requestBody:{path:this.backupFilePath()}}).pipe(d(()=>this.isSavingDbPath.set(!1))).subscribe()}saveAndRepairDatabasePath(){this.isSavingAndRepairing.set(!0),this.#e.postApiV1BackupByIdUpdatedb({id:this.backupId(),requestBody:{path:this.backupFilePath()}}).pipe(E(()=>this.#e.postApiV1BackupByIdRepair({id:this.backupId()})),d(()=>this.isSavingAndRepairing.set(!1)))}moveDatabasePath(){this.isMovingDb.set(!0),this.#e.postApiV1BackupByIdMovedb({id:this.backupId(),requestBody:{path:this.backupFilePath()}}).pipe(d(()=>this.isMovingDb.set(!1))).subscribe()}static \u0275fac=function(_){return new(_||S)};static \u0275cmp=y({type:S,selectors:[["app-database"]],decls:46,vars:18,consts:()=>{let t;t=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SPK_ICON:arrow-left${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SPK_ICON: Back `;let _;_=$localize`Local database for ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let e;e=$localize` Each backup has a local database associated with it, which stores information about the remote backup on the local machine. This makes it faster to perform many operations, and reduces the amount of data that needs to be downloaded for each operation. `;let n;n=$localize`Maintenance`;let T;T=$localize` If the backup and the remote storage is out of sync, Duplicati will require that you perform a repair operation to synchronize the database. If the repair is unsuccessful, you can delete the local database and re-generate. `;let b;b=$localize`${"\uFFFD#19\uFFFD"}:START_TAG_SPK_ICON:wrench${"\uFFFD/#19\uFFFD"}:CLOSE_TAG_SPK_ICON: Repair `;let f;f=$localize`${"\uFFFD#22\uFFFD"}:START_TAG_SPK_ICON:trash${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SPK_ICON: Delete `;let B;B=$localize`${"\uFFFD#25\uFFFD"}:START_TAG_SPK_ICON:clock-counter-clockwise${"\uFFFD/#25\uFFFD"}:CLOSE_TAG_SPK_ICON: Restore (delete and repair) `;let I;I=$localize`Placement`;let M;M=$localize`${"\uFFFD#36\uFFFD"}:START_TAG_SPK_ICON:backspace${"\uFFFD/#36\uFFFD"}:CLOSE_TAG_SPK_ICON: Reset `;let N;N=$localize`${"\uFFFD#39\uFFFD"}:START_TAG_SPK_ICON:floppy-disk${"\uFFFD/#39\uFFFD"}:CLOSE_TAG_SPK_ICON: Save `;let $;$=$localize`${"\uFFFD#42\uFFFD"}:START_TAG_SPK_ICON:wrench${"\uFFFD/#42\uFFFD"}:CLOSE_TAG_SPK_ICON: Save & Repair `;let R;return R=$localize`${"\uFFFD#45\uFFFD"}:START_TAG_SPK_ICON:flow-arrow${"\uFFFD/#45\uFFFD"}:CLOSE_TAG_SPK_ICON: Move existing database `,[t,_,e,n,T,b,f,B,I,M,N,$,R,[1,"back"],["type","button","spk-button","","routerLink","/",1,"small"],[1,"actions","maintenance"],["spk-button","",3,"click","disabled"],["type","text",3,"ngModelChange","ngModel"],["prefix",""],[1,"actions","placement"]]},template:function(_,e){if(_&1&&(l(0,"app-status-bar"),i(1,"section")(2,"div",13)(3,"button",14),p(4,0),l(5,"spk-icon"),r(),a()(),i(6,"article")(7,"h1"),F(8,1),a(),i(9,"p"),F(10,2),a()(),i(11,"article")(12,"h2"),F(13,3),a(),i(14,"p"),F(15,4),a(),i(16,"div",15)(17,"button",16),u("click",function(){return e.repairDatabase()}),p(18,5),l(19,"spk-icon"),r(),a(),i(20,"button",16),u("click",function(){return e.deleteDatabase()}),p(21,6),l(22,"spk-icon"),r(),a(),i(23,"button",16),u("click",function(){return e.restoreDatabase()}),p(24,7),l(25,"spk-icon"),r(),a()()(),i(26,"article")(27,"h2"),F(28,8),a(),i(29,"spk-form-field")(30,"input",17),V("ngModelChange",function(T){return X(e.backupFilePath,T)||(e.backupFilePath=T),T}),a(),v(31,ie,2,0,"spk-icon",18)(32,ne,2,0,"spk-icon",18),a(),i(33,"div",19)(34,"button",16),u("click",function(){return e.resetDatabasePath()}),p(35,9),l(36,"spk-icon"),r(),a(),i(37,"button",16),u("click",function(){return e.saveDatabasePath()}),p(38,10),l(39,"spk-icon"),r(),a(),i(40,"button",16),u("click",function(){return e.saveAndRepairDatabasePath()}),p(41,11),l(42,"spk-icon"),r(),a(),i(43,"button",16),u("click",function(){return e.moveDatabasePath()}),p(44,12),l(45,"spk-icon"),r(),a()()()()),_&2){let n;s(8),L((n=e.activeBackup())==null||n.Backup==null?null:n.Backup.Name),U(8),s(9),P("loader",e.isRepairing()),A("disabled",!e.isValidatedPath()),s(3),P("loader",e.isDeleting()),A("disabled",!e.isValidatedPath()),s(3),P("loader",e.isRestoring()),A("disabled",e.pathHasChanged()),s(6),G(e.isValidatedPath()?"success":"error"),s(),w("ngModel",e.backupFilePath),s(),K(e.isValidatedPath()?31:32),s(3),A("disabled",!e.pathHasChanged()),s(3),A("disabled",!e.pathHasChanged()),s(3),A("disabled",!e.pathHasChanged()),s(3),A("disabled",!e.pathHasChanged())}},dependencies:[ee,Y,Z,x,ae,W,j,H,q],styles:["[_nghost-%COMP%]{display:block}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2rem;padding:2rem}article[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem}h1[_ngcontent-%COMP%]{font:var(--title-20)}h2[_ngcontent-%COMP%]{font:var(--title-30)}.actions[_ngcontent-%COMP%]{display:flex;gap:.5rem}"],changeDetection:0})};export{m as default};
@@ -0,0 +1 @@
1
+ import{a,b}from"./chunk-Q6M5VRZV.js";import"./chunk-LDJVMU7P.js";import"./chunk-LJDOQTEF.js";import"./chunk-XR4SRVOQ.js";import"./chunk-WZRSQ7XL.js";import"./chunk-3AIKVVWP.js";import"./chunk-5ENRUF35.js";import"./chunk-5LKXKKAK.js";import"./chunk-HFNFJ7G2.js";import"./chunk-AL5KGNEF.js";import"./chunk-FRSQ5NDX.js";import"./chunk-M3WT5B3C.js";import"./chunk-AHUC7M75.js";import"./chunk-7CGTOI24.js";export{a as createRestoreOptionsForm,b as default};
@@ -0,0 +1 @@
1
+ import{c as a,d as b}from"./chunk-Q6M5VRZV.js";import"./chunk-LDJVMU7P.js";import"./chunk-LJDOQTEF.js";import"./chunk-XR4SRVOQ.js";import"./chunk-WZRSQ7XL.js";import"./chunk-3AIKVVWP.js";import"./chunk-5ENRUF35.js";import"./chunk-5LKXKKAK.js";import"./chunk-HFNFJ7G2.js";import"./chunk-AL5KGNEF.js";import"./chunk-FRSQ5NDX.js";import"./chunk-M3WT5B3C.js";import"./chunk-AHUC7M75.js";import"./chunk-7CGTOI24.js";export{a as createEncryptionForm,b as default};
@@ -1 +1 @@
1
- import{a as L}from"./chunk-XP7PWMT2.js";import{d as A}from"./chunk-C6XTRC7P.js";import{a as k,c as I,h as w}from"./chunk-S5EF63OY.js";import{B as m,E as o,F as y,P as l,T as a,Z as i,f as h,k as u,n as g,r as d,va as n}from"./chunk-L72ALLHJ.js";var c=class s{#r=i(L);#i=n(null);#t=window.self!==window.top;#s=n(this.#t);relayIsEnabled=this.#s.asReadonly();config=this.#i.asReadonly();configLoaded=this.#t?new u:null;isLoading=n(this.#t);parentIframeListner=null;parentOrigin="*";fetchConfig(){this.#n(),this.#t&&(this.#s.set(!0),this.parentIframeListner=new AbortController,this.#e("connected"),window.addEventListener("message",e=>{if(e.data.startsWith("access:")){let t=e.data.replace("access:",""),r=JSON.parse(t);if(!r?.accessToken||!r?.clientId){this.#e("error:invalid-config"),this.#s.set(!1);return}if(typeof r.clientId!="string"){this.#e("error:invalid-config"),this.#s.set(!1);return}if(typeof r.accessToken!="string"){this.#e("error:invalid-config"),this.#s.set(!1);return}let R=this.#r.getItem("locale")??"en-US",p=r.locale??"en-US";R!==p&&(this.#r.setItem("locale",p),window.location.reload()),this.#i.set(r),this.configLoaded?.next(!0),this.isLoading.set(!1),this.#e("handshake-complete")}},{signal:this.parentIframeListner.signal}))}#e(e){window.parent.postMessage(e,"*")}#n(){this.parentIframeListner&&(this.parentIframeListner.abort(),this.parentIframeListner=null)}setConfig(e){this.#i.set(e)}clearConfig(){this.#i.set(null)}static \u0275fac=function(t){return new(t||s)};static \u0275prov=a({token:s,factory:s.\u0275fac,providedIn:"root"})};var f="PROXY_AUTHED_FAKE_TOKEN",b=class s{#r=i(A);#i=i(I);#t=i(w);#s=i(c);#e=n(null);#n=n(!1);token=this.#e.asReadonly();isLoggingOut=this.#n.asReadonly();login(e){return this.#t.postApiV1AuthLogin({requestBody:{Password:e,RememberMe:!0}}).pipe(o(1),l(t=>t.AccessToken&&this.#e.set(t.AccessToken)))}refreshToken(){return this.#s.relayIsEnabled()?(this.#e.set(f),new h(e=>{e.next({AccessToken:f}),e.complete()})):this.#t.postApiV1AuthRefresh().pipe(o(1),l(e=>e.AccessToken&&this.#e.set(e.AccessToken)))}checkProxyAuthed(){let e=new k({"custom-proxy-check":"true"});return this.#i.get("/api/v1/systeminfo",{headers:e}).pipe(d(()=>(this.#e.set(f),!0)),m(()=>g(!1)))}logout(){this.#n.set(!0),this.#t.postApiV1AuthRefreshLogout().pipe(o(1),y(()=>{this.#n.set(!1),this.#e.set(null),this.#r.navigate(["/login"])})).subscribe()}static \u0275fac=function(t){return new(t||s)};static \u0275prov=a({token:s,factory:s.\u0275fac,providedIn:"root"})};export{c as a,f as b,b as c};
1
+ import{a as L}from"./chunk-3XVU2YA6.js";import{d as A}from"./chunk-5LKXKKAK.js";import{a as k,c as I,h as w}from"./chunk-FRSQ5NDX.js";import{B as m,E as o,F as y,P as l,T as a,Z as i,f as h,k as u,n as g,r as d,va as n}from"./chunk-AHUC7M75.js";var c=class s{#r=i(L);#i=n(null);#t=window.self!==window.top;#s=n(this.#t);relayIsEnabled=this.#s.asReadonly();config=this.#i.asReadonly();configLoaded=this.#t?new u:null;isLoading=n(this.#t);parentIframeListner=null;parentOrigin="*";fetchConfig(){this.#n(),this.#t&&(this.#s.set(!0),this.parentIframeListner=new AbortController,this.#e("connected"),window.addEventListener("message",e=>{if(e.data.startsWith("access:")){let t=e.data.replace("access:",""),r=JSON.parse(t);if(!r?.accessToken||!r?.clientId){this.#e("error:invalid-config"),this.#s.set(!1);return}if(typeof r.clientId!="string"){this.#e("error:invalid-config"),this.#s.set(!1);return}if(typeof r.accessToken!="string"){this.#e("error:invalid-config"),this.#s.set(!1);return}let R=this.#r.getItem("locale")??"en-US",p=r.locale??"en-US";R!==p&&(this.#r.setItem("locale",p),window.location.reload()),this.#i.set(r),this.configLoaded?.next(!0),this.isLoading.set(!1),this.#e("handshake-complete")}},{signal:this.parentIframeListner.signal}))}#e(e){window.parent.postMessage(e,"*")}#n(){this.parentIframeListner&&(this.parentIframeListner.abort(),this.parentIframeListner=null)}setConfig(e){this.#i.set(e)}clearConfig(){this.#i.set(null)}static \u0275fac=function(t){return new(t||s)};static \u0275prov=a({token:s,factory:s.\u0275fac,providedIn:"root"})};var f="PROXY_AUTHED_FAKE_TOKEN",b=class s{#r=i(A);#i=i(I);#t=i(w);#s=i(c);#e=n(null);#n=n(!1);token=this.#e.asReadonly();isLoggingOut=this.#n.asReadonly();login(e){return this.#t.postApiV1AuthLogin({requestBody:{Password:e,RememberMe:!0}}).pipe(o(1),l(t=>t.AccessToken&&this.#e.set(t.AccessToken)))}refreshToken(){return this.#s.relayIsEnabled()?(this.#e.set(f),new h(e=>{e.next({AccessToken:f}),e.complete()})):this.#t.postApiV1AuthRefresh().pipe(o(1),l(e=>e.AccessToken&&this.#e.set(e.AccessToken)))}checkProxyAuthed(){let e=new k({"custom-proxy-check":"true"});return this.#i.get("/api/v1/systeminfo",{headers:e}).pipe(d(()=>(this.#e.set(f),!0)),m(()=>g(!1)))}logout(){this.#n.set(!0),this.#t.postApiV1AuthRefreshLogout().pipe(o(1),y(()=>{this.#n.set(!1),this.#e.set(null),this.#r.navigate(["/login"])})).subscribe()}static \u0275fac=function(t){return new(t||s)};static \u0275prov=a({token:s,factory:s.\u0275fac,providedIn:"root"})};export{c as a,f as b,b as c};
package/index.html CHANGED
@@ -59,9 +59,9 @@
59
59
  }
60
60
  }
61
61
  </style>
62
- <style>:root{--font-size:16px;font-size:var(--font-size)}html body{--sparkle-light:initial;--sparkle-dark: ;color-scheme:light dark;--primary-1:var(--sparkle-light, hsl(217, 91%, 95%)) var(--sparkle-dark, hsl(217, 91%, 9.5%));--primary-2:var(--sparkle-light, hsl(217, 91%, 90%)) var(--sparkle-dark, hsl(217, 91%, 15%));--primary-3:var(--sparkle-light, hsl(217, 91%, 85%)) var(--sparkle-dark, hsl(217, 91%, 22.5%));--primary-4:var(--sparkle-light, hsl(217, 91%, 80%)) var(--sparkle-dark, hsl(217, 91%, 30%));--primary-5:var(--sparkle-light, hsl(217, 91%, 75%)) var(--sparkle-dark, hsl(217, 91%, 37.5%));--primary-6:var(--sparkle-light, hsl(217, 91%, 70%)) var(--sparkle-dark, hsl(217, 91%, 45%));--primary-7:var(--sparkle-light, hsl(217, 91%, 65%)) var(--sparkle-dark, hsl(217, 91%, 52.5%));--primary-8:var(--sparkle-light, hsl(217, 91%, 60%)) var(--sparkle-dark, hsl(217, 91%, 60%));--primary-9:var(--sparkle-light, hsl(217, 91%, 46.5%)) var(--sparkle-dark, hsl(217, 91%, 70%));--primary-10:var(--sparkle-light, hsl(217, 91%, 33%)) var(--sparkle-dark, hsl(217, 91%, 80%));--primary-11:var(--sparkle-light, hsl(217, 91%, 19.5%)) var(--sparkle-dark, hsl(217, 91%, 90%));--primary-12:var(--sparkle-light, hsl(217, 91%, 6%)) var(--sparkle-dark, hsl(217, 91%, 100%));--primary-g2:linear-gradient(180deg, hsl(217, 91%, 70%) 0%, hsl(217, 91%, 60%) 50%);--primary-g3:linear-gradient(180deg, hsl(217, 91%, 80%) 0%, hsl(217, 91%, 60%) 50%);--accent-1:var(--sparkle-light, hsl(258, 90%, 95.75%)) var(--sparkle-dark, hsl(258, 90%, 9.25%));--accent-2:var(--sparkle-light, hsl(258, 90%, 91.5%)) var(--sparkle-dark, hsl(258, 90%, 16.5%));--accent-3:var(--sparkle-light, hsl(258, 90%, 87.25%)) var(--sparkle-dark, hsl(258, 90%, 24.75%));--accent-4:var(--sparkle-light, hsl(258, 90%, 83%)) var(--sparkle-dark, hsl(258, 90%, 33%));--accent-5:var(--sparkle-light, hsl(258, 90%, 78.75%)) var(--sparkle-dark, hsl(258, 90%, 41.25%));--accent-6:var(--sparkle-light, hsl(258, 90%, 74.5%)) var(--sparkle-dark, hsl(258, 90%, 49.5%));--accent-7:var(--sparkle-light, hsl(258, 90%, 70.25%)) var(--sparkle-dark, hsl(258, 90%, 57.75%));--accent-8:var(--sparkle-light, hsl(258, 90%, 66%)) var(--sparkle-dark, hsl(258, 90%, 66%));--accent-9:var(--sparkle-light, hsl(258, 90%, 51.15%)) var(--sparkle-dark, hsl(258, 90%, 74.5%));--accent-10:var(--sparkle-light, hsl(258, 90%, 36.3%)) var(--sparkle-dark, hsl(258, 90%, 83%));--accent-11:var(--sparkle-light, hsl(258, 90%, 21.45%)) var(--sparkle-dark, hsl(258, 90%, 91.5%));--accent-12:var(--sparkle-light, hsl(258, 90%, 6.6%)) var(--sparkle-dark, hsl(258, 90%, 100%));--accent-g2:linear-gradient(180deg, hsl(258, 90%, 74.5%) 0%, hsl(258, 90%, 66%) 50%);--accent-g3:linear-gradient(180deg, hsl(258, 90%, 83%) 0%, hsl(258, 90%, 66%) 50%);--warn-1:var(--sparkle-light, hsl(37, 92%, 93.75%)) var(--sparkle-dark, hsl(37, 92%, 9.25%));--warn-2:var(--sparkle-light, hsl(37, 92%, 87.5%)) var(--sparkle-dark, hsl(37, 92%, 12.5%));--warn-3:var(--sparkle-light, hsl(37, 92%, 81.25%)) var(--sparkle-dark, hsl(37, 92%, 18.75%));--warn-4:var(--sparkle-light, hsl(37, 92%, 75%)) var(--sparkle-dark, hsl(37, 92%, 25%));--warn-5:var(--sparkle-light, hsl(37, 92%, 68.75%)) var(--sparkle-dark, hsl(37, 92%, 31.25%));--warn-6:var(--sparkle-light, hsl(37, 92%, 62.5%)) var(--sparkle-dark, hsl(37, 92%, 37.5%));--warn-7:var(--sparkle-light, hsl(37, 92%, 56.25%)) var(--sparkle-dark, hsl(37, 92%, 43.75%));--warn-8:var(--sparkle-light, hsl(37, 92%, 50%)) var(--sparkle-dark, hsl(37, 92%, 50%));--warn-9:var(--sparkle-light, hsl(37, 92%, 38.75%)) var(--sparkle-dark, hsl(37, 92%, 62.5%));--warn-10:var(--sparkle-light, hsl(37, 92%, 27.5%)) var(--sparkle-dark, hsl(37, 92%, 75%));--warn-11:var(--sparkle-light, hsl(37, 92%, 16.25%)) var(--sparkle-dark, hsl(37, 92%, 87.5%));--warn-12:var(--sparkle-light, hsl(37, 92%, 5%)) var(--sparkle-dark, hsl(37, 92%, 100%));--warn-g2:linear-gradient(180deg, hsl(37, 92%, 62.5%) 0%, hsl(37, 92%, 50%) 50%);--warn-g3:linear-gradient(180deg, hsl(37, 92%, 75%) 0%, hsl(37, 92%, 50%) 50%);--error-1:var(--sparkle-light, hsl(0, 84%, 95%)) var(--sparkle-dark, hsl(0, 84%, 7.5%));--error-2:var(--sparkle-light, hsl(0, 84%, 90%)) var(--sparkle-dark, hsl(0, 84%, 15%));--error-3:var(--sparkle-light, hsl(0, 84%, 85%)) var(--sparkle-dark, hsl(0, 84%, 22.5%));--error-4:var(--sparkle-light, hsl(0, 84%, 80%)) var(--sparkle-dark, hsl(0, 84%, 30%));--error-5:var(--sparkle-light, hsl(0, 84%, 75%)) var(--sparkle-dark, hsl(0, 27%, 10%));--error-6:var(--sparkle-light, hsl(0, 84%, 70%)) var(--sparkle-dark, hsl(0, 84%, 45%));--error-7:var(--sparkle-light, hsl(0, 84%, 65%)) var(--sparkle-dark, hsl(0, 84%, 52.5%));--error-8:var(--sparkle-light, hsl(0, 84%, 60%)) var(--sparkle-dark, hsl(0, 84%, 60%));--error-9:var(--sparkle-light, hsl(0, 84%, 46.5%)) var(--sparkle-dark, hsl(0, 84%, 70%));--error-10:var(--sparkle-light, hsl(0, 84%, 33%)) var(--sparkle-dark, hsl(0, 84%, 80%));--error-11:var(--sparkle-light, hsl(0, 84%, 19.5%)) var(--sparkle-dark, hsl(0, 84%, 90%));--error-12:var(--sparkle-light, hsl(0, 84%, 6%)) var(--sparkle-dark, hsl(0, 84%, 100%));--error-g2:linear-gradient(180deg, hsl(0, 84%, 70%) 0%, hsl(0, 84%, 60%) 50%);--error-g3:linear-gradient(180deg, hsl(0, 84%, 80%) 0%, hsl(0, 84%, 60%) 50%);--success-1:var(--sparkle-light, hsl(160, 84%, 92.38%)) var(--sparkle-dark, hsl(160, 84%, 7.88%));--success-2:var(--sparkle-light, hsl(160, 84%, 84.75%)) var(--sparkle-dark, hsl(160, 3%, 17%));--success-3:var(--sparkle-light, hsl(160, 84%, 77.13%)) var(--sparkle-dark, hsl(160, 84%, 14.63%));--success-4:var(--sparkle-light, hsl(160, 84%, 69.5%)) var(--sparkle-dark, hsl(160, 84%, 19.5%));--success-5:var(--sparkle-light, hsl(160, 84%, 61.88%)) var(--sparkle-dark, hsl(160, 84%, 24.38%));--success-6:var(--sparkle-light, hsl(160, 84%, 54.25%)) var(--sparkle-dark, hsl(160, 84%, 29.25%));--success-7:var(--sparkle-light, hsl(160, 84%, 46.63%)) var(--sparkle-dark, hsl(160, 84%, 34.13%));--success-8:var(--sparkle-light, hsl(160, 84%, 39%)) var(--sparkle-dark, hsl(160, 84%, 39%));--success-9:var(--sparkle-light, hsl(160, 84%, 30.23%)) var(--sparkle-dark, hsl(160, 84%, 54.25%));--success-10:var(--sparkle-light, hsl(160, 84%, 21.45%)) var(--sparkle-dark, hsl(160, 84%, 69.5%));--success-11:var(--sparkle-light, hsl(160, 84%, 12.67%)) var(--sparkle-dark, hsl(160, 84%, 84.75%));--success-12:var(--sparkle-light, hsl(160, 84%, 3.9%)) var(--sparkle-dark, hsl(160, 84%, 100%));--success-g2:linear-gradient(180deg, hsl(160, 84%, 54.25%) 0%, hsl(160, 84%, 39%) 50%);--success-g3:linear-gradient(180deg, hsl(160, 84%, 69.5%) 0%, hsl(160, 84%, 39%) 50%);--base-1:var(--sparkle-light, #fff) var(--sparkle-dark, hsl(0, 0%, 5.75%));--base-2:var(--sparkle-light, hsl(0, 0%, 98.05%)) var(--sparkle-dark, hsl(0, 0%, 8.75%));--base-3:var(--sparkle-light, hsl(0, 0%, 94.5%)) var(--sparkle-dark, hsl(0, 0%, 11.5%));--base-4:var(--sparkle-light, hsl(0, 0%, 84.75%)) var(--sparkle-dark, hsl(0, 0%, 17.25%));--base-5:var(--sparkle-light, hsl(0, 0%, 79.75%)) var(--sparkle-dark, hsl(0, 0%, 17.25%));--base-6:var(--sparkle-light, hsl(0, 0%, 66.25%)) var(--sparkle-dark, hsl(0, 0%, 28.75%));--base-7:var(--sparkle-light, hsl(0, 0%, 54.5%)) var(--sparkle-dark, hsl(0, 0%, 34.5%));--base-8:var(--sparkle-light, hsl(0, 0%, 46%)) var(--sparkle-dark, hsl(0, 0%, 46%));--base-9:var(--sparkle-light, hsl(0, 0%, 35.65%)) var(--sparkle-dark, hsl(0, 0%, 59.5%));--base-10:var(--sparkle-light, hsl(0, 0%, 25.3%)) var(--sparkle-dark, hsl(0, 0%, 73%));--base-11:var(--sparkle-light, hsl(0, 0%, 14.95%)) var(--sparkle-dark, hsl(0, 0%, 86.5%));--base-12:var(--sparkle-light, hsl(0, 0%, 4.6%)) var(--sparkle-dark, hsl(0, 0%, 100%));--base-g2:linear-gradient(180deg, hsl(0, 0%, 66.25%) 0%, hsl(0, 0%, 46%) 50%);--base-g3:linear-gradient(180deg, hsl(0, 0%, 73%) 0%, hsl(0, 0%, 46%) 50%);--base-g6:linear-gradient(180deg, hsl(0, 0%, 25.3%) 0%, hsl(0, 0%, 14.95%) 50%);--base-g7:linear-gradient(180deg, hsl(0, 0%, 35.65%) 0%, hsl(0, 0%, 14.95%) 50%);--primary-c8:var(--light-text);--accent-c8:var(--light-text);--warn-c8:var(--light-text);--error-c8:var(--light-text);--success-c8:var(--light-text);--display-10:600 5rem / normal Inter Tight, sans-serif;--display-20:600 4.5rem / normal Inter Tight, sans-serif;--display-30:600 4rem / normal Inter Tight, sans-serif;--display-40:600 3.5rem / normal Inter Tight, sans-serif;--display-50:600 3rem / normal Inter Tight, sans-serif;--title-10:500 2.5rem / normal Inter Tight, sans-serif;--title-20:500 2rem / normal Inter Tight, sans-serif;--title-30:500 1.5rem / normal Inter Tight, sans-serif;--title-10B:600 2.5rem / normal Inter Tight, sans-serif;--title-20B:600 2rem / normal Inter Tight, sans-serif;--title-30B:600 1.5rem / normal Inter Tight, sans-serif;--paragraph-10:500 1.125rem / normal Inter Tight, sans-serif;--paragraph-20:500 1rem / normal Inter Tight, sans-serif;--paragraph-30:500 .875rem / normal Inter Tight, sans-serif;--paragraph-40:500 .75rem / normal Inter Tight, sans-serif;--paragraph-10B:600 1.125rem / normal Inter Tight, sans-serif;--paragraph-20B:600 1rem / normal Inter Tight, sans-serif;--paragraph-30B:600 .875rem / 1.125rem Inter Tight, sans-serif;--paragraph-40B:600 .75rem / normal Inter Tight, sans-serif;--code-10:500 1rem / normal monospace;--code-20:500 .875rem / normal monospace;--code-30:500 .75rem / normal monospace;--shape-1:.25rem;--shape-2:.5rem;--shape-3:.75rem;--shape-4:1rem;--shape-5:1.25rem;--box-shadow-10:0 1px 2px 0 rgba(18, 18, 23, .07);--box-shadow-20:0 1px 3px 0 rgba(18, 18, 23, .1);--box-shadow-30:0 1px 4px -1px rgba(18, 18, 23, .08);--box-shadow-35:0 4px 6px -1px rgba(18, 18, 23, .08);--box-shadow-40:0 10px 15px -3px rgba(18, 18, 23, .08);--box-shadow-50:0 20px 25px -5px rgba(18, 18, 23, .1);--box-shadow-60:0 25px 50px -12px rgba(18, 18, 23, .25);--dark-text:#000;--light-text:#fff}*{box-sizing:border-box}html,body,app-root{width:100vw;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--base-2)}body{margin:0;font:var(--paragraph-30);color:var(--base-12)}*::-webkit-scrollbar{width:8px;height:12px;background:transparent}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#acacac;background:var(--sparkle-light, #acacac) var(--sparkle-dark, #4f4f4f);border-radius:50px;border:3px solid transparent;border-left-width:1px;border-right-width:2px;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background-color:#888}.loading{position:relative}.loading:before{content:"";width:1rem;height:1rem;border:2px solid var(--loader-c);border-bottom-color:transparent;border-radius:50%;display:flex;box-sizing:border-box;animation:rotation 1s linear infinite;margin:auto;inset:0;position:absolute}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}</style><link rel="stylesheet" href="styles-EXA64NMM.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles-EXA64NMM.css"></noscript></head>
62
+ <style>:root{--font-size:16px;font-size:var(--font-size)}html body{--sparkle-light:initial;--sparkle-dark: ;color-scheme:light dark;--primary-1:var(--sparkle-light, hsl(217, 91%, 95%)) var(--sparkle-dark, hsl(217, 91%, 9.5%));--primary-2:var(--sparkle-light, hsl(217, 91%, 90%)) var(--sparkle-dark, hsl(217, 91%, 15%));--primary-3:var(--sparkle-light, hsl(217, 91%, 85%)) var(--sparkle-dark, hsl(217, 91%, 22.5%));--primary-4:var(--sparkle-light, hsl(217, 91%, 80%)) var(--sparkle-dark, hsl(217, 91%, 30%));--primary-5:var(--sparkle-light, hsl(217, 91%, 75%)) var(--sparkle-dark, hsl(217, 91%, 37.5%));--primary-6:var(--sparkle-light, hsl(217, 91%, 70%)) var(--sparkle-dark, hsl(217, 91%, 45%));--primary-7:var(--sparkle-light, hsl(217, 91%, 65%)) var(--sparkle-dark, hsl(217, 91%, 52.5%));--primary-8:var(--sparkle-light, hsl(217, 91%, 60%)) var(--sparkle-dark, hsl(217, 91%, 60%));--primary-9:var(--sparkle-light, hsl(217, 91%, 46.5%)) var(--sparkle-dark, hsl(217, 91%, 70%));--primary-10:var(--sparkle-light, hsl(217, 91%, 33%)) var(--sparkle-dark, hsl(217, 91%, 80%));--primary-11:var(--sparkle-light, hsl(217, 91%, 19.5%)) var(--sparkle-dark, hsl(217, 91%, 90%));--primary-12:var(--sparkle-light, hsl(217, 91%, 6%)) var(--sparkle-dark, hsl(217, 91%, 100%));--primary-g2:linear-gradient(180deg, hsl(217, 91%, 70%) 0%, hsl(217, 91%, 60%) 50%);--primary-g3:linear-gradient(180deg, hsl(217, 91%, 80%) 0%, hsl(217, 91%, 60%) 50%);--accent-1:var(--sparkle-light, hsl(258, 90%, 95.75%)) var(--sparkle-dark, hsl(258, 90%, 9.25%));--accent-2:var(--sparkle-light, hsl(258, 90%, 91.5%)) var(--sparkle-dark, hsl(258, 90%, 16.5%));--accent-3:var(--sparkle-light, hsl(258, 90%, 87.25%)) var(--sparkle-dark, hsl(258, 90%, 24.75%));--accent-4:var(--sparkle-light, hsl(258, 90%, 83%)) var(--sparkle-dark, hsl(258, 90%, 33%));--accent-5:var(--sparkle-light, hsl(258, 90%, 78.75%)) var(--sparkle-dark, hsl(258, 90%, 41.25%));--accent-6:var(--sparkle-light, hsl(258, 90%, 74.5%)) var(--sparkle-dark, hsl(258, 90%, 49.5%));--accent-7:var(--sparkle-light, hsl(258, 90%, 70.25%)) var(--sparkle-dark, hsl(258, 90%, 57.75%));--accent-8:var(--sparkle-light, hsl(258, 90%, 66%)) var(--sparkle-dark, hsl(258, 90%, 66%));--accent-9:var(--sparkle-light, hsl(258, 90%, 51.15%)) var(--sparkle-dark, hsl(258, 90%, 74.5%));--accent-10:var(--sparkle-light, hsl(258, 90%, 36.3%)) var(--sparkle-dark, hsl(258, 90%, 83%));--accent-11:var(--sparkle-light, hsl(258, 90%, 21.45%)) var(--sparkle-dark, hsl(258, 90%, 91.5%));--accent-12:var(--sparkle-light, hsl(258, 90%, 6.6%)) var(--sparkle-dark, hsl(258, 90%, 100%));--accent-g2:linear-gradient(180deg, hsl(258, 90%, 74.5%) 0%, hsl(258, 90%, 66%) 50%);--accent-g3:linear-gradient(180deg, hsl(258, 90%, 83%) 0%, hsl(258, 90%, 66%) 50%);--warn-1:var(--sparkle-light, hsl(37, 92%, 93.75%)) var(--sparkle-dark, hsl(37, 92%, 9.25%));--warn-2:var(--sparkle-light, hsl(37, 92%, 87.5%)) var(--sparkle-dark, hsl(37, 92%, 12.5%));--warn-3:var(--sparkle-light, hsl(37, 92%, 81.25%)) var(--sparkle-dark, hsl(37, 92%, 18.75%));--warn-4:var(--sparkle-light, hsl(37, 92%, 75%)) var(--sparkle-dark, hsl(37, 92%, 25%));--warn-5:var(--sparkle-light, hsl(37, 92%, 68.75%)) var(--sparkle-dark, hsl(37, 92%, 31.25%));--warn-6:var(--sparkle-light, hsl(37, 92%, 62.5%)) var(--sparkle-dark, hsl(37, 92%, 37.5%));--warn-7:var(--sparkle-light, hsl(37, 92%, 56.25%)) var(--sparkle-dark, hsl(37, 92%, 43.75%));--warn-8:var(--sparkle-light, hsl(37, 92%, 50%)) var(--sparkle-dark, hsl(37, 92%, 50%));--warn-9:var(--sparkle-light, hsl(37, 92%, 38.75%)) var(--sparkle-dark, hsl(37, 92%, 62.5%));--warn-10:var(--sparkle-light, hsl(37, 92%, 27.5%)) var(--sparkle-dark, hsl(37, 92%, 75%));--warn-11:var(--sparkle-light, hsl(37, 92%, 16.25%)) var(--sparkle-dark, hsl(37, 92%, 87.5%));--warn-12:var(--sparkle-light, hsl(37, 92%, 5%)) var(--sparkle-dark, hsl(37, 92%, 100%));--warn-g2:linear-gradient(180deg, hsl(37, 92%, 62.5%) 0%, hsl(37, 92%, 50%) 50%);--warn-g3:linear-gradient(180deg, hsl(37, 92%, 75%) 0%, hsl(37, 92%, 50%) 50%);--error-1:var(--sparkle-light, hsl(0, 84%, 95%)) var(--sparkle-dark, hsl(0, 84%, 7.5%));--error-2:var(--sparkle-light, hsl(0, 84%, 90%)) var(--sparkle-dark, hsl(0, 84%, 15%));--error-3:var(--sparkle-light, hsl(0, 84%, 85%)) var(--sparkle-dark, hsl(0, 84%, 22.5%));--error-4:var(--sparkle-light, hsl(0, 84%, 80%)) var(--sparkle-dark, hsl(0, 84%, 30%));--error-5:var(--sparkle-light, hsl(0, 84%, 75%)) var(--sparkle-dark, hsl(0, 27%, 10%));--error-6:var(--sparkle-light, hsl(0, 84%, 70%)) var(--sparkle-dark, hsl(0, 84%, 45%));--error-7:var(--sparkle-light, hsl(0, 84%, 65%)) var(--sparkle-dark, hsl(0, 84%, 52.5%));--error-8:var(--sparkle-light, hsl(0, 84%, 60%)) var(--sparkle-dark, hsl(0, 84%, 60%));--error-9:var(--sparkle-light, hsl(0, 84%, 46.5%)) var(--sparkle-dark, hsl(0, 84%, 70%));--error-10:var(--sparkle-light, hsl(0, 84%, 33%)) var(--sparkle-dark, hsl(0, 84%, 80%));--error-11:var(--sparkle-light, hsl(0, 84%, 19.5%)) var(--sparkle-dark, hsl(0, 84%, 90%));--error-12:var(--sparkle-light, hsl(0, 84%, 6%)) var(--sparkle-dark, hsl(0, 84%, 100%));--error-g2:linear-gradient(180deg, hsl(0, 84%, 70%) 0%, hsl(0, 84%, 60%) 50%);--error-g3:linear-gradient(180deg, hsl(0, 84%, 80%) 0%, hsl(0, 84%, 60%) 50%);--success-1:var(--sparkle-light, hsl(160, 84%, 92.38%)) var(--sparkle-dark, hsl(160, 84%, 7.88%));--success-2:var(--sparkle-light, hsl(160, 84%, 84.75%)) var(--sparkle-dark, hsl(160, 3%, 17%));--success-3:var(--sparkle-light, hsl(160, 84%, 77.13%)) var(--sparkle-dark, hsl(160, 84%, 14.63%));--success-4:var(--sparkle-light, hsl(160, 84%, 69.5%)) var(--sparkle-dark, hsl(160, 84%, 19.5%));--success-5:var(--sparkle-light, hsl(160, 84%, 61.88%)) var(--sparkle-dark, hsl(160, 84%, 24.38%));--success-6:var(--sparkle-light, hsl(160, 84%, 54.25%)) var(--sparkle-dark, hsl(160, 84%, 29.25%));--success-7:var(--sparkle-light, hsl(160, 84%, 46.63%)) var(--sparkle-dark, hsl(160, 84%, 34.13%));--success-8:var(--sparkle-light, hsl(160, 84%, 39%)) var(--sparkle-dark, hsl(160, 84%, 39%));--success-9:var(--sparkle-light, hsl(160, 84%, 30.23%)) var(--sparkle-dark, hsl(160, 84%, 54.25%));--success-10:var(--sparkle-light, hsl(160, 84%, 21.45%)) var(--sparkle-dark, hsl(160, 84%, 69.5%));--success-11:var(--sparkle-light, hsl(160, 84%, 12.67%)) var(--sparkle-dark, hsl(160, 84%, 84.75%));--success-12:var(--sparkle-light, hsl(160, 84%, 3.9%)) var(--sparkle-dark, hsl(160, 84%, 100%));--success-g2:linear-gradient(180deg, hsl(160, 84%, 54.25%) 0%, hsl(160, 84%, 39%) 50%);--success-g3:linear-gradient(180deg, hsl(160, 84%, 69.5%) 0%, hsl(160, 84%, 39%) 50%);--base-1:var(--sparkle-light, #fff) var(--sparkle-dark, hsl(0, 0%, 5.75%));--base-2:var(--sparkle-light, hsl(0, 0%, 98.05%)) var(--sparkle-dark, hsl(0, 0%, 8.75%));--base-3:var(--sparkle-light, hsl(0, 0%, 94.5%)) var(--sparkle-dark, hsl(0, 0%, 11.5%));--base-4:var(--sparkle-light, hsl(0, 0%, 84.75%)) var(--sparkle-dark, hsl(0, 0%, 17.25%));--base-5:var(--sparkle-light, hsl(0, 0%, 79.75%)) var(--sparkle-dark, hsl(0, 0%, 17.25%));--base-6:var(--sparkle-light, hsl(0, 0%, 66.25%)) var(--sparkle-dark, hsl(0, 0%, 28.75%));--base-7:var(--sparkle-light, hsl(0, 0%, 54.5%)) var(--sparkle-dark, hsl(0, 0%, 34.5%));--base-8:var(--sparkle-light, hsl(0, 0%, 46%)) var(--sparkle-dark, hsl(0, 0%, 46%));--base-9:var(--sparkle-light, hsl(0, 0%, 35.65%)) var(--sparkle-dark, hsl(0, 0%, 59.5%));--base-10:var(--sparkle-light, hsl(0, 0%, 25.3%)) var(--sparkle-dark, hsl(0, 0%, 73%));--base-11:var(--sparkle-light, hsl(0, 0%, 14.95%)) var(--sparkle-dark, hsl(0, 0%, 86.5%));--base-12:var(--sparkle-light, hsl(0, 0%, 4.6%)) var(--sparkle-dark, hsl(0, 0%, 100%));--base-g2:linear-gradient(180deg, hsl(0, 0%, 66.25%) 0%, hsl(0, 0%, 46%) 50%);--base-g3:linear-gradient(180deg, hsl(0, 0%, 73%) 0%, hsl(0, 0%, 46%) 50%);--base-g6:linear-gradient(180deg, hsl(0, 0%, 25.3%) 0%, hsl(0, 0%, 14.95%) 50%);--base-g7:linear-gradient(180deg, hsl(0, 0%, 35.65%) 0%, hsl(0, 0%, 14.95%) 50%);--primary-c8:var(--light-text);--accent-c8:var(--light-text);--warn-c8:var(--light-text);--error-c8:var(--light-text);--success-c8:var(--light-text);--display-10:600 5rem / normal Inter Tight, sans-serif;--display-20:600 4.5rem / normal Inter Tight, sans-serif;--display-30:600 4rem / normal Inter Tight, sans-serif;--display-40:600 3.5rem / normal Inter Tight, sans-serif;--display-50:600 3rem / normal Inter Tight, sans-serif;--title-10:500 2.5rem / normal Inter Tight, sans-serif;--title-20:500 2rem / normal Inter Tight, sans-serif;--title-30:500 1.5rem / normal Inter Tight, sans-serif;--title-10B:600 2.5rem / normal Inter Tight, sans-serif;--title-20B:600 2rem / normal Inter Tight, sans-serif;--title-30B:600 1.5rem / normal Inter Tight, sans-serif;--paragraph-10:500 1.125rem / normal Inter Tight, sans-serif;--paragraph-20:500 1rem / normal Inter Tight, sans-serif;--paragraph-30:500 .875rem / normal Inter Tight, sans-serif;--paragraph-40:500 .75rem / normal Inter Tight, sans-serif;--paragraph-10B:600 1.125rem / normal Inter Tight, sans-serif;--paragraph-20B:600 1rem / normal Inter Tight, sans-serif;--paragraph-30B:600 .875rem / 1.125rem Inter Tight, sans-serif;--paragraph-40B:600 .75rem / normal Inter Tight, sans-serif;--code-10:500 1rem / normal monospace;--code-20:500 .875rem / normal monospace;--code-30:500 .75rem / normal monospace;--shape-1:.25rem;--shape-2:.5rem;--shape-3:.75rem;--shape-4:1rem;--shape-5:1.25rem;--box-shadow-10:0 1px 2px 0 rgba(18, 18, 23, .07);--box-shadow-20:0 1px 3px 0 rgba(18, 18, 23, .1);--box-shadow-30:0 1px 4px -1px rgba(18, 18, 23, .08);--box-shadow-35:0 4px 6px -1px rgba(18, 18, 23, .08);--box-shadow-40:0 10px 15px -3px rgba(18, 18, 23, .08);--box-shadow-50:0 20px 25px -5px rgba(18, 18, 23, .1);--box-shadow-60:0 25px 50px -12px rgba(18, 18, 23, .25);--dark-text:#000;--light-text:#fff}*{box-sizing:border-box}html,body,app-root{width:100vw;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--base-2)}body{margin:0;font:var(--paragraph-30);color:var(--base-12)}*::-webkit-scrollbar{width:8px;height:12px;background:transparent}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:#acacac;background:var(--sparkle-light, #acacac) var(--sparkle-dark, #4f4f4f);border-radius:50px;border:3px solid transparent;border-left-width:1px;border-right-width:2px;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background-color:#888}.loading{position:relative}.loading:before{content:"";width:1rem;height:1rem;border:2px solid var(--loader-c);border-bottom-color:transparent;border-radius:50%;display:flex;box-sizing:border-box;animation:rotation 1s linear infinite;margin:auto;inset:0;position:absolute}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}</style><link rel="stylesheet" href="styles-P2AEFLUS.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles-P2AEFLUS.css"></noscript></head>
63
63
  <body>
64
64
  <app-root></app-root>
65
65
  <div class="loading">Connecting ...</div>
66
- <link rel="modulepreload" href="chunk-XYMSYNUD.js"><link rel="modulepreload" href="chunk-F2GEUOGZ.js"><link rel="modulepreload" href="chunk-N2MDNESH.js"><link rel="modulepreload" href="chunk-MU24KCIK.js"><link rel="modulepreload" href="chunk-TRR5XEEM.js"><link rel="modulepreload" href="chunk-FJVMA6GA.js"><link rel="modulepreload" href="chunk-BIZAKOYU.js"><link rel="modulepreload" href="chunk-RHW5QVAY.js"><link rel="modulepreload" href="chunk-HFIC4JNY.js"><link rel="modulepreload" href="chunk-BJGA55H2.js"><script src="polyfills-6QHLTIIN.js" type="module"></script><script src="main-I7BOOCNM.js" type="module"></script></body>
66
+ <link rel="modulepreload" href="chunk-OEIF7NQ5.js"><link rel="modulepreload" href="chunk-WZRSQ7XL.js"><link rel="modulepreload" href="chunk-HTX2RSBS.js"><link rel="modulepreload" href="chunk-OHZGASM5.js"><link rel="modulepreload" href="chunk-65UN5LE6.js"><link rel="modulepreload" href="chunk-WFM6YWRN.js"><link rel="modulepreload" href="chunk-3AIKVVWP.js"><link rel="modulepreload" href="chunk-RHW5QVAY.js"><link rel="modulepreload" href="chunk-RSZISHXB.js"><link rel="modulepreload" href="chunk-ZQSBINUM.js"><script src="polyfills-6QHLTIIN.js" type="module"></script><script src="main-PDJMO4FF.js" type="module"></script></body>
67
67
  </html>
@@ -1 +1 @@
1
- import{b as ye,c as be}from"./chunk-XYMSYNUD.js";import{a as L}from"./chunk-F2GEUOGZ.js";import{a as ue}from"./chunk-N2MDNESH.js";import{a as I}from"./chunk-MU24KCIK.js";import"./chunk-TRR5XEEM.js";import"./chunk-FJVMA6GA.js";import"./chunk-BIZAKOYU.js";import{a as x}from"./chunk-RHW5QVAY.js";import{a as me}from"./chunk-HFIC4JNY.js";import{a as v,b as de,c as E}from"./chunk-BJGA55H2.js";import{a as C}from"./chunk-XP7PWMT2.js";import{c as se,d as ie,g as ae,h as pe}from"./chunk-C6XTRC7P.js";import{a as re}from"./chunk-MAVZY7BL.js";import{c as ce}from"./chunk-SL6SRYFT.js";import{a as Z,b as ee,d as te,e as oe,f as ne,i as le}from"./chunk-S5EF63OY.js";import{a as fe}from"./chunk-JFNFY6VY.js";import{pa as Q,ua as Y}from"./chunk-7L2WUS2V.js";import{a as ge}from"./chunk-45NW2WR4.js";import{b as he}from"./chunk-DOP6RFEG.js";import{A as N,B as F,Ec as z,F as w,Fb as _,Fc as q,L as G,N as T,P as J,Pc as X,T as k,W as B,Z as s,f as W,gb as K,i as j,ka as $,n as D,o as U,r as R,va as d}from"./chunk-L72ALLHJ.js";import"./chunk-7CGTOI24.js";var M=class t{#o=s(C);#s=s(v);ngOnInit(){this.#s.fetchConfig(),this.#o.clearAllNotCurrentVersion()}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=K({type:t,selectors:[["app-root"]],decls:1,vars:0,template:function(o,n){o&1&&_(0,"router-outlet")},dependencies:[se],encapsulation:2})};var ve={production:!0,baseUrl:"/api",machineServerUrl:"${WS_URL}",defaultTimeout:3e4};var h=new B("ENVIRONMENT");var A=class t{#o=s(le);isLoaded=d(!1);webmodules=d(null);preload(e=!1){let o=this.#o.getApiV1Webmodules().pipe(J(n=>this.webmodules.set(n)),w(()=>this.isLoaded.set(!0)));if(e)return o;o.subscribe()}static \u0275fac=function(o){return new(o||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})};var Ie=()=>{let t=s(E);return t.token()?!0:t.checkProxyAuthed().pipe(T(e=>e?D(!0):t.refreshToken().pipe(R(()=>!0))))},Me=()=>{let t=s(v),e=s(I),o=s($),n=t.relayIsEnabled()?"longpoll":"websocket",i=[o.get(L).preload(!0),o.get(L).preloadFilterGroups(!0),o.get(A).preload(!0)];return t.configLoaded===null?N(i).pipe(R(()=>n)):t.configLoaded?.pipe(T(()=>N(i)))},Se=[{path:"",children:[{path:"login",canActivate:[],loadComponent:()=>import("./chunk-5BHYO5SK.js")},{path:"logout",loadComponent:()=>import("./chunk-F7E55RI6.js")},{path:"",canActivate:[Ie],children:[{path:"",canActivate:[Me],loadComponent:()=>import("./chunk-O445WX5K.js"),children:[{path:"",loadComponent:()=>import("./chunk-COT4PUVO.js")},{path:"add-backup",loadComponent:()=>import("./chunk-M7ENBMEW.js")},{path:"backup/:id/export",loadComponent:()=>import("./chunk-HWBBTXU3.js")},{path:"backup/import",loadComponent:()=>import("./chunk-YTDBBO6I.js")},{path:"backup-draft/:id",loadComponent:()=>import("./chunk-2GCIICW5.js"),loadChildren:()=>import("./chunk-CCJ5LW7S.js")},{path:"backup/:id",loadComponent:()=>import("./chunk-2GCIICW5.js"),loadChildren:()=>import("./chunk-CCJ5LW7S.js")},{path:"backup/:id/log",loadComponent:()=>import("./chunk-I5SC52QU.js")},{path:"backup/:id/database",loadComponent:()=>import("./chunk-PVLYH62N.js")},{path:"backup/:id/commandline",loadComponent:()=>import("./chunk-42DBG4A6.js")},{path:"backup/:id/commandline/:runId",loadComponent:()=>import("./chunk-JE3JBXTZ.js")},{path:"restore",children:[{path:"",loadComponent:()=>import("./chunk-GWVX5STR.js")},{path:"from-config",loadComponent:()=>import("./chunk-XZ7HNUSV.js")}]},{path:"restore-from-files",loadComponent:()=>import("./chunk-3GYZOEPN.js"),loadChildren:()=>import("./chunk-3PDXD5UG.js")},{path:"restore-draft/:id",loadComponent:()=>import("./chunk-3GYZOEPN.js"),loadChildren:()=>import("./chunk-3PDXD5UG.js")},{path:"restore/:id",loadComponent:()=>import("./chunk-3GYZOEPN.js"),loadChildren:()=>import("./chunk-3PDXD5UG.js")},{path:"settings",loadComponent:()=>import("./chunk-FBX4Q2XW.js")},{path:"about",loadComponent:()=>import("./chunk-NIBE7CI2.js"),children:[{path:"",redirectTo:"general",pathMatch:"full"},{path:"general",loadComponent:()=>import("./chunk-476PQHLI.js")},{path:"changelog",loadComponent:()=>import("./chunk-IK7CPFZB.js")},{path:"libraries",loadComponent:()=>import("./chunk-ZRFL62SL.js")},{path:"system-info",loadComponent:()=>import("./chunk-VJQVHIW5.js")},{path:"server-settings",loadComponent:()=>import("./chunk-TRCPJYNH.js")},{path:"logs",loadChildren:()=>import("./chunk-XL7YUTMF.js")},{path:"crashlogs",loadComponent:()=>import("./chunk-YCAQITZE.js")}]}]}]}]}];var P=null,Re=(t,e)=>{let o=s(E),n=s(ie),i=s(C),l=s(h),r=i.getItem("locale"),u=s(ce),a=ye(r),p=t.url==="/api/v1/auth/login",m=t.url==="/api/v1/auth/refresh",S=t.url==="/api/v1/progressstate",g=t.url==="/api/v1/remoteoperation/test",y=t.url.startsWith("/api/v2/"),b=o.token(),H=t,V=t.headers.has("custom-proxy-check")||b===de;if(b&&t.url.startsWith(l.baseUrl)&&!V){let c=t.headers.set("Authorization",`Bearer ${b}`);r&&r!=="en-US"&&(c=c.set("X-Ui-Language",a)),H=t.clone({headers:c})}return e(H).pipe(R(c=>{if(c.type===4&&c.status===200&&y){let f=c.body;if(f?.Success===!1)throw{status:200,message:f?.Error??"Unknown error",error:{Error:f?.Error??"Unknown error"},body:f}}return c}),F(c=>{let f=c.error?.Error||`Error Code: ${c.status}, Message: ${c.message}`;return!V&&(S&&c.status===404||g||u.error(f),m&&c.status===401&&(o.logout(),n.navigate(["/logout"])),!p&&!m&&c.status===401)?(P??=o.refreshToken().pipe(G()),P.pipe(T(()=>e(t.clone({headers:t.headers.set("Authorization",`Bearer ${o.token()}`)}))),w(()=>P=null))):U(()=>({error:c,message:f}))}))};var Ae="1.0.0",Te=`portal-proxy-client-${x()}`,Oe=1,O=class t{#o=1e3;#s=s(h);#t=d("disconnected");#l=d(this.#o);#i=d(!1);#n=d(!1);#a=d(null);isConnectedToMachineServer=this.#n.asReadonly();wsState=this.#t.asReadonly();#p=[];#r={};#e=null;#m=new TextDecoder("utf-8");#c=null;#d=X(()=>{let e=this.#i(),o=this.#l(),n=this.#a();if(!n||!e||!o||o<this.#o){this.#c&&window.clearInterval(this.#c);return}this.#c=window.setInterval(()=>{this.connectToMachineServer(n)},o)});utf8Atob(e){let o=Uint8Array.from(atob(e),i=>i.charCodeAt(0)),n=this.#m.decode(o);return n?JSON.parse(n):null}connectToMachineServer(e,o){let n=o?.reconnect??!1,i=this.wsState();(i==="disconnected"||i==="error"||n)&&(this.#e?.close(),this.#e=null),!this.#e&&(this.#e=new WebSocket(this.#s.machineServerUrl),this.#t.set("connecting"),this.#e.onopen=()=>{this.#t.set("connect"),this.#n.set(!0),this.#i.set(!1),this.#a.set(null)},this.#e.onclose=()=>{this.#t.set("disconnected"),this.#n.set(!1),this.#a.set(e),this.#i.set(!0)},this.#e.onerror=()=>{this.#t.set("error")},this.#e.onmessage=l=>{let r=JSON.parse(l.data);if(this.wsState()==="connect"){if(r.type!=="welcome"){this.disconnectFromMachineServer(`Unexpected message type, expected 'welcome' but got '${r.type}'`);return}let a={token:e,publicKey:"",clientVersion:Ae,protocolVersion:Oe},p=this.createResponse(r,"authportal",a);this.#t.set("welcome"),this.#e?.send(p)}else if(this.wsState()==="welcome"){if(r.type!=="authportal"){this.disconnectFromMachineServer(`Unexpected message type, expected 'authportal' but got '${r.type}'`);return}var u=JSON.parse(r.payload??"");if(u.accepted===!1){this.disconnectFromMachineServer("Authentication failed");return}for(this.#t.set("authenticated"),this.#n.set(!0);this.#p.length>0;){let a=this.#p.pop();a&&this.#r[a.messageId]&&this.activateCommand(a)}}else if(this.wsState()==="authenticated"){if(r.type!=="command"){console.warn(`Unexpected message type, expected 'command' but got '${r.type}'`);return}let a=this.#r[r.messageId];if(a){if(r.errorMessage){a.reject(r.errorMessage);return}else{let p=JSON.parse(r.payload??"");p.body=p?.body==null?null:this.utf8Atob(p.body),a.resolve(p)}delete this.#r[r.messageId],window.clearTimeout(a.timer)}}})}disconnectFromMachineServer(e=null){e&&console.error(e),this.#e?.close(),this.#e=null,this.#t.set("disconnected"),this.#n.set(!1)}createResponse(e,o,n){let i={from:Te,to:e.from,type:o,messageId:e.messageId,payload:JSON.stringify(n)};return JSON.stringify(i)}sendCommand(e,o,n,i,l,r,u=5e3){return(this.wsState()==="disconnected"||this.wsState()==="error")&&this.connectToMachineServer(e),new Promise((a,p)=>{let m=x(),g={from:Te,to:o,type:"command",messageId:m,payload:JSON.stringify({method:n,path:i,body:l,headers:r})},y={resolve:a,reject:p,timer:window.setTimeout(()=>{let b=this.#r[m];b&&(delete this.#r[m],b.reject("Timeout"))},u)};this.#r[m]=y,this.#n()?this.activateCommand(g):this.#p.push(g)})}activateCommand(e){this.#e?.send(JSON.stringify(e))}static \u0275fac=function(o){return new(o||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})};function Ne(t){if(typeof t!="string")return null;let o=new TextEncoder().encode(t);return window.btoa(String.fromCharCode(...o))}function we(t,e,o){let n=t.relayconfigState.config();if(n===null)return o(e);let i=Ne(e.body),l={};e.headers.keys().forEach(p=>{l[p]=e.headers.get(p)??""});let r=e.headers.get("timeout"),u=r!==null?parseInt(r):t.defaultTimeout;e.url.startsWith("/api/v1/serverstate")&&e.url.includes("longpoll=true")&&(u=1e3*99);let a=t.relayWebsocket.sendCommand(n.accessToken,n.clientId,e.method,e.url,i,l,u);return new W(p=>{a.then(m=>{let S=new Z;l!=null&&Object.keys(l).forEach(y=>{S.set(y,l[y])});let g=new ee({body:m.body,status:m.code,statusText:"OK",headers:S});p.next(g),p.complete()})})}var ke=(t,e)=>{let o={relayconfigState:s(v),defaultTimeout:s(h).defaultTimeout,relayWebsocket:s(O)},n=o.relayconfigState.config();if(o.relayconfigState.configLoaded!==null&&n===null){let i=new j;return o.relayconfigState.configLoaded.subscribe(l=>{l&&we(o,t,e).subscribe(i)}),i}return we(o,t,e)};var Ee={providers:[z(),ae(Se,pe()),te(ne(),oe([ke,Re])),C,{provide:h,useValue:ve},{provide:q,useValue:be()},ue,I,he,Y,me,Q,fe,ge]};re(M,Ee);
1
+ import{b as ye,c as be}from"./chunk-OEIF7NQ5.js";import{a as L}from"./chunk-WZRSQ7XL.js";import{a as ue}from"./chunk-HTX2RSBS.js";import{a as I}from"./chunk-OHZGASM5.js";import"./chunk-65UN5LE6.js";import"./chunk-WFM6YWRN.js";import"./chunk-3AIKVVWP.js";import{a as x}from"./chunk-RHW5QVAY.js";import{a as me}from"./chunk-RSZISHXB.js";import{a as v,b as de,c as E}from"./chunk-ZQSBINUM.js";import{a as C}from"./chunk-3XVU2YA6.js";import{c as se,d as ie,g as ae,h as pe}from"./chunk-5LKXKKAK.js";import{a as re}from"./chunk-HFNFJ7G2.js";import{c as ce}from"./chunk-AL5KGNEF.js";import{a as Z,b as ee,d as te,e as oe,f as ne,i as le}from"./chunk-FRSQ5NDX.js";import{a as fe}from"./chunk-RHII5WE3.js";import{pa as Q,ua as Y}from"./chunk-M3WT5B3C.js";import{a as ge}from"./chunk-2P3DXYGR.js";import{b as he}from"./chunk-TCDECRYI.js";import{A as N,B as F,F as w,Fb as _,Fc as z,Gc as q,L as G,N as T,P as J,Qc as X,T as k,W as B,Z as s,f as W,gb as K,i as j,ka as $,n as D,o as U,r as R,va as d}from"./chunk-AHUC7M75.js";import"./chunk-7CGTOI24.js";var M=class t{#o=s(C);#s=s(v);ngOnInit(){this.#s.fetchConfig(),this.#o.clearAllNotCurrentVersion()}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=K({type:t,selectors:[["app-root"]],decls:1,vars:0,template:function(o,n){o&1&&_(0,"router-outlet")},dependencies:[se],encapsulation:2})};var ve={production:!0,baseUrl:"/api",machineServerUrl:"${WS_URL}",defaultTimeout:3e4};var h=new B("ENVIRONMENT");var A=class t{#o=s(le);isLoaded=d(!1);webmodules=d(null);preload(e=!1){let o=this.#o.getApiV1Webmodules().pipe(J(n=>this.webmodules.set(n)),w(()=>this.isLoaded.set(!0)));if(e)return o;o.subscribe()}static \u0275fac=function(o){return new(o||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})};var Ie=()=>{let t=s(E);return t.token()?!0:t.checkProxyAuthed().pipe(T(e=>e?D(!0):t.refreshToken().pipe(R(()=>!0))))},Me=()=>{let t=s(v),e=s(I),o=s($),n=t.relayIsEnabled()?"longpoll":"websocket",i=[o.get(L).preload(!0),o.get(L).preloadFilterGroups(!0),o.get(A).preload(!0)];return t.configLoaded===null?N(i).pipe(R(()=>n)):t.configLoaded?.pipe(T(()=>N(i)))},Se=[{path:"",children:[{path:"login",canActivate:[],loadComponent:()=>import("./chunk-UXUVYBYP.js")},{path:"logout",loadComponent:()=>import("./chunk-UABJ67OY.js")},{path:"",canActivate:[Ie],children:[{path:"",canActivate:[Me],loadComponent:()=>import("./chunk-HXN7IX3Q.js"),children:[{path:"",loadComponent:()=>import("./chunk-MUBWT5H2.js")},{path:"add-backup",loadComponent:()=>import("./chunk-BAX2AJJJ.js")},{path:"backup/:id/export",loadComponent:()=>import("./chunk-K5C3JCVH.js")},{path:"backup/import",loadComponent:()=>import("./chunk-4YUBZYBH.js")},{path:"backup-draft/:id",loadComponent:()=>import("./chunk-4FUHLIJW.js"),loadChildren:()=>import("./chunk-ADO3ABTT.js")},{path:"backup/:id",loadComponent:()=>import("./chunk-4FUHLIJW.js"),loadChildren:()=>import("./chunk-ADO3ABTT.js")},{path:"backup/:id/log",loadComponent:()=>import("./chunk-DX6BDDDV.js")},{path:"backup/:id/database",loadComponent:()=>import("./chunk-YY3JAYQZ.js")},{path:"backup/:id/commandline",loadComponent:()=>import("./chunk-4RIDBZOK.js")},{path:"backup/:id/commandline/:runId",loadComponent:()=>import("./chunk-CPTR6AJI.js")},{path:"restore",children:[{path:"",loadComponent:()=>import("./chunk-3KUVV3SB.js")},{path:"from-config",loadComponent:()=>import("./chunk-AACJQG7X.js")}]},{path:"restore-from-files",loadComponent:()=>import("./chunk-7NBGN46A.js"),loadChildren:()=>import("./chunk-W4RKRM2O.js")},{path:"restore-draft/:id",loadComponent:()=>import("./chunk-7NBGN46A.js"),loadChildren:()=>import("./chunk-W4RKRM2O.js")},{path:"restore/:id",loadComponent:()=>import("./chunk-7NBGN46A.js"),loadChildren:()=>import("./chunk-W4RKRM2O.js")},{path:"settings",loadComponent:()=>import("./chunk-PHIZVVHX.js")},{path:"about",loadComponent:()=>import("./chunk-NPZU4SBS.js"),children:[{path:"",redirectTo:"general",pathMatch:"full"},{path:"general",loadComponent:()=>import("./chunk-6KSS7VQS.js")},{path:"changelog",loadComponent:()=>import("./chunk-2SQBD7LN.js")},{path:"libraries",loadComponent:()=>import("./chunk-2GE6FFGI.js")},{path:"system-info",loadComponent:()=>import("./chunk-ELZWH543.js")},{path:"server-settings",loadComponent:()=>import("./chunk-WU3ALGNP.js")},{path:"logs",loadChildren:()=>import("./chunk-QVNFX6ZC.js")},{path:"crashlogs",loadComponent:()=>import("./chunk-SSJ4VQB4.js")}]}]}]}]}];var P=null,Re=(t,e)=>{let o=s(E),n=s(ie),i=s(C),l=s(h),r=i.getItem("locale"),u=s(ce),a=ye(r),p=t.url==="/api/v1/auth/login",m=t.url==="/api/v1/auth/refresh",S=t.url==="/api/v1/progressstate",g=t.url==="/api/v1/remoteoperation/test",y=t.url.startsWith("/api/v2/"),b=o.token(),H=t,V=t.headers.has("custom-proxy-check")||b===de;if(b&&t.url.startsWith(l.baseUrl)&&!V){let c=t.headers.set("Authorization",`Bearer ${b}`);r&&r!=="en-US"&&(c=c.set("X-Ui-Language",a)),H=t.clone({headers:c})}return e(H).pipe(R(c=>{if(c.type===4&&c.status===200&&y){let f=c.body;if(f?.Success===!1)throw{status:200,message:f?.Error??"Unknown error",error:{Error:f?.Error??"Unknown error"},body:f}}return c}),F(c=>{let f=c.error?.Error||`Error Code: ${c.status}, Message: ${c.message}`;return!V&&(S&&c.status===404||g||u.error(f),m&&c.status===401&&(o.logout(),n.navigate(["/logout"])),!p&&!m&&c.status===401)?(P??=o.refreshToken().pipe(G()),P.pipe(T(()=>e(t.clone({headers:t.headers.set("Authorization",`Bearer ${o.token()}`)}))),w(()=>P=null))):U(()=>({error:c,message:f}))}))};var Ae="1.0.0",Te=`portal-proxy-client-${x()}`,Oe=1,O=class t{#o=1e3;#s=s(h);#t=d("disconnected");#l=d(this.#o);#i=d(!1);#n=d(!1);#a=d(null);isConnectedToMachineServer=this.#n.asReadonly();wsState=this.#t.asReadonly();#p=[];#r={};#e=null;#m=new TextDecoder("utf-8");#c=null;#d=X(()=>{let e=this.#i(),o=this.#l(),n=this.#a();if(!n||!e||!o||o<this.#o){this.#c&&window.clearInterval(this.#c);return}this.#c=window.setInterval(()=>{this.connectToMachineServer(n)},o)});utf8Atob(e){let o=Uint8Array.from(atob(e),i=>i.charCodeAt(0)),n=this.#m.decode(o);return n?JSON.parse(n):null}connectToMachineServer(e,o){let n=o?.reconnect??!1,i=this.wsState();(i==="disconnected"||i==="error"||n)&&(this.#e?.close(),this.#e=null),!this.#e&&(this.#e=new WebSocket(this.#s.machineServerUrl),this.#t.set("connecting"),this.#e.onopen=()=>{this.#t.set("connect"),this.#n.set(!0),this.#i.set(!1),this.#a.set(null)},this.#e.onclose=()=>{this.#t.set("disconnected"),this.#n.set(!1),this.#a.set(e),this.#i.set(!0)},this.#e.onerror=()=>{this.#t.set("error")},this.#e.onmessage=l=>{let r=JSON.parse(l.data);if(this.wsState()==="connect"){if(r.type!=="welcome"){this.disconnectFromMachineServer(`Unexpected message type, expected 'welcome' but got '${r.type}'`);return}let a={token:e,publicKey:"",clientVersion:Ae,protocolVersion:Oe},p=this.createResponse(r,"authportal",a);this.#t.set("welcome"),this.#e?.send(p)}else if(this.wsState()==="welcome"){if(r.type!=="authportal"){this.disconnectFromMachineServer(`Unexpected message type, expected 'authportal' but got '${r.type}'`);return}var u=JSON.parse(r.payload??"");if(u.accepted===!1){this.disconnectFromMachineServer("Authentication failed");return}for(this.#t.set("authenticated"),this.#n.set(!0);this.#p.length>0;){let a=this.#p.pop();a&&this.#r[a.messageId]&&this.activateCommand(a)}}else if(this.wsState()==="authenticated"){if(r.type!=="command"){console.warn(`Unexpected message type, expected 'command' but got '${r.type}'`);return}let a=this.#r[r.messageId];if(a){if(r.errorMessage){a.reject(r.errorMessage);return}else{let p=JSON.parse(r.payload??"");p.body=p?.body==null?null:this.utf8Atob(p.body),a.resolve(p)}delete this.#r[r.messageId],window.clearTimeout(a.timer)}}})}disconnectFromMachineServer(e=null){e&&console.error(e),this.#e?.close(),this.#e=null,this.#t.set("disconnected"),this.#n.set(!1)}createResponse(e,o,n){let i={from:Te,to:e.from,type:o,messageId:e.messageId,payload:JSON.stringify(n)};return JSON.stringify(i)}sendCommand(e,o,n,i,l,r,u=5e3){return(this.wsState()==="disconnected"||this.wsState()==="error")&&this.connectToMachineServer(e),new Promise((a,p)=>{let m=x(),g={from:Te,to:o,type:"command",messageId:m,payload:JSON.stringify({method:n,path:i,body:l,headers:r})},y={resolve:a,reject:p,timer:window.setTimeout(()=>{let b=this.#r[m];b&&(delete this.#r[m],b.reject("Timeout"))},u)};this.#r[m]=y,this.#n()?this.activateCommand(g):this.#p.push(g)})}activateCommand(e){this.#e?.send(JSON.stringify(e))}static \u0275fac=function(o){return new(o||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})};function Ne(t){if(typeof t!="string")return null;let o=new TextEncoder().encode(t);return window.btoa(String.fromCharCode(...o))}function we(t,e,o){let n=t.relayconfigState.config();if(n===null)return o(e);let i=Ne(e.body),l={};e.headers.keys().forEach(p=>{l[p]=e.headers.get(p)??""});let r=e.headers.get("timeout"),u=r!==null?parseInt(r):t.defaultTimeout;e.url.startsWith("/api/v1/serverstate")&&e.url.includes("longpoll=true")&&(u=1e3*99);let a=t.relayWebsocket.sendCommand(n.accessToken,n.clientId,e.method,e.url,i,l,u);return new W(p=>{a.then(m=>{let S=new Z;l!=null&&Object.keys(l).forEach(y=>{S.set(y,l[y])});let g=new ee({body:m.body,status:m.code,statusText:"OK",headers:S});p.next(g),p.complete()})})}var ke=(t,e)=>{let o={relayconfigState:s(v),defaultTimeout:s(h).defaultTimeout,relayWebsocket:s(O)},n=o.relayconfigState.config();if(o.relayconfigState.configLoaded!==null&&n===null){let i=new j;return o.relayconfigState.configLoaded.subscribe(l=>{l&&we(o,t,e).subscribe(i)}),i}return we(o,t,e)};var Ee={providers:[z(),ae(Se,pe()),te(ne(),oe([ke,Re])),C,{provide:h,useValue:ve},{provide:q,useValue:be()},ue,I,he,Y,me,Q,fe,ge]};re(M,Ee);
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.0.118",
2
+ "version": "0.0.119",
3
3
  "name": "@duplicati/ngclient",
4
4
  "license": "MIT",
5
5
  "contributors": [