@duplicati/ngclient 0.0.7 → 0.0.8
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-PDDKKE7W.js → chunk-7I4KJB7N.js} +1 -1
- package/{chunk-66NVA5DG.js → chunk-AV26WKVA.js} +1 -1
- package/chunk-DIZGZ272.js +1 -0
- package/{chunk-44UCE3JH.js → chunk-QGZLYKKB.js} +1 -1
- package/index.html +1 -1
- package/{main-NHFMMOPT.js → main-L3LC53O6.js} +1 -1
- package/package.json +1 -1
- package/chunk-2P7TBSV2.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as P}from"./chunk-35H2LYPK.js";import"./chunk-V7LHB36E.js";import{a as I}from"./chunk-WU4K3UNC.js";import{a as y,d as M,e as D,k as R}from"./chunk-S7QBT7L2.js";import{d as v}from"./chunk-AFUS3PYG.js";import"./chunk-L4EVZZOM.js";import{a as O}from"./chunk-SYBUINNV.js";import{$a as d,Db as r,Fb as B,Gb as S,Jb as b,Lb as h,Oa as l,X as s,Z as m,bb as k,fb as f,gb as g,hb as C,ib as _,jb as i,kb as p,lb as c,rb as x}from"./chunk-RBNO3K72.js";var w=e=>["/restore-flow",e];function L(e,o){e&1&&c(0,"spk-progress-bar",0)}function T(e,o){if(e&1&&(i(0,"spk-card",1),c(1,"img",2),i(2,"div",3)(3,"h3"),r(4),p(),i(5,"p"),r(6),p()(),i(7,"button",4),r(8," Restore "),i(9,"spk-icon"),r(10,"arrow-right"),p()()()),e&2){let t,a,n=o.$implicit;l(4),B("Restore ",(t=n.Backup==null?null:n.Backup.Name)!==null&&t!==void 0?t:"Backup name missing",""),l(2),S(" ",(a=n.Backup==null||n.Backup.Metadata==null?null:n.Backup.Metadata.SourceSizeString)!==null&&a!==void 0?a:"-"," / ",(a=n.Backup==null||n.Backup.Metadata==null?null:n.Backup.Metadata.BackupListCount)!==null&&a!==void 0?a:"-"," "),l(),k("routerLink",h(4,w,n.Backup==null?null:n.Backup.ID))}}function E(e,o){if(e&1&&C(0,T,11,6,"spk-card",1,g),e&2){let t=x();_(t.backups())}}function N(e,o){e&1&&r(0," No backups found ")}var u=class e{#e=s(I);#t=s(O);backups=this.#e.backups;backupsLoading=this.#e.backupsLoading;ngOnInit(){this.#e.getBackups()}restoreNow(o){this.#t.postApiV1BackupByIdRestore({id:o.Backup?.ID,requestBody:{}})}static \u0275fac=function(t){return new(t||e)};static \u0275cmp=m({type:e,selectors:[["app-restore"]],standalone:!0,features:[b],decls:7,vars:1,consts:[[1,"indeterminate","primary"],[1,"type-a"],["src","
|
|
1
|
+
import{a as P}from"./chunk-35H2LYPK.js";import"./chunk-V7LHB36E.js";import{a as I}from"./chunk-WU4K3UNC.js";import{a as y,d as M,e as D,k as R}from"./chunk-S7QBT7L2.js";import{d as v}from"./chunk-AFUS3PYG.js";import"./chunk-L4EVZZOM.js";import{a as O}from"./chunk-SYBUINNV.js";import{$a as d,Db as r,Fb as B,Gb as S,Jb as b,Lb as h,Oa as l,X as s,Z as m,bb as k,fb as f,gb as g,hb as C,ib as _,jb as i,kb as p,lb as c,rb as x}from"./chunk-RBNO3K72.js";var w=e=>["/restore-flow",e];function L(e,o){e&1&&c(0,"spk-progress-bar",0)}function T(e,o){if(e&1&&(i(0,"spk-card",1),c(1,"img",2),i(2,"div",3)(3,"h3"),r(4),p(),i(5,"p"),r(6),p()(),i(7,"button",4),r(8," Restore "),i(9,"spk-icon"),r(10,"arrow-right"),p()()()),e&2){let t,a,n=o.$implicit;l(4),B("Restore ",(t=n.Backup==null?null:n.Backup.Name)!==null&&t!==void 0?t:"Backup name missing",""),l(2),S(" ",(a=n.Backup==null||n.Backup.Metadata==null?null:n.Backup.Metadata.SourceSizeString)!==null&&a!==void 0?a:"-"," / ",(a=n.Backup==null||n.Backup.Metadata==null?null:n.Backup.Metadata.BackupListCount)!==null&&a!==void 0?a:"-"," "),l(),k("routerLink",h(4,w,n.Backup==null?null:n.Backup.ID))}}function E(e,o){if(e&1&&C(0,T,11,6,"spk-card",1,g),e&2){let t=x();_(t.backups())}}function N(e,o){e&1&&r(0," No backups found ")}var u=class e{#e=s(I);#t=s(O);backups=this.#e.backups;backupsLoading=this.#e.backupsLoading;ngOnInit(){this.#e.getBackups()}restoreNow(o){this.#t.postApiV1BackupByIdRestore({id:o.Backup?.ID,requestBody:{}})}static \u0275fac=function(t){return new(t||e)};static \u0275cmp=m({type:e,selectors:[["app-restore"]],standalone:!0,features:[b],decls:7,vars:1,consts:[[1,"indeterminate","primary"],[1,"type-a"],["src","assets/images/folder.png","alt","","width","48px"],[1,"text"],["spk-button","",3,"routerLink"]],template:function(t,a){t&1&&(c(0,"app-status-bar"),i(1,"section")(2,"h2"),r(3,"Where do you want to restore from?"),p(),d(4,L,1,0,"spk-progress-bar",0)(5,E,2,0)(6,N,1,0),p()),t&2&&(l(4),f(a.backupsLoading()?4:a.backups().length?5:6))},dependencies:[P,D,M,y,R,v],styles:["[_nghost-%COMP%]{display:block}h2[_ngcontent-%COMP%]{font:var(--title-30);text-align:center;padding:2rem}section[_ngcontent-%COMP%]{max-width:43.75rem;margin:0 auto;padding:2rem 0;display:flex;flex-direction:column;gap:1rem}spk-divider[_ngcontent-%COMP%]{color:var(--base-level-60)}spk-card[_ngcontent-%COMP%]{display:flex;align-items:center;gap:1rem;--card-padding: 2rem}spk-card[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{flex:1 0;display:flex;flex-direction:column;gap:.25rem}"],changeDetection:0})};export{u as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as me}from"./chunk-5Y47Y3RB.js";import{a as le}from"./chunk-K3HFPUKT.js";import"./chunk-JDCFQ6PF.js";import{a as ae}from"./chunk-35H2LYPK.js";import"./chunk-V7LHB36E.js";import"./chunk-WU4K3UNC.js";import{b as se}from"./chunk-P4AWKIXG.js";import{b as L,d as $,e as W,f as q,h as z,i as j,j as H,l as J,m as K,n as Q,o as X,p as Y,q as Z}from"./chunk-C52YH32J.js";import{a as re}from"./chunk-TIGGJ4KF.js";import{d as ee,h as te,l as ne,n as ie}from"./chunk-S7QBT7L2.js";import{a as oe}from"./chunk-SYBUINNV.js";import{$a as O,$b as G,Db as r,Eb as E,Fb as b,Jb as A,L as v,La as D,Oa as s,Ua as h,X as y,Z as I,bb as S,bc as B,db as M,f as F,fb as C,gb as x,ha as u,hb as T,ia as d,ib as k,jb as n,kb as o,lb as p,mb as R,nb as w,pb as _,qb as m,rb as c,s as U,ub as N}from"./chunk-RBNO3K72.js";function ue(a,e){if(a&1){let t=_();n(0,"spk-form-field",28),p(1,"input",29),o(),n(2,"button",30),m("click",function(){u(t);let l=c(2);return d(l.beginRemoteRegistration())}),r(3," Register for remote control "),o()}}function de(a,e){if(a&1&&(n(0,"div",26)(1,"label"),r(2,"Machine is now registered, open this link to add it to your account:"),o(),n(3,"a",31),r(4),o()()),a&2){let t=c(2);s(3),N("href",t.remoteControlClaimUrl(),D),s(),E(t.remoteControlClaimUrl())}}function ge(a,e){a&1&&(n(0,"div",26)(1,"label"),r(2,"Registering, please wait..."),o()())}function Ce(a,e){if(a&1){let t=_();n(0,"button",30),m("click",function(){u(t);let l=c(2);return d(l.cancelRemoteRegistration())}),r(1," Cancel registration "),o()}}function _e(a,e){if(a&1){let t=_();n(0,"button",30),m("click",function(){u(t);let l=c(2);return d(l.disableRemoteControl())}),r(1," Disable remote control "),o()}}function fe(a,e){if(a&1){let t=_();n(0,"button",30),m("click",function(){u(t);let l=c(2);return d(l.enableRemoteControl())}),r(1," Enable remote control "),o(),n(2,"button",32),m("click",function(){u(t);let l=c(2);return d(l.deleteRemoteControl())}),r(3," Delete remote control setup "),o()}}function Se(a,e){if(a&1&&(n(0,"div",5),O(1,ue,4,0)(2,de,5,2,"div",26)(3,ge,3,0,"div",26)(4,Ce,2,0,"button",27)(5,_e,2,0,"button",27)(6,fe,4,0),o()),a&2){let t=c();s(),C(t.remoteControlState()==="inactive"?1:-1),s(),C(t.remoteControlState()==="registered"?2:-1),s(),C(t.remoteControlState()==="registering"?3:-1),s(),C(t.remoteControlState()==="registering"||t.remoteControlState()==="registeringfaulted"||t.remoteControlState()==="registered"?4:-1),s(),C(t.remoteControlState()==="connected"||t.remoteControlState()==="enabled"?5:-1),s(),C(t.remoteControlState()==="disabled"?6:-1)}}function he(a,e){if(a&1){let t=_();n(0,"option",33),m("click",function(){let l=u(t).$implicit,g=c();return d(g.pauseSettings.controls.timeType.setValue(l.value))}),r(1),o()}if(a&2){let t=e.$implicit;S("value",t.value),s(),b(" ",t.label," ")}}function be(a,e){if(a&1){let t=_();n(0,"option",33),m("click",function(){let l=u(t).$implicit,g=c();return d(g.pauseSettings.controls.time.setValue(l))}),r(1),o()}if(a&2){let t=e.$implicit;S("value",t),s(),E(t)}}function ve(a,e){if(a&1){let t=_();n(0,"option",33),m("click",function(){let l=u(t).$implicit,g=c();return d(g.settingsForm.controls.usageStatistics.setValue(l.value))}),r(1),o()}if(a&2){let t=e.$implicit;S("value",t.value),s(),b(" ",t.label," ")}}var f=new X,pe=[{value:"s",label:"Seconds"},{value:"m",label:"Minutes"},{value:"h",label:"Hours"}],V=[{value:"en",label:"English"},{value:"fr",label:"French"},{value:"de",label:"German"},{value:"es",label:"Spanish"},{value:"it",label:"Italian"}],ce=[{value:"",label:"System default (information)"},{value:"information",label:"Usage statistics, warnings, errors, and crashes"},{value:"warning",label:"Warnings, errors and crashes"},{value:"error",label:"Errors and crashes"},{value:"crash",label:"Crashes only"},{value:"none",label:"None / disabled"}],P=class a{#i=y(le);#o=y(re);#e=y(oe);sysinfo=this.#o.systemInfo;isDarkMode=this.#i.isDarkMode;editAs=h("list");settingsForm=f.group({pauseSettings:f.group({time:f.control(0),timeType:f.control("s")}),language:f.control("en"),usageStatistics:f.control(""),updateChannel:f.control(""),remoteControlRegisterUrl:f.control("")});remoteControlState=h("unknown");remoteControlClaimUrl=h(null);sysInfoEffect=B(()=>{this.settingsForm.controls.remoteControlRegisterUrl.patchValue(this.sysinfo()?.RemoteControlRegistrationUrl??"")},{allowSignalWrites:!0});get pauseSettings(){return this.settingsForm.controls.pauseSettings}langSignal=se(this.settingsForm.controls.language.valueChanges);timeTypeOptions=h(pe);timeOptions=me([this.pauseSettings.controls.timeType.valueChanges.pipe(v("s")),this.pauseSettings.controls.time.valueChanges.pipe(v(null))],F(U(([e,t])=>{let i=this.#r(e);return t!==null?i.filter(l=>l.toString().includes(t.toString())):i}),v([])));languageOptions=G(()=>this.langSignal()?V.filter(e=>e.value===this.langSignal()):V);usageStatisticsOptions=h(ce);ngOnInit(){this.refreshRemoteControlStatus(),this.getServerSettings()}submit(){let e=`${this.pauseSettings.controls.time.value}${this.pauseSettings.controls.timeType.value}`;this.#e.patchApiV1Serversettings({requestBody:{"usage-reporter-level":this.settingsForm.controls.usageStatistics.value,"startup-delay":e==="0s"?"":e,"update-channel":this.settingsForm.controls.updateChannel.value}}).subscribe({next:t=>{console.log("res",t)},error:t=>{console.error("err",t)}})}getServerSettings(){return this.#e.getApiV1Serversettings().subscribe({next:e=>{let t=e["startup-delay"];this.settingsForm.patchValue({pauseSettings:{time:parseInt(t.substring(0,t.length-1)==""?"0":t.substring(0,t.length-1)),timeType:t.substring(-1)===""?"s":t.substring(-1)},usageStatistics:e["usage-reporter-level"],updateChannel:e["update-channel"]})}})}languageDisplay(e){return e?V.find(t=>t.value===e)?.label??null:null}typeDisplay(e){return e==null?null:pe.find(t=>t.value===e)?.label??null}usageDisplay(e){return typeof e!="string"?null:ce.find(t=>t.value===e)?.label??null}setDarkMode(){this.#i.setDarkMode()}setLightMode(){this.#i.setLightMode()}#r(e){let t=e==="h"?25:61;return new Array(t).fill(0).map((i,l)=>l)}repeatRegisterTimer=null;#t(e){e.RegistrationUrl&&this.remoteControlClaimUrl.set(e.RegistrationUrl),console.log(e),e.IsConnected?this.remoteControlState.set("connected"):e.IsEnabled?this.remoteControlState.set("enabled"):e.CanEnable?this.remoteControlState.set("disabled"):e.IsRegisteringFaulted?this.remoteControlState.set("registeringfaulted"):e.IsRegistering?e.RegistrationUrl!=null&&e.RegistrationUrl.trim().length>0?this.remoteControlState.set("registered"):this.remoteControlState.set("registering"):this.remoteControlState.set("inactive");let t=this.remoteControlState();console.log(t),this.repeatRegisterTimer!==null&&(clearTimeout(this.repeatRegisterTimer),this.repeatRegisterTimer=null),t==="registering"&&(this.repeatRegisterTimer=setTimeout(()=>{this.#e.postApiV1RemotecontrolRegister({requestBody:{RegistrationUrl:""}}).subscribe({next:i=>{this.#t(i)},error:i=>{this.#n(i)}})},5e3)),(t==="enabled"||t==="registered")&&(this.repeatRegisterTimer=setTimeout(()=>{this.#e.getApiV1RemotecontrolStatus().subscribe({next:i=>{this.#t(i)},error:i=>{this.#n(i)}})},5e3)),e.IsRegistering&&e.CanEnable&&this.#e.deleteApiV1RemotecontrolRegister().subscribe({next:i=>{this.#t(i)}})}#n(e){this.#e.getApiV1RemotecontrolStatus().subscribe({next:t=>{this.#t(t)}})}refreshRemoteControlStatus(){this.#e.getApiV1RemotecontrolStatus().subscribe({next:e=>{this.#t(e)},error:e=>{this.#n(e)}})}beginRemoteRegistration(){this.remoteControlState.set("registering");let e=this.settingsForm.controls.remoteControlRegisterUrl.value;this.#e.postApiV1RemotecontrolRegister({requestBody:{RegistrationUrl:e}}).subscribe({next:t=>{this.#t(t)},error:t=>{this.#n(t)}})}cancelRemoteRegistration(){this.#e.deleteApiV1RemotecontrolRegister().subscribe({next:e=>{this.#t(e)},error:e=>{this.#n(e)}})}enableRemoteControl(){this.#e.postApiV1RemotecontrolEnable().subscribe({next:e=>{this.#t(e)},error:e=>{this.#n(e)}})}disableRemoteControl(){this.#e.postApiV1RemotecontrolDisable().subscribe({next:e=>{this.#t(e)},error:e=>{this.#n(e)}})}deleteRemoteControl(){let e=this;confirm("Are you sure you want to delete the remote control registration?")&&e.#e.deleteApiV1RemotecontrolRegistration().subscribe({next:t=>{e.#t(t)},error:t=>{e.#n(t)}})}getRemoteControlStatusText(){let e=this.remoteControlState();return e==="enabled"?"Remote control is enabled but not connected":e==="connected"?"Remote control is connected":e==="registering"?"Registering machine...":e==="registeringfaulted"?"Registration failed":e==="registered"?"Registered, waiting for accept":e==="disabled"?"Remote control is configured but not enabled":e==="unknown"?"...loading...":"Remote control is not set up"}static \u0275fac=function(t){return new(t||a)};static \u0275cmp=I({type:a,selectors:[["app-settings"]],standalone:!0,features:[A],decls:100,vars:11,consts:[[1,"content",3,"submit","formGroup"],[1,"title"],["type","submit","spk-button","",1,"raised","primary"],[1,"left"],[1,"right","remote-control"],[1,"field-row"],[1,"right"],["formGroupName","pauseSettings",1,"field-row"],[3,"displayValue"],["type","text","formControlName","timeType"],["options",""],[3,"value"],["type","search","formControlName","time"],[1,"themes"],["src","/assets/images/light-theme.png","alt","light theme",3,"click"],["src","/assets/images/dark-theme.png","alt","dark theme",3,"click"],[1,"right","radios"],[1,"radio-option",3,"click"],[1,"outlined","primary"],["type","radio","name","updateChannel","value","","formControlName","updateChannel"],["type","radio","name","updateChannel","value","stable","formControlName","updateChannel"],["type","radio","name","updateChannel","value","beta","formControlName","updateChannel"],["type","radio","name","updateChannel","value","experimental","formControlName","updateChannel"],["type","radio","name","updateChannel","value","canary","formControlName","updateChannel"],["href","#"],["type","text","formControlName","usageStatistics"],[1,"field-col"],["type","button","spk-button","",1,"raised"],["label","Registration URL","for","remoteControlRegisterUrl"],["type","text","spk-input","","id","remoteControlRegisterUrl","name","remoteControlRegisterUrl","formControlName","remoteControlRegisterUrl"],["type","button","spk-button","",1,"raised",3,"click"],["target","_blank",3,"href"],["type","button","spk-button","",1,"raised","warn",3,"click"],[3,"click","value"]],template:function(t,i){if(t&1&&(p(0,"app-status-bar"),n(1,"form",0),m("submit",function(){return i.submit()}),n(2,"header")(3,"div",1)(4,"h2"),r(5,"Settings"),o(),n(6,"p"),r(7,"Configure your backup settings."),o()(),n(8,"button",2),r(9,"Save changes"),o()(),n(10,"section")(11,"div",3)(12,"h3"),r(13,"Remote access control"),o(),n(14,"p"),r(15),o()(),n(16,"div",4),O(17,Se,7,6,"div",5),o()(),n(18,"section")(19,"div",3)(20,"h3"),r(21,"Pause after startup or hibernation"),o(),n(22,"p"),r(23," Duplicati will run when started, but will remain in paused state for the duration. Duplicati will occupy minimal system resources and no backups will be run. "),o()(),n(24,"div",6)(25,"div",7)(26,"spk-select",8),p(27,"input",9),R(28,10),T(29,he,2,2,"option",11,x),w(),o(),n(31,"spk-select"),p(32,"input",12),R(33,10),T(34,be,2,2,"option",11,x),w(),o()()()(),n(36,"section")(37,"div",3)(38,"h3"),r(39,"Color theme"),o(),n(40,"p"),r(41,"Customize your application theme"),o()(),n(42,"div",6)(43,"div",13)(44,"img",14),m("click",function(){return i.setLightMode()}),o(),n(45,"img",15),m("click",function(){return i.setDarkMode()}),o()()()(),n(46,"section")(47,"div",3)(48,"h3"),r(49,"Update channel"),o(),n(50,"p"),r(51,"Lorem ipsum dolor sit amet, consectetur adipiscing elit."),o()(),n(52,"div",16)(53,"div",17),m("click",function(){return i.settingsForm.controls.updateChannel.setValue("")}),n(54,"spk-radio",18),r(55),p(56,"input",19),o(),n(57,"p"),r(58),o()(),n(59,"div",17),m("click",function(){return i.settingsForm.controls.updateChannel.setValue("stable")}),n(60,"spk-radio",18),r(61," Stable "),p(62,"input",20),o(),n(63,"p"),r(64,"Official releases"),o()(),n(65,"div",17),m("click",function(){return i.settingsForm.controls.updateChannel.setValue("beta")}),n(66,"spk-radio",18),r(67," Beta "),p(68,"input",21),o(),n(69,"p"),r(70," Try out the new features that we are working on. Currently the most stable version available. Test Restore data before using this in production environments. "),o()(),n(71,"div",17),m("click",function(){return i.settingsForm.controls.updateChannel.setValue("experimental")}),n(72,"spk-radio",18),r(73," Experimental "),p(74,"input",22),o(),n(75,"p"),r(76,"Specific builds for developers only. Not for use with important data."),o()(),n(77,"div",17),m("click",function(){return i.settingsForm.controls.updateChannel.setValue("canary")}),n(78,"spk-radio",18),r(79," Canary "),p(80,"input",23),o(),n(81,"p"),r(82,"Individual builds for developers only. Not for use with important data."),o()()()(),n(83,"section")(84,"div",3)(85,"h3"),r(86,"Usage statistics"),o(),n(87,"p"),r(88," Usage reports help us improve the user experience and evaluate impact of new features. We use them to generate "),n(89,"a",24),r(90,"public usage statistics."),o(),p(91,"br")(92,"br"),r(93," All usage reports are sent anonymously and do not contain any personal information. They contain information about hardware and operating system, the type of backend, backup duration, overall size of source data and similar data. They do not contain paths, filenames, usernames, passwords or similar sensitive information. "),o()(),n(94,"div",6)(95,"spk-select",8),p(96,"input",25),R(97,10),T(98,ve,2,2,"option",11,x),w(),o()()()()),t&2){let l,g;s(),S("formGroup",i.settingsForm),s(14),E(i.getRemoteControlStatusText()),s(2),C(i.remoteControlState()!=="unknown"?17:-1),s(9),S("displayValue",i.typeDisplay(i.settingsForm.value.pauseSettings==null?null:i.settingsForm.value.pauseSettings.timeType)),s(3),k(i.timeTypeOptions()),s(5),k(i.timeOptions()),s(10),M("active",!i.isDarkMode()),s(),M("active",i.isDarkMode()),s(10),b(" Default (",(l=i.sysinfo())==null?null:l.DefaultUpdateChannel,") "),s(3),b("Same as the base install version: ",(g=i.sysinfo())==null?null:g.ServerVersionType,""),s(37),S("displayValue",i.usageDisplay(i.settingsForm.controls.usageStatistics.value)),s(3),k(i.usageStatisticsOptions())}},dependencies:[Y,q,K,Q,L,z,$,W,Z,j,J,H,ae,ee,ne,te,ie],styles:["[_nghost-%COMP%]{display:block}.content[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:0 2rem 2rem}header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:2rem 0}header[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem}section[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:2rem 0;border-top:1px solid var(--base-level-40)}section[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem;align-items:flex-start}section[_ngcontent-%COMP%] .left[_ngcontent-%COMP%] spk-button-group[_ngcontent-%COMP%]{margin-top:.25rem}section[_ngcontent-%COMP%] .left[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{text-wrap:balance;width:50%}.themes[_ngcontent-%COMP%]{display:flex;gap:.5rem}.themes[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{max-width:240px;border-radius:var(--shape-3);cursor:pointer}.themes[_ngcontent-%COMP%] img.active[_ngcontent-%COMP%]{border:2px solid var(--primary-500)}.radios[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem}.radio-option[_ngcontent-%COMP%]{cursor:pointer}.radio-option[_ngcontent-%COMP%] spk-radio[_ngcontent-%COMP%]{color:var(--base-level-60);margin-bottom:.25rem}.radio-option[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{text-wrap:balance;color:var(--base-level-60R)}.field-col[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}.field-row[_ngcontent-%COMP%]{display:flex;gap:.5rem;width:100%}.field-row[_ngcontent-%COMP%] spk-form-field[_ngcontent-%COMP%], .field-row[_ngcontent-%COMP%] spk-select[_ngcontent-%COMP%]{flex:1 0}.remote-control[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{white-space:nowrap}"],changeDetection:0})};export{P as default};
|
|
1
|
+
import{a as me}from"./chunk-5Y47Y3RB.js";import{a as le}from"./chunk-K3HFPUKT.js";import"./chunk-JDCFQ6PF.js";import{a as ae}from"./chunk-35H2LYPK.js";import"./chunk-V7LHB36E.js";import"./chunk-WU4K3UNC.js";import{b as se}from"./chunk-P4AWKIXG.js";import{b as L,d as $,e as W,f as q,h as z,i as j,j as H,l as J,m as K,n as Q,o as X,p as Y,q as Z}from"./chunk-C52YH32J.js";import{a as re}from"./chunk-TIGGJ4KF.js";import{d as ee,h as te,l as ne,n as ie}from"./chunk-S7QBT7L2.js";import{a as oe}from"./chunk-SYBUINNV.js";import{$a as O,$b as G,Db as r,Eb as E,Fb as b,Jb as A,L as v,La as D,Oa as s,Ua as h,X as y,Z as I,bb as S,bc as B,db as M,f as F,fb as C,gb as x,ha as u,hb as T,ia as d,ib as k,jb as n,kb as o,lb as p,mb as R,nb as w,pb as _,qb as m,rb as c,s as U,ub as N}from"./chunk-RBNO3K72.js";function ue(a,e){if(a&1){let t=_();n(0,"spk-form-field",28),p(1,"input",29),o(),n(2,"button",30),m("click",function(){u(t);let l=c(2);return d(l.beginRemoteRegistration())}),r(3," Register for remote control "),o()}}function de(a,e){if(a&1&&(n(0,"div",26)(1,"label"),r(2,"Machine is now registered, open this link to add it to your account:"),o(),n(3,"a",31),r(4),o()()),a&2){let t=c(2);s(3),N("href",t.remoteControlClaimUrl(),D),s(),E(t.remoteControlClaimUrl())}}function ge(a,e){a&1&&(n(0,"div",26)(1,"label"),r(2,"Registering, please wait..."),o()())}function Ce(a,e){if(a&1){let t=_();n(0,"button",30),m("click",function(){u(t);let l=c(2);return d(l.cancelRemoteRegistration())}),r(1," Cancel registration "),o()}}function _e(a,e){if(a&1){let t=_();n(0,"button",30),m("click",function(){u(t);let l=c(2);return d(l.disableRemoteControl())}),r(1," Disable remote control "),o()}}function fe(a,e){if(a&1){let t=_();n(0,"button",30),m("click",function(){u(t);let l=c(2);return d(l.enableRemoteControl())}),r(1," Enable remote control "),o(),n(2,"button",32),m("click",function(){u(t);let l=c(2);return d(l.deleteRemoteControl())}),r(3," Delete remote control setup "),o()}}function Se(a,e){if(a&1&&(n(0,"div",5),O(1,ue,4,0)(2,de,5,2,"div",26)(3,ge,3,0,"div",26)(4,Ce,2,0,"button",27)(5,_e,2,0,"button",27)(6,fe,4,0),o()),a&2){let t=c();s(),C(t.remoteControlState()==="inactive"?1:-1),s(),C(t.remoteControlState()==="registered"?2:-1),s(),C(t.remoteControlState()==="registering"?3:-1),s(),C(t.remoteControlState()==="registering"||t.remoteControlState()==="registeringfaulted"||t.remoteControlState()==="registered"?4:-1),s(),C(t.remoteControlState()==="connected"||t.remoteControlState()==="enabled"?5:-1),s(),C(t.remoteControlState()==="disabled"?6:-1)}}function he(a,e){if(a&1){let t=_();n(0,"option",33),m("click",function(){let l=u(t).$implicit,g=c();return d(g.pauseSettings.controls.timeType.setValue(l.value))}),r(1),o()}if(a&2){let t=e.$implicit;S("value",t.value),s(),b(" ",t.label," ")}}function be(a,e){if(a&1){let t=_();n(0,"option",33),m("click",function(){let l=u(t).$implicit,g=c();return d(g.pauseSettings.controls.time.setValue(l))}),r(1),o()}if(a&2){let t=e.$implicit;S("value",t),s(),E(t)}}function ve(a,e){if(a&1){let t=_();n(0,"option",33),m("click",function(){let l=u(t).$implicit,g=c();return d(g.settingsForm.controls.usageStatistics.setValue(l.value))}),r(1),o()}if(a&2){let t=e.$implicit;S("value",t.value),s(),b(" ",t.label," ")}}var f=new X,pe=[{value:"s",label:"Seconds"},{value:"m",label:"Minutes"},{value:"h",label:"Hours"}],V=[{value:"en",label:"English"},{value:"fr",label:"French"},{value:"de",label:"German"},{value:"es",label:"Spanish"},{value:"it",label:"Italian"}],ce=[{value:"",label:"System default (information)"},{value:"information",label:"Usage statistics, warnings, errors, and crashes"},{value:"warning",label:"Warnings, errors and crashes"},{value:"error",label:"Errors and crashes"},{value:"crash",label:"Crashes only"},{value:"none",label:"None / disabled"}],P=class a{#i=y(le);#o=y(re);#e=y(oe);sysinfo=this.#o.systemInfo;isDarkMode=this.#i.isDarkMode;editAs=h("list");settingsForm=f.group({pauseSettings:f.group({time:f.control(0),timeType:f.control("s")}),language:f.control("en"),usageStatistics:f.control(""),updateChannel:f.control(""),remoteControlRegisterUrl:f.control("")});remoteControlState=h("unknown");remoteControlClaimUrl=h(null);sysInfoEffect=B(()=>{this.settingsForm.controls.remoteControlRegisterUrl.patchValue(this.sysinfo()?.RemoteControlRegistrationUrl??"")},{allowSignalWrites:!0});get pauseSettings(){return this.settingsForm.controls.pauseSettings}langSignal=se(this.settingsForm.controls.language.valueChanges);timeTypeOptions=h(pe);timeOptions=me([this.pauseSettings.controls.timeType.valueChanges.pipe(v("s")),this.pauseSettings.controls.time.valueChanges.pipe(v(null))],F(U(([e,t])=>{let i=this.#r(e);return t!==null?i.filter(l=>l.toString().includes(t.toString())):i}),v([])));languageOptions=G(()=>this.langSignal()?V.filter(e=>e.value===this.langSignal()):V);usageStatisticsOptions=h(ce);ngOnInit(){this.refreshRemoteControlStatus(),this.getServerSettings()}submit(){let e=`${this.pauseSettings.controls.time.value}${this.pauseSettings.controls.timeType.value}`;this.#e.patchApiV1Serversettings({requestBody:{"usage-reporter-level":this.settingsForm.controls.usageStatistics.value,"startup-delay":e==="0s"?"":e,"update-channel":this.settingsForm.controls.updateChannel.value}}).subscribe({next:t=>{console.log("res",t)},error:t=>{console.error("err",t)}})}getServerSettings(){return this.#e.getApiV1Serversettings().subscribe({next:e=>{let t=e["startup-delay"];this.settingsForm.patchValue({pauseSettings:{time:parseInt(t.substring(0,t.length-1)==""?"0":t.substring(0,t.length-1)),timeType:t.substring(-1)===""?"s":t.substring(-1)},usageStatistics:e["usage-reporter-level"],updateChannel:e["update-channel"]})}})}languageDisplay(e){return e?V.find(t=>t.value===e)?.label??null:null}typeDisplay(e){return e==null?null:pe.find(t=>t.value===e)?.label??null}usageDisplay(e){return typeof e!="string"?null:ce.find(t=>t.value===e)?.label??null}setDarkMode(){this.#i.setDarkMode()}setLightMode(){this.#i.setLightMode()}#r(e){let t=e==="h"?25:61;return new Array(t).fill(0).map((i,l)=>l)}repeatRegisterTimer=null;#t(e){e.RegistrationUrl&&this.remoteControlClaimUrl.set(e.RegistrationUrl),console.log(e),e.IsConnected?this.remoteControlState.set("connected"):e.IsEnabled?this.remoteControlState.set("enabled"):e.CanEnable?this.remoteControlState.set("disabled"):e.IsRegisteringFaulted?this.remoteControlState.set("registeringfaulted"):e.IsRegistering?e.RegistrationUrl!=null&&e.RegistrationUrl.trim().length>0?this.remoteControlState.set("registered"):this.remoteControlState.set("registering"):this.remoteControlState.set("inactive");let t=this.remoteControlState();console.log(t),this.repeatRegisterTimer!==null&&(clearTimeout(this.repeatRegisterTimer),this.repeatRegisterTimer=null),t==="registering"&&(this.repeatRegisterTimer=setTimeout(()=>{this.#e.postApiV1RemotecontrolRegister({requestBody:{RegistrationUrl:""}}).subscribe({next:i=>{this.#t(i)},error:i=>{this.#n(i)}})},5e3)),(t==="enabled"||t==="registered")&&(this.repeatRegisterTimer=setTimeout(()=>{this.#e.getApiV1RemotecontrolStatus().subscribe({next:i=>{this.#t(i)},error:i=>{this.#n(i)}})},5e3)),e.IsRegistering&&e.CanEnable&&this.#e.deleteApiV1RemotecontrolRegister().subscribe({next:i=>{this.#t(i)}})}#n(e){this.#e.getApiV1RemotecontrolStatus().subscribe({next:t=>{this.#t(t)}})}refreshRemoteControlStatus(){this.#e.getApiV1RemotecontrolStatus().subscribe({next:e=>{this.#t(e)},error:e=>{this.#n(e)}})}beginRemoteRegistration(){this.remoteControlState.set("registering");let e=this.settingsForm.controls.remoteControlRegisterUrl.value;this.#e.postApiV1RemotecontrolRegister({requestBody:{RegistrationUrl:e}}).subscribe({next:t=>{this.#t(t)},error:t=>{this.#n(t)}})}cancelRemoteRegistration(){this.#e.deleteApiV1RemotecontrolRegister().subscribe({next:e=>{this.#t(e)},error:e=>{this.#n(e)}})}enableRemoteControl(){this.#e.postApiV1RemotecontrolEnable().subscribe({next:e=>{this.#t(e)},error:e=>{this.#n(e)}})}disableRemoteControl(){this.#e.postApiV1RemotecontrolDisable().subscribe({next:e=>{this.#t(e)},error:e=>{this.#n(e)}})}deleteRemoteControl(){let e=this;confirm("Are you sure you want to delete the remote control registration?")&&e.#e.deleteApiV1RemotecontrolRegistration().subscribe({next:t=>{e.#t(t)},error:t=>{e.#n(t)}})}getRemoteControlStatusText(){let e=this.remoteControlState();return e==="enabled"?"Remote control is enabled but not connected":e==="connected"?"Remote control is connected":e==="registering"?"Registering machine...":e==="registeringfaulted"?"Registration failed":e==="registered"?"Registered, waiting for accept":e==="disabled"?"Remote control is configured but not enabled":e==="unknown"?"...loading...":"Remote control is not set up"}static \u0275fac=function(t){return new(t||a)};static \u0275cmp=I({type:a,selectors:[["app-settings"]],standalone:!0,features:[A],decls:100,vars:11,consts:[[1,"content",3,"submit","formGroup"],[1,"title"],["type","submit","spk-button","",1,"raised","primary"],[1,"left"],[1,"right","remote-control"],[1,"field-row"],[1,"right"],["formGroupName","pauseSettings",1,"field-row"],[3,"displayValue"],["type","text","formControlName","timeType"],["options",""],[3,"value"],["type","search","formControlName","time"],[1,"themes"],["src","assets/images/light-theme.png","alt","light theme",3,"click"],["src","assets/images/dark-theme.png","alt","dark theme",3,"click"],[1,"right","radios"],[1,"radio-option",3,"click"],[1,"outlined","primary"],["type","radio","name","updateChannel","value","","formControlName","updateChannel"],["type","radio","name","updateChannel","value","stable","formControlName","updateChannel"],["type","radio","name","updateChannel","value","beta","formControlName","updateChannel"],["type","radio","name","updateChannel","value","experimental","formControlName","updateChannel"],["type","radio","name","updateChannel","value","canary","formControlName","updateChannel"],["href","#"],["type","text","formControlName","usageStatistics"],[1,"field-col"],["type","button","spk-button","",1,"raised"],["label","Registration URL","for","remoteControlRegisterUrl"],["type","text","spk-input","","id","remoteControlRegisterUrl","name","remoteControlRegisterUrl","formControlName","remoteControlRegisterUrl"],["type","button","spk-button","",1,"raised",3,"click"],["target","_blank",3,"href"],["type","button","spk-button","",1,"raised","warn",3,"click"],[3,"click","value"]],template:function(t,i){if(t&1&&(p(0,"app-status-bar"),n(1,"form",0),m("submit",function(){return i.submit()}),n(2,"header")(3,"div",1)(4,"h2"),r(5,"Settings"),o(),n(6,"p"),r(7,"Configure your backup settings."),o()(),n(8,"button",2),r(9,"Save changes"),o()(),n(10,"section")(11,"div",3)(12,"h3"),r(13,"Remote access control"),o(),n(14,"p"),r(15),o()(),n(16,"div",4),O(17,Se,7,6,"div",5),o()(),n(18,"section")(19,"div",3)(20,"h3"),r(21,"Pause after startup or hibernation"),o(),n(22,"p"),r(23," Duplicati will run when started, but will remain in paused state for the duration. Duplicati will occupy minimal system resources and no backups will be run. "),o()(),n(24,"div",6)(25,"div",7)(26,"spk-select",8),p(27,"input",9),R(28,10),T(29,he,2,2,"option",11,x),w(),o(),n(31,"spk-select"),p(32,"input",12),R(33,10),T(34,be,2,2,"option",11,x),w(),o()()()(),n(36,"section")(37,"div",3)(38,"h3"),r(39,"Color theme"),o(),n(40,"p"),r(41,"Customize your application theme"),o()(),n(42,"div",6)(43,"div",13)(44,"img",14),m("click",function(){return i.setLightMode()}),o(),n(45,"img",15),m("click",function(){return i.setDarkMode()}),o()()()(),n(46,"section")(47,"div",3)(48,"h3"),r(49,"Update channel"),o(),n(50,"p"),r(51,"Lorem ipsum dolor sit amet, consectetur adipiscing elit."),o()(),n(52,"div",16)(53,"div",17),m("click",function(){return i.settingsForm.controls.updateChannel.setValue("")}),n(54,"spk-radio",18),r(55),p(56,"input",19),o(),n(57,"p"),r(58),o()(),n(59,"div",17),m("click",function(){return i.settingsForm.controls.updateChannel.setValue("stable")}),n(60,"spk-radio",18),r(61," Stable "),p(62,"input",20),o(),n(63,"p"),r(64,"Official releases"),o()(),n(65,"div",17),m("click",function(){return i.settingsForm.controls.updateChannel.setValue("beta")}),n(66,"spk-radio",18),r(67," Beta "),p(68,"input",21),o(),n(69,"p"),r(70," Try out the new features that we are working on. Currently the most stable version available. Test Restore data before using this in production environments. "),o()(),n(71,"div",17),m("click",function(){return i.settingsForm.controls.updateChannel.setValue("experimental")}),n(72,"spk-radio",18),r(73," Experimental "),p(74,"input",22),o(),n(75,"p"),r(76,"Specific builds for developers only. Not for use with important data."),o()(),n(77,"div",17),m("click",function(){return i.settingsForm.controls.updateChannel.setValue("canary")}),n(78,"spk-radio",18),r(79," Canary "),p(80,"input",23),o(),n(81,"p"),r(82,"Individual builds for developers only. Not for use with important data."),o()()()(),n(83,"section")(84,"div",3)(85,"h3"),r(86,"Usage statistics"),o(),n(87,"p"),r(88," Usage reports help us improve the user experience and evaluate impact of new features. We use them to generate "),n(89,"a",24),r(90,"public usage statistics."),o(),p(91,"br")(92,"br"),r(93," All usage reports are sent anonymously and do not contain any personal information. They contain information about hardware and operating system, the type of backend, backup duration, overall size of source data and similar data. They do not contain paths, filenames, usernames, passwords or similar sensitive information. "),o()(),n(94,"div",6)(95,"spk-select",8),p(96,"input",25),R(97,10),T(98,ve,2,2,"option",11,x),w(),o()()()()),t&2){let l,g;s(),S("formGroup",i.settingsForm),s(14),E(i.getRemoteControlStatusText()),s(2),C(i.remoteControlState()!=="unknown"?17:-1),s(9),S("displayValue",i.typeDisplay(i.settingsForm.value.pauseSettings==null?null:i.settingsForm.value.pauseSettings.timeType)),s(3),k(i.timeTypeOptions()),s(5),k(i.timeOptions()),s(10),M("active",!i.isDarkMode()),s(),M("active",i.isDarkMode()),s(10),b(" Default (",(l=i.sysinfo())==null?null:l.DefaultUpdateChannel,") "),s(3),b("Same as the base install version: ",(g=i.sysinfo())==null?null:g.ServerVersionType,""),s(37),S("displayValue",i.usageDisplay(i.settingsForm.controls.usageStatistics.value)),s(3),k(i.usageStatisticsOptions())}},dependencies:[Y,q,K,Q,L,z,$,W,Z,j,J,H,ae,ee,ne,te,ie],styles:["[_nghost-%COMP%]{display:block}.content[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:0 2rem 2rem}header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:2rem 0}header[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem}section[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:2rem 0;border-top:1px solid var(--base-level-40)}section[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem;align-items:flex-start}section[_ngcontent-%COMP%] .left[_ngcontent-%COMP%] spk-button-group[_ngcontent-%COMP%]{margin-top:.25rem}section[_ngcontent-%COMP%] .left[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{text-wrap:balance;width:50%}.themes[_ngcontent-%COMP%]{display:flex;gap:.5rem}.themes[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{max-width:240px;border-radius:var(--shape-3);cursor:pointer}.themes[_ngcontent-%COMP%] img.active[_ngcontent-%COMP%]{border:2px solid var(--primary-500)}.radios[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem}.radio-option[_ngcontent-%COMP%]{cursor:pointer}.radio-option[_ngcontent-%COMP%] spk-radio[_ngcontent-%COMP%]{color:var(--base-level-60);margin-bottom:.25rem}.radio-option[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{text-wrap:balance;color:var(--base-level-60R)}.field-col[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}.field-row[_ngcontent-%COMP%]{display:flex;gap:.5rem;width:100%}.field-row[_ngcontent-%COMP%] spk-form-field[_ngcontent-%COMP%], .field-row[_ngcontent-%COMP%] spk-select[_ngcontent-%COMP%]{flex:1 0}.remote-control[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{white-space:nowrap}"],changeDetection:0})};export{P as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as f}from"./chunk-35H2LYPK.js";import"./chunk-V7LHB36E.js";import"./chunk-WU4K3UNC.js";import{a as u,d as g,e as k}from"./chunk-S7QBT7L2.js";import{d as l}from"./chunk-AFUS3PYG.js";import"./chunk-L4EVZZOM.js";import"./chunk-SYBUINNV.js";import{Db as t,Jb as s,Kb as m,Oa as c,Z as r,bb as d,jb as e,kb as n,lb as i}from"./chunk-RBNO3K72.js";var b=()=>["/backup/new"],o=class p{static \u0275fac=function(a){return new(a||p)};static \u0275cmp=r({type:p,selectors:[["app-add-backup"]],standalone:!0,features:[s],decls:15,vars:2,consts:[[1,"backup-types"],[1,"type-a"],["src","assets/images/new-backup.png"],["spk-button","",1,"raised","primary",3,"routerLink"]],template:function(a,x){a&1&&(i(0,"app-status-bar"),e(1,"section")(2,"h2"),t(3,"Add a new backup"),n(),e(4,"div",0)(5,"spk-card",1),i(6,"img",2),e(7,"h3"),t(8,"New backup"),n(),e(9,"p"),t(10,"Configure a new backup. Choose your destination, source data and schedule."),n(),e(11,"button",3),t(12," Add a new backup "),e(13,"spk-icon"),t(14,"plus"),n()()()()()),a&2&&(c(11),d("routerLink",m(1,b)))},dependencies:[f,g,k,u,l],styles:["[_nghost-%COMP%]{display:block}section[_ngcontent-%COMP%]{display:flex;align-items:center;flex-direction:column;gap:2rem;padding:2rem 0}div.backup-types[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr;gap:1rem;max-width:700px}spk-card[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:1rem;padding-bottom:3rem}spk-card[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{max-width:300px}spk-card[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{text-wrap:balance;text-align:center;width:75%}"],changeDetection:0})};export{o as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as j}from"./chunk-35H2LYPK.js";import{a as A}from"./chunk-V7LHB36E.js";import{a as z}from"./chunk-WU4K3UNC.js";import{a as L,d as N,e as $,g as V}from"./chunk-S7QBT7L2.js";import{d as I}from"./chunk-AFUS3PYG.js";import"./chunk-L4EVZZOM.js";import"./chunk-SYBUINNV.js";import{$a as s,Db as n,Fb as u,Jb as F,Kb as b,Lb as T,Oa as p,Ob as M,Pb as w,Qb as D,X as _,Z as h,aa as v,bb as k,fb as m,gb as P,ha as f,hb as y,ia as g,ib as O,jb as a,kb as o,lb as x,mc as H,pb as E,qb as B,rb as c}from"./chunk-RBNO3K72.js";var C=class t{#t=_(A);transform(l,...e){if(!l)return"";let i=l.split(".")[0],r=parseInt(i.split(":")[0])??0,d=parseInt(i.split(":")[1])??0,R=parseInt(i.split(":")[2])??0;return this.#t.duration({hours:r,minutes:d,seconds:R}).humanize()}static \u0275fac=function(e){return new(e||t)};static \u0275pipe=v({name:"durationFormat",type:t,pure:!0,standalone:!0})};var Y=()=>["/add-backup"],q=()=>["/restore"],G=t=>["/backup",t];function K(t,l){if(t&1&&(n(0),M(1,"durationFormat")),t&2){let e=c().$implicit;u(" - (took ",w(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.LastBackupDuration),") ")}}function Q(t,l){t&1&&n(0," N/A ")}function U(t,l){if(t&1&&n(0),t&2){let e=c().$implicit;u(" ",e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.SourceSizeString," ")}}function W(t,l){t&1&&n(0," N/A ")}function X(t,l){if(t&1&&n(0),t&2){let e=c().$implicit;u(" ",e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.TargetSizeString," ")}}function Z(t,l){t&1&&n(0," N/A ")}function tt(t,l){if(t&1&&(a(0,"spk-chip",8),n(1),o()),t&2){let e=c().$implicit;p(),u("",e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.BackupListCount," Version")}}function et(t,l){t&1&&(a(0,"spk-chip",9),n(1,"No version yet"),o())}function nt(t,l){if(t&1){let e=E();a(0,"div",7)(1,"div",2)(2,"h3"),n(3),a(4,"spk-icon"),n(5,"database"),o()(),a(6,"p")(7,"span"),n(8,"Last successful backup:"),o(),n(9),M(10,"date"),s(11,K,2,3)(12,Q,1,0),o(),a(13,"p")(14,"span"),n(15,"Source:"),o(),s(16,U,1,1)(17,W,1,0),o(),a(18,"p")(19,"span"),n(20,"Destination:"),o(),s(21,X,1,1)(22,Z,1,0),o()(),s(23,tt,2,1,"spk-chip",8)(24,et,2,0,"spk-chip",9),a(25,"div",10)(26,"button",11),B("click",function(){let r=f(e).$implicit,d=c(2);return g(d.startBackup(r.Backup==null?null:r.Backup.ID))}),a(27,"spk-icon"),n(28,"play-circle"),o(),n(29," Start "),o(),a(30,"button",12)(31,"spk-icon"),n(32,"pencil-circle"),o(),n(33," Edit "),o(),a(34,"button",11),B("click",function(){let r=f(e).$implicit,d=c(2);return g(d.deleteBackup(r.Backup==null?null:r.Backup.ID))}),a(35,"spk-icon"),n(36,"x-circle"),o(),n(37," Delete "),o()()()}if(t&2){let e,i=l.$implicit;p(3),u(" ",(e=i.Backup==null?null:i.Backup.Name)!==null&&e!==void 0?e:"Backup name missing"," "),p(6),u(" ",D(10,7,i.Backup==null||i.Backup.Metadata==null?null:i.Backup.Metadata.LastBackupDate,"short")," "),p(2),m(!(i.Backup==null||i.Backup.Metadata==null)&&i.Backup.Metadata.LastBackupDuration?11:12),p(5),m(!(i.Backup==null||i.Backup.Metadata==null)&&i.Backup.Metadata.SourceSizeString?16:17),p(5),m(!(i.Backup==null||i.Backup.Metadata==null)&&i.Backup.Metadata.TargetSizeString?21:22),p(2),m(!(i.Backup==null||i.Backup.Metadata==null)&&i.Backup.Metadata.BackupListCount?23:24),p(7),k("routerLink",T(10,G,i.Backup==null?null:i.Backup.ID))}}function it(t,l){if(t&1&&y(0,nt,38,12,"div",7,P),t&2){let e=c();O(e.backups())}}function at(t,l){t&1&&n(0," No backups founds ")}var S=class t{#t=_(z);backups=this.#t.backups;backupsLoading=this.#t.backupsLoading;ngOnInit(){this.#t.getBackups(!0)}startBackup(l){this.#t.startBackup(l)}deleteBackup(l){l&&this.#t.deleteBackup(l)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=h({type:t,selectors:[["app-home"]],standalone:!0,features:[F],decls:31,vars:5,consts:[[1,"type-a",3,"routerLink"],["src","
|
|
1
|
+
import{a as j}from"./chunk-35H2LYPK.js";import{a as A}from"./chunk-V7LHB36E.js";import{a as z}from"./chunk-WU4K3UNC.js";import{a as L,d as N,e as $,g as V}from"./chunk-S7QBT7L2.js";import{d as I}from"./chunk-AFUS3PYG.js";import"./chunk-L4EVZZOM.js";import"./chunk-SYBUINNV.js";import{$a as s,Db as n,Fb as u,Jb as F,Kb as b,Lb as T,Oa as p,Ob as M,Pb as w,Qb as D,X as _,Z as h,aa as v,bb as k,fb as m,gb as P,ha as f,hb as y,ia as g,ib as O,jb as a,kb as o,lb as x,mc as H,pb as E,qb as B,rb as c}from"./chunk-RBNO3K72.js";var C=class t{#t=_(A);transform(l,...e){if(!l)return"";let i=l.split(".")[0],r=parseInt(i.split(":")[0])??0,d=parseInt(i.split(":")[1])??0,R=parseInt(i.split(":")[2])??0;return this.#t.duration({hours:r,minutes:d,seconds:R}).humanize()}static \u0275fac=function(e){return new(e||t)};static \u0275pipe=v({name:"durationFormat",type:t,pure:!0,standalone:!0})};var Y=()=>["/add-backup"],q=()=>["/restore"],G=t=>["/backup",t];function K(t,l){if(t&1&&(n(0),M(1,"durationFormat")),t&2){let e=c().$implicit;u(" - (took ",w(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.LastBackupDuration),") ")}}function Q(t,l){t&1&&n(0," N/A ")}function U(t,l){if(t&1&&n(0),t&2){let e=c().$implicit;u(" ",e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.SourceSizeString," ")}}function W(t,l){t&1&&n(0," N/A ")}function X(t,l){if(t&1&&n(0),t&2){let e=c().$implicit;u(" ",e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.TargetSizeString," ")}}function Z(t,l){t&1&&n(0," N/A ")}function tt(t,l){if(t&1&&(a(0,"spk-chip",8),n(1),o()),t&2){let e=c().$implicit;p(),u("",e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.BackupListCount," Version")}}function et(t,l){t&1&&(a(0,"spk-chip",9),n(1,"No version yet"),o())}function nt(t,l){if(t&1){let e=E();a(0,"div",7)(1,"div",2)(2,"h3"),n(3),a(4,"spk-icon"),n(5,"database"),o()(),a(6,"p")(7,"span"),n(8,"Last successful backup:"),o(),n(9),M(10,"date"),s(11,K,2,3)(12,Q,1,0),o(),a(13,"p")(14,"span"),n(15,"Source:"),o(),s(16,U,1,1)(17,W,1,0),o(),a(18,"p")(19,"span"),n(20,"Destination:"),o(),s(21,X,1,1)(22,Z,1,0),o()(),s(23,tt,2,1,"spk-chip",8)(24,et,2,0,"spk-chip",9),a(25,"div",10)(26,"button",11),B("click",function(){let r=f(e).$implicit,d=c(2);return g(d.startBackup(r.Backup==null?null:r.Backup.ID))}),a(27,"spk-icon"),n(28,"play-circle"),o(),n(29," Start "),o(),a(30,"button",12)(31,"spk-icon"),n(32,"pencil-circle"),o(),n(33," Edit "),o(),a(34,"button",11),B("click",function(){let r=f(e).$implicit,d=c(2);return g(d.deleteBackup(r.Backup==null?null:r.Backup.ID))}),a(35,"spk-icon"),n(36,"x-circle"),o(),n(37," Delete "),o()()()}if(t&2){let e,i=l.$implicit;p(3),u(" ",(e=i.Backup==null?null:i.Backup.Name)!==null&&e!==void 0?e:"Backup name missing"," "),p(6),u(" ",D(10,7,i.Backup==null||i.Backup.Metadata==null?null:i.Backup.Metadata.LastBackupDate,"short")," "),p(2),m(!(i.Backup==null||i.Backup.Metadata==null)&&i.Backup.Metadata.LastBackupDuration?11:12),p(5),m(!(i.Backup==null||i.Backup.Metadata==null)&&i.Backup.Metadata.SourceSizeString?16:17),p(5),m(!(i.Backup==null||i.Backup.Metadata==null)&&i.Backup.Metadata.TargetSizeString?21:22),p(2),m(!(i.Backup==null||i.Backup.Metadata==null)&&i.Backup.Metadata.BackupListCount?23:24),p(7),k("routerLink",T(10,G,i.Backup==null?null:i.Backup.ID))}}function it(t,l){if(t&1&&y(0,nt,38,12,"div",7,P),t&2){let e=c();O(e.backups())}}function at(t,l){t&1&&n(0," No backups founds ")}var S=class t{#t=_(z);backups=this.#t.backups;backupsLoading=this.#t.backupsLoading;ngOnInit(){this.#t.getBackups(!0)}startBackup(l){this.#t.startBackup(l)}deleteBackup(l){l&&this.#t.deleteBackup(l)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=h({type:t,selectors:[["app-home"]],standalone:!0,features:[F],decls:31,vars:5,consts:[[1,"type-a",3,"routerLink"],["src","assets/images/backup.png","alt","","width","48px"],[1,"text"],["spk-button",""],["src","assets/images/restore.png","alt","","width","48px"],[1,"content"],[1,"backups"],[1,"backup"],[1,"simple","success"],[1,"simple"],[1,"actions"],["spk-button","",3,"click"],["spk-button","",3,"routerLink"]],template:function(e,i){e&1&&(x(0,"app-status-bar"),a(1,"section")(2,"header")(3,"spk-card",0),x(4,"img",1),a(5,"div",2)(6,"h3"),n(7,"Backups"),o(),a(8,"p"),n(9,"Backups are stored in the cloud and can be restored at any time."),o()(),a(10,"button",3),n(11," Add "),a(12,"spk-icon"),n(13,"plus"),o()()(),a(14,"spk-card",0),x(15,"img",4),a(16,"div",2)(17,"h3"),n(18,"Restores"),o(),a(19,"p"),n(20,"Restores are stored in the cloud and can be restored at any time."),o()(),a(21,"button",3),n(22," Start "),a(23,"spk-icon"),n(24,"arrow-right"),o()()()(),a(25,"div",5)(26,"h2"),n(27,"My backups"),o(),a(28,"div",6),s(29,it,2,0)(30,at,1,0),o()()()),e&2&&(p(3),k("routerLink",b(3,Y)),p(11),k("routerLink",b(4,q)),p(15),m(i.backups().length?29:30))},dependencies:[I,j,$,N,L,V,H,C],styles:["[_nghost-%COMP%]{display:block}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2rem;padding:2rem 0}header[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;padding:0 2rem;gap:1rem}spk-card[_ngcontent-%COMP%]{display:flex;align-items:center;gap:1rem}spk-card[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{flex:1 0;display:flex;flex-direction:column;gap:.25rem}.content[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:0 2rem;gap:1rem}.backups[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}.backup[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:2rem;gap:1rem;border:1px solid var(--base-level-40);border-radius:var(--shape-3);box-shadow:var(--shadow-1)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem;width:100%;max-width:40%}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] spk-icon[_ngcontent-%COMP%]{color:var(--base-level-60)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font:var(--paragraph-30);color:var(--base-level-60)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] p[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--base-level-70)}.actions[_ngcontent-%COMP%]{display:flex;gap:.5rem}"],changeDetection:0})};export{S as default};
|
package/index.html
CHANGED
|
@@ -11,5 +11,5 @@
|
|
|
11
11
|
<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-LBHWJUQR.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles-LBHWJUQR.css"></noscript></head>
|
|
12
12
|
<body>
|
|
13
13
|
<app-root></app-root>
|
|
14
|
-
<link rel="modulepreload" href="chunk-K4KGTWQK.js"><link rel="modulepreload" href="chunk-JDCFQ6PF.js"><link rel="modulepreload" href="chunk-V7LHB36E.js"><link rel="modulepreload" href="chunk-S7QBT7L2.js"><link rel="modulepreload" href="chunk-AFUS3PYG.js"><link rel="modulepreload" href="chunk-L4EVZZOM.js"><link rel="modulepreload" href="chunk-SYBUINNV.js"><link rel="modulepreload" href="chunk-RBNO3K72.js"><script src="main-
|
|
14
|
+
<link rel="modulepreload" href="chunk-K4KGTWQK.js"><link rel="modulepreload" href="chunk-JDCFQ6PF.js"><link rel="modulepreload" href="chunk-V7LHB36E.js"><link rel="modulepreload" href="chunk-S7QBT7L2.js"><link rel="modulepreload" href="chunk-AFUS3PYG.js"><link rel="modulepreload" href="chunk-L4EVZZOM.js"><link rel="modulepreload" href="chunk-SYBUINNV.js"><link rel="modulepreload" href="chunk-RBNO3K72.js"><script src="main-L3LC53O6.js" type="module"></script></body>
|
|
15
15
|
</html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as z}from"./chunk-K4KGTWQK.js";import{a as b}from"./chunk-JDCFQ6PF.js";import{b as G}from"./chunk-V7LHB36E.js";import{b as _}from"./chunk-S7QBT7L2.js";import{a as L,b as $,c as K,f as W,g as B}from"./chunk-AFUS3PYG.js";import{a as J}from"./chunk-L4EVZZOM.js";import"./chunk-SYBUINNV.js";import{A as k,Jb as x,M as w,R as v,U as N,Ua as l,X as i,Xb as V,Z as A,bc as P,g as I,lb as O,p as E,sc as j,tc as F,vc as H,wc as D,xc as U}from"./chunk-RBNO3K72.js";var q={production:!0,baseUrl:"/api",machineServerUrl:"${WS_URL}",defaultTimeout:3e4};var m=new N("ENVIRONMENT");var Z=[{path:"",children:[{path:"login",loadComponent:()=>import("./chunk-L44RMVJT.js")},{path:"logout",loadComponent:()=>import("./chunk-2AXNYUNT.js")},{path:"",loadComponent:()=>import("./chunk-IL52LC7Q.js"),children:[{path:"",loadComponent:()=>import("./chunk-
|
|
1
|
+
import{a as z}from"./chunk-K4KGTWQK.js";import{a as b}from"./chunk-JDCFQ6PF.js";import{b as G}from"./chunk-V7LHB36E.js";import{b as _}from"./chunk-S7QBT7L2.js";import{a as L,b as $,c as K,f as W,g as B}from"./chunk-AFUS3PYG.js";import{a as J}from"./chunk-L4EVZZOM.js";import"./chunk-SYBUINNV.js";import{A as k,Jb as x,M as w,R as v,U as N,Ua as l,X as i,Xb as V,Z as A,bc as P,g as I,lb as O,p as E,sc as j,tc as F,vc as H,wc as D,xc as U}from"./chunk-RBNO3K72.js";var q={production:!0,baseUrl:"/api",machineServerUrl:"${WS_URL}",defaultTimeout:3e4};var m=new N("ENVIRONMENT");var Z=[{path:"",children:[{path:"login",loadComponent:()=>import("./chunk-L44RMVJT.js")},{path:"logout",loadComponent:()=>import("./chunk-2AXNYUNT.js")},{path:"",loadComponent:()=>import("./chunk-IL52LC7Q.js"),children:[{path:"",loadComponent:()=>import("./chunk-QGZLYKKB.js")},{path:"add-backup",loadComponent:()=>import("./chunk-DIZGZ272.js")},{path:"backup/:id",loadComponent:()=>import("./chunk-NPPGT43I.js"),children:[{path:"",redirectTo:"general",pathMatch:"full"},{path:"general",loadComponent:()=>import("./chunk-T4LLO76D.js")},{path:"destination",loadComponent:()=>import("./chunk-TOQ4S3RM.js")},{path:"source-data",loadComponent:()=>import("./chunk-WONBUEO3.js")},{path:"schedule",loadComponent:()=>import("./chunk-NCEFK5D4.js")},{path:"options",loadComponent:()=>import("./chunk-SZ6B2QGN.js")}]},{path:"restore",loadComponent:()=>import("./chunk-7I4KJB7N.js")},{path:"restore-flow/:id",loadComponent:()=>import("./chunk-ZG7T5UHX.js"),children:[{path:"",redirectTo:"select-files",pathMatch:"full"},{path:"select-files",loadComponent:()=>import("./chunk-ZI6WOAJG.js")},{path:"options",loadComponent:()=>import("./chunk-GYB3IDJ2.js")}]},{path:"settings",loadComponent:()=>import("./chunk-AV26WKVA.js")},{path:"about",loadComponent:()=>import("./chunk-H7EA5XT6.js"),children:[{path:"",redirectTo:"general",pathMatch:"full"},{path:"general",loadComponent:()=>import("./chunk-NSVRJR5X.js")},{path:"changelog",loadComponent:()=>import("./chunk-ZYCMR5VM.js")},{path:"libraries",loadComponent:()=>import("./chunk-VSPW7AWV.js")},{path:"system-info",loadComponent:()=>import("./chunk-H2IAZHJK.js")},{path:"logs",loadComponent:()=>import("./chunk-5SGHSZAK.js")}]}]}]}];var g=0,Q=(t,o)=>{let e=i(z),s=i(K),p=i(m),r=i(_),c=t;return e.tokenSetTime()&&Date.now()-e.tokenSetTime()>15*60*1e3&&g<1?(g++,e.refreshToken().pipe(w(n=>(c=t.clone({headers:t.headers.set("Authorization",`Bearer ${n.AccessToken}`)}),o(c))))):(e.token()&&t.url.startsWith(p.baseUrl)&&(c=t.clone({headers:t.headers.set("Authorization",`Bearer ${e.token()}`)})),o(c).pipe(k(n=>{if(r.error(n.message),n.status===401&&g<1)return g++,e.refreshToken().pipe(w(()=>o(t.clone({headers:t.headers.set("Authorization",`Bearer ${e.token()}`)}))));n.status===401&&(s.navigate(["/logout"]),g=0);let a=`Error Code: ${n.status}, Message: ${n.message}`;return E(()=>a)})))};var oe="1.0.0",X="portal-proxy-client",ne=1,R=class t{#o=1e3;#s=i(m);#t=l("disconnected");#l=l(this.#o);#i=l(!1);#n=l(!1);#a=l(null);isConnectedToMachineServer=this.#n.asReadonly();wsState=this.#t.asReadonly();#p=[];#r={};#e=null;#m=new TextDecoder("utf-8");#c=null;#d=P(()=>{let o=this.#i(),e=this.#l(),s=this.#a();if(!s||!o||!e||e<this.#o){this.#c&&window.clearInterval(this.#c);return}this.#c=window.setInterval(()=>{this.connectToMachineServer(s)},e)});utf8Atob(o){let e=Uint8Array.from(atob(o),p=>p.charCodeAt(0)),s=this.#m.decode(e);return s?JSON.parse(s):null}connectToMachineServer(o,e){let s=e?.reconnect??!1;this.#e&&this.wsState()==="authenticated"&&!s||(this.#e&&this.wsState()!=="authenticated"&&this.#e.close(),this.#e=new WebSocket(this.#s.machineServerUrl),this.#e.onopen=()=>{this.#t.set("connect"),this.#n.set(!0),this.#i.set(!1),this.#a.set(null)},this.#e.onclose=()=>{this.#t.set("disconnected"),this.#n.set(!1),this.#a.set(o),this.#i.set(!0)},this.#e.onerror=()=>{this.#t.set("error")},this.#e.onmessage=p=>{let r=JSON.parse(p.data);if(this.wsState()==="connect"){if(r.type!=="welcome"){this.disconnectFromMachineServer(`Unexpected message type, expected 'welcome' but got '${r.type}'`);return}let n={token:o,publicKey:"",clientVersion:oe,protocolVersion:ne},a=this.createResponse(r,"authportal",n);this.#t.set("welcome"),this.#e?.send(a)}else if(this.wsState()==="welcome"){if(r.type!=="authportal"){this.disconnectFromMachineServer(`Unexpected message type, expected 'authportal' but got '${r.type}'`);return}var c=JSON.parse(r.payload??"");if(c.accepted===!1){this.disconnectFromMachineServer("Authentication failed");return}for(this.#t.set("authenticated"),this.#n.set(!0);this.#p.length>0;){let n=this.#p.pop();n&&this.#r[n.messageId]&&this.activateCommand(n)}}else if(this.wsState()==="authenticated"){if(r.type!=="command"){console.warn(`Unexpected message type, expected 'command' but got '${r.type}'`);return}let n=this.#r[r.messageId];if(n){if(r.errorMessage){n.reject(r.errorMessage);return}else{let a=JSON.parse(r.payload??"");a.body=a?.body==null?null:this.utf8Atob(a.body),n.resolve(a)}delete this.#r[r.messageId],window.clearTimeout(n.timer)}}})}disconnectFromMachineServer(o=null){o&&console.error(o),this.#e?.close(),this.#e=null,this.#t.set("disconnected"),this.#n.set(!1)}createResponse(o,e,s){let p={from:X,to:o.from,type:e,messageId:o.messageId,payload:JSON.stringify(s)};return JSON.stringify(p)}sendCommand(o,e,s,p,r,c,n=5e3){return(this.wsState()==="disconnected"||this.wsState()==="error")&&this.connectToMachineServer(o),new Promise((a,T)=>{let d=crypto.randomUUID(),f={from:X,to:e,type:"command",messageId:d,payload:JSON.stringify({method:s,path:p,body:r,headers:c})},y={resolve:a,reject:T,timer:window.setTimeout(()=>{let C=this.#r[d];C&&(delete this.#r[d],C.reject("Timeout"))},n)};this.#r[d]=y,this.#n()?this.activateCommand(f):this.#p.push(f)})}activateCommand(o){this.#e?.send(JSON.stringify(o))}static \u0275fac=function(e){return new(e||t)};static \u0275prov=v({token:t,factory:t.\u0275fac,providedIn:"root"})};var u=class t{#o=l(null);config=this.#o.asReadonly();setConfig(o){this.#o.set(o)}clearConfig(){this.#o.set(null)}static \u0275fac=function(e){return new(e||t)};static \u0275prov=v({token:t,factory:t.\u0275fac,providedIn:"root"})};function re(t){if(typeof t!="string")return null;let e=new TextEncoder().encode(t);return window.btoa(String.fromCharCode(...e))}var ee=(t,o)=>{let s=i(u).config(),p=i(m);if(s===null)return o(t);let r=i(R),c=re(t.body),n={};t.headers.keys().forEach(h=>{n[h]=t.headers.get(h)??""});let a=t.headers.get("timeout"),T=a!==null?parseInt(a):p.defaultTimeout,d=r.sendCommand(s.accessToken,s.clientId,t.method,t.url,c,n,T);return new I(h=>{d.then(f=>{let y=new j;n!=null&&Object.keys(n).forEach(M=>{y.set(M,n[M])});let C=new F({body:f.body,status:f.code,statusText:"OK",headers:y});h.next(C),h.complete()})})};var te={providers:[V(),W(Z,B()),H(U(),D([ee,Q])),b,{provide:m,useValue:q},G]};var S=class t{#o=i(b);#s=i(L);#t=i(u);sub=null;ngOnInit(){this.sub=this.#s.queryParams.subscribe(({accessToken:o,clientId:e})=>{o?.length&&e?.length&&this.#t.setConfig({accessToken:o,clientId:e})}),this.#o.clearAllNotCurrentVersion()}ngOnDestroy(){this.sub?.unsubscribe()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=A({type:t,selectors:[["app-root"]],standalone:!0,features:[x],decls:1,vars:0,template:function(e,s){e&1&&O(0,"router-outlet")},dependencies:[$],encapsulation:2})};J(S,te).catch(t=>console.error(t));
|
package/package.json
CHANGED
package/chunk-2P7TBSV2.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as f}from"./chunk-35H2LYPK.js";import"./chunk-V7LHB36E.js";import"./chunk-WU4K3UNC.js";import{a as u,d as g,e as k}from"./chunk-S7QBT7L2.js";import{d as l}from"./chunk-AFUS3PYG.js";import"./chunk-L4EVZZOM.js";import"./chunk-SYBUINNV.js";import{Db as t,Jb as s,Kb as m,Oa as c,Z as r,bb as d,jb as e,kb as n,lb as i}from"./chunk-RBNO3K72.js";var b=()=>["/backup/new"],o=class p{static \u0275fac=function(a){return new(a||p)};static \u0275cmp=r({type:p,selectors:[["app-add-backup"]],standalone:!0,features:[s],decls:15,vars:2,consts:[[1,"backup-types"],[1,"type-a"],["src","/assets/images/new-backup.png"],["spk-button","",1,"raised","primary",3,"routerLink"]],template:function(a,x){a&1&&(i(0,"app-status-bar"),e(1,"section")(2,"h2"),t(3,"Add a new backup"),n(),e(4,"div",0)(5,"spk-card",1),i(6,"img",2),e(7,"h3"),t(8,"New backup"),n(),e(9,"p"),t(10,"Configure a new backup. Choose your destination, source data and schedule."),n(),e(11,"button",3),t(12," Add a new backup "),e(13,"spk-icon"),t(14,"plus"),n()()()()()),a&2&&(c(11),d("routerLink",m(1,b)))},dependencies:[f,g,k,u,l],styles:["[_nghost-%COMP%]{display:block}section[_ngcontent-%COMP%]{display:flex;align-items:center;flex-direction:column;gap:2rem;padding:2rem 0}div.backup-types[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr;gap:1rem;max-width:700px}spk-card[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:1rem;padding-bottom:3rem}spk-card[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{max-width:300px}spk-card[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{text-wrap:balance;text-align:center;width:75%}"],changeDetection:0})};export{o as default};
|