@profoundlogic/coderflow-server 0.5.0 → 0.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/README.md +15 -163
  2. package/dist/README.md +15 -163
  3. package/dist/base-image/agent-wrapper.sh +1 -1
  4. package/dist/capture-screenshot.mjs +34 -0
  5. package/dist/coder-server.js +1 -1
  6. package/dist/config/cli-models.json +4 -3
  7. package/dist/config.js +1 -1
  8. package/dist/lib/agent-keepalive.js +1 -1
  9. package/dist/lib/agent-models.js +1 -1
  10. package/dist/lib/api-keys.js +1 -1
  11. package/dist/lib/apiKeys.js +1 -1
  12. package/dist/lib/app-server-ports.js +1 -1
  13. package/dist/lib/auto-judge.js +1 -1
  14. package/dist/lib/automation-service.js +1 -1
  15. package/dist/lib/basic-auth.js +1 -1
  16. package/dist/lib/bindings.js +1 -1
  17. package/dist/lib/build-history.js +1 -1
  18. package/dist/lib/build-output-service.js +1 -1
  19. package/dist/lib/build-scheduler.js +1 -1
  20. package/dist/lib/build-service.js +1 -1
  21. package/dist/lib/ca-certificates.js +1 -1
  22. package/dist/lib/claude-oauth-refresh.js +1 -1
  23. package/dist/lib/cli/build.js +1 -1
  24. package/dist/lib/cli/cleanup-users.js +1 -0
  25. package/dist/lib/cli/config-command.js +1 -1
  26. package/dist/lib/cli/config.js +1 -1
  27. package/dist/lib/cli/create-user.js +1 -1
  28. package/dist/lib/cli/grant-admin.js +1 -0
  29. package/dist/lib/cli/init.js +1 -1
  30. package/dist/lib/cli/jira.js +1 -1
  31. package/dist/lib/cli/license.js +1 -1
  32. package/dist/lib/cli/list-roles.js +1 -0
  33. package/dist/lib/cli/list-users.js +1 -0
  34. package/dist/lib/cli/server-manager.js +1 -1
  35. package/dist/lib/cli/set-password.js +1 -0
  36. package/dist/lib/config-migration.js +1 -1
  37. package/dist/lib/container-credential-sync.js +1 -1
  38. package/dist/lib/container-tokens.js +1 -1
  39. package/dist/lib/data-dir.js +1 -1
  40. package/dist/lib/deployment-history.js +1 -1
  41. package/dist/lib/deployment-service.js +1 -1
  42. package/dist/lib/docker-utils.js +1 -1
  43. package/dist/lib/email.js +1 -1
  44. package/dist/lib/emailTemplates.js +1 -1
  45. package/dist/lib/entitlement.js +1 -1
  46. package/dist/lib/external-connections.js +1 -1
  47. package/dist/lib/fetch-utils.js +1 -1
  48. package/dist/lib/git-commit-details-route.js +1 -1
  49. package/dist/lib/git-history-diff-guardrails.js +1 -1
  50. package/dist/lib/git-provider-service.js +1 -1
  51. package/dist/lib/git-provider-setup/github-setup-handler.js +1 -1
  52. package/dist/lib/git-provider-setup/index.js +1 -1
  53. package/dist/lib/git-provider-setup/setup-factory.js +1 -1
  54. package/dist/lib/git-provider-setup/setup-interface.js +1 -1
  55. package/dist/lib/git-providers/azure-devops-provider.js +1 -1
  56. package/dist/lib/git-providers/github-app-provider.js +1 -1
  57. package/dist/lib/git-providers/index.js +1 -1
  58. package/dist/lib/git-providers/provider-factory.js +1 -1
  59. package/dist/lib/git-providers/provider-interface.js +1 -1
  60. package/dist/lib/github-urls.js +1 -1
  61. package/dist/lib/group-objective-linking.js +1 -1
  62. package/dist/lib/ibmi-sync.js +1 -0
  63. package/dist/lib/jira-client.js +1 -1
  64. package/dist/lib/judge-blinding.js +1 -1
  65. package/dist/lib/logger.js +1 -1
  66. package/dist/lib/migration-to-scoped-rbac.js +1 -1
  67. package/dist/lib/model-fetcher.js +1 -1
  68. package/dist/lib/notifications.js +1 -1
  69. package/dist/lib/objective-context.js +1 -1
  70. package/dist/lib/oidc-auth.js +1 -1
  71. package/dist/lib/oidc-device-flow.js +1 -1
  72. package/dist/lib/passwordTokens.js +1 -1
  73. package/dist/lib/permission-resolver.js +1 -1
  74. package/dist/lib/pin-cascade.js +1 -1
  75. package/dist/lib/provider-accounts.js +1 -1
  76. package/dist/lib/provider-oauth.js +1 -1
  77. package/dist/lib/provider-profile.js +1 -1
  78. package/dist/lib/provider-token-refresh.js +1 -1
  79. package/dist/lib/rbac-user-state.js +1 -1
  80. package/dist/lib/request-url.js +1 -1
  81. package/dist/lib/rewind.js +1 -1
  82. package/dist/lib/role-definitions.js +1 -1
  83. package/dist/lib/roles.js +1 -1
  84. package/dist/lib/secrets.js +1 -1
  85. package/dist/lib/setup-repo-git-auth.js +1 -1
  86. package/dist/lib/state-capture.js +1 -1
  87. package/dist/lib/static-files.js +1 -1
  88. package/dist/lib/task-name-format.js +1 -1
  89. package/dist/lib/task-name-generator.js +1 -1
  90. package/dist/lib/task-source-metadata.js +1 -1
  91. package/dist/lib/teams.js +1 -1
  92. package/dist/lib/user-git-oauth.js +1 -1
  93. package/dist/lib/user-git-tokens.js +1 -1
  94. package/dist/lib/users.js +1 -1
  95. package/dist/middleware/requireAuth.js +1 -1
  96. package/dist/middleware/requireInit.js +1 -1
  97. package/dist/middleware/requirePermission.js +1 -1
  98. package/dist/package.json +1 -1
  99. package/dist/playwright.config.js +1 -1
  100. package/dist/routes/apiKeys.js +1 -1
  101. package/dist/routes/auth-oidc.js +1 -1
  102. package/dist/routes/auth.js +1 -1
  103. package/dist/routes/automations.js +1 -1
  104. package/dist/routes/bindings.js +1 -1
  105. package/dist/routes/build.js +1 -1
  106. package/dist/routes/containers.js +1 -1
  107. package/dist/routes/deploy-task.js +1 -1
  108. package/dist/routes/environment-management.js +1 -1
  109. package/dist/routes/environments.js +1 -1
  110. package/dist/routes/external-skills.js +1 -1
  111. package/dist/routes/git-credentials.js +1 -1
  112. package/dist/routes/git-oauth.js +1 -1
  113. package/dist/routes/git-provider-setup.js +1 -1
  114. package/dist/routes/health.js +1 -1
  115. package/dist/routes/jira.js +1 -1
  116. package/dist/routes/objective-management.js +1 -1
  117. package/dist/routes/password.js +1 -1
  118. package/dist/routes/prompt.js +1 -1
  119. package/dist/routes/provider-auth.js +1 -1
  120. package/dist/routes/qa.js +1 -1
  121. package/dist/routes/roles.js +1 -1
  122. package/dist/routes/settings.js +1 -1
  123. package/dist/routes/skill-management.js +1 -1
  124. package/dist/routes/skills.js +1 -1
  125. package/dist/routes/tasks.js +1 -1
  126. package/dist/routes/teams.js +1 -1
  127. package/dist/routes/templates.js +1 -1
  128. package/dist/routes/test-task.js +1 -1
  129. package/dist/routes/test.js +1 -1
  130. package/dist/routes/users.js +1 -1
  131. package/dist/routes/visualizations.js +1 -1
  132. package/dist/scripts/create-user.js +1 -1
  133. package/dist/scripts/migrate-config-to-data-dir.js +1 -1
  134. package/dist/scripts/sync_to_ibmi.sh +204 -0
  135. package/dist/start.js +1 -1
  136. package/dist/web-ui/public/activity-detail-modal.js +1 -1
  137. package/dist/web-ui/public/activity-feed.js +1 -1
  138. package/dist/web-ui/public/activity-formatters.js +1 -1
  139. package/dist/web-ui/public/agent-event-parser.js +1 -1
  140. package/dist/web-ui/public/app.js +1 -1
  141. package/dist/web-ui/public/approve-dialog.js +1 -1
  142. package/dist/web-ui/public/automation-links.js +1 -1
  143. package/dist/web-ui/public/automation-schedule.js +1 -1
  144. package/dist/web-ui/public/comments-widget.js +1 -1
  145. package/dist/web-ui/public/diff-utils.js +1 -1
  146. package/dist/web-ui/public/docs/admin/environments.md +1 -0
  147. package/dist/web-ui/public/docs/tasks/approval-and-deployment.md +36 -0
  148. package/dist/web-ui/public/environments.html +1 -1
  149. package/dist/web-ui/public/environments.js +1 -1
  150. package/dist/web-ui/public/feedback-widget.js +1 -1
  151. package/dist/web-ui/public/git-history-lazy-utils.js +1 -1
  152. package/dist/web-ui/public/git-history.js +1 -1
  153. package/dist/web-ui/public/git-status.js +1 -1
  154. package/dist/web-ui/public/index.html +2 -2
  155. package/dist/web-ui/public/index.js +1 -1
  156. package/dist/web-ui/public/login.js +1 -1
  157. package/dist/web-ui/public/markdown-editor.js +1 -1
  158. package/dist/web-ui/public/markdown-file-editor.js +1 -1
  159. package/dist/web-ui/public/modal-maximize.js +1 -1
  160. package/dist/web-ui/public/notifications.js +1 -1
  161. package/dist/web-ui/public/pr-dialog.js +1 -1
  162. package/dist/web-ui/public/roles.html +3 -2
  163. package/dist/web-ui/public/roles.js +1 -1
  164. package/dist/web-ui/public/server-health.js +1 -1
  165. package/dist/web-ui/public/settings.css +3 -2
  166. package/dist/web-ui/public/settings.html +0 -1
  167. package/dist/web-ui/public/settings.js +1 -1
  168. package/dist/web-ui/public/setup-password.js +1 -1
  169. package/dist/web-ui/public/skills.js +1 -1
  170. package/dist/web-ui/public/sse-client.js +1 -1
  171. package/dist/web-ui/public/sse-shared-worker.js +1 -1
  172. package/dist/web-ui/public/styles.css +39 -12
  173. package/dist/web-ui/public/task.html +56 -1
  174. package/dist/web-ui/public/task.js +1 -1
  175. package/dist/web-ui/public/teams.html +76 -81
  176. package/dist/web-ui/public/teams.js +1 -1
  177. package/dist/web-ui/public/terminal.js +1 -1
  178. package/dist/web-ui/public/theme.js +1 -1
  179. package/dist/web-ui/public/users.html +12 -11
  180. package/dist/web-ui/public/users.js +1 -1
  181. package/dist/web-ui/public/variant-grouping.js +1 -1
  182. package/package.json +1 -1
  183. package/dist/lib/cli/migrate-rbac.js +0 -1
  184. package/dist/lib/scoped-rbac-migration-runner.js +0 -1
  185. package/dist/scripts/migrate-to-scoped-rbac.js +0 -2
