@profoundlogic/coderflow-server 0.4.8 → 0.5.0

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 (173) hide show
  1. package/README.md +9 -1
  2. package/dist/README.md +9 -1
  3. package/dist/base-image/Dockerfile +5 -3
  4. package/dist/base-image/entrypoint.sh +76 -2
  5. package/dist/coder-server.js +1 -1
  6. package/dist/config.js +1 -1
  7. package/dist/lib/agent-keepalive.js +1 -1
  8. package/dist/lib/agent-models.js +1 -1
  9. package/dist/lib/api-keys.js +1 -1
  10. package/dist/lib/apiKeys.js +1 -1
  11. package/dist/lib/app-server-ports.js +1 -1
  12. package/dist/lib/auto-judge.js +1 -1
  13. package/dist/lib/automation-service.js +1 -1
  14. package/dist/lib/basic-auth.js +1 -1
  15. package/dist/lib/bindings.js +1 -1
  16. package/dist/lib/build-history.js +1 -1
  17. package/dist/lib/build-output-service.js +1 -1
  18. package/dist/lib/build-scheduler.js +1 -1
  19. package/dist/lib/build-service.js +1 -1
  20. package/dist/lib/ca-certificates.js +1 -1
  21. package/dist/lib/claude-oauth-refresh.js +1 -1
  22. package/dist/lib/cli/build.js +1 -1
  23. package/dist/lib/cli/config-command.js +1 -1
  24. package/dist/lib/cli/config.js +1 -1
  25. package/dist/lib/cli/create-user.js +1 -1
  26. package/dist/lib/cli/init.js +1 -1
  27. package/dist/lib/cli/jira.js +1 -1
  28. package/dist/lib/cli/license.js +1 -1
  29. package/dist/lib/cli/migrate-rbac.js +1 -0
  30. package/dist/lib/cli/server-manager.js +1 -1
  31. package/dist/lib/config-migration.js +1 -1
  32. package/dist/lib/container-credential-sync.js +1 -1
  33. package/dist/lib/container-tokens.js +1 -1
  34. package/dist/lib/data-dir.js +1 -1
  35. package/dist/lib/deployment-history.js +1 -1
  36. package/dist/lib/deployment-service.js +1 -1
  37. package/dist/lib/docker-utils.js +1 -1
  38. package/dist/lib/email.js +1 -1
  39. package/dist/lib/emailTemplates.js +1 -1
  40. package/dist/lib/entitlement.js +1 -1
  41. package/dist/lib/external-connections.js +1 -0
  42. package/dist/lib/fetch-utils.js +1 -1
  43. package/dist/lib/git-commit-details-route.js +1 -1
  44. package/dist/lib/git-history-diff-guardrails.js +1 -1
  45. package/dist/lib/git-provider-service.js +1 -1
  46. package/dist/lib/git-provider-setup/github-setup-handler.js +1 -1
  47. package/dist/lib/git-provider-setup/index.js +1 -1
  48. package/dist/lib/git-provider-setup/setup-factory.js +1 -1
  49. package/dist/lib/git-provider-setup/setup-interface.js +1 -1
  50. package/dist/lib/git-providers/azure-devops-provider.js +1 -1
  51. package/dist/lib/git-providers/github-app-provider.js +1 -1
  52. package/dist/lib/git-providers/index.js +1 -1
  53. package/dist/lib/git-providers/provider-factory.js +1 -1
  54. package/dist/lib/git-providers/provider-interface.js +1 -1
  55. package/dist/lib/github-urls.js +1 -1
  56. package/dist/lib/group-objective-linking.js +1 -1
  57. package/dist/lib/jira-client.js +1 -1
  58. package/dist/lib/judge-blinding.js +1 -1
  59. package/dist/lib/logger.js +1 -1
  60. package/dist/lib/migration-to-scoped-rbac.js +1 -1
  61. package/dist/lib/model-fetcher.js +1 -1
  62. package/dist/lib/notifications.js +1 -1
  63. package/dist/lib/objective-context.js +1 -1
  64. package/dist/lib/oidc-auth.js +1 -1
  65. package/dist/lib/oidc-device-flow.js +1 -1
  66. package/dist/lib/passwordTokens.js +1 -1
  67. package/dist/lib/permission-resolver.js +1 -1
  68. package/dist/lib/pin-cascade.js +1 -1
  69. package/dist/lib/provider-accounts.js +1 -1
  70. package/dist/lib/provider-oauth.js +1 -1
  71. package/dist/lib/provider-profile.js +1 -1
  72. package/dist/lib/provider-token-refresh.js +1 -1
  73. package/dist/lib/rbac-user-state.js +1 -0
  74. package/dist/lib/request-url.js +1 -1
  75. package/dist/lib/rewind.js +1 -1
  76. package/dist/lib/role-definitions.js +1 -1
  77. package/dist/lib/roles.js +1 -1
  78. package/dist/lib/scoped-rbac-migration-runner.js +1 -0
  79. package/dist/lib/secrets.js +1 -1
  80. package/dist/lib/setup-repo-git-auth.js +1 -1
  81. package/dist/lib/state-capture.js +1 -1
  82. package/dist/lib/static-files.js +1 -1
  83. package/dist/lib/task-name-format.js +1 -1
  84. package/dist/lib/task-name-generator.js +1 -1
  85. package/dist/lib/task-source-metadata.js +1 -1
  86. package/dist/lib/teams.js +1 -1
  87. package/dist/lib/user-git-oauth.js +1 -1
  88. package/dist/lib/user-git-tokens.js +1 -1
  89. package/dist/lib/users.js +1 -1
  90. package/dist/middleware/requireAuth.js +1 -1
  91. package/dist/middleware/requireInit.js +1 -1
  92. package/dist/middleware/requirePermission.js +1 -1
  93. package/dist/package.json +2 -1
  94. package/dist/playwright.config.js +1 -1
  95. package/dist/routes/apiKeys.js +1 -1
  96. package/dist/routes/auth-oidc.js +1 -1
  97. package/dist/routes/auth.js +1 -1
  98. package/dist/routes/automations.js +1 -1
  99. package/dist/routes/bindings.js +1 -1
  100. package/dist/routes/build.js +1 -1
  101. package/dist/routes/containers.js +1 -1
  102. package/dist/routes/deploy-task.js +1 -1
  103. package/dist/routes/environment-management.js +1 -1
  104. package/dist/routes/environments.js +1 -1
  105. package/dist/routes/external-skills.js +1 -1
  106. package/dist/routes/git-credentials.js +1 -1
  107. package/dist/routes/git-oauth.js +1 -1
  108. package/dist/routes/git-provider-setup.js +1 -1
  109. package/dist/routes/health.js +1 -1
  110. package/dist/routes/jira.js +1 -1
  111. package/dist/routes/objective-management.js +1 -1
  112. package/dist/routes/password.js +1 -1
  113. package/dist/routes/prompt.js +1 -1
  114. package/dist/routes/provider-auth.js +1 -1
  115. package/dist/routes/qa.js +1 -1
  116. package/dist/routes/roles.js +1 -1
  117. package/dist/routes/settings.js +1 -1
  118. package/dist/routes/skill-management.js +1 -1
  119. package/dist/routes/skills.js +1 -1
  120. package/dist/routes/tasks.js +1 -1
  121. package/dist/routes/teams.js +1 -1
  122. package/dist/routes/templates.js +1 -1
  123. package/dist/routes/test-task.js +1 -1
  124. package/dist/routes/test.js +1 -1
  125. package/dist/routes/users.js +1 -1
  126. package/dist/routes/visualizations.js +1 -1
  127. package/dist/scripts/create-user.js +1 -1
  128. package/dist/scripts/migrate-config-to-data-dir.js +1 -1
  129. package/dist/scripts/migrate-to-scoped-rbac.js +1 -1
  130. package/dist/start.js +1 -1
  131. package/dist/web-ui/public/activity-detail-modal.js +1 -1
  132. package/dist/web-ui/public/activity-feed.js +1 -1
  133. package/dist/web-ui/public/activity-formatters.js +1 -1
  134. package/dist/web-ui/public/agent-event-parser.js +1 -1
  135. package/dist/web-ui/public/app.js +1 -1
  136. package/dist/web-ui/public/approve-dialog.js +1 -1
  137. package/dist/web-ui/public/automation-links.js +1 -1
  138. package/dist/web-ui/public/automation-schedule.js +1 -1
  139. package/dist/web-ui/public/comments-widget.js +1 -1
  140. package/dist/web-ui/public/diff-utils.js +1 -1
  141. package/dist/web-ui/public/docs/admin/environments.md +75 -0
  142. package/dist/web-ui/public/docs/admin/installation.md +9 -1
  143. package/dist/web-ui/public/environments.css +356 -0
  144. package/dist/web-ui/public/environments.html +316 -0
  145. package/dist/web-ui/public/environments.js +1 -1
  146. package/dist/web-ui/public/feedback-widget.js +1 -1
  147. package/dist/web-ui/public/git-history-lazy-utils.js +1 -1
  148. package/dist/web-ui/public/git-history.js +1 -1
  149. package/dist/web-ui/public/git-status.js +1 -1
  150. package/dist/web-ui/public/index.js +1 -1
  151. package/dist/web-ui/public/login.js +1 -1
  152. package/dist/web-ui/public/markdown-editor.js +1 -1
  153. package/dist/web-ui/public/markdown-file-editor.js +1 -1
  154. package/dist/web-ui/public/modal-maximize.js +1 -1
  155. package/dist/web-ui/public/notifications.js +1 -1
  156. package/dist/web-ui/public/pr-dialog.js +1 -1
  157. package/dist/web-ui/public/roles.js +1 -1
  158. package/dist/web-ui/public/server-health.js +1 -1
  159. package/dist/web-ui/public/settings.html +1 -2
  160. package/dist/web-ui/public/settings.js +1 -1
  161. package/dist/web-ui/public/setup-password.js +1 -1
  162. package/dist/web-ui/public/skills.js +1 -1
  163. package/dist/web-ui/public/sse-client.js +1 -1
  164. package/dist/web-ui/public/sse-shared-worker.js +1 -1
  165. package/dist/web-ui/public/styles.css +78 -7
  166. package/dist/web-ui/public/task.html +24 -0
  167. package/dist/web-ui/public/task.js +1 -1
  168. package/dist/web-ui/public/teams.js +1 -1
  169. package/dist/web-ui/public/terminal.js +1 -1
  170. package/dist/web-ui/public/theme.js +1 -1
  171. package/dist/web-ui/public/users.js +1 -1
  172. package/dist/web-ui/public/variant-grouping.js +1 -1
  173. package/package.json +2 -1
