@profoundlogic/coderflow-server 0.5.0 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -163
- package/dist/README.md +15 -163
- package/dist/base-image/agent-wrapper.sh +1 -1
- package/dist/capture-screenshot.mjs +34 -0
- package/dist/coder-server.js +1 -1
- package/dist/config/cli-models.json +4 -3
- 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/cleanup-users.js +1 -0
- 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/grant-admin.js +1 -0
- 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/list-roles.js +1 -0
- package/dist/lib/cli/list-users.js +1 -0
- package/dist/lib/cli/server-manager.js +1 -1
- package/dist/lib/cli/set-password.js +1 -0
- 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 -1
- 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/ibmi-sync.js +1 -0
- 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 -1
- 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/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 +1 -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/sync_to_ibmi.sh +204 -0
- 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 +1 -0
- package/dist/web-ui/public/docs/tasks/approval-and-deployment.md +36 -0
- package/dist/web-ui/public/environments.html +1 -1
- 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.html +2 -2
- 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.html +3 -2
- 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.css +3 -2
- package/dist/web-ui/public/settings.html +0 -1
- 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 +39 -12
- package/dist/web-ui/public/task.html +56 -1
- package/dist/web-ui/public/task.js +1 -1
- package/dist/web-ui/public/teams.html +76 -81
- 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.html +12 -11
- package/dist/web-ui/public/users.js +1 -1
- package/dist/web-ui/public/variant-grouping.js +1 -1
- package/package.json +1 -1
- package/dist/lib/cli/migrate-rbac.js +0 -1
- package/dist/lib/scoped-rbac-migration-runner.js +0 -1
- package/dist/scripts/migrate-to-scoped-rbac.js +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x3b645f=_0x45f8;(function(_0x5e6a6c,_0x5091e2){const _0x2ffd47=_0x45f8,_0x50f576=_0x5e6a6c();while(!![]){try{const _0x48ceae=parseInt(_0x2ffd47(0x122))/0x1+parseInt(_0x2ffd47(0x128))/0x2*(parseInt(_0x2ffd47(0x116))/0x3)+parseInt(_0x2ffd47(0x115))/0x4*(-parseInt(_0x2ffd47(0x114))/0x5)+-parseInt(_0x2ffd47(0x164))/0x6*(-parseInt(_0x2ffd47(0x10c))/0x7)+parseInt(_0x2ffd47(0x119))/0x8*(parseInt(_0x2ffd47(0x111))/0x9)+-parseInt(_0x2ffd47(0x12e))/0xa*(-parseInt(_0x2ffd47(0x15f))/0xb)+-parseInt(_0x2ffd47(0x101))/0xc*(parseInt(_0x2ffd47(0x129))/0xd);if(_0x48ceae===_0x5091e2)break;else _0x50f576['push'](_0x50f576['shift']());}catch(_0x214a5c){_0x50f576['push'](_0x50f576['shift']());}}}(_0x2e6a,0x98fd4));function isSharedWorkerSupported(){const _0x5cb45d=_0x45f8;return typeof SharedWorker!==_0x5cb45d(0x134);}function eventTypeToHandler(_0x39f24f){const _0x4ba988=_0x45f8;if(_0x39f24f===_0x4ba988(0x104))return'onConnected';if(_0x39f24f===_0x4ba988(0x13f))return _0x4ba988(0x161);return'on'+_0x39f24f[_0x4ba988(0x139)]('-')['map'](_0x592a18=>_0x592a18['charAt'](0x0)[_0x4ba988(0x130)]()+_0x592a18[_0x4ba988(0x13c)](0x1))[_0x4ba988(0x14e)]('');}const TASK_STREAM_EVENTS=[_0x3b645f(0x126),_0x3b645f(0x162),_0x3b645f(0x157),_0x3b645f(0x150),_0x3b645f(0x138),_0x3b645f(0x165),_0x3b645f(0x113)];export class TaskUpdatesClient{constructor(){const _0x56c0ba=_0x3b645f;this[_0x56c0ba(0x166)]=new Map(),this['worker']=null,this[_0x56c0ba(0x12a)]=null,this[_0x56c0ba(0x11e)]=null,this[_0x56c0ba(0x15b)]=null,this['reconnectTimeout']=null,this[_0x56c0ba(0x118)]=0x0,this[_0x56c0ba(0x14c)]=isSharedWorkerSupported(),this[_0x56c0ba(0x104)]=![],this[_0x56c0ba(0x15c)]=new Map(),this[_0x56c0ba(0x124)]=0x0,this[_0x56c0ba(0x12c)]=this['_handleWorkerMessage'][_0x56c0ba(0x10e)](this),this[_0x56c0ba(0x121)]=this[_0x56c0ba(0x121)]['bind'](this);}['on'](_0x38c43d,_0x451c65){const _0x1dd034=_0x3b645f;return!this[_0x1dd034(0x166)]['has'](_0x38c43d)&&this[_0x1dd034(0x166)][_0x1dd034(0x10b)](_0x38c43d,new Set()),this[_0x1dd034(0x166)][_0x1dd034(0x123)](_0x38c43d)[_0x1dd034(0x146)](_0x451c65),this;}['off'](_0x3cedc8,_0x52dd34){const _0x3ed016=_0x3b645f;return this[_0x3ed016(0x166)][_0x3ed016(0x159)](_0x3cedc8)&&this[_0x3ed016(0x166)]['get'](_0x3cedc8)[_0x3ed016(0x10d)](_0x52dd34),this;}['_emit'](_0x578f80,_0x4b625c){const _0x4bc73a=_0x3b645f;this[_0x4bc73a(0x166)][_0x4bc73a(0x159)](_0x578f80)&&this[_0x4bc73a(0x166)][_0x4bc73a(0x123)](_0x578f80)[_0x4bc73a(0x125)](_0xe96644=>{const _0x16750c=_0x4bc73a;try{_0xe96644(_0x4b625c);}catch(_0xa09cc0){console[_0x16750c(0x13f)]('[SSE\x20Client]\x20Error\x20in\x20'+_0x578f80+_0x16750c(0x102),_0xa09cc0);}});}[_0x3b645f(0x106)](_0xd3ea5f='me'){const _0x2713e3=_0x3b645f;this['userId']=_0xd3ea5f,this[_0x2713e3(0x14c)]?this[_0x2713e3(0x109)](_0xd3ea5f):this[_0x2713e3(0x144)](_0xd3ea5f);}[_0x3b645f(0x109)](_0x4e9e87){const _0x489e3e=_0x3b645f;try{this[_0x489e3e(0x14d)](),this[_0x489e3e(0x12a)][_0x489e3e(0x11f)]({'action':_0x489e3e(0x106),'userId':_0x4e9e87});}catch(_0x4c4539){console[_0x489e3e(0x13f)](_0x489e3e(0x10f),_0x4c4539),this[_0x489e3e(0x14c)]=![],this[_0x489e3e(0x144)](_0x4e9e87);}}[_0x3b645f(0x14d)](){const _0x51cf41=_0x3b645f;!this[_0x51cf41(0x163)]&&(this[_0x51cf41(0x163)]=new SharedWorker(_0x51cf41(0x152)),this[_0x51cf41(0x12a)]=this[_0x51cf41(0x163)][_0x51cf41(0x12a)],this[_0x51cf41(0x12a)][_0x51cf41(0x11d)]=this['_handleWorkerMessage'],this[_0x51cf41(0x12a)]['onmessageerror']=_0xdc1677=>{const _0x3f3286=_0x51cf41;console['error'](_0x3f3286(0x11b),_0xdc1677),this[_0x3f3286(0x131)](_0x3f3286(0x13f),{'error':_0x3f3286(0x147)});},this[_0x51cf41(0x12a)]['start']());}[_0x3b645f(0x12c)](_0xd777fc){const _0xfed51b=_0x3b645f,_0x257397=_0xd777fc[_0xfed51b(0x140)];if(_0x257397[_0xfed51b(0x15d)]&&_0x257397[_0xfed51b(0x15d)][_0xfed51b(0x133)]('task:')){this[_0xfed51b(0x156)](_0x257397);return;}switch(_0x257397[_0xfed51b(0x15d)]){case'connected':this['connected']=!![],this[_0xfed51b(0x131)](_0xfed51b(0x104),{});break;case _0xfed51b(0x13e):case _0xfed51b(0x126):case _0xfed51b(0x155):case'new-task':case _0xfed51b(0x105):try{const _0x1b9fd3=JSON[_0xfed51b(0x12b)](_0x257397[_0xfed51b(0x140)]);this['_emit'](_0x257397['type'],_0x1b9fd3);}catch(_0x69187a){console[_0xfed51b(0x13f)]('[SSE\x20Client]\x20Failed\x20to\x20parse\x20'+_0x257397[_0xfed51b(0x15d)]+'\x20data:',_0x69187a);}break;case _0xfed51b(0x13f):this[_0xfed51b(0x104)]=![],this['_emit'](_0xfed51b(0x13f),_0x257397);break;default:console[_0xfed51b(0x107)]('[SSE\x20Client]\x20Unknown\x20message\x20type:',_0x257397[_0xfed51b(0x15d)]);}}['_handleTaskStreamMessage'](_0x58e99f){const _0x400fab=_0x3b645f,{taskId:_0x33d542,type:_0x26a08b,data:_0x48ab15}=_0x58e99f,_0x10239f=this[_0x400fab(0x15c)][_0x400fab(0x123)](_0x33d542);if(!_0x10239f||_0x10239f['size']===0x0)return;const _0x3fba39=_0x26a08b[_0x400fab(0x11a)]('task:',''),_0x52c4bb=eventTypeToHandler(_0x3fba39);_0x10239f[_0x400fab(0x125)](_0x1cd48a=>{const _0x1c5eff=_0x400fab;if(_0x1cd48a[_0x1c5eff(0x110)][_0x52c4bb])try{const _0x2bd3a9=typeof _0x48ab15===_0x1c5eff(0x127)?JSON['parse'](_0x48ab15):_0x48ab15;_0x1cd48a[_0x1c5eff(0x110)][_0x52c4bb](_0x2bd3a9);}catch(_0x106415){console[_0x1c5eff(0x13f)]('[SSE\x20Client]\x20Error\x20in\x20task\x20'+_0x3fba39+_0x1c5eff(0x14a),_0x106415);}});}[_0x3b645f(0x144)](_0x282067){const _0x4b587a=_0x3b645f;this[_0x4b587a(0x11e)]&&(this[_0x4b587a(0x11e)][_0x4b587a(0x145)](),this[_0x4b587a(0x11e)]=null);const _0x26491f=_0x282067&&_0x282067!=='me'?'?userId='+_0x282067:'';try{this[_0x4b587a(0x11e)]=new EventSource(_0x4b587a(0x132)+_0x26491f),this[_0x4b587a(0x11e)][_0x4b587a(0x13a)]('open',()=>{const _0x1b6c63=_0x4b587a;this['connected']=!![],this[_0x1b6c63(0x118)]=0x0,this[_0x1b6c63(0x131)](_0x1b6c63(0x104),{});}),this[_0x4b587a(0x11e)][_0x4b587a(0x13a)](_0x4b587a(0x13e),_0x199c41=>{const _0x195ae6=_0x4b587a;this[_0x195ae6(0x121)](_0x195ae6(0x13e),_0x199c41),this['reconnectAttempts']=0x0;}),this['eventSource'][_0x4b587a(0x13a)](_0x4b587a(0x126),_0x28eb52=>{const _0x2f9f93=_0x4b587a;this['_handleDirectSSE'](_0x2f9f93(0x126),_0x28eb52);}),this[_0x4b587a(0x11e)]['addEventListener'](_0x4b587a(0x155),_0xd5f276=>{const _0x5e8194=_0x4b587a;this[_0x5e8194(0x121)](_0x5e8194(0x155),_0xd5f276);}),this[_0x4b587a(0x11e)]['addEventListener']('new-task',_0xa79ce0=>{const _0x4c406d=_0x4b587a;this[_0x4c406d(0x121)](_0x4c406d(0x12f),_0xa79ce0);}),this[_0x4b587a(0x11e)]['addEventListener']('queue-position',_0x7c2165=>{const _0x5badd0=_0x4b587a;this[_0x5badd0(0x121)]('queue-position',_0x7c2165);}),this[_0x4b587a(0x11e)]['addEventListener']('error',_0x213bf2=>{const _0x5c1b9c=_0x4b587a;console[_0x5c1b9c(0x13f)]('[SSE\x20Client]\x20Direct\x20SSE\x20error:',_0x213bf2),this[_0x5c1b9c(0x104)]=![],this[_0x5c1b9c(0x131)](_0x5c1b9c(0x13f),{'error':'Connection\x20error'}),this[_0x5c1b9c(0x11e)]&&(this[_0x5c1b9c(0x11e)]['close'](),this[_0x5c1b9c(0x11e)]=null),this[_0x5c1b9c(0x149)]();});}catch(_0x39d61d){console[_0x4b587a(0x13f)](_0x4b587a(0x151),_0x39d61d),this[_0x4b587a(0x131)](_0x4b587a(0x13f),{'error':_0x39d61d[_0x4b587a(0x142)]}),this[_0x4b587a(0x149)]();}}[_0x3b645f(0x121)](_0x22265a,_0x371c5d){const _0x53bb93=_0x3b645f;try{const _0x35d28b=JSON['parse'](_0x371c5d[_0x53bb93(0x140)]);this[_0x53bb93(0x131)](_0x22265a,_0x35d28b);}catch(_0x106628){console[_0x53bb93(0x13f)]('[SSE\x20Client]\x20Failed\x20to\x20parse\x20'+_0x22265a+_0x53bb93(0x11c),_0x106628);}}[_0x3b645f(0x149)](){const _0x2cba81=_0x3b645f;this[_0x2cba81(0x135)]&&clearTimeout(this[_0x2cba81(0x135)]);const _0x3a44f6=Math[_0x2cba81(0x13d)](0x3e8*Math['pow'](0x2,this[_0x2cba81(0x118)]),0x7530);this['reconnectAttempts']++,console['log'](_0x2cba81(0x108)+_0x3a44f6+'ms'),this['reconnectTimeout']=setTimeout(()=>{const _0x36affe=_0x2cba81;this[_0x36affe(0x144)](this['userId']);},_0x3a44f6);}[_0x3b645f(0x141)](_0x4521ce){const _0x35227f=_0x3b645f;if(_0x4521ce===this['userId'])return;this[_0x35227f(0x15b)]=_0x4521ce;if(this[_0x35227f(0x14c)]&&this[_0x35227f(0x12a)])this[_0x35227f(0x12a)][_0x35227f(0x11f)]({'action':_0x35227f(0x141),'userId':_0x4521ce});else this['eventSource']&&this['_connectDirect'](_0x4521ce);}[_0x3b645f(0x15e)](_0x26bdd9,_0x2fa357){const _0x35153a=_0x3b645f;return this[_0x35153a(0x14c)]?this[_0x35153a(0x15a)](_0x26bdd9,_0x2fa357):this['_subscribeTaskDirect'](_0x26bdd9,_0x2fa357);}[_0x3b645f(0x154)](_0x34d289){const _0x13dc3e=_0x3b645f;if(!_0x34d289)return;_0x34d289[_0x13dc3e(0x15d)]===_0x13dc3e(0x163)?this[_0x13dc3e(0x117)](_0x34d289):this[_0x13dc3e(0x160)](_0x34d289);}[_0x3b645f(0x15a)](_0x20f617,_0x4e2dbf){const _0x481476=_0x3b645f;try{this['_ensureWorker']();}catch(_0x5bf40d){return console['error'](_0x481476(0x158),_0x5bf40d),this[_0x481476(0x14c)]=![],this[_0x481476(0x103)](_0x20f617,_0x4e2dbf);}const _0x7b4625=++this[_0x481476(0x124)],_0x26eb0a={'type':_0x481476(0x163),'taskId':_0x20f617,'handlers':_0x4e2dbf,'id':_0x7b4625};return!this[_0x481476(0x15c)][_0x481476(0x159)](_0x20f617)&&(this[_0x481476(0x15c)]['set'](_0x20f617,new Set()),this[_0x481476(0x12a)][_0x481476(0x11f)]({'action':'subscribeTask','taskId':_0x20f617})),this[_0x481476(0x15c)][_0x481476(0x123)](_0x20f617)['add'](_0x26eb0a),_0x26eb0a;}[_0x3b645f(0x117)](_0x83f918){const _0x3c1af3=_0x3b645f,{taskId:_0x40021f}=_0x83f918,_0x100bd7=this['_taskSubscriptions'][_0x3c1af3(0x123)](_0x40021f);if(_0x100bd7){_0x100bd7[_0x3c1af3(0x10d)](_0x83f918);if(_0x100bd7[_0x3c1af3(0x14b)]===0x0){this[_0x3c1af3(0x15c)][_0x3c1af3(0x10d)](_0x40021f);try{this[_0x3c1af3(0x12a)]&&this[_0x3c1af3(0x12a)][_0x3c1af3(0x11f)]({'action':_0x3c1af3(0x154),'taskId':_0x40021f});}catch(_0xd9be6e){}}}}[_0x3b645f(0x103)](_0x3970b0,_0x58725f){const _0x44dcab=_0x3b645f,_0x56c4c8=++this[_0x44dcab(0x124)],_0x5ac92b=new EventSource(_0x44dcab(0x14f)+_0x3970b0+'/stream'),_0x32f034={'type':_0x44dcab(0x137),'taskId':_0x3970b0,'handlers':_0x58725f,'id':_0x56c4c8,'eventSource':_0x5ac92b};!this[_0x44dcab(0x15c)]['has'](_0x3970b0)&&this[_0x44dcab(0x15c)][_0x44dcab(0x10b)](_0x3970b0,new Set());this[_0x44dcab(0x15c)][_0x44dcab(0x123)](_0x3970b0)['add'](_0x32f034);for(const _0x11f390 of TASK_STREAM_EVENTS){const _0xf03450=eventTypeToHandler(_0x11f390);_0x5ac92b[_0x44dcab(0x13a)](_0x11f390,_0x1fd922=>{const _0x160605=_0x44dcab;if(_0x58725f[_0xf03450])try{const _0x8bedb=JSON[_0x160605(0x12b)](_0x1fd922['data']);_0x58725f[_0xf03450](_0x8bedb);}catch(_0x5dc321){console[_0x160605(0x13f)](_0x160605(0x10a)+_0x11f390+':',_0x5dc321);}});}return _0x5ac92b[_0x44dcab(0x13a)](_0x44dcab(0x12d),()=>{const _0x19e56a=_0x44dcab;if(_0x58725f['onConnected'])_0x58725f[_0x19e56a(0x120)]();}),_0x5ac92b[_0x44dcab(0x13a)]('error',()=>{const _0x59aadd=_0x44dcab;if(_0x58725f[_0x59aadd(0x161)])_0x58725f[_0x59aadd(0x161)]({'error':_0x59aadd(0x148)});}),_0x32f034;}[_0x3b645f(0x160)](_0x57deaf){const _0x32c6a4=_0x3b645f;_0x57deaf[_0x32c6a4(0x11e)]&&(_0x57deaf[_0x32c6a4(0x11e)][_0x32c6a4(0x145)](),_0x57deaf[_0x32c6a4(0x11e)]=null);const _0x4f0c78=this[_0x32c6a4(0x15c)][_0x32c6a4(0x123)](_0x57deaf[_0x32c6a4(0x13b)]);_0x4f0c78&&(_0x4f0c78[_0x32c6a4(0x10d)](_0x57deaf),_0x4f0c78['size']===0x0&&this[_0x32c6a4(0x15c)]['delete'](_0x57deaf[_0x32c6a4(0x13b)]));}[_0x3b645f(0x136)](){const _0x213b43=_0x3b645f;this['reconnectTimeout']&&(clearTimeout(this['reconnectTimeout']),this[_0x213b43(0x135)]=null);this[_0x213b43(0x15c)][_0x213b43(0x125)]((_0x50f8e6,_0x1ddb3a)=>{const _0x2903c4=_0x213b43;_0x50f8e6[_0x2903c4(0x125)](_0x1857b0=>{const _0x44c187=_0x2903c4;_0x1857b0[_0x44c187(0x15d)]===_0x44c187(0x137)&&_0x1857b0['eventSource']&&_0x1857b0[_0x44c187(0x11e)]['close']();});}),this[_0x213b43(0x15c)][_0x213b43(0x143)]();if(this[_0x213b43(0x14c)]&&this[_0x213b43(0x12a)])try{this[_0x213b43(0x12a)][_0x213b43(0x11f)]({'action':_0x213b43(0x136)});}catch(_0x3252be){}this[_0x213b43(0x11e)]&&(this[_0x213b43(0x11e)]['close'](),this[_0x213b43(0x11e)]=null),this[_0x213b43(0x104)]=![];}[_0x3b645f(0x153)](){return this['connected'];}[_0x3b645f(0x112)](){const _0x2817df=_0x3b645f;return this[_0x2817df(0x14c)];}}let globalClient=null;export function getTaskUpdatesClient(){return!globalClient&&(globalClient=new TaskUpdatesClient()),globalClient;}function _0x45f8(_0x5bf04d,_0xd76205){_0x5bf04d=_0x5bf04d-0x101;const _0x2e6a28=_0x2e6a();let _0x45f801=_0x2e6a28[_0x5bf04d];if(_0x45f8['aWDKyW']===undefined){var _0x5bf542=function(_0x19b4da){const _0x30bc31='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x39f24f='',_0x592a18='';for(let _0x38c43d=0x0,_0x451c65,_0x3cedc8,_0x52dd34=0x0;_0x3cedc8=_0x19b4da['charAt'](_0x52dd34++);~_0x3cedc8&&(_0x451c65=_0x38c43d%0x4?_0x451c65*0x40+_0x3cedc8:_0x3cedc8,_0x38c43d++%0x4)?_0x39f24f+=String['fromCharCode'](0xff&_0x451c65>>(-0x2*_0x38c43d&0x6)):0x0){_0x3cedc8=_0x30bc31['indexOf'](_0x3cedc8);}for(let _0x578f80=0x0,_0x4b625c=_0x39f24f['length'];_0x578f80<_0x4b625c;_0x578f80++){_0x592a18+='%'+('00'+_0x39f24f['charCodeAt'](_0x578f80)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x592a18);};_0x45f8['wCvXSO']=_0x5bf542,_0x45f8['eMDJSZ']={},_0x45f8['aWDKyW']=!![];}const _0x191581=_0x2e6a28[0x0],_0x8b0eac=_0x5bf04d+_0x191581,_0x231ac9=_0x45f8['eMDJSZ'][_0x8b0eac];return!_0x231ac9?(_0x45f801=_0x45f8['wCvXSO'](_0x45f801),_0x45f8['eMDJSZ'][_0x8b0eac]=_0x45f801):_0x45f801=_0x231ac9,_0x45f801;}function _0x2e6a(){const _0x3d6502=['y29UBMvJDa','D2fYBG','w1ntrsbdBgLLBNrDifnJAgvKDwXPBMCGCMvJB25Uzwn0igLUia','x2nVBM5Ly3rwAwfxB3jRzxi','w1ntrsbdBgLLBNrDievYCM9YihbHCNnPBMCGDgfZAYa','C2v0','n3LSvhHTBa','zgvSzxrL','yMLUza','w1ntrsbdBgLLBNrDifnOyxjLzfDVCMTLCIbMywLSzwqSigzHBgXPBMCGyMfJAYb0BYbKAxjLy3qGu1nfoG','AgfUzgXLCNm','mZC3ntC3ALLZBhDc','AxnvC2LUz1nOyxjLzfDVCMTLCG','y29TCgXLDgu','nJiWzwHutLv6','nZC5nLv6tvLetW','mtm1tvPmv1r1','x3vUC3vIC2nYAwjLvgfZA1DVCMTLCG','CMvJB25Uzwn0qxr0zw1WDhm','offqs2Lhwq','CMvWBgfJzq','w1ntrsbdBgLLBNrDifDVCMTLCIbTzxnZywDLigvYCM9YoG','igrHDge6','B25TzxnZywDL','zxzLBNrtB3vYy2u','Cg9ZDe1LC3nHz2u','B25dB25Uzwn0zwq','x2HHBMrSzurPCMvJDfntrq','mteXmZa2m29yDujZqq','z2v0','x3rHC2TtDwjjzenVDw50zxi','zM9YrwfJAa','ywn0AxzPDhK','C3rYAw5N','ntm2mdbet1HABNm','mtngshz4BuK','Cg9YDa','CgfYC2u','x2HHBMrSzvDVCMTLCK1LC3nHz2u','B3bLBG','mJuXmgnZD1PMrq','BMv3lxrHC2S','Dg9vChbLCKnHC2u','x2vTAxq','l3rHC2TZl3vWzgf0zxm','C3rHCNrZv2L0Aa','Dw5KzwzPBMvK','CMvJB25Uzwn0vgLTzw91Da','zgLZy29UBMvJDa','zgLYzwn0','y2HHBMDLzc1MAwXLCW','C3bSAxq','ywrKrxzLBNrmAxn0zw5LCG','DgfZA0LK','C2XPy2u','BwLU','C25HChnOB3q','zxjYB3i','zgf0yq','y2HHBMDLrMLSDgvY','BwvZC2fNzq','y2XLyxi','x2nVBM5Ly3reAxjLy3q','y2XVC2u','ywrK','v29YA2vYig1LC3nHz2uGzxjYB3i','q29UBMvJDgLVBIbLCNjVCG','x3nJAgvKDwXLuMvJB25Uzwn0','igHHBMrSzxi6','C2L6zq','DxnLu2HHCMvKv29YA2vY','x2vUC3vYzvDVCMTLCG','AM9PBG','l3rHC2TZlW','C3vTBwfYEq','w1ntrsbdBgLLBNrDiezHAwXLzcb0BYbJCMvHDguGrxzLBNrtB3vYy2u6','l3nZzs1ZAgfYzwqTD29YA2vYlMPZ','AxndB25Uzwn0zwq','Dw5ZDwjZy3jPyMvuyxnR','C3rHDhvZ','x2HHBMrSzvrHC2TtDhjLyw1nzxnZywDL','Bwv0ywrHDge','w1ntrsbdBgLLBNrDifnOyxjLzfDVCMTLCIbMywLSzwqGzM9YihrHC2SGC3vIlcbMywXSAw5NigjHy2S6','AgfZ','x3n1yNnJCMLIzvrHC2TwAwfxB3jRzxi','DxnLCKLK','x3rHC2TtDwjZy3jPChrPB25Z','DhLWzq','C3vIC2nYAwjLvgfZAW','mte1mZLhwKzYwLm','x3vUC3vIC2nYAwjLvgfZA0rPCMvJDa','B25fCNjVCG','Bg9NCW','D29YA2vY','mJq2nZyYsu1sDxnw','yxbWlxnLCNzLCI1ZDgf0Dxm','BgLZDgvUzxjZ','mJe1nJu0nJrJEM56B2u','igXPC3rLBMvYoG','x3n1yNnJCMLIzvrHC2TeAxjLy3q','y29UBMvJDgvK','CxvLDwuTCg9ZAxrPB24'];_0x2e6a=function(){return _0x3d6502;};return _0x2e6a();}
|
|
1
|
+
const _0x4e6bd4=_0x3871;function _0x441c(){const _0x4f953d=['zgLYzwn0','ywn0AxzPDhK','C3vIC2nYAwjLvgfZAW','w1ntrsbdBgLLBNrDiezHAwXLzcb0BYbWyxjZzsa','B25TzxnZywDL','x2HHBMrSzvrHC2TtDhjLyw1nzxnZywDL','w1ntrsbdBgLLBNrDierPCMvJDcbtu0uGzxjYB3i6','BwLU','BwvZC2fNzq','CxvLDwuTCg9ZAxrPB24','B3bLBG','nZK5mteZBLrAqxnn','B2zM','DgfZA0LK','w1ntrsbdBgLLBNrDiezHAwXLzcb0BYbJCMvHDguGrxzLBNrtB3vYy2u6','zxjYB3i','igrHDge6','igXPC3rLBMvYoG','zgLZy29UBMvJDa','CgfYC2u','C25HChnOB3q','x3rHC2TtDwjZy3jPChrPB25Z','C3rHCNq','yMLUza','DxnLCKLK','x2nVBM5Ly3rwAwfxB3jRzxi','x2HHBMrSzvDVCMTLCK1LC3nHz2u','l3rHC2TZl3vWzgf0zxm','w1ntrsbdBgLLBNrDifnOyxjLzfDVCMTLCIbMywLSzwqSigzHBgXPBMCGyMfJAYb0BYbKAxjLy3qGu1nfoG','w1ntrsbdBgLLBNrDievYCM9YigLUihrHC2SG','w1ntrsbdBgLLBNrDifnJAgvKDwXPBMCGCMvJB25Uzwn0igLUia','Cg93','Cg9ZDe1LC3nHz2u','C2v0','ywrKrxzLBNrmAxn0zw5LCG','w1ntrsbdBgLLBNrDifvUA25VD24GBwvZC2fNzsb0ExbLoG','mZq2ndq0vLDJu0Lh','B25TzxnZywDLzxjYB3i','y29UBMvJDa','B25fCNjVCG','DxnLu2HHCMvKv29YA2vY','CMvJB25Uzwn0vgLTzw91Da','w1ntrsbdBgLLBNrDievYCM9YihbHCNnPBMCGDgfZAYa','mtu2otq3r3LYB1rk','DgfZAZO','BwfW','mZu4nZi0mezIANvMCW','yxbWlxnLCNzLCI1ZDgf0Dxm','D29YA2vY','Bwv0ywrHDge','y2XVC2u','B25dB25Uzwn0zwq','y2HHBMDLrMLSDgvY','y2HHCKf0','Dw5ZDwjZy3jPyMvuyxnR','C2L6zq','mJbnA2D1ufO','x3nJAgvKDwXLuMvJB25Uzwn0','zxzLBNrtB3vYy2u','DhLWzq','BMv3lxrHC2S','CMvJB25Uzwn0qxr0zw1WDhm','w1ntrsbdBgLLBNrDifnOyxjLzfDVCMTLCIbMywLSzwqGzM9YihrHC2SGC3vIlcbMywXSAw5NigjHy2S6','Dw5KzwzPBMvK','C3rYAw5N','mtG5m1f1CMjoBW','nZrjDMXyruu','z2v0','q29UBMvJDgLVBIbLCNjVCG','x3n1yNnJCMLIzvrHC2TeAxjLy3q','zgf0yq','x3vUC3vIC2nYAwjLvgfZA0rPCMvJDa','mtm1nJbev0P3tfi','ywrK','ndm4mJuXme5vCvrnrq','l3nZzs1ZAgfYzwqTD29YA2vYlMPZ','x2nVBM5Ly3reAxjLy3q','AxndB25Uzwn0zwq','x2vUC3vYzvDVCMTLCG','zM9YrwfJAa','AgfUzgXLCNm','l3rHC2TZlW','mZG3uMrwDMnJ','x3n1yNnJCMLIzvrHC2TwAwfxB3jRzxi','Bg9NCW','AgfZ','x3rHC2TtDwjjzenVDw50zxi','zgvSzxrL','CMvWBgfJzq','D2fYBG','x2vTAxq','v29YA2vYig1LC3nHz2uGzxjYB3i','p3vZzxjjzd0','y2XLyxi','w1ntrsbdBgLLBNrDievYCM9YigLUia','AM9PBG','C3rHDhvZ','Cg9YDa','BgLZDgvUzxjZ','x2HHBMrSzurPCMvJDfntrq','x3vUC3vIC2nYAwjLvgfZA1DVCMTLCG','ndjpvxPot2G','y29UBMvJDgvK'];_0x441c=function(){return _0x4f953d;};return _0x441c();}(function(_0x25966b,_0x7cccf8){const _0x3b8907=_0x3871,_0x119e33=_0x25966b();while(!![]){try{const _0x555ef9=parseInt(_0x3b8907(0x11c))/0x1*(parseInt(_0x3b8907(0x11d))/0x2)+-parseInt(_0x3b8907(0x14d))/0x3+-parseInt(_0x3b8907(0x166))/0x4*(-parseInt(_0x3b8907(0x113))/0x5)+parseInt(_0x3b8907(0x140))/0x6*(parseInt(_0x3b8907(0x16d))/0x7)+-parseInt(_0x3b8907(0x123))/0x8*(parseInt(_0x3b8907(0x12d))/0x9)+-parseInt(_0x3b8907(0x170))/0xa+parseInt(_0x3b8907(0x125))/0xb;if(_0x555ef9===_0x7cccf8)break;else _0x119e33['push'](_0x119e33['shift']());}catch(_0x4311ed){_0x119e33['push'](_0x119e33['shift']());}}}(_0x441c,0x42dc6));function _0x3871(_0x303d76,_0x297eec){_0x303d76=_0x303d76-0x10e;const _0x441cf0=_0x441c();let _0x3871f1=_0x441cf0[_0x303d76];if(_0x3871['KkHYSP']===undefined){var _0x3d8d5f=function(_0x21822c){const _0x47698b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xa38cc0='',_0x5e1f54='';for(let _0x542e72=0x0,_0x190020,_0x154ae6,_0x2765c5=0x0;_0x154ae6=_0x21822c['charAt'](_0x2765c5++);~_0x154ae6&&(_0x190020=_0x542e72%0x4?_0x190020*0x40+_0x154ae6:_0x154ae6,_0x542e72++%0x4)?_0xa38cc0+=String['fromCharCode'](0xff&_0x190020>>(-0x2*_0x542e72&0x6)):0x0){_0x154ae6=_0x47698b['indexOf'](_0x154ae6);}for(let _0xba5c1e=0x0,_0x441699=_0xa38cc0['length'];_0xba5c1e<_0x441699;_0xba5c1e++){_0x5e1f54+='%'+('00'+_0xa38cc0['charCodeAt'](_0xba5c1e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5e1f54);};_0x3871['QPeSmi']=_0x3d8d5f,_0x3871['GgDUKH']={},_0x3871['KkHYSP']=!![];}const _0x4d4c6c=_0x441cf0[0x0],_0x15c97a=_0x303d76+_0x4d4c6c,_0x46a427=_0x3871['GgDUKH'][_0x15c97a];return!_0x46a427?(_0x3871f1=_0x3871['QPeSmi'](_0x3871f1),_0x3871['GgDUKH'][_0x15c97a]=_0x3871f1):_0x3871f1=_0x46a427,_0x3871f1;}function isSharedWorkerSupported(){const _0x62d9f=_0x3871;return typeof SharedWorker!==_0x62d9f(0x11a);}function eventTypeToHandler(_0xa38cc0){const _0x360dd7=_0x3871;if(_0xa38cc0===_0x360dd7(0x141))return'onConnected';if(_0xa38cc0===_0x360dd7(0x151))return'onError';return'on'+_0xa38cc0['split']('-')[_0x360dd7(0x16f)](_0x5e1f54=>_0x5e1f54[_0x360dd7(0x110)](0x0)['toUpperCase']()+_0x5e1f54['slice'](0x1))[_0x360dd7(0x13a)]('');}const TASK_STREAM_EVENTS=['activity',_0x4e6bd4(0x12f),_0x4e6bd4(0x173),'summary','changed-files',_0x4e6bd4(0x171),'complete'];export class TaskUpdatesClient{constructor(){const _0x3a2b07=_0x4e6bd4;this[_0x3a2b07(0x13d)]=new Map(),this[_0x3a2b07(0x172)]=null,this[_0x3a2b07(0x13c)]=null,this['eventSource']=null,this[_0x3a2b07(0x15a)]=null,this[_0x3a2b07(0x16b)]=null,this[_0x3a2b07(0x118)]=0x0,this[_0x3a2b07(0x16a)]=isSharedWorkerSupported(),this[_0x3a2b07(0x141)]=![],this['_taskSubscriptions']=new Map(),this[_0x3a2b07(0x131)]=0x0,this[_0x3a2b07(0x15c)]=this[_0x3a2b07(0x15c)][_0x3a2b07(0x159)](this),this[_0x3a2b07(0x13e)]=this['_handleDirectSSE'][_0x3a2b07(0x159)](this);}['on'](_0x542e72,_0x190020){const _0x4abe96=_0x4e6bd4;return!this[_0x4abe96(0x13d)][_0x4abe96(0x130)](_0x542e72)&&this[_0x4abe96(0x13d)][_0x4abe96(0x163)](_0x542e72,new Set()),this[_0x4abe96(0x13d)]['get'](_0x542e72)[_0x4abe96(0x124)](_0x190020),this;}[_0x4e6bd4(0x14e)](_0x154ae6,_0x2765c5){const _0x3b106e=_0x4e6bd4;return this[_0x3b106e(0x13d)][_0x3b106e(0x130)](_0x154ae6)&&this[_0x3b106e(0x13d)]['get'](_0x154ae6)[_0x3b106e(0x132)](_0x2765c5),this;}['_emit'](_0xba5c1e,_0x441699){const _0x1089df=_0x4e6bd4;this[_0x1089df(0x13d)]['has'](_0xba5c1e)&&this[_0x1089df(0x13d)]['get'](_0xba5c1e)[_0x1089df(0x12a)](_0x49fee0=>{const _0x5ad4d8=_0x1089df;try{_0x49fee0(_0x441699);}catch(_0x5e96f5){console['error'](_0x5ad4d8(0x139)+_0xba5c1e+_0x5ad4d8(0x153),_0x5e96f5);}});}[_0x4e6bd4(0x168)](_0x96c859='me'){const _0x542c60=_0x4e6bd4;this[_0x542c60(0x15a)]=_0x96c859,this['useSharedWorker']?this[_0x542c60(0x15b)](_0x96c859):this[_0x542c60(0x127)](_0x96c859);}['_connectViaWorker'](_0x3da40d){const _0x369c11=_0x4e6bd4;try{this[_0x369c11(0x129)](),this[_0x369c11(0x13c)][_0x369c11(0x162)]({'action':_0x369c11(0x168),'userId':_0x3da40d});}catch(_0x3fc8c8){console[_0x369c11(0x151)](_0x369c11(0x15e),_0x3fc8c8),this[_0x369c11(0x16a)]=![],this[_0x369c11(0x127)](_0x3da40d);}}[_0x4e6bd4(0x129)](){const _0x18e570=_0x4e6bd4;!this[_0x18e570(0x172)]&&(this[_0x18e570(0x172)]=new SharedWorker(_0x18e570(0x126)),this[_0x18e570(0x13c)]=this[_0x18e570(0x172)][_0x18e570(0x13c)],this[_0x18e570(0x13c)][_0x18e570(0x146)]=this[_0x18e570(0x15c)],this['port'][_0x18e570(0x167)]=_0x35e42a=>{const _0x4ae8b4=_0x18e570;console[_0x4ae8b4(0x151)]('[SSE\x20Client]\x20Worker\x20message\x20error:',_0x35e42a),this['_emit']('error',{'error':_0x4ae8b4(0x136)});},this['port'][_0x18e570(0x158)]());}[_0x4e6bd4(0x15c)](_0x4bf0ca){const _0x1dc4df=_0x4e6bd4,_0x5f1a14=_0x4bf0ca[_0x1dc4df(0x121)];if(_0x5f1a14[_0x1dc4df(0x116)]&&_0x5f1a14[_0x1dc4df(0x116)]['startsWith'](_0x1dc4df(0x16e))){this['_handleTaskStreamMessage'](_0x5f1a14);return;}switch(_0x5f1a14[_0x1dc4df(0x116)]){case _0x1dc4df(0x141):this[_0x1dc4df(0x141)]=!![],this['_emit'](_0x1dc4df(0x141),{});break;case'snapshot':case _0x1dc4df(0x143):case'status':case _0x1dc4df(0x117):case _0x1dc4df(0x14b):try{const _0x861d33=JSON[_0x1dc4df(0x155)](_0x5f1a14['data']);this[_0x1dc4df(0x135)](_0x5f1a14[_0x1dc4df(0x116)],_0x861d33);}catch(_0x5cb5a3){console[_0x1dc4df(0x151)](_0x1dc4df(0x145)+_0x5f1a14[_0x1dc4df(0x116)]+_0x1dc4df(0x152),_0x5cb5a3);}break;case'error':this['connected']=![],this[_0x1dc4df(0x135)](_0x1dc4df(0x151),_0x5f1a14);break;default:console[_0x1dc4df(0x134)](_0x1dc4df(0x165),_0x5f1a14[_0x1dc4df(0x116)]);}}[_0x4e6bd4(0x147)](_0x269d24){const _0x5aa013=_0x4e6bd4,{taskId:_0x4ca826,type:_0x4617f8,data:_0x321010}=_0x269d24,_0x38b934=this['_taskSubscriptions'][_0x5aa013(0x11e)](_0x4ca826);if(!_0x38b934||_0x38b934[_0x5aa013(0x112)]===0x0)return;const _0x4377ae=_0x4617f8[_0x5aa013(0x133)](_0x5aa013(0x16e),''),_0x38c603=eventTypeToHandler(_0x4377ae);_0x38b934[_0x5aa013(0x12a)](_0x2fecce=>{const _0x329f37=_0x5aa013;if(_0x2fecce[_0x329f37(0x12b)][_0x38c603])try{const _0x22f7c5=typeof _0x321010===_0x329f37(0x11b)?JSON['parse'](_0x321010):_0x321010;_0x2fecce['handlers'][_0x38c603](_0x22f7c5);}catch(_0x37afbe){console[_0x329f37(0x151)](_0x329f37(0x15f)+_0x4377ae+'\x20handler:',_0x37afbe);}});}['_connectDirect'](_0x43e107){const _0x4d14ce=_0x4e6bd4;this[_0x4d14ce(0x115)]&&(this[_0x4d14ce(0x115)][_0x4d14ce(0x174)](),this[_0x4d14ce(0x115)]=null);const _0x3bde5f=_0x43e107&&_0x43e107!=='me'?_0x4d14ce(0x137)+_0x43e107:'';try{this[_0x4d14ce(0x115)]=new EventSource(_0x4d14ce(0x15d)+_0x3bde5f),this[_0x4d14ce(0x115)][_0x4d14ce(0x164)](_0x4d14ce(0x14c),()=>{const _0x3fa167=_0x4d14ce;this[_0x3fa167(0x141)]=!![],this[_0x3fa167(0x118)]=0x0,this['_emit']('connected',{});}),this[_0x4d14ce(0x115)][_0x4d14ce(0x164)](_0x4d14ce(0x156),_0x56b54c=>{const _0x2c6fa4=_0x4d14ce;this[_0x2c6fa4(0x13e)](_0x2c6fa4(0x156),_0x56b54c),this['reconnectAttempts']=0x0;}),this[_0x4d14ce(0x115)][_0x4d14ce(0x164)](_0x4d14ce(0x143),_0x67d01f=>{const _0x5a411b=_0x4d14ce;this[_0x5a411b(0x13e)](_0x5a411b(0x143),_0x67d01f);}),this[_0x4d14ce(0x115)][_0x4d14ce(0x164)]('status',_0x4a3b79=>{const _0x1c4a0d=_0x4d14ce;this[_0x1c4a0d(0x13e)](_0x1c4a0d(0x13b),_0x4a3b79);}),this[_0x4d14ce(0x115)][_0x4d14ce(0x164)](_0x4d14ce(0x117),_0x1798d5=>{const _0x48c91d=_0x4d14ce;this[_0x48c91d(0x13e)](_0x48c91d(0x117),_0x1798d5);}),this[_0x4d14ce(0x115)][_0x4d14ce(0x164)]('queue-position',_0x46ac6c=>{this['_handleDirectSSE']('queue-position',_0x46ac6c);}),this[_0x4d14ce(0x115)][_0x4d14ce(0x164)]('error',_0x5a8a3a=>{const _0x4cd50d=_0x4d14ce;console[_0x4cd50d(0x151)](_0x4cd50d(0x148),_0x5a8a3a),this[_0x4cd50d(0x141)]=![],this['_emit'](_0x4cd50d(0x151),{'error':_0x4cd50d(0x11f)}),this['eventSource']&&(this[_0x4cd50d(0x115)][_0x4cd50d(0x174)](),this[_0x4cd50d(0x115)]=null),this[_0x4cd50d(0x114)]();});}catch(_0x1e0af6){console[_0x4d14ce(0x151)](_0x4d14ce(0x150),_0x1e0af6),this[_0x4d14ce(0x135)](_0x4d14ce(0x151),{'error':_0x1e0af6[_0x4d14ce(0x14a)]}),this[_0x4d14ce(0x114)]();}}[_0x4e6bd4(0x13e)](_0x4dad44,_0x2a4fe6){const _0x51b0e6=_0x4e6bd4;try{const _0x73996a=JSON[_0x51b0e6(0x155)](_0x2a4fe6['data']);this['_emit'](_0x4dad44,_0x73996a);}catch(_0x3409e9){console[_0x51b0e6(0x151)]('[SSE\x20Client]\x20Failed\x20to\x20parse\x20'+_0x4dad44+'\x20data:',_0x3409e9);}}['_scheduleReconnect'](){const _0x4c5cbb=_0x4e6bd4;this[_0x4c5cbb(0x16b)]&&clearTimeout(this[_0x4c5cbb(0x16b)]);const _0x220b3a=Math[_0x4c5cbb(0x149)](0x3e8*Math[_0x4c5cbb(0x161)](0x2,this['reconnectAttempts']),0x7530);this[_0x4c5cbb(0x118)]++,console['log'](_0x4c5cbb(0x160)+_0x220b3a+'ms'),this[_0x4c5cbb(0x16b)]=setTimeout(()=>{const _0x656d50=_0x4c5cbb;this['_connectDirect'](this[_0x656d50(0x15a)]);},_0x220b3a);}[_0x4e6bd4(0x10f)](_0x3c2cb7){const _0x158bd2=_0x4e6bd4;if(_0x3c2cb7===this[_0x158bd2(0x15a)])return;this[_0x158bd2(0x15a)]=_0x3c2cb7;if(this[_0x158bd2(0x16a)]&&this[_0x158bd2(0x13c)])this[_0x158bd2(0x13c)][_0x158bd2(0x162)]({'action':_0x158bd2(0x10f),'userId':_0x3c2cb7});else this[_0x158bd2(0x115)]&&this[_0x158bd2(0x127)](_0x3c2cb7);}['subscribeTask'](_0x47e560,_0x3fe50e){const _0x2b6bf8=_0x4e6bd4;return this[_0x2b6bf8(0x16a)]?this[_0x2b6bf8(0x12e)](_0x47e560,_0x3fe50e):this[_0x2b6bf8(0x120)](_0x47e560,_0x3fe50e);}[_0x4e6bd4(0x111)](_0x251027){const _0x37edc5=_0x4e6bd4;if(!_0x251027)return;_0x251027['type']===_0x37edc5(0x172)?this[_0x37edc5(0x13f)](_0x251027):this[_0x37edc5(0x122)](_0x251027);}['_subscribeTaskViaWorker'](_0x1773cd,_0x22c126){const _0x35b085=_0x4e6bd4;try{this['_ensureWorker']();}catch(_0x26671e){return console[_0x35b085(0x151)](_0x35b085(0x119),_0x26671e),this[_0x35b085(0x16a)]=![],this[_0x35b085(0x120)](_0x1773cd,_0x22c126);}const _0x29a06f=++this['_taskSubIdCounter'],_0x22efe4={'type':'worker','taskId':_0x1773cd,'handlers':_0x22c126,'id':_0x29a06f};return!this[_0x35b085(0x157)][_0x35b085(0x130)](_0x1773cd)&&(this[_0x35b085(0x157)][_0x35b085(0x163)](_0x1773cd,new Set()),this[_0x35b085(0x13c)][_0x35b085(0x162)]({'action':_0x35b085(0x144),'taskId':_0x1773cd})),this[_0x35b085(0x157)]['get'](_0x1773cd)['add'](_0x22efe4),_0x22efe4;}[_0x4e6bd4(0x13f)](_0x113693){const _0x4a9b1d=_0x4e6bd4,{taskId:_0x40c4fe}=_0x113693,_0x156c9e=this[_0x4a9b1d(0x157)][_0x4a9b1d(0x11e)](_0x40c4fe);if(_0x156c9e){_0x156c9e[_0x4a9b1d(0x132)](_0x113693);if(_0x156c9e[_0x4a9b1d(0x112)]===0x0){this['_taskSubscriptions'][_0x4a9b1d(0x132)](_0x40c4fe);try{this[_0x4a9b1d(0x13c)]&&this[_0x4a9b1d(0x13c)]['postMessage']({'action':_0x4a9b1d(0x111),'taskId':_0x40c4fe});}catch(_0x573d5c){}}}}[_0x4e6bd4(0x120)](_0x51f18e,_0x3f43c6){const _0x4ea400=_0x4e6bd4,_0x1afc92=++this[_0x4ea400(0x131)],_0x3f3148=new EventSource(_0x4ea400(0x12c)+_0x51f18e+'/stream'),_0x5b2a85={'type':_0x4ea400(0x142),'taskId':_0x51f18e,'handlers':_0x3f43c6,'id':_0x1afc92,'eventSource':_0x3f3148};!this['_taskSubscriptions'][_0x4ea400(0x130)](_0x51f18e)&&this[_0x4ea400(0x157)][_0x4ea400(0x163)](_0x51f18e,new Set());this['_taskSubscriptions']['get'](_0x51f18e)[_0x4ea400(0x124)](_0x5b2a85);for(const _0xab35e5 of TASK_STREAM_EVENTS){const _0x36fd51=eventTypeToHandler(_0xab35e5);_0x3f3148[_0x4ea400(0x164)](_0xab35e5,_0x3bda2b=>{const _0x30f1f3=_0x4ea400;if(_0x3f43c6[_0x36fd51])try{const _0xda702e=JSON[_0x30f1f3(0x155)](_0x3bda2b[_0x30f1f3(0x121)]);_0x3f43c6[_0x36fd51](_0xda702e);}catch(_0x3bab18){console['error'](_0x30f1f3(0x16c)+_0xab35e5+':',_0x3bab18);}});}return _0x3f3148[_0x4ea400(0x164)](_0x4ea400(0x14c),()=>{const _0x3b82fc=_0x4ea400;if(_0x3f43c6[_0x3b82fc(0x10e)])_0x3f43c6['onConnected']();}),_0x3f3148[_0x4ea400(0x164)](_0x4ea400(0x151),()=>{const _0x5e9cc6=_0x4ea400;if(_0x3f43c6[_0x5e9cc6(0x169)])_0x3f43c6[_0x5e9cc6(0x169)]({'error':_0x5e9cc6(0x11f)});}),_0x5b2a85;}['_unsubscribeTaskDirect'](_0x1bef54){const _0x43fd99=_0x4e6bd4;_0x1bef54[_0x43fd99(0x115)]&&(_0x1bef54[_0x43fd99(0x115)][_0x43fd99(0x174)](),_0x1bef54[_0x43fd99(0x115)]=null);const _0x31822b=this[_0x43fd99(0x157)][_0x43fd99(0x11e)](_0x1bef54[_0x43fd99(0x14f)]);_0x31822b&&(_0x31822b['delete'](_0x1bef54),_0x31822b[_0x43fd99(0x112)]===0x0&&this['_taskSubscriptions'][_0x43fd99(0x132)](_0x1bef54[_0x43fd99(0x14f)]));}[_0x4e6bd4(0x154)](){const _0x47d5fc=_0x4e6bd4;this['reconnectTimeout']&&(clearTimeout(this['reconnectTimeout']),this[_0x47d5fc(0x16b)]=null);this[_0x47d5fc(0x157)][_0x47d5fc(0x12a)]((_0x42088a,_0x5ad8a2)=>{const _0x5db5fb=_0x47d5fc;_0x42088a[_0x5db5fb(0x12a)](_0x200e2d=>{const _0x1192e4=_0x5db5fb;_0x200e2d['type']===_0x1192e4(0x142)&&_0x200e2d[_0x1192e4(0x115)]&&_0x200e2d[_0x1192e4(0x115)][_0x1192e4(0x174)]();});}),this[_0x47d5fc(0x157)][_0x47d5fc(0x138)]();if(this[_0x47d5fc(0x16a)]&&this[_0x47d5fc(0x13c)])try{this[_0x47d5fc(0x13c)][_0x47d5fc(0x162)]({'action':_0x47d5fc(0x154)});}catch(_0x2334cc){}this[_0x47d5fc(0x115)]&&(this['eventSource'][_0x47d5fc(0x174)](),this['eventSource']=null),this['connected']=![];}[_0x4e6bd4(0x128)](){return this['connected'];}['isUsingSharedWorker'](){const _0xaf770c=_0x4e6bd4;return this[_0xaf770c(0x16a)];}}let globalClient=null;export function getTaskUpdatesClient(){return!globalClient&&(globalClient=new TaskUpdatesClient()),globalClient;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x5e0dd0=_0x3a96;(function(_0x3f7dd0,_0x295e6d){const _0xce67ee=_0x3a96,_0x1c6a3e=_0x3f7dd0();while(!![]){try{const _0x5dc7c8=parseInt(_0xce67ee(0x1b9))/0x1+parseInt(_0xce67ee(0x1a6))/0x2*(parseInt(_0xce67ee(0x1c8))/0x3)+parseInt(_0xce67ee(0x1d9))/0x4+-parseInt(_0xce67ee(0x1db))/0x5*(-parseInt(_0xce67ee(0x1c0))/0x6)+-parseInt(_0xce67ee(0x1c5))/0x7+-parseInt(_0xce67ee(0x1e2))/0x8*(-parseInt(_0xce67ee(0x1b5))/0x9)+-parseInt(_0xce67ee(0x1e6))/0xa*(parseInt(_0xce67ee(0x1be))/0xb);if(_0x5dc7c8===_0x295e6d)break;else _0x1c6a3e['push'](_0x1c6a3e['shift']());}catch(_0x423588){_0x1c6a3e['push'](_0x1c6a3e['shift']());}}}(_0x2292,0xe92aa));const ports=new Set();function _0x2292(){const _0x547fd8=['C25HChnOB3q','w1ntrsbxB3jRzxjDie5LDYbWB3j0ignVBM5Ly3rLzc4Gvg90ywWGCg9YDhm6ia','BxmGkgf0DgvTChqG','l3rHC2TZlW','w1ntrsbxB3jRzxjDifbVCNqGBwvZC2fNzsbLCNjVCJO','Cg9ZDe1LC3nHz2u','mta0nZi2ohLMAxjcEa','CxvLDwuTCg9ZAxrPB24','nufUtNPxwa','C3vIC2nYAwjLvgfZAW','ywrK','ChvZAa','CMvJB25Uzwn0vgLTzw91Da','C3rHDhvZ','zxjYB3i','mtuWmtq1mdrhD1DywNK','ywn0AxzPDhK','D2fYBG','B3bLBG','mJm1nJaWmtbgB1Pevxi','zgvSzxrL','C2v0','mZj3t21PtMu','BgvUz3rO','ywrKrxzLBNrmAxn0zw5LCG','z2v0','t1bftG','C3rYAw5NAwz5','C3vTBwfYEq','l3n0CMvHBq','BwvZC2fNzq','Cg93','DgfZAZPJB25Uzwn0zwq','DgfZAZPLCNjVCG','q29UBMvJDgLVBIbLCNjVCG','C3vIC2nYAwjLzfbVCNrZ','y29TCgXLDgu','ouvvrhzYsW','Bwv0ywrHDge','l3rHC2TZl3vWzgf0zxm','zxzLBNrtB3vYy2u','ntGXndC5su9cEhnf','CMvJB25Uzwn0qxr0zw1WDhm','zgLZy29UBMvJDa','w1ntrsbxB3jRzxjDienVBM5Ly3rPB24GzxjYB3i6','Bg9N','mtfJB2fcC0O','C2L6zq','mZi2nJC3oejewNLwDa','y2XVC2u','yxbWlxnLCNzLCI1ZDgf0Dxm','CMvHzhLtDgf0zq','zM9YrwfJAa','mtaWmJqZndnnCvPSC1m','zgf0yq','BwLU','mJC3mJi0vxDVCfzN','q0Xpu0ve','Bg9NCW','w1ntrsbxB3jRzxjDifnJAgvKDwXPBMCGCMvJB25Uzwn0igLUia','w1ntrsbxB3jRzxjDifbVCNqGzgLZy29UBMvJDgvKlIbuB3rHBcbWB3j0CZOG','w1ntrsbxB3jRzxjDiezHAwXLzcb0BYbZzw5KihrVihbVCNqSihjLBw92Aw5NoG','y29UBMvJDgvK','Cg9YDhm','w1ntrsbxB3jRzxjDiezHAwXLzcb0BYbJCMvHDguGDgfZAYbfDMvUDfnVDxjJzsbMB3iG','BMv3lxrHC2S','DgfZAZO'];_0x2292=function(){return _0x547fd8;};return _0x2292();}let eventSource=null,currentUserId=null,reconnectTimeout=null,reconnectAttempts=0x0;const MAX_RECONNECT_DELAY=0x7530,taskStreams=new Map(),TASK_STREAM_EVENTS=[_0x5e0dd0(0x1e3),_0x5e0dd0(0x1ca),_0x5e0dd0(0x1b6),_0x5e0dd0(0x1ac),'changed-files',_0x5e0dd0(0x1c2),_0x5e0dd0(0x1b4)];function connect(_0x57bdd6){const _0xe23262=_0x5e0dd0;eventSource&¤tUserId!==_0x57bdd6&&(eventSource[_0xe23262(0x1c1)](),eventSource=null);if(eventSource&&eventSource[_0xe23262(0x1c3)]!==EventSource[_0xe23262(0x1c9)])return;currentUserId=_0x57bdd6;const _0x132fad=_0x57bdd6&&_0x57bdd6!=='me'?'?userId='+_0x57bdd6:'';try{eventSource=new EventSource(_0xe23262(0x1b7)+_0x132fad),eventSource[_0xe23262(0x1a8)](_0xe23262(0x1d3),_0x9dbaac=>{const _0x2590cf=_0xe23262;broadcast({'type':_0x2590cf(0x1d3),'data':_0x9dbaac[_0x2590cf(0x1c6)]}),reconnectAttempts=0x0;}),eventSource[_0xe23262(0x1a8)](_0xe23262(0x1e3),_0x4317dd=>{const _0x194352=_0xe23262;broadcast({'type':_0x194352(0x1e3),'data':_0x4317dd['data']});}),eventSource[_0xe23262(0x1a8)](_0xe23262(0x1e0),_0xb45c92=>{const _0x38aba9=_0xe23262;broadcast({'type':'status','data':_0xb45c92[_0x38aba9(0x1c6)]});}),eventSource[_0xe23262(0x1a8)](_0xe23262(0x1d1),_0x1b1dbb=>{const _0x309df8=_0xe23262;broadcast({'type':_0x309df8(0x1d1),'data':_0x1b1dbb[_0x309df8(0x1c6)]});}),eventSource['addEventListener'](_0xe23262(0x1da),_0x1aaee7=>{const _0x452c5a=_0xe23262;broadcast({'type':_0x452c5a(0x1da),'data':_0x1aaee7['data']});}),eventSource['addEventListener'](_0xe23262(0x1e5),()=>{const _0x2179a1=_0xe23262;broadcast({'type':_0x2179a1(0x1ce)}),reconnectAttempts=0x0;}),eventSource['addEventListener'](_0xe23262(0x1e1),_0x3e0bd9=>{const _0x2514e0=_0xe23262;console[_0x2514e0(0x1e1)](_0x2514e0(0x1bc),_0x3e0bd9),broadcast({'type':_0x2514e0(0x1e1),'error':_0x2514e0(0x1b2)}),eventSource&&(eventSource[_0x2514e0(0x1c1)](),eventSource=null),scheduleReconnect();});}catch(_0x4c6ee6){console[_0xe23262(0x1e1)]('[SSE\x20Worker]\x20Failed\x20to\x20create\x20EventSource:',_0x4c6ee6),broadcast({'type':'error','error':_0x4c6ee6[_0xe23262(0x1ae)]}),scheduleReconnect();}}function scheduleReconnect(){const _0x1cebe0=_0x5e0dd0;reconnectTimeout&&clearTimeout(reconnectTimeout);if(ports[_0x1cebe0(0x1bf)]===0x0)return;const _0x53170f=Math[_0x1cebe0(0x1c7)](0x3e8*Math[_0x1cebe0(0x1af)](0x2,reconnectAttempts),MAX_RECONNECT_DELAY);reconnectAttempts++,console[_0x1cebe0(0x1bd)](_0x1cebe0(0x1cb)+_0x53170f+_0x1cebe0(0x1d5)+reconnectAttempts+')'),reconnectTimeout=setTimeout(()=>{const _0xdfa99=_0x1cebe0;ports[_0xdfa99(0x1bf)]>0x0&&connect(currentUserId);},_0x53170f);}function _0x3a96(_0x5f1849,_0x16efc2){_0x5f1849=_0x5f1849-0x1a4;const _0x229218=_0x2292();let _0x3a96be=_0x229218[_0x5f1849];if(_0x3a96['IGWcoJ']===undefined){var _0x450f1c=function(_0x2467ad){const _0x3d5e63='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x57bdd6='',_0x132fad='';for(let _0x9dbaac=0x0,_0x4317dd,_0xb45c92,_0x1b1dbb=0x0;_0xb45c92=_0x2467ad['charAt'](_0x1b1dbb++);~_0xb45c92&&(_0x4317dd=_0x9dbaac%0x4?_0x4317dd*0x40+_0xb45c92:_0xb45c92,_0x9dbaac++%0x4)?_0x57bdd6+=String['fromCharCode'](0xff&_0x4317dd>>(-0x2*_0x9dbaac&0x6)):0x0){_0xb45c92=_0x3d5e63['indexOf'](_0xb45c92);}for(let _0x1aaee7=0x0,_0x3e0bd9=_0x57bdd6['length'];_0x1aaee7<_0x3e0bd9;_0x1aaee7++){_0x132fad+='%'+('00'+_0x57bdd6['charCodeAt'](_0x1aaee7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x132fad);};_0x3a96['rxEQuY']=_0x450f1c,_0x3a96['rvRLYa']={},_0x3a96['IGWcoJ']=!![];}const _0x771153=_0x229218[0x0],_0x596c81=_0x5f1849+_0x771153,_0x282283=_0x3a96['rvRLYa'][_0x596c81];return!_0x282283?(_0x3a96be=_0x3a96['rxEQuY'](_0x3a96be),_0x3a96['rvRLYa'][_0x596c81]=_0x3a96be):_0x3a96be=_0x282283,_0x3a96be;}function broadcast(_0x35b0ec){const _0xc4d140=_0x5e0dd0,_0x20f89d=[];ports[_0xc4d140(0x1c4)](_0x4c5637=>{const _0x37f9d0=_0xc4d140;try{_0x4c5637['postMessage'](_0x35b0ec);}catch(_0x43732c){console['warn'](_0x37f9d0(0x1cd),_0x43732c),_0x20f89d[_0x37f9d0(0x1de)](_0x4c5637);}}),_0x20f89d['length']>0x0&&cleanUpDeadPorts(_0x20f89d),ports[_0xc4d140(0x1bf)]===0x0&&eventSource&&(console[_0xc4d140(0x1bd)]('[SSE\x20Worker]\x20No\x20more\x20connected\x20ports,\x20closing\x20SSE'),eventSource['close'](),eventSource=null,reconnectTimeout&&(clearTimeout(reconnectTimeout),reconnectTimeout=null));}function subscribeTask(_0x4ab33d,_0x5a8df4){const _0x5c3e66=_0x5e0dd0;let _0x419155=taskStreams[_0x5c3e66(0x1a9)](_0x5a8df4);!_0x419155&&(_0x419155={'eventSource':null,'reconnectTimeout':null,'reconnectAttempts':0x0,'subscribedPorts':new Set()},taskStreams[_0x5c3e66(0x1a5)](_0x5a8df4,_0x419155));_0x419155[_0x5c3e66(0x1b3)][_0x5c3e66(0x1dd)](_0x4ab33d);if(!_0x419155[_0x5c3e66(0x1b8)]||_0x419155[_0x5c3e66(0x1b8)]['readyState']===EventSource[_0x5c3e66(0x1c9)])connectTaskStream(_0x5a8df4);else{if(_0x419155[_0x5c3e66(0x1b8)][_0x5c3e66(0x1c3)]===EventSource[_0x5c3e66(0x1aa)])try{_0x4ab33d['postMessage']({'type':_0x5c3e66(0x1b0),'taskId':_0x5a8df4});}catch(_0x389f63){}}}function unsubscribeTask(_0x448027,_0x4374ca){const _0x148bb7=_0x5e0dd0,_0x1b05bd=taskStreams[_0x148bb7(0x1a9)](_0x4374ca);if(!_0x1b05bd)return;_0x1b05bd[_0x148bb7(0x1b3)][_0x148bb7(0x1a4)](_0x448027),_0x1b05bd[_0x148bb7(0x1b3)][_0x148bb7(0x1bf)]===0x0&&deferredCloseTaskStream(_0x4374ca);}function connectTaskStream(_0x5eb133){const _0x5708d0=_0x5e0dd0,_0x13d9a8=taskStreams[_0x5708d0(0x1a9)](_0x5eb133);if(!_0x13d9a8)return;_0x13d9a8[_0x5708d0(0x1b8)]&&(_0x13d9a8[_0x5708d0(0x1b8)][_0x5708d0(0x1c1)](),_0x13d9a8['eventSource']=null);try{_0x13d9a8['eventSource']=new EventSource(_0x5708d0(0x1d6)+_0x5eb133+_0x5708d0(0x1ad));for(const _0xfef0ca of TASK_STREAM_EVENTS){_0x13d9a8[_0x5708d0(0x1b8)][_0x5708d0(0x1a8)](_0xfef0ca,_0x17110c=>{const _0x14dfaa=_0x5708d0;broadcastToTask(_0x5eb133,_0x14dfaa(0x1d2)+_0xfef0ca,_0x17110c['data']),_0x13d9a8[_0x14dfaa(0x1ba)]=0x0;});}_0x13d9a8['eventSource'][_0x5708d0(0x1a8)](_0x5708d0(0x1e5),()=>{const _0x3c27b3=_0x5708d0;broadcastToTask(_0x5eb133,_0x3c27b3(0x1b0),'{}'),_0x13d9a8['reconnectAttempts']=0x0;}),_0x13d9a8[_0x5708d0(0x1b8)][_0x5708d0(0x1a8)](_0x5708d0(0x1e1),()=>{const _0x26734c=_0x5708d0;broadcastToTask(_0x5eb133,'task:error',JSON[_0x26734c(0x1ab)]({'error':_0x26734c(0x1b2)})),_0x13d9a8[_0x26734c(0x1b8)]&&(_0x13d9a8[_0x26734c(0x1b8)][_0x26734c(0x1c1)](),_0x13d9a8[_0x26734c(0x1b8)]=null),scheduleTaskReconnect(_0x5eb133);});}catch(_0x58e53e){console[_0x5708d0(0x1e1)](_0x5708d0(0x1d0)+_0x5eb133+':',_0x58e53e),broadcastToTask(_0x5eb133,_0x5708d0(0x1b1),JSON[_0x5708d0(0x1ab)]({'error':_0x58e53e['message']})),scheduleTaskReconnect(_0x5eb133);}}function broadcastToTask(_0x32ff50,_0x43e6ac,_0x4519e3){const _0x2eda58=_0x5e0dd0,_0x276321=taskStreams[_0x2eda58(0x1a9)](_0x32ff50);if(!_0x276321)return;const _0x20a42e=[];_0x276321[_0x2eda58(0x1b3)]['forEach'](_0x446caf=>{const _0x205662=_0x2eda58;try{_0x446caf[_0x205662(0x1d8)]({'type':_0x43e6ac,'taskId':_0x32ff50,'data':_0x4519e3});}catch(_0x32c57a){_0x20a42e[_0x205662(0x1de)](_0x446caf);}}),_0x20a42e[_0x2eda58(0x1a7)]>0x0&&(_0x20a42e['forEach'](_0x4228dd=>_0x276321[_0x2eda58(0x1b3)][_0x2eda58(0x1a4)](_0x4228dd)),cleanUpDeadPorts(_0x20a42e),_0x276321[_0x2eda58(0x1b3)][_0x2eda58(0x1bf)]===0x0&&closeTaskStream(_0x32ff50));}function closeTaskStream(_0x35f74b){const _0x466b26=_0x5e0dd0,_0x33fdcc=taskStreams['get'](_0x35f74b);if(!_0x33fdcc)return;_0x33fdcc[_0x466b26(0x1b8)]&&_0x33fdcc['eventSource'][_0x466b26(0x1c1)](),_0x33fdcc[_0x466b26(0x1df)]&&clearTimeout(_0x33fdcc[_0x466b26(0x1df)]),taskStreams[_0x466b26(0x1a4)](_0x35f74b);}function deferredCloseTaskStream(_0x3236cd){setTimeout(()=>{const _0x1ac50a=_0x3a96,_0x309cd0=taskStreams[_0x1ac50a(0x1a9)](_0x3236cd);_0x309cd0&&_0x309cd0[_0x1ac50a(0x1b3)][_0x1ac50a(0x1bf)]===0x0&&closeTaskStream(_0x3236cd);},0x0);}function scheduleTaskReconnect(_0x7d2926){const _0x347ba7=_0x5e0dd0,_0x4996b3=taskStreams[_0x347ba7(0x1a9)](_0x7d2926);if(!_0x4996b3||_0x4996b3[_0x347ba7(0x1b3)]['size']===0x0)return;_0x4996b3[_0x347ba7(0x1df)]&&clearTimeout(_0x4996b3[_0x347ba7(0x1df)]);const _0x2d6141=Math[_0x347ba7(0x1c7)](0x3e8*Math[_0x347ba7(0x1af)](0x2,_0x4996b3[_0x347ba7(0x1ba)]),MAX_RECONNECT_DELAY);_0x4996b3[_0x347ba7(0x1ba)]++,console[_0x347ba7(0x1bd)]('[SSE\x20Worker]\x20Scheduling\x20task\x20stream\x20reconnect\x20for\x20'+_0x7d2926+'\x20in\x20'+_0x2d6141+'ms'),_0x4996b3[_0x347ba7(0x1df)]=setTimeout(()=>{const _0x50cd50=_0x347ba7;_0x4996b3[_0x50cd50(0x1b3)]['size']>0x0&&connectTaskStream(_0x7d2926);},_0x2d6141);}function cleanUpDeadPorts(_0x4f246a){const _0x2adfca=_0x5e0dd0;for(const _0x4d1de9 of _0x4f246a){ports[_0x2adfca(0x1a4)](_0x4d1de9),taskStreams[_0x2adfca(0x1c4)]((_0x2bba7f,_0xd4b116)=>{const _0x4c2519=_0x2adfca;_0x2bba7f[_0x4c2519(0x1b3)][_0x4c2519(0x1a4)](_0x4d1de9),_0x2bba7f['subscribedPorts'][_0x4c2519(0x1bf)]===0x0&&closeTaskStream(_0xd4b116);});}}function removePortFromAllTasks(_0x5e7c21){const _0x568d92=_0x5e0dd0;taskStreams[_0x568d92(0x1c4)]((_0xa384df,_0x38e30b)=>{const _0x34c3c4=_0x568d92;_0xa384df[_0x34c3c4(0x1b3)]['has'](_0x5e7c21)&&(_0xa384df[_0x34c3c4(0x1b3)][_0x34c3c4(0x1a4)](_0x5e7c21),_0xa384df[_0x34c3c4(0x1b3)][_0x34c3c4(0x1bf)]===0x0&&closeTaskStream(_0x38e30b));});}self['onconnect']=function(_0x5a3589){const _0x257c11=_0x5e0dd0,_0x4c7321=_0x5a3589[_0x257c11(0x1cf)][0x0];ports[_0x257c11(0x1dd)](_0x4c7321),console[_0x257c11(0x1bd)](_0x257c11(0x1d4)+ports[_0x257c11(0x1bf)]),_0x4c7321['onmessage']=function(_0x441b35){const _0x1dd512=_0x257c11,{action:_0xf012a9,userId:_0x80bfb1,taskId:_0x352dc6}=_0x441b35[_0x1dd512(0x1c6)];switch(_0xf012a9){case'connect':connect(_0x80bfb1);eventSource&&eventSource[_0x1dd512(0x1c3)]===EventSource[_0x1dd512(0x1aa)]&&_0x4c7321[_0x1dd512(0x1d8)]({'type':_0x1dd512(0x1ce)});break;case _0x1dd512(0x1bb):ports[_0x1dd512(0x1a4)](_0x4c7321),removePortFromAllTasks(_0x4c7321),console['log'](_0x1dd512(0x1cc)+ports[_0x1dd512(0x1bf)]);ports[_0x1dd512(0x1bf)]===0x0&&eventSource&&(eventSource['close'](),eventSource=null,reconnectTimeout&&(clearTimeout(reconnectTimeout),reconnectTimeout=null));break;case'changeFilter':_0x80bfb1!==currentUserId&&connect(_0x80bfb1);break;case _0x1dd512(0x1dc):subscribeTask(_0x4c7321,_0x352dc6);break;case'unsubscribeTask':unsubscribeTask(_0x4c7321,_0x352dc6);break;default:console[_0x1dd512(0x1e4)]('[SSE\x20Worker]\x20Unknown\x20action:',_0xf012a9);}},_0x4c7321['onmessageerror']=function(_0x19c45d){const _0x4465d1=_0x257c11;console[_0x4465d1(0x1e1)](_0x4465d1(0x1d7),_0x19c45d),ports['delete'](_0x4c7321),removePortFromAllTasks(_0x4c7321);},_0x4c7321['start']();};
|
|
1
|
+
function _0x579f(_0x147c5c,_0x3d2fc9){_0x147c5c=_0x147c5c-0x1ae;const _0x3cdca7=_0x3cdc();let _0x579f0a=_0x3cdca7[_0x147c5c];if(_0x579f['XfEGBa']===undefined){var _0x48d41e=function(_0x327d7f){const _0x542f6f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3e97c2='',_0x5890ce='';for(let _0x2a9dc2=0x0,_0x5826f7,_0x1a77b0,_0x2d0584=0x0;_0x1a77b0=_0x327d7f['charAt'](_0x2d0584++);~_0x1a77b0&&(_0x5826f7=_0x2a9dc2%0x4?_0x5826f7*0x40+_0x1a77b0:_0x1a77b0,_0x2a9dc2++%0x4)?_0x3e97c2+=String['fromCharCode'](0xff&_0x5826f7>>(-0x2*_0x2a9dc2&0x6)):0x0){_0x1a77b0=_0x542f6f['indexOf'](_0x1a77b0);}for(let _0x2b9a6b=0x0,_0x374b74=_0x3e97c2['length'];_0x2b9a6b<_0x374b74;_0x2b9a6b++){_0x5890ce+='%'+('00'+_0x3e97c2['charCodeAt'](_0x2b9a6b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5890ce);};_0x579f['nUbVdj']=_0x48d41e,_0x579f['copsHw']={},_0x579f['XfEGBa']=!![];}const _0x7d42eb=_0x3cdca7[0x0],_0x1298db=_0x147c5c+_0x7d42eb,_0x107c87=_0x579f['copsHw'][_0x1298db];return!_0x107c87?(_0x579f0a=_0x579f['nUbVdj'](_0x579f0a),_0x579f['copsHw'][_0x1298db]=_0x579f0a):_0x579f0a=_0x107c87,_0x579f0a;}const _0x287770=_0x579f;(function(_0x11409d,_0x5e2370){const _0x52f33e=_0x579f,_0x2abe4d=_0x11409d();while(!![]){try{const _0x1d161c=parseInt(_0x52f33e(0x1f4))/0x1*(parseInt(_0x52f33e(0x1b2))/0x2)+-parseInt(_0x52f33e(0x1c5))/0x3*(parseInt(_0x52f33e(0x1f0))/0x4)+parseInt(_0x52f33e(0x1b6))/0x5*(-parseInt(_0x52f33e(0x1b3))/0x6)+-parseInt(_0x52f33e(0x1f3))/0x7*(-parseInt(_0x52f33e(0x1bd))/0x8)+parseInt(_0x52f33e(0x1ec))/0x9*(parseInt(_0x52f33e(0x1d0))/0xa)+-parseInt(_0x52f33e(0x1c6))/0xb+parseInt(_0x52f33e(0x1af))/0xc;if(_0x1d161c===_0x5e2370)break;else _0x2abe4d['push'](_0x2abe4d['shift']());}catch(_0x49397d){_0x2abe4d['push'](_0x2abe4d['shift']());}}}(_0x3cdc,0x93c17));const ports=new Set();let eventSource=null,currentUserId=null,reconnectTimeout=null,reconnectAttempts=0x0;const MAX_RECONNECT_DELAY=0x7530,taskStreams=new Map(),TASK_STREAM_EVENTS=[_0x287770(0x1ed),_0x287770(0x1be),_0x287770(0x1ea),'summary',_0x287770(0x1ae),_0x287770(0x1d8),_0x287770(0x1c1)];function connect(_0x3e97c2){const _0x55d518=_0x287770;eventSource&¤tUserId!==_0x3e97c2&&(eventSource[_0x55d518(0x1db)](),eventSource=null);if(eventSource&&eventSource['readyState']!==EventSource['CLOSED'])return;currentUserId=_0x3e97c2;const _0x5890ce=_0x3e97c2&&_0x3e97c2!=='me'?_0x55d518(0x1ca)+_0x3e97c2:'';try{eventSource=new EventSource(_0x55d518(0x1b0)+_0x5890ce),eventSource['addEventListener'](_0x55d518(0x1dc),_0x2a9dc2=>{broadcast({'type':'snapshot','data':_0x2a9dc2['data']}),reconnectAttempts=0x0;}),eventSource['addEventListener'](_0x55d518(0x1ed),_0x5826f7=>{const _0x35b720=_0x55d518;broadcast({'type':_0x35b720(0x1ed),'data':_0x5826f7['data']});}),eventSource[_0x55d518(0x1b4)]('status',_0x1a77b0=>{broadcast({'type':'status','data':_0x1a77b0['data']});}),eventSource[_0x55d518(0x1b4)]('new-task',_0x2d0584=>{const _0x23d2a4=_0x55d518;broadcast({'type':'new-task','data':_0x2d0584[_0x23d2a4(0x1f8)]});}),eventSource[_0x55d518(0x1b4)](_0x55d518(0x1c9),_0x2b9a6b=>{broadcast({'type':'queue-position','data':_0x2b9a6b['data']});}),eventSource[_0x55d518(0x1b4)](_0x55d518(0x1e4),()=>{const _0xfa7719=_0x55d518;broadcast({'type':_0xfa7719(0x1e0)}),reconnectAttempts=0x0;}),eventSource[_0x55d518(0x1b4)]('error',_0x374b74=>{const _0x1ae140=_0x55d518;console[_0x1ae140(0x1bb)](_0x1ae140(0x1e8),_0x374b74),broadcast({'type':'error','error':'Connection\x20error'}),eventSource&&(eventSource[_0x1ae140(0x1db)](),eventSource=null),scheduleReconnect();});}catch(_0x179933){console[_0x55d518(0x1bb)](_0x55d518(0x1cb),_0x179933),broadcast({'type':_0x55d518(0x1bb),'error':_0x179933[_0x55d518(0x1dd)]}),scheduleReconnect();}}function scheduleReconnect(){const _0x48202b=_0x287770;reconnectTimeout&&clearTimeout(reconnectTimeout);if(ports['size']===0x0)return;const _0x151951=Math[_0x48202b(0x1c8)](0x3e8*Math[_0x48202b(0x1f7)](0x2,reconnectAttempts),MAX_RECONNECT_DELAY);reconnectAttempts++,console[_0x48202b(0x1eb)](_0x48202b(0x1b9)+_0x151951+_0x48202b(0x1e1)+reconnectAttempts+')'),reconnectTimeout=setTimeout(()=>{const _0x267308=_0x48202b;ports[_0x267308(0x1e5)]>0x0&&connect(currentUserId);},_0x151951);}function broadcast(_0x408fc4){const _0x3e5015=_0x287770,_0x5d3bf4=[];ports[_0x3e5015(0x1b7)](_0x18abd2=>{const _0x1005ce=_0x3e5015;try{_0x18abd2[_0x1005ce(0x1bf)](_0x408fc4);}catch(_0x1734ba){console[_0x1005ce(0x1d9)](_0x1005ce(0x1d7),_0x1734ba),_0x5d3bf4[_0x1005ce(0x1f5)](_0x18abd2);}}),_0x5d3bf4[_0x3e5015(0x1d1)]>0x0&&cleanUpDeadPorts(_0x5d3bf4),ports[_0x3e5015(0x1e5)]===0x0&&eventSource&&(console['log'](_0x3e5015(0x1e9)),eventSource['close'](),eventSource=null,reconnectTimeout&&(clearTimeout(reconnectTimeout),reconnectTimeout=null));}function subscribeTask(_0x223402,_0x3f64d6){const _0xa7eb93=_0x287770;let _0x3acb41=taskStreams['get'](_0x3f64d6);!_0x3acb41&&(_0x3acb41={'eventSource':null,'reconnectTimeout':null,'reconnectAttempts':0x0,'subscribedPorts':new Set()},taskStreams['set'](_0x3f64d6,_0x3acb41));_0x3acb41['subscribedPorts'][_0xa7eb93(0x1cf)](_0x223402);if(!_0x3acb41['eventSource']||_0x3acb41[_0xa7eb93(0x1c7)][_0xa7eb93(0x1d3)]===EventSource[_0xa7eb93(0x1ee)])connectTaskStream(_0x3f64d6);else{if(_0x3acb41['eventSource']['readyState']===EventSource[_0xa7eb93(0x1ce)])try{_0x223402[_0xa7eb93(0x1bf)]({'type':_0xa7eb93(0x1f6),'taskId':_0x3f64d6});}catch(_0x4a93ab){}}}function unsubscribeTask(_0xa4432b,_0x430ced){const _0xf6e044=_0x287770,_0x2ac4ba=taskStreams[_0xf6e044(0x1ef)](_0x430ced);if(!_0x2ac4ba)return;_0x2ac4ba[_0xf6e044(0x1d6)]['delete'](_0xa4432b),_0x2ac4ba[_0xf6e044(0x1d6)]['size']===0x0&&deferredCloseTaskStream(_0x430ced);}function connectTaskStream(_0x52397d){const _0x3f441b=_0x287770,_0x23c83e=taskStreams[_0x3f441b(0x1ef)](_0x52397d);if(!_0x23c83e)return;_0x23c83e[_0x3f441b(0x1c7)]&&(_0x23c83e[_0x3f441b(0x1c7)]['close'](),_0x23c83e[_0x3f441b(0x1c7)]=null);try{_0x23c83e[_0x3f441b(0x1c7)]=new EventSource(_0x3f441b(0x1c3)+_0x52397d+'/stream');for(const _0xa9f348 of TASK_STREAM_EVENTS){_0x23c83e[_0x3f441b(0x1c7)][_0x3f441b(0x1b4)](_0xa9f348,_0x99a7dc=>{const _0x4c1d6b=_0x3f441b;broadcastToTask(_0x52397d,_0x4c1d6b(0x1c0)+_0xa9f348,_0x99a7dc[_0x4c1d6b(0x1f8)]),_0x23c83e[_0x4c1d6b(0x1b8)]=0x0;});}_0x23c83e[_0x3f441b(0x1c7)][_0x3f441b(0x1b4)](_0x3f441b(0x1e4),()=>{const _0x361583=_0x3f441b;broadcastToTask(_0x52397d,'task:connected','{}'),_0x23c83e[_0x361583(0x1b8)]=0x0;}),_0x23c83e[_0x3f441b(0x1c7)][_0x3f441b(0x1b4)](_0x3f441b(0x1bb),()=>{const _0x185f29=_0x3f441b;broadcastToTask(_0x52397d,'task:error',JSON[_0x185f29(0x1df)]({'error':_0x185f29(0x1b5)})),_0x23c83e[_0x185f29(0x1c7)]&&(_0x23c83e[_0x185f29(0x1c7)][_0x185f29(0x1db)](),_0x23c83e[_0x185f29(0x1c7)]=null),scheduleTaskReconnect(_0x52397d);});}catch(_0xf1543e){console[_0x3f441b(0x1bb)](_0x3f441b(0x1d5)+_0x52397d+':',_0xf1543e),broadcastToTask(_0x52397d,'task:error',JSON[_0x3f441b(0x1df)]({'error':_0xf1543e[_0x3f441b(0x1dd)]})),scheduleTaskReconnect(_0x52397d);}}function broadcastToTask(_0xfcb100,_0x136428,_0x2a056b){const _0x4b41b6=_0x287770,_0x4595eb=taskStreams[_0x4b41b6(0x1ef)](_0xfcb100);if(!_0x4595eb)return;const _0x38fb31=[];_0x4595eb['subscribedPorts'][_0x4b41b6(0x1b7)](_0x1b86ab=>{const _0x293c38=_0x4b41b6;try{_0x1b86ab[_0x293c38(0x1bf)]({'type':_0x136428,'taskId':_0xfcb100,'data':_0x2a056b});}catch(_0x2feb27){_0x38fb31['push'](_0x1b86ab);}}),_0x38fb31[_0x4b41b6(0x1d1)]>0x0&&(_0x38fb31[_0x4b41b6(0x1b7)](_0x3ba918=>_0x4595eb[_0x4b41b6(0x1d6)][_0x4b41b6(0x1bc)](_0x3ba918)),cleanUpDeadPorts(_0x38fb31),_0x4595eb[_0x4b41b6(0x1d6)][_0x4b41b6(0x1e5)]===0x0&&closeTaskStream(_0xfcb100));}function closeTaskStream(_0x4d4ef){const _0x490cf9=_0x287770,_0x2bc5f9=taskStreams[_0x490cf9(0x1ef)](_0x4d4ef);if(!_0x2bc5f9)return;_0x2bc5f9[_0x490cf9(0x1c7)]&&_0x2bc5f9[_0x490cf9(0x1c7)]['close'](),_0x2bc5f9[_0x490cf9(0x1f2)]&&clearTimeout(_0x2bc5f9[_0x490cf9(0x1f2)]),taskStreams[_0x490cf9(0x1bc)](_0x4d4ef);}function deferredCloseTaskStream(_0x5b8239){setTimeout(()=>{const _0x54c656=_0x579f,_0xf8d01a=taskStreams[_0x54c656(0x1ef)](_0x5b8239);_0xf8d01a&&_0xf8d01a[_0x54c656(0x1d6)][_0x54c656(0x1e5)]===0x0&&closeTaskStream(_0x5b8239);},0x0);}function _0x3cdc(){const _0x5eada7=['Cg9ZDe1LC3nHz2u','DgfZAZO','y29TCgXLDgu','y2HHBMDLrMLSDgvY','l3rHC2TZlW','zgLZy29UBMvJDa','m3zRDun5Aa','mteZodu4mZz6wwn1s1C','zxzLBNrtB3vYy2u','BwLU','CxvLDwuTCg9ZAxrPB24','p3vZzxjjzd0','w1ntrsbxB3jRzxjDiezHAwXLzcb0BYbJCMvHDguGrxzLBNrtB3vYy2u6','w1ntrsbxB3jRzxjDifbVCNqGBwvZC2fNzsbLCNjVCJO','igLUia','t1bftG','ywrK','nJy2mty3me9UALr1ra','BgvUz3rO','C3rHCNq','CMvHzhLtDgf0zq','w1ntrsbxB3jRzxjDie5LDYbWB3j0ignVBM5Ly3rLzc4Gvg90ywWGCg9YDhm6ia','w1ntrsbxB3jRzxjDiezHAwXLzcb0BYbJCMvHDguGDgfZAYbfDMvUDfnVDxjJzsbMB3iG','C3vIC2nYAwjLzfbVCNrZ','w1ntrsbxB3jRzxjDiezHAwXLzcb0BYbZzw5KihrVihbVCNqSihjLBw92Aw5NoG','yxbWlxnLCNzLCI1ZDgf0Dxm','D2fYBG','y29UBMvJDa','y2XVC2u','C25HChnOB3q','BwvZC2fNzq','Cg9YDhm','C3rYAw5NAwz5','y29UBMvJDgvK','BxmGkgf0DgvTChqG','w1ntrsbxB3jRzxjDifnJAgvKDwXPBMCGDgfZAYbZDhjLyw0GCMvJB25Uzwn0igzVCIa','B25TzxnZywDL','B3bLBG','C2L6zq','w1ntrsbxB3jRzxjDifbVCNqGzgLZy29UBMvJDgvKlIbuB3rHBcbWB3j0CZOG','C3vIC2nYAwjLvgfZAW','w1ntrsbxB3jRzxjDienVBM5Ly3rPB24GzxjYB3i6','w1ntrsbxB3jRzxjDie5Vig1VCMuGy29UBMvJDgvKihbVCNrZlcbJBg9ZAw5Nifntrq','Bwv0ywrHDge','Bg9N','oxH4DwP2wG','ywn0AxzPDhK','q0Xpu0ve','z2v0','mti5mJu0mfDOEg5TEq','B25TzxnZywDLzxjYB3i','CMvJB25Uzwn0vgLTzw91Da','n3PsrvPHyq','mvHjyuziwG','ChvZAa','DgfZAZPJB25Uzwn0zwq','Cg93','zgf0yq','y2HHBMDLzc1MAwXLCW','mti2nJG5nZzAywngBMq','l3rHC2TZl3vWzgf0zxm','AgfZ','mteYntmWoezRExLlsa','mJm2mJGXoefqq2nKuG','ywrKrxzLBNrmAxn0zw5LCG','q29UBMvJDgLVBIbLCNjVCG','mtb4u0LnCvK','zM9YrwfJAa','CMvJB25Uzwn0qxr0zw1WDhm','w1ntrsbxB3jRzxjDifnJAgvKDwXPBMCGCMvJB25Uzwn0igLUia','w1ntrsbxB3jRzxjDifvUA25VD24Gywn0Aw9UoG','zxjYB3i','zgvSzxrL','mZCZmty0mfL2B3v3uG','Bg9NCW'];_0x3cdc=function(){return _0x5eada7;};return _0x3cdc();}function scheduleTaskReconnect(_0x632d6a){const _0x1109be=_0x287770,_0x3cad17=taskStreams[_0x1109be(0x1ef)](_0x632d6a);if(!_0x3cad17||_0x3cad17[_0x1109be(0x1d6)][_0x1109be(0x1e5)]===0x0)return;_0x3cad17[_0x1109be(0x1f2)]&&clearTimeout(_0x3cad17[_0x1109be(0x1f2)]);const _0x3cdd65=Math[_0x1109be(0x1c8)](0x3e8*Math[_0x1109be(0x1f7)](0x2,_0x3cad17[_0x1109be(0x1b8)]),MAX_RECONNECT_DELAY);_0x3cad17[_0x1109be(0x1b8)]++,console[_0x1109be(0x1eb)](_0x1109be(0x1e2)+_0x632d6a+_0x1109be(0x1cd)+_0x3cdd65+'ms'),_0x3cad17[_0x1109be(0x1f2)]=setTimeout(()=>{const _0x33ce2e=_0x1109be;_0x3cad17['subscribedPorts'][_0x33ce2e(0x1e5)]>0x0&&connectTaskStream(_0x632d6a);},_0x3cdd65);}function cleanUpDeadPorts(_0x34f349){const _0x230c89=_0x287770;for(const _0x16753d of _0x34f349){ports[_0x230c89(0x1bc)](_0x16753d),taskStreams[_0x230c89(0x1b7)]((_0x22749d,_0x21bd1a)=>{const _0x28ae62=_0x230c89;_0x22749d[_0x28ae62(0x1d6)][_0x28ae62(0x1bc)](_0x16753d),_0x22749d[_0x28ae62(0x1d6)][_0x28ae62(0x1e5)]===0x0&&closeTaskStream(_0x21bd1a);});}}function removePortFromAllTasks(_0x6d93e7){const _0x1ef026=_0x287770;taskStreams[_0x1ef026(0x1b7)]((_0x43600d,_0x3c9661)=>{const _0xecdc2b=_0x1ef026;_0x43600d[_0xecdc2b(0x1d6)][_0xecdc2b(0x1b1)](_0x6d93e7)&&(_0x43600d[_0xecdc2b(0x1d6)][_0xecdc2b(0x1bc)](_0x6d93e7),_0x43600d[_0xecdc2b(0x1d6)]['size']===0x0&&closeTaskStream(_0x3c9661));});}self['onconnect']=function(_0x2b221e){const _0x4c0b70=_0x287770,_0x15cd51=_0x2b221e[_0x4c0b70(0x1de)][0x0];ports['add'](_0x15cd51),console[_0x4c0b70(0x1eb)](_0x4c0b70(0x1d4)+ports[_0x4c0b70(0x1e5)]),_0x15cd51[_0x4c0b70(0x1e3)]=function(_0x29f35e){const _0x149d17=_0x4c0b70,{action:_0x3b917f,userId:_0x16cdfc,taskId:_0x3a776c}=_0x29f35e[_0x149d17(0x1f8)];switch(_0x3b917f){case _0x149d17(0x1da):connect(_0x16cdfc);eventSource&&eventSource['readyState']===EventSource[_0x149d17(0x1ce)]&&_0x15cd51[_0x149d17(0x1bf)]({'type':'connected'});break;case _0x149d17(0x1c4):ports['delete'](_0x15cd51),removePortFromAllTasks(_0x15cd51),console['log'](_0x149d17(0x1e6)+ports[_0x149d17(0x1e5)]);ports[_0x149d17(0x1e5)]===0x0&&eventSource&&(eventSource[_0x149d17(0x1db)](),eventSource=null,reconnectTimeout&&(clearTimeout(reconnectTimeout),reconnectTimeout=null));break;case _0x149d17(0x1c2):_0x16cdfc!==currentUserId&&connect(_0x16cdfc);break;case _0x149d17(0x1e7):subscribeTask(_0x15cd51,_0x3a776c);break;case'unsubscribeTask':unsubscribeTask(_0x15cd51,_0x3a776c);break;default:console[_0x149d17(0x1d9)](_0x149d17(0x1ba),_0x3b917f);}},_0x15cd51[_0x4c0b70(0x1f1)]=function(_0x413c38){const _0x56d8e5=_0x4c0b70;console[_0x56d8e5(0x1bb)](_0x56d8e5(0x1cc),_0x413c38),ports[_0x56d8e5(0x1bc)](_0x15cd51),removePortFromAllTasks(_0x15cd51);},_0x15cd51[_0x4c0b70(0x1d2)]();};
|
|
@@ -2935,10 +2935,10 @@ button:disabled,
|
|
|
2935
2935
|
}
|
|
2936
2936
|
|
|
2937
2937
|
.stat-card.status-pinned {
|
|
2938
|
-
--stat-accent: var(--color-
|
|
2939
|
-
--stat-accent-weak: rgba(
|
|
2940
|
-
--stat-accent-border: rgba(
|
|
2941
|
-
--stat-accent-glow: rgba(
|
|
2938
|
+
--stat-accent: var(--color-accent);
|
|
2939
|
+
--stat-accent-weak: rgba(63, 114, 255, 0.14);
|
|
2940
|
+
--stat-accent-border: rgba(63, 114, 255, 0.50);
|
|
2941
|
+
--stat-accent-glow: rgba(63, 114, 255, 0.28);
|
|
2942
2942
|
}
|
|
2943
2943
|
|
|
2944
2944
|
.stat-card.status-recent {
|
|
@@ -3843,8 +3843,8 @@ button:disabled,
|
|
|
3843
3843
|
color: currentColor; /* Inherits from .task-pin-btn which has color: var(--color-text-muted) */
|
|
3844
3844
|
}
|
|
3845
3845
|
|
|
3846
|
-
.task-tile .task-pin-btn .pin-
|
|
3847
|
-
|
|
3846
|
+
.task-tile .task-pin-btn .pin-filled {
|
|
3847
|
+
flex-shrink: 0;
|
|
3848
3848
|
}
|
|
3849
3849
|
|
|
3850
3850
|
.task-tile .task-pin-btn.loading {
|
|
@@ -3853,7 +3853,7 @@ button:disabled,
|
|
|
3853
3853
|
}
|
|
3854
3854
|
|
|
3855
3855
|
.task-tile .task-pin-btn.loading .pin-svg,
|
|
3856
|
-
.task-tile .task-pin-btn.loading .pin-
|
|
3856
|
+
.task-tile .task-pin-btn.loading .pin-filled {
|
|
3857
3857
|
display: none;
|
|
3858
3858
|
}
|
|
3859
3859
|
|
|
@@ -8576,17 +8576,13 @@ select option[value=""] {
|
|
|
8576
8576
|
color: var(--color-text);
|
|
8577
8577
|
}
|
|
8578
8578
|
|
|
8579
|
-
#pin-task .pin-emoji {
|
|
8580
|
-
font-size: 18px;
|
|
8581
|
-
}
|
|
8582
|
-
|
|
8583
8579
|
#pin-task.loading {
|
|
8584
8580
|
pointer-events: none;
|
|
8585
8581
|
opacity: 0.7;
|
|
8586
8582
|
}
|
|
8587
8583
|
|
|
8588
8584
|
#pin-task.loading .pin-svg,
|
|
8589
|
-
#pin-task.loading .pin-
|
|
8585
|
+
#pin-task.loading .pin-filled {
|
|
8590
8586
|
display: none;
|
|
8591
8587
|
}
|
|
8592
8588
|
|
|
@@ -14820,6 +14816,37 @@ input.toggle-switch:focus {
|
|
|
14820
14816
|
font-weight: 600;
|
|
14821
14817
|
}
|
|
14822
14818
|
|
|
14819
|
+
.timeline-feedback-priority {
|
|
14820
|
+
font-size: 11px;
|
|
14821
|
+
font-weight: 600;
|
|
14822
|
+
padding: 1px 8px;
|
|
14823
|
+
border-radius: 10px;
|
|
14824
|
+
letter-spacing: 0.3px;
|
|
14825
|
+
margin-left: auto;
|
|
14826
|
+
white-space: nowrap;
|
|
14827
|
+
cursor: pointer;
|
|
14828
|
+
transition: opacity 0.15s;
|
|
14829
|
+
}
|
|
14830
|
+
|
|
14831
|
+
.timeline-feedback-priority:hover {
|
|
14832
|
+
opacity: 0.8;
|
|
14833
|
+
}
|
|
14834
|
+
|
|
14835
|
+
.timeline-feedback-priority.priority-low {
|
|
14836
|
+
background: rgba(52, 199, 89, 0.12);
|
|
14837
|
+
color: var(--color-success, #34c759);
|
|
14838
|
+
}
|
|
14839
|
+
|
|
14840
|
+
.timeline-feedback-priority.priority-medium {
|
|
14841
|
+
background: rgba(255, 159, 10, 0.12);
|
|
14842
|
+
color: var(--color-warning, #ff9f0a);
|
|
14843
|
+
}
|
|
14844
|
+
|
|
14845
|
+
.timeline-feedback-priority.priority-high {
|
|
14846
|
+
background: rgba(229, 83, 104, 0.12);
|
|
14847
|
+
color: var(--color-danger, #e55368);
|
|
14848
|
+
}
|
|
14849
|
+
|
|
14823
14850
|
.timeline-actions {
|
|
14824
14851
|
display: flex;
|
|
14825
14852
|
gap: 8px;
|
|
@@ -122,7 +122,10 @@
|
|
|
122
122
|
<path d="M12 17v5"></path>
|
|
123
123
|
<path d="M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z"></path>
|
|
124
124
|
</svg>
|
|
125
|
-
<
|
|
125
|
+
<svg class="pin-icon pin-filled" width="16" height="16" viewBox="0 0 24 24" fill="var(--color-accent)" stroke="var(--color-accent)" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" style="display: none;">
|
|
126
|
+
<path d="M12 17v5"></path>
|
|
127
|
+
<path d="M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z"></path>
|
|
128
|
+
</svg>
|
|
126
129
|
</button>
|
|
127
130
|
<button class="btn-ghost btn-small" id="reset-layout">Reset Layout</button>
|
|
128
131
|
<button class="btn-icon" id="hide-all-sections" title="Hide all sections" style="display: none;">
|
|
@@ -440,6 +443,7 @@
|
|
|
440
443
|
<button class="btn-warning btn-small" id="stop-task" disabled hidden>Interrupt</button>
|
|
441
444
|
<button class="btn-primary btn-small" id="approve-task" disabled>Approve</button>
|
|
442
445
|
<button class="btn-primary btn-small" id="create-pr-task" hidden>Create Pull Request</button>
|
|
446
|
+
<button class="btn-primary btn-small" id="sync-to-ibmi-task" hidden>Sync to IBM i</button>
|
|
443
447
|
</div>
|
|
444
448
|
</div>
|
|
445
449
|
|
|
@@ -630,6 +634,10 @@
|
|
|
630
634
|
<dt>Pull Requests</dt>
|
|
631
635
|
<dd id="meta-pull-requests"></dd>
|
|
632
636
|
</div>
|
|
637
|
+
<div id="meta-ibmi-sync-wrapper" hidden>
|
|
638
|
+
<dt>IBM i Sync</dt>
|
|
639
|
+
<dd>Synced to <code id="meta-ibmi-sync-library"></code><span id="meta-ibmi-sync-time" class="text-muted"></span> — <a href="#" id="meta-ibmi-sync-log-link">View log</a></dd>
|
|
640
|
+
</div>
|
|
633
641
|
<div id="meta-follow-ups-wrapper" hidden>
|
|
634
642
|
<dt>Follow-Ups</dt>
|
|
635
643
|
<dd><button id="meta-follow-ups" class="link-button" style="padding: 0; border: none; background: none; color: var(--color-primary); cursor: pointer; text-decoration: underline;">—</button></dd>
|
|
@@ -1994,5 +2002,52 @@
|
|
|
1994
2002
|
</div>
|
|
1995
2003
|
</div>
|
|
1996
2004
|
|
|
2005
|
+
<!-- Sync to IBM i Dialog -->
|
|
2006
|
+
<div id="sync-ibmi-modal" class="modal" hidden>
|
|
2007
|
+
<div class="modal-overlay"></div>
|
|
2008
|
+
<div class="modal-content" style="max-width: 400px;">
|
|
2009
|
+
<div class="modal-header">
|
|
2010
|
+
<h2>Sync to IBM i</h2>
|
|
2011
|
+
<button type="button" class="modal-close" aria-label="Close">×</button>
|
|
2012
|
+
</div>
|
|
2013
|
+
<div class="modal-body">
|
|
2014
|
+
<p class="text-muted">Sync changed files to an IBM i library.</p>
|
|
2015
|
+
<div id="sync-ibmi-error" class="modal-error" hidden></div>
|
|
2016
|
+
<div class="form-row">
|
|
2017
|
+
<label for="sync-ibmi-library">Library Name <span class="required">*</span></label>
|
|
2018
|
+
<input type="text" id="sync-ibmi-library" class="form-input code-font" maxlength="10" style="width: 160px;">
|
|
2019
|
+
</div>
|
|
2020
|
+
<p class="text-muted" style="font-size: 12px;">
|
|
2021
|
+
Connection: <span id="sync-ibmi-host"></span>
|
|
2022
|
+
</p>
|
|
2023
|
+
</div>
|
|
2024
|
+
<div class="modal-actions">
|
|
2025
|
+
<button type="button" class="btn-secondary" id="sync-ibmi-cancel">Cancel</button>
|
|
2026
|
+
<button type="button" class="btn-primary" id="sync-ibmi-confirm">Sync</button>
|
|
2027
|
+
</div>
|
|
2028
|
+
</div>
|
|
2029
|
+
</div>
|
|
2030
|
+
|
|
2031
|
+
<!-- Sync to IBM i Log Modal -->
|
|
2032
|
+
<div id="sync-ibmi-log-modal" class="modal" hidden>
|
|
2033
|
+
<div class="modal-overlay"></div>
|
|
2034
|
+
<div class="modal-content" style="max-width: 700px;">
|
|
2035
|
+
<div class="modal-header">
|
|
2036
|
+
<h2>Sync to IBM i — <span id="sync-log-library"></span></h2>
|
|
2037
|
+
<button type="button" class="modal-close" aria-label="Close">×</button>
|
|
2038
|
+
</div>
|
|
2039
|
+
<div class="modal-body">
|
|
2040
|
+
<pre id="sync-log-output" class="build-output-log"></pre>
|
|
2041
|
+
<div id="sync-log-summary" hidden>
|
|
2042
|
+
<div id="sync-log-success" class="sync-summary success" hidden>Sync completed successfully.</div>
|
|
2043
|
+
<div id="sync-log-failure" class="sync-summary failure" hidden>Sync failed.</div>
|
|
2044
|
+
</div>
|
|
2045
|
+
</div>
|
|
2046
|
+
<div class="modal-actions">
|
|
2047
|
+
<button type="button" class="btn-secondary" id="sync-log-close">Close</button>
|
|
2048
|
+
</div>
|
|
2049
|
+
</div>
|
|
2050
|
+
</div>
|
|
2051
|
+
|
|
1997
2052
|
</body>
|
|
1998
2053
|
</html>
|