@duplicati/ngclient 0.0.159 → 0.0.160
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.
- package/{chunk-BQJICFF5.js → chunk-2J4H7C6W.js} +1 -1
- package/{chunk-2ZGJS4OW.js → chunk-4OBQWIWP.js} +1 -1
- package/{chunk-QNM5CG4Z.js → chunk-4XH2XMUL.js} +1 -1
- package/{chunk-KT7U3QIP.js → chunk-5EOS64VG.js} +1 -1
- package/{chunk-MGTRQOF6.js → chunk-66TRUOH6.js} +1 -1
- package/{chunk-VXRNST6C.js → chunk-7RM3VKDO.js} +1 -1
- package/{chunk-U2Y2D6MA.js → chunk-DQGMVICD.js} +1 -1
- package/{chunk-KAAYNQ7L.js → chunk-DUHMJQLC.js} +1 -1
- package/{chunk-2WGW24ZH.js → chunk-EKL66TNH.js} +1 -1
- package/{chunk-D6KZSKI7.js → chunk-ERFIISF6.js} +1 -1
- package/{chunk-XUIDYG2O.js → chunk-EWLAEWGN.js} +1 -1
- package/{chunk-PQSZLHZR.js → chunk-GNKFIYOX.js} +1 -1
- package/chunk-GZ4YKLCY.js +1 -0
- package/{chunk-4IIDZXFC.js → chunk-IXN3WMCO.js} +1 -1
- package/{chunk-XX3WLO55.js → chunk-JTSI7UN4.js} +1 -1
- package/chunk-K6V2N3GS.js +1 -0
- package/{chunk-K3ILN56U.js → chunk-KATY4JFV.js} +1 -1
- package/chunk-LVTEOKA4.js +1 -0
- package/{chunk-PUNIQ3JW.js → chunk-MBRRLME5.js} +1 -1
- package/{chunk-OKDVOGSM.js → chunk-OQ3CIW34.js} +1 -1
- package/{chunk-GDQZEB3A.js → chunk-OXKNUQ4S.js} +1 -1
- package/{chunk-FNJU5CD3.js → chunk-RFQCUMV5.js} +1 -1
- package/{chunk-DW7A6PHZ.js → chunk-RZVBW5HI.js} +1 -1
- package/{chunk-RZKDEJUP.js → chunk-SDXU6VMB.js} +1 -1
- package/{chunk-7JHF4R5J.js → chunk-TDJOG66Y.js} +1 -1
- package/{chunk-ZDME3W57.js → chunk-TIGMPMCF.js} +1 -1
- package/{chunk-2S6ABLBU.js → chunk-TX6PGD4I.js} +1 -1
- package/{chunk-A2LUC3NC.js → chunk-TYUEMPMP.js} +1 -1
- package/{chunk-CHYEYO6L.js → chunk-TZAOQANG.js} +1 -1
- package/{chunk-A5LNLNWR.js → chunk-USYSNGYO.js} +1 -1
- package/{chunk-LSKF2B33.js → chunk-UTOT5S6Z.js} +1 -1
- package/{chunk-DTOILX4E.js → chunk-UZVZ7QY6.js} +1 -1
- package/chunk-V4JPJPZI.js +3 -0
- package/{chunk-EBANXXYI.js → chunk-V7LUGECS.js} +1 -1
- package/chunk-WXTYJ7CH.js +1 -0
- package/{chunk-GYDI67IZ.js → chunk-YHUSOICR.js} +1 -1
- package/{chunk-W2CMPDWL.js → chunk-YX7ZJ2VA.js} +1 -1
- package/index.html +1 -1
- package/{main-AK26L46R.js → main-OUD7GLNU.js} +1 -1
- package/package.json +1 -1
- package/chunk-33J6ZQYE.js +0 -1
- package/chunk-3OCWLJKG.js +0 -3
- package/chunk-72HORZFV.js +0 -1
- package/chunk-RUXUFB7C.js +0 -1
- package/chunk-RWPF5SQT.js +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as Ce}from"./chunk-ZBVBVQO7.js";import{d as ce}from"./chunk-C6F6FP4R.js";import{a as de,d as me}from"./chunk-A5LNLNWR.js";import{a as pe}from"./chunk-XLDVUBTQ.js";import{B as ie,G as oe,J as re,O as ae,U as le,V as _e,X as se,b as Q,c as W,e as Y,i as Z,k as ee,s as te,u as ne}from"./chunk-QF4DQYEP.js";import{ea as q}from"./chunk-5ZSBXGHQ.js";import{$b as l,Ab as E,Bb as P,Bc as H,Cb as c,Db as a,Eb as _,Fb as w,Jb as v,Jc as D,Kb as I,Lb as S,Mb as g,Qc as R,Sa as s,Tb as b,Ub as $,Vb as U,Wc as k,Zb as u,Zc as j,_ as K,cb as J,ea as m,fa as C,hb as f,ic as T,kc as G,nc as d,oc as B,pa as N,pc as A,vc as X,wc as z,xb as h,xc as x,yb as O,zb as M}from"./chunk-QONLYWYC.js";import{a as y,b as V}from"./chunk-EUDKD2JW.js";var fe=()=>({updateOn:"blur"});function Te(t,i){if(t&1){let e=g();a(0,"button",13),u("click",function(){m(e);let n=l();return C(n.showTextArea.set(!1))}),b(1,5),w(2,"sh-icon"),$(),_()}}function xe(t,i){if(t&1){let e=g();a(0,"button",17,0),u("click",function(){let n=m(e).$implicit,r=l(3);return C(r.addSetting(n))}),d(2),_()}if(t&2){let e=i.$implicit;G("deprecated",e.deprecatedDescription),s(2),A(" ",e.name," ")}}function Se(t,i){if(t&1&&(a(0,"h3",9),d(1),_(),E(2,xe,3,3,"button",16,M)),t&2){let e=i.$implicit;s(),B(e.displayName),s(),P(e.options)}}function he(t,i){if(t&1){let e=g();a(0,"sh-menu")(1,"button",18)(2,"sh-icon"),d(3,"dots-three-vertical"),_()(),v(4,15),a(5,"button",13),u("click",function(){m(e);let n=l(2);return C(n.addFreeTextSetting())}),b(6,7),w(7,"sh-icon"),$(),_(),a(8,"button",19),u("click",function(){m(e);let n=l(2);return C(n.showTextArea.set(!0))}),a(9,"sh-icon"),d(10,"link"),_(),d(11," Edit contents as text "),_(),I(),_()}}function Oe(t,i){if(t&1&&(a(0,"sh-menu",14)(1,"button",11),b(2,6),w(3,"sh-icon"),$(),_(),v(4,15),E(5,Se,4,1,null,null,M),I(),_(),h(7,he,12,0,"sh-menu")),t&2){let e=l();c("searchable",!0),s(5),P(e.nonSelectedOptionsGrouped()),s(2),O(e.hasFreeTextSettings()?7:-1)}}function Fe(t,i){if(t&1){let e=g();a(0,"textarea",20),u("ngModelChange",function(n){m(e);let r=l();return C(r.updateSettingsFromText(n))}),_()}if(t&2){let e=l();c("ngModel",e.settingsAsText())("ngModelOptions",H(2,fe))}}function we(t,i){t&1&&(a(0,"div",21),d(1,"Add a setting above to get started."),_())}function Ie(t,i){t&1&&(a(0,"sh-icon",29),d(1," warning-octagon "),_())}function Le(t,i){if(t&1&&(a(0,"sh-icon",30),d(1,"archive"),_()),t&2){let e=l(2).$implicit;c("shTooltip",e.FormView.deprecatedDescription)}}function ye(t,i){if(t&1&&(a(0,"sh-icon",31),d(1,"question"),_()),t&2){let e=l(2).$implicit;c("shTooltip",e.FormView.longDescription)}}function Ve(t,i){if(t&1&&(h(0,Ie,2,0,"sh-icon",29),a(1,"span"),d(2),_(),h(3,Le,2,1,"sh-icon",30)(4,ye,2,1,"sh-icon",31)),t&2){let e=l().$implicit,o=x(1);O(o?0:-1),s(),G("deprecated",e.FormView.deprecatedDescription),s(),B(e.FormView.shortDescription),s(),O(e.FormView.deprecatedDescription?3:e.FormView.longDescription?4:-1)}}function Ne(t,i){t&1&&S(0)}function Me(t,i){if(t&1){let e=g();a(0,"div",23)(1,"label"),f(2,Ne,1,0,"ng-container",32),_(),a(3,"div")(4,"sh-form-field")(5,"input",33),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateFreeTextSettingName(r,n))}),_(),a(6,"sh-icon",34),d(7,"rectangle-dashed"),_()()(),a(8,"div")(9,"sh-form-field")(10,"input",33),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_(),a(11,"sh-icon",34),d(12,"textbox"),_()()()()}if(t&2){let e=l().$implicit,o=T(3);s(2),c("ngTemplateOutlet",o),s(3),c("ngModel",e.Name),s(5),c("ngModel",e.Value())}}function Ee(t,i){t&1&&S(0)}function Pe(t,i){if(t&1){let e=g();a(0,"app-file-tree",24)(1,"label",35),f(2,Ee,1,0,"ng-container",32),_(),a(3,"input",36),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_()()}if(t&2){let e=l().$implicit,o=T(3),n=x(0);c("startingPath",e.Value())("accepts",e.FormView.accepts)("showFiles",!0)("showHiddenNodes",!0)("selectFiles",!0),s(),c("for",n),s(),c("ngTemplateOutlet",o),s(),c("id",n)("ngModel",e.Value())}}function ve(t,i){if(t&1){let e=g();a(0,"app-file-tree",25),w(1,"label",35),a(2,"input",36),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_()()}if(t&2){let e=l().$implicit,o=x(0);c("startingPath",e.Value()),s(),c("for",o),s(),c("id",o)("ngModel",e.Value())}}function be(t,i){t&1&&S(0)}function $e(t,i){t&1&&(a(0,"sh-icon",34),d(1,"link"),_())}function Ae(t,i){t&1&&(a(0,"sh-icon",34),d(1,"textbox"),_())}function De(t,i){if(t&1){let e=g();a(0,"sh-form-field")(1,"label",35),f(2,be,1,0,"ng-container",32),_(),a(3,"input",36),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_(),h(4,$e,2,0,"sh-icon",34)(5,Ae,2,0,"sh-icon",34),_()}if(t&2){let e=l().$implicit,o=T(3),n=x(0);s(),c("for",n),s(),c("ngTemplateOutlet",o),s(),c("id",n)("ngModel",e.Value()),s(),O(e.FormView.type==="Path"?4:5)}}function Re(t,i){t&1&&S(0)}function ke(t,i){if(t&1){let e=g();a(0,"sh-icon",39),u("click",function(){m(e);let n=l(2).$implicit;return C(n.showPassword=!n.showPassword)}),d(1," eye "),_()}}function Ge(t,i){if(t&1){let e=g();a(0,"sh-icon",39),u("click",function(){m(e);let n=l(2).$implicit;return C(n.showPassword=!n.showPassword)}),d(1," eye-slash "),_()}}function Be(t,i){if(t&1){let e=g();a(0,"sh-form-field")(1,"label",35),f(2,Re,1,0,"ng-container",32),_(),a(3,"input",37),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_(),a(4,"sh-icon",34),d(5,"password"),_(),h(6,ke,2,0,"sh-icon",38)(7,Ge,2,0,"sh-icon",38),_()}if(t&2){let e=l().$implicit,o=T(3),n=x(0);s(),c("for",n),s(),c("ngTemplateOutlet",o),s(),c("type",e.showPassword?"text":"password")("id",n)("ngModel",e.Value()),s(3),O(e.showPassword?6:7)}}function ze(t,i){t&1&&S(0)}function Ke(t,i){if(t&1&&d(0),t&2){let e=i.$implicit;A(" ",e," ")}}function Je(t,i){if(t&1){let e=g();a(0,"sh-select",40)(1,"label",35),f(2,ze,1,0,"ng-container",32),_(),a(3,"input",36),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_()(),f(4,Ke,1,1,"ng-template",null,2,D)}if(t&2){let e=T(5),o=l().$implicit,n=T(3),r=x(0);c("options",o.FormView.options)("isClearable",!1)("optionTemplate",e),s(),c("for",r),s(),c("ngTemplateOutlet",n),s(),c("id",r)("ngModel",o.Value())}}function Ue(t,i){t&1&&S(0)}function Xe(t,i){if(t&1){let e=g();a(0,"app-size",41),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),a(1,"label",35),f(2,Ue,1,0,"ng-container",32),_()()}if(t&2){let e=l().$implicit,o=T(3),n=x(0);c("inputType",e.Name)("ngModel",e.Value())("customId",n),s(),c("for",n),s(),c("ngTemplateOutlet",o)}}function He(t,i){t&1&&S(0)}function je(t,i){if(t&1){let e=g();a(0,"sh-form-field")(1,"label",35),f(2,He,1,0,"ng-container",32),_(),a(3,"input",42),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_(),a(4,"sh-icon",34),d(5,"numpad"),_()()}if(t&2){let e=l().$implicit,o=T(3),n=x(0);s(),c("for",n),s(),c("ngTemplateOutlet",o),s(),c("id",n)("ngModel",e.Value())}}function qe(t,i){t&1&&S(0)}function Qe(t,i){if(t&1){let e=g();a(0,"sh-toggle",27)(1,"label",35),f(2,qe,1,0,"ng-container",32),_(),a(3,"input",43),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_()()}if(t&2){let e=l().$implicit,o=T(3),n=x(0);s(),c("for",n),s(),c("ngTemplateOutlet",o),s(),c("id",n)("ngModel",e.Value())}}function We(t,i){t&1&&S(0)}function Ye(t,i){if(t&1&&d(0),t&2){let e=i.$implicit;A(" ",e," ")}}function Ze(t,i){if(t&1){let e=g();a(0,"sh-select",44)(1,"label",35),f(2,We,1,0,"ng-container",32),_(),a(3,"input",45),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_()(),f(4,Ye,1,1,"ng-template",null,3,D)}if(t&2){let e=T(5),o=l().$implicit,n=T(3),r=x(0);c("options",o.FormView.options)("selectMultiple",!0)("optionTemplate",e),s(),c("for",r),s(),c("ngTemplateOutlet",n),s(),c("ngModel",o.Value())}}function et(t,i){t&1&&S(0)}function tt(t,i){if(t&1){let e=g();a(0,"app-timespan",41),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),a(1,"label",35),f(2,et,1,0,"ng-container",32),_()()}if(t&2){let e=l().$implicit,o=T(3),n=x(0);c("inputType",e.Name)("ngModel",e.Value())("customId",n),s(),c("for",n),s(),c("ngTemplateOutlet",o)}}function nt(t,i){if(t&1){let e=g();X(0)(1),f(2,Ve,5,5,"ng-template",null,1,D),a(4,"div",22),h(5,Me,13,3,"div",23)(6,Pe,4,9,"app-file-tree",24)(7,ve,3,4,"app-file-tree",25)(8,De,6,5,"sh-form-field")(9,Be,8,6,"sh-form-field")(10,Je,6,7)(11,Xe,3,5,"app-size",26)(12,je,6,4,"sh-form-field")(13,Qe,4,4,"sh-toggle",27)(14,Ze,6,6)(15,tt,3,5,"app-timespan",26),a(16,"button",28),u("click",function(){let n=m(e).$implicit,r=l(2);return C(r.removeSetting(n))}),a(17,"sh-icon"),d(18,"x-bold"),_()()()}if(t&2){let e=i.$implicit,o=i.$index,n=l(2);z("destination-"+e.Name+o),s(),z(n.inAppOptions(e.Name)),s(4),O(e.FormView.type==="FreeText"?5:e.FormView.type==="FileTree"?6:e.FormView.type==="FolderTree"?7:e.FormView.type==="String"||e.FormView.type==="Path"||e.FormView.type==="Decimal"?8:e.FormView.type==="Password"?9:e.FormView.type==="Enumeration"?10:e.FormView.type==="Size"?11:e.FormView.type==="Integer"?12:e.FormView.type==="Boolean"?13:e.FormView.type==="Flags"?14:e.FormView.type==="Timespan"||e.FormView.type==="DateTime"?15:-1)}}function it(t,i){if(t&1&&(h(0,we,2,0,"div",21),E(1,nt,19,3,null,null,M)),t&2){let e=l();O(e.selectedSettings().length===0?0:-1),s(),P(e.selectedSettings())}}var ue=class t{#e=K(pe);options=j.required();hiddenOptions=k([]);hasFreeTextSettings=k(!1);applicationOptions=k();showTextArea=N(!1);allOptionsGrouped=this.#e.allOptionsGrouped;allOptions=this.#e.allOptions;selectedSettings=R(()=>{let i=this.hiddenOptions();return this.options().map(n=>{let r=this.allOptions().find(F=>F.name===n.Name?.replace("--","")),p=n.Value??"";if(r&&i.includes(r.name))return null;if(r){if(r.type==="Boolean"&&(p=this.isTrue(p)),r.type==="Integer"&&(p=parseInt(p)||0),r.type==="Enumeration"&&r.options){let F=p?.trim().toLowerCase(),L=r.options.find(ge=>(ge??"").trim().toLocaleLowerCase()===F);L&&(p=L)}return V(y({},n),{Value:N(p),FormView:r})}else if(this.hasFreeTextSettings())return V(y({},n),{Value:N(p),FormView:{name:n.Name,type:"FreeText",shortDescription:"Custom settings argument",longDescription:"Custom settings argument"}});return null}).filter(n=>n!==null)});nonSelectedOptionsGrouped=R(()=>{let i=this.options().map(o=>o.Name?.replace("--","")),e=this.hiddenOptions();return this.allOptionsGrouped().map(o=>V(y({},o),{options:o.options.filter(n=>!i.includes(n.name)&&!e.includes(n.name))})).filter(o=>o.options.length>0)});settingsAsText=R(()=>this.selectedSettings().map(i=>{let e=i.Value(),o="";return typeof e=="boolean"?o=this.isTrue(e)?"True":"False":(typeof e=="number"||e!=null)&&(o=e.toString()),`${i.Name??""}=${o}`}).join(`
|
|
1
|
+
import{a as Ce}from"./chunk-ZBVBVQO7.js";import{d as ce}from"./chunk-C6F6FP4R.js";import{a as de,d as me}from"./chunk-USYSNGYO.js";import{a as pe}from"./chunk-XLDVUBTQ.js";import{B as ie,G as oe,J as re,O as ae,U as le,V as _e,X as se,b as Q,c as W,e as Y,i as Z,k as ee,s as te,u as ne}from"./chunk-QF4DQYEP.js";import{ea as q}from"./chunk-5ZSBXGHQ.js";import{$b as l,Ab as E,Bb as P,Bc as H,Cb as c,Db as a,Eb as _,Fb as w,Jb as v,Jc as D,Kb as I,Lb as S,Mb as g,Qc as R,Sa as s,Tb as b,Ub as $,Vb as U,Wc as k,Zb as u,Zc as j,_ as K,cb as J,ea as m,fa as C,hb as f,ic as T,kc as G,nc as d,oc as B,pa as N,pc as A,vc as X,wc as z,xb as h,xc as x,yb as O,zb as M}from"./chunk-QONLYWYC.js";import{a as y,b as V}from"./chunk-EUDKD2JW.js";var fe=()=>({updateOn:"blur"});function Te(t,i){if(t&1){let e=g();a(0,"button",13),u("click",function(){m(e);let n=l();return C(n.showTextArea.set(!1))}),b(1,5),w(2,"sh-icon"),$(),_()}}function xe(t,i){if(t&1){let e=g();a(0,"button",17,0),u("click",function(){let n=m(e).$implicit,r=l(3);return C(r.addSetting(n))}),d(2),_()}if(t&2){let e=i.$implicit;G("deprecated",e.deprecatedDescription),s(2),A(" ",e.name," ")}}function Se(t,i){if(t&1&&(a(0,"h3",9),d(1),_(),E(2,xe,3,3,"button",16,M)),t&2){let e=i.$implicit;s(),B(e.displayName),s(),P(e.options)}}function he(t,i){if(t&1){let e=g();a(0,"sh-menu")(1,"button",18)(2,"sh-icon"),d(3,"dots-three-vertical"),_()(),v(4,15),a(5,"button",13),u("click",function(){m(e);let n=l(2);return C(n.addFreeTextSetting())}),b(6,7),w(7,"sh-icon"),$(),_(),a(8,"button",19),u("click",function(){m(e);let n=l(2);return C(n.showTextArea.set(!0))}),a(9,"sh-icon"),d(10,"link"),_(),d(11," Edit contents as text "),_(),I(),_()}}function Oe(t,i){if(t&1&&(a(0,"sh-menu",14)(1,"button",11),b(2,6),w(3,"sh-icon"),$(),_(),v(4,15),E(5,Se,4,1,null,null,M),I(),_(),h(7,he,12,0,"sh-menu")),t&2){let e=l();c("searchable",!0),s(5),P(e.nonSelectedOptionsGrouped()),s(2),O(e.hasFreeTextSettings()?7:-1)}}function Fe(t,i){if(t&1){let e=g();a(0,"textarea",20),u("ngModelChange",function(n){m(e);let r=l();return C(r.updateSettingsFromText(n))}),_()}if(t&2){let e=l();c("ngModel",e.settingsAsText())("ngModelOptions",H(2,fe))}}function we(t,i){t&1&&(a(0,"div",21),d(1,"Add a setting above to get started."),_())}function Ie(t,i){t&1&&(a(0,"sh-icon",29),d(1," warning-octagon "),_())}function Le(t,i){if(t&1&&(a(0,"sh-icon",30),d(1,"archive"),_()),t&2){let e=l(2).$implicit;c("shTooltip",e.FormView.deprecatedDescription)}}function ye(t,i){if(t&1&&(a(0,"sh-icon",31),d(1,"question"),_()),t&2){let e=l(2).$implicit;c("shTooltip",e.FormView.longDescription)}}function Ve(t,i){if(t&1&&(h(0,Ie,2,0,"sh-icon",29),a(1,"span"),d(2),_(),h(3,Le,2,1,"sh-icon",30)(4,ye,2,1,"sh-icon",31)),t&2){let e=l().$implicit,o=x(1);O(o?0:-1),s(),G("deprecated",e.FormView.deprecatedDescription),s(),B(e.FormView.shortDescription),s(),O(e.FormView.deprecatedDescription?3:e.FormView.longDescription?4:-1)}}function Ne(t,i){t&1&&S(0)}function Me(t,i){if(t&1){let e=g();a(0,"div",23)(1,"label"),f(2,Ne,1,0,"ng-container",32),_(),a(3,"div")(4,"sh-form-field")(5,"input",33),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateFreeTextSettingName(r,n))}),_(),a(6,"sh-icon",34),d(7,"rectangle-dashed"),_()()(),a(8,"div")(9,"sh-form-field")(10,"input",33),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_(),a(11,"sh-icon",34),d(12,"textbox"),_()()()()}if(t&2){let e=l().$implicit,o=T(3);s(2),c("ngTemplateOutlet",o),s(3),c("ngModel",e.Name),s(5),c("ngModel",e.Value())}}function Ee(t,i){t&1&&S(0)}function Pe(t,i){if(t&1){let e=g();a(0,"app-file-tree",24)(1,"label",35),f(2,Ee,1,0,"ng-container",32),_(),a(3,"input",36),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_()()}if(t&2){let e=l().$implicit,o=T(3),n=x(0);c("startingPath",e.Value())("accepts",e.FormView.accepts)("showFiles",!0)("showHiddenNodes",!0)("selectFiles",!0),s(),c("for",n),s(),c("ngTemplateOutlet",o),s(),c("id",n)("ngModel",e.Value())}}function ve(t,i){if(t&1){let e=g();a(0,"app-file-tree",25),w(1,"label",35),a(2,"input",36),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_()()}if(t&2){let e=l().$implicit,o=x(0);c("startingPath",e.Value()),s(),c("for",o),s(),c("id",o)("ngModel",e.Value())}}function be(t,i){t&1&&S(0)}function $e(t,i){t&1&&(a(0,"sh-icon",34),d(1,"link"),_())}function Ae(t,i){t&1&&(a(0,"sh-icon",34),d(1,"textbox"),_())}function De(t,i){if(t&1){let e=g();a(0,"sh-form-field")(1,"label",35),f(2,be,1,0,"ng-container",32),_(),a(3,"input",36),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_(),h(4,$e,2,0,"sh-icon",34)(5,Ae,2,0,"sh-icon",34),_()}if(t&2){let e=l().$implicit,o=T(3),n=x(0);s(),c("for",n),s(),c("ngTemplateOutlet",o),s(),c("id",n)("ngModel",e.Value()),s(),O(e.FormView.type==="Path"?4:5)}}function Re(t,i){t&1&&S(0)}function ke(t,i){if(t&1){let e=g();a(0,"sh-icon",39),u("click",function(){m(e);let n=l(2).$implicit;return C(n.showPassword=!n.showPassword)}),d(1," eye "),_()}}function Ge(t,i){if(t&1){let e=g();a(0,"sh-icon",39),u("click",function(){m(e);let n=l(2).$implicit;return C(n.showPassword=!n.showPassword)}),d(1," eye-slash "),_()}}function Be(t,i){if(t&1){let e=g();a(0,"sh-form-field")(1,"label",35),f(2,Re,1,0,"ng-container",32),_(),a(3,"input",37),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_(),a(4,"sh-icon",34),d(5,"password"),_(),h(6,ke,2,0,"sh-icon",38)(7,Ge,2,0,"sh-icon",38),_()}if(t&2){let e=l().$implicit,o=T(3),n=x(0);s(),c("for",n),s(),c("ngTemplateOutlet",o),s(),c("type",e.showPassword?"text":"password")("id",n)("ngModel",e.Value()),s(3),O(e.showPassword?6:7)}}function ze(t,i){t&1&&S(0)}function Ke(t,i){if(t&1&&d(0),t&2){let e=i.$implicit;A(" ",e," ")}}function Je(t,i){if(t&1){let e=g();a(0,"sh-select",40)(1,"label",35),f(2,ze,1,0,"ng-container",32),_(),a(3,"input",36),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_()(),f(4,Ke,1,1,"ng-template",null,2,D)}if(t&2){let e=T(5),o=l().$implicit,n=T(3),r=x(0);c("options",o.FormView.options)("isClearable",!1)("optionTemplate",e),s(),c("for",r),s(),c("ngTemplateOutlet",n),s(),c("id",r)("ngModel",o.Value())}}function Ue(t,i){t&1&&S(0)}function Xe(t,i){if(t&1){let e=g();a(0,"app-size",41),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),a(1,"label",35),f(2,Ue,1,0,"ng-container",32),_()()}if(t&2){let e=l().$implicit,o=T(3),n=x(0);c("inputType",e.Name)("ngModel",e.Value())("customId",n),s(),c("for",n),s(),c("ngTemplateOutlet",o)}}function He(t,i){t&1&&S(0)}function je(t,i){if(t&1){let e=g();a(0,"sh-form-field")(1,"label",35),f(2,He,1,0,"ng-container",32),_(),a(3,"input",42),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_(),a(4,"sh-icon",34),d(5,"numpad"),_()()}if(t&2){let e=l().$implicit,o=T(3),n=x(0);s(),c("for",n),s(),c("ngTemplateOutlet",o),s(),c("id",n)("ngModel",e.Value())}}function qe(t,i){t&1&&S(0)}function Qe(t,i){if(t&1){let e=g();a(0,"sh-toggle",27)(1,"label",35),f(2,qe,1,0,"ng-container",32),_(),a(3,"input",43),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_()()}if(t&2){let e=l().$implicit,o=T(3),n=x(0);s(),c("for",n),s(),c("ngTemplateOutlet",o),s(),c("id",n)("ngModel",e.Value())}}function We(t,i){t&1&&S(0)}function Ye(t,i){if(t&1&&d(0),t&2){let e=i.$implicit;A(" ",e," ")}}function Ze(t,i){if(t&1){let e=g();a(0,"sh-select",44)(1,"label",35),f(2,We,1,0,"ng-container",32),_(),a(3,"input",45),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),_()(),f(4,Ye,1,1,"ng-template",null,3,D)}if(t&2){let e=T(5),o=l().$implicit,n=T(3),r=x(0);c("options",o.FormView.options)("selectMultiple",!0)("optionTemplate",e),s(),c("for",r),s(),c("ngTemplateOutlet",n),s(),c("ngModel",o.Value())}}function et(t,i){t&1&&S(0)}function tt(t,i){if(t&1){let e=g();a(0,"app-timespan",41),u("ngModelChange",function(n){m(e);let r=l().$implicit,p=l(2);return C(p.updateSettingValue(r,n))}),a(1,"label",35),f(2,et,1,0,"ng-container",32),_()()}if(t&2){let e=l().$implicit,o=T(3),n=x(0);c("inputType",e.Name)("ngModel",e.Value())("customId",n),s(),c("for",n),s(),c("ngTemplateOutlet",o)}}function nt(t,i){if(t&1){let e=g();X(0)(1),f(2,Ve,5,5,"ng-template",null,1,D),a(4,"div",22),h(5,Me,13,3,"div",23)(6,Pe,4,9,"app-file-tree",24)(7,ve,3,4,"app-file-tree",25)(8,De,6,5,"sh-form-field")(9,Be,8,6,"sh-form-field")(10,Je,6,7)(11,Xe,3,5,"app-size",26)(12,je,6,4,"sh-form-field")(13,Qe,4,4,"sh-toggle",27)(14,Ze,6,6)(15,tt,3,5,"app-timespan",26),a(16,"button",28),u("click",function(){let n=m(e).$implicit,r=l(2);return C(r.removeSetting(n))}),a(17,"sh-icon"),d(18,"x-bold"),_()()()}if(t&2){let e=i.$implicit,o=i.$index,n=l(2);z("destination-"+e.Name+o),s(),z(n.inAppOptions(e.Name)),s(4),O(e.FormView.type==="FreeText"?5:e.FormView.type==="FileTree"?6:e.FormView.type==="FolderTree"?7:e.FormView.type==="String"||e.FormView.type==="Path"||e.FormView.type==="Decimal"?8:e.FormView.type==="Password"?9:e.FormView.type==="Enumeration"?10:e.FormView.type==="Size"?11:e.FormView.type==="Integer"?12:e.FormView.type==="Boolean"?13:e.FormView.type==="Flags"?14:e.FormView.type==="Timespan"||e.FormView.type==="DateTime"?15:-1)}}function it(t,i){if(t&1&&(h(0,we,2,0,"div",21),E(1,nt,19,3,null,null,M)),t&2){let e=l();O(e.selectedSettings().length===0?0:-1),s(),P(e.selectedSettings())}}var ue=class t{#e=K(pe);options=j.required();hiddenOptions=k([]);hasFreeTextSettings=k(!1);applicationOptions=k();showTextArea=N(!1);allOptionsGrouped=this.#e.allOptionsGrouped;allOptions=this.#e.allOptions;selectedSettings=R(()=>{let i=this.hiddenOptions();return this.options().map(n=>{let r=this.allOptions().find(F=>F.name===n.Name?.replace("--","")),p=n.Value??"";if(r&&i.includes(r.name))return null;if(r){if(r.type==="Boolean"&&(p=this.isTrue(p)),r.type==="Integer"&&(p=parseInt(p)||0),r.type==="Enumeration"&&r.options){let F=p?.trim().toLowerCase(),L=r.options.find(ge=>(ge??"").trim().toLocaleLowerCase()===F);L&&(p=L)}return V(y({},n),{Value:N(p),FormView:r})}else if(this.hasFreeTextSettings())return V(y({},n),{Value:N(p),FormView:{name:n.Name,type:"FreeText",shortDescription:"Custom settings argument",longDescription:"Custom settings argument"}});return null}).filter(n=>n!==null)});nonSelectedOptionsGrouped=R(()=>{let i=this.options().map(o=>o.Name?.replace("--","")),e=this.hiddenOptions();return this.allOptionsGrouped().map(o=>V(y({},o),{options:o.options.filter(n=>!i.includes(n.name)&&!e.includes(n.name))})).filter(o=>o.options.length>0)});settingsAsText=R(()=>this.selectedSettings().map(i=>{let e=i.Value(),o="";return typeof e=="boolean"?o=this.isTrue(e)?"True":"False":(typeof e=="number"||e!=null)&&(o=e.toString()),`${i.Name??""}=${o}`}).join(`
|
|
2
2
|
`));updateSettingsFromText(i){if(typeof i!="string")return;let e=ce(i);this.options.update(()=>e)}isTrue(i){if(typeof i=="boolean")return i;if(typeof i=="string"){let e=i.toLowerCase();return e==="true"||e==="1"||e==="yes"||e==="on"}return!1}inAppOptions(i){let e=this.applicationOptions()?.findIndex(o=>o.Name?.replace("--","")===i);return e===void 0?!1:e>-1}addFreeTextSetting(){this.hasFreeTextSettings()&&this.options.update(i=>[...i,{Filter:null,Name:"",Value:""}])}addSetting(i){this.options.update(e=>{let o=i.defaultValue??"";return i.type==="Boolean"&&(o=this.isTrue(o)),i.type==="Integer"&&(o=parseInt(o)||0),[...e,{Name:i.name,Value:o}]})}updateSettingValue(i,e){this.options.update(o=>{let n=[...o],r=n.findIndex(p=>p.Name===i.Name);if(i.FormView.type==="Boolean")return n[r].Value=this.isTrue(e)?"True":"False",n;if(i.FormView.type==="Integer")return n[r].Value=e.toString(),n;if(i.FormView.type==="Enumeration"&&i.FormView.options){let p=e?.trim().toLowerCase()??"",F=i.FormView.options.find(L=>(L??"").trim().toLocaleLowerCase()===p);if(F)return n[r].Value=F,n}return n[r].Value=e,n})}updateFreeTextSettingName(i,e){this.options.update(o=>{let n=[...o],r=n.findIndex(p=>p.Name===i.Name);return n[r].Name=e,n})}removeSetting(i){this.options.update(e=>e.filter(o=>o.Name!==i.Name))}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=J({type:t,selectors:[["app-options-list"]],inputs:{options:[1,"options"],hiddenOptions:[1,"hiddenOptions"],hasFreeTextSettings:[1,"hasFreeTextSettings"],applicationOptions:[1,"applicationOptions"]},outputs:{options:"optionsChange"},decls:9,vars:3,consts:()=>{let i;i=$localize`Advanced options`;let e;e=$localize` Show editor ${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:link${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON:`;let o;o=$localize` Add advanced option ${"\uFFFD#3\uFFFD"}:START_TAG_SH_ICON:plus${"\uFFFD/#3\uFFFD"}:CLOSE_TAG_SH_ICON:`;let n;n=$localize`${"\uFFFD#7\uFFFD"}:START_TAG_SH_ICON:pen${"\uFFFD/#7\uFFFD"}:CLOSE_TAG_SH_ICON: New custom option `;let r;return r=$localize`By adding this option it will override the matching global option`,[["option",""],["defaultLabel",""],["enumOptionTemplate",""],["optionTemplate",""],i,e,o,n,[3,"disallowToggle"],["title",""],[1,"actions"],["shButton","","type","button",1,"outlined","small"],["wrap","off","placeholder","Paste advanced options here, one per line.",1,"raw-text-area",3,"ngModel","ngModelOptions"],["shButton","","type","button",1,"outlined","small",3,"click"],[3,"searchable"],["menu",""],["type","button",3,"deprecated"],["type","button",3,"click"],["shButton","","type","button",1,"small"],["shButton","","type","button",1,"small",3,"click"],["wrap","off","placeholder","Paste advanced options here, one per line.",1,"raw-text-area",3,"ngModelChange","ngModel","ngModelOptions"],[1,"placeholder"],[1,"field-row"],[1,"form-column"],[3,"startingPath","accepts","showFiles","showHiddenNodes","selectFiles"],[3,"startingPath"],[3,"inputType","ngModel","customId"],[1,"primary","raised"],["shButton","","type","button",1,"outlined","remove-btn",3,"click"],["shTooltip",r,1,"error"],[1,"warn",3,"shTooltip"],[1,"primary",3,"shTooltip"],[4,"ngTemplateOutlet"],["type","text",3,"ngModelChange","ngModel"],["prefix",""],[3,"for"],["type","text",3,"ngModelChange","id","ngModel"],["autocomplete","off",3,"ngModelChange","type","id","ngModel"],["suffix","",1,"clickable"],["suffix","",1,"clickable",3,"click"],[3,"options","isClearable","optionTemplate"],[3,"ngModelChange","inputType","ngModel","customId"],["type","number",3,"ngModelChange","id","ngModel"],["type","checkbox",3,"ngModelChange","id","ngModel"],[1,"primary","raised",3,"options","selectMultiple","optionTemplate"],["type","text","id","text",3,"ngModelChange","ngModel"]]},template:function(e,o){e&1&&(a(0,"sh-toggle-card",8),v(1,9)(2),U(3,4),I(),a(4,"div",10),h(5,Te,3,0,"button",11)(6,Oe,8,2),_(),I(),h(7,Fe,1,3,"textarea",12)(8,it,3,1),_()),e&2&&(c("disallowToggle",!0),s(5),O(o.showTextArea()?5:6),s(2),O(o.showTextArea()?7:8))},dependencies:[te,W,ee,Q,Y,Z,de,me,Ce,q,le,oe,ie,re,se,ne,ae,_e],styles:["[_nghost-%COMP%]{display:block}sh-select[_ngcontent-%COMP%]{--miw: p2r(120)}sh-toggle[_ngcontent-%COMP%] sh-icon[_ngcontent-%COMP%]{font-size:1rem}.placeholder[_ngcontent-%COMP%]{color:var(--base-9);text-align:center;padding:2rem 1rem}.field-row[_ngcontent-%COMP%]{display:grid;align-items:center;grid-template-columns:1fr 2.5rem;gap:.5rem;position:relative;z-index:1}.field-row[_ngcontent-%COMP%] .remove-btn[_ngcontent-%COMP%]{align-self:flex-end}.form-column[_ngcontent-%COMP%]{display:flex;gap:.25rem;flex-direction:column}label[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.25rem}sh-icon[_ngcontent-%COMP%]{font-size:1rem}.form-row[_ngcontent-%COMP%]{display:grid;grid-template-columns:3fr 1fr;gap:.5rem;align-items:flex-end}.actions[_ngcontent-%COMP%]{display:flex;gap:.5rem;justify-content:flex-end}.deprecated[_ngcontent-%COMP%]{text-decoration:line-through}.raw-text-area[_ngcontent-%COMP%]{min-height:12rem;white-space:pre}"],changeDetection:0})};export{ue as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as mt}from"./chunk-D6KZSKI7.js";import{a as Ot,b as pt,c as Rt}from"./chunk-2ZGJS4OW.js";import"./chunk-KAAYNQ7L.js";import"./chunk-ZBVBVQO7.js";import{a as Et}from"./chunk-C6F6FP4R.js";import{h as Ct}from"./chunk-BQJICFF5.js";import"./chunk-A5LNLNWR.js";import"./chunk-3NFAL4U4.js";import"./chunk-4VY6SMSL.js";import"./chunk-6YGURBW6.js";import"./chunk-Z27IQRKV.js";import"./chunk-CCKT2GLS.js";import{a as R}from"./chunk-72HORZFV.js";import"./chunk-6Q6SSTBK.js";import"./chunk-XLDVUBTQ.js";import"./chunk-LN26XMBJ.js";import"./chunk-GCCJSS4C.js";import{b as nt,d as it}from"./chunk-ABYM5HWA.js";import"./chunk-Z35OG2DV.js";import{B as St,G as dt,J as Dt,c as ot,e as at,f as st,g as Ft,i as rt,j as lt,s as _t,u as ct,w as Tt,y as ut,z as gt}from"./chunk-QF4DQYEP.js";import"./chunk-2QJVTZ56.js";import"./chunk-5ZSBXGHQ.js";import"./chunk-FPPZ4BUR.js";import{$b as l,Ab as L,Ac as Z,Bb as x,Bc as tt,Cb as N,Db as s,Eb as F,Fb as g,Jb as G,Kb as w,Mb as C,Qc as k,Sa as r,Tb as T,Ub as u,Vb as h,Wb as f,Xb as $,Xc as et,Yb as b,Zb as d,_ as O,cb as K,ea as _,fa as c,gc as j,hc as Q,ja as X,kc as q,nc as I,oc as B,pa as p,pc as Y,sc as A,tc as M,uc as P,xb as D,yb as E,zb as y}from"./chunk-QONLYWYC.js";import"./chunk-EUDKD2JW.js";var Nt=["formRef"],It=()=>({maxWidth:"700px",width:"100%"});function ht(i,n){if(i&1){let t=C();T(0,2,1),s(1,"button",30),d("click",function(){_(t);let e=l();return c(e.testDestination(0,!0))}),F(),u()}if(i&2){let t=l();r(),q("loader",t.testSignal()=="testing"),N("disabled",t.testSignal()=="testing")}}function ft(i,n){if(i&1){let t=C();T(0,2,2),s(1,"button",20),d("click",function(){_(t);let e=l();return c(e.copyTargetUrl())}),g(2,"sh-icon"),F(),u()}}function $t(i,n){i&1&&(s(0,"sh-alert"),T(1,5),g(2,"sh-icon",31),u(),F())}function At(i,n){i&1&&(s(0,"sh-alert",21),T(1,6),g(2,"sh-icon",31),u(),F())}function Mt(i,n){if(i&1&&(s(0,"sh-alert",22),T(1,7),g(2,"sh-icon",31),u(),F()),i&2){let t=l();r(2),f(t.testErrorMessage()),$(1)}}function Pt(i,n){if(i&1&&(s(0,"sh-alert",23),T(1,8),g(2,"sh-icon",31),u(),F()),i&2){let t=l();r(2),f(t.testErrorMessage()),$(1)}}function yt(i,n){if(i&1){let t=C();s(0,"p",32),d("click",function(){_(t);let e=l();return c(e.removeDestination())}),T(1,9),g(2,"strong")(3,"br")(4,"span",33),u(),F()}if(i&2){let t,o=l();r(4),f((t=o.selectedDestinationType())==null?null:t.displayName),$(1)}}function Lt(i,n){if(i&1){let t=C();s(0,"div",39),d("click",function(){let e=_(t).$implicit,a=l(2);return c(a.setDestination(e.key))}),s(1,"h3"),I(2),F(),s(3,"p"),I(4),F()()}if(i&2){let t=n.$implicit;r(2),B(t.displayName),r(2),B(t.description)}}function xt(i,n){if(i&1){let t=C();s(0,"button",40,1),d("click",function(){let e=_(t).$implicit,a=l(2);return c(a.setDestination(e.key))}),I(2),F()}if(i&2){let t=n.$implicit;r(2),Y(" ",t.displayName," ")}}function Gt(i,n){if(i&1&&(s(0,"div",34),L(1,Lt,5,2,"div",35,y),F(),s(3,"sh-menu",36)(4,"button",37),h(5,10),F(),G(6,19),L(7,xt,3,1,"button",38,y),w(),F()),i&2){let t=l();r(),x(t.destinationTypeOptionsFocused()),r(2),N("searchable",!0),r(4),x(t.destinationTypeOptions())}}function wt(i,n){if(i&1){let t=C();s(0,"app-single-destination",41),P("targetUrlChange",function(e){_(t);let a=l();return M(a.targetUrlModel,e)||(a.targetUrlModel=e),c(e)}),F()}if(i&2){let t=l();A("targetUrl",t.targetUrlModel)}}function bt(i,n){i&1&&(T(0,4,1),g(1,"sh-icon",28),u())}function Bt(i,n){i&1&&(T(0,4,2),g(1,"sh-icon"),u())}function kt(i,n){if(i&1){let t=C();s(0,"sh-dialog",42),P("isOpenChange",function(e){_(t);let a=l();return M(a.targetUrlDialogOpen,e)||(a.targetUrlDialogOpen=e),c(e)}),s(1,"header",43)(2,"h2"),h(3,11),F(),s(4,"sh-alert",22),h(5,12),F()(),s(6,"div",44)(7,"sh-form-field")(8,"textarea",45),P("ngModelChange",function(e){_(t);let a=l();return M(a.targetUrlCtrl,e)||(a.targetUrlCtrl=e),c(e)}),F()()(),s(9,"footer",46)(10,"button",26),d("click",function(){_(t);let e=l();return c(e.closeTargetUrlDialog(!1))}),I(11,"Cancel"),F(),s(12,"button",47),d("click",function(){_(t);let e=l();return c(e.closeTargetUrlDialog(!0))}),T(13,13),g(14,"sh-icon"),u(),F()()()}if(i&2){let t=l();A("isOpen",t.targetUrlDialogOpen),N("options",tt(3,It)),r(8),A("ngModel",t.targetUrlCtrl)}}var v=class i{#i=O(it);#o=O(nt);#e=O(gt);#a=O(Ot);injector=O(X);#t=O(mt);#s=O(pt);formRef=et.required("formRef");targetUrlModel=this.#t.destinationTargetUrl;targetUrlCtrl=p(null);targetUrlInitial=p(null);targetUrlDialogOpen=p(!1);toggleNewDestination=p(!0);testSignal=this.#t.testSignal;testErrorMessage=this.#t.testErrorMessage;destinationTypeOptionsInFocus=p(["file","ssh","s3","gcs","googledrive","azure"]);destinationTypeOptions=this.#s.destinationTypeOptions;destinationTypeOptionsFocused=k(()=>{let n=this.destinationTypeOptionsInFocus(),t=this.destinationTypeOptions();return n.map(o=>t.find(e=>e.key===o))});selectedDestinationType=k(()=>{let n=this.#t.destinationTargetUrl();if(!n)return null;let t=n.split("://")[0];return Et(t)});copyTargetUrl(){navigator.clipboard.writeText(this.#t.destinationTargetUrl()??"")}openTargetUrlDialog(){let n=this.#t.destinationTargetUrl();this.targetUrlCtrl.set(n),this.targetUrlInitial.set(n),this.targetUrlDialogOpen.set(!0)}closeTargetUrlDialog(n=!1){this.targetUrlDialogOpen.set(!1);let t=this.targetUrlCtrl(),o=this.targetUrlInitial();!n||t===o||!t||this.#t.updateTargetUrl(t)}testDestination(n,t,o){let e=this.#t.destinationTargetUrl();e&&(this.#t.setTestState("testing"),this.#a.testDestination(e,this.#t.backupId(),n,!0,t).subscribe({next:a=>{if(a.action==="success"){this.#t.setTestState("success"),a.containsBackup===!1?(this.#t.setTestState("warning",$localize`The remote destination does not contain any backups. Please check if the destination details are correct.`),t||this.#e.open(R,{data:{title:$localize`Folder contains no backup`,message:$localize`The remote destination does not contain any backups. Please check if the destination details are correct.`,confirmText:$localize`OK`,cancelText:void 0}})):a.anyFilesFound===!1&&(this.#t.setTestState("warning",$localize`The remote destination is empty. Please check if the destination details are correct.`),t||this.#e.open(R,{data:{title:$localize`Folder is empty`,message:$localize`The remote destination is empty. Please check if the destination details are correct.`,confirmText:$localize`OK`,cancelText:void 0}})),o?.();return}if(this.#t.setTestState("error",a.errorMessage??$localize`An error occurred while testing the destination.`),a.action==="generic-error"){o?.();return}let m=e.includes("?");a.action==="trust-cert"&&this.#t.updateTargetUrl(e+`${m?"&":"?"}accept-specified-ssl-hash=${a.certData}`),a.action==="approve-host-key"&&this.#t.updateTargetUrl(e+`${m?"&":"?"}ssh-fingerprint=${a.reportedHostKey}`),a.testAgain?this.testDestination(a.destinationIndex,t):o?.()}}))}setDestination(n){this.#t.updateTargetUrl(`${n}://`)}removeDestination(){this.#t.updateTargetUrl(null)}goBack(){this.#i.navigate(["general"],{relativeTo:this.#o.parent})}next(){let n=this.testSignal();if(n===""){this.#e.open(R,{data:{title:$localize`Test destination`,message:$localize`You have not tested the destination yet. Do you want to test it now?`,confirmText:$localize`Test now`,cancelText:$localize`Skip test and continue`},closed:t=>{t?this.testDestination(0,!1,()=>{this.testSignal()==="success"?this.#n():this.#e.open(R,{data:{title:$localize`Test did not succeed`,message:this.testErrorMessage()??$localize`Failed to test the destination.`,confirmText:$localize`OK`,cancelText:void 0}})}):this.#n()}});return}if(n!=="success"){this.#e.open(R,{data:{title:$localize`Test destination`,message:$localize`The destination has not been tested successfully. Are you sure you want to continue?`,confirmText:$localize`Yes, continue`,cancelText:$localize`Cancel`},closed:t=>{t&&this.#n()}});return}this.#n()}#n(){this.#i.navigate(["encryption"],{relativeTo:this.#o.parent})}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=K({type:i,selectors:[["app-restore-destination"]],viewQuery:function(t,o){t&1&&j(o.formRef,Nt,5),t&2&&Q()},features:[Z([Ct])],decls:30,vars:9,consts:()=>{let n;n=$localize` Backup destination ${"\uFFFD#5\uFFFD"}:START_TAG_DIV:${"[\uFFFD*6:1\uFFFD|\uFFFD*13:2\uFFFD]"}:START_BLOCK_IF:${"\uFFFD#1:1\uFFFD"}:START_TAG_BUTTON: Test destination ${"[\uFFFD/#1:1\uFFFD|\uFFFD/#8\uFFFD|\uFFFD/#11\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_BUTTON:${"[\uFFFD/*6:1\uFFFD|\uFFFD/*13:2\uFFFD]"}:CLOSE_BLOCK_IF:${"\uFFFD#7\uFFFD"}:START_TAG_SH_MENU:${"\uFFFD#8\uFFFD"}:START_TAG_BUTTON_1:${"[\uFFFD#9\uFFFD|\uFFFD#12\uFFFD|\uFFFD#2:2\uFFFD]"}:START_TAG_SH_ICON:dots-three-vertical${"[\uFFFD/#9\uFFFD|\uFFFD/#12\uFFFD|\uFFFD/#2:2\uFFFD]"}:CLOSE_TAG_SH_ICON:${"[\uFFFD/#1:1\uFFFD|\uFFFD/#8\uFFFD|\uFFFD/#11\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD#10\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD#11\uFFFD"}:START_TAG_BUTTON_2:${"[\uFFFD#9\uFFFD|\uFFFD#12\uFFFD|\uFFFD#2:2\uFFFD]"}:START_TAG_SH_ICON:link${"[\uFFFD/#9\uFFFD|\uFFFD/#12\uFFFD|\uFFFD/#2:2\uFFFD]"}:CLOSE_TAG_SH_ICON: Edit target URL ${"[\uFFFD/#1:1\uFFFD|\uFFFD/#8\uFFFD|\uFFFD/#11\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_BUTTON:${"[\uFFFD*6:1\uFFFD|\uFFFD*13:2\uFFFD]"}:START_BLOCK_IF:${"\uFFFD#1:2\uFFFD"}:START_TAG_BUTTON_3:${"[\uFFFD#9\uFFFD|\uFFFD#12\uFFFD|\uFFFD#2:2\uFFFD]"}:START_TAG_SH_ICON:copy${"[\uFFFD/#9\uFFFD|\uFFFD/#12\uFFFD|\uFFFD/#2:2\uFFFD]"}:CLOSE_TAG_SH_ICON: Copy URL to clipboard ${"[\uFFFD/#1:1\uFFFD|\uFFFD/#8\uFFFD|\uFFFD/#11\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_BUTTON:${"[\uFFFD/*6:1\uFFFD|\uFFFD/*13:2\uFFFD]"}:CLOSE_BLOCK_IF:${"\uFFFD/#10\uFFFD"}:CLOSE_TAG_NG_CONTAINER:${"\uFFFD/#7\uFFFD"}:CLOSE_TAG_SH_MENU:${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_DIV:`,n=b(n);let t;t=$localize`${"\uFFFD#24\uFFFD"}:START_TAG_SH_ICON:arrow-left${"\uFFFD/#24\uFFFD"}:CLOSE_TAG_SH_ICON: Go back `;let o;o=$localize`${"\uFFFD*27:1\uFFFD"}:START_BLOCK_IF:${"\uFFFD#1:1\uFFFD"}:START_TAG_SH_ICON:spinner${"[\uFFFD/#1:1\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_SH_ICON:${"\uFFFD/*27:1\uFFFD"}:CLOSE_BLOCK_IF:${"\uFFFD*28:2\uFFFD"}:START_BLOCK_ELSE:${"\uFFFD#1:2\uFFFD"}:START_TAG_SH_ICON_1:arrow-right${"[\uFFFD/#1:1\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_SH_ICON:${"\uFFFD/*28:2\uFFFD"}:CLOSE_BLOCK_ELSE: Continue `,o=b(o);let e;e=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:spinner${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON: Testing connection... `;let a;a=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:check${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON: Connection tested successfully. `;let m;m=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:warning${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON: ${"\uFFFD0\uFFFD"}:INTERPOLATION: `;let U;U=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:warning${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON: ${"\uFFFD0\uFFFD"}:INTERPOLATION: `;let V;V=$localize` Current destination type ${"\uFFFD#2\uFFFD"}:START_TAG_STRONG:${"\uFFFD0\uFFFD"}:INTERPOLATION:.${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_STRONG:${"\uFFFD#3\uFFFD\uFFFD/#3\uFFFD"}:LINE_BREAK: Want to select another? ${"\uFFFD#4\uFFFD"}:START_TAG_SPAN:Click here${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SPAN:`;let W;W=$localize`All destinations`;let z;z=$localize`Edit target URL`;let H;H=$localize`Be careful, this will overwrite everything you have in your destination.`;let J;return J=$localize` Override target URL ${"\uFFFD#14\uFFFD"}:START_TAG_SH_ICON:swap${"\uFFFD/#14\uFFFD"}:CLOSE_TAG_SH_ICON:`,[["formRef",""],["option",""],n,t,o,e,a,m,U,V,W,z,H,J,[3,"submit"],[1,"title-30"],[1,"actions"],["shButton","","type","button",1,"small",3,"disabled","loader"],["shButton","","type","button",1,"small"],["menu",""],["shButton","","type","button",1,"small",3,"click"],[1,"success"],[1,"warn"],[1,"error"],[3,"targetUrl"],[1,"form-actions"],["shButton","","type","button",3,"click"],["shButton","","type","submit",1,"raised","primary",3,"disabled"],[1,"loader"],[3,"isOpen","options"],["shButton","","type","button",1,"small",3,"click","disabled"],["icon",""],[3,"click"],[1,"sh-primary"],[1,"most-common-destinations"],[1,"tile"],[3,"searchable"],["shButton","","type","button",1,"outlined"],["type","button"],[1,"tile",3,"click"],["type","button",3,"click"],[3,"targetUrlChange","targetUrl"],[3,"isOpenChange","isOpen","options"],["header",""],["content",""],["id","targetUrl","autocomplete","off",3,"ngModelChange","ngModel"],["footer",""],["shButton","","type","submit",1,"raised","primary",3,"click"]]},template:function(t,o){if(t&1){let e=C();s(0,"form",14,0),d("submit",function(){return _(e),c(o.next())}),s(2,"header")(3,"h3",15),T(4,2),s(5,"div",16),D(6,ht,2,3,"button",17),s(7,"sh-menu")(8,"button",18),g(9,"sh-icon"),F(),G(10,19),s(11,"button",20),d("click",function(){return _(e),c(o.openTargetUrlDialog())}),g(12,"sh-icon"),F(),D(13,ft,3,0,"button",18),w(),F()(),u(),F(),D(14,$t,3,0,"sh-alert")(15,At,3,0,"sh-alert",21)(16,Mt,3,1,"sh-alert",22)(17,Pt,3,1,"sh-alert",23),D(18,yt,5,1,"p"),F(),D(19,Gt,9,1),D(20,wt,1,1,"app-single-destination",24),s(21,"div",25)(22,"button",26),d("click",function(){return _(e),c(o.goBack())}),T(23,3),g(24,"sh-icon"),u(),F(),s(25,"button",27),T(26,4),D(27,bt,2,0,"sh-icon",28)(28,Bt,2,0,"sh-icon"),u(),F()()(),D(29,kt,15,4,"sh-dialog",29)}if(t&2){let e=!!o.targetUrlModel();r(6),E(e?6:-1),r(7),E(e?13:-1),r(),E(o.testSignal()=="testing"?14:o.testSignal()=="success"?15:o.testSignal()=="warning"?16:o.testSignal()=="error"?17:-1),r(4),E(e?18:-1),r(),E(e?-1:19),r(),E(e?20:-1),r(5),N("disabled",o.testSignal()=="testing"||!e),r(2),E(o.testSignal()=="testing"?27:28),r(2),E(o.targetUrlDialogOpen()?29:-1)}},dependencies:[Rt,_t,lt,ot,at,st,rt,Ft,St,dt,Dt,ct,ut,Tt],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%] sh-alert[_ngcontent-%COMP%]{width:100%}header[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;gap:.5rem}header[_ngcontent-%COMP%] p[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{cursor:pointer;text-decoration:underline}header[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{display:flex;gap:.5rem}pre[_ngcontent-%COMP%]{white-space:pre-wrap}.field-row[_ngcontent-%COMP%]{display:grid;align-items:flex-end;grid-template-columns:1fr 2.5rem;gap:.5rem}.field-row.single-field[_ngcontent-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}.clickable[_ngcontent-%COMP%]{cursor:pointer;color:var(--primary-8)}.most-common-destinations[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.most-common-destinations[_ngcontent-%COMP%] .tile[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border:1px solid var(--base-4);border-radius:var(--shape-3);box-shadow:var(--box-shadow-10);background-color:var(--base-2);cursor:pointer}.most-common-destinations[_ngcontent-%COMP%] .tile[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font:var(--paragraph-10);margin:0}[prefix].link[_ngcontent-%COMP%]{cursor:pointer;text-decoration:underline;color:var(--primary-8)}textarea[_ngcontent-%COMP%] ~ grammarly-extension[_ngcontent-%COMP%]{display:none}"],changeDetection:0})};export{v as default};
|
|
1
|
+
import{g as mt}from"./chunk-ERFIISF6.js";import{a as Ot,b as pt,c as Rt}from"./chunk-4OBQWIWP.js";import"./chunk-DUHMJQLC.js";import"./chunk-ZBVBVQO7.js";import{a as Et}from"./chunk-C6F6FP4R.js";import{h as Ct}from"./chunk-2J4H7C6W.js";import"./chunk-USYSNGYO.js";import"./chunk-3NFAL4U4.js";import"./chunk-4VY6SMSL.js";import"./chunk-6YGURBW6.js";import"./chunk-Z27IQRKV.js";import"./chunk-CCKT2GLS.js";import{a as R}from"./chunk-LVTEOKA4.js";import"./chunk-6Q6SSTBK.js";import"./chunk-XLDVUBTQ.js";import"./chunk-LN26XMBJ.js";import"./chunk-GCCJSS4C.js";import{b as nt,d as it}from"./chunk-ABYM5HWA.js";import"./chunk-Z35OG2DV.js";import{B as St,G as dt,J as Dt,c as ot,e as at,f as st,g as Ft,i as rt,j as lt,s as _t,u as ct,w as Tt,y as ut,z as gt}from"./chunk-QF4DQYEP.js";import"./chunk-2QJVTZ56.js";import"./chunk-5ZSBXGHQ.js";import"./chunk-FPPZ4BUR.js";import{$b as l,Ab as L,Ac as Z,Bb as x,Bc as tt,Cb as N,Db as s,Eb as F,Fb as g,Jb as G,Kb as w,Mb as C,Qc as k,Sa as r,Tb as T,Ub as u,Vb as h,Wb as f,Xb as $,Xc as et,Yb as b,Zb as d,_ as O,cb as K,ea as _,fa as c,gc as j,hc as Q,ja as X,kc as q,nc as I,oc as B,pa as p,pc as Y,sc as A,tc as M,uc as P,xb as D,yb as E,zb as y}from"./chunk-QONLYWYC.js";import"./chunk-EUDKD2JW.js";var Nt=["formRef"],It=()=>({maxWidth:"700px",width:"100%"});function ht(i,n){if(i&1){let t=C();T(0,2,1),s(1,"button",30),d("click",function(){_(t);let e=l();return c(e.testDestination(0,!0))}),F(),u()}if(i&2){let t=l();r(),q("loader",t.testSignal()=="testing"),N("disabled",t.testSignal()=="testing")}}function ft(i,n){if(i&1){let t=C();T(0,2,2),s(1,"button",20),d("click",function(){_(t);let e=l();return c(e.copyTargetUrl())}),g(2,"sh-icon"),F(),u()}}function $t(i,n){i&1&&(s(0,"sh-alert"),T(1,5),g(2,"sh-icon",31),u(),F())}function At(i,n){i&1&&(s(0,"sh-alert",21),T(1,6),g(2,"sh-icon",31),u(),F())}function Mt(i,n){if(i&1&&(s(0,"sh-alert",22),T(1,7),g(2,"sh-icon",31),u(),F()),i&2){let t=l();r(2),f(t.testErrorMessage()),$(1)}}function Pt(i,n){if(i&1&&(s(0,"sh-alert",23),T(1,8),g(2,"sh-icon",31),u(),F()),i&2){let t=l();r(2),f(t.testErrorMessage()),$(1)}}function yt(i,n){if(i&1){let t=C();s(0,"p",32),d("click",function(){_(t);let e=l();return c(e.removeDestination())}),T(1,9),g(2,"strong")(3,"br")(4,"span",33),u(),F()}if(i&2){let t,o=l();r(4),f((t=o.selectedDestinationType())==null?null:t.displayName),$(1)}}function Lt(i,n){if(i&1){let t=C();s(0,"div",39),d("click",function(){let e=_(t).$implicit,a=l(2);return c(a.setDestination(e.key))}),s(1,"h3"),I(2),F(),s(3,"p"),I(4),F()()}if(i&2){let t=n.$implicit;r(2),B(t.displayName),r(2),B(t.description)}}function xt(i,n){if(i&1){let t=C();s(0,"button",40,1),d("click",function(){let e=_(t).$implicit,a=l(2);return c(a.setDestination(e.key))}),I(2),F()}if(i&2){let t=n.$implicit;r(2),Y(" ",t.displayName," ")}}function Gt(i,n){if(i&1&&(s(0,"div",34),L(1,Lt,5,2,"div",35,y),F(),s(3,"sh-menu",36)(4,"button",37),h(5,10),F(),G(6,19),L(7,xt,3,1,"button",38,y),w(),F()),i&2){let t=l();r(),x(t.destinationTypeOptionsFocused()),r(2),N("searchable",!0),r(4),x(t.destinationTypeOptions())}}function wt(i,n){if(i&1){let t=C();s(0,"app-single-destination",41),P("targetUrlChange",function(e){_(t);let a=l();return M(a.targetUrlModel,e)||(a.targetUrlModel=e),c(e)}),F()}if(i&2){let t=l();A("targetUrl",t.targetUrlModel)}}function bt(i,n){i&1&&(T(0,4,1),g(1,"sh-icon",28),u())}function Bt(i,n){i&1&&(T(0,4,2),g(1,"sh-icon"),u())}function kt(i,n){if(i&1){let t=C();s(0,"sh-dialog",42),P("isOpenChange",function(e){_(t);let a=l();return M(a.targetUrlDialogOpen,e)||(a.targetUrlDialogOpen=e),c(e)}),s(1,"header",43)(2,"h2"),h(3,11),F(),s(4,"sh-alert",22),h(5,12),F()(),s(6,"div",44)(7,"sh-form-field")(8,"textarea",45),P("ngModelChange",function(e){_(t);let a=l();return M(a.targetUrlCtrl,e)||(a.targetUrlCtrl=e),c(e)}),F()()(),s(9,"footer",46)(10,"button",26),d("click",function(){_(t);let e=l();return c(e.closeTargetUrlDialog(!1))}),I(11,"Cancel"),F(),s(12,"button",47),d("click",function(){_(t);let e=l();return c(e.closeTargetUrlDialog(!0))}),T(13,13),g(14,"sh-icon"),u(),F()()()}if(i&2){let t=l();A("isOpen",t.targetUrlDialogOpen),N("options",tt(3,It)),r(8),A("ngModel",t.targetUrlCtrl)}}var v=class i{#i=O(it);#o=O(nt);#e=O(gt);#a=O(Ot);injector=O(X);#t=O(mt);#s=O(pt);formRef=et.required("formRef");targetUrlModel=this.#t.destinationTargetUrl;targetUrlCtrl=p(null);targetUrlInitial=p(null);targetUrlDialogOpen=p(!1);toggleNewDestination=p(!0);testSignal=this.#t.testSignal;testErrorMessage=this.#t.testErrorMessage;destinationTypeOptionsInFocus=p(["file","ssh","s3","gcs","googledrive","azure"]);destinationTypeOptions=this.#s.destinationTypeOptions;destinationTypeOptionsFocused=k(()=>{let n=this.destinationTypeOptionsInFocus(),t=this.destinationTypeOptions();return n.map(o=>t.find(e=>e.key===o))});selectedDestinationType=k(()=>{let n=this.#t.destinationTargetUrl();if(!n)return null;let t=n.split("://")[0];return Et(t)});copyTargetUrl(){navigator.clipboard.writeText(this.#t.destinationTargetUrl()??"")}openTargetUrlDialog(){let n=this.#t.destinationTargetUrl();this.targetUrlCtrl.set(n),this.targetUrlInitial.set(n),this.targetUrlDialogOpen.set(!0)}closeTargetUrlDialog(n=!1){this.targetUrlDialogOpen.set(!1);let t=this.targetUrlCtrl(),o=this.targetUrlInitial();!n||t===o||!t||this.#t.updateTargetUrl(t)}testDestination(n,t,o){let e=this.#t.destinationTargetUrl();e&&(this.#t.setTestState("testing"),this.#a.testDestination(e,this.#t.backupId(),n,!0,t).subscribe({next:a=>{if(a.action==="success"){this.#t.setTestState("success"),a.containsBackup===!1?(this.#t.setTestState("warning",$localize`The remote destination does not contain any backups. Please check if the destination details are correct.`),t||this.#e.open(R,{data:{title:$localize`Folder contains no backup`,message:$localize`The remote destination does not contain any backups. Please check if the destination details are correct.`,confirmText:$localize`OK`,cancelText:void 0}})):a.anyFilesFound===!1&&(this.#t.setTestState("warning",$localize`The remote destination is empty. Please check if the destination details are correct.`),t||this.#e.open(R,{data:{title:$localize`Folder is empty`,message:$localize`The remote destination is empty. Please check if the destination details are correct.`,confirmText:$localize`OK`,cancelText:void 0}})),o?.();return}if(this.#t.setTestState("error",a.errorMessage??$localize`An error occurred while testing the destination.`),a.action==="generic-error"){o?.();return}let m=e.includes("?");a.action==="trust-cert"&&this.#t.updateTargetUrl(e+`${m?"&":"?"}accept-specified-ssl-hash=${a.certData}`),a.action==="approve-host-key"&&this.#t.updateTargetUrl(e+`${m?"&":"?"}ssh-fingerprint=${a.reportedHostKey}`),a.testAgain?this.testDestination(a.destinationIndex,t):o?.()}}))}setDestination(n){this.#t.updateTargetUrl(`${n}://`)}removeDestination(){this.#t.updateTargetUrl(null)}goBack(){this.#i.navigate(["general"],{relativeTo:this.#o.parent})}next(){let n=this.testSignal();if(n===""){this.#e.open(R,{data:{title:$localize`Test destination`,message:$localize`You have not tested the destination yet. Do you want to test it now?`,confirmText:$localize`Test now`,cancelText:$localize`Skip test and continue`},closed:t=>{t?this.testDestination(0,!1,()=>{this.testSignal()==="success"?this.#n():this.#e.open(R,{data:{title:$localize`Test did not succeed`,message:this.testErrorMessage()??$localize`Failed to test the destination.`,confirmText:$localize`OK`,cancelText:void 0}})}):this.#n()}});return}if(n!=="success"){this.#e.open(R,{data:{title:$localize`Test destination`,message:$localize`The destination has not been tested successfully. Are you sure you want to continue?`,confirmText:$localize`Yes, continue`,cancelText:$localize`Cancel`},closed:t=>{t&&this.#n()}});return}this.#n()}#n(){this.#i.navigate(["encryption"],{relativeTo:this.#o.parent})}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=K({type:i,selectors:[["app-restore-destination"]],viewQuery:function(t,o){t&1&&j(o.formRef,Nt,5),t&2&&Q()},features:[Z([Ct])],decls:30,vars:9,consts:()=>{let n;n=$localize` Backup destination ${"\uFFFD#5\uFFFD"}:START_TAG_DIV:${"[\uFFFD*6:1\uFFFD|\uFFFD*13:2\uFFFD]"}:START_BLOCK_IF:${"\uFFFD#1:1\uFFFD"}:START_TAG_BUTTON: Test destination ${"[\uFFFD/#1:1\uFFFD|\uFFFD/#8\uFFFD|\uFFFD/#11\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_BUTTON:${"[\uFFFD/*6:1\uFFFD|\uFFFD/*13:2\uFFFD]"}:CLOSE_BLOCK_IF:${"\uFFFD#7\uFFFD"}:START_TAG_SH_MENU:${"\uFFFD#8\uFFFD"}:START_TAG_BUTTON_1:${"[\uFFFD#9\uFFFD|\uFFFD#12\uFFFD|\uFFFD#2:2\uFFFD]"}:START_TAG_SH_ICON:dots-three-vertical${"[\uFFFD/#9\uFFFD|\uFFFD/#12\uFFFD|\uFFFD/#2:2\uFFFD]"}:CLOSE_TAG_SH_ICON:${"[\uFFFD/#1:1\uFFFD|\uFFFD/#8\uFFFD|\uFFFD/#11\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD#10\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD#11\uFFFD"}:START_TAG_BUTTON_2:${"[\uFFFD#9\uFFFD|\uFFFD#12\uFFFD|\uFFFD#2:2\uFFFD]"}:START_TAG_SH_ICON:link${"[\uFFFD/#9\uFFFD|\uFFFD/#12\uFFFD|\uFFFD/#2:2\uFFFD]"}:CLOSE_TAG_SH_ICON: Edit target URL ${"[\uFFFD/#1:1\uFFFD|\uFFFD/#8\uFFFD|\uFFFD/#11\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_BUTTON:${"[\uFFFD*6:1\uFFFD|\uFFFD*13:2\uFFFD]"}:START_BLOCK_IF:${"\uFFFD#1:2\uFFFD"}:START_TAG_BUTTON_3:${"[\uFFFD#9\uFFFD|\uFFFD#12\uFFFD|\uFFFD#2:2\uFFFD]"}:START_TAG_SH_ICON:copy${"[\uFFFD/#9\uFFFD|\uFFFD/#12\uFFFD|\uFFFD/#2:2\uFFFD]"}:CLOSE_TAG_SH_ICON: Copy URL to clipboard ${"[\uFFFD/#1:1\uFFFD|\uFFFD/#8\uFFFD|\uFFFD/#11\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_BUTTON:${"[\uFFFD/*6:1\uFFFD|\uFFFD/*13:2\uFFFD]"}:CLOSE_BLOCK_IF:${"\uFFFD/#10\uFFFD"}:CLOSE_TAG_NG_CONTAINER:${"\uFFFD/#7\uFFFD"}:CLOSE_TAG_SH_MENU:${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_DIV:`,n=b(n);let t;t=$localize`${"\uFFFD#24\uFFFD"}:START_TAG_SH_ICON:arrow-left${"\uFFFD/#24\uFFFD"}:CLOSE_TAG_SH_ICON: Go back `;let o;o=$localize`${"\uFFFD*27:1\uFFFD"}:START_BLOCK_IF:${"\uFFFD#1:1\uFFFD"}:START_TAG_SH_ICON:spinner${"[\uFFFD/#1:1\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_SH_ICON:${"\uFFFD/*27:1\uFFFD"}:CLOSE_BLOCK_IF:${"\uFFFD*28:2\uFFFD"}:START_BLOCK_ELSE:${"\uFFFD#1:2\uFFFD"}:START_TAG_SH_ICON_1:arrow-right${"[\uFFFD/#1:1\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_SH_ICON:${"\uFFFD/*28:2\uFFFD"}:CLOSE_BLOCK_ELSE: Continue `,o=b(o);let e;e=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:spinner${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON: Testing connection... `;let a;a=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:check${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON: Connection tested successfully. `;let m;m=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:warning${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON: ${"\uFFFD0\uFFFD"}:INTERPOLATION: `;let U;U=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:warning${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON: ${"\uFFFD0\uFFFD"}:INTERPOLATION: `;let V;V=$localize` Current destination type ${"\uFFFD#2\uFFFD"}:START_TAG_STRONG:${"\uFFFD0\uFFFD"}:INTERPOLATION:.${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_STRONG:${"\uFFFD#3\uFFFD\uFFFD/#3\uFFFD"}:LINE_BREAK: Want to select another? ${"\uFFFD#4\uFFFD"}:START_TAG_SPAN:Click here${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SPAN:`;let W;W=$localize`All destinations`;let z;z=$localize`Edit target URL`;let H;H=$localize`Be careful, this will overwrite everything you have in your destination.`;let J;return J=$localize` Override target URL ${"\uFFFD#14\uFFFD"}:START_TAG_SH_ICON:swap${"\uFFFD/#14\uFFFD"}:CLOSE_TAG_SH_ICON:`,[["formRef",""],["option",""],n,t,o,e,a,m,U,V,W,z,H,J,[3,"submit"],[1,"title-30"],[1,"actions"],["shButton","","type","button",1,"small",3,"disabled","loader"],["shButton","","type","button",1,"small"],["menu",""],["shButton","","type","button",1,"small",3,"click"],[1,"success"],[1,"warn"],[1,"error"],[3,"targetUrl"],[1,"form-actions"],["shButton","","type","button",3,"click"],["shButton","","type","submit",1,"raised","primary",3,"disabled"],[1,"loader"],[3,"isOpen","options"],["shButton","","type","button",1,"small",3,"click","disabled"],["icon",""],[3,"click"],[1,"sh-primary"],[1,"most-common-destinations"],[1,"tile"],[3,"searchable"],["shButton","","type","button",1,"outlined"],["type","button"],[1,"tile",3,"click"],["type","button",3,"click"],[3,"targetUrlChange","targetUrl"],[3,"isOpenChange","isOpen","options"],["header",""],["content",""],["id","targetUrl","autocomplete","off",3,"ngModelChange","ngModel"],["footer",""],["shButton","","type","submit",1,"raised","primary",3,"click"]]},template:function(t,o){if(t&1){let e=C();s(0,"form",14,0),d("submit",function(){return _(e),c(o.next())}),s(2,"header")(3,"h3",15),T(4,2),s(5,"div",16),D(6,ht,2,3,"button",17),s(7,"sh-menu")(8,"button",18),g(9,"sh-icon"),F(),G(10,19),s(11,"button",20),d("click",function(){return _(e),c(o.openTargetUrlDialog())}),g(12,"sh-icon"),F(),D(13,ft,3,0,"button",18),w(),F()(),u(),F(),D(14,$t,3,0,"sh-alert")(15,At,3,0,"sh-alert",21)(16,Mt,3,1,"sh-alert",22)(17,Pt,3,1,"sh-alert",23),D(18,yt,5,1,"p"),F(),D(19,Gt,9,1),D(20,wt,1,1,"app-single-destination",24),s(21,"div",25)(22,"button",26),d("click",function(){return _(e),c(o.goBack())}),T(23,3),g(24,"sh-icon"),u(),F(),s(25,"button",27),T(26,4),D(27,bt,2,0,"sh-icon",28)(28,Bt,2,0,"sh-icon"),u(),F()()(),D(29,kt,15,4,"sh-dialog",29)}if(t&2){let e=!!o.targetUrlModel();r(6),E(e?6:-1),r(7),E(e?13:-1),r(),E(o.testSignal()=="testing"?14:o.testSignal()=="success"?15:o.testSignal()=="warning"?16:o.testSignal()=="error"?17:-1),r(4),E(e?18:-1),r(),E(e?-1:19),r(),E(e?20:-1),r(5),N("disabled",o.testSignal()=="testing"||!e),r(2),E(o.testSignal()=="testing"?27:28),r(2),E(o.targetUrlDialogOpen()?29:-1)}},dependencies:[Rt,_t,lt,ot,at,st,rt,Ft,St,dt,Dt,ct,ut,Tt],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%] sh-alert[_ngcontent-%COMP%]{width:100%}header[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;gap:.5rem}header[_ngcontent-%COMP%] p[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{cursor:pointer;text-decoration:underline}header[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{display:flex;gap:.5rem}pre[_ngcontent-%COMP%]{white-space:pre-wrap}.field-row[_ngcontent-%COMP%]{display:grid;align-items:flex-end;grid-template-columns:1fr 2.5rem;gap:.5rem}.field-row.single-field[_ngcontent-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}.clickable[_ngcontent-%COMP%]{cursor:pointer;color:var(--primary-8)}.most-common-destinations[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.most-common-destinations[_ngcontent-%COMP%] .tile[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border:1px solid var(--base-4);border-radius:var(--shape-3);box-shadow:var(--box-shadow-10);background-color:var(--base-2);cursor:pointer}.most-common-destinations[_ngcontent-%COMP%] .tile[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font:var(--paragraph-10);margin:0}[prefix].link[_ngcontent-%COMP%]{cursor:pointer;text-decoration:underline;color:var(--primary-8)}textarea[_ngcontent-%COMP%] ~ grammarly-extension[_ngcontent-%COMP%]{display:none}"],changeDetection:0})};export{v as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as Ye}from"./chunk-KAAYNQ7L.js";import{a as se}from"./chunk-A5LNLNWR.js";import{a as ne}from"./chunk-3NFAL4U4.js";import{b as _e}from"./chunk-Z27IQRKV.js";import{a as Xe}from"./chunk-CCKT2GLS.js";import{a as q}from"./chunk-72HORZFV.js";import{a as oe}from"./chunk-XLDVUBTQ.js";import{a as Je}from"./chunk-LN26XMBJ.js";import{b as R,d as h}from"./chunk-ABYM5HWA.js";import{B as J,G as Be,K as xe,L as Ve,O as We,V as ze,b as ve,c as A,e as G,f as k,i as Ae,j as w,l as Ge,o as B,q as x,r as V,s as ke,t as W,u as z,z as we}from"./chunk-QF4DQYEP.js";import{h as X}from"./chunk-2QJVTZ56.js";import{la as ie}from"./chunk-5ZSBXGHQ.js";import{$b as D,Ac as ye,B as Oe,Bc as be,Cb as g,Db as r,Eb as l,F as U,Fb as c,Fc as ae,Gc as $e,H as O,Hc as De,Jb as b,Kb as $,L as Ce,Mb as H,P as Ne,Q,Qc as le,Rc as v,Sa as d,Tb as S,Ub as T,V as fe,Vb as m,Wb as he,Xb as Pe,Zb as C,_,cb as L,ea as N,fa as f,hb as Re,i as me,kc as Ie,nc as j,o as Ee,pa as p,pc as Le,qc as Me,sc as Z,tc as ee,uc as te,x as re,xb as M,y as Fe,yb as y}from"./chunk-QONLYWYC.js";var Ue=new V,qe=()=>Ue.group({passphrase:Ue.control("")}),pe=class a{#t=_(X);#e=_(P);#o=_(h);#n=_(R);encryptionForm=this.#e.encryptionForm;creatingTemporaryBackup=p(!1);settings=p([]);next(){let i=this.#e.destinationTargetUrl();if(!i)throw new Error("No target URL");this.creatingTemporaryBackup.set(!0);let e=this.encryptionForm.value?.passphrase??null,t=[];e?t.push({Name:"--passphrase",Value:e}):t.push({Name:"--no-encryption",Value:"true"}),this.settings().forEach(o=>{let n=o.Name?.trim();n&&n!=="--"&&(n.startsWith("--")||(n=`--${n}`),t.push({Name:n,Value:o.Value??""}))}),this.#t.postApiV1Backups({requestBody:{Backup:{TargetURL:i,Settings:t}},temporary:!0}).pipe(O(()=>this.creatingTemporaryBackup.set(!1))).subscribe({next:o=>{let n=o.ID;this.#o.navigate([`/restore-draft/${n}`])},error:o=>{console.error(o)}})}back(){this.#e.isFileRestore()?this.#o.navigate(["destination"],{relativeTo:this.#n.parent}):this.#e.exit()}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=L({type:a,selectors:[["app-restore-encryption"]],decls:16,vars:3,consts:()=>{let i;i=$localize`Enter backup passphrase if defined.`;let e;e=$localize`Password`;let t;t=$localize`Advanced options`;let o;o=$localize`${"\uFFFD#12\uFFFD"}:START_TAG_SH_ICON:arrow-left${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SH_ICON: Back `;let n;return n=$localize`${"\uFFFD#15\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#15\uFFFD"}:CLOSE_TAG_SH_ICON: Continue `,[e,t,o,n,[3,"submit","formGroup"],["for","password"],["type","password","id","password","placeholder",i,"formControlName","passphrase"],["title",""],[3,"optionsChange","options","hasFreeTextSettings"],[1,"form-actions"],["shButton","","type","button",3,"click"],["shButton","","type","submit",1,"raised","primary"]]},template:function(e,t){e&1&&(r(0,"form",4),C("submit",function(){return t.next()}),r(1,"sh-form-field")(2,"label",5),m(3,0),l(),c(4,"input",6),l(),r(5,"app-toggle-card"),b(6,7),m(7,1),$(),r(8,"app-options-list",8),te("optionsChange",function(n){return ee(t.settings,n)||(t.settings=n),n}),l()(),r(9,"div",9)(10,"button",10),C("click",function(){return t.back()}),S(11,2),c(12,"sh-icon"),T(),l(),r(13,"button",11),S(14,3),c(15,"sh-icon"),T(),l()()()),e&2&&(g("formGroup",t.encryptionForm),d(8),Z("options",t.settings),g("hasFreeTextSettings",!0))},dependencies:[W,w,A,G,k,B,x,Be,z,J,ne,Ye],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}"],changeDetection:0})};var Ze=()=>({standalone:!0});function et(a,i){a&1&&c(0,"sh-progress-bar",8)}function tt(a,i){if(a&1&&(j(0),ae(1,"bytes")),a&2){let e=D().$implicit;Le(" (",$e(1,1,e.FileSizes),") ")}}function it(a,i){a&1&&(r(0,"span",16),m(1,4),l())}function ot(a,i){if(a&1&&(r(0,"div",15),j(1),ae(2,"date"),M(3,tt,2,3),M(4,it,2,0,"span",16),l()),a&2){let e=i.$implicit;d(),Me(" ",e.Version,": ",De(2,4,e.Time,"medium")," "),d(2),y(e.FileSizes?3:-1),d(),y(e.IsFullBackup===!1?4:-1)}}function nt(a,i){a&1&&c(0,"sh-progress-bar",8)}function st(a,i){if(a&1&&(r(0,"app-file-tree",14)(1,"label",17),m(2,5),l(),c(3,"input",18),l()),a&2){let e=D(2);g("rootPaths",e.rootPaths())("initialNodes",e.initialNodes())("backupSettings",e.backupSettings())("multiSelect",!0)("showFiles",!0)}}function rt(a,i){if(a&1){let e=H();r(0,"sh-select",12),C("cleared",function(){N(e);let o=D();return f(o.abortLoading())}),r(1,"input",13),te("ngModelChange",function(o){N(e);let n=D();return ee(n.selectOption,o)||(n.selectOption=o),f(o)}),l(),Re(2,ot,5,7,"ng-template"),l(),M(3,nt,1,0,"sh-progress-bar",8),M(4,st,4,5,"app-file-tree",14)}if(a&2){let e=D();g("options",e.versionOptions())("isClearable",!1),d(),Z("ngModel",e.selectOption),g("ngModelOptions",be(6,Ze)),d(2),y(e.isRepairing()||e.versionOptionsLoading()||e.loadingRootPath()?3:-1),d(),y(e.showFileTree()?4:-1)}}var ue=new V,Ke=()=>ue.group({filesToRestore:ue.control(""),passphrase:ue.control(null)}),de=class a{#t=_(X);#e=_(P);#o=_(Xe);#n=_(oe);#i=_(h);#s=_(R);#l=_(ie);#a=null;#_=null;#r=p([]);selectFilesForm=this.#e.selectFilesForm;selectFilesFormSignal=this.#e.selectFilesFormSignal;selectOption=this.#e.selectOption;backupId=this.#e.backupId;versionOptionsLoading=this.#e.versionOptionsLoading;versionOptions=this.#e.versionOptions;isFileRestore=this.#e.isFileRestore;needsDatabaseRepair=le(()=>this.#e.backup()?.Backup?.IsTemporary??!0);showFileTree=p(!1);backupSettings=p(null);rootPaths=p([]);initialNodes=p([]);loadingRootPath=p(!1);isRepairing=le(()=>this.#r().length>0);loadedVersions=p({});loadingEffect=v(()=>{if(this.versionOptionsLoading())return;let e=this.versionOptions();if(e&&e?.length>0){let t=e[0].Version;this.selectOption.set(t.toString())}});backupSettingsEffect=v(()=>{let i=this.backupId(),e=this.selectOption(),t=this.isRepairing(),o=this.loadedVersions();if(!e||!i)return;let s=this.versionOptions()?.find(K=>K.Version===parseInt(e))?.Time??null;if(!s)return;let u=`${i}+${s}`,F=o[u];if(this.needsDatabaseRepair()&&(!F||t))return;let I={id:i+"",time:s};this.backupSettings.set(I),this.getRootPath(I)});repairEffect=v(()=>{if(!this.needsDatabaseRepair())return;let i=this.selectOption(),e=this.versionOptions();if(i){let t=e.find(s=>s.Version===parseInt(i));if(t===void 0)return;let o=this.backupId(),n=`${o}+${t.Time}`;if(this.#_===n||(this.#_=n,this.#r().includes(n)))return;this.#r.update(s=>[...s,n]),this.#t.postApiV1BackupByIdRepairupdate({id:o,requestBody:{only_paths:!0,time:t.Time}}).pipe(Q(this.abortLoading$),O(()=>{this.#_=null})).subscribe(s=>{let u=s.ID;this.#o.waitForTaskToComplete(u).pipe(U(1)).subscribe(()=>{this.#r.update(F=>F.filter(I=>I!==n)),this.loadedVersions.update(F=>(F[n]=!0,F))})})}});getRootPath(i){let e={id:i.id+"",time:i.time,prefixOnly:!0,folderContents:!1},t=i.id+"";this.isRepairing()||this.#a===t||(this.#a=t,this.loadingRootPath.set(!0),this.showFileTree.set(!1),this.#n.hasV2ListOperations()?this.#t.postApiV2BackupListFolder({requestBody:{BackupId:i.id,Time:i.time,Paths:null,PageSize:0,Page:0}}).pipe(Q(this.abortLoading$),O(()=>{this.showFileTree.set(!0),this.loadingRootPath.set(!1),this.#a=null})).subscribe({next:o=>{let n=(o.Data??[]).map(s=>s.Path??"");n.length>0?(this.initialNodes.set([]),this.rootPaths.set(n)):(this.initialNodes.set([]),this.rootPaths.set(["/"]))}}):this.#t.getApiV1BackupByIdFiles(e).pipe(Q(this.abortLoading$),O(()=>{this.showFileTree.set(!0),this.loadingRootPath.set(!1)})).subscribe({next:o=>{let n=o.Files.map(s=>s.Path??"");n.length>0?(this.initialNodes.set([]),this.rootPaths.set(n)):(this.initialNodes.set([]),this.rootPaths.set(["/"]))}}))}abortLoading$=new me;abortLoading(){this.showFileTree.set(!1),this.loadingRootPath.set(!1),this.abortLoading$.next(!0)}displayFn(){let i=this.versionOptions();return e=>{if(!e)return"";let t=i?.find(o=>typeof o.Version=="number"&&o.Version.toString()===e);return t?`${t.Version}: ${this.#l.transform(t.Time,"medium")}`:""}}next(){this.#i.navigate(["options"],{relativeTo:this.#s.parent})}back(){this.#e.isFileRestore()?this.#i.navigate(["encryption"],{relativeTo:this.#s.parent}):this.#e.exit()}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=L({type:a,selectors:[["app-select-files"]],features:[ye([ie])],decls:13,vars:3,consts:()=>{let i;i=$localize`Select files`;let e;e=$localize`${"\uFFFD#9\uFFFD"}:START_TAG_SH_ICON:arrow-left${"\uFFFD/#9\uFFFD"}:CLOSE_TAG_SH_ICON: ${"\uFFFD0\uFFFD"}:INTERPOLATION: `;let t;t=$localize`${"\uFFFD#12\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SH_ICON: Continue `;let o;o=$localize`Select an option...`;let n;n=$localize`(partial)`;let s;return s=$localize`Path`,[["formRef",""],i,e,t,n,s,[3,"submit","formGroup"],[1,"title-30"],[1,"indeterminate","primary"],[1,"form-actions"],["shButton","","type","button",3,"click"],["shButton","","type","submit",1,"raised","primary"],["value","Version",3,"cleared","options","isClearable"],["type","text","placeholder",o,3,"ngModelChange","ngModel","ngModelOptions"],[3,"rootPaths","initialNodes","backupSettings","multiSelect","showFiles"],[1,"custom-option"],[1,"partial"],["for","path"],["type","text","id","path","formControlName","filesToRestore"]]},template:function(e,t){if(e&1){let o=H();r(0,"form",6,0),C("submit",function(){return N(o),f(t.next())}),r(2,"h3",7),m(3,1),l(),M(4,et,1,0,"sh-progress-bar",8)(5,rt,5,7),r(6,"div",9)(7,"button",10),C("click",function(){return N(o),f(t.back())}),S(8,2),c(9,"sh-icon"),T(),l(),r(10,"button",11),S(11,3),c(12,"sh-icon"),T(),l()()()}e&2&&(g("formGroup",t.selectFilesForm),d(4),y(t.versionOptionsLoading()?4:5),d(5),he(t.isFileRestore()?"Back":"Exit"),Pe(8))},dependencies:[ke,w,A,G,k,Ae,W,B,x,se,J,z,We,xe,ie,Je],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}.partial[_ngcontent-%COMP%]{color:var(--base-9);font-style:italic}"],changeDetection:0})};var P=class a{#t=_(h);#e=_(R);#o=_(oe);#n=_(we);#i=_(X);backupId=p(null);backup=p(null);destinationTargetUrl=p(null);selectFilesForm=Ke();optionsForm=Qe();encryptionForm=qe();optionsFormSignal=_e(this.optionsForm.valueChanges);selectFilesFormSignal=_e(this.selectFilesForm.valueChanges);selectOption=p(null);versionOptionsLoading=p(!1);versionOptions=p([]);isSubmitting=p(!1);isFileRestore=p(!1);isFullWidthPage=p(!1);#s=p("");#l=p(null);#a=null;testSignal=this.#s.asReadonly();testErrorMessage=this.#l.asReadonly();#_=v(()=>{let i=this.destinationTargetUrl(),e=this.#s(),t=this.#a;this.#a=i,!(e==="testing"||t===null||t===i)&&(this.#s.set(""),this.#l.set(null))});init(i,e=!1){this.backupId.set(i),this.isFileRestore.set(e),e&&this.#t.navigate(["/restore-from-files/destination"]),e||this.getBackup(!0)}setTestState(i,e){this.#s.set(i),this.#l.set(e??null)}updateTargetUrl(i){this.destinationTargetUrl.set(i)}submit(){this.isSubmitting.set(!0);let i=this.backupId();this.backup()?.Backup?.IsTemporary??!1?this.#i.postApiV1BackupByIdCopytotemp({id:this.backupId()??""}).subscribe({next:t=>{this.#r(t.ID??"")},error:t=>this.showErrorDialog($localize`An error occurred while copying the backup to a temporary location: ${t.message}`)}):this.#r(i??"")}showErrorDialog(i){this.#n.open(q,{data:{title:$localize`Error occured`,message:i,confirmText:$localize`OK`,cancelText:void 0},closed:e=>{}})}#r(i){let e=this.optionsForm.value,t=this.selectFilesForm.value,o=this.selectOption(),n=this.versionOptions()?.find(s=>s.Version===(o&&parseInt(o)));this.#i.postApiV1BackupByIdRestore({id:i??"",requestBody:{paths:t.filesToRestore?.split("\0").map(s=>s.endsWith("/")||s.endsWith("\\")?`${s}*`:s)??[],passphrase:t.passphrase??null,time:n?.Time,restore_path:e.restoreFromPath,overwrite:e.handleExisting==="overwrite",permissions:e.permissions,skip_metadata:!e.includeMetadata}}).pipe(O(()=>this.isSubmitting.set(!1))).subscribe({next:s=>{this.#t.navigate([`./${s.ID}`,"progress"],{relativeTo:this.#e})},error:s=>{console.error("restore error",s)}})}exit(){this.#n.open(q,{data:{title:$localize`Confirm exit?`,message:$localize`Are you sure you want to exit?`,confirmText:$localize`Yes`,cancelText:$localize`Cancel`},closed:i=>{i&&(this.#p(),this.#t.navigate(["/"]))}})}getVersionOptions(){this.versionOptions()}loadFilesetsWithRetryv2(i,e=2){return this.#i.postApiV2BackupListFilesets({requestBody:{BackupId:i}}).pipe(Oe(t=>{let o=t?.error?.body?.StatusCode==="EncryptedStorageNoPassphrase",n=t?.error?.body?.StatusCode==="FolderMissing",s=t?.error?.body?.StatusCode==="EmptyRemoteFolder";return o||n||s||e===0?Ee(()=>t):Fe(1e3).pipe(Ne(()=>this.loadFilesetsWithRetryv2(i,e-1)))}))}getBackup(i=!1){let e=this.backupId();this.versionOptionsLoading.set(!0),this.#o.hasV2ListOperations()?re([this.#i.getApiV1BackupById({id:e}),this.loadFilesetsWithRetryv2(e)]).pipe(U(1),O(()=>this.versionOptionsLoading.set(!1))).subscribe({next:([t,o])=>{if(o.Error)throw new Error(o.Error);if(!(t.Backup?.IsTemporary??!0)&&t?.Backup?.DBPathExists===!1){this.#n.open(q,{data:{title:$localize`Missing Local Database`,message:$localize`The local database for this backup is missing. Please repair or recreate the local database before restoring.`,confirmText:$localize`OK`,cancelText:void 0},closed:s=>{this.#t.navigate(["/backup",e,"database"])}});return}this.versionOptions.set((o.Data??[]).map(s=>({Version:s.Version??-1,IsFullBackup:s.IsFullBackup??void 0,Time:s.Time??"<missing>",FileCount:s.FileCount??void 0,FileSizes:s.FileSizes??void 0}))),this.backup.set(t)},error:t=>{let o=t?.error?.body?.StatusCode==="EncryptedStorageNoPassphrase",n=t?.error?.body?.StatusCode==="FolderMissing",s=t?.error?.body?.StatusCode==="EmptyRemoteFolder",u=$localize`An error occurred while loading the backup filesets: ${t.message}`;o&&(u=$localize`The remote storage is encrypted. Please enter the passphrase to access the backup.`),n&&(u=$localize`The backup storage folder was not found.`),s&&(u=$localize`The backup storage folder does not contain any filesets.`),this.#n.open(q,{data:{title:$localize`Failed to load backup filesets`,message:u,confirmText:$localize`OK`,cancelText:void 0},closed:F=>{this.#t.navigate([o?"/restore-from-files/encryption":"/restore-from-files/destination"])}})}}):re([this.#i.getApiV1BackupById({id:e}),this.#i.getApiV1BackupByIdFilesets({id:e}).pipe(Ce(3))]).pipe(U(1),O(()=>this.versionOptionsLoading.set(!1))).subscribe({next:([t,o])=>{this.versionOptions.set(o.map(n=>({Version:n.Version??-1,IsFullBackup:(n.IsFullBackup??1)==1,Time:n.Time??"<missing>",FileCount:n.FileCount??void 0,FileSizes:n.FileSizes??void 0}))),this.backup.set(t)}})}#p(){this.selectFilesForm.reset(),this.optionsForm.reset()}static \u0275fac=function(e){return new(e||a)};static \u0275prov=fe({token:a,factory:a.\u0275fac,providedIn:"root"})};var Y=new V,Qe=()=>Y.group({restoreFrom:Y.control("orignal"),restoreFromPath:Y.control(""),handleExisting:Y.control("overwrite"),permissions:Y.control(!1),includeMetadata:Y.control(!0)}),Se=class a{#t=_(P);#e=_(h);#o=_(R);optionsForm=this.#t.optionsForm;optionsFormSignal=this.#t.optionsFormSignal;isSubmitting=this.#t.isSubmitting;goBack(){this.#e.navigate(["select-files"],{relativeTo:this.#o.parent})}submit(){this.#t.submit()}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=L({type:a,selectors:[["app-advanced-options-settings"]],decls:42,vars:7,consts:()=>{let i;i=$localize`Restore options`;let e;e=$localize`Where do you want to restore files to?`;let t;t=$localize` Original location ${"\uFFFD#9\uFFFD\uFFFD/#9\uFFFD"}:TAG_INPUT:`;let o;o=$localize` Pick location ${"\uFFFD#12\uFFFD\uFFFD/#12\uFFFD"}:TAG_INPUT:`;let n;n=$localize`How do you want to handle existing files?`;let s;s=$localize` Overwrite ${"\uFFFD#22\uFFFD\uFFFD/#22\uFFFD"}:TAG_INPUT:`;let u;u=$localize` Save different versions with timestamp in file name ${"\uFFFD#25\uFFFD\uFFFD/#25\uFFFD"}:TAG_INPUT:`;let F;F=$localize`Metadata settings`;let I;I=$localize` Restore file metadata ${"\uFFFD#31\uFFFD\uFFFD/#31\uFFFD"}:TAG_INPUT:`;let K;K=$localize` Restore read/write permissions ${"\uFFFD#34\uFFFD\uFFFD/#34\uFFFD"}:TAG_INPUT:`;let Te;Te=$localize`${"\uFFFD#38\uFFFD"}:START_TAG_SH_ICON:arrow-left${"\uFFFD/#38\uFFFD"}:CLOSE_TAG_SH_ICON: Go back `;let ge;return ge=$localize`${"\uFFFD#41\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#41\uFFFD"}:CLOSE_TAG_SH_ICON: Submit `,[["formRef",""],i,e,t,o,n,s,u,F,I,K,Te,ge,[3,"submit","formGroup"],[1,"title-30"],[3,"disallowToggle"],["title",""],[1,"raised","primary"],["type","radio","name","restoreFrom","value","orignal","formControlName","restoreFrom"],["type","radio","name","restoreFrom","value","pickLocation","formControlName","restoreFrom"],[3,"disabled","enableCreateFolder"],["for","path"],["type","text","id","path","formControlName","restoreFromPath"],["type","radio","name","handleExisting","value","overwrite","formControlName","handleExisting"],["type","radio","name","handleExisting","value","saveTimestamp","formControlName","handleExisting"],[1,"primary","raised"],["type","checkbox","formControlName","includeMetadata"],["type","checkbox","formControlName","permissions"],[1,"form-actions"],["shButton","","type","button",3,"click"],["shButton","","type","submit",1,"raised","primary"]]},template:function(e,t){if(e&1){let o=H();r(0,"form",13,0),C("submit",function(){return N(o),f(t.submit())}),r(2,"h3",14),m(3,1),l(),r(4,"app-toggle-card",15),b(5,16),m(6,2),$(),r(7,"sh-radio",17),S(8,3),c(9,"input",18),T(),l(),r(10,"sh-radio",17),S(11,4),c(12,"input",19),T(),l(),r(13,"app-file-tree",20)(14,"label",21),j(15,"Path"),l(),c(16,"input",22),l()(),r(17,"app-toggle-card",15),b(18,16),m(19,5),$(),r(20,"sh-radio",17),S(21,6),c(22,"input",23),T(),l(),r(23,"sh-radio",17),S(24,7),c(25,"input",24),T(),l()(),r(26,"app-toggle-card"),b(27,16),m(28,8),$(),r(29,"sh-toggle",25),S(30,9),c(31,"input",26),T(),l(),r(32,"sh-toggle",25),S(33,10),c(34,"input",27),T(),l()(),r(35,"div",28)(36,"button",29),C("click",function(){return N(o),f(t.goBack())}),S(37,11),c(38,"sh-icon"),T(),l(),r(39,"button",30),S(40,12),c(41,"sh-icon"),T(),l()()()}if(e&2){let o;g("formGroup",t.optionsForm),d(4),g("disallowToggle",!0),d(9),g("disabled",((o=t.optionsFormSignal())==null?null:o.restoreFrom)!=="pickLocation")("enableCreateFolder",!0),d(4),g("disallowToggle",!0),d(22),Ie("loader",t.isSubmitting())}},dependencies:[W,w,A,ve,Ge,G,k,B,x,ne,se,ze,Ve,J,z],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}"],changeDetection:0})};export{Qe as a,Se as b,qe as c,pe as d,Ke as e,de as f,P as g};
|
|
1
|
+
import{a as Ye}from"./chunk-DUHMJQLC.js";import{a as se}from"./chunk-USYSNGYO.js";import{a as ne}from"./chunk-3NFAL4U4.js";import{b as _e}from"./chunk-Z27IQRKV.js";import{a as Xe}from"./chunk-CCKT2GLS.js";import{a as q}from"./chunk-LVTEOKA4.js";import{a as oe}from"./chunk-XLDVUBTQ.js";import{a as Je}from"./chunk-LN26XMBJ.js";import{b as R,d as h}from"./chunk-ABYM5HWA.js";import{B as J,G as Be,K as xe,L as Ve,O as We,V as ze,b as ve,c as A,e as G,f as k,i as Ae,j as w,l as Ge,o as B,q as x,r as V,s as ke,t as W,u as z,z as we}from"./chunk-QF4DQYEP.js";import{h as X}from"./chunk-2QJVTZ56.js";import{la as ie}from"./chunk-5ZSBXGHQ.js";import{$b as D,Ac as ye,B as Oe,Bc as be,Cb as g,Db as r,Eb as l,F as U,Fb as c,Fc as ae,Gc as $e,H as O,Hc as De,Jb as b,Kb as $,L as Ce,Mb as H,P as Ne,Q,Qc as le,Rc as v,Sa as d,Tb as S,Ub as T,V as fe,Vb as m,Wb as he,Xb as Pe,Zb as C,_,cb as L,ea as N,fa as f,hb as Re,i as me,kc as Ie,nc as j,o as Ee,pa as p,pc as Le,qc as Me,sc as Z,tc as ee,uc as te,x as re,xb as M,y as Fe,yb as y}from"./chunk-QONLYWYC.js";var Ue=new V,qe=()=>Ue.group({passphrase:Ue.control("")}),pe=class a{#t=_(X);#e=_(P);#o=_(h);#n=_(R);encryptionForm=this.#e.encryptionForm;creatingTemporaryBackup=p(!1);settings=p([]);next(){let i=this.#e.destinationTargetUrl();if(!i)throw new Error("No target URL");this.creatingTemporaryBackup.set(!0);let e=this.encryptionForm.value?.passphrase??null,t=[];e?t.push({Name:"--passphrase",Value:e}):t.push({Name:"--no-encryption",Value:"true"}),this.settings().forEach(o=>{let n=o.Name?.trim();n&&n!=="--"&&(n.startsWith("--")||(n=`--${n}`),t.push({Name:n,Value:o.Value??""}))}),this.#t.postApiV1Backups({requestBody:{Backup:{TargetURL:i,Settings:t}},temporary:!0}).pipe(O(()=>this.creatingTemporaryBackup.set(!1))).subscribe({next:o=>{let n=o.ID;this.#o.navigate([`/restore-draft/${n}`])},error:o=>{console.error(o)}})}back(){this.#e.isFileRestore()?this.#o.navigate(["destination"],{relativeTo:this.#n.parent}):this.#e.exit()}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=L({type:a,selectors:[["app-restore-encryption"]],decls:16,vars:3,consts:()=>{let i;i=$localize`Enter backup passphrase if defined.`;let e;e=$localize`Password`;let t;t=$localize`Advanced options`;let o;o=$localize`${"\uFFFD#12\uFFFD"}:START_TAG_SH_ICON:arrow-left${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SH_ICON: Back `;let n;return n=$localize`${"\uFFFD#15\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#15\uFFFD"}:CLOSE_TAG_SH_ICON: Continue `,[e,t,o,n,[3,"submit","formGroup"],["for","password"],["type","password","id","password","placeholder",i,"formControlName","passphrase"],["title",""],[3,"optionsChange","options","hasFreeTextSettings"],[1,"form-actions"],["shButton","","type","button",3,"click"],["shButton","","type","submit",1,"raised","primary"]]},template:function(e,t){e&1&&(r(0,"form",4),C("submit",function(){return t.next()}),r(1,"sh-form-field")(2,"label",5),m(3,0),l(),c(4,"input",6),l(),r(5,"app-toggle-card"),b(6,7),m(7,1),$(),r(8,"app-options-list",8),te("optionsChange",function(n){return ee(t.settings,n)||(t.settings=n),n}),l()(),r(9,"div",9)(10,"button",10),C("click",function(){return t.back()}),S(11,2),c(12,"sh-icon"),T(),l(),r(13,"button",11),S(14,3),c(15,"sh-icon"),T(),l()()()),e&2&&(g("formGroup",t.encryptionForm),d(8),Z("options",t.settings),g("hasFreeTextSettings",!0))},dependencies:[W,w,A,G,k,B,x,Be,z,J,ne,Ye],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}"],changeDetection:0})};var Ze=()=>({standalone:!0});function et(a,i){a&1&&c(0,"sh-progress-bar",8)}function tt(a,i){if(a&1&&(j(0),ae(1,"bytes")),a&2){let e=D().$implicit;Le(" (",$e(1,1,e.FileSizes),") ")}}function it(a,i){a&1&&(r(0,"span",16),m(1,4),l())}function ot(a,i){if(a&1&&(r(0,"div",15),j(1),ae(2,"date"),M(3,tt,2,3),M(4,it,2,0,"span",16),l()),a&2){let e=i.$implicit;d(),Me(" ",e.Version,": ",De(2,4,e.Time,"medium")," "),d(2),y(e.FileSizes?3:-1),d(),y(e.IsFullBackup===!1?4:-1)}}function nt(a,i){a&1&&c(0,"sh-progress-bar",8)}function st(a,i){if(a&1&&(r(0,"app-file-tree",14)(1,"label",17),m(2,5),l(),c(3,"input",18),l()),a&2){let e=D(2);g("rootPaths",e.rootPaths())("initialNodes",e.initialNodes())("backupSettings",e.backupSettings())("multiSelect",!0)("showFiles",!0)}}function rt(a,i){if(a&1){let e=H();r(0,"sh-select",12),C("cleared",function(){N(e);let o=D();return f(o.abortLoading())}),r(1,"input",13),te("ngModelChange",function(o){N(e);let n=D();return ee(n.selectOption,o)||(n.selectOption=o),f(o)}),l(),Re(2,ot,5,7,"ng-template"),l(),M(3,nt,1,0,"sh-progress-bar",8),M(4,st,4,5,"app-file-tree",14)}if(a&2){let e=D();g("options",e.versionOptions())("isClearable",!1),d(),Z("ngModel",e.selectOption),g("ngModelOptions",be(6,Ze)),d(2),y(e.isRepairing()||e.versionOptionsLoading()||e.loadingRootPath()?3:-1),d(),y(e.showFileTree()?4:-1)}}var ue=new V,Ke=()=>ue.group({filesToRestore:ue.control(""),passphrase:ue.control(null)}),de=class a{#t=_(X);#e=_(P);#o=_(Xe);#n=_(oe);#i=_(h);#s=_(R);#l=_(ie);#a=null;#_=null;#r=p([]);selectFilesForm=this.#e.selectFilesForm;selectFilesFormSignal=this.#e.selectFilesFormSignal;selectOption=this.#e.selectOption;backupId=this.#e.backupId;versionOptionsLoading=this.#e.versionOptionsLoading;versionOptions=this.#e.versionOptions;isFileRestore=this.#e.isFileRestore;needsDatabaseRepair=le(()=>this.#e.backup()?.Backup?.IsTemporary??!0);showFileTree=p(!1);backupSettings=p(null);rootPaths=p([]);initialNodes=p([]);loadingRootPath=p(!1);isRepairing=le(()=>this.#r().length>0);loadedVersions=p({});loadingEffect=v(()=>{if(this.versionOptionsLoading())return;let e=this.versionOptions();if(e&&e?.length>0){let t=e[0].Version;this.selectOption.set(t.toString())}});backupSettingsEffect=v(()=>{let i=this.backupId(),e=this.selectOption(),t=this.isRepairing(),o=this.loadedVersions();if(!e||!i)return;let s=this.versionOptions()?.find(K=>K.Version===parseInt(e))?.Time??null;if(!s)return;let u=`${i}+${s}`,F=o[u];if(this.needsDatabaseRepair()&&(!F||t))return;let I={id:i+"",time:s};this.backupSettings.set(I),this.getRootPath(I)});repairEffect=v(()=>{if(!this.needsDatabaseRepair())return;let i=this.selectOption(),e=this.versionOptions();if(i){let t=e.find(s=>s.Version===parseInt(i));if(t===void 0)return;let o=this.backupId(),n=`${o}+${t.Time}`;if(this.#_===n||(this.#_=n,this.#r().includes(n)))return;this.#r.update(s=>[...s,n]),this.#t.postApiV1BackupByIdRepairupdate({id:o,requestBody:{only_paths:!0,time:t.Time}}).pipe(Q(this.abortLoading$),O(()=>{this.#_=null})).subscribe(s=>{let u=s.ID;this.#o.waitForTaskToComplete(u).pipe(U(1)).subscribe(()=>{this.#r.update(F=>F.filter(I=>I!==n)),this.loadedVersions.update(F=>(F[n]=!0,F))})})}});getRootPath(i){let e={id:i.id+"",time:i.time,prefixOnly:!0,folderContents:!1},t=i.id+"";this.isRepairing()||this.#a===t||(this.#a=t,this.loadingRootPath.set(!0),this.showFileTree.set(!1),this.#n.hasV2ListOperations()?this.#t.postApiV2BackupListFolder({requestBody:{BackupId:i.id,Time:i.time,Paths:null,PageSize:0,Page:0}}).pipe(Q(this.abortLoading$),O(()=>{this.showFileTree.set(!0),this.loadingRootPath.set(!1),this.#a=null})).subscribe({next:o=>{let n=(o.Data??[]).map(s=>s.Path??"");n.length>0?(this.initialNodes.set([]),this.rootPaths.set(n)):(this.initialNodes.set([]),this.rootPaths.set(["/"]))}}):this.#t.getApiV1BackupByIdFiles(e).pipe(Q(this.abortLoading$),O(()=>{this.showFileTree.set(!0),this.loadingRootPath.set(!1)})).subscribe({next:o=>{let n=o.Files.map(s=>s.Path??"");n.length>0?(this.initialNodes.set([]),this.rootPaths.set(n)):(this.initialNodes.set([]),this.rootPaths.set(["/"]))}}))}abortLoading$=new me;abortLoading(){this.showFileTree.set(!1),this.loadingRootPath.set(!1),this.abortLoading$.next(!0)}displayFn(){let i=this.versionOptions();return e=>{if(!e)return"";let t=i?.find(o=>typeof o.Version=="number"&&o.Version.toString()===e);return t?`${t.Version}: ${this.#l.transform(t.Time,"medium")}`:""}}next(){this.#i.navigate(["options"],{relativeTo:this.#s.parent})}back(){this.#e.isFileRestore()?this.#i.navigate(["encryption"],{relativeTo:this.#s.parent}):this.#e.exit()}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=L({type:a,selectors:[["app-select-files"]],features:[ye([ie])],decls:13,vars:3,consts:()=>{let i;i=$localize`Select files`;let e;e=$localize`${"\uFFFD#9\uFFFD"}:START_TAG_SH_ICON:arrow-left${"\uFFFD/#9\uFFFD"}:CLOSE_TAG_SH_ICON: ${"\uFFFD0\uFFFD"}:INTERPOLATION: `;let t;t=$localize`${"\uFFFD#12\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SH_ICON: Continue `;let o;o=$localize`Select an option...`;let n;n=$localize`(partial)`;let s;return s=$localize`Path`,[["formRef",""],i,e,t,n,s,[3,"submit","formGroup"],[1,"title-30"],[1,"indeterminate","primary"],[1,"form-actions"],["shButton","","type","button",3,"click"],["shButton","","type","submit",1,"raised","primary"],["value","Version",3,"cleared","options","isClearable"],["type","text","placeholder",o,3,"ngModelChange","ngModel","ngModelOptions"],[3,"rootPaths","initialNodes","backupSettings","multiSelect","showFiles"],[1,"custom-option"],[1,"partial"],["for","path"],["type","text","id","path","formControlName","filesToRestore"]]},template:function(e,t){if(e&1){let o=H();r(0,"form",6,0),C("submit",function(){return N(o),f(t.next())}),r(2,"h3",7),m(3,1),l(),M(4,et,1,0,"sh-progress-bar",8)(5,rt,5,7),r(6,"div",9)(7,"button",10),C("click",function(){return N(o),f(t.back())}),S(8,2),c(9,"sh-icon"),T(),l(),r(10,"button",11),S(11,3),c(12,"sh-icon"),T(),l()()()}e&2&&(g("formGroup",t.selectFilesForm),d(4),y(t.versionOptionsLoading()?4:5),d(5),he(t.isFileRestore()?"Back":"Exit"),Pe(8))},dependencies:[ke,w,A,G,k,Ae,W,B,x,se,J,z,We,xe,ie,Je],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}.partial[_ngcontent-%COMP%]{color:var(--base-9);font-style:italic}"],changeDetection:0})};var P=class a{#t=_(h);#e=_(R);#o=_(oe);#n=_(we);#i=_(X);backupId=p(null);backup=p(null);destinationTargetUrl=p(null);selectFilesForm=Ke();optionsForm=Qe();encryptionForm=qe();optionsFormSignal=_e(this.optionsForm.valueChanges);selectFilesFormSignal=_e(this.selectFilesForm.valueChanges);selectOption=p(null);versionOptionsLoading=p(!1);versionOptions=p([]);isSubmitting=p(!1);isFileRestore=p(!1);isFullWidthPage=p(!1);#s=p("");#l=p(null);#a=null;testSignal=this.#s.asReadonly();testErrorMessage=this.#l.asReadonly();#_=v(()=>{let i=this.destinationTargetUrl(),e=this.#s(),t=this.#a;this.#a=i,!(e==="testing"||t===null||t===i)&&(this.#s.set(""),this.#l.set(null))});init(i,e=!1){this.backupId.set(i),this.isFileRestore.set(e),e&&this.#t.navigate(["/restore-from-files/destination"]),e||this.getBackup(!0)}setTestState(i,e){this.#s.set(i),this.#l.set(e??null)}updateTargetUrl(i){this.destinationTargetUrl.set(i)}submit(){this.isSubmitting.set(!0);let i=this.backupId();this.backup()?.Backup?.IsTemporary??!1?this.#i.postApiV1BackupByIdCopytotemp({id:this.backupId()??""}).subscribe({next:t=>{this.#r(t.ID??"")},error:t=>this.showErrorDialog($localize`An error occurred while copying the backup to a temporary location: ${t.message}`)}):this.#r(i??"")}showErrorDialog(i){this.#n.open(q,{data:{title:$localize`Error occured`,message:i,confirmText:$localize`OK`,cancelText:void 0},closed:e=>{}})}#r(i){let e=this.optionsForm.value,t=this.selectFilesForm.value,o=this.selectOption(),n=this.versionOptions()?.find(s=>s.Version===(o&&parseInt(o)));this.#i.postApiV1BackupByIdRestore({id:i??"",requestBody:{paths:t.filesToRestore?.split("\0").map(s=>s.endsWith("/")||s.endsWith("\\")?`${s}*`:s)??[],passphrase:t.passphrase??null,time:n?.Time,restore_path:e.restoreFromPath,overwrite:e.handleExisting==="overwrite",permissions:e.permissions,skip_metadata:!e.includeMetadata}}).pipe(O(()=>this.isSubmitting.set(!1))).subscribe({next:s=>{this.#t.navigate([`./${s.ID}`,"progress"],{relativeTo:this.#e})},error:s=>{console.error("restore error",s)}})}exit(){this.#n.open(q,{data:{title:$localize`Confirm exit?`,message:$localize`Are you sure you want to exit?`,confirmText:$localize`Yes`,cancelText:$localize`Cancel`},closed:i=>{i&&(this.#p(),this.#t.navigate(["/"]))}})}getVersionOptions(){this.versionOptions()}loadFilesetsWithRetryv2(i,e=2){return this.#i.postApiV2BackupListFilesets({requestBody:{BackupId:i}}).pipe(Oe(t=>{let o=t?.error?.body?.StatusCode==="EncryptedStorageNoPassphrase",n=t?.error?.body?.StatusCode==="FolderMissing",s=t?.error?.body?.StatusCode==="EmptyRemoteFolder";return o||n||s||e===0?Ee(()=>t):Fe(1e3).pipe(Ne(()=>this.loadFilesetsWithRetryv2(i,e-1)))}))}getBackup(i=!1){let e=this.backupId();this.versionOptionsLoading.set(!0),this.#o.hasV2ListOperations()?re([this.#i.getApiV1BackupById({id:e}),this.loadFilesetsWithRetryv2(e)]).pipe(U(1),O(()=>this.versionOptionsLoading.set(!1))).subscribe({next:([t,o])=>{if(o.Error)throw new Error(o.Error);if(!(t.Backup?.IsTemporary??!0)&&t?.Backup?.DBPathExists===!1){this.#n.open(q,{data:{title:$localize`Missing Local Database`,message:$localize`The local database for this backup is missing. Please repair or recreate the local database before restoring.`,confirmText:$localize`OK`,cancelText:void 0},closed:s=>{this.#t.navigate(["/backup",e,"database"])}});return}this.versionOptions.set((o.Data??[]).map(s=>({Version:s.Version??-1,IsFullBackup:s.IsFullBackup??void 0,Time:s.Time??"<missing>",FileCount:s.FileCount??void 0,FileSizes:s.FileSizes??void 0}))),this.backup.set(t)},error:t=>{let o=t?.error?.body?.StatusCode==="EncryptedStorageNoPassphrase",n=t?.error?.body?.StatusCode==="FolderMissing",s=t?.error?.body?.StatusCode==="EmptyRemoteFolder",u=$localize`An error occurred while loading the backup filesets: ${t.message}`;o&&(u=$localize`The remote storage is encrypted. Please enter the passphrase to access the backup.`),n&&(u=$localize`The backup storage folder was not found.`),s&&(u=$localize`The backup storage folder does not contain any filesets.`),this.#n.open(q,{data:{title:$localize`Failed to load backup filesets`,message:u,confirmText:$localize`OK`,cancelText:void 0},closed:F=>{this.#t.navigate([o?"/restore-from-files/encryption":"/restore-from-files/destination"])}})}}):re([this.#i.getApiV1BackupById({id:e}),this.#i.getApiV1BackupByIdFilesets({id:e}).pipe(Ce(3))]).pipe(U(1),O(()=>this.versionOptionsLoading.set(!1))).subscribe({next:([t,o])=>{this.versionOptions.set(o.map(n=>({Version:n.Version??-1,IsFullBackup:(n.IsFullBackup??1)==1,Time:n.Time??"<missing>",FileCount:n.FileCount??void 0,FileSizes:n.FileSizes??void 0}))),this.backup.set(t)}})}#p(){this.selectFilesForm.reset(),this.optionsForm.reset()}static \u0275fac=function(e){return new(e||a)};static \u0275prov=fe({token:a,factory:a.\u0275fac,providedIn:"root"})};var Y=new V,Qe=()=>Y.group({restoreFrom:Y.control("orignal"),restoreFromPath:Y.control(""),handleExisting:Y.control("overwrite"),permissions:Y.control(!1),includeMetadata:Y.control(!0)}),Se=class a{#t=_(P);#e=_(h);#o=_(R);optionsForm=this.#t.optionsForm;optionsFormSignal=this.#t.optionsFormSignal;isSubmitting=this.#t.isSubmitting;goBack(){this.#e.navigate(["select-files"],{relativeTo:this.#o.parent})}submit(){this.#t.submit()}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=L({type:a,selectors:[["app-advanced-options-settings"]],decls:42,vars:7,consts:()=>{let i;i=$localize`Restore options`;let e;e=$localize`Where do you want to restore files to?`;let t;t=$localize` Original location ${"\uFFFD#9\uFFFD\uFFFD/#9\uFFFD"}:TAG_INPUT:`;let o;o=$localize` Pick location ${"\uFFFD#12\uFFFD\uFFFD/#12\uFFFD"}:TAG_INPUT:`;let n;n=$localize`How do you want to handle existing files?`;let s;s=$localize` Overwrite ${"\uFFFD#22\uFFFD\uFFFD/#22\uFFFD"}:TAG_INPUT:`;let u;u=$localize` Save different versions with timestamp in file name ${"\uFFFD#25\uFFFD\uFFFD/#25\uFFFD"}:TAG_INPUT:`;let F;F=$localize`Metadata settings`;let I;I=$localize` Restore file metadata ${"\uFFFD#31\uFFFD\uFFFD/#31\uFFFD"}:TAG_INPUT:`;let K;K=$localize` Restore read/write permissions ${"\uFFFD#34\uFFFD\uFFFD/#34\uFFFD"}:TAG_INPUT:`;let Te;Te=$localize`${"\uFFFD#38\uFFFD"}:START_TAG_SH_ICON:arrow-left${"\uFFFD/#38\uFFFD"}:CLOSE_TAG_SH_ICON: Go back `;let ge;return ge=$localize`${"\uFFFD#41\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#41\uFFFD"}:CLOSE_TAG_SH_ICON: Submit `,[["formRef",""],i,e,t,o,n,s,u,F,I,K,Te,ge,[3,"submit","formGroup"],[1,"title-30"],[3,"disallowToggle"],["title",""],[1,"raised","primary"],["type","radio","name","restoreFrom","value","orignal","formControlName","restoreFrom"],["type","radio","name","restoreFrom","value","pickLocation","formControlName","restoreFrom"],[3,"disabled","enableCreateFolder"],["for","path"],["type","text","id","path","formControlName","restoreFromPath"],["type","radio","name","handleExisting","value","overwrite","formControlName","handleExisting"],["type","radio","name","handleExisting","value","saveTimestamp","formControlName","handleExisting"],[1,"primary","raised"],["type","checkbox","formControlName","includeMetadata"],["type","checkbox","formControlName","permissions"],[1,"form-actions"],["shButton","","type","button",3,"click"],["shButton","","type","submit",1,"raised","primary"]]},template:function(e,t){if(e&1){let o=H();r(0,"form",13,0),C("submit",function(){return N(o),f(t.submit())}),r(2,"h3",14),m(3,1),l(),r(4,"app-toggle-card",15),b(5,16),m(6,2),$(),r(7,"sh-radio",17),S(8,3),c(9,"input",18),T(),l(),r(10,"sh-radio",17),S(11,4),c(12,"input",19),T(),l(),r(13,"app-file-tree",20)(14,"label",21),j(15,"Path"),l(),c(16,"input",22),l()(),r(17,"app-toggle-card",15),b(18,16),m(19,5),$(),r(20,"sh-radio",17),S(21,6),c(22,"input",23),T(),l(),r(23,"sh-radio",17),S(24,7),c(25,"input",24),T(),l()(),r(26,"app-toggle-card"),b(27,16),m(28,8),$(),r(29,"sh-toggle",25),S(30,9),c(31,"input",26),T(),l(),r(32,"sh-toggle",25),S(33,10),c(34,"input",27),T(),l()(),r(35,"div",28)(36,"button",29),C("click",function(){return N(o),f(t.goBack())}),S(37,11),c(38,"sh-icon"),T(),l(),r(39,"button",30),S(40,12),c(41,"sh-icon"),T(),l()()()}if(e&2){let o;g("formGroup",t.optionsForm),d(4),g("disallowToggle",!0),d(9),g("disabled",((o=t.optionsFormSignal())==null?null:o.restoreFrom)!=="pickLocation")("enableCreateFolder",!0),d(4),g("disallowToggle",!0),d(22),Ie("loader",t.isSubmitting())}},dependencies:[W,w,A,ve,Ge,G,k,B,x,ne,se,ze,Ve,J,z],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}"],changeDetection:0})};export{Qe as a,Se as b,qe as c,pe as d,Ke as e,de as f,P as g};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as C}from"./chunk-
|
|
1
|
+
import{g as C}from"./chunk-ERFIISF6.js";import"./chunk-DUHMJQLC.js";import"./chunk-ZBVBVQO7.js";import"./chunk-C6F6FP4R.js";import{a as w}from"./chunk-7RM3VKDO.js";import{h as k}from"./chunk-2J4H7C6W.js";import"./chunk-USYSNGYO.js";import"./chunk-3NFAL4U4.js";import"./chunk-4VY6SMSL.js";import{b as u}from"./chunk-Z27IQRKV.js";import"./chunk-YHUSOICR.js";import"./chunk-4NBLWONL.js";import"./chunk-CCKT2GLS.js";import"./chunk-LVTEOKA4.js";import"./chunk-6Q6SSTBK.js";import"./chunk-XLDVUBTQ.js";import"./chunk-LN26XMBJ.js";import"./chunk-7LYN2XHO.js";import"./chunk-GCCJSS4C.js";import{a as A,b as $,c as M,d as I,e as G,f as W}from"./chunk-ABYM5HWA.js";import"./chunk-Z35OG2DV.js";import{L as v,Q as y}from"./chunk-QF4DQYEP.js";import"./chunk-2QJVTZ56.js";import"./chunk-I2LW33GO.js";import"./chunk-5ZSBXGHQ.js";import"./chunk-FPPZ4BUR.js";import"./chunk-JYWOYPSQ.js";import{$b as O,Ac as N,Bc as R,Cb as _,Cc as p,Db as i,Eb as n,Fb as s,Rc as L,Sa as r,Tb as F,Ub as l,_ as c,cb as P,kc as D,pa as f,xb as E,yb as g}from"./chunk-QONLYWYC.js";import"./chunk-EUDKD2JW.js";var b=()=>["/restore-from-files/destination"],x=()=>["/restore-from-files/encryption"],H=()=>["/restore-from-files/select-files"],J=()=>["/restore-from-files/options"],X=t=>["/restore",t,"select-files"],z=t=>["/restore",t,"options"];function B(t,o){t&1&&(i(0,"div",7),F(1,0),s(2,"sh-radio"),l(),n(),i(3,"div",7),F(4,1),s(5,"sh-radio"),l(),n(),i(6,"div",7),F(7,2),s(8,"sh-radio"),l(),n(),i(9,"div",7),F(10,3),s(11,"sh-radio"),l(),n()),t&2&&(_("routerLink",R(4,b)),r(3),_("routerLink",R(5,x)),r(3),_("routerLink",R(6,H)),r(3),_("routerLink",R(7,J)))}function U(t,o){if(t&1&&(i(0,"div",7),F(1,4),s(2,"sh-radio"),l(),n(),i(3,"div",7),F(4,5),s(5,"sh-radio"),l(),n()),t&2){let e=O(2);_("routerLink",p(2,X,e.backupId())),r(3),_("routerLink",p(4,z,e.backupId()))}}function j(t,o){if(t&1&&(i(0,"sh-stepper",6),E(1,B,12,8)(2,U,6,6),n()),t&2){let e=O();r(),g(e.isFileRestore()?1:2)}}var h=class t{#e=c($);#o=c(I);#t=c(C);#i=u(this.#e.params);#n=u(this.#e.url);#s=u(this.#e.children[0].url);backupId=this.#t.backupId;isFileRestore=this.#t.isFileRestore;isProgressPage=f(!1);paramsChanged=L(()=>{let o=this.#s(),e=this.#i()?.id,a=!!this.#n()?.find(S=>S.path==="restore-from-files"),T=!!o?.find(S=>S.path==="progress");this.isProgressPage.set(T),this.#t.init(e,a)});ngOnInit(){this.#o.events.subscribe(o=>{if(o instanceof A){let e=o.urlAfterRedirects;this.isProgressPage.set(e.includes("progress"))}})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=P({type:t,selectors:[["app-restore-flow"]],hostVars:2,hostBindings:function(e,a){e&2&&D("full-width",a.isProgressPage())},features:[N([C,k])],decls:4,vars:1,consts:()=>{let o;o=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_RADIO: Destination `;let e;e=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SH_RADIO: Encryption `;let a;a=$localize`${"\uFFFD#8\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#8\uFFFD"}:CLOSE_TAG_SH_RADIO: Select files `;let T;T=$localize`${"\uFFFD#11\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#11\uFFFD"}:CLOSE_TAG_SH_RADIO: Options `;let S;S=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_RADIO: Select files `;let m;return m=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SH_RADIO: Options `,[o,e,a,T,S,m,[1,"primary"],["step","","routerLinkActive","active",3,"routerLink"]]},template:function(e,a){e&1&&(s(0,"app-status-bar"),E(1,j,3,1,"sh-stepper",6),i(2,"section"),s(3,"router-outlet"),n()),e&2&&(r(),g(a.isProgressPage()?-1:1))},dependencies:[y,v,w,M,G,W],styles:["[_nghost-%COMP%]{display:block}.full-width[_nghost-%COMP%] section[_ngcontent-%COMP%]{max-width:62.5rem}sh-stepper[_ngcontent-%COMP%]{max-width:31.25rem;margin:2.5rem auto}section[_ngcontent-%COMP%]{max-width:31.25rem;margin:0 auto 2.5rem}"],changeDetection:0})};export{h as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as a,d as b}from"./chunk-
|
|
1
|
+
import{c as a,d as b}from"./chunk-ERFIISF6.js";import"./chunk-DUHMJQLC.js";import"./chunk-ZBVBVQO7.js";import"./chunk-C6F6FP4R.js";import"./chunk-USYSNGYO.js";import"./chunk-3NFAL4U4.js";import"./chunk-Z27IQRKV.js";import"./chunk-CCKT2GLS.js";import"./chunk-LVTEOKA4.js";import"./chunk-XLDVUBTQ.js";import"./chunk-LN26XMBJ.js";import"./chunk-GCCJSS4C.js";import"./chunk-ABYM5HWA.js";import"./chunk-Z35OG2DV.js";import"./chunk-QF4DQYEP.js";import"./chunk-2QJVTZ56.js";import"./chunk-5ZSBXGHQ.js";import"./chunk-FPPZ4BUR.js";import"./chunk-QONLYWYC.js";import"./chunk-EUDKD2JW.js";export{a as createEncryptionForm,b as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./chunk-EUDKD2JW.js";var o=[{path:"",redirectTo:"select-files",pathMatch:"full"},{path:"destination",loadComponent:()=>import("./chunk-EKL66TNH.js")},{path:"encryption",loadComponent:()=>import("./chunk-GNKFIYOX.js")},{path:"select-files",loadComponent:()=>import("./chunk-OQ3CIW34.js")},{path:"options",loadComponent:()=>import("./chunk-TYUEMPMP.js")},{path:":taskid/progress",loadComponent:()=>import("./chunk-V7LUGECS.js")}],t=o;export{t as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as Y,f as tn}from"./chunk-C6F6FP4R.js";import{a as on}from"./chunk-VXRNST6C.js";import{a as nn}from"./chunk-GYDI67IZ.js";import{a as en}from"./chunk-4NBLWONL.js";import"./chunk-CCKT2GLS.js";import"./chunk-72HORZFV.js";import"./chunk-6Q6SSTBK.js";import"./chunk-XLDVUBTQ.js";import"./chunk-LN26XMBJ.js";import{a as Ze}from"./chunk-7LYN2XHO.js";import"./chunk-GCCJSS4C.js";import{e as Xe}from"./chunk-ABYM5HWA.js";import"./chunk-Z35OG2DV.js";import{A as we,B as ze,C as Ve,E as Ue,F as je,J as Ke,K as We,R as qe,S as Qe,u as Je}from"./chunk-QF4DQYEP.js";import{h as Ye}from"./chunk-2QJVTZ56.js";import"./chunk-I2LW33GO.js";import"./chunk-5ZSBXGHQ.js";import"./chunk-FPPZ4BUR.js";import"./chunk-JYWOYPSQ.js";import{$b as u,Ab as w,Bb as z,Bc as q,Cb as E,Cc as D,Db as o,Eb as t,Fb as T,Fc as M,Gc as G,H as j,Hc as R,Jb as O,Jc as Q,Kb as m,Lb as f,Mb as H,Pa as K,Rc as ve,Sa as a,Tb as c,Ub as s,Vb as d,Wb as h,Xb as A,Yb as W,Zb as $,_ as v,cb as He,ea as P,fa as I,hb as N,ib as Ge,ic as V,kc as L,nc as r,pa as X,pc as S,sb as xe,sc as ye,tb as ke,tc as Be,uc as be,xb as g,yb as p,zb as J}from"./chunk-QONLYWYC.js";import"./chunk-EUDKD2JW.js";var an=()=>[import("./chunk-SR4YENFS.js").then(e=>e.NgTemplateOutlet),Ue,Qe,qe,import("./chunk-WNJSKJGQ.js").then(e=>e.DurationFormatPipe),import("./chunk-FIOBQPE7.js").then(e=>e.BytesPipe),import("./chunk-M7QQEZOU.js").then(e=>e.RelativeTimePipe)],ln=()=>["/add-backup"],rn=()=>["/restore"],_n=e=>({$implicit:e}),cn=e=>["/backup",e],sn=e=>["/restore",e],un=e=>["/backup",e,"export"],Fn=e=>["/backup",e,"delete"],Cn=e=>["/backup",e,"database"],Tn=e=>["/backup",e,"commandline"],En=e=>["/backup",e,"log"];function dn(e,i){if(e&1){let n=H();o(0,"button",52),$("click",function(){let F=P(n).$implicit,C=u(2);return I(C.sortByColumn.set(F.value))}),d(1,15),t()}if(e&2){let n=i.$implicit,_=u(2);L("active",_.orderBy()===n.value),a(),h(n.label),A(1)}}function gn(e,i){if(e&1&&(o(0,"sh-menu",53)(1,"button",54),c(2,14),T(3,"strong")(4,"sh-icon"),s(),t(),O(5,55),w(6,dn,2,3,"button",56,J),m(),t()),e&2){let n=u();a(4),h(n.orderBy()),A(2),a(2),z(n.sortOrderOptions())}}function pn(e,i){if(e&1&&(o(0,"p")(1,"span"),d(2,21),t(),r(3),M(4,"relativeTime"),t()),e&2){let n=u().$implicit,_=u(4);a(3),S(" ",R(4,1,n.Schedule.Time,_.timeType()==="actual")," ")}}function Sn(e,i){if(e&1&&(r(0),M(1,"durationFormat")),e&2){let n=u().$implicit,_=u(4);S(" ",R(1,1,n.Backup.Metadata==null?null:n.Backup.Metadata.LastBackupDuration,_.timeType()==="actual")," ")}}function On(e,i){e&1&&(O(0),r(1,"-"),m())}function mn(e,i){if(e&1&&(r(0),M(1,"bytes")),e&2){let n=u().$implicit;S(" ",G(1,1,n.Backup.Metadata==null?null:n.Backup.Metadata.SourceFilesSize)," ")}}function Nn(e,i){e&1&&(O(0),r(1,"-"),m())}function Mn(e,i){if(e&1&&(r(0),M(1,"bytes")),e&2){let n=u().$implicit;S(" ",G(1,1,n.Backup.Metadata==null?null:n.Backup.Metadata.TargetFilesSize)," ")}}function Pn(e,i){e&1&&(O(0),r(1,"-"),m())}function In(e,i){e&1&&(o(0,"sh-chip",63),d(1,22),t())}function fn(e,i){e&1&&f(0)}function Dn(e,i){if(e&1&&(o(0,"div",59)(1,"div",46)(2,"h3"),r(3),o(4,"sh-chip"),T(5,"img",60),r(6),t()(),o(7,"p")(8,"span"),d(9,16),t(),r(10),M(11,"relativeTime"),t(),g(12,pn,5,4,"p"),o(13,"p")(14,"span"),d(15,17),t(),g(16,Sn,2,4)(17,On,2,0,"ng-container"),t(),o(18,"p")(19,"span"),d(20,18),t(),g(21,mn,2,3)(22,Nn,2,0,"ng-container"),t(),o(23,"p")(24,"span"),d(25,19),t(),g(26,Mn,2,3)(27,Pn,2,0,"ng-container"),t()(),o(28,"div",61)(29,"sh-chip",62),d(30,20),t(),g(31,In,2,0,"sh-chip",63),t(),o(32,"div",50),N(33,fn,1,0,"ng-container",64),t()()),e&2){let n=i.$implicit,_=u(4),F=V(51);a(3),S(" ",n.Backup.Name??_.MISSING_BACKUP_NAME," "),a(2),E("src",_.getBackendIcon(n.Backup.TargetURL),K),a(),S(" ",_.getBackendType(n.Backup.TargetURL)," "),a(4),S(" ",R(11,13,n.Backup.Metadata==null?null:n.Backup.Metadata.LastBackupFinished,_.timeType()==="actual")," "),a(2),p(!(n==null||n.Schedule==null)&&n.Schedule.Time?12:-1),a(4),p(n.Backup.Metadata!=null&&n.Backup.Metadata.LastBackupDuration?16:17),a(5),p(n.Backup.Metadata!=null&&n.Backup.Metadata.SourceFilesSize?21:22),a(5),p(n.Backup.Metadata!=null&&n.Backup.Metadata.TargetFilesSize?26:27);let C=_.getBackupVersionCount(n);a(4),h(C)(C),A(30),a(),p(n.Backup.ExternalID?31:-1),a(2),E("ngTemplateOutlet",F)("ngTemplateOutletContext",D(16,_n,n))}}function $n(e,i){if(e&1&&w(0,Dn,34,18,"div",59,J),e&2){let n=u(3);z(n.backups())}}function Rn(e,i){e&1&&(O(0),d(1,23),m())}function hn(e,i){if(e&1&&(o(0,"div",57),g(1,$n,2,0)(2,Rn,2,0,"ng-container"),t()),e&2){let n=u(2);a(),p(n.backups().length?1:2)}}function An(e,i){e&1&&(c(0,24,1),f(1),s())}function Ln(e,i){e&1&&(c(0,25,1),f(1),s())}function Hn(e,i){e&1&&(c(0,26,1),f(1),s())}function Gn(e,i){e&1&&(c(0,27,1),f(1),s())}function xn(e,i){e&1&&(c(0,28,1),f(1),s())}function kn(e,i){e&1&&(c(0,29,1),f(1),s())}function yn(e,i){e&1&&(c(0,30,1),f(1),s())}function Bn(e,i){if(e&1&&(r(0),M(1,"relativeTime")),e&2){let n=u().$implicit,_=u(3);S(" ",R(1,1,n.Backup.Metadata==null?null:n.Backup.Metadata.LastBackupDate,_.timeType()==="actual")," ")}}function bn(e,i){e&1&&(O(0),r(1,"-"),m())}function vn(e,i){if(e&1&&(r(0),M(1,"relativeTime")),e&2){let n=u().$implicit,_=u(3);S(" ",R(1,1,n.Schedule.Time,_.timeType()==="actual")," ")}}function Xn(e,i){e&1&&(O(0),r(1,"-"),m())}function Jn(e,i){if(e&1&&(r(0),M(1,"durationFormat")),e&2){let n=u().$implicit,_=u(3);S(" ",R(1,1,n.Backup.Metadata==null?null:n.Backup.Metadata.LastBackupDuration,_.timeType()==="actual")," ")}}function wn(e,i){e&1&&(O(0),r(1,"-"),m())}function zn(e,i){if(e&1&&(r(0),M(1,"bytes")),e&2){let n=u().$implicit;S(" ",G(1,1,n.Backup.Metadata==null?null:n.Backup.Metadata.SourceFilesSize)," ")}}function Vn(e,i){e&1&&(O(0),r(1,"-"),m())}function Un(e,i){if(e&1&&(r(0),M(1,"bytes")),e&2){let n=u().$implicit;S(" ",G(1,1,n.Backup.Metadata==null?null:n.Backup.Metadata.TargetFilesSize)," ")}}function jn(e,i){e&1&&(O(0),r(1,"-"),m())}function Kn(e,i){e&1&&f(0)}function Wn(e,i){if(e&1&&(o(0,"tr")(1,"td"),r(2),t(),o(3,"td")(4,"sh-chip",51),T(5,"img",60),r(6),t()(),o(7,"td"),g(8,Bn,2,4)(9,bn,2,0,"ng-container"),t(),o(10,"td"),g(11,vn,2,4)(12,Xn,2,0,"ng-container"),t(),o(13,"td"),g(14,Jn,2,4)(15,wn,2,0,"ng-container"),t(),o(16,"td"),g(17,zn,2,3)(18,Vn,2,0,"ng-container"),t(),o(19,"td"),g(20,Un,2,3)(21,jn,2,0,"ng-container"),t(),o(22,"td")(23,"span"),d(24,33),t()(),o(25,"td"),N(26,Kn,1,0,"ng-container",64),t()()),e&2){let n=i.$implicit,_=u(3),F=V(51);a(2),S(" ",n.Backup.Name??_.MISSING_BACKUP_NAME," "),a(3),E("src",_.getBackendIcon(n.Backup.TargetURL),K),a(),S(" ",_.getBackendType(n.Backup.TargetURL)," "),a(2),p(n.Backup.Metadata!=null&&n.Backup.Metadata.LastBackupDate?8:9),a(3),p(!(n==null||n.Schedule==null)&&n.Schedule.Time?11:12),a(3),p(n.Backup.Metadata!=null&&n.Backup.Metadata.LastBackupDuration?14:15),a(3),p(n.Backup.Metadata!=null&&n.Backup.Metadata.SourceFilesSize?17:18),a(3),p(n.Backup.Metadata!=null&&n.Backup.Metadata.TargetFilesSize?20:21);let C=_.getBackupVersionCount(n);a(4),h(C)(C),A(24),a(2),E("ngTemplateOutlet",F)("ngTemplateOutletContext",D(12,_n,n))}}function qn(e,i){if(e&1){let n=H();o(0,"sh-table",65),be("sortByColumnChange",function(F){P(n);let C=u(2);return Be(C.sortByColumn,F)||(C.sortByColumn=F),I(F)}),o(1,"tr",66)(2,"th",67),c(3,24),N(4,An,2,0,"ng-container",68),s(),t(),o(5,"th",69),c(6,25),N(7,Ln,2,0,"ng-container",68),s(),t(),o(8,"th",70),c(9,26),N(10,Hn,2,0,"ng-container",68),s(),t(),o(11,"th",71),c(12,27),N(13,Gn,2,0,"ng-container",68),s(),t(),o(14,"th",72),c(15,28),N(16,xn,2,0,"ng-container",68),s(),t(),o(17,"th",73),c(18,29),N(19,kn,2,0,"ng-container",68),s(),t(),o(20,"th",74),c(21,30),N(22,yn,2,0,"ng-container",68),s(),t(),o(23,"th"),d(24,31),t(),o(25,"th"),d(26,32),t()(),w(27,Wn,27,14,"tr",null,J),t()}if(e&2){let n=u(2),_=V(53);E("data",n.backups())("loading",n.backupsLoading()),ye("sortByColumn",n.sortByColumn),a(4),E("ngTemplateOutlet",_),a(3),E("ngTemplateOutlet",_),a(3),E("ngTemplateOutlet",_),a(3),E("ngTemplateOutlet",_),a(3),E("ngTemplateOutlet",_),a(3),E("ngTemplateOutlet",_),a(3),E("ngTemplateOutlet",_),a(5),z(n.backups())}}function Qn(e,i){if(e&1&&g(0,hn,3,1,"div",57)(1,qn,29,10,"sh-table",58),e&2){let n=u();p(n.viewMode()==="list"?0:n.viewMode()==="details"?1:-1)}}function Yn(e,i){e&1&&(o(0,"div",75),T(1,"sh-progress-bar",76),o(2,"div",46)(3,"h3"),d(4,34),t()()())}function Zn(e,i){e&1&&d(0,35,1)}function et(e,i){e&1&&(o(0,"sh-icon"),r(1,"check"),t())}function nt(e,i){e&1&&(o(0,"sh-icon"),r(1,"dots-three-vertical"),t())}function tt(e,i){if(e&1){let n=H();o(0,"button",77),$("click",function(){let F=P(n).$implicit,C=u();return I(C.startBackup(F.Backup.ID))}),c(1,35),T(2,"sh-icon"),g(3,Zn,1,0),s(),t(),o(4,"button",78)(5,"sh-icon"),r(6,"pencil-simple"),t()(),o(7,"sh-menu")(8,"button",47),g(9,et,2,0,"sh-icon")(10,nt,2,0,"sh-icon"),t(),O(11,55),o(12,"h3",79),r(13,"Operations"),t(),o(14,"button",80),c(15,36),T(16,"sh-icon"),s(),t(),o(17,"button",80),c(18,37),T(19,"sh-icon"),s(),t(),o(20,"button",80),c(21,38),T(22,"sh-icon"),s(),t(),T(23,"sh-divider"),o(24,"h3",79),r(25,"Advanced"),t(),o(26,"button",80),c(27,39),T(28,"sh-icon"),s(),t(),o(29,"button",52),$("click",function(){let F=P(n).$implicit,C=u();return I(C.verifyFiles(F.Backup.ID))}),c(30,40),T(31,"sh-icon"),s(),t(),o(32,"button",52),$("click",function(){let F=P(n).$implicit,C=u();return I(C.compressBackup(F.Backup.ID))}),c(33,41),T(34,"sh-icon"),s(),t(),o(35,"button",80),c(36,42),T(37,"sh-icon"),s(),t(),T(38,"sh-divider"),o(39,"h3",79),r(40,"Reporting"),t(),o(41,"button",80),c(42,43),T(43,"sh-icon"),s(),t(),m(),t()}if(e&2){let n=i.$implicit,_=u();L("loader",_.startingBackup()===n.Backup.ID),a(3),p(_.viewMode()==="list"?3:-1),a(),E("routerLink",D(15,cn,n.Backup.ID)),a(4),L("loader",_.loadingId()===n.Backup.ID)("success",_.successId()===n.Backup.ID),a(),p(_.successId()===n.Backup.ID?9:10),a(5),E("routerLink",D(17,sn,n.Backup.ID)),a(3),E("routerLink",D(19,un,n.Backup.ID)),a(3),E("routerLink",D(21,Fn,n.Backup.ID)),a(6),E("routerLink",D(23,Cn,n.Backup.ID)),a(9),E("routerLink",D(25,Tn,n.Backup.ID)),a(6),E("routerLink",D(27,En,n.Backup.ID))}}function it(e,i){e&1&&(o(0,"sh-icon",81),r(1,"funnel-simple"),t(),o(2,"sh-icon",82),r(3,"sort-ascending"),t(),o(4,"sh-icon",83),r(5,"sort-descending"),t())}var ot={file:{Display:$localize`Local`,Icon:null}},Z=class e{#n=v(Ye);#t=v(nn);#e=v(en);MISSING_BACKUP_NAME=$localize`Backup name missing`;sortOrderOptions=this.#e.orderByOptions;orderBy=this.#e.orderBy;backups=this.#e.backups;backupsLoading=this.#e.backupsLoading;startingBackup=this.#e.startingBackup;deletingBackup=this.#e.deletingBackup;timeType=this.#e.timeType;viewMode=Ze("viewMode","list");sortByColumn=X(this.#e.orderBy());loadingId=X(null);successId=X(null);sortEffect=ve(()=>this.#e.setOrderBy(this.sortByColumn()));ngOnInit(){this.#e.getBackups(!0)}setOrderBy(i){this.#e.setOrderBy(i)}setTimeType(i){this.#e.setTimeType(i)}startBackup(i){this.#t.resumeDialogCheck(()=>this.#e.startBackup(i))}getBackendIcon(i){if(!i)return"";let n=i.split("://")[0];return Y(n).icon??"database"}getBackendType(i){if(!i)return"";let n=i.split("://")[0],_=Y(n);if(!_)return"";let F=ot[_.key];if(F?.Display)return F.Display;if(_.key==="s3"){let C="http://null?"+i.split("?")[1],x=new URL(C).searchParams.get("s3-server-name")?.toLowerCase()??"";for(let[k,y]of Object.entries(tn))if(x.endsWith(k))return y}return _.displayName}getBackupVersionCount(i){return parseInt(i?.Backup?.Metadata?.BackupListCount??"",10)||0}verifyFiles(i){this.loadingId.set(i),this.#n.postApiV1BackupByIdVerify({id:i}).pipe(j(()=>this.loadingId.set(null))).subscribe({next:()=>{this.successId.set(i),setTimeout(()=>this.successId.set(null),2e3)}})}compressBackup(i){this.loadingId.set(i),this.#n.postApiV1BackupByIdCompact({id:i}).pipe(j(()=>this.loadingId.set(null))).subscribe({next:()=>{this.successId.set(i),setTimeout(()=>this.successId.set(null),2e3)}})}static \u0275fac=function(n){return new(n||e)};static \u0275cmp=He({type:e,selectors:[["app-home"]],decls:54,vars:11,consts:()=>{let i;i=$localize`Backups`;let n;n=$localize`Backups are stored in the cloud and can be restored at any time.`;let _;_=$localize` Add ${"\uFFFD#12\uFFFD"}:START_TAG_SH_ICON:plus${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SH_ICON:`;let F;F=$localize`Restores`;let C;C=$localize`Restores allow you to restore your data from the cloud.`;let U;U=$localize` Start ${"\uFFFD#22\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SH_ICON:`;let x;x=$localize`My backups`;let k;k=$localize`${"\uFFFD#31\uFFFD"}:START_TAG_SH_ICON:rows${"\uFFFD/#31\uFFFD"}:CLOSE_TAG_SH_ICON: List `;let y;y=$localize`${"\uFFFD#34\uFFFD"}:START_TAG_SH_ICON:list${"\uFFFD/#34\uFFFD"}:CLOSE_TAG_SH_ICON: Details `;let ee;ee=$localize` Time: ${"\uFFFD#38\uFFFD"}:START_TAG_STRONG:${"\uFFFD0\uFFFD"}:INTERPOLATION:${"\uFFFD/#38\uFFFD"}:CLOSE_TAG_STRONG:${"\uFFFD#39\uFFFD"}:START_TAG_SH_ICON:clock${"\uFFFD/#39\uFFFD"}:CLOSE_TAG_SH_ICON:`;let ne;ne=$localize`Relative time`;let te;te=$localize`Actual time`;let ie;ie=$localize` Order by: ${"\uFFFD#3\uFFFD"}:START_TAG_STRONG:${"\uFFFD0\uFFFD"}:INTERPOLATION:${"\uFFFD/#3\uFFFD"}:CLOSE_TAG_STRONG:${"\uFFFD#4\uFFFD"}:START_TAG_SH_ICON:arrows-down-up${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SH_ICON:`;let oe;oe=$localize` ${"\uFFFD0\uFFFD"}:INTERPOLATION: `;let _e;_e=$localize`Last successful backup:`;let ae;ae=$localize`Duration:`;let le;le=$localize`Source:`;let re;re=$localize`Destination:`;let B;B=$localize`{VAR_PLURAL, plural, =0 {No version yet} =1 {1 Version} other {{INTERPOLATION} Versions}}`,B=W(B,{INTERPOLATION:"\uFFFD1\uFFFD",VAR_PLURAL:"\uFFFD0\uFFFD"});let ce;ce=$localize` ${B}:ICU@@6502601490918455200: `;let se;se=$localize`Next scheduled run:`;let ue;ue=$localize`Externally managed`;let Fe;Fe=$localize`No backups founds`;let Ce;Ce=$localize` Backup ${"\uFFFD*4:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*4:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Te;Te=$localize` Type ${"\uFFFD*7:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*7:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Ee;Ee=$localize` Last backup ${"\uFFFD*10:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*10:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let de;de=$localize` Next run ${"\uFFFD*13:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*13:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let ge;ge=$localize` Duration ${"\uFFFD*16:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*16:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let pe;pe=$localize` Source ${"\uFFFD*19:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*19:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Se;Se=$localize` Destination ${"\uFFFD*22:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*22:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Oe;Oe=$localize`Version`;let me;me=$localize`Actions`;let b;b=$localize`{VAR_PLURAL, plural, =0 {No versions} =1 {1 Version} other {{INTERPOLATION} Versions}}`,b=W(b,{INTERPOLATION:"\uFFFD1\uFFFD",VAR_PLURAL:"\uFFFD0\uFFFD"});let Ne;Ne=$localize` ${b}:ICU@@3521773141017690117: `;let Me;Me=$localize`Loading backups...`;let Pe;Pe=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:play-circle${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON:${"\uFFFD*3:1\uFFFD"}:START_BLOCK_IF: Start ${"\uFFFD/*3:1\uFFFD"}:CLOSE_BLOCK_IF:`;let Ie;Ie=$localize`${"\uFFFD#16\uFFFD"}:START_TAG_SH_ICON:clock-counter-clockwise${"\uFFFD/#16\uFFFD"}:CLOSE_TAG_SH_ICON: Restore `;let fe;fe=$localize`${"\uFFFD#19\uFFFD"}:START_TAG_SH_ICON:export${"\uFFFD/#19\uFFFD"}:CLOSE_TAG_SH_ICON: Export `;let De;De=$localize`${"\uFFFD#22\uFFFD"}:START_TAG_SH_ICON:x-circle${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SH_ICON: Delete `;let $e;$e=$localize`${"\uFFFD#28\uFFFD"}:START_TAG_SH_ICON:database${"\uFFFD/#28\uFFFD"}:CLOSE_TAG_SH_ICON: Database `;let Re;Re=$localize`${"\uFFFD#31\uFFFD"}:START_TAG_SH_ICON:check-square-offset${"\uFFFD/#31\uFFFD"}:CLOSE_TAG_SH_ICON: Verify files `;let he;he=$localize`${"\uFFFD#34\uFFFD"}:START_TAG_SH_ICON:file-archive${"\uFFFD/#34\uFFFD"}:CLOSE_TAG_SH_ICON: Compress now `;let Ae;Ae=$localize`${"\uFFFD#37\uFFFD"}:START_TAG_SH_ICON:terminal-window${"\uFFFD/#37\uFFFD"}:CLOSE_TAG_SH_ICON: Commandline `;let Le;return Le=$localize`${"\uFFFD#43\uFFFD"}:START_TAG_SH_ICON:notepad${"\uFFFD/#43\uFFFD"}:CLOSE_TAG_SH_ICON: Log `,[["actions",""],["sortIcons",""],i,n,_,F,C,U,x,k,y,ee,ne,te,ie,oe,_e,ae,le,re,ce,se,ue,Fe,Ce,Te,Ee,de,ge,pe,Se,Oe,me,Ne,Me,Pe,Ie,fe,De,$e,Re,he,Ae,Le,[1,"type-a","actionable",3,"routerLink"],["src","assets/images/backup.png","alt","","width","48px"],[1,"text"],["type","button","shButton",""],["src","assets/images/restore.png","alt","","width","48px"],[1,"content"],[1,"actions"],[1,"small"],["type","button",3,"click"],[1,"table-overview"],["type","button","shButton","",1,"small"],["menu",""],["type","button",3,"active"],[1,"backups"],[1,"type-b",3,"data","loading","sortByColumn"],[1,"backup"],["alt","",1,"provider-icon",3,"src"],[1,"tags"],[1,"simple","success"],[1,"simple","primary"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"type-b",3,"sortByColumnChange","data","loading","sortByColumn"],["table-header",""],["shSort","name"],[4,"ngTemplateOutlet"],["shSort","type"],["shSort","lastrun"],["shSort","nextrun"],["shSort","duration"],["shSort","sourcesize"],["shSort","destinationsize"],[1,"loading-list"],[1,"indeterminate","primary"],["shButton","",3,"click"],["type","button","shButton","",3,"routerLink"],["title",""],["type","button",3,"routerLink"],[1,"filter"],[1,"asc"],[1,"desc"]]},template:function(n,_){if(n&1){let F=H();T(0,"app-status-bar"),o(1,"section")(2,"header")(3,"sh-card",44),T(4,"img",45),o(5,"div",46)(6,"h3"),d(7,2),t(),o(8,"p"),d(9,3),t()(),o(10,"button",47),c(11,4),T(12,"sh-icon"),s(),t()(),o(13,"sh-card",44),T(14,"img",48),o(15,"div",46)(16,"h3"),d(17,5),t(),o(18,"p"),d(19,6),t()(),o(20,"button",47),c(21,7),T(22,"sh-icon"),s(),t()()(),o(23,"div",49)(24,"h2"),O(25),d(26,8),m(),o(27,"div",50)(28,"sh-button-group",51)(29,"button",52),$("click",function(){return P(F),I(_.viewMode.set("list"))}),c(30,9),T(31,"sh-icon"),s(),t(),o(32,"button",52),$("click",function(){return P(F),I(_.viewMode.set("details"))}),c(33,10),T(34,"sh-icon"),s(),t()(),o(35,"sh-menu",53)(36,"button",54),c(37,11),T(38,"strong")(39,"sh-icon"),s(),t(),O(40,55),o(41,"button",52),$("click",function(){return P(F),I(_.setTimeType("relative"))}),d(42,12),t(),o(43,"button",52),$("click",function(){return P(F),I(_.setTimeType("actual"))}),d(44,13),t(),m(),t(),g(45,gn,8,1,"sh-menu",53),t()(),Ge(46,Qn,2,1)(47,Yn,5,0),xe(48,46,an,null,47),t()(),N(50,tt,44,29,"ng-template",null,0,Q)(52,it,6,0,"ng-template",null,1,Q)}n&2&&(a(3),E("routerLink",q(9,ln)),a(10),E("routerLink",q(10,rn)),a(16),L("active",_.viewMode()==="list"),a(3),L("active",_.viewMode()==="details"),a(7),h(_.timeType()),A(37),a(6),p(_.viewMode()==="list"?45:-1),a(3),ke(!_.backupsLoading()))},dependencies:[Xe,on,Ve,ze,Je,je,Ke,We,we],styles:["[_nghost-%COMP%]{display:block}h2[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2rem;padding:2rem 0}header[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;padding:0 2rem;gap:1rem}sh-card[_ngcontent-%COMP%]{display:flex;align-items:center;gap:1rem}sh-card[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{flex:1 0;display:flex;flex-direction:column;gap:.25rem}.content[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem}.content[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{padding:0 2rem}.backups[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:0 2rem;gap:.5rem}.backup[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:2rem;gap:1rem;border:1px solid var(--base-4);border-radius:var(--shape-3);box-shadow:var(--box-shadow-10)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem;width:100%;max-width:40%}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] sh-icon[_ngcontent-%COMP%]{color:var(--base-8)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font:var(--paragraph-30);color:var(--base-8)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] p[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--base-12)}.backup[_ngcontent-%COMP%] .tags[_ngcontent-%COMP%]{display:flex;align-items:center;flex-direction:column;gap:.5rem}.provider-icon[_ngcontent-%COMP%]{width:1.25rem;height:1.25rem}.actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.sortable[_ngcontent-%COMP%]{-webkit-user-select:none;user-select:none}.sortable[_ngcontent-%COMP%] sh-icon[_ngcontent-%COMP%]{margin-left:.5rem;font-size:1rem;justify-self:flex-end;display:none}.sortable[_ngcontent-%COMP%]:not(.sort-asc):not(.sort-desc) sh-icon.filter[_ngcontent-%COMP%]{display:block}.sortable.sort-asc[_ngcontent-%COMP%] sh-icon.asc[_ngcontent-%COMP%]{display:block;color:var(--base-12)}.sortable.sort-desc[_ngcontent-%COMP%] sh-icon.desc[_ngcontent-%COMP%]{display:block;color:var(--base-12)}.actionable[_ngcontent-%COMP%]{cursor:pointer}.actionable[_ngcontent-%COMP%]:after{transition:inset .1s linear}.actionable[_ngcontent-%COMP%]:hover{--card-shp: 0}"],changeDetection:0})};export{Z as default};
|
|
1
|
+
import{a as Y,f as tn}from"./chunk-C6F6FP4R.js";import{a as on}from"./chunk-7RM3VKDO.js";import{a as nn}from"./chunk-YHUSOICR.js";import{a as en}from"./chunk-4NBLWONL.js";import"./chunk-CCKT2GLS.js";import"./chunk-LVTEOKA4.js";import"./chunk-6Q6SSTBK.js";import"./chunk-XLDVUBTQ.js";import"./chunk-LN26XMBJ.js";import{a as Ze}from"./chunk-7LYN2XHO.js";import"./chunk-GCCJSS4C.js";import{e as Xe}from"./chunk-ABYM5HWA.js";import"./chunk-Z35OG2DV.js";import{A as we,B as ze,C as Ve,E as Ue,F as je,J as Ke,K as We,R as qe,S as Qe,u as Je}from"./chunk-QF4DQYEP.js";import{h as Ye}from"./chunk-2QJVTZ56.js";import"./chunk-I2LW33GO.js";import"./chunk-5ZSBXGHQ.js";import"./chunk-FPPZ4BUR.js";import"./chunk-JYWOYPSQ.js";import{$b as u,Ab as w,Bb as z,Bc as q,Cb as E,Cc as D,Db as o,Eb as t,Fb as T,Fc as M,Gc as G,H as j,Hc as R,Jb as O,Jc as Q,Kb as m,Lb as f,Mb as H,Pa as K,Rc as ve,Sa as a,Tb as c,Ub as s,Vb as d,Wb as h,Xb as A,Yb as W,Zb as $,_ as v,cb as He,ea as P,fa as I,hb as N,ib as Ge,ic as V,kc as L,nc as r,pa as X,pc as S,sb as xe,sc as ye,tb as ke,tc as Be,uc as be,xb as g,yb as p,zb as J}from"./chunk-QONLYWYC.js";import"./chunk-EUDKD2JW.js";var an=()=>[import("./chunk-SR4YENFS.js").then(e=>e.NgTemplateOutlet),Ue,Qe,qe,import("./chunk-WNJSKJGQ.js").then(e=>e.DurationFormatPipe),import("./chunk-FIOBQPE7.js").then(e=>e.BytesPipe),import("./chunk-M7QQEZOU.js").then(e=>e.RelativeTimePipe)],ln=()=>["/add-backup"],rn=()=>["/restore"],_n=e=>({$implicit:e}),cn=e=>["/backup",e],sn=e=>["/restore",e],un=e=>["/backup",e,"export"],Fn=e=>["/backup",e,"delete"],Cn=e=>["/backup",e,"database"],Tn=e=>["/backup",e,"commandline"],En=e=>["/backup",e,"log"];function dn(e,i){if(e&1){let n=H();o(0,"button",52),$("click",function(){let F=P(n).$implicit,C=u(2);return I(C.sortByColumn.set(F.value))}),d(1,15),t()}if(e&2){let n=i.$implicit,_=u(2);L("active",_.orderBy()===n.value),a(),h(n.label),A(1)}}function gn(e,i){if(e&1&&(o(0,"sh-menu",53)(1,"button",54),c(2,14),T(3,"strong")(4,"sh-icon"),s(),t(),O(5,55),w(6,dn,2,3,"button",56,J),m(),t()),e&2){let n=u();a(4),h(n.orderBy()),A(2),a(2),z(n.sortOrderOptions())}}function pn(e,i){if(e&1&&(o(0,"p")(1,"span"),d(2,21),t(),r(3),M(4,"relativeTime"),t()),e&2){let n=u().$implicit,_=u(4);a(3),S(" ",R(4,1,n.Schedule.Time,_.timeType()==="actual")," ")}}function Sn(e,i){if(e&1&&(r(0),M(1,"durationFormat")),e&2){let n=u().$implicit,_=u(4);S(" ",R(1,1,n.Backup.Metadata==null?null:n.Backup.Metadata.LastBackupDuration,_.timeType()==="actual")," ")}}function On(e,i){e&1&&(O(0),r(1,"-"),m())}function mn(e,i){if(e&1&&(r(0),M(1,"bytes")),e&2){let n=u().$implicit;S(" ",G(1,1,n.Backup.Metadata==null?null:n.Backup.Metadata.SourceFilesSize)," ")}}function Nn(e,i){e&1&&(O(0),r(1,"-"),m())}function Mn(e,i){if(e&1&&(r(0),M(1,"bytes")),e&2){let n=u().$implicit;S(" ",G(1,1,n.Backup.Metadata==null?null:n.Backup.Metadata.TargetFilesSize)," ")}}function Pn(e,i){e&1&&(O(0),r(1,"-"),m())}function In(e,i){e&1&&(o(0,"sh-chip",63),d(1,22),t())}function fn(e,i){e&1&&f(0)}function Dn(e,i){if(e&1&&(o(0,"div",59)(1,"div",46)(2,"h3"),r(3),o(4,"sh-chip"),T(5,"img",60),r(6),t()(),o(7,"p")(8,"span"),d(9,16),t(),r(10),M(11,"relativeTime"),t(),g(12,pn,5,4,"p"),o(13,"p")(14,"span"),d(15,17),t(),g(16,Sn,2,4)(17,On,2,0,"ng-container"),t(),o(18,"p")(19,"span"),d(20,18),t(),g(21,mn,2,3)(22,Nn,2,0,"ng-container"),t(),o(23,"p")(24,"span"),d(25,19),t(),g(26,Mn,2,3)(27,Pn,2,0,"ng-container"),t()(),o(28,"div",61)(29,"sh-chip",62),d(30,20),t(),g(31,In,2,0,"sh-chip",63),t(),o(32,"div",50),N(33,fn,1,0,"ng-container",64),t()()),e&2){let n=i.$implicit,_=u(4),F=V(51);a(3),S(" ",n.Backup.Name??_.MISSING_BACKUP_NAME," "),a(2),E("src",_.getBackendIcon(n.Backup.TargetURL),K),a(),S(" ",_.getBackendType(n.Backup.TargetURL)," "),a(4),S(" ",R(11,13,n.Backup.Metadata==null?null:n.Backup.Metadata.LastBackupFinished,_.timeType()==="actual")," "),a(2),p(!(n==null||n.Schedule==null)&&n.Schedule.Time?12:-1),a(4),p(n.Backup.Metadata!=null&&n.Backup.Metadata.LastBackupDuration?16:17),a(5),p(n.Backup.Metadata!=null&&n.Backup.Metadata.SourceFilesSize?21:22),a(5),p(n.Backup.Metadata!=null&&n.Backup.Metadata.TargetFilesSize?26:27);let C=_.getBackupVersionCount(n);a(4),h(C)(C),A(30),a(),p(n.Backup.ExternalID?31:-1),a(2),E("ngTemplateOutlet",F)("ngTemplateOutletContext",D(16,_n,n))}}function $n(e,i){if(e&1&&w(0,Dn,34,18,"div",59,J),e&2){let n=u(3);z(n.backups())}}function Rn(e,i){e&1&&(O(0),d(1,23),m())}function hn(e,i){if(e&1&&(o(0,"div",57),g(1,$n,2,0)(2,Rn,2,0,"ng-container"),t()),e&2){let n=u(2);a(),p(n.backups().length?1:2)}}function An(e,i){e&1&&(c(0,24,1),f(1),s())}function Ln(e,i){e&1&&(c(0,25,1),f(1),s())}function Hn(e,i){e&1&&(c(0,26,1),f(1),s())}function Gn(e,i){e&1&&(c(0,27,1),f(1),s())}function xn(e,i){e&1&&(c(0,28,1),f(1),s())}function kn(e,i){e&1&&(c(0,29,1),f(1),s())}function yn(e,i){e&1&&(c(0,30,1),f(1),s())}function Bn(e,i){if(e&1&&(r(0),M(1,"relativeTime")),e&2){let n=u().$implicit,_=u(3);S(" ",R(1,1,n.Backup.Metadata==null?null:n.Backup.Metadata.LastBackupDate,_.timeType()==="actual")," ")}}function bn(e,i){e&1&&(O(0),r(1,"-"),m())}function vn(e,i){if(e&1&&(r(0),M(1,"relativeTime")),e&2){let n=u().$implicit,_=u(3);S(" ",R(1,1,n.Schedule.Time,_.timeType()==="actual")," ")}}function Xn(e,i){e&1&&(O(0),r(1,"-"),m())}function Jn(e,i){if(e&1&&(r(0),M(1,"durationFormat")),e&2){let n=u().$implicit,_=u(3);S(" ",R(1,1,n.Backup.Metadata==null?null:n.Backup.Metadata.LastBackupDuration,_.timeType()==="actual")," ")}}function wn(e,i){e&1&&(O(0),r(1,"-"),m())}function zn(e,i){if(e&1&&(r(0),M(1,"bytes")),e&2){let n=u().$implicit;S(" ",G(1,1,n.Backup.Metadata==null?null:n.Backup.Metadata.SourceFilesSize)," ")}}function Vn(e,i){e&1&&(O(0),r(1,"-"),m())}function Un(e,i){if(e&1&&(r(0),M(1,"bytes")),e&2){let n=u().$implicit;S(" ",G(1,1,n.Backup.Metadata==null?null:n.Backup.Metadata.TargetFilesSize)," ")}}function jn(e,i){e&1&&(O(0),r(1,"-"),m())}function Kn(e,i){e&1&&f(0)}function Wn(e,i){if(e&1&&(o(0,"tr")(1,"td"),r(2),t(),o(3,"td")(4,"sh-chip",51),T(5,"img",60),r(6),t()(),o(7,"td"),g(8,Bn,2,4)(9,bn,2,0,"ng-container"),t(),o(10,"td"),g(11,vn,2,4)(12,Xn,2,0,"ng-container"),t(),o(13,"td"),g(14,Jn,2,4)(15,wn,2,0,"ng-container"),t(),o(16,"td"),g(17,zn,2,3)(18,Vn,2,0,"ng-container"),t(),o(19,"td"),g(20,Un,2,3)(21,jn,2,0,"ng-container"),t(),o(22,"td")(23,"span"),d(24,33),t()(),o(25,"td"),N(26,Kn,1,0,"ng-container",64),t()()),e&2){let n=i.$implicit,_=u(3),F=V(51);a(2),S(" ",n.Backup.Name??_.MISSING_BACKUP_NAME," "),a(3),E("src",_.getBackendIcon(n.Backup.TargetURL),K),a(),S(" ",_.getBackendType(n.Backup.TargetURL)," "),a(2),p(n.Backup.Metadata!=null&&n.Backup.Metadata.LastBackupDate?8:9),a(3),p(!(n==null||n.Schedule==null)&&n.Schedule.Time?11:12),a(3),p(n.Backup.Metadata!=null&&n.Backup.Metadata.LastBackupDuration?14:15),a(3),p(n.Backup.Metadata!=null&&n.Backup.Metadata.SourceFilesSize?17:18),a(3),p(n.Backup.Metadata!=null&&n.Backup.Metadata.TargetFilesSize?20:21);let C=_.getBackupVersionCount(n);a(4),h(C)(C),A(24),a(2),E("ngTemplateOutlet",F)("ngTemplateOutletContext",D(12,_n,n))}}function qn(e,i){if(e&1){let n=H();o(0,"sh-table",65),be("sortByColumnChange",function(F){P(n);let C=u(2);return Be(C.sortByColumn,F)||(C.sortByColumn=F),I(F)}),o(1,"tr",66)(2,"th",67),c(3,24),N(4,An,2,0,"ng-container",68),s(),t(),o(5,"th",69),c(6,25),N(7,Ln,2,0,"ng-container",68),s(),t(),o(8,"th",70),c(9,26),N(10,Hn,2,0,"ng-container",68),s(),t(),o(11,"th",71),c(12,27),N(13,Gn,2,0,"ng-container",68),s(),t(),o(14,"th",72),c(15,28),N(16,xn,2,0,"ng-container",68),s(),t(),o(17,"th",73),c(18,29),N(19,kn,2,0,"ng-container",68),s(),t(),o(20,"th",74),c(21,30),N(22,yn,2,0,"ng-container",68),s(),t(),o(23,"th"),d(24,31),t(),o(25,"th"),d(26,32),t()(),w(27,Wn,27,14,"tr",null,J),t()}if(e&2){let n=u(2),_=V(53);E("data",n.backups())("loading",n.backupsLoading()),ye("sortByColumn",n.sortByColumn),a(4),E("ngTemplateOutlet",_),a(3),E("ngTemplateOutlet",_),a(3),E("ngTemplateOutlet",_),a(3),E("ngTemplateOutlet",_),a(3),E("ngTemplateOutlet",_),a(3),E("ngTemplateOutlet",_),a(3),E("ngTemplateOutlet",_),a(5),z(n.backups())}}function Qn(e,i){if(e&1&&g(0,hn,3,1,"div",57)(1,qn,29,10,"sh-table",58),e&2){let n=u();p(n.viewMode()==="list"?0:n.viewMode()==="details"?1:-1)}}function Yn(e,i){e&1&&(o(0,"div",75),T(1,"sh-progress-bar",76),o(2,"div",46)(3,"h3"),d(4,34),t()()())}function Zn(e,i){e&1&&d(0,35,1)}function et(e,i){e&1&&(o(0,"sh-icon"),r(1,"check"),t())}function nt(e,i){e&1&&(o(0,"sh-icon"),r(1,"dots-three-vertical"),t())}function tt(e,i){if(e&1){let n=H();o(0,"button",77),$("click",function(){let F=P(n).$implicit,C=u();return I(C.startBackup(F.Backup.ID))}),c(1,35),T(2,"sh-icon"),g(3,Zn,1,0),s(),t(),o(4,"button",78)(5,"sh-icon"),r(6,"pencil-simple"),t()(),o(7,"sh-menu")(8,"button",47),g(9,et,2,0,"sh-icon")(10,nt,2,0,"sh-icon"),t(),O(11,55),o(12,"h3",79),r(13,"Operations"),t(),o(14,"button",80),c(15,36),T(16,"sh-icon"),s(),t(),o(17,"button",80),c(18,37),T(19,"sh-icon"),s(),t(),o(20,"button",80),c(21,38),T(22,"sh-icon"),s(),t(),T(23,"sh-divider"),o(24,"h3",79),r(25,"Advanced"),t(),o(26,"button",80),c(27,39),T(28,"sh-icon"),s(),t(),o(29,"button",52),$("click",function(){let F=P(n).$implicit,C=u();return I(C.verifyFiles(F.Backup.ID))}),c(30,40),T(31,"sh-icon"),s(),t(),o(32,"button",52),$("click",function(){let F=P(n).$implicit,C=u();return I(C.compressBackup(F.Backup.ID))}),c(33,41),T(34,"sh-icon"),s(),t(),o(35,"button",80),c(36,42),T(37,"sh-icon"),s(),t(),T(38,"sh-divider"),o(39,"h3",79),r(40,"Reporting"),t(),o(41,"button",80),c(42,43),T(43,"sh-icon"),s(),t(),m(),t()}if(e&2){let n=i.$implicit,_=u();L("loader",_.startingBackup()===n.Backup.ID),a(3),p(_.viewMode()==="list"?3:-1),a(),E("routerLink",D(15,cn,n.Backup.ID)),a(4),L("loader",_.loadingId()===n.Backup.ID)("success",_.successId()===n.Backup.ID),a(),p(_.successId()===n.Backup.ID?9:10),a(5),E("routerLink",D(17,sn,n.Backup.ID)),a(3),E("routerLink",D(19,un,n.Backup.ID)),a(3),E("routerLink",D(21,Fn,n.Backup.ID)),a(6),E("routerLink",D(23,Cn,n.Backup.ID)),a(9),E("routerLink",D(25,Tn,n.Backup.ID)),a(6),E("routerLink",D(27,En,n.Backup.ID))}}function it(e,i){e&1&&(o(0,"sh-icon",81),r(1,"funnel-simple"),t(),o(2,"sh-icon",82),r(3,"sort-ascending"),t(),o(4,"sh-icon",83),r(5,"sort-descending"),t())}var ot={file:{Display:$localize`Local`,Icon:null}},Z=class e{#n=v(Ye);#t=v(nn);#e=v(en);MISSING_BACKUP_NAME=$localize`Backup name missing`;sortOrderOptions=this.#e.orderByOptions;orderBy=this.#e.orderBy;backups=this.#e.backups;backupsLoading=this.#e.backupsLoading;startingBackup=this.#e.startingBackup;deletingBackup=this.#e.deletingBackup;timeType=this.#e.timeType;viewMode=Ze("viewMode","list");sortByColumn=X(this.#e.orderBy());loadingId=X(null);successId=X(null);sortEffect=ve(()=>this.#e.setOrderBy(this.sortByColumn()));ngOnInit(){this.#e.getBackups(!0)}setOrderBy(i){this.#e.setOrderBy(i)}setTimeType(i){this.#e.setTimeType(i)}startBackup(i){this.#t.resumeDialogCheck(()=>this.#e.startBackup(i))}getBackendIcon(i){if(!i)return"";let n=i.split("://")[0];return Y(n).icon??"database"}getBackendType(i){if(!i)return"";let n=i.split("://")[0],_=Y(n);if(!_)return"";let F=ot[_.key];if(F?.Display)return F.Display;if(_.key==="s3"){let C="http://null?"+i.split("?")[1],x=new URL(C).searchParams.get("s3-server-name")?.toLowerCase()??"";for(let[k,y]of Object.entries(tn))if(x.endsWith(k))return y}return _.displayName}getBackupVersionCount(i){return parseInt(i?.Backup?.Metadata?.BackupListCount??"",10)||0}verifyFiles(i){this.loadingId.set(i),this.#n.postApiV1BackupByIdVerify({id:i}).pipe(j(()=>this.loadingId.set(null))).subscribe({next:()=>{this.successId.set(i),setTimeout(()=>this.successId.set(null),2e3)}})}compressBackup(i){this.loadingId.set(i),this.#n.postApiV1BackupByIdCompact({id:i}).pipe(j(()=>this.loadingId.set(null))).subscribe({next:()=>{this.successId.set(i),setTimeout(()=>this.successId.set(null),2e3)}})}static \u0275fac=function(n){return new(n||e)};static \u0275cmp=He({type:e,selectors:[["app-home"]],decls:54,vars:11,consts:()=>{let i;i=$localize`Backups`;let n;n=$localize`Backups are stored in the cloud and can be restored at any time.`;let _;_=$localize` Add ${"\uFFFD#12\uFFFD"}:START_TAG_SH_ICON:plus${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SH_ICON:`;let F;F=$localize`Restores`;let C;C=$localize`Restores allow you to restore your data from the cloud.`;let U;U=$localize` Start ${"\uFFFD#22\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SH_ICON:`;let x;x=$localize`My backups`;let k;k=$localize`${"\uFFFD#31\uFFFD"}:START_TAG_SH_ICON:rows${"\uFFFD/#31\uFFFD"}:CLOSE_TAG_SH_ICON: List `;let y;y=$localize`${"\uFFFD#34\uFFFD"}:START_TAG_SH_ICON:list${"\uFFFD/#34\uFFFD"}:CLOSE_TAG_SH_ICON: Details `;let ee;ee=$localize` Time: ${"\uFFFD#38\uFFFD"}:START_TAG_STRONG:${"\uFFFD0\uFFFD"}:INTERPOLATION:${"\uFFFD/#38\uFFFD"}:CLOSE_TAG_STRONG:${"\uFFFD#39\uFFFD"}:START_TAG_SH_ICON:clock${"\uFFFD/#39\uFFFD"}:CLOSE_TAG_SH_ICON:`;let ne;ne=$localize`Relative time`;let te;te=$localize`Actual time`;let ie;ie=$localize` Order by: ${"\uFFFD#3\uFFFD"}:START_TAG_STRONG:${"\uFFFD0\uFFFD"}:INTERPOLATION:${"\uFFFD/#3\uFFFD"}:CLOSE_TAG_STRONG:${"\uFFFD#4\uFFFD"}:START_TAG_SH_ICON:arrows-down-up${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SH_ICON:`;let oe;oe=$localize` ${"\uFFFD0\uFFFD"}:INTERPOLATION: `;let _e;_e=$localize`Last successful backup:`;let ae;ae=$localize`Duration:`;let le;le=$localize`Source:`;let re;re=$localize`Destination:`;let B;B=$localize`{VAR_PLURAL, plural, =0 {No version yet} =1 {1 Version} other {{INTERPOLATION} Versions}}`,B=W(B,{INTERPOLATION:"\uFFFD1\uFFFD",VAR_PLURAL:"\uFFFD0\uFFFD"});let ce;ce=$localize` ${B}:ICU@@6502601490918455200: `;let se;se=$localize`Next scheduled run:`;let ue;ue=$localize`Externally managed`;let Fe;Fe=$localize`No backups founds`;let Ce;Ce=$localize` Backup ${"\uFFFD*4:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*4:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Te;Te=$localize` Type ${"\uFFFD*7:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*7:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Ee;Ee=$localize` Last backup ${"\uFFFD*10:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*10:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let de;de=$localize` Next run ${"\uFFFD*13:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*13:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let ge;ge=$localize` Duration ${"\uFFFD*16:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*16:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let pe;pe=$localize` Source ${"\uFFFD*19:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*19:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Se;Se=$localize` Destination ${"\uFFFD*22:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*22:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Oe;Oe=$localize`Version`;let me;me=$localize`Actions`;let b;b=$localize`{VAR_PLURAL, plural, =0 {No versions} =1 {1 Version} other {{INTERPOLATION} Versions}}`,b=W(b,{INTERPOLATION:"\uFFFD1\uFFFD",VAR_PLURAL:"\uFFFD0\uFFFD"});let Ne;Ne=$localize` ${b}:ICU@@3521773141017690117: `;let Me;Me=$localize`Loading backups...`;let Pe;Pe=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:play-circle${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON:${"\uFFFD*3:1\uFFFD"}:START_BLOCK_IF: Start ${"\uFFFD/*3:1\uFFFD"}:CLOSE_BLOCK_IF:`;let Ie;Ie=$localize`${"\uFFFD#16\uFFFD"}:START_TAG_SH_ICON:clock-counter-clockwise${"\uFFFD/#16\uFFFD"}:CLOSE_TAG_SH_ICON: Restore `;let fe;fe=$localize`${"\uFFFD#19\uFFFD"}:START_TAG_SH_ICON:export${"\uFFFD/#19\uFFFD"}:CLOSE_TAG_SH_ICON: Export `;let De;De=$localize`${"\uFFFD#22\uFFFD"}:START_TAG_SH_ICON:x-circle${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SH_ICON: Delete `;let $e;$e=$localize`${"\uFFFD#28\uFFFD"}:START_TAG_SH_ICON:database${"\uFFFD/#28\uFFFD"}:CLOSE_TAG_SH_ICON: Database `;let Re;Re=$localize`${"\uFFFD#31\uFFFD"}:START_TAG_SH_ICON:check-square-offset${"\uFFFD/#31\uFFFD"}:CLOSE_TAG_SH_ICON: Verify files `;let he;he=$localize`${"\uFFFD#34\uFFFD"}:START_TAG_SH_ICON:file-archive${"\uFFFD/#34\uFFFD"}:CLOSE_TAG_SH_ICON: Compress now `;let Ae;Ae=$localize`${"\uFFFD#37\uFFFD"}:START_TAG_SH_ICON:terminal-window${"\uFFFD/#37\uFFFD"}:CLOSE_TAG_SH_ICON: Commandline `;let Le;return Le=$localize`${"\uFFFD#43\uFFFD"}:START_TAG_SH_ICON:notepad${"\uFFFD/#43\uFFFD"}:CLOSE_TAG_SH_ICON: Log `,[["actions",""],["sortIcons",""],i,n,_,F,C,U,x,k,y,ee,ne,te,ie,oe,_e,ae,le,re,ce,se,ue,Fe,Ce,Te,Ee,de,ge,pe,Se,Oe,me,Ne,Me,Pe,Ie,fe,De,$e,Re,he,Ae,Le,[1,"type-a","actionable",3,"routerLink"],["src","assets/images/backup.png","alt","","width","48px"],[1,"text"],["type","button","shButton",""],["src","assets/images/restore.png","alt","","width","48px"],[1,"content"],[1,"actions"],[1,"small"],["type","button",3,"click"],[1,"table-overview"],["type","button","shButton","",1,"small"],["menu",""],["type","button",3,"active"],[1,"backups"],[1,"type-b",3,"data","loading","sortByColumn"],[1,"backup"],["alt","",1,"provider-icon",3,"src"],[1,"tags"],[1,"simple","success"],[1,"simple","primary"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"type-b",3,"sortByColumnChange","data","loading","sortByColumn"],["table-header",""],["shSort","name"],[4,"ngTemplateOutlet"],["shSort","type"],["shSort","lastrun"],["shSort","nextrun"],["shSort","duration"],["shSort","sourcesize"],["shSort","destinationsize"],[1,"loading-list"],[1,"indeterminate","primary"],["shButton","",3,"click"],["type","button","shButton","",3,"routerLink"],["title",""],["type","button",3,"routerLink"],[1,"filter"],[1,"asc"],[1,"desc"]]},template:function(n,_){if(n&1){let F=H();T(0,"app-status-bar"),o(1,"section")(2,"header")(3,"sh-card",44),T(4,"img",45),o(5,"div",46)(6,"h3"),d(7,2),t(),o(8,"p"),d(9,3),t()(),o(10,"button",47),c(11,4),T(12,"sh-icon"),s(),t()(),o(13,"sh-card",44),T(14,"img",48),o(15,"div",46)(16,"h3"),d(17,5),t(),o(18,"p"),d(19,6),t()(),o(20,"button",47),c(21,7),T(22,"sh-icon"),s(),t()()(),o(23,"div",49)(24,"h2"),O(25),d(26,8),m(),o(27,"div",50)(28,"sh-button-group",51)(29,"button",52),$("click",function(){return P(F),I(_.viewMode.set("list"))}),c(30,9),T(31,"sh-icon"),s(),t(),o(32,"button",52),$("click",function(){return P(F),I(_.viewMode.set("details"))}),c(33,10),T(34,"sh-icon"),s(),t()(),o(35,"sh-menu",53)(36,"button",54),c(37,11),T(38,"strong")(39,"sh-icon"),s(),t(),O(40,55),o(41,"button",52),$("click",function(){return P(F),I(_.setTimeType("relative"))}),d(42,12),t(),o(43,"button",52),$("click",function(){return P(F),I(_.setTimeType("actual"))}),d(44,13),t(),m(),t(),g(45,gn,8,1,"sh-menu",53),t()(),Ge(46,Qn,2,1)(47,Yn,5,0),xe(48,46,an,null,47),t()(),N(50,tt,44,29,"ng-template",null,0,Q)(52,it,6,0,"ng-template",null,1,Q)}n&2&&(a(3),E("routerLink",q(9,ln)),a(10),E("routerLink",q(10,rn)),a(16),L("active",_.viewMode()==="list"),a(3),L("active",_.viewMode()==="details"),a(7),h(_.timeType()),A(37),a(6),p(_.viewMode()==="list"?45:-1),a(3),ke(!_.backupsLoading()))},dependencies:[Xe,on,Ve,ze,Je,je,Ke,We,we],styles:["[_nghost-%COMP%]{display:block}h2[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2rem;padding:2rem 0}header[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;padding:0 2rem;gap:1rem}sh-card[_ngcontent-%COMP%]{display:flex;align-items:center;gap:1rem}sh-card[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{flex:1 0;display:flex;flex-direction:column;gap:.25rem}.content[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem}.content[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{padding:0 2rem}.backups[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:0 2rem;gap:.5rem}.backup[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:2rem;gap:1rem;border:1px solid var(--base-4);border-radius:var(--shape-3);box-shadow:var(--box-shadow-10)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem;width:100%;max-width:40%}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] sh-icon[_ngcontent-%COMP%]{color:var(--base-8)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font:var(--paragraph-30);color:var(--base-8)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] p[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--base-12)}.backup[_ngcontent-%COMP%] .tags[_ngcontent-%COMP%]{display:flex;align-items:center;flex-direction:column;gap:.5rem}.provider-icon[_ngcontent-%COMP%]{width:1.25rem;height:1.25rem}.actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.sortable[_ngcontent-%COMP%]{-webkit-user-select:none;user-select:none}.sortable[_ngcontent-%COMP%] sh-icon[_ngcontent-%COMP%]{margin-left:.5rem;font-size:1rem;justify-self:flex-end;display:none}.sortable[_ngcontent-%COMP%]:not(.sort-asc):not(.sort-desc) sh-icon.filter[_ngcontent-%COMP%]{display:block}.sortable.sort-asc[_ngcontent-%COMP%] sh-icon.asc[_ngcontent-%COMP%]{display:block;color:var(--base-12)}.sortable.sort-desc[_ngcontent-%COMP%] sh-icon.desc[_ngcontent-%COMP%]{display:block;color:var(--base-12)}.actionable[_ngcontent-%COMP%]{cursor:pointer}.actionable[_ngcontent-%COMP%]:after{transition:inset .1s linear}.actionable[_ngcontent-%COMP%]:hover{--card-shp: 0}"],changeDetection:0})};export{Z as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as re}from"./chunk-Z27IQRKV.js";import{a as le}from"./chunk-4NBLWONL.js";import"./chunk-CCKT2GLS.js";import{a as _e}from"./chunk-
|
|
1
|
+
import{c as re}from"./chunk-Z27IQRKV.js";import{a as le}from"./chunk-4NBLWONL.js";import"./chunk-CCKT2GLS.js";import{a as _e}from"./chunk-LVTEOKA4.js";import"./chunk-6Q6SSTBK.js";import"./chunk-XLDVUBTQ.js";import{a as ae}from"./chunk-LN26XMBJ.js";import"./chunk-7LYN2XHO.js";import"./chunk-GCCJSS4C.js";import{d as j,e as q}from"./chunk-ABYM5HWA.js";import"./chunk-Z35OG2DV.js";import{B as ne,D as ie,b as H,e as Q,i as Y,s as Z,u as ee,z as te}from"./chunk-QF4DQYEP.js";import{h as oe}from"./chunk-2QJVTZ56.js";import"./chunk-5ZSBXGHQ.js";import"./chunk-FPPZ4BUR.js";import{$b as C,B as I,Bc as J,Cb as N,Cc as X,Db as i,Eb as o,Fc as z,H as K,Ic as V,Mb as g,Qc as M,Sa as r,Vb as c,Wb as A,Wc as W,Xb as L,Yb as F,Zb as $,_ as u,cb as y,ea as p,fa as P,kc as x,n as k,nc as E,pa as T,r as U,sc as S,tc as D,uc as h,vc as G,wc as w,xb as m,xc as v,yb as f}from"./chunk-QONLYWYC.js";import"./chunk-EUDKD2JW.js";var ce=l=>["/backup",l,"export"],se=()=>["/"];function Ee(l,_){if(l&1){let t=g();i(0,"section")(1,"h4"),c(2,4),o(),i(3,"p"),c(4,5),o(),i(5,"sh-checkbox",11),E(6," Delete local database "),i(7,"input",12),h("ngModelChange",function(e){p(t);let a=C();return D(a.deleteLocalDb,e)||(a.deleteLocalDb=e),P(e)}),o()()()}if(l&2){let t=C();r(7),S("ngModel",t.deleteLocalDb)}}function ue(l,_){if(l&1){let t=g();i(0,"section")(1,"h4"),c(2,6),o(),i(3,"p"),c(4,7),z(5,"bytes"),o(),i(6,"sh-checkbox",11),E(7," Delete remote files "),i(8,"input",12),h("ngModelChange",function(e){p(t);let a=C();return D(a.deleteRemoteFiles,e)||(a.deleteRemoteFiles=e),P(e)}),o()()()}if(l&2){let t=C(),n=v(0),e=(n==null||n.Backup==null||n.Backup.Metadata==null?null:n.Backup.Metadata.TargetFilesSize)??0;r(5),A(t.fileCount())(t.fileCount())(V(5,4,e,!0,!0)),L(4),r(3),S("ngModel",t.deleteRemoteFiles)}}var B=class l{#t=u(oe);#n=u(te);#e=u(le);#i=u(j);id=W.required();backup=M(()=>this.#e.getBackupById(this.id()));noLocalDbResource=re({params:()=>({dbPath:this.backup()?.Backup?.DBPath}),stream:({params:_})=>this.#t.postApiV1FilesystemValidate({requestBody:{path:_.dbPath}}).pipe(U(()=>!0),I(()=>k(!1)))});fileCount=M(()=>parseInt(this.backup()?.Backup?.Metadata?.TargetFilesCount??"0",10));deleteLocalDb=T(!1);deleteRemoteFiles=T(!1);isDeleting=T(!1);deleteBackup(){let _=this.id(),t=this.deleteLocalDb(),n=this.deleteRemoteFiles();this.isDeleting.set(!0),this.#n.open(_e,{data:{title:$localize`Confirm delete`,message:$localize`Are you sure you want to delete this backup?`,confirmText:$localize`Delete backup`,cancelText:$localize`Cancel`},closed:e=>{e&&this.#e.deleteBackup({id:_,deleteLocalDb:t,deleteRemoteFiles:n}).pipe(K(()=>this.isDeleting.set(!1))).subscribe({next:()=>{this.#i.navigate(["/"])}})}})}static \u0275fac=function(t){return new(t||l)};static \u0275cmp=y({type:l,selectors:[["app-delete-backup"]],inputs:{id:[1,"id"]},decls:19,vars:11,consts:()=>{let _;_=$localize`Delete backup: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let t;t=$localize`Export configuration`;let n;n=$localize`If you want to use the backup later, you can export the configuration before deleting it.`;let e;e=$localize`Cancel`;let a;a=$localize`Delete local database`;let b;b=$localize` Each backup has a local database associated with it, which stores information about the remote backup on the local machine. When deleting a backup, you can also delete the local database without affecting the ability to restore the remote files. If you are using the local database for backups from the commandline, you should keep the database. `;let R;R=$localize`Delete remote files`;let d;d=$localize`{VAR_PLURAL, plural, =1 {1 file} other {{INTERPOLATION} files}}`,d=F(d,{INTERPOLATION:"\uFFFD1\uFFFD",VAR_PLURAL:"\uFFFD0\uFFFD"});let O;return O=$localize` Delete ${d}:ICU@@2159106180826349718: (${"\uFFFD2\uFFFD"}:INTERPOLATION_1:) from the remote storage? `,[_,t,n,e,a,b,R,O,["shButton","",3,"routerLink"],[1,"actions"],["shButton","",1,"raised","error",3,"click"],[1,"primary","raised"],["type","checkbox",3,"ngModelChange","ngModel"]]},template:function(t,n){if(t&1){let e=g();G(0),i(1,"h3"),c(2,0),o(),m(3,Ee,8,1,"section"),i(4,"section")(5,"h4"),c(6,1),o(),i(7,"p"),c(8,2),o(),i(9,"button",8),E(10," Export configuration "),i(11,"sh-icon"),E(12,"caret-right"),o()()(),m(13,ue,9,8,"section"),i(14,"div",9)(15,"button",8),c(16,3),o(),i(17,"button",10),$("click",function(){return p(e),P(n.deleteBackup())}),E(18,"Delete backup"),o()()}if(t&2){let e=w(n.backup()),a=n.noLocalDbResource.value();r(2),A(e==null||e.Backup==null?null:e.Backup.Name),L(2),r(),f(a?3:-1),r(6),N("routerLink",X(8,ce,n.id())),r(4),f(a?13:-1),r(2),N("routerLink",J(10,se)),r(2),x("loader",n.isDeleting())}},dependencies:[ie,ne,ee,Z,H,Q,Y,q,ae],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;padding:2.5rem;max-width:43.75rem}section[_ngcontent-%COMP%]{padding:2rem 0;display:flex;align-items:flex-start;flex-direction:column}h3[_ngcontent-%COMP%]{font:var(--title-30);margin:0}h4[_ngcontent-%COMP%]{font:var(--paragraph-20);margin-bottom:.5rem}p[_ngcontent-%COMP%]{margin-bottom:1rem}.actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;gap:.5rem;padding:2rem 0}"],changeDetection:0})};export{B as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a}from"./chunk-DUHMJQLC.js";import"./chunk-ZBVBVQO7.js";import"./chunk-C6F6FP4R.js";import"./chunk-USYSNGYO.js";import"./chunk-LVTEOKA4.js";import"./chunk-XLDVUBTQ.js";import"./chunk-QF4DQYEP.js";import"./chunk-2QJVTZ56.js";import"./chunk-5ZSBXGHQ.js";import"./chunk-FPPZ4BUR.js";import"./chunk-QONLYWYC.js";import"./chunk-EUDKD2JW.js";export{a as OptionsListComponent};
|