@runtypelabs/persona 4.24.0 → 4.26.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 (237) hide show
  1. package/dist/animations/glyph-cycle.d.cts +1 -1
  2. package/dist/animations/glyph-cycle.d.ts +1 -1
  3. package/dist/animations/{types-Db61aI9J.d.cts → types-BwKTZhg9.d.cts} +14 -0
  4. package/dist/animations/{types-Db61aI9J.d.ts → types-BwKTZhg9.d.ts} +14 -0
  5. package/dist/animations/wipe.d.cts +1 -1
  6. package/dist/animations/wipe.d.ts +1 -1
  7. package/dist/animations-extra.d.cts +14 -0
  8. package/dist/animations-extra.d.ts +14 -0
  9. package/dist/approval-ui-QAKWNFNM.js +1 -0
  10. package/dist/approval-ui.cjs +2 -2
  11. package/dist/approval-ui.d.cts +243 -8
  12. package/dist/approval-ui.d.ts +243 -8
  13. package/dist/approval-ui.js +2 -2
  14. package/dist/{artifacts-ui-IGB5YKLO.js → artifacts-ui-NJGMM27I.js} +1 -1
  15. package/dist/artifacts-ui.cjs +4 -4
  16. package/dist/artifacts-ui.d.cts +243 -8
  17. package/dist/artifacts-ui.d.ts +243 -8
  18. package/dist/artifacts-ui.js +5 -5
  19. package/dist/chunk-2ANTRKTV.js +1 -0
  20. package/dist/chunk-4HPTPUC6.js +1 -0
  21. package/dist/chunk-6V3MNEKB.js +1 -0
  22. package/dist/chunk-HGUCGM3K.js +9 -0
  23. package/dist/chunk-IO5VVUKP.js +3 -0
  24. package/dist/chunk-J4J3Y2P2.js +1 -0
  25. package/dist/chunk-K6HKIP5K.js +1 -0
  26. package/dist/chunk-K7NA7G7J.js +1 -0
  27. package/dist/chunk-MXUTS3LB.js +1 -0
  28. package/dist/chunk-PDPVORUF.js +1 -0
  29. package/dist/chunk-QPPJUSZH.js +1 -0
  30. package/dist/chunk-QRKGQPU7.js +1 -0
  31. package/dist/chunk-S6PBWE75.js +1 -0
  32. package/dist/chunk-T7QM7YMF.js +1 -0
  33. package/dist/chunk-TR2H475E.js +1 -0
  34. package/dist/chunk-UPO4GUFC.js +1 -0
  35. package/dist/chunk-ZC66NAIR.js +1 -0
  36. package/dist/client-history-YPEG45Q4.js +1 -0
  37. package/dist/client-history.js +1 -0
  38. package/dist/client-stream-42FOI3EC.js +4 -0
  39. package/dist/client-stream.js +5 -0
  40. package/dist/codegen.cjs +1 -1
  41. package/dist/codegen.js +1 -1
  42. package/dist/context-mentions-E7HJYWO6.js +161 -0
  43. package/dist/{context-mentions-inline-I2RDEBAK.js → context-mentions-inline-QVESLW55.js} +1 -1
  44. package/dist/context-mentions.cjs +7 -7
  45. package/dist/context-mentions.d.cts +243 -8
  46. package/dist/context-mentions.d.ts +243 -8
  47. package/dist/context-mentions.js +8 -8
  48. package/dist/event-stream-view-FOIJHFQO.js +1 -0
  49. package/dist/event-stream-view.cjs +1 -1
  50. package/dist/event-stream-view.d.cts +246 -31
  51. package/dist/event-stream-view.d.ts +246 -31
  52. package/dist/event-stream-view.js +1 -1
  53. package/dist/forms-ui.d.cts +295 -667
  54. package/dist/forms-ui.d.ts +295 -667
  55. package/dist/history-shell-QDQ44PSE.js +3 -0
  56. package/dist/history-shell.js +3 -0
  57. package/dist/{history-view-BD6OXLNA.js → history-view-NCFBI5GR.js} +2 -2
  58. package/dist/history-view.cjs +2 -2
  59. package/dist/history-view.d.cts +35 -1
  60. package/dist/history-view.d.ts +35 -1
  61. package/dist/history-view.js +2 -2
  62. package/dist/index.cjs +80 -74
  63. package/dist/index.cjs.map +1 -1
  64. package/dist/index.d.cts +301 -738
  65. package/dist/index.d.ts +301 -738
  66. package/dist/index.global.js +3 -215
  67. package/dist/index.global.js.map +1 -1
  68. package/dist/index.js +81 -75
  69. package/dist/index.js.map +1 -1
  70. package/dist/install.global.js +1 -1
  71. package/dist/install.global.js.map +1 -1
  72. package/dist/launcher.global.js +3 -67
  73. package/dist/launcher.global.js.map +1 -1
  74. package/dist/markdown-parsers.js +22 -22
  75. package/dist/runtype-tts-entry-NFBVWR7N.js +1 -0
  76. package/dist/runtype-tts.js +1 -1
  77. package/dist/session-actions-ISSKSI66.js +1 -0
  78. package/dist/session-actions.js +1 -0
  79. package/dist/session-reconnect.d.cts +243 -8
  80. package/dist/session-reconnect.d.ts +243 -8
  81. package/dist/smart-dom-reader.cjs +13 -13
  82. package/dist/smart-dom-reader.d.cts +243 -8
  83. package/dist/smart-dom-reader.d.ts +243 -8
  84. package/dist/smart-dom-reader.js +11 -11
  85. package/dist/theme-editor-preview.cjs +116 -98
  86. package/dist/theme-editor-preview.d.cts +245 -8
  87. package/dist/theme-editor-preview.d.ts +245 -8
  88. package/dist/theme-editor-preview.js +49 -54
  89. package/dist/theme-editor.cjs +2 -2
  90. package/dist/theme-editor.d.cts +244 -23
  91. package/dist/theme-editor.d.ts +244 -23
  92. package/dist/theme-editor.js +2 -2
  93. package/dist/theme-reference.d.cts +14 -0
  94. package/dist/theme-reference.d.ts +14 -0
  95. package/dist/ui-extras-entry-WAYFKVNW.js +3 -0
  96. package/dist/ui-extras.js +72 -0
  97. package/dist/voice-runtime-UOQOFAFY.js +17 -0
  98. package/dist/voice-runtime.cjs +17 -1
  99. package/dist/voice-runtime.d.cts +11643 -192
  100. package/dist/voice-runtime.d.ts +11643 -192
  101. package/dist/voice-runtime.js +17 -1
  102. package/dist/voice-worklet-player.cjs +19 -4
  103. package/dist/voice-worklet-player.d.cts +9 -10
  104. package/dist/voice-worklet-player.d.ts +9 -10
  105. package/dist/voice-worklet-player.js +19 -4
  106. package/dist/webmcp-polyfill.js +1 -1
  107. package/dist/webmcp-runtime-V6ZWW3PI.js +6 -0
  108. package/dist/webmcp-runtime.cjs +2 -2
  109. package/dist/webmcp-runtime.d.cts +1 -33
  110. package/dist/webmcp-runtime.d.ts +1 -33
  111. package/dist/webmcp-runtime.js +2 -2
  112. package/dist/widget.css +1 -1
  113. package/package.json +11 -5
  114. package/src/approval-paused-tool-settle.test.ts +221 -0
  115. package/src/client-approve.test.ts +311 -0
  116. package/src/client-history-eager.ts +9 -0
  117. package/src/client-history-loader.ts +23 -0
  118. package/src/client-history.ts +579 -0
  119. package/src/client-resume.ts +177 -0
  120. package/src/client-stream-eager.ts +12 -0
  121. package/src/client-stream-loader.ts +25 -0
  122. package/src/client-stream.ts +1880 -0
  123. package/src/client.test.ts +31 -1
  124. package/src/client.ts +293 -2607
  125. package/src/components/approval-actions.test.ts +27 -0
  126. package/src/components/approval-actions.ts +27 -3
  127. package/src/components/message-bubble.test.ts +19 -0
  128. package/src/components/message-bubble.ts +2 -0
  129. package/src/components/registry.ts +6 -6
  130. package/src/components/tool-bubble.test.ts +9 -0
  131. package/src/components/tool-bubble.ts +1 -0
  132. package/src/history-shell-bundle.test.ts +54 -0
  133. package/src/history-shell-eager.ts +12 -0
  134. package/src/history-shell-loader.ts +27 -0
  135. package/src/history-shell.ts +2362 -0
  136. package/src/history-view-loader.ts +2 -0
  137. package/src/history-view.ts +3 -0
  138. package/src/index-core.ts +8 -0
  139. package/src/index-global.ts +90 -248
  140. package/src/index.ts +13 -0
  141. package/src/install.ts +6 -4
  142. package/src/internal/runtype-history-provider.test.ts +1 -0
  143. package/src/internal/runtype-history-provider.ts +28 -13
  144. package/src/plugins/registry.ts +8 -8
  145. package/src/session-actions-chunk.test.ts +55 -0
  146. package/src/session-actions-eager.ts +11 -0
  147. package/src/session-actions-loader.ts +37 -0
  148. package/src/session-actions.ts +909 -0
  149. package/src/session-history.test.ts +3 -1
  150. package/src/session.ts +875 -1530
  151. package/src/session.voice.test.ts +1241 -5
  152. package/src/styles/widget.css +58 -0
  153. package/src/theme-editor/state.ts +91 -91
  154. package/src/types.ts +269 -5
  155. package/src/ui-ask-user-sheet.ts +382 -0
  156. package/src/ui-extras-eager.ts +10 -0
  157. package/src/ui-extras-entry.ts +9 -0
  158. package/src/ui-extras-loader.ts +26 -0
  159. package/src/ui.artifact-rail-resize.test.ts +2 -1
  160. package/src/ui.ask-user-chunk.test.ts +93 -0
  161. package/src/ui.history-chunk.test.ts +2 -1
  162. package/src/ui.history-config-provider.test.ts +2 -1
  163. package/src/ui.history-confirm-fallback.test.ts +142 -0
  164. package/src/ui.history-controller.test.ts +2 -1
  165. package/src/ui.history-lifecycle.test.ts +2 -1
  166. package/src/ui.history-render-hooks.test.ts +2 -1
  167. package/src/ui.history-shell.test.ts +2 -1
  168. package/src/ui.rail-overlay.test.ts +2 -1
  169. package/src/ui.rail-resize.test.ts +2 -1
  170. package/src/ui.rail-trigger-pending.test.ts +2 -1
  171. package/src/ui.ts +399 -2770
  172. package/src/ui.voice-prewarm.test.ts +222 -0
  173. package/src/utils/attachment-manager.ts +67 -67
  174. package/src/utils/constants.ts +3 -0
  175. package/src/utils/context-mention-controller.ts +323 -323
  176. package/src/utils/context-mention-manager.ts +40 -40
  177. package/src/utils/context-mention-orchestrator.ts +28 -0
  178. package/src/utils/event-stream-buffer.ts +50 -50
  179. package/src/utils/event-stream-store.ts +43 -43
  180. package/src/utils/throughput-tracker.ts +34 -34
  181. package/src/utils/virtual-scroller.ts +67 -67
  182. package/src/utils/visitor-store.test.ts +50 -0
  183. package/src/utils/visitor-store.ts +23 -5
  184. package/src/voice/__fixtures__/voice-wire/README.md +1 -0
  185. package/src/voice/__fixtures__/voice-wire/client/cancel.json +3 -0
  186. package/src/voice/__fixtures__/voice-wire/client/context.json +4 -0
  187. package/src/voice/__fixtures__/voice-wire/client/delegation_result.json +6 -0
  188. package/src/voice/__fixtures__/voice-wire/client/delegation_update.json +6 -0
  189. package/src/voice/__fixtures__/voice-wire/client/ping.json +3 -0
  190. package/src/voice/__fixtures__/voice-wire/client/playback_progress.json +5 -0
  191. package/src/voice/__fixtures__/voice-wire/client/start.json +3 -0
  192. package/src/voice/__fixtures__/voice-wire/server/artifact.json +11 -0
  193. package/src/voice/__fixtures__/voice-wire/server/attached.json +4 -0
  194. package/src/voice/__fixtures__/voice-wire/server/audio_clear.json +4 -0
  195. package/src/voice/__fixtures__/voice-wire/server/audio_end.json +3 -0
  196. package/src/voice/__fixtures__/voice-wire/server/delegation_cancelled.json +5 -0
  197. package/src/voice/__fixtures__/voice-wire/server/delegation_completed.json +8 -0
  198. package/src/voice/__fixtures__/voice-wire/server/delegation_started.json +15 -0
  199. package/src/voice/__fixtures__/voice-wire/server/error.json +6 -0
  200. package/src/voice/__fixtures__/voice-wire/server/metrics.json +10 -0
  201. package/src/voice/__fixtures__/voice-wire/server/pong.json +3 -0
  202. package/src/voice/__fixtures__/voice-wire/server/session_config.json +16 -0
  203. package/src/voice/__fixtures__/voice-wire/server/transcript_final.json +7 -0
  204. package/src/voice/__fixtures__/voice-wire/server/transcript_interim.json +4 -0
  205. package/src/voice/__fixtures__/voice-wire/server/transcript_partial.json +6 -0
  206. package/src/voice/__fixtures__/voice-wire/server/transcript_update.json +10 -0
  207. package/src/voice/__fixtures__/voice-wire/server/warning.json +5 -0
  208. package/src/voice/audio-playback-manager.test.ts +57 -0
  209. package/src/voice/audio-playback-manager.ts +120 -98
  210. package/src/voice/browser-voice-provider.ts +37 -37
  211. package/src/voice/fallback-speech-engine.ts +22 -16
  212. package/src/voice/keyed-voice-transcript.ts +314 -0
  213. package/src/voice/mic-state-styles.ts +182 -0
  214. package/src/voice/read-aloud-controller.ts +46 -44
  215. package/src/voice/runtype-speech-engine.ts +35 -33
  216. package/src/voice/runtype-voice-provider.ts +856 -164
  217. package/src/voice/session-voice-wiring.ts +266 -0
  218. package/src/voice/voice-delegation.test.ts +71 -0
  219. package/src/voice/voice-delegation.ts +364 -0
  220. package/src/voice/voice-turn-tracker.ts +6 -6
  221. package/src/voice/voice.test.ts +1250 -7
  222. package/src/voice/worklet-playback-engine.test.ts +81 -0
  223. package/src/voice/worklet-playback-engine.ts +21 -3
  224. package/src/voice-runtime-loader.ts +4 -1
  225. package/src/voice-runtime.ts +7 -0
  226. package/src/webmcp-runtime-entry.ts +41 -39
  227. package/dist/approval-ui-3NMYNXBD.js +0 -1
  228. package/dist/chunk-5EIIHQLQ.js +0 -1
  229. package/dist/chunk-7CO4T5KB.js +0 -1
  230. package/dist/chunk-EFJBUH5F.js +0 -1
  231. package/dist/chunk-R2TMIMDI.js +0 -3
  232. package/dist/chunk-UTVLOTWB.js +0 -9
  233. package/dist/context-mentions-45MODWOY.js +0 -161
  234. package/dist/event-stream-view-GL3ADRY2.js +0 -1
  235. package/dist/runtype-tts-entry-UJAEF7NZ.js +0 -1
  236. package/dist/voice-runtime-EFR3R5ES.js +0 -1
  237. package/dist/webmcp-runtime-JI7T4QYF.js +0 -6