@@ -1 +1 @@
1
- const _0x414e35=_0x1cd5;(function(_0x41d470,_0x309710){const _0x495466=_0x1cd5,_0x26b75a=_0x41d470();while(!![]){try{const _0x401e07=-parseInt(_0x495466(0x1d8))/0x1+-parseInt(_0x495466(0x1b7))/0x2+parseInt(_0x495466(0x1ba))/0x3+parseInt(_0x495466(0x1bd))/0x4+parseInt(_0x495466(0x1c0))/0x5*(parseInt(_0x495466(0x1dc))/0x6)+-parseInt(_0x495466(0x19f))/0x7+-parseInt(_0x495466(0x1a8))/0x8;if(_0x401e07===_0x309710)break;else _0x26b75a['push'](_0x26b75a['shift']());}catch(_0x238c60){_0x26b75a['push'](_0x26b75a['shift']());}}}(_0x5d5b,0x6038c));import{initTheme,mountThemeToggle}from'./theme.js';initTheme();const urlParams=new URLSearchParams(window[_0x414e35(0x1ce)][_0x414e35(0x1a0)]),token=urlParams[_0x414e35(0x1c3)](_0x414e35(0x1ad)),loadingEl=document['getElementById'](_0x414e35(0x1d9)),setupContentEl=document['getElementById'](_0x414e35(0x1ae)),setupFormEl=document[_0x414e35(0x1b0)]('setup-form'),setupMessageEl=document[_0x414e35(0x1b0)](_0x414e35(0x1db)),userUsernameEl=document[_0x414e35(0x1b0)](_0x414e35(0x1a4)),userNameEl=document[_0x414e35(0x1b0)](_0x414e35(0x1bc)),passwordInput=document[_0x414e35(0x1b0)](_0x414e35(0x1c4)),confirmPasswordInput=document[_0x414e35(0x1b0)](_0x414e35(0x1a2)),submitButton=setupFormEl?.[_0x414e35(0x1d1)](_0x414e35(0x1d3));function _0x5d5b(){const _0x2f4b77=['rMfPBgvKihrVihnLDcbWyxnZD29YzdO','yNv0Dg9Uw3r5Cgu9iNn1yM1PDcjD','ANnVBG','CMvTB3zL','ue9tva','ywrKrxzLBNrmAxn0zw5LCG','mZK4mZzTBgn4qvu','Bg9HzgLUzW','u2v0ifbHC3n3B3jK','C2v0DxaTBwvZC2fNzq','nJyWnJC4tMXkuxPO','mZC2otu2m2zJB2fXBa','C2vHCMnO','C3r5Bgu','y29UzMLYBs1WyxnZD29Yza','l3bHC3n3B3jKl3zHBgLKyxrLlxrVA2vUp3rVA2vUpq','DxnLCI11C2vYBMfTzq','rMfPBgvKihrVihnLDcbWyxnZD29Yza','y2XHC3nmAxn0','C2v0DxaTBwvZC2fNzsa','mtKZmdi2ngz3u3zVCW','tM8GDg9Rzw4GChjVDMLKzwqUifbSzwfZzsbJAgvJAYb0AguGBgLUAYb5B3uGCMvJzwL2zwqU','BM9Uzq','rMfPBgvKihrVihzHBgLKyxrLihrVA2vUoG','Dgv4DenVBNrLBNq','Dg9Rzw4','C2v0DxaTy29UDgvUDa','lNnLDhvWlwHLywrLCIbW','z2v0rwXLBwvUDej5swq','C3vJy2vZCW','ugfZC3DVCMrZigrVig5VDcbTyxrJAa','AhjLzG','zxjYB3i','C3rYAw5NAwz5','l3bHC3n3B3jKl3nLDhvW','nZK0nZiYuhzjAvvg','DMfSAwq','yMXVy2S','mty1nJqXnePTsxfeCW','DMfSDwu','DxnLCI1Uyw1L','mJKXndu0nfDlBvfItq','C3vIBwL0','DxnLCG','mtvUrwTlAKW','yxbWBgLJyxrPB24VANnVBG','BMfTzq','z2v0','CgfZC3DVCMq','ugfZC3DVCMqGC2v0ihn1y2nLC3nMDwXSEseGuMvKAxjLy3rPBMCGDg8GBg9NAw4UlI4','zgLZywjSzwq','l2XVz2LUlMH0BwW','ChjLDMvUDerLzMf1Bhq','DxnLCI1PBMzV','zgLZCgXHEq','DMLZAwjSzq','CMvZzxq','y2XHC3noyw1L','Bg9JyxrPB24','zM9JDxm','BgvUz3rO','CxvLCNLtzwXLy3rVCG'];_0x5d5b=function(){return _0x2f4b77;};return _0x5d5b();}function showMessage(_0x41642a,_0x2e7df1=_0x414e35(0x1b4)){const _0x1b9745=_0x414e35;setupMessageEl[_0x1b9745(0x1ac)]=_0x41642a,setupMessageEl['className']=_0x1b9745(0x1a7)+_0x2e7df1+'\x20visible';}function hideMessage(){const _0x4b270c=_0x414e35;setupMessageEl[_0x4b270c(0x1cd)]='setup-message';}function showError(_0x463a74){const _0x1d27ac=_0x414e35;loadingEl['classList'][_0x1d27ac(0x1d5)](_0x1d27ac(0x1cb)),setupContentEl[_0x1d27ac(0x1a1)][_0x1d27ac(0x1ca)]=_0x1d27ac(0x1b9),document[_0x1d27ac(0x1b0)](_0x1d27ac(0x1c9))['style'][_0x1d27ac(0x1ca)]='none',setupFormEl[_0x1d27ac(0x1a1)][_0x1d27ac(0x1ca)]=_0x1d27ac(0x1aa),showMessage(_0x463a74,_0x1d27ac(0x1b4));}async function validateToken(){const _0x4b6198=_0x414e35;if(!token){showError(_0x4b6198(0x1a9));return;}try{const _0x10e44d=await fetch(_0x4b6198(0x1a3)+encodeURIComponent(token)),_0x358a7c=await _0x10e44d[_0x4b6198(0x1d4)]();if(!_0x358a7c[_0x4b6198(0x1b8)]){showError(_0x358a7c[_0x4b6198(0x1b4)]||'Invalid\x20or\x20expired\x20token.\x20Please\x20request\x20a\x20new\x20password\x20setup\x20link.');return;}loadingEl[_0x4b6198(0x1a6)][_0x4b6198(0x1d5)](_0x4b6198(0x1cb)),setupContentEl['style'][_0x4b6198(0x1ca)]=_0x4b6198(0x1b9),userUsernameEl['textContent']=_0x358a7c[_0x4b6198(0x1bf)]['username'],userNameEl['textContent']=_0x358a7c[_0x4b6198(0x1bf)][_0x4b6198(0x1c2)];const _0x4c63c7=document[_0x4b6198(0x1d1)](_0x4b6198(0x1af));_0x358a7c['type']===_0x4b6198(0x1cc)?_0x4c63c7['textContent']='Reset\x20your\x20password':_0x4c63c7[_0x4b6198(0x1ac)]='Create\x20a\x20secure\x20password\x20for\x20your\x20account',passwordInput[_0x4b6198(0x1cf)]();}catch(_0x2b88dd){console['error'](_0x4b6198(0x1ab),_0x2b88dd),showError('Failed\x20to\x20validate\x20token.\x20Please\x20try\x20again\x20or\x20contact\x20your\x20administrator.');}}function _0x1cd5(_0x131d2b,_0x2a287b){_0x131d2b=_0x131d2b-0x19f;const _0x5d5b43=_0x5d5b();let _0x1cd573=_0x5d5b43[_0x131d2b];if(_0x1cd5['uzIxmn']===undefined){var _0x188ebb=function(_0x122585){const _0x12ffbb='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x41642a='',_0x2e7df1='';for(let _0x463a74=0x0,_0x10e44d,_0x358a7c,_0x4c63c7=0x0;_0x358a7c=_0x122585['charAt'](_0x4c63c7++);~_0x358a7c&&(_0x10e44d=_0x463a74%0x4?_0x10e44d*0x40+_0x358a7c:_0x358a7c,_0x463a74++%0x4)?_0x41642a+=String['fromCharCode'](0xff&_0x10e44d>>(-0x2*_0x463a74&0x6)):0x0){_0x358a7c=_0x12ffbb['indexOf'](_0x358a7c);}for(let _0x2b88dd=0x0,_0x475769=_0x41642a['length'];_0x2b88dd<_0x475769;_0x2b88dd++){_0x2e7df1+='%'+('00'+_0x41642a['charCodeAt'](_0x2b88dd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2e7df1);};_0x1cd5['nwAazz']=_0x188ebb,_0x1cd5['ButtpR']={},_0x1cd5['uzIxmn']=!![];}const _0x115667=_0x5d5b43[0x0],_0x481099=_0x131d2b+_0x115667,_0xf1ae34=_0x1cd5['ButtpR'][_0x481099];return!_0xf1ae34?(_0x1cd573=_0x1cd5['nwAazz'](_0x1cd573),_0x1cd5['ButtpR'][_0x481099]=_0x1cd573):_0x1cd573=_0xf1ae34,_0x1cd573;}async function handleSubmit(_0x475769){const _0x2efa53=_0x414e35;_0x475769[_0x2efa53(0x1c8)](),hideMessage();const _0x5dfcc3=passwordInput['value'],_0x33794a=confirmPasswordInput[_0x2efa53(0x1bb)];if(_0x5dfcc3!==_0x33794a){showMessage(_0x2efa53(0x1b2),_0x2efa53(0x1b4)),confirmPasswordInput[_0x2efa53(0x1cf)]();return;}if(_0x5dfcc3[_0x2efa53(0x1d0)]<0x8){showMessage('Password\x20must\x20be\x20at\x20least\x208\x20characters\x20long',_0x2efa53(0x1b4)),passwordInput[_0x2efa53(0x1cf)]();return;}submitButton[_0x2efa53(0x1c6)]=!![],submitButton[_0x2efa53(0x1ac)]='Setting\x20password...';try{const _0x2b0ef0=await fetch(_0x2efa53(0x1b6),{'method':_0x2efa53(0x1d6),'headers':{'Content-Type':_0x2efa53(0x1c1)},'body':JSON[_0x2efa53(0x1b5)]({'token':token,'password':_0x5dfcc3})}),_0x4e968c=await _0x2b0ef0[_0x2efa53(0x1d4)]();if(!_0x2b0ef0['ok'])throw new Error(_0x4e968c[_0x2efa53(0x1b4)]||_0x2efa53(0x1a5));showMessage(_0x2efa53(0x1c5),_0x2efa53(0x1b1)),setupFormEl['reset'](),setTimeout(()=>{const _0x1176dd=_0x2efa53;window['location'][_0x1176dd(0x1b3)]=_0x1176dd(0x1c7);},0x7d0);}catch(_0x2835ce){console[_0x2efa53(0x1b4)](_0x2efa53(0x1d2),_0x2835ce),showMessage(_0x2835ce['message']||'Failed\x20to\x20set\x20password.\x20Please\x20try\x20again.',_0x2efa53(0x1b4)),submitButton['disabled']=![],submitButton[_0x2efa53(0x1ac)]=_0x2efa53(0x1da);}}setupFormEl&&setupFormEl[_0x414e35(0x1d7)](_0x414e35(0x1be),handleSubmit);validateToken(),document[_0x414e35(0x1d7)]('DOMContentLoaded',()=>{mountThemeToggle();});
1
+ const _0x3e691f=_0x37cb;(function(_0x1010d3,_0x52a93a){const _0x4aa4b2=_0x37cb,_0x240d4f=_0x1010d3();while(!![]){try{const _0x4d1c57=parseInt(_0x4aa4b2(0xdd))/0x1+parseInt(_0x4aa4b2(0xd5))/0x2*(parseInt(_0x4aa4b2(0x108))/0x3)+-parseInt(_0x4aa4b2(0x102))/0x4+-parseInt(_0x4aa4b2(0x10d))/0x5*(-parseInt(_0x4aa4b2(0xea))/0x6)+parseInt(_0x4aa4b2(0xe9))/0x7*(parseInt(_0x4aa4b2(0xf0))/0x8)+-parseInt(_0x4aa4b2(0xee))/0x9+parseInt(_0x4aa4b2(0xe2))/0xa*(-parseInt(_0x4aa4b2(0xe3))/0xb);if(_0x4d1c57===_0x52a93a)break;else _0x240d4f['push'](_0x240d4f['shift']());}catch(_0x5dada7){_0x240d4f['push'](_0x240d4f['shift']());}}}(_0x17de,0x46219));import{initTheme,mountThemeToggle}from'./theme.js';initTheme();const urlParams=new URLSearchParams(window[_0x3e691f(0xd0)][_0x3e691f(0xe5)]),token=urlParams[_0x3e691f(0xd4)](_0x3e691f(0xec)),loadingEl=document['getElementById'](_0x3e691f(0xfc)),setupContentEl=document['getElementById'](_0x3e691f(0x10b)),setupFormEl=document[_0x3e691f(0x10e)](_0x3e691f(0x101)),setupMessageEl=document['getElementById'](_0x3e691f(0xf1)),userUsernameEl=document[_0x3e691f(0x10e)]('user-username'),userNameEl=document[_0x3e691f(0x10e)](_0x3e691f(0xd9)),passwordInput=document[_0x3e691f(0x10e)](_0x3e691f(0xd2)),confirmPasswordInput=document[_0x3e691f(0x10e)](_0x3e691f(0xf5)),submitButton=setupFormEl?.['querySelector'](_0x3e691f(0xe1));function _0x37cb(_0x47b1ef,_0x4425e7){_0x47b1ef=_0x47b1ef-0xcd;const _0x17de17=_0x17de();let _0x37cb02=_0x17de17[_0x47b1ef];if(_0x37cb['YKPLqq']===undefined){var _0x93399e=function(_0x466681){const _0x94b2bc='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4551f0='',_0x4e8da3='';for(let _0x165bcd=0x0,_0x2c9656,_0xd4e07c,_0xdda3e4=0x0;_0xd4e07c=_0x466681['charAt'](_0xdda3e4++);~_0xd4e07c&&(_0x2c9656=_0x165bcd%0x4?_0x2c9656*0x40+_0xd4e07c:_0xd4e07c,_0x165bcd++%0x4)?_0x4551f0+=String['fromCharCode'](0xff&_0x2c9656>>(-0x2*_0x165bcd&0x6)):0x0){_0xd4e07c=_0x94b2bc['indexOf'](_0xd4e07c);}for(let _0x16dc45=0x0,_0x4081b7=_0x4551f0['length'];_0x16dc45<_0x4081b7;_0x16dc45++){_0x4e8da3+='%'+('00'+_0x4551f0['charCodeAt'](_0x16dc45)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4e8da3);};_0x37cb['YKEkRU']=_0x93399e,_0x37cb['VdaoXL']={},_0x37cb['YKPLqq']=!![];}const _0xff09ea=_0x17de17[0x0],_0x5c0740=_0x47b1ef+_0xff09ea,_0x20cab3=_0x37cb['VdaoXL'][_0x5c0740];return!_0x20cab3?(_0x37cb02=_0x37cb['YKEkRU'](_0x37cb02),_0x37cb['VdaoXL'][_0x5c0740]=_0x37cb02):_0x37cb02=_0x20cab3,_0x37cb02;}function showMessage(_0x4551f0,_0x4e8da3=_0x3e691f(0xe4)){const _0x409ddd=_0x3e691f;setupMessageEl['textContent']=_0x4551f0,setupMessageEl['className']=_0x409ddd(0x106)+_0x4e8da3+_0x409ddd(0xe6);}function _0x17de(){const _0x508a25=['C2vHCMnO','ihzPC2LIBgu','Dgv4DenVBNrLBNq','CMvZzxq','odmXnta5r0jQq2Dw','mZeWmMvkrLrArW','BMfTzq','Dg9Rzw4','sw52ywXPzcbVCIbLEhbPCMvKihrVA2vUlIbqBgvHC2uGCMvXDwvZDcbHig5LDYbWyxnZD29YzcbZzxr1CcbSAw5RlG','nda3odmWnvvkBwzzwG','CMvTB3zL','mtzPCNvlCfi','C2v0DxaTBwvZC2fNzq','zgLZywjSzwq','C3vJy2vZCW','yxbWBgLJyxrPB24VANnVBG','y29UzMLYBs1WyxnZD29Yza','DMLZAwjSzq','DxnLCG','zgLZCgXHEq','ugfZC3DVCMqGC2v0ihn1y2nLC3nMDwXSEseGuMvKAxjLy3rPBMCGDg8GBg9NAw4UlI4','rMfPBgvKihrVihnLDcbWyxnZD29Yzc4GugXLyxnLihrYEsbHz2fPBI4','CxvLCNLtzwXLy3rVCG','Bg9HzgLUzW','DMfSDwu','C3r5Bgu','BgvUz3rO','uMvZzxqGEw91CIbWyxnZD29Yza','C2v0DxaTzM9YBq','mtu0mti0mejMBLf1za','rMfPBgvKihrVihnLDcbWyxnZD29Yza','y2XHC3nmAxn0','ugfZC3DVCMqGBxvZDcbIzsbHDcbSzwfZDca4ignOyxjHy3rLCNmGBg9UzW','C2v0DxaTBwvZC2fNzsa','re9nq29UDgvUDeXVywrLza','mJi4wg1PvKjf','AhjLzG','u2v0DgLUzYbWyxnZD29Yzc4UlG','C2v0DxaTy29UDgvUDa','l3bHC3n3B3jKl3zHBgLKyxrLlxrVA2vUp3rVA2vUpq','ntq1weHUswPY','z2v0rwXLBwvUDej5swq','DhLWzq','C3rYAw5NAwz5','ywrKrxzLBNrmAxn0zw5LCG','Bg9JyxrPB24','C3vIBwL0','CgfZC3DVCMq','yMXVy2S','z2v0','mtqXnZjhuePxA3i','l3bHC3n3B3jKl3nLDhvW','u2v0ifbHC3n3B3jK','DxnLCI1PBMzV','DxnLCI1Uyw1L','zM9JDxm','DxnLCM5HBwu','rMfPBgvKihrVihzHBgLKyxrLihrVA2vUlIbqBgvHC2uGDhj5igfNywLUig9YignVBNrHy3qGEw91CIbHzg1PBMLZDhjHDg9YlG','mJK0nJi1uM1jrhb4','ugfZC3DVCMrZigrVig5VDcbTyxrJAa','BM9Uzq','ue9tva','yNv0Dg9Uw3r5Cgu9iNn1yM1PDcjD','odyWy2vIzM5W','mtC2uMrzzgP1','zxjYB3i'];_0x17de=function(){return _0x508a25;};return _0x17de();}function hideMessage(){setupMessageEl['className']='setup-message';}function showError(_0x165bcd){const _0xd96e85=_0x3e691f;loadingEl['classList'][_0xd96e85(0xef)](_0xd96e85(0xf6)),setupContentEl[_0xd96e85(0xfe)][_0xd96e85(0xf8)]=_0xd96e85(0xd3),document[_0xd96e85(0x10e)](_0xd96e85(0xd8))[_0xd96e85(0xfe)][_0xd96e85(0xf8)]=_0xd96e85(0xdf),setupFormEl[_0xd96e85(0xfe)][_0xd96e85(0xf8)]=_0xd96e85(0xdf),showMessage(_0x165bcd,_0xd96e85(0xe4));}async function validateToken(){const _0x5ececb=_0x3e691f;if(!token){showError('No\x20token\x20provided.\x20Please\x20check\x20the\x20link\x20you\x20received.');return;}try{const _0x2c9656=await fetch(_0x5ececb(0x10c)+encodeURIComponent(token)),_0xd4e07c=await _0x2c9656['json']();if(!_0xd4e07c['valid']){showError(_0xd4e07c[_0x5ececb(0xe4)]||_0x5ececb(0xed));return;}loadingEl[_0x5ececb(0x104)][_0x5ececb(0xef)](_0x5ececb(0xf6)),setupContentEl[_0x5ececb(0xfe)][_0x5ececb(0xf8)]='block',userUsernameEl['textContent']=_0xd4e07c[_0x5ececb(0xf7)][_0x5ececb(0xdb)],userNameEl['textContent']=_0xd4e07c['user'][_0x5ececb(0xeb)];const _0xdda3e4=document[_0x5ececb(0xfb)]('.setup-header\x20p');_0xd4e07c[_0x5ececb(0xcd)]===_0x5ececb(0xe8)?_0xdda3e4['textContent']=_0x5ececb(0x100):_0xdda3e4[_0x5ececb(0xe7)]='Create\x20a\x20secure\x20password\x20for\x20your\x20account',passwordInput['focus']();}catch(_0x16dc45){console[_0x5ececb(0xe4)]('Failed\x20to\x20validate\x20token:',_0x16dc45),showError(_0x5ececb(0xdc));}}async function handleSubmit(_0x4081b7){const _0x38c9d5=_0x3e691f;_0x4081b7['preventDefault'](),hideMessage();const _0x33f405=passwordInput[_0x38c9d5(0xfd)],_0x10411f=confirmPasswordInput[_0x38c9d5(0xfd)];if(_0x33f405!==_0x10411f){showMessage(_0x38c9d5(0xde),_0x38c9d5(0xe4)),confirmPasswordInput[_0x38c9d5(0xda)]();return;}if(_0x33f405[_0x38c9d5(0xff)]<0x8){showMessage(_0x38c9d5(0x105),_0x38c9d5(0xe4)),passwordInput['focus']();return;}submitButton['disabled']=!![],submitButton[_0x38c9d5(0xe7)]=_0x38c9d5(0x10a);try{const _0x19b97d=await fetch(_0x38c9d5(0xd6),{'method':_0x38c9d5(0xe0),'headers':{'Content-Type':_0x38c9d5(0xf4)},'body':JSON[_0x38c9d5(0xce)]({'token':token,'password':_0x33f405})}),_0x3f7426=await _0x19b97d['json']();if(!_0x19b97d['ok'])throw new Error(_0x3f7426[_0x38c9d5(0xe4)]||_0x38c9d5(0x103));showMessage(_0x38c9d5(0xf9),_0x38c9d5(0xf3)),setupFormEl[_0x38c9d5(0xe8)](),setTimeout(()=>{const _0x25ad09=_0x38c9d5;window[_0x25ad09(0xd0)][_0x25ad09(0x109)]='/login.html';},0x7d0);}catch(_0x17dece){console[_0x38c9d5(0xe4)]('Failed\x20to\x20set\x20password:',_0x17dece),showMessage(_0x17dece['message']||_0x38c9d5(0xfa),_0x38c9d5(0xe4)),submitButton[_0x38c9d5(0xf2)]=![],submitButton[_0x38c9d5(0xe7)]=_0x38c9d5(0xd7);}}setupFormEl&&setupFormEl[_0x3e691f(0xcf)](_0x3e691f(0xd1),handleSubmit);validateToken(),document['addEventListener'](_0x3e691f(0x107),()=>{mountThemeToggle();});