@duplicati/ngclient 0.0.135 → 0.0.136

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/assets/spk.woff2 +0 -0
  2. package/{chunk-FC45TEB6.js → chunk-2BX65XJQ.js} +1 -1
  3. package/{chunk-5MMV45NA.js → chunk-2G6TVFPZ.js} +1 -1
  4. package/chunk-2W6BEUGU.js +1 -0
  5. package/{chunk-U44OBOIE.js → chunk-32366MQR.js} +1 -1
  6. package/chunk-3B3CD5KI.js +1 -0
  7. package/{chunk-D3OE4S5N.js → chunk-42LUYQ5S.js} +1 -1
  8. package/{chunk-EQS67O4J.js → chunk-43A44MVC.js} +1 -1
  9. package/chunk-4NAIBN6Y.js +1 -0
  10. package/chunk-4WF2SEOM.js +1 -0
  11. package/chunk-6ABAW3RM.js +1 -0
  12. package/chunk-6JDDO2JR.js +1 -0
  13. package/chunk-6JQM2X3B.js +1 -0
  14. package/chunk-6NTCVCCY.js +1 -0
  15. package/{chunk-Y7OD7PZG.js → chunk-7HKUM56D.js} +1 -1
  16. package/{chunk-HMK6M2N7.js → chunk-7MV7VPDB.js} +1 -1
  17. package/chunk-7N3LIJV6.js +1 -0
  18. package/{chunk-EW3XN62R.js → chunk-AFLQOHXV.js} +1 -1
  19. package/{chunk-5RPDEEQ3.js → chunk-B26UYXA3.js} +1 -1
  20. package/{chunk-ZUXVEXBA.js → chunk-B5ABLFSQ.js} +1 -1
  21. package/{chunk-ZIJ7ZEHR.js → chunk-BCHZRC5K.js} +1 -1
  22. package/chunk-BTMXQPBB.js +7 -0
  23. package/chunk-CWLTHXVS.js +1 -0
  24. package/chunk-D7KAEUGB.js +1 -0
  25. package/{chunk-O4HSW7GI.js → chunk-DBD6FOQL.js} +1 -1
  26. package/{chunk-XD6MBGQY.js → chunk-DNJOKPEL.js} +1 -1
  27. package/{chunk-5CUMYXCI.js → chunk-EKP3ML6M.js} +1 -1
  28. package/{chunk-IVP5ZHDB.js → chunk-ELFZD53L.js} +1 -1
  29. package/chunk-FCCV5HAI.js +6 -0
  30. package/chunk-FHZLYBIT.js +1 -0
  31. package/chunk-FUEIZLWH.js +1 -0
  32. package/{chunk-B6DE3TTE.js → chunk-FUZLIOUQ.js} +1 -1
  33. package/{chunk-OQHMS5HM.js → chunk-FZG6OXT3.js} +1 -1
  34. package/{chunk-PSPK4OPB.js → chunk-HDV3QKLN.js} +1 -1
  35. package/chunk-HLYFP2CB.js +1 -0
  36. package/chunk-HU5PJ35D.js +1 -0
  37. package/chunk-IQHBPLHL.js +1 -0
  38. package/{chunk-VVJBMGZR.js → chunk-J6SAG7QN.js} +1 -1
  39. package/chunk-JFOXV66M.js +1 -0
  40. package/chunk-JM7VAPIC.js +1 -0
  41. package/{chunk-BKHSNMGE.js → chunk-JOUBVX7V.js} +1 -1
  42. package/chunk-K6ISVHYD.js +1 -0
  43. package/{chunk-PL2MNRTA.js → chunk-L5Y36SCW.js} +1 -1
  44. package/chunk-LDIHJZUP.js +1 -0
  45. package/chunk-LDIZ5E5Z.js +1 -0
  46. package/chunk-LFMC622O.js +1 -0
  47. package/{chunk-JDCGGJ7O.js → chunk-LKJ2SBQA.js} +1 -1
  48. package/chunk-M3URTEVE.js +2 -0
  49. package/chunk-MQTQESMQ.js +1 -0
  50. package/chunk-MVUGI7Y7.js +1 -0
  51. package/chunk-NSIELNIY.js +1 -0
  52. package/chunk-OHMTS3T7.js +1 -0
  53. package/chunk-P3AZ3DXZ.js +1 -0
  54. package/chunk-P4KFR7NY.js +1 -0
  55. package/chunk-P4KOC4NP.js +1 -0
  56. package/{chunk-TTFJPAWM.js → chunk-POGTGPHE.js} +1 -1
  57. package/chunk-PVLT4ZGI.js +1 -0
  58. package/{chunk-MDO4PWV6.js → chunk-QBJGIKPM.js} +1 -1
  59. package/chunk-QECYPB3W.js +1 -0
  60. package/{chunk-CRALFIWB.js → chunk-QVEGV6V6.js} +1 -1
  61. package/{chunk-NZD6UMYZ.js → chunk-ROOTIQEO.js} +1 -1
  62. package/{chunk-WBYTRHI7.js → chunk-SLJD5T2G.js} +1 -1
  63. package/chunk-SMQWGV7N.js +1 -0
  64. package/chunk-T5KDR4TA.js +1 -0
  65. package/{chunk-4VPA3END.js → chunk-UFP4XKZF.js} +1 -1
  66. package/{chunk-XZWXLEK2.js → chunk-UFQWL2QF.js} +1 -1
  67. package/{chunk-PEPDXQBY.js → chunk-VPTK3JCV.js} +1 -1
  68. package/{chunk-UZTRBMWL.js → chunk-VRE6C66C.js} +1 -1
  69. package/{chunk-QNWYJ7OR.js → chunk-WF6EAWTW.js} +1 -1
  70. package/{chunk-J64ETWKB.js → chunk-WRWIBPXL.js} +1 -1
  71. package/{chunk-3Q5JEF3K.js → chunk-WXARH2SG.js} +1 -1
  72. package/chunk-WXAZWUCA.js +1 -0
  73. package/chunk-X3RII7G2.js +1 -0
  74. package/{chunk-L6BZ6TEU.js → chunk-X7SFNRJF.js} +1 -1
  75. package/{chunk-TIPHYMRQ.js → chunk-XBJRRUMO.js} +1 -1
  76. package/chunk-XIIFTZ5G.js +1 -0
  77. package/{chunk-CFESUDFC.js → chunk-XLKQSWFD.js} +1 -1
  78. package/chunk-Y5IRBMLB.js +1 -0
  79. package/chunk-Y5UKX3VC.js +1 -0
  80. package/chunk-YZYJP5XH.js +1 -0
  81. package/{chunk-VG6LA5R3.js → chunk-ZFCSCXTC.js} +1 -1
  82. package/chunk-ZFONU33Q.js +1 -0
  83. package/index.html +2 -2
  84. package/locale/messages.de.json +1 -1
  85. package/locale/messages.it.json +2 -2
  86. package/locale/messages.nl_NL.json +2 -2
  87. package/{main-AAKJETTU.js → main-HYB6MFRZ.js} +1 -1
  88. package/package.json +1 -1
  89. package/styles-IH5IS4WG.css +1 -0
  90. package/chunk-3UUTPGTW.js +0 -1
  91. package/chunk-4WUC2NLU.js +0 -1
  92. package/chunk-5XSYLFRW.js +0 -1
  93. package/chunk-62DY5NTG.js +0 -1
  94. package/chunk-67XQIEG5.js +0 -1
  95. package/chunk-67YRCRMI.js +0 -7
  96. package/chunk-6HFJTYBK.js +0 -1
  97. package/chunk-7J7GUBLS.js +0 -1
  98. package/chunk-BC3MLJH3.js +0 -1
  99. package/chunk-BHSG643V.js +0 -1
  100. package/chunk-BSRYIN2F.js +0 -1
  101. package/chunk-DE64A2ZS.js +0 -1
  102. package/chunk-DNBOZ26J.js +0 -1
  103. package/chunk-DQM3ATT4.js +0 -1
  104. package/chunk-EVINCUTE.js +0 -1
  105. package/chunk-EWZGGCZ7.js +0 -1
  106. package/chunk-FZTQVXG4.js +0 -1
  107. package/chunk-G6LCHQJE.js +0 -1
  108. package/chunk-GORQL5YP.js +0 -1
  109. package/chunk-GP2W7XZF.js +0 -1
  110. package/chunk-HD37ILAE.js +0 -6
  111. package/chunk-HE5L47WR.js +0 -1
  112. package/chunk-HJQBTK5I.js +0 -1
  113. package/chunk-HLBBIEIQ.js +0 -1
  114. package/chunk-HWUEL5ZO.js +0 -1
  115. package/chunk-IDAED3OA.js +0 -1
  116. package/chunk-IPC6G72N.js +0 -1
  117. package/chunk-JHVU3HSL.js +0 -1
  118. package/chunk-O3JEFNCL.js +0 -1
  119. package/chunk-OHEFY2D6.js +0 -1
  120. package/chunk-OTM4ZTG4.js +0 -1
  121. package/chunk-SAISKISU.js +0 -1
  122. package/chunk-SMNWIGMY.js +0 -1
  123. package/chunk-SSMDFXE3.js +0 -1
  124. package/chunk-UWF5JLY2.js +0 -1
  125. package/chunk-V6WRFB7W.js +0 -1
  126. package/chunk-VA5XDNCD.js +0 -1
  127. package/chunk-VFVXE2DC.js +0 -1
  128. package/chunk-WESN3ZUC.js +0 -1
  129. package/chunk-WZDQFHUJ.js +0 -2
  130. package/chunk-Y4IRFRVB.js +0 -1
  131. package/chunk-YW7YXFSC.js +0 -1
  132. package/chunk-ZCT7SRIM.js +0 -1
  133. package/styles-4QA7NM7N.css +0 -1
