@runtypelabs/persona 4.30.0 → 4.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. package/README.md +22 -1
  2. package/dist/activity-ui.cjs +2 -2
  3. package/dist/activity-ui.d.cts +11 -3
  4. package/dist/activity-ui.d.ts +11 -3
  5. package/dist/activity-ui.js +1 -1
  6. package/dist/animations/glyph-cycle.d.cts +1 -1
  7. package/dist/animations/glyph-cycle.d.ts +1 -1
  8. package/dist/animations/wipe.d.cts +1 -1
  9. package/dist/animations/wipe.d.ts +1 -1
  10. package/dist/approval-ui.d.cts +2 -2
  11. package/dist/approval-ui.d.ts +2 -2
  12. package/dist/artifacts-ui.d.cts +3 -3
  13. package/dist/artifacts-ui.d.ts +3 -3
  14. package/dist/background-runtime.d.cts +1 -1
  15. package/dist/background-runtime.d.ts +1 -1
  16. package/dist/chunk-C2IbR39s.js +1 -0
  17. package/dist/chunk-CkE90FtA.js +2 -0
  18. package/dist/{chunk-n96BB0YH.js → chunk-CzZBmTLd.js} +1 -1
  19. package/dist/chunk-DABqu7C3.js +2 -0
  20. package/dist/chunk-DDAwu89-.js +1 -0
  21. package/dist/{chunk-CqEWCkJt.js → chunk-DZg9bFK6.js} +1 -1
  22. package/dist/chunk-DbD5qyBw.js +3 -0
  23. package/dist/{chunk-gayfbmEU.js → chunk-FEzOcZof.js} +1 -1
  24. package/dist/{chunk-UyZbbbz3.js → chunk-MdlQetfC.js} +2 -2
  25. package/dist/client-dispatch.js +1 -1
  26. package/dist/client-history.js +1 -1
  27. package/dist/codegen.cjs +1 -1
  28. package/dist/codegen.js +1 -1
  29. package/dist/composer-actions-runtime.d.cts +2 -2
  30. package/dist/composer-actions-runtime.d.ts +2 -2
  31. package/dist/{composer-input-C76gfIoK.d.cts → composer-input-dwg_o9Z-.d.cts} +1 -1
  32. package/dist/{composer-input-C76gfIoK.d.ts → composer-input-dwg_o9Z-.d.ts} +1 -1
  33. package/dist/{composer-store-C7tvaz90.d.cts → composer-store-Dw7Zbqxr.d.cts} +1 -1
  34. package/dist/{composer-store-C7tvaz90.d.ts → composer-store-Dw7Zbqxr.d.ts} +1 -1
  35. package/dist/{context-mention-manager-IfT4JHma.d.cts → context-mention-manager-D2p0-JH-.d.cts} +2 -2
  36. package/dist/{context-mention-manager-IfT4JHma.d.ts → context-mention-manager-D2p0-JH-.d.ts} +2 -2
  37. package/dist/context-mentions-inline.d.cts +2 -2
  38. package/dist/context-mentions-inline.d.ts +2 -2
  39. package/dist/context-mentions.d.cts +3 -3
  40. package/dist/context-mentions.d.ts +3 -3
  41. package/dist/{defaults-Cc_p0PGM.d.cts → defaults-CjX0kKzb.d.cts} +1 -1
  42. package/dist/{defaults-Cc_p0PGM.d.ts → defaults-CjX0kKzb.d.ts} +1 -1
  43. package/dist/dictation-runtime.d.cts +2 -2
  44. package/dist/dictation-runtime.d.ts +2 -2
  45. package/dist/event-stream-view.d.cts +1 -1
  46. package/dist/event-stream-view.d.ts +1 -1
  47. package/dist/{fallback-speech-engine-CSxWpG0A.d.cts → fallback-speech-engine-DmF7MczI.d.cts} +1 -1
  48. package/dist/{fallback-speech-engine-CSxWpG0A.d.ts → fallback-speech-engine-DmF7MczI.d.ts} +1 -1
  49. package/dist/{feature-preferences-eeSOmDxg.d.cts → feature-preferences-CVFDt9Xf.d.cts} +1 -1
  50. package/dist/{feature-preferences-eeSOmDxg.d.ts → feature-preferences-CVFDt9Xf.d.ts} +1 -1
  51. package/dist/forms-ui.d.cts +2 -2
  52. package/dist/forms-ui.d.ts +2 -2
  53. package/dist/{history-confirm-dialog-DXkuAgh-.d.cts → history-confirm-dialog-DJEXsTyE.d.cts} +1 -1
  54. package/dist/{history-confirm-dialog-DXkuAgh-.d.ts → history-confirm-dialog-DJEXsTyE.d.ts} +1 -1
  55. package/dist/history-shell.d.cts +6 -6
  56. package/dist/history-shell.d.ts +6 -6
  57. package/dist/history-view.d.cts +1 -1
  58. package/dist/history-view.d.ts +1 -1
  59. package/dist/index.cjs +49 -47
  60. package/dist/index.cjs.map +1 -1
  61. package/dist/index.d.cts +9 -9
  62. package/dist/index.d.ts +9 -9
  63. package/dist/index.global.js +1 -1
  64. package/dist/index.global.js.map +1 -1
  65. package/dist/index.js +43 -41
  66. package/dist/index.js.map +1 -1
  67. package/dist/{loading-label-runtime-loader-C53YyPJ-.d.cts → loading-label-runtime-loader-CPxnoaoi.d.cts} +1 -1
  68. package/dist/{loading-label-runtime-loader-C53YyPJ-.d.ts → loading-label-runtime-loader-CPxnoaoi.d.ts} +1 -1
  69. package/dist/loading-label-runtime.d.cts +1 -1
  70. package/dist/loading-label-runtime.d.ts +1 -1
  71. package/dist/markdown-parsers.js +18 -15
  72. package/dist/{message-bubble-Cg_sTXUN.d.cts → message-bubble-CkZGlCLC.d.cts} +1 -1
  73. package/dist/{message-bubble-Cg_sTXUN.d.ts → message-bubble-CkZGlCLC.d.ts} +1 -1
  74. package/dist/preferences-runtime.d.cts +1 -1
  75. package/dist/preferences-runtime.d.ts +1 -1
  76. package/dist/{preview-BeMKALry.d.cts → preview-DdUvoLb4.d.cts} +2 -2
  77. package/dist/{preview-BeMKALry.d.ts → preview-DdUvoLb4.d.ts} +2 -2
  78. package/dist/{registry-BBe-Lesw.d.ts → registry-Dz4iHNST.d.cts} +3 -1
  79. package/dist/{registry-BBe-Lesw.d.cts → registry-Dz4iHNST.d.ts} +3 -1
  80. package/dist/{session-C0fSteA4.d.cts → session-Baxp9iRK.d.cts} +24 -9
  81. package/dist/{session-C0fSteA4.d.ts → session-Baxp9iRK.d.ts} +24 -9
  82. package/dist/session-reconnect.d.cts +2 -2
  83. package/dist/session-reconnect.d.ts +2 -2
  84. package/dist/smart-dom-reader.d.cts +1 -1
  85. package/dist/smart-dom-reader.d.ts +1 -1
  86. package/dist/theme-editor-preview.cjs +47 -45
  87. package/dist/theme-editor-preview.d.cts +1 -1
  88. package/dist/theme-editor-preview.d.ts +1 -1
  89. package/dist/theme-editor-preview.js +23 -24
  90. package/dist/theme-editor.d.cts +2 -2
  91. package/dist/theme-editor.d.ts +2 -2
  92. package/dist/theme-reference.d.cts +2 -2
  93. package/dist/theme-reference.d.ts +2 -2
  94. package/dist/{tool-loading-animation-BvdaZfwh.d.cts → tool-loading-animation-un3kA5Ur.d.cts} +1 -1
  95. package/dist/{tool-loading-animation-BvdaZfwh.d.ts → tool-loading-animation-un3kA5Ur.d.ts} +1 -1
  96. package/dist/{turn-activity-ui-BYBlInZQ.d.cts → turn-activity-ui-BGNhtMcH.d.cts} +2 -2
  97. package/dist/{turn-activity-ui-BYBlInZQ.d.ts → turn-activity-ui-BGNhtMcH.d.ts} +2 -2
  98. package/dist/turn-activity-ui.d.cts +1 -1
  99. package/dist/turn-activity-ui.d.ts +1 -1
  100. package/dist/{types-CiXi4ICM.d.cts → types-BOZHQIk0.d.cts} +13 -1
  101. package/dist/{types-CiXi4ICM.d.ts → types-BOZHQIk0.d.ts} +13 -1
  102. package/dist/voice-client-tools.d.cts +1 -1
  103. package/dist/voice-client-tools.d.ts +1 -1
  104. package/dist/voice-runtime.cjs +1 -1
  105. package/dist/voice-runtime.d.cts +2 -2
  106. package/dist/voice-runtime.d.ts +2 -2
  107. package/dist/voice-runtime.js +1 -1
  108. package/dist/voice-worklet-player.d.cts +2 -2
  109. package/dist/voice-worklet-player.d.ts +2 -2
  110. package/dist/{webmcp-runtime-entry-BTbOg3Au.d.cts → webmcp-runtime-entry-DuAG1_yF.d.cts} +1 -1
  111. package/dist/{webmcp-runtime-entry-BTbOg3Au.d.ts → webmcp-runtime-entry-DuAG1_yF.d.ts} +1 -1
  112. package/dist/webmcp-runtime.d.cts +1 -1
  113. package/dist/webmcp-runtime.d.ts +1 -1
  114. package/dist/widget.css +1 -1
  115. package/package.json +2 -2
  116. package/src/activity-ui.ts +23 -0
  117. package/src/components/disclosure-animation.ts +5 -0
  118. package/src/components/tool-bubble.ts +1 -0
  119. package/src/index-core.ts +2 -0
  120. package/src/markdown-parsers-eager.ts +2 -1
  121. package/src/markdown-parsers-entry.ts +1 -0
  122. package/src/markdown-parsers-loader.ts +2 -0
  123. package/src/postprocessors.ts +14 -0
  124. package/src/session.ts +3 -0
  125. package/src/styles/widget.css +6 -0
  126. package/src/types.ts +13 -0
  127. package/src/ui.background-conversations.test.ts +6 -0
  128. package/src/ui.footer-visibility.test.ts +54 -0
  129. package/src/ui.page-cache.test.ts +268 -0
  130. package/src/ui.postprocess.test.ts +80 -1
  131. package/src/ui.reveal-tool-call.test.ts +258 -0
  132. package/src/ui.ts +222 -32
  133. package/src/utils/actions.ts +3 -0
  134. package/src/utils/streaming-markdown.test.ts +103 -0
  135. package/src/utils/streaming-markdown.ts +186 -0
  136. package/dist/chunk-18tPmsiJ.js +0 -1
  137. package/dist/chunk-B3OrH9Ng.js +0 -2
  138. package/dist/chunk-Dp2vWE9V.js +0 -1
  139. package/dist/chunk-VloQ2dnh.js +0 -1
package/README.md CHANGED
@@ -28,6 +28,7 @@ import {
28
28
  initAgentWidget,
29
29
  createAgentExperience,
30
30
  markdownPostprocessor,
31
+ preprocessStreamingMarkdown,
31
32
  DEFAULT_WIDGET_CONFIG
32
33
  } from '@runtypelabs/persona';
33
34
 
@@ -43,7 +44,8 @@ createAgentExperience(inlineHost, {
43
44
  semantic: { colors: { accent: '#2563eb' } }
44
45
  },
45
46
  suggestions: { starters: { items: ['What can you do?', 'Show API docs'] } },
46
- postprocessMessage: ({ text }) => markdownPostprocessor(text)
47
+ postprocessMessage: ({ text, streaming }) =>
48
+ markdownPostprocessor(preprocessStreamingMarkdown(text, streaming))
47
49
  });
48
50
 
49
51
  // Floating launcher with runtime updates
@@ -274,3 +276,22 @@ for an actionable error message: v6 replaces thrown callback errors with a
274
276
  generic error and rejects `undefined` and other non-serializable results. v5's
275
277
  existing result conversion remains unchanged. Registration cleanup uses an
276
278
  AbortSignal in both versions.