@@ -1 +1 @@
1
- const _0x145f4a=_0x4c5e;(function(_0x3ed704,_0xc1d82){const _0x1fbaef=_0x4c5e,_0x2635e8=_0x3ed704();while(!![]){try{const _0x2c92e0=parseInt(_0x1fbaef(0x1e5))/0x1+parseInt(_0x1fbaef(0x22b))/0x2*(parseInt(_0x1fbaef(0x22a))/0x3)+parseInt(_0x1fbaef(0x234))/0x4*(parseInt(_0x1fbaef(0x1da))/0x5)+parseInt(_0x1fbaef(0x1c4))/0x6*(-parseInt(_0x1fbaef(0x1ba))/0x7)+-parseInt(_0x1fbaef(0x24c))/0x8*(parseInt(_0x1fbaef(0x243))/0x9)+-parseInt(_0x1fbaef(0x1cd))/0xa*(parseInt(_0x1fbaef(0x209))/0xb)+parseInt(_0x1fbaef(0x1e6))/0xc;if(_0x2c92e0===_0xc1d82)break;else _0x2635e8['push'](_0x2635e8['shift']());}catch(_0x58bdc0){_0x2635e8['push'](_0x2635e8['shift']());}}}(_0x3b97,0xa307e));function isLogOnlyTaskType(_0x596b39){const _0x4c1c83=_0x4c5e;return _0x596b39===_0x4c1c83(0x1ab)||_0x596b39===_0x4c1c83(0x205);}export function createApproveDialogHTML(_0x3e74e5='',_0x14e7fb={}){const _0x47932e=_0x4c5e,_0x39d868=_0x3e74e5,_0x80a6e=_0x14e7fb[_0x47932e(0x1db)]?_0x47932e(0x207):_0x47932e(0x1aa),_0x2cccca=_0x14e7fb['useTaskPageStyles']?_0x47932e(0x1f9):'approve-modal-warning',_0x66469b=_0x14e7fb[_0x47932e(0x1db)]?_0x47932e(0x199):'approve-modal-error';return _0x47932e(0x232)+_0x39d868+_0x47932e(0x217)+_0x80a6e+_0x47932e(0x1c2)+_0x39d868+'close-approve-modal\x22>&times;</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22modal-body\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20id=\x22'+_0x39d868+_0x47932e(0x24a)+_0x2cccca+_0x47932e(0x223)+_0x39d868+_0x47932e(0x1fd)+_0x39d868+_0x47932e(0x230)+_0x66469b+_0x47932e(0x1c5)+_0x39d868+_0x47932e(0x198)+_0x39d868+_0x47932e(0x20b)+_0x39d868+_0x47932e(0x244)+_0x39d868+_0x47932e(0x218)+_0x39d868+_0x47932e(0x20c)+_0x39d868+_0x47932e(0x220)+_0x39d868+_0x47932e(0x214)+_0x39d868+_0x47932e(0x1ff)+_0x39d868+'push-after-commit\x22\x20checked>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>Push\x20to\x20remote\x20after\x20commit</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22modal-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20class=\x22checkbox-label\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22checkbox\x22\x20id=\x22'+_0x39d868+_0x47932e(0x213)+_0x39d868+_0x47932e(0x246)+_0x39d868+_0x47932e(0x1b1)+_0x39d868+_0x47932e(0x1b3)+_0x39d868+_0x47932e(0x1a9)+_0x39d868+_0x47932e(0x1f0)+_0x39d868+_0x47932e(0x1f2)+_0x39d868+_0x47932e(0x1eb);}export class ApproveDialog{constructor(_0x32b0b9={}){const _0x19c143=_0x4c5e;this[_0x19c143(0x1b6)]=_0x32b0b9[_0x19c143(0x1b6)]||'',this[_0x19c143(0x1cf)]=_0x32b0b9['onApprove'],this[_0x19c143(0x1b7)]=_0x32b0b9['onSync'],this[_0x19c143(0x241)]=_0x32b0b9[_0x19c143(0x241)],this[_0x19c143(0x210)]=_0x32b0b9[_0x19c143(0x210)],this[_0x19c143(0x1e0)]=_0x32b0b9[_0x19c143(0x1e0)],this[_0x19c143(0x1e9)]=_0x32b0b9[_0x19c143(0x1e9)]||(()=>{}),this[_0x19c143(0x1e7)]=_0x32b0b9[_0x19c143(0x1e7)]||document[_0x19c143(0x248)],this['useTaskPageStyles']=_0x32b0b9[_0x19c143(0x1db)]||![],this[_0x19c143(0x1f7)]=_0x32b0b9[_0x19c143(0x1f7)]||'',this[_0x19c143(0x1ec)]=_0x32b0b9[_0x19c143(0x1ec)],this['taskData']=null,this[_0x19c143(0x203)]=![],this[_0x19c143(0x1ef)]=![],this[_0x19c143(0x1c0)]=![],this[_0x19c143(0x1fe)]=0x0;}[_0x145f4a(0x24b)](){const _0x3b3ba9=_0x145f4a;if(this['initialized'])return;const _0x731806=document[_0x3b3ba9(0x227)]('div');_0x731806[_0x3b3ba9(0x1c6)]=createApproveDialogHTML(this['prefix'],{'useTaskPageStyles':this['useTaskPageStyles']}),this[_0x3b3ba9(0x1e7)][_0x3b3ba9(0x1ae)](_0x731806[_0x3b3ba9(0x1dc)]),this[_0x3b3ba9(0x247)](),this['initialized']=!![];}[_0x145f4a(0x1ea)](_0x413314){const _0x510553=_0x145f4a;return document['getElementById'](''+this[_0x510553(0x1b6)]+_0x413314);}['_bindEvents'](){const _0x4d616e=_0x145f4a,_0x35d78b=this[_0x4d616e(0x1ea)](_0x4d616e(0x20a)),_0x211e64=this[_0x4d616e(0x1ea)](_0x4d616e(0x1bc)),_0x565809=this[_0x4d616e(0x1ea)](_0x4d616e(0x236)),_0x1b8997=this['_el'](_0x4d616e(0x202)),_0x296d6e=_0x35d78b?.[_0x4d616e(0x20e)]('.modal-overlay'),_0x3d1c02=this['_el'](_0x4d616e(0x225)),_0x1f41f0=this['_el'](_0x4d616e(0x1c7)),_0x1eba2c=this['_el'](_0x4d616e(0x23a)),_0x612cfa=this[_0x4d616e(0x1ea)](_0x4d616e(0x19c)),_0x516183=this['_el'](_0x4d616e(0x1fb)),_0x2a7b4c=this[_0x4d616e(0x1ea)](_0x4d616e(0x21f));_0x211e64?.[_0x4d616e(0x216)](_0x4d616e(0x238),()=>this[_0x4d616e(0x20f)]()),_0x565809?.[_0x4d616e(0x216)](_0x4d616e(0x238),()=>this[_0x4d616e(0x20f)]()),_0x296d6e?.[_0x4d616e(0x216)](_0x4d616e(0x238),()=>this['hide']()),_0x1b8997?.[_0x4d616e(0x216)](_0x4d616e(0x238),()=>this['_handleApprove']()),_0x3d1c02&&_0x3d1c02['addEventListener'](_0x4d616e(0x19f),()=>{const _0x386991=_0x4d616e;_0x1f41f0&&(_0x1f41f0[_0x386991(0x1e3)]=!_0x3d1c02[_0x386991(0x22c)]),_0x3d1c02[_0x386991(0x22c)]&&_0x1eba2c&&_0x1eba2c[_0x386991(0x21b)]();}),_0x516183&&_0x612cfa&&_0x3d1c02&&(_0x516183[_0x4d616e(0x216)](_0x4d616e(0x19f),()=>{const _0x264f5a=_0x4d616e;this[_0x264f5a(0x1c0)]=_0x516183[_0x264f5a(0x22c)];if(_0x516183['checked']){_0x612cfa[_0x264f5a(0x22c)]=!![],_0x612cfa[_0x264f5a(0x226)]=!![],_0x3d1c02[_0x264f5a(0x22c)]=!![],_0x3d1c02['disabled']=!![];_0x1f41f0&&(_0x1f41f0[_0x264f5a(0x1e3)]=![]);if(_0x2a7b4c)_0x2a7b4c[_0x264f5a(0x1e3)]=![];}else{_0x612cfa[_0x264f5a(0x226)]=![],_0x3d1c02['disabled']=![];if(_0x2a7b4c)_0x2a7b4c[_0x264f5a(0x1e3)]=!![];}}),_0x612cfa[_0x4d616e(0x216)](_0x4d616e(0x19f),()=>{const _0x44cf55=_0x4d616e;if(!_0x612cfa[_0x44cf55(0x22c)]&&_0x516183[_0x44cf55(0x22c)]){_0x516183[_0x44cf55(0x22c)]=![],this[_0x44cf55(0x1c0)]=![],_0x612cfa[_0x44cf55(0x226)]=![],_0x3d1c02[_0x44cf55(0x226)]=![];if(_0x2a7b4c)_0x2a7b4c[_0x44cf55(0x1e3)]=!![];}})),document[_0x4d616e(0x216)](_0x4d616e(0x206),_0x49b71b=>{const _0x502273=_0x4d616e;_0x49b71b[_0x502273(0x1cb)]===_0x502273(0x1f6)&&_0x35d78b&&!_0x35d78b['hidden']&&this[_0x502273(0x20f)]();});}['showError'](_0x47119f){const _0x55a4ad=_0x145f4a,_0x7ab2c8=this[_0x55a4ad(0x1ea)](_0x55a4ad(0x1e4)),_0x55ca56=this[_0x55a4ad(0x1ea)](_0x55a4ad(0x245));_0x7ab2c8&&_0x55ca56&&(_0x55ca56[_0x55a4ad(0x219)]=_0x47119f,_0x7ab2c8[_0x55a4ad(0x1e3)]=![],_0x7ab2c8[_0x55a4ad(0x1be)]({'behavior':_0x55a4ad(0x1d4),'block':_0x55a4ad(0x1b2)}));}[_0x145f4a(0x1d9)](){const _0x380a16=_0x145f4a,_0x238cfc=this[_0x380a16(0x1ea)](_0x380a16(0x1e4)),_0xd49e61=this[_0x380a16(0x1ea)](_0x380a16(0x245));_0x238cfc&&_0xd49e61&&(_0x238cfc[_0x380a16(0x1e3)]=!![],_0xd49e61[_0x380a16(0x219)]='');}['_displayBranchInfo'](_0x152c4d,_0x32f450={}){const _0x18132a=_0x145f4a,_0x369355=this[_0x18132a(0x1ea)]('approve-branches');if(!_0x369355)return;const _0x4f7838=[];for(const _0x2ba34c of _0x152c4d){_0x32f450[_0x2ba34c[_0x18132a(0x1a4)]]&&_0x4f7838['push']({'repo':_0x2ba34c[_0x18132a(0x1a4)],'branch':_0x32f450[_0x2ba34c[_0x18132a(0x1a4)]]});}if(_0x4f7838[_0x18132a(0x221)]>0x0){_0x369355[_0x18132a(0x1e3)]=![];if(_0x4f7838[_0x18132a(0x221)]===0x1)_0x369355[_0x18132a(0x1c6)]=_0x18132a(0x21a)+_0x4f7838[0x0][_0x18132a(0x23c)]+_0x18132a(0x229);else{const _0x316fbc=_0x4f7838['map'](_0x1ff75d=>'<div\x20class=\x22branch-item\x22><strong>'+_0x1ff75d[_0x18132a(0x231)]+':</strong>\x20<code>'+_0x1ff75d[_0x18132a(0x23c)]+_0x18132a(0x229))[_0x18132a(0x1d5)]('');_0x369355[_0x18132a(0x1c6)]='<div\x20class=\x22branch-info\x22>Branches:<div\x20class=\x22branch-list\x22>'+_0x316fbc+'</div></div>';}}else _0x369355['hidden']=!![],_0x369355['innerHTML']='';}[_0x145f4a(0x1a7)](_0x4735da){const _0x17a63a=_0x145f4a,_0x6e5e85=this[_0x17a63a(0x1ea)](_0x17a63a(0x1a5)),_0xf6d86f=this[_0x17a63a(0x1ea)]('approve-warning-text');_0x6e5e85&&_0xf6d86f&&(_0xf6d86f[_0x17a63a(0x219)]=_0x4735da,_0x6e5e85[_0x17a63a(0x1e3)]=![]);}['hideWarning'](){const _0x44e5ac=_0x145f4a,_0x4ed456=this[_0x44e5ac(0x1ea)](_0x44e5ac(0x1a5)),_0x3a12fa=this[_0x44e5ac(0x1ea)]('approve-warning-text');_0x4ed456&&_0x3a12fa&&(_0x4ed456['hidden']=!![],_0x3a12fa[_0x44e5ac(0x219)]='');}async['_addAttributionIfEnabled'](_0x55a265){const _0x44c911=_0x145f4a;try{let _0x4ac2cc;try{const _0x400434=await fetch(this[_0x44c911(0x1f7)]+_0x44c911(0x1af));if(_0x400434['ok']){const _0x83845b=await _0x400434[_0x44c911(0x20d)]();_0x4ac2cc=_0x83845b[_0x44c911(0x1ce)]!==![];}}catch(_0x3f906f){}_0x4ac2cc===undefined&&(this[_0x44c911(0x1ec)]!==undefined?_0x4ac2cc=this[_0x44c911(0x1ec)]!==![]:_0x4ac2cc=!![]);if(!_0x4ac2cc)return _0x55a265;const _0x343d39=_0x44c911(0x1a3);if(_0x55a265[_0x44c911(0x1d3)](_0x44c911(0x242)))return _0x55a265;return _0x55a265+_0x343d39;}catch(_0x2e965e){return console[_0x44c911(0x1ee)](_0x44c911(0x19e),_0x2e965e),_0x55a265;}}[_0x145f4a(0x1df)](_0x54db65){const _0x4a8045=_0x145f4a;!this[_0x4a8045(0x203)]&&this[_0x4a8045(0x24b)]();this[_0x4a8045(0x249)]=_0x54db65;const _0x1e2b89=this[_0x4a8045(0x1ea)]('approve-modal'),_0x128324=this[_0x4a8045(0x1ea)](_0x4a8045(0x201)),_0x584e2e=this[_0x4a8045(0x1ea)]('pull-before-commit'),_0x3c85ac=this['_el'](_0x4a8045(0x19c)),_0x38d334=this['_el'](_0x4a8045(0x225)),_0x426dfd=this['_el'](_0x4a8045(0x1c7)),_0x3bad07=this[_0x4a8045(0x1ea)](_0x4a8045(0x23a)),_0x61b145=this[_0x4a8045(0x1ea)](_0x4a8045(0x1f1)),_0x13f13f=this[_0x4a8045(0x1ea)]('approve-stats'),_0x3d9586=this['_el'](_0x4a8045(0x23b));if(!_0x1e2b89)return;this[_0x4a8045(0x1d9)](),this[_0x4a8045(0x1c9)]();_0x54db65[_0x4a8045(0x19d)]&&this[_0x4a8045(0x1a7)](_0x54db65[_0x4a8045(0x19d)]);const _0x5d1002=_0x54db65[_0x4a8045(0x1bd)]||[];if(_0x5d1002['length']===0x0&&!_0x54db65['syncFirst']){this['showToast'](_0x4a8045(0x1c1),_0x4a8045(0x1d8));return;}this[_0x4a8045(0x1a1)](_0x5d1002,_0x54db65);const _0x57b78d=_0x54db65[_0x4a8045(0x215)]||'';_0x128324[_0x4a8045(0x239)]=_0x57b78d;if(_0x584e2e)_0x584e2e[_0x4a8045(0x22c)]=!![];if(_0x3c85ac)_0x3c85ac[_0x4a8045(0x22c)]=!![];_0x38d334&&(_0x38d334['checked']=![]);_0x426dfd&&(_0x426dfd[_0x4a8045(0x1e3)]=!![]);_0x3bad07&&(_0x3bad07[_0x4a8045(0x239)]='');if(_0x3c85ac)_0x3c85ac[_0x4a8045(0x226)]=![];if(_0x38d334)_0x38d334[_0x4a8045(0x226)]=![];this[_0x4a8045(0x1a6)](_0x54db65[_0x4a8045(0x23f)]===!![]);const _0x406d47=this[_0x4a8045(0x1ea)]('confirm-approve');_0x54db65['syncFirst']&&this['onSync']?(_0x406d47&&(_0x406d47[_0x4a8045(0x226)]=!![],_0x406d47[_0x4a8045(0x219)]=_0x4a8045(0x240)),this[_0x4a8045(0x23e)]()):_0x406d47&&(_0x406d47['disabled']=![],_0x406d47[_0x4a8045(0x219)]=_0x4a8045(0x224));_0x1e2b89[_0x4a8045(0x1e3)]=![];const _0x3fd3af=++this[_0x4a8045(0x1fe)];void this[_0x4a8045(0x212)]({'requestId':_0x3fd3af,'taskId':_0x54db65[_0x4a8045(0x208)],'originalCommitMessage':_0x57b78d}),setTimeout(()=>{const _0x2bd35a=_0x4a8045;_0x128324[_0x2bd35a(0x21b)](),_0x128324[_0x2bd35a(0x1f3)](0x0,_0x128324[_0x2bd35a(0x239)]['length']);},0x64);}[_0x145f4a(0x1a6)](_0x18ea8b){const _0x29d4cd=_0x145f4a,_0x179902=this['_el'](_0x29d4cd(0x1e1)),_0x33d143=this['_el'](_0x29d4cd(0x1fb)),_0x4f1593=this[_0x29d4cd(0x1ea)](_0x29d4cd(0x21f)),_0x1a7d61=this[_0x29d4cd(0x1ea)]('push-after-commit'),_0x56021c=this['_el'](_0x29d4cd(0x225));if(!_0x179902)return;if(_0x18ea8b){_0x179902['hidden']=![];_0x33d143&&!_0x33d143[_0x29d4cd(0x226)]&&(_0x33d143[_0x29d4cd(0x22c)]=![]);if(_0x4f1593)_0x4f1593[_0x29d4cd(0x1e3)]=!![];this[_0x29d4cd(0x1c0)]=![];return;}_0x33d143?.[_0x29d4cd(0x22c)]&&(_0x33d143['checked']=![]);if(_0x4f1593)_0x4f1593[_0x29d4cd(0x1e3)]=!![];if(_0x1a7d61)_0x1a7d61[_0x29d4cd(0x226)]=![];if(_0x56021c)_0x56021c[_0x29d4cd(0x226)]=![];this[_0x29d4cd(0x1c0)]=![],_0x179902['hidden']=!![];}async[_0x145f4a(0x212)]({requestId:_0x123790,taskId:_0x270c97,originalCommitMessage:_0x8b6ead}){const _0x33f304=_0x145f4a,_0x3aac7d=this[_0x33f304(0x1ea)](_0x33f304(0x201));if(!_0x3aac7d)return;const _0x176aa0=await this[_0x33f304(0x1d6)](_0x8b6ead);if(_0x123790!==this[_0x33f304(0x1fe)])return;if(!this[_0x33f304(0x249)]||this[_0x33f304(0x249)][_0x33f304(0x208)]!==_0x270c97)return;if(!this[_0x33f304(0x1fa)]())return;if(_0x3aac7d[_0x33f304(0x239)]!==_0x8b6ead)return;_0x3aac7d[_0x33f304(0x239)]=_0x176aa0;}[_0x145f4a(0x1a1)](_0x17c0e1,_0x2659fb){const _0x18176a=_0x145f4a,_0x53e2c0=this[_0x18176a(0x1ea)](_0x18176a(0x1f1)),_0x3a7a64=this[_0x18176a(0x1ea)]('approve-stats'),_0x517e69=this[_0x18176a(0x1ea)](_0x18176a(0x23b));if(_0x17c0e1[_0x18176a(0x221)]===0x0){if(_0x53e2c0)_0x53e2c0[_0x18176a(0x219)]=_0x18176a(0x240);if(_0x3a7a64)_0x3a7a64[_0x18176a(0x219)]='';if(_0x517e69)_0x517e69['hidden']=!![];return;}const _0x3d9c95=_0x17c0e1[_0x18176a(0x24d)]((_0x4183fb,_0x18cab6)=>_0x4183fb+(_0x18cab6['files_changed']||0x0),0x0),_0x4842ed=_0x17c0e1[_0x18176a(0x24d)]((_0x966bf9,_0x3e586b)=>_0x966bf9+(_0x3e586b['lines_added']||0x0),0x0),_0x55c44a=_0x17c0e1[_0x18176a(0x24d)]((_0x26f944,_0x179bc1)=>_0x26f944+(_0x179bc1[_0x18176a(0x1c8)]||0x0),0x0);if(_0x17c0e1[_0x18176a(0x221)]===0x1){if(_0x53e2c0)_0x53e2c0[_0x18176a(0x219)]=_0x17c0e1[0x0]?.['name']||'repository';if(_0x517e69)_0x517e69['hidden']=!![];}else{const _0x468ce8=_0x17c0e1['map'](_0x7fa8e5=>_0x7fa8e5['name'])[_0x18176a(0x1d5)](',\x20');if(_0x53e2c0)_0x53e2c0[_0x18176a(0x219)]=_0x17c0e1['length']+_0x18176a(0x1b5)+_0x468ce8;if(_0x517e69)_0x517e69[_0x18176a(0x1e3)]=![];}_0x3a7a64&&(_0x3a7a64[_0x18176a(0x219)]=_0x3d9c95+_0x18176a(0x22e)+(_0x3d9c95===0x1?'':'s')+_0x18176a(0x1e8)+_0x4842ed+'\x20-'+_0x55c44a+')'),this[_0x18176a(0x1ac)](_0x17c0e1,_0x2659fb?.[_0x18176a(0x1f8)]||{});}async[_0x145f4a(0x23e)](){const _0x5c3f5f=_0x145f4a;if(!this['onSync']||this[_0x5c3f5f(0x1ef)])return;this['isSyncing']=!![];const _0x55733f=this['_el'](_0x5c3f5f(0x202));try{const _0x1493cf=await this[_0x5c3f5f(0x1b7)](this['taskData'][_0x5c3f5f(0x208)]);if(!this[_0x5c3f5f(0x1fa)]()){this[_0x5c3f5f(0x1ef)]=![];return;}if(_0x1493cf[_0x5c3f5f(0x1d0)]){const _0x57ad0e=this[_0x5c3f5f(0x249)]['reposChanged']?.['length']||0x0,_0x4ec6f8=this[_0x5c3f5f(0x249)][_0x5c3f5f(0x1bd)]?.[_0x5c3f5f(0x24d)]((_0x19f131,_0x4441de)=>_0x19f131+(_0x4441de[_0x5c3f5f(0x1f4)]||0x0),0x0)||0x0;this[_0x5c3f5f(0x249)][_0x5c3f5f(0x1bd)]=_0x1493cf[_0x5c3f5f(0x1d0)],this[_0x5c3f5f(0x1a1)](_0x1493cf[_0x5c3f5f(0x1d0)],this[_0x5c3f5f(0x249)]);const _0x43f3a1=_0x1493cf['repos_changed']['length'],_0x4cf21d=_0x1493cf[_0x5c3f5f(0x1d0)][_0x5c3f5f(0x24d)]((_0x323403,_0x4cc742)=>_0x323403+(_0x4cc742[_0x5c3f5f(0x1f4)]||0x0),0x0);(_0x4cf21d>_0x4ec6f8||_0x43f3a1>_0x57ad0e)&&this[_0x5c3f5f(0x1a7)](this[_0x5c3f5f(0x249)]['warning']?this['taskData'][_0x5c3f5f(0x19d)]+_0x5c3f5f(0x1c3):_0x5c3f5f(0x233));}_0x55733f&&(!this[_0x5c3f5f(0x249)][_0x5c3f5f(0x1bd)]||this[_0x5c3f5f(0x249)][_0x5c3f5f(0x1bd)][_0x5c3f5f(0x221)]===0x0?(_0x55733f[_0x5c3f5f(0x226)]=!![],_0x55733f['textContent']=_0x5c3f5f(0x1ed),this[_0x5c3f5f(0x1f5)](_0x5c3f5f(0x1a2))):(_0x55733f['disabled']=![],_0x55733f[_0x5c3f5f(0x219)]=_0x5c3f5f(0x224)));}catch(_0xa25cb2){console['error'](_0x5c3f5f(0x1b8),_0xa25cb2);if(!this[_0x5c3f5f(0x1fa)]()){this[_0x5c3f5f(0x1ef)]=![];return;}this[_0x5c3f5f(0x1f5)](_0x5c3f5f(0x211)+_0xa25cb2[_0x5c3f5f(0x1a0)]+_0x5c3f5f(0x1cc)),_0x55733f&&(this[_0x5c3f5f(0x249)][_0x5c3f5f(0x1bd)]&&this[_0x5c3f5f(0x249)][_0x5c3f5f(0x1bd)]['length']>0x0?(_0x55733f[_0x5c3f5f(0x226)]=![],_0x55733f['textContent']=_0x5c3f5f(0x224)):(_0x55733f[_0x5c3f5f(0x226)]=!![],_0x55733f[_0x5c3f5f(0x219)]='No\x20Changes'));}finally{this['isSyncing']=![];}}[_0x145f4a(0x20f)](){const _0x5d9f0b=_0x145f4a,_0x2df6bb=this[_0x5d9f0b(0x1ea)](_0x5d9f0b(0x20a));_0x2df6bb&&(_0x2df6bb[_0x5d9f0b(0x1e3)]=!![]);}async[_0x145f4a(0x1bf)](){const _0x40576d=_0x145f4a,_0x718066=this['_el'](_0x40576d(0x201)),_0x1f03c5=this['_el'](_0x40576d(0x197)),_0x539e21=this[_0x40576d(0x1ea)]('push-after-commit'),_0x1b7e51=this[_0x40576d(0x1ea)]('create-new-branch'),_0x477c83=this['_el']('new-branch-name'),_0x2a0b00=this[_0x40576d(0x1ea)]('confirm-approve'),_0x237f34=_0x718066[_0x40576d(0x239)][_0x40576d(0x21d)](),_0x45a26f=_0x1f03c5?.[_0x40576d(0x22c)]??!![],_0x2b31cb=_0x539e21?.[_0x40576d(0x22c)]??!![],_0x1c2162=_0x1b7e51?.['checked']||![],_0x27a1de=_0x477c83?.['value'][_0x40576d(0x21d)]()||'';this[_0x40576d(0x1d9)]();if(!_0x237f34){this['showError'](_0x40576d(0x200)),_0x718066['focus']();return;}if(_0x1c2162&&!_0x27a1de){this[_0x40576d(0x1f5)]('Branch\x20name\x20is\x20required\x20when\x20creating\x20a\x20new\x20branch'),_0x477c83?.[_0x40576d(0x21b)]();return;}if(_0x1c2162&&_0x27a1de){const _0x26bf6a=/[\s~^:?*\[\\]/;if(_0x26bf6a[_0x40576d(0x1ab)](_0x27a1de)){this[_0x40576d(0x1f5)]('Invalid\x20branch\x20name.\x20Avoid\x20spaces\x20and\x20special\x20characters\x20like\x20~\x20^\x20:\x20?\x20*\x20[\x20\x5c'),_0x477c83?.['focus']();return;}}const _0x498e06=_0x2a0b00?.['textContent']||_0x40576d(0x224);_0x2a0b00&&(_0x2a0b00[_0x40576d(0x226)]=!![],_0x1c2162?_0x2a0b00[_0x40576d(0x219)]='Creating\x20branch\x20&\x20committing...':_0x2a0b00[_0x40576d(0x219)]=_0x45a26f?_0x40576d(0x21c):'Committing...');try{const _0x113363={'commit_message':_0x237f34,'pull':_0x45a26f,'push':_0x2b31cb};_0x1c2162&&_0x27a1de&&(_0x113363[_0x40576d(0x21e)]=_0x27a1de);let _0x3ab58f=null;this[_0x40576d(0x1cf)]&&(_0x3ab58f=await this[_0x40576d(0x1cf)](this['taskData']['taskId'],_0x113363));let _0x4aee93=_0x40576d(0x1de);if(_0x1c2162)_0x4aee93=_0x40576d(0x1b4)+_0x27a1de+'\x27',_0x2b31cb&&(_0x4aee93+=_0x40576d(0x22d));else{if(_0x45a26f&&_0x2b31cb)_0x4aee93=_0x40576d(0x1d1);else{if(_0x45a26f)_0x4aee93=_0x40576d(0x1ca);else _0x2b31cb&&(_0x4aee93=_0x40576d(0x1a8));}}this[_0x40576d(0x1e9)](_0x4aee93,_0x40576d(0x1b0)),this[_0x40576d(0x20f)](),this['_createPR']&&this[_0x40576d(0x1e0)]&&this[_0x40576d(0x1e0)](this[_0x40576d(0x249)]['taskId'],_0x3ab58f||{}),this[_0x40576d(0x241)]&&this['onSuccess'](this['taskData']);}catch(_0x4c4a2c){console[_0x40576d(0x1d8)](_0x40576d(0x1d2),_0x4c4a2c),this[_0x40576d(0x1f5)]('Failed\x20to\x20commit:\x20'+_0x4c4a2c['message']),_0x2a0b00&&(_0x2a0b00[_0x40576d(0x226)]=![],_0x2a0b00[_0x40576d(0x219)]=_0x498e06),this[_0x40576d(0x210)]&&this[_0x40576d(0x210)](_0x4c4a2c);}}['isVisible'](){const _0x39fcfa=_0x145f4a,_0x297f11=this[_0x39fcfa(0x1ea)](_0x39fcfa(0x20a));return _0x297f11&&!_0x297f11['hidden'];}[_0x145f4a(0x23d)](){const _0x70b090=_0x145f4a,_0x5d046b=this[_0x70b090(0x1ea)](_0x70b090(0x20a));_0x5d046b&&_0x5d046b[_0x70b090(0x204)](),this[_0x70b090(0x203)]=![];}}function _0x4c5e(_0x271c9c,_0x15667d){_0x271c9c=_0x271c9c-0x197;const _0x3b97dd=_0x3b97();let _0x4c5e61=_0x3b97dd[_0x271c9c];if(_0x4c5e['CAUduy']===undefined){var _0x1e3441=function(_0x432830){const _0x20a5c8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x596b39='',_0x3e74e5='';for(let _0x14e7fb=0x0,_0x39d868,_0x80a6e,_0x2cccca=0x0;_0x80a6e=_0x432830['charAt'](_0x2cccca++);~_0x80a6e&&(_0x39d868=_0x14e7fb%0x4?_0x39d868*0x40+_0x80a6e:_0x80a6e,_0x14e7fb++%0x4)?_0x596b39+=String['fromCharCode'](0xff&_0x39d868>>(-0x2*_0x14e7fb&0x6)):0x0){_0x80a6e=_0x20a5c8['indexOf'](_0x80a6e);}for(let _0x66469b=0x0,_0x32b0b9=_0x596b39['length'];_0x66469b<_0x32b0b9;_0x66469b++){_0x3e74e5+='%'+('00'+_0x596b39['charCodeAt'](_0x66469b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3e74e5);};_0x4c5e['yuxAxR']=_0x1e3441,_0x4c5e['cqnkIR']={},_0x4c5e['CAUduy']=!![];}const _0x24d0a8=_0x3b97dd[0x0],_0x46b85d=_0x271c9c+_0x24d0a8,_0x50cac2=_0x4c5e['cqnkIR'][_0x46b85d];return!_0x50cac2?(_0x4c5e61=_0x4c5e['yuxAxR'](_0x4c5e61),_0x4c5e['cqnkIR'][_0x46b85d]=_0x4c5e61):_0x4c5e61=_0x50cac2,_0x4c5e61;}function _0x3b97(){const _0x4857dd=['y2XVC2uTyxbWCM92zs1TB2rHBa','CMvWB3ndAgfUz2vK','C2nYB2XSsw50B1zPzxC','x2HHBMrSzufWChjVDMu','x2nYzwf0zvbs','tM8Gy2HHBMDLCYb0BYbHChbYB3zL','iIbOAwrKzw4+cIaGicaGidXKAxyGy2XHC3m9iM1VzgfSlw92zxjSyxKIpJWVzgL2pGOGicaGica8zgL2ignSyxnZpsjTB2rHBc1JB250zw50iJ4kicaGicaGica8zgL2ignSyxnZpsjTB2rHBc1OzwfKzxiIpGOGicaGicaGicaGpgGYpKfWChjVDMuGq2HHBMDLCZWVAdi+cIaGicaGicaGica8yNv0Dg9UignSyxnZpsjTB2rHBc1JBg9ZzsiGAwq9iG','iefKzgL0Aw9UywWGy2HHBMDLCYbKzxrLy3rLzcbZAw5JzsbSyxn0ihn5BMmU','mtiXotaYvwznBvff','iIbOAwrKzw4+cIaGicaGicaGicaGidXZCgfUignSyxnZpsjLCNjVCI1Py29UiJ4Hpc9ZCgfUpGOGicaGicaGicaGica8C3bHBIbPzd0I','Aw5Uzxjive1m','BMv3lwjYyw5JAc1PBNb1Dc1JB250ywLUzxi','BgLUzxnFzgvSzxrLza','AgLKzvDHCM5PBMC','q2HHBMDLCYbWDwXSzwqGyw5KignVBw1PDhrLza','A2v5','lIbzB3uGy2fUihn0AwXSignVBw1PDcb3AxrOigv4Axn0Aw5Nihn0ywDLzcbJAgfUz2vZlG','ndbdtKXLqLC','y29KzxjMBg93x2f0DhjPyNv0Aw9U','B25bChbYB3zL','CMvWB3nFy2HHBMDLza','q2HHBMDLCYbWDwXSzwqSignVBw1PDhrLzcWGyw5Kihb1C2HLza','rMfPBgvKihrVigfWChjVDMuGy2HHBMDLCW','Aw5JBhvKzxm','C21VB3rO','AM9PBG','x2fKzef0DhjPyNv0Aw9UswzfBMfIBgvK','yxbWCM92zwrcEq','zxjYB3i','AgLKzuvYCM9Y','ndC0ntG0nxfrvwfbua','DxnLvgfZA1bHz2vtDhLSzxm','zMLYC3rfBgvTzw50q2HPBgq','DxnLCG','q2HHBMDLCYbJB21TAxr0zwq','C2HVDW','B25dCMvHDgvquG','ChiTB3b0Aw9UlxnLy3rPB24','C3rHDhvZ','AgLKzgvU','yxbWCM92zs1LCNjVCG','mJi0mdmWrMP5uKj6','mtu1nZm2odrYB0fsvvm','y29UDgfPBMvY','ignOyw5NzwqGkcS','C2HVD1rVyxn0','x2vS','y29UzMLYBs1HChbYB3zLiJ5dB21TAxqGq2HHBMDLCZWVyNv0Dg9UpGOGicaGicaGidWVzgL2pGOGicaGica8l2rPDJ4kicaGidWVzgL2pGOGia','y29KzxjMBg93qxr0CMLIDxrPB24','tM8Gq2HHBMDLCW','D2fYBG','AxntEw5JAw5N','ChiTAgLUDciGAgLKzgvUpGOGicaGicaGicaGicaGieeGBMv3igjYyw5JAcb3AwXSigjLignYzwf0zwqSihb1C2HLzcWGyw5KigeGChvSBcbYzxf1zxn0ig9Wzw5Lzc4kicaGicaGicaGicaGpc9WpGOGicaGicaGicaGpc9KAxy+cIaGicaGicaGpc9KAxy+cIaGicaGicaGpgrPDIbJBgfZCZ0IBw9KywWTzM9VDgvYiJ4kicaGicaGicaGidXIDxr0B24Gy2XHC3m9iMj0BI1NAg9ZDciGAwq9iG','yxbWCM92zs1YzxbVlw5HBwu','y2fUy2vSlwfWChjVDMuIpKnHBMnLBdWVyNv0Dg9UpGOGicaGicaGicaGpgj1DhrVBIbJBgfZCZ0IyNrUlxbYAw1HCNKIigLKpsi','C2v0u2vSzwn0Aw9UuMfUz2u','zMLSzxnFy2HHBMDLza','C2HVD0vYCM9Y','rxnJyxbL','yMfZzvvYBa','yNjHBMnOzxm','Bw9KywWTD2fYBMLUzW','AxnwAxnPyMXL','y3jLyxrLlxb1BgWTCMvXDwvZDa','y29TCgXLDgvK','yxbWCM92zs13yxjUAw5NlxrLEhqIpJWVC3bHBJ4kicaGicaGicaGidWVzgL2pGOGicaGicaGicaGpgrPDIbPzd0I','x2f0DhjPyNv0Aw9UuMvXDwvZDeLK','ChvSBc1IzwzVCMuTy29TBwL0iIbJAgvJA2vKpGOGicaGicaGicaGicaGidXZCgfUpLb1BgWGzNjVBsbYzw1VDguGywz0zxiGy29TBwL0icHYzwjHC2uPpc9ZCgfUpGOGicaGicaGicaGica8l2XHyMvSpGOGicaGicaGicaGica8BgfIzwWGy2XHC3m9iMnOzwnRyM94lwXHyMvSiJ4kicaGicaGicaGicaGica8Aw5WDxqGDhLWzt0Iy2HLy2TIB3GIigLKpsi','q29TBwL0ig1LC3nHz2uGAxmGCMvXDwLYzwq','y29TBwL0lw1LC3nHz2uTAw5WDxq','y29UzMLYBs1HChbYB3zL','Aw5PDgLHBgL6zwq','CMvTB3zL','zgvWBg95','A2v5zg93BG','Bw9KywWGChjVzM91BMqTyxbWCM92zs1TB2rHBa','DgfZA0LK','mJC5otqWmxLpsNzkvG','yxbWCM92zs1TB2rHBa','yxbWCM92zs1YzxbVlw5HBwuIignSyxnZpsjTB2rHBc1YzxbViJ5szxbVC2L0B3j5pc9ZCgfUpGOGicaGicaGicaGicaGidXZCgfUigLKpsi','y29TBwL0lw1LC3nHz2uTAw5WDxqIpKnVBw1PDcbTzxnZywDLoJWVBgfIzwW+cIaGicaGicaGicaGidX0zxH0yxjLysbPzd0I','ANnVBG','CxvLCNLtzwXLy3rVCG','AgLKzq','B25fCNjVCG','u3LUyYbMywLSzwq6ia','x2fWCgX5qxr0CMLIDxrPB25bC3LUyW','y3jLyxrLlw5LDY1ICMfUy2GIpGOGicaGicaGicaGicaGidXZCgfUpKnYzwf0zsbUzxCGyNjHBMnOpc9ZCgfUpGOGicaGicaGicaGica8l2XHyMvSpGOGicaGicaGicaGica8zgL2igLKpsi','BxvSDgKTCMvWBY1UB3rLiIbJBgfZCZ0IzMLLBgqTAgLUDciGAgLKzgvUpLrOAxmGy29TBwL0ig1LC3nHz2uGD2LSBcbIzsb1C2vKigzVCIbHBgWGCMvWB3nPDg9YAwvZigXPC3rLzcbHyM92zs48l3a+cIaGicaGicaGica8l2rPDJ4kicaGicaGicaGidXKAxyGy2XHC3m9iM1VzgfSlxnLy3rPB24IpGOGicaGicaGicaGica8BgfIzwWGy2XHC3m9iMnOzwnRyM94lwXHyMvSiJ4kicaGicaGicaGicaGica8Aw5WDxqGDhLWzt0Iy2HLy2TIB3GIigLKpsi','y29TBwL0twvZC2fNzq','ywrKrxzLBNrmAxn0zw5LCG','yxbWCM92zs1TB2rHBciGy2XHC3m9iG','yxbWCM92zs1ICMfUy2HLCYiGy2XHC3m9iM1VzgfSlwjYyw5JAgvZiIbOAwrKzw4+pc9KAxy+cIaGicaGicaGica8l2rPDJ4kicaGicaGicaGidXKAxyGy2XHC3m9iM1VzgfSlxnLy3rPB24IpGOGicaGicaGicaGica8BgfIzwWGzM9Ypsi','Dgv4DenVBNrLBNq','pgrPDIbJBgfZCZ0IyNjHBMnOlwLUzM8IpKjYyw5JAdOGpgnVzgu+','zM9JDxm','uhvSBgLUzYaMienVBw1PDhrPBMCUlI4','DhjPBq','BMv3x2jYyw5JAa','ChiTAgLUDa','y29TBwL0lw1LC3nHz2uTAw5WDxqIignSyxnZpsjJB21TAxqTBwvZC2fNzs1PBNb1DciGCM93CZ0InIiGCgXHy2vOB2XKzxi9iKvUDgvYignVBw1PDcbTzxnZywDLlI4UiJ48l3rLEhrHCMvHpGOGicaGicaGicaGica8CcbPzd0I','BgvUz3rO','q29UDgfPBMvYigLZig5VDcbYDw5UAw5N','iIbOAwrKzw4+cIaGicaGicaGicaGidXZCgfUignSyxnZpsj3yxjUAw5NlwLJB24IpIe8l3nWyw4+cIaGicaGicaGicaGidXZCgfUigLKpsi','q29TBwL0ienOyw5Nzxm','y3jLyxrLlw5LDY1ICMfUy2G','zgLZywjSzwq','y3jLyxrLrwXLBwvUDa','vgvZDa','pc9JB2rLpJWVzgL2pG','m0XHtKrisa','mtyZoti0mKjyCgLyyW','y2HLy2TLza','igfUzcbWDxnOzwq','igzPBgu','ihrHC2TZignHBM5VDcbIzsbHChbYB3zLza','yxbWCM92zs1LCNjVCIiGy2XHC3m9iG','CMvWBW','cIaGica8zgL2igLKpsi','qwrKAxrPB25HBcbJAgfUz2vZigrLDgvJDgvKihnPBMnLigXHC3qGC3LUyY4GuMv2Awv3ihrOzsb1CgrHDgvKigzPBguGBgLZDc4','nfHzCxz3wq','y29UDgfPBMvYswq','y2fUy2vSlwfWChjVDMu','rgvWBg95','y2XPy2S','DMfSDwu','BMv3lwjYyw5JAc1Uyw1L','BxvSDgKTCMvWBY1UB3rL','yNjHBMnO','zgvZDhjVEq','x3bLCMzVCM1tEw5J','ChjtDxbWB3j0zwq','u3LUy2LUzY4UlG','B25tDwnJzxnZ','q28Tqxv0Ag9YzwqTqNK6ienVzgvYrMXVDW','nJC3nJfqsu1Zruy','yxbWCM92zs1ZDgf0CYiGy2XHC3m9iM1VzgfSlxn0yxrZiJ4WigzPBgvZignOyw5Nzwq8l3nWyw4+cIaGicaGicaGicaGidWVzgL2pGOGicaGicaGicaGica8zgL2igLKpsi','yxbWCM92zs1LCNjVCI10zxH0','BMv3lwjYyw5JAc1PBNb1Dc1JB250ywLUzxiIignSyxnZpsjUzxCTyNjHBMnOlwnVBNrHAw5LCIiGAgLKzgvUpGOGicaGicaGicaGicaGidXPBNb1Dcb0ExbLpsj0zxH0iIbPzd0I','x2jPBMrfDMvUDhm','yM9KEq','DgfZA0rHDge','yxbWCM92zs13yxjUAw5NiIbJBgfZCZ0I','Aw5PDa','mte0neXkyMPpuq','CMvKDwnL','ChvSBc1IzwzVCMuTy29TBwL0','yxbWCM92zs1LCNjVCI10zxH0iJ48l3nWyw4+cIaGicaGicaGica8l2rPDJ4kicaGicaGicaGidXKAxyGy2XHC3m9iM1VzgfSlxnLy3rPB24IpGOGicaGicaGicaGica8zgL2ignSyxnZpsjTB2rHBc1PBMzViJ4kicaGicaGicaGicaGica8C3bHBIbPzd0I','Bw9KywWTzxjYB3i','q29UDgfPBMvYig5VigXVBMDLCIbHDMfPBgfIBgu','uMvHzhKGDg8GyxbWCM92zq','ChvZAc1HzNrLCI1JB21TAxq','D2fYBMLUzW','rMfPBgvKihrVigfKzcbdB2rLCKzSB3CGyxr0CMLIDxrPB246','y2HHBMDL','BwvZC2fNzq','x3vWzgf0zurPC3bSyxK','tM8Gy2HHBMDLCYb0BYbHChbYB3zLigfMDgvYihn5BMm','cGPdBY1bDxrOB3jLzc1cEtOGq29KzxjgBg93idXHAubJB2rLCMzSB3CUywK+cKXLyxjUig1VCMu6igH0DhbZoI8Vy29KzxjMBg93lMfP','BMfTzq','yxbWCM92zs13yxjUAw5N','DxbKyxrLufjtDxbWB3j0','C2HVD1DHCM5PBMC','q2HHBMDLCYbJB21TAxr0zwqGyw5Kihb1C2HLza','y3jLyxrLlxb1BgWTCMvXDwvZDci+cIaGicaGicaGicaGicaGphnWyw4+q3jLyxrLihb1BgWGCMvXDwvZDdWVC3bHBJ4kicaGicaGicaGicaGpc9SywjLBd4kicaGicaGicaGicaGphaGy2XHC3m9iMzPzwXKlwHPBNqIigLKpsi','ChjVzM91BMqTzMvLzgjHy2STBw9KywWGChjVzM91BMqTyxbWCM92zs1TB2rHBa','DgvZDa','x2rPC3bSyxLcCMfUy2HjBMzV','vgfZAYbTDxn0ignVBxbSzxrLigzPCNn0','yxbWzw5Kq2HPBgq','l3nLDhrPBMDZ','C3vJy2vZCW','BMv3lwjYyw5JAc1Uyw1LiIbJBgfZCZ0IBMv3lwjYyw5JAc1PBNb1DciGCgXHy2vOB2XKzxi9iKvUDgvYig5LDYbICMfUy2GGBMfTzs4UlIi+cIaGicaGicaGicaGicaGphaGy2XHC3m9iMzPzwXKlwHPBNqIpKeGBMv3igjYyw5JAcb3AwXSigjLignYzwf0zwqGzNjVBsb0AguGy3vYCMvUDcbICMfUy2GGyMvMB3jLignVBw1PDhrPBMCUpc9WpGOGicaGicaGicaGica8l2rPDJ4kicaGicaGicaGidWVzgL2pGOGicaGicaGicaGpgrPDIbPzd0I','BMvHCMvZDa','ChiTB3b0Aw9UlxnLy3rPB24IignSyxnZpsjTB2rHBc1Zzwn0Aw9UiIbOAwrKzw4+cIaGicaGicaGicaGidXSywjLBcbJBgfZCZ0Iy2HLy2TIB3GTBgfIzwWIpGOGicaGicaGicaGicaGidXPBNb1Dcb0ExbLpsjJAgvJA2jVEciGAwq9iG','q2HHBMDLCYbJB21TAxr0zwqGDg8GBMv3igjYyw5JAcaN','ihjLCg9ZAxrVCMLLCZOG','ChjLzML4','B25tEw5J','rMfPBgvKihrVihn5BMmGCMvWB3mGyMvMB3jLigfWChjVDMu6','zMfPBgvK','mtGYsMTyv1PM','DgfZA1r5Cgu'];_0x3b97=function(){return _0x4857dd;};return _0x3b97();}export function getApproveState(_0x1d590c,_0x31058b){const _0x4521e8=_0x145f4a;if(!_0x1d590c)return{'canApprove':![],'reason':'No\x20task\x20data'};if(isLogOnlyTaskType(_0x1d590c[_0x4521e8(0x1bb)]))return{'canApprove':![],'reason':(_0x1d590c[_0x4521e8(0x1bb)]===_0x4521e8(0x1ab)?_0x4521e8(0x228):_0x4521e8(0x237))+_0x4521e8(0x22f)};const _0x43ac01=_0x31058b?.[_0x4521e8(0x1d0)]?.[_0x4521e8(0x221)]>0x0,_0x3f855c=_0x1d590c['status']===_0x4521e8(0x1fc)||_0x1d590c[_0x4521e8(0x1e2)]===_0x4521e8(0x1b9)||_0x1d590c[_0x4521e8(0x1e2)]==='interrupted',_0x1fae9c=_0x1d590c['containerState']==='running',_0x530a41=_0x1d590c['approvedBy']!==undefined&&_0x1d590c[_0x4521e8(0x1d7)]!==null;if(_0x530a41){const _0x27d83d=_0x1d590c['approvedBy'][_0x4521e8(0x1a4)]||_0x1d590c[_0x4521e8(0x1d7)]['username']||_0x4521e8(0x1dd);return{'canApprove':![],'reason':'Already\x20approved\x20by\x20'+_0x27d83d};}if(!_0x43ac01)return{'canApprove':![],'reason':_0x4521e8(0x1c1)};if(!_0x3f855c)return{'canApprove':![],'reason':_0x4521e8(0x1ad)};if(!_0x1d590c[_0x4521e8(0x235)])return{'canApprove':![],'reason':_0x4521e8(0x19a)};if(!_0x1fae9c)return{'canApprove':![],'reason':_0x4521e8(0x222)};return{'canApprove':!![],'reason':_0x4521e8(0x19b)};}
1
+ function isLogOnlyTaskType(_0x46443e){return _0x46443e==='test'||_0x46443e==='deploy';}export function createApproveDialogHTML(_0x171b71='',_0xc26be1={}){const _0xd80e56=_0x171b71,_0x44372d=_0xc26be1['useTaskPageStyles']?'modal\x20profound-approve-modal':'profound-feedback-modal\x20profound-approve-modal',_0x2e3c46=_0xc26be1['useTaskPageStyles']?'modal-warning':'approve-modal-warning',_0x495ea0=_0xc26be1['useTaskPageStyles']?'modal-error':'approve-modal-error';return'\x0a\x20\x20\x20\x20<div\x20id=\x22'+_0xd80e56+'approve-modal\x22\x20class=\x22'+_0x44372d+'\x22\x20hidden>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22modal-overlay\x22></div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22modal-content\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22modal-header\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<h2>Approve\x20Changes</h2>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22modal-close\x22\x20id=\x22'+_0xd80e56+'close-approve-modal\x22>&times;</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22modal-body\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20id=\x22'+_0xd80e56+'approve-warning\x22\x20class=\x22'+_0x2e3c46+'\x22\x20hidden>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22warning-icon\x22>!</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20id=\x22'+_0xd80e56+'approve-warning-text\x22></span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20id=\x22'+_0xd80e56+'approve-error\x22\x20class=\x22'+_0x495ea0+'\x22\x20hidden>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22error-icon\x22>!</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20id=\x22'+_0xd80e56+'approve-error-text\x22></span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22modal-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22modal-info\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20id=\x22'+_0xd80e56+'approve-repo-name\x22\x20class=\x22modal-repo\x22>Repository</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20id=\x22'+_0xd80e56+'approve-stats\x22\x20class=\x22modal-stats\x22>0\x20files\x20changed</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20id=\x22'+_0xd80e56+'approve-branches\x22\x20class=\x22modal-branches\x22\x20hidden></div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22modal-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20for=\x22'+_0xd80e56+'commit-message-input\x22>Commit\x20message:</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<textarea\x20id=\x22'+_0xd80e56+'commit-message-input\x22\x20class=\x22commit-message-input\x22\x20rows=\x226\x22\x20placeholder=\x22Enter\x20commit\x20message...\x22></textarea>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p\x20id=\x22'+_0xd80e56+'multi-repo-note\x22\x20class=\x22field-hint\x22\x20hidden>This\x20commit\x20message\x20will\x20be\x20used\x20for\x20all\x20repositories\x20listed\x20above.</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22modal-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20class=\x22checkbox-label\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22checkbox\x22\x20id=\x22'+_0xd80e56+'pull-before-commit\x22\x20checked>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>Pull\x20from\x20remote\x20after\x20commit\x20(rebase)</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20class=\x22checkbox-label\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22checkbox\x22\x20id=\x22'+_0xd80e56+'push-after-commit\x22\x20checked>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>Push\x20to\x20remote\x20after\x20commit</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22modal-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20class=\x22checkbox-label\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22checkbox\x22\x20id=\x22'+_0xd80e56+'create-new-branch\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>Create\x20new\x20branch</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20id=\x22'+_0xd80e56+'new-branch-input-container\x22\x20class=\x22new-branch-container\x22\x20hidden>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22text\x22\x20id=\x22'+_0xd80e56+'new-branch-name\x22\x20class=\x22new-branch-input\x22\x20placeholder=\x22Enter\x20new\x20branch\x20name...\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p\x20class=\x22field-hint\x22>A\x20new\x20branch\x20will\x20be\x20created\x20from\x20the\x20current\x20branch\x20before\x20committing.</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20id=\x22'+_0xd80e56+'pr-option-section\x22\x20class=\x22modal-section\x22\x20hidden>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20class=\x22checkbox-label\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22checkbox\x22\x20id=\x22'+_0xd80e56+'create-pull-request\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>Create\x20pull\x20request</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p\x20class=\x22field-hint\x22\x20id=\x22'+_0xd80e56+'pr-hint\x22\x20hidden>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20A\x20new\x20branch\x20will\x20be\x20created,\x20pushed,\x20and\x20a\x20pull\x20request\x20opened.\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20id=\x22'+_0xd80e56+'ibmi-sync-section\x22\x20class=\x22modal-section\x22\x20hidden>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22approve-divider\x22></div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20class=\x22checkbox-label\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22checkbox\x22\x20id=\x22'+_0xd80e56+'sync-to-ibmi\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>Sync\x20to\x20IBM\x20i</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20id=\x22'+_0xd80e56+'ibmi-sync-library-row\x22\x20class=\x22new-branch-container\x22\x20hidden>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20for=\x22'+_0xd80e56+'ibmi-sync-library\x22>Library\x20name</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22text\x22\x20id=\x22'+_0xd80e56+'ibmi-sync-library\x22\x20class=\x22new-branch-input\x20code-font\x22\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20maxlength=\x2210\x22\x20placeholder=\x22e.g.,\x20MYLIB\x22\x20style=\x22width:\x20160px;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22modal-footer\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-ghost\x22\x20id=\x22'+_0xd80e56+'cancel-approve\x22>Cancel</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22btn-primary\x22\x20id=\x22'+_0xd80e56+'confirm-approve\x22>Commit\x20Changes</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export class ApproveDialog{constructor(_0x18e7b3={}){this['prefix']=_0x18e7b3['prefix']||'',this['onApprove']=_0x18e7b3['onApprove'],this['onSync']=_0x18e7b3['onSync'],this['onSuccess']=_0x18e7b3['onSuccess'],this['onError']=_0x18e7b3['onError'],this['onCreatePR']=_0x18e7b3['onCreatePR'],this['showToast']=_0x18e7b3['showToast']||(()=>{}),this['container']=_0x18e7b3['container']||document['body'],this['useTaskPageStyles']=_0x18e7b3['useTaskPageStyles']||![],this['baseUrl']=_0x18e7b3['baseUrl']||'',this['coderflowAttribution']=_0x18e7b3['coderflowAttribution'],this['onSyncToIbmi']=_0x18e7b3['onSyncToIbmi']||null,this['taskData']=null,this['initialized']=![],this['isSyncing']=![],this['_createPR']=![],this['_attributionRequestId']=0x0;}['init'](){if(this['initialized'])return;const _0x586d25=document['createElement']('div');_0x586d25['innerHTML']=createApproveDialogHTML(this['prefix'],{'useTaskPageStyles':this['useTaskPageStyles']}),this['container']['appendChild'](_0x586d25['firstElementChild']),this['_bindEvents'](),this['initialized']=!![];}['_el'](_0xee48df){return document['getElementById'](''+this['prefix']+_0xee48df);}['_bindEvents'](){const _0x3f6372=this['_el']('approve-modal'),_0x1b6f25=this['_el']('close-approve-modal'),_0x2af887=this['_el']('cancel-approve'),_0x166a70=this['_el']('confirm-approve'),_0x1aad64=_0x3f6372?.['querySelector']('.modal-overlay'),_0x17a47e=this['_el']('create-new-branch'),_0x45d872=this['_el']('new-branch-input-container'),_0x2f7333=this['_el']('new-branch-name'),_0x4895d0=this['_el']('push-after-commit'),_0x2975ea=this['_el']('create-pull-request'),_0x2b9513=this['_el']('pr-hint');_0x1b6f25?.['addEventListener']('click',()=>this['hide']()),_0x2af887?.['addEventListener']('click',()=>this['hide']()),_0x1aad64?.['addEventListener']('click',()=>this['hide']()),_0x166a70?.['addEventListener']('click',()=>this['_handleApprove']());_0x17a47e&&_0x17a47e['addEventListener']('change',()=>{_0x45d872&&(_0x45d872['hidden']=!_0x17a47e['checked']),_0x17a47e['checked']&&_0x2f7333&&_0x2f7333['focus']();});_0x2975ea&&_0x4895d0&&_0x17a47e&&(_0x2975ea['addEventListener']('change',()=>{this['_createPR']=_0x2975ea['checked'];if(_0x2975ea['checked']){_0x4895d0['checked']=!![],_0x4895d0['disabled']=!![],_0x17a47e['checked']=!![],_0x17a47e['disabled']=!![];_0x45d872&&(_0x45d872['hidden']=![]);if(_0x2b9513)_0x2b9513['hidden']=![];}else{_0x4895d0['disabled']=![],_0x17a47e['disabled']=![];if(_0x2b9513)_0x2b9513['hidden']=!![];}}),_0x4895d0['addEventListener']('change',()=>{if(!_0x4895d0['checked']&&_0x2975ea['checked']){_0x2975ea['checked']=![],this['_createPR']=![],_0x4895d0['disabled']=![],_0x17a47e['disabled']=![];if(_0x2b9513)_0x2b9513['hidden']=!![];}}));const _0x14d7aa=this['_el']('sync-to-ibmi');_0x14d7aa&&_0x14d7aa['addEventListener']('change',_0xb3bf21=>{const _0x44601f=this['_el']('ibmi-sync-library-row');if(_0x44601f)_0x44601f['hidden']=!_0xb3bf21['target']['checked'];if(_0xb3bf21['target']['checked']){const _0x312677=this['_el']('ibmi-sync-library'),_0x435cdf=localStorage['getItem']('coderflow_ibmi_sync_library');_0x435cdf&&_0x312677&&!_0x312677['value']&&(_0x312677['value']=_0x435cdf);}}),document['addEventListener']('keydown',_0x52155c=>{_0x52155c['key']==='Escape'&&_0x3f6372&&!_0x3f6372['hidden']&&this['hide']();});}['showError'](_0x3525b7){const _0x524e83=this['_el']('approve-error'),_0x51623b=this['_el']('approve-error-text');_0x524e83&&_0x51623b&&(_0x51623b['textContent']=_0x3525b7,_0x524e83['hidden']=![],_0x524e83['scrollIntoView']({'behavior':'smooth','block':'nearest'}));}['hideError'](){const _0x5eb440=this['_el']('approve-error'),_0x276599=this['_el']('approve-error-text');_0x5eb440&&_0x276599&&(_0x5eb440['hidden']=!![],_0x276599['textContent']='');}['_displayBranchInfo'](_0x12d059,_0x17ebfd={}){const _0x4a16ea=this['_el']('approve-branches');if(!_0x4a16ea)return;const _0x128e86=[];for(const _0x3e3af8 of _0x12d059){_0x17ebfd[_0x3e3af8['name']]&&_0x128e86['push']({'repo':_0x3e3af8['name'],'branch':_0x17ebfd[_0x3e3af8['name']]});}if(_0x128e86['length']>0x0){_0x4a16ea['hidden']=![];if(_0x128e86['length']===0x1)_0x4a16ea['innerHTML']='<div\x20class=\x22branch-info\x22>Branch:\x20<code>'+_0x128e86[0x0]['branch']+'</code></div>';else{const _0x181ab0=_0x128e86['map'](_0x44075f=>'<div\x20class=\x22branch-item\x22><strong>'+_0x44075f['repo']+':</strong>\x20<code>'+_0x44075f['branch']+'</code></div>')['join']('');_0x4a16ea['innerHTML']='<div\x20class=\x22branch-info\x22>Branches:<div\x20class=\x22branch-list\x22>'+_0x181ab0+'</div></div>';}}else _0x4a16ea['hidden']=!![],_0x4a16ea['innerHTML']='';}['showWarning'](_0x6a4a26){const _0x2e081c=this['_el']('approve-warning'),_0x3c9f29=this['_el']('approve-warning-text');_0x2e081c&&_0x3c9f29&&(_0x3c9f29['textContent']=_0x6a4a26,_0x2e081c['hidden']=![]);}['hideWarning'](){const _0x301f51=this['_el']('approve-warning'),_0x44a47b=this['_el']('approve-warning-text');_0x301f51&&_0x44a47b&&(_0x301f51['hidden']=!![],_0x44a47b['textContent']='');}['_stripCoAuthoredByLines'](_0x1ff59c){return _0x1ff59c['replace'](/^Co-Authored-By:.*$/gmi,'')['replace'](/^Learn more: https:\/\/coderflow\.ai\s*$/gm,'')['replace'](/\n{3,}/g,'\x0a\x0a')['trim']();}async['_addAttributionIfEnabled'](_0x2820d3){try{let _0xb196dd;try{const _0x34caf1=await fetch(this['baseUrl']+'/settings');if(_0x34caf1['ok']){const _0x36befb=await _0x34caf1['json']();_0xb196dd=_0x36befb['coderflow_attribution']!==![];}}catch(_0x1ef264){}_0xb196dd===undefined&&(this['coderflowAttribution']!==undefined?_0xb196dd=this['coderflowAttribution']!==![]:_0xb196dd=!![]);const _0x22da12=this['_stripCoAuthoredByLines'](_0x2820d3);if(!_0xb196dd)return _0x22da12;const _0x3a5012='\x0a\x0aCo-Authored-By:\x20CoderFlow\x20<ai@coderflow.ai>\x0aLearn\x20more:\x20https://coderflow.ai';return _0x22da12+_0x3a5012;}catch(_0x577eca){return console['warn']('Failed\x20to\x20add\x20CoderFlow\x20attribution:',_0x577eca),_0x2820d3;}}['show'](_0x157761){!this['initialized']&&this['init']();this['taskData']=_0x157761;const _0x5d0f35=this['_el']('approve-modal'),_0x5ebac2=this['_el']('commit-message-input'),_0x12cb33=this['_el']('pull-before-commit'),_0x53a00d=this['_el']('push-after-commit'),_0x665125=this['_el']('create-new-branch'),_0xf6aefd=this['_el']('new-branch-input-container'),_0xe7e799=this['_el']('new-branch-name'),_0x22b32e=this['_el']('approve-repo-name'),_0x4d9617=this['_el']('approve-stats'),_0x436fc7=this['_el']('multi-repo-note');if(!_0x5d0f35)return;this['hideError'](),this['hideWarning']();_0x157761['warning']&&this['showWarning'](_0x157761['warning']);const _0x316ba8=_0x157761['reposChanged']||[];if(_0x316ba8['length']===0x0&&!_0x157761['syncFirst']){this['showToast']('No\x20changes\x20to\x20approve','error');return;}this['_updateDisplay'](_0x316ba8,_0x157761);const _0x388448=_0x157761['commitMessage']||'',_0x4185bd=this['_stripCoAuthoredByLines'](_0x388448);_0x5ebac2['value']=_0x4185bd;if(_0x12cb33)_0x12cb33['checked']=!![];if(_0x53a00d)_0x53a00d['checked']=!![];_0x665125&&(_0x665125['checked']=![]);_0xf6aefd&&(_0xf6aefd['hidden']=!![]);_0xe7e799&&(_0xe7e799['value']='');if(_0x53a00d)_0x53a00d['disabled']=![];if(_0x665125)_0x665125['disabled']=![];this['updatePRSupport'](_0x157761['prSupported']===!![]);const _0x5833be=this['_el']('ibmi-sync-section');if(_0x5833be){_0x5833be['hidden']=!_0x157761['ibmiSyncAvailable'];const _0x42260d=this['_el']('sync-to-ibmi'),_0x1ce9aa=this['_el']('ibmi-sync-library-row'),_0x2591f9=this['_el']('ibmi-sync-library');if(_0x42260d)_0x42260d['checked']=![];if(_0x1ce9aa)_0x1ce9aa['hidden']=!![];if(_0x2591f9)_0x2591f9['value']='';}const _0x269ab8=this['_el']('confirm-approve');_0x157761['syncFirst']&&this['onSync']?(_0x269ab8&&(_0x269ab8['disabled']=!![],_0x269ab8['textContent']='Syncing...'),this['_performSync']()):_0x269ab8&&(_0x269ab8['disabled']=![],_0x269ab8['textContent']='Commit\x20Changes');_0x5d0f35['hidden']=![];const _0x1c3d62=++this['_attributionRequestId'];void this['_applyAttributionAsync']({'requestId':_0x1c3d62,'taskId':_0x157761['taskId'],'originalCommitMessage':_0x4185bd}),setTimeout(()=>{_0x5ebac2['focus'](),_0x5ebac2['setSelectionRange'](0x0,_0x5ebac2['value']['length']);},0x64);}['updatePRSupport'](_0x26ad64){const _0x2473c7=this['_el']('pr-option-section'),_0x537cd4=this['_el']('create-pull-request'),_0x4f7d42=this['_el']('pr-hint'),_0x23f477=this['_el']('push-after-commit'),_0x327c3d=this['_el']('create-new-branch');if(!_0x2473c7)return;if(_0x26ad64){_0x2473c7['hidden']=![];_0x537cd4&&!_0x537cd4['disabled']&&(_0x537cd4['checked']=![]);if(_0x4f7d42)_0x4f7d42['hidden']=!![];this['_createPR']=![];return;}_0x537cd4?.['checked']&&(_0x537cd4['checked']=![]);if(_0x4f7d42)_0x4f7d42['hidden']=!![];if(_0x23f477)_0x23f477['disabled']=![];if(_0x327c3d)_0x327c3d['disabled']=![];this['_createPR']=![],_0x2473c7['hidden']=!![];}async['_applyAttributionAsync']({requestId:_0x2e2dd7,taskId:_0x5b26d7,originalCommitMessage:_0x20b84d}){const _0x421c7=this['_el']('commit-message-input');if(!_0x421c7)return;const _0x2aaafa=await this['_addAttributionIfEnabled'](_0x20b84d);if(_0x2e2dd7!==this['_attributionRequestId'])return;if(!this['taskData']||this['taskData']['taskId']!==_0x5b26d7)return;if(!this['isVisible']())return;const _0x49aed4=_0x4bbda6=>_0x4bbda6['replace'](/\r\n/g,'\x0a')['replace'](/\r/g,'\x0a');if(_0x49aed4(_0x421c7['value'])!==_0x49aed4(_0x20b84d))return;_0x421c7['value']=_0x2aaafa;}['_updateDisplay'](_0x5ac86e,_0x19c38e){const _0x17b977=this['_el']('approve-repo-name'),_0x211c79=this['_el']('approve-stats'),_0x1e41e1=this['_el']('multi-repo-note');if(_0x5ac86e['length']===0x0){if(_0x17b977)_0x17b977['textContent']='Syncing...';if(_0x211c79)_0x211c79['textContent']='';if(_0x1e41e1)_0x1e41e1['hidden']=!![];return;}const _0x597522=_0x5ac86e['reduce']((_0x24d2ea,_0x43f118)=>_0x24d2ea+(_0x43f118['files_changed']||0x0),0x0),_0x34d127=_0x5ac86e['reduce']((_0x22139f,_0x2197c6)=>_0x22139f+(_0x2197c6['lines_added']||0x0),0x0),_0x508931=_0x5ac86e['reduce']((_0x477e6d,_0x510777)=>_0x477e6d+(_0x510777['lines_deleted']||0x0),0x0);if(_0x5ac86e['length']===0x1){if(_0x17b977)_0x17b977['textContent']=_0x5ac86e[0x0]?.['name']||'repository';if(_0x1e41e1)_0x1e41e1['hidden']=!![];}else{const _0x1ccf04=_0x5ac86e['map'](_0x285f99=>_0x285f99['name'])['join'](',\x20');if(_0x17b977)_0x17b977['textContent']=_0x5ac86e['length']+'\x20repositories:\x20'+_0x1ccf04;if(_0x1e41e1)_0x1e41e1['hidden']=![];}_0x211c79&&(_0x211c79['textContent']=_0x597522+'\x20file'+(_0x597522===0x1?'':'s')+'\x20changed\x20(+'+_0x34d127+'\x20-'+_0x508931+')'),this['_displayBranchInfo'](_0x5ac86e,_0x19c38e?.['branches']||{});}async['_performSync'](){if(!this['onSync']||this['isSyncing'])return;this['isSyncing']=!![];const _0xe853aa=this['_el']('confirm-approve');try{const _0x268134=await this['onSync'](this['taskData']['taskId']);if(!this['isVisible']()){this['isSyncing']=![];return;}if(_0x268134['repos_changed']){const _0xb50740=this['taskData']['reposChanged']?.['length']||0x0,_0x5a1f9e=this['taskData']['reposChanged']?.['reduce']((_0x365e0a,_0x2eb8ac)=>_0x365e0a+(_0x2eb8ac['files_changed']||0x0),0x0)||0x0;this['taskData']['reposChanged']=_0x268134['repos_changed'],this['_updateDisplay'](_0x268134['repos_changed'],this['taskData']);const _0x15f2d4=_0x268134['repos_changed']['length'],_0x3af471=_0x268134['repos_changed']['reduce']((_0x38b23c,_0x40664)=>_0x38b23c+(_0x40664['files_changed']||0x0),0x0);(_0x3af471>_0x5a1f9e||_0x15f2d4>_0xb50740)&&this['showWarning'](this['taskData']['warning']?this['taskData']['warning']+'\x20Additional\x20changes\x20detected\x20since\x20last\x20sync.':'Additional\x20changes\x20detected\x20since\x20last\x20sync.\x20Review\x20the\x20updated\x20file\x20list.');}_0xe853aa&&(!this['taskData']['reposChanged']||this['taskData']['reposChanged']['length']===0x0?(_0xe853aa['disabled']=!![],_0xe853aa['textContent']='No\x20Changes',this['showError']('No\x20changes\x20to\x20approve\x20after\x20sync')):(_0xe853aa['disabled']=![],_0xe853aa['textContent']='Commit\x20Changes'));}catch(_0x864963){console['error']('Failed\x20to\x20sync\x20repos\x20before\x20approve:',_0x864963);if(!this['isVisible']()){this['isSyncing']=![];return;}this['showError']('Sync\x20failed:\x20'+_0x864963['message']+'.\x20You\x20can\x20still\x20commit\x20with\x20existing\x20staged\x20changes.'),_0xe853aa&&(this['taskData']['reposChanged']&&this['taskData']['reposChanged']['length']>0x0?(_0xe853aa['disabled']=![],_0xe853aa['textContent']='Commit\x20Changes'):(_0xe853aa['disabled']=!![],_0xe853aa['textContent']='No\x20Changes'));}finally{this['isSyncing']=![];}}['hide'](){const _0x283ad1=this['_el']('approve-modal');_0x283ad1&&(_0x283ad1['hidden']=!![]);}async['_handleApprove'](){const _0x233076=this['_el']('commit-message-input'),_0x17c894=this['_el']('pull-before-commit'),_0x376dab=this['_el']('push-after-commit'),_0x230e72=this['_el']('create-new-branch'),_0xa99bee=this['_el']('new-branch-name'),_0x304749=this['_el']('confirm-approve'),_0x74596f=_0x233076['value']['trim'](),_0x3f6820=_0x17c894?.['checked']??!![],_0x3d3e29=_0x376dab?.['checked']??!![],_0x5e74d1=_0x230e72?.['checked']||![],_0x3e23bf=_0xa99bee?.['value']['trim']()||'';this['hideError']();if(!_0x74596f){this['showError']('Commit\x20message\x20is\x20required'),_0x233076['focus']();return;}if(_0x5e74d1&&!_0x3e23bf){this['showError']('Branch\x20name\x20is\x20required\x20when\x20creating\x20a\x20new\x20branch'),_0xa99bee?.['focus']();return;}if(_0x5e74d1&&_0x3e23bf){const _0x31eae0=/[\s~^:?*\[\\]/;if(_0x31eae0['test'](_0x3e23bf)){this['showError']('Invalid\x20branch\x20name.\x20Avoid\x20spaces\x20and\x20special\x20characters\x20like\x20~\x20^\x20:\x20?\x20*\x20[\x20\x5c'),_0xa99bee?.['focus']();return;}}const _0x5b0070=this['_el']('sync-to-ibmi')?.['checked'];if(_0x5b0070){const _0x255568=this['_el']('ibmi-sync-library')?.['value']?.['trim']();if(!_0x255568){this['showError']('IBM\x20i\x20library\x20name\x20is\x20required\x20for\x20sync'),this['_el']('ibmi-sync-library')?.['focus']();return;}}const _0x2c4c90=_0x304749?.['textContent']||'Commit\x20Changes';_0x304749&&(_0x304749['disabled']=!![],_0x5e74d1?_0x304749['textContent']='Creating\x20branch\x20&\x20committing...':_0x304749['textContent']=_0x3f6820?'Pulling\x20&\x20Committing...':'Committing...');try{const _0x5e69a5={'commit_message':_0x74596f,'pull':_0x3f6820,'push':_0x3d3e29};_0x5e74d1&&_0x3e23bf&&(_0x5e69a5['new_branch']=_0x3e23bf);let _0x4ed6c1=null;this['onApprove']&&(_0x4ed6c1=await this['onApprove'](this['taskData']['taskId'],_0x5e69a5));let _0x18cb94='Changes\x20committed';if(_0x5e74d1)_0x18cb94='Changes\x20committed\x20to\x20new\x20branch\x20\x27'+_0x3e23bf+'\x27',_0x3d3e29&&(_0x18cb94+='\x20and\x20pushed');else{if(_0x3f6820&&_0x3d3e29)_0x18cb94='Changes\x20pulled,\x20committed,\x20and\x20pushed';else{if(_0x3f6820)_0x18cb94='Changes\x20pulled\x20and\x20committed';else _0x3d3e29&&(_0x18cb94='Changes\x20committed\x20and\x20pushed');}}this['showToast'](_0x18cb94,'success'),this['hide']();this['_createPR']&&this['onCreatePR']&&this['onCreatePR'](this['taskData']['taskId'],_0x4ed6c1||{});const _0x54ea3=this['_el']('sync-to-ibmi')?.['checked'];if(_0x54ea3&&this['onSyncToIbmi']){const _0x524b13=this['_el']('ibmi-sync-library')?.['value']?.['trim']()?.['toUpperCase']();if(_0x524b13){localStorage['setItem']('coderflow_ibmi_sync_library',_0x524b13);try{await this['onSyncToIbmi'](this['taskData']['taskId'],_0x524b13);}catch(_0x2b0a12){this['showToast']('Sync\x20failed:\x20'+_0x2b0a12['message'],'error');}}}this['onSuccess']&&this['onSuccess'](this['taskData']);}catch(_0x15417e){console['error']('Failed\x20to\x20approve\x20changes',_0x15417e),this['showError']('Failed\x20to\x20commit:\x20'+_0x15417e['message']),_0x304749&&(_0x304749['disabled']=![],_0x304749['textContent']=_0x2c4c90),this['onError']&&this['onError'](_0x15417e);}}['isVisible'](){const _0x3c2498=this['_el']('approve-modal');return _0x3c2498&&!_0x3c2498['hidden'];}['destroy'](){const _0x11aed4=this['_el']('approve-modal');_0x11aed4&&_0x11aed4['remove'](),this['initialized']=![];}}export function getApproveState(_0x56dd72,_0x581062){if(!_0x56dd72)return{'canApprove':![],'reason':'No\x20task\x20data'};if(isLogOnlyTaskType(_0x56dd72['taskType']))return{'canApprove':![],'reason':(_0x56dd72['taskType']==='test'?'Test':'Deploy')+'\x20tasks\x20cannot\x20be\x20approved'};const _0xcc7e1f=_0x581062?.['repos_changed']?.['length']>0x0,_0x2ef9a4=_0x56dd72['status']==='completed'||_0x56dd72['status']==='failed'||_0x56dd72['status']==='interrupted',_0x3e0379=_0x56dd72['containerState']==='running',_0x2c83e1=_0x56dd72['approvedBy']!==undefined&&_0x56dd72['approvedBy']!==null;if(_0x2c83e1){const _0x229b76=_0x56dd72['approvedBy']['name']||_0x56dd72['approvedBy']['username']||'user';return{'canApprove':![],'reason':'Already\x20approved\x20by\x20'+_0x229b76};}if(!_0xcc7e1f)return{'canApprove':![],'reason':'No\x20changes\x20to\x20approve'};if(!_0x2ef9a4)return{'canApprove':![],'reason':'Task\x20must\x20complete\x20first'};if(!_0x56dd72['containerId'])return{'canApprove':![],'reason':'Container\x20no\x20longer\x20available'};if(!_0x3e0379)return{'canApprove':![],'reason':'Container\x20is\x20not\x20running'};return{'canApprove':!![],'reason':'Ready\x20to\x20approve'};}
@@ -1 +1 @@
1
- function _0x320f(_0x584920,_0x1f51ac){_0x584920=_0x584920-0xdb;const _0x34149a=_0x3414();let _0x320f60=_0x34149a[_0x584920];if(_0x320f['iIruhg']===undefined){var _0x13ef9b=function(_0x5caf59){const _0x55e793='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1e7d3d='',_0x49b821='';for(let _0x17f0a9=0x0,_0x34892f,_0x5d0e3a,_0x36f7f5=0x0;_0x5d0e3a=_0x5caf59['charAt'](_0x36f7f5++);~_0x5d0e3a&&(_0x34892f=_0x17f0a9%0x4?_0x34892f*0x40+_0x5d0e3a:_0x5d0e3a,_0x17f0a9++%0x4)?_0x1e7d3d+=String['fromCharCode'](0xff&_0x34892f>>(-0x2*_0x17f0a9&0x6)):0x0){_0x5d0e3a=_0x55e793['indexOf'](_0x5d0e3a);}for(let _0x1226a9=0x0,_0x1a3fab=_0x1e7d3d['length'];_0x1226a9<_0x1a3fab;_0x1226a9++){_0x49b821+='%'+('00'+_0x1e7d3d['charCodeAt'](_0x1226a9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x49b821);};_0x320f['HLcCKm']=_0x13ef9b,_0x320f['sVflHF']={},_0x320f['iIruhg']=!![];}const _0x559bc0=_0x34149a[0x0],_0x400c0a=_0x584920+_0x559bc0,_0x5c44cf=_0x320f['sVflHF'][_0x400c0a];return!_0x5c44cf?(_0x320f60=_0x320f['HLcCKm'](_0x320f60),_0x320f['sVflHF'][_0x400c0a]=_0x320f60):_0x320f60=_0x5c44cf,_0x320f60;}(function(_0x2a9dde,_0x45397f){const _0x36c0c7=_0x320f,_0x2cafe3=_0x2a9dde();while(!![]){try{const _0x2c476e=parseInt(_0x36c0c7(0xe1))/0x1*(-parseInt(_0x36c0c7(0xe5))/0x2)+-parseInt(_0x36c0c7(0xdc))/0x3*(parseInt(_0x36c0c7(0xdd))/0x4)+-parseInt(_0x36c0c7(0xe4))/0x5+parseInt(_0x36c0c7(0xeb))/0x6*(-parseInt(_0x36c0c7(0xdf))/0x7)+parseInt(_0x36c0c7(0xdb))/0x8+parseInt(_0x36c0c7(0xe6))/0x9+-parseInt(_0x36c0c7(0xe9))/0xa*(-parseInt(_0x36c0c7(0xe2))/0xb);if(_0x2c476e===_0x45397f)break;else _0x2cafe3['push'](_0x2cafe3['shift']());}catch(_0x43bdfd){_0x2cafe3['push'](_0x2cafe3['shift']());}}}(_0x3414,0x716a8));function _0x3414(){const _0x11abbc=['ndC2mZDLwg9RBwW','mJeYvNzkwNfN','zw52','mtm4mtfIuwTxr2u','Aw5KzxGUAhrTBa','mtnWy0PJtKq','mJj4Durcy3q','yxv0B21HDgLVBG','mZe1ndm2nufeBuHTsa','nJiZoePoyvzssa','mZK4otCXohDUChLjrG','zw52AxjVBM1LBNrZlMH0BwW','Dg9tDhjPBMC','ntu1ndy2meHbqu9cBW','z2v0','mtaZoefhqMnUCq','C2v0','DgfI','yxv0B21HDgLVBNm','nJeXnZiZmMfHC2Hnwq'];_0x3414=function(){return _0x11abbc;};return _0x3414();}export function buildAutomationEnvironmentHref(_0x1e7d3d,_0x49b821){const _0x3e9625=_0x320f,_0x17f0a9=new URLSearchParams();_0x1e7d3d&&_0x17f0a9['set'](_0x3e9625(0xde),String(_0x1e7d3d));_0x17f0a9['set'](_0x3e9625(0xed),_0x3e9625(0xee));_0x49b821&&_0x17f0a9[_0x3e9625(0xec)](_0x3e9625(0xe3),String(_0x49b821));const _0x34892f=_0x17f0a9[_0x3e9625(0xe8)]();return _0x3e9625(0xe7)+(_0x34892f?'?'+_0x34892f:'');}export function buildAutomationTaskFilterHref(_0x5d0e3a){const _0x46c35d=_0x320f,_0x36f7f5=new URLSearchParams();_0x5d0e3a&&_0x36f7f5[_0x46c35d(0xec)](_0x46c35d(0xe3),String(_0x5d0e3a));const _0x1226a9=_0x36f7f5[_0x46c35d(0xe8)]();return _0x46c35d(0xe0)+(_0x1226a9?'?'+_0x1226a9:'');}export function parseAutomationDeepLinkParams(_0x1a3fab=''){const _0x22cc82=_0x320f,_0x1b0029=new URLSearchParams(_0x1a3fab||'');return{'env':_0x1b0029['get'](_0x22cc82(0xde)),'tab':_0x1b0029[_0x22cc82(0xea)](_0x22cc82(0xed)),'automation':_0x1b0029['get'](_0x22cc82(0xe3))};}
1
+ export function buildAutomationEnvironmentHref(_0x579946,_0x11f339){const _0x9ca4e8=new URLSearchParams();_0x579946&&_0x9ca4e8['set']('env',String(_0x579946));_0x9ca4e8['set']('tab','automations');_0x11f339&&_0x9ca4e8['set']('automation',String(_0x11f339));const _0x3b7dc9=_0x9ca4e8['toString']();return'environments.html'+(_0x3b7dc9?'?'+_0x3b7dc9:'');}export function buildAutomationTaskFilterHref(_0x17b104){const _0x381a1b=new URLSearchParams();_0x17b104&&_0x381a1b['set']('automation',String(_0x17b104));const _0x33b6eb=_0x381a1b['toString']();return'index.html'+(_0x33b6eb?'?'+_0x33b6eb:'');}export function parseAutomationDeepLinkParams(_0x42b999=''){const _0x1e6ab5=new URLSearchParams(_0x42b999||'');return{'env':_0x1e6ab5['get']('env'),'tab':_0x1e6ab5['get']('tab'),'automation':_0x1e6ab5['get']('automation')};}
@@ -1 +1 @@
1
- (function(_0x2e1e26,_0x357ab3){const _0x3a1ec8=_0x5456,_0xf1d6cc=_0x2e1e26();while(!![]){try{const _0x3cca6e=parseInt(_0x3a1ec8(0x146))/0x1+parseInt(_0x3a1ec8(0x138))/0x2*(-parseInt(_0x3a1ec8(0x13c))/0x3)+-parseInt(_0x3a1ec8(0x150))/0x4*(parseInt(_0x3a1ec8(0x13a))/0x5)+-parseInt(_0x3a1ec8(0x133))/0x6*(parseInt(_0x3a1ec8(0x158))/0x7)+-parseInt(_0x3a1ec8(0x155))/0x8*(parseInt(_0x3a1ec8(0x145))/0x9)+-parseInt(_0x3a1ec8(0x14d))/0xa*(parseInt(_0x3a1ec8(0x152))/0xb)+parseInt(_0x3a1ec8(0x134))/0xc*(parseInt(_0x3a1ec8(0x135))/0xd);if(_0x3cca6e===_0x357ab3)break;else _0xf1d6cc['push'](_0xf1d6cc['shift']());}catch(_0x74a0b8){_0xf1d6cc['push'](_0xf1d6cc['shift']());}}}(_0x198a,0xe3730));export const AUTOMATION_MONTHLY_DAY_MIN=0x1;export const AUTOMATION_MONTHLY_DAY_MAX=0x1c;const DEFAULT_SCHEDULE_FORM_STATE=Object['freeze']({'frequency':'daily','dailyHour':'2','dailyMinute':'0','weeklyDay':'1','weeklyHour':'9','weeklyMinute':'0','monthlyDay':'1','monthlyHour':'0','monthlyMinute':'0','recurringInterval':'*/30\x20*\x20*\x20*\x20*','recurringStartHour':'','recurringEndHour':'','recurringDayToken':'*','customCron':''}),RECURRING_INTERVAL_STEPS=['2','4','6','8','12'];function createDefaultScheduleFormState(){return{...DEFAULT_SCHEDULE_FORM_STATE};}function _0x5456(_0x174211,_0x3f8647){_0x174211=_0x174211-0x12f;const _0x198ac0=_0x198a();let _0x545666=_0x198ac0[_0x174211];if(_0x5456['lCPdGk']===undefined){var _0x326e9d=function(_0x29c21f){const _0x2a07c3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5d1d97='',_0x1ad2d1='';for(let _0x2eed2b=0x0,_0xb1b05c,_0x839e2b,_0x2c1774=0x0;_0x839e2b=_0x29c21f['charAt'](_0x2c1774++);~_0x839e2b&&(_0xb1b05c=_0x2eed2b%0x4?_0xb1b05c*0x40+_0x839e2b:_0x839e2b,_0x2eed2b++%0x4)?_0x5d1d97+=String['fromCharCode'](0xff&_0xb1b05c>>(-0x2*_0x2eed2b&0x6)):0x0){_0x839e2b=_0x2a07c3['indexOf'](_0x839e2b);}for(let _0x4b663b=0x0,_0x36417a=_0x5d1d97['length'];_0x4b663b<_0x36417a;_0x4b663b++){_0x1ad2d1+='%'+('00'+_0x5d1d97['charCodeAt'](_0x4b663b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1ad2d1);};_0x5456['aeAPzG']=_0x326e9d,_0x5456['gilbkb']={},_0x5456['lCPdGk']=!![];}const _0x483d5f=_0x198ac0[0x0],_0x5e003a=_0x174211+_0x483d5f,_0x5ad263=_0x5456['gilbkb'][_0x5e003a];return!_0x5ad263?(_0x545666=_0x5456['aeAPzG'](_0x545666),_0x5456['gilbkb'][_0x5e003a]=_0x545666):_0x545666=_0x5ad263,_0x545666;}function _0x198a(){const _0x52ec69=['icOGkIa','y3vZDg9Tq3jVBG','D2vLA2X5twLUDxrL','C3rHCNq','kI8Zma','mZi1odmWCM1JC1HT','otq4t3LPwe9M','odK2nJiZAufbALf2','Bwf0y2G','CMvJDxjYAw5Nrgf5vg9Rzw4','mZC2s2ThzMLU','DhjPBq','odi4ntbVwhDLBxO','CMvJDxjYAw5N','mtm1nJnvzhHyt0G','C3rHCNrZv2L0Aa','AxnjBNrLz2vY','icOGkIaQ','C3bSAxq','zgfPBhLiB3vY','zgfPBhK','kI8Xnq','D2vLA2X5rgf5','mZmXodq4yK9uD2Tc','mtmWotCXoePouKzlCq','D2vLA2X5','Bw9UDgHSEq','zNjLCxvLBMn5','CgfYC2vjBNq','mcaQlW','mcaQicOGkIaQ','mtm2mtqYodbHqMHYC2W','kI8XnsaQicOGkIaQ','DgvZDa','mJG0rMvIvgHd','Aw5JBhvKzxm','mtfru29bwNq','y3vZDg9T','Bw9UDgHSEu1PBNv0zq','mZC2wvPUrg1b','D2vLA2X5sg91CG','Bw9UDgHSEuHVDxi','otfmCwLpCLe','kI8ZmcaQicOGkIaQ','zw5K','CMvJDxjYAw5Nrw5Ksg91CG','icOGkG','zgfPBhLnAw51Dgu','CMvJDxjYAw5Nu3rHCNriB3vY','CMvJDxjYAw5Nsw50zxj2ywW','Bw9UDgHSEurHEq'];_0x198a=function(){return _0x52ec69;};return _0x198a();}function parseBoundedInteger(_0x5d1d97,_0x1ad2d1,_0x2eed2b){const _0xb1b05c=Number['parseInt'](_0x5d1d97,0xa);if(!Number['isInteger'](_0xb1b05c)||_0xb1b05c<_0x1ad2d1||_0xb1b05c>_0x2eed2b)return null;return _0xb1b05c;}function inferRecurringInterval(_0x839e2b,_0x2c1774){const _0x1e0f4d=_0x5456;if(_0x839e2b===_0x1e0f4d(0x143))return _0x1e0f4d(0x14e);if(_0x839e2b===_0x1e0f4d(0x132))return _0x1e0f4d(0x159);if(_0x839e2b!=='0')return _0x1e0f4d(0x159);if(_0x2c1774==='*'||/^\d{1,2}-\d{1,2}$/[_0x1e0f4d(0x14f)](_0x2c1774))return _0x1e0f4d(0x14c);for(const _0x4b663b of RECURRING_INTERVAL_STEPS){if(_0x2c1774[_0x1e0f4d(0x13d)]('*/'+_0x4b663b)||_0x2c1774[_0x1e0f4d(0x151)]('/'+_0x4b663b))return _0x1e0f4d(0x14b)+_0x4b663b+_0x1e0f4d(0x13f);}return _0x1e0f4d(0x159);}function parseRecurringHourRange(_0x36417a){const _0x45a248=_0x5456,_0x268964=String(_0x36417a||'')['trim']()[_0x45a248(0x136)](/^(\d{1,2})-(\d{1,2})(?:\/\d+)?$/);if(!_0x268964)return{'start':'','end':''};const _0x516873=parseBoundedInteger(_0x268964[0x1],0x0,0x17),_0x4c8fd3=parseBoundedInteger(_0x268964[0x2],0x0,0x17);if(_0x516873===null||_0x4c8fd3===null||_0x516873>_0x4c8fd3)return{'start':'','end':''};return{'start':String(_0x516873),'end':String(_0x4c8fd3)};}export function parseAutomationScheduleToFormState(_0x46659e){const _0x155b28=_0x5456,_0x3fdf88=String(_0x46659e||'')[_0x155b28(0x139)](),_0x179773=createDefaultScheduleFormState(),_0x37bfae=_0x3fdf88[_0x155b28(0x136)](/^(\d{1,2}) (\d{1,2}) \* \* \*$/);if(_0x37bfae){const _0x29b9af=parseBoundedInteger(_0x37bfae[0x1],0x0,0x3b),_0x63b679=parseBoundedInteger(_0x37bfae[0x2],0x0,0x17);if(_0x29b9af!==null&&_0x63b679!==null)return _0x179773[_0x155b28(0x149)]=_0x155b28(0x142),_0x179773[_0x155b28(0x15d)]=String(_0x29b9af),_0x179773[_0x155b28(0x141)]=String(_0x63b679),_0x179773;}const _0x54ce8a=_0x3fdf88[_0x155b28(0x136)](/^(\d{1,2}) (\d{1,2}) \* \* ([0-7])$/);if(_0x54ce8a){const _0x4bef5c=parseBoundedInteger(_0x54ce8a[0x1],0x0,0x3b),_0xd991b=parseBoundedInteger(_0x54ce8a[0x2],0x0,0x17),_0x354ff9=parseBoundedInteger(_0x54ce8a[0x3],0x0,0x7);if(_0x4bef5c!==null&&_0xd991b!==null&&_0x354ff9!==null)return _0x179773[_0x155b28(0x149)]=_0x155b28(0x147),_0x179773[_0x155b28(0x130)]=String(_0x4bef5c),_0x179773['weeklyHour']=String(_0xd991b),_0x179773[_0x155b28(0x144)]=String(_0x354ff9===0x7?0x0:_0x354ff9),_0x179773;}const _0x1d7060=_0x3fdf88[_0x155b28(0x136)](/^(\d{1,2}) (\d{1,2}) (\d{1,2}) \* \*$/);if(_0x1d7060){const _0xcf4046=parseBoundedInteger(_0x1d7060[0x1],0x0,0x3b),_0x251a7c=parseBoundedInteger(_0x1d7060[0x2],0x0,0x17),_0x10e231=parseBoundedInteger(_0x1d7060[0x3],AUTOMATION_MONTHLY_DAY_MIN,AUTOMATION_MONTHLY_DAY_MAX);if(_0xcf4046!==null&&_0x251a7c!==null&&_0x10e231!==null)return _0x179773[_0x155b28(0x149)]=_0x155b28(0x148),_0x179773[_0x155b28(0x154)]=String(_0xcf4046),_0x179773[_0x155b28(0x157)]=String(_0x251a7c),_0x179773[_0x155b28(0x160)]=String(_0x10e231),_0x179773;}const _0x5a98e6=_0x3fdf88['match'](/^(\*\/15|\*\/30|0) ([^\s]+) \* \* ([^\s]+)$/);if(_0x5a98e6){const [,_0x51caac,_0x478585,_0x7fb5d2]=_0x5a98e6;_0x179773['frequency']=_0x155b28(0x13b),_0x179773['recurringInterval']=inferRecurringInterval(_0x51caac,_0x478585),_0x179773[_0x155b28(0x137)]=String(_0x7fb5d2||'')[_0x155b28(0x139)]()||'*';const _0x1858c8=parseRecurringHourRange(_0x478585);return _0x179773[_0x155b28(0x15e)]=_0x1858c8[_0x155b28(0x131)],_0x179773[_0x155b28(0x15b)]=_0x1858c8[_0x155b28(0x15a)],_0x179773;}return _0x179773[_0x155b28(0x149)]=_0x155b28(0x153),_0x179773[_0x155b28(0x12f)]=_0x3fdf88,_0x179773;}export function buildAutomationCronFromFormState(_0x124225={}){const _0x38650f=_0x5456,_0x383eb3=String(_0x124225['frequency']||_0x38650f(0x142));if(_0x383eb3===_0x38650f(0x153))return String(_0x124225['customCron']||'')[_0x38650f(0x139)]();if(_0x383eb3==='daily'){const _0x16e8b3=String(_0x124225['dailyHour']??'2'),_0x1d4143=String(_0x124225[_0x38650f(0x15d)]??'0');return _0x1d4143+'\x20'+_0x16e8b3+_0x38650f(0x13f);}if(_0x383eb3==='weekly'){const _0x470c39=String(_0x124225[_0x38650f(0x144)]??'1'),_0x1a43c2=String(_0x124225[_0x38650f(0x156)]??'9'),_0x3602bf=String(_0x124225[_0x38650f(0x130)]??'0');return _0x3602bf+'\x20'+_0x1a43c2+_0x38650f(0x161)+_0x470c39;}if(_0x383eb3===_0x38650f(0x148)){const _0x414b3a=String(_0x124225['monthlyDay']??'1'),_0x565bcc=String(_0x124225[_0x38650f(0x157)]??'0'),_0x3dfb5c=String(_0x124225[_0x38650f(0x154)]??'0');return _0x3dfb5c+'\x20'+_0x565bcc+'\x20'+_0x414b3a+_0x38650f(0x15c);}const _0x1a5234=String(_0x124225[_0x38650f(0x15f)]||_0x38650f(0x159))[_0x38650f(0x139)](),[_0x6e13ad=_0x38650f(0x132),_0x60790e='*']=_0x1a5234[_0x38650f(0x140)](/\s+/);let _0x2cb45d=_0x60790e;const _0x282f9c=String(_0x124225[_0x38650f(0x15e)]??'')[_0x38650f(0x139)](),_0x4e852f=String(_0x124225[_0x38650f(0x15b)]??'')['trim']();if(_0x282f9c!==''&&_0x4e852f!==''){const _0x5ce6c1=Number['parseInt'](_0x282f9c,0xa),_0x327fd7=Number[_0x38650f(0x14a)](_0x4e852f,0xa);if(Number[_0x38650f(0x13e)](_0x5ce6c1)&&Number[_0x38650f(0x13e)](_0x327fd7)&&_0x5ce6c1<=_0x327fd7){const _0x329711=_0x60790e[_0x38650f(0x136)](/^\*\/(\d+)$/);_0x329711?_0x2cb45d=_0x5ce6c1+'-'+_0x327fd7+'/'+_0x329711[0x1]:_0x2cb45d=_0x5ce6c1+'-'+_0x327fd7;}}const _0x22e999=String(_0x124225[_0x38650f(0x137)]??'*')[_0x38650f(0x139)]()||'*';return _0x6e13ad+'\x20'+_0x2cb45d+_0x38650f(0x161)+_0x22e999;}
1
+ export const AUTOMATION_MONTHLY_DAY_MIN=0x1;export const AUTOMATION_MONTHLY_DAY_MAX=0x1c;const DEFAULT_SCHEDULE_FORM_STATE=Object['freeze']({'frequency':'daily','dailyHour':'2','dailyMinute':'0','weeklyDay':'1','weeklyHour':'9','weeklyMinute':'0','monthlyDay':'1','monthlyHour':'0','monthlyMinute':'0','recurringInterval':'*/30\x20*\x20*\x20*\x20*','recurringStartHour':'','recurringEndHour':'','recurringDayToken':'*','customCron':''}),RECURRING_INTERVAL_STEPS=['2','4','6','8','12'];function createDefaultScheduleFormState(){return{...DEFAULT_SCHEDULE_FORM_STATE};}function parseBoundedInteger(_0x50bbb0,_0x3822a8,_0x459dc4){const _0x34f820=Number['parseInt'](_0x50bbb0,0xa);if(!Number['isInteger'](_0x34f820)||_0x34f820<_0x3822a8||_0x34f820>_0x459dc4)return null;return _0x34f820;}function inferRecurringInterval(_0x3e268d,_0x574080){if(_0x3e268d==='*/15')return'*/15\x20*\x20*\x20*\x20*';if(_0x3e268d==='*/30')return'*/30\x20*\x20*\x20*\x20*';if(_0x3e268d!=='0')return'*/30\x20*\x20*\x20*\x20*';if(_0x574080==='*'||/^\d{1,2}-\d{1,2}$/['test'](_0x574080))return'0\x20*\x20*\x20*\x20*';for(const _0x5a81b7 of RECURRING_INTERVAL_STEPS){if(_0x574080['startsWith']('*/'+_0x5a81b7)||_0x574080['includes']('/'+_0x5a81b7))return'0\x20*/'+_0x5a81b7+'\x20*\x20*\x20*';}return'*/30\x20*\x20*\x20*\x20*';}function parseRecurringHourRange(_0x3dc4b3){const _0x5d56f5=String(_0x3dc4b3||'')['trim']()['match'](/^(\d{1,2})-(\d{1,2})(?:\/\d+)?$/);if(!_0x5d56f5)return{'start':'','end':''};const _0x121737=parseBoundedInteger(_0x5d56f5[0x1],0x0,0x17),_0x99c7d5=parseBoundedInteger(_0x5d56f5[0x2],0x0,0x17);if(_0x121737===null||_0x99c7d5===null||_0x121737>_0x99c7d5)return{'start':'','end':''};return{'start':String(_0x121737),'end':String(_0x99c7d5)};}export function parseAutomationScheduleToFormState(_0x246393){const _0x5ef71f=String(_0x246393||'')['trim'](),_0x69652=createDefaultScheduleFormState(),_0x2c612c=_0x5ef71f['match'](/^(\d{1,2}) (\d{1,2}) \* \* \*$/);if(_0x2c612c){const _0x39079c=parseBoundedInteger(_0x2c612c[0x1],0x0,0x3b),_0xb93d70=parseBoundedInteger(_0x2c612c[0x2],0x0,0x17);if(_0x39079c!==null&&_0xb93d70!==null)return _0x69652['frequency']='daily',_0x69652['dailyMinute']=String(_0x39079c),_0x69652['dailyHour']=String(_0xb93d70),_0x69652;}const _0x5df070=_0x5ef71f['match'](/^(\d{1,2}) (\d{1,2}) \* \* ([0-7])$/);if(_0x5df070){const _0x49dfa8=parseBoundedInteger(_0x5df070[0x1],0x0,0x3b),_0x44feb4=parseBoundedInteger(_0x5df070[0x2],0x0,0x17),_0x1c9e3f=parseBoundedInteger(_0x5df070[0x3],0x0,0x7);if(_0x49dfa8!==null&&_0x44feb4!==null&&_0x1c9e3f!==null)return _0x69652['frequency']='weekly',_0x69652['weeklyMinute']=String(_0x49dfa8),_0x69652['weeklyHour']=String(_0x44feb4),_0x69652['weeklyDay']=String(_0x1c9e3f===0x7?0x0:_0x1c9e3f),_0x69652;}const _0x3c9dca=_0x5ef71f['match'](/^(\d{1,2}) (\d{1,2}) (\d{1,2}) \* \*$/);if(_0x3c9dca){const _0x185b14=parseBoundedInteger(_0x3c9dca[0x1],0x0,0x3b),_0x637287=parseBoundedInteger(_0x3c9dca[0x2],0x0,0x17),_0x22c7e5=parseBoundedInteger(_0x3c9dca[0x3],AUTOMATION_MONTHLY_DAY_MIN,AUTOMATION_MONTHLY_DAY_MAX);if(_0x185b14!==null&&_0x637287!==null&&_0x22c7e5!==null)return _0x69652['frequency']='monthly',_0x69652['monthlyMinute']=String(_0x185b14),_0x69652['monthlyHour']=String(_0x637287),_0x69652['monthlyDay']=String(_0x22c7e5),_0x69652;}const _0x20daeb=_0x5ef71f['match'](/^(\*\/15|\*\/30|0) ([^\s]+) \* \* ([^\s]+)$/);if(_0x20daeb){const [,_0x4a8c76,_0x11efeb,_0x4d24b9]=_0x20daeb;_0x69652['frequency']='recurring',_0x69652['recurringInterval']=inferRecurringInterval(_0x4a8c76,_0x11efeb),_0x69652['recurringDayToken']=String(_0x4d24b9||'')['trim']()||'*';const _0x6ad967=parseRecurringHourRange(_0x11efeb);return _0x69652['recurringStartHour']=_0x6ad967['start'],_0x69652['recurringEndHour']=_0x6ad967['end'],_0x69652;}return _0x69652['frequency']='custom',_0x69652['customCron']=_0x5ef71f,_0x69652;}export function buildAutomationCronFromFormState(_0x420a2a={}){const _0x5316c5=String(_0x420a2a['frequency']||'daily');if(_0x5316c5==='custom')return String(_0x420a2a['customCron']||'')['trim']();if(_0x5316c5==='daily'){const _0x2d09e7=String(_0x420a2a['dailyHour']??'2'),_0x3d8eb0=String(_0x420a2a['dailyMinute']??'0');return _0x3d8eb0+'\x20'+_0x2d09e7+'\x20*\x20*\x20*';}if(_0x5316c5==='weekly'){const _0xce1887=String(_0x420a2a['weeklyDay']??'1'),_0x47b417=String(_0x420a2a['weeklyHour']??'9'),_0x2b6f63=String(_0x420a2a['weeklyMinute']??'0');return _0x2b6f63+'\x20'+_0x47b417+'\x20*\x20*\x20'+_0xce1887;}if(_0x5316c5==='monthly'){const _0x2af656=String(_0x420a2a['monthlyDay']??'1'),_0x1c9409=String(_0x420a2a['monthlyHour']??'0'),_0x556658=String(_0x420a2a['monthlyMinute']??'0');return _0x556658+'\x20'+_0x1c9409+'\x20'+_0x2af656+'\x20*\x20*';}const _0x1ba15b=String(_0x420a2a['recurringInterval']||'*/30\x20*\x20*\x20*\x20*')['trim'](),[_0x51602e='*/30',_0x543937='*']=_0x1ba15b['split'](/\s+/);let _0x3ea000=_0x543937;const _0x39347f=String(_0x420a2a['recurringStartHour']??'')['trim'](),_0x2fcec8=String(_0x420a2a['recurringEndHour']??'')['trim']();if(_0x39347f!==''&&_0x2fcec8!==''){const _0xc39c96=Number['parseInt'](_0x39347f,0xa),_0x27ef77=Number['parseInt'](_0x2fcec8,0xa);if(Number['isInteger'](_0xc39c96)&&Number['isInteger'](_0x27ef77)&&_0xc39c96<=_0x27ef77){const _0x183d17=_0x543937['match'](/^\*\/(\d+)$/);_0x183d17?_0x3ea000=_0xc39c96+'-'+_0x27ef77+'/'+_0x183d17[0x1]:_0x3ea000=_0xc39c96+'-'+_0x27ef77;}}const _0xfb9410=String(_0x420a2a['recurringDayToken']??'*')['trim']()||'*';return _0x51602e+'\x20'+_0x3ea000+'\x20*\x20*\x20'+_0xfb9410;}
@@ -1 +1 @@
1
- function _0x3c9c(){const _0x57647c=['ndvUzeD4A2S','ywn0AxzLrwXLBwvUDa','B3b0Aw9UCW','qwrKigeGy29TBwvUDc4UlG','nda4ndi2svbmufrK','AcbHz28','AxnfEhbHBMrLza','lMnVBw1LBNrZlxrVz2DSzs1IDg4','lMnVBw1LBNrZlwnHBMnLBc1IDg4','rMfPBgvKihrVigrLBgv0zsbJB21Tzw50oG','z2v0qvbj','C2v0vMfSDwu','x2f0DgfJAfrVq29UDgfPBMvY','rMfPBgvKihrVigXVywqGzxHPC3rPBMCGyxr0ywnOBwvUDhm6','DxbKyxrLq29TBwvUDa','i2nVBw1LBNrZlwnVDw50','C3vIBwL0qNrU','cIaGicaGidXKAxyGy2XHC3m9iMnVBw1LBNqTAgvHzgvYiJ4kicaGicaGica8zgL2ignSyxnZpsjJB21Tzw50lwf1DgHVCIi+cIaGicaGicaGica8C3bHBIbJBgfZCZ0Iy29TBwvUDc1HDxrOB3iTBMfTzsi+','C2TPCeHLywrLCG','BsbHz28','BgvUz3rO','z2v0vgfZA0f0DgfJAg1LBNrZ','A2v5zg93BG','CMvUzgvYq29TBwvUDhm','qvbj','BwfYA2vK','y29TBwvUDhnmAxn0v3jHChbLCG','y3jLyxrLq29TBwvUDevSzw1LBNq','y29TCgfJDa','zgvSzxrLq29TBwvUDa','DhjHBNnMB3jT','y3jLyxrLsw5WDxrtzwn0Aw9U','y2XLyxi','iJ4kicaGicaGicaGicaG','y2XHC3noyw1L','BMvHCMvZDa','nJG5nJm3nMv0wLrHsq','cIaGicaGidXIDxr0B24GDhLWzt0IyNv0Dg9UiIbJBgfZCZ0IyNrUlwDOB3n0igj0BI1ZBwfSBcbJB21Tzw50CY1Jyw5JzwWTyNrUiIbOAwrKzw4+q2fUy2vSpc9IDxr0B24+cIaGicaGidXIDxr0B24GDhLWzt0IyNv0Dg9UiIbJBgfZCZ0IyNrUlxbYAw1HCNKGyNrUlxnTywXSignVBw1LBNrZlxn1yM1PDc1IDg4IigrPC2fIBgvKpGOGicaGicaGidXZCgfUignSyxnZpsjIDg4TDgv4Dci+qwrKienVBw1LBNq8l3nWyw4+cIaGicaGicaGphnWyw4Gy2XHC3m9iMj0BI1SB2fKAw5NiIbOAwrKzw4+cIaGicaGicaGica8C3zNignSyxnZpsjZCgLUBMvYiIb2Awv3qM94psiWidaGmJqGmJqIihDPzhrOpsiXnciGAgvPz2H0psiXnci+cIaGicaGicaGicaGidXJAxjJBguGy3G9iJeYiIbJEt0ImtiIihi9iJeWiIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiZiIbZDhjVA2uTzgfZAgfYCMf5psiZms40idmXlJqIihn0CM9Rzs1SAw5Ly2fWpsjYB3vUzciVpGOGicaGicaGicaGpc9ZDMC+cIaGicaGicaGpc9ZCgfUpGOGicaGica8l2j1DhrVBJ4kicaGia','ANvZDcbUB3C','C29Tzq','y2XPy2S','y29UDgfPBMvY','DxnLCKLK','y3jLyxrLsgvHzgvY','zMLSDgvY','odbWEa','ywrK','cIaGicaGicaGpgGZignSyxnZpsjJB21Tzw50CY10AxrSzsi+cIaGicaGicaGica8C3zNihDPzhrOpsiXociGAgvPz2H0psiXociGDMLLD0jVEd0ImcaWidi0idi0iIbMAwXSpsjUB25LiIbZDhjVA2u9iMn1CNjLBNrdB2XVCIiGC3rYB2TLlxDPzhrOpsiYiIbZDhjVA2uTBgLUzwnHCd0ICM91BMqIihn0CM9Rzs1SAw5LAM9PBJ0ICM91BMqIpGOGicaGicaGicaGica8Cgf0AcbKpsjnmJeGmtvHmIaYidaGmcaXltiGmKG3Bc00idrwnweYidiGmcaWideGmI0YAde0ytiGmIaWidaGmsaYidj6iJ48l3bHDgG+cIaGicaGicaGica8l3n2zZ4kicaGicaGicaGienVBw1LBNrZidXZCgfUignSyxnZpsjJB21Tzw50CY1JB3vUDciGAwq9iMnVBw1LBNrZlwnVDw50iJ48l3nWyw4+cIaGicaGicaGpc9OmZ4kicaGicaG','CMvTB3zL','cIaGicaGicaGpgrPDIbJBgfZCZ0Iy29TBwvUDhmTzxjYB3iIpGOGicaGicaGicaGrMfPBgvKihrVigXVywqGy29TBwvUDhmkicaGicaGicaGidXIDxr0B24GDhLWzt0IyNv0Dg9UiIbJBgfZCZ0IyNrUlwDOB3n0igj0BI1ZBwfSBciGB25JBgLJAZ0IDgHPCY5WyxjLBNrfBgvTzw50lNbHCMvUDevSzw1LBNqUy2XVC2vZDcGNlMnVBw1LBNrZlxDPzgDLDcCPlL9FD2LKz2v0lMXVywrdB21Tzw50CYGPiJ5szxrYEtWVyNv0Dg9UpGOGicaGicaGidWVzgL2pGOGicaGica','y29TBwvUDhnmAxn0','Bg9Hzev4Axn0Aw5Nqxr0ywnOBwvUDhm','AxnmB2fKAw5N','y29TBwvUDhmTDg9VBgjHCI1OAwrKzw4','pc9KAxy+cIaGica','nJCWBKjtvLvA','yMX1CG','CMvZB2X2zuf0DgfJAg1LBNrvCMXZ','BwvZC2fNzq','C3rHCNrfzgL0','DhjPBq','C2v0tg9HzgLUzW','CMvWBgfJzq','y29TBwvUDhmTy29UzMLYBs1TB2rHBa','rMfPBgvKihrVihnHDMuGy29TBwvUDdO','y29TBwvUDhmTAw5WDxqTC2vJDgLVBG','B25dB21Tzw50C0nOyw5Nzwq','y2fUy2vSrwrPDa','lMnVBw1LBNrZlwnVBMzPCM0Ty2XVC2u','zcbHz28','zMXVB3i','zgL2','CMvZB2X2zuf0DgfJAg1LBNrvCMW','yxv0Ag9Y','Aw5Uzxjive1m','y3vYCMvUDfvZzxjjza','Dgv4DenVBNrLBNq','DxbSB2fKqxr0ywnOBwvUDhm','y3jLyxrLrwXLBwvUDa','B25bzgrbDhrHy2HTzw50CW','Aw5PDevKAxrVCG','x193AwrNzxq','y3jLyxrLq29TBwvUDhnmAxn0','mJq3ndzjDu1jEwG','ChvZAa','Bg9HzenVBw1LBNrZ','twfYA2rVD25fzgL0B3i','zM9YrwfJAa','zwrPDg9Y','y3jLyxrLzef0','z2v0vxnLCNm','y29TBwvUDhmTDgv4DgfYzwe','nde2mJqYmfvHu0H2AG','rMfPBgvKihrVihnHDMuGy29TBwvUDdOG','phnWyw4Gy2XHC3m9iM1LBNrPB24IigrHDgeTBwvUDgLVBI11C2vYlwLKpsi','mtq3swvds0nx','zxjYB3i','l3rHC2TZlW','zgf0yxnLDa','CMvUzgvYtwvUDgLVBNm','D2fYBG','z2v0q29TBwvUDhm','rMfPBgvKihrVigrLBgv0zsbJB21Tzw50oIa','y29TBwvUDa','DxbKyxrLzef0','CgfYC2u','zMLUzeLUzgv4','AgfUzgXLu3vIBwL0','zM9JDxm','yxbWzw5Kq2HPBgq','Dgv4DgfYzwe','twfYA2rVD25fzgL0B3iGBM90igXVywrLza','zxHPC3rPBMDbDhrHy2HTzw50CW','CMvTB3zLrxzLBNrmAxn0zw5LCG','y29UDgvUDa','zxnJyxbLshrTBa','lMnVBw1LBNrZlxn1yM1PDc1IDg4','BwfW','Dg9VBgjHCG','zw5HyMXLqxr0ywnOBwvUDhm','q29TBwvUDhnxAwrNzxq','y29TBwvUDhmTzwrPDg9YlxbSywnLAg9SzgvY','BMfTzq','mJKYnZu0D3bACeTq','CgXHy2vOB2XKzxi','y29TBwvUDhmTD2LKz2v0ia','pc9ZCgfUpGOGicaGicaGicaGphnWyw4Gy2XHC3m9iMnVBw1LBNqTDgLTzxn0yw1WiIb0AxrSzt0I','y29TBwvUDeLK','lMj0BI1SB2fKAw5N','y29TBwvUDhmTDg9VBgjHCIbJB21Tzw50CY10B29SyMfYlwHPzgrLBG','Dg9mB2nHBgvtDhjPBMC','CgvUzgLUz0f0DgfJAg1LBNrZ','Dg9mB2nHBgveyxrLu3rYAw5N','zM9YBwf0rgf0zq','DgfZA0LK','l2f0DgfJAg1LBNrZlW','zgLZywjSzwq','zwrPDgLUz0nVBw1LBNrjza','Dg9Nz2XLrxHWyw5Kzwq','y29TBwvUDhmTAgvHzgvY','cIaGicaGicaGica8l3nWyw4+cIaGicaGicaGpc9KAxy+cIaGicaGicaG','lMnVBw1LBNrZlwnVBMzPCM0Ty2fUy2vS','AgvHzgvY','C21VB3rO','nJi1mJq2vKrVrw5q','y29TBwvUDhmTzwrPDg9YlxDYyxbWzxi','z2v0vMfSDwu','rxnJyxbL','y29TBwvUDhmTAw5WDxqTywn0Aw9UCW','y29TBwvUDhm','C2HVD0rLBgv0zunVBMzPCM1nB2rHBa','ywrKrxzLBNrmAxn0zw5LCG','y29TBwvUDhmTD2LKz2v0lwnVBxbHy3q','lMnVBw1LBNrZlwnVBMzPCM0TyMfJA2rYB3a','ntG0u21VAfLM','qw5VBNLTB3vZ','Aw5PDa','pgrPDIbJBgfZCZ0Iy29TBwvUDhmTzw1WDhKIpK5VignVBw1LBNrZihLLDdWVzgL2pG','DxbKyxrLq291BNq','Aw5WDxrtzwn0Aw9U','zgvZDhjVEq','pgrPDIbJBgfZCZ0Iy29TBwvUDhmTBg9HzgLUzYi+tg9HzgLUzYbJB21Tzw50CY4UlJWVzgL2pG','z2v0q29TBwvUDenVDw50','AgLKzgvU','y2XHC3nmAxn0','mtK3nZvYuxf5sNO','qwrKienVBw1LBNq','CxvLCNLtzwXLy3rVCG','A2v5','CM90yxrLkde4mgrLzYK','lMj0BI10zxH0','z2v0qMfZzvvYBa','y2fUy2vSqNrU','y29TBwvUDhmTBgLZDa','B25dB21Tzw50C0XVywrLza'];_0x3c9c=function(){return _0x57647c;};return _0x3c9c();}function _0xe559(_0xcacabf,_0x56395a){_0xcacabf=_0xcacabf-0x1bd;const _0x3c9c55=_0x3c9c();let _0xe55914=_0x3c9c55[_0xcacabf];if(_0xe559['szYNiO']===undefined){var _0x3a729f=function(_0xbf10c0){const _0x112b31='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x401e2d='',_0x2b15e0='';for(let _0x2f949a=0x0,_0xb1a40c,_0x2b8db0,_0x588d19=0x0;_0x2b8db0=_0xbf10c0['charAt'](_0x588d19++);~_0x2b8db0&&(_0xb1a40c=_0x2f949a%0x4?_0xb1a40c*0x40+_0x2b8db0:_0x2b8db0,_0x2f949a++%0x4)?_0x401e2d+=String['fromCharCode'](0xff&_0xb1a40c>>(-0x2*_0x2f949a&0x6)):0x0){_0x2b8db0=_0x112b31['indexOf'](_0x2b8db0);}for(let _0x1c3bbd=0x0,_0x279ab3=_0x401e2d['length'];_0x1c3bbd<_0x279ab3;_0x1c3bbd++){_0x2b15e0+='%'+('00'+_0x401e2d['charCodeAt'](_0x1c3bbd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2b15e0);};_0xe559['zoQmQA']=_0x3a729f,_0xe559['ZlZzlR']={},_0xe559['szYNiO']=!![];}const _0x178b89=_0x3c9c55[0x0],_0x4df445=_0xcacabf+_0x178b89,_0x1e4cc8=_0xe559['ZlZzlR'][_0x4df445];return!_0x1e4cc8?(_0xe55914=_0xe559['zoQmQA'](_0xe55914),_0xe559['ZlZzlR'][_0x4df445]=_0xe55914):_0xe55914=_0x1e4cc8,_0xe55914;}const _0x26e0cc=_0xe559;(function(_0x21a6d7,_0x599360){const _0x1e22bf=_0xe559,_0x49e673=_0x21a6d7();while(!![]){try{const _0x19218b=-parseInt(_0x1e22bf(0x234))/0x1+-parseInt(_0x1e22bf(0x1f7))/0x2*(-parseInt(_0x1e22bf(0x203))/0x3)+parseInt(_0x1e22bf(0x200))/0x4+-parseInt(_0x1e22bf(0x253))/0x5*(-parseInt(_0x1e22bf(0x257))/0x6)+-parseInt(_0x1e22bf(0x249))/0x7*(-parseInt(_0x1e22bf(0x23e))/0x8)+parseInt(_0x1e22bf(0x1c8))/0x9+parseInt(_0x1e22bf(0x1db))/0xa*(-parseInt(_0x1e22bf(0x21f))/0xb);if(_0x19218b===_0x599360)break;else _0x49e673['push'](_0x49e673['shift']());}catch(_0x36c16b){_0x49e673['push'](_0x49e673['shift']());}}}(_0x3c9c,0xc914a));export class CommentsWidget{constructor(_0x401e2d,_0x2b15e0={}){const _0x3a67ca=_0xe559;this['container']=_0x401e2d,this[_0x3a67ca(0x255)]={'taskId':_0x2b15e0['taskId']||null,'currentUserId':_0x2b15e0['currentUserId']||null,'compact':_0x2b15e0['compact']||![],'skipHeader':_0x2b15e0[_0x3a67ca(0x265)]||![],'onCommentsLoaded':_0x2b15e0[_0x3a67ca(0x252)]||null,'onCommentsChanged':_0x2b15e0[_0x3a67ca(0x1e6)]||null,'enableAttachments':_0x2b15e0[_0x3a67ca(0x21b)]||![],'getAPI':_0x2b15e0[_0x3a67ca(0x25d)]||(()=>window[_0x3a67ca(0x26b)])},this['comments']=[],this[_0x3a67ca(0x1fc)]=null,this[_0x3a67ca(0x22d)]=null,this[_0x3a67ca(0x1d8)]=![],this[_0x3a67ca(0x227)]=[],this[_0x3a67ca(0x214)]=[],this[_0x3a67ca(0x240)]();}['init'](){const _0x1e80be=_0xe559;this[_0x1e80be(0x1cd)][_0x1e80be(0x1ee)]='',this['container'][_0x1e80be(0x1c6)]=_0x1e80be(0x221)+(this[_0x1e80be(0x255)][_0x1e80be(0x1c0)]?_0x1e80be(0x23c):''),this['createHeader'](),this['createCommentsList'](),this[_0x1e80be(0x1c3)](),this['options'][_0x1e80be(0x22a)]&&(this[_0x1e80be(0x1f9)](),this['options'][_0x1e80be(0x21b)]&&this[_0x1e80be(0x1d7)]());}async[_0x26e0cc(0x1d7)](){const _0x5ca1e0=_0x26e0cc;try{const _0x2f949a=this['options'][_0x5ca1e0(0x25d)](),_0xb1a40c=await _0x2f949a[_0x5ca1e0(0x268)](this['options']['taskId']);this[_0x5ca1e0(0x214)]=_0xb1a40c['attachments']||[];}catch(_0x2b8db0){console[_0x5ca1e0(0x208)](_0x5ca1e0(0x260),_0x2b8db0),this[_0x5ca1e0(0x214)]=[];}}[_0x26e0cc(0x1cf)](){const _0x2b6451=_0x26e0cc;if(this[_0x2b6451(0x255)][_0x2b6451(0x265)]){this[_0x2b6451(0x232)]=null,this[_0x2b6451(0x259)]=!![];return;}if(this[_0x2b6451(0x255)][_0x2b6451(0x1c0)]){this['header']=document['createElement'](_0x2b6451(0x1eb)),this['header'][_0x2b6451(0x1c6)]='comments-header\x20comments-header-compact',this[_0x2b6451(0x232)][_0x2b6451(0x1ee)]='\x0a\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22comments-toggle-btn\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20class=\x22comments-toggle-icon\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M21\x2015a2\x202\x200\x200\x201-2\x202H7l-4\x204V5a2\x202\x200\x200\x201\x202-2h14a2\x202\x200\x200\x201\x202\x202z\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22comments-count-label\x22>Comments</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22comments-count-badge\x22\x20id=\x22comments-count-badge\x22>0</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20class=\x22comments-chevron\x22\x20width=\x2212\x22\x20height=\x2212\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<polyline\x20points=\x226\x209\x2012\x2015\x2018\x209\x22></polyline>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20',this[_0x2b6451(0x1cd)][_0x2b6451(0x211)](this['header']);const _0x588d19=this[_0x2b6451(0x232)][_0x2b6451(0x24b)](_0x2b6451(0x25a));_0x588d19['addEventListener'](_0x2b6451(0x1cc),()=>this[_0x2b6451(0x22e)]()),this[_0x2b6451(0x259)]=![];}else this[_0x2b6451(0x232)]=document[_0x2b6451(0x1f2)](_0x2b6451(0x1eb)),this['header'][_0x2b6451(0x1c6)]=_0x2b6451(0x22f),this[_0x2b6451(0x232)][_0x2b6451(0x1ee)]=_0x2b6451(0x1d3),this[_0x2b6451(0x1cd)][_0x2b6451(0x211)](this[_0x2b6451(0x232)]),this[_0x2b6451(0x259)]=!![];}[_0x26e0cc(0x1f6)](){const _0x77f605=_0x26e0cc;this[_0x77f605(0x1be)]=document['createElement']('div'),this['commentsListWrapper']['className']='comments-list-wrapper',this['options'][_0x77f605(0x1c0)]&&!this[_0x77f605(0x259)]&&(this[_0x77f605(0x1be)][_0x77f605(0x247)]=!![]),this['commentsList']=document[_0x77f605(0x1f2)]('div'),this[_0x77f605(0x1d6)][_0x77f605(0x1c6)]=_0x77f605(0x251),this[_0x77f605(0x1be)][_0x77f605(0x211)](this['commentsList']),this[_0x77f605(0x1cd)][_0x77f605(0x211)](this[_0x77f605(0x1be)]);}[_0x26e0cc(0x1c3)](){const _0x52f77e=_0x26e0cc;this['inputSection']=document[_0x52f77e(0x1f2)]('div'),this[_0x52f77e(0x243)][_0x52f77e(0x1c6)]=_0x52f77e(0x1e5);this[_0x52f77e(0x255)][_0x52f77e(0x1c0)]&&!this[_0x52f77e(0x259)]&&(this[_0x52f77e(0x243)]['hidden']=!![]);const _0x1c3bbd=document[_0x52f77e(0x1f2)](_0x52f77e(0x1eb));_0x1c3bbd[_0x52f77e(0x1c6)]=_0x52f77e(0x235),this[_0x52f77e(0x21a)]=document['createElement'](_0x52f77e(0x1eb)),this['toolbar'][_0x52f77e(0x1c6)]=_0x52f77e(0x225),_0x1c3bbd['appendChild'](this[_0x52f77e(0x21a)]);const _0x279ab3=document[_0x52f77e(0x1f2)](_0x52f77e(0x1eb));_0x279ab3[_0x52f77e(0x1c6)]=_0x52f77e(0x21d),_0x1c3bbd[_0x52f77e(0x211)](_0x279ab3);const _0x3362b5=document[_0x52f77e(0x1f2)](_0x52f77e(0x1eb));_0x3362b5['className']=_0x52f77e(0x238),_0x3362b5[_0x52f77e(0x1ee)]=_0x52f77e(0x1c9),this[_0x52f77e(0x243)][_0x52f77e(0x211)](_0x1c3bbd),this[_0x52f77e(0x243)][_0x52f77e(0x211)](_0x3362b5),this[_0x52f77e(0x1cd)][_0x52f77e(0x211)](this[_0x52f77e(0x243)]),this['initEditor'](_0x279ab3),this[_0x52f77e(0x263)]=_0x3362b5[_0x52f77e(0x24b)](_0x52f77e(0x218)),this['cancelBtn']=_0x3362b5[_0x52f77e(0x24b)](_0x52f77e(0x25b)),this[_0x52f77e(0x263)][_0x52f77e(0x23b)](_0x52f77e(0x1cc),()=>this[_0x52f77e(0x20f)]()),this[_0x52f77e(0x250)][_0x52f77e(0x23b)](_0x52f77e(0x1cc),()=>this[_0x52f77e(0x1e7)]());}[_0x26e0cc(0x1f4)](_0x2ad24f){const _0x2a22ed=_0x26e0cc,_0x31a1bc=document[_0x2a22ed(0x1f2)](_0x2a22ed(0x212));_0x31a1bc[_0x2a22ed(0x220)]=_0x2a22ed(0x256),_0x31a1bc[_0x2a22ed(0x1c6)]=_0x2a22ed(0x1ff),_0x2ad24f[_0x2a22ed(0x211)](_0x31a1bc);const _0x3f1595=window[_0x2a22ed(0x1fa)];if(!_0x3f1595){console[_0x2a22ed(0x204)](_0x2a22ed(0x213));return;}const _0x2ef68d={'placeholder':_0x2a22ed(0x256),'editable':!![],'toolbar':!![],'minHeight':this['options'][_0x2a22ed(0x1c0)]?'60px':_0x2a22ed(0x1d1),'onChange':_0x2e0c9f=>{const _0x54221a=_0x2a22ed,_0x38fe2c=_0x2e0c9f&&_0x2e0c9f[_0x54221a(0x1e0)]()[_0x54221a(0x267)]>0x0||this[_0x54221a(0x227)]['length']>0x0;this[_0x54221a(0x263)]['disabled']=!_0x38fe2c;},'fetchUsers':async()=>{const _0x39d7b7=_0x2a22ed,_0x317e33=this[_0x39d7b7(0x255)][_0x39d7b7(0x25d)]();return _0x317e33[_0x39d7b7(0x1fe)]();}};this[_0x2a22ed(0x255)][_0x2a22ed(0x21b)]&&this[_0x2a22ed(0x255)][_0x2a22ed(0x22a)]&&(_0x2ef68d[_0x2a22ed(0x1f3)]=_0x173b1a=>{const _0x5eba95=_0x2a22ed;this[_0x5eba95(0x227)][_0x5eba95(0x1f8)](..._0x173b1a),this['submitBtn'][_0x5eba95(0x22c)]=![];},_0x2ef68d[_0x2a22ed(0x1ec)]=_0x42db39=>{const _0x2850d6=_0x2a22ed,_0x480652=this['options']['getAPI']();return _0x480652[_0x2850d6(0x24f)]()+_0x2850d6(0x205)+this['options'][_0x2850d6(0x22a)]+_0x2850d6(0x22b)+encodeURIComponent(_0x42db39);},_0x2ef68d['isAttachmentNameTaken']=_0x1f39f1=>{const _0x26ef22=_0x2a22ed;return this[_0x26ef22(0x227)]['some'](_0x4ac58d=>_0x4ac58d[_0x26ef22(0x21e)]===_0x1f39f1)||this['existingAttachments'][_0x26ef22(0x1cb)](_0xae1ca6=>_0xae1ca6[_0x26ef22(0x21e)]===_0x1f39f1);});this['editor']=new _0x3f1595(_0x31a1bc,_0x2ef68d);const _0x120cdc=this[_0x2a22ed(0x1fc)]['editor'],_0x13a9ff=this[_0x2a22ed(0x1fc)][_0x2a22ed(0x21a)];_0x13a9ff&&(_0x13a9ff[_0x2a22ed(0x248)]['add'](_0x2a22ed(0x1d9)),_0x120cdc[_0x2a22ed(0x23b)](_0x2a22ed(0x210),()=>{const _0x561bf2=_0x2a22ed;_0x13a9ff[_0x561bf2(0x248)][_0x561bf2(0x1d4)](_0x561bf2(0x1d9));}),_0x120cdc[_0x2a22ed(0x23b)](_0x2a22ed(0x1dc),_0x5b6b65=>{setTimeout(()=>{const _0x1c2554=_0xe559;!this[_0x1c2554(0x1fc)]['container']?.['contains'](document[_0x1c2554(0x254)])&&!_0x13a9ff['contains'](document['activeElement'])&&(!this['editor'][_0x1c2554(0x236)]()?.[_0x1c2554(0x1e0)]()&&!this[_0x1c2554(0x22d)]&&_0x13a9ff[_0x1c2554(0x248)]['add'](_0x1c2554(0x1d9)));},0x64);}));}[_0x26e0cc(0x22e)](){const _0xd29e03=_0x26e0cc;this['isExpanded']=!this[_0xd29e03(0x259)],this[_0xd29e03(0x1be)][_0xd29e03(0x247)]=!this[_0xd29e03(0x259)],this['inputSection'][_0xd29e03(0x247)]=!this[_0xd29e03(0x259)];const _0x4bb3b5=this[_0xd29e03(0x232)][_0xd29e03(0x24b)]('.comments-chevron');_0x4bb3b5&&(_0x4bb3b5['style'][_0xd29e03(0x1c2)]=this[_0xd29e03(0x259)]?_0xd29e03(0x24d):''),this[_0xd29e03(0x259)]&&this[_0xd29e03(0x239)][_0xd29e03(0x267)]===0x0&&this[_0xd29e03(0x255)][_0xd29e03(0x22a)]&&this[_0xd29e03(0x1f9)]();}['setTaskId'](_0x2e7372){const _0x40ddd8=_0x26e0cc;this[_0x40ddd8(0x255)][_0x40ddd8(0x22a)]=_0x2e7372,this['comments']=[],this[_0x40ddd8(0x26a)](),_0x2e7372&&this['loadComments']();}async['loadComments'](){const _0x21835a=_0x26e0cc;if(!this[_0x21835a(0x255)]['taskId']||this[_0x21835a(0x1d8)])return;this[_0x21835a(0x1d8)]=!![],this[_0x21835a(0x1d6)][_0x21835a(0x1ee)]=_0x21835a(0x245);try{const _0x5d3ca3=this['options']['getAPI'](),_0x5ae692=await _0x5d3ca3[_0x21835a(0x209)](this[_0x21835a(0x255)][_0x21835a(0x22a)]);this['comments']=_0x5ae692[_0x21835a(0x239)]||[],this[_0x21835a(0x26a)](),this[_0x21835a(0x242)](),this['options']['onCommentsLoaded']&&this[_0x21835a(0x255)][_0x21835a(0x252)](this['comments']);}catch(_0x31bac4){console[_0x21835a(0x204)]('Failed\x20to\x20load\x20comments:',_0x31bac4),this[_0x21835a(0x1d6)]['innerHTML']=_0x21835a(0x1d5);}finally{this[_0x21835a(0x1d8)]=![];}}[_0x26e0cc(0x26a)](){const _0x170a69=_0x26e0cc;if(this[_0x170a69(0x239)]['length']===0x0){this[_0x170a69(0x1d6)][_0x170a69(0x1ee)]=_0x170a69(0x241);return;}this[_0x170a69(0x1d6)][_0x170a69(0x1ee)]='',this[_0x170a69(0x239)][_0x170a69(0x1fb)](_0x809be9=>{const _0x1acf8a=_0x170a69,_0x358bb8=this[_0x1acf8a(0x1bf)](_0x809be9);this[_0x1acf8a(0x1d6)]['appendChild'](_0x358bb8);});}[_0x26e0cc(0x1bf)](_0x2959a6){const _0x21eadc=_0x26e0cc,_0xbddbd7=document['createElement'](_0x21eadc(0x1eb));_0xbddbd7[_0x21eadc(0x1c6)]='comment-item',_0xbddbd7[_0x21eadc(0x206)][_0x21eadc(0x223)]=_0x2959a6['id'];const _0x54426b=this[_0x21eadc(0x255)][_0x21eadc(0x1ef)]&&_0x2959a6['author']?.[_0x21eadc(0x1ce)]===this['options'][_0x21eadc(0x1ef)],_0x4317f0=this[_0x21eadc(0x229)](_0x2959a6[_0x21eadc(0x1fd)]),_0x4fdea7=_0x2959a6[_0x21eadc(0x20c)]!==_0x2959a6['createdAt'],_0x5d58ea=this[_0x21eadc(0x1dd)](_0x2959a6[_0x21eadc(0x216)]);let _0x5b4889=window[_0x21eadc(0x1bd)]?window[_0x21eadc(0x1bd)][_0x21eadc(0x20d)](_0x5d58ea):_0x5d58ea;_0x5b4889=this[_0x21eadc(0x207)](_0x5b4889),_0xbddbd7[_0x21eadc(0x1ee)]=_0x21eadc(0x264)+this[_0x21eadc(0x217)](_0x2959a6[_0x21eadc(0x1ed)]?.['name']||_0x21eadc(0x23f))+_0x21eadc(0x222)+new Date(_0x2959a6['createdAt'])[_0x21eadc(0x226)]()+_0x21eadc(0x1c5)+_0x4317f0+(_0x4fdea7?'\x20(edited)':'')+_0x21eadc(0x230)+(_0x54426b?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22comment-actions\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22btn-icon-mini\x20comment-edit-btn\x22\x20title=\x22Edit\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20width=\x2212\x22\x20height=\x2212\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22>\x0a\x20\x20\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\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\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22btn-icon-mini\x20comment-delete-btn\x22\x20title=\x22Delete\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20width=\x2212\x22\x20height=\x2212\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<polyline\x20points=\x223\x206\x205\x206\x2021\x206\x22></polyline>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M19\x206v14a2\x202\x200\x200\x201-2\x202H7a2\x202\x200\x200\x201-2-2V6m3\x200V4a2\x202\x200\x200\x201\x202-2h4a2\x202\x200\x200\x201\x202\x202v2\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22comment-content\x22>'+_0x5b4889+_0x21eadc(0x1da);if(_0x54426b){const _0x445bff=_0xbddbd7[_0x21eadc(0x24b)]('.comment-edit-btn'),_0x426cb4=_0xbddbd7[_0x21eadc(0x24b)]('.comment-delete-btn');_0x445bff?.[_0x21eadc(0x23b)](_0x21eadc(0x1cc),()=>this[_0x21eadc(0x1df)](_0x2959a6)),_0x426cb4?.[_0x21eadc(0x23b)]('click',()=>this[_0x21eadc(0x1c1)](_0x2959a6['id']));}return _0xbddbd7;}['formatDate'](_0x1454a4){const _0x1a8940=_0x26e0cc,_0x4d7b08=new Date(_0x1454a4),_0x493f62=new Date(),_0x2a44cf=_0x493f62-_0x4d7b08,_0x194e89=Math[_0x1a8940(0x1ea)](_0x2a44cf/0xea60),_0x3bd1c1=Math[_0x1a8940(0x1ea)](_0x2a44cf/0x36ee80),_0x2f5cf1=Math[_0x1a8940(0x1ea)](_0x2a44cf/0x5265c00);if(_0x194e89<0x1)return _0x1a8940(0x1ca);if(_0x194e89<0x3c)return _0x194e89+_0x1a8940(0x266);if(_0x3bd1c1<0x18)return _0x3bd1c1+_0x1a8940(0x258);if(_0x2f5cf1<0x7)return _0x2f5cf1+_0x1a8940(0x1e9);return _0x4d7b08[_0x1a8940(0x228)]();}[_0x26e0cc(0x217)](_0x5f0d18){const _0x2f31eb=_0x26e0cc,_0x1c9e03=document['createElement'](_0x2f31eb(0x1eb));return _0x1c9e03[_0x2f31eb(0x1f0)]=_0x5f0d18,_0x1c9e03['innerHTML'];}[_0x26e0cc(0x1dd)](_0x43c40f){const _0x3033c7=_0x26e0cc;if(!_0x43c40f||!this[_0x3033c7(0x255)][_0x3033c7(0x22a)])return _0x43c40f;const _0xfebbdf=this[_0x3033c7(0x255)]['getAPI'](),_0x21f111=_0xfebbdf[_0x3033c7(0x24f)]();let _0x39665c=String(_0x43c40f)[_0x3033c7(0x1e2)](/\]\(attachment:(?:\/\/)?([^)]+)\)/g,(_0x526124,_0x300301)=>{const _0x2d5b10=_0x3033c7,_0x1c1005=String(_0x300301||'')[_0x2d5b10(0x1e0)]();if(!_0x1c1005)return _0x526124;let _0x1a3597=_0x1c1005;try{_0x1a3597=decodeURIComponent(_0x1c1005);}catch{}return']('+_0x21f111+_0x2d5b10(0x205)+this[_0x2d5b10(0x255)][_0x2d5b10(0x22a)]+_0x2d5b10(0x22b)+encodeURIComponent(_0x1a3597)+')';});return _0x39665c;}[_0x26e0cc(0x207)](_0x7f6d8){const _0x27f6da=_0x26e0cc;if(!_0x7f6d8)return _0x7f6d8;return String(_0x7f6d8)[_0x27f6da(0x1e2)](/@?<a\s+href="mention:([^"]+)"[^>]*>([^<]+)<\/a>/g,(_0x30d21c,_0x3325b1,_0x3c0fba)=>{const _0x19c7b4=_0x27f6da,_0x3f7813=this['escapeHtml'](_0x3c0fba),_0x2b1d42=this['escapeHtml'](_0x3325b1);return _0x19c7b4(0x202)+_0x2b1d42+'\x22>@'+_0x3f7813+'</span>';});}[_0x26e0cc(0x1df)](_0x42588c){const _0x22604b=_0x26e0cc;this[_0x22604b(0x22d)]=_0x42588c['id'],this[_0x22604b(0x1fc)][_0x22604b(0x25e)](_0x42588c[_0x22604b(0x216)]),this[_0x22604b(0x1fc)][_0x22604b(0x210)](),this[_0x22604b(0x250)][_0x22604b(0x247)]=![],this['submitBtn'][_0x22604b(0x24b)](_0x22604b(0x24e))[_0x22604b(0x1f0)]='Save',this['editor'][_0x22604b(0x21a)]&&this[_0x22604b(0x1fc)][_0x22604b(0x21a)]['classList']['remove'](_0x22604b(0x1d9)),this['inputSection']['scrollIntoView']({'behavior':_0x22604b(0x233),'block':_0x22604b(0x1c7)});}[_0x26e0cc(0x1e7)](){const _0x2cdf75=_0x26e0cc;this[_0x2cdf75(0x22d)]=null,this['editor']['clear'](),this[_0x2cdf75(0x250)][_0x2cdf75(0x247)]=!![],this[_0x2cdf75(0x263)][_0x2cdf75(0x24b)](_0x2cdf75(0x24e))['textContent']=_0x2cdf75(0x24a),this[_0x2cdf75(0x263)]['disabled']=!![],this['editor'][_0x2cdf75(0x21a)]&&!this[_0x2cdf75(0x1fc)][_0x2cdf75(0x236)]()?.['trim']()&&this[_0x2cdf75(0x1fc)][_0x2cdf75(0x21a)][_0x2cdf75(0x248)][_0x2cdf75(0x1d2)](_0x2cdf75(0x1d9));}async[_0x26e0cc(0x20f)](){const _0x3b95ea=_0x26e0cc,_0x641485=this[_0x3b95ea(0x1fc)][_0x3b95ea(0x236)]()?.[_0x3b95ea(0x1e0)]();if(!_0x641485&&this[_0x3b95ea(0x227)][_0x3b95ea(0x267)]===0x0||!this[_0x3b95ea(0x255)][_0x3b95ea(0x22a)])return;this[_0x3b95ea(0x1e1)](!![]);try{const _0xeabe1f=this['options']['getAPI']();this[_0x3b95ea(0x227)][_0x3b95ea(0x267)]>0x0&&this['options']['enableAttachments']&&(await _0xeabe1f[_0x3b95ea(0x1f1)](this[_0x3b95ea(0x255)]['taskId'],this[_0x3b95ea(0x227)]),this[_0x3b95ea(0x214)][_0x3b95ea(0x1f8)](...this[_0x3b95ea(0x227)][_0x3b95ea(0x219)](_0x1f1ecc=>({'name':_0x1f1ecc[_0x3b95ea(0x21e)]}))),this[_0x3b95ea(0x227)]=[]);if(this['editingCommentId']){const _0x409f45=await _0xeabe1f[_0x3b95ea(0x261)](this[_0x3b95ea(0x255)][_0x3b95ea(0x22a)],this['editingCommentId'],_0x641485),_0x5bb2d9=this['comments'][_0x3b95ea(0x20e)](_0x2c441e=>_0x2c441e['id']===this['editingCommentId']);_0x5bb2d9!==-0x1&&(this[_0x3b95ea(0x239)][_0x5bb2d9]=_0x409f45['comment']);}else{const _0x2e54cb=await _0xeabe1f['addComment'](this[_0x3b95ea(0x255)]['taskId'],_0x641485);this[_0x3b95ea(0x239)][_0x3b95ea(0x1f8)](_0x2e54cb[_0x3b95ea(0x20b)]);}this[_0x3b95ea(0x26a)](),this[_0x3b95ea(0x242)](),this[_0x3b95ea(0x1e7)](),this[_0x3b95ea(0x1fc)][_0x3b95ea(0x1c4)]();}catch(_0x552779){console[_0x3b95ea(0x204)](_0x3b95ea(0x1e4),_0x552779),alert(_0x3b95ea(0x201)+_0x552779[_0x3b95ea(0x1de)]);}finally{this[_0x3b95ea(0x1e1)](![]);}}async['deleteComment'](_0x426a99){const _0x4e7075=_0x26e0cc,_0x2aaedf=await this[_0x4e7075(0x23a)]();if(!_0x2aaedf)return;try{const _0x3295cf=this[_0x4e7075(0x255)][_0x4e7075(0x25d)]();await _0x3295cf[_0x4e7075(0x1c1)](this['options'][_0x4e7075(0x22a)],_0x426a99),this[_0x4e7075(0x239)]=this[_0x4e7075(0x239)][_0x4e7075(0x1d0)](_0x54e15d=>_0x54e15d['id']!==_0x426a99),this['renderComments'](),this['updateCount']();}catch(_0x2f1cf4){console[_0x4e7075(0x204)](_0x4e7075(0x25c),_0x2f1cf4),alert(_0x4e7075(0x20a)+_0x2f1cf4[_0x4e7075(0x1de)]);}}['showDeleteConfirmModal'](){return new Promise(_0x4a79e9=>{const _0x22a7bb=_0xe559,_0x39e311=document[_0x22a7bb(0x1f2)](_0x22a7bb(0x1eb));_0x39e311[_0x22a7bb(0x1c6)]=_0x22a7bb(0x1e3),_0x39e311[_0x22a7bb(0x1ee)]='\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22comments-confirm-backdrop\x22></div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22comments-confirm-dialog\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22comments-confirm-header\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<h3>Delete\x20Comment</h3>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22btn-icon\x20comments-confirm-close\x22\x20title=\x22Close\x22>×</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22comments-confirm-body\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p>Are\x20you\x20sure\x20you\x20want\x20to\x20delete\x20this\x20comment?\x20This\x20action\x20cannot\x20be\x20undone.</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22comments-confirm-footer\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22btn-ghost\x20btn-small\x20comments-confirm-cancel\x22>Cancel</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22btn-danger\x20btn-small\x20comments-confirm-delete\x22>Delete</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20',document['body']['appendChild'](_0x39e311);const _0x44739b=_0x3aa305=>{const _0x369c2f=_0x22a7bb;document[_0x369c2f(0x215)]('keydown',_0x225904),_0x39e311[_0x369c2f(0x1d4)](),_0x4a79e9(_0x3aa305);},_0x225904=_0x3b08a2=>{const _0x28971d=_0x22a7bb;if(_0x3b08a2[_0x28971d(0x24c)]===_0x28971d(0x237))_0x44739b(![]);};document[_0x22a7bb(0x23b)](_0x22a7bb(0x269),_0x225904),_0x39e311[_0x22a7bb(0x24b)](_0x22a7bb(0x23d))['addEventListener'](_0x22a7bb(0x1cc),()=>_0x44739b(![])),_0x39e311['querySelector'](_0x22a7bb(0x1e8))[_0x22a7bb(0x23b)]('click',()=>_0x44739b(![])),_0x39e311[_0x22a7bb(0x24b)]('.comments-confirm-cancel')['addEventListener'](_0x22a7bb(0x1cc),()=>_0x44739b(![])),_0x39e311['querySelector']('.comments-confirm-delete')['addEventListener'](_0x22a7bb(0x1cc),()=>_0x44739b(!![])),_0x39e311['querySelector'](_0x22a7bb(0x231))[_0x22a7bb(0x210)]();});}[_0x26e0cc(0x1e1)](_0x4e586c){const _0x133dde=_0x26e0cc;this['submitBtn'][_0x133dde(0x22c)]=_0x4e586c,this['submitBtn'][_0x133dde(0x24b)](_0x133dde(0x24e))[_0x133dde(0x247)]=_0x4e586c,this['submitBtn'][_0x133dde(0x24b)](_0x133dde(0x224))[_0x133dde(0x247)]=!_0x4e586c;}[_0x26e0cc(0x242)](){const _0x4ea59c=_0x26e0cc,_0x62197f=this[_0x4ea59c(0x239)][_0x4ea59c(0x267)],_0x45b06b=this['container'][_0x4ea59c(0x24b)]('#comments-count-badge');_0x45b06b&&(_0x45b06b['textContent']=_0x62197f,_0x45b06b[_0x4ea59c(0x247)]=_0x62197f===0x0);const _0x5e6b7=this[_0x4ea59c(0x1cd)]['querySelector'](_0x4ea59c(0x262));_0x5e6b7&&(_0x5e6b7['textContent']=_0x62197f>0x0?'('+_0x62197f+')':''),this['options']['onCommentsChanged']&&this[_0x4ea59c(0x255)]['onCommentsChanged'](this[_0x4ea59c(0x239)]);}[_0x26e0cc(0x246)](){const _0x3ff9b4=_0x26e0cc;return this[_0x3ff9b4(0x239)][_0x3ff9b4(0x267)];}['destroy'](){const _0x39b8e5=_0x26e0cc;this['editor']&&this[_0x39b8e5(0x1fc)][_0x39b8e5(0x244)](),this[_0x39b8e5(0x1cd)][_0x39b8e5(0x1ee)]='';}}CommentsWidget['prototype'][_0x26e0cc(0x25f)]=function(){const _0x16c8ba=_0x26e0cc;this[_0x16c8ba(0x1cd)][_0x16c8ba(0x1f5)]=this;};typeof window!=='undefined'&&(window[_0x26e0cc(0x21c)]=CommentsWidget);
1
+ export class CommentsWidget{constructor(_0x254f00,_0x500d48={}){this['container']=_0x254f00,this['options']={'taskId':_0x500d48['taskId']||null,'currentUserId':_0x500d48['currentUserId']||null,'compact':_0x500d48['compact']||![],'skipHeader':_0x500d48['skipHeader']||![],'onCommentsLoaded':_0x500d48['onCommentsLoaded']||null,'onCommentsChanged':_0x500d48['onCommentsChanged']||null,'enableAttachments':_0x500d48['enableAttachments']||![],'getAPI':_0x500d48['getAPI']||(()=>window['API'])},this['comments']=[],this['editor']=null,this['editingCommentId']=null,this['isLoading']=![],this['pendingAttachments']=[],this['existingAttachments']=[],this['init']();}['init'](){this['container']['innerHTML']='',this['container']['className']='comments-widget\x20'+(this['options']['compact']?'comments-widget-compact':''),this['createHeader'](),this['createCommentsList'](),this['createInputSection'](),this['options']['taskId']&&(this['loadComments'](),this['options']['enableAttachments']&&this['loadExistingAttachments']());}async['loadExistingAttachments'](){try{const _0x4d2e3d=this['options']['getAPI'](),_0x3fe4a7=await _0x4d2e3d['getTaskAttachments'](this['options']['taskId']);this['existingAttachments']=_0x3fe4a7['attachments']||[];}catch(_0x5d679b){console['warn']('Failed\x20to\x20load\x20existing\x20attachments:',_0x5d679b),this['existingAttachments']=[];}}['createHeader'](){if(this['options']['skipHeader']){this['header']=null,this['isExpanded']=!![];return;}if(this['options']['compact']){this['header']=document['createElement']('div'),this['header']['className']='comments-header\x20comments-header-compact',this['header']['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22comments-toggle-btn\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20class=\x22comments-toggle-icon\x22\x20width=\x2214\x22\x20height=\x2214\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M21\x2015a2\x202\x200\x200\x201-2\x202H7l-4\x204V5a2\x202\x200\x200\x201\x202-2h14a2\x202\x200\x200\x201\x202\x202z\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22comments-count-label\x22>Comments</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22comments-count-badge\x22\x20id=\x22comments-count-badge\x22>0</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20class=\x22comments-chevron\x22\x20width=\x2212\x22\x20height=\x2212\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<polyline\x20points=\x226\x209\x2012\x2015\x2018\x209\x22></polyline>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20',this['container']['appendChild'](this['header']);const _0x2d7efc=this['header']['querySelector']('.comments-toggle-btn');_0x2d7efc['addEventListener']('click',()=>this['toggleExpanded']()),this['isExpanded']=![];}else this['header']=document['createElement']('div'),this['header']['className']='comments-header',this['header']['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20\x20\x20<h3\x20class=\x22comments-title\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20width=\x2218\x22\x20height=\x2218\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M21\x2015a2\x202\x200\x200\x201-2\x202H7l-4\x204V5a2\x202\x200\x200\x201\x202-2h14a2\x202\x200\x200\x201\x202\x202z\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Comments\x20<span\x20class=\x22comments-count\x22\x20id=\x22comments-count\x22></span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</h3>\x0a\x20\x20\x20\x20\x20\x20',this['container']['appendChild'](this['header']),this['isExpanded']=!![];}['createCommentsList'](){this['commentsListWrapper']=document['createElement']('div'),this['commentsListWrapper']['className']='comments-list-wrapper',this['options']['compact']&&!this['isExpanded']&&(this['commentsListWrapper']['hidden']=!![]),this['commentsList']=document['createElement']('div'),this['commentsList']['className']='comments-list',this['commentsListWrapper']['appendChild'](this['commentsList']),this['container']['appendChild'](this['commentsListWrapper']);}['createInputSection'](){this['inputSection']=document['createElement']('div'),this['inputSection']['className']='comments-input-section';this['options']['compact']&&!this['isExpanded']&&(this['inputSection']['hidden']=!![]);const _0x49d37e=document['createElement']('div');_0x49d37e['className']='comments-editor-wrapper',this['toolbar']=document['createElement']('div'),this['toolbar']['className']='comments-toolbar\x20comments-toolbar-hidden',_0x49d37e['appendChild'](this['toolbar']);const _0x13c196=document['createElement']('div');_0x13c196['className']='comments-editor-placeholder',_0x49d37e['appendChild'](_0x13c196);const _0x5b7d5e=document['createElement']('div');_0x5b7d5e['className']='comments-input-actions',_0x5b7d5e['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22btn-ghost\x20btn-small\x20comments-cancel-btn\x22\x20hidden>Cancel</button>\x0a\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22btn-primary\x20btn-small\x20comments-submit-btn\x22\x20disabled>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22btn-text\x22>Add\x20Comment</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22btn-loading\x22\x20hidden>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20class=\x22spinner\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20width=\x2214\x22\x20height=\x2214\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<circle\x20cx=\x2212\x22\x20cy=\x2212\x22\x20r=\x2210\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x223\x22\x20stroke-dasharray=\x2231.4\x2031.4\x22\x20stroke-linecap=\x22round\x22/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</span>\x0a\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20',this['inputSection']['appendChild'](_0x49d37e),this['inputSection']['appendChild'](_0x5b7d5e),this['container']['appendChild'](this['inputSection']),this['initEditor'](_0x13c196),this['submitBtn']=_0x5b7d5e['querySelector']('.comments-submit-btn'),this['cancelBtn']=_0x5b7d5e['querySelector']('.comments-cancel-btn'),this['submitBtn']['addEventListener']('click',()=>this['handleSubmit']()),this['cancelBtn']['addEventListener']('click',()=>this['cancelEdit']());}['initEditor'](_0xa4d780){const _0x2a7153=document['createElement']('textarea');_0x2a7153['placeholder']='Add\x20a\x20comment...',_0x2a7153['className']='comments-textarea',_0xa4d780['appendChild'](_0x2a7153);const _0x137a1b=window['MarkdownEditor'];if(!_0x137a1b){console['error']('MarkdownEditor\x20not\x20loaded');return;}const _0x50f41a={'placeholder':'Add\x20a\x20comment...','editable':!![],'toolbar':!![],'minHeight':this['options']['compact']?'60px':'80px','onChange':_0x1e195a=>{const _0x5854=_0x1e195a&&_0x1e195a['trim']()['length']>0x0||this['pendingAttachments']['length']>0x0;this['submitBtn']['disabled']=!_0x5854;},'fetchUsers':async()=>{const _0x3fecff=this['options']['getAPI']();return _0x3fecff['getUsers']();}};this['options']['enableAttachments']&&this['options']['taskId']&&(_0x50f41a['onAddAttachments']=_0x12415c=>{this['pendingAttachments']['push'](..._0x12415c),this['submitBtn']['disabled']=![];},_0x50f41a['resolveAttachmentUrl']=_0x1b0518=>{const _0x3b876e=this['options']['getAPI']();return _0x3b876e['getBaseUrl']()+'/tasks/'+this['options']['taskId']+'/attachments/'+encodeURIComponent(_0x1b0518);},_0x50f41a['isAttachmentNameTaken']=_0x135ddd=>{return this['pendingAttachments']['some'](_0x11dc7d=>_0x11dc7d['name']===_0x135ddd)||this['existingAttachments']['some'](_0x43c2bf=>_0x43c2bf['name']===_0x135ddd);});this['editor']=new _0x137a1b(_0x2a7153,_0x50f41a);const _0x54bb56=this['editor']['editor'],_0x40651b=this['editor']['toolbar'];_0x40651b&&(_0x40651b['classList']['add']('comments-toolbar-hidden'),_0x54bb56['addEventListener']('focus',()=>{_0x40651b['classList']['remove']('comments-toolbar-hidden');}),_0x54bb56['addEventListener']('blur',_0x31d8a6=>{setTimeout(()=>{!this['editor']['container']?.['contains'](document['activeElement'])&&!_0x40651b['contains'](document['activeElement'])&&(!this['editor']['getValue']()?.['trim']()&&!this['editingCommentId']&&_0x40651b['classList']['add']('comments-toolbar-hidden'));},0x64);}));}['toggleExpanded'](){this['isExpanded']=!this['isExpanded'],this['commentsListWrapper']['hidden']=!this['isExpanded'],this['inputSection']['hidden']=!this['isExpanded'];const _0x4a01ab=this['header']['querySelector']('.comments-chevron');_0x4a01ab&&(_0x4a01ab['style']['transform']=this['isExpanded']?'rotate(180deg)':''),this['isExpanded']&&this['comments']['length']===0x0&&this['options']['taskId']&&this['loadComments']();}['setTaskId'](_0x4e5e3f){this['options']['taskId']=_0x4e5e3f,this['comments']=[],this['renderComments'](),_0x4e5e3f&&this['loadComments']();}async['loadComments'](){if(!this['options']['taskId']||this['isLoading'])return;this['isLoading']=!![],this['commentsList']['innerHTML']='<div\x20class=\x22comments-loading\x22>Loading\x20comments...</div>';try{const _0x2e858c=this['options']['getAPI'](),_0x169f0e=await _0x2e858c['getComments'](this['options']['taskId']);this['comments']=_0x169f0e['comments']||[],this['renderComments'](),this['updateCount'](),this['options']['onCommentsLoaded']&&this['options']['onCommentsLoaded'](this['comments']);}catch(_0x36f842){console['error']('Failed\x20to\x20load\x20comments:',_0x36f842),this['commentsList']['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22comments-error\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Failed\x20to\x20load\x20comments\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22btn-ghost\x20btn-small\x22\x20onclick=\x22this.parentElement.parentElement.closest(\x27.comments-widget\x27).__widget.loadComments()\x22>Retry</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20';}finally{this['isLoading']=![];}}['renderComments'](){if(this['comments']['length']===0x0){this['commentsList']['innerHTML']='<div\x20class=\x22comments-empty\x22>No\x20comments\x20yet</div>';return;}this['commentsList']['innerHTML']='',this['comments']['forEach'](_0x2aec0a=>{const _0x469ac3=this['createCommentElement'](_0x2aec0a);this['commentsList']['appendChild'](_0x469ac3);});}['createCommentElement'](_0x27a051){const _0x296502=document['createElement']('div');_0x296502['className']='comment-item',_0x296502['dataset']['commentId']=_0x27a051['id'];const _0x2b4180=this['options']['currentUserId']&&_0x27a051['author']?.['userId']===this['options']['currentUserId'],_0x1af24a=this['formatDate'](_0x27a051['createdAt']),_0x17608c=_0x27a051['updatedAt']!==_0x27a051['createdAt'],_0x3d4fde=this['resolveAttachmentUrls'](_0x27a051['content']);let _0x8b1a38=window['marked']?window['marked']['parse'](_0x3d4fde):_0x3d4fde;_0x8b1a38=this['renderMentions'](_0x8b1a38),_0x296502['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22comment-header\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22comment-author\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22comment-author-name\x22>'+this['escapeHtml'](_0x27a051['author']?.['name']||'Anonymous')+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22comment-timestamp\x22\x20title=\x22'+new Date(_0x27a051['createdAt'])['toLocaleString']()+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x1af24a+(_0x17608c?'\x20(edited)':'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x2b4180?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22comment-actions\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22btn-icon-mini\x20comment-edit-btn\x22\x20title=\x22Edit\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20width=\x2212\x22\x20height=\x2212\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22>\x0a\x20\x20\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\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\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22btn-icon-mini\x20comment-delete-btn\x22\x20title=\x22Delete\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<svg\x20width=\x2212\x22\x20height=\x2212\x22\x20viewBox=\x220\x200\x2024\x2024\x22\x20fill=\x22none\x22\x20stroke=\x22currentColor\x22\x20stroke-width=\x222\x22\x20stroke-linecap=\x22round\x22\x20stroke-linejoin=\x22round\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<polyline\x20points=\x223\x206\x205\x206\x2021\x206\x22></polyline>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<path\x20d=\x22M19\x206v14a2\x202\x200\x200\x201-2\x202H7a2\x202\x200\x200\x201-2-2V6m3\x200V4a2\x202\x200\x200\x201\x202-2h4a2\x202\x200\x200\x201\x202\x202v2\x22></path>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</svg>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22comment-content\x22>'+_0x8b1a38+'</div>\x0a\x20\x20\x20\x20';if(_0x2b4180){const _0x27edb8=_0x296502['querySelector']('.comment-edit-btn'),_0x1ce62c=_0x296502['querySelector']('.comment-delete-btn');_0x27edb8?.['addEventListener']('click',()=>this['startEdit'](_0x27a051)),_0x1ce62c?.['addEventListener']('click',()=>this['deleteComment'](_0x27a051['id']));}return _0x296502;}['formatDate'](_0x55cb8c){const _0x4d13c3=new Date(_0x55cb8c),_0x255c00=new Date(),_0x444f6b=_0x255c00-_0x4d13c3,_0x104333=Math['floor'](_0x444f6b/0xea60),_0x79a101=Math['floor'](_0x444f6b/0x36ee80),_0x23c2b2=Math['floor'](_0x444f6b/0x5265c00);if(_0x104333<0x1)return'just\x20now';if(_0x104333<0x3c)return _0x104333+'m\x20ago';if(_0x79a101<0x18)return _0x79a101+'h\x20ago';if(_0x23c2b2<0x7)return _0x23c2b2+'d\x20ago';return _0x4d13c3['toLocaleDateString']();}['escapeHtml'](_0x23f488){const _0x2530fc=document['createElement']('div');return _0x2530fc['textContent']=_0x23f488,_0x2530fc['innerHTML'];}['resolveAttachmentUrls'](_0x5e3844){if(!_0x5e3844||!this['options']['taskId'])return _0x5e3844;const _0x236492=this['options']['getAPI'](),_0x2eb9ae=_0x236492['getBaseUrl']();let _0x4025f5=String(_0x5e3844)['replace'](/\]\(attachment:(?:\/\/)?([^)]+)\)/g,(_0x322ada,_0x582067)=>{const _0x3e324a=String(_0x582067||'')['trim']();if(!_0x3e324a)return _0x322ada;let _0x3e46f3=_0x3e324a;try{_0x3e46f3=decodeURIComponent(_0x3e324a);}catch{}return']('+_0x2eb9ae+'/tasks/'+this['options']['taskId']+'/attachments/'+encodeURIComponent(_0x3e46f3)+')';});return _0x4025f5;}['renderMentions'](_0x5b856f){if(!_0x5b856f)return _0x5b856f;return String(_0x5b856f)['replace'](/@?<a\s+href="mention:([^"]+)"[^>]*>([^<]+)<\/a>/g,(_0x54a590,_0xd8405b,_0x6d179e)=>{const _0x5d535a=this['escapeHtml'](_0x6d179e),_0x5c385e=this['escapeHtml'](_0xd8405b);return'<span\x20class=\x22mention\x22\x20data-mention-user-id=\x22'+_0x5c385e+'\x22>@'+_0x5d535a+'</span>';});}['startEdit'](_0x5eabd){this['editingCommentId']=_0x5eabd['id'],this['editor']['setValue'](_0x5eabd['content']),this['editor']['focus'](),this['cancelBtn']['hidden']=![],this['submitBtn']['querySelector']('.btn-text')['textContent']='Save',this['editor']['toolbar']&&this['editor']['toolbar']['classList']['remove']('comments-toolbar-hidden'),this['inputSection']['scrollIntoView']({'behavior':'smooth','block':'nearest'});}['cancelEdit'](){this['editingCommentId']=null,this['editor']['clear'](),this['cancelBtn']['hidden']=!![],this['submitBtn']['querySelector']('.btn-text')['textContent']='Add\x20Comment',this['submitBtn']['disabled']=!![],this['editor']['toolbar']&&!this['editor']['getValue']()?.['trim']()&&this['editor']['toolbar']['classList']['add']('comments-toolbar-hidden');}async['handleSubmit'](){const _0x1e0706=this['editor']['getValue']()?.['trim']();if(!_0x1e0706&&this['pendingAttachments']['length']===0x0||!this['options']['taskId'])return;this['setLoading'](!![]);try{const _0x86a685=this['options']['getAPI']();this['pendingAttachments']['length']>0x0&&this['options']['enableAttachments']&&(await _0x86a685['uploadAttachments'](this['options']['taskId'],this['pendingAttachments']),this['existingAttachments']['push'](...this['pendingAttachments']['map'](_0x1e07a1=>({'name':_0x1e07a1['name']}))),this['pendingAttachments']=[]);if(this['editingCommentId']){const _0x26f454=await _0x86a685['updateComment'](this['options']['taskId'],this['editingCommentId'],_0x1e0706),_0x3eb248=this['comments']['findIndex'](_0x42a00d=>_0x42a00d['id']===this['editingCommentId']);_0x3eb248!==-0x1&&(this['comments'][_0x3eb248]=_0x26f454['comment']);}else{const _0x393d6b=await _0x86a685['addComment'](this['options']['taskId'],_0x1e0706);this['comments']['push'](_0x393d6b['comment']);}this['renderComments'](),this['updateCount'](),this['cancelEdit'](),this['editor']['clear']();}catch(_0x392859){console['error']('Failed\x20to\x20save\x20comment:',_0x392859),alert('Failed\x20to\x20save\x20comment:\x20'+_0x392859['message']);}finally{this['setLoading'](![]);}}async['deleteComment'](_0x4210b9){const _0x13169a=await this['showDeleteConfirmModal']();if(!_0x13169a)return;try{const _0x2ce32a=this['options']['getAPI']();await _0x2ce32a['deleteComment'](this['options']['taskId'],_0x4210b9),this['comments']=this['comments']['filter'](_0x5ca869=>_0x5ca869['id']!==_0x4210b9),this['renderComments'](),this['updateCount']();}catch(_0x484924){console['error']('Failed\x20to\x20delete\x20comment:',_0x484924),alert('Failed\x20to\x20delete\x20comment:\x20'+_0x484924['message']);}}['showDeleteConfirmModal'](){return new Promise(_0x20276e=>{const _0x50535e=document['createElement']('div');_0x50535e['className']='comments-confirm-modal',_0x50535e['innerHTML']='\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22comments-confirm-backdrop\x22></div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22comments-confirm-dialog\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22comments-confirm-header\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<h3>Delete\x20Comment</h3>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22btn-icon\x20comments-confirm-close\x22\x20title=\x22Close\x22>×</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22comments-confirm-body\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p>Are\x20you\x20sure\x20you\x20want\x20to\x20delete\x20this\x20comment?\x20This\x20action\x20cannot\x20be\x20undone.</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22comments-confirm-footer\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22btn-ghost\x20btn-small\x20comments-confirm-cancel\x22>Cancel</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20type=\x22button\x22\x20class=\x22btn-danger\x20btn-small\x20comments-confirm-delete\x22>Delete</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20',document['body']['appendChild'](_0x50535e);const _0x5a943b=_0x469282=>{document['removeEventListener']('keydown',_0x322e44),_0x50535e['remove'](),_0x20276e(_0x469282);},_0x322e44=_0x2d7aba=>{if(_0x2d7aba['key']==='Escape')_0x5a943b(![]);};document['addEventListener']('keydown',_0x322e44),_0x50535e['querySelector']('.comments-confirm-backdrop')['addEventListener']('click',()=>_0x5a943b(![])),_0x50535e['querySelector']('.comments-confirm-close')['addEventListener']('click',()=>_0x5a943b(![])),_0x50535e['querySelector']('.comments-confirm-cancel')['addEventListener']('click',()=>_0x5a943b(![])),_0x50535e['querySelector']('.comments-confirm-delete')['addEventListener']('click',()=>_0x5a943b(!![])),_0x50535e['querySelector']('.comments-confirm-cancel')['focus']();});}['setLoading'](_0x58ea07){this['submitBtn']['disabled']=_0x58ea07,this['submitBtn']['querySelector']('.btn-text')['hidden']=_0x58ea07,this['submitBtn']['querySelector']('.btn-loading')['hidden']=!_0x58ea07;}['updateCount'](){const _0x26ffcb=this['comments']['length'],_0x5d3252=this['container']['querySelector']('#comments-count-badge');_0x5d3252&&(_0x5d3252['textContent']=_0x26ffcb,_0x5d3252['hidden']=_0x26ffcb===0x0);const _0x399236=this['container']['querySelector']('#comments-count');_0x399236&&(_0x399236['textContent']=_0x26ffcb>0x0?'('+_0x26ffcb+')':''),this['options']['onCommentsChanged']&&this['options']['onCommentsChanged'](this['comments']);}['getCommentCount'](){return this['comments']['length'];}['destroy'](){this['editor']&&this['editor']['destroy'](),this['container']['innerHTML']='';}}CommentsWidget['prototype']['_attachToContainer']=function(){this['container']['__widget']=this;};typeof window!=='undefined'&&(window['CommentsWidget']=CommentsWidget);
@@ -1 +1 @@
1
- (function(_0x100e46,_0x370cd6){const _0x34ce8e=_0x4c55,_0x2e25f0=_0x100e46();while(!![]){try{const _0x4f7fcb=-parseInt(_0x34ce8e(0x8d))/0x1+parseInt(_0x34ce8e(0x9b))/0x2*(-parseInt(_0x34ce8e(0xa0))/0x3)+-parseInt(_0x34ce8e(0x96))/0x4+-parseInt(_0x34ce8e(0x97))/0x5*(-parseInt(_0x34ce8e(0x89))/0x6)+parseInt(_0x34ce8e(0xad))/0x7+-parseInt(_0x34ce8e(0xc1))/0x8+parseInt(_0x34ce8e(0x7e))/0x9;if(_0x4f7fcb===_0x370cd6)break;else _0x2e25f0['push'](_0x2e25f0['shift']());}catch(_0x29b964){_0x2e25f0['push'](_0x2e25f0['shift']());}}}(_0x26c2,0x1c8d7));function _0x4c55(_0x502b29,_0x303243){_0x502b29=_0x502b29-0x74;const _0x26c23f=_0x26c2();let _0x4c558b=_0x26c23f[_0x502b29];if(_0x4c55['imaJDx']===undefined){var _0x3935b3=function(_0x5bf6e4){const _0x2b2aae='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x54aa82='',_0x1933c4='';for(let _0x238d53=0x0,_0x50d36c,_0x371529,_0x385961=0x0;_0x371529=_0x5bf6e4['charAt'](_0x385961++);~_0x371529&&(_0x50d36c=_0x238d53%0x4?_0x50d36c*0x40+_0x371529:_0x371529,_0x238d53++%0x4)?_0x54aa82+=String['fromCharCode'](0xff&_0x50d36c>>(-0x2*_0x238d53&0x6)):0x0){_0x371529=_0x2b2aae['indexOf'](_0x371529);}for(let _0x3a53e2=0x0,_0x1c3194=_0x54aa82['length'];_0x3a53e2<_0x1c3194;_0x3a53e2++){_0x1933c4+='%'+('00'+_0x54aa82['charCodeAt'](_0x3a53e2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1933c4);};_0x4c55['sxvZEB']=_0x3935b3,_0x4c55['lLIRbM']={},_0x4c55['imaJDx']=!![];}const _0x138948=_0x26c23f[0x0],_0x5ae88a=_0x502b29+_0x138948,_0x2418a5=_0x4c55['lLIRbM'][_0x5ae88a];return!_0x2418a5?(_0x4c558b=_0x4c55['sxvZEB'](_0x4c558b),_0x4c55['lLIRbM'][_0x5ae88a]=_0x4c558b):_0x4c558b=_0x2418a5,_0x4c558b;}function _0x26c2(){const _0x2e8291=['iJ48l2j1DhrVBJ4kicaGicaGica8l2rPDJ4kicaGicaGica8zgL2ignSyxnZpsjMAwXLlwrPzMyTy29UDgvUDca','zMLSBa','pgrPDIbJBgfZCZ0IzgLMzI1SAw5LigrPzMyTCMvTB3zLiJ48C3bHBIbJBgfZCZ0IzgLMzI1SAw5Llw51BsbKAwzMlwXPBMuTBNvTlw9Szci+','AMf2yxnJCMLWDa','AhvUA3m','y3bW','yMfZAa','mZaYmJiWmfr0s1bbzG','B2XK','pc9ZCgfUpGOGicaGicaGicaGica8C3bHBIbJBgfZCZ0IzMLSzs1KAwzMlxn0yxqIpGOGicaGicaGicaGicaGidXZCgfUignSyxnZpsjKAwzMlwfKzci+kW','Dw5RBM93BG','ywrKzwq','BMv3','EwfTBa','y29SBgfWC2vK','AM9PBG','Bwf0y2G','cIaGicaGidXKAxyGy2XHC3m9iMzPBguTzgLMzIiGAwq9iMzPBguT','oda0mZbvAg5Ozfu','pc9ZCgfUpJXZCgfUignSyxnZpsjKAwzMlwXPBMuTBNvTigrPzMyTBgLUzs1UDw0TBMv3iJ4','BwfW','ChL0Ag9U','mJe0otiWDurJA3ry','DMfSDwu','Aw5Zzxj0','zxnJyxbLshrTBa','pgrPDIbJBgfZCZ0IzgLMzI1SAw5LigrPzMyTywrKiJ48C3bHBIbJBgfZCZ0IzgLMzI1SAw5Llw51BsbKAwzMlwXPBMuTBNvTlw9Szci+pc9ZCgfUpJXZCgfUignSyxnZpsjKAwzMlwXPBMuTBNvTigrPzMyTBgLUzs1UDw0TBMv3iJ4','BwLU','Bwv0yq','BMv3ugf0Aa','C3bSAxq','mty4nda4thvevLnZ','mtbMq3zYDeG','ChvZAa','B2XKugf0Aa','zgLMzIaTlwDPDa','mJy3ntzYrvjpshu','C3rHCNrZv2L0Aa','zgLMzI13B3jKlxjLBw92zq','Dw5ZAgLMDa','z2v0tgfUz3vHz2u','m0LQsffxDa','pc9ZCgfUpGOGicaGicaGicaGicaGidXZCgfUignSyxnZpsjKAwzMlwrLBci+lq','pc9ZCgfUpJXZCgfUignSyxnZpsjKAwzMlwXPBMuTy29UDgvUDci+ia','pc9ZCgfUpGOGicaGicaGicaGica8l3nWyw4+cIaGicaGicaGica8l2rPDJ4kicaGicaGicaGidXIDxr0B24Gy2XHC3m9iMzPBguTzgLMzI10B2DNBguTyNrUiIbKyxrHlwrPzMyTAwq9iG','iJ4kicaGicaGicaGidXKAxyGy2XHC3m9iMzPBguTzgLMzI10AxrSzsi+cIaGicaGicaGicaGidXZCgfUignSyxnZpsjMAwXLlxn0yxr1CY1IywrNzsa','iIbPzd0I','BgvUz3rO','iIbKyxrHlwzPBguTBMfTzt0I','pc9ZCgfUpJWVzgL2pG','D29YzerPzMy','rgLMzIbZEw50yxGGAgLNAgXPz2H0Aw5NigvYCM9YoG','iJ4kicaGicaGica8zgL2ignSyxnZpsjMAwXLlwrPzMyTAgvHzgvYiIbKyxrHlwrPzMyTAwq9iG','CNvIEq','mtm5nJq1ohLnB05Nsq','DhLWzxnJCMLWDa','CMvTB3zL','C3vIC3rYAw5N','DgvZDa','BgLUzxm','AgLNAgXPz2H0','zgvSzxrL','zM9YrwfJAa','pc9ZCgfUpJXZCgfUignSyxnZpsjKAwzMlwXPBMuTBNvTigrPzMyTBgLUzs1UDw0TBMv3iJ48l3nWyw4+phnWyw4Gy2XHC3m9iMrPzMyTBgLUzs1JB250zw50iJ48C3bHBIbJBgfZCZ0IzgLMzI1WCMvMAxGIpI08l3nWyw4+','BwfYA2rVD24','y3nZ','AxnezwXLDgvK','ywrK','pc9KAxy+','iIb0ExbLpsjIDxr0B24IigfYAweTBgfIzwW9iG','pgrPDIbJBgfZCZ0IzgLMzI1ODw5RiJ48zgL2ignSyxnZpsjKAwzMlwH1BMSTAgvHzgvYiJ4','iIbKyxrHlwnVBgXHChnLzd0I','pgrPDIbJBgfZCZ0IzgLMzI1SAw5LigrPzMyTy29UDgv4Dci+phnWyw4Gy2XHC3m9iMrPzMyTBgLUzs1UDw0GzgLMzI1SAw5Llw51Bs1VBgqIpG','Bwf4','mtm5odaYngLet0TrAW','DhLWzq','zgvSzxrLza','AgvHzgvY','Bw9KAwzPzwq','BgLUzq','Cg9W','pc9ZCgfUpG','pc9KAxy+cIaGicaGidWVzgL2pGOGicaG','q29SBgfWC2u','CgHW','Eg1S','ANnVBG','Dhj1zq','zgvSzxrLzcbMAwXLig1Vzgu'];_0x26c2=function(){return _0x2e8291;};return _0x26c2();}import{Utils}from'./app.js';export function parsePatchContent(_0x54aa82){const _0xf7d937=_0x4c55,_0x1933c4=[],_0x238d53=_0x54aa82[_0xf7d937(0x95)]('\x0a');let _0x50d36c=null,_0x371529=null;for(const _0x385961 of _0x238d53){if(_0x385961['startsWith'](_0xf7d937(0x9a))){_0x50d36c&&_0x371529&&_0x50d36c[_0xf7d937(0x7b)]['push'](_0x371529);_0x50d36c&&_0x1933c4['push'](_0x50d36c);const _0x3a53e2=_0x385961[_0xf7d937(0x87)](/diff --git a\/(.+?) b\/(.+)/);_0x50d36c={'oldPath':_0x3a53e2?_0x3a53e2[0x1]:'','newPath':_0x3a53e2?_0x3a53e2[0x2]:'','hunks':[],'isDeleted':![]},_0x371529=null;}else{if(_0x385961[_0xf7d937(0x9c)](_0xf7d937(0x76))&&_0x50d36c)_0x50d36c[_0xf7d937(0xb9)]=!![];else{if(_0x385961[_0xf7d937(0x9c)]('@@'))_0x371529&&_0x50d36c&&_0x50d36c['hunks'][_0xf7d937(0x98)](_0x371529),_0x371529={'header':_0x385961,'lines':[]};else _0x371529&&_0x371529[_0xf7d937(0xb2)][_0xf7d937(0x98)](_0x385961);}}}return _0x50d36c&&_0x371529&&_0x50d36c[_0xf7d937(0x7b)][_0xf7d937(0x98)](_0x371529),_0x50d36c&&_0x1933c4[_0xf7d937(0x98)](_0x50d36c),_0x1933c4;}export function parseHunkHeader(_0x1c3194){const _0x594bcb=_0x4c55,_0xedd4a8=_0x1c3194[_0x594bcb(0x87)](/@@ -(\d+),?\d* \+(\d+),?\d* @@/);if(_0xedd4a8)return{'oldStart':parseInt(_0xedd4a8[0x1],0xa),'newStart':parseInt(_0xedd4a8[0x2],0xa)};return{'oldStart':0x1,'newStart':0x1};}export function highlightDiffLine(_0x98ed4a,_0x2ebc6a){const _0x16031c=_0x4c55,_0x4d9bd9=window['hljs']||(typeof hljs!=='undefined'?hljs:null);if(_0x4d9bd9&&_0x2ebc6a)try{const _0x23668c=_0x4d9bd9[_0x16031c(0x9f)](_0x2ebc6a)?_0x2ebc6a:null;if(_0x23668c)return _0x4d9bd9[_0x16031c(0xb3)](_0x98ed4a,{'language':_0x23668c})[_0x16031c(0x8e)];}catch(_0x53f937){console['error'](_0x16031c(0xaa),_0x53f937);}return Utils[_0x16031c(0x90)](_0x98ed4a);}export function getFileLanguage(_0x354119){const _0x2a0fee=_0x4c55,_0x5d95ab=_0x354119[_0x2a0fee(0x95)]('.')[_0x2a0fee(0xc7)]()['toLowerCase'](),_0x9661c9={'js':_0x2a0fee(0x7a),'jsx':_0x2a0fee(0x7a),'ts':_0x2a0fee(0xae),'tsx':'typescript','py':_0x2a0fee(0x8c),'java':'java','c':'c','cpp':_0x2a0fee(0x7c),'cs':'csharp','go':'go','rs':'rust','php':_0x2a0fee(0xcb),'rb':_0x2a0fee(0xac),'html':_0x2a0fee(0xcc),'css':_0x2a0fee(0xb8),'json':_0x2a0fee(0x74),'yml':_0x2a0fee(0x84),'yaml':_0x2a0fee(0x84),'md':_0x2a0fee(0xb7),'sh':_0x2a0fee(0x7d),'bash':'bash'};return _0x9661c9[_0x5d95ab]||null;}export function computeWordDiff(_0x127aeb,_0x19fc45){const _0x19a54b=_0x4c55,_0x392f4d=_0x6abad8=>{const _0x25e979=_0x4c55,_0x3c29b9=[];let _0x1f589b='',_0x443928=![];for(let _0x4eafd6=0x0;_0x4eafd6<_0x6abad8[_0x25e979(0xa6)];_0x4eafd6++){const _0x208da8=_0x6abad8[_0x4eafd6],_0x2bf3e2=/\s/[_0x25e979(0xb1)](_0x208da8);if(_0x1f589b==='')_0x1f589b=_0x208da8,_0x443928=_0x2bf3e2;else _0x2bf3e2===_0x443928?_0x1f589b+=_0x208da8:(_0x3c29b9[_0x25e979(0x98)](_0x1f589b),_0x1f589b=_0x208da8,_0x443928=_0x2bf3e2);}return _0x1f589b&&_0x3c29b9['push'](_0x1f589b),_0x3c29b9;},_0x3dd6b4=_0x392f4d(_0x127aeb),_0x44a0ff=_0x392f4d(_0x19fc45),_0x56c66d=_0x3dd6b4[_0x19a54b(0xa6)],_0x1d3eff=_0x44a0ff[_0x19a54b(0xa6)],_0x4005d2=Array(_0x56c66d+0x1)[_0x19a54b(0x78)](null)[_0x19a54b(0x8b)](()=>Array(_0x1d3eff+0x1)[_0x19a54b(0x78)](0x0));for(let _0x2e0413=0x1;_0x2e0413<=_0x56c66d;_0x2e0413++){for(let _0x1819d1=0x1;_0x1819d1<=_0x1d3eff;_0x1819d1++){_0x3dd6b4[_0x2e0413-0x1]===_0x44a0ff[_0x1819d1-0x1]?_0x4005d2[_0x2e0413][_0x1819d1]=_0x4005d2[_0x2e0413-0x1][_0x1819d1-0x1]+0x1:_0x4005d2[_0x2e0413][_0x1819d1]=Math[_0x19a54b(0xc0)](_0x4005d2[_0x2e0413-0x1][_0x1819d1],_0x4005d2[_0x2e0413][_0x1819d1-0x1]);}}const _0x4862c3={'old':[],'new':[]};let _0x2e4e74=_0x56c66d,_0x4a78e6=_0x1d3eff;const _0x38719e=[],_0x5cd126=[];while(_0x2e4e74>0x0||_0x4a78e6>0x0){if(_0x2e4e74>0x0&&_0x4a78e6>0x0&&_0x3dd6b4[_0x2e4e74-0x1]===_0x44a0ff[_0x4a78e6-0x1])_0x38719e[_0x19a54b(0x9e)]({'type':'equal','text':_0x3dd6b4[_0x2e4e74-0x1]}),_0x5cd126[_0x19a54b(0x9e)]({'type':'equal','text':_0x44a0ff[_0x4a78e6-0x1]}),_0x2e4e74--,_0x4a78e6--;else{if(_0x4a78e6>0x0&&(_0x2e4e74===0x0||_0x4005d2[_0x2e4e74][_0x4a78e6-0x1]>=_0x4005d2[_0x2e4e74-0x1][_0x4a78e6]))_0x5cd126['unshift']({'type':_0x19a54b(0x8f),'text':_0x44a0ff[_0x4a78e6-0x1]}),_0x4a78e6--;else _0x2e4e74>0x0&&(_0x38719e[_0x19a54b(0x9e)]({'type':_0x19a54b(0xb4),'text':_0x3dd6b4[_0x2e4e74-0x1]}),_0x2e4e74--);}}return _0x4862c3[_0x19a54b(0x7f)]=_0x38719e,_0x4862c3[_0x19a54b(0x83)]=_0x5cd126,_0x4862c3;}export function renderDiffLineWithWordHighlight(_0x20c6b6,_0x3225cb,_0xc11803,_0x1e8f5a){const _0x58c2c5=_0x4c55;if(!_0x3225cb||_0x3225cb['length']===0x0)return highlightDiffLine(_0x20c6b6,_0x1e8f5a);let _0x5595bd='';const _0x354160=_0xc11803===_0x58c2c5(0xba)?'diff-word-add':_0x58c2c5(0x9d),_0x4082f1=_0xc11803===_0x58c2c5(0xba)?_0x58c2c5(0x8f):_0x58c2c5(0xb4);for(const _0x5db0c4 of _0x3225cb){const _0x1d3dee=Utils[_0x58c2c5(0x90)](_0x5db0c4['text']);_0x5db0c4['type']===_0x4082f1?_0x5595bd+='<span\x20class=\x22'+_0x354160+'\x22>'+_0x1d3dee+_0x58c2c5(0xc8):_0x5595bd+=_0x1d3dee;}return _0x5595bd;}export function calculateDiffStats(_0x1bbb65){const _0x4f3b8e=_0x4c55;let _0x5ee589=0x0,_0x194dcd=0x0,_0x26b947=0x0;return _0x1bbb65[_0x4f3b8e(0xb5)](_0x42d538=>{const _0x323928=_0x4f3b8e;let _0x50d249=0x0,_0x3a8ecc=0x0;_0x42d538['hunks'][_0x323928(0xb5)](_0xfe8c76=>{const _0x515612=_0x323928;_0xfe8c76[_0x515612(0xb2)][_0x515612(0xb5)](_0x59c379=>{const _0x18c715=_0x515612;if(_0x59c379['startsWith']('+'))_0x50d249+=0x1;else{if(_0x59c379[_0x18c715(0x9c)]('-'))_0x3a8ecc+=0x1;}});}),(_0x50d249+_0x3a8ecc>0x0||_0x42d538[_0x323928(0xb9)])&&(_0x26b947+=0x1),_0x5ee589+=_0x50d249,_0x194dcd+=_0x3a8ecc;}),{'additions':_0x5ee589,'deletions':_0x194dcd,'files':_0x26b947};}export function getFileStatus(_0x4e4678,_0x310690,_0x12f564){const _0x4e5a8b=_0x4c55;if(_0x4e4678['isDeleted'])return _0x4e5a8b(0xc3);if(_0x310690>0x0&&_0x12f564===0x0)return _0x4e5a8b(0x82);return _0x4e5a8b(0xc5);}export function safeBase64(_0x460dab){try{return btoa(unescape(encodeURIComponent(_0x460dab)));}catch(_0x36fd96){return btoa(_0x460dab);}}export function getStorageKey(_0x35ca13,_0x45a4a9){return _0x35ca13+'-'+safeBase64(_0x45a4a9);}export function getCollapsedState(_0x23192d,_0x68cbf){const _0x4371e1=_0x4c55,_0x5d3793=localStorage['getItem'](getStorageKey(_0x23192d,_0x68cbf));return _0x5d3793===_0x4371e1(0x75);}export function renderUnifiedDiff(_0x58f7a2,_0x143750){const _0x179891=_0x4c55;return _0x58f7a2['map']((_0x46bc56,_0x63259b)=>{const _0x377542=_0x4c55,_0xb2b920=_0x46bc56[_0x377542(0x94)]||_0x46bc56[_0x377542(0x99)]||_0x377542(0x81),_0x57c016='diff-'+_0x143750+'-'+_0x63259b,_0x4f7f05=getFileLanguage(_0xb2b920),{additions:_0x14e40a,deletions:_0x53f72f}=calculateDiffStats([_0x46bc56]),_0xdae81f=getCollapsedState(_0x143750,_0xb2b920),_0x59e892=getFileStatus(_0x46bc56,_0x14e40a,_0x53f72f),_0x6453e2=_0x59e892==='added'?'A':_0x59e892===_0x377542(0xc3)?'D':'M',_0x4e441c=_0x46bc56['hunks'][_0x377542(0x8b)](_0x5148bb=>{const _0x51479b=_0x377542,{oldStart:_0x5f306c,newStart:_0x2366a2}=parseHunkHeader(_0x5148bb['header']);let _0x333deb=_0x5f306c,_0x2779de=_0x2366a2;const _0x379229=_0x5148bb[_0x51479b(0xb2)][_0x51479b(0x8b)](_0x1f241c=>({'line':_0x1f241c,'type':_0x1f241c['startsWith']('+')?_0x51479b(0xba):_0x1f241c[_0x51479b(0x9c)]('-')?'remove':_0x1f241c[_0x51479b(0x9c)]('\x5c')?_0x51479b(0x93):'context'}));let _0x478eea=0x0;while(_0x478eea<_0x379229[_0x51479b(0xa6)]){if(_0x379229[_0x478eea][_0x51479b(0xc2)]==='remove'){let _0x54b27b=_0x478eea,_0x9c0af7=_0x478eea;while(_0x9c0af7<_0x379229[_0x51479b(0xa6)]&&_0x379229[_0x9c0af7][_0x51479b(0xc2)]===_0x51479b(0xaf))_0x9c0af7++;let _0x2348e6=_0x9c0af7,_0x302bcd=_0x2348e6;while(_0x302bcd<_0x379229[_0x51479b(0xa6)]&&_0x379229[_0x302bcd][_0x51479b(0xc2)]==='add')_0x302bcd++;const _0x22a93f=_0x9c0af7-_0x54b27b,_0x3e2267=_0x302bcd-_0x2348e6,_0x42490e=Math[_0x51479b(0x92)](_0x22a93f,_0x3e2267);for(let _0x449236=0x0;_0x449236<_0x42490e;_0x449236++){const _0x14f5a5=_0x379229[_0x54b27b+_0x449236][_0x51479b(0xc6)][_0x51479b(0xb0)](0x1),_0x4a1d88=_0x379229[_0x2348e6+_0x449236][_0x51479b(0xc6)]['substring'](0x1),_0x537344=computeWordDiff(_0x14f5a5,_0x4a1d88);_0x379229[_0x54b27b+_0x449236][_0x51479b(0xa9)]=_0x537344[_0x51479b(0x7f)],_0x379229[_0x2348e6+_0x449236][_0x51479b(0xa9)]=_0x537344[_0x51479b(0x83)];}_0x478eea=_0x302bcd;}else _0x478eea++;}const _0x365238=_0x379229[_0x51479b(0x8b)](_0x50c070=>{const _0x4fcb4c=_0x51479b,_0x4ec4a4=_0x50c070[_0x4fcb4c(0xc6)];if(_0x4ec4a4[_0x4fcb4c(0x9c)]('+')){const _0xbc3eda=_0x4ec4a4[_0x4fcb4c(0xb0)](0x1),_0x109ed5=_0x50c070[_0x4fcb4c(0xa9)]?renderDiffLineWithWordHighlight(_0xbc3eda,_0x50c070[_0x4fcb4c(0xa9)],_0x4fcb4c(0xba),_0x4f7f05):highlightDiffLine(_0xbc3eda,_0x4f7f05),_0x445224=_0x4fcb4c(0x91)+_0x2779de+'</span><span\x20class=\x22diff-line-content\x22><span\x20class=\x22diff-prefix\x22>+</span>'+_0x109ed5+_0x4fcb4c(0xa8);return _0x2779de+=0x1,_0x445224;}if(_0x4ec4a4['startsWith']('-')){const _0x25275e=_0x4ec4a4[_0x4fcb4c(0xb0)](0x1),_0x3a5df0=_0x50c070[_0x4fcb4c(0xa9)]?renderDiffLineWithWordHighlight(_0x25275e,_0x50c070[_0x4fcb4c(0xa9)],_0x4fcb4c(0xaf),_0x4f7f05):highlightDiffLine(_0x25275e,_0x4f7f05),_0x47996c=_0x4fcb4c(0x79)+_0x333deb+_0x4fcb4c(0xb6)+_0x3a5df0+_0x4fcb4c(0xa8);return _0x333deb+=0x1,_0x47996c;}if(_0x4ec4a4[_0x4fcb4c(0x9c)]('\x5c'))return'<div\x20class=\x22diff-line\x20diff-meta\x22><span\x20class=\x22diff-line-num\x20diff-line-num-old\x22></span><span\x20class=\x22diff-line-num\x20diff-line-num-new\x22></span><span\x20class=\x22diff-line-content\x22>'+Utils[_0x4fcb4c(0x90)](_0x4ec4a4)+_0x4fcb4c(0xa8);const _0xec208=_0x4ec4a4[_0x4fcb4c(0x9c)]('\x20')?_0x4ec4a4[_0x4fcb4c(0xb0)](0x1):_0x4ec4a4,_0x43423d=highlightDiffLine(_0xec208,_0x4f7f05),_0x5970c0=_0x4fcb4c(0xbf)+_0x333deb+_0x4fcb4c(0x8a)+_0x2779de+_0x4fcb4c(0xa2)+_0x43423d+_0x4fcb4c(0xa8);return _0x333deb+=0x1,_0x2779de+=0x1,_0x5970c0;})[_0x51479b(0x86)]('');return _0x51479b(0xbd)+Utils[_0x51479b(0x90)](_0x5148bb[_0x51479b(0xc4)])+_0x51479b(0xbb)+_0x365238+_0x51479b(0xbb);})[_0x377542(0x86)](''),_0x58351e=_0x4e441c||'<div\x20class=\x22diff-hunk\x22><div\x20class=\x22diff-hunk-header\x22>No\x20textual\x20diff\x20available</div></div>';return _0x377542(0x88)+_0x57c016+_0x377542(0xab)+_0x57c016+_0x377542(0xa7)+Utils[_0x377542(0x90)](_0xb2b920)+_0x377542(0xa4)+_0x59e892+'\x22>'+_0x6453e2+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22file-diff-name\x22>'+Utils[_0x377542(0x90)](_0xb2b920)+_0x377542(0x80)+_0x14e40a+_0x377542(0xa1)+_0x53f72f+_0x377542(0xa3)+_0x57c016+_0x377542(0xbe)+_0xdae81f+_0x377542(0xbc)+(_0xdae81f?'Expand':_0x377542(0xca))+_0x377542(0x77)+(_0xdae81f?_0x377542(0x85):'')+_0x377542(0xa5)+_0x57c016+'\x22>'+_0x58351e+_0x377542(0xc9);})[_0x179891(0x86)]('');}
1
+ import{Utils}from'./app.js';export function parsePatchContent(_0x1fbf71){const _0x231400=[],_0x2694ca=_0x1fbf71['split']('\x0a');let _0x503d6f=null,_0x33879a=null;for(const _0xc80d08 of _0x2694ca){if(_0xc80d08['startsWith']('diff\x20--git')){_0x503d6f&&_0x33879a&&_0x503d6f['hunks']['push'](_0x33879a);_0x503d6f&&_0x231400['push'](_0x503d6f);const _0x3ace7d=_0xc80d08['match'](/diff --git a\/(.+?) b\/(.+)/);_0x503d6f={'oldPath':_0x3ace7d?_0x3ace7d[0x1]:'','newPath':_0x3ace7d?_0x3ace7d[0x2]:'','hunks':[],'isDeleted':![]},_0x33879a=null;}else{if(_0xc80d08['startsWith']('deleted\x20file\x20mode')&&_0x503d6f)_0x503d6f['isDeleted']=!![];else{if(_0xc80d08['startsWith']('@@'))_0x33879a&&_0x503d6f&&_0x503d6f['hunks']['push'](_0x33879a),_0x33879a={'header':_0xc80d08,'lines':[]};else _0x33879a&&_0x33879a['lines']['push'](_0xc80d08);}}}return _0x503d6f&&_0x33879a&&_0x503d6f['hunks']['push'](_0x33879a),_0x503d6f&&_0x231400['push'](_0x503d6f),_0x231400;}export function parseHunkHeader(_0x33c29e){const _0x18326b=_0x33c29e['match'](/@@ -(\d+),?\d* \+(\d+),?\d* @@/);if(_0x18326b)return{'oldStart':parseInt(_0x18326b[0x1],0xa),'newStart':parseInt(_0x18326b[0x2],0xa)};return{'oldStart':0x1,'newStart':0x1};}export function highlightDiffLine(_0x583280,_0x1b0d1b){const _0x5801c0=window['hljs']||(typeof hljs!=='undefined'?hljs:null);if(_0x5801c0&&_0x1b0d1b)try{const _0x4eafe6=_0x5801c0['getLanguage'](_0x1b0d1b)?_0x1b0d1b:null;if(_0x4eafe6)return _0x5801c0['highlight'](_0x583280,{'language':_0x4eafe6})['value'];}catch(_0x388ddb){console['error']('Diff\x20syntax\x20highlighting\x20error:',_0x388ddb);}return Utils['escapeHtml'](_0x583280);}export function getFileLanguage(_0x306891){const _0x64106f=_0x306891['split']('.')['pop']()['toLowerCase'](),_0xf5c3c0={'js':'javascript','jsx':'javascript','ts':'typescript','tsx':'typescript','py':'python','java':'java','c':'c','cpp':'cpp','cs':'csharp','go':'go','rs':'rust','php':'php','rb':'ruby','html':'xml','css':'css','json':'json','yml':'yaml','yaml':'yaml','md':'markdown','sh':'bash','bash':'bash'};return _0xf5c3c0[_0x64106f]||null;}export function computeWordDiff(_0x55f157,_0x802ced){const _0x3e8fb5=_0x201388=>{const _0x243e74=[];let _0x7a26aa='',_0x2cdb4f=![];for(let _0x590779=0x0;_0x590779<_0x201388['length'];_0x590779++){const _0x45f940=_0x201388[_0x590779],_0x1895d7=/\s/['test'](_0x45f940);if(_0x7a26aa==='')_0x7a26aa=_0x45f940,_0x2cdb4f=_0x1895d7;else _0x1895d7===_0x2cdb4f?_0x7a26aa+=_0x45f940:(_0x243e74['push'](_0x7a26aa),_0x7a26aa=_0x45f940,_0x2cdb4f=_0x1895d7);}return _0x7a26aa&&_0x243e74['push'](_0x7a26aa),_0x243e74;},_0x1bb1db=_0x3e8fb5(_0x55f157),_0x2e4005=_0x3e8fb5(_0x802ced),_0x57085a=_0x1bb1db['length'],_0x1d5a2c=_0x2e4005['length'],_0x21f28e=Array(_0x57085a+0x1)['fill'](null)['map'](()=>Array(_0x1d5a2c+0x1)['fill'](0x0));for(let _0x1e724c=0x1;_0x1e724c<=_0x57085a;_0x1e724c++){for(let _0x4f603f=0x1;_0x4f603f<=_0x1d5a2c;_0x4f603f++){_0x1bb1db[_0x1e724c-0x1]===_0x2e4005[_0x4f603f-0x1]?_0x21f28e[_0x1e724c][_0x4f603f]=_0x21f28e[_0x1e724c-0x1][_0x4f603f-0x1]+0x1:_0x21f28e[_0x1e724c][_0x4f603f]=Math['max'](_0x21f28e[_0x1e724c-0x1][_0x4f603f],_0x21f28e[_0x1e724c][_0x4f603f-0x1]);}}const _0x3a40cf={'old':[],'new':[]};let _0x5eeab2=_0x57085a,_0x475dfe=_0x1d5a2c;const _0x36c898=[],_0x203e3d=[];while(_0x5eeab2>0x0||_0x475dfe>0x0){if(_0x5eeab2>0x0&&_0x475dfe>0x0&&_0x1bb1db[_0x5eeab2-0x1]===_0x2e4005[_0x475dfe-0x1])_0x36c898['unshift']({'type':'equal','text':_0x1bb1db[_0x5eeab2-0x1]}),_0x203e3d['unshift']({'type':'equal','text':_0x2e4005[_0x475dfe-0x1]}),_0x5eeab2--,_0x475dfe--;else{if(_0x475dfe>0x0&&(_0x5eeab2===0x0||_0x21f28e[_0x5eeab2][_0x475dfe-0x1]>=_0x21f28e[_0x5eeab2-0x1][_0x475dfe]))_0x203e3d['unshift']({'type':'insert','text':_0x2e4005[_0x475dfe-0x1]}),_0x475dfe--;else _0x5eeab2>0x0&&(_0x36c898['unshift']({'type':'delete','text':_0x1bb1db[_0x5eeab2-0x1]}),_0x5eeab2--);}}return _0x3a40cf['old']=_0x36c898,_0x3a40cf['new']=_0x203e3d,_0x3a40cf;}export function renderDiffLineWithWordHighlight(_0x47281b,_0x32deb0,_0x262ffc,_0x17ef37){if(!_0x32deb0||_0x32deb0['length']===0x0)return highlightDiffLine(_0x47281b,_0x17ef37);let _0x260f4f='';const _0x39cf3f=_0x262ffc==='add'?'diff-word-add':'diff-word-remove',_0xaf0681=_0x262ffc==='add'?'insert':'delete';for(const _0x1fcd07 of _0x32deb0){const _0x84bc14=Utils['escapeHtml'](_0x1fcd07['text']);_0x1fcd07['type']===_0xaf0681?_0x260f4f+='<span\x20class=\x22'+_0x39cf3f+'\x22>'+_0x84bc14+'</span>':_0x260f4f+=_0x84bc14;}return _0x260f4f;}export function calculateDiffStats(_0x37bbd8){let _0x1bf4e5=0x0,_0x1f2108=0x0,_0x2e8b9f=0x0;return _0x37bbd8['forEach'](_0x99d6b9=>{let _0x530e26=0x0,_0x1a1a4d=0x0;_0x99d6b9['hunks']['forEach'](_0x4b93b9=>{_0x4b93b9['lines']['forEach'](_0x3b4dae=>{if(_0x3b4dae['startsWith']('+'))_0x530e26+=0x1;else{if(_0x3b4dae['startsWith']('-'))_0x1a1a4d+=0x1;}});}),(_0x530e26+_0x1a1a4d>0x0||_0x99d6b9['isDeleted'])&&(_0x2e8b9f+=0x1),_0x1bf4e5+=_0x530e26,_0x1f2108+=_0x1a1a4d;}),{'additions':_0x1bf4e5,'deletions':_0x1f2108,'files':_0x2e8b9f};}export function getFileStatus(_0x71ecff,_0x11638d,_0x1d47e6){if(_0x71ecff['isDeleted'])return'deleted';if(_0x11638d>0x0&&_0x1d47e6===0x0)return'added';return'modified';}export function safeBase64(_0x168f5f){try{return btoa(unescape(encodeURIComponent(_0x168f5f)));}catch(_0x4f6ac2){return btoa(_0x168f5f);}}export function getStorageKey(_0x3ad661,_0x46bb53){return _0x3ad661+'-'+safeBase64(_0x46bb53);}export function getCollapsedState(_0x521eaa,_0x45d68d){const _0x1789e6=localStorage['getItem'](getStorageKey(_0x521eaa,_0x45d68d));return _0x1789e6==='true';}export function renderUnifiedDiff(_0xcbec98,_0x174d7c){return _0xcbec98['map']((_0x331d6c,_0x5d40d5)=>{const _0x33af76=_0x331d6c['newPath']||_0x331d6c['oldPath']||'unknown',_0x26375b='diff-'+_0x174d7c+'-'+_0x5d40d5,_0x4dec0c=getFileLanguage(_0x33af76),{additions:_0x35eb75,deletions:_0x296917}=calculateDiffStats([_0x331d6c]),_0x327d5a=getCollapsedState(_0x174d7c,_0x33af76),_0x35eeaa=getFileStatus(_0x331d6c,_0x35eb75,_0x296917),_0xd17f17=_0x35eeaa==='added'?'A':_0x35eeaa==='deleted'?'D':'M',_0x4bbdfe=_0x331d6c['hunks']['map'](_0x4799c9=>{const {oldStart:_0x65f3d9,newStart:_0x971a54}=parseHunkHeader(_0x4799c9['header']);let _0x41171b=_0x65f3d9,_0x2109a8=_0x971a54;const _0x11eab6=_0x4799c9['lines']['map'](_0x571939=>({'line':_0x571939,'type':_0x571939['startsWith']('+')?'add':_0x571939['startsWith']('-')?'remove':_0x571939['startsWith']('\x5c')?'meta':'context'}));let _0x342a87=0x0;while(_0x342a87<_0x11eab6['length']){if(_0x11eab6[_0x342a87]['type']==='remove'){let _0xe4e232=_0x342a87,_0x44292f=_0x342a87;while(_0x44292f<_0x11eab6['length']&&_0x11eab6[_0x44292f]['type']==='remove')_0x44292f++;let _0x1adf38=_0x44292f,_0x390b3c=_0x1adf38;while(_0x390b3c<_0x11eab6['length']&&_0x11eab6[_0x390b3c]['type']==='add')_0x390b3c++;const _0x35ca26=_0x44292f-_0xe4e232,_0x2d5ab6=_0x390b3c-_0x1adf38,_0x4e6db9=Math['min'](_0x35ca26,_0x2d5ab6);for(let _0x3f0284=0x0;_0x3f0284<_0x4e6db9;_0x3f0284++){const _0x5b9172=_0x11eab6[_0xe4e232+_0x3f0284]['line']['substring'](0x1),_0x3c8447=_0x11eab6[_0x1adf38+_0x3f0284]['line']['substring'](0x1),_0xeb327b=computeWordDiff(_0x5b9172,_0x3c8447);_0x11eab6[_0xe4e232+_0x3f0284]['wordDiff']=_0xeb327b['old'],_0x11eab6[_0x1adf38+_0x3f0284]['wordDiff']=_0xeb327b['new'];}_0x342a87=_0x390b3c;}else _0x342a87++;}const _0x3d5226=_0x11eab6['map'](_0x4db92f=>{const _0x3fba89=_0x4db92f['line'];if(_0x3fba89['startsWith']('+')){const _0x5830ae=_0x3fba89['substring'](0x1),_0x398706=_0x4db92f['wordDiff']?renderDiffLineWithWordHighlight(_0x5830ae,_0x4db92f['wordDiff'],'add',_0x4dec0c):highlightDiffLine(_0x5830ae,_0x4dec0c),_0x374508='<div\x20class=\x22diff-line\x20diff-add\x22><span\x20class=\x22diff-line-num\x20diff-line-num-old\x22></span><span\x20class=\x22diff-line-num\x20diff-line-num-new\x22>'+_0x2109a8+'</span><span\x20class=\x22diff-line-content\x22><span\x20class=\x22diff-prefix\x22>+</span>'+_0x398706+'</span></div>';return _0x2109a8+=0x1,_0x374508;}if(_0x3fba89['startsWith']('-')){const _0x40d1de=_0x3fba89['substring'](0x1),_0x338d48=_0x4db92f['wordDiff']?renderDiffLineWithWordHighlight(_0x40d1de,_0x4db92f['wordDiff'],'remove',_0x4dec0c):highlightDiffLine(_0x40d1de,_0x4dec0c),_0x2284ad='<div\x20class=\x22diff-line\x20diff-remove\x22><span\x20class=\x22diff-line-num\x20diff-line-num-old\x22>'+_0x41171b+'</span><span\x20class=\x22diff-line-num\x20diff-line-num-new\x22></span><span\x20class=\x22diff-line-content\x22><span\x20class=\x22diff-prefix\x22>-</span>'+_0x338d48+'</span></div>';return _0x41171b+=0x1,_0x2284ad;}if(_0x3fba89['startsWith']('\x5c'))return'<div\x20class=\x22diff-line\x20diff-meta\x22><span\x20class=\x22diff-line-num\x20diff-line-num-old\x22></span><span\x20class=\x22diff-line-num\x20diff-line-num-new\x22></span><span\x20class=\x22diff-line-content\x22>'+Utils['escapeHtml'](_0x3fba89)+'</span></div>';const _0x599f28=_0x3fba89['startsWith']('\x20')?_0x3fba89['substring'](0x1):_0x3fba89,_0xc5f0d8=highlightDiffLine(_0x599f28,_0x4dec0c),_0xea5853='<div\x20class=\x22diff-line\x20diff-context\x22><span\x20class=\x22diff-line-num\x20diff-line-num-old\x22>'+_0x41171b+'</span><span\x20class=\x22diff-line-num\x20diff-line-num-new\x22>'+_0x2109a8+'</span><span\x20class=\x22diff-line-content\x22>\x20'+_0xc5f0d8+'</span></div>';return _0x41171b+=0x1,_0x2109a8+=0x1,_0xea5853;})['join']('');return'<div\x20class=\x22diff-hunk\x22><div\x20class=\x22diff-hunk-header\x22>'+Utils['escapeHtml'](_0x4799c9['header'])+'</div>'+_0x3d5226+'</div>';})['join'](''),_0x3eba1f=_0x4bbdfe||'<div\x20class=\x22diff-hunk\x22><div\x20class=\x22diff-hunk-header\x22>No\x20textual\x20diff\x20available</div></div>';return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-diff\x22\x20id=\x22file-'+_0x26375b+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-diff-header\x22\x20data-diff-id=\x22'+_0x26375b+'\x22\x20data-file-name=\x22'+Utils['escapeHtml'](_0x33af76)+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-diff-title\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22file-status-badge\x20'+_0x35eeaa+'\x22>'+_0xd17f17+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22file-diff-name\x22>'+Utils['escapeHtml'](_0x33af76)+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22file-diff-stat\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22diff-add\x22>+'+_0x35eb75+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22diff-del\x22>-'+_0x296917+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22file-diff-toggle-btn\x22\x20data-diff-id=\x22'+_0x26375b+'\x22\x20data-collapsed=\x22'+_0x327d5a+'\x22\x20type=\x22button\x22\x20aria-label=\x22'+(_0x327d5a?'Expand':'Collapse')+'\x22></button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-diff-content\x20'+(_0x327d5a?'collapsed':'')+'\x22\x20id=\x22'+_0x26375b+'\x22>'+_0x3eba1f+'</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';})['join']('');}
@@ -177,6 +177,7 @@ When creating an IBM i connection, select one or more features:
177
177
 
178
178
  - **SQL** — Database access via DB2. Agents use the `sql` skill to execute queries, inspect schemas, and verify data. Connectivity is provided by [Profound Logic Remote Access Server (RAS)](https://profoundlogicsupport.atlassian.net/wiki/x/GgAoYw), which must be installed on the IBM i system. Requires a password.
179
179
  - **Build** — IBM i program compilation using `codermake`. Each task gets its own isolated build library, created automatically when tasks start and cleaned up when they end. Requires an SSH key. Additional fields appear for **Build Repo** (which environment repository `codermake` runs in), optional **Build Directory** (subdirectory within the repo), and **Build Library Name Prefix** (1–5 character prefix for task library names, e.g., `AITSK`).
180
+ - **Sync** — Sync approved task changes to an IBM i library. When enabled, the approval dialog offers a **Sync to IBM i** checkbox, and approved tasks show a **Sync to IBM i** button for syncing after the fact. Source members are created from changed files and written to the specified library via SSH. Requires an SSH key. See [IBM i Sync](tasks/approval-and-deployment.md#ibm-i-sync) for usage details.
180
181
  - **SSH** — SSH shell access to the IBM i system. Agents use the `ibmi-clcmd` skill to run CL commands remotely. Requires an SSH key.
181
182
  - **Interactive Sessions** — Agent-driven interactive testing through Profound UI. Agents can operate 5250 terminal and Rich Display sessions, with recordings visible in task visualizations. Requires a password. Additional fields appear for **PUI Base URL**, **PUI Render Path**, and **PUI Launch Path**. This feature requires the Tasks availability scope.
182
183
 
@@ -84,6 +84,42 @@ The button appears only when the task is approved, pushed to a new branch (diffe
84
84
  - PR links appear in task detail
85
85
  - Review and merge through Git provider
86
86
 
87
+ ## IBM i Sync
88
+
89
+ For environments with an IBM i connection that has the **Sync** feature enabled, you can sync changed source files directly to an IBM i library. This writes source members to the target library via SSH—useful for getting code onto IBM i for integration with traditional source member-based IBM i source control / change management systems.
90
+
91
+ ### From Approval Dialog
92
+
93
+ Sync as part of the approval step:
94
+
95
+ 1. Click **Approve** on a completed task
96
+ 2. Check **Sync to IBM i** (appears only when the Sync feature is configured)
97
+ 3. Enter a **library name** (max 10 characters, alphanumeric)
98
+ 4. Click **Commit Changes** — approval proceeds, then the sync runs automatically
99
+ 5. A live log streams the sync progress
100
+
101
+ The library is created if it doesn't exist. Source physical files and members are created from the changed files.
102
+
103
+ ### After Approval
104
+
105
+ If you already approved without syncing, or need to sync again to a different library:
106
+
107
+ 1. Click **Sync to IBM i** button (top-right actions on task detail)
108
+ 2. Enter the target **library name**
109
+ 3. Click **Sync** to start
110
+ 4. A live log streams the sync progress
111
+
112
+ The button appears only when the task is approved and the environment has an IBM i connection with the Sync feature.
113
+
114
+ ### Sync Details
115
+
116
+ After a sync completes, the task metadata shows the synced library name, timestamp, and a link to view the full sync log.
117
+
118
+ File mapping follows IBM i conventions:
119
+ - **Member name** — filename without extensions (max 10 characters)
120
+ - **Source type** — last file extension (e.g., `RPGLE`, `SQL`)
121
+ - **Source physical file** — parent directory name (e.g., `QRPGLESRC`)
122
+
87
123
  ## Deployment Workflow
88
124
 
89
125
  ### Full Task Lifecycle
@@ -2165,7 +2165,7 @@
2165
2165
  <label class="checkbox-label"><input type="checkbox" id="feature-sql" value="sql" checked> SQL</label>
2166
2166
  <label class="checkbox-label"><input type="checkbox" id="feature-build" value="build"> Build objects</label>
2167
2167
  <label class="checkbox-label"><input type="checkbox" id="feature-ssh" value="ssh"> SSH</label>
2168
- <label class="checkbox-label" hidden><input type="checkbox" id="feature-sync" value="sync"> Sync</label>
2168
+ <label class="checkbox-label"><input type="checkbox" id="feature-sync" value="sync"> Sync</label>
2169
2169
  <label class="checkbox-label"><input type="checkbox" id="feature-interactive" value="interactive"> Agent interactive sessions</label>
2170
2170
  </div>
2171
2171
  </div>