@duplicati/ngclient 0.0.143 → 0.0.145

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 (141) hide show
  1. package/assets/dest-icons/aliyun.png +0 -0
  2. package/assets/dest-icons/aws.png +0 -0
  3. package/assets/dest-icons/azure.png +0 -0
  4. package/assets/dest-icons/backblaze.png +0 -0
  5. package/assets/dest-icons/box-com.png +0 -0
  6. package/assets/dest-icons/dropbox.png +0 -0
  7. package/assets/dest-icons/external-harddrive.png +0 -0
  8. package/assets/dest-icons/file-jump.png +0 -0
  9. package/assets/dest-icons/file-system.png +0 -0
  10. package/assets/dest-icons/filen.png +0 -0
  11. package/assets/dest-icons/ftp.png +0 -0
  12. package/assets/dest-icons/google-cloud.png +0 -0
  13. package/assets/dest-icons/google-drive.png +0 -0
  14. package/assets/dest-icons/idrive-e2.png +0 -0
  15. package/assets/dest-icons/jottacloud.png +0 -0
  16. package/assets/dest-icons/mega-nz.png +0 -0
  17. package/assets/dest-icons/nas.png +0 -0
  18. package/assets/dest-icons/office-365.png +0 -0
  19. package/assets/dest-icons/one-drive.png +0 -0
  20. package/assets/dest-icons/open-stack.png +0 -0
  21. package/assets/dest-icons/pcloud.png +0 -0
  22. package/assets/dest-icons/rackspace.png +0 -0
  23. package/assets/dest-icons/rclone.png +0 -0
  24. package/assets/dest-icons/sftp.png +0 -0
  25. package/assets/dest-icons/sharepoint.png +0 -0
  26. package/assets/dest-icons/sia-cloud.png +0 -0
  27. package/assets/dest-icons/sia_logo_dark.92db63f5.svg +6 -0
  28. package/assets/dest-icons/smb.png +0 -0
  29. package/assets/dest-icons/ssh.png +0 -0
  30. package/assets/dest-icons/storj.png +0 -0
  31. package/assets/dest-icons/tahoelafs.png +0 -0
  32. package/assets/dest-icons/tencent-cloud.png +0 -0
  33. package/assets/dest-icons/webdav.png +0 -0
  34. package/{chunk-X3IA226Q.js → chunk-2F6NVETW.js} +1 -1
  35. package/{chunk-VC72SWC4.js → chunk-2QJC4PGQ.js} +1 -1
  36. package/{chunk-PT7UQJD4.js → chunk-2UCO57JQ.js} +1 -1
  37. package/chunk-2UGURIOT.js +1 -0
  38. package/{chunk-4YL5DZVH.js → chunk-43JMN2ZY.js} +1 -1
  39. package/{chunk-LZUM5XKC.js → chunk-4TDUWDRL.js} +1 -1
  40. package/{chunk-SCOG2I64.js → chunk-62QANGOE.js} +1 -1
  41. package/{chunk-XNVRJH42.js → chunk-6LTGTS6B.js} +1 -1
  42. package/{chunk-73RDJP55.js → chunk-6OPAGPKF.js} +1 -1
  43. package/{chunk-KUPXKQHP.js → chunk-7B43LCPI.js} +1 -1
  44. package/chunk-7EBTJOD7.js +1 -0
  45. package/{chunk-6GC5VKTI.js → chunk-7IQY6U5W.js} +1 -1
  46. package/chunk-A6VGO6B5.js +1 -0
  47. package/{chunk-GHFYBZHQ.js → chunk-AJTK6HBC.js} +1 -1
  48. package/chunk-B2D4QGDJ.js +1 -0
  49. package/chunk-BPJCKQYP.js +1 -0
  50. package/{chunk-UACX27D3.js → chunk-DDWLL7XA.js} +1 -1
  51. package/{chunk-GUH5TMOS.js → chunk-DELLEGXW.js} +1 -1
  52. package/{chunk-IHNX6WZQ.js → chunk-DFMGS3IN.js} +1 -1
  53. package/chunk-DFMPWF6R.js +1 -0
  54. package/chunk-DKTUN7FF.js +1 -0
  55. package/{chunk-KGJAK6OP.js → chunk-DLMKZACT.js} +1 -1
  56. package/{chunk-FFY3NRCC.js → chunk-DNDTLTUM.js} +1 -1
  57. package/{chunk-3UN32GIC.js → chunk-DVDTYV66.js} +1 -1
  58. package/{chunk-IGOZJJE3.js → chunk-E66CBA5F.js} +1 -1
  59. package/{chunk-JA7OQSO3.js → chunk-EBIM5FBM.js} +1 -1
  60. package/{chunk-GO22DJ44.js → chunk-ESUPNSKH.js} +1 -1
  61. package/{chunk-OTMW34HV.js → chunk-FCRM5DER.js} +1 -1
  62. package/chunk-FDCY62KM.js +1 -0
  63. package/chunk-FFEDQIYN.js +1 -0
  64. package/{chunk-XQ4CAUD4.js → chunk-FUOS2UGQ.js} +1 -1
  65. package/{chunk-BIETD4DI.js → chunk-FZHTJSDJ.js} +1 -1
  66. package/{chunk-BXRW2LGW.js → chunk-GB3UMYUD.js} +1 -1
  67. package/chunk-H7K35UUX.js +1 -0
  68. package/chunk-HI4XLHO3.js +1 -0
  69. package/{chunk-QDFCX6XE.js → chunk-HNWRQABR.js} +3 -3
  70. package/{chunk-J2MHNGNQ.js → chunk-IFW3O4YJ.js} +1 -1
  71. package/{chunk-CTEFMU6N.js → chunk-J3ONM4TQ.js} +1 -1
  72. package/chunk-KDYD6LMI.js +1 -0
  73. package/{chunk-GDWLKG6V.js → chunk-KGKIF5H4.js} +1 -1
  74. package/chunk-KLW6HEOS.js +1 -0
  75. package/{chunk-K3ZQ67VT.js → chunk-L6CWVBZ6.js} +1 -1
  76. package/chunk-LVP2TPMO.js +1 -0
  77. package/{chunk-5PSLWJTF.js → chunk-M6WWZKV7.js} +1 -1
  78. package/chunk-MAQO5X5Q.js +1 -0
  79. package/{chunk-36RDZAZ4.js → chunk-MSLKIHQQ.js} +1 -1
  80. package/{chunk-UT6XGEMV.js → chunk-MVNLSG6Z.js} +1 -1
  81. package/{chunk-USU2EHJV.js → chunk-N5SC4SKW.js} +1 -1
  82. package/{chunk-QY6E755W.js → chunk-N6ABN43N.js} +1 -1
  83. package/{chunk-WWFNG47J.js → chunk-NJEX2N4Q.js} +1 -1
  84. package/{chunk-JIHMT35A.js → chunk-NJZSEKTD.js} +1 -1
  85. package/{chunk-J3BBLPAD.js → chunk-NOPMCS2Z.js} +1 -1
  86. package/{chunk-ACH476VA.js → chunk-NQ27E6KP.js} +1 -1
  87. package/{chunk-QGFC5ZUR.js → chunk-O64ZZGQZ.js} +1 -1
  88. package/{chunk-CZLLEVMJ.js → chunk-OMMUXRXE.js} +1 -1
  89. package/{chunk-AO4O42CM.js → chunk-OWDKOVPL.js} +1 -1
  90. package/{chunk-TJOWPBPB.js → chunk-PN3U7MRX.js} +1 -1
  91. package/{chunk-CFNP4FBG.js → chunk-POMLWQHO.js} +1 -1
  92. package/{chunk-BGUKMOKY.js → chunk-QDFDQHU3.js} +1 -1
  93. package/{chunk-7AMBMWZP.js → chunk-QHC3CY43.js} +1 -1
  94. package/{chunk-ARXKB7WH.js → chunk-QITXA3NT.js} +1 -1
  95. package/chunk-QYI4IMJE.js +8 -0
  96. package/{chunk-J5PSMGKZ.js → chunk-R5RIFWZO.js} +1 -1
  97. package/chunk-RPU4AJBK.js +1 -0
  98. package/chunk-RUFE3SMI.js +1 -0
  99. package/{chunk-WJPLJKPQ.js → chunk-RUXCS4ZK.js} +1 -1
  100. package/{chunk-7X7K5IXS.js → chunk-SFSB73YO.js} +1 -1
  101. package/{chunk-B5FUQFEQ.js → chunk-TDKBGGNK.js} +1 -1
  102. package/{chunk-6XBSQDXR.js → chunk-TIWH4NKT.js} +1 -1
  103. package/{chunk-XHUUCB2W.js → chunk-TKO3OH2C.js} +1 -1
  104. package/chunk-U5C62E46.js +1 -0
  105. package/chunk-UIIHBXLB.js +1 -0
  106. package/{chunk-OXOOR7I4.js → chunk-UIJYCGKA.js} +1 -1
  107. package/{chunk-ETCRT3EV.js → chunk-UKQFDBNO.js} +1 -1
  108. package/{chunk-CWBEE627.js → chunk-UP5EOICU.js} +1 -1
  109. package/{chunk-6WWCFRZ5.js → chunk-VHE3K2F5.js} +1 -1
  110. package/{chunk-66BSPEOQ.js → chunk-VTSUHAP5.js} +1 -1
  111. package/chunk-W6DRPPZU.js +1 -0
  112. package/{chunk-UW4GBMEP.js → chunk-WS76KLII.js} +1 -1
  113. package/{chunk-WZ23D2R7.js → chunk-XJZ5GM36.js} +1 -1
  114. package/{chunk-ZGAC2JKG.js → chunk-Z3EPZZGY.js} +1 -1
  115. package/{chunk-5AENPWCF.js → chunk-ZNWZFRFW.js} +1 -1
  116. package/index.html +2 -2
  117. package/{main-SFGPSKNZ.js → main-Z5T5HH5Q.js} +1 -1
  118. package/package.json +1 -1
  119. package/styles-LRXGHWCZ.css +1 -0
  120. package/chunk-2NU5Y4V7.js +0 -1
  121. package/chunk-2RB5RKNM.js +0 -1
  122. package/chunk-6BCYG4Y6.js +0 -1
  123. package/chunk-7WD3AN66.js +0 -1
  124. package/chunk-AB2L3URR.js +0 -1
  125. package/chunk-BSP6AKSZ.js +0 -1
  126. package/chunk-HBTRQAXQ.js +0 -1
  127. package/chunk-HDQRG3ZZ.js +0 -1
  128. package/chunk-HKZX6OB5.js +0 -1
  129. package/chunk-L2EO4M4B.js +0 -1
  130. package/chunk-LSVMEMXJ.js +0 -1
  131. package/chunk-M2RYJ73O.js +0 -1
  132. package/chunk-MBBEXLIJ.js +0 -1
  133. package/chunk-NTA2CULM.js +0 -1
  134. package/chunk-ODVCGM2O.js +0 -1
  135. package/chunk-QFU6VJXV.js +0 -1
  136. package/chunk-QNOIURSX.js +0 -1
  137. package/chunk-UUODEERG.js +0 -1
  138. package/chunk-WRNQOX5R.js +0 -1
  139. package/chunk-XLE2TW65.js +0 -1
  140. package/chunk-YHNIGBHB.js +0 -8
  141. package/styles-EZGVWHZF.css +0 -1
@@ -1,4 +1,4 @@
1
- import{b as be}from"./chunk-QGFC5ZUR.js";import{c as ke}from"./chunk-4YL5DZVH.js";import{h as xe}from"./chunk-J3BBLPAD.js";import"./chunk-WJPLJKPQ.js";import"./chunk-FPPZ4BUR.js";import{Db as he,Eb as pe,Fb as ue,Kb as ge,Na as ae,Ra as oe,Sb as fe,Y as le,_ as P,bb as ce,r as ie,yc as de}from"./chunk-QDFCX6XE.js";import{a as b,b as R}from"./chunk-EUDKD2JW.js";function j(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var v=j();function ve(r){v=r}var A={exec:()=>null};function g(r,e=""){let t=typeof r=="string"?r:r.source,s={replace:(n,i)=>{let l=typeof i=="string"?i:i.source;return l=l.replace(x.caret,"$1"),t=t.replace(n,l),s},getRegex:()=>new RegExp(t,e)};return s}var x={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:r=>new RegExp(`^( {0,3}${r})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}#`),htmlBeginRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}<(?:[a-z].*>|!--)`,"i")},qe=/^(?:[ \t]*(?:\n|$))+/,De=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Oe=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,C=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,Ne=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,F=/(?:[*+-]|\d{1,9}[.)])/,Re=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,$e=g(Re).replace(/bull/g,F).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),Ge=g(Re).replace(/bull/g,F).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),Q=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,Ze=/^[^\n]+/,U=/(?!\s*\])(?:\\.|[^\[\]\\])+/,He=g(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",U).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),je=g(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,F).getRegex(),q="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",X=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,Fe=g("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",X).replace("tag",q).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),_e=g(Q).replace("hr",C).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",q).getRegex(),Qe=g(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",_e).getRegex(),W={blockquote:Qe,code:De,def:He,fences:Oe,heading:Ne,hr:C,html:Fe,lheading:$e,list:je,newline:qe,paragraph:_e,table:A,text:Ze},me=g("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",C).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",q).getRegex(),Ue=R(b({},W),{lheading:Ge,table:me,paragraph:g(Q).replace("hr",C).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",me).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",q).getRegex()}),Xe=R(b({},W),{html:g(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",X).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:A,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:g(Q).replace("hr",C).replace("heading",` *#{1,6} *[^
1
+ import{b as be}from"./chunk-O64ZZGQZ.js";import{c as ke}from"./chunk-43JMN2ZY.js";import{h as xe}from"./chunk-NOPMCS2Z.js";import"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import{Db as he,Eb as pe,Fb as ue,Kb as ge,Na as ae,Ra as oe,Sb as fe,Y as le,_ as P,bb as ce,r as ie,yc as de}from"./chunk-HNWRQABR.js";import{a as b,b as R}from"./chunk-EUDKD2JW.js";function j(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var v=j();function ve(r){v=r}var A={exec:()=>null};function g(r,e=""){let t=typeof r=="string"?r:r.source,s={replace:(n,i)=>{let l=typeof i=="string"?i:i.source;return l=l.replace(x.caret,"$1"),t=t.replace(n,l),s},getRegex:()=>new RegExp(t,e)};return s}var x={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:r=>new RegExp(`^( {0,3}${r})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}#`),htmlBeginRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}<(?:[a-z].*>|!--)`,"i")},qe=/^(?:[ \t]*(?:\n|$))+/,De=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Oe=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,C=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,Ne=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,F=/(?:[*+-]|\d{1,9}[.)])/,Re=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,$e=g(Re).replace(/bull/g,F).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),Ge=g(Re).replace(/bull/g,F).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),Q=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,Ze=/^[^\n]+/,U=/(?!\s*\])(?:\\.|[^\[\]\\])+/,He=g(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",U).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),je=g(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,F).getRegex(),q="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",X=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,Fe=g("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",X).replace("tag",q).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),_e=g(Q).replace("hr",C).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",q).getRegex(),Qe=g(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",_e).getRegex(),W={blockquote:Qe,code:De,def:He,fences:Oe,heading:Ne,hr:C,html:Fe,lheading:$e,list:je,newline:qe,paragraph:_e,table:A,text:Ze},me=g("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",C).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",q).getRegex(),Ue=R(b({},W),{lheading:Ge,table:me,paragraph:g(Q).replace("hr",C).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",me).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",q).getRegex()}),Xe=R(b({},W),{html:g(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",X).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:A,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:g(Q).replace("hr",C).replace("heading",` *#{1,6} *[^
2
2
  ]`).replace("lheading",$e).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()}),We=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Ve=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,ze=/^( {2,}|\\)\n(?!\s*$)/,Je=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,D=/[\p{P}\p{S}]/u,V=/[\s\p{P}\p{S}]/u,Ae=/[^\s\p{P}\p{S}]/u,Ke=g(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,V).getRegex(),Ce=/(?!~)[\p{P}\p{S}]/u,Ye=/(?!~)[\s\p{P}\p{S}]/u,et=/(?:[^\s\p{P}\p{S}]|~)/u,tt=/\[[^[\]]*?\]\((?:\\.|[^\\\(\)]|\((?:\\.|[^\\\(\)])*\))*\)|`[^`]*?`|<[^<>]*?>/g,Pe=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,nt=g(Pe,"u").replace(/punct/g,D).getRegex(),rt=g(Pe,"u").replace(/punct/g,Ce).getRegex(),Le="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",st=g(Le,"gu").replace(/notPunctSpace/g,Ae).replace(/punctSpace/g,V).replace(/punct/g,D).getRegex(),it=g(Le,"gu").replace(/notPunctSpace/g,et).replace(/punctSpace/g,Ye).replace(/punct/g,Ce).getRegex(),lt=g("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Ae).replace(/punctSpace/g,V).replace(/punct/g,D).getRegex(),at=g(/\\(punct)/,"gu").replace(/punct/g,D).getRegex(),ot=g(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[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])?)+(?![-_])/).getRegex(),ct=g(X).replace("(?:-->|$)","-->").getRegex(),ht=g("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",ct).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),E=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,pt=g(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",E).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Ie=g(/^!?\[(label)\]\[(ref)\]/).replace("label",E).replace("ref",U).getRegex(),Ee=g(/^!?\[(ref)\](?:\[\])?/).replace("ref",U).getRegex(),ut=g("reflink|nolink(?!\\()","g").replace("reflink",Ie).replace("nolink",Ee).getRegex(),J={_backpedal:A,anyPunctuation:at,autolink:ot,blockSkip:tt,br:ze,code:Ve,del:A,emStrongLDelim:nt,emStrongRDelimAst:st,emStrongRDelimUnd:lt,escape:We,link:pt,nolink:Ee,punctuation:Ke,reflink:Ie,reflinkSearch:ut,tag:ht,text:Je,url:A},gt=R(b({},J),{link:g(/^!?\[(label)\]\((.*?)\)/).replace("label",E).getRegex(),reflink:g(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",E).getRegex()}),G=R(b({},J),{emStrongRDelimAst:it,emStrongLDelim:rt,url:g(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\.|[^\\])*?(?:\\.|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/}),ft=R(b({},G),{br:g(ze).replace("{2,}","*").getRegex(),text:g(G.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()}),L={normal:W,gfm:Ue,pedantic:Xe},_={normal:J,gfm:G,breaks:ft,pedantic:gt},dt={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},we=r=>dt[r];function w(r,e){if(e){if(x.escapeTest.test(r))return r.replace(x.escapeReplace,we)}else if(x.escapeTestNoEncode.test(r))return r.replace(x.escapeReplaceNoEncode,we);return r}function ye(r){try{r=encodeURI(r).replace(x.percentDecode,"%")}catch{return null}return r}function Se(r,e){let t=r.replace(x.findPipe,(i,l,a)=>{let c=!1,o=l;for(;--o>=0&&a[o]==="\\";)c=!c;return c?"|":" |"}),s=t.split(x.splitPipe),n=0;if(s[0].trim()||s.shift(),s.length>0&&!s.at(-1)?.trim()&&s.pop(),e)if(s.length>e)s.splice(e);else for(;s.length<e;)s.push("");for(;n<s.length;n++)s[n]=s[n].trim().replace(x.slashPipe,"|");return s}function z(r,e,t){let s=r.length;if(s===0)return"";let n=0;for(;n<s;){let i=r.charAt(s-n-1);if(i===e&&!t)n++;else if(i!==e&&t)n++;else break}return r.slice(0,s-n)}function kt(r,e){if(r.indexOf(e[1])===-1)return-1;let t=0;for(let s=0;s<r.length;s++)if(r[s]==="\\")s++;else if(r[s]===e[0])t++;else if(r[s]===e[1]&&(t--,t<0))return s;return t>0?-2:-1}function Te(r,e,t,s,n){let i=e.href,l=e.title||null,a=r[1].replace(n.other.outputLinkReplace,"$1");s.state.inLink=!0;let c={type:r[0].charAt(0)==="!"?"image":"link",raw:t,href:i,title:l,text:a,tokens:s.inlineTokens(a)};return s.state.inLink=!1,c}function xt(r,e,t){let s=r.match(t.other.indentCodeCompensation);if(s===null)return e;let n=s[1];return e.split(`
3
3
  `).map(i=>{let l=i.match(t.other.beginningSpace);if(l===null)return i;let[a]=l;return a.length>=n.length?i.slice(n.length):i}).join(`
4
4
  `)}var B=class{options;rules;lexer;constructor(r){this.options=r||v}space(r){let e=this.rules.block.newline.exec(r);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(r){let e=this.rules.block.code.exec(r);if(e){let t=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?t:z(t,`
@@ -1 +1 @@
1
- import{la as o}from"./chunk-WJPLJKPQ.js";import{a as s}from"./chunk-73RDJP55.js";import{_ as e,eb as n}from"./chunk-QDFCX6XE.js";var m=class i{#t=e(s);#r=e(o);convertTimestamp(t){let r=/^(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})(\d{2})Z$/.exec(t);if(r){let[a,p,f,c,d,u,h]=r;return`${p}-${f}-${c}T${d}:${u}:${h}Z`}return t}transform(t,r=!1,...a){return t?r?this.#r.transform(t,"short"):(this.#t.locale(),typeof t=="string"&&(t=this.convertTimestamp(t)),this.#t(t).fromNow()):"N/A"}static \u0275fac=function(r){return new(r||i)};static \u0275pipe=n({name:"relativeTime",type:i,pure:!0})};export{m as a};
1
+ import{la as o}from"./chunk-RUXCS4ZK.js";import{a as s}from"./chunk-6OPAGPKF.js";import{_ as e,eb as n}from"./chunk-HNWRQABR.js";var m=class i{#t=e(s);#r=e(o);convertTimestamp(t){let r=/^(\d{4})(\d{2})(\d{2})T(\d{2})(\d{2})(\d{2})Z$/.exec(t);if(r){let[a,p,f,c,d,u,h]=r;return`${p}-${f}-${c}T${d}:${u}:${h}Z`}return t}transform(t,r=!1,...a){return t?r?this.#r.transform(t,"short"):(this.#t.locale(),typeof t=="string"&&(t=this.convertTimestamp(t)),this.#t(t).fromNow()):"N/A"}static \u0275fac=function(r){return new(r||i)};static \u0275pipe=n({name:"relativeTime",type:i,pure:!0})};export{m as a};
@@ -1,2 +1,2 @@
1
- import{b as q}from"./chunk-QGFC5ZUR.js";import{a as W,d as X,g as z}from"./chunk-WRNQOX5R.js";import{h as J}from"./chunk-J3BBLPAD.js";import"./chunk-WJPLJKPQ.js";import"./chunk-FPPZ4BUR.js";import{Ab as o,Bb as r,Cb as u,Jb as f,Oa as v,Pc as G,Qb as P,Ra as a,Rb as N,Sb as y,Wb as C,Yb as S,_ as E,bb as F,ea as p,fa as _,lc as s,mc as h,nc as I,oa as g,oc as w,qc as B,r as T,rc as $,sc as k,ub as M,vb as D,wb as R,wc as V,xb as x,yb as A,zb as m,zc as U}from"./chunk-QDFCX6XE.js";import{a as b,b as O}from"./chunk-EUDKD2JW.js";var H=()=>({maxWidth:"700px",width:"100%"});function j(l,t){if(l&1&&(o(0,"a",9)(1,"sh-icon"),s(2,"link"),r()()),l&2){let e=S().$implicit;m("href",V(e.Url),v)}}function K(l,t){if(l&1){let e=f();o(0,"div",2)(1,"h4"),s(2),M(3,j,3,2,"a",9),r(),o(4,"p"),s(5),u(6,"br"),o(7,"i"),s(8),r()(),o(9,"div",10)(10,"button",11),C("click",function(){let i=p(e).$implicit,c=S();return _(c.openLicense(i))}),P(11,1),u(12,"sh-icon"),N(),r()()()}if(l&2){let e=t.$implicit;a(2),w(" ",e.Title," - ",e.data==null?null:e.data.license," "),a(),D(e.Url?3:-1),a(2),I(" ",e.data==null?null:e.data.description," "),a(3),h(e.data==null?null:e.data.notes)}}var L=class l{#e=E(J);licenses=q(this.#e.getApiV1Licenses().pipe(T(t=>t.map(e=>O(b({},e),{data:e.Jsondata?JSON.parse(e.Jsondata):null})))));dialogIsOpen=g(!1);dialogLicense=g(null);#t=G(()=>{this.dialogLicense()&&this.dialogIsOpen.set(!0)});openLicense(t){this.dialogLicense.set(t)}closeLicense(){this.dialogIsOpen.set(!1),this.dialogLicense.set(null)}breakIntoLines(t){let e=t.split(`
1
+ import{b as q}from"./chunk-O64ZZGQZ.js";import{a as W,d as X,g as z}from"./chunk-H7K35UUX.js";import{h as J}from"./chunk-NOPMCS2Z.js";import"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import{Ab as o,Bb as r,Cb as u,Jb as f,Oa as v,Pc as G,Qb as P,Ra as a,Rb as N,Sb as y,Wb as C,Yb as S,_ as E,bb as F,ea as p,fa as _,lc as s,mc as h,nc as I,oa as g,oc as w,qc as B,r as T,rc as $,sc as k,ub as M,vb as D,wb as R,wc as V,xb as x,yb as A,zb as m,zc as U}from"./chunk-HNWRQABR.js";import{a as b,b as O}from"./chunk-EUDKD2JW.js";var H=()=>({maxWidth:"700px",width:"100%"});function j(l,t){if(l&1&&(o(0,"a",9)(1,"sh-icon"),s(2,"link"),r()()),l&2){let e=S().$implicit;m("href",V(e.Url),v)}}function K(l,t){if(l&1){let e=f();o(0,"div",2)(1,"h4"),s(2),M(3,j,3,2,"a",9),r(),o(4,"p"),s(5),u(6,"br"),o(7,"i"),s(8),r()(),o(9,"div",10)(10,"button",11),C("click",function(){let i=p(e).$implicit,c=S();return _(c.openLicense(i))}),P(11,1),u(12,"sh-icon"),N(),r()()()}if(l&2){let e=t.$implicit;a(2),w(" ",e.Title," - ",e.data==null?null:e.data.license," "),a(),D(e.Url?3:-1),a(2),I(" ",e.data==null?null:e.data.description," "),a(3),h(e.data==null?null:e.data.notes)}}var L=class l{#e=E(J);licenses=q(this.#e.getApiV1Licenses().pipe(T(t=>t.map(e=>O(b({},e),{data:e.Jsondata?JSON.parse(e.Jsondata):null})))));dialogIsOpen=g(!1);dialogLicense=g(null);#t=G(()=>{this.dialogLicense()&&this.dialogIsOpen.set(!0)});openLicense(t){this.dialogLicense.set(t)}closeLicense(){this.dialogIsOpen.set(!1),this.dialogLicense.set(null)}breakIntoLines(t){let e=t.split(`
2
2
  `),n="";for(let i=0;i<e.length;i++)n+=`<li>${e[i]}</li>`;return n}static \u0275fac=function(e){return new(e||l)};static \u0275cmp=F({type:l,selectors:[["app-libraries"]],decls:14,vars:5,consts:()=>{let t;t=$localize`Libraries`;let e;return e=$localize` Details ${"\uFFFD#12\uFFFD"}:START_TAG_SH_ICON:arrow-square-in${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SH_ICON:`,[t,e,[1,"license"],[3,"isOpenChange","isOpen","options"],["header",""],["content",""],[1,"license-dialog"],["footer",""],["shButton","","type","button",3,"click"],[3,"href"],[1,"actions"],["shButton","",3,"click"]]},template:function(e,n){if(e&1){let i=f();o(0,"h3"),y(1,0),r(),x(2,K,13,5,"div",2,R),o(4,"sh-dialog",3),k("isOpenChange",function(d){return p(i),$(n.dialogIsOpen,d)||(n.dialogIsOpen=d),_(d)}),o(5,"header",4)(6,"h3"),s(7),r()(),o(8,"div",5)(9,"div",6),s(10),r()(),o(11,"footer",7)(12,"button",8),C("click",function(){return p(i),n.dialogLicense.set(null),_(n.dialogIsOpen.set(!1))}),s(13,"Close"),r()()()}if(e&2){let i,c;a(2),A(n.licenses()),a(2),B("isOpen",n.dialogIsOpen),m("options",U(4,H)),a(3),h((i=n.dialogLicense())==null?null:i.Title);let d=((c=n.dialogLicense())==null?null:c.License)??"";a(3),I(" ",d," ")}},dependencies:[W,z,X],styles:["[_nghost-%COMP%]{display:block}h3[_ngcontent-%COMP%]{font:var(--title-30);margin:0 0 1.25rem}h4[_ngcontent-%COMP%]{font:var(--paragraph-10)}a[_ngcontent-%COMP%]{text-decoration:none}.license[_ngcontent-%COMP%]{padding:1rem;border-bottom:1px solid var(--base-4);display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.license[_ngcontent-%COMP%]:first-of-type{border-top:1px solid var(--base-4)}.license[_ngcontent-%COMP%] .actions[_ngcontent-%COMP%]{display:flex;gap:.25rem;align-items:center}.license-dialog[_ngcontent-%COMP%]{background-color:var(--base-1);color:var(--base-12);padding:2.5rem 2.5rem 2.5rem 1.5rem;border-radius:var(--shape-3);overflow:auto;max-height:31.25rem;white-space:pre;border:1px solid var(--base-4)}"],changeDetection:0})};export{L as default};
@@ -1 +1 @@
1
- import{a as _}from"./chunk-6GC5VKTI.js";import"./chunk-QGFC5ZUR.js";import"./chunk-J3BBLPAD.js";import{oa as l}from"./chunk-WJPLJKPQ.js";import"./chunk-FPPZ4BUR.js";import{Db as n,Dc as g,Eb as i,Ec as d,Ra as a,Sb as p,_ as s,bb as S,lc as c,mc as m}from"./chunk-QDFCX6XE.js";import"./chunk-EUDKD2JW.js";var o=class r{#e=s(_);serverSettings=this.#e.serverSettings;static \u0275fac=function(e){return new(e||r)};static \u0275cmp=S({type:r,selectors:[["app-server-settings"]],decls:6,vars:3,consts:()=>{let t;return t=$localize`System settings`,[t]},template:function(e,f){e&1&&(n(0,"h3"),p(1,0),i(),n(2,"code")(3,"pre"),c(4),g(5,"json"),i()()),e&2&&(a(4),m(d(5,1,f.serverSettings())))},dependencies:[l],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}h3[_ngcontent-%COMP%]{font:var(--title-30)}code[_ngcontent-%COMP%]{background:color-mix(in srgb,var(--base-8),#000 70%);color:#fff;padding:1rem 1.5rem;border-radius:var(--shape-3);overflow:auto;white-space:pre}"],changeDetection:0})};export{o as default};
1
+ import{a as _}from"./chunk-7IQY6U5W.js";import"./chunk-O64ZZGQZ.js";import"./chunk-NOPMCS2Z.js";import{oa as l}from"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import{Db as n,Dc as g,Eb as i,Ec as d,Ra as a,Sb as p,_ as s,bb as S,lc as c,mc as m}from"./chunk-HNWRQABR.js";import"./chunk-EUDKD2JW.js";var o=class r{#e=s(_);serverSettings=this.#e.serverSettings;static \u0275fac=function(e){return new(e||r)};static \u0275cmp=S({type:r,selectors:[["app-server-settings"]],decls:6,vars:3,consts:()=>{let t;return t=$localize`System settings`,[t]},template:function(e,f){e&1&&(n(0,"h3"),p(1,0),i(),n(2,"code")(3,"pre"),c(4),g(5,"json"),i()()),e&2&&(a(4),m(d(5,1,f.serverSettings())))},dependencies:[l],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;gap:1.5rem}h3[_ngcontent-%COMP%]{font:var(--title-30)}code[_ngcontent-%COMP%]{background:color-mix(in srgb,var(--base-8),#000 70%);color:#fff;padding:1rem 1.5rem;border-radius:var(--shape-3);overflow:auto;white-space:pre}"],changeDetection:0})};export{o as default};
@@ -0,0 +1 @@
1
+ import"./chunk-EUDKD2JW.js";var o=[{path:"",redirectTo:"general",pathMatch:"full"},{path:"general",loadComponent:()=>import("./chunk-A6VGO6B5.js")},{path:"destination",loadComponent:()=>import("./chunk-FFEDQIYN.js")},{path:"source-data",loadComponent:()=>import("./chunk-BPJCKQYP.js")},{path:"schedule",loadComponent:()=>import("./chunk-UIIHBXLB.js")},{path:"options",loadComponent:()=>import("./chunk-7B43LCPI.js")}];export{o as default};
@@ -0,0 +1 @@
1
+ import{d as a,e as b}from"./chunk-MSLKIHQQ.js";import"./chunk-N6ABN43N.js";import"./chunk-DDWLL7XA.js";import"./chunk-2QJC4PGQ.js";import"./chunk-O64ZZGQZ.js";import"./chunk-DELLEGXW.js";import"./chunk-RHW5QVAY.js";import"./chunk-VTSUHAP5.js";import"./chunk-N5SC4SKW.js";import"./chunk-LVP2TPMO.js";import"./chunk-43JMN2ZY.js";import"./chunk-H7K35UUX.js";import"./chunk-NOPMCS2Z.js";import"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import"./chunk-HNWRQABR.js";import"./chunk-EUDKD2JW.js";export{a as SCHEDULE_FIELD_DEFAULTS,b as default};
@@ -1 +1 @@
1
- import{a as v}from"./chunk-66BSPEOQ.js";import{b as L,d as j}from"./chunk-ETCRT3EV.js";import{e as f}from"./chunk-WRNQOX5R.js";import{h as b}from"./chunk-J3BBLPAD.js";import{qa as $}from"./chunk-WJPLJKPQ.js";import{Db as y,Dc as P,Eb as N,Fb as R,Fc as W,Oc as p,Pc as G,Q as E,Qb as I,Ra as O,Rb as _,Sb as w,Tb as A,Ub as F,V as h,_ as r,bb as M,f as m,i as k,oa as s}from"./chunk-QDFCX6XE.js";var S=class i{reconnectTimer=s(15e3);countdown=s(0);connectTimerEffect=G(()=>{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||i)};static \u0275cmp=M({type:i,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,n){t&1&&(y(0,"header",2)(1,"h3"),w(2,0),N()(),y(3,"div",3)(4,"p"),I(5,1),R(6,"strong"),P(7,"number"),_(),N()()),t&2&&(O(7),A(W(7,1,n.countdown(),"2.0-0")),F(5))},dependencies:[$],styles:["[_nghost-%COMP%]{display:block;padding:1rem}"],changeDetection:0})};var D=class i{dialog=r(f);#t=r(b);#i=s("disconnected");#n=s(null);#e=s(-1);#c=s(0);#l=s(!1);#u=new k;connectionStatus=this.#i.asReadonly();serverState=this.#n.asReadonly();#s=void 0;duration=r(L).relayIsEnabled()?"94s":"299s";start(){this.#l.set(!0),this.#u=new k,this.#o()}stop(){this.#u.next(),this.#u.complete(),this.#l.set(!1)}reconnect(){this.stop(),this.start()}reconnectIfNeeded(){this.#l()||this.reconnect()}#o(){this.#i.set("connecting"),this.#t.getApiV1Serverstate({lastEventId:this.#e(),longpoll:this.#e()>=0,duration:this.duration}).pipe(E(this.#u)).subscribe({next:e=>{e&&this.#r(e),this.#a()},error:e=>{let n=this.#c()+1,a=Math.min(5e3*n,3e4);this.#c.set(n),n>3&&this.#i.set("disconnected"),this.#s||(this.#s=this.dialog.open(S,{closeOnButton:!1,closeOnEsc:!1,closeOnOutsideClick:!1})),this.#s.component.reconnectTimer.set(a),setTimeout(()=>{this.#o()},a)}})}#r(e){this.#i.set("connected"),this.#n.set(e),this.#e.set(e.LastEventID??-1),this.#c.set(0)}#a(){this.#l()&&this.#o()}static \u0275fac=function(t){return new(t||i)};static \u0275prov=h({token:i,factory:i.\u0275fac,providedIn:"root"})};var u=!1,T=class i{#t=r(j);#i=r(v);dialog=r(f);#n=null;#e=s("disconnected");#c=s(null);#l=s(null);#u=s(null);#s=s(null);#o=void 0;#r=s({legacystatus:!0});shouldConnect=s(!0);connectionStatus=this.#e.asReadonly();serverState=this.#c.asReadonly();serverProgress=this.#l.asReadonly();subscriptions=this.#r.asReadonly();serverTaskQueue=this.#u.asReadonly();backupListState=this.#s.asReadonly();#a=null;taskCompleted=new m(e=>{this.#a=e});#h=0;start(){this.#d(),this.shouldConnect.set(!0)}#d(){let e=this.#t.token();if(!e){console.error("No access token available");return}let t=window.location.protocol==="https:"?"wss:":"ws:",n=window.location.port?`:${window.location.port}`:"";window.location.port==="4200"&&(n=":8200");let a=window.location.hostname,g=this.#i.hasWebSocketAuth()?`${t}//${a}${n}/notifications`:`${t}//${a}${n}/notifications?token=${e}`;this.#e.set("connecting"),this.#n=new WebSocket(g),this.#n.onopen=()=>{u&&console.log("WebSocket connection established"),this.#i.hasWebSocketAuth()?(this.#e.set("authenticating"),this.#n?.send(JSON.stringify({Version:1,Token:e}))):this.#p()},this.#n.onmessage=d=>{if(this.#e()==="authenticating")try{let o=JSON.parse(d.data);o.Success?(u&&console.log("WebSocket authentication successful"),this.#p()):(console.error("WebSocket authentication failed:",o.Message),this.#e.set("disconnected"));return}catch(o){console.error("Error parsing WebSocket authentication reply",o),this.#e.set("disconnected");return}try{let o=JSON.parse(d.data),l=o?.Type;if(l==="legacystatus"||l==null)u&&console.log("Received legacy status update:",o),this.#c.set(o);else if(l==="reply"){let c=o;c.Success||console.error("WebSocket reply error:",c.Message)}else if(l==="progress"){let c=o;u&&console.log("Received progress update:",c.Data),this.#l.set(c.Data)}else if(l==="taskqueue"){let c=o;u&&console.log("Received task update:",c.Data),this.#u.set(c.Data)}else if(l==="taskcompleted"){let c=o;u&&console.log("Received task completed:",c.Data),this.#a?.next(c.Data)}else if(l==="backuplist"){let c=o;u&&console.log("Received backup list update:",c.Data),this.#s.set(c.Data)}else console.warn("Unknown WebSocket message type:",l)}catch(o){console.error("Error parsing WebSocket message",o)}},this.#n.onclose=d=>{u&&console.log("WebSocket connection closed",d),this.#e.set("disconnected"),this.shouldConnect()&&(this.#o||(this.#o=this.dialog.open(S,{closeOnButton:!1,closeOnEsc:!1,closeOnOutsideClick:!1}),this.#o.component.reconnectTimer.set(15e3)),setTimeout(()=>this.#d(),5e3))},this.#n.onerror=d=>{console.error("WebSocket error",d),this.#e.set("disconnected")}}#p(){this.#e.set("connected");let e=this.#r();Object.keys(e).length>0&&Object.entries(e).forEach(([t,n])=>{n!=null&&this.sendSubscribeRequest(t,n)}),this.#o&&this.#o.close()}stop(){this.shouldConnect.set(!1),this.#n?.close()}reconnect(){this.#n?.close(),this.start()}reconnectIfNeeded(){this.#n?.readyState!==WebSocket.OPEN&&this.reconnect()}sendSubscribeRequest(e,t){this.#n?.send(JSON.stringify({Version:1,Id:`req-${++this.#h}`,Action:"sub",Service:e,Data:t||null}))}subscribe(e,t=void 0){let n=this.#r(),a=n[e];(!a||JSON.stringify(a)!==JSON.stringify(t||!0))&&(n[e]=t||!0,this.#r.set(n),this.#e()=="connected"&&this.sendSubscribeRequest(e,t))}unsubscribe(e){let t=this.#r();t[e]&&(delete t[e],this.#r.set(t),this.#e()=="connected"&&this.#n?.send(JSON.stringify({Version:1,Id:`req-${++this.#h}`,Action:"unsub",Service:e})))}static \u0275fac=function(t){return new(t||i)};static \u0275prov=h({token:i,factory:i.\u0275fac,providedIn:"root"})};var x=10,q=class i{#t=r(T);#i=r(D);#n=r(b);#e=r(v);#c=s("longpoll");#l=s(!1);#u=p(()=>this.#e.hasTaskCompletedOption()&&this.#c()==="websocket");#s={};#o=null;#r=!1;#a=[];constructor(){this.#t.subscribe("taskcompleted"),this.#t.taskCompleted.subscribe(e=>{if(this.#a.unshift(e),this.#a.length>x&&this.#a.pop(),!e.ID)return;let t=this.#s[e.ID];t&&(t.forEach(n=>{n.next(e),n.complete()}),delete this.#s[e.ID])})}connectionStatus=p(()=>this.#c()==="websocket"?this.#t.connectionStatus():this.#i.connectionStatus());isConnectionMethodSet=this.#l.asReadonly();serverState=p(()=>this.#c()==="websocket"?this.#t.serverState():this.#i.serverState());progressState=this.#t.serverProgress;taskQueueState=this.#t.serverTaskQueue;activeTaskQueueState=p(()=>this.#c()==="websocket"?this.#t.serverTaskQueue()?.map(t=>t.ID).filter(t=>t)??[]:(this.#i.serverState()?.SchedulerQueueIds??[]).map(t=>t.Item1).filter(t=>t));backupListState=p(()=>this.#t.backupListState());setConnectionMethod(e){e==="websocket"?(this.#t.reconnectIfNeeded(),this.#i.stop()):(this.#i.reconnectIfNeeded(),this.#t.stop()),this.#c.set(e),this.#l.set(!0)}getConnectionMethod(){return this.#c()}subscribe(e,t=null){this.#t.subscribe(e,t)}unsubscribe(e){this.#t.unsubscribe(e)}waitForTaskToComplete(e){return new m(t=>{let n=this.#a.find(a=>a.ID===e);if(n){t.next(n),t.complete();return}this.#s[e]=this.#s[e]||[],this.#s[e].push(t),this.#h()})}#h(){this.#r||this.#u()||(this.#r=!0,this.#d())}#d(){let e=Object.keys(this.#s).map(n=>parseInt(n,10));if(e.length===0){this.#p();return}let t=Math.min(...e);this.#n.getApiV1TaskByTaskid({taskid:t}).subscribe({next:n=>{n.TaskFinished!=null&&(this.#a.unshift(n),this.#a.length>x&&this.#a.pop(),this.#s[t].forEach(g=>{g.next(n),g.complete()}),delete this.#s[t])},complete:()=>{this.#o=window.setTimeout(()=>{this.#d()},1e3)},error:n=>{this.#o=window.setTimeout(()=>{this.#d()},3e3)}})}#p(){this.#o!==null&&(clearTimeout(this.#o),this.#o=null),this.#r=!1}static \u0275fac=function(t){return new(t||i)};static \u0275prov=h({token:i,factory:i.\u0275fac,providedIn:"root"})};export{q as a};
1
+ import{a as v}from"./chunk-VTSUHAP5.js";import{b as L,d as j}from"./chunk-UKQFDBNO.js";import{e as f}from"./chunk-H7K35UUX.js";import{h as b}from"./chunk-NOPMCS2Z.js";import{qa as $}from"./chunk-RUXCS4ZK.js";import{Db as y,Dc as P,Eb as N,Fb as R,Fc as W,Oc as p,Pc as G,Q as E,Qb as I,Ra as O,Rb as _,Sb as w,Tb as A,Ub as F,V as h,_ as r,bb as M,f as m,i as k,oa as s}from"./chunk-HNWRQABR.js";var S=class i{reconnectTimer=s(15e3);countdown=s(0);connectTimerEffect=G(()=>{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||i)};static \u0275cmp=M({type:i,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,n){t&1&&(y(0,"header",2)(1,"h3"),w(2,0),N()(),y(3,"div",3)(4,"p"),I(5,1),R(6,"strong"),P(7,"number"),_(),N()()),t&2&&(O(7),A(W(7,1,n.countdown(),"2.0-0")),F(5))},dependencies:[$],styles:["[_nghost-%COMP%]{display:block;padding:1rem}"],changeDetection:0})};var D=class i{dialog=r(f);#t=r(b);#i=s("disconnected");#n=s(null);#e=s(-1);#c=s(0);#l=s(!1);#u=new k;connectionStatus=this.#i.asReadonly();serverState=this.#n.asReadonly();#s=void 0;duration=r(L).relayIsEnabled()?"94s":"299s";start(){this.#l.set(!0),this.#u=new k,this.#o()}stop(){this.#u.next(),this.#u.complete(),this.#l.set(!1)}reconnect(){this.stop(),this.start()}reconnectIfNeeded(){this.#l()||this.reconnect()}#o(){this.#i.set("connecting"),this.#t.getApiV1Serverstate({lastEventId:this.#e(),longpoll:this.#e()>=0,duration:this.duration}).pipe(E(this.#u)).subscribe({next:e=>{e&&this.#r(e),this.#a()},error:e=>{let n=this.#c()+1,a=Math.min(5e3*n,3e4);this.#c.set(n),n>3&&this.#i.set("disconnected"),this.#s||(this.#s=this.dialog.open(S,{closeOnButton:!1,closeOnEsc:!1,closeOnOutsideClick:!1})),this.#s.component.reconnectTimer.set(a),setTimeout(()=>{this.#o()},a)}})}#r(e){this.#i.set("connected"),this.#n.set(e),this.#e.set(e.LastEventID??-1),this.#c.set(0)}#a(){this.#l()&&this.#o()}static \u0275fac=function(t){return new(t||i)};static \u0275prov=h({token:i,factory:i.\u0275fac,providedIn:"root"})};var u=!1,T=class i{#t=r(j);#i=r(v);dialog=r(f);#n=null;#e=s("disconnected");#c=s(null);#l=s(null);#u=s(null);#s=s(null);#o=void 0;#r=s({legacystatus:!0});shouldConnect=s(!0);connectionStatus=this.#e.asReadonly();serverState=this.#c.asReadonly();serverProgress=this.#l.asReadonly();subscriptions=this.#r.asReadonly();serverTaskQueue=this.#u.asReadonly();backupListState=this.#s.asReadonly();#a=null;taskCompleted=new m(e=>{this.#a=e});#h=0;start(){this.#d(),this.shouldConnect.set(!0)}#d(){let e=this.#t.token();if(!e){console.error("No access token available");return}let t=window.location.protocol==="https:"?"wss:":"ws:",n=window.location.port?`:${window.location.port}`:"";window.location.port==="4200"&&(n=":8200");let a=window.location.hostname,g=this.#i.hasWebSocketAuth()?`${t}//${a}${n}/notifications`:`${t}//${a}${n}/notifications?token=${e}`;this.#e.set("connecting"),this.#n=new WebSocket(g),this.#n.onopen=()=>{u&&console.log("WebSocket connection established"),this.#i.hasWebSocketAuth()?(this.#e.set("authenticating"),this.#n?.send(JSON.stringify({Version:1,Token:e}))):this.#p()},this.#n.onmessage=d=>{if(this.#e()==="authenticating")try{let o=JSON.parse(d.data);o.Success?(u&&console.log("WebSocket authentication successful"),this.#p()):(console.error("WebSocket authentication failed:",o.Message),this.#e.set("disconnected"));return}catch(o){console.error("Error parsing WebSocket authentication reply",o),this.#e.set("disconnected");return}try{let o=JSON.parse(d.data),l=o?.Type;if(l==="legacystatus"||l==null)u&&console.log("Received legacy status update:",o),this.#c.set(o);else if(l==="reply"){let c=o;c.Success||console.error("WebSocket reply error:",c.Message)}else if(l==="progress"){let c=o;u&&console.log("Received progress update:",c.Data),this.#l.set(c.Data)}else if(l==="taskqueue"){let c=o;u&&console.log("Received task update:",c.Data),this.#u.set(c.Data)}else if(l==="taskcompleted"){let c=o;u&&console.log("Received task completed:",c.Data),this.#a?.next(c.Data)}else if(l==="backuplist"){let c=o;u&&console.log("Received backup list update:",c.Data),this.#s.set(c.Data)}else console.warn("Unknown WebSocket message type:",l)}catch(o){console.error("Error parsing WebSocket message",o)}},this.#n.onclose=d=>{u&&console.log("WebSocket connection closed",d),this.#e.set("disconnected"),this.shouldConnect()&&(this.#o||(this.#o=this.dialog.open(S,{closeOnButton:!1,closeOnEsc:!1,closeOnOutsideClick:!1}),this.#o.component.reconnectTimer.set(15e3)),setTimeout(()=>this.#d(),5e3))},this.#n.onerror=d=>{console.error("WebSocket error",d),this.#e.set("disconnected")}}#p(){this.#e.set("connected");let e=this.#r();Object.keys(e).length>0&&Object.entries(e).forEach(([t,n])=>{n!=null&&this.sendSubscribeRequest(t,n)}),this.#o&&this.#o.close()}stop(){this.shouldConnect.set(!1),this.#n?.close()}reconnect(){this.#n?.close(),this.start()}reconnectIfNeeded(){this.#n?.readyState!==WebSocket.OPEN&&this.reconnect()}sendSubscribeRequest(e,t){this.#n?.send(JSON.stringify({Version:1,Id:`req-${++this.#h}`,Action:"sub",Service:e,Data:t||null}))}subscribe(e,t=void 0){let n=this.#r(),a=n[e];(!a||JSON.stringify(a)!==JSON.stringify(t||!0))&&(n[e]=t||!0,this.#r.set(n),this.#e()=="connected"&&this.sendSubscribeRequest(e,t))}unsubscribe(e){let t=this.#r();t[e]&&(delete t[e],this.#r.set(t),this.#e()=="connected"&&this.#n?.send(JSON.stringify({Version:1,Id:`req-${++this.#h}`,Action:"unsub",Service:e})))}static \u0275fac=function(t){return new(t||i)};static \u0275prov=h({token:i,factory:i.\u0275fac,providedIn:"root"})};var x=10,q=class i{#t=r(T);#i=r(D);#n=r(b);#e=r(v);#c=s("longpoll");#l=s(!1);#u=p(()=>this.#e.hasTaskCompletedOption()&&this.#c()==="websocket");#s={};#o=null;#r=!1;#a=[];constructor(){this.#t.subscribe("taskcompleted"),this.#t.taskCompleted.subscribe(e=>{if(this.#a.unshift(e),this.#a.length>x&&this.#a.pop(),!e.ID)return;let t=this.#s[e.ID];t&&(t.forEach(n=>{n.next(e),n.complete()}),delete this.#s[e.ID])})}connectionStatus=p(()=>this.#c()==="websocket"?this.#t.connectionStatus():this.#i.connectionStatus());isConnectionMethodSet=this.#l.asReadonly();serverState=p(()=>this.#c()==="websocket"?this.#t.serverState():this.#i.serverState());progressState=this.#t.serverProgress;taskQueueState=this.#t.serverTaskQueue;activeTaskQueueState=p(()=>this.#c()==="websocket"?this.#t.serverTaskQueue()?.map(t=>t.ID).filter(t=>t)??[]:(this.#i.serverState()?.SchedulerQueueIds??[]).map(t=>t.Item1).filter(t=>t));backupListState=p(()=>this.#t.backupListState());setConnectionMethod(e){e==="websocket"?(this.#t.reconnectIfNeeded(),this.#i.stop()):(this.#i.reconnectIfNeeded(),this.#t.stop()),this.#c.set(e),this.#l.set(!0)}getConnectionMethod(){return this.#c()}subscribe(e,t=null){this.#t.subscribe(e,t)}unsubscribe(e){this.#t.unsubscribe(e)}waitForTaskToComplete(e){return new m(t=>{let n=this.#a.find(a=>a.ID===e);if(n){t.next(n),t.complete();return}this.#s[e]=this.#s[e]||[],this.#s[e].push(t),this.#h()})}#h(){this.#r||this.#u()||(this.#r=!0,this.#d())}#d(){let e=Object.keys(this.#s).map(n=>parseInt(n,10));if(e.length===0){this.#p();return}let t=Math.min(...e);this.#n.getApiV1TaskByTaskid({taskid:t}).subscribe({next:n=>{n.TaskFinished!=null&&(this.#a.unshift(n),this.#a.length>x&&this.#a.pop(),this.#s[t].forEach(g=>{g.next(n),g.complete()}),delete this.#s[t])},complete:()=>{this.#o=window.setTimeout(()=>{this.#d()},1e3)},error:n=>{this.#o=window.setTimeout(()=>{this.#d()},3e3)}})}#p(){this.#o!==null&&(clearTimeout(this.#o),this.#o=null),this.#r=!1}static \u0275fac=function(t){return new(t||i)};static \u0275prov=h({token:i,factory:i.\u0275fac,providedIn:"root"})};export{q as a};
@@ -1 +1 @@
1
- import{d as T}from"./chunk-L2EO4M4B.js";import{a as y,c as O,h as b}from"./chunk-J3BBLPAD.js";import{Aa as o,za as P}from"./chunk-WJPLJKPQ.js";import{B as A,F as l,H as N,R as g,V as a,_ as i,f as I,k as S,n as E,oa as n,r as R,ya as v}from"./chunk-QDFCX6XE.js";var c=class r{platformId=i(v);STORAGE_VERSION="v1";APP_NAME="duplicati";PERSISTED_PREFIX="persist:";getItemParsed(e,t=!1){return o(this.platformId)?null:JSON.parse(localStorage.getItem(`${this.STORAGE_VERSION}:${t?this.PERSISTED_PREFIX:""}${this.APP_NAME}:${e}`)??"null")}setItemParsed(e,t,s=!1){if(!o(this.platformId))return localStorage.setItem(`${this.STORAGE_VERSION}:${s?this.PERSISTED_PREFIX:""}${this.APP_NAME}:${e}`,JSON.stringify(t))}get length(){return P(this.platformId)?localStorage.length:0}getItem(e){return o(this.platformId)?null:localStorage.getItem(`${this.STORAGE_VERSION}:${this.APP_NAME}:${e}`)??null}setItem(e,t){if(!o(this.platformId))return localStorage.setItem(`${this.STORAGE_VERSION}:${this.APP_NAME}:${e}`,t)}removeItem(e){o(this.platformId)||(localStorage.removeItem(`${this.STORAGE_VERSION}:${this.APP_NAME}:${e}`),localStorage.removeItem(`${this.STORAGE_VERSION}:${this.PERSISTED_PREFIX}${this.APP_NAME}:${e}`))}clearAllNotCurrentVersion(){if(!o(this.platformId))for(var e in localStorage)!e.startsWith(this.STORAGE_VERSION)&&e.includes(this.APP_NAME)&&localStorage.removeItem(e)}clearAll(){o(this.platformId)||localStorage.clear()}clear(){if(!o(this.platformId))for(var e in localStorage)e.includes(this.APP_NAME)&&!e.includes(this.PERSISTED_PREFIX)&&localStorage.removeItem(e)}key(e){return o(this.platformId)?null:localStorage.key(e)}static \u0275fac=function(t){return new(t||r)};static \u0275prov=a({token:r,factory:r.\u0275fac})};var f=class r{#i=i(c);#r=n(null);#t=window.self!==window.top;#s=n(this.#t);relayIsEnabled=this.#s.asReadonly();config=this.#r.asReadonly();configLoaded=this.#t?new S:null;isLoading=n(this.#t);parentIframeListner=null;parentOrigin="*";fetchConfig(){this.#o(),this.#t&&(this.#s.set(!0),this.parentIframeListner=new AbortController,this.#e("connected"),window.addEventListener("message",e=>{if(e.data.startsWith("access:")){let t=e.data.replace("access:",""),s=JSON.parse(t);if(!s?.accessToken||!s?.clientId){this.#e("error:invalid-config"),this.#s.set(!1);return}if(typeof s.clientId!="string"){this.#e("error:invalid-config"),this.#s.set(!1);return}if(typeof s.accessToken!="string"){this.#e("error:invalid-config"),this.#s.set(!1);return}let m=this.#i.getItem("locale")??"en-US",p=s.locale??"en-US";m!==p&&(this.#i.setItem("locale",p),window.location.reload()),this.#r.set(s),this.configLoaded?.next(!0),this.isLoading.set(!1),this.#e("handshake-complete")}},{signal:this.parentIframeListner.signal}))}#e(e){window.parent.postMessage(e,"*")}#o(){this.parentIframeListner&&(this.parentIframeListner.abort(),this.parentIframeListner=null)}setConfig(e){this.#r.set(e)}clearConfig(){this.#r.set(null)}static \u0275fac=function(t){return new(t||r)};static \u0275prov=a({token:r,factory:r.\u0275fac,providedIn:"root"})};var d="PROXY_AUTHED_FAKE_TOKEN",h="refreshNonce",u="v1:persist:duplicati:refreshNonce",L=class r{#i=i(T);#r=i(O);#t=i(b);#s=i(f);#e=n(null);#o=n(!1);token=this.#e.asReadonly();isLoggingOut=this.#o.asReadonly();setRefreshNonce(e,t){if(!e){sessionStorage.removeItem(h);return}t?localStorage.setItem(u,e||""):sessionStorage.setItem(h,e||"")}getRefreshNonceBody(){let e=sessionStorage.getItem(h),t=localStorage.getItem(u),s=e||t;return{body:s?{requestBody:{Nonce:s}}:void 0,local:s===t}}login(e,t){return this.#t.postApiV1AuthLogin({requestBody:{Password:e,RememberMe:t}}).pipe(l(1),g(s=>{s.AccessToken?(this.#e.set(s.AccessToken),this.setRefreshNonce(s.RefreshNonce,t)):this.#e.set(null)}))}refreshToken(){if(this.#s.relayIsEnabled())return this.#e.set(d),new I(s=>{s.next({AccessToken:d}),s.complete()});let{body:e,local:t}=this.getRefreshNonceBody();return this.#t.postApiV1AuthRefresh(e).pipe(l(1),g(s=>{s.AccessToken&&(this.#e.set(s.AccessToken),this.setRefreshNonce(s.RefreshNonce,t))}))}checkProxyAuthed(){let e=new y({"custom-proxy-check":"true"});return this.#r.get("/api/v1/systeminfo",{headers:e}).pipe(R(()=>(this.#e.set(d),!0)),A(()=>E(!1)))}logout(){this.#o.set(!0);let{body:e,local:t}=this.getRefreshNonceBody();sessionStorage.removeItem(h),t&&localStorage.removeItem(u),this.#t.postApiV1AuthRefreshLogout(e).pipe(l(1),N(()=>{this.#o.set(!1),this.#e.set(null),this.#i.navigate(["/login"])})).subscribe()}static \u0275fac=function(t){return new(t||r)};static \u0275prov=a({token:r,factory:r.\u0275fac,providedIn:"root"})};export{c as a,f as b,d as c,L as d};
1
+ import{d as T}from"./chunk-LVP2TPMO.js";import{a as y,c as O,h as b}from"./chunk-NOPMCS2Z.js";import{Aa as o,za as P}from"./chunk-RUXCS4ZK.js";import{B as A,F as l,H as N,R as g,V as a,_ as i,f as I,k as S,n as E,oa as n,r as R,ya as v}from"./chunk-HNWRQABR.js";var c=class r{platformId=i(v);STORAGE_VERSION="v1";APP_NAME="duplicati";PERSISTED_PREFIX="persist:";getItemParsed(e,t=!1){return o(this.platformId)?null:JSON.parse(localStorage.getItem(`${this.STORAGE_VERSION}:${t?this.PERSISTED_PREFIX:""}${this.APP_NAME}:${e}`)??"null")}setItemParsed(e,t,s=!1){if(!o(this.platformId))return localStorage.setItem(`${this.STORAGE_VERSION}:${s?this.PERSISTED_PREFIX:""}${this.APP_NAME}:${e}`,JSON.stringify(t))}get length(){return P(this.platformId)?localStorage.length:0}getItem(e){return o(this.platformId)?null:localStorage.getItem(`${this.STORAGE_VERSION}:${this.APP_NAME}:${e}`)??null}setItem(e,t){if(!o(this.platformId))return localStorage.setItem(`${this.STORAGE_VERSION}:${this.APP_NAME}:${e}`,t)}removeItem(e){o(this.platformId)||(localStorage.removeItem(`${this.STORAGE_VERSION}:${this.APP_NAME}:${e}`),localStorage.removeItem(`${this.STORAGE_VERSION}:${this.PERSISTED_PREFIX}${this.APP_NAME}:${e}`))}clearAllNotCurrentVersion(){if(!o(this.platformId))for(var e in localStorage)!e.startsWith(this.STORAGE_VERSION)&&e.includes(this.APP_NAME)&&localStorage.removeItem(e)}clearAll(){o(this.platformId)||localStorage.clear()}clear(){if(!o(this.platformId))for(var e in localStorage)e.includes(this.APP_NAME)&&!e.includes(this.PERSISTED_PREFIX)&&localStorage.removeItem(e)}key(e){return o(this.platformId)?null:localStorage.key(e)}static \u0275fac=function(t){return new(t||r)};static \u0275prov=a({token:r,factory:r.\u0275fac})};var f=class r{#i=i(c);#r=n(null);#t=window.self!==window.top;#s=n(this.#t);relayIsEnabled=this.#s.asReadonly();config=this.#r.asReadonly();configLoaded=this.#t?new S:null;isLoading=n(this.#t);parentIframeListner=null;parentOrigin="*";fetchConfig(){this.#o(),this.#t&&(this.#s.set(!0),this.parentIframeListner=new AbortController,this.#e("connected"),window.addEventListener("message",e=>{if(e.data.startsWith("access:")){let t=e.data.replace("access:",""),s=JSON.parse(t);if(!s?.accessToken||!s?.clientId){this.#e("error:invalid-config"),this.#s.set(!1);return}if(typeof s.clientId!="string"){this.#e("error:invalid-config"),this.#s.set(!1);return}if(typeof s.accessToken!="string"){this.#e("error:invalid-config"),this.#s.set(!1);return}let m=this.#i.getItem("locale")??"en-US",p=s.locale??"en-US";m!==p&&(this.#i.setItem("locale",p),window.location.reload()),this.#r.set(s),this.configLoaded?.next(!0),this.isLoading.set(!1),this.#e("handshake-complete")}},{signal:this.parentIframeListner.signal}))}#e(e){window.parent.postMessage(e,"*")}#o(){this.parentIframeListner&&(this.parentIframeListner.abort(),this.parentIframeListner=null)}setConfig(e){this.#r.set(e)}clearConfig(){this.#r.set(null)}static \u0275fac=function(t){return new(t||r)};static \u0275prov=a({token:r,factory:r.\u0275fac,providedIn:"root"})};var d="PROXY_AUTHED_FAKE_TOKEN",h="refreshNonce",u="v1:persist:duplicati:refreshNonce",L=class r{#i=i(T);#r=i(O);#t=i(b);#s=i(f);#e=n(null);#o=n(!1);token=this.#e.asReadonly();isLoggingOut=this.#o.asReadonly();setRefreshNonce(e,t){if(!e){sessionStorage.removeItem(h);return}t?localStorage.setItem(u,e||""):sessionStorage.setItem(h,e||"")}getRefreshNonceBody(){let e=sessionStorage.getItem(h),t=localStorage.getItem(u),s=e||t;return{body:s?{requestBody:{Nonce:s}}:void 0,local:s===t}}login(e,t){return this.#t.postApiV1AuthLogin({requestBody:{Password:e,RememberMe:t}}).pipe(l(1),g(s=>{s.AccessToken?(this.#e.set(s.AccessToken),this.setRefreshNonce(s.RefreshNonce,t)):this.#e.set(null)}))}refreshToken(){if(this.#s.relayIsEnabled())return this.#e.set(d),new I(s=>{s.next({AccessToken:d}),s.complete()});let{body:e,local:t}=this.getRefreshNonceBody();return this.#t.postApiV1AuthRefresh(e).pipe(l(1),g(s=>{s.AccessToken&&(this.#e.set(s.AccessToken),this.setRefreshNonce(s.RefreshNonce,t))}))}checkProxyAuthed(){let e=new y({"custom-proxy-check":"true"});return this.#r.get("/api/v1/systeminfo",{headers:e}).pipe(R(()=>(this.#e.set(d),!0)),A(()=>E(!1)))}logout(){this.#o.set(!0);let{body:e,local:t}=this.getRefreshNonceBody();sessionStorage.removeItem(h),t&&localStorage.removeItem(u),this.#t.postApiV1AuthRefreshLogout(e).pipe(l(1),N(()=>{this.#o.set(!1),this.#e.set(null),this.#i.navigate(["/login"])})).subscribe()}static \u0275fac=function(t){return new(t||r)};static \u0275prov=a({token:r,factory:r.\u0275fac,providedIn:"root"})};export{c as a,f as b,d as c,L as d};
@@ -1 +1 @@
1
- import{qa as l}from"./chunk-WJPLJKPQ.js";import{_ as p,eb as f}from"./chunk-QDFCX6XE.js";var m=class o{decimalPipe=p(l);transform(t,e=!1,i=!1){if(i&&t===0)return e?"0 Bytes":"0B";if(!t||t===0||(typeof t=="string"&&(t=parseInt(t)),isNaN(t)))return"";let a=this.#t(),n=a?["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"]:["Bytes","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],r=Math.floor(Math.log(t)/Math.log(a?1e3:1024));r=Math.min(r,n.length-1);let c=t/Math.pow(a?1e3:1024,r),s=this.decimalPipe.transform(c,"1.0-2");return s?`${s} ${e?n[r]:n[r].replace("Bytes","B")}`:""}#t(){if(navigator.userAgentData?.platform.toLowerCase().includes("mac"))return!0;let t=["mac","macintosh","os x","apple"],e=((navigator.userAgent||navigator.platform||navigator.vendor)??"").toLowerCase();return e?t.some(i=>e.includes(i)):!1}static \u0275fac=function(e){return new(e||o)};static \u0275pipe=f({name:"bytes",type:o,pure:!0})};export{m as a};
1
+ import{qa as l}from"./chunk-RUXCS4ZK.js";import{_ as p,eb as f}from"./chunk-HNWRQABR.js";var m=class o{decimalPipe=p(l);transform(t,e=!1,i=!1){if(i&&t===0)return e?"0 Bytes":"0B";if(!t||t===0||(typeof t=="string"&&(t=parseInt(t)),isNaN(t)))return"";let a=this.#t(),n=a?["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"]:["Bytes","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],r=Math.floor(Math.log(t)/Math.log(a?1e3:1024));r=Math.min(r,n.length-1);let c=t/Math.pow(a?1e3:1024,r),s=this.decimalPipe.transform(c,"1.0-2");return s?`${s} ${e?n[r]:n[r].replace("Bytes","B")}`:""}#t(){if(navigator.userAgentData?.platform.toLowerCase().includes("mac"))return!0;let t=["mac","macintosh","os x","apple"],e=((navigator.userAgent||navigator.platform||navigator.vendor)??"").toLowerCase();return e?t.some(i=>e.includes(i)):!1}static \u0275fac=function(e){return new(e||o)};static \u0275pipe=f({name:"bytes",type:o,pure:!0})};export{m as a};
@@ -1 +1 @@
1
- import{c as P,e as k,f as L,j as w,o as V,q as x,r as X,t as H}from"./chunk-USU2EHJV.js";import{d as A,e as I}from"./chunk-L2EO4M4B.js";import"./chunk-4YL5DZVH.js";import{B as v,a as B,c as y,g as b,l as $}from"./chunk-WRNQOX5R.js";import{h as G}from"./chunk-J3BBLPAD.js";import"./chunk-WJPLJKPQ.js";import"./chunk-FPPZ4BUR.js";import{Ab as r,Bb as i,Cb as _,H as g,P as T,Qb as C,Ra as F,Rb as E,Sb as f,Vb as O,Wb as m,_ as u,bb as R,ic as h,lc as N,oa as c,ub as S,vb as D,zb as p,zc as M}from"./chunk-QDFCX6XE.js";import"./chunk-EUDKD2JW.js";var U=()=>["/"];function j(l,e){l&1&&(r(0,"sh-form-field")(1,"label",11),f(2,2),i(),_(3,"input",12),i())}var a=new X,d=class l{#t=u(y);#e=u(G);#o=u(A);isRestoring=c(!1);isSecureFile=c(!1);importForm=a.group({config:a.control(""),cmdline:a.control(!1),importMetadata:a.control(!1),direct:a.control(!1),passphrase:a.control("")});selectedFile=c(null);onFileDropped(e){let t=e.target?.files?.item(0);if(t){let n=new FileReader;this.isSecureFile.set(t.type!=="application/json"),n.onload=this.#n.bind(this),n.readAsArrayBuffer(t)}}#n(e){let o=e.target?.result;this.importForm.patchValue({config:this.#i(o)})}#i(e){let o=new Uint8Array(e),t=o.byteLength,n="";for(let s=0;s<t;s++)n+=String.fromCharCode(o[s]);return btoa(n)}submit(){this.isRestoring.set(!0),this.#e.postApiV1BackupsImport({requestBody:this.importForm.value}).pipe(T(e=>{let t={Backup:e.data.Backup};return this.#e.postApiV1Backups({requestBody:t,temporary:!0})}),g(()=>this.isRestoring.set(!1))).subscribe({next:e=>{this.#o.navigate(["/restore-draft",e.ID])},error:e=>{this.#t.error(e.message)}})}static \u0275fac=function(o){return new(o||l)};static \u0275cmp=R({type:l,selectors:[["app-restore-from-config"]],decls:16,vars:7,consts:()=>{let e;e=$localize` Restore from config ${"\uFFFD#3\uFFFD"}:START_TAG_DIV:${"\uFFFD#4\uFFFD"}:START_TAG_BUTTON:${"[\uFFFD#5\uFFFD|\uFFFD#7\uFFFD]"}:START_TAG_SH_ICON:arrow-left${"[\uFFFD/#5\uFFFD|\uFFFD/#7\uFFFD]"}:CLOSE_TAG_SH_ICON: Back ${"[\uFFFD/#4\uFFFD|\uFFFD/#6\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD#6\uFFFD"}:START_TAG_BUTTON_1:${"[\uFFFD#5\uFFFD|\uFFFD#7\uFFFD]"}:START_TAG_SH_ICON:download-simple${"[\uFFFD/#5\uFFFD|\uFFFD/#7\uFFFD]"}:CLOSE_TAG_SH_ICON: Restore ${"[\uFFFD/#4\uFFFD|\uFFFD/#6\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD/#3\uFFFD"}:CLOSE_TAG_DIV:`,e=O(e);let o;o=$localize`Select a configuration file`;let t;return t=$localize`Passphrase`,[e,o,t,[1,"actions"],["shButton","","type","button",1,"outlined",3,"routerLink"],["shButton","","type","submit",1,"raised","primary",3,"click","disabled"],["autocomplete","off",3,"formGroup"],["shDragDrop","",3,"fileDropped"],["for","file"],["type","file","accept",".json,.aes",3,"change"],["suffix",""],["for","passphrase"],["type","password","formControlName","passphrase"]]},template:function(o,t){o&1&&(r(0,"header")(1,"h3"),C(2,0),r(3,"div",3)(4,"button",4),_(5,"sh-icon"),i(),r(6,"button",5),m("click",function(){return t.submit()}),_(7,"sh-icon"),i()(),E(),i()(),r(8,"form",6)(9,"sh-form-field",7),m("fileDropped",function(s){return t.onFileDropped(s)}),r(10,"label",8),f(11,1),i(),r(12,"input",9),m("change",function(s){return t.onFileDropped(s)}),i(),r(13,"sh-icon",10),N(14,"upload"),i()(),S(15,j,4,0,"sh-form-field"),i()),o&2&&(F(4),p("routerLink",M(6,U)),F(2),h("loader",t.isRestoring()),p("disabled",t.isRestoring()),F(2),p("formGroup",t.importForm),F(7),D(t.isSecureFile()?15:-1))},dependencies:[H,w,P,k,L,V,x,I,v,$,B,b],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;gap:2rem;padding:3rem}h3[_ngcontent-%COMP%]{font:var(--title-30);display:flex;align-items:center;justify-content:space-between}.actions[_ngcontent-%COMP%]{display:flex;gap:.5rem}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem;max-width:31.25rem}"],changeDetection:0})};export{d as default};
1
+ import{c as P,e as k,f as L,j as w,o as V,q as x,r as X,t as H}from"./chunk-N5SC4SKW.js";import{d as A,e as I}from"./chunk-LVP2TPMO.js";import"./chunk-43JMN2ZY.js";import{B as v,a as B,c as y,g as b,l as $}from"./chunk-H7K35UUX.js";import{h as G}from"./chunk-NOPMCS2Z.js";import"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import{Ab as r,Bb as i,Cb as _,H as g,P as T,Qb as C,Ra as F,Rb as E,Sb as f,Vb as O,Wb as m,_ as u,bb as R,ic as h,lc as N,oa as c,ub as S,vb as D,zb as p,zc as M}from"./chunk-HNWRQABR.js";import"./chunk-EUDKD2JW.js";var U=()=>["/"];function j(l,e){l&1&&(r(0,"sh-form-field")(1,"label",11),f(2,2),i(),_(3,"input",12),i())}var a=new X,d=class l{#t=u(y);#e=u(G);#o=u(A);isRestoring=c(!1);isSecureFile=c(!1);importForm=a.group({config:a.control(""),cmdline:a.control(!1),importMetadata:a.control(!1),direct:a.control(!1),passphrase:a.control("")});selectedFile=c(null);onFileDropped(e){let t=e.target?.files?.item(0);if(t){let n=new FileReader;this.isSecureFile.set(t.type!=="application/json"),n.onload=this.#n.bind(this),n.readAsArrayBuffer(t)}}#n(e){let o=e.target?.result;this.importForm.patchValue({config:this.#i(o)})}#i(e){let o=new Uint8Array(e),t=o.byteLength,n="";for(let s=0;s<t;s++)n+=String.fromCharCode(o[s]);return btoa(n)}submit(){this.isRestoring.set(!0),this.#e.postApiV1BackupsImport({requestBody:this.importForm.value}).pipe(T(e=>{let t={Backup:e.data.Backup};return this.#e.postApiV1Backups({requestBody:t,temporary:!0})}),g(()=>this.isRestoring.set(!1))).subscribe({next:e=>{this.#o.navigate(["/restore-draft",e.ID])},error:e=>{this.#t.error(e.message)}})}static \u0275fac=function(o){return new(o||l)};static \u0275cmp=R({type:l,selectors:[["app-restore-from-config"]],decls:16,vars:7,consts:()=>{let e;e=$localize` Restore from config ${"\uFFFD#3\uFFFD"}:START_TAG_DIV:${"\uFFFD#4\uFFFD"}:START_TAG_BUTTON:${"[\uFFFD#5\uFFFD|\uFFFD#7\uFFFD]"}:START_TAG_SH_ICON:arrow-left${"[\uFFFD/#5\uFFFD|\uFFFD/#7\uFFFD]"}:CLOSE_TAG_SH_ICON: Back ${"[\uFFFD/#4\uFFFD|\uFFFD/#6\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD#6\uFFFD"}:START_TAG_BUTTON_1:${"[\uFFFD#5\uFFFD|\uFFFD#7\uFFFD]"}:START_TAG_SH_ICON:download-simple${"[\uFFFD/#5\uFFFD|\uFFFD/#7\uFFFD]"}:CLOSE_TAG_SH_ICON: Restore ${"[\uFFFD/#4\uFFFD|\uFFFD/#6\uFFFD]"}:CLOSE_TAG_BUTTON:${"\uFFFD/#3\uFFFD"}:CLOSE_TAG_DIV:`,e=O(e);let o;o=$localize`Select a configuration file`;let t;return t=$localize`Passphrase`,[e,o,t,[1,"actions"],["shButton","","type","button",1,"outlined",3,"routerLink"],["shButton","","type","submit",1,"raised","primary",3,"click","disabled"],["autocomplete","off",3,"formGroup"],["shDragDrop","",3,"fileDropped"],["for","file"],["type","file","accept",".json,.aes",3,"change"],["suffix",""],["for","passphrase"],["type","password","formControlName","passphrase"]]},template:function(o,t){o&1&&(r(0,"header")(1,"h3"),C(2,0),r(3,"div",3)(4,"button",4),_(5,"sh-icon"),i(),r(6,"button",5),m("click",function(){return t.submit()}),_(7,"sh-icon"),i()(),E(),i()(),r(8,"form",6)(9,"sh-form-field",7),m("fileDropped",function(s){return t.onFileDropped(s)}),r(10,"label",8),f(11,1),i(),r(12,"input",9),m("change",function(s){return t.onFileDropped(s)}),i(),r(13,"sh-icon",10),N(14,"upload"),i()(),S(15,j,4,0,"sh-form-field"),i()),o&2&&(F(4),p("routerLink",M(6,U)),F(2),h("loader",t.isRestoring()),p("disabled",t.isRestoring()),F(2),p("formGroup",t.importForm),F(7),D(t.isSecureFile()?15:-1))},dependencies:[H,w,P,k,L,V,x,I,v,$,B,b],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;gap:2rem;padding:3rem}h3[_ngcontent-%COMP%]{font:var(--title-30);display:flex;align-items:center;justify-content:space-between}.actions[_ngcontent-%COMP%]{display:flex;gap:.5rem}form[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1.5rem;max-width:31.25rem}"],changeDetection:0})};export{d as default};
@@ -1 +1 @@
1
- import{h as l}from"./chunk-J3BBLPAD.js";import{H as a,Oc as s,R as u,V as p,_ as d,oa as o}from"./chunk-QDFCX6XE.js";var m=class r{#s=d(l);isLoaded=o(!1);systemInfo=o(null);filterGroups=o(null);backendModules=s(()=>this.systemInfo()?.BackendModules??[]);allOptionsGrouped=s(()=>{let e={displayName:"Default",options:this.systemInfo()?.Options?.map(this.#e)??[]},t=this.systemInfo()?.GenericModules?.map(n=>({displayName:n.DisplayName??n.Key,options:n.Options?.map(this.#e)??[]}))??[],i=this.systemInfo()?.CompressionModules?.map(n=>({displayName:n.DisplayName??n.Key,options:n.Options?.map(this.#e)??[]}))??[],c=this.systemInfo()?.EncryptionModules?.map(n=>({displayName:n.DisplayName??n.Key,options:n.Options?.map(this.#e)??[]}))??[];return[e,...t,...i,...c]});allOptions=s(()=>this.allOptionsGrouped().reduce((e,t)=>[...e,...t.options],[]));hasWebSocket=s(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:websocket"));hasV2ListOperations=s(()=>{let e=this.systemInfo()?.APIExtensions??[];return e.includes("v2:backup:list-filesets")&&e.includes("v2:backup:list-folder")});hasV2TestOperations=s(()=>(this.systemInfo()?.APIExtensions??[]).includes("v2:destination:test"));hasProgressSubscribeOption=s(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:subscribe:progress"));hasTaskSubscribeOption=s(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:subscribe:taskqueue"));hasTaskCompletedOption=s(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:subscribe:taskcompleted"));hasBackupListSubscribeOption=s(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:subscribe:backuplist"));hasWebSocketAuth=s(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:websocket:authenticate"));defaultOAuthUrl=s(()=>{let e=this.systemInfo()?.DefaultOAuthURL??"https://duplicati-oauth-handler.appspot.com/";return e.endsWith("/refresh")?e.slice(0,-8):e});defaultOAuthUrlV2=s(()=>{let e=this.systemInfo()?.DefaultOAuthURLv2??"https://oauth-service.duplicati.com/";return e.endsWith("/refresh")?e.slice(0,-8):e});preload(e=!1){let t=this.#s.getApiV1Systeminfo().pipe(u(i=>{this.systemInfo.set(i)}),a(()=>this.isLoaded.set(!0)));if(e)return t;t.subscribe()}preloadFilterGroups(e=!1){let t=this.#s.getApiV1SysteminfoFiltergroups().pipe(u(i=>{this.filterGroups.set(i)}),a(()=>this.isLoaded.set(!0)));if(e)return t;t.subscribe()}#e(e){return{name:e.Name,type:e.Type,shortDescription:e.ShortDescription??void 0,longDescription:e.LongDescription??void 0,deprecatedDescription:e.Deprecated??!1?e.DeprecationMessage??void 0:void 0,options:e.ValidValues,defaultValue:e.DefaultValue}}static \u0275fac=function(t){return new(t||r)};static \u0275prov=p({token:r,factory:r.\u0275fac,providedIn:"root"})};export{m as a};
1
+ import{h as l}from"./chunk-NOPMCS2Z.js";import{H as a,Oc as s,R as u,V as p,_ as d,oa as o}from"./chunk-HNWRQABR.js";var m=class r{#s=d(l);isLoaded=o(!1);systemInfo=o(null);filterGroups=o(null);backendModules=s(()=>this.systemInfo()?.BackendModules??[]);allOptionsGrouped=s(()=>{let e={displayName:"Default",options:this.systemInfo()?.Options?.map(this.#e)??[]},t=this.systemInfo()?.GenericModules?.map(n=>({displayName:n.DisplayName??n.Key,options:n.Options?.map(this.#e)??[]}))??[],i=this.systemInfo()?.CompressionModules?.map(n=>({displayName:n.DisplayName??n.Key,options:n.Options?.map(this.#e)??[]}))??[],c=this.systemInfo()?.EncryptionModules?.map(n=>({displayName:n.DisplayName??n.Key,options:n.Options?.map(this.#e)??[]}))??[];return[e,...t,...i,...c]});allOptions=s(()=>this.allOptionsGrouped().reduce((e,t)=>[...e,...t.options],[]));hasWebSocket=s(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:websocket"));hasV2ListOperations=s(()=>{let e=this.systemInfo()?.APIExtensions??[];return e.includes("v2:backup:list-filesets")&&e.includes("v2:backup:list-folder")});hasV2TestOperations=s(()=>(this.systemInfo()?.APIExtensions??[]).includes("v2:destination:test"));hasProgressSubscribeOption=s(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:subscribe:progress"));hasTaskSubscribeOption=s(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:subscribe:taskqueue"));hasTaskCompletedOption=s(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:subscribe:taskcompleted"));hasBackupListSubscribeOption=s(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:subscribe:backuplist"));hasWebSocketAuth=s(()=>(this.systemInfo()?.APIExtensions??[]).includes("v1:websocket:authenticate"));defaultOAuthUrl=s(()=>{let e=this.systemInfo()?.DefaultOAuthURL??"https://duplicati-oauth-handler.appspot.com/";return e.endsWith("/refresh")?e.slice(0,-8):e});defaultOAuthUrlV2=s(()=>{let e=this.systemInfo()?.DefaultOAuthURLv2??"https://oauth-service.duplicati.com/";return e.endsWith("/refresh")?e.slice(0,-8):e});preload(e=!1){let t=this.#s.getApiV1Systeminfo().pipe(u(i=>{this.systemInfo.set(i)}),a(()=>this.isLoaded.set(!0)));if(e)return t;t.subscribe()}preloadFilterGroups(e=!1){let t=this.#s.getApiV1SysteminfoFiltergroups().pipe(u(i=>{this.filterGroups.set(i)}),a(()=>this.isLoaded.set(!0)));if(e)return t;t.subscribe()}#e(e){return{name:e.Name,type:e.Type,shortDescription:e.ShortDescription??void 0,longDescription:e.LongDescription??void 0,deprecatedDescription:e.Deprecated??!1?e.DeprecationMessage??void 0:void 0,options:e.ValidValues,defaultValue:e.DefaultValue}}static \u0275fac=function(t){return new(t||r)};static \u0275prov=p({token:r,factory:r.\u0275fac,providedIn:"root"})};export{m as a};
@@ -0,0 +1 @@
1
+ import{c as a,d as b}from"./chunk-PN3U7MRX.js";import"./chunk-L6CWVBZ6.js";import"./chunk-OMMUXRXE.js";import"./chunk-N6ABN43N.js";import"./chunk-DDWLL7XA.js";import"./chunk-O64ZZGQZ.js";import"./chunk-UIJYCGKA.js";import"./chunk-DELLEGXW.js";import"./chunk-VTSUHAP5.js";import"./chunk-UP5EOICU.js";import"./chunk-N5SC4SKW.js";import"./chunk-UKQFDBNO.js";import"./chunk-LVP2TPMO.js";import"./chunk-43JMN2ZY.js";import"./chunk-H7K35UUX.js";import"./chunk-NOPMCS2Z.js";import"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import"./chunk-HNWRQABR.js";import"./chunk-EUDKD2JW.js";export{a as createEncryptionForm,b as default};
@@ -1 +1 @@
1
- import{a as S}from"./chunk-WWFNG47J.js";import"./chunk-XNVRJH42.js";import"./chunk-3UN32GIC.js";import"./chunk-OXOOR7I4.js";import"./chunk-GUH5TMOS.js";import"./chunk-RHW5QVAY.js";import"./chunk-66BSPEOQ.js";import"./chunk-CWBEE627.js";import"./chunk-USU2EHJV.js";import"./chunk-ZGAC2JKG.js";import"./chunk-ETCRT3EV.js";import{c as O,e as C,f as d}from"./chunk-L2EO4M4B.js";import"./chunk-4YL5DZVH.js";import{y as M}from"./chunk-WRNQOX5R.js";import"./chunk-J3BBLPAD.js";import"./chunk-B5FUQFEQ.js";import"./chunk-WJPLJKPQ.js";import"./chunk-FPPZ4BUR.js";import"./chunk-73RDJP55.js";import{Ab as e,Bb as t,Cb as l,Sb as n,bb as A}from"./chunk-QDFCX6XE.js";import"./chunk-EUDKD2JW.js";var s=class a{static \u0275fac=function(o){return new(o||a)};static \u0275cmp=A({type:a,selectors:[["app-about"]],decls:19,vars:0,consts:()=>{let _;_=$localize`General`;let o;o=$localize`Changelog`;let r;r=$localize`Libraries`;let g;g=$localize`System info`;let u;u=$localize`Server settings`;let T;T=$localize`Logs`;let c;return c=$localize`Crash log`,[_,o,r,g,u,T,c,[1,"content"],[1,"primary"],["tab","","routerLink","/about/general","routerLinkActive","active"],["tab","","routerLink","/about/changelog","routerLinkActive","active"],["tab","","routerLink","/about/libraries","routerLinkActive","active"],["tab","","routerLink","/about/system-info","routerLinkActive","active"],["tab","","routerLink","/about/server-settings","routerLinkActive","active"],["tab","","routerLink","/about/logs","routerLinkActive","active"],["tab","","routerLink","/about/crashlogs","routerLinkActive","active"]]},template:function(o,r){o&1&&(l(0,"app-status-bar"),e(1,"div",7)(2,"sh-tabs",8)(3,"button",9),n(4,0),t(),e(5,"button",10),n(6,1),t(),e(7,"button",11),n(8,2),t(),e(9,"button",12),n(10,3),t(),e(11,"button",13),n(12,4),t(),e(13,"button",14),n(14,5),t(),e(15,"button",15),n(16,6),t()(),e(17,"section"),l(18,"router-outlet"),t()())},dependencies:[S,M,O,C,d],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;gap:0}.content[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:1rem 0}.content[_ngcontent-%COMP%] sh-tabs[_ngcontent-%COMP%]{margin:0 2rem}.content[_ngcontent-%COMP%] section[_ngcontent-%COMP%]{padding-left:2rem}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:2rem}"],changeDetection:0})};export{s as default};
1
+ import{a as S}from"./chunk-NJEX2N4Q.js";import"./chunk-6LTGTS6B.js";import"./chunk-DVDTYV66.js";import"./chunk-UIJYCGKA.js";import"./chunk-DELLEGXW.js";import"./chunk-RHW5QVAY.js";import"./chunk-VTSUHAP5.js";import"./chunk-UP5EOICU.js";import"./chunk-N5SC4SKW.js";import"./chunk-Z3EPZZGY.js";import"./chunk-UKQFDBNO.js";import{c as O,e as C,f as d}from"./chunk-LVP2TPMO.js";import"./chunk-43JMN2ZY.js";import{y as M}from"./chunk-H7K35UUX.js";import"./chunk-NOPMCS2Z.js";import"./chunk-TDKBGGNK.js";import"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import"./chunk-6OPAGPKF.js";import{Ab as e,Bb as t,Cb as l,Sb as n,bb as A}from"./chunk-HNWRQABR.js";import"./chunk-EUDKD2JW.js";var s=class a{static \u0275fac=function(o){return new(o||a)};static \u0275cmp=A({type:a,selectors:[["app-about"]],decls:19,vars:0,consts:()=>{let _;_=$localize`General`;let o;o=$localize`Changelog`;let r;r=$localize`Libraries`;let g;g=$localize`System info`;let u;u=$localize`Server settings`;let T;T=$localize`Logs`;let c;return c=$localize`Crash log`,[_,o,r,g,u,T,c,[1,"content"],[1,"primary"],["tab","","routerLink","/about/general","routerLinkActive","active"],["tab","","routerLink","/about/changelog","routerLinkActive","active"],["tab","","routerLink","/about/libraries","routerLinkActive","active"],["tab","","routerLink","/about/system-info","routerLinkActive","active"],["tab","","routerLink","/about/server-settings","routerLinkActive","active"],["tab","","routerLink","/about/logs","routerLinkActive","active"],["tab","","routerLink","/about/crashlogs","routerLinkActive","active"]]},template:function(o,r){o&1&&(l(0,"app-status-bar"),e(1,"div",7)(2,"sh-tabs",8)(3,"button",9),n(4,0),t(),e(5,"button",10),n(6,1),t(),e(7,"button",11),n(8,2),t(),e(9,"button",12),n(10,3),t(),e(11,"button",13),n(12,4),t(),e(13,"button",14),n(14,5),t(),e(15,"button",15),n(16,6),t()(),e(17,"section"),l(18,"router-outlet"),t()())},dependencies:[S,M,O,C,d],styles:["[_nghost-%COMP%]{display:flex;flex-direction:column;gap:0}.content[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:1rem 0}.content[_ngcontent-%COMP%] sh-tabs[_ngcontent-%COMP%]{margin:0 2rem}.content[_ngcontent-%COMP%] section[_ngcontent-%COMP%]{padding-left:2rem}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:2rem}"],changeDetection:0})};export{s as default};
@@ -1 +1 @@
1
- import{g as h}from"./chunk-TJOWPBPB.js";import"./chunk-K3ZQ67VT.js";import"./chunk-CZLLEVMJ.js";import{a as w}from"./chunk-WWFNG47J.js";import{h as k}from"./chunk-36RDZAZ4.js";import"./chunk-QY6E755W.js";import"./chunk-UACX27D3.js";import"./chunk-VC72SWC4.js";import{b as T}from"./chunk-QGFC5ZUR.js";import"./chunk-XNVRJH42.js";import"./chunk-3UN32GIC.js";import"./chunk-OXOOR7I4.js";import"./chunk-GUH5TMOS.js";import"./chunk-RHW5QVAY.js";import"./chunk-66BSPEOQ.js";import"./chunk-CWBEE627.js";import"./chunk-USU2EHJV.js";import"./chunk-ZGAC2JKG.js";import"./chunk-ETCRT3EV.js";import{a as L,b as M,c as N,d as I,e as G,f as W}from"./chunk-L2EO4M4B.js";import"./chunk-4YL5DZVH.js";import{q as v,v as y}from"./chunk-WRNQOX5R.js";import"./chunk-J3BBLPAD.js";import"./chunk-B5FUQFEQ.js";import"./chunk-WJPLJKPQ.js";import"./chunk-FPPZ4BUR.js";import"./chunk-73RDJP55.js";import{Ab as i,Ac as p,Bb as n,Cb as s,Pc as $,Qb as F,Ra as r,Rb as l,Yb as O,_ as u,bb as D,ic as P,oa as C,ub as g,vb as E,yc as A,zb as _,zc as R}from"./chunk-QDFCX6XE.js";import"./chunk-EUDKD2JW.js";var b=()=>["/restore-from-files/destination"],x=()=>["/restore-from-files/encryption"],H=()=>["/restore-from-files/select-files"],X=()=>["/restore-from-files/options"],z=t=>["/restore",t,"select-files"],B=t=>["/restore",t,"options"];function U(t,o){t&1&&(i(0,"div",6),F(1,0),s(2,"sh-radio"),l(),n(),i(3,"div",6),F(4,1),s(5,"sh-radio"),l(),n(),i(6,"div",6),F(7,2),s(8,"sh-radio"),l(),n(),i(9,"div",6),F(10,3),s(11,"sh-radio"),l(),n()),t&2&&(_("routerLink",R(4,b)),r(3),_("routerLink",R(5,x)),r(3),_("routerLink",R(6,H)),r(3),_("routerLink",R(7,X)))}function j(t,o){if(t&1&&(i(0,"div",6),F(1,4),s(2,"sh-radio"),l(),n(),i(3,"div",6),F(4,5),s(5,"sh-radio"),l(),n()),t&2){let e=O(2);_("routerLink",p(2,z,e.backupId())),r(3),_("routerLink",p(4,B,e.backupId()))}}function V(t,o){if(t&1&&(i(0,"sh-stepper"),g(1,U,12,8)(2,j,6,6),n()),t&2){let e=O();r(),E(e.isFileRestore()?1:2)}}var m=class t{#e=u(M);#o=u(I);#t=u(h);#i=T(this.#e.params);#n=T(this.#e.url);#s=T(this.#e.children[0].url);backupId=this.#t.backupId;isFileRestore=this.#t.isFileRestore;isProgressPage=C(!1);paramsChanged=$(()=>{let o=this.#s(),e=this.#i()?.id,a=!!this.#n()?.find(d=>d.path==="restore-from-files"),c=!!o?.find(d=>d.path==="progress");this.isProgressPage.set(c),this.#t.init(e,a)});ngOnInit(){this.#o.events.subscribe(o=>{if(o instanceof L){let e=o.urlAfterRedirects;this.isProgressPage.set(e.includes("progress"))}})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=D({type:t,selectors:[["app-restore-flow"]],hostVars:2,hostBindings:function(e,a){e&2&&P("full-width",a.isProgressPage())},features:[A([h,k])],decls:4,vars:1,consts:()=>{let o;o=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_RADIO: Destination `;let e;e=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SH_RADIO: Encryption `;let a;a=$localize`${"\uFFFD#8\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#8\uFFFD"}:CLOSE_TAG_SH_RADIO: Select files `;let c;c=$localize`${"\uFFFD#11\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#11\uFFFD"}:CLOSE_TAG_SH_RADIO: Options `;let d;d=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_RADIO: Select files `;let f;return f=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SH_RADIO: Options `,[o,e,a,c,d,f,["step","","routerLinkActive","active",3,"routerLink"]]},template:function(e,a){e&1&&(s(0,"app-status-bar"),g(1,V,3,1,"sh-stepper"),i(2,"section"),s(3,"router-outlet"),n()),e&2&&(r(),E(a.isProgressPage()?-1:1))},dependencies:[y,v,w,N,G,W],styles:["[_nghost-%COMP%]{display:block}.full-width[_nghost-%COMP%] section[_ngcontent-%COMP%]{max-width:62.5rem}sh-stepper[_ngcontent-%COMP%]{max-width:31.25rem;margin:2.5rem auto}section[_ngcontent-%COMP%]{max-width:31.25rem;margin:0 auto 2.5rem}"],changeDetection:0})};export{m as default};
1
+ import{g as h}from"./chunk-PN3U7MRX.js";import"./chunk-L6CWVBZ6.js";import"./chunk-OMMUXRXE.js";import{a as w}from"./chunk-NJEX2N4Q.js";import{h as k}from"./chunk-MSLKIHQQ.js";import"./chunk-N6ABN43N.js";import"./chunk-DDWLL7XA.js";import"./chunk-2QJC4PGQ.js";import{b as T}from"./chunk-O64ZZGQZ.js";import"./chunk-6LTGTS6B.js";import"./chunk-DVDTYV66.js";import"./chunk-UIJYCGKA.js";import"./chunk-DELLEGXW.js";import"./chunk-RHW5QVAY.js";import"./chunk-VTSUHAP5.js";import"./chunk-UP5EOICU.js";import"./chunk-N5SC4SKW.js";import"./chunk-Z3EPZZGY.js";import"./chunk-UKQFDBNO.js";import{a as L,b as M,c as N,d as I,e as G,f as W}from"./chunk-LVP2TPMO.js";import"./chunk-43JMN2ZY.js";import{q as v,v as y}from"./chunk-H7K35UUX.js";import"./chunk-NOPMCS2Z.js";import"./chunk-TDKBGGNK.js";import"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import"./chunk-6OPAGPKF.js";import{Ab as i,Ac as p,Bb as n,Cb as s,Pc as $,Qb as F,Ra as r,Rb as l,Yb as O,_ as u,bb as D,ic as P,oa as C,ub as g,vb as E,yc as A,zb as _,zc as R}from"./chunk-HNWRQABR.js";import"./chunk-EUDKD2JW.js";var b=()=>["/restore-from-files/destination"],x=()=>["/restore-from-files/encryption"],H=()=>["/restore-from-files/select-files"],X=()=>["/restore-from-files/options"],z=t=>["/restore",t,"select-files"],B=t=>["/restore",t,"options"];function U(t,o){t&1&&(i(0,"div",6),F(1,0),s(2,"sh-radio"),l(),n(),i(3,"div",6),F(4,1),s(5,"sh-radio"),l(),n(),i(6,"div",6),F(7,2),s(8,"sh-radio"),l(),n(),i(9,"div",6),F(10,3),s(11,"sh-radio"),l(),n()),t&2&&(_("routerLink",R(4,b)),r(3),_("routerLink",R(5,x)),r(3),_("routerLink",R(6,H)),r(3),_("routerLink",R(7,X)))}function j(t,o){if(t&1&&(i(0,"div",6),F(1,4),s(2,"sh-radio"),l(),n(),i(3,"div",6),F(4,5),s(5,"sh-radio"),l(),n()),t&2){let e=O(2);_("routerLink",p(2,z,e.backupId())),r(3),_("routerLink",p(4,B,e.backupId()))}}function V(t,o){if(t&1&&(i(0,"sh-stepper"),g(1,U,12,8)(2,j,6,6),n()),t&2){let e=O();r(),E(e.isFileRestore()?1:2)}}var m=class t{#e=u(M);#o=u(I);#t=u(h);#i=T(this.#e.params);#n=T(this.#e.url);#s=T(this.#e.children[0].url);backupId=this.#t.backupId;isFileRestore=this.#t.isFileRestore;isProgressPage=C(!1);paramsChanged=$(()=>{let o=this.#s(),e=this.#i()?.id,a=!!this.#n()?.find(d=>d.path==="restore-from-files"),c=!!o?.find(d=>d.path==="progress");this.isProgressPage.set(c),this.#t.init(e,a)});ngOnInit(){this.#o.events.subscribe(o=>{if(o instanceof L){let e=o.urlAfterRedirects;this.isProgressPage.set(e.includes("progress"))}})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=D({type:t,selectors:[["app-restore-flow"]],hostVars:2,hostBindings:function(e,a){e&2&&P("full-width",a.isProgressPage())},features:[A([h,k])],decls:4,vars:1,consts:()=>{let o;o=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_RADIO: Destination `;let e;e=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SH_RADIO: Encryption `;let a;a=$localize`${"\uFFFD#8\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#8\uFFFD"}:CLOSE_TAG_SH_RADIO: Select files `;let c;c=$localize`${"\uFFFD#11\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#11\uFFFD"}:CLOSE_TAG_SH_RADIO: Options `;let d;d=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_RADIO: Select files `;let f;return f=$localize`${"\uFFFD#5\uFFFD"}:START_TAG_SH_RADIO:${"\uFFFD/#5\uFFFD"}:CLOSE_TAG_SH_RADIO: Options `,[o,e,a,c,d,f,["step","","routerLinkActive","active",3,"routerLink"]]},template:function(e,a){e&1&&(s(0,"app-status-bar"),g(1,V,3,1,"sh-stepper"),i(2,"section"),s(3,"router-outlet"),n()),e&2&&(r(),E(a.isProgressPage()?-1:1))},dependencies:[y,v,w,N,G,W],styles:["[_nghost-%COMP%]{display:block}.full-width[_nghost-%COMP%] section[_ngcontent-%COMP%]{max-width:62.5rem}sh-stepper[_ngcontent-%COMP%]{max-width:31.25rem;margin:2.5rem auto}section[_ngcontent-%COMP%]{max-width:31.25rem;margin:0 auto 2.5rem}"],changeDetection:0})};export{m as default};
@@ -1 +1 @@
1
- import{a as f}from"./chunk-ETCRT3EV.js";import{_ as m,a as S,b as i,oa as c}from"./chunk-QDFCX6XE.js";function u(...a){let e=c(...a);return Object.defineProperty(e,"value",{get:e.asReadonly(),set:e.set.bind(e)})}function A(a,e,o=!1,s){let l=m(f);e=l.getItemParsed(a,o)??e;let n=u(e),r=n[S];s?.equal&&(r.equal=s.equal);function g(t){t==null?l.removeItem(a):l.setItemParsed(a,t,o)}return n.set=t=>{g(t),i(r,t)},n.update=t=>{let T=t(n());g(T),i(r,T)},n}export{A as a};
1
+ import{a as f}from"./chunk-UKQFDBNO.js";import{_ as m,a as S,b as i,oa as c}from"./chunk-HNWRQABR.js";function u(...a){let e=c(...a);return Object.defineProperty(e,"value",{get:e.asReadonly(),set:e.set.bind(e)})}function A(a,e,o=!1,s){let l=m(f);e=l.getItemParsed(a,o)??e;let n=u(e),r=n[S];s?.equal&&(r.equal=s.equal);function g(t){t==null?l.removeItem(a):l.setItemParsed(a,t,o)}return n.set=t=>{g(t),i(r,t)},n.update=t=>{let T=t(n());g(T),i(r,T)},n}export{A as a};
@@ -1 +1 @@
1
- import{a as Y,d as nn}from"./chunk-XLE2TW65.js";import{a as tn}from"./chunk-WWFNG47J.js";import{a as en}from"./chunk-XNVRJH42.js";import{a as Ze}from"./chunk-3UN32GIC.js";import"./chunk-OXOOR7I4.js";import"./chunk-GUH5TMOS.js";import"./chunk-RHW5QVAY.js";import"./chunk-66BSPEOQ.js";import"./chunk-CWBEE627.js";import"./chunk-USU2EHJV.js";import{a as Ye}from"./chunk-ZGAC2JKG.js";import"./chunk-ETCRT3EV.js";import{e as Xe}from"./chunk-L2EO4M4B.js";import"./chunk-4YL5DZVH.js";import{a as Q,f as we,g as ze,h as Ve,j as Ue,k as Ke,o as je,p as We,w as qe,x as Je}from"./chunk-WRNQOX5R.js";import{h as Qe}from"./chunk-J3BBLPAD.js";import"./chunk-B5FUQFEQ.js";import"./chunk-WJPLJKPQ.js";import"./chunk-FPPZ4BUR.js";import"./chunk-73RDJP55.js";import{Ab as o,Ac as P,Bb as t,Cb as p,Dc as N,Ec as x,Fc as A,Gb as m,H as j,Hb as M,Hc as J,Ib as $,Jb as k,Pc as ve,Qb as s,Ra as _,Rb as u,Sb as g,Tb as h,Ub as H,Vb as W,Wb as I,Yb as F,_ as v,bb as Re,ea as D,fa as f,gb as O,gc as U,hb as ke,ic as R,lc as r,mc as Be,nc as E,oa as X,qc as Le,rb as xe,rc as Ge,sb as ye,sc as be,ub as C,vb as S,wb as w,xb as z,yb as V,zb as T,zc as q}from"./chunk-QDFCX6XE.js";import"./chunk-EUDKD2JW.js";var _n=()=>[import("./chunk-ACH476VA.js").then(n=>n.NgTemplateOutlet),Q,Ue,Je,qe,import("./chunk-2RB5RKNM.js").then(n=>n.DurationFormatPipe),import("./chunk-QFU6VJXV.js").then(n=>n.BytesPipe),import("./chunk-7WD3AN66.js").then(n=>n.RelativeTimePipe)],ln=()=>["/add-backup"],rn=()=>["/restore"],an=n=>({$implicit:n}),cn=n=>["/backup",n],sn=n=>["/restore",n],un=n=>["/backup",n,"export"],Fn=n=>["/backup",n,"delete"],dn=n=>["/backup",n,"database"],pn=n=>["/backup",n,"commandline"],gn=n=>["/backup",n,"log"];function Tn(n,i){if(n&1){let e=k();o(0,"button",51),I("click",function(){let c=D(e).$implicit,d=F(2);return f(d.sortByColumn.set(c.value))}),g(1,15),t()}if(n&2){let e=i.$implicit,a=F(2);R("active",a.orderBy()===e.value),_(),h(e.label),H(1)}}function Cn(n,i){if(n&1&&(o(0,"sh-menu",52)(1,"button",53),s(2,14),p(3,"strong")(4,"sh-icon"),u(),t(),m(5,54),z(6,Tn,2,3,"button",55,w),M(),t()),n&2){let e=F();_(4),h(e.orderBy()),H(2),_(2),V(e.sortOrderOptions())}}function Sn(n,i){if(n&1&&(o(0,"p")(1,"span"),g(2,21),t(),r(3),N(4,"relativeTime"),t()),n&2){let e=F().$implicit,a=F(4);_(3),E(" ",A(4,1,e.Schedule==null?null:e.Schedule.Time,a.timeType()==="actual")," ")}}function En(n,i){if(n&1&&(r(0),N(1,"durationFormat")),n&2){let e=F().$implicit,a=F(4);E(" ",A(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.LastBackupDuration,a.timeType()==="actual")," ")}}function mn(n,i){n&1&&(m(0),r(1,"-"),M())}function Mn(n,i){if(n&1&&(r(0),N(1,"bytes")),n&2){let e=F().$implicit;E(" ",x(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.SourceFilesSize)," ")}}function On(n,i){n&1&&(m(0),r(1,"-"),M())}function Nn(n,i){if(n&1&&(r(0),N(1,"bytes")),n&2){let e=F().$implicit;E(" ",x(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.TargetFilesSize)," ")}}function Dn(n,i){n&1&&(m(0),r(1,"-"),M())}function fn(n,i){n&1&&$(0)}function $n(n,i){if(n&1&&(o(0,"div",58)(1,"div",45)(2,"h3"),r(3),o(4,"sh-chip")(5,"sh-icon"),r(6),t(),r(7),t()(),o(8,"p")(9,"span"),g(10,16),t(),r(11),N(12,"relativeTime"),t(),C(13,Sn,5,4,"p"),o(14,"p")(15,"span"),g(16,17),t(),C(17,En,2,4)(18,mn,2,0,"ng-container"),t(),o(19,"p")(20,"span"),g(21,18),t(),C(22,Mn,2,3)(23,On,2,0,"ng-container"),t(),o(24,"p")(25,"span"),g(26,19),t(),C(27,Nn,2,3)(28,Dn,2,0,"ng-container"),t()(),o(29,"sh-chip",59),g(30,20),t(),o(31,"div",49),O(32,fn,1,0,"ng-container",60),t()()),n&2){let e=i.$implicit,a=F(4),c=U(51);_(3),E(" ",(e.Backup==null?null:e.Backup.Name)??a.MISSING_BACKUP_NAME," "),_(3),Be(a.getBackendIcon(e.Backup==null?null:e.Backup.TargetURL)),_(),E(" ",a.getBackendType(e.Backup==null?null:e.Backup.TargetURL)," "),_(4),E(" ",A(12,12,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.LastBackupFinished,a.timeType()==="actual")," "),_(2),S(e.Schedule!=null&&e.Schedule.Time?13:-1),_(4),S(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.LastBackupDuration?17:18),_(5),S(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.SourceFilesSize?22:23),_(5),S(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.TargetFilesSize?27:28);let d=a.getBackupVersionCount(e);_(3),h(d)(d),H(30),_(2),T("ngTemplateOutlet",c)("ngTemplateOutletContext",P(15,an,e))}}function Pn(n,i){if(n&1&&z(0,$n,33,17,"div",58,w),n&2){let e=F(3);V(e.backups())}}function In(n,i){n&1&&(m(0),g(1,22),M())}function An(n,i){if(n&1&&(o(0,"div",56),C(1,Pn,2,0)(2,In,2,0,"ng-container"),t()),n&2){let e=F(2);_(),S(e.backups().length?1:2)}}function hn(n,i){n&1&&(s(0,23,1),$(1),u())}function Hn(n,i){n&1&&(s(0,24,1),$(1),u())}function Rn(n,i){n&1&&(s(0,25,1),$(1),u())}function kn(n,i){n&1&&(s(0,26,1),$(1),u())}function xn(n,i){n&1&&(s(0,27,1),$(1),u())}function yn(n,i){n&1&&(s(0,28,1),$(1),u())}function Bn(n,i){n&1&&(s(0,29,1),$(1),u())}function Ln(n,i){if(n&1&&(r(0),N(1,"relativeTime")),n&2){let e=F().$implicit,a=F(3);E(" ",A(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.LastBackupDate,a.timeType()==="actual")," ")}}function Gn(n,i){n&1&&(m(0),r(1,"-"),M())}function bn(n,i){if(n&1&&(r(0),N(1,"relativeTime")),n&2){let e=F().$implicit,a=F(3);E(" ",A(1,1,e.Schedule==null?null:e.Schedule.Time,a.timeType()==="actual")," ")}}function vn(n,i){n&1&&(m(0),r(1,"-"),M())}function Xn(n,i){if(n&1&&(r(0),N(1,"durationFormat")),n&2){let e=F().$implicit,a=F(3);E(" ",A(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.LastBackupDuration,a.timeType()==="actual")," ")}}function wn(n,i){n&1&&(m(0),r(1,"-"),M())}function zn(n,i){if(n&1&&(r(0),N(1,"bytes")),n&2){let e=F().$implicit;E(" ",x(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.SourceFilesSize)," ")}}function Vn(n,i){n&1&&(m(0),r(1,"-"),M())}function Un(n,i){if(n&1&&(r(0),N(1,"bytes")),n&2){let e=F().$implicit;E(" ",x(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.TargetFilesSize)," ")}}function Kn(n,i){n&1&&(m(0),r(1,"-"),M())}function jn(n,i){n&1&&$(0)}function Wn(n,i){if(n&1&&(o(0,"tr")(1,"td"),r(2),t(),o(3,"td"),r(4),t(),o(5,"td"),C(6,Ln,2,4)(7,Gn,2,0,"ng-container"),t(),o(8,"td"),C(9,bn,2,4)(10,vn,2,0,"ng-container"),t(),o(11,"td"),C(12,Xn,2,4)(13,wn,2,0,"ng-container"),t(),o(14,"td"),C(15,zn,2,3)(16,Vn,2,0,"ng-container"),t(),o(17,"td"),C(18,Un,2,3)(19,Kn,2,0,"ng-container"),t(),o(20,"td")(21,"span"),g(22,32),t()(),o(23,"td"),O(24,jn,1,0,"ng-container",60),t()()),n&2){let e=i.$implicit,a=F(3),c=U(51);_(2),E(" ",(e.Backup==null?null:e.Backup.Name)??a.MISSING_BACKUP_NAME," "),_(2),E(" ",a.getBackendType(e.Backup==null?null:e.Backup.TargetURL)," "),_(2),S(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.LastBackupDate?6:7),_(3),S(e.Schedule!=null&&e.Schedule.Time?9:10),_(3),S(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.LastBackupDuration?12:13),_(3),S(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.SourceFilesSize?15:16),_(3),S(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.TargetFilesSize?18:19);let d=a.getBackupVersionCount(e);_(4),h(d)(d),H(22),_(2),T("ngTemplateOutlet",c)("ngTemplateOutletContext",P(11,an,e))}}function qn(n,i){if(n&1){let e=k();o(0,"sh-table",61),be("sortByColumnChange",function(c){D(e);let d=F(2);return Ge(d.sortByColumn,c)||(d.sortByColumn=c),f(c)}),o(1,"tr",62)(2,"th",63),s(3,23),O(4,hn,2,0,"ng-container",64),u(),t(),o(5,"th",65),s(6,24),O(7,Hn,2,0,"ng-container",64),u(),t(),o(8,"th",66),s(9,25),O(10,Rn,2,0,"ng-container",64),u(),t(),o(11,"th",67),s(12,26),O(13,kn,2,0,"ng-container",64),u(),t(),o(14,"th",68),s(15,27),O(16,xn,2,0,"ng-container",64),u(),t(),o(17,"th",69),s(18,28),O(19,yn,2,0,"ng-container",64),u(),t(),o(20,"th",70),s(21,29),O(22,Bn,2,0,"ng-container",64),u(),t(),o(23,"th"),g(24,30),t(),o(25,"th"),g(26,31),t()(),z(27,Wn,25,13,"tr",null,w),t()}if(n&2){let e=F(2),a=U(53);T("data",e.backups())("loading",e.backupsLoading()),Le("sortByColumn",e.sortByColumn),_(4),T("ngTemplateOutlet",a),_(3),T("ngTemplateOutlet",a),_(3),T("ngTemplateOutlet",a),_(3),T("ngTemplateOutlet",a),_(3),T("ngTemplateOutlet",a),_(3),T("ngTemplateOutlet",a),_(3),T("ngTemplateOutlet",a),_(5),V(e.backups())}}function Jn(n,i){if(n&1&&C(0,An,3,1,"div",56)(1,qn,29,10,"sh-table",57),n&2){let e=F();S(e.viewMode()==="list"?0:e.viewMode()==="details"?1:-1)}}function Qn(n,i){n&1&&(o(0,"div",71),p(1,"sh-progress-bar",72),o(2,"div",45)(3,"h3"),g(4,33),t()()())}function Yn(n,i){n&1&&g(0,34,1)}function Zn(n,i){n&1&&(o(0,"sh-icon"),r(1,"check"),t())}function et(n,i){n&1&&(o(0,"sh-icon"),r(1,"dots-three-vertical"),t())}function nt(n,i){if(n&1){let e=k();o(0,"button",73),I("click",function(){let c=D(e).$implicit,d=F();return f(d.startBackup(c.Backup==null?null:c.Backup.ID))}),s(1,34),p(2,"sh-icon"),C(3,Yn,1,0),u(),t(),o(4,"button",74)(5,"sh-icon"),r(6,"pencil-simple"),t()(),o(7,"sh-menu")(8,"button",46),C(9,Zn,2,0,"sh-icon")(10,et,2,0,"sh-icon"),t(),m(11,54),o(12,"h3",75),r(13,"Operations"),t(),o(14,"button",76),s(15,35),p(16,"sh-icon"),u(),t(),o(17,"button",76),s(18,36),p(19,"sh-icon"),u(),t(),o(20,"button",76),s(21,37),p(22,"sh-icon"),u(),t(),p(23,"sh-divider"),o(24,"h3",75),r(25,"Advanced"),t(),o(26,"button",76),s(27,38),p(28,"sh-icon"),u(),t(),o(29,"button",51),I("click",function(){let c=D(e).$implicit,d=F();return f(d.verifyFiles(c.Backup==null?null:c.Backup.ID))}),s(30,39),p(31,"sh-icon"),u(),t(),o(32,"button",51),I("click",function(){let c=D(e).$implicit,d=F();return f(d.compressBackup(c.Backup==null?null:c.Backup.ID))}),s(33,40),p(34,"sh-icon"),u(),t(),o(35,"button",76),s(36,41),p(37,"sh-icon"),u(),t(),p(38,"sh-divider"),o(39,"h3",75),r(40,"Reporting"),t(),o(41,"button",76),s(42,42),p(43,"sh-icon"),u(),t(),M(),t()}if(n&2){let e=i.$implicit,a=F();R("loader",a.startingBackup()===(e.Backup==null?null:e.Backup.ID)),_(3),S(a.viewMode()==="list"?3:-1),_(),T("routerLink",P(15,cn,e.Backup==null?null:e.Backup.ID)),_(4),R("loader",a.loadingId()===(e.Backup==null?null:e.Backup.ID))("success",a.successId()===(e.Backup==null?null:e.Backup.ID)),_(),S(a.successId()===(e.Backup==null?null:e.Backup.ID)?9:10),_(5),T("routerLink",P(17,sn,e.Backup==null?null:e.Backup.ID)),_(3),T("routerLink",P(19,un,e.Backup==null?null:e.Backup.ID)),_(3),T("routerLink",P(21,Fn,e.Backup==null?null:e.Backup.ID)),_(6),T("routerLink",P(23,dn,e.Backup==null?null:e.Backup.ID)),_(9),T("routerLink",P(25,pn,e.Backup==null?null:e.Backup.ID)),_(6),T("routerLink",P(27,gn,e.Backup==null?null:e.Backup.ID))}}function tt(n,i){n&1&&(o(0,"sh-icon",77),r(1,"funnel-simple"),t(),o(2,"sh-icon",78),r(3,"sort-ascending"),t(),o(4,"sh-icon",79),r(5,"sort-descending"),t())}var on={file:{Display:$localize`Local`,Icon:null}},Z=class n{#n=v(Qe);#t=v(en);#e=v(Ze);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=Ye("viewMode","list");sortByColumn=X(this.#e.orderBy());loadingId=X(null);successId=X(null);sortEffect=ve(()=>this.#e.setOrderBy(this.sortByColumn()));ngOnInit(){this.#e.getBackups(!0)}setOrderBy(i){this.#e.setOrderBy(i)}setTimeType(i){this.#e.setTimeType(i)}startBackup(i){this.#t.resumeDialogCheck(()=>this.#e.startBackup(i))}getBackendIcon(i){if(!i)return"";let e=i.split("://")[0],a=Y(e);return on[a.key]?.Icon??"database"}getBackendType(i){if(!i)return"";let e=i.split("://")[0],a=Y(e);if(!a)return"";let c=on[a.key];if(c?.Display)return c.Display;if(a.key==="s3"){let d="http://null?"+i.split("?")[1],y=new URL(d).searchParams.get("s3-server-name")?.toLowerCase()??"";for(let[B,L]of Object.entries(nn))if(y.endsWith(B))return L}return a.displayName}getBackupVersionCount(i){return parseInt(i?.Backup?.Metadata?.BackupListCount??"",10)||0}verifyFiles(i){this.loadingId.set(i),this.#n.postApiV1BackupByIdVerify({id:i}).pipe(j(()=>this.loadingId.set(null))).subscribe({next:()=>{this.successId.set(i),setTimeout(()=>this.successId.set(null),2e3)}})}compressBackup(i){this.loadingId.set(i),this.#n.postApiV1BackupByIdCompact({id:i}).pipe(j(()=>this.loadingId.set(null))).subscribe({next:()=>{this.successId.set(i),setTimeout(()=>this.successId.set(null),2e3)}})}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=Re({type:n,selectors:[["app-home"]],decls:54,vars:11,consts:()=>{let i;i=$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_SH_ICON:plus${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SH_ICON:`;let c;c=$localize`Restores`;let d;d=$localize`Restores allow you to restore your data from the cloud.`;let K;K=$localize` Start ${"\uFFFD#22\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SH_ICON:`;let y;y=$localize`My backups`;let B;B=$localize`${"\uFFFD#31\uFFFD"}:START_TAG_SH_ICON:rows${"\uFFFD/#31\uFFFD"}:CLOSE_TAG_SH_ICON: List `;let L;L=$localize`${"\uFFFD#34\uFFFD"}:START_TAG_SH_ICON:list${"\uFFFD/#34\uFFFD"}:CLOSE_TAG_SH_ICON: Details `;let ee;ee=$localize` Time: ${"\uFFFD#38\uFFFD"}:START_TAG_STRONG:${"\uFFFD0\uFFFD"}:INTERPOLATION:${"\uFFFD/#38\uFFFD"}:CLOSE_TAG_STRONG:${"\uFFFD#39\uFFFD"}:START_TAG_SH_ICON:clock${"\uFFFD/#39\uFFFD"}:CLOSE_TAG_SH_ICON:`;let ne;ne=$localize`Relative time`;let te;te=$localize`Actual time`;let ie;ie=$localize` Order by: ${"\uFFFD#3\uFFFD"}:START_TAG_STRONG:${"\uFFFD0\uFFFD"}:INTERPOLATION:${"\uFFFD/#3\uFFFD"}:CLOSE_TAG_STRONG:${"\uFFFD#4\uFFFD"}:START_TAG_SH_ICON:arrows-down-up${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SH_ICON:`;let oe;oe=$localize` ${"\uFFFD0\uFFFD"}:INTERPOLATION: `;let ae;ae=$localize`Last successful backup:`;let _e;_e=$localize`Duration:`;let le;le=$localize`Source:`;let re;re=$localize`Destination:`;let G;G=$localize`{VAR_PLURAL, plural, =0 {No version yet} =1 {1 Version} other {{INTERPOLATION} Versions}}`,G=W(G,{INTERPOLATION:"\uFFFD1\uFFFD",VAR_PLURAL:"\uFFFD0\uFFFD"});let ce;ce=$localize` ${G}:ICU@@6502601490918455200: `;let se;se=$localize`Next scheduled run:`;let ue;ue=$localize`No backups founds`;let Fe;Fe=$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 de;de=$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 pe;pe=$localize` Last backup ${"\uFFFD*10:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*10:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let ge;ge=$localize` Next run ${"\uFFFD*13:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*13:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Te;Te=$localize` Duration ${"\uFFFD*16:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*16:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Ce;Ce=$localize` Source ${"\uFFFD*19:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*19:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Se;Se=$localize` Destination ${"\uFFFD*22:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*22:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Ee;Ee=$localize`Version`;let me;me=$localize`Actions`;let b;b=$localize`{VAR_PLURAL, plural, =0 {No versions} =1 {1 Version} other {{INTERPOLATION} Versions}}`,b=W(b,{INTERPOLATION:"\uFFFD1\uFFFD",VAR_PLURAL:"\uFFFD0\uFFFD"});let Me;Me=$localize` ${b}:ICU@@3521773141017690117: `;let Oe;Oe=$localize`Loading backups...`;let Ne;Ne=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:play-circle${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON:${"\uFFFD*3:1\uFFFD"}:START_BLOCK_IF: Start ${"\uFFFD/*3:1\uFFFD"}:CLOSE_BLOCK_IF:`;let De;De=$localize`${"\uFFFD#16\uFFFD"}:START_TAG_SH_ICON:clock-counter-clockwise${"\uFFFD/#16\uFFFD"}:CLOSE_TAG_SH_ICON: Restore `;let fe;fe=$localize`${"\uFFFD#19\uFFFD"}:START_TAG_SH_ICON:export${"\uFFFD/#19\uFFFD"}:CLOSE_TAG_SH_ICON: Export `;let $e;$e=$localize`${"\uFFFD#22\uFFFD"}:START_TAG_SH_ICON:x-circle${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SH_ICON: Delete `;let Pe;Pe=$localize`${"\uFFFD#28\uFFFD"}:START_TAG_SH_ICON:database${"\uFFFD/#28\uFFFD"}:CLOSE_TAG_SH_ICON: Database `;let Ie;Ie=$localize`${"\uFFFD#31\uFFFD"}:START_TAG_SH_ICON:check-square-offset${"\uFFFD/#31\uFFFD"}:CLOSE_TAG_SH_ICON: Verify files `;let Ae;Ae=$localize`${"\uFFFD#34\uFFFD"}:START_TAG_SH_ICON:file-archive${"\uFFFD/#34\uFFFD"}:CLOSE_TAG_SH_ICON: Compress now `;let he;he=$localize`${"\uFFFD#37\uFFFD"}:START_TAG_SH_ICON:terminal-window${"\uFFFD/#37\uFFFD"}:CLOSE_TAG_SH_ICON: Commandline `;let He;return He=$localize`${"\uFFFD#43\uFFFD"}:START_TAG_SH_ICON:notepad${"\uFFFD/#43\uFFFD"}:CLOSE_TAG_SH_ICON: Log `,[["actions",""],["sortIcons",""],i,e,a,c,d,K,y,B,L,ee,ne,te,ie,oe,ae,_e,le,re,ce,se,ue,Fe,de,pe,ge,Te,Ce,Se,Ee,me,Me,Oe,Ne,De,fe,$e,Pe,Ie,Ae,he,He,[1,"type-a",3,"routerLink"],["src","assets/images/backup.png","alt","","width","48px"],[1,"text"],["type","button","shButton",""],["src","assets/images/restore.png","alt","","width","48px"],[1,"content"],[1,"actions"],[1,"small"],["type","button",3,"click"],[1,"table-overview"],["type","button","shButton","",1,"small"],["menu",""],["type","button",3,"active"],[1,"backups"],[1,"type-b",3,"data","loading","sortByColumn"],[1,"backup"],[1,"simple","success"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"type-b",3,"sortByColumnChange","data","loading","sortByColumn"],["table-header",""],["shSort","name"],[4,"ngTemplateOutlet"],["shSort","type"],["shSort","lastrun"],["shSort","nextrun"],["shSort","duration"],["shSort","sourcesize"],["shSort","destinationsize"],[1,"loading-list"],[1,"indeterminate","primary"],["shButton","",3,"click"],["type","button","shButton","",3,"routerLink"],["title",""],["type","button",3,"routerLink"],[1,"filter"],[1,"asc"],[1,"desc"]]},template:function(e,a){if(e&1){let c=k();p(0,"app-status-bar"),o(1,"section")(2,"header")(3,"sh-card",43),p(4,"img",44),o(5,"div",45)(6,"h3"),g(7,2),t(),o(8,"p"),g(9,3),t()(),o(10,"button",46),s(11,4),p(12,"sh-icon"),u(),t()(),o(13,"sh-card",43),p(14,"img",47),o(15,"div",45)(16,"h3"),g(17,5),t(),o(18,"p"),g(19,6),t()(),o(20,"button",46),s(21,7),p(22,"sh-icon"),u(),t()()(),o(23,"div",48)(24,"h2"),m(25),g(26,8),M(),o(27,"div",49)(28,"sh-button-group",50)(29,"button",51),I("click",function(){return D(c),f(a.viewMode.set("list"))}),s(30,9),p(31,"sh-icon"),u(),t(),o(32,"button",51),I("click",function(){return D(c),f(a.viewMode.set("details"))}),s(33,10),p(34,"sh-icon"),u(),t()(),o(35,"sh-menu",52)(36,"button",53),s(37,11),p(38,"strong")(39,"sh-icon"),u(),t(),m(40,54),o(41,"button",51),I("click",function(){return D(c),f(a.setTimeType("relative"))}),g(42,12),t(),o(43,"button",51),I("click",function(){return D(c),f(a.setTimeType("actual"))}),g(44,13),t(),M(),t(),C(45,Cn,8,1,"sh-menu",52),t()(),ke(46,Jn,2,1)(47,Qn,5,0),xe(48,46,_n,null,47),t()(),O(50,nt,44,29,"ng-template",null,0,J)(52,tt,6,0,"ng-template",null,1,J)}e&2&&(_(3),T("routerLink",q(9,ln)),_(10),T("routerLink",q(10,rn)),_(16),R("active",a.viewMode()==="list"),_(3),R("active",a.viewMode()==="details"),_(7),h(a.timeType()),H(37),_(6),S(a.viewMode()==="list"?45:-1),_(3),ye(!a.backupsLoading()))},dependencies:[Xe,tn,Ve,ze,Q,Ke,je,We,we],styles:["[_nghost-%COMP%]{display:block}h2[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2rem;padding:2rem 0}header[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;padding:0 2rem;gap:1rem}sh-card[_ngcontent-%COMP%]{display:flex;align-items:center;gap:1rem}sh-card[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{flex:1 0;display:flex;flex-direction:column;gap:.25rem}.content[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem}.content[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{padding:0 2rem}.backups[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:0 2rem;gap:.5rem}.backup[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:2rem;gap:1rem;border:1px solid var(--base-4);border-radius:var(--shape-3);box-shadow:var(--box-shadow-10)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem;width:100%;max-width:40%}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] sh-icon[_ngcontent-%COMP%]{color:var(--base-8)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font:var(--paragraph-30);color:var(--base-8)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] p[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--base-12)}.actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.sortable[_ngcontent-%COMP%]{-webkit-user-select:none;user-select:none}.sortable[_ngcontent-%COMP%] sh-icon[_ngcontent-%COMP%]{margin-left:.5rem;font-size:1rem;justify-self:flex-end;display:none}.sortable[_ngcontent-%COMP%]:not(.sort-asc):not(.sort-desc) sh-icon.filter[_ngcontent-%COMP%]{display:block}.sortable.sort-asc[_ngcontent-%COMP%] sh-icon.asc[_ngcontent-%COMP%]{display:block;color:var(--base-12)}.sortable.sort-desc[_ngcontent-%COMP%] sh-icon.desc[_ngcontent-%COMP%]{display:block;color:var(--base-12)}"],changeDetection:0})};export{Z as default};
1
+ import{a as Y,d as nn}from"./chunk-KDYD6LMI.js";import{a as tn}from"./chunk-NJEX2N4Q.js";import{a as en}from"./chunk-6LTGTS6B.js";import{a as Ze}from"./chunk-DVDTYV66.js";import"./chunk-UIJYCGKA.js";import"./chunk-DELLEGXW.js";import"./chunk-RHW5QVAY.js";import"./chunk-VTSUHAP5.js";import"./chunk-UP5EOICU.js";import"./chunk-N5SC4SKW.js";import{a as Ye}from"./chunk-Z3EPZZGY.js";import"./chunk-UKQFDBNO.js";import{e as Xe}from"./chunk-LVP2TPMO.js";import"./chunk-43JMN2ZY.js";import{a as Q,f as we,g as ze,h as Ve,j as Ue,k as Ke,o as je,p as We,w as qe,x as Je}from"./chunk-H7K35UUX.js";import{h as Qe}from"./chunk-NOPMCS2Z.js";import"./chunk-TDKBGGNK.js";import"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import"./chunk-6OPAGPKF.js";import{Ab as o,Ac as P,Bb as t,Cb as p,Dc as N,Ec as x,Fc as A,Gb as m,H as j,Hb as M,Hc as J,Ib as $,Jb as k,Pc as ve,Qb as s,Ra as _,Rb as u,Sb as g,Tb as h,Ub as H,Vb as W,Wb as I,Yb as F,_ as v,bb as Re,ea as D,fa as f,gb as O,gc as U,hb as ke,ic as R,lc as r,mc as Be,nc as E,oa as X,qc as Le,rb as xe,rc as Ge,sb as ye,sc as be,ub as C,vb as S,wb as w,xb as z,yb as V,zb as T,zc as q}from"./chunk-HNWRQABR.js";import"./chunk-EUDKD2JW.js";var _n=()=>[import("./chunk-NQ27E6KP.js").then(n=>n.NgTemplateOutlet),Q,Ue,Je,qe,import("./chunk-DKTUN7FF.js").then(n=>n.DurationFormatPipe),import("./chunk-KLW6HEOS.js").then(n=>n.BytesPipe),import("./chunk-HI4XLHO3.js").then(n=>n.RelativeTimePipe)],ln=()=>["/add-backup"],rn=()=>["/restore"],an=n=>({$implicit:n}),cn=n=>["/backup",n],sn=n=>["/restore",n],un=n=>["/backup",n,"export"],Fn=n=>["/backup",n,"delete"],dn=n=>["/backup",n,"database"],pn=n=>["/backup",n,"commandline"],gn=n=>["/backup",n,"log"];function Tn(n,i){if(n&1){let e=k();o(0,"button",51),I("click",function(){let c=D(e).$implicit,d=F(2);return f(d.sortByColumn.set(c.value))}),g(1,15),t()}if(n&2){let e=i.$implicit,a=F(2);R("active",a.orderBy()===e.value),_(),h(e.label),H(1)}}function Cn(n,i){if(n&1&&(o(0,"sh-menu",52)(1,"button",53),s(2,14),p(3,"strong")(4,"sh-icon"),u(),t(),m(5,54),z(6,Tn,2,3,"button",55,w),M(),t()),n&2){let e=F();_(4),h(e.orderBy()),H(2),_(2),V(e.sortOrderOptions())}}function Sn(n,i){if(n&1&&(o(0,"p")(1,"span"),g(2,21),t(),r(3),N(4,"relativeTime"),t()),n&2){let e=F().$implicit,a=F(4);_(3),E(" ",A(4,1,e.Schedule==null?null:e.Schedule.Time,a.timeType()==="actual")," ")}}function En(n,i){if(n&1&&(r(0),N(1,"durationFormat")),n&2){let e=F().$implicit,a=F(4);E(" ",A(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.LastBackupDuration,a.timeType()==="actual")," ")}}function mn(n,i){n&1&&(m(0),r(1,"-"),M())}function Mn(n,i){if(n&1&&(r(0),N(1,"bytes")),n&2){let e=F().$implicit;E(" ",x(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.SourceFilesSize)," ")}}function On(n,i){n&1&&(m(0),r(1,"-"),M())}function Nn(n,i){if(n&1&&(r(0),N(1,"bytes")),n&2){let e=F().$implicit;E(" ",x(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.TargetFilesSize)," ")}}function Dn(n,i){n&1&&(m(0),r(1,"-"),M())}function fn(n,i){n&1&&$(0)}function $n(n,i){if(n&1&&(o(0,"div",58)(1,"div",45)(2,"h3"),r(3),o(4,"sh-chip")(5,"sh-icon"),r(6),t(),r(7),t()(),o(8,"p")(9,"span"),g(10,16),t(),r(11),N(12,"relativeTime"),t(),C(13,Sn,5,4,"p"),o(14,"p")(15,"span"),g(16,17),t(),C(17,En,2,4)(18,mn,2,0,"ng-container"),t(),o(19,"p")(20,"span"),g(21,18),t(),C(22,Mn,2,3)(23,On,2,0,"ng-container"),t(),o(24,"p")(25,"span"),g(26,19),t(),C(27,Nn,2,3)(28,Dn,2,0,"ng-container"),t()(),o(29,"sh-chip",59),g(30,20),t(),o(31,"div",49),O(32,fn,1,0,"ng-container",60),t()()),n&2){let e=i.$implicit,a=F(4),c=U(51);_(3),E(" ",(e.Backup==null?null:e.Backup.Name)??a.MISSING_BACKUP_NAME," "),_(3),Be(a.getBackendIcon(e.Backup==null?null:e.Backup.TargetURL)),_(),E(" ",a.getBackendType(e.Backup==null?null:e.Backup.TargetURL)," "),_(4),E(" ",A(12,12,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.LastBackupFinished,a.timeType()==="actual")," "),_(2),S(e.Schedule!=null&&e.Schedule.Time?13:-1),_(4),S(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.LastBackupDuration?17:18),_(5),S(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.SourceFilesSize?22:23),_(5),S(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.TargetFilesSize?27:28);let d=a.getBackupVersionCount(e);_(3),h(d)(d),H(30),_(2),T("ngTemplateOutlet",c)("ngTemplateOutletContext",P(15,an,e))}}function Pn(n,i){if(n&1&&z(0,$n,33,17,"div",58,w),n&2){let e=F(3);V(e.backups())}}function In(n,i){n&1&&(m(0),g(1,22),M())}function An(n,i){if(n&1&&(o(0,"div",56),C(1,Pn,2,0)(2,In,2,0,"ng-container"),t()),n&2){let e=F(2);_(),S(e.backups().length?1:2)}}function hn(n,i){n&1&&(s(0,23,1),$(1),u())}function Hn(n,i){n&1&&(s(0,24,1),$(1),u())}function Rn(n,i){n&1&&(s(0,25,1),$(1),u())}function kn(n,i){n&1&&(s(0,26,1),$(1),u())}function xn(n,i){n&1&&(s(0,27,1),$(1),u())}function yn(n,i){n&1&&(s(0,28,1),$(1),u())}function Bn(n,i){n&1&&(s(0,29,1),$(1),u())}function Ln(n,i){if(n&1&&(r(0),N(1,"relativeTime")),n&2){let e=F().$implicit,a=F(3);E(" ",A(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.LastBackupDate,a.timeType()==="actual")," ")}}function Gn(n,i){n&1&&(m(0),r(1,"-"),M())}function bn(n,i){if(n&1&&(r(0),N(1,"relativeTime")),n&2){let e=F().$implicit,a=F(3);E(" ",A(1,1,e.Schedule==null?null:e.Schedule.Time,a.timeType()==="actual")," ")}}function vn(n,i){n&1&&(m(0),r(1,"-"),M())}function Xn(n,i){if(n&1&&(r(0),N(1,"durationFormat")),n&2){let e=F().$implicit,a=F(3);E(" ",A(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.LastBackupDuration,a.timeType()==="actual")," ")}}function wn(n,i){n&1&&(m(0),r(1,"-"),M())}function zn(n,i){if(n&1&&(r(0),N(1,"bytes")),n&2){let e=F().$implicit;E(" ",x(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.SourceFilesSize)," ")}}function Vn(n,i){n&1&&(m(0),r(1,"-"),M())}function Un(n,i){if(n&1&&(r(0),N(1,"bytes")),n&2){let e=F().$implicit;E(" ",x(1,1,e.Backup==null||e.Backup.Metadata==null?null:e.Backup.Metadata.TargetFilesSize)," ")}}function Kn(n,i){n&1&&(m(0),r(1,"-"),M())}function jn(n,i){n&1&&$(0)}function Wn(n,i){if(n&1&&(o(0,"tr")(1,"td"),r(2),t(),o(3,"td"),r(4),t(),o(5,"td"),C(6,Ln,2,4)(7,Gn,2,0,"ng-container"),t(),o(8,"td"),C(9,bn,2,4)(10,vn,2,0,"ng-container"),t(),o(11,"td"),C(12,Xn,2,4)(13,wn,2,0,"ng-container"),t(),o(14,"td"),C(15,zn,2,3)(16,Vn,2,0,"ng-container"),t(),o(17,"td"),C(18,Un,2,3)(19,Kn,2,0,"ng-container"),t(),o(20,"td")(21,"span"),g(22,32),t()(),o(23,"td"),O(24,jn,1,0,"ng-container",60),t()()),n&2){let e=i.$implicit,a=F(3),c=U(51);_(2),E(" ",(e.Backup==null?null:e.Backup.Name)??a.MISSING_BACKUP_NAME," "),_(2),E(" ",a.getBackendType(e.Backup==null?null:e.Backup.TargetURL)," "),_(2),S(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.LastBackupDate?6:7),_(3),S(e.Schedule!=null&&e.Schedule.Time?9:10),_(3),S(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.LastBackupDuration?12:13),_(3),S(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.SourceFilesSize?15:16),_(3),S(!(e.Backup==null||e.Backup.Metadata==null)&&e.Backup.Metadata.TargetFilesSize?18:19);let d=a.getBackupVersionCount(e);_(4),h(d)(d),H(22),_(2),T("ngTemplateOutlet",c)("ngTemplateOutletContext",P(11,an,e))}}function qn(n,i){if(n&1){let e=k();o(0,"sh-table",61),be("sortByColumnChange",function(c){D(e);let d=F(2);return Ge(d.sortByColumn,c)||(d.sortByColumn=c),f(c)}),o(1,"tr",62)(2,"th",63),s(3,23),O(4,hn,2,0,"ng-container",64),u(),t(),o(5,"th",65),s(6,24),O(7,Hn,2,0,"ng-container",64),u(),t(),o(8,"th",66),s(9,25),O(10,Rn,2,0,"ng-container",64),u(),t(),o(11,"th",67),s(12,26),O(13,kn,2,0,"ng-container",64),u(),t(),o(14,"th",68),s(15,27),O(16,xn,2,0,"ng-container",64),u(),t(),o(17,"th",69),s(18,28),O(19,yn,2,0,"ng-container",64),u(),t(),o(20,"th",70),s(21,29),O(22,Bn,2,0,"ng-container",64),u(),t(),o(23,"th"),g(24,30),t(),o(25,"th"),g(26,31),t()(),z(27,Wn,25,13,"tr",null,w),t()}if(n&2){let e=F(2),a=U(53);T("data",e.backups())("loading",e.backupsLoading()),Le("sortByColumn",e.sortByColumn),_(4),T("ngTemplateOutlet",a),_(3),T("ngTemplateOutlet",a),_(3),T("ngTemplateOutlet",a),_(3),T("ngTemplateOutlet",a),_(3),T("ngTemplateOutlet",a),_(3),T("ngTemplateOutlet",a),_(3),T("ngTemplateOutlet",a),_(5),V(e.backups())}}function Jn(n,i){if(n&1&&C(0,An,3,1,"div",56)(1,qn,29,10,"sh-table",57),n&2){let e=F();S(e.viewMode()==="list"?0:e.viewMode()==="details"?1:-1)}}function Qn(n,i){n&1&&(o(0,"div",71),p(1,"sh-progress-bar",72),o(2,"div",45)(3,"h3"),g(4,33),t()()())}function Yn(n,i){n&1&&g(0,34,1)}function Zn(n,i){n&1&&(o(0,"sh-icon"),r(1,"check"),t())}function et(n,i){n&1&&(o(0,"sh-icon"),r(1,"dots-three-vertical"),t())}function nt(n,i){if(n&1){let e=k();o(0,"button",73),I("click",function(){let c=D(e).$implicit,d=F();return f(d.startBackup(c.Backup==null?null:c.Backup.ID))}),s(1,34),p(2,"sh-icon"),C(3,Yn,1,0),u(),t(),o(4,"button",74)(5,"sh-icon"),r(6,"pencil-simple"),t()(),o(7,"sh-menu")(8,"button",46),C(9,Zn,2,0,"sh-icon")(10,et,2,0,"sh-icon"),t(),m(11,54),o(12,"h3",75),r(13,"Operations"),t(),o(14,"button",76),s(15,35),p(16,"sh-icon"),u(),t(),o(17,"button",76),s(18,36),p(19,"sh-icon"),u(),t(),o(20,"button",76),s(21,37),p(22,"sh-icon"),u(),t(),p(23,"sh-divider"),o(24,"h3",75),r(25,"Advanced"),t(),o(26,"button",76),s(27,38),p(28,"sh-icon"),u(),t(),o(29,"button",51),I("click",function(){let c=D(e).$implicit,d=F();return f(d.verifyFiles(c.Backup==null?null:c.Backup.ID))}),s(30,39),p(31,"sh-icon"),u(),t(),o(32,"button",51),I("click",function(){let c=D(e).$implicit,d=F();return f(d.compressBackup(c.Backup==null?null:c.Backup.ID))}),s(33,40),p(34,"sh-icon"),u(),t(),o(35,"button",76),s(36,41),p(37,"sh-icon"),u(),t(),p(38,"sh-divider"),o(39,"h3",75),r(40,"Reporting"),t(),o(41,"button",76),s(42,42),p(43,"sh-icon"),u(),t(),M(),t()}if(n&2){let e=i.$implicit,a=F();R("loader",a.startingBackup()===(e.Backup==null?null:e.Backup.ID)),_(3),S(a.viewMode()==="list"?3:-1),_(),T("routerLink",P(15,cn,e.Backup==null?null:e.Backup.ID)),_(4),R("loader",a.loadingId()===(e.Backup==null?null:e.Backup.ID))("success",a.successId()===(e.Backup==null?null:e.Backup.ID)),_(),S(a.successId()===(e.Backup==null?null:e.Backup.ID)?9:10),_(5),T("routerLink",P(17,sn,e.Backup==null?null:e.Backup.ID)),_(3),T("routerLink",P(19,un,e.Backup==null?null:e.Backup.ID)),_(3),T("routerLink",P(21,Fn,e.Backup==null?null:e.Backup.ID)),_(6),T("routerLink",P(23,dn,e.Backup==null?null:e.Backup.ID)),_(9),T("routerLink",P(25,pn,e.Backup==null?null:e.Backup.ID)),_(6),T("routerLink",P(27,gn,e.Backup==null?null:e.Backup.ID))}}function tt(n,i){n&1&&(o(0,"sh-icon",77),r(1,"funnel-simple"),t(),o(2,"sh-icon",78),r(3,"sort-ascending"),t(),o(4,"sh-icon",79),r(5,"sort-descending"),t())}var on={file:{Display:$localize`Local`,Icon:null}},Z=class n{#n=v(Qe);#t=v(en);#e=v(Ze);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=Ye("viewMode","list");sortByColumn=X(this.#e.orderBy());loadingId=X(null);successId=X(null);sortEffect=ve(()=>this.#e.setOrderBy(this.sortByColumn()));ngOnInit(){this.#e.getBackups(!0)}setOrderBy(i){this.#e.setOrderBy(i)}setTimeType(i){this.#e.setTimeType(i)}startBackup(i){this.#t.resumeDialogCheck(()=>this.#e.startBackup(i))}getBackendIcon(i){if(!i)return"";let e=i.split("://")[0],a=Y(e);return on[a.key]?.Icon??"database"}getBackendType(i){if(!i)return"";let e=i.split("://")[0],a=Y(e);if(!a)return"";let c=on[a.key];if(c?.Display)return c.Display;if(a.key==="s3"){let d="http://null?"+i.split("?")[1],y=new URL(d).searchParams.get("s3-server-name")?.toLowerCase()??"";for(let[B,L]of Object.entries(nn))if(y.endsWith(B))return L}return a.displayName}getBackupVersionCount(i){return parseInt(i?.Backup?.Metadata?.BackupListCount??"",10)||0}verifyFiles(i){this.loadingId.set(i),this.#n.postApiV1BackupByIdVerify({id:i}).pipe(j(()=>this.loadingId.set(null))).subscribe({next:()=>{this.successId.set(i),setTimeout(()=>this.successId.set(null),2e3)}})}compressBackup(i){this.loadingId.set(i),this.#n.postApiV1BackupByIdCompact({id:i}).pipe(j(()=>this.loadingId.set(null))).subscribe({next:()=>{this.successId.set(i),setTimeout(()=>this.successId.set(null),2e3)}})}static \u0275fac=function(e){return new(e||n)};static \u0275cmp=Re({type:n,selectors:[["app-home"]],decls:54,vars:11,consts:()=>{let i;i=$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_SH_ICON:plus${"\uFFFD/#12\uFFFD"}:CLOSE_TAG_SH_ICON:`;let c;c=$localize`Restores`;let d;d=$localize`Restores allow you to restore your data from the cloud.`;let K;K=$localize` Start ${"\uFFFD#22\uFFFD"}:START_TAG_SH_ICON:arrow-right${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SH_ICON:`;let y;y=$localize`My backups`;let B;B=$localize`${"\uFFFD#31\uFFFD"}:START_TAG_SH_ICON:rows${"\uFFFD/#31\uFFFD"}:CLOSE_TAG_SH_ICON: List `;let L;L=$localize`${"\uFFFD#34\uFFFD"}:START_TAG_SH_ICON:list${"\uFFFD/#34\uFFFD"}:CLOSE_TAG_SH_ICON: Details `;let ee;ee=$localize` Time: ${"\uFFFD#38\uFFFD"}:START_TAG_STRONG:${"\uFFFD0\uFFFD"}:INTERPOLATION:${"\uFFFD/#38\uFFFD"}:CLOSE_TAG_STRONG:${"\uFFFD#39\uFFFD"}:START_TAG_SH_ICON:clock${"\uFFFD/#39\uFFFD"}:CLOSE_TAG_SH_ICON:`;let ne;ne=$localize`Relative time`;let te;te=$localize`Actual time`;let ie;ie=$localize` Order by: ${"\uFFFD#3\uFFFD"}:START_TAG_STRONG:${"\uFFFD0\uFFFD"}:INTERPOLATION:${"\uFFFD/#3\uFFFD"}:CLOSE_TAG_STRONG:${"\uFFFD#4\uFFFD"}:START_TAG_SH_ICON:arrows-down-up${"\uFFFD/#4\uFFFD"}:CLOSE_TAG_SH_ICON:`;let oe;oe=$localize` ${"\uFFFD0\uFFFD"}:INTERPOLATION: `;let ae;ae=$localize`Last successful backup:`;let _e;_e=$localize`Duration:`;let le;le=$localize`Source:`;let re;re=$localize`Destination:`;let G;G=$localize`{VAR_PLURAL, plural, =0 {No version yet} =1 {1 Version} other {{INTERPOLATION} Versions}}`,G=W(G,{INTERPOLATION:"\uFFFD1\uFFFD",VAR_PLURAL:"\uFFFD0\uFFFD"});let ce;ce=$localize` ${G}:ICU@@6502601490918455200: `;let se;se=$localize`Next scheduled run:`;let ue;ue=$localize`No backups founds`;let Fe;Fe=$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 de;de=$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 pe;pe=$localize` Last backup ${"\uFFFD*10:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*10:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let ge;ge=$localize` Next run ${"\uFFFD*13:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*13:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Te;Te=$localize` Duration ${"\uFFFD*16:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*16:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Ce;Ce=$localize` Source ${"\uFFFD*19:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*19:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Se;Se=$localize` Destination ${"\uFFFD*22:1\uFFFD\uFFFD#1:1\uFFFD"}:START_TAG_NG_CONTAINER:${"\uFFFD/#1:1\uFFFD\uFFFD/*22:1\uFFFD"}:CLOSE_TAG_NG_CONTAINER:`;let Ee;Ee=$localize`Version`;let me;me=$localize`Actions`;let b;b=$localize`{VAR_PLURAL, plural, =0 {No versions} =1 {1 Version} other {{INTERPOLATION} Versions}}`,b=W(b,{INTERPOLATION:"\uFFFD1\uFFFD",VAR_PLURAL:"\uFFFD0\uFFFD"});let Me;Me=$localize` ${b}:ICU@@3521773141017690117: `;let Oe;Oe=$localize`Loading backups...`;let Ne;Ne=$localize`${"\uFFFD#2\uFFFD"}:START_TAG_SH_ICON:play-circle${"\uFFFD/#2\uFFFD"}:CLOSE_TAG_SH_ICON:${"\uFFFD*3:1\uFFFD"}:START_BLOCK_IF: Start ${"\uFFFD/*3:1\uFFFD"}:CLOSE_BLOCK_IF:`;let De;De=$localize`${"\uFFFD#16\uFFFD"}:START_TAG_SH_ICON:clock-counter-clockwise${"\uFFFD/#16\uFFFD"}:CLOSE_TAG_SH_ICON: Restore `;let fe;fe=$localize`${"\uFFFD#19\uFFFD"}:START_TAG_SH_ICON:export${"\uFFFD/#19\uFFFD"}:CLOSE_TAG_SH_ICON: Export `;let $e;$e=$localize`${"\uFFFD#22\uFFFD"}:START_TAG_SH_ICON:x-circle${"\uFFFD/#22\uFFFD"}:CLOSE_TAG_SH_ICON: Delete `;let Pe;Pe=$localize`${"\uFFFD#28\uFFFD"}:START_TAG_SH_ICON:database${"\uFFFD/#28\uFFFD"}:CLOSE_TAG_SH_ICON: Database `;let Ie;Ie=$localize`${"\uFFFD#31\uFFFD"}:START_TAG_SH_ICON:check-square-offset${"\uFFFD/#31\uFFFD"}:CLOSE_TAG_SH_ICON: Verify files `;let Ae;Ae=$localize`${"\uFFFD#34\uFFFD"}:START_TAG_SH_ICON:file-archive${"\uFFFD/#34\uFFFD"}:CLOSE_TAG_SH_ICON: Compress now `;let he;he=$localize`${"\uFFFD#37\uFFFD"}:START_TAG_SH_ICON:terminal-window${"\uFFFD/#37\uFFFD"}:CLOSE_TAG_SH_ICON: Commandline `;let He;return He=$localize`${"\uFFFD#43\uFFFD"}:START_TAG_SH_ICON:notepad${"\uFFFD/#43\uFFFD"}:CLOSE_TAG_SH_ICON: Log `,[["actions",""],["sortIcons",""],i,e,a,c,d,K,y,B,L,ee,ne,te,ie,oe,ae,_e,le,re,ce,se,ue,Fe,de,pe,ge,Te,Ce,Se,Ee,me,Me,Oe,Ne,De,fe,$e,Pe,Ie,Ae,he,He,[1,"type-a",3,"routerLink"],["src","assets/images/backup.png","alt","","width","48px"],[1,"text"],["type","button","shButton",""],["src","assets/images/restore.png","alt","","width","48px"],[1,"content"],[1,"actions"],[1,"small"],["type","button",3,"click"],[1,"table-overview"],["type","button","shButton","",1,"small"],["menu",""],["type","button",3,"active"],[1,"backups"],[1,"type-b",3,"data","loading","sortByColumn"],[1,"backup"],[1,"simple","success"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"type-b",3,"sortByColumnChange","data","loading","sortByColumn"],["table-header",""],["shSort","name"],[4,"ngTemplateOutlet"],["shSort","type"],["shSort","lastrun"],["shSort","nextrun"],["shSort","duration"],["shSort","sourcesize"],["shSort","destinationsize"],[1,"loading-list"],[1,"indeterminate","primary"],["shButton","",3,"click"],["type","button","shButton","",3,"routerLink"],["title",""],["type","button",3,"routerLink"],[1,"filter"],[1,"asc"],[1,"desc"]]},template:function(e,a){if(e&1){let c=k();p(0,"app-status-bar"),o(1,"section")(2,"header")(3,"sh-card",43),p(4,"img",44),o(5,"div",45)(6,"h3"),g(7,2),t(),o(8,"p"),g(9,3),t()(),o(10,"button",46),s(11,4),p(12,"sh-icon"),u(),t()(),o(13,"sh-card",43),p(14,"img",47),o(15,"div",45)(16,"h3"),g(17,5),t(),o(18,"p"),g(19,6),t()(),o(20,"button",46),s(21,7),p(22,"sh-icon"),u(),t()()(),o(23,"div",48)(24,"h2"),m(25),g(26,8),M(),o(27,"div",49)(28,"sh-button-group",50)(29,"button",51),I("click",function(){return D(c),f(a.viewMode.set("list"))}),s(30,9),p(31,"sh-icon"),u(),t(),o(32,"button",51),I("click",function(){return D(c),f(a.viewMode.set("details"))}),s(33,10),p(34,"sh-icon"),u(),t()(),o(35,"sh-menu",52)(36,"button",53),s(37,11),p(38,"strong")(39,"sh-icon"),u(),t(),m(40,54),o(41,"button",51),I("click",function(){return D(c),f(a.setTimeType("relative"))}),g(42,12),t(),o(43,"button",51),I("click",function(){return D(c),f(a.setTimeType("actual"))}),g(44,13),t(),M(),t(),C(45,Cn,8,1,"sh-menu",52),t()(),ke(46,Jn,2,1)(47,Qn,5,0),xe(48,46,_n,null,47),t()(),O(50,nt,44,29,"ng-template",null,0,J)(52,tt,6,0,"ng-template",null,1,J)}e&2&&(_(3),T("routerLink",q(9,ln)),_(10),T("routerLink",q(10,rn)),_(16),R("active",a.viewMode()==="list"),_(3),R("active",a.viewMode()==="details"),_(7),h(a.timeType()),H(37),_(6),S(a.viewMode()==="list"?45:-1),_(3),ye(!a.backupsLoading()))},dependencies:[Xe,tn,Ve,ze,Q,Ke,je,We,we],styles:["[_nghost-%COMP%]{display:block}h2[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between}section[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2rem;padding:2rem 0}header[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 1fr;padding:0 2rem;gap:1rem}sh-card[_ngcontent-%COMP%]{display:flex;align-items:center;gap:1rem}sh-card[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{flex:1 0;display:flex;flex-direction:column;gap:.25rem}.content[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:1rem}.content[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{padding:0 2rem}.backups[_ngcontent-%COMP%]{display:flex;flex-direction:column;padding:0 2rem;gap:.5rem}.backup[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;padding:2rem;gap:1rem;border:1px solid var(--base-4);border-radius:var(--shape-3);box-shadow:var(--box-shadow-10)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem;width:100%;max-width:40%}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] sh-icon[_ngcontent-%COMP%]{color:var(--base-8)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{font:var(--paragraph-30);color:var(--base-8)}.backup[_ngcontent-%COMP%] .text[_ngcontent-%COMP%] p[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{color:var(--base-12)}.actions[_ngcontent-%COMP%]{display:flex;align-items:center;gap:.5rem}.sortable[_ngcontent-%COMP%]{-webkit-user-select:none;user-select:none}.sortable[_ngcontent-%COMP%] sh-icon[_ngcontent-%COMP%]{margin-left:.5rem;font-size:1rem;justify-self:flex-end;display:none}.sortable[_ngcontent-%COMP%]:not(.sort-asc):not(.sort-desc) sh-icon.filter[_ngcontent-%COMP%]{display:block}.sortable.sort-asc[_ngcontent-%COMP%] sh-icon.asc[_ngcontent-%COMP%]{display:block;color:var(--base-12)}.sortable.sort-desc[_ngcontent-%COMP%] sh-icon.desc[_ngcontent-%COMP%]{display:block;color:var(--base-12)}"],changeDetection:0})};export{Z as default};
package/index.html CHANGED
@@ -59,9 +59,9 @@
59
59
  }
60
60
  }
61
61
  </style>
62
- <style>:root{--font-size:16px;font-size:var(--font-size)}html body{--ship-light:initial;--ship-dark: ;color-scheme:light dark;--primary-1:var(--ship-light, hsl(217, 91%, 95%)) var(--ship-dark, hsl(217, 91%, 9.5%));--primary-2:var(--ship-light, hsl(217, 91%, 90%)) var(--ship-dark, hsl(217, 91%, 15%));--primary-3:var(--ship-light, hsl(217, 91%, 85%)) var(--ship-dark, hsl(217, 91%, 22.5%));--primary-4:var(--ship-light, hsl(217, 91%, 80%)) var(--ship-dark, hsl(217, 91%, 30%));--primary-5:var(--ship-light, hsl(217, 91%, 75%)) var(--ship-dark, hsl(217, 91%, 37.5%));--primary-6:var(--ship-light, hsl(217, 91%, 70%)) var(--ship-dark, hsl(217, 91%, 45%));--primary-7:var(--ship-light, hsl(217, 91%, 65%)) var(--ship-dark, hsl(217, 91%, 52.5%));--primary-8:var(--ship-light, hsl(217, 91%, 60%)) var(--ship-dark, hsl(217, 91%, 60%));--primary-9:var(--ship-light, hsl(217, 91%, 46.5%)) var(--ship-dark, hsl(217, 91%, 70%));--primary-10:var(--ship-light, hsl(217, 91%, 33%)) var(--ship-dark, hsl(217, 91%, 80%));--primary-11:var(--ship-light, hsl(217, 91%, 19.5%)) var(--ship-dark, hsl(217, 91%, 90%));--primary-12:var(--ship-light, hsl(217, 91%, 6%)) var(--ship-dark, hsl(217, 91%, 100%));--primary-g2:linear-gradient(180deg, hsl(217, 91%, 70%) 0%, hsl(217, 91%, 60%) 50%);--primary-g3:linear-gradient(180deg, hsl(217, 91%, 80%) 0%, hsl(217, 91%, 60%) 50%);--accent-1:var(--ship-light, hsl(258, 90%, 95.75%)) var(--ship-dark, hsl(258, 90%, 9.25%));--accent-2:var(--ship-light, hsl(258, 90%, 91.5%)) var(--ship-dark, hsl(258, 90%, 16.5%));--accent-3:var(--ship-light, hsl(258, 90%, 87.25%)) var(--ship-dark, hsl(258, 90%, 24.75%));--accent-4:var(--ship-light, hsl(258, 90%, 83%)) var(--ship-dark, hsl(258, 90%, 33%));--accent-5:var(--ship-light, hsl(258, 90%, 78.75%)) var(--ship-dark, hsl(258, 90%, 41.25%));--accent-6:var(--ship-light, hsl(258, 90%, 74.5%)) var(--ship-dark, hsl(258, 90%, 49.5%));--accent-7:var(--ship-light, hsl(258, 90%, 70.25%)) var(--ship-dark, hsl(258, 90%, 57.75%));--accent-8:var(--ship-light, hsl(258, 90%, 66%)) var(--ship-dark, hsl(258, 90%, 66%));--accent-9:var(--ship-light, hsl(258, 90%, 51.15%)) var(--ship-dark, hsl(258, 90%, 74.5%));--accent-10:var(--ship-light, hsl(258, 90%, 36.3%)) var(--ship-dark, hsl(258, 90%, 83%));--accent-11:var(--ship-light, hsl(258, 90%, 21.45%)) var(--ship-dark, hsl(258, 90%, 91.5%));--accent-12:var(--ship-light, hsl(258, 90%, 6.6%)) var(--ship-dark, hsl(258, 90%, 100%));--accent-g2:linear-gradient(180deg, hsl(258, 90%, 74.5%) 0%, hsl(258, 90%, 66%) 50%);--accent-g3:linear-gradient(180deg, hsl(258, 90%, 83%) 0%, hsl(258, 90%, 66%) 50%);--warn-1:var(--ship-light, hsl(37, 92%, 93.75%)) var(--ship-dark, hsl(37, 92%, 9.25%));--warn-2:var(--ship-light, hsl(37, 92%, 87.5%)) var(--ship-dark, hsl(37, 92%, 12.5%));--warn-3:var(--ship-light, hsl(37, 92%, 81.25%)) var(--ship-dark, hsl(37, 92%, 18.75%));--warn-4:var(--ship-light, hsl(37, 92%, 75%)) var(--ship-dark, hsl(37, 92%, 25%));--warn-5:var(--ship-light, hsl(37, 92%, 68.75%)) var(--ship-dark, hsl(37, 92%, 31.25%));--warn-6:var(--ship-light, hsl(37, 92%, 62.5%)) var(--ship-dark, hsl(37, 92%, 37.5%));--warn-7:var(--ship-light, hsl(37, 92%, 56.25%)) var(--ship-dark, hsl(37, 92%, 43.75%));--warn-8:var(--ship-light, hsl(37, 92%, 50%)) var(--ship-dark, hsl(37, 92%, 50%));--warn-9:var(--ship-light, hsl(37, 92%, 38.75%)) var(--ship-dark, hsl(37, 92%, 62.5%));--warn-10:var(--ship-light, hsl(37, 92%, 27.5%)) var(--ship-dark, hsl(37, 92%, 75%));--warn-11:var(--ship-light, hsl(37, 92%, 16.25%)) var(--ship-dark, hsl(37, 92%, 87.5%));--warn-12:var(--ship-light, hsl(37, 92%, 5%)) var(--ship-dark, hsl(37, 92%, 100%));--warn-g2:linear-gradient(180deg, hsl(37, 92%, 62.5%) 0%, hsl(37, 92%, 50%) 50%);--warn-g3:linear-gradient(180deg, hsl(37, 92%, 75%) 0%, hsl(37, 92%, 50%) 50%);--error-1:var(--ship-light, hsl(0, 84%, 95%)) var(--ship-dark, hsl(0, 84%, 7.5%));--error-2:var(--ship-light, hsl(0, 84%, 90%)) var(--ship-dark, hsl(0, 84%, 15%));--error-3:var(--ship-light, hsl(0, 84%, 85%)) var(--ship-dark, hsl(0, 84%, 22.5%));--error-4:var(--ship-light, hsl(0, 84%, 80%)) var(--ship-dark, hsl(0, 84%, 30%));--error-5:var(--ship-light, hsl(0, 84%, 75%)) var(--ship-dark, hsl(0, 27%, 10%));--error-6:var(--ship-light, hsl(0, 84%, 70%)) var(--ship-dark, hsl(0, 84%, 45%));--error-7:var(--ship-light, hsl(0, 84%, 65%)) var(--ship-dark, hsl(0, 84%, 52.5%));--error-8:var(--ship-light, hsl(0, 84%, 60%)) var(--ship-dark, hsl(0, 84%, 60%));--error-9:var(--ship-light, hsl(0, 84%, 46.5%)) var(--ship-dark, hsl(0, 84%, 70%));--error-10:var(--ship-light, hsl(0, 84%, 33%)) var(--ship-dark, hsl(0, 84%, 80%));--error-11:var(--ship-light, hsl(0, 84%, 19.5%)) var(--ship-dark, hsl(0, 84%, 90%));--error-12:var(--ship-light, hsl(0, 84%, 6%)) var(--ship-dark, hsl(0, 84%, 100%));--error-g2:linear-gradient(180deg, hsl(0, 84%, 70%) 0%, hsl(0, 84%, 60%) 50%);--error-g3:linear-gradient(180deg, hsl(0, 84%, 80%) 0%, hsl(0, 84%, 60%) 50%);--success-1:var(--ship-light, hsl(160, 84%, 92.38%)) var(--ship-dark, hsl(160, 84%, 7.88%));--success-2:var(--ship-light, hsl(160, 84%, 84.75%)) var(--ship-dark, hsl(160, 3%, 17%));--success-3:var(--ship-light, hsl(160, 84%, 77.13%)) var(--ship-dark, hsl(160, 84%, 14.63%));--success-4:var(--ship-light, hsl(160, 84%, 69.5%)) var(--ship-dark, hsl(160, 84%, 19.5%));--success-5:var(--ship-light, hsl(160, 84%, 61.88%)) var(--ship-dark, hsl(160, 84%, 24.38%));--success-6:var(--ship-light, hsl(160, 84%, 54.25%)) var(--ship-dark, hsl(160, 84%, 29.25%));--success-7:var(--ship-light, hsl(160, 84%, 46.63%)) var(--ship-dark, hsl(160, 84%, 34.13%));--success-8:var(--ship-light, hsl(160, 84%, 39%)) var(--ship-dark, hsl(160, 84%, 39%));--success-9:var(--ship-light, hsl(160, 84%, 30.23%)) var(--ship-dark, hsl(160, 84%, 54.25%));--success-10:var(--ship-light, hsl(160, 84%, 21.45%)) var(--ship-dark, hsl(160, 84%, 69.5%));--success-11:var(--ship-light, hsl(160, 84%, 12.67%)) var(--ship-dark, hsl(160, 84%, 84.75%));--success-12:var(--ship-light, hsl(160, 84%, 3.9%)) var(--ship-dark, hsl(160, 84%, 100%));--success-g2:linear-gradient(180deg, hsl(160, 84%, 54.25%) 0%, hsl(160, 84%, 39%) 50%);--success-g3:linear-gradient(180deg, hsl(160, 84%, 69.5%) 0%, hsl(160, 84%, 39%) 50%);--base-1:var(--ship-light, #fff) var(--ship-dark, hsl(0, 0%, 5.75%));--base-2:var(--ship-light, hsl(0, 0%, 98.05%)) var(--ship-dark, hsl(0, 0%, 8.75%));--base-3:var(--ship-light, hsl(0, 0%, 94.5%)) var(--ship-dark, hsl(0, 0%, 11.5%));--base-4:var(--ship-light, hsl(0, 0%, 84.75%)) var(--ship-dark, hsl(0, 0%, 17.25%));--base-5:var(--ship-light, hsl(0, 0%, 79.75%)) var(--ship-dark, hsl(0, 0%, 17.25%));--base-6:var(--ship-light, hsl(0, 0%, 66.25%)) var(--ship-dark, hsl(0, 0%, 28.75%));--base-7:var(--ship-light, hsl(0, 0%, 54.5%)) var(--ship-dark, hsl(0, 0%, 34.5%));--base-8:var(--ship-light, hsl(0, 0%, 46%)) var(--ship-dark, hsl(0, 0%, 46%));--base-9:var(--ship-light, hsl(0, 0%, 35.65%)) var(--ship-dark, hsl(0, 0%, 59.5%));--base-10:var(--ship-light, hsl(0, 0%, 25.3%)) var(--ship-dark, hsl(0, 0%, 73%));--base-11:var(--ship-light, hsl(0, 0%, 14.95%)) var(--ship-dark, hsl(0, 0%, 86.5%));--base-12:var(--ship-light, hsl(0, 0%, 4.6%)) var(--ship-dark, hsl(0, 0%, 100%));--base-g2:linear-gradient(180deg, hsl(0, 0%, 66.25%) 0%, hsl(0, 0%, 46%) 50%);--base-g3:linear-gradient(180deg, hsl(0, 0%, 73%) 0%, hsl(0, 0%, 46%) 50%);--base-g6:linear-gradient(180deg, hsl(0, 0%, 25.3%) 0%, hsl(0, 0%, 14.95%) 50%);--base-g7:linear-gradient(180deg, hsl(0, 0%, 35.65%) 0%, hsl(0, 0%, 14.95%) 50%);--primary-c8:var(--light-text);--accent-c8:var(--light-text);--warn-c8:var(--light-text);--error-c8:var(--light-text);--success-c8:var(--light-text);--display-10:600 5rem / normal Inter Tight, sans-serif;--display-20:600 4.5rem / normal Inter Tight, sans-serif;--display-30:600 4rem / normal Inter Tight, sans-serif;--display-40:600 3.5rem / normal Inter Tight, sans-serif;--display-50:600 3rem / normal Inter Tight, sans-serif;--title-10:500 2.5rem / normal Inter Tight, sans-serif;--title-20:500 2rem / normal Inter Tight, sans-serif;--title-30:500 1.5rem / normal Inter Tight, sans-serif;--title-10B:600 2.5rem / normal Inter Tight, sans-serif;--title-20B:600 2rem / normal Inter Tight, sans-serif;--title-30B:600 1.5rem / normal Inter Tight, sans-serif;--paragraph-10:500 1.125rem / normal Inter Tight, sans-serif;--paragraph-20:500 1rem / normal Inter Tight, sans-serif;--paragraph-30:500 .875rem / normal Inter Tight, sans-serif;--paragraph-40:500 .75rem / normal Inter Tight, sans-serif;--paragraph-10B:600 1.125rem / normal Inter Tight, sans-serif;--paragraph-20B:600 1rem / normal Inter Tight, sans-serif;--paragraph-30B:600 .875rem / 1.125rem Inter Tight, sans-serif;--paragraph-40B:600 .75rem / normal Inter Tight, sans-serif;--code-10:500 1rem / normal monospace;--code-20:500 .875rem / normal monospace;--code-30:500 .75rem / normal monospace;--shape-1:.25rem;--shape-2:.5rem;--shape-3:.75rem;--shape-4:1rem;--shape-5:1.25rem;--box-shadow-10:0 1px 2px 0 rgba(18, 18, 23, .07);--box-shadow-20:0 1px 3px 0 rgba(18, 18, 23, .1);--box-shadow-30:0 1px 4px -1px rgba(18, 18, 23, .08);--box-shadow-35:0 4px 6px -1px rgba(18, 18, 23, .08);--box-shadow-40:0 10px 15px -3px rgba(18, 18, 23, .08);--box-shadow-50:0 20px 25px -5px rgba(18, 18, 23, .1);--box-shadow-60:0 25px 50px -12px rgba(18, 18, 23, .25);--dark-text:#000;--light-text:#fff}*{box-sizing:border-box}html,body,app-root{width:100vw;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--base-2)}body{margin:0;font:var(--paragraph-30);color:var(--base-12)}.loading{position:relative}.loading:before{content:"";width:1rem;height:1rem;border:2px solid var(--loader-c);border-bottom-color:transparent;border-radius:50%;display:flex;box-sizing:border-box;animation:rotation 1s linear infinite;margin:auto;inset:0;position:absolute}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}</style><link rel="stylesheet" href="styles-EZGVWHZF.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles-EZGVWHZF.css"></noscript></head>
62
+ <style>:root{--font-size:16px;font-size:var(--font-size)}html body{--ship-light:initial;--ship-dark: ;color-scheme:light dark;--primary-1:var(--ship-light, hsl(217, 91%, 95%)) var(--ship-dark, hsl(217, 91%, 9.5%));--primary-2:var(--ship-light, hsl(217, 91%, 90%)) var(--ship-dark, hsl(217, 91%, 15%));--primary-3:var(--ship-light, hsl(217, 91%, 85%)) var(--ship-dark, hsl(217, 91%, 22.5%));--primary-4:var(--ship-light, hsl(217, 91%, 80%)) var(--ship-dark, hsl(217, 91%, 30%));--primary-5:var(--ship-light, hsl(217, 91%, 75%)) var(--ship-dark, hsl(217, 91%, 37.5%));--primary-6:var(--ship-light, hsl(217, 91%, 70%)) var(--ship-dark, hsl(217, 91%, 45%));--primary-7:var(--ship-light, hsl(217, 91%, 65%)) var(--ship-dark, hsl(217, 91%, 52.5%));--primary-8:var(--ship-light, hsl(217, 91%, 60%)) var(--ship-dark, hsl(217, 91%, 60%));--primary-9:var(--ship-light, hsl(217, 91%, 46.5%)) var(--ship-dark, hsl(217, 91%, 70%));--primary-10:var(--ship-light, hsl(217, 91%, 33%)) var(--ship-dark, hsl(217, 91%, 80%));--primary-11:var(--ship-light, hsl(217, 91%, 19.5%)) var(--ship-dark, hsl(217, 91%, 90%));--primary-12:var(--ship-light, hsl(217, 91%, 6%)) var(--ship-dark, hsl(217, 91%, 100%));--primary-g2:linear-gradient(180deg, hsl(217, 91%, 70%) 0%, hsl(217, 91%, 60%) 50%);--primary-g3:linear-gradient(180deg, hsl(217, 91%, 80%) 0%, hsl(217, 91%, 60%) 50%);--accent-1:var(--ship-light, hsl(258, 90%, 95.75%)) var(--ship-dark, hsl(258, 90%, 9.25%));--accent-2:var(--ship-light, hsl(258, 90%, 91.5%)) var(--ship-dark, hsl(258, 90%, 16.5%));--accent-3:var(--ship-light, hsl(258, 90%, 87.25%)) var(--ship-dark, hsl(258, 90%, 24.75%));--accent-4:var(--ship-light, hsl(258, 90%, 83%)) var(--ship-dark, hsl(258, 90%, 33%));--accent-5:var(--ship-light, hsl(258, 90%, 78.75%)) var(--ship-dark, hsl(258, 90%, 41.25%));--accent-6:var(--ship-light, hsl(258, 90%, 74.5%)) var(--ship-dark, hsl(258, 90%, 49.5%));--accent-7:var(--ship-light, hsl(258, 90%, 70.25%)) var(--ship-dark, hsl(258, 90%, 57.75%));--accent-8:var(--ship-light, hsl(258, 90%, 66%)) var(--ship-dark, hsl(258, 90%, 66%));--accent-9:var(--ship-light, hsl(258, 90%, 51.15%)) var(--ship-dark, hsl(258, 90%, 74.5%));--accent-10:var(--ship-light, hsl(258, 90%, 36.3%)) var(--ship-dark, hsl(258, 90%, 83%));--accent-11:var(--ship-light, hsl(258, 90%, 21.45%)) var(--ship-dark, hsl(258, 90%, 91.5%));--accent-12:var(--ship-light, hsl(258, 90%, 6.6%)) var(--ship-dark, hsl(258, 90%, 100%));--accent-g2:linear-gradient(180deg, hsl(258, 90%, 74.5%) 0%, hsl(258, 90%, 66%) 50%);--accent-g3:linear-gradient(180deg, hsl(258, 90%, 83%) 0%, hsl(258, 90%, 66%) 50%);--warn-1:var(--ship-light, hsl(37, 92%, 93.75%)) var(--ship-dark, hsl(37, 92%, 9.25%));--warn-2:var(--ship-light, hsl(37, 92%, 87.5%)) var(--ship-dark, hsl(37, 92%, 12.5%));--warn-3:var(--ship-light, hsl(37, 92%, 81.25%)) var(--ship-dark, hsl(37, 92%, 18.75%));--warn-4:var(--ship-light, hsl(37, 92%, 75%)) var(--ship-dark, hsl(37, 92%, 25%));--warn-5:var(--ship-light, hsl(37, 92%, 68.75%)) var(--ship-dark, hsl(37, 92%, 31.25%));--warn-6:var(--ship-light, hsl(37, 92%, 62.5%)) var(--ship-dark, hsl(37, 92%, 37.5%));--warn-7:var(--ship-light, hsl(37, 92%, 56.25%)) var(--ship-dark, hsl(37, 92%, 43.75%));--warn-8:var(--ship-light, hsl(37, 92%, 50%)) var(--ship-dark, hsl(37, 92%, 50%));--warn-9:var(--ship-light, hsl(37, 92%, 38.75%)) var(--ship-dark, hsl(37, 92%, 62.5%));--warn-10:var(--ship-light, hsl(37, 92%, 27.5%)) var(--ship-dark, hsl(37, 92%, 75%));--warn-11:var(--ship-light, hsl(37, 92%, 16.25%)) var(--ship-dark, hsl(37, 92%, 87.5%));--warn-12:var(--ship-light, hsl(37, 92%, 5%)) var(--ship-dark, hsl(37, 92%, 100%));--warn-g2:linear-gradient(180deg, hsl(37, 92%, 62.5%) 0%, hsl(37, 92%, 50%) 50%);--warn-g3:linear-gradient(180deg, hsl(37, 92%, 75%) 0%, hsl(37, 92%, 50%) 50%);--error-1:var(--ship-light, hsl(0, 84%, 95%)) var(--ship-dark, hsl(0, 84%, 7.5%));--error-2:var(--ship-light, hsl(0, 84%, 90%)) var(--ship-dark, hsl(0, 84%, 15%));--error-3:var(--ship-light, hsl(0, 84%, 85%)) var(--ship-dark, hsl(0, 84%, 22.5%));--error-4:var(--ship-light, hsl(0, 84%, 80%)) var(--ship-dark, hsl(0, 84%, 30%));--error-5:var(--ship-light, hsl(0, 84%, 75%)) var(--ship-dark, hsl(0, 27%, 10%));--error-6:var(--ship-light, hsl(0, 84%, 70%)) var(--ship-dark, hsl(0, 84%, 45%));--error-7:var(--ship-light, hsl(0, 84%, 65%)) var(--ship-dark, hsl(0, 84%, 52.5%));--error-8:var(--ship-light, hsl(0, 84%, 60%)) var(--ship-dark, hsl(0, 84%, 60%));--error-9:var(--ship-light, hsl(0, 84%, 46.5%)) var(--ship-dark, hsl(0, 84%, 70%));--error-10:var(--ship-light, hsl(0, 84%, 33%)) var(--ship-dark, hsl(0, 84%, 80%));--error-11:var(--ship-light, hsl(0, 84%, 19.5%)) var(--ship-dark, hsl(0, 84%, 90%));--error-12:var(--ship-light, hsl(0, 84%, 6%)) var(--ship-dark, hsl(0, 84%, 100%));--error-g2:linear-gradient(180deg, hsl(0, 84%, 70%) 0%, hsl(0, 84%, 60%) 50%);--error-g3:linear-gradient(180deg, hsl(0, 84%, 80%) 0%, hsl(0, 84%, 60%) 50%);--success-1:var(--ship-light, hsl(160, 84%, 92.38%)) var(--ship-dark, hsl(160, 84%, 7.88%));--success-2:var(--ship-light, hsl(160, 84%, 84.75%)) var(--ship-dark, hsl(160, 3%, 17%));--success-3:var(--ship-light, hsl(160, 84%, 77.13%)) var(--ship-dark, hsl(160, 84%, 14.63%));--success-4:var(--ship-light, hsl(160, 84%, 69.5%)) var(--ship-dark, hsl(160, 84%, 19.5%));--success-5:var(--ship-light, hsl(160, 84%, 61.88%)) var(--ship-dark, hsl(160, 84%, 24.38%));--success-6:var(--ship-light, hsl(160, 84%, 54.25%)) var(--ship-dark, hsl(160, 84%, 29.25%));--success-7:var(--ship-light, hsl(160, 84%, 46.63%)) var(--ship-dark, hsl(160, 84%, 34.13%));--success-8:var(--ship-light, hsl(160, 84%, 39%)) var(--ship-dark, hsl(160, 84%, 39%));--success-9:var(--ship-light, hsl(160, 84%, 30.23%)) var(--ship-dark, hsl(160, 84%, 54.25%));--success-10:var(--ship-light, hsl(160, 84%, 21.45%)) var(--ship-dark, hsl(160, 84%, 69.5%));--success-11:var(--ship-light, hsl(160, 84%, 12.67%)) var(--ship-dark, hsl(160, 84%, 84.75%));--success-12:var(--ship-light, hsl(160, 84%, 3.9%)) var(--ship-dark, hsl(160, 84%, 100%));--success-g2:linear-gradient(180deg, hsl(160, 84%, 54.25%) 0%, hsl(160, 84%, 39%) 50%);--success-g3:linear-gradient(180deg, hsl(160, 84%, 69.5%) 0%, hsl(160, 84%, 39%) 50%);--base-1:var(--ship-light, #fff) var(--ship-dark, hsl(0, 0%, 5.75%));--base-2:var(--ship-light, hsl(0, 0%, 98.05%)) var(--ship-dark, hsl(0, 0%, 8.75%));--base-3:var(--ship-light, hsl(0, 0%, 94.5%)) var(--ship-dark, hsl(0, 0%, 11.5%));--base-4:var(--ship-light, hsl(0, 0%, 84.75%)) var(--ship-dark, hsl(0, 0%, 17.25%));--base-5:var(--ship-light, hsl(0, 0%, 79.75%)) var(--ship-dark, hsl(0, 0%, 17.25%));--base-6:var(--ship-light, hsl(0, 0%, 66.25%)) var(--ship-dark, hsl(0, 0%, 28.75%));--base-7:var(--ship-light, hsl(0, 0%, 54.5%)) var(--ship-dark, hsl(0, 0%, 34.5%));--base-8:var(--ship-light, hsl(0, 0%, 46%)) var(--ship-dark, hsl(0, 0%, 46%));--base-9:var(--ship-light, hsl(0, 0%, 35.65%)) var(--ship-dark, hsl(0, 0%, 59.5%));--base-10:var(--ship-light, hsl(0, 0%, 25.3%)) var(--ship-dark, hsl(0, 0%, 73%));--base-11:var(--ship-light, hsl(0, 0%, 14.95%)) var(--ship-dark, hsl(0, 0%, 86.5%));--base-12:var(--ship-light, hsl(0, 0%, 4.6%)) var(--ship-dark, hsl(0, 0%, 100%));--base-g2:linear-gradient(180deg, hsl(0, 0%, 66.25%) 0%, hsl(0, 0%, 46%) 50%);--base-g3:linear-gradient(180deg, hsl(0, 0%, 73%) 0%, hsl(0, 0%, 46%) 50%);--base-g6:linear-gradient(180deg, hsl(0, 0%, 25.3%) 0%, hsl(0, 0%, 14.95%) 50%);--base-g7:linear-gradient(180deg, hsl(0, 0%, 35.65%) 0%, hsl(0, 0%, 14.95%) 50%);--primary-c8:var(--light-text);--accent-c8:var(--light-text);--warn-c8:var(--light-text);--error-c8:var(--light-text);--success-c8:var(--light-text);--display-10:600 5rem / normal Inter Tight, sans-serif;--display-20:600 4.5rem / normal Inter Tight, sans-serif;--display-30:600 4rem / normal Inter Tight, sans-serif;--display-40:600 3.5rem / normal Inter Tight, sans-serif;--display-50:600 3rem / normal Inter Tight, sans-serif;--title-10:500 2.5rem / normal Inter Tight, sans-serif;--title-20:500 2rem / normal Inter Tight, sans-serif;--title-30:500 1.5rem / normal Inter Tight, sans-serif;--title-10B:600 2.5rem / normal Inter Tight, sans-serif;--title-20B:600 2rem / normal Inter Tight, sans-serif;--title-30B:600 1.5rem / normal Inter Tight, sans-serif;--paragraph-10:500 1.125rem / normal Inter Tight, sans-serif;--paragraph-20:500 1rem / normal Inter Tight, sans-serif;--paragraph-30:500 .875rem / normal Inter Tight, sans-serif;--paragraph-40:500 .75rem / normal Inter Tight, sans-serif;--paragraph-10B:600 1.125rem / normal Inter Tight, sans-serif;--paragraph-20B:600 1rem / normal Inter Tight, sans-serif;--paragraph-30B:600 .875rem / 1.125rem Inter Tight, sans-serif;--paragraph-40B:600 .75rem / normal Inter Tight, sans-serif;--code-10:500 1rem / normal monospace;--code-20:500 .875rem / normal monospace;--code-30:500 .75rem / normal monospace;--shape-1:.25rem;--shape-2:.5rem;--shape-3:.75rem;--shape-4:1rem;--shape-5:1.25rem;--box-shadow-10:0 1px 2px 0 rgba(18, 18, 23, .07);--box-shadow-20:0 1px 3px 0 rgba(18, 18, 23, .1);--box-shadow-30:0 1px 4px -1px rgba(18, 18, 23, .08);--box-shadow-35:0 4px 6px -1px rgba(18, 18, 23, .08);--box-shadow-40:0 10px 15px -3px rgba(18, 18, 23, .08);--box-shadow-50:0 20px 25px -5px rgba(18, 18, 23, .1);--box-shadow-60:0 25px 50px -12px rgba(18, 18, 23, .25);--dark-text:#000;--light-text:#fff}*{box-sizing:border-box}html,body,app-root{width:100vw;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--base-2)}body{margin:0;font:var(--paragraph-30);color:var(--base-12)}.loading{position:relative}.loading:before{content:"";width:1rem;height:1rem;border:2px solid var(--loader-c);border-bottom-color:transparent;border-radius:50%;display:flex;box-sizing:border-box;animation:rotation 1s linear infinite;margin:auto;inset:0;position:absolute}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}</style><link rel="stylesheet" href="styles-LRXGHWCZ.css" media="print" onload="this.media='all'"><noscript><link rel="stylesheet" href="styles-LRXGHWCZ.css"></noscript></head>
63
63
  <body>
64
64
  <app-root></app-root>
65
65
  <div class="loading">Connecting ...</div>
66
- <link rel="modulepreload" href="chunk-LZUM5XKC.js"><link rel="modulepreload" href="chunk-BGUKMOKY.js"><link rel="modulepreload" href="chunk-XNVRJH42.js"><link rel="modulepreload" href="chunk-3UN32GIC.js"><link rel="modulepreload" href="chunk-OXOOR7I4.js"><link rel="modulepreload" href="chunk-GUH5TMOS.js"><link rel="modulepreload" href="chunk-RHW5QVAY.js"><link rel="modulepreload" href="chunk-66BSPEOQ.js"><link rel="modulepreload" href="chunk-CWBEE627.js"><link rel="modulepreload" href="chunk-ZGAC2JKG.js"><script src="polyfills-DNO7R5SL.js" type="module"></script><script src="main-SFGPSKNZ.js" type="module"></script></body>
66
+ <link rel="modulepreload" href="chunk-4TDUWDRL.js"><link rel="modulepreload" href="chunk-QDFDQHU3.js"><link rel="modulepreload" href="chunk-6LTGTS6B.js"><link rel="modulepreload" href="chunk-DVDTYV66.js"><link rel="modulepreload" href="chunk-UIJYCGKA.js"><link rel="modulepreload" href="chunk-DELLEGXW.js"><link rel="modulepreload" href="chunk-RHW5QVAY.js"><link rel="modulepreload" href="chunk-VTSUHAP5.js"><link rel="modulepreload" href="chunk-UP5EOICU.js"><link rel="modulepreload" href="chunk-Z3EPZZGY.js"><script src="polyfills-DNO7R5SL.js" type="module"></script><script src="main-Z5T5HH5Q.js" type="module"></script></body>
67
67
  </html>
@@ -1 +1 @@
1
- import{b as be,c as ve}from"./chunk-LZUM5XKC.js";import{a as he}from"./chunk-BGUKMOKY.js";import{a as I}from"./chunk-XNVRJH42.js";import"./chunk-3UN32GIC.js";import"./chunk-OXOOR7I4.js";import"./chunk-GUH5TMOS.js";import{a as D}from"./chunk-RHW5QVAY.js";import{a as L}from"./chunk-66BSPEOQ.js";import{a as de}from"./chunk-CWBEE627.js";import"./chunk-ZGAC2JKG.js";import{a as b,b as v,c as ue,d as k}from"./chunk-ETCRT3EV.js";import{c as ie,d as ae,g as pe,h as ce}from"./chunk-L2EO4M4B.js";import{a as ee}from"./chunk-4YL5DZVH.js";import{c as le}from"./chunk-WRNQOX5R.js";import{a as te,b as oe,d as ne,e as re,f as se,i as me}from"./chunk-J3BBLPAD.js";import{a as ge}from"./chunk-B5FUQFEQ.js";import{la as Y,qa as Z}from"./chunk-WJPLJKPQ.js";import"./chunk-FPPZ4BUR.js";import{a as ye}from"./chunk-IHNX6WZQ.js";import{b as fe}from"./chunk-73RDJP55.js";import{A as x,B as G,Cb as z,H as w,Jc as q,Kc as X,N as J,P as R,Pc as Q,R as B,V as M,Y as $,_ as s,bb as _,f as W,i as j,ia as K,n as F,o as U,oa as d,r as S}from"./chunk-QDFCX6XE.js";import"./chunk-EUDKD2JW.js";var E=class e{#o=s(b);#s=s(v);ngOnInit(){this.#s.fetchConfig(),this.#o.clearAllNotCurrentVersion()}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=_({type:e,selectors:[["app-root"]],decls:1,vars:0,template:function(o,n){o&1&&z(0,"router-outlet")},dependencies:[ie],encapsulation:2})};var Se={production:!0,baseUrl:"/api",machineServerUrl:"${WS_URL}",defaultTimeout:3e4};var h=new $("ENVIRONMENT");var A=class e{#o=s(me);isLoaded=d(!1);webmodules=d(null);preload(t=!1){let o=this.#o.getApiV1Webmodules().pipe(B(n=>this.webmodules.set(n)),w(()=>this.isLoaded.set(!0)));if(t)return o;o.subscribe()}static \u0275fac=function(o){return new(o||e)};static \u0275prov=M({token:e,factory:e.\u0275fac,providedIn:"root"})};var Ee=()=>{let e=s(k);return e.token()?!0:e.checkProxyAuthed().pipe(R(t=>t?F(!0):e.refreshToken().pipe(S(()=>!0))))},Ae=()=>{let e=s(v),t=s(I),o=s(K),n=e.relayIsEnabled()?"longpoll":"websocket",i=[o.get(L).preload(!0),o.get(L).preloadFilterGroups(!0),o.get(A).preload(!0)];return e.configLoaded===null?x(i).pipe(S(()=>n)):e.configLoaded?.pipe(R(()=>x(i)))},Re=[{path:"",children:[{path:"login",canActivate:[],loadComponent:()=>import("./chunk-OTMW34HV.js")},{path:"logout",loadComponent:()=>import("./chunk-UT6XGEMV.js")},{path:"",canActivate:[Ee],children:[{path:"",canActivate:[Ae],loadComponent:()=>import("./chunk-GHFYBZHQ.js"),children:[{path:"",loadComponent:()=>import("./chunk-5AENPWCF.js")},{path:"add-backup",loadComponent:()=>import("./chunk-BIETD4DI.js")},{path:"backup/:id/export",loadComponent:()=>import("./chunk-5PSLWJTF.js")},{path:"backup/import",loadComponent:()=>import("./chunk-XQ4CAUD4.js")},{path:"backup-draft/:id",loadComponent:()=>import("./chunk-NTA2CULM.js"),loadChildren:()=>import("./chunk-LSVMEMXJ.js")},{path:"backup/:id",loadComponent:()=>import("./chunk-NTA2CULM.js"),loadChildren:()=>import("./chunk-LSVMEMXJ.js")},{path:"backup/:id/log",loadComponent:()=>import("./chunk-ARXKB7WH.js")},{path:"backup/:id/database",loadComponent:()=>import("./chunk-CTEFMU6N.js")},{path:"backup/:id/commandline",loadComponent:()=>import("./chunk-GDWLKG6V.js")},{path:"backup/:id/commandline/:runId",loadComponent:()=>import("./chunk-PT7UQJD4.js")},{path:"backup/:id/delete",loadComponent:()=>import("./chunk-KGJAK6OP.js")},{path:"restore",children:[{path:"",loadComponent:()=>import("./chunk-JIHMT35A.js")},{path:"from-config",loadComponent:()=>import("./chunk-6WWCFRZ5.js")}]},{path:"restore-from-files",loadComponent:()=>import("./chunk-WZ23D2R7.js"),loadChildren:()=>import("./chunk-6BCYG4Y6.js")},{path:"restore-draft/:id",loadComponent:()=>import("./chunk-WZ23D2R7.js"),loadChildren:()=>import("./chunk-6BCYG4Y6.js")},{path:"restore/:id",loadComponent:()=>import("./chunk-WZ23D2R7.js"),loadChildren:()=>import("./chunk-6BCYG4Y6.js")},{path:"settings",loadComponent:()=>import("./chunk-AO4O42CM.js")},{path:"about",loadComponent:()=>import("./chunk-UW4GBMEP.js"),children:[{path:"",redirectTo:"general",pathMatch:"full"},{path:"general",loadComponent:()=>import("./chunk-IGOZJJE3.js")},{path:"changelog",loadComponent:()=>import("./chunk-7X7K5IXS.js")},{path:"libraries",loadComponent:()=>import("./chunk-6XBSQDXR.js")},{path:"system-info",loadComponent:()=>import("./chunk-J2MHNGNQ.js")},{path:"server-settings",loadComponent:()=>import("./chunk-XHUUCB2W.js")},{path:"logs",loadChildren:()=>import("./chunk-UUODEERG.js")},{path:"crashlogs",loadComponent:()=>import("./chunk-J5PSMGKZ.js")}]}]}]}]}];var P=null,Te=(e,t)=>{let o=s(k),n=s(ae),i=s(b),l=s(h),r=i.getItem("locale"),u=s(le),a=be(r),p=e.url==="/api/v1/auth/login",m=e.url==="/api/v1/auth/refresh",C=e.url==="/api/v1/progressstate",g=e.url==="/api/v1/remoteoperation/test",y=e.url==="/api/v1/filesystem/validate",T=e.url.startsWith("/api/v2/"),O=o.token(),V=e,H=e.headers.has("custom-proxy-check")||O===ue;if(O&&e.url.startsWith(l.baseUrl)&&!H){let c=e.headers.set("Authorization",`Bearer ${O}`);r&&r!=="en-US"&&(c=c.set("X-Ui-Language",a)),V=e.clone({headers:c})}return t(V).pipe(S(c=>{if(c.type===4&&c.status===200&&T){let f=c.body;if(f?.Success===!1)throw{status:200,message:f?.Error??"Unknown error",error:{Error:f?.Error??"Unknown error"},body:f}}return c}),G(c=>{let f=c.error?.Error||`Error Code: ${c.status}, Message: ${c.message}`;return!H&&(C&&c.status===404||g||y||u.error(f),m&&c.status===401&&(o.logout(),n.navigate(["/logout"])),!p&&!m&&c.status===401)?(P??=o.refreshToken().pipe(J()),P.pipe(R(()=>t(e.clone({headers:e.headers.set("Authorization",`Bearer ${o.token()}`)}))),w(()=>P=null))):U(()=>({error:c,message:f}))}))};var Ne="1.0.0",we=`portal-proxy-client-${D()}`,Oe=1,N=class e{#o=1e3;#s=s(h);#t=d("disconnected");#l=d(this.#o);#i=d(!1);#n=d(!1);#a=d(null);isConnectedToMachineServer=this.#n.asReadonly();wsState=this.#t.asReadonly();#p=[];#r={};#e=null;#m=new TextDecoder("utf-8");#c=null;#d=Q(()=>{let t=this.#i(),o=this.#l(),n=this.#a();if(!n||!t||!o||o<this.#o){this.#c&&window.clearInterval(this.#c);return}this.#c=window.setInterval(()=>{this.connectToMachineServer(n)},o)});utf8Atob(t){let o=Uint8Array.from(atob(t),i=>i.charCodeAt(0)),n=this.#m.decode(o);return n?JSON.parse(n):null}connectToMachineServer(t,o){let n=o?.reconnect??!1,i=this.wsState();(i==="disconnected"||i==="error"||n)&&(this.#e?.close(),this.#e=null),!this.#e&&(this.#e=new WebSocket(this.#s.machineServerUrl),this.#t.set("connecting"),this.#e.onopen=()=>{this.#t.set("connect"),this.#n.set(!0),this.#i.set(!1),this.#a.set(null)},this.#e.onclose=()=>{this.#t.set("disconnected"),this.#n.set(!1),this.#a.set(t),this.#i.set(!0)},this.#e.onerror=()=>{this.#t.set("error")},this.#e.onmessage=l=>{let r=JSON.parse(l.data);if(this.wsState()==="connect"){if(r.type!=="welcome"){this.disconnectFromMachineServer(`Unexpected message type, expected 'welcome' but got '${r.type}'`);return}let a={token:t,publicKey:"",clientVersion:Ne,protocolVersion:Oe},p=this.createResponse(r,"authportal",a);this.#t.set("welcome"),this.#e?.send(p)}else if(this.wsState()==="welcome"){if(r.type!=="authportal"){this.disconnectFromMachineServer(`Unexpected message type, expected 'authportal' but got '${r.type}'`);return}var u=JSON.parse(r.payload??"");if(u.accepted===!1){this.disconnectFromMachineServer("Authentication failed");return}for(this.#t.set("authenticated"),this.#n.set(!0);this.#p.length>0;){let a=this.#p.pop();a&&this.#r[a.messageId]&&this.activateCommand(a)}}else if(this.wsState()==="authenticated"){if(r.type!=="command"){console.warn(`Unexpected message type, expected 'command' but got '${r.type}'`);return}let a=this.#r[r.messageId];if(a){if(r.errorMessage){a.reject(r.errorMessage);return}else{let p=JSON.parse(r.payload??"");p.body=p?.body==null?null:this.utf8Atob(p.body),a.resolve(p)}delete this.#r[r.messageId],window.clearTimeout(a.timer)}}})}disconnectFromMachineServer(t=null){t&&console.error(t),this.#e?.close(),this.#e=null,this.#t.set("disconnected"),this.#n.set(!1)}createResponse(t,o,n){let i={from:we,to:t.from,type:o,messageId:t.messageId,payload:JSON.stringify(n)};return JSON.stringify(i)}sendCommand(t,o,n,i,l,r,u=5e3){return(this.wsState()==="disconnected"||this.wsState()==="error")&&this.connectToMachineServer(t),new Promise((a,p)=>{let m=D(),g={from:we,to:o,type:"command",messageId:m,payload:JSON.stringify({method:n,path:i,body:l,headers:r})},y={resolve:a,reject:p,timer:window.setTimeout(()=>{let T=this.#r[m];T&&(delete this.#r[m],T.reject("Timeout"))},u)};this.#r[m]=y,this.#n()?this.activateCommand(g):this.#p.push(g)})}activateCommand(t){this.#e?.send(JSON.stringify(t))}static \u0275fac=function(o){return new(o||e)};static \u0275prov=M({token:e,factory:e.\u0275fac,providedIn:"root"})};function xe(e){if(typeof e!="string")return null;let o=new TextEncoder().encode(e);return window.btoa(String.fromCharCode(...o))}function Me(e,t,o){let n=e.relayconfigState.config();if(n===null)return o(t);let i=xe(t.body),l={};t.headers.keys().forEach(p=>{l[p]=t.headers.get(p)??""});let r=t.headers.get("timeout"),u=r!==null?parseInt(r):e.defaultTimeout;t.url.startsWith("/api/v1/serverstate")&&t.url.includes("longpoll=true")&&(u=1e3*99);let a=e.relayWebsocket.sendCommand(n.accessToken,n.clientId,t.method,t.url,i,l,u);return new W(p=>{a.then(m=>{let C=new te;l!=null&&Object.keys(l).forEach(y=>{C.set(y,l[y])});let g=new oe({body:m.body,status:m.code,statusText:"OK",headers:C});p.next(g),p.complete()})})}var ke=(e,t)=>{let o={relayconfigState:s(v),defaultTimeout:s(h).defaultTimeout,relayWebsocket:s(N)},n=o.relayconfigState.config();if(o.relayconfigState.configLoaded!==null&&n===null){let i=new j;return o.relayconfigState.configLoaded.subscribe(l=>{l&&Me(o,e,t).subscribe(i)}),i}return Me(o,e,t)};var Ie={providers:[q(),pe(Re,ce()),ne(se(),re([ke,Te])),b,{provide:h,useValue:Se},{provide:X,useValue:ve()},he,I,fe,Z,de,Y,ge,ye]};ee(E,Ie);
1
+ import{b as be,c as ve}from"./chunk-4TDUWDRL.js";import{a as he}from"./chunk-QDFDQHU3.js";import{a as I}from"./chunk-6LTGTS6B.js";import"./chunk-DVDTYV66.js";import"./chunk-UIJYCGKA.js";import"./chunk-DELLEGXW.js";import{a as D}from"./chunk-RHW5QVAY.js";import{a as L}from"./chunk-VTSUHAP5.js";import{a as de}from"./chunk-UP5EOICU.js";import"./chunk-Z3EPZZGY.js";import{a as b,b as v,c as ue,d as k}from"./chunk-UKQFDBNO.js";import{c as ie,d as ae,g as pe,h as ce}from"./chunk-LVP2TPMO.js";import{a as ee}from"./chunk-43JMN2ZY.js";import{c as le}from"./chunk-H7K35UUX.js";import{a as te,b as oe,d as ne,e as re,f as se,i as me}from"./chunk-NOPMCS2Z.js";import{a as ge}from"./chunk-TDKBGGNK.js";import{la as Y,qa as Z}from"./chunk-RUXCS4ZK.js";import"./chunk-FPPZ4BUR.js";import{a as ye}from"./chunk-DFMGS3IN.js";import{b as fe}from"./chunk-6OPAGPKF.js";import{A as x,B as G,Cb as z,H as w,Jc as q,Kc as X,N as J,P as R,Pc as Q,R as B,V as M,Y as $,_ as s,bb as _,f as W,i as j,ia as K,n as F,o as U,oa as d,r as S}from"./chunk-HNWRQABR.js";import"./chunk-EUDKD2JW.js";var E=class e{#o=s(b);#s=s(v);ngOnInit(){this.#s.fetchConfig(),this.#o.clearAllNotCurrentVersion()}static \u0275fac=function(o){return new(o||e)};static \u0275cmp=_({type:e,selectors:[["app-root"]],decls:1,vars:0,template:function(o,n){o&1&&z(0,"router-outlet")},dependencies:[ie],encapsulation:2})};var Se={production:!0,baseUrl:"/api",machineServerUrl:"${WS_URL}",defaultTimeout:3e4};var h=new $("ENVIRONMENT");var A=class e{#o=s(me);isLoaded=d(!1);webmodules=d(null);preload(t=!1){let o=this.#o.getApiV1Webmodules().pipe(B(n=>this.webmodules.set(n)),w(()=>this.isLoaded.set(!0)));if(t)return o;o.subscribe()}static \u0275fac=function(o){return new(o||e)};static \u0275prov=M({token:e,factory:e.\u0275fac,providedIn:"root"})};var Ee=()=>{let e=s(k);return e.token()?!0:e.checkProxyAuthed().pipe(R(t=>t?F(!0):e.refreshToken().pipe(S(()=>!0))))},Ae=()=>{let e=s(v),t=s(I),o=s(K),n=e.relayIsEnabled()?"longpoll":"websocket",i=[o.get(L).preload(!0),o.get(L).preloadFilterGroups(!0),o.get(A).preload(!0)];return e.configLoaded===null?x(i).pipe(S(()=>n)):e.configLoaded?.pipe(R(()=>x(i)))},Re=[{path:"",children:[{path:"login",canActivate:[],loadComponent:()=>import("./chunk-FCRM5DER.js")},{path:"logout",loadComponent:()=>import("./chunk-MVNLSG6Z.js")},{path:"",canActivate:[Ee],children:[{path:"",canActivate:[Ae],loadComponent:()=>import("./chunk-AJTK6HBC.js"),children:[{path:"",loadComponent:()=>import("./chunk-ZNWZFRFW.js")},{path:"add-backup",loadComponent:()=>import("./chunk-FZHTJSDJ.js")},{path:"backup/:id/export",loadComponent:()=>import("./chunk-M6WWZKV7.js")},{path:"backup/import",loadComponent:()=>import("./chunk-FUOS2UGQ.js")},{path:"backup-draft/:id",loadComponent:()=>import("./chunk-7EBTJOD7.js"),loadChildren:()=>import("./chunk-U5C62E46.js")},{path:"backup/:id",loadComponent:()=>import("./chunk-7EBTJOD7.js"),loadChildren:()=>import("./chunk-U5C62E46.js")},{path:"backup/:id/log",loadComponent:()=>import("./chunk-QITXA3NT.js")},{path:"backup/:id/database",loadComponent:()=>import("./chunk-J3ONM4TQ.js")},{path:"backup/:id/commandline",loadComponent:()=>import("./chunk-KGKIF5H4.js")},{path:"backup/:id/commandline/:runId",loadComponent:()=>import("./chunk-2UCO57JQ.js")},{path:"backup/:id/delete",loadComponent:()=>import("./chunk-DLMKZACT.js")},{path:"restore",children:[{path:"",loadComponent:()=>import("./chunk-NJZSEKTD.js")},{path:"from-config",loadComponent:()=>import("./chunk-VHE3K2F5.js")}]},{path:"restore-from-files",loadComponent:()=>import("./chunk-XJZ5GM36.js"),loadChildren:()=>import("./chunk-MAQO5X5Q.js")},{path:"restore-draft/:id",loadComponent:()=>import("./chunk-XJZ5GM36.js"),loadChildren:()=>import("./chunk-MAQO5X5Q.js")},{path:"restore/:id",loadComponent:()=>import("./chunk-XJZ5GM36.js"),loadChildren:()=>import("./chunk-MAQO5X5Q.js")},{path:"settings",loadComponent:()=>import("./chunk-OWDKOVPL.js")},{path:"about",loadComponent:()=>import("./chunk-WS76KLII.js"),children:[{path:"",redirectTo:"general",pathMatch:"full"},{path:"general",loadComponent:()=>import("./chunk-E66CBA5F.js")},{path:"changelog",loadComponent:()=>import("./chunk-SFSB73YO.js")},{path:"libraries",loadComponent:()=>import("./chunk-TIWH4NKT.js")},{path:"system-info",loadComponent:()=>import("./chunk-IFW3O4YJ.js")},{path:"server-settings",loadComponent:()=>import("./chunk-TKO3OH2C.js")},{path:"logs",loadChildren:()=>import("./chunk-B2D4QGDJ.js")},{path:"crashlogs",loadComponent:()=>import("./chunk-R5RIFWZO.js")}]}]}]}]}];var P=null,Te=(e,t)=>{let o=s(k),n=s(ae),i=s(b),l=s(h),r=i.getItem("locale"),u=s(le),a=be(r),p=e.url==="/api/v1/auth/login",m=e.url==="/api/v1/auth/refresh",C=e.url==="/api/v1/progressstate",g=e.url==="/api/v1/remoteoperation/test",y=e.url==="/api/v1/filesystem/validate",T=e.url.startsWith("/api/v2/"),O=o.token(),V=e,H=e.headers.has("custom-proxy-check")||O===ue;if(O&&e.url.startsWith(l.baseUrl)&&!H){let c=e.headers.set("Authorization",`Bearer ${O}`);r&&r!=="en-US"&&(c=c.set("X-Ui-Language",a)),V=e.clone({headers:c})}return t(V).pipe(S(c=>{if(c.type===4&&c.status===200&&T){let f=c.body;if(f?.Success===!1)throw{status:200,message:f?.Error??"Unknown error",error:{Error:f?.Error??"Unknown error"},body:f}}return c}),G(c=>{let f=c.error?.Error||`Error Code: ${c.status}, Message: ${c.message}`;return!H&&(C&&c.status===404||g||y||u.error(f),m&&c.status===401&&(o.logout(),n.navigate(["/logout"])),!p&&!m&&c.status===401)?(P??=o.refreshToken().pipe(J()),P.pipe(R(()=>t(e.clone({headers:e.headers.set("Authorization",`Bearer ${o.token()}`)}))),w(()=>P=null))):U(()=>({error:c,message:f}))}))};var Ne="1.0.0",we=`portal-proxy-client-${D()}`,Oe=1,N=class e{#o=1e3;#s=s(h);#t=d("disconnected");#l=d(this.#o);#i=d(!1);#n=d(!1);#a=d(null);isConnectedToMachineServer=this.#n.asReadonly();wsState=this.#t.asReadonly();#p=[];#r={};#e=null;#m=new TextDecoder("utf-8");#c=null;#d=Q(()=>{let t=this.#i(),o=this.#l(),n=this.#a();if(!n||!t||!o||o<this.#o){this.#c&&window.clearInterval(this.#c);return}this.#c=window.setInterval(()=>{this.connectToMachineServer(n)},o)});utf8Atob(t){let o=Uint8Array.from(atob(t),i=>i.charCodeAt(0)),n=this.#m.decode(o);return n?JSON.parse(n):null}connectToMachineServer(t,o){let n=o?.reconnect??!1,i=this.wsState();(i==="disconnected"||i==="error"||n)&&(this.#e?.close(),this.#e=null),!this.#e&&(this.#e=new WebSocket(this.#s.machineServerUrl),this.#t.set("connecting"),this.#e.onopen=()=>{this.#t.set("connect"),this.#n.set(!0),this.#i.set(!1),this.#a.set(null)},this.#e.onclose=()=>{this.#t.set("disconnected"),this.#n.set(!1),this.#a.set(t),this.#i.set(!0)},this.#e.onerror=()=>{this.#t.set("error")},this.#e.onmessage=l=>{let r=JSON.parse(l.data);if(this.wsState()==="connect"){if(r.type!=="welcome"){this.disconnectFromMachineServer(`Unexpected message type, expected 'welcome' but got '${r.type}'`);return}let a={token:t,publicKey:"",clientVersion:Ne,protocolVersion:Oe},p=this.createResponse(r,"authportal",a);this.#t.set("welcome"),this.#e?.send(p)}else if(this.wsState()==="welcome"){if(r.type!=="authportal"){this.disconnectFromMachineServer(`Unexpected message type, expected 'authportal' but got '${r.type}'`);return}var u=JSON.parse(r.payload??"");if(u.accepted===!1){this.disconnectFromMachineServer("Authentication failed");return}for(this.#t.set("authenticated"),this.#n.set(!0);this.#p.length>0;){let a=this.#p.pop();a&&this.#r[a.messageId]&&this.activateCommand(a)}}else if(this.wsState()==="authenticated"){if(r.type!=="command"){console.warn(`Unexpected message type, expected 'command' but got '${r.type}'`);return}let a=this.#r[r.messageId];if(a){if(r.errorMessage){a.reject(r.errorMessage);return}else{let p=JSON.parse(r.payload??"");p.body=p?.body==null?null:this.utf8Atob(p.body),a.resolve(p)}delete this.#r[r.messageId],window.clearTimeout(a.timer)}}})}disconnectFromMachineServer(t=null){t&&console.error(t),this.#e?.close(),this.#e=null,this.#t.set("disconnected"),this.#n.set(!1)}createResponse(t,o,n){let i={from:we,to:t.from,type:o,messageId:t.messageId,payload:JSON.stringify(n)};return JSON.stringify(i)}sendCommand(t,o,n,i,l,r,u=5e3){return(this.wsState()==="disconnected"||this.wsState()==="error")&&this.connectToMachineServer(t),new Promise((a,p)=>{let m=D(),g={from:we,to:o,type:"command",messageId:m,payload:JSON.stringify({method:n,path:i,body:l,headers:r})},y={resolve:a,reject:p,timer:window.setTimeout(()=>{let T=this.#r[m];T&&(delete this.#r[m],T.reject("Timeout"))},u)};this.#r[m]=y,this.#n()?this.activateCommand(g):this.#p.push(g)})}activateCommand(t){this.#e?.send(JSON.stringify(t))}static \u0275fac=function(o){return new(o||e)};static \u0275prov=M({token:e,factory:e.\u0275fac,providedIn:"root"})};function xe(e){if(typeof e!="string")return null;let o=new TextEncoder().encode(e);return window.btoa(String.fromCharCode(...o))}function Me(e,t,o){let n=e.relayconfigState.config();if(n===null)return o(t);let i=xe(t.body),l={};t.headers.keys().forEach(p=>{l[p]=t.headers.get(p)??""});let r=t.headers.get("timeout"),u=r!==null?parseInt(r):e.defaultTimeout;t.url.startsWith("/api/v1/serverstate")&&t.url.includes("longpoll=true")&&(u=1e3*99);let a=e.relayWebsocket.sendCommand(n.accessToken,n.clientId,t.method,t.url,i,l,u);return new W(p=>{a.then(m=>{let C=new te;l!=null&&Object.keys(l).forEach(y=>{C.set(y,l[y])});let g=new oe({body:m.body,status:m.code,statusText:"OK",headers:C});p.next(g),p.complete()})})}var ke=(e,t)=>{let o={relayconfigState:s(v),defaultTimeout:s(h).defaultTimeout,relayWebsocket:s(N)},n=o.relayconfigState.config();if(o.relayconfigState.configLoaded!==null&&n===null){let i=new j;return o.relayconfigState.configLoaded.subscribe(l=>{l&&Me(o,e,t).subscribe(i)}),i}return Me(o,e,t)};var Ie={providers:[q(),pe(Re,ce()),ne(se(),re([ke,Te])),b,{provide:h,useValue:Se},{provide:X,useValue:ve()},he,I,fe,Z,de,Y,ge,ye]};ee(E,Ie);
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.0.143",
2
+ "version": "0.0.145",
3
3
  "name": "@duplicati/ngclient",
4
4
  "license": "MIT",
5
5
  "contributors": [