279
+
280
+ ### Custom Markdown rendering during streaming
281
+
282
+ `postprocessMessage` receives the original display text, including incomplete Markdown.
283
+ After applying your own text transforms, call `preprocessStreamingMarkdown(text, streaming)`
284
+ before your Markdown parser to use the same display repairs as the built-in renderer:
285
+
286
+ ```ts
287
+ postprocessMessage: ({ text, streaming }) => {
288
+ const transformed = text.replace(/<answer>|<\/answer>/g, '');
289
+ return markdownPostprocessor(preprocessStreamingMarkdown(transformed, streaming));
290
+ }
291
+ ```
292
+
293
+ The helper returns completed text unchanged and does not change stored message content
294
+ or the callback's `raw` payload. It does not parse HTML or sanitize output; Persona's
295
+ configured sanitizer still runs after the callback. On the CDN build it is available as
296
+ `AgentWidget.preprocessStreamingMarkdown`. It uses the existing lazy Markdown parser
297
+ chunk when ready, with lightweight table repairs available before that chunk loads.
@@ -1,2 +1,2 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=`[data-persona-disclosure]`,t=/* @__PURE__ */ new WeakMap;function n(e){let t=e?.expansion;return{animation:t?.animation??(e?.future?.v5Defaults?`height`:`instant`),duration:Number.isFinite(t?.duration)?Math.max(0,t.duration):160,easing:t?.easing??`ease-out`}}const r=e=>{let t=Array.from(e.children);return{header:t.find(e=>e.matches(`button[data-expand-header]`)),content:t.find(e=>e.classList.contains(`persona-border-t`)),preview:t.find(e=>e.hasAttribute(`data-persona-collapsed-preview`))}},i=e=>r(e).header?.getAttribute(`aria-expanded`)===`true`,a=()=>typeof matchMedia==`function`&&matchMedia(`(prefers-reduced-motion: reduce)`).matches;function o(e){let{header:t,content:n}=r(e),i=e.getRootNode();n?.contains(i.activeElement)&&t?.focus({preventScroll:!0})}function s(e,t){let{content:n,preview:i}=r(e);n&&(t||o(e),n.inert=!t,n.style.display=t?``:`none`,i&&(i.style.display=t||!(i.textContent||i.childNodes.length)?`none`:``))}function c(e){t.get(e)?.finish()}function l(t){for(let n=t.parentElement?.closest(e);n;n=n.parentElement?.closest(e))c(n);t.querySelectorAll(e).forEach(c)}function u(e,i,o,u){let d=n(o),f=d.animation===`height`&&d.duration>0&&!a()&&e.isConnected&&typeof e.animate==`function`,p=f?u??e.getBoundingClientRect().height:0,m=f&&t.has(e)?r(e).content:void 0,h=m?getComputedStyle(m):void 0,g=h?{transform:h.transform,opacity:h.opacity}:void 0;if(l(e),c(e),s(e,i),!f)return;let{header:_,content:v,preview:y}=r(e);if(!_||!v)return;let b=e.getBoundingClientRect().height;if(p===b)return;i||(v.style.display=``,y&&(y.style.display=`none`));let x,S;try{x=e.animate([{height:`${p}px`,boxSizing:`border-box`,overflow:`hidden`},{height:`${b}px`,boxSizing:`border-box`,overflow:`hidden`}],{duration:d.duration,easing:d.easing,fill:`both`});let t=getComputedStyle(v),n={transform:t.transform||`none`,opacity:t.opacity||`1`},r={transform:`${n.transform===`none`?``:n.transform} translateY(-8px)`,opacity:`0`};S=v.animate([g??(i?r:n),i?n:r],{duration:d.duration,easing:d.easing,fill:`both`})}catch{x?.cancel(),s(e,i);return}let C,w=b,T=()=>{t.get(e)?.effect===x&&(t.delete(e),C?.disconnect(),x.onfinish=x.oncancel=null,x.cancel(),S.cancel(),s(e,i))};t.set(e,{effect:x,expanded:i,settings:JSON.stringify(d),finish:T}),x.onfinish=x.oncancel=T,i&&typeof ResizeObserver==`function`&&(C=new ResizeObserver(()=>{if(t.get(e)?.effect!==x||!e.isConnected)return;let n=x.effect,r=n?.getComputedTiming().progress;if(r==null||r<0||r>=1)return;let i=e.getBoundingClientRect().height,a=e.style.getPropertyValue(`height`),o=e.style.getPropertyPriority(`height`);e.style.setProperty(`height`,`auto`,`important`);let s=e.getBoundingClientRect().height;a?e.style.setProperty(`height`,a,o):e.style.removeProperty(`height`),s!==w&&(w=s,n.setKeyframes([{height:`${i}px`,offset:r,boxSizing:`border-box`,overflow:`hidden`},{height:`${s}px`,offset:1,boxSizing:`border-box`,overflow:`hidden`}]))}),C.observe(v),C.observe(_))}function d(s,l){let d=/* @__PURE__ */ new Set,f=/* @__PURE__ */ new Map,p=typeof matchMedia==`function`?matchMedia(`(prefers-reduced-motion: reduce)`):void 0,m=()=>d.forEach(c),h=()=>{p?.matches&&m()};p?.addEventListener?.(`change`,h);let g=()=>{let e=n(l());return e.animation===`height`&&e.duration>0&&!a()};return{prepare(u){if(f.clear(),!g()){m(),d.clear();return}let p=new Map(Array.from(s.querySelectorAll(e),e=>[e.id,e]));for(let s of u.querySelectorAll(e)){let e=p.get(s.id);if(!e)continue;d.add(e);let u=i(s),m=t.get(e);if(u!==i(e))f.set(e.id,e.getBoundingClientRect().height),u||o(e),c(e);else if(m){if(m.settings!==JSON.stringify(n(l()))||a())c(e);else if(!m.expanded){let{content:e,preview:t}=r(s);e&&(e.style.display=``,e.inert=!0),t&&(t.style.display=`none`)}}}},sync(){if(!g())m(),d.clear(),f.clear();else{for(let e of d)s.contains(e)||(c(e),d.delete(e));for(let r of s.querySelectorAll(e)){d.add(r);let e=f.get(r.id);e!==void 0&&u(r,i(r),l(),e);let o=t.get(r);o&&(o.settings!==JSON.stringify(n(l()))||a())&&c(r)}f.clear()}},clear(){s.querySelectorAll(e).forEach(c),m(),d.clear(),f.clear()},destroy(){this.clear(),p?.removeEventListener?.(`change`,h)}}}let f;const p=e=>{f=e},m=(...e)=>f?.applyLoadingLabel(...e),h=new Map([[`web_search|web_search_preview|WebSearch`,`Searching the web`,`Searched the web`,`globe`],[`web_fetch|WebFetch`,`Reading web pages`,`Read web pages`,`globe`,`single`],[`file_search|search_files|Glob`,`Searching files`,`Searched files`,`search`],[`read_text_file|read_multiple_files|Read`,`Reading files`,`Read files`,`file-text`,`single`],[`write_file|edit_file|apply_patch|Write|Edit|NotebookEdit`,`Editing files`,`Edited files`,`pencil`,`single`],[`list_directory|list_directory_with_sizes|directory_tree`,`Browsing files`,`Browsed files`,`folder`],[`Grep`,`Searching code`,`Searched code`,`search`],[`shell|local_shell|bash|Bash|PowerShell|bash_code_execution`,`Running commands`,`Ran commands`,`terminal`,`single`],[`code_interpreter|code_execution`,`Running code`,`Ran code`,`code-xml`],[`browser_navigate|browser_click|browser_snapshot|browser_fill_form`,`Using the browser`,`Used the browser`,`globe`],[`computer`,`Using the computer`,`Used the computer`,`monitor`],[`image_generation`,`Generating images`,`Generated images`,`image`],[`git_status|git_diff|git_diff_staged|git_diff_unstaged|git_log|git_show`,`Checking repository changes`,`Checked repository changes`,`file-code`],[`tool_search|ToolSearch`,`Finding tools`,`Looked up tools`,`search`],[`Agent`,`Delegating work`,`Delegated work`,`bot`],[`TodoWrite|TaskCreate|TaskUpdate`,`Updating the plan`,`Updated the plan`,`clipboard`],[`sql_db_query`,`Querying the database`,`Queried the database`,`database`],[`search_gmail`,`Searching email`,`Searched email`,`mail`]].flatMap(([e,...t])=>e.split(`|`).map(e=>[e,t]))),g=e=>{let t=e.replace(/([a-z\d])([A-Z])/g,`$1 $2`).replace(/[_-]+/g,` `).replace(/\s+/g,` `).toLowerCase();return t[0].toUpperCase()+t.slice(1)},_=e=>{let t=e.name?.trim()||`tool`,n=g(t);return h.get(t)??[`Using ${n}`,`Used ${n}`]},v=e=>_(e)[2]??`wrench`,y=(e,t)=>{let n=t.toolCall?.iconName;return(typeof n==`function`?n(e):n)??v(e)};function b(e,t){if(typeof t.toolCall?.iconName==`string`)return t.toolCall.iconName;let n=e.map(e=>y(e,t));return e.every((t,r)=>_(t)[0]===_(e[0])[0]&&n[r]===n[0])?n[0]:`toolbox`}const x=[[`approvalStatus`,`pending`,`Waiting for approval`],[`approvalStatus`,`denied`,`Approval denied`],[`approvalStatus`,`timeout`,`Approval expired`],[`success`,!1,`Failed`],[`interrupted`,!0,`Interrupted`],[`superseded`,!0,`Approved, ran again below`]],S=e=>e.error||x.some(([t,n])=>e[t]===n),C=e=>S(e)?g(e.name?.trim()||`tool`):_(e)[+(e.status===`complete`)],w=e=>{let t=C(e);return _(e)[3]&&!/^(read_multiple_files|apply_patch)$/.test(e.name?.trim()??``)?t.replace(/(web pages|files|commands)$/,e=>`a ${e.slice(0,-1)}`):t};function T(e,t=3){let n=e.length;if(n===0)return``;(!Number.isInteger(t)||t<0)&&(t=3);let r=/* @__PURE__ */ new Map;for(let t of e){let e=_(t)[0],n=r.get(e);(!n||n.status===`complete`&&!S(n))&&r.set(e,t)}let i=t?[...r.values()].slice(0,t).map((e,t)=>{let n=C(e);return t?n[0].toLowerCase()+n.slice(1):n}).join(`, `):n===1?`1 activity`:`${n} activities`,a=r.size-t;a>0&&t&&(i+=`, and ${a} more`);for(let[t,n,r]of x)e.some(e=>e[t]===n||n===!1&&e.error)&&(i+=` · ${r}`);return i}const E={backgroundColor:`background`,borderColor:`borderColor`,borderWidth:`borderWidth`,borderRadius:`borderRadius`,headerBackgroundColor:`header.background`,headerTextColor:`header.foreground`,contentBackgroundColor:`content.background`,contentTextColor:`content.foreground`,codeBlockBackgroundColor:`codeBlock.background`,codeBlockBorderColor:`codeBlock.borderColor`,codeBlockTextColor:`codeBlock.foreground`,toggleTextColor:`toggleForeground`,labelTextColor:`labelForeground`,loadingAnimationColor:`loading.primary`,loadingAnimationSecondaryColor:`loading.secondary`};function D({getExplicitLegacyStyle:e,hasExplicitThemeStyle:t}){function n(n){let r={...n?.toolCall};for(let[i,a]of Object.entries(E))e(n,`toolCall.${i}`)===void 0&&t(n,`toolBubble.${a}`)&&(r[i]=`var(--persona-components-toolBubble-${a.split(`.`).join(`-`)})`);return r}function r(n,r,i){n.classList.remove(`persona-theme-padding`),n.style.removeProperty(`--persona-theme-padding`);for(let e of[`padding-left`,`padding-right`,`padding-top`,`padding-bottom`])n.style.removeProperty(e);t(r,`toolBubble.${i}.padding`)&&(n.classList.add(`persona-theme-padding`),n.style.setProperty(`--persona-theme-padding`,`var(--persona-components-toolBubble-${i}-padding)`));let a=e(r,`toolCall.${i}PaddingX`),o=e(r,`toolCall.${i}PaddingY`);typeof a==`string`&&a&&(n.style.paddingLeft=a,n.style.paddingRight=a),typeof o==`string`&&o&&(n.style.paddingTop=o,n.style.paddingBottom=o)}function i(e){let n=e?.toolCall?.loadingAnimationDuration;return n===void 0?t(e,`toolBubble.loading.duration`)?`var(--persona-components-toolBubble-loading-duration)`:`2000ms`:`${n}ms`}return{resolveToolStyles:n,applyToolPadding:r,toolLoadingDuration:i}}let O;const k=()=>{throw Error(`Activity UI requires core style dependencies.`)};let A;const j=()=>A??k();let M=k,N=k;const P=(e,t,n)=>{A=n,{resolveToolStyles:M,applyToolPadding:N}=D(n),O=e,p(t)},F=(...e)=>O?.(...e)??null,I={};function L(e){let{executionId:t,phase:n}=e.agentMetadata??{};if(e.role!==`assistant`||typeof t!=`string`||!t)return;let r=e.variant===`tool`||e.variant===`reasoning`||n===`commentary`?`progress`:n===`partial_answer`||n===`final_answer`?`final`:void 0;if(r)return{id:t,kind:r,startedAt:Date.parse(e.createdAt)}}const ee={toolCallDisplay:{variant:`row`,grouped:!0,groupedMode:`collapsible`,autoExpand:!1,iconVisibility:`always`},reasoningDisplay:{appearance:`inset`,variant:`row`,autoExpand:!1,iconVisibility:`always`}},te=Object.entries(ee).flatMap(([e,t])=>Object.keys(t).map(t=>`features.${e}.${t}`)),ne=/* @__PURE__ */ new WeakMap;function re(e,t){return e.turnActivity??t.turnActivity?.resolveMessage?.(e)??L(e)}const ie=e=>{let t=e.toolCall,n=e.approval?.status??t.approvalStatus;return t.error||t.interrupted||t.success===!1||t.superseded||n&&n!==`approved`},ae=(e,t)=>e.toolCall?.actionTitle?.trim()||t?.toolCall?.resolveActionTitle?.(e.toolCall,e)?.trim()||void 0,oe=(e,t)=>ae(e,t)||w(e.toolCall);function se(e,t,n){let r=e.filter(e=>e.toolCall?.status!==`complete`);return t.features?.toolCallDisplay?.groupSummary===`current-action`&&r.length===1&&!e.some(ie)?oe(r[0],t):n}function ce(e,t){if(!e.turnActivity?.enabled||t.role!==`assistant`||re(t,e)?.kind!==`progress`)return e;let n=ne.get(e);if(n)return n;let{defaultProvenance:r,suppliedPath:i}=j(),a=r(e,te),o={...e.features};for(let t of[`toolCallDisplay`,`reasoningDisplay`]){let n={...o[t]};for(let[r,o]of Object.entries(ee[t]))!a.includes(`features.${t}.${r}`)&&i(e.preferences,`${t}.${r}`)!==`explicit`&&Object.assign(n,{[r]:o});o[t]=n}o.toolCallDisplay={...o.toolCallDisplay,groupSummary:o.toolCallDisplay?.groupSummary??(o.toolCallDisplay?.groupedMode===`stack`?`aggregate`:`current-action`)};let s={...e,features:o};return ne.set(e,s),s}const R={collapsedMode:`tool-call`,activePreview:!1,grouped:!1,groupedMode:`stack`,groupBoundary:`adjacent`,previewMaxLines:3,expandable:!0,loadingAnimation:`none`},z={activePreview:!1,previewMaxLines:3,expandable:!0,loadingAnimation:`none`},le={layout:`row`,variant:`row`,iconVisibility:`active`,autoExpand:!1,grouped:!0,groupedMode:`collapsible`,groupAppearance:`inset`,loadingAnimation:`shimmer`},ue={appearance:`inset`,layout:`row`,variant:`row`,iconVisibility:`active`,autoExpand:!1,loadingAnimation:`shimmer`},B=(e,t)=>{let n=document.createElement(e);return t&&(n.className=t),n},V=(e,t={},...n)=>{let r=document.createElement(e);if(t.className&&(r.className=t.className),t.text!==void 0&&(r.textContent=t.text),t.attrs)for(let[e,n]of Object.entries(t.attrs))r.setAttribute(e,n);if(t.style){let e=r.style,n=t.style;for(let t of Object.keys(n)){let r=n[t];r!=null&&(e[t]=r)}}let i=n.filter(e=>e!=null);return i.length>0&&r.append(...i),r},de=e=>{let t=e.completedAt??Date.now(),n=e.startedAt??t,r=e.durationMs===void 0?Math.max(0,t-n):e.durationMs;return`Thought for ${H(r).slice(0,-1)} seconds`},fe=e=>e.status===`complete`?de(e):e.status===`pending`?`Waiting`:``,pe=e=>{let t=typeof e.duration==`number`?e.duration:typeof e.durationMs==`number`?e.durationMs:Math.max(0,(e.completedAt??Date.now())-(e.startedAt??e.completedAt??Date.now()));return`Used tool for ${H(t).slice(0,-1)} seconds`},me=e=>e.status===`complete`?pe(e):`Using tool...`,H=e=>{let t=e/1e3;return t<.1?`<0.1s`:t>=10?`${Math.round(t)}s`:`${t.toFixed(1).replace(/\.0$/,``)}s`},U=e=>{if(e.interrupted&&e.duration===void 0&&e.durationMs===void 0&&(e.startedAt===void 0||e.completedAt===void 0))return``;let t=typeof e.duration==`number`?e.duration:typeof e.durationMs==`number`?e.durationMs:Math.max(0,(e.completedAt??Date.now())-(e.startedAt??e.completedAt??Date.now()));return H(t)},W=e=>{let t=e.durationMs===void 0?Math.max(0,(e.completedAt??Date.now())-(e.startedAt??e.completedAt??Date.now())):e.durationMs;return H(t)},he=(e,t,n)=>{if(!t)return n;let r=e.name?.trim()||`tool`,i=U(e);return t.replace(/\{toolName\}/g,r).replace(/\{duration\}/g,i)},ge=(e,t)=>{let n=e.replace(/\{toolName\}/g,t),r=[],i=/\*\*(.+?)\*\*|\*(.+?)\*|~(.+?)~/g,a=0,o;for(;(o=i.exec(n))!==null;)o.index>a&&G(r,n.slice(a,o.index),[]),o[1]===void 0?o[2]===void 0?o[3]!==void 0&&G(r,o[3],[`dim`]):G(r,o[2],[`italic`]):G(r,o[1],[`bold`]),a=o.index+o[0].length;return a<n.length&&G(r,n.slice(a),[]),r},G=(e,t,n)=>{let r=t.split(`{duration}`);for(let t=0;t<r.length;t++)r[t]&&e.push({text:r[t],styles:n}),t<r.length-1&&e.push({text:`{duration}`,styles:n,isDuration:!0})},_e=[`persona-w-full`,`persona-rounded-2xl`,`persona-bg-persona-surface`,`persona-border`,`persona-border-persona-message-border`,`persona-text-persona-primary`,`persona-shadow-sm`,`persona-overflow-hidden`,`persona-px-0`,`persona-py-0`],ve=(e,t)=>t==null?!1:typeof t==`string`?(e.textContent=t,!0):(e.appendChild(t),!0),K=(e,t)=>{let n=B(`div`,[`persona-message-bubble`,e,..._e].join(` `));return n.id=`bubble-${t}`,n.setAttribute(`data-message-id`,t),n.setAttribute(`data-persona-disclosure`,``),n},q=e=>{let t=B(`button`,e.expandable?`persona-flex persona-w-full persona-items-center persona-justify-between persona-gap-3 persona-bg-transparent persona-px-4 persona-py-3 persona-text-left persona-cursor-pointer persona-border-none`:`persona-flex persona-w-full persona-items-center persona-justify-between persona-gap-3 persona-bg-transparent persona-px-4 persona-py-3 persona-text-left persona-cursor-default persona-border-none`);return t.type=`button`,e.expandable&&(t.setAttribute(`aria-expanded`,e.expanded?`true`:`false`),t.setAttribute(`data-expand-header`,`true`)),t.setAttribute(`data-bubble-type`,e.bubbleType),t},J=(e,t,r,i)=>{let a=i?.expansion?.chevron?.[t?`expanded`:`collapsed`]??(i?.future?.v5Defaults?t?`down`:`right`:t?`up`:`down`),o=n(i),s=e.querySelector(`svg`);if(!s){if(s=F(`chevron-right`,16,r,1.5),!s)return;e.replaceChildren(s)}s.setAttribute(`stroke`,r),e.classList.add(`persona-disclosure-chevron`),e.style.transform=`rotate(${{right:0,down:90,left:180,up:-90}[a]}deg)`,e.style.transitionDuration=`${o.animation===`height`?o.duration:0}ms`,e.style.transitionTimingFunction=o.easing},Y=(e,t,n)=>{if(!n.expandable)return e.append(t),null;let r=B(`div`,`persona-flex persona-items-center`);J(r,n.expanded,n.iconColor,n.config);let i=B(`div`,n.metaGap?`persona-flex persona-items-center persona-gap-2 persona-ml-auto`:`persona-flex persona-items-center persona-ml-auto`);return i.append(r),e.append(t,i),r},ye=e=>{let t=B(`div`,`persona-px-4 persona-py-3 persona-text-xs persona-leading-snug persona-text-persona-muted`);if(t.setAttribute(`data-persona-collapsed-preview`,e.previewKind),t.style.display=`none`,t.style.whiteSpace=`pre-wrap`,!e.expanded&&e.isActive&&e.activePreview&&e.previewText){let n=e.renderPreview?.();ve(t,n)||(t.textContent=e.previewText),t.style.display=``}return!e.expanded&&e.isActive&&e.activeMinHeight&&(e.bubble.style.minHeight=e.activeMinHeight),t},be=e=>{e.header.setAttribute(`aria-expanded`,e.expanded?`true`:`false`),e.toggleIcon&&J(e.toggleIcon,e.expanded,e.iconColor,e.config),e.content.style.display=e.expanded?``:`none`,e.content.inert=!e.expanded,e.collapsedPreview.style.display=e.expanded?`none`:e.collapsedPreview.textContent||e.collapsedPreview.childNodes.length?``:`none`},xe=(e,t,n)=>{let r=n.stateSet.has(e),i=t.querySelector(`button[data-expand-header="true"]`),a=t.querySelector(`.persona-border-t`);if(!i||!a)return;i.setAttribute(`aria-expanded`,r?`true`:`false`);let o=i.querySelector(`.persona-ml-auto`)?.querySelector(`:scope > .persona-flex.persona-items-center`);o&&J(o,r,n.iconColor,n.config),u(t,r,n.config)},Se=(e,t,n,r,i,a)=>{e.textContent=``;for(let o of ge(t,n))(o.styles.length?e.appendChild(B(`span`,o.styles.map(e=>`persona-tool-text-${e}`).join(` `))):e).append(o.isDuration?r?a():i:o.text)},Ce=(e,t,n,r)=>{let i=n instanceof HTMLElement;return t.textContent=typeof n==`string`&&n.trim()?n:r,e.appendChild(i?n:t),i},we=(e,t,n)=>e.split(/\r?\n/).map(e=>e.trim()).filter(Boolean).slice(t,n).join(`
2
- `);function X(e,t,n){e&&n&&(e=ce(e,n));let r=t===`tool`,i=r?`toolCallDisplay`:`reasoningDisplay`;return{...e,features:{...e?.features,[i]:{...r?R:z,...e?.future?.v5Defaults===!0?r?le:ue:{},...e?.features?.[i],layout:Z(e,t)}}}}function Z(e,t,n){e&&n&&(e=ce(e,n));let r=t===`tool`?`toolCallDisplay`:`reasoningDisplay`;return e?.features?.[r]?.layout??e?.features?.[r]?.variant??(e?.future?.v5Defaults?`row`:`card`)}function Te(e){let t=Math.max(0,Math.floor((e??0)/1e3));return t<1?`a moment`:t<60?`${t}s`:`${Math.floor(t/60)}m ${t%60}s`}function Ee(e,t){let n=Number(e.getAttribute(`data-tool-elapsed`));if(!n)return;let r=t-n;e.textContent=e.classList.contains(`persona-activity-duration`)?De(r,e.dataset.prefix):e.closest(`.persona-activity-row`)?Te(r):H(r)}const De=(e,t=``)=>Number.isFinite(e)&&e>=1e3?t+Te(e):``;function Q(e,t,n,r,i=!1,a){let o=i||Z(n,r)===`row`,s=e.querySelector(`:scope > button`),c=r===`tool`?t.toolCall:t.reasoning,l=c?.status!==`complete`,u=n.features?.toolCallDisplay?.durationDisplay;if(s&&(o||n.future?.v5Defaults)&&r===`tool`&&c&&(u===`all`||u===(i?`group`:`tools`))){let e=B(`span`,`persona-activity-duration`),{startedAt:n,completedAt:r,durationMs:i}=c;l&&n>0&&n<=Date.now()&&e.setAttribute(`data-tool-elapsed`,String(n));let a=t.toolCall?.duration??i??r-n;e.textContent=De(l&&n!==void 0?n>0?Date.now()-n:void 0:a),s.appendChild(e)}if(!o)return e;if(e.className=`persona-message-bubble persona-${r}-bubble persona-activity-row`,e.dataset.activityKind=r,r===`tool`){let t=j().getExplicitLegacyStyle(n,`toolCall.shadow`);e.style.boxShadow=typeof t==`string`?t.trim()||`none`:`var(--persona-consumer-toolBubble-shadow, none)`}if(!s)return e;s.className=s.classList.contains(`persona-theme-padding`)?`persona-activity-header persona-theme-padding`:`persona-activity-header`;let d=t.approval?.status??t.toolCall?.approvalStatus,f=t.toolCall?.interrupted?`interrupted`:d===`denied`||d===`timeout`?`denied`:d===`pending`?`awaiting-approval`:t.toolCall?.success===!1?`error`:l?c?.status===`pending`?`pending`:`running`:`done`;e.dataset.activityState=f;let p=B(`span`,`persona-activity-icon`);p.dataset.activityIcon=f;let m=r===`reasoning`?n.features?.reasoningDisplay?.iconName:void 0,h=f===`done`?r===`reasoning`?m||`brain`:a??(i?`toolbox`:y(t.toolCall,n)):void 0;h&&h!==`check`&&(p.style.color=`inherit`);let g=F(m||(f===`pending`?`circle`:f===`awaiting-approval`?`clock`:f===`running`?`loader-circle`:f===`done`?h||`check`:`x`),16,`currentColor`,2);!g&&h&&(g=F(`square-text`,16,`currentColor`,2)),g&&p.appendChild(g),s.querySelector(`.persona-reasoning-header-icon`)?.remove();let _=r===`tool`?`toolCallDisplay`:`reasoningDisplay`,v=(i?n.features?.toolCallDisplay?.groupIconVisibility:void 0)??n.features?.[_]?.iconVisibility??(n.future?.v5Defaults?`active`:`always`);(v===`always`||v===`active`&&f!==`done`)&&s.prepend(p),s.querySelector(`:scope > div:not(.persona-ml-auto)`)?.classList.add(`persona-activity-label`),s.querySelector(`.persona-ml-auto`)?.classList.add(`persona-activity-chevron`);let b=e.querySelector(`:scope > .persona-border-t`);return b?.classList.add(`persona-activity-body`),b&&(b.id=`activity-details-${t.id}`,s.setAttribute(`aria-controls`,b.id)),e}function Oe(e,t,n=()=>({})){let r=t?d(t,n):void 0,i=/* @__PURE__ */ new Map,a=e=>{let t=i.get(e)??{};return i.set(e,t),t},o=e=>{clearTimeout(e.timer),e.timer=void 0};return{observe(t,r,s,c={},l){let u=r===`tool`?t.toolCall:t.reasoning;if(!u)return;let d=X(n(),r,t).features;c={...r===`tool`?d?.toolCallDisplay:d?.reasoningDisplay,...c},!i.has(t.id)&&l!==void 0&&(s[l?`add`:`delete`](t.id),a(t.id).manual=i.get(l)?.manual);let f=a(t.id);if(!f.manual&&(u.status!==`complete`&&(o(f),f.finished=!1),!f.seen&&u.status!==`complete`&&u.chunks?.some(Boolean)&&(f.seen=!0,c.autoExpand!==!1&&s.add(t.id)),f.seen&&u.status===`complete`&&!f.finished)){if(f.finished=!0,c.autoCollapseDelay===!1)return;f.timer=setTimeout(()=>{f.timer=void 0,s.delete(t.id),e(t.id,r)},c.autoCollapseDelay??1e3)}},manual(e){let t=a(e);t.manual=!0,o(t)},prune(e){for(let[t,n]of i)e.has(t)||(o(n),i.delete(t))},prepare(e){r?.prepare(e)},sync(){r?.sync()},clear(){i.forEach(o),i.clear(),r?.clear()},destroy(){this.clear(),r?.destroy()}}}function ke(e,t,r,i,a=typeof i==`string`,o){let s=K(`persona-tool-bubble`,e.id),c=q({expandable:!0,expanded:r,bubbleType:`tool`}),l=B(`div`,``);typeof i==`string`?l.textContent=i:l.appendChild(i);let u=M(t);Y(c,l,{config:t,expandable:!0,expanded:r,iconColor:u.toggleTextColor||u.headerTextColor||`currentColor`,metaGap:!0});let d=B(`div`,`persona-border-t`);return d.style.display=r?``:`none`,d.inert=!r,s.append(c,d),Q(s,e,t,`tool`,!0,o),s.dataset.personaToolGroup=`true`,n(t).animation===`height`&&(s.dataset.personaDisclosureMotion=`height`),a&&(s.dataset.activityState===`running`||s.dataset.activityState===`pending`)&&m(l,t,`tool-group`),{bubble:s,body:d}}const $=e=>{if(e===null)return`null`;if(e===void 0)return``;if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`boolean`)return String(e);try{return JSON.stringify(e,null,2)}catch{return String(e)}},Ae=e=>{if(e==null)return!0;if(typeof e==`string`){if(!e.trim())return!0;try{return Ae(JSON.parse(e))}catch{return!1}}return typeof e==`object`&&Object.keys(e).length===0},je=e=>{if(typeof e==`object`&&e)return!0;if(typeof e!=`string`)return!1;try{let t=JSON.parse(e);return typeof t==`object`&&!!t}catch{return!1}};function Me(e,t,n){let r=t.toolCall;if(!r)return;let i=M(n),a=(t,n)=>{let r=V(`section`,{className:`persona-tool-detail`,attrs:{"data-persona-tool-detail":t.toLowerCase()},style:{backgroundColor:i.codeBlockBackgroundColor,borderColor:i.codeBlockBorderColor,borderWidth:i.codeBlockBorderColor?`1px`:void 0}}),a=V(`div`,{className:`persona-tool-detail-label`,text:t,style:{color:i.labelTextColor}}),o=$(n),s=V(`pre`,{className:`persona-activity-scroll persona-tool-detail-value${je(n)?` persona-tool-detail-code`:``}`,text:o,attrs:{tabindex:`0`,role:`region`,"aria-label":`${t} content`},style:{color:i.codeBlockTextColor??i.contentTextColor}}),c=V(`button`,{className:`persona-tool-detail-copy`,attrs:{type:`button`,"data-persona-copy-tool-detail":``,"aria-label":`Copy ${t.toLowerCase()}`,title:`Copy ${t.toLowerCase()}`}}),l=F(`copy`,14,`currentColor`,1.7);l&&c.appendChild(l),r.append(a,s,c),e.appendChild(r)};Ae(r.args)||a(`Request`,r.args);let o=r.status===`complete`&&r.result!==void 0?r.result:r.chunks?.join(``);o!==void 0&&(typeof o!=`string`||o.trim())&&a(`Response`,o),r.success===!1&&e.appendChild(V(`div`,{className:`persona-text-sm persona-whitespace-pre-wrap`,text:r.error||`Tool failed`,attrs:{"data-persona-tool-error":``,role:`status`}}))}const Ne=(e,t=!1)=>e.toggleTextColor||e.headerTextColor||(t?`currentColor`:`var(--persona-primary, #171717)`),Pe=(e,t)=>{let n=(e.chunks??[]).join(``).trim();return n?we(n,-t):we($(e.args),0,t)},Fe=(e,t,n)=>{let r=n?.features?.toolCallDisplay,i=Z(n,`tool`)===`row`,a=r?.collapsedMode??R.collapsedMode,o=t.success===!1?t.error||`Tool failed`:Pe(t,r?.previewMaxLines??R.previewMaxLines),s=i&&a===`tool-call`?w({...t,approvalStatus:e.approval?.status??t.approvalStatus}):t.interrupted?`${t.name?.trim()||`Tool`} · Interrupted`:n?.future?.v5Defaults||i?`${t.status===`complete`?`Used`:`Using`} ${t.name?.trim()||`tool`}`:me(t),c=t.status!==`complete`,l=n?.toolCall??{},u=c&&i&&a===`tool-call`&&!ie(e)?oe(e,n):s;a===`tool-name`?u=t.name?.trim()||s:a===`tool-preview`&&o&&(u=o),c&&l.activeTextTemplate?u=he(t,l.activeTextTemplate,u):!c&&!t.interrupted&&l.completeTextTemplate&&(u=he(t,l.completeTextTemplate,u)),t.interrupted?u.includes(` · Interrupted`)||(u+=` · Interrupted`):t.success===!1?u+=` · Failed`:t.superseded&&(u+=` · Approved, ran again below`);let d=e.approval?.status??t.approvalStatus;return d===`pending`?u+=` · Waiting for approval`:d===`denied`?u+=` · Approval denied`:d===`timeout`&&(u+=` · Approval expired`),{summary:u,previewText:o,isActive:c}},Ie=(e,t,n,r)=>{xe(e,t,{stateSet:n,config:r,iconColor:Ne(M(r),t.classList.contains(`persona-activity-row`))})},Le=(e,t,n=/* @__PURE__ */ new Set)=>{t=X(t,`tool`,e);let r=e.toolCall,i=M(t),a=K(`persona-tool-bubble`,e.id);if(i.backgroundColor&&(a.style.backgroundColor=i.backgroundColor),i.borderColor&&(a.style.borderColor=i.borderColor),i.borderWidth&&(a.style.borderWidth=i.borderWidth),i.borderRadius&&(a.style.borderRadius=i.borderRadius),a.style.boxShadow=i.shadow===void 0?`var(--persona-tool-bubble-shadow)`:i.shadow.trim()===``?`none`:i.shadow,!r)return Q(a,e,t,`tool`);let o=t.features.toolCallDisplay,s=o.expandable??R.expandable,c=s&&n.has(e.id),{summary:l,previewText:u,isActive:d}=Fe(e,r,t),f=q({expandable:s,expanded:c,bubbleType:`tool`});i.headerBackgroundColor&&(f.style.backgroundColor=i.headerBackgroundColor),N(f,t,`header`);let p=B(`div`,`persona-flex persona-flex-col persona-text-left`),h=B(`span`,`persona-text-xs persona-text-persona-primary`);i.headerTextColor&&(h.style.color=i.headerTextColor);let g=String(r.startedAt??Date.now()),_=()=>{let e=B(`span`,``);return d&&e.setAttribute(`data-tool-elapsed`,g),e.textContent=U(r),e},v=i.renderCollapsedSummary?.({message:e,toolCall:r,defaultSummary:l,actionTitle:ae(e,t),previewText:u,collapsedMode:o.collapsedMode??R.collapsedMode,isActive:d,config:t,elapsed:U(r),createElapsedElement:_}),y=Ce(p,h,v,l),b=i.activeTextTemplate,x=r.interrupted?void 0:i.completeTextTemplate,S=d?b:x;y||(S&&Se(h,S,r.name?.trim()||`tool`,d,U(r),_),d&&m(h,t,`tool`));let C=Ne(i,Z(t,`tool`)===`row`),w=Y(f,p,{config:t,expandable:s,expanded:c,iconColor:C,metaGap:!0}),T=ye({bubble:a,previewKind:`tool`,expanded:c,isActive:d,previewText:u,activePreview:o.activePreview,activeMinHeight:o.activeMinHeight,renderPreview:()=>i.renderCollapsedPreview?.({message:e,toolCall:r,defaultPreview:u,isActive:d,config:t})});if(!s)return a.append(f,T),Q(a,e,t,`tool`);let E=B(`div`,`persona-border-t persona-border-gray-200 persona-bg-gray-50 persona-space-y-3 persona-px-4 persona-py-3`);E.style.display=c?``:`none`,i.contentBackgroundColor&&(E.style.backgroundColor=i.contentBackgroundColor),i.contentTextColor&&(E.style.color=i.contentTextColor),N(E,t,`content`);let D=t.future?.v5Defaults===!0;if(o.showToolName&&r.name&&E.appendChild(V(`div`,{className:`persona-text-xs persona-text-persona-muted${D?``:` persona-italic`}`,attrs:{"data-persona-tool-name":``},text:r.name,style:{color:D?void 0:i.contentTextColor||i.headerTextColor}})),D)Me(E,e,t);else{let e=(e,t)=>{let n=B(`div`,`persona-space-y-1`),r=V(`div`,{className:`persona-text-xs persona-text-persona-muted`,text:e,style:{color:i.labelTextColor}}),a=V(`pre`,{className:`persona-whitespace-pre-wrap persona-rounded-lg persona-border persona-px-3 persona-py-2 persona-text-xs`,style:{fontSize:`0.75rem`,lineHeight:`1rem`,backgroundColor:i.codeBlockBackgroundColor??`var(--persona-container, #f3f4f6)`,borderColor:i.codeBlockBorderColor??`var(--persona-border, #e5e7eb)`,color:i.codeBlockTextColor??`var(--persona-text, #171717)`}},V(`span`,{className:`persona-activity-scroll`,text:$(t),attrs:{role:`region`,"aria-label":e}}));n.append(r,a),E.appendChild(n)};r.args!==void 0&&e(`Arguments`,r.args),r.chunks?.length&&e(`Activity`,r.chunks.join(``)),r.success===!1&&E.appendChild(V(`div`,{className:`persona-text-sm persona-whitespace-pre-wrap`,text:r.error||`Tool failed`,attrs:{"data-persona-tool-error":``}})),r.status===`complete`&&r.result!==void 0&&e(`Result`,r.result)}return be({expanded:c,header:f,toggleIcon:w,content:E,collapsedPreview:T,iconColor:C,config:t}),a.append(f,T,E),Q(a,e,t,`tool`)},Re=(e,t,n,r)=>{xe(e,t,{stateSet:n,config:r,iconColor:`currentColor`})},ze=(e,t,n=/* @__PURE__ */ new Set)=>{t=X(t,`reasoning`,e);let r=e.reasoning,i=K(`persona-reasoning-bubble`,e.id);if(!r)return Q(i,e,t,`reasoning`);let a=t.features.reasoningDisplay,o=a.expandable??z.expandable,s=o&&n.has(e.id),c=r.status!==`complete`,l=we(e.reasoning?.chunks.join(``)??``,0,a.previewMaxLines??z.previewMaxLines),u=q({expandable:o,expanded:s,bubbleType:`reasoning`}),d=B(`div`,`persona-flex persona-flex-col persona-text-left`),f=B(`span`,`persona-text-xs persona-text-persona-primary`),p=Z(t,`reasoning`)===`row`;i.dataset.appearance=a.appearance??(t.future?.v5Defaults?`inset`:p?`plain`:`panel`);let h=p&&!c?`Thought for ${Te(r.durationMs??(r.completedAt-r.startedAt||void 0))}`:`Thinking...`,g=t.reasoning??{},_=String(r.startedAt??Date.now()),v=()=>{let e=B(`span`,``);return e.setAttribute(`data-tool-elapsed`,_),e.textContent=W(r),e},y=g.renderCollapsedSummary?.({message:e,reasoning:r,defaultSummary:h,previewText:l,isActive:c,config:t,elapsed:W(r),createElapsedElement:v}),b=Ce(d,f,y,h),x=B(`span`,`persona-text-xs persona-text-persona-primary`);x.textContent=fe(r),p||d.appendChild(x);let S=g.activeTextTemplate,C=g.completeTextTemplate,w=c?S:C;if(b||(w&&(x.style.display=`none`,Se(f,w,``,c,W(r),v)),f.style.display=!w&&!c&&!p?`none`:``,c&&m(f,t,`reasoning`)),a.iconName&&!b){let e=B(`span`,`persona-reasoning-header-icon`),t=F(a.iconName,16,`currentColor`,2);t&&(e.appendChild(t),u.appendChild(e))}let T=`currentColor`,E=Y(u,d,{config:t,expandable:o,expanded:s,iconColor:T,metaGap:!1}),D=ye({bubble:i,previewKind:`reasoning`,expanded:s,isActive:c,previewText:l,activePreview:a.activePreview,activeMinHeight:a.activeMinHeight,renderPreview:()=>t.reasoning?.renderCollapsedPreview?.({message:e,reasoning:r,defaultPreview:l,isActive:c,config:t})});if(!o)return i.append(u,D),Q(i,e,t,`reasoning`);let O=B(`div`,`persona-border-t persona-border-gray-200 persona-bg-gray-50 persona-px-4 persona-py-3`),k=a.maxHeight,A=V(`div`,{className:`persona-whitespace-pre-wrap`},V(`div`,{className:`persona-activity-scroll`,text:r.chunks.join(``)||(c?`Waiting for details…`:`No additional context was shared.`),style:{maxHeight:k},attrs:{tabindex:`0`,role:`region`,"aria-label":`Reasoning`}}));return O.appendChild(A),be({expanded:s,header:u,toggleIcon:E,content:O,collapsedPreview:D,iconColor:T,config:t}),i.append(u,D,O),Q(i,e,t,`reasoning`)};function Be(e){let{config:t,messages:n,tempContainer:r,streaming:i,runActivity:a,showToolCalls:o,showReasoning:s,dropCompletedToolCalls:c,dropReasoningRow:l,createMessageRow:u,activityIds:d,activityLifecycle:f,toolExpansionState:p}=e,h=I.render;if(t.turnActivity?.enabled&&h)return h(e,{group:ke,tools:Be,classify:re,presentation:ce,hasExplicitThemeStyle:j().hasExplicitThemeStyle});let g=t.features?.toolCallDisplay;if(g?.grouped){let e=[],h=[],_=g.groupBoundary===`iteration`,v=g.groupedMode===`summary`,y=()=>{h.length&&e.push(h),h=[]};n.forEach(e=>{if(e.variant===`tool`&&e.toolCall&&o){if(c&&e.toolCall.status===`complete`&&!e.toolCall.interrupted)return;let t=h[h.length-1]?.agentMetadata,n=e.agentMetadata;_&&t&&n&&(t.executionId&&n.executionId&&t.executionId!==n.executionId||t.iteration!==void 0&&n.iteration!==void 0&&t.iteration!==n.iteration)&&y(),h.push(e)}else(e.variant!==`reasoning`||s&&(e.reasoning?.status!==`complete`||!l(e.reasoning)))&&y()}),y();let x=/* @__PURE__ */ new Map;for(let e of r.children)e instanceof HTMLElement&&x.set(e.dataset.wrapperId,e);e.forEach((n,r)=>{let o=n.map(e=>x.get(e.id)).filter(e=>!!e);if(o.length<(v?1:2))return;let s=`tool-group-${n[0].id}`,c=u(s,`assistant`);c.dataset.personaToolGroupRow=`true`,(g.groupAppearance||t.future?.v5Defaults)&&(c.dataset.groupAppearance=g.groupAppearance??`inset`);let l=n.map(e=>e.toolCall),h=l.some(e=>e.interrupted),y=r===e.length-1,S=n.some(e=>a?.messageIds.has(e.id)),C={messages:n,toolCalls:l,config:t,streaming:i,isLatestGroup:y,isCurrentRunGroup:S},w=n.map(e=>e.approval?.status??e.toolCall?.approvalStatus),E=[`pending`,`denied`,`timeout`].find(e=>w.includes(e)),D=!l.some(e=>e.success===!1||e.error),O=h||!D||E,k=l.some(e=>e.status!==`complete`),A=k||!_&&i&&y&&S&&!O,j=`${n.length} tool${n.length===1?``:`s`}`,M=g.groupedMode===`collapsible`||Z(t,`tool`)===`row`?T(l.map((e,t)=>({...e,approvalStatus:w[t]})),g.groupSummaryMaxItems):h?`${j} · Interrupted`:`Called ${j}`,N=se(n,t,M),P=t.toolCall?.renderGroupedSummary?.({...C,defaultSummary:N})??N;if(o[0].before(c),g.groupedMode===`collapsible`){let e={...n[0],id:s,approval:void 0,toolCall:{id:s,status:A?`running`:`complete`,chunks:l.flatMap(e=>e.chunks??[]),success:D,interrupted:h,approvalStatus:E}};if(l.every(e=>Ve(e.startedAt)&&(e.status!==`complete`||Ve(e.completedAt)&&e.completedAt>=e.startedAt))){let t=Math.min(...l.map(e=>e.startedAt)),n=Math.max(...l.map(e=>e.completedAt??e.startedAt));k?e.toolCall.startedAt=t:e.toolCall.durationMs=n-t}d.add(s),f.observe(e,`tool`,p,g,n.find(e=>p.has(e.id))?.id??``);let r=ke(e,t,p.has(s),P,void 0,!A&&!O?b(l,t):void 0);r.bubble.classList.add(`persona-tool-group`),r.body.dataset.personaToolGroupStack=`true`,c.appendChild(r.bubble),o.forEach((e,t)=>{He(e),e.style.setProperty(`--persona-activity-stagger`,`${t*40}ms`),e.classList.add(`persona-activity-group-child`),r.body.appendChild(e)});return}let F=B(`div`,`persona-tool-group persona-flex persona-w-full persona-flex-col persona-gap-2`);F.dataset.personaToolGroup=`true`;let I=B(`div`,`persona-tool-group-summary persona-text-xs persona-text-persona-muted`);if(I.id=`tool-group-summary-${n[0].id}`,ve(I,P),!(P instanceof HTMLElement)&&A&&!O&&m(I,t,`tool-group`),F.appendChild(I),c.appendChild(F),v){for(let e of o)e.remove();return}let L=B(`div`,`persona-tool-group-stack persona-flex persona-flex-col`);L.id=`tool-group-stack-${n[0].id}`,L.dataset.personaToolGroupStack=`true`,F.appendChild(L),o.forEach((e,t)=>{He(e);let n=B(`div`,`persona-tool-group-item persona-relative`);n.dataset.personaToolGroupItem=`true`,t<o.length-1&&(n.dataset.personaToolGroupConnector=`true`),n.appendChild(e),L.appendChild(n)})})}return!1}const Ve=e=>e>0&&e<=Date.now(),He=e=>e.style.setProperty(`--persona-message-row-max-width`,`100%`);function Ue(e){let t=`.persona-activity-scroll`,n=e=>{let t=e.scrollHeight-e.clientHeight,n=e.clientHeight>0&&t>1;e.toggleAttribute(`data-persona-scroll-top`,n&&e.scrollTop>1),e.toggleAttribute(`data-persona-scroll-bottom`,n&&t-e.scrollTop>1),e.tabIndex=n?0:-1},r=typeof ResizeObserver>`u`?void 0:new ResizeObserver(e=>{for(let{target:t}of e)n(t)}),i=()=>{r?.disconnect(),e.querySelectorAll(t).forEach(e=>{r?.observe(e),n(e)})},a=e=>{let r=e.target;r.matches(t)&&n(r)};return e.addEventListener(`scroll`,a,!0),{sync:i,destroy(){r?.disconnect(),e.removeEventListener(`scroll`,a,!0)}}}function We(e,t,n,r,i,a){let o=Ue(e),s=Oe((e,o)=>{i.delete(e);let s=a(e);s&&(o===`tool`?Ie(e,s,n,t()):Re(e,s,r,t()))},e,t);return{...s,sync(){s.sync(),o.sync()},destroy(){s.destroy(),o.destroy()},observeMessages(e,i){let a=t();for(let t of e){let e=t.variant===`tool`?`tool`:t.variant===`reasoning`?`reasoning`:null;if(!e||Z(a,e,t)!==`row`)continue;let o=X(a,e,t).features,c=e===`tool`?o?.toolCallDisplay:o?.reasoningDisplay;c?.expandable!==!1&&(i.add(t.id),s.observe(t,e,e===`tool`?n:r,c))}}}}exports.createActivityLifecycle=We,exports.createReasoningBubble=ze,exports.createToolBubble=Le,exports.groupToolRows=Be,exports.initActivityUi=P,exports.turnUi=I,exports.updateActivityElapsed=Ee,exports.updateReasoningBubbleUI=Re,exports.updateToolBubbleUI=Ie;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=`[data-persona-disclosure]`,t=/* @__PURE__ */ new WeakMap;function n(e,n){t.get(e)?.effect.finished?.then(n,n)??n()}function r(e){let t=e?.expansion;return{animation:t?.animation??(e?.future?.v5Defaults?`height`:`instant`),duration:Number.isFinite(t?.duration)?Math.max(0,t.duration):160,easing:t?.easing??`ease-out`}}const i=e=>{let t=Array.from(e.children);return{header:t.find(e=>e.matches(`button[data-expand-header]`)),content:t.find(e=>e.classList.contains(`persona-border-t`)),preview:t.find(e=>e.hasAttribute(`data-persona-collapsed-preview`))}},a=e=>i(e).header?.getAttribute(`aria-expanded`)===`true`,o=()=>typeof matchMedia==`function`&&matchMedia(`(prefers-reduced-motion: reduce)`).matches;function s(e){let{header:t,content:n}=i(e),r=e.getRootNode();n?.contains(r.activeElement)&&t?.focus({preventScroll:!0})}function c(e,t){let{content:n,preview:r}=i(e);n&&(t||s(e),n.inert=!t,n.style.display=t?``:`none`,r&&(r.style.display=t||!(r.textContent||r.childNodes.length)?`none`:``))}function l(e){t.get(e)?.finish()}function u(t){for(let n=t.parentElement?.closest(e);n;n=n.parentElement?.closest(e))l(n);t.querySelectorAll(e).forEach(l)}function d(e,n,a,s){let d=r(a),f=d.animation===`height`&&d.duration>0&&!o()&&e.isConnected&&typeof e.animate==`function`,p=f?s??e.getBoundingClientRect().height:0,m=f&&t.has(e)?i(e).content:void 0,h=m?getComputedStyle(m):void 0,g=h?{transform:h.transform,opacity:h.opacity}:void 0;if(u(e),l(e),c(e,n),!f)return;let{header:_,content:v,preview:y}=i(e);if(!_||!v)return;let b=e.getBoundingClientRect().height;if(p===b)return;n||(v.style.display=``,y&&(y.style.display=`none`));let x,S;try{x=e.animate([{height:`${p}px`,boxSizing:`border-box`,overflow:`hidden`},{height:`${b}px`,boxSizing:`border-box`,overflow:`hidden`}],{duration:d.duration,easing:d.easing,fill:`both`});let t=getComputedStyle(v),r={transform:t.transform||`none`,opacity:t.opacity||`1`},i={transform:`${r.transform===`none`?``:r.transform} translateY(-8px)`,opacity:`0`};S=v.animate([g??(n?i:r),n?r:i],{duration:d.duration,easing:d.easing,fill:`both`})}catch{x?.cancel(),c(e,n);return}let C,w=b,T=()=>{t.get(e)?.effect===x&&(t.delete(e),C?.disconnect(),x.onfinish=x.oncancel=null,x.cancel(),S.cancel(),c(e,n))};t.set(e,{effect:x,expanded:n,settings:JSON.stringify(d),finish:T}),x.onfinish=x.oncancel=T,n&&typeof ResizeObserver==`function`&&(C=new ResizeObserver(()=>{if(t.get(e)?.effect!==x||!e.isConnected)return;let n=x.effect,r=n?.getComputedTiming().progress;if(r==null||r<0||r>=1)return;let i=e.getBoundingClientRect().height,a=e.style.getPropertyValue(`height`),o=e.style.getPropertyPriority(`height`);e.style.setProperty(`height`,`auto`,`important`);let s=e.getBoundingClientRect().height;a?e.style.setProperty(`height`,a,o):e.style.removeProperty(`height`),s!==w&&(w=s,n.setKeyframes([{height:`${i}px`,offset:r,boxSizing:`border-box`,overflow:`hidden`},{height:`${s}px`,offset:1,boxSizing:`border-box`,overflow:`hidden`}]))}),C.observe(v),C.observe(_))}function f(n,c){let u=/* @__PURE__ */ new Set,f=/* @__PURE__ */ new Map,p=typeof matchMedia==`function`?matchMedia(`(prefers-reduced-motion: reduce)`):void 0,m=()=>u.forEach(l),h=()=>{p?.matches&&m()};p?.addEventListener?.(`change`,h);let g=()=>{let e=r(c());return e.animation===`height`&&e.duration>0&&!o()};return{prepare(d){if(f.clear(),!g()){m(),u.clear();return}let p=new Map(Array.from(n.querySelectorAll(e),e=>[e.id,e]));for(let n of d.querySelectorAll(e)){let e=p.get(n.id);if(!e)continue;u.add(e);let d=a(n),m=t.get(e);if(d!==a(e))f.set(e.id,e.getBoundingClientRect().height),d||s(e),l(e);else if(m){if(m.settings!==JSON.stringify(r(c()))||o())l(e);else if(!m.expanded){let{content:e,preview:t}=i(n);e&&(e.style.display=``,e.inert=!0),t&&(t.style.display=`none`)}}}},sync(){if(!g())m(),u.clear(),f.clear();else{for(let e of u)n.contains(e)||(l(e),u.delete(e));for(let i of n.querySelectorAll(e)){u.add(i);let e=f.get(i.id);e!==void 0&&d(i,a(i),c(),e);let n=t.get(i);n&&(n.settings!==JSON.stringify(r(c()))||o())&&l(i)}f.clear()}},clear(){n.querySelectorAll(e).forEach(l),m(),u.clear(),f.clear()},destroy(){this.clear(),p?.removeEventListener?.(`change`,h)}}}let p;const m=e=>{p=e},h=(...e)=>p?.applyLoadingLabel(...e),g=new Map([[`web_search|web_search_preview|WebSearch`,`Searching the web`,`Searched the web`,`globe`],[`web_fetch|WebFetch`,`Reading web pages`,`Read web pages`,`globe`,`single`],[`file_search|search_files|Glob`,`Searching files`,`Searched files`,`search`],[`read_text_file|read_multiple_files|Read`,`Reading files`,`Read files`,`file-text`,`single`],[`write_file|edit_file|apply_patch|Write|Edit|NotebookEdit`,`Editing files`,`Edited files`,`pencil`,`single`],[`list_directory|list_directory_with_sizes|directory_tree`,`Browsing files`,`Browsed files`,`folder`],[`Grep`,`Searching code`,`Searched code`,`search`],[`shell|local_shell|bash|Bash|PowerShell|bash_code_execution`,`Running commands`,`Ran commands`,`terminal`,`single`],[`code_interpreter|code_execution`,`Running code`,`Ran code`,`code-xml`],[`browser_navigate|browser_click|browser_snapshot|browser_fill_form`,`Using the browser`,`Used the browser`,`globe`],[`computer`,`Using the computer`,`Used the computer`,`monitor`],[`image_generation`,`Generating images`,`Generated images`,`image`],[`git_status|git_diff|git_diff_staged|git_diff_unstaged|git_log|git_show`,`Checking repository changes`,`Checked repository changes`,`file-code`],[`tool_search|ToolSearch`,`Finding tools`,`Looked up tools`,`search`],[`Agent`,`Delegating work`,`Delegated work`,`bot`],[`TodoWrite|TaskCreate|TaskUpdate`,`Updating the plan`,`Updated the plan`,`clipboard`],[`sql_db_query`,`Querying the database`,`Queried the database`,`database`],[`search_gmail`,`Searching email`,`Searched email`,`mail`]].flatMap(([e,...t])=>e.split(`|`).map(e=>[e,t]))),_=e=>{let t=e.replace(/([a-z\d])([A-Z])/g,`$1 $2`).replace(/[_-]+/g,` `).replace(/\s+/g,` `).toLowerCase();return t[0].toUpperCase()+t.slice(1)},v=e=>{let t=e.name?.trim()||`tool`,n=_(t);return g.get(t)??[`Using ${n}`,`Used ${n}`]},y=e=>v(e)[2]??`wrench`,b=(e,t)=>{let n=t.toolCall?.iconName;return(typeof n==`function`?n(e):n)??y(e)};function x(e,t){if(typeof t.toolCall?.iconName==`string`)return t.toolCall.iconName;let n=e.map(e=>b(e,t));return e.every((t,r)=>v(t)[0]===v(e[0])[0]&&n[r]===n[0])?n[0]:`toolbox`}const S=[[`approvalStatus`,`pending`,`Waiting for approval`],[`approvalStatus`,`denied`,`Approval denied`],[`approvalStatus`,`timeout`,`Approval expired`],[`success`,!1,`Failed`],[`interrupted`,!0,`Interrupted`],[`superseded`,!0,`Approved, ran again below`]],C=e=>e.error||S.some(([t,n])=>e[t]===n),w=e=>C(e)?_(e.name?.trim()||`tool`):v(e)[+(e.status===`complete`)],T=e=>{let t=w(e);return v(e)[3]&&!/^(read_multiple_files|apply_patch)$/.test(e.name?.trim()??``)?t.replace(/(web pages|files|commands)$/,e=>`a ${e.slice(0,-1)}`):t};function E(e,t=3){let n=e.length;if(n===0)return``;(!Number.isInteger(t)||t<0)&&(t=3);let r=/* @__PURE__ */ new Map;for(let t of e){let e=v(t)[0],n=r.get(e);(!n||n.status===`complete`&&!C(n))&&r.set(e,t)}let i=t?[...r.values()].slice(0,t).map((e,t)=>{let n=w(e);return t?n[0].toLowerCase()+n.slice(1):n}).join(`, `):n===1?`1 activity`:`${n} activities`,a=r.size-t;a>0&&t&&(i+=`, and ${a} more`);for(let[t,n,r]of S)e.some(e=>e[t]===n||n===!1&&e.error)&&(i+=` · ${r}`);return i}const D={backgroundColor:`background`,borderColor:`borderColor`,borderWidth:`borderWidth`,borderRadius:`borderRadius`,headerBackgroundColor:`header.background`,headerTextColor:`header.foreground`,contentBackgroundColor:`content.background`,contentTextColor:`content.foreground`,codeBlockBackgroundColor:`codeBlock.background`,codeBlockBorderColor:`codeBlock.borderColor`,codeBlockTextColor:`codeBlock.foreground`,toggleTextColor:`toggleForeground`,labelTextColor:`labelForeground`,loadingAnimationColor:`loading.primary`,loadingAnimationSecondaryColor:`loading.secondary`};function O({getExplicitLegacyStyle:e,hasExplicitThemeStyle:t}){function n(n){let r={...n?.toolCall};for(let[i,a]of Object.entries(D))e(n,`toolCall.${i}`)===void 0&&t(n,`toolBubble.${a}`)&&(r[i]=`var(--persona-components-toolBubble-${a.split(`.`).join(`-`)})`);return r}function r(n,r,i){n.classList.remove(`persona-theme-padding`),n.style.removeProperty(`--persona-theme-padding`);for(let e of[`padding-left`,`padding-right`,`padding-top`,`padding-bottom`])n.style.removeProperty(e);t(r,`toolBubble.${i}.padding`)&&(n.classList.add(`persona-theme-padding`),n.style.setProperty(`--persona-theme-padding`,`var(--persona-components-toolBubble-${i}-padding)`));let a=e(r,`toolCall.${i}PaddingX`),o=e(r,`toolCall.${i}PaddingY`);typeof a==`string`&&a&&(n.style.paddingLeft=a,n.style.paddingRight=a),typeof o==`string`&&o&&(n.style.paddingTop=o,n.style.paddingBottom=o)}function i(e){let n=e?.toolCall?.loadingAnimationDuration;return n===void 0?t(e,`toolBubble.loading.duration`)?`var(--persona-components-toolBubble-loading-duration)`:`2000ms`:`${n}ms`}return{resolveToolStyles:n,applyToolPadding:r,toolLoadingDuration:i}}let k;const A=()=>{throw Error(`Activity UI requires core style dependencies.`)};let j;const M=()=>j??A();let N=A,P=A;const F=(e,t,n)=>{j=n,{resolveToolStyles:N,applyToolPadding:P}=O(n),k=e,m(t)},I=(...e)=>k?.(...e)??null,L={};function ee(e){let{executionId:t,phase:n}=e.agentMetadata??{};if(e.role!==`assistant`||typeof t!=`string`||!t)return;let r=e.variant===`tool`||e.variant===`reasoning`||n===`commentary`?`progress`:n===`partial_answer`||n===`final_answer`?`final`:void 0;if(r)return{id:t,kind:r,startedAt:Date.parse(e.createdAt)}}const te={toolCallDisplay:{variant:`row`,grouped:!0,groupedMode:`collapsible`,autoExpand:!1,iconVisibility:`always`},reasoningDisplay:{appearance:`inset`,variant:`row`,autoExpand:!1,iconVisibility:`always`}},ne=Object.entries(te).flatMap(([e,t])=>Object.keys(t).map(t=>`features.${e}.${t}`)),re=/* @__PURE__ */ new WeakMap;function ie(e,t){return e.turnActivity??t.turnActivity?.resolveMessage?.(e)??ee(e)}const ae=e=>{let t=e.toolCall,n=e.approval?.status??t.approvalStatus;return t.error||t.interrupted||t.success===!1||t.superseded||n&&n!==`approved`},oe=(e,t)=>e.toolCall?.actionTitle?.trim()||t?.toolCall?.resolveActionTitle?.(e.toolCall,e)?.trim()||void 0,se=(e,t)=>oe(e,t)||T(e.toolCall);function ce(e,t,n){let r=e.filter(e=>e.toolCall?.status!==`complete`);return t.features?.toolCallDisplay?.groupSummary===`current-action`&&r.length===1&&!e.some(ae)?se(r[0],t):n}function R(e,t){if(!e.turnActivity?.enabled||t.role!==`assistant`||ie(t,e)?.kind!==`progress`)return e;let n=re.get(e);if(n)return n;let{defaultProvenance:r,suppliedPath:i}=M(),a=r(e,ne),o={...e.features};for(let t of[`toolCallDisplay`,`reasoningDisplay`]){let n={...o[t]};for(let[r,o]of Object.entries(te[t]))!a.includes(`features.${t}.${r}`)&&i(e.preferences,`${t}.${r}`)!==`explicit`&&Object.assign(n,{[r]:o});o[t]=n}o.toolCallDisplay={...o.toolCallDisplay,groupSummary:o.toolCallDisplay?.groupSummary??(o.toolCallDisplay?.groupedMode===`stack`?`aggregate`:`current-action`)};let s={...e,features:o};return re.set(e,s),s}const z={collapsedMode:`tool-call`,activePreview:!1,grouped:!1,groupedMode:`stack`,groupBoundary:`adjacent`,previewMaxLines:3,expandable:!0,loadingAnimation:`none`},B={activePreview:!1,previewMaxLines:3,expandable:!0,loadingAnimation:`none`},le={layout:`row`,variant:`row`,iconVisibility:`active`,autoExpand:!1,grouped:!0,groupedMode:`collapsible`,groupAppearance:`inset`,loadingAnimation:`shimmer`},ue={appearance:`inset`,layout:`row`,variant:`row`,iconVisibility:`active`,autoExpand:!1,loadingAnimation:`shimmer`},V=(e,t)=>{let n=document.createElement(e);return t&&(n.className=t),n},H=(e,t={},...n)=>{let r=document.createElement(e);if(t.className&&(r.className=t.className),t.text!==void 0&&(r.textContent=t.text),t.attrs)for(let[e,n]of Object.entries(t.attrs))r.setAttribute(e,n);if(t.style){let e=r.style,n=t.style;for(let t of Object.keys(n)){let r=n[t];r!=null&&(e[t]=r)}}let i=n.filter(e=>e!=null);return i.length>0&&r.append(...i),r},de=e=>{let t=e.completedAt??Date.now(),n=e.startedAt??t,r=e.durationMs===void 0?Math.max(0,t-n):e.durationMs;return`Thought for ${U(r).slice(0,-1)} seconds`},fe=e=>e.status===`complete`?de(e):e.status===`pending`?`Waiting`:``,pe=e=>{let t=typeof e.duration==`number`?e.duration:typeof e.durationMs==`number`?e.durationMs:Math.max(0,(e.completedAt??Date.now())-(e.startedAt??e.completedAt??Date.now()));return`Used tool for ${U(t).slice(0,-1)} seconds`},me=e=>e.status===`complete`?pe(e):`Using tool...`,U=e=>{let t=e/1e3;return t<.1?`<0.1s`:t>=10?`${Math.round(t)}s`:`${t.toFixed(1).replace(/\.0$/,``)}s`},W=e=>{if(e.interrupted&&e.duration===void 0&&e.durationMs===void 0&&(e.startedAt===void 0||e.completedAt===void 0))return``;let t=typeof e.duration==`number`?e.duration:typeof e.durationMs==`number`?e.durationMs:Math.max(0,(e.completedAt??Date.now())-(e.startedAt??e.completedAt??Date.now()));return U(t)},G=e=>{let t=e.durationMs===void 0?Math.max(0,(e.completedAt??Date.now())-(e.startedAt??e.completedAt??Date.now())):e.durationMs;return U(t)},he=(e,t,n)=>{if(!t)return n;let r=e.name?.trim()||`tool`,i=W(e);return t.replace(/\{toolName\}/g,r).replace(/\{duration\}/g,i)},ge=(e,t)=>{let n=e.replace(/\{toolName\}/g,t),r=[],i=/\*\*(.+?)\*\*|\*(.+?)\*|~(.+?)~/g,a=0,o;for(;(o=i.exec(n))!==null;)o.index>a&&K(r,n.slice(a,o.index),[]),o[1]===void 0?o[2]===void 0?o[3]!==void 0&&K(r,o[3],[`dim`]):K(r,o[2],[`italic`]):K(r,o[1],[`bold`]),a=o.index+o[0].length;return a<n.length&&K(r,n.slice(a),[]),r},K=(e,t,n)=>{let r=t.split(`{duration}`);for(let t=0;t<r.length;t++)r[t]&&e.push({text:r[t],styles:n}),t<r.length-1&&e.push({text:`{duration}`,styles:n,isDuration:!0})},_e=[`persona-w-full`,`persona-rounded-2xl`,`persona-bg-persona-surface`,`persona-border`,`persona-border-persona-message-border`,`persona-text-persona-primary`,`persona-shadow-sm`,`persona-overflow-hidden`,`persona-px-0`,`persona-py-0`],ve=(e,t)=>t==null?!1:typeof t==`string`?(e.textContent=t,!0):(e.appendChild(t),!0),q=(e,t)=>{let n=V(`div`,[`persona-message-bubble`,e,..._e].join(` `));return n.id=`bubble-${t}`,n.setAttribute(`data-message-id`,t),n.setAttribute(`data-persona-disclosure`,``),n},J=e=>{let t=V(`button`,e.expandable?`persona-flex persona-w-full persona-items-center persona-justify-between persona-gap-3 persona-bg-transparent persona-px-4 persona-py-3 persona-text-left persona-cursor-pointer persona-border-none`:`persona-flex persona-w-full persona-items-center persona-justify-between persona-gap-3 persona-bg-transparent persona-px-4 persona-py-3 persona-text-left persona-cursor-default persona-border-none`);return t.type=`button`,e.expandable&&(t.setAttribute(`aria-expanded`,e.expanded?`true`:`false`),t.setAttribute(`data-expand-header`,`true`)),t.setAttribute(`data-bubble-type`,e.bubbleType),t},Y=(e,t,n,i)=>{let a=i?.expansion?.chevron?.[t?`expanded`:`collapsed`]??(i?.future?.v5Defaults?t?`down`:`right`:t?`up`:`down`),o=r(i),s=e.querySelector(`svg`);if(!s){if(s=I(`chevron-right`,16,n,1.5),!s)return;e.replaceChildren(s)}s.setAttribute(`stroke`,n),e.classList.add(`persona-disclosure-chevron`),e.style.transform=`rotate(${{right:0,down:90,left:180,up:-90}[a]}deg)`,e.style.transitionDuration=`${o.animation===`height`?o.duration:0}ms`,e.style.transitionTimingFunction=o.easing},ye=(e,t,n)=>{if(!n.expandable)return e.append(t),null;let r=V(`div`,`persona-flex persona-items-center`);Y(r,n.expanded,n.iconColor,n.config);let i=V(`div`,n.metaGap?`persona-flex persona-items-center persona-gap-2 persona-ml-auto`:`persona-flex persona-items-center persona-ml-auto`);return i.append(r),e.append(t,i),r},be=e=>{let t=V(`div`,`persona-px-4 persona-py-3 persona-text-xs persona-leading-snug persona-text-persona-muted`);if(t.setAttribute(`data-persona-collapsed-preview`,e.previewKind),t.style.display=`none`,t.style.whiteSpace=`pre-wrap`,!e.expanded&&e.isActive&&e.activePreview&&e.previewText){let n=e.renderPreview?.();ve(t,n)||(t.textContent=e.previewText),t.style.display=``}return!e.expanded&&e.isActive&&e.activeMinHeight&&(e.bubble.style.minHeight=e.activeMinHeight),t},xe=e=>{e.header.setAttribute(`aria-expanded`,e.expanded?`true`:`false`),e.toggleIcon&&Y(e.toggleIcon,e.expanded,e.iconColor,e.config),e.content.style.display=e.expanded?``:`none`,e.content.inert=!e.expanded,e.collapsedPreview.style.display=e.expanded?`none`:e.collapsedPreview.textContent||e.collapsedPreview.childNodes.length?``:`none`},Se=(e,t,n)=>{let r=n.stateSet.has(e),i=t.querySelector(`button[data-expand-header="true"]`),a=t.querySelector(`.persona-border-t`);if(!i||!a)return;i.setAttribute(`aria-expanded`,r?`true`:`false`);let o=i.querySelector(`.persona-ml-auto`)?.querySelector(`:scope > .persona-flex.persona-items-center`);o&&Y(o,r,n.iconColor,n.config),d(t,r,n.config)},Ce=(e,t,n,r,i,a)=>{e.textContent=``;for(let o of ge(t,n))(o.styles.length?e.appendChild(V(`span`,o.styles.map(e=>`persona-tool-text-${e}`).join(` `))):e).append(o.isDuration?r?a():i:o.text)},we=(e,t,n,r)=>{let i=n instanceof HTMLElement;return t.textContent=typeof n==`string`&&n.trim()?n:r,e.appendChild(i?n:t),i},Te=(e,t,n)=>e.split(/\r?\n/).map(e=>e.trim()).filter(Boolean).slice(t,n).join(`
2
+ `);function X(e,t,n){e&&n&&(e=R(e,n));let r=t===`tool`,i=r?`toolCallDisplay`:`reasoningDisplay`;return{...e,features:{...e?.features,[i]:{...r?z:B,...e?.future?.v5Defaults===!0?r?le:ue:{},...e?.features?.[i],layout:Z(e,t)}}}}function Z(e,t,n){e&&n&&(e=R(e,n));let r=t===`tool`?`toolCallDisplay`:`reasoningDisplay`;return e?.features?.[r]?.layout??e?.features?.[r]?.variant??(e?.future?.v5Defaults?`row`:`card`)}function Ee(e){let t=Math.max(0,Math.floor((e??0)/1e3));return t<1?`a moment`:t<60?`${t}s`:`${Math.floor(t/60)}m ${t%60}s`}function De(e,t){let n=Number(e.getAttribute(`data-tool-elapsed`));if(!n)return;let r=t-n;e.textContent=e.classList.contains(`persona-activity-duration`)?Oe(r,e.dataset.prefix):e.closest(`.persona-activity-row`)?Ee(r):U(r)}const Oe=(e,t=``)=>Number.isFinite(e)&&e>=1e3?t+Ee(e):``;function Q(e,t,n,r,i=!1,a){let o=i||Z(n,r)===`row`,s=e.querySelector(`:scope > button`),c=r===`tool`?t.toolCall:t.reasoning,l=c?.status!==`complete`,u=n.features?.toolCallDisplay?.durationDisplay;if(s&&(o||n.future?.v5Defaults)&&r===`tool`&&c&&(u===`all`||u===(i?`group`:`tools`))){let e=V(`span`,`persona-activity-duration`),{startedAt:n,completedAt:r,durationMs:i}=c;l&&n>0&&n<=Date.now()&&e.setAttribute(`data-tool-elapsed`,String(n));let a=t.toolCall?.duration??i??r-n;e.textContent=Oe(l&&n!==void 0?n>0?Date.now()-n:void 0:a),s.appendChild(e)}if(!o)return e;if(e.className=`persona-message-bubble persona-${r}-bubble persona-activity-row`,e.dataset.activityKind=r,r===`tool`){let t=M().getExplicitLegacyStyle(n,`toolCall.shadow`);e.style.boxShadow=typeof t==`string`?t.trim()||`none`:`var(--persona-consumer-toolBubble-shadow, none)`}if(!s)return e;s.className=s.classList.contains(`persona-theme-padding`)?`persona-activity-header persona-theme-padding`:`persona-activity-header`;let d=t.approval?.status??t.toolCall?.approvalStatus,f=t.toolCall?.interrupted?`interrupted`:d===`denied`||d===`timeout`?`denied`:d===`pending`?`awaiting-approval`:t.toolCall?.success===!1?`error`:l?c?.status===`pending`?`pending`:`running`:`done`;e.dataset.activityState=f;let p=V(`span`,`persona-activity-icon`);p.dataset.activityIcon=f;let m=r===`reasoning`?n.features?.reasoningDisplay?.iconName:void 0,h=f===`done`?r===`reasoning`?m||`brain`:a??(i?`toolbox`:b(t.toolCall,n)):void 0;h&&h!==`check`&&(p.style.color=`inherit`);let g=I(m||(f===`pending`?`circle`:f===`awaiting-approval`?`clock`:f===`running`?`loader-circle`:f===`done`?h||`check`:`x`),16,`currentColor`,2);!g&&h&&(g=I(`square-text`,16,`currentColor`,2)),g&&p.appendChild(g),s.querySelector(`.persona-reasoning-header-icon`)?.remove();let _=r===`tool`?`toolCallDisplay`:`reasoningDisplay`,v=(i?n.features?.toolCallDisplay?.groupIconVisibility:void 0)??n.features?.[_]?.iconVisibility??(n.future?.v5Defaults?`active`:`always`);(v===`always`||v===`active`&&f!==`done`)&&s.prepend(p),s.querySelector(`:scope > div:not(.persona-ml-auto)`)?.classList.add(`persona-activity-label`),s.querySelector(`.persona-ml-auto`)?.classList.add(`persona-activity-chevron`);let y=e.querySelector(`:scope > .persona-border-t`);return y?.classList.add(`persona-activity-body`),y&&(y.id=`activity-details-${t.id}`,s.setAttribute(`aria-controls`,y.id)),e}function ke(e,t,n=()=>({})){let r=t?f(t,n):void 0,i=/* @__PURE__ */ new Map,a=e=>{let t=i.get(e)??{};return i.set(e,t),t},o=e=>{clearTimeout(e.timer),e.timer=void 0};return{observe(t,r,s,c={},l){let u=r===`tool`?t.toolCall:t.reasoning;if(!u)return;let d=X(n(),r,t).features;c={...r===`tool`?d?.toolCallDisplay:d?.reasoningDisplay,...c},!i.has(t.id)&&l!==void 0&&(s[l?`add`:`delete`](t.id),a(t.id).manual=i.get(l)?.manual);let f=a(t.id);if(!f.manual&&(u.status!==`complete`&&(o(f),f.finished=!1),!f.seen&&u.status!==`complete`&&u.chunks?.some(Boolean)&&(f.seen=!0,c.autoExpand!==!1&&s.add(t.id)),f.seen&&u.status===`complete`&&!f.finished)){if(f.finished=!0,c.autoCollapseDelay===!1)return;f.timer=setTimeout(()=>{f.timer=void 0,s.delete(t.id),e(t.id,r)},c.autoCollapseDelay??1e3)}},manual(e){let t=a(e);t.manual=!0,o(t)},prune(e){for(let[t,n]of i)e.has(t)||(o(n),i.delete(t))},prepare(e){r?.prepare(e)},sync(){r?.sync()},clear(){i.forEach(o),i.clear(),r?.clear()},destroy(){this.clear(),r?.destroy()}}}function Ae(e,t,n,i,a=typeof i==`string`,o){let s=q(`persona-tool-bubble`,e.id),c=J({expandable:!0,expanded:n,bubbleType:`tool`}),l=V(`div`,``);typeof i==`string`?l.textContent=i:l.appendChild(i);let u=N(t);ye(c,l,{config:t,expandable:!0,expanded:n,iconColor:u.toggleTextColor||u.headerTextColor||`currentColor`,metaGap:!0});let d=V(`div`,`persona-border-t`);return d.style.display=n?``:`none`,d.inert=!n,s.append(c,d),Q(s,e,t,`tool`,!0,o),s.dataset.personaToolGroup=`true`,r(t).animation===`height`&&(s.dataset.personaDisclosureMotion=`height`),a&&(s.dataset.activityState===`running`||s.dataset.activityState===`pending`)&&h(l,t,`tool-group`),{bubble:s,body:d}}const $=e=>{if(e===null)return`null`;if(e===void 0)return``;if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`boolean`)return String(e);try{return JSON.stringify(e,null,2)}catch{return String(e)}},je=e=>{if(e==null)return!0;if(typeof e==`string`){if(!e.trim())return!0;try{return je(JSON.parse(e))}catch{return!1}}return typeof e==`object`&&Object.keys(e).length===0},Me=e=>{if(typeof e==`object`&&e)return!0;if(typeof e!=`string`)return!1;try{let t=JSON.parse(e);return typeof t==`object`&&!!t}catch{return!1}};function Ne(e,t,n){let r=t.toolCall;if(!r)return;let i=N(n),a=(t,n)=>{let r=H(`section`,{className:`persona-tool-detail`,attrs:{"data-persona-tool-detail":t.toLowerCase()},style:{backgroundColor:i.codeBlockBackgroundColor,borderColor:i.codeBlockBorderColor,borderWidth:i.codeBlockBorderColor?`1px`:void 0}}),a=H(`div`,{className:`persona-tool-detail-label`,text:t,style:{color:i.labelTextColor}}),o=$(n),s=H(`pre`,{className:`persona-activity-scroll persona-tool-detail-value${Me(n)?` persona-tool-detail-code`:``}`,text:o,attrs:{tabindex:`0`,role:`region`,"aria-label":`${t} content`},style:{color:i.codeBlockTextColor??i.contentTextColor}}),c=H(`button`,{className:`persona-tool-detail-copy`,attrs:{type:`button`,"data-persona-copy-tool-detail":``,"aria-label":`Copy ${t.toLowerCase()}`,title:`Copy ${t.toLowerCase()}`}}),l=I(`copy`,14,`currentColor`,1.7);l&&c.appendChild(l),r.append(a,s,c),e.appendChild(r)};je(r.args)||a(`Request`,r.args);let o=r.status===`complete`&&r.result!==void 0?r.result:r.chunks?.join(``);o!==void 0&&(typeof o!=`string`||o.trim())&&a(`Response`,o),r.success===!1&&e.appendChild(H(`div`,{className:`persona-text-sm persona-whitespace-pre-wrap`,text:r.error||`Tool failed`,attrs:{"data-persona-tool-error":``,role:`status`}}))}const Pe=(e,t=!1)=>e.toggleTextColor||e.headerTextColor||(t?`currentColor`:`var(--persona-primary, #171717)`),Fe=(e,t)=>{let n=(e.chunks??[]).join(``).trim();return n?Te(n,-t):Te($(e.args),0,t)},Ie=(e,t,n)=>{let r=n?.features?.toolCallDisplay,i=Z(n,`tool`)===`row`,a=r?.collapsedMode??z.collapsedMode,o=t.success===!1?t.error||`Tool failed`:Fe(t,r?.previewMaxLines??z.previewMaxLines),s=i&&a===`tool-call`?T({...t,approvalStatus:e.approval?.status??t.approvalStatus}):t.interrupted?`${t.name?.trim()||`Tool`} · Interrupted`:n?.future?.v5Defaults||i?`${t.status===`complete`?`Used`:`Using`} ${t.name?.trim()||`tool`}`:me(t),c=t.status!==`complete`,l=n?.toolCall??{},u=c&&i&&a===`tool-call`&&!ae(e)?se(e,n):s;a===`tool-name`?u=t.name?.trim()||s:a===`tool-preview`&&o&&(u=o),c&&l.activeTextTemplate?u=he(t,l.activeTextTemplate,u):!c&&!t.interrupted&&l.completeTextTemplate&&(u=he(t,l.completeTextTemplate,u)),t.interrupted?u.includes(` · Interrupted`)||(u+=` · Interrupted`):t.success===!1?u+=` · Failed`:t.superseded&&(u+=` · Approved, ran again below`);let d=e.approval?.status??t.approvalStatus;return d===`pending`?u+=` · Waiting for approval`:d===`denied`?u+=` · Approval denied`:d===`timeout`&&(u+=` · Approval expired`),{summary:u,previewText:o,isActive:c}},Le=(e,t,n,r)=>{Se(e,t,{stateSet:n,config:r,iconColor:Pe(N(r),t.classList.contains(`persona-activity-row`))})},Re=(e,t,n=/* @__PURE__ */ new Set)=>{t=X(t,`tool`,e);let r=e.toolCall,i=N(t),a=q(`persona-tool-bubble`,e.id);if(i.backgroundColor&&(a.style.backgroundColor=i.backgroundColor),i.borderColor&&(a.style.borderColor=i.borderColor),i.borderWidth&&(a.style.borderWidth=i.borderWidth),i.borderRadius&&(a.style.borderRadius=i.borderRadius),a.style.boxShadow=i.shadow===void 0?`var(--persona-tool-bubble-shadow)`:i.shadow.trim()===``?`none`:i.shadow,!r)return Q(a,e,t,`tool`);r.id&&(a.dataset.toolCallId=r.id);let o=t.features.toolCallDisplay,s=o.expandable??z.expandable,c=s&&n.has(e.id),{summary:l,previewText:u,isActive:d}=Ie(e,r,t),f=J({expandable:s,expanded:c,bubbleType:`tool`});i.headerBackgroundColor&&(f.style.backgroundColor=i.headerBackgroundColor),P(f,t,`header`);let p=V(`div`,`persona-flex persona-flex-col persona-text-left`),m=V(`span`,`persona-text-xs persona-text-persona-primary`);i.headerTextColor&&(m.style.color=i.headerTextColor);let g=String(r.startedAt??Date.now()),_=()=>{let e=V(`span`,``);return d&&e.setAttribute(`data-tool-elapsed`,g),e.textContent=W(r),e},v=i.renderCollapsedSummary?.({message:e,toolCall:r,defaultSummary:l,actionTitle:oe(e,t),previewText:u,collapsedMode:o.collapsedMode??z.collapsedMode,isActive:d,config:t,elapsed:W(r),createElapsedElement:_}),y=we(p,m,v,l),b=i.activeTextTemplate,x=r.interrupted?void 0:i.completeTextTemplate,S=d?b:x;y||(S&&Ce(m,S,r.name?.trim()||`tool`,d,W(r),_),d&&h(m,t,`tool`));let C=Pe(i,Z(t,`tool`)===`row`),w=ye(f,p,{config:t,expandable:s,expanded:c,iconColor:C,metaGap:!0}),T=be({bubble:a,previewKind:`tool`,expanded:c,isActive:d,previewText:u,activePreview:o.activePreview,activeMinHeight:o.activeMinHeight,renderPreview:()=>i.renderCollapsedPreview?.({message:e,toolCall:r,defaultPreview:u,isActive:d,config:t})});if(!s)return a.append(f,T),Q(a,e,t,`tool`);let E=V(`div`,`persona-border-t persona-border-gray-200 persona-bg-gray-50 persona-space-y-3 persona-px-4 persona-py-3`);E.style.display=c?``:`none`,i.contentBackgroundColor&&(E.style.backgroundColor=i.contentBackgroundColor),i.contentTextColor&&(E.style.color=i.contentTextColor),P(E,t,`content`);let D=t.future?.v5Defaults===!0;if(o.showToolName&&r.name&&E.appendChild(H(`div`,{className:`persona-text-xs persona-text-persona-muted${D?``:` persona-italic`}`,attrs:{"data-persona-tool-name":``},text:r.name,style:{color:D?void 0:i.contentTextColor||i.headerTextColor}})),D)Ne(E,e,t);else{let e=(e,t)=>{let n=V(`div`,`persona-space-y-1`),r=H(`div`,{className:`persona-text-xs persona-text-persona-muted`,text:e,style:{color:i.labelTextColor}}),a=H(`pre`,{className:`persona-whitespace-pre-wrap persona-rounded-lg persona-border persona-px-3 persona-py-2 persona-text-xs`,style:{fontSize:`0.75rem`,lineHeight:`1rem`,backgroundColor:i.codeBlockBackgroundColor??`var(--persona-container, #f3f4f6)`,borderColor:i.codeBlockBorderColor??`var(--persona-border, #e5e7eb)`,color:i.codeBlockTextColor??`var(--persona-text, #171717)`}},H(`span`,{className:`persona-activity-scroll`,text:$(t),attrs:{role:`region`,"aria-label":e}}));n.append(r,a),E.appendChild(n)};r.args!==void 0&&e(`Arguments`,r.args),r.chunks?.length&&e(`Activity`,r.chunks.join(``)),r.success===!1&&E.appendChild(H(`div`,{className:`persona-text-sm persona-whitespace-pre-wrap`,text:r.error||`Tool failed`,attrs:{"data-persona-tool-error":``}})),r.status===`complete`&&r.result!==void 0&&e(`Result`,r.result)}return xe({expanded:c,header:f,toggleIcon:w,content:E,collapsedPreview:T,iconColor:C,config:t}),a.append(f,T,E),Q(a,e,t,`tool`)},ze=(e,t,n,r)=>{Se(e,t,{stateSet:n,config:r,iconColor:`currentColor`})},Be=(e,t,n=/* @__PURE__ */ new Set)=>{t=X(t,`reasoning`,e);let r=e.reasoning,i=q(`persona-reasoning-bubble`,e.id);if(!r)return Q(i,e,t,`reasoning`);let a=t.features.reasoningDisplay,o=a.expandable??B.expandable,s=o&&n.has(e.id),c=r.status!==`complete`,l=Te(e.reasoning?.chunks.join(``)??``,0,a.previewMaxLines??B.previewMaxLines),u=J({expandable:o,expanded:s,bubbleType:`reasoning`}),d=V(`div`,`persona-flex persona-flex-col persona-text-left`),f=V(`span`,`persona-text-xs persona-text-persona-primary`),p=Z(t,`reasoning`)===`row`;i.dataset.appearance=a.appearance??(t.future?.v5Defaults?`inset`:p?`plain`:`panel`);let m=p&&!c?`Thought for ${Ee(r.durationMs??(r.completedAt-r.startedAt||void 0))}`:`Thinking...`,g=t.reasoning??{},_=String(r.startedAt??Date.now()),v=()=>{let e=V(`span`,``);return e.setAttribute(`data-tool-elapsed`,_),e.textContent=G(r),e},y=g.renderCollapsedSummary?.({message:e,reasoning:r,defaultSummary:m,previewText:l,isActive:c,config:t,elapsed:G(r),createElapsedElement:v}),b=we(d,f,y,m),x=V(`span`,`persona-text-xs persona-text-persona-primary`);x.textContent=fe(r),p||d.appendChild(x);let S=g.activeTextTemplate,C=g.completeTextTemplate,w=c?S:C;if(b||(w&&(x.style.display=`none`,Ce(f,w,``,c,G(r),v)),f.style.display=!w&&!c&&!p?`none`:``,c&&h(f,t,`reasoning`)),a.iconName&&!b){let e=V(`span`,`persona-reasoning-header-icon`),t=I(a.iconName,16,`currentColor`,2);t&&(e.appendChild(t),u.appendChild(e))}let T=`currentColor`,E=ye(u,d,{config:t,expandable:o,expanded:s,iconColor:T,metaGap:!1}),D=be({bubble:i,previewKind:`reasoning`,expanded:s,isActive:c,previewText:l,activePreview:a.activePreview,activeMinHeight:a.activeMinHeight,renderPreview:()=>t.reasoning?.renderCollapsedPreview?.({message:e,reasoning:r,defaultPreview:l,isActive:c,config:t})});if(!o)return i.append(u,D),Q(i,e,t,`reasoning`);let O=V(`div`,`persona-border-t persona-border-gray-200 persona-bg-gray-50 persona-px-4 persona-py-3`),k=a.maxHeight,A=H(`div`,{className:`persona-whitespace-pre-wrap`},H(`div`,{className:`persona-activity-scroll`,text:r.chunks.join(``)||(c?`Waiting for details…`:`No additional context was shared.`),style:{maxHeight:k},attrs:{tabindex:`0`,role:`region`,"aria-label":`Reasoning`}}));return O.appendChild(A),xe({expanded:s,header:u,toggleIcon:E,content:O,collapsedPreview:D,iconColor:T,config:t}),i.append(u,D,O),Q(i,e,t,`reasoning`)};function Ve(e){let{config:t,messages:n,tempContainer:r,streaming:i,runActivity:a,showToolCalls:o,showReasoning:s,dropCompletedToolCalls:c,dropReasoningRow:l,createMessageRow:u,activityIds:d,activityLifecycle:f,toolExpansionState:p}=e,m=L.render;if(t.turnActivity?.enabled&&m)return m(e,{group:Ae,tools:Ve,classify:ie,presentation:R,hasExplicitThemeStyle:M().hasExplicitThemeStyle});let g=t.features?.toolCallDisplay;if(g?.grouped){let e=[],m=[],_=g.groupBoundary===`iteration`,v=g.groupedMode===`summary`,y=()=>{m.length&&e.push(m),m=[]};n.forEach(e=>{if(e.variant===`tool`&&e.toolCall&&o){if(c&&e.toolCall.status===`complete`&&!e.toolCall.interrupted)return;let t=m[m.length-1]?.agentMetadata,n=e.agentMetadata;_&&t&&n&&(t.executionId&&n.executionId&&t.executionId!==n.executionId||t.iteration!==void 0&&n.iteration!==void 0&&t.iteration!==n.iteration)&&y(),m.push(e)}else(e.variant!==`reasoning`||s&&(e.reasoning?.status!==`complete`||!l(e.reasoning)))&&y()}),y();let b=/* @__PURE__ */ new Map;for(let e of r.children)e instanceof HTMLElement&&b.set(e.dataset.wrapperId,e);e.forEach((n,r)=>{let o=n.map(e=>b.get(e.id)).filter(e=>!!e);if(o.length<(v?1:2))return;let s=`tool-group-${n[0].id}`,c=u(s,`assistant`);c.dataset.personaToolGroupRow=`true`,(g.groupAppearance||t.future?.v5Defaults)&&(c.dataset.groupAppearance=g.groupAppearance??`inset`);let l=n.map(e=>e.toolCall),m=l.some(e=>e.interrupted),y=r===e.length-1,S=n.some(e=>a?.messageIds.has(e.id)),C={messages:n,toolCalls:l,config:t,streaming:i,isLatestGroup:y,isCurrentRunGroup:S},w=n.map(e=>e.approval?.status??e.toolCall?.approvalStatus),T=[`pending`,`denied`,`timeout`].find(e=>w.includes(e)),D=!l.some(e=>e.success===!1||e.error),O=m||!D||T,k=l.some(e=>e.status!==`complete`),A=k||!_&&i&&y&&S&&!O,j=`${n.length} tool${n.length===1?``:`s`}`,M=g.groupedMode===`collapsible`||Z(t,`tool`)===`row`?E(l.map((e,t)=>({...e,approvalStatus:w[t]})),g.groupSummaryMaxItems):m?`${j} · Interrupted`:`Called ${j}`,N=ce(n,t,M),P=t.toolCall?.renderGroupedSummary?.({...C,defaultSummary:N})??N;if(o[0].before(c),g.groupedMode===`collapsible`){let e={...n[0],id:s,approval:void 0,toolCall:{id:s,status:A?`running`:`complete`,chunks:l.flatMap(e=>e.chunks??[]),success:D,interrupted:m,approvalStatus:T}};if(l.every(e=>He(e.startedAt)&&(e.status!==`complete`||He(e.completedAt)&&e.completedAt>=e.startedAt))){let t=Math.min(...l.map(e=>e.startedAt)),n=Math.max(...l.map(e=>e.completedAt??e.startedAt));k?e.toolCall.startedAt=t:e.toolCall.durationMs=n-t}d.add(s),f.observe(e,`tool`,p,g,n.find(e=>p.has(e.id))?.id??``);let r=Ae(e,t,p.has(s),P,void 0,!A&&!O?x(l,t):void 0);r.bubble.classList.add(`persona-tool-group`),r.body.dataset.personaToolGroupStack=`true`,c.appendChild(r.bubble),o.forEach((e,t)=>{Ue(e),e.style.setProperty(`--persona-activity-stagger`,`${t*40}ms`),e.classList.add(`persona-activity-group-child`),r.body.appendChild(e)});return}let F=V(`div`,`persona-tool-group persona-flex persona-w-full persona-flex-col persona-gap-2`);F.dataset.personaToolGroup=`true`;let I=V(`div`,`persona-tool-group-summary persona-text-xs persona-text-persona-muted`);if(I.id=`tool-group-summary-${n[0].id}`,ve(I,P),!(P instanceof HTMLElement)&&A&&!O&&h(I,t,`tool-group`),F.appendChild(I),c.appendChild(F),v){for(let e of o)e.remove();return}let L=V(`div`,`persona-tool-group-stack persona-flex persona-flex-col`);L.id=`tool-group-stack-${n[0].id}`,L.dataset.personaToolGroupStack=`true`,F.appendChild(L),o.forEach((e,t)=>{Ue(e);let n=V(`div`,`persona-tool-group-item persona-relative`);n.dataset.personaToolGroupItem=`true`,t<o.length-1&&(n.dataset.personaToolGroupConnector=`true`),n.appendChild(e),L.appendChild(n)})})}return!1}const He=e=>e>0&&e<=Date.now(),Ue=e=>e.style.setProperty(`--persona-message-row-max-width`,`100%`);function We(e){let t=`.persona-activity-scroll`,n=e=>{let t=e.scrollHeight-e.clientHeight,n=e.clientHeight>0&&t>1;e.toggleAttribute(`data-persona-scroll-top`,n&&e.scrollTop>1),e.toggleAttribute(`data-persona-scroll-bottom`,n&&t-e.scrollTop>1),e.tabIndex=n?0:-1},r=typeof ResizeObserver>`u`?void 0:new ResizeObserver(e=>{for(let{target:t}of e)n(t)}),i=()=>{r?.disconnect(),e.querySelectorAll(t).forEach(e=>{r?.observe(e),n(e)})},a=e=>{let r=e.target;r.matches(t)&&n(r)};return e.addEventListener(`scroll`,a,!0),{sync:i,destroy(){r?.disconnect(),e.removeEventListener(`scroll`,a,!0)}}}function Ge(e,t,r,i,a,o,s){return a(r.spacerHeight+e.offsetHeight),r.pending++,()=>n(e,()=>{--r.pending||!s()||(a(t.scrollTop+t.clientHeight+o-i(r.spacerHeight)),r.initialSpacerHeight=r.spacerHeight,r.contentHeightAtAnchor=t.scrollHeight-r.spacerHeight)})}function Ke(e,t,n,r,i,a){let o=We(e),s=ke((e,o)=>{i.delete(e);let s=a(e);s&&(o===`tool`?Le(e,s,n,t()):ze(e,s,r,t()))},e,t);return{...s,sync(){s.sync(),o.sync()},destroy(){s.destroy(),o.destroy()},observeMessages(e,i){let a=t();for(let t of e){let e=t.variant===`tool`?`tool`:t.variant===`reasoning`?`reasoning`:null;if(!e||Z(a,e,t)!==`row`)continue;let o=X(a,e,t).features,c=e===`tool`?o?.toolCallDisplay:o?.reasoningDisplay;c?.expandable!==!1&&(i.add(t.id),s.observe(t,e,e===`tool`?n:r,c))}}}}exports.createActivityLifecycle=Ke,exports.createReasoningBubble=Be,exports.createToolBubble=Re,exports.groupToolRows=Ve,exports.holdScroll=Ge,exports.initActivityUi=F,exports.turnUi=L,exports.updateActivityElapsed=De,exports.updateReasoningBubbleUI=ze,exports.updateToolBubbleUI=Le;
@@ -1,6 +1,6 @@
1
- import { Ct as AgentWidgetMessage, Ta as renderLucideIcon, k as AgentWidgetConfig } from "./types-CiXi4ICM.cjs";
2
- import { a as hasExplicitThemeStyle$1, c as updateActivityElapsed, i as getExplicitLegacyStyle$1, n as TurnActivityRuntime, o as groupToolRows, s as ActivityKind } from "./turn-activity-ui-BYBlInZQ.cjs";
3
- import { t as LoadingLabelRuntime } from "./loading-label-runtime-loader-C53YyPJ-.cjs";
1
+ import { Ct as AgentWidgetMessage, Ea as renderLucideIcon, k as AgentWidgetConfig } from "./types-BOZHQIk0.cjs";
2
+ import { a as hasExplicitThemeStyle$1, c as updateActivityElapsed, i as getExplicitLegacyStyle$1, n as TurnActivityRuntime, o as groupToolRows, s as ActivityKind } from "./turn-activity-ui-BGNhtMcH.cjs";
3
+ import { t as LoadingLabelRuntime } from "./loading-label-runtime-loader-CPxnoaoi.cjs";
4
4
  //#region src/components/tool-bubble.d.ts
