@profoundlogic/coderflow-server 0.3.2 → 0.4.1

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 (152) hide show
  1. package/dist/base-image/agent-wrapper.sh +49 -9
  2. package/dist/base-image/entrypoint.sh +12 -1
  3. package/dist/coder-server.js +1 -1
  4. package/dist/config/cli-models.json +5 -3
  5. package/dist/config.js +1 -1
  6. package/dist/lib/agent-keepalive.js +1 -1
  7. package/dist/lib/agent-models.js +1 -0
  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/config-migration.js +1 -0
  28. package/dist/lib/container-credential-sync.js +1 -1
  29. package/dist/lib/container-tokens.js +1 -1
  30. package/dist/lib/data-dir.js +1 -1
  31. package/dist/lib/deployment-history.js +1 -1
  32. package/dist/lib/deployment-service.js +1 -1
  33. package/dist/lib/docker-utils.js +1 -1
  34. package/dist/lib/email.js +1 -1
  35. package/dist/lib/emailTemplates.js +1 -1
  36. package/dist/lib/entitlement.js +1 -1
  37. package/dist/lib/fetch-utils.js +1 -1
  38. package/dist/lib/git-commit-details-route.js +1 -1
  39. package/dist/lib/git-history-diff-guardrails.js +1 -1
  40. package/dist/lib/git-provider-service.js +1 -1
  41. package/dist/lib/git-provider-setup/github-setup-handler.js +1 -1
  42. package/dist/lib/git-provider-setup/index.js +1 -1
  43. package/dist/lib/git-provider-setup/setup-factory.js +1 -1
  44. package/dist/lib/git-provider-setup/setup-interface.js +1 -1
  45. package/dist/lib/git-providers/azure-devops-provider.js +1 -1
  46. package/dist/lib/git-providers/github-app-provider.js +1 -1
  47. package/dist/lib/git-providers/index.js +1 -1
  48. package/dist/lib/git-providers/provider-factory.js +1 -1
  49. package/dist/lib/git-providers/provider-interface.js +1 -1
  50. package/dist/lib/github-urls.js +1 -1
  51. package/dist/lib/group-objective-linking.js +1 -1
  52. package/dist/lib/jira-client.js +1 -1
  53. package/dist/lib/judge-blinding.js +1 -1
  54. package/dist/lib/logger.js +1 -1
  55. package/dist/lib/model-fetcher.js +1 -1
  56. package/dist/lib/notifications.js +1 -1
  57. package/dist/lib/oidc-auth.js +1 -1
  58. package/dist/lib/oidc-device-flow.js +1 -1
  59. package/dist/lib/passwordTokens.js +1 -1
  60. package/dist/lib/pin-cascade.js +1 -1
  61. package/dist/lib/provider-accounts.js +1 -1
  62. package/dist/lib/provider-oauth.js +1 -1
  63. package/dist/lib/provider-profile.js +1 -1
  64. package/dist/lib/provider-token-refresh.js +1 -1
  65. package/dist/lib/request-url.js +1 -1
  66. package/dist/lib/rewind.js +1 -1
  67. package/dist/lib/roles.js +1 -1
  68. package/dist/lib/secrets.js +1 -1
  69. package/dist/lib/setup-repo-git-auth.js +1 -1
  70. package/dist/lib/state-capture.js +1 -1
  71. package/dist/lib/static-files.js +1 -1
  72. package/dist/lib/task-name-format.js +1 -0
  73. package/dist/lib/task-name-generator.js +1 -1
  74. package/dist/lib/user-git-oauth.js +1 -1
  75. package/dist/lib/user-git-tokens.js +1 -1
  76. package/dist/lib/users.js +1 -1
  77. package/dist/middleware/requireAuth.js +1 -1
  78. package/dist/middleware/requireInit.js +1 -1
  79. package/dist/middleware/requirePermission.js +1 -1
  80. package/dist/package.json +1 -1
  81. package/dist/routes/apiKeys.js +1 -1
  82. package/dist/routes/auth-oidc.js +1 -1
  83. package/dist/routes/auth.js +1 -1
  84. package/dist/routes/build.js +1 -1
  85. package/dist/routes/containers.js +1 -1
  86. package/dist/routes/deploy-task.js +1 -1
  87. package/dist/routes/environment-management.js +1 -1
  88. package/dist/routes/environments.js +1 -1
  89. package/dist/routes/external-skills.js +1 -1
  90. package/dist/routes/git-credentials.js +1 -1
  91. package/dist/routes/git-oauth.js +1 -1
  92. package/dist/routes/git-provider-setup.js +1 -1
  93. package/dist/routes/health.js +1 -1
  94. package/dist/routes/jira.js +1 -1
  95. package/dist/routes/objective-management.js +1 -1
  96. package/dist/routes/password.js +1 -1
  97. package/dist/routes/prompt.js +1 -1
  98. package/dist/routes/provider-auth.js +1 -1
  99. package/dist/routes/qa.js +1 -1
  100. package/dist/routes/settings.js +1 -1
  101. package/dist/routes/skill-management.js +1 -1
  102. package/dist/routes/skills.js +1 -1
  103. package/dist/routes/tasks.js +1 -1
  104. package/dist/routes/templates.js +1 -1
  105. package/dist/routes/test-task.js +1 -1
  106. package/dist/routes/test.js +1 -1
  107. package/dist/routes/users.js +1 -1
  108. package/dist/routes/visualizations.js +1 -1
  109. package/dist/scripts/create-user.js +1 -1
  110. package/dist/scripts/migrate-config-to-data-dir.js +2 -0
  111. package/dist/start.js +1 -1
  112. package/dist/web-ui/public/activity-detail-modal.js +1 -1
  113. package/dist/web-ui/public/activity-feed.js +1 -1
  114. package/dist/web-ui/public/activity-formatters.js +1 -1
  115. package/dist/web-ui/public/agent-event-parser.js +1 -1
  116. package/dist/web-ui/public/app.js +1 -1
  117. package/dist/web-ui/public/approve-dialog.js +1 -1
  118. package/dist/web-ui/public/comments-widget.js +1 -1
  119. package/dist/web-ui/public/diff-utils.js +1 -1
  120. package/dist/web-ui/public/docs/README.md +1 -1
  121. package/dist/web-ui/public/docs/admin/environments.md +1 -1
  122. package/dist/web-ui/public/docs/admin/jira.md +78 -16
  123. package/dist/web-ui/public/docs/integrations/ibmi/overview.md +3 -3
  124. package/dist/web-ui/public/docs/integrations/overview.md +1 -1
  125. package/dist/web-ui/public/docs/tasks/approval-and-deployment.md +38 -0
  126. package/dist/web-ui/public/environments.js +1 -1
  127. package/dist/web-ui/public/feedback-widget.js +1 -1
  128. package/dist/web-ui/public/git-history-lazy-utils.js +1 -1
  129. package/dist/web-ui/public/git-history.js +1 -1
  130. package/dist/web-ui/public/git-status.js +1 -1
  131. package/dist/web-ui/public/index.html +1 -0
  132. package/dist/web-ui/public/index.js +1 -1
  133. package/dist/web-ui/public/login.js +1 -1
  134. package/dist/web-ui/public/markdown-editor.js +1 -1
  135. package/dist/web-ui/public/markdown-file-editor.js +1 -1
  136. package/dist/web-ui/public/modal-maximize.js +1 -1
  137. package/dist/web-ui/public/notifications.js +1 -1
  138. package/dist/web-ui/public/pr-dialog.js +1 -1
  139. package/dist/web-ui/public/server-health.js +1 -1
  140. package/dist/web-ui/public/settings.js +1 -1
  141. package/dist/web-ui/public/setup-password.js +1 -1
  142. package/dist/web-ui/public/skills.js +1 -1
  143. package/dist/web-ui/public/sse-client.js +1 -1
  144. package/dist/web-ui/public/sse-shared-worker.js +1 -1
  145. package/dist/web-ui/public/styles.css +50 -0
  146. package/dist/web-ui/public/task.html +10 -3
  147. package/dist/web-ui/public/task.js +1 -1
  148. package/dist/web-ui/public/terminal.js +1 -1
  149. package/dist/web-ui/public/theme.js +1 -1
  150. package/dist/web-ui/public/users.js +1 -1
  151. package/dist/web-ui/public/variant-grouping.js +1 -1
  152. package/package.json +1 -1
