@duplicati/ngclient 0.0.22 → 0.0.23
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-6RIA76HG.js +1 -0
- package/{chunk-7JBXSDSO.js → chunk-EZH4RUS3.js} +1 -1
- package/chunk-FRD2BVV6.js +6 -0
- package/{chunk-KOPAOYHK.js → chunk-GQQ7YXKJ.js} +1 -1
- package/{chunk-ZACWBV3N.js → chunk-LFGIPWCL.js} +1 -1
- package/{chunk-DFRSFFFH.js → chunk-RWFWLGB7.js} +1 -1
- package/{chunk-QR4CYW4K.js → chunk-UVFVZQCU.js} +1 -1
- package/{chunk-4SQTVC5T.js → chunk-X53IGCHF.js} +1 -1
- package/index.html +1 -1
- package/{main-AXRS6RU7.js → main-KQJXLVHZ.js} +1 -1
- package/package.json +1 -1
- package/chunk-GON5H26V.js +0 -1
- package/chunk-OLIXIFDJ.js +0 -6
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./chunk-7CGTOI24.js";var o=[{path:"",redirectTo:"general",pathMatch:"full"},{path:"general",loadComponent:()=>import("./chunk-X53IGCHF.js")},{path:"destination",loadComponent:()=>import("./chunk-EZH4RUS3.js")},{path:"source-data",loadComponent:()=>import("./chunk-LFGIPWCL.js")},{path:"schedule",loadComponent:()=>import("./chunk-GQQ7YXKJ.js")},{path:"options",loadComponent:()=>import("./chunk-UVFVZQCU.js")}];export{o as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,b,c}from"./chunk-
|
|
1
|
+
import{a,b,c}from"./chunk-FRD2BVV6.js";import"./chunk-ZSOWH34L.js";import"./chunk-SFRGISK2.js";import"./chunk-DNHLTHLR.js";import"./chunk-N6REZCKW.js";import"./chunk-73UOOUBD.js";import"./chunk-IEVRQDB6.js";import"./chunk-22ZYSOTR.js";import"./chunk-JNQHJPEL.js";import"./chunk-LZSE733H.js";import"./chunk-QHJTF3V4.js";import"./chunk-7CGTOI24.js";export{a as createDestinationForm,b as createDestinationFormGroup,c as default};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{a as Ae,b as Fe}from"./chunk-ZSOWH34L.js";import{a as Je}from"./chunk-SFRGISK2.js";import{a as dt,b as Rt}from"./chunk-DNHLTHLR.js";import{b as M}from"./chunk-N6REZCKW.js";import{a as xe,b as ne,c as _e,d as ie,e as oe,f as Nt,g as re,h as we,j as Pt,k as ae,l as Se,m as It,n as le,o as se,p as pe,q as H,s as me}from"./chunk-73UOOUBD.js";import{a as ce,b as Xe,d as Gt,e as Mt,g as ke,i as et,k as de,m as tt,n as At,p as nt,q as ue,t as ve,u as Me}from"./chunk-IEVRQDB6.js";import{a as te,c as W}from"./chunk-22ZYSOTR.js";import{a as Ge}from"./chunk-LZSE733H.js";import{Db as J,E as Le,Eb as X,Fb as ee,Gb as l,Hb as I,Ib as k,Jb as vt,Kb as Ft,Lb as bt,Mb as Tt,Oa as s,Ob as q,Pb as Vt,Q as ye,Qb as De,Rb as Dt,Sb as ze,Ua as S,Va as Z,W as x,Wb as Ye,Y as j,ab as d,cb as c,eb as fe,ec as G,ga as h,gc as Ot,ha as y,hb as _,ib as V,jb as D,kb as O,la as wt,lb as r,mb as o,nb as u,ob as F,p as He,pb as b,qb as Ve,qc as Ze,rb as v,sa as St,sb as C,ta as kt,tb as p,wb as N,xb as P,yb as E,zc as Et}from"./chunk-QHJTF3V4.js";import{a as U,c as xt}from"./chunk-7CGTOI24.js";function Wt(t,i){if(t&1&&(r(0,"p"),l(1),o()),t&2){let e=p();s(),I(e._data().message)}}var Kt={title:"Are you sure?",confirmText:"Confirm",cancelText:"Cancel"},Oe=class t{data=kt();_data=G(()=>U(U({},Kt),this.data()));closed=St();close(i="confirm"){this.closed.emit(i==="confirm")}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=j({type:t,selectors:[["app-confirm-dialog"]],inputs:{data:[1,"data"]},outputs:{closed:"closed"},standalone:!0,features:[q],decls:10,vars:4,consts:[["header",""],["content",""],["footer",""],["spk-button","",1,"",3,"click"],["spk-button","",1,"raised","primary",3,"click"]],template:function(e,n){e&1&&(r(0,"header",0)(1,"h3"),l(2),o()(),r(3,"div",1),d(4,Wt,2,1,"p"),o(),r(5,"footer",2)(6,"button",3),C("click",function(){return n.close("cancel")}),l(7),o(),r(8,"button",4),C("click",function(){return n.close("confirm")}),l(9),o()()),e&2&&(s(2),I(n._data().title),s(2),_(n._data().message?4:-1),s(3),I(n._data().cancelText),s(2),I(n._data().confirmText))},styles:["[_nghost-%COMP%]{display:block}"],changeDetection:0})};var it=class t{fromString(i){if(!i)return null;let e=i.match(/(\d+)([smhDWMY])/);return e&&{value:parseInt(e[1]),unit:e[2]}}toString(i,e){return`${i}${e}`}static \u0275fac=function(e){return new(e||t)};static \u0275prov=ye({token:t,factory:t.\u0275fac,providedIn:"root"})};var Ee=class t{#e=x(Ge);s3Providers=M(this.getS3Config("Providers"));s3Regions=M(this.getS3Config("Regions"));s3RegionHosts=M(this.getS3Config("RegionHosts"));s3StorageClasses=M(this.getS3Config("StorageClasses"));storjSatellites=M(this.getStorjConfig("Satellites"));storjAuthenticationMethods=M(this.getStorjConfig("AuthenticationMethods"));openstackProviders=M(this.getOpenstackConfig("Providers"));openstackVersions=M(this.getOpenstackConfig("Versions"));gcsLocations=M(this.getGcsConfig("Locations"));gcsStorageClasses=M(this.getGcsConfig("StorageClasses"));getS3Config(i){return this.#e.postApiV1WebmoduleByModulekey({modulekey:"s3-getconfig",requestBody:{"s3-config":i}}).pipe(He(e=>this.#n(e)))}createS3IamUser(i,e){return this.#e.postApiV1WebmoduleByModulekey({modulekey:"s3-iamconfig",requestBody:{"s3-operation":"CanCreateUser","s3-username":i,"s3-password":e}})}createS3PolicyIAM(i){return this.#e.postApiV1WebmoduleByModulekey({modulekey:"s3-iamconfig",requestBody:{"s3-operation":"GetPolicyDoc",path:i}})}getStorjConfig(i){return this.#e.postApiV1WebmoduleByModulekey({modulekey:"storj-getconfig",requestBody:{"storj-config":i}}).pipe(He(e=>this.#n(e)))}getOpenstackConfig(i){return this.#e.postApiV1WebmoduleByModulekey({modulekey:"openstack-getconfig",requestBody:{"openstack-config":i}}).pipe(He(e=>this.#n(e)))}getGcsConfig(i){return this.#e.postApiV1WebmoduleByModulekey({modulekey:"gcs-getconfig",requestBody:{"gcs-config":i}}).pipe(He(e=>this.#n(e)))}#n(i){return(i.Result&&typeof i.Result=="object"&&Object.entries(i.Result).map(([e,n])=>({key:e,value:n})))??[]}static \u0275fac=function(e){return new(e||t)};static \u0275prov=ye({token:t,factory:t.\u0275fac,providedIn:"root"})};var be=new H,qe={file:{customFields:{path:{type:"FolderTree",name:"path",shortDescription:"File path",longDescription:"The path to store the backup",formElement:t=>be.control(t??"")}}},ssh:{customFields:{server:{type:"String",name:"server",shortDescription:"Server",longDescription:"The server to connect to",formElement:t=>be.control(t??"")},port:{type:"Integer",name:"port",shortDescription:"Port",longDescription:"The port to connect to",formElement:t=>be.control(t??"",[_e.required,_e.max(65535)])},path:{type:"Path",name:"path",shortDescription:"Folder path",longDescription:"Folder path",formElement:t=>be.control(t??"")}},dynamicFields:["auth-username"],advancedFields:[{type:"FileTree",name:"ssh-keyfile",accepts:".key,",shortDescription:"This is a path to a private key file locally on the machine",longDescription:"This is a path to a private key file locally on the machine"}]},s3:{customFields:{bucket:{type:"String",name:"bucket",shortDescription:"Bucket name",longDescription:"Bucket name",formElement:t=>be.control(t??"")},path:{type:"Path",name:"path",shortDescription:"Folder path",longDescription:"Folder path",formElement:t=>be.control(t??"")}},dynamicFields:[{name:"s3-server-name",shortDescription:"Server",type:"NonValidatedSelectableString",loadOptions:t=>t.get(Ee).s3Providers},"use-ssl","auth-username","auth-password"],advancedFields:[{name:"s3-client",type:"Enumeration",options:["aws","minio"]},{name:"s3-storage-class",type:"NonValidatedSelectableString",loadOptions:t=>t.get(Ee).s3StorageClasses}]},gcs:{oauthField:"authid",customFields:{path:{type:"Path",name:"path",shortDescription:"Bucket name",longDescription:"Bucket name",formElement:t=>be.control(t??"")}},dynamicFields:[{name:"gcs-location",type:"NonValidatedSelectableString",loadOptions:t=>t.get(Ee).gcsLocations},{name:"gcs-storage-class",type:"NonValidatedSelectableString",loadOptions:t=>t.get(Ee).gcsStorageClasses},"authid"]},googledrive:{oauthField:"authid",customFields:{path:{type:"Path",name:"path",shortDescription:"Folder path",longDescription:"Folder path",formElement:t=>be.control(t??"")}},dynamicFields:["authid"]}};function Re(t,i){let e={},n={};return i.searchParams.forEach((a,m)=>{qe[t].dynamicFields?.includes(m)?n[m]=decodeURIComponent(a):e[m]=decodeURIComponent(a)}),{advanced:e,dynamic:n}}function We(t){let i=t.map(([e,n])=>`${e}=${n?encodeURIComponent(n.toString()):""}`).join("&");return i?"?"+i:""}var $e={file:{to:t=>{let i=We([...Object.entries(t.advanced),...Object.entries(t.dynamic)]);return`${t.destinationType}://${t.custom.path}${i}`},from:(t,i,e)=>{let n=e.indexOf("file:///")===0,a=e.split(n?"///":"//")[1].substring(0,1)+i.hostname.substring(1);return U({destinationType:t,custom:{path:`${n?"/":""}${a}${i.pathname}`}},Re(t,i))}},ssh:{to:t=>{let i=We([...Object.entries(t.advanced),...Object.entries(t.dynamic)]);return`${t.destinationType}://${t.custom.server}${t.custom.port?":"+t.custom.port:""}${t.custom.path.startsWith("/")?t.custom.path:"/"+t.custom.path}${i}`},from:(t,i,e)=>U({destinationType:t,custom:{server:i.hostname,port:i.port,path:i.pathname}},Re(t,i))},s3:{to:t=>{let i=We([...Object.entries(t.advanced),...Object.entries(t.dynamic)]);return`${t.destinationType}://${t.custom.bucket}${t.custom.path.startsWith("/")?t.custom.path:"/"+t.custom.path}${i}`},from:(t,i,e)=>U({destinationType:t,custom:{path:i.pathname,bucket:i.hostname}},Re(t,i))},gcs:{to:t=>{let i=We([...Object.entries(t.advanced),...Object.entries(t.dynamic)]);return`${t.destinationType}://${t.custom.path}${i}`},from:(t,i,e)=>{let{advanced:n,dynamic:a}=Re(t,i);return{destinationType:t,custom:{path:i.hostname+i.pathname},dynamic:a,advanced:n}}},googledrive:{to:t=>{let i=t.custom.path,e=We([...Object.entries(t.advanced),...Object.entries(t.dynamic)]);return`${t.destinationType}://${i}${e}`},from:(t,i,e)=>{let{advanced:n,dynamic:a}=Re(t,i);return{destinationType:t,custom:{path:i.hostname+i.pathname},dynamic:a,advanced:n}}},fallbackMapper:{to:t=>"",from:(t,i,e)=>U({destinationType:t},Re(t,i))}};function ot(t){let i=t.destinationType;return!i||!$e.hasOwnProperty(i)?$e.fallbackMapper.to(t)??"":$e[i].to(t)??""}function ut(t){let i=URL.canParse(t),e=t.split("://")[0],n="http://"+t.split("://")[1],a=new URL(n);if(!$e.hasOwnProperty(e))return $e.fallbackMapper.from(e,a);if(!i)throw new Error("Invalid target path");return $e[e].from(e,a,t)}var $t=/[a-zA-Z0-9_\-\+\.!@#$%^&*?_~()-]/,rt=class t{generate(i,e=$t){let n;do n=this.generatePassword(i,e);while(this.calculatePasswordStrength(n)<5);return n}generatePassword(i,e=$t){let n=this;return Array.apply(null,{length:i}).map(()=>{let a;for(;;)if(a=String.fromCharCode(n.#e()),e.test(a))return a},this).join("")}calculatePasswordStrength(i){let e=1;return i.length>=8&&e++,i.match(/[a-z]/)&&i.match(/[A-Z]/)&&e++,i.match(/\d+/)&&e++,i.match(/.[!,@,#,$,%,^,&,*,?,_,~,(,),-]/)&&e++,Math.min(e,5)}#e(){if(window.crypto&&window.crypto.getRandomValues){let i=new Uint8Array(1);return window.crypto.getRandomValues(i),i[0]}else if(window.msCrypto&&window.msCrypto.getRandomValues){let i=new Uint8Array(1);return window.msCrypto.getRandomValues(i),i[0]}else return Math.floor(Math.random()*256)}static \u0275fac=function(e){return new(e||t)};static \u0275prov=ye({token:t,factory:t.\u0275fac,providedIn:"root"})};var Qt=["formRef"];function Yt(t,i){if(t&1&&(r(0,"option",14),l(1),o()),t&2){let e=i.$implicit;c("value",e.Key),s(),I(e.DisplayName)}}function Zt(t,i){if(t&1&&u(0,"spk-progress-bar",25),t&2){let e=p(3);fe("warn",e.calculatePasswordStrength()===1)("tertiary",e.calculatePasswordStrength()===2)("primary",e.calculatePasswordStrength()===4)("success",e.calculatePasswordStrength()===5),c("value",e.calculatePasswordStrength()*(100/5))}}function Jt(t,i){t&1&&(r(0,"span",20),l(1,"Passwords do not match"),o())}function Xt(t,i){t&1&&(r(0,"spk-icon"),l(1,"eye-slash"),o(),l(2," hide "))}function en(t,i){t&1&&(r(0,"spk-icon"),l(1,"eye"),o(),l(2," show "))}function tn(t,i){t&1&&(r(0,"spk-icon",27),l(1,"check"),o())}function nn(t,i){t&1&&(r(0,"spk-icon"),l(1,"copy"),o())}function on(t,i){if(t&1){let e=v();r(0,"button",26),C("click",function(){h(e);let a=p(3);return y(a.copyPassword())}),d(1,tn,2,0,"spk-icon",27)(2,nn,2,0,"spk-icon"),l(3),o()}if(t&2){let e=p(3);s(),_(e.copiedPassword()?1:2),s(2),k(" ",e.copiedPassword()?"Copied":"Copy"," password ")}}function rn(t,i){t&1&&(r(0,"spk-alert",24),l(1," Tip: Be sure to save your password. If you loose it you will lose access to your backups. "),o())}function an(t,i){if(t&1){let e=v();r(0,"div",15)(1,"spk-form-field")(2,"label",16),l(3," Create a password "),r(4,"sup"),l(5,"*"),o()(),u(6,"input",17),o(),d(7,Zt,1,9,"spk-progress-bar",18),r(8,"spk-form-field"),u(9,"input",19),d(10,Jt,2,0,"span",20),o(),r(11,"div",21)(12,"button",22),C("click",function(){h(e);let a=p(2);return y(a.showPassword.set(!a.showPassword()))}),d(13,Xt,3,0)(14,en,3,0),o(),r(15,"button",22),C("click",function(){h(e);let a=p(2);return y(a.generatePassword())}),r(16,"spk-icon"),l(17,"password"),o(),l(18," Generate password "),o(),d(19,on,4,2,"button",23),o(),d(20,rn,2,0,"spk-alert",24),o()}if(t&2){let e=p(2);s(6),c("type",e.showPassword()?"text":"password"),s(),_(e.generalForm.value.password?7:-1),s(2),c("type",e.showPassword()?"text":"password"),s(),_(e.generalForm.value.repeatPassword&&e.generalForm.value.repeatPassword!==e.generalForm.value.password?10:-1),s(3),_(e.showPassword()?13:14),s(6),_(e.showCopyPassword()?19:-1),s(),_(e.generalForm.value.password&&e.generalForm.value.password===e.generalForm.value.repeatPassword?20:-1)}}function ln(t,i){if(t&1&&(r(0,"spk-select",11)(1,"label",12),l(2,"Encryption"),o(),u(3,"input",13),D(4,Yt,2,2,"option",14,V),o(),d(6,an,21,7,"div",15)),t&2){let e=p();c("displayFn",e.displayFn()),s(4),O(e.encryptionOptions()),s(2),_(e.encryptionFieldSignal()!==""?6:-1)}}function sn(t,i){if(t&1&&(r(0,"button",9),l(1," Continue "),r(2,"spk-icon"),l(3,"arrow-right"),o()()),t&2){let e=p();c("disabled",e.generalForm.invalid)}}function pn(t,i){if(t&1&&(r(0,"spk-tooltip",10)(1,"button",9),l(2," Continue "),r(3,"spk-icon"),l(4,"arrow-right"),o()()()),t&2){let e=p();c("disabled",!(e.showCopyPassword()&&!e.copiedPassword())),s(),c("disabled",e.generalForm.invalid||e.showCopyPassword()&&!e.copiedPassword())}}var Be=new H,Bt=(t={name:"",description:"",encryption:"",password:"",repeatPassword:""})=>Be.group({name:Be.control(t.name,[_e.required]),description:Be.control(t.description),encryption:Be.control(t.encryption,[Rt()]),password:Be.control(t.password,[dt(i=>i?.value.encryption!=="",[_e.required])]),repeatPassword:Be.control(t.repeatPassword,[dt(i=>i?.value.encryption!=="",[_e.required])])}),_t={Key:"",DisplayName:"None"},ft=class t{#e=x(W);#n=x(te);#i=x(rt);#o=x(K);#t=x(Je);formRef=Z.required("formRef");generalForm=this.#o.generalForm;generalFormSignal=this.#o.generalFormSignal;encryptionFieldSignal=this.#o.encryptionFieldSignal;encryptionOptions=this.#o.encryptionOptions;isNew=this.#o.isNew;showPassword=S(!1);copiedPassword=S(!1);showCopyPassword=S(!1);encryptionEffect=Ot(()=>{let i=this.encryptionFieldSignal();console.log(i===""),i===""&&(this.copiedPassword.set(!1),this.showCopyPassword.set(!1))},{allowSignalWrites:!0});calculatePasswordStrength=G(()=>{let e=this.generalFormSignal()?.password??"";return this.#i.calculatePasswordStrength(e)});ngOnInit(){this.formRef().nativeElement.focus()}exit(){this.#o.exit()}async copyPassword(){let i=this.generalForm.controls.password.value;await this.#r(i??""),this.copiedPassword.set(!0)}async#r(i){try{await navigator.clipboard.writeText(i)}catch{try{let n=document.createElement("textarea");n.value=i,document.body.appendChild(n),n.select(),document.execCommand("copy"),document.body.removeChild(n)}catch(n){console.error("Failed to copy text: ",n)}}}displayFn(){let i=this.#t.systemInfo()?.EncryptionModules??[];return e=>{let n=[_t,...i].find(a=>a.Key===e);return n?`${n.DisplayName}`:""}}generatePassword(){this.copiedPassword.set(!1);let i=this.#i.generate(16);this.generalForm.controls.password.setValue(i),this.generalForm.controls.repeatPassword.setValue(i),this.showCopyPassword.set(!0)}next(){this.#e.navigate(["destination"],{relativeTo:this.#n.parent})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=j({type:t,selectors:[["app-general"]],viewQuery:function(e,n){e&1&&J(n.formRef,Qt,5),e&2&&X()},standalone:!0,features:[q],decls:22,vars:3,consts:[["formRef",""],["autocomplete","off",3,"submit","formGroup"],[1,"title-30"],["for","backupName"],["type","text","tabindex","1","placeholder","Your backup name","formControlName","name"],["for","backupDescription"],["id","backupDescription","tabindex","2","placeholder","Your backup description","formControlName","description"],[1,"form-actions"],["type","button","spk-button","",3,"click"],["spk-button","","type","submit",1,"raised","primary",3,"disabled"],["message","Remember to copy the password",1,"primary",3,"disabled"],[3,"displayFn"],["for","encryption"],["type","text","id","encryption","tabindex","3","placeholder","Encryption","formControlName","encryption"],[3,"value"],[1,"passwords"],["for","password"],["id","password","tabindex","4","autocomplete","off","placeholder","Password","formControlName","password",3,"type"],[1,"raised",3,"warn","tertiary","primary","success","value"],["id","repeatPassword","tabindex","5","autocomplete","off","placeholder","Repeat password","formControlName","repeatPassword",3,"type"],["error",""],[1,"password-actions"],["spk-button","","type","button",1,"small",3,"click"],["spk-button","","type","button",1,"small","copy"],["type","primary"],[1,"raised",3,"value"],["spk-button","","type","button",1,"small","copy",3,"click"],[1,"spk-success"]],template:function(e,n){if(e&1){let a=v();r(0,"form",1,0),C("submit",function(){return h(a),y(n.next())}),r(2,"h3",2),l(3,"General backup settings"),o(),r(4,"spk-form-field")(5,"label",3),l(6," Backup name "),r(7,"sup"),l(8,"*"),o()(),u(9,"input",4),o(),r(10,"spk-form-field")(11,"label",5),l(12,"Backup description"),o(),u(13,"textarea",6),o(),d(14,ln,7,2),r(15,"div",7)(16,"button",8),C("click",function(){return h(a),y(n.exit())}),r(17,"spk-icon"),l(18,"arrow-left"),o(),l(19," Exit "),o(),d(20,sn,4,1,"button",9)(21,pn,5,2,"spk-tooltip",10),o()()}e&2&&(c("formGroup",n.generalForm),s(14),_(n.isNew()?14:-1),s(6),_(n.encryptionFieldSignal()===""?20:21))},dependencies:[me,re,se,pe,ne,ie,oe,ae,le,de,ue,ke,ce,At,Xe,Me],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}sup[_ngcontent-%COMP%]{padding:0 .125rem;color:var(--warn-500)}.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%] spk-icon.spk-success[_ngcontent-%COMP%]{color:var(--success-500)}"],changeDetection:0})};var mn=["formRef"],cn=(t,i)=>({index:t,formView:i,formGroupName:"advancedOptions",destinationType:null,oauthField:null}),dn=t=>({$implicit:t});function un(t,i){if(t&1&&(r(0,"option",11),l(1),o()),t&2){let e=i.$implicit;c("value",e),s(),I(e)}}function fn(t,i){if(t&1&&(r(0,"option",11),l(1),o()),t&2){let e=i.$implicit;c("value",e.value),s(),I(e.name)}}function _n(t,i){if(t&1){let e=v();r(0,"button",23,2),C("click",function(){let a=h(e).$implicit,m=p();return y(m.addNewOption(a))}),l(2),o()}if(t&2){let e=i.$implicit;s(2),I(e.name)}}function gn(t,i){t&1&&Ve(0)}function Cn(t,i){if(t&1&&d(0,gn,1,0,"ng-container",24),t&2){let e=i.$implicit,n=i.$index;p();let a=ee(39);c("ngTemplateOutlet",a)("ngTemplateOutletContext",De(5,dn,Dt(2,cn,n,e)))}}function hn(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function yn(t,i){if(t&1&&(r(0,"app-file-tree",27)(1,"label",33),l(2),d(3,hn,3,1,"spk-tooltip",34),o(),u(4,"input",35),o()),t&2){let e,n=p().$implicit,a=p();c("startingPath",a.getFormFieldValue(0,n.formGroupName,n.formView.name))("accepts",n.formView.accepts)("showFiles",!0)("showHiddenNodes",!0)("selectFiles",!0),s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),P("id","destination-",n.formGroupName,"-",n.index,""),N("formControlName",n.formView.name)}}function xn(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function wn(t,i){if(t&1&&(r(0,"app-file-tree",28)(1,"label",33),l(2),d(3,xn,3,1,"spk-tooltip",34),o(),u(4,"input",35),o()),t&2){let e,n=p().$implicit,a=p();c("startingPath",a.getFormFieldValue(0,n.formGroupName,n.formView.name)),s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),P("id","destination-",n.formGroupName,"-",n.index,""),N("formControlName",n.formView.name)}}function Sn(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function kn(t,i){t&1&&(r(0,"spk-icon",36),l(1,"link"),o())}function vn(t,i){t&1&&(r(0,"spk-icon",36),l(1,"textbox"),o())}function Fn(t,i){if(t&1&&(r(0,"spk-form-field")(1,"label",33),l(2),d(3,Sn,3,1,"spk-tooltip",34),o(),u(4,"input",35),d(5,kn,2,0,"spk-icon",36)(6,vn,2,0,"spk-icon",36),o()),t&2){let e,n=p().$implicit;s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),P("id","destination-",n.formGroupName,"-",n.index,""),N("formControlName",n.formView.name),s(),_(n.formView.type==="Path"?5:6)}}function bn(t,i){if(t&1){let e=v();r(0,"span",40),C("click",function(){h(e);let a=p(2).$implicit,m=p();return y(m.oauthStartTokenCreation(a.formViewType))}),l(1,"AuthID"),o()}}function Tn(t,i){t&1&&(r(0,"spk-icon",36),l(1,"password"),o())}function Vn(t,i){if(t&1){let e=v();r(0,"spk-icon",41),C("click",function(){h(e);let a=p(2).$implicit;return y(a.formView.showPassword=!a.formView.showPassword)}),l(1," eye "),o()}}function Dn(t,i){if(t&1){let e=v();r(0,"spk-icon",41),C("click",function(){h(e);let a=p(2).$implicit;return y(a.formView.showPassword=!a.formView.showPassword)}),l(1," eye-slash "),o()}}function On(t,i){if(t&1&&(r(0,"spk-form-field")(1,"label",33),l(2),o(),u(3,"input",37),d(4,bn,2,0,"span",38)(5,Tn,2,0,"spk-icon",36)(6,Vn,2,0,"spk-icon",39)(7,Dn,2,0,"spk-icon",39),o()),t&2){let e,n=p().$implicit;s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),P("id","destination-",n.formGroupName,"-",n.index,""),N("formControlName",n.formView.name),c("type",n.formView.showPassword?"text":"password"),s(),_(n.oauthField===n.formView.name?4:5),s(2),_(n.formView.showPassword?6:7)}}function En(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Nn(t,i){if(t&1&&(r(0,"option",11),l(1),o()),t&2){let e=i.$implicit;c("value",e),s(),I(e)}}function Pn(t,i){if(t&1&&(r(0,"spk-select")(1,"label",33),l(2),d(3,En,3,1,"spk-tooltip",34),o(),u(4,"input",42),F(5,10),D(6,Nn,2,2,"option",11,V),b(),o()),t&2){let e,n=p().$implicit;s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),P("id","destination-",n.formGroupName,"-",n.index,""),N("formControlName",n.formView.name),s(2),O(n.formView.options)}}function In(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Gn(t,i){if(t&1&&(r(0,"option",11),l(1),o()),t&2){let e=i.$implicit;c("value",e),s(),I(e)}}function Mn(t,i){if(t&1&&(r(0,"div",29)(1,"label",33),l(2),d(3,In,3,1,"spk-tooltip",34),o(),r(4,"div",43)(5,"spk-form-field"),u(6,"input",44),r(7,"spk-icon",36),l(8,"resize"),o()(),r(9,"spk-select"),u(10,"label")(11,"input",45),F(12,10),D(13,Gn,2,2,"option",11,V),b(),o()()()),t&2){let e,n=p().$implicit,a=p();c("formGroupName",n.formView.name),s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(3),P("id","destination-",n.formGroupName,"-",n.index,""),s(7),O(a.sizeOptions())}}function An(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Rn(t,i){if(t&1&&(r(0,"spk-form-field")(1,"label",33),l(2),d(3,An,3,1,"spk-tooltip",34),o(),u(4,"input",46),r(5,"spk-icon",36),l(6,"numpad"),o()()),t&2){let e,n=p().$implicit;s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),P("id","destination-",n.formGroupName,"-",n.index,""),N("formControlName",n.formView.name)}}function $n(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Bn(t,i){if(t&1&&(r(0,"spk-toggle",30)(1,"label",33),l(2),d(3,$n,3,1,"spk-tooltip",34),o(),u(4,"input",47),o()),t&2){let e,n=p().$implicit;s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),P("id","destination-",n.formGroupName,"-",n.index,""),N("formControlName",n.formView.name)}}function Un(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Hn(t,i){t&1&&(r(0,"spk-option",49),l(1,"None"),o()),t&2&&c("value","None")}function Ln(t,i){if(t&1&&(r(0,"spk-option",11),l(1),u(2,"spk-checkbox",50),o()),t&2){let e=p().$implicit;c("value",e),s(),k(" ",e," ")}}function zn(t,i){if(t&1&&d(0,Hn,2,1,"spk-option",49)(1,Ln,3,2,"spk-option",11),t&2){let e=i.$implicit;_(e==="None"?0:1)}}function jn(t,i){if(t&1&&(r(0,"spk-select",31)(1,"label",33),l(2),d(3,Un,3,1,"spk-tooltip",34),o(),u(4,"input",48),F(5,10),D(6,zn,2,1,null,null,V),b(),o()),t&2){let e,n=p().$implicit;c("selectMultiple",!0),s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),N("formControlName",n.formView.name),s(2),O(n.formView.options)}}function qn(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Wn(t,i){if(t&1&&(r(0,"spk-form-field")(1,"label",33),l(2),d(3,qn,3,1,"spk-tooltip",34),o(),u(4,"input",35),o()),t&2){let e,n=p().$implicit;s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),P("id","destination-",n.formGroupName,"-",n.index,""),N("formControlName",n.formView.name)}}function Kn(t,i){if(t&1){let e=v();r(0,"div",25),F(1,26),d(2,yn,5,14,"app-file-tree",27)(3,wn,5,10,"app-file-tree",28)(4,Fn,7,10,"spk-form-field")(5,On,8,11,"spk-form-field")(6,Pn,8,9,"spk-select")(7,Mn,15,9,"div",29)(8,Rn,7,9,"spk-form-field")(9,Bn,5,9,"spk-toggle",30)(10,jn,8,7,"spk-select",31)(11,Wn,5,9,"spk-form-field"),b(),r(12,"button",32),C("click",function(){let a=h(e).$implicit,m=p();return y(m.removeFormView(a.formView,0))}),r(13,"spk-icon"),l(14,"x-circle"),o()()()}if(t&2){let e=i.$implicit;s(),c("formGroupName",e.formGroupName),s(),_(e.formView.type==="FileTree"?2:e.formView.type==="FolderTree"?3:e.formView.type==="String"||e.formView.type==="Path"?4:e.formView.type==="Password"?5:e.formView.type==="Enumeration"?6:e.formView.type==="Size"?7:e.formView.type==="Integer"?8:e.formView.type==="Boolean"?9:e.formView.type==="Flags"?10:e.formView.type==="Timespan"?11:-1)}}var Ce=new H,Qn=["Bytes","KB","MB","GB","TB","PB"],Yn=[{value:"",name:"Keep all backups"},{value:"time",name:"Delete backups that are older than"},{value:"versions",name:"Keep a specific number of backups"},{value:"smart",name:"Smart backup retention"},{value:"custom",name:"Custom backup retention"}],Ut=(t={remoteVolumeSize:50,size:"MB",backupRetention:"",advancedOptions:[]})=>Ce.group({remoteVolumeSize:Ce.group({size:Ce.control(t.remoteVolumeSize),unit:Ce.control(t.size)}),backupRetention:Ce.control(t.backupRetention),advancedOptions:Ce.group({})}),nr=(t,i)=>Ce.group({name:Ce.control(t),value:Ce.control(i)}),gt=class t{#e=x(K);#n=x(W);#i=x(te);formRef=Z.required("formRef");optionsForm=this.#e.optionsForm;selectedOptions=this.#e.selectedOptions;nonSelectedOptions=this.#e.nonSelectedOptions;isSubmitting=this.#e.isSubmitting;sizeOptions=S(Qn);rentationOptions=S(Yn);oauthStartTokenCreation(i){}getFormFieldValue(i,e,n){return this.optionsForm.controls.advancedOptions.controls[n].value}removeFormView(i,e){this.#e.removeOptionFromFormGroup(i)}addNewOption(i){this.#e.addOptionToFormGroup(i)}retentionOptionDisplayFn(){let i=this.rentationOptions();return e=>{let n=i.find(a=>a.value===e);return n?n.name:""}}displayFn(){let i=this.#e.advancedOptions();return e=>{let n=i.find(a=>a.name===e);return n?`${n.name}`:""}}goBack(){this.#n.navigate(["schedule"],{relativeTo:this.#i.parent})}submit(){this.#e.submit()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=j({type:t,selectors:[["app-options"]],viewQuery:function(e,n){e&1&&J(n.formRef,mn,5),e&2&&X()},standalone:!0,features:[q],decls:49,vars:5,consts:[["formRef",""],["fieldTemplate",""],["option",""],[3,"submit","formGroup"],[1,"title-30"],[1,"remote-volume-wrap"],["formGroupName","remoteVolumeSize",1,"row-inputs"],["for","size"],["type","number","id","size","formControlName","size"],["type","text","placeholder","Select an option...","formControlName","unit"],["options",""],[3,"value"],["href","#",1,"spk-primary"],[3,"displayFn"],["type","text","formControlName","backupRetention"],[3,"disallowToggle"],["title",""],["spk-button","","type","button",1,"outlined","small"],["menu",""],["type","button"],[1,"form-actions"],["spk-button","","type","button",3,"click"],["spk-button","","type","submit",1,"raised","primary"],["type","button",3,"click"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"field-row"],[3,"formGroupName"],[3,"startingPath","accepts","showFiles","showHiddenNodes","selectFiles"],[3,"startingPath"],[1,"form-column",3,"formGroupName"],[1,"primary","raised"],[1,"primary",3,"selectMultiple"],["spk-button","","type","button",1,"outlined",3,"click"],[3,"for"],[1,"primary",3,"message"],["type","text",3,"id","formControlName"],["prefix",""],["autocomplete","off",3,"type","id","formControlName"],["prefix","",1,"link"],["suffix","",1,"clickable"],["prefix","",1,"link",3,"click"],["suffix","",1,"clickable",3,"click"],["type","search",3,"id","formControlName"],[1,"form-row"],["type","number","formControlName","size",3,"id"],["type","search","formControlName","unit"],["type","number",3,"id","formControlName"],["type","checkbox",3,"id","formControlName"],["type","text","id","text",3,"formControlName"],["deselect","",3,"value"],[1,"raised","primary"]],template:function(e,n){if(e&1){let a=v();r(0,"form",3,0),C("submit",function(){return h(a),y(n.submit())}),r(2,"h3",4),l(3,"Options"),o(),r(4,"div",5)(5,"div",6)(6,"spk-form-field")(7,"label",7),l(8,"Remote volume size"),o(),u(9,"input",8),o(),r(10,"spk-select"),u(11,"input",9),F(12,10),D(13,un,2,2,"option",11,V),b(),o()(),r(15,"p"),l(16," The backups will be split up into multiple files called volumes. Here you can set the maximum size of the individual volume files. "),r(17,"a",12),l(18,"Read more"),o()()(),r(19,"spk-select",13)(20,"label",7),l(21,"Backup retention"),o(),u(22,"input",14),D(23,fn,2,2,"option",11,V),o(),r(25,"app-toggle-card",15),F(26,16),l(27," Advanced options "),r(28,"spk-menu")(29,"button",17),l(30," Add advanced option "),r(31,"spk-icon"),l(32,"plus"),o()(),F(33,18),D(34,_n,3,1,"button",19,V),b(),o(),b(),D(36,Cn,1,7,"ng-container",null,V),o(),d(38,Kn,15,2,"ng-template",null,1,Ye),r(40,"div",20)(41,"button",21),C("click",function(){return h(a),y(n.goBack())}),r(42,"spk-icon"),l(43,"arrow-left"),o(),l(44," Go back "),o(),r(45,"button",22)(46,"spk-icon"),l(47,"arrow-right"),o(),l(48," Submit "),o()()()}e&2&&(c("formGroup",n.optionsForm),s(13),O(n.sizeOptions()),s(6),c("displayFn",n.retentionOptionDisplayFn()),s(4),O(n.rentationOptions()),s(2),c("disallowToggle",!0),s(9),O(n.nonSelectedOptions()),s(2),O(n.selectedOptions()),s(9),fe("loader",n.isSubmitting()))},dependencies:[me,re,se,pe,ne,we,xe,ie,oe,ae,le,Se,Ze,tt,ue,ke,ce,de,ve,et,nt,Me,Ae,Fe],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-column[_ngcontent-%COMP%]{display:flex;flex-direction:column}.form-column[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.25rem}.form-column[_ngcontent-%COMP%] spk-icon[_ngcontent-%COMP%]{font-size:1rem}.field-row[_ngcontent-%COMP%]{display:grid;align-items:flex-end;grid-template-columns:1fr 2.5rem;gap:.5rem}.form-row[_ngcontent-%COMP%]{display:grid;grid-template-columns:3fr 1fr;gap:.5rem;align-items:flex-end}.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}.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 40px;align-items:flex-end}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}"],changeDetection:0})};var Zn=["formRef"];function Jn(t,i){if(t&1&&(r(0,"option",24),l(1),o()),t&2){let e=i.$implicit;c("value",e.key),s(),I(e.label)}}function Xn(t,i){if(t&1){let e=v();r(0,"div",11)(1,"spk-form-field")(2,"label",12),l(3,"Next time"),o(),r(4,"input",13,1),C("focus",function(){h(e);let a=ee(5);return y(a.showPicker())}),o(),r(6,"spk-icon",14),l(7,"clock"),o()(),r(8,"spk-form-field"),u(9,"label",15),r(10,"input",16,2),C("focus",function(){h(e);let a=ee(11);return y(a.showPicker())}),o(),r(12,"spk-icon",14),l(13,"calendar"),o()()(),F(14,17),r(15,"div",18)(16,"spk-form-field")(17,"label",19),l(18,"Run again every"),o(),u(19,"input",20),o(),r(20,"spk-select",21),u(21,"input",22),F(22,23),D(23,Jn,2,2,"option",24,V),b(),o()(),r(25,"app-toggle-card",25),F(26,26),l(27,"Allowed days"),b(),r(28,"div",27)(29,"spk-toggle",6),l(30," Monday "),u(31,"input",28),o(),r(32,"spk-toggle",6),l(33," Tuesday "),u(34,"input",29),o(),r(35,"spk-toggle",6),l(36," Wednesday "),u(37,"input",30),o(),r(38,"spk-toggle",6),l(39," Thursday "),u(40,"input",31),o(),r(41,"spk-toggle",6),l(42," Friday "),u(43,"input",32),o(),r(44,"spk-toggle",6),l(45," Saturday "),u(46,"input",33),o(),r(47,"spk-toggle",6),l(48," Sunday "),u(49,"input",34),o()()(),b()}if(t&2){let e=p();s(20),c("displayFn",e.displayFn),s(3),O(e.unitOptions),s(2),c("disallowToggle",!0)}}var A=new H,Ht=[{key:"s",label:"Seconds"},{key:"m",label:"Minutes"},{key:"h",label:"Hours"},{key:"D",label:"Days"},{key:"W",label:"Weeks"},{key:"M",label:"Months"},{key:"Y",label:"Years"}],Lt=(t={autoRun:!1,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}}})=>A.group({autoRun:A.control(t.autoRun),nextTime:A.group({time:A.control(t.nextTime.time),date:A.control(t.nextTime.date)}),runAgain:A.group({repeatValue:A.control(t.runAgain.repeatValue),repeatUnit:A.control(t.runAgain.repeatUnit),allowedDays:A.group({mon:A.control(t.runAgain.allowedDays.mon),tue:A.control(t.runAgain.allowedDays.tue),wed:A.control(t.runAgain.allowedDays.wed),thu:A.control(t.runAgain.allowedDays.thu),fri:A.control(t.runAgain.allowedDays.fri),sat:A.control(t.runAgain.allowedDays.sat),sun:A.control(t.runAgain.allowedDays.sun)})})}),Ct=class t{#e=x(K);#n=x(W);#i=x(te);formRef=Z.required("formRef");scheduleForm=this.#e.scheduleForm;scheduleFormSignal=this.#e.scheduleFormSignal;unitOptions=Ht;displayFn(i){let e=Ht.find(n=>n.key===i);return e?`${e.label}`:""}goBack(){this.#n.navigate(["source-data"],{relativeTo:this.#i.parent})}next(){this.#n.navigate(["options"],{relativeTo:this.#i.parent})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=j({type:t,selectors:[["app-schedule"]],viewQuery:function(e,n){e&1&&J(n.formRef,Zn,5),e&2&&X()},standalone:!0,features:[q],decls:20,vars:2,consts:[["formRef",""],["timeRef",""],["dateRef",""],[3,"submit","formGroup"],[1,"title-30"],[1,"toggle-wrap"],[1,"raised","primary"],["type","checkbox","formControlName","autoRun"],[1,"form-actions"],["spk-button","","type","button",3,"click"],["spk-button","","type","submit",1,"raised","primary"],["formGroupName","nextTime",1,"row-inputs"],["for","time"],["type","time","id","time","formControlName","time",3,"focus"],["suffix",""],["for","date"],["type","date","id","date","formControlName","date",3,"focus"],["formGroupName","runAgain"],[1,"row-inputs"],["for","repeatValue"],["type","number","id","repeatValue","formControlName","repeatValue"],[3,"displayFn"],["type","text","id","repeatUnit","formControlName","repeatUnit"],["options",""],[3,"value"],["formGroupName","allowedDays",3,"disallowToggle"],["title",""],[1,"days-wrap"],["type","checkbox","formControlName","mon"],["type","checkbox","formControlName","tue"],["type","checkbox","formControlName","wed"],["type","checkbox","formControlName","thu"],["type","checkbox","formControlName","fri"],["type","checkbox","formControlName","sat"],["type","checkbox","formControlName","sun"]],template:function(e,n){if(e&1){let a=v();r(0,"form",3,0),C("submit",function(){return h(a),y(n.next())}),r(2,"h3",4),l(3,"Schedule"),o(),r(4,"div",5)(5,"spk-toggle",6),l(6," Automatically run backups "),u(7,"input",7),o(),r(8,"p"),l(9,"If a date was missed, the job will run as soon as possible."),o()(),d(10,Xn,50,2),r(11,"div",8)(12,"button",9),C("click",function(){return h(a),y(n.goBack())}),r(13,"spk-icon"),l(14,"arrow-left"),o(),l(15," Go back "),o(),r(16,"button",10)(17,"spk-icon"),l(18,"arrow-right"),o(),l(19," Continue "),o()()()}if(e&2){let a;c("formGroup",n.scheduleForm),s(10),_((a=n.scheduleFormSignal())!=null&&a.autoRun?10:-1)}},dependencies:[me,re,se,pe,ne,we,xe,ie,oe,ae,le,Se,de,ue,ve,ce,ke,Fe],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{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})};var ei=["formRef"];function ti(t,i){if(t&1&&(r(0,"option",20),l(1),o()),t&2){let e=i.$implicit;c("value",e),s(),I(e)}}function ni(t,i){if(t&1&&(r(0,"div",13)(1,"spk-form-field"),u(2,"input",17),o(),r(3,"spk-select"),u(4,"input",18),F(5,19),D(6,ti,2,2,"option",20,V),b(),o()()),t&2){let e=p();s(6),O(e.sizeOptions())}}var he=new H,ii=["Bytes","KB","MB","GB","TB","PB"],oi=["Contains","Does not contain","Is greater than","Is less than"];var zt=(t={path:"",excludes:{hidden:!1,system:!1,temporary:!1,filesLargerThan:null}})=>he.group({path:he.control(t.path),excludes:he.group({hidden:he.control(t.excludes.hidden),system:he.control(t.excludes.system),temporary:he.control(t.excludes.temporary),filesLargerThan:he.group({size:he.control(null),unit:he.control(null)})})}),ht=class t{#e=x(K);#n=x(W);#i=x(te);formRef=Z.required("formRef");sourceDataForm=this.#e.sourceDataForm;sourceDataFormSignal=this.#e.sourceDataFormSignal;filesLargerThan=G(()=>this.sourceDataFormSignal()?.excludes?.filesLargerThan?.size!==null);sizeOptions=S(ii);expressionOptions=S(oi);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})}goBack(){this.#n.navigate(["destination"],{relativeTo:this.#i.parent})}next(){this.#n.navigate(["schedule"],{relativeTo:this.#i.parent})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=j({type:t,selectors:[["app-source-data"]],viewQuery:function(e,n){e&1&&J(n.formRef,ei,5),e&2&&X()},standalone:!0,features:[q],decls:32,vars:7,consts:[["formRef",""],[3,"submit","formGroup"],[1,"title-30"],[3,"multiSelect","startingPath"],["for","path"],["type","text","id","path","tabindex","4","placeholder","Path","formControlName","path"],["formGroupName","excludes",3,"isActive"],["title",""],[1,"raised","primary"],["type","checkbox","placeholder","Hidden files","formControlName","hidden"],["type","checkbox","placeholder","System files","formControlName","system"],["type","checkbox","placeholder","Temporary files","formControlName","temporary"],[1,"raised","primary",3,"click"],["formGroupName","filesLargerThan",1,"row-inputs"],[1,"form-actions"],["spk-button","","type","button",3,"click"],["spk-button","","type","submit",1,"raised","primary"],["type","number","formControlName","size"],["type","text","formControlName","unit","placeholder","Select an option..."],["options",""],[3,"value"]],template:function(e,n){if(e&1){let a=v();r(0,"form",1,0),C("submit",function(){return h(a),y(n.next())}),r(2,"h3",2),l(3,"Source Data"),o(),r(4,"app-file-tree",3)(5,"label",4),l(6,"Folder path"),o(),u(7,"input",5),o(),r(8,"app-toggle-card",6),F(9,7),l(10,"Exclude"),b(),r(11,"spk-toggle",8),l(12," Hidden files "),u(13,"input",9),o(),r(14,"spk-toggle",8),l(15," System files "),u(16,"input",10),o(),r(17,"spk-toggle",8),l(18," Temporary files "),u(19,"input",11),o(),r(20,"spk-toggle",12),C("click",function(){return h(a),y(n.toggleFilesLargerThan())}),l(21," Files larger than "),o(),d(22,ni,8,0,"div",13),o(),r(23,"div",14)(24,"button",15),C("click",function(){return h(a),y(n.goBack())}),r(25,"spk-icon"),l(26,"arrow-left"),o(),l(27," Go back "),o(),r(28,"button",16)(29,"spk-icon"),l(30,"arrow-right"),o(),l(31," Continue "),o()()()}e&2&&(c("formGroup",n.sourceDataForm),s(4),c("multiSelect",!0)("startingPath",n.getPath()),s(4),c("isActive",!0),s(12),fe("active",n.filesLargerThan()),s(2),_(n.filesLargerThan()?22:-1))},dependencies:[me,re,se,pe,ne,we,xe,ie,oe,ae,le,Se,de,ce,ke,ue,ve,Ae,Fe],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}.row-inputs[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr min-content;gap:.5rem}.filter-inputs[_ngcontent-%COMP%]{display:flex;gap:.5rem;align-items:flex-end}.filter-inputs[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{flex:1 0}.filter-inputs[_ngcontent-%COMP%] .filter-removal[_ngcontent-%COMP%]{cursor:pointer;display:flex;align-items:center;justify-content:center;height:2.5rem;flex:0 0}"],changeDetection:0})};var Q=new H,K=class t{#e=x(W);#n=x(Je);#i=x(Ge);#o=x(it);generalForm=Bt();sourceDataForm=zt();scheduleForm=Lt();destinationForm=jt();optionsForm=Ut();isDraft=S(!1);backupId=S(null);isSubmitting=S(!1);finishedLoading=S(!1);backupDefaults=S(null);isNew=G(()=>this.backupId()==="new");selectedOptions=S([]);selectedAdvancedFormPair=S([]);destinationFormPair=S({oauthField:null,custom:[],dynamic:[],advanced:[]});notSelectedAdvancedFormPair=G(()=>{let i=this.destinationFormPair()?.advanced??[],e=this.selectedAdvancedFormPair()??[];return i.filter(n=>e.findIndex(a=>a.name===n.name)===-1)});selectedHttpOptions=S([]);notSelectedHttpOptions=G(()=>{let i=this.httpOptions(),e=this.selectedHttpOptions()??[];return i.filter(n=>e.findIndex(a=>a.name===n.name)===-1)});sourceDataFormSignal=M(this.sourceDataForm.valueChanges);destinationFormSignal=M(this.destinationForm.valueChanges);generalFormSignal=M(this.generalForm.valueChanges);encryptionFieldSignal=M(this.generalForm.controls.encryption.valueChanges);scheduleFormSignal=M(this.scheduleForm.valueChanges);destinationOptions=G(()=>this.#n.backendModules()??[]);httpOptions=G(()=>this.#n.systemInfo()?.GenericModules?.find(i=>i.Key==="http-options")?.Options?.map(this.#t)??[]);advancedOptions=G(()=>this.#n.systemInfo()?.Options?.map(this.#t)??[]);#t(i){return{name:i.Name,type:i.Type,shortDescription:i.ShortDescription??void 0,longDescription:i.LongDescription??void 0,options:i.ValidValues}}encryptionOptions=G(()=>{let i=this.#n.systemInfo()?.EncryptionModules??[];return[_t,...i]});nonSelectedOptions=G(()=>this.advancedOptions().sort((i,e)=>i?.name&&e?.name?i?.name.localeCompare(e?.name):0).filter(i=>this.selectedOptions()?.findIndex(e=>e.name===i.name)===-1));addAdvancedFormPairByName(i,e,n){let a=this.notSelectedAdvancedFormPair().find(m=>m.name===i);a&&this.addAdvancedFormPair(a,e,n)}addHttpOptionByName(i,e,n){let a=this.notSelectedHttpOptions().find(m=>m.name===i);a&&this.addHttpOption(a,e,n)}addAdvancedFormPair(i,e,n){let a=this.destinationForm.controls.destinations.controls.at(e)?.controls.advanced,m=n??i.defaultValue;this.createFormField(a,i,m),this.selectedAdvancedFormPair.set([...this.selectedAdvancedFormPair(),i])}addHttpOption(i,e,n){let a=this.destinationForm.controls.destinations.controls.at(e)?.controls.advanced,m=n??i.defaultValue;this.createFormField(a,i,m),this.selectedHttpOptions.set([...this.selectedHttpOptions(),i])}removeAdvancedFormPair(i,e){this.destinationForm.controls.destinations.controls.at(e)?.controls.advanced.removeControl(i.name),this.selectedAdvancedFormPair().findIndex(a=>a.name===i.name)!==-1?this.selectedAdvancedFormPair.update(a=>(a=a.filter(m=>m.name!==i.name),a)):this.selectedHttpOptions.update(a=>(a=a.filter(m=>m.name!==i.name),a))}removeHttpOption(i,e){this.destinationForm.controls.destinations.controls.at(e)?.controls.advanced.removeControl(i.name),this.selectedHttpOptions.update(n=>(n=n.filter(a=>a.name!==i.name),n))}submit(){this.isSubmitting.set(!0);let i=this.#s(),e=this.backupId();e==="new"||!e||this.isDraft()?this.#i.postApiV1Backups({requestBody:i}).pipe(Le(()=>this.isSubmitting.set(!1))).subscribe({next:n=>{console.log("submitted res",n),this.exit()},error:n=>{console.error("submitted error",n)}}):this.#i.putApiV1BackupById({id:e,requestBody:i}).pipe(Le(()=>this.isSubmitting.set(!1))).subscribe({next:n=>{console.log("submitted res",n),this.exit()},error:n=>{console.error("submitted error",n)}})}exit(){this.#m(),this.#e.navigate(["/"])}updateFieldsFromTargetUrl(i){this.#r(),setTimeout(()=>{this.#l(i)})}#r(){this.destinationFormPair.set({oauthField:null,custom:[],dynamic:[],advanced:[]}),this.selectedAdvancedFormPair.set([]),this.selectedHttpOptions.set([]),this.destinationForm.controls.destinations.clear(),this.destinationForm.reset()}mapSourceDataToForm(i){let e=i.Sources??"",n=i.Filters?.map($=>`${$.Include?"":"-"}${$.Expression}`)??[],a=i.Settings?.find($=>$.Name==="--exclude-files-attributes")?.Value??"",m=i.Settings?.find($=>$.Name==="--skip-files-larger-than")??null,g=m?.Value.replace(/[0-9]/g,"")??null,R=m?.Value.replace(/[^0-9]/g,"")??null,B={path:[...e,...n].join("\0"),excludes:{hiddenFiles:a.includes("hidden"),systemFiles:a.includes("system"),tempFiles:a.includes("temporary"),filesLargerThan:g&&R?{size:parseInt(R),unit:g.toUpperCase()}:null}};this.sourceDataForm.patchValue(B)}mapDestinationToForm(i){let e=i.TargetURL?ut(i.TargetURL):null;e&&this.addDestinationFormGroup(e.destinationType,{custom:e.custom,dynamic:e.dynamic,advanced:e.advanced},!0)}#l(i){let e=ut(i);e&&this.addDestinationFormGroup(e.destinationType,{custom:e.custom,dynamic:e.dynamic,advanced:e.advanced},!0)}mapGeneralToForm(i){let e=i.Settings?.find(m=>m.Name==="encryption-module"),n=e?.Value&&e.Value.length?e.Value:"",a={name:i.Name??"",description:i.Description??""};n&&n!==""&&(a.encryption=n),this.generalForm.patchValue(a)}mapScheduleToForm(i){if(!i){this.scheduleForm.patchValue({autoRun:!0});return}let e=this.#o.fromString(i.Repeat)??null,a={nextTime:this.#p(i.Time),runAgain:{repeatValue:e?.value??1,repeatUnit:e?.unit??"D",allowedDays:{mon:i.AllowedDays?.includes("mon")??!1,tue:i.AllowedDays?.includes("tue")??!1,wed:i.AllowedDays?.includes("wed")??!1,thu:i.AllowedDays?.includes("thu")??!1,fri:i.AllowedDays?.includes("fri")??!1,sat:i.AllowedDays?.includes("sat")??!1,sun:i.AllowedDays?.includes("sun")??!1}}};this.scheduleForm.patchValue(a)}mapOptionsToForms(i){let e=["--no-encryption","--exclude-files-attributes","--skip-files-larger-than"],n=this.advancedOptions();i.Settings?.forEach(a=>{if(a.Name==="encryption-module")return this.generalForm.controls.encryption.setValue(a.Value??"");if(!(a.Name&&e.includes(a.Name))){if(a.Name==="dblock-size"){let m=a.Value?.replace(/[^0-9]/g,""),g=a.Value?.replace(/[0-9]/g,"");return this.optionsForm.controls.remoteVolumeSize.setValue({size:m?parseInt(m):null,unit:g?g.toUpperCase():null})}if(a.Name&&a.Value){let m=n.find(g=>g.name===a.Name);if(!m)return;this.addOptionToFormGroup(m,a.Value)}}})}getCurrentTargetUrl(){return this.#a(this.destinationForm.controls.destinations)}#s(){let i=this.generalForm.value,e=this.optionsForm.value,n=this.scheduleForm.value,a=this.sourceDataForm.value,g=this.destinationForm.value.destinations?.length?this.#a(this.destinationForm.controls.destinations):[],R=null;n.runAgain?.repeatUnit&&n.runAgain?.repeatValue&&(R=this.#o.toString(n.runAgain.repeatValue,n.runAgain.repeatUnit));let B=n.runAgain?.allowedDays?Object.entries(n.runAgain?.allowedDays).filter(([f,w])=>w).map(([f,w])=>f):[],$=a.path?.split("\0")??[],pt=i.encryption===""?{Name:"--no-encryption",Value:"True"}:{Name:"encryption-module",Value:i.encryption??null},mt=this.advancedOptions(),Ke=Object.entries(e.advancedOptions??{}).filter(([f,w])=>f&&w).map(([f,w])=>{let L=mt.find(z=>z.name===f);return L?.type==="Size"?{Name:f,Value:`${w.size}${w.unit.toLowerCase()}`}:L?.type==="Integer"?{Name:f,Value:w.toString()}:L?.type==="Boolean"?{Name:f,Value:w.toString()}:{Name:f,Value:w}}),Ne=[pt,...Ke],Pe=Object.entries(a.excludes??{}).filter(([f,w])=>w&&f!=="filesLargerThan").map(([f])=>f),T=a.excludes?.filesLargerThan;return Pe.length&&Ne.push({Name:"--exclude-files-attributes",Value:Pe.join(",")}),T&&T.size!==null&&T.unit!==null&&Ne.push({Name:"--skip-files-larger-than",Value:`${T.size}${T.unit}`}),{Backup:{Name:i.name,Description:i.description,TargetURL:g[0]??null,Sources:$.filter(f=>!f.startsWith("-")),Settings:Ne,Filters:$.filter(f=>f.startsWith("-")).map((f,w)=>({Order:w,Include:!1,Expression:f.slice(1)}))},Schedule:n.autoRun?{Repeat:R,Time:n.nextTime?.date?new Date(`${n.nextTime.date}T${n.nextTime?.time||"00:00:00"}`).toISOString():null,AllowedDays:B}:null}}#a(i){return i.controls.map(e=>ot(e.value))}#p(i){if(!i||i?.indexOf("T")===-1)return{time:i??"13:00"};let e=new Date(i),n={time:`${(""+e.getHours()).padStart(2,"0")}:${(""+e.getMinutes()).padStart(2,"0")}`};return i.indexOf("T")!==-1&&(n.date=e.toISOString().split("T")[0]),n}removeOptionFromFormGroup(i){let e=i.name;e&&(this.optionsForm.controls.advancedOptions.removeControl(e),this.selectedOptions.update(n=>(n=n.filter(a=>a.name!==e),n)))}addOptionToFormGroup(i,e){let n=this.optionsForm.controls.advancedOptions;this.createFormField(n,i,e??i.defaultValue),this.selectedOptions.update(a=>(a.push(i),a))}createFormField(i,e,n){if(e.type==="String"||e.type==="FileTree"||e.type==="FolderTree"||e.type==="Password"||e.type==="Enumeration"||e.type==="NonValidatedSelectableString"||e.type==="Path"){i.addControl(e.name,Q.control(n));return}if(e.type==="Size"){let a=n.replace(/[0-9]/g,""),m=n.replace(/[^0-9]/g,"");i.addControl(e.name,Q.group({size:Q.control(m?parseInt(m):50),unit:Q.control(a?a.toUpperCase():"MB")}));return}if(e.type==="Integer"){i.addControl(e.name,Q.control(n?parseInt(n):0));return}if(e.type==="Boolean"){i.addControl(e.name,Q.control(n==="true"));return}if(e.type==="Flags"){i.addControl(e.name,Q.control(n??""));return}if(e.type==="Timespan"){i.addControl(e.name,Q.control(n,[_e.pattern(/([-+]?\d{1,3}[smhDWMY])+/)]));return}}addDestinationFormGroup(i,e,n=!1){let a=this.destinationOptions().find(T=>T.Key===i),m=this.httpOptions();if(!a||!a.Options)return;let g=qe.hasOwnProperty(i)&&qe[i],R=g&&g.oauthField?g.oauthField:null,B=g&&g.customFields?g.customFields:{},$=g&&g.dynamicFields?g.dynamicFields:[],pt=g&&g.advancedFields?g.advancedFields:[],mt=g&&g.ignoredAdvancedFields?g.ignoredAdvancedFields:[];this.destinationFormPair.set({oauthField:R,custom:[],dynamic:[],advanced:[]});let Ke=Q.group({}),Ne=Q.group({}),Pe=Q.group({});B&&Object.entries(B).forEach(([T,f],w)=>{let Te=f,{formElement:L}=Te,z=xt(Te,["formElement"]);Ke.addControl(T,L(e?.custom[T])),this.destinationFormPair.update(Ie=>(Ie.custom.push(U({order:900+w},z)),Ie))});for(let T=0;T<a.Options.length;T++){let f=a.Options[T];if(f.Deprecated)continue;let w=$.find(L=>L===f.Name||L.name===f.Name);if(w){let L=w&&typeof w!="string",z={name:f.Name,type:f.Type,shortDescription:f.ShortDescription??void 0,longDescription:f.LongDescription??void 0,options:f.ValidValues,order:900+T},Te=L?U(U({},z),w):z,Qe=e?.dynamic[f.Name]??f.DefaultValue;this.createFormField(Ne,Te,Qe),this.destinationFormPair.update(Ue=>(Ue.dynamic.push(Te),Ue))}else{if(mt.find(Y=>Y===f.Name))continue;let z=pt.find(Y=>Y===f.Name||Y.name===f.Name),Te=z&&typeof z!="string",Ie=e?.advanced[f.Name],Qe=Ie??f.DefaultValue,Ue={name:f.Name,type:f.Type,shortDescription:f.ShortDescription??void 0,longDescription:f.LongDescription??void 0,options:f.ValidValues,defaultValue:Qe,order:900+T},ct=Te?U(U({},Ue),z):Ue;n&&Ie&&(this.createFormField(Pe,ct,Qe),this.selectedAdvancedFormPair.update(Y=>(Y.push(ct),Y))),this.destinationFormPair.update(Y=>(Y.advanced.push(ct),Y))}}for(let T=0;T<m.length;T++){let f=m[T],w=e?.advanced[f.name],L=w??f.defaultValue;n&&w&&(this.createFormField(Pe,f,L),this.selectedHttpOptions.update(z=>(z.push(f),z)))}this.destinationFormPair.update(T=>({oauthField:T.oauthField,custom:T.custom.sort((f,w)=>f.order-w.order),dynamic:T.dynamic.sort((f,w)=>f.order-w.order),advanced:T.advanced.sort((f,w)=>f.order-w.order)})),this.destinationForm.controls.destinations.push(qt({key:a.Key,customGroup:Ke,dynamicGroup:Ne,advancedGroup:Pe}))}#m(){this.generalForm.reset(),this.destinationForm.controls.destinations.clear(),this.destinationForm.reset(),this.sourceDataForm.reset(),this.scheduleForm.reset(),this.optionsForm.reset()}static \u0275fac=function(e){return new(e||t)};static \u0275prov=ye({token:t,factory:t.\u0275fac,providedIn:"root"})};var ri=["formRef"],ai=(t,i,e,n)=>({index:t,formView:i,formGroupName:"custom",destinationType:e,oauthField:n}),st=t=>({$implicit:t}),li=(t,i,e,n)=>({index:t,formView:i,formGroupName:"dynamic",destinationType:e,oauthField:n}),si=(t,i,e,n)=>({index:t,formView:i,formGroupName:"advanced",destinationType:e,oauthField:n}),pi=(t,i,e,n)=>({index:t,formView:i,formGroupName:"advanced",asHttpOptions:!0,destinationType:e,oauthField:n}),mi=()=>({maxWidth:"700px",width:"100%"});function ci(t,i){t&1&&(l(0," Connected "),r(1,"spk-icon"),l(2,"check"),o())}function di(t,i){t&1&&l(0," Test destination ")}function ui(t,i){if(t&1){let e=v();r(0,"button",8),C("click",function(){h(e);let a=p();return y(a.testDestination())}),d(1,ci,3,0,"spk-icon")(2,di,1,0),o()}if(t&2){let e=p();fe("success",e.successfulTest()),s(),_(e.successfulTest()?1:2)}}function fi(t,i){if(t&1){let e=v();r(0,"p",14),C("click",function(){h(e);let a=p();return y(a.removeDestinationFormGroup(a.destinationCount()-1))}),l(1," Want to select another destination? "),r(2,"span",15),l(3,"Click here"),o()()}}function _i(t,i){if(t&1){let e=v();r(0,"div",16)(1,"div",17),C("click",function(){h(e);let a=p();return y(a.addDestinationFormGroup("file"))}),r(2,"h3"),l(3,"File system"),o(),r(4,"p"),l(5,"Store backups on your local file system."),o()(),r(6,"div",17),C("click",function(){h(e);let a=p();return y(a.addDestinationFormGroup("gcs"))}),r(7,"h3"),l(8,"Google Cloud Storage"),o(),r(9,"p"),l(10,"Store backups in Google Cloud Storage."),o()(),r(11,"div",17),C("click",function(){h(e);let a=p();return y(a.addDestinationFormGroup("s3"))}),r(12,"h3"),l(13,"S3 compatible bucket"),o(),r(14,"p"),l(15,"Store backups in any S3 compatible bucket."),o()(),r(16,"div",17),C("click",function(){h(e);let a=p();return y(a.addDestinationFormGroup("ssh"))}),r(17,"h3"),l(18,"SSH"),o(),r(19,"p"),l(20,"Store backups in SSH."),o()(),r(21,"div",17),C("click",function(){h(e);let a=p();return y(a.addDestinationFormGroup("googledrive"))}),r(22,"h3"),l(23,"Google Drive"),o(),r(24,"p"),l(25,"Store backups in Google Drive."),o()()(),r(26,"p"),l(27,"More destinations are coming soon."),o()}}function gi(t,i){t&1&&Ve(0)}function Ci(t,i){if(t&1&&d(0,gi,1,0,"ng-container",23),t&2){let e,n=i.$implicit,a=i.$index;p();let m=ee(33),g=p();c("ngTemplateOutlet",m)("ngTemplateOutletContext",De(7,st,ze(2,ai,a,n,(e=g.destinationFormSignal())==null||e.destinations==null||e.destinations[0]==null?null:e.destinations[0].destinationType,g.destinationFormPair().oauthField)))}}function hi(t,i){t&1&&Ve(0)}function yi(t,i){if(t&1&&d(0,hi,1,0,"ng-container",23),t&2){let e,n=i.$implicit,a=i.$index;p();let m=ee(33),g=p();c("ngTemplateOutlet",m)("ngTemplateOutletContext",De(7,st,ze(2,li,a,n,(e=g.destinationFormSignal())==null||e.destinations==null||e.destinations[0]==null?null:e.destinations[0].destinationType,g.destinationFormPair().oauthField)))}}function xi(t,i){if(t&1){let e=v();r(0,"button",24),C("click",function(){let a=h(e).$implicit,m=p(2);return y(m.addAdvancedFormPair(a,0))}),l(1),o()}if(t&2){let e=i.$implicit;s(),k(" ",e.name," ")}}function wi(t,i){t&1&&Ve(0)}function Si(t,i){if(t&1&&d(0,wi,1,0,"ng-container",23),t&2){let e,n=i.$implicit,a=i.$index;p();let m=ee(33),g=p();c("ngTemplateOutlet",m)("ngTemplateOutletContext",De(7,st,ze(2,si,a,n,(e=g.destinationFormSignal())==null||e.destinations==null||e.destinations[0]==null?null:e.destinations[0].destinationType,g.destinationFormPair().oauthField)))}}function ki(t,i){if(t&1){let e=v();r(0,"button",24),C("click",function(){let a=h(e).$implicit,m=p(2);return y(m.addHttpOption(a,0))}),l(1),o()}if(t&2){let e=i.$implicit;s(),k(" ",e.name," ")}}function vi(t,i){t&1&&Ve(0)}function Fi(t,i){if(t&1&&d(0,vi,1,0,"ng-container",23),t&2){let e,n=i.$implicit,a=i.$index;p();let m=ee(33),g=p();c("ngTemplateOutlet",m)("ngTemplateOutletContext",De(7,st,ze(2,pi,a,n,(e=g.destinationFormSignal())==null||e.destinations==null||e.destinations[0]==null?null:e.destinations[0].destinationType,g.destinationFormPair().oauthField)))}}function bi(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Ti(t,i){if(t&1&&(r(0,"app-file-tree",27)(1,"label",34),l(2),d(3,bi,3,1,"spk-tooltip",35),o(),u(4,"input",36),o()),t&2){let e,n=p().$implicit,a=p(2);c("startingPath",a.getFormFieldValue(0,n.formGroupName,n.formView.name))("accepts",n.formView.accepts)("showFiles",!0)("showHiddenNodes",!0)("selectFiles",!0),s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name)}}function Vi(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Di(t,i){if(t&1&&(r(0,"app-file-tree",28)(1,"label",34),l(2),d(3,Vi,3,1,"spk-tooltip",35),o(),u(4,"input",36),o()),t&2){let e,n=p().$implicit,a=p(2);c("startingPath",a.getFormFieldValue(0,n.formGroupName,n.formView.name)),s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name)}}function Oi(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Ei(t,i){t&1&&(r(0,"spk-icon",37),l(1,"link"),o())}function Ni(t,i){t&1&&(r(0,"spk-icon",37),l(1,"textbox"),o())}function Pi(t,i){if(t&1&&(r(0,"spk-form-field")(1,"label",34),l(2),d(3,Oi,3,1,"spk-tooltip",35),o(),u(4,"input",36),d(5,Ei,2,0,"spk-icon",37)(6,Ni,2,0,"spk-icon",37),o()),t&2){let e,n=p().$implicit;s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name),s(),_(n.formView.type==="Path"?5:6)}}function Ii(t,i){if(t&1){let e=v();r(0,"span",41),C("click",function(){h(e);let a=p(2).$implicit,m=p(2);return y(m.oauthStartTokenCreation(a.destinationType))}),l(1,"AuthID"),o()}}function Gi(t,i){t&1&&(r(0,"spk-icon",37),l(1,"password"),o())}function Mi(t,i){if(t&1){let e=v();r(0,"spk-icon",42),C("click",function(){h(e);let a=p(2).$implicit;return y(a.formView.showPassword=!a.formView.showPassword)}),l(1," eye "),o()}}function Ai(t,i){if(t&1){let e=v();r(0,"spk-icon",42),C("click",function(){h(e);let a=p(2).$implicit;return y(a.formView.showPassword=!a.formView.showPassword)}),l(1," eye-slash "),o()}}function Ri(t,i){if(t&1&&(r(0,"spk-form-field")(1,"label",34),l(2),o(),u(3,"input",38),d(4,Ii,2,0,"span",39)(5,Gi,2,0,"spk-icon",37)(6,Mi,2,0,"spk-icon",40)(7,Ai,2,0,"spk-icon",40),o()),t&2){let e,n=p().$implicit;s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name),c("type",n.formView.showPassword?"text":"password"),s(),_(n.oauthField===n.formView.name?4:5),s(2),_(n.formView.showPassword?6:7)}}function $i(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Bi(t,i){if(t&1&&(r(0,"option",45),l(1),o()),t&2){let e=i.$implicit;c("value",e),s(),I(e)}}function Ui(t,i){if(t&1&&(r(0,"spk-select")(1,"label",34),l(2),d(3,$i,3,1,"spk-tooltip",35),o(),u(4,"input",43),F(5,44),D(6,Bi,2,2,"option",45,V),b(),o()),t&2){let e,n=p().$implicit;s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name),s(2),O(n.formView.options)}}function Hi(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Li(t,i){if(t&1&&(r(0,"option",45),l(1),o()),t&2){let e=i.$implicit;c("value",e.value),s(),vt(" ",e.key," ",e.value?"("+e.value+")":""," ")}}function zi(t,i){if(t&1&&(r(0,"spk-select",29)(1,"label",34),l(2),d(3,Hi,3,1,"spk-tooltip",35),o(),u(4,"input",43),F(5,44),D(6,Li,2,3,"option",45,V),b(),o()),t&2){let e,n=p().$implicit,a=p(2);c("isFreeText",!0),s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name),s(2),O(n.formView.loadOptions(a.injector)())}}function ji(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function qi(t,i){if(t&1&&(r(0,"option",45),l(1),o()),t&2){let e=i.$implicit;c("value",e),s(),I(e)}}function Wi(t,i){if(t&1&&(r(0,"div",30)(1,"label",34),l(2),d(3,ji,3,1,"spk-tooltip",35),o(),r(4,"div",46)(5,"spk-form-field"),u(6,"input",47),r(7,"spk-icon",37),l(8,"resize"),o()(),r(9,"spk-select"),u(10,"label")(11,"input",48),F(12,44),D(13,qi,2,2,"option",45,V),b(),o()()()),t&2){let e,n=p().$implicit,a=p(2);c("formGroupName",n.formView.name),s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(3),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(7),O(a.sizeOptions())}}function Ki(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Qi(t,i){if(t&1&&(r(0,"spk-form-field")(1,"label",34),l(2),d(3,Ki,3,1,"spk-tooltip",35),o(),u(4,"input",49),r(5,"spk-icon",37),l(6,"numpad"),o()()),t&2){let e,n=p().$implicit;s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name)}}function Yi(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Zi(t,i){if(t&1&&(r(0,"spk-toggle",31)(1,"label",34),l(2),d(3,Yi,3,1,"spk-tooltip",35),o(),u(4,"input",50),o()),t&2){let e,n=p().$implicit;s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name)}}function Ji(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Xi(t,i){t&1&&(r(0,"spk-option",52),l(1,"None"),o()),t&2&&c("value","None")}function eo(t,i){if(t&1&&(r(0,"spk-option",45),l(1),u(2,"spk-checkbox",53),o()),t&2){let e=p().$implicit;c("value",e),s(),k(" ",e," ")}}function to(t,i){if(t&1&&d(0,Xi,2,1,"spk-option",52)(1,eo,3,2,"spk-option",45),t&2){let e=i.$implicit;_(e==="None"?0:1)}}function no(t,i){if(t&1&&(r(0,"spk-select",32)(1,"label",34),l(2),d(3,Ji,3,1,"spk-tooltip",35),o(),u(4,"input",51),F(5,44),D(6,to,2,1,null,null,V),b(),o()),t&2){let e,n=p().$implicit;c("selectMultiple",!0),s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),N("formControlName",n.formView.name),s(2),O(n.formView.options)}}function io(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function oo(t,i){if(t&1&&(r(0,"spk-form-field")(1,"label",34),l(2),d(3,io,3,1,"spk-tooltip",35),o(),u(4,"input",36),o()),t&2){let e,n=p().$implicit;s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name)}}function ro(t,i){if(t&1){let e=v();r(0,"button",54),C("click",function(){h(e);let a=p().$implicit,m=p(2);return y(m.removeFormView(a.formView,0))}),r(1,"spk-icon"),l(2,"x-circle"),o()()}}function ao(t,i){if(t&1&&(r(0,"div",25),F(1,26),d(2,Ti,5,16,"app-file-tree",27)(3,Di,5,12,"app-file-tree",28)(4,Pi,7,12,"spk-form-field")(5,Ri,8,13,"spk-form-field")(6,Ui,8,11,"spk-select")(7,zi,8,12,"spk-select",29)(8,Wi,15,11,"div",30)(9,Qi,7,11,"spk-form-field")(10,Zi,5,11,"spk-toggle",31)(11,no,8,8,"spk-select",32)(12,oo,5,11,"spk-form-field"),b(),d(13,ro,3,0,"button",33),o()),t&2){let e=i.$implicit;fe("single-field",e.formGroupName!=="advanced"),s(),c("formGroupName",e.formGroupName),s(),_(e.formView.type==="FileTree"?2:e.formView.type==="FolderTree"?3:e.formView.type==="String"||e.formView.type==="Path"?4:e.formView.type==="Password"?5:e.formView.type==="Enumeration"?6:e.formView.type==="NonValidatedSelectableString"?7:e.formView.type==="Size"?8:e.formView.type==="Integer"?9:e.formView.type==="Boolean"?10:e.formView.type==="Flags"?11:e.formView.type==="Timespan"?12:-1),s(11),_(e.formGroupName==="advanced"?13:-1)}}function lo(t,i){if(t&1&&(F(0,9)(1,18),D(2,Ci,1,9,"ng-container",null,V),D(4,yi,1,9,"ng-container",null,V),r(6,"app-toggle-card",19),F(7,20),l(8," Advanced options "),r(9,"spk-menu")(10,"button",21),l(11," Add advanced option "),r(12,"spk-icon"),l(13,"plus"),o()(),F(14,7),D(15,xi,2,1,"button",22,V),b(),o(),b(),D(17,Si,1,9,"ng-container",null,V),o(),r(19,"app-toggle-card",19),F(20,20),l(21," Http options "),r(22,"spk-menu")(23,"button",21),l(24," Add http option "),r(25,"spk-icon"),l(26,"plus"),o()(),F(27,7),D(28,ki,2,1,"button",22,V),b(),o(),b(),D(30,Fi,1,9,"ng-container",null,V),o(),d(32,ao,14,5,"ng-template",null,1,Ye),b()()),t&2){let e=p();s(2),O(e.destinationFormPair().custom),s(2),O(e.destinationFormPair().dynamic),s(2),c("disallowToggle",!0),s(4),c("disabled",e.notSelectedAdvancedFormPair().length===0),s(5),O(e.notSelectedAdvancedFormPair()),s(2),O(e.selectedAdvancedFormPair()),s(2),c("disallowToggle",!0),s(4),c("disabled",e.notSelectedHttpOptions().length===0),s(5),O(e.notSelectedHttpOptions()),s(2),O(e.selectedHttpOptions())}}function so(t,i){if(t&1){let e=v();r(0,"spk-dialog",55),Tt("isOpenChange",function(a){h(e);let m=p();return bt(m.targetUrlDialogOpen,a)||(m.targetUrlDialogOpen=a),y(a)}),r(1,"header",56)(2,"h2"),l(3,"Edit target URL"),o(),r(4,"spk-alert",57),l(5,"Be careful, this will overwrite everything you have in your destination."),o()(),r(6,"div",58)(7,"spk-form-field"),u(8,"textarea",59),o()(),r(9,"footer",60)(10,"button",11),C("click",function(){h(e);let a=p();return y(a.closeTargetUrlDialog(!1))}),l(11,"Cancel"),o(),r(12,"button",61),C("click",function(){h(e);let a=p();return y(a.closeTargetUrlDialog(!0))}),l(13," Override target URLc "),r(14,"spk-icon"),l(15,"swap"),o()()()()}if(t&2){let e=p();Ft("isOpen",e.targetUrlDialogOpen),c("options",Vt(3,mi)),s(8),c("formControl",e.targetUrlCtrl)}}var po=["Bytes","KB","MB","GB","TB","PB"],lt=new H,jt=(t={destinations:[]})=>lt.group({destinations:lt.array(t.destinations)}),qt=({key:t,customGroup:i,dynamicGroup:e,advancedGroup:n})=>lt.group({destinationType:lt.control(t),custom:i,dynamic:e,advanced:n}),yt=class t{#e=x(W);#n=x(te);#i=x(Et);#o=x(Ge);#t=x(K);#r=x(Mt);injector=x(wt);formRef=Z.required("formRef");destinationForm=this.#t.destinationForm;destinationFormPair=this.#t.destinationFormPair;selectedAdvancedFormPair=this.#t.selectedAdvancedFormPair;notSelectedAdvancedFormPair=this.#t.notSelectedAdvancedFormPair;selectedHttpOptions=this.#t.selectedHttpOptions;notSelectedHttpOptions=this.#t.notSelectedHttpOptions;destinationOptions=this.#t.destinationOptions;destinationFormSignal=this.#t.destinationFormSignal;destinationCount=G(()=>this.destinationFormSignal()?.destinations?.length??0);sizeOptions=S(po);successfulTest=S(!1);getFormFieldValue(i,e,n){return((this.destinationForm.controls.destinations.controls?.[i]).controls?.[e]).controls[n].value}addDestinationFormGroup(i){this.#t.addDestinationFormGroup(i)}addAdvancedFormPair(i,e){this.#t.addAdvancedFormPair(i,e)}removeFormView(i,e){this.#t.removeAdvancedFormPair(i,e)}addHttpOption(i,e){this.#t.addHttpOption(i,e)}targetUrl=G(()=>this.#t.getCurrentTargetUrl()[0]);targetUrlCtrl=new Nt;targetUrlInitial=S(null);targetUrlDialogOpen=S(!1);openTargetUrlDialog(){let e=this.#t.getCurrentTargetUrl()[0];this.targetUrlCtrl.setValue(e),this.targetUrlInitial.set(e),this.targetUrlDialogOpen.set(!0)}closeTargetUrlDialog(i=!1){this.targetUrlDialogOpen.set(!1);let e=this.targetUrlCtrl.value,n=this.targetUrlInitial();!i||e===n||this.#t.updateFieldsFromTargetUrl(this.targetUrlCtrl.value)}testDestination(i=0){let n=this.#t.getCurrentTargetUrl()[i];n&&this.#o.postApiV1RemoteoperationTest({requestBody:{path:n}}).subscribe({next:()=>{this.successfulTest.set(!0),setTimeout(()=>{this.successfulTest.set(!1)},3e3)},error:a=>{let m=a.error.error.Error;if(m==="missing-folder"&&this.#r.open(Oe,{data:{title:"Create folder",message:"The remote destination folder does not exist, do you want to create it?"},closed:g=>{g&&this.#o.postApiV1RemoteoperationCreate({requestBody:{path:n}}).subscribe()}}),m.startsWith("incorrect-cert:")){let g=m.split("incorrect-cert:")[1];this.#r.open(Oe,{maxWidth:"500px",data:{title:"Trust the certificate",message:`The server is using a certificate that is not trusted.
|
|
2
|
+
If this is a self-signed certificate, you can choose to trust this certificate.
|
|
3
|
+
The server reported the certificate hash: ${g}`,confirmText:"Trust the certificate",cancelText:"Cancel"},closed:R=>{R&&this.#t.addHttpOptionByName("accept-specified-ssl-hash",g)}})}if(m.startsWith("incorrect-host-key:")){let g=m.split('incorrect-host-key:"')[1].split('",')[0],R=m.split('accepted-host-key:"')[1].split('",')[0];R?this.#r.open(Oe,{maxWidth:"500px",data:{title:"The host key has changed",message:`The host key has changed, please check with the server administrator if this is correct,
|
|
4
|
+
otherwise you could be the victim of a MAN-IN-THE-MIDDLE attack.
|
|
5
|
+
Do you want to REPLACE your CURRENT host key ${R}
|
|
6
|
+
with the REPORTED host key: ${g}?`,confirmText:"Approve",cancelText:"Cancel"},closed:B=>{B&&this.#t.addAdvancedFormPairByName("ssh-fingerprint",i,g)}}):this.#r.open(Oe,{maxWidth:"500px",data:{title:"Approve host key?",message:`No certificate was specified, please verify that the reported host key is correct: ${g}`,confirmText:"Approve",cancelText:"Cancel"},closed:B=>{B&&this.#t.addAdvancedFormPairByName("ssh-fingerprint",i,g)}})}}})}mapToTargetUrl(i){return ot(i.value)}removeDestinationFormGroup(i){this.destinationForm.controls.destinations.removeAt(i)}displayFn(i){let e=this.destinationOptions().find(n=>n.Key===i);return e?`${e.DisplayName}`:""}goBack(){this.#e.navigate(["general"],{relativeTo:this.#n.parent})}next(){this.#e.navigate(["source-data"],{relativeTo:this.#n.parent})}#l=S("https://duplicati-oauth-handler.appspot.com/").asReadonly();#s=S(Math.random().toString(36).substring(2)+Math.random().toString(36).substring(2)).asReadonly();#a=S(!1);#p=S(null);keyCreation(){}oauthStartTokenCreation(i){this.#a.set(!0);let e=450,n=600,a=this.#l()+"?type="+i+"&token="+this.#s(),m=screen.width/2-e/2,g=screen.height/2-n/2,R=window.open(a,"_blank","height="+n+",width="+e+",menubar=0,status=0,titlebar=0,toolbar=0,left="+m+",top="+g);R?.addEventListener("blur",B=>{console.log("event blur",B)}),R?.addEventListener("beforeunload",B=>{console.log("event beforeunload",B),this.#i.get(this.#l()+"fetch?callback=JSON_CALLBACK",{params:{token:this.#s()}}).pipe(Le(()=>this.#a.set(!1))).subscribe({next:$=>{console.log("res",$),$?.authid&&this.#p.set($.authid)}})})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=j({type:t,selectors:[["app-destination"]],viewQuery:function(e,n){e&1&&J(n.formRef,ri,5),e&2&&X()},standalone:!0,features:[q],decls:29,vars:6,consts:[["formRef",""],["fieldTemplate",""],[3,"submit","formGroup"],[1,"title-30"],[1,"actions"],["spk-button","","type","button",1,"small",3,"success"],["spk-button","","type","button",1,"small"],["menu",""],["spk-button","","type","button",1,"small",3,"click"],["formArrayName","destinations"],[1,"form-actions"],["spk-button","","type","button",3,"click"],["spk-button","","type","submit",1,"raised","primary"],[3,"isOpen","options"],[3,"click"],[1,"spk-primary"],[1,"most-common-destinations"],[1,"tile",3,"click"],["formGroupName","0"],[3,"disallowToggle"],["title",""],["spk-button","","type","button",1,"outlined","small",3,"disabled"],["item","","type","button"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["item","","type","button",3,"click"],[1,"field-row"],[3,"formGroupName"],[3,"startingPath","accepts","showFiles","showHiddenNodes","selectFiles"],[3,"startingPath"],[3,"isFreeText"],[1,"form-column",3,"formGroupName"],[1,"primary","raised"],[1,"primary",3,"selectMultiple"],["spk-button","","type","button",1,"outlined"],[3,"for"],[1,"primary",3,"message"],["type","text",3,"id","formControlName"],["prefix",""],["autocomplete","off",3,"type","id","formControlName"],["prefix","",1,"link"],["suffix","",1,"clickable"],["prefix","",1,"link",3,"click"],["suffix","",1,"clickable",3,"click"],["type","search",3,"id","formControlName"],["options",""],[3,"value"],[1,"form-row"],["type","number","formControlName","size",3,"id"],["type","search","formControlName","unit"],["type","number",3,"id","formControlName"],["type","checkbox",3,"id","formControlName"],["type","text","id","text",3,"formControlName"],["deselect","",3,"value"],[1,"raised","primary"],["spk-button","","type","button",1,"outlined",3,"click"],[3,"isOpenChange","isOpen","options"],["header",""],[1,"warning"],["content",""],["id","targetUrl","autocomplete","off",3,"formControl"],["footer",""],["spk-button","","type","submit",1,"raised","primary",3,"click"]],template:function(e,n){if(e&1){let a=v();r(0,"form",2,0),C("submit",function(){return h(a),y(n.next())}),r(2,"header")(3,"h3",3),l(4," Backup destination "),r(5,"div",4),d(6,ui,3,3,"button",5),r(7,"spk-menu")(8,"button",6)(9,"spk-icon"),l(10,"dots-three-vertical"),o()(),F(11,7),r(12,"button",8),C("click",function(){return h(a),y(n.openTargetUrlDialog())}),r(13,"spk-icon"),l(14,"link"),o(),l(15," Edit target URL "),o(),b(),o()()(),d(16,fi,4,0,"p"),o(),d(17,_i,28,0)(18,lo,34,4,"ng-container",9),r(19,"div",10)(20,"button",11),C("click",function(){return h(a),y(n.goBack())}),r(21,"spk-icon"),l(22,"arrow-left"),o(),l(23," Go back "),o(),r(24,"button",12)(25,"spk-icon"),l(26,"arrow-right"),o(),l(27," Continue "),o()()(),d(28,so,16,4,"spk-dialog",13)}if(e&2){let a;c("formGroup",n.destinationForm),s(6),_(n.destinationCount()>0?6:-1),s(10),_(n.destinationCount()>0?16:-1),s(),_(n.destinationCount()===0?17:-1),s(),_(!((a=n.destinationFormSignal())==null||a.destinations==null)&&a.destinations.length?18:-1),s(10),_(n.targetUrlDialogOpen()?28:-1)}},dependencies:[me,re,se,pe,ne,we,xe,ie,oe,Pt,ae,le,Se,It,Ze,de,ue,tt,et,nt,ce,ve,Me,Gt,Xe,Fe,Ae],styles:["[_nghost-%COMP%]{display:block}header[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%], header[_ngcontent-%COMP%] spk-alert[_ngcontent-%COMP%]{width:100%}header[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;gap:.5rem}header[_ngcontent-%COMP%] p[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{cursor:pointer;text-decoration:underline}header[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{display:flex;gap:.5rem}pre[_ngcontent-%COMP%]{white-space:pre-wrap}.field-row[_ngcontent-%COMP%]{display:grid;align-items:flex-end;grid-template-columns:1fr 2.5rem;gap:.5rem}.field-row.single-field[_ngcontent-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}.form-column[_ngcontent-%COMP%]{display:flex;flex-direction:column}.form-column[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.25rem}.form-column[_ngcontent-%COMP%] spk-icon[_ngcontent-%COMP%]{font-size:1rem}.form-row[_ngcontent-%COMP%]{display:grid;grid-template-columns:2fr 1fr;gap:.5rem;align-items:flex-end}.clickable[_ngcontent-%COMP%]{cursor:pointer;color:var(--primary-500)}.most-common-destinations[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.most-common-destinations[_ngcontent-%COMP%] .tile[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border:1px solid var(--base-level-40);border-radius:var(--shape-3);box-shadow:var(--shadow-1);background-color:var(--base-level-20);cursor:pointer}.most-common-destinations[_ngcontent-%COMP%] .tile[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font:var(--paragraph-10);margin:0}[prefix].link[_ngcontent-%COMP%]{cursor:pointer;text-decoration:underline;color:var(--primary-500)}textarea[_ngcontent-%COMP%] ~ grammarly-extension[_ngcontent-%COMP%]{display:none}"],changeDetection:0})};export{jt as a,qt as b,yt as c,Bt as d,_t as e,ft as f,Ut as g,nr as h,gt as i,Lt as j,Ct as k,zt as l,ht as m,K as n};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as a,k as b}from"./chunk-
|
|
1
|
+
import{j as a,k as b}from"./chunk-FRD2BVV6.js";import"./chunk-ZSOWH34L.js";import"./chunk-SFRGISK2.js";import"./chunk-DNHLTHLR.js";import"./chunk-N6REZCKW.js";import"./chunk-73UOOUBD.js";import"./chunk-IEVRQDB6.js";import"./chunk-22ZYSOTR.js";import"./chunk-JNQHJPEL.js";import"./chunk-LZSE733H.js";import"./chunk-QHJTF3V4.js";import"./chunk-7CGTOI24.js";export{a as createScheduleForm,b as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{l as a,m as b}from"./chunk-
|
|
1
|
+
import{l as a,m as b}from"./chunk-FRD2BVV6.js";import"./chunk-ZSOWH34L.js";import"./chunk-SFRGISK2.js";import"./chunk-DNHLTHLR.js";import"./chunk-N6REZCKW.js";import"./chunk-73UOOUBD.js";import"./chunk-IEVRQDB6.js";import"./chunk-22ZYSOTR.js";import"./chunk-JNQHJPEL.js";import"./chunk-LZSE733H.js";import"./chunk-QHJTF3V4.js";import"./chunk-7CGTOI24.js";export{a as createSourceDataForm,b as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as k}from"./chunk-
|
|
1
|
+
import{n as k}from"./chunk-FRD2BVV6.js";import"./chunk-ZSOWH34L.js";import"./chunk-SFRGISK2.js";import{a as R}from"./chunk-5AC7O5ME.js";import"./chunk-6GOAPINI.js";import"./chunk-DNHLTHLR.js";import{b as l}from"./chunk-N6REZCKW.js";import"./chunk-73UOOUBD.js";import{a as P}from"./chunk-3ZEBM2Q6.js";import{n as I,o as T,s as O}from"./chunk-IEVRQDB6.js";import{a as C,b as F,d as y,e as L}from"./chunk-22ZYSOTR.js";import"./chunk-JNQHJPEL.js";import{a as _}from"./chunk-LZSE733H.js";import{B as h,Gb as c,Nb as B,Oa as r,Ob as D,Rb as m,W as d,Y as b,ab as g,cb as u,gc as v,hb as S,lb as p,mb as s,nb as o}from"./chunk-QHJTF3V4.js";import"./chunk-7CGTOI24.js";var w=(t,e)=>[t,e,"general"],A=(t,e)=>[t,e,"destination"],M=(t,e)=>[t,e,"source-data"],G=(t,e)=>[t,e,"schedule"],x=(t,e)=>[t,e,"options"];function N(t,e){t&1&&o(0,"spk-progress-bar",1)}function V(t,e){t&1&&(p(0,"section"),o(1,"router-outlet"),s())}var f=class t{#t=d(C);#e=d(k);#a=d(P);#i=d(_);isDraft=this.#e.isDraft;backupId=this.#e.backupId;finishedLoading=this.#e.finishedLoading;#n=l(this.#t.params);#o=l(this.#t.url);paramsChanged=v(()=>{let e=this.#n()?.id,a=!!this.#o()?.find(i=>i.path==="backup-draft");this.#e.backupId.set(e),e!=="new"?this.getBackup(e,a):this.getDefaults()},{allowSignalWrites:!0});getDefaults(){this.#i.getApiV1Backupdefaults().pipe(h(1)).subscribe({next:e=>{this.#e.mapScheduleToForm(e.Schedule),this.#e.mapOptionsToForms(e.Backup),this.#e.backupDefaults.set(e),this.#e.finishedLoading.set(!0)}})}getBackup(e,a=!1){let i=n=>{this.#e.mapScheduleToForm(n.Schedule??null),n.Backup&&(this.#e.mapGeneralToForm(n.Backup),this.#e.mapDestinationToForm(n.Backup),this.#e.mapSourceDataToForm(n.Backup),this.#e.mapOptionsToForms(n.Backup)),this.#e.finishedLoading.set(!0)};if(a){this.isDraft.set(a);let n=this.#a.draftBackups().find(E=>E.id===e);if(!n){alert("Backup not found");return}i(n.data)}else this.#i.getApiV1BackupById({id:e}).subscribe({next:i})}static \u0275fac=function(a){return new(a||t)};static \u0275cmp=b({type:t,selectors:[["app-backup"]],standalone:!0,features:[B([k]),D],decls:19,vars:21,consts:[["step","","routerLinkActive","active",3,"routerLink"],[1,"indeterminate","primary"]],template:function(a,i){a&1&&(o(0,"app-status-bar"),p(1,"spk-stepper")(2,"div",0),o(3,"spk-radio"),c(4," General "),s(),p(5,"div",0),o(6,"spk-radio"),c(7," Destination "),s(),p(8,"div",0),o(9,"spk-radio"),c(10," Source Data "),s(),p(11,"div",0),o(12,"spk-radio"),c(13," Schedule "),s(),p(14,"div",0),o(15,"spk-radio"),c(16," Options "),s()(),g(17,N,1,0,"spk-progress-bar",1)(18,V,2,0,"section")),a&2&&(r(2),u("routerLink",m(6,w,i.isDraft()?"/backup-draft":"/backup",i.backupId())),r(3),u("routerLink",m(9,A,i.isDraft()?"/backup-draft":"/backup",i.backupId())),r(3),u("routerLink",m(12,M,i.isDraft()?"/backup-draft":"/backup",i.backupId())),r(3),u("routerLink",m(15,G,i.isDraft()?"/backup-draft":"/backup",i.backupId())),r(3),u("routerLink",m(18,x,i.isDraft()?"/backup-draft":"/backup",i.backupId())),r(3),S(i.finishedLoading()?18:17))},dependencies:[F,y,L,R,T,O,I],styles:["[_nghost-%COMP%]{display:block}spk-stepper[_ngcontent-%COMP%]{max-width:32.5rem;margin:2.5rem auto}section[_ngcontent-%COMP%]{max-width:32.5rem;margin:0 auto 2.5rem}"],changeDetection:0})};export{f as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as a,h as b,i as c}from"./chunk-
|
|
1
|
+
import{g as a,h as b,i as c}from"./chunk-FRD2BVV6.js";import"./chunk-ZSOWH34L.js";import"./chunk-SFRGISK2.js";import"./chunk-DNHLTHLR.js";import"./chunk-N6REZCKW.js";import"./chunk-73UOOUBD.js";import"./chunk-IEVRQDB6.js";import"./chunk-22ZYSOTR.js";import"./chunk-JNQHJPEL.js";import"./chunk-LZSE733H.js";import"./chunk-QHJTF3V4.js";import"./chunk-7CGTOI24.js";export{b as createAdvancedOption,a as createOptionsForm,c as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{d as a,e as b,f as c}from"./chunk-
|
|
1
|
+
import{d as a,e as b,f as c}from"./chunk-FRD2BVV6.js";import"./chunk-ZSOWH34L.js";import"./chunk-SFRGISK2.js";import"./chunk-DNHLTHLR.js";import"./chunk-N6REZCKW.js";import"./chunk-73UOOUBD.js";import"./chunk-IEVRQDB6.js";import"./chunk-22ZYSOTR.js";import"./chunk-JNQHJPEL.js";import"./chunk-LZSE733H.js";import"./chunk-QHJTF3V4.js";import"./chunk-7CGTOI24.js";export{b as NONE_OPTION,a as createGeneralForm,c as default};
|
package/index.html
CHANGED
|
@@ -20,5 +20,5 @@
|
|
|
20
20
|
<style>:root{--font-size:16px;font-size:var(--font-size)}html body{--sparkle-light:initial;--sparkle-dark: ;color-scheme:light dark;--primary-50:#eff6ff;--primary-rgb-50:239,246,255;--primary-contrast-50:var(--dark-primary-text);--primary-100:#dbeafe;--primary-rgb-100:219,234,254;--primary-contrast-100:var(--dark-primary-text);--primary-200:#bfdbfe;--primary-rgb-200:191,219,254;--primary-contrast-200:var(--dark-primary-text);--primary-300:#93c5fd;--primary-rgb-300:147,197,253;--primary-contrast-300:var(--dark-primary-text);--primary-400:#60a5fa;--primary-rgb-400:96,165,250;--primary-contrast-400:var(--dark-primary-text);--primary-500:#3b82f6;--primary-rgb-500:59,130,246;--primary-contrast-500:var(--light-primary-text);--primary-600:#2563eb;--primary-rgb-600:37,99,235;--primary-contrast-600:var(--light-primary-text);--primary-700:#1d4ed8;--primary-rgb-700:29,78,216;--primary-contrast-700:var(--light-primary-text);--primary-800:#1e40af;--primary-rgb-800:30,64,175;--primary-contrast-800:var(--light-primary-text);--primary-900:#1e3a8a;--primary-rgb-900:30,58,138;--primary-contrast-900:var(--light-primary-text);--primary-950:#172554;--primary-rgb-950:23,37,84;--primary-contrast-950:var(--light-primary-text);--accent-50:#f5f3ff;--accent-rgb-50:245,243,255;--accent-contrast-50:var(--dark-primary-text);--accent-100:#ede9fe;--accent-rgb-100:237,233,254;--accent-contrast-100:var(--dark-primary-text);--accent-200:#ddd6fe;--accent-rgb-200:221,214,254;--accent-contrast-200:var(--dark-primary-text);--accent-300:#c4b5fd;--accent-rgb-300:196,181,253;--accent-contrast-300:var(--dark-primary-text);--accent-400:#a78bfa;--accent-rgb-400:167,139,250;--accent-contrast-400:var(--dark-primary-text);--accent-500:#8b5cf6;--accent-rgb-500:139,92,246;--accent-contrast-500:var(--light-primary-text);--accent-600:#7c3aed;--accent-rgb-600:124,58,237;--accent-contrast-600:var(--light-primary-text);--accent-700:#6d28d9;--accent-rgb-700:109,40,217;--accent-contrast-700:var(--light-primary-text);--accent-800:#5b21b6;--accent-rgb-800:91,33,182;--accent-contrast-800:var(--light-primary-text);--accent-900:#4c1d95;--accent-rgb-900:76,29,149;--accent-contrast-900:var(--light-primary-text);--accent-950:#2e1065;--accent-rgb-950:46,16,101;--accent-contrast-950:var(--light-primary-text);--tertiary-50:#fffbeb;--tertiary-rgb-50:255,251,235;--tertiary-contrast-50:var(--dark-primary-text);--tertiary-100:#fef3c7;--tertiary-rgb-100:254,243,199;--tertiary-contrast-100:var(--dark-primary-text);--tertiary-200:#fde68a;--tertiary-rgb-200:253,230,138;--tertiary-contrast-200:var(--dark-primary-text);--tertiary-300:#fcd34d;--tertiary-rgb-300:252,211,77;--tertiary-contrast-300:var(--dark-primary-text);--tertiary-400:#fbbf24;--tertiary-rgb-400:251,191,36;--tertiary-contrast-400:var(--light-primary-text);--tertiary-500:#f59e0b;--tertiary-rgb-500:245,158,11;--tertiary-contrast-500:var(--light-primary-text);--tertiary-600:#d97706;--tertiary-rgb-600:217,119,6;--tertiary-contrast-600:var(--light-primary-text);--tertiary-700:#b45309;--tertiary-rgb-700:180,83,9;--tertiary-contrast-700:var(--light-primary-text);--tertiary-800:#92400e;--tertiary-rgb-800:146,64,14;--tertiary-contrast-800:var(--light-primary-text);--tertiary-900:#78350f;--tertiary-rgb-900:120,53,15;--tertiary-contrast-900:var(--light-primary-text);--tertiary-950:#451a03;--tertiary-rgb-950:69,26,3;--tertiary-contrast-950:var(--light-primary-text);--grey-50:#fafafa;--grey-rgb-50:250,250,250;--grey-contrast-50:var(--dark-primary-text);--grey-100:#f4f4f5;--grey-rgb-100:244,244,245;--grey-contrast-100:var(--dark-primary-text);--grey-200:#e4e4e7;--grey-rgb-200:228,228,231;--grey-contrast-200:var(--dark-primary-text);--grey-300:#d4d4d8;--grey-rgb-300:212,212,216;--grey-contrast-300:var(--dark-primary-text);--grey-400:#a1a1aa;--grey-rgb-400:161,161,170;--grey-contrast-400:var(--dark-primary-text);--grey-500:#71717a;--grey-rgb-500:113,113,122;--grey-contrast-500:var(--light-primary-text);--grey-600:#52525b;--grey-rgb-600:82,82,91;--grey-contrast-600:var(--light-primary-text);--grey-700:#3f3f46;--grey-rgb-700:63,63,70;--grey-contrast-700:var(--light-primary-text);--grey-750:#2f2f31;--grey-rgb-750:47,47,49;--grey-contrast-750:var(--light-primary-text);--grey-800:#27272a;--grey-rgb-800:39,39,42;--grey-contrast-800:var(--light-primary-text);--grey-900:#18181b;--grey-rgb-900:24,24,27;--grey-contrast-900:var(--light-primary-text);--grey-950:#09090b;--grey-rgb-950:9,9,11;--grey-contrast-950:var(--light-primary-text);--warn-50:#fef2f2;--warn-rgb-50:254,242,242;--warn-contrast-50:var(--dark-primary-text);--warn-100:#fee2e2;--warn-rgb-100:254,226,226;--warn-contrast-100:var(--dark-primary-text);--warn-200:#fecaca;--warn-rgb-200:254,202,202;--warn-contrast-200:var(--dark-primary-text);--warn-300:#fca5a5;--warn-rgb-300:252,165,165;--warn-contrast-300:var(--dark-primary-text);--warn-400:#f87171;--warn-rgb-400:248,113,113;--warn-contrast-400:var(--light-primary-text);--warn-500:#ef4444;--warn-rgb-500:239,68,68;--warn-contrast-500:var(--light-primary-text);--warn-600:#dc2626;--warn-rgb-600:220,38,38;--warn-contrast-600:var(--light-primary-text);--warn-700:#b91c1c;--warn-rgb-700:185,28,28;--warn-contrast-700:var(--light-primary-text);--warn-800:#991b1b;--warn-rgb-800:153,27,27;--warn-contrast-800:var(--light-primary-text);--warn-900:#7f1d1d;--warn-rgb-900:127,29,29;--warn-contrast-900:var(--light-primary-text);--warn-950:#450a0a;--warn-rgb-950:69,10,10;--warn-contrast-950:var(--light-primary-text);--success-50:#ecfdf5;--success-rgb-50:236,253,245;--success-contrast-50:var(--dark-primary-text);--success-100:#d1fae5;--success-rgb-100:209,250,229;--success-contrast-100:var(--dark-primary-text);--success-200:#a7f3d0;--success-rgb-200:167,243,208;--success-contrast-200:var(--dark-primary-text);--success-300:#6ee7b7;--success-rgb-300:110,231,183;--success-contrast-300:var(--dark-primary-text);--success-400:#34d399;--success-rgb-400:52,211,153;--success-contrast-400:var(--light-primary-text);--success-500:#10b981;--success-rgb-500:16,185,129;--success-contrast-500:var(--light-primary-text);--success-600:#059669;--success-rgb-600:5,150,105;--success-contrast-600:var(--light-primary-text);--success-700:#047857;--success-rgb-700:4,120,87;--success-contrast-700:var(--light-primary-text);--success-800:#065f46;--success-rgb-800:6,95,70;--success-contrast-800:var(--light-primary-text);--success-900:#064e3b;--success-rgb-900:6,78,59;--success-contrast-900:var(--light-primary-text);--success-950:#022c22;--success-rgb-950:2,44,34;--success-contrast-950:var(--light-primary-text);--display-10:600 5rem / normal Inter Tight, sans-serif;--display-20:600 4.5rem / normal Inter Tight, sans-serif;--display-30:600 4rem / normal Inter Tight, sans-serif;--display-40:600 3.5rem / normal Inter Tight, sans-serif;--display-50:600 3rem / normal Inter Tight, sans-serif;--title-10:500 2.5rem / normal Inter Tight, sans-serif;--title-20:500 2rem / normal Inter Tight, sans-serif;--title-30:500 1.5rem / normal Inter Tight, sans-serif;--title-10B:600 2.5rem / normal Inter Tight, sans-serif;--title-20B:600 2rem / normal Inter Tight, sans-serif;--title-30B:600 1.5rem / normal Inter Tight, sans-serif;--paragraph-10:500 1.125rem / normal Inter Tight, sans-serif;--paragraph-20:500 1rem / normal Inter Tight, sans-serif;--paragraph-30:500 .875rem / normal Inter Tight, sans-serif;--paragraph-40:500 .75rem / normal Inter Tight, sans-serif;--paragraph-10B:600 1.125rem / normal Inter Tight, sans-serif;--paragraph-20B:600 1rem / normal Inter Tight, sans-serif;--paragraph-30B:600 .875rem / normal Inter Tight, sans-serif;--paragraph-40B:600 .75rem / normal Inter Tight, sans-serif;--shape-1:.25rem;--shape-2:.5rem;--shape-3:.75rem;--shape-4:1rem;--shape-5:1.25rem;--box-shadow-10:0 1px 2px 0 rgba(18, 18, 23, .07);--box-shadow-20:0 1px 3px 0 rgba(18, 18, 23, .1);--box-shadow-30:0 1px 4px -1px rgba(18, 18, 23, .08);--box-shadow-35:0 4px 6px -1px rgba(18, 18, 23, .08);--box-shadow-40:0 10px 15px -3px rgba(18, 18, 23, .08);--box-shadow-50:0 20px 25px -5px rgba(18, 18, 23, .1);--box-shadow-60:0 25px 50px -12px rgba(18, 18, 23, .25);--base-level-10:var(--sparkle-light, #fff) var(--sparkle-dark, var(--grey-950));--base-level-20:var(--sparkle-light, var(--grey-50)) var(--sparkle-dark, var(--grey-900));--base-level-30:var(--sparkle-light, var(--grey-100)) var(--sparkle-dark, var(--grey-900));--base-level-30R:var(--sparkle-light, var(--grey-900)) var(--sparkle-dark, var(--grey-100));--base-level-40:var(--sparkle-light, var(--grey-200)) var(--sparkle-dark, var(--grey-700));--base-level-50:var(--sparkle-light, var(--grey-300)) var(--sparkle-dark, var(--grey-800));--base-level-60:var(--sparkle-light, var(--grey-500)) var(--sparkle-dark, var(--grey-400));--base-level-60R:var(--sparkle-light, var(--grey-400)) var(--sparkle-dark, var(--grey-500));--base-level-70:var(--sparkle-light, var(--grey-900)) var(--sparkle-dark, #fff);--base-level-70R:var(--sparkle-light, #fff) var(--sparkle-dark, var(--grey-900));--base-gradient-20:linear-gradient(180deg, var(--grey-400) 0%, var(--grey-500) 50%);--base-gradient-30:linear-gradient(180deg, var(--grey-300) 0%, var(--grey-500) 50%);--base-gradient-60:linear-gradient(180deg, var(--grey-700) 0%, var(--grey-900) 50%);--base-gradient-70:linear-gradient(180deg, var(--grey-600) 0%, var(--grey-900) 50%);--primary-level-20:var(--sparkle-light, var(--primary-50)) var(--sparkle-dark, var(--primary-950));--primary-level-30:var(--sparkle-light, var(--primary-100)) var(--sparkle-dark, var(--primary-900));--primary-level-40:var(--sparkle-light, var(--primary-200)) var(--sparkle-dark, var(--primary-800));--primary-level-50:var(--sparkle-light, var(--primary-300)) var(--sparkle-dark, var(--primary-800));--primary-level-50R:var(--sparkle-light, var(--primary-800)) var(--sparkle-dark, var(--primary-300));--primary-level-80:var(--sparkle-light, var(--primary-900)) var(--sparkle-dark, var(--primary-300));--primary-gradient-20:linear-gradient(180deg, var(--primary-400) 0%, var(--primary-500) 50%);--primary-gradient-30:linear-gradient(180deg, var(--primary-300) 0%, var(--primary-500) 50%);--accent-level-20:var(--sparkle-light, var(--accent-50)) var(--sparkle-dark, var(--accent-950));--accent-level-30:var(--sparkle-light, var(--accent-100)) var(--sparkle-dark, var(--accent-900));--accent-level-40:var(--sparkle-light, var(--accent-200)) var(--sparkle-dark, var(--accent-800));--accent-level-50:var(--sparkle-light, var(--accent-300)) var(--sparkle-dark, var(--accent-800));--accent-level-50R:var(--sparkle-light, var(--accent-800)) var(--sparkle-dark, var(--accent-300));--accent-level-80:var(--sparkle-light, var(--accent-900)) var(--sparkle-dark, var(--accent-300));--accent-gradient-20:linear-gradient(180deg, var(--accent-400) 0%, var(--accent-500) 50%);--accent-gradient-30:linear-gradient(180deg, var(--accent-300) 0%, var(--accent-500) 50%);--tertiary-level-20:var(--sparkle-light, var(--tertiary-50)) var(--sparkle-dark, var(--tertiary-950));--tertiary-level-30:var(--sparkle-light, var(--tertiary-100)) var(--sparkle-dark, var(--tertiary-900));--tertiary-level-40:var(--sparkle-light, var(--tertiary-200)) var(--sparkle-dark, var(--tertiary-800));--tertiary-level-50:var(--sparkle-light, var(--tertiary-300)) var(--sparkle-dark, var(--tertiary-800));--tertiary-level-50R:var(--sparkle-light, var(--tertiary-800)) var(--sparkle-dark, var(--tertiary-300));--tertiary-level-80:var(--sparkle-light, var(--tertiary-900)) var(--sparkle-dark, var(--tertiary-300));--tertiary-gradient-20:linear-gradient(180deg, var(--tertiary-400) 0%, var(--tertiary-500) 50%);--tertiary-gradient-30:linear-gradient(180deg, var(--tertiary-300) 0%, var(--tertiary-500) 50%);--warn-level-20:var(--sparkle-light, var(--warn-50)) var(--sparkle-dark, var(--warn-950));--warn-level-30:var(--sparkle-light, var(--warn-100)) var(--sparkle-dark, var(--warn-900));--warn-level-40:var(--sparkle-light, var(--warn-200)) var(--sparkle-dark, var(--warn-800));--warn-level-50:var(--sparkle-light, var(--warn-300)) var(--sparkle-dark, var(--warn-800));--warn-level-50R:var(--sparkle-light, var(--warn-800)) var(--sparkle-dark, var(--warn-300));--warn-level-80:var(--sparkle-light, var(--warn-900)) var(--sparkle-dark, var(--warn-300));--warn-gradient-20:linear-gradient(180deg, var(--warn-400) 0%, var(--warn-500) 50%);--warn-gradient-30:linear-gradient(180deg, var(--warn-300) 0%, var(--warn-500) 50%);--success-level-20:var(--sparkle-light, var(--success-50)) var(--sparkle-dark, var(--success-950));--success-level-30:var(--sparkle-light, var(--success-100)) var(--sparkle-dark, var(--success-900));--success-level-40:var(--sparkle-light, var(--success-200)) var(--sparkle-dark, var(--success-800));--success-level-50:var(--sparkle-light, var(--success-300)) var(--sparkle-dark, var(--success-800));--success-level-50R:var(--sparkle-light, var(--success-800)) var(--sparkle-dark, var(--success-300));--success-level-80:var(--sparkle-light, var(--success-900)) var(--sparkle-dark, var(--success-300));--success-gradient-20:linear-gradient(180deg, var(--success-400) 0%, var(--success-500) 50%);--success-gradient-30:linear-gradient(180deg, var(--success-300) 0%, var(--success-500) 50%);--dark-primary-text:var(--grey-900);--light-primary-text:#fff}*{box-sizing:border-box}html,body,app-root{width:100vw;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--base-level-20)}body{margin:0;font:var(--paragraph-30);color:var(--base-level-70)}</style><link rel="stylesheet" href="styles-LL6J7JBI.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles-LL6J7JBI.css"></noscript></head>
|
|
21
21
|
<body>
|
|
22
22
|
<app-root></app-root>
|
|
23
|
-
<link rel="modulepreload" href="chunk-SFRGISK2.js"><link rel="modulepreload" href="chunk-Q76L4VLC.js"><link rel="modulepreload" href="chunk-VC4GI7EV.js"><link rel="modulepreload" href="chunk-6GOAPINI.js"><link rel="modulepreload" href="chunk-IEVRQDB6.js"><link rel="modulepreload" href="chunk-22ZYSOTR.js"><link rel="modulepreload" href="chunk-JNQHJPEL.js"><link rel="modulepreload" href="chunk-LZSE733H.js"><link rel="modulepreload" href="chunk-QHJTF3V4.js"><link rel="modulepreload" href="chunk-7CGTOI24.js"><script src="main-
|
|
23
|
+
<link rel="modulepreload" href="chunk-SFRGISK2.js"><link rel="modulepreload" href="chunk-Q76L4VLC.js"><link rel="modulepreload" href="chunk-VC4GI7EV.js"><link rel="modulepreload" href="chunk-6GOAPINI.js"><link rel="modulepreload" href="chunk-IEVRQDB6.js"><link rel="modulepreload" href="chunk-22ZYSOTR.js"><link rel="modulepreload" href="chunk-JNQHJPEL.js"><link rel="modulepreload" href="chunk-LZSE733H.js"><link rel="modulepreload" href="chunk-QHJTF3V4.js"><link rel="modulepreload" href="chunk-7CGTOI24.js"><script src="main-KQJXLVHZ.js" type="module"></script></body>
|
|
24
24
|
</html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as ee}from"./chunk-SFRGISK2.js";import{a as w}from"./chunk-Q76L4VLC.js";import{a as S}from"./chunk-VC4GI7EV.js";import{b as oe}from"./chunk-6GOAPINI.js";import{c as te}from"./chunk-IEVRQDB6.js";import{a as _,b as Z,c as R,f as Q,g as X}from"./chunk-22ZYSOTR.js";import{a as q}from"./chunk-JNQHJPEL.js";import{d as Y}from"./chunk-LZSE733H.js";import{Ac as G,Bc as z,Cc as B,E as C,J as L,L as j,N as P,Ob as U,Q as h,T as W,Ua as c,W as s,Y as F,ac as D,d as x,gc as J,m as A,nb as H,x as V,xc as K,y as E,yc as $}from"./chunk-QHJTF3V4.js";import"./chunk-7CGTOI24.js";var ne={production:!0,baseUrl:"/api",machineServerUrl:"${WS_URL}",defaultTimeout:3e4};var m=new W("ENVIRONMENT");var I=class o{#o=s(Y);isLoaded=c(!1);webmodules=c(null);preload(e=!1){let t=this.#o.getApiV1Webmodules().pipe(P(n=>this.webmodules.set(n)),C(()=>this.isLoaded.set(!0)));if(e)return t;t.subscribe()}static \u0275fac=function(t){return new(t||o)};static \u0275prov=h({token:o,factory:o.\u0275fac,providedIn:"root"})};var re=[{path:"",children:[{path:"login",canActivate:[()=>s(w).token()!==null?s(R).navigate(["/"]):!0],loadComponent:()=>import("./chunk-BHQV6I5A.js")},{path:"logout",loadComponent:()=>import("./chunk-XDYHN4IQ.js")},{path:"",canActivate:[()=>V(s(ee).preload(!0),s(I).preload(!0))],loadComponent:()=>import("./chunk-37USSSCL.js"),children:[{path:"",loadComponent:()=>import("./chunk-OVWWCW76.js")},{path:"add-backup",loadComponent:()=>import("./chunk-VUEDXCG5.js")},{path:"backup/:id/export",loadComponent:()=>import("./chunk-XGBLG5PU.js")},{path:"backup/import",loadComponent:()=>import("./chunk-VOS5UL4W.js")},{path:"backup-draft/:id",loadComponent:()=>import("./chunk-
|
|
1
|
+
import{a as ee}from"./chunk-SFRGISK2.js";import{a as w}from"./chunk-Q76L4VLC.js";import{a as S}from"./chunk-VC4GI7EV.js";import{b as oe}from"./chunk-6GOAPINI.js";import{c as te}from"./chunk-IEVRQDB6.js";import{a as _,b as Z,c as R,f as Q,g as X}from"./chunk-22ZYSOTR.js";import{a as q}from"./chunk-JNQHJPEL.js";import{d as Y}from"./chunk-LZSE733H.js";import{Ac as G,Bc as z,Cc as B,E as C,J as L,L as j,N as P,Ob as U,Q as h,T as W,Ua as c,W as s,Y as F,ac as D,d as x,gc as J,m as A,nb as H,x as V,xc as K,y as E,yc as $}from"./chunk-QHJTF3V4.js";import"./chunk-7CGTOI24.js";var ne={production:!0,baseUrl:"/api",machineServerUrl:"${WS_URL}",defaultTimeout:3e4};var m=new W("ENVIRONMENT");var I=class o{#o=s(Y);isLoaded=c(!1);webmodules=c(null);preload(e=!1){let t=this.#o.getApiV1Webmodules().pipe(P(n=>this.webmodules.set(n)),C(()=>this.isLoaded.set(!0)));if(e)return t;t.subscribe()}static \u0275fac=function(t){return new(t||o)};static \u0275prov=h({token:o,factory:o.\u0275fac,providedIn:"root"})};var re=[{path:"",children:[{path:"login",canActivate:[()=>s(w).token()!==null?s(R).navigate(["/"]):!0],loadComponent:()=>import("./chunk-BHQV6I5A.js")},{path:"logout",loadComponent:()=>import("./chunk-XDYHN4IQ.js")},{path:"",canActivate:[()=>V(s(ee).preload(!0),s(I).preload(!0))],loadComponent:()=>import("./chunk-37USSSCL.js"),children:[{path:"",loadComponent:()=>import("./chunk-OVWWCW76.js")},{path:"add-backup",loadComponent:()=>import("./chunk-VUEDXCG5.js")},{path:"backup/:id/export",loadComponent:()=>import("./chunk-XGBLG5PU.js")},{path:"backup/import",loadComponent:()=>import("./chunk-VOS5UL4W.js")},{path:"backup-draft/:id",loadComponent:()=>import("./chunk-RWFWLGB7.js"),loadChildren:()=>import("./chunk-6RIA76HG.js")},{path:"backup/:id",loadComponent:()=>import("./chunk-RWFWLGB7.js"),loadChildren:()=>import("./chunk-6RIA76HG.js")},{path:"restore",loadComponent:()=>import("./chunk-WSTPDNCJ.js")},{path:"restore-flow/:id",loadComponent:()=>import("./chunk-IXLTPP72.js"),children:[{path:"",redirectTo:"select-files",pathMatch:"full"},{path:"select-files",loadComponent:()=>import("./chunk-ORCLDJSO.js")},{path:"options",loadComponent:()=>import("./chunk-C6XNKGG2.js")}]},{path:"settings",loadComponent:()=>import("./chunk-CLHK3WG3.js")},{path:"about",loadComponent:()=>import("./chunk-CLPPNSLN.js"),children:[{path:"",redirectTo:"general",pathMatch:"full"},{path:"general",loadComponent:()=>import("./chunk-EEZT434V.js")},{path:"changelog",loadComponent:()=>import("./chunk-ICNC6KVB.js")},{path:"libraries",loadComponent:()=>import("./chunk-Z7GRCDAT.js")},{path:"system-info",loadComponent:()=>import("./chunk-ZPJ6YV7Y.js")},{path:"logs",loadComponent:()=>import("./chunk-TKY4PPEK.js")}]}]}]}];var M=null,se=(o,e)=>{let t=s(w),n=s(R),p=s(m),i=s(te),l=o;return t.token()&&o.url.startsWith(p.baseUrl)&&(l=o.clone({headers:o.headers.set("Authorization",`Bearer ${t.token()}`)})),e(l).pipe(E(r=>{if(i.error(r.message),r.status===401&&!M&&(M=t.refreshToken().pipe(L())),r.status===401)return M.pipe(j(()=>e(o.clone({headers:o.headers.set("Authorization",`Bearer ${t.token()}`)}))),E(g=>(n.navigate(["/logout"]),A(()=>g))),C(()=>M=null));let a=`Error Code: ${r.status}, Message: ${r.message}`;return A(()=>({error:r,message:a}))}))};var ce="1.0.0",ie="portal-proxy-client",le=1,T=class o{#o=1e3;#n=s(m);#e=c("disconnected");#l=c(this.#o);#i=c(!1);#r=c(!1);#a=c(null);isConnectedToMachineServer=this.#r.asReadonly();wsState=this.#e.asReadonly();#p=[];#s={};#t=null;#m=new TextDecoder("utf-8");#c=null;#d=J(()=>{let e=this.#i(),t=this.#l(),n=this.#a();if(!n||!e||!t||t<this.#o){this.#c&&window.clearInterval(this.#c);return}this.#c=window.setInterval(()=>{this.connectToMachineServer(n)},t)});utf8Atob(e){let t=Uint8Array.from(atob(e),p=>p.charCodeAt(0)),n=this.#m.decode(t);return n?JSON.parse(n):null}connectToMachineServer(e,t){let n=t?.reconnect??!1;this.#t&&this.wsState()==="authenticated"&&!n||(this.#t&&this.wsState()!=="authenticated"&&this.#t.close(),this.#t=new WebSocket(this.#n.machineServerUrl),this.#t.onopen=()=>{this.#e.set("connect"),this.#r.set(!0),this.#i.set(!1),this.#a.set(null)},this.#t.onclose=()=>{this.#e.set("disconnected"),this.#r.set(!1),this.#a.set(e),this.#i.set(!0)},this.#t.onerror=()=>{this.#e.set("error")},this.#t.onmessage=p=>{let i=JSON.parse(p.data);if(this.wsState()==="connect"){if(i.type!=="welcome"){this.disconnectFromMachineServer(`Unexpected message type, expected 'welcome' but got '${i.type}'`);return}let r={token:e,publicKey:"",clientVersion:ce,protocolVersion:le},a=this.createResponse(i,"authportal",r);this.#e.set("welcome"),this.#t?.send(a)}else if(this.wsState()==="welcome"){if(i.type!=="authportal"){this.disconnectFromMachineServer(`Unexpected message type, expected 'authportal' but got '${i.type}'`);return}var l=JSON.parse(i.payload??"");if(l.accepted===!1){this.disconnectFromMachineServer("Authentication failed");return}for(this.#e.set("authenticated"),this.#r.set(!0);this.#p.length>0;){let r=this.#p.pop();r&&this.#s[r.messageId]&&this.activateCommand(r)}}else if(this.wsState()==="authenticated"){if(i.type!=="command"){console.warn(`Unexpected message type, expected 'command' but got '${i.type}'`);return}let r=this.#s[i.messageId];if(r){if(i.errorMessage){r.reject(i.errorMessage);return}else{let a=JSON.parse(i.payload??"");a.body=a?.body==null?null:this.utf8Atob(a.body),r.resolve(a)}delete this.#s[i.messageId],window.clearTimeout(r.timer)}}})}disconnectFromMachineServer(e=null){e&&console.error(e),this.#t?.close(),this.#t=null,this.#e.set("disconnected"),this.#r.set(!1)}createResponse(e,t,n){let p={from:ie,to:e.from,type:t,messageId:e.messageId,payload:JSON.stringify(n)};return JSON.stringify(p)}sendCommand(e,t,n,p,i,l,r=5e3){return(this.wsState()==="disconnected"||this.wsState()==="error")&&this.connectToMachineServer(e),new Promise((a,g)=>{let d=crypto.randomUUID(),y={from:ie,to:t,type:"command",messageId:d,payload:JSON.stringify({method:n,path:p,body:i,headers:l})},b={resolve:a,reject:g,timer:window.setTimeout(()=>{let v=this.#s[d];v&&(delete this.#s[d],v.reject("Timeout"))},r)};this.#s[d]=b,this.#r()?this.activateCommand(y):this.#p.push(y)})}activateCommand(e){this.#t?.send(JSON.stringify(e))}static \u0275fac=function(t){return new(t||o)};static \u0275prov=h({token:o,factory:o.\u0275fac,providedIn:"root"})};var f=class o{#o=c(null);config=this.#o.asReadonly();parentIframeListner=null;parentOrigin="*";fetchConfig(){this.#e(),this.parentIframeListner=new AbortController,this.#n("connected"),window.addEventListener("message",e=>{if(e.data.startsWith("access:")){let t=e.data.replace("access:",""),n=JSON.parse(t);if(!n?.accessToken||!n?.clientId){this.#n("error:invalid-config");return}if(typeof n.clientId!="string"){this.#n("error:invalid-config");return}if(typeof n.accessToken!="string"){this.#n("error:invalid-config");return}console.info("postMessage config set"),this.#o.set(n)}},{signal:this.parentIframeListner.signal})}#n(e){window.parent.postMessage(e,"*")}#e(){this.parentIframeListner&&(this.parentIframeListner.abort(),this.parentIframeListner=null)}setConfig(e){this.#o.set(e)}clearConfig(){this.#o.set(null)}static \u0275fac=function(t){return new(t||o)};static \u0275prov=h({token:o,factory:o.\u0275fac,providedIn:"root"})};function me(o){if(typeof o!="string")return null;let t=new TextEncoder().encode(o);return window.btoa(String.fromCharCode(...t))}var ae=(o,e)=>{let n=s(f).config(),p=s(m);if(n===null)return e(o);let i=s(T),l=me(o.body),r={};o.headers.keys().forEach(u=>{r[u]=o.headers.get(u)??""});let a=o.headers.get("timeout"),g=a!==null?parseInt(a):p.defaultTimeout,d=i.sendCommand(n.accessToken,n.clientId,o.method,o.url,l,r,g);return new x(u=>{d.then(y=>{let b=new K;r!=null&&Object.keys(r).forEach(N=>{b.set(N,r[N])});let v=new $({body:y.body,status:y.code,statusText:"OK",headers:b});u.next(v),u.complete()})})};var pe={providers:[D(),Q(re,X()),G(B(),z([ae,se])),S,{provide:m,useValue:ne},oe]};var k=class o{#o=s(S);#n=s(_);#e=s(f);sub=null;ngOnInit(){this.#e.fetchConfig(),this.sub=this.#n.queryParams.subscribe(({accessToken:e,clientId:t})=>{e?.length&&t?.length&&this.#e.setConfig({accessToken:e,clientId:t})}),this.#o.clearAllNotCurrentVersion()}ngOnDestroy(){this.sub?.unsubscribe()}static \u0275fac=function(t){return new(t||o)};static \u0275cmp=F({type:o,selectors:[["app-root"]],standalone:!0,features:[U],decls:1,vars:0,template:function(t,n){t&1&&H(0,"router-outlet")},dependencies:[Z],encapsulation:2})};q(k,pe).catch(o=>console.error(o));
|
package/package.json
CHANGED
package/chunk-GON5H26V.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import"./chunk-7CGTOI24.js";var o=[{path:"",redirectTo:"general",pathMatch:"full"},{path:"general",loadComponent:()=>import("./chunk-4SQTVC5T.js")},{path:"destination",loadComponent:()=>import("./chunk-7JBXSDSO.js")},{path:"source-data",loadComponent:()=>import("./chunk-ZACWBV3N.js")},{path:"schedule",loadComponent:()=>import("./chunk-KOPAOYHK.js")},{path:"options",loadComponent:()=>import("./chunk-QR4CYW4K.js")}];export{o as default};
|
package/chunk-OLIXIFDJ.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import{a as Me,b as Fe}from"./chunk-ZSOWH34L.js";import{a as Je}from"./chunk-SFRGISK2.js";import{a as dt,b as Rt}from"./chunk-DNHLTHLR.js";import{b as _e}from"./chunk-N6REZCKW.js";import{a as xe,b as te,c as fe,d as ne,e as ie,f as Nt,g as oe,h as we,j as Pt,k as re,l as Se,m as It,n as ae,o as le,p as se,q as U,s as pe}from"./chunk-73UOOUBD.js";import{a as me,b as Xe,d as Gt,e as Mt,g as ke,i as et,k as ce,m as tt,n as At,p as nt,q as de,t as ve,u as Ge}from"./chunk-IEVRQDB6.js";import{a as ee,c as q}from"./chunk-22ZYSOTR.js";import{a as Ie}from"./chunk-LZSE733H.js";import{Db as Z,E as He,Eb as J,Fb as X,Gb as l,Hb as I,Ib as k,Jb as vt,Kb as Ft,Lb as bt,Mb as Tt,Oa as s,Ob as j,Pb as Vt,Q as ye,Qb as De,Rb as Dt,Sb as Le,Ua as S,Va as Y,W as x,Wb as Ye,Y as z,ab as d,cb as c,eb as ue,ec as G,ga as h,gc as Ot,ha as y,hb as _,ib as V,jb as D,kb as O,la as wt,lb as r,mb as o,nb as u,ob as F,p as Ue,pb as b,qb as Ve,qc as Ze,rb as v,sa as St,sb as C,ta as kt,tb as p,wb as N,xb as P,yb as E,zc as Et}from"./chunk-QHJTF3V4.js";import{a as B,c as xt}from"./chunk-7CGTOI24.js";function Wt(t,i){if(t&1&&(r(0,"p"),l(1),o()),t&2){let e=p();s(),I(e._data().message)}}var Kt={title:"Are you sure?",confirmText:"Confirm",cancelText:"Cancel"},Oe=class t{data=kt();_data=G(()=>B(B({},Kt),this.data()));closed=St();close(i="confirm"){this.closed.emit(i==="confirm")}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=z({type:t,selectors:[["app-confirm-dialog"]],inputs:{data:[1,"data"]},outputs:{closed:"closed"},standalone:!0,features:[j],decls:10,vars:4,consts:[["header",""],["content",""],["footer",""],["spk-button","",1,"",3,"click"],["spk-button","",1,"raised","primary",3,"click"]],template:function(e,n){e&1&&(r(0,"header",0)(1,"h3"),l(2),o()(),r(3,"div",1),d(4,Wt,2,1,"p"),o(),r(5,"footer",2)(6,"button",3),C("click",function(){return n.close("cancel")}),l(7),o(),r(8,"button",4),C("click",function(){return n.close("confirm")}),l(9),o()()),e&2&&(s(2),I(n._data().title),s(2),_(n._data().message?4:-1),s(3),I(n._data().cancelText),s(2),I(n._data().confirmText))},styles:["[_nghost-%COMP%]{display:block}"],changeDetection:0})};var it=class t{fromString(i){if(!i)return null;let e=i.match(/(\d+)([smhDWMY])/);return e&&{value:parseInt(e[1]),unit:e[2]}}toString(i,e){return`${i}${e}`}static \u0275fac=function(e){return new(e||t)};static \u0275prov=ye({token:t,factory:t.\u0275fac,providedIn:"root"})};var je=class t{#e=x(Ie);#n(i){return(i.Result&&typeof i.Result=="object"&&Object.entries(i.Result).map(([e,n])=>({key:e,value:n})))??[]}getS3Config(i){return this.#e.postApiV1WebmoduleByModulekey({modulekey:"s3-getconfig",requestBody:{"s3-config":i}}).pipe(Ue(e=>this.#n(e)))}createS3IamUser(i,e){return this.#e.postApiV1WebmoduleByModulekey({modulekey:"s3-iamconfig",requestBody:{"s3-operation":"CanCreateUser","s3-username":i,"s3-password":e}})}createS3PolicyIAM(i){return this.#e.postApiV1WebmoduleByModulekey({modulekey:"s3-iamconfig",requestBody:{"s3-operation":"GetPolicyDoc",path:i}})}getStorjConfig(i){return this.#e.postApiV1WebmoduleByModulekey({modulekey:"storj-getconfig",requestBody:{"storj-config":i}}).pipe(Ue(e=>this.#n(e)))}getOpenstackConfig(i){return this.#e.postApiV1WebmoduleByModulekey({modulekey:"openstack-getconfig",requestBody:{"openstack-config":i}}).pipe(Ue(e=>this.#n(e)))}gcsConfigLocations=_e(this.getGcsConfig("Locations"));gcsConfigStorageClasses=_e(this.getGcsConfig("StorageClasses"));getGcsConfig(i){return this.#e.postApiV1WebmoduleByModulekey({modulekey:"gcs-getconfig",requestBody:{"gcs-config":i}}).pipe(Ue(e=>this.#n(e)))}static \u0275fac=function(e){return new(e||t)};static \u0275prov=ye({token:t,factory:t.\u0275fac,providedIn:"root"})};var be=new U,qe={file:{customFields:{path:{type:"FolderTree",name:"path",shortDescription:"File path",longDescription:"The path to store the backup",formElement:t=>be.control(t??"")}}},ssh:{customFields:{server:{type:"String",name:"server",shortDescription:"Server",longDescription:"The server to connect to",formElement:t=>be.control(t??"")},port:{type:"Integer",name:"port",shortDescription:"Port",longDescription:"The port to connect to",formElement:t=>be.control(t??"",[fe.required,fe.max(65535)])},path:{type:"Path",name:"path",shortDescription:"Folder path",longDescription:"Folder path",formElement:t=>be.control(t??"")}},dynamicFields:["auth-username"],advancedFields:[{type:"FileTree",name:"ssh-keyfile",accepts:".key,",shortDescription:"This is a path to a private key file locally on the machine",longDescription:"This is a path to a private key file locally on the machine"}]},s3:{customFields:{bucket:{type:"String",name:"bucket",shortDescription:"Bucket name",longDescription:"Bucket name",formElement:t=>be.control(t??"")},path:{type:"Path",name:"path",shortDescription:"Folder path",longDescription:"Folder path",formElement:t=>be.control(t??"")}},dynamicFields:["use-ssl","s3-server-name","auth-username","auth-password"]},gcs:{oauthField:"authid",customFields:{path:{type:"Path",name:"path",shortDescription:"Bucket name",longDescription:"Bucket name",formElement:t=>be.control(t??"")}},dynamicFields:[{name:"gcs-location",type:"NonValidatedSelectableString",loadOptions:t=>t.get(je).gcsConfigLocations},{name:"gcs-storage-class",type:"NonValidatedSelectableString",loadOptions:t=>t.get(je).gcsConfigStorageClasses},"authid"]},googledrive:{oauthField:"authid",customFields:{path:{type:"Path",name:"path",shortDescription:"Folder path",longDescription:"Folder path",formElement:t=>be.control(t??"")}},dynamicFields:["authid"]}};function Ae(t,i){let e={},n={};return i.searchParams.forEach((a,m)=>{qe[t].dynamicFields?.includes(m)?n[m]=decodeURIComponent(a):e[m]=decodeURIComponent(a)}),{advanced:e,dynamic:n}}function We(t){let i=t.map(([e,n])=>`${e}=${n?encodeURIComponent(n.toString()):""}`).join("&");return i?"?"+i:""}var Re={file:{to:t=>{let i=We([...Object.entries(t.advanced),...Object.entries(t.dynamic)]);return`${t.destinationType}://${t.custom.path}${i}`},from:(t,i,e)=>{let n=e.indexOf("file:///")===0,a=e.split(n?"///":"//")[1].substring(0,1)+i.hostname.substring(1);return B({destinationType:t,custom:{path:`${n?"/":""}${a}${i.pathname}`}},Ae(t,i))}},ssh:{to:t=>{let i=We([...Object.entries(t.advanced),...Object.entries(t.dynamic)]);return`${t.destinationType}://${t.custom.server}${t.custom.port?":"+t.custom.port:""}${t.custom.path.startsWith("/")?t.custom.path:"/"+t.custom.path}${i}`},from:(t,i,e)=>B({destinationType:t,custom:{server:i.hostname,port:i.port,path:i.pathname}},Ae(t,i))},s3:{to:t=>{let i=We([...Object.entries(t.advanced),...Object.entries(t.dynamic)]);return`${t.destinationType}://${t.custom.bucket}${t.custom.path}${i}`},from:(t,i,e)=>B({destinationType:t,custom:{path:i.pathname,bucket:i.hostname}},Ae(t,i))},gcs:{to:t=>{let i=We([...Object.entries(t.advanced),...Object.entries(t.dynamic)]);return`${t.destinationType}://${t.custom.path}${i}`},from:(t,i,e)=>{let{advanced:n,dynamic:a}=Ae(t,i);return{destinationType:t,custom:{path:i.hostname+i.pathname},dynamic:a,advanced:n}}},googledrive:{to:t=>{let i=t.custom.path,e=We([...Object.entries(t.advanced),...Object.entries(t.dynamic)]);return`${t.destinationType}://${i}${e}`},from:(t,i,e)=>{let{advanced:n,dynamic:a}=Ae(t,i);return{destinationType:t,custom:{path:i.hostname+i.pathname},dynamic:a,advanced:n}}},fallbackMapper:{to:t=>"",from:(t,i,e)=>B({destinationType:t},Ae(t,i))}};function ot(t){let i=t.destinationType;return!i||!Re.hasOwnProperty(i)?Re.fallbackMapper.to(t)??"":Re[i].to(t)??""}function ut(t){let i=URL.canParse(t),e=t.split("://")[0],n="http://"+t.split("://")[1],a=new URL(n);if(!Re.hasOwnProperty(e))return Re.fallbackMapper.from(e,a);if(!i)throw new Error("Invalid target path");return Re[e].from(e,a,t)}var $t=/[a-zA-Z0-9_\-\+\.!@#$%^&*?_~()-]/,rt=class t{generate(i,e=$t){let n;do n=this.generatePassword(i,e);while(this.calculatePasswordStrength(n)<5);return n}generatePassword(i,e=$t){let n=this;return Array.apply(null,{length:i}).map(()=>{let a;for(;;)if(a=String.fromCharCode(n.#e()),e.test(a))return a},this).join("")}calculatePasswordStrength(i){let e=1;return i.length>=8&&e++,i.match(/[a-z]/)&&i.match(/[A-Z]/)&&e++,i.match(/\d+/)&&e++,i.match(/.[!,@,#,$,%,^,&,*,?,_,~,(,),-]/)&&e++,Math.min(e,5)}#e(){if(window.crypto&&window.crypto.getRandomValues){let i=new Uint8Array(1);return window.crypto.getRandomValues(i),i[0]}else if(window.msCrypto&&window.msCrypto.getRandomValues){let i=new Uint8Array(1);return window.msCrypto.getRandomValues(i),i[0]}else return Math.floor(Math.random()*256)}static \u0275fac=function(e){return new(e||t)};static \u0275prov=ye({token:t,factory:t.\u0275fac,providedIn:"root"})};var Qt=["formRef"];function Yt(t,i){if(t&1&&(r(0,"option",14),l(1),o()),t&2){let e=i.$implicit;c("value",e.Key),s(),I(e.DisplayName)}}function Zt(t,i){if(t&1&&u(0,"spk-progress-bar",25),t&2){let e=p(3);ue("warn",e.calculatePasswordStrength()===1)("tertiary",e.calculatePasswordStrength()===2)("primary",e.calculatePasswordStrength()===4)("success",e.calculatePasswordStrength()===5),c("value",e.calculatePasswordStrength()*(100/5))}}function Jt(t,i){t&1&&(r(0,"span",20),l(1,"Passwords do not match"),o())}function Xt(t,i){t&1&&(r(0,"spk-icon"),l(1,"eye-slash"),o(),l(2," hide "))}function en(t,i){t&1&&(r(0,"spk-icon"),l(1,"eye"),o(),l(2," show "))}function tn(t,i){t&1&&(r(0,"spk-icon",27),l(1,"check"),o())}function nn(t,i){t&1&&(r(0,"spk-icon"),l(1,"copy"),o())}function on(t,i){if(t&1){let e=v();r(0,"button",26),C("click",function(){h(e);let a=p(3);return y(a.copyPassword())}),d(1,tn,2,0,"spk-icon",27)(2,nn,2,0,"spk-icon"),l(3),o()}if(t&2){let e=p(3);s(),_(e.copiedPassword()?1:2),s(2),k(" ",e.copiedPassword()?"Copied":"Copy"," password ")}}function rn(t,i){t&1&&(r(0,"spk-alert",24),l(1," Tip: Be sure to save your password. If you loose it you will lose access to your backups. "),o())}function an(t,i){if(t&1){let e=v();r(0,"div",15)(1,"spk-form-field")(2,"label",16),l(3," Create a password "),r(4,"sup"),l(5,"*"),o()(),u(6,"input",17),o(),d(7,Zt,1,9,"spk-progress-bar",18),r(8,"spk-form-field"),u(9,"input",19),d(10,Jt,2,0,"span",20),o(),r(11,"div",21)(12,"button",22),C("click",function(){h(e);let a=p(2);return y(a.showPassword.set(!a.showPassword()))}),d(13,Xt,3,0)(14,en,3,0),o(),r(15,"button",22),C("click",function(){h(e);let a=p(2);return y(a.generatePassword())}),r(16,"spk-icon"),l(17,"password"),o(),l(18," Generate password "),o(),d(19,on,4,2,"button",23),o(),d(20,rn,2,0,"spk-alert",24),o()}if(t&2){let e=p(2);s(6),c("type",e.showPassword()?"text":"password"),s(),_(e.generalForm.value.password?7:-1),s(2),c("type",e.showPassword()?"text":"password"),s(),_(e.generalForm.value.repeatPassword&&e.generalForm.value.repeatPassword!==e.generalForm.value.password?10:-1),s(3),_(e.showPassword()?13:14),s(6),_(e.showCopyPassword()?19:-1),s(),_(e.generalForm.value.password&&e.generalForm.value.password===e.generalForm.value.repeatPassword?20:-1)}}function ln(t,i){if(t&1&&(r(0,"spk-select",11)(1,"label",12),l(2,"Encryption"),o(),u(3,"input",13),D(4,Yt,2,2,"option",14,V),o(),d(6,an,21,7,"div",15)),t&2){let e=p();c("displayFn",e.displayFn()),s(4),O(e.encryptionOptions()),s(2),_(e.encryptionFieldSignal()!==""?6:-1)}}function sn(t,i){if(t&1&&(r(0,"button",9),l(1," Continue "),r(2,"spk-icon"),l(3,"arrow-right"),o()()),t&2){let e=p();c("disabled",e.generalForm.invalid)}}function pn(t,i){if(t&1&&(r(0,"spk-tooltip",10)(1,"button",9),l(2," Continue "),r(3,"spk-icon"),l(4,"arrow-right"),o()()()),t&2){let e=p();c("disabled",!(e.showCopyPassword()&&!e.copiedPassword())),s(),c("disabled",e.generalForm.invalid||e.showCopyPassword()&&!e.copiedPassword())}}var $e=new U,Bt=(t={name:"",description:"",encryption:"",password:"",repeatPassword:""})=>$e.group({name:$e.control(t.name,[fe.required]),description:$e.control(t.description),encryption:$e.control(t.encryption,[Rt()]),password:$e.control(t.password,[dt(i=>i?.value.encryption!=="",[fe.required])]),repeatPassword:$e.control(t.repeatPassword,[dt(i=>i?.value.encryption!=="",[fe.required])])}),_t={Key:"",DisplayName:"None"},ft=class t{#e=x(q);#n=x(ee);#i=x(rt);#o=x(W);#t=x(Je);formRef=Y.required("formRef");generalForm=this.#o.generalForm;generalFormSignal=this.#o.generalFormSignal;encryptionFieldSignal=this.#o.encryptionFieldSignal;encryptionOptions=this.#o.encryptionOptions;isNew=this.#o.isNew;showPassword=S(!1);copiedPassword=S(!1);showCopyPassword=S(!1);encryptionEffect=Ot(()=>{let i=this.encryptionFieldSignal();console.log(i===""),i===""&&(this.copiedPassword.set(!1),this.showCopyPassword.set(!1))},{allowSignalWrites:!0});calculatePasswordStrength=G(()=>{let e=this.generalFormSignal()?.password??"";return this.#i.calculatePasswordStrength(e)});ngOnInit(){this.formRef().nativeElement.focus()}exit(){this.#o.exit()}async copyPassword(){let i=this.generalForm.controls.password.value;await this.#r(i??""),this.copiedPassword.set(!0)}async#r(i){try{await navigator.clipboard.writeText(i)}catch{try{let n=document.createElement("textarea");n.value=i,document.body.appendChild(n),n.select(),document.execCommand("copy"),document.body.removeChild(n)}catch(n){console.error("Failed to copy text: ",n)}}}displayFn(){let i=this.#t.systemInfo()?.EncryptionModules??[];return e=>{let n=[_t,...i].find(a=>a.Key===e);return n?`${n.DisplayName}`:""}}generatePassword(){this.copiedPassword.set(!1);let i=this.#i.generate(16);this.generalForm.controls.password.setValue(i),this.generalForm.controls.repeatPassword.setValue(i),this.showCopyPassword.set(!0)}next(){this.#e.navigate(["destination"],{relativeTo:this.#n.parent})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=z({type:t,selectors:[["app-general"]],viewQuery:function(e,n){e&1&&Z(n.formRef,Qt,5),e&2&&J()},standalone:!0,features:[j],decls:22,vars:3,consts:[["formRef",""],["autocomplete","off",3,"submit","formGroup"],[1,"title-30"],["for","backupName"],["type","text","tabindex","1","placeholder","Your backup name","formControlName","name"],["for","backupDescription"],["id","backupDescription","tabindex","2","placeholder","Your backup description","formControlName","description"],[1,"form-actions"],["type","button","spk-button","",3,"click"],["spk-button","","type","submit",1,"raised","primary",3,"disabled"],["message","Remember to copy the password",1,"primary",3,"disabled"],[3,"displayFn"],["for","encryption"],["type","text","id","encryption","tabindex","3","placeholder","Encryption","formControlName","encryption"],[3,"value"],[1,"passwords"],["for","password"],["id","password","tabindex","4","autocomplete","off","placeholder","Password","formControlName","password",3,"type"],[1,"raised",3,"warn","tertiary","primary","success","value"],["id","repeatPassword","tabindex","5","autocomplete","off","placeholder","Repeat password","formControlName","repeatPassword",3,"type"],["error",""],[1,"password-actions"],["spk-button","","type","button",1,"small",3,"click"],["spk-button","","type","button",1,"small","copy"],["type","primary"],[1,"raised",3,"value"],["spk-button","","type","button",1,"small","copy",3,"click"],[1,"spk-success"]],template:function(e,n){if(e&1){let a=v();r(0,"form",1,0),C("submit",function(){return h(a),y(n.next())}),r(2,"h3",2),l(3,"General backup settings"),o(),r(4,"spk-form-field")(5,"label",3),l(6," Backup name "),r(7,"sup"),l(8,"*"),o()(),u(9,"input",4),o(),r(10,"spk-form-field")(11,"label",5),l(12,"Backup description"),o(),u(13,"textarea",6),o(),d(14,ln,7,2),r(15,"div",7)(16,"button",8),C("click",function(){return h(a),y(n.exit())}),r(17,"spk-icon"),l(18,"arrow-left"),o(),l(19," Exit "),o(),d(20,sn,4,1,"button",9)(21,pn,5,2,"spk-tooltip",10),o()()}e&2&&(c("formGroup",n.generalForm),s(14),_(n.isNew()?14:-1),s(6),_(n.encryptionFieldSignal()===""?20:21))},dependencies:[pe,oe,le,se,te,ne,ie,re,ae,ce,de,ke,me,At,Xe,Ge],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}sup[_ngcontent-%COMP%]{padding:0 .125rem;color:var(--warn-500)}.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%] spk-icon.spk-success[_ngcontent-%COMP%]{color:var(--success-500)}"],changeDetection:0})};var mn=["formRef"],cn=(t,i)=>({index:t,formView:i,formGroupName:"advancedOptions",destinationType:null,oauthField:null}),dn=t=>({$implicit:t});function un(t,i){if(t&1&&(r(0,"option",11),l(1),o()),t&2){let e=i.$implicit;c("value",e),s(),I(e)}}function fn(t,i){if(t&1&&(r(0,"option",11),l(1),o()),t&2){let e=i.$implicit;c("value",e.value),s(),I(e.name)}}function _n(t,i){if(t&1){let e=v();r(0,"button",23,2),C("click",function(){let a=h(e).$implicit,m=p();return y(m.addNewOption(a))}),l(2),o()}if(t&2){let e=i.$implicit;s(2),I(e.name)}}function gn(t,i){t&1&&Ve(0)}function Cn(t,i){if(t&1&&d(0,gn,1,0,"ng-container",24),t&2){let e=i.$implicit,n=i.$index;p();let a=X(39);c("ngTemplateOutlet",a)("ngTemplateOutletContext",De(5,dn,Dt(2,cn,n,e)))}}function hn(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function yn(t,i){if(t&1&&(r(0,"app-file-tree",27)(1,"label",33),l(2),d(3,hn,3,1,"spk-tooltip",34),o(),u(4,"input",35),o()),t&2){let e,n=p().$implicit,a=p();c("startingPath",a.getFormFieldValue(0,n.formGroupName,n.formView.name))("accepts",n.formView.accepts)("showFiles",!0)("showHiddenNodes",!0)("selectFiles",!0),s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),P("id","destination-",n.formGroupName,"-",n.index,""),N("formControlName",n.formView.name)}}function xn(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function wn(t,i){if(t&1&&(r(0,"app-file-tree",28)(1,"label",33),l(2),d(3,xn,3,1,"spk-tooltip",34),o(),u(4,"input",35),o()),t&2){let e,n=p().$implicit,a=p();c("startingPath",a.getFormFieldValue(0,n.formGroupName,n.formView.name)),s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),P("id","destination-",n.formGroupName,"-",n.index,""),N("formControlName",n.formView.name)}}function Sn(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function kn(t,i){t&1&&(r(0,"spk-icon",36),l(1,"link"),o())}function vn(t,i){t&1&&(r(0,"spk-icon",36),l(1,"textbox"),o())}function Fn(t,i){if(t&1&&(r(0,"spk-form-field")(1,"label",33),l(2),d(3,Sn,3,1,"spk-tooltip",34),o(),u(4,"input",35),d(5,kn,2,0,"spk-icon",36)(6,vn,2,0,"spk-icon",36),o()),t&2){let e,n=p().$implicit;s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),P("id","destination-",n.formGroupName,"-",n.index,""),N("formControlName",n.formView.name),s(),_(n.formView.type==="Path"?5:6)}}function bn(t,i){if(t&1){let e=v();r(0,"span",40),C("click",function(){h(e);let a=p(2).$implicit,m=p();return y(m.oauthStartTokenCreation(a.formViewType))}),l(1,"AuthID"),o()}}function Tn(t,i){t&1&&(r(0,"spk-icon",36),l(1,"password"),o())}function Vn(t,i){if(t&1){let e=v();r(0,"spk-icon",41),C("click",function(){h(e);let a=p(2).$implicit;return y(a.formView.showPassword=!a.formView.showPassword)}),l(1," eye "),o()}}function Dn(t,i){if(t&1){let e=v();r(0,"spk-icon",41),C("click",function(){h(e);let a=p(2).$implicit;return y(a.formView.showPassword=!a.formView.showPassword)}),l(1," eye-slash "),o()}}function On(t,i){if(t&1&&(r(0,"spk-form-field")(1,"label",33),l(2),o(),u(3,"input",37),d(4,bn,2,0,"span",38)(5,Tn,2,0,"spk-icon",36)(6,Vn,2,0,"spk-icon",39)(7,Dn,2,0,"spk-icon",39),o()),t&2){let e,n=p().$implicit;s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),P("id","destination-",n.formGroupName,"-",n.index,""),N("formControlName",n.formView.name),c("type",n.formView.showPassword?"text":"password"),s(),_(n.oauthField===n.formView.name?4:5),s(2),_(n.formView.showPassword?6:7)}}function En(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Nn(t,i){if(t&1&&(r(0,"option",11),l(1),o()),t&2){let e=i.$implicit;c("value",e),s(),I(e)}}function Pn(t,i){if(t&1&&(r(0,"spk-select")(1,"label",33),l(2),d(3,En,3,1,"spk-tooltip",34),o(),u(4,"input",42),F(5,10),D(6,Nn,2,2,"option",11,V),b(),o()),t&2){let e,n=p().$implicit;s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),P("id","destination-",n.formGroupName,"-",n.index,""),N("formControlName",n.formView.name),s(2),O(n.formView.options)}}function In(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Gn(t,i){if(t&1&&(r(0,"option",11),l(1),o()),t&2){let e=i.$implicit;c("value",e),s(),I(e)}}function Mn(t,i){if(t&1&&(r(0,"div",29)(1,"label",33),l(2),d(3,In,3,1,"spk-tooltip",34),o(),r(4,"div",43)(5,"spk-form-field"),u(6,"input",44),r(7,"spk-icon",36),l(8,"resize"),o()(),r(9,"spk-select"),u(10,"label")(11,"input",45),F(12,10),D(13,Gn,2,2,"option",11,V),b(),o()()()),t&2){let e,n=p().$implicit,a=p();c("formGroupName",n.formView.name),s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(3),P("id","destination-",n.formGroupName,"-",n.index,""),s(7),O(a.sizeOptions())}}function An(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Rn(t,i){if(t&1&&(r(0,"spk-form-field")(1,"label",33),l(2),d(3,An,3,1,"spk-tooltip",34),o(),u(4,"input",46),r(5,"spk-icon",36),l(6,"numpad"),o()()),t&2){let e,n=p().$implicit;s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),P("id","destination-",n.formGroupName,"-",n.index,""),N("formControlName",n.formView.name)}}function $n(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Bn(t,i){if(t&1&&(r(0,"spk-toggle",30)(1,"label",33),l(2),d(3,$n,3,1,"spk-tooltip",34),o(),u(4,"input",47),o()),t&2){let e,n=p().$implicit;s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),P("id","destination-",n.formGroupName,"-",n.index,""),N("formControlName",n.formView.name)}}function Un(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Hn(t,i){t&1&&(r(0,"spk-option",49),l(1,"None"),o()),t&2&&c("value","None")}function Ln(t,i){if(t&1&&(r(0,"spk-option",11),l(1),u(2,"spk-checkbox",50),o()),t&2){let e=p().$implicit;c("value",e),s(),k(" ",e," ")}}function zn(t,i){if(t&1&&d(0,Hn,2,1,"spk-option",49)(1,Ln,3,2,"spk-option",11),t&2){let e=i.$implicit;_(e==="None"?0:1)}}function jn(t,i){if(t&1&&(r(0,"spk-select",31)(1,"label",33),l(2),d(3,Un,3,1,"spk-tooltip",34),o(),u(4,"input",48),F(5,10),D(6,zn,2,1,null,null,V),b(),o()),t&2){let e,n=p().$implicit;c("selectMultiple",!0),s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),N("formControlName",n.formView.name),s(2),O(n.formView.options)}}function qn(t,i){if(t&1&&(r(0,"spk-tooltip",34)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Wn(t,i){if(t&1&&(r(0,"spk-form-field")(1,"label",33),l(2),d(3,qn,3,1,"spk-tooltip",34),o(),u(4,"input",35),o()),t&2){let e,n=p().$implicit;s(),P("for","destination-",n.formGroupName,"-",n.index,""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),P("id","destination-",n.formGroupName,"-",n.index,""),N("formControlName",n.formView.name)}}function Kn(t,i){if(t&1){let e=v();r(0,"div",25),F(1,26),d(2,yn,5,14,"app-file-tree",27)(3,wn,5,10,"app-file-tree",28)(4,Fn,7,10,"spk-form-field")(5,On,8,11,"spk-form-field")(6,Pn,8,9,"spk-select")(7,Mn,15,9,"div",29)(8,Rn,7,9,"spk-form-field")(9,Bn,5,9,"spk-toggle",30)(10,jn,8,7,"spk-select",31)(11,Wn,5,9,"spk-form-field"),b(),r(12,"button",32),C("click",function(){let a=h(e).$implicit,m=p();return y(m.removeFormView(a.formView,0))}),r(13,"spk-icon"),l(14,"x-circle"),o()()()}if(t&2){let e=i.$implicit;s(),c("formGroupName",e.formGroupName),s(),_(e.formView.type==="FileTree"?2:e.formView.type==="FolderTree"?3:e.formView.type==="String"||e.formView.type==="Path"?4:e.formView.type==="Password"?5:e.formView.type==="Enumeration"?6:e.formView.type==="Size"?7:e.formView.type==="Integer"?8:e.formView.type==="Boolean"?9:e.formView.type==="Flags"?10:e.formView.type==="Timespan"?11:-1)}}var Ce=new U,Qn=["Bytes","KB","MB","GB","TB","PB"],Yn=[{value:"",name:"Keep all backups"},{value:"time",name:"Delete backups that are older than"},{value:"versions",name:"Keep a specific number of backups"},{value:"smart",name:"Smart backup retention"},{value:"custom",name:"Custom backup retention"}],Ut=(t={remoteVolumeSize:50,size:"MB",backupRetention:"",advancedOptions:[]})=>Ce.group({remoteVolumeSize:Ce.group({size:Ce.control(t.remoteVolumeSize),unit:Ce.control(t.size)}),backupRetention:Ce.control(t.backupRetention),advancedOptions:Ce.group({})}),ir=(t,i)=>Ce.group({name:Ce.control(t),value:Ce.control(i)}),gt=class t{#e=x(W);#n=x(q);#i=x(ee);formRef=Y.required("formRef");optionsForm=this.#e.optionsForm;selectedOptions=this.#e.selectedOptions;nonSelectedOptions=this.#e.nonSelectedOptions;isSubmitting=this.#e.isSubmitting;sizeOptions=S(Qn);rentationOptions=S(Yn);oauthStartTokenCreation(i){}getFormFieldValue(i,e,n){return this.optionsForm.controls.advancedOptions.controls[n].value}removeFormView(i,e){this.#e.removeOptionFromFormGroup(i)}addNewOption(i){this.#e.addOptionToFormGroup(i)}retentionOptionDisplayFn(){let i=this.rentationOptions();return e=>{let n=i.find(a=>a.value===e);return n?n.name:""}}displayFn(){let i=this.#e.advancedOptions();return e=>{let n=i.find(a=>a.name===e);return n?`${n.name}`:""}}goBack(){this.#n.navigate(["schedule"],{relativeTo:this.#i.parent})}submit(){this.#e.submit()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=z({type:t,selectors:[["app-options"]],viewQuery:function(e,n){e&1&&Z(n.formRef,mn,5),e&2&&J()},standalone:!0,features:[j],decls:49,vars:5,consts:[["formRef",""],["fieldTemplate",""],["option",""],[3,"submit","formGroup"],[1,"title-30"],[1,"remote-volume-wrap"],["formGroupName","remoteVolumeSize",1,"row-inputs"],["for","size"],["type","number","id","size","formControlName","size"],["type","text","placeholder","Select an option...","formControlName","unit"],["options",""],[3,"value"],["href","#",1,"spk-primary"],[3,"displayFn"],["type","text","formControlName","backupRetention"],[3,"disallowToggle"],["title",""],["spk-button","","type","button",1,"outlined","small"],["menu",""],["type","button"],[1,"form-actions"],["spk-button","","type","button",3,"click"],["spk-button","","type","submit",1,"raised","primary"],["type","button",3,"click"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"field-row"],[3,"formGroupName"],[3,"startingPath","accepts","showFiles","showHiddenNodes","selectFiles"],[3,"startingPath"],[1,"form-column",3,"formGroupName"],[1,"primary","raised"],[1,"primary",3,"selectMultiple"],["spk-button","","type","button",1,"outlined",3,"click"],[3,"for"],[1,"primary",3,"message"],["type","text",3,"id","formControlName"],["prefix",""],["autocomplete","off",3,"type","id","formControlName"],["prefix","",1,"link"],["suffix","",1,"clickable"],["prefix","",1,"link",3,"click"],["suffix","",1,"clickable",3,"click"],["type","search",3,"id","formControlName"],[1,"form-row"],["type","number","formControlName","size",3,"id"],["type","search","formControlName","unit"],["type","number",3,"id","formControlName"],["type","checkbox",3,"id","formControlName"],["type","text","id","text",3,"formControlName"],["deselect","",3,"value"],[1,"raised","primary"]],template:function(e,n){if(e&1){let a=v();r(0,"form",3,0),C("submit",function(){return h(a),y(n.submit())}),r(2,"h3",4),l(3,"Options"),o(),r(4,"div",5)(5,"div",6)(6,"spk-form-field")(7,"label",7),l(8,"Remote volume size"),o(),u(9,"input",8),o(),r(10,"spk-select"),u(11,"input",9),F(12,10),D(13,un,2,2,"option",11,V),b(),o()(),r(15,"p"),l(16," The backups will be split up into multiple files called volumes. Here you can set the maximum size of the individual volume files. "),r(17,"a",12),l(18,"Read more"),o()()(),r(19,"spk-select",13)(20,"label",7),l(21,"Backup retention"),o(),u(22,"input",14),D(23,fn,2,2,"option",11,V),o(),r(25,"app-toggle-card",15),F(26,16),l(27," Advanced options "),r(28,"spk-menu")(29,"button",17),l(30," Add advanced option "),r(31,"spk-icon"),l(32,"plus"),o()(),F(33,18),D(34,_n,3,1,"button",19,V),b(),o(),b(),D(36,Cn,1,7,"ng-container",null,V),o(),d(38,Kn,15,2,"ng-template",null,1,Ye),r(40,"div",20)(41,"button",21),C("click",function(){return h(a),y(n.goBack())}),r(42,"spk-icon"),l(43,"arrow-left"),o(),l(44," Go back "),o(),r(45,"button",22)(46,"spk-icon"),l(47,"arrow-right"),o(),l(48," Submit "),o()()()}e&2&&(c("formGroup",n.optionsForm),s(13),O(n.sizeOptions()),s(6),c("displayFn",n.retentionOptionDisplayFn()),s(4),O(n.rentationOptions()),s(2),c("disallowToggle",!0),s(9),O(n.nonSelectedOptions()),s(2),O(n.selectedOptions()),s(9),ue("loader",n.isSubmitting()))},dependencies:[pe,oe,le,se,te,we,xe,ne,ie,re,ae,Se,Ze,tt,de,ke,me,ce,ve,et,nt,Ge,Me,Fe],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-column[_ngcontent-%COMP%]{display:flex;flex-direction:column}.form-column[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.25rem}.form-column[_ngcontent-%COMP%] spk-icon[_ngcontent-%COMP%]{font-size:1rem}.field-row[_ngcontent-%COMP%]{display:grid;align-items:flex-end;grid-template-columns:1fr 2.5rem;gap:.5rem}.form-row[_ngcontent-%COMP%]{display:grid;grid-template-columns:3fr 1fr;gap:.5rem;align-items:flex-end}.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}.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 40px;align-items:flex-end}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}"],changeDetection:0})};var Zn=["formRef"];function Jn(t,i){if(t&1&&(r(0,"option",24),l(1),o()),t&2){let e=i.$implicit;c("value",e.key),s(),I(e.label)}}function Xn(t,i){if(t&1){let e=v();r(0,"div",11)(1,"spk-form-field")(2,"label",12),l(3,"Next time"),o(),r(4,"input",13,1),C("focus",function(){h(e);let a=X(5);return y(a.showPicker())}),o(),r(6,"spk-icon",14),l(7,"clock"),o()(),r(8,"spk-form-field"),u(9,"label",15),r(10,"input",16,2),C("focus",function(){h(e);let a=X(11);return y(a.showPicker())}),o(),r(12,"spk-icon",14),l(13,"calendar"),o()()(),F(14,17),r(15,"div",18)(16,"spk-form-field")(17,"label",19),l(18,"Run again every"),o(),u(19,"input",20),o(),r(20,"spk-select",21),u(21,"input",22),F(22,23),D(23,Jn,2,2,"option",24,V),b(),o()(),r(25,"app-toggle-card",25),F(26,26),l(27,"Allowed days"),b(),r(28,"div",27)(29,"spk-toggle",6),l(30," Monday "),u(31,"input",28),o(),r(32,"spk-toggle",6),l(33," Tuesday "),u(34,"input",29),o(),r(35,"spk-toggle",6),l(36," Wednesday "),u(37,"input",30),o(),r(38,"spk-toggle",6),l(39," Thursday "),u(40,"input",31),o(),r(41,"spk-toggle",6),l(42," Friday "),u(43,"input",32),o(),r(44,"spk-toggle",6),l(45," Saturday "),u(46,"input",33),o(),r(47,"spk-toggle",6),l(48," Sunday "),u(49,"input",34),o()()(),b()}if(t&2){let e=p();s(20),c("displayFn",e.displayFn),s(3),O(e.unitOptions),s(2),c("disallowToggle",!0)}}var M=new U,Ht=[{key:"s",label:"Seconds"},{key:"m",label:"Minutes"},{key:"h",label:"Hours"},{key:"D",label:"Days"},{key:"W",label:"Weeks"},{key:"M",label:"Months"},{key:"Y",label:"Years"}],Lt=(t={autoRun:!1,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}}})=>M.group({autoRun:M.control(t.autoRun),nextTime:M.group({time:M.control(t.nextTime.time),date:M.control(t.nextTime.date)}),runAgain:M.group({repeatValue:M.control(t.runAgain.repeatValue),repeatUnit:M.control(t.runAgain.repeatUnit),allowedDays:M.group({mon:M.control(t.runAgain.allowedDays.mon),tue:M.control(t.runAgain.allowedDays.tue),wed:M.control(t.runAgain.allowedDays.wed),thu:M.control(t.runAgain.allowedDays.thu),fri:M.control(t.runAgain.allowedDays.fri),sat:M.control(t.runAgain.allowedDays.sat),sun:M.control(t.runAgain.allowedDays.sun)})})}),Ct=class t{#e=x(W);#n=x(q);#i=x(ee);formRef=Y.required("formRef");scheduleForm=this.#e.scheduleForm;scheduleFormSignal=this.#e.scheduleFormSignal;unitOptions=Ht;displayFn(i){let e=Ht.find(n=>n.key===i);return e?`${e.label}`:""}goBack(){this.#n.navigate(["source-data"],{relativeTo:this.#i.parent})}next(){this.#n.navigate(["options"],{relativeTo:this.#i.parent})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=z({type:t,selectors:[["app-schedule"]],viewQuery:function(e,n){e&1&&Z(n.formRef,Zn,5),e&2&&J()},standalone:!0,features:[j],decls:20,vars:2,consts:[["formRef",""],["timeRef",""],["dateRef",""],[3,"submit","formGroup"],[1,"title-30"],[1,"toggle-wrap"],[1,"raised","primary"],["type","checkbox","formControlName","autoRun"],[1,"form-actions"],["spk-button","","type","button",3,"click"],["spk-button","","type","submit",1,"raised","primary"],["formGroupName","nextTime",1,"row-inputs"],["for","time"],["type","time","id","time","formControlName","time",3,"focus"],["suffix",""],["for","date"],["type","date","id","date","formControlName","date",3,"focus"],["formGroupName","runAgain"],[1,"row-inputs"],["for","repeatValue"],["type","number","id","repeatValue","formControlName","repeatValue"],[3,"displayFn"],["type","text","id","repeatUnit","formControlName","repeatUnit"],["options",""],[3,"value"],["formGroupName","allowedDays",3,"disallowToggle"],["title",""],[1,"days-wrap"],["type","checkbox","formControlName","mon"],["type","checkbox","formControlName","tue"],["type","checkbox","formControlName","wed"],["type","checkbox","formControlName","thu"],["type","checkbox","formControlName","fri"],["type","checkbox","formControlName","sat"],["type","checkbox","formControlName","sun"]],template:function(e,n){if(e&1){let a=v();r(0,"form",3,0),C("submit",function(){return h(a),y(n.next())}),r(2,"h3",4),l(3,"Schedule"),o(),r(4,"div",5)(5,"spk-toggle",6),l(6," Automatically run backups "),u(7,"input",7),o(),r(8,"p"),l(9,"If a date was missed, the job will run as soon as possible."),o()(),d(10,Xn,50,2),r(11,"div",8)(12,"button",9),C("click",function(){return h(a),y(n.goBack())}),r(13,"spk-icon"),l(14,"arrow-left"),o(),l(15," Go back "),o(),r(16,"button",10)(17,"spk-icon"),l(18,"arrow-right"),o(),l(19," Continue "),o()()()}if(e&2){let a;c("formGroup",n.scheduleForm),s(10),_((a=n.scheduleFormSignal())!=null&&a.autoRun?10:-1)}},dependencies:[pe,oe,le,se,te,we,xe,ne,ie,re,ae,Se,ce,de,ve,me,ke,Fe],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{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})};var ei=["formRef"];function ti(t,i){if(t&1&&(r(0,"option",20),l(1),o()),t&2){let e=i.$implicit;c("value",e),s(),I(e)}}function ni(t,i){if(t&1&&(r(0,"div",13)(1,"spk-form-field"),u(2,"input",17),o(),r(3,"spk-select"),u(4,"input",18),F(5,19),D(6,ti,2,2,"option",20,V),b(),o()()),t&2){let e=p();s(6),O(e.sizeOptions())}}var he=new U,ii=["Bytes","KB","MB","GB","TB","PB"],oi=["Contains","Does not contain","Is greater than","Is less than"];var zt=(t={path:"",excludes:{hidden:!1,system:!1,temporary:!1,filesLargerThan:null}})=>he.group({path:he.control(t.path),excludes:he.group({hidden:he.control(t.excludes.hidden),system:he.control(t.excludes.system),temporary:he.control(t.excludes.temporary),filesLargerThan:he.group({size:he.control(null),unit:he.control(null)})})}),ht=class t{#e=x(W);#n=x(q);#i=x(ee);formRef=Y.required("formRef");sourceDataForm=this.#e.sourceDataForm;sourceDataFormSignal=this.#e.sourceDataFormSignal;filesLargerThan=G(()=>this.sourceDataFormSignal()?.excludes?.filesLargerThan?.size!==null);sizeOptions=S(ii);expressionOptions=S(oi);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})}goBack(){this.#n.navigate(["destination"],{relativeTo:this.#i.parent})}next(){this.#n.navigate(["schedule"],{relativeTo:this.#i.parent})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=z({type:t,selectors:[["app-source-data"]],viewQuery:function(e,n){e&1&&Z(n.formRef,ei,5),e&2&&J()},standalone:!0,features:[j],decls:32,vars:7,consts:[["formRef",""],[3,"submit","formGroup"],[1,"title-30"],[3,"multiSelect","startingPath"],["for","path"],["type","text","id","path","tabindex","4","placeholder","Path","formControlName","path"],["formGroupName","excludes",3,"isActive"],["title",""],[1,"raised","primary"],["type","checkbox","placeholder","Hidden files","formControlName","hidden"],["type","checkbox","placeholder","System files","formControlName","system"],["type","checkbox","placeholder","Temporary files","formControlName","temporary"],[1,"raised","primary",3,"click"],["formGroupName","filesLargerThan",1,"row-inputs"],[1,"form-actions"],["spk-button","","type","button",3,"click"],["spk-button","","type","submit",1,"raised","primary"],["type","number","formControlName","size"],["type","text","formControlName","unit","placeholder","Select an option..."],["options",""],[3,"value"]],template:function(e,n){if(e&1){let a=v();r(0,"form",1,0),C("submit",function(){return h(a),y(n.next())}),r(2,"h3",2),l(3,"Source Data"),o(),r(4,"app-file-tree",3)(5,"label",4),l(6,"Folder path"),o(),u(7,"input",5),o(),r(8,"app-toggle-card",6),F(9,7),l(10,"Exclude"),b(),r(11,"spk-toggle",8),l(12," Hidden files "),u(13,"input",9),o(),r(14,"spk-toggle",8),l(15," System files "),u(16,"input",10),o(),r(17,"spk-toggle",8),l(18," Temporary files "),u(19,"input",11),o(),r(20,"spk-toggle",12),C("click",function(){return h(a),y(n.toggleFilesLargerThan())}),l(21," Files larger than "),o(),d(22,ni,8,0,"div",13),o(),r(23,"div",14)(24,"button",15),C("click",function(){return h(a),y(n.goBack())}),r(25,"spk-icon"),l(26,"arrow-left"),o(),l(27," Go back "),o(),r(28,"button",16)(29,"spk-icon"),l(30,"arrow-right"),o(),l(31," Continue "),o()()()}e&2&&(c("formGroup",n.sourceDataForm),s(4),c("multiSelect",!0)("startingPath",n.getPath()),s(4),c("isActive",!0),s(12),ue("active",n.filesLargerThan()),s(2),_(n.filesLargerThan()?22:-1))},dependencies:[pe,oe,le,se,te,we,xe,ne,ie,re,ae,Se,ce,me,ke,de,ve,Me,Fe],styles:["[_nghost-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}.row-inputs[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr min-content;gap:.5rem}.filter-inputs[_ngcontent-%COMP%]{display:flex;gap:.5rem;align-items:flex-end}.filter-inputs[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{flex:1 0}.filter-inputs[_ngcontent-%COMP%] .filter-removal[_ngcontent-%COMP%]{cursor:pointer;display:flex;align-items:center;justify-content:center;height:2.5rem;flex:0 0}"],changeDetection:0})};var K=new U,W=class t{#e=x(q);#n=x(Je);#i=x(Ie);#o=x(it);generalForm=Bt();sourceDataForm=zt();scheduleForm=Lt();destinationForm=jt();optionsForm=Ut();isDraft=S(!1);backupId=S(null);isSubmitting=S(!1);finishedLoading=S(!1);backupDefaults=S(null);isNew=G(()=>this.backupId()==="new");selectedOptions=S([]);selectedAdvancedFormPair=S([]);destinationFormPair=S({oauthField:null,custom:[],dynamic:[],advanced:[]});notSelectedAdvancedFormPair=G(()=>{let i=this.destinationFormPair()?.advanced??[],e=this.selectedAdvancedFormPair()??[];return i.filter(n=>e.findIndex(a=>a.name===n.name)===-1)});selectedHttpOptions=S([]);notSelectedHttpOptions=G(()=>{let i=this.httpOptions(),e=this.selectedHttpOptions()??[];return i.filter(n=>e.findIndex(a=>a.name===n.name)===-1)});sourceDataFormSignal=_e(this.sourceDataForm.valueChanges);destinationFormSignal=_e(this.destinationForm.valueChanges);generalFormSignal=_e(this.generalForm.valueChanges);encryptionFieldSignal=_e(this.generalForm.controls.encryption.valueChanges);scheduleFormSignal=_e(this.scheduleForm.valueChanges);destinationOptions=G(()=>this.#n.backendModules()??[]);httpOptions=G(()=>this.#n.systemInfo()?.GenericModules?.find(i=>i.Key==="http-options")?.Options?.map(this.#t)??[]);advancedOptions=G(()=>this.#n.systemInfo()?.Options?.map(this.#t)??[]);#t(i){return{name:i.Name,type:i.Type,shortDescription:i.ShortDescription??void 0,longDescription:i.LongDescription??void 0,options:i.ValidValues}}encryptionOptions=G(()=>{let i=this.#n.systemInfo()?.EncryptionModules??[];return[_t,...i]});nonSelectedOptions=G(()=>this.advancedOptions().sort((i,e)=>i?.name&&e?.name?i?.name.localeCompare(e?.name):0).filter(i=>this.selectedOptions()?.findIndex(e=>e.name===i.name)===-1));addAdvancedFormPairByName(i,e,n){let a=this.notSelectedAdvancedFormPair().find(m=>m.name===i);a&&this.addAdvancedFormPair(a,e,n)}addHttpOptionByName(i,e,n){let a=this.notSelectedHttpOptions().find(m=>m.name===i);a&&this.addHttpOption(a,e,n)}addAdvancedFormPair(i,e,n){let a=this.destinationForm.controls.destinations.controls.at(e)?.controls.advanced,m=n??i.defaultValue;this.createFormField(a,i,m),this.selectedAdvancedFormPair.set([...this.selectedAdvancedFormPair(),i])}addHttpOption(i,e,n){let a=this.destinationForm.controls.destinations.controls.at(e)?.controls.advanced,m=n??i.defaultValue;this.createFormField(a,i,m),this.selectedHttpOptions.set([...this.selectedHttpOptions(),i])}removeAdvancedFormPair(i,e){this.destinationForm.controls.destinations.controls.at(e)?.controls.advanced.removeControl(i.name),this.selectedAdvancedFormPair().findIndex(a=>a.name===i.name)!==-1?this.selectedAdvancedFormPair.update(a=>(a=a.filter(m=>m.name!==i.name),a)):this.selectedHttpOptions.update(a=>(a=a.filter(m=>m.name!==i.name),a))}removeHttpOption(i,e){this.destinationForm.controls.destinations.controls.at(e)?.controls.advanced.removeControl(i.name),this.selectedHttpOptions.update(n=>(n=n.filter(a=>a.name!==i.name),n))}submit(){this.isSubmitting.set(!0);let i=this.#s(),e=this.backupId();e==="new"||!e||this.isDraft()?this.#i.postApiV1Backups({requestBody:i}).pipe(He(()=>this.isSubmitting.set(!1))).subscribe({next:n=>{console.log("submitted res",n),this.exit()},error:n=>{console.error("submitted error",n)}}):this.#i.putApiV1BackupById({id:e,requestBody:i}).pipe(He(()=>this.isSubmitting.set(!1))).subscribe({next:n=>{console.log("submitted res",n),this.exit()},error:n=>{console.error("submitted error",n)}})}exit(){this.#m(),this.#e.navigate(["/"])}updateFieldsFromTargetUrl(i){this.#r(),setTimeout(()=>{this.#l(i)})}#r(){this.destinationFormPair.set({oauthField:null,custom:[],dynamic:[],advanced:[]}),this.selectedAdvancedFormPair.set([]),this.selectedHttpOptions.set([]),this.destinationForm.controls.destinations.clear(),this.destinationForm.reset()}mapSourceDataToForm(i){let e=i.Sources??"",n=i.Filters?.map(R=>`${R.Include?"":"-"}${R.Expression}`)??[],a=i.Settings?.find(R=>R.Name==="--exclude-files-attributes")?.Value??"",m=i.Settings?.find(R=>R.Name==="--skip-files-larger-than")??null,g=m?.Value.replace(/[0-9]/g,"")??null,A=m?.Value.replace(/[^0-9]/g,"")??null,$={path:[...e,...n].join("\0"),excludes:{hiddenFiles:a.includes("hidden"),systemFiles:a.includes("system"),tempFiles:a.includes("temporary"),filesLargerThan:g&&A?{size:parseInt(A),unit:g.toUpperCase()}:null}};this.sourceDataForm.patchValue($)}mapDestinationToForm(i){let e=i.TargetURL?ut(i.TargetURL):null;e&&this.addDestinationFormGroup(e.destinationType,{custom:e.custom,dynamic:e.dynamic,advanced:e.advanced},!0)}#l(i){let e=ut(i);e&&this.addDestinationFormGroup(e.destinationType,{custom:e.custom,dynamic:e.dynamic,advanced:e.advanced},!0)}mapGeneralToForm(i){let e=i.Settings?.find(m=>m.Name==="encryption-module"),n=e?.Value&&e.Value.length?e.Value:"",a={name:i.Name??"",description:i.Description??""};n&&n!==""&&(a.encryption=n),this.generalForm.patchValue(a)}mapScheduleToForm(i){if(!i){this.scheduleForm.patchValue({autoRun:!0});return}let e=this.#o.fromString(i.Repeat)??null,a={nextTime:this.#p(i.Time),runAgain:{repeatValue:e?.value??1,repeatUnit:e?.unit??"D",allowedDays:{mon:i.AllowedDays?.includes("mon")??!1,tue:i.AllowedDays?.includes("tue")??!1,wed:i.AllowedDays?.includes("wed")??!1,thu:i.AllowedDays?.includes("thu")??!1,fri:i.AllowedDays?.includes("fri")??!1,sat:i.AllowedDays?.includes("sat")??!1,sun:i.AllowedDays?.includes("sun")??!1}}};this.scheduleForm.patchValue(a)}mapOptionsToForms(i){let e=["--no-encryption","--exclude-files-attributes","--skip-files-larger-than"],n=this.advancedOptions();i.Settings?.forEach(a=>{if(a.Name==="encryption-module")return this.generalForm.controls.encryption.setValue(a.Value??"");if(!(a.Name&&e.includes(a.Name))){if(a.Name==="dblock-size"){let m=a.Value?.replace(/[^0-9]/g,""),g=a.Value?.replace(/[0-9]/g,"");return this.optionsForm.controls.remoteVolumeSize.setValue({size:m?parseInt(m):null,unit:g?g.toUpperCase():null})}if(a.Name&&a.Value){let m=n.find(g=>g.name===a.Name);if(!m)return;this.addOptionToFormGroup(m,a.Value)}}})}getCurrentTargetUrl(){return this.#a(this.destinationForm.controls.destinations)}#s(){let i=this.generalForm.value,e=this.optionsForm.value,n=this.scheduleForm.value,a=this.sourceDataForm.value,g=this.destinationForm.value.destinations?.length?this.#a(this.destinationForm.controls.destinations):[],A=null;n.runAgain?.repeatUnit&&n.runAgain?.repeatValue&&(A=this.#o.toString(n.runAgain.repeatValue,n.runAgain.repeatUnit));let $=n.runAgain?.allowedDays?Object.entries(n.runAgain?.allowedDays).filter(([f,w])=>w).map(([f,w])=>f):[],R=a.path?.split("\0")??[],pt=i.encryption===""?{Name:"--no-encryption",Value:"True"}:{Name:"encryption-module",Value:i.encryption??null},mt=this.advancedOptions(),Ke=Object.entries(e.advancedOptions??{}).filter(([f,w])=>f&&w).map(([f,w])=>{let H=mt.find(L=>L.name===f);return H?.type==="Size"?{Name:f,Value:`${w.size}${w.unit.toLowerCase()}`}:H?.type==="Integer"?{Name:f,Value:w.toString()}:H?.type==="Boolean"?{Name:f,Value:w.toString()}:{Name:f,Value:w}}),Ee=[pt,...Ke],Ne=Object.entries(a.excludes??{}).filter(([f,w])=>w&&f!=="filesLargerThan").map(([f])=>f),T=a.excludes?.filesLargerThan;return Ne.length&&Ee.push({Name:"--exclude-files-attributes",Value:Ne.join(",")}),T&&T.size!==null&&T.unit!==null&&Ee.push({Name:"--skip-files-larger-than",Value:`${T.size}${T.unit}`}),{Backup:{Name:i.name,Description:i.description,TargetURL:g[0]??null,Sources:R.filter(f=>!f.startsWith("-")),Settings:Ee,Filters:R.filter(f=>f.startsWith("-")).map((f,w)=>({Order:w,Include:!1,Expression:f.slice(1)}))},Schedule:n.autoRun?{Repeat:A,Time:n.nextTime?.date?new Date(`${n.nextTime.date}T${n.nextTime?.time||"00:00:00"}`).toISOString():null,AllowedDays:$}:null}}#a(i){return i.controls.map(e=>ot(e.value))}#p(i){if(!i||i?.indexOf("T")===-1)return{time:i??"13:00"};let e=new Date(i),n={time:`${(""+e.getHours()).padStart(2,"0")}:${(""+e.getMinutes()).padStart(2,"0")}`};return i.indexOf("T")!==-1&&(n.date=e.toISOString().split("T")[0]),n}removeOptionFromFormGroup(i){let e=i.name;e&&(this.optionsForm.controls.advancedOptions.removeControl(e),this.selectedOptions.update(n=>(n=n.filter(a=>a.name!==e),n)))}addOptionToFormGroup(i,e){let n=this.optionsForm.controls.advancedOptions;this.createFormField(n,i,e??i.defaultValue),this.selectedOptions.update(a=>(a.push(i),a))}createFormField(i,e,n){if(e.type==="String"||e.type==="FileTree"||e.type==="FolderTree"||e.type==="Password"||e.type==="Enumeration"||e.type==="NonValidatedSelectableString"||e.type==="Path"){i.addControl(e.name,K.control(n));return}if(e.type==="Size"){let a=n.replace(/[0-9]/g,""),m=n.replace(/[^0-9]/g,"");i.addControl(e.name,K.group({size:K.control(m?parseInt(m):50),unit:K.control(a?a.toUpperCase():"MB")}));return}if(e.type==="Integer"){i.addControl(e.name,K.control(n?parseInt(n):0));return}if(e.type==="Boolean"){i.addControl(e.name,K.control(n==="true"));return}if(e.type==="Flags"){i.addControl(e.name,K.control(n??""));return}if(e.type==="Timespan"){i.addControl(e.name,K.control(n,[fe.pattern(/([-+]?\d{1,3}[smhDWMY])+/)]));return}}addDestinationFormGroup(i,e,n=!1){let a=this.destinationOptions().find(T=>T.Key===i),m=this.httpOptions();if(!a||!a.Options)return;let g=qe.hasOwnProperty(i)&&qe[i],A=g&&g.oauthField?g.oauthField:null,$=g&&g.customFields?g.customFields:{},R=g&&g.dynamicFields?g.dynamicFields:[],pt=g&&g.advancedFields?g.advancedFields:[],mt=g&&g.ignoredAdvancedFields?g.ignoredAdvancedFields:[];this.destinationFormPair.set({oauthField:A,custom:[],dynamic:[],advanced:[]});let Ke=K.group({}),Ee=K.group({}),Ne=K.group({});$&&Object.entries($).forEach(([T,f],w)=>{let Te=f,{formElement:H}=Te,L=xt(Te,["formElement"]);Ke.addControl(T,H(e?.custom[T])),this.destinationFormPair.update(Pe=>(Pe.custom.push(B({order:900+w},L)),Pe))});for(let T=0;T<a.Options.length;T++){let f=a.Options[T];if(f.Deprecated)continue;let w=R.find(H=>H===f.Name||H.name===f.Name);if(w){let H=w&&typeof w!="string",L={name:f.Name,type:f.Type,shortDescription:f.ShortDescription??void 0,longDescription:f.LongDescription??void 0,options:f.ValidValues,order:900+T},Te=H?B(B({},L),w):L,Qe=e?.dynamic[f.Name]??f.DefaultValue;this.createFormField(Ee,Te,Qe),this.destinationFormPair.update(Be=>(Be.dynamic.push(Te),Be))}else{if(mt.find(Q=>Q===f.Name))continue;let L=pt.find(Q=>Q===f.Name||Q.name===f.Name),Te=L&&typeof L!="string",Pe=e?.advanced[f.Name],Qe=Pe??f.DefaultValue,Be={name:f.Name,type:f.Type,shortDescription:f.ShortDescription??void 0,longDescription:f.LongDescription??void 0,options:f.ValidValues,defaultValue:Qe,order:900+T},ct=Te?B(B({},Be),L):Be;n&&Pe&&(this.createFormField(Ne,ct,Qe),this.selectedAdvancedFormPair.update(Q=>(Q.push(ct),Q))),this.destinationFormPair.update(Q=>(Q.advanced.push(ct),Q))}}for(let T=0;T<m.length;T++){let f=m[T],w=e?.advanced[f.name],H=w??f.defaultValue;n&&w&&(this.createFormField(Ne,f,H),this.selectedHttpOptions.update(L=>(L.push(f),L)))}this.destinationFormPair.update(T=>({oauthField:T.oauthField,custom:T.custom.sort((f,w)=>f.order-w.order),dynamic:T.dynamic.sort((f,w)=>f.order-w.order),advanced:T.advanced.sort((f,w)=>f.order-w.order)})),this.destinationForm.controls.destinations.push(qt({key:a.Key,customGroup:Ke,dynamicGroup:Ee,advancedGroup:Ne}))}#m(){this.generalForm.reset(),this.destinationForm.controls.destinations.clear(),this.destinationForm.reset(),this.sourceDataForm.reset(),this.scheduleForm.reset(),this.optionsForm.reset()}static \u0275fac=function(e){return new(e||t)};static \u0275prov=ye({token:t,factory:t.\u0275fac,providedIn:"root"})};var ri=["formRef"],ai=(t,i,e,n)=>({index:t,formView:i,formGroupName:"custom",destinationType:e,oauthField:n}),st=t=>({$implicit:t}),li=(t,i,e,n)=>({index:t,formView:i,formGroupName:"dynamic",destinationType:e,oauthField:n}),si=(t,i,e,n)=>({index:t,formView:i,formGroupName:"advanced",destinationType:e,oauthField:n}),pi=(t,i,e,n)=>({index:t,formView:i,formGroupName:"advanced",asHttpOptions:!0,destinationType:e,oauthField:n}),mi=()=>({maxWidth:"700px",width:"100%"});function ci(t,i){t&1&&(l(0," Connected "),r(1,"spk-icon"),l(2,"check"),o())}function di(t,i){t&1&&l(0," Test destination ")}function ui(t,i){if(t&1){let e=v();r(0,"button",8),C("click",function(){h(e);let a=p();return y(a.testDestination())}),d(1,ci,3,0,"spk-icon")(2,di,1,0),o()}if(t&2){let e=p();ue("success",e.successfulTest()),s(),_(e.successfulTest()?1:2)}}function fi(t,i){if(t&1){let e=v();r(0,"p",14),C("click",function(){h(e);let a=p();return y(a.removeDestinationFormGroup(a.destinationCount()-1))}),l(1," Want to select another destination? "),r(2,"span",15),l(3,"Click here"),o()()}}function _i(t,i){if(t&1){let e=v();r(0,"div",16)(1,"div",17),C("click",function(){h(e);let a=p();return y(a.addDestinationFormGroup("file"))}),r(2,"h3"),l(3,"File system"),o(),r(4,"p"),l(5,"Store backups on your local file system."),o()(),r(6,"div",17),C("click",function(){h(e);let a=p();return y(a.addDestinationFormGroup("gcs"))}),r(7,"h3"),l(8,"Google Cloud Storage"),o(),r(9,"p"),l(10,"Store backups in Google Cloud Storage."),o()(),r(11,"div",17),C("click",function(){h(e);let a=p();return y(a.addDestinationFormGroup("s3"))}),r(12,"h3"),l(13,"S3 compatible bucket"),o(),r(14,"p"),l(15,"Store backups in any S3 compatible bucket."),o()(),r(16,"div",17),C("click",function(){h(e);let a=p();return y(a.addDestinationFormGroup("ssh"))}),r(17,"h3"),l(18,"SSH"),o(),r(19,"p"),l(20,"Store backups in SSH."),o()(),r(21,"div",17),C("click",function(){h(e);let a=p();return y(a.addDestinationFormGroup("googledrive"))}),r(22,"h3"),l(23,"Google Drive"),o(),r(24,"p"),l(25,"Store backups in Google Drive."),o()()(),r(26,"p"),l(27,"More destinations are coming soon."),o()}}function gi(t,i){t&1&&Ve(0)}function Ci(t,i){if(t&1&&d(0,gi,1,0,"ng-container",23),t&2){let e,n=i.$implicit,a=i.$index;p();let m=X(33),g=p();c("ngTemplateOutlet",m)("ngTemplateOutletContext",De(7,st,Le(2,ai,a,n,(e=g.destinationFormSignal())==null||e.destinations==null||e.destinations[0]==null?null:e.destinations[0].destinationType,g.destinationFormPair().oauthField)))}}function hi(t,i){t&1&&Ve(0)}function yi(t,i){if(t&1&&d(0,hi,1,0,"ng-container",23),t&2){let e,n=i.$implicit,a=i.$index;p();let m=X(33),g=p();c("ngTemplateOutlet",m)("ngTemplateOutletContext",De(7,st,Le(2,li,a,n,(e=g.destinationFormSignal())==null||e.destinations==null||e.destinations[0]==null?null:e.destinations[0].destinationType,g.destinationFormPair().oauthField)))}}function xi(t,i){if(t&1){let e=v();r(0,"button",24),C("click",function(){let a=h(e).$implicit,m=p(2);return y(m.addAdvancedFormPair(a,0))}),l(1),o()}if(t&2){let e=i.$implicit;s(),k(" ",e.name," ")}}function wi(t,i){t&1&&Ve(0)}function Si(t,i){if(t&1&&d(0,wi,1,0,"ng-container",23),t&2){let e,n=i.$implicit,a=i.$index;p();let m=X(33),g=p();c("ngTemplateOutlet",m)("ngTemplateOutletContext",De(7,st,Le(2,si,a,n,(e=g.destinationFormSignal())==null||e.destinations==null||e.destinations[0]==null?null:e.destinations[0].destinationType,g.destinationFormPair().oauthField)))}}function ki(t,i){if(t&1){let e=v();r(0,"button",24),C("click",function(){let a=h(e).$implicit,m=p(2);return y(m.addHttpOption(a,0))}),l(1),o()}if(t&2){let e=i.$implicit;s(),k(" ",e.name," ")}}function vi(t,i){t&1&&Ve(0)}function Fi(t,i){if(t&1&&d(0,vi,1,0,"ng-container",23),t&2){let e,n=i.$implicit,a=i.$index;p();let m=X(33),g=p();c("ngTemplateOutlet",m)("ngTemplateOutletContext",De(7,st,Le(2,pi,a,n,(e=g.destinationFormSignal())==null||e.destinations==null||e.destinations[0]==null?null:e.destinations[0].destinationType,g.destinationFormPair().oauthField)))}}function bi(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Ti(t,i){if(t&1&&(r(0,"app-file-tree",27)(1,"label",34),l(2),d(3,bi,3,1,"spk-tooltip",35),o(),u(4,"input",36),o()),t&2){let e,n=p().$implicit,a=p(2);c("startingPath",a.getFormFieldValue(0,n.formGroupName,n.formView.name))("accepts",n.formView.accepts)("showFiles",!0)("showHiddenNodes",!0)("selectFiles",!0),s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name)}}function Vi(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Di(t,i){if(t&1&&(r(0,"app-file-tree",28)(1,"label",34),l(2),d(3,Vi,3,1,"spk-tooltip",35),o(),u(4,"input",36),o()),t&2){let e,n=p().$implicit,a=p(2);c("startingPath",a.getFormFieldValue(0,n.formGroupName,n.formView.name)),s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name)}}function Oi(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Ei(t,i){t&1&&(r(0,"spk-icon",37),l(1,"link"),o())}function Ni(t,i){t&1&&(r(0,"spk-icon",37),l(1,"textbox"),o())}function Pi(t,i){if(t&1&&(r(0,"spk-form-field")(1,"label",34),l(2),d(3,Oi,3,1,"spk-tooltip",35),o(),u(4,"input",36),d(5,Ei,2,0,"spk-icon",37)(6,Ni,2,0,"spk-icon",37),o()),t&2){let e,n=p().$implicit;s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name),s(),_(n.formView.type==="Path"?5:6)}}function Ii(t,i){if(t&1){let e=v();r(0,"span",41),C("click",function(){h(e);let a=p(2).$implicit,m=p(2);return y(m.oauthStartTokenCreation(a.destinationType))}),l(1,"AuthID"),o()}}function Gi(t,i){t&1&&(r(0,"spk-icon",37),l(1,"password"),o())}function Mi(t,i){if(t&1){let e=v();r(0,"spk-icon",42),C("click",function(){h(e);let a=p(2).$implicit;return y(a.formView.showPassword=!a.formView.showPassword)}),l(1," eye "),o()}}function Ai(t,i){if(t&1){let e=v();r(0,"spk-icon",42),C("click",function(){h(e);let a=p(2).$implicit;return y(a.formView.showPassword=!a.formView.showPassword)}),l(1," eye-slash "),o()}}function Ri(t,i){if(t&1&&(r(0,"spk-form-field")(1,"label",34),l(2),o(),u(3,"input",38),d(4,Ii,2,0,"span",39)(5,Gi,2,0,"spk-icon",37)(6,Mi,2,0,"spk-icon",40)(7,Ai,2,0,"spk-icon",40),o()),t&2){let e,n=p().$implicit;s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name),c("type",n.formView.showPassword?"text":"password"),s(),_(n.oauthField===n.formView.name?4:5),s(2),_(n.formView.showPassword?6:7)}}function $i(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Bi(t,i){if(t&1&&(r(0,"option",45),l(1),o()),t&2){let e=i.$implicit;c("value",e),s(),I(e)}}function Ui(t,i){if(t&1&&(r(0,"spk-select")(1,"label",34),l(2),d(3,$i,3,1,"spk-tooltip",35),o(),u(4,"input",43),F(5,44),D(6,Bi,2,2,"option",45,V),b(),o()),t&2){let e,n=p().$implicit;s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name),s(2),O(n.formView.options)}}function Hi(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Li(t,i){if(t&1&&(r(0,"option",45),l(1),o()),t&2){let e=i.$implicit;c("value",e.value),s(),vt(" ",e.key," ",e.value?"("+e.value+")":""," ")}}function zi(t,i){if(t&1&&(r(0,"spk-select",29)(1,"label",34),l(2),d(3,Hi,3,1,"spk-tooltip",35),o(),u(4,"input",43),F(5,44),D(6,Li,2,3,"option",45,V),b(),o()),t&2){let e,n=p().$implicit,a=p(2);c("isFreeText",!0),s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name),s(2),O(n.formView.loadOptions(a.injector)())}}function ji(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function qi(t,i){if(t&1&&(r(0,"option",45),l(1),o()),t&2){let e=i.$implicit;c("value",e),s(),I(e)}}function Wi(t,i){if(t&1&&(r(0,"div",30)(1,"label",34),l(2),d(3,ji,3,1,"spk-tooltip",35),o(),r(4,"div",46)(5,"spk-form-field"),u(6,"input",47),r(7,"spk-icon",37),l(8,"resize"),o()(),r(9,"spk-select"),u(10,"label")(11,"input",48),F(12,44),D(13,qi,2,2,"option",45,V),b(),o()()()),t&2){let e,n=p().$implicit,a=p(2);c("formGroupName",n.formView.name),s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(3),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(7),O(a.sizeOptions())}}function Ki(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Qi(t,i){if(t&1&&(r(0,"spk-form-field")(1,"label",34),l(2),d(3,Ki,3,1,"spk-tooltip",35),o(),u(4,"input",49),r(5,"spk-icon",37),l(6,"numpad"),o()()),t&2){let e,n=p().$implicit;s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name)}}function Yi(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Zi(t,i){if(t&1&&(r(0,"spk-toggle",31)(1,"label",34),l(2),d(3,Yi,3,1,"spk-tooltip",35),o(),u(4,"input",50),o()),t&2){let e,n=p().$implicit;s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name)}}function Ji(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function Xi(t,i){t&1&&(r(0,"spk-option",52),l(1,"None"),o()),t&2&&c("value","None")}function eo(t,i){if(t&1&&(r(0,"spk-option",45),l(1),u(2,"spk-checkbox",53),o()),t&2){let e=p().$implicit;c("value",e),s(),k(" ",e," ")}}function to(t,i){if(t&1&&d(0,Xi,2,1,"spk-option",52)(1,eo,3,2,"spk-option",45),t&2){let e=i.$implicit;_(e==="None"?0:1)}}function no(t,i){if(t&1&&(r(0,"spk-select",32)(1,"label",34),l(2),d(3,Ji,3,1,"spk-tooltip",35),o(),u(4,"input",51),F(5,44),D(6,to,2,1,null,null,V),b(),o()),t&2){let e,n=p().$implicit;c("selectMultiple",!0),s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),N("formControlName",n.formView.name),s(2),O(n.formView.options)}}function io(t,i){if(t&1&&(r(0,"spk-tooltip",35)(1,"spk-icon"),l(2,"question"),o()()),t&2){let e=p(2).$implicit;c("message",e.formView.longDescription)}}function oo(t,i){if(t&1&&(r(0,"spk-form-field")(1,"label",34),l(2),d(3,io,3,1,"spk-tooltip",35),o(),u(4,"input",36),o()),t&2){let e,n=p().$implicit;s(),E("for","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),s(),k(" ",(e=n.formView.shortDescription)!==null&&e!==void 0?e:n.formView.name," "),s(),_(n.formView.longDescription?3:-1),s(),E("id","destination-",n.formGroupName,"-",n.index,"-",n.asHttpOptions?"http":"other",""),N("formControlName",n.formView.name)}}function ro(t,i){if(t&1){let e=v();r(0,"button",54),C("click",function(){h(e);let a=p().$implicit,m=p(2);return y(m.removeFormView(a.formView,0))}),r(1,"spk-icon"),l(2,"x-circle"),o()()}}function ao(t,i){if(t&1&&(r(0,"div",25),F(1,26),d(2,Ti,5,16,"app-file-tree",27)(3,Di,5,12,"app-file-tree",28)(4,Pi,7,12,"spk-form-field")(5,Ri,8,13,"spk-form-field")(6,Ui,8,11,"spk-select")(7,zi,8,12,"spk-select",29)(8,Wi,15,11,"div",30)(9,Qi,7,11,"spk-form-field")(10,Zi,5,11,"spk-toggle",31)(11,no,8,8,"spk-select",32)(12,oo,5,11,"spk-form-field"),b(),d(13,ro,3,0,"button",33),o()),t&2){let e=i.$implicit;ue("single-field",e.formGroupName!=="advanced"),s(),c("formGroupName",e.formGroupName),s(),_(e.formView.type==="FileTree"?2:e.formView.type==="FolderTree"?3:e.formView.type==="String"||e.formView.type==="Path"?4:e.formView.type==="Password"?5:e.formView.type==="Enumeration"?6:e.formView.type==="NonValidatedSelectableString"?7:e.formView.type==="Size"?8:e.formView.type==="Integer"?9:e.formView.type==="Boolean"?10:e.formView.type==="Flags"?11:e.formView.type==="Timespan"?12:-1),s(11),_(e.formGroupName==="advanced"?13:-1)}}function lo(t,i){if(t&1&&(F(0,9)(1,18),D(2,Ci,1,9,"ng-container",null,V),D(4,yi,1,9,"ng-container",null,V),r(6,"app-toggle-card",19),F(7,20),l(8," Advanced options "),r(9,"spk-menu")(10,"button",21),l(11," Add advanced option "),r(12,"spk-icon"),l(13,"plus"),o()(),F(14,7),D(15,xi,2,1,"button",22,V),b(),o(),b(),D(17,Si,1,9,"ng-container",null,V),o(),r(19,"app-toggle-card",19),F(20,20),l(21," Http options "),r(22,"spk-menu")(23,"button",21),l(24," Add http option "),r(25,"spk-icon"),l(26,"plus"),o()(),F(27,7),D(28,ki,2,1,"button",22,V),b(),o(),b(),D(30,Fi,1,9,"ng-container",null,V),o(),d(32,ao,14,5,"ng-template",null,1,Ye),b()()),t&2){let e=p();s(2),O(e.destinationFormPair().custom),s(2),O(e.destinationFormPair().dynamic),s(2),c("disallowToggle",!0),s(4),c("disabled",e.notSelectedAdvancedFormPair().length===0),s(5),O(e.notSelectedAdvancedFormPair()),s(2),O(e.selectedAdvancedFormPair()),s(2),c("disallowToggle",!0),s(4),c("disabled",e.notSelectedHttpOptions().length===0),s(5),O(e.notSelectedHttpOptions()),s(2),O(e.selectedHttpOptions())}}function so(t,i){if(t&1){let e=v();r(0,"spk-dialog",55),Tt("isOpenChange",function(a){h(e);let m=p();return bt(m.targetUrlDialogOpen,a)||(m.targetUrlDialogOpen=a),y(a)}),r(1,"header",56)(2,"h2"),l(3,"Edit target URL"),o(),r(4,"spk-alert",57),l(5,"Be careful, this will overwrite everything you have in your destination."),o()(),r(6,"div",58)(7,"spk-form-field"),u(8,"textarea",59),o()(),r(9,"footer",60)(10,"button",11),C("click",function(){h(e);let a=p();return y(a.closeTargetUrlDialog(!1))}),l(11,"Cancel"),o(),r(12,"button",61),C("click",function(){h(e);let a=p();return y(a.closeTargetUrlDialog(!0))}),l(13," Override target URLc "),r(14,"spk-icon"),l(15,"swap"),o()()()()}if(t&2){let e=p();Ft("isOpen",e.targetUrlDialogOpen),c("options",Vt(3,mi)),s(8),c("formControl",e.targetUrlCtrl)}}var po=["Bytes","KB","MB","GB","TB","PB"],lt=new U,jt=(t={destinations:[]})=>lt.group({destinations:lt.array(t.destinations)}),qt=({key:t,customGroup:i,dynamicGroup:e,advancedGroup:n})=>lt.group({destinationType:lt.control(t),custom:i,dynamic:e,advanced:n}),yt=class t{#e=x(q);#n=x(ee);#i=x(Et);#o=x(Ie);#t=x(W);#r=x(Mt);injector=x(wt);formRef=Y.required("formRef");destinationForm=this.#t.destinationForm;destinationFormPair=this.#t.destinationFormPair;selectedAdvancedFormPair=this.#t.selectedAdvancedFormPair;notSelectedAdvancedFormPair=this.#t.notSelectedAdvancedFormPair;selectedHttpOptions=this.#t.selectedHttpOptions;notSelectedHttpOptions=this.#t.notSelectedHttpOptions;destinationOptions=this.#t.destinationOptions;destinationFormSignal=this.#t.destinationFormSignal;destinationCount=G(()=>this.destinationFormSignal()?.destinations?.length??0);sizeOptions=S(po);successfulTest=S(!1);getFormFieldValue(i,e,n){return((this.destinationForm.controls.destinations.controls?.[i]).controls?.[e]).controls[n].value}addDestinationFormGroup(i){this.#t.addDestinationFormGroup(i)}addAdvancedFormPair(i,e){this.#t.addAdvancedFormPair(i,e)}removeFormView(i,e){this.#t.removeAdvancedFormPair(i,e)}addHttpOption(i,e){this.#t.addHttpOption(i,e)}targetUrl=G(()=>this.#t.getCurrentTargetUrl()[0]);targetUrlCtrl=new Nt;targetUrlInitial=S(null);targetUrlDialogOpen=S(!1);openTargetUrlDialog(){let e=this.#t.getCurrentTargetUrl()[0];this.targetUrlCtrl.setValue(e),this.targetUrlInitial.set(e),this.targetUrlDialogOpen.set(!0)}closeTargetUrlDialog(i=!1){this.targetUrlDialogOpen.set(!1);let e=this.targetUrlCtrl.value,n=this.targetUrlInitial();!i||e===n||this.#t.updateFieldsFromTargetUrl(this.targetUrlCtrl.value)}testDestination(i=0){let n=this.#t.getCurrentTargetUrl()[i];n&&this.#o.postApiV1RemoteoperationTest({requestBody:{path:n}}).subscribe({next:()=>{this.successfulTest.set(!0),setTimeout(()=>{this.successfulTest.set(!1)},3e3)},error:a=>{let m=a.error.error.Error;if(m==="missing-folder"&&this.#r.open(Oe,{data:{title:"Create folder",message:"The remote destination folder does not exist, do you want to create it?"},closed:g=>{g&&this.#o.postApiV1RemoteoperationCreate({requestBody:{path:n}}).subscribe()}}),m.startsWith("incorrect-cert:")){let g=m.split("incorrect-cert:")[1];this.#r.open(Oe,{maxWidth:"500px",data:{title:"Trust the certificate",message:`The server is using a certificate that is not trusted.
|
|
2
|
-
If this is a self-signed certificate, you can choose to trust this certificate.
|
|
3
|
-
The server reported the certificate hash: ${g}`,confirmText:"Trust the certificate",cancelText:"Cancel"},closed:A=>{A&&this.#t.addHttpOptionByName("accept-specified-ssl-hash",g)}})}if(m.startsWith("incorrect-host-key:")){let g=m.split('incorrect-host-key:"')[1].split('",')[0],A=m.split('accepted-host-key:"')[1].split('",')[0];A?this.#r.open(Oe,{maxWidth:"500px",data:{title:"The host key has changed",message:`The host key has changed, please check with the server administrator if this is correct,
|
|
4
|
-
otherwise you could be the victim of a MAN-IN-THE-MIDDLE attack.
|
|
5
|
-
Do you want to REPLACE your CURRENT host key ${A}
|
|
6
|
-
with the REPORTED host key: ${g}?`,confirmText:"Approve",cancelText:"Cancel"},closed:$=>{$&&this.#t.addAdvancedFormPairByName("ssh-fingerprint",i,g)}}):this.#r.open(Oe,{maxWidth:"500px",data:{title:"Approve host key?",message:`No certificate was specified, please verify that the reported host key is correct: ${g}`,confirmText:"Approve",cancelText:"Cancel"},closed:$=>{$&&this.#t.addAdvancedFormPairByName("ssh-fingerprint",i,g)}})}}})}mapToTargetUrl(i){return ot(i.value)}removeDestinationFormGroup(i){this.destinationForm.controls.destinations.removeAt(i)}displayFn(i){let e=this.destinationOptions().find(n=>n.Key===i);return e?`${e.DisplayName}`:""}goBack(){this.#e.navigate(["general"],{relativeTo:this.#n.parent})}next(){this.#e.navigate(["source-data"],{relativeTo:this.#n.parent})}#l=S("https://duplicati-oauth-handler.appspot.com/").asReadonly();#s=S(Math.random().toString(36).substring(2)+Math.random().toString(36).substring(2)).asReadonly();#a=S(!1);#p=S(null);keyCreation(){}oauthStartTokenCreation(i){this.#a.set(!0);let e=450,n=600,a=this.#l()+"?type="+i+"&token="+this.#s(),m=screen.width/2-e/2,g=screen.height/2-n/2,A=window.open(a,"_blank","height="+n+",width="+e+",menubar=0,status=0,titlebar=0,toolbar=0,left="+m+",top="+g);A?.addEventListener("blur",$=>{console.log("event blur",$)}),A?.addEventListener("beforeunload",$=>{console.log("event beforeunload",$),this.#i.get(this.#l()+"fetch?callback=JSON_CALLBACK",{params:{token:this.#s()}}).pipe(He(()=>this.#a.set(!1))).subscribe({next:R=>{console.log("res",R),R?.authid&&this.#p.set(R.authid)}})})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=z({type:t,selectors:[["app-destination"]],viewQuery:function(e,n){e&1&&Z(n.formRef,ri,5),e&2&&J()},standalone:!0,features:[j],decls:29,vars:6,consts:[["formRef",""],["fieldTemplate",""],[3,"submit","formGroup"],[1,"title-30"],[1,"actions"],["spk-button","","type","button",1,"small",3,"success"],["spk-button","","type","button",1,"small"],["menu",""],["spk-button","","type","button",1,"small",3,"click"],["formArrayName","destinations"],[1,"form-actions"],["spk-button","","type","button",3,"click"],["spk-button","","type","submit",1,"raised","primary"],[3,"isOpen","options"],[3,"click"],[1,"spk-primary"],[1,"most-common-destinations"],[1,"tile",3,"click"],["formGroupName","0"],[3,"disallowToggle"],["title",""],["spk-button","","type","button",1,"outlined","small",3,"disabled"],["item","","type","button"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],["item","","type","button",3,"click"],[1,"field-row"],[3,"formGroupName"],[3,"startingPath","accepts","showFiles","showHiddenNodes","selectFiles"],[3,"startingPath"],[3,"isFreeText"],[1,"form-column",3,"formGroupName"],[1,"primary","raised"],[1,"primary",3,"selectMultiple"],["spk-button","","type","button",1,"outlined"],[3,"for"],[1,"primary",3,"message"],["type","text",3,"id","formControlName"],["prefix",""],["autocomplete","off",3,"type","id","formControlName"],["prefix","",1,"link"],["suffix","",1,"clickable"],["prefix","",1,"link",3,"click"],["suffix","",1,"clickable",3,"click"],["type","search",3,"id","formControlName"],["options",""],[3,"value"],[1,"form-row"],["type","number","formControlName","size",3,"id"],["type","search","formControlName","unit"],["type","number",3,"id","formControlName"],["type","checkbox",3,"id","formControlName"],["type","text","id","text",3,"formControlName"],["deselect","",3,"value"],[1,"raised","primary"],["spk-button","","type","button",1,"outlined",3,"click"],[3,"isOpenChange","isOpen","options"],["header",""],[1,"warning"],["content",""],["id","targetUrl","autocomplete","off",3,"formControl"],["footer",""],["spk-button","","type","submit",1,"raised","primary",3,"click"]],template:function(e,n){if(e&1){let a=v();r(0,"form",2,0),C("submit",function(){return h(a),y(n.next())}),r(2,"header")(3,"h3",3),l(4," Backup destination "),r(5,"div",4),d(6,ui,3,3,"button",5),r(7,"spk-menu")(8,"button",6)(9,"spk-icon"),l(10,"dots-three-vertical"),o()(),F(11,7),r(12,"button",8),C("click",function(){return h(a),y(n.openTargetUrlDialog())}),r(13,"spk-icon"),l(14,"link"),o(),l(15," Edit target URL "),o(),b(),o()()(),d(16,fi,4,0,"p"),o(),d(17,_i,28,0)(18,lo,34,4,"ng-container",9),r(19,"div",10)(20,"button",11),C("click",function(){return h(a),y(n.goBack())}),r(21,"spk-icon"),l(22,"arrow-left"),o(),l(23," Go back "),o(),r(24,"button",12)(25,"spk-icon"),l(26,"arrow-right"),o(),l(27," Continue "),o()()(),d(28,so,16,4,"spk-dialog",13)}if(e&2){let a;c("formGroup",n.destinationForm),s(6),_(n.destinationCount()>0?6:-1),s(10),_(n.destinationCount()>0?16:-1),s(),_(n.destinationCount()===0?17:-1),s(),_(!((a=n.destinationFormSignal())==null||a.destinations==null)&&a.destinations.length?18:-1),s(10),_(n.targetUrlDialogOpen()?28:-1)}},dependencies:[pe,oe,le,se,te,we,xe,ne,ie,Pt,re,ae,Se,It,Ze,ce,de,tt,et,nt,me,ve,Ge,Gt,Xe,Fe,Me],styles:["[_nghost-%COMP%]{display:block}header[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}header[_ngcontent-%COMP%] h2[_ngcontent-%COMP%], header[_ngcontent-%COMP%] spk-alert[_ngcontent-%COMP%]{width:100%}header[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;gap:.5rem}header[_ngcontent-%COMP%] p[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{cursor:pointer;text-decoration:underline}header[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{display:flex;gap:.5rem}pre[_ngcontent-%COMP%]{white-space:pre-wrap}.field-row[_ngcontent-%COMP%]{display:grid;align-items:flex-end;grid-template-columns:1fr 2.5rem;gap:.5rem}.field-row.single-field[_ngcontent-%COMP%]{display:block}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}.form-column[_ngcontent-%COMP%]{display:flex;flex-direction:column}.form-column[_ngcontent-%COMP%] label[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.25rem}.form-column[_ngcontent-%COMP%] spk-icon[_ngcontent-%COMP%]{font-size:1rem}.form-row[_ngcontent-%COMP%]{display:grid;grid-template-columns:2fr 1fr;gap:.5rem;align-items:flex-end}.clickable[_ngcontent-%COMP%]{cursor:pointer;color:var(--primary-500)}.most-common-destinations[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.most-common-destinations[_ngcontent-%COMP%] .tile[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem;padding:1rem;border:1px solid var(--base-level-40);border-radius:var(--shape-3);box-shadow:var(--shadow-1);background-color:var(--base-level-20);cursor:pointer}.most-common-destinations[_ngcontent-%COMP%] .tile[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font:var(--paragraph-10);margin:0}[prefix].link[_ngcontent-%COMP%]{cursor:pointer;text-decoration:underline;color:var(--primary-500)}textarea[_ngcontent-%COMP%] ~ grammarly-extension[_ngcontent-%COMP%]{display:none}"],changeDetection:0})};export{jt as a,qt as b,yt as c,Bt as d,_t as e,ft as f,Ut as g,ir as h,gt as i,Lt as j,Ct as k,zt as l,ht as m,W as n};
|