@runtypelabs/persona 2.3.0 → 2.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -45,7 +45,7 @@ ${t}</tr>
45
45
  `}strong(t){return`<strong>${t}</strong>`}em(t){return`<em>${t}</em>`}codespan(t){return`<code>${t}</code>`}br(){return"<br>"}del(t){return`<del>${t}</del>`}link(t,e,a){let s=sH(t);if(s===null)return a;t=s;let o='<a href="'+t+'"';return e&&(o+=' title="'+e+'"'),o+=">"+a+"</a>",o}image(t,e,a){let s=sH(t);if(s===null)return a;t=s;let o=`<img src="${t}" alt="${a}"`;return e&&(o+=` title="${e}"`),o+=">",o}text(t){return t}},z1=class{strong(t){return t}em(t){return t}codespan(t){return t}del(t){return t}html(t){return t}text(t){return t}link(t,e,a){return""+a}image(t,e,a){return""+a}br(){return""}},rr=class r{constructor(t){Bt(this,"options");Bt(this,"renderer");Bt(this,"textRenderer");this.options=t||Dr,this.options.renderer=this.options.renderer||new to,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new z1}static parse(t,e){return new r(e).parse(t)}static parseInline(t,e){return new r(e).parseInline(t)}parse(t,e=!0){let a="";for(let s=0;s<t.length;s++){let o=t[s];if(this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[o.type]){let n=o,l=this.options.extensions.renderers[n.type].call({parser:this},n);if(l!==!1||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(n.type)){a+=l||"";continue}}switch(o.type){case"space":continue;case"hr":{a+=this.renderer.hr();continue}case"heading":{let n=o;a+=this.renderer.heading(this.parseInline(n.tokens),n.depth,TR(this.parseInline(n.tokens,this.textRenderer)));continue}case"code":{let n=o;a+=this.renderer.code(n.text,n.lang,!!n.escaped);continue}case"table":{let n=o,l="",d="";for(let f=0;f<n.header.length;f++)d+=this.renderer.tablecell(this.parseInline(n.header[f].tokens),{header:!0,align:n.align[f]});l+=this.renderer.tablerow(d);let p="";for(let f=0;f<n.rows.length;f++){let c=n.rows[f];d="";for(let u=0;u<c.length;u++)d+=this.renderer.tablecell(this.parseInline(c[u].tokens),{header:!1,align:n.align[u]});p+=this.renderer.tablerow(d)}a+=this.renderer.table(l,p);continue}case"blockquote":{let n=o,l=this.parse(n.tokens);a+=this.renderer.blockquote(l);continue}case"list":{let n=o,l=n.ordered,d=n.start,p=n.loose,f="";for(let c=0;c<n.items.length;c++){let u=n.items[c],h=u.checked,b=u.task,w="";if(u.task){let E=this.renderer.checkbox(!!h);p?u.tokens.length>0&&u.tokens[0].type==="paragraph"?(u.tokens[0].text=E+" "+u.tokens[0].text,u.tokens[0].tokens&&u.tokens[0].tokens.length>0&&u.tokens[0].tokens[0].type==="text"&&(u.tokens[0].tokens[0].text=E+" "+u.tokens[0].tokens[0].text)):u.tokens.unshift({type:"text",text:E+" "}):w+=E+" "}w+=this.parse(u.tokens,p),f+=this.renderer.listitem(w,b,!!h)}a+=this.renderer.list(f,l,d);continue}case"html":{let n=o;a+=this.renderer.html(n.text,n.block);continue}case"paragraph":{let n=o;a+=this.renderer.paragraph(this.parseInline(n.tokens));continue}case"text":{let n=o,l=n.tokens?this.parseInline(n.tokens):n.text;for(;s+1<t.length&&t[s+1].type==="text";)n=t[++s],l+=`
46
46
  `+(n.tokens?this.parseInline(n.tokens):n.text);a+=e?this.renderer.paragraph(l):l;continue}default:{let n='Token with "'+o.type+'" type was not found.';if(this.options.silent)return console.error(n),"";throw new Error(n)}}}return a}parseInline(t,e){e=e||this.renderer;let a="";for(let s=0;s<t.length;s++){let o=t[s];if(this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[o.type]){let n=this.options.extensions.renderers[o.type].call({parser:this},o);if(n!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(o.type)){a+=n||"";continue}}switch(o.type){case"escape":{let n=o;a+=e.text(n.text);break}case"html":{let n=o;a+=e.html(n.text);break}case"link":{let n=o;a+=e.link(n.href,n.title,this.parseInline(n.tokens,e));break}case"image":{let n=o;a+=e.image(n.href,n.title,n.text);break}case"strong":{let n=o;a+=e.strong(this.parseInline(n.tokens,e));break}case"em":{let n=o;a+=e.em(this.parseInline(n.tokens,e));break}case"codespan":{let n=o;a+=e.codespan(n.text);break}case"br":{a+=e.br();break}case"del":{let n=o;a+=e.del(this.parseInline(n.tokens,e));break}case"text":{let n=o;a+=e.text(n.text);break}default:{let n='Token with "'+o.type+'" type was not found.';if(this.options.silent)return console.error(n),"";throw new Error(n)}}}return a}},Br=class{constructor(t){Bt(this,"options");this.options=t||Dr}preprocess(t){return t}postprocess(t){return t}processAllTokens(t){return t}};Bt(Br,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens"]));var Vr,Ik,yH,_1=class{constructor(...t){rH(this,Vr);Bt(this,"defaults",Vk());Bt(this,"options",this.setOptions);Bt(this,"parse",Li(this,Vr,Ik).call(this,ar.lex,rr.parse));Bt(this,"parseInline",Li(this,Vr,Ik).call(this,ar.lexInline,rr.parseInline));Bt(this,"Parser",rr);Bt(this,"Renderer",to);Bt(this,"TextRenderer",z1);Bt(this,"Lexer",ar);Bt(this,"Tokenizer",eo);Bt(this,"Hooks",Br);this.use(...t)}walkTokens(t,e){var s,o;let a=[];for(let n of t)switch(a=a.concat(e.call(this,n)),n.type){case"table":{let l=n;for(let d of l.header)a=a.concat(this.walkTokens(d.tokens,e));for(let d of l.rows)for(let p of d)a=a.concat(this.walkTokens(p.tokens,e));break}case"list":{let l=n;a=a.concat(this.walkTokens(l.items,e));break}default:{let l=n;(o=(s=this.defaults.extensions)==null?void 0:s.childTokens)!=null&&o[l.type]?this.defaults.extensions.childTokens[l.type].forEach(d=>{let p=l[d].flat(1/0);a=a.concat(this.walkTokens(p,e))}):l.tokens&&(a=a.concat(this.walkTokens(l.tokens,e)))}}return a}use(...t){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return t.forEach(a=>{let s={...a};if(s.async=this.defaults.async||s.async||!1,a.extensions&&(a.extensions.forEach(o=>{if(!o.name)throw new Error("extension name required");if("renderer"in o){let n=e.renderers[o.name];n?e.renderers[o.name]=function(...l){let d=o.renderer.apply(this,l);return d===!1&&(d=n.apply(this,l)),d}:e.renderers[o.name]=o.renderer}if("tokenizer"in o){if(!o.level||o.level!=="block"&&o.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let n=e[o.level];n?n.unshift(o.tokenizer):e[o.level]=[o.tokenizer],o.start&&(o.level==="block"?e.startBlock?e.startBlock.push(o.start):e.startBlock=[o.start]:o.level==="inline"&&(e.startInline?e.startInline.push(o.start):e.startInline=[o.start]))}"childTokens"in o&&o.childTokens&&(e.childTokens[o.name]=o.childTokens)}),s.extensions=e),a.renderer){let o=this.defaults.renderer||new to(this.defaults);for(let n in a.renderer){if(!(n in o))throw new Error(`renderer '${n}' does not exist`);if(n==="options")continue;let l=n,d=a.renderer[l],p=o[l];o[l]=(...f)=>{let c=d.apply(o,f);return c===!1&&(c=p.apply(o,f)),c||""}}s.renderer=o}if(a.tokenizer){let o=this.defaults.tokenizer||new eo(this.defaults);for(let n in a.tokenizer){if(!(n in o))throw new Error(`tokenizer '${n}' does not exist`);if(["options","rules","lexer"].includes(n))continue;let l=n,d=a.tokenizer[l],p=o[l];o[l]=(...f)=>{let c=d.apply(o,f);return c===!1&&(c=p.apply(o,f)),c}}s.tokenizer=o}if(a.hooks){let o=this.defaults.hooks||new Br;for(let n in a.hooks){if(!(n in o))throw new Error(`hook '${n}' does not exist`);if(n==="options")continue;let l=n,d=a.hooks[l],p=o[l];Br.passThroughHooks.has(n)?o[l]=f=>{if(this.defaults.async)return Promise.resolve(d.call(o,f)).then(u=>p.call(o,u));let c=d.call(o,f);return p.call(o,c)}:o[l]=(...f)=>{let c=d.apply(o,f);return c===!1&&(c=p.apply(o,f)),c}}s.hooks=o}if(a.walkTokens){let o=this.defaults.walkTokens,n=a.walkTokens;s.walkTokens=function(l){let d=[];return d.push(n.call(this,l)),o&&(d=d.concat(o.call(this,l))),d}}this.defaults={...this.defaults,...s}}),this}setOptions(t){return this.defaults={...this.defaults,...t},this}lexer(t,e){return ar.lex(t,e!=null?e:this.defaults)}parser(t,e){return rr.parse(t,e!=null?e:this.defaults)}};Vr=new WeakSet,Ik=function(t,e){return(a,s)=>{let o={...s},n={...this.defaults,...o};this.defaults.async===!0&&o.async===!1&&(n.silent||console.warn("marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored."),n.async=!0);let l=Li(this,Vr,yH).call(this,!!n.silent,!!n.async);if(typeof a=="undefined"||a===null)return l(new Error("marked(): input parameter is undefined or null"));if(typeof a!="string")return l(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(a)+", string expected"));if(n.hooks&&(n.hooks.options=n),n.async)return Promise.resolve(n.hooks?n.hooks.preprocess(a):a).then(d=>t(d,n)).then(d=>n.hooks?n.hooks.processAllTokens(d):d).then(d=>n.walkTokens?Promise.all(this.walkTokens(d,n.walkTokens)).then(()=>d):d).then(d=>e(d,n)).then(d=>n.hooks?n.hooks.postprocess(d):d).catch(l);try{n.hooks&&(a=n.hooks.preprocess(a));let d=t(a,n);n.hooks&&(d=n.hooks.processAllTokens(d)),n.walkTokens&&this.walkTokens(d,n.walkTokens);let p=e(d,n);return n.hooks&&(p=n.hooks.postprocess(p)),p}catch(d){return l(d)}}},yH=function(t,e){return a=>{if(a.message+=`