package/chunk-VA5XDNCD.js DELETED
@@ -1 +0,0 @@
1
- import{a as ne}from"./chunk-L6BZ6TEU.js";import{a as pt}from"./chunk-CFESUDFC.js";import"./chunk-67XQIEG5.js";import{a as Tt}from"./chunk-WZDQFHUJ.js";import{a as St}from"./chunk-PL2MNRTA.js";import"./chunk-NZD6UMYZ.js";import"./chunk-B6DE3TTE.js";import"./chunk-VFVXE2DC.js";import{a as dt}from"./chunk-FC45TEB6.js";import"./chunk-RHW5QVAY.js";import{a as Q}from"./chunk-BHSG643V.js";import"./chunk-3Q5JEF3K.js";import{c as Z,e as J,i as Y,m as ct,s as ee,t as te}from"./chunk-ZCT7SRIM.js";import{a as tt}from"./chunk-OQHMS5HM.js";import"./chunk-DQM3ATT4.js";import"./chunk-BSRYIN2F.js";import{A as rt,C as _t,a as H,b as q,e as nt,g as j,k as it,l as K,p as ot,q as st,r as at,t as lt}from"./chunk-DNBOZ26J.js";import{h as k}from"./chunk-XD6MBGQY.js";import"./chunk-4VPA3END.js";import"./chunk-GP2W7XZF.js";import"./chunk-WIDMAJIO.js";import"./chunk-JDCGGJ7O.js";import{B as b,Bb as P,F as R,Fc as x,Gc as $,Hb as V,Ib as z,Jb as l,Kb as se,La as qe,Lb as ae,Mb as Qe,Mc as et,Nb as p,Oa as r,Ob as S,S as He,Wb as Ze,X as f,Xb as Je,_a as w,_b as M,a as Ue,b as Be,ba as u,bc as O,c as We,ca as m,cc as U,db as F,dc as B,gc as y,hc as G,ic as A,la as c,mb as je,mc as Ye,n as v,nb as Ke,pb as C,qb as E,qc as W,ub as N,vb as i,wb as o,xb as I}from"./chunk-67YRCRMI.js";import"./chunk-EUDKD2JW.js";var mt=["formRef"],Ct=()=>[import("./chunk-O3JEFNCL.js").then(s=>s.OptionsListComponent)];function Et(s,e){s&1&&(i(0,"spk-alert",3),l(1,1),o())}function ft(s,e){if(s&1){let t=P();i(0,"app-options-list",5),A("optionsChange",function(a){u(t);let _=S();return G(_.settings,a)||(_.settings=a),m(a)}),o()}if(s&2){let t=S();y("options",t.settings),N("hasFreeTextSettings",!0)}}var Nt=["Bytes","KB","MB","GB","TB","PB"],D=class s{#e=f(ne);#t=f(k);formRef=et.required("formRef");settings=c([]);isSubmitting=c(!1);isLoadingOptions=c(!0);saved=c(!1);sizeOptions=c(Nt);lastRecievedServerSettings=c({});serverSettingsEffect=$(()=>{let e=this.#e.serverSettings();if(e===void 0)return;this.lastRecievedServerSettings.set(e),this.isLoadingOptions.set(!0);let t=Object.entries(e);t.forEach(([n,a],_)=>{if(n.startsWith("--")){let g=n.replace("--","");this.settings.update(T=>(T.some(h=>h.Name===g)||T.push({Name:g,Value:a}),T))}_===t.length-1&&this.isLoadingOptions.set(!1)})});submit(){this.isSubmitting.set(!0);let e=this.settings(),t=this.lastRecievedServerSettings(),n=e.map(T=>T.Name),_=Object.keys(t).filter(T=>T.startsWith("--")).filter(T=>!n.includes(T.replace("--",""))),g=e.reduce((T,h)=>(T[`--${h.Name}`]=h.Value,T),{});_.forEach(T=>{g[T]=null}),this.#t.patchApiV1Serversettings({requestBody:g}).pipe(R(()=>this.isSubmitting.set(!1))).subscribe({next:()=>{this.#e.refreshServerSettings(),this.saved.set(!0),setTimeout(()=>{this.saved.set(!1)},3e3)}})}static \u0275fac=function(t){return new(t||s)};static \u0275cmp=w({type:s,selectors:[["app-advanced-options-settings"]],viewQuery:function(t,n){t&1&&Ze(n.formRef,mt,5),t&2&&Je()},decls:8,vars:4,consts:()=>{let e;e=$localize`${"\uFFFD#4\uFFFD"}:START_TAG_SPK_ICON:floppy-disk${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SPK_ICON: Save settings `;let t;return t=$localize`Settings saved`,[e,t,[1,"actions"],[1,"success"],["spk-button","","type","button",1,"raised","primary",3,"click"],[3,"optionsChange","options","hasFreeTextSettings"]]},template:function(t,n){t&1&&(i(0,"div",2),C(1,Et,2,0,"spk-alert",3),i(2,"button",4),p("click",function(){return n.submit()}),V(3,0),I(4,"spk-icon"),z(),o()(),F(5,ft,1,2),je(6,5,Ct)),t&2&&(r(),E(n.saved()?1:-1),r(),M("loader",n.isSubmitting()),r(4),Ke(!n.isLoadingOptions()))},dependencies:[te,j,H,q],styles:["[_nghost-%COMP%]{display:block;width:100%;max-width:40.625rem;justify-self:flex-end}.actions[_ngcontent-%COMP%]{display:flex;gap:.5rem;justify-content:flex-end;margin-bottom:.5rem}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}.form-wrap[_ngcontent-%COMP%]{display:grid;grid-template-columns:2fr 2.5rem;gap:.5rem;align-items:flex-end}.remote-volume-wrap[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem}.remote-volume-wrap[_ngcontent-%COMP%] p.warning[_ngcontent-%COMP%]{color:#7d7d00}.row-inputs[_ngcontent-%COMP%]{display:flex;align-items:flex-end;gap:.5rem}.row-inputs[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{flex:1 0}.advanced-option[_ngcontent-%COMP%]{display:grid;gap:.5rem;grid-template-columns:1fr 1fr 2.5rem;align-items:flex-end}"],changeDetection:0})};var L=class s{#e=f(nt);#t=f(k);#o=f(Q);repeatRegisterTimer=null;state=c("unknown");claimUrl=c(null);registerUrl=c("");status=x(()=>{let e=this.state();return e==="enabled"?"Remote control is enabled but not connected":e==="connected"?"Remote control is connected":e==="registering"?"Registering machine...":e==="registeringfaulted"?"Registration failed":e==="registered"?"Registered, waiting for accept":e==="disabled"?"Remote control is configured but not enabled":e==="unknown"?"...loading...":"Remote control is not set up"});sysInfoEffect=$(()=>{let e=this.#o.systemInfo();e&&this.registerUrl.set(e.RemoteControlRegistrationUrl??"")});#n(e){e.RegistrationUrl&&this.claimUrl.set(e.RegistrationUrl),e.IsConnected?this.state.set("connected"):e.IsEnabled?this.state.set("enabled"):e.CanEnable?this.state.set("disabled"):e.IsRegisteringFaulted?this.state.set("registeringfaulted"):e.IsRegistering?e.RegistrationUrl!=null&&e.RegistrationUrl.trim().length>0?this.state.set("registered"):this.state.set("registering"):this.state.set("inactive");let t=this.state();this.repeatRegisterTimer!==null&&(clearTimeout(this.repeatRegisterTimer),this.repeatRegisterTimer=null),t==="registering"&&(this.repeatRegisterTimer=setTimeout(()=>{this.#t.postApiV1RemotecontrolRegister({requestBody:{RegistrationUrl:""}}).subscribe({next:n=>this.#n(n),error:n=>this.#i(n)})},5e3)),(t==="enabled"||t==="registered")&&(this.repeatRegisterTimer=setTimeout(()=>{this.#t.getApiV1RemotecontrolStatus().subscribe({next:n=>this.#n(n),error:n=>this.#i(n)})},5e3)),e.IsRegistering&&e.CanEnable&&this.#t.deleteApiV1RemotecontrolRegister().subscribe({next:n=>this.#n(n)})}#i(e){this.#t.getApiV1RemotecontrolStatus().subscribe({next:t=>this.#n(t)})}refreshRemoteControlStatus(){this.#t.getApiV1RemotecontrolStatus().subscribe({next:e=>this.#n(e),error:e=>this.#i(e)})}beginRemoteRegistration(){this.state.set("registering"),this.#t.postApiV1RemotecontrolRegister({requestBody:{RegistrationUrl:this.registerUrl()}}).subscribe({next:e=>this.#n(e),error:e=>this.#i(e)})}cancelRemoteRegistration(){this.#t.deleteApiV1RemotecontrolRegister().subscribe({next:e=>this.#n(e),error:e=>this.#i(e)})}enableRemoteControl(){this.#t.postApiV1RemotecontrolEnable().subscribe({next:e=>this.#n(e),error:e=>this.#i(e)})}disableRemoteControl(){this.#t.postApiV1RemotecontrolDisable().subscribe({next:e=>this.#n(e),error:e=>this.#i(e)})}deleteRemoteControl(){let e=this;this.#e.open(dt,{data:{title:$localize`Confirm delete`,message:$localize`Are you sure you want to delete the remote control registration?`,confirmText:$localize`Delete registration`,cancelText:$localize`Cancel`},closed:t=>{t&&e.#t.deleteApiV1RemotecontrolRegistration().subscribe({next:n=>e.#n(n),error:n=>e.#i(n)})}})}static \u0275fac=function(t){return new(t||s)};static \u0275prov=He({token:s,factory:s.\u0275fac,providedIn:"root"})};function ht(s,e){if(s&1){let t=P();i(0,"spk-form-field",10)(1,"input",11),A("ngModelChange",function(a){u(t);let _=S(2);return G(_.registerUrl,a)||(_.registerUrl=a),m(a)}),o()(),i(2,"button",12),p("click",function(){u(t);let a=S(2);return m(a.register())}),l(3,0),o()}if(s&2){let t=S(2);r(),y("ngModel",t.registerUrl)}}function Pt(s,e){if(s&1&&(i(0,"div",8)(1,"label"),l(2,1),o(),i(3,"a",13),O(4),o()()),s&2){let t=S(2);r(3),N("href",Ye(t.claimUrl()),qe),r(),U(t.claimUrl())}}function Ot(s,e){s&1&&(i(0,"div",8)(1,"label"),l(2,2),o()())}function Rt(s,e){if(s&1){let t=P();i(0,"button",12),p("click",function(){u(t);let a=S(2);return m(a.cancel())}),l(1,3),o()}}function It(s,e){if(s&1){let t=P();i(0,"button",12),p("click",function(){u(t);let a=S(2);return m(a.disable())}),l(1,4),o()}}function yt(s,e){if(s&1){let t=P();i(0,"button",12),p("click",function(){u(t);let a=S(2);return m(a.enable())}),l(1,5),o(),i(2,"button",14),p("click",function(){u(t);let a=S(2);return m(a.delete())}),l(3,6),o()}}function Gt(s,e){if(s&1&&(i(0,"div",7),C(1,ht,4,1),C(2,Pt,5,3,"div",8),C(3,Ot,3,0,"div",8),C(4,Rt,2,0,"button",9),C(5,It,2,0,"button",9),C(6,yt,4,0),o()),s&2){let t=S();r(),E(t.state()==="inactive"?1:-1),r(),E(t.state()==="registered"?2:-1),r(),E(t.state()==="registering"?3:-1),r(),E(t.state()==="registering"||t.state()==="registeringfaulted"||t.state()==="registered"?4:-1),r(),E(t.state()==="connected"||t.state()==="enabled"?5:-1),r(),E(t.state()==="disabled"?6:-1)}}var ie=class s{#e=f(L);state=this.#e.state;claimUrl=this.#e.claimUrl;registerUrl=this.#e.registerUrl;ngOnInit(){this.#e.refreshRemoteControlStatus()}cancel(){this.#e.cancelRemoteRegistration()}register(){this.#e.beginRemoteRegistration()}disable(){this.#e.disableRemoteControl()}enable(){this.#e.enableRemoteControl()}delete(){this.#e.deleteRemoteControl()}static \u0275fac=function(t){return new(t||s)};static \u0275cmp=w({type:s,selectors:[["app-remote-control"]],decls:1,vars:1,consts:()=>{let e;e=$localize`Register for remote control`;let t;t=$localize`Machine is now registered, open this link to add it to your account:`;let n;n=$localize`Registering, please wait...`;let a;a=$localize`Cancel registration`;let _;_=$localize`Disable remote control`;let g;g=$localize`Enable remote control`;let T;return T=$localize`Delete remote control setup`,[e,t,n,a,_,g,T,[1,"field-row"],[1,"field-col"],["type","button","spk-button","",1,"raised"],["label","Registration URL","for","remoteControlRegisterUrl"],["type","text","spk-input","","id","remoteControlRegisterUrl","name","remoteControlRegisterUrl",3,"ngModelChange","ngModel"],["type","button","spk-button","",1,"raised",3,"click"],["target","_blank",3,"href"],["type","button","spk-button","",1,"raised","error",3,"click"]]},template:function(t,n){t&1&&C(0,Gt,7,6,"div",7),t&2&&E(n.state()!=="unknown"?0:-1)},dependencies:[ee,Z,J,Y,K],styles:["[_nghost-%COMP%]{display:block}[_nghost-%COMP%] button[_ngcontent-%COMP%]{white-space:nowrap}.field-row[_ngcontent-%COMP%]{display:flex;gap:.5rem;width:100%}.field-row[_ngcontent-%COMP%] spk-form-field[_ngcontent-%COMP%], .field-row[_ngcontent-%COMP%] spk-select[_ngcontent-%COMP%]{flex:1 0}"],changeDetection:0})};function ut(...s){let e=c(...s);return Object.defineProperty(e,"value",{get:e.asReadonly(),set:e.set.bind(e)})}var re=()=>({standalone:!0});function At(s,e){s&1&&(i(0,"spk-icon",69),O(1,"check"),o())}function $t(s,e){s&1&&(i(0,"spk-icon",70),O(1,"prohibit"),o())}function vt(s,e){if(s&1){let t=P();i(0,"button",74),p("click",function(){u(t);let a=S(2);return m(a.updatePassphrase())}),l(1,34),o()}if(s&2){let t=S(2);M("loader",t.isUpdating())}}function bt(s,e){if(s&1){let t=P();i(0,"button",75),p("click",function(){u(t);let a=S(2);return m(a.updatePassphrase())}),l(1,35),o()}if(s&2){let t=S(2);M("loader",t.isUpdating()),N("disabled",!0)}}function wt(s,e){if(s&1){let t=P();i(0,"spk-form-field")(1,"label",65),l(2,31),o(),i(3,"input",66),A("ngModelChange",function(a){u(t);let _=S();return G(_.passphrase,a)||(_.passphrase=a),m(a)}),o()(),i(4,"spk-form-field")(5,"label",67),l(6,32),o(),i(7,"input",68),A("ngModelChange",function(a){u(t);let _=S();return G(_.repeatPassphrase,a)||(_.repeatPassphrase=a),m(a)}),o(),C(8,At,2,0,"spk-icon",69)(9,$t,2,0,"spk-icon",70),o(),i(10,"div",48)(11,"button",71),p("click",function(){u(t);let a=S();return m(a.cancelPasswordChange())}),l(12,33),o(),C(13,vt,2,2,"button",72)(14,bt,2,3,"button",73),o()}if(s&2){let t=S();r(3),y("ngModel",t.passphrase),r(4),N("disabled",t.passphrase().length===0),y("ngModel",t.repeatPassphrase),r(),E(t.passphrase().length!==0&&t.passphrase()===t.repeatPassphrase()?8:9),r(3),M("loader",t.isUpdating()),r(2),E(t.passphrase().length!==0&&t.passphrase()===t.repeatPassphrase()?13:14)}}function kt(s,e){s&1&&(i(0,"spk-icon",76),O(1,"check"),o())}function Lt(s,e){if(s&1){let t=P();i(0,"div",48)(1,"button",71),p("click",function(){u(t);let a=S();return m(a.openPassphraseForm())}),l(2,36),o(),C(3,kt,2,0,"spk-icon",76),o()}if(s&2){let t=S();r(3),E(t.passwordUpdated()?3:-1)}}function Ft(s,e){if(s&1){let t=P();i(0,"spk-form-field")(1,"label",77),l(2,37),o(),i(3,"textarea",78),A("ngModelChange",function(a){u(t);let _=S();return G(_.allowedHostnames,a)||(_.allowedHostnames=a),m(a)}),o()(),i(4,"spk-alert",79),l(5,38),o(),i(6,"button",74),p("click",function(){u(t);let a=S();return m(a.updateAllowedHostnames())}),l(7,39),o()}if(s&2){let t=S();r(3),y("ngModel",t.allowedHostnames),r(3),M("loader",t.updatingAllowedHosts())}}function xt(s,e){if(s&1&&O(0),s&2){let t,n=S();B(" ",(t=n.sysinfo())==null?null:t.ServerVersion," ")}}function Dt(s,e){s&1&&I(0,"spk-progress-bar",53)}function Xt(s,e){if(s&1&&O(0),s&2){let t=e.$implicit;B(" ",t.label," ")}}function Vt(s,e){if(s&1&&O(0),s&2){let t=e.$implicit;B(" ",t.label," ")}}function zt(s,e,t){let n=ut(s),a=n[Ue];t?.equal&&(a.equal=t.equal);let _;return n.set=g=>{clearTimeout(_),_=setTimeout(()=>Be(a,g),e)},n.update=g=>{clearTimeout(_),_=setTimeout(()=>We(a,g),e)},n}var Ut=[{value:"none",label:$localize`None`},{value:"s",label:$localize`Seconds`},{value:"m",label:$localize`Minutes`},{value:"h",label:$localize`Hours`}],Bt=[{value:"none",label:$localize`System default (information)`},{value:"information",label:$localize`Usage statistics, warnings, errors, and crashes`},{value:"warning",label:$localize`Warnings, errors and crashes`},{value:"error",label:$localize`Errors and crashes`},{value:"crash",label:$localize`Crashes only`},{value:"none",label:$localize`None / disabled`}],_e=class s{#e=f(St);#t=f(Q);#o=f(k);#n=f(ne);#i=f(L);#s=f(tt);#a=this.#s.getItem("locale")??"en-US";sysinfo=this.#t.systemInfo;isDarkMode=this.#e.isDarkMode;editAs=c("list");previousLang=this.#a;langCtrl=c(this.#a);usageStatistics=c("");updatingUsageStatistics=c(!1);remoteControlStatus=this.#i.status;updatingChannel=c(!1);updateChannel=c("");setNewChannel(e){let t=this.updateChannel();this.updateChannel.set(e),this.#o.patchApiV1Serversettings({requestBody:{"update-channel":e}}).pipe(R(()=>this.updatingChannel.set(!1)),b(()=>(this.updateChannel.set(t),v(null)))).subscribe()}allowRemoteAccess=c(!1);allowedHostnames=c("");loadedAllowedHostnames=c("");updatingRemoteAccess=c(!1);updatingAllowedHosts=c(!1);updateRemoteAccess(){let e=this.allowRemoteAccess(),t=!e;this.allowRemoteAccess.set(t),this.#o.patchApiV1Serversettings({requestBody:{"server-listen-interface":t?"any":"loopback"}}).pipe(R(()=>this.updatingRemoteAccess.set(!1)),b(()=>(this.allowRemoteAccess.set(e),v(null)))).subscribe()}updateAllowedHostnames(){let e=this.loadedAllowedHostnames(),t=this.allowedHostnames();this.updatingAllowedHosts.set(!0),this.#o.patchApiV1Serversettings({requestBody:{"server-listen-interface":"any","allowed-hostnames":t}}).pipe(R(()=>this.updatingAllowedHosts.set(!1)),b(()=>(this.allowedHostnames.set(e),v(null)))).subscribe()}updatingDisableTrayIconLogin=c(!1);disableTrayIconLogin=c(!1);saveDisableTrayIconLogin(){let e=this.disableTrayIconLogin(),t=!e;this.updatingDisableTrayIconLogin.set(!0),this.disableTrayIconLogin.set(t),this.#o.patchApiV1Serversettings({requestBody:{"disable-tray-icon-login":t?"True":"False"}}).pipe(R(()=>this.updatingDisableTrayIconLogin.set(!1)),b(()=>(this.disableTrayIconLogin.set(e),v(null)))).subscribe()}showPassphraseForm=c(!1);isUpdating=c(!1);passphrase=c("");repeatPassphrase=c("");passwordUpdated=c(!1);updatePassphrase(){this.passphrase()===this.repeatPassphrase()&&(this.isUpdating.set(!0),this.#o.patchApiV1Serversettings({requestBody:{"server-passphrase":this.passphrase()}}).pipe(R(()=>this.isUpdating.set(!1))).subscribe({next:()=>{this.showPassphraseForm.set(!1),this.passwordUpdated.set(!0),setTimeout(()=>{this.passwordUpdated.set(!1)},3e3)}}))}openPassphraseForm(){this.showPassphraseForm.set(!0)}cancelPasswordChange(){this.showPassphraseForm.set(!1)}languageOptions=c(Tt);usageStatisticsOptions=c(Bt);timeTypeOptions=c(Ut);timeType=c("none");timeValue=zt(0,300);timeRange=x(()=>this.timeType()==="h"?[0,24]:[0,60]);timeValueEffect=$(()=>{let e=this.timeValue(),t=this.#n.serverSettings();!t||t["startup-delay"]===""&&this.timeType()==="none"||this.updateStartupDelay()});updateLocale(e){!e||e===""||e===this.previousLang||(this.#s.setItem("locale",e),window.location.reload())}updateStartupDelay(){let e=this.timeValue(),t=this.timeType(),n="";t!=="none"&&e!==0&&(n=`${e}${t}`),this.#o.patchApiV1Serversettings({requestBody:{"startup-delay":n}}).subscribe()}updateTimeType(e){this.timeType()==="none"&&this.timeValue.set(0),this.timeType.set(e)}updateUsageStatistics(e){let t=this.usageStatistics();!e||e===""||e===t||(this.usageStatistics.set(e),this.updatingUsageStatistics.set(!0),this.#o.patchApiV1Serversettings({requestBody:{"usage-reporter-level":this.usageStatistics()==="none"?"":this.usageStatistics()}}).pipe(R(()=>this.updatingUsageStatistics.set(!1)),b(()=>(this.usageStatistics.set(t),v(null)))).subscribe())}serverSettingsEffect=$(()=>{let e=this.#n.serverSettings();if(e===void 0)return;let t=e["startup-delay"],n=t.slice(-1),a=t.slice(0,-1),_=["s","m","h"];this.disableTrayIconLogin.set(e["disable-tray-icon-login"]!=="False"),this.updateChannel.set(e["update-channel"]),this.allowRemoteAccess.set(e["server-listen-interface"]==="any"),this.allowedHostnames.set(e["allowed-hostnames"]),this.loadedAllowedHostnames.set(e["allowed-hostnames"]),this.usageStatistics.set(e["usage-reporter-level"]===""?"none":e["usage-reporter-level"]),this.timeType.set(t==""?"none":_.includes(n)?n:"none"),this.timeValue.set(t==""?0:parseInt(a))});setDarkMode(){this.#e.setDarkMode()}setLightMode(){this.#e.setLightMode()}static \u0275fac=function(t){return new(t||s)};static \u0275cmp=w({type:s,selectors:[["app-settings"]],decls:132,vars:46,consts:()=>{let e;e=$localize`Settings`;let t;t=$localize`Configure your backup settings.`;let n;n=$localize`Remote access control`;let a;a=$localize`Color theme`;let _;_=$localize`Customize your application theme`;let g;g=$localize`Passwords`;let T;T=$localize`Change server passphrase`;let h;h=$localize`Language`;let de;de=$localize`Select a language for the platform`;let ce;ce=$localize`Allow remote access (requires restart)`;let Se;Se=$localize` By allowing remote access, the server listens to requests from any machine on your network. If you enable this option, make sure you are always using the computer on a secure firewall protected network. `;let pe;pe=$localize`Allow remote access`;let Te;Te=$localize`Prevent tray icon automatic log-in`;let ge;ge=$localize` By default, the tray icon will open the user interface with a token that unlocks the user interface. This ensures that you can access the user interface from the tray icon, while requiring others to enter a password. If you prefer having to type in the password, even when accessing the user interface from the tray icon, enable this option. `;let ue;ue=$localize`Prevent tray icon automatic log-in`;let me;me=$localize`Update channel`;let Ce;Ce=$localize` Default (${"\uFFFD0\uFFFD"}:INTERPOLATION:) `;let Ee;Ee=$localize`Same as the base install version: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let fe;fe=$localize`Stable`;let Ne;Ne=$localize`Official releases`;let Me;Me=$localize`Beta`;let he;he=$localize` Try out the new features that we are working on. Currently the most stable version available. Test Restore data before using this in production environments. `;let Pe;Pe=$localize` Experimental `;let Oe;Oe=$localize`Specific builds for developers only. Not for use with important data.`;let Re;Re=$localize`Canary`;let Ie;Ie=$localize`Individual builds for developers only. Not for use with important data.`;let ye;ye=$localize`Pause after startup or hibernation`;let Ge;Ge=$localize` Duplicati will run when started, but will remain in paused state for the duration. Duplicati will occupy minimal system resources and no backups will be run. `;let Ae;Ae=$localize`Usage statistics`;let X;X=$localize` Usage reports help us improve the user experience and evaluate impact of new features. We use them to generate ${"\uFFFD#119\uFFFD"}:START_LINK:public usage statistics.${"\uFFFD/#119\uFFFD"}:CLOSE_LINK:${"[\uFFFD#120\uFFFD\uFFFD/#120\uFFFD|\uFFFD#121\uFFFD\uFFFD/#121\uFFFD]"}:LINE_BREAK:${"[\uFFFD#120\uFFFD\uFFFD/#120\uFFFD|\uFFFD#121\uFFFD\uFFFD/#121\uFFFD]"}:LINE_BREAK: All usage reports are sent anonymously and do not contain any personal information. They contain information about hardware and operating system, the type of backend, backup duration, overall size of source data and similar data. They do not contain paths, filenames, usernames, passwords or similar sensitive information. `,X=Qe(X);let $e;$e=$localize`Advanced options`;let ve;ve=$localize`Enter new password`;let be;be=$localize`Repeat password`;let oe;oe=$localize`Password have to be filled and have to match`;let we;we=$localize`Passphrase`;let ke;ke=$localize`Repeat passphrase`;let Le;Le=$localize`Cancel`;let Fe;Fe=$localize` Update passphrase `;let xe;xe=$localize` Update passphrase `;let De;De=$localize`Change password`;let Xe;Xe=$localize`Allowed hostnames`;let Ve;Ve=$localize` To prevent various DNS based attacks, Duplicati limits the allowed hostnames to the ones listed here. Direct IP access and localhost is always allowed. Multiple hostnames can be supplied with a semicolon separator. If any of the allowed hostnames is an asterisk (*), all hostnames are allowed and this feature is disabled. If the field is empty, only IP address and localhost access is allowed. `;let ze;return ze=$localize` Update allowed hostnames `,[e,t,n,a,_,g,T,h,de,ce,Se,pe,Te,ge,ue,me,Ce,Ee,fe,Ne,Me,he,Pe,Oe,Re,Ie,ye,Ge,Ae,X,$e,we,ke,Le,Fe,xe,De,Xe,Ve,ze,[1,"content"],[1,"title"],[1,"left"],[1,"right"],[1,"themes"],["src","assets/images/light-theme.png","alt","light theme",3,"click"],["src","assets/images/dark-theme.png","alt","dark theme",3,"click"],[1,"right","passphrase-form"],[1,"actions"],["value","value","label","label",3,"options","isClearable","inlineSearch"],["type","text",3,"ngModelChange","ngModel","ngModelOptions"],[1,"right","remote-access-form"],[1,"primary","raised",3,"click"],[1,"indeterminate","primary"],[1,"right","radios"],[1,"radio-option",3,"click"],[1,"primary","raised"],[1,"field-row"],[1,"raised","primary",3,"unit"],["type","range",3,"ngModelChange","min","max","disabled","ngModel","ngModelOptions"],["label","label","value","value",3,"options","isClearable"],["type","text",3,"ngModelChange","ngModel"],["href","#"],["label","label","value","value",3,"options","isLoading"],[1,"advanced-settings"],["for","password"],["type","password","name","password","autocomplete","disabled","placeholder",ve,"tabindex","1",3,"ngModelChange","ngModel"],["for","repeatPassword"],["type","password","name","repeatPassword","autocomplete","disabled","placeholder",be,"tabindex","2",3,"ngModelChange","disabled","ngModel"],["suffix","",1,"spk-success"],["suffix",""],["spk-button","",3,"click"],["spk-button","",1,"raised","primary",3,"loader"],["spk-button","","spkTooltip",oe,1,"raised","primary",3,"loader","disabled"],["spk-button","",1,"raised","primary",3,"click"],["spk-button","","spkTooltip",oe,1,"raised","primary",3,"click","disabled"],[1,"spk-success"],["for","allowedHostnames"],["type","text","id","allowedHostnames",3,"ngModelChange","ngModel"],["type","primary"]]},template:function(t,n){if(t&1&&(I(0,"app-status-bar"),i(1,"div",40)(2,"header")(3,"div",41)(4,"h2"),l(5,0),o(),i(6,"p"),l(7,1),o()()(),i(8,"section")(9,"div",42)(10,"h3"),l(11,2),o(),i(12,"p"),O(13),o()(),i(14,"div",43),I(15,"app-remote-control"),o()(),i(16,"section")(17,"div",42)(18,"h3"),l(19,3),o(),i(20,"p"),l(21,4),o()(),i(22,"div",43)(23,"div",44)(24,"img",45),p("click",function(){return n.setLightMode()}),o(),i(25,"img",46),p("click",function(){return n.setDarkMode()}),o()()()(),i(26,"section")(27,"div",42)(28,"h3"),l(29,5),o(),i(30,"p"),l(31,6),o()(),i(32,"div",47),C(33,wt,15,7)(34,Lt,4,1,"div",48),o()(),i(35,"section")(36,"div",42)(37,"h3"),l(38,7),o(),i(39,"p"),l(40,8),o()(),i(41,"div",43)(42,"spk-select",49)(43,"input",50),p("ngModelChange",function(_){return n.updateLocale(_)}),o()()()(),i(44,"section")(45,"div",42)(46,"h3"),l(47,9),o(),i(48,"p"),l(49,10),o()(),i(50,"div",51)(51,"spk-toggle",52),p("click",function(){return n.updateRemoteAccess()}),i(52,"label"),l(53,11),o()(),C(54,Ft,8,3),o()(),i(55,"section")(56,"div",42)(57,"h3"),l(58,12),o(),i(59,"p"),l(60,13),o()(),i(61,"div",43)(62,"spk-toggle",52),p("click",function(){return n.saveDisableTrayIconLogin()}),i(63,"label"),l(64,14),o()()()(),i(65,"section")(66,"div",42)(67,"h3"),l(68,15),o(),i(69,"p"),C(70,xt,1,1),o(),C(71,Dt,1,0,"spk-progress-bar",53),o(),i(72,"div",54)(73,"div",55),p("click",function(){return n.setNewChannel("")}),i(74,"spk-radio",56),l(75,16),o(),i(76,"p"),l(77,17),o()(),i(78,"div",55),p("click",function(){return n.setNewChannel("stable")}),i(79,"spk-radio",56),l(80,18),o(),i(81,"p"),l(82,19),o()(),i(83,"div",55),p("click",function(){return n.setNewChannel("beta")}),i(84,"spk-radio",56),l(85,20),o(),i(86,"p"),l(87,21),o()(),i(88,"div",55),p("click",function(){return n.setNewChannel("experimental")}),i(89,"spk-radio",56),l(90,22),o(),i(91,"p"),l(92,23),o()(),i(93,"div",55),p("click",function(){return n.setNewChannel("canary")}),i(94,"spk-radio",56),l(95,24),o(),i(96,"p"),l(97,25),o()()()()(),I(98,"spk-divider"),i(99,"div",40)(100,"section")(101,"div",42)(102,"h3"),l(103,26),o(),i(104,"p"),l(105,27),o()(),i(106,"div",43)(107,"div",57)(108,"spk-range-slider",58)(109,"input",59),A("ngModelChange",function(_){return G(n.timeValue,_)||(n.timeValue=_),_}),o()(),i(110,"spk-select",60)(111,"input",61),p("ngModelChange",function(_){return n.updateTimeType(_)}),o(),F(112,Xt,1,1,"ng-template"),o()()()(),i(113,"section")(114,"div",42)(115,"h3"),l(116,28),o(),i(117,"p"),V(118,29),I(119,"a",62)(120,"br")(121,"br"),z(),o()(),i(122,"div",43)(123,"spk-select",63)(124,"input",50),p("ngModelChange",function(_){return n.updateUsageStatistics(_)}),o(),F(125,Vt,1,1,"ng-template"),o()()()(),i(126,"div",40)(127,"section")(128,"div",64)(129,"h3"),l(130,30),o(),I(131,"app-advanced-options-settings"),o()()()),t&2){let a,_,g;r(13),U(n.remoteControlStatus()),r(11),M("active",!n.isDarkMode()),r(),M("active",n.isDarkMode()),r(8),E(n.showPassphraseForm()?33:34),r(9),N("options",n.languageOptions())("isClearable",!1)("inlineSearch",!0),r(),N("ngModel",n.langCtrl())("ngModelOptions",W(43,re)),r(8),M("active",n.allowRemoteAccess()),r(3),E(n.allowRemoteAccess()?54:-1),r(8),M("active",n.disableTrayIconLogin()),r(8),E(n.updateChannel()!==""&&((a=n.sysinfo())!=null&&a.ServerVersion)?70:-1),r(),E(n.updatingChannel()?71:-1),r(3),M("active",n.updateChannel()===""),r(),se((_=n.sysinfo())==null?null:_.DefaultUpdateChannel),ae(75),r(2),se((g=n.sysinfo())==null?null:g.ServerVersionType),ae(77),r(2),M("active",n.updateChannel()==="stable"),r(5),M("active",n.updateChannel()==="beta"),r(5),M("active",n.updateChannel()==="experimental"),r(5),M("active",n.updateChannel()==="canary"),r(14),N("unit",n.timeType()==="none"?"s":n.timeType()),r(),N("min",n.timeRange()[0])("max",n.timeRange()[1])("disabled",n.timeType()==="none"),y("ngModel",n.timeValue),N("ngModelOptions",W(44,re)),r(),N("options",n.timeTypeOptions())("isClearable",!1),r(),N("ngModel",n.timeType()),r(12),N("options",n.usageStatisticsOptions())("isLoading",n.updatingUsageStatistics()),r(),N("ngModel",n.usageStatistics())("ngModelOptions",W(45,re))}},dependencies:[ee,Z,ct,J,Y,te,pt,ie,D,j,st,at,ot,rt,_t,K,H,it,q,lt],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;position:sticky;top:0;background:var(--base-1);z-index:1000;border-bottom:1px solid var(--base-4)}header[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem}section[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:2rem 0;border-top:1px solid var(--base-4)}section[_ngcontent-%COMP%]:first-of-type{border-top:0}section[_ngcontent-%COMP%] .left[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem;align-items:flex-start}section[_ngcontent-%COMP%] .left[_ngcontent-%COMP%] spk-button-group[_ngcontent-%COMP%]{margin-top:.25rem}section[_ngcontent-%COMP%] .left[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{text-wrap:balance;width:50%}.passphrase-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:flex-start;gap:1rem}.passphrase-form[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.remote-access-form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem}.themes[_ngcontent-%COMP%]{display:flex;gap:.5rem}.themes[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{max-width:15rem;border-radius:var(--shape-3);cursor:pointer}.themes[_ngcontent-%COMP%] img.active[_ngcontent-%COMP%]{border:2px solid var(--primary-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-8);margin-bottom:.25rem}.radio-option[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{text-wrap:balance;color:var(--base-9)}.field-col[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}.field-row[_ngcontent-%COMP%]{display:flex;gap:.5rem;width:100%}.field-row[_ngcontent-%COMP%] spk-form-field[_ngcontent-%COMP%], .field-row[_ngcontent-%COMP%] spk-select[_ngcontent-%COMP%]{flex:1 0}.advanced-settings[_ngcontent-%COMP%]{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr;gap:1rem}"],changeDetection:0})};export{zt as debounceSignal,_e as default};
package/chunk-VFVXE2DC.js DELETED
@@ -1 +0,0 @@
1
- import{a as G}from"./chunk-BHSG643V.js";import{b as P,d as $}from"./chunk-OQHMS5HM.js";import{e as g}from"./chunk-DNBOZ26J.js";import{h as W}from"./chunk-XD6MBGQY.js";import{qa as M}from"./chunk-GP2W7XZF.js";import{Fc as h,Gc as w,Hb as O,Ib as R,Jb as N,Kb as _,Lb as I,O as k,Oa as T,S as d,X as r,_a as C,i as m,la as n,uc as A,vb as D,wb as v,wc as F,xb as E}from"./chunk-67YRCRMI.js";var S=class s{reconnectTimer=n(15e3);countdown=n(0);connectTimerEffect=w(()=>{let e=this.reconnectTimer();this.countdown.set(e/1e3)});interval=setInterval(()=>{if(this.countdown()<=1){this.countdown.set(this.reconnectTimer()/1e3);return}this.countdown.set(this.countdown()-1)},1e3);ngOnDestroy(){clearInterval(this.interval)}static \u0275fac=function(t){return new(t||s)};static \u0275cmp=C({type:s,selectors:[["app-disconnected-dialog"]],decls:8,vars:4,consts:()=>{let e;e=$localize`Reconnecting...`;let t;return t=$localize` The connection to the server is lost, attempting again in ${"\uFFFD#6\uFFFD"}:START_TAG_STRONG:0:${"\uFFFD0\uFFFD"}:INTERPOLATION:${"\uFFFD/#6\uFFFD"}:CLOSE_TAG_STRONG:`,[e,t,["header",""],["content",""]]},template:function(t,o){t&1&&(D(0,"header",2)(1,"h3"),N(2,0),v()(),D(3,"div",3)(4,"p"),O(5,1),E(6,"strong"),A(7,"number"),R(),v()()),t&2&&(T(7),_(F(7,1,o.countdown(),"2.0-0")),I(5))},dependencies:[M],styles:["[_nghost-%COMP%]{display:block;padding:1rem}"],changeDetection:0})};var f=class s{dialog=r(g);#n=r(W);#o=n("disconnected");#e=n(null);#t=n(-1);#a=n(0);#c=n(!1);#r=new m;connectionStatus=this.#o.asReadonly();serverState=this.#e.asReadonly();#l=void 0;duration=r(P).relayIsEnabled()?"94s":"299s";start(){this.#c.set(!0),this.#r=new m,this.#s()}stop(){this.#r.next(),this.#r.complete(),this.#c.set(!1)}reconnect(){this.stop(),this.start()}reconnectIfNeeded(){this.#c()||this.reconnect()}#s(){this.#o.set("connecting"),this.#n.getApiV1Serverstate({lastEventId:this.#t(),longpoll:this.#t()>=0,duration:this.duration}).pipe(k(this.#r)).subscribe({next:e=>{e&&this.#i(e),this.#u()},error:e=>{let o=this.#a()+1,a=Math.min(5e3*o,3e4);this.#a.set(o),o>3&&this.#o.set("disconnected"),this.#l||(this.#l=this.dialog.open(S,{closeOnButton:!1,closeOnEsc:!1,closeOnOutsideClick:!1})),this.#l.component.reconnectTimer.set(a),setTimeout(()=>{this.#s()},a)}})}#i(e){this.#o.set("connected"),this.#e.set(e),this.#t.set(e.LastEventID??-1),this.#a.set(0)}#u(){this.#c()&&this.#s()}static \u0275fac=function(t){return new(t||s)};static \u0275prov=d({token:s,factory:s.\u0275fac,providedIn:"root"})};var u=!1,b=class s{#n=r($);#o=r(G);dialog=r(g);#e=null;#t=n("disconnected");#a=n(null);#c=n(null);#r=n(null);#l=n(null);#s=void 0;#i=n({legacystatus:!0});shouldConnect=n(!0);connectionStatus=this.#t.asReadonly();serverState=this.#a.asReadonly();serverProgress=this.#c.asReadonly();subscriptions=this.#i.asReadonly();serverTaskQueue=this.#r.asReadonly();backupListState=this.#l.asReadonly();#u=0;start(){this.#p(),this.shouldConnect.set(!0)}#p(){let e=this.#n.token();if(!e){console.error("No access token available");return}let t=window.location.protocol==="https:"?"wss:":"ws:",o=window.location.port?`:${window.location.port}`:"";window.location.port==="4200"&&(o=":8200");let a=window.location.hostname,j=this.#o.hasWebSocketAuth()?`${t}//${a}${o}/notifications`:`${t}//${a}${o}/notifications?token=${e}`;this.#t.set("connecting"),this.#e=new WebSocket(j),this.#e.onopen=()=>{u&&console.log("WebSocket connection established"),this.#o.hasWebSocketAuth()?(this.#t.set("authenticating"),this.#e?.send(JSON.stringify({Version:1,Token:e}))):this.#d()},this.#e.onmessage=p=>{if(this.#t()==="authenticating")try{let i=JSON.parse(p.data);i.Success?(u&&console.log("WebSocket authentication successful"),this.#d()):(console.error("WebSocket authentication failed:",i.Message),this.#t.set("disconnected"));return}catch(i){console.error("Error parsing WebSocket authentication reply",i),this.#t.set("disconnected");return}try{let i=JSON.parse(p.data),l=i?.Type;if(l==="legacystatus"||l==null)u&&console.log("Received legacy status update:",i),this.#a.set(i);else if(l==="reply"){let c=i;c.Success||console.error("WebSocket reply error:",c.Message)}else if(l==="progress"){let c=i;u&&console.log("Received progress update:",c.Data),this.#c.set(c.Data)}else if(l==="taskqueue"){let c=i;u&&console.log("Received task update:",c.Data),this.#r.set(c.Data)}else if(l==="backuplist"){let c=i;u&&console.log("Received backup list update:",c.Data),this.#l.set(c.Data)}else console.warn("Unknown WebSocket message type:",l)}catch(i){console.error("Error parsing WebSocket message",i)}},this.#e.onclose=p=>{u&&console.log("WebSocket connection closed",p),this.#t.set("disconnected"),this.shouldConnect()&&(this.#s||(this.#s=this.dialog.open(S,{closeOnButton:!1,closeOnEsc:!1,closeOnOutsideClick:!1}),this.#s.component.reconnectTimer.set(15e3)),setTimeout(()=>this.#p(),5e3))},this.#e.onerror=p=>{console.error("WebSocket error",p),this.#t.set("disconnected")}}#d(){this.#t.set("connected");let e=this.#i();Object.keys(e).length>0&&Object.entries(e).forEach(([t,o])=>{o!=null&&this.sendSubscribeRequest(t,o)}),this.#s&&this.#s.close()}stop(){this.shouldConnect.set(!1),this.#e?.close()}reconnect(){this.#e?.close(),this.start()}reconnectIfNeeded(){this.#e?.readyState!==WebSocket.OPEN&&this.reconnect()}sendSubscribeRequest(e,t){this.#e?.send(JSON.stringify({Version:1,Id:`req-${++this.#u}`,Action:"sub",Service:e,Data:t||null}))}subscribe(e,t=void 0){let o=this.#i(),a=o[e];(!a||JSON.stringify(a)!==JSON.stringify(t))&&(o[e]=t||!0,this.#i.set(o),this.#t()=="connected"&&this.sendSubscribeRequest(e,t))}unsubscribe(e){let t=this.#i();t[e]&&(delete t[e],this.#i.set(t),this.#t()=="connected"&&this.#e?.send(JSON.stringify({Version:1,Id:`req-${++this.#u}`,Action:"unsub",Service:e})))}static \u0275fac=function(t){return new(t||s)};static \u0275prov=d({token:s,factory:s.\u0275fac,providedIn:"root"})};var L=class s{#n=r(b);#o=r(f);#e=n("longpoll");#t=n(!1);connectionStatus=h(()=>this.#e()==="websocket"?this.#n.connectionStatus():this.#o.connectionStatus());isConnectionMethodSet=this.#t.asReadonly();serverState=h(()=>this.#e()==="websocket"?this.#n.serverState():this.#o.serverState());progressState=h(()=>this.#n.serverProgress());taskQueueState=h(()=>this.#n.serverTaskQueue());backupListState=h(()=>this.#n.backupListState());setConnectionMethod(e){e==="websocket"?(this.#n.reconnectIfNeeded(),this.#o.stop()):(this.#o.reconnectIfNeeded(),this.#n.stop()),this.#e.set(e),this.#t.set(!0)}getConnectionMethod(){return this.#e()}subscribe(e,t=null){this.#n.subscribe(e,t)}unsubscribe(e){this.#n.unsubscribe(e)}static \u0275fac=function(t){return new(t||s)};static \u0275prov=d({token:s,factory:s.\u0275fac,providedIn:"root"})};export{L as a};
package/chunk-WESN3ZUC.js DELETED
@@ -1 +0,0 @@
1
- import{a as Z,d as rn}from"./chunk-JHVU3HSL.js";import{a as cn}from"./chunk-CFESUDFC.js";import"./chunk-67XQIEG5.js";import{a as ln}from"./chunk-NZD6UMYZ.js";import{a as _n}from"./chunk-B6DE3TTE.js";import"./chunk-VFVXE2DC.js";import"./chunk-FC45TEB6.js";import"./chunk-RHW5QVAY.js";import"./chunk-BHSG643V.js";import"./chunk-3Q5JEF3K.js";import"./chunk-ZCT7SRIM.js";import"./chunk-OQHMS5HM.js";import{e as je}from"./chunk-DQM3ATT4.js";import"./chunk-BSRYIN2F.js";import{a as Y,f as qe,g as Je,h as Qe,j as Ye,k as Ze,o as en,p as nn,w as tn,x as on}from"./chunk-DNBOZ26J.js";import{h as an}from"./chunk-XD6MBGQY.js";import"./chunk-4VPA3END.js";import"./chunk-GP2W7XZF.js";import"./chunk-WIDMAJIO.js";import"./chunk-JDCGGJ7O.js";import{Ab as D,Bb as x,F as w,Gc as We,Hb as s,Ib as u,Jb as p,Kb as y,Lb as L,Mb as q,Nb as f,Oa as l,Ob as F,X as z,Yb as W,_a as he,_b as B,a as ve,b as j,ba as N,bc as d,ca as k,cc as ze,db as P,dc as O,gc as Ve,hc as Ke,ic as Ue,la as H,mb as Xe,nb as we,pb as S,qb as E,qc as J,rb as V,rc as $,sb as K,tb as U,ub as T,uc as I,vb as o,vc as G,wb as i,wc as b,xb as g,yb as M,yc as Q,zb as m}from"./chunk-67YRCRMI.js";import"./chunk-EUDKD2JW.js";function sn(...n){let t=H(...n);return Object.defineProperty(t,"value",{get:t.asReadonly(),set:t.set.bind(t)})}function un(n,t,e){let a=localStorage.getItem(t);a!=null&&(n=JSON.parse(a));let r=sn(n),c=r[ve];e?.equal&&(c.equal=e.equal);function R(C){C==null?localStorage.removeItem(t):localStorage.setItem(t,JSON.stringify(C))}return r.set=C=>{R(C),j(c,C)},r.update=C=>{let A=C(r());R(A),j(c,A)},r}var gn=()=>[import("./chunk-EW3XN62R.js").then(n=>n.NgTemplateOutlet),Y,Ye,on,tn,import("./chunk-EVINCUTE.js").then(n=>n.DurationFormatPipe),import("./chunk-HJQBTK5I.js").then(n=>n.BytesPipe),import("./chunk-6HFJTYBK.js").then(n=>n.RelativeTimePipe)],dn=()=>["/add-backup"],Tn=()=>["/restore"],Fn=n=>({$implicit:n}),Cn=n=>["/backup",n],Sn=n=>["/restore",n],En=n=>["/backup",n,"export"],Mn=n=>["/backup",n,"delete"],mn=n=>["/backup",n,"database"],On=n=>["/backup",n,"commandline"],Nn=n=>["/backup",n,"log"];function kn(n,t){if(n&1){let e=x();o(0,"button",57),f("click",function(){let r=N(e).$implicit,c=F(2);return k(c.sortByColumn.set(r.value))}),p(1,15),i()}if(n&2){let e=t.$implicit,a=F(2);B("active",a.orderBy()===e.value),l(),y(e.label),L(1)}}function Pn(n,t){if(n&1&&(o(0,"spk-menu",58)(1,"button",59),s(2,14),g(3,"strong")(4,"spk-icon"),u(),i(),M(5,60),K(6,kn,2,3,"button",61,V),m(),i()),n&2){let e=F();l(4),y(e.orderBy()),L(2),l(2),U(e.sortOrderOptions())}}function fn(n,t){if(n&1&&(d(0),I(1,"durationFormat")),n&2){let e=F().$implicit,a=F(4);O(" ",b(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.LastBackupDuration,a.timeType()==="actual")," ")}}function $n(n,t){n&1&&(M(0),p(1,21),m())}function Dn(n,t){if(n&1&&(d(0),I(1,"bytes")),n&2){let e=F().$implicit;O(" ",G(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.SourceFilesSize)," ")}}function In(n,t){n&1&&(M(0),p(1,22),m())}function An(n,t){if(n&1&&(d(0),I(1,"bytes")),n&2){let e=F().$implicit;O(" ",G(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.TargetFilesSize)," ")}}function Rn(n,t){n&1&&(M(0),p(1,23),m())}function Hn(n,t){n&1&&D(0)}function yn(n,t){if(n&1&&(o(0,"div",64)(1,"div",51)(2,"h3"),d(3),o(4,"spk-chip")(5,"spk-icon"),d(6),i(),d(7),i()(),o(8,"p")(9,"span"),p(10,16),i(),d(11),I(12,"relativeTime"),i(),o(13,"p")(14,"span"),p(15,17),i(),S(16,fn,2,4)(17,$n,2,0,"ng-container"),i(),o(18,"p")(19,"span"),p(20,18),i(),S(21,Dn,2,3)(22,In,2,0,"ng-container"),i(),o(23,"p")(24,"span"),p(25,19),i(),S(26,An,2,3)(27,Rn,2,0,"ng-container"),i()(),o(28,"spk-chip",65),p(29,20),i(),o(30,"div",55),P(31,Hn,1,0,"ng-container",66),i()()),n&2){let e=t.$implicit,a=F(4),r=W(51);l(3),O(" ",(e.Backup==null?null:e.Backup.Name)??a.MISSING_BACKUP_NAME," "),l(3),ze(a.getBackendIcon(e.Backup==null?null:e.Backup.TargetURL)),l(),O(" ",a.getBackendType(e.Backup==null?null:e.Backup.TargetURL)," "),l(4),O(" ",b(12,11,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.LastBackupDate,a.timeType()==="actual")," "),l(5),E(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.LastBackupDuration?16:17),l(5),E(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.SourceFilesSize?21:22),l(5),E(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.TargetFilesSize?26:27);let c=a.getBackupVersionCount(e);l(3),y(c)(c),L(29),l(2),T("ngTemplateOutlet",r)("ngTemplateOutletContext",$(14,Fn,e))}}function Ln(n,t){if(n&1&&K(0,yn,32,16,"div",64,V),n&2){let e=F(3);U(e.backups())}}function Bn(n,t){n&1&&(M(0),p(1,24),m())}function xn(n,t){if(n&1&&(o(0,"div",62),S(1,Ln,2,0)(2,Bn,2,0,"ng-container"),i()),n&2){let e=F(2);l(),E(e.backups().length?1:2)}}function Gn(n,t){n&1&&(s(0,25,1),D(1),u())}function bn(n,t){n&1&&(s(0,26,1),D(1),u())}function vn(n,t){n&1&&(s(0,27,1),D(1),u())}function hn(n,t){n&1&&(s(0,28,1),D(1),u())}function Xn(n,t){n&1&&(s(0,29,1),D(1),u())}function wn(n,t){n&1&&(s(0,30,1),D(1),u())}function zn(n,t){if(n&1&&(d(0),I(1,"relativeTime")),n&2){let e=F().$implicit,a=F(3);O(" ",b(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.LastBackupDate,a.timeType()==="actual")," ")}}function Vn(n,t){n&1&&(M(0),p(1,34),m())}function Kn(n,t){if(n&1&&(d(0),I(1,"durationFormat")),n&2){let e=F().$implicit,a=F(3);O(" ",b(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.LastBackupDuration,a.timeType()==="actual")," ")}}function Un(n,t){n&1&&(M(0),p(1,35),m())}function Wn(n,t){if(n&1&&(d(0),I(1,"bytes")),n&2){let e=F().$implicit;O(" ",G(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.SourceFilesSize)," ")}}function jn(n,t){n&1&&(M(0),p(1,36),m())}function qn(n,t){if(n&1&&(d(0),I(1,"bytes")),n&2){let e=F().$implicit;O(" ",G(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.TargetFilesSize)," ")}}function Jn(n,t){n&1&&(M(0),p(1,37),m())}function Qn(n,t){n&1&&D(0)}function Yn(n,t){if(n&1&&(o(0,"tr")(1,"td"),d(2),i(),o(3,"td"),d(4),i(),o(5,"td"),S(6,zn,2,4)(7,Vn,2,0,"ng-container"),i(),o(8,"td"),S(9,Kn,2,4)(10,Un,2,0,"ng-container"),i(),o(11,"td"),S(12,Wn,2,3)(13,jn,2,0,"ng-container"),i(),o(14,"td"),S(15,qn,2,3)(16,Jn,2,0,"ng-container"),i(),o(17,"td")(18,"span"),p(19,33),i()(),o(20,"td"),P(21,Qn,1,0,"ng-container",66),i()()),n&2){let e=t.$implicit,a=F(3),r=W(51);l(2),O(" ",(e.Backup==null?null:e.Backup.Name)??a.MISSING_BACKUP_NAME," "),l(2),O(" ",a.getBackendType(e.Backup==null?null:e.Backup.TargetURL)," "),l(2),E(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.LastBackupDate?6:7),l(3),E(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.LastBackupDuration?9:10),l(3),E(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.SourceFilesSize?12:13),l(3),E(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.TargetFilesSize?15:16);let c=a.getBackupVersionCount(e);l(4),y(c)(c),L(19),l(2),T("ngTemplateOutlet",r)("ngTemplateOutletContext",$(10,Fn,e))}}function Zn(n,t){if(n&1){let e=x();o(0,"spk-table",67),Ue("sortByColumnChange",function(r){N(e);let c=F(2);return Ke(c.sortByColumn,r)||(c.sortByColumn=r),k(r)}),o(1,"tr",68)(2,"th",69),s(3,25),P(4,Gn,2,0,"ng-container",70),u(),i(),o(5,"th",71),s(6,26),P(7,bn,2,0,"ng-container",70),u(),i(),o(8,"th",72),s(9,27),P(10,vn,2,0,"ng-container",70),u(),i(),o(11,"th",73),s(12,28),P(13,hn,2,0,"ng-container",70),u(),i(),o(14,"th",74),s(15,29),P(16,Xn,2,0,"ng-container",70),u(),i(),o(17,"th",75),s(18,30),P(19,wn,2,0,"ng-container",70),u(),i(),o(20,"th"),p(21,31),i(),o(22,"th"),p(23,32),i()(),K(24,Yn,22,12,"tr",null,V),i()}if(n&2){let e=F(2),a=W(53);T("data",e.backups())("loading",e.backupsLoading()),Ve("sortByColumn",e.sortByColumn),l(4),T("ngTemplateOutlet",a),l(3),T("ngTemplateOutlet",a),l(3),T("ngTemplateOutlet",a),l(3),T("ngTemplateOutlet",a),l(3),T("ngTemplateOutlet",a),l(3),T("ngTemplateOutlet",a),l(5),U(e.backups())}}function et(n,t){if(n&1&&S(0,xn,3,1,"div",62)(1,Zn,26,9,"spk-table",63),n&2){let e=F();E(e.viewMode()==="list"?0:e.viewMode()==="details"?1:-1)}}function nt(n,t){n&1&&(o(0,"div",76),g(1,"spk-progress-bar",77),o(2,"div",51)(3,"h3"),p(4,38),i()()())}function tt(n,t){n&1&&p(0,39,1)}function it(n,t){n&1&&(o(0,"spk-icon"),d(1,"check"),i())}function ot(n,t){n&1&&(o(0,"spk-icon"),d(1,"dots-three-vertical"),i())}function at(n,t){if(n&1){let e=x();o(0,"button",78),f("click",function(){let r=N(e).$implicit,c=F();return k(c.startBackup(r.Backup==null?null:r.Backup.ID))}),s(1,39),g(2,"spk-icon"),S(3,tt,1,0),u(),i(),o(4,"button",79)(5,"spk-icon"),d(6,"pencil-simple"),i()(),o(7,"spk-menu",80)(8,"button",52),S(9,it,2,0,"spk-icon")(10,ot,2,0,"spk-icon"),i(),M(11,60),o(12,"h3",81),d(13,"Operations"),i(),o(14,"button",82),s(15,40),g(16,"spk-icon"),u(),i(),o(17,"button",82),s(18,41),g(19,"spk-icon"),u(),i(),o(20,"button",82),s(21,42),g(22,"spk-icon"),u(),i(),g(23,"spk-divider"),o(24,"h3",81),d(25,"Advanced"),i(),o(26,"button",82),s(27,43),g(28,"spk-icon"),u(),i(),o(29,"button",57),f("click",function(){let r=N(e).$implicit,c=F();return k(c.verifyFiles(r.Backup==null?null:r.Backup.ID))}),s(30,44),g(31,"spk-icon"),u(),i(),o(32,"button",57),f("click",function(){let r=N(e).$implicit,c=F();return k(c.compressBackup(r.Backup==null?null:r.Backup.ID))}),s(33,45),g(34,"spk-icon"),u(),i(),o(35,"button",82),s(36,46),g(37,"spk-icon"),u(),i(),g(38,"spk-divider"),o(39,"h3",81),d(40,"Reporting"),i(),o(41,"button",82),s(42,47),g(43,"spk-icon"),u(),i(),o(44,"button",57),f("click",function(){let r=N(e).$implicit,c=F();return k(c.createErrorReport(r.Backup==null?null:r.Backup.ID))}),s(45,48),g(46,"spk-icon"),u(),i(),m(),i()}if(n&2){let e=t.$implicit,a=F();B("loader",a.startingBackup()===(e.Backup==null?null:e.Backup.ID)),l(3),E(a.viewMode()==="list"?3:-1),l(),T("routerLink",$(16,Cn,e.Backup==null?null:e.Backup.ID)),l(3),T("right",!0),l(),B("loader",a.loadingId()===(e.Backup==null?null:e.Backup.ID))("success",a.successId()===(e.Backup==null?null:e.Backup.ID)),l(),E(a.successId()===(e.Backup==null?null:e.Backup.ID)?9:10),l(5),T("routerLink",$(18,Sn,e.Backup==null?null:e.Backup.ID)),l(3),T("routerLink",$(20,En,e.Backup==null?null:e.Backup.ID)),l(3),T("routerLink",$(22,Mn,e.Backup==null?null:e.Backup.ID)),l(6),T("routerLink",$(24,mn,e.Backup==null?null:e.Backup.ID)),l(9),T("routerLink",$(26,On,e.Backup==null?null:e.Backup.ID)),l(6),T("routerLink",$(28,Nn,e.Backup==null?null:e.Backup.ID))}}function _t(n,t){n&1&&(o(0,"spk-icon",83),d(1,"funnel-simple"),i(),o(2,"spk-icon",84),d(3,"sort-ascending"),i(),o(4,"spk-icon",85),d(5,"sort-descending"),i())}var pn={file:{Display:$localize`Local`,Icon:null}},ee=class n{#n=z(an);#t=z(ln);#e=z(_n);MISSING_BACKUP_NAME=$localize`Backup name missing`;sortOrderOptions=this.#e.orderByOptions;orderBy=this.#e.orderBy;backups=this.#e.backups;backupsLoading=this.#e.backupsLoading;startingBackup=this.#e.startingBackup;deletingBackup=this.#e.deletingBackup;timeType=this.#e.timeType;viewMode=un("list","viewMode");sortByColumn=H(this.#e.orderBy());loadingId=H(null);successId=H(null);sortEffect=We(()=>this.#e.setOrderBy(this.sortByColumn()));ngOnInit(){this.#e.getBackups(!0)}setOrderBy(t){this.#e.setOrderBy(t)}setTimeType(t){this.#e.setTimeType(t)}startBackup(t){this.#t.resumeDialogCheck(()=>this.#e.startBackup(t))}getBackendIcon(t){if(!t)return"";let e=t.split("://")[0],a=Z(e);return pn[a.key]?.Icon??"database"}getBackendType(t){if(!t)return"";let e=t.split("://")[0],a=Z(e);if(!a)return"";let r=pn[a.key];if(r?.Display)return r.Display;if(a.key==="s3"){let c="http://null?"+t.split("?")[1],C=new URL(c).searchParams.get("s3-server-name")?.toLowerCase()??"";for(let[A,v]of Object.entries(rn))if(C.endsWith(A))return v}return a.displayName}getBackupVersionCount(t){return parseInt(t?.Backup?.Metadata?.BackupListCount??"",10)||0}verifyFiles(t){this.loadingId.set(t),this.#n.postApiV1BackupByIdVerify({id:t}).pipe(w(()=>this.loadingId.set(null))).subscribe({next:()=>{this.successId.set(t),setTimeout(()=>this.successId.set(null),2e3)}})}compressBackup(t){this.loadingId.set(t),this.#n.postApiV1BackupByIdCompact({id:t}).pipe(w(()=>this.loadingId.set(null))).subscribe({next:()=>{this.successId.set(t),setTimeout(()=>this.successId.set(null),2e3)}})}createErrorReport(t){this.loadingId.set(t),this.#n.postApiV1BackupByIdCreatereport({id:t}).pipe(w(()=>this.loadingId.set(null))).subscribe({next:()=>{this.successId.set(t),setTimeout(()=>this.successId.set(null),2e3)}})}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=he({type:n,selectors:[["app-home"]],decls:54,vars:11,consts:()=>{let t;t=$localize`Backups`;let e;e=$localize`Backups are stored in the cloud and can be restored at any time.`;let a;a=$localize` Add ${"\uFFFD#12\uFFFD"}:START_TAG_SPK_ICON:plus${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SPK_ICON:`;let r;r=$localize`Restores`;let c;c=$localize`Restores allow you to restore your data from the cloud.`;let R;R=$localize` Start ${"\uFFFD#22\uFFFD"}:START_TAG_SPK_ICON:arrow-right${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SPK_ICON:`;let C;C=$localize`My backups`;let A;A=$localize`${"\uFFFD#31\uFFFD"}:START_TAG_SPK_ICON:rows${"\uFFFD/#31\uFFFD"}:CLOSE_TAG_SPK_ICON: List `;let v;v=$localize`${"\uFFFD#34\uFFFD"}:START_TAG_SPK_ICON:list${"\uFFFD/#34\uFFFD"}:CLOSE_TAG_SPK_ICON: Details `;let ne;ne=$localize` Time: ${"\uFFFD#38\uFFFD"}:START_TAG_STRONG:${"\uFFFD0\uFFFD"}:INTERPOLATION:${"\uFFFD/#38\uFFFD"}:CLOSE_TAG_STRONG:${"\uFFFD#39\uFFFD"}:START_TAG_SPK_ICON:clock${"\uFFFD/#39\uFFFD"}:CLOSE_TAG_SPK_ICON:`;let te;te=$localize`Relative time`;let ie;ie=$localize`Actual time`;let oe;oe=$localize` Order by: ${"\uFFFD#3\uFFFD"}:START_TAG_STRONG:${"\uFFFD0\uFFFD"}:INTERPOLATION:${"\uFFFD/#3\uFFFD"}:CLOSE_TAG_STRONG:${"\uFFFD#4\uFFFD"}:START_TAG_SPK_ICON:arrows-down-up${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SPK_ICON:`;let ae;ae=$localize` ${"\uFFFD0\uFFFD"}:INTERPOLATION: `;let _e;_e=$localize`Last successful backup:`;let le;le=$localize`Duration:`;let re;re=$localize`Source:`;let ce;ce=$localize`Destination:`;let h;h=$localize`{VAR_PLURAL, plural, =0 {No version yet} =1 {1 Version} other {{INTERPOLATION} Versions}}`,h=q(h,{INTERPOLATION:"\uFFFD1\uFFFD",VAR_PLURAL:"\uFFFD0\uFFFD"});let se;se=$localize` ${h}:ICU@@6502601490918455200: `;let ue;ue=$localize`N/A`;let pe;pe=$localize`N/A`;let Fe;Fe=$localize`N/A`;let ge;ge=$localize`No backups founds`;let de;de=$localize` Backup ${"\uFFFD*4:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*4:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Te;Te=$localize` Type ${"\uFFFD*7:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*7:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Ce;Ce=$localize` Last successful backup ${"\uFFFD*10:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*10:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Se;Se=$localize` Duration ${"\uFFFD*13:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*13:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Ee;Ee=$localize` Source ${"\uFFFD*16:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*16:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Me;Me=$localize` Destination ${"\uFFFD*19:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*19:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let me;me=$localize`Version`;let Oe;Oe=$localize`Actions`;let X;X=$localize`{VAR_PLURAL, plural, =0 {No version yet} =1 {1 Version} other {{INTERPOLATION} Versions}}`,X=q(X,{INTERPOLATION:"\uFFFD1\uFFFD",VAR_PLURAL:"\uFFFD0\uFFFD"});let Ne;Ne=$localize` ${X}:ICU@@6502601490918455200: `;let ke;ke=$localize`N/A`;let Pe;Pe=$localize`N/A`;let fe;fe=$localize`N/A`;let $e;$e=$localize`N/A`;let De;De=$localize`Loading backups...`;let Ie;Ie=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SPK_ICON:play-circle${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SPK_ICON:${"\uFFFD*3:1\uFFFD"}:START_BLOCK_IF: Start ${"\uFFFD/*3:1\uFFFD"}:CLOSE_BLOCK_IF:`;let Ae;Ae=$localize`${"\uFFFD#16\uFFFD"}:START_TAG_SPK_ICON:clock-counter-clockwise${"\uFFFD/#16\uFFFD"}:CLOSE_TAG_SPK_ICON: Restore `;let Re;Re=$localize`${"\uFFFD#19\uFFFD"}:START_TAG_SPK_ICON:export${"\uFFFD/#19\uFFFD"}:CLOSE_TAG_SPK_ICON: Export `;let He;He=$localize`${"\uFFFD#22\uFFFD"}:START_TAG_SPK_ICON:x-circle${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SPK_ICON: Delete `;let ye;ye=$localize`${"\uFFFD#28\uFFFD"}:START_TAG_SPK_ICON:database${"\uFFFD/#28\uFFFD"}:CLOSE_TAG_SPK_ICON: Database `;let Le;Le=$localize`${"\uFFFD#31\uFFFD"}:START_TAG_SPK_ICON:check-square-offset${"\uFFFD/#31\uFFFD"}:CLOSE_TAG_SPK_ICON: Verify files `;let Be;Be=$localize`${"\uFFFD#34\uFFFD"}:START_TAG_SPK_ICON:file-archive${"\uFFFD/#34\uFFFD"}:CLOSE_TAG_SPK_ICON: Compress now `;let xe;xe=$localize`${"\uFFFD#37\uFFFD"}:START_TAG_SPK_ICON:terminal-window${"\uFFFD/#37\uFFFD"}:CLOSE_TAG_SPK_ICON: Commandline `;let Ge;Ge=$localize`${"\uFFFD#43\uFFFD"}:START_TAG_SPK_ICON:notepad${"\uFFFD/#43\uFFFD"}:CLOSE_TAG_SPK_ICON: Log `;let be;return be=$localize`${"\uFFFD#46\uFFFD"}:START_TAG_SPK_ICON:file-plus${"\uFFFD/#46\uFFFD"}:CLOSE_TAG_SPK_ICON: Create error report `,[["actions",""],["sortIcons",""],t,e,a,r,c,R,C,A,v,ne,te,ie,oe,ae,_e,le,re,ce,se,ue,pe,Fe,ge,de,Te,Ce,Se,Ee,Me,me,Oe,Ne,ke,Pe,fe,$e,De,Ie,Ae,Re,He,ye,Le,Be,xe,Ge,be,[1,"type-a",3,"routerLink"],["src","assets/images/backup.png","alt","","width","48px"],[1,"text"],["type","button","spk-button",""],["src","assets/images/restore.png","alt","","width","48px"],[1,"content"],[1,"actions"],[1,"small"],["type","button",3,"click"],[1,"table-overview"],["type","button","spk-button","",1,"small"],["menu",""],["type","button",3,"active"],[1,"backups"],[1,"type-b",3,"data","loading","sortByColumn"],[1,"backup"],[1,"simple","success"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"type-b",3,"sortByColumnChange","data","loading","sortByColumn"],["table-header",""],["spkSort","name"],[4,"ngTemplateOutlet"],["spkSort","type"],["spkSort","lastrun"],["spkSort","duration"],["spkSort","sourcesize"],["spkSort","destinationsize"],[1,"loading-list"],[1,"indeterminate","primary"],["spk-button","",3,"click"],["type","button","spk-button","",3,"routerLink"],[3,"right"],["title",""],["type","button",3,"routerLink"],[1,"filter"],[1,"asc"],[1,"desc"]]},template:function(e,a){if(e&1){let r=x();g(0,"app-status-bar"),o(1,"section")(2,"header")(3,"spk-card",49),g(4,"img",50),o(5,"div",51)(6,"h3"),p(7,2),i(),o(8,"p"),p(9,3),i()(),o(10,"button",52),s(11,4),g(12,"spk-icon"),u(),i()(),o(13,"spk-card",49),g(14,"img",53),o(15,"div",51)(16,"h3"),p(17,5),i(),o(18,"p"),p(19,6),i()(),o(20,"button",52),s(21,7),g(22,"spk-icon"),u(),i()()(),o(23,"div",54)(24,"h2"),M(25),p(26,8),m(),o(27,"div",55)(28,"spk-button-group",56)(29,"button",57),f("click",function(){return N(r),k(a.viewMode.set("list"))}),s(30,9),g(31,"spk-icon"),u(),i(),o(32,"button",57),f("click",function(){return N(r),k(a.viewMode.set("details"))}),s(33,10),g(34,"spk-icon"),u(),i()(),o(35,"spk-menu",58)(36,"button",59),s(37,11),g(38,"strong")(39,"spk-icon"),u(),i(),M(40,60),o(41,"button",57),f("click",function(){return N(r),k(a.setTimeType("relative"))}),p(42,12),i(),o(43,"button",57),f("click",function(){return N(r),k(a.setTimeType("actual"))}),p(44,13),i(),m(),i(),S(45,Pn,8,1,"spk-menu",58),i()(),P(46,et,2,1)(47,nt,5,0),Xe(48,46,gn,null,47),i()(),P(50,at,47,30,"ng-template",null,0,Q)(52,_t,6,0,"ng-template",null,1,Q)}e&2&&(l(3),T("routerLink",J(9,dn)),l(10),T("routerLink",J(10,Tn)),l(16),B("active",a.viewMode()==="list"),l(3),B("active",a.viewMode()==="details"),l(7),y(a.timeType()),L(37),l(6),E(a.viewMode()==="list"?45:-1),l(3),we(!a.backupsLoading()))},dependencies:[je,cn,Qe,Je,Y,Ze,en,nn,qe],styles:["[_nghost-%COMP%]{display:block}h2[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2rem;padding:2rem 0}header[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;padding:0 2rem;gap:1rem}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;gap:1rem}.content[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{padding:0 2rem}.backups[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:0 2rem;gap:.5rem}.backup[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:2rem;gap:1rem;border:1px solid var(--base-4);border-radius:var(--shape-3);box-shadow:var(--box-shadow-10)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem;width:100%;max-width:40%}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] spk-icon[_ngcontent-%COMP%]{color:var(--base-8)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font:var(--paragraph-30);color:var(--base-8)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] p[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--base-12)}.actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.sortable[_ngcontent-%COMP%]{-webkit-user-select:none;user-select:none}.sortable[_ngcontent-%COMP%] spk-icon[_ngcontent-%COMP%]{margin-left:.5rem;font-size:1rem;justify-self:flex-end;display:none}.sortable[_ngcontent-%COMP%]:not(.sort-asc):not(.sort-desc) spk-icon.filter[_ngcontent-%COMP%]{display:block}.sortable.sort-asc[_ngcontent-%COMP%] spk-icon.asc[_ngcontent-%COMP%]{display:block;color:var(--base-12)}.sortable.sort-desc[_ngcontent-%COMP%] spk-icon.desc[_ngcontent-%COMP%]{display:block;color:var(--base-12)}"],changeDetection:0})};export{ee as default};
package/chunk-WZDQFHUJ.js DELETED
@@ -1,2 +0,0 @@
1
- import{wa as T}from"./chunk-GP2W7XZF.js";var d=":",x="|",z="@@",v="\u241F",E;function N(e){E??=new TextEncoder;let t=E.encode(e),n=new DataView(t.buffer,t.byteOffset,t.byteLength),s=$(n,t.length,0),l=$(n,t.length,102072);return s==0&&(l==0||l==1)&&(s=s^319790063,l=l^-1801410264),BigInt.asUintN(32,BigInt(s))<<BigInt(32)|BigInt.asUintN(32,BigInt(l))}function C(e,t=""){let n=N(e);return t&&(n=BigInt.asUintN(64,n<<BigInt(1))|n>>BigInt(63)&BigInt(1),n+=N(t)),BigInt.asUintN(63,n).toString()}function $(e,t,n){let s=2654435769,l=2654435769,a=0,o=t-12;for(;a<=o;a+=12){s+=e.getUint32(a,!0),l+=e.getUint32(a+4,!0),n+=e.getUint32(a+8,!0);let i=R(s,l,n);s=i[0],l=i[1],n=i[2]}let r=t-a;return n+=t,r>=4?(s+=e.getUint32(a,!0),a+=4,r>=8?(l+=e.getUint32(a,!0),a+=4,r>=9&&(n+=e.getUint8(a++)<<8),r>=10&&(n+=e.getUint8(a++)<<16),r===11&&(n+=e.getUint8(a++)<<24)):(r>=5&&(l+=e.getUint8(a++)),r>=6&&(l+=e.getUint8(a++)<<8),r===7&&(l+=e.getUint8(a++)<<16))):(r>=1&&(s+=e.getUint8(a++)),r>=2&&(s+=e.getUint8(a++)<<8),r===3&&(s+=e.getUint8(a++)<<16)),R(s,l,n)[2]}function R(e,t,n){return e-=t,e-=n,e^=n>>>13,t-=n,t-=e,t^=e<<8,n-=e,n-=t,n^=t>>>13,e-=t,e-=n,e^=n>>>12,t-=n,t-=e,t^=e<<16,n-=e,n-=t,n^=t>>>5,e-=t,e-=n,e^=n>>>3,t-=n,t-=e,t^=e<<10,n-=e,n-=t,n^=t>>>15,[e,t,n]}function B(e,t,n,s,l=[]){let a={},o={},r={},i=y(e[0],e.raw[0]),u=[i.text],I=[],h=i.text;for(let c=1;c<e.length;c++){let{messagePart:S,placeholderName:f=P(c),associatedMessageId:A}=j(e[c],e.raw[c]);h+=`{$${f}}${S}`,t!==void 0&&(a[f]=t[c-1],o[f]=l[c-1]),I.push(f),A!==void 0&&(r[f]=A),u.push(S)}let L=i.customId||C(h,i.meaning||""),M=i.legacyIds?i.legacyIds.filter(c=>c!==L):[];return{id:L,legacyIds:M,substitutions:a,substitutionLocations:o,text:h,customId:i.customId,meaning:i.meaning||"",description:i.description||"",messageParts:u,messagePartLocations:s,placeholderNames:I,associatedMessageIds:r,location:n}}function y(e,t){let{text:n,block:s}=O(e,t);if(s===void 0)return{text:n};{let[l,...a]=s.split(v),[o,r]=l.split(z,2),[i,u]=o.split(x,2);return u===void 0&&(u=i,i=void 0),u===""&&(u=void 0),{text:n,meaning:i,description:u,customId:r,legacyIds:a}}}function j(e,t){let{text:n,block:s}=O(e,t);if(s===void 0)return{messagePart:n};{let[l,a]=s.split(z);return{messagePart:n,placeholderName:l,associatedMessageId:a}}}function O(e,t){if(t.charAt(0)!==d)return{text:e};{let n=_(e,t);return{block:e.substring(1,n),text:e.substring(n+1)}}}function P(e){return e===1?"PH":`PH_${e-1}`}function _(e,t){for(let n=1,s=1;n<e.length;n++,s++)if(t[s]==="\\")s++;else if(e[n]===d)return n;throw new Error(`Unterminated $localize metadata block in "${t}".`)}var m=class extends Error{parsedMessage;type="MissingTranslationError";constructor(t){super(`No translation found for ${U(t)}.`),this.parsedMessage=t}};function D(e,t,n){let s=B(t,n),l=e[s.id];if(s.legacyIds!==void 0)for(let a=0;a<s.legacyIds.length&&l===void 0;a++)l=e[s.legacyIds[a]];if(l===void 0)throw new m(s);return[l.messageParts,l.placeholderNames.map(a=>{if(s.substitutions.hasOwnProperty(a))return s.substitutions[a];throw new Error(`There is a placeholder name mismatch with the translation provided for the message ${U(s)}.
2
- The translation contains a placeholder with name ${a}, which does not exist in the message.`)})]}function k(e){let t=e.split(/{\$([^}]*)}/),n=[t[0]],s=[];for(let a=1;a<t.length-1;a+=2)s.push(t[a]),n.push(`${t[a+1]}`);let l=n.map(a=>a.charAt(0)===d?"\\"+a:a);return{text:e,messageParts:G(n,l),placeholderNames:s}}function G(e,t){return Object.defineProperty(e,"raw",{value:t}),e}function U(e){let t=e.meaning&&` - "${e.meaning}"`,n=e.legacyIds&&e.legacyIds.length>0?` [${e.legacyIds.map(s=>`"${s}"`).join(", ")}]`:"";return`"${e.id}"${n} ("${e.text}"${t})`}function b(e){$localize.translate||($localize.translate=K),$localize.TRANSLATIONS||($localize.TRANSLATIONS={}),Object.keys(e).forEach(t=>{$localize.TRANSLATIONS[t]=k(e[t])})}function K(e,t){try{return D($localize.TRANSLATIONS,e,t)}catch(n){return console.warn(n.message),[e,t]}}var g="en-US",Y=[{value:"en",label:"English (en-US)"},{value:"en-GB",label:"English (en-GB)"},{value:"cs",label:"Czech (cs)"},{value:"da",label:"Danish (da)"},{value:"de",label:"German (de)"},{value:"es",label:"Spanish (es)"},{value:"fi",label:"Finnish (fi)"},{value:"fr",label:"French (fr)"},{value:"hu",label:"Hungarian (hu)"},{value:"it",label:"Italian (it)"},{value:"ja-JP",label:"Japanese (ja-JP)"},{value:"nl-NL",label:"Dutch (nl-NL)"},{value:"pl",label:"Polish (pl)"},{value:"pt-BR",label:"Portuguese (pt-BR)"},{value:"pt",label:"Portuguese (pt)"},{value:"ru",label:"Russian (ru)"},{value:"sr-RS",label:"Serbian (sr-RS)"},{value:"sv-SE",label:"Swedish (sv-SE)"},{value:"zh-CN",label:"Chinese (zh-CN)"},{value:"zh-Hans",label:"Chinese (Simplified, zh-Hans)"},{value:"zh-TW",label:"Chinese (zh-TW)"}],p={en:"en","en-US":"en","en-GB":"en-GB","en-AU":"en","en-CA":"en",cs:"cs","cs-CZ":"cs",da:"da","da-DK":"da",de:"de","de-DE":"de","de-AT":"de",es:"es","es-ES":"es","es-MX":"es",fi:"fi","fi-FI":"fi",fr:"fr","fr-FR":"fr","fr-CA":"fr",hu:"hu","hu-HU":"hu",it:"it","it-IT":"it",ja:"ja-JP","ja-JP":"ja-JP",nl:"nl-NL","nl-NL":"nl-NL","nl-BE":"nl-NL",pl:"pl","pl-PL":"pl",pt:"pt","pt-BR":"pt-BR","pt-PT":"pt",ru:"ru","ru-RU":"ru",sr:"sr-RS","sr-RS":"sr-RS",sv:"sv-SE","sv-SE":"sv-SE","sv-FI":"sv-SE",zh:"zh-CN","zh-CN":"zh-CN","zh-SG":"zh-CN","zh-TW":"zh-TW","zh-HK":"zh-TW"},F={"ja-JP":"ja","nl-NL":"nl","sr-RS":"sr","sv-SE":"sv","zh-CN":"zh-Hans","zh-TW":"zh-Hant"},H=Array.from(new Set(Object.values(p)));function Z(e){return e?p[e]??"en":"en"}function q(){let e=localStorage.getItem("v1:duplicati:locale")||g,t=H.find(o=>o===e)??g,n=p[t]??p[t.split("-")[0]]??g;if(t===g)return t;import(`locale/angular/${F[n]??n}.mjs`).then(o=>T(o.default));var l=n.replace(/-/g,"_");let a=t==="en"?"":"."+l;return fetch(`locale/messages${a}.json`).then(o=>o.json()).then(o=>{b(o.translations),$localize.locale=t}),t}export{Y as a,Z as b,q as c};
package/chunk-Y4IRFRVB.js DELETED
@@ -1 +0,0 @@
1
- import{a as le}from"./chunk-Y7OD7PZG.js";import{a as se,b as ae}from"./chunk-5MMV45NA.js";import{h as ie}from"./chunk-DE64A2ZS.js";import"./chunk-HWUEL5ZO.js";import"./chunk-ZIJ7ZEHR.js";import"./chunk-5RPDEEQ3.js";import"./chunk-67XQIEG5.js";import"./chunk-FC45TEB6.js";import"./chunk-RHW5QVAY.js";import"./chunk-BHSG643V.js";import{c as Z,e as J,i as ee,k as ne,s as te,t as oe}from"./chunk-ZCT7SRIM.js";import{b as V,d as q}from"./chunk-DQM3ATT4.js";import"./chunk-BSRYIN2F.js";import{a as Y,g as H,l as Q,t as j}from"./chunk-DNBOZ26J.js";import"./chunk-XD6MBGQY.js";import"./chunk-GP2W7XZF.js";import"./chunk-WIDMAJIO.js";import{Bb as M,Fc as k,Hb as S,Ib as O,Jb as r,Mc as W,Nb as I,Oa as p,Ob as c,Wb as x,X as C,Xb as G,_a as K,_b as U,ba as P,ca as f,gc as u,hc as d,ic as m,la as v,pb as N,qb as F,qc as X,ub as T,vb as t,wb as i,xb as g}from"./chunk-67YRCRMI.js";import"./chunk-EUDKD2JW.js";var _e=["formRef"],re=()=>["--skip-files-larger-than","dblock-size","encryption-module","no-encryption","compression-module","--no-encryption","--exclude-files-attributes","keep-time","keep-versions","retention-policy"];function pe(s,l){s&1&&(S(0,1,1),g(1,"spk-icon",20),O())}function ce(s,l){s&1&&(t(0,"p",20),r(1,6),i())}function ue(s,l){s&1&&(t(0,"p"),r(1,7),i())}function de(s,l){if(s&1){let n=M();t(0,"p"),r(1,8),i(),t(2,"app-timespan",18),m("ngModelChange",function(a){P(n);let o=c();return d(o.optionsFields.backupRetentionTime,a)||(o.optionsFields.backupRetentionTime=a),f(a)}),t(3,"label",29),r(4,9),i()()}if(s&2){let n=c();p(2),T("customId","backupRetentionTime"),u("ngModel",n.optionsFields.backupRetentionTime)}}function me(s,l){if(s&1){let n=M();t(0,"p"),r(1,10),i(),t(2,"spk-form-field")(3,"label",30),r(4,11),i(),t(5,"input",31),m("ngModelChange",function(a){P(n);let o=c();return d(o.optionsFields.backupRetentionVersions,a)||(o.optionsFields.backupRetentionVersions=a),f(a)}),i()()}if(s&2){let n=c();p(5),u("ngModel",n.optionsFields.backupRetentionVersions)}}function Se(s,l){s&1&&(t(0,"p"),r(1,12),i())}function Oe(s,l){if(s&1){let n=M();t(0,"p"),r(1,13),i(),t(2,"spk-form-field")(3,"p"),r(4,14),i(),t(5,"label",32),r(6,15),i(),t(7,"input",33),m("ngModelChange",function(a){P(n);let o=c();return d(o.optionsFields.backupRetentionCustom,a)||(o.optionsFields.backupRetentionCustom=a),f(a)}),i()()}if(s&2){let n=c();p(7),u("ngModel",n.optionsFields.backupRetentionCustom)}}var Te=["Bytes","KB","MB","GB","TB","PB"],ge=[{value:"all",name:$localize`Keep all backups`},{value:"time",name:$localize`Delete backups that are older than`},{value:"versions",name:$localize`Keep a specific number of backups`},{value:"smart",name:$localize`Smart backup retention`},{value:"custom",name:$localize`Custom backup retention`}],Ce=1024*1024*1024*2,Pe=1024*1024*5,h=class s{#e=C(ie);#n=C(q);#t=C(V);formRef=W.required("formRef");selectedOptions=this.#e.selectedOptions;nonSelectedOptions=this.#e.nonSelectedOptions;isSubmitting=this.#e.isSubmitting;settings=this.#e.settings;optionsFields=this.#e.optionsFields;applicationOptions=this.#e.applicationOptions;retentionOptions=v(ge);sizeSplit=k(()=>{let n=this.optionsFields.remoteVolumeSize().match(/^(\d+)(bytes|kb|mb|gb|tb|pb|b)$/i);return{value:n?parseInt(n[1],10):0,unit:n?n[2].toUpperCase():"MB"}});exceededVolumeSize=k(()=>{let l=this.sizeSplit().value,n=this.sizeSplit().unit;if(l==null||n===null||n===void 0)return!1;let e=l*Math.pow(1024,Te.indexOf(n));return e>Ce||e<Pe});goBack(){this.#n.navigate(["schedule"],{relativeTo:this.#t.parent})}submit(){this.#e.submit()}static \u0275fac=function(n){return new(n||s)};static \u0275cmp=K({type:s,selectors:[["app-advanced-options-settings"]],viewQuery:function(n,e){n&1&&x(e.formRef,_e,5),n&2&&G()},decls:30,vars:15,consts:()=>{let l;l=$localize`Options`;let n;n=$localize` Remote volume size ${"\uFFFD*7:1\uFFFD"}:START_BLOCK_IF:${"\uFFFD#1:1\uFFFD"}:START_TAG_SPK_ICON:warning${"\uFFFD/#1:1\uFFFD"}:CLOSE_TAG_SPK_ICON:${"\uFFFD/*7:1\uFFFD"}:CLOSE_BLOCK_IF:`;let e;e=$localize` The backups will be split up into multiple files called volumes. Here you can set the maximum size of the individual volume files. ${"\uFFFD#11\uFFFD"}:START_LINK: Read more ${"\uFFFD#12\uFFFD"}:START_TAG_SPK_ICON:arrow-square-out${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SPK_ICON:${"\uFFFD/#11\uFFFD"}:CLOSE_LINK:`;let a;a=$localize`Backup retention`;let o;o=$localize`${"\uFFFD#26\uFFFD"}:START_TAG_SPK_ICON:arrow-left${"\uFFFD/#26\uFFFD"}:CLOSE_TAG_SPK_ICON: Go back `;let E;E=$localize`${"\uFFFD#29\uFFFD"}:START_TAG_SPK_ICON:arrow-right${"\uFFFD/#29\uFFFD"}:CLOSE_TAG_SPK_ICON: Submit `;let b;b=$localize` The chosen size is outside the recommended range. This may cause performance issues, excessively large temporary files or other problems. `;let A;A=$localize`Nothing will be deleted. The backup size will grow with each change.`;let R;R=$localize`If at least one newer backup is found, all backups older than this date are deleted.`;let y;y=$localize`Time to keep versions`;let $;$=$localize`Once there are more backups than the specified number, the oldest backups are deleted.`;let w;w=$localize`Number of versions`;let D;D=$localize` Over time backups will be deleted automatically. There will remain one backup for each of the last 7 days, each of the last 4 weeks, each of the last 12 months. There will always be at least one remaining backup. `;let B;B=$localize` Enter a retention strategy manually. Placeholders are D/W/Y for days/weeks/years and U for unlimited. The syntax is: 7D:1D,4W:1W,36M:1M. This example keeps one backup for each of the next 7 days, one for each of the next 4 weeks, and one for each of the next 36 months. This can also be written as 1W:1D,1M:1W,3Y:1M. `;let L;L=$localize`Once there are more backups than the specified number, the oldest backups are deleted.`;let z;return z=$localize`Retention expression`,[l,n,e,a,o,E,b,A,R,y,$,w,D,B,L,z,[1,"title-30"],[1,"remote-volume-wrap"],[3,"ngModelChange","customId","ngModel"],["for","size"],[1,"warning"],["href","https://forum.duplicati.com/t/choosing-sizes-in-duplicati/17683","target","_blank",1,"spk-primary"],["suffix",""],["value","value","label","name",3,"options","inlineSearch","isClearable"],["type","text",3,"ngModelChange","ngModel"],[3,"optionsChange","options","applicationOptions","hiddenOptions"],[1,"form-actions"],["spk-button","","type","button",3,"click"],["spk-button","",1,"raised","primary",3,"click"],["for","backupRetentionTime"],["for","backupRetentionVersions"],["type","number","id","backupRetentionVersions",3,"ngModelChange","ngModel"],["for","backupRetentionCustom"],["type","text","id","backupRetentionCustom",3,"ngModelChange","ngModel"]]},template:function(n,e){n&1&&(t(0,"section")(1,"h3",16),r(2,0),i(),t(3,"div",17)(4,"app-size",18),m("ngModelChange",function(o){return d(e.optionsFields.remoteVolumeSize,o)||(e.optionsFields.remoteVolumeSize=o),o}),t(5,"label",19),S(6,1),N(7,pe,2,0,"spk-icon",20),O(),i()(),N(8,ce,2,0,"p",20),t(9,"p"),S(10,2),t(11,"a",21),g(12,"spk-icon",22),i(),O(),i()(),t(13,"spk-select",23)(14,"label",19),r(15,3),i(),t(16,"input",24),m("ngModelChange",function(o){return d(e.optionsFields.backupRetention,o)||(e.optionsFields.backupRetention=o),o}),i()(),N(17,ue,2,0,"p")(18,de,5,2)(19,me,6,1)(20,Se,2,0,"p")(21,Oe,8,1),t(22,"app-options-list",25),m("optionsChange",function(o){return d(e.settings,o)||(e.settings=o),o}),i(),t(23,"div",26)(24,"button",27),I("click",function(){return e.goBack()}),S(25,4),g(26,"spk-icon"),O(),i(),t(27,"button",28),I("click",function(){return e.submit()}),S(28,5),g(29,"spk-icon"),O(),i()()()),n&2&&(p(4),T("customId","size"),u("ngModel",e.optionsFields.remoteVolumeSize),p(3),F(e.exceededVolumeSize()?7:-1),p(),F(e.exceededVolumeSize()?8:-1),p(5),T("options",e.retentionOptions())("inlineSearch",!0)("isClearable",!1),p(3),u("ngModel",e.optionsFields.backupRetention),p(),F(e.optionsFields.backupRetention()==="all"?17:e.optionsFields.backupRetention()==="time"?18:e.optionsFields.backupRetention()==="versions"?19:e.optionsFields.backupRetention()==="smart"?20:e.optionsFields.backupRetention()==="custom"?21:-1),p(5),u("options",e.settings),T("applicationOptions",e.applicationOptions())("hiddenOptions",X(14,re)),p(5),U("loader",e.isSubmitting()))},dependencies:[te,Z,ne,J,ee,oe,le,H,Y,j,se,ae,Q],styles:["[_nghost-%COMP%]{display:block;width:100%;max-width:32.5rem;padding:2.5rem}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem;padding-bottom:1.5rem}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:space-between}.form-wrap[_ngcontent-%COMP%]{display:grid;grid-template-columns:2fr 2.5rem;gap:.5rem;align-items:flex-end}.remote-volume-wrap[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.25rem}.remote-volume-wrap[_ngcontent-%COMP%] p.warning[_ngcontent-%COMP%]{color:#7d7d00}.row-inputs[_ngcontent-%COMP%]{display:flex;align-items:flex-end;gap:.5rem}.advanced-option[_ngcontent-%COMP%]{display:grid;gap:.5rem;grid-template-columns:1fr 1fr 2.5rem;align-items:flex-end}spk-select[_ngcontent-%COMP%]{--miw: p2r(120)}"],changeDetection:0})};export{h as default};
package/chunk-YW7YXFSC.js DELETED
@@ -1 +0,0 @@
1
- import{a as Ve}from"./chunk-CFESUDFC.js";import{a as We}from"./chunk-ZIJ7ZEHR.js";import{a as ze,b as de}from"./chunk-67XQIEG5.js";import"./chunk-NZD6UMYZ.js";import{a as we}from"./chunk-B6DE3TTE.js";import"./chunk-VFVXE2DC.js";import"./chunk-FC45TEB6.js";import"./chunk-RHW5QVAY.js";import"./chunk-BHSG643V.js";import{a as ce}from"./chunk-3Q5JEF3K.js";import"./chunk-ZCT7SRIM.js";import"./chunk-OQHMS5HM.js";import{b as be,e as Ke}from"./chunk-DQM3ATT4.js";import"./chunk-BSRYIN2F.js";import{a as j,g as Fe,j as he,k as Ue,p as ue,y as Xe}from"./chunk-DNBOZ26J.js";import{h as pe}from"./chunk-XD6MBGQY.js";import"./chunk-4VPA3END.js";import{la as W,oa as se}from"./chunk-GP2W7XZF.js";import"./chunk-WIDMAJIO.js";import{a as ge}from"./chunk-PSPK4OPB.js";import"./chunk-JDCGGJ7O.js";import{Bb as U,Fc as Be,Hb as T,Ib as A,Jb as l,Kb as F,Lb as u,Lc as re,Mb as G,Nb as k,Oa as i,Ob as g,X as B,_a as z,_b as v,ba as f,bc as c,ca as I,cc as X,dc as M,fc as xe,jc as le,kc as Z,la as D,lc as $,pb as E,qb as C,r as w,rb as b,sb as K,tb as h,ub as V,uc as p,vb as o,vc as L,wb as t,wc as S,xb as s,xc as y,yb as N,zb as R}from"./chunk-67YRCRMI.js";import{a as _e}from"./chunk-EUDKD2JW.js";function qe(n,_){n&1&&s(0,"spk-progress-bar",34)}function He(n,_){n&1&&s(0,"div",37)}function Qe(n,_){n&1&&s(0,"div",37)}function Ye(n,_){n&1&&s(0,"div",38)}function Ze(n,_){n&1&&s(0,"div",39)}function en(n,_){n&1&&c(0," , ")}function nn(n,_){if(n&1&&(c(0," ( "),o(1,"span"),l(2,0),t(),E(3,en,1,0),o(4,"span"),l(5,1),t(),c(6," ) ")),n&2){g();let e=$(0),a=$(1);i(2),F(e)(e),u(2),i(),C(e>0&&a>0?3:-1),i(2),F(a)(a),u(5)}}function tn(n,_){if(n&1&&(o(0,"details",48)(1,"summary"),T(2,17),s(3,"spk-icon"),o(4,"div",49),s(5,"spk-icon",42),t(),A(),t(),o(6,"div",50)(7,"p"),l(8,18),p(9,"date"),t(),o(10,"p"),l(11,19),p(12,"date"),t(),o(13,"p"),l(14,20),p(15,"durationFormat"),t(),o(16,"p"),l(17,21),t(),s(18,"spk-divider"),o(19,"p"),l(20,22),t(),o(21,"p"),l(22,23),t()()(),o(23,"details",48)(24,"summary"),T(25,24),s(26,"spk-icon"),o(27,"div",49),s(28,"spk-icon",42),t(),A(),t(),o(29,"div",50)(30,"p"),l(31,25),p(32,"date"),t(),o(33,"p"),l(34,26),p(35,"date"),t(),o(36,"p"),l(37,27),p(38,"durationFormat"),t(),s(39,"spk-divider"),o(40,"p"),l(41,28),p(42,"bytes"),t(),o(43,"p"),l(44,29),p(45,"bytes"),t(),o(46,"p"),l(47,30),p(48,"bytes"),t(),s(49,"spk-divider"),o(50,"p"),l(51,31),t(),o(52,"p"),l(53,32),t()()()),n&2){let e=g(2).$implicit;i(9),F(S(9,17,e.data==null||e.data.TestResults==null?null:e.data.TestResults.BeginTime,"medium")),u(8),i(3),F(S(12,20,e.data==null||e.data.TestResults==null?null:e.data.TestResults.EndTime,"medium")),u(11),i(3),F(L(15,23,e.data==null||e.data.TestResults==null?null:e.data.TestResults.Duration)),u(14),i(2),F(e.data==null||e.data.TestResults==null?null:e.data.TestResults.VerificationsActualLength),u(17),i(3),F(e.data==null||e.data.TestResults==null?null:e.data.TestResults.WarningsActualLength),u(20),i(2),F(e.data==null||e.data.TestResults==null?null:e.data.TestResults.ErrorsActualLength),u(22),i(10),F(S(32,25,e.data==null||e.data.CompactResults==null?null:e.data.CompactResults.BeginTime,"medium")),u(31),i(3),F(S(35,28,e.data==null||e.data.CompactResults==null?null:e.data.CompactResults.EndTime,"medium")),u(34),i(3),F(L(38,31,e.data==null||e.data.CompactResults==null?null:e.data.CompactResults.Duration)),u(37),i(4),F(e.data==null||e.data.CompactResults==null?null:e.data.CompactResults.DeletedFileCount)(y(42,33,e.data==null||e.data.CompactResults==null?null:e.data.CompactResults.DeletedFileSize,!0,!0)),u(41),i(3),F(e.data==null||e.data.CompactResults==null?null:e.data.CompactResults.DownloadedFileCount)(y(45,37,e.data==null||e.data.CompactResults==null?null:e.data.CompactResults.DownloadedFileSize,!0,!0)),u(44),i(3),F(e.data==null||e.data.CompactResults==null?null:e.data.CompactResults.UploadedFileCount)(y(48,41,e.data==null||e.data.CompactResults==null?null:e.data.CompactResults.UploadedFileSize,!0,!0)),u(47),i(3),F(e.data==null||e.data.CompactResults==null?null:e.data.CompactResults.WarningsActualLength),u(51),i(2),F(e.data==null||e.data.CompactResults==null?null:e.data.CompactResults.ErrorsActualLength),u(53)}}function on(n,_){if(n&1&&(o(0,"code"),c(1),p(2,"json"),t()),n&2){let e=_.$implicit;i(),X(L(2,1,e))}}function an(n,_){if(n&1&&(o(0,"details",48)(1,"summary"),T(2,33),s(3,"spk-icon"),o(4,"div",49),s(5,"spk-icon",42),t(),A(),t(),o(6,"div",50),K(7,on,3,3,"code",null,b),t()()),n&2){let e=g(2).$implicit;i(5),F(e.data.VerificationsActualLength),u(2),i(2),h(e.data.Verifications)}}function _n(n,_){if(n&1&&(o(0,"code"),c(1),p(2,"json"),t()),n&2){let e=_.$implicit;i(),X(L(2,1,e))}}function ln(n,_){n&1&&(o(0,"p"),c(1,"No errors"),t())}function rn(n,_){if(n&1&&(o(0,"code"),c(1),p(2,"json"),t()),n&2){let e=_.$implicit;i(),X(L(2,1,e))}}function sn(n,_){if(n&1&&(o(0,"section",43)(1,"app-toggle-card",44),N(2,45),o(3,"h3"),l(4,2),t(),R(),N(5,46),o(6,"p"),l(7,3),p(8,"date"),t(),o(9,"p"),l(10,4),p(11,"date"),t(),o(12,"p"),l(13,5),p(14,"durationFormat"),t(),R(),t(),o(15,"app-toggle-card",44),N(16,45),o(17,"h3"),l(18,6),t(),R(),N(19,46),o(20,"p"),l(21,7),p(22,"bytes"),t(),o(23,"p"),l(24,8),p(25,"bytes"),t(),o(26,"p"),l(27,9),p(28,"bytes"),t(),o(29,"p"),l(30,10),p(31,"bytes"),t(),o(32,"p"),l(33,11),t(),o(34,"p"),l(35,12),t(),o(36,"p"),l(37,13),t(),R(),t(),o(38,"div",47),s(39,"spk-divider"),E(40,tn,54,45),E(41,an,9,1,"details",48),o(42,"details",48)(43,"summary"),T(44,14),s(45,"spk-icon"),o(46,"div",49),s(47,"spk-icon",42),t(),A(),t(),o(48,"div",50),K(49,_n,3,3,"code",null,b),t()(),o(51,"details",48)(52,"summary"),T(53,15),s(54,"spk-icon"),o(55,"div",49),s(56,"spk-icon",42),t(),A(),t(),o(57,"div",50),E(58,ln,2,0,"p"),K(59,rn,3,3,"code",null,b),t()(),s(61,"spk-divider"),o(62,"details")(63,"summary"),T(64,16),s(65,"spk-icon"),o(66,"div",49),s(67,"spk-icon",42),t(),A(),t(),o(68,"code")(69,"button",51),c(70,"Copy"),t(),c(71),p(72,"json"),t()()()()),n&2){let e=g().$implicit;i(),V("disallowToggle",!0),i(7),F(S(8,22,e.data==null?null:e.data.BeginTime,"medium")),u(7),i(3),F(S(11,25,e.data==null?null:e.data.EndTime,"medium")),u(10),i(3),F(L(14,28,e.data==null?null:e.data.Duration)),u(13),i(),V("disallowToggle",!0),i(7),F(e.data==null?null:e.data.ExaminedFiles)(y(22,30,e.data==null?null:e.data.SizeOfExaminedFiles,!0,!0)),u(21),i(3),F(e.data==null?null:e.data.OpenedFiles)(y(25,34,e.data==null?null:e.data.SizeOfOpenedFiles,!0,!0)),u(24),i(3),F(e.data==null?null:e.data.AddedFiles)(y(28,38,e.data==null?null:e.data.SizeOfAddedFiles,!0,!0)),u(27),i(3),F(e.data==null?null:e.data.ModifiedFiles)(y(31,42,e.data==null?null:e.data.SizeOfModifiedFiles,!0,!0)),u(30),i(2),F(e.data==null?null:e.data.DeletedFiles),u(33),i(2),F(e.data==null?null:e.data.TooLargeFiles),u(35),i(2),F(e.data==null?null:e.data.FilesWithError),u(37),i(3),C(e.data!=null&&e.data.TestResults?40:-1),i(),C((e.data==null?null:e.data.MainOperation)==="Test"?41:-1),i(6),F(e.data==null?null:e.data.WarningsActualLength),u(44),i(2),h(e.data==null?null:e.data.Warnings),i(7),F(e.data==null?null:e.data.ErrorsActualLength),u(53),i(2),C((e.data==null||e.data.Errors==null?null:e.data.Errors.length)===0?58:-1),i(),h(e.data==null?null:e.data.Errors),i(12),M(" ",L(72,46,e.data)," ")}}function Fn(n,_){if(n&1){let e=U();le(0)(1),o(2,"article",35)(3,"header",36),k("click",function(){let d=f(e).$implicit,O=g();return I(O.toggleOpenEntry(d.id))}),E(4,He,1,0,"div",37)(5,Qe,1,0,"div",37)(6,Ye,1,0,"div",38)(7,Ze,1,0,"div",39),o(8,"h3"),c(9),p(10,"date"),t(),o(11,"p"),c(12),E(13,nn,7,5),t(),s(14,"div",40),o(15,"div",41)(16,"spk-icon",42),c(17,"caret-down"),t()()(),E(18,sn,73,48,"section",43),t()}if(n&2){let e=_.$implicit,a=g(),d=Z((e.data==null?null:e.data.ErrorsActualLength)||0);i();let O=Z((e.data==null?null:e.data.WarningsActualLength)||0),P=(e.data==null?null:e.data.ParsedResult)||"Unknown";i(3),C(P=="Fatal"?4:P=="Error"?5:P=="Warning"?6:7),i(5),X(S(10,9,e.timestamp,"medium")),i(3),M(" ",e.data==null?null:e.data.MainOperation," "),i(),C(d>0||O>0?13:-1),i(3),v("open",e.id===a.openEntry()),i(2),C(e.id===a.openEntry()?18:-1)}}var Ee=class n{#e=B(pe);backupId=re.required();openEntry=D(null);pagination=D({offset:0,pagesize:100});resource=de({params:()=>_e({id:this.backupId()},this.pagination()),stream:({params:_})=>this.#e.getApiV1BackupByIdLog({id:_.id,pagesize:100}).pipe(w(e=>e.map(a=>({id:a.ID,operationId:a.OperationID,timestamp:a.Timestamp*1e3,type:a.Type,data:JSON.parse(a.Message),exception:JSON.stringify(a.Exception)==="{}"?null:a.Exception}))))});toggleOpenEntry(_){if(this.openEntry()===_){this.openEntry.set(null);return}this.openEntry.set(_)}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=z({type:n,selectors:[["app-general-log"]],inputs:{backupId:[1,"backupId"]},decls:3,vars:1,consts:()=>{let _;_=$localize`{VAR_PLURAL, plural, =0 {} =1 {1 error} other {{INTERPOLATION} errors}}`,_=G(_,{INTERPOLATION:"\uFFFD1\uFFFD",VAR_PLURAL:"\uFFFD0\uFFFD"});let e;e=$localize` ${_}:ICU@@8177766704718505917: `;let a;a=$localize`{VAR_PLURAL, plural, =0 {} =1 {1 warning} other {{INTERPOLATION} warnings}}`,a=G(a,{INTERPOLATION:"\uFFFD1\uFFFD",VAR_PLURAL:"\uFFFD0\uFFFD"});let d;d=$localize` ${a}:ICU@@1375439416876139828: `;let O;O=$localize`Time`;let P;P=$localize`Start: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let x;x=$localize`End: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let J;J=$localize`Duration: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let q;q=$localize`Source files`;let H;H=$localize` Evaluated: ${"\uFFFD0\uFFFD"}:INTERPOLATION: (${"\uFFFD1\uFFFD"}:INTERPOLATION_1:) `;let Q;Q=$localize`Opened: ${"\uFFFD0\uFFFD"}:INTERPOLATION: (${"\uFFFD1\uFFFD"}:INTERPOLATION_1:)`;let Y;Y=$localize`Added: ${"\uFFFD0\uFFFD"}:INTERPOLATION: (${"\uFFFD1\uFFFD"}:INTERPOLATION_1:)`;let m;m=$localize` Modified: ${"\uFFFD0\uFFFD"}:INTERPOLATION: (${"\uFFFD1\uFFFD"}:INTERPOLATION_1:) `;let me;me=$localize`Deleted: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let Le;Le=$localize`Too large: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let Te;Te=$localize`Files with error: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let ee;ee=$localize`${"\uFFFD#45\uFFFD"}:START_TAG_SPK_ICON:warning-circle${"[\uFFFD/#45\uFFFD|\uFFFD/#47\uFFFD]"}:CLOSE_TAG_SPK_ICON: Warnings ${"\uFFFD0\uFFFD"}:INTERPOLATION: ${"\uFFFD#46\uFFFD"}:START_TAG_DIV:${"\uFFFD#47\uFFFD"}:START_TAG_SPK_ICON_1:caret-down${"[\uFFFD/#45\uFFFD|\uFFFD/#47\uFFFD]"}:CLOSE_TAG_SPK_ICON:${"\uFFFD/#46\uFFFD"}:CLOSE_TAG_DIV:`,ee=G(ee);let ne;ne=$localize`${"\uFFFD#54\uFFFD"}:START_TAG_SPK_ICON:warning${"[\uFFFD/#54\uFFFD|\uFFFD/#56\uFFFD]"}:CLOSE_TAG_SPK_ICON: Errors ${"\uFFFD0\uFFFD"}:INTERPOLATION: ${"\uFFFD#55\uFFFD"}:START_TAG_DIV:${"\uFFFD#56\uFFFD"}:START_TAG_SPK_ICON_1:caret-down${"[\uFFFD/#54\uFFFD|\uFFFD/#56\uFFFD]"}:CLOSE_TAG_SPK_ICON:${"\uFFFD/#55\uFFFD"}:CLOSE_TAG_DIV:`,ne=G(ne);let te;te=$localize`${"\uFFFD#65\uFFFD"}:START_TAG_SPK_ICON:notepad${"[\uFFFD/#65\uFFFD|\uFFFD/#67\uFFFD]"}:CLOSE_TAG_SPK_ICON: Complete log ${"\uFFFD#66\uFFFD"}:START_TAG_DIV:${"\uFFFD#67\uFFFD"}:START_TAG_SPK_ICON_1:caret-down${"[\uFFFD/#65\uFFFD|\uFFFD/#67\uFFFD]"}:CLOSE_TAG_SPK_ICON:${"\uFFFD/#66\uFFFD"}:CLOSE_TAG_DIV:`,te=G(te);let ie;ie=$localize`${"\uFFFD#3\uFFFD"}:START_TAG_SPK_ICON:circle-half-tilt${"[\uFFFD/#3\uFFFD|\uFFFD/#5\uFFFD]"}:CLOSE_TAG_SPK_ICON: Test phase ${"\uFFFD#4\uFFFD"}:START_TAG_DIV:${"\uFFFD#5\uFFFD"}:START_TAG_SPK_ICON_1:caret-down${"[\uFFFD/#3\uFFFD|\uFFFD/#5\uFFFD]"}:CLOSE_TAG_SPK_ICON:${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_DIV:`,ie=G(ie);let Ae;Ae=$localize`Start: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let Se;Se=$localize`End: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let Pe;Pe=$localize`Duration: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let Ge;Ge=$localize`Verifications: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let Ne;Ne=$localize`Warnings: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let Re;Re=$localize`Errors: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let oe;oe=$localize`${"\uFFFD#26\uFFFD"}:START_TAG_SPK_ICON:file-archive${"[\uFFFD/#26\uFFFD|\uFFFD/#28\uFFFD]"}:CLOSE_TAG_SPK_ICON: Compact phase ${"\uFFFD#27\uFFFD"}:START_TAG_DIV:${"\uFFFD#28\uFFFD"}:START_TAG_SPK_ICON_1:caret-down${"[\uFFFD/#26\uFFFD|\uFFFD/#28\uFFFD]"}:CLOSE_TAG_SPK_ICON:${"\uFFFD/#27\uFFFD"}:CLOSE_TAG_DIV:`,oe=G(oe);let De;De=$localize`Start: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let Me;Me=$localize`End: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let $e;$e=$localize`Duration: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let fe;fe=$localize` Deleted files: ${"\uFFFD0\uFFFD"}:INTERPOLATION: (${"\uFFFD1\uFFFD"}:INTERPOLATION_1:) `;let Ie;Ie=$localize` Downloaded files: ${"\uFFFD0\uFFFD"}:INTERPOLATION: (${"\uFFFD1\uFFFD"}:INTERPOLATION_1:) `;let ke;ke=$localize` Uploaded files: ${"\uFFFD0\uFFFD"}:INTERPOLATION: (${"\uFFFD1\uFFFD"}:INTERPOLATION_1:) `;let ve;ve=$localize`Warnings: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let ye;ye=$localize`Errors: ${"\uFFFD0\uFFFD"}:INTERPOLATION:`;let ae;return ae=$localize`${"\uFFFD#3\uFFFD"}:START_TAG_SPK_ICON:warning-circle${"[\uFFFD/#3\uFFFD|\uFFFD/#5\uFFFD]"}:CLOSE_TAG_SPK_ICON: Verifications ${"\uFFFD0\uFFFD"}:INTERPOLATION: ${"\uFFFD#4\uFFFD"}:START_TAG_DIV:${"\uFFFD#5\uFFFD"}:START_TAG_SPK_ICON_1:caret-down${"[\uFFFD/#3\uFFFD|\uFFFD/#5\uFFFD]"}:CLOSE_TAG_SPK_ICON:${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_DIV:`,ae=G(ae),[e,d,O,P,x,J,q,H,Q,Y,m,me,Le,Te,ee,ne,te,ie,Ae,Se,Pe,Ge,Ne,Re,oe,De,Me,$e,fe,Ie,ke,ve,ye,ae,[1,"indeterminate","primary"],[1,"log-entry"],[3,"click"],[1,"status","error"],[1,"status","warn"],[1,"status"],[1,"spacer"],[1,"action"],[1,"toggle-indicator"],[1,"log-content"],[3,"disallowToggle"],["title",""],["content",""],[1,"extra-info"],["name","details"],[1,"actions"],[1,"content"],["spk-button","",1,"small"]]},template:function(e,a){e&1&&(E(0,qe,1,0,"spk-progress-bar",34),K(1,Fn,19,12,"article",35,b)),e&2&&(C(a.resource.isLoading()?0:-1),i(),h(a.resource.value()))},dependencies:[We,Ue,ue,Fe,j,ce,W,ge,se],styles:["[_nghost-%COMP%]{display:block}.log-entry[_ngcontent-%COMP%]{display:flex;flex-direction:column;cursor:pointer}.log-entry[_ngcontent-%COMP%] header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem;padding:1rem;border-bottom:1px solid var(--base-4);background-color:var(--base-1);cursor:pointer}.log-entry[_ngcontent-%COMP%] header[_ngcontent-%COMP%]:hover{background-color:var(--base-2)}.log-entry[_ngcontent-%COMP%] header[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font:var(--paragraph-30);margin:0}.log-entry[_ngcontent-%COMP%] header[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font:var(--paragraph-30);color:var(--base-8)}.toggle-indicator[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;height:1.25rem;transition:transform 125ms linear}.toggle-indicator.open[_ngcontent-%COMP%]{transform:rotate(180deg)}details[_ngcontent-%COMP%]{display:flex;flex-direction:column}details[_ngcontent-%COMP%] summary[_ngcontent-%COMP%]{cursor:pointer;display:flex;align-items:center;gap:.5rem;padding:.75rem;border-radius:var(--shape-2);background-color:var(--base-2)}details[_ngcontent-%COMP%] summary[_ngcontent-%COMP%]:focus{outline:none}details[_ngcontent-%COMP%] summary[_ngcontent-%COMP%]:hover{background-color:var(--base-3)}details[_ngcontent-%COMP%] summary[_ngcontent-%COMP%]::marker{font-size:0}details[_ngcontent-%COMP%] summary[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;flex:1 0;gap:.5rem;-webkit-user-select:none;user-select:none}details[_ngcontent-%COMP%] summary[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%] spk-icon[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;height:2rem;transition:transform 125ms linear}details[open][_ngcontent-%COMP%] summary[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%] spk-icon[_ngcontent-%COMP%]{transform:rotate(180deg)}details[_ngcontent-%COMP%] .content[_ngcontent-%COMP%]{padding:.75rem 1rem 0;display:flex;flex-direction:column;gap:.75rem}details[_ngcontent-%COMP%] .content[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0}details[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{margin-top:.75rem;position:relative}details[_ngcontent-%COMP%] code[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{position:absolute;top:.75rem;right:.75rem}.extra-info[_ngcontent-%COMP%]{grid-column:1/-1;display:flex;flex-direction:column;gap:1rem}.extra-info[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.extra-info[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{white-space:pre-wrap;padding:1rem;display:block;border-radius:var(--shape-2);background-color:var(--base-2)}.log-content[_ngcontent-%COMP%]{padding:1rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.status[_ngcontent-%COMP%]{display:block;width:1rem;height:1rem;background-color:var(--success-8);border-radius:50%}.status.error[_ngcontent-%COMP%]{background-color:var(--error-8)}.status.warn[_ngcontent-%COMP%]{background-color:var(--warn-8)}"],changeDetection:0})};function un(n,_){n&1&&s(0,"spk-progress-bar",1)}function pn(n,_){n&1&&(T(0,0,1),s(1,"spk-icon"),A())}function cn(n,_){n&1&&(T(0,0,2),s(1,"spk-icon"),A())}function dn(n,_){if(n&1){let e=U();o(0,"section",6)(1,"button",7),k("click",function(){f(e);let d=g(),O=d.$implicit,P=d.$index,x=g();return I(x.copyToClipboard(O.data,P))}),T(2,0),E(3,pn,2,0)(4,cn,2,0),A(),t(),o(5,"code"),c(6),p(7,"json"),t()()}if(n&2){let e=g(),a=e.$implicit,d=e.$index,O=g();i(),v("success",O.copiedFromIndex()===d),i(2),C(O.copiedFromIndex()===d?3:4),i(3),X(L(7,4,a.data))}}function gn(n,_){if(n&1){let e=U();o(0,"article",2)(1,"header",3),k("click",function(){let d=f(e).$implicit,O=g();return I(O.toggleOpenEntry(d.id))}),o(2,"h3"),c(3),p(4,"date"),t(),o(5,"div",4)(6,"spk-icon",5),c(7,"caret-down"),t()()(),E(8,dn,8,6,"section",6),t()}if(n&2){let e=_.$implicit,a=g();i(3),xe("",S(4,6,e.timestamp,"medium"),": ",e.operation," ",e.path),i(3),v("open",e.id===a.openEntry()),i(2),C(e.id===a.openEntry()?8:-1)}}var Ce=class n{#e=B(pe);backupId=re.required();openEntry=D(null);pagination=D({offset:0,pagesize:100});copiedFromIndex=D(null);resource=de({params:()=>_e({id:this.backupId()},this.pagination()),stream:({params:_})=>this.#e.getApiV1BackupByIdRemotelog({id:_.id,pagesize:100}).pipe(w(e=>e.map((a,d)=>({id:a.ID,operationId:a.OperationID,timestamp:a.Timestamp*1e3,operation:a.Operation,path:a.Path,data:typeof a.Data=="string"?JSON.parse(a.Data):null}))))});toggleOpenEntry(_){if(this.openEntry()===_){this.openEntry.set(null);return}this.openEntry.set(_)}copyToClipboard(_,e){let a=JSON.stringify(_,null,2);navigator.clipboard.writeText(a),this.copiedFromIndex.set(e),setTimeout(()=>{this.copiedFromIndex.set(null)},3e3)}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=z({type:n,selectors:[["app-remote-log"]],inputs:{backupId:[1,"backupId"]},decls:3,vars:1,consts:()=>{let _;return _=$localize`${"\uFFFD*3:1\uFFFD"}:START_BLOCK_IF:${"[\uFFFD#1:1\uFFFD|\uFFFD#1:2\uFFFD]"}:START_TAG_SPK_ICON:check${"[\uFFFD/#1:1\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_SPK_ICON: Copied ${"\uFFFD/*3:1\uFFFD"}:CLOSE_BLOCK_IF:${"\uFFFD*4:2\uFFFD"}:START_BLOCK_ELSE:${"[\uFFFD#1:1\uFFFD|\uFFFD#1:2\uFFFD]"}:START_TAG_SPK_ICON:copy${"[\uFFFD/#1:1\uFFFD|\uFFFD/#1:2\uFFFD]"}:CLOSE_TAG_SPK_ICON: Copy to clipboard ${"\uFFFD/*4:2\uFFFD"}:CLOSE_BLOCK_ELSE:`,_=G(_),[_,[1,"indeterminate","primary"],[1,"log-entry"],[3,"click"],[1,"actions"],[1,"toggle-indicator"],[1,"log-content"],["spk-button","",1,"small",3,"click"]]},template:function(e,a){e&1&&(E(0,un,1,0,"spk-progress-bar",1),K(1,gn,9,9,"article",2,b)),e&2&&(C(a.resource.isLoading()?0:-1),i(),h(a.resource.value()))},dependencies:[se,ue,j,W],styles:["[_nghost-%COMP%]{display:block}.log-entry[_ngcontent-%COMP%]{display:flex;flex-direction:column}.log-entry[_ngcontent-%COMP%] header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:1rem;border-bottom:1px solid var(--base-4);background-color:var(--base-1);cursor:pointer}.log-entry[_ngcontent-%COMP%] header[_ngcontent-%COMP%]:hover{background-color:var(--base-2)}.log-entry[_ngcontent-%COMP%] header[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font:var(--paragraph-30);margin:0;-webkit-user-select:none;user-select:none}.log-entry[_ngcontent-%COMP%] header[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font:var(--paragraph-30);color:var(--base-8)}.toggle-indicator[_ngcontent-%COMP%]{display:inline-flex;align-items:center;justify-content:center;height:1.25rem;transition:transform 125ms linear}.toggle-indicator.open[_ngcontent-%COMP%]{transform:rotate(180deg)}.log-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:1rem;position:relative}.log-content[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{position:absolute;top:2rem;right:2rem;background:transparent}code[_ngcontent-%COMP%]{white-space:pre-wrap;padding:1rem;display:block;border-radius:var(--shape-2);background-color:var(--base-2)}"],changeDetection:0})};function En(n,_){if(n&1&&(c(0," - "),N(1),l(2,6),R(),c(3),p(4,"durationFormat")),n&2){g(2);let e=$(6);i(3),M(" ",L(4,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.LastBackupDuration)," ")}}function Cn(n,_){n&1&&(N(0),l(1,7),R())}function On(n,_){if(n&1&&(c(0),p(1,"bytes")),n&2){g(2);let e=$(6);M(" ",L(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.SourceFilesSize)," ")}}function mn(n,_){n&1&&(N(0),l(1,8),R())}function Ln(n,_){if(n&1&&(c(0),p(1,"bytes")),n&2){g(2);let e=$(6);M(" ",L(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.TargetFilesSize)," ")}}function Tn(n,_){n&1&&(N(0),l(1,9),R())}function An(n,_){if(n&1&&(o(0,"spk-chip",19),l(1,10),t()),n&2){g(2);let e=$(6);i(),F(e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.BackupListCount),u(1)}}function Sn(n,_){n&1&&(o(0,"spk-chip",20),l(1,11),t())}function Pn(n,_){if(n&1&&(o(0,"div",14)(1,"div",18)(2,"h3"),c(3),o(4,"spk-icon"),c(5,"database"),t()(),o(6,"p")(7,"span"),l(8,3),t(),c(9),p(10,"date"),E(11,En,5,3)(12,Cn,2,0,"ng-container"),t(),o(13,"p")(14,"span"),l(15,4),t(),E(16,On,2,3)(17,mn,2,0,"ng-container"),t(),o(18,"p")(19,"span"),l(20,5),t(),E(21,Ln,2,3)(22,Tn,2,0,"ng-container"),t()(),E(23,An,2,1,"spk-chip",19)(24,Sn,2,0,"spk-chip",20),t()),n&2){let e=g(),a=$(6);i(3),M(" ",(a.Backup==null?null:a.Backup.Name)??e.MISSING_BACKUP_NAME," "),i(6),M(" ",S(10,6,a.Backup==null||a.Backup.Metadata==null?null:a.Backup.Metadata.LastBackupDate,"short")," "),i(2),C(!(a.Backup==null||a.Backup.Metadata==null)&&a.Backup.Metadata.LastBackupDuration?11:12),i(5),C(!(a.Backup==null||a.Backup.Metadata==null)&&a.Backup.Metadata.SourceFilesSize?16:17),i(5),C(!(a.Backup==null||a.Backup.Metadata==null)&&a.Backup.Metadata.TargetFilesSize?21:22),i(2),C(!(a.Backup==null||a.Backup.Metadata==null)&&a.Backup.Metadata.BackupListCount?23:24)}}function Gn(n,_){if(n&1&&s(0,"app-general-log",17),n&2){let e=g();V("backupId",e.backupId())}}function Nn(n,_){if(n&1&&s(0,"app-remote-log",17),n&2){let e=g();V("backupId",e.backupId())}}var Oe=class n{#e=B(be);#n=B(we);MISSING_BACKUP_NAME=$localize`Backup name missing`;activeTab=D("general");backupId=ze(this.#e.params.pipe(w(_=>_.id)));backup=Be(()=>{let _=this.backupId();return _?this.#n.getBackupById(_):null});static \u0275fac=function(e){return new(e||n)};static \u0275cmp=z({type:n,selectors:[["app-log"]],decls:15,vars:8,consts:()=>{let _;_=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SPK_ICON:arrow-left${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SPK_ICON: Back `;let e;e=$localize`General`;let a;a=$localize` Destination `;let d;d=$localize`Last successful backup:`;let O;O=$localize`Source:`;let P;P=$localize`Destination:`;let x;x=$localize`took`;let J;J=$localize`N/A`;let q;q=$localize`N/A`;let H;H=$localize`N/A`;let Q;Q=$localize`${"\uFFFD0\uFFFD"}:INTERPOLATION: Version`;let Y;return Y=$localize`No version yet`,[_,e,a,d,O,P,x,J,q,H,Q,Y,[1,"back"],["type","button","spk-button","","routerLink","/",1,"small"],[1,"backup"],[1,"primary"],["tab","",3,"click"],[3,"backupId"],[1,"text"],[1,"simple","success"],[1,"simple"]]},template:function(e,a){if(e&1){let d=U();s(0,"app-status-bar"),o(1,"section")(2,"div",12)(3,"button",13),T(4,0),s(5,"spk-icon"),A(),t()(),le(6),E(7,Pn,25,9,"div",14),o(8,"spk-tabs",15)(9,"button",16),k("click",function(){return f(d),I(a.activeTab.set("general"))}),l(10,1),t(),o(11,"button",16),k("click",function(){return f(d),I(a.activeTab.set("destination"))}),l(12,2),t()(),E(13,Gn,1,1,"app-general-log",17),E(14,Nn,1,1,"app-remote-log",17),t()}if(e&2){i(6);let d=Z(a.backup());i(),C(d?7:-1),i(2),v("active",a.activeTab()==="general"),i(2),v("active",a.activeTab()==="destination"),i(2),C(a.activeTab()==="general"?13:-1),i(),C(a.activeTab()==="destination"?14:-1)}},dependencies:[Xe,Ee,Ce,Ke,ce,ge,W,Ve,j,Fe,he],styles:["[_nghost-%COMP%]{display:block}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:1rem 1.5rem;gap:1rem}spk-tabs[_ngcontent-%COMP%]{margin-bottom:1rem}.backup[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:2rem;gap:1rem;border:1px solid var(--base-4);border-radius:var(--shape-3);box-shadow:var(--box-shadow-10)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem;width:100%;max-width:40%}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] spk-icon[_ngcontent-%COMP%]{color:var(--base-8)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font:var(--paragraph-30);color:var(--base-8)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] p[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--base-12)}"],changeDetection:0})};export{Oe as default};
package/chunk-ZCT7SRIM.js DELETED
@@ -1 +0,0 @@
1
- import{a as ae}from"./chunk-GP2W7XZF.js";import{$a as q,Ec as m,Fc as F,Nb as v,Q as H,Qc as we,R as h,S as se,Sa as W,T as L,Ta as o,Uc as Ie,V,X as Me,_b as oe,ab as l,cb as u,fa as Ee,fb as _,i as Ve,ib as Fe,la as M,m as De,oa as N,pa as E,pc as f,r as be,ra as $,x as Ae}from"./chunk-67YRCRMI.js";import{a as c,b as g}from"./chunk-EUDKD2JW.js";var Te=(()=>{class n{_renderer;_elementRef;onChange=e=>{};onTouched=()=>{};constructor(e,i){this._renderer=e,this._elementRef=i}setProperty(e,i){this._renderer.setProperty(this._elementRef.nativeElement,e,i)}registerOnTouched(e){this.onTouched=e}registerOnChange(e){this.onChange=e}setDisabledState(e){this.setProperty("disabled",e)}static \u0275fac=function(i){return new(i||n)(o(W),o($))};static \u0275dir=l({type:n})}return n})(),B=(()=>{class n extends Te{static \u0275fac=(()=>{let e;return function(r){return(e||(e=E(n)))(r||n)}})();static \u0275dir=l({type:n,features:[u]})}return n})(),C=new V(""),at={provide:C,useExisting:h(()=>lt),multi:!0},lt=(()=>{class n extends B{writeValue(e){this.setProperty("checked",e)}static \u0275fac=(()=>{let e;return function(r){return(e||(e=E(n)))(r||n)}})();static \u0275dir=l({type:n,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(i,r){i&1&&v("change",function(a){return r.onChange(a.target.checked)})("blur",function(){return r.onTouched()})},standalone:!1,features:[f([at]),u]})}return n})(),ut={provide:C,useExisting:h(()=>je),multi:!0};function dt(){let n=ae()?ae().getUserAgent():"";return/android (\d+)/.test(n.toLowerCase())}var ct=new V(""),je=(()=>{class n extends Te{_compositionMode;_composing=!1;constructor(e,i,r){super(e,i),this._compositionMode=r,this._compositionMode==null&&(this._compositionMode=!dt())}writeValue(e){let i=e??"";this.setProperty("value",i)}_handleInput(e){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(e)}_compositionStart(){this._composing=!0}_compositionEnd(e){this._composing=!1,this._compositionMode&&this.onChange(e)}static \u0275fac=function(i){return new(i||n)(o(W),o($),o(ct,8))};static \u0275dir=l({type:n,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(i,r){i&1&&v("input",function(a){return r._handleInput(a.target.value)})("blur",function(){return r.onTouched()})("compositionstart",function(){return r._compositionStart()})("compositionend",function(a){return r._compositionEnd(a.target.value)})},standalone:!1,features:[f([ut]),u]})}return n})();function ce(n){return n==null||he(n)===0}function he(n){return n==null?null:Array.isArray(n)||typeof n=="string"?n.length:n instanceof Set?n.size:null}var D=new V(""),b=new V(""),ht=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Se=class{static min(t){return ft(t)}static max(t){return gt(t)}static required(t){return pt(t)}static requiredTrue(t){return mt(t)}static email(t){return _t(t)}static minLength(t){return vt(t)}static maxLength(t){return yt(t)}static pattern(t){return Ct(t)}static nullValidator(t){return Be()}static compose(t){return qe(t)}static composeAsync(t){return ze(t)}};function ft(n){return t=>{if(t.value==null||n==null)return null;let e=parseFloat(t.value);return!isNaN(e)&&e<n?{min:{min:n,actual:t.value}}:null}}function gt(n){return t=>{if(t.value==null||n==null)return null;let e=parseFloat(t.value);return!isNaN(e)&&e>n?{max:{max:n,actual:t.value}}:null}}function pt(n){return ce(n.value)?{required:!0}:null}function mt(n){return n.value===!0?null:{required:!0}}function _t(n){return ce(n.value)||ht.test(n.value)?null:{email:!0}}function vt(n){return t=>{let e=t.value?.length??he(t.value);return e===null||e===0?null:e<n?{minlength:{requiredLength:n,actualLength:e}}:null}}function yt(n){return t=>{let e=t.value?.length??he(t.value);return e!==null&&e>n?{maxlength:{requiredLength:n,actualLength:e}}:null}}function Ct(n){if(!n)return Be;let t,e;return typeof n=="string"?(e="",n.charAt(0)!=="^"&&(e+="^"),e+=n,n.charAt(n.length-1)!=="$"&&(e+="$"),t=new RegExp(e)):(e=n.toString(),t=n),i=>{if(ce(i.value))return null;let r=i.value;return t.test(r)?null:{pattern:{requiredPattern:e,actualValue:r}}}}function Be(n){return null}function Ue(n){return n!=null}function He(n){return Fe(n)?De(n):n}function Le(n){let t={};return n.forEach(e=>{t=e!=null?c(c({},t),e):t}),Object.keys(t).length===0?null:t}function $e(n,t){return t.map(e=>e(n))}function Vt(n){return!n.validate}function We(n){return n.map(t=>Vt(t)?t:e=>t.validate(e))}function qe(n){if(!n)return null;let t=n.filter(Ue);return t.length==0?null:function(e){return Le($e(e,t))}}function fe(n){return n!=null?qe(We(n)):null}function ze(n){if(!n)return null;let t=n.filter(Ue);return t.length==0?null:function(e){let i=$e(e,t).map(He);return Ae(i).pipe(be(Le))}}function ge(n){return n!=null?ze(We(n)):null}function Oe(n,t){return n===null?[t]:Array.isArray(n)?[...n,t]:[n,t]}function Ze(n){return n._rawValidators}function Xe(n){return n._rawAsyncValidators}function le(n){return n?Array.isArray(n)?n:[n]:[]}function Z(n,t){return Array.isArray(n)?n.includes(t):n===t}function Ne(n,t){let e=le(t);return le(n).forEach(r=>{Z(e,r)||e.push(r)}),e}function xe(n,t){return le(t).filter(e=>!Z(n,e))}var X=class{get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators=[];_rawAsyncValidators=[];_setValidators(t){this._rawValidators=t||[],this._composedValidatorFn=fe(this._rawValidators)}_setAsyncValidators(t){this._rawAsyncValidators=t||[],this._composedAsyncValidatorFn=ge(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_onDestroyCallbacks=[];_registerOnDestroy(t){this._onDestroyCallbacks.push(t)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(t=>t()),this._onDestroyCallbacks=[]}reset(t=void 0){this.control&&this.control.reset(t)}hasError(t,e){return this.control?this.control.hasError(t,e):!1}getError(t,e){return this.control?this.control.getError(t,e):null}},d=class extends X{name;get formDirective(){return null}get path(){return null}},p=class extends X{_parent=null;name=null;valueAccessor=null},Y=class{_cd;constructor(t){this._cd=t}get isTouched(){return this._cd?.control?._touched?.(),!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return this._cd?.control?._pristine?.(),!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return this._cd?.control?._status?.(),!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return this._cd?._submitted?.(),!!this._cd?.submitted}},Dt={"[class.ng-untouched]":"isUntouched","[class.ng-touched]":"isTouched","[class.ng-pristine]":"isPristine","[class.ng-dirty]":"isDirty","[class.ng-valid]":"isValid","[class.ng-invalid]":"isInvalid","[class.ng-pending]":"isPending"},_n=g(c({},Dt),{"[class.ng-submitted]":"isSubmitted"}),vn=(()=>{class n extends Y{constructor(e){super(e)}static \u0275fac=function(i){return new(i||n)(o(p,2))};static \u0275dir=l({type:n,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(i,r){i&2&&oe("ng-untouched",r.isUntouched)("ng-touched",r.isTouched)("ng-pristine",r.isPristine)("ng-dirty",r.isDirty)("ng-valid",r.isValid)("ng-invalid",r.isInvalid)("ng-pending",r.isPending)},standalone:!1,features:[u]})}return n})(),yn=(()=>{class n extends Y{constructor(e){super(e)}static \u0275fac=function(i){return new(i||n)(o(d,10))};static \u0275dir=l({type:n,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(i,r){i&2&&oe("ng-untouched",r.isUntouched)("ng-touched",r.isTouched)("ng-pristine",r.isPristine)("ng-dirty",r.isDirty)("ng-valid",r.isValid)("ng-invalid",r.isInvalid)("ng-pending",r.isPending)("ng-submitted",r.isSubmitted)},standalone:!1,features:[u]})}return n})();var x="VALID",z="INVALID",w="PENDING",P="DISABLED",y=class{},K=class extends y{value;source;constructor(t,e){super(),this.value=t,this.source=e}},R=class extends y{pristine;source;constructor(t,e){super(),this.pristine=t,this.source=e}},G=class extends y{touched;source;constructor(t,e){super(),this.touched=t,this.source=e}},I=class extends y{status;source;constructor(t,e){super(),this.status=t,this.source=e}},J=class extends y{source;constructor(t){super(),this.source=t}},Q=class extends y{source;constructor(t){super(),this.source=t}};function pe(n){return(ie(n)?n.validators:n)||null}function bt(n){return Array.isArray(n)?fe(n):n||null}function me(n,t){return(ie(t)?t.asyncValidators:n)||null}function At(n){return Array.isArray(n)?ge(n):n||null}function ie(n){return n!=null&&!Array.isArray(n)&&typeof n=="object"}function Ye(n,t,e){let i=n.controls;if(!(t?Object.keys(i):i).length)throw new H(1e3,"");if(!i[e])throw new H(1001,"")}function Ke(n,t,e){n._forEachChild((i,r)=>{if(e[r]===void 0)throw new H(1002,"")})}var S=class{_pendingDirty=!1;_hasOwnPendingAsyncValidator=null;_pendingTouched=!1;_onCollectionChange=()=>{};_updateOn;_parent=null;_asyncValidationSubscription;_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators;_rawAsyncValidators;value;constructor(t,e){this._assignValidators(t),this._assignAsyncValidators(e)}get validator(){return this._composedValidatorFn}set validator(t){this._rawValidators=this._composedValidatorFn=t}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(t){this._rawAsyncValidators=this._composedAsyncValidatorFn=t}get parent(){return this._parent}get status(){return m(this.statusReactive)}set status(t){m(()=>this.statusReactive.set(t))}_status=F(()=>this.statusReactive());statusReactive=M(void 0);get valid(){return this.status===x}get invalid(){return this.status===z}get pending(){return this.status==w}get disabled(){return this.status===P}get enabled(){return this.status!==P}errors;get pristine(){return m(this.pristineReactive)}set pristine(t){m(()=>this.pristineReactive.set(t))}_pristine=F(()=>this.pristineReactive());pristineReactive=M(!0);get dirty(){return!this.pristine}get touched(){return m(this.touchedReactive)}set touched(t){m(()=>this.touchedReactive.set(t))}_touched=F(()=>this.touchedReactive());touchedReactive=M(!1);get untouched(){return!this.touched}_events=new Ve;events=this._events.asObservable();valueChanges;statusChanges;get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this._assignValidators(t)}setAsyncValidators(t){this._assignAsyncValidators(t)}addValidators(t){this.setValidators(Ne(t,this._rawValidators))}addAsyncValidators(t){this.setAsyncValidators(Ne(t,this._rawAsyncValidators))}removeValidators(t){this.setValidators(xe(t,this._rawValidators))}removeAsyncValidators(t){this.setAsyncValidators(xe(t,this._rawAsyncValidators))}hasValidator(t){return Z(this._rawValidators,t)}hasAsyncValidator(t){return Z(this._rawAsyncValidators,t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){let e=this.touched===!1;this.touched=!0;let i=t.sourceControl??this;this._parent&&!t.onlySelf&&this._parent.markAsTouched(g(c({},t),{sourceControl:i})),e&&t.emitEvent!==!1&&this._events.next(new G(!0,i))}markAllAsDirty(t={}){this.markAsDirty({onlySelf:!0,emitEvent:t.emitEvent,sourceControl:this}),this._forEachChild(e=>e.markAllAsDirty(t))}markAllAsTouched(t={}){this.markAsTouched({onlySelf:!0,emitEvent:t.emitEvent,sourceControl:this}),this._forEachChild(e=>e.markAllAsTouched(t))}markAsUntouched(t={}){let e=this.touched===!0;this.touched=!1,this._pendingTouched=!1;let i=t.sourceControl??this;this._forEachChild(r=>{r.markAsUntouched({onlySelf:!0,emitEvent:t.emitEvent,sourceControl:i})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t,i),e&&t.emitEvent!==!1&&this._events.next(new G(!1,i))}markAsDirty(t={}){let e=this.pristine===!0;this.pristine=!1;let i=t.sourceControl??this;this._parent&&!t.onlySelf&&this._parent.markAsDirty(g(c({},t),{sourceControl:i})),e&&t.emitEvent!==!1&&this._events.next(new R(!1,i))}markAsPristine(t={}){let e=this.pristine===!1;this.pristine=!0,this._pendingDirty=!1;let i=t.sourceControl??this;this._forEachChild(r=>{r.markAsPristine({onlySelf:!0,emitEvent:t.emitEvent})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t,i),e&&t.emitEvent!==!1&&this._events.next(new R(!0,i))}markAsPending(t={}){this.status=w;let e=t.sourceControl??this;t.emitEvent!==!1&&(this._events.next(new I(this.status,e)),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.markAsPending(g(c({},t),{sourceControl:e}))}disable(t={}){let e=this._parentMarkedDirty(t.onlySelf);this.status=P,this.errors=null,this._forEachChild(r=>{r.disable(g(c({},t),{onlySelf:!0}))}),this._updateValue();let i=t.sourceControl??this;t.emitEvent!==!1&&(this._events.next(new K(this.value,i)),this._events.next(new I(this.status,i)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(g(c({},t),{skipPristineCheck:e}),this),this._onDisabledChange.forEach(r=>r(!0))}enable(t={}){let e=this._parentMarkedDirty(t.onlySelf);this.status=x,this._forEachChild(i=>{i.enable(g(c({},t),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors(g(c({},t),{skipPristineCheck:e}),this),this._onDisabledChange.forEach(i=>i(!1))}_updateAncestors(t,e){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine({},e),this._parent._updateTouched({},e))}setParent(t){this._parent=t}getRawValue(){return this.value}updateValueAndValidity(t={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){let i=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===x||this.status===w)&&this._runAsyncValidator(i,t.emitEvent)}let e=t.sourceControl??this;t.emitEvent!==!1&&(this._events.next(new K(this.value,e)),this._events.next(new I(this.status,e)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.updateValueAndValidity(g(c({},t),{sourceControl:e}))}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?P:x}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t,e){if(this.asyncValidator){this.status=w,this._hasOwnPendingAsyncValidator={emitEvent:e!==!1,shouldHaveEmitted:t!==!1};let i=He(this.asyncValidator(this));this._asyncValidationSubscription=i.subscribe(r=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(r,{emitEvent:e,shouldHaveEmitted:t})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();let t=(this._hasOwnPendingAsyncValidator?.emitEvent||this._hasOwnPendingAsyncValidator?.shouldHaveEmitted)??!1;return this._hasOwnPendingAsyncValidator=null,t}return!1}setErrors(t,e={}){this.errors=t,this._updateControlsErrors(e.emitEvent!==!1,this,e.shouldHaveEmitted)}get(t){let e=t;return e==null||(Array.isArray(e)||(e=e.split(".")),e.length===0)?null:e.reduce((i,r)=>i&&i._find(r),this)}getError(t,e){let i=e?this.get(e):this;return i&&i.errors?i.errors[t]:null}hasError(t,e){return!!this.getError(t,e)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t,e,i){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),(t||i)&&this._events.next(new I(this.status,e)),this._parent&&this._parent._updateControlsErrors(t,e,i)}_initObservables(){this.valueChanges=new _,this.statusChanges=new _}_calculateStatus(){return this._allControlsDisabled()?P:this.errors?z:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(w)?w:this._anyControlsHaveStatus(z)?z:x}_anyControlsHaveStatus(t){return this._anyControls(e=>e.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t,e){let i=!this._anyControlsDirty(),r=this.pristine!==i;this.pristine=i,this._parent&&!t.onlySelf&&this._parent._updatePristine(t,e),r&&this._events.next(new R(this.pristine,e))}_updateTouched(t={},e){this.touched=this._anyControlsTouched(),this._events.next(new G(this.touched,e)),this._parent&&!t.onlySelf&&this._parent._updateTouched(t,e)}_onDisabledChange=[];_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){ie(t)&&t.updateOn!=null&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){let e=this._parent&&this._parent.dirty;return!t&&!!e&&!this._parent._anyControlsDirty()}_find(t){return null}_assignValidators(t){this._rawValidators=Array.isArray(t)?t.slice():t,this._composedValidatorFn=bt(this._rawValidators)}_assignAsyncValidators(t){this._rawAsyncValidators=Array.isArray(t)?t.slice():t,this._composedAsyncValidatorFn=At(this._rawAsyncValidators)}},O=class extends S{constructor(t,e,i){super(pe(e),me(i,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;registerControl(t,e){return this.controls[t]?this.controls[t]:(this.controls[t]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(t,e,i={}){this.registerControl(t,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}removeControl(t,e={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}setControl(t,e,i={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],e&&this.registerControl(t,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,e={}){Ke(this,!0,t),Object.keys(t).forEach(i=>{Ye(this,!0,i),this.controls[i].setValue(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t!=null&&(Object.keys(t).forEach(i=>{let r=this.controls[i];r&&r.patchValue(t[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(t={},e={}){this._forEachChild((i,r)=>{i.reset(t?t[r]:null,{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(t,e,i)=>(t[i]=e.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(e,i)=>i._syncPendingControls()?!0:e);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_forEachChild(t){Object.keys(this.controls).forEach(e=>{let i=this.controls[e];i&&t(i,e)})}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){for(let[e,i]of Object.entries(this.controls))if(this.contains(e)&&t(i))return!0;return!1}_reduceValue(){let t={};return this._reduceChildren(t,(e,i,r)=>((i.enabled||this.disabled)&&(e[r]=i.value),e))}_reduceChildren(t,e){let i=t;return this._forEachChild((r,s)=>{i=e(i,r,s)}),i}_allControlsDisabled(){for(let t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(t){return this.controls.hasOwnProperty(t)?this.controls[t]:null}};var ue=class extends O{};var A=new V("",{providedIn:"root",factory:()=>U}),U="always";function re(n,t){return[...t.path,n]}function j(n,t,e=U){_e(n,t),t.valueAccessor.writeValue(n.value),(n.disabled||e==="always")&&t.valueAccessor.setDisabledState?.(n.disabled),Et(n,t),wt(n,t),Ft(n,t),Mt(n,t)}function ee(n,t,e=!0){let i=()=>{};t.valueAccessor&&(t.valueAccessor.registerOnChange(i),t.valueAccessor.registerOnTouched(i)),ne(n,t),n&&(t._invokeOnDestroyCallbacks(),n._registerOnCollectionChange(()=>{}))}function te(n,t){n.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(t)})}function Mt(n,t){if(t.valueAccessor.setDisabledState){let e=i=>{t.valueAccessor.setDisabledState(i)};n.registerOnDisabledChange(e),t._registerOnDestroy(()=>{n._unregisterOnDisabledChange(e)})}}function _e(n,t){let e=Ze(n);t.validator!==null?n.setValidators(Oe(e,t.validator)):typeof e=="function"&&n.setValidators([e]);let i=Xe(n);t.asyncValidator!==null?n.setAsyncValidators(Oe(i,t.asyncValidator)):typeof i=="function"&&n.setAsyncValidators([i]);let r=()=>n.updateValueAndValidity();te(t._rawValidators,r),te(t._rawAsyncValidators,r)}function ne(n,t){let e=!1;if(n!==null){if(t.validator!==null){let r=Ze(n);if(Array.isArray(r)&&r.length>0){let s=r.filter(a=>a!==t.validator);s.length!==r.length&&(e=!0,n.setValidators(s))}}if(t.asyncValidator!==null){let r=Xe(n);if(Array.isArray(r)&&r.length>0){let s=r.filter(a=>a!==t.asyncValidator);s.length!==r.length&&(e=!0,n.setAsyncValidators(s))}}}let i=()=>{};return te(t._rawValidators,i),te(t._rawAsyncValidators,i),e}function Et(n,t){t.valueAccessor.registerOnChange(e=>{n._pendingValue=e,n._pendingChange=!0,n._pendingDirty=!0,n.updateOn==="change"&&Je(n,t)})}function Ft(n,t){t.valueAccessor.registerOnTouched(()=>{n._pendingTouched=!0,n.updateOn==="blur"&&n._pendingChange&&Je(n,t),n.updateOn!=="submit"&&n.markAsTouched()})}function Je(n,t){n._pendingDirty&&n.markAsDirty(),n.setValue(n._pendingValue,{emitModelToViewChange:!1}),t.viewToModelUpdate(n._pendingValue),n._pendingChange=!1}function wt(n,t){let e=(i,r)=>{t.valueAccessor.writeValue(i),r&&t.viewToModelUpdate(i)};n.registerOnChange(e),t._registerOnDestroy(()=>{n._unregisterOnChange(e)})}function Qe(n,t){n==null,_e(n,t)}function It(n,t){return ne(n,t)}function ve(n,t){if(!n.hasOwnProperty("model"))return!1;let e=n.model;return e.isFirstChange()?!0:!Object.is(t,e.currentValue)}function St(n){return Object.getPrototypeOf(n.constructor)===B}function et(n,t){n._syncPendingControls(),t.forEach(e=>{let i=e.control;i.updateOn==="submit"&&i._pendingChange&&(e.viewToModelUpdate(i._pendingValue),i._pendingChange=!1)})}function ye(n,t){if(!t)return null;Array.isArray(t);let e,i,r;return t.forEach(s=>{s.constructor===je?e=s:St(s)?i=s:r=s}),r||i||e||null}function Ot(n,t){let e=n.indexOf(t);e>-1&&n.splice(e,1)}var Nt={provide:d,useExisting:h(()=>xt)},k=Promise.resolve(),xt=(()=>{class n extends d{callSetDisabledState;get submitted(){return m(this.submittedReactive)}_submitted=F(()=>this.submittedReactive());submittedReactive=M(!1);_directives=new Set;form;ngSubmit=new _;options;constructor(e,i,r){super(),this.callSetDisabledState=r,this.form=new O({},fe(e),ge(i))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(e){k.then(()=>{let i=this._findContainer(e.path);e.control=i.registerControl(e.name,e.control),j(e.control,e,this.callSetDisabledState),e.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(e)})}getControl(e){return this.form.get(e.path)}removeControl(e){k.then(()=>{let i=this._findContainer(e.path);i&&i.removeControl(e.name),this._directives.delete(e)})}addFormGroup(e){k.then(()=>{let i=this._findContainer(e.path),r=new O({});Qe(r,e),i.registerControl(e.name,r),r.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(e){k.then(()=>{let i=this._findContainer(e.path);i&&i.removeControl(e.name)})}getFormGroup(e){return this.form.get(e.path)}updateModel(e,i){k.then(()=>{this.form.get(e.path).setValue(i)})}setValue(e){this.control.setValue(e)}onSubmit(e){return this.submittedReactive.set(!0),et(this.form,this._directives),this.ngSubmit.emit(e),this.form._events.next(new J(this.control)),e?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(e=void 0){this.form.reset(e),this.submittedReactive.set(!1),this.form._events.next(new Q(this.form))}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.form._updateOn=this.options.updateOn)}_findContainer(e){return e.pop(),e.length?this.form.get(e):this.form}static \u0275fac=function(i){return new(i||n)(o(D,10),o(b,10),o(A,8))};static \u0275dir=l({type:n,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(i,r){i&1&&v("submit",function(a){return r.onSubmit(a)})("reset",function(){return r.onReset()})},inputs:{options:[0,"ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[f([Nt]),u]})}return n})();function Pe(n,t){let e=n.indexOf(t);e>-1&&n.splice(e,1)}function ke(n){return typeof n=="object"&&n!==null&&Object.keys(n).length===2&&"value"in n&&"disabled"in n}var T=class extends S{defaultValue=null;_onChange=[];_pendingValue;_pendingChange=!1;constructor(t=null,e,i){super(pe(e),me(i,e)),this._applyFormState(t),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),ie(e)&&(e.nonNullable||e.initialValueIsDefault)&&(ke(t)?this.defaultValue=t.value:this.defaultValue=t)}setValue(t,e={}){this.value=this._pendingValue=t,this._onChange.length&&e.emitModelToViewChange!==!1&&this._onChange.forEach(i=>i(this.value,e.emitViewToModelChange!==!1)),this.updateValueAndValidity(e)}patchValue(t,e={}){this.setValue(t,e)}reset(t=this.defaultValue,e={}){this._applyFormState(t),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_unregisterOnChange(t){Pe(this._onChange,t)}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_unregisterOnDisabledChange(t){Pe(this._onDisabledChange,t)}_forEachChild(t){}_syncPendingControls(){return this.updateOn==="submit"&&(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),this._pendingChange)?(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),!0):!1}_applyFormState(t){ke(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t}};var Pt=n=>n instanceof T,kt=(()=>{class n extends d{_parent;ngOnInit(){this._checkParentType(),this.formDirective.addFormGroup(this)}ngOnDestroy(){this.formDirective&&this.formDirective.removeFormGroup(this)}get control(){return this.formDirective.getFormGroup(this)}get path(){return re(this.name==null?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_checkParentType(){}static \u0275fac=(()=>{let e;return function(r){return(e||(e=E(n)))(r||n)}})();static \u0275dir=l({type:n,standalone:!1,features:[u]})}return n})();var Rt={provide:p,useExisting:h(()=>Gt)},Re=Promise.resolve(),Gt=(()=>{class n extends p{_changeDetectorRef;callSetDisabledState;control=new T;static ngAcceptInputType_isDisabled;_registered=!1;viewModel;name="";isDisabled;model;options;update=new _;constructor(e,i,r,s,a,ot){super(),this._changeDetectorRef=a,this.callSetDisabledState=ot,this._parent=e,this._setValidators(i),this._setAsyncValidators(r),this.valueAccessor=ye(this,s)}ngOnChanges(e){if(this._checkForErrors(),!this._registered||"name"in e){if(this._registered&&(this._checkName(),this.formDirective)){let i=e.name.previousValue;this.formDirective.removeControl({name:i,path:this._getPath(i)})}this._setUpControl()}"isDisabled"in e&&this._updateDisabled(e),ve(e,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!!(this.options&&this.options.standalone)}_setUpStandalone(){j(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._checkName()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),!this._isStandalone()&&this.name}_updateValue(e){Re.then(()=>{this.control.setValue(e,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(e){let i=e.isDisabled.currentValue,r=i!==0&&Ie(i);Re.then(()=>{r&&!this.control.disabled?this.control.disable():!r&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(e){return this._parent?re(e,this._parent):[e]}static \u0275fac=function(i){return new(i||n)(o(d,9),o(D,10),o(b,10),o(C,10),o(we,8),o(A,8))};static \u0275dir=l({type:n,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"],options:[0,"ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],standalone:!1,features:[f([Rt]),u,N]})}return n})();var Vn=(()=>{class n{static \u0275fac=function(i){return new(i||n)};static \u0275dir=l({type:n,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""],standalone:!1})}return n})(),Tt={provide:C,useExisting:h(()=>jt),multi:!0},jt=(()=>{class n extends B{writeValue(e){let i=e??"";this.setProperty("value",i)}registerOnChange(e){this.onChange=i=>{e(i==""?null:parseFloat(i))}}static \u0275fac=(()=>{let e;return function(r){return(e||(e=E(n)))(r||n)}})();static \u0275dir=l({type:n,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(i,r){i&1&&v("input",function(a){return r.onChange(a.target.value)})("blur",function(){return r.onTouched()})},standalone:!1,features:[f([Tt]),u]})}return n})(),Bt={provide:C,useExisting:h(()=>Ht),multi:!0};var Ut=(()=>{class n{_accessors=[];add(e,i){this._accessors.push([e,i])}remove(e){for(let i=this._accessors.length-1;i>=0;--i)if(this._accessors[i][1]===e){this._accessors.splice(i,1);return}}select(e){this._accessors.forEach(i=>{this._isSameGroup(i,e)&&i[1]!==e&&i[1].fireUncheck(e.value)})}_isSameGroup(e,i){return e[0].control?e[0]._parent===i._control._parent&&e[1].name===i.name:!1}static \u0275fac=function(i){return new(i||n)};static \u0275prov=se({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})(),Ht=(()=>{class n extends B{_registry;_injector;_state;_control;_fn;setDisabledStateFired=!1;onChange=()=>{};name;formControlName;value;callSetDisabledState=Me(A,{optional:!0})??U;constructor(e,i,r,s){super(e,i),this._registry=r,this._injector=s}ngOnInit(){this._control=this._injector.get(p),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(e){this._state=e===this.value,this.setProperty("checked",this._state)}registerOnChange(e){this._fn=e,this.onChange=()=>{e(this.value),this._registry.select(this)}}setDisabledState(e){(this.setDisabledStateFired||e||this.callSetDisabledState==="whenDisabledForLegacyCode")&&this.setProperty("disabled",e),this.setDisabledStateFired=!0}fireUncheck(e){this.writeValue(e)}_checkName(){this.name&&this.formControlName&&(this.name,this.formControlName),!this.name&&this.formControlName&&(this.name=this.formControlName)}static \u0275fac=function(i){return new(i||n)(o(W),o($),o(Ut),o(Ee))};static \u0275dir=l({type:n,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(i,r){i&1&&v("change",function(){return r.onChange()})("blur",function(){return r.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},standalone:!1,features:[f([Bt]),u]})}return n})(),Lt={provide:C,useExisting:h(()=>$t),multi:!0},$t=(()=>{class n extends B{writeValue(e){this.setProperty("value",parseFloat(e))}registerOnChange(e){this.onChange=i=>{e(i==""?null:parseFloat(i))}}static \u0275fac=(()=>{let e;return function(r){return(e||(e=E(n)))(r||n)}})();static \u0275dir=l({type:n,selectors:[["input","type","range","formControlName",""],["input","type","range","formControl",""],["input","type","range","ngModel",""]],hostBindings:function(i,r){i&1&&v("change",function(a){return r.onChange(a.target.value)})("input",function(a){return r.onChange(a.target.value)})("blur",function(){return r.onTouched()})},standalone:!1,features:[f([Lt]),u]})}return n})(),Ce=new V(""),Wt={provide:p,useExisting:h(()=>qt)},qt=(()=>{class n extends p{_ngModelWarningConfig;callSetDisabledState;viewModel;form;set isDisabled(e){}model;update=new _;static _ngModelWarningSentOnce=!1;_ngModelWarningSent=!1;constructor(e,i,r,s,a){super(),this._ngModelWarningConfig=s,this.callSetDisabledState=a,this._setValidators(e),this._setAsyncValidators(i),this.valueAccessor=ye(this,r)}ngOnChanges(e){if(this._isControlChanged(e)){let i=e.form.previousValue;i&&ee(i,this,!1),j(this.form,this,this.callSetDisabledState),this.form.updateValueAndValidity({emitEvent:!1})}ve(e,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&ee(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_isControlChanged(e){return e.hasOwnProperty("form")}static \u0275fac=function(i){return new(i||n)(o(D,10),o(b,10),o(C,10),o(Ce,8),o(A,8))};static \u0275dir=l({type:n,selectors:[["","formControl",""]],inputs:{form:[0,"formControl","form"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],standalone:!1,features:[f([Wt]),u,N]})}return n})(),zt={provide:d,useExisting:h(()=>tt)},tt=(()=>{class n extends d{callSetDisabledState;get submitted(){return m(this._submittedReactive)}set submitted(e){this._submittedReactive.set(e)}_submitted=F(()=>this._submittedReactive());_submittedReactive=M(!1);_oldForm;_onCollectionChange=()=>this._updateDomValue();directives=[];form=null;ngSubmit=new _;constructor(e,i,r){super(),this.callSetDisabledState=r,this._setValidators(e),this._setAsyncValidators(i)}ngOnChanges(e){e.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(ne(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(e){let i=this.form.get(e.path);return j(i,e,this.callSetDisabledState),i.updateValueAndValidity({emitEvent:!1}),this.directives.push(e),i}getControl(e){return this.form.get(e.path)}removeControl(e){ee(e.control||null,e,!1),Ot(this.directives,e)}addFormGroup(e){this._setUpFormContainer(e)}removeFormGroup(e){this._cleanUpFormContainer(e)}getFormGroup(e){return this.form.get(e.path)}addFormArray(e){this._setUpFormContainer(e)}removeFormArray(e){this._cleanUpFormContainer(e)}getFormArray(e){return this.form.get(e.path)}updateModel(e,i){this.form.get(e.path).setValue(i)}onSubmit(e){return this._submittedReactive.set(!0),et(this.form,this.directives),this.ngSubmit.emit(e),this.form._events.next(new J(this.control)),e?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(e=void 0,i={}){this.form.reset(e,i),this._submittedReactive.set(!1),i?.emitEvent!==!1&&this.form._events.next(new Q(this.form))}_updateDomValue(){this.directives.forEach(e=>{let i=e.control,r=this.form.get(e.path);i!==r&&(ee(i||null,e),Pt(r)&&(j(r,e,this.callSetDisabledState),e.control=r))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(e){let i=this.form.get(e.path);Qe(i,e),i.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(e){if(this.form){let i=this.form.get(e.path);i&&It(i,e)&&i.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){_e(this.form,this),this._oldForm&&ne(this._oldForm,this)}static \u0275fac=function(i){return new(i||n)(o(D,10),o(b,10),o(A,8))};static \u0275dir=l({type:n,selectors:[["","formGroup",""]],hostBindings:function(i,r){i&1&&v("submit",function(a){return r.onSubmit(a)})("reset",function(){return r.onReset()})},inputs:{form:[0,"formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[f([zt]),u,N]})}return n})(),Zt={provide:d,useExisting:h(()=>nt)},nt=(()=>{class n extends kt{name=null;constructor(e,i,r){super(),this._parent=e,this._setValidators(i),this._setAsyncValidators(r)}_checkParentType(){rt(this._parent)}static \u0275fac=function(i){return new(i||n)(o(d,13),o(D,10),o(b,10))};static \u0275dir=l({type:n,selectors:[["","formGroupName",""]],inputs:{name:[0,"formGroupName","name"]},standalone:!1,features:[f([Zt]),u]})}return n})(),Xt={provide:d,useExisting:h(()=>it)},it=(()=>{class n extends d{_parent;name=null;constructor(e,i,r){super(),this._parent=e,this._setValidators(i),this._setAsyncValidators(r)}ngOnInit(){rt(this._parent),this.formDirective.addFormArray(this)}ngOnDestroy(){this.formDirective?.removeFormArray(this)}get control(){return this.formDirective.getFormArray(this)}get formDirective(){return this._parent?this._parent.formDirective:null}get path(){return re(this.name==null?this.name:this.name.toString(),this._parent)}static \u0275fac=function(i){return new(i||n)(o(d,13),o(D,10),o(b,10))};static \u0275dir=l({type:n,selectors:[["","formArrayName",""]],inputs:{name:[0,"formArrayName","name"]},standalone:!1,features:[f([Xt]),u]})}return n})();function rt(n){return!(n instanceof nt)&&!(n instanceof tt)&&!(n instanceof it)}var Yt={provide:p,useExisting:h(()=>Kt)},Kt=(()=>{class n extends p{_ngModelWarningConfig;_added=!1;viewModel;control;name=null;set isDisabled(e){}model;update=new _;static _ngModelWarningSentOnce=!1;_ngModelWarningSent=!1;constructor(e,i,r,s,a){super(),this._ngModelWarningConfig=a,this._parent=e,this._setValidators(i),this._setAsyncValidators(r),this.valueAccessor=ye(this,s)}ngOnChanges(e){this._added||this._setUpControl(),ve(e,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}get path(){return re(this.name==null?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_setUpControl(){this.control=this.formDirective.addControl(this),this._added=!0}static \u0275fac=function(i){return new(i||n)(o(d,13),o(D,10),o(b,10),o(C,10),o(Ce,8))};static \u0275dir=l({type:n,selectors:[["","formControlName",""]],inputs:{name:[0,"formControlName","name"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},standalone:!1,features:[f([Yt]),u,N]})}return n})();var st=(()=>{class n{static \u0275fac=function(i){return new(i||n)};static \u0275mod=q({type:n});static \u0275inj=L({})}return n})(),de=class extends S{constructor(t,e,i){super(pe(e),me(i,e)),this.controls=t,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;at(t){return this.controls[this._adjustIndex(t)]}push(t,e={}){this.controls.push(t),this._registerControl(t),this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}insert(t,e,i={}){this.controls.splice(t,0,e),this._registerControl(e),this.updateValueAndValidity({emitEvent:i.emitEvent})}removeAt(t,e={}){let i=this._adjustIndex(t);i<0&&(i=0),this.controls[i]&&this.controls[i]._registerOnCollectionChange(()=>{}),this.controls.splice(i,1),this.updateValueAndValidity({emitEvent:e.emitEvent})}setControl(t,e,i={}){let r=this._adjustIndex(t);r<0&&(r=0),this.controls[r]&&this.controls[r]._registerOnCollectionChange(()=>{}),this.controls.splice(r,1),e&&(this.controls.splice(r,0,e),this._registerControl(e)),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}get length(){return this.controls.length}setValue(t,e={}){Ke(this,!1,t),t.forEach((i,r)=>{Ye(this,!1,r),this.at(r).setValue(i,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(t,e={}){t!=null&&(t.forEach((i,r)=>{this.at(r)&&this.at(r).patchValue(i,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(t=[],e={}){this._forEachChild((i,r)=>{i.reset(t[r],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(t=>t.getRawValue())}clear(t={}){this.controls.length<1||(this._forEachChild(e=>e._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:t.emitEvent}))}_adjustIndex(t){return t<0?t+this.length:t}_syncPendingControls(){let t=this.controls.reduce((e,i)=>i._syncPendingControls()?!0:e,!1);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_forEachChild(t){this.controls.forEach((e,i)=>{t(e,i)})}_updateValue(){this.value=this.controls.filter(t=>t.enabled||this.disabled).map(t=>t.value)}_anyControls(t){return this.controls.some(e=>e.enabled&&t(e))}_setUpControls(){this._forEachChild(t=>this._registerControl(t))}_allControlsDisabled(){for(let t of this.controls)if(t.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(t){t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)}_find(t){return this.at(t)??null}};function Ge(n){return!!n&&(n.asyncValidators!==void 0||n.validators!==void 0||n.updateOn!==void 0)}var Dn=(()=>{class n{useNonNullable=!1;get nonNullable(){let e=new n;return e.useNonNullable=!0,e}group(e,i=null){let r=this._reduceControls(e),s={};return Ge(i)?s=i:i!==null&&(s.validators=i.validator,s.asyncValidators=i.asyncValidator),new O(r,s)}record(e,i=null){let r=this._reduceControls(e);return new ue(r,i)}control(e,i,r){let s={};return this.useNonNullable?(Ge(i)?s=i:(s.validators=i,s.asyncValidators=r),new T(e,g(c({},s),{nonNullable:!0}))):new T(e,i,r)}array(e,i,r){let s=e.map(a=>this._createControl(a));return new de(s,i,r)}_reduceControls(e){let i={};return Object.keys(e).forEach(r=>{i[r]=this._createControl(e[r])}),i}_createControl(e){if(e instanceof T)return e;if(e instanceof S)return e;if(Array.isArray(e)){let i=e[0],r=e.length>1?e[1]:null,s=e.length>2?e[2]:null;return this.control(i,r,s)}else return this.control(e)}static \u0275fac=function(i){return new(i||n)};static \u0275prov=se({token:n,factory:n.\u0275fac,providedIn:"root"})}return n})();var bn=(()=>{class n{static withConfig(e){return{ngModule:n,providers:[{provide:A,useValue:e.callSetDisabledState??U}]}}static \u0275fac=function(i){return new(i||n)};static \u0275mod=q({type:n});static \u0275inj=L({imports:[st]})}return n})(),An=(()=>{class n{static withConfig(e){return{ngModule:n,providers:[{provide:Ce,useValue:e.warnOnNgModelWithFormControl??"always"},{provide:A,useValue:e.callSetDisabledState??U}]}}static \u0275fac=function(i){return new(i||n)};static \u0275mod=q({type:n});static \u0275inj=L({imports:[st]})}return n})();export{C as a,lt as b,je as c,Se as d,vn as e,yn as f,xt as g,T as h,Gt as i,Vn as j,jt as k,Ht as l,$t as m,qt as n,tt as o,nt as p,Kt as q,Dn as r,bn as s,An as t};