5
5
  export declare const updateToolBubbleUI: (messageId: string, bubble: HTMLElement, expansionState: Set<string>, config?: AgentWidgetConfig) => void;
6
6
  export declare const createToolBubble: (message: AgentWidgetMessage, config?: AgentWidgetConfig, expansionState?: Set<string>) => HTMLElement;
@@ -29,6 +29,14 @@ export declare const initActivityUi: (icon: typeof renderLucideIcon, loadingLabe
29
29
  export declare const turnUi: Partial<TurnActivityRuntime>;
30
30
  //#endregion
31
31
  //#region src/activity-ui.d.ts
32
+ type DisclosureAnchor = {
33
+ spacerHeight: number;
34
+ initialSpacerHeight: number;
35
+ contentHeightAtAnchor: number;
36
+ pending: number;
37
+ };
38
+ /** Keep scroll reserve throughout manual disclosure animations and reversals. */
39
+ export declare function holdScroll(bubble: HTMLElement, body: HTMLElement, anchor: DisclosureAnchor, measure: (spacer: number) => number, setSpacer: (height: number) => void, slack: number, isCurrent: () => boolean): () => void;
32
40
  /** Keep automatic disclosure updates in the optional activity chunk. */
33
41
  export declare function createActivityLifecycle(root: HTMLElement, getConfig: () => AgentWidgetConfig, tools: Set<string>, reasoning: Set<string>, cache: {
34
42
  delete(id: string): unknown;
@@ -1,6 +1,6 @@
1
- import { Ct as AgentWidgetMessage, Ta as renderLucideIcon, k as AgentWidgetConfig } from "./types-CiXi4ICM.js";
2
- import { a as hasExplicitThemeStyle$1, c as updateActivityElapsed, i as getExplicitLegacyStyle$1, n as TurnActivityRuntime, o as groupToolRows, s as ActivityKind } from "./turn-activity-ui-BYBlInZQ.js";
3
- import { t as LoadingLabelRuntime } from "./loading-label-runtime-loader-C53YyPJ-.js";
1
+ import { Ct as AgentWidgetMessage, Ea as renderLucideIcon, k as AgentWidgetConfig } from "./types-BOZHQIk0.js";
2
+ import { a as hasExplicitThemeStyle$1, c as updateActivityElapsed, i as getExplicitLegacyStyle$1, n as TurnActivityRuntime, o as groupToolRows, s as ActivityKind } from "./turn-activity-ui-BGNhtMcH.js";
3
+ import { t as LoadingLabelRuntime } from "./loading-label-runtime-loader-CPxnoaoi.js";
4
4
  //#region src/components/tool-bubble.d.ts
5
5
  export declare const updateToolBubbleUI: (messageId: string, bubble: HTMLElement, expansionState: Set<string>, config?: AgentWidgetConfig) => void;
6
6
  export declare const createToolBubble: (message: AgentWidgetMessage, config?: AgentWidgetConfig, expansionState?: Set<string>) => HTMLElement;
@@ -29,6 +29,14 @@ export declare const initActivityUi: (icon: typeof renderLucideIcon, loadingLabe
29
29
  export declare const turnUi: Partial<TurnActivityRuntime>;
30
30
  //#endregion
31
31
  //#region src/activity-ui.d.ts
32
+ type DisclosureAnchor = {
33
+ spacerHeight: number;
34
+ initialSpacerHeight: number;
35
+ contentHeightAtAnchor: number;
36
+ pending: number;
37
+ };
38
+ /** Keep scroll reserve throughout manual disclosure animations and reversals. */
39
+ export declare function holdScroll(bubble: HTMLElement, body: HTMLElement, anchor: DisclosureAnchor, measure: (spacer: number) => number, setSpacer: (height: number) => void, slack: number, isCurrent: () => boolean): () => void;
32
40
  /** Keep automatic disclosure updates in the optional activity chunk. */
33
41
  export declare function createActivityLifecycle(root: HTMLElement, getConfig: () => AgentWidgetConfig, tools: Set<string>, reasoning: Set<string>, cache: {
34
42
  delete(id: string): unknown;
@@ -1 +1 @@
1
- var e,t,o,a,r,n,l,i,s,d,p,c,u,g,f,m,y,h,b,v,x,C;function w(e){let t=e?.expansion;return{animation:t?.animation??(e?.future?.v5Defaults?`height`:`instant`),duration:Number.isFinite(t?.duration)?Math.max(0,t.duration):160,easing:t?.easing??`ease-out`}}function A(e){let{header:t,content:o}=H(e),a=e.getRootNode();o?.contains(a.activeElement)&&t?.focus({preventScroll:!0})}function T(e,t){let{content:o,preview:a}=H(e);o&&(t||A(e),o.inert=!t,o.style.display=t?``:`none`,a&&(a.style.display=t||!a.textContent&&!a.childNodes.length?`none`:``))}function S(e){O.get(e)?.finish()}function M(e){for(let t=e.parentElement?.closest(G);t;t=t.parentElement?.closest(G))S(t);e.querySelectorAll(G).forEach(S)}function k(e,t,o,a){let r=w(o),n=r.animation===`height`&&r.duration>0&&!z()&&e.isConnected&&typeof e.animate==`function`,l=n?a??e.getBoundingClientRect().height:0,i=n&&O.has(e)?H(e).content:void 0,s=i?getComputedStyle(i):void 0,d=s?{transform:s.transform,opacity:s.opacity}:void 0;if(M(e),S(e),T(e,t),!n)return;let{header:p,content:c,preview:u}=H(e);if(!p||!c)return;let g,f,m=e.getBoundingClientRect().height;if(l===m)return;t||(c.style.display=``,u&&(u.style.display=`none`));try{g=e.animate([{height:`${l}px`,boxSizing:`border-box`,overflow:`hidden`},{height:`${m}px`,boxSizing:`border-box`,overflow:`hidden`}],{duration:r.duration,easing:r.easing,fill:`both`});let o=getComputedStyle(c),a={transform:o.transform||`none`,opacity:o.opacity||`1`},n={transform:`${a.transform===`none`?``:a.transform} translateY(-8px)`,opacity:`0`};f=c.animate([d??(t?n:a),t?a:n],{duration:r.duration,easing:r.easing,fill:`both`})}catch{g?.cancel(),T(e,t);return}let y,h=m,b=()=>{O.get(e)?.effect===g&&(O.delete(e),y?.disconnect(),g.onfinish=g.oncancel=null,g.cancel(),f.cancel(),T(e,t))};O.set(e,{effect:g,expanded:t,settings:JSON.stringify(r),finish:b}),g.onfinish=g.oncancel=b,t&&typeof ResizeObserver==`function`&&(y=new ResizeObserver(()=>{if(O.get(e)?.effect!==g||!e.isConnected)return;let t=g.effect,o=t?.getComputedTiming().progress;if(null==o||o<0||o>=1)return;let a=e.getBoundingClientRect().height,r=e.style.getPropertyValue(`height`),n=e.style.getPropertyPriority(`height`);e.style.setProperty(`height`,`auto`,`important`);let l=e.getBoundingClientRect().height;r?e.style.setProperty(`height`,r,n):e.style.removeProperty(`height`),l!==h&&(h=l,t.setKeyframes([{height:`${a}px`,offset:o,boxSizing:`border-box`,overflow:`hidden`},{height:`${l}px`,offset:1,boxSizing:`border-box`,overflow:`hidden`}]))}),y.observe(c),y.observe(p))}function D(e,t){let o=new Set,a=new Map,r=typeof matchMedia==`function`?matchMedia(`(prefers-reduced-motion: reduce)`):void 0,n=()=>o.forEach(S),l=()=>{r?.matches&&n()};r?.addEventListener?.(`change`,l);let i=()=>{let e=w(t());return e.animation===`height`&&e.duration>0&&!z()};return{prepare(r){if(a.clear(),!i()){n(),o.clear();return}let l=new Map(Array.from(e.querySelectorAll(G),e=>[e.id,e]));for(let e of r.querySelectorAll(G)){let r=l.get(e.id);if(!r)continue;o.add(r);let n=W(e),i=O.get(r);if(n!==W(r))a.set(r.id,r.getBoundingClientRect().height),n||A(r),S(r);else if(i)if(i.settings!==JSON.stringify(w(t()))||z())S(r);else if(!i.expanded){let{content:t,preview:o}=H(e);t&&(t.style.display=``,t.inert=!0),o&&(o.style.display=`none`)}}},sync(){if(i()){for(let t of o)e.contains(t)||(S(t),o.delete(t));for(let r of e.querySelectorAll(G)){o.add(r);let e=a.get(r.id);void 0!==e&&k(r,W(r),t(),e);let n=O.get(r);n&&(n.settings!==JSON.stringify(w(t()))||z())&&S(r)}a.clear()}else n(),o.clear(),a.clear()},clear(){e.querySelectorAll(G).forEach(S),n(),o.clear(),a.clear()},destroy(){this.clear(),r?.removeEventListener?.(`change`,l)}}}function $(e,t){if(typeof t.toolCall?.iconName==`string`)return t.toolCall.iconName;let o=e.map(e=>K(e,t));return e.every((t,a)=>J(t)[0]===J(e[0])[0]&&o[a]===o[0])?o[0]:`toolbox`}function B(e,t=3){let o=e.length;if(0===o)return``;(!Number.isInteger(t)||t<0)&&(t=3);let a=new Map;for(let t of e){let e=J(t)[0],o=a.get(e);(!o||o.status===`complete`&&!Y(o))&&a.set(e,t)}let r=t?[...a.values()].slice(0,t).map((e,t)=>{let o=X(e);return t?o[0].toLowerCase()+o.slice(1):o}).join(`, `):1===o?`1 activity`:`${o} activities`,n=a.size-t;n>0&&t&&(r+=`, and ${n} more`);for(let[t,o,a]of Q)e.some(e=>e[t]===o||!1===o&&e.error)&&(r+=` · ${a}`);return r}function _(e,t){return e.turnActivity??t.turnActivity?.resolveMessage?.(e)??function(e){let{executionId:t,phase:o}=e.agentMetadata??{};if(e.role!==`assistant`||typeof t!=`string`||!t)return;let a=e.variant===`tool`||e.variant===`reasoning`||o===`commentary`?`progress`:o===`partial_answer`||o===`final_answer`?`final`:void 0;return a?{id:t,kind:a,startedAt:Date.parse(e.createdAt)}:void 0}(e)}function E(e,t){if(!e.turnActivity?.enabled||t.role!==`assistant`||_(t,e)?.kind!==`progress`)return e;let o=ce.get(e);if(o)return o;let{defaultProvenance:a,suppliedPath:r}=ae(),n=a(e,pe),l={...e.features};for(let t of[`toolCallDisplay`,`reasoningDisplay`]){let o={...l[t]};for(let[a,l]of Object.entries(de[t]))!n.includes(`features.${t}.${a}`)&&r(e.preferences,`${t}.${a}`)!==`explicit`&&Object.assign(o,{[a]:l});l[t]=o}l.toolCallDisplay={...l.toolCallDisplay,groupSummary:l.toolCallDisplay?.groupSummary??(l.toolCallDisplay?.groupedMode===`stack`?`aggregate`:`current-action`)};let i={...e,features:l};return ce.set(e,i),i}function N(e,t,o){e&&o&&(e=E(e,o));let a=t===`tool`,r=a?`toolCallDisplay`:`reasoningDisplay`;return{...e,features:{...e?.features,[r]:{...a?me:ye,...!0===e?.future?.v5Defaults?a?he:be:{},...e?.features?.[r],layout:L(e,t)}}}}function L(e,t,o){e&&o&&(e=E(e,o));let a=t===`tool`?`toolCallDisplay`:`reasoningDisplay`;return e?.features?.[a]?.layout??e?.features?.[a]?.variant??(e?.future?.v5Defaults?`row`:`card`)}function R(e){let t=Math.max(0,Math.floor((e??0)/1e3));return t<1?`a moment`:t<60?`${t}s`:`${Math.floor(t/60)}m ${t%60}s`}function P(e,t){let o=Number(e.getAttribute(`data-tool-elapsed`));if(!o)return;let a=t-o;e.textContent=e.classList.contains(`persona-activity-duration`)?_e(a,e.dataset.prefix):e.closest(`.persona-activity-row`)?R(a):u(a)}function I(e,t,o,a,r=!1,n){let i=r||L(o,a)===`row`,s=e.querySelector(`:scope > button`),d=a===`tool`?t.toolCall:t.reasoning,p=d?.status!==`complete`,c=o.features?.toolCallDisplay?.durationDisplay;if(s&&(i||o.future?.v5Defaults)&&a===`tool`&&d&&(c===`all`||c===(r?`group`:`tools`))){let e=l(`span`,`persona-activity-duration`),{startedAt:o,completedAt:a,durationMs:r}=d;p&&o>0&&o<=Date.now()&&e.setAttribute(`data-tool-elapsed`,String(o));let n=t.toolCall?.duration??r??a-o;e.textContent=_e(p&&void 0!==o?o>0?Date.now()-o:void 0:n),s.appendChild(e)}if(!i)return e;if(e.className=`persona-message-bubble persona-${a}-bubble persona-activity-row`,e.dataset.activityKind=a,a===`tool`){let t=ae().getExplicitLegacyStyle(o,`toolCall.shadow`);e.style.boxShadow=typeof t==`string`?t.trim()||`none`:`var(--persona-consumer-toolBubble-shadow, none)`}if(!s)return e;s.className=s.classList.contains(`persona-theme-padding`)?`persona-activity-header persona-theme-padding`:`persona-activity-header`;let u=t.approval?.status??t.toolCall?.approvalStatus,g=t.toolCall?.interrupted?`interrupted`:u===`denied`||u===`timeout`?`denied`:u===`pending`?`awaiting-approval`:!1===t.toolCall?.success?`error`:p?d?.status===`pending`?`pending`:`running`:`done`;e.dataset.activityState=g;let f=l(`span`,`persona-activity-icon`);f.dataset.activityIcon=g;let m=a===`reasoning`?o.features?.reasoningDisplay?.iconName:void 0,y=g===`done`?a===`reasoning`?m||`brain`:n??(r?`toolbox`:K(t.toolCall,o)):void 0;y&&y!==`check`&&(f.style.color=`inherit`);let h=ie(m||(g===`pending`?`circle`:g===`awaiting-approval`?`clock`:g===`running`?`loader-circle`:g===`done`?y||`check`:`x`),16,`currentColor`,2);!h&&y&&(h=ie(`square-text`,16,`currentColor`,2)),h&&f.appendChild(h),s.querySelector(`.persona-reasoning-header-icon`)?.remove();let b=a===`tool`?`toolCallDisplay`:`reasoningDisplay`,v=(r?o.features?.toolCallDisplay?.groupIconVisibility:void 0)??o.features?.[b]?.iconVisibility??(o.future?.v5Defaults?`active`:`always`);(v===`always`||v===`active`&&g!==`done`)&&s.prepend(f),s.querySelector(`:scope > div:not(.persona-ml-auto)`)?.classList.add(`persona-activity-label`),s.querySelector(`.persona-ml-auto`)?.classList.add(`persona-activity-chevron`);let x=e.querySelector(`:scope > .persona-border-t`);return x?.classList.add(`persona-activity-body`),x&&(x.id=`activity-details-${t.id}`,s.setAttribute(`aria-controls`,x.id)),e}function j(e,t,o,r,n=typeof r==`string`,i){let s=Ce(`persona-tool-bubble`,e.id),d=we({expandable:!0,expanded:o,bubbleType:`tool`}),p=l(`div`,``);typeof r==`string`?p.textContent=r:p.appendChild(r);let c=re(t);Te(d,p,{config:t,expandable:!0,expanded:o,iconColor:c.toggleTextColor||c.headerTextColor||`currentColor`,metaGap:!0});let u=l(`div`,`persona-border-t`);return u.style.display=o?``:`none`,u.inert=!o,s.append(d,u),I(s,e,t,`tool`,!0,i),s.dataset.personaToolGroup=`true`,w(t).animation===`height`&&(s.dataset.personaDisclosureMotion=`height`),n&&(s.dataset.activityState===`running`||s.dataset.activityState===`pending`)&&a(p,t,`tool-group`),{bubble:s,body:u}}function q(e){let{config:t,messages:o,tempContainer:r,streaming:n,runActivity:i,showToolCalls:s,showReasoning:d,dropCompletedToolCalls:p,dropReasoningRow:c,createMessageRow:u,activityIds:g,activityLifecycle:f,toolExpansionState:m}=e,y=se.render;if(t.turnActivity?.enabled&&y)return y(e,{group:j,tools:q,classify:_,presentation:E,hasExplicitThemeStyle:ae().hasExplicitThemeStyle});let h=t.features?.toolCallDisplay;if(h?.grouped){let e=[],y=[],b=h.groupBoundary===`iteration`,v=h.groupedMode===`summary`,x=()=>{y.length&&e.push(y),y=[]};o.forEach(e=>{if(e.variant===`tool`&&e.toolCall&&s){if(p&&e.toolCall.status===`complete`&&!e.toolCall.interrupted)return;let t=y[y.length-1]?.agentMetadata,o=e.agentMetadata;b&&t&&o&&(t.executionId&&o.executionId&&t.executionId!==o.executionId||void 0!==t.iteration&&void 0!==o.iteration&&t.iteration!==o.iteration)&&x(),y.push(e)}else(e.variant!==`reasoning`||d&&(e.reasoning?.status!==`complete`||!c(e.reasoning)))&&x()}),x();let C=new Map;for(let e of r.children)e instanceof HTMLElement&&C.set(e.dataset.wrapperId,e);e.forEach((o,r)=>{let s=o.map(e=>C.get(e.id)).filter(e=>!!e);if(s.length<(v?1:2))return;let d=`tool-group-${o[0].id}`,p=u(d,`assistant`);p.dataset.personaToolGroupRow=`true`,(h.groupAppearance||t.future?.v5Defaults)&&(p.dataset.groupAppearance=h.groupAppearance??`inset`);let c=o.map(e=>e.toolCall),y=c.some(e=>e.interrupted),x=r===e.length-1,w=o.some(e=>i?.messageIds.has(e.id)),A={messages:o,toolCalls:c,config:t,streaming:n,isLatestGroup:x,isCurrentRunGroup:w},T=o.map(e=>e.approval?.status??e.toolCall?.approvalStatus),S=[`pending`,`denied`,`timeout`].find(e=>T.includes(e)),M=!c.some(e=>!1===e.success||e.error),k=y||!M||S,D=c.some(e=>e.status!==`complete`),_=D||!b&&n&&x&&w&&!k,E=`${o.length} tool${1===o.length?``:`s`}`,N=h.groupedMode===`collapsible`||L(t,`tool`)===`row`?B(c.map((e,t)=>({...e,approvalStatus:T[t]})),h.groupSummaryMaxItems):y?`${E} · Interrupted`:`Called ${E}`,R=function(e,t,o){let a=e.filter(e=>e.toolCall?.status!==`complete`);return t.features?.toolCallDisplay?.groupSummary!==`current-action`||1!==a.length||e.some(ue)?o:fe(a[0],t)}(o,t,N),P=t.toolCall?.renderGroupedSummary?.({...A,defaultSummary:R})??R;if(s[0].before(p),h.groupedMode===`collapsible`){let e={...o[0],id:d,approval:void 0,toolCall:{id:d,status:_?`running`:`complete`,chunks:c.flatMap(e=>e.chunks??[]),success:M,interrupted:y,approvalStatus:S}};if(c.every(e=>qe(e.startedAt)&&(e.status!==`complete`||qe(e.completedAt)&&e.completedAt>=e.startedAt))){let t=Math.min(...c.map(e=>e.startedAt)),o=Math.max(...c.map(e=>e.completedAt??e.startedAt));D?e.toolCall.startedAt=t:e.toolCall.durationMs=o-t}g.add(d),f.observe(e,`tool`,m,h,o.find(e=>m.has(e.id))?.id??``);let a=j(e,t,m.has(d),P,void 0,_||k?void 0:$(c,t));a.bubble.classList.add(`persona-tool-group`),a.body.dataset.personaToolGroupStack=`true`,p.appendChild(a.bubble),s.forEach((e,t)=>{Ue(e),e.style.setProperty(`--persona-activity-stagger`,`${40*t}ms`),e.classList.add(`persona-activity-group-child`),a.body.appendChild(e)});return}let I=l(`div`,`persona-tool-group persona-flex persona-w-full persona-flex-col persona-gap-2`);I.dataset.personaToolGroup=`true`;let q=l(`div`,`persona-tool-group-summary persona-text-xs persona-text-persona-muted`);if(q.id=`tool-group-summary-${o[0].id}`,xe(q,P),!(P instanceof HTMLElement)&&_&&!k&&a(q,t,`tool-group`),I.appendChild(q),p.appendChild(I),v){for(let e of s)e.remove();return}let U=l(`div`,`persona-tool-group-stack persona-flex persona-flex-col`);U.id=`tool-group-stack-${o[0].id}`,U.dataset.personaToolGroupStack=`true`,I.appendChild(U),s.forEach((e,t)=>{Ue(e);let o=l(`div`,`persona-tool-group-item persona-relative`);o.dataset.personaToolGroupItem=`true`,t<s.length-1&&(o.dataset.personaToolGroupConnector=`true`),o.appendChild(e),U.appendChild(o)})})}return!1}function U(e,t,o,a,r,n){let l=function(e){let t=`.persona-activity-scroll`,o=e=>{let t=e.scrollHeight-e.clientHeight,o=e.clientHeight>0&&t>1;e.toggleAttribute(`data-persona-scroll-top`,o&&e.scrollTop>1),e.toggleAttribute(`data-persona-scroll-bottom`,o&&t-e.scrollTop>1),e.tabIndex=o?0:-1},a=typeof ResizeObserver>`u`?void 0:new ResizeObserver(e=>{for(let{target:t}of e)o(t)}),r=e=>{let a=e.target;a.matches(t)&&o(a)};return e.addEventListener(`scroll`,r,!0),{sync:()=>{a?.disconnect(),e.querySelectorAll(t).forEach(e=>{a?.observe(e),o(e)})},destroy(){a?.disconnect(),e.removeEventListener(`scroll`,r,!0)}}}(e),i=function(e,t,o=()=>({})){let a=t?D(t,o):void 0,r=new Map,n=e=>{let t=r.get(e)??{};return r.set(e,t),t},l=e=>{clearTimeout(e.timer),e.timer=void 0};return{observe(t,a,i,s={},d){let p=a===`tool`?t.toolCall:t.reasoning;if(!p)return;let c=N(o(),a,t).features;s={...a===`tool`?c?.toolCallDisplay:c?.reasoningDisplay,...s},!r.has(t.id)&&void 0!==d&&(i[d?`add`:`delete`](t.id),n(t.id).manual=r.get(d)?.manual);let u=n(t.id);if(!u.manual&&(p.status!==`complete`&&(l(u),u.finished=!1),!u.seen&&p.status!==`complete`&&p.chunks?.some(Boolean)&&(u.seen=!0,!1!==s.autoExpand&&i.add(t.id)),u.seen&&p.status===`complete`&&!u.finished)){if(u.finished=!0,!1===s.autoCollapseDelay)return;u.timer=setTimeout(()=>{u.timer=void 0,i.delete(t.id),e(t.id,a)},s.autoCollapseDelay??1e3)}},manual(e){let t=n(e);t.manual=!0,l(t)},prune(e){for(let[t,o]of r)e.has(t)||(l(o),r.delete(t))},prepare(e){a?.prepare(e)},sync(){a?.sync()},clear(){r.forEach(l),r.clear(),a?.clear()},destroy(){this.clear(),a?.destroy()}}}((e,l)=>{r.delete(e);let i=n(e);i&&(l===`tool`?Re(e,i,o,t()):Ie(e,i,a,t()))},e,t);return{...i,sync(){i.sync(),l.sync()},destroy(){i.destroy(),l.destroy()},observeMessages(e,r){let n=t();for(let t of e){let e=t.variant===`tool`?`tool`:t.variant===`reasoning`?`reasoning`:null;if(!e||L(n,e,t)!==`row`)continue;let l=N(n,e,t).features,s=e===`tool`?l?.toolCallDisplay:l?.reasoningDisplay;!1!==s?.expandable&&(r.add(t.id),i.observe(t,e,e===`tool`?o:a,s))}}}}e=(e,t,o)=>()=>{if(o)throw o[0];try{return e&&(t=e(e=0)),t}catch(e){throw o=[e],e}};const G=`[data-persona-disclosure]`,O=new WeakMap,H=e=>{let t=Array.from(e.children);return{header:t.find(e=>e.matches(`button[data-expand-header]`)),content:t.find(e=>e.classList.contains(`persona-border-t`)),preview:t.find(e=>e.hasAttribute(`data-persona-collapsed-preview`))}},W=e=>H(e).header?.getAttribute(`aria-expanded`)===`true`,z=()=>typeof matchMedia==`function`&&matchMedia(`(prefers-reduced-motion: reduce)`).matches;r=e(()=>{o=e=>{t=e},a=(...e)=>t?.applyLoadingLabel(...e)});r();const F=new Map([[`web_search|web_search_preview|WebSearch`,`Searching the web`,`Searched the web`,`globe`],[`web_fetch|WebFetch`,`Reading web pages`,`Read web pages`,`globe`,`single`],[`file_search|search_files|Glob`,`Searching files`,`Searched files`,`search`],[`read_text_file|read_multiple_files|Read`,`Reading files`,`Read files`,`file-text`,`single`],[`write_file|edit_file|apply_patch|Write|Edit|NotebookEdit`,`Editing files`,`Edited files`,`pencil`,`single`],[`list_directory|list_directory_with_sizes|directory_tree`,`Browsing files`,`Browsed files`,`folder`],[`Grep`,`Searching code`,`Searched code`,`search`],[`shell|local_shell|bash|Bash|PowerShell|bash_code_execution`,`Running commands`,`Ran commands`,`terminal`,`single`],[`code_interpreter|code_execution`,`Running code`,`Ran code`,`code-xml`],[`browser_navigate|browser_click|browser_snapshot|browser_fill_form`,`Using the browser`,`Used the browser`,`globe`],[`computer`,`Using the computer`,`Used the computer`,`monitor`],[`image_generation`,`Generating images`,`Generated images`,`image`],[`git_status|git_diff|git_diff_staged|git_diff_unstaged|git_log|git_show`,`Checking repository changes`,`Checked repository changes`,`file-code`],[`tool_search|ToolSearch`,`Finding tools`,`Looked up tools`,`search`],[`Agent`,`Delegating work`,`Delegated work`,`bot`],[`TodoWrite|TaskCreate|TaskUpdate`,`Updating the plan`,`Updated the plan`,`clipboard`],[`sql_db_query`,`Querying the database`,`Queried the database`,`database`],[`search_gmail`,`Searching email`,`Searched email`,`mail`]].flatMap(([e,...t])=>e.split(`|`).map(e=>[e,t]))),V=e=>{let t=e.replace(/([a-z\d])([A-Z])/g,`$1 $2`).replace(/[_-]+/g,` `).replace(/\s+/g,` `).toLowerCase();return t[0].toUpperCase()+t.slice(1)},J=e=>{let t=e.name?.trim()||`tool`,o=V(t);return F.get(t)??[`Using ${o}`,`Used ${o}`]},K=(e,t)=>{let o=t.toolCall?.iconName;return(typeof o==`function`?o(e):o)??(e=>J(e)[2]??`wrench`)(e)},Q=[[`approvalStatus`,`pending`,`Waiting for approval`],[`approvalStatus`,`denied`,`Approval denied`],[`approvalStatus`,`timeout`,`Approval expired`],[`success`,!1,`Failed`],[`interrupted`,!0,`Interrupted`],[`superseded`,!0,`Approved, ran again below`]],Y=e=>e.error||Q.some(([t,o])=>e[t]===o),X=e=>Y(e)?V(e.name?.trim()||`tool`):J(e)[+(e.status===`complete`)],Z=e=>{let t=X(e);return J(e)[3]&&!/^(read_multiple_files|apply_patch)$/.test(e.name?.trim()??``)?t.replace(/(web pages|files|commands)$/,e=>`a ${e.slice(0,-1)}`):t};e(()=>{n={backgroundColor:`background`,borderColor:`borderColor`,borderWidth:`borderWidth`,borderRadius:`borderRadius`,headerBackgroundColor:`header.background`,headerTextColor:`header.foreground`,contentBackgroundColor:`content.background`,contentTextColor:`content.foreground`,codeBlockBackgroundColor:`codeBlock.background`,codeBlockBorderColor:`codeBlock.borderColor`,codeBlockTextColor:`codeBlock.foreground`,toggleTextColor:`toggleForeground`,labelTextColor:`labelForeground`,loadingAnimationColor:`loading.primary`,loadingAnimationSecondaryColor:`loading.secondary`}})();let ee;const te=()=>{throw Error(`Activity UI requires core style dependencies.`)};let oe;const ae=()=>oe??te();let re=te,ne=te;const le=(e,t,a)=>{oe=a,({resolveToolStyles:re,applyToolPadding:ne}=function({getExplicitLegacyStyle:e,hasExplicitThemeStyle:t}){return{resolveToolStyles:function(o){let a={...o?.toolCall};for(let[r,l]of Object.entries(n))void 0===e(o,`toolCall.${r}`)&&t(o,`toolBubble.${l}`)&&(a[r]=`var(--persona-components-toolBubble-${l.split(`.`).join(`-`)})`);return a},applyToolPadding:function(o,a,r){o.classList.remove(`persona-theme-padding`),o.style.removeProperty(`--persona-theme-padding`);for(let e of[`padding-left`,`padding-right`,`padding-top`,`padding-bottom`])o.style.removeProperty(e);t(a,`toolBubble.${r}.padding`)&&(o.classList.add(`persona-theme-padding`),o.style.setProperty(`--persona-theme-padding`,`var(--persona-components-toolBubble-${r}-padding)`));let n=e(a,`toolCall.${r}PaddingX`),l=e(a,`toolCall.${r}PaddingY`);typeof n==`string`&&n&&(o.style.paddingLeft=n,o.style.paddingRight=n),typeof l==`string`&&l&&(o.style.paddingTop=l,o.style.paddingBottom=l)},toolLoadingDuration:function(e){let o=e?.toolCall?.loadingAnimationDuration;return void 0===o?t(e,`toolBubble.loading.duration`)?`var(--persona-components-toolBubble-loading-duration)`:`2000ms`:`${o}ms`}}}(a)),ee=e,o(t)},ie=(...e)=>ee?.(...e)??null,se={},de={toolCallDisplay:{variant:`row`,grouped:!0,groupedMode:`collapsible`,autoExpand:!1,iconVisibility:`always`},reasoningDisplay:{appearance:`inset`,variant:`row`,autoExpand:!1,iconVisibility:`always`}},pe=Object.entries(de).flatMap(([e,t])=>Object.keys(t).map(t=>`features.${e}.${t}`)),ce=new WeakMap,ue=e=>{let t=e.toolCall,o=e.approval?.status??t.approvalStatus;return t.error||t.interrupted||!1===t.success||t.superseded||o&&o!==`approved`},ge=(e,t)=>e.toolCall?.actionTitle?.trim()||t?.toolCall?.resolveActionTitle?.(e.toolCall,e)?.trim()||void 0,fe=(e,t)=>ge(e,t)||Z(e.toolCall),me={collapsedMode:`tool-call`,activePreview:!1,grouped:!1,groupedMode:`stack`,groupBoundary:`adjacent`,previewMaxLines:3,expandable:!0,loadingAnimation:`none`},ye={activePreview:!1,previewMaxLines:3,expandable:!0,loadingAnimation:`none`},he={layout:`row`,variant:`row`,iconVisibility:`active`,autoExpand:!1,grouped:!0,groupedMode:`collapsible`,groupAppearance:`inset`,loadingAnimation:`shimmer`},be={appearance:`inset`,layout:`row`,variant:`row`,iconVisibility:`active`,autoExpand:!1,loadingAnimation:`shimmer`};b=e(()=>{l=(e,t)=>{let o=document.createElement(e);return t&&(o.className=t),o},i=(e,t={},...o)=>{let a=document.createElement(e);if(t.className&&(a.className=t.className),void 0!==t.text&&(a.textContent=t.text),t.attrs)for(let[e,o]of Object.entries(t.attrs))a.setAttribute(e,o);if(t.style){let e=a.style,o=t.style;for(let t of Object.keys(o)){let a=o[t];null!=a&&(e[t]=a)}}let r=o.filter(e=>null!=e);return r.length>0&&a.append(...r),a}}),v=e(()=>{s=e=>{let t=e.completedAt??Date.now(),o=e.startedAt??t,a=void 0===e.durationMs?Math.max(0,t-o):e.durationMs;return`Thought for ${u(a).slice(0,-1)} seconds`},d=e=>e.status===`complete`?s(e):e.status===`pending`?`Waiting`:``,p=e=>{let t=typeof e.duration==`number`?e.duration:typeof e.durationMs==`number`?e.durationMs:Math.max(0,(e.completedAt??Date.now())-(e.startedAt??e.completedAt??Date.now()));return`Used tool for ${u(t).slice(0,-1)} seconds`},c=e=>e.status===`complete`?p(e):`Using tool...`,u=e=>{let t=e/1e3;return t<.1?`<0.1s`:t>=10?`${Math.round(t)}s`:`${t.toFixed(1).replace(/\.0$/,``)}s`},g=e=>{if(e.interrupted&&void 0===e.duration&&void 0===e.durationMs&&(void 0===e.startedAt||void 0===e.completedAt))return``;let t=typeof e.duration==`number`?e.duration:typeof e.durationMs==`number`?e.durationMs:Math.max(0,(e.completedAt??Date.now())-(e.startedAt??e.completedAt??Date.now()));return u(t)},f=e=>{let t=void 0===e.durationMs?Math.max(0,(e.completedAt??Date.now())-(e.startedAt??e.completedAt??Date.now())):e.durationMs;return u(t)},m=(e,t,o)=>{if(!t)return o;let a=e.name?.trim()||`tool`,r=g(e);return t.replace(/\{toolName\}/g,a).replace(/\{duration\}/g,r)},y=(e,t)=>{let o,a=e.replace(/\{toolName\}/g,t),r=[],n=/\*\*(.+?)\*\*|\*(.+?)\*|~(.+?)~/g,l=0;for(;null!==(o=n.exec(a));)o.index>l&&h(r,a.slice(l,o.index),[]),void 0===o[1]?void 0===o[2]?void 0!==o[3]&&h(r,o[3],[`dim`]):h(r,o[2],[`italic`]):h(r,o[1],[`bold`]),l=o.index+o[0].length;return l<a.length&&h(r,a.slice(l),[]),r},h=(e,t,o)=>{let a=t.split(`{duration}`);for(let t=0;t<a.length;t++)a[t]&&e.push({text:a[t],styles:o}),t<a.length-1&&e.push({text:`{duration}`,styles:o,isDuration:!0})}});v(),b();const ve=[`persona-w-full`,`persona-rounded-2xl`,`persona-bg-persona-surface`,`persona-border`,`persona-border-persona-message-border`,`persona-text-persona-primary`,`persona-shadow-sm`,`persona-overflow-hidden`,`persona-px-0`,`persona-py-0`],xe=(e,t)=>null!=t&&(typeof t==`string`?(e.textContent=t,!0):(e.appendChild(t),!0)),Ce=(e,t)=>{let o=l(`div`,[`persona-message-bubble`,e,...ve].join(` `));return o.id=`bubble-${t}`,o.setAttribute(`data-message-id`,t),o.setAttribute(`data-persona-disclosure`,``),o},we=e=>{let t=l(`button`,e.expandable?`persona-flex persona-w-full persona-items-center persona-justify-between persona-gap-3 persona-bg-transparent persona-px-4 persona-py-3 persona-text-left persona-cursor-pointer persona-border-none`:`persona-flex persona-w-full persona-items-center persona-justify-between persona-gap-3 persona-bg-transparent persona-px-4 persona-py-3 persona-text-left persona-cursor-default persona-border-none`);return t.type=`button`,e.expandable&&(t.setAttribute(`aria-expanded`,e.expanded?`true`:`false`),t.setAttribute(`data-expand-header`,`true`)),t.setAttribute(`data-bubble-type`,e.bubbleType),t},Ae=(e,t,o,a)=>{let r=a?.expansion?.chevron?.[t?`expanded`:`collapsed`]??(a?.future?.v5Defaults?t?`down`:`right`:t?`up`:`down`),n=w(a),l=e.querySelector(`svg`);if(!l){if(l=ie(`chevron-right`,16,o,1.5),!l)return;e.replaceChildren(l)}l.setAttribute(`stroke`,o),e.classList.add(`persona-disclosure-chevron`),e.style.transform=`rotate(${{right:0,down:90,left:180,up:-90}[r]}deg)`,e.style.transitionDuration=`${n.animation===`height`?n.duration:0}ms`,e.style.transitionTimingFunction=n.easing},Te=(e,t,o)=>{if(!o.expandable)return e.append(t),null;let a=l(`div`,`persona-flex persona-items-center`);Ae(a,o.expanded,o.iconColor,o.config);let r=l(`div`,o.metaGap?`persona-flex persona-items-center persona-gap-2 persona-ml-auto`:`persona-flex persona-items-center persona-ml-auto`);return r.append(a),e.append(t,r),a},Se=e=>{let t=l(`div`,`persona-px-4 persona-py-3 persona-text-xs persona-leading-snug persona-text-persona-muted`);if(t.setAttribute(`data-persona-collapsed-preview`,e.previewKind),t.style.display=`none`,t.style.whiteSpace=`pre-wrap`,!e.expanded&&e.isActive&&e.activePreview&&e.previewText){let o=e.renderPreview?.();xe(t,o)||(t.textContent=e.previewText),t.style.display=``}return!e.expanded&&e.isActive&&e.activeMinHeight&&(e.bubble.style.minHeight=e.activeMinHeight),t},Me=e=>{e.header.setAttribute(`aria-expanded`,e.expanded?`true`:`false`),e.toggleIcon&&Ae(e.toggleIcon,e.expanded,e.iconColor,e.config),e.content.style.display=e.expanded?``:`none`,e.content.inert=!e.expanded,e.collapsedPreview.style.display=e.expanded?`none`:e.collapsedPreview.textContent||e.collapsedPreview.childNodes.length?``:`none`},ke=(e,t,o)=>{let a=o.stateSet.has(e),r=t.querySelector(`button[data-expand-header="true"]`),n=t.querySelector(`.persona-border-t`);if(!r||!n)return;r.setAttribute(`aria-expanded`,a?`true`:`false`);let l=r.querySelector(`.persona-ml-auto`)?.querySelector(`:scope > .persona-flex.persona-items-center`);l&&Ae(l,a,o.iconColor,o.config),k(t,a,o.config)},De=(e,t,o,a,r,n)=>{e.textContent=``;for(let i of y(t,o))(i.styles.length?e.appendChild(l(`span`,i.styles.map(e=>`persona-tool-text-${e}`).join(` `))):e).append(i.isDuration?a?n():r:i.text)},$e=(e,t,o,a)=>{let r=o instanceof HTMLElement;return t.textContent=typeof o==`string`&&o.trim()?o:a,e.appendChild(r?o:t),r},Be=(e,t,o)=>e.split(/\r?\n/).map(e=>e.trim()).filter(Boolean).slice(t,o).join(`\n`);r(),b(),v();const _e=(e,t=``)=>Number.isFinite(e)&&e>=1e3?t+R(e):``;C=e(()=>{x=e=>{if(null===e)return`null`;if(void 0===e)return``;if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`boolean`)return String(e);try{return JSON.stringify(e,null,2)}catch{return String(e)}}});b(),C();const Ee=e=>{if(null==e)return!0;if(typeof e==`string`){if(!e.trim())return!0;try{return Ee(JSON.parse(e))}catch{return!1}}return typeof e==`object`&&0===Object.keys(e).length},Ne=e=>{if(typeof e==`object`&&e)return!0;if(typeof e!=`string`)return!1;try{let t=JSON.parse(e);return typeof t==`object`&&!!t}catch{return!1}};b(),v(),r(),C();const Le=(e,t=!1)=>e.toggleTextColor||e.headerTextColor||(t?`currentColor`:`var(--persona-primary, #171717)`),Re=(e,t,o,a)=>{ke(e,t,{stateSet:o,config:a,iconColor:Le(re(a),t.classList.contains(`persona-activity-row`))})},Pe=(e,t,o=new Set)=>{t=N(t,`tool`,e);let r=e.toolCall,n=re(t),s=Ce(`persona-tool-bubble`,e.id);if(n.backgroundColor&&(s.style.backgroundColor=n.backgroundColor),n.borderColor&&(s.style.borderColor=n.borderColor),n.borderWidth&&(s.style.borderWidth=n.borderWidth),n.borderRadius&&(s.style.borderRadius=n.borderRadius),s.style.boxShadow=void 0===n.shadow?`var(--persona-tool-bubble-shadow)`:n.shadow.trim()===``?`none`:n.shadow,!r)return I(s,e,t,`tool`);let d=t.features.toolCallDisplay,p=d.expandable??me.expandable,u=p&&o.has(e.id),{summary:f,previewText:y,isActive:h}=((e,t,o)=>{let a=o?.features?.toolCallDisplay,r=L(o,`tool`)===`row`,n=a?.collapsedMode??me.collapsedMode,l=!1===t.success?t.error||`Tool failed`:((e,t)=>{let o=(e.chunks??[]).join(``).trim();return o?Be(o,-t):Be(x(e.args),0,t)})(t,a?.previewMaxLines??me.previewMaxLines),i=r&&n===`tool-call`?Z({...t,approvalStatus:e.approval?.status??t.approvalStatus}):t.interrupted?`${t.name?.trim()||`Tool`} · Interrupted`:o?.future?.v5Defaults||r?`${t.status===`complete`?`Used`:`Using`} ${t.name?.trim()||`tool`}`:c(t),s=t.status!==`complete`,d=o?.toolCall??{},p=s&&r&&n===`tool-call`&&!ue(e)?fe(e,o):i;n===`tool-name`?p=t.name?.trim()||i:n===`tool-preview`&&l&&(p=l),s&&d.activeTextTemplate?p=m(t,d.activeTextTemplate,p):!s&&!t.interrupted&&d.completeTextTemplate&&(p=m(t,d.completeTextTemplate,p)),t.interrupted?p.includes(` · Interrupted`)||(p+=` · Interrupted`):!1===t.success?p+=` · Failed`:t.superseded&&(p+=` · Approved, ran again below`);let u=e.approval?.status??t.approvalStatus;return u===`pending`?p+=` · Waiting for approval`:u===`denied`?p+=` · Approval denied`:u===`timeout`&&(p+=` · Approval expired`),{summary:p,previewText:l,isActive:s}})(e,r,t),b=we({expandable:p,expanded:u,bubbleType:`tool`});n.headerBackgroundColor&&(b.style.backgroundColor=n.headerBackgroundColor),ne(b,t,`header`);let v=l(`div`,`persona-flex persona-flex-col persona-text-left`),C=l(`span`,`persona-text-xs persona-text-persona-primary`);n.headerTextColor&&(C.style.color=n.headerTextColor);let w=String(r.startedAt??Date.now()),A=()=>{let e=l(`span`,``);return h&&e.setAttribute(`data-tool-elapsed`,w),e.textContent=g(r),e},T=n.renderCollapsedSummary?.({message:e,toolCall:r,defaultSummary:f,actionTitle:ge(e,t),previewText:y,collapsedMode:d.collapsedMode??me.collapsedMode,isActive:h,config:t,elapsed:g(r),createElapsedElement:A}),S=$e(v,C,T,f),M=n.activeTextTemplate,k=r.interrupted?void 0:n.completeTextTemplate,D=h?M:k;S||(D&&De(C,D,r.name?.trim()||`tool`,h,g(r),A),h&&a(C,t,`tool`));let $=Le(n,L(t,`tool`)===`row`),B=Te(b,v,{config:t,expandable:p,expanded:u,iconColor:$,metaGap:!0}),_=Se({bubble:s,previewKind:`tool`,expanded:u,isActive:h,previewText:y,activePreview:d.activePreview,activeMinHeight:d.activeMinHeight,renderPreview:()=>n.renderCollapsedPreview?.({message:e,toolCall:r,defaultPreview:y,isActive:h,config:t})});if(!p)return s.append(b,_),I(s,e,t,`tool`);let E=l(`div`,`persona-border-t persona-border-gray-200 persona-bg-gray-50 persona-space-y-3 persona-px-4 persona-py-3`);E.style.display=u?``:`none`,n.contentBackgroundColor&&(E.style.backgroundColor=n.contentBackgroundColor),n.contentTextColor&&(E.style.color=n.contentTextColor),ne(E,t,`content`);let R=!0===t.future?.v5Defaults;if(d.showToolName&&r.name&&E.appendChild(i(`div`,{className:`persona-text-xs persona-text-persona-muted${R?``:` persona-italic`}`,attrs:{"data-persona-tool-name":``},text:r.name,style:{color:R?void 0:n.contentTextColor||n.headerTextColor}})),R)!function(e,t,o){let a=t.toolCall;if(!a)return;let r=re(o),n=(t,o)=>{let a=i(`section`,{className:`persona-tool-detail`,attrs:{"data-persona-tool-detail":t.toLowerCase()},style:{backgroundColor:r.codeBlockBackgroundColor,borderColor:r.codeBlockBorderColor,borderWidth:r.codeBlockBorderColor?`1px`:void 0}}),n=i(`div`,{className:`persona-tool-detail-label`,text:t,style:{color:r.labelTextColor}}),l=x(o),s=i(`pre`,{className:`persona-activity-scroll persona-tool-detail-value${Ne(o)?` persona-tool-detail-code`:``}`,text:l,attrs:{tabindex:`0`,role:`region`,"aria-label":`${t} content`},style:{color:r.codeBlockTextColor??r.contentTextColor}}),d=i(`button`,{className:`persona-tool-detail-copy`,attrs:{type:`button`,"data-persona-copy-tool-detail":``,"aria-label":`Copy ${t.toLowerCase()}`,title:`Copy ${t.toLowerCase()}`}}),p=ie(`copy`,14,`currentColor`,1.7);p&&d.appendChild(p),a.append(n,s,d),e.appendChild(a)};Ee(a.args)||n(`Request`,a.args);let l=a.status===`complete`&&void 0!==a.result?a.result:a.chunks?.join(``);void 0!==l&&(typeof l!=`string`||l.trim())&&n(`Response`,l),!1===a.success&&e.appendChild(i(`div`,{className:`persona-text-sm persona-whitespace-pre-wrap`,text:a.error||`Tool failed`,attrs:{"data-persona-tool-error":``,role:`status`}}))}(E,e,t);else{let e=(e,t)=>{let o=l(`div`,`persona-space-y-1`),a=i(`div`,{className:`persona-text-xs persona-text-persona-muted`,text:e,style:{color:n.labelTextColor}}),r=i(`pre`,{className:`persona-whitespace-pre-wrap persona-rounded-lg persona-border persona-px-3 persona-py-2 persona-text-xs`,style:{fontSize:`0.75rem`,lineHeight:`1rem`,backgroundColor:n.codeBlockBackgroundColor??`var(--persona-container, #f3f4f6)`,borderColor:n.codeBlockBorderColor??`var(--persona-border, #e5e7eb)`,color:n.codeBlockTextColor??`var(--persona-text, #171717)`}},i(`span`,{className:`persona-activity-scroll`,text:x(t),attrs:{role:`region`,"aria-label":e}}));o.append(a,r),E.appendChild(o)};void 0!==r.args&&e(`Arguments`,r.args),r.chunks?.length&&e(`Activity`,r.chunks.join(``)),!1===r.success&&E.appendChild(i(`div`,{className:`persona-text-sm persona-whitespace-pre-wrap`,text:r.error||`Tool failed`,attrs:{"data-persona-tool-error":``}})),r.status===`complete`&&void 0!==r.result&&e(`Result`,r.result)}return Me({expanded:u,header:b,toggleIcon:B,content:E,collapsedPreview:_,iconColor:$,config:t}),s.append(b,_,E),I(s,e,t,`tool`)};b(),v(),r();const Ie=(e,t,o,a)=>{ke(e,t,{stateSet:o,config:a,iconColor:`currentColor`})},je=(e,t,o=new Set)=>{t=N(t,`reasoning`,e);let r=e.reasoning,n=Ce(`persona-reasoning-bubble`,e.id);if(!r)return I(n,e,t,`reasoning`);let s=t.features.reasoningDisplay,p=s.expandable??ye.expandable,c=p&&o.has(e.id),u=r.status!==`complete`,g=Be(e.reasoning?.chunks.join(``)??``,0,s.previewMaxLines??ye.previewMaxLines),m=we({expandable:p,expanded:c,bubbleType:`reasoning`}),y=l(`div`,`persona-flex persona-flex-col persona-text-left`),h=l(`span`,`persona-text-xs persona-text-persona-primary`),b=L(t,`reasoning`)===`row`;n.dataset.appearance=s.appearance??(t.future?.v5Defaults?`inset`:b?`plain`:`panel`);let v=b&&!u?`Thought for ${R(r.durationMs??(r.completedAt-r.startedAt||void 0))}`:`Thinking...`,x=t.reasoning??{},C=String(r.startedAt??Date.now()),w=()=>{let e=l(`span`,``);return e.setAttribute(`data-tool-elapsed`,C),e.textContent=f(r),e},A=x.renderCollapsedSummary?.({message:e,reasoning:r,defaultSummary:v,previewText:g,isActive:u,config:t,elapsed:f(r),createElapsedElement:w}),T=$e(y,h,A,v),S=l(`span`,`persona-text-xs persona-text-persona-primary`);S.textContent=d(r),b||y.appendChild(S);let M=x.activeTextTemplate,k=x.completeTextTemplate,D=u?M:k;if(T||(D&&(S.style.display=`none`,De(h,D,``,u,f(r),w)),h.style.display=D||u||b?``:`none`,u&&a(h,t,`reasoning`)),s.iconName&&!T){let e=l(`span`,`persona-reasoning-header-icon`),t=ie(s.iconName,16,`currentColor`,2);t&&(e.appendChild(t),m.appendChild(e))}let $=`currentColor`,B=Te(m,y,{config:t,expandable:p,expanded:c,iconColor:$,metaGap:!1}),_=Se({bubble:n,previewKind:`reasoning`,expanded:c,isActive:u,previewText:g,activePreview:s.activePreview,activeMinHeight:s.activeMinHeight,renderPreview:()=>t.reasoning?.renderCollapsedPreview?.({message:e,reasoning:r,defaultPreview:g,isActive:u,config:t})});if(!p)return n.append(m,_),I(n,e,t,`reasoning`);let E=l(`div`,`persona-border-t persona-border-gray-200 persona-bg-gray-50 persona-px-4 persona-py-3`),P=s.maxHeight,j=i(`div`,{className:`persona-whitespace-pre-wrap`},i(`div`,{className:`persona-activity-scroll`,text:r.chunks.join(``)||(u?`Waiting for details…`:`No additional context was shared.`),style:{maxHeight:P},attrs:{tabindex:`0`,role:`region`,"aria-label":`Reasoning`}}));return E.appendChild(j),Me({expanded:c,header:m,toggleIcon:B,content:E,collapsedPreview:_,iconColor:$,config:t}),n.append(m,_,E),I(n,e,t,`reasoning`)};b(),r();const qe=e=>e>0&&e<=Date.now(),Ue=e=>e.style.setProperty(`--persona-message-row-max-width`,`100%`);export{U as createActivityLifecycle,je as createReasoningBubble,Pe as createToolBubble,q as groupToolRows,le as initActivityUi,se as turnUi,P as updateActivityElapsed,Ie as updateReasoningBubbleUI,Re as updateToolBubbleUI};
1
+ var e,t,o,a,r,n,l,i,s,d,p,c,u,g,f,m,y,h,b,v,x,C;function w(e){let t=e?.expansion;return{animation:t?.animation??(e?.future?.v5Defaults?`height`:`instant`),duration:Number.isFinite(t?.duration)?Math.max(0,t.duration):160,easing:t?.easing??`ease-out`}}function A(e){let{header:t,content:o}=W(e),a=e.getRootNode();o?.contains(a.activeElement)&&t?.focus({preventScroll:!0})}function T(e,t){let{content:o,preview:a}=W(e);o&&(t||A(e),o.inert=!t,o.style.display=t?``:`none`,a&&(a.style.display=t||!a.textContent&&!a.childNodes.length?`none`:``))}function S(e){O.get(e)?.finish()}function M(e){for(let t=e.parentElement?.closest(G);t;t=t.parentElement?.closest(G))S(t);e.querySelectorAll(G).forEach(S)}function k(e,t,o,a){let r=w(o),n=r.animation===`height`&&r.duration>0&&!F()&&e.isConnected&&typeof e.animate==`function`,l=n?a??e.getBoundingClientRect().height:0,i=n&&O.has(e)?W(e).content:void 0,s=i?getComputedStyle(i):void 0,d=s?{transform:s.transform,opacity:s.opacity}:void 0;if(M(e),S(e),T(e,t),!n)return;let{header:p,content:c,preview:u}=W(e);if(!p||!c)return;let g,f,m=e.getBoundingClientRect().height;if(l===m)return;t||(c.style.display=``,u&&(u.style.display=`none`));try{g=e.animate([{height:`${l}px`,boxSizing:`border-box`,overflow:`hidden`},{height:`${m}px`,boxSizing:`border-box`,overflow:`hidden`}],{duration:r.duration,easing:r.easing,fill:`both`});let o=getComputedStyle(c),a={transform:o.transform||`none`,opacity:o.opacity||`1`},n={transform:`${a.transform===`none`?``:a.transform} translateY(-8px)`,opacity:`0`};f=c.animate([d??(t?n:a),t?a:n],{duration:r.duration,easing:r.easing,fill:`both`})}catch{g?.cancel(),T(e,t);return}let y,h=m,b=()=>{O.get(e)?.effect===g&&(O.delete(e),y?.disconnect(),g.onfinish=g.oncancel=null,g.cancel(),f.cancel(),T(e,t))};O.set(e,{effect:g,expanded:t,settings:JSON.stringify(r),finish:b}),g.onfinish=g.oncancel=b,t&&typeof ResizeObserver==`function`&&(y=new ResizeObserver(()=>{if(O.get(e)?.effect!==g||!e.isConnected)return;let t=g.effect,o=t?.getComputedTiming().progress;if(null==o||o<0||o>=1)return;let a=e.getBoundingClientRect().height,r=e.style.getPropertyValue(`height`),n=e.style.getPropertyPriority(`height`);e.style.setProperty(`height`,`auto`,`important`);let l=e.getBoundingClientRect().height;r?e.style.setProperty(`height`,r,n):e.style.removeProperty(`height`),l!==h&&(h=l,t.setKeyframes([{height:`${a}px`,offset:o,boxSizing:`border-box`,overflow:`hidden`},{height:`${l}px`,offset:1,boxSizing:`border-box`,overflow:`hidden`}]))}),y.observe(c),y.observe(p))}function D(e,t){let o=new Set,a=new Map,r=typeof matchMedia==`function`?matchMedia(`(prefers-reduced-motion: reduce)`):void 0,n=()=>o.forEach(S),l=()=>{r?.matches&&n()};r?.addEventListener?.(`change`,l);let i=()=>{let e=w(t());return e.animation===`height`&&e.duration>0&&!F()};return{prepare(r){if(a.clear(),!i()){n(),o.clear();return}let l=new Map(Array.from(e.querySelectorAll(G),e=>[e.id,e]));for(let e of r.querySelectorAll(G)){let r=l.get(e.id);if(!r)continue;o.add(r);let n=z(e),i=O.get(r);if(n!==z(r))a.set(r.id,r.getBoundingClientRect().height),n||A(r),S(r);else if(i)if(i.settings!==JSON.stringify(w(t()))||F())S(r);else if(!i.expanded){let{content:t,preview:o}=W(e);t&&(t.style.display=``,t.inert=!0),o&&(o.style.display=`none`)}}},sync(){if(i()){for(let t of o)e.contains(t)||(S(t),o.delete(t));for(let r of e.querySelectorAll(G)){o.add(r);let e=a.get(r.id);void 0!==e&&k(r,z(r),t(),e);let n=O.get(r);n&&(n.settings!==JSON.stringify(w(t()))||F())&&S(r)}a.clear()}else n(),o.clear(),a.clear()},clear(){e.querySelectorAll(G).forEach(S),n(),o.clear(),a.clear()},destroy(){this.clear(),r?.removeEventListener?.(`change`,l)}}}function $(e,t){if(typeof t.toolCall?.iconName==`string`)return t.toolCall.iconName;let o=e.map(e=>Q(e,t));return e.every((t,a)=>K(t)[0]===K(e[0])[0]&&o[a]===o[0])?o[0]:`toolbox`}function B(e,t=3){let o=e.length;if(0===o)return``;(!Number.isInteger(t)||t<0)&&(t=3);let a=new Map;for(let t of e){let e=K(t)[0],o=a.get(e);(!o||o.status===`complete`&&!X(o))&&a.set(e,t)}let r=t?[...a.values()].slice(0,t).map((e,t)=>{let o=Z(e);return t?o[0].toLowerCase()+o.slice(1):o}).join(`, `):1===o?`1 activity`:`${o} activities`,n=a.size-t;n>0&&t&&(r+=`, and ${n} more`);for(let[t,o,a]of Y)e.some(e=>e[t]===o||!1===o&&e.error)&&(r+=` · ${a}`);return r}function _(e,t){return e.turnActivity??t.turnActivity?.resolveMessage?.(e)??function(e){let{executionId:t,phase:o}=e.agentMetadata??{};if(e.role!==`assistant`||typeof t!=`string`||!t)return;let a=e.variant===`tool`||e.variant===`reasoning`||o===`commentary`?`progress`:o===`partial_answer`||o===`final_answer`?`final`:void 0;return a?{id:t,kind:a,startedAt:Date.parse(e.createdAt)}:void 0}(e)}function E(e,t){if(!e.turnActivity?.enabled||t.role!==`assistant`||_(t,e)?.kind!==`progress`)return e;let o=ue.get(e);if(o)return o;let{defaultProvenance:a,suppliedPath:r}=re(),n=a(e,ce),l={...e.features};for(let t of[`toolCallDisplay`,`reasoningDisplay`]){let o={...l[t]};for(let[a,l]of Object.entries(pe[t]))!n.includes(`features.${t}.${a}`)&&r(e.preferences,`${t}.${a}`)!==`explicit`&&Object.assign(o,{[a]:l});l[t]=o}l.toolCallDisplay={...l.toolCallDisplay,groupSummary:l.toolCallDisplay?.groupSummary??(l.toolCallDisplay?.groupedMode===`stack`?`aggregate`:`current-action`)};let i={...e,features:l};return ue.set(e,i),i}function N(e,t,o){e&&o&&(e=E(e,o));let a=t===`tool`,r=a?`toolCallDisplay`:`reasoningDisplay`;return{...e,features:{...e?.features,[r]:{...a?ye:he,...!0===e?.future?.v5Defaults?a?be:ve:{},...e?.features?.[r],layout:L(e,t)}}}}function L(e,t,o){e&&o&&(e=E(e,o));let a=t===`tool`?`toolCallDisplay`:`reasoningDisplay`;return e?.features?.[a]?.layout??e?.features?.[a]?.variant??(e?.future?.v5Defaults?`row`:`card`)}function R(e){let t=Math.max(0,Math.floor((e??0)/1e3));return t<1?`a moment`:t<60?`${t}s`:`${Math.floor(t/60)}m ${t%60}s`}function P(e,t){let o=Number(e.getAttribute(`data-tool-elapsed`));if(!o)return;let a=t-o;e.textContent=e.classList.contains(`persona-activity-duration`)?Ee(a,e.dataset.prefix):e.closest(`.persona-activity-row`)?R(a):u(a)}function I(e,t,o,a,r=!1,n){let i=r||L(o,a)===`row`,s=e.querySelector(`:scope > button`),d=a===`tool`?t.toolCall:t.reasoning,p=d?.status!==`complete`,c=o.features?.toolCallDisplay?.durationDisplay;if(s&&(i||o.future?.v5Defaults)&&a===`tool`&&d&&(c===`all`||c===(r?`group`:`tools`))){let e=l(`span`,`persona-activity-duration`),{startedAt:o,completedAt:a,durationMs:r}=d;p&&o>0&&o<=Date.now()&&e.setAttribute(`data-tool-elapsed`,String(o));let n=t.toolCall?.duration??r??a-o;e.textContent=Ee(p&&void 0!==o?o>0?Date.now()-o:void 0:n),s.appendChild(e)}if(!i)return e;if(e.className=`persona-message-bubble persona-${a}-bubble persona-activity-row`,e.dataset.activityKind=a,a===`tool`){let t=re().getExplicitLegacyStyle(o,`toolCall.shadow`);e.style.boxShadow=typeof t==`string`?t.trim()||`none`:`var(--persona-consumer-toolBubble-shadow, none)`}if(!s)return e;s.className=s.classList.contains(`persona-theme-padding`)?`persona-activity-header persona-theme-padding`:`persona-activity-header`;let u=t.approval?.status??t.toolCall?.approvalStatus,g=t.toolCall?.interrupted?`interrupted`:u===`denied`||u===`timeout`?`denied`:u===`pending`?`awaiting-approval`:!1===t.toolCall?.success?`error`:p?d?.status===`pending`?`pending`:`running`:`done`;e.dataset.activityState=g;let f=l(`span`,`persona-activity-icon`);f.dataset.activityIcon=g;let m=a===`reasoning`?o.features?.reasoningDisplay?.iconName:void 0,y=g===`done`?a===`reasoning`?m||`brain`:n??(r?`toolbox`:Q(t.toolCall,o)):void 0;y&&y!==`check`&&(f.style.color=`inherit`);let h=se(m||(g===`pending`?`circle`:g===`awaiting-approval`?`clock`:g===`running`?`loader-circle`:g===`done`?y||`check`:`x`),16,`currentColor`,2);!h&&y&&(h=se(`square-text`,16,`currentColor`,2)),h&&f.appendChild(h),s.querySelector(`.persona-reasoning-header-icon`)?.remove();let b=a===`tool`?`toolCallDisplay`:`reasoningDisplay`,v=(r?o.features?.toolCallDisplay?.groupIconVisibility:void 0)??o.features?.[b]?.iconVisibility??(o.future?.v5Defaults?`active`:`always`);(v===`always`||v===`active`&&g!==`done`)&&s.prepend(f),s.querySelector(`:scope > div:not(.persona-ml-auto)`)?.classList.add(`persona-activity-label`),s.querySelector(`.persona-ml-auto`)?.classList.add(`persona-activity-chevron`);let x=e.querySelector(`:scope > .persona-border-t`);return x?.classList.add(`persona-activity-body`),x&&(x.id=`activity-details-${t.id}`,s.setAttribute(`aria-controls`,x.id)),e}function H(e,t,o,r,n=typeof r==`string`,i){let s=we(`persona-tool-bubble`,e.id),d=Ae({expandable:!0,expanded:o,bubbleType:`tool`}),p=l(`div`,``);typeof r==`string`?p.textContent=r:p.appendChild(r);let c=ne(t);Se(d,p,{config:t,expandable:!0,expanded:o,iconColor:c.toggleTextColor||c.headerTextColor||`currentColor`,metaGap:!0});let u=l(`div`,`persona-border-t`);return u.style.display=o?``:`none`,u.inert=!o,s.append(d,u),I(s,e,t,`tool`,!0,i),s.dataset.personaToolGroup=`true`,w(t).animation===`height`&&(s.dataset.personaDisclosureMotion=`height`),n&&(s.dataset.activityState===`running`||s.dataset.activityState===`pending`)&&a(p,t,`tool-group`),{bubble:s,body:u}}function j(e){let{config:t,messages:o,tempContainer:r,streaming:n,runActivity:i,showToolCalls:s,showReasoning:d,dropCompletedToolCalls:p,dropReasoningRow:c,createMessageRow:u,activityIds:g,activityLifecycle:f,toolExpansionState:m}=e,y=de.render;if(t.turnActivity?.enabled&&y)return y(e,{group:H,tools:j,classify:_,presentation:E,hasExplicitThemeStyle:re().hasExplicitThemeStyle});let h=t.features?.toolCallDisplay;if(h?.grouped){let e=[],y=[],b=h.groupBoundary===`iteration`,v=h.groupedMode===`summary`,x=()=>{y.length&&e.push(y),y=[]};o.forEach(e=>{if(e.variant===`tool`&&e.toolCall&&s){if(p&&e.toolCall.status===`complete`&&!e.toolCall.interrupted)return;let t=y[y.length-1]?.agentMetadata,o=e.agentMetadata;b&&t&&o&&(t.executionId&&o.executionId&&t.executionId!==o.executionId||void 0!==t.iteration&&void 0!==o.iteration&&t.iteration!==o.iteration)&&x(),y.push(e)}else(e.variant!==`reasoning`||d&&(e.reasoning?.status!==`complete`||!c(e.reasoning)))&&x()}),x();let C=new Map;for(let e of r.children)e instanceof HTMLElement&&C.set(e.dataset.wrapperId,e);e.forEach((o,r)=>{let s=o.map(e=>C.get(e.id)).filter(e=>!!e);if(s.length<(v?1:2))return;let d=`tool-group-${o[0].id}`,p=u(d,`assistant`);p.dataset.personaToolGroupRow=`true`,(h.groupAppearance||t.future?.v5Defaults)&&(p.dataset.groupAppearance=h.groupAppearance??`inset`);let c=o.map(e=>e.toolCall),y=c.some(e=>e.interrupted),x=r===e.length-1,w=o.some(e=>i?.messageIds.has(e.id)),A={messages:o,toolCalls:c,config:t,streaming:n,isLatestGroup:x,isCurrentRunGroup:w},T=o.map(e=>e.approval?.status??e.toolCall?.approvalStatus),S=[`pending`,`denied`,`timeout`].find(e=>T.includes(e)),M=!c.some(e=>!1===e.success||e.error),k=y||!M||S,D=c.some(e=>e.status!==`complete`),_=D||!b&&n&&x&&w&&!k,E=`${o.length} tool${1===o.length?``:`s`}`,N=h.groupedMode===`collapsible`||L(t,`tool`)===`row`?B(c.map((e,t)=>({...e,approvalStatus:T[t]})),h.groupSummaryMaxItems):y?`${E} · Interrupted`:`Called ${E}`,R=function(e,t,o){let a=e.filter(e=>e.toolCall?.status!==`complete`);return t.features?.toolCallDisplay?.groupSummary!==`current-action`||1!==a.length||e.some(ge)?o:me(a[0],t)}(o,t,N),P=t.toolCall?.renderGroupedSummary?.({...A,defaultSummary:R})??R;if(s[0].before(p),h.groupedMode===`collapsible`){let e={...o[0],id:d,approval:void 0,toolCall:{id:d,status:_?`running`:`complete`,chunks:c.flatMap(e=>e.chunks??[]),success:M,interrupted:y,approvalStatus:S}};if(c.every(e=>qe(e.startedAt)&&(e.status!==`complete`||qe(e.completedAt)&&e.completedAt>=e.startedAt))){let t=Math.min(...c.map(e=>e.startedAt)),o=Math.max(...c.map(e=>e.completedAt??e.startedAt));D?e.toolCall.startedAt=t:e.toolCall.durationMs=o-t}g.add(d),f.observe(e,`tool`,m,h,o.find(e=>m.has(e.id))?.id??``);let a=H(e,t,m.has(d),P,void 0,_||k?void 0:$(c,t));a.bubble.classList.add(`persona-tool-group`),a.body.dataset.personaToolGroupStack=`true`,p.appendChild(a.bubble),s.forEach((e,t)=>{Ue(e),e.style.setProperty(`--persona-activity-stagger`,`${40*t}ms`),e.classList.add(`persona-activity-group-child`),a.body.appendChild(e)});return}let I=l(`div`,`persona-tool-group persona-flex persona-w-full persona-flex-col persona-gap-2`);I.dataset.personaToolGroup=`true`;let j=l(`div`,`persona-tool-group-summary persona-text-xs persona-text-persona-muted`);if(j.id=`tool-group-summary-${o[0].id}`,Ce(j,P),!(P instanceof HTMLElement)&&_&&!k&&a(j,t,`tool-group`),I.appendChild(j),p.appendChild(I),v){for(let e of s)e.remove();return}let q=l(`div`,`persona-tool-group-stack persona-flex persona-flex-col`);q.id=`tool-group-stack-${o[0].id}`,q.dataset.personaToolGroupStack=`true`,I.appendChild(q),s.forEach((e,t)=>{Ue(e);let o=l(`div`,`persona-tool-group-item persona-relative`);o.dataset.personaToolGroupItem=`true`,t<s.length-1&&(o.dataset.personaToolGroupConnector=`true`),o.appendChild(e),q.appendChild(o)})})}return!1}function q(e,t,o,a,r,n,l){return r(o.spacerHeight+e.offsetHeight),o.pending++,()=>function(e,t){O.get(e)?.effect.finished?.then(t,t)??t()}(e,()=>{--o.pending||!l()||(r(t.scrollTop+t.clientHeight+n-a(o.spacerHeight)),o.initialSpacerHeight=o.spacerHeight,o.contentHeightAtAnchor=t.scrollHeight-o.spacerHeight)})}function U(e,t,o,a,r,n){let l=function(e){let t=`.persona-activity-scroll`,o=e=>{let t=e.scrollHeight-e.clientHeight,o=e.clientHeight>0&&t>1;e.toggleAttribute(`data-persona-scroll-top`,o&&e.scrollTop>1),e.toggleAttribute(`data-persona-scroll-bottom`,o&&t-e.scrollTop>1),e.tabIndex=o?0:-1},a=typeof ResizeObserver>`u`?void 0:new ResizeObserver(e=>{for(let{target:t}of e)o(t)}),r=e=>{let a=e.target;a.matches(t)&&o(a)};return e.addEventListener(`scroll`,r,!0),{sync:()=>{a?.disconnect(),e.querySelectorAll(t).forEach(e=>{a?.observe(e),o(e)})},destroy(){a?.disconnect(),e.removeEventListener(`scroll`,r,!0)}}}(e),i=function(e,t,o=()=>({})){let a=t?D(t,o):void 0,r=new Map,n=e=>{let t=r.get(e)??{};return r.set(e,t),t},l=e=>{clearTimeout(e.timer),e.timer=void 0};return{observe(t,a,i,s={},d){let p=a===`tool`?t.toolCall:t.reasoning;if(!p)return;let c=N(o(),a,t).features;s={...a===`tool`?c?.toolCallDisplay:c?.reasoningDisplay,...s},!r.has(t.id)&&void 0!==d&&(i[d?`add`:`delete`](t.id),n(t.id).manual=r.get(d)?.manual);let u=n(t.id);if(!u.manual&&(p.status!==`complete`&&(l(u),u.finished=!1),!u.seen&&p.status!==`complete`&&p.chunks?.some(Boolean)&&(u.seen=!0,!1!==s.autoExpand&&i.add(t.id)),u.seen&&p.status===`complete`&&!u.finished)){if(u.finished=!0,!1===s.autoCollapseDelay)return;u.timer=setTimeout(()=>{u.timer=void 0,i.delete(t.id),e(t.id,a)},s.autoCollapseDelay??1e3)}},manual(e){let t=n(e);t.manual=!0,l(t)},prune(e){for(let[t,o]of r)e.has(t)||(l(o),r.delete(t))},prepare(e){a?.prepare(e)},sync(){a?.sync()},clear(){r.forEach(l),r.clear(),a?.clear()},destroy(){this.clear(),a?.destroy()}}}((e,l)=>{r.delete(e);let i=n(e);i&&(l===`tool`?Pe(e,i,o,t()):He(e,i,a,t()))},e,t);return{...i,sync(){i.sync(),l.sync()},destroy(){i.destroy(),l.destroy()},observeMessages(e,r){let n=t();for(let t of e){let e=t.variant===`tool`?`tool`:t.variant===`reasoning`?`reasoning`:null;if(!e||L(n,e,t)!==`row`)continue;let l=N(n,e,t).features,s=e===`tool`?l?.toolCallDisplay:l?.reasoningDisplay;!1!==s?.expandable&&(r.add(t.id),i.observe(t,e,e===`tool`?o:a,s))}}}}e=(e,t,o)=>()=>{if(o)throw o[0];try{return e&&(t=e(e=0)),t}catch(e){throw o=[e],e}};const G=`[data-persona-disclosure]`,O=new WeakMap,W=e=>{let t=Array.from(e.children);return{header:t.find(e=>e.matches(`button[data-expand-header]`)),content:t.find(e=>e.classList.contains(`persona-border-t`)),preview:t.find(e=>e.hasAttribute(`data-persona-collapsed-preview`))}},z=e=>W(e).header?.getAttribute(`aria-expanded`)===`true`,F=()=>typeof matchMedia==`function`&&matchMedia(`(prefers-reduced-motion: reduce)`).matches;(r=e(()=>{o=e=>{t=e},a=(...e)=>t?.applyLoadingLabel(...e)}))();const V=new Map([[`web_search|web_search_preview|WebSearch`,`Searching the web`,`Searched the web`,`globe`],[`web_fetch|WebFetch`,`Reading web pages`,`Read web pages`,`globe`,`single`],[`file_search|search_files|Glob`,`Searching files`,`Searched files`,`search`],[`read_text_file|read_multiple_files|Read`,`Reading files`,`Read files`,`file-text`,`single`],[`write_file|edit_file|apply_patch|Write|Edit|NotebookEdit`,`Editing files`,`Edited files`,`pencil`,`single`],[`list_directory|list_directory_with_sizes|directory_tree`,`Browsing files`,`Browsed files`,`folder`],[`Grep`,`Searching code`,`Searched code`,`search`],[`shell|local_shell|bash|Bash|PowerShell|bash_code_execution`,`Running commands`,`Ran commands`,`terminal`,`single`],[`code_interpreter|code_execution`,`Running code`,`Ran code`,`code-xml`],[`browser_navigate|browser_click|browser_snapshot|browser_fill_form`,`Using the browser`,`Used the browser`,`globe`],[`computer`,`Using the computer`,`Used the computer`,`monitor`],[`image_generation`,`Generating images`,`Generated images`,`image`],[`git_status|git_diff|git_diff_staged|git_diff_unstaged|git_log|git_show`,`Checking repository changes`,`Checked repository changes`,`file-code`],[`tool_search|ToolSearch`,`Finding tools`,`Looked up tools`,`search`],[`Agent`,`Delegating work`,`Delegated work`,`bot`],[`TodoWrite|TaskCreate|TaskUpdate`,`Updating the plan`,`Updated the plan`,`clipboard`],[`sql_db_query`,`Querying the database`,`Queried the database`,`database`],[`search_gmail`,`Searching email`,`Searched email`,`mail`]].flatMap(([e,...t])=>e.split(`|`).map(e=>[e,t]))),J=e=>{let t=e.replace(/([a-z\d])([A-Z])/g,`$1 $2`).replace(/[_-]+/g,` `).replace(/\s+/g,` `).toLowerCase();return t[0].toUpperCase()+t.slice(1)},K=e=>{let t=e.name?.trim()||`tool`,o=J(t);return V.get(t)??[`Using ${o}`,`Used ${o}`]},Q=(e,t)=>{let o=t.toolCall?.iconName;return(typeof o==`function`?o(e):o)??(e=>K(e)[2]??`wrench`)(e)},Y=[[`approvalStatus`,`pending`,`Waiting for approval`],[`approvalStatus`,`denied`,`Approval denied`],[`approvalStatus`,`timeout`,`Approval expired`],[`success`,!1,`Failed`],[`interrupted`,!0,`Interrupted`],[`superseded`,!0,`Approved, ran again below`]],X=e=>e.error||Y.some(([t,o])=>e[t]===o),Z=e=>X(e)?J(e.name?.trim()||`tool`):K(e)[+(e.status===`complete`)],ee=e=>{let t=Z(e);return K(e)[3]&&!/^(read_multiple_files|apply_patch)$/.test(e.name?.trim()??``)?t.replace(/(web pages|files|commands)$/,e=>`a ${e.slice(0,-1)}`):t};e(()=>{n={backgroundColor:`background`,borderColor:`borderColor`,borderWidth:`borderWidth`,borderRadius:`borderRadius`,headerBackgroundColor:`header.background`,headerTextColor:`header.foreground`,contentBackgroundColor:`content.background`,contentTextColor:`content.foreground`,codeBlockBackgroundColor:`codeBlock.background`,codeBlockBorderColor:`codeBlock.borderColor`,codeBlockTextColor:`codeBlock.foreground`,toggleTextColor:`toggleForeground`,labelTextColor:`labelForeground`,loadingAnimationColor:`loading.primary`,loadingAnimationSecondaryColor:`loading.secondary`}})();let te;const oe=()=>{throw Error(`Activity UI requires core style dependencies.`)};let ae;const re=()=>ae??oe();let ne=oe,le=oe;const ie=(e,t,a)=>{ae=a,({resolveToolStyles:ne,applyToolPadding:le}=function({getExplicitLegacyStyle:e,hasExplicitThemeStyle:t}){return{resolveToolStyles:function(o){let a={...o?.toolCall};for(let[r,l]of Object.entries(n))void 0===e(o,`toolCall.${r}`)&&t(o,`toolBubble.${l}`)&&(a[r]=`var(--persona-components-toolBubble-${l.split(`.`).join(`-`)})`);return a},applyToolPadding:function(o,a,r){o.classList.remove(`persona-theme-padding`),o.style.removeProperty(`--persona-theme-padding`);for(let e of[`padding-left`,`padding-right`,`padding-top`,`padding-bottom`])o.style.removeProperty(e);t(a,`toolBubble.${r}.padding`)&&(o.classList.add(`persona-theme-padding`),o.style.setProperty(`--persona-theme-padding`,`var(--persona-components-toolBubble-${r}-padding)`));let n=e(a,`toolCall.${r}PaddingX`),l=e(a,`toolCall.${r}PaddingY`);typeof n==`string`&&n&&(o.style.paddingLeft=n,o.style.paddingRight=n),typeof l==`string`&&l&&(o.style.paddingTop=l,o.style.paddingBottom=l)},toolLoadingDuration:function(e){let o=e?.toolCall?.loadingAnimationDuration;return void 0===o?t(e,`toolBubble.loading.duration`)?`var(--persona-components-toolBubble-loading-duration)`:`2000ms`:`${o}ms`}}}(a)),te=e,o(t)},se=(...e)=>te?.(...e)??null,de={},pe={toolCallDisplay:{variant:`row`,grouped:!0,groupedMode:`collapsible`,autoExpand:!1,iconVisibility:`always`},reasoningDisplay:{appearance:`inset`,variant:`row`,autoExpand:!1,iconVisibility:`always`}},ce=Object.entries(pe).flatMap(([e,t])=>Object.keys(t).map(t=>`features.${e}.${t}`)),ue=new WeakMap,ge=e=>{let t=e.toolCall,o=e.approval?.status??t.approvalStatus;return t.error||t.interrupted||!1===t.success||t.superseded||o&&o!==`approved`},fe=(e,t)=>e.toolCall?.actionTitle?.trim()||t?.toolCall?.resolveActionTitle?.(e.toolCall,e)?.trim()||void 0,me=(e,t)=>fe(e,t)||ee(e.toolCall),ye={collapsedMode:`tool-call`,activePreview:!1,grouped:!1,groupedMode:`stack`,groupBoundary:`adjacent`,previewMaxLines:3,expandable:!0,loadingAnimation:`none`},he={activePreview:!1,previewMaxLines:3,expandable:!0,loadingAnimation:`none`},be={layout:`row`,variant:`row`,iconVisibility:`active`,autoExpand:!1,grouped:!0,groupedMode:`collapsible`,groupAppearance:`inset`,loadingAnimation:`shimmer`},ve={appearance:`inset`,layout:`row`,variant:`row`,iconVisibility:`active`,autoExpand:!1,loadingAnimation:`shimmer`};b=e(()=>{l=(e,t)=>{let o=document.createElement(e);return t&&(o.className=t),o},i=(e,t={},...o)=>{let a=document.createElement(e);if(t.className&&(a.className=t.className),void 0!==t.text&&(a.textContent=t.text),t.attrs)for(let[e,o]of Object.entries(t.attrs))a.setAttribute(e,o);if(t.style){let e=a.style,o=t.style;for(let t of Object.keys(o)){let a=o[t];null!=a&&(e[t]=a)}}let r=o.filter(e=>null!=e);return r.length>0&&a.append(...r),a}}),v=e(()=>{s=e=>{let t=e.completedAt??Date.now(),o=e.startedAt??t,a=void 0===e.durationMs?Math.max(0,t-o):e.durationMs;return`Thought for ${u(a).slice(0,-1)} seconds`},d=e=>e.status===`complete`?s(e):e.status===`pending`?`Waiting`:``,p=e=>{let t=typeof e.duration==`number`?e.duration:typeof e.durationMs==`number`?e.durationMs:Math.max(0,(e.completedAt??Date.now())-(e.startedAt??e.completedAt??Date.now()));return`Used tool for ${u(t).slice(0,-1)} seconds`},c=e=>e.status===`complete`?p(e):`Using tool...`,u=e=>{let t=e/1e3;return t<.1?`<0.1s`:t>=10?`${Math.round(t)}s`:`${t.toFixed(1).replace(/\.0$/,``)}s`},g=e=>{if(e.interrupted&&void 0===e.duration&&void 0===e.durationMs&&(void 0===e.startedAt||void 0===e.completedAt))return``;let t=typeof e.duration==`number`?e.duration:typeof e.durationMs==`number`?e.durationMs:Math.max(0,(e.completedAt??Date.now())-(e.startedAt??e.completedAt??Date.now()));return u(t)},f=e=>{let t=void 0===e.durationMs?Math.max(0,(e.completedAt??Date.now())-(e.startedAt??e.completedAt??Date.now())):e.durationMs;return u(t)},m=(e,t,o)=>{if(!t)return o;let a=e.name?.trim()||`tool`,r=g(e);return t.replace(/\{toolName\}/g,a).replace(/\{duration\}/g,r)},y=(e,t)=>{let o,a=e.replace(/\{toolName\}/g,t),r=[],n=/\*\*(.+?)\*\*|\*(.+?)\*|~(.+?)~/g,l=0;for(;null!==(o=n.exec(a));)o.index>l&&h(r,a.slice(l,o.index),[]),void 0===o[1]?void 0===o[2]?void 0!==o[3]&&h(r,o[3],[`dim`]):h(r,o[2],[`italic`]):h(r,o[1],[`bold`]),l=o.index+o[0].length;return l<a.length&&h(r,a.slice(l),[]),r},h=(e,t,o)=>{let a=t.split(`{duration}`);for(let t=0;t<a.length;t++)a[t]&&e.push({text:a[t],styles:o}),t<a.length-1&&e.push({text:`{duration}`,styles:o,isDuration:!0})}});v(),b();const xe=[`persona-w-full`,`persona-rounded-2xl`,`persona-bg-persona-surface`,`persona-border`,`persona-border-persona-message-border`,`persona-text-persona-primary`,`persona-shadow-sm`,`persona-overflow-hidden`,`persona-px-0`,`persona-py-0`],Ce=(e,t)=>null!=t&&(typeof t==`string`?(e.textContent=t,!0):(e.appendChild(t),!0)),we=(e,t)=>{let o=l(`div`,[`persona-message-bubble`,e,...xe].join(` `));return o.id=`bubble-${t}`,o.setAttribute(`data-message-id`,t),o.setAttribute(`data-persona-disclosure`,``),o},Ae=e=>{let t=l(`button`,e.expandable?`persona-flex persona-w-full persona-items-center persona-justify-between persona-gap-3 persona-bg-transparent persona-px-4 persona-py-3 persona-text-left persona-cursor-pointer persona-border-none`:`persona-flex persona-w-full persona-items-center persona-justify-between persona-gap-3 persona-bg-transparent persona-px-4 persona-py-3 persona-text-left persona-cursor-default persona-border-none`);return t.type=`button`,e.expandable&&(t.setAttribute(`aria-expanded`,e.expanded?`true`:`false`),t.setAttribute(`data-expand-header`,`true`)),t.setAttribute(`data-bubble-type`,e.bubbleType),t},Te=(e,t,o,a)=>{let r=a?.expansion?.chevron?.[t?`expanded`:`collapsed`]??(a?.future?.v5Defaults?t?`down`:`right`:t?`up`:`down`),n=w(a),l=e.querySelector(`svg`);if(!l){if(l=se(`chevron-right`,16,o,1.5),!l)return;e.replaceChildren(l)}l.setAttribute(`stroke`,o),e.classList.add(`persona-disclosure-chevron`),e.style.transform=`rotate(${{right:0,down:90,left:180,up:-90}[r]}deg)`,e.style.transitionDuration=`${n.animation===`height`?n.duration:0}ms`,e.style.transitionTimingFunction=n.easing},Se=(e,t,o)=>{if(!o.expandable)return e.append(t),null;let a=l(`div`,`persona-flex persona-items-center`);Te(a,o.expanded,o.iconColor,o.config);let r=l(`div`,o.metaGap?`persona-flex persona-items-center persona-gap-2 persona-ml-auto`:`persona-flex persona-items-center persona-ml-auto`);return r.append(a),e.append(t,r),a},Me=e=>{let t=l(`div`,`persona-px-4 persona-py-3 persona-text-xs persona-leading-snug persona-text-persona-muted`);if(t.setAttribute(`data-persona-collapsed-preview`,e.previewKind),t.style.display=`none`,t.style.whiteSpace=`pre-wrap`,!e.expanded&&e.isActive&&e.activePreview&&e.previewText){let o=e.renderPreview?.();Ce(t,o)||(t.textContent=e.previewText),t.style.display=``}return!e.expanded&&e.isActive&&e.activeMinHeight&&(e.bubble.style.minHeight=e.activeMinHeight),t},ke=e=>{e.header.setAttribute(`aria-expanded`,e.expanded?`true`:`false`),e.toggleIcon&&Te(e.toggleIcon,e.expanded,e.iconColor,e.config),e.content.style.display=e.expanded?``:`none`,e.content.inert=!e.expanded,e.collapsedPreview.style.display=e.expanded?`none`:e.collapsedPreview.textContent||e.collapsedPreview.childNodes.length?``:`none`},De=(e,t,o)=>{let a=o.stateSet.has(e),r=t.querySelector(`button[data-expand-header="true"]`),n=t.querySelector(`.persona-border-t`);if(!r||!n)return;r.setAttribute(`aria-expanded`,a?`true`:`false`);let l=r.querySelector(`.persona-ml-auto`)?.querySelector(`:scope > .persona-flex.persona-items-center`);l&&Te(l,a,o.iconColor,o.config),k(t,a,o.config)},$e=(e,t,o,a,r,n)=>{e.textContent=``;for(let i of y(t,o))(i.styles.length?e.appendChild(l(`span`,i.styles.map(e=>`persona-tool-text-${e}`).join(` `))):e).append(i.isDuration?a?n():r:i.text)},Be=(e,t,o,a)=>{let r=o instanceof HTMLElement;return t.textContent=typeof o==`string`&&o.trim()?o:a,e.appendChild(r?o:t),r},_e=(e,t,o)=>e.split(/\r?\n/).map(e=>e.trim()).filter(Boolean).slice(t,o).join(`\n`);r(),b(),v();const Ee=(e,t=``)=>Number.isFinite(e)&&e>=1e3?t+R(e):``;C=e(()=>{x=e=>{if(null===e)return`null`;if(void 0===e)return``;if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`boolean`)return String(e);try{return JSON.stringify(e,null,2)}catch{return String(e)}}});b(),C();const Ne=e=>{if(null==e)return!0;if(typeof e==`string`){if(!e.trim())return!0;try{return Ne(JSON.parse(e))}catch{return!1}}return typeof e==`object`&&0===Object.keys(e).length},Le=e=>{if(typeof e==`object`&&e)return!0;if(typeof e!=`string`)return!1;try{let t=JSON.parse(e);return typeof t==`object`&&!!t}catch{return!1}};b(),v(),r(),C();const Re=(e,t=!1)=>e.toggleTextColor||e.headerTextColor||(t?`currentColor`:`var(--persona-primary, #171717)`),Pe=(e,t,o,a)=>{De(e,t,{stateSet:o,config:a,iconColor:Re(ne(a),t.classList.contains(`persona-activity-row`))})},Ie=(e,t,o=new Set)=>{t=N(t,`tool`,e);let r=e.toolCall,n=ne(t),s=we(`persona-tool-bubble`,e.id);if(n.backgroundColor&&(s.style.backgroundColor=n.backgroundColor),n.borderColor&&(s.style.borderColor=n.borderColor),n.borderWidth&&(s.style.borderWidth=n.borderWidth),n.borderRadius&&(s.style.borderRadius=n.borderRadius),s.style.boxShadow=void 0===n.shadow?`var(--persona-tool-bubble-shadow)`:n.shadow.trim()===``?`none`:n.shadow,!r)return I(s,e,t,`tool`);r.id&&(s.dataset.toolCallId=r.id);let d=t.features.toolCallDisplay,p=d.expandable??ye.expandable,u=p&&o.has(e.id),{summary:f,previewText:y,isActive:h}=((e,t,o)=>{let a=o?.features?.toolCallDisplay,r=L(o,`tool`)===`row`,n=a?.collapsedMode??ye.collapsedMode,l=!1===t.success?t.error||`Tool failed`:((e,t)=>{let o=(e.chunks??[]).join(``).trim();return o?_e(o,-t):_e(x(e.args),0,t)})(t,a?.previewMaxLines??ye.previewMaxLines),i=r&&n===`tool-call`?ee({...t,approvalStatus:e.approval?.status??t.approvalStatus}):t.interrupted?`${t.name?.trim()||`Tool`} · Interrupted`:o?.future?.v5Defaults||r?`${t.status===`complete`?`Used`:`Using`} ${t.name?.trim()||`tool`}`:c(t),s=t.status!==`complete`,d=o?.toolCall??{},p=s&&r&&n===`tool-call`&&!ge(e)?me(e,o):i;n===`tool-name`?p=t.name?.trim()||i:n===`tool-preview`&&l&&(p=l),s&&d.activeTextTemplate?p=m(t,d.activeTextTemplate,p):!s&&!t.interrupted&&d.completeTextTemplate&&(p=m(t,d.completeTextTemplate,p)),t.interrupted?p.includes(` · Interrupted`)||(p+=` · Interrupted`):!1===t.success?p+=` · Failed`:t.superseded&&(p+=` · Approved, ran again below`);let u=e.approval?.status??t.approvalStatus;return u===`pending`?p+=` · Waiting for approval`:u===`denied`?p+=` · Approval denied`:u===`timeout`&&(p+=` · Approval expired`),{summary:p,previewText:l,isActive:s}})(e,r,t),b=Ae({expandable:p,expanded:u,bubbleType:`tool`});n.headerBackgroundColor&&(b.style.backgroundColor=n.headerBackgroundColor),le(b,t,`header`);let v=l(`div`,`persona-flex persona-flex-col persona-text-left`),C=l(`span`,`persona-text-xs persona-text-persona-primary`);n.headerTextColor&&(C.style.color=n.headerTextColor);let w=String(r.startedAt??Date.now()),A=()=>{let e=l(`span`,``);return h&&e.setAttribute(`data-tool-elapsed`,w),e.textContent=g(r),e},T=n.renderCollapsedSummary?.({message:e,toolCall:r,defaultSummary:f,actionTitle:fe(e,t),previewText:y,collapsedMode:d.collapsedMode??ye.collapsedMode,isActive:h,config:t,elapsed:g(r),createElapsedElement:A}),S=Be(v,C,T,f),M=n.activeTextTemplate,k=r.interrupted?void 0:n.completeTextTemplate,D=h?M:k;S||(D&&$e(C,D,r.name?.trim()||`tool`,h,g(r),A),h&&a(C,t,`tool`));let $=Re(n,L(t,`tool`)===`row`),B=Se(b,v,{config:t,expandable:p,expanded:u,iconColor:$,metaGap:!0}),_=Me({bubble:s,previewKind:`tool`,expanded:u,isActive:h,previewText:y,activePreview:d.activePreview,activeMinHeight:d.activeMinHeight,renderPreview:()=>n.renderCollapsedPreview?.({message:e,toolCall:r,defaultPreview:y,isActive:h,config:t})});if(!p)return s.append(b,_),I(s,e,t,`tool`);let E=l(`div`,`persona-border-t persona-border-gray-200 persona-bg-gray-50 persona-space-y-3 persona-px-4 persona-py-3`);E.style.display=u?``:`none`,n.contentBackgroundColor&&(E.style.backgroundColor=n.contentBackgroundColor),n.contentTextColor&&(E.style.color=n.contentTextColor),le(E,t,`content`);let R=!0===t.future?.v5Defaults;if(d.showToolName&&r.name&&E.appendChild(i(`div`,{className:`persona-text-xs persona-text-persona-muted${R?``:` persona-italic`}`,attrs:{"data-persona-tool-name":``},text:r.name,style:{color:R?void 0:n.contentTextColor||n.headerTextColor}})),R)!function(e,t,o){let a=t.toolCall;if(!a)return;let r=ne(o),n=(t,o)=>{let a=i(`section`,{className:`persona-tool-detail`,attrs:{"data-persona-tool-detail":t.toLowerCase()},style:{backgroundColor:r.codeBlockBackgroundColor,borderColor:r.codeBlockBorderColor,borderWidth:r.codeBlockBorderColor?`1px`:void 0}}),n=i(`div`,{className:`persona-tool-detail-label`,text:t,style:{color:r.labelTextColor}}),l=x(o),s=i(`pre`,{className:`persona-activity-scroll persona-tool-detail-value${Le(o)?` persona-tool-detail-code`:``}`,text:l,attrs:{tabindex:`0`,role:`region`,"aria-label":`${t} content`},style:{color:r.codeBlockTextColor??r.contentTextColor}}),d=i(`button`,{className:`persona-tool-detail-copy`,attrs:{type:`button`,"data-persona-copy-tool-detail":``,"aria-label":`Copy ${t.toLowerCase()}`,title:`Copy ${t.toLowerCase()}`}}),p=se(`copy`,14,`currentColor`,1.7);p&&d.appendChild(p),a.append(n,s,d),e.appendChild(a)};Ne(a.args)||n(`Request`,a.args);let l=a.status===`complete`&&void 0!==a.result?a.result:a.chunks?.join(``);void 0!==l&&(typeof l!=`string`||l.trim())&&n(`Response`,l),!1===a.success&&e.appendChild(i(`div`,{className:`persona-text-sm persona-whitespace-pre-wrap`,text:a.error||`Tool failed`,attrs:{"data-persona-tool-error":``,role:`status`}}))}(E,e,t);else{let e=(e,t)=>{let o=l(`div`,`persona-space-y-1`),a=i(`div`,{className:`persona-text-xs persona-text-persona-muted`,text:e,style:{color:n.labelTextColor}}),r=i(`pre`,{className:`persona-whitespace-pre-wrap persona-rounded-lg persona-border persona-px-3 persona-py-2 persona-text-xs`,style:{fontSize:`0.75rem`,lineHeight:`1rem`,backgroundColor:n.codeBlockBackgroundColor??`var(--persona-container, #f3f4f6)`,borderColor:n.codeBlockBorderColor??`var(--persona-border, #e5e7eb)`,color:n.codeBlockTextColor??`var(--persona-text, #171717)`}},i(`span`,{className:`persona-activity-scroll`,text:x(t),attrs:{role:`region`,"aria-label":e}}));o.append(a,r),E.appendChild(o)};void 0!==r.args&&e(`Arguments`,r.args),r.chunks?.length&&e(`Activity`,r.chunks.join(``)),!1===r.success&&E.appendChild(i(`div`,{className:`persona-text-sm persona-whitespace-pre-wrap`,text:r.error||`Tool failed`,attrs:{"data-persona-tool-error":``}})),r.status===`complete`&&void 0!==r.result&&e(`Result`,r.result)}return ke({expanded:u,header:b,toggleIcon:B,content:E,collapsedPreview:_,iconColor:$,config:t}),s.append(b,_,E),I(s,e,t,`tool`)};b(),v(),r();const He=(e,t,o,a)=>{De(e,t,{stateSet:o,config:a,iconColor:`currentColor`})},je=(e,t,o=new Set)=>{t=N(t,`reasoning`,e);let r=e.reasoning,n=we(`persona-reasoning-bubble`,e.id);if(!r)return I(n,e,t,`reasoning`);let s=t.features.reasoningDisplay,p=s.expandable??he.expandable,c=p&&o.has(e.id),u=r.status!==`complete`,g=_e(e.reasoning?.chunks.join(``)??``,0,s.previewMaxLines??he.previewMaxLines),m=Ae({expandable:p,expanded:c,bubbleType:`reasoning`}),y=l(`div`,`persona-flex persona-flex-col persona-text-left`),h=l(`span`,`persona-text-xs persona-text-persona-primary`),b=L(t,`reasoning`)===`row`;n.dataset.appearance=s.appearance??(t.future?.v5Defaults?`inset`:b?`plain`:`panel`);let v=b&&!u?`Thought for ${R(r.durationMs??(r.completedAt-r.startedAt||void 0))}`:`Thinking...`,x=t.reasoning??{},C=String(r.startedAt??Date.now()),w=()=>{let e=l(`span`,``);return e.setAttribute(`data-tool-elapsed`,C),e.textContent=f(r),e},A=x.renderCollapsedSummary?.({message:e,reasoning:r,defaultSummary:v,previewText:g,isActive:u,config:t,elapsed:f(r),createElapsedElement:w}),T=Be(y,h,A,v),S=l(`span`,`persona-text-xs persona-text-persona-primary`);S.textContent=d(r),b||y.appendChild(S);let M=x.activeTextTemplate,k=x.completeTextTemplate,D=u?M:k;if(T||(D&&(S.style.display=`none`,$e(h,D,``,u,f(r),w)),h.style.display=D||u||b?``:`none`,u&&a(h,t,`reasoning`)),s.iconName&&!T){let e=l(`span`,`persona-reasoning-header-icon`),t=se(s.iconName,16,`currentColor`,2);t&&(e.appendChild(t),m.appendChild(e))}let $=`currentColor`,B=Se(m,y,{config:t,expandable:p,expanded:c,iconColor:$,metaGap:!1}),_=Me({bubble:n,previewKind:`reasoning`,expanded:c,isActive:u,previewText:g,activePreview:s.activePreview,activeMinHeight:s.activeMinHeight,renderPreview:()=>t.reasoning?.renderCollapsedPreview?.({message:e,reasoning:r,defaultPreview:g,isActive:u,config:t})});if(!p)return n.append(m,_),I(n,e,t,`reasoning`);let E=l(`div`,`persona-border-t persona-border-gray-200 persona-bg-gray-50 persona-px-4 persona-py-3`),P=s.maxHeight,H=i(`div`,{className:`persona-whitespace-pre-wrap`},i(`div`,{className:`persona-activity-scroll`,text:r.chunks.join(``)||(u?`Waiting for details…`:`No additional context was shared.`),style:{maxHeight:P},attrs:{tabindex:`0`,role:`region`,"aria-label":`Reasoning`}}));return E.appendChild(H),ke({expanded:c,header:m,toggleIcon:B,content:E,collapsedPreview:_,iconColor:$,config:t}),n.append(m,_,E),I(n,e,t,`reasoning`)};b(),r();const qe=e=>e>0&&e<=Date.now(),Ue=e=>e.style.setProperty(`--persona-message-row-max-width`,`100%`);export{U as createActivityLifecycle,je as createReasoningBubble,Ie as createToolBubble,j as groupToolRows,q as holdScroll,ie as initActivityUi,de as turnUi,P as updateActivityElapsed,He as updateReasoningBubbleUI,Pe as updateToolBubbleUI};
@@ -1,4 +1,4 @@
1
- import { Ki as StreamAnimationPlugin } from "../types-CiXi4ICM.cjs";
1
+ import { qi as StreamAnimationPlugin } from "../types-BOZHQIk0.cjs";
2
2
  //#region src/animations/glyph-cycle.d.ts
3
3
  export declare const glyphCycle: StreamAnimationPlugin;
4
4
  //#endregion
@@ -1,4 +1,4 @@
1
- import { Ki as StreamAnimationPlugin } from "../types-CiXi4ICM.js";
1
+ import { qi as StreamAnimationPlugin } from "../types-BOZHQIk0.js";
2
2
  //#region src/animations/glyph-cycle.d.ts
3
3
  export declare const glyphCycle: StreamAnimationPlugin;
4
4
  //#endregion
@@ -1,4 +1,4 @@
1
- import { Ki as StreamAnimationPlugin } from "../types-CiXi4ICM.cjs";
1
+ import { qi as StreamAnimationPlugin } from "../types-BOZHQIk0.cjs";
2
2
  //#region src/animations/wipe.d.ts
3
3
  export declare const wipe: StreamAnimationPlugin;
4
4
  //#endregion
@@ -1,4 +1,4 @@
1
- import { Ki as StreamAnimationPlugin } from "../types-CiXi4ICM.js";
1
+ import { qi as StreamAnimationPlugin } from "../types-BOZHQIk0.js";
2
2
  //#region src/animations/wipe.d.ts
3
3
  export declare const wipe: StreamAnimationPlugin;
4
4
  //#endregion
@@ -1,5 +1,5 @@
1
- import { Ct as AgentWidgetMessage, Ta as renderLucideIcon, jo as AgentWidgetPlugin, k as AgentWidgetConfig } from "./types-CiXi4ICM.cjs";
2
- import { i as MessageTransform } from "./message-bubble-Cg_sTXUN.cjs";
1
+ import { Ct as AgentWidgetMessage, Ea as renderLucideIcon, Mo as AgentWidgetPlugin, k as AgentWidgetConfig } from "./types-BOZHQIk0.cjs";
2
+ import { i as MessageTransform } from "./message-bubble-CkZGlCLC.cjs";
3
3
  import { i as createPopover, s as isEditableEventTarget } from "./plugin-kit-C1mRjLgW.cjs";
4
4
  import { IconNode } from "lucide";
5
5
  //#region src/utils/humanize-tool-name.d.ts
@@ -1,5 +1,5 @@
1
- import { Ct as AgentWidgetMessage, Ta as renderLucideIcon, jo as AgentWidgetPlugin, k as AgentWidgetConfig } from "./types-CiXi4ICM.js";
2
- import { i as MessageTransform } from "./message-bubble-Cg_sTXUN.js";
1
+ import { Ct as AgentWidgetMessage, Ea as renderLucideIcon, Mo as AgentWidgetPlugin, k as AgentWidgetConfig } from "./types-BOZHQIk0.js";
2
+ import { i as MessageTransform } from "./message-bubble-CkZGlCLC.js";
3
3
  import { i as createPopover, s as isEditableEventTarget } from "./plugin-kit-C1mRjLgW.js";
4
4
  import { IconNode } from "lucide";
5
5
  //#region src/utils/humanize-tool-name.d.ts
@@ -1,6 +1,6 @@
1
- import { T as provideMarkdownParsers, f as buttons_d_exports, r as ComponentRenderer, t as ComponentContext } from "./registry-BBe-Lesw.cjs";
2
- import { Ei as PersonaArtifactFileMeta, Si as PersonaArtifactCustomAction, ji as PersonaArtifactRecord, k as AgentWidgetConfig } from "./types-CiXi4ICM.cjs";
3
- import { t as LoadingLabelRuntime } from "./loading-label-runtime-loader-C53YyPJ-.cjs";
1
+ import { T as provideMarkdownParsers, f as buttons_d_exports, r as ComponentRenderer, t as ComponentContext } from "./registry-Dz4iHNST.cjs";
2
+ import { Ci as PersonaArtifactCustomAction, Di as PersonaArtifactFileMeta, Mi as PersonaArtifactRecord, k as AgentWidgetConfig } from "./types-BOZHQIk0.cjs";
3
+ import { t as LoadingLabelRuntime } from "./loading-label-runtime-loader-CPxnoaoi.cjs";
4
4
  import { IconNode } from "lucide";
5
5
  //#region src/components/artifact-pane.d.ts
6
6
  type ArtifactPaneApi = {
@@ -1,6 +1,6 @@
1
- import { T as provideMarkdownParsers, f as buttons_d_exports, r as ComponentRenderer, t as ComponentContext } from "./registry-BBe-Lesw.js";
2
- import { Ei as PersonaArtifactFileMeta, Si as PersonaArtifactCustomAction, ji as PersonaArtifactRecord, k as AgentWidgetConfig } from "./types-CiXi4ICM.js";
3
- import { t as LoadingLabelRuntime } from "./loading-label-runtime-loader-C53YyPJ-.js";
1
+ import { T as provideMarkdownParsers, f as buttons_d_exports, r as ComponentRenderer, t as ComponentContext } from "./registry-Dz4iHNST.js";
2
+ import { Ci as PersonaArtifactCustomAction, Di as PersonaArtifactFileMeta, Mi as PersonaArtifactRecord, k as AgentWidgetConfig } from "./types-BOZHQIk0.js";
3
+ import { t as LoadingLabelRuntime } from "./loading-label-runtime-loader-CPxnoaoi.js";
4
4
  import { IconNode } from "lucide";
5
5
  //#region src/components/artifact-pane.d.ts
6
6
  type ArtifactPaneApi = {
@@ -1,4 +1,4 @@
1
- import { Ct as AgentWidgetMessage, Li as ResumableHandle, Rr as ConversationExecutionState, Wn as BackgroundConversationAdapter, cn as AgentWidgetStreamCheckpoint, ji as PersonaArtifactRecord } from "./types-CiXi4ICM.cjs";
1
+ import { Ct as AgentWidgetMessage, Gn as BackgroundConversationAdapter, Mi as PersonaArtifactRecord, Ri as ResumableHandle, ln as AgentWidgetStreamCheckpoint, zr as ConversationExecutionState } from "./types-BOZHQIk0.cjs";
2
2
  //#region src/session-background.d.ts
3
3
  type BackgroundCheckpoint = {
4
4
  conversationId: string;
@@ -1,4 +1,4 @@
1
- import { Ct as AgentWidgetMessage, Li as ResumableHandle, Rr as ConversationExecutionState, Wn as BackgroundConversationAdapter, cn as AgentWidgetStreamCheckpoint, ji as PersonaArtifactRecord } from "./types-CiXi4ICM.js";
1
+ import { Ct as AgentWidgetMessage, Gn as BackgroundConversationAdapter, Mi as PersonaArtifactRecord, Ri as ResumableHandle, ln as AgentWidgetStreamCheckpoint, zr as ConversationExecutionState } from "./types-BOZHQIk0.js";
2
2
  //#region src/session-background.d.ts
3
3
  type BackgroundCheckpoint = {
4
4
  conversationId: string;
@@ -0,0 +1 @@
1
+ import{a as e}from"./chunk-CHAwCqpk.js";import{r as t}from"./chunk-BnfM7-qg.js";import{t as n}from"./chunk-DbD5qyBw.js";const{setLoader:r,load:i,provide:a,getSync:o}=t({fallbackImport:()=>import(`./chunk-DABqu7C3.js`)}),s=/* @__PURE__ */ new Set,c=()=>{let e=[...s];s.clear();for(let t of e)try{t()}catch{}},l=()=>{let e=o();return e?Promise.resolve(e):i().then(e=>(c(),e))},u=e=>o()?()=>{}:(s.add(e),()=>{s.delete(e)}),d=e=>{a(e),c()},f=o,p=new class{#e=/* @__PURE__ */ new Map;#t=/* @__PURE__ */ new Map;register(e,t,n){this.#e.has(e)&&console.warn(`[ComponentRegistry] Component "${e}" is already registered. Overwriting.`),this.#e.set(e,t),n?this.#t.set(e,n):this.#t.delete(e)}unregister(e){this.#e.delete(e),this.#t.delete(e)}get(e){return this.#e.get(e)}has(e){return this.#e.has(e)}getOptions(e){return this.#t.get(e)}getAllNames(){return Array.from(this.#e.keys())}clear(){this.#e.clear(),this.#t.clear()}registerAll(e){Object.entries(e).forEach(([e,t])=>{this.register(e,t)})}};function m(e,t){return e.components&&Object.prototype.hasOwnProperty.call(e.components,t)?e.components[t]:p.get(t)}function h(e,t){return e.components&&Object.prototype.hasOwnProperty.call(e.components,t)?void 0:p.getOptions(t)}const g=(e,t)=>t?(f()?.stabilizeStreamingMarkdown??n)(e):e,_=e=>{if(!e)return;let t={},n=e;if(n.heading){let e=n.heading;t.heading=(t,n,r)=>e({type:`heading`,raw:r,depth:n,text:t,tokens:[]})}if(n.code){let e=n.code;t.code=(t,n,r)=>e({type:`code`,raw:``,text:t,lang:n,escaped:r})}if(n.blockquote){let e=n.blockquote;t.blockquote=t=>e({type:`blockquote`,raw:``,text:t,tokens:[]})}if(n.table){let e=n.table;t.table=(t,n)=>e({type:`table`,raw:``,header:[],rows:[],align:[],headerHtml:t,bodyHtml:n})}if(n.link){let e=n.link;t.link=(t,n,r)=>e({type:`link`,raw:``,href:t,title:n??null,text:r,tokens:[]})}if(n.image){let e=n.image;t.image=(t,n,r)=>e({type:`image`,raw:``,href:t,title:n??null,text:r})}if(n.list){let e=n.list;t.list=(t,n,r)=>e({type:`list`,raw:``,ordered:n,start:r,loose:!1,items:[],itemsHtml:t})}if(n.listitem){let e=n.listitem;t.listitem=(t,n,r)=>e({type:`list_item`,raw:``,task:n,checked:r,loose:!1,text:t,tokens:[]})}if(n.paragraph){let e=n.paragraph;t.paragraph=t=>e({type:`paragraph`,raw:``,text:t,tokens:[]})}if(n.codespan){let e=n.codespan;t.codespan=t=>e({type:`codespan`,raw:``,text:t})}if(n.strong){let e=n.strong;t.strong=t=>e({type:`strong`,raw:``,text:t,tokens:[]})}if(n.em){let e=n.em;t.em=t=>e({type:`em`,raw:``,text:t,tokens:[]})}if(n.del){let e=n.del;t.del=t=>e({type:`del`,raw:``,text:t,tokens:[]})}if(n.html){let e=n.html;t.html=t=>e({type:`html`,raw:t,text:t})}if(n.text){let e=n.text;t.text=t=>e({type:`text`,raw:t,text:t})}if(n.checkbox){let e=n.checkbox;t.checkbox=t=>e({checked:t})}return n.hr&&(t.hr=n.hr),n.br&&(t.br=n.br),t},v=e=>{let t=null;return n=>{let r=f();if(!r)return b(n);if(!t){let{Marked:n}=r,i=e?.markedOptions;t=new n({gfm:i?.gfm??!0,breaks:i?.breaks??!0,pedantic:i?.pedantic,silent:i?.silent});let a=_(e?.renderer);a&&t.use({renderer:a})}return t.parse(n)}},y=e=>e?v({markedOptions:e.options,renderer:e.renderer}):v(),b=e=>e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`).replace(/'/g,`&#39;`),x={ALLOWED_TAGS:/* @__PURE__ */ `h1.h2.h3.h4.h5.h6.p.br.hr.div.span.ul.ol.li.dl.dt.dd.strong.em.b.i.u.s.del.ins.mark.small.sub.sup.abbr.kbd.var.samp.code.a.img.blockquote.pre.details.summary.table.thead.tbody.tfoot.tr.th.td.caption.colgroup.col.input.label.select.option.textarea.button`.split(`.`),ALLOWED_ATTR:/* @__PURE__ */ `href.src.alt.title.target.rel.loading.width.height.colspan.rowspan.scope.class.id.type.name.value.placeholder.disabled.checked.for.aria-label.aria-hidden.aria-expanded.role.tabindex.data-tv-form.data-message-id.data-persona-component-directive.data-preserve-animation.data-persona-instance`.split(`.`)},S=/^data:image\/(?:png|jpe?g|gif|webp|bmp|x-icon|avif)/i,C=()=>{let e=null;return t=>{let n=f();if(!n)return b(t);if(!e){let{DOMPurify:t}=n;e=t(typeof window<`u`?window:void 0),e.addHook(`uponSanitizeAttribute`,(e,t)=>{if(t.attrName===`src`||t.attrName===`href`){let e=t.attrValue;e.toLowerCase().startsWith(`data:`)&&!S.test(e)&&(t.attrValue=``,t.keepAttr=!1)}})}return e.sanitize(t,x)}},w=e=>e===!1?null:typeof e==`function`?e:C();function T(t,n,r){return n?.trim()||(e(t,`artifact.${r}`)?`var(--persona-components-artifact-${r.split(`.`).join(`-`)})`:void 0)}function E(e){return e?.features?.artifacts?.enabled===!0}function D(e,t){if(e.classList.remove(`persona-artifact-border-full`,`persona-artifact-border-left`),e.style.removeProperty(`--persona-artifact-pane-border`),e.style.removeProperty(`--persona-artifact-pane-border-left`),!E(t))return;let n=t.features?.artifacts?.layout,r=T(t,n?.paneBorder,`pane.border`),i=T(t,n?.paneBorderLeft,`pane.borderLeft`);r?(e.classList.add(`persona-artifact-border-full`),e.style.setProperty(`--persona-artifact-pane-border`,r)):i&&(e.classList.add(`persona-artifact-border-left`),e.style.setProperty(`--persona-artifact-pane-border-left`,i))}function O(e){e.style.removeProperty(`--persona-artifact-doc-toolbar-icon-color`),e.style.removeProperty(`--persona-artifact-doc-toggle-active-bg`),e.style.removeProperty(`--persona-artifact-doc-toggle-active-border`),e.style.removeProperty(`--persona-artifact-doc-toggle-active-color`)}const k=[`panel`,`seamless`,`detached`];function A(e){let t=e.features?.artifacts?.layout?.paneAppearance;return t&&k.includes(t)?t:t?`panel`:e.launcher?.detachedPanel?`detached`:`panel`}function j(e){return!e||!E(e)?!1:A(e)===`detached`}function M(e,t){if(!E(t)){e.style.removeProperty(`--persona-artifact-split-gap`),e.style.removeProperty(`--persona-artifact-pane-width`),e.style.removeProperty(`--persona-artifact-pane-max-width`),e.style.removeProperty(`--persona-artifact-pane-min-width`),e.style.removeProperty(`--persona-artifact-drawer-width`),e.style.removeProperty(`--persona-artifact-pane-bg`),e.style.removeProperty(`--persona-artifact-pane-padding`),O(e),D(e,t);return}let n=t.features?.artifacts?.layout,r=A(t)===`detached`?`var(--persona-panel-inset)`:`0`;e.style.setProperty(`--persona-artifact-split-gap`,n?.splitGap??r),e.style.setProperty(`--persona-artifact-pane-width`,n?.paneWidth??`40%`),e.style.setProperty(`--persona-artifact-pane-max-width`,n?.paneMaxWidth??`28rem`),n?.drawerWidth?e.style.setProperty(`--persona-artifact-drawer-width`,n.drawerWidth):e.style.removeProperty(`--persona-artifact-drawer-width`),n?.paneMinWidth?e.style.setProperty(`--persona-artifact-pane-min-width`,n.paneMinWidth):e.style.removeProperty(`--persona-artifact-pane-min-width`);let i=T(t,n?.paneBackground,`pane.background`);i?e.style.setProperty(`--persona-artifact-pane-bg`,i):e.style.removeProperty(`--persona-artifact-pane-bg`);let a=T(t,n?.panePadding,`pane.padding`);a?e.style.setProperty(`--persona-artifact-pane-padding`,a):e.style.removeProperty(`--persona-artifact-pane-padding`);let o=[[T(t,n?.documentToolbarIconColor,`toolbar.iconColor`),`--persona-artifact-doc-toolbar-icon-color`],[T(t,n?.documentToolbarToggleActiveBackground,`toolbar.toggleActiveBackground`),`--persona-artifact-doc-toggle-active-bg`],[T(t,n?.documentToolbarToggleActiveBorderColor,`toolbar.toggleActiveBorderColor`),`--persona-artifact-doc-toggle-active-border`],[T(t,n?.documentToolbarToggleActiveColor,`toolbar.toggleActiveColor`),`--persona-artifact-doc-toggle-active-color`]];for(let[t,n]of o){let r=t?.trim();r?e.style.setProperty(n,r):e.style.removeProperty(n)}D(e,t)}function N(e,t){for(let t of k)e.classList.remove(`persona-artifact-appearance-${t}`);if(e.style.removeProperty(`--persona-artifact-pane-radius`),e.style.removeProperty(`--persona-artifact-pane-shadow`),e.style.removeProperty(`--persona-artifact-chat-shadow`),!E(t))return;let n=t.features?.artifacts?.layout,r=A(t);e.classList.add(`persona-artifact-appearance-${r}`);let i=T(t,n?.paneBorderRadius,`pane.borderRadius`);i&&e.style.setProperty(`--persona-artifact-pane-radius`,i);let a=T(t,n?.paneShadow,`pane.shadow`);a&&e.style.setProperty(`--persona-artifact-pane-shadow`,a);let o=T(t,n?.chatShadow,`chat.shadow`);o&&e.style.setProperty(`--persona-artifact-chat-shadow`,o)}function P(e,t){return!t||!E(e)?!1:e.features?.artifacts?.layout?.expandLauncherPanelWhenOpen!==!1}function F(e,t){if(!e?.trim())return t;let n=/^(\d+(?:\.\d+)?)px\s*$/i.exec(e.trim());return n?Math.max(0,Number(n[1])):t}function I(e){if(!e?.trim())return null;let t=/^(\d+(?:\.\d+)?)px\s*$/i.exec(e.trim());return t?Math.max(0,Number(t[1])):null}function L(e,t,n){return n<t?t:Math.min(n,Math.max(t,e))}function R(e,t,n,r){let i=e-r-2*t-n;return Math.max(0,i)}function z(e,t){let n=(t.getComputedStyle(e).gap||`0px`).trim().split(/\s+/)[0]??`0px`,r=/^([\d.]+)px$/i.exec(n);if(r)return Number(r[1]);let i=/^([\d.]+)/.exec(n);return i?Number(i[1]):8}function B(e,t,n,r,i,a,o=200){let s=F(i,200),c=R(t,n,r,o);c=Math.max(s,c);let l=I(a);return l!==null&&(c=Math.min(c,l)),L(e,s,c)}export{l as _,T as a,P as c,b as d,g as f,f as g,m as h,N as i,w as l,h as m,B as n,E as o,p,M as r,j as s,z as t,y as u,u as v,d as y};