@@ -1 +1 @@
1
- const _0x181d6d=_0x2296;(function(_0x540e53,_0x57ff56){const _0x6ba412=_0x2296,_0x26a328=_0x540e53();while(!![]){try{const _0x1c1713=parseInt(_0x6ba412(0xbc))/0x1+parseInt(_0x6ba412(0x92))/0x2*(-parseInt(_0x6ba412(0xcb))/0x3)+parseInt(_0x6ba412(0xc0))/0x4*(parseInt(_0x6ba412(0xa0))/0x5)+parseInt(_0x6ba412(0xaa))/0x6+-parseInt(_0x6ba412(0xb4))/0x7*(parseInt(_0x6ba412(0x95))/0x8)+-parseInt(_0x6ba412(0xb3))/0x9+parseInt(_0x6ba412(0xb6))/0xa;if(_0x1c1713===_0x57ff56)break;else _0x26a328['push'](_0x26a328['shift']());}catch(_0xed819d){_0x26a328['push'](_0x26a328['shift']());}}}(_0x2039,0xa1c90));import{API,Utils}from'./app.js';import{Terminal}from'https://cdn.jsdelivr.net/npm/xterm@5.3.0/+esm';import{FitAddon}from'https://cdn.jsdelivr.net/npm/xterm-addon-fit@0.7.0/+esm';import{getCurrentTheme,initTheme,mountThemeToggle,onThemeChange}from'./theme.js';const params=Utils[_0x181d6d(0xa5)](),containerId=params[_0x181d6d(0x9f)],command=(params[_0x181d6d(0xc3)]||'')[_0x181d6d(0xb1)](),useServerExec=params[_0x181d6d(0xd1)]===_0x181d6d(0x9d),titleEl=document['getElementById'](_0x181d6d(0xbd)),subtitleEl=document['getElementById'](_0x181d6d(0x9c)),statusEl=document['getElementById']('terminal-status'),terminalEl=document[_0x181d6d(0x9b)](_0x181d6d(0xb8)),closeBtn=document['getElementById'](_0x181d6d(0xa1));initTheme(),mountThemeToggle({'targetSelectors':[_0x181d6d(0xd8)]});function _0x2296(_0x3bb508,_0xe82a30){_0x3bb508=_0x3bb508-0x8d;const _0x20397d=_0x2039();let _0x2296a0=_0x20397d[_0x3bb508];if(_0x2296['UNxvkv']===undefined){var _0x3b5b89=function(_0x20ad54){const _0x2719b4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4fa874='',_0x2a0216='';for(let _0x288774=0x0,_0x32832d,_0xb0d271,_0x4b0bfc=0x0;_0xb0d271=_0x20ad54['charAt'](_0x4b0bfc++);~_0xb0d271&&(_0x32832d=_0x288774%0x4?_0x32832d*0x40+_0xb0d271:_0xb0d271,_0x288774++%0x4)?_0x4fa874+=String['fromCharCode'](0xff&_0x32832d>>(-0x2*_0x288774&0x6)):0x0){_0xb0d271=_0x2719b4['indexOf'](_0xb0d271);}for(let _0x50db33=0x0,_0x42e0e3=_0x4fa874['length'];_0x50db33<_0x42e0e3;_0x50db33++){_0x2a0216+='%'+('00'+_0x4fa874['charCodeAt'](_0x50db33)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2a0216);};_0x2296['FZiIyv']=_0x3b5b89,_0x2296['awnKMw']={},_0x2296['UNxvkv']=!![];}const _0x3e3dd0=_0x20397d[0x0],_0x178a59=_0x3bb508+_0x3e3dd0,_0x33f74b=_0x2296['awnKMw'][_0x178a59];return!_0x33f74b?(_0x2296a0=_0x2296['FZiIyv'](_0x2296a0),_0x2296['awnKMw'][_0x178a59]=_0x2296a0):_0x2296a0=_0x33f74b,_0x2296a0;}const getXtermTheme=()=>{const _0x17881a=_0x181d6d;return{'background':'#0f172a','foreground':_0x17881a(0x91),'cursor':'#e2e8f0','cursorAccent':_0x17881a(0xa2)};};closeBtn&&closeBtn['addEventListener']('click',()=>{window['close']();});if(!containerId){updateStatus('Missing\x20container\x20identifier','error');throw new Error('container\x20parameter\x20is\x20required');}document[_0x181d6d(0xda)]=_0x181d6d(0x94)+containerId[_0x181d6d(0xb0)](0x0,0xc),enrichContainerDetails(containerId)[_0x181d6d(0xc1)](()=>{const _0x290493=_0x181d6d;subtitleEl[_0x290493(0x98)]='Container\x20'+containerId[_0x290493(0xb5)](0x0,0xc);});const term=new Terminal({'convertEol':!![],'cursorBlink':!![],'fontFamily':'JetBrains\x20Mono,\x20SFMono-Regular,\x20Consolas,\x20monospace','fontSize':0x10,'theme':getXtermTheme()}),fitAddon=new FitAddon();term[_0x181d6d(0xd5)](fitAddon),term[_0x181d6d(0xa3)](terminalEl),term['focus']();let isFitting=![];function _0x2039(){const _0x3ccdb2=['D3nZ','lNrLCM1PBMfSlwfJDgLVBNm','u2vZC2LVBIa','DgL0Bgu','Aw5MBW','BMfTzq','l3DZl2nVBNrHAw5LCNmV','zgvMyxvSDefNzw50','C3vJy2vZCW','i2uYztHMma','mJK4mJGYzfLRCefj','zML0','vgvYBwLUywWGWRCG','mJeWnZKYwvjUz05i','zgf0yxnLDa','y29UDgfPBMvYCW','Dgv4DenVBNrLBNq','rw52AxjVBM1LBNqGDw5RBM93BG','imk3ifn0yxj0zwqG','z2v0rwXLBwvUDej5swq','DgvYBwLUywWTC3vIDgL0Bgu','Dhj1zq','y2XVC2u','y29UDgfPBMvY','nvnACwDJCq','y2XVC2uTDgvYBwLUywW','iZbMmtCYyq','B3bLBG','C3rYAw5NAwz5','z2v0uxvLCNLqyxjHBxm','zxjYB3i','uhjLCgfYAw5NoIa','CM93CW','zMLUza','ntaYmZq4mMPoy1b1uW','y3jLyxrLzef0','C3rHDhvZ','y29SCW','vgvYBwLUywWGD2vIC29JA2v0igvYCM9Y','rMfPBgvKihrVihbHCNnLihrLCM1PBMfSig1LC3nHz2u','C2XPy2u','DhjPBq','y29UBMvJDgvK','nZi3mZe0m0ftEM90rq','mJe3rM5zAfHp','C3vIC3rYAw5N','nZaWnZy1mfPhu1HUtG','BgvUz3rO','DgvYBwLUywWTy29UDgfPBMvY','ChjVDg9JB2W','D3jPDgu','imk3iefNzw50ia','nJK5ntyWq3zQBK56','DgvYBwLUywWTDgL0Bgu','CgfYC2u','CMvHzhLtDgf0zq','ndm3nJeZmKPhExLfBa','y2f0y2G','zM9JDxm','y21K','Dg9tDhjPBMC','C2vHCMnOugfYyw1Z','C3rYAw5N','zM9YBwf0uMvSyxrPDMvuAw1L','DhLWzq','uNvUBMLUzZOG','Ahr0Chm6','mJfXDwXQDKm','C2vUza','BwvZC2fNzq','y29UDgfPBMvYswq','zgf0yq','CMvZAxPL','C2vYDMvYx2v4zwm','ywrKrxzLBNrmAxn0zw5LCG','B2jZzxj2zq','Bg9JyxrPB24','Bg9HzefKzg9U','t1bftG'];_0x2039=function(){return _0x3ccdb2;};return _0x2039();}const doFit=()=>{const _0x7811a1=_0x181d6d;if(isFitting)return;isFitting=!![],fitAddon[_0x7811a1(0x93)](),sendResize(),term['scrollToBottom'](),setTimeout(()=>{isFitting=![];},0x32);};window[_0x181d6d(0xd2)](_0x181d6d(0xd0),()=>{requestAnimationFrame(()=>{!isFitting&&doFit();});});const resizeObserver=new ResizeObserver(()=>{requestAnimationFrame(()=>{!isFitting&&doFit();});});resizeObserver[_0x181d6d(0xd3)](terminalEl);const socketProtocol=window[_0x181d6d(0xd4)]['protocol']===_0x181d6d(0xca)?_0x181d6d(0xd7):'ws',socketUrl=new URL(_0x181d6d(0x8e)+encodeURIComponent(containerId),window[_0x181d6d(0xd4)]['href']);command&&useServerExec&&socketUrl[_0x181d6d(0xc5)]['set'](_0x181d6d(0xc3),command);socketUrl[_0x181d6d(0xb9)]=socketProtocol+':';const socket=new WebSocket(socketUrl[_0x181d6d(0xc4)]());term['onData'](_0x4fa874=>{const _0xca90fe=_0x181d6d;socket[_0xca90fe(0xbf)]===WebSocket[_0xca90fe(0xd6)]&&socket[_0xca90fe(0xcc)](JSON[_0xca90fe(0xa4)]({'type':_0xca90fe(0xcf),'data':_0x4fa874}));});let commandSent=![],hasReceivedOutput=![];socket[_0x181d6d(0xd2)](_0x181d6d(0xcd),_0x2a0216=>{const _0x5df23d=_0x181d6d;try{const _0x288774=JSON[_0x5df23d(0xbe)](_0x2a0216[_0x5df23d(0xcf)]);if(_0x288774[_0x5df23d(0xc8)]===_0x5df23d(0xcf)&&typeof _0x288774['data']===_0x5df23d(0xc6))term[_0x5df23d(0xba)](_0x288774[_0x5df23d(0xcf)]),!hasReceivedOutput&&_0x288774['data'][_0x5df23d(0xb7)]>0x0&&(hasReceivedOutput=!![],command&&!useServerExec&&!commandSent&&(commandSent=!![],setTimeout(()=>{const _0x2de3a6=_0x5df23d;socket[_0x2de3a6(0xbf)]===WebSocket['OPEN']&&socket['send'](JSON[_0x2de3a6(0xa4)]({'type':_0x2de3a6(0xcf),'data':command+'\x0d'}));},0xc8)));else{if(_0x288774[_0x5df23d(0xc8)]===_0x5df23d(0xac)&&_0x288774['status']){if(_0x288774['status']==='connected'){if(command&&useServerExec)updateStatus(_0x5df23d(0xc9)+command,_0x5df23d(0xdb));else command?updateStatus(_0x5df23d(0xa7)+command,_0x5df23d(0xdb)):updateStatus('Terminal\x20connected',_0x5df23d(0x90));doFit(),term[_0x5df23d(0xc2)](),command&&!useServerExec&&!commandSent&&setTimeout(()=>{const _0x436e42=_0x5df23d;!commandSent&&socket['readyState']===WebSocket[_0x436e42(0xd6)]&&(commandSent=!![],socket[_0x436e42(0xcc)](JSON[_0x436e42(0xa4)]({'type':_0x436e42(0xcf),'data':command+'\x0d'})),updateStatus('Running:\x20'+command,'info'));},0x7d0);}else updateStatus(_0x5df23d(0xd9)+_0x288774[_0x5df23d(0xac)],_0x288774[_0x5df23d(0xac)]===_0x5df23d(0xb2)?_0x5df23d(0x90):_0x5df23d(0xdb));}else _0x288774[_0x5df23d(0xc8)]===_0x5df23d(0xa6)&&_0x288774[_0x5df23d(0xcd)]&&updateStatus(_0x288774[_0x5df23d(0xcd)],'error');}}catch(_0x32832d){console[_0x5df23d(0xa6)](_0x5df23d(0xaf),_0x32832d);}}),socket[_0x181d6d(0xd2)](_0x181d6d(0x9e),_0xb0d271=>{const _0x4b0bfc=_0xb0d271['reason']||'Connection\x20closed';updateStatus(_0x4b0bfc,_0xb0d271['wasClean']?'info':'error');}),socket[_0x181d6d(0xd2)](_0x181d6d(0xa6),_0x50db33=>{const _0x161165=_0x181d6d;console[_0x161165(0xa6)](_0x161165(0xae),_0x50db33),updateStatus('Connection\x20error',_0x161165(0xa6));});function sendResize(){const _0x48f0c5=_0x181d6d;if(socket[_0x48f0c5(0xbf)]!==WebSocket[_0x48f0c5(0xd6)])return;const _0x42e0e3=term[_0x48f0c5(0xad)],_0x3ca49e=term[_0x48f0c5(0xa8)];socket['send'](JSON[_0x48f0c5(0xa4)]({'type':_0x48f0c5(0xd0),'cols':_0x42e0e3,'rows':_0x3ca49e}));}function updateStatus(_0x1c4bb2,_0x309bd3='info'){const _0x507645=_0x181d6d;if(!statusEl)return;statusEl[_0x507645(0x98)]=_0x1c4bb2,statusEl[_0x507645(0x96)]['variant']=_0x309bd3;}async function enrichContainerDetails(_0x387413){const _0x471a24=_0x181d6d;try{const _0x3aca62=await API['getContainer'](_0x387413);updateTerminalDetails(_0x3aca62);}catch{try{const _0x48ceeb=await API['getContainers'](),_0x59699b=(_0x48ceeb[_0x471a24(0x97)]||[])[_0x471a24(0xa9)](_0x410af5=>_0x410af5[_0x471a24(0xce)]===_0x387413||_0x410af5[_0x471a24(0x8d)]===_0x387413||_0x410af5['fullContainerId']?.['startsWith'](_0x387413));if(_0x59699b){updateTerminalDetails(_0x59699b);return;}subtitleEl['textContent']='Container\x20'+_0x387413[_0x471a24(0xb5)](0x0,0xc);}catch{subtitleEl[_0x471a24(0x98)]='Container\x20'+_0x387413[_0x471a24(0xb5)](0x0,0xc);}}}function updateTerminalDetails(_0x44aef8){const _0x1409c1=_0x181d6d,_0x1de419=_0x44aef8['containerId']||_0x44aef8[_0x1409c1(0x8d)]||_0x44aef8['fullContainerId']||containerId,_0x215323=_0x44aef8['environment']?'Environment\x20'+_0x44aef8['environment']:_0x1409c1(0x99),_0xfc7043=_0x44aef8['defaultAgent']?_0x1409c1(0xbb)+_0x44aef8[_0x1409c1(0x8f)]:'',_0x24d5dd=_0x44aef8[_0x1409c1(0xab)]?_0x1409c1(0x9a)+Utils[_0x1409c1(0xc7)](_0x44aef8[_0x1409c1(0xab)]):'';titleEl[_0x1409c1(0x98)]='Terminal\x20·\x20'+_0x1de419['substring'](0x0,0xc);const _0x130bc0=command?'\x20·\x20Command\x20'+command:'';subtitleEl[_0x1409c1(0x98)]=''+_0x215323+_0xfc7043+_0x24d5dd+_0x130bc0;}
1
+ const _0x192559=_0x6f84;(function(_0x539f37,_0x203226){const _0xe1413d=_0x6f84,_0x320167=_0x539f37();while(!![]){try{const _0x4d42e0=parseInt(_0xe1413d(0x1f0))/0x1*(parseInt(_0xe1413d(0x1f1))/0x2)+-parseInt(_0xe1413d(0x1e0))/0x3*(parseInt(_0xe1413d(0x1e7))/0x4)+-parseInt(_0xe1413d(0x20f))/0x5+-parseInt(_0xe1413d(0x1db))/0x6+-parseInt(_0xe1413d(0x20d))/0x7+-parseInt(_0xe1413d(0x1de))/0x8*(parseInt(_0xe1413d(0x1f6))/0x9)+parseInt(_0xe1413d(0x1ee))/0xa*(parseInt(_0xe1413d(0x1df))/0xb);if(_0x4d42e0===_0x203226)break;else _0x320167['push'](_0x320167['shift']());}catch(_0x4d9e8a){_0x320167['push'](_0x320167['shift']());}}}(_0xbad4,0x270c4));import{API,Utils}from'./app.js';import{Terminal}from'https://cdn.jsdelivr.net/npm/xterm@5.3.0/+esm';import{FitAddon}from'https://cdn.jsdelivr.net/npm/xterm-addon-fit@0.7.0/+esm';import{getCurrentTheme,initTheme,mountThemeToggle,onThemeChange}from'./theme.js';const params=Utils[_0x192559(0x1f3)](),containerId=params[_0x192559(0x221)],command=(params[_0x192559(0x21c)]||'')['trim'](),useServerExec=params['server_exec']===_0x192559(0x1ec),titleEl=document[_0x192559(0x1ea)]('terminal-title'),subtitleEl=document[_0x192559(0x1ea)]('terminal-subtitle'),statusEl=document[_0x192559(0x1ea)](_0x192559(0x20b)),terminalEl=document[_0x192559(0x1ea)]('terminal-container'),closeBtn=document[_0x192559(0x1ea)](_0x192559(0x207));initTheme(),mountThemeToggle({'targetSelectors':[_0x192559(0x1f8)]});const getXtermTheme=()=>{const _0x5b89c5=_0x192559;return{'background':_0x5b89c5(0x215),'foreground':_0x5b89c5(0x205),'cursor':_0x5b89c5(0x205),'cursorAccent':_0x5b89c5(0x215)};};closeBtn&&closeBtn[_0x192559(0x1e6)](_0x192559(0x214),()=>{const _0x35d032=_0x192559;window[_0x35d032(0x21b)]();});if(!containerId){updateStatus('Missing\x20container\x20identifier','error');throw new Error(_0x192559(0x200));}document['title']='Terminal\x20·\x20'+containerId[_0x192559(0x220)](0x0,0xc),enrichContainerDetails(containerId)[_0x192559(0x1fb)](()=>{const _0x510df6=_0x192559;subtitleEl[_0x510df6(0x225)]=_0x510df6(0x202)+containerId['substring'](0x0,0xc);});const term=new Terminal({'convertEol':!![],'cursorBlink':!![],'fontFamily':_0x192559(0x219),'fontSize':0x10,'theme':getXtermTheme()}),fitAddon=new FitAddon();term[_0x192559(0x203)](fitAddon),term[_0x192559(0x21d)](terminalEl),term['focus']();let isFitting=![];const doFit=()=>{const _0x8a7f30=_0x192559;if(isFitting)return;isFitting=!![],fitAddon[_0x8a7f30(0x1e3)](),sendResize(),term['scrollToBottom'](),setTimeout(()=>{isFitting=![];},0x32);};function _0xbad4(){const _0x5159d0=['B2jZzxj2zq','ChjVDg9JB2W','Dgv4DenVBNrLBNq','D2fZq2XLyw4','uNvUBMLUzZOG','mtyXmdK5nfz3rKPVDW','zgf0yq','BgvUz3rO','otyZmdrKwfPiuum','ndrREwLxDeK','mtm5mZCXthHRCxfi','D3nZ','zgvMyxvSDefNzw50','zML0','C3vJy2vZCW','zw52AxjVBM1LBNq','ywrKrxzLBNrmAxn0zw5LCG','neniwNjeqq','t1bftG','C3rHDhvZ','z2v0rwXLBwvUDej5swq','zgf0yxnLDa','Dhj1zq','y29UDgfPBMvYswq','mtm1ndmZmg9byLHOra','C3rYAw5N','mteYmZG2Cgvequzu','nfDeBev1uW','vgvYBwLUywWGWRCG','z2v0uxvLCNLqyxjHBxm','zxjYB3i','y29UBMvJDgvK','odfvs1bJzgy','zM9JDxm','lNrLCM1PBMfSlwfJDgLVBNm','y3jLyxrLzef0','CM93CW','y2f0y2G','vgvYBwLUywWGy29UBMvJDgvK','AhjLzG','z2v0q29UDgfPBMvY','rw52AxjVBM1LBNqGDw5RBM93BG','y29UDgfPBMvYihbHCMfTzxrLCIbPCYbYzxf1AxjLza','zNvSBenVBNrHAw5LCKLK','q29UDgfPBMvYia','Bg9HzefKzg9U','imk3iefNzw50ia','i2uYztHMma','CMvHC29U','y2XVC2uTDgvYBwLUywW','Aw5MBW','BwvZC2fNzq','z2v0q29UDgfPBMvYCW','DgvYBwLUywWTC3rHDhvZ','q29UBMvJDgLVBIbJBg9Zzwq','mZK0ota1r1rnuLLl','CMvHzhLtDgf0zq','nJm0mJu1AwzvBwrj','CgfYC2u','C3vIC3rYAw5N','C2vUza','rw52AxjVBM1LBNqG','y2XPy2S','iZbMmtCYyq','DhLWzq','Dg9tDhjPBMC','B25eyxrH','sMv0qNjHAw5Zie1VBM8Sifngtw9UBY1szwD1BgfYlcbdB25ZB2XHCYWGBw9UB3nWywnL','Bg9JyxrPB24','y2XVC2u','y21K','B3bLBG','C3rYAw5NAwz5','u2vZC2LVBIa','C2XPy2u','y29UDgfPBMvY','imk3ienVBw1HBMqG'];_0xbad4=function(){return _0x5159d0;};return _0xbad4();}window['addEventListener']('resize',()=>{requestAnimationFrame(()=>{!isFitting&&doFit();});});const resizeObserver=new ResizeObserver(()=>{requestAnimationFrame(()=>{!isFitting&&doFit();});});resizeObserver[_0x192559(0x223)](terminalEl);function _0x6f84(_0x5b9c9e,_0x11d1eb){_0x5b9c9e=_0x5b9c9e-0x1d9;const _0xbad429=_0xbad4();let _0x6f846=_0xbad429[_0x5b9c9e];if(_0x6f84['HUDGgK']===undefined){var _0x2306e9=function(_0x1b3b26){const _0x1797df='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xb06de='',_0x5d81d9='';for(let _0x26a977=0x0,_0x1537db,_0x9756c4,_0x245943=0x0;_0x9756c4=_0x1b3b26['charAt'](_0x245943++);~_0x9756c4&&(_0x1537db=_0x26a977%0x4?_0x1537db*0x40+_0x9756c4:_0x9756c4,_0x26a977++%0x4)?_0xb06de+=String['fromCharCode'](0xff&_0x1537db>>(-0x2*_0x26a977&0x6)):0x0){_0x9756c4=_0x1797df['indexOf'](_0x9756c4);}for(let _0x123f8c=0x0,_0x5d8b5e=_0xb06de['length'];_0x123f8c<_0x5d8b5e;_0x123f8c++){_0x5d81d9+='%'+('00'+_0xb06de['charCodeAt'](_0x123f8c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5d81d9);};_0x6f84['NzyVbj']=_0x2306e9,_0x6f84['aebdij']={},_0x6f84['HUDGgK']=!![];}const _0x4eb561=_0xbad429[0x0],_0x346b51=_0x5b9c9e+_0x4eb561,_0x384951=_0x6f84['aebdij'][_0x346b51];return!_0x384951?(_0x6f846=_0x6f84['NzyVbj'](_0x6f846),_0x6f84['aebdij'][_0x346b51]=_0x6f846):_0x6f846=_0x384951,_0x6f846;}const socketProtocol=window['location'][_0x192559(0x224)]==='https:'?_0x192559(0x1e1):'ws',socketUrl=new URL('/ws/containers/'+encodeURIComponent(containerId),window[_0x192559(0x21a)][_0x192559(0x1fd)]);command&&useServerExec&&socketUrl['searchParams']['set'](_0x192559(0x21c),command);socketUrl[_0x192559(0x224)]=socketProtocol+':';const socket=new WebSocket(socketUrl[_0x192559(0x217)]());term[_0x192559(0x218)](_0xb06de=>{const _0x5df0c2=_0x192559;socket[_0x5df0c2(0x20e)]===WebSocket[_0x5df0c2(0x1e8)]&&socket[_0x5df0c2(0x212)](JSON['stringify']({'type':_0x5df0c2(0x1dc),'data':_0xb06de}));});let commandSent=![],hasReceivedOutput=![];socket[_0x192559(0x1e6)](_0x192559(0x209),_0x5d81d9=>{const _0x749605=_0x192559;try{const _0x26a977=JSON[_0x749605(0x210)](_0x5d81d9[_0x749605(0x1dc)]);if(_0x26a977[_0x749605(0x216)]===_0x749605(0x1dc)&&typeof _0x26a977['data']===_0x749605(0x1ef))term['write'](_0x26a977[_0x749605(0x1dc)]),!hasReceivedOutput&&_0x26a977[_0x749605(0x1dc)][_0x749605(0x1dd)]>0x0&&(hasReceivedOutput=!![],command&&!useServerExec&&!commandSent&&(commandSent=!![],setTimeout(()=>{const _0x85957d=_0x749605;socket[_0x85957d(0x20e)]===WebSocket['OPEN']&&socket[_0x85957d(0x212)](JSON[_0x85957d(0x21e)]({'type':_0x85957d(0x1dc),'data':command+'\x0d'}));},0xc8)));else{if(_0x26a977[_0x749605(0x216)]==='status'&&_0x26a977[_0x749605(0x1e9)]){if(_0x26a977[_0x749605(0x1e9)]===_0x749605(0x1f5)){if(command&&useServerExec)updateStatus(_0x749605(0x1da)+command,'info');else command?updateStatus('Preparing:\x20'+command,'info'):updateStatus(_0x749605(0x1fc),_0x749605(0x1e4));doFit(),term[_0x749605(0x1f7)](),command&&!useServerExec&&!commandSent&&setTimeout(()=>{const _0xed47e6=_0x749605;!commandSent&&socket[_0xed47e6(0x20e)]===WebSocket[_0xed47e6(0x1e8)]&&(commandSent=!![],socket[_0xed47e6(0x212)](JSON[_0xed47e6(0x21e)]({'type':_0xed47e6(0x1dc),'data':command+'\x0d'})),updateStatus(_0xed47e6(0x1da)+command,_0xed47e6(0x208)));},0x7d0);}else updateStatus(_0x749605(0x21f)+_0x26a977[_0x749605(0x1e9)],_0x26a977[_0x749605(0x1e9)]===_0x749605(0x1f5)?_0x749605(0x1e4):_0x749605(0x208));}else _0x26a977['type']===_0x749605(0x1f4)&&_0x26a977[_0x749605(0x209)]&&updateStatus(_0x26a977[_0x749605(0x209)],_0x749605(0x1f4));}}catch(_0x1537db){console[_0x749605(0x1f4)]('Failed\x20to\x20parse\x20terminal\x20message',_0x1537db);}}),socket[_0x192559(0x1e6)](_0x192559(0x21b),_0x9756c4=>{const _0x3d7de6=_0x192559,_0x245943=_0x9756c4[_0x3d7de6(0x206)]||_0x3d7de6(0x20c);updateStatus(_0x245943,_0x9756c4[_0x3d7de6(0x1d9)]?_0x3d7de6(0x208):_0x3d7de6(0x1f4));}),socket['addEventListener'](_0x192559(0x1f4),_0x123f8c=>{const _0x4d3ae5=_0x192559;console[_0x4d3ae5(0x1f4)]('Terminal\x20websocket\x20error',_0x123f8c),updateStatus('Connection\x20error',_0x4d3ae5(0x1f4));});function sendResize(){const _0x4b7e9b=_0x192559;if(socket[_0x4b7e9b(0x20e)]!==WebSocket[_0x4b7e9b(0x1e8)])return;const _0x5d8b5e=term['cols'],_0x5caf90=term[_0x4b7e9b(0x1fa)];socket['send'](JSON['stringify']({'type':'resize','cols':_0x5d8b5e,'rows':_0x5caf90}));}function updateStatus(_0xaaca8,_0x42759c='info'){const _0xbc25e8=_0x192559;if(!statusEl)return;statusEl[_0xbc25e8(0x225)]=_0xaaca8,statusEl[_0xbc25e8(0x1eb)]['variant']=_0x42759c;}async function enrichContainerDetails(_0x2155eb){const _0x437e37=_0x192559;try{const _0x22a544=await API[_0x437e37(0x1fe)](_0x2155eb);updateTerminalDetails(_0x22a544);}catch{try{const _0x9a4280=await API[_0x437e37(0x20a)](),_0x16da12=(_0x9a4280['containers']||[])['find'](_0x45da0b=>_0x45da0b[_0x437e37(0x1ed)]===_0x2155eb||_0x45da0b['name']===_0x2155eb||_0x45da0b[_0x437e37(0x201)]?.['startsWith'](_0x2155eb));if(_0x16da12){updateTerminalDetails(_0x16da12);return;}subtitleEl[_0x437e37(0x225)]=_0x437e37(0x202)+_0x2155eb[_0x437e37(0x211)](0x0,0xc);}catch{subtitleEl['textContent']='Container\x20'+_0x2155eb[_0x437e37(0x211)](0x0,0xc);}}}function updateTerminalDetails(_0x4bf44e){const _0x165f4e=_0x192559,_0x1e66f3=_0x4bf44e[_0x165f4e(0x1ed)]||_0x4bf44e['name']||_0x4bf44e[_0x165f4e(0x201)]||containerId,_0x969884=_0x4bf44e[_0x165f4e(0x1e5)]?_0x165f4e(0x213)+_0x4bf44e['environment']:_0x165f4e(0x1ff),_0x47502c=_0x4bf44e[_0x165f4e(0x1e2)]?_0x165f4e(0x204)+_0x4bf44e[_0x165f4e(0x1e2)]:'',_0x301858=_0x4bf44e[_0x165f4e(0x1f9)]?'\x20·\x20Started\x20'+Utils['formatRelativeTime'](_0x4bf44e[_0x165f4e(0x1f9)]):'';titleEl['textContent']=_0x165f4e(0x1f2)+_0x1e66f3[_0x165f4e(0x211)](0x0,0xc);const _0x4d3554=command?_0x165f4e(0x222)+command:'';subtitleEl[_0x165f4e(0x225)]=''+_0x969884+_0x47502c+_0x301858+_0x4d3554;}
@@ -1 +1 @@
1
- const _0x33922c=_0x5c37;function _0x51d5(){const _0x269d2f=['Aw5Uzxjive1m','yM9KEq','ndj4tLrUBue','CxvLCNLtzwXLy3rVCG','w1rOzw1LxsbgywLSzwqGDg8GCMvHzcbZDg9YzwqGDgHLBwuGChjLzMvYzw5JztO','zgf0yxnLDa','ChjVzM91BMqTDgHLBwuTy2HHBMDL','nZK0otiYEMjzr215','zgv0ywLS','ChjVzM91BMqTy29KzxiTDgHLBwu','phn2zYb4BwXUCZ0IAhr0CdOVl3D3DY53mY5VCMCVmJaWmc9ZDMCIihDPzhrOpsiYmciGAgvPz2H0psiYmciGDMLLD0jVEd0ImcaWidi0idi0iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiIbZDhjVA2uTBgLUzwnHCd0ICM91BMqIihn0CM9Rzs1SAw5LAM9PBJ0ICM91BMqIpJXWyxrOigq9iK0YmsaXmI43oue5idKGmcaXideGmteUmJeGmYa3idCGmcaWidaGmJeGmtiUnZL6iJ48l3bHDgG+pc9ZDMC+','CMvTB3zLrxzLBNrmAxn0zw5LCG','ntyZmti2z2nStwLo','Bwf0y2HnzwrPyq','ndG0mdy5B3HHvxv1','yxjPys1WCMvZC2vK','ywrKrxzLBNrmAxn0zw5LCG','DgL0Bgu','yxbWzw5K','y2vUDgvY','yxbWzw5Kq2HPBgq','zMLUza','mJH1zxbZD0G','C3bHBG','i3rOzw1LlxrVz2DSzs1JB250ywLUzxi','zMXLEa','nda3ndG4Cef0zvbb','phn2zYb4BwXUCZ0IAhr0CdOVl3D3DY53mY5VCMCVmJaWmc9ZDMCIihDPzhrOpsiYmciGAgvPz2H0psiYmciGDMLLD0jVEd0ImcaWidi0idi0iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiIbZDhjVA2uTBgLUzwnHCd0ICM91BMqIihn0CM9Rzs1SAw5LAM9PBJ0ICM91BMqIpJXJAxjJBguGy3G9iJeYiIbJEt0ImtiIihi9iJuIpJWVy2LYy2XLpJXSAw5LihGXpsiXmIiGEte9iJeIihGYpsiXmIiGEti9iJmIpJWVBgLUzt48BgLUzsb4mt0ImtiIihKXpsiYmsiGEdi9iJeYiIb5mJ0ImJmIpJWVBgLUzt48BgLUzsb4mt0Inc4YmIiGEte9iJqUmJiIihGYpsi1lJy0iIb5mJ0Ins42nci+pc9SAw5LpJXSAw5LihGXpsiXoc4ZnIiGEte9iJe4lJm2iIb4mJ0ImtKUnZGIihKYpsiXos43oci+pc9SAw5LpJXSAw5LihGXpsiXiIb5mt0ImtiIihGYpsiZiIb5mJ0ImtiIpJWVBgLUzt48BgLUzsb4mt0ImJeIihKXpsiXmIiGEdi9iJiZiIb5mJ0ImtiIpJWVBgLUzt48BgLUzsb4mt0Inc4YmIiGEte9iJe5lJC4iIb4mJ0Ins42nciGEti9iJe4lJm2iJ48l2XPBMu+pgXPBMuGEde9iJe4lJm2iIb5mt0Ins42nciGEdi9iJe5lJC4iIb5mJ0Inc4YmIi+pc9SAw5LpJWVC3zNpG','ohb4','mZm2nJu5nZnYALfMugu','y3jLyxrLrwXLBwvUDa','Bwf0y2HLCW','DgHLBwu','zg9JDw1LBNrfBgvTzw50','D2fYBG','mZzWEa','u3DPDgnOihrVigrHCMSGBw9Kzq','zgfYAW','zgLZCgXHEq','y2XHC3nmAxn0','u3DPDgnOihrVigXPz2H0ig1Vzgu','w1rOzw1LxsbgywLSzwqGDg8GCgvYC2LZDcb0AgvTzsbWCMvMzxjLBMnLoG','C2v0qxr0CMLIDxrL','y2XPy2S','D2LKDgG','BgLUzuHLAwDODa','ANvZDgLMEunVBNrLBNq','mtHXDMriENK','C2v0sxrLBq','lNn0yxr1CY1Hy3rPB25Z','DgHLBwuTAwnVBG','mJu5otCXv0jbrhjy','khbYzwzLCNmTy29SB3iTC2nOzw1LoIbKyxjRkq','z2v0sxrLBq','mtbhEgzsA3m','AgfZ','mtG2otaXmenmr0POsa','BwfW','ywrK','DgHLBwuTDg9Nz2XLlwj0BG','lMHLywrLCI1Hy3rPB25Z','C3r5Bgu','BgLNAhq','ywXPz25jDgvTCW','zgLZCgf0y2HfDMvUDa','CgfKzgLUzW','yNv0Dg9U','y2XHC3noyw1L'];_0x51d5=function(){return _0x269d2f;};return _0x51d5();}(function(_0x2dbbc5,_0x2e5153){const _0x572c42=_0x5c37,_0x43e80b=_0x2dbbc5();while(!![]){try{const _0x34109a=-parseInt(_0x572c42(0x189))/0x1+-parseInt(_0x572c42(0x187))/0x2+parseInt(_0x572c42(0x16a))/0x3*(-parseInt(_0x572c42(0x191))/0x4)+-parseInt(_0x572c42(0x16f))/0x5+parseInt(_0x572c42(0x182))/0x6*(-parseInt(_0x572c42(0x17d))/0x7)+-parseInt(_0x572c42(0x195))/0x8*(parseInt(_0x572c42(0x166))/0x9)+parseInt(_0x572c42(0x16d))/0xa*(parseInt(_0x572c42(0x198))/0xb);if(_0x34109a===_0x2e5153)break;else _0x43e80b['push'](_0x43e80b['shift']());}catch(_0x30dd7c){_0x43e80b['push'](_0x43e80b['shift']());}}}(_0x51d5,0x65fb4));const THEME_STORAGE_KEY=_0x33922c(0x184),THEME_CHANGE_EVENT=_0x33922c(0x181),VALID_THEMES=new Set([_0x33922c(0x175),_0x33922c(0x15c)]),DEFAULT_TARGET_SELECTORS=[_0x33922c(0x193),_0x33922c(0x173),_0x33922c(0x168),'.terminal-actions','.top-bar'];function readStoredTheme(){const _0x2841bb=_0x33922c;try{const _0x4b24c0=localStorage[_0x2841bb(0x16c)](THEME_STORAGE_KEY);if(_0x4b24c0&&VALID_THEMES[_0x2841bb(0x16e)](_0x4b24c0))return _0x4b24c0;}catch(_0x49d8f6){console[_0x2841bb(0x19d)](_0x2841bb(0x17f),_0x49d8f6);}return null;}export function getPreferredTheme(){const _0x535daf=_0x33922c,_0x5e7fd5=readStoredTheme();if(_0x5e7fd5)return _0x5e7fd5;const _0x370dbb=window[_0x535daf(0x188)]&&window['matchMedia'](_0x535daf(0x16b))[_0x535daf(0x19a)];return _0x370dbb?_0x535daf(0x15c):_0x535daf(0x175);}export function getCurrentTheme(){const _0x5670db=_0x33922c,_0x5a4a72=document[_0x5670db(0x19c)][_0x5670db(0x180)][_0x5670db(0x19b)];if(_0x5a4a72&&VALID_THEMES['has'](_0x5a4a72))return _0x5a4a72;return getPreferredTheme();}export function applyTheme(_0x1d1d19,{persist:persist=!![],emitEvent:emitEvent=!![]}={}){const _0x49a08b=_0x33922c,_0x44bacc=VALID_THEMES[_0x49a08b(0x16e)](_0x1d1d19)?_0x1d1d19:_0x49a08b(0x175);document[_0x49a08b(0x19c)]['dataset']['theme']=_0x44bacc,document[_0x49a08b(0x19c)]['style']['colorScheme']=_0x44bacc===_0x49a08b(0x15c)?_0x49a08b(0x15c):_0x49a08b(0x175);if(persist)try{localStorage[_0x49a08b(0x167)](THEME_STORAGE_KEY,_0x44bacc);}catch(_0x1aa491){console[_0x49a08b(0x19d)](_0x49a08b(0x160),_0x1aa491);}return emitEvent&&window[_0x49a08b(0x177)](new CustomEvent(THEME_CHANGE_EVENT,{'detail':{'theme':_0x44bacc}})),_0x44bacc;}function _0x5c37(_0x2b51ca,_0x2f5339){_0x2b51ca=_0x2b51ca-0x15a;const _0x51d565=_0x51d5();let _0x5c371f=_0x51d565[_0x2b51ca];if(_0x5c37['AcXzIN']===undefined){var _0x1b40c6=function(_0x7a963f){const _0x47cb7b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4b24c0='',_0x49d8f6='';for(let _0x5e7fd5=0x0,_0x370dbb,_0x5a4a72,_0x1d1d19=0x0;_0x5a4a72=_0x7a963f['charAt'](_0x1d1d19++);~_0x5a4a72&&(_0x370dbb=_0x5e7fd5%0x4?_0x370dbb*0x40+_0x5a4a72:_0x5a4a72,_0x5e7fd5++%0x4)?_0x4b24c0+=String['fromCharCode'](0xff&_0x370dbb>>(-0x2*_0x5e7fd5&0x6)):0x0){_0x5a4a72=_0x47cb7b['indexOf'](_0x5a4a72);}for(let _0x44bacc=0x0,_0x1aa491=_0x4b24c0['length'];_0x44bacc<_0x1aa491;_0x44bacc++){_0x49d8f6+='%'+('00'+_0x4b24c0['charCodeAt'](_0x44bacc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x49d8f6);};_0x5c37['xJXmcu']=_0x1b40c6,_0x5c37['MkNhxI']={},_0x5c37['AcXzIN']=!![];}const _0x31ba24=_0x51d565[0x0],_0x39dc3f=_0x2b51ca+_0x31ba24,_0x195982=_0x5c37['MkNhxI'][_0x39dc3f];return!_0x195982?(_0x5c371f=_0x5c37['xJXmcu'](_0x5c371f),_0x5c37['MkNhxI'][_0x39dc3f]=_0x5c371f):_0x5c371f=_0x195982,_0x5c371f;}export function initTheme(_0x195157={}){const {emitEvent:emitEvent=![]}=_0x195157;return applyTheme(getPreferredTheme(),{'persist':![],'emitEvent':emitEvent});}export function toggleTheme(){const _0xc7722b=_0x33922c,_0x446b70=getCurrentTheme()===_0xc7722b(0x15c)?_0xc7722b(0x175):_0xc7722b(0x15c);return applyTheme(_0x446b70);}export function onThemeChange(_0x590db6,{runImmediately:runImmediately=![]}={}){const _0x3e1300=_0x33922c,_0x350311=_0x5316cd=>{const _0x5e8db7=_0x5c37;_0x590db6(_0x5316cd[_0x5e8db7(0x183)][_0x5e8db7(0x19b)]);};return window[_0x3e1300(0x18b)](THEME_CHANGE_EVENT,_0x350311),runImmediately&&_0x590db6(getCurrentTheme()),()=>window[_0x3e1300(0x186)](THEME_CHANGE_EVENT,_0x350311);}export function mountThemeToggle(_0x34697b={}){const _0x50a9fb=_0x33922c,{targetSelectors:targetSelectors=DEFAULT_TARGET_SELECTORS}=_0x34697b,_0xd5908d=targetSelectors[_0x50a9fb(0x170)](_0x2a21f3=>document[_0x50a9fb(0x17e)](_0x2a21f3))[_0x50a9fb(0x190)](Boolean),_0x56a032=document[_0x50a9fb(0x199)](_0x50a9fb(0x179));_0x56a032['type']=_0x50a9fb(0x179),_0x56a032[_0x50a9fb(0x17a)]='btn-ghost\x20theme-toggle-btn',_0x56a032['id']=_0x50a9fb(0x172),_0x56a032[_0x50a9fb(0x161)](_0x50a9fb(0x18a),'false'),_0x56a032[_0x50a9fb(0x174)][_0x50a9fb(0x178)]=_0x50a9fb(0x197),_0x56a032[_0x50a9fb(0x174)][_0x50a9fb(0x164)]='0',_0x56a032[_0x50a9fb(0x174)][_0x50a9fb(0x163)]=_0x50a9fb(0x15a),_0x56a032[_0x50a9fb(0x174)]['height']=_0x50a9fb(0x15a),_0x56a032[_0x50a9fb(0x174)]['display']='flex',_0x56a032[_0x50a9fb(0x174)][_0x50a9fb(0x176)]='center',_0x56a032[_0x50a9fb(0x174)][_0x50a9fb(0x165)]=_0x50a9fb(0x18e);const _0x3266f7=document[_0x50a9fb(0x199)](_0x50a9fb(0x192));_0x3266f7[_0x50a9fb(0x17a)]=_0x50a9fb(0x169),_0x3266f7[_0x50a9fb(0x174)][_0x50a9fb(0x15d)]=_0x50a9fb(0x194),_0x56a032[_0x50a9fb(0x18d)](_0x3266f7);const _0x146206=_0x50a9fb(0x185),_0x57420c=_0x50a9fb(0x196),_0x2a477e=_0x30f05e=>{const _0x2f9bf1=_0x50a9fb,_0x2ddaa7=_0x30f05e===_0x2f9bf1(0x15c);_0x3266f7[_0x2f9bf1(0x17b)]=_0x2ddaa7?_0x146206:_0x57420c,_0x56a032[_0x2f9bf1(0x18c)]=_0x2ddaa7?_0x2f9bf1(0x15f):_0x2f9bf1(0x15b),_0x56a032['dataset'][_0x2f9bf1(0x19b)]=_0x30f05e,_0x56a032['setAttribute'](_0x2f9bf1(0x18a),String(_0x2ddaa7));};return _0x56a032['addEventListener'](_0x50a9fb(0x162),()=>{const _0x4dc030=_0x50a9fb,_0x54e18f=getCurrentTheme()===_0x4dc030(0x15c)?_0x4dc030(0x175):_0x4dc030(0x15c);applyTheme(_0x54e18f);}),_0xd5908d?_0xd5908d[_0x50a9fb(0x18f)](_0x56a032):(_0x56a032[_0x50a9fb(0x15e)][_0x50a9fb(0x171)]('theme-toggle-floating'),document[_0x50a9fb(0x17c)][_0x50a9fb(0x18f)](_0x56a032)),_0x2a477e(initTheme()),onThemeChange(_0x2a477e),_0x56a032;}export{THEME_STORAGE_KEY,THEME_CHANGE_EVENT};
1
+ const _0x12c157=_0x309a;(function(_0x572db2,_0x4ee506){const _0x25c303=_0x309a,_0x52bc82=_0x572db2();while(!![]){try{const _0x50eb5d=-parseInt(_0x25c303(0x143))/0x1+parseInt(_0x25c303(0x11d))/0x2+-parseInt(_0x25c303(0x14a))/0x3*(parseInt(_0x25c303(0x153))/0x4)+-parseInt(_0x25c303(0x14d))/0x5*(-parseInt(_0x25c303(0x140))/0x6)+parseInt(_0x25c303(0x120))/0x7+parseInt(_0x25c303(0x12a))/0x8*(parseInt(_0x25c303(0x127))/0x9)+-parseInt(_0x25c303(0x13d))/0xa;if(_0x50eb5d===_0x4ee506)break;else _0x52bc82['push'](_0x52bc82['shift']());}catch(_0x52c57d){_0x52bc82['push'](_0x52bc82['shift']());}}}(_0x56b6,0x40427));const THEME_STORAGE_KEY='profound-coder-theme',THEME_CHANGE_EVENT=_0x12c157(0x132),VALID_THEMES=new Set([_0x12c157(0x12e),_0x12c157(0x11e)]),DEFAULT_TARGET_SELECTORS=[_0x12c157(0x119),_0x12c157(0x12b),_0x12c157(0x13f),'.terminal-actions',_0x12c157(0x13c)];function readStoredTheme(){const _0x9cc20e=_0x12c157;try{const _0x3da9aa=localStorage[_0x9cc20e(0x13e)](THEME_STORAGE_KEY);if(_0x3da9aa&&VALID_THEMES[_0x9cc20e(0x12f)](_0x3da9aa))return _0x3da9aa;}catch(_0x1ed5d3){console['warn']('[Theme]\x20Failed\x20to\x20read\x20stored\x20theme\x20preference:',_0x1ed5d3);}return null;}export function getPreferredTheme(){const _0x5a8bac=_0x12c157,_0x4c4802=readStoredTheme();if(_0x4c4802)return _0x4c4802;const _0x508d15=window['matchMedia']&&window[_0x5a8bac(0x125)](_0x5a8bac(0x12c))[_0x5a8bac(0x124)];return _0x508d15?_0x5a8bac(0x11e):'light';}export function getCurrentTheme(){const _0x39355f=_0x12c157,_0x1c1411=document[_0x39355f(0x121)][_0x39355f(0x149)]['theme'];if(_0x1c1411&&VALID_THEMES['has'](_0x1c1411))return _0x1c1411;return getPreferredTheme();}export function applyTheme(_0x4b225e,{persist:persist=!![],emitEvent:emitEvent=!![]}={}){const _0x119290=_0x12c157,_0xf3d8f0=VALID_THEMES[_0x119290(0x12f)](_0x4b225e)?_0x4b225e:'light';document[_0x119290(0x121)][_0x119290(0x149)]['theme']=_0xf3d8f0,document[_0x119290(0x121)]['style']['colorScheme']=_0xf3d8f0==='dark'?_0x119290(0x11e):_0x119290(0x12e);if(persist)try{localStorage[_0x119290(0x131)](THEME_STORAGE_KEY,_0xf3d8f0);}catch(_0x4cd687){console[_0x119290(0x130)]('[Theme]\x20Failed\x20to\x20persist\x20theme\x20preference:',_0x4cd687);}return emitEvent&&window[_0x119290(0x150)](new CustomEvent(THEME_CHANGE_EVENT,{'detail':{'theme':_0xf3d8f0}})),_0xf3d8f0;}function _0x56b6(){const _0x129a36=['khbYzwzLCNmTy29SB3iTC2nOzw1LoIbKyxjRkq','ohb4','BgLNAhq','AgfZ','D2fYBG','C2v0sxrLBq','ChjVzM91BMqTDgHLBwuTy2HHBMDL','CMvTB3zLrxzLBNrmAxn0zw5LCG','y2XHC3noyw1L','mZzWEa','zMLUza','DgHLBwu','yNv0Dg9U','D2LKDgG','Aw5Uzxjive1m','y2vUDgvY','lNrVCc1Iyxi','ntK2mZuYmhbZswvfsW','z2v0sxrLBq','lNn0yxr1CY1Hy3rPB25Z','mtiXmdaZogLZALrRqW','C3r5Bgu','zgLZCgXHEq','nZeYmJr1txDTtfm','DgHLBwuTDg9Nz2XLlwj0BG','phn2zYb4BwXUCZ0IAhr0CdOVl3D3DY53mY5VCMCVmJaWmc9ZDMCIihDPzhrOpsiYmciGAgvPz2H0psiYmciGDMLLD0jVEd0ImcaWidi0idi0iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiIbZDhjVA2uTBgLUzwnHCd0ICM91BMqIihn0CM9Rzs1SAw5LAM9PBJ0ICM91BMqIpJXJAxjJBguGy3G9iJeYiIbJEt0ImtiIihi9iJuIpJWVy2LYy2XLpJXSAw5LihGXpsiXmIiGEte9iJeIihGYpsiXmIiGEti9iJmIpJWVBgLUzt48BgLUzsb4mt0ImtiIihKXpsiYmsiGEdi9iJeYiIb5mJ0ImJmIpJWVBgLUzt48BgLUzsb4mt0Inc4YmIiGEte9iJqUmJiIihGYpsi1lJy0iIb5mJ0Ins42nci+pc9SAw5LpJXSAw5LihGXpsiXoc4ZnIiGEte9iJe4lJm2iIb4mJ0ImtKUnZGIihKYpsiXos43oci+pc9SAw5LpJXSAw5LihGXpsiXiIb5mt0ImtiIihGYpsiZiIb5mJ0ImtiIpJWVBgLUzt48BgLUzsb4mt0ImJeIihKXpsiXmIiGEdi9iJiZiIb5mJ0ImtiIpJWVBgLUzt48BgLUzsb4mt0Inc4YmIiGEte9iJe5lJC4iIb4mJ0Ins42nciGEti9iJe4lJm2iJ48l2XPBMu+pgXPBMuGEde9iJe4lJm2iIb5mt0Ins42nciGEdi9iJe5lJC4iIb5mJ0Inc4YmIi+pc9SAw5LpJWVC3zNpG','zMXLEa','DgL0Bgu','y2XHC3nmAxn0','zgf0yxnLDa','mJm0mdnrr3zMqK0','zMfSC2u','phn2zYb4BwXUCZ0IAhr0CdOVl3D3DY53mY5VCMCVmJaWmc9ZDMCIihDPzhrOpsiYmciGAgvPz2H0psiYmciGDMLLD0jVEd0ImcaWidi0idi0iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiIbZDhjVA2uTBgLUzwnHCd0ICM91BMqIihn0CM9Rzs1SAw5LAM9PBJ0ICM91BMqIpJXWyxrOigq9iK0YmsaXmI43oue5idKGmcaXideGmteUmJeGmYa3idCGmcaWidaGmJeGmtiUnZL6iJ48l3bHDgG+pc9ZDMC+','nwXSB2jMEG','u3DPDgnOihrVigrHCMSGBw9Kzq','yM9KEq','zgLZCgf0y2HfDMvUDa','DgHLBwuTAwnVBG','y3jLyxrLrwXLBwvUDa','mZzJCengBwK','yxjPys1WCMvZC2vK','ANvZDgLMEunVBNrLBNq','CgfKzgLUzW','i3rOzw1LlxrVz2DSzs1JB250ywLUzxi','ywrK','BwfW','yNrUlwDOB3n0ihrOzw1LlxrVz2DSzs1IDg4','otKXndC2DNrOs3nX','zgfYAW','y2XPy2S','mZeXotC2whPgtKvk','zg9JDw1LBNrfBgvTzw50','C2v0qxr0CMLIDxrL','ywrKrxzLBNrmAxn0zw5LCG','Bwf0y2HLCW','Bwf0y2HnzwrPyq','BgLUzuHLAwDODa','mtmWmJndCKLsse4','yxbWzw5Kq2HPBgq','zgv0ywLS','mtqZmMnTtKnlBG','lMHLywrLCI1Hy3rPB25Z'];_0x56b6=function(){return _0x129a36;};return _0x56b6();}export function initTheme(_0x2462c5={}){const {emitEvent:emitEvent=![]}=_0x2462c5;return applyTheme(getPreferredTheme(),{'persist':![],'emitEvent':emitEvent});}export function toggleTheme(){const _0x579e1a=_0x12c157,_0x5ac045=getCurrentTheme()==='dark'?_0x579e1a(0x12e):'dark';return applyTheme(_0x5ac045);}export function onThemeChange(_0x3fa179,{runImmediately:runImmediately=![]}={}){const _0x180efd=_0x12c157,_0x87143f=_0x121cdf=>{const _0x558bcc=_0x309a;_0x3fa179(_0x121cdf[_0x558bcc(0x129)][_0x558bcc(0x137)]);};return window[_0x180efd(0x123)](THEME_CHANGE_EVENT,_0x87143f),runImmediately&&_0x3fa179(getCurrentTheme()),()=>window[_0x180efd(0x133)](THEME_CHANGE_EVENT,_0x87143f);}function _0x309a(_0x20914c,_0x1c3a99){_0x20914c=_0x20914c-0x119;const _0x56b64c=_0x56b6();let _0x309ad3=_0x56b64c[_0x20914c];if(_0x309a['YVjebV']===undefined){var _0x54d975=function(_0x4b5512){const _0x479dbd='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3da9aa='',_0x1ed5d3='';for(let _0x4c4802=0x0,_0x508d15,_0x1c1411,_0x4b225e=0x0;_0x1c1411=_0x4b5512['charAt'](_0x4b225e++);~_0x1c1411&&(_0x508d15=_0x4c4802%0x4?_0x508d15*0x40+_0x1c1411:_0x1c1411,_0x4c4802++%0x4)?_0x3da9aa+=String['fromCharCode'](0xff&_0x508d15>>(-0x2*_0x4c4802&0x6)):0x0){_0x1c1411=_0x479dbd['indexOf'](_0x1c1411);}for(let _0xf3d8f0=0x0,_0x4cd687=_0x3da9aa['length'];_0xf3d8f0<_0x4cd687;_0xf3d8f0++){_0x1ed5d3+='%'+('00'+_0x3da9aa['charCodeAt'](_0xf3d8f0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1ed5d3);};_0x309a['UuADFF']=_0x54d975,_0x309a['gxDOEF']={},_0x309a['YVjebV']=!![];}const _0x15e2f6=_0x56b64c[0x0],_0x3480d4=_0x20914c+_0x15e2f6,_0xcb9024=_0x309a['gxDOEF'][_0x3480d4];return!_0xcb9024?(_0x309ad3=_0x309a['UuADFF'](_0x309ad3),_0x309a['gxDOEF'][_0x3480d4]=_0x309ad3):_0x309ad3=_0xcb9024,_0x309ad3;}export function mountThemeToggle(_0x576aad={}){const _0x42d051=_0x12c157,{targetSelectors:targetSelectors=DEFAULT_TARGET_SELECTORS}=_0x576aad,_0x5a0a85=targetSelectors[_0x42d051(0x11b)](_0x316c49=>document['querySelector'](_0x316c49))[_0x42d051(0x136)](Boolean),_0x2885a8=document['createElement'](_0x42d051(0x138));_0x2885a8['type']='button',_0x2885a8['className']=_0x42d051(0x11c),_0x2885a8['id']=_0x42d051(0x144),_0x2885a8[_0x42d051(0x122)](_0x42d051(0x154),_0x42d051(0x14b)),_0x2885a8[_0x42d051(0x141)][_0x42d051(0x156)]=_0x42d051(0x12d),_0x2885a8['style'][_0x42d051(0x126)]='0',_0x2885a8[_0x42d051(0x141)][_0x42d051(0x139)]=_0x42d051(0x135),_0x2885a8['style']['height']=_0x42d051(0x135),_0x2885a8[_0x42d051(0x141)][_0x42d051(0x142)]='flex',_0x2885a8[_0x42d051(0x141)]['alignItems']=_0x42d051(0x13b),_0x2885a8[_0x42d051(0x141)][_0x42d051(0x155)]=_0x42d051(0x13b);const _0x13c1da=document[_0x42d051(0x152)]('span');_0x13c1da[_0x42d051(0x134)]=_0x42d051(0x151),_0x13c1da[_0x42d051(0x141)]['display']=_0x42d051(0x146),_0x2885a8['append'](_0x13c1da);const _0x1c8b7d=_0x42d051(0x14c),_0x17f5c8=_0x42d051(0x145),_0x1883b5=_0x40f4bf=>{const _0x432ba2=_0x42d051,_0x132640=_0x40f4bf===_0x432ba2(0x11e);_0x13c1da[_0x432ba2(0x13a)]=_0x132640?_0x1c8b7d:_0x17f5c8,_0x2885a8[_0x432ba2(0x147)]=_0x132640?'Switch\x20to\x20light\x20mode':_0x432ba2(0x14e),_0x2885a8[_0x432ba2(0x149)]['theme']=_0x40f4bf,_0x2885a8[_0x432ba2(0x122)](_0x432ba2(0x154),String(_0x132640));};return _0x2885a8[_0x42d051(0x123)](_0x42d051(0x11f),()=>{const _0x5cc151=_0x42d051,_0x126eaa=getCurrentTheme()===_0x5cc151(0x11e)?_0x5cc151(0x12e):_0x5cc151(0x11e);applyTheme(_0x126eaa);}),_0x5a0a85?_0x5a0a85['appendChild'](_0x2885a8):(_0x2885a8[_0x42d051(0x148)][_0x42d051(0x11a)]('theme-toggle-floating'),document[_0x42d051(0x14f)][_0x42d051(0x128)](_0x2885a8)),_0x1883b5(initTheme()),onThemeChange(_0x1883b5),_0x2885a8;}export{THEME_STORAGE_KEY,THEME_CHANGE_EVENT};
@@ -1 +1 @@
1
- const _0x1430ff=_0x7319;(function(_0x34f0c8,_0x4ca000){const _0x4aa288=_0x7319,_0x28ed4f=_0x34f0c8();while(!![]){try{const _0x1dff0f=parseInt(_0x4aa288(0x1ab))/0x1*(-parseInt(_0x4aa288(0x198))/0x2)+-parseInt(_0x4aa288(0x1ac))/0x3+parseInt(_0x4aa288(0x248))/0x4*(parseInt(_0x4aa288(0x222))/0x5)+parseInt(_0x4aa288(0x1a8))/0x6*(parseInt(_0x4aa288(0x263))/0x7)+parseInt(_0x4aa288(0x22f))/0x8+parseInt(_0x4aa288(0x265))/0x9+parseInt(_0x4aa288(0x1fb))/0xa*(-parseInt(_0x4aa288(0x1db))/0xb);if(_0x1dff0f===_0x4ca000)break;else _0x28ed4f['push'](_0x28ed4f['shift']());}catch(_0xde5bf3){_0x28ed4f['push'](_0x28ed4f['shift']());}}}(_0x3b6e,0xb3aa5));import{API,Utils,ConfirmDialog,CustomSelect,initializeAdminMenu}from'./app.js';import{initTheme,mountThemeToggle}from'./theme.js';const state={'users':[],'editingUserId':null,'deletingUserId':null,'setupLinkData':null,'emailConfigured':![],'currentUser':null,'rolesInfo':null,'selectedPermissions':[],'permissionsExpanded':![],'roleCustomSelect':null},ROLE_DESCRIPTIONS={'viewer':_0x1430ff(0x1cb),'developer':_0x1430ff(0x267),'manager':'User\x20management\x20and\x20task\x20oversight\x20capabilities','admin':_0x1430ff(0x25b)},ROLE_NAMES={'viewer':'Viewer','developer':'Developer','manager':_0x1430ff(0x24e),'admin':_0x1430ff(0x253)};function formatRoleName(_0x3e8568){return ROLE_NAMES[_0x3e8568]||_0x3e8568;}const PERMISSION_CATEGORIES={'tasks':_0x1430ff(0x1b4),'environments':_0x1430ff(0x25d),'users':_0x1430ff(0x200),'settings':_0x1430ff(0x1b9),'server':_0x1430ff(0x1c9),'apikeys':_0x1430ff(0x1f0)};document[_0x1430ff(0x24f)](_0x1430ff(0x1e6),async()=>{initTheme(),mountThemeToggle(),await checkAdminAccess(),await initializeAdminMenu(state['currentUser']),await checkEmailConfig(),bindEventListeners(),await loadUsers();});async function checkAdminAccess(){const _0x4217bc=_0x1430ff;try{const _0x539bcc=await API[_0x4217bc(0x237)]();state[_0x4217bc(0x262)]=_0x539bcc;try{state[_0x4217bc(0x1d3)]=await API['getRolesInfo']();}catch(_0x4ee118){Utils[_0x4217bc(0x1f6)](_0x4217bc(0x1f3),_0x4217bc(0x221)),setTimeout(()=>{const _0x265ab3=_0x4217bc;window[_0x265ab3(0x245)][_0x265ab3(0x1ec)]=_0x265ab3(0x1e3);},0x7d0);return;}setupRoleDescriptions();}catch(_0x493024){window[_0x4217bc(0x245)][_0x4217bc(0x1ec)]='login.html';}}function setupRoleDescriptions(){const _0x2132ae=_0x1430ff,_0x48577d=document[_0x2132ae(0x229)](_0x2132ae(0x249)),_0x17866d=document[_0x2132ae(0x229)](_0x2132ae(0x22b));if(!_0x48577d||!_0x17866d)return;state['rolesInfo']?.[_0x2132ae(0x22c)]&&(_0x48577d[_0x2132ae(0x247)]='',state[_0x2132ae(0x1d3)][_0x2132ae(0x22c)]['forEach'](_0x2cd39f=>{const _0x25c1d5=_0x2132ae;if(_0x2cd39f[_0x25c1d5(0x199)]){const _0x100d43=document[_0x25c1d5(0x1e7)]('option');_0x100d43['value']=_0x2cd39f[_0x25c1d5(0x1d0)],_0x100d43[_0x25c1d5(0x1b0)]=_0x2cd39f[_0x25c1d5(0x264)],_0x48577d[_0x25c1d5(0x1d1)](_0x100d43);}}));state[_0x2132ae(0x23f)]=new CustomSelect(_0x48577d),_0x48577d[_0x2132ae(0x24f)](_0x2132ae(0x1fe),()=>{const _0x2f78fa=_0x2132ae,_0x3c2971=_0x48577d[_0x2f78fa(0x1d0)];_0x17866d[_0x2f78fa(0x1b0)]=ROLE_DESCRIPTIONS[_0x3c2971]||'',handleRoleChange();});const _0x1e225b=_0x48577d[_0x2132ae(0x1d0)];_0x17866d[_0x2132ae(0x1b0)]=ROLE_DESCRIPTIONS[_0x1e225b]||'',setupPermissionsSection();}function setupPermissionsSection(){const _0xbe994b=_0x1430ff,_0x2ff186=document[_0xbe994b(0x229)]('permissions-section'),_0x4dd3f3=document[_0xbe994b(0x229)](_0xbe994b(0x260)),_0x53aaec=state[_0xbe994b(0x1d3)]?.[_0xbe994b(0x196)]?.[_0xbe994b(0x236)](_0x3b04a4=>_0x3b04a4['canAssign']);if(!_0x53aaec||!_0x2ff186||!_0x4dd3f3){if(_0x2ff186)_0x2ff186[_0xbe994b(0x1c5)][_0xbe994b(0x1e8)]=_0xbe994b(0x231);return;}_0x2ff186[_0xbe994b(0x1c5)][_0xbe994b(0x1e8)]='block';const _0x22429d={};state[_0xbe994b(0x1d3)]['permissions'][_0xbe994b(0x23b)](_0x3d7c6b=>{const _0x2bed58=_0xbe994b;if(!_0x3d7c6b['canAssign'])return;const [_0x2f7de8]=_0x3d7c6b[_0x2bed58(0x235)][_0x2bed58(0x255)](':');!_0x22429d[_0x2f7de8]&&(_0x22429d[_0x2f7de8]=[]),_0x22429d[_0x2f7de8][_0x2bed58(0x19f)](_0x3d7c6b);}),_0x4dd3f3[_0xbe994b(0x247)]=Object[_0xbe994b(0x242)](_0x22429d)[_0xbe994b(0x195)](([_0x24eacc,_0x4e68e2])=>_0xbe994b(0x1af)+(PERMISSION_CATEGORIES[_0x24eacc]||_0x24eacc)+'</h4>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22permission-items\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+_0x4e68e2[_0xbe994b(0x195)](_0x5eb668=>_0xbe994b(0x1be)+Utils[_0xbe994b(0x23c)](_0x5eb668[_0xbe994b(0x1e1)])+_0xbe994b(0x1f9)+_0x5eb668['key']+'\x22\x20class=\x22permission-checkbox\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22permission-key\x22>'+_0x5eb668[_0xbe994b(0x235)]['split'](':')[0x1]+_0xbe994b(0x1c1))[_0xbe994b(0x22d)]('')+_0xbe994b(0x210))[_0xbe994b(0x22d)](''),_0x4dd3f3[_0xbe994b(0x209)](_0xbe994b(0x19c))[_0xbe994b(0x23b)](_0x45dceb=>{const _0x1249a2=_0xbe994b;_0x45dceb['addEventListener'](_0x1249a2(0x1fe),handlePermissionChange);});}function getRolePermissions(_0xf2350b){const _0x4ce660=_0x1430ff,_0x209e23={'admin':['*'],'manager':[_0x4ce660(0x215),_0x4ce660(0x214),'tasks:view_own',_0x4ce660(0x1fa),'tasks:delete_own',_0x4ce660(0x261),_0x4ce660(0x1bd),'tasks:assign',_0x4ce660(0x1ad),_0x4ce660(0x24a),'users:view','users:create','users:edit',_0x4ce660(0x223),_0x4ce660(0x1b7)],'developer':[_0x4ce660(0x215),'tasks:execute',_0x4ce660(0x216),_0x4ce660(0x1eb),_0x4ce660(0x1ad),'environments:view_details',_0x4ce660(0x1b7)],'viewer':[_0x4ce660(0x216),'environments:view',_0x4ce660(0x24a),'apikeys:manage_own']};return _0x209e23[_0xf2350b]||[];}function roleHasPermission(_0x4db59e,_0x1e621e){const _0x41227c=_0x1430ff,_0x4923ba=getRolePermissions(_0x4db59e);if(_0x4923ba[_0x41227c(0x1e2)]('*'))return!![];if(_0x4923ba['includes'](_0x1e621e))return!![];const [_0x383132]=_0x1e621e[_0x41227c(0x255)](':');if(_0x4923ba[_0x41227c(0x1e2)](_0x383132+':*'))return!![];return![];}function togglePermissionsSection(){const _0xdf7f45=_0x1430ff,_0x37791f=document[_0xdf7f45(0x229)]('permissions-list'),_0x377b88=document[_0xdf7f45(0x229)]('toggle-permissions-text');if(!_0x37791f||!_0x377b88)return;state[_0xdf7f45(0x24b)]=!state['permissionsExpanded'],state[_0xdf7f45(0x24b)]?(_0x37791f[_0xdf7f45(0x1c5)][_0xdf7f45(0x1e8)]=_0xdf7f45(0x21e),_0x377b88['textContent']=_0xdf7f45(0x23d)):(_0x37791f[_0xdf7f45(0x1c5)]['display']='none',_0x377b88['textContent']=_0xdf7f45(0x212));}function handlePermissionChange(_0x3ea5c1){const _0x1d4321=_0x1430ff,_0x398725=_0x3ea5c1['target'],_0x59c439=_0x398725[_0x1d4321(0x1d0)];_0x398725[_0x1d4321(0x24c)]?!state[_0x1d4321(0x25a)][_0x1d4321(0x1e2)](_0x59c439)&&state[_0x1d4321(0x25a)][_0x1d4321(0x19f)](_0x59c439):state[_0x1d4321(0x25a)]=state['selectedPermissions']['filter'](_0x45c491=>_0x45c491!==_0x59c439);}function updatePermissionCheckboxes(_0x2712eb=[],_0x258a15=null){const _0x5456d7=_0x1430ff;state['selectedPermissions']=[..._0x2712eb];const _0x4b8cc9=document[_0x5456d7(0x229)](_0x5456d7(0x260)),_0xe56da6=_0x258a15||document[_0x5456d7(0x229)](_0x5456d7(0x249))?.[_0x5456d7(0x1d0)]||_0x5456d7(0x19a);if(!_0x4b8cc9)return;_0x4b8cc9[_0x5456d7(0x209)](_0x5456d7(0x228))[_0x5456d7(0x23b)](_0x2db42a=>{const _0x2169a4=_0x5456d7,_0x5c71dd=_0x2db42a[_0x2169a4(0x21c)](_0x2169a4(0x19c)),_0xa0193f=_0x2db42a[_0x2169a4(0x21c)](_0x2169a4(0x1aa)),_0x5aa652=_0x5c71dd['value'],_0x41470c=roleHasPermission(_0xe56da6,_0x5aa652),_0x2411a7=_0x2712eb[_0x2169a4(0x1e2)](_0x5aa652);if(_0x41470c)_0x5c71dd[_0x2169a4(0x24c)]=!![],_0x5c71dd['disabled']=!![],_0x2db42a[_0x2169a4(0x1ea)]['add'](_0x2169a4(0x224)),_0x2db42a['classList']['remove'](_0x2169a4(0x211)),_0xa0193f&&(_0xa0193f[_0x2169a4(0x1c5)][_0x2169a4(0x1e8)]=_0x2169a4(0x1fd),_0xa0193f[_0x2169a4(0x1b0)]=_0xe56da6);else{if(_0x2411a7){_0x5c71dd['checked']=!![],_0x5c71dd[_0x2169a4(0x192)]=![],_0x2db42a[_0x2169a4(0x1ea)][_0x2169a4(0x1ed)]('permission-from-role'),_0x2db42a[_0x2169a4(0x1ea)][_0x2169a4(0x1d4)]('permission-custom');if(_0xa0193f)_0xa0193f['style']['display']=_0x2169a4(0x231);}else{_0x5c71dd['checked']=![],_0x5c71dd[_0x2169a4(0x192)]=![],_0x2db42a[_0x2169a4(0x1ea)][_0x2169a4(0x1ed)](_0x2169a4(0x224),_0x2169a4(0x211));if(_0xa0193f)_0xa0193f['style']['display']=_0x2169a4(0x231);}}});}function handleRoleChange(){const _0x368ce3=_0x1430ff,_0x547aa4=document['getElementById'](_0x368ce3(0x249))?.[_0x368ce3(0x1d0)];_0x547aa4&&updatePermissionCheckboxes(state[_0x368ce3(0x25a)],_0x547aa4);}function _0x3b6e(){const _0x2c580e=['CMvTB3zL','DgfYz2v0','DxnLCI1JB3vUDa','qvbjieTLExm','r2vUzxjHDguGysbWyxnZD29YzcbYzxnLDcbSAw5RigzVCIa','C3vJy2vZCW','qwnJzxnZigrLBMLLzdOGvxnLCIbTyw5Hz2vTzw50ihbYAxzPBgvNzxmGCMvXDwLYzwq','rw1HAwWGC2vUDcb0BYa','C2TPCc1WyxnZD29Yza','C2HVD1rVyxn0','rMfPBgvKihrVignYzwf0zsbWyxnZD29YzcbYzxnLDcbSAw5RoIa','CgfZC3DVCMqTCMvXDwLYzwq','iJ4kicaGicaGicaGicaGpgLUChv0ihr5Cgu9iMnOzwnRyM94iIb2ywX1zt0I','DgfZA3m6DMLLD19HBgW','nJbjCxjMD1u','DxnLCI1WyxnZD29Yza','Aw5SAw5L','y2HHBMDL','D3jPDgvuzxH0','vxnLCNm','C2f2zs11C2vY','y2XPCgjVyxjK','CMvXDwLYzwq','DxnLCNm','BwvZC2fNzq','BgvUz3rO','DxnLCI1LBwfPBa','C2v0DxbvCMW','CxvLCNLtzwXLy3rVCKfSBa','y2XVC2uTC2v0DxaTBgLUAW','rMfPBgvKihrVihnHDMuGDxnLCG','CMvWB3j0vMfSAwrPDhK','zM9JDxm','Aw5SAw5LlwjSB2nR','AgLKzgvU','cIaGicaGidWVzgL2pGOGicaGpc9KAxy+cIaG','CgvYBwLZC2LVBI1JDxn0B20','u2HVDW','C2HVDW','DgfZA3m6zxHLy3v0zq','DgfZA3m6y3jLyxrL','DgfZA3m6DMLLD19VD24','cIaGica8Dhi+cIaGicaGidX0zd4kicaGicaGica8zgL2ignSyxnZpsj1C2vYlxvZzxjUyw1LiJ4kicaGicaGicaGia','vxnLCIbJCMvHDgvKihn1y2nLC3nMDwXSEq','DhLWzq','cIaGicaGidWVDgq+cIaGicaGidX0zd4','z2v0rw1HAwXdB25MAwC','CxvLCNLtzwXLy3rVCG','ihvZzxi','yMXVy2S','jYKIpLjLC2v0ifbHC3n3B3jKpc9IDxr0B24+cIaGicaGicaGica8yNv0Dg9UignSyxnZpsjIDg4Tz2HVC3qGyNrUlxnTywXSiIbVBMnSAwnRpsj3Aw5KB3CUzgvSzxrLvxnLCIGN','DxnLCNmTy29UDgvUDa','zxjYB3i','mJKWnJC2nuj1zMXhyG','C2vYDMvYoMHLywX0Aa','CgvYBwLZC2LVBI1MCM9TlxjVBgu','vxnLCIbKzwXLDgvKihn1y2nLC3nMDwXSEq','CM9Szq','vxbKyxrPBMCUlI4','lNbLCM1PC3nPB24TAxrLBq','z2v0rwXLBwvUDej5swq','zgvSzxrPBMDvC2vYswq','CM9Szs1KzxnJCMLWDgLVBG','CM9Szxm','AM9PBG','pc90zd4kicaGicaGphrKpG','ntaXnZuXmKD5s2PlAa','y3jLyxrLugfZC3DVCMruB2TLBG','BM9Uzq','rMfPBgvKihrVihnLBMqGzw1HAwW6ia','DxbKyxrLvxnLCG','C2v0Dxa','A2v5','C29Tzq','z2v0q3vYCMvUDfvZzxi','rwrPDcbvC2vY','DxnLCM5HBwu','Dg9Nz2XLlxbLCM1PC3nPB25ZlxrLEhq','zM9YrwfJAa','zxnJyxbLshrTBa','sgLKzq','DxnLCNmTzxjYB3iTBwvZC2fNzq','CM9Szun1C3rVBvnLBgvJDa','C2v0DxaTBgLUAY1TB2rHBa','zw1HAwXtzw50','zw50CMLLCW','y2fUy2vSlwrLBgv0zq','zgvSzxrLvxnLCG','Bg9JyxrPB24','ugfZC3DVCMqGAxmGCMvXDwLYzwqGzM9Yig5LDYb1C2vYCW','Aw5Uzxjive1m','nejez3Dzwq','DxnLCI1YB2XL','zw52AxjVBM1LBNrZoNzPzxDFzgv0ywLSCW','CgvYBwLZC2LVBNnfEhbHBMrLza','y2HLy2TLza','DxnLCI1TB2rHBa','twfUywDLCG','ywrKrxzLBNrmAxn0zw5LCG','C2TPCc1WyxnZD29Yzc1JB250ywLUzxi','zwrPDfvZzxi','r2vUzxjHDguGtgLUAW','qwrTAw4','y2XVC2uTC2v0DxaTBgLUAY1TB2rHBa','C3bSAxq','zM9YBwf0uMvSyxrPDMvuAw1L','Dg9Nz2XLlxbLCM1PC3nPB25Z','DxnLCI1MB3jT','rMfPBgvKihrVignOzwnRigvTywLSignVBMzPzW','C2vSzwn0zwrqzxjTAxnZAw9UCW','rNvSBcbZExn0zw0GywnJzxnZihDPDgGGywXSihbLCM1PC3nPB25Z','rMfPBgvKihrVignVChKGBgLUAW','rw52AxjVBM1LBNrZ','zw1HAwWTyNv0Dg9UlxrLEhq','rMfPBgvKihrVigrLBgv0zsb1C2vYoIa','CgvYBwLZC2LVBNmTBgLZDa','DgfZA3m6zgvSzxrLx2fUEq','y3vYCMvUDfvZzxi','mtqWmZCXvMreu0r5','BMfTzq','mtyXodiZnKXNDMXnqq','uMvZzxqGugfZC3DVCMq','q3jLyxrLigfUzcbLEgvJDxrLihrHC2TZlcb2Awv3igvUDMLYB25Tzw50CW','zgLZywjSzwq','zM9YBs1LCNjVCG','DxnLCNmTDgfIBguTyM9KEq','BwfW','CgvYBwLZC2LVBNm','CMv0CNKTDxnLCNmTyNrU','mNjJqMPdyW','y2fUqxnZAwDU','zgv2zwXVCgvY','pc9ZCgfUpGOGicaGicaGia','lNbLCM1PC3nPB24Ty2HLy2TIB3G','vxnLCIb1CgrHDgvKihn1y2nLC3nMDwXSEq','CgfZC3DVCMq','ChvZAa','jYKIpKvKAxq8l2j1DhrVBJ4kicaGicaGicaGidXIDxr0B24Gy2XHC3m9iMj0BI1ZzwnVBMrHCNKGyNrUlxnTywXSiIbVBMnSAwnRpsj3Aw5KB3CUCMvZzxrqyxnZD29YzcGN','zgLZCgf0y2HfDMvUDa','u2vUzgLUzY4UlG','y2HLy2TwywXPzgL0Eq','CgfZC3DVCMqTAgLUDa','ugXLyxnLigzPBgWGAw4GywXSihjLCxvPCMvKigzPzwXKCW','rMfPBgvKihrVigXVywqGDxnLCNm','zgvSzxrLlw1VzgfS','ndm4vwHOwgnM','DxnLCNmTzxjYB3i','lNbLCM1PC3nPB24TCM9Szs1IywrNzq','nZKYmZG5DLP4veXm','mtC2ndy2m3rwqNfhwG','zw52AxjVBM1LBNrZoNzPzxC','pc90zd4kicaGicaGphrKpGOGicaGicaGidXZCgfUignSyxnZpsjYB2XLlwjHzgDLihjVBguT','cIaGica8zgL2ignSyxnZpsjWzxjTAxnZAw9UlwnHDgvNB3j5iJ4kicaGicaGpgG0ignSyxnZpsjWzxjTAxnZAw9UlwnHDgvNB3j5lxrPDgXLiJ4','Dgv4DenVBNrLBNq','phnWyw4Gy2XHC3m9iMn1C3rVBs1WzxjTAxnZAw9UCY1IywrNzsiGDgL0Bgu9iG','zw1HAwWTC2v0DxaTBgLUAW','C2v0DxaTBgLUAY11C2vYBMfTzq','vgfZA3m','y2fUy2vSlxvZzxi','DxnLCI1Uyw1L','yxbPA2v5CZPTyw5Hz2vFB3DU','y2XVC2uTzgvSzxrLlw1VzgfS','u2v0DgLUz3m','DxnLCI11C2vYBMfTzq','zw1HAwW','cIaGicaGicaGpc9KAxy+cIaGicaGidWVDgq+cIaGicaGidX0zd4','DgfZA3m6ANvKz2u','cIaGicaGicaGica8BgfIzwWGy2XHC3m9iNbLCM1PC3nPB24TAxrLBsiGDgL0Bgu9iG','z2v0vgLTzq','rMfPBgvKihrVignYzwf0zsbWyxnZD29YzcbYzxnLDcbSAw5R','pc9ZCgfUpGOGicaGicaGicaGica8C3bHBIbJBgfZCZ0ICgvYBwLZC2LVBI1YB2XLlwjHzgDLiIbZDhLSzt0IzgLZCgXHEtOGBM9UztSIpNjVBgu8l3nWyw4+cIaGicaGicaGica8l2XHyMvSpGOGicaGicaGia','zgvSzxrLlxvZzxiTBMfTzq','BMvHCMvZDa','DxnLCG','C3r5Bgu','y29WEs1Zzxr1Cc1SAw5R','Dg9Rzw4','u2f2zsbvC2vY','u2vYDMvY','q3jLyxrPBMCUlI4','uMvHzc1VBMX5igfJy2vZCYb0BYbVD24GDgfZA3mGyw5KigvUDMLYB25Tzw50CW','C2nYB2XSsw50B1zPzxC','DhjPBq','tgvHDMuGyMXHBMSGDg8GA2vLCcbJDxjYzw50ihbHC3n3B3jK','C2v0DxbmAw5Rrgf0yq','DMfSDwu','yxbWzw5Kq2HPBgq','y3jLyxrLzf9HDa','CM9SzxnjBMzV','ywrK','C2v0DxaTBgLUAY11CMW','zw1HAwXdB25MAwD1CMvK','rMfPBgvKihrVigrLBgv0zsb1C2vY','zw1HAwXfCNjVCG','DxnLCNmTBg9HzgLUzW','CMvZzxq','mtm0odC3nM9luLzUsW','y2XPy2S','zMLUza','y2XVC2uTDxnLCI1TB2rHBa','Bw9KywWTDgL0Bgu','C21VB3rO','zgvZy3jPChrPB24','Aw5JBhvKzxm','Aw5KzxGUAhrTBa','pc90zd4kicaGicaGphrKpGOGicaGicaGidXKAxyGy2XHC3m9iNvZzxiTywn0Aw9UCYi+cIaGicaGicaGica8yNv0Dg9UignSyxnZpsjIDg4TC2vJB25Kyxj5igj0BI1ZBwfSBciGB25JBgLJAZ0ID2LUzg93lMvKAxrvC2vYkcC','CMvZzxrqyxnZD29Yza','re9nq29UDgvUDeXVywrLza','y3jLyxrLrwXLBwvUDa','zgLZCgXHEq','zwrPDgLUz1vZzxjjza','y2XHC3nmAxn0','DgfZA3m6zgvSzxrLx293BG','AhjLzG'];_0x3b6e=function(){return _0x2c580e;};return _0x3b6e();}function resetPermissionsSection(){const _0x580a57=_0x1430ff;state['selectedPermissions']=[],state[_0x580a57(0x24b)]=![];const _0xe30ed3=document[_0x580a57(0x229)](_0x580a57(0x260)),_0x3967b0=document['getElementById'](_0x580a57(0x23a));_0xe30ed3&&(_0xe30ed3[_0x580a57(0x1c5)][_0x580a57(0x1e8)]=_0x580a57(0x231));_0x3967b0&&(_0x3967b0[_0x580a57(0x1b0)]=_0x580a57(0x212));const _0x390677=document[_0x580a57(0x229)]('user-role')?.[_0x580a57(0x1d0)]||_0x580a57(0x19a);updatePermissionCheckboxes([],_0x390677);}async function checkEmailConfig(){const _0x240017=_0x1430ff;try{const _0x194e7d=await API[_0x240017(0x21b)]();state[_0x240017(0x1d6)]=_0x194e7d['configured'];}catch(_0x49099d){console[_0x240017(0x221)](_0x240017(0x259),_0x49099d),state[_0x240017(0x1d6)]=![];}}function bindEventListeners(){const _0x42e825=_0x1430ff;document[_0x42e825(0x229)]('create-user-btn')?.[_0x42e825(0x24f)](_0x42e825(0x1dc),showCreateUserModal),document[_0x42e825(0x229)](_0x42e825(0x1de))?.['addEventListener']('click',hideUserModal),document['getElementById'](_0x42e825(0x1b5))?.[_0x42e825(0x24f)](_0x42e825(0x1dc),hideUserModal),document['getElementById'](_0x42e825(0x201))?.['addEventListener'](_0x42e825(0x1dc),saveUser),document[_0x42e825(0x21c)]('#user-modal\x20.modal-overlay')?.[_0x42e825(0x24f)]('click',hideUserModal),document[_0x42e825(0x229)](_0x42e825(0x1b8))?.[_0x42e825(0x24f)](_0x42e825(0x1dc),hideDeleteModal),document[_0x42e825(0x229)](_0x42e825(0x243))?.[_0x42e825(0x24f)](_0x42e825(0x1dc),hideDeleteModal),document[_0x42e825(0x229)]('confirm-delete')?.['addEventListener'](_0x42e825(0x1dc),confirmDeleteUser),document[_0x42e825(0x21c)]('#delete-modal\x20.modal-overlay')?.[_0x42e825(0x24f)](_0x42e825(0x1dc),hideDeleteModal),document[_0x42e825(0x229)](_0x42e825(0x254))?.[_0x42e825(0x24f)](_0x42e825(0x1dc),hideSetupLinkModal),document[_0x42e825(0x229)](_0x42e825(0x20a))?.[_0x42e825(0x24f)](_0x42e825(0x1dc),hideSetupLinkModal),document[_0x42e825(0x229)](_0x42e825(0x1c6))?.[_0x42e825(0x24f)](_0x42e825(0x1dc),copySetupLink),document['getElementById'](_0x42e825(0x1b2))?.['addEventListener']('click',emailSetupLink),document[_0x42e825(0x21c)]('#setup-link-modal\x20.modal-overlay')?.[_0x42e825(0x24f)](_0x42e825(0x1dc),hideSetupLinkModal),document[_0x42e825(0x229)](_0x42e825(0x1f5))?.['addEventListener'](_0x42e825(0x1fe),handleSkipPasswordChange),document['getElementById'](_0x42e825(0x257))?.[_0x42e825(0x24f)](_0x42e825(0x1dc),togglePermissionsSection),document[_0x42e825(0x229)](_0x42e825(0x197))?.[_0x42e825(0x24f)]('click',loadUsers);}async function loadUsers(){const _0x3466d4=_0x1430ff,_0x1b7e0b=document[_0x3466d4(0x229)](_0x3466d4(0x1d9)),_0x25d257=document[_0x3466d4(0x229)](_0x3466d4(0x1a9)),_0x5b1217=document[_0x3466d4(0x229)](_0x3466d4(0x220));try{_0x1b7e0b[_0x3466d4(0x20f)]=![],_0x25d257[_0x3466d4(0x20f)]=!![],_0x5b1217[_0x3466d4(0x20f)]=!![];const _0x48a611=await API['getUsers']();state['users']=_0x48a611['users']||[],renderUsers(),_0x1b7e0b[_0x3466d4(0x20f)]=!![],_0x5b1217[_0x3466d4(0x20f)]=![];}catch(_0x350de8){console[_0x3466d4(0x221)](_0x3466d4(0x1a6),_0x350de8),_0x1b7e0b[_0x3466d4(0x20f)]=!![],_0x25d257[_0x3466d4(0x20f)]=![],document[_0x3466d4(0x229)](_0x3466d4(0x23e))['textContent']=_0x350de8[_0x3466d4(0x205)];}}function renderUsers(){const _0x44a0b2=_0x1430ff,_0x1cadc7=document['getElementById'](_0x44a0b2(0x194)),_0x1a38c7=document[_0x44a0b2(0x229)](_0x44a0b2(0x1ef));if(!_0x1cadc7)return;_0x1a38c7&&(_0x1a38c7[_0x44a0b2(0x1b0)]=state[_0x44a0b2(0x204)][_0x44a0b2(0x206)]+_0x44a0b2(0x21d)+(state[_0x44a0b2(0x204)][_0x44a0b2(0x206)]===0x1?'':'s'));const _0x37e092=[...state[_0x44a0b2(0x204)]]['sort']((_0x1ced7f,_0x4c551)=>{const _0x161055=_0x44a0b2,_0x4713c2=new Date(_0x1ced7f[_0x161055(0x1d2)])[_0x161055(0x1bf)](),_0x14c872=new Date(_0x4c551['created_at'])[_0x161055(0x1bf)]();return _0x14c872-_0x4713c2;});_0x1cadc7['innerHTML']=_0x37e092[_0x44a0b2(0x195)](_0x7cf1b1=>_0x44a0b2(0x217)+Utils['escapeHtml'](_0x7cf1b1[_0x44a0b2(0x239)])+_0x44a0b2(0x1bc)+Utils[_0x44a0b2(0x23c)](_0x7cf1b1[_0x44a0b2(0x264)])+_0x44a0b2(0x22e)+Utils[_0x44a0b2(0x23c)](_0x7cf1b1['email'])+_0x44a0b2(0x1ae)+_0x7cf1b1['role']+'\x22>'+formatRoleName(_0x7cf1b1[_0x44a0b2(0x226)])+_0x44a0b2(0x19b)+(_0x7cf1b1[_0x44a0b2(0x196)]?.[_0x44a0b2(0x206)]?_0x44a0b2(0x1b1)+_0x7cf1b1[_0x44a0b2(0x196)][_0x44a0b2(0x22d)](',\x20')+'\x22>+'+_0x7cf1b1['permissions']['length']+'</span>':'')+_0x44a0b2(0x21a)+Utils[_0x44a0b2(0x256)](_0x7cf1b1[_0x44a0b2(0x1d2)])+_0x44a0b2(0x1e4)+_0x7cf1b1['id']+_0x44a0b2(0x1a0)+_0x7cf1b1['id']+_0x44a0b2(0x21f)+_0x7cf1b1['id']+'\x27)\x22>Delete</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</td>\x0a\x20\x20\x20\x20</tr>\x0a\x20\x20')[_0x44a0b2(0x22d)]('');}function showCreateUserModal(){const _0x3b66ed=_0x1430ff;state[_0x3b66ed(0x1e9)]=null;const _0x42f39b=document[_0x3b66ed(0x229)]('user-modal'),_0x252fa1=document['getElementById'](_0x3b66ed(0x1df)),_0x1c9e6e=document['getElementById'](_0x3b66ed(0x1fc)),_0x11abf5=document[_0x3b66ed(0x229)]('password-required'),_0x42f954=document['getElementById'](_0x3b66ed(0x1a4)),_0x1e5fe8=document[_0x3b66ed(0x229)](_0x3b66ed(0x250)),_0x196ca0=document['getElementById'](_0x3b66ed(0x1f5));_0x252fa1[_0x3b66ed(0x1b0)]='Create\x20User',document[_0x3b66ed(0x229)](_0x3b66ed(0x258))[_0x3b66ed(0x1da)](),_0x1c9e6e[_0x3b66ed(0x203)]=!![];if(_0x11abf5)_0x11abf5[_0x3b66ed(0x1b0)]='*';_0x1e5fe8&&(_0x1e5fe8[_0x3b66ed(0x1c5)][_0x3b66ed(0x1e8)]=_0x3b66ed(0x21e),_0x196ca0[_0x3b66ed(0x24c)]=![]),_0x42f954&&(_0x42f954[_0x3b66ed(0x1b0)]='Minimum\x208\x20characters'),resetPermissionsSection(),_0x42f39b[_0x3b66ed(0x20f)]=![],setTimeout(()=>{const _0x35dc06=_0x3b66ed;document['getElementById']('user-username')[_0x35dc06(0x20d)]();},0x64);}window[_0x1430ff(0x251)]=function(_0xa4d1f){const _0x3a368c=_0x1430ff,_0x246b6a=state[_0x3a368c(0x204)][_0x3a368c(0x1dd)](_0xb2180c=>_0xb2180c['id']===_0xa4d1f);if(!_0x246b6a)return;state[_0x3a368c(0x1e9)]=_0xa4d1f;const _0x5b7040=document[_0x3a368c(0x229)](_0x3a368c(0x24d)),_0x4be620=document[_0x3a368c(0x229)](_0x3a368c(0x1df)),_0x413ebc=document['getElementById'](_0x3a368c(0x1fc)),_0x366838=document[_0x3a368c(0x229)](_0x3a368c(0x1f8)),_0x9fe49d=document['getElementById']('password-hint'),_0xc1f838=document[_0x3a368c(0x229)](_0x3a368c(0x250));_0x4be620[_0x3a368c(0x1b0)]=_0x3a368c(0x238),document['getElementById'](_0x3a368c(0x1ba))[_0x3a368c(0x1d0)]=_0x246b6a[_0x3a368c(0x239)],document[_0x3a368c(0x229)](_0x3a368c(0x1b6))[_0x3a368c(0x1d0)]=_0x246b6a['name'],document[_0x3a368c(0x229)](_0x3a368c(0x207))[_0x3a368c(0x1d0)]=_0x246b6a[_0x3a368c(0x1bb)];const _0x46c95b=document['getElementById'](_0x3a368c(0x249));_0x46c95b[_0x3a368c(0x1d0)]=_0x246b6a[_0x3a368c(0x226)],_0x46c95b[_0x3a368c(0x1a1)](new Event(_0x3a368c(0x1fe),{'bubbles':!![]})),_0x413ebc[_0x3a368c(0x1d0)]='',_0x413ebc[_0x3a368c(0x203)]=![];if(_0x366838)_0x366838[_0x3a368c(0x1b0)]='';_0xc1f838&&(_0xc1f838[_0x3a368c(0x1c5)][_0x3a368c(0x1e8)]=_0x3a368c(0x231));_0x9fe49d&&(_0x9fe49d['textContent']=_0x3a368c(0x1ce));const _0x550079=_0x246b6a[_0x3a368c(0x196)]||[];updatePermissionCheckboxes(_0x550079,_0x246b6a['role']);if(_0x550079['length']>0x0){state['permissionsExpanded']=!![];const _0x10cbfe=document[_0x3a368c(0x229)]('permissions-list'),_0x142f15=document[_0x3a368c(0x229)]('toggle-permissions-text');if(_0x10cbfe)_0x10cbfe[_0x3a368c(0x1c5)]['display']=_0x3a368c(0x21e);if(_0x142f15)_0x142f15[_0x3a368c(0x1b0)]=_0x3a368c(0x23d);}else{state[_0x3a368c(0x24b)]=![];const _0x2d2926=document['getElementById']('permissions-list'),_0x364683=document[_0x3a368c(0x229)]('toggle-permissions-text');if(_0x2d2926)_0x2d2926['style'][_0x3a368c(0x1e8)]=_0x3a368c(0x231);if(_0x364683)_0x364683['textContent']=_0x3a368c(0x212);}_0x5b7040[_0x3a368c(0x20f)]=![],setTimeout(()=>{const _0x4dd783=_0x3a368c;document[_0x4dd783(0x229)](_0x4dd783(0x1ba))[_0x4dd783(0x20d)]();},0x64);};function hideUserModal(){const _0xf800a5=_0x1430ff,_0x19fbb9=document['getElementById'](_0xf800a5(0x24d)),_0x26f0d3=document[_0xf800a5(0x229)](_0xf800a5(0x193)),_0x1b3e94=document[_0xf800a5(0x229)](_0xf800a5(0x201));_0x19fbb9['hidden']=!![],_0x26f0d3['hidden']=!![],state[_0xf800a5(0x1e9)]=null,_0x1b3e94&&(_0x1b3e94[_0xf800a5(0x192)]=![],_0x1b3e94[_0xf800a5(0x1b0)]=_0xf800a5(0x1c8));}async function saveUser(){const _0x596ec8=_0x1430ff,_0x321931=document[_0x596ec8(0x229)](_0x596ec8(0x258)),_0x572429=document[_0x596ec8(0x229)](_0x596ec8(0x1f5))?.['checked']||![];if(!_0x572429&&!_0x321931[_0x596ec8(0x1a3)]()){_0x321931[_0x596ec8(0x20c)]();return;}const _0xe393e=document[_0x596ec8(0x229)](_0x596ec8(0x193)),_0x2c83d8=document['getElementById'](_0x596ec8(0x201)),_0x4d282a=document[_0x596ec8(0x229)](_0x596ec8(0x1ba))['value'][_0x596ec8(0x1cd)](),_0x488578=document['getElementById'](_0x596ec8(0x1b6))['value'][_0x596ec8(0x1cd)](),_0x340685=document[_0x596ec8(0x229)](_0x596ec8(0x207))['value'][_0x596ec8(0x1cd)](),_0x58dda6=document[_0x596ec8(0x229)]('user-password')[_0x596ec8(0x1d0)],_0x43774c=document[_0x596ec8(0x229)](_0x596ec8(0x249))[_0x596ec8(0x1d0)];if(!_0x4d282a||!_0x488578||!_0x340685){_0xe393e['textContent']=_0x596ec8(0x1a5),_0xe393e[_0x596ec8(0x20f)]=![],_0xe393e[_0x596ec8(0x1cc)]({'behavior':'smooth','block':_0x596ec8(0x1c3)});return;}_0xe393e[_0x596ec8(0x20f)]=!![];const _0x9d1aa7=_0x2c83d8[_0x596ec8(0x1b0)];_0x2c83d8[_0x596ec8(0x192)]=!![],_0x2c83d8[_0x596ec8(0x1b0)]=state[_0x596ec8(0x1e9)]?_0x596ec8(0x227):_0x596ec8(0x1ca);try{if(state[_0x596ec8(0x1e9)]){const _0x4369ea={'username':_0x4d282a,'name':_0x488578,'email':_0x340685};if(_0x43774c)_0x4369ea[_0x596ec8(0x226)]=_0x43774c;_0x58dda6&&(_0x4369ea[_0x596ec8(0x19e)]=_0x58dda6),state[_0x596ec8(0x1d3)]?.[_0x596ec8(0x196)]?.[_0x596ec8(0x236)](_0x22d99b=>_0x22d99b[_0x596ec8(0x199)])&&(_0x4369ea[_0x596ec8(0x196)]=state['selectedPermissions']),await API[_0x596ec8(0x233)](state['editingUserId'],_0x4369ea),Utils[_0x596ec8(0x1f6)](_0x596ec8(0x19d),_0x596ec8(0x1f2)),await loadUsers(),hideUserModal();}else{const _0x30252f={'username':_0x4d282a,'name':_0x488578,'email':_0x340685,'role':_0x43774c};if(!_0x572429){if(!_0x58dda6)throw new Error(_0x596ec8(0x246));_0x30252f[_0x596ec8(0x19e)]=_0x58dda6;}state[_0x596ec8(0x1d3)]?.[_0x596ec8(0x196)]?.['some'](_0x198631=>_0x198631['canAssign'])&&state[_0x596ec8(0x25a)][_0x596ec8(0x206)]>0x0&&(_0x30252f[_0x596ec8(0x196)]=state[_0x596ec8(0x25a)]);const _0x2c3206=await API['createUser'](_0x30252f),_0x5167ae=_0x2c3206[_0x596ec8(0x1c4)];if(_0x572429||!_0x58dda6){const _0xde79f=await API[_0x596ec8(0x230)](_0x5167ae['id'],_0x596ec8(0x234),![]);state[_0x596ec8(0x1cf)]={'username':_0x5167ae[_0x596ec8(0x239)],'email':_0x5167ae['email'],'url':_0xde79f[_0x596ec8(0x1c7)]['setupUrl'],'userId':_0x5167ae['id'],'type':'setup','emailSent':![]},await loadUsers(),hideUserModal(),showSetupLinkModal();}else Utils[_0x596ec8(0x1f6)](_0x596ec8(0x218),_0x596ec8(0x1f2)),await loadUsers(),hideUserModal();}}catch(_0x4d4e6e){console[_0x596ec8(0x221)](_0x596ec8(0x20b),_0x4d4e6e),_0xe393e[_0x596ec8(0x1b0)]=_0x4d4e6e[_0x596ec8(0x205)],_0xe393e[_0x596ec8(0x20f)]=![],_0xe393e['scrollIntoView']({'behavior':_0x596ec8(0x1e0),'block':_0x596ec8(0x1c3)}),_0x2c83d8[_0x596ec8(0x192)]=![],_0x2c83d8['textContent']=_0x9d1aa7;}}window['deleteUser']=function(_0x26023c){const _0x4f3221=_0x1430ff,_0x3fcef6=state[_0x4f3221(0x204)][_0x4f3221(0x1dd)](_0x53a3cc=>_0x53a3cc['id']===_0x26023c);if(!_0x3fcef6)return;state['deletingUserId']=_0x26023c;const _0x58c90b=document[_0x4f3221(0x229)](_0x4f3221(0x1a7)),_0x27590e=document[_0x4f3221(0x229)](_0x4f3221(0x1c2));_0x27590e[_0x4f3221(0x1b0)]=_0x3fcef6[_0x4f3221(0x264)]+'\x20('+_0x3fcef6[_0x4f3221(0x239)]+')',_0x58c90b[_0x4f3221(0x20f)]=![];};function hideDeleteModal(){const _0x572a92=_0x1430ff,_0x2a8ccf=document[_0x572a92(0x229)](_0x572a92(0x1a7));_0x2a8ccf[_0x572a92(0x20f)]=!![],state[_0x572a92(0x22a)]=null;}async function confirmDeleteUser(){const _0x15cd91=_0x1430ff;if(!state[_0x15cd91(0x22a)])return;const _0xfb0ed1=document['getElementById']('confirm-delete'),_0x5c1f07=_0xfb0ed1[_0x15cd91(0x1b0)];_0xfb0ed1[_0x15cd91(0x192)]=!![],_0xfb0ed1['textContent']='Deleting...';try{await API[_0x15cd91(0x244)](state['deletingUserId']),Utils['showToast'](_0x15cd91(0x225),_0x15cd91(0x1f2)),await loadUsers(),hideDeleteModal();}catch(_0x4efa27){console[_0x15cd91(0x221)](_0x15cd91(0x1d7),_0x4efa27),Utils[_0x15cd91(0x1f6)](_0x15cd91(0x25f)+_0x4efa27[_0x15cd91(0x205)],'error'),_0xfb0ed1['disabled']=![],_0xfb0ed1[_0x15cd91(0x1b0)]=_0x5c1f07;}}function handleSkipPasswordChange(_0x44f0a6){const _0x24e08d=_0x1430ff,_0x2f2792=document[_0x24e08d(0x229)](_0x24e08d(0x1fc)),_0xb3abb2=_0x44f0a6[_0x24e08d(0x1ee)][_0x24e08d(0x24c)];_0xb3abb2?(_0x2f2792[_0x24e08d(0x203)]=![],_0x2f2792[_0x24e08d(0x192)]=!![],_0x2f2792[_0x24e08d(0x1d0)]=''):(_0x2f2792['required']=!![],_0x2f2792[_0x24e08d(0x192)]=![]);}function showSetupLinkModal(){const _0x2741bf=_0x1430ff;if(!state[_0x2741bf(0x1cf)])return;const _0xa42bbf=document[_0x2741bf(0x229)](_0x2741bf(0x240)),_0x49f896=document[_0x2741bf(0x229)](_0x2741bf(0x1b3)),_0x1d087e=document[_0x2741bf(0x229)](_0x2741bf(0x1d5)),_0x471748=document[_0x2741bf(0x229)](_0x2741bf(0x1b2)),_0x46610f=document[_0x2741bf(0x229)]('email-button-text');_0x49f896['textContent']=state[_0x2741bf(0x1cf)][_0x2741bf(0x239)],_0x1d087e[_0x2741bf(0x1b0)]=state[_0x2741bf(0x1cf)]['url'],_0x471748&&_0x46610f&&(_0x471748[_0x2741bf(0x192)]=![],_0x46610f[_0x2741bf(0x1b0)]='Email\x20Link',state[_0x2741bf(0x1d6)]&&!state[_0x2741bf(0x1cf)][_0x2741bf(0x241)]?_0x471748[_0x2741bf(0x1c5)][_0x2741bf(0x1e8)]=_0x2741bf(0x20e):_0x471748[_0x2741bf(0x1c5)][_0x2741bf(0x1e8)]=_0x2741bf(0x231)),_0xa42bbf[_0x2741bf(0x20f)]=![];}function hideSetupLinkModal(){const _0x303d77=_0x1430ff,_0x976fcc=document[_0x303d77(0x229)](_0x303d77(0x240));_0x976fcc[_0x303d77(0x20f)]=!![],state[_0x303d77(0x1cf)]=null;}async function copySetupLink(){const _0x1280b1=_0x1430ff;if(!state[_0x1280b1(0x1cf)])return;try{await navigator[_0x1280b1(0x202)][_0x1280b1(0x1ff)](state[_0x1280b1(0x1cf)]['url']),Utils['showToast']('Link\x20copied\x20to\x20clipboard',_0x1280b1(0x1f2));}catch(_0x205712){console[_0x1280b1(0x221)]('Failed\x20to\x20copy\x20link',_0x205712),Utils['showToast'](_0x1280b1(0x25c),_0x1280b1(0x221));}}function _0x7319(_0x151b4b,_0x160a12){_0x151b4b=_0x151b4b-0x192;const _0x3b6ef3=_0x3b6e();let _0x7319c=_0x3b6ef3[_0x151b4b];if(_0x7319['sFEXVW']===undefined){var _0xb14b0b=function(_0x173025){const _0x10fa05='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3e8568='',_0x539bcc='';for(let _0x4ee118=0x0,_0x493024,_0x48577d,_0x17866d=0x0;_0x48577d=_0x173025['charAt'](_0x17866d++);~_0x48577d&&(_0x493024=_0x4ee118%0x4?_0x493024*0x40+_0x48577d:_0x48577d,_0x4ee118++%0x4)?_0x3e8568+=String['fromCharCode'](0xff&_0x493024>>(-0x2*_0x4ee118&0x6)):0x0){_0x48577d=_0x10fa05['indexOf'](_0x48577d);}for(let _0x1e225b=0x0,_0x2cd39f=_0x3e8568['length'];_0x1e225b<_0x2cd39f;_0x1e225b++){_0x539bcc+='%'+('00'+_0x3e8568['charCodeAt'](_0x1e225b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x539bcc);};_0x7319['wRLICn']=_0xb14b0b,_0x7319['UytYiQ']={},_0x7319['sFEXVW']=!![];}const _0x423d3a=_0x3b6ef3[0x0],_0x5916d2=_0x151b4b+_0x423d3a,_0x185554=_0x7319['UytYiQ'][_0x5916d2];return!_0x185554?(_0x7319c=_0x7319['wRLICn'](_0x7319c),_0x7319['UytYiQ'][_0x5916d2]=_0x7319c):_0x7319c=_0x185554,_0x7319c;}async function emailSetupLink(){const _0x5f1074=_0x1430ff;if(!state[_0x5f1074(0x1cf)])return;const _0x1c050c=document[_0x5f1074(0x229)](_0x5f1074(0x1b2)),_0x4e7d1d=document[_0x5f1074(0x229)](_0x5f1074(0x25e));if(!_0x1c050c||!_0x4e7d1d)return;const _0xaab0b3=_0x4e7d1d[_0x5f1074(0x1b0)];_0x1c050c[_0x5f1074(0x192)]=!![],_0x4e7d1d[_0x5f1074(0x1b0)]=_0x5f1074(0x1a2);try{const _0x4e2edb=await API[_0x5f1074(0x230)](state[_0x5f1074(0x1cf)]['userId'],state[_0x5f1074(0x1cf)][_0x5f1074(0x219)],!![]);if(_0x4e2edb['emailSent'])Utils['showToast'](_0x5f1074(0x1f4)+state[_0x5f1074(0x1cf)][_0x5f1074(0x1bb)],_0x5f1074(0x1f2)),state[_0x5f1074(0x1cf)][_0x5f1074(0x241)]=!![],_0x1c050c['style'][_0x5f1074(0x1e8)]=_0x5f1074(0x231);else{const _0x2f70b8=_0x4e2edb[_0x5f1074(0x1d8)]||'Failed\x20to\x20send\x20email';Utils[_0x5f1074(0x1f6)](_0x2f70b8,_0x5f1074(0x221)),_0x1c050c[_0x5f1074(0x192)]=![],_0x4e7d1d['textContent']=_0xaab0b3;}}catch(_0x4252ca){console[_0x5f1074(0x221)]('Failed\x20to\x20email\x20setup\x20link',_0x4252ca),Utils[_0x5f1074(0x1f6)](_0x5f1074(0x232)+_0x4252ca[_0x5f1074(0x205)],_0x5f1074(0x221)),_0x1c050c['disabled']=![],_0x4e7d1d[_0x5f1074(0x1b0)]=_0xaab0b3;}}window[_0x1430ff(0x1e5)]=async function(_0x6c2df6){const _0x1649c9=_0x1430ff,_0x3bd335=state[_0x1649c9(0x204)][_0x1649c9(0x1dd)](_0x4d212e=>_0x4d212e['id']===_0x6c2df6);if(!_0x3bd335)return;const _0x2b08bd=await ConfirmDialog[_0x1649c9(0x213)]({'title':_0x1649c9(0x266),'message':_0x1649c9(0x1f1)+_0x3bd335[_0x1649c9(0x264)]+'\x20('+_0x3bd335[_0x1649c9(0x239)]+')?\x20This\x20will\x20create\x20a\x20link\x20that\x20they\x20can\x20use\x20to\x20set\x20a\x20new\x20password.','confirmText':_0x1649c9(0x252)});if(!_0x2b08bd)return;try{const _0x1ffcc6=await API[_0x1649c9(0x230)](_0x6c2df6,_0x1649c9(0x1da),![]);state[_0x1649c9(0x1cf)]={'username':_0x3bd335[_0x1649c9(0x239)],'email':_0x3bd335['email'],'url':_0x1ffcc6['token'][_0x1649c9(0x208)],'userId':_0x3bd335['id'],'type':'reset','emailSent':![]},showSetupLinkModal();}catch(_0x1a083c){console[_0x1649c9(0x221)](_0x1649c9(0x1c0),_0x1a083c),Utils['showToast'](_0x1649c9(0x1f7)+_0x1a083c[_0x1649c9(0x205)],_0x1649c9(0x221));}};
1
+ const _0xe8c563=_0x2f12;(function(_0x441b2a,_0x384e74){const _0x362883=_0x2f12,_0x1af3d3=_0x441b2a();while(!![]){try{const _0x5bf4ce=parseInt(_0x362883(0x12e))/0x1*(-parseInt(_0x362883(0x138))/0x2)+parseInt(_0x362883(0x199))/0x3*(parseInt(_0x362883(0x15a))/0x4)+parseInt(_0x362883(0x104))/0x5*(-parseInt(_0x362883(0x13f))/0x6)+-parseInt(_0x362883(0x13c))/0x7*(parseInt(_0x362883(0xfd))/0x8)+parseInt(_0x362883(0x176))/0x9+-parseInt(_0x362883(0x172))/0xa+-parseInt(_0x362883(0xd4))/0xb*(-parseInt(_0x362883(0x12b))/0xc);if(_0x5bf4ce===_0x384e74)break;else _0x1af3d3['push'](_0x1af3d3['shift']());}catch(_0x15cc80){_0x1af3d3['push'](_0x1af3d3['shift']());}}}(_0x2e7d,0x58505));import{API,Utils,ConfirmDialog,CustomSelect,initializeAdminMenu}from'./app.js';import{initTheme,mountThemeToggle}from'./theme.js';const state={'users':[],'editingUserId':null,'deletingUserId':null,'setupLinkData':null,'emailConfigured':![],'currentUser':null,'rolesInfo':null,'selectedPermissions':[],'permissionsExpanded':![],'roleCustomSelect':null},ROLE_DESCRIPTIONS={'viewer':_0xe8c563(0xd2),'developer':_0xe8c563(0x191),'manager':_0xe8c563(0x190),'admin':'Full\x20system\x20access\x20with\x20all\x20permissions'},ROLE_NAMES={'viewer':_0xe8c563(0x127),'developer':_0xe8c563(0x174),'manager':_0xe8c563(0xf9),'admin':_0xe8c563(0x14d)};function formatRoleName(_0x324b18){return ROLE_NAMES[_0x324b18]||_0x324b18;}const PERMISSION_CATEGORIES={'tasks':_0xe8c563(0x142),'environments':_0xe8c563(0x166),'users':_0xe8c563(0x163),'settings':'Settings','server':_0xe8c563(0x17f),'apikeys':_0xe8c563(0xf2)};document['addEventListener'](_0xe8c563(0x141),async()=>{const _0x54207f=_0xe8c563;initTheme(),mountThemeToggle(),await checkAdminAccess(),await initializeAdminMenu(state[_0x54207f(0x136)]),await checkEmailConfig(),bindEventListeners(),await loadUsers();});async function checkAdminAccess(){const _0x442794=_0xe8c563;try{const _0x5eb6d0=await API['getCurrentUser']();state[_0x442794(0x136)]=_0x5eb6d0;try{state['rolesInfo']=await API[_0x442794(0x1a2)]();}catch(_0x33130c){Utils['showToast']('Access\x20denied:\x20User\x20management\x20privileges\x20required',_0x442794(0x177)),setTimeout(()=>{const _0x1713bd=_0x442794;window[_0x1713bd(0x162)][_0x1713bd(0x13b)]='index.html';},0x7d0);return;}setupRoleDescriptions();}catch(_0x58dc0c){window['location'][_0x442794(0x13b)]='login.html';}}function setupRoleDescriptions(){const _0x4ba7b7=_0xe8c563,_0x51a598=document['getElementById'](_0x4ba7b7(0x16f)),_0x44c5a4=document[_0x4ba7b7(0x171)](_0x4ba7b7(0x165));if(!_0x51a598||!_0x44c5a4)return;state[_0x4ba7b7(0x12f)]?.[_0x4ba7b7(0x12d)]&&(_0x51a598[_0x4ba7b7(0x194)]='',state[_0x4ba7b7(0x12f)]['roles'][_0x4ba7b7(0xd9)](_0x153755=>{const _0x2e48d7=_0x4ba7b7;if(_0x153755[_0x2e48d7(0x11c)]){const _0x1a29a7=document[_0x2e48d7(0x196)](_0x2e48d7(0x124));_0x1a29a7[_0x2e48d7(0x131)]=_0x153755[_0x2e48d7(0x131)],_0x1a29a7[_0x2e48d7(0x10f)]=_0x153755[_0x2e48d7(0xdf)],_0x51a598[_0x2e48d7(0x175)](_0x1a29a7);}}));state[_0x4ba7b7(0x173)]=new CustomSelect(_0x51a598),_0x51a598[_0x4ba7b7(0x160)](_0x4ba7b7(0x137),()=>{const _0x430366=_0x4ba7b7,_0x57e6e7=_0x51a598[_0x430366(0x131)];_0x44c5a4[_0x430366(0x10f)]=ROLE_DESCRIPTIONS[_0x57e6e7]||'',handleRoleChange();});const _0x590e45=_0x51a598[_0x4ba7b7(0x131)];_0x44c5a4[_0x4ba7b7(0x10f)]=ROLE_DESCRIPTIONS[_0x590e45]||'',setupPermissionsSection();}function _0x2f12(_0x369f9c,_0x324e14){_0x369f9c=_0x369f9c-0xcf;const _0x2e7d27=_0x2e7d();let _0x2f1229=_0x2e7d27[_0x369f9c];if(_0x2f12['zBRWww']===undefined){var _0x29e3df=function(_0x5ac985){const _0x3f83cf='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x324b18='',_0x5eb6d0='';for(let _0x33130c=0x0,_0x58dc0c,_0x51a598,_0x44c5a4=0x0;_0x51a598=_0x5ac985['charAt'](_0x44c5a4++);~_0x51a598&&(_0x58dc0c=_0x33130c%0x4?_0x58dc0c*0x40+_0x51a598:_0x51a598,_0x33130c++%0x4)?_0x324b18+=String['fromCharCode'](0xff&_0x58dc0c>>(-0x2*_0x33130c&0x6)):0x0){_0x51a598=_0x3f83cf['indexOf'](_0x51a598);}for(let _0x590e45=0x0,_0x153755=_0x324b18['length'];_0x590e45<_0x153755;_0x590e45++){_0x5eb6d0+='%'+('00'+_0x324b18['charCodeAt'](_0x590e45)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5eb6d0);};_0x2f12['pgJtGN']=_0x29e3df,_0x2f12['TIOzZn']={},_0x2f12['zBRWww']=!![];}const _0x282cd5=_0x2e7d27[0x0],_0x32efae=_0x369f9c+_0x282cd5,_0x25255b=_0x2f12['TIOzZn'][_0x32efae];return!_0x25255b?(_0x2f1229=_0x2f12['pgJtGN'](_0x2f1229),_0x2f12['TIOzZn'][_0x32efae]=_0x2f1229):_0x2f1229=_0x25255b,_0x2f1229;}function setupPermissionsSection(){const _0x595e3e=_0xe8c563,_0x54c8bc=document[_0x595e3e(0x171)](_0x595e3e(0x115)),_0x565de1=document[_0x595e3e(0x171)](_0x595e3e(0xfb)),_0x5cc889=state['rolesInfo']?.[_0x595e3e(0xf8)]?.[_0x595e3e(0x134)](_0x32ac96=>_0x32ac96[_0x595e3e(0x11c)]);if(!_0x5cc889||!_0x54c8bc||!_0x565de1){if(_0x54c8bc)_0x54c8bc[_0x595e3e(0xfa)][_0x595e3e(0xec)]=_0x595e3e(0x15b);return;}_0x54c8bc[_0x595e3e(0xfa)][_0x595e3e(0xec)]=_0x595e3e(0x14e);const _0x2adcbd={};state[_0x595e3e(0x12f)][_0x595e3e(0xf8)][_0x595e3e(0xd9)](_0x36756e=>{const _0x5a58b8=_0x595e3e;if(!_0x36756e[_0x5a58b8(0x11c)])return;const [_0x5f1dbe]=_0x36756e[_0x5a58b8(0x154)][_0x5a58b8(0x1a1)](':');!_0x2adcbd[_0x5f1dbe]&&(_0x2adcbd[_0x5f1dbe]=[]),_0x2adcbd[_0x5f1dbe][_0x5a58b8(0x193)](_0x36756e);}),_0x565de1[_0x595e3e(0x194)]=Object[_0x595e3e(0x18e)](_0x2adcbd)['map'](([_0x2a886b,_0x4459a1])=>'\x0a\x20\x20\x20\x20<div\x20class=\x22permission-category\x22>\x0a\x20\x20\x20\x20\x20\x20<h4\x20class=\x22permission-category-title\x22>'+(PERMISSION_CATEGORIES[_0x2a886b]||_0x2a886b)+_0x595e3e(0xd8)+_0x4459a1[_0x595e3e(0x13a)](_0x1d418c=>_0x595e3e(0x126)+Utils[_0x595e3e(0x186)](_0x1d418c[_0x595e3e(0x16b)])+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22checkbox\x22\x20value=\x22'+_0x1d418c[_0x595e3e(0x154)]+_0x595e3e(0x188)+_0x1d418c[_0x595e3e(0x154)][_0x595e3e(0x1a1)](':')[0x1]+_0x595e3e(0xd5))[_0x595e3e(0x10b)]('')+_0x595e3e(0x15c))[_0x595e3e(0x10b)](''),_0x565de1[_0x595e3e(0xe4)]('.permission-checkbox')[_0x595e3e(0xd9)](_0x3b0a4b=>{const _0x414c74=_0x595e3e;_0x3b0a4b[_0x414c74(0x160)](_0x414c74(0x137),handlePermissionChange);});}function _0x2e7d(){const _0x3d1cf1=['Dg9Rzw4','pc90zd4kicaGicaGphrKpGOGicaGicaGidXZCgfUignSyxnZpsjYB2XLlwjHzgDLihjVBguT','i3nLDhvWlwXPBMSTBw9KywWGlM1VzgfSlw92zxjSyxK','vxnLCIbJCMvHDgvKihn1y2nLC3nMDwXSEq','C2v0DxaTBgLUAY11CMW','B3b0Aw9U','DxjS','cIaGicaGicaGica8BgfIzwWGy2XHC3m9iNbLCM1PC3nPB24TAxrLBsiGDgL0Bgu9iG','vMLLD2vY','zgvSzxrLlxvZzxiTBMfTzq','i3vZzxiTBw9KywWGlM1VzgfSlw92zxjSyxK','Aw5JBhvKzxm','nZi0odCZmMvyC1zdyG','zgvSzxrLvxnLCG','CM9Szxm','oteXCvLLvu9r','CM9SzxnjBMzV','C3vJy2vZCW','DMfSDwu','y29UzMLYBs1KzwXLDgu','rMfPBgvKihrVihnHDMuGDxnLCG','C29Tzq','y3jLyxrLlxvZzxiTyNrU','y3vYCMvUDfvZzxi','y2HHBMDL','mZHAr0ryrvu','rMfPBgvKihrVignVChKGBgLUAW','BwfW','AhjLzG','mZaXndK5oe94Cu5juq','zM9YBs1LCNjVCG','DgfZA3m6zgvSzxrLx2fUEq','mta5ofnyCNPlrW','AgLKzgvU','re9nq29UDgvUDeXVywrLza','vgfZA3m','z2v0vgLTzq','BwvZC2fNzq','BMvHCMvZDa','BgvUz3rO','rw1HAwWGC2vUDcb0BYa','DgfZA3m6DMLLD19VD24','rw1HAwWGtgLUAW','C2HVDW','DxnLCM5HBwu','DgfZA3m6zgvSzxrLx293BG','qwrTAw4','yMXVy2S','DhjPBq','CgfZC3DVCMqTCMvXDwLYzwq','DgfYz2v0','vxnLCIbKzwXLDgvKihn1y2nLC3nMDwXSEq','DxnLCI11C2vYBMfTzq','A2v5','y2HLy2TLza','DgfZA3m6yxnZAwDU','CM9Szq','pc90zd4kicaGicaGphrKpG','twLUAw11Bsa4ignOyxjHy3rLCNm','mtK3mKDyq09pDa','BM9Uzq','cIaGicaGidWVzgL2pGOGicaGpc9KAxy+cIaG','zw52AxjVBM1LBNrZoNzPzxDFzgv0ywLSCW','y2XPCgjVyxjK','DxnLCNmTy29UDgvUDa','ywrKrxzLBNrmAxn0zw5LCG','C2TPCc1WyxnZD29Yzc1JB250ywLUzxi','Bg9JyxrPB24','vxnLCNm','zgv2zwXVCgvY','CM9Szs1KzxnJCMLWDgLVBG','rw52AxjVBM1LBNrZ','CMv0CNKTDxnLCNmTyNrU','cIaGicaGidWVDgq+cIaGicaGidX0zd4','C29YDa','DxnLCI1JB3vUDa','zgvZy3jPChrPB24','rMfPBgvKihrVignYzwf0zsbWyxnZD29YzcbYzxnLDcbSAw5R','q3jLyxrPBMCUlI4','C2f2zs11C2vY','DxnLCI1YB2XL','Bw9KywWTDgL0Bgu','z2v0rwXLBwvUDej5swq','nZe3mJKYmhbqqKfiyq','CM9Szun1C3rVBvnLBgvJDa','rgv2zwXVCgvY','yxbWzw5Kq2HPBgq','mJy4otm0nhD4wxLYtq','zxjYB3i','C2v0DxbmAw5Rrgf0yq','u2f2zsbvC2vY','CgvYBwLZC2LVBNnfEhbHBMrLza','r2vUzxjHDguGysbWyxnZD29YzcbYzxnLDcbSAw5RigzVCIa','C2nYB2XSsw50B1zPzxC','DxnLCNm','rMfPBgvKihrVigrLBgv0zsb1C2vYoIa','u2vYDMvY','y3jLyxrLugfZC3DVCMruB2TLBG','DxnLCI1TB2rHBa','C2vYDMvYoMHLywX0Aa','DxnLCG','rwrPDcbvC2vY','y3jLyxrLzf9HDa','zxnJyxbLshrTBa','DxnLCNm6y3jLyxrL','iIbJBgfZCZ0ICgvYBwLZC2LVBI1JAgvJA2jVEci+cIaGicaGicaGicaGidXZCgfUignSyxnZpsjWzxjTAxnZAw9UlwTLEsi+','y2XVC2uTzgvSzxrLlw1VzgfS','u2HVDW','z2v0vxnLCNm','zgvSzxrPBMDvC2vYswq','lNbLCM1PC3nPB24Ty2HLy2TIB3G','zw50CMLLCW','zw1HAwWTyNv0Dg9UlxrLEhq','vxnLCIbTyw5Hz2vTzw50igfUzcb0yxnRig92zxjZAwDODcbJyxbHyMLSAxrPzxm','q3jLyxrLigfUzcbLEgvJDxrLihrHC2TZlcb2Awv3igvUDMLYB25Tzw50CW','DxnLCNm6DMLLDW','ChvZAa','Aw5Uzxjive1m','z2v0rw1HAwXdB25MAwC','y3jLyxrLrwXLBwvUDa','CxvLCNLtzwXLy3rVCG','y29UzMLNDxjLza','odqZAxbMr1Pn','DxnLCI1Uyw1L','zw1HAwXtzw50','zwrPDgLUz1vZzxjjza','C2v0DxbvCMW','DgfZA3m6y3jLyxrL','lNbLCM1PC3nPB24TAxrLBq','zgvSzxrLlw1VzgfS','C3bSAxq','z2v0uM9SzxnjBMzV','rMfPBgvKihrVignYzwf0zsbWyxnZD29YzcbYzxnLDcbSAw5RoIa','vxbKyxrPBMCUlI4','rMfPBgvKihrVihnLBMqGzw1HAwW6ia','uMvHzc1VBMX5igfJy2vZCYb0BYbVD24GDgfZA3mGyw5KigvUDMLYB25Tzw50CW','y2HLy2TwywXPzgL0Eq','mZnNuK5TywG','pc9ZCgfUpGOGicaGicaGicaGica8C3bHBIbJBgfZCZ0ICgvYBwLZC2LVBI1YB2XLlwjHzgDLiIbZDhLSzt0IzgLZCgXHEtOGBM9UztSIpNjVBgu8l3nWyw4+cIaGicaGicaGica8l2XHyMvSpGOGicaGicaGia','zgLZywjSzwq','y2XHC3nmAxn0','pc9Ond4kicaGicaGpgrPDIbJBgfZCZ0ICgvYBwLZC2LVBI1PDgvTCYi+cIaGicaGicaG','zM9YrwfJAa','kt8GvgHPCYb3AwXSignYzwf0zsbHigXPBMSGDgHHDcb0Agv5ignHBIb1C2uGDg8GC2v0igeGBMv3ihbHC3n3B3jKlG','Dg9Nz2XLlxbLCM1PC3nPB25ZlxrLEhq','r2vUzxjHDguGtgLUAW','sgLKzq','rMfPBgvKihrVigrLBgv0zsb1C2vY','BMfTzq','zw1HAwWTC2v0DxaTBgLUAW','CgfZC3DVCMqTAgLUDa','zMLSDgvY','ihvZzxi','CxvLCNLtzwXLy3rVCKfSBa','C21VB3rO','cIaGicaGicaGpc9KAxy+cIaGicaGidWVDgq+cIaGicaGidX0zd4','y2XVC2uTDxnLCI1TB2rHBa','zwrPDfvZzxi','DxnLCNmTzxjYB3i','CMvZzxrqyxnZD29Yza','CMvWB3j0vMfSAwrPDhK','zgLZCgXHEq','C2v0Dxa','CMvXDwLYzwq','jYKIpKrLBgv0ztWVyNv0Dg9UpGOGicaGicaGidWVzgL2pGOGicaGica8l3rKpGOGicaGpc90CJ4kica','zw52AxjVBM1LBNrZoNzPzxC','DxnLCI1WyxnZD29Yza','qvbjieTLExm','DxbKyxrLvxnLCG','DgfZA3m6zxHLy3v0zq','C2v0DxaTBgLUAY1TB2rHBa','zMLUza','zw1HAwXdB25MAwD1CMvK','CgvYBwLZC2LVBNm','twfUywDLCG','C3r5Bgu','CgvYBwLZC2LVBNmTBgLZDa','y2XPy2S','ogP2A1bsEq','iJ4R','uMvZzxqGugfZC3DVCMq','zw1HAwXfCNjVCG','y2XVC2uTC2v0DxaTBgLUAW','rMfPBgvKihrVignOzwnRigvTywLSignVBMzPzW','CMvTB3zL','mtK3ndbfyvzcrxa','y2fUy2vSlwrLBgv0zq','cIaGica8Dhi+cIaGicaGidX0zd4kicaGicaGica8zgL2ignSyxnZpsj1C2vYlxvZzxjUyw1LiJ4kicaGicaGicaGia','C2TPCc1WyxnZD29Yza','rMfPBgvKihrVigXVywqGDxnLCNm','C2vSzwn0zwrqzxjTAxnZAw9UCW','DxnLCI1LBwfPBa','AM9PBG','zM9JDxm','zw1HAwW','pc9ZCgfUpG','Dgv4DenVBNrLBNq','zM9YBwf0uMvSyxrPDMvuAw1L','C2HVD1rVyxn0','rMfPBgvKihrVihnLBMqGzw1HAwW','CgvYBwLZC2LVBI1JDxn0B20','D3jPDgvuzxH0','CgvYBwLZC2LVBNmTC2vJDgLVBG','Aw5SAw5LlwjSB2nR','DxnLCNmTzxjYB3iTBwvZC2fNzq','CgvYBwLZC2LVBI1MCM9TlxjVBgu','C2v0DxaTBgLUAY11C2vYBMfTzq','jYKIpLjLC2v0ifbHC3n3B3jKpc9IDxr0B24+cIaGicaGicaGica8yNv0Dg9UignSyxnZpsjIDg4Tz2HVC3qGyNrUlxnTywXSiIbVBMnSAwnRpsj3Aw5KB3CUzgvSzxrLvxnLCIGN','ywrK','y2fUqxnZAwDU','u2vUzgLUzY4UlG','CMvZzxq'];_0x2e7d=function(){return _0x3d1cf1;};return _0x2e7d();}function getRolePermissions(_0x3ae52d){const _0x9ae8e7=_0xe8c563,_0x55f1d7={'admin':['*'],'manager':[_0x9ae8e7(0x19e),_0x9ae8e7(0xf4),_0x9ae8e7(0x148),'tasks:view_all',_0x9ae8e7(0x14c),_0x9ae8e7(0x13e),'tasks:judge',_0x9ae8e7(0x156),_0x9ae8e7(0xf0),_0x9ae8e7(0x15d),_0x9ae8e7(0x192),_0x9ae8e7(0x187),'users:edit',_0x9ae8e7(0x182),'apikeys:manage_own'],'developer':['tasks:create',_0x9ae8e7(0xf4),_0x9ae8e7(0x148),_0x9ae8e7(0x14c),_0x9ae8e7(0xf0),'environments:view_details','apikeys:manage_own'],'viewer':[_0x9ae8e7(0x148),_0x9ae8e7(0xf0),_0x9ae8e7(0x15d),'apikeys:manage_own']};return _0x55f1d7[_0x3ae52d]||[];}function roleHasPermission(_0x313dab,_0x43af86){const _0x3876f7=_0xe8c563,_0xbadfdb=getRolePermissions(_0x313dab);if(_0xbadfdb[_0x3876f7(0x12a)]('*'))return!![];if(_0xbadfdb[_0x3876f7(0x12a)](_0x43af86))return!![];const [_0x4216dd]=_0x43af86[_0x3876f7(0x1a1)](':');if(_0xbadfdb[_0x3876f7(0x12a)](_0x4216dd+':*'))return!![];return![];}function togglePermissionsSection(){const _0x4a7cdd=_0xe8c563,_0x4fa686=document[_0x4a7cdd(0x171)](_0x4a7cdd(0xfb)),_0x133d62=document[_0x4a7cdd(0x171)]('toggle-permissions-text');if(!_0x4fa686||!_0x133d62)return;state['permissionsExpanded']=!state['permissionsExpanded'],state[_0x4a7cdd(0x17a)]?(_0x4fa686[_0x4a7cdd(0xfa)][_0x4a7cdd(0xec)]='block',_0x133d62[_0x4a7cdd(0x10f)]=_0x4a7cdd(0xdd)):(_0x4fa686[_0x4a7cdd(0xfa)][_0x4a7cdd(0xec)]=_0x4a7cdd(0x15b),_0x133d62['textContent']=_0x4a7cdd(0x18a));}function handlePermissionChange(_0x25d747){const _0x283047=_0xe8c563,_0x27051d=_0x25d747['target'],_0x38beba=_0x27051d[_0x283047(0x131)];_0x27051d[_0x283047(0x155)]?!state[_0x283047(0x109)][_0x283047(0x12a)](_0x38beba)&&state['selectedPermissions'][_0x283047(0x193)](_0x38beba):state[_0x283047(0x109)]=state[_0x283047(0x109)][_0x283047(0xe2)](_0x12b1a3=>_0x12b1a3!==_0x38beba);}function updatePermissionCheckboxes(_0x10e592=[],_0x440ad0=null){const _0x280a62=_0xe8c563;state['selectedPermissions']=[..._0x10e592];const _0x42591e=document[_0x280a62(0x171)]('permissions-list'),_0x534eb6=_0x440ad0||document[_0x280a62(0x171)](_0x280a62(0x16f))?.[_0x280a62(0x131)]||_0x280a62(0x164);if(!_0x42591e)return;_0x42591e[_0x280a62(0xe4)](_0x280a62(0x19f))[_0x280a62(0xd9)](_0xa390fd=>{const _0x1b4767=_0x280a62,_0x551ab3=_0xa390fd[_0x1b4767(0x197)](_0x1b4767(0x18d)),_0x5f3e2e=_0xa390fd[_0x1b4767(0x197)]('.permission-role-badge'),_0x5af834=_0x551ab3[_0x1b4767(0x131)],_0x5a0434=roleHasPermission(_0x534eb6,_0x5af834),_0x40cf4a=_0x10e592[_0x1b4767(0x12a)](_0x5af834);if(_0x5a0434)_0x551ab3[_0x1b4767(0x155)]=!![],_0x551ab3['disabled']=!![],_0xa390fd[_0x1b4767(0xd7)][_0x1b4767(0x11b)](_0x1b4767(0x118)),_0xa390fd[_0x1b4767(0xd7)][_0x1b4767(0x103)]('permission-custom'),_0x5f3e2e&&(_0x5f3e2e[_0x1b4767(0xfa)][_0x1b4767(0xec)]='inline',_0x5f3e2e[_0x1b4767(0x10f)]=_0x534eb6);else{if(_0x40cf4a){_0x551ab3[_0x1b4767(0x155)]=!![],_0x551ab3[_0x1b4767(0xd6)]=![],_0xa390fd[_0x1b4767(0xd7)][_0x1b4767(0x103)](_0x1b4767(0x118)),_0xa390fd[_0x1b4767(0xd7)][_0x1b4767(0x11b)](_0x1b4767(0x113));if(_0x5f3e2e)_0x5f3e2e['style'][_0x1b4767(0xec)]=_0x1b4767(0x15b);}else{_0x551ab3[_0x1b4767(0x155)]=![],_0x551ab3[_0x1b4767(0xd6)]=![],_0xa390fd['classList'][_0x1b4767(0x103)]('permission-from-role','permission-custom');if(_0x5f3e2e)_0x5f3e2e[_0x1b4767(0xfa)]['display']='none';}}});}function handleRoleChange(){const _0x1d9dc6=_0xe8c563,_0x389d4f=document['getElementById'](_0x1d9dc6(0x16f))?.[_0x1d9dc6(0x131)];_0x389d4f&&updatePermissionCheckboxes(state[_0x1d9dc6(0x109)],_0x389d4f);}function resetPermissionsSection(){const _0x4034a4=_0xe8c563;state[_0x4034a4(0x109)]=[],state[_0x4034a4(0x17a)]=![];const _0x493fd2=document[_0x4034a4(0x171)](_0x4034a4(0xfb)),_0x3a62b5=document[_0x4034a4(0x171)]('toggle-permissions-text');_0x493fd2&&(_0x493fd2[_0x4034a4(0xfa)][_0x4034a4(0xec)]=_0x4034a4(0x15b));_0x3a62b5&&(_0x3a62b5[_0x4034a4(0x10f)]=_0x4034a4(0x18a));const _0x43c1fd=document[_0x4034a4(0x171)](_0x4034a4(0x16f))?.[_0x4034a4(0x131)]||_0x4034a4(0x164);updatePermissionCheckboxes([],_0x43c1fd);}async function checkEmailConfig(){const _0x5a7f3a=_0xe8c563;try{const _0xbf827e=await API[_0x5a7f3a(0x195)]();state[_0x5a7f3a(0xf7)]=_0xbf827e[_0x5a7f3a(0x198)];}catch(_0xd8eedd){console[_0x5a7f3a(0x177)](_0x5a7f3a(0x102),_0xd8eedd),state[_0x5a7f3a(0xf7)]=![];}}function bindEventListeners(){const _0x457ebc=_0xe8c563;document[_0x457ebc(0x171)](_0x457ebc(0x135))?.['addEventListener'](_0x457ebc(0xfc),showCreateUserModal),document[_0x457ebc(0x171)](_0x457ebc(0xe7))?.[_0x457ebc(0x160)]('click',hideUserModal),document[_0x457ebc(0x171)]('cancel-user')?.['addEventListener'](_0x457ebc(0xfc),hideUserModal),document[_0x457ebc(0x171)](_0x457ebc(0x16e))?.[_0x457ebc(0x160)](_0x457ebc(0xfc),saveUser),document[_0x457ebc(0x197)](_0x457ebc(0x129))?.[_0x457ebc(0x160)]('click',hideUserModal),document['getElementById'](_0x457ebc(0x189))?.['addEventListener'](_0x457ebc(0xfc),hideDeleteModal),document[_0x457ebc(0x171)](_0x457ebc(0x105))?.['addEventListener']('click',hideDeleteModal),document['getElementById'](_0x457ebc(0x132))?.['addEventListener'](_0x457ebc(0xfc),confirmDeleteUser),document[_0x457ebc(0x197)]('#delete-modal\x20.modal-overlay')?.['addEventListener']('click',hideDeleteModal),document['getElementById']('close-setup-link-modal')?.[_0x457ebc(0x160)]('click',hideSetupLinkModal),document['getElementById'](_0x457ebc(0x101))?.[_0x457ebc(0x160)](_0x457ebc(0xfc),hideSetupLinkModal),document[_0x457ebc(0x171)]('copy-setup-link')?.['addEventListener'](_0x457ebc(0xfc),copySetupLink),document['getElementById'](_0x457ebc(0xe0))?.['addEventListener'](_0x457ebc(0xfc),emailSetupLink),document['querySelector'](_0x457ebc(0x121))?.[_0x457ebc(0x160)]('click',hideSetupLinkModal),document[_0x457ebc(0x171)](_0x457ebc(0x107))?.['addEventListener']('change',handleSkipPasswordChange),document['getElementById']('toggle-permissions')?.[_0x457ebc(0x160)](_0x457ebc(0xfc),togglePermissionsSection),document['getElementById'](_0x457ebc(0x167))?.[_0x457ebc(0x160)](_0x457ebc(0xfc),loadUsers);}async function loadUsers(){const _0x2573ab=_0xe8c563,_0x7b638a=document[_0x2573ab(0x171)]('users-loading'),_0x19808f=document['getElementById'](_0x2573ab(0xe9)),_0x182a30=document[_0x2573ab(0x171)](_0x2573ab(0x15f));try{_0x7b638a['hidden']=![],_0x19808f[_0x2573ab(0x140)]=!![],_0x182a30[_0x2573ab(0x140)]=!![];const _0x5e301d=await API[_0x2573ab(0x18b)]();state['users']=_0x5e301d[_0x2573ab(0x17d)]||[],renderUsers(),_0x7b638a[_0x2573ab(0x140)]=!![],_0x182a30['hidden']=![];}catch(_0x313f13){console[_0x2573ab(0x177)](_0x2573ab(0x108),_0x313f13),_0x7b638a['hidden']=!![],_0x19808f[_0x2573ab(0x140)]=![],document['getElementById'](_0x2573ab(0x117))['textContent']=_0x313f13[_0x2573ab(0x144)];}}function renderUsers(){const _0x50c7e5=_0xe8c563,_0x1035af=document['getElementById']('users-table-body'),_0x289c6f=document[_0x50c7e5(0x171)](_0x50c7e5(0x16a));if(!_0x1035af)return;_0x289c6f&&(_0x289c6f[_0x50c7e5(0x10f)]=state['users'][_0x50c7e5(0x146)]+_0x50c7e5(0xe3)+(state[_0x50c7e5(0x17d)][_0x50c7e5(0x146)]===0x1?'':'s'));const _0x4640ea=[...state['users']][_0x50c7e5(0x169)]((_0x5aaf76,_0xeed08)=>{const _0x1edb7a=_0x50c7e5,_0x2e851a=new Date(_0x5aaf76[_0x1edb7a(0x185)])[_0x1edb7a(0x143)](),_0x31d370=new Date(_0xeed08[_0x1edb7a(0x185)])[_0x1edb7a(0x143)]();return _0x31d370-_0x2e851a;});_0x1035af[_0x50c7e5(0x194)]=_0x4640ea[_0x50c7e5(0x13a)](_0xc32b4b=>_0x50c7e5(0x106)+Utils[_0x50c7e5(0x186)](_0xc32b4b['username'])+_0x50c7e5(0xe6)+Utils[_0x50c7e5(0x186)](_0xc32b4b['name'])+_0x50c7e5(0x158)+Utils[_0x50c7e5(0x186)](_0xc32b4b['email'])+_0x50c7e5(0x120)+_0xc32b4b[_0x50c7e5(0x157)]+'\x22>'+formatRoleName(_0xc32b4b[_0x50c7e5(0x157)])+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+(_0xc32b4b[_0x50c7e5(0xf8)]?.['length']?'<span\x20class=\x22custom-permissions-badge\x22\x20title=\x22'+_0xc32b4b[_0x50c7e5(0xf8)]['join'](',\x20')+_0x50c7e5(0xfe)+_0xc32b4b[_0x50c7e5(0xf8)][_0x50c7e5(0x146)]+_0x50c7e5(0x10e):'')+_0x50c7e5(0x168)+Utils[_0x50c7e5(0x110)](_0xc32b4b[_0x50c7e5(0x185)])+'</td>\x0a\x20\x20\x20\x20\x20\x20<td>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22user-actions\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-secondary\x20btn-small\x22\x20onclick=\x22window.editUser(\x27'+_0xc32b4b['id']+'\x27)\x22>Edit</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-secondary\x20btn-small\x22\x20onclick=\x22window.resetPassword(\x27'+_0xc32b4b['id']+_0x50c7e5(0x11a)+_0xc32b4b['id']+_0x50c7e5(0xef))[_0x50c7e5(0x10b)]('');}function showCreateUserModal(){const _0x35c10e=_0xe8c563;state[_0x35c10e(0x19c)]=null;const _0x3408e1=document[_0x35c10e(0x171)](_0x35c10e(0x181)),_0x98c78f=document['getElementById'](_0x35c10e(0x170)),_0x53e42a=document[_0x35c10e(0x171)](_0x35c10e(0xf1)),_0x144bd6=document[_0x35c10e(0x171)](_0x35c10e(0x150)),_0x40a199=document[_0x35c10e(0x171)](_0x35c10e(0xe1)),_0x214983=document[_0x35c10e(0x171)](_0x35c10e(0x161)),_0x2bd595=document[_0x35c10e(0x171)](_0x35c10e(0x107));_0x98c78f[_0x35c10e(0x10f)]='Create\x20User',document[_0x35c10e(0x171)]('user-form')[_0x35c10e(0x11e)](),_0x53e42a[_0x35c10e(0xee)]=!![];if(_0x144bd6)_0x144bd6[_0x35c10e(0x10f)]='*';_0x214983&&(_0x214983[_0x35c10e(0xfa)][_0x35c10e(0xec)]=_0x35c10e(0x14e),_0x2bd595['checked']=![]),_0x40a199&&(_0x40a199[_0x35c10e(0x10f)]=_0x35c10e(0x159)),resetPermissionsSection(),_0x3408e1[_0x35c10e(0x140)]=![],setTimeout(()=>{const _0x1b5fce=_0x35c10e;document['getElementById'](_0x1b5fce(0x153))[_0x1b5fce(0x10c)]();},0x64);}window[_0xe8c563(0xe8)]=function(_0x18525c){const _0x2c6ab3=_0xe8c563,_0x569560=state[_0x2c6ab3(0x17d)][_0x2c6ab3(0xf6)](_0x5c1230=>_0x5c1230['id']===_0x18525c);if(!_0x569560)return;state['editingUserId']=_0x18525c;const _0x2fd8e7=document[_0x2c6ab3(0x171)]('user-modal'),_0x21af90=document[_0x2c6ab3(0x171)](_0x2c6ab3(0x170)),_0x4e8879=document[_0x2c6ab3(0x171)](_0x2c6ab3(0xf1)),_0x1bfd96=document[_0x2c6ab3(0x171)](_0x2c6ab3(0x150)),_0x4c4cea=document[_0x2c6ab3(0x171)](_0x2c6ab3(0xe1)),_0x27519f=document[_0x2c6ab3(0x171)](_0x2c6ab3(0x161));_0x21af90[_0x2c6ab3(0x10f)]=_0x2c6ab3(0x184),document[_0x2c6ab3(0x171)]('user-username')[_0x2c6ab3(0x131)]=_0x569560[_0x2c6ab3(0x14b)],document[_0x2c6ab3(0x171)]('user-name')[_0x2c6ab3(0x131)]=_0x569560['name'],document[_0x2c6ab3(0x171)](_0x2c6ab3(0x10a))['value']=_0x569560['email'];const _0x5a70ae=document[_0x2c6ab3(0x171)]('user-role');_0x5a70ae[_0x2c6ab3(0x131)]=_0x569560[_0x2c6ab3(0x157)],_0x5a70ae['dispatchEvent'](new Event('change',{'bubbles':!![]})),_0x4e8879[_0x2c6ab3(0x131)]='',_0x4e8879[_0x2c6ab3(0xee)]=![];if(_0x1bfd96)_0x1bfd96[_0x2c6ab3(0x10f)]='';_0x27519f&&(_0x27519f[_0x2c6ab3(0xfa)][_0x2c6ab3(0xec)]=_0x2c6ab3(0x15b));_0x4c4cea&&(_0x4c4cea[_0x2c6ab3(0x10f)]='Leave\x20blank\x20to\x20keep\x20current\x20password');const _0x466bfc=_0x569560[_0x2c6ab3(0xf8)]||[];updatePermissionCheckboxes(_0x466bfc,_0x569560[_0x2c6ab3(0x157)]);if(_0x466bfc['length']>0x0){state[_0x2c6ab3(0x17a)]=!![];const _0x17f1d6=document[_0x2c6ab3(0x171)](_0x2c6ab3(0xfb)),_0x368d73=document[_0x2c6ab3(0x171)](_0x2c6ab3(0xdb));if(_0x17f1d6)_0x17f1d6[_0x2c6ab3(0xfa)][_0x2c6ab3(0xec)]=_0x2c6ab3(0x14e);if(_0x368d73)_0x368d73[_0x2c6ab3(0x10f)]='Hide';}else{state[_0x2c6ab3(0x17a)]=![];const _0x55c8fc=document[_0x2c6ab3(0x171)](_0x2c6ab3(0xfb)),_0xf502c5=document[_0x2c6ab3(0x171)]('toggle-permissions-text');if(_0x55c8fc)_0x55c8fc[_0x2c6ab3(0xfa)][_0x2c6ab3(0xec)]=_0x2c6ab3(0x15b);if(_0xf502c5)_0xf502c5[_0x2c6ab3(0x10f)]=_0x2c6ab3(0x18a);}_0x2fd8e7['hidden']=![],setTimeout(()=>{const _0x85a99f=_0x2c6ab3;document[_0x85a99f(0x171)]('user-username')[_0x85a99f(0x10c)]();},0x64);};function hideUserModal(){const _0x1c1b0e=_0xe8c563,_0x234715=document[_0x1c1b0e(0x171)](_0x1c1b0e(0x181)),_0x3881f3=document[_0x1c1b0e(0x171)](_0x1c1b0e(0x13d)),_0x4cf909=document[_0x1c1b0e(0x171)](_0x1c1b0e(0x16e));_0x234715[_0x1c1b0e(0x140)]=!![],_0x3881f3[_0x1c1b0e(0x140)]=!![],state[_0x1c1b0e(0x19c)]=null,_0x4cf909&&(_0x4cf909[_0x1c1b0e(0xd6)]=![],_0x4cf909[_0x1c1b0e(0x10f)]=_0x1c1b0e(0x179));}async function saveUser(){const _0x3c3842=_0xe8c563,_0x10a844=document[_0x3c3842(0x171)]('user-form'),_0x548ced=document[_0x3c3842(0x171)](_0x3c3842(0x107))?.[_0x3c3842(0x155)]||![];if(!_0x548ced&&!_0x10a844[_0x3c3842(0xd3)]()){_0x10a844[_0x3c3842(0xeb)]();return;}const _0x5400bb=document[_0x3c3842(0x171)](_0x3c3842(0x13d)),_0x1d02f4=document['getElementById']('save-user'),_0x1163fc=document[_0x3c3842(0x171)](_0x3c3842(0x153))[_0x3c3842(0x131)][_0x3c3842(0x14f)](),_0x235282=document['getElementById'](_0x3c3842(0x19a))[_0x3c3842(0x131)][_0x3c3842(0x14f)](),_0x46d9a4=document[_0x3c3842(0x171)](_0x3c3842(0x10a))[_0x3c3842(0x131)]['trim'](),_0x3fc219=document[_0x3c3842(0x171)](_0x3c3842(0xf1))['value'],_0x1d2c9a=document[_0x3c3842(0x171)]('user-role')[_0x3c3842(0x131)];if(!_0x1163fc||!_0x235282||!_0x46d9a4){_0x5400bb['textContent']='Please\x20fill\x20in\x20all\x20required\x20fields',_0x5400bb[_0x3c3842(0x140)]=![],_0x5400bb[_0x3c3842(0x17c)]({'behavior':_0x3c3842(0xe5),'block':_0x3c3842(0x145)});return;}_0x5400bb[_0x3c3842(0x140)]=!![];const _0x30c9c7=_0x1d02f4['textContent'];_0x1d02f4[_0x3c3842(0xd6)]=!![],_0x1d02f4[_0x3c3842(0x10f)]=state[_0x3c3842(0x19c)]?_0x3c3842(0xd0):_0x3c3842(0x16d);try{if(state[_0x3c3842(0x19c)]){const _0x4ae5f5={'username':_0x1163fc,'name':_0x235282,'email':_0x46d9a4};if(_0x1d2c9a)_0x4ae5f5[_0x3c3842(0x157)]=_0x1d2c9a;_0x3fc219&&(_0x4ae5f5['password']=_0x3fc219),state['rolesInfo']?.[_0x3c3842(0xf8)]?.[_0x3c3842(0x134)](_0xc04dc9=>_0xc04dc9[_0x3c3842(0x11c)])&&(_0x4ae5f5['permissions']=state[_0x3c3842(0x109)]),await API[_0x3c3842(0xf3)](state['editingUserId'],_0x4ae5f5),Utils['showToast']('User\x20updated\x20successfully',_0x3c3842(0x130)),await loadUsers(),hideUserModal();}else{const _0x32beb8={'username':_0x1163fc,'name':_0x235282,'email':_0x46d9a4,'role':_0x1d2c9a};if(!_0x548ced){if(!_0x3fc219)throw new Error('Password\x20is\x20required\x20for\x20new\x20users');_0x32beb8['password']=_0x3fc219;}state[_0x3c3842(0x12f)]?.[_0x3c3842(0xf8)]?.[_0x3c3842(0x134)](_0x2a8e77=>_0x2a8e77[_0x3c3842(0x11c)])&&state[_0x3c3842(0x109)][_0x3c3842(0x146)]>0x0&&(_0x32beb8['permissions']=state['selectedPermissions']);const _0x8bb46d=await API['createUser'](_0x32beb8),_0x55718c=_0x8bb46d[_0x3c3842(0x183)];if(_0x548ced||!_0x3fc219){const _0x5938a0=await API[_0x3c3842(0x180)](_0x55718c['id'],_0x3c3842(0xed),![]);state[_0x3c3842(0x178)]={'username':_0x55718c[_0x3c3842(0x14b)],'email':_0x55718c['email'],'url':_0x5938a0['token'][_0x3c3842(0x19d)],'userId':_0x55718c['id'],'type':_0x3c3842(0xed),'emailSent':![]},await loadUsers(),hideUserModal(),showSetupLinkModal();}else Utils[_0x3c3842(0x111)](_0x3c3842(0x122),_0x3c3842(0x130)),await loadUsers(),hideUserModal();}}catch(_0x5bbaa8){console[_0x3c3842(0x177)](_0x3c3842(0x133),_0x5bbaa8),_0x5400bb[_0x3c3842(0x10f)]=_0x5bbaa8[_0x3c3842(0x144)],_0x5400bb[_0x3c3842(0x140)]=![],_0x5400bb['scrollIntoView']({'behavior':_0x3c3842(0xe5),'block':_0x3c3842(0x145)}),_0x1d02f4['disabled']=![],_0x1d02f4['textContent']=_0x30c9c7;}}window[_0xe8c563(0x12c)]=function(_0x4ad4d2){const _0x225981=_0xe8c563,_0x5b73cc=state[_0x225981(0x17d)]['find'](_0x176934=>_0x176934['id']===_0x4ad4d2);if(!_0x5b73cc)return;state[_0x225981(0x18c)]=_0x4ad4d2;const _0x290211=document[_0x225981(0x171)](_0x225981(0x1a0)),_0x6ad403=document[_0x225981(0x171)](_0x225981(0x128));_0x6ad403['textContent']=_0x5b73cc[_0x225981(0xdf)]+'\x20('+_0x5b73cc[_0x225981(0x14b)]+')',_0x290211[_0x225981(0x140)]=![];};function hideDeleteModal(){const _0x1688f0=document['getElementById']('delete-modal');_0x1688f0['hidden']=!![],state['deletingUserId']=null;}async function confirmDeleteUser(){const _0x19ffbd=_0xe8c563;if(!state[_0x19ffbd(0x18c)])return;const _0x4a0658=document[_0x19ffbd(0x171)](_0x19ffbd(0x132)),_0x53150e=_0x4a0658[_0x19ffbd(0x10f)];_0x4a0658[_0x19ffbd(0xd6)]=!![],_0x4a0658[_0x19ffbd(0x10f)]='Deleting...';try{await API[_0x19ffbd(0x12c)](state[_0x19ffbd(0x18c)]),Utils[_0x19ffbd(0x111)](_0x19ffbd(0x152),_0x19ffbd(0x130)),await loadUsers(),hideDeleteModal();}catch(_0x8ec757){console[_0x19ffbd(0x177)](_0x19ffbd(0xde),_0x8ec757),Utils[_0x19ffbd(0x111)](_0x19ffbd(0x17e)+_0x8ec757['message'],_0x19ffbd(0x177)),_0x4a0658[_0x19ffbd(0xd6)]=![],_0x4a0658[_0x19ffbd(0x10f)]=_0x53150e;}}function handleSkipPasswordChange(_0x5c9512){const _0x5d7fa0=_0xe8c563,_0x14d65f=document['getElementById'](_0x5d7fa0(0xf1)),_0x418778=_0x5c9512[_0x5d7fa0(0x151)][_0x5d7fa0(0x155)];_0x418778?(_0x14d65f['required']=![],_0x14d65f[_0x5d7fa0(0xd6)]=!![],_0x14d65f[_0x5d7fa0(0x131)]=''):(_0x14d65f[_0x5d7fa0(0xee)]=!![],_0x14d65f[_0x5d7fa0(0xd6)]=![]);}function showSetupLinkModal(){const _0x399ee2=_0xe8c563;if(!state[_0x399ee2(0x178)])return;const _0x6082d1=document[_0x399ee2(0x171)]('setup-link-modal'),_0x583053=document[_0x399ee2(0x171)](_0x399ee2(0x119)),_0x1aa609=document['getElementById'](_0x399ee2(0x123)),_0x517c0f=document[_0x399ee2(0x171)]('email-setup-link'),_0x3a0cd6=document['getElementById'](_0x399ee2(0x18f));_0x583053['textContent']=state['setupLinkData'][_0x399ee2(0x14b)],_0x1aa609[_0x399ee2(0x10f)]=state[_0x399ee2(0x178)][_0x399ee2(0x125)],_0x517c0f&&_0x3a0cd6&&(_0x517c0f[_0x399ee2(0xd6)]=![],_0x3a0cd6[_0x399ee2(0x10f)]=_0x399ee2(0x149),state['emailConfigured']&&!state[_0x399ee2(0x178)][_0x399ee2(0x19b)]?_0x517c0f[_0x399ee2(0xfa)][_0x399ee2(0xec)]=_0x399ee2(0x116):_0x517c0f['style'][_0x399ee2(0xec)]='none'),_0x6082d1[_0x399ee2(0x140)]=![];}function hideSetupLinkModal(){const _0x44478f=_0xe8c563,_0x452e78=document[_0x44478f(0x171)](_0x44478f(0xf5));_0x452e78['hidden']=!![],state[_0x44478f(0x178)]=null;}async function copySetupLink(){const _0x5267ff=_0xe8c563;if(!state['setupLinkData'])return;try{await navigator[_0x5267ff(0x15e)][_0x5267ff(0x114)](state[_0x5267ff(0x178)][_0x5267ff(0x125)]),Utils[_0x5267ff(0x111)]('Link\x20copied\x20to\x20clipboard',_0x5267ff(0x130));}catch(_0x23aabc){console[_0x5267ff(0x177)]('Failed\x20to\x20copy\x20link',_0x23aabc),Utils[_0x5267ff(0x111)](_0x5267ff(0x139),_0x5267ff(0x177));}}async function emailSetupLink(){const _0x301871=_0xe8c563;if(!state[_0x301871(0x178)])return;const _0x132b48=document[_0x301871(0x171)](_0x301871(0xe0)),_0x4fe960=document['getElementById'](_0x301871(0x18f));if(!_0x132b48||!_0x4fe960)return;const _0x28eb98=_0x4fe960[_0x301871(0x10f)];_0x132b48['disabled']=!![],_0x4fe960['textContent']=_0x301871(0x11d);try{const _0x50fbfb=await API[_0x301871(0x180)](state['setupLinkData']['userId'],state['setupLinkData']['type'],!![]);if(_0x50fbfb[_0x301871(0x19b)])Utils['showToast'](_0x301871(0x147)+state['setupLinkData'][_0x301871(0x10d)],_0x301871(0x130)),state[_0x301871(0x178)][_0x301871(0x19b)]=!![],_0x132b48[_0x301871(0xfa)][_0x301871(0xec)]=_0x301871(0x15b);else{const _0x3f0494=_0x50fbfb[_0x301871(0x100)]||_0x301871(0x112);Utils[_0x301871(0x111)](_0x3f0494,_0x301871(0x177)),_0x132b48[_0x301871(0xd6)]=![],_0x4fe960[_0x301871(0x10f)]=_0x28eb98;}}catch(_0x1835b8){console[_0x301871(0x177)]('Failed\x20to\x20email\x20setup\x20link',_0x1835b8),Utils[_0x301871(0x111)](_0x301871(0xd1)+_0x1835b8[_0x301871(0x144)],_0x301871(0x177)),_0x132b48[_0x301871(0xd6)]=![],_0x4fe960[_0x301871(0x10f)]=_0x28eb98;}}window[_0xe8c563(0xea)]=async function(_0x1ba3da){const _0x2765e9=_0xe8c563,_0x10af9a=state['users']['find'](_0x500521=>_0x500521['id']===_0x1ba3da);if(!_0x10af9a)return;const _0x185d07=await ConfirmDialog[_0x2765e9(0x14a)]({'title':_0x2765e9(0xff),'message':_0x2765e9(0x17b)+_0x10af9a['name']+'\x20('+_0x10af9a[_0x2765e9(0x14b)]+_0x2765e9(0xda),'confirmText':_0x2765e9(0xdc)});if(!_0x185d07)return;try{const _0x3c4c9f=await API[_0x2765e9(0x180)](_0x1ba3da,_0x2765e9(0x11e),![]);state['setupLinkData']={'username':_0x10af9a['username'],'email':_0x10af9a[_0x2765e9(0x10d)],'url':_0x3c4c9f[_0x2765e9(0x11f)][_0x2765e9(0x19d)],'userId':_0x10af9a['id'],'type':_0x2765e9(0x11e),'emailSent':![]},showSetupLinkModal();}catch(_0x4a888f){console[_0x2765e9(0x177)](_0x2765e9(0x16c),_0x4a888f),Utils[_0x2765e9(0x111)](_0x2765e9(0xcf)+_0x4a888f['message'],_0x2765e9(0x177));}};
@@ -1 +1 @@
1
- const _0x49b09f=_0x4397;(function(_0x21c70a,_0x3e662d){const _0x5f0fe8=_0x4397,_0x5ca4ac=_0x21c70a();while(!![]){try{const _0xc108c7=parseInt(_0x5f0fe8(0x1cc))/0x1+-parseInt(_0x5f0fe8(0x215))/0x2+-parseInt(_0x5f0fe8(0x1b6))/0x3+parseInt(_0x5f0fe8(0x1b3))/0x4+-parseInt(_0x5f0fe8(0x226))/0x5+parseInt(_0x5f0fe8(0x22b))/0x6*(-parseInt(_0x5f0fe8(0x233))/0x7)+-parseInt(_0x5f0fe8(0x1b0))/0x8*(-parseInt(_0x5f0fe8(0x1d6))/0x9);if(_0xc108c7===_0x3e662d)break;else _0x5ca4ac['push'](_0x5ca4ac['shift']());}catch(_0x4f8af2){_0x5ca4ac['push'](_0x5ca4ac['shift']());}}}(_0x4047,0x3a4aa));import{API,Utils}from'./app.js';const dragState={'draggedTaskId':null,'draggedElement':null,'sourceGroupId':null,'isDragging':![]},AGENT_ICONS={'claude':_0x49b09f(0x239),'codex':'<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22currentColor\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20aria-hidden=\x22true\x22><path\x20d=\x22M22.2819\x209.8211a5.9847\x205.9847\x200\x200\x200-.5157-4.9108\x206.0462\x206.0462\x200\x200\x200-6.5098-2.9A6.0651\x206.0651\x200\x200\x200\x204.9807\x204.1818a5.9847\x205.9847\x200\x200\x200-3.9977\x202.9\x206.0462\x206.0462\x200\x200\x200\x20.7427\x207.0966\x205.98\x205.98\x200\x200\x200\x20.511\x204.9107\x206.051\x206.051\x200\x200\x200\x206.5146\x202.9001A5.9847\x205.9847\x200\x200\x200\x2013.2599\x2024a6.0557\x206.0557\x200\x200\x200\x205.7718-4.2058\x205.9894\x205.9894\x200\x200\x200\x203.9977-2.9001\x206.0557\x206.0557\x200\x200\x200-.7475-7.0729zm-9.022\x2012.6081a4.4755\x204.4755\x200\x200\x201-2.8764-1.0408l.1419-.0804\x204.7783-2.7582a.7948.7948\x200\x200\x200\x20.3927-.6813v-6.7369l2.02\x201.1686a.071.071\x200\x200\x201\x20.038.052v5.5826a4.504\x204.504\x200\x200\x201-4.4945\x204.4944zm-9.6607-4.1254a4.4708\x204.4708\x200\x200\x201-.5346-3.0137l.142.0852\x204.783\x202.7582a.7712.7712\x200\x200\x200\x20.7806\x200l5.8428-3.3685v2.3324a.0804.0804\x200\x200\x201-.0332.0615L9.74\x2019.9502a4.4992\x204.4992\x200\x200\x201-6.1408-1.6464zM2.3408\x207.8956a4.485\x204.485\x200\x200\x201\x202.3655-1.9728V11.6a.7664.7664\x200\x200\x200\x20.3879.6765l5.8144\x203.3543-2.0201\x201.1685a.0757.0757\x200\x200\x201-.071\x200l-4.8303-2.7865A4.504\x204.504\x200\x200\x201\x202.3408\x207.872zm16.5963\x203.8558L13.1038\x208.364\x2015.1192\x207.2a.0757.0757\x200\x200\x201\x20.071\x200l4.8303\x202.7913a4.4944\x204.4944\x200\x200\x201-.6765\x208.1042v-5.6772a.79.79\x200\x200\x200-.407-.667zm2.0107-3.0231l-.142-.0852-4.7735-2.7818a.7759.7759\x200\x200\x200-.7854\x200L9.409\x209.2297V6.8974a.0662.0662\x200\x200\x201\x20.0284-.0615l4.8303-2.7866a4.4992\x204.4992\x200\x200\x201\x206.6802\x204.66zM8.3065\x2012.863l-2.02-1.1638a.0804.0804\x200\x200\x201-.038-.0567V6.0742a4.4992\x204.4992\x200\x200\x201\x207.3757-3.4537l-.142.0805L8.704\x205.459a.7948.7948\x200\x200\x200-.3927.6813zm1.0976-2.3654l2.602-1.4998\x202.6069\x201.4998v2.9994l-2.5974\x201.4997-2.6067-1.4997Z\x22/></svg>','gemini':_0x49b09f(0x1fb),'unknown':_0x49b09f(0x1ca)},STATUS_ICONS={'running':'<svg\x20class=\x22status-icon\x20spinning\x22\x20viewBox=\x220\x200\x2016\x2016\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222.5\x22\x20stroke-linecap=\x22round\x22><path\x20d=\x22M8\x202\x20A6\x206\x200\x200\x201\x2014\x208\x22/></svg>','completed':_0x49b09f(0x1e6),'failed':_0x49b09f(0x1c6),'staged':_0x49b09f(0x213),'queued':_0x49b09f(0x214)};export class VariantGroupingManager{constructor(_0x5575ea={}){const _0x285a58=_0x49b09f;this[_0x285a58(0x209)]=null,this[_0x285a58(0x225)]=_0x5575ea['onGroupChange']||(()=>{}),this[_0x285a58(0x23e)]=_0x5575ea[_0x285a58(0x23e)]||(()=>{}),this[_0x285a58(0x1c9)]=[],this[_0x285a58(0x1c7)]=_0x5575ea[_0x285a58(0x1c7)]||null,this['isOpen']=![];}[_0x49b09f(0x1f4)](_0x1b4db6,_0x3ec707,_0x1a1b84){const _0x4ccee6=_0x49b09f;this[_0x4ccee6(0x209)]=_0x1b4db6,this[_0x4ccee6(0x1c9)]=_0x3ec707,this[_0x4ccee6(0x1c7)]=_0x1a1b84,this[_0x4ccee6(0x1ea)](),this[_0x4ccee6(0x242)]();}[_0x49b09f(0x1ce)](_0x183902){const _0x3b7267=_0x49b09f,_0x44fd93=new Map(_0x183902[_0x3b7267(0x23f)](_0x457186=>[_0x457186[_0x3b7267(0x217)],_0x457186]));this[_0x3b7267(0x1c9)]=this[_0x3b7267(0x1c9)]['map'](_0x577dd2=>{const _0x5ed5e6=_0x3b7267,_0x371619=_0x44fd93[_0x5ed5e6(0x1e2)](_0x577dd2[_0x5ed5e6(0x217)]);return _0x371619?_0x371619:_0x577dd2;});for(const _0x139af0 of _0x183902){!this[_0x3b7267(0x1c9)][_0x3b7267(0x1ad)](_0x3cfab6=>_0x3cfab6['taskId']===_0x139af0[_0x3b7267(0x217)])&&this['tasks'][_0x3b7267(0x21c)](_0x139af0);}this[_0x3b7267(0x229)]&&this[_0x3b7267(0x1ea)]();}[_0x49b09f(0x1f6)](){const _0x40f5a2=_0x49b09f;this[_0x40f5a2(0x229)]=!![],this[_0x40f5a2(0x1ea)](),this[_0x40f5a2(0x209)]?.['classList'][_0x40f5a2(0x1eb)]('open');}[_0x49b09f(0x1b4)](){const _0x525a77=_0x49b09f;this['isOpen']=![],this['container']?.[_0x525a77(0x1e4)][_0x525a77(0x202)](_0x525a77(0x1f6));}[_0x49b09f(0x1ea)](){const _0x98a374=_0x49b09f;if(!this[_0x98a374(0x209)])return;const _0x4dd680=this[_0x98a374(0x1c9)]['filter'](_0x2a7d04=>_0x2a7d04[_0x98a374(0x1c7)]===this[_0x98a374(0x1c7)])['sort']((_0xd1a18c,_0x5bffe7)=>(_0xd1a18c[_0x98a374(0x219)]??0x0)-(_0x5bffe7[_0x98a374(0x219)]??0x0)),_0x2182b8=this[_0x98a374(0x1c9)][_0x98a374(0x24e)](_0x318959=>!_0x318959['groupId']||_0x318959[_0x98a374(0x1c7)]!==this[_0x98a374(0x1c7)]);this[_0x98a374(0x209)][_0x98a374(0x1d5)]='\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22variant-grouping-manager\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22vgm-header\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<h3>Manage\x20Task\x20Group</h3>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22vgm-close-btn\x22\x20title=\x22Close\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2220\x22\x20height=\x2220\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M18\x206L6\x2018M6\x206l12\x2012\x22/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22vgm-content\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22vgm-section\x20vgm-grouped\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22vgm-section-header\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22vgm-section-title\x22>Grouped\x20Variants</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22vgm-section-count\x22>'+_0x4dd680['length']+_0x98a374(0x1cb)+(_0x4dd680[_0x98a374(0x224)]===0x0?_0x98a374(0x1de):_0x4dd680[_0x98a374(0x23f)]((_0x444a60,_0x378fb6)=>this[_0x98a374(0x1c2)](_0x444a60,_0x378fb6,!![]))[_0x98a374(0x250)](''))+_0x98a374(0x245)+_0x2182b8['length']+_0x98a374(0x222)+(_0x2182b8[_0x98a374(0x224)]===0x0?_0x98a374(0x1e5):_0x2182b8[_0x98a374(0x23f)]((_0x540d22,_0xf80bb2)=>this['renderVariantCard'](_0x540d22,_0xf80bb2,![]))[_0x98a374(0x250)](''))+_0x98a374(0x248);}['renderVariantCard'](_0x294363,_0xa5e2ea,_0x1b1057){const _0x810f05=_0x49b09f,_0x310261=_0x294363[_0x810f05(0x22a)]?.[_0x810f05(0x22e)]||_0x294363[_0x810f05(0x22a)]?.[_0x810f05(0x1f3)]||_0x810f05(0x211),_0x479290=AGENT_ICONS[_0x310261[_0x810f05(0x21f)]()]||AGENT_ICONS[_0x810f05(0x211)],_0x1a3695=STATUS_ICONS[_0x294363[_0x810f05(0x24a)]]||'',_0xea7e82=_0x810f05(0x23d)+(_0x294363['status']||_0x810f05(0x1e3)),_0x58b25c=_0x294363['isWinner']?_0x810f05(0x1c0):'',_0x27538e=_0x294363[_0x810f05(0x1b2)]?'<span\x20class=\x22vgm-badge\x20vgm-badge-approved\x22\x20title=\x22Approved\x22><svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22\x20width=\x2212\x22\x20height=\x2212\x22><path\x20d=\x22M14\x209V5a3\x203\x200\x200\x200-3-3l-4\x209v11h11.28a2\x202\x200\x200\x200\x202-1.7l1.38-9a2\x202\x200\x200\x200-2-2.3zM7\x2022H4a2\x202\x200\x200\x201-2-2v-7a2\x202\x200\x200\x201\x202-2h3\x22></path></svg></span>':'';return _0x810f05(0x1d8)+_0xea7e82+_0x810f05(0x218)+_0x294363[_0x810f05(0x217)]+'\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20data-is-grouped=\x22'+_0x1b1057+'\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20data-index=\x22'+_0xa5e2ea+_0x810f05(0x21b)+_0x310261[_0x810f05(0x21f)]()+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x479290+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22vgm-variant-info\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22vgm-variant-name\x22>'+Utils[_0x810f05(0x1f1)](_0x294363[_0x810f05(0x249)]||_0x810f05(0x1e1)+_0x294363[_0x810f05(0x217)][_0x810f05(0x22d)](-0x6))+_0x810f05(0x24d)+Utils[_0x810f05(0x1f1)](_0x310261)+_0x810f05(0x1c1)+(_0x294363['status']||_0x810f05(0x1e3))+_0x810f05(0x231)+_0x58b25c+_0x810f05(0x1cd)+_0x27538e+_0x810f05(0x1ef)+_0xea7e82+_0x810f05(0x1dc)+_0x1a3695+_0x810f05(0x1d3)+(_0x1b1057?_0x810f05(0x210):_0x810f05(0x251))+_0x810f05(0x201)+_0x294363[_0x810f05(0x217)]+_0x810f05(0x244)+(_0x1b1057?'remove':_0x810f05(0x1eb))+_0x810f05(0x221)+(_0x1b1057?_0x810f05(0x204):_0x810f05(0x1b1))+_0x810f05(0x234);}['attachEventListeners'](){const _0x1ae04d=_0x49b09f;if(!this['container'])return;this['container'][_0x1ae04d(0x23b)](_0x1ae04d(0x232),_0x297de0=>{const _0x2e063b=_0x1ae04d;_0x297de0[_0x2e063b(0x1b7)]['closest'](_0x2e063b(0x1db))&&(this[_0x2e063b(0x1b4)](),this['onGroupChange'](this[_0x2e063b(0x1c9)])),_0x297de0[_0x2e063b(0x1b7)][_0x2e063b(0x1ee)](_0x2e063b(0x20b))&&(this[_0x2e063b(0x1b4)](),this[_0x2e063b(0x23e)](this[_0x2e063b(0x1c7)]));}),this['container']['addEventListener'](_0x1ae04d(0x232),async _0x4a053b=>{const _0x214fef=_0x1ae04d,_0x259979=_0x4a053b[_0x214fef(0x1b7)][_0x214fef(0x1ee)](_0x214fef(0x1f2));if(!_0x259979)return;const _0x246852=_0x259979[_0x214fef(0x1ae)][_0x214fef(0x217)],_0x5770fa=_0x259979[_0x214fef(0x1ae)][_0x214fef(0x1bf)];try{_0x5770fa===_0x214fef(0x202)?await this[_0x214fef(0x1d1)](_0x246852):await this[_0x214fef(0x220)](_0x246852);}catch(_0x2d2ce2){console[_0x214fef(0x1c5)](_0x214fef(0x22c),_0x2d2ce2),Utils[_0x214fef(0x228)](_0x2d2ce2[_0x214fef(0x238)]||_0x214fef(0x1cf),'error');}}),this[_0x1ae04d(0x209)]['addEventListener']('dragstart',_0x18e1ca=>this[_0x1ae04d(0x1c8)](_0x18e1ca)),this['container'][_0x1ae04d(0x23b)](_0x1ae04d(0x216),_0x342f43=>this[_0x1ae04d(0x1da)](_0x342f43)),this[_0x1ae04d(0x209)][_0x1ae04d(0x23b)](_0x1ae04d(0x1b9),_0x4a1c7d=>this[_0x1ae04d(0x1be)](_0x4a1c7d)),this['container'][_0x1ae04d(0x23b)](_0x1ae04d(0x20f),_0x1c2375=>this[_0x1ae04d(0x23a)](_0x1c2375)),this['container'][_0x1ae04d(0x23b)](_0x1ae04d(0x24c),_0x4b1ff9=>this[_0x1ae04d(0x1f7)](_0x4b1ff9));}[_0x49b09f(0x1c8)](_0x46b829){const _0x506143=_0x49b09f,_0x447621=_0x46b829[_0x506143(0x1b7)][_0x506143(0x1ee)](_0x506143(0x208));if(!_0x447621)return;dragState['draggedTaskId']=_0x447621['dataset'][_0x506143(0x217)],dragState['draggedElement']=_0x447621,dragState[_0x506143(0x1bb)]=_0x447621['dataset'][_0x506143(0x240)]===_0x506143(0x205)?this[_0x506143(0x1c7)]:null,dragState[_0x506143(0x237)]=!![],_0x447621[_0x506143(0x1e4)]['add']('dragging'),_0x46b829[_0x506143(0x24b)][_0x506143(0x200)]=_0x506143(0x227),_0x46b829[_0x506143(0x24b)][_0x506143(0x1bd)](_0x506143(0x20e),_0x447621['dataset'][_0x506143(0x217)]),this[_0x506143(0x209)]['classList'][_0x506143(0x1eb)](_0x506143(0x22f));}['handleDragEnd'](_0x2323d0){const _0x220c0c=_0x49b09f,_0x213437=_0x2323d0[_0x220c0c(0x1b7)][_0x220c0c(0x1ee)]('.vgm-variant-card');_0x213437&&_0x213437[_0x220c0c(0x1e4)][_0x220c0c(0x202)](_0x220c0c(0x230)),this[_0x220c0c(0x209)][_0x220c0c(0x1e0)]('.drag-over,\x20.drop-indicator')[_0x220c0c(0x1f5)](_0x4b8202=>{const _0x27fe7c=_0x220c0c;_0x4b8202[_0x27fe7c(0x1e4)][_0x27fe7c(0x202)]('drag-over',_0x27fe7c(0x1b8),_0x27fe7c(0x23c),'drop-after');}),this[_0x220c0c(0x209)][_0x220c0c(0x1e4)][_0x220c0c(0x202)](_0x220c0c(0x22f)),dragState[_0x220c0c(0x237)]=![],dragState[_0x220c0c(0x247)]=null,dragState[_0x220c0c(0x20d)]=null,dragState[_0x220c0c(0x1bb)]=null;}[_0x49b09f(0x1be)](_0x335120){const _0x930791=_0x49b09f;_0x335120[_0x930791(0x1d7)](),_0x335120[_0x930791(0x24b)]['dropEffect']='move';const _0x1fde23=_0x335120[_0x930791(0x1b7)]['closest']('.vgm-drop-zone'),_0x321bd0=_0x335120[_0x930791(0x1b7)][_0x930791(0x1ee)](_0x930791(0x208));this[_0x930791(0x209)][_0x930791(0x1e0)](_0x930791(0x1d9))[_0x930791(0x1f5)](_0x110631=>{const _0x320367=_0x930791;_0x110631[_0x320367(0x1e4)]['toggle'](_0x320367(0x1e7),_0x110631===_0x1fde23);});if(_0x321bd0&&_0x321bd0!==dragState['draggedElement']){const _0x515a6d=_0x321bd0[_0x930791(0x1c3)](),_0x266f79=_0x515a6d[_0x930791(0x1b5)]+_0x515a6d[_0x930791(0x1c4)]/0x2,_0x24b874=_0x335120[_0x930791(0x21a)]<_0x266f79;this['container'][_0x930791(0x1e0)](_0x930791(0x208))[_0x930791(0x1f5)](_0x573fa5=>{const _0x534868=_0x930791;_0x573fa5!==_0x321bd0&&_0x573fa5['classList'][_0x534868(0x202)](_0x534868(0x23c),_0x534868(0x1d0));}),_0x321bd0[_0x930791(0x1e4)][_0x930791(0x223)]('drop-before',_0x24b874),_0x321bd0['classList'][_0x930791(0x223)](_0x930791(0x1d0),!_0x24b874);}}['handleDragLeave'](_0x50299e){const _0x2a3fec=_0x49b09f,_0x5cee64=_0x50299e[_0x2a3fec(0x1b7)][_0x2a3fec(0x1ee)](_0x2a3fec(0x1d9));_0x5cee64&&!_0x5cee64[_0x2a3fec(0x1af)](_0x50299e[_0x2a3fec(0x243)])&&_0x5cee64[_0x2a3fec(0x1e4)]['remove']('drag-over');}async[_0x49b09f(0x1f7)](_0x4f9ad3){const _0xf7da51=_0x49b09f;_0x4f9ad3[_0xf7da51(0x1d7)]();const _0x4684fb=_0x4f9ad3[_0xf7da51(0x1b7)][_0xf7da51(0x1ee)](_0xf7da51(0x1d9)),_0x407678=_0x4f9ad3['target'][_0xf7da51(0x1ee)](_0xf7da51(0x208)),_0x45b21f=_0x4f9ad3[_0xf7da51(0x24b)]['getData']('text/plain');if(!_0x4684fb||!_0x45b21f)return;this[_0xf7da51(0x209)]['querySelectorAll'](_0xf7da51(0x212))[_0xf7da51(0x1f5)](_0x3f2ba9=>{const _0x56be66=_0xf7da51;_0x3f2ba9[_0x56be66(0x1e4)][_0x56be66(0x202)](_0x56be66(0x1e7),_0x56be66(0x23c),_0x56be66(0x1d0));});const _0x3230e7=_0x4684fb[_0xf7da51(0x1ae)][_0xf7da51(0x1fa)],_0x2dae37=_0x3230e7==='grouped',_0xada8c9=dragState[_0xf7da51(0x1bb)]===this[_0xf7da51(0x1c7)];try{if(_0x2dae37&&!_0xada8c9){let _0x49d189=this[_0xf7da51(0x1c9)]['filter'](_0x40a08c=>_0x40a08c[_0xf7da51(0x1c7)]===this[_0xf7da51(0x1c7)])[_0xf7da51(0x224)];if(_0x407678){const _0x39a7ad=_0x407678[_0xf7da51(0x1ae)][_0xf7da51(0x217)],_0x42e779=this[_0xf7da51(0x1c9)][_0xf7da51(0x246)](_0x5091f7=>_0x5091f7[_0xf7da51(0x217)]===_0x39a7ad);if(_0x42e779?.[_0xf7da51(0x219)]!==undefined){const _0x2a9ea0=_0x407678[_0xf7da51(0x1c3)](),_0x38f59f=_0x4f9ad3['clientY']<_0x2a9ea0[_0xf7da51(0x1b5)]+_0x2a9ea0[_0xf7da51(0x1c4)]/0x2;_0x49d189=_0x42e779[_0xf7da51(0x219)]+(_0x38f59f?0x0:0x1);}}await this[_0xf7da51(0x220)](_0x45b21f,_0x49d189);}else{if(!_0x2dae37&&_0xada8c9)await this[_0xf7da51(0x1d1)](_0x45b21f);else _0x2dae37&&_0xada8c9&&_0x407678&&await this[_0xf7da51(0x1ed)](_0x45b21f,_0x407678,_0x4f9ad3[_0xf7da51(0x21a)]);}}catch(_0x15bbdb){console['error']('Drop\x20operation\x20failed:',_0x15bbdb),Utils['showToast'](_0x15bbdb[_0xf7da51(0x238)]||_0xf7da51(0x24f),_0xf7da51(0x1c5));}}async[_0x49b09f(0x220)](_0x4c5289,_0x41ad50){const _0x5b0ae9=_0x49b09f,_0x2ba548=this[_0x5b0ae9(0x1c9)][_0x5b0ae9(0x246)](_0x578073=>_0x578073[_0x5b0ae9(0x217)]===_0x4c5289);if(!_0x2ba548)return;_0x41ad50===undefined&&(_0x41ad50=this['tasks'][_0x5b0ae9(0x24e)](_0x47a661=>_0x47a661[_0x5b0ae9(0x1c7)]===this[_0x5b0ae9(0x1c7)])[_0x5b0ae9(0x224)]),!this[_0x5b0ae9(0x1c7)]&&(this[_0x5b0ae9(0x1c7)]=API[_0x5b0ae9(0x1ec)](),await API[_0x5b0ae9(0x1bc)]({'groupId':this[_0x5b0ae9(0x1c7)]})),await API[_0x5b0ae9(0x1ba)](_0x4c5289,this[_0x5b0ae9(0x1c7)],_0x41ad50),_0x2ba548['groupId']=this[_0x5b0ae9(0x1c7)],_0x2ba548['groupIndex']=_0x41ad50,this[_0x5b0ae9(0x1ea)](),this['onGroupChange'](this[_0x5b0ae9(0x1c9)]);}async[_0x49b09f(0x1d1)](_0xa6de4e){const _0x151ecd=_0x49b09f,_0x1e43c9=this['tasks'][_0x151ecd(0x246)](_0x262638=>_0x262638[_0x151ecd(0x217)]===_0xa6de4e);if(!_0x1e43c9)return;await API[_0x151ecd(0x1fc)](_0xa6de4e),_0x1e43c9['groupId']=null,_0x1e43c9[_0x151ecd(0x219)]=null,this[_0x151ecd(0x1ea)](),this['onGroupChange'](this[_0x151ecd(0x1c9)]);}async[_0x49b09f(0x1ed)](_0x3b8453,_0x2e8279,_0xbe62cd){const _0x2e195f=_0x49b09f,_0x39b9a7=this[_0x2e195f(0x1c9)][_0x2e195f(0x246)](_0xbb524d=>_0xbb524d[_0x2e195f(0x217)]===_0x3b8453),_0x1c89ab=_0x2e8279[_0x2e195f(0x1ae)]['taskId'],_0x47a40e=this[_0x2e195f(0x1c9)][_0x2e195f(0x246)](_0x32efd9=>_0x32efd9[_0x2e195f(0x217)]===_0x1c89ab);if(!_0x39b9a7||!_0x47a40e||_0x39b9a7[_0x2e195f(0x217)]===_0x47a40e['taskId'])return;const _0x1dfd07=_0x2e8279[_0x2e195f(0x1c3)](),_0x3391dc=_0xbe62cd<_0x1dfd07['top']+_0x1dfd07[_0x2e195f(0x1c4)]/0x2;let _0x3a9c62=_0x47a40e[_0x2e195f(0x219)]??0x0;if(!_0x3391dc)_0x3a9c62++;if((_0x39b9a7['groupIndex']??0x0)<(_0x47a40e[_0x2e195f(0x219)]??0x0))_0x3a9c62--;if(_0x3a9c62===_0x39b9a7['groupIndex'])return;await API['updateTaskGroup'](_0x3b8453,this[_0x2e195f(0x1c7)],_0x3a9c62);const _0x19cd52=this['tasks'][_0x2e195f(0x24e)](_0xe8ad81=>_0xe8ad81[_0x2e195f(0x1c7)]===this['groupId'])['sort']((_0x571de1,_0x3261ac)=>(_0x571de1[_0x2e195f(0x219)]??0x0)-(_0x3261ac[_0x2e195f(0x219)]??0x0)),_0x1aca92=_0x19cd52[_0x2e195f(0x206)](_0x16d370=>_0x16d370['taskId']===_0x3b8453);_0x1aca92!==-0x1&&_0x19cd52[_0x2e195f(0x241)](_0x1aca92,0x1),_0x19cd52[_0x2e195f(0x241)](_0x3a9c62,0x0,_0x39b9a7),_0x19cd52['forEach']((_0x29ff52,_0x1e9fa7)=>{_0x29ff52['groupIndex']=_0x1e9fa7;}),this[_0x2e195f(0x1ea)](),this[_0x2e195f(0x225)](this[_0x2e195f(0x1c9)]);}}export function initializeTabDragDrop(_0x6d4415,_0x32584e,_0x362469,_0x5f14c7={}){const _0x394004=_0x49b09f;if(!_0x6d4415)return;const {onReorder:_0xbef428,onRemove:_0x4fdc24}=_0x5f14c7,_0x1dd639=_0x6d4415[_0x394004(0x1e0)](_0x394004(0x1fe));_0x1dd639[_0x394004(0x1f5)]((_0x4e0172,_0xb1310a)=>{const _0x453ed3=_0x394004;_0x4e0172[_0x453ed3(0x1df)](_0x453ed3(0x203),_0x453ed3(0x205)),_0x4e0172[_0x453ed3(0x1ae)][_0x453ed3(0x1f8)]=_0xb1310a,_0x4e0172['addEventListener'](_0x453ed3(0x1dd),_0x17f73f=>{const _0x483b05=_0x453ed3;_0x17f73f[_0x483b05(0x24b)][_0x483b05(0x200)]='move',_0x17f73f[_0x483b05(0x24b)][_0x483b05(0x1bd)](_0x483b05(0x20e),_0x4e0172[_0x483b05(0x1ae)][_0x483b05(0x217)]),_0x4e0172[_0x483b05(0x1e4)][_0x483b05(0x1eb)](_0x483b05(0x230)),_0x6d4415[_0x483b05(0x1e4)][_0x483b05(0x1eb)](_0x483b05(0x22f));}),_0x4e0172[_0x453ed3(0x23b)]('dragend',()=>{const _0xa457d6=_0x453ed3;_0x4e0172[_0xa457d6(0x1e4)][_0xa457d6(0x202)](_0xa457d6(0x230)),_0x6d4415[_0xa457d6(0x1e4)][_0xa457d6(0x202)]('is-dragging'),_0x6d4415[_0xa457d6(0x1e0)]('.drop-indicator')[_0xa457d6(0x1f5)](_0x56a1c7=>{const _0x17d93d=_0xa457d6;_0x56a1c7['classList'][_0x17d93d(0x202)](_0x17d93d(0x1b8),_0x17d93d(0x23c),_0x17d93d(0x1d0));});}),_0x4e0172[_0x453ed3(0x23b)](_0x453ed3(0x1b9),_0x2f9129=>{const _0x22f6c8=_0x453ed3;_0x2f9129[_0x22f6c8(0x1d7)](),_0x2f9129['dataTransfer'][_0x22f6c8(0x1d2)]='move';if(_0x4e0172[_0x22f6c8(0x1e4)][_0x22f6c8(0x1af)](_0x22f6c8(0x230)))return;const _0x3cd358=_0x4e0172['getBoundingClientRect'](),_0x4c6863=_0x3cd358[_0x22f6c8(0x20a)]+_0x3cd358[_0x22f6c8(0x21e)]/0x2,_0x5b6649=_0x2f9129[_0x22f6c8(0x21d)]<_0x4c6863;_0x1dd639['forEach'](_0x138769=>_0x138769[_0x22f6c8(0x1e4)]['remove'](_0x22f6c8(0x23c),_0x22f6c8(0x1d0))),_0x4e0172['classList'][_0x22f6c8(0x1eb)](_0x5b6649?'drop-before':'drop-after');}),_0x4e0172[_0x453ed3(0x23b)](_0x453ed3(0x20f),()=>{const _0xdbd605=_0x453ed3;_0x4e0172[_0xdbd605(0x1e4)][_0xdbd605(0x202)](_0xdbd605(0x23c),'drop-after');}),_0x4e0172[_0x453ed3(0x23b)](_0x453ed3(0x24c),async _0x3d2d07=>{const _0x3262ee=_0x453ed3;_0x3d2d07[_0x3262ee(0x1d7)]();const _0xe99dc2=_0x3d2d07[_0x3262ee(0x24b)][_0x3262ee(0x1e9)](_0x3262ee(0x20e)),_0x16f265=_0x4e0172[_0x3262ee(0x1ae)][_0x3262ee(0x217)];if(_0xe99dc2===_0x16f265)return;const _0x321fba=_0x4e0172['getBoundingClientRect'](),_0x459363=_0x3d2d07[_0x3262ee(0x21d)]<_0x321fba[_0x3262ee(0x20a)]+_0x321fba[_0x3262ee(0x21e)]/0x2;_0x4e0172[_0x3262ee(0x1e4)][_0x3262ee(0x202)]('drop-before',_0x3262ee(0x1d0)),_0xbef428&&await _0xbef428(_0xe99dc2,_0x16f265,_0x459363);});});const _0x54724b=document[_0x394004(0x236)](_0x394004(0x207));return _0x54724b[_0x394004(0x1d4)]=_0x394004(0x20c),_0x54724b['innerHTML']=_0x394004(0x1f9),_0x54724b[_0x394004(0x1fd)][_0x394004(0x235)]=_0x394004(0x1f0),_0x54724b['addEventListener'](_0x394004(0x1b9),_0x26172e=>{const _0x47aa5b=_0x394004;_0x26172e[_0x47aa5b(0x1d7)](),_0x54724b['classList'][_0x47aa5b(0x1eb)]('drag-over');}),_0x54724b[_0x394004(0x23b)](_0x394004(0x20f),()=>{const _0xbe36=_0x394004;_0x54724b[_0xbe36(0x1e4)]['remove'](_0xbe36(0x1e7));}),_0x54724b[_0x394004(0x23b)](_0x394004(0x24c),async _0x403ce7=>{const _0x2e2020=_0x394004;_0x403ce7[_0x2e2020(0x1d7)](),_0x54724b['classList'][_0x2e2020(0x202)](_0x2e2020(0x1e7));const _0x3ab069=_0x403ce7[_0x2e2020(0x24b)]['getData'](_0x2e2020(0x20e));_0x4fdc24&&await _0x4fdc24(_0x3ab069);}),_0x6d4415[_0x394004(0x23b)](_0x394004(0x1dd),()=>{const _0x5e0117=_0x394004;_0x32584e['length']>0x1&&(_0x54724b[_0x5e0117(0x1fd)][_0x5e0117(0x235)]=_0x5e0117(0x1ff));}),_0x6d4415[_0x394004(0x23b)](_0x394004(0x216),()=>{const _0x5cb5f8=_0x394004;_0x54724b[_0x5cb5f8(0x1fd)][_0x5cb5f8(0x235)]=_0x5cb5f8(0x1f0);}),_0x6d4415[_0x394004(0x1e8)](_0x54724b),{'destroy':()=>{const _0x5da6b2=_0x394004;_0x54724b[_0x5da6b2(0x202)]();}};}function _0x4397(_0x32c1dc,_0x57f7f2){_0x32c1dc=_0x32c1dc-0x1ad;const _0x4047ab=_0x4047();let _0x4397ad=_0x4047ab[_0x32c1dc];if(_0x4397['xDmsZa']===undefined){var _0x59533a=function(_0x53f7cc){const _0x82f280='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5575ea='',_0x1b4db6='';for(let _0x3ec707=0x0,_0x1a1b84,_0x183902,_0x44fd93=0x0;_0x183902=_0x53f7cc['charAt'](_0x44fd93++);~_0x183902&&(_0x1a1b84=_0x3ec707%0x4?_0x1a1b84*0x40+_0x183902:_0x183902,_0x3ec707++%0x4)?_0x5575ea+=String['fromCharCode'](0xff&_0x1a1b84>>(-0x2*_0x3ec707&0x6)):0x0){_0x183902=_0x82f280['indexOf'](_0x183902);}for(let _0x457186=0x0,_0x577dd2=_0x5575ea['length'];_0x457186<_0x577dd2;_0x457186++){_0x1b4db6+='%'+('00'+_0x5575ea['charCodeAt'](_0x457186)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1b4db6);};_0x4397['eTSRvG']=_0x59533a,_0x4397['riSYiA']={},_0x4397['xDmsZa']=!![];}const _0x3970a0=_0x4047ab[0x0],_0x299803=_0x32c1dc+_0x3970a0,_0x59affb=_0x4397['riSYiA'][_0x299803];return!_0x59affb?(_0x4397ad=_0x4397['eTSRvG'](_0x4397ad),_0x4397['riSYiA'][_0x299803]=_0x4397ad):_0x4397ad=_0x59affb,_0x4397ad;}export default VariantGroupingManager;function _0x4047(){const _0x32cf19=['nty2nJuYz3n3zKPO','y2XVC2u','Dg9W','mti4mtiXm1fOD25PyW','DgfYz2v0','zhjVCc1PBMrPy2f0B3i','zhjHz292zxi','DxbKyxrLvgfZA0DYB3vW','C291CMnLr3jVDxbjza','y3jLyxrLvgfZA0DYB3vW','C2v0rgf0yq','AgfUzgXLrhjHz092zxi','ywn0Aw9U','phnWyw4Gy2XHC3m9iNzNBs1IywrNzsb2z20TyMfKz2uTD2LUBMvYiIb0AxrSzt0Iv2LUBMvYiJ7IMiu8l3nWyw4+','imk3ia','CMvUzgvYvMfYAwfUDenHCMq','z2v0qM91BMrPBMDdBgLLBNrszwn0','AgvPz2H0','zxjYB3i','phn2zYbJBgfZCZ0IC3rHDhvZlwLJB24IihzPzxDcB3G9iJaGmcaXnIaXnIiGzMLSBd0Iy3vYCMvUDenVBg9YiJ48Cgf0AcbKpsjnocaWytGGocaWideGmcaWide2qtGGocaWidaGmca4idb6BtmUntmGmtaUndDHlJC1lJC1idaGmsaXlteUmdyGms4WnKW4idKUmdzSltiUndCGmI40n2eUnZuUnZuGmcaWideTms4WnI0XlJa2tdyUotqGoca0lJq3iduUntnHlJC1lJC1idaGmcaXideUmdyTms4WnKW4idyUotrSmI40nY0YlJq3ys43ns43nsaWidaGmsaXlJa2ideUmdzmos4WnIa4BdiUndCGmI40n3OIlZ48l3n2zZ4','z3jVDxbjza','AgfUzgXLrhjHz1n0yxj0','DgfZA3m','phn2zYb2Awv3qM94psiWidaGmJaGmJaIigzPBgW9iM5VBMuIihn0CM9Rzt0Iy3vYCMvUDenVBg9YiIbZDhjVA2uTD2LKDgG9iJeUnIiGD2LKDgG9iJe2iIbOzwLNAhq9iJe2iIbHCMLHlwHPzgrLBJ0IDhj1zsi+pgnPCMnSzsbJEd0ImtaIign5psiXmciGCJ0IociGlZ48Cgf0AcbKpsjnmtaGnI41yY0XlJeGmc0Yic43ltiGms42idaGlJKGmsaXlJmGms42ideUnY43lJqGmsaUocaXideUnvyXmIiGlZ48y2LYy2XLign4psiXmciGy3K9iJe0iIbYpsiWlJGIigzPBgW9iMn1CNjLBNrdB2XVCIiGC3rYB2TLpsjUB25LiIaVpJWVC3zNpG','pc9ZCgfUpGOGicaGicaGicaGica8l2rPDJ4kicaGicaGicaGicaGpgrPDIbJBgfZCZ0IDMDTlwrYB3aTEM9Uzsb2z20Tz3jVDxbLzc16B25LiIbKyxrHlxPVBMu9iMDYB3vWzwqIpGOGicaGicaGicaGicaGia','mtm5mty0sw5OwfDq','cIaGicaGicaGica','DxbKyxrLvgfZA3m','rMfPBgvKihrVihvWzgf0zsbNCM91Ca','zhjVCc1HzNrLCG','CMvTB3zLrNjVBuDYB3vW','zhjVCevMzMvJDa','cIaGicaGicaGpc9KAxy+cIaGicaGicaGpgj1DhrVBIbJBgfZCZ0IDMDTlxzHCMLHBNqTCMvTB3zLlwj0BIikicaGicaGicaGicaGicaGihrPDgXLpsi','y2XHC3noyw1L','Aw5Uzxjive1m','mJDHDhDUqxm','ChjLDMvUDerLzMf1Bhq','cIaGicaGidXKAxyGy2XHC3m9iNzNBs12yxjPyw50lwnHCMqG','lNzNBs1KCM9WlxPVBMu','AgfUzgXLrhjHz0vUza','lNzNBs1JBg9Zzs1IDg4','iJ4kicaGicaGicaGia','zhjHz3n0yxj0','pgrPDIbJBgfZCZ0IDMDTlwvTChr5lwHPBNqIpKrYywCGDMfYAwfUDhmGAgvYzsb0BYbHzgqGDg8Gz3jVDxa8l2rPDJ4','C2v0qxr0CMLIDxrL','CxvLCNLtzwXLy3rVCKfSBa','vgfZAYa','z2v0','Dw5RBM93BG','y2XHC3nmAxn0','pgrPDIbJBgfZCZ0IDMDTlwvTChr5lwHPBNqIpKrYywCGDMfYAwfUDhmGAgvYzsb0BYbYzw1VDMuGzNjVBsbNCM91CdWVzgL2pG','phn2zYbJBgfZCZ0IC3rHDhvZlwLJB24IihzPzxDcB3G9iJaGmcaXnIaXnIiGzMLSBd0Iy3vYCMvUDenVBg9YiJ48Cgf0AcbKpsjnocaWytGGocaWideGmcaWide2qtGGocaWidaGmca4idb6BtmUnZGGnI4Yoc00lJuGnc41ys43ns43nsaWidaGms0XlJa2idbSltiTmMeUnZuUnZuGmcaXideGms4WnI0XlJa2tdyUnZuGos4XowWZlJK3ltmUotDHlJC1lJC1idaGmsaXideUmdyGms4WnNOIlZ48l3n2zZ4','zhjHzY1VDMvY','yxbWzw5Kq2HPBgq','z2v0rgf0yq','CMvUzgvY','ywrK','z2vUzxjHDgvhCM91CeLK','CMvVCMrLCKLUr3jVDxa','y2XVC2vZDa','cIaGicaGicaGpc9KAxy+cIaGicaGicaGpgrPDIbJBgfZCZ0IDMDTlxzHCMLHBNqTC3rHDhvZia','BM9Uzq','zxnJyxbLshrTBa','lNzNBs12yxjPyw50lxjLBw92zs1IDg4','zgvMyxvSDf9Hz2vUDa','Aw5PDa','zM9YrwfJAa','B3bLBG','AgfUzgXLrhjVCa','Aw5KzxG','cIaGica8C3zNihzPzxDcB3G9iJaGmcaYncaYnciGD2LKDgG9iJe2iIbOzwLNAhq9iJe2iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiJ4kicaGicaGphbHDgGGzd0Itte4idzmnIaXoe02idzSmtiGmtiIlZ4kicaGidWVC3zNpGOGicaGphnWyw4+uMvTB3zLigzYB20Gz3jVDxa8l3nWyw4+cIaG','EM9Uzq','phn2zYb2Awv3qM94psiWidaGmJqGmJqIigzPBgW9iM5VBMuIihn0CM9Rzt0Iy3vYCMvUDenVBg9YiIbZDhjVA2uTD2LKDgG9iJiIihn0CM9Rzs1SAw5Ly2fWpsjYB3vUzciGC3rYB2TLlwXPBMvQB2LUpsjYB3vUzciGD2LKDgG9iJe2iIbOzwLNAhq9iJe2iIbHCMLHlwHPzgrLBJ0IDhj1zsi+phbHDgGGzd0ItteYidjmos4Wosa5lJa5idiGmtjSnY4WosaYlJKXtdeYidiYBdiUoteTnY4WouWYmIaXmMWTnY4Wos0YlJKXEIi+pc9WyxrOpJWVC3zNpG','CMvTB3zLvgfZA0zYB21hCM91Ca','C3r5Bgu','lNrHC2STDgfI','zMXLEa','zwzMzwn0qwXSB3DLza','iGOGicaGicaGicaGicaGicaGzgf0ys10yxnRlwLKpsi','CMvTB3zL','zhjHz2DHyMXL','phbHDgGGzd0Itte4idzmnIaXoe02idzSmtiGmtiIlZ4','Dhj1zq','zMLUzeLUzgv4','zgL2','lNzNBs12yxjPyw50lwnHCMq','y29UDgfPBMvY','BgvMDa','lNzNBs1HzgqTzxHPC3rPBMCTyNrU','DgfZAY10ywiTCMvTB3zLlxPVBMu','zhjHz2DLzevSzw1LBNq','Dgv4Dc9WBgfPBG','zhjHz2XLyxzL','uMvTB3zLigzYB20Gz3jVDxa','y2XHDwrL','lMrYywCTB3zLCIWGlMrYB3aTyMvMB3jLlcaUzhjVCc1HzNrLCG','phn2zYbJBgfZCZ0IC3rHDhvZlwLJB24IihzPzxDcB3G9iJaGmcaXnIaXnIiGzMLSBd0Iy3vYCMvUDenVBg9YiJ48Cgf0AcbKpsjnocaWytGGocaWideGmcaWide2qtGGocaWidaGmca4idb6BtaGmtjHlJC1lJC1idaGmsaXidaTms41lJC1lJC1idaGmcaXidaGms41EM0XltmUnweXideGmcaWideTmIaWvJvHmsaXidaGmsaXidiGmhyZlJv6iI8+pc9ZDMC+','phn2zYbJBgfZCZ0IC3rHDhvZlwLJB24IihzPzxDcB3G9iJaGmcaXnIaXnIiGzMLSBd0Iy3vYCMvUDenVBg9YiJ48Cgf0AcbKpsjnocaWytGGocaWideGmcaWide2qtGGocaWidaGmca4idb6BtaGmtrbnIa2idaGmsaXidGGmMe2idyGmcaWideGmcaXmNPTms02lJvwneG3DJqUnwWZidmGms41lteUns0YlJuTmI41EIiVpJWVC3zNpG','odGWnJqYrMzvsxLM','zhjHz2vUza','DgfZA0LK','iGOGicaGicaGicaGigrYywDNywjSzt0IDhj1zsikicaGicaGicaGicbKyxrHlxrHC2STAwq9iG','z3jVDxbjBMrLEa','y2XPzw50wq','iJ4kicaGicaGica8zgL2ignSyxnZpsj2z20TDMfYAwfUDc1KCMfNlwHHBMrSzsiGDgL0Bgu9iKrYywCGDg8GCMvVCMrLCIbVCIbTB3zLiJ4kicaGicaGicaGidXZDMCGDMLLD0jVEd0ImcaWidi0idi0iIb3Awr0Ad0ImtyIigHLAwDODd0ImtyIigzPBgW9iMn1CNjLBNrdB2XVCIi+cIaGicaGicaGicaGidXWyxrOigq9iK04idzOmNyYsdHwnNPTnIaWAdj2mMGTmLy2EK04ideXAdj2mKG4DI0YEM02idbOmNyYAc0YDI0YEM0TnIa1Adj2mKG4DI0YEM02idbOmNyYAc0YDI0YEIiVpGOGicaGicaGicaGpc9ZDMC+cIaGicaGicaGpc9KAxy+cIaGicaGicaGpgrPDIbJBgfZCZ0IDMDTlxzHCMLHBNqTAwnVBIiGzgf0ys1Hz2vUDd0I','ChvZAa','y2XPzw50wa','D2LKDgG','Dg9mB3DLCKnHC2u','ywrKvg9hCM91Ca','iJ4kicaGicaGicaGidXZDMCGDMLLD0jVEd0ImcaWidi0idi0iIb3Awr0Ad0ImtyIigHLAwDODd0ImtyIigzPBgW9iM5VBMuIihn0CM9Rzt0Iy3vYCMvUDenVBg9YiIbZDhjVA2uTD2LKDgG9iJiIpGOGicaGicaGicaGica','pc9ZCgfUpGOGicaGicaGicaGica8l2rPDJ4kicaGicaGicaGicaGpgrPDIbJBgfZCZ0IDMDTlwrYB3aTEM9Uzsb2z20TDw5NCM91CgvKlxPVBMuIigrHDgeTEM9Uzt0IDw5NCM91CgvKiJ4kicaGicaGicaGicaGica','Dg9Nz2XL','BgvUz3rO','B25hCM91CenOyw5Nzq','mtK5ody1nuLnCuzczW','Bw92zq','C2HVD1rVyxn0','AxnpCgvU','zw52vMfYCW','nNbqr2nPAq','rMfPBgvKihrVihvWzgf0zsbNCM91CdO','C2XPy2u','q09ervjFquDftLq','AxmTzhjHz2DPBMC','zhjHz2DPBMC','pc9ZCgfUpGOGicaGicaGidWVzgL2pGOGicaGicaGidXKAxyGy2XHC3m9iNzNBs12yxjPyw50lwjHzgDLCYi+cIaGicaGicaGica','y2XPy2S','mJqZodK0n29fv2rkrW','cIaGicaGicaGica8l3n2zZ4kicaGicaGica8l2j1DhrVBJ4kicaGicaGpc9KAxy+cIaGica','zgLZCgXHEq','y3jLyxrLrwXLBwvUDa','AxneCMfNz2LUzW','BwvZC2fNzq','phn2zYb2Awv3qM94psiWidaGmtyGmtyIigzPBgW9iMn1CNjLBNrdB2XVCIiGD2LKDgG9iJe2iIbOzwLNAhq9iJe2iIbHCMLHlwHPzgrLBJ0IDhj1zsi+phbHDgGGzd0IBtmUmti3ideWlJyWncaZlJeZns0XlJC2lJa1mY0UmtuZls4WntmTlJa4nuG2lJeXBc0Unti1ls4WmZiTms43oteTlJa0oc0XlJu1nc0Umdy1lteUnta1ls4Woc0UmZGTlJa4muWWidCUodmYBc4WmZyTlJiZnc4ZmI0UmJe0lJq1ns4WncaXlJaWos4WnJKGms41mtmUmta1ideUmdK3lJa2ncaXlJyYnI4Xn2GUmJu5Bc4WmZyTlJeWns0UmdG5ls4WnJuTlJa2oc0Umdy0lteUnty2lteUmdyYlteUnJK1lteUmtiXls44odCTlJy0nI0UndGTlJmYnY0UmJqZls4ZmdyTlJeWnc0UnJCUndm1ls40oc41oduUmdqUmtuUmdqUntKZlJq1nIaXlJi2nY45odeGms42ntqGms4YmtGUmJqYlJiWmI4WotCTlJa2oc4WmtiTlJa0os0Umta5ls4XodeTlJKTms42mJyTlJK2lteUnJu1ls40mJGTlJy4nI0UmteZls40mtfHmIaYidaGmcaXls4WnJGTlJq4ngWUndK2ls42nZrmnc40ndyGmgWUnJyYlJa4os4YnZKUmJqYlJqXms45nc42nJyGms40ocaXlJaZmYaYlJaXnc4ZmdiUntK3lJe2mI41ntmUmdyUmtDOlJeWnxyTlJa5n2WUmdG1lteUmtm0lJe1nY0XlJm5mI4XntqTms43otiUmduYls41mdqUmJuTlJyWns40otCTlJmYnY4ZodCUmtG2lJmXos40ntyTlJa0ns4YotqTlJe5ideUmJmTlJm3ideUotmTlJi0mYaXlJi5Ac4XndjSlJe2ms0UmtyUnJu0ls44nJGGms4WotCTms4ZnZiUndG0ls41nduUnty1ls42mdeUmZyZls4YodDOlJy4nMWUnta1lJC1ms0UmJi2lJC3ns0UnZa3lJG5ns0UntG1lJC1os0Uodm5ideUmtmTlJuYnc45mdqUmdq4lJa3mI4XmJuTlJaXmIaXlJG5nY0UndaZideUmdi0ls4XodyGms4YmJmTlJiXlJu1mY4YntGUmdyUmJyZls4YmtGUntm2lteUmZa3lJmYmY0XlJuZmY4ZmdCTmI4YodqUntqTlJaYoc4WmI4WmZiUmdqGms4WmJKUmdK4lJq0lJaYngGXlJa3n2WYlJaWns4Xns41mJuUmZq2lJmXns40mJqTlJa1mY4ZmJmTlJGWnY40mteTmY42mZeTlJG2mY0UodCYls4YmtHOls4XmNyUmdCZBc43mJyUnZeGms4ZmZeGms4YmdiGms42nJCGms41ns4WodqUmZGZls4YmtqUmZaYls4YmJyTlJaZmI0XlJq2nc0XlJeWms0Unty1ls40otCTms4Yoc0XlJa3n2GTlJa4nhyUmteZBc4YotuUndmYideUntu3idiUmZqUmdGUnZe4ls4XmtiUmJm0ls40mdqUmtqXls40ndqTlJa4ls45mteTms4Yoc0UotqTms40nc0UnZu5lteUmJKXls4WotmUmduZls40ndGGnc44mJeTlJiXlJi0nI0UndG0lJe4nI0UndaZls4ZmdCTlJiXnc0UndK2lJiXnc0UotGUmJu4lteUmJGUmJeTms4WmtyUmtKTms4YnJmUmteYls40mI0Umda4ls4WmJGTlJa5mI4WmtiTlJK1mYaXlJmWnY0XlJq0ocaXlJK1nY0XlJe0nIaXlJiYnY0UmJC0lJeWos0UndC3ls4YndCUmdq1ls40nc4YnJyTlJm5ideUntG2ltiUmde4lJK1nI0XlJi1lJyXnY0UnZiZls4WmdqTlJeWnwGTlJaZnMWTnc4YmtiGnc4Ymtj6iI8+pc9ZDMC+','AgfUzgXLrhjHz0XLyxzL','ywrKrxzLBNrmAxn0zw5LCG','zhjVCc1IzwzVCMu','C3rHDhvZlq','B25bzgrfEgLZDgLUz1rHC2S','BwfW','AxnhCM91CgvK','C3bSAwnL','yxr0ywnOrxzLBNrmAxn0zw5LCNm','CMvSyxrLzfrHCMDLDa','iGOGicaGicaGicaGicaGicaGzgf0ys1Hy3rPB249iG','cIaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGpc9KAxy+cGOGicaGicaGicaGpgrPDIbJBgfZCZ0IDMDTlwrPDMLKzxiIpGOGicaGicaGicaGica8zgL2ignSyxnZpsj2z20TzgL2AwrLCI1SAw5LiJ48l2rPDJ4kicaGicaGicaGicaGphnWyw4Gy2XHC3m9iNzNBs1KAxzPzgvYlxrLEhqIpKrYywCGDg8GBw92ztWVC3bHBJ4kicaGicaGicaGicaGpgrPDIbJBgfZCZ0IDMDTlwrPDMLKzxiTBgLUzsi+pc9KAxy+cIaGicaGicaGica8l2rPDJ4kcIaGicaGicaGica8zgL2ignSyxnZpsj2z20TC2vJDgLVBIb2z20TDw5NCM91CgvKiJ4kicaGicaGicaGicaGpgrPDIbJBgfZCZ0IDMDTlxnLy3rPB24TAgvHzgvYiJ4kicaGicaGicaGicaGica8C3bHBIbJBgfZCZ0IDMDTlxnLy3rPB24TDgL0BguIpLvUz3jVDxbLzcbuyxnRCZWVC3bHBJ4kicaGicaGicaGicaGica8C3bHBIbJBgfZCZ0IDMDTlxnLy3rPB24Ty291BNqIpG','zMLUza','zhjHz2DLzfrHC2Tjza','cIaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGpc9KAxy+cIaGicaGicaGpc9KAxy+cGOGicaGicaGidXKAxyGy2XHC3m9iNzNBs1Hy3rPB25ZiJ4kicaGicaGicaGidXIDxr0B24Gy2XHC3m9iNzNBs1IDg4GDMDTlwj0BI1ZzwnVBMrHCNKGDMDTlwfKzc1LEgLZDgLUzY1IDg4IihrPDgXLpsjbzgqGyw4GzxHPC3rPBMCGDgfZAYb0BYb0AgLZigDYB3vWiJ4kicaGicaGicaGicaGphn2zYb2Awv3qM94psiWidaGmJqGmJqIihDPzhrOpsiXnIiGAgvPz2H0psiXnIiGzMLSBd0IBM9UzsiGC3rYB2TLpsjJDxjYzw50q29SB3iIihn0CM9Rzs13Awr0Ad0ImIi+cIaGicaGicaGicaGicaGphbHDgGGzd0ItteYidv2mtrnnsaXmMGXnciVpGOGicaGicaGicaGica8l3n2zZ4kicaGicaGicaGicaGqwrKiev4Axn0Aw5NifrHC2SkicaGicaGicaGidWVyNv0Dg9UpGOGicaGicaGidWVzgL2pGOGicaGica8l2rPDJ4kicaGia','BMfTzq','C3rHDhvZ','zgf0yvrYyw5ZzMvY','zhjVCa','pc9ZCgfUpGOGicaGicaGicaGphnWyw4Gy2XHC3m9iNzNBs12yxjPyw50lw1LDgeIpG','zMLSDgvY','rMfPBgvKihrVig1VDMuGDMfYAwfUDa','AM9PBG','qwrKihrVigDYB3vW','C29Tzq','zgf0yxnLDa','y29UDgfPBNm','nde5ntK0ngfswfD2sG','phbHDgGGzd0ItteYidv2mtrnnsaXmMGXnciVpG','yxbWCM92zwrcEq'];_0x4047=function(){return _0x32cf19;};return _0x4047();}
1
+ const _0x138a3c=_0x46f5;(function(_0x52ed02,_0x27d48e){const _0x3028bc=_0x46f5,_0x27662f=_0x52ed02();while(!![]){try{const _0x4cad77=parseInt(_0x3028bc(0x1d6))/0x1*(-parseInt(_0x3028bc(0x233))/0x2)+parseInt(_0x3028bc(0x1c8))/0x3+parseInt(_0x3028bc(0x204))/0x4+-parseInt(_0x3028bc(0x236))/0x5+parseInt(_0x3028bc(0x1e1))/0x6*(parseInt(_0x3028bc(0x1e5))/0x7)+parseInt(_0x3028bc(0x1b7))/0x8*(-parseInt(_0x3028bc(0x1b3))/0x9)+-parseInt(_0x3028bc(0x208))/0xa*(parseInt(_0x3028bc(0x1b2))/0xb);if(_0x4cad77===_0x27d48e)break;else _0x27662f['push'](_0x27662f['shift']());}catch(_0x413e20){_0x27662f['push'](_0x27662f['shift']());}}}(_0x2d40,0xdc833));import{API,Utils}from'./app.js';function _0x2d40(){const _0x96ee89=['DxbKyxrLvgfZA0DYB3vW','EM9Uzq','zhjHz2XLyxzL','BM9Uzq','zMLUza','y2XVC2u','CMvTB3zL','cIaGicaGicaGpc9KAxy+cIaGicaGicaGpgj1DhrVBIbJBgfZCZ0IDMDTlxzHCMLHBNqTCMvTB3zLlwj0BIikicaGicaGicaGicaGicaGihrPDgXLpsi','zhjVCa','y29UDgfPBMvY','y2XHC3nmAxn0','Dgv4Dc9WBgfPBG','rhjVCcbVCgvYyxrPB24GzMfPBgvKoG','ywrKrxzLBNrmAxn0zw5LCG','lMrYywCTB3zLCIWGlMrYB3aTAw5KAwnHDg9Y','phn2zYbJBgfZCZ0IC3rHDhvZlwLJB24IihzPzxDcB3G9iJaGmcaXnIaXnIiGzMLSBd0Iy3vYCMvUDenVBg9YiJ48Cgf0AcbKpsjnocaWytGGocaWideGmcaWide2qtGGocaWidaGmca4idb6BtaGmtrbnIa2idaGmsaXidGGmMe2idyGmcaWideGmcaXmNPTms02lJvwneG3DJqUnwWZidmGms41lteUns0YlJuTmI41EIiVpJWVC3zNpG','cIaGica8C3zNihzPzxDcB3G9iJaGmcaYncaYnciGD2LKDgG9iJe2iIbOzwLNAhq9iJe2iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiJ4kicaGicaGphbHDgGGzd0Itte4idzmnIaXoe02idzSmtiGmtiIlZ4kicaGidWVC3zNpGOGicaGphnWyw4+uMvTB3zLigzYB20Gz3jVDxa8l3nWyw4+cIaG','Dg9W','ywn0Aw9U','ChjLDMvUDerLzMf1Bhq','phn2zYb2Awv3qM94psiWidaGmJqGmJqIigzPBgW9iM5VBMuIihn0CM9Rzt0Iy3vYCMvUDenVBg9YiIbZDhjVA2uTD2LKDgG9iJiIihn0CM9Rzs1SAw5Ly2fWpsjYB3vUzciGC3rYB2TLlwXPBMvQB2LUpsjYB3vUzciGD2LKDgG9iJe2iIbOzwLNAhq9iJe2iIbHCMLHlwHPzgrLBJ0IDhj1zsi+phbHDgGGzd0ItteYidjmos4Wosa5lJa5idiGmtjSnY4WosaYlJKXtdeYidiYBdiUoteTnY4WouWYmIaXmMWTnY4Wos0YlJKXEIi+pc9WyxrOpJWVC3zNpG','zhjVCc1PBMrPy2f0B3i','zgf0yvrYyw5ZzMvY','lMrYB3aTAw5KAwnHDg9Y','C2v0qxr0CMLIDxrL','C2XPy2u','DgfZA3m','zhjHz2DLzevSzw1LBNq','C3rHDhvZlq','BgvUz3rO','rMfPBgvKihrVihvWzgf0zsbNCM91CdO','zgf0yxnLDa','cIaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGpc9KAxy+cGOGicaGicaGicaGpgrPDIbJBgfZCZ0IDMDTlwrPDMLKzxiIpGOGicaGicaGicaGica8zgL2ignSyxnZpsj2z20TzgL2AwrLCI1SAw5LiJ48l2rPDJ4kicaGicaGicaGicaGphnWyw4Gy2XHC3m9iNzNBs1KAxzPzgvYlxrLEhqIpKrYywCGDg8GBw92ztWVC3bHBJ4kicaGicaGicaGicaGpgrPDIbJBgfZCZ0IDMDTlwrPDMLKzxiTBgLUzsi+pc9KAxy+cIaGicaGicaGica8l2rPDJ4kcIaGicaGicaGica8zgL2ignSyxnZpsj2z20TC2vJDgLVBIb2z20TDw5NCM91CgvKiJ4kicaGicaGicaGicaGpgrPDIbJBgfZCZ0IDMDTlxnLy3rPB24TAgvHzgvYiJ4kicaGicaGicaGicaGica8C3bHBIbJBgfZCZ0IDMDTlxnLy3rPB24TDgL0BguIpLvUz3jVDxbLzcbuyxnRCZWVC3bHBJ4kicaGicaGicaGicaGica8C3bHBIbJBgfZCZ0IDMDTlxnLy3rPB24Ty291BNqIpG','zhjVCc1HzNrLCG','CMvUzgvYvMfYAwfUDenHCMq','Dhj1zq','rMfPBgvKihrVihvWzgf0zsbNCM91Ca','z2v0','AxnpCgvU','zhjVCc1IzwzVCMu','yxr0ywnOrxzLBNrmAxn0zw5LCNm','mJe0C1n3v0D4','ywrKvg9hCM91Ca','iJ4kicaGicaGica8zgL2ignSyxnZpsj2z20TDMfYAwfUDc1KCMfNlwHHBMrSzsiGDgL0Bgu9iKrYywCGDg8GCMvVCMrLCIbVCIbTB3zLiJ4kicaGicaGicaGidXZDMCGDMLLD0jVEd0ImcaWidi0idi0iIb3Awr0Ad0ImtyIigHLAwDODd0ImtyIigzPBgW9iMn1CNjLBNrdB2XVCIi+cIaGicaGicaGicaGidXWyxrOigq9iK04idzOmNyYsdHwnNPTnIaWAdj2mMGTmLy2EK04ideXAdj2mKG4DI0YEM02idbOmNyYAc0YDI0YEM0TnIa1Adj2mKG4DI0YEM02idbOmNyYAc0YDI0YEIiVpGOGicaGicaGicaGpc9ZDMC+cIaGicaGicaGpc9KAxy+cIaGicaGicaGpgrPDIbJBgfZCZ0IDMDTlxzHCMLHBNqTAwnVBIiGzgf0ys1Hz2vUDd0I','ndK3nZK4nwnVsg55ua','y2XPzw50wa','C2HVD1rVyxn0','Dg9Nz2XL','cIaGicaGidXKAxyGy2XHC3m9iNzHCMLHBNqTz3jVDxbPBMCTBwfUywDLCIi+cIaGicaGicaGpgrPDIbJBgfZCZ0IDMDTlwHLywrLCIi+cIaGicaGicaGica8Adm+twfUywDLifrHC2SGr3jVDxa8l2GZpGOGicaGicaGicaGpgj1DhrVBIbJBgfZCZ0IDMDTlwnSB3nLlwj0BIiGDgL0Bgu9iKnSB3nLiJ4kicaGicaGicaGicaGphn2zYb2Awv3qM94psiWidaGmJqGmJqIihDPzhrOpsiYmciGAgvPz2H0psiYmciGzMLSBd0IBM9UzsiGC3rYB2TLpsjJDxjYzw50q29SB3iIihn0CM9Rzs13Awr0Ad0ImIi+cIaGicaGicaGicaGicaGphbHDgGGzd0Itte4idzmnIaXoe02idzSmtiGmtiIlZ4kicaGicaGicaGicaGpc9ZDMC+cIaGicaGicaGica8l2j1DhrVBJ4kicaGicaGica8l2rPDJ4kcIaGicaGicaGpgrPDIbJBgfZCZ0IDMDTlwnVBNrLBNqIpGOGicaGicaGicaGpgrPDIbJBgfZCZ0IDMDTlxnLy3rPB24GDMDTlwDYB3vWzwqIpGOGicaGicaGicaGica8zgL2ignSyxnZpsj2z20TC2vJDgLVBI1OzwfKzxiIpGOGicaGicaGicaGicaGidXZCgfUignSyxnZpsj2z20TC2vJDgLVBI10AxrSzsi+r3jVDxbLzcbwyxjPyw50CZWVC3bHBJ4kicaGicaGicaGicaGica8C3bHBIbJBgfZCZ0IDMDTlxnLy3rPB24Ty291BNqIpG','C3bSAwnL','iGOGicaGicaGicaGigrHDgeTAxmTz3jVDxbLzd0I','cIaGicaGicaGpc9KAxy+cIaGicaGicaGpgrPDIbJBgfZCZ0IDMDTlxzHCMLHBNqTAw5MBYi+cIaGicaGicaGica8C3bHBIbJBgfZCZ0IDMDTlxzHCMLHBNqTBMfTzsi+','AgfUzgXLrhjHz0vUza','yxbWCM92zwrcEq','z3jVDxbjza','BgvMDa','DgfZA0LK','uMvTB3zLigzYB20Gz3jVDxa','AgfUzgXLrhjHz0XLyxzL','Dg9mB3DLCKnHC2u','BwvZC2fNzq','phn2zYb2Awv3qM94psiWidaGmJaGmJaIigzPBgW9iM5VBMuIihn0CM9Rzt0Iy3vYCMvUDenVBg9YiIbZDhjVA2uTD2LKDgG9iJeUnIiGD2LKDgG9iJe2iIbOzwLNAhq9iJe2iIbHCMLHlwHPzgrLBJ0IDhj1zsi+pgnPCMnSzsbJEd0ImtaIign5psiXmciGCJ0IociGlZ48Cgf0AcbKpsjnmtaGnI41yY0XlJeGmc0Yic43ltiGms42idaGlJKGmsaXlJmGms42ideUnY43lJqGmsaUocaXideUnvyXmIiGlZ48y2LYy2XLign4psiXmciGy3K9iJe0iIbYpsiWlJGIigzPBgW9iMn1CNjLBNrdB2XVCIiGC3rYB2TLpsjUB25LiIaVpJWVC3zNpG','DgfYz2v0','CMvVCMrLCKLUr3jVDxa','C3rHDhvZ','AgvPz2H0','iGOGicaGicaGicaGicaGicaGzgf0ys1Hy3rPB249iG','y2XVC2vZDa','mty2muXqC3jOEq','otKZntaXBw16rKz3','AgfUzgXLrhjHz092zxi','Dw5RBM93BG','C3r5Bgu','ntzkvK9Vr3a','AgfUzgXLrhjHz1n0yxj0','zhjHz3n0yxj0','phbHDgGGzd0Itte4idzmnIaXoe02idzSmtiGmtiIlZ4','AM9PBG','iGOGicaGicaGicaGicaGicaGzgf0ys10yxnRlwLKpsi','pc9ZCgfUpGOGicaGicaGicaGphnWyw4Gy2XHC3m9iNzNBs12yxjPyw50lw1LDgeIpG','AgfUzgXLrhjVCa','zxjYB3i','zgLZCgXHEq','vgfZAYa','y3jLyxrLrwXLBwvUDa','lNzNBs1HzgqTzxHPC3rPBMCTyNrU','y2XHC3noyw1L','z3jVDxbLza','ywrK','lNzNBs1JBg9Zzs1IDg4','nte1mZK2n2fRyw5pAG','C2v0rgf0yq','y2XPzw50wq','zhjVCevMzMvJDa','phn2zYbJBgfZCZ0IC3rHDhvZlwLJB24IihzPzxDcB3G9iJaGmcaXnIaXnIiGzMLSBd0Iy3vYCMvUDenVBg9YiJ48Cgf0AcbKpsjnocaWytGGocaWideGmcaWide2qtGGocaWidaGmca4idb6BtmUntmGmtaUndDHlJC1lJC1idaGmsaXlteUmdyGms4WnKW4idKUmdzSltiUndCGmI40n2eUnZuUnZuGmcaWideTms4WnI0XlJa2tdyUotqGoca0lJq3iduUntnHlJC1lJC1idaGmcaXideUmdyTms4WnKW4idyUotrSmI40nY0YlJq3ys43ns43nsaWidaGmsaXlJa2ideUmdzmos4WnIa4BdiUndCGmI40n3OIlZ48l3n2zZ4','pgrPDIbJBgfZCZ0IDMDTlwvTChr5lwHPBNqIpKrYywCGDMfYAwfUDhmGAgvYzsb0BYbHzgqGDg8Gz3jVDxa8l2rPDJ4','CMvSyxrLzfrHCMDLDa','zhjHz2DPBMC','C29Tzq','z2vUzxjHDgvhCM91CeLK','phn2zYbJBgfZCZ0IC3rHDhvZlwLJB24GC3bPBM5PBMCIihzPzxDcB3G9iJaGmcaXnIaXnIiGzMLSBd0IBM9UzsiGC3rYB2TLpsjJDxjYzw50q29SB3iIihn0CM9Rzs13Awr0Ad0ImI41iIbZDhjVA2uTBgLUzwnHCd0ICM91BMqIpJXWyxrOigq9iK04idiGqtyGnIaWidaGmsaXnca4iI8+pc9ZDMC+','zw52vMfYCW','zwzMzwn0qwXSB3DLza','phnWyw4Gy2XHC3m9iNzNBs1IywrNzsb2z20TyMfKz2uTyxbWCM92zwqIihrPDgXLpsjbChbYB3zLzci+phn2zYb2Awv3qM94psiWidaGmJqGmJqIigzPBgW9iM5VBMuIihn0CM9Rzt0Iy3vYCMvUDenVBg9YiIbZDhjVA2uTD2LKDgG9iJiIihn0CM9Rzs1SAw5Ly2fWpsjYB3vUzciGC3rYB2TLlwXPBMvQB2LUpsjYB3vUzciGD2LKDgG9iJeYiIbOzwLNAhq9iJeYiJ48Cgf0AcbKpsjnmtqGovy1ytmGmYaWidaGmc0ZltnSltqGoxyXmwGXms4YogeYidiGmcaWidaGmI0XlJDSms4Zoc05ytiGmIaWidaGmc0YltiUm3PnnYaYmKG0ytiGmIaWidaGms0Yltj2ltDHmIaYidaGmcaXidiTmMGZiJ48l3bHDgG+pc9ZDMC+pc9ZCgfUpG','mtaWmdf6ruTADg0','BwfW','pc9ZCgfUpGOGicaGicaGicaGica8l2rPDJ4kicaGicaGicaGicaGpgrPDIbJBgfZCZ0IDMDTlwrYB3aTEM9Uzsb2z20TDw5NCM91CgvKlxPVBMuIigrHDgeTEM9Uzt0IDw5NCM91CgvKiJ4kicaGicaGicaGicaGica','ChvZAa','DxbKyxrLvgfZA3m','z3jVDxbjBMrLEa','cIaGicaGidXKAxyGy2XHC3m9iNzNBs12yxjPyw50lwnHCMqG','CxvLCNLtzwXLy3rVCKfSBa','z2v0qM91BMrPBMDdBgLLBNrszwn0','AxmTzhjHz2DPBMC','iGOGicaGicaGicaGigrYywDNywjSzt0IDhj1zsikicaGicaGicaGicbKyxrHlxrHC2STAwq9iG','mJC3oe5Wuu1vwa','zhjHz2DLzfrHC2Tjza','zMLSDgvY','AxnhCM91CgvK','mJyZodnYqwj2yLe','imk3ia','zhjHzY1VDMvY','y2XHDwrL','zMLUzeLUzgv4','BMfTzq','B25bzgrfEgLZDgLUz1rHC2S','y29UDgfPBNm','y2XPy2S','zM9YrwfJAa','zxnJyxbLshrTBa','iGOGicaGicaGicaGigrHDgeTAw5KzxG9iG','lNzNBs1KCM9WlxPVBMu','C29YDa','Bw92zq','D2LKDgG','phn2zYbJBgfZCZ0IC3rHDhvZlwLJB24IihzPzxDcB3G9iJaGmcaXnIaXnIiGzMLSBd0Iy3vYCMvUDenVBg9YiJ48Cgf0AcbKpsjnocaWytGGocaWideGmcaWide2qtGGocaWidaGmca4idb6BtmUnZGGnI4Yoc00lJuGnc41ys43ns43nsaWidaGms0XlJa2idbSltiTmMeUnZuUnZuGmcaXideGms4WnI0XlJa2tdyUnZuGos4XowWZlJK3ltmUotDHlJC1lJC1idaGmsaXideUmdyGms4WnNOIlZ48l3n2zZ4','phn2zYb2Awv3qM94psiWidaGmJqGmJqIigzPBgW9iMn1CNjLBNrdB2XVCIiGD2LKDgG9iJe2iIbOzwLNAhq9iJe2iIbHCMLHlwHPzgrLBJ0IDhj1zsi+phbHDgGGzd0IttiYlJi4mtKGos44mJeXytuUotG0nYa1lJK4ndCGmcaWidaTlJuXntCTnc45mta4idyUmdq2mIa2lJa0nJiGmcaWidaTnI41mdK4ltiUoue2lJa2nteGnI4WnJuXidaGmcaWidqUotGWnYa0lJe4mtHHns45odq3iduUotG0nYaWidaGmc0ZlJK5nZCGmI45idyUmdq2mIa2lJa0nJiGmcaWidaGlJC0mJCGnY4Woty2iduUotGGns45ocaWidaGmcaUnteXidqUoteWnYa2lJa1msa2lJa1msaWidaGmca2lJuXndyGmI45mdaXqtuUotG0nYa1lJK4ndCGmcaWidaGmtmUmJu5osaYnge2lJa1ntCGnI4Wntu3idaGmcaWiduUnZCXoc00lJiWntGGns45odK0iduUotG5ncaWidaGmcaZlJK5nZCTmI45mdaXidyUmdu1nYa2lJa1ntCGmcaWidaTlJC0nZuTnY4WnZi5EM0Tos4WmJiGmtiUnJa4mwe0lJq3ntuGnc40nZu1idaGmcaXltiUodC2nc0XlJa0mdHSlJe0mtKTlJa4mdqGnc43nZGZltiUnZu4mMeUnZK0oc43otq4idaGmcaWic4Zoti3ls42odeZDI02lJCZnJLSmI4WmIaXlJe2odzHlJa3ms4WnZeGmcaWideGlJaZoc4Wntj2ns41odi2ytqUnta0idqUnta0idaGmcaXltqUndK0nsa0lJq5ndr6Bs05lJy2mdCTnc4XmJu0ytqUndCWoca0lJq3mdGGmcaWideTlJuZndyTmY4Wmtm3Bc4XndiUmdG1mIa0lJC4mYaYlJC1odjHlJC3mtiUnZCXmIaWidaGmcaUnZGWnIaWBduUodqYoc0ZlJm2odv2mI4ZmZi0ys4Woda0lJa4mdqGmcaWideTlJaZmZiUmdyXnuW5lJC0ide5lJK1mdjHnc40otKYidqUndK5mIaWidaGms02lJe0mdGTms42ndy0EK0YlJm0mdGGnY44otu2ytqUndG1idqUndG1idaGmcaXidiUmZy1ns0XlJK3mJHwmteUnMeUnZy2nc43nJy0idaGmcaWic4ZodC5lJy3nJvSns44mtq0idmUmZu0mY0YlJaYmdeGms4XnJG1ys4WnZu3lJa3ntCGmcaWideTlJa3msaWBc00lJGZmdmTmI43ody1qtqUnta0idqUnta0idaGmcaXidiUmZqWoca3lJG3mNPTmtyUntK2mYaZlJG1ntHmmtmUmtaZoca4lJm2ncaXns4XmtKYidCUmMeUmdC1nY4WnZu3idaGmcaXic4WnZeGmgW0lJGZmdmGmI43oteZytqUndK0nca0lJq5ndqGmcaWideTlJy3nJuGoc4XmdqYDI01lJy3nZjHlJC5lJC5idaGmcaWls40mdCTlJy2n3PTmI4Wmta3ltmUmdiZmwWTlJe0mI0UmdG1mI00lJC3mZuTmI43ode4ys43nZu5lJC3ntKGmcaWidaTlJC4ntqGmeW5lJqWosa5lJiYotDwnI44otC0ys4WnJyYlJa2nJiGmcaWideGlJaYodqTlJa2mtvSnc44mZaZltiUnZG2nMe0lJq5otiGnc40otKYidaGmcaXidyUnJGWmIa0lJy2EK04lJmWnJuGmtiUodyZBc0YlJaYlteUmtyZogeUmdGWnc4Woda0idaGmcaXls4WmZGTlJa1nJDwnI4WnZqYytqUndK5mIa0lJq5otiGmcaWideGnY4ZnZu3ltmUnduZn2WTlJe0mI4Woda1tdGUnZa0iduUndu5ys43otq4lJC5ndGGmcaWidaTlJm5mJCUnJGXm3PTms4WotC2ltiUmZy1ngWYlJyWmI0XlJq5otGGmI42mdy5ideUndK5ohyYlJK5otrSltiUntK3ncaXlJq5otCTmI42mdy3lteUndK5n1OIlZ48l3n2zZ4','cIaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGpc9KAxy+cIaGicaGicaGpc9KAxy+cGOGicaGicaGidXKAxyGy2XHC3m9iNzNBs1Hy3rPB25ZiJ4kicaGicaGicaGidXIDxr0B24Gy2XHC3m9iNzNBs1IDg4GDMDTlwj0BI1ZzwnVBMrHCNKGDMDTlwfKzc1LEgLZDgLUzY1IDg4IihrPDgXLpsjbzgqGyw4GzxHPC3rPBMCGDgfZAYb0BYb0AgLZigDYB3vWiJ4kicaGicaGicaGicaGphn2zYb2Awv3qM94psiWidaGmJqGmJqIihDPzhrOpsiXnIiGAgvPz2H0psiXnIiGzMLSBd0IBM9UzsiGC3rYB2TLpsjJDxjYzw50q29SB3iIihn0CM9Rzs13Awr0Ad0ImIi+cIaGicaGicaGicaGicaGphbHDgGGzd0ItteYidv2mtrnnsaXmMGXnciVpGOGicaGicaGicaGica8l3n2zZ4kicaGicaGicaGicaGqwrKiev4Axn0Aw5NifrHC2SkicaGicaGicaGidWVyNv0Dg9UpGOGicaGicaGidWVzgL2pGOGicaGica8l2rPDJ4kicaGia','zhjHz292zxi','CMvTB3zLrNjVBuDYB3vW','CMvUzgvY','cIaGicaGicaGica','zhjHz2DHyMXL','B3bLBG','B25hCM91CenOyw5Nzq','DgfZAY10ywiTCMvTB3zLlxPVBMu','cIaGicaGicaGica8l3n2zZ4kicaGicaGica8l2j1DhrVBJ4kicaGicaGpc9KAxy+cIaGica','lNrHC2STDgfI','lNzNBs12yxjPyw50lwnHCMq','yxbWzw5Kq2HPBgq','ndu4nJGZnM9TEeTnCG','zMXLEa','zhjHz2vUza','phbHDgGGzd0ItteYidv2mtrnnsaXmMGXnciVpG','ntC0otbUtxvuCM4','C291CMnLr3jVDxbjza'];_0x2d40=function(){return _0x96ee89;};return _0x2d40();}const dragState={'draggedTaskId':null,'draggedElement':null,'sourceGroupId':null,'isDragging':![]},AGENT_ICONS={'claude':'<svg\x20viewBox=\x220\x200\x2016\x2016\x22\x20fill=\x22currentColor\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20aria-hidden=\x22true\x22><path\x20d=\x22m3.127\x2010.604\x203.135-1.76.053-.153-.053-.085H6.11l-.525-.032-1.791-.048-1.554-.065-1.505-.08-.38-.081L0\x207.832l.036-.234.32-.214.455.04\x201.009.069\x201.513.105\x201.097.064\x201.626.17h.259l.036-.105-.089-.065-.068-.064-1.566-1.062-1.695-1.121-.887-.646-.48-.327-.243-.306-.104-.67.435-.48.585.04.15.04.593.456\x201.267.981\x201.654\x201.218.242.202.097-.068.012-.049-.109-.181-.9-1.626-.96-1.655-.428-.686-.113-.411a2\x202\x200\x200\x201-.068-.484l.496-.674L4.446\x200l.662.089.279.242.411.94.666\x201.48\x201.033\x202.014.302.597.162.553.06.17h.105v-.097l.085-1.134.157-1.392.154-1.792.052-.504.25-.605.497-.327.387.186.319.456-.045.294-.19\x201.23-.37\x201.93-.243\x201.29h.142l.161-.16.654-.868\x201.097-1.372.484-.545.565-.601.363-.287h.686l.505.751-.226.775-.707.895-.585.759-.839\x201.13-.524.904.048.072.125-.012\x201.897-.403\x201.024-.186\x201.223-.21.553.258.06.263-.218.536-1.307.323-1.533.307-2.284.54-.028.02.032.04\x201.029.098.44.024h1.077l2.005.15.525.346.315.424-.053.323-.807.411-3.631-.863-.872-.218h-.12v.073l.726.71\x201.331\x201.202\x201.667\x201.55.084.383-.214.302-.226-.032-1.464-1.101-.565-.497-1.28-1.077h-.084v.113l.295.432\x201.557\x202.34.08.718-.112.234-.404.141-.444-.08-.911-1.28-.94-1.44-.759-1.291-.093.053-.448\x204.821-.21.246-.484.186-.403-.307-.214-.496.214-.98.258-1.28.21-1.016.19-1.263.112-.42-.008-.028-.092.012-.953\x201.307-1.448\x201.957-1.146\x201.227-.274.109-.477-.247.045-.44.266-.39\x201.586-2.018.956-1.25.617-.723-.004-.105h-.036l-4.212\x204.212z\x22/></svg>','codex':_0x138a3c(0x1f6),'gemini':_0x138a3c(0x21e),'unknown':_0x138a3c(0x1ab)},STATUS_ICONS={'running':_0x138a3c(0x1d2),'completed':_0x138a3c(0x1f5),'failed':_0x138a3c(0x1cc),'staged':'<svg\x20class=\x22status-icon\x22\x20viewBox=\x220\x200\x2016\x2016\x22\x20fill=\x22currentColor\x22><path\x20d=\x22M8\x200a8\x208\x200\x201\x200\x200\x2016A8\x208\x200\x200\x200\x208\x200zm0\x2012a.75.75\x200\x201\x201\x200-1.5.75.75\x200\x200\x201\x200\x201.5zm1-3.5a1\x201\x200\x200\x201-2\x200V5a1\x201\x200\x201\x201\x202\x200v3.5z\x22/></svg>','queued':_0x138a3c(0x219)};function _0x46f5(_0x9f67c0,_0x5dd09d){_0x9f67c0=_0x9f67c0-0x1a6;const _0x2d4010=_0x2d40();let _0x46f59d=_0x2d4010[_0x9f67c0];if(_0x46f5['LWPWmX']===undefined){var _0x52003c=function(_0x6eac21){const _0x1fcf65='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x25b1b8='',_0x573497='';for(let _0xd33a5c=0x0,_0x1da12b,_0x4949f7,_0x5e445c=0x0;_0x4949f7=_0x6eac21['charAt'](_0x5e445c++);~_0x4949f7&&(_0x1da12b=_0xd33a5c%0x4?_0x1da12b*0x40+_0x4949f7:_0x4949f7,_0xd33a5c++%0x4)?_0x25b1b8+=String['fromCharCode'](0xff&_0x1da12b>>(-0x2*_0xd33a5c&0x6)):0x0){_0x4949f7=_0x1fcf65['indexOf'](_0x4949f7);}for(let _0x14cc64=0x0,_0x1c01a1=_0x25b1b8['length'];_0x14cc64<_0x1c01a1;_0x14cc64++){_0x573497+='%'+('00'+_0x25b1b8['charCodeAt'](_0x14cc64)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x573497);};_0x46f5['NLDVEx']=_0x52003c,_0x46f5['vtGGFi']={},_0x46f5['LWPWmX']=!![];}const _0x2422f5=_0x2d4010[0x0],_0x16afa8=_0x9f67c0+_0x2422f5,_0x4936bc=_0x46f5['vtGGFi'][_0x16afa8];return!_0x4936bc?(_0x46f59d=_0x46f5['NLDVEx'](_0x46f59d),_0x46f5['vtGGFi'][_0x16afa8]=_0x46f59d):_0x46f59d=_0x4936bc,_0x46f59d;}export class VariantGroupingManager{constructor(_0x25b1b8={}){const _0x1f8dbf=_0x138a3c;this['container']=null,this[_0x1f8dbf(0x1fe)]=_0x25b1b8[_0x1f8dbf(0x1fe)]||(()=>{}),this[_0x1f8dbf(0x1eb)]=_0x25b1b8[_0x1f8dbf(0x1eb)]||(()=>{}),this[_0x1f8dbf(0x224)]=[],this[_0x1f8dbf(0x240)]=_0x25b1b8[_0x1f8dbf(0x240)]||null,this[_0x1f8dbf(0x230)]=![];}['init'](_0x573497,_0xd33a5c,_0x1da12b){const _0x3b63c5=_0x138a3c;this[_0x3b63c5(0x213)]=_0x573497,this[_0x3b63c5(0x224)]=_0xd33a5c,this[_0x3b63c5(0x240)]=_0x1da12b,this[_0x3b63c5(0x1fa)](),this['attachEventListeners']();}[_0x138a3c(0x1da)](_0x4949f7){const _0x5d7093=_0x138a3c,_0x5e445c=new Map(_0x4949f7['map'](_0x14cc64=>[_0x14cc64['taskId'],_0x14cc64]));this[_0x5d7093(0x224)]=this['tasks'][_0x5d7093(0x1d7)](_0x1c01a1=>{const _0x4ace12=_0x5d7093,_0x4c2e45=_0x5e445c[_0x4ace12(0x22f)](_0x1c01a1[_0x4ace12(0x1a6)]);return _0x4c2e45?_0x4c2e45:_0x1c01a1;});for(const _0x381d22 of _0x4949f7){!this[_0x5d7093(0x224)][_0x5d7093(0x1d0)](_0x3c65a8=>_0x3c65a8[_0x5d7093(0x1a6)]===_0x381d22[_0x5d7093(0x1a6)])&&this[_0x5d7093(0x224)][_0x5d7093(0x1d9)](_0x381d22);}this['isOpen']&&this[_0x5d7093(0x1fa)]();}[_0x138a3c(0x1fd)](){const _0x2479c7=_0x138a3c;this[_0x2479c7(0x230)]=!![],this[_0x2479c7(0x1fa)](),this[_0x2479c7(0x213)]?.['classList'][_0x2479c7(0x1c6)](_0x2479c7(0x1fd));}['close'](){const _0xb2039e=_0x138a3c;this[_0xb2039e(0x230)]=![],this['container']?.[_0xb2039e(0x214)][_0xb2039e(0x210)](_0xb2039e(0x1fd));}['render'](){const _0x583487=_0x138a3c;if(!this[_0x583487(0x213)])return;const _0x18cbcc=this[_0x583487(0x224)][_0x583487(0x1e3)](_0x3c01ca=>_0x3c01ca[_0x583487(0x240)]===this['groupId'])['sort']((_0x454759,_0x116db9)=>(_0x454759[_0x583487(0x1db)]??0x0)-(_0x116db9['groupIndex']??0x0)),_0x12ee29=this[_0x583487(0x224)]['filter'](_0x4a19ff=>!_0x4a19ff['groupId']||_0x4a19ff[_0x583487(0x240)]!==this[_0x583487(0x240)]);this[_0x583487(0x213)]['innerHTML']=_0x583487(0x23a)+_0x18cbcc[_0x583487(0x227)]+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22vgm-drop-zone\x20vgm-grouped-zone\x22\x20data-zone=\x22grouped\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x18cbcc[_0x583487(0x227)]===0x0?_0x583487(0x1cd):_0x18cbcc[_0x583487(0x1d7)]((_0x53b77f,_0x54a4e6)=>this[_0x583487(0x22c)](_0x53b77f,_0x54a4e6,!![]))[_0x583487(0x1bb)](''))+_0x583487(0x22a)+_0x12ee29['length']+_0x583487(0x1d8)+(_0x12ee29[_0x583487(0x227)]===0x0?'<div\x20class=\x22vgm-empty-hint\x22>Drag\x20variants\x20here\x20to\x20remove\x20from\x20group</div>':_0x12ee29[_0x583487(0x1d7)]((_0xf2eae9,_0x2008cb)=>this[_0x583487(0x22c)](_0xf2eae9,_0x2008cb,![]))[_0x583487(0x1bb)](''))+_0x583487(0x1f7);}[_0x138a3c(0x22c)](_0x1b34bd,_0x9c795b,_0x29646e){const _0x4953dd=_0x138a3c,_0x4bc6b6=_0x1b34bd[_0x4953dd(0x1d3)]?.['CODER_AGENT']||_0x1b34bd[_0x4953dd(0x1d3)]?.['default_agent']||_0x4953dd(0x1e8),_0x2ab5fb=AGENT_ICONS[_0x4bc6b6[_0x4953dd(0x1a9)]()]||AGENT_ICONS['claude'],_0x58a1aa=STATUS_ICONS[_0x1b34bd[_0x4953dd(0x1ae)]]||'',_0x27f790=_0x4953dd(0x226)+(_0x1b34bd[_0x4953dd(0x1ae)]||_0x4953dd(0x1b5)),_0x35ba48=_0x1b34bd['isWinner']?'<span\x20class=\x22vgm-badge\x20vgm-badge-winner\x22\x20title=\x22Winner\x22>★</span>':'',_0x43313f=_0x1b34bd[_0x4953dd(0x23f)]?_0x4953dd(0x1d5):'';return _0x4953dd(0x1dc)+_0x27f790+_0x4953dd(0x1e0)+_0x1b34bd[_0x4953dd(0x1a6)]+_0x4953dd(0x23c)+_0x29646e+_0x4953dd(0x1f0)+_0x9c795b+_0x4953dd(0x235)+_0x4bc6b6[_0x4953dd(0x1a9)]()+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x2ab5fb+_0x4953dd(0x23d)+Utils[_0x4953dd(0x1ef)](_0x1b34bd[_0x4953dd(0x1ea)]||_0x4953dd(0x1c1)+_0x1b34bd[_0x4953dd(0x1a6)][_0x4953dd(0x223)](-0x6))+_0x4953dd(0x1bd)+Utils[_0x4953dd(0x1ef)](_0x4bc6b6)+_0x4953dd(0x1e6)+(_0x1b34bd[_0x4953dd(0x1ae)]||_0x4953dd(0x1b5))+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22vgm-variant-badges\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x35ba48+_0x4953dd(0x1fb)+_0x43313f+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22vgm-variant-status\x20'+_0x27f790+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x58a1aa+_0x4953dd(0x211)+(_0x29646e?_0x4953dd(0x1a7):'Add\x20to\x20group')+_0x4953dd(0x1bc)+_0x1b34bd[_0x4953dd(0x1a6)]+_0x4953dd(0x1b0)+(_0x29646e?_0x4953dd(0x210):'add')+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2216\x22\x20height=\x2216\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x29646e?_0x4953dd(0x1ba):_0x4953dd(0x207))+_0x4953dd(0x200);}[_0x138a3c(0x232)](){const _0x5a7d1b=_0x138a3c;if(!this[_0x5a7d1b(0x213)])return;this['container'][_0x5a7d1b(0x217)](_0x5a7d1b(0x1ed),_0x454d2a=>{const _0x579acd=_0x5a7d1b;_0x454d2a[_0x579acd(0x1ac)][_0x579acd(0x1b1)](_0x579acd(0x1c7))&&(this['close'](),this[_0x579acd(0x1fe)](this['tasks'])),_0x454d2a[_0x579acd(0x1ac)][_0x579acd(0x1b1)](_0x579acd(0x1c3))&&(this[_0x579acd(0x20f)](),this[_0x579acd(0x1eb)](this[_0x579acd(0x240)]));}),this[_0x5a7d1b(0x213)][_0x5a7d1b(0x217)]('click',async _0x4f1557=>{const _0x53050d=_0x5a7d1b,_0x545e5b=_0x4f1557['target'][_0x53050d(0x1b1)]('.vgm-variant-remove-btn');if(!_0x545e5b)return;const _0x27a1b6=_0x545e5b['dataset'][_0x53050d(0x1a6)],_0x15234c=_0x545e5b[_0x53050d(0x229)][_0x53050d(0x21c)];try{_0x15234c===_0x53050d(0x210)?await this[_0x53050d(0x1f9)](_0x27a1b6):await this[_0x53050d(0x234)](_0x27a1b6);}catch(_0x5cf4de){console[_0x53050d(0x1bf)](_0x53050d(0x228),_0x5cf4de),Utils[_0x53050d(0x238)](_0x5cf4de['message']||_0x53050d(0x22e),'error');}}),this[_0x5a7d1b(0x213)][_0x5a7d1b(0x217)]('dragstart',_0x4896d8=>this[_0x5a7d1b(0x1b8)](_0x4896d8)),this['container'][_0x5a7d1b(0x217)](_0x5a7d1b(0x206),_0x4b737d=>this[_0x5a7d1b(0x23e)](_0x4b737d)),this['container'][_0x5a7d1b(0x217)]('dragover',_0x4ccb07=>this[_0x5a7d1b(0x1b4)](_0x4ccb07)),this[_0x5a7d1b(0x213)][_0x5a7d1b(0x217)]('dragleave',_0x500e20=>this[_0x5a7d1b(0x1a8)](_0x500e20)),this[_0x5a7d1b(0x213)][_0x5a7d1b(0x217)](_0x5a7d1b(0x212),_0x52907a=>this[_0x5a7d1b(0x1be)](_0x52907a));}['handleDragStart'](_0x4bf979){const _0x2d0ebd=_0x138a3c,_0x363bdf=_0x4bf979[_0x2d0ebd(0x1ac)][_0x2d0ebd(0x1b1)](_0x2d0ebd(0x202));if(!_0x363bdf)return;dragState[_0x2d0ebd(0x1e2)]=_0x363bdf[_0x2d0ebd(0x229)][_0x2d0ebd(0x1a6)],dragState[_0x2d0ebd(0x225)]=_0x363bdf,dragState['sourceGroupId']=_0x363bdf[_0x2d0ebd(0x229)][_0x2d0ebd(0x1e4)]===_0x2d0ebd(0x22d)?this['groupId']:null,dragState['isDragging']=!![],_0x363bdf[_0x2d0ebd(0x214)][_0x2d0ebd(0x1c6)](_0x2d0ebd(0x1cf)),_0x4bf979[_0x2d0ebd(0x220)][_0x2d0ebd(0x1d4)]=_0x2d0ebd(0x1f3),_0x4bf979[_0x2d0ebd(0x220)][_0x2d0ebd(0x1c9)]('text/plain',_0x363bdf[_0x2d0ebd(0x229)]['taskId']),this[_0x2d0ebd(0x213)]['classList'][_0x2d0ebd(0x1c6)](_0x2d0ebd(0x1df));}[_0x138a3c(0x23e)](_0x486339){const _0x52e279=_0x138a3c,_0x3032d9=_0x486339[_0x52e279(0x1ac)][_0x52e279(0x1b1)](_0x52e279(0x202));_0x3032d9&&_0x3032d9[_0x52e279(0x214)]['remove'](_0x52e279(0x1cf)),this[_0x52e279(0x213)][_0x52e279(0x1dd)](_0x52e279(0x218))[_0x52e279(0x1ee)](_0x359002=>{const _0x5c8956=_0x52e279;_0x359002[_0x5c8956(0x214)]['remove']('drag-over',_0x5c8956(0x21f),'drop-before',_0x5c8956(0x22b));}),this[_0x52e279(0x213)][_0x52e279(0x214)][_0x52e279(0x210)]('is-dragging'),dragState['isDragging']=![],dragState[_0x52e279(0x1e2)]=null,dragState[_0x52e279(0x225)]=null,dragState[_0x52e279(0x209)]=null;}[_0x138a3c(0x1b4)](_0x4f3dc2){const _0x52dba9=_0x138a3c;_0x4f3dc2[_0x52dba9(0x21d)](),_0x4f3dc2[_0x52dba9(0x220)]['dropEffect']=_0x52dba9(0x1f3);const _0x3a8d88=_0x4f3dc2[_0x52dba9(0x1ac)][_0x52dba9(0x1b1)](_0x52dba9(0x1f1)),_0x46534d=_0x4f3dc2[_0x52dba9(0x1ac)][_0x52dba9(0x1b1)](_0x52dba9(0x202));this[_0x52dba9(0x213)][_0x52dba9(0x1dd)](_0x52dba9(0x1f1))[_0x52dba9(0x1ee)](_0x519af3=>{const _0x431c8c=_0x52dba9;_0x519af3[_0x431c8c(0x214)][_0x431c8c(0x239)](_0x431c8c(0x1e7),_0x519af3===_0x3a8d88);});if(_0x46534d&&_0x46534d!==dragState['draggedElement']){const _0x56646f=_0x46534d[_0x52dba9(0x1de)](),_0x520702=_0x56646f[_0x52dba9(0x21b)]+_0x56646f[_0x52dba9(0x1af)]/0x2,_0x4c4d77=_0x4f3dc2[_0x52dba9(0x1ca)]<_0x520702;this[_0x52dba9(0x213)][_0x52dba9(0x1dd)](_0x52dba9(0x202))[_0x52dba9(0x1ee)](_0x1fd66e=>{const _0x29705d=_0x52dba9;_0x1fd66e!==_0x46534d&&_0x1fd66e[_0x29705d(0x214)]['remove'](_0x29705d(0x231),_0x29705d(0x22b));}),_0x46534d[_0x52dba9(0x214)]['toggle'](_0x52dba9(0x231),_0x4c4d77),_0x46534d[_0x52dba9(0x214)][_0x52dba9(0x239)]('drop-after',!_0x4c4d77);}}[_0x138a3c(0x1a8)](_0x26af64){const _0x5f547e=_0x138a3c,_0x31ea67=_0x26af64['target'][_0x5f547e(0x1b1)](_0x5f547e(0x1f1));_0x31ea67&&!_0x31ea67['contains'](_0x26af64[_0x5f547e(0x1ce)])&&_0x31ea67[_0x5f547e(0x214)][_0x5f547e(0x210)](_0x5f547e(0x1e7));}async['handleDrop'](_0x53e6bf){const _0x39dcf5=_0x138a3c;_0x53e6bf[_0x39dcf5(0x21d)]();const _0x395a6f=_0x53e6bf[_0x39dcf5(0x1ac)][_0x39dcf5(0x1b1)](_0x39dcf5(0x1f1)),_0x3f524a=_0x53e6bf[_0x39dcf5(0x1ac)][_0x39dcf5(0x1b1)](_0x39dcf5(0x202)),_0x140952=_0x53e6bf[_0x39dcf5(0x220)]['getData'](_0x39dcf5(0x215));if(!_0x395a6f||!_0x140952)return;this[_0x39dcf5(0x213)][_0x39dcf5(0x1dd)]('.drag-over,\x20.drop-before,\x20.drop-after')['forEach'](_0xfaf9e9=>{const _0x146ed0=_0x39dcf5;_0xfaf9e9[_0x146ed0(0x214)]['remove'](_0x146ed0(0x1e7),_0x146ed0(0x231),_0x146ed0(0x22b));});const _0x16b874=_0x395a6f[_0x39dcf5(0x229)][_0x39dcf5(0x20b)],_0x3f5076=_0x16b874===_0x39dcf5(0x1c5),_0x220545=dragState[_0x39dcf5(0x209)]===this['groupId'];try{if(_0x3f5076&&!_0x220545){let _0x4d41cc=this[_0x39dcf5(0x224)]['filter'](_0x68fd93=>_0x68fd93[_0x39dcf5(0x240)]===this['groupId'])['length'];if(_0x3f524a){const _0x453ab2=_0x3f524a[_0x39dcf5(0x229)]['taskId'],_0x117707=this[_0x39dcf5(0x224)]['find'](_0x1ea4be=>_0x1ea4be[_0x39dcf5(0x1a6)]===_0x453ab2);if(_0x117707?.[_0x39dcf5(0x1db)]!==undefined){const _0x321324=_0x3f524a['getBoundingClientRect'](),_0x504133=_0x53e6bf[_0x39dcf5(0x1ca)]<_0x321324['top']+_0x321324[_0x39dcf5(0x1af)]/0x2;_0x4d41cc=_0x117707['groupIndex']+(_0x504133?0x0:0x1);}}await this[_0x39dcf5(0x234)](_0x140952,_0x4d41cc);}else{if(!_0x3f5076&&_0x220545)await this[_0x39dcf5(0x1f9)](_0x140952);else _0x3f5076&&_0x220545&&_0x3f524a&&await this[_0x39dcf5(0x1ad)](_0x140952,_0x3f524a,_0x53e6bf[_0x39dcf5(0x1ca)]);}}catch(_0x161bbb){console[_0x39dcf5(0x1bf)](_0x39dcf5(0x216),_0x161bbb),Utils[_0x39dcf5(0x238)](_0x161bbb[_0x39dcf5(0x1aa)]||'Failed\x20to\x20move\x20variant',_0x39dcf5(0x1bf));}}async[_0x138a3c(0x234)](_0x13b254,_0x1faf3f){const _0x54a597=_0x138a3c,_0x26e90e=this['tasks']['find'](_0xfdb130=>_0xfdb130[_0x54a597(0x1a6)]===_0x13b254);if(!_0x26e90e)return;_0x1faf3f===undefined&&(_0x1faf3f=this[_0x54a597(0x224)][_0x54a597(0x1e3)](_0x2fe83c=>_0x2fe83c['groupId']===this[_0x54a597(0x240)])['length']),!this[_0x54a597(0x240)]&&(this[_0x54a597(0x240)]=API[_0x54a597(0x1d1)](),await API['createTaskGroup']({'groupId':this[_0x54a597(0x240)]})),await API[_0x54a597(0x20a)](_0x13b254,this['groupId'],_0x1faf3f),_0x26e90e[_0x54a597(0x240)]=this[_0x54a597(0x240)],_0x26e90e[_0x54a597(0x1db)]=_0x1faf3f,this[_0x54a597(0x1fa)](),this['onGroupChange'](this[_0x54a597(0x224)]);}async['removeFromGroup'](_0x25a2f3){const _0x5eb453=_0x138a3c,_0x5355e0=this[_0x5eb453(0x224)][_0x5eb453(0x20e)](_0x830c55=>_0x830c55['taskId']===_0x25a2f3);if(!_0x5355e0)return;await API['removeTaskFromGroup'](_0x25a2f3),_0x5355e0[_0x5eb453(0x240)]=null,_0x5355e0[_0x5eb453(0x1db)]=null,this['render'](),this[_0x5eb453(0x1fe)](this['tasks']);}async[_0x138a3c(0x1ad)](_0x3db4af,_0x33aa7c,_0x1d36fd){const _0x24eef7=_0x138a3c,_0x5acf27=this[_0x24eef7(0x224)][_0x24eef7(0x20e)](_0x1bcbbd=>_0x1bcbbd[_0x24eef7(0x1a6)]===_0x3db4af),_0x15c3f9=_0x33aa7c[_0x24eef7(0x229)]['taskId'],_0x194f6f=this[_0x24eef7(0x224)][_0x24eef7(0x20e)](_0x1e9d1f=>_0x1e9d1f[_0x24eef7(0x1a6)]===_0x15c3f9);if(!_0x5acf27||!_0x194f6f||_0x5acf27[_0x24eef7(0x1a6)]===_0x194f6f[_0x24eef7(0x1a6)])return;const _0x33342b=_0x33aa7c[_0x24eef7(0x1de)](),_0x217b45=_0x1d36fd<_0x33342b[_0x24eef7(0x21b)]+_0x33342b[_0x24eef7(0x1af)]/0x2;let _0x472cdc=_0x194f6f[_0x24eef7(0x1db)]??0x0;if(!_0x217b45)_0x472cdc++;if((_0x5acf27[_0x24eef7(0x1db)]??0x0)<(_0x194f6f[_0x24eef7(0x1db)]??0x0))_0x472cdc--;if(_0x472cdc===_0x5acf27[_0x24eef7(0x1db)])return;await API['updateTaskGroup'](_0x3db4af,this[_0x24eef7(0x240)],_0x472cdc);const _0x359623=this[_0x24eef7(0x224)][_0x24eef7(0x1e3)](_0x32a654=>_0x32a654['groupId']===this['groupId'])[_0x24eef7(0x1f2)]((_0x49b85e,_0x162109)=>(_0x49b85e[_0x24eef7(0x1db)]??0x0)-(_0x162109[_0x24eef7(0x1db)]??0x0)),_0x9f834b=_0x359623[_0x24eef7(0x1e9)](_0xe902dc=>_0xe902dc[_0x24eef7(0x1a6)]===_0x3db4af);_0x9f834b!==-0x1&&_0x359623[_0x24eef7(0x23b)](_0x9f834b,0x1),_0x359623[_0x24eef7(0x23b)](_0x472cdc,0x0,_0x5acf27),_0x359623[_0x24eef7(0x1ee)]((_0x137ddd,_0x229c87)=>{const _0x480f57=_0x24eef7;_0x137ddd[_0x480f57(0x1db)]=_0x229c87;}),this['render'](),this[_0x24eef7(0x1fe)](this[_0x24eef7(0x224)]);}}export function initializeTabDragDrop(_0x462b62,_0x438b3e,_0x391932,_0x41a6b0={}){const _0x365fe9=_0x138a3c;if(!_0x462b62)return;const {onReorder:_0x2c4a58,onRemove:_0x40b9c1}=_0x41a6b0,_0x3bb092=_0x462b62['querySelectorAll'](_0x365fe9(0x201));_0x3bb092[_0x365fe9(0x1ee)]((_0x28f296,_0x19ceaa)=>{const _0x2077df=_0x365fe9;_0x28f296[_0x2077df(0x222)](_0x2077df(0x1fc),_0x2077df(0x22d)),_0x28f296['dataset']['index']=_0x19ceaa,_0x28f296[_0x2077df(0x217)](_0x2077df(0x1b9),_0x23e2ae=>{const _0x48a910=_0x2077df;_0x23e2ae[_0x48a910(0x220)]['effectAllowed']=_0x48a910(0x1f3),_0x23e2ae[_0x48a910(0x220)][_0x48a910(0x1c9)](_0x48a910(0x215),_0x28f296[_0x48a910(0x229)][_0x48a910(0x1a6)]),_0x28f296['classList'][_0x48a910(0x1c6)](_0x48a910(0x1cf)),_0x462b62[_0x48a910(0x214)][_0x48a910(0x1c6)](_0x48a910(0x1df));}),_0x28f296[_0x2077df(0x217)](_0x2077df(0x206),()=>{const _0x2744fc=_0x2077df;_0x28f296['classList'][_0x2744fc(0x210)]('dragging'),_0x462b62['classList'][_0x2744fc(0x210)](_0x2744fc(0x1df)),_0x462b62[_0x2744fc(0x1dd)](_0x2744fc(0x221))[_0x2744fc(0x1ee)](_0x261cd6=>{const _0x72b043=_0x2744fc;_0x261cd6[_0x72b043(0x214)]['remove'](_0x72b043(0x21f),_0x72b043(0x231),'drop-after');});}),_0x28f296[_0x2077df(0x217)](_0x2077df(0x1f8),_0x4e10d5=>{const _0x4d9767=_0x2077df;_0x4e10d5[_0x4d9767(0x21d)](),_0x4e10d5[_0x4d9767(0x220)][_0x4d9767(0x1cb)]=_0x4d9767(0x1f3);if(_0x28f296[_0x4d9767(0x214)][_0x4d9767(0x1ec)]('dragging'))return;const _0x33401c=_0x28f296[_0x4d9767(0x1de)](),_0x419171=_0x33401c[_0x4d9767(0x241)]+_0x33401c[_0x4d9767(0x1f4)]/0x2,_0x49459a=_0x4e10d5[_0x4d9767(0x237)]<_0x419171;_0x3bb092['forEach'](_0x21992b=>_0x21992b[_0x4d9767(0x214)]['remove'](_0x4d9767(0x231),'drop-after')),_0x28f296[_0x4d9767(0x214)][_0x4d9767(0x1c6)](_0x49459a?'drop-before':'drop-after');}),_0x28f296[_0x2077df(0x217)](_0x2077df(0x20c),()=>{const _0x4b6178=_0x2077df;_0x28f296[_0x4b6178(0x214)]['remove'](_0x4b6178(0x231),_0x4b6178(0x22b));}),_0x28f296[_0x2077df(0x217)](_0x2077df(0x212),async _0x330315=>{const _0x405426=_0x2077df;_0x330315[_0x405426(0x21d)]();const _0x20f704=_0x330315[_0x405426(0x220)]['getData'](_0x405426(0x215)),_0x1bb2b8=_0x28f296[_0x405426(0x229)]['taskId'];if(_0x20f704===_0x1bb2b8)return;const _0x509cd7=_0x28f296['getBoundingClientRect'](),_0x54bcdd=_0x330315['clientX']<_0x509cd7[_0x405426(0x241)]+_0x509cd7['width']/0x2;_0x28f296[_0x405426(0x214)]['remove'](_0x405426(0x231),_0x405426(0x22b)),_0x2c4a58&&await _0x2c4a58(_0x20f704,_0x1bb2b8,_0x54bcdd);});});const _0x32c8c7=document[_0x365fe9(0x1c2)]('div');return _0x32c8c7[_0x365fe9(0x1c4)]=_0x365fe9(0x1ff),_0x32c8c7['innerHTML']=_0x365fe9(0x21a),_0x32c8c7[_0x365fe9(0x1b6)][_0x365fe9(0x1c0)]='none',_0x32c8c7[_0x365fe9(0x217)](_0x365fe9(0x1f8),_0x33a64b=>{const _0x59df70=_0x365fe9;_0x33a64b[_0x59df70(0x21d)](),_0x32c8c7[_0x59df70(0x214)][_0x59df70(0x1c6)](_0x59df70(0x1e7));}),_0x32c8c7[_0x365fe9(0x217)](_0x365fe9(0x20c),()=>{const _0xb763a3=_0x365fe9;_0x32c8c7[_0xb763a3(0x214)]['remove']('drag-over');}),_0x32c8c7[_0x365fe9(0x217)](_0x365fe9(0x212),async _0x21db3f=>{const _0x1efba2=_0x365fe9;_0x21db3f[_0x1efba2(0x21d)](),_0x32c8c7['classList'][_0x1efba2(0x210)](_0x1efba2(0x1e7));const _0x1f5ff4=_0x21db3f[_0x1efba2(0x220)]['getData'](_0x1efba2(0x215));_0x40b9c1&&await _0x40b9c1(_0x1f5ff4);}),_0x462b62[_0x365fe9(0x217)](_0x365fe9(0x1b9),()=>{const _0x2a6cec=_0x365fe9;_0x438b3e['length']>0x1&&(_0x32c8c7[_0x2a6cec(0x1b6)]['display']=_0x2a6cec(0x205));}),_0x462b62[_0x365fe9(0x217)](_0x365fe9(0x206),()=>{const _0x4d323c=_0x365fe9;_0x32c8c7[_0x4d323c(0x1b6)][_0x4d323c(0x1c0)]=_0x4d323c(0x20d);}),_0x462b62[_0x365fe9(0x203)](_0x32c8c7),{'destroy':()=>{const _0x5189f2=_0x365fe9;_0x32c8c7[_0x5189f2(0x210)]();}};}export default VariantGroupingManager;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@profoundlogic/coderflow-server",
3
- "version": "0.3.2",
3
+ "version": "0.4.1",
4
4
  "description": "AI Coder Server - Manages Docker containers for AI agent task execution",
5
5
  "main": "dist/start.js",
6
6
  "type": "module",