@duplicati/ngclient 0.0.145 → 0.0.147
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-23CWXAU4.js +1 -0
- package/{chunk-L6CWVBZ6.js → chunk-4DNWEJIW.js} +1 -1
- package/{chunk-FFEDQIYN.js → chunk-7UZESCOY.js} +1 -1
- package/{chunk-KGKIF5H4.js → chunk-AZ7AMASU.js} +3 -3
- package/{chunk-GB3UMYUD.js → chunk-CMON2THK.js} +1 -1
- package/{chunk-PN3U7MRX.js → chunk-DAYBMF7U.js} +1 -1
- package/{chunk-A6VGO6B5.js → chunk-DEZMBIZH.js} +1 -1
- package/{chunk-2UGURIOT.js → chunk-EVUH6UI7.js} +1 -1
- package/{chunk-DFMPWF6R.js → chunk-G5FQY6XS.js} +1 -1
- package/{chunk-FDCY62KM.js → chunk-HTMYJ6GV.js} +1 -1
- package/{chunk-7EBTJOD7.js → chunk-LBI35OS4.js} +1 -1
- package/{chunk-UIIHBXLB.js → chunk-MNGZF3JM.js} +1 -1
- package/chunk-MQI3XY6Q.js +1 -0
- package/chunk-NMJ4XJ6C.js +1 -0
- package/{chunk-QYI4IMJE.js → chunk-PJLMDJTH.js} +3 -3
- package/{chunk-RPU4AJBK.js → chunk-QID36V67.js} +1 -1
- package/{chunk-W6DRPPZU.js → chunk-QMTQBA5B.js} +1 -1
- package/chunk-TK5QY2QD.js +1 -0
- package/chunk-WODA6N4N.js +1 -0
- package/chunk-X35RIHQ2.js +1 -0
- package/{chunk-BPJCKQYP.js → chunk-XBWYEQIH.js} +1 -1
- package/chunk-Z6NPBMOP.js +1 -0
- package/{chunk-XJZ5GM36.js → chunk-ZAIUME2O.js} +1 -1
- package/index.html +1 -1
- package/{main-Z5T5HH5Q.js → main-USVDGYE2.js} +1 -1
- package/package.json +1 -1
- package/chunk-7B43LCPI.js +0 -1
- package/chunk-MAQO5X5Q.js +0 -1
- package/chunk-MSLKIHQQ.js +0 -1
- package/chunk-N6ABN43N.js +0 -1
- package/chunk-OMMUXRXE.js +0 -1
- package/chunk-OWDKOVPL.js +0 -1
- package/chunk-U5C62E46.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as G}from"./chunk-NJEX2N4Q.js";import{h as T}from"./chunk-
|
|
1
|
+
import{a as G}from"./chunk-NJEX2N4Q.js";import{h as T}from"./chunk-MQI3XY6Q.js";import"./chunk-23CWXAU4.js";import"./chunk-DDWLL7XA.js";import"./chunk-2QJC4PGQ.js";import{b as m}from"./chunk-O64ZZGQZ.js";import"./chunk-6LTGTS6B.js";import{a as L}from"./chunk-DVDTYV66.js";import"./chunk-UIJYCGKA.js";import"./chunk-DELLEGXW.js";import"./chunk-RHW5QVAY.js";import"./chunk-VTSUHAP5.js";import"./chunk-UP5EOICU.js";import"./chunk-N5SC4SKW.js";import"./chunk-Z3EPZZGY.js";import"./chunk-UKQFDBNO.js";import{b as E,c as B,e as b,f as M}from"./chunk-LVP2TPMO.js";import"./chunk-43JMN2ZY.js";import{p as $,q as N,v as I}from"./chunk-H7K35UUX.js";import{h as v}from"./chunk-NOPMCS2Z.js";import"./chunk-TDKBGGNK.js";import"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import"./chunk-6OPAGPKF.js";import{Ab as s,Bb as u,Bc as _,Cb as r,F as f,Pc as O,Qb as c,Ra as n,Rb as p,Yb as R,_ as l,bb as D,lc as A,nc as k,ub as h,vb as g,yc as P,zb as d}from"./chunk-HNWRQABR.js";import"./chunk-EUDKD2JW.js";var y=(a,e)=>[a,e,"general"],U=(a,e)=>[a,e,"destination"],K=(a,e)=>[a,e,"source-data"],w=(a,e)=>[a,e,"schedule"],H=(a,e)=>[a,e,"options"];function X(a,e){if(a&1&&(s(0,"p"),A(1),u()),a&2){let t=R();n(),k("Editing: ",t.backupName())}}function x(a,e){a&1&&r(0,"sh-progress-bar",7)}function z(a,e){a&1&&(s(0,"section"),r(1,"router-outlet"),u())}var C=class a{#t=l(E);#e=l(T);#a=l(L);#i=l(v);isDraft=this.#e.isDraft;isNew=this.#e.isNew;backupId=this.#e.backupId;backupName=this.#e.backupName;finishedLoading=this.#e.finishedLoading;#o=m(this.#t.params);#n=m(this.#t.url);paramsChanged=O(()=>{let e=this.#o()?.id,t=!!this.#n()?.find(i=>i.path==="backup-draft");this.#e.backupId.set(e),e!=="new"?this.getBackup(e,t):this.getDefaults()});getDefaults(){this.#i.getApiV1Backupdefaults().pipe(f(1)).subscribe({next:e=>{let t=e.Backup;t.Settings=[...t.Settings],this.#e.mapGeneralToForm(t),this.#e.mapDestinationToForm(t),this.#e.mapSourceDataToForm(t),this.#e.mapScheduleToForm(e.Schedule),this.#e.mapOptionsToForms(t),this.#e.applicationOptions.set(e.ApplicationOptions),this.#e.backupDefaults.set(e),this.#e.finishedLoading.set(!0)}})}getBackup(e,t=!1){let i=o=>{this.#e.mapScheduleToForm(o.Schedule??null),o.Backup&&(this.#e.mapGeneralToForm(o.Backup),this.#e.mapDestinationToForm(o.Backup),this.#e.mapSourceDataToForm(o.Backup),this.#e.mapOptionsToForms(o.Backup),this.#e.storeMetadata(o.Backup,t)),this.#e.finishedLoading.set(!0)};if(t){this.isDraft.set(t);let o=this.#a.draftBackups().find(F=>F.id===e);if(!o){alert("Backup not found");return}i(o.data)}else this.#i.getApiV1BackupById({id:e}).subscribe({next:i})}static \u0275fac=function(t){return new(t||a)};static \u0275cmp=D({type:a,selectors:[["app-backup"]],features:[P([T])],decls:21,vars:22,consts:()=>{let e;e=$localize`${"\uFFFD#6\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#6\uFFFD"}:CLOSE_TAG_SH_RADIO: General `;let t;t=$localize`${"\uFFFD#9\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#9\uFFFD"}:CLOSE_TAG_SH_RADIO: Destination `;let i;i=$localize`${"\uFFFD#12\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SH_RADIO: Source Data `;let o;o=$localize`${"\uFFFD#15\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#15\uFFFD"}:CLOSE_TAG_SH_RADIO: Schedule `;let F;return F=$localize`${"\uFFFD#18\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#18\uFFFD"}:CLOSE_TAG_SH_RADIO: Options `,[e,t,i,o,F,[1,"primary"],["step","","routerLinkActive","active",3,"routerLink"],[1,"indeterminate","primary"]]},template:function(t,i){t&1&&(r(0,"app-status-bar"),s(1,"header"),h(2,X,2,1,"p"),s(3,"sh-stepper",5)(4,"div",6),c(5,0),r(6,"sh-radio"),p(),u(),s(7,"div",6),c(8,1),r(9,"sh-radio"),p(),u(),s(10,"div",6),c(11,2),r(12,"sh-radio"),p(),u(),s(13,"div",6),c(14,3),r(15,"sh-radio"),p(),u(),s(16,"div",6),c(17,4),r(18,"sh-radio"),p(),u()()(),h(19,x,1,0,"sh-progress-bar",7)(20,z,2,0,"section")),t&2&&(n(2),g(i.isNew()?-1:2),n(2),d("routerLink",_(7,y,i.isDraft()?"/backup-draft":"/backup",i.backupId())),n(3),d("routerLink",_(10,U,i.isDraft()?"/backup-draft":"/backup",i.backupId())),n(3),d("routerLink",_(13,K,i.isDraft()?"/backup-draft":"/backup",i.backupId())),n(3),d("routerLink",_(16,w,i.isDraft()?"/backup-draft":"/backup",i.backupId())),n(3),d("routerLink",_(19,H,i.isDraft()?"/backup-draft":"/backup",i.backupId())),n(3),g(i.finishedLoading()?20:19))},dependencies:[B,b,M,G,N,I,$],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;height:100%}header[_ngcontent-%COMP%]{padding:1rem 1.5rem;border-bottom:1px solid var(--base-4)}header[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin-bottom:.5rem}header[_ngcontent-%COMP%] sh-stepper[_ngcontent-%COMP%]{width:100%}section[_ngcontent-%COMP%]{width:100%;display:flex;justify-content:center;flex:1 0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:auto}"],changeDetection:0})};export{C as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as a,e as b}from"./chunk-
|
|
1
|
+
import{d as a,e as b}from"./chunk-MQI3XY6Q.js";import"./chunk-23CWXAU4.js";import"./chunk-DDWLL7XA.js";import"./chunk-2QJC4PGQ.js";import"./chunk-O64ZZGQZ.js";import"./chunk-DELLEGXW.js";import"./chunk-RHW5QVAY.js";import"./chunk-VTSUHAP5.js";import"./chunk-N5SC4SKW.js";import"./chunk-LVP2TPMO.js";import"./chunk-43JMN2ZY.js";import"./chunk-H7K35UUX.js";import"./chunk-NOPMCS2Z.js";import"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import"./chunk-HNWRQABR.js";import"./chunk-EUDKD2JW.js";export{a as SCHEDULE_FIELD_DEFAULTS,b as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as ut,b as ct,c as dt}from"./chunk-23CWXAU4.js";import{a as Oe}from"./chunk-DDWLL7XA.js";import{a as rt,b as Ve,c as _t}from"./chunk-2QJC4PGQ.js";import{b as re}from"./chunk-O64ZZGQZ.js";import{a as it}from"./chunk-DELLEGXW.js";import{a as Te}from"./chunk-VTSUHAP5.js";import{b as fe,c as Y,d as Ae,e as Q,f as Pe,h as ot,i as se,j as De,k as at,n as st,o as Ne,p as lt,q as Me,r as ye,s as le,t as Re}from"./chunk-N5SC4SKW.js";import{b as ie,d as z}from"./chunk-LVP2TPMO.js";import{A as he,C as tt,a as j,b as Je,e as Ze,g as oe,l as q,p as et,t as ae}from"./chunk-H7K35UUX.js";import{h as nt}from"./chunk-NOPMCS2Z.js";import{Ab as s,Bb as l,Cb as m,Gb as B,H as Le,Hb as k,Jb as G,Oc as I,Pc as ne,Qb as C,Ra as _,Rb as F,Sb as f,Tc as Be,Uc as ke,V as ge,Vb as Ge,Vc as Ee,Wb as E,Yb as u,_ as M,bb as H,ea as d,ec as me,fa as p,fc as Ce,gb as qe,gc as be,ic as Fe,lc as x,mc as ve,nc as Qe,oa as g,qc as w,rc as $,sc as L,tb as Ye,ub as y,vb as R,wb as Ie,xb as Ue,yb as xe,zb as T,zc as Se}from"./chunk-HNWRQABR.js";import{a as b,b as X}from"./chunk-EUDKD2JW.js";var we=class a{fromString(t){if(!t)return null;let e=t.match(/(\d+)([smhDWMY])/);return e&&{value:parseInt(e[1]),unit:e[2]}}toString(t,e){return`${t}${e}`}static \u0275fac=function(e){return new(e||a)};static \u0275prov=ge({token:a,factory:a.\u0275fac,providedIn:"root"})};function Ct(a,t){if(a&1){let e=G();s(0,"div",24)(1,"sh-form-field")(2,"label",25),f(3,7),l(),s(4,"input",26,0),L("ngModelChange",function(i){d(e);let o=u();return $(o.scheduleFields.nextTime().time,i)||(o.scheduleFields.nextTime().time=i),p(i)}),E("focus",function(){d(e);let i=be(5);return p(i.showPicker())}),l(),s(6,"sh-icon",27),x(7,"clock"),l()(),s(8,"sh-form-field"),m(9,"label",28),s(10,"input",29,1),L("ngModelChange",function(i){d(e);let o=u();return $(o.scheduleFields.nextTime().date,i)||(o.scheduleFields.nextTime().date=i),p(i)}),E("focus",function(){d(e);let i=be(11);return p(i.showPicker())}),l(),s(12,"sh-icon",27),x(13,"calendar"),l()()(),s(14,"div",24)(15,"sh-form-field")(16,"label",30),f(17,8),l(),s(18,"input",31),L("ngModelChange",function(i){d(e);let o=u();return $(o.scheduleFields.runAgain().repeatValue,i)||(o.scheduleFields.runAgain().repeatValue=i),p(i)}),l()(),s(19,"sh-select",32)(20,"input",33),L("ngModelChange",function(i){d(e);let o=u();return $(o.scheduleFields.runAgain().repeatUnit,i)||(o.scheduleFields.runAgain().repeatUnit=i),p(i)}),l()()(),s(21,"app-toggle-card",34),B(22,35),f(23,9),k(),s(24,"div",36)(25,"sh-toggle",19),C(26,10),s(27,"input",20),L("ngModelChange",function(i){d(e);let o=u();return $(o.scheduleFields.runAgain().allowedDays.mon,i)||(o.scheduleFields.runAgain().allowedDays.mon=i),p(i)}),l(),F(),l(),s(28,"sh-toggle",19),C(29,11),s(30,"input",20),L("ngModelChange",function(i){d(e);let o=u();return $(o.scheduleFields.runAgain().allowedDays.tue,i)||(o.scheduleFields.runAgain().allowedDays.tue=i),p(i)}),l(),F(),l(),s(31,"sh-toggle",19),C(32,12),s(33,"input",20),L("ngModelChange",function(i){d(e);let o=u();return $(o.scheduleFields.runAgain().allowedDays.wed,i)||(o.scheduleFields.runAgain().allowedDays.wed=i),p(i)}),l(),F(),l(),s(34,"sh-toggle",19),C(35,13),s(36,"input",20),L("ngModelChange",function(i){d(e);let o=u();return $(o.scheduleFields.runAgain().allowedDays.thu,i)||(o.scheduleFields.runAgain().allowedDays.thu=i),p(i)}),l(),F(),l(),s(37,"sh-toggle",19),C(38,14),s(39,"input",20),L("ngModelChange",function(i){d(e);let o=u();return $(o.scheduleFields.runAgain().allowedDays.fri,i)||(o.scheduleFields.runAgain().allowedDays.fri=i),p(i)}),l(),F(),l(),s(40,"sh-toggle",19),C(41,15),s(42,"input",20),L("ngModelChange",function(i){d(e);let o=u();return $(o.scheduleFields.runAgain().allowedDays.sat,i)||(o.scheduleFields.runAgain().allowedDays.sat=i),p(i)}),l(),F(),l(),s(43,"sh-toggle",19),C(44,16),s(45,"input",20),L("ngModelChange",function(i){d(e);let o=u();return $(o.scheduleFields.runAgain().allowedDays.sun,i)||(o.scheduleFields.runAgain().allowedDays.sun=i),p(i)}),l(),F(),l()()()}if(a&2){let e=u();_(4),w("ngModel",e.scheduleFields.nextTime().time),_(6),w("ngModel",e.scheduleFields.nextTime().date),_(8),w("ngModel",e.scheduleFields.runAgain().repeatValue),_(),T("options",e.unitOptions)("isClearable",!1),_(),w("ngModel",e.scheduleFields.runAgain().repeatUnit),_(),T("disallowToggle",!0),_(6),w("ngModel",e.scheduleFields.runAgain().allowedDays.mon),_(3),w("ngModel",e.scheduleFields.runAgain().allowedDays.tue),_(3),w("ngModel",e.scheduleFields.runAgain().allowedDays.wed),_(3),w("ngModel",e.scheduleFields.runAgain().allowedDays.thu),_(3),w("ngModel",e.scheduleFields.runAgain().allowedDays.fri),_(3),w("ngModel",e.scheduleFields.runAgain().allowedDays.sat),_(3),w("ngModel",e.scheduleFields.runAgain().allowedDays.sun)}}var Ft=[{key:"s",label:$localize`Seconds`},{key:"m",label:$localize`Minutes`},{key:"h",label:$localize`Hours`},{key:"D",label:$localize`Days`},{key:"W",label:$localize`Weeks`},{key:"M",label:$localize`Months`},{key:"Y",label:$localize`Years`}],ee={autoRun:!0,nextTime:{time:"13:00",date:new Date().toISOString().split("T")[0]},runAgain:{repeatValue:1,repeatUnit:"D",allowedDays:{mon:!1,tue:!1,wed:!1,thu:!1,fri:!1,sat:!1,sun:!1}}},Ke=class a{#e=M(J);#t=M(z);#i=M(ie);unitOptions=Ft;scheduleFields=this.#e.scheduleFields;goBack(){this.#t.navigate(["source-data"],{relativeTo:this.#i.parent})}next(){this.#e.isNew()||this.#e.submit(!0),this.#t.navigate(["options"],{relativeTo:this.#i.parent})}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=H({type:a,selectors:[["app-schedule"]],decls:16,vars:2,consts:()=>{let t;t=$localize`Schedule`;let e;e=$localize` Automatically run backups ${"\uFFFD#5\uFFFD\uFFFD/#5\uFFFD"}:TAG_INPUT:`;let n;n=$localize`If a date was missed, the job will run as soon as possible.`;let i;i=$localize`${"\uFFFD#12\uFFFD"}:START_TAG_SH_ICON:arrow-left${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SH_ICON: Go back `;let o;o=$localize`${"\uFFFD#15\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#15\uFFFD"}:CLOSE_TAG_SH_ICON: Continue `;let r;r=$localize`Next time`;let c;c=$localize`Run again every`;let h;h=$localize`Allowed days`;let S;S=$localize` Monday ${"\uFFFD#27\uFFFD\uFFFD/#27\uFFFD"}:TAG_INPUT:`;let O;O=$localize` Tuesday ${"\uFFFD#30\uFFFD\uFFFD/#30\uFFFD"}:TAG_INPUT:`;let P;P=$localize` Wednesday ${"\uFFFD#33\uFFFD\uFFFD/#33\uFFFD"}:TAG_INPUT:`;let U;U=$localize` Thursday ${"\uFFFD#36\uFFFD\uFFFD/#36\uFFFD"}:TAG_INPUT:`;let K;K=$localize` Friday ${"\uFFFD#39\uFFFD\uFFFD/#39\uFFFD"}:TAG_INPUT:`;let v;v=$localize` Saturday ${"\uFFFD#42\uFFFD\uFFFD/#42\uFFFD"}:TAG_INPUT:`;let W;return W=$localize` Sunday ${"\uFFFD#45\uFFFD\uFFFD/#45\uFFFD"}:TAG_INPUT:`,[["timeRef",""],["dateRef",""],t,e,n,i,o,r,c,h,S,O,P,U,K,v,W,[1,"title-30"],[1,"toggle-wrap"],[1,"raised","primary"],["type","checkbox",3,"ngModelChange","ngModel"],[1,"form-actions"],["shButton","","type","button",3,"click"],["shButton","",1,"raised","primary",3,"click"],[1,"row-inputs"],["for","time"],["type","time","id","time",3,"ngModelChange","focus","ngModel"],["suffix",""],["for","date"],["type","date","id","date",3,"ngModelChange","focus","ngModel"],["for","repeatValue"],["type","number","id","repeatValue",3,"ngModelChange","ngModel"],["value","key","label","label",3,"options","isClearable"],["type","text","id","repeatUnit",3,"ngModelChange","ngModel"],[3,"disallowToggle"],["title",""],[1,"days-wrap"]]},template:function(e,n){e&1&&(s(0,"h3",17),f(1,2),l(),s(2,"div",18)(3,"sh-toggle",19),C(4,3),s(5,"input",20),L("ngModelChange",function(o){return $(n.scheduleFields.autoRun,o)||(n.scheduleFields.autoRun=o),o}),l(),F(),l(),s(6,"p"),f(7,4),l()(),y(8,Ct,46,14),s(9,"div",21)(10,"button",22),E("click",function(){return n.goBack()}),C(11,5),m(12,"sh-icon"),F(),l(),s(13,"button",23),E("click",function(){return n.next()}),C(14,6),m(15,"sh-icon"),F(),l()()),e&2&&(_(5),w("ngModel",n.scheduleFields.autoRun),_(3),R(n.scheduleFields.autoRun()?8:-1))},dependencies:[le,Y,at,fe,Q,se,q,he,j,oe,ae,Oe],styles:["[_nghost-%COMP%]{display:block;width:100%;max-width:32.5rem;padding:2.5rem 2.5rem 1.5rem;display:flex;flex-direction:column;gap:1.5rem}.toggle-wrap[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem}.row-inputs[_ngcontent-%COMP%]{display:flex;align-items:flex-end;gap:.5rem}.row-inputs[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{flex:1 0}.days-wrap[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}"],changeDetection:0})};function St(a,t){if(a&1&&(B(0,4),x(1),k()),a&2){let e,n=u();_(),ve((e=n.currentExpressionOption())==null?null:e.startsWith)}}function Et(a,t){if(a&1&&(B(0,5),x(1),k()),a&2){let e,n=u();_(),ve((e=n.currentExpressionOption())==null?null:e.endsWith)}}var ht=[{key:"Excludes folders where name contains",value:"-FolderName"},{key:"Excludes folder",value:"-Folder"},{key:"Excludes files where name contains",value:"-FileName"},{key:"Excludes file extension",value:"-Extension"},{key:"Excludes files where name matches regex",value:"-Regex"},{key:"Includes files where name matches regex",value:"+Regex"},{key:"Excludes file group",value:"-FileGroup"},{key:"Includes expression",value:"+Expression"},{key:"Excludes expression",value:"-Expression"},{key:"None",value:"-Unknown"}],$e=class a{path=ke.required();osType=ke();pathChange=Be();remove=Be();internalPath=g("");pathType=g("-Expression");currentExpressionOption=I(()=>{let t=this.pathType();return this.expressionOptions().find(e=>e.value===t)});expressionOptions=I(()=>{let e=this.osType()==="Windows"?"\\":"/";return ht.map(n=>n.value==="-Folder"||n.value==="+Folder"?X(b({},n),{startsWith:"",endsWith:""}):n.value==="-FolderName"||n.value==="+FolderName"?X(b({},n),{startsWith:"*",endsWith:`*${e}`}):n.value==="-FileName"||n.value==="+FileName"?X(b({},n),{startsWith:"[.*",endsWith:`[^\\${e}]*]`}):n.value==="-FileGroup"||n.value==="+FileGroup"?X(b({},n),{startsWith:"{",endsWith:"}"}):n.value==="-Regex"||n.value==="+Regex"?X(b({},n),{startsWith:"[",endsWith:"]"}):n.value==="-Extension"||n.value==="+Extension"?X(b({},n),{startsWith:"*.",endsWith:""}):X(b({},n),{startsWith:"",endsWith:""}))});pathEffect=ne(()=>{let t=this.path(),e=t.slice(1),n=t.startsWith("-")?"-":"+",i=this.osType()==="Windows",o=i?"\\":"/";e.startsWith("%")&&e.endsWith(o)||i&&e.slice(2).startsWith(o)&&e.endsWith(o)||e.startsWith(o)&&e.endsWith(o)?(this.pathType.set(`${n}Folder`),this.internalPath.set(e)):e.startsWith("*")&&e.endsWith(`*${o}`)?(this.pathType.set(`${n}FolderName`),this.internalPath.set(e.slice(1,-2))):e.startsWith("[.*")&&e.endsWith(`[^\\${o}]*]`)?(this.pathType.set(`${n}FileName`),this.internalPath.set(e.slice(3,-7))):e.startsWith("{")&&e.endsWith("}")?(this.pathType.set(`${n}FileGroup`),this.internalPath.set(e.slice(1,-1))):e.startsWith("[")&&e.endsWith("]")?(this.pathType.set(`${n}Regex`),this.internalPath.set(e.slice(1,-1))):e.startsWith("*.")?(this.pathType.set(`${n}Extension`),this.internalPath.set(e.slice(2))):(this.pathType.set(`${n}Expression`),this.internalPath.set(e))});updateFilter(){let t=this.internalPath(),e=this.currentExpressionOption();t!==""&&this.pathChange.emit(`${e?.value.slice(0,1)}${e?.startsWith??""}${t}${e?.endsWith??""}`)}removeFilter(){this.remove.emit()}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=H({type:a,selectors:[["app-new-filter"]],inputs:{path:[1,"path"],osType:[1,"osType"]},outputs:{pathChange:"pathChange",remove:"remove"},decls:9,vars:6,consts:()=>{let t;return t=$localize`Select an option...`,[["value","value","label","key",3,"options","isClearable"],["type","text","placeholder",t,3,"ngModelChange","ngModel"],[1,"expression-input"],["type","text",3,"ngModelChange","ngModel"],["prefix",""],["suffix",""],[1,"filter-removal",3,"click"],[1,"sh-primary"]]},template:function(e,n){if(e&1&&(s(0,"sh-select",0)(1,"input",1),L("ngModelChange",function(o){return $(n.pathType,o)||(n.pathType=o),o}),E("ngModelChange",function(){return n.updateFilter()}),l()(),s(2,"sh-form-field",2)(3,"input",3),L("ngModelChange",function(o){return $(n.internalPath,o)||(n.internalPath=o),o}),E("ngModelChange",function(){return n.updateFilter()}),l(),y(4,St,2,1,"ng-container",4),y(5,Et,2,1,"ng-container",5),l(),s(6,"div",6),E("click",function(){return n.removeFilter()}),s(7,"sh-icon",7),x(8,"x-circle"),l()()),e&2){let i,o;T("options",n.expressionOptions())("isClearable",!1),_(),w("ngModel",n.pathType),_(2),w("ngModel",n.internalPath),_(),R(!((i=n.currentExpressionOption())==null||i.startsWith==null)&&i.startsWith.length?4:-1),_(),R(!((o=n.currentExpressionOption())==null||o.endsWith==null)&&o.endsWith.length?5:-1)}},dependencies:[le,Y,Q,se,ae,q,j],styles:["[_nghost-%COMP%]{display:grid;grid-template-columns:13.125rem 1fr 1.875rem;gap:.5rem;align-items:flex-end}.expression-input[_ngcontent-%COMP%]{--ff-suffix-bg: var(--base-2)}.filter-removal[_ngcontent-%COMP%]{cursor:pointer;display:flex;align-items:center;justify-content:center;height:2.5rem;flex:0 0}"],changeDetection:0})};var Tt=["formRef"],ze=()=>({standalone:!0});function ft(a,t){if(a&1){let e=G();s(0,"sh-form-field",41)(1,"input",42),L("ngModelChange",function(i){d(e);let o=u(2);return $(o.editingPath,i)||(o.editingPath=i),p(i)}),l()(),s(2,"button",43),E("click",function(){d(e);let i=u(2);return p(i.updatePath())}),s(3,"sh-icon"),x(4,"floppy-disk"),l()(),s(5,"button",43),E("click",function(){d(e);let i=u(2);return p(i.cancelEditPath())}),s(6,"sh-icon"),x(7,"x-bold"),l()()}if(a&2){let e=u(2);_(),w("ngModel",e.editingPath),T("ngModelOptions",Se(2,ze))}}function At(a,t){if(a&1){let e=G();s(0,"sh-form-field",41),m(1,"input",44),l(),s(2,"button",43),E("click",function(){d(e);let i=u().$implicit,o=u();return p(o.editPath(i))}),s(3,"sh-icon"),x(4,"pen"),l()(),s(5,"button",43),E("click",function(){d(e);let i=u().$implicit,o=u();return p(o.removePath(i))}),s(6,"sh-icon"),x(7,"trash-simple"),l()()}if(a&2){let e=u().$implicit;Ye("readonly",!0),_(),T("ngModel",e)("ngModelOptions",Se(3,ze))}}function Pt(a,t){if(a&1&&(s(0,"div",30),y(1,ft,8,3)(2,At,8,4),l()),a&2){let e=t.$implicit,n=u();_(),R(n.oldPath()===e?1:2)}}function Dt(a,t){if(a&1){let e=G();s(0,"app-new-filter",46),E("pathChange",function(i){let o=d(e).$index,r=u(2);return p(r.patchPathAt(i,o))})("remove",function(){let i=d(e).$index,o=u(2);return p(o.removePathAt(i))}),l()}if(a&2){let e=t.$implicit,n=u(2);T("path",e)("osType",n.osType()??"")}}function Nt(a,t){if(a&1&&Ue(0,Dt,1,2,"app-new-filter",45,Ie),a&2){let e=u();xe(e.pathArray())}}function Mt(a,t){if(a&1){let e=G();s(0,"div",31)(1,"app-size",47),E("ngModelChange",function(i){d(e);let o=u();return p(o.updateFilesLargerThan(i))}),l()()}if(a&2){let e=u();_(),T("ngModel",e.filesLargerThan())("ngModelOptions",Se(2,ze))}}var V=new ye,pt=(a={path:"",filters:[],excludes:{hidden:!1,system:!1,temporary:!1,filesLargerThan:null}})=>V.group({path:V.control(a.path),excludes:V.group({hidden:V.control(a.excludes.hidden),system:V.control(a.excludes.system),temporary:V.control(a.excludes.temporary),filesLargerThan:V.group({size:V.control(null),unit:V.control(null)})})}),He=class a{#e=M(J);#t=M(z);#i=M(ie);formRef=Ee.required("formRef");sourceDataForm=this.#e.sourceDataForm;sourceDataFormSignal=this.#e.sourceDataFormSignal;newPathCtrl=new ot("");filesLargerThan=I(()=>this.sourceDataFormSignal()?.excludes?.filesLargerThan?.size!==null);osType=this.#e.osType;pathSignal=re(this.sourceDataForm.controls.path.valueChanges);pathArray=I(()=>this.pathSignal()?.split("\0").filter(t=>t.startsWith("-")||t.startsWith("+")||t==="___none___")??[]);nonFilterPaths=I(()=>this.pathSignal()?.split("\0").filter(t=>!t.startsWith("-")&&!t.startsWith("+")&&t!==""));oldPath=g(null);editingPath=g(null);addingNewPath=g(!1);editPath(t){this.oldPath.set(t),this.editingPath.set(t)}updateFilesLargerThan(t){let{size:e,unit:n}=ct(t);this.sourceDataForm.controls.excludes.controls.filesLargerThan.setValue({size:e,unit:n})}updatePath(){let t=this.oldPath(),e=this.editingPath();if(!t||!e||e===t){this.oldPath.set(null),this.editingPath.set(null);return}let n=this.sourceDataForm.controls.path.value;this.sourceDataForm.controls.path.setValue(n?.replace(t,e)??""),this.oldPath.set(null),this.editingPath.set(null)}cancelEditPath(){this.oldPath.set(null),this.editingPath.set(null)}removePath(t){let n=(this.sourceDataForm.controls.path.value??"").split("\0"),i=n.indexOf(t);if(i===-1)return;n.splice(i,1);let o=n.filter(r=>r&&r!=="").join("\0");this.sourceDataForm.controls.path.setValue(o)}addFilter(t="-*"){let n=[this.sourceDataForm.controls.path.value,t].filter(i=>i&&i!=="").join("\0");this.sourceDataForm.controls.path.setValue(n)}patchPathAt(t,e){let i=this.sourceDataForm.controls.path.value.split("\0").filter(c=>!c.startsWith("-")&&!c.startsWith("+")).join("\0"),o=this.pathArray().map((c,h)=>h===e?`${t}`:`${c}`).join("\0"),r=[i,o].filter(c=>c&&c!=="").join("\0");this.sourceDataForm.controls.path.setValue(r)}removePathAt(t){let n=this.sourceDataForm.controls.path.value.split("\0").filter(r=>!r.startsWith("-")&&!r.startsWith("+")).join("\0"),i=this.pathArray().filter((r,c)=>c!==t).join("\0"),o=[n,i].filter(r=>r&&r!=="").join("\0");this.sourceDataForm.controls.path.setValue(o)}getPath(){return this.sourceDataForm.value.path??null}toggleFilesLargerThan(){this.sourceDataForm.controls.excludes.value.filesLargerThan?.size===null?this.sourceDataForm.controls.excludes.controls.filesLargerThan.setValue({size:50,unit:"MB"}):this.sourceDataForm.controls.excludes.controls.filesLargerThan.setValue({size:null,unit:null})}addNewPath(){let t=this.sourceDataForm.controls.path.value,e=this.newPathCtrl.value,n=t?.split("\0")||[];e&&!n.includes(e)&&n.push(e);let i=n.filter(o=>o&&o!=="").join("\0");this.sourceDataForm.controls.path.setValue(i),this.newPathCtrl.setValue("")}goBack(){this.#t.navigate(["destination"],{relativeTo:this.#i.parent})}next(){this.#e.isNew()||this.#e.submit(!0),this.#t.navigate(["schedule"],{relativeTo:this.#i.parent})}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=H({type:a,selectors:[["app-source-data"]],viewQuery:function(e,n){e&1&&me(n.formRef,Tt,5),e&2&&Ce()},decls:56,vars:12,consts:()=>{let t;t=$localize`Path`;let e;e=$localize`Add a direct path`;let n;n=$localize`Hidden files`;let i;i=$localize`System files`;let o;o=$localize`Temporary files`;let r;r=$localize`Source Data`;let c;c=$localize`Folder path`;let h;h=$localize`${"\uFFFD#12\uFFFD"}:START_TAG_SH_ICON:arrow-left${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SH_ICON: Go back `;let S;S=$localize`${"\uFFFD#15\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#15\uFFFD"}:CLOSE_TAG_SH_ICON: Continue `;let O;O=$localize`Paths`;let P;P=$localize`Add a path directly from your machine.`;let U;U=$localize`Filters`;let K;K=$localize`Customize your filters.`;let v;v=$localize`Add filter`;let W;W=$localize`Exclude`;let D;D=$localize`Choose if there’s any files you want to exclude.`;let Z;Z=$localize` Files with the Hidden attribute ${"\uFFFD#46\uFFFD\uFFFD/#46\uFFFD"}:TAG_INPUT:`;let _e;_e=$localize` Files with the System attribute ${"\uFFFD#49\uFFFD\uFFFD/#49\uFFFD"}:TAG_INPUT:`;let ue;ue=$localize` Files with the Temporary attribute ${"\uFFFD#52\uFFFD\uFFFD/#52\uFFFD"}:TAG_INPUT:`;let ce;ce=$localize` Files larger than `;let A;return A=$localize`Edit path`,[["formRef",""],r,c,h,S,O,P,U,K,v,W,D,Z,_e,ue,ce,[3,"submit","formGroup"],[1,"left"],[1,"title-30"],[1,"fill",3,"multiSelect","startingPath","showFiles"],["for","path"],["type","text","id","path","tabindex","4","placeholder",t,"formControlName","path"],[1,"form-actions"],["shButton","","type","button",3,"click"],["shButton","","type","submit",1,"raised","primary"],[1,"right"],[3,"disallowToggle"],["title",""],["description",""],[1,"paths"],[1,"path"],[1,"row-inputs"],["type","text","placeholder",e,3,"formControl"],["shButton","","type","button",1,"raised","primary",3,"click"],["type","button","shButton","","action","",3,"click"],["formGroupName","excludes",3,"disallowToggle"],[1,"raised","primary"],["type","checkbox","placeholder",n,"formControlName","hidden"],["type","checkbox","placeholder",i,"formControlName","system"],["type","checkbox","placeholder",o,"formControlName","temporary"],[1,"raised","primary",3,"click"],[1,"small"],["type","text","placeholder",A,3,"ngModelChange","ngModel","ngModelOptions"],["shButton","","type","button",1,"small",3,"click"],["type","text",3,"ngModel","ngModelOptions"],[3,"path","osType"],[3,"pathChange","remove","path","osType"],[3,"ngModelChange","ngModel","ngModelOptions"]]},template:function(e,n){if(e&1){let i=G();s(0,"form",16,0),E("submit",function(){return d(i),p(n.next())}),s(2,"div",17)(3,"h3",18),f(4,1),l(),s(5,"app-file-tree",19)(6,"label",20),f(7,2),l(),m(8,"input",21),l(),s(9,"div",22)(10,"button",23),E("click",function(){return d(i),p(n.goBack())}),C(11,3),m(12,"sh-icon"),F(),l(),s(13,"button",24),C(14,4),m(15,"sh-icon"),F(),l()()(),s(16,"div",25)(17,"app-toggle-card",26),B(18,27),f(19,5),k(),s(20,"p",28),f(21,6),l(),s(22,"div",29),Ue(23,Pt,3,1,"div",30,Ie),s(25,"div",31)(26,"sh-form-field"),m(27,"input",32),l(),s(28,"button",33),E("click",function(){return d(i),p(n.addNewPath())}),s(29,"sh-icon"),x(30,"plus"),l()()()()(),s(31,"app-toggle-card",26),B(32,27),f(33,7),k(),s(34,"p",28),f(35,8),l(),s(36,"button",34),E("click",function(){return d(i),p(n.addFilter())}),f(37,9),l(),y(38,Nt,2,0),l(),s(39,"app-toggle-card",35),B(40,27),f(41,10),k(),s(42,"p",28),f(43,11),l(),s(44,"sh-toggle",36),C(45,12),m(46,"input",37),F(),l(),s(47,"sh-toggle",36),C(48,13),m(49,"input",38),F(),l(),s(50,"sh-toggle",36),C(51,14),m(52,"input",39),F(),l(),s(53,"sh-toggle",40),E("click",function(){return d(i),p(n.toggleFilesLargerThan())}),f(54,15),l(),y(55,Mt,2,3,"div",31),l()()()}if(e&2){let i;T("formGroup",n.sourceDataForm),_(5),T("multiSelect",!0)("startingPath",n.getPath())("showFiles",!0),_(12),T("disallowToggle",!0),_(6),xe(n.nonFilterPaths()),_(4),T("formControl",n.newPathCtrl),_(4),T("disallowToggle",!0),_(7),R((i=n.pathSignal())!=null&&i.length?38:-1),_(),T("disallowToggle",!0),_(14),Fe("active",n.filesLargerThan()),_(2),R(n.filesLargerThan()?55:-1)}},dependencies:[le,De,Y,fe,Q,Pe,se,Re,st,Ne,Me,lt,q,j,oe,he,$e,ut,Oe,dt],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;width:100%;flex:1 0;overflow:hidden}form[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;flex:1 0;overflow:hidden}.right[_ngcontent-%COMP%], .left[_ngcontent-%COMP%]{flex:1 0;display:flex;flex-direction:column;gap:1.5rem}.left[_ngcontent-%COMP%]{padding:2.5rem;overflow:hidden;border-right:1px solid var(--base-4)}.right[_ngcontent-%COMP%]{padding:2.5rem 1.5rem;overflow:auto}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}sh-divider[_ngcontent-%COMP%]{margin:.75rem 0}.row-inputs[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr min-content;gap:.25rem}.paths[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}.path[_ngcontent-%COMP%]{display:grid;align-items:center;grid-template-columns:1fr min-content min-content;gap:.25rem}"],changeDetection:0})};var gt="1W:1D,4W:1W,12M:1M",J=class a{#e=M(z);#t=M(Te);#i=M(Ze);#n=M(nt);#a=M(we);generalForm=mt();sourceDataForm=pt();scheduleFields={autoRun:g(ee.autoRun),nextTime:g(ee.nextTime),runAgain:g(ee.runAgain)};settings=g([]);optionsFields={remoteVolumeSize:g("50MB"),backupRetention:g("all"),backupRetentionTime:g(""),backupRetentionVersions:g(0),backupRetentionCustom:g("")};targetUrlModel=g(null);backupMetadata=g(null);isDraft=g(!1);backupId=g(null);backupName=I(()=>this.generalFormSignal()?.name??"");isSubmitting=g(!1);finishedLoading=g(!1);backupDefaults=g(null);applicationOptions=g(null);isNew=I(()=>this.backupId()==="new");osType=I(()=>this.#t.systemInfo()?.OSType);selectedOptions=g([]);sourceDataFormSignal=re(this.sourceDataForm.valueChanges);generalFormSignal=re(this.generalForm.valueChanges);encryptionFieldSignal=re(this.generalForm.controls.encryption.valueChanges);advancedOptions=I(()=>this.#t.systemInfo()?.Options?.map(this.#_)??[]);#o=g("");#s=g(null);#l=null;testSignal=this.#o.asReadonly();testErrorMessage=this.#s.asReadonly();#d=ne(()=>{let t=this.targetUrlModel(),e=this.#o(),n=this.#l;this.#l=t,!(e==="testing"||n===null||n===t)&&(this.#o.set(""),this.#s.set(null))});setTestState(t,e){this.#o.set(t),this.#s.set(e??null)}#_(t){return{name:t.Name,type:t.Type,shortDescription:t.ShortDescription??void 0,longDescription:t.LongDescription??void 0,options:t.ValidValues}}encryptionOptions=I(()=>{let t=this.#t.systemInfo()?.EncryptionModules??[];return[pe,...t]});nonSelectedOptions=I(()=>this.advancedOptions().sort((t,e)=>t?.name&&e?.name?t?.name.localeCompare(e?.name):0).filter(t=>this.selectedOptions()?.findIndex(e=>e.name===t.name)===-1));submit(t=!1){this.isSubmitting.set(!0);let e=this.#u(),n=this.backupId();this.isDraft()&&e.Backup&&(e.Backup.Metadata=this.backupMetadata()),n==="new"||!n||this.isDraft()?this.#n.postApiV1Backups({requestBody:e}).pipe(Le(()=>this.isSubmitting.set(!1))).subscribe({next:i=>{t||this.exit(!1)},error:i=>{}}):this.#n.putApiV1BackupById({id:n,requestBody:e}).pipe(Le(()=>this.isSubmitting.set(!1))).subscribe({next:i=>{t||this.exit(!1)},error:i=>{}})}exit(t){if(!t){this.#r(),this.#e.navigate(["/"]);return}this.#i.open(it,{data:{title:$localize`Confirm exit?`,message:$localize`Are you sure you want to exit?`,confirmText:$localize`Yes`,cancelText:$localize`Cancel`},closed:e=>{e&&(this.#r(),this.#e.navigate(["/"]))}})}mapSourceDataToForm(t){let e=t.Sources??"",n=t.Filters?.map(c=>`${c.Include?"":"-"}${c.Expression}`)??[],i=t.Settings?.find(c=>c.Name==="--exclude-files-attributes")?.Value??"",o=t.Settings?.find(c=>c.Name==="--skip-files-larger-than")??null,r={path:[...e,...n].join("\0"),excludes:{hiddenFiles:i.includes("hidden"),systemFiles:i.includes("system"),tempFiles:i.includes("temporary"),filesLargerThan:o?.Value?.toUpperCase()??null}};this.sourceDataForm.patchValue(r)}mapDestinationToForm(t){this.targetUrlModel.set(t.TargetURL??"")}mapGeneralToForm(t){let e=t.Name??"",n=t.Description??"",i=t.Settings?.find(S=>S.Name==="encryption-module"),o=t.Settings?.find(S=>S.Name==="passphrase")?.Value??"",r=i?.Value&&i.Value.length?i.Value:"",c=t.Settings?.find(S=>S.Name==="compression-module")?.Value??"",h={name:t.Name??"",description:t.Description??""};e&&e!==""&&(h.name=e),n&&n!==""&&(h.description=n),r&&r!==""&&(h.encryption=r),o&&o!==""&&(h.password=o,h.repeatPassword=o),c&&c!==""&&(h.compression=c),this.generalForm.patchValue(h)}mapScheduleToForm(t){if(!t){this.scheduleFields.autoRun.set(!1);return}let e=this.#a.fromString(t.Repeat)??null,n=this.#c(t.Time);this.scheduleFields.autoRun.set(!0),this.scheduleFields.nextTime.update(i=>b(b({},i),n)),this.scheduleFields.runAgain.set({repeatValue:e?.value??1,repeatUnit:e?.unit??"D",allowedDays:{mon:t.AllowedDays?.includes("mon")??!1,tue:t.AllowedDays?.includes("tue")??!1,wed:t.AllowedDays?.includes("wed")??!1,thu:t.AllowedDays?.includes("thu")??!1,fri:t.AllowedDays?.includes("fri")??!1,sat:t.AllowedDays?.includes("sat")??!1,sun:t.AllowedDays?.includes("sun")??!1}})}mapOptionsToForms(t){let e=["--no-encryption","--exclude-files-attributes","--skip-files-larger-than","dblock-size","passphrase","keep-time","keep-versions","retention-policy"],n=t.Settings?.filter(r=>!e.includes(r.Name)),i=t.Settings?.filter(r=>e.includes(r.Name));this.settings.set(n??[]),n?.forEach(r=>{if(r.Name==="encryption-module"&&this.isNew())return this.generalForm.controls.encryption.setValue(r.Value??"")});var o="all";i?.forEach(r=>{if(r.Name==="dblock-size"&&this.optionsFields.remoteVolumeSize.set(r.Value??"50MB"),r.Name==="keep-time"&&(r.Value??"")!=="")return o="time",this.optionsFields.backupRetentionTime.set(r.Value??"");if(r.Name==="keep-versions"&&(r.Value??"")!=="")return o="versions",this.optionsFields.backupRetentionVersions.set(r.Value?parseInt(r.Value):null);if(r.Name==="retention-policy"&&(r.Value??"")!=="")if(r.Value===gt)o="smart";else return o="custom",this.optionsFields.backupRetentionCustom.set(r.Value??"")}),this.optionsFields.backupRetention.set(o)}storeMetadata(t,e){this.backupMetadata.set(e?t.Metadata??null:null)}getScheduleFormValue(){return{autoRun:this.scheduleFields.autoRun(),nextTime:this.scheduleFields.nextTime(),runAgain:this.scheduleFields.runAgain()}}#u(){let t=this.generalForm.value,e=this.getScheduleFormValue(),n=this.sourceDataForm.value,i=this.targetUrlModel(),o=null;e.runAgain?.repeatUnit&&e.runAgain?.repeatValue&&(o=this.#a.toString(e.runAgain.repeatValue,e.runAgain.repeatUnit));let r=e.runAgain?.allowedDays?Object.entries(e.runAgain?.allowedDays).filter(([P,U])=>U).map(([P,U])=>P):[],c=n.path?.split("\0")??[],h=this.mapFormsToSettings(),S=Object.entries(n.excludes??{}).filter(([P,U])=>U&&P!=="filesLargerThan").map(([P])=>P),O=n.excludes?.filesLargerThan;return S.length&&h.push({Name:"--exclude-files-attributes",Value:S.join(",")}),O&&O.size!==null&&O.unit!==null&&h.push({Name:"--skip-files-larger-than",Value:`${O.size}${O.unit}`}),{Backup:{Name:t.name,Description:t.description,TargetURL:i??null,Sources:c.filter(P=>!P.startsWith("-")),Settings:h,Filters:c.filter(P=>P.startsWith("-")).map((P,U)=>({Order:U,Include:!1,Expression:P.slice(1)}))},Schedule:e.autoRun?{Repeat:o,Time:e.nextTime?.date?new Date(`${e.nextTime.date}T${e.nextTime?.time||"00:00:00"}`).toISOString():null,AllowedDays:r}:null}}mapFormsToSettings(t=[]){let e=this.generalForm.value,n=["--no-encryption","--exclude-files-attributes","--skip-files-larger-than","encryption-module","passphrase","keep-time","keep-versions","retention-policy","dblock-size","compression-module"],i=[{Name:"--no-encryption",Value:"True"}];e.encryption!==""&&e.encryption!==pe.Key&&(i=[{Name:"encryption-module",Value:e.encryption??null},{Name:"passphrase",Value:e.password??null}]);let o=[{Name:"compression-module",Value:e.compression}];e.compression===""&&(o=[]);let r=[{Name:"dblock-size",Value:this.optionsFields.remoteVolumeSize()}];switch(this.optionsFields.backupRetention()){case"time":r.push({Name:"keep-time",Value:this.optionsFields.backupRetentionTime()});break;case"versions":r.push({Name:"keep-versions",Value:this.optionsFields.backupRetentionVersions()?.toString()??""});break;case"custom":r.push({Name:"retention-policy",Value:this.optionsFields.backupRetentionCustom()});break;case"smart":r.push({Name:"retention-policy",Value:gt});break}let c=[...t,...n],h=this.settings().filter(S=>!c.includes(S.Name)).map(S=>{let O=S.Value;return typeof S.Value=="number"&&(O=S.Value.toString()),typeof S.Value=="boolean"&&(O=S.Value?"True":"False"),{Name:S.Name?.startsWith("--")?S.Name:`--${S.Name}`,Value:O}});return[...i,...o,...r,...h]}#c(t){if(!t||t?.indexOf("T")===-1)return{time:t??"13:00"};let e=new Date(t);return{time:`${(""+e.getHours()).padStart(2,"0")}:${(""+e.getMinutes()).padStart(2,"0")}`,date:e.toISOString().split("T")[0]}}setTargetUrl(t,e=!1){e&&(this.#l=null),this.targetUrlModel.set(t)}#r(){this.generalForm.reset(),this.sourceDataForm.reset(),this.scheduleFields.autoRun.set(ee.autoRun),this.scheduleFields.nextTime.set(ee.nextTime),this.scheduleFields.runAgain.set(ee.runAgain),this.optionsFields.remoteVolumeSize.set("50MB"),this.optionsFields.backupRetention.set("all"),this.settings.set([]),this.targetUrlModel.set(null)}static \u0275fac=function(e){return new(e||a)};static \u0275prov=ge({token:a,factory:a.\u0275fac,providedIn:"root"})};var yt=["formRef"];function Rt(a,t){a&1&&(s(0,"sh-alert",17),C(1,5),m(2,"sh-icon",26),F(),l())}function Ot(a,t){if(a&1&&x(0),a&2){let e=t.$implicit;Qe(" ",e.DisplayName," ")}}function wt(a,t){if(a&1&&m(0,"sh-progress-bar",40),a&2){let e=u(3);Fe("error",e.calculatePasswordStrength()===1)("warn",e.calculatePasswordStrength()===2)("primary",e.calculatePasswordStrength()===4)("success",e.calculatePasswordStrength()===5),T("value",e.calculatePasswordStrength()*(100/5))}}function $t(a,t){a&1&&(s(0,"span",35),f(1,10),l())}function Lt(a,t){a&1&&(C(0,8,1),m(1,"sh-icon"),F())}function It(a,t){a&1&&(C(0,8,2),m(1,"sh-icon"),F())}function Ut(a,t){a&1&&(C(0,11,1),m(1,"sh-icon",42),F())}function xt(a,t){a&1&&(C(0,11,2),m(1,"sh-icon"),F())}function Gt(a,t){if(a&1){let e=G();s(0,"button",41),E("click",function(){d(e);let i=u(3);return p(i.copyPassword())}),C(1,11),y(2,Ut,2,0)(3,xt,2,0),F(),l()}if(a&2){let e=u(3);_(2),R(e.copiedPassword()?2:3)}}function bt(a,t){a&1&&(s(0,"sh-alert",39),f(1,12),l())}function vt(a,t){if(a&1){let e=G();s(0,"div",30)(1,"sh-form-field")(2,"label",31),C(3,7),m(4,"sup"),F(),l(),m(5,"input",32),l(),y(6,wt,1,9,"sh-progress-bar",33),s(7,"sh-form-field"),m(8,"input",34),y(9,$t,2,0,"span",35),l(),s(10,"div",36)(11,"button",37),E("click",function(){d(e);let i=u(2);return p(i.showPassword.set(!i.showPassword()))}),C(12,8),y(13,Lt,2,0)(14,It,2,0),F(),l(),s(15,"button",37),E("click",function(){d(e);let i=u(2);return p(i.generatePassword())}),C(16,9),m(17,"sh-icon"),F(),l(),y(18,Gt,4,1,"button",38),l(),y(19,bt,2,0,"sh-alert",39),l()}if(a&2){let e=u(2);_(5),T("type",e.showPassword()?"text":"password"),_(),R(e.generalForm.value.password?6:-1),_(2),T("type",e.showPassword()?"text":"password"),_(),R(e.generalForm.value.repeatPassword&&e.generalForm.value.repeatPassword!==e.generalForm.value.password?9:-1),_(4),R(e.showPassword()?13:14),_(5),R(e.showCopyPassword()?18:-1),_(),R(e.generalForm.value.password&&e.generalForm.value.password===e.generalForm.value.repeatPassword?19:-1)}}function Bt(a,t){if(a&1&&(s(0,"sh-select",27)(1,"label",28),f(2,6),l(),m(3,"input",29),qe(4,Ot,1,1,"ng-template"),l(),y(5,vt,20,7,"div",30)),a&2){let e=u();T("options",e.encryptionOptions())("isClearable",!1),_(5),R(e.encryptionFieldSignal()!==e.noneOptionKey?5:-1)}}function kt(a,t){if(a&1&&(s(0,"button",24),C(1,13),m(2,"sh-icon"),F(),l()),a&2){let e=u();T("disabled",e.nameAndDescriptionValid()===!1)}}function Vt(a,t){if(a&1&&(s(0,"button",25),C(1,14),m(2,"sh-icon"),F(),l()),a&2){let e=u();T("disabled",e.generalForm.invalid||e.showCopyPassword()&&!e.copiedPassword())}}var te=new ye,mt=(a={name:"",description:"",encryption:"",password:"",repeatPassword:"",compression:""})=>te.group({name:te.control(a.name,[Ae.required]),description:te.control(a.description),encryption:te.control(a.encryption,[_t()]),password:te.control(a.password,[Ve(t=>t?.value.encryption!=="",[Ae.required])]),repeatPassword:te.control(a.repeatPassword,[Ve(t=>t?.value.encryption!=="",[Ae.required])]),compression:te.control(a.compression)}),pe={Key:"-",DisplayName:"None"},je=class a{#e=M(z);#t=M(ie);#i=M(rt);#n=M(J);#a=M(Te);formRef=Ee.required("formRef");generalForm=this.#n.generalForm;generalFormSignal=this.#n.generalFormSignal;encryptionFieldSignal=this.#n.encryptionFieldSignal;encryptionOptions=this.#n.encryptionOptions;isNew=this.#n.isNew;showPassword=g(!1);copiedPassword=g(!1);showCopyPassword=g(!1);noneOptionKey=pe.Key;encryptionEffect=ne(()=>{this.encryptionFieldSignal()===pe.Key&&(this.copiedPassword.set(!1),this.showCopyPassword.set(!1))});nameAndDescriptionValid=I(()=>{let t=this.generalFormSignal(),e=this.generalForm.controls;return e?.name&&e.name.valid&&e?.description&&e.description.valid});calculatePasswordStrength=I(()=>{let e=this.generalFormSignal()?.password??"";return this.#i.calculatePasswordStrength(e)});ngOnInit(){this.formRef().nativeElement.focus()}exit(){this.#n.exit(!0)}async copyPassword(){let t=this.generalForm.controls.password.value;await this.#o(t??""),this.copiedPassword.set(!0)}async#o(t){try{await navigator.clipboard.writeText(t)}catch{try{let n=document.createElement("textarea");n.value=t,document.body.appendChild(n),n.select(),document.execCommand("copy"),document.body.removeChild(n)}catch(n){console.error("Failed to copy text: ",n)}}}generatePassword(){this.copiedPassword.set(!1);let t=this.#i.generate(16);this.generalForm.controls.password.setValue(t),this.generalForm.controls.repeatPassword.setValue(t),this.showCopyPassword.set(!0)}next(){this.#n.isNew()||this.#n.submit(!0),this.#e.navigate(["destination"],{relativeTo:this.#t.parent})}static \u0275fac=function(e){return new(e||a)};static \u0275cmp=H({type:a,selectors:[["app-general"]],viewQuery:function(e,n){e&1&&me(n.formRef,yt,5),e&2&&Ce()},decls:21,vars:4,consts:()=>{let t;t=$localize`Your backup name`;let e;e=$localize`Your backup description`;let n;n=$localize`Remember to copy the password`;let i;i=$localize`General backup settings`;let o;o=$localize` Backup name ${"\uFFFD#8\uFFFD"}:START_SUPERSCRIPT:*${"\uFFFD/#8\uFFFD"}:CLOSE_SUPERSCRIPT:`;let r;r=$localize`Backup description`;let c;c=$localize`${"\uFFFD#18\uFFFD"}:START_TAG_SH_ICON:arrow-left${"\uFFFD/#18\uFFFD"}:CLOSE_TAG_SH_ICON: Exit `;let h;h=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:lock${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON: Encrypted backup `;let S;S=$localize`Encryption`;let O;O=$localize`Encryption`;let P;P=$localize`Password`;let U;U=$localize`Repeat password`;let K;K=$localize` Create a password ${"\uFFFD#4\uFFFD"}:START_SUPERSCRIPT:*${"\uFFFD/#4\uFFFD"}:CLOSE_SUPERSCRIPT:`;let v;v=$localize`${"\uFFFD*13:1\uFFFD"}:START_BLOCK_IF:${"[\uFFFD#1:1\uFFFD|\uFFFD#1:2\uFFFD]"}:START_TAG_SH_ICON:eye-slash${"[\uFFFD/#1:1\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_SH_ICON: hide ${"\uFFFD/*13:1\uFFFD"}:CLOSE_BLOCK_IF:${"\uFFFD*14:2\uFFFD"}:START_BLOCK_ELSE:${"[\uFFFD#1:1\uFFFD|\uFFFD#1:2\uFFFD]"}:START_TAG_SH_ICON:eye${"[\uFFFD/#1:1\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_SH_ICON: show ${"\uFFFD/*14:2\uFFFD"}:CLOSE_BLOCK_ELSE:`,v=Ge(v);let W;W=$localize`${"\uFFFD#17\uFFFD"}:START_TAG_SH_ICON:password${"\uFFFD/#17\uFFFD"}:CLOSE_TAG_SH_ICON: Generate password `;let D;D=$localize`Passwords do not match`;let Z;Z=$localize`${"\uFFFD*2:1\uFFFD"}:START_BLOCK_IF:${"\uFFFD#1:1\uFFFD"}:START_TAG_SH_ICON:check${"[\uFFFD/#1:1\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_SH_ICON: Copied password ${"\uFFFD/*2:1\uFFFD"}:CLOSE_BLOCK_IF:${"\uFFFD*3:2\uFFFD"}:START_BLOCK_ELSE:${"\uFFFD#1:2\uFFFD"}:START_TAG_SH_ICON_1:copy${"[\uFFFD/#1:1\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_SH_ICON: Copy password ${"\uFFFD/*3:2\uFFFD"}:CLOSE_BLOCK_ELSE:`,Z=Ge(Z);let _e;_e=$localize` Tip: Be sure to save your password. If you lose it, you will lose access to your backups. `;let ue;ue=$localize` Continue ${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON:`;let ce;return ce=$localize` Continue ${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON:`,[["formRef",""],i,o,r,c,h,O,K,v,W,D,Z,_e,ue,ce,["autocomplete","off",3,"submit","formGroup"],[1,"title-30"],[1,"primary"],["for","backupName"],["type","text","tabindex","1","placeholder",t,"formControlName","name"],["for","backupDescription"],["id","backupDescription","tabindex","2","placeholder",e,"formControlName","description"],[1,"form-actions"],["type","button","shButton","",3,"click"],["shButton","","type","submit",1,"raised","primary",3,"disabled"],["shButton","","type","submit","shTooltip",n,1,"raised","primary",3,"disabled"],["icon",""],["value","Key","label","DisplayName",3,"options","isClearable"],["for","encryption"],["type","text","id","encryption","tabindex","3","placeholder",S,"formControlName","encryption"],[1,"passwords"],["for","password"],["id","password","tabindex","4","autocomplete","off","placeholder",P,"formControlName","password",3,"type"],[1,"raised",3,"error","warn","primary","success","value"],["id","repeatPassword","tabindex","5","autocomplete","off","placeholder",U,"formControlName","repeatPassword",3,"type"],["error",""],[1,"password-actions"],["shButton","","type","button",1,"small",3,"click"],["shButton","","type","button",1,"small","copy"],["type","primary"],[1,"raised",3,"value"],["shButton","","type","button",1,"small","copy",3,"click"],[1,"sh-success"]]},template:function(e,n){if(e&1){let i=G();s(0,"form",15,0),E("submit",function(){return d(i),p(n.next())}),s(2,"h3",16),f(3,1),l(),y(4,Rt,3,0,"sh-alert",17),s(5,"sh-form-field")(6,"label",18),C(7,2),m(8,"sup"),F(),l(),m(9,"input",19),l(),s(10,"sh-form-field")(11,"label",20),f(12,3),l(),m(13,"textarea",21),l(),y(14,Bt,6,3),s(15,"div",22)(16,"button",23),E("click",function(){return d(i),p(n.exit())}),C(17,4),m(18,"sh-icon"),F(),l(),y(19,kt,3,1,"button",24)(20,Vt,3,1,"button",25),l()()}if(e&2){let i;T("formGroup",n.generalForm),_(4),R(!n.isNew()&&((i=n.generalFormSignal())==null?null:i.encryption)!==""?4:-1),_(10),R(n.isNew()?14:-1),_(5),R(n.encryptionFieldSignal()===n.noneOptionKey||!n.isNew()?19:20)}},dependencies:[Re,De,Y,Q,Pe,Ne,Me,q,ae,oe,j,et,Je,tt],styles:["[_nghost-%COMP%]{display:block;width:100%;max-width:32.5rem;padding:2.5rem}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem;padding-bottom:1.5rem}sup[_ngcontent-%COMP%]{padding:0 .125rem;color:var(--error-8)}.passwords[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}.password-actions[_ngcontent-%COMP%]{display:flex;gap:.5rem;align-items:center}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}.copy[_ngcontent-%COMP%] sh-icon.sh-success[_ngcontent-%COMP%]{color:var(--success-8)}"],changeDetection:0})};export{mt as a,pe as b,je as c,ee as d,Ke as e,pt as f,He as g,J as h};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as le}from"./chunk-4DNWEJIW.js";import{a as ae}from"./chunk-TK5QY2QD.js";import{h as se}from"./chunk-MQI3XY6Q.js";import{c as ie}from"./chunk-23CWXAU4.js";import"./chunk-DDWLL7XA.js";import"./chunk-2QJC4PGQ.js";import"./chunk-O64ZZGQZ.js";import"./chunk-DELLEGXW.js";import"./chunk-RHW5QVAY.js";import"./chunk-VTSUHAP5.js";import{c as Z,e as J,i as ee,k as ne,s as te,t as oe}from"./chunk-N5SC4SKW.js";import{b as V,d as H}from"./chunk-LVP2TPMO.js";import"./chunk-43JMN2ZY.js";import{a as q,g as Y,l as Q,t as j}from"./chunk-H7K35UUX.js";import"./chunk-NOPMCS2Z.js";import"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import{Ab as t,Bb as i,Cb as g,Jb as F,Oc as I,Qb as S,Ra as c,Rb as O,Sb as r,Vc as W,Wb as M,Yb as p,_ as C,bb as x,ea as P,ec as G,fa as f,fc as K,ic as U,oa as v,qc as u,rc as d,sc as m,ub as h,vb as N,zb as T,zc as X}from"./chunk-HNWRQABR.js";import"./chunk-EUDKD2JW.js";var _e=["formRef"],re=()=>["--skip-files-larger-than","dblock-size","encryption-module","no-encryption","--no-encryption","compression-module","--exclude-files-attributes","keep-time","keep-versions","retention-policy"];function ce(s,l){s&1&&(S(0,1,1),g(1,"sh-icon",20),O())}function pe(s,l){s&1&&(t(0,"p",21),r(1,6),i())}function ue(s,l){s&1&&(t(0,"p"),r(1,7),i())}function de(s,l){if(s&1){let n=F();t(0,"p"),r(1,8),i(),t(2,"app-timespan",18),m("ngModelChange",function(a){P(n);let o=p();return d(o.optionsFields.backupRetentionTime,a)||(o.optionsFields.backupRetentionTime=a),f(a)}),t(3,"label",30),r(4,9),i()()}if(s&2){let n=p();c(2),T("customId","backupRetentionTime"),u("ngModel",n.optionsFields.backupRetentionTime)}}function me(s,l){if(s&1){let n=F();t(0,"p"),r(1,10),i(),t(2,"sh-form-field")(3,"label",31),r(4,11),i(),t(5,"input",32),m("ngModelChange",function(a){P(n);let o=p();return d(o.optionsFields.backupRetentionVersions,a)||(o.optionsFields.backupRetentionVersions=a),f(a)}),i()()}if(s&2){let n=p();c(5),u("ngModel",n.optionsFields.backupRetentionVersions)}}function Se(s,l){s&1&&(t(0,"p"),r(1,12),i())}function Oe(s,l){if(s&1){let n=F();t(0,"p"),r(1,13),i(),t(2,"sh-form-field")(3,"p"),r(4,14),i(),t(5,"label",33),r(6,15),i(),t(7,"input",34),m("ngModelChange",function(a){P(n);let o=p();return d(o.optionsFields.backupRetentionCustom,a)||(o.optionsFields.backupRetentionCustom=a),f(a)}),i()()}if(s&2){let n=p();c(7),u("ngModel",n.optionsFields.backupRetentionCustom)}}var Te=["Bytes","KB","MB","GB","TB","PB"],ge=[{value:"all",name:$localize`Keep all backups`},{value:"time",name:$localize`Delete backups that are older than`},{value:"versions",name:$localize`Keep a specific number of backups`},{value:"smart",name:$localize`Smart backup retention`},{value:"custom",name:$localize`Custom backup retention`}],Ce=1024*1024*1024*2,Pe=1024*1024*5,E=class s{#e=C(se);#n=C(H);#t=C(V);formRef=W.required("formRef");selectedOptions=this.#e.selectedOptions;nonSelectedOptions=this.#e.nonSelectedOptions;isSubmitting=this.#e.isSubmitting;settings=this.#e.settings;optionsFields=this.#e.optionsFields;applicationOptions=this.#e.applicationOptions;retentionOptions=v(ge);sizeSplit=I(()=>{let n=this.optionsFields.remoteVolumeSize().match(/^(\d+)(bytes|kb|mb|gb|tb|pb|b)$/i);return{value:n?parseInt(n[1],10):0,unit:n?n[2].toUpperCase():"MB"}});exceededVolumeSize=I(()=>{let l=this.sizeSplit().value,n=this.sizeSplit().unit;if(l==null||n===null||n===void 0)return!1;let e=l*Math.pow(1024,Te.indexOf(n));return e>Ce||e<Pe});goBack(){this.#n.navigate(["schedule"],{relativeTo:this.#t.parent})}submit(){this.#e.submit()}static \u0275fac=function(n){return new(n||s)};static \u0275cmp=x({type:s,selectors:[["app-advanced-options-settings"]],viewQuery:function(n,e){n&1&&G(e.formRef,_e,5),n&2&&K()},decls:30,vars:16,consts:()=>{let l;l=$localize`Options`;let n;n=$localize` Remote volume size ${"\uFFFD*7:1\uFFFD"}:START_BLOCK_IF:${"\uFFFD#1:1\uFFFD"}:START_TAG_SH_ICON:warning${"\uFFFD/#1:1\uFFFD"}:CLOSE_TAG_SH_ICON:${"\uFFFD/*7:1\uFFFD"}:CLOSE_BLOCK_IF:`;let e;e=$localize` The backups will be split up into multiple files called volumes. Here you can set the maximum size of the individual volume files. ${"\uFFFD#11\uFFFD"}:START_LINK: Read more ${"\uFFFD#12\uFFFD"}:START_TAG_SH_ICON:arrow-square-out${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SH_ICON:${"\uFFFD/#11\uFFFD"}:CLOSE_LINK:`;let a;a=$localize`Backup retention`;let o;o=$localize`${"\uFFFD#26\uFFFD"}:START_TAG_SH_ICON:arrow-left${"\uFFFD/#26\uFFFD"}:CLOSE_TAG_SH_ICON: Go back `;let b;b=$localize`${"\uFFFD#29\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#29\uFFFD"}:CLOSE_TAG_SH_ICON: Submit `;let A;A=$localize` The chosen size is outside the recommended range. This may cause performance issues, excessively large temporary files or other problems. `;let R;R=$localize`Nothing will be deleted. The backup size will grow with each change.`;let y;y=$localize`If at least one newer backup is found, all backups older than this date are deleted.`;let $;$=$localize`Time to keep versions`;let k;k=$localize`Once there are more backups than the specified number, the oldest backups are deleted.`;let w;w=$localize`Number of versions`;let D;D=$localize` Over time backups will be deleted automatically. There will remain one backup for each of the last 7 days, each of the last 4 weeks, each of the last 12 months. There will always be at least one remaining backup. `;let B;B=$localize` Enter a retention strategy manually. Placeholders are D/W/Y for days/weeks/years and U for unlimited. The syntax is: 7D:1D,4W:1W,36M:1M. This example keeps one backup for each of the next 7 days, one for each of the next 4 weeks, and one for each of the next 36 months. This can also be written as 1W:1D,1M:1W,3Y:1M. `;let L;L=$localize`Once there are more backups than the specified number, the oldest backups are deleted.`;let z;return z=$localize`Retention expression`,[l,n,e,a,o,b,A,R,y,$,k,w,D,B,L,z,[1,"title-30"],[1,"remote-volume-wrap"],[3,"ngModelChange","customId","ngModel"],["for","size"],[1,"warning"],[1,"warn"],["href","https://forum.duplicati.com/t/choosing-sizes-in-duplicati/17683","target","_blank",1,"sh-primary"],["suffix",""],["value","value","label","name",3,"options","inlineSearch","isClearable"],["type","text",3,"ngModelChange","ngModel"],[3,"optionsChange","options","applicationOptions","hasFreeTextSettings","hiddenOptions"],[1,"form-actions"],["shButton","","type","button",3,"click"],["shButton","",1,"raised","primary",3,"click"],["for","backupRetentionTime"],["for","backupRetentionVersions"],["type","number","id","backupRetentionVersions",3,"ngModelChange","ngModel"],["for","backupRetentionCustom"],["type","text","id","backupRetentionCustom",3,"ngModelChange","ngModel"]]},template:function(n,e){n&1&&(t(0,"section")(1,"h3",16),r(2,0),i(),t(3,"div",17)(4,"app-size",18),m("ngModelChange",function(o){return d(e.optionsFields.remoteVolumeSize,o)||(e.optionsFields.remoteVolumeSize=o),o}),t(5,"label",19),S(6,1),h(7,ce,2,0,"sh-icon",20),O(),i()(),h(8,pe,2,0,"p",21),t(9,"p"),S(10,2),t(11,"a",22),g(12,"sh-icon",23),i(),O(),i()(),t(13,"sh-select",24)(14,"label",19),r(15,3),i(),t(16,"input",25),m("ngModelChange",function(o){return d(e.optionsFields.backupRetention,o)||(e.optionsFields.backupRetention=o),o}),i()(),h(17,ue,2,0,"p")(18,de,5,2)(19,me,6,1)(20,Se,2,0,"p")(21,Oe,8,1),t(22,"app-options-list",26),m("optionsChange",function(o){return d(e.settings,o)||(e.settings=o),o}),i(),t(23,"div",27)(24,"button",28),M("click",function(){return e.goBack()}),S(25,4),g(26,"sh-icon"),O(),i(),t(27,"button",29),M("click",function(){return e.submit()}),S(28,5),g(29,"sh-icon"),O(),i()()()),n&2&&(c(4),T("customId","size"),u("ngModel",e.optionsFields.remoteVolumeSize),c(3),N(e.exceededVolumeSize()?7:-1),c(),N(e.exceededVolumeSize()?8:-1),c(5),T("options",e.retentionOptions())("inlineSearch",!0)("isClearable",!1),c(3),u("ngModel",e.optionsFields.backupRetention),c(),N(e.optionsFields.backupRetention()==="all"?17:e.optionsFields.backupRetention()==="time"?18:e.optionsFields.backupRetention()==="versions"?19:e.optionsFields.backupRetention()==="smart"?20:e.optionsFields.backupRetention()==="custom"?21:-1),c(5),u("options",e.settings),T("applicationOptions",e.applicationOptions())("hasFreeTextSettings",!0)("hiddenOptions",X(15,re)),c(5),U("loader",e.isSubmitting()))},dependencies:[te,Z,ne,J,ee,oe,le,Y,q,j,ie,ae,Q],styles:["[_nghost-%COMP%]{display:block;width:100%;max-width:32.5rem;padding:2.5rem}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem;padding-bottom:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}.form-wrap[_ngcontent-%COMP%]{display:grid;grid-template-columns:2fr 2.5rem;gap:.5rem;align-items:flex-end}.remote-volume-wrap[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem}.remote-volume-wrap[_ngcontent-%COMP%] p.warning[_ngcontent-%COMP%]{color:#7d7d00}.row-inputs[_ngcontent-%COMP%]{display:flex;align-items:flex-end;gap:.5rem}.advanced-option[_ngcontent-%COMP%]{display:grid;gap:.5rem;grid-template-columns:1fr 1fr 2.5rem;align-items:flex-end}sh-select[_ngcontent-%COMP%]{--miw: p2r(120)}"],changeDetection:0})};export{E as default};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import{a as
|
|
1
|
+
import{a as it}from"./chunk-7IQY6U5W.js";import{a as ot}from"./chunk-TK5QY2QD.js";import{a as H,b as Je,c as Ye}from"./chunk-KDYD6LMI.js";import{h as nt}from"./chunk-MQI3XY6Q.js";import{a as et,c as tt}from"./chunk-23CWXAU4.js";import{a as B}from"./chunk-DELLEGXW.js";import{a as X}from"./chunk-VTSUHAP5.js";import{a as Qe,c as Ce,e as ge,i as fe,k as Ze,s as Te}from"./chunk-N5SC4SKW.js";import{A as je,C as qe,a as me,e as Be,g as ue,l as ze,o as Ke,p as Ue,t as Xe,z as He}from"./chunk-H7K35UUX.js";import{h as We}from"./chunk-NOPMCS2Z.js";import{ea as Re}from"./chunk-RUXCS4ZK.js";import{Ab as d,Ac as ce,Bb as _,Cb as U,Cc as pe,Gb as le,Hb as Z,Hc as ee,Ib as se,Jb as E,Oc as y,Pc as te,Qb as J,Ra as l,Rb as Y,Sb as Ae,Uc as Ie,V as G,Wb as x,Xc as ke,Y as ye,Yb as s,Zb as Oe,_ as v,_b as ve,ac as Fe,bb as re,bc as Me,cc as Ve,ea as S,f as ae,fa as h,gb as R,gc as z,ia as we,ic as de,lc as p,nc as F,oa as k,oc as _e,qc as Le,rc as be,sc as Pe,tc as b,ub as C,uc as A,vb as g,vc as c,wb as q,xb as W,yb as Q,yc as $e,zb as m,zc as Ge}from"./chunk-HNWRQABR.js";import{a as M,b as oe}from"./chunk-EUDKD2JW.js";var at=class n{#e=v(We);#t=v(Be);#n=v(X);testDestination(t,e,o,i){return this.#n.hasV2TestOperations()?this.testDestinationv2(t,e,o,i):this.testDestinationv1(t,e,o,i)}testDestinationv2(t,e,o,i){return new ae(a=>{this.#e.postApiV2DestinationTest({requestBody:{DestinationUrl:t,AutoCreate:!1,Options:null}}).subscribe({next:r=>{if(r.Success){this.emitSuccessV2(a,t,e,r);return}this.handleGenericError(a,t,e,r.Error??"Unknown error",i)},error:r=>{let u=r?.error?.body;if(u?.Data?.FolderExists===!1||u?.StatusCode==="missing-folder"){o?this.handleMissingFolder(a,t,e):this.handleGenericError(a,t,e,$localize`The remote destination folder does not exist.`,i);return}if(u?.Data?.HostCertificate){this.handleMissingCertificate(a,t,e,u.Data?.HostCertificate);return}if(u?.Data?.ReportedHostKey){this.handleIncorrectKey(a,t,e,u.Data.ReportedHostKey,u.Data.AcceptedHostKey??null);return}this.handleGenericError(a,t,e,r?.message??"Unknown error",i)}})})}testDestinationv1(t,e,o,i){return new ae(a=>{this.#e.postApiV1RemoteoperationTest({requestBody:{path:t}}).subscribe({next:r=>{a.next({action:"success",targetUrl:t,testAgain:!1,destinationIndex:e}),a.complete()},error:r=>{this.handleDestinationErrorv1(r.message,t,e,o,i).subscribe(u=>{a.next(u)})}})})}handleMissingFolder(t,e,o){this.#t.open(B,{data:{title:$localize`Create folder`,message:$localize`The remote destination folder does not exist, do you want to create it?`,confirmText:$localize`Create folder`,cancelText:$localize`Cancel`},closed:i=>{if(!i){this.reportNoAction(t,e,o,$localize`The remote folder does not exist.`);return}this.#n.hasV2TestOperations()?this.#e.postApiV2DestinationTest({requestBody:{DestinationUrl:e,AutoCreate:!0,Options:null}}).subscribe({next:a=>{if(a.Success){this.emitSuccessV2(t,e,o,a);return}else this.handleFolderCreateFailure(t,e,o,a.Error??$localize`Unknown error`)},error:a=>{this.handleFolderCreateFailure(t,e,o,a.message??$localize`Unknown error`)}}):this.#e.postApiV1RemoteoperationCreate({requestBody:{path:e}}).subscribe({next:()=>{this.handleFolderCreated(t,e,o)},error:a=>{this.handleFolderCreateFailure(t,e,o,a.message??$localize`Unknown error`)}})}})}handleFolderCreateFailure(t,e,o,i){this.#t.open(B,{data:{title:$localize`Error creating folder`,message:$localize`The remote destination folder could not be created. ${i}`,confirmText:$localize`OK`,cancelText:null},closed:()=>{t.next({action:"generic-error",targetUrl:e,testAgain:!1,destinationIndex:o}),t.complete()}})}emitSuccessV2(t,e,o,i){t.next({action:"success",targetUrl:e,testAgain:!1,destinationIndex:o,anyFilesFound:!i.Data?.FolderIsEmpty,containsBackup:i.Data?.FolderContainsBackupFiles??void 0,containsEncryptedBackupFiles:i.Data?.FolderContainsEncryptedBackupFiles??void 0}),t.complete()}handleFolderCreated(t,e,o){this.#t.open(B,{data:{title:$localize`Folder created`,message:$localize`The remote destination folder was created successfully.`,confirmText:$localize`OK`,cancelText:null},closed:()=>{t.next({action:"test-again",targetUrl:e,testAgain:!0,destinationIndex:o}),t.complete()}})}reportNoAction(t,e,o,i){t.next({action:"generic-error",targetUrl:e,errorMessage:i,testAgain:!1,destinationIndex:o}),t.complete()}handleMissingCertificate(t,e,o,i){this.#t.open(B,{maxWidth:"500px",data:{title:$localize`Trust the certificate`,message:$localize`The server is using a certificate that is not trusted.
|
|
2
2
|
If this is a self-signed certificate, you can choose to trust this certificate.
|
|
3
3
|
The server reported the certificate hash: ${i}`,confirmText:$localize`Trust the certificate`,cancelText:$localize`Cancel`},closed:a=>{if(!a){this.reportNoAction(t,e,o,$localize`The server certificate is not trusted.`);return}t.next({action:"trust-cert",targetUrl:e,testAgain:!0,certData:i,destinationIndex:o}),t.complete()}})}handleIncorrectKey(t,e,o,i,a){a?this.#t.open(B,{maxWidth:"500px",data:{title:$localize`The host key has changed`,message:$localize`The host key has changed, please check with the server administrator if this is correct,
|
|
4
4
|
otherwise you could be the victim of a MAN-IN-THE-MIDDLE attack.
|
|
5
5
|
Do you want to REPLACE your CURRENT host key ${a}
|
|
6
|
-
with the REPORTED host key: ${i}?`,confirmText:$localize`Approve`,cancelText:$localize`Cancel`},closed:r=>{if(!r){this.reportNoAction(t,e,o,$localize`The host key was not approved.`);return}t.next({action:"approve-host-key",targetUrl:e,testAgain:!0,reportedHostKey:i,destinationIndex:o}),t.complete()}}):this.#t.open(B,{maxWidth:"500px",data:{title:$localize`Approve host key?`,message:$localize`No certificate was specified, please verify that the reported host key is correct: ${i}`,confirmText:$localize`Approve`,cancelText:$localize`Cancel`},closed:r=>{if(!r){this.reportNoAction(t,e,o,$localize`The host key was not approved.`);return}t.next({action:"approve-host-key",targetUrl:e,testAgain:!0,reportedHostKey:i,destinationIndex:o}),t.complete()}})}handleGenericError(t,e,o,i,a){function r(){t.next({action:"generic-error",targetUrl:e,testAgain:!1,destinationIndex:o,errorMessage:i}),t.complete()}if(a){r();return}this.#t.open(B,{maxWidth:"500px",data:{title:$localize`Test connection failed`,message:i,cancelText:$localize`OK`},closed:u=>r()})}handleDestinationErrorv1(t,e,o,i,a){return new ae(r=>{if(t==="missing-folder"){i?this.handleMissingFolder(r,e,o):this.handleGenericError(r,e,o,$localize`The remote destination folder does not exist.`,a);return}if(t.startsWith("incorrect-cert:")){let u=t.split("incorrect-cert:")[1];this.handleMissingCertificate(r,e,o,u);return}if(t.startsWith("incorrect-host-key:")){let u=t.split('incorrect-host-key:"')[1].split('",')[0],N=t.split('accepted-host-key:"')[1].split('",')[0];this.handleIncorrectKey(r,e,o,u,N);return}this.handleGenericError(r,e,o,t,a)})}static \u0275fac=function(e){return new(e||n)};static \u0275prov=G({token:n,factory:n.\u0275fac,providedIn:"root"})};var Se=class n{#e=v(X);supportedDestinationTypes=y(()=>this.#e.backendModules().map(t=>{if(!t?.Key)return null;let e=H(t.Key);return e.isDefaultEntry===!0?oe(M({},e),{displayName:t.DisplayName||e.displayName||t.Key,description:t.Description||e.description||""}):e}).filter(t=>t!==null));destinationTypeOptions=y(()=>this.supportedDestinationTypes().map(t=>({key:t.customKey??t.key,customKey:t.customKey??null,displayName:t.displayName,description:t.description,icon:t.icon})));backendModules=y(()=>this.#e.backendModules()??[]);static \u0275fac=function(e){return new(e||n)};static \u0275prov=G({token:n,factory:n.\u0275fac,providedIn:"root"})};var rt=class n{#e=v(X);#t=v(tt);#n=v(nt);#i=v(Se);backendModules=y(()=>this.#i.backendModules());serverSettingsOverride=y(()=>this.#n.serverSettings()?.["--oauth-url"]);backupServerOverride=y(()=>{let t=this.#t.mapFormsToSettings().find(e=>e.Name==="--oauth-url")?.Value;if(t&&t.length>0)return t});oauthUrls=y(()=>{let t=this.#e.defaultOAuthUrl(),e=this.#e.defaultOAuthUrlV2();return{v1:t,v2:e}});static \u0275fac=function(e){return new(e||n)};static \u0275prov=G({token:n,factory:n.\u0275fac,providedIn:"root"})};var he=class n{backendModules=y(()=>[]);serverSettingsOverride=y(()=>{});backupServerOverride=y(()=>{});oauthUrls=y(()=>({v1:void 0,v2:void 0}));static \u0275fac=function(e){return new(e||n)};static \u0275prov=G({token:n,factory:n.\u0275fac,providedIn:"root"})};var lt=new ye("SingleDestinationState",{providedIn:"root",factory:()=>new he});var ct=["fileInput"],pt=[[["label"]]],mt=["label"],xe=class n{customId=Ie();content=k("");readonly=k(!1);placeholder=Ie("Drop a file here or use the browse button");fileInputRef;onFileSelected(t){let e=t.target;e.files&&e.files.length>0&&this.readFile(e.files[0])}onFileDrop(t){t.preventDefault(),t.dataTransfer?.files&&t.dataTransfer.files.length>0&&this.readFile(t.dataTransfer.files[0])}onDragOver(t){t.preventDefault()}readFile(t){let e=new FileReader;e.onload=()=>{this.content.set(e.result)},e.readAsText(t)}triggerBrowse(){return this.fileInputRef.nativeElement.click(),!1}onChange=()=>{};onTouched=()=>{};onChangeEffect=te(()=>{this.onChange(this.content())});writeValue(t){this.content.set(t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this.readonly.set(t)}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=re({type:n,selectors:[["app-file-drop-textarea"]],viewQuery:function(e,o){if(e&1&&Fe(ct,5),e&2){let i;Me(i=Ve())&&(o.fileInputRef=i.first)}},inputs:{customId:[1,"customId"],placeholder:[1,"placeholder"]},features:[$e([{provide:Qe,useExisting:n,multi:!0}])],ngContentSelectors:mt,decls:9,vars:3,consts:()=>{let t;return t=$localize`${"\uFFFD#4\uFFFD"}:START_TAG_SH_ICON:upload${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SH_ICON:`,[["fileInput",""],t,[1,"browse-btn"],["shButton","","type","button",1,"small","outlined",3,"click"],[1,"textarea-container","textarea-wrap",3,"drop","dragover"],["rows","10",3,"ngModelChange","placeholder","ngModel","disabled"],["type","file",1,"hidden",3,"change"]]},template:function(e,o){if(e&1){let i=E();Oe(pt),ve(0,0,["ngProjectAs","label",5,["label"]]),d(1,"div",2)(2,"button",3),x("click",function(){return S(i),h(o.triggerBrowse())}),J(3,1),U(4,"sh-icon"),Y(),_()(),d(5,"div",4),x("drop",function(r){return S(i),h(o.onFileDrop(r))})("dragover",function(r){return S(i),h(o.onDragOver(r))}),d(6,"textarea",5),Pe("ngModelChange",function(r){return S(i),be(o.content,r)||(o.content=r),h(r)}),_()(),d(7,"input",6,0),x("change",function(r){return S(i),h(o.onFileSelected(r))}),_()}e&2&&(l(6),m("placeholder",o.placeholder()),Le("ngModel",o.content),m("disabled",o.readonly()))},dependencies:[Te,Ce,ge,fe,me,ue],styles:['[_nghost-%COMP%]{display:grid;grid-template-areas:"label browsebtn" "input input";grid-template-columns:8fr 1fr;gap:.5rem;align-items:flex-end}[_nghost-%COMP%] .browse-btn[_ngcontent-%COMP%]{grid-area:browsebtn}[_nghost-%COMP%] .label[_ngcontent-%COMP%]{grid-area:label;grid-column:1/-1}[_nghost-%COMP%] .textarea-wrap[_ngcontent-%COMP%]{grid-area:input;width:100%;border:none;font:var(--code-20)}[_nghost-%COMP%] .textarea-wrap[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{width:100%;color:var(--base-8);background-color:var(--base-1);border:1px solid var(--base-4);border-radius:var(--shape-3);padding:.5rem;resize:vertical;box-shadow:var(--box-shadow-10)}[_nghost-%COMP%] .textarea-wrap[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%] .dark[_ngcontent-%COMP%]{background-color:var(--base-2)}[_nghost-%COMP%] .hidden[_ngcontent-%COMP%]{display:none}'],changeDetection:0})};var ut=(n,t,e,o)=>({index:n,fieldGroup:"custom",formView:t,destinationType:e,oauthField:o}),De=n=>({$implicit:n}),Ct=(n,t,e,o)=>({index:n,fieldGroup:"dynamic",formView:t,destinationType:e,oauthField:o}),gt=()=>({updateOn:"blur"}),ft=(n,t,e,o)=>({index:n,formView:t,fieldGroup:"advanced",destinationType:e,oauthField:o});function Tt(n,t){n&1&&se(0)}function St(n,t){if(n&1&&R(0,Tt,1,0,"ng-container",13),n&2){let e=t.$implicit,o=t.$index;s();let i=z(15);s();let a=c(0),r=c(1);m("ngTemplateOutlet",i)("ngTemplateOutletContext",ce(7,De,pe(2,ut,o,e,a,r.oauthField)))}}function ht(n,t){n&1&&se(0)}function xt(n,t){if(n&1&&R(0,ht,1,0,"ng-container",13),n&2){let e=t.$implicit,o=t.$index;s();let i=z(15);s();let a=c(0),r=c(1);m("ngTemplateOutlet",i)("ngTemplateOutletContext",ce(7,De,pe(2,Ct,o,e,a,r.oauthField)))}}function Nt(n,t){if(n&1){let e=E();d(0,"button",14),x("click",function(){S(e);let i=s(2);return h(i.showTextArea.set(!1))}),J(1,6),U(2,"sh-icon"),Y(),_()}}function Et(n,t){if(n&1){let e=E();d(0,"button",21,1),x("click",function(){let i=S(e).$implicit,a=s(3);return h(a.addAdvancedOption(i))}),p(2),_()}if(n&2){let e=t.$implicit;l(2),F(" ",e.name," ")}}function It(n,t){if(n&1){let e=E();d(0,"div",11)(1,"sh-menu",15)(2,"button",16),J(3,7),U(4,"sh-icon"),Y(),_(),le(5,17),W(6,Et,3,1,"button",18,q),Z(),_(),d(8,"sh-menu")(9,"button",19)(10,"sh-icon"),p(11,"dots-three-vertical"),_()(),le(12,17),d(13,"button",20),x("click",function(){S(e);let i=s(2);return h(i.showTextArea.set(!0))}),d(14,"sh-icon"),p(15,"link"),_(),p(16," Edit contents as text "),_(),Z(),_()()}if(n&2){s();let e=c(9);l(),m("searchable",!0),l(),m("disabled",e.length===0),l(4),Q(e)}}function Dt(n,t){if(n&1){let e=E();d(0,"textarea",22),x("ngModelChange",function(i){S(e);let a=s(2);return h(a.updateSettingsFromText(i))}),_()}if(n&2){let e=s(2);m("ngModel",e.settingsAsText())("ngModelOptions",Ge(2,gt))}}function yt(n,t){n&1&&se(0)}function wt(n,t){if(n&1&&R(0,yt,1,0,"ng-container",13),n&2){let e=t.$implicit,o=t.$index;s(2);let i=z(15),a=s(),r=c(0),u=c(1),N=a.getFormView("advanced",e)??a.getDefaultFormView(e);m("ngTemplateOutlet",i)("ngTemplateOutletContext",ce(7,De,pe(2,ft,o,N,r,u.oauthField)))}}function At(n,t){if(n&1&&W(0,wt,1,9,"ng-container",null,q),n&2){let e=s(2);Q(e.advancedFormFieldNames())}}function Ot(n,t){n&1&&(d(0,"sup",31),p(1,"*"),_())}function vt(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function Ft(n,t){if(n&1){let e=E();d(0,"app-file-tree",24)(1,"label",30),C(2,Ot,2,0,"sup",31),p(3),C(4,vt,2,1,"sh-icon",32),_(),d(5,"input",33),x("ngModelChange",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),_()()}if(n&2){let e=s().$implicit,o=c(1),i=c(2),a=c(3),r=c(4),u=c(5);m("startingPath",a)("accepts",e.formView.accepts)("showFiles",!0)("hideShortcuts",!0)("showHiddenNodes",!0)("selectFiles",!0),l(),m("for",u),l(),g(e.formView.isMandatory&&r?2:-1),l(),F(" ",o," "),l(),g(e.formView.longDescription?4:-1),l(),m("id",u)("ngModel",i)}}function Mt(n,t){n&1&&(d(0,"sup",34),p(1,"*"),_())}function Vt(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function Lt(n,t){if(n&1){let e=E();d(0,"app-file-tree",25)(1,"label",30),C(2,Mt,2,0,"sup",34),p(3),C(4,Vt,2,1,"sh-icon",32),_(),d(5,"input",33),x("ngModelChange",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),_()()}if(n&2){let e=s().$implicit,o=c(1),i=c(2),a=c(3),r=c(4),u=c(5);m("hideShortcuts",!0)("enableCreateFolder",!0)("startingPath",a),l(),m("for",u),l(),g(e.formView.isMandatory&&r?2:-1),l(),F(" ",o," "),l(),g(e.formView.longDescription?4:-1),l(),m("id",u)("ngModel",i)}}function bt(n,t){n&1&&(d(0,"sup",35),p(1,"*"),_())}function Pt(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function $t(n,t){n&1&&(d(0,"sh-icon",36),p(1," warning "),_())}function Gt(n,t){n&1&&(d(0,"sh-icon",37),p(1,"x-circle"),_())}function kt(n,t){n&1&&(d(0,"sh-icon",38),p(1,"warning"),_())}function Rt(n,t){if(n&1&&(d(0,"sh-icon",42),p(1," link "),_()),n&2){s();let e=c(9),o=c(10);de("error",e&&o==="error")("warn",e&&o==="warning"),m("shTooltip",e)}}function Bt(n,t){n&1&&(d(0,"sh-icon",41),p(1,"envelope"),_())}function zt(n,t){n&1&&(d(0,"sh-icon",41),p(1,"hard-drives"),_())}function Kt(n,t){n&1&&(d(0,"sh-icon",41),p(1,"jar"),_())}function Ut(n,t){n&1&&(d(0,"sh-icon",41),p(1,"textbox"),_())}function Xt(n,t){if(n&1){let e=E();d(0,"sh-form-field")(1,"label",30),C(2,bt,2,0,"sup",35),p(3),C(4,Pt,2,1,"sh-icon",32),C(5,$t,2,0,"sh-icon",36),C(6,Gt,2,0,"sh-icon",37),C(7,kt,2,0,"sh-icon",38),_(),d(8,"input",39),x("keydown",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.onKeyDown(a.fieldGroup,a.formView.name,a.formView.type,i))})("ngModelChange",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),_(),b(9)(10),C(11,Rt,2,5,"sh-icon",40)(12,Bt,2,0,"sh-icon",41)(13,zt,2,0,"sh-icon",41)(14,Kt,2,0,"sh-icon",41)(15,Ut,2,0,"sh-icon",41),_()}if(n&2){let e=s().$implicit,o=c(1),i=c(2),a=c(3),r=c(4),u=c(5),N=s(2);l(),m("for",u),l(),g(e.formView.isMandatory&&r?2:-1),l(),F(" ",o," "),l(),g(e.formView.longDescription?4:-1),l(),g(r&&e.formView.type==="Path"?5:-1),l(),g(e.formView.type=="Hostname"&&!r&&!N.isValidHostname(a)?6:-1),l(),g(e.formView.type=="Bucketname"&&!r&&!N.isValidBucketname(a)?7:-1),l(),m("type",e.formView.type==="Email"?"email":"text")("id",u)("ngModel",i);let V=a,O=N.hasLeadingSlash(V??"");l(),A(O&&(e.formView.doubleSlash==null?null:e.formView.doubleSlash.message)),l(),A(e.formView.doubleSlash==null?null:e.formView.doubleSlash.type),l(),g(e.formView.type==="Path"?11:e.formView.type==="Email"?12:e.formView.type==="Hostname"?13:e.formView.type==="Bucketname"?14:15)}}function Ht(n,t){n&1&&(d(0,"sup",43),p(1,"*"),_())}function jt(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function qt(n,t){if(n&1){let e=E();d(0,"span",47),x("click",function(){S(e);let i=s(2).$implicit,a=s(2);return h(a.oauthStartTokenCreation(i.destinationType,i.fieldGroup,i.formView.name,i.formView.oauthVersion))}),p(1," AuthID "),_()}}function Wt(n,t){n&1&&(d(0,"sh-icon",41),p(1,"password"),_())}function Qt(n,t){if(n&1){let e=E();d(0,"sh-icon",48),x("click",function(){S(e);let i=s(2).$implicit;return h(i.formView.showPassword=!i.formView.showPassword)}),p(1," eye "),_()}}function Zt(n,t){if(n&1){let e=E();d(0,"sh-icon",48),x("click",function(){S(e);let i=s(2).$implicit;return h(i.formView.showPassword=!i.formView.showPassword)}),p(1," eye-slash "),_()}}function Jt(n,t){if(n&1){let e=E();d(0,"sh-form-field")(1,"label",30),C(2,Ht,2,0,"sup",43),p(3),C(4,jt,2,1,"sh-icon",32),_(),d(5,"input",44),x("ngModelChange",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),_(),C(6,qt,2,0,"span",45)(7,Wt,2,0,"sh-icon",41),C(8,Qt,2,0,"sh-icon",46)(9,Zt,2,0,"sh-icon",46),_()}if(n&2){let e=s().$implicit,o=c(1),i=c(2),a=c(4),r=c(5);l(),m("for",r),l(),g(e.formView.isMandatory&&a?2:-1),l(),F(" ",o," "),l(),g(e.formView.longDescription?4:-1),l(),m("type",e.formView.showPassword?"text":"password")("id",r)("ngModel",i),l(),g(e.oauthField===e.formView.name?6:7),l(2),g(e.formView.showPassword?8:9)}}function Yt(n,t){n&1&&(d(0,"sup",50),p(1,"*"),_())}function en(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(3).$implicit;m("shTooltip",e.formView.longDescription)}}function tn(n,t){if(n&1&&p(0),n&2){let e=t.$implicit;_e(" ",e.key," ",e.value&&e.value!=e.key?"("+e.value+")":""," ")}}function nn(n,t){if(n&1){let e=E();d(0,"sh-select",49)(1,"label",30),C(2,Yt,2,0,"sup",50),p(3),C(4,en,2,1,"sh-icon",32),_(),d(5,"input",33),x("ngModelChange",function(i){S(e);let a=s(2).$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),_()(),R(6,tn,1,2,"ng-template",null,2,ee)}if(n&2){let e=z(7);s();let o=c(0),i=s().$implicit,a=c(1),r=c(2),u=c(4),N=c(5);m("options",o)("isClearable",!1)("optionTemplate",e),l(),m("for",N),l(),g(i.formView.isMandatory&&u?2:-1),l(),F(" ",a," "),l(),g(i.formView.longDescription?4:-1),l(),m("id",N)("ngModel",r)}}function on(n,t){if(n&1&&(b(0),C(1,nn,8,9)),n&2){let e=s().$implicit,o=A(s(2).mapOptions(e.formView));l(),g(o?1:-1)}}function an(n,t){n&1&&(d(0,"sup",53),p(1,"*"),_())}function rn(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(3).$implicit;m("shTooltip",e.formView.longDescription)}}function ln(n,t){if(n&1&&p(0),n&2){let e=t.$implicit;_e(" ",e.key," ",e.value&&e.value!=e.key?"("+e.value+")":""," ")}}function sn(n,t){if(n&1){let e=E();d(0,"sh-select",52)(1,"label",30),C(2,an,2,0,"sup",53),p(3),C(4,rn,2,1,"sh-icon",32),_(),d(5,"input",33),x("ngModelChange",function(i){S(e);let a=s(2).$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),_()(),R(6,ln,1,2,"ng-template",null,3,ee)}if(n&2){let e=z(7);s();let o=c(0),i=s().$implicit,a=c(1),r=c(2),u=c(4),N=c(5);m("options",o)("asFreeText",!0)("inlineSearch",!0)("optionTemplate",e),l(),m("for",N),l(),g(i.formView.isMandatory&&u?2:-1),l(),F(" ",a," "),l(),g(i.formView.longDescription?4:-1),l(),m("id",N)("ngModel",r)}}function dn(n,t){n&1&&U(0,"sh-progress-bar",51)}function _n(n,t){if(n&1&&(b(0),C(1,sn,8,10)(2,dn,1,0,"sh-progress-bar",51)),n&2){let e=s().$implicit,o=c(2),i=A(s(2).mapOptionsWithFreeText(e.formView,o));l(),g(i?1:2)}}function cn(n,t){n&1&&(d(0,"sup",55),p(1,"*"),_())}function pn(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function mn(n,t){if(n&1){let e=E();d(0,"app-size",54),x("ngModelChange",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),d(1,"label",30),C(2,cn,2,0,"sup",55),p(3),C(4,pn,2,1,"sh-icon",32),_()()}if(n&2){let e=s().$implicit,o=c(1),i=c(2),a=c(4),r=c(5);m("inputType",e.Name)("ngModel",i)("customId",r),l(),m("for",r),l(),g(e.formView.isMandatory&&a?2:-1),l(),F(" ",o," "),l(),g(e.formView.longDescription?4:-1)}}function un(n,t){n&1&&(d(0,"sup",56),p(1,"*"),_())}function Cn(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function gn(n,t){if(n&1){let e=E();d(0,"sh-form-field")(1,"label",30),C(2,un,2,0,"sup",56),p(3),C(4,Cn,2,1,"sh-icon",32),_(),d(5,"input",57),x("ngModelChange",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),_(),d(6,"sh-icon",41),p(7,"numpad"),_()()}if(n&2){let e=s().$implicit,o=c(1),i=c(2),a=c(4),r=c(5);l(),m("for",r),l(),g(e.formView.isMandatory&&a?2:-1),l(),F(" ",o," "),l(),g(e.formView.longDescription?4:-1),l(),m("id",r)("ngModel",i)}}function fn(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function Tn(n,t){if(n&1){let e=E();d(0,"sh-toggle",58),x("click",function(){S(e);let i=s().$implicit,a=c(2),r=s(2);return h(r.updateFieldValue(i.fieldGroup,i.formView.name,r.isTrue(a)?"false":"true"))}),d(1,"label",30),p(2),C(3,fn,2,1,"sh-icon",32),_()()}if(n&2){let e=s().$implicit,o=c(1),i=c(2),a=c(5),r=s(2);de("active",r.isTrue(i)),l(),m("for",a),l(),F(" ",o," "),l(),g(e.formView.longDescription?3:-1)}}function Sn(n,t){n&1&&(d(0,"sup",60),p(1,"*"),_())}function hn(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(3).$implicit;m("shTooltip",e.formView.longDescription)}}function xn(n,t){if(n&1&&p(0),n&2){let e=t.$implicit;_e(" ",e.key," ",e.value&&e.value!=e.key?"("+e.value+")":""," ")}}function Nn(n,t){if(n&1){let e=E();d(0,"sh-select",59)(1,"label",30),C(2,Sn,2,0,"sup",60),p(3),C(4,hn,2,1,"sh-icon",32),_(),d(5,"input",61),x("ngModelChange",function(i){S(e);let a=s(2).$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),_()(),R(6,xn,1,2,"ng-template",null,4,ee)}if(n&2){let e=z(7);s();let o=c(0),i=s().$implicit,a=c(1),r=c(2),u=c(4),N=c(5);m("options",o)("selectMultiple",!0)("optionTemplate",e),l(),m("for",N),l(),g(i.formView.isMandatory&&u?2:-1),l(),F(" ",a," "),l(),g(i.formView.longDescription?4:-1),l(),m("ngModel",r)}}function En(n,t){if(n&1&&(b(0),C(1,Nn,8,8)),n&2){let e=s().$implicit,o=A(s(2).mapOptions(e.formView));l(),g(o?1:-1)}}function In(n,t){n&1&&(d(0,"sup",62),p(1,"*"),_())}function Dn(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function yn(n,t){if(n&1){let e=E();d(0,"app-timespan",54),x("ngModelChange",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),d(1,"label",30),C(2,In,2,0,"sup",62),p(3),C(4,Dn,2,1,"sh-icon",32),_()()}if(n&2){let e=s().$implicit,o=c(1),i=c(2),a=c(4),r=c(5);m("inputType",e.formView.name)("ngModel",i)("customId",r),l(),m("for",r),l(),g(e.formView.isMandatory&&a?2:-1),l(),F(" ",o," "),l(),g(e.formView.longDescription?4:-1)}}function wn(n,t){n&1&&(d(0,"sup",64),p(1,"*"),_())}function An(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function On(n,t){if(n&1){let e=E();d(0,"app-file-drop-textarea",63),x("ngModelChange",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),d(1,"label"),C(2,wn,2,0,"sup",64),p(3),C(4,An,2,1,"sh-icon",32),_()()}if(n&2){let e=s().$implicit,o=c(2),i=c(4),a=c(5);m("ngModel",o)("customId",a)("placeholder",e.formView.longDescription),l(2),g(e.formView.isMandatory&&i?2:-1),l(),F(" ",e.formView.shortDescription??e.formView.name," "),l(),g(e.formView.longDescription?4:-1)}}function vn(n,t){if(n&1){let e=E();d(0,"button",65),x("click",function(){S(e);let i=s().$implicit,a=s(2);return h(a.removeAdvancedOption(i.formView.name))}),d(1,"sh-icon"),p(2,"x-circle"),_()()}}function Fn(n,t){if(n&1&&(d(0,"div",23),b(1)(2)(3)(4)(5),C(6,Ft,6,12,"app-file-tree",24)(7,Lt,6,9,"app-file-tree",25)(8,Xt,16,13,"sh-form-field")(9,Jt,10,9,"sh-form-field")(10,on,2,2)(11,_n,3,2)(12,mn,5,7,"app-size",26)(13,gn,8,6,"sh-form-field")(14,Tn,4,5,"sh-toggle",27)(15,En,2,2)(16,yn,5,7,"app-timespan",26)(17,On,5,6,"app-file-drop-textarea",28),C(18,vn,3,0,"button",29),_()),n&2){let e=t.$implicit;s();let o=c(0),i=s();de("single-field",e.fieldGroup!=="advanced"),l(),A(e.formView.shortDescription??e.formView.name),l(),A(i.getFieldGroup(o,e.fieldGroup)[e.formView.name]),l();let a=A(i.getFieldValue(e.fieldGroup,e.formView.name));l(),A((a??"").toString().trim()===""),l(),A("destination-"+e.fieldGroup+"-"+e.index+"-"+(e.asHttpOptions?"http":"other")),l(),g(e.formView.type==="FileTree"?6:e.formView.type==="FolderTree"?7:e.formView.type==="String"||e.formView.type==="Path"||e.formView.type==="Email"||e.formView.type==="Hostname"||e.formView.type==="Bucketname"?8:e.formView.type==="Password"?9:e.formView.type==="Enumeration"?10:e.formView.type==="NonValidatedSelectableString"?11:e.formView.type==="Size"?12:e.formView.type==="Integer"?13:e.formView.type==="Boolean"?14:e.formView.type==="Flags"?15:e.formView.type==="Timespan"||e.formView.type==="DateTime"?16:e.formView.type==="FreeText"?17:-1),l(12),g(e.fieldGroup==="advanced"?18:-1)}}function Mn(n,t){if(n&1&&(b(0),W(1,St,1,9,"ng-container",null,q),W(3,xt,1,9,"ng-container",null,q),d(5,"sh-toggle-card",8),le(6,9)(7),Ae(8,5),Z(),b(9),C(10,Nt,3,0,"button",10)(11,It,17,2,"div",11),Z(),C(12,Dt,1,3,"textarea",12)(13,At,2,0),_(),R(14,Fn,19,9,"ng-template",null,0,ee)),n&2){let e=s(),o=c(1);A(e.destinationForm()),l(),Q(o.custom),l(2),Q(o.dynamic),l(2),m("disallowToggle",!0),l(4),A(e.nonSelectedAdvancedFormViews()),l(),g(e.showTextArea()?10:11),l(2),g(e.showTextArea()?12:13)}}var st=class n{#e=v(lt);injector=v(we);#t=null;targetUrl=ke.required();destinationType=y(()=>{let t=this.targetUrl();if(!t)return null;let e=H(t.split("://")[0]);return this.#t=e?.customKey??e?.key,this.#t});destinationForm=k({custom:{},dynamic:{},advanced:{}});advancedFormFieldNames=y(()=>Object.keys(this.destinationForm().advanced));destinationFormConfig=k(null);showTextArea=k(!1);nonSelectedAdvancedFormViews=y(()=>{let t=this.destinationFormConfig();if(!t)return[];let e=this.advancedFormFieldNames();return t.advanced.filter(o=>e.findIndex(i=>i===o.name)===-1)});destinationTypeEffect=te(()=>{let t=this.destinationType()??"",e=H(t),o=e?.key,i=this.#e.backendModules().find(I=>I.Key===o)??{Key:t,DisplayName:t,Description:H(t).description,Options:[]};if(!i||!i.Options||!t)return;let a=e&&e.oauthField?e.oauthField:null,r=e&&e.customFields?e.customFields:{},u=e&&e.dynamicFields?e.dynamicFields:[],N=e&&e.advancedFields?e.advancedFields:[],V=e&&e.ignoredAdvancedFields?e.ignoredAdvancedFields:[],O={destinationType:t,oauthField:a,custom:[],dynamic:[],advanced:[]};r&&Object.entries(r).forEach(([I,f],w)=>{let D=f.order??w;O.custom.push(M({order:900+D},f))});for(let I=0;I<i.Options.length;I++){let f=i.Options[I];if(f.Deprecated)continue;let w=u.find(D=>D===f.Name||f.Aliases?.includes(D.name)||D.name===f.Name);if(w){let D=f.Aliases?.indexOf(w.name)??-1,$=f.Aliases&&D>-1?f.Aliases[D]:f.Name,T=w&&typeof w!="string",K=T?w?.defaultValue??f.DefaultValue:f.DefaultValue,Ne=T&&w?.order!==void 0?w.order:I,j={name:$,type:f.Type,shortDescription:f.ShortDescription??void 0,longDescription:f.LongDescription??void 0,options:f.ValidValues,order:900+Ne},Ee=T?M(M({},j),w):j;O.dynamic.push(Ee)}else{let D=f.Name;if(V.find(ie=>ie===D))continue;let T=N.find(ie=>ie===D||ie.name===D),K=T&&typeof T!="string",Ne=K&&T?.order!==void 0?T.order:I,j={name:D,type:f.Type,shortDescription:f.ShortDescription??void 0,longDescription:f.LongDescription??void 0,options:f.ValidValues,defaultValue:f.DefaultValue,order:900+Ne},Ee=K?M(M({},j),T):j;O.advanced.push(Ee)}}O.custom.sort((I,f)=>I.order-f.order),O.dynamic.sort((I,f)=>I.order-f.order),O.advanced.sort((I,f)=>I.order-f.order),this.destinationFormConfig.set(O);let P=this.targetUrl();if(!P)return;let L=Ye(P);L&&this.destinationForm.set({custom:L.custom,dynamic:L.dynamic,advanced:L.advanced})});destinationFormEffect=te(()=>{let t=this.#t,e=this.destinationForm();if(!e||!t)return;let o=Je({destinationType:t,custom:e.custom,dynamic:e.dynamic,advanced:e.advanced});o&&this.targetUrl.set(o)});getFieldValue(t,e){let i=this.destinationForm()[t][e];return i||null}getFormView(t,e){let i=this.destinationFormConfig()?.[t].find(a=>a.name===e);return i||null}getDefaultFormView(t){return{name:t,type:"String",shortDescription:t,longDescription:$localize`This is an undocumented option.`}}getFieldGroup(t,e){return t[e]}hasLeadingSlash(t){return t?.startsWith("/")??!1}addAdvancedOption(t){let e=this.destinationForm();e.advanced[t.name]=t.defaultValue,this.destinationForm.set(M({},e))}isValidBucketname(t){if(!t)return!1;let e=t.length;return!(e<3||e>63||!/^[a-z0-9.-]+$/.test(t)||!/^[a-z0-9]/.test(t)||!/[a-z0-9]$/.test(t)||/^\d{1,3}(\.\d{1,3}){3}$/.test(t)||/(\.\.)|(\.-)|(-\.)/.test(t))}isValidHostname(t){if(!t||t.length>253)return!1;let e=t.split(".");for(let o of e)if(!o||o.length>63||!/^[a-zA-Z0-9]([-a-zA-Z0-9]*[a-zA-Z0-9])?$/.test(o))return!1;return!0}isTrue(t){if(typeof t=="boolean")return t;if(typeof t=="string"){let e=t.toLowerCase();return e==="true"||e==="1"||e==="yes"||e==="on"}return!1}onKeyDown(t,e,o,i){if(o==="Hostname"||o==="Bucketname"){if(["Backspace","Delete","ArrowLeft","ArrowRight","Tab","Home","End"].includes(i.key))return;if(i.key=="/"||i.key=="\\"||i.key==":"){i.preventDefault();return}}}updateFieldValue(t,e,o){let i=this.destinationForm();i[t][e]=o,this.destinationForm.set(M({},i))}removeAdvancedOption(t){let e=this.destinationForm();delete e.advanced[t],this.destinationForm.set(M({},e))}mapOptions(t){let e=t.loadOptions;if(e)return e(this.injector)();let o=t.options;return o?o.map(i=>({key:i,value:i})):null}mapOptionsWithFreeText(t,e){let o=this.mapOptions(t);return o?(e&&e.length>0&&(o.find(a=>a.value===e)||o.push({key:e,value:e})),o):null}#n=k(!1);oauthStartTokenCreation(t,e,o,i){this.#n.set(!0);let a=this.#e.oauthUrls(),r=this.#e.backupServerOverride(),u=this.#e.serverSettingsOverride(),N=this.destinationForm().advanced["oauth-url"],V=(i??1)==2?a.v2:a.v1;u&&u.length>0&&(V=u),r&&r.length>0&&(V=r),N&&N.length>0&&(V=N);let O=`${V}?type=${t}`,P=450,L=600,I=screen.width/2-P/2,f=screen.height/2-L/2,w=window.open(O,"_blank","height="+L+",width="+P+",menubar=0,status=0,titlebar=0,toolbar=0,left="+I+",top="+f);return window.addEventListener("message",D=>{let $=D.data.startsWith("authid:"),T=$?D.data.replace("authid:",""):null;$&&(this.destinationForm.update(K=>(K[e][o]=T,K)),this.#n.set(!1),w?.close())}),!1}settingsAsText=y(()=>{let t=this.destinationForm().advanced;return Object.entries(t).map(([e,o])=>{let i=e??"",a="";return typeof o=="boolean"?a=this.isTrue(o)?"True":"False":(typeof o=="number"||o!=null)&&(a=o.toString()),`${i}=${a}`}).join(`
|
|
6
|
+
with the REPORTED host key: ${i}?`,confirmText:$localize`Approve`,cancelText:$localize`Cancel`},closed:r=>{if(!r){this.reportNoAction(t,e,o,$localize`The host key was not approved.`);return}t.next({action:"approve-host-key",targetUrl:e,testAgain:!0,reportedHostKey:i,destinationIndex:o}),t.complete()}}):this.#t.open(B,{maxWidth:"500px",data:{title:$localize`Approve host key?`,message:$localize`No certificate was specified, please verify that the reported host key is correct: ${i}`,confirmText:$localize`Approve`,cancelText:$localize`Cancel`},closed:r=>{if(!r){this.reportNoAction(t,e,o,$localize`The host key was not approved.`);return}t.next({action:"approve-host-key",targetUrl:e,testAgain:!0,reportedHostKey:i,destinationIndex:o}),t.complete()}})}handleGenericError(t,e,o,i,a){function r(){t.next({action:"generic-error",targetUrl:e,testAgain:!1,destinationIndex:o,errorMessage:i}),t.complete()}if(a){r();return}this.#t.open(B,{maxWidth:"500px",data:{title:$localize`Test connection failed`,message:i,cancelText:$localize`OK`},closed:u=>r()})}handleDestinationErrorv1(t,e,o,i,a){return new ae(r=>{if(t==="missing-folder"){i?this.handleMissingFolder(r,e,o):this.handleGenericError(r,e,o,$localize`The remote destination folder does not exist.`,a);return}if(t.startsWith("incorrect-cert:")){let u=t.split("incorrect-cert:")[1];this.handleMissingCertificate(r,e,o,u);return}if(t.startsWith("incorrect-host-key:")){let u=t.split('incorrect-host-key:"')[1].split('",')[0],N=t.split('accepted-host-key:"')[1].split('",')[0];this.handleIncorrectKey(r,e,o,u,N);return}this.handleGenericError(r,e,o,t,a)})}static \u0275fac=function(e){return new(e||n)};static \u0275prov=G({token:n,factory:n.\u0275fac,providedIn:"root"})};var Se=class n{#e=v(X);supportedDestinationTypes=y(()=>this.#e.backendModules().map(t=>{if(!t?.Key)return null;let e=H(t.Key);return e.isDefaultEntry===!0?oe(M({},e),{displayName:t.DisplayName||e.displayName||t.Key,description:t.Description||e.description||""}):e}).filter(t=>t!==null));destinationTypeOptions=y(()=>this.supportedDestinationTypes().map(t=>({key:t.customKey??t.key,customKey:t.customKey??null,displayName:t.displayName,description:t.description,icon:t.icon})));backendModules=y(()=>this.#e.backendModules()??[]);static \u0275fac=function(e){return new(e||n)};static \u0275prov=G({token:n,factory:n.\u0275fac,providedIn:"root"})};var rt=class n{#e=v(X);#t=v(nt);#n=v(it);#i=v(Se);backendModules=y(()=>this.#i.backendModules());serverSettingsOverride=y(()=>this.#n.serverSettings()?.["--oauth-url"]);backupServerOverride=y(()=>{let t=this.#t.mapFormsToSettings().find(e=>e.Name==="--oauth-url")?.Value;if(t&&t.length>0)return t});oauthUrls=y(()=>{let t=this.#e.defaultOAuthUrl(),e=this.#e.defaultOAuthUrlV2();return{v1:t,v2:e}});static \u0275fac=function(e){return new(e||n)};static \u0275prov=G({token:n,factory:n.\u0275fac,providedIn:"root"})};var he=class n{backendModules=y(()=>[]);serverSettingsOverride=y(()=>{});backupServerOverride=y(()=>{});oauthUrls=y(()=>({v1:void 0,v2:void 0}));static \u0275fac=function(e){return new(e||n)};static \u0275prov=G({token:n,factory:n.\u0275fac,providedIn:"root"})};var lt=new ye("SingleDestinationState",{providedIn:"root",factory:()=>new he});var ct=["fileInput"],pt=[[["label"]]],mt=["label"],xe=class n{customId=Ie();content=k("");readonly=k(!1);placeholder=Ie("Drop a file here or use the browse button");fileInputRef;onFileSelected(t){let e=t.target;e.files&&e.files.length>0&&this.readFile(e.files[0])}onFileDrop(t){t.preventDefault(),t.dataTransfer?.files&&t.dataTransfer.files.length>0&&this.readFile(t.dataTransfer.files[0])}onDragOver(t){t.preventDefault()}readFile(t){let e=new FileReader;e.onload=()=>{this.content.set(e.result)},e.readAsText(t)}triggerBrowse(){return this.fileInputRef.nativeElement.click(),!1}onChange=()=>{};onTouched=()=>{};onChangeEffect=te(()=>{this.onChange(this.content())});writeValue(t){this.content.set(t)}registerOnChange(t){this.onChange=t}registerOnTouched(t){this.onTouched=t}setDisabledState(t){this.readonly.set(t)}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=re({type:n,selectors:[["app-file-drop-textarea"]],viewQuery:function(e,o){if(e&1&&Fe(ct,5),e&2){let i;Me(i=Ve())&&(o.fileInputRef=i.first)}},inputs:{customId:[1,"customId"],placeholder:[1,"placeholder"]},features:[$e([{provide:Qe,useExisting:n,multi:!0}])],ngContentSelectors:mt,decls:9,vars:3,consts:()=>{let t;return t=$localize`${"\uFFFD#4\uFFFD"}:START_TAG_SH_ICON:upload${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SH_ICON:`,[["fileInput",""],t,[1,"browse-btn"],["shButton","","type","button",1,"small","outlined",3,"click"],[1,"textarea-container","textarea-wrap",3,"drop","dragover"],["rows","10",3,"ngModelChange","placeholder","ngModel","disabled"],["type","file",1,"hidden",3,"change"]]},template:function(e,o){if(e&1){let i=E();Oe(pt),ve(0,0,["ngProjectAs","label",5,["label"]]),d(1,"div",2)(2,"button",3),x("click",function(){return S(i),h(o.triggerBrowse())}),J(3,1),U(4,"sh-icon"),Y(),_()(),d(5,"div",4),x("drop",function(r){return S(i),h(o.onFileDrop(r))})("dragover",function(r){return S(i),h(o.onDragOver(r))}),d(6,"textarea",5),Pe("ngModelChange",function(r){return S(i),be(o.content,r)||(o.content=r),h(r)}),_()(),d(7,"input",6,0),x("change",function(r){return S(i),h(o.onFileSelected(r))}),_()}e&2&&(l(6),m("placeholder",o.placeholder()),Le("ngModel",o.content),m("disabled",o.readonly()))},dependencies:[Te,Ce,ge,fe,me,ue],styles:['[_nghost-%COMP%]{display:grid;grid-template-areas:"label browsebtn" "input input";grid-template-columns:8fr 1fr;gap:.5rem;align-items:flex-end}[_nghost-%COMP%] .browse-btn[_ngcontent-%COMP%]{grid-area:browsebtn}[_nghost-%COMP%] .label[_ngcontent-%COMP%]{grid-area:label;grid-column:1/-1}[_nghost-%COMP%] .textarea-wrap[_ngcontent-%COMP%]{grid-area:input;width:100%;border:none;font:var(--code-20)}[_nghost-%COMP%] .textarea-wrap[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{width:100%;color:var(--base-8);background-color:var(--base-1);border:1px solid var(--base-4);border-radius:var(--shape-3);padding:.5rem;resize:vertical;box-shadow:var(--box-shadow-10)}[_nghost-%COMP%] .textarea-wrap[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%] .dark[_ngcontent-%COMP%]{background-color:var(--base-2)}[_nghost-%COMP%] .hidden[_ngcontent-%COMP%]{display:none}'],changeDetection:0})};var ut=(n,t,e,o)=>({index:n,fieldGroup:"custom",formView:t,destinationType:e,oauthField:o}),De=n=>({$implicit:n}),Ct=(n,t,e,o)=>({index:n,fieldGroup:"dynamic",formView:t,destinationType:e,oauthField:o}),gt=()=>({updateOn:"blur"}),ft=(n,t,e,o)=>({index:n,formView:t,fieldGroup:"advanced",destinationType:e,oauthField:o});function Tt(n,t){n&1&&se(0)}function St(n,t){if(n&1&&R(0,Tt,1,0,"ng-container",13),n&2){let e=t.$implicit,o=t.$index;s();let i=z(15);s();let a=c(0),r=c(1);m("ngTemplateOutlet",i)("ngTemplateOutletContext",ce(7,De,pe(2,ut,o,e,a,r.oauthField)))}}function ht(n,t){n&1&&se(0)}function xt(n,t){if(n&1&&R(0,ht,1,0,"ng-container",13),n&2){let e=t.$implicit,o=t.$index;s();let i=z(15);s();let a=c(0),r=c(1);m("ngTemplateOutlet",i)("ngTemplateOutletContext",ce(7,De,pe(2,Ct,o,e,a,r.oauthField)))}}function Nt(n,t){if(n&1){let e=E();d(0,"button",14),x("click",function(){S(e);let i=s(2);return h(i.showTextArea.set(!1))}),J(1,6),U(2,"sh-icon"),Y(),_()}}function Et(n,t){if(n&1){let e=E();d(0,"button",21,1),x("click",function(){let i=S(e).$implicit,a=s(3);return h(a.addAdvancedOption(i))}),p(2),_()}if(n&2){let e=t.$implicit;l(2),F(" ",e.name," ")}}function It(n,t){if(n&1){let e=E();d(0,"div",11)(1,"sh-menu",15)(2,"button",16),J(3,7),U(4,"sh-icon"),Y(),_(),le(5,17),W(6,Et,3,1,"button",18,q),Z(),_(),d(8,"sh-menu")(9,"button",19)(10,"sh-icon"),p(11,"dots-three-vertical"),_()(),le(12,17),d(13,"button",20),x("click",function(){S(e);let i=s(2);return h(i.showTextArea.set(!0))}),d(14,"sh-icon"),p(15,"link"),_(),p(16," Edit contents as text "),_(),Z(),_()()}if(n&2){s();let e=c(9);l(),m("searchable",!0),l(),m("disabled",e.length===0),l(4),Q(e)}}function Dt(n,t){if(n&1){let e=E();d(0,"textarea",22),x("ngModelChange",function(i){S(e);let a=s(2);return h(a.updateSettingsFromText(i))}),_()}if(n&2){let e=s(2);m("ngModel",e.settingsAsText())("ngModelOptions",Ge(2,gt))}}function yt(n,t){n&1&&se(0)}function wt(n,t){if(n&1&&R(0,yt,1,0,"ng-container",13),n&2){let e=t.$implicit,o=t.$index;s(2);let i=z(15),a=s(),r=c(0),u=c(1),N=a.getFormView("advanced",e)??a.getDefaultFormView(e);m("ngTemplateOutlet",i)("ngTemplateOutletContext",ce(7,De,pe(2,ft,o,N,r,u.oauthField)))}}function At(n,t){if(n&1&&W(0,wt,1,9,"ng-container",null,q),n&2){let e=s(2);Q(e.advancedFormFieldNames())}}function Ot(n,t){n&1&&(d(0,"sup",31),p(1,"*"),_())}function vt(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function Ft(n,t){if(n&1){let e=E();d(0,"app-file-tree",24)(1,"label",30),C(2,Ot,2,0,"sup",31),p(3),C(4,vt,2,1,"sh-icon",32),_(),d(5,"input",33),x("ngModelChange",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),_()()}if(n&2){let e=s().$implicit,o=c(1),i=c(2),a=c(3),r=c(4),u=c(5);m("startingPath",a)("accepts",e.formView.accepts)("showFiles",!0)("hideShortcuts",!0)("showHiddenNodes",!0)("selectFiles",!0),l(),m("for",u),l(),g(e.formView.isMandatory&&r?2:-1),l(),F(" ",o," "),l(),g(e.formView.longDescription?4:-1),l(),m("id",u)("ngModel",i)}}function Mt(n,t){n&1&&(d(0,"sup",34),p(1,"*"),_())}function Vt(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function Lt(n,t){if(n&1){let e=E();d(0,"app-file-tree",25)(1,"label",30),C(2,Mt,2,0,"sup",34),p(3),C(4,Vt,2,1,"sh-icon",32),_(),d(5,"input",33),x("ngModelChange",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),_()()}if(n&2){let e=s().$implicit,o=c(1),i=c(2),a=c(3),r=c(4),u=c(5);m("hideShortcuts",!0)("enableCreateFolder",!0)("startingPath",a),l(),m("for",u),l(),g(e.formView.isMandatory&&r?2:-1),l(),F(" ",o," "),l(),g(e.formView.longDescription?4:-1),l(),m("id",u)("ngModel",i)}}function bt(n,t){n&1&&(d(0,"sup",35),p(1,"*"),_())}function Pt(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function $t(n,t){n&1&&(d(0,"sh-icon",36),p(1," warning "),_())}function Gt(n,t){n&1&&(d(0,"sh-icon",37),p(1,"x-circle"),_())}function kt(n,t){n&1&&(d(0,"sh-icon",38),p(1,"warning"),_())}function Rt(n,t){if(n&1&&(d(0,"sh-icon",42),p(1," link "),_()),n&2){s();let e=c(9),o=c(10);de("error",e&&o==="error")("warn",e&&o==="warning"),m("shTooltip",e)}}function Bt(n,t){n&1&&(d(0,"sh-icon",41),p(1,"envelope"),_())}function zt(n,t){n&1&&(d(0,"sh-icon",41),p(1,"hard-drives"),_())}function Kt(n,t){n&1&&(d(0,"sh-icon",41),p(1,"jar"),_())}function Ut(n,t){n&1&&(d(0,"sh-icon",41),p(1,"textbox"),_())}function Xt(n,t){if(n&1){let e=E();d(0,"sh-form-field")(1,"label",30),C(2,bt,2,0,"sup",35),p(3),C(4,Pt,2,1,"sh-icon",32),C(5,$t,2,0,"sh-icon",36),C(6,Gt,2,0,"sh-icon",37),C(7,kt,2,0,"sh-icon",38),_(),d(8,"input",39),x("keydown",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.onKeyDown(a.fieldGroup,a.formView.name,a.formView.type,i))})("ngModelChange",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),_(),b(9)(10),C(11,Rt,2,5,"sh-icon",40)(12,Bt,2,0,"sh-icon",41)(13,zt,2,0,"sh-icon",41)(14,Kt,2,0,"sh-icon",41)(15,Ut,2,0,"sh-icon",41),_()}if(n&2){let e=s().$implicit,o=c(1),i=c(2),a=c(3),r=c(4),u=c(5),N=s(2);l(),m("for",u),l(),g(e.formView.isMandatory&&r?2:-1),l(),F(" ",o," "),l(),g(e.formView.longDescription?4:-1),l(),g(r&&e.formView.type==="Path"?5:-1),l(),g(e.formView.type=="Hostname"&&!r&&!N.isValidHostname(a)?6:-1),l(),g(e.formView.type=="Bucketname"&&!r&&!N.isValidBucketname(a)?7:-1),l(),m("type",e.formView.type==="Email"?"email":"text")("id",u)("ngModel",i);let V=a,O=N.hasLeadingSlash(V??"");l(),A(O&&(e.formView.doubleSlash==null?null:e.formView.doubleSlash.message)),l(),A(e.formView.doubleSlash==null?null:e.formView.doubleSlash.type),l(),g(e.formView.type==="Path"?11:e.formView.type==="Email"?12:e.formView.type==="Hostname"?13:e.formView.type==="Bucketname"?14:15)}}function Ht(n,t){n&1&&(d(0,"sup",43),p(1,"*"),_())}function jt(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function qt(n,t){if(n&1){let e=E();d(0,"span",47),x("click",function(){S(e);let i=s(2).$implicit,a=s(2);return h(a.oauthStartTokenCreation(i.destinationType,i.fieldGroup,i.formView.name,i.formView.oauthVersion))}),p(1," AuthID "),_()}}function Wt(n,t){n&1&&(d(0,"sh-icon",41),p(1,"password"),_())}function Qt(n,t){if(n&1){let e=E();d(0,"sh-icon",48),x("click",function(){S(e);let i=s(2).$implicit;return h(i.formView.showPassword=!i.formView.showPassword)}),p(1," eye "),_()}}function Zt(n,t){if(n&1){let e=E();d(0,"sh-icon",48),x("click",function(){S(e);let i=s(2).$implicit;return h(i.formView.showPassword=!i.formView.showPassword)}),p(1," eye-slash "),_()}}function Jt(n,t){if(n&1){let e=E();d(0,"sh-form-field")(1,"label",30),C(2,Ht,2,0,"sup",43),p(3),C(4,jt,2,1,"sh-icon",32),_(),d(5,"input",44),x("ngModelChange",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),_(),C(6,qt,2,0,"span",45)(7,Wt,2,0,"sh-icon",41),C(8,Qt,2,0,"sh-icon",46)(9,Zt,2,0,"sh-icon",46),_()}if(n&2){let e=s().$implicit,o=c(1),i=c(2),a=c(4),r=c(5);l(),m("for",r),l(),g(e.formView.isMandatory&&a?2:-1),l(),F(" ",o," "),l(),g(e.formView.longDescription?4:-1),l(),m("type",e.formView.showPassword?"text":"password")("id",r)("ngModel",i),l(),g(e.oauthField===e.formView.name?6:7),l(2),g(e.formView.showPassword?8:9)}}function Yt(n,t){n&1&&(d(0,"sup",50),p(1,"*"),_())}function en(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(3).$implicit;m("shTooltip",e.formView.longDescription)}}function tn(n,t){if(n&1&&p(0),n&2){let e=t.$implicit;_e(" ",e.key," ",e.value&&e.value!=e.key?"("+e.value+")":""," ")}}function nn(n,t){if(n&1){let e=E();d(0,"sh-select",49)(1,"label",30),C(2,Yt,2,0,"sup",50),p(3),C(4,en,2,1,"sh-icon",32),_(),d(5,"input",33),x("ngModelChange",function(i){S(e);let a=s(2).$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),_()(),R(6,tn,1,2,"ng-template",null,2,ee)}if(n&2){let e=z(7);s();let o=c(0),i=s().$implicit,a=c(1),r=c(2),u=c(4),N=c(5);m("options",o)("isClearable",!1)("optionTemplate",e),l(),m("for",N),l(),g(i.formView.isMandatory&&u?2:-1),l(),F(" ",a," "),l(),g(i.formView.longDescription?4:-1),l(),m("id",N)("ngModel",r)}}function on(n,t){if(n&1&&(b(0),C(1,nn,8,9)),n&2){let e=s().$implicit,o=A(s(2).mapOptions(e.formView));l(),g(o?1:-1)}}function an(n,t){n&1&&(d(0,"sup",53),p(1,"*"),_())}function rn(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(3).$implicit;m("shTooltip",e.formView.longDescription)}}function ln(n,t){if(n&1&&p(0),n&2){let e=t.$implicit;_e(" ",e.key," ",e.value&&e.value!=e.key?"("+e.value+")":""," ")}}function sn(n,t){if(n&1){let e=E();d(0,"sh-select",52)(1,"label",30),C(2,an,2,0,"sup",53),p(3),C(4,rn,2,1,"sh-icon",32),_(),d(5,"input",33),x("ngModelChange",function(i){S(e);let a=s(2).$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),_()(),R(6,ln,1,2,"ng-template",null,3,ee)}if(n&2){let e=z(7);s();let o=c(0),i=s().$implicit,a=c(1),r=c(2),u=c(4),N=c(5);m("options",o)("asFreeText",!0)("inlineSearch",!0)("optionTemplate",e),l(),m("for",N),l(),g(i.formView.isMandatory&&u?2:-1),l(),F(" ",a," "),l(),g(i.formView.longDescription?4:-1),l(),m("id",N)("ngModel",r)}}function dn(n,t){n&1&&U(0,"sh-progress-bar",51)}function _n(n,t){if(n&1&&(b(0),C(1,sn,8,10)(2,dn,1,0,"sh-progress-bar",51)),n&2){let e=s().$implicit,o=c(2),i=A(s(2).mapOptionsWithFreeText(e.formView,o));l(),g(i?1:2)}}function cn(n,t){n&1&&(d(0,"sup",55),p(1,"*"),_())}function pn(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function mn(n,t){if(n&1){let e=E();d(0,"app-size",54),x("ngModelChange",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),d(1,"label",30),C(2,cn,2,0,"sup",55),p(3),C(4,pn,2,1,"sh-icon",32),_()()}if(n&2){let e=s().$implicit,o=c(1),i=c(2),a=c(4),r=c(5);m("inputType",e.Name)("ngModel",i)("customId",r),l(),m("for",r),l(),g(e.formView.isMandatory&&a?2:-1),l(),F(" ",o," "),l(),g(e.formView.longDescription?4:-1)}}function un(n,t){n&1&&(d(0,"sup",56),p(1,"*"),_())}function Cn(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function gn(n,t){if(n&1){let e=E();d(0,"sh-form-field")(1,"label",30),C(2,un,2,0,"sup",56),p(3),C(4,Cn,2,1,"sh-icon",32),_(),d(5,"input",57),x("ngModelChange",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),_(),d(6,"sh-icon",41),p(7,"numpad"),_()()}if(n&2){let e=s().$implicit,o=c(1),i=c(2),a=c(4),r=c(5);l(),m("for",r),l(),g(e.formView.isMandatory&&a?2:-1),l(),F(" ",o," "),l(),g(e.formView.longDescription?4:-1),l(),m("id",r)("ngModel",i)}}function fn(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function Tn(n,t){if(n&1){let e=E();d(0,"sh-toggle",58),x("click",function(){S(e);let i=s().$implicit,a=c(2),r=s(2);return h(r.updateFieldValue(i.fieldGroup,i.formView.name,r.isTrue(a)?"false":"true"))}),d(1,"label",30),p(2),C(3,fn,2,1,"sh-icon",32),_()()}if(n&2){let e=s().$implicit,o=c(1),i=c(2),a=c(5),r=s(2);de("active",r.isTrue(i)),l(),m("for",a),l(),F(" ",o," "),l(),g(e.formView.longDescription?3:-1)}}function Sn(n,t){n&1&&(d(0,"sup",60),p(1,"*"),_())}function hn(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(3).$implicit;m("shTooltip",e.formView.longDescription)}}function xn(n,t){if(n&1&&p(0),n&2){let e=t.$implicit;_e(" ",e.key," ",e.value&&e.value!=e.key?"("+e.value+")":""," ")}}function Nn(n,t){if(n&1){let e=E();d(0,"sh-select",59)(1,"label",30),C(2,Sn,2,0,"sup",60),p(3),C(4,hn,2,1,"sh-icon",32),_(),d(5,"input",61),x("ngModelChange",function(i){S(e);let a=s(2).$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),_()(),R(6,xn,1,2,"ng-template",null,4,ee)}if(n&2){let e=z(7);s();let o=c(0),i=s().$implicit,a=c(1),r=c(2),u=c(4),N=c(5);m("options",o)("selectMultiple",!0)("optionTemplate",e),l(),m("for",N),l(),g(i.formView.isMandatory&&u?2:-1),l(),F(" ",a," "),l(),g(i.formView.longDescription?4:-1),l(),m("ngModel",r)}}function En(n,t){if(n&1&&(b(0),C(1,Nn,8,8)),n&2){let e=s().$implicit,o=A(s(2).mapOptions(e.formView));l(),g(o?1:-1)}}function In(n,t){n&1&&(d(0,"sup",62),p(1,"*"),_())}function Dn(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function yn(n,t){if(n&1){let e=E();d(0,"app-timespan",54),x("ngModelChange",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),d(1,"label",30),C(2,In,2,0,"sup",62),p(3),C(4,Dn,2,1,"sh-icon",32),_()()}if(n&2){let e=s().$implicit,o=c(1),i=c(2),a=c(4),r=c(5);m("inputType",e.formView.name)("ngModel",i)("customId",r),l(),m("for",r),l(),g(e.formView.isMandatory&&a?2:-1),l(),F(" ",o," "),l(),g(e.formView.longDescription?4:-1)}}function wn(n,t){n&1&&(d(0,"sup",64),p(1,"*"),_())}function An(n,t){if(n&1&&(d(0,"sh-icon",32),p(1,"question"),_()),n&2){let e=s(2).$implicit;m("shTooltip",e.formView.longDescription)}}function On(n,t){if(n&1){let e=E();d(0,"app-file-drop-textarea",63),x("ngModelChange",function(i){S(e);let a=s().$implicit,r=s(2);return h(r.updateFieldValue(a.fieldGroup,a.formView.name,i))}),d(1,"label"),C(2,wn,2,0,"sup",64),p(3),C(4,An,2,1,"sh-icon",32),_()()}if(n&2){let e=s().$implicit,o=c(2),i=c(4),a=c(5);m("ngModel",o)("customId",a)("placeholder",e.formView.longDescription),l(2),g(e.formView.isMandatory&&i?2:-1),l(),F(" ",e.formView.shortDescription??e.formView.name," "),l(),g(e.formView.longDescription?4:-1)}}function vn(n,t){if(n&1){let e=E();d(0,"button",65),x("click",function(){S(e);let i=s().$implicit,a=s(2);return h(a.removeAdvancedOption(i.formView.name))}),d(1,"sh-icon"),p(2,"x-circle"),_()()}}function Fn(n,t){if(n&1&&(d(0,"div",23),b(1)(2)(3)(4)(5),C(6,Ft,6,12,"app-file-tree",24)(7,Lt,6,9,"app-file-tree",25)(8,Xt,16,13,"sh-form-field")(9,Jt,10,9,"sh-form-field")(10,on,2,2)(11,_n,3,2)(12,mn,5,7,"app-size",26)(13,gn,8,6,"sh-form-field")(14,Tn,4,5,"sh-toggle",27)(15,En,2,2)(16,yn,5,7,"app-timespan",26)(17,On,5,6,"app-file-drop-textarea",28),C(18,vn,3,0,"button",29),_()),n&2){let e=t.$implicit;s();let o=c(0),i=s();de("single-field",e.fieldGroup!=="advanced"),l(),A(e.formView.shortDescription??e.formView.name),l(),A(i.getFieldGroup(o,e.fieldGroup)[e.formView.name]),l();let a=A(i.getFieldValue(e.fieldGroup,e.formView.name));l(),A((a??"").toString().trim()===""),l(),A("destination-"+e.fieldGroup+"-"+e.index+"-"+(e.asHttpOptions?"http":"other")),l(),g(e.formView.type==="FileTree"?6:e.formView.type==="FolderTree"?7:e.formView.type==="String"||e.formView.type==="Path"||e.formView.type==="Email"||e.formView.type==="Hostname"||e.formView.type==="Bucketname"?8:e.formView.type==="Password"?9:e.formView.type==="Enumeration"?10:e.formView.type==="NonValidatedSelectableString"?11:e.formView.type==="Size"?12:e.formView.type==="Integer"?13:e.formView.type==="Boolean"?14:e.formView.type==="Flags"?15:e.formView.type==="Timespan"||e.formView.type==="DateTime"?16:e.formView.type==="FreeText"?17:-1),l(12),g(e.fieldGroup==="advanced"?18:-1)}}function Mn(n,t){if(n&1&&(b(0),W(1,St,1,9,"ng-container",null,q),W(3,xt,1,9,"ng-container",null,q),d(5,"sh-toggle-card",8),le(6,9)(7),Ae(8,5),Z(),b(9),C(10,Nt,3,0,"button",10)(11,It,17,2,"div",11),Z(),C(12,Dt,1,3,"textarea",12)(13,At,2,0),_(),R(14,Fn,19,9,"ng-template",null,0,ee)),n&2){let e=s(),o=c(1);A(e.destinationForm()),l(),Q(o.custom),l(2),Q(o.dynamic),l(2),m("disallowToggle",!0),l(4),A(e.nonSelectedAdvancedFormViews()),l(),g(e.showTextArea()?10:11),l(2),g(e.showTextArea()?12:13)}}var st=class n{#e=v(lt);injector=v(we);#t=null;targetUrl=ke.required();destinationType=y(()=>{let t=this.targetUrl();if(!t)return null;let e=H(t.split("://")[0]);return this.#t=e?.customKey??e?.key,this.#t});destinationForm=k({custom:{},dynamic:{},advanced:{}});advancedFormFieldNames=y(()=>Object.keys(this.destinationForm().advanced));destinationFormConfig=k(null);showTextArea=k(!1);nonSelectedAdvancedFormViews=y(()=>{let t=this.destinationFormConfig();if(!t)return[];let e=this.advancedFormFieldNames();return t.advanced.filter(o=>e.findIndex(i=>i===o.name)===-1)});destinationTypeEffect=te(()=>{let t=this.destinationType()??"",e=H(t),o=e?.key,i=this.#e.backendModules().find(I=>I.Key===o)??{Key:t,DisplayName:t,Description:H(t).description,Options:[]};if(!i||!i.Options||!t)return;let a=e&&e.oauthField?e.oauthField:null,r=e&&e.customFields?e.customFields:{},u=e&&e.dynamicFields?e.dynamicFields:[],N=e&&e.advancedFields?e.advancedFields:[],V=e&&e.ignoredAdvancedFields?e.ignoredAdvancedFields:[],O={destinationType:t,oauthField:a,custom:[],dynamic:[],advanced:[]};r&&Object.entries(r).forEach(([I,f],w)=>{let D=f.order??w;O.custom.push(M({order:900+D},f))});for(let I=0;I<i.Options.length;I++){let f=i.Options[I];if(f.Deprecated)continue;let w=u.find(D=>D===f.Name||f.Aliases?.includes(D.name)||D.name===f.Name);if(w){let D=f.Aliases?.indexOf(w.name)??-1,$=f.Aliases&&D>-1?f.Aliases[D]:f.Name,T=w&&typeof w!="string",K=T?w?.defaultValue??f.DefaultValue:f.DefaultValue,Ne=T&&w?.order!==void 0?w.order:I,j={name:$,type:f.Type,shortDescription:f.ShortDescription??void 0,longDescription:f.LongDescription??void 0,options:f.ValidValues,order:900+Ne},Ee=T?M(M({},j),w):j;O.dynamic.push(Ee)}else{let D=f.Name;if(V.find(ie=>ie===D))continue;let T=N.find(ie=>ie===D||ie.name===D),K=T&&typeof T!="string",Ne=K&&T?.order!==void 0?T.order:I,j={name:D,type:f.Type,shortDescription:f.ShortDescription??void 0,longDescription:f.LongDescription??void 0,options:f.ValidValues,defaultValue:f.DefaultValue,order:900+Ne},Ee=K?M(M({},j),T):j;O.advanced.push(Ee)}}O.custom.sort((I,f)=>I.order-f.order),O.dynamic.sort((I,f)=>I.order-f.order),O.advanced.sort((I,f)=>I.order-f.order),this.destinationFormConfig.set(O);let P=this.targetUrl();if(!P)return;let L=Ye(P);L&&this.destinationForm.set({custom:L.custom,dynamic:L.dynamic,advanced:L.advanced})});destinationFormEffect=te(()=>{let t=this.#t,e=this.destinationForm();if(!e||!t)return;let o=Je({destinationType:t,custom:e.custom,dynamic:e.dynamic,advanced:e.advanced});o&&this.targetUrl.set(o)});getFieldValue(t,e){let i=this.destinationForm()[t][e];return i||null}getFormView(t,e){let i=this.destinationFormConfig()?.[t].find(a=>a.name===e);return i||null}getDefaultFormView(t){return{name:t,type:"String",shortDescription:t,longDescription:$localize`This is an undocumented option.`}}getFieldGroup(t,e){return t[e]}hasLeadingSlash(t){return t?.startsWith("/")??!1}addAdvancedOption(t){let e=this.destinationForm();e.advanced[t.name]=t.defaultValue,this.destinationForm.set(M({},e))}isValidBucketname(t){if(!t)return!1;let e=t.length;return!(e<3||e>63||!/^[a-z0-9.-]+$/.test(t)||!/^[a-z0-9]/.test(t)||!/[a-z0-9]$/.test(t)||/^\d{1,3}(\.\d{1,3}){3}$/.test(t)||/(\.\.)|(\.-)|(-\.)/.test(t))}isValidHostname(t){if(!t||t.length>253)return!1;let e=t.split(".");for(let o of e)if(!o||o.length>63||!/^[a-zA-Z0-9]([-a-zA-Z0-9]*[a-zA-Z0-9])?$/.test(o))return!1;return!0}isTrue(t){if(typeof t=="boolean")return t;if(typeof t=="string"){let e=t.toLowerCase();return e==="true"||e==="1"||e==="yes"||e==="on"}return!1}onKeyDown(t,e,o,i){if(o==="Hostname"||o==="Bucketname"){if(["Backspace","Delete","ArrowLeft","ArrowRight","Tab","Home","End"].includes(i.key))return;if(i.key=="/"||i.key=="\\"||i.key==":"){i.preventDefault();return}}}updateFieldValue(t,e,o){let i=this.destinationForm();i[t][e]=o,this.destinationForm.set(M({},i))}removeAdvancedOption(t){let e=this.destinationForm();delete e.advanced[t],this.destinationForm.set(M({},e))}mapOptions(t){let e=t.loadOptions;if(e)return e(this.injector)();let o=t.options;return o?o.map(i=>({key:i,value:i})):null}mapOptionsWithFreeText(t,e){let o=this.mapOptions(t);return o?(e&&e.length>0&&(o.find(a=>a.value===e)||o.push({key:e,value:e})),o):null}#n=k(!1);oauthStartTokenCreation(t,e,o,i){this.#n.set(!0);let a=this.#e.oauthUrls(),r=this.#e.backupServerOverride(),u=this.#e.serverSettingsOverride(),N=this.destinationForm().advanced["oauth-url"],V=(i??1)==2?a.v2:a.v1;u&&u.length>0&&(V=u),r&&r.length>0&&(V=r),N&&N.length>0&&(V=N);let O=`${V}?type=${t}`,P=450,L=600,I=screen.width/2-P/2,f=screen.height/2-L/2,w=window.open(O,"_blank","height="+L+",width="+P+",menubar=0,status=0,titlebar=0,toolbar=0,left="+I+",top="+f);return window.addEventListener("message",D=>{let $=D.data.startsWith("authid:"),T=$?D.data.replace("authid:",""):null;$&&(this.destinationForm.update(K=>(K[e][o]=T,K)),this.#n.set(!1),w?.close())}),!1}settingsAsText=y(()=>{let t=this.destinationForm().advanced;return Object.entries(t).map(([e,o])=>{let i=e??"",a="";return typeof o=="boolean"?a=this.isTrue(o)?"True":"False":(typeof o=="number"||o!=null)&&(a=o.toString()),`${i}=${a}`}).join(`
|
|
7
7
|
`)});updateSettingsFromText(t){if(typeof t!="string")return;let e=t.split(`
|
|
8
|
-
`).map(i=>i.trim()).filter(i=>i.length>0),o={};for(let i of e){let[a,r]=i.split("=").map(u=>u.trim());a&&a.trim().length>0&&r!==void 0&&(o[a]=r)}this.destinationForm.update(i=>oe(M({},i),{advanced:o}))}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=re({type:n,selectors:[["app-single-destination"]],inputs:{targetUrl:[1,"targetUrl"]},outputs:{targetUrl:"targetUrlChange"},decls:3,vars:3,consts:()=>{let t;t=$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#4\uFFFD"}:START_TAG_SH_ICON:plus${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SH_ICON:`;let i;i=$localize`This field is mandatory`;let a;a=$localize`This field is mandatory`;let r;r=$localize`This field is mandatory`;let u;u=$localize`An empty path means storing data in the initial or root folder, which is not recommended`;let N;N=$localize`Hostname is invalid`;let V;V=$localize`Bucket name is invalid`;let O;O=$localize`This field is mandatory`;let P;P=$localize`This field is mandatory`;let L;L=$localize`This field is mandatory`;let I;I=$localize`This field is mandatory`;let f;f=$localize`This field is mandatory`;let w;w=$localize`This field is mandatory`;let D;D=$localize`This field is mandatory`;let $;return $=$localize`This field is mandatory`,[["fieldTemplate",""],["option",""],["enumOptionTemplate",""],["nonValidatedOptionTemplate",""],["optionTemplate",""],t,e,o,[1,"advanced-options",3,"disallowToggle"],["title",""],["shButton","","type","button",1,"outlined","small"],[1,"actions"],["wrap","off","placeholder","Paste advanced options here, one per line.",1,"raw-text-area",3,"ngModel","ngModelOptions"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["shButton","","type","button",1,"outlined","small",3,"click"],[3,"searchable"],["shButton","","type","button",1,"outlined","small",3,"disabled"],["menu",""],["type","button"],["shButton","","type","button",1,"small"],["shButton","","type","button",1,"small",3,"click"],["type","button",3,"click"],["wrap","off","placeholder","Paste advanced options here, one per line.",1,"raw-text-area",3,"ngModelChange","ngModel","ngModelOptions"],[1,"field-row"],[3,"startingPath","accepts","showFiles","hideShortcuts","showHiddenNodes","selectFiles"],[3,"hideShortcuts","enableCreateFolder","startingPath"],[3,"inputType","ngModel","customId"],[1,"primary","raised",3,"active"],[3,"ngModel","customId","placeholder"],["shButton","","type","button",1,"outlined"],[3,"for"],["shTooltip",i],[1,"primary",3,"shTooltip"],["type","text",3,"ngModelChange","id","ngModel"],["shTooltip",a],["shTooltip",r],["shTooltip",u,1,"warn"],["shTooltip",N,1,"error"],["shTooltip",V,1,"warn"],[3,"keydown","ngModelChange","type","id","ngModel"],["prefix","",3,"error","warn","shTooltip"],["prefix",""],["prefix","",3,"shTooltip"],["shTooltip",O],["autocomplete","off",3,"ngModelChange","type","id","ngModel"],["prefix","",1,"link"],["suffix","",1,"clickable"],["prefix","",1,"link",3,"click"],["suffix","",1,"clickable",3,"click"],["label","key","value","value",3,"options","isClearable","optionTemplate"],["shTooltip",P],[1,"indeterminate","primary"],["label","key","value","value",3,"options","asFreeText","inlineSearch","optionTemplate"],["shTooltip",L],[3,"ngModelChange","inputType","ngModel","customId"],["shTooltip",I],["shTooltip",f],["type","number",3,"ngModelChange","id","ngModel"],[1,"primary","raised",3,"click"],["key","key","value","value",1,"primary","raised",3,"options","selectMultiple","optionTemplate"],["shTooltip",w],["type","text","id","text",3,"ngModelChange","ngModel"],["shTooltip",D],[3,"ngModelChange","ngModel","customId","placeholder"],["shTooltip",$],["shButton","","type","button",1,"outlined",3,"click"]]},template:function(e,o){if(e&1&&(b(0)(1),C(2,Mn,16,5)),e&2){let i=A(o.destinationType());l();let a=A(o.destinationFormConfig());l(),g(i&&a?2:-1)}},dependencies:[Te,Ce,Ze,ge,fe,Re,et,
|
|
8
|
+
`).map(i=>i.trim()).filter(i=>i.length>0),o={};for(let i of e){let[a,r]=i.split("=").map(u=>u.trim());a&&a.trim().length>0&&r!==void 0&&(o[a]=r)}this.destinationForm.update(i=>oe(M({},i),{advanced:o}))}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=re({type:n,selectors:[["app-single-destination"]],inputs:{targetUrl:[1,"targetUrl"]},outputs:{targetUrl:"targetUrlChange"},decls:3,vars:3,consts:()=>{let t;t=$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#4\uFFFD"}:START_TAG_SH_ICON:plus${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SH_ICON:`;let i;i=$localize`This field is mandatory`;let a;a=$localize`This field is mandatory`;let r;r=$localize`This field is mandatory`;let u;u=$localize`An empty path means storing data in the initial or root folder, which is not recommended`;let N;N=$localize`Hostname is invalid`;let V;V=$localize`Bucket name is invalid`;let O;O=$localize`This field is mandatory`;let P;P=$localize`This field is mandatory`;let L;L=$localize`This field is mandatory`;let I;I=$localize`This field is mandatory`;let f;f=$localize`This field is mandatory`;let w;w=$localize`This field is mandatory`;let D;D=$localize`This field is mandatory`;let $;return $=$localize`This field is mandatory`,[["fieldTemplate",""],["option",""],["enumOptionTemplate",""],["nonValidatedOptionTemplate",""],["optionTemplate",""],t,e,o,[1,"advanced-options",3,"disallowToggle"],["title",""],["shButton","","type","button",1,"outlined","small"],[1,"actions"],["wrap","off","placeholder","Paste advanced options here, one per line.",1,"raw-text-area",3,"ngModel","ngModelOptions"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["shButton","","type","button",1,"outlined","small",3,"click"],[3,"searchable"],["shButton","","type","button",1,"outlined","small",3,"disabled"],["menu",""],["type","button"],["shButton","","type","button",1,"small"],["shButton","","type","button",1,"small",3,"click"],["type","button",3,"click"],["wrap","off","placeholder","Paste advanced options here, one per line.",1,"raw-text-area",3,"ngModelChange","ngModel","ngModelOptions"],[1,"field-row"],[3,"startingPath","accepts","showFiles","hideShortcuts","showHiddenNodes","selectFiles"],[3,"hideShortcuts","enableCreateFolder","startingPath"],[3,"inputType","ngModel","customId"],[1,"primary","raised",3,"active"],[3,"ngModel","customId","placeholder"],["shButton","","type","button",1,"outlined"],[3,"for"],["shTooltip",i],[1,"primary",3,"shTooltip"],["type","text",3,"ngModelChange","id","ngModel"],["shTooltip",a],["shTooltip",r],["shTooltip",u,1,"warn"],["shTooltip",N,1,"error"],["shTooltip",V,1,"warn"],[3,"keydown","ngModelChange","type","id","ngModel"],["prefix","",3,"error","warn","shTooltip"],["prefix",""],["prefix","",3,"shTooltip"],["shTooltip",O],["autocomplete","off",3,"ngModelChange","type","id","ngModel"],["prefix","",1,"link"],["suffix","",1,"clickable"],["prefix","",1,"link",3,"click"],["suffix","",1,"clickable",3,"click"],["label","key","value","value",3,"options","isClearable","optionTemplate"],["shTooltip",P],[1,"indeterminate","primary"],["label","key","value","value",3,"options","asFreeText","inlineSearch","optionTemplate"],["shTooltip",L],[3,"ngModelChange","inputType","ngModel","customId"],["shTooltip",I],["shTooltip",f],["type","number",3,"ngModelChange","id","ngModel"],[1,"primary","raised",3,"click"],["key","key","value","value",1,"primary","raised",3,"options","selectMultiple","optionTemplate"],["shTooltip",w],["type","text","id","text",3,"ngModelChange","ngModel"],["shTooltip",D],[3,"ngModelChange","ngModel","customId","placeholder"],["shTooltip",$],["shButton","","type","button",1,"outlined",3,"click"]]},template:function(e,o){if(e&1&&(b(0)(1),C(2,Mn,16,5)),e&2){let i=A(o.destinationType());l();let a=A(o.destinationFormConfig());l(),g(i&&a?2:-1)}},dependencies:[Te,Ce,Ze,ge,fe,Re,et,tt,ot,xe,ze,ue,me,He,Ke,Xe,qe,je,Ue],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.advanced-options[_ngcontent-%COMP%]{position:relative;z-index:1}textarea[_ngcontent-%COMP%] ~ grammarly-extension[_ngcontent-%COMP%]{display:none}sh-select[_ngcontent-%COMP%]{--miw: p2r(120)}[prefix].link[_ngcontent-%COMP%]{cursor:pointer;text-decoration:underline;color:var(--primary-8)}.clickable[_ngcontent-%COMP%]{cursor:pointer;color:var(--primary-8)}label[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.25rem}label[_ngcontent-%COMP%] sh-icon[_ngcontent-%COMP%]{font-size:1rem}.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}.actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.raw-text-area[_ngcontent-%COMP%]{min-height:12rem;white-space:pre}"],changeDetection:0})};export{at as a,Se as b,rt as c,lt as d,st as e};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b}from"./chunk-
|
|
1
|
+
import{a,b}from"./chunk-DAYBMF7U.js";import"./chunk-4DNWEJIW.js";import"./chunk-TK5QY2QD.js";import"./chunk-23CWXAU4.js";import"./chunk-DDWLL7XA.js";import"./chunk-O64ZZGQZ.js";import"./chunk-UIJYCGKA.js";import"./chunk-DELLEGXW.js";import"./chunk-VTSUHAP5.js";import"./chunk-UP5EOICU.js";import"./chunk-N5SC4SKW.js";import"./chunk-UKQFDBNO.js";import"./chunk-LVP2TPMO.js";import"./chunk-43JMN2ZY.js";import"./chunk-H7K35UUX.js";import"./chunk-NOPMCS2Z.js";import"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import"./chunk-HNWRQABR.js";import"./chunk-EUDKD2JW.js";export{a as createRestoreOptionsForm,b as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as a,d as b}from"./chunk-
|
|
1
|
+
import{c as a,d as b}from"./chunk-DAYBMF7U.js";import"./chunk-4DNWEJIW.js";import"./chunk-TK5QY2QD.js";import"./chunk-23CWXAU4.js";import"./chunk-DDWLL7XA.js";import"./chunk-O64ZZGQZ.js";import"./chunk-UIJYCGKA.js";import"./chunk-DELLEGXW.js";import"./chunk-VTSUHAP5.js";import"./chunk-UP5EOICU.js";import"./chunk-N5SC4SKW.js";import"./chunk-UKQFDBNO.js";import"./chunk-LVP2TPMO.js";import"./chunk-43JMN2ZY.js";import"./chunk-H7K35UUX.js";import"./chunk-NOPMCS2Z.js";import"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import"./chunk-HNWRQABR.js";import"./chunk-EUDKD2JW.js";export{a as createEncryptionForm,b as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as V,c as x,e as z,i as U,k as W,s as j}from"./chunk-N5SC4SKW.js";import{l as L,o as w}from"./chunk-H7K35UUX.js";import{Ab as p,Bb as a,Gb as O,Hb as P,Jb as v,Oc as m,Pc as h,Ra as i,Sb as c,Tb as g,Ub as _,Uc as T,Wb as y,Yb as D,Zb as F,_b as d,bb as f,ea as C,fa as M,oa as r,qc as I,rc as A,sc as $,tb as b,wb as E,xb as N,yb as S,yc as R,zb as u}from"./chunk-HNWRQABR.js";var B=[[["label"]],[["","prefix",""]],[["","suffix",""]]],G=["label","[prefix]","[suffix]"];function X(o,e){if(o&1){let t=v();p(0,"button",7),y("click",function(){let s=C(t).$implicit,l=D();return M(l.updateUnit(s.value))}),c(1,1),a()}if(o&2){let t=e.$implicit;i(),g(t.label),_(1)}}var Y=[{value:"s",label:$localize`Seconds`},{value:"m",label:$localize`Minutes`},{value:"h",label:$localize`Hours`}],H=[{value:"Y",label:$localize`Years`},{value:"M",label:$localize`Months`},{value:"W",label:$localize`Weeks`},{value:"D",label:$localize`Days`}],q=["retry-delay","web-timeout","read-write-timeout","run-script-timeout","list-timeout","short-timeout"],k=class o{customId=T();inputType=T();timespan=r(0);#e="D";unit=r(this.#e);unitLabel=m(()=>{let e=this.timeOptions(),t=e.findIndex(n=>n.value===this.unit());return e[t]?.label??this.unit()});isShortTime=m(()=>{let e=this.inputType();return e&&q.includes(e.replace("--",""))});timeOptions=m(()=>this.isShortTime()?Y:H);readonly=r(!1);onChange=()=>{};onTouched=()=>{};onChangeEffect=h(()=>{this.onChange(this.getValue())});inputTypeEffect=h(()=>{let e=this.timeOptions(),t=this.isShortTime()?"s":"D";this.#e=t,this.unit.set(t)});updateUnit(e){this.unit.set(e)}writeValue(e){let t=this.isShortTime();if(e){let n=t?/(\d+)([smh])/i:/^(\d+)([YMWD])$/i,s=e.match(n);s?(this.timespan.set(parseInt(s[1],10)),this.unit.set(s[2])):(this.timespan.set(0),this.unit.set(this.#e))}else this.timespan.set(0),this.unit.set(this.#e)}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this.readonly.set(e)}getValue(){return`${this.timespan()}${this.unit()}`}static \u0275fac=function(t){return new(t||o)};static \u0275cmp=f({type:o,selectors:[["app-timespan"]],inputs:{customId:[1,"customId"],inputType:[1,"inputType"]},features:[R([{provide:V,useExisting:o,multi:!0}])],ngContentSelectors:G,decls:11,vars:6,consts:()=>{let e;e=$localize`${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let t;return t=$localize`${"\uFFFD0\uFFFD"}:INTERPOLATION:`,[e,t,["type","number",3,"ngModelChange","id","ngModel","disabled"],[3,"openIndicator"],["shButton","","type","button",1,"trigger"],["menu",""],["shButton","","type","button",1,"small"],["shButton","","type","button",1,"small",3,"click"]]},template:function(t,n){t&1&&(F(B),d(0,0,["ngProjectAs","label",5,["label"]]),p(1,"sh-form-field")(2,"input",2),$("ngModelChange",function(l){return A(n.timespan,l)||(n.timespan=l),l}),a(),d(3,1),d(4,2),a(),p(5,"sh-menu",3)(6,"button",4),c(7,0),a(),O(8,5),N(9,X,2,1,"button",6,E),P(),a()),t&2&&(i(),b("readonly",n.readonly()||void 0),i(),u("id",n.customId()),I("ngModel",n.timespan),u("disabled",n.readonly()),i(3),u("openIndicator",!0),i(2),g(n.unitLabel()),_(7),i(2),S(n.timeOptions()))},dependencies:[w,L,j,x,W,z,U],styles:['[_nghost-%COMP%]{display:grid;grid-template-areas:"label label" "input unit";grid-template-columns:3fr 1fr;gap:.5rem;align-items:flex-end}[_nghost-%COMP%] .label[_ngcontent-%COMP%]{grid-area:label;grid-column:1/-1}[_nghost-%COMP%] sh-form-field[_ngcontent-%COMP%]{grid-area:input}[_nghost-%COMP%] sh-menu[_ngcontent-%COMP%]{grid-area:unit}[_nghost-%COMP%] sh-menu[_ngcontent-%COMP%] button.trigger[_ngcontent-%COMP%]{width:100%}'],changeDetection:0})};export{k as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./chunk-EUDKD2JW.js";var o=[{path:"",redirectTo:"select-files",pathMatch:"full"},{path:"destination",loadComponent:()=>import("./chunk-HTMYJ6GV.js")},{path:"encryption",loadComponent:()=>import("./chunk-QMTQBA5B.js")},{path:"select-files",loadComponent:()=>import("./chunk-EVUH6UI7.js")},{path:"options",loadComponent:()=>import("./chunk-QID36V67.js")},{path:":taskid/progress",loadComponent:()=>import("./chunk-CMON2THK.js")}],t=o;export{t as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./chunk-EUDKD2JW.js";var o=[{path:"",redirectTo:"general",pathMatch:"full"},{path:"general",loadComponent:()=>import("./chunk-DEZMBIZH.js")},{path:"destination",loadComponent:()=>import("./chunk-7UZESCOY.js")},{path:"source-data",loadComponent:()=>import("./chunk-XBWYEQIH.js")},{path:"schedule",loadComponent:()=>import("./chunk-MNGZF3JM.js")},{path:"options",loadComponent:()=>import("./chunk-NMJ4XJ6C.js")}];export{o as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{f as a,g as b}from"./chunk-
|
|
1
|
+
import{f as a,g as b}from"./chunk-MQI3XY6Q.js";import"./chunk-23CWXAU4.js";import"./chunk-DDWLL7XA.js";import"./chunk-2QJC4PGQ.js";import"./chunk-O64ZZGQZ.js";import"./chunk-DELLEGXW.js";import"./chunk-RHW5QVAY.js";import"./chunk-VTSUHAP5.js";import"./chunk-N5SC4SKW.js";import"./chunk-LVP2TPMO.js";import"./chunk-43JMN2ZY.js";import"./chunk-H7K35UUX.js";import"./chunk-NOPMCS2Z.js";import"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import"./chunk-HNWRQABR.js";import"./chunk-EUDKD2JW.js";export{a as createSourceDataForm,b as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as te}from"./chunk-7IQY6U5W.js";import{a as pt}from"./chunk-NJEX2N4Q.js";import"./chunk-O64ZZGQZ.js";import{a as Tt}from"./chunk-4TDUWDRL.js";import{a as gt}from"./chunk-EBIM5FBM.js";import"./chunk-6LTGTS6B.js";import"./chunk-DVDTYV66.js";import"./chunk-UIJYCGKA.js";import{a as ct}from"./chunk-DELLEGXW.js";import"./chunk-RHW5QVAY.js";import{a as K}from"./chunk-VTSUHAP5.js";import"./chunk-UP5EOICU.js";import{c as Q,e as J,i as Y,m as St,s as Z,t as ee}from"./chunk-N5SC4SKW.js";import"./chunk-Z3EPZZGY.js";import{a as nt}from"./chunk-UKQFDBNO.js";import"./chunk-LVP2TPMO.js";import"./chunk-43JMN2ZY.js";import{A as _t,C as dt,a as H,b as W,e as it,g as q,k as ot,l as j,p as st,q as at,r as lt,t as rt}from"./chunk-H7K35UUX.js";import{h as L}from"./chunk-NOPMCS2Z.js";import"./chunk-TDKBGGNK.js";import"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import"./chunk-6OPAGPKF.js";import{Ab as i,B as $,Bb as o,Cb as I,H as R,Jb as P,Oa as qe,Oc as D,Pc as G,Qb as X,Ra as r,Rb as V,Sb as l,Tb as se,Ub as ae,V as We,Vb as Je,Vc as tt,Wb as g,Yb as S,_ as N,a as Ue,b as Be,bb as w,c as He,ea as u,ec as Ye,fa as m,fc as Ze,gb as oe,hb as je,ic as M,lc as O,mc as z,n as b,nc as U,oa as c,qc as y,rb as Ke,rc as v,sb as Qe,sc as A,ub as C,vb as E,wc as et,zb as f,zc as B}from"./chunk-HNWRQABR.js";import"./chunk-EUDKD2JW.js";var Ct=["formRef"],Et=()=>[import("./chunk-G5FQY6XS.js").then(s=>s.OptionsListComponent)];function Nt(s,e){s&1&&(i(0,"sh-alert",3),l(1,1),o())}function ft(s,e){if(s&1){let t=P();i(0,"app-options-list",5),A("optionsChange",function(a){u(t);let _=S();return v(_.settings,a)||(_.settings=a),m(a)}),o()}if(s&2){let t=S();y("options",t.settings),f("hasFreeTextSettings",!0)}}var x=class s{#e=N(te);#t=N(L);formRef=tt.required("formRef");settings=c([]);isSubmitting=c(!1);isLoadingOptions=c(!0);saved=c(!1);lastRecievedServerSettings=c({});serverSettingsEffect=G(()=>{let e=this.#e.serverSettings();if(e===void 0)return;this.lastRecievedServerSettings.set(e),this.isLoadingOptions.set(!0);let t=Object.entries(e);t.forEach(([n,a],_)=>{if(n.startsWith("--")){let T=n.substring(2);this.settings.update(p=>(p.some(h=>h.Name===T)||p.push({Name:T,Value:a}),p))}_===t.length-1&&this.isLoadingOptions.set(!1)})});submit(){this.isSubmitting.set(!0);let e=this.settings(),t=this.lastRecievedServerSettings(),n=e.map(p=>p.Name),_=Object.keys(t).filter(p=>p.startsWith("--")).filter(p=>!n.includes(p.replace("--",""))),T=e.reduce((p,h)=>(p[`--${h.Name}`]=h.Value,p),{});_.forEach(p=>{T[p]=null}),this.#t.patchApiV1Serversettings({requestBody:T}).pipe(R(()=>this.isSubmitting.set(!1))).subscribe({next:()=>{this.#e.refreshServerSettings(),this.saved.set(!0),setTimeout(()=>{this.saved.set(!1)},3e3)}})}static \u0275fac=function(t){return new(t||s)};static \u0275cmp=w({type:s,selectors:[["app-advanced-options-settings"]],viewQuery:function(t,n){t&1&&Ye(n.formRef,Ct,5),t&2&&Ze()},decls:8,vars:4,consts:()=>{let e;e=$localize`${"\uFFFD#4\uFFFD"}:START_TAG_SH_ICON:floppy-disk${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SH_ICON: Save settings `;let t;return t=$localize`Settings saved`,[e,t,[1,"actions"],[1,"success"],["shButton","","type","button",1,"raised","primary",3,"click"],[3,"optionsChange","options","hasFreeTextSettings"]]},template:function(t,n){t&1&&(i(0,"div",2),C(1,Nt,2,0,"sh-alert",3),i(2,"button",4),g("click",function(){return n.submit()}),X(3,0),I(4,"sh-icon"),V(),o()(),je(5,ft,1,2),Ke(6,5,Et)),t&2&&(r(),E(n.saved()?1:-1),r(),M("loader",n.isSubmitting()),r(4),Qe(!n.isLoadingOptions()))},dependencies:[ee,q,H,W],styles:["[_nghost-%COMP%]{display:block;width:100%;max-width:40.625rem;justify-self:flex-end}.actions[_ngcontent-%COMP%]{display:flex;gap:.5rem;justify-content:flex-end;margin-bottom:.5rem}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-wrap[_ngcontent-%COMP%]{display:grid;grid-template-columns:2fr 2.5rem;gap:.5rem;align-items:flex-end}.remote-volume-wrap[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem}.remote-volume-wrap[_ngcontent-%COMP%] p.warning[_ngcontent-%COMP%]{color:#7d7d00}.row-inputs[_ngcontent-%COMP%]{display:flex;align-items:flex-end;gap:.5rem}.row-inputs[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{flex:1 0}.advanced-option[_ngcontent-%COMP%]{display:grid;gap:.5rem;grid-template-columns:1fr 1fr 2.5rem;align-items:flex-end}"],changeDetection:0})};var F=class s{#e=N(it);#t=N(L);#o=N(K);repeatRegisterTimer=null;state=c("unknown");claimUrl=c(null);registerUrl=c("");status=D(()=>{let e=this.state();return e==="enabled"?"Remote control is enabled but not connected":e==="connected"?"Remote control is connected":e==="registering"?"Registering machine...":e==="registeringfaulted"?"Registration failed":e==="registered"?"Registered, waiting for accept":e==="disabled"?"Remote control is configured but not enabled":e==="unknown"?"...loading...":"Remote control is not set up"});sysInfoEffect=G(()=>{let e=this.#o.systemInfo();e&&this.registerUrl.set(e.RemoteControlRegistrationUrl??"")});#n(e){e.RegistrationUrl&&this.claimUrl.set(e.RegistrationUrl),e.IsConnected?this.state.set("connected"):e.IsEnabled?this.state.set("enabled"):e.CanEnable?this.state.set("disabled"):e.IsRegisteringFaulted?this.state.set("registeringfaulted"):e.IsRegistering?e.RegistrationUrl!=null&&e.RegistrationUrl.trim().length>0?this.state.set("registered"):this.state.set("registering"):this.state.set("inactive");let t=this.state();this.repeatRegisterTimer!==null&&(clearTimeout(this.repeatRegisterTimer),this.repeatRegisterTimer=null),t==="registering"&&(this.repeatRegisterTimer=setTimeout(()=>{this.#t.postApiV1RemotecontrolRegister({requestBody:{RegistrationUrl:""}}).subscribe({next:n=>this.#n(n),error:n=>this.#i(n)})},5e3)),(t==="enabled"||t==="registered")&&(this.repeatRegisterTimer=setTimeout(()=>{this.#t.getApiV1RemotecontrolStatus().subscribe({next:n=>this.#n(n),error:n=>this.#i(n)})},5e3)),e.IsRegistering&&e.CanEnable&&this.#t.deleteApiV1RemotecontrolRegister().subscribe({next:n=>this.#n(n)})}#i(e){this.#t.getApiV1RemotecontrolStatus().subscribe({next:t=>this.#n(t)})}refreshRemoteControlStatus(){this.#t.getApiV1RemotecontrolStatus().subscribe({next:e=>this.#n(e),error:e=>this.#i(e)})}beginRemoteRegistration(){this.state.set("registering"),this.#t.postApiV1RemotecontrolRegister({requestBody:{RegistrationUrl:this.registerUrl()}}).subscribe({next:e=>this.#n(e),error:e=>this.#i(e)})}cancelRemoteRegistration(){this.#t.deleteApiV1RemotecontrolRegister().subscribe({next:e=>this.#n(e),error:e=>this.#i(e)})}enableRemoteControl(){this.#t.postApiV1RemotecontrolEnable().subscribe({next:e=>this.#n(e),error:e=>this.#i(e)})}disableRemoteControl(){this.#t.postApiV1RemotecontrolDisable().subscribe({next:e=>this.#n(e),error:e=>this.#i(e)})}deleteRemoteControl(){let e=this;this.#e.open(ct,{data:{title:$localize`Confirm delete`,message:$localize`Are you sure you want to delete the remote control registration?`,confirmText:$localize`Delete registration`,cancelText:$localize`Cancel`},closed:t=>{t&&e.#t.deleteApiV1RemotecontrolRegistration().subscribe({next:n=>e.#n(n),error:n=>e.#i(n)})}})}static \u0275fac=function(t){return new(t||s)};static \u0275prov=We({token:s,factory:s.\u0275fac,providedIn:"root"})};function ht(s,e){if(s&1){let t=P();i(0,"sh-form-field",10)(1,"input",11),A("ngModelChange",function(a){u(t);let _=S(2);return v(_.registerUrl,a)||(_.registerUrl=a),m(a)}),o()(),i(2,"button",12),g("click",function(){u(t);let a=S(2);return m(a.register())}),l(3,0),o()}if(s&2){let t=S(2);r(),y("ngModel",t.registerUrl)}}function Pt(s,e){if(s&1&&(i(0,"div",8)(1,"label"),l(2,1),o(),i(3,"a",13),O(4),o()()),s&2){let t=S(2);r(3),f("href",et(t.claimUrl()),qe),r(),z(t.claimUrl())}}function Ot(s,e){s&1&&(i(0,"div",8)(1,"label"),l(2,2),o()())}function Rt(s,e){if(s&1){let t=P();i(0,"button",12),g("click",function(){u(t);let a=S(2);return m(a.cancel())}),l(1,3),o()}}function It(s,e){if(s&1){let t=P();i(0,"button",12),g("click",function(){u(t);let a=S(2);return m(a.disable())}),l(1,4),o()}}function yt(s,e){if(s&1){let t=P();i(0,"button",12),g("click",function(){u(t);let a=S(2);return m(a.enable())}),l(1,5),o(),i(2,"button",14),g("click",function(){u(t);let a=S(2);return m(a.delete())}),l(3,6),o()}}function vt(s,e){if(s&1&&(i(0,"div",7),C(1,ht,4,1),C(2,Pt,5,3,"div",8),C(3,Ot,3,0,"div",8),C(4,Rt,2,0,"button",9),C(5,It,2,0,"button",9),C(6,yt,4,0),o()),s&2){let t=S();r(),E(t.state()==="inactive"?1:-1),r(),E(t.state()==="registered"?2:-1),r(),E(t.state()==="registering"?3:-1),r(),E(t.state()==="registering"||t.state()==="registeringfaulted"||t.state()==="registered"?4:-1),r(),E(t.state()==="connected"||t.state()==="enabled"?5:-1),r(),E(t.state()==="disabled"?6:-1)}}var ne=class s{#e=N(F);state=this.#e.state;claimUrl=this.#e.claimUrl;registerUrl=this.#e.registerUrl;ngOnInit(){this.#e.refreshRemoteControlStatus()}cancel(){this.#e.cancelRemoteRegistration()}register(){this.#e.beginRemoteRegistration()}disable(){this.#e.disableRemoteControl()}enable(){this.#e.enableRemoteControl()}delete(){this.#e.deleteRemoteControl()}static \u0275fac=function(t){return new(t||s)};static \u0275cmp=w({type:s,selectors:[["app-remote-control"]],decls:1,vars:1,consts:()=>{let e;e=$localize`Register for remote control`;let t;t=$localize`Machine is now registered, open this link to add it to your account:`;let n;n=$localize`Registering, please wait...`;let a;a=$localize`Cancel registration`;let _;_=$localize`Disable remote control`;let T;T=$localize`Enable remote control`;let p;return p=$localize`Delete remote control setup`,[e,t,n,a,_,T,p,[1,"field-row"],[1,"field-col"],["type","button","shButton","",1,"raised"],["label","Registration URL","for","remoteControlRegisterUrl"],["type","text","sh-input","","id","remoteControlRegisterUrl","name","remoteControlRegisterUrl",3,"ngModelChange","ngModel"],["type","button","shButton","",1,"raised",3,"click"],["target","_blank",3,"href"],["type","button","shButton","",1,"raised","error",3,"click"]]},template:function(t,n){t&1&&C(0,vt,7,6,"div",7),t&2&&E(n.state()!=="unknown"?0:-1)},dependencies:[Z,Q,J,Y,j],styles:["[_nghost-%COMP%]{display:block}[_nghost-%COMP%] button[_ngcontent-%COMP%]{white-space:nowrap}.field-row[_ngcontent-%COMP%]{display:flex;gap:.5rem;width:100%}.field-row[_ngcontent-%COMP%] sh-form-field[_ngcontent-%COMP%], .field-row[_ngcontent-%COMP%] sh-select[_ngcontent-%COMP%]{flex:1 0}"],changeDetection:0})};function mt(...s){let e=c(...s);return Object.defineProperty(e,"value",{get:e.asReadonly(),set:e.set.bind(e)})}var re=()=>({standalone:!0});function At(s,e){s&1&&(i(0,"sh-icon",69),O(1,"check"),o())}function Gt(s,e){s&1&&(i(0,"sh-icon",70),O(1,"prohibit"),o())}function bt(s,e){if(s&1){let t=P();i(0,"button",74),g("click",function(){u(t);let a=S(2);return m(a.updatePassphrase())}),l(1,34),o()}if(s&2){let t=S(2);M("loader",t.isUpdating())}}function $t(s,e){if(s&1){let t=P();i(0,"button",75),g("click",function(){u(t);let a=S(2);return m(a.updatePassphrase())}),l(1,35),o()}if(s&2){let t=S(2);M("loader",t.isUpdating()),f("disabled",!0)}}function wt(s,e){if(s&1){let t=P();i(0,"sh-form-field")(1,"label",65),l(2,31),o(),i(3,"input",66),A("ngModelChange",function(a){u(t);let _=S();return v(_.passphrase,a)||(_.passphrase=a),m(a)}),o()(),i(4,"sh-form-field")(5,"label",67),l(6,32),o(),i(7,"input",68),A("ngModelChange",function(a){u(t);let _=S();return v(_.repeatPassphrase,a)||(_.repeatPassphrase=a),m(a)}),o(),C(8,At,2,0,"sh-icon",69)(9,Gt,2,0,"sh-icon",70),o(),i(10,"div",48)(11,"button",71),g("click",function(){u(t);let a=S();return m(a.cancelPasswordChange())}),l(12,33),o(),C(13,bt,2,2,"button",72)(14,$t,2,3,"button",73),o()}if(s&2){let t=S();r(3),y("ngModel",t.passphrase),r(4),f("disabled",t.passphrase().length===0),y("ngModel",t.repeatPassphrase),r(),E(t.passphrase().length!==0&&t.passphrase()===t.repeatPassphrase()?8:9),r(3),M("loader",t.isUpdating()),r(2),E(t.passphrase().length!==0&&t.passphrase()===t.repeatPassphrase()?13:14)}}function Lt(s,e){s&1&&(i(0,"sh-icon",76),O(1,"check"),o())}function Ft(s,e){if(s&1){let t=P();i(0,"div",48)(1,"button",71),g("click",function(){u(t);let a=S();return m(a.openPassphraseForm())}),l(2,36),o(),C(3,Lt,2,0,"sh-icon",76),o()}if(s&2){let t=S();r(3),E(t.passwordUpdated()?3:-1)}}function Dt(s,e){if(s&1){let t=P();i(0,"sh-form-field")(1,"label",77),l(2,37),o(),i(3,"textarea",78),A("ngModelChange",function(a){u(t);let _=S();return v(_.allowedHostnames,a)||(_.allowedHostnames=a),m(a)}),o()(),i(4,"sh-alert",79),l(5,38),o(),i(6,"button",74),g("click",function(){u(t);let a=S();return m(a.updateAllowedHostnames())}),l(7,39),o()}if(s&2){let t=S();r(3),y("ngModel",t.allowedHostnames),r(3),M("loader",t.updatingAllowedHosts())}}function xt(s,e){if(s&1&&O(0),s&2){let t,n=S();U(" ",(t=n.sysinfo())==null?null:t.ServerVersion," ")}}function kt(s,e){s&1&&I(0,"sh-progress-bar",53)}function Xt(s,e){if(s&1&&O(0),s&2){let t=e.$implicit;U(" ",t.label," ")}}function Vt(s,e){if(s&1&&O(0),s&2){let t=e.$implicit;U(" ",t.label," ")}}function zt(s,e,t){let n=mt(s),a=n[Ue];t?.equal&&(a.equal=t.equal);let _;return n.set=T=>{clearTimeout(_),_=setTimeout(()=>Be(a,T),e)},n.update=T=>{clearTimeout(_),_=setTimeout(()=>He(a,T),e)},n}var Ut=[{value:"none",label:$localize`None`},{value:"s",label:$localize`Seconds`},{value:"m",label:$localize`Minutes`},{value:"h",label:$localize`Hours`}],Bt=[{value:"none",label:$localize`System default (information)`},{value:"information",label:$localize`Usage statistics, warnings, errors, and crashes`},{value:"warning",label:$localize`Warnings, errors and crashes`},{value:"error",label:$localize`Errors and crashes`},{value:"crash",label:$localize`Crashes only`},{value:"none",label:$localize`None / disabled`}],_e=class s{#e=N(gt);#t=N(K);#o=N(L);#n=N(te);#i=N(F);#s=N(nt);#a=this.#s.getItem("locale")??"en-US";sysinfo=this.#t.systemInfo;isDarkMode=this.#e.isDarkMode;editAs=c("list");previousLang=this.#a;langCtrl=c(this.#a);usageStatistics=c("");updatingUsageStatistics=c(!1);remoteControlStatus=this.#i.status;updatingChannel=c(!1);updateChannel=c("");setNewChannel(e){let t=this.updateChannel();this.updateChannel.set(e),this.#o.patchApiV1Serversettings({requestBody:{"update-channel":e}}).pipe(R(()=>this.updatingChannel.set(!1)),$(()=>(this.updateChannel.set(t),b(null)))).subscribe()}allowRemoteAccess=c(!1);allowedHostnames=c("");loadedAllowedHostnames=c("");updatingRemoteAccess=c(!1);updatingAllowedHosts=c(!1);updateRemoteAccess(){let e=this.allowRemoteAccess(),t=!e;this.allowRemoteAccess.set(t),this.#o.patchApiV1Serversettings({requestBody:{"server-listen-interface":t?"any":"loopback"}}).pipe(R(()=>this.updatingRemoteAccess.set(!1)),$(()=>(this.allowRemoteAccess.set(e),b(null)))).subscribe()}updateAllowedHostnames(){let e=this.loadedAllowedHostnames(),t=this.allowedHostnames();this.updatingAllowedHosts.set(!0),this.#o.patchApiV1Serversettings({requestBody:{"server-listen-interface":"any","allowed-hostnames":t}}).pipe(R(()=>this.updatingAllowedHosts.set(!1)),$(()=>(this.allowedHostnames.set(e),b(null)))).subscribe()}updatingDisableTrayIconLogin=c(!1);disableTrayIconLogin=c(!1);saveDisableTrayIconLogin(){let e=this.disableTrayIconLogin(),t=!e;this.updatingDisableTrayIconLogin.set(!0),this.disableTrayIconLogin.set(t),this.#o.patchApiV1Serversettings({requestBody:{"disable-tray-icon-login":t?"True":"False"}}).pipe(R(()=>this.updatingDisableTrayIconLogin.set(!1)),$(()=>(this.disableTrayIconLogin.set(e),b(null)))).subscribe()}showPassphraseForm=c(!1);isUpdating=c(!1);passphrase=c("");repeatPassphrase=c("");passwordUpdated=c(!1);updatePassphrase(){this.passphrase()===this.repeatPassphrase()&&(this.isUpdating.set(!0),this.#o.patchApiV1Serversettings({requestBody:{"server-passphrase":this.passphrase()}}).pipe(R(()=>this.isUpdating.set(!1))).subscribe({next:()=>{this.showPassphraseForm.set(!1),this.passwordUpdated.set(!0),setTimeout(()=>{this.passwordUpdated.set(!1)},3e3)}}))}openPassphraseForm(){this.showPassphraseForm.set(!0)}cancelPasswordChange(){this.showPassphraseForm.set(!1)}languageOptions=c(Tt);usageStatisticsOptions=c(Bt);timeTypeOptions=c(Ut);timeType=c("none");timeValue=zt(0,300);timeRange=D(()=>this.timeType()==="h"?[0,24]:[0,60]);timeValueEffect=G(()=>{let e=this.timeValue(),t=this.#n.serverSettings();!t||t["startup-delay"]===""&&this.timeType()==="none"||this.updateStartupDelay()});updateLocale(e){!e||e===""||e===this.previousLang||(this.#s.setItem("locale",e),window.location.reload())}updateStartupDelay(){let e=this.timeValue(),t=this.timeType(),n="";t!=="none"&&e!==0&&(n=`${e}${t}`),this.#o.patchApiV1Serversettings({requestBody:{"startup-delay":n}}).subscribe()}updateTimeType(e){this.timeType()==="none"&&this.timeValue.set(0),this.timeType.set(e)}updateUsageStatistics(e){let t=this.usageStatistics();!e||e===""||e===t||(this.usageStatistics.set(e),this.updatingUsageStatistics.set(!0),this.#o.patchApiV1Serversettings({requestBody:{"usage-reporter-level":this.usageStatistics()==="none"?"":this.usageStatistics()}}).pipe(R(()=>this.updatingUsageStatistics.set(!1)),$(()=>(this.usageStatistics.set(t),b(null)))).subscribe())}serverSettingsEffect=G(()=>{let e=this.#n.serverSettings();if(e===void 0)return;let t=e["startup-delay"],n=t.slice(-1),a=t.slice(0,-1),_=["s","m","h"];this.disableTrayIconLogin.set(e["disable-tray-icon-login"]!=="False"),this.updateChannel.set(e["update-channel"]),this.allowRemoteAccess.set(e["server-listen-interface"]==="any"),this.allowedHostnames.set(e["allowed-hostnames"]),this.loadedAllowedHostnames.set(e["allowed-hostnames"]),this.usageStatistics.set(e["usage-reporter-level"]===""?"none":e["usage-reporter-level"]),this.timeType.set(t==""?"none":_.includes(n)?n:"none"),this.timeValue.set(t==""?0:parseInt(a))});setDarkMode(){this.#e.setDarkMode()}setLightMode(){this.#e.setLightMode()}static \u0275fac=function(t){return new(t||s)};static \u0275cmp=w({type:s,selectors:[["app-settings"]],decls:132,vars:46,consts:()=>{let e;e=$localize`Settings`;let t;t=$localize`Configure your backup settings.`;let n;n=$localize`Remote access control`;let a;a=$localize`Color theme`;let _;_=$localize`Customize your application theme`;let T;T=$localize`Passwords`;let p;p=$localize`Change server passphrase`;let h;h=$localize`Language`;let de;de=$localize`Select a language for the platform`;let ce;ce=$localize`Allow remote access (requires restart)`;let Se;Se=$localize` By allowing remote access, the server listens to requests from any machine on your network. If you enable this option, make sure you are always using the computer on a secure firewall protected network. `;let ge;ge=$localize`Allow remote access`;let pe;pe=$localize`Prevent tray icon automatic log-in`;let Te;Te=$localize` By default, the tray icon will open the user interface with a token that unlocks the user interface. This ensures that you can access the user interface from the tray icon, while requiring others to enter a password. If you prefer having to type in the password, even when accessing the user interface from the tray icon, enable this option. `;let ue;ue=$localize`Prevent tray icon automatic log-in`;let me;me=$localize`Update channel`;let Ce;Ce=$localize` Default (${"\uFFFD0\uFFFD"}:INTERPOLATION:) `;let Ee;Ee=$localize`Same as the base install version: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let Ne;Ne=$localize`Stable`;let fe;fe=$localize`Official releases`;let Me;Me=$localize`Beta`;let he;he=$localize` Try out the new features that we are working on. Currently the most stable version available. Test Restore data before using this in production environments. `;let Pe;Pe=$localize` Experimental `;let Oe;Oe=$localize`Specific builds for developers only. Not for use with important data.`;let Re;Re=$localize`Canary`;let Ie;Ie=$localize`Individual builds for developers only. Not for use with important data.`;let ye;ye=$localize`Pause after startup or hibernation`;let ve;ve=$localize` Duplicati will run when started, but will remain in paused state for the duration. Duplicati will occupy minimal system resources and no backups will be run. `;let Ae;Ae=$localize`Usage statistics`;let k;k=$localize` Usage reports help us improve the user experience and evaluate impact of new features. We use them to generate ${"\uFFFD#119\uFFFD"}:START_LINK:public usage statistics.${"\uFFFD/#119\uFFFD"}:CLOSE_LINK:${"[\uFFFD#120\uFFFD\uFFFD/#120\uFFFD|\uFFFD#121\uFFFD\uFFFD/#121\uFFFD]"}:LINE_BREAK:${"[\uFFFD#120\uFFFD\uFFFD/#120\uFFFD|\uFFFD#121\uFFFD\uFFFD/#121\uFFFD]"}:LINE_BREAK: All usage reports are sent anonymously and do not contain any personal information. They contain information about hardware and operating system, the type of backend, backup duration, overall size of source data and similar data. They do not contain paths, filenames, usernames, passwords or similar sensitive information. `,k=Je(k);let Ge;Ge=$localize`Advanced options`;let be;be=$localize`Enter new password`;let $e;$e=$localize`Repeat password`;let ie;ie=$localize`Password have to be filled and have to match`;let we;we=$localize`Passphrase`;let Le;Le=$localize`Repeat passphrase`;let Fe;Fe=$localize`Cancel`;let De;De=$localize` Update passphrase `;let xe;xe=$localize` Update passphrase `;let ke;ke=$localize`Change password`;let Xe;Xe=$localize`Allowed hostnames`;let Ve;Ve=$localize` To prevent various DNS based attacks, Duplicati limits the allowed hostnames to the ones listed here. Direct IP access and localhost is always allowed. Multiple hostnames can be supplied with a semicolon separator. If any of the allowed hostnames is an asterisk (*), all hostnames are allowed and this feature is disabled. If the field is empty, only IP address and localhost access is allowed. `;let ze;return ze=$localize` Update allowed hostnames `,[e,t,n,a,_,T,p,h,de,ce,Se,ge,pe,Te,ue,me,Ce,Ee,Ne,fe,Me,he,Pe,Oe,Re,Ie,ye,ve,Ae,k,Ge,we,Le,Fe,De,xe,ke,Xe,Ve,ze,[1,"content"],[1,"title"],[1,"left"],[1,"right"],[1,"themes"],["src","assets/images/light-theme.png","alt","light theme",3,"click"],["src","assets/images/dark-theme.png","alt","dark theme",3,"click"],[1,"right","passphrase-form"],[1,"actions"],["value","value","label","label",3,"options","isClearable","inlineSearch"],["type","text",3,"ngModelChange","ngModel","ngModelOptions"],[1,"right","remote-access-form"],[1,"primary","raised",3,"click"],[1,"indeterminate","primary"],[1,"right","radios"],[1,"radio-option",3,"click"],[1,"primary","raised"],[1,"field-row"],[1,"raised","primary",3,"unit"],["type","range",3,"ngModelChange","min","max","disabled","ngModel","ngModelOptions"],["label","label","value","value",3,"options","isClearable"],["type","text",3,"ngModelChange","ngModel"],["href","#"],["label","label","value","value",3,"options","isLoading"],[1,"advanced-settings"],["for","password"],["type","password","name","password","autocomplete","disabled","placeholder",be,"tabindex","1",3,"ngModelChange","ngModel"],["for","repeatPassword"],["type","password","name","repeatPassword","autocomplete","disabled","placeholder",$e,"tabindex","2",3,"ngModelChange","disabled","ngModel"],["suffix","",1,"sh-success"],["suffix",""],["shButton","",3,"click"],["shButton","",1,"raised","primary",3,"loader"],["shButton","","shTooltip",ie,1,"raised","primary",3,"loader","disabled"],["shButton","",1,"raised","primary",3,"click"],["shButton","","shTooltip",ie,1,"raised","primary",3,"click","disabled"],[1,"sh-success"],["for","allowedHostnames"],["type","text","id","allowedHostnames",3,"ngModelChange","ngModel"],["type","primary"]]},template:function(t,n){if(t&1&&(I(0,"app-status-bar"),i(1,"div",40)(2,"header")(3,"div",41)(4,"h2"),l(5,0),o(),i(6,"p"),l(7,1),o()()(),i(8,"section")(9,"div",42)(10,"h3"),l(11,2),o(),i(12,"p"),O(13),o()(),i(14,"div",43),I(15,"app-remote-control"),o()(),i(16,"section")(17,"div",42)(18,"h3"),l(19,3),o(),i(20,"p"),l(21,4),o()(),i(22,"div",43)(23,"div",44)(24,"img",45),g("click",function(){return n.setLightMode()}),o(),i(25,"img",46),g("click",function(){return n.setDarkMode()}),o()()()(),i(26,"section")(27,"div",42)(28,"h3"),l(29,5),o(),i(30,"p"),l(31,6),o()(),i(32,"div",47),C(33,wt,15,7)(34,Ft,4,1,"div",48),o()(),i(35,"section")(36,"div",42)(37,"h3"),l(38,7),o(),i(39,"p"),l(40,8),o()(),i(41,"div",43)(42,"sh-select",49)(43,"input",50),g("ngModelChange",function(_){return n.updateLocale(_)}),o()()()(),i(44,"section")(45,"div",42)(46,"h3"),l(47,9),o(),i(48,"p"),l(49,10),o()(),i(50,"div",51)(51,"sh-toggle",52),g("click",function(){return n.updateRemoteAccess()}),i(52,"label"),l(53,11),o()(),C(54,Dt,8,3),o()(),i(55,"section")(56,"div",42)(57,"h3"),l(58,12),o(),i(59,"p"),l(60,13),o()(),i(61,"div",43)(62,"sh-toggle",52),g("click",function(){return n.saveDisableTrayIconLogin()}),i(63,"label"),l(64,14),o()()()(),i(65,"section")(66,"div",42)(67,"h3"),l(68,15),o(),i(69,"p"),C(70,xt,1,1),o(),C(71,kt,1,0,"sh-progress-bar",53),o(),i(72,"div",54)(73,"div",55),g("click",function(){return n.setNewChannel("")}),i(74,"sh-radio",56),l(75,16),o(),i(76,"p"),l(77,17),o()(),i(78,"div",55),g("click",function(){return n.setNewChannel("stable")}),i(79,"sh-radio",56),l(80,18),o(),i(81,"p"),l(82,19),o()(),i(83,"div",55),g("click",function(){return n.setNewChannel("beta")}),i(84,"sh-radio",56),l(85,20),o(),i(86,"p"),l(87,21),o()(),i(88,"div",55),g("click",function(){return n.setNewChannel("experimental")}),i(89,"sh-radio",56),l(90,22),o(),i(91,"p"),l(92,23),o()(),i(93,"div",55),g("click",function(){return n.setNewChannel("canary")}),i(94,"sh-radio",56),l(95,24),o(),i(96,"p"),l(97,25),o()()()()(),I(98,"sh-divider"),i(99,"div",40)(100,"section")(101,"div",42)(102,"h3"),l(103,26),o(),i(104,"p"),l(105,27),o()(),i(106,"div",43)(107,"div",57)(108,"sh-range-slider",58)(109,"input",59),A("ngModelChange",function(_){return v(n.timeValue,_)||(n.timeValue=_),_}),o()(),i(110,"sh-select",60)(111,"input",61),g("ngModelChange",function(_){return n.updateTimeType(_)}),o(),oe(112,Xt,1,1,"ng-template"),o()()()(),i(113,"section")(114,"div",42)(115,"h3"),l(116,28),o(),i(117,"p"),X(118,29),I(119,"a",62)(120,"br")(121,"br"),V(),o()(),i(122,"div",43)(123,"sh-select",63)(124,"input",50),g("ngModelChange",function(_){return n.updateUsageStatistics(_)}),o(),oe(125,Vt,1,1,"ng-template"),o()()()(),i(126,"div",40)(127,"section")(128,"div",64)(129,"h3"),l(130,30),o(),I(131,"app-advanced-options-settings"),o()()()),t&2){let a,_,T;r(13),z(n.remoteControlStatus()),r(11),M("active",!n.isDarkMode()),r(),M("active",n.isDarkMode()),r(8),E(n.showPassphraseForm()?33:34),r(9),f("options",n.languageOptions())("isClearable",!1)("inlineSearch",!0),r(),f("ngModel",n.langCtrl())("ngModelOptions",B(43,re)),r(8),M("active",n.allowRemoteAccess()),r(3),E(n.allowRemoteAccess()?54:-1),r(8),M("active",n.disableTrayIconLogin()),r(8),E(n.updateChannel()!==""&&((a=n.sysinfo())!=null&&a.ServerVersion)?70:-1),r(),E(n.updatingChannel()?71:-1),r(3),M("active",n.updateChannel()===""),r(),se((_=n.sysinfo())==null?null:_.DefaultUpdateChannel),ae(75),r(2),se((T=n.sysinfo())==null?null:T.ServerVersionType),ae(77),r(2),M("active",n.updateChannel()==="stable"),r(5),M("active",n.updateChannel()==="beta"),r(5),M("active",n.updateChannel()==="experimental"),r(5),M("active",n.updateChannel()==="canary"),r(14),f("unit",n.timeType()==="none"?"s":n.timeType()),r(),f("min",n.timeRange()[0])("max",n.timeRange()[1])("disabled",n.timeType()==="none"),y("ngModel",n.timeValue),f("ngModelOptions",B(44,re)),r(),f("options",n.timeTypeOptions())("isClearable",!1),r(),f("ngModel",n.timeType()),r(12),f("options",n.usageStatisticsOptions())("isLoading",n.updatingUsageStatistics()),r(),f("ngModel",n.usageStatistics())("ngModelOptions",B(45,re))}},dependencies:[Z,Q,St,J,Y,ee,pt,ne,x,q,at,lt,st,_t,dt,j,H,ot,W,rt],styles:["[_nghost-%COMP%]{display:block}.content[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:0 2rem 2rem}header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:2rem 0;background:var(--base-1);border-bottom:1px solid var(--base-4)}header[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem}section[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:2rem 0;border-top:1px solid var(--base-4)}section[_ngcontent-%COMP%]:first-of-type{border-top:0}section[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem;align-items:flex-start}section[_ngcontent-%COMP%] .left[_ngcontent-%COMP%] sh-button-group[_ngcontent-%COMP%]{margin-top:.25rem}section[_ngcontent-%COMP%] .left[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{text-wrap:balance;width:50%}.passphrase-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start;gap:1rem}.passphrase-form[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.remote-access-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem}.themes[_ngcontent-%COMP%]{display:flex;gap:.5rem}.themes[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{max-width:15rem;border-radius:var(--shape-3);cursor:pointer}.themes[_ngcontent-%COMP%] img.active[_ngcontent-%COMP%]{border:2px solid var(--primary-8)}.radios[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem}.radio-option[_ngcontent-%COMP%]{cursor:pointer}.radio-option[_ngcontent-%COMP%] sh-radio[_ngcontent-%COMP%]{color:var(--base-8);margin-bottom:.25rem}.radio-option[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{text-wrap:balance;color:var(--base-9)}.field-col[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}.field-row[_ngcontent-%COMP%]{display:flex;gap:.5rem;width:100%}.field-row[_ngcontent-%COMP%] sh-form-field[_ngcontent-%COMP%], .field-row[_ngcontent-%COMP%] sh-select[_ngcontent-%COMP%]{flex:1 0}.advanced-settings[_ngcontent-%COMP%]{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr;gap:1rem}"],changeDetection:0})};export{zt as debounceSignal,_e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as h}from"./chunk-
|
|
1
|
+
import{g as h}from"./chunk-DAYBMF7U.js";import"./chunk-4DNWEJIW.js";import"./chunk-TK5QY2QD.js";import{a as w}from"./chunk-NJEX2N4Q.js";import{h as k}from"./chunk-MQI3XY6Q.js";import"./chunk-23CWXAU4.js";import"./chunk-DDWLL7XA.js";import"./chunk-2QJC4PGQ.js";import{b as T}from"./chunk-O64ZZGQZ.js";import"./chunk-6LTGTS6B.js";import"./chunk-DVDTYV66.js";import"./chunk-UIJYCGKA.js";import"./chunk-DELLEGXW.js";import"./chunk-RHW5QVAY.js";import"./chunk-VTSUHAP5.js";import"./chunk-UP5EOICU.js";import"./chunk-N5SC4SKW.js";import"./chunk-Z3EPZZGY.js";import"./chunk-UKQFDBNO.js";import{a as L,b as M,c as N,d as I,e as G,f as W}from"./chunk-LVP2TPMO.js";import"./chunk-43JMN2ZY.js";import{q as v,v as y}from"./chunk-H7K35UUX.js";import"./chunk-NOPMCS2Z.js";import"./chunk-TDKBGGNK.js";import"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import"./chunk-6OPAGPKF.js";import{Ab as i,Ac as p,Bb as n,Cb as s,Pc as $,Qb as F,Ra as r,Rb as l,Yb as O,_ as u,bb as D,ic as P,oa as C,ub as g,vb as E,yc as A,zb as _,zc as R}from"./chunk-HNWRQABR.js";import"./chunk-EUDKD2JW.js";var b=()=>["/restore-from-files/destination"],x=()=>["/restore-from-files/encryption"],H=()=>["/restore-from-files/select-files"],X=()=>["/restore-from-files/options"],z=t=>["/restore",t,"select-files"],B=t=>["/restore",t,"options"];function U(t,o){t&1&&(i(0,"div",6),F(1,0),s(2,"sh-radio"),l(),n(),i(3,"div",6),F(4,1),s(5,"sh-radio"),l(),n(),i(6,"div",6),F(7,2),s(8,"sh-radio"),l(),n(),i(9,"div",6),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,X)))}function j(t,o){if(t&1&&(i(0,"div",6),F(1,4),s(2,"sh-radio"),l(),n(),i(3,"div",6),F(4,5),s(5,"sh-radio"),l(),n()),t&2){let e=O(2);_("routerLink",p(2,z,e.backupId())),r(3),_("routerLink",p(4,B,e.backupId()))}}function V(t,o){if(t&1&&(i(0,"sh-stepper"),g(1,U,12,8)(2,j,6,6),n()),t&2){let e=O();r(),E(e.isFileRestore()?1:2)}}var m=class t{#e=u(M);#o=u(I);#t=u(h);#i=T(this.#e.params);#n=T(this.#e.url);#s=T(this.#e.children[0].url);backupId=this.#t.backupId;isFileRestore=this.#t.isFileRestore;isProgressPage=C(!1);paramsChanged=$(()=>{let o=this.#s(),e=this.#i()?.id,a=!!this.#n()?.find(d=>d.path==="restore-from-files"),c=!!o?.find(d=>d.path==="progress");this.isProgressPage.set(c),this.#t.init(e,a)});ngOnInit(){this.#o.events.subscribe(o=>{if(o instanceof L){let e=o.urlAfterRedirects;this.isProgressPage.set(e.includes("progress"))}})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=D({type:t,selectors:[["app-restore-flow"]],hostVars:2,hostBindings:function(e,a){e&2&&P("full-width",a.isProgressPage())},features:[A([h,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 c;c=$localize`${"\uFFFD#11\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#11\uFFFD"}:CLOSE_TAG_SH_RADIO: Options `;let d;d=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_RADIO: Select files `;let f;return f=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SH_RADIO: Options `,[o,e,a,c,d,f,["step","","routerLinkActive","active",3,"routerLink"]]},template:function(e,a){e&1&&(s(0,"app-status-bar"),g(1,V,3,1,"sh-stepper"),i(2,"section"),s(3,"router-outlet"),n()),e&2&&(r(),E(a.isProgressPage()?-1:1))},dependencies:[y,v,w,N,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{m as default};
|
package/index.html
CHANGED
|
@@ -63,5 +63,5 @@
|
|
|
63
63
|
<body>
|
|
64
64
|
<app-root></app-root>
|
|
65
65
|
<div class="loading">Connecting ...</div>
|
|
66
|
-
<link rel="modulepreload" href="chunk-4TDUWDRL.js"><link rel="modulepreload" href="chunk-QDFDQHU3.js"><link rel="modulepreload" href="chunk-6LTGTS6B.js"><link rel="modulepreload" href="chunk-DVDTYV66.js"><link rel="modulepreload" href="chunk-UIJYCGKA.js"><link rel="modulepreload" href="chunk-DELLEGXW.js"><link rel="modulepreload" href="chunk-RHW5QVAY.js"><link rel="modulepreload" href="chunk-VTSUHAP5.js"><link rel="modulepreload" href="chunk-UP5EOICU.js"><link rel="modulepreload" href="chunk-Z3EPZZGY.js"><script src="polyfills-DNO7R5SL.js" type="module"></script><script src="main-
|
|
66
|
+
<link rel="modulepreload" href="chunk-4TDUWDRL.js"><link rel="modulepreload" href="chunk-QDFDQHU3.js"><link rel="modulepreload" href="chunk-6LTGTS6B.js"><link rel="modulepreload" href="chunk-DVDTYV66.js"><link rel="modulepreload" href="chunk-UIJYCGKA.js"><link rel="modulepreload" href="chunk-DELLEGXW.js"><link rel="modulepreload" href="chunk-RHW5QVAY.js"><link rel="modulepreload" href="chunk-VTSUHAP5.js"><link rel="modulepreload" href="chunk-UP5EOICU.js"><link rel="modulepreload" href="chunk-Z3EPZZGY.js"><script src="polyfills-DNO7R5SL.js" type="module"></script><script src="main-USVDGYE2.js" type="module"></script></body>
|
|
67
67
|
</html>
|