agent-canvas 0.1.34 → 0.1.36

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.
@@ -1,63 +1,63 @@
1
- import{useState as I5}from"react";import v5 from"react";function p1(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var W1=p1();function W0($){W1=$}var J1={exec:()=>null};function f($,y=""){let Y=typeof $=="string"?$:$.source,J={replace:(Q,B)=>{let W=typeof B=="string"?B:B.source;return W=W.replace(V.caret,"$1"),Y=Y.replace(Q,W),J},getRegex:()=>new RegExp(Y,y)};return J}var p0=(()=>{try{return!!new RegExp("(?<=1)(?<!1)")}catch{return!1}})(),V={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:($)=>new RegExp(`^( {0,3}${$})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:($)=>new RegExp(`^ {0,${Math.min(3,$-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:($)=>new RegExp(`^ {0,${Math.min(3,$-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:($)=>new RegExp(`^ {0,${Math.min(3,$-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:($)=>new RegExp(`^ {0,${Math.min(3,$-1)}}#`),htmlBeginRegex:($)=>new RegExp(`^ {0,${Math.min(3,$-1)}}<(?:[a-z].*>|!--)`,"i"),blockquoteBeginRegex:($)=>new RegExp(`^ {0,${Math.min(3,$-1)}}>`)},c0=/^(?:[ \t]*(?:\n|$))+/,E0=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,d0=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,w1=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,u0=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,c1=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,X0=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,K0=f(X0).replace(/bull/g,c1).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),r0=f(X0).replace(/bull/g,c1).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),E1=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,i0=/^[^\n]+/,d1=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,l0=f(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",d1).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),o0=f(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,c1).getRegex(),S1="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",u1=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,a0=f("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$))","i").replace("comment",u1).replace("tag",S1).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),N0=f(E1).replace("hr",w1).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",S1).getRegex(),s0=f(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",N0).getRegex(),r1={blockquote:s0,code:E0,def:l0,fences:d0,heading:u0,hr:w1,html:a0,lheading:K0,list:o0,newline:c0,paragraph:N0,table:J1,text:i0},y0=f("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",w1).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3}\t)[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",S1).getRegex(),n0={...r1,lheading:r0,table:y0,paragraph:f(E1).replace("hr",w1).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",y0).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",S1).getRegex()},t0={...r1,html:f(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",u1).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:J1,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:f(E1).replace("hr",w1).replace("heading",` *#{1,6} *[^
2
- ]`).replace("lheading",K0).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},e0=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,y5=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,L0=/^( {2,}|\\)\n(?!\s*$)/,$5=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,G1=/[\p{P}\p{S}]/u,I1=/[\s\p{P}\p{S}]/u,i1=/[^\s\p{P}\p{S}]/u,Q5=f(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,I1).getRegex(),q0=/(?!~)[\p{P}\p{S}]/u,Y5=/(?!~)[\s\p{P}\p{S}]/u,J5=/(?:[^\s\p{P}\p{S}]|~)/u,B5=f(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",p0?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),G0=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,W5=f(G0,"u").replace(/punct/g,G1).getRegex(),X5=f(G0,"u").replace(/punct/g,q0).getRegex(),U0="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",K5=f(U0,"gu").replace(/notPunctSpace/g,i1).replace(/punctSpace/g,I1).replace(/punct/g,G1).getRegex(),N5=f(U0,"gu").replace(/notPunctSpace/g,J5).replace(/punctSpace/g,Y5).replace(/punct/g,q0).getRegex(),L5=f("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,i1).replace(/punctSpace/g,I1).replace(/punct/g,G1).getRegex(),q5=f(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,G1).getRegex(),G5="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",U5=f(G5,"gu").replace(/notPunctSpace/g,i1).replace(/punctSpace/g,I1).replace(/punct/g,G1).getRegex(),P5=f(/\\(punct)/,"gu").replace(/punct/g,G1).getRegex(),H5=f(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),T5=f(u1).replace("(?:-->|$)","-->").getRegex(),Z5=f("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",T5).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),z1=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,F5=f(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",z1).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),P0=f(/^!?\[(label)\]\[(ref)\]/).replace("label",z1).replace("ref",d1).getRegex(),H0=f(/^!?\[(ref)\](?:\[\])?/).replace("ref",d1).getRegex(),b5=f("reflink|nolink(?!\\()","g").replace("reflink",P0).replace("nolink",H0).getRegex(),$0=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,l1={_backpedal:J1,anyPunctuation:P5,autolink:H5,blockSkip:B5,br:L0,code:y5,del:J1,delLDelim:J1,delRDelim:J1,emStrongLDelim:W5,emStrongRDelimAst:K5,emStrongRDelimUnd:L5,escape:e0,link:F5,nolink:H0,punctuation:Q5,reflink:P0,reflinkSearch:b5,tag:Z5,text:$5,url:J1},_5={...l1,link:f(/^!?\[(label)\]\((.*?)\)/).replace("label",z1).getRegex(),reflink:f(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",z1).getRegex()},D1={...l1,emStrongRDelimAst:N5,emStrongLDelim:X5,delLDelim:q5,delRDelim:U5,url:f(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",$0).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:f(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",$0).getRegex()},w5={...D1,br:f(L0).replace("{2,}","*").getRegex(),text:f(D1.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},k1={normal:r1,gfm:n0,pedantic:t0},F1={normal:l1,gfm:D1,breaks:w5,pedantic:_5},A5={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},Q0=($)=>A5[$];function a($,y){if(y){if(V.escapeTest.test($))return $.replace(V.escapeReplace,Q0)}else if(V.escapeTestNoEncode.test($))return $.replace(V.escapeReplaceNoEncode,Q0);return $}function Y0($){try{$=encodeURI($).replace(V.percentDecode,"%")}catch{return null}return $}function J0($,y){let Y=$.replace(V.findPipe,(B,W,K)=>{let X=!1,N=W;for(;--N>=0&&K[N]==="\\";)X=!X;return X?"|":" |"}),J=Y.split(V.splitPipe),Q=0;if(J[0].trim()||J.shift(),J.length>0&&!J.at(-1)?.trim()&&J.pop(),y)if(J.length>y)J.splice(y);else for(;J.length<y;)J.push("");for(;Q<J.length;Q++)J[Q]=J[Q].trim().replace(V.slashPipe,"|");return J}function b1($,y,Y){let J=$.length;if(J===0)return"";let Q=0;for(;Q<J;){let B=$.charAt(J-Q-1);if(B===y&&!Y)Q++;else if(B!==y&&Y)Q++;else break}return $.slice(0,J-Q)}function f5($,y){if($.indexOf(y[1])===-1)return-1;let Y=0;for(let J=0;J<$.length;J++)if($[J]==="\\")J++;else if($[J]===y[0])Y++;else if($[J]===y[1]&&(Y--,Y<0))return J;return Y>0?-2:-1}function M5($,y=0){let Y=y,J="";for(let Q of $)if(Q==="\t"){let B=4-Y%4;J+=" ".repeat(B),Y+=B}else J+=Q,Y++;return J}function B0($,y,Y,J,Q){let B=y.href,W=y.title||null,K=$[1].replace(Q.other.outputLinkReplace,"$1");J.state.inLink=!0;let X={type:$[0].charAt(0)==="!"?"image":"link",raw:Y,href:B,title:W,text:K,tokens:J.inlineTokens(K)};return J.state.inLink=!1,X}function k5($,y,Y){let J=$.match(Y.other.indentCodeCompensation);if(J===null)return y;let Q=J[1];return y.split(`
3
- `).map((B)=>{let W=B.match(Y.other.beginningSpace);if(W===null)return B;let[K]=W;return K.length>=Q.length?B.slice(Q.length):B}).join(`
4
- `)}var v1=class{options;rules;lexer;constructor($){this.options=$||W1}space($){let y=this.rules.block.newline.exec($);if(y&&y[0].length>0)return{type:"space",raw:y[0]}}code($){let y=this.rules.block.code.exec($);if(y){let Y=y[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:y[0],codeBlockStyle:"indented",text:this.options.pedantic?Y:b1(Y,`
5
- `)}}}fences($){let y=this.rules.block.fences.exec($);if(y){let Y=y[0],J=k5(Y,y[3]||"",this.rules);return{type:"code",raw:Y,lang:y[2]?y[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):y[2],text:J}}}heading($){let y=this.rules.block.heading.exec($);if(y){let Y=y[2].trim();if(this.rules.other.endingHash.test(Y)){let J=b1(Y,"#");(this.options.pedantic||!J||this.rules.other.endingSpaceChar.test(J))&&(Y=J.trim())}return{type:"heading",raw:y[0],depth:y[1].length,text:Y,tokens:this.lexer.inline(Y)}}}hr($){let y=this.rules.block.hr.exec($);if(y)return{type:"hr",raw:b1(y[0],`
6
- `)}}blockquote($){let y=this.rules.block.blockquote.exec($);if(y){let Y=b1(y[0],`
1
+ import{useState as R5}from"react";import k5 from"react";function p1(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var B1=p1();function B0(Q){B1=Q}var W1={exec:()=>null};function z(Q,$=""){let J=typeof Q=="string"?Q:Q.source,W={replace:(Y,X)=>{let B=typeof X=="string"?X:X.source;return B=B.replace(V.caret,"$1"),J=J.replace(Y,B),W},getRegex:()=>new RegExp(J,$)};return W}var E0=(()=>{try{return!!new RegExp("(?<=1)(?<!1)")}catch{return!1}})(),V={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:(Q)=>new RegExp(`^( {0,3}${Q})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:(Q)=>new RegExp(`^ {0,${Math.min(3,Q-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:(Q)=>new RegExp(`^ {0,${Math.min(3,Q-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:(Q)=>new RegExp(`^ {0,${Math.min(3,Q-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:(Q)=>new RegExp(`^ {0,${Math.min(3,Q-1)}}#`),htmlBeginRegex:(Q)=>new RegExp(`^ {0,${Math.min(3,Q-1)}}<(?:[a-z].*>|!--)`,"i"),blockquoteBeginRegex:(Q)=>new RegExp(`^ {0,${Math.min(3,Q-1)}}>`)},c0=/^(?:[ \t]*(?:\n|$))+/,u0=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,d0=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,A1=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,r0=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,E1=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,K0=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,L0=z(K0).replace(/bull/g,E1).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),i0=z(K0).replace(/bull/g,E1).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),c1=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,l0=/^[^\n]+/,u1=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,o0=z(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",u1).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),a0=z(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,E1).getRegex(),I1="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",d1=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,s0=z("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$))","i").replace("comment",d1).replace("tag",I1).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),q0=z(c1).replace("hr",A1).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",I1).getRegex(),n0=z(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",q0).getRegex(),r1={blockquote:n0,code:u0,def:o0,fences:d0,heading:r0,hr:A1,html:s0,lheading:L0,list:a0,newline:c0,paragraph:q0,table:W1,text:l0},$0=z("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",A1).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3}\t)[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",I1).getRegex(),t0={...r1,lheading:i0,table:$0,paragraph:z(c1).replace("hr",A1).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",$0).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",I1).getRegex()},e0={...r1,html:z(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",d1).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:W1,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:z(c1).replace("hr",A1).replace("heading",` *#{1,6} *[^
2
+ ]`).replace("lheading",L0).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},$5=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Q5=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,N0=/^( {2,}|\\)\n(?!\s*$)/,Y5=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,P1=/[\p{P}\p{S}]/u,S1=/[\s\p{P}\p{S}]/u,i1=/[^\s\p{P}\p{S}]/u,J5=z(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,S1).getRegex(),G0=/(?!~)[\p{P}\p{S}]/u,W5=/(?!~)[\s\p{P}\p{S}]/u,X5=/(?:[^\s\p{P}\p{S}]|~)/u,B5=z(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",E0?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),P0=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,K5=z(P0,"u").replace(/punct/g,P1).getRegex(),L5=z(P0,"u").replace(/punct/g,G0).getRegex(),H0="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",q5=z(H0,"gu").replace(/notPunctSpace/g,i1).replace(/punctSpace/g,S1).replace(/punct/g,P1).getRegex(),N5=z(H0,"gu").replace(/notPunctSpace/g,X5).replace(/punctSpace/g,W5).replace(/punct/g,G0).getRegex(),G5=z("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,i1).replace(/punctSpace/g,S1).replace(/punct/g,P1).getRegex(),P5=z(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,P1).getRegex(),H5="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",U5=z(H5,"gu").replace(/notPunctSpace/g,i1).replace(/punctSpace/g,S1).replace(/punct/g,P1).getRegex(),Z5=z(/\\(punct)/,"gu").replace(/punct/g,P1).getRegex(),T5=z(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),F5=z(d1).replace("(?:-->|$)","-->").getRegex(),_5=z("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",F5).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),O1=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,y5=z(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",O1).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),U0=z(/^!?\[(label)\]\[(ref)\]/).replace("label",O1).replace("ref",u1).getRegex(),Z0=z(/^!?\[(ref)\](?:\[\])?/).replace("ref",u1).getRegex(),w5=z("reflink|nolink(?!\\()","g").replace("reflink",U0).replace("nolink",Z0).getRegex(),Q0=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,l1={_backpedal:W1,anyPunctuation:Z5,autolink:T5,blockSkip:B5,br:N0,code:Q5,del:W1,delLDelim:W1,delRDelim:W1,emStrongLDelim:K5,emStrongRDelimAst:q5,emStrongRDelimUnd:G5,escape:$5,link:y5,nolink:Z0,punctuation:J5,reflink:U0,reflinkSearch:w5,tag:_5,text:Y5,url:W1},A5={...l1,link:z(/^!?\[(label)\]\((.*?)\)/).replace("label",O1).getRegex(),reflink:z(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",O1).getRegex()},D1={...l1,emStrongRDelimAst:N5,emStrongLDelim:L5,delLDelim:P5,delRDelim:U5,url:z(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",Q0).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:z(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",Q0).getRegex()},f5={...D1,br:z(N0).replace("{2,}","*").getRegex(),text:z(D1.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},M1={normal:r1,gfm:t0,pedantic:e0},_1={normal:l1,gfm:D1,breaks:f5,pedantic:A5},z5={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},Y0=(Q)=>z5[Q];function a(Q,$){if($){if(V.escapeTest.test(Q))return Q.replace(V.escapeReplace,Y0)}else if(V.escapeTestNoEncode.test(Q))return Q.replace(V.escapeReplaceNoEncode,Y0);return Q}function J0(Q){try{Q=encodeURI(Q).replace(V.percentDecode,"%")}catch{return null}return Q}function W0(Q,$){let J=Q.replace(V.findPipe,(X,B,L)=>{let K=!1,q=B;for(;--q>=0&&L[q]==="\\";)K=!K;return K?"|":" |"}),W=J.split(V.splitPipe),Y=0;if(W[0].trim()||W.shift(),W.length>0&&!W.at(-1)?.trim()&&W.pop(),$)if(W.length>$)W.splice($);else for(;W.length<$;)W.push("");for(;Y<W.length;Y++)W[Y]=W[Y].trim().replace(V.slashPipe,"|");return W}function y1(Q,$,J){let W=Q.length;if(W===0)return"";let Y=0;for(;Y<W;){let X=Q.charAt(W-Y-1);if(X===$&&!J)Y++;else if(X!==$&&J)Y++;else break}return Q.slice(0,W-Y)}function b5(Q,$){if(Q.indexOf($[1])===-1)return-1;let J=0;for(let W=0;W<Q.length;W++)if(Q[W]==="\\")W++;else if(Q[W]===$[0])J++;else if(Q[W]===$[1]&&(J--,J<0))return W;return J>0?-2:-1}function M5(Q,$=0){let J=$,W="";for(let Y of Q)if(Y==="\t"){let X=4-J%4;W+=" ".repeat(X),J+=X}else W+=Y,J++;return W}function X0(Q,$,J,W,Y){let X=$.href,B=$.title||null,L=Q[1].replace(Y.other.outputLinkReplace,"$1");W.state.inLink=!0;let K={type:Q[0].charAt(0)==="!"?"image":"link",raw:J,href:X,title:B,text:L,tokens:W.inlineTokens(L)};return W.state.inLink=!1,K}function O5(Q,$,J){let W=Q.match(J.other.indentCodeCompensation);if(W===null)return $;let Y=W[1];return $.split(`
3
+ `).map((X)=>{let B=X.match(J.other.beginningSpace);if(B===null)return X;let[L]=B;return L.length>=Y.length?X.slice(Y.length):X}).join(`
4
+ `)}var v1=class{options;rules;lexer;constructor(Q){this.options=Q||B1}space(Q){let $=this.rules.block.newline.exec(Q);if($&&$[0].length>0)return{type:"space",raw:$[0]}}code(Q){let $=this.rules.block.code.exec(Q);if($){let J=$[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:$[0],codeBlockStyle:"indented",text:this.options.pedantic?J:y1(J,`
5
+ `)}}}fences(Q){let $=this.rules.block.fences.exec(Q);if($){let J=$[0],W=O5(J,$[3]||"",this.rules);return{type:"code",raw:J,lang:$[2]?$[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):$[2],text:W}}}heading(Q){let $=this.rules.block.heading.exec(Q);if($){let J=$[2].trim();if(this.rules.other.endingHash.test(J)){let W=y1(J,"#");(this.options.pedantic||!W||this.rules.other.endingSpaceChar.test(W))&&(J=W.trim())}return{type:"heading",raw:$[0],depth:$[1].length,text:J,tokens:this.lexer.inline(J)}}}hr(Q){let $=this.rules.block.hr.exec(Q);if($)return{type:"hr",raw:y1($[0],`
6
+ `)}}blockquote(Q){let $=this.rules.block.blockquote.exec(Q);if($){let J=y1($[0],`
7
7
  `).split(`
8
- `),J="",Q="",B=[];for(;Y.length>0;){let W=!1,K=[],X;for(X=0;X<Y.length;X++)if(this.rules.other.blockquoteStart.test(Y[X]))K.push(Y[X]),W=!0;else if(!W)K.push(Y[X]);else break;Y=Y.slice(X);let N=K.join(`
9
- `),L=N.replace(this.rules.other.blockquoteSetextReplace,`
10
- $1`).replace(this.rules.other.blockquoteSetextReplace2,"");J=J?`${J}
11
- ${N}`:N,Q=Q?`${Q}
12
- ${L}`:L;let q=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(L,B,!0),this.lexer.state.top=q,Y.length===0)break;let G=B.at(-1);if(G?.type==="code")break;if(G?.type==="blockquote"){let Z=G,U=Z.raw+`
13
- `+Y.join(`
14
- `),P=this.blockquote(U);B[B.length-1]=P,J=J.substring(0,J.length-Z.raw.length)+P.raw,Q=Q.substring(0,Q.length-Z.text.length)+P.text;break}else if(G?.type==="list"){let Z=G,U=Z.raw+`
15
- `+Y.join(`
16
- `),P=this.list(U);B[B.length-1]=P,J=J.substring(0,J.length-G.raw.length)+P.raw,Q=Q.substring(0,Q.length-Z.raw.length)+P.raw,Y=U.substring(B.at(-1).raw.length).split(`
17
- `);continue}}return{type:"blockquote",raw:J,tokens:B,text:Q}}}list($){let y=this.rules.block.list.exec($);if(y){let Y=y[1].trim(),J=Y.length>1,Q={type:"list",raw:"",ordered:J,start:J?+Y.slice(0,-1):"",loose:!1,items:[]};Y=J?`\\d{1,9}\\${Y.slice(-1)}`:`\\${Y}`,this.options.pedantic&&(Y=J?Y:"[*+-]");let B=this.rules.other.listItemRegex(Y),W=!1;for(;$;){let X=!1,N="",L="";if(!(y=B.exec($))||this.rules.block.hr.test($))break;N=y[0],$=$.substring(N.length);let q=M5(y[2].split(`
18
- `,1)[0],y[1].length),G=$.split(`
19
- `,1)[0],Z=!q.trim(),U=0;if(this.options.pedantic?(U=2,L=q.trimStart()):Z?U=y[1].length+1:(U=q.search(this.rules.other.nonSpaceChar),U=U>4?1:U,L=q.slice(U),U+=y[1].length),Z&&this.rules.other.blankLine.test(G)&&(N+=G+`
20
- `,$=$.substring(G.length+1),X=!0),!X){let P=this.rules.other.nextBulletRegex(U),H=this.rules.other.hrRegex(U),F=this.rules.other.fencesBeginRegex(U),O=this.rules.other.headingBeginRegex(U),z=this.rules.other.htmlBeginRegex(U),m=this.rules.other.blockquoteBeginRegex(U);for(;$;){let S=$.split(`
21
- `,1)[0],v;if(G=S,this.options.pedantic?(G=G.replace(this.rules.other.listReplaceNesting," "),v=G):v=G.replace(this.rules.other.tabCharGlobal," "),F.test(G)||O.test(G)||z.test(G)||m.test(G)||P.test(G)||H.test(G))break;if(v.search(this.rules.other.nonSpaceChar)>=U||!G.trim())L+=`
22
- `+v.slice(U);else{if(Z||q.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||F.test(q)||O.test(q)||H.test(q))break;L+=`
23
- `+G}Z=!G.trim(),N+=S+`
24
- `,$=$.substring(S.length+1),q=v.slice(U)}}Q.loose||(W?Q.loose=!0:this.rules.other.doubleBlankLine.test(N)&&(W=!0)),Q.items.push({type:"list_item",raw:N,task:!!this.options.gfm&&this.rules.other.listIsTask.test(L),loose:!1,text:L,tokens:[]}),Q.raw+=N}let K=Q.items.at(-1);if(K)K.raw=K.raw.trimEnd(),K.text=K.text.trimEnd();else return;Q.raw=Q.raw.trimEnd();for(let X of Q.items){if(this.lexer.state.top=!1,X.tokens=this.lexer.blockTokens(X.text,[]),X.task){if(X.text=X.text.replace(this.rules.other.listReplaceTask,""),X.tokens[0]?.type==="text"||X.tokens[0]?.type==="paragraph"){X.tokens[0].raw=X.tokens[0].raw.replace(this.rules.other.listReplaceTask,""),X.tokens[0].text=X.tokens[0].text.replace(this.rules.other.listReplaceTask,"");for(let L=this.lexer.inlineQueue.length-1;L>=0;L--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[L].src)){this.lexer.inlineQueue[L].src=this.lexer.inlineQueue[L].src.replace(this.rules.other.listReplaceTask,"");break}}let N=this.rules.other.listTaskCheckbox.exec(X.raw);if(N){let L={type:"checkbox",raw:N[0]+" ",checked:N[0]!=="[ ]"};X.checked=L.checked,Q.loose?X.tokens[0]&&["paragraph","text"].includes(X.tokens[0].type)&&"tokens"in X.tokens[0]&&X.tokens[0].tokens?(X.tokens[0].raw=L.raw+X.tokens[0].raw,X.tokens[0].text=L.raw+X.tokens[0].text,X.tokens[0].tokens.unshift(L)):X.tokens.unshift({type:"paragraph",raw:L.raw,text:L.raw,tokens:[L]}):X.tokens.unshift(L)}}if(!Q.loose){let N=X.tokens.filter((q)=>q.type==="space"),L=N.length>0&&N.some((q)=>this.rules.other.anyLine.test(q.raw));Q.loose=L}}if(Q.loose)for(let X of Q.items){X.loose=!0;for(let N of X.tokens)N.type==="text"&&(N.type="paragraph")}return Q}}html($){let y=this.rules.block.html.exec($);if(y)return{type:"html",block:!0,raw:y[0],pre:y[1]==="pre"||y[1]==="script"||y[1]==="style",text:y[0]}}def($){let y=this.rules.block.def.exec($);if(y){let Y=y[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),J=y[2]?y[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",Q=y[3]?y[3].substring(1,y[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):y[3];return{type:"def",tag:Y,raw:y[0],href:J,title:Q}}}table($){let y=this.rules.block.table.exec($);if(!y||!this.rules.other.tableDelimiter.test(y[2]))return;let Y=J0(y[1]),J=y[2].replace(this.rules.other.tableAlignChars,"").split("|"),Q=y[3]?.trim()?y[3].replace(this.rules.other.tableRowBlankLine,"").split(`
25
- `):[],B={type:"table",raw:y[0],header:[],align:[],rows:[]};if(Y.length===J.length){for(let W of J)this.rules.other.tableAlignRight.test(W)?B.align.push("right"):this.rules.other.tableAlignCenter.test(W)?B.align.push("center"):this.rules.other.tableAlignLeft.test(W)?B.align.push("left"):B.align.push(null);for(let W=0;W<Y.length;W++)B.header.push({text:Y[W],tokens:this.lexer.inline(Y[W]),header:!0,align:B.align[W]});for(let W of Q)B.rows.push(J0(W,B.header.length).map((K,X)=>({text:K,tokens:this.lexer.inline(K),header:!1,align:B.align[X]})));return B}}lheading($){let y=this.rules.block.lheading.exec($);if(y){let Y=y[1].trim();return{type:"heading",raw:y[0],depth:y[2].charAt(0)==="="?1:2,text:Y,tokens:this.lexer.inline(Y)}}}paragraph($){let y=this.rules.block.paragraph.exec($);if(y){let Y=y[1].charAt(y[1].length-1)===`
26
- `?y[1].slice(0,-1):y[1];return{type:"paragraph",raw:y[0],text:Y,tokens:this.lexer.inline(Y)}}}text($){let y=this.rules.block.text.exec($);if(y)return{type:"text",raw:y[0],text:y[0],tokens:this.lexer.inline(y[0])}}escape($){let y=this.rules.inline.escape.exec($);if(y)return{type:"escape",raw:y[0],text:y[1]}}tag($){let y=this.rules.inline.tag.exec($);if(y)return!this.lexer.state.inLink&&this.rules.other.startATag.test(y[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(y[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(y[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(y[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:y[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:y[0]}}link($){let y=this.rules.inline.link.exec($);if(y){let Y=y[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(Y)){if(!this.rules.other.endAngleBracket.test(Y))return;let B=b1(Y.slice(0,-1),"\\");if((Y.length-B.length)%2===0)return}else{let B=f5(y[2],"()");if(B===-2)return;if(B>-1){let W=(y[0].indexOf("!")===0?5:4)+y[1].length+B;y[2]=y[2].substring(0,B),y[0]=y[0].substring(0,W).trim(),y[3]=""}}let J=y[2],Q="";if(this.options.pedantic){let B=this.rules.other.pedanticHrefTitle.exec(J);B&&(J=B[1],Q=B[3])}else Q=y[3]?y[3].slice(1,-1):"";return J=J.trim(),this.rules.other.startAngleBracket.test(J)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(Y)?J=J.slice(1):J=J.slice(1,-1)),B0(y,{href:J&&J.replace(this.rules.inline.anyPunctuation,"$1"),title:Q&&Q.replace(this.rules.inline.anyPunctuation,"$1")},y[0],this.lexer,this.rules)}}reflink($,y){let Y;if((Y=this.rules.inline.reflink.exec($))||(Y=this.rules.inline.nolink.exec($))){let J=(Y[2]||Y[1]).replace(this.rules.other.multipleSpaceGlobal," "),Q=y[J.toLowerCase()];if(!Q){let B=Y[0].charAt(0);return{type:"text",raw:B,text:B}}return B0(Y,Q,Y[0],this.lexer,this.rules)}}emStrong($,y,Y=""){let J=this.rules.inline.emStrongLDelim.exec($);if(!J||!J[1]&&!J[2]&&!J[3]&&!J[4]||J[4]&&Y.match(this.rules.other.unicodeAlphaNumeric))return;if(!(J[1]||J[3])||!Y||this.rules.inline.punctuation.exec(Y)){let Q=[...J[0]].length-1,B,W,K=Q,X=0,N=J[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(N.lastIndex=0,y=y.slice(-1*$.length+Q);(J=N.exec(y))!==null;){if(B=J[1]||J[2]||J[3]||J[4]||J[5]||J[6],!B)continue;if(W=[...B].length,J[3]||J[4]){K+=W;continue}else if((J[5]||J[6])&&Q%3&&!((Q+W)%3)){X+=W;continue}if(K-=W,K>0)continue;W=Math.min(W,W+K+X);let L=[...J[0]][0].length,q=$.slice(0,Q+J.index+L+W);if(Math.min(Q,W)%2){let Z=q.slice(1,-1);return{type:"em",raw:q,text:Z,tokens:this.lexer.inlineTokens(Z)}}let G=q.slice(2,-2);return{type:"strong",raw:q,text:G,tokens:this.lexer.inlineTokens(G)}}}}codespan($){let y=this.rules.inline.code.exec($);if(y){let Y=y[2].replace(this.rules.other.newLineCharGlobal," "),J=this.rules.other.nonSpaceChar.test(Y),Q=this.rules.other.startingSpaceChar.test(Y)&&this.rules.other.endingSpaceChar.test(Y);return J&&Q&&(Y=Y.substring(1,Y.length-1)),{type:"codespan",raw:y[0],text:Y}}}br($){let y=this.rules.inline.br.exec($);if(y)return{type:"br",raw:y[0]}}del($,y,Y=""){let J=this.rules.inline.delLDelim.exec($);if(!J)return;if(!J[1]||!Y||this.rules.inline.punctuation.exec(Y)){let Q=[...J[0]].length-1,B,W,K=Q,X=this.rules.inline.delRDelim;for(X.lastIndex=0,y=y.slice(-1*$.length+Q);(J=X.exec(y))!==null;){if(B=J[1]||J[2]||J[3]||J[4]||J[5]||J[6],!B||(W=[...B].length,W!==Q))continue;if(J[3]||J[4]){K+=W;continue}if(K-=W,K>0)continue;W=Math.min(W,W+K);let N=[...J[0]][0].length,L=$.slice(0,Q+J.index+N+W),q=L.slice(Q,-Q);return{type:"del",raw:L,text:q,tokens:this.lexer.inlineTokens(q)}}}}autolink($){let y=this.rules.inline.autolink.exec($);if(y){let Y,J;return y[2]==="@"?(Y=y[1],J="mailto:"+Y):(Y=y[1],J=Y),{type:"link",raw:y[0],text:Y,href:J,tokens:[{type:"text",raw:Y,text:Y}]}}}url($){let y;if(y=this.rules.inline.url.exec($)){let Y,J;if(y[2]==="@")Y=y[0],J="mailto:"+Y;else{let Q;do Q=y[0],y[0]=this.rules.inline._backpedal.exec(y[0])?.[0]??"";while(Q!==y[0]);Y=y[0],y[1]==="www."?J="http://"+y[0]:J=y[0]}return{type:"link",raw:y[0],text:Y,href:J,tokens:[{type:"text",raw:Y,text:Y}]}}}inlineText($){let y=this.rules.inline.text.exec($);if(y){let Y=this.lexer.state.inRawBlock;return{type:"text",raw:y[0],text:y[0],escaped:Y}}}},l=class ${tokens;options;state;inlineQueue;tokenizer;constructor(y){this.tokens=[],this.tokens.links=Object.create(null),this.options=y||W1,this.options.tokenizer=this.options.tokenizer||new v1,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let Y={other:V,block:k1.normal,inline:F1.normal};this.options.pedantic?(Y.block=k1.pedantic,Y.inline=F1.pedantic):this.options.gfm&&(Y.block=k1.gfm,this.options.breaks?Y.inline=F1.breaks:Y.inline=F1.gfm),this.tokenizer.rules=Y}static get rules(){return{block:k1,inline:F1}}static lex(y,Y){return new $(Y).lex(y)}static lexInline(y,Y){return new $(Y).inlineTokens(y)}lex(y){y=y.replace(V.carriageReturn,`
27
- `),this.blockTokens(y,this.tokens);for(let Y=0;Y<this.inlineQueue.length;Y++){let J=this.inlineQueue[Y];this.inlineTokens(J.src,J.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(y,Y=[],J=!1){for(this.tokenizer.lexer=this,this.options.pedantic&&(y=y.replace(V.tabCharGlobal," ").replace(V.spaceLine,""));y;){let Q;if(this.options.extensions?.block?.some((W)=>(Q=W.call({lexer:this},y,Y))?(y=y.substring(Q.raw.length),Y.push(Q),!0):!1))continue;if(Q=this.tokenizer.space(y)){y=y.substring(Q.raw.length);let W=Y.at(-1);Q.raw.length===1&&W!==void 0?W.raw+=`
28
- `:Y.push(Q);continue}if(Q=this.tokenizer.code(y)){y=y.substring(Q.raw.length);let W=Y.at(-1);W?.type==="paragraph"||W?.type==="text"?(W.raw+=(W.raw.endsWith(`
8
+ `),W="",Y="",X=[];for(;J.length>0;){let B=!1,L=[],K;for(K=0;K<J.length;K++)if(this.rules.other.blockquoteStart.test(J[K]))L.push(J[K]),B=!0;else if(!B)L.push(J[K]);else break;J=J.slice(K);let q=L.join(`
9
+ `),N=q.replace(this.rules.other.blockquoteSetextReplace,`
10
+ $1`).replace(this.rules.other.blockquoteSetextReplace2,"");W=W?`${W}
11
+ ${q}`:q,Y=Y?`${Y}
12
+ ${N}`:N;let G=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(N,X,!0),this.lexer.state.top=G,J.length===0)break;let P=X.at(-1);if(P?.type==="code")break;if(P?.type==="blockquote"){let F=P,H=F.raw+`
13
+ `+J.join(`
14
+ `),U=this.blockquote(H);X[X.length-1]=U,W=W.substring(0,W.length-F.raw.length)+U.raw,Y=Y.substring(0,Y.length-F.text.length)+U.text;break}else if(P?.type==="list"){let F=P,H=F.raw+`
15
+ `+J.join(`
16
+ `),U=this.list(H);X[X.length-1]=U,W=W.substring(0,W.length-P.raw.length)+U.raw,Y=Y.substring(0,Y.length-F.raw.length)+U.raw,J=H.substring(X.at(-1).raw.length).split(`
17
+ `);continue}}return{type:"blockquote",raw:W,tokens:X,text:Y}}}list(Q){let $=this.rules.block.list.exec(Q);if($){let J=$[1].trim(),W=J.length>1,Y={type:"list",raw:"",ordered:W,start:W?+J.slice(0,-1):"",loose:!1,items:[]};J=W?`\\d{1,9}\\${J.slice(-1)}`:`\\${J}`,this.options.pedantic&&(J=W?J:"[*+-]");let X=this.rules.other.listItemRegex(J),B=!1;for(;Q;){let K=!1,q="",N="";if(!($=X.exec(Q))||this.rules.block.hr.test(Q))break;q=$[0],Q=Q.substring(q.length);let G=M5($[2].split(`
18
+ `,1)[0],$[1].length),P=Q.split(`
19
+ `,1)[0],F=!G.trim(),H=0;if(this.options.pedantic?(H=2,N=G.trimStart()):F?H=$[1].length+1:(H=G.search(this.rules.other.nonSpaceChar),H=H>4?1:H,N=G.slice(H),H+=$[1].length),F&&this.rules.other.blankLine.test(P)&&(q+=P+`
20
+ `,Q=Q.substring(P.length+1),K=!0),!K){let U=this.rules.other.nextBulletRegex(H),Z=this.rules.other.hrRegex(H),_=this.rules.other.fencesBeginRegex(H),k=this.rules.other.headingBeginRegex(H),O=this.rules.other.htmlBeginRegex(H),m=this.rules.other.blockquoteBeginRegex(H);for(;Q;){let I=Q.split(`
21
+ `,1)[0],v;if(P=I,this.options.pedantic?(P=P.replace(this.rules.other.listReplaceNesting," "),v=P):v=P.replace(this.rules.other.tabCharGlobal," "),_.test(P)||k.test(P)||O.test(P)||m.test(P)||U.test(P)||Z.test(P))break;if(v.search(this.rules.other.nonSpaceChar)>=H||!P.trim())N+=`
22
+ `+v.slice(H);else{if(F||G.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||_.test(G)||k.test(G)||Z.test(G))break;N+=`
23
+ `+P}F=!P.trim(),q+=I+`
24
+ `,Q=Q.substring(I.length+1),G=v.slice(H)}}Y.loose||(B?Y.loose=!0:this.rules.other.doubleBlankLine.test(q)&&(B=!0)),Y.items.push({type:"list_item",raw:q,task:!!this.options.gfm&&this.rules.other.listIsTask.test(N),loose:!1,text:N,tokens:[]}),Y.raw+=q}let L=Y.items.at(-1);if(L)L.raw=L.raw.trimEnd(),L.text=L.text.trimEnd();else return;Y.raw=Y.raw.trimEnd();for(let K of Y.items){if(this.lexer.state.top=!1,K.tokens=this.lexer.blockTokens(K.text,[]),K.task){if(K.text=K.text.replace(this.rules.other.listReplaceTask,""),K.tokens[0]?.type==="text"||K.tokens[0]?.type==="paragraph"){K.tokens[0].raw=K.tokens[0].raw.replace(this.rules.other.listReplaceTask,""),K.tokens[0].text=K.tokens[0].text.replace(this.rules.other.listReplaceTask,"");for(let N=this.lexer.inlineQueue.length-1;N>=0;N--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[N].src)){this.lexer.inlineQueue[N].src=this.lexer.inlineQueue[N].src.replace(this.rules.other.listReplaceTask,"");break}}let q=this.rules.other.listTaskCheckbox.exec(K.raw);if(q){let N={type:"checkbox",raw:q[0]+" ",checked:q[0]!=="[ ]"};K.checked=N.checked,Y.loose?K.tokens[0]&&["paragraph","text"].includes(K.tokens[0].type)&&"tokens"in K.tokens[0]&&K.tokens[0].tokens?(K.tokens[0].raw=N.raw+K.tokens[0].raw,K.tokens[0].text=N.raw+K.tokens[0].text,K.tokens[0].tokens.unshift(N)):K.tokens.unshift({type:"paragraph",raw:N.raw,text:N.raw,tokens:[N]}):K.tokens.unshift(N)}}if(!Y.loose){let q=K.tokens.filter((G)=>G.type==="space"),N=q.length>0&&q.some((G)=>this.rules.other.anyLine.test(G.raw));Y.loose=N}}if(Y.loose)for(let K of Y.items){K.loose=!0;for(let q of K.tokens)q.type==="text"&&(q.type="paragraph")}return Y}}html(Q){let $=this.rules.block.html.exec(Q);if($)return{type:"html",block:!0,raw:$[0],pre:$[1]==="pre"||$[1]==="script"||$[1]==="style",text:$[0]}}def(Q){let $=this.rules.block.def.exec(Q);if($){let J=$[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),W=$[2]?$[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",Y=$[3]?$[3].substring(1,$[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):$[3];return{type:"def",tag:J,raw:$[0],href:W,title:Y}}}table(Q){let $=this.rules.block.table.exec(Q);if(!$||!this.rules.other.tableDelimiter.test($[2]))return;let J=W0($[1]),W=$[2].replace(this.rules.other.tableAlignChars,"").split("|"),Y=$[3]?.trim()?$[3].replace(this.rules.other.tableRowBlankLine,"").split(`
25
+ `):[],X={type:"table",raw:$[0],header:[],align:[],rows:[]};if(J.length===W.length){for(let B of W)this.rules.other.tableAlignRight.test(B)?X.align.push("right"):this.rules.other.tableAlignCenter.test(B)?X.align.push("center"):this.rules.other.tableAlignLeft.test(B)?X.align.push("left"):X.align.push(null);for(let B=0;B<J.length;B++)X.header.push({text:J[B],tokens:this.lexer.inline(J[B]),header:!0,align:X.align[B]});for(let B of Y)X.rows.push(W0(B,X.header.length).map((L,K)=>({text:L,tokens:this.lexer.inline(L),header:!1,align:X.align[K]})));return X}}lheading(Q){let $=this.rules.block.lheading.exec(Q);if($){let J=$[1].trim();return{type:"heading",raw:$[0],depth:$[2].charAt(0)==="="?1:2,text:J,tokens:this.lexer.inline(J)}}}paragraph(Q){let $=this.rules.block.paragraph.exec(Q);if($){let J=$[1].charAt($[1].length-1)===`
26
+ `?$[1].slice(0,-1):$[1];return{type:"paragraph",raw:$[0],text:J,tokens:this.lexer.inline(J)}}}text(Q){let $=this.rules.block.text.exec(Q);if($)return{type:"text",raw:$[0],text:$[0],tokens:this.lexer.inline($[0])}}escape(Q){let $=this.rules.inline.escape.exec(Q);if($)return{type:"escape",raw:$[0],text:$[1]}}tag(Q){let $=this.rules.inline.tag.exec(Q);if($)return!this.lexer.state.inLink&&this.rules.other.startATag.test($[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test($[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test($[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test($[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:$[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:$[0]}}link(Q){let $=this.rules.inline.link.exec(Q);if($){let J=$[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(J)){if(!this.rules.other.endAngleBracket.test(J))return;let X=y1(J.slice(0,-1),"\\");if((J.length-X.length)%2===0)return}else{let X=b5($[2],"()");if(X===-2)return;if(X>-1){let B=($[0].indexOf("!")===0?5:4)+$[1].length+X;$[2]=$[2].substring(0,X),$[0]=$[0].substring(0,B).trim(),$[3]=""}}let W=$[2],Y="";if(this.options.pedantic){let X=this.rules.other.pedanticHrefTitle.exec(W);X&&(W=X[1],Y=X[3])}else Y=$[3]?$[3].slice(1,-1):"";return W=W.trim(),this.rules.other.startAngleBracket.test(W)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(J)?W=W.slice(1):W=W.slice(1,-1)),X0($,{href:W&&W.replace(this.rules.inline.anyPunctuation,"$1"),title:Y&&Y.replace(this.rules.inline.anyPunctuation,"$1")},$[0],this.lexer,this.rules)}}reflink(Q,$){let J;if((J=this.rules.inline.reflink.exec(Q))||(J=this.rules.inline.nolink.exec(Q))){let W=(J[2]||J[1]).replace(this.rules.other.multipleSpaceGlobal," "),Y=$[W.toLowerCase()];if(!Y){let X=J[0].charAt(0);return{type:"text",raw:X,text:X}}return X0(J,Y,J[0],this.lexer,this.rules)}}emStrong(Q,$,J=""){let W=this.rules.inline.emStrongLDelim.exec(Q);if(!W||!W[1]&&!W[2]&&!W[3]&&!W[4]||W[4]&&J.match(this.rules.other.unicodeAlphaNumeric))return;if(!(W[1]||W[3])||!J||this.rules.inline.punctuation.exec(J)){let Y=[...W[0]].length-1,X,B,L=Y,K=0,q=W[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(q.lastIndex=0,$=$.slice(-1*Q.length+Y);(W=q.exec($))!==null;){if(X=W[1]||W[2]||W[3]||W[4]||W[5]||W[6],!X)continue;if(B=[...X].length,W[3]||W[4]){L+=B;continue}else if((W[5]||W[6])&&Y%3&&!((Y+B)%3)){K+=B;continue}if(L-=B,L>0)continue;B=Math.min(B,B+L+K);let N=[...W[0]][0].length,G=Q.slice(0,Y+W.index+N+B);if(Math.min(Y,B)%2){let F=G.slice(1,-1);return{type:"em",raw:G,text:F,tokens:this.lexer.inlineTokens(F)}}let P=G.slice(2,-2);return{type:"strong",raw:G,text:P,tokens:this.lexer.inlineTokens(P)}}}}codespan(Q){let $=this.rules.inline.code.exec(Q);if($){let J=$[2].replace(this.rules.other.newLineCharGlobal," "),W=this.rules.other.nonSpaceChar.test(J),Y=this.rules.other.startingSpaceChar.test(J)&&this.rules.other.endingSpaceChar.test(J);return W&&Y&&(J=J.substring(1,J.length-1)),{type:"codespan",raw:$[0],text:J}}}br(Q){let $=this.rules.inline.br.exec(Q);if($)return{type:"br",raw:$[0]}}del(Q,$,J=""){let W=this.rules.inline.delLDelim.exec(Q);if(!W)return;if(!W[1]||!J||this.rules.inline.punctuation.exec(J)){let Y=[...W[0]].length-1,X,B,L=Y,K=this.rules.inline.delRDelim;for(K.lastIndex=0,$=$.slice(-1*Q.length+Y);(W=K.exec($))!==null;){if(X=W[1]||W[2]||W[3]||W[4]||W[5]||W[6],!X||(B=[...X].length,B!==Y))continue;if(W[3]||W[4]){L+=B;continue}if(L-=B,L>0)continue;B=Math.min(B,B+L);let q=[...W[0]][0].length,N=Q.slice(0,Y+W.index+q+B),G=N.slice(Y,-Y);return{type:"del",raw:N,text:G,tokens:this.lexer.inlineTokens(G)}}}}autolink(Q){let $=this.rules.inline.autolink.exec(Q);if($){let J,W;return $[2]==="@"?(J=$[1],W="mailto:"+J):(J=$[1],W=J),{type:"link",raw:$[0],text:J,href:W,tokens:[{type:"text",raw:J,text:J}]}}}url(Q){let $;if($=this.rules.inline.url.exec(Q)){let J,W;if($[2]==="@")J=$[0],W="mailto:"+J;else{let Y;do Y=$[0],$[0]=this.rules.inline._backpedal.exec($[0])?.[0]??"";while(Y!==$[0]);J=$[0],$[1]==="www."?W="http://"+$[0]:W=$[0]}return{type:"link",raw:$[0],text:J,href:W,tokens:[{type:"text",raw:J,text:J}]}}}inlineText(Q){let $=this.rules.inline.text.exec(Q);if($){let J=this.lexer.state.inRawBlock;return{type:"text",raw:$[0],text:$[0],escaped:J}}}},l=class Q{tokens;options;state;inlineQueue;tokenizer;constructor($){this.tokens=[],this.tokens.links=Object.create(null),this.options=$||B1,this.options.tokenizer=this.options.tokenizer||new v1,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let J={other:V,block:M1.normal,inline:_1.normal};this.options.pedantic?(J.block=M1.pedantic,J.inline=_1.pedantic):this.options.gfm&&(J.block=M1.gfm,this.options.breaks?J.inline=_1.breaks:J.inline=_1.gfm),this.tokenizer.rules=J}static get rules(){return{block:M1,inline:_1}}static lex($,J){return new Q(J).lex($)}static lexInline($,J){return new Q(J).inlineTokens($)}lex($){$=$.replace(V.carriageReturn,`
27
+ `),this.blockTokens($,this.tokens);for(let J=0;J<this.inlineQueue.length;J++){let W=this.inlineQueue[J];this.inlineTokens(W.src,W.tokens)}return this.inlineQueue=[],this.tokens}blockTokens($,J=[],W=!1){for(this.tokenizer.lexer=this,this.options.pedantic&&($=$.replace(V.tabCharGlobal," ").replace(V.spaceLine,""));$;){let Y;if(this.options.extensions?.block?.some((B)=>(Y=B.call({lexer:this},$,J))?($=$.substring(Y.raw.length),J.push(Y),!0):!1))continue;if(Y=this.tokenizer.space($)){$=$.substring(Y.raw.length);let B=J.at(-1);Y.raw.length===1&&B!==void 0?B.raw+=`
28
+ `:J.push(Y);continue}if(Y=this.tokenizer.code($)){$=$.substring(Y.raw.length);let B=J.at(-1);B?.type==="paragraph"||B?.type==="text"?(B.raw+=(B.raw.endsWith(`
29
29
  `)?"":`
30
- `)+Q.raw,W.text+=`
31
- `+Q.text,this.inlineQueue.at(-1).src=W.text):Y.push(Q);continue}if(Q=this.tokenizer.fences(y)){y=y.substring(Q.raw.length),Y.push(Q);continue}if(Q=this.tokenizer.heading(y)){y=y.substring(Q.raw.length),Y.push(Q);continue}if(Q=this.tokenizer.hr(y)){y=y.substring(Q.raw.length),Y.push(Q);continue}if(Q=this.tokenizer.blockquote(y)){y=y.substring(Q.raw.length),Y.push(Q);continue}if(Q=this.tokenizer.list(y)){y=y.substring(Q.raw.length),Y.push(Q);continue}if(Q=this.tokenizer.html(y)){y=y.substring(Q.raw.length),Y.push(Q);continue}if(Q=this.tokenizer.def(y)){y=y.substring(Q.raw.length);let W=Y.at(-1);W?.type==="paragraph"||W?.type==="text"?(W.raw+=(W.raw.endsWith(`
30
+ `)+Y.raw,B.text+=`
31
+ `+Y.text,this.inlineQueue.at(-1).src=B.text):J.push(Y);continue}if(Y=this.tokenizer.fences($)){$=$.substring(Y.raw.length),J.push(Y);continue}if(Y=this.tokenizer.heading($)){$=$.substring(Y.raw.length),J.push(Y);continue}if(Y=this.tokenizer.hr($)){$=$.substring(Y.raw.length),J.push(Y);continue}if(Y=this.tokenizer.blockquote($)){$=$.substring(Y.raw.length),J.push(Y);continue}if(Y=this.tokenizer.list($)){$=$.substring(Y.raw.length),J.push(Y);continue}if(Y=this.tokenizer.html($)){$=$.substring(Y.raw.length),J.push(Y);continue}if(Y=this.tokenizer.def($)){$=$.substring(Y.raw.length);let B=J.at(-1);B?.type==="paragraph"||B?.type==="text"?(B.raw+=(B.raw.endsWith(`
32
32
  `)?"":`
33
- `)+Q.raw,W.text+=`
34
- `+Q.raw,this.inlineQueue.at(-1).src=W.text):this.tokens.links[Q.tag]||(this.tokens.links[Q.tag]={href:Q.href,title:Q.title},Y.push(Q));continue}if(Q=this.tokenizer.table(y)){y=y.substring(Q.raw.length),Y.push(Q);continue}if(Q=this.tokenizer.lheading(y)){y=y.substring(Q.raw.length),Y.push(Q);continue}let B=y;if(this.options.extensions?.startBlock){let W=1/0,K=y.slice(1),X;this.options.extensions.startBlock.forEach((N)=>{X=N.call({lexer:this},K),typeof X=="number"&&X>=0&&(W=Math.min(W,X))}),W<1/0&&W>=0&&(B=y.substring(0,W+1))}if(this.state.top&&(Q=this.tokenizer.paragraph(B))){let W=Y.at(-1);J&&W?.type==="paragraph"?(W.raw+=(W.raw.endsWith(`
33
+ `)+Y.raw,B.text+=`
34
+ `+Y.raw,this.inlineQueue.at(-1).src=B.text):this.tokens.links[Y.tag]||(this.tokens.links[Y.tag]={href:Y.href,title:Y.title},J.push(Y));continue}if(Y=this.tokenizer.table($)){$=$.substring(Y.raw.length),J.push(Y);continue}if(Y=this.tokenizer.lheading($)){$=$.substring(Y.raw.length),J.push(Y);continue}let X=$;if(this.options.extensions?.startBlock){let B=1/0,L=$.slice(1),K;this.options.extensions.startBlock.forEach((q)=>{K=q.call({lexer:this},L),typeof K=="number"&&K>=0&&(B=Math.min(B,K))}),B<1/0&&B>=0&&(X=$.substring(0,B+1))}if(this.state.top&&(Y=this.tokenizer.paragraph(X))){let B=J.at(-1);W&&B?.type==="paragraph"?(B.raw+=(B.raw.endsWith(`
35
35
  `)?"":`
36
- `)+Q.raw,W.text+=`
37
- `+Q.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=W.text):Y.push(Q),J=B.length!==y.length,y=y.substring(Q.raw.length);continue}if(Q=this.tokenizer.text(y)){y=y.substring(Q.raw.length);let W=Y.at(-1);W?.type==="text"?(W.raw+=(W.raw.endsWith(`
36
+ `)+Y.raw,B.text+=`
37
+ `+Y.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=B.text):J.push(Y),W=X.length!==$.length,$=$.substring(Y.raw.length);continue}if(Y=this.tokenizer.text($)){$=$.substring(Y.raw.length);let B=J.at(-1);B?.type==="text"?(B.raw+=(B.raw.endsWith(`
38
38
  `)?"":`
39
- `)+Q.raw,W.text+=`
40
- `+Q.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=W.text):Y.push(Q);continue}if(y){let W="Infinite loop on byte: "+y.charCodeAt(0);if(this.options.silent){console.error(W);break}else throw Error(W)}}return this.state.top=!0,Y}inline(y,Y=[]){return this.inlineQueue.push({src:y,tokens:Y}),Y}inlineTokens(y,Y=[]){this.tokenizer.lexer=this;let J=y,Q=null;if(this.tokens.links){let X=Object.keys(this.tokens.links);if(X.length>0)for(;(Q=this.tokenizer.rules.inline.reflinkSearch.exec(J))!==null;)X.includes(Q[0].slice(Q[0].lastIndexOf("[")+1,-1))&&(J=J.slice(0,Q.index)+"["+"a".repeat(Q[0].length-2)+"]"+J.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(Q=this.tokenizer.rules.inline.anyPunctuation.exec(J))!==null;)J=J.slice(0,Q.index)+"++"+J.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let B;for(;(Q=this.tokenizer.rules.inline.blockSkip.exec(J))!==null;)B=Q[2]?Q[2].length:0,J=J.slice(0,Q.index+B)+"["+"a".repeat(Q[0].length-B-2)+"]"+J.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);J=this.options.hooks?.emStrongMask?.call({lexer:this},J)??J;let W=!1,K="";for(;y;){W||(K=""),W=!1;let X;if(this.options.extensions?.inline?.some((L)=>(X=L.call({lexer:this},y,Y))?(y=y.substring(X.raw.length),Y.push(X),!0):!1))continue;if(X=this.tokenizer.escape(y)){y=y.substring(X.raw.length),Y.push(X);continue}if(X=this.tokenizer.tag(y)){y=y.substring(X.raw.length),Y.push(X);continue}if(X=this.tokenizer.link(y)){y=y.substring(X.raw.length),Y.push(X);continue}if(X=this.tokenizer.reflink(y,this.tokens.links)){y=y.substring(X.raw.length);let L=Y.at(-1);X.type==="text"&&L?.type==="text"?(L.raw+=X.raw,L.text+=X.text):Y.push(X);continue}if(X=this.tokenizer.emStrong(y,J,K)){y=y.substring(X.raw.length),Y.push(X);continue}if(X=this.tokenizer.codespan(y)){y=y.substring(X.raw.length),Y.push(X);continue}if(X=this.tokenizer.br(y)){y=y.substring(X.raw.length),Y.push(X);continue}if(X=this.tokenizer.del(y,J,K)){y=y.substring(X.raw.length),Y.push(X);continue}if(X=this.tokenizer.autolink(y)){y=y.substring(X.raw.length),Y.push(X);continue}if(!this.state.inLink&&(X=this.tokenizer.url(y))){y=y.substring(X.raw.length),Y.push(X);continue}let N=y;if(this.options.extensions?.startInline){let L=1/0,q=y.slice(1),G;this.options.extensions.startInline.forEach((Z)=>{G=Z.call({lexer:this},q),typeof G=="number"&&G>=0&&(L=Math.min(L,G))}),L<1/0&&L>=0&&(N=y.substring(0,L+1))}if(X=this.tokenizer.inlineText(N)){y=y.substring(X.raw.length),X.raw.slice(-1)!=="_"&&(K=X.raw.slice(-1)),W=!0;let L=Y.at(-1);L?.type==="text"?(L.raw+=X.raw,L.text+=X.text):Y.push(X);continue}if(y){let L="Infinite loop on byte: "+y.charCodeAt(0);if(this.options.silent){console.error(L);break}else throw Error(L)}}return Y}},O1=class{options;parser;constructor($){this.options=$||W1}space($){return""}code({text:$,lang:y,escaped:Y}){let J=(y||"").match(V.notSpaceStart)?.[0],Q=$.replace(V.endingNewline,"")+`
41
- `;return J?'<pre><code class="language-'+a(J)+'">'+(Y?Q:a(Q,!0))+`</code></pre>
42
- `:"<pre><code>"+(Y?Q:a(Q,!0))+`</code></pre>
43
- `}blockquote({tokens:$}){return`<blockquote>
44
- ${this.parser.parse($)}</blockquote>
45
- `}html({text:$}){return $}def($){return""}heading({tokens:$,depth:y}){return`<h${y}>${this.parser.parseInline($)}</h${y}>
46
- `}hr($){return`<hr>
47
- `}list($){let{ordered:y,start:Y}=$,J="";for(let W=0;W<$.items.length;W++){let K=$.items[W];J+=this.listitem(K)}let Q=y?"ol":"ul",B=y&&Y!==1?' start="'+Y+'"':"";return"<"+Q+B+`>
48
- `+J+"</"+Q+`>
49
- `}listitem($){return`<li>${this.parser.parse($.tokens)}</li>
50
- `}checkbox({checked:$}){return"<input "+($?'checked="" ':"")+'disabled="" type="checkbox"> '}paragraph({tokens:$}){return`<p>${this.parser.parseInline($)}</p>
51
- `}table($){let y="",Y="";for(let Q=0;Q<$.header.length;Q++)Y+=this.tablecell($.header[Q]);y+=this.tablerow({text:Y});let J="";for(let Q=0;Q<$.rows.length;Q++){let B=$.rows[Q];Y="";for(let W=0;W<B.length;W++)Y+=this.tablecell(B[W]);J+=this.tablerow({text:Y})}return J&&(J=`<tbody>${J}</tbody>`),`<table>
39
+ `)+Y.raw,B.text+=`
40
+ `+Y.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=B.text):J.push(Y);continue}if($){let B="Infinite loop on byte: "+$.charCodeAt(0);if(this.options.silent){console.error(B);break}else throw Error(B)}}return this.state.top=!0,J}inline($,J=[]){return this.inlineQueue.push({src:$,tokens:J}),J}inlineTokens($,J=[]){this.tokenizer.lexer=this;let W=$,Y=null;if(this.tokens.links){let K=Object.keys(this.tokens.links);if(K.length>0)for(;(Y=this.tokenizer.rules.inline.reflinkSearch.exec(W))!==null;)K.includes(Y[0].slice(Y[0].lastIndexOf("[")+1,-1))&&(W=W.slice(0,Y.index)+"["+"a".repeat(Y[0].length-2)+"]"+W.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(Y=this.tokenizer.rules.inline.anyPunctuation.exec(W))!==null;)W=W.slice(0,Y.index)+"++"+W.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let X;for(;(Y=this.tokenizer.rules.inline.blockSkip.exec(W))!==null;)X=Y[2]?Y[2].length:0,W=W.slice(0,Y.index+X)+"["+"a".repeat(Y[0].length-X-2)+"]"+W.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);W=this.options.hooks?.emStrongMask?.call({lexer:this},W)??W;let B=!1,L="";for(;$;){B||(L=""),B=!1;let K;if(this.options.extensions?.inline?.some((N)=>(K=N.call({lexer:this},$,J))?($=$.substring(K.raw.length),J.push(K),!0):!1))continue;if(K=this.tokenizer.escape($)){$=$.substring(K.raw.length),J.push(K);continue}if(K=this.tokenizer.tag($)){$=$.substring(K.raw.length),J.push(K);continue}if(K=this.tokenizer.link($)){$=$.substring(K.raw.length),J.push(K);continue}if(K=this.tokenizer.reflink($,this.tokens.links)){$=$.substring(K.raw.length);let N=J.at(-1);K.type==="text"&&N?.type==="text"?(N.raw+=K.raw,N.text+=K.text):J.push(K);continue}if(K=this.tokenizer.emStrong($,W,L)){$=$.substring(K.raw.length),J.push(K);continue}if(K=this.tokenizer.codespan($)){$=$.substring(K.raw.length),J.push(K);continue}if(K=this.tokenizer.br($)){$=$.substring(K.raw.length),J.push(K);continue}if(K=this.tokenizer.del($,W,L)){$=$.substring(K.raw.length),J.push(K);continue}if(K=this.tokenizer.autolink($)){$=$.substring(K.raw.length),J.push(K);continue}if(!this.state.inLink&&(K=this.tokenizer.url($))){$=$.substring(K.raw.length),J.push(K);continue}let q=$;if(this.options.extensions?.startInline){let N=1/0,G=$.slice(1),P;this.options.extensions.startInline.forEach((F)=>{P=F.call({lexer:this},G),typeof P=="number"&&P>=0&&(N=Math.min(N,P))}),N<1/0&&N>=0&&(q=$.substring(0,N+1))}if(K=this.tokenizer.inlineText(q)){$=$.substring(K.raw.length),K.raw.slice(-1)!=="_"&&(L=K.raw.slice(-1)),B=!0;let N=J.at(-1);N?.type==="text"?(N.raw+=K.raw,N.text+=K.text):J.push(K);continue}if($){let N="Infinite loop on byte: "+$.charCodeAt(0);if(this.options.silent){console.error(N);break}else throw Error(N)}}return J}},k1=class{options;parser;constructor(Q){this.options=Q||B1}space(Q){return""}code({text:Q,lang:$,escaped:J}){let W=($||"").match(V.notSpaceStart)?.[0],Y=Q.replace(V.endingNewline,"")+`
41
+ `;return W?'<pre><code class="language-'+a(W)+'">'+(J?Y:a(Y,!0))+`</code></pre>
42
+ `:"<pre><code>"+(J?Y:a(Y,!0))+`</code></pre>
43
+ `}blockquote({tokens:Q}){return`<blockquote>
44
+ ${this.parser.parse(Q)}</blockquote>
45
+ `}html({text:Q}){return Q}def(Q){return""}heading({tokens:Q,depth:$}){return`<h${$}>${this.parser.parseInline(Q)}</h${$}>
46
+ `}hr(Q){return`<hr>
47
+ `}list(Q){let{ordered:$,start:J}=Q,W="";for(let B=0;B<Q.items.length;B++){let L=Q.items[B];W+=this.listitem(L)}let Y=$?"ol":"ul",X=$&&J!==1?' start="'+J+'"':"";return"<"+Y+X+`>
48
+ `+W+"</"+Y+`>
49
+ `}listitem(Q){return`<li>${this.parser.parse(Q.tokens)}</li>
50
+ `}checkbox({checked:Q}){return"<input "+(Q?'checked="" ':"")+'disabled="" type="checkbox"> '}paragraph({tokens:Q}){return`<p>${this.parser.parseInline(Q)}</p>
51
+ `}table(Q){let $="",J="";for(let Y=0;Y<Q.header.length;Y++)J+=this.tablecell(Q.header[Y]);$+=this.tablerow({text:J});let W="";for(let Y=0;Y<Q.rows.length;Y++){let X=Q.rows[Y];J="";for(let B=0;B<X.length;B++)J+=this.tablecell(X[B]);W+=this.tablerow({text:J})}return W&&(W=`<tbody>${W}</tbody>`),`<table>
52
52
  <thead>
53
- `+y+`</thead>
54
- `+J+`</table>
55
- `}tablerow({text:$}){return`<tr>
56
- ${$}</tr>
57
- `}tablecell($){let y=this.parser.parseInline($.tokens),Y=$.header?"th":"td";return($.align?`<${Y} align="${$.align}">`:`<${Y}>`)+y+`</${Y}>
58
- `}strong({tokens:$}){return`<strong>${this.parser.parseInline($)}</strong>`}em({tokens:$}){return`<em>${this.parser.parseInline($)}</em>`}codespan({text:$}){return`<code>${a($,!0)}</code>`}br($){return"<br>"}del({tokens:$}){return`<del>${this.parser.parseInline($)}</del>`}link({href:$,title:y,tokens:Y}){let J=this.parser.parseInline(Y),Q=Y0($);if(Q===null)return J;$=Q;let B='<a href="'+$+'"';return y&&(B+=' title="'+a(y)+'"'),B+=">"+J+"</a>",B}image({href:$,title:y,text:Y,tokens:J}){J&&(Y=this.parser.parseInline(J,this.parser.textRenderer));let Q=Y0($);if(Q===null)return a(Y);$=Q;let B=`<img src="${$}" alt="${a(Y)}"`;return y&&(B+=` title="${a(y)}"`),B+=">",B}text($){return"tokens"in $&&$.tokens?this.parser.parseInline($.tokens):("escaped"in $)&&$.escaped?$.text:a($.text)}},o1=class{strong({text:$}){return $}em({text:$}){return $}codespan({text:$}){return $}del({text:$}){return $}html({text:$}){return $}text({text:$}){return $}link({text:$}){return""+$}image({text:$}){return""+$}br(){return""}checkbox({raw:$}){return $}},o=class ${options;renderer;textRenderer;constructor(y){this.options=y||W1,this.options.renderer=this.options.renderer||new O1,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new o1}static parse(y,Y){return new $(Y).parse(y)}static parseInline(y,Y){return new $(Y).parseInline(y)}parse(y){this.renderer.parser=this;let Y="";for(let J=0;J<y.length;J++){let Q=y[J];if(this.options.extensions?.renderers?.[Q.type]){let W=Q,K=this.options.extensions.renderers[W.type].call({parser:this},W);if(K!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(W.type)){Y+=K||"";continue}}let B=Q;switch(B.type){case"space":{Y+=this.renderer.space(B);break}case"hr":{Y+=this.renderer.hr(B);break}case"heading":{Y+=this.renderer.heading(B);break}case"code":{Y+=this.renderer.code(B);break}case"table":{Y+=this.renderer.table(B);break}case"blockquote":{Y+=this.renderer.blockquote(B);break}case"list":{Y+=this.renderer.list(B);break}case"checkbox":{Y+=this.renderer.checkbox(B);break}case"html":{Y+=this.renderer.html(B);break}case"def":{Y+=this.renderer.def(B);break}case"paragraph":{Y+=this.renderer.paragraph(B);break}case"text":{Y+=this.renderer.text(B);break}default:{let W='Token with "'+B.type+'" type was not found.';if(this.options.silent)return console.error(W),"";throw Error(W)}}}return Y}parseInline(y,Y=this.renderer){this.renderer.parser=this;let J="";for(let Q=0;Q<y.length;Q++){let B=y[Q];if(this.options.extensions?.renderers?.[B.type]){let K=this.options.extensions.renderers[B.type].call({parser:this},B);if(K!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(B.type)){J+=K||"";continue}}let W=B;switch(W.type){case"escape":{J+=Y.text(W);break}case"html":{J+=Y.html(W);break}case"link":{J+=Y.link(W);break}case"image":{J+=Y.image(W);break}case"checkbox":{J+=Y.checkbox(W);break}case"strong":{J+=Y.strong(W);break}case"em":{J+=Y.em(W);break}case"codespan":{J+=Y.codespan(W);break}case"br":{J+=Y.br(W);break}case"del":{J+=Y.del(W);break}case"text":{J+=Y.text(W);break}default:{let K='Token with "'+W.type+'" type was not found.';if(this.options.silent)return console.error(K),"";throw Error(K)}}}return J}},_1=class{options;block;constructor($){this.options=$||W1}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens","emStrongMask"]);static passThroughHooksRespectAsync=new Set(["preprocess","postprocess","processAllTokens"]);preprocess($){return $}postprocess($){return $}processAllTokens($){return $}emStrongMask($){return $}provideLexer($=this.block){return $?l.lex:l.lexInline}provideParser($=this.block){return $?o.parse:o.parseInline}},z5=class{defaults=p1();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=o;Renderer=O1;TextRenderer=o1;Lexer=l;Tokenizer=v1;Hooks=_1;constructor(...$){this.use(...$)}walkTokens($,y){let Y=[];for(let J of $)switch(Y=Y.concat(y.call(this,J)),J.type){case"table":{let Q=J;for(let B of Q.header)Y=Y.concat(this.walkTokens(B.tokens,y));for(let B of Q.rows)for(let W of B)Y=Y.concat(this.walkTokens(W.tokens,y));break}case"list":{let Q=J;Y=Y.concat(this.walkTokens(Q.items,y));break}default:{let Q=J;this.defaults.extensions?.childTokens?.[Q.type]?this.defaults.extensions.childTokens[Q.type].forEach((B)=>{let W=Q[B].flat(1/0);Y=Y.concat(this.walkTokens(W,y))}):Q.tokens&&(Y=Y.concat(this.walkTokens(Q.tokens,y)))}}return Y}use(...$){let y=this.defaults.extensions||{renderers:{},childTokens:{}};return $.forEach((Y)=>{let J={...Y};if(J.async=this.defaults.async||J.async||!1,Y.extensions&&(Y.extensions.forEach((Q)=>{if(!Q.name)throw Error("extension name required");if("renderer"in Q){let B=y.renderers[Q.name];B?y.renderers[Q.name]=function(...W){let K=Q.renderer.apply(this,W);return K===!1&&(K=B.apply(this,W)),K}:y.renderers[Q.name]=Q.renderer}if("tokenizer"in Q){if(!Q.level||Q.level!=="block"&&Q.level!=="inline")throw Error("extension level must be 'block' or 'inline'");let B=y[Q.level];B?B.unshift(Q.tokenizer):y[Q.level]=[Q.tokenizer],Q.start&&(Q.level==="block"?y.startBlock?y.startBlock.push(Q.start):y.startBlock=[Q.start]:Q.level==="inline"&&(y.startInline?y.startInline.push(Q.start):y.startInline=[Q.start]))}"childTokens"in Q&&Q.childTokens&&(y.childTokens[Q.name]=Q.childTokens)}),J.extensions=y),Y.renderer){let Q=this.defaults.renderer||new O1(this.defaults);for(let B in Y.renderer){if(!(B in Q))throw Error(`renderer '${B}' does not exist`);if(["options","parser"].includes(B))continue;let W=B,K=Y.renderer[W],X=Q[W];Q[W]=(...N)=>{let L=K.apply(Q,N);return L===!1&&(L=X.apply(Q,N)),L||""}}J.renderer=Q}if(Y.tokenizer){let Q=this.defaults.tokenizer||new v1(this.defaults);for(let B in Y.tokenizer){if(!(B in Q))throw Error(`tokenizer '${B}' does not exist`);if(["options","rules","lexer"].includes(B))continue;let W=B,K=Y.tokenizer[W],X=Q[W];Q[W]=(...N)=>{let L=K.apply(Q,N);return L===!1&&(L=X.apply(Q,N)),L}}J.tokenizer=Q}if(Y.hooks){let Q=this.defaults.hooks||new _1;for(let B in Y.hooks){if(!(B in Q))throw Error(`hook '${B}' does not exist`);if(["options","block"].includes(B))continue;let W=B,K=Y.hooks[W],X=Q[W];_1.passThroughHooks.has(B)?Q[W]=(N)=>{if(this.defaults.async&&_1.passThroughHooksRespectAsync.has(B))return(async()=>{let q=await K.call(Q,N);return X.call(Q,q)})();let L=K.call(Q,N);return X.call(Q,L)}:Q[W]=(...N)=>{if(this.defaults.async)return(async()=>{let q=await K.apply(Q,N);return q===!1&&(q=await X.apply(Q,N)),q})();let L=K.apply(Q,N);return L===!1&&(L=X.apply(Q,N)),L}}J.hooks=Q}if(Y.walkTokens){let Q=this.defaults.walkTokens,B=Y.walkTokens;J.walkTokens=function(W){let K=[];return K.push(B.call(this,W)),Q&&(K=K.concat(Q.call(this,W))),K}}this.defaults={...this.defaults,...J}}),this}setOptions($){return this.defaults={...this.defaults,...$},this}lexer($,y){return l.lex($,y??this.defaults)}parser($,y){return o.parse($,y??this.defaults)}parseMarkdown($){return(y,Y)=>{let J={...Y},Q={...this.defaults,...J},B=this.onError(!!Q.silent,!!Q.async);if(this.defaults.async===!0&&J.async===!1)return B(Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof y>"u"||y===null)return B(Error("marked(): input parameter is undefined or null"));if(typeof y!="string")return B(Error("marked(): input parameter is of type "+Object.prototype.toString.call(y)+", string expected"));if(Q.hooks&&(Q.hooks.options=Q,Q.hooks.block=$),Q.async)return(async()=>{let W=Q.hooks?await Q.hooks.preprocess(y):y,K=await(Q.hooks?await Q.hooks.provideLexer($):$?l.lex:l.lexInline)(W,Q),X=Q.hooks?await Q.hooks.processAllTokens(K):K;Q.walkTokens&&await Promise.all(this.walkTokens(X,Q.walkTokens));let N=await(Q.hooks?await Q.hooks.provideParser($):$?o.parse:o.parseInline)(X,Q);return Q.hooks?await Q.hooks.postprocess(N):N})().catch(B);try{Q.hooks&&(y=Q.hooks.preprocess(y));let W=(Q.hooks?Q.hooks.provideLexer($):$?l.lex:l.lexInline)(y,Q);Q.hooks&&(W=Q.hooks.processAllTokens(W)),Q.walkTokens&&this.walkTokens(W,Q.walkTokens);let K=(Q.hooks?Q.hooks.provideParser($):$?o.parse:o.parseInline)(W,Q);return Q.hooks&&(K=Q.hooks.postprocess(K)),K}catch(W){return B(W)}}}onError($,y){return(Y)=>{if(Y.message+=`
59
- Please report this to https://github.com/markedjs/marked.`,$){let J="<p>An error occurred:</p><pre>"+a(Y.message+"",!0)+"</pre>";return y?Promise.resolve(J):J}if(y)return Promise.reject(Y);throw Y}}},B1=new z5;function A($,y){return B1.parse($,y)}A.options=A.setOptions=function($){return B1.setOptions($),A.defaults=B1.defaults,W0(A.defaults),A};A.getDefaults=p1;A.defaults=W1;A.use=function(...$){return B1.use(...$),A.defaults=B1.defaults,W0(A.defaults),A};A.walkTokens=function($,y){return B1.walkTokens($,y)};A.parseInline=B1.parseInline;A.Parser=o;A.parser=o.parse;A.Renderer=O1;A.TextRenderer=o1;A.Lexer=l;A.lexer=l.lex;A.Tokenizer=v1;A.Hooks=_1;A.parse=A;var{options:Sy,setOptions:Iy,use:Cy,walkTokens:Ry,parseInline:my}=A;var hy=o.parse,gy=l.lex;import{jsxDEV as S5}from"react/jsx-dev-runtime";A.setOptions({gfm:!0,breaks:!1});function O5($,y){let Y=$.trim();if(!Y)return null;let J=A.parse(Y,{async:!1});return S5("div",{className:"prose-canvas","data-md":"markdown","data-md-source":Y,dangerouslySetInnerHTML:{__html:J}},y,!1,void 0,this)}function $1($){let y=v5.Children.toArray($);if(y.length===0)return null;let Y=[],J="",Q=0,B=()=>{if(J){let W=O5(J,`md-${Q++}`);if(W)Y.push(W);J=""}};for(let W of y)if(typeof W==="string"||typeof W==="number")J+=String(W);else B(),Y.push(W);return B(),Y}import{jsxDEV as X1}from"react/jsx-dev-runtime";function C5({title:$,children:y}){let[Y,J]=I5(!1);return X1("div",{className:"relative mb-8 p-4 group/section","data-md":"section","data-md-title":$,children:[X1("div",{className:"relative mb-2",children:[X1("button",{onClick:()=>J(!Y),className:`absolute -left-8 top-1/2 -translate-y-1/2 text-text-tertiary opacity-0 group-hover/section:opacity-50 hover:!opacity-100 transition-all duration-150 p-0.5 ${Y?"-rotate-90":""}`,children:X1("svg",{width:"14",height:"14",viewBox:"0 0 12 12",fill:"none",children:X1("path",{d:"M3 4.5L6 7.5L9 4.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},void 0,!1,void 0,this)},void 0,!1,void 0,this)},void 0,!1,void 0,this),X1("h2",{className:"font-heading text-section text-text-primary",style:{fontWeight:400},children:$},void 0,!1,void 0,this)]},void 0,!0,void 0,this),X1("div",{className:Y?"mt-6 hidden":"mt-6",children:$1(y)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}import{jsxDEV as s}from"react/jsx-dev-runtime";var R5={todo:"bg-border-hover",done:"bg-accent-green",blocked:"bg-accent-red","in-progress":"bg-accent-blue"},m5={todo:"Todo",done:"Done",blocked:"Blocked","in-progress":"In progress"},h5={info:"bg-accent-blue-muted text-accent-blue",success:"bg-accent-green-muted text-accent-green",warning:"bg-accent-amber-muted text-accent-amber",danger:"bg-accent-red-muted text-accent-red",neutral:"bg-border-subtle text-text-tertiary"};function T0({id:$,label:y,status:Y,badge:J,badgeVariant:Q="neutral",children:B}){return s("div",{className:"group/task relative -mx-4 px-4 py-3 rounded-md transition-colors duration-150 hover:bg-bg-input","data-task-id":$,"data-md":"item","data-md-label":y,...Y?{"data-md-status":Y}:{},...J?{"data-md-badge":J}:{},children:s("div",{className:"flex items-start gap-3",children:[Y&&s("span",{className:`w-2 h-2 rounded-full mt-[7px] flex-shrink-0 ${R5[Y]}`},void 0,!1,void 0,this),s("div",{className:"flex-1 min-w-0",children:[s("div",{className:"flex items-baseline gap-2",children:[s("span",{className:"font-body text-task-label font-semibold text-text-primary",children:y},void 0,!1,void 0,this),Y&&s("span",{className:"font-body text-tiny uppercase tracking-wider text-text-tertiary opacity-0 group-hover/task:opacity-100 transition-opacity duration-150",children:m5[Y]},void 0,!1,void 0,this),J&&s("span",{className:`font-body text-tiny font-medium px-1.5 py-px rounded-full ${h5[Q]}`,children:J},void 0,!1,void 0,this)]},void 0,!0,void 0,this),B&&s("div",{className:"text-body text-text-secondary mt-1 leading-relaxed",children:$1(B)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)}function g5($){return s(T0,{...$},void 0,!1,void 0,this)}import{useEffect as j5,useRef as V5}from"react";import{jsxDEV as C1}from"react/jsx-dev-runtime";function x5({language:$,children:y}){let Y=typeof y==="string"?y:String(y??""),J=V5(null);return j5(()=>{let Q=J.current,B=window.hljs;if(!Q||!B)return;Q.removeAttribute("data-highlighted"),Q.className=$?`language-${$}`:"",Q.textContent=Y,B.highlightElement(Q)},[Y,$]),C1("div",{className:"relative mt-3 group/code","data-md":"codeblock","data-md-language":$||"",children:[$&&C1("span",{className:"absolute top-2 right-3 text-tiny text-text-tertiary opacity-0 group-hover/code:opacity-60 transition-opacity duration-150 z-10 font-mono",children:$},void 0,!1,void 0,this),C1("pre",{className:"bg-bg-code rounded-md p-4 overflow-x-auto text-code font-mono leading-relaxed",children:C1("code",{ref:J,className:$?`language-${$}`:"",children:Y},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}import{jsxDEV as a1}from"react/jsx-dev-runtime";var D5={info:{bg:"bg-accent-blue-muted",icon:"i",iconColor:"text-accent-blue"},warning:{bg:"bg-accent-amber-muted",icon:"!",iconColor:"text-accent-amber"},danger:{bg:"bg-accent-red-muted",icon:"✕",iconColor:"text-accent-red"},tip:{bg:"bg-accent-green-muted",icon:"✓",iconColor:"text-accent-green"}};function p5({type:$="info",children:y}){let Y=D5[$];return a1("div",{className:`${Y.bg} relative rounded-lg px-5 py-4 mt-3 flex gap-3 items-start`,"data-md":"callout","data-md-type":$,children:[a1("span",{className:`${Y.iconColor} opacity-70 text-base leading-relaxed flex-shrink-0 mt-px`,children:Y.icon},void 0,!1,void 0,this),a1("div",{className:"text-body text-text-secondary leading-relaxed",children:$1(y)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}import{jsxDEV as E5}from"react/jsx-dev-runtime";function c5({children:$}){return E5("div",{className:"relative bg-bg-elevated rounded-lg px-5 py-4 mt-3 text-body text-text-secondary italic leading-relaxed","data-md":"note",children:$1($)},void 0,!1,void 0,this)}import{jsxDEV as Q1}from"react/jsx-dev-runtime";function d5({headers:$,rows:y}){return Q1("div",{className:"overflow-x-auto mt-3","data-md":"table",children:Q1("table",{className:"w-full text-body",children:[Q1("thead",{children:Q1("tr",{className:"border-b border-border-subtle",children:$.map((Y,J)=>Q1("th",{className:"text-left px-4 py-2.5 text-meta font-medium uppercase tracking-wider text-text-tertiary font-body",children:Y},J,!1,void 0,this))},void 0,!1,void 0,this)},void 0,!1,void 0,this),Q1("tbody",{children:y.map((Y,J)=>Q1("tr",{className:`relative border-b border-border-subtle last:border-b-0 transition-colors hover:bg-bg-surface/50 ${J%2===1?"bg-bg-surface/30":""}`,children:Y.map((Q,B)=>Q1("td",{className:"px-4 py-2.5 text-text-secondary font-body",children:Q},B,!1,void 0,this))},J,!1,void 0,this))},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)}import{jsxDEV as U1}from"react/jsx-dev-runtime";function u5({items:$}){return U1("ul",{className:"space-y-1 mt-3","data-md":"checklist",children:$.map((y,Y)=>U1("li",{"data-md":"checklist-item","data-md-label":y.label,className:"relative flex items-start gap-2.5 py-1",children:[U1("span",{className:`w-4 h-4 rounded-full flex items-center justify-center flex-shrink-0 mt-0.5 transition-all ${y.checked?"bg-accent-green":"border-[1.5px] border-border-hover"}`,children:y.checked&&U1("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:U1("path",{d:"M2.5 5L4.5 7L7.5 3",style:{stroke:"var(--color-text-inverse)"},strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},void 0,!1,void 0,this)},void 0,!1,void 0,this)},void 0,!1,void 0,this),U1("span",{className:`text-body font-body ${y.checked?"text-text-tertiary line-through decoration-border-hover":"text-text-secondary"}`,children:y.label},void 0,!1,void 0,this)]},Y,!0,void 0,this))},void 0,!1,void 0,this)}import{jsxDEV as l5}from"react/jsx-dev-runtime";var r5={high:"text-accent-red bg-accent-red-muted",medium:"text-accent-amber bg-accent-amber-muted",low:"text-text-tertiary bg-border-subtle"};function i5({level:$}){return l5("span",{className:`inline text-tiny font-medium font-body ml-2 px-1.5 py-0.5 rounded ${r5[$]}`,"data-md":"priority","data-md-level":$,children:$},void 0,!1,void 0,this)}import{useEffect as Z0,useState as R1,useContext as F0,useRef as o5}from"react";import{SessionContext as a5,ActiveViewCtx as s5}from"#canvas/runtime";import{jsxDEV as Y1}from"react/jsx-dev-runtime";var n5={ts:"typescript",tsx:"typescript",js:"javascript",jsx:"javascript",py:"python",rs:"rust",go:"go",rb:"ruby",java:"java",json:"json",yaml:"yaml",yml:"yaml",md:"markdown",css:"css",html:"html",sh:"bash",bash:"bash",toml:"toml",sql:"sql",xml:"xml",c:"c",cpp:"cpp",h:"c"};function t5({path:$,lines:y,__content:Y}){let J=F0(a5),{setActiveView:Q}=F0(s5),[B,W]=R1(Y??null),[K,X]=R1(()=>{let U=$.split(".").pop()||"";return n5[U]||"text"}),[N,L]=R1(null),[q,G]=R1(!Y),Z=o5(null);if(Z0(()=>{if(Y!==void 0)return;G(!0),L(null),fetch(`/api/file?session=${J}&path=${encodeURIComponent($)}`).then((U)=>U.json()).then((U)=>{if(U.error)L(U.error);else{let P=U.content;if(y)P=P.split(`
60
- `).slice(y[0]-1,y[1]).join(`
61
- `);W(P),X(U.language||"text")}}).catch(()=>L("Failed to fetch file")).finally(()=>G(!1))},[J,$,y?.[0],y?.[1],Y]),Z0(()=>{let U=Z.current,P=window.hljs;if(!U||!P||!B)return;U.removeAttribute("data-highlighted"),U.className=K?`language-${K}`:"",U.textContent=B,P.highlightElement(U)},[B,K]),q)return Y1("div",{className:"text-text-tertiary text-body mt-3 bg-bg-code rounded-md p-4",children:["Loading ",$,"..."]},void 0,!0,void 0,this);if(N)return Y1("div",{className:"text-accent-red text-body mt-3 bg-accent-red-muted rounded-md p-4",children:[$,": ",N]},void 0,!0,void 0,this);return Y1("div",{className:"mt-3 bg-bg-code rounded-md overflow-hidden","data-md":"filepreview","data-md-path":$,...y?{"data-md-lines":`${y[0]}-${y[1]}`}:{},children:[Y1("div",{className:"px-4 py-2 flex items-center justify-between",children:[Y1("button",{className:"font-mono text-meta text-text-tertiary hover:text-text-secondary hover:underline cursor-pointer text-left",onClick:()=>Q({type:"file",path:$}),title:`Open ${$}`,children:$},void 0,!1,void 0,this),y&&Y1("span",{className:"font-mono text-meta text-text-tertiary opacity-60",children:["L",y[0],"–",y[1]]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),Y1("pre",{className:"px-4 pb-3 overflow-x-auto text-code font-mono !bg-transparent",style:{background:"transparent"},children:Y1("code",{ref:Z,className:K?`language-${K}`:"",children:B},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}import{useEffect as e1,useRef as A1,useState as H1,useCallback as n}from"react";import Ly from"react-dom";import{useAnnotations as qy,useCanvasFile as Gy}from"#canvas/runtime";import{useEffect as Yy,useRef as h1,useState as P1,useCallback as m1,useMemo as A0,useContext as Jy}from"react";import{createPortal as By}from"react-dom";function b0($,y){let Q=y||document.body,B=$.getBoundingClientRect(),W=Q.getBoundingClientRect(),K=Q===document.body?window.scrollY:Q.scrollTop,X=B.bottom-W.top+K+8,N=Math.max(0,Math.min(B.left-W.left,W.width-280-12));return Q.style.position="relative",{style:{position:"absolute",top:`${X}px`,left:`${N}px`},parent:Q}}import{useState as s1,useRef as n1,useCallback as y1,useEffect as yy}from"react";function K1($,y){$.style.height="auto",$.style.height=(y?Math.max(y,$.scrollHeight):$.scrollHeight)+"px"}function e5(){if(typeof window<"u"&&window.__CANVAS_SHARE__?.shareId)return{isShared:!0,shareId:window.__CANVAS_SHARE__.shareId};return{isShared:!1,sessionId:typeof window<"u"?window.location.pathname.replace("/s/",""):""}}var N1=e5();function _0(){if(N1.isShared)return`/s/${N1.shareId}/upload`;return`/api/session/${N1.sessionId}/upload`}var f2=!N1.isShared,M2=!N1.isShared;import{jsxDEV as x}from"react/jsx-dev-runtime";function $y($){if($.startsWith("/s/")||$.startsWith("http://")||$.startsWith("https://"))return $;return`/api/uploads/${$.split("/").pop()}`}async function Qy($,y){let Y=new FormData;Y.append("image",y);try{let Q=await(await fetch(_0(),{method:"POST",body:Y})).json();if(N1.isShared)return Q.url||null;return Q.path||null}catch{return null}}function w0({note:$,onNoteChange:y,images:Y,onAddImage:J,onRemoveImage:Q,sessionId:B,placeholder:W="Add your note...",autoFocus:K=!1,autoResize:X=!1,readOnly:N=!1,onKeyDown:L,onTextareaClick:q,textareaRef:G,textareaClassName:Z,textareaStyle:U,minHeight:P,attachButton:H="always",openFilePickerRef:F}){let[O,z]=s1(!1),[m,S]=s1(!1),[v,D]=s1(!1),R=n1(0),d=n1(null),I=n1(null),h=y1(()=>I.current?.click(),[]);if(F)F.current=h;let c=y1((b)=>{if(d.current=b,G)G.current=b;if(b&&X)K1(b,P)},[G,X,P]);yy(()=>{if(K&&d.current){let b=d.current;if(b.focus(),b.value)b.setSelectionRange(b.value.length,b.value.length)}},[K]);let g=y1(async(b)=>{if(!b.type.startsWith("image/"))return;S(!0);try{let p=await Qy(B,b);if(p)J(p)}finally{S(!1)}},[B,J]),i=y1((b)=>{let p=b.clipboardData.items;for(let T of p)if(T.type.startsWith("image/")){b.preventDefault();let w=T.getAsFile();if(w)g(w);return}},[g]),C=y1((b)=>{if(b.preventDefault(),R.current++,R.current===1)z(!0)},[]),E=y1((b)=>{b.preventDefault()},[]),u=y1((b)=>{if(b.preventDefault(),R.current--,R.current===0)z(!1)},[]),t=y1((b)=>{b.preventDefault(),R.current=0,z(!1);for(let p of b.dataTransfer.files)if(p.type.startsWith("image/"))g(p)},[g]),e=y1((b)=>{if(y(b.target.value),X)b.target.style.height="auto",b.target.style.height=(P?Math.max(P,b.target.scrollHeight):b.target.scrollHeight)+"px"},[y,X,P]),V1="w-full bg-transparent text-[13px] font-body text-text-primary resize-none focus:outline-none leading-relaxed p-0 border-none",x1={width:"100%",background:"transparent",border:"none",color:"var(--color-text-primary)",fontFamily:"'Inter', sans-serif",fontSize:"13px",lineHeight:"1.5",outline:"none",...X?{resize:"none",overflow:"hidden"}:{resize:"vertical"}},L1=!N&&(H==="always"||H==="on-focus"&&v);return x("div",{style:{position:"relative"},onDragEnter:N?void 0:C,onDragOver:N?void 0:E,onDragLeave:N?void 0:u,onDrop:N?void 0:t,children:[x("textarea",{ref:c,value:$,onChange:N?void 0:e,onPaste:N?void 0:i,onKeyDown:L,onClick:q,onFocus:()=>D(!0),onBlur:()=>{setTimeout(()=>D(!1),150)},readOnly:N,placeholder:W,className:Z??V1,style:U??x1,rows:X?1:void 0},void 0,!1,void 0,this),!N&&x("input",{ref:I,type:"file",accept:"image/*",multiple:!0,style:{display:"none"},onChange:(b)=>{let p=b.target.files;if(p)for(let T of p)g(T);b.target.value=""}},void 0,!1,void 0,this),(Y.length>0||L1)&&x("div",{style:{display:"flex",gap:"6px",flexWrap:"wrap",marginTop:"6px",alignItems:"center"},children:[Y.map((b)=>x("div",{style:{position:"relative",width:"56px",height:"56px",borderRadius:"6px",overflow:"hidden",border:"1px solid var(--color-border-subtle)",flexShrink:0},children:[x("img",{src:$y(b),alt:"",style:{width:"100%",height:"100%",objectFit:"cover",display:"block"}},void 0,!1,void 0,this),!N&&x("button",{onClick:(p)=>{p.stopPropagation(),Q(b)},style:{position:"absolute",top:"2px",right:"2px",width:"16px",height:"16px",borderRadius:"50%",background:"rgba(0,0,0,0.6)",color:"white",border:"none",cursor:"pointer",fontSize:"11px",display:"flex",alignItems:"center",justifyContent:"center",lineHeight:1,padding:0},title:"Remove image",children:"×"},void 0,!1,void 0,this)]},b,!0,void 0,this)),L1&&x(t1,{onClick:h},void 0,!1,void 0,this)]},void 0,!0,void 0,this),m&&x("div",{style:{fontSize:"11px",color:"var(--color-text-tertiary)",fontFamily:"'Inter', sans-serif",marginTop:"4px"},children:"Uploading..."},void 0,!1,void 0,this),O&&x("div",{style:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",background:"var(--color-highlight-bg)",opacity:0.9,border:"2px dashed var(--color-highlight-border)",borderRadius:"6px",zIndex:10,pointerEvents:"none",fontSize:"12px",fontFamily:"'Inter', sans-serif",color:"var(--color-text-secondary)"},children:"Drop image"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function t1({onClick:$,size:y=16}){return x("button",{onClick:(Y)=>{Y.stopPropagation(),$()},style:{width:`${y*2}px`,height:`${y*2}px`,borderRadius:"6px",border:"none",background:"transparent",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--color-text-tertiary)",flexShrink:0,transition:"color 0.15s"},title:"Attach image",onMouseEnter:(Y)=>{Y.currentTarget.style.color="var(--color-text-secondary)"},onMouseLeave:(Y)=>{Y.currentTarget.style.color="var(--color-text-tertiary)"},children:x("svg",{width:y,height:y,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[x("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",ry:"2"},void 0,!1,void 0,this),x("circle",{cx:"8.5",cy:"8.5",r:"1.5"},void 0,!1,void 0,this),x("polyline",{points:"21 15 16 10 5 21"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)}import{SessionContext as Wy}from"#canvas/runtime";import{jsxDEV as j,Fragment as Ny}from"react/jsx-dev-runtime";function Xy({anchorEl:$,scrollContainer:y,onClose:Y,ignoreSelector:J,zIndex:Q="50",padding:B="12px",width:W="280px",children:K}){let X=h1(null),N=h1(Y);N.current=Y;let{style:L,parent:q}=b0($,y);return Yy(()=>{let G=setTimeout(()=>{let Z=(U)=>{if(X.current&&!X.current.contains(U.target)){if(J&&U.target.closest?.(J))return;N.current(),document.removeEventListener("mousedown",Z)}};return document.addEventListener("mousedown",Z),()=>document.removeEventListener("mousedown",Z)},0);return()=>clearTimeout(G)},[J]),By(j("div",{ref:X,style:{...L,zIndex:Q,width:W,background:"var(--color-bg-elevated)",border:"1px solid var(--color-border-hover)",borderRadius:"8px",boxShadow:"0 4px 12px var(--color-shadow)",padding:B,fontFamily:"'Inter', sans-serif"},children:K},void 0,!1,void 0,this),q)}var M0=[{label:"Clarity",items:["Unclear","Why?","Needs example","Missing context"]},{label:"Scope",items:["Overkill","Out of scope","Important","Risky"]},{label:"Action",items:["Simplify","Rethink","Expand on this","Skip this"]}],f0=M0.flatMap(($)=>$.items);function Ky({anchorEl:$,scrollContainer:y,snippet:Y,truncateAt:J=100,header:Q,initialNote:B="",initialImages:W,onConfirm:K,onCancel:X,onDelete:N}){let L=Jy(Wy),q=B!==""||!!N,[G,Z]=P1(B),[U,P]=P1(W||[]),[H,F]=P1(null),[O,z]=P1(q),[m,S]=P1(!1),v=h1(null),D=h1(null),R=m1(()=>{if(G.trim()||U.length>0)K(G.trim(),U);else if(q&&N)N();else X()},[G,U,K,X,q,N]),d=m1(()=>{if(q){if(!G.trim()&&U.length===0&&N){N(),X();return}K(G,U);return}X()},[G,U,q,K,X,N]),I=!q,h=G.trim().length>0?f0.filter((T)=>T.toLowerCase().startsWith(G.trim().toLowerCase())):f0,c=!I||O?[]:h.length===1&&h[0].toLowerCase()===G.trim().toLowerCase()?[]:h,g=new Set(c),i=M0.map((T)=>({label:T.label,items:T.items.filter((w)=>g.has(w))})).filter((T)=>T.items.length>0),C=i.map((T)=>T.items),E=C.flat(),u=A0(()=>{if(H===null)return 0;let T=0;for(let w=0;w<C.length;w++){if(H<T+C[w].length)return w;T+=C[w].length}return 0},[H,C]),t=A0(()=>{if(H===null)return 0;let T=0;for(let w=0;w<u;w++)T+=C[w].length;return H-T},[H,u,C]),e=(T,w)=>{let r=0;for(let q1=0;q1<T;q1++)r+=C[q1].length;return r+w},[V1,x1]=P1(G);if(G!==V1)x1(G),F(null),z(q);let L1=m1((T)=>{Z(T)},[]),b=Y.length>J?Y.slice(0,J)+"...":Y,p=m1((T)=>{if(E.length>0&&(T.key==="ArrowDown"||T.key==="ArrowUp"||T.key==="ArrowLeft"||T.key==="ArrowRight")){if(T.preventDefault(),H===null){F(0);return}if(T.key==="ArrowDown"){let w=Math.min(t+1,C[u].length-1);F(e(u,w))}else if(T.key==="ArrowUp"){let w=Math.max(t-1,0);F(e(u,w))}else if(T.key==="ArrowRight"){let w=Math.min(u+1,C.length-1),r=Math.min(t,C[w].length-1);F(e(w,r))}else if(T.key==="ArrowLeft"){let w=Math.max(u-1,0),r=Math.min(t,C[w].length-1);F(e(w,r))}return}if(H!==null&&E.length>0){if(T.key==="Tab"){T.preventDefault(),L1(E[H]);return}if(T.key==="Enter"&&!T.shiftKey){T.preventDefault(),K(E[H],U);return}}if(T.key==="Enter"&&!T.shiftKey){T.preventDefault(),R();return}if(T.key==="Escape")if(E.length>0&&!O)z(!0);else if(q)d();else X()},[E,H,t,u,C,e,L1,K,U,R,O,q,d,X]);return j(Xy,{anchorEl:$,scrollContainer:y,onClose:q?d:X,ignoreSelector:q?"[data-annotation-id]":void 0,zIndex:q?"60":"50",padding:q?"10px 12px":"12px",width:"420px",children:[!q&&(Q??j("div",{style:{fontSize:"11px",color:"var(--color-text-tertiary)",fontStyle:"italic",marginBottom:"8px",lineHeight:"1.4",display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden"},children:["“",b,"”"]},void 0,!0,void 0,this)),j(w0,{note:G,onNoteChange:Z,images:U,onAddImage:(T)=>P((w)=>[...w,T]),onRemoveImage:(T)=>P((w)=>w.filter((r)=>r!==T)),sessionId:L,autoFocus:!0,autoResize:q,textareaRef:v,onKeyDown:p,attachButton:"none",openFilePickerRef:D,textareaStyle:q?{width:"100%",background:"transparent",border:"none",color:"var(--color-text-primary)",fontFamily:"'Inter', sans-serif",fontSize:"13px",lineHeight:"1.5",resize:"none",outline:"none",overflow:"hidden"}:{width:"100%",minHeight:"60px",background:"transparent",border:"none",color:"var(--color-text-primary)",fontFamily:"'Inter', sans-serif",fontSize:"13px",lineHeight:"1.5",resize:"vertical",outline:"none"},placeholder:"Add your note..."},void 0,!1,void 0,this),j("div",{style:{display:"flex",alignItems:"center",gap:"8px",marginTop:q?"6px":"8px"},children:[j(t1,{onClick:()=>D.current?.(),size:14},void 0,!1,void 0,this),j("div",{style:{flex:1}},void 0,!1,void 0,this),q?j("button",{onClick:()=>{if(N)N();X()},onMouseEnter:()=>S(!0),onMouseLeave:()=>S(!1),style:{fontSize:"11px",color:m?"var(--color-accent-red)":"var(--color-text-tertiary)",background:"none",border:"none",cursor:"pointer",padding:"2px 0",fontFamily:"'Inter', sans-serif"},children:"Delete"},void 0,!1,void 0,this):j(Ny,{children:[j("button",{onClick:X,style:{fontSize:"11px",color:"var(--color-text-tertiary)",background:"none",border:"none",cursor:"pointer",padding:"4px 12px",fontFamily:"'Inter', sans-serif"},children:"Cancel"},void 0,!1,void 0,this),j("button",{onClick:R,style:{fontSize:"11px",fontWeight:500,padding:"4px 12px",borderRadius:"6px",background:"var(--color-highlight-bg)",color:"var(--color-text-primary)",border:"1px solid var(--color-highlight-border)",cursor:"pointer",fontFamily:"'Inter', sans-serif"},children:"Add"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),E.length>0&&j("div",{style:{marginTop:"6px",borderTop:"1px solid var(--color-border-subtle)",paddingTop:"8px",display:"flex",gap:"4px"},children:i.map((T)=>j("div",{style:{flex:1},children:[j("div",{style:{fontSize:"10px",fontWeight:600,color:"var(--color-text-disabled)",textTransform:"uppercase",letterSpacing:"0.05em",padding:"2px 6px",marginBottom:"2px",fontFamily:"'Inter', sans-serif"},children:T.label},void 0,!1,void 0,this),T.items.map((w)=>{let r=E.indexOf(w);return j("div",{onMouseDown:(q1)=>{q1.preventDefault(),q1.stopPropagation(),L1(w)},onMouseEnter:()=>F(r),style:{padding:"3px 6px",fontSize:"12px",borderRadius:"4px",fontFamily:"'Inter', sans-serif",color:r===H?"var(--color-text-primary)":"var(--color-text-secondary)",background:r===H?"var(--color-highlight-selected)":"transparent",cursor:"pointer"},children:[j("span",{style:{fontWeight:500},children:w.slice(0,G.trim().length)},void 0,!1,void 0,this),w.slice(G.trim().length)]},w,!0,void 0,this)})]},T.label,!0,void 0,this))},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function k0({anchorEl:$,scrollContainer:y,snippet:Y,truncateAt:J,header:Q,onAdd:B,onCancel:W}){return j(Ky,{anchorEl:$,scrollContainer:y,snippet:Y,truncateAt:J,header:Q,onConfirm:(K,X)=>B(K,X),onCancel:W},void 0,!1,void 0,this)}import{jsxDEV as _,Fragment as S0}from"react/jsx-dev-runtime";var T1=0.2,g1=0.25,j1=4;function v0({zoom:$,onZoomIn:y,onZoomOut:Y,onZoomReset:J,onFullscreen:Q}){return _("div",{className:"flex items-center gap-0.5 bg-bg-surface border border-border-subtle rounded-md px-1 py-0.5",style:{fontSize:"12px"},children:[_("button",{className:"flex items-center justify-center w-7 h-7 rounded hover:bg-bg-elevated text-text-secondary hover:text-text-primary transition-colors",onClick:Y,title:"Zoom out",disabled:$<=g1,children:_("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:_("line",{x1:"5",y1:"12",x2:"19",y2:"12"},void 0,!1,void 0,this)},void 0,!1,void 0,this)},void 0,!1,void 0,this),_("button",{className:"px-1.5 h-7 rounded hover:bg-bg-elevated text-text-tertiary hover:text-text-primary transition-colors tabular-nums",onClick:J,title:"Reset zoom",children:[Math.round($*100),"%"]},void 0,!0,void 0,this),_("button",{className:"flex items-center justify-center w-7 h-7 rounded hover:bg-bg-elevated text-text-secondary hover:text-text-primary transition-colors",onClick:y,title:"Zoom in",disabled:$>=j1,children:_("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[_("line",{x1:"12",y1:"5",x2:"12",y2:"19"},void 0,!1,void 0,this),_("line",{x1:"5",y1:"12",x2:"19",y2:"12"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),Q&&_(S0,{children:[_("div",{className:"w-px h-4 bg-border-subtle mx-0.5"},void 0,!1,void 0,this),_("button",{className:"flex items-center justify-center w-7 h-7 rounded hover:bg-bg-elevated text-text-secondary hover:text-text-primary transition-colors",onClick:Q,title:"Fullscreen",children:_("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[_("polyline",{points:"15 3 21 3 21 9"},void 0,!1,void 0,this),_("polyline",{points:"9 21 3 21 3 15"},void 0,!1,void 0,this),_("line",{x1:"21",y1:"3",x2:"14",y2:"10"},void 0,!1,void 0,this),_("line",{x1:"3",y1:"21",x2:"10",y2:"14"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}function O0($=1){let[y,Y]=H1($),J=n(()=>Y((W)=>Math.min(j1,+(W+T1).toFixed(2))),[]),Q=n(()=>Y((W)=>Math.max(g1,+(W-T1).toFixed(2))),[]),B=n(()=>Y(1),[]);return{zoom:y,zoomIn:J,zoomOut:Q,zoomReset:B,setZoom:Y}}function Uy({svgHtml:$,source:y,onClose:Y}){let J=A1(null),{zoom:Q,zoomIn:B,zoomOut:W,zoomReset:K,setZoom:X}=O0(1),[N,L]=H1({x:0,y:0}),q=A1(null);e1(()=>{let F=(O)=>{if(O.key==="Escape")Y()};return window.addEventListener("keydown",F),()=>window.removeEventListener("keydown",F)},[Y]);let G=n((F)=>{F.preventDefault();let O=F.deltaY>0?-T1:T1;X((z)=>Math.max(g1,Math.min(j1,+(z+O).toFixed(2))))},[X]),Z=n((F)=>{if(F.button!==0)return;q.current={startX:F.clientX,startY:F.clientY,panX:N.x,panY:N.y},F.preventDefault()},[N]),U=n((F)=>{if(!q.current)return;L({x:q.current.panX+(F.clientX-q.current.startX),y:q.current.panY+(F.clientY-q.current.startY)})},[]),P=n(()=>{q.current=null},[]),H=n(()=>{K(),L({x:0,y:0})},[K]);return Ly.createPortal(_("div",{style:{position:"fixed",inset:0,zIndex:9999,background:"var(--color-bg-base)",display:"flex",flexDirection:"column"},onMouseMove:U,onMouseUp:P,onMouseLeave:P,children:[_("div",{className:"flex items-center justify-between px-4 py-2 border-b border-border-subtle",style:{flexShrink:0,background:"var(--color-bg-surface)"},children:[_("span",{className:"text-body text-text-secondary",style:{fontSize:"13px"},children:"Mermaid Diagram"},void 0,!1,void 0,this),_("div",{className:"flex items-center gap-2",children:[_(v0,{zoom:Q,onZoomIn:B,onZoomOut:W,onZoomReset:H},void 0,!1,void 0,this),_("button",{className:"flex items-center justify-center w-8 h-8 rounded hover:bg-bg-elevated text-text-secondary hover:text-text-primary transition-colors",onClick:Y,title:"Close (Esc)",children:_("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[_("line",{x1:"18",y1:"6",x2:"6",y2:"18"},void 0,!1,void 0,this),_("line",{x1:"6",y1:"6",x2:"18",y2:"18"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),_("div",{style:{flex:1,overflow:"hidden",cursor:q.current?"grabbing":"grab"},onWheel:G,onMouseDown:Z,children:_("div",{ref:J,style:{width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center",transform:`translate(${N.x}px, ${N.y}px) scale(${Q})`,transformOrigin:"center center",transition:q.current?"none":"transform 0.1s ease-out"},dangerouslySetInnerHTML:{__html:$}},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this),document.body)}function Py({children:$}){let y=A1(null),[Y,J]=H1(null),[Q,B]=H1(!1),[W,K]=H1(""),X=typeof $==="string"?$:String($??""),{annotations:N,addAnnotationWithId:L,activeAnnotationId:q,setActiveAnnotationId:G}=qy(),Z=Gy(),[U,P]=H1(null),{zoom:H,zoomIn:F,zoomOut:O,zoomReset:z,setZoom:m}=O0(1),S=A1(N);S.current=N;let v=n((I,h,c)=>{let g=`[Diagram ${c.toLowerCase()}] ${h}`,i=S.current.find((C)=>C.snippet===g);if(i)G(i.id);else P({anchorEl:I,snippet:h,prefix:c})},[G]),D=A1(v);D.current=v,e1(()=>{let I=!1,h=async()=>{try{let g=window.mermaid;if(!g){J("Mermaid library not loaded");return}let i=document.documentElement.dataset.theme==="light"?"default":"dark";g.initialize({startOnLoad:!1,theme:i});let C=`mermaid-${Math.random().toString(36).slice(2)}`,{svg:E}=await g.render(C,X.trim());if(!I&&y.current)y.current.innerHTML=E,K(E),Hy(y.current,(u,t,e)=>D.current(u,t,e)),z0(y.current,S.current);J(null)}catch(g){if(!I)J(g.message||"Invalid diagram")}};h();let c=new MutationObserver((g)=>{for(let i of g)if(i.attributeName==="data-theme")h()});return c.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>{I=!0,c.disconnect()}},[X]),e1(()=>{if(y.current)z0(y.current,N,q)},[N,q]);let R=n((I)=>{if(!I.ctrlKey&&!I.metaKey)return;I.preventDefault();let h=I.deltaY>0?-T1:T1;m((c)=>Math.max(g1,Math.min(j1,+(c+h).toFixed(2))))},[m]);if(Y)return _("div",{className:"bg-accent-red-muted rounded-md p-4 mt-3 text-body text-accent-red",children:["Mermaid error: ",Y,_("pre",{className:"mt-2 text-tiny text-text-tertiary whitespace-pre-wrap",children:X},void 0,!1,void 0,this)]},void 0,!0,void 0,this);let d=y.current?.closest("#plan-scroll-container");return _(S0,{children:[_("div",{className:"mt-3 mermaid-container","data-md":"mermaid","data-md-source":X.trim(),children:[_("div",{className:"flex justify-end mb-1",children:_(v0,{zoom:H,onZoomIn:F,onZoomOut:O,onZoomReset:z,onFullscreen:()=>B(!0)},void 0,!1,void 0,this)},void 0,!1,void 0,this),_("div",{style:{overflow:"auto",maxHeight:"70vh"},onWheel:R,children:_("div",{ref:y,className:"flex justify-center",style:{transform:`scale(${H})`,transformOrigin:"top center",transition:"transform 0.1s ease-out",minHeight:H<1?void 0:void 0}},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this),U&&_(k0,{anchorEl:U.anchorEl,scrollContainer:d,snippet:U.snippet,header:_("div",{style:{fontSize:"12px",color:"var(--color-text-tertiary)",marginBottom:"8px",lineHeight:"1.4",display:"flex",alignItems:"center",gap:"6px"},children:[_("span",{style:{width:"8px",height:"8px",borderRadius:"50%",background:"var(--color-accent-amber)",flexShrink:0}},void 0,!1,void 0,this),U.snippet]},void 0,!0,void 0,this),onAdd:(I,h)=>{let c=`ann-${Date.now()}-${Math.random().toString(36).slice(2,6)}`;L(c,`[Diagram ${U.prefix.toLowerCase()}] ${U.snippet}`,I,void 0,void 0,h,Z||void 0),P(null)},onCancel:()=>P(null)},void 0,!1,void 0,this),Q&&W&&_(Uy,{svgHtml:W,source:X,onClose:()=>B(!1)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function Hy($,y){let Y=(J,Q,B)=>{J.style.cursor="pointer",J.addEventListener("mouseenter",()=>{J.style.filter="brightness(1.2)"}),J.addEventListener("mouseleave",()=>{J.style.filter=""}),J.addEventListener("click",(W)=>{W.stopPropagation(),W.preventDefault(),y(J,Q(),B)})};for(let J of $.querySelectorAll(".node"))Y(J,()=>{return(J.querySelector(".nodeLabel")||J.querySelector("foreignObject span")||J.querySelector("text"))?.textContent?.trim()||"Node"},"Node");for(let J of $.querySelectorAll(".edgePath")){let Q=J,B=Q.querySelector("path");if(B){B.style.strokeWidth=Math.max(parseFloat(B.style.strokeWidth||"1"),8)+"px",B.style.strokeOpacity="0";let K=B.cloneNode(!0);K.style.strokeWidth="",K.style.strokeOpacity="",Q.insertBefore(K,B)}let W=Q.id||"";Y(Q,()=>{let K=$.querySelectorAll(".edgeLabel");for(let X of K)if(X.id&&W&&X.id.replace("label","").includes(W.replace("L-","").replace("edge",""))){let N=X.textContent?.trim();if(N)return N}return"Connection"},"Edge")}for(let J of $.querySelectorAll(".edgeLabel")){let Q=J.textContent?.trim();if(!Q)continue;Y(J,()=>Q,"Edge")}for(let J of $.querySelectorAll(".actor")){let Q=J.closest("g")?.querySelector("text")||J.parentElement?.querySelector("text");if(!Q)continue;let B=J.closest("g");if(!B||B.hasAttribute("data-clickable"))continue;B.setAttribute("data-clickable","true"),Y(B,()=>Q.textContent?.trim()||"Participant","Node")}for(let J of $.querySelectorAll(".messageText")){let Q=J.textContent?.trim();if(!Q)continue;Y(J,()=>Q,"Edge")}for(let J of $.querySelectorAll(".entityBox")){let Q=J.closest("g");if(!Q||Q.hasAttribute("data-clickable"))continue;let B=Q.querySelector(".entityLabel");if(!B)continue;Q.setAttribute("data-clickable","true"),Y(Q,()=>B.textContent?.trim()||"Entity","Node")}for(let J of $.querySelectorAll(".relationshipLabel")){let Q=J.textContent?.trim();if(!Q)continue;let W=J.closest("g")||J;if(W.hasAttribute("data-clickable"))continue;W.setAttribute("data-clickable","true"),Y(W,()=>Q,"Edge")}for(let J of $.querySelectorAll(".classGroup")){let Q=J;if(Q.hasAttribute("data-clickable"))continue;let B=Q.querySelector(".classTitle, .classTitleText, text");if(!B)continue;Q.setAttribute("data-clickable","true"),Y(Q,()=>B.textContent?.trim()||"Class","Node")}for(let J of $.querySelectorAll(".statediagram-state")){let Q=J;if(Q.hasAttribute("data-clickable"))continue;let B=Q.querySelector(".state-title, text");if(!B)continue;Q.setAttribute("data-clickable","true"),Y(Q,()=>B.textContent?.trim()||"State","Node")}for(let J of $.querySelectorAll(".mindmap-node")){let Q=J;if(Q.hasAttribute("data-clickable"))continue;let B=Q.querySelector(".mindmap-node-label, text");if(!B)continue;Q.setAttribute("data-clickable","true"),Y(Q,()=>B.textContent?.trim()||"Node","Node")}}function z0($,y,Y){let J=new Map;for(let B of y){let W=B.snippet.match(/^\[Diagram (?:node|edge)\] (.+)$/);if(W)J.set(W[1],B.id)}for(let B of $.querySelectorAll("[data-annotated]"))B.style.outline="",B.style.outlineOffset="",B.style.borderRadius="",B.removeAttribute("data-annotated");if(J.size===0)return;for(let B of $.querySelectorAll(".node")){let K=(B.querySelector(".nodeLabel")||B.querySelector("foreignObject span")||B.querySelector("text"))?.textContent?.trim();if(!K||!J.has(K))continue;let X=J.get(K),N=B;N.setAttribute("data-annotated",X);let L=X===Y;N.style.outline=L?"2px solid var(--color-highlight-border)":"2px solid var(--color-highlight-annotation)",N.style.outlineOffset="2px",N.style.borderRadius="4px"}for(let B of $.querySelectorAll(".edgeLabel")){let W=B.textContent?.trim();if(!W||!J.has(W))continue;let K=J.get(W),X=B;X.setAttribute("data-annotated",K);let N=K===Y;X.style.outline=N?"2px solid var(--color-highlight-border)":"2px solid var(--color-highlight-annotation)",X.style.outlineOffset="2px",X.style.borderRadius="4px"}for(let B of $.querySelectorAll(".actor")){let W=B.closest("g");if(!W)continue;let X=W.querySelector("text")?.textContent?.trim();if(!X||!J.has(X))continue;if(W.hasAttribute("data-annotated"))continue;let N=J.get(X);W.setAttribute("data-annotated",N);let L=N===Y,q=W.querySelector("rect");if(q)q.style.outline=L?"2px solid var(--color-highlight-border)":"2px solid var(--color-highlight-annotation)",q.style.outlineOffset="2px",q.style.borderRadius="4px"}for(let B of $.querySelectorAll(".messageText")){let W=B.textContent?.trim();if(!W||!J.has(W))continue;let K=J.get(W),X=B;X.setAttribute("data-annotated",K);let N=K===Y;X.style.outline=N?"2px solid var(--color-highlight-border)":"2px solid var(--color-highlight-annotation)",X.style.outlineOffset="2px",X.style.borderRadius="4px"}let Q=(B,W,K)=>{for(let X of $.querySelectorAll(B)){let N=K(X);if(!N||N.hasAttribute("data-annotated"))continue;let q=N.querySelector(W)?.textContent?.trim();if(!q||!J.has(q))continue;let G=J.get(q);N.setAttribute("data-annotated",G);let Z=G===Y,U=N.querySelector("rect, circle, ellipse, polygon")||N;U.style.outline=Z?"2px solid var(--color-highlight-border)":"2px solid var(--color-highlight-annotation)",U.style.outlineOffset="2px",U.style.borderRadius="4px"}};Q(".entityBox",".entityLabel",(B)=>B.closest("g"));for(let B of $.querySelectorAll(".relationshipLabel")){let K=B.closest("g")||B;if(K.hasAttribute("data-annotated"))continue;let X=B.textContent?.trim();if(!X||!J.has(X))continue;let N=J.get(X);K.setAttribute("data-annotated",N);let L=N===Y;K.style.outline=L?"2px solid var(--color-highlight-border)":"2px solid var(--color-highlight-annotation)",K.style.outlineOffset="2px",K.style.borderRadius="4px"}Q(".classGroup",".classTitle, .classTitleText, text",(B)=>B),Q(".statediagram-state",".state-title, text",(B)=>B),Q(".mindmap-node",".mindmap-node-label, text",(B)=>B)}import{jsxDEV as f1}from"react/jsx-dev-runtime";function Ty({before:$,after:y,language:Y}){let J=$.split(`
62
- `),Q=y.split(`
63
- `),B=Zy(J,Q),W=[],K=0,X=0,N=0;while(K<J.length||X<Q.length)if(N<B.length&&K<J.length&&X<Q.length&&J[K]===B[N]&&Q[X]===B[N])W.push({type:"same",line:J[K]}),K++,X++,N++;else if(K<J.length&&(N>=B.length||J[K]!==B[N]))W.push({type:"removed",line:J[K]}),K++;else if(X<Q.length)W.push({type:"added",line:Q[X]}),X++;return f1("div",{className:"mt-3 bg-bg-code rounded-md overflow-hidden group/diff","data-md":"diff","data-md-language":Y||"",children:[Y&&f1("div",{className:"px-4 py-2 text-meta font-mono text-text-tertiary opacity-0 group-hover/diff:opacity-60 transition-opacity",children:["diff (",Y,")"]},void 0,!0,void 0,this),f1("pre",{className:"px-4 pb-3 overflow-x-auto text-code font-mono",children:W.map((L,q)=>f1("div",{className:L.type==="removed"?"bg-accent-red-muted text-accent-red":L.type==="added"?"bg-accent-green-muted text-accent-green":"text-text-tertiary",children:[f1("span",{className:"select-none w-6 inline-block text-center opacity-60",children:L.type==="removed"?"-":L.type==="added"?"+":" "},void 0,!1,void 0,this),L.line]},q,!0,void 0,this))},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function Zy($,y){let Y=$.length,J=y.length,Q=Array.from({length:Y+1},()=>Array(J+1).fill(0));for(let X=1;X<=Y;X++)for(let N=1;N<=J;N++)Q[X][N]=$[X-1]===y[N-1]?Q[X-1][N-1]+1:Math.max(Q[X-1][N],Q[X][N-1]);let B=[],W=Y,K=J;while(W>0&&K>0)if($[W-1]===y[K-1])B.unshift($[W-1]),W--,K--;else if(Q[W-1][K]>Q[W][K-1])W--;else K--;return B}import{useEffect as C0,useMemo as R0,useRef as m0,useState as h0}from"react";import{useAnnotations as g0}from"#canvas/runtime";import{jsxDEV as I0}from"react/jsx-dev-runtime";function Z1({note:$,onChange:y}){return I0("div",{className:"mt-1.5",children:I0("textarea",{value:$,onChange:(Y)=>y(Y.target.value),className:"w-full bg-transparent text-[12px] font-body text-text-primary resize-none focus:outline-none border-none placeholder:text-text-disabled transition-colors min-h-[20px] p-0 leading-relaxed",placeholder:"Add a note...",rows:1,onInput:(Y)=>K1(Y.target),ref:(Y)=>{if(Y)K1(Y)}},void 0,!1,void 0,this)},void 0,!1,void 0,this)}import{jsxDEV as k}from"react/jsx-dev-runtime";function j0($){return $.map((y)=>typeof y==="string"?{value:y,label:y}:{value:y.value,label:y.label??y.value})}function Fy({id:$,label:y,options:Y,required:J}){let{responses:Q,setResponse:B}=g0(),W=R0(()=>j0(Y),[Y]),K=Q.get($),X=K?.value,N=K?.note||"",[L,q]=h0(!1),G=m0(null);if(!Q.has($))B($,{id:$,type:"radio",label:y,value:null,options:W.map((P)=>P.value),required:J});let Z=(P)=>{B($,{...K,value:P})};C0(()=>{let P=G.current;if(!P)return;let H=(F)=>{let z=F.target.closest("[data-md-label]")?.getAttribute("data-md-label"),m=W.find((S)=>S.label===z);if(m)Z(m.value)};return P.addEventListener("kb-select",H),()=>P.removeEventListener("kb-select",H)},[W,Z]);let U=K?.required&&!X;return k("div",{ref:G,"data-md":"choice","data-md-label":y,className:"-mx-4 px-4 py-3 my-1 rounded-lg transition-colors duration-150 hover:bg-bg-input",children:[k("div",{className:"flex items-baseline gap-2 mb-2",children:[k("span",{className:"text-[13px] font-body font-medium text-text-primary",children:y},void 0,!1,void 0,this),J&&k("span",{className:"text-[10px] text-accent-red font-body",children:"*"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),k("div",{className:"space-y-1",children:W.map(({value:P,label:H})=>k("label",{"data-md":"choice-option","data-md-label":H,onClick:()=>Z(P),className:`flex items-center gap-2.5 px-3 py-2 rounded-lg cursor-pointer transition-all duration-150 ${X===P?"bg-highlight-selected":"hover:bg-bg-elevated"}`,children:[k("span",{className:`w-4 h-4 rounded-full border-[1.5px] flex items-center justify-center flex-shrink-0 transition-all ${X===P?"border-accent-amber bg-accent-amber":"border-border-strong"}`,children:X===P&&k("span",{className:"w-1.5 h-1.5 rounded-full bg-text-inverse"},void 0,!1,void 0,this)},void 0,!1,void 0,this),k("span",{className:"text-[13px] font-body text-text-secondary",children:H},void 0,!1,void 0,this)]},P,!0,void 0,this))},void 0,!1,void 0,this),k(Z1,{show:L,note:N,onToggle:()=>q(!L),onChange:(P)=>B($,{...K,note:P})},void 0,!1,void 0,this),U&&k("p",{className:"text-[11px] text-accent-red font-body mt-1",children:"Please select an option."},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function by({id:$,label:y,options:Y,required:J}){let{responses:Q,setResponse:B}=g0(),W=R0(()=>j0(Y),[Y]),K=Q.get($),X=K?.value||[],N=K?.note||"",[L,q]=h0(!1),G=m0(null);if(!Q.has($))B($,{id:$,type:"checkbox",label:y,value:[],options:W.map((P)=>P.value),required:J});let Z=(P)=>{let H=X.includes(P)?X.filter((F)=>F!==P):[...X,P];B($,{...K,value:H})};C0(()=>{let P=G.current;if(!P)return;let H=(F)=>{let z=F.target.closest("[data-md-label]")?.getAttribute("data-md-label"),m=W.find((S)=>S.label===z);if(m)Z(m.value)};return P.addEventListener("kb-select",H),()=>P.removeEventListener("kb-select",H)},[W,Z]);let U=K?.required&&X.length===0;return k("div",{ref:G,"data-md":"multichoice","data-md-label":y,className:"-mx-4 px-4 py-3 my-1 rounded-lg transition-colors duration-150 hover:bg-bg-input",children:[k("div",{className:"flex items-baseline gap-2 mb-2",children:[k("span",{className:"text-[13px] font-body font-medium text-text-primary",children:y},void 0,!1,void 0,this),J&&k("span",{className:"text-[10px] text-accent-red font-body",children:"*"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),k("div",{className:"space-y-1",children:W.map(({value:P,label:H})=>{let F=X.includes(P);return k("label",{"data-md":"multichoice-option","data-md-label":H,onClick:()=>Z(P),className:`flex items-center gap-2.5 px-3 py-2 rounded-lg cursor-pointer transition-all duration-150 ${F?"bg-highlight-selected":"hover:bg-bg-elevated"}`,children:[k("span",{className:`w-4 h-4 rounded flex items-center justify-center flex-shrink-0 transition-all ${F?"bg-accent-amber":"border-[1.5px] border-border-strong"}`,children:F&&k("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:k("path",{d:"M2.5 5L4.5 7L7.5 3",style:{stroke:"var(--color-text-inverse)"},strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},void 0,!1,void 0,this)},void 0,!1,void 0,this)},void 0,!1,void 0,this),k("span",{className:"text-[13px] font-body text-text-secondary",children:H},void 0,!1,void 0,this)]},P,!0,void 0,this)})},void 0,!1,void 0,this),k(Z1,{show:L,note:N,onToggle:()=>q(!L),onChange:(P)=>B($,{...K,note:P})},void 0,!1,void 0,this),U&&k("p",{className:"text-[11px] text-accent-red font-body mt-1",children:"Please select at least one option."},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}import{useRef as _y,useState as V0}from"react";import{useAnnotations as x0}from"#canvas/runtime";import{jsxDEV as M}from"react/jsx-dev-runtime";function wy({id:$,label:y,placeholder:Y,multiline:J,required:Q}){let{responses:B,setResponse:W}=x0(),K=B.get($),X=K?.value??"",N=K?.note||"",[L,q]=V0(!1),G=_y(null);if(!B.has($))W($,{id:$,type:"text",label:y,value:"",required:Q});let Z=(H)=>{W($,{...K,value:H})},U=(H)=>K1(H,J?60:32),P=K?.required&&!X.trim();return M("div",{"data-md":"userinput","data-md-label":y,className:"-mx-4 px-4 py-3 my-1 rounded-lg transition-colors duration-150 hover:bg-bg-input",children:[M("div",{className:"flex items-baseline gap-2 mb-2",children:[M("span",{className:"text-[13px] font-body font-medium text-text-primary",children:y},void 0,!1,void 0,this),Q&&M("span",{className:"text-[10px] text-accent-red font-body",children:"*"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),M("textarea",{ref:G,value:X,onChange:(H)=>{Z(H.target.value),U(H.target)},placeholder:Y||"Type your response...",rows:J?3:1,className:"w-full bg-bg-input text-[13px] font-body text-text-primary rounded-lg px-3 py-2 resize-none focus:outline-none border border-border-subtle focus:border-border-hover placeholder:text-text-tertiary transition-colors",onInput:(H)=>U(H.target),onFocus:(H)=>U(H.target)},void 0,!1,void 0,this),M(Z1,{show:L,note:N,onToggle:()=>q(!L),onChange:(H)=>W($,{...K,note:H})},void 0,!1,void 0,this),P&&M("p",{className:"text-[11px] text-accent-red font-body mt-1",children:"This field is required."},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function Ay({id:$,label:y,min:Y=1,max:J=10,step:Q=1,required:B,minLabel:W,maxLabel:K}){let{responses:X,setResponse:N}=x0(),L=X.get($),q=L?.value,G=L?.note||"",[Z,U]=V0(!1);if(!X.has($))N($,{id:$,type:"range",label:y,value:null,required:B});let P=(v)=>{N($,{...L,value:v})},H=q!==null&&q!==void 0,F=H?q:Math.round((Y+J)/2),O=(F-Y)/(J-Y)*100,z=Math.round((J-Y)/Q),m=z<=20,S=L?.required&&!H;return M("div",{"data-md":"rangeinput","data-md-label":y,className:"-mx-4 px-4 py-3 my-1 rounded-lg transition-colors duration-150 hover:bg-bg-input",children:[M("div",{className:"flex items-baseline justify-between mb-1",children:[M("div",{className:"flex items-baseline gap-2",children:[M("span",{className:"text-[13px] font-body font-medium text-text-primary",children:y},void 0,!1,void 0,this),B&&M("span",{className:"text-[10px] text-accent-red font-body",children:"*"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),M("span",{className:"flex items-center gap-1.5",children:[M("span",{className:`text-[13px] font-mono ${H?"text-accent-amber":"text-text-disabled"}`,children:H?q:"—"},void 0,!1,void 0,this),H&&M("button",{onClick:()=>N($,{...L,value:null}),className:"text-text-disabled hover:text-text-tertiary transition-colors text-[10px] leading-none",title:"Clear",children:"✕"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),M("div",{className:"relative h-6 flex items-center",children:[M("div",{className:"absolute left-0 right-0 h-1.5 rounded-full bg-border-medium",children:H&&M("div",{className:"h-full rounded-full bg-accent-amber transition-all duration-150",style:{width:`${O}%`}},void 0,!1,void 0,this)},void 0,!1,void 0,this),m&&Array.from({length:z+1},(v,D)=>{let R=Y+D*Q,d=(R-Y)/(J-Y)*100,I=H&&R<=q;return M("div",{className:`absolute rounded-full pointer-events-none transition-all duration-150 ${H&&R===q?"w-2.5 h-2.5 bg-accent-amber":I?"w-1.5 h-1.5 bg-accent-amber":"w-1.5 h-1.5 bg-border-hover"}`,style:{left:`${d}%`,transform:"translate(-50%, -50%)",top:"50%"}},D,!1,void 0,this)}),H?M("div",{className:"absolute h-5 w-5 rounded-full bg-accent-amber shadow-md pointer-events-none transition-all duration-150",style:{left:`calc(${O}% - 10px)`,borderWidth:"2px",borderStyle:"solid",borderColor:"var(--color-bg-base)"}},void 0,!1,void 0,this):M("div",{className:"absolute h-4 w-4 rounded-full bg-border-hover pointer-events-none opacity-50",style:{left:"calc(50% - 8px)",borderWidth:"2px",borderStyle:"solid",borderColor:"var(--color-bg-base)"}},void 0,!1,void 0,this),M("input",{type:"range",min:Y,max:J,step:Q,value:F,onChange:(v)=>P(Number(v.target.value)),className:"absolute inset-0 w-full opacity-0 cursor-pointer"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),m&&z<=10?M("div",{className:"flex justify-between -mt-0.5 px-0",children:Array.from({length:z+1},(v,D)=>{let R=Y+D*Q;return M("span",{className:`text-[10px] font-mono transition-colors ${H&&R===q?"text-accent-amber font-medium":"text-text-disabled"}`,style:{minWidth:"1ch",textAlign:"center"},children:R},D,!1,void 0,this)})},void 0,!1,void 0,this):M("div",{className:"flex justify-between -mt-0.5",children:[M("span",{className:"text-[11px] text-text-tertiary font-body",children:W||Y},void 0,!1,void 0,this),M("span",{className:"text-[11px] text-text-tertiary font-body",children:K||J},void 0,!1,void 0,this)]},void 0,!0,void 0,this),M(Z1,{show:Z,note:G,onToggle:()=>U(!Z),onChange:(v)=>N($,{...L,note:v})},void 0,!1,void 0,this),S&&M("p",{className:"text-[11px] text-accent-red font-body mt-1",children:"Please select a value."},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}import{useContext as fy,useState as My}from"react";import{SessionContext as ky}from"#canvas/runtime";import{jsxDEV as M1}from"react/jsx-dev-runtime";function zy({src:$,alt:y,caption:Y,width:J,height:Q}){let B=fy(ky),[W,K]=My(!1),X=`/api/image?session=${encodeURIComponent(B)}&path=${encodeURIComponent($)}`;if(W)return M1("div",{className:"mt-3 text-accent-red text-body bg-accent-red-muted rounded-md p-4",children:[$,": Failed to load image"]},void 0,!0,void 0,this);return M1("figure",{className:"mt-3 relative","data-md":"image","data-md-src":$,children:[M1("div",{className:"rounded-md overflow-hidden border border-border-subtle bg-bg-code inline-block",children:M1("img",{src:X,alt:y||$,onError:()=>K(!0),className:"block max-w-full h-auto",...J?{width:J}:{},...Q?{height:Q}:{}},void 0,!1,void 0,this)},void 0,!1,void 0,this),Y&&M1("figcaption",{className:"mt-1.5 text-meta text-text-tertiary font-body",children:Y},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}import{useMemo as vy}from"react";import{jsxDEV as D0}from"react/jsx-dev-runtime";A.setOptions({gfm:!0,breaks:!1});function Oy({children:$,file:y,__content:Y}){let J=Y??(typeof $==="string"?$:String($??"")),Q=vy(()=>{if(!J)return"";return A.parse(J,{async:!1})},[J]);if(!J)return D0("div",{className:"text-text-tertiary text-tiny mt-3",children:y?`Could not load: ${y}`:"No markdown content"},void 0,!1,void 0,this);return D0("div",{className:"mt-3 prose-canvas","data-md":"markdown",...y?{"data-md-file":y}:{},"data-md-source":J,dangerouslySetInnerHTML:{__html:Q}},void 0,!1,void 0,this)}import{useFeedback as D4}from"#canvas/runtime";export{D4 as useFeedback,wy as UserInput,g5 as Task,d5 as Table,C5 as Section,Ay as RangeInput,i5 as Priority,c5 as Note,by as MultiChoice,Py as Mermaid,Oy as Markdown,T0 as Item,zy as ImageView,t5 as FilePreview,Ty as Diff,x5 as CodeBlock,Fy as Choice,u5 as Checklist,p5 as Callout};
53
+ `+$+`</thead>
54
+ `+W+`</table>
55
+ `}tablerow({text:Q}){return`<tr>
56
+ ${Q}</tr>
57
+ `}tablecell(Q){let $=this.parser.parseInline(Q.tokens),J=Q.header?"th":"td";return(Q.align?`<${J} align="${Q.align}">`:`<${J}>`)+$+`</${J}>
58
+ `}strong({tokens:Q}){return`<strong>${this.parser.parseInline(Q)}</strong>`}em({tokens:Q}){return`<em>${this.parser.parseInline(Q)}</em>`}codespan({text:Q}){return`<code>${a(Q,!0)}</code>`}br(Q){return"<br>"}del({tokens:Q}){return`<del>${this.parser.parseInline(Q)}</del>`}link({href:Q,title:$,tokens:J}){let W=this.parser.parseInline(J),Y=J0(Q);if(Y===null)return W;Q=Y;let X='<a href="'+Q+'"';return $&&(X+=' title="'+a($)+'"'),X+=">"+W+"</a>",X}image({href:Q,title:$,text:J,tokens:W}){W&&(J=this.parser.parseInline(W,this.parser.textRenderer));let Y=J0(Q);if(Y===null)return a(J);Q=Y;let X=`<img src="${Q}" alt="${a(J)}"`;return $&&(X+=` title="${a($)}"`),X+=">",X}text(Q){return"tokens"in Q&&Q.tokens?this.parser.parseInline(Q.tokens):("escaped"in Q)&&Q.escaped?Q.text:a(Q.text)}},o1=class{strong({text:Q}){return Q}em({text:Q}){return Q}codespan({text:Q}){return Q}del({text:Q}){return Q}html({text:Q}){return Q}text({text:Q}){return Q}link({text:Q}){return""+Q}image({text:Q}){return""+Q}br(){return""}checkbox({raw:Q}){return Q}},o=class Q{options;renderer;textRenderer;constructor($){this.options=$||B1,this.options.renderer=this.options.renderer||new k1,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new o1}static parse($,J){return new Q(J).parse($)}static parseInline($,J){return new Q(J).parseInline($)}parse($){this.renderer.parser=this;let J="";for(let W=0;W<$.length;W++){let Y=$[W];if(this.options.extensions?.renderers?.[Y.type]){let B=Y,L=this.options.extensions.renderers[B.type].call({parser:this},B);if(L!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(B.type)){J+=L||"";continue}}let X=Y;switch(X.type){case"space":{J+=this.renderer.space(X);break}case"hr":{J+=this.renderer.hr(X);break}case"heading":{J+=this.renderer.heading(X);break}case"code":{J+=this.renderer.code(X);break}case"table":{J+=this.renderer.table(X);break}case"blockquote":{J+=this.renderer.blockquote(X);break}case"list":{J+=this.renderer.list(X);break}case"checkbox":{J+=this.renderer.checkbox(X);break}case"html":{J+=this.renderer.html(X);break}case"def":{J+=this.renderer.def(X);break}case"paragraph":{J+=this.renderer.paragraph(X);break}case"text":{J+=this.renderer.text(X);break}default:{let B='Token with "'+X.type+'" type was not found.';if(this.options.silent)return console.error(B),"";throw Error(B)}}}return J}parseInline($,J=this.renderer){this.renderer.parser=this;let W="";for(let Y=0;Y<$.length;Y++){let X=$[Y];if(this.options.extensions?.renderers?.[X.type]){let L=this.options.extensions.renderers[X.type].call({parser:this},X);if(L!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(X.type)){W+=L||"";continue}}let B=X;switch(B.type){case"escape":{W+=J.text(B);break}case"html":{W+=J.html(B);break}case"link":{W+=J.link(B);break}case"image":{W+=J.image(B);break}case"checkbox":{W+=J.checkbox(B);break}case"strong":{W+=J.strong(B);break}case"em":{W+=J.em(B);break}case"codespan":{W+=J.codespan(B);break}case"br":{W+=J.br(B);break}case"del":{W+=J.del(B);break}case"text":{W+=J.text(B);break}default:{let L='Token with "'+B.type+'" type was not found.';if(this.options.silent)return console.error(L),"";throw Error(L)}}}return W}},w1=class{options;block;constructor(Q){this.options=Q||B1}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens","emStrongMask"]);static passThroughHooksRespectAsync=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(Q){return Q}postprocess(Q){return Q}processAllTokens(Q){return Q}emStrongMask(Q){return Q}provideLexer(Q=this.block){return Q?l.lex:l.lexInline}provideParser(Q=this.block){return Q?o.parse:o.parseInline}},v5=class{defaults=p1();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=o;Renderer=k1;TextRenderer=o1;Lexer=l;Tokenizer=v1;Hooks=w1;constructor(...Q){this.use(...Q)}walkTokens(Q,$){let J=[];for(let W of Q)switch(J=J.concat($.call(this,W)),W.type){case"table":{let Y=W;for(let X of Y.header)J=J.concat(this.walkTokens(X.tokens,$));for(let X of Y.rows)for(let B of X)J=J.concat(this.walkTokens(B.tokens,$));break}case"list":{let Y=W;J=J.concat(this.walkTokens(Y.items,$));break}default:{let Y=W;this.defaults.extensions?.childTokens?.[Y.type]?this.defaults.extensions.childTokens[Y.type].forEach((X)=>{let B=Y[X].flat(1/0);J=J.concat(this.walkTokens(B,$))}):Y.tokens&&(J=J.concat(this.walkTokens(Y.tokens,$)))}}return J}use(...Q){let $=this.defaults.extensions||{renderers:{},childTokens:{}};return Q.forEach((J)=>{let W={...J};if(W.async=this.defaults.async||W.async||!1,J.extensions&&(J.extensions.forEach((Y)=>{if(!Y.name)throw Error("extension name required");if("renderer"in Y){let X=$.renderers[Y.name];X?$.renderers[Y.name]=function(...B){let L=Y.renderer.apply(this,B);return L===!1&&(L=X.apply(this,B)),L}:$.renderers[Y.name]=Y.renderer}if("tokenizer"in Y){if(!Y.level||Y.level!=="block"&&Y.level!=="inline")throw Error("extension level must be 'block' or 'inline'");let X=$[Y.level];X?X.unshift(Y.tokenizer):$[Y.level]=[Y.tokenizer],Y.start&&(Y.level==="block"?$.startBlock?$.startBlock.push(Y.start):$.startBlock=[Y.start]:Y.level==="inline"&&($.startInline?$.startInline.push(Y.start):$.startInline=[Y.start]))}"childTokens"in Y&&Y.childTokens&&($.childTokens[Y.name]=Y.childTokens)}),W.extensions=$),J.renderer){let Y=this.defaults.renderer||new k1(this.defaults);for(let X in J.renderer){if(!(X in Y))throw Error(`renderer '${X}' does not exist`);if(["options","parser"].includes(X))continue;let B=X,L=J.renderer[B],K=Y[B];Y[B]=(...q)=>{let N=L.apply(Y,q);return N===!1&&(N=K.apply(Y,q)),N||""}}W.renderer=Y}if(J.tokenizer){let Y=this.defaults.tokenizer||new v1(this.defaults);for(let X in J.tokenizer){if(!(X in Y))throw Error(`tokenizer '${X}' does not exist`);if(["options","rules","lexer"].includes(X))continue;let B=X,L=J.tokenizer[B],K=Y[B];Y[B]=(...q)=>{let N=L.apply(Y,q);return N===!1&&(N=K.apply(Y,q)),N}}W.tokenizer=Y}if(J.hooks){let Y=this.defaults.hooks||new w1;for(let X in J.hooks){if(!(X in Y))throw Error(`hook '${X}' does not exist`);if(["options","block"].includes(X))continue;let B=X,L=J.hooks[B],K=Y[B];w1.passThroughHooks.has(X)?Y[B]=(q)=>{if(this.defaults.async&&w1.passThroughHooksRespectAsync.has(X))return(async()=>{let G=await L.call(Y,q);return K.call(Y,G)})();let N=L.call(Y,q);return K.call(Y,N)}:Y[B]=(...q)=>{if(this.defaults.async)return(async()=>{let G=await L.apply(Y,q);return G===!1&&(G=await K.apply(Y,q)),G})();let N=L.apply(Y,q);return N===!1&&(N=K.apply(Y,q)),N}}W.hooks=Y}if(J.walkTokens){let Y=this.defaults.walkTokens,X=J.walkTokens;W.walkTokens=function(B){let L=[];return L.push(X.call(this,B)),Y&&(L=L.concat(Y.call(this,B))),L}}this.defaults={...this.defaults,...W}}),this}setOptions(Q){return this.defaults={...this.defaults,...Q},this}lexer(Q,$){return l.lex(Q,$??this.defaults)}parser(Q,$){return o.parse(Q,$??this.defaults)}parseMarkdown(Q){return($,J)=>{let W={...J},Y={...this.defaults,...W},X=this.onError(!!Y.silent,!!Y.async);if(this.defaults.async===!0&&W.async===!1)return X(Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof $>"u"||$===null)return X(Error("marked(): input parameter is undefined or null"));if(typeof $!="string")return X(Error("marked(): input parameter is of type "+Object.prototype.toString.call($)+", string expected"));if(Y.hooks&&(Y.hooks.options=Y,Y.hooks.block=Q),Y.async)return(async()=>{let B=Y.hooks?await Y.hooks.preprocess($):$,L=await(Y.hooks?await Y.hooks.provideLexer(Q):Q?l.lex:l.lexInline)(B,Y),K=Y.hooks?await Y.hooks.processAllTokens(L):L;Y.walkTokens&&await Promise.all(this.walkTokens(K,Y.walkTokens));let q=await(Y.hooks?await Y.hooks.provideParser(Q):Q?o.parse:o.parseInline)(K,Y);return Y.hooks?await Y.hooks.postprocess(q):q})().catch(X);try{Y.hooks&&($=Y.hooks.preprocess($));let B=(Y.hooks?Y.hooks.provideLexer(Q):Q?l.lex:l.lexInline)($,Y);Y.hooks&&(B=Y.hooks.processAllTokens(B)),Y.walkTokens&&this.walkTokens(B,Y.walkTokens);let L=(Y.hooks?Y.hooks.provideParser(Q):Q?o.parse:o.parseInline)(B,Y);return Y.hooks&&(L=Y.hooks.postprocess(L)),L}catch(B){return X(B)}}}onError(Q,$){return(J)=>{if(J.message+=`
59
+ Please report this to https://github.com/markedjs/marked.`,Q){let W="<p>An error occurred:</p><pre>"+a(J.message+"",!0)+"</pre>";return $?Promise.resolve(W):W}if($)return Promise.reject(J);throw J}}},X1=new v5;function f(Q,$){return X1.parse(Q,$)}f.options=f.setOptions=function(Q){return X1.setOptions(Q),f.defaults=X1.defaults,B0(f.defaults),f};f.getDefaults=p1;f.defaults=B1;f.use=function(...Q){return X1.use(...Q),f.defaults=X1.defaults,B0(f.defaults),f};f.walkTokens=function(Q,$){return X1.walkTokens(Q,$)};f.parseInline=X1.parseInline;f.Parser=o;f.parser=o.parse;f.Renderer=k1;f.TextRenderer=o1;f.Lexer=l;f.lexer=l.lex;f.Tokenizer=v1;f.Hooks=w1;f.parse=f;var{options:m2,setOptions:h2,use:g2,walkTokens:j2,parseInline:V2}=f;var x2=o.parse,D2=l.lex;import{jsxDEV as S5}from"react/jsx-dev-runtime";f.setOptions({gfm:!0,breaks:!1});function I5(Q,$){let J=Q.trim();if(!J)return null;let W=f.parse(J,{async:!1});return S5("div",{className:"prose-canvas","data-md":"markdown","data-md-source":J,dangerouslySetInnerHTML:{__html:W}},$,!1,void 0,this)}function Q1(Q){let $=k5.Children.toArray(Q);if($.length===0)return null;let J=[],W="",Y=0,X=()=>{if(W){let B=I5(W,`md-${Y++}`);if(B)J.push(B);W=""}};for(let B of $)if(typeof B==="string"||typeof B==="number")W+=String(B);else X(),J.push(B);return X(),J}import{jsxDEV as K1}from"react/jsx-dev-runtime";function C5({title:Q,children:$}){let[J,W]=R5(!1);return K1("div",{className:"relative mb-8 p-4 group/section","data-md":"section","data-md-title":Q,children:[K1("div",{className:"relative mb-2",children:[K1("button",{onClick:()=>W(!J),className:`absolute -left-8 top-1/2 -translate-y-1/2 text-text-tertiary opacity-0 group-hover/section:opacity-50 hover:!opacity-100 transition-all duration-150 p-0.5 ${J?"-rotate-90":""}`,children:K1("svg",{width:"14",height:"14",viewBox:"0 0 12 12",fill:"none",children:K1("path",{d:"M3 4.5L6 7.5L9 4.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},void 0,!1,void 0,this)},void 0,!1,void 0,this)},void 0,!1,void 0,this),K1("h2",{className:"font-heading text-section text-text-primary",style:{fontWeight:400},children:Q},void 0,!1,void 0,this)]},void 0,!0,void 0,this),K1("div",{className:J?"mt-6 hidden":"mt-6",children:Q1($)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}import{jsxDEV as s}from"react/jsx-dev-runtime";var m5={todo:"bg-border-hover",done:"bg-accent-green",blocked:"bg-accent-red","in-progress":"bg-accent-blue"},h5={todo:"Todo",done:"Done",blocked:"Blocked","in-progress":"In progress"},g5={info:"bg-accent-blue-muted text-accent-blue",success:"bg-accent-green-muted text-accent-green",warning:"bg-accent-amber-muted text-accent-amber",danger:"bg-accent-red-muted text-accent-red",neutral:"bg-border-subtle text-text-tertiary"};function T0({id:Q,label:$,status:J,badge:W,badgeVariant:Y="neutral",children:X}){return s("div",{className:"group/task relative -mx-4 px-4 py-3 rounded-md transition-colors duration-150 hover:bg-bg-input","data-task-id":Q,"data-md":"item","data-md-label":$,...J?{"data-md-status":J}:{},...W?{"data-md-badge":W}:{},children:s("div",{className:"flex items-start gap-3",children:[J&&s("span",{className:`w-2 h-2 rounded-full mt-[7px] flex-shrink-0 ${m5[J]}`},void 0,!1,void 0,this),s("div",{className:"flex-1 min-w-0",children:[s("div",{className:"flex items-baseline gap-2",children:[s("span",{className:"font-body text-task-label font-semibold text-text-primary",children:$},void 0,!1,void 0,this),J&&s("span",{className:"font-body text-tiny uppercase tracking-wider text-text-tertiary opacity-0 group-hover/task:opacity-100 transition-opacity duration-150",children:h5[J]},void 0,!1,void 0,this),W&&s("span",{className:`font-body text-tiny font-medium px-1.5 py-px rounded-full ${g5[Y]}`,children:W},void 0,!1,void 0,this)]},void 0,!0,void 0,this),X&&s("div",{className:"text-body text-text-secondary mt-1 leading-relaxed",children:Q1(X)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)}function j5(Q){return s(T0,{...Q},void 0,!1,void 0,this)}import{useEffect as V5,useRef as x5}from"react";import{jsxDEV as R1}from"react/jsx-dev-runtime";function D5({language:Q,children:$}){let J=typeof $==="string"?$:String($??""),W=x5(null);return V5(()=>{let Y=W.current,X=window.hljs;if(!Y||!X)return;Y.removeAttribute("data-highlighted"),Y.className=Q?`language-${Q}`:"",Y.textContent=J,X.highlightElement(Y)},[J,Q]),R1("div",{className:"relative mt-3 group/code","data-md":"codeblock","data-md-language":Q||"",children:[Q&&R1("span",{className:"absolute top-2 right-3 text-tiny text-text-tertiary opacity-0 group-hover/code:opacity-60 transition-opacity duration-150 z-10 font-mono",children:Q},void 0,!1,void 0,this),R1("pre",{className:"bg-bg-code rounded-md p-4 overflow-x-auto text-code font-mono leading-relaxed",children:R1("code",{ref:W,className:Q?`language-${Q}`:"",children:J},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}import{jsxDEV as a1}from"react/jsx-dev-runtime";var p5={info:{bg:"bg-accent-blue-muted",icon:"i",iconColor:"text-accent-blue"},warning:{bg:"bg-accent-amber-muted",icon:"!",iconColor:"text-accent-amber"},danger:{bg:"bg-accent-red-muted",icon:"✕",iconColor:"text-accent-red"},tip:{bg:"bg-accent-green-muted",icon:"✓",iconColor:"text-accent-green"}};function E5({type:Q="info",children:$}){let J=p5[Q];return a1("div",{className:`${J.bg} relative rounded-lg px-5 py-4 mt-3 flex gap-3 items-start`,"data-md":"callout","data-md-type":Q,children:[a1("span",{className:`${J.iconColor} opacity-70 text-base leading-relaxed flex-shrink-0 mt-px`,children:J.icon},void 0,!1,void 0,this),a1("div",{className:"text-body text-text-secondary leading-relaxed",children:Q1($)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}import{jsxDEV as u5}from"react/jsx-dev-runtime";function c5({children:Q}){return u5("div",{className:"relative bg-bg-elevated rounded-lg px-5 py-4 mt-3 text-body text-text-secondary italic leading-relaxed","data-md":"note",children:Q1(Q)},void 0,!1,void 0,this)}import{jsxDEV as Y1}from"react/jsx-dev-runtime";function d5({headers:Q,rows:$}){return Y1("div",{className:"overflow-x-auto mt-3","data-md":"table",children:Y1("table",{className:"w-full text-body",children:[Y1("thead",{children:Y1("tr",{className:"border-b border-border-subtle",children:Q.map((J,W)=>Y1("th",{className:"text-left px-4 py-2.5 text-meta font-medium uppercase tracking-wider text-text-tertiary font-body",children:J},W,!1,void 0,this))},void 0,!1,void 0,this)},void 0,!1,void 0,this),Y1("tbody",{children:$.map((J,W)=>Y1("tr",{className:`relative border-b border-border-subtle last:border-b-0 transition-colors hover:bg-bg-surface/50 ${W%2===1?"bg-bg-surface/30":""}`,children:J.map((Y,X)=>Y1("td",{className:"px-4 py-2.5 text-text-secondary font-body",children:Y},X,!1,void 0,this))},W,!1,void 0,this))},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)}import{jsxDEV as H1}from"react/jsx-dev-runtime";function r5({items:Q}){return H1("ul",{className:"space-y-1 mt-3","data-md":"checklist",children:Q.map(($,J)=>H1("li",{"data-md":"checklist-item","data-md-label":$.label,className:"relative flex items-start gap-2.5 py-1",children:[H1("span",{className:`w-4 h-4 rounded-full flex items-center justify-center flex-shrink-0 mt-0.5 transition-all ${$.checked?"bg-accent-green":"border-[1.5px] border-border-hover"}`,children:$.checked&&H1("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:H1("path",{d:"M2.5 5L4.5 7L7.5 3",style:{stroke:"var(--color-text-inverse)"},strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},void 0,!1,void 0,this)},void 0,!1,void 0,this)},void 0,!1,void 0,this),H1("span",{className:`text-body font-body ${$.checked?"text-text-tertiary line-through decoration-border-hover":"text-text-secondary"}`,children:$.label},void 0,!1,void 0,this)]},J,!0,void 0,this))},void 0,!1,void 0,this)}import{jsxDEV as o5}from"react/jsx-dev-runtime";var i5={high:"text-accent-red bg-accent-red-muted",medium:"text-accent-amber bg-accent-amber-muted",low:"text-text-tertiary bg-border-subtle"};function l5({level:Q}){return o5("span",{className:`inline text-tiny font-medium font-body ml-2 px-1.5 py-0.5 rounded ${i5[Q]}`,"data-md":"priority","data-md-level":Q,children:Q},void 0,!1,void 0,this)}import{useEffect as F0,useState as C1,useContext as _0,useRef as a5}from"react";import{SessionContext as s5,ActiveViewCtx as n5}from"#canvas/runtime";import{jsxDEV as J1}from"react/jsx-dev-runtime";var t5={ts:"typescript",tsx:"typescript",js:"javascript",jsx:"javascript",py:"python",rs:"rust",go:"go",rb:"ruby",java:"java",json:"json",yaml:"yaml",yml:"yaml",md:"markdown",css:"css",html:"html",sh:"bash",bash:"bash",toml:"toml",sql:"sql",xml:"xml",c:"c",cpp:"cpp",h:"c"};function e5({path:Q,lines:$,__content:J}){let W=_0(s5),{setActiveView:Y}=_0(n5),[X,B]=C1(J??null),[L,K]=C1(()=>{let H=Q.split(".").pop()||"";return t5[H]||"text"}),[q,N]=C1(null),[G,P]=C1(!J),F=a5(null);if(F0(()=>{if(J!==void 0)return;P(!0),N(null),fetch(`/api/file?session=${W}&path=${encodeURIComponent(Q)}`).then((H)=>H.json()).then((H)=>{if(H.error)N(H.error);else{let U=H.content;if($)U=U.split(`
60
+ `).slice($[0]-1,$[1]).join(`
61
+ `);B(U),K(H.language||"text")}}).catch(()=>N("Failed to fetch file")).finally(()=>P(!1))},[W,Q,$?.[0],$?.[1],J]),F0(()=>{let H=F.current,U=window.hljs;if(!H||!U||!X)return;H.removeAttribute("data-highlighted"),H.className=L?`language-${L}`:"",H.textContent=X,U.highlightElement(H)},[X,L]),G)return J1("div",{className:"text-text-tertiary text-body mt-3 bg-bg-code rounded-md p-4",children:["Loading ",Q,"..."]},void 0,!0,void 0,this);if(q)return J1("div",{className:"text-accent-red text-body mt-3 bg-accent-red-muted rounded-md p-4",children:[Q,": ",q]},void 0,!0,void 0,this);return J1("div",{className:"mt-3 bg-bg-code rounded-md overflow-hidden","data-md":"filepreview","data-md-path":Q,...$?{"data-md-lines":`${$[0]}-${$[1]}`}:{},children:[J1("div",{className:"px-4 py-2 flex items-center justify-between",children:[J1("button",{className:"font-mono text-meta text-text-tertiary hover:text-text-secondary hover:underline cursor-pointer text-left",onClick:()=>Y({type:"file",path:Q}),title:`Open ${Q}`,children:Q},void 0,!1,void 0,this),$&&J1("span",{className:"font-mono text-meta text-text-tertiary opacity-60",children:["L",$[0],"–",$[1]]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),J1("pre",{className:"px-4 pb-3 overflow-x-auto text-code font-mono !bg-transparent",style:{background:"transparent"},children:J1("code",{ref:F,className:L?`language-${L}`:"",children:X},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}import{useEffect as e1,useRef as f1,useState as Z1,useCallback as n}from"react";import U2 from"react-dom";import{useAnnotations as Z2,useCanvasFile as T2}from"#canvas/runtime";import{useEffect as K2,useRef as h1,useState as U1,useCallback as m1,useMemo as z0,useContext as L2}from"react";import{createPortal as q2}from"react-dom";function y0(Q,$){let Y=$||document.body,X=Q.getBoundingClientRect(),B=Y.getBoundingClientRect(),L=Y===document.body?window.scrollY:Y.scrollTop,K=X.bottom-B.top+L+8,q=Math.max(0,Math.min(X.left-B.left,B.width-280-12));return Y.style.position="relative",{style:{position:"absolute",top:`${K}px`,left:`${q}px`},parent:Y}}import{useState as s1,useRef as n1,useCallback as $1,useEffect as W2}from"react";function L1(Q,$){Q.style.height="auto",Q.style.height=($?Math.max($,Q.scrollHeight):Q.scrollHeight)+"px"}async function w0(Q){let $=Q2(Q);return crypto.subtle.importKey("raw",$,{name:"AES-GCM",length:256},!1,["encrypt","decrypt"])}function $2(Q){let $=atob(Q),J=new Uint8Array($.length);for(let W=0;W<$.length;W++)J[W]=$.charCodeAt(W);return J}function Q2(Q){let $=Q.replace(/-/g,"+").replace(/_/g,"/")+"===".slice((Q.length+3)%4);return $2($)}function Y2(){if(typeof window>"u")return null;let Q=window.location.hash.replace(/^#/,"");if(!Q)return null;for(let $ of Q.split("&")){let[J,W]=$.split("=");if(J==="k"&&W)return decodeURIComponent(W)}return null}function J2(){if(typeof window<"u"&&window.__CANVAS_SHARE__?.shareId){let $=Y2();return{isShared:!0,shareId:window.__CANVAS_SHARE__.shareId,encryptionKey:$?w0($):null}}return{isShared:!1,sessionId:typeof window<"u"?window.location.pathname.replace("/s/",""):""}}var q1=J2();function A0(){if(q1.isShared)return`/s/${q1.shareId}/upload`;return`/api/session/${q1.sessionId}/upload`}var C4=!q1.isShared,m4=!q1.isShared;import{jsxDEV as x}from"react/jsx-dev-runtime";function X2(Q){if(Q.startsWith("/s/")||Q.startsWith("http://")||Q.startsWith("https://"))return Q;return`/api/uploads/${Q.split("/").pop()}`}async function B2(Q,$){let J=new FormData;J.append("image",$);try{let Y=await(await fetch(A0(),{method:"POST",body:J})).json();if(q1.isShared)return Y.url||null;return Y.path||null}catch{return null}}function f0({note:Q,onNoteChange:$,images:J,onAddImage:W,onRemoveImage:Y,sessionId:X,placeholder:B="Add your note...",autoFocus:L=!1,autoResize:K=!1,readOnly:q=!1,onKeyDown:N,onTextareaClick:G,textareaRef:P,textareaClassName:F,textareaStyle:H,minHeight:U,attachButton:Z="always",openFilePickerRef:_}){let[k,O]=s1(!1),[m,I]=s1(!1),[v,D]=s1(!1),C=n1(0),u=n1(null),S=n1(null),h=$1(()=>S.current?.click(),[]);if(_)_.current=h;let E=$1((y)=>{if(u.current=y,P)P.current=y;if(y&&K)L1(y,U)},[P,K,U]);W2(()=>{if(L&&u.current){let y=u.current;if(y.focus(),y.value)y.setSelectionRange(y.value.length,y.value.length)}},[L]);let g=$1(async(y)=>{if(!y.type.startsWith("image/"))return;I(!0);try{let p=await B2(X,y);if(p)W(p)}finally{I(!1)}},[X,W]),i=$1((y)=>{let p=y.clipboardData.items;for(let T of p)if(T.type.startsWith("image/")){y.preventDefault();let A=T.getAsFile();if(A)g(A);return}},[g]),R=$1((y)=>{if(y.preventDefault(),C.current++,C.current===1)O(!0)},[]),c=$1((y)=>{y.preventDefault()},[]),d=$1((y)=>{if(y.preventDefault(),C.current--,C.current===0)O(!1)},[]),t=$1((y)=>{y.preventDefault(),C.current=0,O(!1);for(let p of y.dataTransfer.files)if(p.type.startsWith("image/"))g(p)},[g]),e=$1((y)=>{if($(y.target.value),K)y.target.style.height="auto",y.target.style.height=(U?Math.max(U,y.target.scrollHeight):y.target.scrollHeight)+"px"},[$,K,U]),V1="w-full bg-transparent text-[13px] font-body text-text-primary resize-none focus:outline-none leading-relaxed p-0 border-none",x1={width:"100%",background:"transparent",border:"none",color:"var(--color-text-primary)",fontFamily:"'Inter', sans-serif",fontSize:"13px",lineHeight:"1.5",outline:"none",...K?{resize:"none",overflow:"hidden"}:{resize:"vertical"}},N1=!q&&(Z==="always"||Z==="on-focus"&&v);return x("div",{style:{position:"relative"},onDragEnter:q?void 0:R,onDragOver:q?void 0:c,onDragLeave:q?void 0:d,onDrop:q?void 0:t,children:[x("textarea",{ref:E,value:Q,onChange:q?void 0:e,onPaste:q?void 0:i,onKeyDown:N,onClick:G,onFocus:()=>D(!0),onBlur:()=>{setTimeout(()=>D(!1),150)},readOnly:q,placeholder:B,className:F??V1,style:H??x1,rows:K?1:void 0},void 0,!1,void 0,this),!q&&x("input",{ref:S,type:"file",accept:"image/*",multiple:!0,style:{display:"none"},onChange:(y)=>{let p=y.target.files;if(p)for(let T of p)g(T);y.target.value=""}},void 0,!1,void 0,this),(J.length>0||N1)&&x("div",{style:{display:"flex",gap:"6px",flexWrap:"wrap",marginTop:"6px",alignItems:"center"},children:[J.map((y)=>x("div",{style:{position:"relative",width:"56px",height:"56px",borderRadius:"6px",overflow:"hidden",border:"1px solid var(--color-border-subtle)",flexShrink:0},children:[x("img",{src:X2(y),alt:"",style:{width:"100%",height:"100%",objectFit:"cover",display:"block"}},void 0,!1,void 0,this),!q&&x("button",{onClick:(p)=>{p.stopPropagation(),Y(y)},style:{position:"absolute",top:"2px",right:"2px",width:"16px",height:"16px",borderRadius:"50%",background:"rgba(0,0,0,0.6)",color:"white",border:"none",cursor:"pointer",fontSize:"11px",display:"flex",alignItems:"center",justifyContent:"center",lineHeight:1,padding:0},title:"Remove image",children:"×"},void 0,!1,void 0,this)]},y,!0,void 0,this)),N1&&x(t1,{onClick:h},void 0,!1,void 0,this)]},void 0,!0,void 0,this),m&&x("div",{style:{fontSize:"11px",color:"var(--color-text-tertiary)",fontFamily:"'Inter', sans-serif",marginTop:"4px"},children:"Uploading..."},void 0,!1,void 0,this),k&&x("div",{style:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",background:"var(--color-highlight-bg)",opacity:0.9,border:"2px dashed var(--color-highlight-border)",borderRadius:"6px",zIndex:10,pointerEvents:"none",fontSize:"12px",fontFamily:"'Inter', sans-serif",color:"var(--color-text-secondary)"},children:"Drop image"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function t1({onClick:Q,size:$=16}){return x("button",{onClick:(J)=>{J.stopPropagation(),Q()},style:{width:`${$*2}px`,height:`${$*2}px`,borderRadius:"6px",border:"none",background:"transparent",cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--color-text-tertiary)",flexShrink:0,transition:"color 0.15s"},title:"Attach image",onMouseEnter:(J)=>{J.currentTarget.style.color="var(--color-text-secondary)"},onMouseLeave:(J)=>{J.currentTarget.style.color="var(--color-text-tertiary)"},children:x("svg",{width:$,height:$,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[x("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",ry:"2"},void 0,!1,void 0,this),x("circle",{cx:"8.5",cy:"8.5",r:"1.5"},void 0,!1,void 0,this),x("polyline",{points:"21 15 16 10 5 21"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)}import{SessionContext as N2}from"#canvas/runtime";import{jsxDEV as j,Fragment as H2}from"react/jsx-dev-runtime";function G2({anchorEl:Q,scrollContainer:$,onClose:J,ignoreSelector:W,zIndex:Y="50",padding:X="12px",width:B="280px",children:L}){let K=h1(null),q=h1(J);q.current=J;let{style:N,parent:G}=y0(Q,$);return K2(()=>{let P=setTimeout(()=>{let F=(H)=>{if(K.current&&!K.current.contains(H.target)){if(W&&H.target.closest?.(W))return;q.current(),document.removeEventListener("mousedown",F)}};return document.addEventListener("mousedown",F),()=>document.removeEventListener("mousedown",F)},0);return()=>clearTimeout(P)},[W]),q2(j("div",{ref:K,style:{...N,zIndex:Y,width:B,background:"var(--color-bg-elevated)",border:"1px solid var(--color-border-hover)",borderRadius:"8px",boxShadow:"0 4px 12px var(--color-shadow)",padding:X,fontFamily:"'Inter', sans-serif"},children:L},void 0,!1,void 0,this),G)}var M0=[{label:"Clarity",items:["Unclear","Why?","Needs example","Missing context"]},{label:"Scope",items:["Overkill","Out of scope","Important","Risky"]},{label:"Action",items:["Simplify","Rethink","Expand on this","Skip this"]}],b0=M0.flatMap((Q)=>Q.items);function P2({anchorEl:Q,scrollContainer:$,snippet:J,truncateAt:W=100,header:Y,initialNote:X="",initialImages:B,onConfirm:L,onCancel:K,onDelete:q}){let N=L2(N2),G=X!==""||!!q,[P,F]=U1(X),[H,U]=U1(B||[]),[Z,_]=U1(null),[k,O]=U1(G),[m,I]=U1(!1),v=h1(null),D=h1(null),C=m1(()=>{if(P.trim()||H.length>0)L(P.trim(),H);else if(G&&q)q();else K()},[P,H,L,K,G,q]),u=m1(()=>{if(G){if(!P.trim()&&H.length===0&&q){q(),K();return}L(P,H);return}K()},[P,H,G,L,K,q]),S=!G,h=P.trim().length>0?b0.filter((T)=>T.toLowerCase().startsWith(P.trim().toLowerCase())):b0,E=!S||k?[]:h.length===1&&h[0].toLowerCase()===P.trim().toLowerCase()?[]:h,g=new Set(E),i=M0.map((T)=>({label:T.label,items:T.items.filter((A)=>g.has(A))})).filter((T)=>T.items.length>0),R=i.map((T)=>T.items),c=R.flat(),d=z0(()=>{if(Z===null)return 0;let T=0;for(let A=0;A<R.length;A++){if(Z<T+R[A].length)return A;T+=R[A].length}return 0},[Z,R]),t=z0(()=>{if(Z===null)return 0;let T=0;for(let A=0;A<d;A++)T+=R[A].length;return Z-T},[Z,d,R]),e=(T,A)=>{let r=0;for(let G1=0;G1<T;G1++)r+=R[G1].length;return r+A},[V1,x1]=U1(P);if(P!==V1)x1(P),_(null),O(G);let N1=m1((T)=>{F(T)},[]),y=J.length>W?J.slice(0,W)+"...":J,p=m1((T)=>{if(c.length>0&&(T.key==="ArrowDown"||T.key==="ArrowUp"||T.key==="ArrowLeft"||T.key==="ArrowRight")){if(T.preventDefault(),Z===null){_(0);return}if(T.key==="ArrowDown"){let A=Math.min(t+1,R[d].length-1);_(e(d,A))}else if(T.key==="ArrowUp"){let A=Math.max(t-1,0);_(e(d,A))}else if(T.key==="ArrowRight"){let A=Math.min(d+1,R.length-1),r=Math.min(t,R[A].length-1);_(e(A,r))}else if(T.key==="ArrowLeft"){let A=Math.max(d-1,0),r=Math.min(t,R[A].length-1);_(e(A,r))}return}if(Z!==null&&c.length>0){if(T.key==="Tab"){T.preventDefault(),N1(c[Z]);return}if(T.key==="Enter"&&!T.shiftKey){T.preventDefault(),L(c[Z],H);return}}if(T.key==="Enter"&&!T.shiftKey){T.preventDefault(),C();return}if(T.key==="Escape")if(c.length>0&&!k)O(!0);else if(G)u();else K()},[c,Z,t,d,R,e,N1,L,H,C,k,G,u,K]);return j(G2,{anchorEl:Q,scrollContainer:$,onClose:G?u:K,ignoreSelector:G?"[data-annotation-id]":void 0,zIndex:G?"60":"50",padding:G?"10px 12px":"12px",width:"420px",children:[!G&&(Y??j("div",{style:{fontSize:"11px",color:"var(--color-text-tertiary)",fontStyle:"italic",marginBottom:"8px",lineHeight:"1.4",display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden"},children:["“",y,"”"]},void 0,!0,void 0,this)),j(f0,{note:P,onNoteChange:F,images:H,onAddImage:(T)=>U((A)=>[...A,T]),onRemoveImage:(T)=>U((A)=>A.filter((r)=>r!==T)),sessionId:N,autoFocus:!0,autoResize:G,textareaRef:v,onKeyDown:p,attachButton:"none",openFilePickerRef:D,textareaStyle:G?{width:"100%",background:"transparent",border:"none",color:"var(--color-text-primary)",fontFamily:"'Inter', sans-serif",fontSize:"13px",lineHeight:"1.5",resize:"none",outline:"none",overflow:"hidden"}:{width:"100%",minHeight:"60px",background:"transparent",border:"none",color:"var(--color-text-primary)",fontFamily:"'Inter', sans-serif",fontSize:"13px",lineHeight:"1.5",resize:"vertical",outline:"none"},placeholder:"Add your note..."},void 0,!1,void 0,this),j("div",{style:{display:"flex",alignItems:"center",gap:"8px",marginTop:G?"6px":"8px"},children:[j(t1,{onClick:()=>D.current?.(),size:14},void 0,!1,void 0,this),j("div",{style:{flex:1}},void 0,!1,void 0,this),G?j("button",{onClick:()=>{if(q)q();K()},onMouseEnter:()=>I(!0),onMouseLeave:()=>I(!1),style:{fontSize:"11px",color:m?"var(--color-accent-red)":"var(--color-text-tertiary)",background:"none",border:"none",cursor:"pointer",padding:"2px 0",fontFamily:"'Inter', sans-serif"},children:"Delete"},void 0,!1,void 0,this):j(H2,{children:[j("button",{onClick:K,style:{fontSize:"11px",color:"var(--color-text-tertiary)",background:"none",border:"none",cursor:"pointer",padding:"4px 12px",fontFamily:"'Inter', sans-serif"},children:"Cancel"},void 0,!1,void 0,this),j("button",{onClick:C,style:{fontSize:"11px",fontWeight:500,padding:"4px 12px",borderRadius:"6px",background:"var(--color-highlight-bg)",color:"var(--color-text-primary)",border:"1px solid var(--color-highlight-border)",cursor:"pointer",fontFamily:"'Inter', sans-serif"},children:"Add"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),c.length>0&&j("div",{style:{marginTop:"6px",borderTop:"1px solid var(--color-border-subtle)",paddingTop:"8px",display:"flex",gap:"4px"},children:i.map((T)=>j("div",{style:{flex:1},children:[j("div",{style:{fontSize:"10px",fontWeight:600,color:"var(--color-text-disabled)",textTransform:"uppercase",letterSpacing:"0.05em",padding:"2px 6px",marginBottom:"2px",fontFamily:"'Inter', sans-serif"},children:T.label},void 0,!1,void 0,this),T.items.map((A)=>{let r=c.indexOf(A);return j("div",{onMouseDown:(G1)=>{G1.preventDefault(),G1.stopPropagation(),N1(A)},onMouseEnter:()=>_(r),style:{padding:"3px 6px",fontSize:"12px",borderRadius:"4px",fontFamily:"'Inter', sans-serif",color:r===Z?"var(--color-text-primary)":"var(--color-text-secondary)",background:r===Z?"var(--color-highlight-selected)":"transparent",cursor:"pointer"},children:[j("span",{style:{fontWeight:500},children:A.slice(0,P.trim().length)},void 0,!1,void 0,this),A.slice(P.trim().length)]},A,!0,void 0,this)})]},T.label,!0,void 0,this))},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function O0({anchorEl:Q,scrollContainer:$,snippet:J,truncateAt:W,header:Y,onAdd:X,onCancel:B}){return j(P2,{anchorEl:Q,scrollContainer:$,snippet:J,truncateAt:W,header:Y,onConfirm:(L,K)=>X(L,K),onCancel:B},void 0,!1,void 0,this)}import{jsxDEV as w,Fragment as S0}from"react/jsx-dev-runtime";var T1=0.2,g1=0.25,j1=4;function k0({zoom:Q,onZoomIn:$,onZoomOut:J,onZoomReset:W,onFullscreen:Y}){return w("div",{className:"flex items-center gap-0.5 bg-bg-surface border border-border-subtle rounded-md px-1 py-0.5",style:{fontSize:"12px"},children:[w("button",{className:"flex items-center justify-center w-7 h-7 rounded hover:bg-bg-elevated text-text-secondary hover:text-text-primary transition-colors",onClick:J,title:"Zoom out",disabled:Q<=g1,children:w("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:w("line",{x1:"5",y1:"12",x2:"19",y2:"12"},void 0,!1,void 0,this)},void 0,!1,void 0,this)},void 0,!1,void 0,this),w("button",{className:"px-1.5 h-7 rounded hover:bg-bg-elevated text-text-tertiary hover:text-text-primary transition-colors tabular-nums",onClick:W,title:"Reset zoom",children:[Math.round(Q*100),"%"]},void 0,!0,void 0,this),w("button",{className:"flex items-center justify-center w-7 h-7 rounded hover:bg-bg-elevated text-text-secondary hover:text-text-primary transition-colors",onClick:$,title:"Zoom in",disabled:Q>=j1,children:w("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[w("line",{x1:"12",y1:"5",x2:"12",y2:"19"},void 0,!1,void 0,this),w("line",{x1:"5",y1:"12",x2:"19",y2:"12"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),Y&&w(S0,{children:[w("div",{className:"w-px h-4 bg-border-subtle mx-0.5"},void 0,!1,void 0,this),w("button",{className:"flex items-center justify-center w-7 h-7 rounded hover:bg-bg-elevated text-text-secondary hover:text-text-primary transition-colors",onClick:Y,title:"Fullscreen",children:w("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[w("polyline",{points:"15 3 21 3 21 9"},void 0,!1,void 0,this),w("polyline",{points:"9 21 3 21 3 15"},void 0,!1,void 0,this),w("line",{x1:"21",y1:"3",x2:"14",y2:"10"},void 0,!1,void 0,this),w("line",{x1:"3",y1:"21",x2:"10",y2:"14"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}function I0(Q=1){let[$,J]=Z1(Q),W=n(()=>J((B)=>Math.min(j1,+(B+T1).toFixed(2))),[]),Y=n(()=>J((B)=>Math.max(g1,+(B-T1).toFixed(2))),[]),X=n(()=>J(1),[]);return{zoom:$,zoomIn:W,zoomOut:Y,zoomReset:X,setZoom:J}}function F2({svgHtml:Q,source:$,onClose:J}){let W=f1(null),{zoom:Y,zoomIn:X,zoomOut:B,zoomReset:L,setZoom:K}=I0(1),[q,N]=Z1({x:0,y:0}),G=f1(null);e1(()=>{let _=(k)=>{if(k.key==="Escape")J()};return window.addEventListener("keydown",_),()=>window.removeEventListener("keydown",_)},[J]);let P=n((_)=>{_.preventDefault();let k=_.deltaY>0?-T1:T1;K((O)=>Math.max(g1,Math.min(j1,+(O+k).toFixed(2))))},[K]),F=n((_)=>{if(_.button!==0)return;G.current={startX:_.clientX,startY:_.clientY,panX:q.x,panY:q.y},_.preventDefault()},[q]),H=n((_)=>{if(!G.current)return;N({x:G.current.panX+(_.clientX-G.current.startX),y:G.current.panY+(_.clientY-G.current.startY)})},[]),U=n(()=>{G.current=null},[]),Z=n(()=>{L(),N({x:0,y:0})},[L]);return U2.createPortal(w("div",{style:{position:"fixed",inset:0,zIndex:9999,background:"var(--color-bg-base)",display:"flex",flexDirection:"column"},onMouseMove:H,onMouseUp:U,onMouseLeave:U,children:[w("div",{className:"flex items-center justify-between px-4 py-2 border-b border-border-subtle",style:{flexShrink:0,background:"var(--color-bg-surface)"},children:[w("span",{className:"text-body text-text-secondary",style:{fontSize:"13px"},children:"Mermaid Diagram"},void 0,!1,void 0,this),w("div",{className:"flex items-center gap-2",children:[w(k0,{zoom:Y,onZoomIn:X,onZoomOut:B,onZoomReset:Z},void 0,!1,void 0,this),w("button",{className:"flex items-center justify-center w-8 h-8 rounded hover:bg-bg-elevated text-text-secondary hover:text-text-primary transition-colors",onClick:J,title:"Close (Esc)",children:w("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:[w("line",{x1:"18",y1:"6",x2:"6",y2:"18"},void 0,!1,void 0,this),w("line",{x1:"6",y1:"6",x2:"18",y2:"18"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),w("div",{style:{flex:1,overflow:"hidden",cursor:G.current?"grabbing":"grab"},onWheel:P,onMouseDown:F,children:w("div",{ref:W,style:{width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center",transform:`translate(${q.x}px, ${q.y}px) scale(${Y})`,transformOrigin:"center center",transition:G.current?"none":"transform 0.1s ease-out"},dangerouslySetInnerHTML:{__html:Q}},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this),document.body)}function _2({children:Q}){let $=f1(null),[J,W]=Z1(null),[Y,X]=Z1(!1),[B,L]=Z1(""),K=typeof Q==="string"?Q:String(Q??""),{annotations:q,addAnnotationWithId:N,activeAnnotationId:G,setActiveAnnotationId:P}=Z2(),F=T2(),[H,U]=Z1(null),{zoom:Z,zoomIn:_,zoomOut:k,zoomReset:O,setZoom:m}=I0(1),I=f1(q);I.current=q;let v=n((S,h,E)=>{let g=`[Diagram ${E.toLowerCase()}] ${h}`,i=I.current.find((R)=>R.snippet===g);if(i)P(i.id);else U({anchorEl:S,snippet:h,prefix:E})},[P]),D=f1(v);D.current=v,e1(()=>{let S=!1,h=async()=>{try{let g=window.mermaid;if(!g){W("Mermaid library not loaded");return}let i=document.documentElement.dataset.theme==="light"?"default":"dark";g.initialize({startOnLoad:!1,theme:i});let R=`mermaid-${Math.random().toString(36).slice(2)}`,{svg:c}=await g.render(R,K.trim());if(!S&&$.current)$.current.innerHTML=c,L(c),y2($.current,(d,t,e)=>D.current(d,t,e)),v0($.current,I.current);W(null)}catch(g){if(!S)W(g.message||"Invalid diagram")}};h();let E=new MutationObserver((g)=>{for(let i of g)if(i.attributeName==="data-theme")h()});return E.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>{S=!0,E.disconnect()}},[K]),e1(()=>{if($.current)v0($.current,q,G)},[q,G]);let C=n((S)=>{if(!S.ctrlKey&&!S.metaKey)return;S.preventDefault();let h=S.deltaY>0?-T1:T1;m((E)=>Math.max(g1,Math.min(j1,+(E+h).toFixed(2))))},[m]);if(J)return w("div",{className:"bg-accent-red-muted rounded-md p-4 mt-3 text-body text-accent-red",children:["Mermaid error: ",J,w("pre",{className:"mt-2 text-tiny text-text-tertiary whitespace-pre-wrap",children:K},void 0,!1,void 0,this)]},void 0,!0,void 0,this);let u=$.current?.closest("#plan-scroll-container");return w(S0,{children:[w("div",{className:"mt-3 mermaid-container","data-md":"mermaid","data-md-source":K.trim(),children:[w("div",{className:"flex justify-end mb-1",children:w(k0,{zoom:Z,onZoomIn:_,onZoomOut:k,onZoomReset:O,onFullscreen:()=>X(!0)},void 0,!1,void 0,this)},void 0,!1,void 0,this),w("div",{style:{overflow:"auto",maxHeight:"70vh"},onWheel:C,children:w("div",{ref:$,className:"flex justify-center",style:{transform:`scale(${Z})`,transformOrigin:"top center",transition:"transform 0.1s ease-out",minHeight:Z<1?void 0:void 0}},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this),H&&w(O0,{anchorEl:H.anchorEl,scrollContainer:u,snippet:H.snippet,header:w("div",{style:{fontSize:"12px",color:"var(--color-text-tertiary)",marginBottom:"8px",lineHeight:"1.4",display:"flex",alignItems:"center",gap:"6px"},children:[w("span",{style:{width:"8px",height:"8px",borderRadius:"50%",background:"var(--color-accent-amber)",flexShrink:0}},void 0,!1,void 0,this),H.snippet]},void 0,!0,void 0,this),onAdd:(S,h)=>{let E=`ann-${Date.now()}-${Math.random().toString(36).slice(2,6)}`;N(E,`[Diagram ${H.prefix.toLowerCase()}] ${H.snippet}`,S,void 0,void 0,h,F||void 0),U(null)},onCancel:()=>U(null)},void 0,!1,void 0,this),Y&&B&&w(F2,{svgHtml:B,source:K,onClose:()=>X(!1)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function y2(Q,$){let J=(W,Y,X)=>{W.style.cursor="pointer",W.addEventListener("mouseenter",()=>{W.style.filter="brightness(1.2)"}),W.addEventListener("mouseleave",()=>{W.style.filter=""}),W.addEventListener("click",(B)=>{B.stopPropagation(),B.preventDefault(),$(W,Y(),X)})};for(let W of Q.querySelectorAll(".node"))J(W,()=>{return(W.querySelector(".nodeLabel")||W.querySelector("foreignObject span")||W.querySelector("text"))?.textContent?.trim()||"Node"},"Node");for(let W of Q.querySelectorAll(".edgePath")){let Y=W,X=Y.querySelector("path");if(X){X.style.strokeWidth=Math.max(parseFloat(X.style.strokeWidth||"1"),8)+"px",X.style.strokeOpacity="0";let L=X.cloneNode(!0);L.style.strokeWidth="",L.style.strokeOpacity="",Y.insertBefore(L,X)}let B=Y.id||"";J(Y,()=>{let L=Q.querySelectorAll(".edgeLabel");for(let K of L)if(K.id&&B&&K.id.replace("label","").includes(B.replace("L-","").replace("edge",""))){let q=K.textContent?.trim();if(q)return q}return"Connection"},"Edge")}for(let W of Q.querySelectorAll(".edgeLabel")){let Y=W.textContent?.trim();if(!Y)continue;J(W,()=>Y,"Edge")}for(let W of Q.querySelectorAll(".actor")){let Y=W.closest("g")?.querySelector("text")||W.parentElement?.querySelector("text");if(!Y)continue;let X=W.closest("g");if(!X||X.hasAttribute("data-clickable"))continue;X.setAttribute("data-clickable","true"),J(X,()=>Y.textContent?.trim()||"Participant","Node")}for(let W of Q.querySelectorAll(".messageText")){let Y=W.textContent?.trim();if(!Y)continue;J(W,()=>Y,"Edge")}for(let W of Q.querySelectorAll(".entityBox")){let Y=W.closest("g");if(!Y||Y.hasAttribute("data-clickable"))continue;let X=Y.querySelector(".entityLabel");if(!X)continue;Y.setAttribute("data-clickable","true"),J(Y,()=>X.textContent?.trim()||"Entity","Node")}for(let W of Q.querySelectorAll(".relationshipLabel")){let Y=W.textContent?.trim();if(!Y)continue;let B=W.closest("g")||W;if(B.hasAttribute("data-clickable"))continue;B.setAttribute("data-clickable","true"),J(B,()=>Y,"Edge")}for(let W of Q.querySelectorAll(".classGroup")){let Y=W;if(Y.hasAttribute("data-clickable"))continue;let X=Y.querySelector(".classTitle, .classTitleText, text");if(!X)continue;Y.setAttribute("data-clickable","true"),J(Y,()=>X.textContent?.trim()||"Class","Node")}for(let W of Q.querySelectorAll(".statediagram-state")){let Y=W;if(Y.hasAttribute("data-clickable"))continue;let X=Y.querySelector(".state-title, text");if(!X)continue;Y.setAttribute("data-clickable","true"),J(Y,()=>X.textContent?.trim()||"State","Node")}for(let W of Q.querySelectorAll(".mindmap-node")){let Y=W;if(Y.hasAttribute("data-clickable"))continue;let X=Y.querySelector(".mindmap-node-label, text");if(!X)continue;Y.setAttribute("data-clickable","true"),J(Y,()=>X.textContent?.trim()||"Node","Node")}}function v0(Q,$,J){let W=new Map;for(let X of $){let B=X.snippet.match(/^\[Diagram (?:node|edge)\] (.+)$/);if(B)W.set(B[1],X.id)}for(let X of Q.querySelectorAll("[data-annotated]"))X.style.outline="",X.style.outlineOffset="",X.style.borderRadius="",X.removeAttribute("data-annotated");if(W.size===0)return;for(let X of Q.querySelectorAll(".node")){let L=(X.querySelector(".nodeLabel")||X.querySelector("foreignObject span")||X.querySelector("text"))?.textContent?.trim();if(!L||!W.has(L))continue;let K=W.get(L),q=X;q.setAttribute("data-annotated",K);let N=K===J;q.style.outline=N?"2px solid var(--color-highlight-border)":"2px solid var(--color-highlight-annotation)",q.style.outlineOffset="2px",q.style.borderRadius="4px"}for(let X of Q.querySelectorAll(".edgeLabel")){let B=X.textContent?.trim();if(!B||!W.has(B))continue;let L=W.get(B),K=X;K.setAttribute("data-annotated",L);let q=L===J;K.style.outline=q?"2px solid var(--color-highlight-border)":"2px solid var(--color-highlight-annotation)",K.style.outlineOffset="2px",K.style.borderRadius="4px"}for(let X of Q.querySelectorAll(".actor")){let B=X.closest("g");if(!B)continue;let K=B.querySelector("text")?.textContent?.trim();if(!K||!W.has(K))continue;if(B.hasAttribute("data-annotated"))continue;let q=W.get(K);B.setAttribute("data-annotated",q);let N=q===J,G=B.querySelector("rect");if(G)G.style.outline=N?"2px solid var(--color-highlight-border)":"2px solid var(--color-highlight-annotation)",G.style.outlineOffset="2px",G.style.borderRadius="4px"}for(let X of Q.querySelectorAll(".messageText")){let B=X.textContent?.trim();if(!B||!W.has(B))continue;let L=W.get(B),K=X;K.setAttribute("data-annotated",L);let q=L===J;K.style.outline=q?"2px solid var(--color-highlight-border)":"2px solid var(--color-highlight-annotation)",K.style.outlineOffset="2px",K.style.borderRadius="4px"}let Y=(X,B,L)=>{for(let K of Q.querySelectorAll(X)){let q=L(K);if(!q||q.hasAttribute("data-annotated"))continue;let G=q.querySelector(B)?.textContent?.trim();if(!G||!W.has(G))continue;let P=W.get(G);q.setAttribute("data-annotated",P);let F=P===J,H=q.querySelector("rect, circle, ellipse, polygon")||q;H.style.outline=F?"2px solid var(--color-highlight-border)":"2px solid var(--color-highlight-annotation)",H.style.outlineOffset="2px",H.style.borderRadius="4px"}};Y(".entityBox",".entityLabel",(X)=>X.closest("g"));for(let X of Q.querySelectorAll(".relationshipLabel")){let L=X.closest("g")||X;if(L.hasAttribute("data-annotated"))continue;let K=X.textContent?.trim();if(!K||!W.has(K))continue;let q=W.get(K);L.setAttribute("data-annotated",q);let N=q===J;L.style.outline=N?"2px solid var(--color-highlight-border)":"2px solid var(--color-highlight-annotation)",L.style.outlineOffset="2px",L.style.borderRadius="4px"}Y(".classGroup",".classTitle, .classTitleText, text",(X)=>X),Y(".statediagram-state",".state-title, text",(X)=>X),Y(".mindmap-node",".mindmap-node-label, text",(X)=>X)}import{jsxDEV as z1}from"react/jsx-dev-runtime";function w2({before:Q,after:$,language:J}){let W=Q.split(`
62
+ `),Y=$.split(`
63
+ `),X=A2(W,Y),B=[],L=0,K=0,q=0;while(L<W.length||K<Y.length)if(q<X.length&&L<W.length&&K<Y.length&&W[L]===X[q]&&Y[K]===X[q])B.push({type:"same",line:W[L]}),L++,K++,q++;else if(L<W.length&&(q>=X.length||W[L]!==X[q]))B.push({type:"removed",line:W[L]}),L++;else if(K<Y.length)B.push({type:"added",line:Y[K]}),K++;return z1("div",{className:"mt-3 bg-bg-code rounded-md overflow-hidden group/diff","data-md":"diff","data-md-language":J||"",children:[J&&z1("div",{className:"px-4 py-2 text-meta font-mono text-text-tertiary opacity-0 group-hover/diff:opacity-60 transition-opacity",children:["diff (",J,")"]},void 0,!0,void 0,this),z1("pre",{className:"px-4 pb-3 overflow-x-auto text-code font-mono",children:B.map((N,G)=>z1("div",{className:N.type==="removed"?"bg-accent-red-muted text-accent-red":N.type==="added"?"bg-accent-green-muted text-accent-green":"text-text-tertiary",children:[z1("span",{className:"select-none w-6 inline-block text-center opacity-60",children:N.type==="removed"?"-":N.type==="added"?"+":" "},void 0,!1,void 0,this),N.line]},G,!0,void 0,this))},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function A2(Q,$){let J=Q.length,W=$.length,Y=Array.from({length:J+1},()=>Array(W+1).fill(0));for(let K=1;K<=J;K++)for(let q=1;q<=W;q++)Y[K][q]=Q[K-1]===$[q-1]?Y[K-1][q-1]+1:Math.max(Y[K-1][q],Y[K][q-1]);let X=[],B=J,L=W;while(B>0&&L>0)if(Q[B-1]===$[L-1])X.unshift(Q[B-1]),B--,L--;else if(Y[B-1][L]>Y[B][L-1])B--;else L--;return X}import{useEffect as C0,useMemo as m0,useRef as h0,useState as g0}from"react";import{useAnnotations as j0}from"#canvas/runtime";import{jsxDEV as R0}from"react/jsx-dev-runtime";function F1({note:Q,onChange:$}){return R0("div",{className:"mt-1.5",children:R0("textarea",{value:Q,onChange:(J)=>$(J.target.value),className:"w-full bg-transparent text-[12px] font-body text-text-primary resize-none focus:outline-none border-none placeholder:text-text-disabled transition-colors min-h-[20px] p-0 leading-relaxed",placeholder:"Add a note...",rows:1,onInput:(J)=>L1(J.target),ref:(J)=>{if(J)L1(J)}},void 0,!1,void 0,this)},void 0,!1,void 0,this)}import{jsxDEV as M}from"react/jsx-dev-runtime";function V0(Q){return Q.map(($)=>typeof $==="string"?{value:$,label:$}:{value:$.value,label:$.label??$.value})}function f2({id:Q,label:$,options:J,required:W}){let{responses:Y,setResponse:X}=j0(),B=m0(()=>V0(J),[J]),L=Y.get(Q),K=L?.value,q=L?.note||"",[N,G]=g0(!1),P=h0(null);if(!Y.has(Q))X(Q,{id:Q,type:"radio",label:$,value:null,options:B.map((U)=>U.value),required:W});let F=(U)=>{X(Q,{...L,value:U})};C0(()=>{let U=P.current;if(!U)return;let Z=(_)=>{let O=_.target.closest("[data-md-label]")?.getAttribute("data-md-label"),m=B.find((I)=>I.label===O);if(m)F(m.value)};return U.addEventListener("kb-select",Z),()=>U.removeEventListener("kb-select",Z)},[B,F]);let H=L?.required&&!K;return M("div",{ref:P,"data-md":"choice","data-md-label":$,className:"-mx-4 px-4 py-3 my-1 rounded-lg transition-colors duration-150 hover:bg-bg-input",children:[M("div",{className:"flex items-baseline gap-2 mb-2",children:[M("span",{className:"text-[13px] font-body font-medium text-text-primary",children:$},void 0,!1,void 0,this),W&&M("span",{className:"text-[10px] text-accent-red font-body",children:"*"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),M("div",{className:"space-y-1",children:B.map(({value:U,label:Z})=>M("label",{"data-md":"choice-option","data-md-label":Z,onClick:()=>F(U),className:`flex items-center gap-2.5 px-3 py-2 rounded-lg cursor-pointer transition-all duration-150 ${K===U?"bg-highlight-selected":"hover:bg-bg-elevated"}`,children:[M("span",{className:`w-4 h-4 rounded-full border-[1.5px] flex items-center justify-center flex-shrink-0 transition-all ${K===U?"border-accent-amber bg-accent-amber":"border-border-strong"}`,children:K===U&&M("span",{className:"w-1.5 h-1.5 rounded-full bg-text-inverse"},void 0,!1,void 0,this)},void 0,!1,void 0,this),M("span",{className:"text-[13px] font-body text-text-secondary",children:Z},void 0,!1,void 0,this)]},U,!0,void 0,this))},void 0,!1,void 0,this),M(F1,{show:N,note:q,onToggle:()=>G(!N),onChange:(U)=>X(Q,{...L,note:U})},void 0,!1,void 0,this),H&&M("p",{className:"text-[11px] text-accent-red font-body mt-1",children:"Please select an option."},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function z2({id:Q,label:$,options:J,required:W}){let{responses:Y,setResponse:X}=j0(),B=m0(()=>V0(J),[J]),L=Y.get(Q),K=L?.value||[],q=L?.note||"",[N,G]=g0(!1),P=h0(null);if(!Y.has(Q))X(Q,{id:Q,type:"checkbox",label:$,value:[],options:B.map((U)=>U.value),required:W});let F=(U)=>{let Z=K.includes(U)?K.filter((_)=>_!==U):[...K,U];X(Q,{...L,value:Z})};C0(()=>{let U=P.current;if(!U)return;let Z=(_)=>{let O=_.target.closest("[data-md-label]")?.getAttribute("data-md-label"),m=B.find((I)=>I.label===O);if(m)F(m.value)};return U.addEventListener("kb-select",Z),()=>U.removeEventListener("kb-select",Z)},[B,F]);let H=L?.required&&K.length===0;return M("div",{ref:P,"data-md":"multichoice","data-md-label":$,className:"-mx-4 px-4 py-3 my-1 rounded-lg transition-colors duration-150 hover:bg-bg-input",children:[M("div",{className:"flex items-baseline gap-2 mb-2",children:[M("span",{className:"text-[13px] font-body font-medium text-text-primary",children:$},void 0,!1,void 0,this),W&&M("span",{className:"text-[10px] text-accent-red font-body",children:"*"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),M("div",{className:"space-y-1",children:B.map(({value:U,label:Z})=>{let _=K.includes(U);return M("label",{"data-md":"multichoice-option","data-md-label":Z,onClick:()=>F(U),className:`flex items-center gap-2.5 px-3 py-2 rounded-lg cursor-pointer transition-all duration-150 ${_?"bg-highlight-selected":"hover:bg-bg-elevated"}`,children:[M("span",{className:`w-4 h-4 rounded flex items-center justify-center flex-shrink-0 transition-all ${_?"bg-accent-amber":"border-[1.5px] border-border-strong"}`,children:_&&M("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:M("path",{d:"M2.5 5L4.5 7L7.5 3",style:{stroke:"var(--color-text-inverse)"},strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},void 0,!1,void 0,this)},void 0,!1,void 0,this)},void 0,!1,void 0,this),M("span",{className:"text-[13px] font-body text-text-secondary",children:Z},void 0,!1,void 0,this)]},U,!0,void 0,this)})},void 0,!1,void 0,this),M(F1,{show:N,note:q,onToggle:()=>G(!N),onChange:(U)=>X(Q,{...L,note:U})},void 0,!1,void 0,this),H&&M("p",{className:"text-[11px] text-accent-red font-body mt-1",children:"Please select at least one option."},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}import{useRef as b2,useState as x0}from"react";import{useAnnotations as D0}from"#canvas/runtime";import{jsxDEV as b}from"react/jsx-dev-runtime";function M2({id:Q,label:$,placeholder:J,multiline:W,required:Y}){let{responses:X,setResponse:B}=D0(),L=X.get(Q),K=L?.value??"",q=L?.note||"",[N,G]=x0(!1),P=b2(null);if(!X.has(Q))B(Q,{id:Q,type:"text",label:$,value:"",required:Y});let F=(Z)=>{B(Q,{...L,value:Z})},H=(Z)=>L1(Z,W?60:32),U=L?.required&&!K.trim();return b("div",{"data-md":"userinput","data-md-label":$,className:"-mx-4 px-4 py-3 my-1 rounded-lg transition-colors duration-150 hover:bg-bg-input",children:[b("div",{className:"flex items-baseline gap-2 mb-2",children:[b("span",{className:"text-[13px] font-body font-medium text-text-primary",children:$},void 0,!1,void 0,this),Y&&b("span",{className:"text-[10px] text-accent-red font-body",children:"*"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),b("textarea",{ref:P,value:K,onChange:(Z)=>{F(Z.target.value),H(Z.target)},placeholder:J||"Type your response...",rows:W?3:1,className:"w-full bg-bg-input text-[13px] font-body text-text-primary rounded-lg px-3 py-2 resize-none focus:outline-none border border-border-subtle focus:border-border-hover placeholder:text-text-tertiary transition-colors",onInput:(Z)=>H(Z.target),onFocus:(Z)=>H(Z.target)},void 0,!1,void 0,this),b(F1,{show:N,note:q,onToggle:()=>G(!N),onChange:(Z)=>B(Q,{...L,note:Z})},void 0,!1,void 0,this),U&&b("p",{className:"text-[11px] text-accent-red font-body mt-1",children:"This field is required."},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function O2({id:Q,label:$,min:J=1,max:W=10,step:Y=1,required:X,minLabel:B,maxLabel:L}){let{responses:K,setResponse:q}=D0(),N=K.get(Q),G=N?.value,P=N?.note||"",[F,H]=x0(!1);if(!K.has(Q))q(Q,{id:Q,type:"range",label:$,value:null,required:X});let U=(v)=>{q(Q,{...N,value:v})},Z=G!==null&&G!==void 0,_=Z?G:Math.round((J+W)/2),k=(_-J)/(W-J)*100,O=Math.round((W-J)/Y),m=O<=20,I=N?.required&&!Z;return b("div",{"data-md":"rangeinput","data-md-label":$,className:"-mx-4 px-4 py-3 my-1 rounded-lg transition-colors duration-150 hover:bg-bg-input",children:[b("div",{className:"flex items-baseline justify-between mb-1",children:[b("div",{className:"flex items-baseline gap-2",children:[b("span",{className:"text-[13px] font-body font-medium text-text-primary",children:$},void 0,!1,void 0,this),X&&b("span",{className:"text-[10px] text-accent-red font-body",children:"*"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),b("span",{className:"flex items-center gap-1.5",children:[b("span",{className:`text-[13px] font-mono ${Z?"text-accent-amber":"text-text-disabled"}`,children:Z?G:"—"},void 0,!1,void 0,this),Z&&b("button",{onClick:()=>q(Q,{...N,value:null}),className:"text-text-disabled hover:text-text-tertiary transition-colors text-[10px] leading-none",title:"Clear",children:"✕"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),b("div",{className:"relative h-6 flex items-center",children:[b("div",{className:"absolute left-0 right-0 h-1.5 rounded-full bg-border-medium",children:Z&&b("div",{className:"h-full rounded-full bg-accent-amber transition-all duration-150",style:{width:`${k}%`}},void 0,!1,void 0,this)},void 0,!1,void 0,this),m&&Array.from({length:O+1},(v,D)=>{let C=J+D*Y,u=(C-J)/(W-J)*100,S=Z&&C<=G;return b("div",{className:`absolute rounded-full pointer-events-none transition-all duration-150 ${Z&&C===G?"w-2.5 h-2.5 bg-accent-amber":S?"w-1.5 h-1.5 bg-accent-amber":"w-1.5 h-1.5 bg-border-hover"}`,style:{left:`${u}%`,transform:"translate(-50%, -50%)",top:"50%"}},D,!1,void 0,this)}),Z?b("div",{className:"absolute h-5 w-5 rounded-full bg-accent-amber shadow-md pointer-events-none transition-all duration-150",style:{left:`calc(${k}% - 10px)`,borderWidth:"2px",borderStyle:"solid",borderColor:"var(--color-bg-base)"}},void 0,!1,void 0,this):b("div",{className:"absolute h-4 w-4 rounded-full bg-border-hover pointer-events-none opacity-50",style:{left:"calc(50% - 8px)",borderWidth:"2px",borderStyle:"solid",borderColor:"var(--color-bg-base)"}},void 0,!1,void 0,this),b("input",{type:"range",min:J,max:W,step:Y,value:_,onChange:(v)=>U(Number(v.target.value)),className:"absolute inset-0 w-full opacity-0 cursor-pointer"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),m&&O<=10?b("div",{className:"flex justify-between -mt-0.5 px-0",children:Array.from({length:O+1},(v,D)=>{let C=J+D*Y;return b("span",{className:`text-[10px] font-mono transition-colors ${Z&&C===G?"text-accent-amber font-medium":"text-text-disabled"}`,style:{minWidth:"1ch",textAlign:"center"},children:C},D,!1,void 0,this)})},void 0,!1,void 0,this):b("div",{className:"flex justify-between -mt-0.5",children:[b("span",{className:"text-[11px] text-text-tertiary font-body",children:B||J},void 0,!1,void 0,this),b("span",{className:"text-[11px] text-text-tertiary font-body",children:L||W},void 0,!1,void 0,this)]},void 0,!0,void 0,this),b(F1,{show:F,note:P,onToggle:()=>H(!F),onChange:(v)=>q(Q,{...N,note:v})},void 0,!1,void 0,this),I&&b("p",{className:"text-[11px] text-accent-red font-body mt-1",children:"Please select a value."},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}import{useContext as v2,useState as k2}from"react";import{SessionContext as I2}from"#canvas/runtime";import{jsxDEV as b1}from"react/jsx-dev-runtime";function S2({src:Q,alt:$,caption:J,width:W,height:Y}){let X=v2(I2),[B,L]=k2(!1),K=`/api/image?session=${encodeURIComponent(X)}&path=${encodeURIComponent(Q)}`;if(B)return b1("div",{className:"mt-3 text-accent-red text-body bg-accent-red-muted rounded-md p-4",children:[Q,": Failed to load image"]},void 0,!0,void 0,this);return b1("figure",{className:"mt-3 relative","data-md":"image","data-md-src":Q,children:[b1("div",{className:"rounded-md overflow-hidden border border-border-subtle bg-bg-code inline-block",children:b1("img",{src:K,alt:$||Q,onError:()=>L(!0),className:"block max-w-full h-auto",...W?{width:W}:{},...Y?{height:Y}:{}},void 0,!1,void 0,this)},void 0,!1,void 0,this),J&&b1("figcaption",{className:"mt-1.5 text-meta text-text-tertiary font-body",children:J},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}import{useMemo as R2}from"react";import{jsxDEV as p0}from"react/jsx-dev-runtime";f.setOptions({gfm:!0,breaks:!1});function C2({children:Q,file:$,__content:J}){let W=J??(typeof Q==="string"?Q:String(Q??"")),Y=R2(()=>{if(!W)return"";return f.parse(W,{async:!1})},[W]);if(!W)return p0("div",{className:"text-text-tertiary text-tiny mt-3",children:$?`Could not load: ${$}`:"No markdown content"},void 0,!1,void 0,this);return p0("div",{className:"mt-3 prose-canvas","data-md":"markdown",...$?{"data-md-file":$}:{},"data-md-source":W,dangerouslySetInnerHTML:{__html:Y}},void 0,!1,void 0,this)}import{useFeedback as o3}from"#canvas/runtime";export{o3 as useFeedback,M2 as UserInput,j5 as Task,d5 as Table,C5 as Section,O2 as RangeInput,l5 as Priority,c5 as Note,z2 as MultiChoice,_2 as Mermaid,C2 as Markdown,T0 as Item,S2 as ImageView,e5 as FilePreview,w2 as Diff,D5 as CodeBlock,f2 as Choice,r5 as Checklist,E5 as Callout};