@profoundlogic/coderflow-server 0.4.8 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -1
- package/dist/README.md +9 -1
- package/dist/base-image/Dockerfile +5 -3
- package/dist/base-image/entrypoint.sh +76 -2
- package/dist/coder-server.js +1 -1
- package/dist/config.js +1 -1
- package/dist/lib/agent-keepalive.js +1 -1
- package/dist/lib/agent-models.js +1 -1
- package/dist/lib/api-keys.js +1 -1
- package/dist/lib/apiKeys.js +1 -1
- package/dist/lib/app-server-ports.js +1 -1
- package/dist/lib/auto-judge.js +1 -1
- package/dist/lib/automation-service.js +1 -1
- package/dist/lib/basic-auth.js +1 -1
- package/dist/lib/bindings.js +1 -1
- package/dist/lib/build-history.js +1 -1
- package/dist/lib/build-output-service.js +1 -1
- package/dist/lib/build-scheduler.js +1 -1
- package/dist/lib/build-service.js +1 -1
- package/dist/lib/ca-certificates.js +1 -1
- package/dist/lib/claude-oauth-refresh.js +1 -1
- package/dist/lib/cli/build.js +1 -1
- package/dist/lib/cli/config-command.js +1 -1
- package/dist/lib/cli/config.js +1 -1
- package/dist/lib/cli/create-user.js +1 -1
- package/dist/lib/cli/init.js +1 -1
- package/dist/lib/cli/jira.js +1 -1
- package/dist/lib/cli/license.js +1 -1
- package/dist/lib/cli/migrate-rbac.js +1 -0
- package/dist/lib/cli/server-manager.js +1 -1
- package/dist/lib/config-migration.js +1 -1
- package/dist/lib/container-credential-sync.js +1 -1
- package/dist/lib/container-tokens.js +1 -1
- package/dist/lib/data-dir.js +1 -1
- package/dist/lib/deployment-history.js +1 -1
- package/dist/lib/deployment-service.js +1 -1
- package/dist/lib/docker-utils.js +1 -1
- package/dist/lib/email.js +1 -1
- package/dist/lib/emailTemplates.js +1 -1
- package/dist/lib/entitlement.js +1 -1
- package/dist/lib/external-connections.js +1 -0
- package/dist/lib/fetch-utils.js +1 -1
- package/dist/lib/git-commit-details-route.js +1 -1
- package/dist/lib/git-history-diff-guardrails.js +1 -1
- package/dist/lib/git-provider-service.js +1 -1
- package/dist/lib/git-provider-setup/github-setup-handler.js +1 -1
- package/dist/lib/git-provider-setup/index.js +1 -1
- package/dist/lib/git-provider-setup/setup-factory.js +1 -1
- package/dist/lib/git-provider-setup/setup-interface.js +1 -1
- package/dist/lib/git-providers/azure-devops-provider.js +1 -1
- package/dist/lib/git-providers/github-app-provider.js +1 -1
- package/dist/lib/git-providers/index.js +1 -1
- package/dist/lib/git-providers/provider-factory.js +1 -1
- package/dist/lib/git-providers/provider-interface.js +1 -1
- package/dist/lib/github-urls.js +1 -1
- package/dist/lib/group-objective-linking.js +1 -1
- package/dist/lib/jira-client.js +1 -1
- package/dist/lib/judge-blinding.js +1 -1
- package/dist/lib/logger.js +1 -1
- package/dist/lib/migration-to-scoped-rbac.js +1 -1
- package/dist/lib/model-fetcher.js +1 -1
- package/dist/lib/notifications.js +1 -1
- package/dist/lib/objective-context.js +1 -1
- package/dist/lib/oidc-auth.js +1 -1
- package/dist/lib/oidc-device-flow.js +1 -1
- package/dist/lib/passwordTokens.js +1 -1
- package/dist/lib/permission-resolver.js +1 -1
- package/dist/lib/pin-cascade.js +1 -1
- package/dist/lib/provider-accounts.js +1 -1
- package/dist/lib/provider-oauth.js +1 -1
- package/dist/lib/provider-profile.js +1 -1
- package/dist/lib/provider-token-refresh.js +1 -1
- package/dist/lib/rbac-user-state.js +1 -0
- package/dist/lib/request-url.js +1 -1
- package/dist/lib/rewind.js +1 -1
- package/dist/lib/role-definitions.js +1 -1
- package/dist/lib/roles.js +1 -1
- package/dist/lib/scoped-rbac-migration-runner.js +1 -0
- package/dist/lib/secrets.js +1 -1
- package/dist/lib/setup-repo-git-auth.js +1 -1
- package/dist/lib/state-capture.js +1 -1
- package/dist/lib/static-files.js +1 -1
- package/dist/lib/task-name-format.js +1 -1
- package/dist/lib/task-name-generator.js +1 -1
- package/dist/lib/task-source-metadata.js +1 -1
- package/dist/lib/teams.js +1 -1
- package/dist/lib/user-git-oauth.js +1 -1
- package/dist/lib/user-git-tokens.js +1 -1
- package/dist/lib/users.js +1 -1
- package/dist/middleware/requireAuth.js +1 -1
- package/dist/middleware/requireInit.js +1 -1
- package/dist/middleware/requirePermission.js +1 -1
- package/dist/package.json +2 -1
- package/dist/playwright.config.js +1 -1
- package/dist/routes/apiKeys.js +1 -1
- package/dist/routes/auth-oidc.js +1 -1
- package/dist/routes/auth.js +1 -1
- package/dist/routes/automations.js +1 -1
- package/dist/routes/bindings.js +1 -1
- package/dist/routes/build.js +1 -1
- package/dist/routes/containers.js +1 -1
- package/dist/routes/deploy-task.js +1 -1
- package/dist/routes/environment-management.js +1 -1
- package/dist/routes/environments.js +1 -1
- package/dist/routes/external-skills.js +1 -1
- package/dist/routes/git-credentials.js +1 -1
- package/dist/routes/git-oauth.js +1 -1
- package/dist/routes/git-provider-setup.js +1 -1
- package/dist/routes/health.js +1 -1
- package/dist/routes/jira.js +1 -1
- package/dist/routes/objective-management.js +1 -1
- package/dist/routes/password.js +1 -1
- package/dist/routes/prompt.js +1 -1
- package/dist/routes/provider-auth.js +1 -1
- package/dist/routes/qa.js +1 -1
- package/dist/routes/roles.js +1 -1
- package/dist/routes/settings.js +1 -1
- package/dist/routes/skill-management.js +1 -1
- package/dist/routes/skills.js +1 -1
- package/dist/routes/tasks.js +1 -1
- package/dist/routes/teams.js +1 -1
- package/dist/routes/templates.js +1 -1
- package/dist/routes/test-task.js +1 -1
- package/dist/routes/test.js +1 -1
- package/dist/routes/users.js +1 -1
- package/dist/routes/visualizations.js +1 -1
- package/dist/scripts/create-user.js +1 -1
- package/dist/scripts/migrate-config-to-data-dir.js +1 -1
- package/dist/scripts/migrate-to-scoped-rbac.js +1 -1
- package/dist/start.js +1 -1
- package/dist/web-ui/public/activity-detail-modal.js +1 -1
- package/dist/web-ui/public/activity-feed.js +1 -1
- package/dist/web-ui/public/activity-formatters.js +1 -1
- package/dist/web-ui/public/agent-event-parser.js +1 -1
- package/dist/web-ui/public/app.js +1 -1
- package/dist/web-ui/public/approve-dialog.js +1 -1
- package/dist/web-ui/public/automation-links.js +1 -1
- package/dist/web-ui/public/automation-schedule.js +1 -1
- package/dist/web-ui/public/comments-widget.js +1 -1
- package/dist/web-ui/public/diff-utils.js +1 -1
- package/dist/web-ui/public/docs/admin/environments.md +75 -0
- package/dist/web-ui/public/docs/admin/installation.md +9 -1
- package/dist/web-ui/public/environments.css +356 -0
- package/dist/web-ui/public/environments.html +316 -0
- package/dist/web-ui/public/environments.js +1 -1
- package/dist/web-ui/public/feedback-widget.js +1 -1
- package/dist/web-ui/public/git-history-lazy-utils.js +1 -1
- package/dist/web-ui/public/git-history.js +1 -1
- package/dist/web-ui/public/git-status.js +1 -1
- package/dist/web-ui/public/index.js +1 -1
- package/dist/web-ui/public/login.js +1 -1
- package/dist/web-ui/public/markdown-editor.js +1 -1
- package/dist/web-ui/public/markdown-file-editor.js +1 -1
- package/dist/web-ui/public/modal-maximize.js +1 -1
- package/dist/web-ui/public/notifications.js +1 -1
- package/dist/web-ui/public/pr-dialog.js +1 -1
- package/dist/web-ui/public/roles.js +1 -1
- package/dist/web-ui/public/server-health.js +1 -1
- package/dist/web-ui/public/settings.html +1 -2
- package/dist/web-ui/public/settings.js +1 -1
- package/dist/web-ui/public/setup-password.js +1 -1
- package/dist/web-ui/public/skills.js +1 -1
- package/dist/web-ui/public/sse-client.js +1 -1
- package/dist/web-ui/public/sse-shared-worker.js +1 -1
- package/dist/web-ui/public/styles.css +78 -7
- package/dist/web-ui/public/task.html +24 -0
- package/dist/web-ui/public/task.js +1 -1
- package/dist/web-ui/public/teams.js +1 -1
- package/dist/web-ui/public/terminal.js +1 -1
- package/dist/web-ui/public/theme.js +1 -1
- package/dist/web-ui/public/users.js +1 -1
- package/dist/web-ui/public/variant-grouping.js +1 -1
- package/package.json +2 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x4c5fc8=_0x55a4;(function(_0x47278c,_0x54bcc4){const _0x479fe8=_0x55a4,_0x3df808=_0x47278c();while(!![]){try{const _0x23b4d8=parseInt(_0x479fe8(0x22b))/0x1+parseInt(_0x479fe8(0x1fc))/0x2+parseInt(_0x479fe8(0x28d))/0x3+parseInt(_0x479fe8(0x21d))/0x4+parseInt(_0x479fe8(0x278))/0x5*(parseInt(_0x479fe8(0x237))/0x6)+-parseInt(_0x479fe8(0x1ec))/0x7*(parseInt(_0x479fe8(0x294))/0x8)+-parseInt(_0x479fe8(0x23a))/0x9;if(_0x23b4d8===_0x54bcc4)break;else _0x3df808['push'](_0x3df808['shift']());}catch(_0x48b571){_0x3df808['push'](_0x3df808['shift']());}}}(_0xf99e,0xaba0c));import{API,Utils,initializeAdminMenu}from'./app.js';import{initTheme,mountThemeToggle}from'./theme.js';function _0xf99e(){const _0x52a8d5=['ywrKlw1LBwjLCI1ZzwXLy3q','C3r5Bgu','DMfSDwu','yMLUzgLUzY1YB2XL','zgf0yxnLDa','zgvSzxrPBMDuzwfTswq','y2fUy2vSlwrLBgv0zs10zwfT','zMXLEa','ywrKrxzLBNrmAxn0zw5LCG','vgvHBsb1CgrHDgvK','BwfW','z2v0rw52AxjVBM1LBNrZ','qMLUzgLUzYbYzw1VDMvK','y2XVC2uTDgvHBs1TB2rHBa','cIaGica8Dhi+cIaGicaGidX0zd4','DMfYkc0Ty29SB3iTDgv4Dc1ZzwnVBMrHCNKP','ywrKlwjPBMrPBMCTyNrU','pgj1DhrVBIbJBgfZCZ0IyNrUlwDOB3n0igj0BI1ZBwfSBciGB25JBgLJAZ0ID2LUzg93lMrLBgv0zujPBMrPBMDdBgLJAYGN','C2HVD1rVyxn0','zxjYB3i','BwvTyMvYCY1Zzwn0Aw9U','C3vJy2vZCW','zgLZywjSzwq','DgvHBs1TB2rHBc1MB290zxi','DgvHBs1TB2rHBc10ywjZ','i2rLBgv0zs10zwfTlw1VzgfSic5TB2rHBc1VDMvYBgf5','ywrKlw1HBMfNzxiTC2vSzwn0','zgvSzxrLlxrLyw0TBw9KywW','pgrPDIbZDhLSzt0IzM9UDc1ZAxPLoIaWlJHLBtSGy29SB3i6ihzHCIGTlwnVBg9YlxrLEhqTC2vJB25Kyxj5ktSGBwfYz2LUlxrVCdOGmc4XnxjLBtSIpG','zwrPDgLUz1rLyw1jza','DgvHBs1JB3vUDa','jYKIpGOGicaGicaGicaGica','ywn0AxzLvgfI','cIaGicaGidX0CJ4kicaGicaGica8Dgq+cIaGicaGicaGica8yNv0Dg9UignSyxnZpsjIDg4Tz2HVC3qGyNrUlxnTywXSiIbZDhLSzt0IzM9UDc13zwLNAhq6idyWmdSGCgfKzgLUzZOGmdSGDgv4Dc1KzwnVCMf0Aw9UoIb1BMrLCMXPBMu7ihrLEhqTzgvJB3jHDgLVBI1ZDhLSztOGzg90DgvKoYikicaGicaGicaGicaGB25JBgLJAZ0ID2LUzg93lM9Wzw5uzwfTtw9KywWOjW','q3jLyxrPBMFIGky','z2v0vxnLCNm','yMLUzgLUz3mTDgfIBguTyM9KEq','AgfZ','yMLUzgLUzY1LBNzPCM9UBwvUDa','ktWVC3bHBJ4','rMfPBgvKihrVigXVywqGyMLUzgLUz3m6ia','lM1VzgfSlxrHyI1IDg4','DgvHBxm','Bg9JyxrPB24','zMLUza','DgvHBs1MB3jTlwvYCM9Y','twfUywDLCIbYzw1VDMvK','jYKIpKrLBgv0ztWVyNv0Dg9UpG','CMvTB3zLtwfUywDLCKnSAwnR','pc90zd4kicaGicaGica8Dgq+cIaGicaGicaGica8zgL2ignSyxnZpsj1C2vYlwfJDgLVBNmIpGOGicaGicaGicaGica','DgvHBs10ywiTzgv0ywLSCW','pg9WDgLVBIb2ywX1zt0IiJ5bBgWGzw52AxjVBM1LBNrZigfSCMvHzhKGyM91BMq8l29WDgLVBJ4','mtb2DhHpq0O','DgvHBs1TB2rHBa','CMvTB3zLvgvHBu1LBwjLCG','CM9Szv9Uyw1L','zgvSzxrLqMLUzgLUz0nSAwnR','yMLUzgLUz3m','pc90zd4kicaGicaGphrKpGOGicaGicaGia','DMfYkc0Ty29SB3iTChjPBwfYEsK','CM9Szv9Pza','yMLUzgLUz3mTzw1WDhK','BMfTzq','CMvTB3zLvgvHBu1HBMfNzxi','q2XPy2SGphn0CM9UzZ5dCMvHDguGvgvHBtWVC3rYB25NpIb0BYbNzxqGC3rHCNrLzc4','C2f2zs1IAw5KAw5Nlwj0BG','pgj1DhrVBIb0ExbLpsjIDxr0B24IignSyxnZpsjIDg4Tz2HVC3qGyNrUlxnTywXSiIbVBMnSAwnRpsj3Aw5KB3CUCMvTB3zLtwvTyMvYq2XPy2SOjW','yM9YzgvYqM90Dg9Tq29SB3i','jYKIihn0EwXLpsjJB2XVCJOGDMfYkc0Ty29SB3iTzgfUz2vYktSGCgfKzgLUzZOGmc4XnxjLBsaWlJrYzw07igzVBNqTC2L6ztOGmc44CMvToYi+uMvTB3zLpc9IDxr0B24+cIaGicaGidWVzgL2pG','z2v0q3vYCMvUDfvZzxi','y3jLyxrLlxrLyw0TyNrU','Aw5Uzxjive1m','vgvHBsbUyw1LigLZihjLCxvPCMvK','ota5mtK1tvjKD2Xo','C2f2zs10zwfT','ywrKvgvHBu1LBwjLCG','cIaGicaGidWVzgL2pG','pc9VChrPB24+','DgvHBxmTzxjYB3iTBwvZC2fNzq','zgvZy3jPChrPB24','mZuXmLnWqKPNBq','BwvTyMvYCY1SAxn0','pgj1DhrVBIbJBgfZCZ0IyNrUlxnLy29UzgfYEsbIDg4TC21HBgWIig9Uy2XPy2S9iNDPBMrVDY5VCgvUvgvHBu1VzgfSkcC','y2fUy2vSlwjPBMrPBMCTyNrU','ywrKlwjPBMrPBMCTzM9YBq','mtm2nJrJBKLIA0O','BM9YBwfS','z2v0uM9SzurLzMLUAxrPB25Z','cIaGicaGicaGpc90zd4kicaGicaGpc90CJ4','qMLUzgLUzYbHzgrLza','DhjHBNnWyxjLBNq','Dgv4DenVBNrLBNq','DhjPBq','pg9WDgLVBIb2ywX1zt0I','AgLKzgvU','zM9YrwfJAa','jYKIihn0EwXLpsjJB2XVCJOGDMfYkc0Ty29SB3iTzgfUz2vYktSGCgfKzgLUzZOGmc4XnxjLBsaWlJrYzw07igzVBNqTC2L6ztOGmc44CMvToYi+uMvTB3zLpc9IDxr0B24+','CxvLCNLtzwXLy3rVCKfSBa','cIaGicaGicaGica8l2rPDJ4kicaGicaGica8l3rKpGOGicaGica8l3rYpG','pg9WDgLVBIb2ywX1zt0IiJ5qCM9TB3rLigeGBwvTyMvYihrVig1HBMfNzxlIGky8l29WDgLVBJ4','DxnLCM5HBwu','mtGWmdy1nfvorgLTtq','re9nq29UDgvUDeXVywrLza','zM9UDfDLAwDODa','phaGC3r5Bgu9iMzVBNqTC2L6ztOGmc44nZvYzw07ignVBg9YoIb2yxiOls1JB2XVCI10zxH0lxnLy29UzgfYEsK7ig1HCMDPBJOGmc4YnxjLBsaWoYi+tM8GBwfUywDLCNm8l3a+','CM9Szxm','CxvLCNLtzwXLy3rVCG','DgvHBxmTDgfIBguTyM9KEq','y3vYCMvUDfvZzxi','zw52AxjVBM1LBNq','DgvHBxmTzxjYB3i','vgvHBsbKzwXLDgvK','zxnJyxbLshrTBa','DgvHBs1TB2rHBc10AxrSzq','DgvHBq','BwfUywDLCL9Uyw1LCW','y2XPy2S','phnWyw4Gy2XHC3m9iNrHzYiGC3r5Bgu9iM1HCMDPBI1Szwz0oIaWlJrYzw07igzVBNqTC2L6ztOGmc43zw07ihbHzgrPBMC6idaUmwvTidaUngvToYi+BwfUywDLCJWVC3bHBJ4','jYKIihn0EwXLpsjJB2XVCJOGDMfYkc0Ty29SB3iTzgfUz2vYktSIpLjLBw92ztWVyNv0Dg9UpG','zgLZCgXHEq','zMLSDgvY','z2v0vgvHBxm','ihrLyw0','rgvSzxrPBMFIGky','BwvZC2fNzq','y29SB3i','z2v0qMLUzgLUz3m','yMLUzgLUz3mTBg9HzgLUzW','pc9ZCgfUpGOGicaGicaGidXIDxr0B24GDhLWzt0IyNv0Dg9UiIbJBgfZCZ0IyNrUlwDOB3n0igj0BI1ZBwfSBciGB25JBgLJAZ0ID2LUzg93lNjLBw92zu1HBMfNzxjdBgLJAYGN','y29UzMLYBs1KzwXLDguTDgvHBq','BwfUywDLCNm','DgvHBs1Uyw1L','idXZCgfUihn0EwXLpsjJB2XVCJOGDMfYkc0Ty29SB3iTDgv4Dc1ZzwnVBMrHCNKPoYbMB250lxnPEMu6idaUodvLBtSIpIG','pg9WDgLVBIb2ywX1zt0IiJ5bzgqGysbTzw1IzxlIGky8l29WDgLVBJ4','mZiWntK0oe1ys1DHuG','y3jLyxrLqMLUzgLUzW','Axntzxj2zxjbzg1PBG','Aw5JBhvKzxm','DgfI','ywrKvgvHBu1HBMfNzxi','DgvHBxmTBg9HzgLUzW','Bg9NAw4UAhrTBa','BwvTyMvYCW','zw52AxjVBM1LBNrZ','q3jLyxrLifrLyw0','AM9PBG','rMfPBgvKihrVigrLBgv0zsb0zwfToIa','qwrKAw5N4OcM','odG5otq0A2TJD3jJ','zgvSzxrLlxrLyw0TBMfTzq','CMv0CNKTDgvHBxmTyNrU','zgv0ywLSCW','nJaW','pc90zd4kicaGicaGica8Dgq+','cIaGicaGidXKAxyGC3r5Bgu9iMrPC3bSyxK6igzSzxG7igfSAwDUlwL0zw1ZoIbJzw50zxi7igP1C3rPzNKTy29UDgvUDdOGC3bHy2uTyMv0D2vLBJSGCgfKzgLUzZOGmc4ZnxjLBsaWoYbIB3jKzxiTyM90Dg9ToIaXChGGC29SAwqGDMfYkc0Ty29SB3iTyM9YzgvYktSIpGOGicaGicaGidXZCgfUihn0EwXLpsjMB250lxnPEMu6idaUodC1CMvToYi+','y2XVC2uTzgvSzxrLlxrLyw0TBw9KywW','pgj1DhrVBIbJBgfZCZ0IyNrUlwDOB3n0igj0BI1ZBwfSBciGB25JBgLJAZ0ID2LUzg93lMrLBgv0zvrLyw0OjW','yMLUzgLUz3mTBgLZDc1JB250ywLUzxi','ywrKlw1HBMfNzxiTyNrU','DgvHBujPBMrPBMDZ','nJuXmdzwEvvmtuW','ywrKlw1LBwjLCI1IDg4','BgvUz3rO','mtiYmdK0odfIrKj3vfG','twvTyMvYigfKzgvK','BwfUywDLCNmTBgLZDa','cIaGicaGicaGica8l2j1DhrVBJ4kicaGicaGicaGia','pc9KAxy+','BM9Uzq','B3bLBLrLyw1nB2rHBa','DxnLCNm','z2v0rwXLBwvUDej5swq','DgvHBs1KzxnJCMLWDgLVBG'];_0xf99e=function(){return _0x52a8d5;};return _0xf99e();}const state={'teams':[],'users':[],'roles':[],'environments':[],'teamBindings':[],'currentUser':null,'editingTeamId':null,'deletingTeamId':null,'activeTab':'details'};document[_0x4c5fc8(0x24c)](_0x4c5fc8(0x1fd),async()=>{const _0x78282=_0x4c5fc8;initTheme(),mountThemeToggle();try{state[_0x78282(0x203)]=await API[_0x78282(0x289)]();}catch{window[_0x78282(0x26f)]['href']=_0x78282(0x224);return;}await initializeAdminMenu(state[_0x78282(0x203)]),state['currentUser'][_0x78282(0x21f)]&&(document[_0x78282(0x242)](_0x78282(0x28a))[_0x78282(0x1f5)]=![]),bindEventListeners(),await Promise['all']([loadTeams(),loadUsers(),loadRoles(),loadEnvironments()]),renderTeams();});async function loadTeams(){const _0x3fe403=_0x4c5fc8,_0x39e25f=document[_0x3fe403(0x242)](_0x3fe403(0x223)),_0x42324d=document[_0x3fe403(0x242)](_0x3fe403(0x205)),_0x798c0a=document[_0x3fe403(0x242)]('teams-content');try{_0x39e25f[_0x3fe403(0x1f5)]=![],_0x42324d[_0x3fe403(0x1f5)]=!![],_0x798c0a[_0x3fe403(0x1f5)]=!![];const {teams:_0x168b5a}=await API[_0x3fe403(0x210)]();state[_0x3fe403(0x26e)]=_0x168b5a||[],renderTeams(),_0x39e25f['hidden']=!![],_0x798c0a[_0x3fe403(0x1f5)]=![];}catch(_0x277571){_0x39e25f[_0x3fe403(0x1f5)]=!![],_0x42324d[_0x3fe403(0x1f5)]=![],document[_0x3fe403(0x242)](_0x3fe403(0x292))[_0x3fe403(0x1f2)]=_0x277571[_0x3fe403(0x213)];}}async function loadUsers(){const _0x56df96=_0x4c5fc8;try{const {users:_0x55a517}=await API[_0x56df96(0x267)]();state[_0x56df96(0x241)]=_0x55a517||[];}catch{state[_0x56df96(0x241)]=[];}}async function loadRoles(){const _0x9d5488=_0x4c5fc8;try{const {roles:_0x13ce7f}=await API[_0x9d5488(0x1ee)]();state[_0x9d5488(0x200)]=_0x13ce7f||[];}catch{state[_0x9d5488(0x200)]=[];}}async function loadEnvironments(){const _0x5cbc5a=_0x4c5fc8;try{const _0x21fee3=await API[_0x5cbc5a(0x24f)]();state[_0x5cbc5a(0x226)]=_0x21fee3[_0x5cbc5a(0x226)]||[];}catch{state[_0x5cbc5a(0x226)]=[];}}function renderTeams(){const _0x255a25=_0x4c5fc8,_0x3f1923=document[_0x255a25(0x242)](_0x255a25(0x202)),_0x36e0e8=document[_0x255a25(0x242)](_0x255a25(0x262));if(!_0x3f1923)return;_0x36e0e8&&(_0x36e0e8['textContent']=state['teams'][_0x255a25(0x239)]+_0x255a25(0x211)+(state[_0x255a25(0x26e)][_0x255a25(0x239)]===0x1?'':'s'));if(state[_0x255a25(0x26e)]['length']===0x0){_0x3f1923[_0x255a25(0x28b)]='\x0a\x20\x20\x20\x20\x20\x20<tr>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<td\x20colspan=\x224\x22\x20style=\x22text-align:\x20center;\x20color:\x20var(--color-text-secondary);\x20padding:\x202rem;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20No\x20teams\x20yet.\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(state['currentUser']?.['isServerAdmin']?_0x255a25(0x284):'')+_0x255a25(0x1ef);return;}const _0x455820=state[_0x255a25(0x203)]?.[_0x255a25(0x21f)];_0x3f1923[_0x255a25(0x28b)]=state[_0x255a25(0x26e)][_0x255a25(0x24e)](_0x3fb536=>{const _0x5e7de0=_0x255a25,_0x161da9=(_0x3fb536[_0x5e7de0(0x219)]||[])[_0x5e7de0(0x220)](state[_0x5e7de0(0x203)]?.['id']),_0x33035a=_0x455820||_0x161da9,_0x13a5ef=(_0x3fb536['managers']||[])['map'](_0x4b241a=>{const _0x3bf980=_0x5e7de0;if(_0x3fb536[_0x3bf980(0x20a)]&&_0x3fb536['manager_names'][_0x4b241a])return _0x3fb536[_0x3bf980(0x20a)][_0x4b241a];const _0x54ae42=state[_0x3bf980(0x241)][_0x3bf980(0x270)](_0x1b3c55=>_0x1b3c55['id']===_0x4b241a);return _0x54ae42?_0x54ae42['name']||_0x54ae42[_0x3bf980(0x1fb)]:_0x4b241a;})['join'](',\x20')||'—',_0x79cce9=(_0x3fb536[_0x5e7de0(0x225)]||[])[_0x5e7de0(0x239)];return _0x5e7de0(0x265)+_0x3fb536['id']+_0x5e7de0(0x263)+Utils[_0x5e7de0(0x207)](_0x3fb536[_0x5e7de0(0x282)])+_0x5e7de0(0x23d)+(_0x3fb536[_0x5e7de0(0x293)]?_0x5e7de0(0x260)+Utils[_0x5e7de0(0x207)](_0x3fb536[_0x5e7de0(0x293)])+_0x5e7de0(0x23e):'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</td>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<td>'+_0x79cce9+_0x5e7de0(0x230)+Utils[_0x5e7de0(0x207)](_0x13a5ef)+_0x5e7de0(0x275)+(_0x33035a?_0x5e7de0(0x296)+_0x3fb536['id']+'\x27)\x22>Edit</button>':'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x455820?_0x5e7de0(0x233)+_0x3fb536['id']+_0x5e7de0(0x273):'')+_0x5e7de0(0x1f9);})[_0x255a25(0x228)]('');}function bindEventListeners(){const _0x48fb13=_0x4c5fc8;document[_0x48fb13(0x242)](_0x48fb13(0x28a))?.[_0x48fb13(0x24c)](_0x48fb13(0x20b),showCreateTeamModal),document[_0x48fb13(0x242)](_0x48fb13(0x22d))?.[_0x48fb13(0x24c)]('click',loadTeams),document[_0x48fb13(0x242)](_0x48fb13(0x251))?.[_0x48fb13(0x24c)](_0x48fb13(0x20b),hideTeamModal),document['getElementById']('cancel-team')?.[_0x48fb13(0x24c)](_0x48fb13(0x20b),hideTeamModal),document[_0x48fb13(0x242)](_0x48fb13(0x28e))?.[_0x48fb13(0x24c)]('click',saveTeam),document[_0x48fb13(0x201)]('#team-modal\x20.modal-overlay')?.[_0x48fb13(0x24c)](_0x48fb13(0x20b),hideTeamModal),document['querySelectorAll'](_0x48fb13(0x26d))['forEach'](_0x5e1f0e=>{const _0x245c3b=_0x48fb13;_0x5e1f0e[_0x245c3b(0x24c)](_0x245c3b(0x20b),()=>switchTab(_0x5e1f0e[_0x245c3b(0x248)][_0x245c3b(0x221)]));}),document[_0x48fb13(0x242)](_0x48fb13(0x238))?.['addEventListener'](_0x48fb13(0x20b),addMember),document[_0x48fb13(0x242)](_0x48fb13(0x235))?.[_0x48fb13(0x24c)](_0x48fb13(0x20b),addManager),document[_0x48fb13(0x242)]('add-binding-btn')?.['addEventListener'](_0x48fb13(0x20b),()=>{const _0x4f7a54=_0x48fb13;document[_0x4f7a54(0x242)](_0x4f7a54(0x298))[_0x4f7a54(0x1f5)]=![],document['getElementById'](_0x4f7a54(0x254))[_0x4f7a54(0x1f5)]=!![],populateBindingForm();}),document[_0x48fb13(0x242)](_0x48fb13(0x297))?.[_0x48fb13(0x24c)](_0x48fb13(0x20b),()=>{const _0xf807c=_0x48fb13;document['getElementById']('add-binding-form')[_0xf807c(0x1f5)]=!![],document[_0xf807c(0x242)](_0xf807c(0x254))[_0xf807c(0x1f5)]=![];}),document[_0x48fb13(0x242)](_0x48fb13(0x285))?.['addEventListener'](_0x48fb13(0x20b),saveBinding),document[_0x48fb13(0x242)](_0x48fb13(0x232))?.[_0x48fb13(0x24c)]('click',hideDeleteModal),document['getElementById'](_0x48fb13(0x24a))?.[_0x48fb13(0x24c)]('click',hideDeleteModal),document[_0x48fb13(0x242)](_0x48fb13(0x218))?.[_0x48fb13(0x24c)](_0x48fb13(0x20b),confirmDeleteTeam),document[_0x48fb13(0x201)](_0x48fb13(0x25d))?.[_0x48fb13(0x24c)]('click',hideDeleteModal);}function showCreateTeamModal(){const _0x223f62=_0x4c5fc8;state['editingTeamId']=null,state[_0x223f62(0x264)]=_0x223f62(0x22e),document[_0x223f62(0x242)]('team-modal-title')[_0x223f62(0x1f2)]=_0x223f62(0x227),document[_0x223f62(0x242)](_0x223f62(0x21a))['value']='',document[_0x223f62(0x242)]('team-name')['disabled']=![],document[_0x223f62(0x242)](_0x223f62(0x243))[_0x223f62(0x246)]='',document[_0x223f62(0x242)]('team-description')['disabled']=![],document[_0x223f62(0x242)](_0x223f62(0x271))[_0x223f62(0x1f5)]=!![],document[_0x223f62(0x242)](_0x223f62(0x25c))[_0x223f62(0x1f5)]=!![],document[_0x223f62(0x242)](_0x223f62(0x258))['hidden']=!![],document[_0x223f62(0x242)](_0x223f62(0x28e))[_0x223f62(0x1f5)]=![],document[_0x223f62(0x242)]('team-modal-footer')[_0x223f62(0x1f5)]=![],showTab(_0x223f62(0x22e)),document['getElementById']('team-modal')[_0x223f62(0x1f5)]=![],setTimeout(()=>document['getElementById']('team-name')['focus'](),0x64);}window[_0x4c5fc8(0x240)]=function(_0x3cf4d6){const _0x219c40=_0x4c5fc8,_0x5f100f=state[_0x219c40(0x26e)]['find'](_0x351ca1=>_0x351ca1['id']===_0x3cf4d6);if(!_0x5f100f)return;state[_0x219c40(0x261)]=_0x3cf4d6,state[_0x219c40(0x264)]=_0x219c40(0x22e);const _0x13afcc=state['currentUser']?.['isServerAdmin'],_0x51c7d0=(_0x5f100f[_0x219c40(0x219)]||[])['includes'](state[_0x219c40(0x203)]?.['id']),_0xd2115=_0x13afcc||_0x51c7d0;document['getElementById'](_0x219c40(0x208))['textContent']=_0x5f100f[_0x219c40(0x282)],document[_0x219c40(0x242)](_0x219c40(0x21a))[_0x219c40(0x246)]=_0x5f100f[_0x219c40(0x282)],document['getElementById'](_0x219c40(0x21a))[_0x219c40(0x25a)]=!_0xd2115,document['getElementById'](_0x219c40(0x243))['value']=_0x5f100f['description']||'',document[_0x219c40(0x242)](_0x219c40(0x243))[_0x219c40(0x25a)]=!_0xd2115,document[_0x219c40(0x242)](_0x219c40(0x271))[_0x219c40(0x1f5)]=!![],document[_0x219c40(0x242)](_0x219c40(0x25c))['hidden']=![],document[_0x219c40(0x242)](_0x219c40(0x258))[_0x219c40(0x1f5)]=![],document['getElementById']('save-team')[_0x219c40(0x1f5)]=!_0xd2115,document[_0x219c40(0x242)]('managers-section')['hidden']=!_0x13afcc,setActiveTabButton(_0x219c40(0x22e)),renderMembersList(_0x5f100f),updateMemberSelect(_0x5f100f),_0x13afcc&&(renderManagersList(_0x5f100f),updateManagerSelect(_0x5f100f)),showTab(_0x219c40(0x22e)),document[_0x219c40(0x242)]('team-modal')[_0x219c40(0x1f5)]=![];};function hideTeamModal(){const _0x493ad8=_0x4c5fc8;document[_0x493ad8(0x242)](_0x493ad8(0x279))[_0x493ad8(0x1f5)]=!![],document[_0x493ad8(0x242)](_0x493ad8(0x21a))['disabled']=![],document[_0x493ad8(0x242)](_0x493ad8(0x243))[_0x493ad8(0x25a)]=![],state[_0x493ad8(0x261)]=null;}function switchTab(_0x501cab){const _0x6a622c=_0x4c5fc8;state['activeTab']=_0x501cab,setActiveTabButton(_0x501cab),showTab(_0x501cab),_0x501cab==='bindings'&&state[_0x6a622c(0x261)]&&loadTeamBindings(state[_0x6a622c(0x261)]);}function setActiveTabButton(_0x372588){const _0x3fe7bc=_0x4c5fc8;document[_0x3fe7bc(0x1f8)](_0x3fe7bc(0x26d))[_0x3fe7bc(0x1f6)](_0x2d7e31=>{const _0x17e2b1=_0x3fe7bc,_0x14a399=_0x2d7e31['dataset'][_0x17e2b1(0x221)]===_0x372588;_0x2d7e31[_0x17e2b1(0x245)][_0x17e2b1(0x287)]=_0x14a399?_0x17e2b1(0x27f):_0x17e2b1(0x1f1),_0x2d7e31[_0x17e2b1(0x245)][_0x17e2b1(0x214)]=_0x14a399?_0x17e2b1(0x27f):_0x17e2b1(0x253),_0x2d7e31[_0x17e2b1(0x245)][_0x17e2b1(0x1fe)]=_0x14a399?_0x17e2b1(0x22f):_0x17e2b1(0x1ed);});}function showTab(_0x2c8886){const _0x6ae81c=_0x4c5fc8;document[_0x6ae81c(0x242)](_0x6ae81c(0x276))[_0x6ae81c(0x1f5)]=_0x2c8886!==_0x6ae81c(0x22e),document[_0x6ae81c(0x242)]('team-tab-bindings')[_0x6ae81c(0x1f5)]=_0x2c8886!==_0x6ae81c(0x27d),document[_0x6ae81c(0x242)](_0x6ae81c(0x25b))['hidden']=_0x2c8886===_0x6ae81c(0x27d);}function renderMembersList(_0x175cf8){const _0x15ea8e=_0x4c5fc8,_0x318399=state[_0x15ea8e(0x203)]?.[_0x15ea8e(0x21f)],_0x5d0027=(_0x175cf8['managers']||[])[_0x15ea8e(0x220)](state[_0x15ea8e(0x203)]?.['id']),_0x404ab5=_0x318399||_0x5d0027,_0x3118b2=_0x175cf8[_0x15ea8e(0x225)]||[],_0x4aee14=document[_0x15ea8e(0x242)](_0x15ea8e(0x295));if(_0x3118b2[_0x15ea8e(0x239)]===0x0){_0x4aee14[_0x15ea8e(0x28b)]='<p\x20style=\x22font-size:\x200.875rem;\x20color:\x20var(--color-text-secondary);\x20margin:\x200.25rem\x200;\x22>No\x20members\x20yet</p>';return;}_0x4aee14[_0x15ea8e(0x28b)]=_0x3118b2[_0x15ea8e(0x24e)](_0xdc57c=>{const _0x3e55aa=_0x15ea8e,_0x1c90cb=state[_0x3e55aa(0x241)][_0x3e55aa(0x270)](_0x51e04b=>_0x51e04b['id']===_0xdc57c),_0x1ed07f=_0x1c90cb?''+Utils[_0x3e55aa(0x207)](_0x1c90cb[_0x3e55aa(0x1fb)])+(_0x1c90cb['name']?_0x3e55aa(0x21b)+Utils[_0x3e55aa(0x207)](_0x1c90cb[_0x3e55aa(0x282)])+_0x3e55aa(0x26b):''):Utils[_0x3e55aa(0x207)](_0xdc57c),_0x1c37c2=(_0x175cf8[_0x3e55aa(0x219)]||[])[_0x3e55aa(0x220)](_0xdc57c);return'\x0a\x20\x20\x20\x20\x20\x20<div\x20style=\x22display:\x20flex;\x20align-items:\x20center;\x20justify-content:\x20space-between;\x20padding:\x200.35rem\x200;\x20border-bottom:\x201px\x20solid\x20var(--color-border);\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<span\x20style=\x22font-size:\x200.875rem;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x1ed07f+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x1c37c2?_0x3e55aa(0x20c):'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x404ab5?_0x3e55aa(0x286)+_0xdc57c+_0x3e55aa(0x1f7):'')+_0x3e55aa(0x290);})[_0x15ea8e(0x228)]('');const _0x10257b=document[_0x15ea8e(0x242)]('add-member-row');if(_0x10257b)_0x10257b[_0x15ea8e(0x245)][_0x15ea8e(0x20e)]=_0x404ab5?_0x15ea8e(0x24b):_0x15ea8e(0x23f);}function renderManagersList(_0x34185f){const _0x106aff=_0x4c5fc8,_0x59d271=_0x34185f[_0x106aff(0x219)]||[],_0x32cd4c=document['getElementById'](_0x106aff(0x23c));if(_0x59d271[_0x106aff(0x239)]===0x0){_0x32cd4c[_0x106aff(0x28b)]=_0x106aff(0x1ff);return;}_0x32cd4c[_0x106aff(0x28b)]=_0x59d271[_0x106aff(0x24e)](_0x1d0894=>{const _0x203059=_0x106aff,_0x11663d=state[_0x203059(0x241)][_0x203059(0x270)](_0xc8827a=>_0xc8827a['id']===_0x1d0894),_0x233c2c=_0x11663d?Utils[_0x203059(0x207)](_0x11663d[_0x203059(0x1fb)]):Utils[_0x203059(0x207)](_0x1d0894);return _0x203059(0x231)+_0x233c2c+_0x203059(0x217)+_0x1d0894+_0x203059(0x288);})[_0x106aff(0x228)]('');}function updateMemberSelect(_0xa37a9f){const _0x4cf3b1=_0x4c5fc8,_0x5e2dd2=document[_0x4cf3b1(0x242)](_0x4cf3b1(0x244));if(!_0x5e2dd2)return;const _0x5272b8=new Set(_0xa37a9f[_0x4cf3b1(0x225)]||[]),_0xc6eae8=state[_0x4cf3b1(0x241)][_0x4cf3b1(0x20f)](_0x3823a4=>!_0x5272b8[_0x4cf3b1(0x269)](_0x3823a4['id']));_0x5e2dd2['innerHTML']=_0x4cf3b1(0x21c)+_0xc6eae8[_0x4cf3b1(0x24e)](_0x3bdaf5=>_0x4cf3b1(0x1f4)+_0x3bdaf5['id']+'\x22>'+Utils[_0x4cf3b1(0x207)](_0x3bdaf5[_0x4cf3b1(0x1fb)])+(_0x3bdaf5[_0x4cf3b1(0x282)]?'\x20('+Utils[_0x4cf3b1(0x207)](_0x3bdaf5[_0x4cf3b1(0x282)])+')':'')+'</option>')[_0x4cf3b1(0x228)]('');}function updateManagerSelect(_0x1cd5fb){const _0x3c0436=_0x4c5fc8,_0x16fd6=document['getElementById'](_0x3c0436(0x25e));if(!_0x16fd6)return;const _0x4e33e6=new Set(_0x1cd5fb['managers']||[]),_0x43283b=(_0x1cd5fb['members']||[])['filter'](_0x13e654=>!_0x4e33e6['has'](_0x13e654))[_0x3c0436(0x24e)](_0x548e2d=>state[_0x3c0436(0x241)][_0x3c0436(0x270)](_0x1563a6=>_0x1563a6['id']===_0x548e2d))[_0x3c0436(0x20f)](Boolean);_0x16fd6[_0x3c0436(0x28b)]=_0x3c0436(0x1fa)+_0x43283b[_0x3c0436(0x24e)](_0x2ff9d9=>_0x3c0436(0x1f4)+_0x2ff9d9['id']+'\x22>'+Utils[_0x3c0436(0x207)](_0x2ff9d9[_0x3c0436(0x1fb)])+_0x3c0436(0x291))['join']('');}async function addMember(){const _0x2f97e6=_0x4c5fc8,_0x58531d=document['getElementById']('add-member-select'),_0x40782b=_0x58531d[_0x2f97e6(0x246)];if(!_0x40782b||!state[_0x2f97e6(0x261)])return;try{const {team:_0x57ea30}=await API[_0x2f97e6(0x28f)](state['editingTeamId'],_0x40782b);syncTeamInState(_0x57ea30),renderMembersList(_0x57ea30),updateMemberSelect(_0x57ea30),state[_0x2f97e6(0x203)]?.[_0x2f97e6(0x21f)]&&(renderManagersList(_0x57ea30),updateManagerSelect(_0x57ea30)),_0x58531d['value']='',Utils[_0x2f97e6(0x256)](_0x2f97e6(0x23b),'success');}catch(_0x17373a){Utils[_0x2f97e6(0x256)](_0x17373a['message'],_0x2f97e6(0x257));}}async function addManager(){const _0x382643=_0x4c5fc8,_0x134f4c=document['getElementById']('add-manager-select'),_0x4ff728=_0x134f4c[_0x382643(0x246)];if(!_0x4ff728||!state[_0x382643(0x261)])return;try{const {team:_0x5178cc}=await API[_0x382643(0x222)](state['editingTeamId'],_0x4ff728);syncTeamInState(_0x5178cc),renderMembersList(_0x5178cc),renderManagersList(_0x5178cc),updateManagerSelect(_0x5178cc),_0x134f4c[_0x382643(0x246)]='',Utils[_0x382643(0x256)]('Manager\x20added',_0x382643(0x259));}catch(_0x29fe3d){Utils[_0x382643(0x256)](_0x29fe3d[_0x382643(0x213)],_0x382643(0x257));}}window['removeMemberClick']=async function(_0x328316){const _0x3773c7=_0x4c5fc8;if(!state[_0x3773c7(0x261)])return;try{const {team:_0x4b0b3a}=await API[_0x3773c7(0x27a)](state['editingTeamId'],_0x328316);syncTeamInState(_0x4b0b3a),renderMembersList(_0x4b0b3a),updateMemberSelect(_0x4b0b3a),state[_0x3773c7(0x203)]?.['isServerAdmin']&&(renderManagersList(_0x4b0b3a),updateManagerSelect(_0x4b0b3a)),Utils[_0x3773c7(0x256)]('Member\x20removed','success');}catch(_0x47f8cf){Utils[_0x3773c7(0x256)](_0x47f8cf[_0x3773c7(0x213)],_0x3773c7(0x257));}},window[_0x4c5fc8(0x274)]=async function(_0x508265){const _0x3e66ba=_0x4c5fc8;if(!state[_0x3e66ba(0x261)])return;try{const {team:_0x2c94fd}=await API[_0x3e66ba(0x283)](state[_0x3e66ba(0x261)],_0x508265);syncTeamInState(_0x2c94fd),renderManagersList(_0x2c94fd),updateManagerSelect(_0x2c94fd),Utils[_0x3e66ba(0x256)](_0x3e66ba(0x272),_0x3e66ba(0x259));}catch(_0x577463){Utils[_0x3e66ba(0x256)](_0x577463[_0x3e66ba(0x213)],_0x3e66ba(0x257));}};async function loadTeamBindings(_0x1d04c8){const _0x7a6e03=_0x4c5fc8,_0xab0289=document[_0x7a6e03(0x242)](_0x7a6e03(0x216)),_0x2b97ba=document['getElementById'](_0x7a6e03(0x281)),_0x338ad6=document['getElementById'](_0x7a6e03(0x234)),_0x3aa039=document[_0x7a6e03(0x242)](_0x7a6e03(0x254));_0xab0289[_0x7a6e03(0x1f5)]=![],_0x2b97ba['hidden']=!![],_0x338ad6['style'][_0x7a6e03(0x20e)]=_0x7a6e03(0x23f),_0x3aa039[_0x7a6e03(0x1f5)]=!![],document[_0x7a6e03(0x242)](_0x7a6e03(0x298))[_0x7a6e03(0x1f5)]=!![];try{const {bindings:_0x2b31b2}=await API[_0x7a6e03(0x215)]({'subject_type':_0x7a6e03(0x209),'subject_id':_0x1d04c8});state[_0x7a6e03(0x236)]=_0x2b31b2||[],_0xab0289[_0x7a6e03(0x1f5)]=!![],state['teamBindings'][_0x7a6e03(0x239)]===0x0?_0x2b97ba[_0x7a6e03(0x1f5)]=![]:(_0x338ad6[_0x7a6e03(0x245)][_0x7a6e03(0x20e)]='',renderBindingsTable()),state[_0x7a6e03(0x203)]?.[_0x7a6e03(0x21f)]&&(_0x3aa039['hidden']=![]);}catch(_0x5bdbcc){_0xab0289[_0x7a6e03(0x1f5)]=!![],Utils[_0x7a6e03(0x256)](_0x7a6e03(0x26c)+_0x5bdbcc[_0x7a6e03(0x213)],_0x7a6e03(0x257));}}function renderBindingsTable(){const _0x3cfbe2=_0x4c5fc8,_0x465637=document[_0x3cfbe2(0x242)](_0x3cfbe2(0x268));if(!_0x465637)return;const _0x468b89=state[_0x3cfbe2(0x203)]?.['isServerAdmin'];_0x465637[_0x3cfbe2(0x28b)]=state[_0x3cfbe2(0x236)][_0x3cfbe2(0x24e)](_0x52c9f1=>_0x3cfbe2(0x252)+Utils[_0x3cfbe2(0x207)](_0x52c9f1[_0x3cfbe2(0x204)])+'</td>\x0a\x20\x20\x20\x20\x20\x20<td>'+Utils[_0x3cfbe2(0x207)](_0x52c9f1[_0x3cfbe2(0x27b)]||_0x52c9f1[_0x3cfbe2(0x280)])+_0x3cfbe2(0x27e)+(_0x468b89?_0x3cfbe2(0x255)+_0x52c9f1['id']+_0x3cfbe2(0x20d):'—')+'\x0a\x20\x20\x20\x20\x20\x20</td>\x0a\x20\x20\x20\x20</tr>')[_0x3cfbe2(0x228)]('');}function populateBindingForm(){const _0x50cebd=_0x4c5fc8,_0x491a86=document[_0x50cebd(0x242)](_0x50cebd(0x26a)),_0x9e85cb=document['getElementById'](_0x50cebd(0x247)),_0x500435=new Set(state[_0x50cebd(0x236)][_0x50cebd(0x24e)](_0x333dc1=>_0x333dc1[_0x50cebd(0x204)])),_0x2f88cb=state[_0x50cebd(0x226)][_0x50cebd(0x20f)](_0x331c11=>!_0x500435[_0x50cebd(0x269)](_0x331c11[_0x50cebd(0x282)]));_0x491a86[_0x50cebd(0x28b)]=_0x2f88cb['length']?_0x2f88cb['map'](_0x48e1c8=>_0x50cebd(0x1f4)+Utils[_0x50cebd(0x207)](_0x48e1c8[_0x50cebd(0x282)])+'\x22>'+Utils[_0x50cebd(0x207)](_0x48e1c8['name'])+_0x50cebd(0x291))[_0x50cebd(0x228)](''):_0x50cebd(0x277),_0x9e85cb['innerHTML']=state[_0x50cebd(0x200)][_0x50cebd(0x24e)](_0x366523=>_0x50cebd(0x1f4)+_0x366523['id']+'\x22>'+Utils[_0x50cebd(0x207)](_0x366523[_0x50cebd(0x282)])+_0x50cebd(0x291))[_0x50cebd(0x228)]('');}async function saveBinding(){const _0x5c35af=_0x4c5fc8,_0x1f296a=document['getElementById'](_0x5c35af(0x26a))[_0x5c35af(0x246)],_0x173ed0=document[_0x5c35af(0x242)](_0x5c35af(0x247))['value'];if(!_0x1f296a||!_0x173ed0||!state[_0x5c35af(0x261)])return;const _0x6ce250=document[_0x5c35af(0x242)](_0x5c35af(0x285));_0x6ce250['disabled']=!![],_0x6ce250[_0x5c35af(0x1f2)]=_0x5c35af(0x22a);try{await API[_0x5c35af(0x21e)]({'subject_type':_0x5c35af(0x209),'subject_id':state['editingTeamId'],'role_id':_0x173ed0,'environment':_0x1f296a}),Utils[_0x5c35af(0x256)](_0x5c35af(0x1f0),_0x5c35af(0x259)),document['getElementById'](_0x5c35af(0x298))[_0x5c35af(0x1f5)]=!![],document['getElementById'](_0x5c35af(0x254))['hidden']=![],await loadTeamBindings(state[_0x5c35af(0x261)]);}catch(_0x3221e5){Utils[_0x5c35af(0x256)](_0x3221e5[_0x5c35af(0x213)],_0x5c35af(0x257));}finally{_0x6ce250[_0x5c35af(0x25a)]=![],_0x6ce250[_0x5c35af(0x1f2)]='Add\x20Binding';}}window[_0x4c5fc8(0x27c)]=async function(_0x3e0ade){const _0x21d408=_0x4c5fc8;try{await API['deleteBinding'](_0x3e0ade),Utils['showToast'](_0x21d408(0x250),'success'),await loadTeamBindings(state['editingTeamId']);}catch(_0x493b4e){Utils['showToast'](_0x493b4e[_0x21d408(0x213)],'error');}};async function saveTeam(){const _0x494220=_0x4c5fc8,_0x2aaa22=document[_0x494220(0x242)](_0x494220(0x21a))[_0x494220(0x246)][_0x494220(0x1f3)](),_0x397ac5=document[_0x494220(0x242)](_0x494220(0x243))[_0x494220(0x246)][_0x494220(0x1f3)](),_0x2a4cca=document[_0x494220(0x242)](_0x494220(0x271)),_0x332507=document[_0x494220(0x242)](_0x494220(0x28e));if(!_0x2aaa22){_0x2a4cca[_0x494220(0x1f2)]=_0x494220(0x28c),_0x2a4cca[_0x494220(0x1f5)]=![];return;}_0x2a4cca[_0x494220(0x1f5)]=!![];const _0x38b937=_0x332507['textContent'];_0x332507[_0x494220(0x25a)]=!![],_0x332507['textContent']=state['editingTeamId']?'Saving…':_0x494220(0x266);try{if(state[_0x494220(0x261)]){const {team:_0xbbcd7f}=await API['updateTeam'](state['editingTeamId'],{'name':_0x2aaa22,'description':_0x397ac5});syncTeamInState(_0xbbcd7f),document[_0x494220(0x242)](_0x494220(0x208))[_0x494220(0x1f2)]=_0xbbcd7f[_0x494220(0x282)],Utils[_0x494220(0x256)](_0x494220(0x24d),_0x494220(0x259));}else await API['createTeam']({'name':_0x2aaa22,'description':_0x397ac5}),Utils[_0x494220(0x256)]('Team\x20created','success'),hideTeamModal(),await loadTeams();state[_0x494220(0x261)]&&(_0x332507['disabled']=![],_0x332507[_0x494220(0x1f2)]=_0x38b937);}catch(_0x167b63){_0x2a4cca[_0x494220(0x1f2)]=_0x167b63[_0x494220(0x213)],_0x2a4cca['hidden']=![],_0x332507[_0x494220(0x25a)]=![],_0x332507[_0x494220(0x1f2)]=_0x38b937;}}window['deleteTeam']=function(_0xa49191){const _0x2c6646=_0x4c5fc8,_0x224516=state[_0x2c6646(0x26e)][_0x2c6646(0x270)](_0x5408d8=>_0x5408d8['id']===_0xa49191);if(!_0x224516)return;state['deletingTeamId']=_0xa49191,document[_0x2c6646(0x242)](_0x2c6646(0x22c))[_0x2c6646(0x1f2)]=_0x224516[_0x2c6646(0x282)],document[_0x2c6646(0x242)](_0x2c6646(0x25f))[_0x2c6646(0x1f5)]=![];};function hideDeleteModal(){const _0xc24431=_0x4c5fc8;document['getElementById'](_0xc24431(0x25f))['hidden']=!![],state[_0xc24431(0x249)]=null;}function _0x55a4(_0x17e7e7,_0x4f84f0){_0x17e7e7=_0x17e7e7-0x1ec;const _0xf99e50=_0xf99e();let _0x55a428=_0xf99e50[_0x17e7e7];if(_0x55a4['Weobje']===undefined){var _0x3532f8=function(_0x1db1d8){const _0x2fed05='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x39e25f='',_0x42324d='';for(let _0x798c0a=0x0,_0x168b5a,_0x277571,_0x55a517=0x0;_0x277571=_0x1db1d8['charAt'](_0x55a517++);~_0x277571&&(_0x168b5a=_0x798c0a%0x4?_0x168b5a*0x40+_0x277571:_0x277571,_0x798c0a++%0x4)?_0x39e25f+=String['fromCharCode'](0xff&_0x168b5a>>(-0x2*_0x798c0a&0x6)):0x0){_0x277571=_0x2fed05['indexOf'](_0x277571);}for(let _0x13ce7f=0x0,_0x21fee3=_0x39e25f['length'];_0x13ce7f<_0x21fee3;_0x13ce7f++){_0x42324d+='%'+('00'+_0x39e25f['charCodeAt'](_0x13ce7f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x42324d);};_0x55a4['dsWQcQ']=_0x3532f8,_0x55a4['wknyPS']={},_0x55a4['Weobje']=!![];}const _0x4cc163=_0xf99e50[0x0],_0x434cc9=_0x17e7e7+_0x4cc163,_0x390095=_0x55a4['wknyPS'][_0x434cc9];return!_0x390095?(_0x55a428=_0x55a4['dsWQcQ'](_0x55a428),_0x55a4['wknyPS'][_0x434cc9]=_0x55a428):_0x55a428=_0x390095,_0x55a428;}async function confirmDeleteTeam(){const _0x1a7d20=_0x4c5fc8;if(!state[_0x1a7d20(0x249)])return;const _0x36d1ba=document[_0x1a7d20(0x242)](_0x1a7d20(0x218));_0x36d1ba[_0x1a7d20(0x25a)]=!![],_0x36d1ba['textContent']=_0x1a7d20(0x212);try{await API['deleteTeam'](state[_0x1a7d20(0x249)]),Utils[_0x1a7d20(0x256)](_0x1a7d20(0x206),_0x1a7d20(0x259)),hideDeleteModal(),await loadTeams();}catch(_0x535522){Utils[_0x1a7d20(0x256)](_0x1a7d20(0x229)+_0x535522['message'],'error'),_0x36d1ba[_0x1a7d20(0x25a)]=![],_0x36d1ba[_0x1a7d20(0x1f2)]='Delete\x20Team';}}function syncTeamInState(_0x51f280){const _0x6b6280=_0x4c5fc8,_0x56b29e=state[_0x6b6280(0x26e)]['findIndex'](_0x13e12f=>_0x13e12f['id']===_0x51f280['id']);if(_0x56b29e>=0x0)state[_0x6b6280(0x26e)][_0x56b29e]=_0x51f280;renderTeams();}
|
|
1
|
+
const _0x4a1b45=_0x1ea7;(function(_0x4e1644,_0x46cfc2){const _0x351ed2=_0x1ea7,_0x550446=_0x4e1644();while(!![]){try{const _0x43c092=parseInt(_0x351ed2(0x1bb))/0x1+-parseInt(_0x351ed2(0x1f0))/0x2*(-parseInt(_0x351ed2(0x209))/0x3)+parseInt(_0x351ed2(0x1e5))/0x4+-parseInt(_0x351ed2(0x233))/0x5+parseInt(_0x351ed2(0x1c6))/0x6+parseInt(_0x351ed2(0x1f5))/0x7*(parseInt(_0x351ed2(0x23a))/0x8)+-parseInt(_0x351ed2(0x227))/0x9*(parseInt(_0x351ed2(0x1de))/0xa);if(_0x43c092===_0x46cfc2)break;else _0x550446['push'](_0x550446['shift']());}catch(_0x4005b6){_0x550446['push'](_0x550446['shift']());}}}(_0x3799,0x25720));import{API,Utils,initializeAdminMenu}from'./app.js';import{initTheme,mountThemeToggle}from'./theme.js';const state={'teams':[],'users':[],'roles':[],'environments':[],'teamBindings':[],'currentUser':null,'editingTeamId':null,'deletingTeamId':null,'activeTab':_0x4a1b45(0x19f)};document[_0x4a1b45(0x1f6)](_0x4a1b45(0x23f),async()=>{const _0x15aef8=_0x4a1b45;initTheme(),mountThemeToggle();try{state['currentUser']=await API['getCurrentUser']();}catch{window[_0x15aef8(0x191)][_0x15aef8(0x1e4)]=_0x15aef8(0x1f7);return;}await initializeAdminMenu(state['currentUser']),state[_0x15aef8(0x1fb)][_0x15aef8(0x211)]&&(document['getElementById'](_0x15aef8(0x22f))['hidden']=![]),bindEventListeners(),await Promise[_0x15aef8(0x1d1)]([loadTeams(),loadUsers(),loadRoles(),loadEnvironments()]),renderTeams();});async function loadTeams(){const _0x1f33cf=_0x4a1b45,_0x33ab41=document[_0x1f33cf(0x22b)](_0x1f33cf(0x1a7)),_0x5c9697=document[_0x1f33cf(0x22b)](_0x1f33cf(0x240)),_0x49c54f=document[_0x1f33cf(0x22b)](_0x1f33cf(0x19e));try{_0x33ab41[_0x1f33cf(0x1a2)]=![],_0x5c9697[_0x1f33cf(0x1a2)]=!![],_0x49c54f[_0x1f33cf(0x1a2)]=!![];const {teams:_0x298c61}=await API[_0x1f33cf(0x1ed)]();state[_0x1f33cf(0x223)]=_0x298c61||[],renderTeams(),_0x33ab41[_0x1f33cf(0x1a2)]=!![],_0x49c54f[_0x1f33cf(0x1a2)]=![];}catch(_0x31ff9f){_0x33ab41[_0x1f33cf(0x1a2)]=!![],_0x5c9697['hidden']=![],document['getElementById'](_0x1f33cf(0x1d4))[_0x1f33cf(0x21f)]=_0x31ff9f[_0x1f33cf(0x19b)];}}async function loadUsers(){const _0x5c6512=_0x4a1b45;try{const {users:_0x8677df}=await API[_0x5c6512(0x1fd)]();state[_0x5c6512(0x1b2)]=_0x8677df||[];}catch{state[_0x5c6512(0x1b2)]=[];}}async function loadRoles(){const _0x19b1e3=_0x4a1b45;try{const {roles:_0x340e34}=await API[_0x19b1e3(0x242)]();state['roles']=_0x340e34||[];}catch{state['roles']=[];}}async function loadEnvironments(){const _0x3ade2e=_0x4a1b45;try{const _0x2fe86f=await API[_0x3ade2e(0x236)]();state[_0x3ade2e(0x231)]=_0x2fe86f[_0x3ade2e(0x231)]||[];}catch{state[_0x3ade2e(0x231)]=[];}}function renderTeams(){const _0xb8b801=_0x4a1b45,_0x4a1452=document[_0xb8b801(0x22b)](_0xb8b801(0x1c7)),_0x98b7bc=document[_0xb8b801(0x22b)](_0xb8b801(0x1ff));if(!_0x4a1452)return;_0x98b7bc&&(_0x98b7bc['textContent']=state[_0xb8b801(0x223)][_0xb8b801(0x1c2)]+_0xb8b801(0x1dc)+(state['teams'][_0xb8b801(0x1c2)]===0x1?'':'s'));if(state[_0xb8b801(0x223)]['length']===0x0){_0x4a1452['innerHTML']=_0xb8b801(0x22c)+(state[_0xb8b801(0x1fb)]?.[_0xb8b801(0x211)]?_0xb8b801(0x1b0):'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</td>\x0a\x20\x20\x20\x20\x20\x20</tr>';return;}const _0x537c43=state[_0xb8b801(0x1fb)]?.[_0xb8b801(0x211)];_0x4a1452[_0xb8b801(0x222)]=state['teams'][_0xb8b801(0x23b)](_0x1a96c2=>{const _0x22c5d=_0xb8b801,_0x545b9c=(_0x1a96c2[_0x22c5d(0x1cd)]||[])['includes'](state[_0x22c5d(0x1fb)]?.['id']),_0x4f9724=_0x537c43||_0x545b9c,_0x4ee734=(_0x1a96c2['managers']||[])['map'](_0x2cc9e0=>{const _0x43d1d8=_0x22c5d;if(_0x1a96c2[_0x43d1d8(0x21e)]&&_0x1a96c2[_0x43d1d8(0x21e)][_0x2cc9e0])return _0x1a96c2['manager_names'][_0x2cc9e0];const _0x458e02=state['users']['find'](_0x2e242e=>_0x2e242e['id']===_0x2cc9e0);return _0x458e02?_0x458e02[_0x43d1d8(0x1c1)]||_0x458e02[_0x43d1d8(0x1c0)]:_0x2cc9e0;})['join'](',\x20')||'—',_0x21b644=(_0x1a96c2['members']||[])[_0x22c5d(0x1c2)];return _0x22c5d(0x198)+_0x1a96c2['id']+'\x27)\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+Utils[_0x22c5d(0x208)](_0x1a96c2[_0x22c5d(0x1c1)])+_0x22c5d(0x21c)+(_0x1a96c2['description']?_0x22c5d(0x1e7)+Utils['escapeHtml'](_0x1a96c2[_0x22c5d(0x1b1)])+_0x22c5d(0x1e9):'')+_0x22c5d(0x1f2)+_0x21b644+_0x22c5d(0x226)+Utils[_0x22c5d(0x208)](_0x4ee734)+_0x22c5d(0x1a3)+(_0x4f9724?_0x22c5d(0x220)+_0x1a96c2['id']+_0x22c5d(0x1aa):'')+_0x22c5d(0x219)+(_0x537c43?_0x22c5d(0x1e0)+_0x1a96c2['id']+_0x22c5d(0x199):'')+_0x22c5d(0x1dd);})['join']('');}function bindEventListeners(){const _0x42c36f=_0x4a1b45;document[_0x42c36f(0x22b)](_0x42c36f(0x22f))?.['addEventListener']('click',showCreateTeamModal),document['getElementById'](_0x42c36f(0x1b6))?.['addEventListener'](_0x42c36f(0x20f),loadTeams),document['getElementById'](_0x42c36f(0x1b8))?.['addEventListener'](_0x42c36f(0x20f),hideTeamModal),document[_0x42c36f(0x22b)](_0x42c36f(0x1bd))?.[_0x42c36f(0x1f6)](_0x42c36f(0x20f),hideTeamModal),document[_0x42c36f(0x22b)]('save-team')?.['addEventListener'](_0x42c36f(0x20f),saveTeam),document[_0x42c36f(0x206)](_0x42c36f(0x1b4))?.[_0x42c36f(0x1f6)](_0x42c36f(0x20f),hideTeamModal),document['querySelectorAll'](_0x42c36f(0x1cb))[_0x42c36f(0x1f8)](_0xf385f=>{const _0x275419=_0x42c36f;_0xf385f[_0x275419(0x1f6)]('click',()=>switchTab(_0xf385f[_0x275419(0x19c)][_0x275419(0x1ae)]));}),document[_0x42c36f(0x22b)](_0x42c36f(0x203))?.[_0x42c36f(0x1f6)]('click',addMember),document['getElementById'](_0x42c36f(0x1ce))?.[_0x42c36f(0x1f6)](_0x42c36f(0x20f),addManager),document[_0x42c36f(0x22b)]('add-binding-btn')?.[_0x42c36f(0x1f6)](_0x42c36f(0x20f),()=>{const _0x37bc84=_0x42c36f;document[_0x37bc84(0x22b)](_0x37bc84(0x210))[_0x37bc84(0x1a2)]=![],document['getElementById'](_0x37bc84(0x1af))[_0x37bc84(0x1a2)]=!![],populateBindingForm();}),document[_0x42c36f(0x22b)](_0x42c36f(0x225))?.[_0x42c36f(0x1f6)]('click',()=>{const _0x33abce=_0x42c36f;document[_0x33abce(0x22b)]('add-binding-form')[_0x33abce(0x1a2)]=!![],document['getElementById'](_0x33abce(0x1af))[_0x33abce(0x1a2)]=![];}),document[_0x42c36f(0x22b)](_0x42c36f(0x218))?.['addEventListener'](_0x42c36f(0x20f),saveBinding),document[_0x42c36f(0x22b)](_0x42c36f(0x1b9))?.[_0x42c36f(0x1f6)](_0x42c36f(0x20f),hideDeleteModal),document[_0x42c36f(0x22b)]('cancel-delete-team')?.['addEventListener']('click',hideDeleteModal),document[_0x42c36f(0x22b)](_0x42c36f(0x1eb))?.[_0x42c36f(0x1f6)](_0x42c36f(0x20f),confirmDeleteTeam),document['querySelector'](_0x42c36f(0x1b7))?.['addEventListener']('click',hideDeleteModal);}function _0x3799(){const _0x2f391a=['y2XVC2uTDgvHBs1TB2rHBa','y2XVC2uTzgvSzxrLlxrLyw0TBw9KywW','y3jLyxrLqMLUzgLUzW','mtiXmtqZt2v5uu1d','rMfPBgvKihrVigrLBgv0zsb0zwfToIa','y2fUy2vSlxrLyw0','BwvTyMvYCY1SAxn0','zMXLEa','DxnLCM5HBwu','BMfTzq','BgvUz3rO','BwfUywDLCNmTC2vJDgLVBG','pg9WDgLVBIb2ywX1zt0IiJ5qCM9TB3rLigeGBwvTyMvYihrVig1HBMfNzxlIGky8l29WDgLVBJ4','BwvTyMvYCW','mtiWoduYmeDJsKHNzq','DgvHBxmTDgfIBguTyM9KEq','yMLUzgLUz3m','DhjPBq','yMLUzgLUzY1LBNzPCM9UBwvUDa','lM1VzgfSlxrHyI1IDg4','vgvHBsbJCMvHDgvK','BwfUywDLCNm','ywrKlw1HBMfNzxiTyNrU','rgvSzxrLifrLyw0','DMfYkc0Ty29SB3iTDgv4Dc1ZzwnVBMrHCNKP','ywXS','zM9UDfDLAwDODa','qMLUzgLUzYbYzw1VDMvK','DgvHBxmTzxjYB3iTBwvZC2fNzq','DgvHBs1Uyw1L','vgvHBsbUyw1LigLZihjLCxvPCMvK','pg9WDgLVBIb2ywX1zt0IiJ5bzgqGysbTzw1IzxlIGky8l29WDgLVBJ4','nJaW','zMLUza','pc90zd4kicaGicaGphrKpG','CMvTB3zLvgvHBu1HBMfNzxi','ihrLyw0','cIaGicaGicaGica8l2rPDJ4kicaGicaGica8l3rKpGOGicaGica8l3rYpG','mtbkq2fty3q','yMLUzgLUz3mTDgfIBguTyM9KEq','pgj1DhrVBIbJBgfZCZ0IyNrUlwDOB3n0igj0BI1ZBwfSBciGB25JBgLJAZ0ID2LUzg93lMrLBgv0zvrLyw0OjW','vgvHBsbKzwXLDgvK','DgvHBs1TB2rHBc10AxrSzq','zM9JDxm','AhjLzG','ntGZndbZt09RAgy','zgvSzxrLvgvHBq','pgrPDIbZDhLSzt0IzM9UDc1ZAxPLoIaWlJHLBtSGy29SB3i6ihzHCIGTlwnVBg9YlxrLEhqTC2vJB25Kyxj5ktSGBwfYz2LUlxrVCdOGmc4XnxjLBtSIpG','DgvHBujPBMrPBMDZ','pc9KAxy+','twfUywDLCIbHzgrLza','y29UzMLYBs1KzwXLDguTDgvHBq','DgvHBs1TB2rHBc1MB290zxi','z2v0vgvHBxm','ywrKvgvHBu1HBMfNzxi','DgvHBs1KzxnJCMLWDgLVBG','nZj2uLjbCwu','vgvHBsb1CgrHDgvK','cIaGicaGicaGpc90zd4kicaGicaGica8Dgq+','AgfZ','zMLSDgvY','mtiZowXUBNbNAG','ywrKrxzLBNrmAxn0zw5LCG','Bg9NAw4UAhrTBa','zM9YrwfJAa','zMLUzeLUzgv4','AM9PBG','y3vYCMvUDfvZzxi','C3vJy2vZCW','z2v0vxnLCNm','pc9VChrPB24+','DgvHBs1JB3vUDa','CMvTB3zLtwvTyMvYq2XPy2S','C2HVD1rVyxn0','pg9WDgLVBIb2ywX1zt0I','ywrKlw1LBwjLCI1IDg4','C3r5Bgu','z2v0qMLUzgLUz3m','CxvLCNLtzwXLy3rVCG','twfUywDLCIbYzw1VDMvK','zxnJyxbLshrTBa','mty2otjOt2L5Dum','q3jLyxrPBMFIGky','ywrKlw1LBwjLCI1ZzwXLy3q','CxvLCNLtzwXLy3rVCKfSBa','zgvSzxrLqMLUzgLUz0nSAwnR','DgvHBs10ywiTyMLUzgLUz3m','y2XPy2S','ywrKlwjPBMrPBMCTzM9YBq','Axntzxj2zxjbzg1PBG','pc90zd4kicaGicaGphrKpGOGicaGicaGia','qwrKiejPBMrPBMC','BM9Uzq','zgvSzxrPBMDuzwfTswq','C2f2zs10zwfT','ywrKlw1HBMfNzxiTC2vSzwn0','C2f2zs1IAw5KAw5Nlwj0BG','cIaGicaGicaGicaGia','qMLUzgLUzYbHzgrLza','DMfSDwu','cIaGicaGicaGica8l2j1DhrVBJ4kicaGicaGicaGia','zgvSzxrLqMLUzgLUzW','BwfUywDLCL9Uyw1LCW','Dgv4DenVBNrLBNq','pgj1DhrVBIbJBgfZCZ0IyNrUlxnLy29UzgfYEsbIDg4TC21HBgWIig9Uy2XPy2S9iNDPBMrVDY5VCgvUvgvHBu1VzgfSkcC','rMfPBgvKihrVigXVywqGyMLUzgLUz3m6ia','Aw5Uzxjive1m','DgvHBxm','CMvTB3zLvgvHBu1LBwjLCG','y2fUy2vSlwjPBMrPBMCTyNrU','pc90zd4kicaGicaGica8Dgq+','mtK2ndm4nwLgzMz5vq','pc9ZCgfUpGOGicaGicaGidXIDxr0B24GDhLWzt0IyNv0Dg9UiIbJBgfZCZ0IyNrUlwDOB3n0igj0BI1ZBwfSBciGB25JBgLJAZ0ID2LUzg93lNjLBw92zu1HBMfNzxjdBgLJAYGN','pgj1DhrVBIbJBgfZCZ0IyNrUlwDOB3n0igj0BI1ZBwfSBciGB25JBgLJAZ0ID2LUzg93lMrLBgv0zujPBMrPBMDdBgLJAYGN','idXZCgfUihn0EwXLpsjJB2XVCJOGDMfYkc0Ty29SB3iTDgv4Dc1ZzwnVBMrHCNKPoYbMB250lxnPEMu6idaUodvLBtSIpIG','z2v0rwXLBwvUDej5swq','cIaGicaGidX0CJ4kicaGicaGica8DgqGy29SC3bHBJ0InciGC3r5Bgu9iNrLEhqTywXPz246ignLBNrLCJSGy29SB3i6ihzHCIGTlwnVBg9YlxrLEhqTC2vJB25Kyxj5ktSGCgfKzgLUzZOGmNjLBtSIpGOGicaGicaGicaGtM8GDgvHBxmGEwv0lGOGicaGicaGicaG','phaGC3r5Bgu9iMzVBNqTC2L6ztOGmc44nZvYzw07ignVBg9YoIb2yxiOls1JB2XVCI10zxH0lxnLy29UzgfYEsK7ig1HCMDPBJOGmc4YnxjLBsaWoYi+tM8GBwvTyMvYCYb5zxq8l3a+','yMLUzgLUzY1YB2XL','y3jLyxrLlxrLyw0TyNrU','cIaGica8Dhi+cIaGicaGidX0zd4','zw52AxjVBM1LBNrZ','zgLZywjSzwq','otu3mZGWtKz3svzh','zgLZCgXHEq','pgj1DhrVBIb0ExbLpsjIDxr0B24IignSyxnZpsjIDg4Tz2HVC3qGyNrUlxnTywXSiIbVBMnSAwnRpsj3Aw5KB3CUCMvTB3zLtwvTyMvYq2XPy2SOjW','z2v0rw52AxjVBM1LBNrZ','zxjYB3i','y29SB3i','u2f2Aw5N4OcM','mte2mfnZuw5PAa','BwfW','yMLUzgLUz3mTBgLZDc1JB250ywLUzxi','DgvHBs1TB2rHBa','y3jLyxrLvgvHBq','re9nq29UDgvUDeXVywrLza','DgvHBxmTzxjYB3i','DxbKyxrLvgvHBq','z2v0uM9SzurLzMLUAxrPB25Z','Bg9JyxrPB24','cIaGicaGicaGica','BM9YBwfS','jYKIihn0EwXLpsjJB2XVCJOGDMfYkc0Ty29SB3iTzgfUz2vYktSGCgfKzgLUzZOGmc4XnxjLBsaWlJrYzw07igzVBNqTC2L6ztOGmc44CMvToYi+uMvTB3zLpc9IDxr0B24+cIaGicaGidWVzgL2pG','DgvHBs1MB3jTlwvYCM9Y','zgvSzxrLlxrLyw0TBMfTzq','ywn0AxzLvgfI','cIaGicaGidX0CJ4kicaGicaGica8Dgq+cIaGicaGicaGica8yNv0Dg9UignSyxnZpsjIDg4Tz2HVC3qGyNrUlxnTywXSiIbZDhLSzt0IzM9UDc13zwLNAhq6idyWmdSGCgfKzgLUzZOGmdSGDgv4Dc1KzwnVCMf0Aw9UoIb1BMrLCMXPBMu7ihrLEhqTzgvJB3jHDgLVBI1ZDhLSztOGzg90DgvKoYikicaGicaGicaGicaGB25JBgLJAZ0ID2LUzg93lM9Wzw5uzwfTtw9KywWOjW','jYKIpKrLBgv0ztWVyNv0Dg9UpG','twvTyMvYigfKzgvK','BwvZC2fNzq','zgf0yxnLDa','DgvHBs1TB2rHBc10ywjZ','DgvHBxmTy29UDgvUDa','zgv0ywLSCW','ywrKlw1LBwjLCI1YB3C','yM9YzgvYqM90Dg9Tq29SB3i','AgLKzgvU','pc90zd4kicaGicaGica8Dgq+cIaGicaGicaGica8zgL2ignSyxnZpsj1C2vYlwfJDgLVBNmIpGOGicaGicaGicaGica','B3bLBLrLyw1nB2rHBa','DMfYkc0Ty29SB3iTChjPBwfYEsK','jYKIihn0EwXLpsjJB2XVCJOGDMfYkc0Ty29SB3iTzgfUz2vYktSIpLjLBw92ztWVyNv0Dg9UpG','DgvHBxmTBg9HzgLUzW','cIaGicaGidXKAxyGC3r5Bgu9iMrPC3bSyxK6igzSzxG7igfSAwDUlwL0zw1ZoIbJzw50zxi7igP1C3rPzNKTy29UDgvUDdOGC3bHy2uTyMv0D2vLBJSGCgfKzgLUzZOGmc4ZnxjLBsaWoYbIB3jKzxiTyM90Dg9ToIaXChGGC29SAwqGDMfYkc0Ty29SB3iTyM9YzgvYktSIpGOGicaGicaGidXZCgfUihn0EwXLpsjMB250lxnPEMu6idaUodC1CMvToYi+','DgvHBq','jYKIpKvKAxq8l2j1DhrVBJ4','zgvSzxrLlxrLyw0TBw9KywW','zwrPDgLUz1rLyw1jza','q3jLyxrLifrLyw0','DgfI','ywrKlwjPBMrPBMCTyNrU','q2XPy2SGphn0CM9UzZ5dCMvHDguGvgvHBtWVC3rYB25NpIb0BYbNzxqGC3rHCNrLzc4','zgvZy3jPChrPB24','DxnLCNm','CM9Szv9Uyw1L','i3rLyw0TBw9KywWGlM1VzgfSlw92zxjSyxK','Aw5JBhvKzxm','CMv0CNKTDgvHBxmTyNrU','i2rLBgv0zs10zwfTlw1VzgfSic5TB2rHBc1VDMvYBgf5'];_0x3799=function(){return _0x2f391a;};return _0x3799();}function showCreateTeamModal(){const _0x129ebe=_0x4a1b45;state[_0x129ebe(0x1ac)]=null,state[_0x129ebe(0x197)]=_0x129ebe(0x19f),document[_0x129ebe(0x22b)]('team-modal-title')[_0x129ebe(0x21f)]=_0x129ebe(0x1ad),document[_0x129ebe(0x22b)](_0x129ebe(0x1d5))['value']='',document['getElementById'](_0x129ebe(0x1d5))[_0x129ebe(0x232)]=![],document['getElementById']('team-description')[_0x129ebe(0x21b)]='',document[_0x129ebe(0x22b)](_0x129ebe(0x1ef))[_0x129ebe(0x232)]=![],document[_0x129ebe(0x22b)](_0x129ebe(0x195))['hidden']=!![],document[_0x129ebe(0x22b)]('team-modal-tabs')[_0x129ebe(0x1a2)]=!![],document[_0x129ebe(0x22b)]('members-section')[_0x129ebe(0x1a2)]=!![],document[_0x129ebe(0x22b)]('save-team')['hidden']=![],document[_0x129ebe(0x22b)](_0x129ebe(0x1ec))['hidden']=![],showTab(_0x129ebe(0x19f)),document[_0x129ebe(0x22b)](_0x129ebe(0x23d))['hidden']=![],setTimeout(()=>document['getElementById'](_0x129ebe(0x1d5))[_0x129ebe(0x1e3)](),0x64);}window[_0x4a1b45(0x1a4)]=function(_0x27d01e){const _0x3707ac=_0x4a1b45,_0xf5f08e=state[_0x3707ac(0x223)][_0x3707ac(0x1d9)](_0x5a64f4=>_0x5a64f4['id']===_0x27d01e);if(!_0xf5f08e)return;state[_0x3707ac(0x1ac)]=_0x27d01e,state[_0x3707ac(0x197)]=_0x3707ac(0x19f);const _0x53181f=state[_0x3707ac(0x1fb)]?.[_0x3707ac(0x211)],_0x2da6bc=(_0xf5f08e[_0x3707ac(0x1cd)]||[])[_0x3707ac(0x1b5)](state[_0x3707ac(0x1fb)]?.['id']),_0x8030a7=_0x53181f||_0x2da6bc;document[_0x3707ac(0x22b)]('team-modal-title')[_0x3707ac(0x21f)]=_0xf5f08e[_0x3707ac(0x1c1)],document[_0x3707ac(0x22b)](_0x3707ac(0x1d5))['value']=_0xf5f08e[_0x3707ac(0x1c1)],document[_0x3707ac(0x22b)](_0x3707ac(0x1d5))[_0x3707ac(0x232)]=!_0x8030a7,document[_0x3707ac(0x22b)]('team-description')['value']=_0xf5f08e[_0x3707ac(0x1b1)]||'',document['getElementById'](_0x3707ac(0x1ef))[_0x3707ac(0x232)]=!_0x8030a7,document[_0x3707ac(0x22b)](_0x3707ac(0x195))[_0x3707ac(0x1a2)]=!![],document[_0x3707ac(0x22b)](_0x3707ac(0x19d))['hidden']=![],document[_0x3707ac(0x22b)]('members-section')[_0x3707ac(0x1a2)]=![],document['getElementById'](_0x3707ac(0x216))[_0x3707ac(0x1a2)]=!_0x8030a7,document['getElementById'](_0x3707ac(0x1c3))[_0x3707ac(0x1a2)]=!_0x53181f,setActiveTabButton(_0x3707ac(0x19f)),renderMembersList(_0xf5f08e),updateMemberSelect(_0xf5f08e),_0x53181f&&(renderManagersList(_0xf5f08e),updateManagerSelect(_0xf5f08e)),showTab(_0x3707ac(0x19f)),document[_0x3707ac(0x22b)](_0x3707ac(0x23d))['hidden']=![];};function hideTeamModal(){const _0x14df40=_0x4a1b45;document[_0x14df40(0x22b)]('team-modal')[_0x14df40(0x1a2)]=!![],document[_0x14df40(0x22b)](_0x14df40(0x1d5))[_0x14df40(0x232)]=![],document[_0x14df40(0x22b)](_0x14df40(0x1ef))[_0x14df40(0x232)]=![],state['editingTeamId']=null;}function switchTab(_0x334c26){const _0x45b083=_0x4a1b45;state[_0x45b083(0x197)]=_0x334c26,setActiveTabButton(_0x334c26),showTab(_0x334c26),_0x334c26===_0x45b083(0x1c8)&&state[_0x45b083(0x1ac)]&&loadTeamBindings(state[_0x45b083(0x1ac)]);}function setActiveTabButton(_0x2ef80b){const _0x3d58f6=_0x4a1b45;document[_0x3d58f6(0x20c)](_0x3d58f6(0x1cb))[_0x3d58f6(0x1f8)](_0x317684=>{const _0x1a4aca=_0x3d58f6,_0x598802=_0x317684['dataset'][_0x1a4aca(0x1ae)]===_0x2ef80b;_0x317684[_0x1a4aca(0x204)][_0x1a4aca(0x1a1)]=_0x598802?'var(--color-primary)':'transparent',_0x317684[_0x1a4aca(0x204)][_0x1a4aca(0x238)]=_0x598802?_0x1a4aca(0x1a5):_0x1a4aca(0x1d0),_0x317684[_0x1a4aca(0x204)][_0x1a4aca(0x1d2)]=_0x598802?_0x1a4aca(0x1d8):_0x1a4aca(0x193);});}function showTab(_0x546567){const _0x52ee9d=_0x4a1b45;document[_0x52ee9d(0x22b)]('team-tab-details')[_0x52ee9d(0x1a2)]=_0x546567!=='details',document['getElementById'](_0x52ee9d(0x20e))[_0x52ee9d(0x1a2)]=_0x546567!==_0x52ee9d(0x1c8),document[_0x52ee9d(0x22b)](_0x52ee9d(0x1ec))['hidden']=_0x546567===_0x52ee9d(0x1c8);}function renderMembersList(_0x3b9717){const _0x23d472=_0x4a1b45,_0x4137a4=state['currentUser']?.[_0x23d472(0x211)],_0x443b28=(_0x3b9717['managers']||[])['includes'](state[_0x23d472(0x1fb)]?.['id']),_0x3ba710=_0x4137a4||_0x443b28,_0x3ebefa=_0x3b9717[_0x23d472(0x1c5)]||[],_0x362340=document[_0x23d472(0x22b)](_0x23d472(0x1be));if(_0x3ebefa[_0x23d472(0x1c2)]===0x0){_0x362340['innerHTML']=_0x23d472(0x22d);return;}_0x362340[_0x23d472(0x222)]=_0x3ebefa[_0x23d472(0x23b)](_0x29db8c=>{const _0x524ee2=_0x23d472,_0x176feb=state[_0x524ee2(0x1b2)]['find'](_0x50051a=>_0x50051a['id']===_0x29db8c),_0x48303f=_0x176feb?''+Utils[_0x524ee2(0x208)](_0x176feb['username'])+(_0x176feb[_0x524ee2(0x1c1)]?_0x524ee2(0x22a)+Utils['escapeHtml'](_0x176feb[_0x524ee2(0x1c1)])+')</span>':''):Utils['escapeHtml'](_0x29db8c),_0x4d78f3=(_0x3b9717[_0x524ee2(0x1cd)]||[])['includes'](_0x29db8c);return'\x0a\x20\x20\x20\x20\x20\x20<div\x20style=\x22display:\x20flex;\x20align-items:\x20center;\x20justify-content:\x20space-between;\x20padding:\x200.35rem\x200;\x20border-bottom:\x201px\x20solid\x20var(--color-border);\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<span\x20style=\x22font-size:\x200.875rem;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x48303f+_0x524ee2(0x192)+(_0x4d78f3?'<span\x20class=\x22tag\x22\x20style=\x22margin-left:\x200.4rem;\x20font-size:\x200.7em;\x20padding:\x200.1em\x200.4em;\x22>manager</span>':'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x3ba710?_0x524ee2(0x235)+_0x29db8c+'\x27)\x22\x20style=\x22color:\x20var(--color-danger);\x20padding:\x200.15rem\x200.4rem;\x20font-size:\x200.8rem;\x22>Remove</button>':'')+'\x0a\x20\x20\x20\x20\x20\x20</div>';})[_0x23d472(0x1fa)]('');const _0x259b38=document[_0x23d472(0x22b)](_0x23d472(0x1a0));if(_0x259b38)_0x259b38[_0x23d472(0x204)][_0x23d472(0x234)]=_0x3ba710?_0x23d472(0x1bf):_0x23d472(0x214);}function renderManagersList(_0x5118cc){const _0x1a5d83=_0x4a1b45,_0x520a64=_0x5118cc[_0x1a5d83(0x1cd)]||[],_0x466ccb=document[_0x1a5d83(0x22b)]('managers-list');if(_0x520a64[_0x1a5d83(0x1c2)]===0x0){_0x466ccb[_0x1a5d83(0x222)]='<p\x20style=\x22font-size:\x200.875rem;\x20color:\x20var(--color-text-secondary);\x20margin:\x200.25rem\x200;\x22>No\x20managers</p>';return;}_0x466ccb[_0x1a5d83(0x222)]=_0x520a64['map'](_0x4400b0=>{const _0x5b4874=_0x1a5d83,_0xe78455=state[_0x5b4874(0x1b2)][_0x5b4874(0x1d9)](_0x20f1ec=>_0x20f1ec['id']===_0x4400b0),_0x499858=_0xe78455?Utils[_0x5b4874(0x208)](_0xe78455[_0x5b4874(0x1c0)]):Utils[_0x5b4874(0x208)](_0x4400b0);return _0x5b4874(0x1a8)+_0x499858+_0x5b4874(0x228)+_0x4400b0+_0x5b4874(0x194);})[_0x1a5d83(0x1fa)]('');}function updateMemberSelect(_0x9f3deb){const _0x2e89f3=_0x4a1b45,_0x18b94e=document[_0x2e89f3(0x22b)](_0x2e89f3(0x20b));if(!_0x18b94e)return;const _0x1d4b35=new Set(_0x9f3deb[_0x2e89f3(0x1c5)]||[]),_0x3b468f=state[_0x2e89f3(0x1b2)][_0x2e89f3(0x1f4)](_0x40167b=>!_0x1d4b35[_0x2e89f3(0x1f3)](_0x40167b['id']));_0x18b94e[_0x2e89f3(0x222)]=_0x2e89f3(0x1d7)+_0x3b468f[_0x2e89f3(0x23b)](_0x51b854=>_0x2e89f3(0x202)+_0x51b854['id']+'\x22>'+Utils['escapeHtml'](_0x51b854[_0x2e89f3(0x1c0)])+(_0x51b854[_0x2e89f3(0x1c1)]?'\x20('+Utils[_0x2e89f3(0x208)](_0x51b854[_0x2e89f3(0x1c1)])+')':'')+'</option>')['join']('');}function updateManagerSelect(_0x4d5d1a){const _0x38e7ff=_0x4a1b45,_0x592af1=document[_0x38e7ff(0x22b)]('add-manager-select');if(!_0x592af1)return;const _0x315f44=new Set(_0x4d5d1a['managers']||[]),_0x1b0d2c=(_0x4d5d1a[_0x38e7ff(0x1c5)]||[])[_0x38e7ff(0x1f4)](_0x8e759e=>!_0x315f44['has'](_0x8e759e))[_0x38e7ff(0x23b)](_0x478f6e=>state['users'][_0x38e7ff(0x1d9)](_0x8138ac=>_0x8138ac['id']===_0x478f6e))[_0x38e7ff(0x1f4)](Boolean);_0x592af1['innerHTML']=_0x38e7ff(0x1c4)+_0x1b0d2c['map'](_0x4f6452=>_0x38e7ff(0x202)+_0x4f6452['id']+'\x22>'+Utils[_0x38e7ff(0x208)](_0x4f6452[_0x38e7ff(0x1c0)])+_0x38e7ff(0x1fe))[_0x38e7ff(0x1fa)]('');}async function addMember(){const _0x1146f3=_0x4a1b45,_0x350c=document[_0x1146f3(0x22b)]('add-member-select'),_0x316a70=_0x350c['value'];if(!_0x316a70||!state[_0x1146f3(0x1ac)])return;try{const {team:_0x3473ae}=await API['addTeamMember'](state[_0x1146f3(0x1ac)],_0x316a70);syncTeamInState(_0x3473ae),renderMembersList(_0x3473ae),updateMemberSelect(_0x3473ae),state[_0x1146f3(0x1fb)]?.[_0x1146f3(0x211)]&&(renderManagersList(_0x3473ae),updateManagerSelect(_0x3473ae)),_0x350c[_0x1146f3(0x21b)]='',Utils['showToast'](_0x1146f3(0x19a),_0x1146f3(0x1fc));}catch(_0x2a294e){Utils[_0x1146f3(0x201)](_0x2a294e[_0x1146f3(0x19b)],'error');}}async function addManager(){const _0x27cde7=_0x4a1b45,_0xff2354=document[_0x27cde7(0x22b)](_0x27cde7(0x217)),_0x1cd0af=_0xff2354[_0x27cde7(0x21b)];if(!_0x1cd0af||!state[_0x27cde7(0x1ac)])return;try{const {team:_0xb48dc2}=await API[_0x27cde7(0x1ee)](state[_0x27cde7(0x1ac)],_0x1cd0af);syncTeamInState(_0xb48dc2),renderMembersList(_0xb48dc2),renderManagersList(_0xb48dc2),updateManagerSelect(_0xb48dc2),_0xff2354[_0x27cde7(0x21b)]='',Utils[_0x27cde7(0x201)](_0x27cde7(0x1ea),_0x27cde7(0x1fc));}catch(_0x1d11ec){Utils[_0x27cde7(0x201)](_0x1d11ec['message'],_0x27cde7(0x237));}}window[_0x4a1b45(0x200)]=async function(_0x404b64){const _0x306ab9=_0x4a1b45;if(!state[_0x306ab9(0x1ac)])return;try{const {team:_0x40c0f2}=await API[_0x306ab9(0x224)](state[_0x306ab9(0x1ac)],_0x404b64);syncTeamInState(_0x40c0f2),renderMembersList(_0x40c0f2),updateMemberSelect(_0x40c0f2),state[_0x306ab9(0x1fb)]?.[_0x306ab9(0x211)]&&(renderManagersList(_0x40c0f2),updateManagerSelect(_0x40c0f2)),Utils[_0x306ab9(0x201)]('Member\x20removed',_0x306ab9(0x1fc));}catch(_0x369dad){Utils[_0x306ab9(0x201)](_0x369dad[_0x306ab9(0x19b)],'error');}},window['removeManagerClick']=async function(_0x9e59e2){const _0x23b6f6=_0x4a1b45;if(!state[_0x23b6f6(0x1ac)])return;try{const {team:_0x3ecc18}=await API[_0x23b6f6(0x1db)](state[_0x23b6f6(0x1ac)],_0x9e59e2);syncTeamInState(_0x3ecc18),renderManagersList(_0x3ecc18),updateManagerSelect(_0x3ecc18),Utils[_0x23b6f6(0x201)](_0x23b6f6(0x207),_0x23b6f6(0x1fc));}catch(_0x1e128b){Utils[_0x23b6f6(0x201)](_0x1e128b[_0x23b6f6(0x19b)],'error');}};async function loadTeamBindings(_0x472350){const _0x39625f=_0x4a1b45,_0x1d8c33=document[_0x39625f(0x22b)]('bindings-loading'),_0x14b83f=document[_0x39625f(0x22b)]('bindings-empty'),_0xfe22fe=document['getElementById'](_0x39625f(0x23c)),_0x4e7e7b=document[_0x39625f(0x22b)](_0x39625f(0x1af));_0x1d8c33[_0x39625f(0x1a2)]=![],_0x14b83f[_0x39625f(0x1a2)]=!![],_0xfe22fe['style'][_0x39625f(0x234)]=_0x39625f(0x214),_0x4e7e7b[_0x39625f(0x1a2)]=!![],document[_0x39625f(0x22b)]('add-binding-form')[_0x39625f(0x1a2)]=!![];try{const {bindings:_0x575a06}=await API[_0x39625f(0x205)]({'subject_type':'team','subject_id':_0x472350});state[_0x39625f(0x1e8)]=_0x575a06||[],_0x1d8c33['hidden']=!![],state[_0x39625f(0x1e8)]['length']===0x0?_0x14b83f[_0x39625f(0x1a2)]=![]:(_0xfe22fe[_0x39625f(0x204)][_0x39625f(0x234)]='',renderBindingsTable()),state[_0x39625f(0x1fb)]?.[_0x39625f(0x211)]&&(_0x4e7e7b[_0x39625f(0x1a2)]=![]);}catch(_0x545cf0){_0x1d8c33[_0x39625f(0x1a2)]=!![],Utils['showToast'](_0x39625f(0x221)+_0x545cf0[_0x39625f(0x19b)],_0x39625f(0x237));}}function renderBindingsTable(){const _0x23dd29=_0x4a1b45,_0x527c0f=document['getElementById'](_0x23dd29(0x1df));if(!_0x527c0f)return;const _0x1fdc0f=state['currentUser']?.[_0x23dd29(0x211)];_0x527c0f[_0x23dd29(0x222)]=state['teamBindings'][_0x23dd29(0x23b)](_0x1a2be5=>_0x23dd29(0x230)+Utils['escapeHtml'](_0x1a2be5['environment'])+_0x23dd29(0x1da)+Utils[_0x23dd29(0x208)](_0x1a2be5[_0x23dd29(0x1b3)]||_0x1a2be5['role_id'])+_0x23dd29(0x212)+(_0x1fdc0f?_0x23dd29(0x229)+_0x1a2be5['id']+_0x23dd29(0x1a6):'—')+'\x0a\x20\x20\x20\x20\x20\x20</td>\x0a\x20\x20\x20\x20</tr>')[_0x23dd29(0x1fa)]('');}function populateBindingForm(){const _0x3da83a=_0x4a1b45,_0x5afb00=document[_0x3da83a(0x22b)]('binding-environment'),_0x4defa1=document[_0x3da83a(0x22b)](_0x3da83a(0x22e)),_0x1a2b87=new Set(state[_0x3da83a(0x1e8)]['map'](_0x4245a3=>_0x4245a3['environment'])),_0x12f8fd=state[_0x3da83a(0x231)][_0x3da83a(0x1f4)](_0x2713ac=>!_0x1a2b87[_0x3da83a(0x1f3)](_0x2713ac[_0x3da83a(0x1c1)]));_0x5afb00[_0x3da83a(0x222)]=_0x12f8fd[_0x3da83a(0x1c2)]?_0x12f8fd[_0x3da83a(0x23b)](_0xa7fef9=>_0x3da83a(0x202)+Utils[_0x3da83a(0x208)](_0xa7fef9[_0x3da83a(0x1c1)])+'\x22>'+Utils[_0x3da83a(0x208)](_0xa7fef9[_0x3da83a(0x1c1)])+_0x3da83a(0x1fe))['join'](''):'<option\x20value=\x22\x22>All\x20environments\x20already\x20bound</option>',_0x4defa1['innerHTML']=state['roles'][_0x3da83a(0x23b)](_0x35a213=>'<option\x20value=\x22'+_0x35a213['id']+'\x22>'+Utils['escapeHtml'](_0x35a213[_0x3da83a(0x1c1)])+'</option>')['join']('');}function _0x1ea7(_0x36ff08,_0x2a4e1a){_0x36ff08=_0x36ff08-0x191;const _0x379988=_0x3799();let _0x1ea7be=_0x379988[_0x36ff08];if(_0x1ea7['ytlJfN']===undefined){var _0x2cb8e8=function(_0x30271f){const _0x1bd141='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x33ab41='',_0x5c9697='';for(let _0x49c54f=0x0,_0x298c61,_0x31ff9f,_0x8677df=0x0;_0x31ff9f=_0x30271f['charAt'](_0x8677df++);~_0x31ff9f&&(_0x298c61=_0x49c54f%0x4?_0x298c61*0x40+_0x31ff9f:_0x31ff9f,_0x49c54f++%0x4)?_0x33ab41+=String['fromCharCode'](0xff&_0x298c61>>(-0x2*_0x49c54f&0x6)):0x0){_0x31ff9f=_0x1bd141['indexOf'](_0x31ff9f);}for(let _0x340e34=0x0,_0x2fe86f=_0x33ab41['length'];_0x340e34<_0x2fe86f;_0x340e34++){_0x5c9697+='%'+('00'+_0x33ab41['charCodeAt'](_0x340e34)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5c9697);};_0x1ea7['jSRuuR']=_0x2cb8e8,_0x1ea7['uMDjrX']={},_0x1ea7['ytlJfN']=!![];}const _0x5b09e5=_0x379988[0x0],_0x899add=_0x36ff08+_0x5b09e5,_0x5e401d=_0x1ea7['uMDjrX'][_0x899add];return!_0x5e401d?(_0x1ea7be=_0x1ea7['jSRuuR'](_0x1ea7be),_0x1ea7['uMDjrX'][_0x899add]=_0x1ea7be):_0x1ea7be=_0x5e401d,_0x1ea7be;}async function saveBinding(){const _0x3813d0=_0x4a1b45,_0x322198=document[_0x3813d0(0x22b)](_0x3813d0(0x1ca))['value'],_0x277c5c=document['getElementById'](_0x3813d0(0x22e))[_0x3813d0(0x21b)];if(!_0x322198||!_0x277c5c||!state[_0x3813d0(0x1ac)])return;const _0x200b1d=document[_0x3813d0(0x22b)]('save-binding-btn');_0x200b1d[_0x3813d0(0x232)]=!![],_0x200b1d[_0x3813d0(0x21f)]='Adding…';try{await API[_0x3813d0(0x1ba)]({'subject_type':_0x3813d0(0x1a9),'subject_id':state[_0x3813d0(0x1ac)],'role_id':_0x277c5c,'environment':_0x322198}),Utils[_0x3813d0(0x201)](_0x3813d0(0x21a),_0x3813d0(0x1fc)),document[_0x3813d0(0x22b)](_0x3813d0(0x210))[_0x3813d0(0x1a2)]=!![],document[_0x3813d0(0x22b)](_0x3813d0(0x1af))['hidden']=![],await loadTeamBindings(state[_0x3813d0(0x1ac)]);}catch(_0x3de743){Utils[_0x3813d0(0x201)](_0x3de743['message'],'error');}finally{_0x200b1d[_0x3813d0(0x232)]=![],_0x200b1d['textContent']=_0x3813d0(0x213);}}window[_0x4a1b45(0x20d)]=async function(_0x1dc8fb){const _0x3a18fd=_0x4a1b45;try{await API[_0x3a18fd(0x21d)](_0x1dc8fb),Utils[_0x3a18fd(0x201)](_0x3a18fd(0x1d3),_0x3a18fd(0x1fc)),await loadTeamBindings(state[_0x3a18fd(0x1ac)]);}catch(_0x5be23a){Utils[_0x3a18fd(0x201)](_0x5be23a[_0x3a18fd(0x19b)],_0x3a18fd(0x237));}};async function saveTeam(){const _0x19e23c=_0x4a1b45,_0x50b84e=document[_0x19e23c(0x22b)]('team-name')['value']['trim'](),_0x386233=document[_0x19e23c(0x22b)]('team-description')[_0x19e23c(0x21b)][_0x19e23c(0x1c9)](),_0x2f6d28=document['getElementById'](_0x19e23c(0x195)),_0x5a823f=document[_0x19e23c(0x22b)](_0x19e23c(0x216));if(!_0x50b84e){_0x2f6d28[_0x19e23c(0x21f)]=_0x19e23c(0x1d6),_0x2f6d28['hidden']=![];return;}_0x2f6d28[_0x19e23c(0x1a2)]=!![];const _0x375f47=_0x5a823f[_0x19e23c(0x21f)];_0x5a823f['disabled']=!![],_0x5a823f[_0x19e23c(0x21f)]=state['editingTeamId']?_0x19e23c(0x239):_0x19e23c(0x20a);try{if(state[_0x19e23c(0x1ac)]){const {team:_0x5e131b}=await API[_0x19e23c(0x241)](state[_0x19e23c(0x1ac)],{'name':_0x50b84e,'description':_0x386233});syncTeamInState(_0x5e131b),document[_0x19e23c(0x22b)](_0x19e23c(0x1e2))[_0x19e23c(0x21f)]=_0x5e131b['name'],Utils[_0x19e23c(0x201)](_0x19e23c(0x1f1),_0x19e23c(0x1fc));}else await API[_0x19e23c(0x23e)]({'name':_0x50b84e,'description':_0x386233}),Utils[_0x19e23c(0x201)](_0x19e23c(0x1cc),'success'),hideTeamModal(),await loadTeams();state[_0x19e23c(0x1ac)]&&(_0x5a823f['disabled']=![],_0x5a823f[_0x19e23c(0x21f)]=_0x375f47);}catch(_0x5b7a00){_0x2f6d28[_0x19e23c(0x21f)]=_0x5b7a00[_0x19e23c(0x19b)],_0x2f6d28['hidden']=![],_0x5a823f[_0x19e23c(0x232)]=![],_0x5a823f['textContent']=_0x375f47;}}window[_0x4a1b45(0x1e6)]=function(_0x55e2ee){const _0x3dd710=_0x4a1b45,_0x428065=state['teams'][_0x3dd710(0x1d9)](_0x525907=>_0x525907['id']===_0x55e2ee);if(!_0x428065)return;state[_0x3dd710(0x215)]=_0x55e2ee,document[_0x3dd710(0x22b)](_0x3dd710(0x196))[_0x3dd710(0x21f)]=_0x428065[_0x3dd710(0x1c1)],document[_0x3dd710(0x22b)](_0x3dd710(0x1ab))[_0x3dd710(0x1a2)]=![];};function hideDeleteModal(){const _0x21dcf7=_0x4a1b45;document['getElementById']('delete-team-modal')[_0x21dcf7(0x1a2)]=!![],state[_0x21dcf7(0x215)]=null;}async function confirmDeleteTeam(){const _0x5ea829=_0x4a1b45;if(!state[_0x5ea829(0x215)])return;const _0x14ab53=document[_0x5ea829(0x22b)](_0x5ea829(0x1eb));_0x14ab53[_0x5ea829(0x232)]=!![],_0x14ab53['textContent']='Deleting…';try{await API[_0x5ea829(0x1e6)](state[_0x5ea829(0x215)]),Utils[_0x5ea829(0x201)](_0x5ea829(0x1e1),_0x5ea829(0x1fc)),hideDeleteModal(),await loadTeams();}catch(_0x261ed7){Utils['showToast'](_0x5ea829(0x1bc)+_0x261ed7[_0x5ea829(0x19b)],_0x5ea829(0x237)),_0x14ab53[_0x5ea829(0x232)]=![],_0x14ab53['textContent']=_0x5ea829(0x1cf);}}function syncTeamInState(_0x5ec009){const _0x1410df=_0x4a1b45,_0x18c758=state[_0x1410df(0x223)][_0x1410df(0x1f9)](_0x3328aa=>_0x3328aa['id']===_0x5ec009['id']);if(_0x18c758>=0x0)state['teams'][_0x18c758]=_0x5ec009;renderTeams();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x15b2cd=_0x229a;(function(_0x2204f2,_0x2d6f4c){const _0x4eedb1=_0x229a,_0x2f6621=_0x2204f2();while(!![]){try{const _0x48553d=parseInt(_0x4eedb1(0x16c))/0x1+parseInt(_0x4eedb1(0x192))/0x2*(parseInt(_0x4eedb1(0x183))/0x3)+-parseInt(_0x4eedb1(0x163))/0x4+-parseInt(_0x4eedb1(0x185))/0x5*(parseInt(_0x4eedb1(0x15b))/0x6)+-parseInt(_0x4eedb1(0x157))/0x7+parseInt(_0x4eedb1(0x16b))/0x8+-parseInt(_0x4eedb1(0x15e))/0x9*(-parseInt(_0x4eedb1(0x16f))/0xa);if(_0x48553d===_0x2d6f4c)break;else _0x2f6621['push'](_0x2f6621['shift']());}catch(_0x316deb){_0x2f6621['push'](_0x2f6621['shift']());}}}(_0x97a6,0xb294e));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';function _0x97a6(){const _0x3e0972=['nte1mdmXmezlsefuva','B25eyxrH','C2XPy2u','B2jZzxj2zq','C2vHCMnOugfYyw1Z','Aw5MBW','z2v0q29UDgfPBMvY','ywrKrxzLBNrmAxn0zw5LCG','imk3ienVBw1HBMqG','q29UBMvJDgLVBIbLCNjVCG','C3vIC3rYAw5N','twLZC2LUzYbJB250ywLUzxiGAwrLBNrPzMLLCG','BMfTzq','Dhj1zq','zM9JDxm','y29UDgfPBMvYswq','C3rYAw5N','y29UBMvJDgvK','t1bftG','Dgv4DenVBNrLBNq','m2TfyLDtAq','DMfYAwfUDa','nwjpBKLyva','zNvSBenVBNrHAw5LCKLK','uNvUBMLUzZOG','y3jLyxrLzef0','rw52AxjVBM1LBNqG','C2vUza','ChjVDg9JB2W','CM93CW','D3nZ','zgvMyxvSDefNzw50','zMLUza','y29SCW','i2uYztHMma','mtiYndC0mND1u3Dmwa','CMvZAxPL','zxjYB3i','C3rHCNrZv2L0Aa','q29UDgfPBMvYia','y2XVC2u','imk3ifn0yxj0zwqG','C3vJy2vZCW','B3bLBG','iZbMmtCYyq','y2XPy2S','Dg9tDhjPBMC','zw52AxjVBM1LBNq','lNrLCM1PBMfSlwfJDgLVBNm','y21K','imk3iefNzw50ia','DgvYBwLUywWTC3rHDhvZ','zgf0yq','C3rHDhvZ','DhLWzq','y2f0y2G','z2v0q29UDgfPBMvYCW','y2XVC2uTDgvYBwLUywW','DhjPBq','mtK5nZuZne5Lv3Dgua','CMvHzhLtDgf0zq','y29UDgfPBMvYCW','zgf0yxnLDa','nZeZmdG2mMTmre1yAW','u2vZC2LVBIa','zML0','oxLiv2z2zq','CgfYC2u','CMvHC29U','vgvYBwLUywWGWRCG','Bg9HzefKzg9U','ndy0mJyZmMzwtuDgDW','sMv0qNjHAw5Zie1VBM8Sifngtw9UBY1szwD1BgfYlcbdB25ZB2XHCYWGBw9UB3nWywnL','zM9YBwf0uMvSyxrPDMvuAw1L','z2v0rwXLBwvUDej5swq','C3rYAw5NAwz5','Bg9JyxrPB24','BwvZC2fNzq','y29UDgfPBMvY','nZy0ndC4nfnWBMHUzG','mti4mJK2n1bNzuTXCG','uhjLCgfYAw5NoIa','C2vYDMvYx2v4zwm'];_0x97a6=function(){return _0x3e0972;};return _0x97a6();}const params=Utils['getQueryParams'](),containerId=params[_0x15b2cd(0x16a)],command=(params[_0x15b2cd(0x14d)]||'')[_0x15b2cd(0x156)](),useServerExec=params[_0x15b2cd(0x16e)]===_0x15b2cd(0x17c),titleEl=document['getElementById']('terminal-title'),subtitleEl=document[_0x15b2cd(0x166)]('terminal-subtitle'),statusEl=document[_0x15b2cd(0x166)](_0x15b2cd(0x14f)),terminalEl=document[_0x15b2cd(0x166)]('terminal-container'),closeBtn=document[_0x15b2cd(0x166)](_0x15b2cd(0x155));initTheme(),mountThemeToggle({'targetSelectors':[_0x15b2cd(0x14c)]});const getXtermTheme=()=>{const _0x4c42af=_0x15b2cd;return{'background':_0x4c42af(0x148),'foreground':'#e2e8f0','cursor':_0x4c42af(0x191),'cursorAccent':_0x4c42af(0x148)};};closeBtn&&closeBtn['addEventListener'](_0x15b2cd(0x149),()=>{window['close']();});if(!containerId){updateStatus(_0x15b2cd(0x17a),'error');throw new Error('container\x20parameter\x20is\x20required');}document['title']=_0x15b2cd(0x161)+containerId[_0x15b2cd(0x171)](0x0,0xc),enrichContainerDetails(containerId)[_0x15b2cd(0x153)](()=>{const _0x4f5a0e=_0x15b2cd;subtitleEl['textContent']=_0x4f5a0e(0x196)+containerId[_0x4f5a0e(0x179)](0x0,0xc);});const term=new Terminal({'convertEol':!![],'cursorBlink':!![],'fontFamily':_0x15b2cd(0x164),'fontSize':0x10,'theme':getXtermTheme()}),fitAddon=new FitAddon();term[_0x15b2cd(0x162)](fitAddon),term[_0x15b2cd(0x19a)](terminalEl),term[_0x15b2cd(0x17d)]();let isFitting=![];const doFit=()=>{const _0x5324d5=_0x15b2cd;if(isFitting)return;isFitting=!![],fitAddon[_0x5324d5(0x15d)](),sendResize(),term['scrollToBottom'](),setTimeout(()=>{isFitting=![];},0x32);};window['addEventListener'](_0x15b2cd(0x193),()=>{requestAnimationFrame(()=>{!isFitting&&doFit();});});const resizeObserver=new ResizeObserver(()=>{requestAnimationFrame(()=>{!isFitting&&doFit();});});resizeObserver[_0x15b2cd(0x172)](terminalEl);const socketProtocol=window[_0x15b2cd(0x168)][_0x15b2cd(0x18b)]==='https:'?_0x15b2cd(0x18d):'ws',socketUrl=new URL('/ws/containers/'+encodeURIComponent(containerId),window[_0x15b2cd(0x168)]['href']);command&&useServerExec&&socketUrl[_0x15b2cd(0x173)]['set']('cmd',command);socketUrl[_0x15b2cd(0x18b)]=socketProtocol+':';const socket=new WebSocket(socketUrl[_0x15b2cd(0x14a)]());term[_0x15b2cd(0x170)](_0x1ebb8a=>{const _0x10165a=_0x15b2cd;socket['readyState']===WebSocket['OPEN']&&socket[_0x10165a(0x18a)](JSON[_0x10165a(0x167)]({'type':_0x10165a(0x150),'data':_0x1ebb8a}));});let commandSent=![],hasReceivedOutput=![];function _0x229a(_0x11dde9,_0x20896a){_0x11dde9=_0x11dde9-0x148;const _0x97a624=_0x97a6();let _0x229a60=_0x97a624[_0x11dde9];if(_0x229a['mwYOHA']===undefined){var _0x333cb3=function(_0x36c1d8){const _0x2bdde1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1ebb8a='',_0x28b08e='';for(let _0x243429=0x0,_0x2b8d99,_0x5edc47,_0x25cca2=0x0;_0x5edc47=_0x36c1d8['charAt'](_0x25cca2++);~_0x5edc47&&(_0x2b8d99=_0x243429%0x4?_0x2b8d99*0x40+_0x5edc47:_0x5edc47,_0x243429++%0x4)?_0x1ebb8a+=String['fromCharCode'](0xff&_0x2b8d99>>(-0x2*_0x243429&0x6)):0x0){_0x5edc47=_0x2bdde1['indexOf'](_0x5edc47);}for(let _0x24ad84=0x0,_0x255ed8=_0x1ebb8a['length'];_0x24ad84<_0x255ed8;_0x24ad84++){_0x28b08e+='%'+('00'+_0x1ebb8a['charCodeAt'](_0x24ad84)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x28b08e);};_0x229a['xJzyVf']=_0x333cb3,_0x229a['PBrpUT']={},_0x229a['mwYOHA']=!![];}const _0x297a99=_0x97a624[0x0],_0x1f7701=_0x11dde9+_0x297a99,_0x234ab2=_0x229a['PBrpUT'][_0x1f7701];return!_0x234ab2?(_0x229a60=_0x229a['xJzyVf'](_0x229a60),_0x229a['PBrpUT'][_0x1f7701]=_0x229a60):_0x229a60=_0x234ab2,_0x229a60;}socket[_0x15b2cd(0x176)](_0x15b2cd(0x169),_0x28b08e=>{const _0x5003b5=_0x15b2cd;try{const _0x243429=JSON[_0x5003b5(0x15f)](_0x28b08e['data']);if(_0x243429[_0x5003b5(0x152)]==='data'&&typeof _0x243429[_0x5003b5(0x150)]===_0x5003b5(0x17f))term['write'](_0x243429[_0x5003b5(0x150)]),!hasReceivedOutput&&_0x243429[_0x5003b5(0x150)]['length']>0x0&&(hasReceivedOutput=!![],command&&!useServerExec&&!commandSent&&(commandSent=!![],setTimeout(()=>{const _0x4f26cf=_0x5003b5;socket['readyState']===WebSocket[_0x4f26cf(0x181)]&&socket[_0x4f26cf(0x18a)](JSON['stringify']({'type':_0x4f26cf(0x150),'data':command+'\x0d'}));},0xc8)));else{if(_0x243429[_0x5003b5(0x152)]===_0x5003b5(0x151)&&_0x243429[_0x5003b5(0x151)]){if(_0x243429[_0x5003b5(0x151)]===_0x5003b5(0x180)){if(command&&useServerExec)updateStatus('Running:\x20'+command,'info');else command?updateStatus(_0x5003b5(0x16d)+command,_0x5003b5(0x174)):updateStatus('Terminal\x20connected',_0x5003b5(0x199));doFit(),term['focus'](),command&&!useServerExec&&!commandSent&&setTimeout(()=>{const _0x5bfc92=_0x5003b5;!commandSent&&socket[_0x5bfc92(0x158)]===WebSocket[_0x5bfc92(0x181)]&&(commandSent=!![],socket['send'](JSON[_0x5bfc92(0x167)]({'type':_0x5bfc92(0x150),'data':command+'\x0d'})),updateStatus(_0x5bfc92(0x187)+command,_0x5bfc92(0x174)));},0x7d0);}else updateStatus(_0x5003b5(0x15c)+_0x243429[_0x5003b5(0x151)],_0x243429[_0x5003b5(0x151)]===_0x5003b5(0x180)?'success':_0x5003b5(0x174));}else _0x243429[_0x5003b5(0x152)]===_0x5003b5(0x194)&&_0x243429[_0x5003b5(0x169)]&&updateStatus(_0x243429[_0x5003b5(0x169)],_0x5003b5(0x194));}}catch(_0x2b8d99){console[_0x5003b5(0x194)]('Failed\x20to\x20parse\x20terminal\x20message',_0x2b8d99);}}),socket[_0x15b2cd(0x176)](_0x15b2cd(0x197),_0x5edc47=>{const _0x4be0ec=_0x15b2cd,_0x25cca2=_0x5edc47[_0x4be0ec(0x160)]||'Connection\x20closed';updateStatus(_0x25cca2,_0x5edc47['wasClean']?_0x4be0ec(0x174):'error');}),socket['addEventListener']('error',_0x24ad84=>{const _0x159f3d=_0x15b2cd;console[_0x159f3d(0x194)]('Terminal\x20websocket\x20error',_0x24ad84),updateStatus(_0x159f3d(0x178),_0x159f3d(0x194));});function sendResize(){const _0x1e0913=_0x15b2cd;if(socket[_0x1e0913(0x158)]!==WebSocket[_0x1e0913(0x181)])return;const _0x255ed8=term[_0x1e0913(0x190)],_0x4d3c87=term[_0x1e0913(0x18c)];socket['send'](JSON[_0x1e0913(0x167)]({'type':_0x1e0913(0x193),'cols':_0x255ed8,'rows':_0x4d3c87}));}function updateStatus(_0x2ae03a,_0x4d4970='info'){const _0x1af610=_0x15b2cd;if(!statusEl)return;statusEl[_0x1af610(0x182)]=_0x2ae03a,statusEl[_0x1af610(0x15a)][_0x1af610(0x184)]=_0x4d4970;}async function enrichContainerDetails(_0x481f06){const _0x25f7bd=_0x15b2cd;try{const _0x699c3c=await API[_0x25f7bd(0x175)](_0x481f06);updateTerminalDetails(_0x699c3c);}catch{try{const _0x5bb77b=await API[_0x25f7bd(0x154)](),_0x30662d=(_0x5bb77b[_0x25f7bd(0x159)]||[])[_0x25f7bd(0x18f)](_0x47e701=>_0x47e701[_0x25f7bd(0x17e)]===_0x481f06||_0x47e701[_0x25f7bd(0x17b)]===_0x481f06||_0x47e701[_0x25f7bd(0x186)]?.[_0x25f7bd(0x195)](_0x481f06));if(_0x30662d){updateTerminalDetails(_0x30662d);return;}subtitleEl[_0x25f7bd(0x182)]='Container\x20'+_0x481f06[_0x25f7bd(0x179)](0x0,0xc);}catch{subtitleEl[_0x25f7bd(0x182)]='Container\x20'+_0x481f06[_0x25f7bd(0x179)](0x0,0xc);}}}function updateTerminalDetails(_0x4f7d46){const _0x18d635=_0x15b2cd,_0x126138=_0x4f7d46['containerId']||_0x4f7d46['name']||_0x4f7d46[_0x18d635(0x186)]||containerId,_0x44cd8d=_0x4f7d46[_0x18d635(0x14b)]?_0x18d635(0x189)+_0x4f7d46['environment']:'Environment\x20unknown',_0x5e5535=_0x4f7d46[_0x18d635(0x18e)]?_0x18d635(0x14e)+_0x4f7d46['defaultAgent']:'',_0x42f142=_0x4f7d46[_0x18d635(0x188)]?_0x18d635(0x198)+Utils[_0x18d635(0x165)](_0x4f7d46[_0x18d635(0x188)]):'';titleEl[_0x18d635(0x182)]=_0x18d635(0x161)+_0x126138[_0x18d635(0x179)](0x0,0xc);const _0x14099c=command?_0x18d635(0x177)+command:'';subtitleEl[_0x18d635(0x182)]=''+_0x44cd8d+_0x5e5535+_0x42f142+_0x14099c;}
|
|
1
|
+
const _0x37e5e5=_0x3fd4;(function(_0x3231eb,_0x50e34b){const _0x2146e4=_0x3fd4,_0x1e5b18=_0x3231eb();while(!![]){try{const _0x3f0f59=-parseInt(_0x2146e4(0x162))/0x1*(parseInt(_0x2146e4(0x177))/0x2)+parseInt(_0x2146e4(0x124))/0x3+-parseInt(_0x2146e4(0x131))/0x4+parseInt(_0x2146e4(0x155))/0x5*(-parseInt(_0x2146e4(0x139))/0x6)+parseInt(_0x2146e4(0x161))/0x7*(-parseInt(_0x2146e4(0x164))/0x8)+-parseInt(_0x2146e4(0x13c))/0x9*(parseInt(_0x2146e4(0x129))/0xa)+parseInt(_0x2146e4(0x159))/0xb*(parseInt(_0x2146e4(0x15e))/0xc);if(_0x3f0f59===_0x50e34b)break;else _0x1e5b18['push'](_0x1e5b18['shift']());}catch(_0x4ea026){_0x1e5b18['push'](_0x1e5b18['shift']());}}}(_0x4505,0xe0ad2));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';function _0x3fd4(_0x4deaf2,_0x129d49){_0x4deaf2=_0x4deaf2-0x123;const _0x450571=_0x4505();let _0x3fd41d=_0x450571[_0x4deaf2];if(_0x3fd4['XzMdvo']===undefined){var _0x1f5272=function(_0x2d837d){const _0x46509f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x588325='',_0x3acbf4='';for(let _0x2b6cf1=0x0,_0x3bbe0e,_0xbf76f1,_0x20adb4=0x0;_0xbf76f1=_0x2d837d['charAt'](_0x20adb4++);~_0xbf76f1&&(_0x3bbe0e=_0x2b6cf1%0x4?_0x3bbe0e*0x40+_0xbf76f1:_0xbf76f1,_0x2b6cf1++%0x4)?_0x588325+=String['fromCharCode'](0xff&_0x3bbe0e>>(-0x2*_0x2b6cf1&0x6)):0x0){_0xbf76f1=_0x46509f['indexOf'](_0xbf76f1);}for(let _0x2e492a=0x0,_0x4b38b9=_0x588325['length'];_0x2e492a<_0x4b38b9;_0x2e492a++){_0x3acbf4+='%'+('00'+_0x588325['charCodeAt'](_0x2e492a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3acbf4);};_0x3fd4['yZivoC']=_0x1f5272,_0x3fd4['nLgHcS']={},_0x3fd4['XzMdvo']=!![];}const _0x255aea=_0x450571[0x0],_0x5e993b=_0x4deaf2+_0x255aea,_0x3ef3b5=_0x3fd4['nLgHcS'][_0x5e993b];return!_0x3ef3b5?(_0x3fd41d=_0x3fd4['yZivoC'](_0x3fd41d),_0x3fd4['nLgHcS'][_0x5e993b]=_0x3fd41d):_0x3fd41d=_0x3ef3b5,_0x3fd41d;}const params=Utils[_0x37e5e5(0x127)](),containerId=params[_0x37e5e5(0x140)],command=(params[_0x37e5e5(0x160)]||'')[_0x37e5e5(0x168)](),useServerExec=params['server_exec']===_0x37e5e5(0x16d),titleEl=document[_0x37e5e5(0x14a)](_0x37e5e5(0x143)),subtitleEl=document[_0x37e5e5(0x14a)](_0x37e5e5(0x175)),statusEl=document[_0x37e5e5(0x14a)](_0x37e5e5(0x16e)),terminalEl=document[_0x37e5e5(0x14a)]('terminal-container'),closeBtn=document[_0x37e5e5(0x14a)]('close-terminal');initTheme(),mountThemeToggle({'targetSelectors':[_0x37e5e5(0x133)]});const getXtermTheme=()=>{const _0x2cb86f=_0x37e5e5;return{'background':_0x2cb86f(0x147),'foreground':_0x2cb86f(0x144),'cursor':_0x2cb86f(0x144),'cursorAccent':_0x2cb86f(0x147)};};closeBtn&&closeBtn[_0x37e5e5(0x158)]('click',()=>{const _0x17053d=_0x37e5e5;window[_0x17053d(0x13d)]();});if(!containerId){updateStatus(_0x37e5e5(0x173),_0x37e5e5(0x12b));throw new Error(_0x37e5e5(0x157));}function _0x4505(){const _0x56e5a9=['DMfYAwfUDa','mJu4odbmBuXpve8','zMLUza','zxjYB3i','C2vUza','C3vIC3rYAw5N','zgf0yq','y29UDgfPBMvYswq','imk3ifn0yxj0zwqG','nJGYmJe1mLDZs0D3uG','DhLWzq','lNrLCM1PBMfSlwfJDgLVBNm','zgf0yxnLDa','zM9JDxm','q29UBMvJDgLVBIbLCNjVCG','CMvHzhLtDgf0zq','l3DZl2nVBNrHAw5LCNmV','mtqWmJjHtvniDwG','u2vZC2LVBIa','Aw5MBW','ndG2meDWDxfjtG','y2XVC2u','Dgv4DenVBNrLBNq','y3jLyxrLzef0','y29UDgfPBMvY','C2nYB2XSvg9cB3r0B20','zgvMyxvSDefNzw50','DgvYBwLUywWTDgL0Bgu','i2uYztHMma','BwvZC2fNzq','uhjLCgfYAw5NoIa','iZbMmtCYyq','DgL0Bgu','vgvYBwLUywWGWRCG','z2v0rwXLBwvUDej5swq','rMfPBgvKihrVihbHCNnLihrLCM1PBMfSig1LC3nHz2u','C3rYAw5NAwz5','vgvYBwLUywWGD2vIC29JA2v0igvYCM9Y','q29UBMvJDgLVBIbJBg9Zzwq','y2f0y2G','z2v0q29UDgfPBMvY','z2v0q29UDgfPBMvYCW','zw52AxjVBM1LBNq','y29UDgfPBMvYCW','B3bLBG','mtaWnxPltKjkDa','sMv0qNjHAw5Zie1VBM8Sifngtw9UBY1szwD1BgfYlcbdB25ZB2XHCYWGBw9UB3nWywnL','y29UDgfPBMvYihbHCMfTzxrLCIbPCYbYzxf1AxjLza','ywrKrxzLBNrmAxn0zw5LCG','mJmXmdK4odLOsenHyxi','rw52AxjVBM1LBNqGDw5RBM93BG','B25eyxrH','D2fZq2XLyw4','zML0','mZzhDwThD2C','rw52AxjVBM1LBNqG','y21K','mJeWndLwqKj5r1C','mJjmvfbyC1i','C2v0','mJy0oe1YqwPKvW','vgvYBwLUywWGy29UBMvJDgvK','B2jZzxj2zq','Bg9JyxrPB24','DhjPBq','zM9YBwf0uMvSyxrPDMvuAw1L','zNvSBenVBNrHAw5LCKLK','BMfTzq','y29UBMvJDgvK','Dhj1zq','DgvYBwLUywWTC3rHDhvZ','CgfYC2u','ChjVDg9JB2W','t1bftG','Bg9HzefKzg9U','twLZC2LUzYbJB250ywLUzxiGAwrLBNrPzMLLCG','imk3ienVBw1HBMqG','DgvYBwLUywWTC3vIDgL0Bgu','q29UDgfPBMvYia','mte5nJe4EefurLvd','C3rHDhvZ','CMvZAxPL','y29SCW','C2vHCMnOugfYyw1Z','mtuWndq2mxrtB01XuW','C3vJy2vZCW','uNvUBMLUzZOG','z2v0uxvLCNLqyxjHBxm'];_0x4505=function(){return _0x56e5a9;};return _0x4505();}document[_0x37e5e5(0x148)]=_0x37e5e5(0x149)+containerId['slice'](0x0,0xc),enrichContainerDetails(containerId)[_0x37e5e5(0x14f)](()=>{const _0x23b35b=_0x37e5e5;subtitleEl['textContent']=_0x23b35b(0x176)+containerId[_0x23b35b(0x12d)](0x0,0xc);});const term=new Terminal({'convertEol':!![],'cursorBlink':!![],'fontFamily':_0x37e5e5(0x156),'fontSize':0x10,'theme':getXtermTheme()}),fitAddon=new FitAddon();term[_0x37e5e5(0x172)](fitAddon),term[_0x37e5e5(0x154)](terminalEl),term['focus']();let isFitting=![];const doFit=()=>{const _0x3b3695=_0x37e5e5;if(isFitting)return;isFitting=!![],fitAddon[_0x3b3695(0x15d)](),sendResize(),term[_0x3b3695(0x141)](),setTimeout(()=>{isFitting=![];},0x32);};window['addEventListener'](_0x37e5e5(0x179),()=>{requestAnimationFrame(()=>{!isFitting&&doFit();});});const resizeObserver=new ResizeObserver(()=>{requestAnimationFrame(()=>{!isFitting&&doFit();});});resizeObserver[_0x37e5e5(0x166)](terminalEl);const socketProtocol=window['location'][_0x37e5e5(0x170)]==='https:'?'wss':'ws',socketUrl=new URL(_0x37e5e5(0x138)+encodeURIComponent(containerId),window[_0x37e5e5(0x167)]['href']);command&&useServerExec&&socketUrl[_0x37e5e5(0x123)][_0x37e5e5(0x163)](_0x37e5e5(0x160),command);socketUrl[_0x37e5e5(0x170)]=socketProtocol+':';const socket=new WebSocket(socketUrl['toString']());term[_0x37e5e5(0x15b)](_0x588325=>{const _0x5e6975=_0x37e5e5;socket[_0x5e6975(0x137)]===WebSocket[_0x5e6975(0x171)]&&socket['send'](JSON['stringify']({'type':_0x5e6975(0x12e),'data':_0x588325}));});let commandSent=![],hasReceivedOutput=![];socket[_0x37e5e5(0x158)](_0x37e5e5(0x145),_0x3acbf4=>{const _0x52697b=_0x37e5e5;try{const _0x2b6cf1=JSON[_0x52697b(0x16f)](_0x3acbf4['data']);if(_0x2b6cf1[_0x52697b(0x132)]===_0x52697b(0x12e)&&typeof _0x2b6cf1['data']==='string')term['write'](_0x2b6cf1[_0x52697b(0x12e)]),!hasReceivedOutput&&_0x2b6cf1[_0x52697b(0x12e)]['length']>0x0&&(hasReceivedOutput=!![],command&&!useServerExec&&!commandSent&&(commandSent=!![],setTimeout(()=>{const _0x15c2ff=_0x52697b;socket[_0x15c2ff(0x137)]===WebSocket[_0x15c2ff(0x171)]&&socket[_0x15c2ff(0x12c)](JSON[_0x15c2ff(0x14c)]({'type':_0x15c2ff(0x12e),'data':command+'\x0d'}));},0xc8)));else{if(_0x2b6cf1['type']==='status'&&_0x2b6cf1[_0x52697b(0x178)]){if(_0x2b6cf1[_0x52697b(0x178)]===_0x52697b(0x16c)){if(command&&useServerExec)updateStatus(_0x52697b(0x126)+command,_0x52697b(0x13b));else command?updateStatus(_0x52697b(0x146)+command,'info'):updateStatus(_0x52697b(0x165),_0x52697b(0x125));doFit(),term[_0x52697b(0x135)](),command&&!useServerExec&&!commandSent&&setTimeout(()=>{const _0x2abc9f=_0x52697b;!commandSent&&socket[_0x2abc9f(0x137)]===WebSocket[_0x2abc9f(0x171)]&&(commandSent=!![],socket[_0x2abc9f(0x12c)](JSON[_0x2abc9f(0x14c)]({'type':_0x2abc9f(0x12e),'data':command+'\x0d'})),updateStatus(_0x2abc9f(0x126)+command,_0x2abc9f(0x13b)));},0x7d0);}else updateStatus(_0x52697b(0x13a)+_0x2b6cf1[_0x52697b(0x178)],_0x2b6cf1['status']===_0x52697b(0x16c)?'success':_0x52697b(0x13b));}else _0x2b6cf1['type']===_0x52697b(0x12b)&&_0x2b6cf1[_0x52697b(0x145)]&&updateStatus(_0x2b6cf1[_0x52697b(0x145)],_0x52697b(0x12b));}}catch(_0x3bbe0e){console[_0x52697b(0x12b)](_0x52697b(0x14b),_0x3bbe0e);}}),socket[_0x37e5e5(0x158)](_0x37e5e5(0x13d),_0xbf76f1=>{const _0xbd5eed=_0x37e5e5,_0x20adb4=_0xbf76f1['reason']||_0xbd5eed(0x14e);updateStatus(_0x20adb4,_0xbf76f1[_0xbd5eed(0x15c)]?'info':_0xbd5eed(0x12b));}),socket['addEventListener'](_0x37e5e5(0x12b),_0x2e492a=>{const _0x1578cc=_0x37e5e5;console[_0x1578cc(0x12b)](_0x1578cc(0x14d),_0x2e492a),updateStatus(_0x1578cc(0x136),_0x1578cc(0x12b));});function sendResize(){const _0x2e822a=_0x37e5e5;if(socket['readyState']!==WebSocket[_0x2e822a(0x171)])return;const _0x4b38b9=term[_0x2e822a(0x17a)],_0x3b1692=term['rows'];socket[_0x2e822a(0x12c)](JSON[_0x2e822a(0x14c)]({'type':'resize','cols':_0x4b38b9,'rows':_0x3b1692}));}function updateStatus(_0x1ad434,_0x2dec2b=_0x37e5e5(0x13b)){const _0x1911a3=_0x37e5e5;if(!statusEl)return;statusEl[_0x1911a3(0x13e)]=_0x1ad434,statusEl[_0x1911a3(0x134)][_0x1911a3(0x128)]=_0x2dec2b;}async function enrichContainerDetails(_0x2fad09){const _0x2fe768=_0x37e5e5;try{const _0x2f407f=await API[_0x2fe768(0x150)](_0x2fad09);updateTerminalDetails(_0x2f407f);}catch{try{const _0x1479dd=await API[_0x2fe768(0x151)](),_0x25436c=(_0x1479dd[_0x2fe768(0x153)]||[])[_0x2fe768(0x12a)](_0x1d7d42=>_0x1d7d42['containerId']===_0x2fad09||_0x1d7d42['name']===_0x2fad09||_0x1d7d42[_0x2fe768(0x16a)]?.['startsWith'](_0x2fad09));if(_0x25436c){updateTerminalDetails(_0x25436c);return;}subtitleEl[_0x2fe768(0x13e)]=_0x2fe768(0x176)+_0x2fad09[_0x2fe768(0x12d)](0x0,0xc);}catch{subtitleEl['textContent']=_0x2fe768(0x176)+_0x2fad09['substring'](0x0,0xc);}}}function updateTerminalDetails(_0x5bbc6b){const _0x4244ed=_0x37e5e5,_0x226f7d=_0x5bbc6b[_0x4244ed(0x12f)]||_0x5bbc6b[_0x4244ed(0x16b)]||_0x5bbc6b['fullContainerId']||containerId,_0x32f3de=_0x5bbc6b[_0x4244ed(0x152)]?_0x4244ed(0x15f)+_0x5bbc6b['environment']:_0x4244ed(0x15a),_0x36d138=_0x5bbc6b[_0x4244ed(0x142)]?'\x20·\x20Agent\x20'+_0x5bbc6b[_0x4244ed(0x142)]:'',_0x58d341=_0x5bbc6b['createdAt']?_0x4244ed(0x130)+Utils[_0x4244ed(0x169)](_0x5bbc6b[_0x4244ed(0x13f)]):'';titleEl['textContent']=_0x4244ed(0x149)+_0x226f7d[_0x4244ed(0x12d)](0x0,0xc);const _0x803695=command?_0x4244ed(0x174)+command:'';subtitleEl[_0x4244ed(0x13e)]=''+_0x32f3de+_0x36d138+_0x58d341+_0x803695;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x4fe80d=_0x40ff;(function(_0x1d35ad,_0xd4f263){const _0x3450bc=_0x40ff,_0x286773=_0x1d35ad();while(!![]){try{const _0x423a31=-parseInt(_0x3450bc(0x1f3))/0x1*(-parseInt(_0x3450bc(0x1d7))/0x2)+parseInt(_0x3450bc(0x1d4))/0x3*(-parseInt(_0x3450bc(0x1fc))/0x4)+-parseInt(_0x3450bc(0x1d8))/0x5*(parseInt(_0x3450bc(0x1d0))/0x6)+-parseInt(_0x3450bc(0x1f7))/0x7+parseInt(_0x3450bc(0x1e1))/0x8*(parseInt(_0x3450bc(0x1dd))/0x9)+-parseInt(_0x3450bc(0x1fd))/0xa*(-parseInt(_0x3450bc(0x204))/0xb)+-parseInt(_0x3450bc(0x1f6))/0xc*(-parseInt(_0x3450bc(0x1cd))/0xd);if(_0x423a31===_0xd4f263)break;else _0x286773['push'](_0x286773['shift']());}catch(_0x498a49){_0x286773['push'](_0x286773['shift']());}}}(_0x1ec7,0x4843a));const THEME_STORAGE_KEY='profound-coder-theme',THEME_CHANGE_EVENT=_0x4fe80d(0x1de),VALID_THEMES=new Set(['light',_0x4fe80d(0x1e7)]),DEFAULT_TARGET_SELECTORS=[_0x4fe80d(0x1dc),_0x4fe80d(0x1df),_0x4fe80d(0x1d5),_0x4fe80d(0x1ed),'.top-bar'];function readStoredTheme(){const _0x3eba4a=_0x4fe80d;try{const _0x529528=localStorage[_0x3eba4a(0x1ff)](THEME_STORAGE_KEY);if(_0x529528&&VALID_THEMES[_0x3eba4a(0x1db)](_0x529528))return _0x529528;}catch(_0x25d5b1){console[_0x3eba4a(0x1f1)](_0x3eba4a(0x1d2),_0x25d5b1);}return null;}function _0x40ff(_0x1ccaa3,_0x44470e){_0x1ccaa3=_0x1ccaa3-0x1cd;const _0x1ec7a9=_0x1ec7();let _0x40ffd6=_0x1ec7a9[_0x1ccaa3];if(_0x40ff['WfhcjO']===undefined){var _0x5ef443=function(_0x1ae41c){const _0x5187e0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x529528='',_0x25d5b1='';for(let _0x535fe1=0x0,_0x86d3ef,_0x1c3245,_0x3f19df=0x0;_0x1c3245=_0x1ae41c['charAt'](_0x3f19df++);~_0x1c3245&&(_0x86d3ef=_0x535fe1%0x4?_0x86d3ef*0x40+_0x1c3245:_0x1c3245,_0x535fe1++%0x4)?_0x529528+=String['fromCharCode'](0xff&_0x86d3ef>>(-0x2*_0x535fe1&0x6)):0x0){_0x1c3245=_0x5187e0['indexOf'](_0x1c3245);}for(let _0xd81757=0x0,_0x4683f6=_0x529528['length'];_0xd81757<_0x4683f6;_0xd81757++){_0x25d5b1+='%'+('00'+_0x529528['charCodeAt'](_0xd81757)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x25d5b1);};_0x40ff['lEksPR']=_0x5ef443,_0x40ff['FBYggW']={},_0x40ff['WfhcjO']=!![];}const _0x53c82a=_0x1ec7a9[0x0],_0x21ed4c=_0x1ccaa3+_0x53c82a,_0x3603bf=_0x40ff['FBYggW'][_0x21ed4c];return!_0x3603bf?(_0x40ffd6=_0x40ff['lEksPR'](_0x40ffd6),_0x40ff['FBYggW'][_0x21ed4c]=_0x40ffd6):_0x40ffd6=_0x3603bf,_0x40ffd6;}export function getPreferredTheme(){const _0x246638=_0x4fe80d,_0x535fe1=readStoredTheme();if(_0x535fe1)return _0x535fe1;const _0x86d3ef=window['matchMedia']&&window[_0x246638(0x1f8)](_0x246638(0x1f9))['matches'];return _0x86d3ef?_0x246638(0x1e7):_0x246638(0x207);}export function getCurrentTheme(){const _0x560ca1=_0x4fe80d,_0x1c3245=document['documentElement']['dataset'][_0x560ca1(0x1f0)];if(_0x1c3245&&VALID_THEMES[_0x560ca1(0x1db)](_0x1c3245))return _0x1c3245;return getPreferredTheme();}export function applyTheme(_0x3f19df,{persist:persist=!![],emitEvent:emitEvent=!![]}={}){const _0x1873ab=_0x4fe80d,_0xd81757=VALID_THEMES[_0x1873ab(0x1db)](_0x3f19df)?_0x3f19df:'light';document[_0x1873ab(0x1ea)]['dataset'][_0x1873ab(0x1f0)]=_0xd81757,document[_0x1873ab(0x1ea)][_0x1873ab(0x1f2)][_0x1873ab(0x1d6)]=_0xd81757===_0x1873ab(0x1e7)?_0x1873ab(0x1e7):'light';if(persist)try{localStorage[_0x1873ab(0x1da)](THEME_STORAGE_KEY,_0xd81757);}catch(_0x4683f6){console[_0x1873ab(0x1f1)](_0x1873ab(0x1d1),_0x4683f6);}return emitEvent&&window[_0x1873ab(0x1ec)](new CustomEvent(THEME_CHANGE_EVENT,{'detail':{'theme':_0xd81757}})),_0xd81757;}export function initTheme(_0x2042d2={}){const {emitEvent:emitEvent=![]}=_0x2042d2;return applyTheme(getPreferredTheme(),{'persist':![],'emitEvent':emitEvent});}export function toggleTheme(){const _0x1e75e7=_0x4fe80d,_0x165597=getCurrentTheme()===_0x1e75e7(0x1e7)?_0x1e75e7(0x207):_0x1e75e7(0x1e7);return applyTheme(_0x165597);}function _0x1ec7(){const _0x1a24e3=['y29SB3jty2HLBwu','ndH4twPxA3a','nxviCLjitG','ywrKrxzLBNrmAxn0zw5LCG','C2v0sxrLBq','AgfZ','i3rOzw1LlxrVz2DSzs1JB250ywLUzxi','mtaWnJKWmMnNzendsa','ChjVzM91BMqTDgHLBwuTy2HHBMDL','lMHLywrLCI1Hy3rPB25Z','C2v0qxr0CMLIDxrL','mtzkAhffq1y','yxbWzw5Kq2HPBgq','CxvLCNLtzwXLy3rVCG','ohb4','Aw5Uzxjive1m','y2XHC3noyw1L','zgfYAW','DgHLBwuTAwnVBG','CMvTB3zLrxzLBNrmAxn0zw5LCG','zg9JDw1LBNrfBgvTzw50','zgv0ywLS','zgLZCgf0y2HfDMvUDa','lNrLCM1PBMfSlwfJDgLVBNm','C3bHBG','yNv0Dg9U','DgHLBwu','D2fYBG','C3r5Bgu','mtqZmdfTCMLKyKq','zgf0yxnLDa','y2vUDgvY','mJi4uLHTq3zy','mZe0ndGYmeHZr0Xirq','Bwf0y2HnzwrPyq','khbYzwzLCNmTy29SB3iTC2nOzw1LoIbKyxjRkq','D2LKDgG','DgHLBwuTDg9Nz2XLlwj0BG','ng91wgffDa','nde0mtKWmffizvbXyG','yM9KEq','z2v0sxrLBq','BwfW','zMfSC2u','ywrK','mZzWEa','mtf5zLv1D2u','zMXLEa','CgfKzgLUzW','BgLNAhq','u3DPDgnOihrVigXPz2H0ig1Vzgu','yxbWzw5K','phn2zYb4BwXUCZ0IAhr0CdOVl3D3DY53mY5VCMCVmJaWmc9ZDMCIihDPzhrOpsiYmciGAgvPz2H0psiYmciGDMLLD0jVEd0ImcaWidi0idi0iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiIbZDhjVA2uTBgLUzwnHCd0ICM91BMqIihn0CM9Rzs1SAw5LAM9PBJ0ICM91BMqIpJXWyxrOigq9iK0YmsaXmI43oue5idKGmcaXideGmteUmJeGmYa3idCGmcaWidaGmJeGmtiUnZL6iJ48l3bHDgG+pc9ZDMC+','y3jLyxrLrwXLBwvUDa','zgLZCgXHEq','y2XPy2S','BgLUzuHLAwDODa','zMLUza','mJa2mJe5Avzrtw1N','u3DPDgnOihrVigrHCMSGBw9Kzq','phn2zYb4BwXUCZ0IAhr0CdOVl3D3DY53mY5VCMCVmJaWmc9ZDMCIihDPzhrOpsiYmciGAgvPz2H0psiYmciGDMLLD0jVEd0ImcaWidi0idi0iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiIbZDhjVA2uTBgLUzwnHCd0ICM91BMqIihn0CM9Rzs1SAw5LAM9PBJ0ICM91BMqIpJXJAxjJBguGy3G9iJeYiIbJEt0ImtiIihi9iJuIpJWVy2LYy2XLpJXSAw5LihGXpsiXmIiGEte9iJeIihGYpsiXmIiGEti9iJmIpJWVBgLUzt48BgLUzsb4mt0ImtiIihKXpsiYmsiGEdi9iJeYiIb5mJ0ImJmIpJWVBgLUzt48BgLUzsb4mt0Inc4YmIiGEte9iJqUmJiIihGYpsi1lJy0iIb5mJ0Ins42nci+pc9SAw5LpJXSAw5LihGXpsiXoc4ZnIiGEte9iJe4lJm2iIb4mJ0ImtKUnZGIihKYpsiXos43oci+pc9SAw5LpJXSAw5LihGXpsiXiIb5mt0ImtiIihGYpsiZiIb5mJ0ImtiIpJWVBgLUzt48BgLUzsb4mt0ImJeIihKXpsiXmIiGEdi9iJiZiIb5mJ0ImtiIpJWVBgLUzt48BgLUzsb4mt0Inc4YmIiGEte9iJe5lJC4iIb4mJ0Ins42nciGEti9iJe4lJm2iJ48l2XPBMu+pgXPBMuGEde9iJe4lJm2iIb5mt0Ins42nciGEdi9iJe5lJC4iIb5mJ0Inc4YmIi+pc9SAw5LpJWVC3zNpG','mZm2nJG0sw1zugjO','w1rOzw1LxsbgywLSzwqGDg8GCgvYC2LZDcb0AgvTzsbWCMvMzxjLBMnLoG','w1rOzw1LxsbgywLSzwqGDg8GCMvHzcbZDg9YzwqGDgHLBwuGChjLzMvYzw5JztO','DgL0Bgu','mtq0mZu5n2H5s3rbCa','lNn0yxr1CY1Hy3rPB25Z'];_0x1ec7=function(){return _0x1a24e3;};return _0x1ec7();}export function onThemeChange(_0x2f26fd,{runImmediately:runImmediately=![]}={}){const _0x401b02=_0x4fe80d,_0x528991=_0x2edec3=>{const _0x18e651=_0x40ff;_0x2f26fd(_0x2edec3[_0x18e651(0x1eb)][_0x18e651(0x1f0)]);};return window[_0x401b02(0x1d9)](THEME_CHANGE_EVENT,_0x528991),runImmediately&&_0x2f26fd(getCurrentTheme()),()=>window[_0x401b02(0x1e9)](THEME_CHANGE_EVENT,_0x528991);}export function mountThemeToggle(_0x219eec={}){const _0x3eb169=_0x4fe80d,{targetSelectors:targetSelectors=DEFAULT_TARGET_SELECTORS}=_0x219eec,_0x494465=targetSelectors[_0x3eb169(0x200)](_0x28b068=>document[_0x3eb169(0x1e3)](_0x28b068))[_0x3eb169(0x20f)](Boolean),_0xbc0074=document['createElement'](_0x3eb169(0x1ef));_0xbc0074['type']=_0x3eb169(0x1ef),_0xbc0074[_0x3eb169(0x1e6)]='btn-ghost\x20theme-toggle-btn',_0xbc0074['id']=_0x3eb169(0x1fb),_0xbc0074[_0x3eb169(0x1e0)]('aria-pressed',_0x3eb169(0x201)),_0xbc0074['style'][_0x3eb169(0x206)]=_0x3eb169(0x1e4),_0xbc0074['style'][_0x3eb169(0x20e)]='0',_0xbc0074[_0x3eb169(0x1f2)][_0x3eb169(0x1fa)]=_0x3eb169(0x203),_0xbc0074['style']['height']='36px',_0xbc0074[_0x3eb169(0x1f2)][_0x3eb169(0x20c)]=_0x3eb169(0x205),_0xbc0074[_0x3eb169(0x1f2)]['alignItems']=_0x3eb169(0x1f5),_0xbc0074['style']['justifyContent']=_0x3eb169(0x1f5);const _0x4f56e6=document[_0x3eb169(0x20b)](_0x3eb169(0x1ee));_0x4f56e6[_0x3eb169(0x1e6)]=_0x3eb169(0x1e8),_0x4f56e6[_0x3eb169(0x1f2)][_0x3eb169(0x20c)]='flex',_0xbc0074[_0x3eb169(0x209)](_0x4f56e6);const _0xe51c0d=_0x3eb169(0x20a),_0x41acf2=_0x3eb169(0x1cf),_0x1f00c6=_0x256d1f=>{const _0x2c56d5=_0x3eb169,_0x10d788=_0x256d1f===_0x2c56d5(0x1e7);_0x4f56e6[_0x2c56d5(0x1e5)]=_0x10d788?_0xe51c0d:_0x41acf2,_0xbc0074[_0x2c56d5(0x1d3)]=_0x10d788?_0x2c56d5(0x208):_0x2c56d5(0x1ce),_0xbc0074[_0x2c56d5(0x1f4)][_0x2c56d5(0x1f0)]=_0x256d1f,_0xbc0074[_0x2c56d5(0x1e0)]('aria-pressed',String(_0x10d788));};return _0xbc0074[_0x3eb169(0x1d9)](_0x3eb169(0x20d),()=>{const _0x2b9623=_0x3eb169,_0x2298a5=getCurrentTheme()===_0x2b9623(0x1e7)?_0x2b9623(0x207):_0x2b9623(0x1e7);applyTheme(_0x2298a5);}),_0x494465?_0x494465[_0x3eb169(0x1e2)](_0xbc0074):(_0xbc0074['classList'][_0x3eb169(0x202)]('theme-toggle-floating'),document[_0x3eb169(0x1fe)][_0x3eb169(0x1e2)](_0xbc0074)),_0x1f00c6(initTheme()),onThemeChange(_0x1f00c6),_0xbc0074;}export{THEME_STORAGE_KEY,THEME_CHANGE_EVENT};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x1b5742=_0x4e82;(function(_0x679e28,_0x498266){const _0x55bf78=_0x4e82,_0x40f6e5=_0x679e28();while(!![]){try{const _0x3f68ac=parseInt(_0x55bf78(0x253))/0x1+-parseInt(_0x55bf78(0x1d5))/0x2+-parseInt(_0x55bf78(0x262))/0x3+-parseInt(_0x55bf78(0x247))/0x4+parseInt(_0x55bf78(0x21f))/0x5+parseInt(_0x55bf78(0x26b))/0x6+-parseInt(_0x55bf78(0x228))/0x7*(parseInt(_0x55bf78(0x239))/0x8);if(_0x3f68ac===_0x498266)break;else _0x40f6e5['push'](_0x40f6e5['shift']());}catch(_0x509a41){_0x40f6e5['push'](_0x40f6e5['shift']());}}}(_0xfe1a,0x2e537));function _0x4e82(_0x2c67e8,_0x12d78f){_0x2c67e8=_0x2c67e8-0x1bb;const _0xfe1a5d=_0xfe1a();let _0x4e82e7=_0xfe1a5d[_0x2c67e8];if(_0x4e82['ZEqMxW']===undefined){var _0x57fa8b=function(_0x19c55b){const _0x316d82='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3c1596='',_0x1ea1f1='';for(let _0x22aee3=0x0,_0x421dee,_0x17061f,_0x289310=0x0;_0x17061f=_0x19c55b['charAt'](_0x289310++);~_0x17061f&&(_0x421dee=_0x22aee3%0x4?_0x421dee*0x40+_0x17061f:_0x17061f,_0x22aee3++%0x4)?_0x3c1596+=String['fromCharCode'](0xff&_0x421dee>>(-0x2*_0x22aee3&0x6)):0x0){_0x17061f=_0x316d82['indexOf'](_0x17061f);}for(let _0xabddd8=0x0,_0x42a095=_0x3c1596['length'];_0xabddd8<_0x42a095;_0xabddd8++){_0x1ea1f1+='%'+('00'+_0x3c1596['charCodeAt'](_0xabddd8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1ea1f1);};_0x4e82['MTIkto']=_0x57fa8b,_0x4e82['UiFFdb']={},_0x4e82['ZEqMxW']=!![];}const _0x339474=_0xfe1a5d[0x0],_0x35f3c8=_0x2c67e8+_0x339474,_0x597017=_0x4e82['UiFFdb'][_0x35f3c8];return!_0x597017?(_0x4e82e7=_0x4e82['MTIkto'](_0x4e82e7),_0x4e82['UiFFdb'][_0x35f3c8]=_0x4e82e7):_0x4e82e7=_0x597017,_0x4e82e7;}import{API,Utils,ConfirmDialog,initializeAdminMenu}from'./app.js';import{initTheme,mountThemeToggle}from'./theme.js';const state={'users':[],'editingUserId':null,'bindingsUserId':null,'deletingUserId':null,'setupLinkData':null,'emailConfigured':![],'currentUser':null,'roles':[],'environments':[],'userBindings':[],'bindingsDirty':![]};document['addEventListener']('DOMContentLoaded',async()=>{const _0xd4b76d=_0x4e82;initTheme(),mountThemeToggle(),await checkAdminAccess(),await initializeAdminMenu(state[_0xd4b76d(0x1de)]),await Promise[_0xd4b76d(0x222)]([checkEmailConfig(),loadRoles(),loadEnvironments()]),bindEventListeners(),await loadUsers();});async function checkAdminAccess(){const _0x44fba6=_0x4e82;try{const _0x3c1596=await API[_0x44fba6(0x25a)]();state['currentUser']=_0x3c1596;if(!_0x3c1596['isServerAdmin']){Utils[_0x44fba6(0x1df)](_0x44fba6(0x27d),_0x44fba6(0x206)),setTimeout(()=>{const _0x4aa9f3=_0x44fba6;window[_0x4aa9f3(0x1d9)]['href']=_0x4aa9f3(0x218);},0x7d0);return;}}catch(_0x1ea1f1){window[_0x44fba6(0x1d9)][_0x44fba6(0x1f3)]=_0x44fba6(0x23a);}}async function checkEmailConfig(){const _0x17cb4d=_0x4e82;try{const _0x22aee3=await API[_0x17cb4d(0x1ea)]();state[_0x17cb4d(0x261)]=_0x22aee3[_0x17cb4d(0x1c2)];}catch(_0x421dee){console[_0x17cb4d(0x206)](_0x17cb4d(0x24d),_0x421dee),state['emailConfigured']=![];}}async function loadRoles(){const _0x52bee2=_0x4e82;try{const {roles:_0x17061f}=await API[_0x52bee2(0x269)]();state[_0x52bee2(0x1e5)]=_0x17061f||[];}catch{state[_0x52bee2(0x1e5)]=[];}}async function loadEnvironments(){const _0x53bd39=_0x4e82;try{const _0x289310=await API[_0x53bd39(0x1c6)]();state[_0x53bd39(0x1bc)]=_0x289310[_0x53bd39(0x1bc)]||[];}catch{state[_0x53bd39(0x1bc)]=[];}}function bindEventListeners(){const _0x47cd2=_0x4e82;document['getElementById']('create-user-btn')?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),showCreateUserModal),document[_0x47cd2(0x1e7)](_0x47cd2(0x280))?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),hideUserModal),document[_0x47cd2(0x1e7)](_0x47cd2(0x224))?.['addEventListener'](_0x47cd2(0x22c),hideUserModal),document['getElementById'](_0x47cd2(0x22e))?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),saveUser),document[_0x47cd2(0x1bd)](_0x47cd2(0x277))?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),hideUserModal),document['getElementById'](_0x47cd2(0x266))?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),hideDeleteModal),document[_0x47cd2(0x1e7)](_0x47cd2(0x1cc))?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),hideDeleteModal),document['getElementById'](_0x47cd2(0x248))?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),confirmDeleteUser),document['querySelector'](_0x47cd2(0x270))?.['addEventListener'](_0x47cd2(0x22c),hideDeleteModal),document['getElementById'](_0x47cd2(0x268))?.['addEventListener'](_0x47cd2(0x22c),hideSetupLinkModal),document[_0x47cd2(0x1e7)](_0x47cd2(0x202))?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),hideSetupLinkModal),document[_0x47cd2(0x1e7)](_0x47cd2(0x215))?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),copySetupLink),document[_0x47cd2(0x1e7)](_0x47cd2(0x263))?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),emailSetupLink),document[_0x47cd2(0x1bd)](_0x47cd2(0x1c4))?.[_0x47cd2(0x26f)]('click',hideSetupLinkModal),document[_0x47cd2(0x1e7)](_0x47cd2(0x271))?.[_0x47cd2(0x26f)](_0x47cd2(0x24c),handleSkipPasswordChange),document['getElementById'](_0x47cd2(0x1c1))?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),loadUsers),document[_0x47cd2(0x1e7)]('close-bindings-modal')?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),hideAccessBindingsModal),document[_0x47cd2(0x1e7)](_0x47cd2(0x1ec))?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),hideAccessBindingsModal),document[_0x47cd2(0x1bd)](_0x47cd2(0x252))?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),hideAccessBindingsModal),document[_0x47cd2(0x1e7)](_0x47cd2(0x238))?.[_0x47cd2(0x26f)](_0x47cd2(0x24c),handleServerAdminToggle),document[_0x47cd2(0x1e7)]('add-user-binding-btn')?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),()=>{const _0x50a687=_0x47cd2;document['getElementById'](_0x50a687(0x236))[_0x50a687(0x24e)]=![],document[_0x50a687(0x1e7)]('add-user-binding-btn')[_0x50a687(0x24e)]=!![],populateUserBindingForm();}),document[_0x47cd2(0x1e7)](_0x47cd2(0x1e9))?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),()=>{const _0x4d07fd=_0x47cd2;document[_0x4d07fd(0x1e7)]('add-user-binding-form')['hidden']=!![],document['getElementById'](_0x4d07fd(0x27a))['hidden']=![];}),document[_0x47cd2(0x1e7)](_0x47cd2(0x1e0))?.[_0x47cd2(0x26f)](_0x47cd2(0x22c),saveUserBinding);}async function loadUsers(){const _0x118720=_0x4e82,_0xabddd8=document[_0x118720(0x1e7)]('users-loading'),_0x42a095=document[_0x118720(0x1e7)](_0x118720(0x249)),_0x5a409f=document[_0x118720(0x1e7)]('users-content');try{_0xabddd8['hidden']=![],_0x42a095[_0x118720(0x24e)]=!![],_0x5a409f['hidden']=!![];const _0x3852da=await API[_0x118720(0x255)]();state[_0x118720(0x245)]=_0x3852da[_0x118720(0x245)]||[],renderUsers(),_0xabddd8['hidden']=!![],_0x5a409f[_0x118720(0x24e)]=![];}catch(_0x39d1de){console[_0x118720(0x206)](_0x118720(0x1d2),_0x39d1de),_0xabddd8[_0x118720(0x24e)]=!![],_0x42a095[_0x118720(0x24e)]=![],document[_0x118720(0x1e7)](_0x118720(0x242))[_0x118720(0x278)]=_0x39d1de[_0x118720(0x219)];}}function _0xfe1a(){const _0x30c53f=['y2XVC2uTyMLUzgLUz3mTBw9KywWTzM9VDgvY','C29YDa','yMLUzgLUz3neAxj0Eq','q3jLyxrPBMCUlI4','BMfTzq','C2v0DxbmAw5Rrgf0yq','DxnLCG','AhjLzG','cIaGicaGicaGica','cIaGica8Dhi+cIaGicaGidX0zd4kicaGicaGica8zgL2ignSyxnZpsj1C2vYlxvZzxjUyw1LiJ4kicaGicaGicaGia','BwfW','pc90zd4kicaGicaGphrKpGOGicaGicaGidXKAxyGy2XHC3m9iNvZzxiTywn0Aw9UCYi+cIaGicaGicaGica8yNv0Dg9UignSyxnZpsjIDg4TAwnVBIbIDg4TC21HBgWIig9Uy2XPy2S9iNDPBMrVDY5LzgL0vxnLCIGN','zw1HAwXfCNjVCG','DxnLCI1IAw5KAw5NCY1LBxb0Eq','rMfPBgvKihrVigvTywLSihnLDhvWigXPBMS','C2HVDW','DxnLCI1WyxnZD29Yza','zgLZywjSzwq','DxnLCKjPBMrPBMDZ','tgLUAYbJB3bPzwqGDg8Gy2XPCgjVyxjK','rMfPBgvKihrVigXVywqGyMLUzgLUz3m6ia','qMLUzgLUzYbHzgrLza','y2XVC2uTC2v0DxaTBgLUAW','DxnLCI1MB3jT','qwnJzxnZiejPBMrPBMDZiokaLca','DxnLCI10zwfTlwjPBMrPBMDZlw5VDgu','zxjYB3i','CgfZC3DVCMqTCMvXDwLYzwq','BMvHCMvZDa','pc90zd4kicaGicaGphrKpG','z2v0vgLTzq','zgLZCgXHEq','C3r5Bgu','zw1HAwWTyNv0Dg9UlxrLEhq','DxnLCI1IAw5KAw5NlxjVBgu','qwrKiejPBMrPBMC','zgvSzxrLlw1VzgfS','yMLUzgLUz3nvC2vYswq','C2v0DxaTBgLUAY1TB2rHBa','u2vYDMvYiefKBwLUihjLBw92zwq','vxnLCIbKzwXLDgvKihn1y2nLC3nMDwXSEq','y29WEs1Zzxr1Cc1SAw5R','Bw9KywWTDgL0Bgu','C2v0DxaTBgLUAY11CMW','Aw5KzxGUAhrTBa','BwvZC2fNzq','Dg9Rzw4','lcbHBMqG','C2v0DxbvCMW','Aw5Uzxjive1m','C21VB3rO','mta0ntyXnxHNuLrmzW','phnWyw4Gy2XHC3m9iNjVBguTyMfKz2uGCM9Szs1Hzg1PBIi+u2vYDMvYiefKBwLUpc9ZCgfUpG','CgfZC3DVCMqTAgLUDa','ywXS','CM9Szv9Pza','y2fUy2vSlxvZzxi','y3jLyxrLqMLUzgLUzW','DxnLCI10zwfTlwjPBMrPBMDZlxrLEhq','C2v0DxaTBgLUAY11C2vYBMfTzq','mtmWnZu3owT3s1LyCa','rMfPBgvKihrVignYzwf0zsbWyxnZD29YzcbYzxnLDcbSAw5RoIa','rMfPBgvKihrVigrLBgv0zsb1C2vYoIa','DxnLCI1IAw5KAw5NCY1SB2fKAw5N','y2XPy2S','DxnLCI1LBwfPBa','C2f2zs11C2vY','zgvSzxrLvxnLCG','DxjS','y2HLy2TwywXPzgL0Eq','zgvSzxrLqMLUzgLUzW','DgvHBxm','y3jLyxrLzf9HDa','zwrPDfvZzxi','ywrKlxvZzxiTyMLUzgLUzY1MB3jT','DxnLCI1Uyw1L','DxnLCI1PCY1Zzxj2zxiTywrTAw4','oeHjCeH5Ea','Bg9NAw4UAhrTBa','jYKIihn0EwXLpsjJB2XVCJOGDMfYkc0Ty29SB3iTzgfUz2vYktSIpLjLBw92ztWVyNv0Dg9UpGOGicaGica8l3rKpGOGicaGpc90CJ4','z2v0qMLUzgLUz3m','zMLSDgvY','CMvZzxq','yMXVy2S','qwrKAw5N4OcM','rMfPBgvKihrVignVChKGBgLUAW','DxnLCNmTzxjYB3iTBwvZC2fNzq','jYKIpLjLC2v0ifbHC3n3B3jKpc9IDxr0B24+cIaGicaGicaGpc9KAxy+cIaGicaGidWVDgq+cIaGica8l3rYpGOGia','zgvSzxrLlxvZzxiTBMfTzq','DxnLCNm','rMfPBgvKihrVignYzwf0zsbWyxnZD29YzcbYzxnLDcbSAw5R','mta5mZG5mM1JDxHbEq','y29UzMLYBs1KzwXLDgu','DxnLCNmTzxjYB3i','rMfPBgvKihrVihnLBMqGzw1HAwW6ia','rMfPBgvKihrVihnHDMuGDxnLCG','y2HHBMDL','rMfPBgvKihrVignOzwnRigvTywLSignVBMzPzW','AgLKzgvU','rgvSzxrLifvZzxi','zw1HAwXtzw50','DxnLCNmTDgfIBguTyM9KEq','i2jPBMrPBMDZlw1VzgfSic5TB2rHBc1VDMvYBgf5','mZy5nZi5De9hs2fJ','AgfZ','z2v0vxnLCNm','C2v0Dxa','AgfZvgvHBujPBMrPBMC','DMfSDwu','AM9PBG','z2v0q3vYCMvUDfvZzxi','BwvTyMvYCW','u2vUzgLUzY4UlG','yMLUzgLUz3m','DxnLCI11C2vYBMfTzq','BM9Uzq','yMLUzgLUz3mTBw9KywW','zw1HAwXdB25MAwD1CMvK','mJG4otaZuuvfy1rH','zw1HAwWTC2v0DxaTBgLUAW','DxnLCI1IAw5KAw5NlwvUDMLYB25Tzw50','cIaGica8Dhi+cIaGicaGidX0zd4','y2XVC2uTzgvSzxrLlw1VzgfS','phnWyw4Gy2XHC3m9iNjVBguTyMfKz2uGCM9Szs11C2vYlwjPBMrPBMCIpLvZzxiGqMLUzgLUzZWVC3bHBJ4','y2XVC2uTC2v0DxaTBgLUAY1TB2rHBa','z2v0uM9SzurLzMLUAxrPB25Z','jYKIihrPDgXLpsjfzgL0iJ4kicaGicaGicaGicaGphn2zYb3Awr0Ad0ImtqIigHLAwDODd0ImtqIihzPzxDcB3G9iJaGmcaYncaYnciGzMLSBd0IBM9UzsiGC3rYB2TLpsjJDxjYzw50q29SB3iIihn0CM9Rzs13Awr0Ad0ImIi+cIaGicaGicaGicaGicaGphbHDgGGzd0ItteXidringeYidiGmcaWidaTmIaYDJe0ytiGmIaWidaGmcaYidjOmtrHmIaYidaGmcaWidiTmNyTnYi+pc9WyxrOpGOGicaGicaGicaGicaGidXWyxrOigq9iK0Xoc41idiUnweYlJeYmsaYlJeYmsaWidaGmsaZidnmmtiGmtvSltqGmsaXltqGos41ltKUnxOIpJWVCgf0Ad4kicaGicaGicaGicaGpc9ZDMC+cIaGicaGicaGica8l2j1DhrVBJ4kicaGicaGicaGidXIDxr0B24Gy2XHC3m9iMj0BI1Py29Uigj0BI1ZBwfSBciGB25JBgLJAZ0ID2LUzg93lNnOB3Dby2nLC3ncAw5KAw5NCYGN','mJeXnJqYoezLz05OsW','zxnJyxbLshrTBa','C2nYB2XSsw50B1zPzxC','zM9JDxm','ywrKrxzLBNrmAxn0zw5LCG','i2rLBgv0zs1TB2rHBcaUBw9KywWTB3zLCMXHEq','C2TPCc1WyxnZD29Yza','y3jLyxrLugfZC3DVCMruB2TLBG','y2HLy2TLza','vxbKyxrPBMCUlI4','zw52AxjVBM1LBNq','Aw5SAw5LlwjSB2nR','i3vZzxiTBw9KywWGlM1VzgfSlw92zxjSyxK','Dgv4DenVBNrLBNq','DgfYz2v0','ywrKlxvZzxiTyMLUzgLUzY1IDg4','zgvSzxrPBMDvC2vYswq','CM9Szv9Uyw1L','qwnJzxnZigrLBMLLzdOGu2vYDMvYigfKBwLUihbYAxzPBgvNzxmGCMvXDwLYzwq','pc90zd4kicaGicaGphrKpGOGicaGicaGidXIDxr0B24Gy2XHC3m9iMj0BI1NAg9ZDcbIDg4TC21HBgWIig9Uy2XPy2S9iNDPBMrVDY5KzwXLDgvvC2vYqMLUzgLUz0nSAwnRkcC','zMLUza','y2XVC2uTDxnLCI1TB2rHBa','z2v0vgvHBxm','CMvZzxrqyxnZD29Yza','q3jLyxrLifvZzxi','BgvUz3rO','pc90zd4kicaGicaGphrKpGOGicaGicaGidXKAxyGy2XHC3m9iMfJy2vZCY1IywrNzxmIpGOGicaGicaGicaG','zw52AxjVBM1LBNrZ','CxvLCNLtzwXLy3rVCG','uMvZzxqGugfZC3DVCMq','rw1HAwWGtgLUAW','cIaGicaGicaGpc9KAxy+cIaGicaGidWVDgq+cIaGicaGidX0zd4','CMv0CNKTDxnLCNmTyNrU','y29UzMLNDxjLza','vgHPCYb1C2vYigHHCYbUBYbHy2nLC3mGDMLHihrLyw0GBwvTyMvYC2HPChmU','i3nLDhvWlwXPBMSTBw9KywWGlM1VzgfSlw92zxjSyxK','jYKIihrPDgXLpsjby2nLC3mGqMLUzgLUz3mIpGOGicaGicaGicaGica8C3zNihDPzhrOpsiXnciGAgvPz2H0psiXnciGDMLLD0jVEd0ImcaWidi0idi0iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiJ4kicaGicaGicaGicaGica8Cgf0AcbKpsjnmtiGmJjZoc00idGTmtbwnwWToc0ZltGGm3y3yZaGnIa4ideWidGGmtb6iJ48l3bHDgG+cIaGicaGicaGicaGidWVC3zNpGOGicaGicaGicaGpc9IDxr0B24+cIaGicaGicaGica8yNv0Dg9UignSyxnZpsjIDg4TAwnVBIbIDg4TC21HBgWGyNrUlwrHBMDLCIiGB25JBgLJAZ0ID2LUzg93lMrLBgv0zvvZzxiOjW','z2v0rw52AxjVBM1LBNrZ','zw1HAwW','DxnLCI1IAw5KAw5NCY1SAxn0lwnVBNrHAw5LCG','CMvXDwLYzwq','ig1VCMu','DxnLCKLK','y2fUy2vSlwrLBgv0zq','AgfZvxnLCKjPBMrPBMC','ugXLyxnLigzPBgWGAw4GywXSihjLCxvPCMvKigzPzwXKCW','C3vJy2vZCW','pg9WDgLVBIb2ywX1zt0I','DgvHBq','rMfPBgvKihrVigXVywqGDxnLCNm','vxnLCIbJCMvHDgvKihn1y2nLC3nMDwXSEq','C2TPCc1WyxnZD29Yzc1JB250ywLUzxi','mZCWntm2wM9qC3fe','pc9VChrPB24+','DxbKyxrLvxnLCG','jYKIihrPDgXLpsjezwXLDguIpGOGicaGicaGicaGica8C3zNihDPzhrOpsiXnciGAgvPz2H0psiXnciGDMLLD0jVEd0ImcaWidi0idi0iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiJ4kicaGicaGicaGicaGica8Cg9SEwXPBMuGCg9PBNrZpsiZidyGnsa2idiXidyIpJWVCg9SEwXPBMu+cIaGicaGicaGicaGicaGphbHDgGGzd0Itte5idz2mtrHmIaYidaGmcaXltiGmKG3ytiGmIaWidaGms0YltjwnM0ZidbwngeYidiGmcaWideGmI0YAdrHmIaYidaGmcaXidiGmNyYiJ48l3bHDgG+cIaGicaGicaGicaGidWVC3zNpGOGicaGicaGicaGpc9IDxr0B24+cIaGicaGicaGica8yNv0Dg9UignSyxnZpsjIDg4TC2vJB25Kyxj5igj0BI1ZBwfSBciGB25JBgLJAZ0ID2LUzg93lNjLC2v0ugfZC3DVCMqOjW','Bg9JyxrPB24','rgvSzxrPBMCUlI4','DhLWzq','zwrPDgLUz1vZzxjjza','zgvSzxrLvxnLCKjPBMrPBMDdBgLJAW','y3vYCMvUDfvZzxi','C2HVD1rVyxn0','C2f2zs11C2vYlwjPBMrPBMCTyNrU','DxnLCM5HBwu','rMfPBgvKihrVihnLBMqGzw1HAwW','DxnLCI1JB3vUDa','Axntzxj2zxjbzg1PBG','CM9Szxm','DhjPBq','z2v0rwXLBwvUDej5swq','DxnLCI1TB2rHBa','y2fUy2vSlxvZzxiTyMLUzgLUzY1IDg4','z2v0rw1HAwXdB25MAwC','ihvZzxi'];_0xfe1a=function(){return _0x30c53f;};return _0xfe1a();}function renderUsers(){const _0x3e4926=_0x4e82,_0x480d5a=document[_0x3e4926(0x1e7)](_0x3e4926(0x251)),_0x3d1e4f=document[_0x3e4926(0x1e7)](_0x3e4926(0x1e3));if(!_0x480d5a)return;_0x3d1e4f&&(_0x3d1e4f[_0x3e4926(0x278)]=state['users'][_0x3e4926(0x284)]+_0x3e4926(0x1eb)+(state[_0x3e4926(0x245)][_0x3e4926(0x284)]===0x1?'':'s'));const _0x2ec4f6=[...state[_0x3e4926(0x245)]][_0x3e4926(0x1ed)]((_0x34d32c,_0x39b37a)=>{const _0xe01b32=_0x3e4926,_0x4e1a15=new Date(_0x34d32c[_0xe01b32(0x234)])['getTime'](),_0x36e71f=new Date(_0x39b37a[_0xe01b32(0x234)])[_0xe01b32(0x20a)]();return _0x36e71f-_0x4e1a15;});_0x480d5a['innerHTML']=_0x2ec4f6[_0x3e4926(0x1f6)](_0xb78859=>_0x3e4926(0x1f5)+Utils[_0x3e4926(0x26c)](_0xb78859[_0x3e4926(0x1e1)])+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</td>\x0a\x20\x20\x20\x20\x20\x20<td>'+Utils[_0x3e4926(0x26c)](_0xb78859[_0x3e4926(0x1f0)])+_0x3e4926(0x209)+Utils[_0x3e4926(0x26c)](_0xb78859['email'])+_0x3e4926(0x1bb)+(_0xb78859[_0x3e4926(0x1e4)]?_0x3e4926(0x220):'')+_0x3e4926(0x1f4)+(_0xb78859[_0x3e4926(0x1cd)]?_0x3e4926(0x267):'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0xb78859[_0x3e4926(0x257)]?'<span\x20class=\x22role-badge\x20role-team-binding\x22>Team\x20Binding</span>':'')+_0x3e4926(0x1c0)+Utils['formatRelativeTime'](_0xb78859[_0x3e4926(0x234)])+_0x3e4926(0x1f7)+_0xb78859['id']+_0x3e4926(0x26a)+_0xb78859['id']+_0x3e4926(0x1c5)+_0xb78859['id']+_0x3e4926(0x1d8)+_0xb78859['id']+_0x3e4926(0x243))[_0x3e4926(0x259)]('');}window['showAccessBindings']=function(_0x3e4ec0){const _0x1ffad2=_0x4e82,_0x450ae8=state[_0x1ffad2(0x245)][_0x1ffad2(0x27f)](_0x2a0952=>_0x2a0952['id']===_0x3e4ec0);if(!_0x450ae8)return;state[_0x1ffad2(0x211)]=_0x3e4ec0,state[_0x1ffad2(0x1ee)]=![];const _0x1cb237=document[_0x1ffad2(0x1e7)](_0x1ffad2(0x260)),_0x50cacf=document[_0x1ffad2(0x1e7)]('bindings-modal-title');_0x50cacf[_0x1ffad2(0x278)]=_0x1ffad2(0x204)+_0x450ae8['name'];const _0x4597be=document['getElementById'](_0x1ffad2(0x238));_0x4597be&&(_0x4597be[_0x1ffad2(0x273)]=!!_0x450ae8[_0x1ffad2(0x1e4)]),document[_0x1ffad2(0x1e7)](_0x1ffad2(0x236))[_0x1ffad2(0x24e)]=!![],document[_0x1ffad2(0x1e7)](_0x1ffad2(0x27a))['hidden']=![],_0x1cb237[_0x1ffad2(0x24e)]=![],loadUserBindings(_0x3e4ec0);};function hasUnsavedBindingChanges(){const _0x5a98b9=_0x4e82,_0x17ff6d=document[_0x5a98b9(0x1e7)]('add-user-binding-form');return _0x17ff6d&&!_0x17ff6d[_0x5a98b9(0x24e)];}async function hideAccessBindingsModal(){const _0x5700a2=_0x4e82;if(hasUnsavedBindingChanges()){if(!confirm('You\x20have\x20an\x20unsaved\x20binding.\x20Discard\x20changes?'))return;document[_0x5700a2(0x1e7)](_0x5700a2(0x236))[_0x5700a2(0x24e)]=!![],document[_0x5700a2(0x1e7)]('add-user-binding-btn')['hidden']=![];}const _0x532ede=document[_0x5700a2(0x1e7)]('bindings-modal');_0x532ede[_0x5700a2(0x24e)]=!![];const _0x4cca4c=state[_0x5700a2(0x1ee)];state[_0x5700a2(0x211)]=null,state[_0x5700a2(0x1fe)]=[],state[_0x5700a2(0x1ee)]=![],_0x4cca4c&&await loadUsers();}async function handleServerAdminToggle(_0x5ac009){const _0x20fb20=_0x4e82;if(!state[_0x20fb20(0x211)])return;const _0x4cee1e=_0x5ac009['target'],_0x36a312=_0x4cee1e[_0x20fb20(0x273)];try{await API[_0x20fb20(0x1d7)](state[_0x20fb20(0x211)],{'isServerAdmin':_0x36a312}),Utils[_0x20fb20(0x1df)](_0x36a312?'Server\x20Admin\x20enabled':_0x20fb20(0x213),_0x20fb20(0x1cf));const _0x3fe9e2=state[_0x20fb20(0x245)][_0x20fb20(0x27f)](_0x22ce8d=>_0x22ce8d['id']===state[_0x20fb20(0x211)]);_0x3fe9e2&&(_0x3fe9e2[_0x20fb20(0x1e4)]=_0x36a312,renderUsers());}catch(_0x2c9b78){_0x4cee1e[_0x20fb20(0x273)]=!_0x36a312,Utils[_0x20fb20(0x1df)](_0x2c9b78[_0x20fb20(0x219)],_0x20fb20(0x206));}}async function loadUserBindings(_0x156dea){const _0x271dec=_0x4e82,_0x1eca7d=document[_0x271dec(0x1e7)](_0x271dec(0x22b)),_0x29c4ee=document['getElementById'](_0x271dec(0x1f9)),_0x58da95=document[_0x271dec(0x1e7)](_0x271dec(0x1c8)),_0x4a77ca=document['getElementById'](_0x271dec(0x27a)),_0x3cace8=document[_0x271dec(0x1e7)](_0x271dec(0x205)),_0x5a1808=document[_0x271dec(0x1e7)](_0x271dec(0x226));_0x1eca7d[_0x271dec(0x24e)]=![],_0x29c4ee[_0x271dec(0x24e)]=!![],_0x58da95[_0x271dec(0x20c)][_0x271dec(0x20b)]=_0x271dec(0x25f),_0x4a77ca['hidden']=!![],_0x3cace8['hidden']=!![],document[_0x271dec(0x1e7)](_0x271dec(0x236))['hidden']=!![];try{const [_0x45aaa2,_0x298fad]=await Promise[_0x271dec(0x222)]([API['getBindings']({'subject_type':_0x271dec(0x1f2),'subject_id':_0x156dea}),API[_0x271dec(0x281)]()]);state[_0x271dec(0x1fe)]=_0x45aaa2[_0x271dec(0x25d)]||[];const _0x4a0b16=(_0x298fad[_0x271dec(0x233)]||[])[_0x271dec(0x23d)](_0x56fd45=>(_0x56fd45[_0x271dec(0x25b)]||[])['includes'](_0x156dea)),_0x5931cc=[];if(_0x4a0b16[_0x271dec(0x284)]>0x0){const _0x3f6af6=await Promise['all'](_0x4a0b16['map'](_0x224e42=>API[_0x271dec(0x23c)]({'subject_type':_0x271dec(0x1d1),'subject_id':_0x224e42['id']})));for(let _0x1cf459=0x0;_0x1cf459<_0x4a0b16['length'];_0x1cf459++){const _0x3d6975=_0x3f6af6[_0x1cf459][_0x271dec(0x25d)]||[];_0x3d6975[_0x271dec(0x284)]>0x0&&_0x5931cc['push'](_0x4a0b16[_0x1cf459]);}}_0x1eca7d['hidden']=!![];state[_0x271dec(0x1fe)][_0x271dec(0x284)]===0x0?_0x29c4ee[_0x271dec(0x24e)]=![]:(_0x58da95[_0x271dec(0x20c)]['display']='',renderUserBindingsTable());if(_0x5931cc['length']>0x0){const _0x3ce3e9=_0x5931cc[_0x271dec(0x1f6)](_0x33a2c0=>_0x33a2c0[_0x271dec(0x1f0)]),_0x2eceaa=_0x3ce3e9[_0x271dec(0x284)]<=0x3?_0x3ce3e9['join'](',\x20'):_0x3ce3e9['slice'](0x0,0x3)[_0x271dec(0x259)](',\x20')+(_0x271dec(0x21b)+(_0x3ce3e9[_0x271dec(0x284)]-0x3)+_0x271dec(0x1ca));_0x5a1808[_0x271dec(0x278)]='This\x20user\x20also\x20has\x20access\x20via\x20team\x20memberships\x20('+_0x2eceaa+').';}else _0x5a1808[_0x271dec(0x278)]=_0x271dec(0x1c3);_0x3cace8['hidden']=![],_0x4a77ca[_0x271dec(0x24e)]=![];}catch(_0x4b17c8){_0x1eca7d['hidden']=!![],Utils['showToast'](_0x271dec(0x200)+_0x4b17c8[_0x271dec(0x219)],_0x271dec(0x206));}}function renderUserBindingsTable(){const _0x46cc1b=_0x4e82,_0x818fd6=document[_0x46cc1b(0x1e7)]('user-bindings-table-body');if(!_0x818fd6)return;_0x818fd6['innerHTML']=state[_0x46cc1b(0x1fe)][_0x46cc1b(0x1f6)](_0x107e0b=>_0x46cc1b(0x265)+Utils[_0x46cc1b(0x26c)](_0x107e0b[_0x46cc1b(0x275)])+'</td>\x0a\x20\x20\x20\x20\x20\x20<td>'+Utils[_0x46cc1b(0x26c)](_0x107e0b[_0x46cc1b(0x27c)]||_0x107e0b[_0x46cc1b(0x223)])+_0x46cc1b(0x27e)+_0x107e0b['id']+_0x46cc1b(0x23b))[_0x46cc1b(0x259)]('');}function populateUserBindingForm(){const _0x5d1735=_0x4e82,_0x5af495=document[_0x5d1735(0x1e7)](_0x5d1735(0x264)),_0x558e75=document[_0x5d1735(0x1e7)](_0x5d1735(0x20e)),_0x173f46=new Set(state[_0x5d1735(0x1fe)][_0x5d1735(0x1f6)](_0xf1c43e=>_0xf1c43e[_0x5d1735(0x275)])),_0x316958=state[_0x5d1735(0x1bc)][_0x5d1735(0x23d)](_0x2a0153=>!_0x173f46[_0x5d1735(0x254)](_0x2a0153['name']));_0x5af495[_0x5d1735(0x21d)]=_0x316958[_0x5d1735(0x284)]?_0x316958[_0x5d1735(0x1f6)](_0x3c90ed=>_0x5d1735(0x1d0)+Utils[_0x5d1735(0x26c)](_0x3c90ed[_0x5d1735(0x1f0)])+'\x22>'+Utils['escapeHtml'](_0x3c90ed[_0x5d1735(0x1f0)])+'</option>')[_0x5d1735(0x259)](''):'<option\x20value=\x22\x22>All\x20environments\x20already\x20bound</option>',_0x558e75['innerHTML']=state[_0x5d1735(0x1e5)][_0x5d1735(0x1f6)](_0x8be5b8=>'<option\x20value=\x22'+_0x8be5b8['id']+'\x22>'+Utils[_0x5d1735(0x26c)](_0x8be5b8['name'])+_0x5d1735(0x1d6))[_0x5d1735(0x259)]('');}async function saveUserBinding(){const _0x1f58c6=_0x4e82,_0xc4c25e=document[_0x1f58c6(0x1e7)](_0x1f58c6(0x264))[_0x1f58c6(0x258)],_0x28466c=document[_0x1f58c6(0x1e7)](_0x1f58c6(0x20e))[_0x1f58c6(0x258)];if(!_0xc4c25e||!_0x28466c||!state[_0x1f58c6(0x211)])return;const _0x320f3a=document[_0x1f58c6(0x1e7)](_0x1f58c6(0x1e0));_0x320f3a[_0x1f58c6(0x1fd)]=!![],_0x320f3a[_0x1f58c6(0x278)]=_0x1f58c6(0x240);try{await API[_0x1f58c6(0x225)]({'subject_type':_0x1f58c6(0x1f2),'subject_id':state[_0x1f58c6(0x211)],'role_id':_0x28466c,'environment':_0xc4c25e}),Utils[_0x1f58c6(0x1df)](_0x1f58c6(0x201),_0x1f58c6(0x1cf)),state[_0x1f58c6(0x1ee)]=!![],document[_0x1f58c6(0x1e7)](_0x1f58c6(0x236))[_0x1f58c6(0x24e)]=!![],document[_0x1f58c6(0x1e7)]('add-user-binding-btn')[_0x1f58c6(0x24e)]=![],await loadUserBindings(state[_0x1f58c6(0x211)]);}catch(_0x4b0fb8){Utils[_0x1f58c6(0x1df)](_0x4b0fb8[_0x1f58c6(0x219)],_0x1f58c6(0x206));}finally{_0x320f3a['disabled']=![],_0x320f3a[_0x1f58c6(0x278)]=_0x1f58c6(0x20f);}}window[_0x1b5742(0x1dd)]=async function(_0x755a58){const _0x47e619=_0x1b5742;try{await API[_0x47e619(0x232)](_0x755a58),Utils[_0x47e619(0x1df)]('Binding\x20removed',_0x47e619(0x1cf)),state['bindingsDirty']=!![],await loadUserBindings(state[_0x47e619(0x211)]);}catch(_0x1ba5a8){Utils[_0x47e619(0x1df)](_0x1ba5a8[_0x47e619(0x219)],_0x47e619(0x206));}};function showCreateUserModal(){const _0x28fdb2=_0x1b5742;state[_0x28fdb2(0x1dc)]=null;const _0x390219=document[_0x28fdb2(0x1e7)](_0x28fdb2(0x1e8)),_0x39cdd5=document[_0x28fdb2(0x1e7)](_0x28fdb2(0x216)),_0x35f5b5=document[_0x28fdb2(0x1e7)](_0x28fdb2(0x1fc)),_0x1357d0=document[_0x28fdb2(0x1e7)](_0x28fdb2(0x207)),_0x3eb25a=document[_0x28fdb2(0x1e7)](_0x28fdb2(0x221)),_0x157979=document['getElementById'](_0x28fdb2(0x1d4)),_0x4b2b9e=document[_0x28fdb2(0x1e7)](_0x28fdb2(0x271));_0x39cdd5['textContent']=_0x28fdb2(0x283),document[_0x28fdb2(0x1e7)]('user-form')[_0x28fdb2(0x23e)](),_0x35f5b5[_0x28fdb2(0x1c9)]=!![];if(_0x1357d0)_0x1357d0[_0x28fdb2(0x278)]='*';_0x157979&&(_0x157979[_0x28fdb2(0x20c)][_0x28fdb2(0x20b)]=_0x28fdb2(0x23f),_0x4b2b9e[_0x28fdb2(0x273)]=![]),_0x3eb25a&&(_0x3eb25a['textContent']='Minimum\x208\x20characters'),_0x390219[_0x28fdb2(0x24e)]=![],setTimeout(()=>{const _0x1212ae=_0x28fdb2;document[_0x1212ae(0x1e7)](_0x1212ae(0x25e))[_0x1212ae(0x26e)]();},0x64);}window[_0x1b5742(0x235)]=function(_0x2f63fa){const _0x2171ce=_0x1b5742,_0x26e69e=state['users'][_0x2171ce(0x27f)](_0x2be952=>_0x2be952['id']===_0x2f63fa);if(!_0x26e69e)return;state['editingUserId']=_0x2f63fa;const _0x16af80=document['getElementById'](_0x2171ce(0x1e8)),_0x7ac36a=document[_0x2171ce(0x1e7)](_0x2171ce(0x216)),_0x30266a=document[_0x2171ce(0x1e7)](_0x2171ce(0x1fc)),_0x2ad0bc=document[_0x2171ce(0x1e7)]('password-required'),_0x5f5396=document[_0x2171ce(0x1e7)](_0x2171ce(0x221)),_0x4d0cdf=document['getElementById'](_0x2171ce(0x1d4));_0x7ac36a['textContent']='Edit\x20User',document[_0x2171ce(0x1e7)](_0x2171ce(0x25e))[_0x2171ce(0x258)]=_0x26e69e['username'],document[_0x2171ce(0x1e7)](_0x2171ce(0x237))['value']=_0x26e69e[_0x2171ce(0x1f0)],document[_0x2171ce(0x1e7)](_0x2171ce(0x22d))[_0x2171ce(0x258)]=_0x26e69e[_0x2171ce(0x1c7)],_0x30266a['value']='',_0x30266a[_0x2171ce(0x1c9)]=![];if(_0x2ad0bc)_0x2ad0bc[_0x2171ce(0x278)]='';_0x4d0cdf&&(_0x4d0cdf[_0x2171ce(0x20c)]['display']=_0x2171ce(0x25f)),_0x5f5396&&(_0x5f5396[_0x2171ce(0x278)]='Leave\x20blank\x20to\x20keep\x20current\x20password'),_0x16af80[_0x2171ce(0x24e)]=![],setTimeout(()=>{const _0x5948cf=_0x2171ce;document[_0x5948cf(0x1e7)](_0x5948cf(0x25e))[_0x5948cf(0x26e)]();},0x64);};function hideUserModal(){const _0x4deb58=_0x1b5742,_0x362f87=document[_0x4deb58(0x1e7)](_0x4deb58(0x1e8)),_0x460766=document[_0x4deb58(0x1e7)]('form-error'),_0x23f928=document[_0x4deb58(0x1e7)](_0x4deb58(0x22e));_0x362f87[_0x4deb58(0x24e)]=!![],_0x460766['hidden']=!![],state[_0x4deb58(0x1dc)]=null,_0x23f928&&(_0x23f928[_0x4deb58(0x1fd)]=![],_0x23f928[_0x4deb58(0x278)]='Save\x20User');}async function saveUser(){const _0x4783ec=_0x1b5742,_0x367a0e=document['getElementById'](_0x4783ec(0x203)),_0x37b5cb=document[_0x4783ec(0x1e7)]('skip-password')?.[_0x4783ec(0x273)]||![];if(!_0x37b5cb&&!_0x367a0e[_0x4783ec(0x231)]()){_0x367a0e['reportValidity']();return;}const _0x3130ff=document['getElementById']('form-error'),_0x1fb0dc=document[_0x4783ec(0x1e7)](_0x4783ec(0x22e)),_0x165c80=document[_0x4783ec(0x1e7)](_0x4783ec(0x25e))[_0x4783ec(0x258)][_0x4783ec(0x1e6)](),_0x3c6b9e=document['getElementById']('user-name')[_0x4783ec(0x258)][_0x4783ec(0x1e6)](),_0x37a864=document['getElementById'](_0x4783ec(0x22d))['value'][_0x4783ec(0x1e6)](),_0x252596=document[_0x4783ec(0x1e7)](_0x4783ec(0x1fc))['value'];if(!_0x165c80||!_0x3c6b9e||!_0x37a864){_0x3130ff[_0x4783ec(0x278)]=_0x4783ec(0x1ce),_0x3130ff[_0x4783ec(0x24e)]=![],_0x3130ff[_0x4783ec(0x26d)]({'behavior':_0x4783ec(0x21e),'block':_0x4783ec(0x208)});return;}_0x3130ff[_0x4783ec(0x24e)]=!![];const _0x5ead99=_0x1fb0dc[_0x4783ec(0x278)];_0x1fb0dc[_0x4783ec(0x1fd)]=!![],_0x1fb0dc[_0x4783ec(0x278)]=state[_0x4783ec(0x1dc)]?_0x4783ec(0x274):_0x4783ec(0x1ef);try{if(state[_0x4783ec(0x1dc)]){const _0x2e4bcc={'username':_0x165c80,'name':_0x3c6b9e,'email':_0x37a864};_0x252596&&(_0x2e4bcc['password']=_0x252596),await API[_0x4783ec(0x1d7)](state['editingUserId'],_0x2e4bcc),Utils[_0x4783ec(0x1df)]('User\x20updated\x20successfully',_0x4783ec(0x1cf)),await loadUsers(),hideUserModal();}else{const _0x340a1d={'username':_0x165c80,'name':_0x3c6b9e,'email':_0x37a864};if(!_0x37b5cb){if(!_0x252596)throw new Error('Password\x20is\x20required\x20for\x20new\x20users');_0x340a1d['password']=_0x252596;}const _0x54e61f=await API['createUser'](_0x340a1d),_0x102ef6=_0x54e61f[_0x4783ec(0x1f2)];if(_0x37b5cb||!_0x252596){const _0x17e152=await API[_0x4783ec(0x272)](_0x102ef6['id'],_0x4783ec(0x256),![]);state[_0x4783ec(0x1f1)]={'username':_0x102ef6[_0x4783ec(0x1e1)],'email':_0x102ef6[_0x4783ec(0x1c7)],'url':_0x17e152[_0x4783ec(0x21a)][_0x4783ec(0x21c)],'userId':_0x102ef6['id'],'type':_0x4783ec(0x256),'emailSent':![]},await loadUsers(),hideUserModal(),showSetupLinkModal();}else Utils[_0x4783ec(0x1df)](_0x4783ec(0x1d3),'success'),await loadUsers(),hideUserModal();}}catch(_0x522b21){console['error'](_0x4783ec(0x24b),_0x522b21),_0x3130ff[_0x4783ec(0x278)]=_0x522b21[_0x4783ec(0x219)],_0x3130ff[_0x4783ec(0x24e)]=![],_0x3130ff[_0x4783ec(0x26d)]({'behavior':_0x4783ec(0x21e),'block':_0x4783ec(0x208)}),_0x1fb0dc[_0x4783ec(0x1fd)]=![],_0x1fb0dc['textContent']=_0x5ead99;}}window['deleteUser']=function(_0x3cf1ca){const _0x4a1078=_0x1b5742,_0xbec8a2=state['users'][_0x4a1078(0x27f)](_0x24109b=>_0x24109b['id']===_0x3cf1ca);if(!_0xbec8a2)return;state[_0x4a1078(0x27b)]=_0x3cf1ca;const _0x302378=document[_0x4a1078(0x1e7)]('delete-modal'),_0x4b385f=document[_0x4a1078(0x1e7)](_0x4a1078(0x244));_0x4b385f[_0x4a1078(0x278)]=_0xbec8a2[_0x4a1078(0x1f0)]+'\x20('+_0xbec8a2[_0x4a1078(0x1e1)]+')',_0x302378['hidden']=![];};function hideDeleteModal(){const _0x1167e1=_0x1b5742,_0x2d17c7=document[_0x1167e1(0x1e7)](_0x1167e1(0x210));_0x2d17c7[_0x1167e1(0x24e)]=!![],state[_0x1167e1(0x27b)]=null;const _0x57b19d=document[_0x1167e1(0x1e7)]('confirm-delete');_0x57b19d&&(_0x57b19d[_0x1167e1(0x1fd)]=![],_0x57b19d[_0x1167e1(0x278)]=_0x1167e1(0x24f));}async function confirmDeleteUser(){const _0x4f8376=_0x1b5742;if(!state['deletingUserId'])return;const _0x30bf69=document[_0x4f8376(0x1e7)](_0x4f8376(0x248)),_0x28f51c=_0x30bf69[_0x4f8376(0x278)];_0x30bf69[_0x4f8376(0x1fd)]=!![],_0x30bf69[_0x4f8376(0x278)]=_0x4f8376(0x1da);try{await API[_0x4f8376(0x22f)](state['deletingUserId']),Utils[_0x4f8376(0x1df)](_0x4f8376(0x214),_0x4f8376(0x1cf)),await loadUsers(),hideDeleteModal();}catch(_0x3da6e5){console['error']('Failed\x20to\x20delete\x20user',_0x3da6e5),Utils['showToast'](_0x4f8376(0x22a)+_0x3da6e5[_0x4f8376(0x219)],'error'),_0x30bf69[_0x4f8376(0x1fd)]=![],_0x30bf69[_0x4f8376(0x278)]=_0x28f51c;}}function handleSkipPasswordChange(_0x209458){const _0x280dbf=_0x1b5742,_0x4e1619=document[_0x280dbf(0x1e7)](_0x280dbf(0x1fc)),_0x19956a=_0x209458[_0x280dbf(0x279)]['checked'];_0x19956a?(_0x4e1619[_0x280dbf(0x1c9)]=![],_0x4e1619[_0x280dbf(0x1fd)]=!![],_0x4e1619[_0x280dbf(0x258)]=''):(_0x4e1619['required']=!![],_0x4e1619['disabled']=![]);}function showSetupLinkModal(){const _0x25c748=_0x1b5742;if(!state[_0x25c748(0x1f1)])return;const _0x4f0a15=document[_0x25c748(0x1e7)](_0x25c748(0x212)),_0x50db4e=document['getElementById'](_0x25c748(0x227)),_0x53f9e6=document[_0x25c748(0x1e7)](_0x25c748(0x217)),_0x1b97d2=document[_0x25c748(0x1e7)]('email-setup-link'),_0x505c31=document[_0x25c748(0x1e7)](_0x25c748(0x20d));_0x50db4e[_0x25c748(0x278)]=state[_0x25c748(0x1f1)][_0x25c748(0x1e1)],_0x53f9e6[_0x25c748(0x278)]=state['setupLinkData'][_0x25c748(0x230)],_0x1b97d2&&_0x505c31&&(_0x1b97d2['disabled']=![],_0x505c31['textContent']=_0x25c748(0x1bf),state[_0x25c748(0x261)]&&!state[_0x25c748(0x1f1)][_0x25c748(0x250)]?_0x1b97d2[_0x25c748(0x20c)][_0x25c748(0x20b)]=_0x25c748(0x276):_0x1b97d2[_0x25c748(0x20c)][_0x25c748(0x20b)]=_0x25c748(0x25f)),_0x4f0a15[_0x25c748(0x24e)]=![];}function hideSetupLinkModal(){const _0x31ce6a=_0x1b5742,_0x1a86e8=document[_0x31ce6a(0x1e7)](_0x31ce6a(0x212));_0x1a86e8[_0x31ce6a(0x24e)]=!![],state[_0x31ce6a(0x1f1)]=null;}async function copySetupLink(){const _0x112c78=_0x1b5742;if(!state['setupLinkData'])return;try{await navigator['clipboard']['writeText'](state[_0x112c78(0x1f1)]['url']),Utils['showToast'](_0x112c78(0x1ff),_0x112c78(0x1cf));}catch(_0x4f2ebd){console[_0x112c78(0x206)](_0x112c78(0x241),_0x4f2ebd),Utils[_0x112c78(0x1df)]('Failed\x20to\x20copy\x20link','error');}}async function emailSetupLink(){const _0x1c9c6d=_0x1b5742;if(!state[_0x1c9c6d(0x1f1)])return;const _0x461dec=document[_0x1c9c6d(0x1e7)]('email-setup-link'),_0x53a335=document[_0x1c9c6d(0x1e7)]('email-button-text');if(!_0x461dec||!_0x53a335)return;const _0x22d762=_0x53a335[_0x1c9c6d(0x278)];_0x461dec[_0x1c9c6d(0x1fd)]=!![],_0x53a335[_0x1c9c6d(0x278)]=_0x1c9c6d(0x25c);try{const _0x5b530c=await API['createPasswordToken'](state[_0x1c9c6d(0x1f1)][_0x1c9c6d(0x1cb)],state['setupLinkData'][_0x1c9c6d(0x1db)],!![]);if(_0x5b530c[_0x1c9c6d(0x250)])Utils[_0x1c9c6d(0x1df)]('Email\x20sent\x20to\x20'+state['setupLinkData']['email'],_0x1c9c6d(0x1cf)),state[_0x1c9c6d(0x1f1)][_0x1c9c6d(0x250)]=!![],_0x461dec['style'][_0x1c9c6d(0x20b)]=_0x1c9c6d(0x25f);else{const _0x1a9eb3=_0x5b530c[_0x1c9c6d(0x1f8)]||_0x1c9c6d(0x1e2);Utils[_0x1c9c6d(0x1df)](_0x1a9eb3,_0x1c9c6d(0x206)),_0x461dec[_0x1c9c6d(0x1fd)]=![],_0x53a335['textContent']=_0x22d762;}}catch(_0x1afc27){console['error'](_0x1c9c6d(0x1fa),_0x1afc27),Utils[_0x1c9c6d(0x1df)](_0x1c9c6d(0x24a)+_0x1afc27[_0x1c9c6d(0x219)],'error'),_0x461dec[_0x1c9c6d(0x1fd)]=![],_0x53a335['textContent']=_0x22d762;}}window[_0x1b5742(0x282)]=async function(_0x322168){const _0x26c75f=_0x1b5742,_0x547b17=state[_0x26c75f(0x245)][_0x26c75f(0x27f)](_0x50783b=>_0x50783b['id']===_0x322168);if(!_0x547b17)return;const _0x24e239=await ConfirmDialog[_0x26c75f(0x1fb)]({'title':_0x26c75f(0x1be),'message':'Generate\x20a\x20password\x20reset\x20link\x20for\x20'+_0x547b17['name']+'\x20('+_0x547b17['username']+')?\x20This\x20will\x20create\x20a\x20link\x20that\x20they\x20can\x20use\x20to\x20set\x20a\x20new\x20password.','confirmText':'Generate\x20Link'});if(!_0x24e239)return;try{const _0x2534c0=await API['createPasswordToken'](_0x322168,_0x26c75f(0x23e),![]);state[_0x26c75f(0x1f1)]={'username':_0x547b17['username'],'email':_0x547b17[_0x26c75f(0x1c7)],'url':_0x2534c0[_0x26c75f(0x21a)]['setupUrl'],'userId':_0x547b17['id'],'type':_0x26c75f(0x23e),'emailSent':![]},showSetupLinkModal();}catch(_0x269013){console[_0x26c75f(0x206)](_0x26c75f(0x246),_0x269013),Utils[_0x26c75f(0x1df)](_0x26c75f(0x229)+_0x269013[_0x26c75f(0x219)],'error');}};
|
|
1
|
+
function _0x217a(_0x53c4db,_0x28c3e3){_0x53c4db=_0x53c4db-0x17d;const _0x457c7e=_0x457c();let _0x217ab8=_0x457c7e[_0x53c4db];if(_0x217a['ADLCxr']===undefined){var _0x53399=function(_0x5e244a){const _0x18b54c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4cd5e5='',_0x1f4291='';for(let _0x1748ce=0x0,_0x1e1163,_0x3987e2,_0x4fafb3=0x0;_0x3987e2=_0x5e244a['charAt'](_0x4fafb3++);~_0x3987e2&&(_0x1e1163=_0x1748ce%0x4?_0x1e1163*0x40+_0x3987e2:_0x3987e2,_0x1748ce++%0x4)?_0x4cd5e5+=String['fromCharCode'](0xff&_0x1e1163>>(-0x2*_0x1748ce&0x6)):0x0){_0x3987e2=_0x18b54c['indexOf'](_0x3987e2);}for(let _0x50c335=0x0,_0x43c7cc=_0x4cd5e5['length'];_0x50c335<_0x43c7cc;_0x50c335++){_0x1f4291+='%'+('00'+_0x4cd5e5['charCodeAt'](_0x50c335)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1f4291);};_0x217a['qOCqrY']=_0x53399,_0x217a['ptCuyi']={},_0x217a['ADLCxr']=!![];}const _0x2984ed=_0x457c7e[0x0],_0x213800=_0x53c4db+_0x2984ed,_0x550840=_0x217a['ptCuyi'][_0x213800];return!_0x550840?(_0x217ab8=_0x217a['qOCqrY'](_0x217ab8),_0x217a['ptCuyi'][_0x213800]=_0x217ab8):_0x217ab8=_0x550840,_0x217ab8;}const _0x4a1400=_0x217a;(function(_0x1a95ad,_0x2e1af3){const _0xb1f6c5=_0x217a,_0x2424f1=_0x1a95ad();while(!![]){try{const _0x50aab4=-parseInt(_0xb1f6c5(0x1b5))/0x1+-parseInt(_0xb1f6c5(0x221))/0x2+parseInt(_0xb1f6c5(0x21e))/0x3*(-parseInt(_0xb1f6c5(0x1ae))/0x4)+-parseInt(_0xb1f6c5(0x223))/0x5*(-parseInt(_0xb1f6c5(0x1fd))/0x6)+parseInt(_0xb1f6c5(0x22e))/0x7*(parseInt(_0xb1f6c5(0x1b3))/0x8)+parseInt(_0xb1f6c5(0x1df))/0x9*(parseInt(_0xb1f6c5(0x1e3))/0xa)+parseInt(_0xb1f6c5(0x1c5))/0xb;if(_0x50aab4===_0x2e1af3)break;else _0x2424f1['push'](_0x2424f1['shift']());}catch(_0x507c7f){_0x2424f1['push'](_0x2424f1['shift']());}}}(_0x457c,0x5424d));import{API,Utils,ConfirmDialog,initializeAdminMenu}from'./app.js';import{initTheme,mountThemeToggle}from'./theme.js';const state={'users':[],'editingUserId':null,'bindingsUserId':null,'deletingUserId':null,'setupLinkData':null,'emailConfigured':![],'currentUser':null,'roles':[],'environments':[],'userBindings':[],'bindingsDirty':![]};document[_0x4a1400(0x1b0)](_0x4a1400(0x21d),async()=>{const _0x394962=_0x4a1400;initTheme(),mountThemeToggle(),await checkAdminAccess(),await initializeAdminMenu(state[_0x394962(0x1be)]),await Promise[_0x394962(0x230)]([checkEmailConfig(),loadRoles(),loadEnvironments()]),bindEventListeners(),await loadUsers();});async function checkAdminAccess(){const _0x4537d4=_0x4a1400;try{const _0x4cd5e5=await API[_0x4537d4(0x219)]();state[_0x4537d4(0x1be)]=_0x4cd5e5;if(!_0x4cd5e5['isServerAdmin']){Utils[_0x4537d4(0x1af)](_0x4537d4(0x206),_0x4537d4(0x203)),setTimeout(()=>{const _0x3b12ed=_0x4537d4;window[_0x3b12ed(0x17d)][_0x3b12ed(0x1f3)]=_0x3b12ed(0x226);},0x7d0);return;}}catch(_0x1f4291){window[_0x4537d4(0x17d)]['href']=_0x4537d4(0x234);}}async function checkEmailConfig(){const _0x1b7b11=_0x4a1400;try{const _0x1748ce=await API[_0x1b7b11(0x1f0)]();state[_0x1b7b11(0x222)]=_0x1748ce['configured'];}catch(_0x1e1163){console[_0x1b7b11(0x203)](_0x1b7b11(0x24c),_0x1e1163),state[_0x1b7b11(0x222)]=![];}}async function loadRoles(){const _0x3f7d5f=_0x4a1400;try{const {roles:_0x3987e2}=await API[_0x3f7d5f(0x185)]();state['roles']=_0x3987e2||[];}catch{state[_0x3f7d5f(0x18c)]=[];}}async function loadEnvironments(){const _0x4b3a57=_0x4a1400;try{const _0x4fafb3=await API[_0x4b3a57(0x1c0)]();state[_0x4b3a57(0x187)]=_0x4fafb3[_0x4b3a57(0x187)]||[];}catch{state[_0x4b3a57(0x187)]=[];}}function bindEventListeners(){const _0x46544b=_0x4a1400;document[_0x46544b(0x1cd)](_0x46544b(0x1c6))?.[_0x46544b(0x1b0)](_0x46544b(0x213),showCreateUserModal),document['getElementById'](_0x46544b(0x227))?.[_0x46544b(0x1b0)](_0x46544b(0x213),hideUserModal),document[_0x46544b(0x1cd)](_0x46544b(0x23e))?.[_0x46544b(0x1b0)](_0x46544b(0x213),hideUserModal),document[_0x46544b(0x1cd)](_0x46544b(0x19b))?.[_0x46544b(0x1b0)](_0x46544b(0x213),saveUser),document['querySelector'](_0x46544b(0x21f))?.[_0x46544b(0x1b0)](_0x46544b(0x213),hideUserModal),document[_0x46544b(0x1cd)](_0x46544b(0x1ea))?.['addEventListener']('click',hideDeleteModal),document['getElementById'](_0x46544b(0x191))?.[_0x46544b(0x1b0)](_0x46544b(0x213),hideDeleteModal),document[_0x46544b(0x1cd)](_0x46544b(0x1b8))?.[_0x46544b(0x1b0)]('click',confirmDeleteUser),document[_0x46544b(0x1b4)](_0x46544b(0x1ce))?.['addEventListener']('click',hideDeleteModal),document[_0x46544b(0x1cd)](_0x46544b(0x20b))?.['addEventListener'](_0x46544b(0x213),hideSetupLinkModal),document[_0x46544b(0x1cd)]('close-setup-link')?.[_0x46544b(0x1b0)]('click',hideSetupLinkModal),document['getElementById']('copy-setup-link')?.[_0x46544b(0x1b0)](_0x46544b(0x213),copySetupLink),document[_0x46544b(0x1cd)](_0x46544b(0x24e))?.[_0x46544b(0x1b0)](_0x46544b(0x213),emailSetupLink),document[_0x46544b(0x1b4)](_0x46544b(0x1cf))?.[_0x46544b(0x1b0)]('click',hideSetupLinkModal),document[_0x46544b(0x1cd)](_0x46544b(0x1a8))?.['addEventListener'](_0x46544b(0x1ca),handleSkipPasswordChange),document[_0x46544b(0x1cd)]('retry-users-btn')?.[_0x46544b(0x1b0)](_0x46544b(0x213),loadUsers),document[_0x46544b(0x1cd)](_0x46544b(0x1f9))?.['addEventListener'](_0x46544b(0x213),hideAccessBindingsModal),document['getElementById'](_0x46544b(0x212))?.[_0x46544b(0x1b0)]('click',hideAccessBindingsModal),document[_0x46544b(0x1b4)](_0x46544b(0x23a))?.['addEventListener'](_0x46544b(0x213),hideAccessBindingsModal),document[_0x46544b(0x1cd)](_0x46544b(0x1e1))?.[_0x46544b(0x1b0)]('change',handleServerAdminToggle),document[_0x46544b(0x1cd)](_0x46544b(0x215))?.['addEventListener']('click',()=>{const _0x186150=_0x46544b;document[_0x186150(0x1cd)](_0x186150(0x244))['hidden']=![],document['getElementById'](_0x186150(0x215))[_0x186150(0x248)]=!![],populateUserBindingForm();}),document[_0x46544b(0x1cd)](_0x46544b(0x20d))?.[_0x46544b(0x1b0)](_0x46544b(0x213),()=>{const _0x5a7109=_0x46544b;document[_0x5a7109(0x1cd)](_0x5a7109(0x244))[_0x5a7109(0x248)]=!![],document['getElementById']('add-user-binding-btn')[_0x5a7109(0x248)]=![];}),document['getElementById'](_0x46544b(0x20f))?.[_0x46544b(0x1b0)](_0x46544b(0x213),saveUserBinding);}async function loadUsers(){const _0x1c421a=_0x4a1400,_0x50c335=document[_0x1c421a(0x1cd)](_0x1c421a(0x1a7)),_0x43c7cc=document[_0x1c421a(0x1cd)](_0x1c421a(0x19f)),_0x12c5d5=document['getElementById'](_0x1c421a(0x1ed));try{_0x50c335[_0x1c421a(0x248)]=![],_0x43c7cc[_0x1c421a(0x248)]=!![],_0x12c5d5[_0x1c421a(0x248)]=!![];const _0x2c2d46=await API['getUsers']();state[_0x1c421a(0x23b)]=_0x2c2d46[_0x1c421a(0x23b)]||[],renderUsers(),_0x50c335[_0x1c421a(0x248)]=!![],_0x12c5d5[_0x1c421a(0x248)]=![];}catch(_0x46301a){console[_0x1c421a(0x203)]('Failed\x20to\x20load\x20users',_0x46301a),_0x50c335[_0x1c421a(0x248)]=!![],_0x43c7cc[_0x1c421a(0x248)]=![],document[_0x1c421a(0x1cd)]('users-error-message')[_0x1c421a(0x1f1)]=_0x46301a['message'];}}function renderUsers(){const _0xf8dde3=_0x4a1400,_0x1620e2=document[_0xf8dde3(0x1cd)](_0xf8dde3(0x231)),_0x5c8dda=document[_0xf8dde3(0x1cd)](_0xf8dde3(0x217));if(!_0x1620e2)return;_0x5c8dda&&(_0x5c8dda[_0xf8dde3(0x1f1)]=state[_0xf8dde3(0x23b)][_0xf8dde3(0x1bd)]+'\x20user'+(state[_0xf8dde3(0x23b)][_0xf8dde3(0x1bd)]===0x1?'':'s'));const _0x25392e=[...state[_0xf8dde3(0x23b)]][_0xf8dde3(0x1cc)]((_0x2980ba,_0x4fb6e1)=>{const _0x1c5930=_0xf8dde3,_0x5410c0=new Date(_0x2980ba[_0x1c5930(0x201)])['getTime'](),_0x4bf198=new Date(_0x4fb6e1[_0x1c5930(0x201)])[_0x1c5930(0x1a4)]();return _0x4bf198-_0x5410c0;});_0x1620e2[_0xf8dde3(0x18d)]=_0x25392e[_0xf8dde3(0x1c4)](_0x97c353=>_0xf8dde3(0x246)+Utils['escapeHtml'](_0x97c353['username'])+_0xf8dde3(0x1d6)+Utils[_0xf8dde3(0x23c)](_0x97c353[_0xf8dde3(0x181)])+'</td>\x0a\x20\x20\x20\x20\x20\x20<td>'+Utils[_0xf8dde3(0x23c)](_0x97c353[_0xf8dde3(0x1d4)])+_0xf8dde3(0x1ee)+(_0x97c353[_0xf8dde3(0x1fa)]?_0xf8dde3(0x198):'')+_0xf8dde3(0x188)+(_0x97c353[_0xf8dde3(0x245)]?_0xf8dde3(0x1e4):'')+_0xf8dde3(0x188)+(_0x97c353['hasTeamBinding']?'<span\x20class=\x22role-badge\x20role-team-binding\x22>Team\x20Binding</span>':'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</td>\x0a\x20\x20\x20\x20\x20\x20<td>'+Utils[_0xf8dde3(0x17f)](_0x97c353['created_at'])+_0xf8dde3(0x1dd)+_0x97c353['id']+'\x27)\x22\x20title=\x22Edit\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20width=\x2214\x22\x20height=\x2214\x22\x20viewBox=\x220\x200\x2024\x2024\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=\x22M11\x204H4a2\x202\x200\x200\x200-2\x202v14a2\x202\x200\x200\x200\x202\x202h14a2\x202\x200\x200\x200\x202-2v-7\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M18.5\x202.5a2.121\x202.121\x200\x200\x201\x203\x203L12\x2015l-4\x201\x201-4\x209.5-9.5z\x22></path>\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\x20\x20<button\x20class=\x22btn-icon\x20btn-small\x22\x20onclick=\x22window.showAccessBindings(\x27'+_0x97c353['id']+'\x27)\x22\x20title=\x22Access\x20Bindings\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20width=\x2214\x22\x20height=\x2214\x22\x20viewBox=\x220\x200\x2024\x2024\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=\x22M12\x2022s8-4\x208-10V5l-8-3-8\x203v7c0\x206\x208\x2010\x208\x2010z\x22></path>\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\x20\x20<button\x20class=\x22btn-icon\x20btn-small\x20btn-danger\x22\x20onclick=\x22window.deleteUser(\x27'+_0x97c353['id']+_0xf8dde3(0x210)+_0x97c353['id']+_0xf8dde3(0x1a1))[_0xf8dde3(0x190)]('');}window[_0x4a1400(0x24b)]=function(_0x5d8043){const _0x5ea2ed=_0x4a1400,_0x243cf7=state[_0x5ea2ed(0x23b)][_0x5ea2ed(0x239)](_0x4af58b=>_0x4af58b['id']===_0x5d8043);if(!_0x243cf7)return;state['bindingsUserId']=_0x5d8043,state[_0x5ea2ed(0x1f5)]=![];const _0x6d7ed6=document[_0x5ea2ed(0x1cd)](_0x5ea2ed(0x233)),_0x4b18e4=document['getElementById']('bindings-modal-title');_0x4b18e4[_0x5ea2ed(0x1f1)]='Access\x20Bindings\x20—\x20'+_0x243cf7['name'];const _0x19567a=document[_0x5ea2ed(0x1cd)]('user-is-server-admin');_0x19567a&&(_0x19567a['checked']=!!_0x243cf7[_0x5ea2ed(0x1fa)]),document[_0x5ea2ed(0x1cd)](_0x5ea2ed(0x244))[_0x5ea2ed(0x248)]=!![],document['getElementById']('add-user-binding-btn')[_0x5ea2ed(0x248)]=![],_0x6d7ed6[_0x5ea2ed(0x248)]=![],loadUserBindings(_0x5d8043);};function hasUnsavedBindingChanges(){const _0x16385e=_0x4a1400,_0x550c3a=document[_0x16385e(0x1cd)](_0x16385e(0x244));return _0x550c3a&&!_0x550c3a[_0x16385e(0x248)];}async function hideAccessBindingsModal(){const _0x5be28c=_0x4a1400;if(hasUnsavedBindingChanges()){if(!confirm(_0x5be28c(0x208)))return;document['getElementById'](_0x5be28c(0x244))[_0x5be28c(0x248)]=!![],document['getElementById'](_0x5be28c(0x215))[_0x5be28c(0x248)]=![];}const _0x31b6fd=document[_0x5be28c(0x1cd)]('bindings-modal');_0x31b6fd[_0x5be28c(0x248)]=!![];const _0x4f25bf=state[_0x5be28c(0x1f5)];state[_0x5be28c(0x1ff)]=null,state[_0x5be28c(0x1b9)]=[],state[_0x5be28c(0x1f5)]=![],_0x4f25bf&&await loadUsers();}async function handleServerAdminToggle(_0xd6af6f){const _0x52fff0=_0x4a1400;if(!state['bindingsUserId'])return;const _0x47b0f6=_0xd6af6f[_0x52fff0(0x23f)],_0x10d586=_0x47b0f6['checked'];try{await API['updateUser'](state[_0x52fff0(0x1ff)],{'isServerAdmin':_0x10d586}),Utils[_0x52fff0(0x1af)](_0x10d586?_0x52fff0(0x1d5):_0x52fff0(0x1d7),_0x52fff0(0x1c9));const _0x509d8f=state[_0x52fff0(0x23b)][_0x52fff0(0x239)](_0x18c89f=>_0x18c89f['id']===state['bindingsUserId']);_0x509d8f&&(_0x509d8f[_0x52fff0(0x1fa)]=_0x10d586,renderUsers());}catch(_0x40832b){_0x47b0f6[_0x52fff0(0x1d1)]=!_0x10d586,Utils[_0x52fff0(0x1af)](_0x40832b[_0x52fff0(0x1eb)],_0x52fff0(0x203));}}async function loadUserBindings(_0x4b216b){const _0x19f1d2=_0x4a1400,_0x364de4=document[_0x19f1d2(0x1cd)](_0x19f1d2(0x247)),_0x5bccc2=document[_0x19f1d2(0x1cd)](_0x19f1d2(0x17e)),_0x90f0e5=document['getElementById'](_0x19f1d2(0x235)),_0x2b9e7e=document[_0x19f1d2(0x1cd)](_0x19f1d2(0x215)),_0x323d49=document[_0x19f1d2(0x1cd)](_0x19f1d2(0x1b2)),_0xe0df5b=document[_0x19f1d2(0x1cd)](_0x19f1d2(0x1a2));_0x364de4[_0x19f1d2(0x248)]=![],_0x5bccc2['hidden']=!![],_0x90f0e5[_0x19f1d2(0x1ad)][_0x19f1d2(0x1ac)]=_0x19f1d2(0x1ec),_0x2b9e7e['hidden']=!![],_0x323d49['hidden']=!![],document[_0x19f1d2(0x1cd)](_0x19f1d2(0x244))[_0x19f1d2(0x248)]=!![];try{const [_0x4f1776,_0xac1530]=await Promise[_0x19f1d2(0x230)]([API[_0x19f1d2(0x1a0)]({'subject_type':_0x19f1d2(0x22a),'subject_id':_0x4b216b}),API[_0x19f1d2(0x22f)]()]);state['userBindings']=_0x4f1776[_0x19f1d2(0x22d)]||[];const _0xf7cc31=(_0xac1530[_0x19f1d2(0x22c)]||[])[_0x19f1d2(0x1ab)](_0xf63ad=>(_0xf63ad['members']||[])[_0x19f1d2(0x1e8)](_0x4b216b)),_0x303c8d=[];if(_0xf7cc31[_0x19f1d2(0x1bd)]>0x0){const _0x2a3cda=await Promise['all'](_0xf7cc31[_0x19f1d2(0x1c4)](_0x38d22b=>API[_0x19f1d2(0x1a0)]({'subject_type':_0x19f1d2(0x1ef),'subject_id':_0x38d22b['id']})));for(let _0x18d710=0x0;_0x18d710<_0xf7cc31[_0x19f1d2(0x1bd)];_0x18d710++){const _0x51d3d1=_0x2a3cda[_0x18d710][_0x19f1d2(0x22d)]||[];_0x51d3d1['length']>0x0&&_0x303c8d[_0x19f1d2(0x218)](_0xf7cc31[_0x18d710]);}}_0x364de4[_0x19f1d2(0x248)]=!![];state['userBindings'][_0x19f1d2(0x1bd)]===0x0?_0x5bccc2['hidden']=![]:(_0x90f0e5[_0x19f1d2(0x1ad)][_0x19f1d2(0x1ac)]='',renderUserBindingsTable());if(_0x303c8d[_0x19f1d2(0x1bd)]>0x0){const _0x88a6a8=_0x303c8d[_0x19f1d2(0x1c4)](_0x2639b7=>_0x2639b7[_0x19f1d2(0x181)]),_0x3ae426=_0x88a6a8[_0x19f1d2(0x1bd)]<=0x3?_0x88a6a8[_0x19f1d2(0x190)](',\x20'):_0x88a6a8[_0x19f1d2(0x1dc)](0x0,0x3)[_0x19f1d2(0x190)](',\x20')+(_0x19f1d2(0x18e)+(_0x88a6a8[_0x19f1d2(0x1bd)]-0x3)+'\x20more');_0xe0df5b[_0x19f1d2(0x1f1)]='This\x20user\x20also\x20has\x20access\x20via\x20team\x20memberships\x20('+_0x3ae426+').';}else _0xe0df5b[_0x19f1d2(0x1f1)]=_0x19f1d2(0x242);_0x323d49[_0x19f1d2(0x248)]=![],_0x2b9e7e['hidden']=![];}catch(_0x418365){_0x364de4[_0x19f1d2(0x248)]=!![],Utils[_0x19f1d2(0x1af)](_0x19f1d2(0x1fb)+_0x418365[_0x19f1d2(0x1eb)],'error');}}function renderUserBindingsTable(){const _0x258e05=_0x4a1400,_0x202253=document[_0x258e05(0x1cd)](_0x258e05(0x20a));if(!_0x202253)return;_0x202253['innerHTML']=state[_0x258e05(0x1b9)][_0x258e05(0x1c4)](_0xc55fca=>_0x258e05(0x214)+Utils[_0x258e05(0x23c)](_0xc55fca[_0x258e05(0x236)])+_0x258e05(0x224)+Utils[_0x258e05(0x23c)](_0xc55fca['role_name']||_0xc55fca[_0x258e05(0x1c7)])+_0x258e05(0x20e)+_0xc55fca['id']+_0x258e05(0x189))[_0x258e05(0x190)]('');}function populateUserBindingForm(){const _0x5c64d0=_0x4a1400,_0x508b30=document[_0x5c64d0(0x1cd)](_0x5c64d0(0x1c8)),_0x5a749d=document[_0x5c64d0(0x1cd)](_0x5c64d0(0x240)),_0x463526=new Set(state[_0x5c64d0(0x1b9)][_0x5c64d0(0x1c4)](_0x2c87f0=>_0x2c87f0[_0x5c64d0(0x236)])),_0x149975=state[_0x5c64d0(0x187)][_0x5c64d0(0x1ab)](_0x1a2252=>!_0x463526[_0x5c64d0(0x228)](_0x1a2252['name']));_0x508b30[_0x5c64d0(0x18d)]=_0x149975['length']?_0x149975[_0x5c64d0(0x1c4)](_0x9d80a2=>'<option\x20value=\x22'+Utils[_0x5c64d0(0x23c)](_0x9d80a2[_0x5c64d0(0x181)])+'\x22>'+Utils[_0x5c64d0(0x23c)](_0x9d80a2[_0x5c64d0(0x181)])+_0x5c64d0(0x184))['join'](''):_0x5c64d0(0x24f),_0x5a749d[_0x5c64d0(0x18d)]=state[_0x5c64d0(0x18c)][_0x5c64d0(0x1c4)](_0x11a2ed=>_0x5c64d0(0x1e2)+_0x11a2ed['id']+'\x22>'+Utils['escapeHtml'](_0x11a2ed[_0x5c64d0(0x181)])+_0x5c64d0(0x184))[_0x5c64d0(0x190)]('');}async function saveUserBinding(){const _0x455c11=_0x4a1400,_0x6bc65c=document[_0x455c11(0x1cd)](_0x455c11(0x1c8))[_0x455c11(0x24d)],_0xbdd537=document[_0x455c11(0x1cd)](_0x455c11(0x240))[_0x455c11(0x24d)];if(!_0x6bc65c||!_0xbdd537||!state[_0x455c11(0x1ff)])return;const _0x3117ee=document[_0x455c11(0x1cd)](_0x455c11(0x20f));_0x3117ee[_0x455c11(0x204)]=!![],_0x3117ee[_0x455c11(0x1f1)]=_0x455c11(0x1e5);try{await API[_0x455c11(0x1a5)]({'subject_type':_0x455c11(0x22a),'subject_id':state['bindingsUserId'],'role_id':_0xbdd537,'environment':_0x6bc65c}),Utils['showToast'](_0x455c11(0x1a3),_0x455c11(0x1c9)),state[_0x455c11(0x1f5)]=!![],document[_0x455c11(0x1cd)](_0x455c11(0x244))['hidden']=!![],document[_0x455c11(0x1cd)](_0x455c11(0x215))[_0x455c11(0x248)]=![],await loadUserBindings(state[_0x455c11(0x1ff)]);}catch(_0x4b6aca){Utils['showToast'](_0x4b6aca[_0x455c11(0x1eb)],_0x455c11(0x203));}finally{_0x3117ee[_0x455c11(0x204)]=![],_0x3117ee[_0x455c11(0x1f1)]=_0x455c11(0x22b);}}window[_0x4a1400(0x1aa)]=async function(_0xfa8183){const _0x28bab7=_0x4a1400;try{await API['deleteBinding'](_0xfa8183),Utils['showToast']('Binding\x20removed','success'),state['bindingsDirty']=!![],await loadUserBindings(state[_0x28bab7(0x1ff)]);}catch(_0x391fcf){Utils[_0x28bab7(0x1af)](_0x391fcf[_0x28bab7(0x1eb)],_0x28bab7(0x203));}};function showCreateUserModal(){const _0x5cb5a6=_0x4a1400;state[_0x5cb5a6(0x21b)]=null;const _0x4c034d=document[_0x5cb5a6(0x1cd)](_0x5cb5a6(0x1a9)),_0x10386c=document[_0x5cb5a6(0x1cd)](_0x5cb5a6(0x1d9)),_0x2a53a2=document['getElementById'](_0x5cb5a6(0x200)),_0x81a64c=document['getElementById']('password-required'),_0x75e1e4=document[_0x5cb5a6(0x1cd)](_0x5cb5a6(0x238)),_0x34cc89=document[_0x5cb5a6(0x1cd)](_0x5cb5a6(0x19d)),_0x12040b=document[_0x5cb5a6(0x1cd)](_0x5cb5a6(0x1a8));_0x10386c[_0x5cb5a6(0x1f1)]=_0x5cb5a6(0x19a),document[_0x5cb5a6(0x1cd)](_0x5cb5a6(0x1c2))['reset'](),_0x2a53a2[_0x5cb5a6(0x1e0)]=!![];if(_0x81a64c)_0x81a64c[_0x5cb5a6(0x1f1)]='*';_0x34cc89&&(_0x34cc89[_0x5cb5a6(0x1ad)][_0x5cb5a6(0x1ac)]=_0x5cb5a6(0x211),_0x12040b[_0x5cb5a6(0x1d1)]=![]),_0x75e1e4&&(_0x75e1e4[_0x5cb5a6(0x1f1)]='Minimum\x208\x20characters'),_0x4c034d[_0x5cb5a6(0x248)]=![],setTimeout(()=>{const _0x28e0d5=_0x5cb5a6;document[_0x28e0d5(0x1cd)]('user-username')[_0x28e0d5(0x237)]();},0x64);}window[_0x4a1400(0x1e6)]=function(_0x30eba7){const _0x40f2f0=_0x4a1400,_0x30b5ab=state[_0x40f2f0(0x23b)][_0x40f2f0(0x239)](_0x1606f7=>_0x1606f7['id']===_0x30eba7);if(!_0x30b5ab)return;state[_0x40f2f0(0x21b)]=_0x30eba7;const _0x4442e7=document[_0x40f2f0(0x1cd)]('user-modal'),_0x11666b=document[_0x40f2f0(0x1cd)](_0x40f2f0(0x1d9)),_0x3b5def=document[_0x40f2f0(0x1cd)](_0x40f2f0(0x200)),_0x15f484=document[_0x40f2f0(0x1cd)]('password-required'),_0x1bb8f6=document[_0x40f2f0(0x1cd)](_0x40f2f0(0x238)),_0x107f43=document[_0x40f2f0(0x1cd)](_0x40f2f0(0x19d));_0x11666b[_0x40f2f0(0x1f1)]=_0x40f2f0(0x1d3),document['getElementById'](_0x40f2f0(0x1d2))[_0x40f2f0(0x24d)]=_0x30b5ab[_0x40f2f0(0x216)],document[_0x40f2f0(0x1cd)](_0x40f2f0(0x225))[_0x40f2f0(0x24d)]=_0x30b5ab[_0x40f2f0(0x181)],document[_0x40f2f0(0x1cd)](_0x40f2f0(0x220))[_0x40f2f0(0x24d)]=_0x30b5ab['email'],_0x3b5def[_0x40f2f0(0x24d)]='',_0x3b5def[_0x40f2f0(0x1e0)]=![];if(_0x15f484)_0x15f484[_0x40f2f0(0x1f1)]='';_0x107f43&&(_0x107f43[_0x40f2f0(0x1ad)]['display']=_0x40f2f0(0x1ec)),_0x1bb8f6&&(_0x1bb8f6[_0x40f2f0(0x1f1)]=_0x40f2f0(0x182)),_0x4442e7[_0x40f2f0(0x248)]=![],setTimeout(()=>{const _0x11c688=_0x40f2f0;document[_0x11c688(0x1cd)]('user-username')[_0x11c688(0x237)]();},0x64);};function hideUserModal(){const _0x5c7c40=_0x4a1400,_0x2092c3=document[_0x5c7c40(0x1cd)]('user-modal'),_0x91f409=document[_0x5c7c40(0x1cd)](_0x5c7c40(0x229)),_0x1f3594=document['getElementById'](_0x5c7c40(0x19b));_0x2092c3[_0x5c7c40(0x248)]=!![],_0x91f409[_0x5c7c40(0x248)]=!![],state[_0x5c7c40(0x21b)]=null,_0x1f3594&&(_0x1f3594[_0x5c7c40(0x204)]=![],_0x1f3594[_0x5c7c40(0x1f1)]='Save\x20User');}async function saveUser(){const _0x543227=_0x4a1400,_0xb04e6e=document[_0x543227(0x1cd)](_0x543227(0x1c2)),_0x10f981=document[_0x543227(0x1cd)](_0x543227(0x1a8))?.[_0x543227(0x1d1)]||![];if(!_0x10f981&&!_0xb04e6e['checkValidity']()){_0xb04e6e[_0x543227(0x23d)]();return;}const _0x3e537c=document[_0x543227(0x1cd)]('form-error'),_0x1146fa=document['getElementById']('save-user'),_0x394ba2=document[_0x543227(0x1cd)](_0x543227(0x1d2))[_0x543227(0x24d)][_0x543227(0x19e)](),_0x4e253c=document[_0x543227(0x1cd)](_0x543227(0x225))[_0x543227(0x24d)]['trim'](),_0x28b4bf=document['getElementById']('user-email')[_0x543227(0x24d)]['trim'](),_0x5230e2=document['getElementById'](_0x543227(0x200))[_0x543227(0x24d)];if(!_0x394ba2||!_0x4e253c||!_0x28b4bf){_0x3e537c[_0x543227(0x1f1)]=_0x543227(0x1fc),_0x3e537c['hidden']=![],_0x3e537c[_0x543227(0x241)]({'behavior':_0x543227(0x1c1),'block':'nearest'});return;}_0x3e537c['hidden']=!![];const _0x2d66ca=_0x1146fa[_0x543227(0x1f1)];_0x1146fa[_0x543227(0x204)]=!![],_0x1146fa[_0x543227(0x1f1)]=state[_0x543227(0x21b)]?'Updating...':_0x543227(0x21c);try{if(state['editingUserId']){const _0x10ebb6={'username':_0x394ba2,'name':_0x4e253c,'email':_0x28b4bf};_0x5230e2&&(_0x10ebb6['password']=_0x5230e2),await API['updateUser'](state[_0x543227(0x21b)],_0x10ebb6),Utils[_0x543227(0x1af)](_0x543227(0x1fe),'success'),await loadUsers(),hideUserModal();}else{const _0x380f0e={'username':_0x394ba2,'name':_0x4e253c,'email':_0x28b4bf};if(!_0x10f981){if(!_0x5230e2)throw new Error(_0x543227(0x1cb));_0x380f0e[_0x543227(0x183)]=_0x5230e2;}const _0xda2c70=await API[_0x543227(0x1d0)](_0x380f0e),_0x829416=_0xda2c70[_0x543227(0x22a)];if(_0x10f981||!_0x5230e2){const _0x3995de=await API[_0x543227(0x186)](_0x829416['id'],_0x543227(0x1a6),![]);state[_0x543227(0x209)]={'username':_0x829416[_0x543227(0x216)],'email':_0x829416['email'],'url':_0x3995de[_0x543227(0x207)][_0x543227(0x1bb)],'userId':_0x829416['id'],'type':_0x543227(0x1a6),'emailSent':![]},await loadUsers(),hideUserModal(),showSetupLinkModal();}else Utils['showToast'](_0x543227(0x202),'success'),await loadUsers(),hideUserModal();}}catch(_0x9c395a){console[_0x543227(0x203)](_0x543227(0x18a),_0x9c395a),_0x3e537c[_0x543227(0x1f1)]=_0x9c395a[_0x543227(0x1eb)],_0x3e537c[_0x543227(0x248)]=![],_0x3e537c[_0x543227(0x241)]({'behavior':_0x543227(0x1c1),'block':_0x543227(0x1f7)}),_0x1146fa[_0x543227(0x204)]=![],_0x1146fa[_0x543227(0x1f1)]=_0x2d66ca;}}window[_0x4a1400(0x1f2)]=function(_0x4e6d90){const _0x467957=_0x4a1400,_0x5c8358=state['users']['find'](_0x59dbb1=>_0x59dbb1['id']===_0x4e6d90);if(!_0x5c8358)return;state[_0x467957(0x1b6)]=_0x4e6d90;const _0xcc09b5=document[_0x467957(0x1cd)](_0x467957(0x1f4)),_0x32e27b=document[_0x467957(0x1cd)](_0x467957(0x193));_0x32e27b[_0x467957(0x1f1)]=_0x5c8358[_0x467957(0x181)]+'\x20('+_0x5c8358[_0x467957(0x216)]+')',_0xcc09b5[_0x467957(0x248)]=![];};function hideDeleteModal(){const _0x2e4830=_0x4a1400,_0x100c7c=document[_0x2e4830(0x1cd)](_0x2e4830(0x1f4));_0x100c7c['hidden']=!![],state['deletingUserId']=null;const _0x4ff641=document[_0x2e4830(0x1cd)](_0x2e4830(0x1b8));_0x4ff641&&(_0x4ff641['disabled']=![],_0x4ff641['textContent']=_0x2e4830(0x1de));}async function confirmDeleteUser(){const _0x5e01de=_0x4a1400;if(!state[_0x5e01de(0x1b6)])return;const _0x360db5=document['getElementById'](_0x5e01de(0x1b8)),_0xedc026=_0x360db5[_0x5e01de(0x1f1)];_0x360db5[_0x5e01de(0x204)]=!![],_0x360db5[_0x5e01de(0x1f1)]=_0x5e01de(0x1bc);try{await API[_0x5e01de(0x1f2)](state[_0x5e01de(0x1b6)]),Utils['showToast'](_0x5e01de(0x18f),'success'),await loadUsers(),hideDeleteModal();}catch(_0x330067){console['error'](_0x5e01de(0x1da),_0x330067),Utils[_0x5e01de(0x1af)](_0x5e01de(0x1bf)+_0x330067[_0x5e01de(0x1eb)],_0x5e01de(0x203)),_0x360db5[_0x5e01de(0x204)]=![],_0x360db5[_0x5e01de(0x1f1)]=_0xedc026;}}function handleSkipPasswordChange(_0x56f37f){const _0x34fe6b=_0x4a1400,_0x308374=document['getElementById'](_0x34fe6b(0x200)),_0x5d14ae=_0x56f37f['target'][_0x34fe6b(0x1d1)];_0x5d14ae?(_0x308374[_0x34fe6b(0x1e0)]=![],_0x308374[_0x34fe6b(0x204)]=!![],_0x308374['value']=''):(_0x308374['required']=!![],_0x308374[_0x34fe6b(0x204)]=![]);}function _0x457c(){const _0x5dc9ca=['CgfZC3DVCMq','pc9VChrPB24+','z2v0uM9SzurLzMLUAxrPB25Z','y3jLyxrLugfZC3DVCMruB2TLBG','zw52AxjVBM1LBNrZ','cIaGicaGicaGica','jYKIihn0EwXLpsjJB2XVCJOGDMfYkc0Ty29SB3iTzgfUz2vYktSIpLjLBw92ztWVyNv0Dg9UpGOGicaGica8l3rKpGOGicaGpc90CJ4','rMfPBgvKihrVihnHDMuGDxnLCG','rMfPBgvKihrVigvTywLSihnLDhvWigXPBMS','CM9Szxm','Aw5Uzxjive1m','lcbHBMqG','vxnLCIbKzwXLDgvKihn1y2nLC3nMDwXSEq','AM9PBG','y2fUy2vSlwrLBgv0zq','C2HVDW','zgvSzxrLlxvZzxiTBMfTzq','zw1HAwXtzw50','r2vUzxjHDguGtgLUAW','y2XPCgjVyxjK','rw1HAwWGC2vUDcb0BYa','phnWyw4Gy2XHC3m9iNjVBguTyMfKz2uGCM9Szs1Hzg1PBIi+u2vYDMvYiefKBwLUpc9ZCgfUpG','D3jPDgvuzxH0','q3jLyxrLifvZzxi','C2f2zs11C2vY','kt8GvgHPCYb3AwXSignYzwf0zsbHigXPBMSGDgHHDcb0Agv5ignHBIb1C2uGDg8GC2v0igeGBMv3ihbHC3n3B3jKlG','C2TPCc1WyxnZD29Yzc1JB250ywLUzxi','DhjPBq','DxnLCNmTzxjYB3i','z2v0qMLUzgLUz3m','jYKIpLjLC2v0ifbHC3n3B3jKpc9IDxr0B24+cIaGicaGicaGpc9KAxy+cIaGicaGidWVDgq+cIaGica8l3rYpGOGia','DxnLCI10zwfTlwjPBMrPBMDZlxrLEhq','qMLUzgLUzYbHzgrLza','z2v0vgLTzq','y3jLyxrLqMLUzgLUzW','C2v0Dxa','DxnLCNmTBg9HzgLUzW','C2TPCc1WyxnZD29Yza','DxnLCI1TB2rHBa','zgvSzxrLvxnLCKjPBMrPBMDdBgLJAW','zMLSDgvY','zgLZCgXHEq','C3r5Bgu','mZjPtvPnr08','C2HVD1rVyxn0','ywrKrxzLBNrmAxn0zw5LCG','uMvZzxqGugfZC3DVCMq','DxnLCI10zwfTlwjPBMrPBMDZlw5VDgu','mJG1nJHVEwTYzuS','CxvLCNLtzwXLy3rVCG','mJC3nZiWrejywKfI','zgvSzxrPBMDvC2vYswq','r2vUzxjHDguGysbWyxnZD29YzcbYzxnLDcbSAw5RigzVCIa','y29UzMLYBs1KzwXLDgu','DxnLCKjPBMrPBMDZ','zw1HAwWTyNv0Dg9UlxrLEhq','C2v0DxbvCMW','rgvSzxrPBMCUlI4','BgvUz3rO','y3vYCMvUDfvZzxi','rMfPBgvKihrVigrLBgv0zsb1C2vYoIa','z2v0rw52AxjVBM1LBNrZ','C21VB3rO','DxnLCI1MB3jT','DhLWzq','BwfW','ndKWntmWn25wtwD1ra','y3jLyxrLlxvZzxiTyNrU','CM9Szv9Pza','DxnLCI1IAw5KAw5NlwvUDMLYB25Tzw50','C3vJy2vZCW','y2HHBMDL','ugfZC3DVCMqGAxmGCMvXDwLYzwqGzM9Yig5LDYb1C2vYCW','C29YDa','z2v0rwXLBwvUDej5swq','i2rLBgv0zs1TB2rHBcaUBw9KywWTB3zLCMXHEq','i3nLDhvWlwXPBMSTBw9KywWGlM1VzgfSlw92zxjSyxK','y3jLyxrLvxnLCG','y2HLy2TLza','DxnLCI11C2vYBMfTzq','rwrPDcbvC2vY','zw1HAwW','u2vYDMvYiefKBwLUigvUywjSzwq','cIaGicaGicaGpc9KAxy+cIaGicaGidWVDgq+cIaGicaGidX0zd4','u2vYDMvYiefKBwLUihjLBw92zwq','rMfPBgvKihrVignVChKGBgLUAW','Bw9KywWTDgL0Bgu','rMfPBgvKihrVigrLBgv0zsb1C2vY','C2v0DxaTBgLUAY1TB2rHBa','C2XPy2u','pc90zd4kicaGicaGphrKpGOGicaGicaGidXKAxyGy2XHC3m9iNvZzxiTywn0Aw9UCYi+cIaGicaGicaGica8yNv0Dg9UignSyxnZpsjIDg4TAwnVBIbIDg4TC21HBgWIig9Uy2XPy2S9iNDPBMrVDY5LzgL0vxnLCIGN','rgvSzxrLifvZzxi','mJDjC0DxuMi','CMvXDwLYzwq','DxnLCI1PCY1Zzxj2zxiTywrTAw4','pg9WDgLVBIb2ywX1zt0I','otC5nZaWtgvwuLfI','phnWyw4Gy2XHC3m9iNjVBguTyMfKz2uGCM9Szs11C2vYlwjPBMrPBMCIpLvZzxiGqMLUzgLUzZWVC3bHBJ4','qwrKAw5N4OcM','zwrPDfvZzxi','CMvZzxrqyxnZD29Yza','Aw5JBhvKzxm','CMvZzxq','y2XVC2uTzgvSzxrLlw1VzgfS','BwvZC2fNzq','BM9Uzq','DxnLCNmTy29UDgvUDa','pc90zd4kicaGicaGphrKpGOGicaGicaGidXKAxyGy2XHC3m9iMfJy2vZCY1IywrNzxmIpGOGicaGicaGicaG','DgvHBq','z2v0rw1HAwXdB25MAwC','Dgv4DenVBNrLBNq','zgvSzxrLvxnLCG','AhjLzG','zgvSzxrLlw1VzgfS','yMLUzgLUz3neAxj0Eq','rw1HAwWGtgLUAW','BMvHCMvZDa','C2v0DxaTBgLUAY11C2vYBMfTzq','y2XVC2uTyMLUzgLUz3mTBw9KywW','Axntzxj2zxjbzg1PBG','rMfPBgvKihrVigXVywqGyMLUzgLUz3m6ia','ugXLyxnLigzPBgWGAw4GywXSihjLCxvPCMvKigzPzwXKCW','nLbeA0Lquq','vxnLCIb1CgrHDgvKihn1y2nLC3nMDwXSEq','yMLUzgLUz3nvC2vYswq','DxnLCI1WyxnZD29Yza','y3jLyxrLzf9HDa','vxnLCIbJCMvHDgvKihn1y2nLC3nMDwXSEq','zxjYB3i','zgLZywjSzwq','DxnLCKLK','qwnJzxnZigrLBMLLzdOGu2vYDMvYigfKBwLUihbYAxzPBgvNzxmGCMvXDwLYzwq','Dg9Rzw4','ww91igHHDMuGyw4GDw5ZyxzLzcbIAw5KAw5NlIbeAxnJyxjKignOyw5Nzxm/','C2v0DxbmAw5Rrgf0yq','DxnLCI1IAw5KAw5NCY10ywjSzs1IB2r5','y2XVC2uTC2v0DxaTBgLUAY1TB2rHBa','rMfPBgvKihrVihnLBMqGzw1HAwW6ia','y2fUy2vSlxvZzxiTyMLUzgLUzY1IDg4','pc90zd4kicaGicaGphrKpGOGicaGicaGidXIDxr0B24Gy2XHC3m9iMj0BI1NAg9ZDcbIDg4TC21HBgWIig9Uy2XPy2S9iNDPBMrVDY5KzwXLDgvvC2vYqMLUzgLUz0nSAwnRkcC','C2f2zs11C2vYlwjPBMrPBMCTyNrU','jYKIihrPDgXLpsjezwXLDguIpGOGicaGicaGicaGica8C3zNihDPzhrOpsiXnciGAgvPz2H0psiXnciGDMLLD0jVEd0ImcaWidi0idi0iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiJ4kicaGicaGicaGicaGica8Cg9SEwXPBMuGCg9PBNrZpsiZidyGnsa2idiXidyIpJWVCg9SEwXPBMu+cIaGicaGicaGicaGicaGphbHDgGGzd0Itte5idz2mtrHmIaYidaGmcaXltiGmKG3ytiGmIaWidaGms0YltjwnM0ZidbwngeYidiGmcaWideGmI0YAdrHmIaYidaGmcaXidiGmNyYiJ48l3bHDgG+cIaGicaGicaGicaGidWVC3zNpGOGicaGicaGicaGpc9IDxr0B24+cIaGicaGicaGica8yNv0Dg9UignSyxnZpsjIDg4TC2vJB25Kyxj5igj0BI1ZBwfSBciGB25JBgLJAZ0ID2LUzg93lNjLC2v0ugfZC3DVCMqOjW','yMXVy2S','y2XVC2uTyMLUzgLUz3mTBw9KywWTzM9VDgvY','y2XPy2S','cIaGica8Dhi+cIaGicaGidX0zd4','ywrKlxvZzxiTyMLUzgLUzY1IDg4','DxnLCM5HBwu','DxnLCI1JB3vUDa','ChvZAa','z2v0q3vYCMvUDfvZzxi','zw1HAwXfCNjVCG','zwrPDgLUz1vZzxjjza','q3jLyxrPBMCUlI4','re9nq29UDgvUDeXVywrLza','mtq5mZq5zMHvuMfw','i3vZzxiTBw9KywWGlM1VzgfSlw92zxjSyxK','DxnLCI1LBwfPBa','nte0nJCYzu9iu1jb','zw1HAwXdB25MAwD1CMvK','mZG3mZm1v1rUugnn','pc90zd4kicaGicaGphrKpG','DxnLCI1Uyw1L','Aw5KzxGUAhrTBa','y2XVC2uTDxnLCI1TB2rHBa','AgfZ','zM9YBs1LCNjVCG','DxnLCG','qwrKiejPBMrPBMC','DgvHBxm','yMLUzgLUz3m','otaZsLjfB3Dd','z2v0vgvHBxm','ywXS','DxnLCNmTDgfIBguTyM9KEq','tgLUAYbJB3bPzwqGDg8Gy2XPCgjVyxjK','yMLUzgLUz3mTBw9KywW','Bg9NAw4UAhrTBa','DxnLCI1IAw5KAw5NCY1SAxn0lwnVBNrHAw5LCG','zw52AxjVBM1LBNq','zM9JDxm','CgfZC3DVCMqTAgLUDa','zMLUza','i2jPBMrPBMDZlw1VzgfSic5TB2rHBc1VDMvYBgf5','DxnLCNm','zxnJyxbLshrTBa','CMvWB3j0vMfSAwrPDhK','y2fUy2vSlxvZzxi','DgfYz2v0','DxnLCI1IAw5KAw5NlxjVBgu','C2nYB2XSsw50B1zPzxC','vgHPCYb1C2vYigHHCYbUBYbHy2nLC3mGDMLHihrLyw0GBwvTyMvYC2HPChmU','DxjS','ywrKlxvZzxiTyMLUzgLUzY1MB3jT','AgfZvxnLCKjPBMrPBMC','cIaGica8Dhi+cIaGicaGidX0zd4kicaGicaGica8zgL2ignSyxnZpsj1C2vYlxvZzxjUyw1LiJ4kicaGicaGicaGia','DxnLCI1IAw5KAw5NCY1SB2fKAw5N','AgLKzgvU','rMfPBgvKihrVignYzwf0zsbWyxnZD29YzcbYzxnLDcbSAw5RoIa','rMfPBgvKihrVignYzwf0zsbWyxnZD29YzcbYzxnLDcbSAw5R','C2HVD0fJy2vZC0jPBMrPBMDZ','rMfPBgvKihrVignOzwnRigvTywLSignVBMzPzW','DMfSDwu','zw1HAwWTC2v0DxaTBgLUAW','pg9WDgLVBIb2ywX1zt0IiJ5bBgWGzw52AxjVBM1LBNrZigfSCMvHzhKGyM91BMq8l29WDgLVBJ4','Bg9JyxrPB24','DxnLCI1IAw5KAw5NCY1LBxb0Eq','zM9YBwf0uMvSyxrPDMvuAw1L','Aw5SAw5LlwjSB2nR','BMfTzq','tgvHDMuGyMXHBMSGDg8GA2vLCcbJDxjYzw50ihbHC3n3B3jK'];_0x457c=function(){return _0x5dc9ca;};return _0x457c();}function showSetupLinkModal(){const _0x349786=_0x4a1400;if(!state[_0x349786(0x209)])return;const _0x34d41b=document['getElementById'](_0x349786(0x1db)),_0x4d234f=document[_0x349786(0x1cd)](_0x349786(0x1f8)),_0x831f5e=document[_0x349786(0x1cd)]('setup-link-url'),_0x2dadb7=document[_0x349786(0x1cd)](_0x349786(0x24e)),_0x7b5a71=document[_0x349786(0x1cd)]('email-button-text');_0x4d234f[_0x349786(0x1f1)]=state[_0x349786(0x209)][_0x349786(0x216)],_0x831f5e['textContent']=state[_0x349786(0x209)]['url'],_0x2dadb7&&_0x7b5a71&&(_0x2dadb7[_0x349786(0x204)]=![],_0x7b5a71['textContent']=_0x349786(0x1f6),state['emailConfigured']&&!state[_0x349786(0x209)][_0x349786(0x194)]?_0x2dadb7[_0x349786(0x1ad)]['display']=_0x349786(0x180):_0x2dadb7[_0x349786(0x1ad)][_0x349786(0x1ac)]=_0x349786(0x1ec)),_0x34d41b['hidden']=![];}function hideSetupLinkModal(){const _0x57c55e=_0x4a1400,_0x251004=document[_0x57c55e(0x1cd)](_0x57c55e(0x1db));_0x251004[_0x57c55e(0x248)]=!![],state[_0x57c55e(0x209)]=null;}async function copySetupLink(){const _0x2e24bf=_0x4a1400;if(!state[_0x2e24bf(0x209)])return;try{await navigator[_0x2e24bf(0x196)][_0x2e24bf(0x199)](state[_0x2e24bf(0x209)][_0x2e24bf(0x243)]),Utils[_0x2e24bf(0x1af)](_0x2e24bf(0x232),_0x2e24bf(0x1c9));}catch(_0x440f4b){console['error'](_0x2e24bf(0x1d8),_0x440f4b),Utils[_0x2e24bf(0x1af)](_0x2e24bf(0x1d8),_0x2e24bf(0x203));}}async function emailSetupLink(){const _0x2021ef=_0x4a1400;if(!state[_0x2021ef(0x209)])return;const _0x2fc49d=document[_0x2021ef(0x1cd)](_0x2021ef(0x24e)),_0x3aeb6b=document['getElementById'](_0x2021ef(0x1ba));if(!_0x2fc49d||!_0x3aeb6b)return;const _0x2a7475=_0x3aeb6b[_0x2021ef(0x1f1)];_0x2fc49d[_0x2021ef(0x204)]=!![],_0x3aeb6b[_0x2021ef(0x1f1)]='Sending...';try{const _0x13c8a1=await API[_0x2021ef(0x186)](state[_0x2021ef(0x209)][_0x2021ef(0x205)],state[_0x2021ef(0x209)][_0x2021ef(0x1c3)],!![]);if(_0x13c8a1[_0x2021ef(0x194)])Utils[_0x2021ef(0x1af)](_0x2021ef(0x197)+state['setupLinkData'][_0x2021ef(0x1d4)],_0x2021ef(0x1c9)),state['setupLinkData'][_0x2021ef(0x194)]=!![],_0x2fc49d[_0x2021ef(0x1ad)][_0x2021ef(0x1ac)]='none';else{const _0x4f9ccf=_0x13c8a1[_0x2021ef(0x21a)]||'Failed\x20to\x20send\x20email';Utils[_0x2021ef(0x1af)](_0x4f9ccf,_0x2021ef(0x203)),_0x2fc49d[_0x2021ef(0x204)]=![],_0x3aeb6b['textContent']=_0x2a7475;}}catch(_0x40607a){console[_0x2021ef(0x203)](_0x2021ef(0x18b),_0x40607a),Utils[_0x2021ef(0x1af)](_0x2021ef(0x20c)+_0x40607a[_0x2021ef(0x1eb)],_0x2021ef(0x203)),_0x2fc49d[_0x2021ef(0x204)]=![],_0x3aeb6b[_0x2021ef(0x1f1)]=_0x2a7475;}}window[_0x4a1400(0x1e7)]=async function(_0x5e0e1a){const _0x3928a6=_0x4a1400,_0x3caf6a=state[_0x3928a6(0x23b)][_0x3928a6(0x239)](_0x3287d9=>_0x3287d9['id']===_0x5e0e1a);if(!_0x3caf6a)return;const _0x310078=await ConfirmDialog[_0x3928a6(0x192)]({'title':_0x3928a6(0x1b1),'message':_0x3928a6(0x1b7)+_0x3caf6a[_0x3928a6(0x181)]+'\x20('+_0x3caf6a[_0x3928a6(0x216)]+_0x3928a6(0x19c),'confirmText':_0x3928a6(0x195)});if(!_0x310078)return;try{const _0x30574e=await API[_0x3928a6(0x186)](_0x5e0e1a,'reset',![]);state[_0x3928a6(0x209)]={'username':_0x3caf6a[_0x3928a6(0x216)],'email':_0x3caf6a[_0x3928a6(0x1d4)],'url':_0x30574e[_0x3928a6(0x207)][_0x3928a6(0x1bb)],'userId':_0x3caf6a['id'],'type':_0x3928a6(0x1e9),'emailSent':![]},showSetupLinkModal();}catch(_0x2c93e2){console[_0x3928a6(0x203)](_0x3928a6(0x24a),_0x2c93e2),Utils['showToast'](_0x3928a6(0x249)+_0x2c93e2[_0x3928a6(0x1eb)],_0x3928a6(0x203));}};
|