@profoundlogic/coderflow-server 0.8.4 → 0.8.6

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 (179) hide show
  1. package/dist/coder-server.js +1 -1
  2. package/dist/config.js +1 -1
  3. package/dist/lib/agent-keepalive.js +1 -1
  4. package/dist/lib/agent-models.js +1 -1
  5. package/dist/lib/api-keys.js +1 -1
  6. package/dist/lib/apiKeys.js +1 -1
  7. package/dist/lib/app-server-ports.js +1 -1
  8. package/dist/lib/auto-judge.js +1 -1
  9. package/dist/lib/automation-service.js +1 -1
  10. package/dist/lib/basic-auth.js +1 -1
  11. package/dist/lib/bindings.js +1 -1
  12. package/dist/lib/build-history.js +1 -1
  13. package/dist/lib/build-output-service.js +1 -1
  14. package/dist/lib/build-scheduler.js +1 -1
  15. package/dist/lib/build-service.js +1 -1
  16. package/dist/lib/ca-certificates.js +1 -1
  17. package/dist/lib/claude-oauth-refresh.js +1 -1
  18. package/dist/lib/cli/build.js +1 -1
  19. package/dist/lib/cli/cleanup-users.js +1 -1
  20. package/dist/lib/cli/config-command.js +1 -1
  21. package/dist/lib/cli/config.js +1 -1
  22. package/dist/lib/cli/create-user.js +1 -1
  23. package/dist/lib/cli/grant-admin.js +1 -1
  24. package/dist/lib/cli/init.js +1 -1
  25. package/dist/lib/cli/jira.js +1 -1
  26. package/dist/lib/cli/license.js +1 -1
  27. package/dist/lib/cli/list-roles.js +1 -1
  28. package/dist/lib/cli/list-users.js +1 -1
  29. package/dist/lib/cli/server-manager.js +1 -1
  30. package/dist/lib/cli/set-password.js +1 -1
  31. package/dist/lib/compression-filter.js +1 -1
  32. package/dist/lib/config-migration.js +1 -1
  33. package/dist/lib/container-credential-sync.js +1 -1
  34. package/dist/lib/container-tokens.js +1 -1
  35. package/dist/lib/data-dir.js +1 -1
  36. package/dist/lib/deployment-history.js +1 -1
  37. package/dist/lib/deployment-service.js +1 -1
  38. package/dist/lib/docker-utils.js +1 -1
  39. package/dist/lib/email.js +1 -1
  40. package/dist/lib/emailTemplates.js +1 -1
  41. package/dist/lib/entitlement.js +1 -1
  42. package/dist/lib/external-connections.js +1 -1
  43. package/dist/lib/fetch-utils.js +1 -1
  44. package/dist/lib/git-commit-details-route.js +1 -1
  45. package/dist/lib/git-history-diff-guardrails.js +1 -1
  46. package/dist/lib/git-provider-service.js +1 -1
  47. package/dist/lib/git-provider-setup/github-setup-handler.js +1 -1
  48. package/dist/lib/git-provider-setup/index.js +1 -1
  49. package/dist/lib/git-provider-setup/setup-factory.js +1 -1
  50. package/dist/lib/git-provider-setup/setup-interface.js +1 -1
  51. package/dist/lib/git-providers/azure-devops-provider.js +1 -1
  52. package/dist/lib/git-providers/github-app-provider.js +1 -1
  53. package/dist/lib/git-providers/index.js +1 -1
  54. package/dist/lib/git-providers/provider-factory.js +1 -1
  55. package/dist/lib/git-providers/provider-interface.js +1 -1
  56. package/dist/lib/github-urls.js +1 -1
  57. package/dist/lib/group-objective-linking.js +1 -1
  58. package/dist/lib/ibmi-sync.js +1 -1
  59. package/dist/lib/jira-client.js +1 -1
  60. package/dist/lib/judge-blinding.js +1 -1
  61. package/dist/lib/logger.js +1 -1
  62. package/dist/lib/memory-utils.js +1 -1
  63. package/dist/lib/migration-to-scoped-rbac.js +1 -1
  64. package/dist/lib/model-fetcher.js +1 -1
  65. package/dist/lib/notifications.js +1 -1
  66. package/dist/lib/objective-context.js +1 -1
  67. package/dist/lib/oidc-auth.js +1 -1
  68. package/dist/lib/oidc-device-flow.js +1 -1
  69. package/dist/lib/passwordTokens.js +1 -1
  70. package/dist/lib/permission-resolver.js +1 -1
  71. package/dist/lib/pin-cascade.js +1 -1
  72. package/dist/lib/provider-accounts.js +1 -1
  73. package/dist/lib/provider-oauth.js +1 -1
  74. package/dist/lib/provider-profile.js +1 -1
  75. package/dist/lib/provider-token-refresh.js +1 -1
  76. package/dist/lib/rbac-user-state.js +1 -1
  77. package/dist/lib/request-url.js +1 -1
  78. package/dist/lib/rewind.js +1 -1
  79. package/dist/lib/role-definitions.js +1 -1
  80. package/dist/lib/roles.js +1 -1
  81. package/dist/lib/secrets.js +1 -1
  82. package/dist/lib/setup-repo-git-auth.js +1 -1
  83. package/dist/lib/state-capture.js +1 -1
  84. package/dist/lib/static-files.js +1 -1
  85. package/dist/lib/task-aliases.js +1 -1
  86. package/dist/lib/task-container-init.js +1 -1
  87. package/dist/lib/task-context-usage.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/playwright.task-terminal.config.js +1 -1
  101. package/dist/routes/apiKeys.js +1 -1
  102. package/dist/routes/auth-oidc.js +1 -1
  103. package/dist/routes/auth.js +1 -1
  104. package/dist/routes/automations.js +1 -1
  105. package/dist/routes/bindings.js +1 -1
  106. package/dist/routes/build.js +1 -1
  107. package/dist/routes/containers.js +1 -1
  108. package/dist/routes/deploy-task.js +1 -1
  109. package/dist/routes/environment-management.js +1 -1
  110. package/dist/routes/environments.js +1 -1
  111. package/dist/routes/external-skills.js +1 -1
  112. package/dist/routes/git-credentials.js +1 -1
  113. package/dist/routes/git-oauth.js +1 -1
  114. package/dist/routes/git-provider-setup.js +1 -1
  115. package/dist/routes/health.js +1 -1
  116. package/dist/routes/jira.js +1 -1
  117. package/dist/routes/logs.js +1 -1
  118. package/dist/routes/objective-management.js +1 -1
  119. package/dist/routes/password.js +1 -1
  120. package/dist/routes/prompt.js +1 -1
  121. package/dist/routes/provider-auth.js +1 -1
  122. package/dist/routes/qa.js +1 -1
  123. package/dist/routes/roles.js +1 -1
  124. package/dist/routes/settings.js +1 -1
  125. package/dist/routes/skill-management.js +1 -1
  126. package/dist/routes/skills.js +1 -1
  127. package/dist/routes/stats.js +1 -1
  128. package/dist/routes/tasks.js +1 -1
  129. package/dist/routes/teams.js +1 -1
  130. package/dist/routes/templates.js +1 -1
  131. package/dist/routes/test-task.js +1 -1
  132. package/dist/routes/test.js +1 -1
  133. package/dist/routes/users.js +1 -1
  134. package/dist/routes/visualizations.js +1 -1
  135. package/dist/scripts/create-user.js +1 -1
  136. package/dist/scripts/migrate-config-to-data-dir.js +1 -1
  137. package/dist/start.js +1 -1
  138. package/dist/web-ui/public/activity-detail-modal.js +1 -1
  139. package/dist/web-ui/public/activity-feed.js +1 -1
  140. package/dist/web-ui/public/activity-formatters.js +1 -1
  141. package/dist/web-ui/public/admin.css +60 -0
  142. package/dist/web-ui/public/admin.html +6 -0
  143. package/dist/web-ui/public/admin.js +1 -1
  144. package/dist/web-ui/public/agent-event-parser.js +1 -1
  145. package/dist/web-ui/public/app.js +1 -1
  146. package/dist/web-ui/public/approve-dialog.js +1 -1
  147. package/dist/web-ui/public/automation-links.js +1 -1
  148. package/dist/web-ui/public/automation-schedule.js +1 -1
  149. package/dist/web-ui/public/comments-widget.js +1 -1
  150. package/dist/web-ui/public/diff-utils.js +1 -1
  151. package/dist/web-ui/public/environments.js +1 -1
  152. package/dist/web-ui/public/feedback-widget.js +1 -1
  153. package/dist/web-ui/public/file-selection-tree.js +1 -1
  154. package/dist/web-ui/public/git-history-lazy-utils.js +1 -1
  155. package/dist/web-ui/public/git-history.js +1 -1
  156. package/dist/web-ui/public/git-status.js +1 -1
  157. package/dist/web-ui/public/ibmi-file-filter.js +1 -1
  158. package/dist/web-ui/public/index.js +1 -1
  159. package/dist/web-ui/public/login.js +1 -1
  160. package/dist/web-ui/public/markdown-editor.js +1 -1
  161. package/dist/web-ui/public/markdown-file-editor.js +1 -1
  162. package/dist/web-ui/public/modal-maximize.js +1 -1
  163. package/dist/web-ui/public/notifications.js +1 -1
  164. package/dist/web-ui/public/permissions.js +1 -1
  165. package/dist/web-ui/public/pr-dialog.js +1 -1
  166. package/dist/web-ui/public/roles.js +1 -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/task-judging-helpers.js +1 -1
  173. package/dist/web-ui/public/task.js +1 -1
  174. package/dist/web-ui/public/teams.js +1 -1
  175. package/dist/web-ui/public/terminal.js +1 -1
  176. package/dist/web-ui/public/theme.js +1 -1
  177. package/dist/web-ui/public/users.js +1 -1
  178. package/dist/web-ui/public/variant-grouping.js +1 -1
  179. package/package.json +1 -1