47
47
  Please report this to https://github.com/markedjs/marked.`,t){let s="<p>An error occurred:</p><pre>"+Ra(a.message+"",!0)+"</pre>";return e?Promise.resolve(s):s}if(e)return Promise.reject(a);throw a}};var Ir=new _1;function St(r,t){return Ir.parse(r,t)}St.options=St.setOptions=function(r){return Ir.setOptions(r),St.defaults=Ir.defaults,dH(St.defaults),St};St.getDefaults=Vk;St.defaults=Dr;St.use=function(...r){return Ir.use(...r),St.defaults=Ir.defaults,dH(St.defaults),St};St.walkTokens=function(r,t){return Ir.walkTokens(r,t)};St.parseInline=Ir.parseInline;St.Parser=rr;St.parser=rr.parse;St.Renderer=to;St.TextRenderer=z1;St.Lexer=ar;St.lexer=ar.lex;St.Tokenizer=eo;St.Hooks=Br;St.parse=St;var CV=St.options,wV=St.setOptions,SV=St.use,AV=St.walkTokens,kV=St.parseInline;var TV=rr.parse,LV=ar.lex;var rB=r=>{if(r)return r},$1=r=>{var s,o;let t=r==null?void 0:r.markedOptions,e=new _1({gfm:(s=t==null?void 0:t.gfm)!=null?s:!0,breaks:(o=t==null?void 0:t.breaks)!=null?o:!0,pedantic:t==null?void 0:t.pedantic,silent:t==null?void 0:t.silent}),a=rB(r==null?void 0:r.renderer);return a&&e.use({renderer:a}),n=>e.parse(n)},Fr=r=>r?$1({markedOptions:r.options,renderer:r.renderer}):$1(),oB=$1(),zk=r=>oB(r),ao=r=>r.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;"),bH=r=>r.replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;"),vH=r=>`%%FORM_PLACEHOLDER_${r}%%`,CH=(r,t)=>{let e=r;return e=e.replace(/<Directive>([\s\S]*?)<\/Directive>/gi,(a,s)=>{try{let o=JSON.parse(s.trim());if(o&&typeof o=="object"&&o.component==="form"&&o.type){let n=vH(t.length);return t.push({token:n,type:String(o.type)}),n}}catch{return a}return a}),e=e.replace(/<Form\s+type="([^"]+)"\s*\/>/gi,(a,s)=>{let o=vH(t.length);return t.push({token:o,type:s}),o}),e},wH=r=>{let t=Fr(r);return e=>{let a=[],s=CH(e,a),o=t(s);return a.forEach(({token:n,type:l})=>{let d=new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g"),f=`<div class="persona-form-directive" data-tv-form="${bH(l)}"></div>`;o=o.replace(d,f)}),o}},SH=r=>{let t=[],e=CH(r,t),a=zk(e);return t.forEach(({token:s,type:o})=>{let n=new RegExp(s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"g"),d=`<div class="persona-form-directive" data-tv-form="${bH(o)}"></div>`;a=a.replace(n,d)}),a};var{entries:BH,setPrototypeOf:AH,isFrozen:sB,getPrototypeOf:nB,getOwnPropertyDescriptor:lB}=Object,{freeze:xa,seal:za,create:Vi}=Object,{apply:Zk,construct:Xk}=typeof Reflect!="undefined"&&Reflect;xa||(xa=function(t){return t});za||(za=function(t){return t});Zk||(Zk=function(t,e){for(var a=arguments.length,s=new Array(a>2?a-2:0),o=2;o<a;o++)s[o-2]=arguments[o];return t.apply(e,s)});Xk||(Xk=function(t){for(var e=arguments.length,a=new Array(e>1?e-1:0),s=1;s<e;s++)a[s-1]=arguments[s];return new t(...a)});var Bi=ga(Array.prototype.forEach),iB=ga(Array.prototype.lastIndexOf),kH=ga(Array.prototype.pop),j1=ga(Array.prototype.push),dB=ga(Array.prototype.splice),Di=ga(String.prototype.toLowerCase),_k=ga(String.prototype.toString),qk=ga(String.prototype.match),G1=ga(String.prototype.replace),pB=ga(String.prototype.indexOf),cB=ga(String.prototype.trim),Ba=ga(Object.prototype.hasOwnProperty),ma=ga(RegExp.prototype.test),Z1=uB(TypeError);function ga(r){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var e=arguments.length,a=new Array(e>1?e-1:0),s=1;s<e;s++)a[s-1]=arguments[s];return Zk(r,t,a)}}function uB(r){return function(){for(var t=arguments.length,e=new Array(t),a=0;a<t;a++)e[a]=arguments[a];return Xk(r,e)}}function ot(r,t){let e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Di;AH&&AH(r,null);let a=t.length;for(;a--;){let s=t[a];if(typeof s=="string"){let o=e(s);o!==s&&(sB(t)||(t[a]=o),s=o)}r[s]=!0}return r}function fB(r){for(let t=0;t<r.length;t++)Ba(r,t)||(r[t]=null);return r}function Xa(r){let t=Vi(null);for(let[e,a]of BH(r))Ba(r,e)&&(Array.isArray(a)?t[e]=fB(a):a&&typeof a=="object"&&a.constructor===Object?t[e]=Xa(a):t[e]=a);return t}function X1(r,t){for(;r!==null;){let a=lB(r,t);if(a){if(a.get)return ga(a.get);if(typeof a.value=="function")return ga(a.value)}r=nB(r)}function e(){return null}return e}var TH=xa(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Uk=xa(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),$k=xa(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),hB=xa(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),jk=xa(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),mB=xa(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),LH=xa(["#text"]),EH=xa(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]),Gk=xa(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),HH=xa(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),Ii=xa(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),xB=za(/\{\{[\w\W]*|[\w\W]*\}\}/gm),gB=za(/<%[\w\W]*|[\w\W]*%>/gm),MB=za(/\$\{[\w\W]*/gm),yB=za(/^data-[\-\w.\u00B7-\uFFFF]+$/),vB=za(/^aria-[\-\w]+$/),IH=za(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),bB=za(/^(?:\w+script|data):/i),CB=za(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),VH=za(/^html$/i),wB=za(/^[a-z][.\w]*(-[.\w]+)+$/i),PH=Object.freeze({__proto__:null,ARIA_ATTR:vB,ATTR_WHITESPACE:CB,CUSTOM_ELEMENT:wB,DATA_ATTR:yB,DOCTYPE_NAME:VH,ERB_EXPR:gB,IS_ALLOWED_URI:IH,IS_SCRIPT_OR_DATA:bB,MUSTACHE_EXPR:xB,TMPLIT_EXPR:MB}),J1={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},SB=function(){return typeof window=="undefined"?null:window},AB=function(t,e){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let a=null,s="data-tt-policy-suffix";e&&e.hasAttribute(s)&&(a=e.getAttribute(s));let o="dompurify"+(a?"#"+a:"");try{return t.createPolicy(o,{createHTML(n){return n},createScriptURL(n){return n}})}catch{return console.warn("TrustedTypes policy "+o+" could not be created."),null}},RH=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function DH(){let r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:SB(),t=xe=>DH(xe);if(t.version="3.3.3",t.removed=[],!r||!r.document||r.document.nodeType!==J1.document||!r.Element)return t.isSupported=!1,t;let{document:e}=r,a=e,s=a.currentScript,{DocumentFragment:o,HTMLTemplateElement:n,Node:l,Element:d,NodeFilter:p,NamedNodeMap:f=r.NamedNodeMap||r.MozNamedAttrMap,HTMLFormElement:c,DOMParser:u,trustedTypes:h}=r,b=d.prototype,w=X1(b,"cloneNode"),E=X1(b,"remove"),M=X1(b,"nextSibling"),y=X1(b,"childNodes"),H=X1(b,"parentNode");if(typeof n=="function"){let xe=e.createElement("template");xe.content&&xe.content.ownerDocument&&(e=xe.content.ownerDocument)}let x,v="",{implementation:g,createNodeIterator:T,createDocumentFragment:D,getElementsByTagName:B}=e,{importNode:q}=a,V=RH();t.isSupported=typeof BH=="function"&&typeof H=="function"&&g&&g.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:ae,ERB_EXPR:ke,TMPLIT_EXPR:Ee,DATA_ATTR:we,ARIA_ATTR:re,IS_SCRIPT_OR_DATA:ne,ATTR_WHITESPACE:j,CUSTOM_ELEMENT:X}=PH,{IS_ALLOWED_URI:le}=PH,oe=null,kt=ot({},[...TH,...Uk,...$k,...jk,...LH]),Fe=null,bt=ot({},[...EH,...Gk,...HH,...Ii]),Xe=Object.seal(Vi(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),pe=null,ie=null,Oe=Object.seal(Vi(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),Z=!0,ee=!0,be=!1,Ye=!0,Q=!1,K=!0,Qe=!1,Ve=!1,qe=!1,Tt=!1,qt=!1,ce=!1,et=!0,He=!1,dt="user-content-",ze=!0,tt=!1,Lt={},xt=null,It=ot({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),_=null,te=ot({},["audio","video","img","source","image","track"]),Y=null,G=ot({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ce="http://www.w3.org/1998/Math/MathML",Te="http://www.w3.org/2000/svg",Le="http://www.w3.org/1999/xhtml",pt=Le,Se=!1,Ae=null,_e=ot({},[Ce,Te,Le],_k),he=ot({},["mi","mo","mn","ms","mtext"]),Ct=ot({},["annotation-xml"]),pa=ot({},["title","style","font","a","script"]),sa=null,Ia=["application/xhtml+xml","text/html"],Gr="text/html",wt=null,Sa=null,it=e.createElement("form"),Aa=function(C){return C instanceof RegExp||C instanceof Function},Va=function(){let C=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(Sa&&Sa===C)){if((!C||typeof C!="object")&&(C={}),C=Xa(C),sa=Ia.indexOf(C.PARSER_MEDIA_TYPE)===-1?Gr:C.PARSER_MEDIA_TYPE,wt=sa==="application/xhtml+xml"?_k:Di,oe=Ba(C,"ALLOWED_TAGS")?ot({},C.ALLOWED_TAGS,wt):kt,Fe=Ba(C,"ALLOWED_ATTR")?ot({},C.ALLOWED_ATTR,wt):bt,Ae=Ba(C,"ALLOWED_NAMESPACES")?ot({},C.ALLOWED_NAMESPACES,_k):_e,Y=Ba(C,"ADD_URI_SAFE_ATTR")?ot(Xa(G),C.ADD_URI_SAFE_ATTR,wt):G,_=Ba(C,"ADD_DATA_URI_TAGS")?ot(Xa(te),C.ADD_DATA_URI_TAGS,wt):te,xt=Ba(C,"FORBID_CONTENTS")?ot({},C.FORBID_CONTENTS,wt):It,pe=Ba(C,"FORBID_TAGS")?ot({},C.FORBID_TAGS,wt):Xa({}),ie=Ba(C,"FORBID_ATTR")?ot({},C.FORBID_ATTR,wt):Xa({}),Lt=Ba(C,"USE_PROFILES")?C.USE_PROFILES:!1,Z=C.ALLOW_ARIA_ATTR!==!1,ee=C.ALLOW_DATA_ATTR!==!1,be=C.ALLOW_UNKNOWN_PROTOCOLS||!1,Ye=C.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Q=C.SAFE_FOR_TEMPLATES||!1,K=C.SAFE_FOR_XML!==!1,Qe=C.WHOLE_DOCUMENT||!1,Tt=C.RETURN_DOM||!1,qt=C.RETURN_DOM_FRAGMENT||!1,ce=C.RETURN_TRUSTED_TYPE||!1,qe=C.FORCE_BODY||!1,et=C.SANITIZE_DOM!==!1,He=C.SANITIZE_NAMED_PROPS||!1,ze=C.KEEP_CONTENT!==!1,tt=C.IN_PLACE||!1,le=C.ALLOWED_URI_REGEXP||IH,pt=C.NAMESPACE||Le,he=C.MATHML_TEXT_INTEGRATION_POINTS||he,Ct=C.HTML_INTEGRATION_POINTS||Ct,Xe=C.CUSTOM_ELEMENT_HANDLING||{},C.CUSTOM_ELEMENT_HANDLING&&Aa(C.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(Xe.tagNameCheck=C.CUSTOM_ELEMENT_HANDLING.tagNameCheck),C.CUSTOM_ELEMENT_HANDLING&&Aa(C.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(Xe.attributeNameCheck=C.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),C.CUSTOM_ELEMENT_HANDLING&&typeof C.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(Xe.allowCustomizedBuiltInElements=C.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Q&&(ee=!1),qt&&(Tt=!0),Lt&&(oe=ot({},LH),Fe=Vi(null),Lt.html===!0&&(ot(oe,TH),ot(Fe,EH)),Lt.svg===!0&&(ot(oe,Uk),ot(Fe,Gk),ot(Fe,Ii)),Lt.svgFilters===!0&&(ot(oe,$k),ot(Fe,Gk),ot(Fe,Ii)),Lt.mathMl===!0&&(ot(oe,jk),ot(Fe,HH),ot(Fe,Ii))),Ba(C,"ADD_TAGS")||(Oe.tagCheck=null),Ba(C,"ADD_ATTR")||(Oe.attributeCheck=null),C.ADD_TAGS&&(typeof C.ADD_TAGS=="function"?Oe.tagCheck=C.ADD_TAGS:(oe===kt&&(oe=Xa(oe)),ot(oe,C.ADD_TAGS,wt))),C.ADD_ATTR&&(typeof C.ADD_ATTR=="function"?Oe.attributeCheck=C.ADD_ATTR:(Fe===bt&&(Fe=Xa(Fe)),ot(Fe,C.ADD_ATTR,wt))),C.ADD_URI_SAFE_ATTR&&ot(Y,C.ADD_URI_SAFE_ATTR,wt),C.FORBID_CONTENTS&&(xt===It&&(xt=Xa(xt)),ot(xt,C.FORBID_CONTENTS,wt)),C.ADD_FORBID_CONTENTS&&(xt===It&&(xt=Xa(xt)),ot(xt,C.ADD_FORBID_CONTENTS,wt)),ze&&(oe["#text"]=!0),Qe&&ot(oe,["html","head","body"]),oe.table&&(ot(oe,["tbody"]),delete pe.tbody),C.TRUSTED_TYPES_POLICY){if(typeof C.TRUSTED_TYPES_POLICY.createHTML!="function")throw Z1('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof C.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw Z1('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');x=C.TRUSTED_TYPES_POLICY,v=x.createHTML("")}else x===void 0&&(x=AB(h,s)),x!==null&&typeof v=="string"&&(v=x.createHTML(""));xa&&xa(C),Sa=C}},ya=ot({},[...Uk,...$k,...hB]),dr=ot({},[...jk,...mB]),Da=function(C){let S=H(C);(!S||!S.tagName)&&(S={namespaceURI:pt,tagName:"template"});let ue=Di(C.tagName),ct=Di(S.tagName);return Ae[C.namespaceURI]?C.namespaceURI===Te?S.namespaceURI===Le?ue==="svg":S.namespaceURI===Ce?ue==="svg"&&(ct==="annotation-xml"||he[ct]):!!ya[ue]:C.namespaceURI===Ce?S.namespaceURI===Le?ue==="math":S.namespaceURI===Te?ue==="math"&&Ct[ct]:!!dr[ue]:C.namespaceURI===Le?S.namespaceURI===Te&&!Ct[ct]||S.namespaceURI===Ce&&!he[ct]?!1:!dr[ue]&&(pa[ue]||!ya[ue]):!!(sa==="application/xhtml+xml"&&Ae[C.namespaceURI]):!1},rt=function(C){j1(t.removed,{element:C});try{H(C).removeChild(C)}catch{E(C)}},jt=function(C,S){try{j1(t.removed,{attribute:S.getAttributeNode(C),from:S})}catch{j1(t.removed,{attribute:null,from:S})}if(S.removeAttribute(C),C==="is")if(Tt||qt)try{rt(S)}catch{}else try{S.setAttribute(C,"")}catch{}},Fa=function(C){let S=null,ue=null;if(qe)C="<remove></remove>"+C;else{let gt=qk(C,/^[\r\n\t ]+/);ue=gt&&gt[0]}sa==="application/xhtml+xml"&&pt===Le&&(C='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+C+"</body></html>");let ct=x?x.createHTML(C):C;if(pt===Le)try{S=new u().parseFromString(ct,sa)}catch{}if(!S||!S.documentElement){S=g.createDocument(pt,"template",null);try{S.documentElement.innerHTML=Se?v:ct}catch{}}let Nt=S.body||S.documentElement;return C&&ue&&Nt.insertBefore(e.createTextNode(ue),Nt.childNodes[0]||null),pt===Le?B.call(S,Qe?"html":"body")[0]:Qe?S.documentElement:Nt},pr=function(C){return T.call(C.ownerDocument||C,C,p.SHOW_ELEMENT|p.SHOW_COMMENT|p.SHOW_TEXT|p.SHOW_PROCESSING_INSTRUCTION|p.SHOW_CDATA_SECTION,null)},ja=function(C){return C instanceof c&&(typeof C.nodeName!="string"||typeof C.textContent!="string"||typeof C.removeChild!="function"||!(C.attributes instanceof f)||typeof C.removeAttribute!="function"||typeof C.setAttribute!="function"||typeof C.namespaceURI!="string"||typeof C.insertBefore!="function"||typeof C.hasChildNodes!="function")},cr=function(C){return typeof l=="function"&&C instanceof l};function aa(xe,C,S){Bi(xe,ue=>{ue.call(t,C,S,Sa)})}let ka=function(C){let S=null;if(aa(V.beforeSanitizeElements,C,null),ja(C))return rt(C),!0;let ue=wt(C.nodeName);if(aa(V.uponSanitizeElement,C,{tagName:ue,allowedTags:oe}),K&&C.hasChildNodes()&&!cr(C.firstElementChild)&&ma(/<[/\w!]/g,C.innerHTML)&&ma(/<[/\w!]/g,C.textContent)||C.nodeType===J1.progressingInstruction||K&&C.nodeType===J1.comment&&ma(/<[/\w]/g,C.data))return rt(C),!0;if(!(Oe.tagCheck instanceof Function&&Oe.tagCheck(ue))&&(!oe[ue]||pe[ue])){if(!pe[ue]&&Et(ue)&&(Xe.tagNameCheck instanceof RegExp&&ma(Xe.tagNameCheck,ue)||Xe.tagNameCheck instanceof Function&&Xe.tagNameCheck(ue)))return!1;if(ze&&!xt[ue]){let ct=H(C)||C.parentNode,Nt=y(C)||C.childNodes;if(Nt&&ct){let gt=Nt.length;for(let zt=gt-1;zt>=0;--zt){let ca=w(Nt[zt],!0);ca.__removalCount=(C.__removalCount||0)+1,ct.insertBefore(ca,M(C))}}}return rt(C),!0}return C instanceof d&&!Da(C)||(ue==="noscript"||ue==="noembed"||ue==="noframes")&&ma(/<\/no(script|embed|frames)/i,C.innerHTML)?(rt(C),!0):(Q&&C.nodeType===J1.text&&(S=C.textContent,Bi([ae,ke,Ee],ct=>{S=G1(S,ct," ")}),C.textContent!==S&&(j1(t.removed,{element:C.cloneNode()}),C.textContent=S)),aa(V.afterSanitizeElements,C,null),!1)},Ga=function(C,S,ue){if(ie[S]||et&&(S==="id"||S==="name")&&(ue in e||ue in it))return!1;if(!(ee&&!ie[S]&&ma(we,S))){if(!(Z&&ma(re,S))){if(!(Oe.attributeCheck instanceof Function&&Oe.attributeCheck(S,C))){if(!Fe[S]||ie[S]){if(!(Et(C)&&(Xe.tagNameCheck instanceof RegExp&&ma(Xe.tagNameCheck,C)||Xe.tagNameCheck instanceof Function&&Xe.tagNameCheck(C))&&(Xe.attributeNameCheck instanceof RegExp&&ma(Xe.attributeNameCheck,S)||Xe.attributeNameCheck instanceof Function&&Xe.attributeNameCheck(S,C))||S==="is"&&Xe.allowCustomizedBuiltInElements&&(Xe.tagNameCheck instanceof RegExp&&ma(Xe.tagNameCheck,ue)||Xe.tagNameCheck instanceof Function&&Xe.tagNameCheck(ue))))return!1}else if(!Y[S]){if(!ma(le,G1(ue,j,""))){if(!((S==="src"||S==="xlink:href"||S==="href")&&C!=="script"&&pB(ue,"data:")===0&&_[C])){if(!(be&&!ma(ne,G1(ue,j,"")))){if(ue)return!1}}}}}}}return!0},Et=function(C){return C!=="annotation-xml"&&qk(C,X)},Ta=function(C){aa(V.beforeSanitizeAttributes,C,null);let{attributes:S}=C;if(!S||ja(C))return;let ue={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Fe,forceKeepAttr:void 0},ct=S.length;for(;ct--;){let Nt=S[ct],{name:gt,namespaceURI:zt,value:ca}=Nt,na=wt(gt),La=ca,Vt=gt==="value"?La:cB(La);if(ue.attrName=na,ue.attrValue=Vt,ue.keepAttr=!0,ue.forceKeepAttr=void 0,aa(V.uponSanitizeAttribute,C,ue),Vt=ue.attrValue,He&&(na==="id"||na==="name")&&(jt(gt,C),Vt=dt+Vt),K&&ma(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,Vt)){jt(gt,C);continue}if(na==="attributename"&&qk(Vt,"href")){jt(gt,C);continue}if(ue.forceKeepAttr)continue;if(!ue.keepAttr){jt(gt,C);continue}if(!Ye&&ma(/\/>/i,Vt)){jt(gt,C);continue}Q&&Bi([ae,ke,Ee],wr=>{Vt=G1(Vt,wr," ")});let Qa=wt(C.nodeName);if(!Ga(Qa,na,Vt)){jt(gt,C);continue}if(x&&typeof h=="object"&&typeof h.getAttributeType=="function"&&!zt)switch(h.getAttributeType(Qa,na)){case"TrustedHTML":{Vt=x.createHTML(Vt);break}case"TrustedScriptURL":{Vt=x.createScriptURL(Vt);break}}if(Vt!==La)try{zt?C.setAttributeNS(zt,gt,Vt):C.setAttribute(gt,Vt),ja(C)?rt(C):kH(t.removed)}catch{jt(gt,C)}}aa(V.afterSanitizeAttributes,C,null)},Cr=function xe(C){let S=null,ue=pr(C);for(aa(V.beforeSanitizeShadowDOM,C,null);S=ue.nextNode();)aa(V.uponSanitizeShadowNode,S,null),ka(S),Ta(S),S.content instanceof o&&xe(S.content);aa(V.afterSanitizeShadowDOM,C,null)};return t.sanitize=function(xe){let C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},S=null,ue=null,ct=null,Nt=null;if(Se=!xe,Se&&(xe="<!-->"),typeof xe!="string"&&!cr(xe))if(typeof xe.toString=="function"){if(xe=xe.toString(),typeof xe!="string")throw Z1("dirty is not a string, aborting")}else throw Z1("toString is not a function");if(!t.isSupported)return xe;if(Ve||Va(C),t.removed=[],typeof xe=="string"&&(tt=!1),tt){if(xe.nodeName){let ca=wt(xe.nodeName);if(!oe[ca]||pe[ca])throw Z1("root node is forbidden and cannot be sanitized in-place")}}else if(xe instanceof l)S=Fa("<!---->"),ue=S.ownerDocument.importNode(xe,!0),ue.nodeType===J1.element&&ue.nodeName==="BODY"||ue.nodeName==="HTML"?S=ue:S.appendChild(ue);else{if(!Tt&&!Q&&!Qe&&xe.indexOf("<")===-1)return x&&ce?x.createHTML(xe):xe;if(S=Fa(xe),!S)return Tt?null:ce?v:""}S&&qe&&rt(S.firstChild);let gt=pr(tt?xe:S);for(;ct=gt.nextNode();)ka(ct),Ta(ct),ct.content instanceof o&&Cr(ct.content);if(tt)return xe;if(Tt){if(qt)for(Nt=D.call(S.ownerDocument);S.firstChild;)Nt.appendChild(S.firstChild);else Nt=S;return(Fe.shadowroot||Fe.shadowrootmode)&&(Nt=q.call(a,Nt,!0)),Nt}let zt=Qe?S.outerHTML:S.innerHTML;return Qe&&oe["!doctype"]&&S.ownerDocument&&S.ownerDocument.doctype&&S.ownerDocument.doctype.name&&ma(VH,S.ownerDocument.doctype.name)&&(zt="<!DOCTYPE "+S.ownerDocument.doctype.name+`>