@@ -1,5 +1,5 @@
1
- var me=Object.create;var Y=Object.defineProperty;var xe=Object.getOwnPropertyDescriptor;var ce=Object.getOwnPropertyNames;var ge=Object.getPrototypeOf,he=Object.prototype.hasOwnProperty;var j=(e,a)=>()=>(a||e((a={exports:{}}).exports,a),a.exports);var Ce=(e,a,o,t)=>{if(a&&typeof a=="object"||typeof a=="function")for(let r of ce(a))!he.call(e,r)&&r!==o&&Y(e,r,{get:()=>a[r],enumerable:!(t=xe(a,r))||t.enumerable});return e};var Se=(e,a,o)=>(o=e!=null?me(ge(e)):{},Ce(a||!e||!e.__esModule?Y(o,"default",{value:e,enumerable:!0}):o,e));var _=j(f=>{"use strict";Object.defineProperty(f,"__esModule",{value:!0});f.Allow=f.ALL=f.COLLECTION=f.ATOM=f.SPECIAL=f.INF=f._INFINITY=f.INFINITY=f.NAN=f.BOOL=f.NULL=f.OBJ=f.ARR=f.NUM=f.STR=void 0;f.STR=1;f.NUM=2;f.ARR=4;f.OBJ=8;f.NULL=16;f.BOOL=32;f.NAN=64;f.INFINITY=128;f._INFINITY=256;f.INF=f.INFINITY|f._INFINITY;f.SPECIAL=f.NULL|f.BOOL|f.INF|f.NAN;f.ATOM=f.STR|f.NUM|f.SPECIAL;f.COLLECTION=f.ARR|f.OBJ;f.ALL=f.ATOM|f.COLLECTION;f.Allow={STR:f.STR,NUM:f.NUM,ARR:f.ARR,OBJ:f.OBJ,NULL:f.NULL,BOOL:f.BOOL,NAN:f.NAN,INFINITY:f.INFINITY,_INFINITY:f._INFINITY,INF:f.INF,SPECIAL:f.SPECIAL,ATOM:f.ATOM,COLLECTION:f.COLLECTION,ALL:f.ALL};f.default=f.Allow});var te=j(w=>{"use strict";var ye=w&&w.__createBinding||(Object.create?(function(e,a,o,t){t===void 0&&(t=o);var r=Object.getOwnPropertyDescriptor(a,o);(!r||("get"in r?!a.__esModule:r.writable||r.configurable))&&(r={enumerable:!0,get:function(){return a[o]}}),Object.defineProperty(e,t,r)}):(function(e,a,o,t){t===void 0&&(t=o),e[t]=a[o]})),Ae=w&&w.__exportStar||function(e,a){for(var o in e)o!=="default"&&!Object.prototype.hasOwnProperty.call(a,o)&&ye(a,e,o)};Object.defineProperty(w,"__esModule",{value:!0});w.Allow=w.MalformedJSON=w.PartialJSON=w.parseJSON=w.parse=void 0;var M=_();Object.defineProperty(w,"Allow",{enumerable:!0,get:function(){return M.Allow}});Ae(_(),w);var G=class extends Error{};w.PartialJSON=G;var V=class extends Error{};w.MalformedJSON=V;function ee(e,a=M.Allow.ALL){if(typeof e!="string")throw new TypeError(`expecting str, got ${typeof e}`);if(!e.trim())throw new Error(`${e} is empty`);return be(e.trim(),a)}w.parseJSON=ee;var be=(e,a)=>{let o=e.length,t=0,r=s=>{throw new G(`${s} at position ${t}`)},p=s=>{throw new V(`${s} at position ${t}`)},m=()=>(T(),t>=o&&r("Unexpected end of input"),e[t]==='"'?S():e[t]==="{"?i():e[t]==="["?y():e.substring(t,t+4)==="null"||M.Allow.NULL&a&&o-t<4&&"null".startsWith(e.substring(t))?(t+=4,null):e.substring(t,t+4)==="true"||M.Allow.BOOL&a&&o-t<4&&"true".startsWith(e.substring(t))?(t+=4,!0):e.substring(t,t+5)==="false"||M.Allow.BOOL&a&&o-t<5&&"false".startsWith(e.substring(t))?(t+=5,!1):e.substring(t,t+8)==="Infinity"||M.Allow.INFINITY&a&&o-t<8&&"Infinity".startsWith(e.substring(t))?(t+=8,1/0):e.substring(t,t+9)==="-Infinity"||M.Allow._INFINITY&a&&1<o-t&&o-t<9&&"-Infinity".startsWith(e.substring(t))?(t+=9,-1/0):e.substring(t,t+3)==="NaN"||M.Allow.NAN&a&&o-t<3&&"NaN".startsWith(e.substring(t))?(t+=3,NaN):P()),S=()=>{let s=t,n=!1;for(t++;t<o&&(e[t]!=='"'||n&&e[t-1]==="\\");)n=e[t]==="\\"?!n:!1,t++;if(e.charAt(t)=='"')try{return JSON.parse(e.substring(s,++t-Number(n)))}catch(C){p(String(C))}else if(M.Allow.STR&a)try{return JSON.parse(e.substring(s,t-Number(n))+'"')}catch{return JSON.parse(e.substring(s,e.lastIndexOf("\\"))+'"')}r("Unterminated string literal")},i=()=>{t++,T();let s={};try{for(;e[t]!=="}";){if(T(),t>=o&&M.Allow.OBJ&a)return s;let n=S();T(),t++;try{let C=m();s[n]=C}catch(C){if(M.Allow.OBJ&a)return s;throw C}T(),e[t]===","&&t++}}catch{if(M.Allow.OBJ&a)return s;r("Expected '}' at end of object")}return t++,s},y=()=>{t++;let s=[];try{for(;e[t]!=="]";)s.push(m()),T(),e[t]===","&&t++}catch{if(M.Allow.ARR&a)return s;r("Expected ']' at end of array")}return t++,s},P=()=>{if(t===0){e==="-"&&p("Not sure what '-' is");try{return JSON.parse(e)}catch(n){if(M.Allow.NUM&a)try{return JSON.parse(e.substring(0,e.lastIndexOf("e")))}catch{}p(String(n))}}let s=t;for(e[t]==="-"&&t++;e[t]&&",]}".indexOf(e[t])===-1;)t++;t==o&&!(M.Allow.NUM&a)&&r("Unterminated number literal");try{return JSON.parse(e.substring(s,t))}catch{e.substring(s,t)==="-"&&r("Not sure what '-' is");try{return JSON.parse(e.substring(s,e.lastIndexOf("e")))}catch(C){p(String(C))}}},T=()=>{for(;t<o&&`
2
- \r `.includes(e[t]);)t++};return m()},we=ee;w.parse=we});var d=(e,a)=>{let o=document.createElement(e);return a&&(o.className=a),o};var J=Se(te(),1);var z=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)}};var re=()=>{},ae=e=>{re=e.webMcpToolTitle},X=e=>re(e);var K=[["circle",{cx:"12",cy:"12",r:"10"}],["path",{d:"M4.929 4.929 19.07 19.071"}]];var H=[["path",{d:"m6 9 6 6 6-6"}]];var $=[["path",{d:"m18 15-6-6-6 6"}]];var Z=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"M12 8v4"}],["path",{d:"M12 16h.01"}]];var q=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"m9 12 2 2 4-4"}]];var W=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"m14.5 9.5-5 5"}],["path",{d:"m9.5 9.5 5 5"}]];var R=(e,a=24,o="currentColor",t=2)=>{if(!Array.isArray(e))return null;let r=document.createElementNS("http://www.w3.org/2000/svg","svg");return r.setAttribute("width",String(a)),r.setAttribute("height",String(a)),r.setAttribute("viewBox","0 0 24 24"),r.setAttribute("fill","none"),r.setAttribute("stroke",o),r.setAttribute("stroke-width",String(t)),r.setAttribute("stroke-linecap","round"),r.setAttribute("stroke-linejoin","round"),r.setAttribute("aria-hidden","true"),e.forEach(p=>{if(!Array.isArray(p)||p.length<2)return;let m=p[0],S=p[1];if(!S)return;let i=document.createElementNS("http://www.w3.org/2000/svg",m);Object.entries(S).forEach(([y,P])=>{y!=="stroke"&&i.setAttribute(y,String(P))}),r.appendChild(i)}),r};var U="webmcp:";var I=e=>{let o=(e.startsWith(U)?e.slice(U.length):e).replace(/([a-z0-9])([A-Z])/g,"$1 $2").split(/[_\-\s.]+/).filter(Boolean);if(o.length===0)return e;let t=o.join(" ").toLowerCase();return t.charAt(0).toUpperCase()+t.slice(1)},oe=e=>e?.approval!==!1?e?.approval:void 0,fe=(e,a,o)=>{let t=oe(o)?.detailsDisplay??"collapsed";return a.get(e)??t==="expanded"},le=(e,a,o)=>{let t=oe(o);e.setAttribute("aria-expanded",a?"true":"false");let r=e.querySelector("[data-approval-details-label]");r&&(r.textContent=a?t?.hideDetailsLabel??"Hide details":t?.showDetailsLabel??"Show details");let p=e.querySelector("[data-approval-details-chevron]");if(p){p.innerHTML="";let m=R(a?$:H,14,"currentColor",2);m&&p.appendChild(m)}},se=(e,a,o,t=new Map)=>{let r=a.querySelector('button[data-bubble-type="approval"]'),p=a.querySelector("[data-approval-details]");if(!r||!p)return;let m=fe(e,t,o);le(r,m,o),p.style.display=m?"":"none"};var de=(e,a,o=new Map)=>{let t=e.approval,r=a?.approval!==!1?a?.approval:void 0,p=t?.status==="pending",m=d("div",["persona-approval-bubble","persona-w-full","persona-rounded-2xl","persona-border","persona-shadow-sm","persona-overflow-hidden"].join(" "));if(m.id=`bubble-${e.id}`,m.setAttribute("data-message-id",e.id),m.style.backgroundColor=r?.backgroundColor??"var(--persona-approval-bg)",m.style.borderColor=r?.borderColor??"var(--persona-approval-border)",m.style.boxShadow=r?.shadow!==void 0?r.shadow.trim()===""?"none":r.shadow:"var(--persona-approval-shadow)",!t)return m;let S=d("div","persona-flex persona-items-start persona-gap-3 persona-px-4 persona-py-3"),i=d("div","persona-flex-shrink-0 persona-mt-0.5");i.setAttribute("data-approval-icon","true");let y=t.status==="denied"?W:t.status==="timeout"?Z:q,P=t.status==="approved"?"var(--persona-feedback-success, var(--persona-palette-colors-success-600))":t.status==="denied"?"var(--persona-feedback-error, var(--persona-palette-colors-error-600))":t.status==="timeout"?"var(--persona-feedback-warning, var(--persona-palette-colors-warning-600))":r?.titleColor??"currentColor",T=R(y,20,P,2);T&&i.appendChild(T);let s=d("div","persona-flex-1 persona-min-w-0"),n=d("div","persona-flex persona-items-center persona-gap-2"),C=d("span","persona-text-sm persona-font-medium persona-text-persona-primary");if(r?.titleColor&&(C.style.color=r.titleColor),C.textContent=r?.title??"Approval Required",n.appendChild(C),!p){let u=d("span","persona-inline-flex persona-items-center persona-px-2 persona-py-0.5 persona-rounded-full persona-text-xs persona-font-medium");u.setAttribute("data-approval-status",t.status),t.status==="approved"?(u.style.backgroundColor="var(--persona-palette-colors-success-100)",u.style.color="var(--persona-palette-colors-success-700)",u.textContent="Approved"):t.status==="denied"?(u.style.backgroundColor="var(--persona-palette-colors-error-100)",u.style.color="var(--persona-palette-colors-error-700)",u.textContent="Denied"):t.status==="timeout"&&(u.style.backgroundColor="var(--persona-palette-colors-warning-100)",u.style.color="var(--persona-palette-colors-warning-700)",u.textContent="Timeout"),n.appendChild(u)}s.appendChild(n);let A=t.toolType==="webmcp"||t.toolName.startsWith(U)?X(t.toolName):void 0,c=r?.formatDescription?.({toolName:t.toolName,toolType:t.toolType,description:t.description,parameters:t.parameters,...A?{displayTitle:A}:{},...t.reason?{reason:t.reason}:{}}),L=!t.toolName,v=c||(L?t.description:`The assistant wants to use \u201C${A??I(t.toolName)}\u201D.`),k=d("p","persona-text-sm persona-mt-0.5 persona-text-persona-muted");if(k.setAttribute("data-approval-summary","true"),r?.descriptionColor&&(k.style.color=r.descriptionColor),k.textContent=v,s.appendChild(k),t.reason){let u=d("p","persona-text-sm persona-mt-1 persona-text-persona-muted");u.setAttribute("data-approval-reason","true"),r?.reasonColor?u.style.color=r.reasonColor:r?.descriptionColor&&(u.style.color=r.descriptionColor);let l=d("span","persona-font-medium");l.textContent=`${r?.reasonLabel??"Agent's stated reason:"} `,u.appendChild(l),u.appendChild(document.createTextNode(t.reason)),s.appendChild(u)}let O=r?.detailsDisplay??"collapsed",D=!!t.description&&!L,B=D||!!t.parameters;if(O!=="hidden"&&B){let u=fe(e.id,o,a),l=d("button","persona-inline-flex persona-items-center persona-gap-1 persona-mt-1 persona-p-0 persona-border-none persona-bg-transparent persona-text-xs persona-font-medium persona-cursor-pointer persona-text-persona-muted");l.type="button",l.setAttribute("data-expand-header","true"),l.setAttribute("data-bubble-type","approval"),r?.descriptionColor&&(l.style.color=r.descriptionColor);let x=d("span");x.setAttribute("data-approval-details-label","true");let b=d("span","persona-inline-flex persona-items-center");b.setAttribute("data-approval-details-chevron","true"),l.append(x,b),le(l,u,a),s.appendChild(l);let h=d("div");if(h.setAttribute("data-approval-details","true"),h.style.display=u?"":"none",D){let g=d("p","persona-text-sm persona-mt-1 persona-text-persona-muted");r?.descriptionColor&&(g.style.color=r.descriptionColor),g.textContent=t.description,h.appendChild(g)}if(t.parameters){let g=d("pre","persona-mt-2 persona-text-xs persona-p-2 persona-rounded persona-overflow-x-auto persona-max-h-32 persona-bg-persona-container persona-text-persona-primary");r?.parameterBackgroundColor&&(g.style.backgroundColor=r.parameterBackgroundColor),r?.parameterTextColor&&(g.style.color=r.parameterTextColor),g.style.fontSize="0.75rem",g.style.lineHeight="1rem",g.textContent=z(t.parameters),h.appendChild(g)}s.appendChild(h)}if(p){let u=d("div","persona-flex persona-gap-2 persona-mt-2");u.setAttribute("data-approval-buttons","true");let l=d("button","persona-inline-flex persona-items-center persona-px-3 persona-py-1.5 persona-rounded-md persona-text-xs persona-font-medium persona-border-none persona-cursor-pointer");l.type="button",l.style.backgroundColor=r?.approveButtonColor??"var(--persona-approval-approve-bg)",l.style.color=r?.approveButtonTextColor??"var(--persona-button-primary-fg)",l.setAttribute("data-approval-action","approve");let x=R(q,14,r?.approveButtonTextColor??"var(--persona-button-primary-fg)",2);x&&(x.style.marginRight="4px",l.appendChild(x));let b=document.createTextNode(r?.approveLabel??"Approve");l.appendChild(b);let h=d("button","persona-inline-flex persona-items-center persona-px-3 persona-py-1.5 persona-rounded-md persona-text-xs persona-font-medium persona-cursor-pointer");h.type="button",h.style.backgroundColor=r?.denyButtonColor??"transparent",h.style.color=r?.denyButtonTextColor??"var(--persona-feedback-error, var(--persona-palette-colors-error-600))",h.style.border=`1px solid ${r?.denyButtonTextColor?r.denyButtonTextColor:"var(--persona-palette-colors-error-200)"}`,h.setAttribute("data-approval-action","deny");let g=R(W,14,r?.denyButtonTextColor??"var(--persona-feedback-error, var(--persona-palette-colors-error-600))",2);g&&(g.style.marginRight="4px",h.appendChild(g));let E=document.createTextNode(r?.denyLabel??"Deny");h.appendChild(E),u.append(l,h),s.appendChild(u)}return S.append(i,s),m.appendChild(S),m};function Te(e){let a=e.getRootNode?.();return a instanceof ShadowRoot?a:(e.ownerDocument??document).body}function ue(e){let{anchor:a,content:o,placement:t="bottom-start",offset:r=6,matchAnchorWidth:p=!1,horizontalOffset:m,verticalOffset:S,zIndex:i=2147483e3,onOpen:y,onDismiss:P}=e,T=e.container??Te(a),s=!1,n=null,C=()=>{if(!s)return;let c=a.getBoundingClientRect();o.style.position="fixed",p&&(o.style.minWidth=`${c.width}px`),m&&(o.style.maxWidth=`${c.width}px`);let L=o.getBoundingClientRect(),v=S?.()??null,k=v!=null?c.top+v:c.top,O=t==="top-start"||t==="top-end"?k-r-L.height:c.bottom+r,B=t==="bottom-end"||t==="top-end"?c.right-L.width:c.left,u=m?.()??null;if(u!=null){let l=Math.max(c.left,c.right-L.width);B=Math.min(Math.max(c.left+u,c.left),l)}o.style.top=`${O}px`,o.style.left=`${B}px`},F=()=>{s&&(s=!1,n&&(n(),n=null),o.remove())},A=()=>{if(s)return;s=!0,i!=null&&(o.style.zIndex=String(i)),T.appendChild(o),C();let c=(a.ownerDocument??document).defaultView??window,L=a.ownerDocument??document,v=()=>{if(!a.isConnected){F(),P?.("anchor-removed");return}C()},k=D=>{let B=typeof D.composedPath=="function"?D.composedPath():[];B.includes(o)||B.includes(a)||(F(),P?.("outside"))},O=c.setTimeout(()=>{L.addEventListener("pointerdown",k,!0)},0);c.addEventListener("scroll",v,!0),c.addEventListener("resize",v),n=()=>{c.clearTimeout(O),L.removeEventListener("pointerdown",k,!0),c.removeEventListener("scroll",v,!0),c.removeEventListener("resize",v)},y?.()};return{get isOpen(){return s},open:A,close:F,toggle:()=>s?F():A(),reposition:C,destroy:F}}function ne(e){return(typeof e.composedPath=="function"?e.composedPath():[]).some(o=>o instanceof HTMLElement&&(o.tagName==="INPUT"||o.tagName==="TEXTAREA"||o.isContentEditable))}var Me=()=>({keyHandlers:new Map,popovers:new Map,pendingOrder:[],latestPendingApprovalId:null}),pe=(e,a)=>{let o=e.keyHandlers.get(a);o&&(document.removeEventListener("keydown",o),e.keyHandlers.delete(a));let t=e.popovers.get(a);t&&(t.destroy(),e.popovers.delete(a))},N=(e,a)=>{pe(e,a);let o=e.pendingOrder.indexOf(a);o!==-1&&e.pendingOrder.splice(o,1),e.latestPendingApprovalId===a&&(e.latestPendingApprovalId=e.pendingOrder.length?e.pendingOrder[e.pendingOrder.length-1]:null)},Pe=e=>e?.approval!==!1?e?.approval:void 0,ke=(e,a,o)=>{let t=o?.detailsDisplay??"collapsed";return a.get(e)??t==="expanded"},Q=e=>{let a=d("span","persona-approval-kbd");return a.textContent=e,a},ve=(e,a)=>{let o=d("span","persona-approval-title");a?.titleColor&&(o.style.color=a.titleColor);let r=e.toolType==="webmcp"||e.toolName.startsWith(U)?X(e.toolName):void 0,p=a?.formatDescription?.({toolName:e.toolName,toolType:e.toolType,description:e.description??"",parameters:e.parameters,...r?{displayTitle:r}:{},...e.reason?{reason:e.reason}:{}});if(p)return o.textContent=p,o;let m=r??I(e.toolName),S=e.toolType&&e.toolType!=="webmcp"?e.toolType:null;o.append("The assistant wants to use ");let i=document.createElement("strong");if(i.textContent=m,o.appendChild(i),S){o.append(" from ");let y=document.createElement("strong");y.textContent=S,o.appendChild(y)}return o},Le=e=>{let a=d("div","persona-approval-resolved"),o=R(K,15,"currentColor",2);o&&a.appendChild(o);let t=d("span","persona-approval-resolved-name");return t.textContent=e.toolName?I(e.toolName):"Tool",a.append(t,document.createTextNode(e.status==="timeout"?" timed out":" denied")),a},Be=(e,a,o,t,r,p,m,S)=>{let i=d("div","persona-approval-card persona-shadow-sm");i.id=`bubble-${o.id}`,i.setAttribute("data-message-id",o.id),i.setAttribute("data-bubble-type","approval"),r?.backgroundColor&&(i.style.background=r.backgroundColor),r?.borderColor&&(i.style.borderColor=r.borderColor),r?.shadow!==void 0&&(i.style.boxShadow=r.shadow.trim()===""?"none":r.shadow);let y=r?.detailsDisplay??"collapsed",P=!!t.description&&y!=="hidden",T=t.parameters!=null&&y!=="hidden",s=P||T,n=s&&ke(o.id,a,r),C=r?.showDetailsLabel??"Show details",F=r?.hideDetailsLabel??"Hide details",A=d("button","persona-approval-head");A.type="button",s?(A.setAttribute("data-action","toggle-params"),A.setAttribute("aria-expanded",n?"true":"false"),A.setAttribute("aria-label",n?F:C)):A.setAttribute("data-static","true");let c=d("span","persona-approval-logo"),L=R(q,16,"currentColor",2);L&&c.appendChild(L),A.appendChild(c);let v=ve(t,r);if(s){let l=d("span","persona-approval-toggle");l.setAttribute("aria-hidden","true");let x=R(H,14,"currentColor",2);x&&l.appendChild(x),v.append(" "),v.appendChild(l)}A.appendChild(v),i.appendChild(A);let k=d("div","persona-approval-body");if(s){let l=d("div","persona-approval-details");if(l.setAttribute("data-role","params"),l.hidden=!n,P){let x=d("p","persona-approval-desc");r?.descriptionColor&&(x.style.color=r.descriptionColor),x.textContent=t.description,l.appendChild(x)}if(T){let x=d("pre","persona-approval-params");r?.parameterBackgroundColor&&(x.style.background=r.parameterBackgroundColor),r?.parameterTextColor&&(x.style.color=r.parameterTextColor),x.textContent=z(t.parameters),l.appendChild(x)}k.appendChild(l)}if(t.reason){let l=d("p","persona-approval-reason");r?.reasonColor?l.style.color=r.reasonColor:r?.descriptionColor&&(l.style.color=r.descriptionColor);let x=d("span","persona-approval-reason-label");x.textContent=`${r?.reasonLabel??"Agent's stated reason:"} `,l.append(x,document.createTextNode(t.reason)),k.appendChild(l)}let O=d("div","persona-approval-actions"),D=null,B=l=>{r?.approveButtonColor&&(l.style.background=r.approveButtonColor),r?.approveButtonTextColor&&(l.style.color=r.approveButtonTextColor)},u=d("button","persona-approval-deny");if(u.type="button",u.setAttribute("data-action","deny"),r?.denyButtonColor&&(u.style.background=r.denyButtonColor),r?.denyButtonTextColor&&(u.style.color=r.denyButtonTextColor),u.append(r?.denyLabel??"Deny"),S){let l=d("div","persona-approval-split"),x=d("button","persona-approval-primary");x.type="button",x.setAttribute("data-action","always"),B(x),x.append(r?.approveLabel??"Always allow",Q("\u23CE"));let b=d("button","persona-approval-caret");b.type="button",b.setAttribute("data-action","toggle-menu"),b.setAttribute("aria-label","More options"),B(b);let h=R(H,15,"currentColor",2);h&&b.appendChild(h),l.append(x,b),O.append(l,u),u.append(Q("Esc"));let g=d("div","persona-approval-menu"),E=d("button","persona-approval-menu-item");E.type="button",E.append("Allow once",Q("\u2318\u23CE")),g.appendChild(E),D=ue({anchor:l,content:g,placement:"bottom-start",matchAnchorWidth:!0}),e.popovers.set(o.id,D),E.addEventListener("click",()=>{N(e,o.id),p()})}else{let l=d("button","persona-approval-primary persona-approval-primary--solo");l.type="button",l.setAttribute("data-action","allow"),B(l),l.append(r?.approveLabel??"Allow"),O.append(l,u)}return k.appendChild(O),i.appendChild(k),i.addEventListener("click",l=>{let x=l.target instanceof Element?l.target.closest("[data-action]"):null;if(!x)return;let b=x.getAttribute("data-action");if(b==="toggle-params"){let h=i.querySelector('[data-role="params"]');if(h){let g=h.hidden;h.hidden=!g,A.setAttribute("aria-expanded",g?"true":"false"),A.setAttribute("aria-label",g?F:C),a.set(o.id,g)}return}if(b==="toggle-menu"){D?.toggle();return}if(b==="always"){N(e,o.id),p({remember:!0});return}if(b==="allow"){N(e,o.id),p();return}if(b==="deny"){N(e,o.id),m();return}}),i},ie=(e=new Map)=>{let a=Me();return{plugin:{id:"persona-built-in-approval",renderApproval:({message:r,approve:p,deny:m,config:S})=>{let i=r?.approval;if(!i)return null;let y=Pe(S);if(i.status!=="pending"){if(N(a,r.id),i.status==="approved"){let s=document.createElement("div");return s.style.display="none",s}return Le(i)}pe(a,r.id);let P=y?.enableAlwaysAllow===!0,T=Be(a,e,r,i,y,p,m,P);if(P){a.pendingOrder.includes(r.id)||a.pendingOrder.push(r.id),a.latestPendingApprovalId=a.pendingOrder[a.pendingOrder.length-1];let s=n=>{ne(n)||r.id===a.latestPendingApprovalId&&(n.key!=="Escape"&&n.key!=="Enter"||(n.preventDefault(),n.stopImmediatePropagation(),N(a,r.id),n.key==="Escape"?m():n.metaKey||n.ctrlKey?p():p({remember:!0})))};a.keyHandlers.set(r.id,s),document.addEventListener("keydown",s)}return T}},teardown:()=>{for(let r of[...a.keyHandlers.keys(),...a.popovers.keys()])N(a,r);a.latestPendingApprovalId=null}}};export{de as createApprovalBubble,ie as createBuiltInApprovalPlugin,I as humanizeToolName,ae as initApprovalUi,se as updateApprovalDetailsUI};
1
+ var xe=Object.create;var j=Object.defineProperty;var ce=Object.getOwnPropertyDescriptor;var ge=Object.getOwnPropertyNames;var he=Object.getPrototypeOf,Ce=Object.prototype.hasOwnProperty;var ee=(e,a)=>()=>(a||e((a={exports:{}}).exports,a),a.exports);var Se=(e,a,o,t)=>{if(a&&typeof a=="object"||typeof a=="function")for(let r of ge(a))!Ce.call(e,r)&&r!==o&&j(e,r,{get:()=>a[r],enumerable:!(t=ce(a,r))||t.enumerable});return e};var ye=(e,a,o)=>(o=e!=null?xe(he(e)):{},Se(a||!e||!e.__esModule?j(o,"default",{value:e,enumerable:!0}):o,e));var J=ee(f=>{"use strict";Object.defineProperty(f,"__esModule",{value:!0});f.Allow=f.ALL=f.COLLECTION=f.ATOM=f.SPECIAL=f.INF=f._INFINITY=f.INFINITY=f.NAN=f.BOOL=f.NULL=f.OBJ=f.ARR=f.NUM=f.STR=void 0;f.STR=1;f.NUM=2;f.ARR=4;f.OBJ=8;f.NULL=16;f.BOOL=32;f.NAN=64;f.INFINITY=128;f._INFINITY=256;f.INF=f.INFINITY|f._INFINITY;f.SPECIAL=f.NULL|f.BOOL|f.INF|f.NAN;f.ATOM=f.STR|f.NUM|f.SPECIAL;f.COLLECTION=f.ARR|f.OBJ;f.ALL=f.ATOM|f.COLLECTION;f.Allow={STR:f.STR,NUM:f.NUM,ARR:f.ARR,OBJ:f.OBJ,NULL:f.NULL,BOOL:f.BOOL,NAN:f.NAN,INFINITY:f.INFINITY,_INFINITY:f._INFINITY,INF:f.INF,SPECIAL:f.SPECIAL,ATOM:f.ATOM,COLLECTION:f.COLLECTION,ALL:f.ALL};f.default=f.Allow});var re=ee(w=>{"use strict";var Ae=w&&w.__createBinding||(Object.create?(function(e,a,o,t){t===void 0&&(t=o);var r=Object.getOwnPropertyDescriptor(a,o);(!r||("get"in r?!a.__esModule:r.writable||r.configurable))&&(r={enumerable:!0,get:function(){return a[o]}}),Object.defineProperty(e,t,r)}):(function(e,a,o,t){t===void 0&&(t=o),e[t]=a[o]})),be=w&&w.__exportStar||function(e,a){for(var o in e)o!=="default"&&!Object.prototype.hasOwnProperty.call(a,o)&&Ae(a,e,o)};Object.defineProperty(w,"__esModule",{value:!0});w.Allow=w.MalformedJSON=w.PartialJSON=w.parseJSON=w.parse=void 0;var T=J();Object.defineProperty(w,"Allow",{enumerable:!0,get:function(){return T.Allow}});be(J(),w);var z=class extends Error{};w.PartialJSON=z;var X=class extends Error{};w.MalformedJSON=X;function te(e,a=T.Allow.ALL){if(typeof e!="string")throw new TypeError(`expecting str, got ${typeof e}`);if(!e.trim())throw new Error(`${e} is empty`);return we(e.trim(),a)}w.parseJSON=te;var we=(e,a)=>{let o=e.length,t=0,r=s=>{throw new z(`${s} at position ${t}`)},u=s=>{throw new X(`${s} at position ${t}`)},c=()=>(b(),t>=o&&r("Unexpected end of input"),e[t]==='"'?A():e[t]==="{"?S():e[t]==="["?C():e.substring(t,t+4)==="null"||T.Allow.NULL&a&&o-t<4&&"null".startsWith(e.substring(t))?(t+=4,null):e.substring(t,t+4)==="true"||T.Allow.BOOL&a&&o-t<4&&"true".startsWith(e.substring(t))?(t+=4,!0):e.substring(t,t+5)==="false"||T.Allow.BOOL&a&&o-t<5&&"false".startsWith(e.substring(t))?(t+=5,!1):e.substring(t,t+8)==="Infinity"||T.Allow.INFINITY&a&&o-t<8&&"Infinity".startsWith(e.substring(t))?(t+=8,1/0):e.substring(t,t+9)==="-Infinity"||T.Allow._INFINITY&a&&1<o-t&&o-t<9&&"-Infinity".startsWith(e.substring(t))?(t+=9,-1/0):e.substring(t,t+3)==="NaN"||T.Allow.NAN&a&&o-t<3&&"NaN".startsWith(e.substring(t))?(t+=3,NaN):M()),A=()=>{let s=t,n=!1;for(t++;t<o&&(e[t]!=='"'||n&&e[t-1]==="\\");)n=e[t]==="\\"?!n:!1,t++;if(e.charAt(t)=='"')try{return JSON.parse(e.substring(s,++t-Number(n)))}catch(g){u(String(g))}else if(T.Allow.STR&a)try{return JSON.parse(e.substring(s,t-Number(n))+'"')}catch{return JSON.parse(e.substring(s,e.lastIndexOf("\\"))+'"')}r("Unterminated string literal")},S=()=>{t++,b();let s={};try{for(;e[t]!=="}";){if(b(),t>=o&&T.Allow.OBJ&a)return s;let n=A();b(),t++;try{let g=c();s[n]=g}catch(g){if(T.Allow.OBJ&a)return s;throw g}b(),e[t]===","&&t++}}catch{if(T.Allow.OBJ&a)return s;r("Expected '}' at end of object")}return t++,s},C=()=>{t++;let s=[];try{for(;e[t]!=="]";)s.push(c()),b(),e[t]===","&&t++}catch{if(T.Allow.ARR&a)return s;r("Expected ']' at end of array")}return t++,s},M=()=>{if(t===0){e==="-"&&u("Not sure what '-' is");try{return JSON.parse(e)}catch(n){if(T.Allow.NUM&a)try{return JSON.parse(e.substring(0,e.lastIndexOf("e")))}catch{}u(String(n))}}let s=t;for(e[t]==="-"&&t++;e[t]&&",]}".indexOf(e[t])===-1;)t++;t==o&&!(T.Allow.NUM&a)&&r("Unterminated number literal");try{return JSON.parse(e.substring(s,t))}catch{e.substring(s,t)==="-"&&r("Not sure what '-' is");try{return JSON.parse(e.substring(s,e.lastIndexOf("e")))}catch(g){u(String(g))}}},b=()=>{for(;t<o&&`
2
+ \r `.includes(e[t]);)t++};return c()},Te=te;w.parse=Te});var l=(e,a)=>{let o=document.createElement(e);return a&&(o.className=a),o};var K=ye(re(),1);var W=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)}};var ae=()=>{},oe=e=>{ae=e.webMcpToolTitle},_=e=>ae(e);var $=[["circle",{cx:"12",cy:"12",r:"10"}],["path",{d:"M4.929 4.929 19.07 19.071"}]];var H=[["path",{d:"m6 9 6 6 6-6"}]];var Z=[["path",{d:"m18 15-6-6-6 6"}]];var Q=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"M12 8v4"}],["path",{d:"M12 16h.01"}]];var q=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"m9 12 2 2 4-4"}]];var G=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"m14.5 9.5-5 5"}],["path",{d:"m9.5 9.5 5 5"}]];var R=(e,a=24,o="currentColor",t=2)=>{if(!Array.isArray(e))return null;let r=document.createElementNS("http://www.w3.org/2000/svg","svg");return r.setAttribute("width",String(a)),r.setAttribute("height",String(a)),r.setAttribute("viewBox","0 0 24 24"),r.setAttribute("fill","none"),r.setAttribute("stroke",o),r.setAttribute("stroke-width",String(t)),r.setAttribute("stroke-linecap","round"),r.setAttribute("stroke-linejoin","round"),r.setAttribute("aria-hidden","true"),e.forEach(u=>{if(!Array.isArray(u)||u.length<2)return;let c=u[0],A=u[1];if(!A)return;let S=document.createElementNS("http://www.w3.org/2000/svg",c);Object.entries(A).forEach(([C,M])=>{C!=="stroke"&&S.setAttribute(C,String(M))}),r.appendChild(S)}),r};var U="webmcp:";var I=e=>{let o=(e.startsWith(U)?e.slice(U.length):e).replace(/([a-z0-9])([A-Z])/g,"$1 $2").split(/[_\-\s.]+/).filter(Boolean);if(o.length===0)return e;let t=o.join(" ").toLowerCase();return t.charAt(0).toUpperCase()+t.slice(1)},fe=e=>e?.approval!==!1?e?.approval:void 0,le=(e,a,o)=>{let t=fe(o)?.detailsDisplay??"collapsed";return a.get(e)??t==="expanded"},se=(e,a,o)=>{let t=fe(o);e.setAttribute("aria-expanded",a?"true":"false");let r=e.querySelector("[data-approval-details-label]");r&&(r.textContent=a?t?.hideDetailsLabel??"Hide details":t?.showDetailsLabel??"Show details");let u=e.querySelector("[data-approval-details-chevron]");if(u){u.innerHTML="";let c=R(a?Z:H,14,"currentColor",2);c&&u.appendChild(c)}},de=(e,a,o,t=new Map)=>{let r=a.querySelector('button[data-bubble-type="approval"]'),u=a.querySelector("[data-approval-details]");if(!r||!u)return;let c=le(e,t,o);se(r,c,o),u.style.display=c?"":"none"};var ue=(e,a,o=new Map)=>{let t=e.approval,r=a?.approval!==!1?a?.approval:void 0,u=t?.status==="pending",c=l("div",["persona-approval-bubble","persona-w-full","persona-rounded-2xl","persona-border","persona-shadow-sm","persona-overflow-hidden"].join(" "));if(c.id=`bubble-${e.id}`,c.setAttribute("data-message-id",e.id),c.style.backgroundColor=r?.backgroundColor??"var(--persona-approval-bg)",c.style.borderColor=r?.borderColor??"var(--persona-approval-border)",c.style.boxShadow=r?.shadow!==void 0?r.shadow.trim()===""?"none":r.shadow:"var(--persona-approval-shadow)",!t)return c;let A=l("div","persona-flex persona-items-start persona-gap-3 persona-px-4 persona-py-3"),S=l("div","persona-flex-shrink-0 persona-mt-0.5");S.setAttribute("data-approval-icon","true");let C=t.status==="denied"?G:t.status==="timeout"?Q:q,M=t.status==="approved"?"var(--persona-feedback-success, var(--persona-palette-colors-success-600))":t.status==="denied"?"var(--persona-feedback-error, var(--persona-palette-colors-error-600))":t.status==="timeout"?"var(--persona-feedback-warning, var(--persona-palette-colors-warning-600))":r?.titleColor??"currentColor",b=R(C,20,M,2);b&&S.appendChild(b);let s=l("div","persona-flex-1 persona-min-w-0"),n=l("div","persona-flex persona-items-center persona-gap-2"),g=l("span","persona-text-sm persona-font-medium persona-text-persona-primary");if(r?.titleColor&&(g.style.color=r.titleColor),g.textContent=r?.title??"Approval Required",n.appendChild(g),!u){let p=l("span","persona-inline-flex persona-items-center persona-px-2 persona-py-0.5 persona-rounded-full persona-text-xs persona-font-medium");p.setAttribute("data-approval-status",t.status),t.status==="approved"?(p.style.backgroundColor="var(--persona-palette-colors-success-100)",p.style.color="var(--persona-palette-colors-success-700)",p.textContent="Approved"):t.status==="denied"?(p.style.backgroundColor="var(--persona-palette-colors-error-100)",p.style.color="var(--persona-palette-colors-error-700)",p.textContent="Denied"):t.status==="timeout"&&(p.style.backgroundColor="var(--persona-palette-colors-warning-100)",p.style.color="var(--persona-palette-colors-warning-700)",p.textContent="Timeout"),n.appendChild(p)}s.appendChild(n);let O=t.toolType==="webmcp"||t.toolName.startsWith(U)?_(t.toolName):void 0,m=r?.formatDescription?.({toolName:t.toolName,toolType:t.toolType,description:t.description,parameters:t.parameters,...O?{displayTitle:O}:{},...t.reason?{reason:t.reason}:{}}),k=!t.toolName,v=m||(k?t.description:`The assistant wants to use \u201C${O??I(t.toolName)}\u201D.`),P=l("p","persona-text-sm persona-mt-0.5 persona-text-persona-muted");if(P.setAttribute("data-approval-summary","true"),r?.descriptionColor&&(P.style.color=r.descriptionColor),P.textContent=v,s.appendChild(P),t.reason){let p=l("p","persona-text-sm persona-mt-1 persona-text-persona-muted");p.setAttribute("data-approval-reason","true"),r?.reasonColor?p.style.color=r.reasonColor:r?.descriptionColor&&(p.style.color=r.descriptionColor);let h=l("span","persona-font-medium");h.textContent=`${r?.reasonLabel??"Agent's stated reason:"} `,p.appendChild(h),p.appendChild(document.createTextNode(t.reason)),s.appendChild(p)}let L=r?.detailsDisplay??"collapsed",D=!!t.description&&!k,B=D||!!t.parameters;if(L!=="hidden"&&B){let p=le(e.id,o,a),h=l("button","persona-inline-flex persona-items-center persona-gap-1 persona-mt-1 persona-p-0 persona-border-none persona-bg-transparent persona-text-xs persona-font-medium persona-cursor-pointer persona-text-persona-muted");h.type="button",h.setAttribute("data-expand-header","true"),h.setAttribute("data-bubble-type","approval"),r?.descriptionColor&&(h.style.color=r.descriptionColor);let d=l("span");d.setAttribute("data-approval-details-label","true");let x=l("span","persona-inline-flex persona-items-center");x.setAttribute("data-approval-details-chevron","true"),h.append(d,x),se(h,p,a),s.appendChild(h);let i=l("div");if(i.setAttribute("data-approval-details","true"),i.style.display=p?"":"none",D){let y=l("p","persona-text-sm persona-mt-1 persona-text-persona-muted");r?.descriptionColor&&(y.style.color=r.descriptionColor),y.textContent=t.description,i.appendChild(y)}if(t.parameters){let y=l("pre","persona-mt-2 persona-text-xs persona-p-2 persona-rounded persona-overflow-x-auto persona-max-h-32 persona-bg-persona-container persona-text-persona-primary");r?.parameterBackgroundColor&&(y.style.backgroundColor=r.parameterBackgroundColor),r?.parameterTextColor&&(y.style.color=r.parameterTextColor),y.style.fontSize="0.75rem",y.style.lineHeight="1rem",y.textContent=W(t.parameters),i.appendChild(y)}s.appendChild(i)}if(u){let p=l("div","persona-flex persona-gap-2 persona-mt-2");p.setAttribute("data-approval-buttons","true");let h=l("button","persona-inline-flex persona-items-center persona-px-3 persona-py-1.5 persona-rounded-md persona-text-xs persona-font-medium persona-border-none persona-cursor-pointer");h.type="button",h.style.backgroundColor=r?.approveButtonColor??"var(--persona-approval-approve-bg)",h.style.color=r?.approveButtonTextColor??"var(--persona-button-primary-fg)",h.setAttribute("data-approval-action","approve");let d=R(q,14,r?.approveButtonTextColor??"var(--persona-button-primary-fg)",2);d&&(d.style.marginRight="4px",h.appendChild(d));let x=document.createTextNode(r?.approveLabel??"Approve");h.appendChild(x);let i=l("button","persona-inline-flex persona-items-center persona-px-3 persona-py-1.5 persona-rounded-md persona-text-xs persona-font-medium persona-cursor-pointer");i.type="button",i.style.backgroundColor=r?.denyButtonColor??"transparent",i.style.color=r?.denyButtonTextColor??"var(--persona-feedback-error, var(--persona-palette-colors-error-600))",i.style.border=`1px solid ${r?.denyButtonTextColor?r.denyButtonTextColor:"var(--persona-palette-colors-error-200)"}`,i.setAttribute("data-approval-action","deny");let y=R(G,14,r?.denyButtonTextColor??"var(--persona-feedback-error, var(--persona-palette-colors-error-600))",2);y&&(y.style.marginRight="4px",i.appendChild(y));let N=document.createTextNode(r?.denyLabel??"Deny");i.appendChild(N),p.append(h,i),s.appendChild(p)}return A.append(S,s),c.appendChild(A),c};function Me(e){let a=e.getRootNode?.();return a instanceof ShadowRoot?a:(e.ownerDocument??document).body}function ne(e){let{anchor:a,content:o,placement:t="bottom-start",offset:r=6,matchAnchorWidth:u=!1,horizontalOffset:c,verticalOffset:A,zIndex:S=2147483e3,onOpen:C,onDismiss:M}=e,b=e.container??Me(a),s=!1,n=null,g=()=>{if(!s)return;let m=a.getBoundingClientRect();o.style.position="fixed",u&&(o.style.minWidth=`${m.width}px`),c&&(o.style.maxWidth=`${m.width}px`);let k=o.getBoundingClientRect(),v=A?.()??null,P=v!=null?m.top+v:m.top,L=t==="top-start"||t==="top-end"?P-r-k.height:m.bottom+r,B=t==="bottom-end"||t==="top-end"?m.right-k.width:m.left,p=c?.()??null;if(p!=null){let h=Math.max(m.left,m.right-k.width);B=Math.min(Math.max(m.left+p,m.left),h)}o.style.top=`${L}px`,o.style.left=`${B}px`},F=()=>{s&&(s=!1,n&&(n(),n=null),o.remove())},O=()=>{if(s)return;s=!0,S!=null&&(o.style.zIndex=String(S)),b.appendChild(o),g();let m=(a.ownerDocument??document).defaultView??window,k=a.ownerDocument??document,v=()=>{if(!a.isConnected){F(),M?.("anchor-removed");return}g()},P=D=>{let B=typeof D.composedPath=="function"?D.composedPath():[];B.includes(o)||B.includes(a)||(F(),M?.("outside"))},L=m.setTimeout(()=>{k.addEventListener("pointerdown",P,!0)},0);m.addEventListener("scroll",v,!0),m.addEventListener("resize",v),n=()=>{m.clearTimeout(L),k.removeEventListener("pointerdown",P,!0),m.removeEventListener("scroll",v,!0),m.removeEventListener("resize",v)},C?.()};return{get isOpen(){return s},open:O,close:F,toggle:()=>s?F():O(),reposition:g,destroy:F}}function pe(e){return(typeof e.composedPath=="function"?e.composedPath():[]).some(o=>o instanceof HTMLElement&&(o.tagName==="INPUT"||o.tagName==="TEXTAREA"||o.isContentEditable))}var Pe=()=>({keyHandlers:new Map,popovers:new Map,pendingOrder:[],latestPendingApprovalId:null}),ie=(e,a)=>{let o=e.keyHandlers.get(a);o&&(document.removeEventListener("keydown",o),e.keyHandlers.delete(a));let t=e.popovers.get(a);t&&(t.destroy(),e.popovers.delete(a))},E=(e,a)=>{ie(e,a);let o=e.pendingOrder.indexOf(a);o!==-1&&e.pendingOrder.splice(o,1),e.latestPendingApprovalId===a&&(e.latestPendingApprovalId=e.pendingOrder.length?e.pendingOrder[e.pendingOrder.length-1]:null)},ke=e=>e?.approval!==!1?e?.approval:void 0,ve=(e,a,o)=>{let t=o?.detailsDisplay??"collapsed";return a.get(e)??t==="expanded"},Y=e=>{let a=l("span","persona-approval-kbd");return a.textContent=e,a},Le=(e,a)=>{let o=l("span","persona-approval-title");a?.titleColor&&(o.style.color=a.titleColor);let r=e.toolType==="webmcp"||e.toolName.startsWith(U)?_(e.toolName):void 0,u=a?.formatDescription?.({toolName:e.toolName,toolType:e.toolType,description:e.description??"",parameters:e.parameters,...r?{displayTitle:r}:{},...e.reason?{reason:e.reason}:{}});if(u)return o.textContent=u,o;let c=r??I(e.toolName),A=e.toolType&&e.toolType!=="webmcp"?e.toolType:null;o.append("The assistant wants to use ");let S=document.createElement("strong");if(S.textContent=c,o.appendChild(S),A){o.append(" from ");let C=document.createElement("strong");C.textContent=A,o.appendChild(C)}return o},Be=e=>{let a=l("div","persona-approval-resolved"),o=R($,15,"currentColor",2);o&&a.appendChild(o);let t=l("span","persona-approval-resolved-name");return t.textContent=e.toolName?I(e.toolName):"Tool",a.append(t,document.createTextNode(e.status==="timeout"?" timed out":" denied")),a},De=(e,a,o,t,r,u,c,A,S=!1)=>{let C=l("div","persona-approval-card persona-shadow-sm");C.id=`bubble-${o.id}`,C.setAttribute("data-message-id",o.id),C.setAttribute("data-bubble-type","approval"),r?.backgroundColor&&(C.style.background=r.backgroundColor),r?.borderColor&&(C.style.borderColor=r.borderColor),r?.shadow!==void 0&&(C.style.boxShadow=r.shadow.trim()===""?"none":r.shadow);let M=r?.detailsDisplay??"collapsed",b=!!t.description&&M!=="hidden",s=t.parameters!=null&&M!=="hidden"&&!S,n=b||s,g=n&&ve(o.id,a,r),F=r?.showDetailsLabel??"Show details",O=r?.hideDetailsLabel??"Hide details",m=l("button","persona-approval-head");m.type="button",n?(m.setAttribute("data-action","toggle-params"),m.setAttribute("aria-expanded",g?"true":"false"),m.setAttribute("aria-label",g?O:F)):m.setAttribute("data-static","true");let k=l("span","persona-approval-logo"),v=R(q,16,"currentColor",2);v&&k.appendChild(v),m.appendChild(k);let P=Le(t,r);if(n){let d=l("span","persona-approval-toggle");d.setAttribute("aria-hidden","true");let x=R(H,14,"currentColor",2);x&&d.appendChild(x),P.append(" "),P.appendChild(d)}m.appendChild(P),C.appendChild(m);let L=l("div","persona-approval-body");if(n){let d=l("div","persona-approval-details");if(d.setAttribute("data-role","params"),d.hidden=!g,b){let x=l("p","persona-approval-desc");r?.descriptionColor&&(x.style.color=r.descriptionColor),x.textContent=t.description,d.appendChild(x)}if(s){let x=l("pre","persona-approval-params");r?.parameterBackgroundColor&&(x.style.background=r.parameterBackgroundColor),r?.parameterTextColor&&(x.style.color=r.parameterTextColor),x.textContent=W(t.parameters),d.appendChild(x)}L.appendChild(d)}if(S){let d=l("div","persona-approval-call");d.setAttribute("data-role","raw-call");let x=l("code","persona-approval-tool-name");if(x.textContent=t.toolName,d.appendChild(x),t.parameters!=null){let i=l("pre","persona-approval-params");r?.parameterBackgroundColor&&(i.style.background=r.parameterBackgroundColor),r?.parameterTextColor&&(i.style.color=r.parameterTextColor),i.textContent=W(t.parameters),d.appendChild(i)}L.appendChild(d)}if(t.reason){let d=l("p","persona-approval-reason");r?.reasonColor?d.style.color=r.reasonColor:r?.descriptionColor&&(d.style.color=r.descriptionColor);let x=l("span","persona-approval-reason-label");x.textContent=`${r?.reasonLabel??"Agent's stated reason:"} `,d.append(x,document.createTextNode(t.reason)),L.appendChild(d)}let D=l("div","persona-approval-actions"),B=null,p=d=>{r?.approveButtonColor&&(d.style.background=r.approveButtonColor),r?.approveButtonTextColor&&(d.style.color=r.approveButtonTextColor)},h=l("button","persona-approval-deny");if(h.type="button",h.setAttribute("data-action","deny"),r?.denyButtonColor&&(h.style.background=r.denyButtonColor),r?.denyButtonTextColor&&(h.style.color=r.denyButtonTextColor),h.append(r?.denyLabel??"Deny"),A){let d=l("div","persona-approval-split"),x=l("button","persona-approval-primary");x.type="button",x.setAttribute("data-action","always"),p(x),x.append(r?.approveLabel??"Always allow",Y("\u23CE"));let i=l("button","persona-approval-caret");i.type="button",i.setAttribute("data-action","toggle-menu"),i.setAttribute("aria-label","More options"),p(i);let y=R(H,15,"currentColor",2);y&&i.appendChild(y),d.append(x,i),D.append(d,h),h.append(Y("Esc"));let N=l("div","persona-approval-menu"),V=l("button","persona-approval-menu-item");V.type="button",V.append("Allow once",Y("\u2318\u23CE")),N.appendChild(V),B=ne({anchor:d,content:N,placement:"bottom-start",matchAnchorWidth:!0}),e.popovers.set(o.id,B),V.addEventListener("click",()=>{E(e,o.id),u()})}else{let d=l("button","persona-approval-primary persona-approval-primary--solo");d.type="button",d.setAttribute("data-action","allow"),p(d),d.append(r?.approveLabel??"Allow"),D.append(d,h)}return L.appendChild(D),C.appendChild(L),C.addEventListener("click",d=>{let x=d.target instanceof Element?d.target.closest("[data-action]"):null;if(!x)return;let i=x.getAttribute("data-action");if(i==="toggle-params"){let y=C.querySelector('[data-role="params"]');if(y){let N=y.hidden;y.hidden=!N,m.setAttribute("aria-expanded",N?"true":"false"),m.setAttribute("aria-label",N?O:F),a.set(o.id,N)}return}if(i==="toggle-menu"){B?.toggle();return}if(i==="always"){E(e,o.id),u({remember:!0});return}if(i==="allow"){E(e,o.id),u();return}if(i==="deny"){E(e,o.id),c();return}}),C},me=(e=new Map)=>{let a=Pe();return{plugin:{id:"persona-built-in-approval",renderApproval:({message:r,approve:u,deny:c,config:A})=>{let S=r?.approval;if(!S)return null;let C=ke(A);if(S.status!=="pending"){if(E(a,r.id),S.status==="approved"){let n=document.createElement("div");return n.style.display="none",n}return Be(S)}ie(a,r.id);let M=!!A?.clientToken,b=C?.enableAlwaysAllow===!0,s=De(a,e,r,S,C,u,c,b,M);if(b){a.pendingOrder.includes(r.id)||a.pendingOrder.push(r.id),a.latestPendingApprovalId=a.pendingOrder[a.pendingOrder.length-1];let n=g=>{pe(g)||r.id===a.latestPendingApprovalId&&(g.key!=="Escape"&&g.key!=="Enter"||(g.preventDefault(),g.stopImmediatePropagation(),E(a,r.id),g.key==="Escape"?c():g.metaKey||g.ctrlKey?u():u({remember:!0})))};a.keyHandlers.set(r.id,n),document.addEventListener("keydown",n)}return s}},teardown:()=>{for(let r of[...a.keyHandlers.keys(),...a.popovers.keys()])E(a,r);a.latestPendingApprovalId=null}}};export{ue as createApprovalBubble,me as createBuiltInApprovalPlugin,I as humanizeToolName,oe as initApprovalUi,de as updateApprovalDetailsUI};
3
3
  /*! Bundled license information:
4
4
 
5
5
  lucide/dist/esm/icons/ban.mjs:
@@ -1,4 +1,4 @@
1
- import{b as tt,g as nt,h as ot,i as rt,j as at,k as it,l as st,q as V,r as ge,s as Te,t as lt,v as ct,w as dt}from"./chunk-7CO4T5KB.js";import{a as ye}from"./chunk-7NQ4ZTHF.js";import{a as m,b as Qe,d as et}from"./chunk-76IELU7F.js";function oe(e){let t=String(e).split(/[\\/]/);return t[t.length-1]??""}function ft(e){let t=oe(e),n=t.lastIndexOf(".");return n<=0?"":t.slice(n+1).toLowerCase()}function ke(e){if(typeof e!="string")return"";let t=e.indexOf(`
1
+ import{b as nt,c as ot,d as rt,e as at,f as it,g as st,i as V,j as ge,k as Te,l as lt,n as ct,o as dt}from"./chunk-QRKGQPU7.js";import{b as tt}from"./chunk-ZC66NAIR.js";import"./chunk-2ANTRKTV.js";import{a as ye}from"./chunk-7NQ4ZTHF.js";import{a as m,b as Qe,d as et}from"./chunk-76IELU7F.js";function oe(e){let t=String(e).split(/[\\/]/);return t[t.length-1]??""}function ft(e){let t=oe(e),n=t.lastIndexOf(".");return n<=0?"":t.slice(n+1).toLowerCase()}function ke(e){if(typeof e!="string")return"";let t=e.indexOf(`
2
2
  `);if(t===-1||!e.slice(0,t).startsWith("```"))return e;let r=e.slice(t+1),o=r.lastIndexOf(`
3
3
  `);return(o===-1?r:r.slice(0,o)).split("`\u200B``").join("```")}function fe(e){let t=ft(e.path);if(t)return t==="html"||t==="htm"?"html":t==="svg"?"svg":t==="md"||t==="mdx"?"markdown":"other";let n=(e.mimeType||"").toLowerCase();return n.includes("html")?"html":n.includes("svg")?"svg":n.includes("markdown")?"markdown":"other"}function ce(e){switch(fe(e)){case"html":return"HTML";case"svg":return"SVG";case"markdown":return"Markdown";default:{let t=ft(e.path);return t?t.toUpperCase():"File"}}}function Se(e){let t=e.markdown??"";return e.file?{filename:oe(e.file.path)||"artifact",mime:e.file.mimeType||"application/octet-stream",content:ke(t)}:{filename:`${e.title||"artifact"}.md`,mime:"text/markdown",content:t}}function Ee(e){let t=new Blob([e.content],{type:e.mime}),n=URL.createObjectURL(t),r=document.createElement("a");r.href=n,r.download=e.filename,r.click(),URL.revokeObjectURL(n)}var Pe="persona-artifact-custom-action-btn";function be(e,t){let n=t?.documentChrome??!1,r;if(typeof e.icon=="function"){if(e.showLabel){let o="persona-label-btn persona-label-btn--sm "+Pe+(n?" persona-artifact-doc-copy-btn":"");r=m("button",o)}else{let o="persona-icon-btn "+Pe+(n?" persona-artifact-doc-icon-btn":"");r=m("button",o)}r.type="button",r.setAttribute("aria-label",e.label),r.title=e.label;try{let o=e.icon();o&&r.appendChild(o)}catch{}if(e.showLabel){let o=m("span");o.textContent=e.label,r.appendChild(o)}}else e.showLabel||!e.icon?r=ge({icon:e.icon,label:e.label,className:Pe+(n?" persona-artifact-doc-copy-btn":"")}):r=V({icon:e.icon,label:e.label,className:Pe+(n?" persona-artifact-doc-icon-btn":"")});return t?.onClick&&r.addEventListener("click",t.onClick),r}function ve(e){if(!e)return null;let t={artifactId:e.id,title:e.title??"",artifactType:e.artifactType};return e.artifactType==="markdown"?(t.markdown=e.markdown??"",e.file&&(t.file=e.file)):t.jsonPayload=JSON.stringify({component:e.component,props:e.props},null,2),t}var Ne="http://www.w3.org/2000/svg";function pt(e){let t=document.createElementNS(Ne,"svg");t.setAttribute("class",et("persona-spinner",e)),t.setAttribute("viewBox","0 0 24 24"),t.setAttribute("aria-hidden","true"),t.setAttribute("focusable","false");let n=document.createElementNS(Ne,"circle");n.setAttribute("class","persona-spinner-track"),n.setAttribute("cx","12"),n.setAttribute("cy","12"),n.setAttribute("r","9");let r=document.createElementNS(Ne,"circle");return r.setAttribute("class","persona-spinner-arc"),r.setAttribute("cx","12"),r.setAttribute("cy","12"),r.setAttribute("r","9"),t.appendChild(n),t.appendChild(r),t}function ut(e,t,n){let r=n?.loadingAnimation??"shimmer",o=n?.loadingAnimationDuration??2e3;if(r==="none"){e.textContent=t;return}if(r==="pulse"){e.setAttribute("data-preserve-animation","true"),e.classList.add("persona-tool-loading-pulse"),e.style.setProperty("--persona-tool-anim-duration",`${o}ms`),e.textContent=t;return}e.setAttribute("data-preserve-animation","true"),e.classList.add(`persona-tool-loading-${r}`),e.style.setProperty("--persona-tool-anim-duration",`${o}ms`),r==="shimmer-color"&&(n?.loadingAnimationColor&&e.style.setProperty("--persona-tool-anim-color",n.loadingAnimationColor),n?.loadingAnimationSecondaryColor&&e.style.setProperty("--persona-tool-anim-secondary-color",n.loadingAnimationSecondaryColor)),ct(e,t,0)}var Ve="persona-artifact-status-label",mt="persona-artifact-status-detail",yt="data-artifact-status-label",ze=new Map,gt=()=>typeof performance<"u"&&typeof performance.now=="function"?performance.now():Date.now();function he(e){e&&ze.delete(e)}function Ot(e){let t=e.artifactType==="markdown"?e.file:void 0;return t?ce(t):e.artifactType==="component"?"Component":"Document"}function we(e,t,n){let r=Ot(e),o=`Generating ${r.toLowerCase()}...`,s=t?.statusLabel;if(typeof s=="string")return{label:s};if(typeof s!="function")return{label:o};let i=e.id,l=ze.get(i);e.status!=="complete"&&l===void 0&&(l=gt(),ze.set(i,l));let A=l===void 0?0:Math.max(0,gt()-l),h=e.artifactType==="component",f=!h&&typeof e.markdown=="string"?e.markdown:"",p=h?0:f.length,u=h||f===""?0:f.split(`
4
4
  `).length,c=e.artifactType==="markdown"?e.file:void 0,y={artifactId:i,artifactType:e.artifactType,title:e.title,typeLabel:r,file:c,chars:p,lines:u,elapsedMs:A,content:()=>h?"":f,surface:n};try{let g=s(y);return typeof g=="string"?{label:g}:g&&typeof g=="object"&&typeof g.label=="string"?{label:g.label,detail:typeof g.detail=="string"?g.detail:void 0}:{label:o}}catch{return{label:o}}}function Ft(e){e.className=Ve,e.removeAttribute("data-preserve-animation"),e.style.removeProperty("--persona-tool-anim-duration"),e.style.removeProperty("--persona-tool-anim-color"),e.style.removeProperty("--persona-tool-anim-secondary-color"),e.replaceChildren()}function pe(e,t,n){let r=e.querySelector(`:scope > .${Ve}`);r||(r=m("span",Ve),e.appendChild(r)),r.getAttribute(yt)!==t.label&&(Ft(r),ut(r,t.label,n),r.setAttribute(yt,t.label));let o=e.querySelector(`:scope > .${mt}`),s=t.detail;s?(o||(o=m("span",mt),e.appendChild(o)),o.textContent!==s&&(o.textContent=s)):o&&o.remove()}var _t={keyword:"persona-code-token-keyword",string:"persona-code-token-string",comment:"persona-code-token-comment",number:"persona-code-token-number",tag:"persona-code-token-tag",attr:"persona-code-token-attr",property:"persona-code-token-property"},Dt=15e4,Me={html:"html",htm:"html",xhtml:"html",xml:"html",svg:"html",css:"css",js:"js",jsx:"js",mjs:"js",cjs:"js",ts:"js",tsx:"js",mts:"js",cts:"js",javascript:"js",typescript:"js",ecmascript:"js",json:"json",jsonc:"json",json5:"json"};function jt(e,t){let n=(e||"").trim().toLowerCase();if(n&&Me[n])return Me[n];if(t){let r=t.lastIndexOf(".");if(r>=0){let o=t.slice(r+1).toLowerCase();if(Me[o])return Me[o]}}return null}function Re(e,t){let n=[],r=0,o=0,s=i=>{i>o&&n.push({type:"plain",value:e.slice(o,i)})};for(;r<e.length;){let i=!1;for(let l of t){l.re.lastIndex=r;let A=l.re.exec(e);if(A&&A.index===r&&A[0].length>0){s(r);let h=l.map?l.map(A[0]):l.type;n.push({type:h,value:A[0]}),r+=A[0].length,o=r,i=!0;break}}i||(r+=1)}return s(e.length),n}var Nt=new Set(["abstract","any","as","async","await","boolean","break","case","catch","class","const","continue","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","implements","import","in","instanceof","interface","keyof","let","namespace","never","new","null","number","object","of","private","protected","public","readonly","return","satisfies","set","static","string","super","switch","symbol","this","throw","true","try","type","typeof","undefined","unknown","var","void","while","yield"]),Vt=[{type:"comment",re:/\/\/[^\n]*/y},{type:"comment",re:/\/\*[\s\S]*?\*\//y},{type:"string",re:/`(?:\\[\s\S]|[^\\`])*`/y},{type:"string",re:/"(?:\\.|[^"\\\n])*"/y},{type:"string",re:/'(?:\\.|[^'\\\n])*'/y},{type:"number",re:/0[xX][0-9a-fA-F]+|(?:\d+\.?\d*|\.\d+)(?:[eE][+-]?\d+)?/y},{type:"plain",re:/[A-Za-z_$][\w$]*/y,map:e=>Nt.has(e)?"keyword":"plain"}];function bt(e){return Re(e,Vt)}var zt=[{type:"string",re:/"(?:\\.|[^"\\])*"/y},{type:"number",re:/-?(?:\d+\.?\d*|\.\d+)(?:[eE][+-]?\d+)?/y},{type:"plain",re:/[A-Za-z_]\w*/y,map:e=>e==="true"||e==="false"||e==="null"?"keyword":"plain"}];function Wt(e){let t=Re(e,zt);for(let n=0;n<t.length;n+=1){if(t[n].type!=="string")continue;let r=n+1;for(;r<t.length&&t[r].value.trim()==="";)r+=1;let o=t[r];o&&o.value.replace(/^\s*/,"").startsWith(":")&&(t[n].type="property")}return t}var Ut=[{type:"comment",re:/\/\*[\s\S]*?\*\//y},{type:"string",re:/"(?:\\.|[^"\\\n])*"/y},{type:"string",re:/'(?:\\.|[^'\\\n])*'/y},{type:"keyword",re:/@[A-Za-z-]+/y},{type:"number",re:/#[0-9a-fA-F]{3,8}\b/y},{type:"number",re:/-?(?:\d+\.?\d*|\.\d+)(?:[a-z%]+)?/y},{type:"plain",re:/[A-Za-z_-][\w-]*/y}];function ht(e){let t=Re(e,Ut),n="";for(let r=0;r<t.length;r+=1){let o=t[r];if(o.type==="plain"&&/^[A-Za-z_-][\w-]*$/.test(o.value)){let i=r+1;for(;i<t.length&&t[i].value.trim()==="";)i+=1;let l=t[i];l&&l.value.replace(/^\s*/,"").startsWith(":")&&(n===""||n==="{"||n==="}"||n===";"||n===",")&&(o.type="property")}let s=o.value.replace(/\s+$/,"");s&&(n=s[s.length-1])}return t}var $t=[{type:"tag",re:/<\/?\s*[A-Za-z][\w:-]*/y},{type:"string",re:/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'/y},{type:"attr",re:/[A-Za-z_:@][\w:.-]*(?=\s*=)/y},{type:"attr",re:/[A-Za-z_:@][\w:.-]*/y},{type:"tag",re:/\/?>/y}];function qt(e){let t=[],n=(s,i)=>{i&&t.push({type:s,value:i})},r=e.length,o=0;for(;o<r;){if(e.startsWith("<!--",o)){let i=e.indexOf("-->",o+4),l=i===-1?r:i+3;n("comment",e.slice(o,l)),o=l;continue}if(e[o]==="<"&&e[o+1]==="!"){let i=e.indexOf(">",o),l=i===-1?r:i+1;n("tag",e.slice(o,l)),o=l;continue}if(e[o]==="<"&&/[A-Za-z/]/.test(e[o+1]||"")){let i=e.indexOf(">",o),l=i===-1?r:i+1,A=e.slice(o,l);for(let f of Re(A,$t))t.push(f);o=l;let h=/^<\s*(script|style)\b/i.exec(A);if(h&&!/\/>\s*$/.test(A)){let f=h[1].toLowerCase(),u=new RegExp("</\\s*"+f+"\\s*>","i").exec(e.slice(o)),c=u?o+u.index:r,y=e.slice(o,c),g=f==="script"?bt(y):ht(y);for(let S of g)t.push(S);o=c}continue}let s=e.indexOf("<",o);if(s===o)n("plain",e[o]),o+=1;else{let i=s===-1?r:s;n("plain",e.slice(o,i)),o=i}}return t}function Gt(e,t){switch(t){case"html":return qt(e);case"css":return ht(e);case"js":return bt(e);case"json":return Wt(e)}}function Kt(e){let t=Qe(),n=m("span","persona-code-line"),r=(o,s)=>{if(!s)return;let i=_t[o];if(i){let l=m("span",i);l.textContent=s,n.appendChild(l)}else n.appendChild(document.createTextNode(s))};for(let o of e){let s=o.value.split(`
@@ -1,10 +1,10 @@
1
1
  "use strict";var er=Object.create;var qe=Object.defineProperty;var tr=Object.getOwnPropertyDescriptor;var ar=Object.getOwnPropertyNames;var rr=Object.getPrototypeOf,or=Object.prototype.hasOwnProperty;var sr=(e,t)=>{for(var a in t)qe(e,a,{get:t[a],enumerable:!0})},ba=(e,t,a,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of ar(t))!or.call(e,r)&&r!==a&&qe(e,r,{get:()=>t[r],enumerable:!(o=tr(t,r))||o.enumerable});return e};var wa=(e,t,a)=>(a=e!=null?er(rr(e)):{},ba(t||!e||!e.__esModule?qe(a,"default",{value:e,enumerable:!0}):a,e)),nr=e=>ba(qe({},"__esModule",{value:!0}),e);var ro={};sr(ro,{PersonaArtifactCard:()=>Fe,PersonaArtifactInline:()=>da,__provideMarkdownParsers:()=>aa,__setIconsExtraLoader:()=>nt,artifactCopyText:()=>De,createArtifactPane:()=>la,downloadInfoFor:()=>Ae,hasLiveInlineArtifactBlock:()=>ia,initArtifactsUi:()=>sa,triggerArtifactDownload:()=>ve,updateInlineArtifactBlocks:()=>fa});module.exports=nr(ro);var C=(e,t)=>{let a=document.createElement(e);return t&&(a.className=t),a};var Sa=()=>document.createDocumentFragment();var Ue=(...e)=>e.filter(Boolean).join(" ");function re(e){let t=String(e).split(/[\\/]/);return t[t.length-1]??""}function Aa(e){let t=re(e),a=t.lastIndexOf(".");return a<=0?"":t.slice(a+1).toLowerCase()}function Ne(e){if(typeof e!="string")return"";let t=e.indexOf(`
2
2
  `);if(t===-1||!e.slice(0,t).startsWith("```"))return e;let o=e.slice(t+1),r=o.lastIndexOf(`
3
- `);return(r===-1?o:o.slice(0,r)).split("`\u200B``").join("```")}function ue(e){let t=Aa(e.path);if(t)return t==="html"||t==="htm"?"html":t==="svg"?"svg":t==="md"||t==="mdx"?"markdown":"other";let a=(e.mimeType||"").toLowerCase();return a.includes("html")?"html":a.includes("svg")?"svg":a.includes("markdown")?"markdown":"other"}function de(e){switch(ue(e)){case"html":return"HTML";case"svg":return"SVG";case"markdown":return"Markdown";default:{let t=Aa(e.path);return t?t.toUpperCase():"File"}}}function Ae(e){let t=e.markdown??"";return e.file?{filename:re(e.file.path)||"artifact",mime:e.file.mimeType||"application/octet-stream",content:Ne(t)}:{filename:`${e.title||"artifact"}.md`,mime:"text/markdown",content:t}}function ve(e){let t=new Blob([e.content],{type:e.mime}),a=URL.createObjectURL(t),o=document.createElement("a");o.href=a,o.download=e.filename,o.click(),URL.revokeObjectURL(a)}var ne=(e,t=24,a="currentColor",o=2)=>{if(!Array.isArray(e))return null;let r=document.createElementNS("http://www.w3.org/2000/svg","svg");return r.setAttribute("width",String(t)),r.setAttribute("height",String(t)),r.setAttribute("viewBox","0 0 24 24"),r.setAttribute("fill","none"),r.setAttribute("stroke",a),r.setAttribute("stroke-width",String(o)),r.setAttribute("stroke-linecap","round"),r.setAttribute("stroke-linejoin","round"),r.setAttribute("aria-hidden","true"),e.forEach(s=>{if(!Array.isArray(s)||s.length<2)return;let n=s[0],f=s[1];if(!f)return;let h=document.createElementNS("http://www.w3.org/2000/svg",n);Object.entries(f).forEach(([u,i])=>{u!=="stroke"&&h.setAttribute(u,String(i))}),r.appendChild(h)}),r};var Ve=e=>{let{fallbackImport:t,resetOnSetLoader:a=!1}=e,o=null,r=null,s=null;return{setLoader:i=>{o=i,a&&(r=null,s=null)},load:()=>r?Promise.resolve(r):s||(s=(o??t)().then(d=>(r=d,d)).catch(d=>{throw s=null,d}),s),provide:i=>{r=i},getSync:()=>r}};var{setLoader:lr,load:fr}=Ve({fallbackImport:()=>import("@runtypelabs/persona/icons-extra")}),nt=lr,va=fr;var lt=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"}]];var ft=[["path",{d:"M12 5v14"}],["path",{d:"m19 12-7 7-7-7"}]];var it=[["path",{d:"m12 19-7-7 7-7"}],["path",{d:"M19 12H5"}]];var dt=[["path",{d:"M5 12h14"}],["path",{d:"m12 5 7 7-7 7"}]];var pt=[["path",{d:"M7 7h10v10"}],["path",{d:"M7 17 17 7"}]];var ut=[["path",{d:"m5 12 7-7 7 7"}],["path",{d:"M12 19V5"}]];var mt=[["circle",{cx:"12",cy:"12",r:"4"}],["path",{d:"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8"}]];var ct=[["path",{d:"M12 8V4H8"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2"}],["path",{d:"M2 14h2"}],["path",{d:"M20 14h2"}],["path",{d:"M15 13v2"}],["path",{d:"M9 13v2"}]];var ke=[["path",{d:"M20 6 9 17l-5-5"}]];var Me=[["path",{d:"m6 9 6 6 6-6"}]];var xt=[["path",{d:"m15 18-6-6 6-6"}]];var gt=[["path",{d:"m9 18 6-6-6-6"}]];var ht=[["path",{d:"m18 15-6-6-6 6"}]];var Ct=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4"}],["path",{d:"M21 14H11"}],["path",{d:"m15 10-4 4 4 4"}]];var yt=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"}]];var ze=[["path",{d:"m18 16 4-4-4-4"}],["path",{d:"m6 8-4 4 4 4"}],["path",{d:"m14.5 4-5 16"}]];var bt=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"}]];var wt=[["path",{d:"M12 15V3"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}],["path",{d:"m7 10 5 5 5-5"}]];var We=[["circle",{cx:"12",cy:"12",r:"1"}],["circle",{cx:"12",cy:"5",r:"1"}],["circle",{cx:"12",cy:"19",r:"1"}]];var Ge=[["circle",{cx:"12",cy:"12",r:"1"}],["circle",{cx:"19",cy:"12",r:"1"}],["circle",{cx:"5",cy:"12",r:"1"}]];var St=[["path",{d:"M15 3h6v6"}],["path",{d:"M10 14 21 3"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"}]];var At=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"}],["circle",{cx:"12",cy:"12",r:"3"}]];var vt=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}],["path",{d:"M10 12.5 8 15l2 2.5"}],["path",{d:"m14 12.5 2 2.5-2 2.5"}]];var kt=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}],["path",{d:"M8 13h2"}],["path",{d:"M14 13h2"}],["path",{d:"M8 17h2"}],["path",{d:"M14 17h2"}]];var Le=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}],["path",{d:"M10 9H8"}],["path",{d:"M16 13H8"}],["path",{d:"M16 17H8"}]];var Mt=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}]];var Lt=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"}],["path",{d:"M3 3v5h5"}],["path",{d:"M12 7v5l4 2"}]];var Pt=[["path",{d:"M16 5h6"}],["path",{d:"M19 2v6"}],["path",{d:"M21 11.5V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7.5"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21"}],["circle",{cx:"9",cy:"9",r:"2"}]];var _e=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56"}]];var Tt=[["path",{d:"M12 2v4"}],["path",{d:"m16.2 7.8 2.9-2.9"}],["path",{d:"M18 12h4"}],["path",{d:"m16.2 16.2 2.9 2.9"}],["path",{d:"M12 18v4"}],["path",{d:"m4.9 19.1 2.9-2.9"}],["path",{d:"M2 12h4"}],["path",{d:"m4.9 4.9 2.9 2.9"}]];var Pe=[["path",{d:"M8 3H5a2 2 0 0 0-2 2v3"}],["path",{d:"M21 8V5a2 2 0 0 0-2-2h-3"}],["path",{d:"M3 16v3a2 2 0 0 0 2 2h3"}],["path",{d:"M16 21h3a2 2 0 0 0 2-2v-3"}]];var Rt=[["path",{d:"M4 5h16"}],["path",{d:"M4 12h16"}],["path",{d:"M4 19h16"}]];var Bt=[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"}]];var Et=[["path",{d:"M12 19v3"}],["path",{d:"M19 10v2a7 7 0 0 1-14 0v-2"}],["rect",{x:"9",y:"2",width:"6",height:"13",rx:"3"}]];var Te=[["path",{d:"M8 3v3a2 2 0 0 1-2 2H3"}],["path",{d:"M21 8h-3a2 2 0 0 1-2-2V3"}],["path",{d:"M3 16h3a2 2 0 0 1 2 2v3"}],["path",{d:"M16 21v-3a2 2 0 0 1 2-2h3"}]];var Dt=[["path",{d:"M5 12h14"}]];var je=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"}],["path",{d:"M9 3v18"}]];var Ft=[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551"}]];var Ht=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"}],["path",{d:"m15 5 4 4"}]];var Ot=[["path",{d:"M5 12h14"}],["path",{d:"M12 5v14"}]];var It=[["path",{d:"M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z"}],["path",{d:"M5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z"}]];var qt=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"}],["path",{d:"M21 3v5h-5"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"}],["path",{d:"M8 16H3v5"}]];var Ut=[["path",{d:"m21 21-4.34-4.34"}],["circle",{cx:"11",cy:"11",r:"8"}]];var Nt=[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z"}],["path",{d:"m21.854 2.147-10.94 10.939"}]];var Vt=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"M12 8v4"}],["path",{d:"M12 16h.01"}]];var zt=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"m9 12 2 2 4-4"}]];var Xe=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"m14.5 9.5-5 5"}],["path",{d:"m9.5 9.5 5 5"}]];var Wt=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"}]];var Gt=[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"}]];var _t=[["path",{d:"M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"}],["path",{d:"M17 14V2"}]];var jt=[["path",{d:"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"}],["path",{d:"M7 10v12"}]];var Xt=[["path",{d:"M10 11v6"}],["path",{d:"M14 11v6"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"}],["path",{d:"M3 6h18"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"}]];var Kt=[["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"}],["path",{d:"M3 6h18"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"}]];var Zt=[["path",{d:"M12 3v12"}],["path",{d:"m17 8-5-5-5 5"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}]];var $t=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"}],["path",{d:"M16 9a5 5 0 0 1 0 6"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728"}]];var Jt=[["path",{d:"M18 6 6 18"}],["path",{d:"m6 6 12 12"}]];var ir={activity:lt,"arrow-down":ft,"arrow-up":ut,"arrow-up-right":pt,bot:ct,"chevron-down":Me,"chevron-up":ht,"chevron-right":gt,"chevron-left":xt,check:ke,clipboard:yt,"clipboard-copy":Ct,"code-xml":ze,copy:bt,file:Mt,"file-code":vt,"file-spreadsheet":kt,"file-text":Le,"image-plus":Pt,loader:Tt,"loader-circle":_e,mic:Et,paperclip:Ft,quote:It,"refresh-cw":qt,search:Ut,send:Nt,"shield-alert":Vt,"shield-check":zt,"shield-x":Xe,square:Wt,"thumbs-down":_t,"thumbs-up":jt,upload:Zt,"volume-2":$t,x:Jt,"at-sign":mt,"arrow-left":it,"arrow-right":dt,"external-link":St,ellipsis:Ge,"ellipsis-vertical":We,menu:Rt,"panel-left":je,plus:Ot,minus:Dt,pencil:Ht,trash:Kt,"trash-2":Xt,download:wt,maximize:Pe,minimize:Te,"message-square":Bt,star:Gt,eye:At,history:Lt},dr=["user","mail","phone","calendar","clock","building","map-pin","lock","key","credit-card","hash","globe","link","circle-check","circle-x","triangle-alert","info","ban","shield","house","pen-line","save","share","funnel","settings","rotate-cw","shopping-cart","shopping-bag","package","truck","tag","gift","receipt","wallet","store","dollar-sign","percent","play","pause","volume-x","camera","image","film","headphones","message-circle","bell","heart","eye-off","bookmark","calendar-days","timer","folder","folder-open","files","chart-column","sparkles","zap","sun","moon","flag","lightbulb","monitor","smartphone"],Ke=new Map(Object.entries(ir)),he=new Set,ka=!1,Ma=new Set,pr=e=>{let t=[...Ma];e&&Ma.clear();for(let a of t)try{a()}catch{}};var ur=()=>{let e=0;for(let t of[...he]){let a=Ke.get(t.name);if(!a)continue;he.delete(t),e++;let o=ne(a,t.size,t.color,t.strokeWidth);if(o)for(t.el.removeAttribute("data-persona-icon-pending");o.firstChild;)t.el.appendChild(o.firstChild)}return e};var Qt=!1,mr=()=>{va().then(e=>{if(!ka){for(let[t,a]of Object.entries(e.EXTRA_LUCIDE_ICONS))Ke.has(t)||Ke.set(t,a);ka=!0,ur(),pr(!0)}}).catch(e=>{Qt=!0,console.warn("[Persona] Failed to load the icons-extra chunk",e)})},cr=(e,t,a)=>{let o=document.createElementNS("http://www.w3.org/2000/svg","svg");return o.setAttribute("width",String(e)),o.setAttribute("height",String(e)),o.setAttribute("viewBox","0 0 24 24"),o.setAttribute("fill","none"),o.setAttribute("stroke",t),o.setAttribute("stroke-width",String(a)),o.setAttribute("stroke-linecap","round"),o.setAttribute("stroke-linejoin","round"),o.setAttribute("aria-hidden","true"),o.setAttribute("data-persona-icon-pending","true"),o},Re=(e,t=24,a="currentColor",o=2)=>{let r=Ke.get(e);if(r)return ne(r,t,a,o);if(dr.includes(e)){Qt&&(Qt=!1);let s=cr(t,a,o);if(he.size>=500){let n=he.values().next().value;n&&he.delete(n)}return he.add({el:s,name:e,size:t,color:a,strokeWidth:o}),mr(),s}return console.warn(`Lucide icon "${e}" is not in the Persona registry. Register it via registerIcons(), or add it to packages/widget/src/utils/icons.ts (see docs/icon-registry-shortlist.md).`),null};var xr=1e5,La=xr+1;function Pa(e){let{items:t,onSelect:a,anchor:o,position:r="bottom-left",portal:s,onOpenChange:n}=e,f=C("div","persona-dropdown-menu persona-hidden");f.setAttribute("role","menu"),f.setAttribute("data-persona-theme-zone","dropdown"),s?(f.style.position="fixed",f.style.zIndex=String(La)):(f.style.position="absolute",f.style.top="100%",f.style.marginTop="4px",r==="bottom-right"?f.style.right="0":f.style.left="0");for(let m of t){if(m.dividerBefore){let M=document.createElement("hr");f.appendChild(M)}let c=document.createElement("button");if(c.type="button",c.setAttribute("role","menuitem"),c.setAttribute("data-dropdown-item-id",m.id),m.destructive&&c.setAttribute("data-destructive",""),m.icon){let M=Re(m.icon,16,"currentColor",1.5);M&&c.appendChild(M)}let v=document.createElement("span");v.textContent=m.label,c.appendChild(v),c.addEventListener("click",M=>{M.stopPropagation(),d(),a(m.id)}),f.appendChild(c)}let h=null;function u(){if(!s)return;let m=o.getBoundingClientRect();f.style.top=`${m.bottom+4}px`,r==="bottom-right"?(f.style.right=`${window.innerWidth-m.right}px`,f.style.left="auto"):(f.style.left=`${m.left}px`,f.style.right="auto")}function i(){let m=f.classList.contains("persona-hidden");u(),f.classList.remove("persona-hidden"),m&&n?.(!0),requestAnimationFrame(()=>{let c=v=>{!f.contains(v.target)&&!o.contains(v.target)&&d()};document.addEventListener("click",c,!0),h=()=>document.removeEventListener("click",c,!0)})}function d(){let m=!f.classList.contains("persona-hidden");f.classList.add("persona-hidden"),h?.(),h=null,m&&n?.(!1)}function x(){f.classList.contains("persona-hidden")?i():d()}function p(){d(),f.remove()}return s&&s.appendChild(f),{element:f,show:i,hide:d,toggle:x,destroy:p}}function V(e){let{icon:t,label:a,size:o,strokeWidth:r,className:s,chromeless:n,onClick:f,aria:h}=e,u=C("button",Ue(!n&&"persona-icon-btn",s));u.type="button",u.setAttribute("aria-label",a),u.title=a;let i=Re(t,o??16,"currentColor",r??2);if(i&&u.appendChild(i),f&&u.addEventListener("click",f),h)for(let[d,x]of Object.entries(h))u.setAttribute(d,x);return u}function me(e){let{icon:t,label:a,variant:o="default",size:r="sm",iconSize:s,className:n,onClick:f,aria:h}=e,u="persona-label-btn";o!=="default"&&(u+=" persona-label-btn--"+o),u+=" persona-label-btn--"+r,n&&(u+=" "+n);let i=C("button",u);if(i.type="button",i.setAttribute("aria-label",a),t){let x=Re(t,s??14,"currentColor",2);x&&i.appendChild(x)}let d=C("span");if(d.textContent=a,i.appendChild(d),f&&i.addEventListener("click",f),h)for(let[x,p]of Object.entries(h))i.setAttribute(x,p);return i}function Ze(e){let{items:t,selectedId:a,onSelect:o,className:r}=e,s=C("div","persona-toggle-group"+(r?" "+r:""));s.setAttribute("role","group");let n=a,f=[];function h(){for(let i of f)i.btn.setAttribute("aria-pressed",i.id===n?"true":"false")}for(let i of t){let d;i.icon?d=V({icon:i.icon,label:i.label,className:i.className,onClick:()=>{n=i.id,h(),o(i.id)}}):(d=C("button","persona-icon-btn"+(i.className?" "+i.className:"")),d.type="button",d.setAttribute("aria-label",i.label),d.title=i.label,d.textContent=i.label,d.addEventListener("click",()=>{n=i.id,h(),o(i.id)})),d.setAttribute("aria-pressed",i.id===n?"true":"false"),f.push({id:i.id,btn:d}),s.appendChild(d)}function u(i){n=i,h()}return{element:s,setSelected:u}}function Ta(e){let{label:t,icon:a,iconSize:o,iconOnly:r,menuItems:s,onSelect:n,onPrimary:f,position:h="bottom-left",portal:u,chevronLabel:i="More options",chevronIconSize:d,className:x,primaryClassName:p,chevronClassName:m}=e,c=C("div","persona-split-btn"+(x?" "+x:"")),v={label:t,className:"persona-split-btn-primary"+(p?" "+p:""),onClick:f},M=r&&a?V({...v,icon:a,size:o??14}):me({...v,icon:a,iconSize:o??14}),S=V({icon:"chevron-down",label:i,size:d??14,className:"persona-split-btn-chevron"+(m?" "+m:""),aria:{"aria-haspopup":"true","aria-expanded":"false"}});c.append(M,S);let b=null,L=()=>{if(b)return b;let I=(typeof u=="function"?u():u)??void 0;return b=Pa({items:s,onSelect:n,anchor:c,position:h,portal:I,onOpenChange:j=>{S.setAttribute("aria-expanded",j?"true":"false")}}),I||c.appendChild(b.element),b};return c.isConnected?L():requestAnimationFrame(()=>{b||L()}),S.addEventListener("click",I=>{I.stopPropagation(),L().toggle()}),{element:c,primaryButton:M,chevronButton:S,openMenu:()=>L().show(),closeMenu:()=>b?.hide(),toggleMenu:()=>L().toggle(),destroy:()=>{b?.destroy(),c.remove()}}}var $e="persona-artifact-custom-action-btn";function Ce(e,t){let a=t?.documentChrome??!1,o;if(typeof e.icon=="function"){if(e.showLabel){let r="persona-label-btn persona-label-btn--sm "+$e+(a?" persona-artifact-doc-copy-btn":"");o=C("button",r)}else{let r="persona-icon-btn "+$e+(a?" persona-artifact-doc-icon-btn":"");o=C("button",r)}o.type="button",o.setAttribute("aria-label",e.label),o.title=e.label;try{let r=e.icon();r&&o.appendChild(r)}catch{}if(e.showLabel){let r=C("span");r.textContent=e.label,o.appendChild(r)}}else e.showLabel||!e.icon?o=me({icon:e.icon,label:e.label,className:$e+(a?" persona-artifact-doc-copy-btn":"")}):o=V({icon:e.icon,label:e.label,className:$e+(a?" persona-artifact-doc-icon-btn":"")});return t?.onClick&&o.addEventListener("click",t.onClick),o}function Be(e){if(!e)return null;let t={artifactId:e.id,title:e.title??"",artifactType:e.artifactType};return e.artifactType==="markdown"?(t.markdown=e.markdown??"",e.file&&(t.file=e.file)):t.jsonPayload=JSON.stringify({component:e.component,props:e.props},null,2),t}var Yt="http://www.w3.org/2000/svg";function Ra(e){let t=document.createElementNS(Yt,"svg");t.setAttribute("class",Ue("persona-spinner",e)),t.setAttribute("viewBox","0 0 24 24"),t.setAttribute("aria-hidden","true"),t.setAttribute("focusable","false");let a=document.createElementNS(Yt,"circle");a.setAttribute("class","persona-spinner-track"),a.setAttribute("cx","12"),a.setAttribute("cy","12"),a.setAttribute("r","9");let o=document.createElementNS(Yt,"circle");return o.setAttribute("class","persona-spinner-arc"),o.setAttribute("cx","12"),o.setAttribute("cy","12"),o.setAttribute("r","9"),t.appendChild(a),t.appendChild(o),t}var Ba=(e,t,a)=>{let o=a;for(let r of t){let s=C("span","persona-tool-char");s.style.setProperty("--char-index",String(o)),s.textContent=r===" "?"\xA0":r,e.appendChild(s),o++}return o};function Ea(e,t,a){let o=a?.loadingAnimation??"shimmer",r=a?.loadingAnimationDuration??2e3;if(o==="none"){e.textContent=t;return}if(o==="pulse"){e.setAttribute("data-preserve-animation","true"),e.classList.add("persona-tool-loading-pulse"),e.style.setProperty("--persona-tool-anim-duration",`${r}ms`),e.textContent=t;return}e.setAttribute("data-preserve-animation","true"),e.classList.add(`persona-tool-loading-${o}`),e.style.setProperty("--persona-tool-anim-duration",`${r}ms`),o==="shimmer-color"&&(a?.loadingAnimationColor&&e.style.setProperty("--persona-tool-anim-color",a.loadingAnimationColor),a?.loadingAnimationSecondaryColor&&e.style.setProperty("--persona-tool-anim-secondary-color",a.loadingAnimationSecondaryColor)),Ba(e,t,0)}var ea="persona-artifact-status-label",Da="persona-artifact-status-detail",Fa="data-artifact-status-label",ta=new Map,Ha=()=>typeof performance<"u"&&typeof performance.now=="function"?performance.now():Date.now();function ye(e){e&&ta.delete(e)}function gr(e){let t=e.artifactType==="markdown"?e.file:void 0;return t?de(t):e.artifactType==="component"?"Component":"Document"}function be(e,t,a){let o=gr(e),r=`Generating ${o.toLowerCase()}...`,s=t?.statusLabel;if(typeof s=="string")return{label:s};if(typeof s!="function")return{label:r};let n=e.id,f=ta.get(n);e.status!=="complete"&&f===void 0&&(f=Ha(),ta.set(n,f));let h=f===void 0?0:Math.max(0,Ha()-f),u=e.artifactType==="component",i=!u&&typeof e.markdown=="string"?e.markdown:"",d=u?0:i.length,x=u||i===""?0:i.split(`
4
- `).length,p=e.artifactType==="markdown"?e.file:void 0,m={artifactId:n,artifactType:e.artifactType,title:e.title,typeLabel:o,file:p,chars:d,lines:x,elapsedMs:h,content:()=>u?"":i,surface:a};try{let c=s(m);return typeof c=="string"?{label:c}:c&&typeof c=="object"&&typeof c.label=="string"?{label:c.label,detail:typeof c.detail=="string"?c.detail:void 0}:{label:r}}catch{return{label:r}}}function hr(e){e.className=ea,e.removeAttribute("data-preserve-animation"),e.style.removeProperty("--persona-tool-anim-duration"),e.style.removeProperty("--persona-tool-anim-color"),e.style.removeProperty("--persona-tool-anim-secondary-color"),e.replaceChildren()}function ce(e,t,a){let o=e.querySelector(`:scope > .${ea}`);o||(o=C("span",ea),e.appendChild(o)),o.getAttribute(Fa)!==t.label&&(hr(o),Ea(o,t.label,a),o.setAttribute(Fa,t.label));let r=e.querySelector(`:scope > .${Da}`),s=t.detail;s?(r||(r=C("span",Da),e.appendChild(r)),r.textContent!==s&&(r.textContent=s)):r&&r.remove()}var Cr={keyword:"persona-code-token-keyword",string:"persona-code-token-string",comment:"persona-code-token-comment",number:"persona-code-token-number",tag:"persona-code-token-tag",attr:"persona-code-token-attr",property:"persona-code-token-property"},yr=15e4,Je={html:"html",htm:"html",xhtml:"html",xml:"html",svg:"html",css:"css",js:"js",jsx:"js",mjs:"js",cjs:"js",ts:"js",tsx:"js",mts:"js",cts:"js",javascript:"js",typescript:"js",ecmascript:"js",json:"json",jsonc:"json",json5:"json"};function br(e,t){let a=(e||"").trim().toLowerCase();if(a&&Je[a])return Je[a];if(t){let o=t.lastIndexOf(".");if(o>=0){let r=t.slice(o+1).toLowerCase();if(Je[r])return Je[r]}}return null}function Qe(e,t){let a=[],o=0,r=0,s=n=>{n>r&&a.push({type:"plain",value:e.slice(r,n)})};for(;o<e.length;){let n=!1;for(let f of t){f.re.lastIndex=o;let h=f.re.exec(e);if(h&&h.index===o&&h[0].length>0){s(o);let u=f.map?f.map(h[0]):f.type;a.push({type:u,value:h[0]}),o+=h[0].length,r=o,n=!0;break}}n||(o+=1)}return s(e.length),a}var wr=new Set(["abstract","any","as","async","await","boolean","break","case","catch","class","const","continue","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","implements","import","in","instanceof","interface","keyof","let","namespace","never","new","null","number","object","of","private","protected","public","readonly","return","satisfies","set","static","string","super","switch","symbol","this","throw","true","try","type","typeof","undefined","unknown","var","void","while","yield"]),Sr=[{type:"comment",re:/\/\/[^\n]*/y},{type:"comment",re:/\/\*[\s\S]*?\*\//y},{type:"string",re:/`(?:\\[\s\S]|[^\\`])*`/y},{type:"string",re:/"(?:\\.|[^"\\\n])*"/y},{type:"string",re:/'(?:\\.|[^'\\\n])*'/y},{type:"number",re:/0[xX][0-9a-fA-F]+|(?:\d+\.?\d*|\.\d+)(?:[eE][+-]?\d+)?/y},{type:"plain",re:/[A-Za-z_$][\w$]*/y,map:e=>wr.has(e)?"keyword":"plain"}];function Oa(e){return Qe(e,Sr)}var Ar=[{type:"string",re:/"(?:\\.|[^"\\])*"/y},{type:"number",re:/-?(?:\d+\.?\d*|\.\d+)(?:[eE][+-]?\d+)?/y},{type:"plain",re:/[A-Za-z_]\w*/y,map:e=>e==="true"||e==="false"||e==="null"?"keyword":"plain"}];function vr(e){let t=Qe(e,Ar);for(let a=0;a<t.length;a+=1){if(t[a].type!=="string")continue;let o=a+1;for(;o<t.length&&t[o].value.trim()==="";)o+=1;let r=t[o];r&&r.value.replace(/^\s*/,"").startsWith(":")&&(t[a].type="property")}return t}var kr=[{type:"comment",re:/\/\*[\s\S]*?\*\//y},{type:"string",re:/"(?:\\.|[^"\\\n])*"/y},{type:"string",re:/'(?:\\.|[^'\\\n])*'/y},{type:"keyword",re:/@[A-Za-z-]+/y},{type:"number",re:/#[0-9a-fA-F]{3,8}\b/y},{type:"number",re:/-?(?:\d+\.?\d*|\.\d+)(?:[a-z%]+)?/y},{type:"plain",re:/[A-Za-z_-][\w-]*/y}];function Ia(e){let t=Qe(e,kr),a="";for(let o=0;o<t.length;o+=1){let r=t[o];if(r.type==="plain"&&/^[A-Za-z_-][\w-]*$/.test(r.value)){let n=o+1;for(;n<t.length&&t[n].value.trim()==="";)n+=1;let f=t[n];f&&f.value.replace(/^\s*/,"").startsWith(":")&&(a===""||a==="{"||a==="}"||a===";"||a===",")&&(r.type="property")}let s=r.value.replace(/\s+$/,"");s&&(a=s[s.length-1])}return t}var Mr=[{type:"tag",re:/<\/?\s*[A-Za-z][\w:-]*/y},{type:"string",re:/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'/y},{type:"attr",re:/[A-Za-z_:@][\w:.-]*(?=\s*=)/y},{type:"attr",re:/[A-Za-z_:@][\w:.-]*/y},{type:"tag",re:/\/?>/y}];function Lr(e){let t=[],a=(s,n)=>{n&&t.push({type:s,value:n})},o=e.length,r=0;for(;r<o;){if(e.startsWith("<!--",r)){let n=e.indexOf("-->",r+4),f=n===-1?o:n+3;a("comment",e.slice(r,f)),r=f;continue}if(e[r]==="<"&&e[r+1]==="!"){let n=e.indexOf(">",r),f=n===-1?o:n+1;a("tag",e.slice(r,f)),r=f;continue}if(e[r]==="<"&&/[A-Za-z/]/.test(e[r+1]||"")){let n=e.indexOf(">",r),f=n===-1?o:n+1,h=e.slice(r,f);for(let i of Qe(h,Mr))t.push(i);r=f;let u=/^<\s*(script|style)\b/i.exec(h);if(u&&!/\/>\s*$/.test(h)){let i=u[1].toLowerCase(),x=new RegExp("</\\s*"+i+"\\s*>","i").exec(e.slice(r)),p=x?r+x.index:o,m=e.slice(r,p),c=i==="script"?Oa(m):Ia(m);for(let v of c)t.push(v);r=p}continue}let s=e.indexOf("<",r);if(s===r)a("plain",e[r]),r+=1;else{let n=s===-1?o:s;a("plain",e.slice(r,n)),r=n}}return t}function Pr(e,t){switch(t){case"html":return Lr(e);case"css":return Ia(e);case"js":return Oa(e);case"json":return vr(e)}}function Tr(e){let t=Sa(),a=C("span","persona-code-line"),o=(r,s)=>{if(!s)return;let n=Cr[r];if(n){let f=C("span",n);f.textContent=s,a.appendChild(f)}else a.appendChild(document.createTextNode(s))};for(let r of e){let s=r.value.split(`
3
+ `);return(r===-1?o:o.slice(0,r)).split("`\u200B``").join("```")}function pe(e){let t=Aa(e.path);if(t)return t==="html"||t==="htm"?"html":t==="svg"?"svg":t==="md"||t==="mdx"?"markdown":"other";let a=(e.mimeType||"").toLowerCase();return a.includes("html")?"html":a.includes("svg")?"svg":a.includes("markdown")?"markdown":"other"}function de(e){switch(pe(e)){case"html":return"HTML";case"svg":return"SVG";case"markdown":return"Markdown";default:{let t=Aa(e.path);return t?t.toUpperCase():"File"}}}function Ae(e){let t=e.markdown??"";return e.file?{filename:re(e.file.path)||"artifact",mime:e.file.mimeType||"application/octet-stream",content:Ne(t)}:{filename:`${e.title||"artifact"}.md`,mime:"text/markdown",content:t}}function ve(e){let t=new Blob([e.content],{type:e.mime}),a=URL.createObjectURL(t),o=document.createElement("a");o.href=a,o.download=e.filename,o.click(),URL.revokeObjectURL(a)}var ne=(e,t=24,a="currentColor",o=2)=>{if(!Array.isArray(e))return null;let r=document.createElementNS("http://www.w3.org/2000/svg","svg");return r.setAttribute("width",String(t)),r.setAttribute("height",String(t)),r.setAttribute("viewBox","0 0 24 24"),r.setAttribute("fill","none"),r.setAttribute("stroke",a),r.setAttribute("stroke-width",String(o)),r.setAttribute("stroke-linecap","round"),r.setAttribute("stroke-linejoin","round"),r.setAttribute("aria-hidden","true"),e.forEach(s=>{if(!Array.isArray(s)||s.length<2)return;let n=s[0],f=s[1];if(!f)return;let h=document.createElementNS("http://www.w3.org/2000/svg",n);Object.entries(f).forEach(([p,i])=>{p!=="stroke"&&h.setAttribute(p,String(i))}),r.appendChild(h)}),r};var Ve=e=>{let{fallbackImport:t,resetOnSetLoader:a=!1}=e,o=null,r=null,s=null;return{setLoader:i=>{o=i,a&&(r=null,s=null)},load:()=>r?Promise.resolve(r):s||(s=(o??t)().then(d=>(r=d,d)).catch(d=>{throw s=null,d}),s),provide:i=>{r=i},getSync:()=>r}};var{setLoader:lr,load:fr}=Ve({fallbackImport:()=>import("@runtypelabs/persona/icons-extra")}),nt=lr,va=fr;var lt=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"}]];var ft=[["path",{d:"M12 5v14"}],["path",{d:"m19 12-7 7-7-7"}]];var it=[["path",{d:"m12 19-7-7 7-7"}],["path",{d:"M19 12H5"}]];var dt=[["path",{d:"M5 12h14"}],["path",{d:"m12 5 7 7-7 7"}]];var ut=[["path",{d:"M7 7h10v10"}],["path",{d:"M7 17 17 7"}]];var pt=[["path",{d:"m5 12 7-7 7 7"}],["path",{d:"M12 19V5"}]];var mt=[["circle",{cx:"12",cy:"12",r:"4"}],["path",{d:"M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-4 8"}]];var ct=[["path",{d:"M12 8V4H8"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2"}],["path",{d:"M2 14h2"}],["path",{d:"M20 14h2"}],["path",{d:"M15 13v2"}],["path",{d:"M9 13v2"}]];var ke=[["path",{d:"M20 6 9 17l-5-5"}]];var Me=[["path",{d:"m6 9 6 6 6-6"}]];var xt=[["path",{d:"m15 18-6-6 6-6"}]];var gt=[["path",{d:"m9 18 6-6-6-6"}]];var ht=[["path",{d:"m18 15-6-6-6 6"}]];var Ct=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1"}],["path",{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v4"}],["path",{d:"M21 14H11"}],["path",{d:"m15 10-4 4 4 4"}]];var yt=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"}]];var ze=[["path",{d:"m18 16 4-4-4-4"}],["path",{d:"m6 8-4 4 4 4"}],["path",{d:"m14.5 4-5 16"}]];var bt=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"}]];var wt=[["path",{d:"M12 15V3"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}],["path",{d:"m7 10 5 5 5-5"}]];var We=[["circle",{cx:"12",cy:"12",r:"1"}],["circle",{cx:"12",cy:"5",r:"1"}],["circle",{cx:"12",cy:"19",r:"1"}]];var Ge=[["circle",{cx:"12",cy:"12",r:"1"}],["circle",{cx:"19",cy:"12",r:"1"}],["circle",{cx:"5",cy:"12",r:"1"}]];var St=[["path",{d:"M15 3h6v6"}],["path",{d:"M10 14 21 3"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"}]];var At=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"}],["circle",{cx:"12",cy:"12",r:"3"}]];var vt=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}],["path",{d:"M10 12.5 8 15l2 2.5"}],["path",{d:"m14 12.5 2 2.5-2 2.5"}]];var kt=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}],["path",{d:"M8 13h2"}],["path",{d:"M14 13h2"}],["path",{d:"M8 17h2"}],["path",{d:"M14 17h2"}]];var Le=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}],["path",{d:"M10 9H8"}],["path",{d:"M16 13H8"}],["path",{d:"M16 17H8"}]];var Mt=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5"}]];var Lt=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"}],["path",{d:"M3 3v5h5"}],["path",{d:"M12 7v5l4 2"}]];var Pt=[["path",{d:"M16 5h6"}],["path",{d:"M19 2v6"}],["path",{d:"M21 11.5V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7.5"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21"}],["circle",{cx:"9",cy:"9",r:"2"}]];var _e=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56"}]];var Tt=[["path",{d:"M12 2v4"}],["path",{d:"m16.2 7.8 2.9-2.9"}],["path",{d:"M18 12h4"}],["path",{d:"m16.2 16.2 2.9 2.9"}],["path",{d:"M12 18v4"}],["path",{d:"m4.9 19.1 2.9-2.9"}],["path",{d:"M2 12h4"}],["path",{d:"m4.9 4.9 2.9 2.9"}]];var Pe=[["path",{d:"M8 3H5a2 2 0 0 0-2 2v3"}],["path",{d:"M21 8V5a2 2 0 0 0-2-2h-3"}],["path",{d:"M3 16v3a2 2 0 0 0 2 2h3"}],["path",{d:"M16 21h3a2 2 0 0 0 2-2v-3"}]];var Rt=[["path",{d:"M4 5h16"}],["path",{d:"M4 12h16"}],["path",{d:"M4 19h16"}]];var Et=[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z"}]];var Bt=[["path",{d:"M12 19v3"}],["path",{d:"M19 10v2a7 7 0 0 1-14 0v-2"}],["rect",{x:"9",y:"2",width:"6",height:"13",rx:"3"}]];var Te=[["path",{d:"M8 3v3a2 2 0 0 1-2 2H3"}],["path",{d:"M21 8h-3a2 2 0 0 1-2-2V3"}],["path",{d:"M3 16h3a2 2 0 0 1 2 2v3"}],["path",{d:"M16 21v-3a2 2 0 0 1 2-2h3"}]];var Dt=[["path",{d:"M5 12h14"}]];var je=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"}],["path",{d:"M9 3v18"}]];var Ft=[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551"}]];var Ht=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"}],["path",{d:"m15 5 4 4"}]];var Ot=[["path",{d:"M5 12h14"}],["path",{d:"M12 5v14"}]];var It=[["path",{d:"M16 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z"}],["path",{d:"M5 3a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2 1 1 0 0 1 1 1v1a2 2 0 0 1-2 2 1 1 0 0 0-1 1v2a1 1 0 0 0 1 1 6 6 0 0 0 6-6V5a2 2 0 0 0-2-2z"}]];var qt=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"}],["path",{d:"M21 3v5h-5"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"}],["path",{d:"M8 16H3v5"}]];var Ut=[["path",{d:"m21 21-4.34-4.34"}],["circle",{cx:"11",cy:"11",r:"8"}]];var Nt=[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z"}],["path",{d:"m21.854 2.147-10.94 10.939"}]];var Vt=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"M12 8v4"}],["path",{d:"M12 16h.01"}]];var zt=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"m9 12 2 2 4-4"}]];var Xe=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"}],["path",{d:"m14.5 9.5-5 5"}],["path",{d:"m9.5 9.5 5 5"}]];var Wt=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"}]];var Gt=[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z"}]];var _t=[["path",{d:"M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z"}],["path",{d:"M17 14V2"}]];var jt=[["path",{d:"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"}],["path",{d:"M7 10v12"}]];var Xt=[["path",{d:"M10 11v6"}],["path",{d:"M14 11v6"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"}],["path",{d:"M3 6h18"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"}]];var Kt=[["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"}],["path",{d:"M3 6h18"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"}]];var Zt=[["path",{d:"M12 3v12"}],["path",{d:"m17 8-5-5-5 5"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}]];var $t=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z"}],["path",{d:"M16 9a5 5 0 0 1 0 6"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728"}]];var Jt=[["path",{d:"M18 6 6 18"}],["path",{d:"m6 6 12 12"}]];var ir={activity:lt,"arrow-down":ft,"arrow-up":pt,"arrow-up-right":ut,bot:ct,"chevron-down":Me,"chevron-up":ht,"chevron-right":gt,"chevron-left":xt,check:ke,clipboard:yt,"clipboard-copy":Ct,"code-xml":ze,copy:bt,file:Mt,"file-code":vt,"file-spreadsheet":kt,"file-text":Le,"image-plus":Pt,loader:Tt,"loader-circle":_e,mic:Bt,paperclip:Ft,quote:It,"refresh-cw":qt,search:Ut,send:Nt,"shield-alert":Vt,"shield-check":zt,"shield-x":Xe,square:Wt,"thumbs-down":_t,"thumbs-up":jt,upload:Zt,"volume-2":$t,x:Jt,"at-sign":mt,"arrow-left":it,"arrow-right":dt,"external-link":St,ellipsis:Ge,"ellipsis-vertical":We,menu:Rt,"panel-left":je,plus:Ot,minus:Dt,pencil:Ht,trash:Kt,"trash-2":Xt,download:wt,maximize:Pe,minimize:Te,"message-square":Et,star:Gt,eye:At,history:Lt},dr=["user","mail","phone","calendar","clock","building","map-pin","lock","key","credit-card","hash","globe","link","circle-check","circle-x","triangle-alert","info","ban","shield","house","pen-line","save","share","funnel","settings","rotate-cw","shopping-cart","shopping-bag","package","truck","tag","gift","receipt","wallet","store","dollar-sign","percent","play","pause","volume-x","camera","image","film","headphones","message-circle","bell","heart","eye-off","bookmark","calendar-days","timer","folder","folder-open","files","chart-column","sparkles","zap","sun","moon","flag","lightbulb","monitor","smartphone"],Ke=new Map(Object.entries(ir)),he=new Set,ka=!1,Ma=new Set,ur=e=>{let t=[...Ma];e&&Ma.clear();for(let a of t)try{a()}catch{}};var pr=()=>{let e=0;for(let t of[...he]){let a=Ke.get(t.name);if(!a)continue;he.delete(t),e++;let o=ne(a,t.size,t.color,t.strokeWidth);if(o)for(t.el.removeAttribute("data-persona-icon-pending");o.firstChild;)t.el.appendChild(o.firstChild)}return e};var Qt=!1,mr=()=>{va().then(e=>{if(!ka){for(let[t,a]of Object.entries(e.EXTRA_LUCIDE_ICONS))Ke.has(t)||Ke.set(t,a);ka=!0,pr(),ur(!0)}}).catch(e=>{Qt=!0,console.warn("[Persona] Failed to load the icons-extra chunk",e)})},cr=(e,t,a)=>{let o=document.createElementNS("http://www.w3.org/2000/svg","svg");return o.setAttribute("width",String(e)),o.setAttribute("height",String(e)),o.setAttribute("viewBox","0 0 24 24"),o.setAttribute("fill","none"),o.setAttribute("stroke",t),o.setAttribute("stroke-width",String(a)),o.setAttribute("stroke-linecap","round"),o.setAttribute("stroke-linejoin","round"),o.setAttribute("aria-hidden","true"),o.setAttribute("data-persona-icon-pending","true"),o},Re=(e,t=24,a="currentColor",o=2)=>{let r=Ke.get(e);if(r)return ne(r,t,a,o);if(dr.includes(e)){Qt&&(Qt=!1);let s=cr(t,a,o);if(he.size>=500){let n=he.values().next().value;n&&he.delete(n)}return he.add({el:s,name:e,size:t,color:a,strokeWidth:o}),mr(),s}return console.warn(`Lucide icon "${e}" is not in the Persona registry. Register it via registerIcons(), or add it to packages/widget/src/utils/icons.ts (see docs/icon-registry-shortlist.md).`),null};var xr=1e5,La=xr+1;function Pa(e){let{items:t,onSelect:a,anchor:o,position:r="bottom-left",portal:s,onOpenChange:n}=e,f=C("div","persona-dropdown-menu persona-hidden");f.setAttribute("role","menu"),f.setAttribute("data-persona-theme-zone","dropdown"),s?(f.style.position="fixed",f.style.zIndex=String(La)):(f.style.position="absolute",f.style.top="100%",f.style.marginTop="4px",r==="bottom-right"?f.style.right="0":f.style.left="0");for(let m of t){if(m.dividerBefore){let M=document.createElement("hr");f.appendChild(M)}let c=document.createElement("button");if(c.type="button",c.setAttribute("role","menuitem"),c.setAttribute("data-dropdown-item-id",m.id),m.destructive&&c.setAttribute("data-destructive",""),m.icon){let M=Re(m.icon,16,"currentColor",1.5);M&&c.appendChild(M)}let v=document.createElement("span");v.textContent=m.label,c.appendChild(v),c.addEventListener("click",M=>{M.stopPropagation(),d(),a(m.id)}),f.appendChild(c)}let h=null;function p(){if(!s)return;let m=o.getBoundingClientRect();f.style.top=`${m.bottom+4}px`,r==="bottom-right"?(f.style.right=`${window.innerWidth-m.right}px`,f.style.left="auto"):(f.style.left=`${m.left}px`,f.style.right="auto")}function i(){let m=f.classList.contains("persona-hidden");p(),f.classList.remove("persona-hidden"),m&&n?.(!0),requestAnimationFrame(()=>{let c=v=>{!f.contains(v.target)&&!o.contains(v.target)&&d()};document.addEventListener("click",c,!0),h=()=>document.removeEventListener("click",c,!0)})}function d(){let m=!f.classList.contains("persona-hidden");f.classList.add("persona-hidden"),h?.(),h=null,m&&n?.(!1)}function x(){f.classList.contains("persona-hidden")?i():d()}function u(){d(),f.remove()}return s&&s.appendChild(f),{element:f,show:i,hide:d,toggle:x,destroy:u}}function V(e){let{icon:t,label:a,size:o,strokeWidth:r,className:s,chromeless:n,onClick:f,aria:h}=e,p=C("button",Ue(!n&&"persona-icon-btn",s));p.type="button",p.setAttribute("aria-label",a),p.title=a;let i=Re(t,o??16,"currentColor",r??2);if(i&&p.appendChild(i),f&&p.addEventListener("click",f),h)for(let[d,x]of Object.entries(h))p.setAttribute(d,x);return p}function me(e){let{icon:t,label:a,variant:o="default",size:r="sm",iconSize:s,className:n,onClick:f,aria:h}=e,p="persona-label-btn";o!=="default"&&(p+=" persona-label-btn--"+o),p+=" persona-label-btn--"+r,n&&(p+=" "+n);let i=C("button",p);if(i.type="button",i.setAttribute("aria-label",a),t){let x=Re(t,s??14,"currentColor",2);x&&i.appendChild(x)}let d=C("span");if(d.textContent=a,i.appendChild(d),f&&i.addEventListener("click",f),h)for(let[x,u]of Object.entries(h))i.setAttribute(x,u);return i}function Ze(e){let{items:t,selectedId:a,onSelect:o,className:r}=e,s=C("div","persona-toggle-group"+(r?" "+r:""));s.setAttribute("role","group");let n=a,f=[];function h(){for(let i of f)i.btn.setAttribute("aria-pressed",i.id===n?"true":"false")}for(let i of t){let d;i.icon?d=V({icon:i.icon,label:i.label,className:i.className,onClick:()=>{n=i.id,h(),o(i.id)}}):(d=C("button","persona-icon-btn"+(i.className?" "+i.className:"")),d.type="button",d.setAttribute("aria-label",i.label),d.title=i.label,d.textContent=i.label,d.addEventListener("click",()=>{n=i.id,h(),o(i.id)})),d.setAttribute("aria-pressed",i.id===n?"true":"false"),f.push({id:i.id,btn:d}),s.appendChild(d)}function p(i){n=i,h()}return{element:s,setSelected:p}}function Ta(e){let{label:t,icon:a,iconSize:o,iconOnly:r,menuItems:s,onSelect:n,onPrimary:f,position:h="bottom-left",portal:p,chevronLabel:i="More options",chevronIconSize:d,className:x,primaryClassName:u,chevronClassName:m}=e,c=C("div","persona-split-btn"+(x?" "+x:"")),v={label:t,className:"persona-split-btn-primary"+(u?" "+u:""),onClick:f},M=r&&a?V({...v,icon:a,size:o??14}):me({...v,icon:a,iconSize:o??14}),S=V({icon:"chevron-down",label:i,size:d??14,className:"persona-split-btn-chevron"+(m?" "+m:""),aria:{"aria-haspopup":"true","aria-expanded":"false"}});c.append(M,S);let b=null,L=()=>{if(b)return b;let I=(typeof p=="function"?p():p)??void 0;return b=Pa({items:s,onSelect:n,anchor:c,position:h,portal:I,onOpenChange:j=>{S.setAttribute("aria-expanded",j?"true":"false")}}),I||c.appendChild(b.element),b};return c.isConnected?L():requestAnimationFrame(()=>{b||L()}),S.addEventListener("click",I=>{I.stopPropagation(),L().toggle()}),{element:c,primaryButton:M,chevronButton:S,openMenu:()=>L().show(),closeMenu:()=>b?.hide(),toggleMenu:()=>L().toggle(),destroy:()=>{b?.destroy(),c.remove()}}}var $e="persona-artifact-custom-action-btn";function Ce(e,t){let a=t?.documentChrome??!1,o;if(typeof e.icon=="function"){if(e.showLabel){let r="persona-label-btn persona-label-btn--sm "+$e+(a?" persona-artifact-doc-copy-btn":"");o=C("button",r)}else{let r="persona-icon-btn "+$e+(a?" persona-artifact-doc-icon-btn":"");o=C("button",r)}o.type="button",o.setAttribute("aria-label",e.label),o.title=e.label;try{let r=e.icon();r&&o.appendChild(r)}catch{}if(e.showLabel){let r=C("span");r.textContent=e.label,o.appendChild(r)}}else e.showLabel||!e.icon?o=me({icon:e.icon,label:e.label,className:$e+(a?" persona-artifact-doc-copy-btn":"")}):o=V({icon:e.icon,label:e.label,className:$e+(a?" persona-artifact-doc-icon-btn":"")});return t?.onClick&&o.addEventListener("click",t.onClick),o}function Ee(e){if(!e)return null;let t={artifactId:e.id,title:e.title??"",artifactType:e.artifactType};return e.artifactType==="markdown"?(t.markdown=e.markdown??"",e.file&&(t.file=e.file)):t.jsonPayload=JSON.stringify({component:e.component,props:e.props},null,2),t}var Yt="http://www.w3.org/2000/svg";function Ra(e){let t=document.createElementNS(Yt,"svg");t.setAttribute("class",Ue("persona-spinner",e)),t.setAttribute("viewBox","0 0 24 24"),t.setAttribute("aria-hidden","true"),t.setAttribute("focusable","false");let a=document.createElementNS(Yt,"circle");a.setAttribute("class","persona-spinner-track"),a.setAttribute("cx","12"),a.setAttribute("cy","12"),a.setAttribute("r","9");let o=document.createElementNS(Yt,"circle");return o.setAttribute("class","persona-spinner-arc"),o.setAttribute("cx","12"),o.setAttribute("cy","12"),o.setAttribute("r","9"),t.appendChild(a),t.appendChild(o),t}var Ea=(e,t,a)=>{let o=a;for(let r of t){let s=C("span","persona-tool-char");s.style.setProperty("--char-index",String(o)),s.textContent=r===" "?"\xA0":r,e.appendChild(s),o++}return o};function Ba(e,t,a){let o=a?.loadingAnimation??"shimmer",r=a?.loadingAnimationDuration??2e3;if(o==="none"){e.textContent=t;return}if(o==="pulse"){e.setAttribute("data-preserve-animation","true"),e.classList.add("persona-tool-loading-pulse"),e.style.setProperty("--persona-tool-anim-duration",`${r}ms`),e.textContent=t;return}e.setAttribute("data-preserve-animation","true"),e.classList.add(`persona-tool-loading-${o}`),e.style.setProperty("--persona-tool-anim-duration",`${r}ms`),o==="shimmer-color"&&(a?.loadingAnimationColor&&e.style.setProperty("--persona-tool-anim-color",a.loadingAnimationColor),a?.loadingAnimationSecondaryColor&&e.style.setProperty("--persona-tool-anim-secondary-color",a.loadingAnimationSecondaryColor)),Ea(e,t,0)}var ea="persona-artifact-status-label",Da="persona-artifact-status-detail",Fa="data-artifact-status-label",ta=new Map,Ha=()=>typeof performance<"u"&&typeof performance.now=="function"?performance.now():Date.now();function ye(e){e&&ta.delete(e)}function gr(e){let t=e.artifactType==="markdown"?e.file:void 0;return t?de(t):e.artifactType==="component"?"Component":"Document"}function be(e,t,a){let o=gr(e),r=`Generating ${o.toLowerCase()}...`,s=t?.statusLabel;if(typeof s=="string")return{label:s};if(typeof s!="function")return{label:r};let n=e.id,f=ta.get(n);e.status!=="complete"&&f===void 0&&(f=Ha(),ta.set(n,f));let h=f===void 0?0:Math.max(0,Ha()-f),p=e.artifactType==="component",i=!p&&typeof e.markdown=="string"?e.markdown:"",d=p?0:i.length,x=p||i===""?0:i.split(`
4
+ `).length,u=e.artifactType==="markdown"?e.file:void 0,m={artifactId:n,artifactType:e.artifactType,title:e.title,typeLabel:o,file:u,chars:d,lines:x,elapsedMs:h,content:()=>p?"":i,surface:a};try{let c=s(m);return typeof c=="string"?{label:c}:c&&typeof c=="object"&&typeof c.label=="string"?{label:c.label,detail:typeof c.detail=="string"?c.detail:void 0}:{label:r}}catch{return{label:r}}}function hr(e){e.className=ea,e.removeAttribute("data-preserve-animation"),e.style.removeProperty("--persona-tool-anim-duration"),e.style.removeProperty("--persona-tool-anim-color"),e.style.removeProperty("--persona-tool-anim-secondary-color"),e.replaceChildren()}function ce(e,t,a){let o=e.querySelector(`:scope > .${ea}`);o||(o=C("span",ea),e.appendChild(o)),o.getAttribute(Fa)!==t.label&&(hr(o),Ba(o,t.label,a),o.setAttribute(Fa,t.label));let r=e.querySelector(`:scope > .${Da}`),s=t.detail;s?(r||(r=C("span",Da),e.appendChild(r)),r.textContent!==s&&(r.textContent=s)):r&&r.remove()}var Cr={keyword:"persona-code-token-keyword",string:"persona-code-token-string",comment:"persona-code-token-comment",number:"persona-code-token-number",tag:"persona-code-token-tag",attr:"persona-code-token-attr",property:"persona-code-token-property"},yr=15e4,Je={html:"html",htm:"html",xhtml:"html",xml:"html",svg:"html",css:"css",js:"js",jsx:"js",mjs:"js",cjs:"js",ts:"js",tsx:"js",mts:"js",cts:"js",javascript:"js",typescript:"js",ecmascript:"js",json:"json",jsonc:"json",json5:"json"};function br(e,t){let a=(e||"").trim().toLowerCase();if(a&&Je[a])return Je[a];if(t){let o=t.lastIndexOf(".");if(o>=0){let r=t.slice(o+1).toLowerCase();if(Je[r])return Je[r]}}return null}function Qe(e,t){let a=[],o=0,r=0,s=n=>{n>r&&a.push({type:"plain",value:e.slice(r,n)})};for(;o<e.length;){let n=!1;for(let f of t){f.re.lastIndex=o;let h=f.re.exec(e);if(h&&h.index===o&&h[0].length>0){s(o);let p=f.map?f.map(h[0]):f.type;a.push({type:p,value:h[0]}),o+=h[0].length,r=o,n=!0;break}}n||(o+=1)}return s(e.length),a}var wr=new Set(["abstract","any","as","async","await","boolean","break","case","catch","class","const","continue","debugger","declare","default","delete","do","else","enum","export","extends","false","finally","for","from","function","get","if","implements","import","in","instanceof","interface","keyof","let","namespace","never","new","null","number","object","of","private","protected","public","readonly","return","satisfies","set","static","string","super","switch","symbol","this","throw","true","try","type","typeof","undefined","unknown","var","void","while","yield"]),Sr=[{type:"comment",re:/\/\/[^\n]*/y},{type:"comment",re:/\/\*[\s\S]*?\*\//y},{type:"string",re:/`(?:\\[\s\S]|[^\\`])*`/y},{type:"string",re:/"(?:\\.|[^"\\\n])*"/y},{type:"string",re:/'(?:\\.|[^'\\\n])*'/y},{type:"number",re:/0[xX][0-9a-fA-F]+|(?:\d+\.?\d*|\.\d+)(?:[eE][+-]?\d+)?/y},{type:"plain",re:/[A-Za-z_$][\w$]*/y,map:e=>wr.has(e)?"keyword":"plain"}];function Oa(e){return Qe(e,Sr)}var Ar=[{type:"string",re:/"(?:\\.|[^"\\])*"/y},{type:"number",re:/-?(?:\d+\.?\d*|\.\d+)(?:[eE][+-]?\d+)?/y},{type:"plain",re:/[A-Za-z_]\w*/y,map:e=>e==="true"||e==="false"||e==="null"?"keyword":"plain"}];function vr(e){let t=Qe(e,Ar);for(let a=0;a<t.length;a+=1){if(t[a].type!=="string")continue;let o=a+1;for(;o<t.length&&t[o].value.trim()==="";)o+=1;let r=t[o];r&&r.value.replace(/^\s*/,"").startsWith(":")&&(t[a].type="property")}return t}var kr=[{type:"comment",re:/\/\*[\s\S]*?\*\//y},{type:"string",re:/"(?:\\.|[^"\\\n])*"/y},{type:"string",re:/'(?:\\.|[^'\\\n])*'/y},{type:"keyword",re:/@[A-Za-z-]+/y},{type:"number",re:/#[0-9a-fA-F]{3,8}\b/y},{type:"number",re:/-?(?:\d+\.?\d*|\.\d+)(?:[a-z%]+)?/y},{type:"plain",re:/[A-Za-z_-][\w-]*/y}];function Ia(e){let t=Qe(e,kr),a="";for(let o=0;o<t.length;o+=1){let r=t[o];if(r.type==="plain"&&/^[A-Za-z_-][\w-]*$/.test(r.value)){let n=o+1;for(;n<t.length&&t[n].value.trim()==="";)n+=1;let f=t[n];f&&f.value.replace(/^\s*/,"").startsWith(":")&&(a===""||a==="{"||a==="}"||a===";"||a===",")&&(r.type="property")}let s=r.value.replace(/\s+$/,"");s&&(a=s[s.length-1])}return t}var Mr=[{type:"tag",re:/<\/?\s*[A-Za-z][\w:-]*/y},{type:"string",re:/"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'/y},{type:"attr",re:/[A-Za-z_:@][\w:.-]*(?=\s*=)/y},{type:"attr",re:/[A-Za-z_:@][\w:.-]*/y},{type:"tag",re:/\/?>/y}];function Lr(e){let t=[],a=(s,n)=>{n&&t.push({type:s,value:n})},o=e.length,r=0;for(;r<o;){if(e.startsWith("<!--",r)){let n=e.indexOf("-->",r+4),f=n===-1?o:n+3;a("comment",e.slice(r,f)),r=f;continue}if(e[r]==="<"&&e[r+1]==="!"){let n=e.indexOf(">",r),f=n===-1?o:n+1;a("tag",e.slice(r,f)),r=f;continue}if(e[r]==="<"&&/[A-Za-z/]/.test(e[r+1]||"")){let n=e.indexOf(">",r),f=n===-1?o:n+1,h=e.slice(r,f);for(let i of Qe(h,Mr))t.push(i);r=f;let p=/^<\s*(script|style)\b/i.exec(h);if(p&&!/\/>\s*$/.test(h)){let i=p[1].toLowerCase(),x=new RegExp("</\\s*"+i+"\\s*>","i").exec(e.slice(r)),u=x?r+x.index:o,m=e.slice(r,u),c=i==="script"?Oa(m):Ia(m);for(let v of c)t.push(v);r=u}continue}let s=e.indexOf("<",r);if(s===r)a("plain",e[r]),r+=1;else{let n=s===-1?o:s;a("plain",e.slice(r,n)),r=n}}return t}function Pr(e,t){switch(t){case"html":return Lr(e);case"css":return Ia(e);case"js":return Oa(e);case"json":return vr(e)}}function Tr(e){let t=Sa(),a=C("span","persona-code-line"),o=(r,s)=>{if(!s)return;let n=Cr[r];if(n){let f=C("span",n);f.textContent=s,a.appendChild(f)}else a.appendChild(document.createTextNode(s))};for(let r of e){let s=r.value.split(`
5
5
  `);for(let n=0;n<s.length;n+=1)n>0&&(t.appendChild(a),t.appendChild(document.createTextNode(`
6
- `)),a=C("span","persona-code-line")),o(r.type,s[n])}return a.childNodes.length>0?t.appendChild(a):t.lastChild||t.appendChild(a),t}function qa(e,t,a){let o=e.length<=yr?br(t,a):null,r=o?Pr(e,o):[{type:"plain",value:e}];return Tr(r)}var{setLoader:Xn,load:Kn,provide:Rr,getSync:Ua}=Ve({fallbackImport:()=>import("./markdown-parsers-entry")}),Ye=new Set,Br=()=>{let e=[...Ye];Ye.clear();for(let t of e)try{t()}catch{}};var Na=e=>Ua()?()=>{}:(Ye.add(e),()=>{Ye.delete(e)}),aa=e=>{Rr(e),Br()},we=Ua;var Er=e=>{if(!e)return;let t={},a=e;if(a.heading){let o=a.heading;t.heading=(r,s,n)=>o({type:"heading",raw:n,depth:s,text:r,tokens:[]})}if(a.code){let o=a.code;t.code=(r,s,n)=>o({type:"code",raw:"",text:r,lang:s,escaped:n})}if(a.blockquote){let o=a.blockquote;t.blockquote=r=>o({type:"blockquote",raw:"",text:r,tokens:[]})}if(a.table){let o=a.table;t.table=(r,s)=>o({type:"table",raw:"",header:[],rows:[],align:[],headerHtml:r,bodyHtml:s})}if(a.link){let o=a.link;t.link=(r,s,n)=>o({type:"link",raw:"",href:r,title:s??null,text:n,tokens:[]})}if(a.image){let o=a.image;t.image=(r,s,n)=>o({type:"image",raw:"",href:r,title:s??null,text:n})}if(a.list){let o=a.list;t.list=(r,s,n)=>o({type:"list",raw:"",ordered:s,start:n,loose:!1,items:[],itemsHtml:r})}if(a.listitem){let o=a.listitem;t.listitem=(r,s,n)=>o({type:"list_item",raw:"",task:s,checked:n,loose:!1,text:r,tokens:[]})}if(a.paragraph){let o=a.paragraph;t.paragraph=r=>o({type:"paragraph",raw:"",text:r,tokens:[]})}if(a.codespan){let o=a.codespan;t.codespan=r=>o({type:"codespan",raw:"",text:r})}if(a.strong){let o=a.strong;t.strong=r=>o({type:"strong",raw:"",text:r,tokens:[]})}if(a.em){let o=a.em;t.em=r=>o({type:"em",raw:"",text:r,tokens:[]})}if(a.del){let o=a.del;t.del=r=>o({type:"del",raw:"",text:r,tokens:[]})}if(a.html){let o=a.html;t.html=r=>o({type:"html",raw:r,text:r})}if(a.text){let o=a.text;t.text=r=>o({type:"text",raw:r,text:r})}if(a.checkbox){let o=a.checkbox;t.checkbox=r=>o({checked:r})}return a.hr&&(t.hr=a.hr),a.br&&(t.br=a.br),t},ra=e=>{let t=null;return a=>{let o=we();if(!o)return Ee(a);if(!t){let{Marked:r}=o,s=e?.markedOptions;t=new r({gfm:s?.gfm??!0,breaks:s?.breaks??!0,pedantic:s?.pedantic,silent:s?.silent});let n=Er(e?.renderer);n&&t.use({renderer:n})}return t.parse(a)}},Va=e=>e?ra({markedOptions:e.options,renderer:e.renderer}):ra(),Jn=ra();var Ee=e=>e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;");var Dr={ALLOWED_TAGS:["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"],ALLOWED_ATTR:["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"]},Fr=/^data:image\/(?:png|jpe?g|gif|webp|bmp|x-icon|avif)/i,Hr=()=>{let e=null;return t=>{let a=we();if(!a)return Ee(t);if(!e){let{DOMPurify:o}=a;e=o(typeof window<"u"?window:void 0),e.addHook("uponSanitizeAttribute",(r,s)=>{if(s.attrName==="src"||s.attrName==="href"){let n=s.attrValue;n.toLowerCase().startsWith("data:")&&!Fr.test(n)&&(s.attrValue="",s.keepAttr=!1)}})}return e.sanitize(t,Dr)}},za=e=>e===!1?null:typeof e=="function"?e:Hr();var oa=class{constructor(){this.components=new Map;this.options=new Map}register(t,a,o){this.components.has(t)&&console.warn(`[ComponentRegistry] Component "${t}" is already registered. Overwriting.`),this.components.set(t,a),o?this.options.set(t,o):this.options.delete(t)}unregister(t){this.components.delete(t),this.options.delete(t)}get(t){return this.components.get(t)}has(t){return this.components.has(t)}getOptions(t){return this.options.get(t)}getAllNames(){return Array.from(this.components.keys())}clear(){this.components.clear(),this.options.clear()}registerAll(t){Object.entries(t).forEach(([a,o])=>{this.register(a,o)})}},Wa=new oa;var Ga=null,sa=e=>{Ga=e.componentRegistry},_a=()=>Ga;function De(e){if(!e)return"";if(e.artifactType==="markdown"){let t=e.markdown??"";return e.file?Ne(t):t}return JSON.stringify({component:e.component,props:e.props},null,2)}var na=!1;function Or(e){return"persona-artifact-vt-"+((e||"artifact").replace(/[^A-Za-z0-9_-]/g,"-").replace(/^-+/,"")||"artifact")}function ja(e,t,a,o){let r=typeof document<"u"?document.startViewTransition:void 0,s=!1;try{s=typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches}catch{s=!1}if(t!=="auto"||!e||typeof r!="function"||na||s){o();return}na=!0;let n=Or(a);e.style.setProperty("view-transition-name",n);let f=()=>{na=!1,e.style.removeProperty("view-transition-name")};try{r.call(document,()=>{o()}).finished.then(f,f)}catch{f(),o()}}var Ir="persona-font-mono persona-text-xs persona-whitespace-pre-wrap persona-break-words persona-text-persona-primary",qr="persona-text-sm persona-leading-relaxed persona-markdown-bubble";function Ur(e){let t=C("div","persona-rounded-lg persona-border persona-border-persona-border persona-p-3 persona-text-persona-primary"),a=C("div","persona-font-semibold persona-text-sm persona-mb-2");a.textContent=e.component?`Component: ${e.component}`:"Component";let o=C("pre","persona-font-mono persona-text-xs persona-whitespace-pre-wrap persona-overflow-x-auto");return o.textContent=JSON.stringify(e.props??{},null,2),t.appendChild(a),t.appendChild(o),t}function Nr(e){if(e===!1)return{enabled:!1,delayMs:0,minVisibleMs:0,timeoutMs:0,injectReadySignal:!1,label:"Starting preview...",labelDelayMs:2e3};let t=e&&typeof e=="object"?e:void 0;return{enabled:!0,delayMs:t?.delayMs??200,minVisibleMs:t?.minVisibleMs??300,timeoutMs:t?.timeoutMs??8e3,injectReadySignal:t?.injectReadySignal!==!1,label:t?.label===!1?!1:t?.label??"Starting preview...",labelDelayMs:t?.labelDelayMs??2e3,renderIndicator:t?.renderIndicator}}var Vr=220;function zr(){try{if(typeof crypto<"u"&&crypto.getRandomValues){let e=new Uint32Array(2);return crypto.getRandomValues(e),e[0].toString(36)+e[1].toString(36)}}catch{}return Math.random().toString(36).slice(2)+Math.random().toString(36).slice(2)}function Wr(e){return`
7
- <script>(function(){var d=false;var t=`+JSON.stringify(e)+";function r(){if(d)return;d=true;try{parent.postMessage({persona:'artifact-preview-ready',token:t},'*');}catch(e){}}function s(){if(typeof requestAnimationFrame==='function'){requestAnimationFrame(function(){requestAnimationFrame(r);});}setTimeout(r,150);}if(document.readyState==='complete'){s();}else{window.addEventListener('load',s);}})();</script>"}function Gr(e,t,a){let o=C("div","persona-artifact-frame-loading");if(a.renderIndicator)try{let n=a.renderIndicator({artifactId:e,config:t});if(n)return o.appendChild(n),{el:o,revealLabel:()=>{}}}catch{}let r=C("div","persona-artifact-frame-loading-indicator");r.appendChild(Ra());let s=null;return a.label!==!1&&(s=C("div","persona-artifact-frame-loading-text"),s.textContent=a.label,r.appendChild(s)),o.appendChild(r),{el:o,revealLabel:()=>{s&&s.classList.add("persona-artifact-frame-loading-text--visible")}}}function _r(e,t,a,o,r,s){let n=null,f=0,h=!1,u=new Set,i=()=>{u.forEach(b=>clearTimeout(b)),u.clear()},d=(b,L)=>{let I=setTimeout(()=>{u.delete(I),!(typeof document>"u")&&b()},L);u.add(I)},x=()=>{n&&n.parentElement&&n.remove(),n=null},p=()=>{if(n||h)return;let b=Gr(r,s,o);n=b.el,e.appendChild(n),f=Date.now(),o.label!==!1&&d(b.revealLabel,o.labelDelayMs)},m=()=>{n&&(n.classList.add("persona-artifact-frame-loading--out"),d(x,Vr))},c=()=>{a!==null?typeof window<"u"&&window.removeEventListener("message",M):t.removeEventListener("load",S)},v=()=>{if(h||(h=!0,c(),i(),!n))return;let b=Math.max(0,o.minVisibleMs-(Date.now()-f));b>0?d(m,b):m()};function M(b){if(a===null)return;let L=b.data;!L||L.persona!=="artifact-preview-ready"||L.token!==a||b.source===t.contentWindow&&v()}function S(){let b=L=>{typeof requestAnimationFrame=="function"?requestAnimationFrame(()=>L()):setTimeout(L,0)};b(()=>b(()=>v()))}return d(p,o.delayMs),d(v,o.timeoutMs),a!==null?typeof window<"u"&&window.addEventListener("message",M):t.addEventListener("load",S),()=>{h=!0,i(),c(),x()}}function et(e,t){let{config:a}=t,o=t.registry??_a()??Wa,r=t.bodyLayout,s=a.markdown?Va(a.markdown):null,n=za(a.sanitize),f=e,h=!1,u=g=>{let B=we()!==null;s&&!B&&!h&&(h=!0,Na(()=>$(f)));let H=s?s(g):Ee(g);return s&&B&&n?n(H):H},i=C("div","persona-artifact-preview-body"),d=null,x=null,p=null,m=()=>{p&&(p(),p=null),d=null,x=null},c=null,v=null,M=null,S=!1,b=()=>{c=null,v=null,M=null,S=!1},L=null,I=null,j=()=>{L=null,I=null},oe=40,Q=0,le=g=>typeof requestAnimationFrame=="function"?requestAnimationFrame(()=>g()):setTimeout(g,0),q=g=>g.scrollHeight-g.clientHeight-g.scrollTop<=oe,Z=g=>{if(!r)return;let B=g.scrollHeight-g.clientHeight>1,H=g.scrollHeight-g.clientHeight-g.scrollTop;g.classList.toggle("persona-artifact-fade-top",r.fadeTop&&B&&g.scrollTop>1),g.classList.toggle("persona-artifact-fade-bottom",r.fadeBottom&&B&&H>1)},U=g=>{Q||(Q=le(()=>{Q=0,g.scrollTop=g.scrollHeight,Z(g)}))},W=(g,B,H,y)=>{let P=!!r,O=H.id+"|"+(P?"w":"p");if(!c||M!==O||c.parentElement!==i){m(),j(),i.replaceChildren();let w=C("pre",Ir+" persona-code-pre"),D=C("code","persona-code");if(w.appendChild(D),P){let N=C("div","persona-artifact-source-window");if(N.appendChild(w),i.appendChild(N),!(r?.overflow==="clip")&&typeof N.addEventListener=="function"){let J=()=>N.scrollHeight-N.clientHeight>1;N.addEventListener("scroll",()=>{q(N)&&(S=!1),Z(N)},{passive:!0}),N.addEventListener("wheel",ee=>{J()&&ee.deltaY<0&&(S=!0)},{passive:!0}),N.addEventListener("touchmove",()=>{J()&&(S=!0)},{passive:!0})}c=N}else i.appendChild(w),c=w;v=D,M=O}let T=P?c:null;T&&(T.classList.toggle("persona-artifact-source-window--fixed",y),T.classList.toggle("persona-artifact-source-window--clip",y&&r?.overflow==="clip"));let E=T?q(T):!0;if(v.replaceChildren(qa(g,B?.language,B?.path)),T){let w=H.status!=="complete";y&&w&&r?.followOutput&&!S&&E?U(T):w||(S=!1),Z(T)}},G=g=>{m(),b(),j(),i.replaceChildren();let B=C("div",qr);B.innerHTML=u(g),i.appendChild(B)},Y=g=>{let B=g.id,H=a.features?.artifacts,y=be(g,H,"status-body");if(L&&I===B&&L.parentElement===i){let T=L.querySelector(".persona-artifact-status-view-text");T&&ce(T,y,H);return}m(),b(),i.replaceChildren();let P=C("div","persona-artifact-status-view"),O=C("div","persona-artifact-status-view-text");ce(O,y,H),P.appendChild(O),i.appendChild(P),L=P,I=B},$=g=>{f=g;let B=t.resolveViewMode?.(g)??r?.viewMode??"rendered",H=g.artifactType==="markdown"?g.file:void 0,y=g.status!=="complete";y||ye(g.id);let P=y?r?.streamingHeight:r?.completeHeight,O=!!r&&typeof P=="number";if(r?.streamingView==="status"&&y){Y(g);return}if(H){let E=Ne(g.markdown??""),w=ue(H),D=a.features?.artifacts?.filePreview?.enabled!==!1;if(!y&&B==="rendered"&&D&&(w==="html"||w==="svg")){let xe=g.id+"\0"+E;if(d&&x===xe&&d.parentElement===i)return;b(),j(),m(),i.replaceChildren();let J=a.features?.artifacts?.filePreview,ee=J?.iframeSandbox??"allow-scripts";!J?.dangerouslyAllowSameOrigin&&ee.includes("allow-same-origin")&&(console.warn("[AgentWidget] Stripped allow-same-origin from filePreview.iframeSandbox: it lets artifact content run with the page origin. Set filePreview.dangerouslyAllowSameOrigin to keep it."),ee=ee.split(/\s+/).filter(F=>F&&F!=="allow-same-origin").join(" "));let ge=Nr(J?.loading),_=C("div","persona-artifact-frame"),te=C("iframe","persona-artifact-iframe");te.setAttribute("sandbox",ee),te.setAttribute("data-artifact-id",g.id);let Se=null;ge.enabled&&ge.injectReadySignal?(Se=zr(),te.srcdoc=E+Wr(Se)):te.srcdoc=E,_.appendChild(te),i.appendChild(_),ge.enabled&&(p=_r(_,te,Se,ge,g.id,a)),d=_,x=xe;return}if(m(),!y&&w==="markdown"&&B==="rendered"){G(E);return}W(E,{language:H.language,path:H.path},g,O);return}if(g.artifactType==="markdown"){if(B==="source"){m(),W(g.markdown??"",void 0,g,O);return}G(g.markdown??"");return}m(),b(),j(),i.replaceChildren();let T=g.component?o.get(g.component):void 0;if(T){let w={message:{id:g.id,role:"assistant",content:"",createdAt:new Date().toISOString()},config:a,updateProps:()=>{}};try{let D=T(g.props??{},w);if(D){i.appendChild(D);return}}catch{}}i.appendChild(Ur(g))};return $(e),{el:i,update(g){$(g)},destroy(){m()}}}function Xa(e,t){let a=t.orientation??"horizontal",o=a==="vertical"?"ArrowUp":"ArrowLeft",r=a==="vertical"?"ArrowDown":"ArrowRight";e.setAttribute("role","tablist");let s=[],n=!1,f=d=>{typeof d.scrollIntoView=="function"&&d.scrollIntoView({block:"nearest",inline:"nearest"})},h=d=>{let x=d;return s.findIndex(p=>p===x||p.contains(x))},u=d=>{let x=h(d.target);if(x<0)return;let p=x;if(d.key===r)p=Math.min(x+1,s.length-1);else if(d.key===o)p=Math.max(x-1,0);else if(d.key==="Home")p=0;else if(d.key==="End")p=s.length-1;else return;d.preventDefault(),p!==x&&t.onSelect(p)},i=d=>{let x=h(d.target);x>=0&&f(s[x])};return e.addEventListener("keydown",u),e.addEventListener("focusin",i),{beforeRender(){n=typeof document<"u"&&e.contains(document.activeElement)},render(d,x){if(s=d,d.forEach((p,m)=>{p.setAttribute("role","tab");let c=m===x;p.setAttribute("aria-selected",c?"true":"false"),p.tabIndex=c||x<0&&m===0?0:-1}),n){let p=(x>=0?d[x]:void 0)??d[0];p&&typeof p.focus=="function"&&(f(p),p.focus())}},destroy(){e.removeEventListener("keydown",u),e.removeEventListener("focusin",i)}}}function la(e,t){let a=e.features?.artifacts?.layout,r=(a?.toolbarPreset??"default")==="document",s=a?.toolbarTitle??"Artifacts",n=a?.closeButtonLabel??"Close",f=a?.panePadding?.trim(),h=a?.tabFadeSize?.trim(),u=l=>({start:l===!1?!1:typeof l=="object"&&l?l.start!==!1:!0,end:l===!1?!1:typeof l=="object"&&l?l.end!==!1:!0}),{start:i,end:d}=u(a?.tabFade),x=typeof document<"u"?C("div","persona-artifact-backdrop persona-fixed persona-inset-0 persona-z-[55] persona-bg-black/30 persona-hidden md:persona-hidden"):null,p=()=>{x?.classList.add("persona-hidden"),m.classList.remove("persona-artifact-drawer-open"),Z?.closeMenu()};x&&x.addEventListener("click",()=>{p(),t.onDismiss?.()});let m=C("aside","persona-artifact-pane persona-flex persona-flex-col persona-min-h-0 persona-min-w-0 persona-bg-persona-surface persona-text-persona-primary persona-border-l persona-border-persona-border");m.setAttribute("data-persona-theme-zone","artifact-pane"),r&&m.classList.add("persona-artifact-pane-document");let c=C("div","persona-artifact-toolbar persona-flex persona-items-center persona-justify-between persona-gap-2 persona-px-2 persona-py-2 persona-border-b persona-border-persona-border persona-shrink-0");c.setAttribute("data-persona-theme-zone","artifact-toolbar"),r&&c.classList.add("persona-artifact-toolbar-document");let v=C("span","persona-text-xs persona-font-medium persona-truncate");v.textContent=s;let M=V({icon:"x",label:n});M.addEventListener("click",()=>{p(),t.onDismiss?.()});let S="rendered",b=Ze({items:[{id:"rendered",icon:"eye",label:"Rendered view",className:r?"persona-artifact-doc-icon-btn persona-artifact-view-btn":void 0},{id:"source",icon:"code-xml",label:"Source",className:r?"persona-artifact-doc-icon-btn persona-artifact-code-btn":void 0}],selectedId:"rendered",className:"persona-artifact-toggle-group persona-shrink-0",onSelect:l=>{S=l==="source"?"source":"rendered",Ie()}}),L=C("div","persona-flex persona-items-center persona-gap-1 persona-shrink-0"),I=a?.documentToolbarShowCopyLabel===!0,j=a?.documentToolbarShowCopyChevron===!0,oe=a?.documentToolbarCopyMenuItems,Q=!!(j&&oe&&oe.length>0),le=null,q,Z=null;if(r&&(I||j)&&!Q){if(q=I?me({icon:"copy",label:"Copy",iconSize:14,className:"persona-artifact-doc-copy-btn"}):V({icon:"copy",label:"Copy",className:"persona-artifact-doc-copy-btn"}),j){let l=ne(Me,14,"currentColor",2);l&&q.appendChild(l)}}else r&&Q?(Z=Ta({label:"Copy",icon:"copy",iconSize:14,iconOnly:!I,primaryClassName:"persona-artifact-doc-copy-btn",chevronLabel:"More copy options",chevronClassName:"persona-artifact-doc-copy-menu-chevron persona-artifact-doc-icon-btn",menuItems:(oe??[]).map(l=>({id:l.id,label:l.label})),position:"bottom-right",portal:()=>m.closest("[data-persona-root]")??document.body,onSelect:l=>{T(l)}}),le=Z.element,q=Z.primaryButton):r?q=V({icon:"copy",label:"Copy",className:"persona-artifact-doc-icon-btn"}):(q=V({icon:"copy",label:"Copy"}),a?.showCopyButton!==!0&&q.classList.add("persona-hidden"));let U=r?V({icon:"refresh-cw",label:"Refresh",className:"persona-artifact-doc-icon-btn"}):V({icon:"refresh-cw",label:"Refresh"});a?.onDocumentToolbarRefresh||U.classList.add("persona-hidden");let W=r?V({icon:"x",label:n,className:"persona-artifact-doc-icon-btn"}):V({icon:"x",label:n}),G=V({icon:"maximize",label:"Expand artifacts panel",className:"persona-artifact-expand-btn"+(r?" persona-artifact-doc-icon-btn":""),onClick:()=>t.onToggleExpand?.()});a?.showExpandToggle!==!0&&G.classList.add("persona-hidden");let Y=C("div","persona-flex persona-items-center persona-gap-1 persona-shrink-0 persona-artifact-toolbar-custom-actions"),$=e.features?.artifacts?.toolbarActions??[],g=()=>{let l=F.find(se=>se.id===X)??F[F.length-1],k=l?.id??null,A=l?.artifactType==="markdown"?l.markdown??"":"",R=l?JSON.stringify({component:l.component,props:l.props},null,2):"",{filename:z,mime:K,content:fe}=Ae({title:l?.title,markdown:l?.markdown??"",file:l?.file});return{markdown:A,jsonPayload:R,id:k,file:l?.file,suggestedFilename:z,mime:K,content:fe}},B=()=>{let{suggestedFilename:l,mime:k,content:A}=g();A&&ve({filename:l,mime:k,content:A})},H=l=>{let{id:k,...A}=g();return{actionId:l,artifactId:k,...A}},y=async()=>{let l=F.find(k=>k.id===X)??F[F.length-1];try{return await navigator.clipboard.writeText(De(l)),!0}catch{return!1}},P=null,O=()=>{P?.();let l=q.querySelector("svg"),k=Number(l?.getAttribute("width"))||16,A=ne(ke,k,"currentColor",2);if(!l||!A)return;l.replaceWith(A);let R=q.querySelector("span");R&&(R.textContent="Copied");let z=setTimeout(()=>P?.(),2e3);P=()=>{clearTimeout(z),A.replaceWith(l),R&&(R.textContent="Copy"),P=null}};q.addEventListener("click",async()=>{let l=a?.onDocumentToolbarCopyMenuSelect;if(l&&Q){try{if(await l(H("primary"))===!1){await y()&&O();return}O()}catch{}return}await y()&&O()});async function T(l){let k=a?.onDocumentToolbarCopyMenuSelect;try{if(k&&await k(H(l))!==!1)return;if(l==="download"){B();return}let{markdown:A,jsonPayload:R}=g();l==="markdown"||l==="md"?await navigator.clipboard.writeText(A):l==="json"||l==="source"?await navigator.clipboard.writeText(R):await navigator.clipboard.writeText(A||R),O()}catch{}}U.addEventListener("click",async()=>{try{await a?.onDocumentToolbarRefresh?.()}catch{}Ie()}),W.addEventListener("click",()=>{p(),t.onDismiss?.()});let E=C("span","persona-min-w-0 persona-flex-1 persona-text-xs persona-font-medium persona-text-persona-primary persona-truncate persona-text-center md:persona-text-left");if(r)c.replaceChildren(),le?L.append(le,U,W):L.append(q,U,W),L.insertBefore(Y,W),L.insertBefore(G,W),c.append(b.element,E,L);else{let l=C("div","persona-flex persona-items-center persona-gap-1 persona-shrink-0");l.append(q,Y,G,M),c.appendChild(v),c.appendChild(l)}f&&(c.style.paddingLeft=f,c.style.paddingRight=f);let w=C("div","persona-artifact-list persona-shrink-0 persona-flex persona-gap-1 persona-overflow-x-auto persona-p-2 persona-border-b persona-border-persona-border");h&&w.style.setProperty("--persona-artifact-tab-fade-size",h);let D=e.features?.artifacts?.renderTabBar,N=C("div","persona-artifact-tab-custom persona-shrink-0 persona-border-b persona-border-persona-border persona-hidden"),xe=Xa(w,{onSelect:l=>t.onSelect(F[l].id)}),J=l=>{let k=l.scrollWidth-l.clientWidth,A=k>1,R=Math.abs(l.scrollLeft);l.classList.toggle("persona-artifact-tab-fade-start",i&&A&&R>1),l.classList.toggle("persona-artifact-tab-fade-end",d&&A&&R<k-1)},ee=0,ge=()=>{if(ee)return;let l=()=>{ee=0,J(w)};ee=typeof requestAnimationFrame=="function"?requestAnimationFrame(l):setTimeout(l,0)};w.addEventListener("scroll",()=>ge(),{passive:!0}),typeof ResizeObserver<"u"&&new ResizeObserver(()=>J(w)).observe(w);let _=C("div","persona-artifact-content persona-flex-1 persona-min-h-0 persona-overflow-y-auto persona-p-3"),te=()=>{_.scrollLeft=0},Se=()=>{typeof requestAnimationFrame=="function"?requestAnimationFrame(te):setTimeout(te,0)};if(f){for(let l of[w,N])l.style.paddingLeft=f,l.style.paddingRight=f;_.style.padding=f}m.appendChild(c),m.appendChild(w),m.appendChild(N),m.appendChild(_);let F=[],X=null,tt=!1,pa=!1,at=!0,rt=!1,ua=null,ot="",ae=null,Oe=!1,Ya=l=>l.artifactType==="markdown"&&!!l.file||r?S:"rendered",ma=l=>{r||(l&&!Oe?(c.insertBefore(b.element,v),Oe=!0):!l&&Oe&&(b.element.remove(),Oe=!1))},ca=()=>X&&F.find(l=>l.id===X)||F[F.length-1],xa=()=>{let l=Be(ca());if(!l){Y.replaceChildren();return}let k=$.filter(A=>A.visible===void 0||A.visible(l)).map(A=>Ce(A,{documentChrome:r,onClick:()=>{let R=Be(ca());if(R)try{Promise.resolve(A.onClick(R)).catch(()=>{})}catch{}}}));Y.replaceChildren(...k)},Ie=()=>{xa();let l=r&&F.length<=1,k=!!D;if(w.classList.toggle("persona-hidden",l||k),N.classList.toggle("persona-hidden",l||!k),k&&D){let z=F.map(K=>K.id).join("|")+" "+(X??"");if(z!==ot){ot=z;let K=D({records:F,selectedId:X,onSelect:t.onSelect});N.firstElementChild!==K&&N.replaceChildren(K)}}else{xe.beforeRender(),w.replaceChildren();let z=[],K=-1;for(let[fe,se]of F.entries()){let ie=C("button","persona-artifact-tab persona-shrink-0 persona-rounded-lg persona-px-2 persona-py-1 persona-text-xs persona-border persona-border-transparent persona-text-persona-primary");ie.type="button";let st=se.artifactType==="markdown"?se.file:void 0,Ca=st?re(st.path):se.title||se.id.slice(0,8),ya=st?.path||se.title||Ca;ie.textContent=Ca,ie.title=ya,ie.setAttribute("aria-label",ya),se.id===X&&(ie.classList.add("persona-bg-persona-container","persona-border-persona-border"),K=fe),ie.addEventListener("click",()=>t.onSelect(se.id)),w.appendChild(ie),z.push(ie)}if(xe.render(z,K),K>=0&&X!==ua){ua=X;let fe=z[K];typeof fe.scrollIntoView=="function"&&fe.scrollIntoView({block:"nearest",inline:"nearest"})}J(w)}let A=X&&F.find(z=>z.id===X)||F[F.length-1];if(!A){_.replaceChildren(),ae?.destroy(),ae=null,ma(!1);return}let R=A.artifactType==="markdown"?A.file:void 0;if(ma(!!R&&ue(R)!=="other"),r){let z=R?de(R):A.artifactType==="markdown"?"MD":A.component??"Component",K=(A.title||"Document").trim(),fe=R?re(R.path):K.replace(/\s*·\s*MD\s*$/i,"").trim()||"Document";E.textContent=`${fe} \xB7 ${z}`}else v.textContent=R?re(R.path):s;ae?(ae.el.parentElement!==_&&_.replaceChildren(ae.el),ae.update(A)):(ae=et(A,{config:e,resolveViewMode:Ya}),_.replaceChildren(ae.el)),_.classList.toggle("persona-artifact-content-flush",!!_.querySelector(".persona-code-pre"))},ga=()=>{let l=F.length>0;if(m.classList.toggle("persona-hidden",!l),x){let R=((typeof m.closest=="function"?m.closest("[data-persona-root]"):null)?.classList.contains("persona-artifact-narrow-host")??!1)||typeof window<"u"&&window.matchMedia("(max-width: 640px)").matches;l&&R&&tt?(x.classList.remove("persona-hidden"),m.classList.add("persona-artifact-drawer-open")):(x.classList.add("persona-hidden"),m.classList.remove("persona-artifact-drawer-open"))}},ha=()=>{rt=!1,Ie(),ga()};return{element:m,backdrop:x,update(l){let k=l.selectedId??l.artifacts[l.artifacts.length-1]?.id??null,A=k!==X;F=l.artifacts,X=k,F.length>0&&(tt=!0),rt=!0,at&&ha(),A&&te()},setMobileOpen(l){tt=l,!l&&x?(x.classList.add("persona-hidden"),m.classList.remove("persona-artifact-drawer-open")):ga()},setExpanded(l){l!==pa&&(pa=l,Se());let k=ne(l?Te:Pe,16,"currentColor",2);k&&G.replaceChildren(k);let A=l?"Collapse artifacts panel":"Expand artifacts panel";G.setAttribute("aria-label",A),G.title=A},setExpandToggleVisible(l){G.classList.toggle("persona-hidden",!l)},setCopyButtonVisible(l){r||q.classList.toggle("persona-hidden",!l)},setRefreshButtonVisible(l){U.classList.toggle("persona-hidden",!l)},setCustomActions(l){$=l,xa()},setTabFade(l){let k=u(l);k.start===i&&k.end===d||(i=k.start,d=k.end,J(w))},setRenderTabBar(l){l!==D&&(D=l,ot="",Ie())},setVisible(l){l!==at&&(at=l,l&&rt&&ha())},destroy(){ae?.destroy(),ae=null}}}function Ka(e,t){let a=e.file&&typeof e.file=="object"&&!Array.isArray(e.file)?e.file:void 0,o=typeof e.title=="string"&&e.title?e.title:"Untitled artifact",r=a?re(a.path):o,s=typeof e.artifactId=="string"?e.artifactId:"",n=e.status==="streaming"?"streaming":"complete",f=typeof e.artifactType=="string"?e.artifactType:"markdown",h=e.presentation&&typeof e.presentation=="object"&&!Array.isArray(e.presentation)?e.presentation:void 0,u=a?de(a):f==="component"?"Component":"Document",i=document.createElement("div");i.className="persona-artifact-card persona-flex persona-w-full persona-max-w-full persona-items-center persona-gap-3 persona-px-4 persona-py-3",i.tabIndex=0,i.setAttribute("role","button"),i.setAttribute("aria-label",`Open ${r} in artifact panel`),s&&i.setAttribute("data-open-artifact",s);let d=document.createElement("div");d.className="persona-flex persona-h-10 persona-w-10 persona-flex-shrink-0 persona-items-center persona-justify-center persona-rounded-lg",d.style.border="1px solid var(--persona-border, #e5e7eb)",d.style.color="var(--persona-muted, #9ca3af)",d.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z"/><polyline points="14 2 14 8 20 8"/></svg>';let x=document.createElement("div");x.className="persona-min-w-0 persona-flex-1 persona-flex persona-flex-col persona-gap-0.5";let p=document.createElement("div");p.className="persona-truncate persona-text-sm persona-font-medium",p.style.color="var(--persona-text, #1f2937)",p.textContent=r;let m=document.createElement("div");if(m.className="persona-text-xs persona-flex persona-items-center persona-gap-1.5",m.style.color="var(--persona-muted, #9ca3af)",n==="streaming"){let c=t?.config?.features?.artifacts,v={id:s,artifactType:f==="component"?"component":"markdown",title:o,status:"streaming",...typeof e.markdown=="string"?{markdown:e.markdown}:{},...a?{file:a}:{},...h?{presentation:h}:{}},M=be(v,c,"card");ce(m,M,c)}else s&&ye(s),m.textContent=u;if(x.append(p,m),i.append(d,x),n==="complete"){let c=t?.config?.features?.artifacts?.cardActions;if(c&&c.length>0){let M={artifactId:s||null,title:r,artifactType:f,markdown:typeof e.markdown=="string"?e.markdown:void 0,file:a};for(let S of c)try{if(S.visible===void 0||S.visible(M)){let b=Ce(S);b.setAttribute("data-artifact-custom-action",S.id),b.className=`${b.className} persona-flex-shrink-0`,i.append(b)}}catch{}}let v=me({label:"Download",className:"persona-flex-shrink-0"});v.title=`Download ${r}`,v.setAttribute("data-download-artifact",s),i.append(v)}return i}var Fe=(e,t)=>{let a=t?.config?.features?.artifacts?.renderCard;if(a){let o=typeof e.title=="string"&&e.title?e.title:"Untitled artifact",r=typeof e.artifactId=="string"?e.artifactId:"",s=e.status==="streaming"?"streaming":"complete",n=typeof e.artifactType=="string"?e.artifactType:"markdown",f=a({artifact:{artifactId:r,title:o,artifactType:n,status:s},config:t.config,defaultRenderer:()=>Ka(e,t)});if(f)return f}return Ka(e,t)};var pe=new WeakMap;function fa(e,t,a){if(t.length===0)return;let o=new Map(t.map(r=>[r.id,r]));e.querySelectorAll("[data-artifact-inline]").forEach(r=>{let s=pe.get(r);if(!s)return;let n=o.get(r.getAttribute("data-artifact-inline")??"");n&&s(n,a)})}function ia(e){return pe.has(e)}function jr(e){let t=typeof e.artifactId=="string"?e.artifactId:"",a=typeof e.title=="string"&&e.title?e.title:void 0,o=e.status==="streaming"?"streaming":"complete",r=e.presentation&&typeof e.presentation=="object"&&!Array.isArray(e.presentation)?e.presentation:void 0;if(e.artifactType==="component"){let n=e.componentProps,f=n&&typeof n=="object"&&!Array.isArray(n)?n:{};return{id:t,artifactType:"component",title:a,status:o,component:typeof e.component=="string"?e.component:"",props:f,...r?{presentation:r}:{}}}let s=e.file&&typeof e.file=="object"&&!Array.isArray(e.file)?e.file:void 0;return{id:t,artifactType:"markdown",title:a,status:o,markdown:typeof e.markdown=="string"?e.markdown:"",...s?{file:s}:{},...r?{presentation:r}:{}}}function Za(e){let t=e.artifactType==="markdown"?e.file:void 0,a=t?re(t.path):e.title&&e.title.trim()?e.title:"Untitled artifact",o=t?de(t):e.artifactType==="component"?"Component":"Document";return{title:a,typeLabel:o}}function Xr(e){let t={artifactId:e.id,title:e.title??"",status:e.status,artifactType:e.artifactType};return e.artifactType==="markdown"&&(typeof e.markdown=="string"&&(t.markdown=e.markdown),e.file&&(t.file=e.file)),t}var $a=180,Kr=240,Zr=.8,$r=300,Jr=500,Qr="cubic-bezier(0.2, 0, 0, 1)",Ja=240,Yr=.35;function eo(e,t,a){let{swap:o,onSettled:r}=a,s=!1;try{s=typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches}catch{s=!1}if(!t||!e.isConnected||s||typeof e.animate!="function"){o(),r();return}e.style.height=`${t}px`,e.style.overflow="hidden";let n=[];for(let f of Array.from(e.children))f instanceof HTMLElement&&n.push(f.animate([{opacity:1},{opacity:0}],{duration:$a,easing:"ease-out",fill:"forwards"}));window.setTimeout(()=>{for(let M of n)M.cancel();o();let f=()=>{e.style.removeProperty("height"),e.style.removeProperty("overflow")};if(!e.isConnected){f(),r();return}e.style.height="auto";let h=e.getBoundingClientRect().height;if(e.style.height=`${t}px`,!h||Math.abs(h-t)<1){f(),r();return}let u=Math.abs(t-h),i=Math.round(Math.min(Jr,Math.max($r,Kr+u*Zr))),d=Math.round(i*Yr),x=e.firstElementChild instanceof HTMLElement?e.firstElementChild:null,p=x?x.animate([{opacity:0},{opacity:1}],{duration:Ja,delay:d,easing:"ease-out",fill:"backwards"}):null,m=e.animate([{height:`${t}px`},{height:`${h}px`}],{duration:i,easing:Qr});e.style.height=`${h}px`;let c=!1,v=()=>{c||(c=!0,f(),r())};Promise.allSettled([m.finished,p?.finished].filter(Boolean)).then(v),window.setTimeout(v,Math.max(i,d+Ja)+120)},$a)}function to(e){let t=e?.inlineChrome;if(t===!1)return{chromeEnabled:!1,showCopy:!1,showExpand:!1,showViewToggle:!1};let a=typeof t=="object"?t:void 0;return{chromeEnabled:!0,showCopy:a?.showCopy!==!1,showExpand:a?.showExpand!==!1,showViewToggle:a?.showViewToggle!==!1}}var He="--persona-artifact-inline-body-height";function ao(e){let t=e?.inlineBody,a=t?.streamingView==="status"?"status":"source",o=t?.viewMode==="source"?"source":"rendered",r=320,s=320,n=t?.height;typeof n=="number"||n==="auto"?(r=n,s=n):n&&typeof n=="object"&&(r=n.streaming??320,s=n.complete??320);let f=t?.overflow==="clip"?"clip":"scroll",h=f==="clip"?!1:t?.followOutput!==!1,u,i,d=t?.fadeMask;d===!0?(u=!0,i=!0):d===!1?(u=!1,i=!1):d&&typeof d=="object"?(u=d.top===!0,i=d.bottom===!0):f==="clip"?(u=!1,i=!0):(u=!0,i=!0);let x=t?.transition==="none"?"none":"auto",p=t?.completeDisplay==="card"?"card":"inline";return{streamingView:a,viewMode:o,streamingHeight:r,completeHeight:s,followOutput:h,overflow:f,fadeTop:u,fadeBottom:i,transition:x,completeDisplay:p}}function Qa(e,t){let a=jr(e),o=t.config?.features?.artifacts,{chromeEnabled:r,showCopy:s,showExpand:n,showViewToggle:f}=to(o),h=o?.inlineActions??[],u=ao(o),i=u.completeDisplay==="card",d=null,x=a,p=C("div","persona-artifact-inline persona-w-full persona-max-w-full");p.setAttribute("data-persona-theme-zone","artifact-inline"),a.id&&p.setAttribute("data-artifact-inline",a.id);let m=y=>Fe(Xr(y),t),c=null,v=y=>{c?.destroy(),c=null,p.classList.add("persona-artifact-inline--card"),p.style.removeProperty(He),p.replaceChildren(m(y)),pe.set(p,P=>{p.replaceChildren(m(P))})};if(i&&a.status==="complete")return v(a),p;let M=et(a,{config:t.config,bodyLayout:u,resolveViewMode:()=>d??u.viewMode});c=M;let S=C("div","persona-artifact-inline-body");S.appendChild(M.el);let b=y=>{let P=y.status!=="complete",O=P?u.streamingHeight:u.completeHeight,T=typeof O=="number";T?p.style.setProperty(He,`${O}px`):p.style.removeProperty(He);let E=!!M.el.querySelector(".persona-code-pre"),w=!!M.el.querySelector("iframe, .persona-artifact-source-window--fixed, .persona-artifact-status-view");S.classList.toggle("persona-artifact-content-flush",E),S.classList.toggle("persona-artifact-inline-body--sized",T&&w),S.classList.toggle("persona-artifact-inline-body--cap",!P&&!w&&typeof u.completeHeight=="number")},L=a.status,I=(y,P)=>{L!=="complete"&&y.status==="complete"?(typeof u.completeHeight=="number"?p.style.setProperty(He,`${u.completeHeight}px`):p.style.removeProperty(He),ja(S,P?.suppressTransition?"none":u.transition,y.id,()=>{M.update(y),b(y)})):M.update(y),b(y),L=y.status};b(a);let j=u.overflow==="clip"&&n&&!!a.id;if(j&&(S.setAttribute("data-expand-artifact-inline",a.id),S.setAttribute("role","button"),S.setAttribute("tabindex","0"),S.classList.add("persona-cursor-pointer"),S.setAttribute("aria-label",`Open ${Za(a).title} in panel`)),!r)return p.appendChild(S),pe.set(p,I),p;let oe=C("div","persona-artifact-inline-chrome");oe.setAttribute("data-persona-theme-zone","artifact-inline-chrome");let Q=C("div","persona-artifact-inline-chrome-lead"),le=C("span","persona-flex persona-items-center persona-flex-shrink-0"),q=ne(Le,16,"currentColor",2);q&&le.appendChild(q);let Z=C("span","persona-artifact-inline-title persona-truncate persona-min-w-0"),U=C("span","persona-artifact-inline-type");Q.append(le,Z,U);let W=C("div","persona-artifact-inline-chrome-actions"),G=C("span","persona-flex persona-items-center persona-gap-1"),Y=()=>d??u.viewMode,$=f?Ze({items:[{id:"rendered",icon:"eye",label:"Rendered view",className:"persona-artifact-doc-icon-btn persona-artifact-view-btn"},{id:"source",icon:"code-xml",label:"Source",className:"persona-artifact-doc-icon-btn persona-artifact-code-btn"}],selectedId:Y(),className:"persona-artifact-toggle-group persona-flex-shrink-0",onSelect:y=>{let P=y==="source"?"source":"rendered";P!==Y()&&(d=P,M.update(x),b(x))}}):null,g=s?V({icon:"copy",label:"Copy",className:"persona-artifact-doc-icon-btn persona-flex-shrink-0"}):null;g&&a.id&&g.setAttribute("data-copy-artifact",a.id);let B=n?V({icon:"maximize",label:"Open in panel",className:"persona-artifact-doc-icon-btn persona-flex-shrink-0"}):null;B&&a.id&&B.setAttribute("data-expand-artifact-inline",a.id),W.appendChild(G),$&&W.appendChild($.element),g&&W.appendChild(g),B&&W.appendChild(B),oe.append(Q,W),p.append(oe,S);let H=y=>{let{title:P,typeLabel:O}=Za(y);Z.textContent=P,Z.title=P,j&&S.setAttribute("aria-label",`Open ${P} in panel`);let T=y.status!=="complete";if(T){U.classList.contains("persona-artifact-inline-status")||(U.className="persona-artifact-inline-status",U.removeAttribute("data-preserve-animation"),U.replaceChildren());let E=be(y,o,"inline-chrome");ce(U,E,o)}else ye(y.id),U.className="persona-artifact-inline-type",U.removeAttribute("data-preserve-animation"),U.replaceChildren(),U.textContent=O;if(g&&g.classList.toggle("persona-hidden",T),$){let E=y.artifactType==="markdown"?y.file:void 0,w=!1;if(!T&&E&&u.viewMode!=="source"){let D=ue(E);D==="markdown"?w=!0:(D==="html"||D==="svg")&&(w=o?.filePreview?.enabled!==!1)}$.element.classList.toggle("persona-hidden",!w),$.setSelected(Y())}if(G.replaceChildren(),!T&&h.length>0){let E=Be(y);if(E)for(let w of h)try{if(w.visible===void 0||w.visible(E)){let D=Ce(w,{documentChrome:!0});D.setAttribute("data-artifact-custom-action",w.id),D.classList.add("persona-flex-shrink-0"),G.appendChild(D)}}catch{}}};return H(a),pe.set(p,(y,P)=>{if(i&&L!=="complete"&&y.status==="complete"){let O=p.isConnected?p.getBoundingClientRect().height:0;L="complete";let T=y,E=!1,w=D=>{T=D,E=!0};pe.set(p,w),eo(p,O,{swap:()=>{v(T),E=!1,pe.set(p,w)},onSettled:()=>{E?v(T):pe.set(p,D=>{p.replaceChildren(m(D))})}});return}(y.status!=="complete"||y.id!==x.id)&&(d=null),x=y,I(y,P),H(y)}),p}var da=(e,t)=>{let a=t?.config?.features?.artifacts?.renderInline;if(a){let o=typeof e.title=="string"&&e.title?e.title:"Untitled artifact",r=typeof e.artifactId=="string"?e.artifactId:"",s=e.status==="streaming"?"streaming":"complete",n=typeof e.artifactType=="string"?e.artifactType:"markdown",f=a({artifact:{artifactId:r,title:o,artifactType:n,status:s},config:t.config,defaultRenderer:()=>Qa(e,t)});if(f)return f}return Qa(e,t)};0&&(module.exports={PersonaArtifactCard,PersonaArtifactInline,__provideMarkdownParsers,__setIconsExtraLoader,artifactCopyText,createArtifactPane,downloadInfoFor,hasLiveInlineArtifactBlock,initArtifactsUi,triggerArtifactDownload,updateInlineArtifactBlocks});
6
+ `)),a=C("span","persona-code-line")),o(r.type,s[n])}return a.childNodes.length>0?t.appendChild(a):t.lastChild||t.appendChild(a),t}function qa(e,t,a){let o=e.length<=yr?br(t,a):null,r=o?Pr(e,o):[{type:"plain",value:e}];return Tr(r)}var{setLoader:Xn,load:Kn,provide:Rr,getSync:Ua}=Ve({fallbackImport:()=>import("./markdown-parsers-entry")}),Ye=new Set,Er=()=>{let e=[...Ye];Ye.clear();for(let t of e)try{t()}catch{}};var Na=e=>Ua()?()=>{}:(Ye.add(e),()=>{Ye.delete(e)}),aa=e=>{Rr(e),Er()},we=Ua;var Br=e=>{if(!e)return;let t={},a=e;if(a.heading){let o=a.heading;t.heading=(r,s,n)=>o({type:"heading",raw:n,depth:s,text:r,tokens:[]})}if(a.code){let o=a.code;t.code=(r,s,n)=>o({type:"code",raw:"",text:r,lang:s,escaped:n})}if(a.blockquote){let o=a.blockquote;t.blockquote=r=>o({type:"blockquote",raw:"",text:r,tokens:[]})}if(a.table){let o=a.table;t.table=(r,s)=>o({type:"table",raw:"",header:[],rows:[],align:[],headerHtml:r,bodyHtml:s})}if(a.link){let o=a.link;t.link=(r,s,n)=>o({type:"link",raw:"",href:r,title:s??null,text:n,tokens:[]})}if(a.image){let o=a.image;t.image=(r,s,n)=>o({type:"image",raw:"",href:r,title:s??null,text:n})}if(a.list){let o=a.list;t.list=(r,s,n)=>o({type:"list",raw:"",ordered:s,start:n,loose:!1,items:[],itemsHtml:r})}if(a.listitem){let o=a.listitem;t.listitem=(r,s,n)=>o({type:"list_item",raw:"",task:s,checked:n,loose:!1,text:r,tokens:[]})}if(a.paragraph){let o=a.paragraph;t.paragraph=r=>o({type:"paragraph",raw:"",text:r,tokens:[]})}if(a.codespan){let o=a.codespan;t.codespan=r=>o({type:"codespan",raw:"",text:r})}if(a.strong){let o=a.strong;t.strong=r=>o({type:"strong",raw:"",text:r,tokens:[]})}if(a.em){let o=a.em;t.em=r=>o({type:"em",raw:"",text:r,tokens:[]})}if(a.del){let o=a.del;t.del=r=>o({type:"del",raw:"",text:r,tokens:[]})}if(a.html){let o=a.html;t.html=r=>o({type:"html",raw:r,text:r})}if(a.text){let o=a.text;t.text=r=>o({type:"text",raw:r,text:r})}if(a.checkbox){let o=a.checkbox;t.checkbox=r=>o({checked:r})}return a.hr&&(t.hr=a.hr),a.br&&(t.br=a.br),t},ra=e=>{let t=null;return a=>{let o=we();if(!o)return Be(a);if(!t){let{Marked:r}=o,s=e?.markedOptions;t=new r({gfm:s?.gfm??!0,breaks:s?.breaks??!0,pedantic:s?.pedantic,silent:s?.silent});let n=Br(e?.renderer);n&&t.use({renderer:n})}return t.parse(a)}},Va=e=>e?ra({markedOptions:e.options,renderer:e.renderer}):ra(),Jn=ra();var Be=e=>e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;");var Dr={ALLOWED_TAGS:["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"],ALLOWED_ATTR:["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"]},Fr=/^data:image\/(?:png|jpe?g|gif|webp|bmp|x-icon|avif)/i,Hr=()=>{let e=null;return t=>{let a=we();if(!a)return Be(t);if(!e){let{DOMPurify:o}=a;e=o(typeof window<"u"?window:void 0),e.addHook("uponSanitizeAttribute",(r,s)=>{if(s.attrName==="src"||s.attrName==="href"){let n=s.attrValue;n.toLowerCase().startsWith("data:")&&!Fr.test(n)&&(s.attrValue="",s.keepAttr=!1)}})}return e.sanitize(t,Dr)}},za=e=>e===!1?null:typeof e=="function"?e:Hr();var oa=class{constructor(){this.components=new Map;this.#e=new Map}#e;register(t,a,o){this.components.has(t)&&console.warn(`[ComponentRegistry] Component "${t}" is already registered. Overwriting.`),this.components.set(t,a),o?this.#e.set(t,o):this.#e.delete(t)}unregister(t){this.components.delete(t),this.#e.delete(t)}get(t){return this.components.get(t)}has(t){return this.components.has(t)}getOptions(t){return this.#e.get(t)}getAllNames(){return Array.from(this.components.keys())}clear(){this.components.clear(),this.#e.clear()}registerAll(t){Object.entries(t).forEach(([a,o])=>{this.register(a,o)})}},Wa=new oa;var Ga=null,sa=e=>{Ga=e.componentRegistry},_a=()=>Ga;function De(e){if(!e)return"";if(e.artifactType==="markdown"){let t=e.markdown??"";return e.file?Ne(t):t}return JSON.stringify({component:e.component,props:e.props},null,2)}var na=!1;function Or(e){return"persona-artifact-vt-"+((e||"artifact").replace(/[^A-Za-z0-9_-]/g,"-").replace(/^-+/,"")||"artifact")}function ja(e,t,a,o){let r=typeof document<"u"?document.startViewTransition:void 0,s=!1;try{s=typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches}catch{s=!1}if(t!=="auto"||!e||typeof r!="function"||na||s){o();return}na=!0;let n=Or(a);e.style.setProperty("view-transition-name",n);let f=()=>{na=!1,e.style.removeProperty("view-transition-name")};try{r.call(document,()=>{o()}).finished.then(f,f)}catch{f(),o()}}var Ir="persona-font-mono persona-text-xs persona-whitespace-pre-wrap persona-break-words persona-text-persona-primary",qr="persona-text-sm persona-leading-relaxed persona-markdown-bubble";function Ur(e){let t=C("div","persona-rounded-lg persona-border persona-border-persona-border persona-p-3 persona-text-persona-primary"),a=C("div","persona-font-semibold persona-text-sm persona-mb-2");a.textContent=e.component?`Component: ${e.component}`:"Component";let o=C("pre","persona-font-mono persona-text-xs persona-whitespace-pre-wrap persona-overflow-x-auto");return o.textContent=JSON.stringify(e.props??{},null,2),t.appendChild(a),t.appendChild(o),t}function Nr(e){if(e===!1)return{enabled:!1,delayMs:0,minVisibleMs:0,timeoutMs:0,injectReadySignal:!1,label:"Starting preview...",labelDelayMs:2e3};let t=e&&typeof e=="object"?e:void 0;return{enabled:!0,delayMs:t?.delayMs??200,minVisibleMs:t?.minVisibleMs??300,timeoutMs:t?.timeoutMs??8e3,injectReadySignal:t?.injectReadySignal!==!1,label:t?.label===!1?!1:t?.label??"Starting preview...",labelDelayMs:t?.labelDelayMs??2e3,renderIndicator:t?.renderIndicator}}var Vr=220;function zr(){try{if(typeof crypto<"u"&&crypto.getRandomValues){let e=new Uint32Array(2);return crypto.getRandomValues(e),e[0].toString(36)+e[1].toString(36)}}catch{}return Math.random().toString(36).slice(2)+Math.random().toString(36).slice(2)}function Wr(e){return`
7
+ <script>(function(){var d=false;var t=`+JSON.stringify(e)+";function r(){if(d)return;d=true;try{parent.postMessage({persona:'artifact-preview-ready',token:t},'*');}catch(e){}}function s(){if(typeof requestAnimationFrame==='function'){requestAnimationFrame(function(){requestAnimationFrame(r);});}setTimeout(r,150);}if(document.readyState==='complete'){s();}else{window.addEventListener('load',s);}})();</script>"}function Gr(e,t,a){let o=C("div","persona-artifact-frame-loading");if(a.renderIndicator)try{let n=a.renderIndicator({artifactId:e,config:t});if(n)return o.appendChild(n),{el:o,revealLabel:()=>{}}}catch{}let r=C("div","persona-artifact-frame-loading-indicator");r.appendChild(Ra());let s=null;return a.label!==!1&&(s=C("div","persona-artifact-frame-loading-text"),s.textContent=a.label,r.appendChild(s)),o.appendChild(r),{el:o,revealLabel:()=>{s&&s.classList.add("persona-artifact-frame-loading-text--visible")}}}function _r(e,t,a,o,r,s){let n=null,f=0,h=!1,p=new Set,i=()=>{p.forEach(b=>clearTimeout(b)),p.clear()},d=(b,L)=>{let I=setTimeout(()=>{p.delete(I),!(typeof document>"u")&&b()},L);p.add(I)},x=()=>{n&&n.parentElement&&n.remove(),n=null},u=()=>{if(n||h)return;let b=Gr(r,s,o);n=b.el,e.appendChild(n),f=Date.now(),o.label!==!1&&d(b.revealLabel,o.labelDelayMs)},m=()=>{n&&(n.classList.add("persona-artifact-frame-loading--out"),d(x,Vr))},c=()=>{a!==null?typeof window<"u"&&window.removeEventListener("message",M):t.removeEventListener("load",S)},v=()=>{if(h||(h=!0,c(),i(),!n))return;let b=Math.max(0,o.minVisibleMs-(Date.now()-f));b>0?d(m,b):m()};function M(b){if(a===null)return;let L=b.data;!L||L.persona!=="artifact-preview-ready"||L.token!==a||b.source===t.contentWindow&&v()}function S(){let b=L=>{typeof requestAnimationFrame=="function"?requestAnimationFrame(()=>L()):setTimeout(L,0)};b(()=>b(()=>v()))}return d(u,o.delayMs),d(v,o.timeoutMs),a!==null?typeof window<"u"&&window.addEventListener("message",M):t.addEventListener("load",S),()=>{h=!0,i(),c(),x()}}function et(e,t){let{config:a}=t,o=t.registry??_a()??Wa,r=t.bodyLayout,s=a.markdown?Va(a.markdown):null,n=za(a.sanitize),f=e,h=!1,p=g=>{let E=we()!==null;s&&!E&&!h&&(h=!0,Na(()=>$(f)));let H=s?s(g):Be(g);return s&&E&&n?n(H):H},i=C("div","persona-artifact-preview-body"),d=null,x=null,u=null,m=()=>{u&&(u(),u=null),d=null,x=null},c=null,v=null,M=null,S=!1,b=()=>{c=null,v=null,M=null,S=!1},L=null,I=null,j=()=>{L=null,I=null},oe=40,Q=0,le=g=>typeof requestAnimationFrame=="function"?requestAnimationFrame(()=>g()):setTimeout(g,0),q=g=>g.scrollHeight-g.clientHeight-g.scrollTop<=oe,Z=g=>{if(!r)return;let E=g.scrollHeight-g.clientHeight>1,H=g.scrollHeight-g.clientHeight-g.scrollTop;g.classList.toggle("persona-artifact-fade-top",r.fadeTop&&E&&g.scrollTop>1),g.classList.toggle("persona-artifact-fade-bottom",r.fadeBottom&&E&&H>1)},U=g=>{Q||(Q=le(()=>{Q=0,g.scrollTop=g.scrollHeight,Z(g)}))},W=(g,E,H,y)=>{let P=!!r,O=H.id+"|"+(P?"w":"p");if(!c||M!==O||c.parentElement!==i){m(),j(),i.replaceChildren();let w=C("pre",Ir+" persona-code-pre"),D=C("code","persona-code");if(w.appendChild(D),P){let N=C("div","persona-artifact-source-window");if(N.appendChild(w),i.appendChild(N),!(r?.overflow==="clip")&&typeof N.addEventListener=="function"){let J=()=>N.scrollHeight-N.clientHeight>1;N.addEventListener("scroll",()=>{q(N)&&(S=!1),Z(N)},{passive:!0}),N.addEventListener("wheel",ee=>{J()&&ee.deltaY<0&&(S=!0)},{passive:!0}),N.addEventListener("touchmove",()=>{J()&&(S=!0)},{passive:!0})}c=N}else i.appendChild(w),c=w;v=D,M=O}let T=P?c:null;T&&(T.classList.toggle("persona-artifact-source-window--fixed",y),T.classList.toggle("persona-artifact-source-window--clip",y&&r?.overflow==="clip"));let B=T?q(T):!0;if(v.replaceChildren(qa(g,E?.language,E?.path)),T){let w=H.status!=="complete";y&&w&&r?.followOutput&&!S&&B?U(T):w||(S=!1),Z(T)}},G=g=>{m(),b(),j(),i.replaceChildren();let E=C("div",qr);E.innerHTML=p(g),i.appendChild(E)},Y=g=>{let E=g.id,H=a.features?.artifacts,y=be(g,H,"status-body");if(L&&I===E&&L.parentElement===i){let T=L.querySelector(".persona-artifact-status-view-text");T&&ce(T,y,H);return}m(),b(),i.replaceChildren();let P=C("div","persona-artifact-status-view"),O=C("div","persona-artifact-status-view-text");ce(O,y,H),P.appendChild(O),i.appendChild(P),L=P,I=E},$=g=>{f=g;let E=t.resolveViewMode?.(g)??r?.viewMode??"rendered",H=g.artifactType==="markdown"?g.file:void 0,y=g.status!=="complete";y||ye(g.id);let P=y?r?.streamingHeight:r?.completeHeight,O=!!r&&typeof P=="number";if(r?.streamingView==="status"&&y){Y(g);return}if(H){let B=Ne(g.markdown??""),w=pe(H),D=a.features?.artifacts?.filePreview?.enabled!==!1;if(!y&&E==="rendered"&&D&&(w==="html"||w==="svg")){let xe=g.id+"\0"+B;if(d&&x===xe&&d.parentElement===i)return;b(),j(),m(),i.replaceChildren();let J=a.features?.artifacts?.filePreview,ee=J?.iframeSandbox??"allow-scripts";!J?.dangerouslyAllowSameOrigin&&ee.includes("allow-same-origin")&&(console.warn("[AgentWidget] Stripped allow-same-origin from filePreview.iframeSandbox: it lets artifact content run with the page origin. Set filePreview.dangerouslyAllowSameOrigin to keep it."),ee=ee.split(/\s+/).filter(F=>F&&F!=="allow-same-origin").join(" "));let ge=Nr(J?.loading),_=C("div","persona-artifact-frame"),te=C("iframe","persona-artifact-iframe");te.setAttribute("sandbox",ee),te.setAttribute("data-artifact-id",g.id);let Se=null;ge.enabled&&ge.injectReadySignal?(Se=zr(),te.srcdoc=B+Wr(Se)):te.srcdoc=B,_.appendChild(te),i.appendChild(_),ge.enabled&&(u=_r(_,te,Se,ge,g.id,a)),d=_,x=xe;return}if(m(),!y&&w==="markdown"&&E==="rendered"){G(B);return}W(B,{language:H.language,path:H.path},g,O);return}if(g.artifactType==="markdown"){if(E==="source"){m(),W(g.markdown??"",void 0,g,O);return}G(g.markdown??"");return}m(),b(),j(),i.replaceChildren();let T=g.component?o.get(g.component):void 0;if(T){let w={message:{id:g.id,role:"assistant",content:"",createdAt:new Date().toISOString()},config:a,updateProps:()=>{}};try{let D=T(g.props??{},w);if(D){i.appendChild(D);return}}catch{}}i.appendChild(Ur(g))};return $(e),{el:i,update(g){$(g)},destroy(){m()}}}function Xa(e,t){let a=t.orientation??"horizontal",o=a==="vertical"?"ArrowUp":"ArrowLeft",r=a==="vertical"?"ArrowDown":"ArrowRight";e.setAttribute("role","tablist");let s=[],n=!1,f=d=>{typeof d.scrollIntoView=="function"&&d.scrollIntoView({block:"nearest",inline:"nearest"})},h=d=>{let x=d;return s.findIndex(u=>u===x||u.contains(x))},p=d=>{let x=h(d.target);if(x<0)return;let u=x;if(d.key===r)u=Math.min(x+1,s.length-1);else if(d.key===o)u=Math.max(x-1,0);else if(d.key==="Home")u=0;else if(d.key==="End")u=s.length-1;else return;d.preventDefault(),u!==x&&t.onSelect(u)},i=d=>{let x=h(d.target);x>=0&&f(s[x])};return e.addEventListener("keydown",p),e.addEventListener("focusin",i),{beforeRender(){n=typeof document<"u"&&e.contains(document.activeElement)},render(d,x){if(s=d,d.forEach((u,m)=>{u.setAttribute("role","tab");let c=m===x;u.setAttribute("aria-selected",c?"true":"false"),u.tabIndex=c||x<0&&m===0?0:-1}),n){let u=(x>=0?d[x]:void 0)??d[0];u&&typeof u.focus=="function"&&(f(u),u.focus())}},destroy(){e.removeEventListener("keydown",p),e.removeEventListener("focusin",i)}}}function la(e,t){let a=e.features?.artifacts?.layout,r=(a?.toolbarPreset??"default")==="document",s=a?.toolbarTitle??"Artifacts",n=a?.closeButtonLabel??"Close",f=a?.panePadding?.trim(),h=a?.tabFadeSize?.trim(),p=l=>({start:l===!1?!1:typeof l=="object"&&l?l.start!==!1:!0,end:l===!1?!1:typeof l=="object"&&l?l.end!==!1:!0}),{start:i,end:d}=p(a?.tabFade),x=typeof document<"u"?C("div","persona-artifact-backdrop persona-fixed persona-inset-0 persona-z-[55] persona-bg-black/30 persona-hidden md:persona-hidden"):null,u=()=>{x?.classList.add("persona-hidden"),m.classList.remove("persona-artifact-drawer-open"),Z?.closeMenu()};x&&x.addEventListener("click",()=>{u(),t.onDismiss?.()});let m=C("aside","persona-artifact-pane persona-flex persona-flex-col persona-min-h-0 persona-min-w-0 persona-bg-persona-surface persona-text-persona-primary persona-border-l persona-border-persona-border");m.setAttribute("data-persona-theme-zone","artifact-pane"),r&&m.classList.add("persona-artifact-pane-document");let c=C("div","persona-artifact-toolbar persona-flex persona-items-center persona-justify-between persona-gap-2 persona-px-2 persona-py-2 persona-border-b persona-border-persona-border persona-shrink-0");c.setAttribute("data-persona-theme-zone","artifact-toolbar"),r&&c.classList.add("persona-artifact-toolbar-document");let v=C("span","persona-text-xs persona-font-medium persona-truncate");v.textContent=s;let M=V({icon:"x",label:n});M.addEventListener("click",()=>{u(),t.onDismiss?.()});let S="rendered",b=Ze({items:[{id:"rendered",icon:"eye",label:"Rendered view",className:r?"persona-artifact-doc-icon-btn persona-artifact-view-btn":void 0},{id:"source",icon:"code-xml",label:"Source",className:r?"persona-artifact-doc-icon-btn persona-artifact-code-btn":void 0}],selectedId:"rendered",className:"persona-artifact-toggle-group persona-shrink-0",onSelect:l=>{S=l==="source"?"source":"rendered",Ie()}}),L=C("div","persona-flex persona-items-center persona-gap-1 persona-shrink-0"),I=a?.documentToolbarShowCopyLabel===!0,j=a?.documentToolbarShowCopyChevron===!0,oe=a?.documentToolbarCopyMenuItems,Q=!!(j&&oe&&oe.length>0),le=null,q,Z=null;if(r&&(I||j)&&!Q){if(q=I?me({icon:"copy",label:"Copy",iconSize:14,className:"persona-artifact-doc-copy-btn"}):V({icon:"copy",label:"Copy",className:"persona-artifact-doc-copy-btn"}),j){let l=ne(Me,14,"currentColor",2);l&&q.appendChild(l)}}else r&&Q?(Z=Ta({label:"Copy",icon:"copy",iconSize:14,iconOnly:!I,primaryClassName:"persona-artifact-doc-copy-btn",chevronLabel:"More copy options",chevronClassName:"persona-artifact-doc-copy-menu-chevron persona-artifact-doc-icon-btn",menuItems:(oe??[]).map(l=>({id:l.id,label:l.label})),position:"bottom-right",portal:()=>m.closest("[data-persona-root]")??document.body,onSelect:l=>{T(l)}}),le=Z.element,q=Z.primaryButton):r?q=V({icon:"copy",label:"Copy",className:"persona-artifact-doc-icon-btn"}):(q=V({icon:"copy",label:"Copy"}),a?.showCopyButton!==!0&&q.classList.add("persona-hidden"));let U=r?V({icon:"refresh-cw",label:"Refresh",className:"persona-artifact-doc-icon-btn"}):V({icon:"refresh-cw",label:"Refresh"});a?.onDocumentToolbarRefresh||U.classList.add("persona-hidden");let W=r?V({icon:"x",label:n,className:"persona-artifact-doc-icon-btn"}):V({icon:"x",label:n}),G=V({icon:"maximize",label:"Expand artifacts panel",className:"persona-artifact-expand-btn"+(r?" persona-artifact-doc-icon-btn":""),onClick:()=>t.onToggleExpand?.()});a?.showExpandToggle!==!0&&G.classList.add("persona-hidden");let Y=C("div","persona-flex persona-items-center persona-gap-1 persona-shrink-0 persona-artifact-toolbar-custom-actions"),$=e.features?.artifacts?.toolbarActions??[],g=()=>{let l=F.find(se=>se.id===X)??F[F.length-1],k=l?.id??null,A=l?.artifactType==="markdown"?l.markdown??"":"",R=l?JSON.stringify({component:l.component,props:l.props},null,2):"",{filename:z,mime:K,content:fe}=Ae({title:l?.title,markdown:l?.markdown??"",file:l?.file});return{markdown:A,jsonPayload:R,id:k,file:l?.file,suggestedFilename:z,mime:K,content:fe}},E=()=>{let{suggestedFilename:l,mime:k,content:A}=g();A&&ve({filename:l,mime:k,content:A})},H=l=>{let{id:k,...A}=g();return{actionId:l,artifactId:k,...A}},y=async()=>{let l=F.find(k=>k.id===X)??F[F.length-1];try{return await navigator.clipboard.writeText(De(l)),!0}catch{return!1}},P=null,O=()=>{P?.();let l=q.querySelector("svg"),k=Number(l?.getAttribute("width"))||16,A=ne(ke,k,"currentColor",2);if(!l||!A)return;l.replaceWith(A);let R=q.querySelector("span");R&&(R.textContent="Copied");let z=setTimeout(()=>P?.(),2e3);P=()=>{clearTimeout(z),A.replaceWith(l),R&&(R.textContent="Copy"),P=null}};q.addEventListener("click",async()=>{let l=a?.onDocumentToolbarCopyMenuSelect;if(l&&Q){try{if(await l(H("primary"))===!1){await y()&&O();return}O()}catch{}return}await y()&&O()});async function T(l){let k=a?.onDocumentToolbarCopyMenuSelect;try{if(k&&await k(H(l))!==!1)return;if(l==="download"){E();return}let{markdown:A,jsonPayload:R}=g();l==="markdown"||l==="md"?await navigator.clipboard.writeText(A):l==="json"||l==="source"?await navigator.clipboard.writeText(R):await navigator.clipboard.writeText(A||R),O()}catch{}}U.addEventListener("click",async()=>{try{await a?.onDocumentToolbarRefresh?.()}catch{}Ie()}),W.addEventListener("click",()=>{u(),t.onDismiss?.()});let B=C("span","persona-min-w-0 persona-flex-1 persona-text-xs persona-font-medium persona-text-persona-primary persona-truncate persona-text-center md:persona-text-left");if(r)c.replaceChildren(),le?L.append(le,U,W):L.append(q,U,W),L.insertBefore(Y,W),L.insertBefore(G,W),c.append(b.element,B,L);else{let l=C("div","persona-flex persona-items-center persona-gap-1 persona-shrink-0");l.append(q,Y,G,M),c.appendChild(v),c.appendChild(l)}f&&(c.style.paddingLeft=f,c.style.paddingRight=f);let w=C("div","persona-artifact-list persona-shrink-0 persona-flex persona-gap-1 persona-overflow-x-auto persona-p-2 persona-border-b persona-border-persona-border");h&&w.style.setProperty("--persona-artifact-tab-fade-size",h);let D=e.features?.artifacts?.renderTabBar,N=C("div","persona-artifact-tab-custom persona-shrink-0 persona-border-b persona-border-persona-border persona-hidden"),xe=Xa(w,{onSelect:l=>t.onSelect(F[l].id)}),J=l=>{let k=l.scrollWidth-l.clientWidth,A=k>1,R=Math.abs(l.scrollLeft);l.classList.toggle("persona-artifact-tab-fade-start",i&&A&&R>1),l.classList.toggle("persona-artifact-tab-fade-end",d&&A&&R<k-1)},ee=0,ge=()=>{if(ee)return;let l=()=>{ee=0,J(w)};ee=typeof requestAnimationFrame=="function"?requestAnimationFrame(l):setTimeout(l,0)};w.addEventListener("scroll",()=>ge(),{passive:!0}),typeof ResizeObserver<"u"&&new ResizeObserver(()=>J(w)).observe(w);let _=C("div","persona-artifact-content persona-flex-1 persona-min-h-0 persona-overflow-y-auto persona-p-3"),te=()=>{_.scrollLeft=0},Se=()=>{typeof requestAnimationFrame=="function"?requestAnimationFrame(te):setTimeout(te,0)};if(f){for(let l of[w,N])l.style.paddingLeft=f,l.style.paddingRight=f;_.style.padding=f}m.appendChild(c),m.appendChild(w),m.appendChild(N),m.appendChild(_);let F=[],X=null,tt=!1,ua=!1,at=!0,rt=!1,pa=null,ot="",ae=null,Oe=!1,Ya=l=>l.artifactType==="markdown"&&!!l.file||r?S:"rendered",ma=l=>{r||(l&&!Oe?(c.insertBefore(b.element,v),Oe=!0):!l&&Oe&&(b.element.remove(),Oe=!1))},ca=()=>X&&F.find(l=>l.id===X)||F[F.length-1],xa=()=>{let l=Ee(ca());if(!l){Y.replaceChildren();return}let k=$.filter(A=>A.visible===void 0||A.visible(l)).map(A=>Ce(A,{documentChrome:r,onClick:()=>{let R=Ee(ca());if(R)try{Promise.resolve(A.onClick(R)).catch(()=>{})}catch{}}}));Y.replaceChildren(...k)},Ie=()=>{xa();let l=r&&F.length<=1,k=!!D;if(w.classList.toggle("persona-hidden",l||k),N.classList.toggle("persona-hidden",l||!k),k&&D){let z=F.map(K=>K.id).join("|")+" "+(X??"");if(z!==ot){ot=z;let K=D({records:F,selectedId:X,onSelect:t.onSelect});N.firstElementChild!==K&&N.replaceChildren(K)}}else{xe.beforeRender(),w.replaceChildren();let z=[],K=-1;for(let[fe,se]of F.entries()){let ie=C("button","persona-artifact-tab persona-shrink-0 persona-rounded-lg persona-px-2 persona-py-1 persona-text-xs persona-border persona-border-transparent persona-text-persona-primary");ie.type="button";let st=se.artifactType==="markdown"?se.file:void 0,Ca=st?re(st.path):se.title||se.id.slice(0,8),ya=st?.path||se.title||Ca;ie.textContent=Ca,ie.title=ya,ie.setAttribute("aria-label",ya),se.id===X&&(ie.classList.add("persona-bg-persona-container","persona-border-persona-border"),K=fe),ie.addEventListener("click",()=>t.onSelect(se.id)),w.appendChild(ie),z.push(ie)}if(xe.render(z,K),K>=0&&X!==pa){pa=X;let fe=z[K];typeof fe.scrollIntoView=="function"&&fe.scrollIntoView({block:"nearest",inline:"nearest"})}J(w)}let A=X&&F.find(z=>z.id===X)||F[F.length-1];if(!A){_.replaceChildren(),ae?.destroy(),ae=null,ma(!1);return}let R=A.artifactType==="markdown"?A.file:void 0;if(ma(!!R&&pe(R)!=="other"),r){let z=R?de(R):A.artifactType==="markdown"?"MD":A.component??"Component",K=(A.title||"Document").trim(),fe=R?re(R.path):K.replace(/\s*·\s*MD\s*$/i,"").trim()||"Document";B.textContent=`${fe} \xB7 ${z}`}else v.textContent=R?re(R.path):s;ae?(ae.el.parentElement!==_&&_.replaceChildren(ae.el),ae.update(A)):(ae=et(A,{config:e,resolveViewMode:Ya}),_.replaceChildren(ae.el)),_.classList.toggle("persona-artifact-content-flush",!!_.querySelector(".persona-code-pre"))},ga=()=>{let l=F.length>0;if(m.classList.toggle("persona-hidden",!l),x){let R=((typeof m.closest=="function"?m.closest("[data-persona-root]"):null)?.classList.contains("persona-artifact-narrow-host")??!1)||typeof window<"u"&&window.matchMedia("(max-width: 640px)").matches;l&&R&&tt?(x.classList.remove("persona-hidden"),m.classList.add("persona-artifact-drawer-open")):(x.classList.add("persona-hidden"),m.classList.remove("persona-artifact-drawer-open"))}},ha=()=>{rt=!1,Ie(),ga()};return{element:m,backdrop:x,update(l){let k=l.selectedId??l.artifacts[l.artifacts.length-1]?.id??null,A=k!==X;F=l.artifacts,X=k,F.length>0&&(tt=!0),rt=!0,at&&ha(),A&&te()},setMobileOpen(l){tt=l,!l&&x?(x.classList.add("persona-hidden"),m.classList.remove("persona-artifact-drawer-open")):ga()},setExpanded(l){l!==ua&&(ua=l,Se());let k=ne(l?Te:Pe,16,"currentColor",2);k&&G.replaceChildren(k);let A=l?"Collapse artifacts panel":"Expand artifacts panel";G.setAttribute("aria-label",A),G.title=A},setExpandToggleVisible(l){G.classList.toggle("persona-hidden",!l)},setCopyButtonVisible(l){r||q.classList.toggle("persona-hidden",!l)},setRefreshButtonVisible(l){U.classList.toggle("persona-hidden",!l)},setCustomActions(l){$=l,xa()},setTabFade(l){let k=p(l);k.start===i&&k.end===d||(i=k.start,d=k.end,J(w))},setRenderTabBar(l){l!==D&&(D=l,ot="",Ie())},setVisible(l){l!==at&&(at=l,l&&rt&&ha())},destroy(){ae?.destroy(),ae=null}}}function Ka(e,t){let a=e.file&&typeof e.file=="object"&&!Array.isArray(e.file)?e.file:void 0,o=typeof e.title=="string"&&e.title?e.title:"Untitled artifact",r=a?re(a.path):o,s=typeof e.artifactId=="string"?e.artifactId:"",n=e.status==="streaming"?"streaming":"complete",f=typeof e.artifactType=="string"?e.artifactType:"markdown",h=e.presentation&&typeof e.presentation=="object"&&!Array.isArray(e.presentation)?e.presentation:void 0,p=a?de(a):f==="component"?"Component":"Document",i=document.createElement("div");i.className="persona-artifact-card persona-flex persona-w-full persona-max-w-full persona-items-center persona-gap-3 persona-px-4 persona-py-3",i.tabIndex=0,i.setAttribute("role","button"),i.setAttribute("aria-label",`Open ${r} in artifact panel`),s&&i.setAttribute("data-open-artifact",s);let d=document.createElement("div");d.className="persona-flex persona-h-10 persona-w-10 persona-flex-shrink-0 persona-items-center persona-justify-center persona-rounded-lg",d.style.border="1px solid var(--persona-border, #e5e7eb)",d.style.color="var(--persona-muted, #9ca3af)",d.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z"/><polyline points="14 2 14 8 20 8"/></svg>';let x=document.createElement("div");x.className="persona-min-w-0 persona-flex-1 persona-flex persona-flex-col persona-gap-0.5";let u=document.createElement("div");u.className="persona-truncate persona-text-sm persona-font-medium",u.style.color="var(--persona-text, #1f2937)",u.textContent=r;let m=document.createElement("div");if(m.className="persona-text-xs persona-flex persona-items-center persona-gap-1.5",m.style.color="var(--persona-muted, #9ca3af)",n==="streaming"){let c=t?.config?.features?.artifacts,v={id:s,artifactType:f==="component"?"component":"markdown",title:o,status:"streaming",...typeof e.markdown=="string"?{markdown:e.markdown}:{},...a?{file:a}:{},...h?{presentation:h}:{}},M=be(v,c,"card");ce(m,M,c)}else s&&ye(s),m.textContent=p;if(x.append(u,m),i.append(d,x),n==="complete"){let c=t?.config?.features?.artifacts?.cardActions;if(c&&c.length>0){let M={artifactId:s||null,title:r,artifactType:f,markdown:typeof e.markdown=="string"?e.markdown:void 0,file:a};for(let S of c)try{if(S.visible===void 0||S.visible(M)){let b=Ce(S);b.setAttribute("data-artifact-custom-action",S.id),b.className=`${b.className} persona-flex-shrink-0`,i.append(b)}}catch{}}let v=me({label:"Download",className:"persona-flex-shrink-0"});v.title=`Download ${r}`,v.setAttribute("data-download-artifact",s),i.append(v)}return i}var Fe=(e,t)=>{let a=t?.config?.features?.artifacts?.renderCard;if(a){let o=typeof e.title=="string"&&e.title?e.title:"Untitled artifact",r=typeof e.artifactId=="string"?e.artifactId:"",s=e.status==="streaming"?"streaming":"complete",n=typeof e.artifactType=="string"?e.artifactType:"markdown",f=a({artifact:{artifactId:r,title:o,artifactType:n,status:s},config:t.config,defaultRenderer:()=>Ka(e,t)});if(f)return f}return Ka(e,t)};var ue=new WeakMap;function fa(e,t,a){if(t.length===0)return;let o=new Map(t.map(r=>[r.id,r]));e.querySelectorAll("[data-artifact-inline]").forEach(r=>{let s=ue.get(r);if(!s)return;let n=o.get(r.getAttribute("data-artifact-inline")??"");n&&s(n,a)})}function ia(e){return ue.has(e)}function jr(e){let t=typeof e.artifactId=="string"?e.artifactId:"",a=typeof e.title=="string"&&e.title?e.title:void 0,o=e.status==="streaming"?"streaming":"complete",r=e.presentation&&typeof e.presentation=="object"&&!Array.isArray(e.presentation)?e.presentation:void 0;if(e.artifactType==="component"){let n=e.componentProps,f=n&&typeof n=="object"&&!Array.isArray(n)?n:{};return{id:t,artifactType:"component",title:a,status:o,component:typeof e.component=="string"?e.component:"",props:f,...r?{presentation:r}:{}}}let s=e.file&&typeof e.file=="object"&&!Array.isArray(e.file)?e.file:void 0;return{id:t,artifactType:"markdown",title:a,status:o,markdown:typeof e.markdown=="string"?e.markdown:"",...s?{file:s}:{},...r?{presentation:r}:{}}}function Za(e){let t=e.artifactType==="markdown"?e.file:void 0,a=t?re(t.path):e.title&&e.title.trim()?e.title:"Untitled artifact",o=t?de(t):e.artifactType==="component"?"Component":"Document";return{title:a,typeLabel:o}}function Xr(e){let t={artifactId:e.id,title:e.title??"",status:e.status,artifactType:e.artifactType};return e.artifactType==="markdown"&&(typeof e.markdown=="string"&&(t.markdown=e.markdown),e.file&&(t.file=e.file)),t}var $a=180,Kr=240,Zr=.8,$r=300,Jr=500,Qr="cubic-bezier(0.2, 0, 0, 1)",Ja=240,Yr=.35;function eo(e,t,a){let{swap:o,onSettled:r}=a,s=!1;try{s=typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-reduced-motion: reduce)").matches}catch{s=!1}if(!t||!e.isConnected||s||typeof e.animate!="function"){o(),r();return}e.style.height=`${t}px`,e.style.overflow="hidden";let n=[];for(let f of Array.from(e.children))f instanceof HTMLElement&&n.push(f.animate([{opacity:1},{opacity:0}],{duration:$a,easing:"ease-out",fill:"forwards"}));window.setTimeout(()=>{for(let M of n)M.cancel();o();let f=()=>{e.style.removeProperty("height"),e.style.removeProperty("overflow")};if(!e.isConnected){f(),r();return}e.style.height="auto";let h=e.getBoundingClientRect().height;if(e.style.height=`${t}px`,!h||Math.abs(h-t)<1){f(),r();return}let p=Math.abs(t-h),i=Math.round(Math.min(Jr,Math.max($r,Kr+p*Zr))),d=Math.round(i*Yr),x=e.firstElementChild instanceof HTMLElement?e.firstElementChild:null,u=x?x.animate([{opacity:0},{opacity:1}],{duration:Ja,delay:d,easing:"ease-out",fill:"backwards"}):null,m=e.animate([{height:`${t}px`},{height:`${h}px`}],{duration:i,easing:Qr});e.style.height=`${h}px`;let c=!1,v=()=>{c||(c=!0,f(),r())};Promise.allSettled([m.finished,u?.finished].filter(Boolean)).then(v),window.setTimeout(v,Math.max(i,d+Ja)+120)},$a)}function to(e){let t=e?.inlineChrome;if(t===!1)return{chromeEnabled:!1,showCopy:!1,showExpand:!1,showViewToggle:!1};let a=typeof t=="object"?t:void 0;return{chromeEnabled:!0,showCopy:a?.showCopy!==!1,showExpand:a?.showExpand!==!1,showViewToggle:a?.showViewToggle!==!1}}var He="--persona-artifact-inline-body-height";function ao(e){let t=e?.inlineBody,a=t?.streamingView==="status"?"status":"source",o=t?.viewMode==="source"?"source":"rendered",r=320,s=320,n=t?.height;typeof n=="number"||n==="auto"?(r=n,s=n):n&&typeof n=="object"&&(r=n.streaming??320,s=n.complete??320);let f=t?.overflow==="clip"?"clip":"scroll",h=f==="clip"?!1:t?.followOutput!==!1,p,i,d=t?.fadeMask;d===!0?(p=!0,i=!0):d===!1?(p=!1,i=!1):d&&typeof d=="object"?(p=d.top===!0,i=d.bottom===!0):f==="clip"?(p=!1,i=!0):(p=!0,i=!0);let x=t?.transition==="none"?"none":"auto",u=t?.completeDisplay==="card"?"card":"inline";return{streamingView:a,viewMode:o,streamingHeight:r,completeHeight:s,followOutput:h,overflow:f,fadeTop:p,fadeBottom:i,transition:x,completeDisplay:u}}function Qa(e,t){let a=jr(e),o=t.config?.features?.artifacts,{chromeEnabled:r,showCopy:s,showExpand:n,showViewToggle:f}=to(o),h=o?.inlineActions??[],p=ao(o),i=p.completeDisplay==="card",d=null,x=a,u=C("div","persona-artifact-inline persona-w-full persona-max-w-full");u.setAttribute("data-persona-theme-zone","artifact-inline"),a.id&&u.setAttribute("data-artifact-inline",a.id);let m=y=>Fe(Xr(y),t),c=null,v=y=>{c?.destroy(),c=null,u.classList.add("persona-artifact-inline--card"),u.style.removeProperty(He),u.replaceChildren(m(y)),ue.set(u,P=>{u.replaceChildren(m(P))})};if(i&&a.status==="complete")return v(a),u;let M=et(a,{config:t.config,bodyLayout:p,resolveViewMode:()=>d??p.viewMode});c=M;let S=C("div","persona-artifact-inline-body");S.appendChild(M.el);let b=y=>{let P=y.status!=="complete",O=P?p.streamingHeight:p.completeHeight,T=typeof O=="number";T?u.style.setProperty(He,`${O}px`):u.style.removeProperty(He);let B=!!M.el.querySelector(".persona-code-pre"),w=!!M.el.querySelector("iframe, .persona-artifact-source-window--fixed, .persona-artifact-status-view");S.classList.toggle("persona-artifact-content-flush",B),S.classList.toggle("persona-artifact-inline-body--sized",T&&w),S.classList.toggle("persona-artifact-inline-body--cap",!P&&!w&&typeof p.completeHeight=="number")},L=a.status,I=(y,P)=>{L!=="complete"&&y.status==="complete"?(typeof p.completeHeight=="number"?u.style.setProperty(He,`${p.completeHeight}px`):u.style.removeProperty(He),ja(S,P?.suppressTransition?"none":p.transition,y.id,()=>{M.update(y),b(y)})):M.update(y),b(y),L=y.status};b(a);let j=p.overflow==="clip"&&n&&!!a.id;if(j&&(S.setAttribute("data-expand-artifact-inline",a.id),S.setAttribute("role","button"),S.setAttribute("tabindex","0"),S.classList.add("persona-cursor-pointer"),S.setAttribute("aria-label",`Open ${Za(a).title} in panel`)),!r)return u.appendChild(S),ue.set(u,I),u;let oe=C("div","persona-artifact-inline-chrome");oe.setAttribute("data-persona-theme-zone","artifact-inline-chrome");let Q=C("div","persona-artifact-inline-chrome-lead"),le=C("span","persona-flex persona-items-center persona-flex-shrink-0"),q=ne(Le,16,"currentColor",2);q&&le.appendChild(q);let Z=C("span","persona-artifact-inline-title persona-truncate persona-min-w-0"),U=C("span","persona-artifact-inline-type");Q.append(le,Z,U);let W=C("div","persona-artifact-inline-chrome-actions"),G=C("span","persona-flex persona-items-center persona-gap-1"),Y=()=>d??p.viewMode,$=f?Ze({items:[{id:"rendered",icon:"eye",label:"Rendered view",className:"persona-artifact-doc-icon-btn persona-artifact-view-btn"},{id:"source",icon:"code-xml",label:"Source",className:"persona-artifact-doc-icon-btn persona-artifact-code-btn"}],selectedId:Y(),className:"persona-artifact-toggle-group persona-flex-shrink-0",onSelect:y=>{let P=y==="source"?"source":"rendered";P!==Y()&&(d=P,M.update(x),b(x))}}):null,g=s?V({icon:"copy",label:"Copy",className:"persona-artifact-doc-icon-btn persona-flex-shrink-0"}):null;g&&a.id&&g.setAttribute("data-copy-artifact",a.id);let E=n?V({icon:"maximize",label:"Open in panel",className:"persona-artifact-doc-icon-btn persona-flex-shrink-0"}):null;E&&a.id&&E.setAttribute("data-expand-artifact-inline",a.id),W.appendChild(G),$&&W.appendChild($.element),g&&W.appendChild(g),E&&W.appendChild(E),oe.append(Q,W),u.append(oe,S);let H=y=>{let{title:P,typeLabel:O}=Za(y);Z.textContent=P,Z.title=P,j&&S.setAttribute("aria-label",`Open ${P} in panel`);let T=y.status!=="complete";if(T){U.classList.contains("persona-artifact-inline-status")||(U.className="persona-artifact-inline-status",U.removeAttribute("data-preserve-animation"),U.replaceChildren());let B=be(y,o,"inline-chrome");ce(U,B,o)}else ye(y.id),U.className="persona-artifact-inline-type",U.removeAttribute("data-preserve-animation"),U.replaceChildren(),U.textContent=O;if(g&&g.classList.toggle("persona-hidden",T),$){let B=y.artifactType==="markdown"?y.file:void 0,w=!1;if(!T&&B&&p.viewMode!=="source"){let D=pe(B);D==="markdown"?w=!0:(D==="html"||D==="svg")&&(w=o?.filePreview?.enabled!==!1)}$.element.classList.toggle("persona-hidden",!w),$.setSelected(Y())}if(G.replaceChildren(),!T&&h.length>0){let B=Ee(y);if(B)for(let w of h)try{if(w.visible===void 0||w.visible(B)){let D=Ce(w,{documentChrome:!0});D.setAttribute("data-artifact-custom-action",w.id),D.classList.add("persona-flex-shrink-0"),G.appendChild(D)}}catch{}}};return H(a),ue.set(u,(y,P)=>{if(i&&L!=="complete"&&y.status==="complete"){let O=u.isConnected?u.getBoundingClientRect().height:0;L="complete";let T=y,B=!1,w=D=>{T=D,B=!0};ue.set(u,w),eo(u,O,{swap:()=>{v(T),B=!1,ue.set(u,w)},onSettled:()=>{B?v(T):ue.set(u,D=>{u.replaceChildren(m(D))})}});return}(y.status!=="complete"||y.id!==x.id)&&(d=null),x=y,I(y,P),H(y)}),u}var da=(e,t)=>{let a=t?.config?.features?.artifacts?.renderInline;if(a){let o=typeof e.title=="string"&&e.title?e.title:"Untitled artifact",r=typeof e.artifactId=="string"?e.artifactId:"",s=e.status==="streaming"?"streaming":"complete",n=typeof e.artifactType=="string"?e.artifactType:"markdown",f=a({artifact:{artifactId:r,title:o,artifactType:n,status:s},config:t.config,defaultRenderer:()=>Qa(e,t)});if(f)return f}return Qa(e,t)};0&&(module.exports={PersonaArtifactCard,PersonaArtifactInline,__provideMarkdownParsers,__setIconsExtraLoader,artifactCopyText,createArtifactPane,downloadInfoFor,hasLiveInlineArtifactBlock,initArtifactsUi,triggerArtifactDownload,updateInlineArtifactBlocks});
8
8
  /*! Bundled license information:
9
9
 
10
10
  lucide/dist/esm/icons/activity.mjs: