@profoundlogic/coderflow-server 0.2.3 → 0.2.5

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 (148) hide show
  1. package/README.md +24 -0
  2. package/dist/README.md +24 -0
  3. package/dist/base-image/agent-wrapper.sh +4 -2
  4. package/dist/coder-server.js +1 -1
  5. package/dist/config/skill-catalog.json +27 -0
  6. package/dist/config.js +1 -1
  7. package/dist/lib/agent-keepalive.js +1 -1
  8. package/dist/lib/api-keys.js +1 -1
  9. package/dist/lib/apiKeys.js +1 -1
  10. package/dist/lib/app-server-ports.js +1 -1
  11. package/dist/lib/auto-judge.js +1 -1
  12. package/dist/lib/basic-auth.js +1 -1
  13. package/dist/lib/build-history.js +1 -1
  14. package/dist/lib/build-output-service.js +1 -1
  15. package/dist/lib/build-scheduler.js +1 -1
  16. package/dist/lib/build-service.js +1 -1
  17. package/dist/lib/ca-certificates.js +1 -1
  18. package/dist/lib/claude-oauth-refresh.js +1 -1
  19. package/dist/lib/cli/build.js +1 -1
  20. package/dist/lib/cli/config-command.js +1 -1
  21. package/dist/lib/cli/config.js +1 -1
  22. package/dist/lib/cli/create-user.js +1 -1
  23. package/dist/lib/cli/init.js +1 -1
  24. package/dist/lib/cli/jira.js +1 -1
  25. package/dist/lib/cli/license.js +1 -1
  26. package/dist/lib/cli/server-manager.js +1 -1
  27. package/dist/lib/container-tokens.js +1 -1
  28. package/dist/lib/data-dir.js +1 -1
  29. package/dist/lib/deployment-history.js +1 -1
  30. package/dist/lib/deployment-service.js +1 -1
  31. package/dist/lib/docker-utils.js +1 -1
  32. package/dist/lib/email.js +1 -1
  33. package/dist/lib/emailTemplates.js +1 -1
  34. package/dist/lib/entitlement.js +1 -1
  35. package/dist/lib/fetch-utils.js +1 -1
  36. package/dist/lib/git-commit-details-route.js +1 -0
  37. package/dist/lib/git-history-diff-guardrails.js +1 -0
  38. package/dist/lib/git-provider-service.js +1 -1
  39. package/dist/lib/git-provider-setup/github-setup-handler.js +1 -1
  40. package/dist/lib/git-provider-setup/index.js +1 -1
  41. package/dist/lib/git-provider-setup/setup-factory.js +1 -1
  42. package/dist/lib/git-provider-setup/setup-interface.js +1 -1
  43. package/dist/lib/git-providers/azure-devops-provider.js +1 -1
  44. package/dist/lib/git-providers/github-app-provider.js +1 -1
  45. package/dist/lib/git-providers/index.js +1 -1
  46. package/dist/lib/git-providers/provider-factory.js +1 -1
  47. package/dist/lib/git-providers/provider-interface.js +1 -1
  48. package/dist/lib/github-urls.js +1 -1
  49. package/dist/lib/jira-client.js +1 -1
  50. package/dist/lib/logger.js +1 -1
  51. package/dist/lib/model-fetcher.js +1 -1
  52. package/dist/lib/notifications.js +1 -1
  53. package/dist/lib/oidc-auth.js +1 -1
  54. package/dist/lib/oidc-device-flow.js +1 -1
  55. package/dist/lib/passwordTokens.js +1 -1
  56. package/dist/lib/pin-cascade.js +1 -1
  57. package/dist/lib/provider-accounts.js +1 -1
  58. package/dist/lib/provider-oauth.js +1 -1
  59. package/dist/lib/provider-profile.js +1 -1
  60. package/dist/lib/provider-token-refresh.js +1 -1
  61. package/dist/lib/request-url.js +1 -1
  62. package/dist/lib/rewind.js +1 -1
  63. package/dist/lib/roles.js +1 -1
  64. package/dist/lib/secrets.js +1 -1
  65. package/dist/lib/setup-repo-git-auth.js +1 -0
  66. package/dist/lib/state-capture.js +1 -1
  67. package/dist/lib/static-files.js +1 -1
  68. package/dist/lib/task-name-generator.js +1 -1
  69. package/dist/lib/user-git-oauth.js +1 -1
  70. package/dist/lib/user-git-tokens.js +1 -1
  71. package/dist/lib/users.js +1 -1
  72. package/dist/middleware/requireAuth.js +1 -1
  73. package/dist/middleware/requireInit.js +1 -1
  74. package/dist/middleware/requirePermission.js +1 -1
  75. package/dist/package.json +1 -1
  76. package/dist/routes/apiKeys.js +1 -1
  77. package/dist/routes/auth-oidc.js +1 -1
  78. package/dist/routes/auth.js +1 -1
  79. package/dist/routes/build.js +1 -1
  80. package/dist/routes/containers.js +1 -1
  81. package/dist/routes/deploy-task.js +1 -1
  82. package/dist/routes/environment-management.js +1 -1
  83. package/dist/routes/environments.js +1 -1
  84. package/dist/routes/external-skills.js +1 -1
  85. package/dist/routes/git-credentials.js +1 -1
  86. package/dist/routes/git-oauth.js +1 -1
  87. package/dist/routes/git-provider-setup.js +1 -1
  88. package/dist/routes/health.js +1 -1
  89. package/dist/routes/jira.js +1 -1
  90. package/dist/routes/objective-management.js +1 -1
  91. package/dist/routes/password.js +1 -1
  92. package/dist/routes/prompt.js +1 -1
  93. package/dist/routes/provider-auth.js +1 -1
  94. package/dist/routes/qa.js +1 -1
  95. package/dist/routes/settings.js +1 -1
  96. package/dist/routes/skill-management.js +1 -1
  97. package/dist/routes/skills.js +1 -1
  98. package/dist/routes/tasks.js +1 -1
  99. package/dist/routes/templates.js +1 -1
  100. package/dist/routes/test-task.js +1 -1
  101. package/dist/routes/test.js +1 -1
  102. package/dist/routes/users.js +1 -1
  103. package/dist/routes/visualizations.js +1 -1
  104. package/dist/scripts/create-user.js +1 -1
  105. package/dist/start.js +1 -1
  106. package/dist/web-ui/public/activity-detail-modal.js +1 -1
  107. package/dist/web-ui/public/activity-feed.js +1 -1
  108. package/dist/web-ui/public/activity-formatters.js +1 -1
  109. package/dist/web-ui/public/agent-event-parser.js +1 -1
  110. package/dist/web-ui/public/app.js +1 -1
  111. package/dist/web-ui/public/approve-dialog.js +1 -1
  112. package/dist/web-ui/public/comments-widget.js +1 -1
  113. package/dist/web-ui/public/diff-utils.js +1 -1
  114. package/dist/web-ui/public/docs/tasks/providing-feedback.md +1 -1
  115. package/dist/web-ui/public/environments.css +23 -0
  116. package/dist/web-ui/public/environments.html +3 -2
  117. package/dist/web-ui/public/environments.js +1 -1
  118. package/dist/web-ui/public/feedback-widget.js +1 -1
  119. package/dist/web-ui/public/git-history-lazy-utils.js +1 -0
  120. package/dist/web-ui/public/git-history.css +56 -0
  121. package/dist/web-ui/public/git-history.html +2 -2
  122. package/dist/web-ui/public/git-history.js +1 -1
  123. package/dist/web-ui/public/git-status.js +1 -1
  124. package/dist/web-ui/public/index.html +38 -2
  125. package/dist/web-ui/public/index.js +1 -1
  126. package/dist/web-ui/public/login.js +1 -1
  127. package/dist/web-ui/public/markdown-editor.js +1 -1
  128. package/dist/web-ui/public/markdown-file-editor.js +1 -1
  129. package/dist/web-ui/public/modal-maximize.js +1 -1
  130. package/dist/web-ui/public/notifications.js +1 -1
  131. package/dist/web-ui/public/server-health.js +1 -1
  132. package/dist/web-ui/public/settings.css +92 -0
  133. package/dist/web-ui/public/settings.html +31 -2
  134. package/dist/web-ui/public/settings.js +1 -1
  135. package/dist/web-ui/public/setup-password.js +1 -1
  136. package/dist/web-ui/public/skills.css +23 -0
  137. package/dist/web-ui/public/skills.html +3 -2
  138. package/dist/web-ui/public/skills.js +1 -1
  139. package/dist/web-ui/public/sse-client.js +1 -1
  140. package/dist/web-ui/public/sse-shared-worker.js +1 -1
  141. package/dist/web-ui/public/styles.css +373 -7
  142. package/dist/web-ui/public/task.html +102 -0
  143. package/dist/web-ui/public/task.js +1 -1
  144. package/dist/web-ui/public/terminal.js +1 -1
  145. package/dist/web-ui/public/theme.js +1 -1
  146. package/dist/web-ui/public/users.js +1 -1
  147. package/dist/web-ui/public/variant-grouping.js +1 -1
  148. package/package.json +1 -1