48
- `+zt),Q&&Bi([ae,ke,Ee],ca=>{zt=G1(zt,ca," ")}),x&&ce?x.createHTML(zt):zt},t.setConfig=function(){let xe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Va(xe),Ve=!0},t.clearConfig=function(){Sa=null,Ve=!1},t.isValidAttribute=function(xe,C,S){Sa||Va({});let ue=wt(xe),ct=wt(C);return Ga(ue,ct,S)},t.addHook=function(xe,C){typeof C=="function"&&j1(V[xe],C)},t.removeHook=function(xe,C){if(C!==void 0){let S=iB(V[xe],C);return S===-1?void 0:dB(V[xe],S,1)[0]}return kH(V[xe])},t.removeHooks=function(xe){V[xe]=[]},t.removeAllHooks=function(){V=RH()},t}var FH=DH();var kB={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"]},TB=/^data:image\/(?:png|jpe?g|gif|webp|bmp|x-icon|avif)/i,Jk=()=>{let r=FH(typeof window!="undefined"?window:void 0);return r.addHook("uponSanitizeAttribute",(t,e)=>{if(e.attrName==="src"||e.attrName==="href"){let a=e.attrValue;a.toLowerCase().startsWith("data:")&&!TB.test(a)&&(e.attrValue="",e.forceKeepAttr=!1)}}),t=>r.sanitize(t,kB)},ro=r=>r===!1?null:typeof r=="function"?r:Jk();var or=aH(Yk(),1),Oi=r=>r.replace(/\\n/g,`
48
+ `+zt),Q&&Bi([ae,ke,Ee],ca=>{zt=G1(zt,ca," ")}),x&&ce?x.createHTML(zt):zt},t.setConfig=function(){let xe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Va(xe),Ve=!0},t.clearConfig=function(){Sa=null,Ve=!1},t.isValidAttribute=function(xe,C,S){Sa||Va({});let ue=wt(xe),ct=wt(C);return Ga(ue,ct,S)},t.addHook=function(xe,C){typeof C=="function"&&j1(V[xe],C)},t.removeHook=function(xe,C){if(C!==void 0){let S=iB(V[xe],C);return S===-1?void 0:dB(V[xe],S,1)[0]}return kH(V[xe])},t.removeHooks=function(xe){V[xe]=[]},t.removeAllHooks=function(){V=RH()},t}var FH=DH();var kB={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"]},TB=/^data:image\/(?:png|jpe?g|gif|webp|bmp|x-icon|avif)/i,Jk=()=>{let r=FH(typeof window!="undefined"?window:void 0);return r.addHook("uponSanitizeAttribute",(t,e)=>{if(e.attrName==="src"||e.attrName==="href"){let a=e.attrValue;a.toLowerCase().startsWith("data:")&&!TB.test(a)&&(e.attrValue="",e.keepAttr=!1)}}),t=>r.sanitize(t,kB)},ro=r=>r===!1?null:typeof r=="function"?r:Jk();var or=aH(Yk(),1),Oi=r=>r.replace(/\\n/g,`
49
49
  `).replace(/\\r/g,"\r").replace(/\\t/g," ").replace(/\\"/g,'"').replace(/\\\\/g,"\\"),K1=r=>{if(r===null)return"null";if(r===void 0)return"";if(typeof r=="string")return r;if(typeof r=="number"||typeof r=="boolean")return String(r);try{return JSON.stringify(r,null,2)}catch{return String(r)}},RB=r=>{var n,l;let t=(n=r.completedAt)!=null?n:Date.now(),e=(l=r.startedAt)!=null?l:t,s=(r.durationMs!==void 0?r.durationMs:Math.max(0,t-e))/1e3;return s<.1?"Thought for <0.1 seconds":`Thought for ${s>=10?Math.round(s).toString():s.toFixed(1).replace(/\.0$/,"")} seconds`},OH=r=>r.status==="complete"?RB(r):r.status==="pending"?"Waiting":"",BB=r=>{var s,o,n;let e=(typeof r.duration=="number"?r.duration:typeof r.durationMs=="number"?r.durationMs:Math.max(0,((s=r.completedAt)!=null?s:Date.now())-((n=(o=r.startedAt)!=null?o:r.completedAt)!=null?n:Date.now())))/1e3;return e<.1?"Used tool for <0.1 seconds":`Used tool for ${e>=10?Math.round(e).toString():e.toFixed(1).replace(/\.0$/,"")} seconds`};var NH=r=>r.status==="complete"?BB(r):"Using tool...",IB=()=>{let r=null,t=0,e=a=>{let s=/"text"\s*:\s*"((?:[^"\\]|\\.|")*?)"/,o=a.match(s);if(o&&o[1])try{return o[1].replace(/\\n/g,`
50
50
  `).replace(/\\r/g,"\r").replace(/\\t/g," ").replace(/\\"/g,'"').replace(/\\\\/g,"\\")}catch{return o[1]}let n=/"text"\s*:\s*"((?:[^"\\]|\\.)*)/,l=a.match(n);if(l&&l[1])try{return l[1].replace(/\\n/g,`