@@ -1 +1 @@
1
- export function escapeHtml(_0x59bc29){if(!_0x59bc29)return'';return String(_0x59bc29)['replace'](/&/g,'&amp;')['replace'](/</g,'&lt;')['replace'](/>/g,'&gt;')['replace'](/"/g,'&quot;')['replace'](/'/g,'&#039;');}function computeLineDiff(_0x4070ca,_0x14587d,_0x54d2be,_0x5f169d){const _0x3d3314=(_0x4070ca||'')['split']('\x0a'),_0x290f5a=(_0x14587d||'')['split']('\x0a'),_0x2dcf83=(_0x54d2be||0x1)-0x1,_0x6b23c4=(_0x5f169d||_0x54d2be||0x1)-0x1,_0x75dab8=computeLCS(_0x3d3314,_0x290f5a),_0x9f87ca={'left':[],'right':[]};let _0x612b6f=0x0,_0x2106b8=0x0,_0x2fd81b=0x0;while(_0x612b6f<_0x3d3314['length']||_0x2106b8<_0x290f5a['length']){if(_0x2fd81b<_0x75dab8['length']&&_0x612b6f<_0x3d3314['length']&&_0x3d3314[_0x612b6f]===_0x75dab8[_0x2fd81b]&&_0x2106b8<_0x290f5a['length']&&_0x290f5a[_0x2106b8]===_0x75dab8[_0x2fd81b])_0x9f87ca['left']['push']({'type':'context','content':_0x3d3314[_0x612b6f],'lineNum':_0x612b6f+0x1+_0x2dcf83}),_0x9f87ca['right']['push']({'type':'context','content':_0x290f5a[_0x2106b8],'lineNum':_0x2106b8+0x1+_0x6b23c4}),_0x612b6f++,_0x2106b8++,_0x2fd81b++;else{if(_0x2fd81b<_0x75dab8['length']&&_0x2106b8<_0x290f5a['length']&&_0x290f5a[_0x2106b8]===_0x75dab8[_0x2fd81b])_0x9f87ca['left']['push']({'type':'remove','content':_0x3d3314[_0x612b6f],'lineNum':_0x612b6f+0x1+_0x2dcf83}),_0x9f87ca['right']['push']({'type':'empty','content':'','lineNum':null}),_0x612b6f++;else{if(_0x2fd81b<_0x75dab8['length']&&_0x612b6f<_0x3d3314['length']&&_0x3d3314[_0x612b6f]===_0x75dab8[_0x2fd81b])_0x9f87ca['left']['push']({'type':'empty','content':'','lineNum':null}),_0x9f87ca['right']['push']({'type':'add','content':_0x290f5a[_0x2106b8],'lineNum':_0x2106b8+0x1+_0x6b23c4}),_0x2106b8++;else{if(_0x612b6f<_0x3d3314['length']&&_0x2106b8<_0x290f5a['length'])_0x9f87ca['left']['push']({'type':'remove','content':_0x3d3314[_0x612b6f],'lineNum':_0x612b6f+0x1+_0x2dcf83}),_0x9f87ca['right']['push']({'type':'add','content':_0x290f5a[_0x2106b8],'lineNum':_0x2106b8+0x1+_0x6b23c4}),_0x612b6f++,_0x2106b8++;else{if(_0x612b6f<_0x3d3314['length'])_0x9f87ca['left']['push']({'type':'remove','content':_0x3d3314[_0x612b6f],'lineNum':_0x612b6f+0x1+_0x2dcf83}),_0x9f87ca['right']['push']({'type':'empty','content':'','lineNum':null}),_0x612b6f++;else _0x2106b8<_0x290f5a['length']&&(_0x9f87ca['left']['push']({'type':'empty','content':'','lineNum':null}),_0x9f87ca['right']['push']({'type':'add','content':_0x290f5a[_0x2106b8],'lineNum':_0x2106b8+0x1+_0x6b23c4}),_0x2106b8++);}}}}}return _0x9f87ca;}function computeLCS(_0x23399a,_0x5da314){const _0x181fc8=_0x23399a['length'],_0x27c89e=_0x5da314['length'],_0x324d89=Array(_0x181fc8+0x1)['fill'](null)['map'](()=>Array(_0x27c89e+0x1)['fill'](0x0));for(let _0x40dd85=0x1;_0x40dd85<=_0x181fc8;_0x40dd85++){for(let _0x41f48c=0x1;_0x41f48c<=_0x27c89e;_0x41f48c++){_0x23399a[_0x40dd85-0x1]===_0x5da314[_0x41f48c-0x1]?_0x324d89[_0x40dd85][_0x41f48c]=_0x324d89[_0x40dd85-0x1][_0x41f48c-0x1]+0x1:_0x324d89[_0x40dd85][_0x41f48c]=Math['max'](_0x324d89[_0x40dd85-0x1][_0x41f48c],_0x324d89[_0x40dd85][_0x41f48c-0x1]);}}const _0xde2a22=[];let _0x16d5de=_0x181fc8,_0x309ea2=_0x27c89e;while(_0x16d5de>0x0&&_0x309ea2>0x0){if(_0x23399a[_0x16d5de-0x1]===_0x5da314[_0x309ea2-0x1])_0xde2a22['unshift'](_0x23399a[_0x16d5de-0x1]),_0x16d5de--,_0x309ea2--;else _0x324d89[_0x16d5de-0x1][_0x309ea2]>_0x324d89[_0x16d5de][_0x309ea2-0x1]?_0x16d5de--:_0x309ea2--;}return _0xde2a22;}function renderEditDiffLine(_0x12b210,_0x9be567){const _0xb4fbe2=_0x12b210['lineNum']!==null?String(_0x12b210['lineNum'])['padStart'](0x4,'\x20'):'\x20\x20\x20\x20',_0x11306f=escapeHtml(_0x12b210['content']);let _0x5ef9ec='edit-diff-line',_0x12b5be='\x20';switch(_0x12b210['type']){case'add':_0x5ef9ec+='\x20edit-diff-add',_0x12b5be='+';break;case'remove':_0x5ef9ec+='\x20edit-diff-remove',_0x12b5be='-';break;case'empty':_0x5ef9ec+='\x20edit-diff-empty',_0x12b5be='\x20';break;default:_0x5ef9ec+='\x20edit-diff-context',_0x12b5be='\x20';}return'<div\x20class=\x22'+_0x5ef9ec+'\x22><span\x20class=\x22edit-diff-line-num\x22>'+_0xb4fbe2+'</span><span\x20class=\x22edit-diff-prefix\x22>'+_0x12b5be+'</span><span\x20class=\x22edit-diff-content\x22>'+(_0x11306f||'&nbsp;')+'</span></div>';}export function formatBashDetail(_0x2afc78){if(!_0x2afc78)return'<p>No\x20data\x20available</p>';if(_0x2afc78['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20bash-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Command:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-code\x22>'+escapeHtml(_0x2afc78['toolInput']?.['command']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x2afc78['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';if(_0x2afc78['stdout']!==undefined||_0x2afc78['stderr']!==undefined||_0x2afc78['aggregated_output']!==undefined){const _0x43a0c5=_0x2afc78['aggregated_output']&&_0x2afc78['aggregated_output']['trim']()['length']>0x0,_0x156427=!_0x43a0c5&&_0x2afc78['stdout']&&_0x2afc78['stdout']['trim']()['length']>0x0,_0x57198e=_0x2afc78['stderr']&&_0x2afc78['stderr']['trim']()['length']>0x0;return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20bash-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Command:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-code\x22>'+escapeHtml(_0x2afc78['command']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x43a0c5?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Output:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x2afc78['aggregated_output'])+'</pre>\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\x20\x20'+(_0x156427?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Output:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x2afc78['stdout'])+'</pre>\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\x20\x20'+(_0x57198e?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error\x20Output:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x2afc78['stderr'])+'</pre>\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\x20\x20'+(!_0x43a0c5&&!_0x156427&&!_0x57198e?'<div\x20class=\x22tool-section\x22><p\x20class=\x22muted-text\x22>No\x20output</p></div>':'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Exit\x20Code:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22exit-code\x20'+(_0x2afc78['exitCode']===0x0?'success':'error')+'\x22>'+_0x2afc78['exitCode']+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';}return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20bash-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Command:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-code\x22>'+escapeHtml(_0x2afc78['command']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Output:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x2afc78['output']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatReadDetail(_0x3303e2){if(!_0x3303e2)return'<p>No\x20data\x20available</p>';if(_0x3303e2['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20read-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>File:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x3303e2['toolInput']?.['file_path']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x3303e2['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20read-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>File:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x3303e2['filePath']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Content:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x3303e2['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatWriteDetail(_0x53253a){if(!_0x53253a)return'<p>No\x20data\x20available</p>';if(_0x53253a['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20write-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>File:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x53253a['toolInput']?.['file_path']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x53253a['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';const _0x1ac322=_0x53253a['content']['length']>0xc350?_0x53253a['content']['substring'](0x0,0xc350)+'\x0a\x0a...\x20[Content\x20truncated\x20at\x2050KB\x20for\x20display]':_0x53253a['content'];return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20write-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>File:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x53253a['filePath']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Content\x20Written\x20('+_0x53253a['content']['length']+'\x20chars):</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x1ac322)+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatEditDetail(_0x169fa3){if(!_0x169fa3)return'<p>No\x20data\x20available</p>';if(_0x169fa3['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20edit-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>File:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x169fa3['toolInput']?.['file_path']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x169fa3['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';if(_0x169fa3['diff']&&!_0x169fa3['oldString']&&!_0x169fa3['newString'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20edit-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>File:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x169fa3['filePath']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Changes:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x169fa3['diff'])+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x169fa3['result']?'<div\x20class=\x22tool-section\x22><div\x20class=\x22tool-section-header\x22>Result:</div><div\x20class=\x22tool-output-summary\x22>'+escapeHtml(_0x169fa3['result'])+'</div></div>':'')+'\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';const _0x452ddb=computeLineDiff(_0x169fa3['oldString'],_0x169fa3['newString'],_0x169fa3['startLine'],_0x169fa3['startLine']),_0x40f37e=Math['max'](_0x452ddb['left']['length'],_0x452ddb['right']['length']);let _0x378121='';for(let _0xdd8492=0x0;_0xdd8492<_0x40f37e;_0xdd8492++){const _0x2c683d=_0x452ddb['left'][_0xdd8492]||{'type':'empty','content':'','lineNum':null},_0x1201b4=_0x452ddb['right'][_0xdd8492]||{'type':'empty','content':'','lineNum':null};_0x378121+='\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22edit-diff-row\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22edit-diff-side\x20edit-diff-left\x22>'+renderEditDiffLine(_0x2c683d,'left')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22edit-diff-side\x20edit-diff-right\x22>'+renderEditDiffLine(_0x1201b4,'right')+'</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';}const _0x5d2a25=_0x452ddb['left']['filter'](_0x4f3492=>_0x4f3492['type']==='remove')['length'],_0x43ed45=_0x452ddb['right']['filter'](_0x5561bc=>_0x5561bc['type']==='add')['length'];return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20edit-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>File:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x169fa3['filePath']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22edit-diff-summary\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22edit-diff-mode\x22>Replace\x20'+(_0x169fa3['replaceAll']?'All':'First')+'\x20Occurrence</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22edit-diff-stats\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22edit-diff-removed\x22>-'+_0x5d2a25+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22edit-diff-added\x22>+'+_0x43ed45+'</span>\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</div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22edit-diff-container\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22edit-diff-header\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22edit-diff-header-left\x22>Old</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22edit-diff-header-right\x22>New</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=\x22edit-diff-body\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x378121+'\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</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatGrepDetail(_0x14ed55){if(!_0x14ed55)return'<p>No\x20data\x20available</p>';if(_0x14ed55['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20grep-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Pattern:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x14ed55['toolInput']?.['pattern']||'')+'</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x14ed55['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20grep-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Pattern:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x14ed55['pattern']||'')+'</code>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20'+(_0x14ed55['path']?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Path:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x14ed55['path'])+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Output\x20Mode:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div>'+escapeHtml(_0x14ed55['outputMode']||'files_with_matches')+'</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Results:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x14ed55['content']||'No\x20matches\x20found')+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatGlobDetail(_0x1273af){if(!_0x1273af)return'<p>No\x20data\x20available</p>';if(_0x1273af['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20glob-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Pattern:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x1273af['toolInput']?.['pattern']||'')+'</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x1273af['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20glob-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Pattern:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x1273af['pattern']||'')+'</code>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20'+(_0x1273af['path']?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Path:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x1273af['path'])+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Matching\x20Files:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x1273af['content']||'No\x20files\x20found')+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatWebFetchDetail(_0x1b12ad){if(!_0x1b12ad)return'<p>No\x20data\x20available</p>';if(_0x1b12ad['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20webfetch-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>URL:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<a\x20href=\x22'+escapeHtml(_0x1b12ad['toolInput']?.['url']||'')+'\x22\x20target=\x22_blank\x22\x20class=\x22external-link\x22>'+escapeHtml(_0x1b12ad['toolInput']?.['url']||'')+'</a>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x1b12ad['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20webfetch-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>URL:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<a\x20href=\x22'+escapeHtml(_0x1b12ad['url']||'')+'\x22\x20target=\x22_blank\x22\x20class=\x22external-link\x22>'+escapeHtml(_0x1b12ad['url']||'')+'</a>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20'+(_0x1b12ad['prompt']?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Prompt:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22prompt-text\x22>'+escapeHtml(_0x1b12ad['prompt'])+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Content:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x1b12ad['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatWebSearchDetail(_0x4439be){if(!_0x4439be)return'<p>No\x20data\x20available</p>';if(_0x4439be['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20websearch-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Query:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22search-query\x22>'+escapeHtml(_0x4439be['toolInput']?.['query']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x4439be['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20websearch-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Query:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22search-query\x22>'+escapeHtml(_0x4439be['query']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Results:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x4439be['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatNotebookEditDetail(_0x3b3151){if(!_0x3b3151)return'<p>No\x20data\x20available</p>';if(_0x3b3151['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20notebook-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Notebook:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x3b3151['toolInput']?.['notebook_path']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x3b3151['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20notebook-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Notebook:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x3b3151['notebookPath']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20'+(_0x3b3151['cellId']?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Cell\x20ID:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x3b3151['cellId'])+'</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>New\x20Source:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x3b3151['newSource']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatSkillDetail(_0xa02a43){if(!_0xa02a43)return'<p>No\x20data\x20available</p>';if(_0xa02a43['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20skill-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Skill:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0xa02a43['toolInput']?.['skill']||'')+'</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0xa02a43['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';const _0xe96b63=_0xa02a43['toolInput']?.['skill']||_0xa02a43['skill']||'',_0x3e588e=_0xa02a43['content']||_0xa02a43['output']||'';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20skill-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Skill:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0xe96b63)+'</code>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20'+(_0x3e588e?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Output:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x3e588e)+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatAskUserQuestionDetail(_0x47586f){if(!_0x47586f)return'<p>No\x20data\x20available</p>';if(_0x47586f['error']&&(!_0x47586f['questions']||_0x47586f['questions']['length']===0x0))return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20ask-question-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x47586f['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';const _0x1880b9=_0x47586f['questions']||(_0x47586f['question']?[_0x47586f]:[]);if(_0x1880b9['length']===0x0)return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20ask-question-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22fallback-content\x22>'+escapeHtml(JSON['stringify'](_0x47586f,null,0x2))+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';const _0x363b2a=_0x1880b9['map']((_0x373529,_0x2e0a4d)=>{const _0x2a9555=_0x373529['header']?'<span\x20class=\x22ask-question-summary-chip\x22>'+escapeHtml(_0x373529['header'])+'</span>':'',_0x5de64b=_0x373529['question']?escapeHtml(_0x373529['question']):_0x373529['header']?'':'Question',_0x4fedb6=_0x373529['options']?.['length']||0x0,_0x2697f9=_0x4fedb6>0x0?'<span\x20class=\x22ask-question-summary-count\x22>'+_0x4fedb6+'\x20options</span>':'',_0x3f0ecf=_0x373529['multiSelect']?'<span\x20class=\x22ask-question-multi-badge\x22>Multi-select</span>':'',_0x3bbdf3=_0x1880b9['length']>0x1?'<span\x20class=\x22ask-question-summary-num\x22>'+(_0x2e0a4d+0x1)+'.</span>\x20':'';let _0x1dc590='';return _0x373529['options']&&Array['isArray'](_0x373529['options'])&&_0x373529['options']['length']>0x0&&(_0x1dc590='\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ask-question-options\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x373529['options']['map'](_0x5912cb=>'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ask-question-option\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ask-question-option-label\x22>'+escapeHtml(_0x5912cb['label']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x5912cb['description']?'<div\x20class=\x22ask-question-option-desc\x22>'+escapeHtml(_0x5912cb['description'])+'</div>':'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x5912cb['preview']?'<pre\x20class=\x22ask-question-option-preview\x22>'+escapeHtml(_0x5912cb['preview'])+'</pre>':'')+'\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')['join']('')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20'),'\x0a\x20\x20\x20\x20\x20\x20<details\x20class=\x22ask-question-collapsible\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<summary\x20class=\x22ask-question-summary\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x3bbdf3+_0x2a9555+'<span\x20class=\x22ask-question-summary-text\x22>'+_0x5de64b+'</span>'+_0x2697f9+_0x3f0ecf+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</summary>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ask-question-body\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x1dc590+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</details>\x0a\x20\x20\x20\x20';})['join']('');let _0x1ada69='';if(_0x47586f['answer'])_0x1ada69='\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Answer:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x47586f['answer'])+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';else _0x47586f['denied']&&(_0x1ada69='<div\x20class=\x22ask-question-denied-badge\x22>Awaiting\x20answer\x20—\x20use\x20the\x20form\x20below\x20to\x20respond</div>');return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20ask-question-detail\x22>\x0a\x20\x20\x20\x20\x20\x20'+_0x363b2a+'\x0a\x20\x20\x20\x20\x20\x20'+_0x1ada69+'\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatAgentDetail(_0x53d8f4){if(!_0x53d8f4)return'<p>No\x20data\x20available</p>';if(_0x53d8f4['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20agent-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Agent:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22task-description\x22>'+escapeHtml(_0x53d8f4['toolInput']?.['description']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x53d8f4['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';const _0x18c25a=_0x53d8f4['description']||_0x53d8f4['toolInput']?.['description']||'',_0x55460a=_0x53d8f4['subagentType']||_0x53d8f4['toolInput']?.['subagent_type']||'',_0x487e46=_0x53d8f4['model']||_0x53d8f4['toolInput']?.['model']||'',_0x1a4d57=_0x53d8f4['prompt']||_0x53d8f4['toolInput']?.['prompt']||'',_0x1058ad=_0x53d8f4['content']||'';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20agent-detail\x22>\x0a\x20\x20\x20\x20\x20\x20'+(_0x18c25a?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Description:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22task-description\x22>'+escapeHtml(_0x18c25a)+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20'+(_0x55460a?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Agent\x20Type:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x55460a)+'</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20'+(_0x487e46?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Model:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x487e46)+'</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20'+(_0x1a4d57?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Prompt:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x1a4d57)+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20'+(_0x1058ad?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Result:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x1058ad)+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatTaskDetail(_0x5074e0){if(!_0x5074e0)return'<p>No\x20data\x20available</p>';if(_0x5074e0['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20task-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Task:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22task-description\x22>'+escapeHtml(_0x5074e0['toolInput']?.['description']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x5074e0['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';const _0x2989fb=_0x5074e0['description']||_0x5074e0['toolInput']?.['description']||'',_0x3f0b4d=_0x5074e0['subagentType']||_0x5074e0['toolInput']?.['subagent_type']||'',_0x15b6b2=_0x5074e0['prompt']||_0x5074e0['toolInput']?.['prompt']||'',_0x3dc916=_0x5074e0['content']||'';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20task-detail\x22>\x0a\x20\x20\x20\x20\x20\x20'+(_0x2989fb?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Description:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22task-description\x22>'+escapeHtml(_0x2989fb)+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20'+(_0x3f0b4d?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Agent\x20Type:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x3f0b4d)+'</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20'+(_0x15b6b2?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Prompt:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x15b6b2)+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20'+(_0x3dc916?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Result:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x3dc916)+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}
1
+ export function escapeHtml(_0x4d0744){if(!_0x4d0744)return'';return String(_0x4d0744)['replace'](/&/g,'&amp;')['replace'](/</g,'&lt;')['replace'](/>/g,'&gt;')['replace'](/"/g,'&quot;')['replace'](/'/g,'&#039;');}function computeLineDiff(_0x1f29a5,_0x2ca7dc,_0x59c7e0,_0x18c817){const _0x58aabf=(_0x1f29a5||'')['split']('\x0a'),_0x2ce41d=(_0x2ca7dc||'')['split']('\x0a'),_0x33e83b=(_0x59c7e0||0x1)-0x1,_0x5b36fc=(_0x18c817||_0x59c7e0||0x1)-0x1,_0x59db87=computeLCS(_0x58aabf,_0x2ce41d),_0x4a5170={'left':[],'right':[]};let _0x169899=0x0,_0x4df75b=0x0,_0x2bc7a0=0x0;while(_0x169899<_0x58aabf['length']||_0x4df75b<_0x2ce41d['length']){if(_0x2bc7a0<_0x59db87['length']&&_0x169899<_0x58aabf['length']&&_0x58aabf[_0x169899]===_0x59db87[_0x2bc7a0]&&_0x4df75b<_0x2ce41d['length']&&_0x2ce41d[_0x4df75b]===_0x59db87[_0x2bc7a0])_0x4a5170['left']['push']({'type':'context','content':_0x58aabf[_0x169899],'lineNum':_0x169899+0x1+_0x33e83b}),_0x4a5170['right']['push']({'type':'context','content':_0x2ce41d[_0x4df75b],'lineNum':_0x4df75b+0x1+_0x5b36fc}),_0x169899++,_0x4df75b++,_0x2bc7a0++;else{if(_0x2bc7a0<_0x59db87['length']&&_0x4df75b<_0x2ce41d['length']&&_0x2ce41d[_0x4df75b]===_0x59db87[_0x2bc7a0])_0x4a5170['left']['push']({'type':'remove','content':_0x58aabf[_0x169899],'lineNum':_0x169899+0x1+_0x33e83b}),_0x4a5170['right']['push']({'type':'empty','content':'','lineNum':null}),_0x169899++;else{if(_0x2bc7a0<_0x59db87['length']&&_0x169899<_0x58aabf['length']&&_0x58aabf[_0x169899]===_0x59db87[_0x2bc7a0])_0x4a5170['left']['push']({'type':'empty','content':'','lineNum':null}),_0x4a5170['right']['push']({'type':'add','content':_0x2ce41d[_0x4df75b],'lineNum':_0x4df75b+0x1+_0x5b36fc}),_0x4df75b++;else{if(_0x169899<_0x58aabf['length']&&_0x4df75b<_0x2ce41d['length'])_0x4a5170['left']['push']({'type':'remove','content':_0x58aabf[_0x169899],'lineNum':_0x169899+0x1+_0x33e83b}),_0x4a5170['right']['push']({'type':'add','content':_0x2ce41d[_0x4df75b],'lineNum':_0x4df75b+0x1+_0x5b36fc}),_0x169899++,_0x4df75b++;else{if(_0x169899<_0x58aabf['length'])_0x4a5170['left']['push']({'type':'remove','content':_0x58aabf[_0x169899],'lineNum':_0x169899+0x1+_0x33e83b}),_0x4a5170['right']['push']({'type':'empty','content':'','lineNum':null}),_0x169899++;else _0x4df75b<_0x2ce41d['length']&&(_0x4a5170['left']['push']({'type':'empty','content':'','lineNum':null}),_0x4a5170['right']['push']({'type':'add','content':_0x2ce41d[_0x4df75b],'lineNum':_0x4df75b+0x1+_0x5b36fc}),_0x4df75b++);}}}}}return _0x4a5170;}function computeLCS(_0x469afd,_0x70a34){const _0x456dc8=_0x469afd['length'],_0x2e75aa=_0x70a34['length'],_0x5933b1=Array(_0x456dc8+0x1)['fill'](null)['map'](()=>Array(_0x2e75aa+0x1)['fill'](0x0));for(let _0x43e7e4=0x1;_0x43e7e4<=_0x456dc8;_0x43e7e4++){for(let _0x13a1a8=0x1;_0x13a1a8<=_0x2e75aa;_0x13a1a8++){_0x469afd[_0x43e7e4-0x1]===_0x70a34[_0x13a1a8-0x1]?_0x5933b1[_0x43e7e4][_0x13a1a8]=_0x5933b1[_0x43e7e4-0x1][_0x13a1a8-0x1]+0x1:_0x5933b1[_0x43e7e4][_0x13a1a8]=Math['max'](_0x5933b1[_0x43e7e4-0x1][_0x13a1a8],_0x5933b1[_0x43e7e4][_0x13a1a8-0x1]);}}const _0x4d49ad=[];let _0x5a7da7=_0x456dc8,_0x85b689=_0x2e75aa;while(_0x5a7da7>0x0&&_0x85b689>0x0){if(_0x469afd[_0x5a7da7-0x1]===_0x70a34[_0x85b689-0x1])_0x4d49ad['unshift'](_0x469afd[_0x5a7da7-0x1]),_0x5a7da7--,_0x85b689--;else _0x5933b1[_0x5a7da7-0x1][_0x85b689]>_0x5933b1[_0x5a7da7][_0x85b689-0x1]?_0x5a7da7--:_0x85b689--;}return _0x4d49ad;}function renderEditDiffLine(_0x101104,_0x4f8333){const _0xb2cbd3=_0x101104['lineNum']!==null?String(_0x101104['lineNum'])['padStart'](0x4,'\x20'):'\x20\x20\x20\x20',_0x14ed3d=escapeHtml(_0x101104['content']);let _0x296a71='edit-diff-line',_0x5a3606='\x20';switch(_0x101104['type']){case'add':_0x296a71+='\x20edit-diff-add',_0x5a3606='+';break;case'remove':_0x296a71+='\x20edit-diff-remove',_0x5a3606='-';break;case'empty':_0x296a71+='\x20edit-diff-empty',_0x5a3606='\x20';break;default:_0x296a71+='\x20edit-diff-context',_0x5a3606='\x20';}return'<div\x20class=\x22'+_0x296a71+'\x22><span\x20class=\x22edit-diff-line-num\x22>'+_0xb2cbd3+'</span><span\x20class=\x22edit-diff-prefix\x22>'+_0x5a3606+'</span><span\x20class=\x22edit-diff-content\x22>'+(_0x14ed3d||'&nbsp;')+'</span></div>';}export function formatBashDetail(_0x20ab43){if(!_0x20ab43)return'<p>No\x20data\x20available</p>';if(_0x20ab43['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20bash-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Command:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-code\x22>'+escapeHtml(_0x20ab43['toolInput']?.['command']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x20ab43['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';if(_0x20ab43['stdout']!==undefined||_0x20ab43['stderr']!==undefined||_0x20ab43['aggregated_output']!==undefined){const _0x559d37=_0x20ab43['aggregated_output']&&_0x20ab43['aggregated_output']['trim']()['length']>0x0,_0x4033d4=!_0x559d37&&_0x20ab43['stdout']&&_0x20ab43['stdout']['trim']()['length']>0x0,_0x5c350a=_0x20ab43['stderr']&&_0x20ab43['stderr']['trim']()['length']>0x0;return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20bash-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Command:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-code\x22>'+escapeHtml(_0x20ab43['command']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x559d37?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Output:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x20ab43['aggregated_output'])+'</pre>\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\x20\x20'+(_0x4033d4?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Output:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x20ab43['stdout'])+'</pre>\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\x20\x20'+(_0x5c350a?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error\x20Output:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x20ab43['stderr'])+'</pre>\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\x20\x20'+(!_0x559d37&&!_0x4033d4&&!_0x5c350a?'<div\x20class=\x22tool-section\x22><p\x20class=\x22muted-text\x22>No\x20output</p></div>':'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Exit\x20Code:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22exit-code\x20'+(_0x20ab43['exitCode']===0x0?'success':'error')+'\x22>'+_0x20ab43['exitCode']+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';}return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20bash-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Command:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-code\x22>'+escapeHtml(_0x20ab43['command']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Output:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x20ab43['output']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatReadDetail(_0x2f109d){if(!_0x2f109d)return'<p>No\x20data\x20available</p>';if(_0x2f109d['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20read-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>File:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x2f109d['toolInput']?.['file_path']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x2f109d['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20read-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>File:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x2f109d['filePath']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Content:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x2f109d['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatWriteDetail(_0x147c39){if(!_0x147c39)return'<p>No\x20data\x20available</p>';if(_0x147c39['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20write-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>File:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x147c39['toolInput']?.['file_path']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x147c39['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';const _0x256316=_0x147c39['content']['length']>0xc350?_0x147c39['content']['substring'](0x0,0xc350)+'\x0a\x0a...\x20[Content\x20truncated\x20at\x2050KB\x20for\x20display]':_0x147c39['content'];return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20write-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>File:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x147c39['filePath']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Content\x20Written\x20('+_0x147c39['content']['length']+'\x20chars):</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x256316)+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatEditDetail(_0x316739){if(!_0x316739)return'<p>No\x20data\x20available</p>';if(_0x316739['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20edit-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>File:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x316739['toolInput']?.['file_path']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x316739['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';if(_0x316739['diff']&&!_0x316739['oldString']&&!_0x316739['newString'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20edit-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>File:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x316739['filePath']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Changes:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x316739['diff'])+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x316739['result']?'<div\x20class=\x22tool-section\x22><div\x20class=\x22tool-section-header\x22>Result:</div><div\x20class=\x22tool-output-summary\x22>'+escapeHtml(_0x316739['result'])+'</div></div>':'')+'\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';const _0x1175cb=computeLineDiff(_0x316739['oldString'],_0x316739['newString'],_0x316739['startLine'],_0x316739['startLine']),_0xfda2d6=Math['max'](_0x1175cb['left']['length'],_0x1175cb['right']['length']);let _0x4ac846='';for(let _0x157b5e=0x0;_0x157b5e<_0xfda2d6;_0x157b5e++){const _0x3e2366=_0x1175cb['left'][_0x157b5e]||{'type':'empty','content':'','lineNum':null},_0x4eed59=_0x1175cb['right'][_0x157b5e]||{'type':'empty','content':'','lineNum':null};_0x4ac846+='\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22edit-diff-row\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22edit-diff-side\x20edit-diff-left\x22>'+renderEditDiffLine(_0x3e2366,'left')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22edit-diff-side\x20edit-diff-right\x22>'+renderEditDiffLine(_0x4eed59,'right')+'</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';}const _0x50c5d8=_0x1175cb['left']['filter'](_0x3d498a=>_0x3d498a['type']==='remove')['length'],_0x5dba79=_0x1175cb['right']['filter'](_0x1ff491=>_0x1ff491['type']==='add')['length'];return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20edit-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>File:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x316739['filePath']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22edit-diff-summary\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22edit-diff-mode\x22>Replace\x20'+(_0x316739['replaceAll']?'All':'First')+'\x20Occurrence</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22edit-diff-stats\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22edit-diff-removed\x22>-'+_0x50c5d8+'</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22edit-diff-added\x22>+'+_0x5dba79+'</span>\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</div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22edit-diff-container\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22edit-diff-header\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22edit-diff-header-left\x22>Old</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22edit-diff-header-right\x22>New</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=\x22edit-diff-body\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x4ac846+'\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</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatGrepDetail(_0x271678){if(!_0x271678)return'<p>No\x20data\x20available</p>';if(_0x271678['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20grep-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Pattern:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x271678['toolInput']?.['pattern']||'')+'</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x271678['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20grep-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Pattern:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x271678['pattern']||'')+'</code>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20'+(_0x271678['path']?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Path:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x271678['path'])+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Output\x20Mode:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div>'+escapeHtml(_0x271678['outputMode']||'files_with_matches')+'</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Results:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x271678['content']||'No\x20matches\x20found')+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatGlobDetail(_0x2c453d){if(!_0x2c453d)return'<p>No\x20data\x20available</p>';if(_0x2c453d['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20glob-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Pattern:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x2c453d['toolInput']?.['pattern']||'')+'</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x2c453d['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20glob-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Pattern:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x2c453d['pattern']||'')+'</code>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20'+(_0x2c453d['path']?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Path:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x2c453d['path'])+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Matching\x20Files:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x2c453d['content']||'No\x20files\x20found')+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatWebFetchDetail(_0x15eb14){if(!_0x15eb14)return'<p>No\x20data\x20available</p>';if(_0x15eb14['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20webfetch-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>URL:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<a\x20href=\x22'+escapeHtml(_0x15eb14['toolInput']?.['url']||'')+'\x22\x20target=\x22_blank\x22\x20class=\x22external-link\x22>'+escapeHtml(_0x15eb14['toolInput']?.['url']||'')+'</a>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x15eb14['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20webfetch-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>URL:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<a\x20href=\x22'+escapeHtml(_0x15eb14['url']||'')+'\x22\x20target=\x22_blank\x22\x20class=\x22external-link\x22>'+escapeHtml(_0x15eb14['url']||'')+'</a>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20'+(_0x15eb14['prompt']?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Prompt:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22prompt-text\x22>'+escapeHtml(_0x15eb14['prompt'])+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Content:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x15eb14['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatWebSearchDetail(_0x727797){if(!_0x727797)return'<p>No\x20data\x20available</p>';if(_0x727797['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20websearch-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Query:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22search-query\x22>'+escapeHtml(_0x727797['toolInput']?.['query']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x727797['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20websearch-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Query:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22search-query\x22>'+escapeHtml(_0x727797['query']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Results:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x727797['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatNotebookEditDetail(_0x429a78){if(!_0x429a78)return'<p>No\x20data\x20available</p>';if(_0x429a78['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20notebook-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Notebook:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x429a78['toolInput']?.['notebook_path']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x429a78['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20notebook-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Notebook:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22file-path\x22>'+escapeHtml(_0x429a78['notebookPath']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20'+(_0x429a78['cellId']?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Cell\x20ID:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x429a78['cellId'])+'</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>New\x20Source:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x429a78['newSource']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatSkillDetail(_0x468089){if(!_0x468089)return'<p>No\x20data\x20available</p>';if(_0x468089['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20skill-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Skill:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x468089['toolInput']?.['skill']||'')+'</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x468089['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';const _0x38065d=_0x468089['toolInput']?.['skill']||_0x468089['skill']||'',_0x2c4690=_0x468089['content']||_0x468089['output']||'';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20skill-detail\x22>\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Skill:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x38065d)+'</code>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20'+(_0x2c4690?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Output:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x2c4690)+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatAskUserQuestionDetail(_0x58503a){if(!_0x58503a)return'<p>No\x20data\x20available</p>';if(_0x58503a['error']&&(!_0x58503a['questions']||_0x58503a['questions']['length']===0x0))return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20ask-question-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x58503a['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';const _0xeccbc5=_0x58503a['questions']||(_0x58503a['question']?[_0x58503a]:[]);if(_0xeccbc5['length']===0x0)return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20ask-question-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22fallback-content\x22>'+escapeHtml(JSON['stringify'](_0x58503a,null,0x2))+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';const _0x49d2c9=_0xeccbc5['map']((_0xfcb04f,_0x4b9caf)=>{const _0x38b2a0=_0xfcb04f['header']?'<span\x20class=\x22ask-question-summary-chip\x22>'+escapeHtml(_0xfcb04f['header'])+'</span>':'',_0x33b66e=_0xfcb04f['question']?escapeHtml(_0xfcb04f['question']):_0xfcb04f['header']?'':'Question',_0x49c27b=_0xfcb04f['options']?.['length']||0x0,_0x54062a=_0x49c27b>0x0?'<span\x20class=\x22ask-question-summary-count\x22>'+_0x49c27b+'\x20options</span>':'',_0xfab6d9=_0xfcb04f['multiSelect']?'<span\x20class=\x22ask-question-multi-badge\x22>Multi-select</span>':'',_0x1a8284=_0xeccbc5['length']>0x1?'<span\x20class=\x22ask-question-summary-num\x22>'+(_0x4b9caf+0x1)+'.</span>\x20':'';let _0x2bbe6d='';return _0xfcb04f['options']&&Array['isArray'](_0xfcb04f['options'])&&_0xfcb04f['options']['length']>0x0&&(_0x2bbe6d='\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ask-question-options\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0xfcb04f['options']['map'](_0xbde9cc=>'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ask-question-option\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ask-question-option-label\x22>'+escapeHtml(_0xbde9cc['label']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0xbde9cc['description']?'<div\x20class=\x22ask-question-option-desc\x22>'+escapeHtml(_0xbde9cc['description'])+'</div>':'')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0xbde9cc['preview']?'<pre\x20class=\x22ask-question-option-preview\x22>'+escapeHtml(_0xbde9cc['preview'])+'</pre>':'')+'\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')['join']('')+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20'),'\x0a\x20\x20\x20\x20\x20\x20<details\x20class=\x22ask-question-collapsible\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<summary\x20class=\x22ask-question-summary\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x1a8284+_0x38b2a0+'<span\x20class=\x22ask-question-summary-text\x22>'+_0x33b66e+'</span>'+_0x54062a+_0xfab6d9+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</summary>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22ask-question-body\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x2bbe6d+'\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</details>\x0a\x20\x20\x20\x20';})['join']('');let _0xb3eff9='';if(_0x58503a['answer'])_0xb3eff9='\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Answer:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x58503a['answer'])+'</pre>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';else _0x58503a['denied']&&(_0xb3eff9='<div\x20class=\x22ask-question-denied-badge\x22>Awaiting\x20answer\x20—\x20use\x20the\x20form\x20below\x20to\x20respond</div>');return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20ask-question-detail\x22>\x0a\x20\x20\x20\x20\x20\x20'+_0x49d2c9+'\x0a\x20\x20\x20\x20\x20\x20'+_0xb3eff9+'\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatAgentDetail(_0x5370a0){if(!_0x5370a0)return'<p>No\x20data\x20available</p>';if(_0x5370a0['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20agent-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Agent:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22task-description\x22>'+escapeHtml(_0x5370a0['toolInput']?.['description']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x5370a0['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';const _0x164e18=_0x5370a0['description']||_0x5370a0['toolInput']?.['description']||'',_0x383d1a=_0x5370a0['subagentType']||_0x5370a0['toolInput']?.['subagent_type']||'',_0x229f16=_0x5370a0['model']||_0x5370a0['toolInput']?.['model']||'',_0x5713e3=_0x5370a0['prompt']||_0x5370a0['toolInput']?.['prompt']||'',_0xdef534=_0x5370a0['content']||'';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20agent-detail\x22>\x0a\x20\x20\x20\x20\x20\x20'+(_0x164e18?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Description:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22task-description\x22>'+escapeHtml(_0x164e18)+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20'+(_0x383d1a?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Agent\x20Type:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x383d1a)+'</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20'+(_0x229f16?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Model:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x229f16)+'</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20'+(_0x5713e3?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Prompt:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x5713e3)+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20'+(_0xdef534?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Result:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0xdef534)+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}export function formatTaskDetail(_0x149853){if(!_0x149853)return'<p>No\x20data\x20available</p>';if(_0x149853['error'])return'\x0a\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20task-detail\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Task:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22task-description\x22>'+escapeHtml(_0x149853['toolInput']?.['description']||'')+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x20error-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Error:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x20error-output\x22>'+escapeHtml(_0x149853['content']||'')+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20';const _0x5dc43b=_0x149853['description']||_0x149853['toolInput']?.['description']||'',_0x17cd7c=_0x149853['subagentType']||_0x149853['toolInput']?.['subagent_type']||'',_0x29047e=_0x149853['prompt']||_0x149853['toolInput']?.['prompt']||'',_0x3f6e16=_0x149853['content']||'';return'\x0a\x20\x20\x20\x20<div\x20class=\x22tool-detail\x20task-detail\x22>\x0a\x20\x20\x20\x20\x20\x20'+(_0x5dc43b?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Description:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22task-description\x22>'+escapeHtml(_0x5dc43b)+'</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20'+(_0x17cd7c?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Agent\x20Type:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<code\x20class=\x22inline-code\x22>'+escapeHtml(_0x17cd7c)+'</code>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20'+(_0x29047e?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Prompt:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x29047e)+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20\x20\x20'+(_0x3f6e16?'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22tool-section-header\x22>Result:</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<pre\x20class=\x22tool-output\x22>'+escapeHtml(_0x3f6e16)+'</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20':'')+'\x0a\x20\x20\x20\x20</div>\x0a\x20\x20';}
@@ -273,6 +273,10 @@
273
273
  line-height: 1.6;
274
274
  }
275
275
 
276
+ .admin-log-entry.selected {
277
+ background: rgba(56, 189, 248, 0.08);
278
+ }
279
+
276
280
  .admin-log-entry + .admin-log-entry {
277
281
  border-top: 1px solid rgba(148, 163, 184, 0.16);
278
282
  }
@@ -281,7 +285,48 @@
281
285
  display: flex;
282
286
  flex-wrap: wrap;
283
287
  align-items: center;
288
+ justify-content: space-between;
289
+ gap: 8px;
290
+ }
291
+
292
+ .admin-log-header-main {
293
+ display: flex;
294
+ flex: 1 1 320px;
295
+ flex-wrap: wrap;
296
+ align-items: center;
297
+ gap: 8px;
298
+ min-width: 0;
299
+ }
300
+
301
+ .admin-log-select {
302
+ display: inline-flex;
303
+ align-items: center;
284
304
  gap: 8px;
305
+ min-width: 0;
306
+ color: #cbd5e1;
307
+ cursor: pointer;
308
+ }
309
+
310
+ .admin-log-select-checkbox {
311
+ margin: 0;
312
+ accent-color: #38bdf8;
313
+ }
314
+
315
+ .admin-log-actions {
316
+ display: flex;
317
+ align-items: center;
318
+ gap: 8px;
319
+ margin-left: auto;
320
+ }
321
+
322
+ .admin-log-copy-btn {
323
+ color: #e2e8f0;
324
+ border-color: rgba(148, 163, 184, 0.24);
325
+ background: rgba(15, 23, 42, 0.55);
326
+ }
327
+
328
+ .admin-log-copy-btn:hover {
329
+ background: rgba(30, 41, 59, 0.9);
285
330
  }
286
331
 
287
332
  .admin-log-timestamp {
@@ -335,6 +380,16 @@
335
380
  color: #93c5fd;
336
381
  }
337
382
 
383
+ .admin-log-selection-actions {
384
+ align-items: center;
385
+ margin-left: auto;
386
+ }
387
+
388
+ .admin-log-selection-count {
389
+ font-size: 13px;
390
+ white-space: nowrap;
391
+ }
392
+
338
393
  .admin-log-context pre {
339
394
  margin: 8px 0 0;
340
395
  padding: 10px 12px;
@@ -359,6 +414,11 @@
359
414
  flex: 1 1 0;
360
415
  justify-content: center;
361
416
  }
417
+
418
+ .admin-log-selection-actions {
419
+ width: 100%;
420
+ margin-left: 0;
421
+ }
362
422
  }
363
423
 
364
424
  .admin-summary-grid {
@@ -444,6 +444,12 @@
444
444
  <div class="admin-toolbar-group">
445
445
  <button type="button" class="btn-ghost btn-small" id="logs-clear-btn">Clear Display</button>
446
446
  </div>
447
+ <div class="admin-toolbar-group admin-log-selection-actions">
448
+ <span class="admin-log-selection-count text-muted" id="logs-selection-count">0 selected</span>
449
+ <button type="button" class="btn-secondary btn-small" id="logs-select-visible-btn" disabled>Select All Shown</button>
450
+ <button type="button" class="btn-secondary btn-small" id="logs-clear-selection-btn" disabled>Clear Selection</button>
451
+ <button type="button" class="btn-primary btn-small" id="logs-copy-selected-btn" disabled>Copy Selected</button>
452
+ </div>
447
453
  </div>
448
454
  <div class="admin-log-meta text-muted" id="logs-meta">No logs loaded yet.</div>
449
455
  <div id="logs-loading" class="loading" hidden>Loading logs...</div>