@@ -1 +1 @@
1
- (function(_0x31886d,_0x58fe69){const _0x38d206=_0x22a5,_0x165869=_0x31886d();while(!![]){try{const _0xaf34c0=-parseInt(_0x38d206(0x1e7))/0x1*(parseInt(_0x38d206(0x1c9))/0x2)+parseInt(_0x38d206(0x1d8))/0x3+parseInt(_0x38d206(0x1dc))/0x4+parseInt(_0x38d206(0x1c8))/0x5*(parseInt(_0x38d206(0x1ea))/0x6)+-parseInt(_0x38d206(0x1e0))/0x7+parseInt(_0x38d206(0x1df))/0x8*(parseInt(_0x38d206(0x1d4))/0x9)+-parseInt(_0x38d206(0x1da))/0xa*(parseInt(_0x38d206(0x1e8))/0xb);if(_0xaf34c0===_0x58fe69)break;else _0x165869['push'](_0x165869['shift']());}catch(_0x288587){_0x165869['push'](_0x165869['shift']());}}}(_0x13be,0xeac2e));const DEFAULT_DURATION_MS=0xfa;function _0x13be(){const _0x14a6fc=['D2LSBenOyw5Nzq','z2v0qw5PBwf0Aw9UCW','Dg9WigXLzNq','C3r5Bgu','AxngAw5PDgu','Dg9Nz2XL','Bwf0y2HLCW','D2LKDgG','zNvUy3rPB24','mteYotG2CeXvzM5l','C2v0sxrLBq','khbYzwzLCNmTCMvKDwnLzc1TB3rPB246ihjLzhvJzsK','zM9YrwfJAa','ntu5mZqXowX1v0resa','ChGSia','ntmWy1HsBfbL','zMLUAxnO','mZaYnJa4A0X3tMrw','y2XHC3nmAxn0','BgvMDa','mJy0tvDVvgH3','ndC1mtK1suT2r1He','y2fUy2vS','AgvPz2H0','DhjHBNnSyxrLka','yM90Aa','zwfZzq','DhjHBNnPDgLVBG','nJC2n0zrvvf0uq','mJyXoty1yLr4CMjQ','BM9Uzq','mti4odiXmMrRq2j2qq','z2v0qM91BMrPBMDdBgLLBNrszwn0','Bwf0y2HnzwrPyq','DhjHBNnMB3jTt3jPz2LU','ywrKrxzLBNrmAxn0zw5LCG','Dg9W','CMvTB3zL','nvLxwKvPuq','odjiEffYqwS','Bwf4Aw1PEMvK'];_0x13be=function(){return _0x14a6fc;};return _0x13be();}function _0x22a5(_0x27ddc2,_0x3ebb1c){_0x27ddc2=_0x27ddc2-0x1c6;const _0x13bec8=_0x13be();let _0x22a5b7=_0x13bec8[_0x27ddc2];if(_0x22a5['YIuyrW']===undefined){var _0x31b096=function(_0x564913){const _0x42e38c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3c1672='',_0x1994d6='';for(let _0x4b7f3e=0x0,_0x5268e1,_0x2f9401,_0x2acc0c=0x0;_0x2f9401=_0x564913['charAt'](_0x2acc0c++);~_0x2f9401&&(_0x5268e1=_0x4b7f3e%0x4?_0x5268e1*0x40+_0x2f9401:_0x2f9401,_0x4b7f3e++%0x4)?_0x3c1672+=String['fromCharCode'](0xff&_0x5268e1>>(-0x2*_0x4b7f3e&0x6)):0x0){_0x2f9401=_0x42e38c['indexOf'](_0x2f9401);}for(let _0x1f66e7=0x0,_0x4d2a7a=_0x3c1672['length'];_0x1f66e7<_0x4d2a7a;_0x1f66e7++){_0x1994d6+='%'+('00'+_0x3c1672['charCodeAt'](_0x1f66e7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1994d6);};_0x22a5['AFzPnU']=_0x31b096,_0x22a5['QJIWEf']={},_0x22a5['YIuyrW']=!![];}const _0x21e570=_0x13bec8[0x0],_0x392eee=_0x27ddc2+_0x21e570,_0x14359a=_0x22a5['QJIWEf'][_0x392eee];return!_0x14359a?(_0x22a5b7=_0x22a5['AFzPnU'](_0x22a5b7),_0x22a5['QJIWEf'][_0x392eee]=_0x22a5b7):_0x22a5b7=_0x14359a,_0x22a5b7;}function prefersReducedMotion(){const _0x3152cd=_0x22a5;try{return window['matchMedia']&&window[_0x3152cd(0x1ec)](_0x3152cd(0x1d6))[_0x3152cd(0x1d1)];}catch{return![];}}function safeCancelAnimations(_0x3c1672){const _0x86828=_0x22a5;if(!_0x3c1672||typeof _0x3c1672[_0x86828(0x1cc)]!==_0x86828(0x1d3))return;try{_0x3c1672['getAnimations']()[_0x86828(0x1d7)](_0x1994d6=>_0x1994d6['cancel']());}catch{}}function animateRestoreFlip({contentEl:_0x4b7f3e,fromRect:_0x5268e1,toRect:_0x2f9401,durationMs:_0x2acc0c}){const _0x801836=_0x22a5;if(!_0x4b7f3e)return;if(!_0x5268e1||!_0x2f9401)return;if(prefersReducedMotion())return;const _0x1f66e7=_0x2f9401[_0x801836(0x1d2)]||0x0,_0x4d2a7a=_0x2f9401[_0x801836(0x1e2)]||0x0,_0x19f5a8=_0x5268e1[_0x801836(0x1d2)]||0x0,_0x3a3d5c=_0x5268e1[_0x801836(0x1e2)]||0x0;if(_0x1f66e7<=0x0||_0x4d2a7a<=0x0||_0x19f5a8<=0x0||_0x3a3d5c<=0x0)return;const _0x5984ed=_0x5268e1[_0x801836(0x1de)]-_0x2f9401[_0x801836(0x1de)],_0x4841e3=_0x5268e1[_0x801836(0x1c6)]-_0x2f9401[_0x801836(0x1c6)],_0x404183=_0x19f5a8/_0x1f66e7,_0x1f3d35=_0x3a3d5c/_0x4d2a7a;if(!Number[_0x801836(0x1cf)](_0x5984ed)||!Number[_0x801836(0x1cf)](_0x4841e3)||!Number['isFinite'](_0x404183)||!Number[_0x801836(0x1cf)](_0x1f3d35))return;safeCancelAnimations(_0x4b7f3e);const _0x47ce66=_0x4b7f3e[_0x801836(0x1ce)]['transition'],_0x281c93=_0x4b7f3e[_0x801836(0x1ce)][_0x801836(0x1ed)],_0x594532=_0x4b7f3e[_0x801836(0x1ce)][_0x801836(0x1cb)];_0x4b7f3e[_0x801836(0x1ce)][_0x801836(0x1e6)]='none',_0x4b7f3e[_0x801836(0x1ce)][_0x801836(0x1ed)]=_0x801836(0x1cd),_0x4b7f3e[_0x801836(0x1ce)][_0x801836(0x1cb)]='transform';const _0x5d3fc4=_0x801836(0x1e3)+_0x5984ed+_0x801836(0x1d9)+_0x4841e3+'px)\x20scale('+_0x404183+',\x20'+_0x1f3d35+')',_0x281f8a=_0x4b7f3e['animate']([{'transform':_0x5d3fc4},{'transform':_0x801836(0x1e9)}],{'duration':_0x2acc0c,'easing':_0x801836(0x1e5),'fill':_0x801836(0x1e4)}),_0x38bd9a=()=>{const _0x446d10=_0x801836;_0x4b7f3e[_0x446d10(0x1ce)][_0x446d10(0x1e6)]=_0x47ce66,_0x4b7f3e[_0x446d10(0x1ce)][_0x446d10(0x1ed)]=_0x281c93,_0x4b7f3e['style'][_0x446d10(0x1cb)]=_0x594532;};_0x281f8a['addEventListener'](_0x801836(0x1db),_0x38bd9a,{'once':!![]}),_0x281f8a[_0x801836(0x1ee)](_0x801836(0x1e1),_0x38bd9a,{'once':!![]});}export function toggleModalMaximize(_0x2c579d,_0x169b73={}){const _0x4129fe=_0x22a5;if(!_0x2c579d)return;const {storageKey:_0x488e35,updateIcon:_0x20d529,onAfterToggle:_0x18a7d3,durationMs:durationMs=DEFAULT_DURATION_MS}=_0x169b73,_0x28324a=_0x2c579d['querySelector']('.modal-content'),_0x3d8404=_0x2c579d[_0x4129fe(0x1dd)]['contains'](_0x4129fe(0x1ca)),_0x44f12d=!_0x3d8404;if(!_0x28324a){_0x2c579d[_0x4129fe(0x1dd)][_0x4129fe(0x1d0)](_0x4129fe(0x1ca)),_0x20d529?.(_0x44f12d),_0x18a7d3?.(_0x44f12d);if(_0x488e35)try{localStorage[_0x4129fe(0x1d5)](_0x488e35,String(_0x44f12d));}catch{}return;}if(_0x3d8404&&!prefersReducedMotion()){const _0x47e134=_0x28324a[_0x4129fe(0x1eb)]();_0x2c579d[_0x4129fe(0x1dd)][_0x4129fe(0x1c7)]('maximized');const _0x4210e=_0x28324a[_0x4129fe(0x1eb)]();animateRestoreFlip({'contentEl':_0x28324a,'fromRect':_0x47e134,'toRect':_0x4210e,'durationMs':durationMs});}else _0x2c579d[_0x4129fe(0x1dd)]['toggle']('maximized');_0x20d529?.(_0x44f12d),_0x18a7d3?.(_0x44f12d);if(_0x488e35)try{localStorage[_0x4129fe(0x1d5)](_0x488e35,String(_0x44f12d));}catch{}}
1
+ (function(_0x2ebcfc,_0x92eb86){const _0x3c539c=_0x25bd,_0x4e2901=_0x2ebcfc();while(!![]){try{const _0x2be733=-parseInt(_0x3c539c(0x171))/0x1+-parseInt(_0x3c539c(0x177))/0x2+parseInt(_0x3c539c(0x161))/0x3+-parseInt(_0x3c539c(0x168))/0x4+parseInt(_0x3c539c(0x15d))/0x5+-parseInt(_0x3c539c(0x160))/0x6+parseInt(_0x3c539c(0x16e))/0x7;if(_0x2be733===_0x92eb86)break;else _0x4e2901['push'](_0x4e2901['shift']());}catch(_0x81f3ae){_0x4e2901['push'](_0x4e2901['shift']());}}}(_0x4d3f,0x50876));const DEFAULT_DURATION_MS=0xfa;function _0x4d3f(){const _0x5a1c38=['BgvMDa','mteXmtC1mKffC2f5za','DhjHBNnMB3jTt3jPz2LU','y2fUy2vS','AgvPz2H0','y29UDgfPBNm','Dg9Nz2XL','y2XHC3nmAxn0','mtu2ndaYnvj6wezZza','C3r5Bgu','lM1VzgfSlwnVBNrLBNq','mJC3mZyYywT0A1bf','mtK0mZC4mw9oAeXftW','Bwf0y2HnzwrPyq','zM9YrwfJAa','D2LSBenOyw5Nzq','DhjHBNnPDgLVBG','z2v0qw5PBwf0Aw9UCW','C2v0sxrLBq','ntKZodiWrxr2Ewvl','Dg9W','Bwf4Aw1PEMvK','z2v0qM91BMrPBMDdBgLLBNrszwn0','ywrKrxzLBNrmAxn0zw5LCG','D2LKDgG','mJyYnZa5m05vuM5xzW','DhjHBNnSyxrLka','BM9Uzq','mJu1nJi3BxDzq21s','CxvLCNLtzwXLy3rVCG','Dg9WigXLzNq','DhjHBNnMB3jT','AxngAw5PDgu'];_0x4d3f=function(){return _0x5a1c38;};return _0x4d3f();}function prefersReducedMotion(){const _0x5ca449=_0x25bd;try{return window[_0x5ca449(0x162)]&&window[_0x5ca449(0x162)]('(prefers-reduced-motion:\x20reduce)')['matches'];}catch{return![];}}function _0x25bd(_0x9478ba,_0x2157d1){_0x9478ba=_0x9478ba-0x159;const _0x4d3f0b=_0x4d3f();let _0x25bd8b=_0x4d3f0b[_0x9478ba];if(_0x25bd['RoMHXz']===undefined){var _0x4be845=function(_0x3bc7c0){const _0xb933a2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x582663='',_0x55cfae='';for(let _0x5e237e=0x0,_0x4fd64,_0x4a46dd,_0x48e450=0x0;_0x4a46dd=_0x3bc7c0['charAt'](_0x48e450++);~_0x4a46dd&&(_0x4fd64=_0x5e237e%0x4?_0x4fd64*0x40+_0x4a46dd:_0x4a46dd,_0x5e237e++%0x4)?_0x582663+=String['fromCharCode'](0xff&_0x4fd64>>(-0x2*_0x5e237e&0x6)):0x0){_0x4a46dd=_0xb933a2['indexOf'](_0x4a46dd);}for(let _0xe88ab2=0x0,_0x24f983=_0x582663['length'];_0xe88ab2<_0x24f983;_0xe88ab2++){_0x55cfae+='%'+('00'+_0x582663['charCodeAt'](_0xe88ab2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x55cfae);};_0x25bd['asAFif']=_0x4be845,_0x25bd['eofwQa']={},_0x25bd['RoMHXz']=!![];}const _0x14fc0e=_0x4d3f0b[0x0],_0x507664=_0x9478ba+_0x14fc0e,_0x151bd5=_0x25bd['eofwQa'][_0x507664];return!_0x151bd5?(_0x25bd8b=_0x25bd['asAFif'](_0x25bd8b),_0x25bd['eofwQa'][_0x507664]=_0x25bd8b):_0x25bd8b=_0x151bd5,_0x25bd8b;}function safeCancelAnimations(_0x582663){const _0x547bbd=_0x25bd;if(!_0x582663||typeof _0x582663[_0x547bbd(0x166)]!=='function')return;try{_0x582663[_0x547bbd(0x166)]()[_0x547bbd(0x163)](_0x55cfae=>_0x55cfae[_0x547bbd(0x179)]());}catch{}}function animateRestoreFlip({contentEl:_0x5e237e,fromRect:_0x4fd64,toRect:_0x4a46dd,durationMs:_0x48e450}){const _0xbe0e83=_0x25bd;if(!_0x5e237e)return;if(!_0x4fd64||!_0x4a46dd)return;if(prefersReducedMotion())return;const _0xe88ab2=_0x4a46dd[_0xbe0e83(0x16d)]||0x0,_0x24f983=_0x4a46dd[_0xbe0e83(0x159)]||0x0,_0x5afa5f=_0x4fd64[_0xbe0e83(0x16d)]||0x0,_0x1b1412=_0x4fd64[_0xbe0e83(0x159)]||0x0;if(_0xe88ab2<=0x0||_0x24f983<=0x0||_0x5afa5f<=0x0||_0x1b1412<=0x0)return;const _0x4e5d6e=_0x4fd64[_0xbe0e83(0x176)]-_0x4a46dd[_0xbe0e83(0x176)],_0x3ae12c=_0x4fd64[_0xbe0e83(0x169)]-_0x4a46dd['top'],_0x3d3ddb=_0x5afa5f/_0xe88ab2,_0xa4cdd2=_0x1b1412/_0x24f983;if(!Number[_0xbe0e83(0x175)](_0x4e5d6e)||!Number[_0xbe0e83(0x175)](_0x3ae12c)||!Number[_0xbe0e83(0x175)](_0x3d3ddb)||!Number[_0xbe0e83(0x175)](_0xa4cdd2))return;safeCancelAnimations(_0x5e237e);const _0x52deec=_0x5e237e['style'][_0xbe0e83(0x165)],_0x167722=_0x5e237e[_0xbe0e83(0x15e)]['transformOrigin'],_0x5ebd58=_0x5e237e[_0xbe0e83(0x15e)]['willChange'];_0x5e237e['style'][_0xbe0e83(0x165)]='none',_0x5e237e[_0xbe0e83(0x15e)][_0xbe0e83(0x178)]=_0xbe0e83(0x173),_0x5e237e['style'][_0xbe0e83(0x164)]=_0xbe0e83(0x174);const _0x44b46d=_0xbe0e83(0x16f)+_0x4e5d6e+'px,\x20'+_0x3ae12c+'px)\x20scale('+_0x3d3ddb+',\x20'+_0xa4cdd2+')',_0x2cdd87=_0x5e237e['animate']([{'transform':_0x44b46d},{'transform':_0xbe0e83(0x170)}],{'duration':_0x48e450,'easing':'ease','fill':'both'}),_0x5e3a9e=()=>{const _0x5a8c69=_0xbe0e83;_0x5e237e[_0x5a8c69(0x15e)][_0x5a8c69(0x165)]=_0x52deec,_0x5e237e['style'][_0x5a8c69(0x178)]=_0x167722,_0x5e237e[_0x5a8c69(0x15e)][_0x5a8c69(0x164)]=_0x5ebd58;};_0x2cdd87[_0xbe0e83(0x16c)]('finish',_0x5e3a9e,{'once':!![]}),_0x2cdd87['addEventListener'](_0xbe0e83(0x179),_0x5e3a9e,{'once':!![]});}export function toggleModalMaximize(_0x3ce595,_0x425850={}){const _0x86b2ad=_0x25bd;if(!_0x3ce595)return;const {storageKey:_0xff8f6d,updateIcon:_0x5a7b44,onAfterToggle:_0xd8fd0e,durationMs:durationMs=DEFAULT_DURATION_MS}=_0x425850,_0xc54023=_0x3ce595[_0x86b2ad(0x172)](_0x86b2ad(0x15f)),_0x170eda=_0x3ce595[_0x86b2ad(0x15c)][_0x86b2ad(0x15a)](_0x86b2ad(0x16a)),_0x33dda4=!_0x170eda;if(!_0xc54023){_0x3ce595['classList'][_0x86b2ad(0x15b)]('maximized'),_0x5a7b44?.(_0x33dda4),_0xd8fd0e?.(_0x33dda4);if(_0xff8f6d)try{localStorage['setItem'](_0xff8f6d,String(_0x33dda4));}catch{}return;}if(_0x170eda&&!prefersReducedMotion()){const _0x15bcd3=_0xc54023[_0x86b2ad(0x16b)]();_0x3ce595[_0x86b2ad(0x15c)]['remove'](_0x86b2ad(0x16a));const _0x406696=_0xc54023[_0x86b2ad(0x16b)]();animateRestoreFlip({'contentEl':_0xc54023,'fromRect':_0x15bcd3,'toRect':_0x406696,'durationMs':durationMs});}else _0x3ce595[_0x86b2ad(0x15c)][_0x86b2ad(0x15b)](_0x86b2ad(0x16a));_0x5a7b44?.(_0x33dda4),_0xd8fd0e?.(_0x33dda4);if(_0xff8f6d)try{localStorage[_0x86b2ad(0x167)](_0xff8f6d,String(_0x33dda4));}catch{}}
@@ -1 +1 @@
1
- function _0x378b(_0x4c836c,_0x338277){_0x4c836c=_0x4c836c-0x97;const _0x1dc0e3=_0x1dc0();let _0x378b03=_0x1dc0e3[_0x4c836c];if(_0x378b['VMFpSp']===undefined){var _0xff2dfa=function(_0x32066f){const _0x4ccf22='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1074e5='',_0x228fef='';for(let _0x4baabf=0x0,_0x1cb8f6,_0x30b67e,_0xec4ac3=0x0;_0x30b67e=_0x32066f['charAt'](_0xec4ac3++);~_0x30b67e&&(_0x1cb8f6=_0x4baabf%0x4?_0x1cb8f6*0x40+_0x30b67e:_0x30b67e,_0x4baabf++%0x4)?_0x1074e5+=String['fromCharCode'](0xff&_0x1cb8f6>>(-0x2*_0x4baabf&0x6)):0x0){_0x30b67e=_0x4ccf22['indexOf'](_0x30b67e);}for(let _0x3b1b60=0x0,_0x2695e1=_0x1074e5['length'];_0x3b1b60<_0x2695e1;_0x3b1b60++){_0x228fef+='%'+('00'+_0x1074e5['charCodeAt'](_0x3b1b60)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x228fef);};_0x378b['waLNch']=_0xff2dfa,_0x378b['pAMzTi']={},_0x378b['VMFpSp']=!![];}const _0x21236b=_0x1dc0e3[0x0],_0x4a9373=_0x4c836c+_0x21236b,_0x1ddf99=_0x378b['pAMzTi'][_0x4a9373];return!_0x1ddf99?(_0x378b03=_0x378b['waLNch'](_0x378b03),_0x378b['pAMzTi'][_0x4a9373]=_0x378b03):_0x378b03=_0x1ddf99,_0x378b03;}(function(_0x5eb79b,_0x2e732a){const _0x1f795b=_0x378b,_0x40498d=_0x5eb79b();while(!![]){try{const _0x2408ca=parseInt(_0x1f795b(0xa0))/0x1+parseInt(_0x1f795b(0xc6))/0x2*(-parseInt(_0x1f795b(0xd2))/0x3)+parseInt(_0x1f795b(0xaa))/0x4*(-parseInt(_0x1f795b(0xe4))/0x5)+parseInt(_0x1f795b(0xca))/0x6*(parseInt(_0x1f795b(0xbb))/0x7)+parseInt(_0x1f795b(0xac))/0x8+parseInt(_0x1f795b(0xc2))/0x9*(-parseInt(_0x1f795b(0x9d))/0xa)+parseInt(_0x1f795b(0xab))/0xb;if(_0x2408ca===_0x2e732a)break;else _0x40498d['push'](_0x40498d['shift']());}catch(_0x37bc62){_0x40498d['push'](_0x40498d['shift']());}}}(_0x1dc0,0x85e83));export const NotificationManager={'isSupported'(){const _0x534084=_0x378b;return _0x534084(0xde)in window;},'isEnabled'(){const _0xa3867e=_0x378b;if(!this['isSupported']())return![];return localStorage[_0xa3867e(0xe0)]('notifications-enabled')===_0xa3867e(0xd6);},'setEnabled'(_0x1074e5){const _0x41b7f1=_0x378b;localStorage[_0x41b7f1(0xb2)](_0x41b7f1(0xd8),_0x1074e5?_0x41b7f1(0xd6):_0x41b7f1(0xd5));},'getPermission'(){const _0x4434e8=_0x378b;if(!this[_0x4434e8(0xc4)]())return _0x4434e8(0xba);return Notification[_0x4434e8(0xa7)];},async 'requestPermission'(){const _0x4ae7e5=_0x378b;if(!this[_0x4ae7e5(0xc4)]())return _0x4ae7e5(0xba);if(Notification[_0x4ae7e5(0xa7)]==='granted')return _0x4ae7e5(0xa4);if(Notification[_0x4ae7e5(0xa7)]===_0x4ae7e5(0xe3))return _0x4ae7e5(0xe3);try{const _0x228fef=await Notification['requestPermission']();return _0x228fef;}catch(_0x4baabf){return console['error']('Failed\x20to\x20request\x20notification\x20permission:',_0x4baabf),_0x4ae7e5(0xe3);}},async 'show'(_0x1cb8f6,_0x30b67e={}){const _0xfa2bb3=_0x378b;if(!this['isEnabled']())return null;if(!this[_0xfa2bb3(0xc4)]())return console[_0xfa2bb3(0xdb)](_0xfa2bb3(0xb8)),null;if(Notification[_0xfa2bb3(0xa7)]!=='granted')return console[_0xfa2bb3(0xdb)](_0xfa2bb3(0xbf)),null;try{const _0xec4ac3=new Notification(_0x1cb8f6,{'icon':_0x30b67e[_0xfa2bb3(0x99)]||_0xfa2bb3(0xbd),'badge':_0x30b67e[_0xfa2bb3(0xb5)]||_0xfa2bb3(0xbd),'body':_0x30b67e['body']||'','tag':_0x30b67e[_0xfa2bb3(0x9f)]||'','requireInteraction':_0x30b67e[_0xfa2bb3(0xe1)]||![],'silent':_0x30b67e[_0xfa2bb3(0xdf)]||![],'data':_0x30b67e[_0xfa2bb3(0x98)]||{}});_0x30b67e[_0xfa2bb3(0xdc)]&&(_0xec4ac3[_0xfa2bb3(0xc9)]=_0x3b1b60=>{const _0xfb8868=_0xfa2bb3;_0x3b1b60[_0xfb8868(0xd4)](),window['focus'](),_0x30b67e[_0xfb8868(0xdc)](_0x3b1b60,_0xec4ac3),_0xec4ac3[_0xfb8868(0x9b)]();});if(!_0x30b67e[_0xfa2bb3(0xe1)]){const _0x2695e1=_0x30b67e[_0xfa2bb3(0x9e)]||0x1388;setTimeout(()=>{const _0x2b91c0=_0xfa2bb3;_0xec4ac3[_0x2b91c0(0x9b)]();},_0x2695e1);}return _0xec4ac3;}catch(_0x3680c3){return console[_0xfa2bb3(0xa6)](_0xfa2bb3(0xae),_0x3680c3),null;}},async 'notifyTaskComplete'(_0x4b7469){const _0x5f4688=_0x378b,_0x3df633=_0x4b7469['exitCode']!==undefined?_0x4b7469[_0x5f4688(0xa9)]:_0x4b7469[_0x5f4688(0xb6)],_0x24ddd1=_0x4b7469[_0x5f4688(0xa5)]===_0x5f4688(0xd0)&&_0x3df633===0x0,_0x3ba5c4=_0x24ddd1?_0x5f4688(0xc7):'❌\x20Task\x20Failed';let _0x1451de;if(_0x4b7469[_0x5f4688(0xb0)]===_0x5f4688(0xb7)){const _0x1e9042=_0x4b7469['testName']||_0x5f4688(0xad),_0x1ca06b=_0x4b7469['testDescription']||_0x4b7469[_0x5f4688(0xcd)]||'';if(_0x1ca06b&&_0x1ca06b[_0x5f4688(0xa1)]>0x0){let _0x1dfabb=_0x1ca06b;_0x1ca06b['length']>0x50&&(_0x1dfabb=_0x1ca06b[_0x5f4688(0xb9)](0x0,0x4d)+_0x5f4688(0xd1)),_0x1451de=_0x5f4688(0xc3)+_0x1e9042+'\x20-\x20'+_0x1dfabb;}else _0x1451de=_0x5f4688(0xc3)+_0x1e9042;}else{if(_0x4b7469[_0x5f4688(0xb0)]===_0x5f4688(0xd9)){const _0x3a7e0a=_0x4b7469[_0x5f4688(0xc0)]||_0x5f4688(0xc1),_0x22ac76=_0x4b7469['deployDescription']||_0x4b7469[_0x5f4688(0xcd)]||'';if(_0x22ac76&&_0x22ac76[_0x5f4688(0xa1)]>0x0){let _0x312d6d=_0x22ac76;_0x22ac76['length']>0x50&&(_0x312d6d=_0x22ac76[_0x5f4688(0xb9)](0x0,0x4d)+_0x5f4688(0xd1)),_0x1451de=_0x5f4688(0xd3)+_0x3a7e0a+_0x5f4688(0xd7)+_0x312d6d;}else _0x1451de=_0x5f4688(0xd3)+_0x3a7e0a;}else{const _0x439565=_0x4b7469[_0x5f4688(0xda)]?_0x4b7469['name']['trim']():null,_0x536cfc=_0x4b7469[_0x5f4688(0xce)]?.[_0x5f4688(0xdd)]||_0x4b7469[_0x5f4688(0xce)]?.[_0x5f4688(0xa8)]||'Unknown',_0xe07fac=_0x536cfc['charAt'](0x0)[_0x5f4688(0x97)]()+_0x536cfc[_0x5f4688(0xa2)](0x1);let _0x4b3b98,_0x34f65a=![];if(_0x4b7469[_0x5f4688(0xc5)]&&Array[_0x5f4688(0xbc)](_0x4b7469[_0x5f4688(0xc5)])&&_0x4b7469[_0x5f4688(0xc5)][_0x5f4688(0xa1)]>0x0){const _0x334b40=_0x4b7469[_0x5f4688(0xc5)][_0x4b7469[_0x5f4688(0xc5)]['length']-0x1];_0x4b3b98=_0x334b40[_0x5f4688(0xb4)],_0x34f65a=!![];}else _0x4b3b98=_0x4b7469['description']||_0x4b7469[_0x5f4688(0xb4)]||_0x4b7469[_0x5f4688(0xcc)];_0x4b3b98[_0x5f4688(0xa1)]>0x64&&(_0x4b3b98=_0x4b3b98[_0x5f4688(0xb9)](0x0,0x61)+_0x5f4688(0xd1));const _0x2eb96a=_0x34f65a?_0x5f4688(0xcf):'';_0x439565?_0x1451de=_0x439565+'\x0a'+_0xe07fac+':\x20'+_0x2eb96a+_0x4b3b98:_0x1451de=_0xe07fac+':\x20'+_0x2eb96a+_0x4b3b98;}}return this[_0x5f4688(0xcb)](_0x3ba5c4,{'body':_0x1451de,'tag':'task-'+_0x4b7469[_0x5f4688(0xcc)],'requireInteraction':![],'duration':0x1f40,'data':{'taskId':_0x4b7469[_0x5f4688(0xcc)]},'onClick':(_0x51dcec,_0x4cf5ed)=>{const _0x5e0053=_0x5f4688;window[_0x5e0053(0x9c)](_0x5e0053(0xa3)+_0x4b7469[_0x5e0053(0xcc)],'_blank');}});},'shouldNotify'(_0x1afdce,_0x32604e){const _0x6ae027=_0x378b;if(!this['isEnabled']())return![];if(_0x1afdce[_0x6ae027(0xa5)]!==_0x6ae027(0xd0)&&_0x1afdce[_0x6ae027(0xa5)]!==_0x6ae027(0x9a))return![];if(!_0x32604e['has'](_0x1afdce[_0x6ae027(0xcc)]))return![];const _0x3ee231='notified-'+_0x1afdce[_0x6ae027(0xcc)];if(sessionStorage[_0x6ae027(0xe0)](_0x3ee231)===_0x6ae027(0xd6))return![];return!![];},'markNotified'(_0x26b945){const _0x355af1=_0x378b;sessionStorage[_0x355af1(0xb2)](_0x355af1(0xbe)+_0x26b945,'true');},'clearNotificationHistory'(){const _0x41fee6=_0x378b,_0x1013e0=[];for(let _0x12cc2a=0x0;_0x12cc2a<sessionStorage[_0x41fee6(0xa1)];_0x12cc2a++){const _0x1469fd=sessionStorage[_0x41fee6(0xc8)](_0x12cc2a);_0x1469fd[_0x41fee6(0xb1)](_0x41fee6(0xbe))&&_0x1013e0[_0x41fee6(0xaf)](_0x1469fd);}_0x1013e0[_0x41fee6(0xb3)](_0x4b2443=>sessionStorage[_0x41fee6(0xe2)](_0x4b2443));}};function _0x1dc0(){const _0x5092be=['AwnVBG','zMfPBgvK','y2XVC2u','B3bLBG','mteXodyWsMnMDLfT','zhvYyxrPB24','DgfN','ndiWnJu4qujMBKfR','BgvUz3rO','C2XPy2u','DgfZAY5ODg1Sp2LKpq','z3jHBNrLza','C3rHDhvZ','zxjYB3i','CgvYBwLZC2LVBG','zgvMyxvSDf9Hz2vUDa','zxHPDenVzgu','mZaWnJrOtensB0m','mJKYntGZnu9PqLzqyG','odu2nZG3mKr5CKnNvq','vgvZDa','rMfPBgvKihrVihnOB3CGBM90AwzPy2f0Aw9UoG','ChvZAa','DgfZA1r5Cgu','C3rHCNrZv2L0Aa','C2v0sxrLBq','zM9YrwfJAa','Aw5ZDhj1y3rPB25Z','yMfKz2u','zxHPDf9JB2rL','DgvZDa','tM90AwzPy2f0Aw9UCYbHCMuGBM90ihn1ChbVCNrLzcbPBIb0AgLZigjYB3DZzxi','C3vIC3rYAw5N','Dw5ZDxbWB3j0zwq','mZC4n2PfqKHIEq','AxnbCNjHEq','l2zHDMLJB24UAwnV','BM90AwzPzwqT','tM90AwzPy2f0Aw9UihbLCM1PC3nPB24GBM90igDYyw50zwq','zgvWBg95uhjVzMLSzq','rgvWBg95','otbJu1n5sxm','vgvZDdOG','AxntDxbWB3j0zwq','zM9SBg93vxbiAxn0B3j5','mtrHtMXvCeq','4PYfifrHC2SGq29TCgXLDgvKifn1y2nLC3nMDwXSEq','A2v5','B25JBgLJAW','ndG5mfDcr2H4sa','C2HVDW','DgfZA0LK','zgvZy3jPChrPB24','zw52vMfYCW','w0zVBgXVDY11Cf0G','y29TCgXLDgvK','lI4U','nda3otC5Eujuwgry','rgvWBg95oIa','ChjLDMvUDerLzMf1Bhq','zMfSC2u','Dhj1zq','ic0G','BM90AwzPy2f0Aw9UCY1LBMfIBgvK','zgvWBg95','BMfTzq','D2fYBG','B25dBgLJAW','q09ervjFquDftLq','tM90AwzPy2f0Aw9U','C2LSzw50','z2v0sxrLBq','CMvXDwLYzuLUDgvYywn0Aw9U','CMvTB3zLsxrLBq','zgvUAwvK','mZKWzgLJt25V','Dg9vChbLCKnHC2u','zgf0yq'];_0x1dc0=function(){return _0x5092be;};return _0x1dc0();}
1
+ function _0x4cdd(_0x239836,_0xe0fb4d){_0x239836=_0x239836-0x135;const _0x58c881=_0x58c8();let _0x4cddbe=_0x58c881[_0x239836];if(_0x4cdd['zjSLOC']===undefined){var _0x329e83=function(_0x566bad){const _0x4ac64d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xa2af6c='',_0x5b643e='';for(let _0x10bc93=0x0,_0x3e9e6c,_0x3958dd,_0x17b80f=0x0;_0x3958dd=_0x566bad['charAt'](_0x17b80f++);~_0x3958dd&&(_0x3e9e6c=_0x10bc93%0x4?_0x3e9e6c*0x40+_0x3958dd:_0x3958dd,_0x10bc93++%0x4)?_0xa2af6c+=String['fromCharCode'](0xff&_0x3e9e6c>>(-0x2*_0x10bc93&0x6)):0x0){_0x3958dd=_0x4ac64d['indexOf'](_0x3958dd);}for(let _0xb7ac30=0x0,_0xbaca5e=_0xa2af6c['length'];_0xb7ac30<_0xbaca5e;_0xb7ac30++){_0x5b643e+='%'+('00'+_0xa2af6c['charCodeAt'](_0xb7ac30)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5b643e);};_0x4cdd['hmQXeZ']=_0x329e83,_0x4cdd['vWrygS']={},_0x4cdd['zjSLOC']=!![];}const _0x10e316=_0x58c881[0x0],_0x149f10=_0x239836+_0x10e316,_0x1ca141=_0x4cdd['vWrygS'][_0x149f10];return!_0x1ca141?(_0x4cddbe=_0x4cdd['hmQXeZ'](_0x4cddbe),_0x4cdd['vWrygS'][_0x149f10]=_0x4cddbe):_0x4cddbe=_0x1ca141,_0x4cddbe;}(function(_0x512d16,_0x3918ee){const _0x25995a=_0x4cdd,_0x4a6811=_0x512d16();while(!![]){try{const _0xaeb4ac=-parseInt(_0x25995a(0x16c))/0x1*(parseInt(_0x25995a(0x166))/0x2)+-parseInt(_0x25995a(0x182))/0x3+parseInt(_0x25995a(0x15c))/0x4+-parseInt(_0x25995a(0x145))/0x5*(parseInt(_0x25995a(0x17f))/0x6)+parseInt(_0x25995a(0x164))/0x7*(parseInt(_0x25995a(0x173))/0x8)+parseInt(_0x25995a(0x14f))/0x9+parseInt(_0x25995a(0x185))/0xa;if(_0xaeb4ac===_0x3918ee)break;else _0x4a6811['push'](_0x4a6811['shift']());}catch(_0x128637){_0x4a6811['push'](_0x4a6811['shift']());}}}(_0x58c8,0x420e3));function _0x58c8(){const _0x9b2ed6=['BMfTzq','CMvXDwLYzuLUDgvYywn0Aw9U','DhjPBq','otaXmZeZs2zoCwPU','4PYfifrHC2SGq29TCgXLDgvKifn1y2nLC3nMDwXSEq','mLrOC2X4za','q09ervjFquDftLq','zgvUAwvK','B3bLBG','C2LSzw50','C3rHDhvZ','nde3odC4qwzUtvLy','y29TCgXLDgvK','CMvTB3zLsxrLBq','z3jHBNrLza','rMfPBgvKihrVihjLCxvLC3qGBM90AwzPy2f0Aw9UihbLCM1PC3nPB246','DgvZDa','BM90AwzPy2f0Aw9UCY1LBMfIBgvK','mZjRre9nBuC','C3rHCNrZv2L0Aa','zgvMyxvSDf9Hz2vUDa','zgvWBg95rgvZy3jPChrPB24','Dw5ZDxbWB3j0zwq','rgvWBg95oIa','zM9YrwfJAa','zgf0yq','BM90AwzPzwqT','DgfZA1r5Cgu','yMfKz2u','lI4U','mJu4qxHXzK1m','tM90AwzPy2f0Aw9UihbLCM1PC3nPB24GBM90igDYyw50zwq','AxnbCNjHEq','mJG3mJq3zKHfDwLd','B25JBgLJAW','C2HVDW','mJy5odCZmgXZs0LqDa','zgvZy3jPChrPB24','D2fYBG','Dhj1zq','zxHPDf9JB2rL','CMvXDwvZDfbLCM1PC3nPB24','vw5RBM93BG','AxnfBMfIBgvK','y2XVC2u','vgvZDa','zM9JDxm','DgfN','zhvYyxrPB24','4P2mifrHC2SGrMfPBgvK','BgvUz3rO','Aw5ZDhj1y3rPB25Z','A2v5','z2v0sxrLBq','mtm3nJvKs2Dgsem','AgfZ','y2HHCKf0','AxntDxbWB3j0zwq','zM9SBg93vxbiAxn0B3j5','zgvWBg95uhjVzMLSzq','x2jSyw5R','l2zHDMLJB24UAwnV','CgvYBwLZC2LVBG','DgfZA0LK','nduXntu3Bgjbsuns','C2XPy2u','ChvZAa','zxjYB3i','DgfZAY5ODg1Sp2LKpq','B25dBgLJAW','C3vIC3rYAw5N','zw52vMfYCW','zMfSC2u','zMfPBgvK','zxHPDenVzgu','rgvWBg95','ChjLDMvUDerLzMf1Bhq','mJy5otq4sgroDvDf','vgvZDdOG','yM9KEq','C2v0sxrLBq','ic0G'];_0x58c8=function(){return _0x9b2ed6;};return _0x58c8();}export const NotificationManager={'isSupported'(){return'Notification'in window;},'isEnabled'(){const _0x1ea1da=_0x4cdd;if(!this[_0x1ea1da(0x148)]())return![];return localStorage[_0x1ea1da(0x144)]('notifications-enabled')==='true';},'setEnabled'(_0xa2af6c){const _0x27083f=_0x4cdd;localStorage['setItem'](_0x27083f(0x172),_0xa2af6c?_0x27083f(0x136):_0x27083f(0x157));},'getPermission'(){const _0x4e28d7=_0x4cdd;if(!this[_0x4e28d7(0x148)]())return _0x4e28d7(0x177);return Notification[_0x4e28d7(0x14d)];},async 'requestPermission'(){const _0xd91600=_0x4cdd;if(!this[_0xd91600(0x148)]())return _0xd91600(0x177);if(Notification[_0xd91600(0x14d)]==='granted')return _0xd91600(0x16f);if(Notification[_0xd91600(0x14d)]==='denied')return _0xd91600(0x168);try{const _0x5b643e=await Notification[_0xd91600(0x138)]();return _0x5b643e;}catch(_0x10bc93){return console[_0xd91600(0x152)](_0xd91600(0x170),_0x10bc93),_0xd91600(0x168);}},async 'show'(_0x3e9e6c,_0x3958dd={}){const _0x16e263=_0x4cdd;if(!this['isEnabled']())return null;if(!this['isSupported']())return console[_0x16e263(0x135)]('Notifications\x20are\x20not\x20supported\x20in\x20this\x20browser'),null;if(Notification[_0x16e263(0x14d)]!=='granted')return console['warn'](_0x16e263(0x180)),null;try{const _0x17b80f=new Notification(_0x3e9e6c,{'icon':_0x3958dd['icon']||_0x16e263(0x14c),'badge':_0x3958dd[_0x16e263(0x17d)]||_0x16e263(0x14c),'body':_0x3958dd[_0x16e263(0x15e)]||'','tag':_0x3958dd[_0x16e263(0x13e)]||'','requireInteraction':_0x3958dd[_0x16e263(0x162)]||![],'silent':_0x3958dd[_0x16e263(0x16a)]||![],'data':_0x3958dd[_0x16e263(0x17a)]||{}});_0x3958dd[_0x16e263(0x154)]&&(_0x17b80f[_0x16e263(0x183)]=_0xb7ac30=>{const _0x143022=_0x16e263;_0xb7ac30[_0x143022(0x15b)](),window[_0x143022(0x13d)](),_0x3958dd['onClick'](_0xb7ac30,_0x17b80f),_0x17b80f[_0x143022(0x13b)]();});if(!_0x3958dd[_0x16e263(0x162)]){const _0xbaca5e=_0x3958dd[_0x16e263(0x13f)]||0x1388;setTimeout(()=>{_0x17b80f['close']();},_0xbaca5e);}return _0x17b80f;}catch(_0x29e0bd){return console[_0x16e263(0x152)]('Failed\x20to\x20show\x20notification:',_0x29e0bd),null;}},async 'notifyTaskComplete'(_0x532f63){const _0x16b164=_0x4cdd,_0xbe6a10=_0x532f63['exitCode']!==undefined?_0x532f63[_0x16b164(0x159)]:_0x532f63[_0x16b164(0x137)],_0x5eee0c=_0x532f63[_0x16b164(0x16b)]===_0x16b164(0x16d)&&_0xbe6a10===0x0,_0x91d527=_0x5eee0c?_0x16b164(0x165):_0x16b164(0x140);let _0x2c2df0;if(_0x532f63[_0x16b164(0x17c)]===_0x16b164(0x171)){const _0x559ffe=_0x532f63['testName']||_0x16b164(0x13c),_0x3a3e5e=_0x532f63['testDescription']||_0x532f63['description']||'';if(_0x3a3e5e&&_0x3a3e5e[_0x16b164(0x141)]>0x0){let _0x4a193b=_0x3a3e5e;_0x3a3e5e[_0x16b164(0x141)]>0x50&&(_0x4a193b=_0x3a3e5e[_0x16b164(0x155)](0x0,0x4d)+'...'),_0x2c2df0='Test:\x20'+_0x559ffe+_0x16b164(0x160)+_0x4a193b;}else _0x2c2df0=_0x16b164(0x15d)+_0x559ffe;}else{if(_0x532f63['taskType']==='deploy'){const _0x4e6a9d=_0x532f63[_0x16b164(0x14a)]||_0x16b164(0x15a),_0x22096e=_0x532f63[_0x16b164(0x176)]||_0x532f63['description']||'';if(_0x22096e&&_0x22096e[_0x16b164(0x141)]>0x0){let _0x86f77e=_0x22096e;_0x22096e[_0x16b164(0x141)]>0x50&&(_0x86f77e=_0x22096e['substring'](0x0,0x4d)+_0x16b164(0x17e)),_0x2c2df0=_0x16b164(0x178)+_0x4e6a9d+_0x16b164(0x160)+_0x86f77e;}else _0x2c2df0='Deploy:\x20'+_0x4e6a9d;}else{const _0x194398=_0x532f63[_0x16b164(0x161)]?_0x532f63[_0x16b164(0x161)][_0x16b164(0x163)]():null,_0x1b6493=_0x532f63[_0x16b164(0x156)]?.[_0x16b164(0x167)]||_0x532f63[_0x16b164(0x156)]?.[_0x16b164(0x175)]||_0x16b164(0x139),_0x1aeca9=_0x1b6493[_0x16b164(0x147)](0x0)['toUpperCase']()+_0x1b6493[_0x16b164(0x150)](0x1);let _0x4d279a,_0x55a630=![];if(_0x532f63['followUpHistory']&&Array[_0x16b164(0x181)](_0x532f63[_0x16b164(0x149)])&&_0x532f63['followUpHistory']['length']>0x0){const _0x5dfb3e=_0x532f63['followUpHistory'][_0x532f63['followUpHistory'][_0x16b164(0x141)]-0x1];_0x4d279a=_0x5dfb3e[_0x16b164(0x142)],_0x55a630=!![];}else _0x4d279a=_0x532f63[_0x16b164(0x186)]||_0x532f63[_0x16b164(0x142)]||_0x532f63[_0x16b164(0x14e)];_0x4d279a[_0x16b164(0x141)]>0x64&&(_0x4d279a=_0x4d279a[_0x16b164(0x155)](0x0,0x61)+_0x16b164(0x17e));const _0x1132da=_0x55a630?'[Follow-up]\x20':'';_0x194398?_0x2c2df0=_0x194398+'\x0a'+_0x1aeca9+':\x20'+_0x1132da+_0x4d279a:_0x2c2df0=_0x1aeca9+':\x20'+_0x1132da+_0x4d279a;}}return this[_0x16b164(0x184)](_0x91d527,{'body':_0x2c2df0,'tag':'task-'+_0x532f63[_0x16b164(0x14e)],'requireInteraction':![],'duration':0x1f40,'data':{'taskId':_0x532f63[_0x16b164(0x14e)]},'onClick':(_0x4b56fc,_0x182393)=>{const _0xc651f2=_0x16b164;window[_0xc651f2(0x169)](_0xc651f2(0x153)+_0x532f63[_0xc651f2(0x14e)],_0xc651f2(0x14b));}});},'shouldNotify'(_0x504125,_0x5e6788){const _0xdb1021=_0x4cdd;if(!this[_0xdb1021(0x13a)]())return![];if(_0x504125['status']!==_0xdb1021(0x16d)&&_0x504125['status']!==_0xdb1021(0x158))return![];if(!_0x5e6788[_0xdb1021(0x146)](_0x504125[_0xdb1021(0x14e)]))return![];const _0x3ed9aa=_0xdb1021(0x17b)+_0x504125[_0xdb1021(0x14e)];if(sessionStorage[_0xdb1021(0x144)](_0x3ed9aa)===_0xdb1021(0x136))return![];return!![];},'markNotified'(_0x493ee3){const _0x73aa1=_0x4cdd;sessionStorage[_0x73aa1(0x15f)](_0x73aa1(0x17b)+_0x493ee3,_0x73aa1(0x136));},'clearNotificationHistory'(){const _0x1ffe8e=_0x4cdd,_0x9debc4=[];for(let _0x2cdac7=0x0;_0x2cdac7<sessionStorage['length'];_0x2cdac7++){const _0x410d3e=sessionStorage[_0x1ffe8e(0x143)](_0x2cdac7);_0x410d3e[_0x1ffe8e(0x174)](_0x1ffe8e(0x17b))&&_0x9debc4[_0x1ffe8e(0x151)](_0x410d3e);}_0x9debc4[_0x1ffe8e(0x179)](_0x1f7a0c=>sessionStorage[_0x1ffe8e(0x16e)](_0x1f7a0c));}};
@@ -1 +1 @@
1
- const _0x32fdb0=_0x10e0;(function(_0x160c38,_0x5abca4){const _0x1b8609=_0x10e0,_0x202118=_0x160c38();while(!![]){try{const _0x33af4f=-parseInt(_0x1b8609(0x121))/0x1+-parseInt(_0x1b8609(0x104))/0x2+-parseInt(_0x1b8609(0x126))/0x3+-parseInt(_0x1b8609(0xe1))/0x4+parseInt(_0x1b8609(0x120))/0x5+parseInt(_0x1b8609(0x105))/0x6+parseInt(_0x1b8609(0x125))/0x7*(parseInt(_0x1b8609(0x111))/0x8);if(_0x33af4f===_0x5abca4)break;else _0x202118['push'](_0x202118['shift']());}catch(_0x398fd5){_0x202118['push'](_0x202118['shift']());}}}(_0x2a44,0x9b5ec));import{API}from'./app.js';let modalInjected=![];const SERVER_HEALTH_MODAL_HTML=_0x32fdb0(0xdd);function ensureModalExists(){const _0x1e6d8f=_0x32fdb0;if(modalInjected||document[_0x1e6d8f(0xd8)](_0x1e6d8f(0xff)))return;const _0x317d04=document['createElement'](_0x1e6d8f(0xdc));_0x317d04[_0x1e6d8f(0x112)]=SERVER_HEALTH_MODAL_HTML,document[_0x1e6d8f(0xf3)][_0x1e6d8f(0x109)](_0x317d04[_0x1e6d8f(0xea)]),modalInjected=!![];}async function loadServerHealthMetrics(){const _0x2409fc=_0x32fdb0,_0x1a28fc=document[_0x2409fc(0xd8)]('server-health-loading'),_0x5d48cf=document[_0x2409fc(0xd8)](_0x2409fc(0xf7)),_0x315c60=document['getElementById'](_0x2409fc(0xda));if(!_0x1a28fc||!_0x5d48cf||!_0x315c60)return;_0x1a28fc['textContent']=_0x2409fc(0xf9);try{const _0x147614=await fetch(_0x2409fc(0x100),{'method':_0x2409fc(0xd5),'headers':{'Content-Type':'application/json'},'credentials':'include'});if(!_0x147614['ok'])throw new Error('Failed\x20to\x20load\x20metrics:\x20'+_0x147614[_0x2409fc(0x10d)]);const _0x140267=await _0x147614[_0x2409fc(0x11d)]();document[_0x2409fc(0xd8)](_0x2409fc(0x110))[_0x2409fc(0xdb)]=_0x140267[_0x2409fc(0xf2)][_0x2409fc(0xef)],document[_0x2409fc(0xd8)](_0x2409fc(0xf1))['textContent']=_0x140267['memory'][_0x2409fc(0xef)],document[_0x2409fc(0xd8)](_0x2409fc(0x11c))[_0x2409fc(0xdb)]=_0x140267[_0x2409fc(0xec)][_0x2409fc(0xef)],document[_0x2409fc(0xd8)](_0x2409fc(0x118))[_0x2409fc(0xdb)]=_0x140267['docker'][_0x2409fc(0xef)],document['getElementById'](_0x2409fc(0x115))[_0x2409fc(0xdb)]=_0x140267[_0x2409fc(0x113)]['display'],document[_0x2409fc(0xd8)](_0x2409fc(0xd2))['textContent']=_0x140267['sessions']['display'];if(_0x140267[_0x2409fc(0xfb)]){const _0xc15b9f=document[_0x2409fc(0xd8)](_0x2409fc(0x114));document[_0x2409fc(0xd8)](_0x2409fc(0xe6))[_0x2409fc(0xdb)]=_0x140267['dockerStorage'][_0x2409fc(0xef)];const _0x24278b=document[_0x2409fc(0xd8)](_0x2409fc(0xde));_0x140267[_0x2409fc(0xfb)][_0x2409fc(0x11f)]?(_0x24278b[_0x2409fc(0xdb)]=_0x140267[_0x2409fc(0xfb)]['availableDisplay'],_0x24278b['hidden']=![]):_0x24278b[_0x2409fc(0x11b)]=!![];document[_0x2409fc(0xd8)](_0x2409fc(0xf0))[_0x2409fc(0xdb)]=_0x140267['dockerStorage'][_0x2409fc(0xf4)],document[_0x2409fc(0xd8)](_0x2409fc(0x101))[_0x2409fc(0xdb)]=_0x140267[_0x2409fc(0xfb)]['images'][_0x2409fc(0xef)],document[_0x2409fc(0xd8)](_0x2409fc(0xe4))[_0x2409fc(0xdb)]=_0x140267[_0x2409fc(0xfb)][_0x2409fc(0xe3)][_0x2409fc(0xef)],document[_0x2409fc(0xd8)](_0x2409fc(0xee))[_0x2409fc(0xdb)]=_0x140267[_0x2409fc(0xfb)][_0x2409fc(0xe8)][_0x2409fc(0xef)],document['getElementById'](_0x2409fc(0xfd))[_0x2409fc(0xdb)]=_0x140267[_0x2409fc(0xfb)]['buildCache'][_0x2409fc(0xef)],_0xc15b9f[_0x2409fc(0xfa)]['remove'](_0x2409fc(0xe0),'status-critical');if(_0x140267[_0x2409fc(0xfb)][_0x2409fc(0xf5)]==='critical')_0xc15b9f[_0x2409fc(0xfa)][_0x2409fc(0xd0)](_0x2409fc(0xd9));else _0x140267[_0x2409fc(0xfb)]['status']==='warning'&&_0xc15b9f['classList'][_0x2409fc(0xd0)](_0x2409fc(0xe0));}_0x1a28fc['hidden']=!![],_0x315c60[_0x2409fc(0x11b)]=![];}catch(_0x35f714){console['error'](_0x2409fc(0x122),_0x35f714),_0x1a28fc[_0x2409fc(0x11b)]=!![],_0x5d48cf[_0x2409fc(0x11b)]=![],_0x5d48cf[_0x2409fc(0xdb)]=_0x2409fc(0x108)+_0x35f714[_0x2409fc(0xf6)];}}export async function openServerHealthModal(){const _0x378c56=_0x32fdb0;ensureModalExists();const _0x2c7696=document[_0x378c56(0xd8)](_0x378c56(0xff)),_0x527bc0=document['getElementById'](_0x378c56(0xd1)),_0x152f3e=document[_0x378c56(0xd8)](_0x378c56(0xf7)),_0xb5753d=document[_0x378c56(0xd8)](_0x378c56(0xda)),_0x543604=document['getElementById'](_0x378c56(0x119)),_0x1a33b7=document[_0x378c56(0xd8)](_0x378c56(0x11a)),_0x180f16=document[_0x378c56(0xd8)]('server-health-refresh'),_0x30eb5a=document[_0x378c56(0xd8)](_0x378c56(0x102)),_0xcb116c=document['getElementById']('server-remove-stopped'),_0xf2ee1b=document[_0x378c56(0xd8)]('server-prune-docker'),_0x18914d=document[_0x378c56(0xd8)](_0x378c56(0xd6)),_0x39ec65=document[_0x378c56(0xd8)]('cleanup-toggle'),_0x5b6225=document[_0x378c56(0xd8)](_0x378c56(0x123)),_0x1bc242=document[_0x378c56(0xd8)](_0x378c56(0x117));if(!_0x2c7696)return;_0x2c7696[_0x378c56(0x11b)]=![],_0x527bc0[_0x378c56(0x11b)]=![],_0x152f3e[_0x378c56(0x11b)]=!![],_0xb5753d[_0x378c56(0x11b)]=!![];_0x18914d&&(_0x18914d[_0x378c56(0x11b)]=!![],_0x18914d[_0x378c56(0xdb)]='',_0x18914d[_0x378c56(0xfa)]['remove']('success',_0x378c56(0x103)));_0x1bc242&&_0x1bc242['classList']['remove'](_0x378c56(0xf8));_0x5b6225&&(_0x5b6225['hidden']=!![]);_0x39ec65&&_0x39ec65[_0x378c56(0x116)](_0x378c56(0x127),'false');const _0x2c5b5c=[_0x30eb5a,_0xcb116c,_0xf2ee1b,_0x180f16],_0x2d7b06=_0x3120ca=>{_0x2c5b5c['forEach'](_0x9e49c0=>{const _0x31ba13=_0x10e0;if(_0x9e49c0)_0x9e49c0[_0x31ba13(0x11e)]=_0x3120ca;});},_0x4c2baf=(_0x253f6a,_0x2327d9='info')=>{const _0x2b5cd5=_0x378c56;if(!_0x18914d)return;_0x18914d[_0x2b5cd5(0x11b)]=![],_0x18914d[_0x2b5cd5(0xdb)]=_0x253f6a,_0x18914d['classList'][_0x2b5cd5(0x10a)]('success',_0x2b5cd5(0x103));if(_0x2327d9===_0x2b5cd5(0xe9))_0x18914d['classList'][_0x2b5cd5(0xd0)](_0x2b5cd5(0xe9));else _0x2327d9===_0x2b5cd5(0x103)&&_0x18914d[_0x2b5cd5(0xfa)][_0x2b5cd5(0xd0)](_0x2b5cd5(0x103));};await loadServerHealthMetrics();const _0x22d2fc=()=>{const _0x2d2cfe=_0x378c56;_0x2c7696[_0x2d2cfe(0x11b)]=!![],document[_0x2d2cfe(0x107)](_0x2d2cfe(0x106),_0xecf252);},_0xecf252=_0x372e37=>{const _0x4bd028=_0x378c56;_0x372e37[_0x4bd028(0xd4)]===_0x4bd028(0xd7)&&!_0x2c7696[_0x4bd028(0x11b)]&&_0x22d2fc();};_0x543604[_0x378c56(0xe5)]=_0x22d2fc,_0x1a33b7[_0x378c56(0xe5)]=_0x22d2fc,_0x180f16[_0x378c56(0xe5)]=async()=>{const _0x25a06d=_0x378c56;_0x527bc0[_0x25a06d(0x11b)]=![],_0x152f3e['hidden']=!![],_0xb5753d[_0x25a06d(0x11b)]=!![],await loadServerHealthMetrics();};const _0x12e657=async(_0x5c5ff6,_0x295d3b)=>{const _0x3b7ee1=_0x378c56;_0x527bc0['textContent']=_0x5c5ff6,_0x527bc0[_0x3b7ee1(0x11b)]=![],_0x152f3e['hidden']=!![],_0xb5753d[_0x3b7ee1(0x11b)]=!![],_0x2d7b06(!![]),_0x4c2baf(_0x5c5ff6+_0x3b7ee1(0xe7));try{const _0xd64b4a=await _0x295d3b(),_0x1d0b41=_0xd64b4a?.['message']||_0x5c5ff6+'\x20completed';_0x4c2baf(_0x1d0b41,_0x3b7ee1(0xe9));}catch(_0x2552f6){console[_0x3b7ee1(0x103)]('Server\x20cleanup\x20action\x20failed\x20('+_0x5c5ff6+')',_0x2552f6),_0x4c2baf(_0x2552f6[_0x3b7ee1(0xf6)]||_0x3b7ee1(0x10b)+_0x5c5ff6[_0x3b7ee1(0x10c)](),_0x3b7ee1(0x103));}finally{await loadServerHealthMetrics(),_0x2d7b06(![]);}};_0x30eb5a&&(_0x30eb5a[_0x378c56(0xe5)]=()=>_0x12e657(_0x378c56(0xed),()=>API['stopAllContainers']()));_0xcb116c&&(_0xcb116c['onclick']=()=>_0x12e657('Removing\x20stopped\x20containers',()=>API['removeStoppedContainers']()));_0xf2ee1b&&(_0xf2ee1b[_0x378c56(0xe5)]=()=>_0x12e657(_0x378c56(0xfe),()=>API[_0x378c56(0x124)]()));_0x39ec65&&_0x5b6225&&_0x1bc242&&(_0x39ec65[_0x378c56(0xe5)]=()=>{const _0x3a3d61=_0x378c56,_0x21f252=_0x1bc242['classList'][_0x3a3d61(0x10e)](_0x3a3d61(0xf8));_0x5b6225[_0x3a3d61(0x11b)]=!_0x21f252,_0x39ec65[_0x3a3d61(0x116)](_0x3a3d61(0x127),_0x21f252?_0x3a3d61(0xfc):'false');});document[_0x378c56(0xdf)]('keydown',_0xecf252);const _0x3cac56=_0x2c7696[_0x378c56(0xe2)](_0x378c56(0x10f));_0x3cac56&&(_0x3cac56['onclick']=_0x22d2fc);}function _0x10e0(_0x4e3726,_0x56df7d){_0x4e3726=_0x4e3726-0xd0;const _0x2a4479=_0x2a44();let _0x10e06b=_0x2a4479[_0x4e3726];if(_0x10e0['tyNqbv']===undefined){var _0x157ad6=function(_0x41e2cb){const _0x42462c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x317d04='',_0x1a28fc='';for(let _0x5d48cf=0x0,_0x315c60,_0x147614,_0x140267=0x0;_0x147614=_0x41e2cb['charAt'](_0x140267++);~_0x147614&&(_0x315c60=_0x5d48cf%0x4?_0x315c60*0x40+_0x147614:_0x147614,_0x5d48cf++%0x4)?_0x317d04+=String['fromCharCode'](0xff&_0x315c60>>(-0x2*_0x5d48cf&0x6)):0x0){_0x147614=_0x42462c['indexOf'](_0x147614);}for(let _0xc15b9f=0x0,_0x24278b=_0x317d04['length'];_0xc15b9f<_0x24278b;_0xc15b9f++){_0x1a28fc+='%'+('00'+_0x317d04['charCodeAt'](_0xc15b9f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1a28fc);};_0x10e0['NZMCpV']=_0x157ad6,_0x10e0['kdwLCH']={},_0x10e0['tyNqbv']=!![];}const _0x18d8b2=_0x2a4479[0x0],_0x1eb415=_0x4e3726+_0x18d8b2,_0x11b1df=_0x10e0['kdwLCH'][_0x1eb415];return!_0x11b1df?(_0x10e06b=_0x10e0['NZMCpV'](_0x10e06b),_0x10e0['kdwLCH'][_0x1eb415]=_0x10e06b):_0x10e06b=_0x11b1df,_0x10e06b;}export{loadServerHealthMetrics};typeof window!==_0x32fdb0(0xeb)&&(window[_0x32fdb0(0xd3)]=openServerHealthModal);function _0x2a44(){const _0x59dc47=['Dg9Nz2XL','lM1VzgfSlw92zxjSyxK','y3b1lxvZywDL','odm1ndy5nMvUvgn5CG','Aw5Uzxjive1m','Dxb0Aw1L','zg9JA2vYlxn0B3jHz2uTy2fYza','C2vYDMvYlxvWDgLTzq','C2v0qxr0CMLIDxrL','y2XLyw51Cc1Zzwn0Aw9U','zg9JA2vYlwnVBNrHAw5LCNm','C2vYDMvYlwHLywX0Ac1JBg9Zzq','C2vYDMvYlwHLywX0Ac1VAW','AgLKzgvU','zgLZAY11C2fNzq','ANnVBG','zgLZywjSzwq','yxzHAwXHyMXLrgLZCgXHEq','mJq4nJKYnvfHuezjwa','mte5odKZnM5ZAfbTBq','rMfPBgvKihrVigXVywqGC2vYDMvYigHLywX0AcbTzxrYAwnZoG','y2XLyw51Cc1JB250zw50','Chj1BMveB2nRzxjszxnVDxjJzxm','mJfjALvTCuu','mJCXnde4n1DewvDbBq','yxjPys1LEhbHBMrLza','ywrK','C2vYDMvYlwHLywX0Ac1SB2fKAw5N','ywn0AxzLlxnLC3nPB25Z','B3bLBLnLCNzLCKHLywX0Ae1VzgfS','A2v5','r0vu','C2vYDMvYlwHLywX0Ac1Hy3rPB24TC3rHDhvZ','rxnJyxbL','z2v0rwXLBwvUDej5swq','C3rHDhvZlwnYAxrPy2fS','C2vYDMvYlwHLywX0Ac1JB250zw50','Dgv4DenVBNrLBNq','zgL2','cJXKAxyGAwq9iNnLCNzLCI1OzwfSDgGTBw9KywWIignSyxnZpsjTB2rHBciGAgLKzgvUpGOGidXKAxyGy2XHC3m9iM1VzgfSlw92zxjSyxKIpJWVzgL2pGOGidXKAxyGy2XHC3m9iM1VzgfSlwnVBNrLBNqIpGOGicaGpgrPDIbJBgfZCZ0IBw9KywWTAgvHzgvYiJ4kicaGicaGpgGYpLnLCNzLCIbizwfSDgG8l2GYpGOGicaGica8yNv0Dg9Uihr5Cgu9iMj1DhrVBIiGy2XHC3m9iM1VzgfSlwnSB3nLiIbPzd0IC2vYDMvYlwHLywX0Ac1JBg9ZzsiGyxjPys1SywjLBd0Iq2XVC2uIpGOGicaGicaGidXZDMCGD2LKDgG9iJi0iIbOzwLNAhq9iJi0iIb2Awv3qM94psiWidaGmJqGmJqIigzPBgW9iM5VBMuIihn0CM9Rzt0Iy3vYCMvUDenVBg9YiIbZDhjVA2uTD2LKDgG9iJiIihn0CM9Rzs1SAw5Ly2fWpsjYB3vUzciGC3rYB2TLlwXPBMvQB2LUpsjYB3vUzci+cIaGicaGicaGica8BgLUzsb4mt0ImtGIihKXpsi2iIb4mJ0InIiGEti9iJe4iJ48l2XPBMu+cIaGicaGicaGica8BgLUzsb4mt0InIiGEte9iJyIihGYpsiXociGEti9iJe4iJ48l2XPBMu+cIaGicaGicaGpc9ZDMC+cIaGicaGidWVyNv0Dg9UpGOGicaGpc9KAxy+cIaGica8zgL2ignSyxnZpsjTB2rHBc1IB2r5iJ4kicaGicaGpgrPDIbPzd0IC2vYDMvYlwHLywX0Ac1SB2fKAw5NiIbJBgfZCZ0IBg9HzgLUzYi+tg9HzgLUzYbZzxj2zxiGBwv0CMLJCZWVzgL2pGOGicaGica8zgL2igLKpsjZzxj2zxiTAgvHBhrOlwvYCM9YiIbJBgfZCZ0IzxjYB3iTBwvZC2fNzsiGAgLKzgvUpJWVzgL2pGOGicaGica8zgL2igLKpsjZzxj2zxiTAgvHBhrOlwnVBNrLBNqIigHPzgrLBJ4kicaGicaGica8zgL2ignSyxnZpsjOzwfSDgGTBwv0CMLJCYi+cIaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTy2fYzci+cIaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1Py29UiJ7WN5k7pc9KAxy+cIaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1KzxrHAwXZiJ4kicaGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTBgfIzwWIpKnqvsbvC2fNztWVzgL2pGOGicaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY12ywX1zsiGAwq9iMnWDs11C2fNzsi+ltWVzgL2pGOGicaGicaGicaGica8l2rPDJ4kicaGicaGicaGidWVzgL2pGOGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwnHCMqIpGOGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTAwnVBIi+8j+NOdWVzgL2pGOGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTzgv0ywLSCYi+cIaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwXHyMvSiJ5nzw1VCNKGvxnHz2u8l2rPDJ4kicaGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTDMfSDwuIigLKpsjTzw1VCNKTDxnHz2uIpI08l2rPDJ4kicaGicaGicaGicaGpc9KAxy+cIaGicaGicaGica8l2rPDJ4kicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1JyxjKiJ4kicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwLJB24IpVcFKR48l2rPDJ4kicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwrLDgfPBhmIpGOGicaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1SywjLBci+rgLZAYbvC2fNztWVzgL2pGOGicaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY12ywX1zsiGAwq9iMrPC2STDxnHz2uIpI08l2rPDJ4kicaGicaGicaGicaGpc9KAxy+cIaGicaGicaGica8l2rPDJ4kicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1JyxjKiJ4kicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwLJB24IpVcFKlm8l2rPDJ4kicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwrLDgfPBhmIpGOGicaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1SywjLBci+rg9JA2vYienVBNrHAw5LCNm8l2rPDJ4kicaGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTDMfSDwuIigLKpsjKB2nRzxiTy29UDgfPBMvYCYi+ltWVzgL2pGOGicaGicaGicaGica8l2rPDJ4kicaGicaGicaGidWVzgL2pGOGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwnHCMqGBwv0CMLJlwnHCMqTD2LKzsiGAwq9iMrVy2TLCI1ZDg9YywDLlwnHCMqIpGOGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTAwnVBIi+8j+tPJWVzgL2pGOGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTzgv0ywLSCYi+cIaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwXHyMvSiJ5eB2nRzxiGu3rVCMfNztWVzgL2pGOGicaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY12ywX1zsiGAwq9iMrVy2TLCI1ZDg9YywDLlxrVDgfSiJ4Tpc9KAxy+cIaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlxn1yIiGAwq9iMrVy2TLCI1ZDg9YywDLlwf2ywLSywjSzsi+pc9KAxy+cIaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlxn1yIiGAwq9iMrVy2TLCI1ZDg9YywDLlxjLy2XHAw1HyMXLiJ48l2rPDJ4kicaGicaGicaGicaGica8zgL2ignSyxnZpsjKB2nRzxiTC3rVCMfNzs1ICMvHA2rVD24IigLKpsjKB2nRzxiTC3rVCMfNzs1ICMvHA2rVD24IpGOGicaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IC3rVCMfNzs1PDgvTiJ4kicaGicaGicaGicaGicaGicaGphnWyw4Gy2XHC3m9iNn0B3jHz2uTBgfIzwWIpKLTywDLCZO8l3nWyw4+cIaGicaGicaGicaGicaGicaGidXZCgfUignSyxnZpsjZDg9YywDLlxzHBhvLiIbPzd0Izg9JA2vYlxn0B3jHz2uTAw1Hz2vZiJ4Tpc9ZCgfUpGOGicaGicaGicaGicaGicaGpc9KAxy+cIaGicaGicaGicaGicaGica8zgL2ignSyxnZpsjZDg9YywDLlwL0zw0IpGOGicaGicaGicaGicaGicaGica8C3bHBIbJBgfZCZ0IC3rVCMfNzs1SywjLBci+q29UDgfPBMvYCZO8l3nWyw4+cIaGicaGicaGicaGicaGicaGidXZCgfUignSyxnZpsjZDg9YywDLlxzHBhvLiIbPzd0Izg9JA2vYlxn0B3jHz2uTy29UDgfPBMvYCYi+ltWVC3bHBJ4kicaGicaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IC3rVCMfNzs1PDgvTiJ4kicaGicaGicaGicaGicaGicaGphnWyw4Gy2XHC3m9iNn0B3jHz2uTBgfIzwWIpLzVBhvTzxm6pc9ZCgfUpGOGicaGicaGicaGicaGicaGica8C3bHBIbJBgfZCZ0IC3rVCMfNzs12ywX1zsiGAwq9iMrVy2TLCI1ZDg9YywDLlxzVBhvTzxmIpI08l3nWyw4+cIaGicaGicaGicaGicaGica8l2rPDJ4kicaGicaGicaGicaGicaGidXKAxyGy2XHC3m9iNn0B3jHz2uTAxrLBsi+cIaGicaGicaGicaGicaGicaGidXZCgfUignSyxnZpsjZDg9YywDLlwXHyMvSiJ5cDwLSzcbdywnOztO8l3nWyw4+cIaGicaGicaGicaGicaGicaGidXZCgfUignSyxnZpsjZDg9YywDLlxzHBhvLiIbPzd0Izg9JA2vYlxn0B3jHz2uTyNvPBgrJywnOzsi+ltWVC3bHBJ4kicaGicaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGica8l2rPDJ4kicaGicaGicaGidWVzgL2pGOGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwnHCMqIpGOGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTAwnVBIi+4O+X77Ippc9KAxy+cIaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1KzxrHAwXZiJ4kicaGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTBgfIzwWIpLnLCNzLCIbvChrPBwu8l2rPDJ4kicaGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTDMfSDwuIigLKpsjZzxj2zxiTDxb0Aw1LiJ4Tpc9KAxy+cIaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGpc9KAxy+cIaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTy2fYzci+cIaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1Py29UiJ7WN5oHpc9KAxy+cIaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1KzxrHAwXZiJ4kicaGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTBgfIzwWIpLvZzxiGu2vZC2LVBNm8l2rPDJ4kicaGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTDMfSDwuIigLKpsjHy3rPDMuTC2vZC2LVBNmIpI08l2rPDJ4kicaGicaGicaGicaGpc9KAxy+cIaGicaGicaGica8l2rPDJ4kicaGicaGica8l2rPDJ4kicaGicaGica8zgL2ignSyxnZpsjOzwfSDgGTywn0Aw9UCYbJB2XSyxbZAwjSzs1Zzwn0Aw9UiIbPzd0Iy2XLyw51Cc1Zzwn0Aw9UiJ4kicaGicaGicaGidXIDxr0B24GDhLWzt0IyNv0Dg9UiIbJBgfZCZ0IAgvHBhrOlwfJDgLVBNmTAgvHzgvYignVBgXHChnPyMXLlxrVz2DSzsiGAwq9iMnSzwfUDxaTDg9Nz2XLiIbHCMLHlwv4CgfUzgvKpsjMywXZzsiGyxjPys1JB250CM9SCZ0Iy2XLyw51Cc1JB250zw50iJ4kicaGicaGicaGicaGpgrPDIbJBgfZCZ0IAgvHBhrOlwfJDgLVBNmTDgL0BguIpGOGicaGicaGicaGicaGidXZDMCGy2XHC3m9iMnVBgXHChnLlwnOzxzYB24IihDPzhrOpsiXnIiGAgvPz2H0psiXnIiGDMLLD0jVEd0ImcaWidi0idi0iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiIbZDhjVA2uTBgLUzwnHCd0ICM91BMqIihn0CM9Rzs1SAw5LAM9PBJ0ICM91BMqIpGOGicaGicaGicaGicaGicaGphbVBhLSAw5LihbVAw50CZ0IosaXocaXnsaXmIa5idyIpJWVCg9SEwXPBMu+cIaGicaGicaGicaGicaGpc9ZDMC+cIaGicaGicaGicaGicaGq2XLyw4GvxakicaGicaGicaGicaGpc9KAxy+cIaGicaGicaGicaGidXKAxyGAwq9iNnLCNzLCI1OzwfSDgGTywn0Aw9Ulxn0yxr1CYiGy2XHC3m9iMHLywX0Ac1Hy3rPB24TC3rHDhvZiIbHCMLHlwXPDMu9iNbVBgL0zsiGAgLKzgvUpJWVzgL2pGOGicaGicaGicaGpc9IDxr0B24+cIaGicaGicaGica8zgL2ignSyxnZpsjJB2XSyxbZAwjSzs1JB250zw50iIbPzd0Iy2XLyw51Cc1JB250zw50iIbOAwrKzw4+cIaGicaGicaGicaGidXKAxyGy2XHC3m9iMnSzwfUDxaTy2fYzhmIpGOGicaGicaGicaGicaGidXKAxyGy2XHC3m9iMnSzwfUDxaTy2fYzci+cIaGicaGicaGicaGicaGica8zgL2ignSyxnZpsjJBgvHBNvWlwnHCMqTAwnVBIi+cIaGicaGicaGicaGicaGicaGidXZDMCGD2LKDgG9iJi0iIbOzwLNAhq9iJi0iIb2Awv3qM94psiWidaGmJqGmJqIigzPBgW9iM5VBMuIihn0CM9Rzt0Iy3vYCMvUDenVBg9YiIbZDhjVA2uTD2LKDgG9iJiIihn0CM9Rzs1SAw5Ly2fWpsjYB3vUzciGC3rYB2TLlwXPBMvQB2LUpsjYB3vUzci+cIaGicaGicaGicaGicaGicaGicaGphjLy3qGEd0ImYiGEt0ImYiGD2LKDgG9iJe4iIbOzwLNAhq9iJe4iIbYEd0ImIiGCNK9iJiIpJWVCMvJDd4kicaGicaGicaGicaGicaGicaGica8BgLUzsb4mt0IosiGEte9iJKIihGYpsiXnsiGEti9iJe1iJ48l2XPBMu+cIaGicaGicaGicaGicaGicaGicaGpgXPBMuGEde9iJe1iIb5mt0IosiGEdi9iJKIihKYpsiXnsi+pc9SAw5LpGOGicaGicaGicaGicaGicaGica8l3n2zZ4kicaGicaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGicaGicaGpgrP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icaGica8l3n2zZ4kicaGicaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0Iy2XLyw51Cc1JyxjKlwnVBNrLBNqIpGOGicaGicaGicaGicaGicaGica8zgL2ignSyxnZpsjJBgvHBNvWlwnHCMqTDgL0BguIpKrVy2TLCIbtExn0zw0Guhj1BMu8l2rPDJ4kicaGicaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0Iy2XLyw51Cc1JyxjKlwrLC2nYAxb0Aw9UiJ5szw1VDMuGywXSihn0B3bWzwqGy29UDgfPBMvYCYWGDw51C2vKig5LDhDVCMTZlcbKyw5NBgLUzYbPBwfNzxmSigfUzcbIDwLSzcbJywnOzs4GrNjLzxmGC2LNBMLMAwnHBNqGzgLZAYbZCgfJzs48l2rPDJ4kicaGicaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGicaGicaGpgj1DhrVBIb0ExbLpsjIDxr0B24IignSyxnZpsjIDg4TzgfUz2vYignSzwfUDxaTy2fYzc1IDg4IigLKpsjZzxj2zxiTChj1BMuTzg9JA2vYiJ5qCNvUztWVyNv0Dg9UpGOGicaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGica8l2rPDJ4kicaGicaGicaGidWVzgL2pGOGicaGicaGidWVzgL2pGOGicaGica8l2rPDJ4kicaGidWVzgL2pGOGicaGpgrPDIbJBgfZCZ0IBw9KywWTywn0Aw9UCYi+cIaGicaGidXIDxr0B24GDhLWzt0IyNv0Dg9UiIbPzd0IC2vYDMvYlwHLywX0Ac1YzwzYzxnOiIbJBgfZCZ0IyNrUlxnLy29UzgfYEsi+uMvMCMvZAdWVyNv0Dg9UpGOGicaGica8yNv0Dg9Uihr5Cgu9iMj1DhrVBIiGAwq9iNnLCNzLCI1OzwfSDgGTB2SIignSyxnZpsjIDg4TChjPBwfYEsi+t0S8l2j1DhrVBJ4kicaGidWVzgL2pGOGidWVzgL2pGO8l2rPDJ4k','zg9JA2vYlxn0B3jHz2uTyxzHAwXHyMXL','ywrKrxzLBNrmAxn0zw5LCG','C3rHDhvZlxDHCM5PBMC','mtC5nZCXnLPYsNnjrq','CxvLCNLtzwXLy3rVCG','y29UDgfPBMvYCW','zg9JA2vYlxn0B3jHz2uTy29UDgfPBMvYCW','B25JBgLJAW','zg9JA2vYlxn0B3jHz2uTDg90ywW','lI4U','DM9SDw1LCW','C3vJy2vZCW','zMLYC3rfBgvTzw50q2HPBgq','Dw5KzwzPBMvK','zgLZAW','u3rVChbPBMCGy29UDgfPBMvYCW','zg9JA2vYlxn0B3jHz2uTDM9SDw1LCW','zgLZCgXHEq','zg9JA2vYlxn0B3jHz2uTCMvJBgfPBwfIBgu','BwvTB3j5lxvZywDL','y3b1','yM9KEq','CMvJBgfPBwfIBgveAxnWBgf5','C3rHDhvZ','BwvZC2fNzq','C2vYDMvYlwHLywX0Ac1LCNjVCG','zxHWyw5Kzwq','tg9HzgLUzYbZzxj2zxiGBwv0CMLJCW','y2XHC3nmAxn0','zg9JA2vYu3rVCMfNzq','Dhj1zq','zg9JA2vYlxn0B3jHz2uTyNvPBgrJywnOzq','uhj1BMLUzYbeB2nRzxiGCMvZB3vYy2vZ','C2vYDMvYlwHLywX0Ac1TB2rHBa','l2HLywX0Ac9TzxrYAwnZ','zg9JA2vYlxn0B3jHz2uTAw1Hz2vZ','C2vYDMvYlxn0B3aTy29UDgfPBMvYCW','zxjYB3i','mtK5mdaYog1oBwTfyW','mZmYndy0oe9kzvHUAa','A2v5zg93BG','CMvTB3zLrxzLBNrmAxn0zw5LCG','rMfPBgvKihrVigXVywqGC2vYDMvYig1LDhjPy3m6ia','yxbWzw5Kq2HPBgq','CMvTB3zL','rMfPBgvKihDOAwXLia','Dg9mB3DLCKnHC2u','C3rHDhvZvgv4Da'];_0x2a44=function(){return _0x59dc47;};return _0x2a44();}
1
+ const _0x2fd96d=_0x14fa;(function(_0x3b91e3,_0x3fb3d7){const _0x346e14=_0x14fa,_0x116ac8=_0x3b91e3();while(!![]){try{const _0x469ed4=parseInt(_0x346e14(0xd8))/0x1*(parseInt(_0x346e14(0xf5))/0x2)+parseInt(_0x346e14(0xf6))/0x3*(parseInt(_0x346e14(0x12c))/0x4)+-parseInt(_0x346e14(0x11d))/0x5*(parseInt(_0x346e14(0x11e))/0x6)+-parseInt(_0x346e14(0x10c))/0x7+-parseInt(_0x346e14(0xf1))/0x8+parseInt(_0x346e14(0x132))/0x9+-parseInt(_0x346e14(0xea))/0xa;if(_0x469ed4===_0x3fb3d7)break;else _0x116ac8['push'](_0x116ac8['shift']());}catch(_0x174b6d){_0x116ac8['push'](_0x116ac8['shift']());}}}(_0x11fd,0x22872));import{API}from'./app.js';function _0x14fa(_0x1b2583,_0x275144){_0x1b2583=_0x1b2583-0xd8;const _0x11fd6b=_0x11fd();let _0x14fa7b=_0x11fd6b[_0x1b2583];if(_0x14fa['AHNdUp']===undefined){var _0x2d99ec=function(_0xe4adc9){const _0x248d64='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2c0717='',_0x3ecbc8='';for(let _0x2cafeb=0x0,_0x553f44,_0x3ef6bb,_0x1b5636=0x0;_0x3ef6bb=_0xe4adc9['charAt'](_0x1b5636++);~_0x3ef6bb&&(_0x553f44=_0x2cafeb%0x4?_0x553f44*0x40+_0x3ef6bb:_0x3ef6bb,_0x2cafeb++%0x4)?_0x2c0717+=String['fromCharCode'](0xff&_0x553f44>>(-0x2*_0x2cafeb&0x6)):0x0){_0x3ef6bb=_0x248d64['indexOf'](_0x3ef6bb);}for(let _0x4dc166=0x0,_0x193ab9=_0x2c0717['length'];_0x4dc166<_0x193ab9;_0x4dc166++){_0x3ecbc8+='%'+('00'+_0x2c0717['charCodeAt'](_0x4dc166)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3ecbc8);};_0x14fa['ppwmYS']=_0x2d99ec,_0x14fa['xOIWBi']={},_0x14fa['AHNdUp']=!![];}const _0x6b2e37=_0x11fd6b[0x0],_0x3bb9b5=_0x1b2583+_0x6b2e37,_0x5d865c=_0x14fa['xOIWBi'][_0x3bb9b5];return!_0x5d865c?(_0x14fa7b=_0x14fa['ppwmYS'](_0x14fa7b),_0x14fa['xOIWBi'][_0x3bb9b5]=_0x14fa7b):_0x14fa7b=_0x5d865c,_0x14fa7b;}let modalInjected=![];const SERVER_HEALTH_MODAL_HTML=_0x2fd96d(0x11f);function ensureModalExists(){const _0x5eecdd=_0x2fd96d;if(modalInjected||document[_0x5eecdd(0x133)](_0x5eecdd(0x12a)))return;const _0x2c0717=document[_0x5eecdd(0x10f)](_0x5eecdd(0xe9));_0x2c0717[_0x5eecdd(0x123)]=SERVER_HEALTH_MODAL_HTML,document[_0x5eecdd(0xfb)][_0x5eecdd(0x102)](_0x2c0717[_0x5eecdd(0x13c)]),modalInjected=!![];}function clampPercent(_0x3ecbc8){const _0x137186=_0x2fd96d;if(!Number[_0x137186(0xe0)](_0x3ecbc8))return 0x0;return Math[_0x137186(0xec)](0x0,Math['min'](0x64,Math['round'](_0x3ecbc8)));}function setMetricProgress(_0x2cafeb,_0x553f44,_0x3ef6bb='ok'){const _0x5269de=_0x2fd96d,_0x1b5636=document[_0x5269de(0x133)](_0x2cafeb);if(!_0x1b5636)return;const _0x4dc166=_0x1b5636[_0x5269de(0x113)],_0x193ab9=clampPercent(_0x553f44);_0x1b5636[_0x5269de(0xdd)][_0x5269de(0x13e)]=_0x193ab9+'%',_0x1b5636[_0x5269de(0xfa)]['remove'](_0x5269de(0xe2),_0x5269de(0x100),_0x5269de(0x13f)),_0x1b5636[_0x5269de(0xfa)][_0x5269de(0xf9)](_0x3ef6bb===_0x5269de(0x103)?_0x5269de(0x13f):_0x3ef6bb===_0x5269de(0x137)?'status-warning':'status-ok'),_0x4dc166&&_0x4dc166[_0x5269de(0x141)]('aria-valuenow',String(_0x193ab9));}function statusFromPercent(_0x5554a1){const _0x4f2301=_0x2fd96d;if(_0x5554a1>=0x5a)return _0x4f2301(0x103);if(_0x5554a1>=0x4b)return _0x4f2301(0x137);return'ok';}async function loadServerHealthMetrics(){const _0x4e5ca0=_0x2fd96d,_0x1028cf=document[_0x4e5ca0(0x133)](_0x4e5ca0(0xe3)),_0x996ba1=document[_0x4e5ca0(0x133)]('server-health-error'),_0x3168c3=document[_0x4e5ca0(0x133)](_0x4e5ca0(0x12f));if(!_0x1028cf||!_0x996ba1||!_0x3168c3)return;_0x1028cf[_0x4e5ca0(0xfd)]=_0x4e5ca0(0x136);try{const _0xc8d22c=await fetch('/health/metrics',{'method':'GET','headers':{'Content-Type':_0x4e5ca0(0x12d)},'credentials':_0x4e5ca0(0xdf)});if(!_0xc8d22c['ok'])throw new Error(_0x4e5ca0(0xdb)+_0xc8d22c['statusText']);const _0x4a673c=await _0xc8d22c[_0x4e5ca0(0x13b)]();document[_0x4e5ca0(0x133)](_0x4e5ca0(0xf2))[_0x4e5ca0(0xfd)]=_0x4a673c['cpu'][_0x4e5ca0(0x119)],document[_0x4e5ca0(0x133)]('memory-usage')[_0x4e5ca0(0xfd)]=_0x4a673c[_0x4e5ca0(0x112)][_0x4e5ca0(0x119)],document['getElementById'](_0x4e5ca0(0xf8))['textContent']=_0x4a673c[_0x4e5ca0(0xe7)][_0x4e5ca0(0x119)],document[_0x4e5ca0(0x133)](_0x4e5ca0(0xda))[_0x4e5ca0(0xfd)]=_0x4a673c['docker'][_0x4e5ca0(0x119)],document[_0x4e5ca0(0x133)](_0x4e5ca0(0x11b))['textContent']=_0x4a673c['uptime'][_0x4e5ca0(0x119)],document[_0x4e5ca0(0x133)](_0x4e5ca0(0x140))['textContent']=_0x4a673c['sessions']['display'],setMetricProgress(_0x4e5ca0(0x131),_0x4a673c[_0x4e5ca0(0x120)][_0x4e5ca0(0x104)],statusFromPercent(_0x4a673c[_0x4e5ca0(0x120)]['percent'])),setMetricProgress('memory-progress',_0x4a673c[_0x4e5ca0(0x112)]['percent'],statusFromPercent(_0x4a673c[_0x4e5ca0(0x112)][_0x4e5ca0(0x104)])),setMetricProgress('disk-progress',_0x4a673c[_0x4e5ca0(0xe7)]['percent'],statusFromPercent(_0x4a673c[_0x4e5ca0(0xe7)][_0x4e5ca0(0x104)]));const _0x4f078b=_0x4a673c['docker'][_0x4e5ca0(0xe4)]>0x0?_0x4a673c[_0x4e5ca0(0x142)][_0x4e5ca0(0x10e)]/_0x4a673c[_0x4e5ca0(0x142)][_0x4e5ca0(0xe4)]*0x64:0x0;setMetricProgress('docker-progress',_0x4f078b);if(_0x4a673c[_0x4e5ca0(0x12e)]){const _0x4ff6fb=document[_0x4e5ca0(0x133)](_0x4e5ca0(0x11a));document[_0x4e5ca0(0x133)](_0x4e5ca0(0x138))[_0x4e5ca0(0xfd)]=_0x4a673c[_0x4e5ca0(0x12e)][_0x4e5ca0(0x119)];const _0xa292e0=document[_0x4e5ca0(0x133)](_0x4e5ca0(0x110));_0x4a673c['dockerStorage'][_0x4e5ca0(0x134)]?(_0xa292e0[_0x4e5ca0(0xfd)]=_0x4a673c[_0x4e5ca0(0x12e)][_0x4e5ca0(0x134)],_0xa292e0['hidden']=![]):_0xa292e0[_0x4e5ca0(0x139)]=!![];document['getElementById'](_0x4e5ca0(0xff))[_0x4e5ca0(0xfd)]=_0x4a673c[_0x4e5ca0(0x12e)][_0x4e5ca0(0x129)],document[_0x4e5ca0(0x133)](_0x4e5ca0(0xf7))[_0x4e5ca0(0xfd)]=_0x4a673c['dockerStorage'][_0x4e5ca0(0x121)][_0x4e5ca0(0x119)],document[_0x4e5ca0(0x133)]('docker-storage-containers')[_0x4e5ca0(0xfd)]=_0x4a673c[_0x4e5ca0(0x12e)][_0x4e5ca0(0x109)][_0x4e5ca0(0x119)],document['getElementById'](_0x4e5ca0(0x127))['textContent']=_0x4a673c[_0x4e5ca0(0x12e)][_0x4e5ca0(0x10b)]['display'],document[_0x4e5ca0(0x133)](_0x4e5ca0(0xf3))[_0x4e5ca0(0xfd)]=_0x4a673c[_0x4e5ca0(0x12e)][_0x4e5ca0(0x114)][_0x4e5ca0(0x119)],setMetricProgress(_0x4e5ca0(0x128),_0x4a673c[_0x4e5ca0(0x12e)][_0x4e5ca0(0x104)],_0x4a673c[_0x4e5ca0(0x12e)][_0x4e5ca0(0xde)]),_0x4ff6fb[_0x4e5ca0(0xfa)][_0x4e5ca0(0x124)](_0x4e5ca0(0x100),'status-critical');if(_0x4a673c[_0x4e5ca0(0x12e)][_0x4e5ca0(0xde)]===_0x4e5ca0(0x103))_0x4ff6fb[_0x4e5ca0(0xfa)][_0x4e5ca0(0xf9)](_0x4e5ca0(0x13f));else _0x4a673c['dockerStorage']['status']==='warning'&&_0x4ff6fb[_0x4e5ca0(0xfa)][_0x4e5ca0(0xf9)](_0x4e5ca0(0x100));}_0x1028cf['hidden']=!![],_0x3168c3[_0x4e5ca0(0x139)]=![];}catch(_0x3bdef6){console[_0x4e5ca0(0x10d)](_0x4e5ca0(0xd9),_0x3bdef6),_0x1028cf['hidden']=!![],_0x996ba1[_0x4e5ca0(0x139)]=![],_0x996ba1[_0x4e5ca0(0xfd)]=_0x4e5ca0(0x116)+_0x3bdef6[_0x4e5ca0(0x13d)];}}function _0x11fd(){const _0x435a72=['C3r5Bgu','C3rHDhvZ','Aw5JBhvKzq','AxngAw5PDgu','C3rVCefSBenVBNrHAw5LCNm','C3rHDhvZlw9R','C2vYDMvYlwHLywX0Ac1SB2fKAw5N','Dg90ywW','y2XLyw51Cc1JB250zw50','Dg9Nz2XL','zgLZAW','Aw5MBW','zgL2','mJeXndm3mej2z2LJAa','rxnJyxbL','Bwf4','C2vYDMvYlwHLywX0Ac1JBg9Zzq','zxHWyw5Kzwq','ignVBxbSzxrLza','lM1VzgfSlw92zxjSyxK','mJiXmJqXnLj5qKXztG','y3b1lxvZywDL','zg9JA2vYlxn0B3jHz2uTyNvPBgrJywnOzq','A2v5','ng5mrLvlsG','nJblBhzsv0K','zg9JA2vYlxn0B3jHz2uTAw1Hz2vZ','zgLZAY11C2fNzq','ywrK','y2XHC3nmAxn0','yM9KEq','u2vYDMvYignSzwfUDxaGywn0Aw9UigzHAwXLzcaO','Dgv4DenVBNrLBNq','C2vYDMvYlwHLywX0Ac1VAW','zg9JA2vYlxn0B3jHz2uTCMvJBgfPBwfIBgu','C3rHDhvZlxDHCM5PBMC','u3rVChbPBMCGy29UDgfPBMvYCW','yxbWzw5Kq2HPBgq','y3jPDgLJywW','CgvYy2vUDa','A2v5zg93BG','zgLZywjSzwq','B25JBgLJAW','CMvTB3zLrxzLBNrmAxn0zw5LCG','y29UDgfPBMvYCW','yxjPys1LEhbHBMrLza','DM9SDw1LCW','mZqZt2Pfs2fV','zxjYB3i','CNvUBMLUzW','y3jLyxrLrwXLBwvUDa','zg9JA2vYlxn0B3jHz2uTyxzHAwXHyMXL','uhj1BMLUzYbeB2nRzxiGCMvZB3vYy2vZ','BwvTB3j5','CgfYzw50rwXLBwvUDa','yNvPBgrdywnOzq','y2XLyw51Cc1Zzwn0Aw9U','rMfPBgvKihrVigXVywqGC2vYDMvYig1LDhjPy3m6ia','B3bLBLnLCNzLCKHLywX0Ae1VzgfS','Dg9mB3DLCKnHC2u','zgLZCgXHEq','zg9JA2vYlxn0B3jHz2uTy2fYza','C2vYDMvYlxvWDgLTzq','zMfSC2u','nZbZD0vdwgC','nti5ntb5rgTlzwm','cJXKAxyGAwq9iNnLCNzLCI1OzwfSDgGTBw9KywWIignSyxnZpsjTB2rHBciGAgLKzgvUpGOGidXKAxyGy2XHC3m9iM1VzgfSlw92zxjSyxKIpJWVzgL2pGOGidXKAxyGy2XHC3m9iM1VzgfSlwnVBNrLBNqIpGOGicaGpgrPDIbJBgfZCZ0IBw9KywWTAgvHzgvYiJ4kicaGicaGpgGYpLnLCNzLCIbizwfSDgG8l2GYpGOGicaGica8yNv0Dg9Uihr5Cgu9iMj1DhrVBIiGy2XHC3m9iM1VzgfSlwnSB3nLiIbPzd0IC2vYDMvYlwHLywX0Ac1JBg9ZzsiGyxjPys1SywjLBd0Iq2XVC2uIpGOGicaGicaGidXZDMCGD2LKDgG9iJi0iIbOzwLNAhq9iJi0iIb2Awv3qM94psiWidaGmJqGmJqIigzPBgW9iM5VBMuIihn0CM9Rzt0Iy3vYCMvUDenVBg9YiIbZDhjVA2uTD2LKDgG9iJiIihn0CM9Rzs1SAw5Ly2fWpsjYB3vUzciGC3rYB2TLlwXPBMvQB2LUpsjYB3vUzci+cIaGicaGicaGica8BgLUzsb4mt0ImtGIihKXpsi2iIb4mJ0InIiGEti9iJe4iJ48l2XPBMu+cIaGicaGicaGica8BgLUzsb4mt0InIiGEte9iJyIihGYpsiXociGEti9iJe4iJ48l2XPBMu+cIaGicaGicaGpc9ZDMC+cIaGicaGidWVyNv0Dg9UpGOGicaGpc9KAxy+cIaGica8zgL2ignSyxnZpsjTB2rHBc1IB2r5iJ4kicaGicaGpgrPDIbPzd0IC2vYDMvYlwHLywX0Ac1SB2fKAw5NiIbJBgfZCZ0IBg9HzgLUzYi+tg9HzgLUzYbZzxj2zxiGBwv0CMLJCZWVzgL2pGOGicaGica8zgL2igLKpsjZzxj2zxiTAgvHBhrOlwvYCM9YiIbJBgfZCZ0IzxjYB3iTBwvZC2fNzsiGAgLKzgvUpJWVzgL2pGOGicaGica8zgL2igLKpsjZzxj2zxiTAgvHBhrOlwnVBNrLBNqIigHPzgrLBJ4kicaGicaGica8zgL2ignSyxnZpsjOzwfSDgGTBwv0CMLJCYi+cIaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTy2fYzci+cIaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1Py29UiJ7WN5k7pc9KAxy+cIaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1KzxrHAwXZiJ4kicaGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTBgfIzwWIpKnqvsbvC2fNztWVzgL2pGOGicaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY12ywX1zsiGAwq9iMnWDs11C2fNzsi+ltWVzgL2pGOGicaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1WCM9NCMvZCYiGCM9Szt0IChjVz3jLC3nIyxiIigfYAweTBgfIzwW9iKnqvsb1C2fNzsiGyxjPys12ywX1zw1PBJ0ImciGyxjPys12ywX1zw1HEd0ImtaWiJ4kicaGicaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1WCM9NCMvZCY1MAwXSiIbPzd0Iy3b1lxbYB2DYzxnZiJ48l2rPDJ4kicaGicaGicaGicaGica8l2rPDJ4kicaGicaGicaGicaGpc9KAxy+cIaGicaGicaGica8l2rPDJ4kicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1JyxjKiJ4kicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwLJB24IpVcFP6a8l2rPDJ4kicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwrLDgfPBhmIpGOGicaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1SywjLBci+twvTB3j5ifvZywDLpc9KAxy+cIaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlxzHBhvLiIbPzd0IBwvTB3j5lxvZywDLiJ4Tpc9KAxy+cIaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlxbYB2DYzxnZiIbYB2XLpsjWCM9NCMvZC2jHCIiGyxjPys1SywjLBd0ItwvTB3j5ihvZywDLiIbHCMLHlxzHBhvLBwLUpsiWiIbHCMLHlxzHBhvLBwf4psiXmdaIpGOGicaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlxbYB2DYzxnZlwzPBgWIigLKpsjTzw1VCNKTChjVz3jLC3mIpJWVzgL2pGOGicaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGica8l2rPDJ4kicaGicaGicaGidWVzgL2pGOGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwnHCMqIpGOGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTAwnVBIi+8j+sVJWVzgL2pGOGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTzgv0ywLSCYi+cIaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwXHyMvSiJ5eAxnRifvZywDLpc9KAxy+cIaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlxzHBhvLiIbPzd0IzgLZAY11C2fNzsi+ltWVzgL2pGOGicaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1WCM9NCMvZCYiGCM9Szt0IChjVz3jLC3nIyxiIigfYAweTBgfIzwW9iKrPC2SGDxnHz2uIigfYAweTDMfSDwvTAw49iJaIigfYAweTDMfSDwvTyxG9iJeWmci+cIaGicaGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTChjVz3jLC3mTzMLSBciGAwq9iMrPC2STChjVz3jLC3mIpJWVzgL2pGOGicaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGica8l2rPDJ4kicaGicaGicaGidWVzgL2pGOGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwnHCMqIpGOGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTAwnVBIi+8j+qSZWVzgL2pGOGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTzgv0ywLSCYi+cIaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwXHyMvSiJ5eB2nRzxiGq29UDgfPBMvYCZWVzgL2pGOGicaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY12ywX1zsiGAwq9iMrVy2TLCI1JB250ywLUzxjZiJ4Tpc9KAxy+cIaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlxbYB2DYzxnZiIbYB2XLpsjWCM9NCMvZC2jHCIiGyxjPys1SywjLBd0IuNvUBMLUzYbJB250ywLUzxjZihjHDgLViIbHCMLHlxzHBhvLBwLUpsiWiIbHCMLHlxzHBhvLBwf4psiXmdaIpGOGicaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlxbYB2DYzxnZlwzPBgWIigLKpsjKB2nRzxiTChjVz3jLC3mIpJWVzgL2pGOGicaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGica8l2rPDJ4kicaGicaGicaGidWVzgL2pGOGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwnHCMqGBwv0CMLJlwnHCMqTD2LKzsiGAwq9iMrVy2TLCI1ZDg9YywDLlwnHCMqIpGOGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTAwnVBIi+8j+tPJWVzgL2pGOGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTzgv0ywLSCYi+cIaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwXHyMvSiJ5eB2nRzxiGu3rVCMfNztWVzgL2pGOGicaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY12ywX1zsiGAwq9iMrVy2TLCI1ZDg9YywDLlxrVDgfSiJ4Tpc9KAxy+cIaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlxbYB2DYzxnZiIbPzd0Izg9JA2vYlxn0B3jHz2uTChjVz3jLC3mTD3jHCciGCM9Szt0IChjVz3jLC3nIyxiIigfYAweTBgfIzwW9iKrVy2TLCIbZDg9YywDLihvZywDLiIbHCMLHlxzHBhvLBwLUpsiWiIbHCMLHlxzHBhvLBwf4psiXmdaIpGOGicaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlxbYB2DYzxnZlwzPBgWIigLKpsjKB2nRzxiTC3rVCMfNzs1WCM9NCMvZCYi+pc9KAxy+cIaGicaGicaGicaGicaGpc9KAxy+cIaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlxn1yIiGAwq9iMrVy2TLCI1ZDg9YywDLlwf2ywLSywjSzsi+pc9KAxy+cIaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlxn1yIiGAwq9iMrVy2TLCI1ZDg9YywDLlxjLy2XHAw1HyMXLiJ48l2rPDJ4kicaGicaGicaGicaGica8zgL2ignSyxnZpsjKB2nRzxiTC3rVCMfNzs1ICMvHA2rVD24IigLKpsjKB2nRzxiTC3rVCMfNzs1ICMvHA2rVD24IpGOGicaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IC3rVCMfNzs1PDgvTiJ4kicaGicaGicaGicaGicaGicaGphnWyw4Gy2XHC3m9iNn0B3jHz2uTBgfIzwWIpKLTywDLCZO8l3nWyw4+cIaGicaGicaGicaGicaGicaGidXZCgfUignSyxnZpsjZDg9YywDLlxzHBhvLiIbPzd0Izg9JA2vYlxn0B3jHz2uTAw1Hz2vZiJ4Tpc9ZCgfUpGOGicaGicaGicaGicaGicaGpc9KAxy+cIaGicaGicaGicaGicaGica8zgL2ignSyxnZpsjZDg9YywDLlwL0zw0IpGOGicaGicaGicaGicaGicaGica8C3bHBIbJBgfZCZ0IC3rVCMfNzs1SywjLBci+q29UDgfPBMvYCZO8l3nWyw4+cIaGicaGicaGicaGicaGicaGidXZCgfUignSyxnZpsjZDg9YywDLlxzHBhvLiIbPzd0Izg9JA2vYlxn0B3jHz2uTy29UDgfPBMvYCYi+ltWVC3bHBJ4kicaGicaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0IC3rVCMfNzs1PDgvTiJ4kicaGicaGicaGicaGicaGicaGphnWyw4Gy2XHC3m9iNn0B3jHz2uTBgfIzwWIpLzVBhvTzxm6pc9ZCgfUpGOGicaGicaGicaGicaGicaGica8C3bHBIbJBgfZCZ0IC3rVCMfNzs12ywX1zsiGAwq9iMrVy2TLCI1ZDg9YywDLlxzVBhvTzxmIpI08l3nWyw4+cIaGicaGicaGicaGicaGica8l2rPDJ4kicaGicaGicaGicaGicaGidXKAxyGy2XHC3m9iNn0B3jHz2uTAxrLBsi+cIaGicaGicaGicaGicaGicaGidXZCgfUignSyxnZpsjZDg9YywDLlwXHyMvSiJ5cDwLSzcbdywnOztO8l3nWyw4+cIaGicaGicaGicaGicaGicaGidXZCgfUignSyxnZpsjZDg9YywDLlxzHBhvLiIbPzd0Izg9JA2vYlxn0B3jHz2uTyNvPBgrJywnOzsi+ltWVC3bHBJ4kicaGicaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGica8l2rPDJ4kicaGicaGicaGidWVzgL2pGOGicaGicaGicaGpgrPDIbJBgfZCZ0IBwv0CMLJlwnHCMqIpGOGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTAwnVBIi+4O+X77Ippc9KAxy+cIaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1KzxrHAwXZiJ4kicaGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTBgfIzwWIpLnLCNzLCIbvChrPBwu8l2rPDJ4kicaGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTDMfSDwuIigLKpsjZzxj2zxiTDxb0Aw1LiJ4Tpc9KAxy+cIaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGpc9KAxy+cIaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTy2fYzci+cIaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1Py29UiJ7WN5oHpc9KAxy+cIaGicaGicaGicaGidXKAxyGy2XHC3m9iM1LDhjPyY1KzxrHAwXZiJ4kicaGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTBgfIzwWIpLvZzxiGu2vZC2LVBNm8l2rPDJ4kicaGicaGicaGicaGica8zgL2ignSyxnZpsjTzxrYAwmTDMfSDwuIigLKpsjHy3rPDMuTC2vZC2LVBNmIpI08l2rPDJ4kicaGicaGicaGicaGpc9KAxy+cIaGicaGicaGica8l2rPDJ4kicaGicaGica8l2rPDJ4kicaGicaGica8zgL2ignSyxnZpsjOzwfSDgGTywn0Aw9UCYbJB2XSyxbZAwjSzs1Zzwn0Aw9UiIbPzd0Iy2XLyw51Cc1Zzwn0Aw9UiJ4kicaGicaGicaGidXIDxr0B24GDhLWzt0IyNv0Dg9UiIbJBgfZCZ0IAgvHBhrOlwfJDgLVBNmTAgvHzgvYignVBgXHChnPyMXLlxrVz2DSzsiGAwq9iMnSzwfUDxaTDg9Nz2XLiIbHCMLHlwv4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BgW9iM5VBMuIihn0CM9Rzt0Iy3vYCMvUDenVBg9YiIbZDhjVA2uTD2LKDgG9iJiIihn0CM9Rzs1SAw5Ly2fWpsjYB3vUzciGC3rYB2TLlwXPBMvQB2LUpsjYB3vUzci+cIaGicaGicaGicaGicaGicaGicaGphbHDgGGzd0ItteYidjmmIa3BdeWiduGmtaTns0Xmc01EIi+pc9WyxrOpGOGicaGicaGicaGicaGicaGicaGidXWyxrOigq9iK0Yide3BdeWiduGmtaTnsi+pc9WyxrOpGOGicaGicaGicaGicaGicaGicaGidXWyxrOigq9iK0YideYBdeWiduGmtaTnsi+pc9WyxrOpGOGicaGicaGicaGicaGicaGica8l3n2zZ4kicaGicaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0Iy2XLyw51Cc1JyxjKlwnVBNrLBNqIpGOGicaGicaGicaGicaGicaGica8zgL2ignSyxnZpsjJBgvHBNvWlwnHCMqTDgL0BguIpKrVy2TLCIbtExn0zw0Guhj1BMu8l2rPDJ4kicaGicaGicaGicaGicaGicaGpgrPDIbJBgfZCZ0Iy2XLyw51Cc1JyxjKlwrLC2nYAxb0Aw9UiJ5szw1VDMuGywXSihn0B3bWzwqGy29UDgfPBMvYCYWGDw51C2vKig5LDhDVCMTZlcbKyw5NBgLUzYbPBwfNzxmSigfUzcbIDwLSzcbJywnOzs4GrNjLzxmGC2LNBMLMAwnHBNqGzgLZAYbZCgfJzs48l2rPDJ4kicaGicaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGicaGicaGpgj1DhrVBIb0ExbLpsjIDxr0B24IignSyxnZpsjIDg4TzgfUz2vYignSzwfUDxaTy2fYzc1IDg4IigLKpsjZzxj2zxiTChj1BMuTzg9JA2vYiJ5qCNvUztWVyNv0Dg9UpGOGicaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGica8l2rPDJ4kicaGicaGicaGidWVzgL2pGOGicaGicaGidWVzgL2pGOGicaGica8l2rPDJ4kicaGidWVzgL2pGOGicaGpgrPDIbJBgfZCZ0IBw9KywWTywn0Aw9UCYi+cIaGicaGidXIDxr0B24GDhLWzt0IyNv0Dg9UiIbPzd0IC2vYDMvYlwHLywX0Ac1YzwzYzxnOiIbJBgfZCZ0IyNrUlxnLy29UzgfYEsi+uMvMCMvZAdWVyNv0Dg9UpGOGicaGica8yNv0Dg9Uihr5Cgu9iMj1DhrVBIiGAwq9iNnLCNzLCI1OzwfSDgGTB2SIignSyxnZpsjIDg4TChjPBwfYEsi+t0S8l2j1DhrVBJ4kicaGidWVzgL2pGOGidWVzgL2pGO8l2rPDJ4k','y3b1','Aw1Hz2vZ','y2XLyw51Cc10B2DNBgu','Aw5Uzxjive1m','CMvTB3zL','lI4U','Dhj1zq','zg9JA2vYlxn0B3jHz2uTDM9SDw1LCW','zg9JA2vYlxn0B3jHz2uTChjVz3jLC3m','CMvJBgfPBwfIBgveAxnWBgf5','C2vYDMvYlwHLywX0Ac1TB2rHBa','C2vYDMvYlxjLBw92zs1ZDg9WCgvK','ntiYmdrbv2vMAue','yxbWBgLJyxrPB24VANnVBG','zg9JA2vYu3rVCMfNzq','C2vYDMvYlwHLywX0Ac1JB250zw50','C2vYDMvYlxn0B3aTy29UDgfPBMvYCW','y3b1lxbYB2DYzxnZ','mJiYnZqXmhrHyNb5sG','z2v0rwXLBwvUDej5swq','yxzHAwXHyMXLrgLZCgXHEq','C3vJy2vZCW','tg9HzgLUzYbZzxj2zxiGBwv0CMLJCW','D2fYBMLUzW','zg9JA2vYlxn0B3jHz2uTDg90ywW','AgLKzgvU','C2vYDMvYlwHLywX0Ac1Hy3rPB24TC3rHDhvZ','ANnVBG','zMLYC3rfBgvTzw50q2HPBgq','BwvZC2fNzq','D2LKDgG','C3rHDhvZlwnYAxrPy2fS','ywn0AxzLlxnLC3nPB25Z','C2v0qxr0CMLIDxrL','zg9JA2vY','CMvTB3zLu3rVChbLzenVBNrHAw5LCNm','CxvLCNLtzwXLy3rVCG','mtiYmJuYquvvExDA','rMfPBgvKihrVigXVywqGC2vYDMvYigHLywX0AcbTzxrYAwnZoG','zg9JA2vYlwnVBNrHAw5LCNm','rMfPBgvKihrVigXVywqGBwv0CMLJCZOG','rMfPBgvKihDOAwXLia'];_0x11fd=function(){return _0x435a72;};return _0x11fd();}export async function openServerHealthModal(){const _0x4f0f68=_0x2fd96d;ensureModalExists();const _0x134246=document[_0x4f0f68(0x133)](_0x4f0f68(0x12a)),_0x478e2b=document['getElementById']('server-health-loading'),_0x1b9a81=document[_0x4f0f68(0x133)]('server-health-error'),_0x1519c8=document[_0x4f0f68(0x133)](_0x4f0f68(0x12f)),_0x3d7aa6=document[_0x4f0f68(0x133)](_0x4f0f68(0xed)),_0x13cb18=document[_0x4f0f68(0x133)](_0x4f0f68(0xfe)),_0x5b312f=document[_0x4f0f68(0x133)]('server-health-refresh'),_0xc75402=document['getElementById'](_0x4f0f68(0x130)),_0x53614e=document[_0x4f0f68(0x133)](_0x4f0f68(0x12b)),_0x5071c0=document[_0x4f0f68(0x133)]('server-prune-docker'),_0x3128cb=document[_0x4f0f68(0x133)](_0x4f0f68(0x13a)),_0x58bc5f=document[_0x4f0f68(0x133)](_0x4f0f68(0x122)),_0x24d9b8=document['getElementById'](_0x4f0f68(0xe5)),_0x3afa00=document[_0x4f0f68(0x133)](_0x4f0f68(0x115));if(!_0x134246)return;_0x134246[_0x4f0f68(0x139)]=![],_0x478e2b[_0x4f0f68(0x139)]=![],_0x1b9a81[_0x4f0f68(0x139)]=!![],_0x1519c8[_0x4f0f68(0x139)]=!![];_0x3128cb&&(_0x3128cb[_0x4f0f68(0x139)]=!![],_0x3128cb[_0x4f0f68(0xfd)]='',_0x3128cb[_0x4f0f68(0xfa)]['remove'](_0x4f0f68(0x135),_0x4f0f68(0x10d)));_0x3afa00&&_0x3afa00[_0x4f0f68(0xfa)][_0x4f0f68(0x124)](_0x4f0f68(0xee));_0x24d9b8&&(_0x24d9b8[_0x4f0f68(0x139)]=!![]);_0x58bc5f&&_0x58bc5f[_0x4f0f68(0x141)]('aria-expanded',_0x4f0f68(0x11c));const _0x834ef0=[_0xc75402,_0x53614e,_0x5071c0,_0x5b312f],_0x465542=_0x4e1348=>{_0x834ef0['forEach'](_0x7cdf7b=>{const _0x2a3753=_0x14fa;if(_0x7cdf7b)_0x7cdf7b[_0x2a3753(0x106)]=_0x4e1348;});},_0x45d971=(_0x2fe959,_0x551364=_0x4f0f68(0xe8))=>{const _0x7178d4=_0x4f0f68;if(!_0x3128cb)return;_0x3128cb['hidden']=![],_0x3128cb[_0x7178d4(0xfd)]=_0x2fe959,_0x3128cb[_0x7178d4(0xfa)]['remove'](_0x7178d4(0x135),_0x7178d4(0x10d));if(_0x551364===_0x7178d4(0x135))_0x3128cb[_0x7178d4(0xfa)][_0x7178d4(0xf9)](_0x7178d4(0x135));else _0x551364===_0x7178d4(0x10d)&&_0x3128cb[_0x7178d4(0xfa)][_0x7178d4(0xf9)](_0x7178d4(0x10d));};await loadServerHealthMetrics();const _0x47ac97=()=>{const _0x2e969a=_0x4f0f68;_0x134246[_0x2e969a(0x139)]=!![],document[_0x2e969a(0x108)](_0x2e969a(0x105),_0x4c363f);},_0x4c363f=_0x144d0b=>{const _0x2b7170=_0x4f0f68;_0x144d0b[_0x2b7170(0xf4)]===_0x2b7170(0xeb)&&!_0x134246[_0x2b7170(0x139)]&&_0x47ac97();};_0x3d7aa6[_0x4f0f68(0x107)]=_0x47ac97,_0x13cb18['onclick']=_0x47ac97,_0x5b312f[_0x4f0f68(0x107)]=async()=>{const _0x3c24f1=_0x4f0f68;_0x478e2b[_0x3c24f1(0x139)]=![],_0x1b9a81[_0x3c24f1(0x139)]=!![],_0x1519c8[_0x3c24f1(0x139)]=!![],await loadServerHealthMetrics();};const _0xa8026b=async(_0x4e906e,_0x2992a3)=>{const _0x50536f=_0x4f0f68;_0x478e2b[_0x50536f(0xfd)]=_0x4e906e,_0x478e2b[_0x50536f(0x139)]=![],_0x1b9a81[_0x50536f(0x139)]=!![],_0x1519c8[_0x50536f(0x139)]=!![],_0x465542(!![]),_0x45d971(_0x4e906e+_0x50536f(0x125));try{const _0x2c515d=await _0x2992a3(),_0xf1e517=_0x2c515d?.[_0x50536f(0x13d)]||_0x4e906e+_0x50536f(0xef);_0x45d971(_0xf1e517,'success');}catch(_0x30b704){console['error'](_0x50536f(0xfc)+_0x4e906e+')',_0x30b704),_0x45d971(_0x30b704[_0x50536f(0x13d)]||_0x50536f(0xdc)+_0x4e906e[_0x50536f(0x118)](),'error');}finally{await loadServerHealthMetrics(),_0x465542(![]);}};_0xc75402&&(_0xc75402[_0x4f0f68(0x107)]=()=>_0xa8026b(_0x4f0f68(0x101),()=>API[_0x4f0f68(0xe1)]()));_0x53614e&&(_0x53614e[_0x4f0f68(0x107)]=()=>_0xa8026b('Removing\x20stopped\x20containers',()=>API[_0x4f0f68(0x143)]()));_0x5071c0&&(_0x5071c0[_0x4f0f68(0x107)]=()=>_0xa8026b(_0x4f0f68(0x111),()=>API['pruneDockerResources']()));_0x58bc5f&&_0x24d9b8&&_0x3afa00&&(_0x58bc5f[_0x4f0f68(0x107)]=()=>{const _0x5751a5=_0x4f0f68,_0x33903a=_0x3afa00[_0x5751a5(0xfa)][_0x5751a5(0xe6)](_0x5751a5(0xee));_0x24d9b8[_0x5751a5(0x139)]=!_0x33903a,_0x58bc5f[_0x5751a5(0x141)](_0x5751a5(0x10a),_0x33903a?_0x5751a5(0x126):_0x5751a5(0x11c));});document['addEventListener'](_0x4f0f68(0x105),_0x4c363f);const _0x50cb5d=_0x134246[_0x4f0f68(0x144)](_0x4f0f68(0xf0));_0x50cb5d&&(_0x50cb5d[_0x4f0f68(0x107)]=_0x47ac97);}export{loadServerHealthMetrics};typeof window!=='undefined'&&(window[_0x2fd96d(0x117)]=openServerHealthModal);
@@ -511,6 +511,89 @@
511
511
  color: var(--color-text-muted);
512
512
  }
513
513
 
514
+ .setup-repo-auth-controls {
515
+ display: flex;
516
+ flex-direction: row;
517
+ align-items: center;
518
+ gap: 10px;
519
+ }
520
+
521
+ #setup-repo-auth-mode {
522
+ min-width: 240px;
523
+ max-width: 320px;
524
+ }
525
+
526
+ .setup-repo-auth-actions {
527
+ display: flex;
528
+ align-items: center;
529
+ gap: 8px;
530
+ white-space: nowrap;
531
+ }
532
+
533
+ #setup-repo-auth-provider {
534
+ max-width: 360px;
535
+ }
536
+
537
+ .setup-repo-auth-test-result {
538
+ padding: 10px 14px;
539
+ border-radius: var(--radius-medium);
540
+ border: 1px solid var(--color-border);
541
+ background: var(--color-surface-muted);
542
+ font-size: 13px;
543
+ line-height: 1.4;
544
+ }
545
+
546
+ .setup-repo-auth-test-result.success {
547
+ border-color: rgba(16, 185, 129, 0.45);
548
+ background: rgba(16, 185, 129, 0.08);
549
+ color: var(--color-success, #10b981);
550
+ }
551
+
552
+ .setup-repo-auth-test-result.working {
553
+ border-color: rgba(var(--color-accent-rgb), 0.35);
554
+ background: rgba(var(--color-accent-rgb), 0.08);
555
+ color: var(--color-accent);
556
+ }
557
+
558
+ .setup-repo-auth-test-result.working::after {
559
+ content: '';
560
+ display: inline-block;
561
+ width: 12px;
562
+ height: 12px;
563
+ margin-left: 8px;
564
+ border: 2px solid currentColor;
565
+ border-top-color: transparent;
566
+ border-radius: 50%;
567
+ vertical-align: -2px;
568
+ animation: spin 0.8s linear infinite;
569
+ }
570
+
571
+ .setup-repo-auth-test-result.error {
572
+ border-color: rgba(239, 68, 68, 0.45);
573
+ background: rgba(239, 68, 68, 0.08);
574
+ color: var(--color-danger, #ef4444);
575
+ }
576
+
577
+ #test-setup-repo-auth-btn.is-working {
578
+ position: relative;
579
+ padding-right: 34px;
580
+ pointer-events: none;
581
+ }
582
+
583
+ #test-setup-repo-auth-btn.is-working::after {
584
+ content: '';
585
+ position: absolute;
586
+ right: 12px;
587
+ top: 50%;
588
+ width: 12px;
589
+ height: 12px;
590
+ margin-top: -6px;
591
+ border: 2px solid currentColor;
592
+ border-top-color: transparent;
593
+ border-radius: 50%;
594
+ animation: spin 0.8s linear infinite;
595
+ }
596
+
514
597
  /* ============================================================
515
598
  EMAIL TEST RESULT
516
599
  ============================================================ */
@@ -640,6 +723,15 @@
640
723
  padding-left: 0;
641
724
  margin-top: -4px;
642
725
  }
726
+
727
+ .setup-repo-auth-controls {
728
+ flex-wrap: wrap;
729
+ }
730
+
731
+ #setup-repo-auth-mode {
732
+ flex-basis: 100%;
733
+ width: 100%;
734
+ }
643
735
  }
644
736
 
645
737
  /* SSO Test Result */
@@ -23,9 +23,9 @@
23
23
  })();
24
24
  </script>
25
25
  <link rel="stylesheet" href="styles.css?v=84">
26
- <link rel="stylesheet" href="settings.css?v=2">
26
+ <link rel="stylesheet" href="settings.css?v=5">
27
27
  <script type="module" src="app.js?v=67"></script>
28
- <script type="module" src="settings.js?v=3"></script>
28
+ <script type="module" src="settings.js?v=5"></script>
29
29
  </head>
30
30
  <body>
31
31
  <main class="task-detail">
@@ -630,6 +630,35 @@
630
630
  </div>
631
631
  </div>
632
632
 
633
+ <!-- Setup Repository Authentication -->
634
+ <div class="form-single-column" style="margin-bottom: 20px;">
635
+ <div class="form-row">
636
+ <label for="setup-repo-auth-mode">Setup Repository Authentication</label>
637
+ <div class="setup-repo-auth-controls">
638
+ <select id="setup-repo-auth-mode" class="form-input">
639
+ <option value="local">Local Git Credentials</option>
640
+ <option value="provider">Git Provider (App Credentials)</option>
641
+ </select>
642
+ <div class="setup-repo-auth-actions">
643
+ <button type="button" class="btn-secondary btn-small" id="save-setup-repo-auth-btn">Save</button>
644
+ <button type="button" class="btn-secondary btn-small" id="test-setup-repo-auth-btn">Test Access</button>
645
+ </div>
646
+ </div>
647
+ <span class="form-hint">Controls how setup repository pull/push operations in Environments and Skills authenticate.</span>
648
+ </div>
649
+ <div class="form-row" id="setup-repo-provider-row" hidden>
650
+ <label for="setup-repo-auth-provider">Setup Repo Provider</label>
651
+ <select id="setup-repo-auth-provider" class="form-input">
652
+ <option value="">-- Select a provider --</option>
653
+ </select>
654
+ <span class="form-hint">Required when using Git Provider mode. Uses app credentials from the selected provider.</span>
655
+ </div>
656
+ <div class="form-row" id="setup-repo-auth-test-result-row" hidden>
657
+ <label></label>
658
+ <div id="setup-repo-auth-test-result" class="setup-repo-auth-test-result"></div>
659
+ </div>
660
+ </div>
661
+
633
662
  <div class="git-providers-list" id="git-providers-list">
634
663
  <!-- Git providers will be populated here -->
635
664
  </div>