51
51
  `).replace(/\\r/g,"\r").replace(/\\t/g," ").replace(/\\"/g,'"').replace(/\\\\/g,"\\")}catch{return l[1]}return null};return{getExtractedText:()=>r,processChunk:async a=>{if(a.length<=t)return r!==null?{text:r,raw:a}:null;let s=a.trim();if(!s.startsWith("{")&&!s.startsWith("["))return null;let o=e(a);return o!==null&&(r=o),t=a.length,r!==null?{text:r,raw:a}:null},close:async()=>{}}},Ni=r=>{try{let t=JSON.parse(r);if(t&&typeof t=="object"&&typeof t.text=="string")return t.text}catch{return null}return null},zi=()=>{let r={processChunk:t=>null,getExtractedText:()=>null};return r.__isPlainTextParser=!0,r},_i=()=>{var t;let r=IB();return{processChunk:async e=>{let a=e.trim();return!a.startsWith("{")&&!a.startsWith("[")?null:r.processChunk(e)},getExtractedText:r.getExtractedText.bind(r),close:(t=r.close)==null?void 0:t.bind(r)}},qi=()=>{let r=null,t=0;return{getExtractedText:()=>r,processChunk:e=>{let a=e.trim();if(!a.startsWith("{")&&!a.startsWith("["))return null;if(e.length<=t)return r!==null||r===""?{text:r||"",raw:e}:null;try{let s=(0,or.parse)(e,or.STR|or.OBJ);s&&typeof s=="object"&&(s.component&&typeof s.component=="string"?r=typeof s.text=="string"?Oi(s.text):"":s.type==="init"&&s.form?r="":typeof s.text=="string"&&(r=Oi(s.text)))}catch{}return t=e.length,r!==null?{text:r,raw:e}:null},close:()=>{}}},zH=r=>{let t=null,e=0,s=r||(o=>{if(!o||typeof o!="object")return null;let n=l=>typeof l=="string"?Oi(l):null;if(o.component&&typeof o.component=="string")return typeof o.text=="string"?Oi(o.text):"";if(o.type==="init"&&o.form)return"";if(o.action)switch(o.action){case"nav_then_click":return n(o.on_load_text)||n(o.text)||null;case"message":case"message_and_click":case"checkout":return n(o.text)||null;default:return n(o.text)||n(o.display_text)||n(o.message)||null}return n(o.text)||n(o.display_text)||n(o.message)||n(o.content)||null});return{getExtractedText:()=>t,processChunk:o=>{let n=o.trim();if(!n.startsWith("{")&&!n.startsWith("["))return null;if(o.length<=e)return t!==null?{text:t,raw:o}:null;try{let l=(0,or.parse)(o,or.STR|or.OBJ),d=s(l);d!==null&&(t=d)}catch{}return e=o.length,{text:t||"",raw:o}},close:()=>{}}},Ui=()=>{let r=null;return{processChunk:t=>{if(!t.trim().startsWith("<"))return null;let a=t.match(/<text[^>]*>([\s\S]*?)<\/text>/);return a&&a[1]?(r=a[1],{text:r,raw:t}):null},getExtractedText:()=>r}};var VB="https://api.runtype.com/v1/dispatch",Qk="https://api.runtype.com",eT=r=>!!(r.contentParts&&r.contentParts.length>0||r.llmContent&&r.llmContent.trim().length>0||r.rawContent&&r.rawContent.trim().length>0||r.content&&r.content.trim().length>0);function DB(r){switch(r){case"json":return qi;case"regex-json":return _i;case"xml":return Ui;default:return zi}}var Wr=class{constructor(t={}){this.config=t;this.clientSession=null;this.sessionInitPromise=null;var e,a,s;this.apiUrl=(e=t.apiUrl)!=null?e:VB,this.headers={"Content-Type":"application/json",...t.headers},this.debug=!!t.debug,this.createStreamParser=(a=t.streamParser)!=null?a:DB(t.parserType),this.contextProviders=(s=t.contextProviders)!=null?s:[],this.requestMiddleware=t.requestMiddleware,this.customFetch=t.customFetch,this.parseSSEEvent=t.parseSSEEvent,this.getHeaders=t.getHeaders}setSSEEventCallback(t){this.onSSEEvent=t}getSSEEventCallback(){return this.onSSEEvent}isClientTokenMode(){return!!this.config.clientToken}isAgentMode(){return!!this.config.agent}getClientApiUrl(t){var a;let e=((a=this.config.apiUrl)==null?void 0:a.replace(/\/+$/,"").replace(/\/v1\/dispatch$/,""))||Qk;return t==="init"?`${e}/v1/client/init`:`${e}/v1/client/chat`}getClientSession(){return this.clientSession}async initSession(){var t,e;if(!this.isClientTokenMode())throw new Error("initSession() only available in client token mode");if(this.clientSession&&new Date<this.clientSession.expiresAt)return this.clientSession;if(this.sessionInitPromise)return this.sessionInitPromise;this.sessionInitPromise=this._doInitSession();try{let a=await this.sessionInitPromise;return this.clientSession=a,(e=(t=this.config).onSessionInit)==null||e.call(t,a),a}finally{this.sessionInitPromise=null}}async _doInitSession(){var o,n;let t=((n=(o=this.config).getStoredSessionId)==null?void 0:n.call(o))||null,e={token:this.config.clientToken,...this.config.flowId&&{flowId:this.config.flowId},...t&&{sessionId:t}},a=await fetch(this.getClientApiUrl("init"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!a.ok){let l=await a.json().catch(()=>({error:"Session initialization failed"}));throw a.status===401?new Error(`Invalid client token: ${l.hint||l.error}`):a.status===403?new Error(`Origin not allowed: ${l.hint||l.error}`):new Error(l.error||"Failed to initialize session")}let s=await a.json();return this.config.setStoredSessionId&&this.config.setStoredSessionId(s.sessionId),{sessionId:s.sessionId,expiresAt:new Date(s.expiresAt),flow:s.flow,config:{welcomeMessage:s.config.welcomeMessage,placeholder:s.config.placeholder,theme:s.config.theme}}}clearClientSession(){this.clientSession=null,this.sessionInitPromise=null}getFeedbackApiUrl(){var e;return`${((e=this.config.apiUrl)==null?void 0:e.replace(/\/+$/,"").replace(/\/v1\/dispatch$/,""))||Qk}/v1/client/feedback`}async sendFeedback(t){var o,n;if(!this.isClientTokenMode())throw new Error("sendFeedback() only available in client token mode");if(!this.getClientSession())throw new Error("No active session. Please initialize session first.");if(["upvote","downvote","copy"].includes(t.type)&&!t.messageId)throw new Error(`messageId is required for ${t.type} feedback type`);if(t.type==="csat"&&(t.rating===void 0||t.rating<1||t.rating>5))throw new Error("CSAT rating must be between 1 and 5");if(t.type==="nps"&&(t.rating===void 0||t.rating<0||t.rating>10))throw new Error("NPS rating must be between 0 and 10");this.debug&&console.debug("[AgentWidgetClient] sending feedback",t);let s=await fetch(this.getFeedbackApiUrl(),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!s.ok){let l=await s.json().catch(()=>({error:"Feedback submission failed"}));throw s.status===401?(this.clientSession=null,(n=(o=this.config).onSessionExpired)==null||n.call(o),new Error("Session expired. Please refresh to continue.")):new Error(l.error||"Failed to submit feedback")}}async submitMessageFeedback(t,e){let a=this.getClientSession();if(!a)throw new Error("No active session. Please initialize session first.");return this.sendFeedback({sessionId:a.sessionId,messageId:t,type:e})}async submitCSATFeedback(t,e){let a=this.getClientSession();if(!a)throw new Error("No active session. Please initialize session first.");return this.sendFeedback({sessionId:a.sessionId,type:"csat",rating:t,comment:e})}async submitNPSFeedback(t,e){let a=this.getClientSession();if(!a)throw new Error("No active session. Please initialize session first.");return this.sendFeedback({sessionId:a.sessionId,type:"nps",rating:t,comment:e})}async dispatch(t,e){return this.isAgentMode()?this.dispatchAgent(t,e):this.isClientTokenMode()?this.dispatchClientToken(t,e):this.dispatchProxy(t,e)}async dispatchClientToken(t,e){var s,o,n,l;let a=new AbortController;t.signal&&t.signal.addEventListener("abort",()=>a.abort()),e({type:"status",status:"connecting"});try{let d=await this.initSession();if(new Date>=new Date(d.expiresAt.getTime()-6e4)){this.clientSession=null,(o=(s=this.config).onSessionExpired)==null||o.call(s);let h=new Error("Session expired. Please refresh to continue.");throw e({type:"error",error:h}),h}let p=await this.buildPayload(t.messages),f=p.metadata?Object.fromEntries(Object.entries(p.metadata).filter(([h])=>h!=="sessionId"&&h!=="session_id")):void 0,c={sessionId:d.sessionId,messages:t.messages.filter(eT).map(h=>{var b,w,E;return{id:h.id,role:h.role,content:(E=(w=(b=h.contentParts)!=null?b:h.llmContent)!=null?w:h.rawContent)!=null?E:h.content}}),...t.assistantMessageId&&{assistantMessageId:t.assistantMessageId},...f&&Object.keys(f).length>0&&{metadata:f},...p.inputs&&Object.keys(p.inputs).length>0&&{inputs:p.inputs},...p.context&&{context:p.context}};this.debug&&console.debug("[AgentWidgetClient] client token dispatch",c);let u=await fetch(this.getClientApiUrl("chat"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(c),signal:a.signal});if(!u.ok){let h=await u.json().catch(()=>({error:"Chat request failed"}));if(u.status===401){this.clientSession=null,(l=(n=this.config).onSessionExpired)==null||l.call(n);let w=new Error("Session expired. Please refresh to continue.");throw e({type:"error",error:w}),w}if(u.status===429){let w=new Error(h.hint||"Message limit reached for this session.");throw e({type:"error",error:w}),w}let b=new Error(h.error||"Failed to send message");throw e({type:"error",error:b}),b}if(!u.body){let h=new Error("No response body received");throw e({type:"error",error:h}),h}e({type:"status",status:"connected"});try{await this.streamResponse(u.body,e,t.assistantMessageId)}finally{e({type:"status",status:"idle"})}}catch(d){let p=d instanceof Error?d:new Error(String(d));throw!p.message.includes("Session expired")&&!p.message.includes("Message limit")&&e({type:"error",error:p}),p}}async dispatchProxy(t,e){let a=new AbortController;t.signal&&t.signal.addEventListener("abort",()=>a.abort()),e({type:"status",status:"connecting"});let s=await this.buildPayload(t.messages);this.debug&&console.debug("[AgentWidgetClient] dispatch payload",s);let o={...this.headers};if(this.getHeaders)try{let l=await this.getHeaders();o={...o,...l}}catch(l){typeof console!="undefined"&&console.error("[AgentWidget] getHeaders error:",l)}let n;if(this.customFetch)try{n=await this.customFetch(this.apiUrl,{method:"POST",headers:o,body:JSON.stringify(s),signal:a.signal},s)}catch(l){let d=l instanceof Error?l:new Error(String(l));throw e({type:"error",error:d}),d}else n=await fetch(this.apiUrl,{method:"POST",headers:o,body:JSON.stringify(s),signal:a.signal});if(!n.ok||!n.body){let l=new Error(`Chat backend request failed: ${n.status} ${n.statusText}`);throw e({type:"error",error:l}),l}e({type:"status",status:"connected"});try{await this.streamResponse(n.body,e)}finally{e({type:"status",status:"idle"})}}async dispatchAgent(t,e){let a=new AbortController;t.signal&&t.signal.addEventListener("abort",()=>a.abort()),e({type:"status",status:"connecting"});let s=await this.buildAgentPayload(t.messages);this.debug&&console.debug("[AgentWidgetClient] agent dispatch payload",s);let o={...this.headers};if(this.getHeaders)try{let l=await this.getHeaders();o={...o,...l}}catch(l){typeof console!="undefined"&&console.error("[AgentWidget] getHeaders error:",l)}let n;if(this.customFetch)try{n=await this.customFetch(this.apiUrl,{method:"POST",headers:o,body:JSON.stringify(s),signal:a.signal},s)}catch(l){let d=l instanceof Error?l:new Error(String(l));throw e({type:"error",error:d}),d}else n=await fetch(this.apiUrl,{method:"POST",headers:o,body:JSON.stringify(s),signal:a.signal});if(!n.ok||!n.body){let l=new Error(`Agent execution request failed: ${n.status} ${n.statusText}`);throw e({type:"error",error:l}),l}e({type:"status",status:"connected"});try{await this.streamResponse(n.body,e,t.assistantMessageId)}finally{e({type:"status",status:"idle"})}}async processStream(t,e,a){e({type:"status",status:"connected"});try{await this.streamResponse(t,e,a)}finally{e({type:"status",status:"idle"})}}async resolveApproval(t,e){var n;let s=`${((n=this.config.apiUrl)==null?void 0:n.replace(/\/+$/,"").replace(/\/v1\/dispatch$/,""))||Qk}/v1/agents/${t.agentId}/approve`,o={"Content-Type":"application/json",...this.headers};return this.getHeaders&&Object.assign(o,await this.getHeaders()),fetch(s,{method:"POST",headers:o,body:JSON.stringify({executionId:t.executionId,approvalId:t.approvalId,decision:e,streamResponse:!0})})}async buildAgentPayload(t){if(!this.config.agent)throw new Error("Agent configuration required for agent mode");let e=t.slice().filter(eT).filter(s=>s.role==="user"||s.role==="assistant"||s.role==="system").filter(s=>!s.variant||s.variant==="assistant").sort((s,o)=>{let n=new Date(s.createdAt).getTime(),l=new Date(o.createdAt).getTime();return n-l}).map(s=>{var o,n,l;return{role:s.role,content:(l=(n=(o=s.contentParts)!=null?o:s.llmContent)!=null?n:s.rawContent)!=null?l:s.content,createdAt:s.createdAt}}),a={agent:this.config.agent,messages:e,options:{streamResponse:!0,recordMode:"virtual",...this.config.agentOptions}};if(this.contextProviders.length){let s={};await Promise.all(this.contextProviders.map(async o=>{try{let n=await o({messages:t,config:this.config});n&&typeof n=="object"&&Object.assign(s,n)}catch(n){typeof console!="undefined"&&console.warn("[AgentWidget] Context provider failed:",n)}})),Object.keys(s).length&&(a.context=s)}return a}async buildPayload(t){let a={messages:t.slice().filter(eT).sort((s,o)=>{let n=new Date(s.createdAt).getTime(),l=new Date(o.createdAt).getTime();return n-l}).map(s=>{var o,n,l;return{role:s.role,content:(l=(n=(o=s.contentParts)!=null?o:s.llmContent)!=null?n:s.rawContent)!=null?l:s.content,createdAt:s.createdAt}}),...this.config.flowId&&{flowId:this.config.flowId}};if(this.contextProviders.length){let s={};await Promise.all(this.contextProviders.map(async o=>{try{let n=await o({messages:t,config:this.config});n&&typeof n=="object"&&Object.assign(s,n)}catch(n){typeof console!="undefined"&&console.warn("[AgentWidget] Context provider failed:",n)}})),Object.keys(s).length&&(a.context=s)}if(this.requestMiddleware)try{let s=await this.requestMiddleware({payload:{...a},config:this.config});if(s&&typeof s=="object")return s}catch(s){typeof console!="undefined"&&console.error("[AgentWidget] Request middleware error:",s)}return a}async handleCustomSSEEvent(t,e,a,s,o){if(!this.parseSSEEvent)return!1;try{let n=await this.parseSSEEvent(t);if(n===null)return!1;let l=()=>{if(a.current)return a.current;let d={id:`assistant-${Date.now()}-${Math.random().toString(16).slice(2)}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!0,variant:"assistant",sequence:o()};return a.current=d,s(d),d};if(n.text!==void 0){let d=l();d.content+=n.text,s(d)}return n.done&&(a.current&&(a.current.streaming=!1,s(a.current)),e({type:"status",status:"idle"})),n.error&&e({type:"error",error:new Error(n.error)}),!0}catch(n){return typeof console!="undefined"&&console.error("[AgentWidget] parseSSEEvent error:",n),!1}}async streamResponse(t,e,a){var bt,Xe,pe,ie,Oe,Z,ee,be,Ye,Q,K,Qe,Ve,qe,Tt,qt,ce,et,He,dt,ze,tt,Lt,xt,It,_,te,Y,G,Ce,Te,Le,pt,Se,Ae,_e,he,Ct,pa,sa,Ia,Gr,wt,Sa,it,Aa,Va,ya,dr,Da,rt,jt,Fa,pr,ja,cr,aa,ka,Ga,Et,Ta,Cr,xe,C,S,ue,ct,Nt,gt,zt,ca,na,La,Vt,Qa,wr,pi,ci,S1,Zr,at,A1,Wa,va,ui,fi,k1,Sr,er,hi,mi,xi,Ek,Ar,Xr,Pt,Jr,Kr,T1,L1,E1,H1,ua,Ea,tr,Ue,P1,kr,qa,gi,Yr,Qr,Tr,ur,Mi,yi,Ua,Lr,vi;let s=t.getReader(),o=new TextDecoder,n="",l=Date.now(),d=0,p=()=>l+d++,f=se=>{let $e=se.reasoning?{...se.reasoning,chunks:[...se.reasoning.chunks]}:void 0,Pe=se.toolCall?{...se.toolCall,chunks:se.toolCall.chunks?[...se.toolCall.chunks]:void 0}:void 0,je=se.tools?se.tools.map(Ft=>({...Ft,chunks:Ft.chunks?[...Ft.chunks]:void 0})):void 0;return{...se,reasoning:$e,toolCall:Pe,tools:je}},c=se=>{e({type:"message",message:f(se)})},u=null,h={current:null},b=new Map,w=new Map,E={lastId:null,byStep:new Map},M={lastId:null,byCall:new Map},y=se=>{if(se==null)return null;try{return String(se)}catch{return null}},H=se=>{var $e,Pe,je,Ft,ta;return y((ta=(Ft=(je=(Pe=($e=se.stepId)!=null?$e:se.step_id)!=null?Pe:se.step)!=null?je:se.parentId)!=null?Ft:se.flowStepId)!=null?ta:se.flow_step_id)},x=se=>{var $e,Pe,je,Ft,ta,Wt,L;return y((L=(Wt=(ta=(Ft=(je=(Pe=($e=se.callId)!=null?$e:se.call_id)!=null?Pe:se.requestId)!=null?je:se.request_id)!=null?Ft:se.toolCallId)!=null?ta:se.tool_call_id)!=null?Wt:se.stepId)!=null?L:se.step_id)},v=()=>u||(u={id:a!=null?a:`assistant-${Date.now()}-${Math.random().toString(16).slice(2)}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!0,sequence:p()},c(u),u),g=(se,$e)=>{E.lastId=$e,se&&E.byStep.set(se,$e)},T=(se,$e)=>{var ta;let Pe=(ta=se.reasoningId)!=null?ta:se.id,je=H(se);if(Pe){let Wt=String(Pe);return g(je,Wt),Wt}if(je){let Wt=E.byStep.get(je);if(Wt)return E.lastId=Wt,Wt}if(E.lastId&&!$e)return E.lastId;if(!$e)return null;let Ft=`reason-${p()}`;return g(je,Ft),Ft},D=se=>{let $e=b.get(se);if($e)return $e;let Pe={id:`reason-${se}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!0,variant:"reasoning",sequence:p(),reasoning:{id:se,status:"streaming",chunks:[]}};return b.set(se,Pe),c(Pe),Pe},B=(se,$e)=>{M.lastId=$e,se&&M.byCall.set(se,$e)},q=new Set,V=new Map,ae=new Set,ke=new Map,Ee=se=>{if(!se)return!1;let $e=se.replace(/_+/g,"_").replace(/^_|_$/g,"");return $e==="emit_artifact_markdown"||$e==="emit_artifact_component"},we=(se,$e)=>{var ta;let Pe=(ta=se.toolId)!=null?ta:se.id,je=x(se);if(Pe){let Wt=String(Pe);return B(je,Wt),Wt}if(je){let Wt=M.byCall.get(je);if(Wt)return M.lastId=Wt,Wt}if(M.lastId&&!$e)return M.lastId;if(!$e)return null;let Ft=`tool-${p()}`;return B(je,Ft),Ft},re=se=>{let $e=w.get(se);if($e)return $e;let Pe={id:`tool-${se}`,role:"assistant",content:"",createdAt:new Date().toISOString(),streaming:!0,variant:"tool",sequence:p(),toolCall:{id:se,status:"pending"}};return w.set(se,Pe),c(Pe),Pe},ne=se=>{if(typeof se=="number"&&Number.isFinite(se))return se;if(typeof se=="string"){let $e=Number(se);if(!Number.isNaN($e)&&Number.isFinite($e))return $e;let Pe=Date.parse(se);if(!Number.isNaN(Pe))return Pe}return Date.now()},j=se=>{if(typeof se=="string")return se;if(se==null)return"";try{return JSON.stringify(se)}catch{return String(se)}},X=new Map,le=new Map,oe=null,kt=new Map,Fe=(bt=this.config.iterationDisplay)!=null?bt:"separate";for(;;){let{done:se,value:$e}=await s.read();if(se)break;n+=o.decode($e,{stream:!0});let Pe=n.split(`
@@ -67,7 +67,7 @@ lucide.createIcons({icons});\``);if(typeof a=="undefined")throw new Error("`crea
67
67
  <svg class="persona-feedback-star" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
68
68
  <polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"></polygon>
69
69
  </svg>
70
- `,T.addEventListener("click",()=>{c=g,M.forEach((D,B)=>{let q=B<g;D.classList.toggle("selected",q),D.setAttribute("aria-checked",B===g-1?"true":"false")})}),M.push(T),E.appendChild(T)}u.appendChild(E);let y=null;if(d){let g=document.createElement("div");g.className="persona-feedback-comment-container",y=document.createElement("textarea"),y.className="persona-feedback-comment",y.placeholder=o,y.rows=3,y.setAttribute("aria-label","Additional comments"),g.appendChild(y),u.appendChild(g)}let H=document.createElement("div");H.className="persona-feedback-actions";let x=document.createElement("button");x.type="button",x.className="persona-feedback-btn persona-feedback-btn-skip",x.textContent=l,x.addEventListener("click",()=>{e==null||e(),f.remove()});let v=document.createElement("button");return v.type="button",v.className="persona-feedback-btn persona-feedback-btn-submit",v.textContent=n,v.addEventListener("click",async()=>{if(c===null){E.classList.add("persona-feedback-shake"),setTimeout(()=>E.classList.remove("persona-feedback-shake"),500);return}v.disabled=!0,v.textContent="Submitting...";try{let g=(y==null?void 0:y.value.trim())||void 0;await t(c,g),f.remove()}catch(g){v.disabled=!1,v.textContent=n,console.error("[CSAT Feedback] Failed to submit:",g)}}),H.appendChild(x),H.appendChild(v),u.appendChild(H),f.appendChild(u),f}function vk(r){let{onSubmit:t,onDismiss:e,title:a="How likely are you to recommend us?",subtitle:s="On a scale of 0 to 10",commentPlaceholder:o="What could we do better? (optional)...",submitText:n="Submit",skipText:l="Skip",showComment:d=!0,lowLabel:p="Not likely",highLabel:f="Very likely"}=r,c=document.createElement("div");c.className="persona-feedback-container persona-feedback-nps",c.setAttribute("role","dialog"),c.setAttribute("aria-label","Net Promoter Score feedback");let u=null,h=document.createElement("div");h.className="persona-feedback-content";let b=document.createElement("div");b.className="persona-feedback-header";let w=document.createElement("h3");w.className="persona-feedback-title",w.textContent=a,b.appendChild(w);let E=document.createElement("p");E.className="persona-feedback-subtitle",E.textContent=s,b.appendChild(E),h.appendChild(b);let M=document.createElement("div");M.className="persona-feedback-rating persona-feedback-rating-nps",M.setAttribute("role","radiogroup"),M.setAttribute("aria-label","Likelihood rating from 0 to 10");let y=document.createElement("div");y.className="persona-feedback-labels";let H=document.createElement("span");H.className="persona-feedback-label-low",H.textContent=p;let x=document.createElement("span");x.className="persona-feedback-label-high",x.textContent=f,y.appendChild(H),y.appendChild(x);let v=document.createElement("div");v.className="persona-feedback-numbers";let g=[];for(let V=0;V<=10;V++){let ae=document.createElement("button");ae.type="button",ae.className="persona-feedback-rating-btn persona-feedback-number-btn",ae.setAttribute("role","radio"),ae.setAttribute("aria-checked","false"),ae.setAttribute("aria-label",`Rating ${V} out of 10`),ae.textContent=String(V),ae.dataset.rating=String(V),V<=6?ae.classList.add("persona-feedback-detractor"):V<=8?ae.classList.add("persona-feedback-passive"):ae.classList.add("persona-feedback-promoter"),ae.addEventListener("click",()=>{u=V,g.forEach((ke,Ee)=>{ke.classList.toggle("selected",Ee===V),ke.setAttribute("aria-checked",Ee===V?"true":"false")})}),g.push(ae),v.appendChild(ae)}M.appendChild(y),M.appendChild(v),h.appendChild(M);let T=null;if(d){let V=document.createElement("div");V.className="persona-feedback-comment-container",T=document.createElement("textarea"),T.className="persona-feedback-comment",T.placeholder=o,T.rows=3,T.setAttribute("aria-label","Additional comments"),V.appendChild(T),h.appendChild(V)}let D=document.createElement("div");D.className="persona-feedback-actions";let B=document.createElement("button");B.type="button",B.className="persona-feedback-btn persona-feedback-btn-skip",B.textContent=l,B.addEventListener("click",()=>{e==null||e(),c.remove()});let q=document.createElement("button");return q.type="button",q.className="persona-feedback-btn persona-feedback-btn-submit",q.textContent=n,q.addEventListener("click",async()=>{if(u===null){v.classList.add("persona-feedback-shake"),setTimeout(()=>v.classList.remove("persona-feedback-shake"),500);return}q.disabled=!0,q.textContent="Submitting...";try{let V=(T==null?void 0:T.value.trim())||void 0;await t(u,V),c.remove()}catch(V){q.disabled=!1,q.textContent=n,console.error("[NPS Feedback] Failed to submit:",V)}}),D.appendChild(B),D.appendChild(q),h.appendChild(D),c.appendChild(h),c}var w1="persona-chat-history",VI=30*1e3,DI={"image/png":"png","image/jpeg":"jpg","image/jpg":"jpg","image/gif":"gif","image/webp":"webp","image/svg+xml":"svg","image/bmp":"bmp","image/tiff":"tiff"};function FI(r){var a,s,o;if(!r)return[];let t=[],e=Array.from((a=r.items)!=null?a:[]);for(let n of e){if(n.kind!=="file"||!n.type.startsWith("image/"))continue;let l=n.getAsFile();if(!l)continue;if(l.name){t.push(l);continue}let d=(s=DI[l.type])!=null?s:"png";t.push(new File([l],`clipboard-image-${Date.now()}.${d}`,{type:l.type,lastModified:Date.now()}))}if(t.length>0)return t;for(let n of Array.from((o=r.files)!=null?o:[]))n.type.startsWith("image/")&&t.push(n);return t}function WI(r){var t,e,a,s,o,n,l,d,p;return r?r===!0?{storage:"session",keyPrefix:"persona-",persist:{openState:!0,voiceState:!0,focusInput:!0},clearOnChatClear:!0}:{storage:(t=r.storage)!=null?t:"session",keyPrefix:(e=r.keyPrefix)!=null?e:"persona-",persist:{openState:(s=(a=r.persist)==null?void 0:a.openState)!=null?s:!0,voiceState:(n=(o=r.persist)==null?void 0:o.voiceState)!=null?n:!0,focusInput:(d=(l=r.persist)==null?void 0:l.focusInput)!=null?d:!0},clearOnChatClear:(p=r.clearOnChatClear)!=null?p:!0}:null}function OI(r){try{let t=r==="local"?localStorage:sessionStorage,e="__persist_test__";return t.setItem(e,"1"),t.removeItem(e),t}catch{return null}}var LT=r=>!r||typeof r!="object"?{}:{...r},DP=r=>r.map(t=>({...t,streaming:!1})),FP=(r,t,e)=>{let a=r!=null&&r.markdown?Fr(r.markdown):null,s=ro(r==null?void 0:r.sanitize);return o=>{var p,f,c;let n=(p=o.text)!=null?p:"",l=(f=o.message.rawContent)!=null?f:null;if(t){let u=t.process({text:n,raw:l!=null?l:n,message:o.message,streaming:o.streaming});u!==null&&(n=u.text,u.persist||(o.message.__skipPersist=!0),u.resubmit&&!o.streaming&&e&&e())}let d;return r!=null&&r.postprocessMessage?d=r.postprocessMessage({...o,text:n,raw:(c=l!=null?l:o.text)!=null?c:""}):a?d=a(n):d=ao(n),s?s(d):d}},bk=(r,t,e)=>{var me,Re,ht,Gt,Ot,Kt,Zt,mt,yt,Ut,vt,Yt,ba,Oa,_T,qT,UT,$T,jT,GT,ZT,XT,JT,KT,YT,QT,eL,tL,aL,rL,oL,sL,nL,lL,iL,dL,pL,cL;r.id&&r.id!=="persona-root"&&!r.getAttribute("data-persona-instance")&&r.setAttribute("data-persona-instance",r.id),r.id="persona-root";let a=fk(t),s=ni.getForInstance(a.plugins);a.components&&lr.registerAll(a.components);let o=RP(),n=(me=a.storageAdapter)!=null?me:hk(),l={},d=null,p=i=>{if(a.onStateLoaded)try{return a.onStateLoaded(i)}catch(m){typeof console!="undefined"&&console.error("[AgentWidget] onStateLoaded hook failed:",m)}return i};if(n!=null&&n.load)try{let i=n.load();if(i&&typeof i.then=="function")d=i.then(m=>{let k=m!=null?m:{messages:[],metadata:{}};return p(k)});else{let m=i!=null?i:{messages:[],metadata:{}},k=p(m);k.metadata&&(l=LT(k.metadata)),(Re=k.messages)!=null&&Re.length&&(a={...a,initialMessages:k.messages})}}catch(i){typeof console!="undefined"&&console.error("[AgentWidget] Failed to load stored state:",i)}else if(a.onStateLoaded)try{let i=p({messages:[],metadata:{}});(ht=i.messages)!=null&&ht.length&&(a={...a,initialMessages:i.messages})}catch(i){typeof console!="undefined"&&console.error("[AgentWidget] onStateLoaded hook failed:",i)}let f=()=>l,c=i=>{var k;l=(k=i({...l}))!=null?k:{},k1()},u=a.actionParsers&&a.actionParsers.length?a.actionParsers:[li],h=a.actionHandlers&&a.actionHandlers.length?a.actionHandlers:[$r.message,$r.messageAndClick],b=ii({parsers:u,handlers:h,getSessionMetadata:f,updateSessionMetadata:c,emit:o.emit,documentRef:typeof document!="undefined"?document:null});b.syncFromMetadata();let w=(Ot=(Gt=a.launcher)==null?void 0:Gt.enabled)!=null?Ot:!0,E=(Zt=(Kt=a.launcher)==null?void 0:Kt.autoExpand)!=null?Zt:!1,M=(mt=a.autoFocusInput)!=null?mt:!1,y=E,H=w,x=(Ut=(yt=a.layout)==null?void 0:yt.header)==null?void 0:Ut.layout,v=!1,g=w?E:!0,T=!1,D=null,B=()=>{T=!0,D&&clearTimeout(D),D=setTimeout(()=>{T&&(typeof console!="undefined"&&console.warn("[AgentWidget] Resubmit requested but no injection occurred within 10s"),T=!1)},1e4)},q=FP(a,b,B),V=(Yt=(vt=a.features)==null?void 0:vt.showReasoning)!=null?Yt:!0,ae=(Oa=(ba=a.features)==null?void 0:ba.showToolCalls)!=null?Oa:!0,ke=(qT=(_T=a.features)==null?void 0:_T.showEventStreamToggle)!=null?qT:!1,we=`${($T=typeof a.persistState=="object"?(UT=a.persistState)==null?void 0:UT.keyPrefix:void 0)!=null?$T:"persona-"}event-stream`,re=ke?new ri(we):null,ne=(ZT=(GT=(jT=a.features)==null?void 0:jT.eventStream)==null?void 0:GT.maxEvents)!=null?ZT:2e3,j=ke?new ai(ne,re):null,X=null,le=!1,oe=null,kt=0;re==null||re.open().then(()=>j==null?void 0:j.restore()).catch(i=>{a.debug&&console.warn("[AgentWidget] IndexedDB not available for event stream:",i)});let Fe={onCopy:i=>{var m,k;o.emit("message:copy",i),S!=null&&S.isClientTokenMode()&&S.submitMessageFeedback(i.id,"copy").catch(P=>{a.debug&&console.error("[AgentWidget] Failed to submit copy feedback:",P)}),(k=(m=a.messageActions)==null?void 0:m.onCopy)==null||k.call(m,i)},onFeedback:i=>{var m,k;o.emit("message:feedback",i),S!=null&&S.isClientTokenMode()&&S.submitMessageFeedback(i.messageId,i.type).catch(P=>{a.debug&&console.error("[AgentWidget] Failed to submit feedback:",P)}),(k=(m=a.messageActions)==null?void 0:m.onFeedback)==null||k.call(m,i)}},bt=(XT=a.statusIndicator)!=null?XT:{},Xe=i=>{var m,k,P,z;return i==="idle"?(m=bt.idleText)!=null?m:ia.idle:i==="connecting"?(k=bt.connectingText)!=null?k:ia.connecting:i==="connected"?(P=bt.connectedText)!=null?P:ia.connected:i==="error"?(z=bt.errorText)!=null?z:ia.error:ia[i]},{wrapper:pe,panel:ie}=mP(a),Oe=xP(a,w),{container:Z,body:ee,messagesWrapper:be,suggestions:Ye,textarea:Q,sendButton:K,sendButtonWrapper:Qe,composerForm:Ve,statusText:qe,introTitle:Tt,introSubtitle:qt,closeButton:ce,iconHolder:et,headerTitle:He,headerSubtitle:dt,header:ze,footer:tt,actionsRow:Lt,leftActions:xt,rightActions:It}=Oe,_=Oe.micButton,te=Oe.micButtonWrapper,Y=Oe.attachmentButton,G=Oe.attachmentButtonWrapper,Ce=Oe.attachmentInput,Te=Oe.attachmentPreviewsContainer,Le=null,pt=null,Se=s.find(i=>i.renderHeader);if(Se!=null&&Se.renderHeader){let i=Se.renderHeader({config:a,defaultRenderer:()=>{let m=nr({config:a,showClose:w});return qr(Z,m,a),m.header},onClose:()=>Pt(!1,"user")});if(i){let m=Z.querySelector(".persona-border-b-persona-divider");m&&(m.replaceWith(i),ze=i)}}let Ae=()=>{var m,k,P,z;if(!j)return;if(le=!0,!X&&j&&(X=CP({buffer:j,getFullHistory:()=>j.getAllFromStore(),onClose:()=>_e(),config:a,plugins:s})),X&&(ee.style.display="none",(m=tt.parentNode)==null||m.insertBefore(X.element,tt),X.update()),he){he.classList.remove("persona-text-persona-muted"),he.classList.add("persona-text-persona-accent"),he.style.boxShadow="inset 0 0 0 1.5px var(--persona-accent, #3b82f6)";let F=(z=(P=(k=a.features)==null?void 0:k.eventStream)==null?void 0:P.classNames)==null?void 0:z.toggleButtonActive;F&&F.split(/\s+/).forEach(W=>W&&he.classList.add(W))}let i=()=>{if(!le)return;let F=Date.now();F-kt>=200&&(X==null||X.update(),kt=F),oe=requestAnimationFrame(i)};kt=0,oe=requestAnimationFrame(i),o.emit("eventStream:opened",{timestamp:Date.now()})},_e=()=>{var i,m,k;if(le){if(le=!1,X&&X.element.remove(),ee.style.display="",he){he.classList.remove("persona-text-persona-accent"),he.classList.add("persona-text-persona-muted"),he.style.boxShadow="";let P=(k=(m=(i=a.features)==null?void 0:i.eventStream)==null?void 0:m.classNames)==null?void 0:k.toggleButtonActive;P&&P.split(/\s+/).forEach(z=>z&&he.classList.remove(z))}oe!==null&&(cancelAnimationFrame(oe),oe=null),o.emit("eventStream:closed",{timestamp:Date.now()})}},he=null;if(ke){let i=(KT=(JT=a.features)==null?void 0:JT.eventStream)==null?void 0:KT.classNames,m="persona-inline-flex persona-items-center persona-justify-center persona-rounded-full persona-text-persona-muted hover:persona-bg-gray-100 persona-cursor-pointer persona-border-none persona-bg-transparent persona-p-1"+(i!=null&&i.toggleButton?" "+i.toggleButton:"");he=A("button",m),he.style.width="28px",he.style.height="28px",he.type="button",he.setAttribute("aria-label","Event Stream"),he.title="Event Stream";let k=ye("activity","18px","currentColor",1.5);k&&he.appendChild(k);let P=Oe.clearChatButtonWrapper,z=Oe.closeButtonWrapper,F=P||z;F&&F.parentNode===ze?ze.insertBefore(he,F):ze.appendChild(he),he.addEventListener("click",()=>{le?_e():Ae()})}let Ct=i=>{var P,z,F;let m=a.attachments;if(!(m!=null&&m.enabled))return;let k=i.querySelector(".persona-attachment-previews");if(!k){k=A("div","persona-attachment-previews persona-flex persona-flex-wrap persona-gap-2 persona-mb-2"),k.style.display="none";let W=i.querySelector("[data-persona-composer-form]");W!=null&&W.parentNode?W.parentNode.insertBefore(k,W):i.insertBefore(k,i.firstChild)}if(!i.querySelector('input[type="file"]')){let W=A("input");W.type="file",W.accept=((P=m.allowedTypes)!=null?P:sr).join(","),W.multiple=((z=m.maxFiles)!=null?z:4)>1,W.style.display="none",W.setAttribute("aria-label",(F=m.buttonTooltipText)!=null?F:"Attach files"),i.appendChild(W)}},pa=s.find(i=>i.renderComposer);if(pa!=null&&pa.renderComposer){let i=a.composer,m=pa.renderComposer({config:a,defaultRenderer:()=>g1({config:a}).footer,onSubmit:k=>{S&&!S.isStreaming()&&S.sendMessage(k)},streaming:!1,disabled:!1,openAttachmentPicker:()=>{Ce==null||Ce.click()},models:i==null?void 0:i.models,selectedModelId:i==null?void 0:i.selectedModelId,onModelChange:k=>{a.composer={...a.composer,selectedModelId:k}},onVoiceToggle:((YT=a.voiceRecognition)==null?void 0:YT.enabled)===!0?()=>{pt==null||pt()}:void 0});m&&(tt.replaceWith(m),tt=m)}let sa=i=>{let m=i.querySelector("[data-persona-composer-form]"),k=i.querySelector("[data-persona-composer-input]"),P=i.querySelector("[data-persona-composer-submit]"),z=i.querySelector("[data-persona-composer-mic]"),F=i.querySelector("[data-persona-composer-status]");m&&(Ve=m),k&&(Q=k),P&&(K=P),z&&(_=z,te=z.parentElement),F&&(qe=F);let W=i.querySelector(".persona-mb-3.persona-flex.persona-flex-wrap.persona-gap-2");W&&(Ye=W);let J=i.querySelector(".persona-attachment-button");J&&(Y=J,G=J.parentElement),Ce=i.querySelector('input[type="file"]'),Te=i.querySelector(".persona-attachment-previews");let U=i.querySelector(".persona-widget-composer .persona-flex.persona-items-center.persona-justify-between");U&&(Lt=U)};Ct(tt),sa(tt);let Ia=(QT=a.layout)==null?void 0:QT.contentMaxWidth;Ia&&Ve&&(Ve.style.maxWidth=Ia,Ve.style.marginLeft="auto",Ve.style.marginRight="auto"),(eL=a.attachments)!=null&&eL.enabled&&Ce&&Te&&(Le=_r.fromConfig(a.attachments),Le.setPreviewsContainer(Te),Ce.addEventListener("change",i=>{let m=i.target;Le==null||Le.handleFileSelect(m.files),m.value=""})),(()=>{var P,z;let i=(z=(P=a.layout)==null?void 0:P.slots)!=null?z:{},m=F=>{switch(F){case"body-top":return Z.querySelector(".persona-rounded-2xl.persona-bg-persona-surface.persona-p-6")||null;case"messages":return be;case"footer-top":return Ye;case"composer":return Ve;case"footer-bottom":return qe;default:return null}},k=(F,W)=>{var J;switch(F){case"header-left":case"header-center":case"header-right":if(F==="header-left")ze.insertBefore(W,ze.firstChild);else if(F==="header-right")ze.appendChild(W);else{let U=ze.querySelector(".persona-flex-col");U?(J=U.parentNode)==null||J.insertBefore(W,U.nextSibling):ze.appendChild(W)}break;case"body-top":{let U=ee.querySelector(".persona-rounded-2xl.persona-bg-persona-surface.persona-p-6");U?U.replaceWith(W):ee.insertBefore(W,ee.firstChild);break}case"body-bottom":ee.appendChild(W);break;case"footer-top":Ye.replaceWith(W);break;case"footer-bottom":qe.replaceWith(W);break;default:break}};for(let[F,W]of Object.entries(i))if(W)try{let J=W({config:a,defaultContent:()=>m(F)});J&&k(F,J)}catch(J){typeof console!="undefined"&&console.error(`[AgentWidget] Error rendering slot "${F}":`,J)}})();let wt=i=>{let k=i.target.closest('button[data-expand-header="true"]');if(!k)return;let P=k.closest(".vanilla-reasoning-bubble, .vanilla-tool-bubble");if(!P)return;let z=P.getAttribute("data-message-id");if(!z)return;let F=k.getAttribute("data-bubble-type");F==="reasoning"?(y1.has(z)?y1.delete(z):y1.add(z),yP(z,P)):F==="tool"&&(v1.has(z)?v1.delete(z):v1.add(z),vP(z,P,a))};be.addEventListener("pointerdown",i=>{i.target.closest('button[data-expand-header="true"]')&&(i.preventDefault(),wt(i))}),be.addEventListener("keydown",i=>{let m=i.target;(i.key==="Enter"||i.key===" ")&&m.closest('button[data-expand-header="true"]')&&(i.preventDefault(),wt(i))});let Sa=new Map;be.addEventListener("click",i=>{var W;let k=i.target.closest(".persona-message-action-btn[data-action]");if(!k)return;i.preventDefault(),i.stopPropagation();let P=k.closest("[data-actions-for]");if(!P)return;let z=P.getAttribute("data-actions-for");if(!z)return;let F=k.getAttribute("data-action");if(F==="copy"){let U=S.getMessages().find(fe=>fe.id===z);if(U&&Fe.onCopy){let fe=U.content||"";navigator.clipboard.writeText(fe).then(()=>{k.classList.add("persona-message-action-success");let ve=ye("check",14,"currentColor",2);ve&&(k.innerHTML="",k.appendChild(ve)),setTimeout(()=>{k.classList.remove("persona-message-action-success");let We=ye("copy",14,"currentColor",2);We&&(k.innerHTML="",k.appendChild(We))},2e3)}).catch(ve=>{typeof console!="undefined"&&console.error("[AgentWidget] Failed to copy message:",ve)}),Fe.onCopy(U)}}else if(F==="upvote"||F==="downvote")if(((W=Sa.get(z))!=null?W:null)===F)Sa.delete(z),k.classList.remove("persona-message-action-active");else{let fe=F==="upvote"?"downvote":"upvote",ve=P.querySelector(`[data-action="${fe}"]`);ve&&ve.classList.remove("persona-message-action-active"),Sa.set(z,F),k.classList.add("persona-message-action-active");let Ge=S.getMessages().find(Be=>Be.id===z);Ge&&Fe.onFeedback&&Fe.onFeedback({type:F,messageId:Ge.id,message:Ge})}}),be.addEventListener("click",i=>{let k=i.target.closest("button[data-approval-action]");if(!k)return;i.preventDefault(),i.stopPropagation();let P=k.closest(".vanilla-approval-bubble");if(!P)return;let z=P.getAttribute("data-message-id");if(!z)return;let F=k.getAttribute("data-approval-action");if(!F)return;let W=F==="approve"?"approved":"denied",U=S.getMessages().find(ve=>ve.id===z);if(!(U!=null&&U.approval))return;let fe=P.querySelector("[data-approval-buttons]");fe&&fe.querySelectorAll("button").forEach(We=>{We.disabled=!0,We.style.opacity="0.5",We.style.cursor="not-allowed"}),S.resolveApproval(U.approval,W)});let it=null,Aa=null,Va={artifacts:[],selectedId:null},ya=!1,dr={current:null};be.addEventListener("click",i=>{var We,Ge,Be,O,De;let k=i.target.closest("[data-download-artifact]");if(!k)return;i.preventDefault(),i.stopPropagation();let P=k.getAttribute("data-download-artifact");if(!P||((Be=(Ge=(We=a.features)==null?void 0:We.artifacts)==null?void 0:Ge.onArtifactAction)==null?void 0:Be.call(Ge,{type:"download",artifactId:P}))===!0)return;let F=S.getArtifactById(P),W=F==null?void 0:F.markdown,J=(F==null?void 0:F.title)||"artifact";if(!W){let Ie=k.closest("[data-open-artifact]"),de=Ie==null?void 0:Ie.closest("[data-message-id]"),Ne=de==null?void 0:de.getAttribute("data-message-id");if(Ne){let st=S.getMessages().find(ge=>ge.id===Ne);if(st!=null&&st.rawContent)try{let ge=JSON.parse(st.rawContent);W=(O=ge==null?void 0:ge.props)==null?void 0:O.markdown,J=((De=ge==null?void 0:ge.props)==null?void 0:De.title)||J}catch{}}}if(!W)return;let U=new Blob([W],{type:"text/markdown"}),fe=URL.createObjectURL(U),ve=document.createElement("a");ve.href=fe,ve.download=`${J}.md`,ve.click(),URL.revokeObjectURL(fe)}),be.addEventListener("click",i=>{var F,W,J;let k=i.target.closest("[data-open-artifact]");if(!k)return;let P=k.getAttribute("data-open-artifact");!P||((J=(W=(F=a.features)==null?void 0:F.artifacts)==null?void 0:W.onArtifactAction)==null?void 0:J.call(W,{type:"open",artifactId:P}))===!0||(i.preventDefault(),i.stopPropagation(),S.selectArtifact(P),ka())}),be.addEventListener("keydown",i=>{if(i.key!=="Enter"&&i.key!==" ")return;let m=i.target;m.hasAttribute("data-open-artifact")&&(i.preventDefault(),m.click())});let Da=null,rt=null,jt=null,Fa=null,pr=()=>{};function ja(){Fa==null||Fa(),Fa=null}let cr=()=>{var W;if(!Da||!rt)return;let i=r.classList.contains("persona-artifact-appearance-seamless"),k=((W=r.ownerDocument.defaultView)!=null?W:window).innerWidth<=640;if(!i||r.classList.contains("persona-artifact-narrow-host")||k){rt.style.removeProperty("position"),rt.style.removeProperty("left"),rt.style.removeProperty("top"),rt.style.removeProperty("bottom"),rt.style.removeProperty("width"),rt.style.removeProperty("z-index");return}let P=Da.firstElementChild;if(!P||P===rt)return;let z=10;rt.style.position="absolute",rt.style.top="0",rt.style.bottom="0",rt.style.width=`${z}px`,rt.style.zIndex="5";let F=P.offsetWidth-z/2;rt.style.left=`${Math.max(0,F)}px`},aa=()=>{},ka=()=>{var k,P,z,F,W;if(!it||!_a(a))return;ck(r,a),uk(r,a),aa();let i=(F=(z=(P=(k=a.features)==null?void 0:k.artifacts)==null?void 0:P.layout)==null?void 0:z.narrowHostMaxWidth)!=null?F:520,m=ie.getBoundingClientRect().width||0;r.classList.toggle("persona-artifact-narrow-host",m>0&&m<=i),it.update(Va),ya?(it.setMobileOpen(!1),it.element.classList.add("persona-hidden"),(W=it.backdrop)==null||W.classList.add("persona-hidden")):Va.artifacts.length>0&&(it.element.classList.remove("persona-hidden"),it.setMobileOpen(!0)),pr()};if(_a(a)){ie.style.position="relative";let i=A("div","persona-flex persona-flex-1 persona-flex-col persona-min-w-0 persona-min-h-0"),m=A("div","persona-flex persona-h-full persona-w-full persona-min-h-0 persona-artifact-split-root");i.appendChild(Z),it=AP(a,{onSelect:k=>{var P;return(P=dr.current)==null?void 0:P.selectArtifact(k)},onDismiss:()=>{ya=!0,ka()}}),it.element.classList.add("persona-hidden"),Da=m,m.appendChild(i),m.appendChild(it.element),it.backdrop&&ie.appendChild(it.backdrop),ie.appendChild(m),pr=()=>{var P,z,F,W;if(!Da||!it)return;if(!(((F=(z=(P=a.features)==null?void 0:P.artifacts)==null?void 0:z.layout)==null?void 0:F.resizable)===!0)){jt==null||jt(),jt=null,ja(),rt&&(rt.remove(),rt=null),it.element.style.removeProperty("width"),it.element.style.removeProperty("maxWidth");return}if(!rt){let J=A("div","persona-artifact-split-handle persona-shrink-0 persona-h-full");J.setAttribute("role","separator"),J.setAttribute("aria-orientation","vertical"),J.setAttribute("aria-label","Resize artifacts panel"),J.tabIndex=0;let U=r.ownerDocument,fe=(W=U.defaultView)!=null?W:window,ve=We=>{var de,Ne;if(!it||We.button!==0||r.classList.contains("persona-artifact-narrow-host")||fe.innerWidth<=640)return;We.preventDefault(),ja();let Ge=We.clientX,Be=it.element.getBoundingClientRect().width,O=(Ne=(de=a.features)==null?void 0:de.artifacts)==null?void 0:Ne.layout,De=ft=>{let st=Da.getBoundingClientRect().width,ge=r.classList.contains("persona-artifact-appearance-seamless"),Xt=ge?0:EP(Da,fe),Mt=ge?0:J.getBoundingClientRect().width||6,Ca=Be-(ft.clientX-Ge),la=HP(Ca,st,Xt,Mt,O==null?void 0:O.resizableMinWidth,O==null?void 0:O.resizableMaxWidth);it.element.style.width=`${la}px`,it.element.style.maxWidth="none",cr()},Ie=()=>{U.removeEventListener("pointermove",De),U.removeEventListener("pointerup",Ie),U.removeEventListener("pointercancel",Ie),Fa=null;try{J.releasePointerCapture(We.pointerId)}catch{}};Fa=Ie,U.addEventListener("pointermove",De),U.addEventListener("pointerup",Ie),U.addEventListener("pointercancel",Ie);try{J.setPointerCapture(We.pointerId)}catch{}};J.addEventListener("pointerdown",ve),rt=J,Da.insertBefore(J,it.element),jt=()=>{J.removeEventListener("pointerdown",ve)}}if(rt){let J=Va.artifacts.length>0&&!ya;rt.classList.toggle("persona-hidden",!J),cr()}},aa=()=>{var fe,ve,We,Ge,Be,O,De,Ie,de,Ne,ft,st,ge,Xt;if(!w||!it||((ve=(fe=a.launcher)==null?void 0:fe.sidebarMode)!=null?ve:!1))return;let P=(We=r.ownerDocument.defaultView)!=null?We:window,z=(Be=(Ge=a.launcher)==null?void 0:Ge.mobileFullscreen)!=null?Be:!0,F=(De=(O=a.launcher)==null?void 0:O.mobileBreakpoint)!=null?De:640;if(z&&P.innerWidth<=F||!LP(a,w))return;let W=(Ne=(de=(Ie=a.launcher)==null?void 0:Ie.width)!=null?de:a.launcherWidth)!=null?Ne:"min(400px, calc(100vw - 24px))",J=(Xt=(ge=(st=(ft=a.features)==null?void 0:ft.artifacts)==null?void 0:st.layout)==null?void 0:ge.expandedPanelWidth)!=null?Xt:"min(720px, calc(100vw - 24px))";Va.artifacts.length>0&&!ya?(ie.style.width=J,ie.style.maxWidth=J):(ie.style.width=W,ie.style.maxWidth=W)},typeof ResizeObserver!="undefined"&&(Aa=new ResizeObserver(()=>{ka()}),Aa.observe(ie))}else ie.appendChild(Z);r.appendChild(pe);let Ga=()=>{var st,ge,Xt,Mt,Ca,la,fa,Qt,Na,Ke,Dt,bi,Ci,wi,Si,Ai,Hk,Pk,$t,ki,R1;let i=da(a),m=(ge=(st=a.launcher)==null?void 0:st.sidebarMode)!=null?ge:!1,k=i||m||((Mt=(Xt=a.launcher)==null?void 0:Xt.fullHeight)!=null?Mt:!1),P=((Ca=a.launcher)==null?void 0:Ca.enabled)===!1,z=(la=a.theme)!=null?la:{},F=(fa=r.ownerDocument.defaultView)!=null?fa:window,W=(Na=(Qt=a.launcher)==null?void 0:Qt.mobileFullscreen)!=null?Na:!0,J=(Dt=(Ke=a.launcher)==null?void 0:Ke.mobileBreakpoint)!=null?Dt:640,U=F.innerWidth<=J,fe=W&&U&&w,ve=(Ci=(bi=a.launcher)==null?void 0:bi.position)!=null?Ci:"bottom-left",We=ve==="bottom-left"||ve==="top-left",Ge=m||fe?"none":"1px solid var(--persona-persona-border)",Be=fe?"none":m?We?"var(--persona-palette-shadows-sidebar-left, 2px 0 12px rgba(0, 0, 0, 0.08))":"var(--persona-palette-shadows-sidebar-right, -2px 0 12px rgba(0, 0, 0, 0.08))":"var(--persona-palette-shadows-xl, 0 25px 50px -12px rgba(0, 0, 0, 0.25))",O=m||fe?"0":"var(--persona-panel-radius, var(--persona-radius-xl, 0.75rem))",De=(wi=z.panelBorder)!=null?wi:Ge,Ie=(Si=z.panelShadow)!=null?Si:Be,de=(Ai=z.panelBorderRadius)!=null?Ai:O;if(r.style.cssText="",pe.style.cssText="",ie.style.cssText="",Z.style.cssText="",ee.style.cssText="",tt.style.cssText="",fe){pe.classList.remove("persona-bottom-6","persona-right-6","persona-left-6","persona-top-6","persona-bottom-4","persona-right-4","persona-left-4","persona-top-4"),pe.style.cssText=`
70
+ `,T.addEventListener("click",()=>{c=g,M.forEach((D,B)=>{let q=B<g;D.classList.toggle("selected",q),D.setAttribute("aria-checked",B===g-1?"true":"false")})}),M.push(T),E.appendChild(T)}u.appendChild(E);let y=null;if(d){let g=document.createElement("div");g.className="persona-feedback-comment-container",y=document.createElement("textarea"),y.className="persona-feedback-comment",y.placeholder=o,y.rows=3,y.setAttribute("aria-label","Additional comments"),g.appendChild(y),u.appendChild(g)}let H=document.createElement("div");H.className="persona-feedback-actions";let x=document.createElement("button");x.type="button",x.className="persona-feedback-btn persona-feedback-btn-skip",x.textContent=l,x.addEventListener("click",()=>{e==null||e(),f.remove()});let v=document.createElement("button");return v.type="button",v.className="persona-feedback-btn persona-feedback-btn-submit",v.textContent=n,v.addEventListener("click",async()=>{if(c===null){E.classList.add("persona-feedback-shake"),setTimeout(()=>E.classList.remove("persona-feedback-shake"),500);return}v.disabled=!0,v.textContent="Submitting...";try{let g=(y==null?void 0:y.value.trim())||void 0;await t(c,g),f.remove()}catch(g){v.disabled=!1,v.textContent=n,console.error("[CSAT Feedback] Failed to submit:",g)}}),H.appendChild(x),H.appendChild(v),u.appendChild(H),f.appendChild(u),f}function vk(r){let{onSubmit:t,onDismiss:e,title:a="How likely are you to recommend us?",subtitle:s="On a scale of 0 to 10",commentPlaceholder:o="What could we do better? (optional)...",submitText:n="Submit",skipText:l="Skip",showComment:d=!0,lowLabel:p="Not likely",highLabel:f="Very likely"}=r,c=document.createElement("div");c.className="persona-feedback-container persona-feedback-nps",c.setAttribute("role","dialog"),c.setAttribute("aria-label","Net Promoter Score feedback");let u=null,h=document.createElement("div");h.className="persona-feedback-content";let b=document.createElement("div");b.className="persona-feedback-header";let w=document.createElement("h3");w.className="persona-feedback-title",w.textContent=a,b.appendChild(w);let E=document.createElement("p");E.className="persona-feedback-subtitle",E.textContent=s,b.appendChild(E),h.appendChild(b);let M=document.createElement("div");M.className="persona-feedback-rating persona-feedback-rating-nps",M.setAttribute("role","radiogroup"),M.setAttribute("aria-label","Likelihood rating from 0 to 10");let y=document.createElement("div");y.className="persona-feedback-labels";let H=document.createElement("span");H.className="persona-feedback-label-low",H.textContent=p;let x=document.createElement("span");x.className="persona-feedback-label-high",x.textContent=f,y.appendChild(H),y.appendChild(x);let v=document.createElement("div");v.className="persona-feedback-numbers";let g=[];for(let V=0;V<=10;V++){let ae=document.createElement("button");ae.type="button",ae.className="persona-feedback-rating-btn persona-feedback-number-btn",ae.setAttribute("role","radio"),ae.setAttribute("aria-checked","false"),ae.setAttribute("aria-label",`Rating ${V} out of 10`),ae.textContent=String(V),ae.dataset.rating=String(V),V<=6?ae.classList.add("persona-feedback-detractor"):V<=8?ae.classList.add("persona-feedback-passive"):ae.classList.add("persona-feedback-promoter"),ae.addEventListener("click",()=>{u=V,g.forEach((ke,Ee)=>{ke.classList.toggle("selected",Ee===V),ke.setAttribute("aria-checked",Ee===V?"true":"false")})}),g.push(ae),v.appendChild(ae)}M.appendChild(y),M.appendChild(v),h.appendChild(M);let T=null;if(d){let V=document.createElement("div");V.className="persona-feedback-comment-container",T=document.createElement("textarea"),T.className="persona-feedback-comment",T.placeholder=o,T.rows=3,T.setAttribute("aria-label","Additional comments"),V.appendChild(T),h.appendChild(V)}let D=document.createElement("div");D.className="persona-feedback-actions";let B=document.createElement("button");B.type="button",B.className="persona-feedback-btn persona-feedback-btn-skip",B.textContent=l,B.addEventListener("click",()=>{e==null||e(),c.remove()});let q=document.createElement("button");return q.type="button",q.className="persona-feedback-btn persona-feedback-btn-submit",q.textContent=n,q.addEventListener("click",async()=>{if(u===null){v.classList.add("persona-feedback-shake"),setTimeout(()=>v.classList.remove("persona-feedback-shake"),500);return}q.disabled=!0,q.textContent="Submitting...";try{let V=(T==null?void 0:T.value.trim())||void 0;await t(u,V),c.remove()}catch(V){q.disabled=!1,q.textContent=n,console.error("[NPS Feedback] Failed to submit:",V)}}),D.appendChild(B),D.appendChild(q),h.appendChild(D),c.appendChild(h),c}var w1="persona-chat-history",VI=30*1e3,DI={"image/png":"png","image/jpeg":"jpg","image/jpg":"jpg","image/gif":"gif","image/webp":"webp","image/svg+xml":"svg","image/bmp":"bmp","image/tiff":"tiff"};function FI(r){var a,s,o;if(!r)return[];let t=[],e=Array.from((a=r.items)!=null?a:[]);for(let n of e){if(n.kind!=="file"||!n.type.startsWith("image/"))continue;let l=n.getAsFile();if(!l)continue;if(l.name){t.push(l);continue}let d=(s=DI[l.type])!=null?s:"png";t.push(new File([l],`clipboard-image-${Date.now()}.${d}`,{type:l.type,lastModified:Date.now()}))}if(t.length>0)return t;for(let n of Array.from((o=r.files)!=null?o:[]))n.type.startsWith("image/")&&t.push(n);return t}function WI(r){var t,e,a,s,o,n,l,d,p;return r?r===!0?{storage:"session",keyPrefix:"persona-",persist:{openState:!0,voiceState:!0,focusInput:!0},clearOnChatClear:!0}:{storage:(t=r.storage)!=null?t:"session",keyPrefix:(e=r.keyPrefix)!=null?e:"persona-",persist:{openState:(s=(a=r.persist)==null?void 0:a.openState)!=null?s:!0,voiceState:(n=(o=r.persist)==null?void 0:o.voiceState)!=null?n:!0,focusInput:(d=(l=r.persist)==null?void 0:l.focusInput)!=null?d:!0},clearOnChatClear:(p=r.clearOnChatClear)!=null?p:!0}:null}function OI(r){try{let t=r==="local"?localStorage:sessionStorage,e="__persist_test__";return t.setItem(e,"1"),t.removeItem(e),t}catch{return null}}var LT=r=>!r||typeof r!="object"?{}:{...r},DP=r=>r.map(t=>({...t,streaming:!1})),FP=(r,t,e)=>{let a=r!=null&&r.markdown?Fr(r.markdown):null,s=ro(r==null?void 0:r.sanitize);return r!=null&&r.postprocessMessage&&s&&(r==null?void 0:r.sanitize)===void 0&&console.warn("[Persona] A custom postprocessMessage is active with the default HTML sanitizer. Tags or attributes not in the built-in allowlist will be stripped. To keep custom HTML, set `sanitize: false` or provide a custom sanitize function."),o=>{var p,f,c;let n=(p=o.text)!=null?p:"",l=(f=o.message.rawContent)!=null?f:null;if(t){let u=t.process({text:n,raw:l!=null?l:n,message:o.message,streaming:o.streaming});u!==null&&(n=u.text,u.persist||(o.message.__skipPersist=!0),u.resubmit&&!o.streaming&&e&&e())}let d;return r!=null&&r.postprocessMessage?d=r.postprocessMessage({...o,text:n,raw:(c=l!=null?l:o.text)!=null?c:""}):a?d=a(n):d=ao(n),s?s(d):d}},bk=(r,t,e)=>{var me,Re,ht,Gt,Ot,Kt,Zt,mt,yt,Ut,vt,Yt,ba,Oa,_T,qT,UT,$T,jT,GT,ZT,XT,JT,KT,YT,QT,eL,tL,aL,rL,oL,sL,nL,lL,iL,dL,pL,cL;r.id&&r.id!=="persona-root"&&!r.getAttribute("data-persona-instance")&&r.setAttribute("data-persona-instance",r.id),r.id="persona-root";let a=fk(t),s=ni.getForInstance(a.plugins);a.components&&lr.registerAll(a.components);let o=RP(),n=(me=a.storageAdapter)!=null?me:hk(),l={},d=null,p=i=>{if(a.onStateLoaded)try{return a.onStateLoaded(i)}catch(m){typeof console!="undefined"&&console.error("[AgentWidget] onStateLoaded hook failed:",m)}return i};if(n!=null&&n.load)try{let i=n.load();if(i&&typeof i.then=="function")d=i.then(m=>{let k=m!=null?m:{messages:[],metadata:{}};return p(k)});else{let m=i!=null?i:{messages:[],metadata:{}},k=p(m);k.metadata&&(l=LT(k.metadata)),(Re=k.messages)!=null&&Re.length&&(a={...a,initialMessages:k.messages})}}catch(i){typeof console!="undefined"&&console.error("[AgentWidget] Failed to load stored state:",i)}else if(a.onStateLoaded)try{let i=p({messages:[],metadata:{}});(ht=i.messages)!=null&&ht.length&&(a={...a,initialMessages:i.messages})}catch(i){typeof console!="undefined"&&console.error("[AgentWidget] onStateLoaded hook failed:",i)}let f=()=>l,c=i=>{var k;l=(k=i({...l}))!=null?k:{},k1()},u=a.actionParsers&&a.actionParsers.length?a.actionParsers:[li],h=a.actionHandlers&&a.actionHandlers.length?a.actionHandlers:[$r.message,$r.messageAndClick],b=ii({parsers:u,handlers:h,getSessionMetadata:f,updateSessionMetadata:c,emit:o.emit,documentRef:typeof document!="undefined"?document:null});b.syncFromMetadata();let w=(Ot=(Gt=a.launcher)==null?void 0:Gt.enabled)!=null?Ot:!0,E=(Zt=(Kt=a.launcher)==null?void 0:Kt.autoExpand)!=null?Zt:!1,M=(mt=a.autoFocusInput)!=null?mt:!1,y=E,H=w,x=(Ut=(yt=a.layout)==null?void 0:yt.header)==null?void 0:Ut.layout,v=!1,g=w?E:!0,T=!1,D=null,B=()=>{T=!0,D&&clearTimeout(D),D=setTimeout(()=>{T&&(typeof console!="undefined"&&console.warn("[AgentWidget] Resubmit requested but no injection occurred within 10s"),T=!1)},1e4)},q=FP(a,b,B),V=(Yt=(vt=a.features)==null?void 0:vt.showReasoning)!=null?Yt:!0,ae=(Oa=(ba=a.features)==null?void 0:ba.showToolCalls)!=null?Oa:!0,ke=(qT=(_T=a.features)==null?void 0:_T.showEventStreamToggle)!=null?qT:!1,we=`${($T=typeof a.persistState=="object"?(UT=a.persistState)==null?void 0:UT.keyPrefix:void 0)!=null?$T:"persona-"}event-stream`,re=ke?new ri(we):null,ne=(ZT=(GT=(jT=a.features)==null?void 0:jT.eventStream)==null?void 0:GT.maxEvents)!=null?ZT:2e3,j=ke?new ai(ne,re):null,X=null,le=!1,oe=null,kt=0;re==null||re.open().then(()=>j==null?void 0:j.restore()).catch(i=>{a.debug&&console.warn("[AgentWidget] IndexedDB not available for event stream:",i)});let Fe={onCopy:i=>{var m,k;o.emit("message:copy",i),S!=null&&S.isClientTokenMode()&&S.submitMessageFeedback(i.id,"copy").catch(P=>{a.debug&&console.error("[AgentWidget] Failed to submit copy feedback:",P)}),(k=(m=a.messageActions)==null?void 0:m.onCopy)==null||k.call(m,i)},onFeedback:i=>{var m,k;o.emit("message:feedback",i),S!=null&&S.isClientTokenMode()&&S.submitMessageFeedback(i.messageId,i.type).catch(P=>{a.debug&&console.error("[AgentWidget] Failed to submit feedback:",P)}),(k=(m=a.messageActions)==null?void 0:m.onFeedback)==null||k.call(m,i)}},bt=(XT=a.statusIndicator)!=null?XT:{},Xe=i=>{var m,k,P,z;return i==="idle"?(m=bt.idleText)!=null?m:ia.idle:i==="connecting"?(k=bt.connectingText)!=null?k:ia.connecting:i==="connected"?(P=bt.connectedText)!=null?P:ia.connected:i==="error"?(z=bt.errorText)!=null?z:ia.error:ia[i]},{wrapper:pe,panel:ie}=mP(a),Oe=xP(a,w),{container:Z,body:ee,messagesWrapper:be,suggestions:Ye,textarea:Q,sendButton:K,sendButtonWrapper:Qe,composerForm:Ve,statusText:qe,introTitle:Tt,introSubtitle:qt,closeButton:ce,iconHolder:et,headerTitle:He,headerSubtitle:dt,header:ze,footer:tt,actionsRow:Lt,leftActions:xt,rightActions:It}=Oe,_=Oe.micButton,te=Oe.micButtonWrapper,Y=Oe.attachmentButton,G=Oe.attachmentButtonWrapper,Ce=Oe.attachmentInput,Te=Oe.attachmentPreviewsContainer,Le=null,pt=null,Se=s.find(i=>i.renderHeader);if(Se!=null&&Se.renderHeader){let i=Se.renderHeader({config:a,defaultRenderer:()=>{let m=nr({config:a,showClose:w});return qr(Z,m,a),m.header},onClose:()=>Pt(!1,"user")});if(i){let m=Z.querySelector(".persona-border-b-persona-divider");m&&(m.replaceWith(i),ze=i)}}let Ae=()=>{var m,k,P,z;if(!j)return;if(le=!0,!X&&j&&(X=CP({buffer:j,getFullHistory:()=>j.getAllFromStore(),onClose:()=>_e(),config:a,plugins:s})),X&&(ee.style.display="none",(m=tt.parentNode)==null||m.insertBefore(X.element,tt),X.update()),he){he.classList.remove("persona-text-persona-muted"),he.classList.add("persona-text-persona-accent"),he.style.boxShadow="inset 0 0 0 1.5px var(--persona-accent, #3b82f6)";let F=(z=(P=(k=a.features)==null?void 0:k.eventStream)==null?void 0:P.classNames)==null?void 0:z.toggleButtonActive;F&&F.split(/\s+/).forEach(W=>W&&he.classList.add(W))}let i=()=>{if(!le)return;let F=Date.now();F-kt>=200&&(X==null||X.update(),kt=F),oe=requestAnimationFrame(i)};kt=0,oe=requestAnimationFrame(i),o.emit("eventStream:opened",{timestamp:Date.now()})},_e=()=>{var i,m,k;if(le){if(le=!1,X&&X.element.remove(),ee.style.display="",he){he.classList.remove("persona-text-persona-accent"),he.classList.add("persona-text-persona-muted"),he.style.boxShadow="";let P=(k=(m=(i=a.features)==null?void 0:i.eventStream)==null?void 0:m.classNames)==null?void 0:k.toggleButtonActive;P&&P.split(/\s+/).forEach(z=>z&&he.classList.remove(z))}oe!==null&&(cancelAnimationFrame(oe),oe=null),o.emit("eventStream:closed",{timestamp:Date.now()})}},he=null;if(ke){let i=(KT=(JT=a.features)==null?void 0:JT.eventStream)==null?void 0:KT.classNames,m="persona-inline-flex persona-items-center persona-justify-center persona-rounded-full persona-text-persona-muted hover:persona-bg-gray-100 persona-cursor-pointer persona-border-none persona-bg-transparent persona-p-1"+(i!=null&&i.toggleButton?" "+i.toggleButton:"");he=A("button",m),he.style.width="28px",he.style.height="28px",he.type="button",he.setAttribute("aria-label","Event Stream"),he.title="Event Stream";let k=ye("activity","18px","currentColor",1.5);k&&he.appendChild(k);let P=Oe.clearChatButtonWrapper,z=Oe.closeButtonWrapper,F=P||z;F&&F.parentNode===ze?ze.insertBefore(he,F):ze.appendChild(he),he.addEventListener("click",()=>{le?_e():Ae()})}let Ct=i=>{var P,z,F;let m=a.attachments;if(!(m!=null&&m.enabled))return;let k=i.querySelector(".persona-attachment-previews");if(!k){k=A("div","persona-attachment-previews persona-flex persona-flex-wrap persona-gap-2 persona-mb-2"),k.style.display="none";let W=i.querySelector("[data-persona-composer-form]");W!=null&&W.parentNode?W.parentNode.insertBefore(k,W):i.insertBefore(k,i.firstChild)}if(!i.querySelector('input[type="file"]')){let W=A("input");W.type="file",W.accept=((P=m.allowedTypes)!=null?P:sr).join(","),W.multiple=((z=m.maxFiles)!=null?z:4)>1,W.style.display="none",W.setAttribute("aria-label",(F=m.buttonTooltipText)!=null?F:"Attach files"),i.appendChild(W)}},pa=s.find(i=>i.renderComposer);if(pa!=null&&pa.renderComposer){let i=a.composer,m=pa.renderComposer({config:a,defaultRenderer:()=>g1({config:a}).footer,onSubmit:k=>{S&&!S.isStreaming()&&S.sendMessage(k)},streaming:!1,disabled:!1,openAttachmentPicker:()=>{Ce==null||Ce.click()},models:i==null?void 0:i.models,selectedModelId:i==null?void 0:i.selectedModelId,onModelChange:k=>{a.composer={...a.composer,selectedModelId:k}},onVoiceToggle:((YT=a.voiceRecognition)==null?void 0:YT.enabled)===!0?()=>{pt==null||pt()}:void 0});m&&(tt.replaceWith(m),tt=m)}let sa=i=>{let m=i.querySelector("[data-persona-composer-form]"),k=i.querySelector("[data-persona-composer-input]"),P=i.querySelector("[data-persona-composer-submit]"),z=i.querySelector("[data-persona-composer-mic]"),F=i.querySelector("[data-persona-composer-status]");m&&(Ve=m),k&&(Q=k),P&&(K=P),z&&(_=z,te=z.parentElement),F&&(qe=F);let W=i.querySelector(".persona-mb-3.persona-flex.persona-flex-wrap.persona-gap-2");W&&(Ye=W);let J=i.querySelector(".persona-attachment-button");J&&(Y=J,G=J.parentElement),Ce=i.querySelector('input[type="file"]'),Te=i.querySelector(".persona-attachment-previews");let U=i.querySelector(".persona-widget-composer .persona-flex.persona-items-center.persona-justify-between");U&&(Lt=U)};Ct(tt),sa(tt);let Ia=(QT=a.layout)==null?void 0:QT.contentMaxWidth;Ia&&Ve&&(Ve.style.maxWidth=Ia,Ve.style.marginLeft="auto",Ve.style.marginRight="auto"),(eL=a.attachments)!=null&&eL.enabled&&Ce&&Te&&(Le=_r.fromConfig(a.attachments),Le.setPreviewsContainer(Te),Ce.addEventListener("change",i=>{let m=i.target;Le==null||Le.handleFileSelect(m.files),m.value=""})),(()=>{var P,z;let i=(z=(P=a.layout)==null?void 0:P.slots)!=null?z:{},m=F=>{switch(F){case"body-top":return Z.querySelector(".persona-rounded-2xl.persona-bg-persona-surface.persona-p-6")||null;case"messages":return be;case"footer-top":return Ye;case"composer":return Ve;case"footer-bottom":return qe;default:return null}},k=(F,W)=>{var J;switch(F){case"header-left":case"header-center":case"header-right":if(F==="header-left")ze.insertBefore(W,ze.firstChild);else if(F==="header-right")ze.appendChild(W);else{let U=ze.querySelector(".persona-flex-col");U?(J=U.parentNode)==null||J.insertBefore(W,U.nextSibling):ze.appendChild(W)}break;case"body-top":{let U=ee.querySelector(".persona-rounded-2xl.persona-bg-persona-surface.persona-p-6");U?U.replaceWith(W):ee.insertBefore(W,ee.firstChild);break}case"body-bottom":ee.appendChild(W);break;case"footer-top":Ye.replaceWith(W);break;case"footer-bottom":qe.replaceWith(W);break;default:break}};for(let[F,W]of Object.entries(i))if(W)try{let J=W({config:a,defaultContent:()=>m(F)});J&&k(F,J)}catch(J){typeof console!="undefined"&&console.error(`[AgentWidget] Error rendering slot "${F}":`,J)}})();let wt=i=>{let k=i.target.closest('button[data-expand-header="true"]');if(!k)return;let P=k.closest(".vanilla-reasoning-bubble, .vanilla-tool-bubble");if(!P)return;let z=P.getAttribute("data-message-id");if(!z)return;let F=k.getAttribute("data-bubble-type");F==="reasoning"?(y1.has(z)?y1.delete(z):y1.add(z),yP(z,P)):F==="tool"&&(v1.has(z)?v1.delete(z):v1.add(z),vP(z,P,a))};be.addEventListener("pointerdown",i=>{i.target.closest('button[data-expand-header="true"]')&&(i.preventDefault(),wt(i))}),be.addEventListener("keydown",i=>{let m=i.target;(i.key==="Enter"||i.key===" ")&&m.closest('button[data-expand-header="true"]')&&(i.preventDefault(),wt(i))});let Sa=new Map;be.addEventListener("click",i=>{var W;let k=i.target.closest(".persona-message-action-btn[data-action]");if(!k)return;i.preventDefault(),i.stopPropagation();let P=k.closest("[data-actions-for]");if(!P)return;let z=P.getAttribute("data-actions-for");if(!z)return;let F=k.getAttribute("data-action");if(F==="copy"){let U=S.getMessages().find(fe=>fe.id===z);if(U&&Fe.onCopy){let fe=U.content||"";navigator.clipboard.writeText(fe).then(()=>{k.classList.add("persona-message-action-success");let ve=ye("check",14,"currentColor",2);ve&&(k.innerHTML="",k.appendChild(ve)),setTimeout(()=>{k.classList.remove("persona-message-action-success");let We=ye("copy",14,"currentColor",2);We&&(k.innerHTML="",k.appendChild(We))},2e3)}).catch(ve=>{typeof console!="undefined"&&console.error("[AgentWidget] Failed to copy message:",ve)}),Fe.onCopy(U)}}else if(F==="upvote"||F==="downvote")if(((W=Sa.get(z))!=null?W:null)===F)Sa.delete(z),k.classList.remove("persona-message-action-active");else{let fe=F==="upvote"?"downvote":"upvote",ve=P.querySelector(`[data-action="${fe}"]`);ve&&ve.classList.remove("persona-message-action-active"),Sa.set(z,F),k.classList.add("persona-message-action-active");let Ge=S.getMessages().find(Be=>Be.id===z);Ge&&Fe.onFeedback&&Fe.onFeedback({type:F,messageId:Ge.id,message:Ge})}}),be.addEventListener("click",i=>{let k=i.target.closest("button[data-approval-action]");if(!k)return;i.preventDefault(),i.stopPropagation();let P=k.closest(".vanilla-approval-bubble");if(!P)return;let z=P.getAttribute("data-message-id");if(!z)return;let F=k.getAttribute("data-approval-action");if(!F)return;let W=F==="approve"?"approved":"denied",U=S.getMessages().find(ve=>ve.id===z);if(!(U!=null&&U.approval))return;let fe=P.querySelector("[data-approval-buttons]");fe&&fe.querySelectorAll("button").forEach(We=>{We.disabled=!0,We.style.opacity="0.5",We.style.cursor="not-allowed"}),S.resolveApproval(U.approval,W)});let it=null,Aa=null,Va={artifacts:[],selectedId:null},ya=!1,dr={current:null};be.addEventListener("click",i=>{var We,Ge,Be,O,De;let k=i.target.closest("[data-download-artifact]");if(!k)return;i.preventDefault(),i.stopPropagation();let P=k.getAttribute("data-download-artifact");if(!P||((Be=(Ge=(We=a.features)==null?void 0:We.artifacts)==null?void 0:Ge.onArtifactAction)==null?void 0:Be.call(Ge,{type:"download",artifactId:P}))===!0)return;let F=S.getArtifactById(P),W=F==null?void 0:F.markdown,J=(F==null?void 0:F.title)||"artifact";if(!W){let Ie=k.closest("[data-open-artifact]"),de=Ie==null?void 0:Ie.closest("[data-message-id]"),Ne=de==null?void 0:de.getAttribute("data-message-id");if(Ne){let st=S.getMessages().find(ge=>ge.id===Ne);if(st!=null&&st.rawContent)try{let ge=JSON.parse(st.rawContent);W=(O=ge==null?void 0:ge.props)==null?void 0:O.markdown,J=((De=ge==null?void 0:ge.props)==null?void 0:De.title)||J}catch{}}}if(!W)return;let U=new Blob([W],{type:"text/markdown"}),fe=URL.createObjectURL(U),ve=document.createElement("a");ve.href=fe,ve.download=`${J}.md`,ve.click(),URL.revokeObjectURL(fe)}),be.addEventListener("click",i=>{var F,W,J;let k=i.target.closest("[data-open-artifact]");if(!k)return;let P=k.getAttribute("data-open-artifact");!P||((J=(W=(F=a.features)==null?void 0:F.artifacts)==null?void 0:W.onArtifactAction)==null?void 0:J.call(W,{type:"open",artifactId:P}))===!0||(i.preventDefault(),i.stopPropagation(),S.selectArtifact(P),ka())}),be.addEventListener("keydown",i=>{if(i.key!=="Enter"&&i.key!==" ")return;let m=i.target;m.hasAttribute("data-open-artifact")&&(i.preventDefault(),m.click())});let Da=null,rt=null,jt=null,Fa=null,pr=()=>{};function ja(){Fa==null||Fa(),Fa=null}let cr=()=>{var W;if(!Da||!rt)return;let i=r.classList.contains("persona-artifact-appearance-seamless"),k=((W=r.ownerDocument.defaultView)!=null?W:window).innerWidth<=640;if(!i||r.classList.contains("persona-artifact-narrow-host")||k){rt.style.removeProperty("position"),rt.style.removeProperty("left"),rt.style.removeProperty("top"),rt.style.removeProperty("bottom"),rt.style.removeProperty("width"),rt.style.removeProperty("z-index");return}let P=Da.firstElementChild;if(!P||P===rt)return;let z=10;rt.style.position="absolute",rt.style.top="0",rt.style.bottom="0",rt.style.width=`${z}px`,rt.style.zIndex="5";let F=P.offsetWidth-z/2;rt.style.left=`${Math.max(0,F)}px`},aa=()=>{},ka=()=>{var k,P,z,F,W;if(!it||!_a(a))return;ck(r,a),uk(r,a),aa();let i=(F=(z=(P=(k=a.features)==null?void 0:k.artifacts)==null?void 0:P.layout)==null?void 0:z.narrowHostMaxWidth)!=null?F:520,m=ie.getBoundingClientRect().width||0;r.classList.toggle("persona-artifact-narrow-host",m>0&&m<=i),it.update(Va),ya?(it.setMobileOpen(!1),it.element.classList.add("persona-hidden"),(W=it.backdrop)==null||W.classList.add("persona-hidden")):Va.artifacts.length>0&&(it.element.classList.remove("persona-hidden"),it.setMobileOpen(!0)),pr()};if(_a(a)){ie.style.position="relative";let i=A("div","persona-flex persona-flex-1 persona-flex-col persona-min-w-0 persona-min-h-0"),m=A("div","persona-flex persona-h-full persona-w-full persona-min-h-0 persona-artifact-split-root");i.appendChild(Z),it=AP(a,{onSelect:k=>{var P;return(P=dr.current)==null?void 0:P.selectArtifact(k)},onDismiss:()=>{ya=!0,ka()}}),it.element.classList.add("persona-hidden"),Da=m,m.appendChild(i),m.appendChild(it.element),it.backdrop&&ie.appendChild(it.backdrop),ie.appendChild(m),pr=()=>{var P,z,F,W;if(!Da||!it)return;if(!(((F=(z=(P=a.features)==null?void 0:P.artifacts)==null?void 0:z.layout)==null?void 0:F.resizable)===!0)){jt==null||jt(),jt=null,ja(),rt&&(rt.remove(),rt=null),it.element.style.removeProperty("width"),it.element.style.removeProperty("maxWidth");return}if(!rt){let J=A("div","persona-artifact-split-handle persona-shrink-0 persona-h-full");J.setAttribute("role","separator"),J.setAttribute("aria-orientation","vertical"),J.setAttribute("aria-label","Resize artifacts panel"),J.tabIndex=0;let U=r.ownerDocument,fe=(W=U.defaultView)!=null?W:window,ve=We=>{var de,Ne;if(!it||We.button!==0||r.classList.contains("persona-artifact-narrow-host")||fe.innerWidth<=640)return;We.preventDefault(),ja();let Ge=We.clientX,Be=it.element.getBoundingClientRect().width,O=(Ne=(de=a.features)==null?void 0:de.artifacts)==null?void 0:Ne.layout,De=ft=>{let st=Da.getBoundingClientRect().width,ge=r.classList.contains("persona-artifact-appearance-seamless"),Xt=ge?0:EP(Da,fe),Mt=ge?0:J.getBoundingClientRect().width||6,Ca=Be-(ft.clientX-Ge),la=HP(Ca,st,Xt,Mt,O==null?void 0:O.resizableMinWidth,O==null?void 0:O.resizableMaxWidth);it.element.style.width=`${la}px`,it.element.style.maxWidth="none",cr()},Ie=()=>{U.removeEventListener("pointermove",De),U.removeEventListener("pointerup",Ie),U.removeEventListener("pointercancel",Ie),Fa=null;try{J.releasePointerCapture(We.pointerId)}catch{}};Fa=Ie,U.addEventListener("pointermove",De),U.addEventListener("pointerup",Ie),U.addEventListener("pointercancel",Ie);try{J.setPointerCapture(We.pointerId)}catch{}};J.addEventListener("pointerdown",ve),rt=J,Da.insertBefore(J,it.element),jt=()=>{J.removeEventListener("pointerdown",ve)}}if(rt){let J=Va.artifacts.length>0&&!ya;rt.classList.toggle("persona-hidden",!J),cr()}},aa=()=>{var fe,ve,We,Ge,Be,O,De,Ie,de,Ne,ft,st,ge,Xt;if(!w||!it||((ve=(fe=a.launcher)==null?void 0:fe.sidebarMode)!=null?ve:!1))return;let P=(We=r.ownerDocument.defaultView)!=null?We:window,z=(Be=(Ge=a.launcher)==null?void 0:Ge.mobileFullscreen)!=null?Be:!0,F=(De=(O=a.launcher)==null?void 0:O.mobileBreakpoint)!=null?De:640;if(z&&P.innerWidth<=F||!LP(a,w))return;let W=(Ne=(de=(Ie=a.launcher)==null?void 0:Ie.width)!=null?de:a.launcherWidth)!=null?Ne:"min(400px, calc(100vw - 24px))",J=(Xt=(ge=(st=(ft=a.features)==null?void 0:ft.artifacts)==null?void 0:st.layout)==null?void 0:ge.expandedPanelWidth)!=null?Xt:"min(720px, calc(100vw - 24px))";Va.artifacts.length>0&&!ya?(ie.style.width=J,ie.style.maxWidth=J):(ie.style.width=W,ie.style.maxWidth=W)},typeof ResizeObserver!="undefined"&&(Aa=new ResizeObserver(()=>{ka()}),Aa.observe(ie))}else ie.appendChild(Z);r.appendChild(pe);let Ga=()=>{var st,ge,Xt,Mt,Ca,la,fa,Qt,Na,Ke,Dt,bi,Ci,wi,Si,Ai,Hk,Pk,$t,ki,R1;let i=da(a),m=(ge=(st=a.launcher)==null?void 0:st.sidebarMode)!=null?ge:!1,k=i||m||((Mt=(Xt=a.launcher)==null?void 0:Xt.fullHeight)!=null?Mt:!1),P=((Ca=a.launcher)==null?void 0:Ca.enabled)===!1,z=(la=a.theme)!=null?la:{},F=(fa=r.ownerDocument.defaultView)!=null?fa:window,W=(Na=(Qt=a.launcher)==null?void 0:Qt.mobileFullscreen)!=null?Na:!0,J=(Dt=(Ke=a.launcher)==null?void 0:Ke.mobileBreakpoint)!=null?Dt:640,U=F.innerWidth<=J,fe=W&&U&&w,ve=(Ci=(bi=a.launcher)==null?void 0:bi.position)!=null?Ci:"bottom-left",We=ve==="bottom-left"||ve==="top-left",Ge=m||fe?"none":"1px solid var(--persona-persona-border)",Be=fe?"none":m?We?"var(--persona-palette-shadows-sidebar-left, 2px 0 12px rgba(0, 0, 0, 0.08))":"var(--persona-palette-shadows-sidebar-right, -2px 0 12px rgba(0, 0, 0, 0.08))":"var(--persona-palette-shadows-xl, 0 25px 50px -12px rgba(0, 0, 0, 0.25))",O=m||fe?"0":"var(--persona-panel-radius, var(--persona-radius-xl, 0.75rem))",De=(wi=z.panelBorder)!=null?wi:Ge,Ie=(Si=z.panelShadow)!=null?Si:Be,de=(Ai=z.panelBorderRadius)!=null?Ai:O;if(r.style.cssText="",pe.style.cssText="",ie.style.cssText="",Z.style.cssText="",ee.style.cssText="",tt.style.cssText="",fe){pe.classList.remove("persona-bottom-6","persona-right-6","persona-left-6","persona-top-6","persona-bottom-4","persona-right-4","persona-left-4","persona-top-4"),pe.style.cssText=`
71
71
  position: fixed !important;
72
72
  inset: 0 !important;
73
73
  width: 100% !important;
@@ -158,7 +158,7 @@ ${n.join(`
158
158
  ${n.join(`
159
159
  `)}`)}return a.join(`
160
160
 
161
- `)}var YP={name:"@runtypelabs/persona",version:"2.3.0",description:"Themeable, pluggable streaming agent widget for websites, in plain JS with support for voice input and reasoning / tool output.",type:"module",main:"dist/index.cjs",module:"dist/index.js",types:"dist/index.d.ts",exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js",require:"./dist/index.cjs"},"./widget.css":{import:"./widget.css",default:"./dist/widget.css"}},files:["dist","widget.css","src"],scripts:{build:"rimraf dist && npm run build:styles && npm run build:client && npm run build:installer","build:styles":`node -e "const fs=require('fs');fs.mkdirSync('dist',{recursive:true});fs.copyFileSync('src/styles/widget.css','dist/widget.css');"`,"build:client":'tsup src/index.ts --format esm,cjs,iife --global-name AgentWidget --minify --sourcemap --splitting false --dts --loader ".css=text"',"build:installer":"tsup src/install.ts --format iife --global-name SiteAgentInstaller --out-dir dist --minify --sourcemap --no-splitting",lint:"eslint . --ext .ts",typecheck:"tsc --noEmit",test:"vitest","test:ui":"vitest --ui","test:run":"vitest run"},dependencies:{dompurify:"^3.3.3",idiomorph:"^0.7.4",lucide:"^0.552.0",marked:"^12.0.2","partial-json":"^0.1.7",zod:"^3.22.4"},devDependencies:{"@types/node":"^20.12.7","@typescript-eslint/eslint-plugin":"^7.0.0","@typescript-eslint/parser":"^7.0.0","@vitest/ui":"^4.0.9",eslint:"^8.57.0","eslint-config-prettier":"^9.1.0","fake-indexeddb":"^6.2.5",postcss:"^8.4.38",rimraf:"^5.0.5",tailwindcss:"^3.4.10",tsup:"^8.0.1",typescript:"^5.4.5",vitest:"^4.0.9"},engines:{node:">=18.17.0"},author:"Runtype",license:"MIT",keywords:["ai","chat","widget","streaming","typescript","persona","agent"],repository:{type:"git",url:"git+https://github.com/runtypelabs/persona.git",directory:"packages/widget"},bugs:{url:"https://github.com/runtypelabs/persona/issues"},homepage:"https://github.com/runtypelabs/persona/tree/main/packages/widget#readme",publishConfig:{access:"public"}};var jr=YP.version;function ir(r){if(r!==void 0)return typeof r=="string"?r:Array.isArray(r)?`[${r.map(t=>t.toString()).join(", ")}]`:r.toString()}function dV(r){if(r)return{getHeaders:ir(r.getHeaders),onFeedback:ir(r.onFeedback),onCopy:ir(r.onCopy),requestMiddleware:ir(r.requestMiddleware),actionHandlers:ir(r.actionHandlers),actionParsers:ir(r.actionParsers),postprocessMessage:ir(r.postprocessMessage),contextProviders:ir(r.contextProviders),streamParser:ir(r.streamParser)}}var QP=`({ text, message }: any) => {
161
+ `)}var YP={name:"@runtypelabs/persona",version:"2.3.1",description:"Themeable, pluggable streaming agent widget for websites, in plain JS with support for voice input and reasoning / tool output.",type:"module",main:"dist/index.cjs",module:"dist/index.js",types:"dist/index.d.ts",exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js",require:"./dist/index.cjs"},"./widget.css":{import:"./widget.css",default:"./dist/widget.css"}},files:["dist","widget.css","src"],scripts:{build:"rimraf dist && npm run build:styles && npm run build:client && npm run build:installer","build:styles":`node -e "const fs=require('fs');fs.mkdirSync('dist',{recursive:true});fs.copyFileSync('src/styles/widget.css','dist/widget.css');"`,"build:client":'tsup src/index.ts --format esm,cjs,iife --global-name AgentWidget --minify --sourcemap --splitting false --dts --loader ".css=text"',"build:installer":"tsup src/install.ts --format iife --global-name SiteAgentInstaller --out-dir dist --minify --sourcemap --no-splitting",lint:"eslint . --ext .ts",typecheck:"tsc --noEmit",test:"vitest","test:ui":"vitest --ui","test:run":"vitest run"},dependencies:{dompurify:"^3.3.3",idiomorph:"^0.7.4",lucide:"^0.552.0",marked:"^12.0.2","partial-json":"^0.1.7",zod:"^3.22.4"},devDependencies:{"@types/node":"^20.12.7","@typescript-eslint/eslint-plugin":"^7.0.0","@typescript-eslint/parser":"^7.0.0","@vitest/ui":"^4.0.9",eslint:"^8.57.0","eslint-config-prettier":"^9.1.0","fake-indexeddb":"^6.2.5",postcss:"^8.4.38",rimraf:"^5.0.5",tailwindcss:"^3.4.10",tsup:"^8.0.1",typescript:"^5.4.5",vitest:"^4.0.9"},engines:{node:">=18.17.0"},author:"Runtype",license:"MIT",keywords:["ai","chat","widget","streaming","typescript","persona","agent"],repository:{type:"git",url:"git+https://github.com/runtypelabs/persona.git",directory:"packages/widget"},bugs:{url:"https://github.com/runtypelabs/persona/issues"},homepage:"https://github.com/runtypelabs/persona/tree/main/packages/widget#readme",publishConfig:{access:"public"}};var jr=YP.version;function ir(r){if(r!==void 0)return typeof r=="string"?r:Array.isArray(r)?`[${r.map(t=>t.toString()).join(", ")}]`:r.toString()}function dV(r){if(r)return{getHeaders:ir(r.getHeaders),onFeedback:ir(r.onFeedback),onCopy:ir(r.onCopy),requestMiddleware:ir(r.requestMiddleware),actionHandlers:ir(r.actionHandlers),actionParsers:ir(r.actionParsers),postprocessMessage:ir(r.postprocessMessage),contextProviders:ir(r.contextProviders),streamParser:ir(r.streamParser)}}var QP=`({ text, message }: any) => {
162
162
  const jsonSource = (message as any).rawContent || text || message.content;
163
163
  if (!jsonSource || typeof jsonSource !== 'string') return null;
164
164
  let cleanJson = jsonSource