@langgraph-js/ui 5.7.2 → 5.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/dist/assets/{arc-DsgW0fW0.js → arc-wXshhrRR.js} +1 -1
  2. package/dist/assets/{architectureDiagram-VXUJARFQ-x6jPEiVb.js → architectureDiagram-VXUJARFQ-BjYHg2th.js} +1 -1
  3. package/dist/assets/{blockDiagram-VD42YOAC-CtC7rOkz.js → blockDiagram-VD42YOAC-BfZaKjXP.js} +1 -1
  4. package/dist/assets/{c4Diagram-YG6GDRKO-B0Bhovp6.js → c4Diagram-YG6GDRKO-CaC2Q9BH.js} +1 -1
  5. package/dist/assets/channel-Bs9viUuK.js +1 -0
  6. package/dist/assets/{chunk-4BX2VUAB-7nlfvZIs.js → chunk-4BX2VUAB-CRLEiLtH.js} +1 -1
  7. package/dist/assets/{chunk-55IACEB6-CEUhaTkt.js → chunk-55IACEB6-cjRn0k9t.js} +1 -1
  8. package/dist/assets/{chunk-B4BG7PRW-3Je1T-6D.js → chunk-B4BG7PRW-EKWvgJ0H.js} +1 -1
  9. package/dist/assets/{chunk-DI55MBZ5-CibwD6Tg.js → chunk-DI55MBZ5-4PPlyMuP.js} +1 -1
  10. package/dist/assets/{chunk-FMBD7UC4-DkqBqoF9.js → chunk-FMBD7UC4-M3p4mybd.js} +1 -1
  11. package/dist/assets/{chunk-QN33PNHL-DSoehSAx.js → chunk-QN33PNHL-D_FC-5Ev.js} +1 -1
  12. package/dist/assets/{chunk-QZHKN3VN-CAcu9F3O.js → chunk-QZHKN3VN-BFcmkRKx.js} +1 -1
  13. package/dist/assets/{chunk-TZMSLE5B-CS59_8HR.js → chunk-TZMSLE5B-zywYbegY.js} +1 -1
  14. package/dist/assets/classDiagram-2ON5EDUG-Bj8_lPIu.js +1 -0
  15. package/dist/assets/classDiagram-v2-WZHVMYZB-Bj8_lPIu.js +1 -0
  16. package/dist/assets/clone-D9hOoKzY.js +1 -0
  17. package/dist/assets/{cose-bilkent-S5V4N54A-CcvTmZ3l.js → cose-bilkent-S5V4N54A-kAFXsN9Z.js} +1 -1
  18. package/dist/assets/{dagre-6UL2VRFP-Du0L8eIB.js → dagre-6UL2VRFP-Di6u8o5t.js} +1 -1
  19. package/dist/assets/{diagram-PSM6KHXK-QCoayD06.js → diagram-PSM6KHXK-TbtJv9_V.js} +1 -1
  20. package/dist/assets/{diagram-QEK2KX5R-DOyrrhCz.js → diagram-QEK2KX5R-Bqx4ofnv.js} +1 -1
  21. package/dist/assets/{diagram-S2PKOQOG-KjypfMN6.js → diagram-S2PKOQOG--Bstc_VD.js} +1 -1
  22. package/dist/assets/{erDiagram-Q2GNP2WA-BN-9XTVy.js → erDiagram-Q2GNP2WA-D-9oQLJO.js} +1 -1
  23. package/dist/assets/{flowDiagram-NV44I4VS-BeFTT0TJ.js → flowDiagram-NV44I4VS-BeapIZgh.js} +1 -1
  24. package/dist/assets/{ganttDiagram-LVOFAZNH-1AE61yJv.js → ganttDiagram-LVOFAZNH-Q_OeX8tV.js} +1 -1
  25. package/dist/assets/{gitGraphDiagram-NY62KEGX-aTUWjzWl.js → gitGraphDiagram-NY62KEGX-CEbloLy8.js} +1 -1
  26. package/dist/assets/{graph-uuboXTUX.js → graph-BRyqCv92.js} +1 -1
  27. package/dist/assets/{index-DuV4Cs93.js → index-BxIg05B7.js} +4 -4
  28. package/dist/assets/{infoDiagram-F6ZHWCRC-CQen-ygj.js → infoDiagram-F6ZHWCRC-D_LGvhZb.js} +1 -1
  29. package/dist/assets/{isUndefined-B1VZkTi-.js → isUndefined-Ikc2pxPs.js} +1 -1
  30. package/dist/assets/{journeyDiagram-XKPGCS4Q-_d3Y3lJU.js → journeyDiagram-XKPGCS4Q-BRWQwBSp.js} +1 -1
  31. package/dist/assets/{kanban-definition-3W4ZIXB7-Dxarq9GE.js → kanban-definition-3W4ZIXB7-BFxC_n26.js} +1 -1
  32. package/dist/assets/{layout-Cjc7wP1L.js → layout-0KPNbBO4.js} +1 -1
  33. package/dist/assets/{mermaid.core-BpzyNF0N.js → mermaid.core-B3hGqMVI.js} +5 -5
  34. package/dist/assets/{min-iWVu4DkI.js → min-BJvQmfaP.js} +1 -1
  35. package/dist/assets/{mindmap-definition-VGOIOE7T-CnAMXH16.js → mindmap-definition-VGOIOE7T-BtxvJZ6A.js} +1 -1
  36. package/dist/assets/{pieDiagram-ADFJNKIX-jQmVw15z.js → pieDiagram-ADFJNKIX-CvAQgkuw.js} +1 -1
  37. package/dist/assets/{quadrantDiagram-AYHSOK5B-CdR8ErX6.js → quadrantDiagram-AYHSOK5B-DO8ZUWHv.js} +1 -1
  38. package/dist/assets/{requirementDiagram-UZGBJVZJ-DRe2cRaP.js → requirementDiagram-UZGBJVZJ-D91scIis.js} +1 -1
  39. package/dist/assets/{sankeyDiagram-TZEHDZUN-CCxPdCL6.js → sankeyDiagram-TZEHDZUN-D0vcFs1W.js} +1 -1
  40. package/dist/assets/{sequenceDiagram-WL72ISMW-DEqPM-5z.js → sequenceDiagram-WL72ISMW-DDaKBgw8.js} +1 -1
  41. package/dist/assets/{stateDiagram-FKZM4ZOC-BJqbxGAU.js → stateDiagram-FKZM4ZOC-BP3y7kum.js} +1 -1
  42. package/dist/assets/stateDiagram-v2-4FDKWEC3-B1UG9A0H.js +1 -0
  43. package/dist/assets/{timeline-definition-IT6M3QCI-C3oBdaQs.js → timeline-definition-IT6M3QCI-B3BLwiLF.js} +1 -1
  44. package/dist/assets/{treemap-KMMF4GRG-Cg2H1ebp.js → treemap-KMMF4GRG-r70-_ept.js} +1 -1
  45. package/dist/assets/{xychartDiagram-PRI3JC2R-C0KJkN_M.js → xychartDiagram-PRI3JC2R-rHKv2iUX.js} +1 -1
  46. package/dist/index.html +1 -1
  47. package/package.json +2 -2
  48. package/src/chat/components/MessageAI.tsx +6 -3
  49. package/src/chat/components/Reasoning.tsx +2 -2
  50. package/dist/assets/channel-CYykpNsh.js +0 -1
  51. package/dist/assets/classDiagram-2ON5EDUG-DEA6c_Xf.js +0 -1
  52. package/dist/assets/classDiagram-v2-WZHVMYZB-DEA6c_Xf.js +0 -1
  53. package/dist/assets/clone-Du_gs0pm.js +0 -1
  54. package/dist/assets/stateDiagram-v2-4FDKWEC3-CILBmBJc.js +0 -1
@@ -80,7 +80,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
80
80
  ]))`;continue}else if(tt[Et]==="$"){rt+=`($|(?=[\r
81
81
  ]))`;continue}}if(Ye.s&&tt[Et]==="."){rt+=at?`${tt[Et]}\r
82
82
  `:`[${tt[Et]}\r
83
- ]`;continue}rt+=tt[Et],tt[Et]==="\\"?nt=!0:at&&tt[Et]==="]"?at=!1:!at&&tt[Et]==="["&&(at=!0)}try{new RegExp(rt)}catch{return console.warn(`Could not convert regex pattern at ${t.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return rt}function parseRecordDef(e,t){var tt,rt,nt,at,ot,ct;if(t.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),t.target==="openApi3"&&((tt=e.keyType)==null?void 0:tt._def.typeName)===ZodFirstPartyTypeKind.ZodEnum)return{type:"object",required:e.keyType._def.values,properties:e.keyType._def.values.reduce((Et,At)=>({...Et,[At]:parseDef(e.valueType._def,{...t,currentPath:[...t.currentPath,"properties",At]})??parseAnyDef(t)}),{}),additionalProperties:t.rejectedAdditionalProperties};const Ye={type:"object",additionalProperties:parseDef(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]})??t.allowedAdditionalProperties};if(t.target==="openApi3")return Ye;if(((rt=e.keyType)==null?void 0:rt._def.typeName)===ZodFirstPartyTypeKind.ZodString&&((nt=e.keyType._def.checks)!=null&&nt.length)){const{type:Et,...At}=parseStringDef(e.keyType._def,t);return{...Ye,propertyNames:At}}else{if(((at=e.keyType)==null?void 0:at._def.typeName)===ZodFirstPartyTypeKind.ZodEnum)return{...Ye,propertyNames:{enum:e.keyType._def.values}};if(((ot=e.keyType)==null?void 0:ot._def.typeName)===ZodFirstPartyTypeKind.ZodBranded&&e.keyType._def.type._def.typeName===ZodFirstPartyTypeKind.ZodString&&((ct=e.keyType._def.type._def.checks)!=null&&ct.length)){const{type:Et,...At}=parseBrandedDef(e.keyType._def,t);return{...Ye,propertyNames:At}}}return Ye}function parseMapDef(e,t){if(t.mapStrategy==="record")return parseRecordDef(e,t);const Ye=parseDef(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||parseAnyDef(t),tt=parseDef(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||parseAnyDef(t);return{type:"array",maxItems:125,items:{type:"array",items:[Ye,tt],minItems:2,maxItems:2}}}function parseNativeEnumDef(e){const t=e.values,tt=Object.keys(e.values).filter(nt=>typeof t[t[nt]]!="number").map(nt=>t[nt]),rt=Array.from(new Set(tt.map(nt=>typeof nt)));return{type:rt.length===1?rt[0]==="string"?"string":"number":["string","number"],enum:tt}}function parseNeverDef(e){return e.target==="openAi"?void 0:{not:parseAnyDef({...e,currentPath:[...e.currentPath,"not"]})}}function parseNullDef(e){return e.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}const primitiveMappings={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function parseUnionDef(e,t){if(t.target==="openApi3")return asAnyOf(e,t);const Ye=e.options instanceof Map?Array.from(e.options.values()):e.options;if(Ye.every(tt=>tt._def.typeName in primitiveMappings&&(!tt._def.checks||!tt._def.checks.length))){const tt=Ye.reduce((rt,nt)=>{const at=primitiveMappings[nt._def.typeName];return at&&!rt.includes(at)?[...rt,at]:rt},[]);return{type:tt.length>1?tt:tt[0]}}else if(Ye.every(tt=>tt._def.typeName==="ZodLiteral"&&!tt.description)){const tt=Ye.reduce((rt,nt)=>{const at=typeof nt._def.value;switch(at){case"string":case"number":case"boolean":return[...rt,at];case"bigint":return[...rt,"integer"];case"object":if(nt._def.value===null)return[...rt,"null"];case"symbol":case"undefined":case"function":default:return rt}},[]);if(tt.length===Ye.length){const rt=tt.filter((nt,at,ot)=>ot.indexOf(nt)===at);return{type:rt.length>1?rt:rt[0],enum:Ye.reduce((nt,at)=>nt.includes(at._def.value)?nt:[...nt,at._def.value],[])}}}else if(Ye.every(tt=>tt._def.typeName==="ZodEnum"))return{type:"string",enum:Ye.reduce((tt,rt)=>[...tt,...rt._def.values.filter(nt=>!tt.includes(nt))],[])};return asAnyOf(e,t)}const asAnyOf=(e,t)=>{const Ye=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((tt,rt)=>parseDef(tt._def,{...t,currentPath:[...t.currentPath,"anyOf",`${rt}`]})).filter(tt=>!!tt&&(!t.strictUnions||typeof tt=="object"&&Object.keys(tt).length>0));return Ye.length?{anyOf:Ye}:void 0};function parseNullableDef(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return t.target==="openApi3"?{type:primitiveMappings[e.innerType._def.typeName],nullable:!0}:{type:[primitiveMappings[e.innerType._def.typeName],"null"]};if(t.target==="openApi3"){const tt=parseDef(e.innerType._def,{...t,currentPath:[...t.currentPath]});return tt&&"$ref"in tt?{allOf:[tt],nullable:!0}:tt&&{...tt,nullable:!0}}const Ye=parseDef(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return Ye&&{anyOf:[Ye,{type:"null"}]}}function parseNumberDef(e,t){const Ye={type:"number"};if(!e.checks)return Ye;for(const tt of e.checks)switch(tt.kind){case"int":Ye.type="integer",addErrorMessage(Ye,"type",tt.message,t);break;case"min":t.target==="jsonSchema7"?tt.inclusive?setResponseValueAndErrors(Ye,"minimum",tt.value,tt.message,t):setResponseValueAndErrors(Ye,"exclusiveMinimum",tt.value,tt.message,t):(tt.inclusive||(Ye.exclusiveMinimum=!0),setResponseValueAndErrors(Ye,"minimum",tt.value,tt.message,t));break;case"max":t.target==="jsonSchema7"?tt.inclusive?setResponseValueAndErrors(Ye,"maximum",tt.value,tt.message,t):setResponseValueAndErrors(Ye,"exclusiveMaximum",tt.value,tt.message,t):(tt.inclusive||(Ye.exclusiveMaximum=!0),setResponseValueAndErrors(Ye,"maximum",tt.value,tt.message,t));break;case"multipleOf":setResponseValueAndErrors(Ye,"multipleOf",tt.value,tt.message,t);break}return Ye}function parseObjectDef(e,t){const Ye=t.target==="openAi",tt={type:"object",properties:{}},rt=[],nt=e.shape();for(const ot in nt){let ct=nt[ot];if(ct===void 0||ct._def===void 0)continue;let Et=safeIsOptional(ct);Et&&Ye&&(ct._def.typeName==="ZodOptional"&&(ct=ct._def.innerType),ct.isNullable()||(ct=ct.nullable()),Et=!1);const At=parseDef(ct._def,{...t,currentPath:[...t.currentPath,"properties",ot],propertyPath:[...t.currentPath,"properties",ot]});At!==void 0&&(tt.properties[ot]=At,Et||rt.push(ot))}rt.length&&(tt.required=rt);const at=decideAdditionalProperties(e,t);return at!==void 0&&(tt.additionalProperties=at),tt}function decideAdditionalProperties(e,t){if(e.catchall._def.typeName!=="ZodNever")return parseDef(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return t.removeAdditionalStrategy==="strict"?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function safeIsOptional(e){try{return e.isOptional()}catch{return!0}}const parseOptionalDef=(e,t)=>{var tt;if(t.currentPath.toString()===((tt=t.propertyPath)==null?void 0:tt.toString()))return parseDef(e.innerType._def,t);const Ye=parseDef(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return Ye?{anyOf:[{not:parseAnyDef(t)},Ye]}:parseAnyDef(t)},parsePipelineDef=(e,t)=>{if(t.pipeStrategy==="input")return parseDef(e.in._def,t);if(t.pipeStrategy==="output")return parseDef(e.out._def,t);const Ye=parseDef(e.in._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),tt=parseDef(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",Ye?"1":"0"]});return{allOf:[Ye,tt].filter(rt=>rt!==void 0)}};function parsePromiseDef(e,t){return parseDef(e.type._def,t)}function parseSetDef(e,t){const tt={type:"array",uniqueItems:!0,items:parseDef(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};return e.minSize&&setResponseValueAndErrors(tt,"minItems",e.minSize.value,e.minSize.message,t),e.maxSize&&setResponseValueAndErrors(tt,"maxItems",e.maxSize.value,e.maxSize.message,t),tt}function parseTupleDef(e,t){return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((Ye,tt)=>parseDef(Ye._def,{...t,currentPath:[...t.currentPath,"items",`${tt}`]})).reduce((Ye,tt)=>tt===void 0?Ye:[...Ye,tt],[]),additionalItems:parseDef(e.rest._def,{...t,currentPath:[...t.currentPath,"additionalItems"]})}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((Ye,tt)=>parseDef(Ye._def,{...t,currentPath:[...t.currentPath,"items",`${tt}`]})).reduce((Ye,tt)=>tt===void 0?Ye:[...Ye,tt],[])}}function parseUndefinedDef(e){return{not:parseAnyDef(e)}}function parseUnknownDef(e){return parseAnyDef(e)}const parseReadonlyDef=(e,t)=>parseDef(e.innerType._def,t),selectParser=(e,t,Ye)=>{switch(t){case ZodFirstPartyTypeKind.ZodString:return parseStringDef(e,Ye);case ZodFirstPartyTypeKind.ZodNumber:return parseNumberDef(e,Ye);case ZodFirstPartyTypeKind.ZodObject:return parseObjectDef(e,Ye);case ZodFirstPartyTypeKind.ZodBigInt:return parseBigintDef(e,Ye);case ZodFirstPartyTypeKind.ZodBoolean:return parseBooleanDef();case ZodFirstPartyTypeKind.ZodDate:return parseDateDef(e,Ye);case ZodFirstPartyTypeKind.ZodUndefined:return parseUndefinedDef(Ye);case ZodFirstPartyTypeKind.ZodNull:return parseNullDef(Ye);case ZodFirstPartyTypeKind.ZodArray:return parseArrayDef(e,Ye);case ZodFirstPartyTypeKind.ZodUnion:case ZodFirstPartyTypeKind.ZodDiscriminatedUnion:return parseUnionDef(e,Ye);case ZodFirstPartyTypeKind.ZodIntersection:return parseIntersectionDef(e,Ye);case ZodFirstPartyTypeKind.ZodTuple:return parseTupleDef(e,Ye);case ZodFirstPartyTypeKind.ZodRecord:return parseRecordDef(e,Ye);case ZodFirstPartyTypeKind.ZodLiteral:return parseLiteralDef(e,Ye);case ZodFirstPartyTypeKind.ZodEnum:return parseEnumDef(e);case ZodFirstPartyTypeKind.ZodNativeEnum:return parseNativeEnumDef(e);case ZodFirstPartyTypeKind.ZodNullable:return parseNullableDef(e,Ye);case ZodFirstPartyTypeKind.ZodOptional:return parseOptionalDef(e,Ye);case ZodFirstPartyTypeKind.ZodMap:return parseMapDef(e,Ye);case ZodFirstPartyTypeKind.ZodSet:return parseSetDef(e,Ye);case ZodFirstPartyTypeKind.ZodLazy:return()=>e.getter()._def;case ZodFirstPartyTypeKind.ZodPromise:return parsePromiseDef(e,Ye);case ZodFirstPartyTypeKind.ZodNaN:case ZodFirstPartyTypeKind.ZodNever:return parseNeverDef(Ye);case ZodFirstPartyTypeKind.ZodEffects:return parseEffectsDef(e,Ye);case ZodFirstPartyTypeKind.ZodAny:return parseAnyDef(Ye);case ZodFirstPartyTypeKind.ZodUnknown:return parseUnknownDef(Ye);case ZodFirstPartyTypeKind.ZodDefault:return parseDefaultDef(e,Ye);case ZodFirstPartyTypeKind.ZodBranded:return parseBrandedDef(e,Ye);case ZodFirstPartyTypeKind.ZodReadonly:return parseReadonlyDef(e,Ye);case ZodFirstPartyTypeKind.ZodCatch:return parseCatchDef(e,Ye);case ZodFirstPartyTypeKind.ZodPipeline:return parsePipelineDef(e,Ye);case ZodFirstPartyTypeKind.ZodFunction:case ZodFirstPartyTypeKind.ZodVoid:case ZodFirstPartyTypeKind.ZodSymbol:return;default:return(tt=>{})()}};function parseDef(e,t,Ye=!1){var ot;const tt=t.seen.get(e);if(t.override){const ct=(ot=t.override)==null?void 0:ot.call(t,e,t,tt,Ye);if(ct!==ignoreOverride)return ct}if(tt&&!Ye){const ct=get$ref(tt,t);if(ct!==void 0)return ct}const rt={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,rt);const nt=selectParser(e,e.typeName,t),at=typeof nt=="function"?parseDef(nt(),t):nt;if(at&&addMeta(e,t,at),t.postProcess){const ct=t.postProcess(at,e,t);return rt.jsonSchema=at,ct}return rt.jsonSchema=at,at}const get$ref=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:getRelativePath(t.currentPath,e.path)};case"none":case"seen":return e.path.length<t.currentPath.length&&e.path.every((Ye,tt)=>t.currentPath[tt]===Ye)?(console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),parseAnyDef(t)):t.$refStrategy==="seen"?parseAnyDef(t):void 0}},addMeta=(e,t,Ye)=>(e.description&&(Ye.description=e.description,t.markdownDescription&&(Ye.markdownDescription=e.description)),Ye),zodToJsonSchema=(e,t)=>{const Ye=getRefs(t);let tt;const rt=t==null?void 0:t.name,nt=parseDef(e._def,Ye,!1)??parseAnyDef(Ye);Ye.flags.hasReferencedOpenAiAnyType&&(tt||(tt={}),tt[Ye.openAiAnyTypeName]||(tt[Ye.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:Ye.$refStrategy==="relative"?"1":[...Ye.basePath,Ye.definitionPath,Ye.openAiAnyTypeName].join("/")}}));const at=rt===void 0?tt?{...nt,[Ye.definitionPath]:tt}:nt:{$ref:[...Ye.$refStrategy==="relative"?[]:Ye.basePath,Ye.definitionPath,rt].join("/"),[Ye.definitionPath]:{...tt,[rt]:nt}};return Ye.target==="jsonSchema7"?at.$schema="http://json-schema.org/draft-07/schema#":(Ye.target==="jsonSchema2019-09"||Ye.target==="openAi")&&(at.$schema="https://json-schema.org/draft/2019-09/schema#"),Ye.target==="openAi"&&("anyOf"in at||"oneOf"in at||"allOf"in at||"type"in at&&Array.isArray(at.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),at},createUITool=e=>{const t=e.execute||(async(Ye,tt)=>{var rt;try{const nt=await((rt=e.handler)==null?void 0:rt.call(e,Ye,tt));return typeof nt=="string"?[{type:"text",text:nt}]:nt.decisions?nt:[{type:"text",text:JSON.stringify(nt)}]}catch(nt){return[{type:"text",text:`Error: ${nt}`}]}});return{...e,execute:t}},createJSONDefineTool=e=>({name:e.name,description:e.description,parameters:e.isPureParams?e.parameters:zodToJsonSchema(object$1(e.parameters))});class ToolManager{constructor(){Dr(this,"tools",new Map);Dr(this,"waitingMap",new Map)}bindTool(t){this.tools.has(t.name)&&t.name!=="__default__"&&console.warn(`Tool with name ${t.name} already exists`),this.tools.set(t.name,t)}bindTools(t){t.forEach(Ye=>this.bindTool(Ye))}getAllTools(){return Array.from(this.tools.values())}getTool(t){return this.tools.get(t)}removeTool(t){return this.tools.delete(t)}clearTools(){this.tools.clear()}reset(){this.clearTools(),this.clearWaiting()}clearWaiting(){this.waitingMap.clear()}async callTool(t,Ye,tt){var nt;const rt=this.getTool(t)||this.getTool("__default__");return await((nt=rt.execute)==null?void 0:nt.call(rt,Ye,tt))}async toJSON(t,Ye=!0){return Array.from(this.tools.values()).filter(tt=>Ye?!tt.onlyRender:!0).filter(tt=>!tt.allowGraph||tt.allowGraph.includes(t)).map(tt=>createJSONDefineTool(tt))}doneWaiting(t,Ye){return this.waitingMap.has(t)?(this.waitingMap.get(t)(Ye),this.waitingMap.delete(t),!0):(console.warn(`Waiting for tool ${t} not found`),!1)}isAllToolCompleted(){return this.waitingMap.size}waitForDone(t){return new Promise((tt,rt)=>{this.waitingMap.set(t,tt)})}static waitForUIDone(t,Ye){return Ye.client.tools.waitForDone(Ye.message.id)}}class SpendTime{constructor(){Dr(this,"timeCounter",new Map)}start(t){this.timeCounter.set(t,[new Date])}end(t){var Ye;this.timeCounter.set(t,[((Ye=this.timeCounter.get(t))==null?void 0:Ye[0])||new Date,new Date])}setSpendTime(t){this.timeCounter.has(t)?this.end(t):this.start(t)}getStartTime(t){var Ye;return((Ye=this.timeCounter.get(t))==null?void 0:Ye[0])||new Date}getEndTime(t){var Ye;return((Ye=this.timeCounter.get(t))==null?void 0:Ye[1])||new Date}getSpendTime(t){const[Ye,tt=new Date]=this.timeCounter.get(t)||[new Date,new Date];return tt.getTime()-Ye.getTime()}}class StreamingMessageType{static isTool(t){return t.type==="tool"}static isToolAssistant(t){var Ye,tt;return t.type==="ai"&&(((Ye=t.tool_calls)==null?void 0:Ye.length)||((tt=t.tool_call_chunks)==null?void 0:tt.length))}}class MessageProcessor{constructor(){Dr(this,"streamingMessage",[]);Dr(this,"graphMessages",[]);Dr(this,"spendTime",new SpendTime)}getStreamingMessages(){return[...this.streamingMessage]}setStreamingMessages(t){this.streamingMessage=t}clearStreamingMessages(){this.streamingMessage=[]}getGraphMessages(){return[...this.graphMessages]}setGraphMessages(t){this.graphMessages=t}updateStreamingMessage(t){const Ye=this.streamingMessage[this.streamingMessage.length-1];if(!(Ye!=null&&Ye.id)||t.id!==Ye.id){this.streamingMessage.push(t);return}this.streamingMessage[this.streamingMessage.length-1]=t}combineGraphMessagesWithStreamingMessages(){const t=new Map(this.streamingMessage.map(Ye=>[Ye.id,Ye]));return[...this.graphMessages.map(Ye=>{if(t.has(Ye.id)){const tt=t.get(Ye.id);return t.delete(Ye.id),tt}return Ye}),...t.values()]}cloneMessage(t){return JSON.parse(JSON.stringify(t))}attachInfoForMessage(t){var tt,rt,nt;const Ye=[...t];for(const at of Ye){at.additional_kwargs||(at.additional_kwargs={});const ot=((tt=at.additional_kwargs)==null?void 0:tt.create_time)||formatFullTime(this.spendTime.getStartTime(at.id)),ct=((rt=at.additional_kwargs)==null?void 0:rt.update_time)||formatFullTime(this.spendTime.getEndTime(at.id));if(at.additional_kwargs.create_time=ot,at.additional_kwargs.update_time=ct,at.unique_id=at.tool_call_id||at.id,at.spend_time=new Date(ct).getTime()-new Date(ot).getTime(),!at.usage_metadata&&((nt=at.response_metadata)!=null&&nt.usage)){const Et=at.response_metadata.usage;at.usage_metadata={...Et,input_tokens:Et.prompt_tokens,output_tokens:Et.completion_tokens,total_tokens:Et.total_tokens}}}return Ye}composeToolMessages(t){var nt,at;const Ye=[],tt=new Map,rt=new Map;for(const ot of t)if(!(StreamingMessageType.isToolAssistant(ot)&&((nt=ot.tool_calls||ot.tool_call_chunks)==null||nt.forEach(ct=>{tt.set(ct.id,ct),rt.set(ct.id,ot)}),!ot.content))){if(StreamingMessageType.isTool(ot)&&!ot.tool_input){const ct=tt.get(ot.tool_call_id),Et=rt.get(ot.tool_call_id);if(ct){ot.tool_input=typeof ct.args!="string"?JSON.stringify(ct.args):ct.args;const At=!!ot.content;ot.done=At,ot.additional_kwargs={...(Et==null?void 0:Et.additional_kwargs)||{},...ot.additional_kwargs||{},done:At}}Et&&(ot.usage_metadata=Et.usage_metadata,ot.node_name=Et.name,ot.name||(ot.name=(at=Et.tool_calls.find(At=>At.id===ot.tool_call_id))==null?void 0:at.name))}Ye.push(ot)}return Ye}renderMessages(t,Ye,tt){var ct;const rt=new Map,nt=new Set,at=[],ot=this.combineGraphMessagesWithStreamingMessages();for(let Et=ot.length-1;Et>=0;Et--){const At=this.cloneMessage(ot[Et]);if(!At.id){at.unshift(At);continue}if(At.type==="ai"&&(At.name||(At.name=Ye().name)),StreamingMessageType.isToolAssistant(At)){const Rt=At;rt.set(At.id,Rt);const qt=((ct=Rt.tool_calls)!=null&&ct.length?Rt.tool_calls:Rt.tool_call_chunks).filter(Ut=>!nt.has(Ut.id)).map((Ut,Vt)=>{var zt,Gt,Kt,Yt;return{type:"tool",additional_kwargs:{},tool_input:(Yt=(Kt=(Gt=(zt=Rt.additional_kwargs)==null?void 0:zt.tool_calls)==null?void 0:Gt[Vt])==null?void 0:Kt.function)==null?void 0:Yt.arguments,id:Ut.id,name:Ut.name,response_metadata:{},tool_call_id:Ut.id,content:""}});for(const Ut of qt)rt.has(Ut.id)||(at.unshift(Ut),rt.set(Ut.id,Ut));at.unshift(Rt)}else At.type==="tool"&&At.tool_call_id&&nt.add(At.tool_call_id),rt.set(At.id,At),at.unshift(At)}return this.processMessages(at,t,tt)}foldTreeMessages(t,Ye,tt){const rt=Object.entries((Ye==null?void 0:Ye.task_store)||{}).map(([At,Rt])=>[At,Rt.messages]),nt=new Map(rt),at=new Set,ot=new Map(Object.entries(tt||{}).map(([At,Rt])=>{if(Rt!=null&&Rt.parent_id)return at.add(At),[At,Rt==null?void 0:Rt.parent_id]}).filter(At=>At!==void 0)),ct=nt,Et=[];for(const At of t)if(!at.has(At.id))Et.push(At);else{const jt=ot.get(At.id),qt=ct.get(jt);qt?qt.push(At):ct.set(jt,[At])}for(const At of Et)if(At.sub_messages=ct.get(At.id)||[],At.type==="tool"&&ct.has(At.tool_call_id)){At.sub_messages.unshift(...ct.get(At.tool_call_id));const Rt=At.sub_messages.filter((jt,qt,Ut)=>Ut.findIndex(Vt=>Vt.id===jt.id)===qt);At.sub_messages=this.beforeFold(Rt)}return Et}beforeFold(t){const Ye=this.composeToolMessages(t);return this.attachInfoForMessage(Ye)}processMessages(t,Ye,tt){return this.foldTreeMessages(this.beforeFold(t),Ye,tt)}}async function revertChatTo(e,t,Ye,tt){const rt=await e.threads.get(t),nt=rt.values.messages,at=nt.findIndex(Rt=>Rt.id===Ye);if(at===-1)throw new Error(`Message id ${Ye} not found`);const ot=tt.includeMessageId?at:at+1,ct=nt.slice(ot),Et={...rt.values,messages:ct.map(Rt=>({type:"remove",id:Rt.id}))},At=await e.threads.updateState(t,{values:Et});return{state:{messages:nt.slice(0,ot)},checkpoint:At}}const isObject$6=e=>typeof e=="object"&&e!==null,isObjectCustom=e=>isObject$6(e)&&!(e instanceof RegExp)&&!(e instanceof Error)&&!(e instanceof Date)&&!(globalThis.Blob&&e instanceof globalThis.Blob),mapObjectSkip=Symbol("mapObjectSkip"),_mapObject=(e,t,Ye,tt=new WeakMap)=>{if(Ye={deep:!1,target:{},...Ye},tt.has(e))return tt.get(e);tt.set(e,Ye.target);const{target:rt}=Ye;delete Ye.target;const nt=at=>at.map(ot=>isObjectCustom(ot)?_mapObject(ot,t,Ye,tt):ot);if(Array.isArray(e))return nt(e);for(const[at,ot]of Object.entries(e)){const ct=t(at,ot,e);if(ct===mapObjectSkip)continue;let[Et,At,{shouldRecurse:Rt=!0}={}]=ct;Et!=="__proto__"&&(Ye.deep&&Rt&&isObjectCustom(At)&&(At=Array.isArray(At)?nt(At):_mapObject(At,t,Ye,tt)),rt[Et]=At)}return rt};function mapObject$1(e,t,Ye){if(!isObject$6(e))throw new TypeError(`Expected an object, got \`${e}\` (${typeof e})`);if(Array.isArray(e))throw new TypeError("Expected an object, got an array");return _mapObject(e,t,Ye)}const UPPERCASE=/[\p{Lu}]/u,LOWERCASE=/[\p{Ll}]/u,LEADING_CAPITAL=/^[\p{Lu}](?![\p{Lu}])/gu,IDENTIFIER=/([\p{Alpha}\p{N}_]|$)/u,SEPARATORS=/[_.\- ]+/,LEADING_SEPARATORS=new RegExp("^"+SEPARATORS.source),SEPARATORS_AND_IDENTIFIER=new RegExp(SEPARATORS.source+IDENTIFIER.source,"gu"),NUMBERS_AND_IDENTIFIER=new RegExp("\\d+"+IDENTIFIER.source,"gu"),preserveCamelCase=(e,t,Ye,tt)=>{let rt=!1,nt=!1,at=!1,ot=!1;for(let ct=0;ct<e.length;ct++){const Et=e[ct];ot=ct>2?e[ct-3]==="-":!0,rt&&UPPERCASE.test(Et)?(e=e.slice(0,ct)+"-"+e.slice(ct),rt=!1,at=nt,nt=!0,ct++):nt&&at&&LOWERCASE.test(Et)&&(!ot||tt)?(e=e.slice(0,ct-1)+"-"+e.slice(ct-1),at=nt,nt=!1,rt=!0):(rt=t(Et)===Et&&Ye(Et)!==Et,at=nt,nt=Ye(Et)===Et&&t(Et)!==Et)}return e},preserveConsecutiveUppercase=(e,t)=>(LEADING_CAPITAL.lastIndex=0,e.replaceAll(LEADING_CAPITAL,Ye=>t(Ye))),postProcess=(e,t)=>(SEPARATORS_AND_IDENTIFIER.lastIndex=0,NUMBERS_AND_IDENTIFIER.lastIndex=0,e.replaceAll(NUMBERS_AND_IDENTIFIER,(Ye,tt,rt)=>["_","-"].includes(e.charAt(rt+Ye.length))?Ye:t(Ye)).replaceAll(SEPARATORS_AND_IDENTIFIER,(Ye,tt)=>t(tt)));function camelCase(e,t){if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");if(t={pascalCase:!1,preserveConsecutiveUppercase:!1,...t},Array.isArray(e)?e=e.map(nt=>nt.trim()).filter(nt=>nt.length).join("-"):e=e.trim(),e.length===0)return"";const Ye=t.locale===!1?nt=>nt.toLowerCase():nt=>nt.toLocaleLowerCase(t.locale),tt=t.locale===!1?nt=>nt.toUpperCase():nt=>nt.toLocaleUpperCase(t.locale);return e.length===1?SEPARATORS.test(e)?"":t.pascalCase?tt(e):Ye(e):(e!==Ye(e)&&(e=preserveCamelCase(e,Ye,tt,t.preserveConsecutiveUppercase)),e=e.replace(LEADING_SEPARATORS,""),e=t.preserveConsecutiveUppercase?preserveConsecutiveUppercase(e,Ye):Ye(e),t.pascalCase&&(e=tt(e.charAt(0))+e.slice(1)),postProcess(e,tt))}var ei,Kn,ra,Oo,Ks,Do,Nn,uc,Ei,Dg,Df,Pf,Mf,Pg,dc;class QuickLRU extends Map{constructor(Ye={}){super();Va(this,Nn);Va(this,ei,0);Va(this,Kn,new Map);Va(this,ra,new Map);Va(this,Oo);Va(this,Ks);Va(this,Do);if(!(Ye.maxSize&&Ye.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");if(typeof Ye.maxAge=="number"&&Ye.maxAge===0)throw new TypeError("`maxAge` must be a number greater than 0");Bn(this,Oo,Ye.maxSize),Bn(this,Ks,Ye.maxAge||Number.POSITIVE_INFINITY),Bn(this,Do,Ye.onEviction)}get __oldCache(){return an(this,ra)}get(Ye){if(an(this,Kn).has(Ye)){const tt=an(this,Kn).get(Ye);return Wn(this,Nn,Df).call(this,Ye,tt)}if(an(this,ra).has(Ye)){const tt=an(this,ra).get(Ye);if(Wn(this,Nn,Ei).call(this,Ye,tt)===!1)return Wn(this,Nn,Pg).call(this,Ye,tt),tt.value}}set(Ye,tt,{maxAge:rt=an(this,Ks)}={}){const nt=typeof rt=="number"&&rt!==Number.POSITIVE_INFINITY?Date.now()+rt:void 0;return an(this,Kn).has(Ye)?an(this,Kn).set(Ye,{value:tt,expiry:nt}):Wn(this,Nn,Mf).call(this,Ye,{value:tt,expiry:nt}),this}has(Ye){return an(this,Kn).has(Ye)?!Wn(this,Nn,Ei).call(this,Ye,an(this,Kn).get(Ye)):an(this,ra).has(Ye)?!Wn(this,Nn,Ei).call(this,Ye,an(this,ra).get(Ye)):!1}peek(Ye){if(an(this,Kn).has(Ye))return Wn(this,Nn,Pf).call(this,Ye,an(this,Kn));if(an(this,ra).has(Ye))return Wn(this,Nn,Pf).call(this,Ye,an(this,ra))}expiresIn(Ye){const tt=an(this,Kn).get(Ye)??an(this,ra).get(Ye);if(tt)return tt.expiry?tt.expiry-Date.now():Number.POSITIVE_INFINITY}delete(Ye){const tt=an(this,Kn).delete(Ye);return tt&&$f(this,ei)._--,an(this,ra).delete(Ye)||tt}clear(){an(this,Kn).clear(),an(this,ra).clear(),Bn(this,ei,0)}resize(Ye){if(!(Ye&&Ye>0))throw new TypeError("`maxSize` must be a number greater than 0");const tt=[...Wn(this,Nn,dc).call(this)],rt=tt.length-Ye;rt<0?(Bn(this,Kn,new Map(tt)),Bn(this,ra,new Map),Bn(this,ei,tt.length)):(rt>0&&Wn(this,Nn,uc).call(this,tt.slice(0,rt)),Bn(this,ra,new Map(tt.slice(rt))),Bn(this,Kn,new Map),Bn(this,ei,0)),Bn(this,Oo,Ye)}evict(Ye=1){const tt=Number(Ye);if(!tt||tt<=0)return;const rt=[...Wn(this,Nn,dc).call(this)],nt=Math.trunc(Math.min(tt,Math.max(rt.length-1,0)));nt<=0||(Wn(this,Nn,uc).call(this,rt.slice(0,nt)),Bn(this,ra,new Map(rt.slice(nt))),Bn(this,Kn,new Map),Bn(this,ei,0))}*keys(){for(const[Ye]of this)yield Ye}*values(){for(const[,Ye]of this)yield Ye}*[Symbol.iterator](){for(const Ye of an(this,Kn)){const[tt,rt]=Ye;Wn(this,Nn,Ei).call(this,tt,rt)===!1&&(yield[tt,rt.value])}for(const Ye of an(this,ra)){const[tt,rt]=Ye;an(this,Kn).has(tt)||Wn(this,Nn,Ei).call(this,tt,rt)===!1&&(yield[tt,rt.value])}}*entriesDescending(){let Ye=[...an(this,Kn)];for(let tt=Ye.length-1;tt>=0;--tt){const rt=Ye[tt],[nt,at]=rt;Wn(this,Nn,Ei).call(this,nt,at)===!1&&(yield[nt,at.value])}Ye=[...an(this,ra)];for(let tt=Ye.length-1;tt>=0;--tt){const rt=Ye[tt],[nt,at]=rt;an(this,Kn).has(nt)||Wn(this,Nn,Ei).call(this,nt,at)===!1&&(yield[nt,at.value])}}*entriesAscending(){for(const[Ye,tt]of Wn(this,Nn,dc).call(this))yield[Ye,tt.value]}get size(){if(!an(this,ei))return an(this,ra).size;let Ye=0;for(const tt of an(this,ra).keys())an(this,Kn).has(tt)||Ye++;return Math.min(an(this,ei)+Ye,an(this,Oo))}get maxSize(){return an(this,Oo)}get maxAge(){return an(this,Ks)}entries(){return this.entriesAscending()}forEach(Ye,tt=this){for(const[rt,nt]of this.entriesAscending())Ye.call(tt,nt,rt,this)}get[Symbol.toStringTag](){return"QuickLRU"}toString(){return`QuickLRU(${this.size}/${this.maxSize})`}[Symbol.for("nodejs.util.inspect.custom")](){return this.toString()}}ei=new WeakMap,Kn=new WeakMap,ra=new WeakMap,Oo=new WeakMap,Ks=new WeakMap,Do=new WeakMap,Nn=new WeakSet,uc=function(Ye){if(typeof an(this,Do)=="function")for(const[tt,rt]of Ye)an(this,Do).call(this,tt,rt.value)},Ei=function(Ye,tt){return typeof tt.expiry=="number"&&tt.expiry<=Date.now()?(typeof an(this,Do)=="function"&&an(this,Do).call(this,Ye,tt.value),this.delete(Ye)):!1},Dg=function(Ye,tt){if(Wn(this,Nn,Ei).call(this,Ye,tt)===!1)return tt.value},Df=function(Ye,tt){return tt.expiry?Wn(this,Nn,Dg).call(this,Ye,tt):tt.value},Pf=function(Ye,tt){const rt=tt.get(Ye);return Wn(this,Nn,Df).call(this,Ye,rt)},Mf=function(Ye,tt){an(this,Kn).set(Ye,tt),$f(this,ei)._++,an(this,ei)>=an(this,Oo)&&(Bn(this,ei,0),Wn(this,Nn,uc).call(this,an(this,ra)),Bn(this,ra,an(this,Kn)),Bn(this,Kn,new Map))},Pg=function(Ye,tt){an(this,ra).delete(Ye),Wn(this,Nn,Mf).call(this,Ye,tt)},dc=function*(){for(const Ye of an(this,ra)){const[tt,rt]=Ye;an(this,Kn).has(tt)||Wn(this,Nn,Ei).call(this,tt,rt)===!1&&(yield Ye)}for(const Ye of an(this,Kn)){const[tt,rt]=Ye;Wn(this,Nn,Ei).call(this,tt,rt)===!1&&(yield Ye)}};const has$3=(e,t)=>e.some(Ye=>typeof Ye=="string"?Ye===t:(Ye.lastIndex=0,Ye.test(t))),isNumericKey=e=>e.trim()!==""&&!Number.isNaN(Number(e)),cache=new QuickLRU({maxSize:1e5}),isBuiltIn=e=>ArrayBuffer.isView(e)||e instanceof Date||e instanceof RegExp||e instanceof Error||e instanceof Map||e instanceof Set||e instanceof WeakMap||e instanceof WeakSet||e instanceof Promise,isObject$5=e=>typeof e=="object"&&e!==null&&!isBuiltIn(e),transform$4=(e,t={},Ye=new WeakMap,tt)=>{if(!isObject$5(e))return e;if(Ye.has(e))return Ye.get(e);const{exclude:rt,pascalCase:nt=!1,stopPaths:at,deep:ot=!1,preserveConsecutiveUppercase:ct=!1}=t,Et=new Set(at);if(Array.isArray(e)){const Ut=[];Ye.set(e,Ut);for(const Vt of e)Ut.push(isObject$5(Vt)?transform$4(Vt,t,Ye,tt):Vt);return Ut}const At={};Ye.set(e,At);const jt=mapObject$1(e,(Ut=>(Vt,zt)=>{if(ot&&isObject$5(zt)){const Gt=Ut===void 0?Vt:`${Ut}.${Vt}`;Et.has(Gt)||(zt=Array.isArray(zt)?zt.map(Kt=>isObject$5(Kt)?transform$4(Kt,t,Ye,Gt):Kt):transform$4(zt,t,Ye,Gt))}if(typeof Vt=="string"&&!isNumericKey(Vt)&&!(rt&&has$3(rt,Vt))){const Gt=nt?`${Vt}_`:Vt;if(cache.has(Gt))Vt=cache.get(Gt);else{const Kt=Vt.match(/^[_$]*/)[0],Yt=camelCase(Vt.slice(Kt.length),{pascalCase:nt,locale:!1,preserveConsecutiveUppercase:ct});Vt=Kt+Yt,Vt.length<100&&cache.set(Gt,Vt)}}return[Vt,zt]})(tt),{deep:!1});Object.assign(At,jt);const qt=Object.getOwnPropertySymbols(e);for(const Ut of qt)At[Ut]=ot&&isObject$5(e[Ut])?transform$4(e[Ut],t,Ye,tt):e[Ut];return At};function camelcaseKeys(e,t){const Ye=new WeakMap;return Array.isArray(e)?e.map(tt=>isObject$5(tt)?transform$4(tt,t,Ye,void 0):tt):transform$4(e,t,Ye)}class LangGraphClient extends EventEmitter{constructor(Ye){super();Dr(this,"client");Dr(this,"currentAssistant",null);Dr(this,"currentThread",null);Dr(this,"tools",new ToolManager);Dr(this,"availableAssistants",[]);Dr(this,"graphState",{});Dr(this,"currentRun");Dr(this,"stopController",null);Dr(this,"messageProcessor");Dr(this,"legacyMode");Dr(this,"_status","idle");Dr(this,"messagesMetadata",{});Dr(this,"humanInTheLoop",null);Dr(this,"interruptData",null);Dr(this,"graphPosition","");Dr(this,"extraParams",{});this.client=Ye.client,this.legacyMode=Ye.legacyMode??!1,this.messageProcessor=new MessageProcessor}get assistants(){return this.client.assistants}get threads(){return this.client.threads}get runs(){return this.client.runs}get status(){return this._status}listAssistants(){return this.assistants.search({metadata:null,offset:0,limit:100})}async initAssistant(Ye,tt={}){try{const rt=await this.listAssistants();if(this.availableAssistants=rt,rt.length>0)if(Ye){if(this.currentAssistant=rt.find(nt=>nt.graph_id===Ye)||null,!this.currentAssistant){if(tt.fallbackToAvailableAssistants)return this.currentAssistant=this.availableAssistants[0],this.currentAssistant;throw new Error("Agent not found: "+Ye)}}else return this.currentAssistant=rt[0],this.currentAssistant;else throw new Error("No assistants found")}catch(rt){throw console.error("Failed to initialize LangGraphClient:",rt),rt}}async createThread({threadId:Ye,graphId:tt}={}){try{return this.currentThread=await this.threads.create({threadId:Ye,graphId:tt}),this.currentThread}catch(rt){throw console.error("Failed to create new thread:",rt),rt}}graphVisualize(){var Ye;return this.assistants.getGraph((Ye=this.currentAssistant)==null?void 0:Ye.assistant_id,{xray:!0})}async listThreads(Ye={}){return this.threads.search({sortOrder:Ye.sortOrder||"desc",sortBy:Ye.sortBy||"updated_at",offset:Ye.offset||0,limit:Ye.limit||10,without_details:!0})}async deleteThread(Ye){return this.threads.delete(Ye)}async resetThread(Ye,tt){var nt,at;await this.initAssistant(Ye),this.currentThread=await this.threads.get(tt),this.graphState=this.currentThread.values;const rt=((nt=this.graphState)==null?void 0:nt.messages)||[];return this.messageProcessor.setGraphMessages(rt),this.emit("value",{event:"messages/partial",data:{messages:this.messageProcessor.getGraphMessages()}}),((at=this.currentThread)==null?void 0:at.status)==="interrupted"&&this.sendMessage([],{joinRunId:this.currentThread.thread_id}),this.currentThread}async resetStream(){const Ye=await this.runs.list(this.currentThread.thread_id),tt=Ye==null?void 0:Ye.find(rt=>rt.status==="running"||rt.status==="pending");tt&&await this.sendMessage([],{joinRunId:tt.run_id})}cloneMessage(Ye){return this.messageProcessor.cloneMessage(Ye)}get renderMessage(){return this.messageProcessor.renderMessages(this.graphState,()=>this.getGraphNodeNow(),this.messagesMetadata)}get tokenCounter(){return this.messageProcessor.getGraphMessages().reduce((Ye,tt)=>{var rt,nt,at,ot,ct;if(tt.usage_metadata)Ye.total_tokens+=((rt=tt.usage_metadata)==null?void 0:rt.total_tokens)||0,Ye.input_tokens+=((nt=tt.usage_metadata)==null?void 0:nt.input_tokens)||0,Ye.output_tokens+=((at=tt.usage_metadata)==null?void 0:at.output_tokens)||0;else if((ot=tt.response_metadata)!=null&&ot.usage){const Et=(ct=tt.response_metadata)==null?void 0:ct.usage;Ye.total_tokens+=Et.total_tokens||0,Ye.input_tokens+=Et.prompt_tokens||0,Ye.output_tokens+=Et.completion_tokens||0}return Ye},{total_tokens:0,input_tokens:0,output_tokens:0})}isFELocking(Ye){var nt;const tt=Ye[Ye.length-1];if(!tt)return!1;const rt=this.tools.getTool(tt==null?void 0:tt.name);return rt&&rt.render&&(tt==null?void 0:tt.type)==="tool"&&!((nt=tt==null?void 0:tt.additional_kwargs)!=null&&nt.done)}cancelRun(){var Ye,tt;(Ye=this.currentThread)!=null&&Ye.thread_id&&((tt=this.currentRun)!=null&&tt.run_id)&&this.runs.cancel(this.currentThread.thread_id,this.currentRun.run_id)}async revertChatTo(Ye,tt){const{state:rt,checkpoint:nt}=await revertChatTo(this.client,this.currentThread.thread_id,Ye,tt);return this.graphState=rt,this.messageProcessor.clearStreamingMessages(),this.messageProcessor.setGraphMessages(rt.messages),rt}async sendMessage(Ye,{joinRunId:tt,extraParams:rt,_debug:nt,command:at}={}){if(!this.currentAssistant)throw new Error("Thread or Assistant not initialized");this.currentThread||(await this.createThread({graphId:this.currentAssistant.graph_id}),this.emit("thread",{event:"thread/create",data:{thread:this.currentThread}})),this.interruptData&&(this.interruptData=null,this.emit("interruptChange",{event:"interruptChange"}));const ot=Array.isArray(Ye)?Ye:[{type:"human",content:Ye}],ct=[];this._status="busy",this.emit("start",{event:"start"});const At=await(async()=>{if(nt!=null&&nt.streamResponse)return nt.streamResponse;const jt=this.legacyMode?qt=>{ct.push(qt),this.processStreamChunk(qt,at)}:void 0;return tt?this.runs.joinStream(this.currentThread.thread_id,tt,{onCallback:jt}):this.runs.stream(this.currentThread.thread_id,this.currentAssistant.assistant_id,{input:{...this.graphState,...this.extraParams,...rt||{},messages:ot,fe_tools:await this.tools.toJSON(this.currentAssistant.graph_id)},streamMode:["messages","values"],streamSubgraphs:!0,command:at,onCallback:jt})})();if(!this.legacyMode)for await(const jt of At)ct.push(jt),this.processStreamChunk(jt,at);const Rt=await this.runFETool();return await this.responseHumanInTheLoop(),Rt&&ct.push(...Rt),this._status="idle",this.emit("done",{event:"done"}),this.messageProcessor.clearStreamingMessages(),ct}getGraphPosition(){return this.graphPosition.split("|").map(Ye=>{const[tt,rt]=Ye.split(":");return{id:rt,name:tt}})}getGraphNodeNow(){const Ye=this.getGraphPosition();return Ye[Ye.length-1]}processStreamChunk(Ye,tt){if(Ye.event==="metadata")this.currentRun=Ye.data;else if(Ye.event==="error"||Ye.event==="Error"||Ye.event==="__stream_error__")this._status="error",this.emit("error",Ye);else{if(Ye.event==="messages/metadata")return Object.assign(this.messagesMetadata,Ye.data),!0;if(Ye.event==="messages/partial"||Ye.event==="messages/complete"){for(const rt of Ye.data)this.messageProcessor.updateStreamingMessage(rt),this.messageProcessor.spendTime.setSpendTime(rt.id);return this.emit("message",Ye),!0}else if(Ye.event==="values"){const rt=Ye.data;if(rt!=null&&rt.__interrupt__){const nt=this.getHumanInTheLoopData(rt==null?void 0:rt.__interrupt__);nt?this.humanInTheLoop=nt:this.interruptData=rt.__interrupt__}else if(rt!=null&&rt.messages){const nt=!!(tt!=null&&tt.resume),at=rt.messages.length>=this.messageProcessor.getGraphMessages().length;(!nt||nt&&at)&&(this.messageProcessor.setGraphMessages(rt.messages),this.emit("value",Ye)),this.graphState=Ye.data}return!0}else Ye.event.startsWith("values|")&&(this.graphPosition=Ye.event.split("|")[1])}return!1}runFETool(){var rt;const Ye=this.messageProcessor.getStreamingMessages(),tt=Ye[Ye.length-1];if(tt&&tt.type==="ai"&&(rt=tt.tool_calls)!=null&&rt.length){const nt=tt.tool_calls.map(at=>{const ot={...at,tool_call_id:at.id,tool_input:JSON.stringify(at.args),additional_kwargs:{}};return this.callFETool(ot,at.args).catch(ct=>console.warn(ct))});return console.log("batch call tools",nt.length),this._status="interrupted",this.currentThread.status="interrupted",this.emit("interruptChange",{event:"interruptChange"}),Promise.all(nt)}}getHumanInTheLoopData(Ye){if(z$6.array(z$6.object({id:z$6.string(),value:z$6.union([z$6.object({review_configs:z$6.array(z$6.any())}),z$6.object({reviewConfigs:z$6.array(z$6.any())})])})).safeParse(Ye).success){const rt=Ye.map(nt=>nt&&"review_configs"in nt.value?{id:nt.id,value:{actionRequests:nt.value.action_requests,reviewConfigs:camelcaseKeys(nt.value.review_configs,{deep:!0})}}:nt);return rt.forEach(nt=>(nt.value.actionRequests.forEach(at=>{at.id=at.id||createActionRequestID(at)}),nt)),{interruptData:rt,result:{}}}}async responseHumanInTheLoop(){if(this.humanInTheLoop){const Ye=this.humanInTheLoop;return this.humanInTheLoop=null,this.resume({decisions:Ye.interruptData[0].value.actionRequests.map(tt=>Ye.result[tt.id])})}}async callFETool(Ye,tt){const rt=this;await this.tools.callTool(Ye.name,tt,{client:rt,message:Ye})}resume(Ye){return this.sendMessage([],{command:{resume:Ye}})}doneFEToolWaiting(Ye,tt){var nt;!this.tools.doneWaiting(Ye,tt)&&((nt=this.currentThread)==null?void 0:nt.status)==="interrupted"&&this.resume(tt)}doneHumanInTheLoopWaiting(Ye,tt,rt){this.tools.doneWaiting(Ye,rt),this.humanInTheLoop&&(this.humanInTheLoop.result[tt]=rt)}getCurrentThread(){return this.currentThread}getCurrentAssistant(){return this.currentAssistant}async reset(){var Ye;await this.initAssistant((Ye=this.currentAssistant)==null?void 0:Ye.graph_id),this.currentThread=null,this.graphState={},this.messageProcessor.setGraphMessages([]),this.messageProcessor.clearStreamingMessages(),this.currentRun=void 0,this.tools.clearWaiting(),this._status="idle",this.emit("value",{event:"messages/partial",data:{messages:[]}})}}let History$1=class{constructor(t){Dr(this,"sessions",new Map);Dr(this,"activeSessionId",null);Dr(this,"clientConfig");Dr(this,"virtualClient");this.clientConfig=t,this.virtualClient=new LangGraphClient(t)}async createSession(t={}){var nt;const Ye=t.sessionId||this.generateSessionId(),tt=t.agentName||((nt=this.virtualClient.getCurrentAssistant())==null?void 0:nt.graph_id);if(!tt)throw new Error("Agent name is required. Please call init() first or provide agentName.");if(this.sessions.has(Ye))throw new Error(`Session ${Ye} already exists`);const rt={sessionId:Ye,agentName:tt};return t.restore&&(rt.thread=await this.virtualClient.threads.get(Ye)),this.sessions.set(Ye,rt),rt}async activateSession(t,Ye=!1){var nt,at,ot;const tt=this.sessions.get(t)||{sessionId:t,agentName:(nt=this.virtualClient.getCurrentAssistant())==null?void 0:nt.graph_id};if(!tt.client){const ct=new LangGraphClient(this.clientConfig);await ct.initAssistant(tt.agentName),(tt.thread||Ye)&&await ct.resetThread(tt.agentName,t),tt.client=ct}const rt=this.activeSessionId&&this.sessions.get(this.activeSessionId);return rt&&((at=rt.client)==null?void 0:at.status)==="idle"&&((ot=rt.client)==null||ot.reset(),rt.client=void 0),this.activeSessionId=t,tt}getActiveSession(){return this.activeSessionId&&this.sessions.get(this.activeSessionId)||null}getSession(t){return this.sessions.get(t)||null}getAllSessions(){return Array.from(this.sessions.values())}async deleteSession(t){if(!this.sessions.get(t))return!1;this.activeSessionId===t&&(this.activeSessionId=null);try{await this.virtualClient.deleteThread(t)}catch(tt){console.warn(`Failed to delete thread for session ${t}:`,tt)}return this.sessions.delete(t),!0}async clearAllSessions(){const t=Array.from(this.sessions.keys());for(const Ye of t)await this.deleteSession(Ye);this.activeSessionId=null}getSessionCount(){return this.sessions.size}generateSessionId(){return typeof crypto<"u"&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,t=>{const Ye=Math.random()*16|0;return(t==="x"?Ye:Ye&3|8).toString(16)})}async addSessionFromThread(t,Ye){var rt;const tt=Ye||((rt=this.virtualClient.getCurrentAssistant())==null?void 0:rt.graph_id);if(!tt)throw new Error("Agent name is required. Please call init() first or provide agentName.");return this.createSession({sessionId:t,agentName:tt,restore:!0})}getActiveClient(){const t=this.getActiveSession();return(t==null?void 0:t.client)||null}async listRemoteSessions(t={}){return this.virtualClient.listThreads(t)}async syncFromRemote(t={}){var nt;const Ye=t.agentName||((nt=this.virtualClient.getCurrentAssistant())==null?void 0:nt.graph_id);if(!Ye)throw new Error("Agent name is required. Please call init() first or provide agentName.");const tt=await this.listRemoteSessions({limit:t.limit||10,sortBy:"updated_at",sortOrder:"desc"}),rt=[];for(const at of tt){const ot=at.thread_id;if(this.sessions.has(ot)){const ct=this.sessions.get(ot);ct.thread=at,rt.push(ct)}else{const ct={sessionId:ot,thread:at,agentName:Ye};this.sessions.set(ot,ct),rt.push(ct)}}return rt}async init(t,Ye){return this.virtualClient.initAssistant(t,Ye)}};const formatTime=e=>e.toLocaleTimeString(),formatFullTime=e=>{const t=ct=>ct.toString().padStart(2,"0"),Ye=e.getFullYear(),tt=t(e.getMonth()+1),rt=t(e.getDate()),nt=t(e.getHours()),at=t(e.getMinutes()),ot=t(e.getSeconds());return`${Ye}-${tt}-${rt} ${nt}:${at}:${ot}`},getMessageContent=e=>typeof e=="string"?e:Array.isArray(e)?e.map(t=>typeof t=="string"?t:t.type==="text"?t.text:t.type==="image_url"?"[图片]":JSON.stringify(t)).join(""):JSON.stringify(e),getHistoryContent=e=>{var Ye,tt,rt;const t=e.title||e.name||((rt=(tt=(Ye=e==null?void 0:e.values)==null?void 0:Ye.messages)==null?void 0:tt[0])==null?void 0:rt.content);return t&&Array.isArray(t)?t.map(nt=>nt.type==="text"?nt.text:void 0).filter(Boolean):typeof t=="string"?t:""},createChatStore=(e,t,Ye={})=>{const tt=atom(null),rt=atom([]),nt=atom(null),at=atom([]),ot=atom([]),ct=atom(""),Et=atom(null),At=atom(e),Rt=atom(null),jt=atom("__start__"),qt=atom("idle"),Ut=atom(null),Vt=atom(!1),zt=atom([]),Gt=atom([]),Kt=atom(Ye.showHistory??!1),Yt=atom(Ye.showGraph??!1),Xt=atom(null);let Jt=null;const Qt=atom(!1),er=()=>{const sr=nt.get();sr&&Qt.set(sr.status==="busy"||sr.status==="interrupted")},nr=r$5(sr=>{if(nt.get()!==sr)return;const dr=sr.renderMessage,_r=dr[dr.length-1];jt.set((_r==null?void 0:_r.node_name)||(_r==null?void 0:_r.name)||"__start__"),ot.set(dr),qt.set(sr.status)},10),ir=async()=>{const sr=nt.get();sr&&(sr.tools.clearTools(),sr.tools.bindTools(zt.get()))},lr=async()=>{var sr;Yt.get()&&Xt.set(await((sr=nt.get())==null?void 0:sr.graphVisualize())||null)};async function cr(){const sr=new History$1({...t,client:t.client??await createLangGraphServerClient(t)});if(await sr.init(At.get(),{fallbackToAvailableAssistants:Ye.fallbackToAvailableAssistants}),tt.set(sr),Ye.autoRestoreLastSession){if(await mr(),rt.get().length>0){const dr=rt.get();await Ar(dr[0].sessionId)}}else await gr();return sr}async function mr(){const sr=tt.get();if(sr)try{const dr=await sr.syncFromRemote({limit:10});rt.set(dr),at.set(dr.filter(_r=>_r.thread).map(_r=>_r.thread))}catch(dr){console.error("Failed to sync sessions:",dr)}}async function gr(){const sr=tt.get();if(sr)try{const dr=await sr.createSession();await mr(),await Ar(dr.sessionId)}catch(dr){console.error("Failed to create new session:",dr),Et.set(dr.message)}}function pr(sr){const dr=()=>nt.get()===sr,_r=()=>{dr()&&er()},wr=()=>{if(!dr())return;const Rr=sr.getCurrentThread();Rt.set((Rr==null?void 0:Rr.thread_id)||null),jt.set("__start__");const jr=tt.get(),Fr=jr==null?void 0:jr.getActiveSession();Fr&&Rr&&(Fr.thread=Rr),mr()},Or=()=>{dr()&&(er(),nr(sr))},Pr=Rr=>{dr()&&(er(),Et.set(Rr.data))},Nr=()=>{var Rr;dr()&&(Rt.set(((Rr=sr.getCurrentThread())==null?void 0:Rr.thread_id)||null),er(),nr(sr))},Lr=()=>{var Rr;dr()&&(Rt.set(((Rr=sr.getCurrentThread())==null?void 0:Rr.thread_id)||null),er(),nr(sr))},$r=Rr=>{if(!dr())return;const jr=sr.interruptData;jr?(Ut.set(jr),Vt.set(!0),er()):(Ut.set(null),Vt.set(!1)),nr(sr),nt.set(nt.get())};return sr.on("start",_r),sr.on("thread",wr),sr.on("done",Or),sr.on("error",Pr),sr.on("message",Nr),sr.on("value",Lr),sr.on("interruptChange",$r),()=>{sr.off("start",_r),sr.off("thread",wr),sr.off("done",Or),sr.off("error",Pr),sr.off("message",Nr),sr.off("value",Lr),sr.off("interruptChange",$r)}}async function Ar(sr,dr=!1){var wr;const _r=tt.get();if(_r)try{Jt&&(Jt(),Jt=null),Et.set(null),Ut.set(null),Vt.set(!1);const Pr=(await _r.activateSession(sr,dr)).client;if(Pr){Jt=pr(Pr),(wr=Ye.onInit)==null||wr.call(Ye,Pr),nt.set(Pr),Rt.set(sr);const Nr=Pr.renderMessage;ot.set(Nr);const Lr=Nr[Nr.length-1];jt.set((Lr==null?void 0:Lr.node_name)||(Lr==null?void 0:Lr.name)||"__start__"),er(),Yt.get()&&lr(),ir();const $r=Pr.getCurrentThread();if($r&&($r.status==="busy"||$r.status==="pending")&&await Pr.resetStream(),($r==null?void 0:$r.status)==="interrupted"){const Rr=Pr.interruptData;Rr&&(Ut.set(Rr),Vt.set(!0))}}}catch(Or){console.error("Failed to activate session:",Or),Et.set(Or.message)}}async function vr(sr,dr,_r=!1,wr=!1){const Or=nt.get();if(!(!_r&&!ct.get().trim()&&!(sr!=null&&sr.length)||!Or)&&Or.status!=="busy"){Et.set(null);try{Qt.set(!0),await Or.sendMessage(sr||ct.get(),dr)}catch(Pr){if(Pr.message.includes("422"))await Or.resetStream();else throw Pr}finally{ct.set(""),er()}}}function xr(){var sr;(sr=nt.get())==null||sr.cancelRun()}function Sr(sr){const dr=Gt.get();Gt.set(dr.includes(sr)?dr.filter(_r=>_r!==sr):[...dr,sr])}function Ir(){Kt.set(!Kt.get()),Kt.get()&&mr()}function yr(sr){const dr=at.get();at.set([sr,...dr])}function hr(sr){var wr;const dr=nt.get();if(!dr)return null;const _r=(wr=dr.tools.getTool(sr))==null?void 0:wr.render;return _r?Or=>_r(new ToolRenderData(Or,dr)):null}const Tr=useArtifacts$1(ot,nt);return{data:{client:nt,history:tt,sessions:rt,renderMessages:ot,userInput:ct,loading:Qt,inChatError:Et,currentAgent:At,currentChatId:Rt,currentNodeName:jt,currentStatus:qt,interruptData:Ut,isInterrupted:Vt,tools:zt,collapsedTools:Gt,showGraph:Yt,graphVisualize:Xt,showHistory:Kt,historyList:at,...Tr.data},mutations:{initClient:cr,getClient:()=>nt.get(),getHistory:()=>tt.get(),activateSession:Ar,createNewSession:gr,refreshSessionList:mr,refreshHistoryList:mr,sendMessage:vr,stopGeneration:xr,setUserInput:sr=>ct.set(sr),async revertChatTo(sr,dr=!1,_r){var wr;if(await((wr=nt.get())==null?void 0:wr.revertChatTo(sr,_r||{})),dr)return vr([],_r,!0);nr(nt.get())},refreshTools:ir,setTools(sr){zt.set(sr),ir()},toggleToolCollapse:Sr,getToolUIRender:hr,isFELocking:()=>{var sr;return(sr=nt.get())==null?void 0:sr.isFELocking(ot.get())},toggleHistoryVisible:Ir,toggleGraphVisible(){Yt.set(!Yt.get()),Yt.get()&&lr()},refreshGraph:lr,setCurrentAgent(sr){return At.set(sr),cr()},resumeFromInterrupt(sr){return vr([],{command:{resume:sr}},!0)},addToHistory:yr,createNewChat:gr,toHistoryChat:sr=>Ar(sr.thread_id,!0),async deleteHistoryChat(sr){const dr=tt.get();dr&&(await dr.deleteSession(sr.thread_id),await mr())},...Tr.mutation}}},useUnionStore=(e,t)=>({...Object.fromEntries(Object.entries(e.data).map(([tt,rt])=>[tt,t(rt)])),...e.mutations});let emit=(e,t)=>Ye=>{e.current!==Ye&&(e.current=Ye,t())};function useStore$1(e,{keys:t,deps:Ye=[e,t]}={}){let tt=reactExports.useRef();tt.current=e.get();let rt=reactExports.useCallback(at=>(emit(tt,at)(e.value),(t==null?void 0:t.length)>0?listenKeys(e,t,emit(tt,at)):e.listen(emit(tt,at))),Ye),nt=()=>tt.current;return reactExports.useSyncExternalStore(rt,nt,nt)}const ChatContext=reactExports.createContext(void 0),useChat=()=>{const e=reactExports.useContext(ChatContext);if(!e)throw new Error("useChat must be used within a ChatProvider");return e},ChatProvider=({children:e,defaultAgent:t="",apiUrl:Ye="http://localhost:8123",defaultHeaders:tt,withCredentials:rt=!1,fetch:nt,showHistory:at=!1,showGraph:ot=!1,fallbackToAvailableAssistants:ct=!1,autoRestoreLastSession:Et=!1,onInitError:At,client:Rt,legacyMode:jt=!1})=>{const qt=reactExports.useMemo(()=>tt||{},[tt]),Ut=reactExports.useRef(At);reactExports.useEffect(()=>{Ut.current=At},[At]);const Vt=reactExports.useMemo(()=>{const Kt=nt||globalThis.fetch,Xt={apiUrl:Ye,defaultHeaders:qt,callerOptions:{fetch:rt?(Jt,Qt)=>(Qt.credentials="include",Kt(Jt,Qt)):Kt,maxRetries:1},legacyMode:jt};return Rt&&(Xt.client=Rt),createChatStore(t,Xt,{showHistory:at,showGraph:ot,fallbackToAvailableAssistants:ct,autoRestoreLastSession:Et})},[t,Ye,qt,rt,nt,at,ot,ct,Et]),zt=useUnionStore(Vt,useStore$1),Gt=reactExports.useRef(!1);return reactExports.useEffect(()=>{Gt.current||(Gt.current=!0,zt.initClient().catch(Kt=>{console.error(Kt),Ut.current&&Ut.current(Kt,zt.currentAgent)}))},[zt]),reactExports.createElement(ChatContext.Provider,{value:zt},e)};/**
83
+ ]`;continue}rt+=tt[Et],tt[Et]==="\\"?nt=!0:at&&tt[Et]==="]"?at=!1:!at&&tt[Et]==="["&&(at=!0)}try{new RegExp(rt)}catch{return console.warn(`Could not convert regex pattern at ${t.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return rt}function parseRecordDef(e,t){var tt,rt,nt,at,ot,ct;if(t.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),t.target==="openApi3"&&((tt=e.keyType)==null?void 0:tt._def.typeName)===ZodFirstPartyTypeKind.ZodEnum)return{type:"object",required:e.keyType._def.values,properties:e.keyType._def.values.reduce((Et,At)=>({...Et,[At]:parseDef(e.valueType._def,{...t,currentPath:[...t.currentPath,"properties",At]})??parseAnyDef(t)}),{}),additionalProperties:t.rejectedAdditionalProperties};const Ye={type:"object",additionalProperties:parseDef(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]})??t.allowedAdditionalProperties};if(t.target==="openApi3")return Ye;if(((rt=e.keyType)==null?void 0:rt._def.typeName)===ZodFirstPartyTypeKind.ZodString&&((nt=e.keyType._def.checks)!=null&&nt.length)){const{type:Et,...At}=parseStringDef(e.keyType._def,t);return{...Ye,propertyNames:At}}else{if(((at=e.keyType)==null?void 0:at._def.typeName)===ZodFirstPartyTypeKind.ZodEnum)return{...Ye,propertyNames:{enum:e.keyType._def.values}};if(((ot=e.keyType)==null?void 0:ot._def.typeName)===ZodFirstPartyTypeKind.ZodBranded&&e.keyType._def.type._def.typeName===ZodFirstPartyTypeKind.ZodString&&((ct=e.keyType._def.type._def.checks)!=null&&ct.length)){const{type:Et,...At}=parseBrandedDef(e.keyType._def,t);return{...Ye,propertyNames:At}}}return Ye}function parseMapDef(e,t){if(t.mapStrategy==="record")return parseRecordDef(e,t);const Ye=parseDef(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||parseAnyDef(t),tt=parseDef(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||parseAnyDef(t);return{type:"array",maxItems:125,items:{type:"array",items:[Ye,tt],minItems:2,maxItems:2}}}function parseNativeEnumDef(e){const t=e.values,tt=Object.keys(e.values).filter(nt=>typeof t[t[nt]]!="number").map(nt=>t[nt]),rt=Array.from(new Set(tt.map(nt=>typeof nt)));return{type:rt.length===1?rt[0]==="string"?"string":"number":["string","number"],enum:tt}}function parseNeverDef(e){return e.target==="openAi"?void 0:{not:parseAnyDef({...e,currentPath:[...e.currentPath,"not"]})}}function parseNullDef(e){return e.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}const primitiveMappings={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function parseUnionDef(e,t){if(t.target==="openApi3")return asAnyOf(e,t);const Ye=e.options instanceof Map?Array.from(e.options.values()):e.options;if(Ye.every(tt=>tt._def.typeName in primitiveMappings&&(!tt._def.checks||!tt._def.checks.length))){const tt=Ye.reduce((rt,nt)=>{const at=primitiveMappings[nt._def.typeName];return at&&!rt.includes(at)?[...rt,at]:rt},[]);return{type:tt.length>1?tt:tt[0]}}else if(Ye.every(tt=>tt._def.typeName==="ZodLiteral"&&!tt.description)){const tt=Ye.reduce((rt,nt)=>{const at=typeof nt._def.value;switch(at){case"string":case"number":case"boolean":return[...rt,at];case"bigint":return[...rt,"integer"];case"object":if(nt._def.value===null)return[...rt,"null"];case"symbol":case"undefined":case"function":default:return rt}},[]);if(tt.length===Ye.length){const rt=tt.filter((nt,at,ot)=>ot.indexOf(nt)===at);return{type:rt.length>1?rt:rt[0],enum:Ye.reduce((nt,at)=>nt.includes(at._def.value)?nt:[...nt,at._def.value],[])}}}else if(Ye.every(tt=>tt._def.typeName==="ZodEnum"))return{type:"string",enum:Ye.reduce((tt,rt)=>[...tt,...rt._def.values.filter(nt=>!tt.includes(nt))],[])};return asAnyOf(e,t)}const asAnyOf=(e,t)=>{const Ye=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((tt,rt)=>parseDef(tt._def,{...t,currentPath:[...t.currentPath,"anyOf",`${rt}`]})).filter(tt=>!!tt&&(!t.strictUnions||typeof tt=="object"&&Object.keys(tt).length>0));return Ye.length?{anyOf:Ye}:void 0};function parseNullableDef(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return t.target==="openApi3"?{type:primitiveMappings[e.innerType._def.typeName],nullable:!0}:{type:[primitiveMappings[e.innerType._def.typeName],"null"]};if(t.target==="openApi3"){const tt=parseDef(e.innerType._def,{...t,currentPath:[...t.currentPath]});return tt&&"$ref"in tt?{allOf:[tt],nullable:!0}:tt&&{...tt,nullable:!0}}const Ye=parseDef(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return Ye&&{anyOf:[Ye,{type:"null"}]}}function parseNumberDef(e,t){const Ye={type:"number"};if(!e.checks)return Ye;for(const tt of e.checks)switch(tt.kind){case"int":Ye.type="integer",addErrorMessage(Ye,"type",tt.message,t);break;case"min":t.target==="jsonSchema7"?tt.inclusive?setResponseValueAndErrors(Ye,"minimum",tt.value,tt.message,t):setResponseValueAndErrors(Ye,"exclusiveMinimum",tt.value,tt.message,t):(tt.inclusive||(Ye.exclusiveMinimum=!0),setResponseValueAndErrors(Ye,"minimum",tt.value,tt.message,t));break;case"max":t.target==="jsonSchema7"?tt.inclusive?setResponseValueAndErrors(Ye,"maximum",tt.value,tt.message,t):setResponseValueAndErrors(Ye,"exclusiveMaximum",tt.value,tt.message,t):(tt.inclusive||(Ye.exclusiveMaximum=!0),setResponseValueAndErrors(Ye,"maximum",tt.value,tt.message,t));break;case"multipleOf":setResponseValueAndErrors(Ye,"multipleOf",tt.value,tt.message,t);break}return Ye}function parseObjectDef(e,t){const Ye=t.target==="openAi",tt={type:"object",properties:{}},rt=[],nt=e.shape();for(const ot in nt){let ct=nt[ot];if(ct===void 0||ct._def===void 0)continue;let Et=safeIsOptional(ct);Et&&Ye&&(ct._def.typeName==="ZodOptional"&&(ct=ct._def.innerType),ct.isNullable()||(ct=ct.nullable()),Et=!1);const At=parseDef(ct._def,{...t,currentPath:[...t.currentPath,"properties",ot],propertyPath:[...t.currentPath,"properties",ot]});At!==void 0&&(tt.properties[ot]=At,Et||rt.push(ot))}rt.length&&(tt.required=rt);const at=decideAdditionalProperties(e,t);return at!==void 0&&(tt.additionalProperties=at),tt}function decideAdditionalProperties(e,t){if(e.catchall._def.typeName!=="ZodNever")return parseDef(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return t.removeAdditionalStrategy==="strict"?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function safeIsOptional(e){try{return e.isOptional()}catch{return!0}}const parseOptionalDef=(e,t)=>{var tt;if(t.currentPath.toString()===((tt=t.propertyPath)==null?void 0:tt.toString()))return parseDef(e.innerType._def,t);const Ye=parseDef(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return Ye?{anyOf:[{not:parseAnyDef(t)},Ye]}:parseAnyDef(t)},parsePipelineDef=(e,t)=>{if(t.pipeStrategy==="input")return parseDef(e.in._def,t);if(t.pipeStrategy==="output")return parseDef(e.out._def,t);const Ye=parseDef(e.in._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),tt=parseDef(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",Ye?"1":"0"]});return{allOf:[Ye,tt].filter(rt=>rt!==void 0)}};function parsePromiseDef(e,t){return parseDef(e.type._def,t)}function parseSetDef(e,t){const tt={type:"array",uniqueItems:!0,items:parseDef(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};return e.minSize&&setResponseValueAndErrors(tt,"minItems",e.minSize.value,e.minSize.message,t),e.maxSize&&setResponseValueAndErrors(tt,"maxItems",e.maxSize.value,e.maxSize.message,t),tt}function parseTupleDef(e,t){return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((Ye,tt)=>parseDef(Ye._def,{...t,currentPath:[...t.currentPath,"items",`${tt}`]})).reduce((Ye,tt)=>tt===void 0?Ye:[...Ye,tt],[]),additionalItems:parseDef(e.rest._def,{...t,currentPath:[...t.currentPath,"additionalItems"]})}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((Ye,tt)=>parseDef(Ye._def,{...t,currentPath:[...t.currentPath,"items",`${tt}`]})).reduce((Ye,tt)=>tt===void 0?Ye:[...Ye,tt],[])}}function parseUndefinedDef(e){return{not:parseAnyDef(e)}}function parseUnknownDef(e){return parseAnyDef(e)}const parseReadonlyDef=(e,t)=>parseDef(e.innerType._def,t),selectParser=(e,t,Ye)=>{switch(t){case ZodFirstPartyTypeKind.ZodString:return parseStringDef(e,Ye);case ZodFirstPartyTypeKind.ZodNumber:return parseNumberDef(e,Ye);case ZodFirstPartyTypeKind.ZodObject:return parseObjectDef(e,Ye);case ZodFirstPartyTypeKind.ZodBigInt:return parseBigintDef(e,Ye);case ZodFirstPartyTypeKind.ZodBoolean:return parseBooleanDef();case ZodFirstPartyTypeKind.ZodDate:return parseDateDef(e,Ye);case ZodFirstPartyTypeKind.ZodUndefined:return parseUndefinedDef(Ye);case ZodFirstPartyTypeKind.ZodNull:return parseNullDef(Ye);case ZodFirstPartyTypeKind.ZodArray:return parseArrayDef(e,Ye);case ZodFirstPartyTypeKind.ZodUnion:case ZodFirstPartyTypeKind.ZodDiscriminatedUnion:return parseUnionDef(e,Ye);case ZodFirstPartyTypeKind.ZodIntersection:return parseIntersectionDef(e,Ye);case ZodFirstPartyTypeKind.ZodTuple:return parseTupleDef(e,Ye);case ZodFirstPartyTypeKind.ZodRecord:return parseRecordDef(e,Ye);case ZodFirstPartyTypeKind.ZodLiteral:return parseLiteralDef(e,Ye);case ZodFirstPartyTypeKind.ZodEnum:return parseEnumDef(e);case ZodFirstPartyTypeKind.ZodNativeEnum:return parseNativeEnumDef(e);case ZodFirstPartyTypeKind.ZodNullable:return parseNullableDef(e,Ye);case ZodFirstPartyTypeKind.ZodOptional:return parseOptionalDef(e,Ye);case ZodFirstPartyTypeKind.ZodMap:return parseMapDef(e,Ye);case ZodFirstPartyTypeKind.ZodSet:return parseSetDef(e,Ye);case ZodFirstPartyTypeKind.ZodLazy:return()=>e.getter()._def;case ZodFirstPartyTypeKind.ZodPromise:return parsePromiseDef(e,Ye);case ZodFirstPartyTypeKind.ZodNaN:case ZodFirstPartyTypeKind.ZodNever:return parseNeverDef(Ye);case ZodFirstPartyTypeKind.ZodEffects:return parseEffectsDef(e,Ye);case ZodFirstPartyTypeKind.ZodAny:return parseAnyDef(Ye);case ZodFirstPartyTypeKind.ZodUnknown:return parseUnknownDef(Ye);case ZodFirstPartyTypeKind.ZodDefault:return parseDefaultDef(e,Ye);case ZodFirstPartyTypeKind.ZodBranded:return parseBrandedDef(e,Ye);case ZodFirstPartyTypeKind.ZodReadonly:return parseReadonlyDef(e,Ye);case ZodFirstPartyTypeKind.ZodCatch:return parseCatchDef(e,Ye);case ZodFirstPartyTypeKind.ZodPipeline:return parsePipelineDef(e,Ye);case ZodFirstPartyTypeKind.ZodFunction:case ZodFirstPartyTypeKind.ZodVoid:case ZodFirstPartyTypeKind.ZodSymbol:return;default:return(tt=>{})()}};function parseDef(e,t,Ye=!1){var ot;const tt=t.seen.get(e);if(t.override){const ct=(ot=t.override)==null?void 0:ot.call(t,e,t,tt,Ye);if(ct!==ignoreOverride)return ct}if(tt&&!Ye){const ct=get$ref(tt,t);if(ct!==void 0)return ct}const rt={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,rt);const nt=selectParser(e,e.typeName,t),at=typeof nt=="function"?parseDef(nt(),t):nt;if(at&&addMeta(e,t,at),t.postProcess){const ct=t.postProcess(at,e,t);return rt.jsonSchema=at,ct}return rt.jsonSchema=at,at}const get$ref=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:getRelativePath(t.currentPath,e.path)};case"none":case"seen":return e.path.length<t.currentPath.length&&e.path.every((Ye,tt)=>t.currentPath[tt]===Ye)?(console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),parseAnyDef(t)):t.$refStrategy==="seen"?parseAnyDef(t):void 0}},addMeta=(e,t,Ye)=>(e.description&&(Ye.description=e.description,t.markdownDescription&&(Ye.markdownDescription=e.description)),Ye),zodToJsonSchema=(e,t)=>{const Ye=getRefs(t);let tt;const rt=t==null?void 0:t.name,nt=parseDef(e._def,Ye,!1)??parseAnyDef(Ye);Ye.flags.hasReferencedOpenAiAnyType&&(tt||(tt={}),tt[Ye.openAiAnyTypeName]||(tt[Ye.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:Ye.$refStrategy==="relative"?"1":[...Ye.basePath,Ye.definitionPath,Ye.openAiAnyTypeName].join("/")}}));const at=rt===void 0?tt?{...nt,[Ye.definitionPath]:tt}:nt:{$ref:[...Ye.$refStrategy==="relative"?[]:Ye.basePath,Ye.definitionPath,rt].join("/"),[Ye.definitionPath]:{...tt,[rt]:nt}};return Ye.target==="jsonSchema7"?at.$schema="http://json-schema.org/draft-07/schema#":(Ye.target==="jsonSchema2019-09"||Ye.target==="openAi")&&(at.$schema="https://json-schema.org/draft/2019-09/schema#"),Ye.target==="openAi"&&("anyOf"in at||"oneOf"in at||"allOf"in at||"type"in at&&Array.isArray(at.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),at},createUITool=e=>{const t=e.execute||(async(Ye,tt)=>{var rt;try{const nt=await((rt=e.handler)==null?void 0:rt.call(e,Ye,tt));return typeof nt=="string"?[{type:"text",text:nt}]:nt.decisions?nt:[{type:"text",text:JSON.stringify(nt)}]}catch(nt){return[{type:"text",text:`Error: ${nt}`}]}});return{...e,execute:t}},createJSONDefineTool=e=>({name:e.name,description:e.description,parameters:e.isPureParams?e.parameters:zodToJsonSchema(object$1(e.parameters))});class ToolManager{constructor(){Dr(this,"tools",new Map);Dr(this,"waitingMap",new Map)}bindTool(t){this.tools.has(t.name)&&t.name!=="__default__"&&console.warn(`Tool with name ${t.name} already exists`),this.tools.set(t.name,t)}bindTools(t){t.forEach(Ye=>this.bindTool(Ye))}getAllTools(){return Array.from(this.tools.values())}getTool(t){return this.tools.get(t)}removeTool(t){return this.tools.delete(t)}clearTools(){this.tools.clear()}reset(){this.clearTools(),this.clearWaiting()}clearWaiting(){this.waitingMap.clear()}async callTool(t,Ye,tt){var nt;const rt=this.getTool(t)||this.getTool("__default__");return await((nt=rt.execute)==null?void 0:nt.call(rt,Ye,tt))}async toJSON(t,Ye=!0){return Array.from(this.tools.values()).filter(tt=>Ye?!tt.onlyRender:!0).filter(tt=>!tt.allowGraph||tt.allowGraph.includes(t)).map(tt=>createJSONDefineTool(tt))}doneWaiting(t,Ye){return this.waitingMap.has(t)?(this.waitingMap.get(t)(Ye),this.waitingMap.delete(t),!0):(console.warn(`Waiting for tool ${t} not found`),!1)}isAllToolCompleted(){return this.waitingMap.size}waitForDone(t){return new Promise((tt,rt)=>{this.waitingMap.set(t,tt)})}static waitForUIDone(t,Ye){return Ye.client.tools.waitForDone(Ye.message.id)}}class SpendTime{constructor(){Dr(this,"timeCounter",new Map)}start(t){this.timeCounter.set(t,[new Date])}end(t){var Ye;this.timeCounter.set(t,[((Ye=this.timeCounter.get(t))==null?void 0:Ye[0])||new Date,new Date])}setSpendTime(t){this.timeCounter.has(t)?this.end(t):this.start(t)}getStartTime(t){var Ye;return((Ye=this.timeCounter.get(t))==null?void 0:Ye[0])||new Date}getEndTime(t){var Ye;return((Ye=this.timeCounter.get(t))==null?void 0:Ye[1])||new Date}getSpendTime(t){const[Ye,tt=new Date]=this.timeCounter.get(t)||[new Date,new Date];return tt.getTime()-Ye.getTime()}}class StreamingMessageType{static isTool(t){return t.type==="tool"}static isToolAssistant(t){var Ye,tt;return t.type==="ai"&&(((Ye=t.tool_calls)==null?void 0:Ye.length)||((tt=t.tool_call_chunks)==null?void 0:tt.length))}}class MessageProcessor{constructor(){Dr(this,"streamingMessage",[]);Dr(this,"graphMessages",[]);Dr(this,"spendTime",new SpendTime)}getStreamingMessages(){return[...this.streamingMessage]}setStreamingMessages(t){this.streamingMessage=t}clearStreamingMessages(){this.streamingMessage=[]}getGraphMessages(){return[...this.graphMessages]}setGraphMessages(t){this.graphMessages=t}updateStreamingMessage(t){const Ye=this.streamingMessage[this.streamingMessage.length-1];if(!(Ye!=null&&Ye.id)||t.id!==Ye.id){this.streamingMessage.push(t);return}this.streamingMessage[this.streamingMessage.length-1]=t}combineGraphMessagesWithStreamingMessages(){const t=new Map(this.streamingMessage.map(Ye=>[Ye.id,Ye]));return[...this.graphMessages.map(Ye=>{if(t.has(Ye.id)){const tt=t.get(Ye.id);return t.delete(Ye.id),tt}return Ye}),...t.values()]}cloneMessage(t){return JSON.parse(JSON.stringify(t))}attachInfoForMessage(t){var tt,rt,nt;const Ye=[...t];for(const at of Ye){at.additional_kwargs||(at.additional_kwargs={});const ot=((tt=at.additional_kwargs)==null?void 0:tt.create_time)||formatFullTime(this.spendTime.getStartTime(at.id)),ct=((rt=at.additional_kwargs)==null?void 0:rt.update_time)||formatFullTime(this.spendTime.getEndTime(at.id));if(at.additional_kwargs.create_time=ot,at.additional_kwargs.update_time=ct,at.unique_id=at.tool_call_id||at.id,at.spend_time=new Date(ct).getTime()-new Date(ot).getTime(),!at.usage_metadata&&((nt=at.response_metadata)!=null&&nt.usage)){const Et=at.response_metadata.usage;at.usage_metadata={...Et,input_tokens:Et.prompt_tokens,output_tokens:Et.completion_tokens,total_tokens:Et.total_tokens}}}return Ye}composeToolMessages(t){var nt,at;const Ye=[],tt=new Map,rt=new Map;for(const ot of t)if(!(StreamingMessageType.isToolAssistant(ot)&&((nt=ot.tool_calls||ot.tool_call_chunks)==null||nt.forEach(ct=>{tt.set(ct.id,ct),rt.set(ct.id,ot)}),!ot.content))){if(StreamingMessageType.isTool(ot)&&!ot.tool_input){const ct=tt.get(ot.tool_call_id),Et=rt.get(ot.tool_call_id);if(ct){ot.tool_input=typeof ct.args!="string"?JSON.stringify(ct.args):ct.args;const At=!!ot.content;ot.done=At,ot.additional_kwargs={...(Et==null?void 0:Et.additional_kwargs)||{},...ot.additional_kwargs||{},done:At}}Et&&(ot.usage_metadata=Et.usage_metadata,ot.node_name=Et.name,ot.name||(ot.name=(at=Et.tool_calls.find(At=>At.id===ot.tool_call_id))==null?void 0:at.name))}Ye.push(ot)}return Ye}renderMessages(t,Ye,tt){var ct;const rt=new Map,nt=new Set,at=[],ot=this.combineGraphMessagesWithStreamingMessages();for(let Et=ot.length-1;Et>=0;Et--){const At=this.cloneMessage(ot[Et]);if(!At.id){at.unshift(At);continue}if(At.type==="ai"&&(At.name||(At.name=Ye().name)),StreamingMessageType.isToolAssistant(At)){const Rt=At;rt.set(At.id,Rt);const qt=((ct=Rt.tool_calls)!=null&&ct.length?Rt.tool_calls:Rt.tool_call_chunks).filter(Ut=>!nt.has(Ut.id)).map((Ut,Vt)=>{var zt,Gt,Kt,Yt;return{type:"tool",additional_kwargs:{},tool_input:(Yt=(Kt=(Gt=(zt=Rt.additional_kwargs)==null?void 0:zt.tool_calls)==null?void 0:Gt[Vt])==null?void 0:Kt.function)==null?void 0:Yt.arguments,id:Ut.id,name:Ut.name,response_metadata:{},tool_call_id:Ut.id,content:""}});for(const Ut of qt)rt.has(Ut.id)||(at.unshift(Ut),rt.set(Ut.id,Ut));at.unshift(Rt)}else At.type==="tool"&&At.tool_call_id&&nt.add(At.tool_call_id),rt.set(At.id,At),at.unshift(At)}return this.processMessages(at,t,tt)}foldTreeMessages(t,Ye,tt){const rt=Object.entries((Ye==null?void 0:Ye.task_store)||{}).map(([At,Rt])=>[At,Rt.messages]),nt=new Map(rt),at=new Set,ot=new Map(Object.entries(tt||{}).map(([At,Rt])=>{if(Rt!=null&&Rt.parent_id)return at.add(At),[At,Rt==null?void 0:Rt.parent_id]}).filter(At=>At!==void 0)),ct=nt,Et=[];for(const At of t)if(!at.has(At.id))Et.push(At);else{const jt=ot.get(At.id),qt=ct.get(jt);qt?qt.push(At):ct.set(jt,[At])}for(const At of Et)if(At.sub_messages=ct.get(At.id)||[],At.type==="tool"&&ct.has(At.tool_call_id)){At.sub_messages.unshift(...ct.get(At.tool_call_id));const Rt=At.sub_messages.filter((jt,qt,Ut)=>Ut.findIndex(Vt=>Vt.id===jt.id)===qt);At.sub_messages=this.beforeFold(Rt)}return Et}beforeFold(t){const Ye=this.composeToolMessages(t);return this.attachInfoForMessage(Ye)}processMessages(t,Ye,tt){return this.foldTreeMessages(this.beforeFold(t),Ye,tt)}}async function revertChatTo(e,t,Ye,tt){const rt=await e.threads.get(t),nt=rt.values.messages,at=nt.findIndex(Rt=>Rt.id===Ye);if(at===-1)throw new Error(`Message id ${Ye} not found`);const ot=tt.includeMessageId?at:at+1,ct=nt.slice(ot),Et={...rt.values,messages:ct.map(Rt=>({type:"remove",id:Rt.id}))},At=await e.threads.updateState(t,{values:Et});return{state:{messages:nt.slice(0,ot)},checkpoint:At}}const isObject$6=e=>typeof e=="object"&&e!==null,isObjectCustom=e=>isObject$6(e)&&!(e instanceof RegExp)&&!(e instanceof Error)&&!(e instanceof Date)&&!(globalThis.Blob&&e instanceof globalThis.Blob),mapObjectSkip=Symbol("mapObjectSkip"),_mapObject=(e,t,Ye,tt=new WeakMap)=>{if(Ye={deep:!1,target:{},...Ye},tt.has(e))return tt.get(e);tt.set(e,Ye.target);const{target:rt}=Ye;delete Ye.target;const nt=at=>at.map(ot=>isObjectCustom(ot)?_mapObject(ot,t,Ye,tt):ot);if(Array.isArray(e))return nt(e);for(const[at,ot]of Object.entries(e)){const ct=t(at,ot,e);if(ct===mapObjectSkip)continue;let[Et,At,{shouldRecurse:Rt=!0}={}]=ct;Et!=="__proto__"&&(Ye.deep&&Rt&&isObjectCustom(At)&&(At=Array.isArray(At)?nt(At):_mapObject(At,t,Ye,tt)),rt[Et]=At)}return rt};function mapObject$1(e,t,Ye){if(!isObject$6(e))throw new TypeError(`Expected an object, got \`${e}\` (${typeof e})`);if(Array.isArray(e))throw new TypeError("Expected an object, got an array");return _mapObject(e,t,Ye)}const UPPERCASE=/[\p{Lu}]/u,LOWERCASE=/[\p{Ll}]/u,LEADING_CAPITAL=/^[\p{Lu}](?![\p{Lu}])/gu,IDENTIFIER=/([\p{Alpha}\p{N}_]|$)/u,SEPARATORS=/[_.\- ]+/,LEADING_SEPARATORS=new RegExp("^"+SEPARATORS.source),SEPARATORS_AND_IDENTIFIER=new RegExp(SEPARATORS.source+IDENTIFIER.source,"gu"),NUMBERS_AND_IDENTIFIER=new RegExp("\\d+"+IDENTIFIER.source,"gu"),preserveCamelCase=(e,t,Ye,tt)=>{let rt=!1,nt=!1,at=!1,ot=!1;for(let ct=0;ct<e.length;ct++){const Et=e[ct];ot=ct>2?e[ct-3]==="-":!0,rt&&UPPERCASE.test(Et)?(e=e.slice(0,ct)+"-"+e.slice(ct),rt=!1,at=nt,nt=!0,ct++):nt&&at&&LOWERCASE.test(Et)&&(!ot||tt)?(e=e.slice(0,ct-1)+"-"+e.slice(ct-1),at=nt,nt=!1,rt=!0):(rt=t(Et)===Et&&Ye(Et)!==Et,at=nt,nt=Ye(Et)===Et&&t(Et)!==Et)}return e},preserveConsecutiveUppercase=(e,t)=>(LEADING_CAPITAL.lastIndex=0,e.replaceAll(LEADING_CAPITAL,Ye=>t(Ye))),postProcess=(e,t)=>(SEPARATORS_AND_IDENTIFIER.lastIndex=0,NUMBERS_AND_IDENTIFIER.lastIndex=0,e.replaceAll(NUMBERS_AND_IDENTIFIER,(Ye,tt,rt)=>["_","-"].includes(e.charAt(rt+Ye.length))?Ye:t(Ye)).replaceAll(SEPARATORS_AND_IDENTIFIER,(Ye,tt)=>t(tt)));function camelCase(e,t){if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");if(t={pascalCase:!1,preserveConsecutiveUppercase:!1,...t},Array.isArray(e)?e=e.map(nt=>nt.trim()).filter(nt=>nt.length).join("-"):e=e.trim(),e.length===0)return"";const Ye=t.locale===!1?nt=>nt.toLowerCase():nt=>nt.toLocaleLowerCase(t.locale),tt=t.locale===!1?nt=>nt.toUpperCase():nt=>nt.toLocaleUpperCase(t.locale);return e.length===1?SEPARATORS.test(e)?"":t.pascalCase?tt(e):Ye(e):(e!==Ye(e)&&(e=preserveCamelCase(e,Ye,tt,t.preserveConsecutiveUppercase)),e=e.replace(LEADING_SEPARATORS,""),e=t.preserveConsecutiveUppercase?preserveConsecutiveUppercase(e,Ye):Ye(e),t.pascalCase&&(e=tt(e.charAt(0))+e.slice(1)),postProcess(e,tt))}var ei,Kn,ra,Oo,Ks,Do,Nn,uc,Ei,Dg,Df,Pf,Mf,Pg,dc;class QuickLRU extends Map{constructor(Ye={}){super();Va(this,Nn);Va(this,ei,0);Va(this,Kn,new Map);Va(this,ra,new Map);Va(this,Oo);Va(this,Ks);Va(this,Do);if(!(Ye.maxSize&&Ye.maxSize>0))throw new TypeError("`maxSize` must be a number greater than 0");if(typeof Ye.maxAge=="number"&&Ye.maxAge===0)throw new TypeError("`maxAge` must be a number greater than 0");Bn(this,Oo,Ye.maxSize),Bn(this,Ks,Ye.maxAge||Number.POSITIVE_INFINITY),Bn(this,Do,Ye.onEviction)}get __oldCache(){return an(this,ra)}get(Ye){if(an(this,Kn).has(Ye)){const tt=an(this,Kn).get(Ye);return Wn(this,Nn,Df).call(this,Ye,tt)}if(an(this,ra).has(Ye)){const tt=an(this,ra).get(Ye);if(Wn(this,Nn,Ei).call(this,Ye,tt)===!1)return Wn(this,Nn,Pg).call(this,Ye,tt),tt.value}}set(Ye,tt,{maxAge:rt=an(this,Ks)}={}){const nt=typeof rt=="number"&&rt!==Number.POSITIVE_INFINITY?Date.now()+rt:void 0;return an(this,Kn).has(Ye)?an(this,Kn).set(Ye,{value:tt,expiry:nt}):Wn(this,Nn,Mf).call(this,Ye,{value:tt,expiry:nt}),this}has(Ye){return an(this,Kn).has(Ye)?!Wn(this,Nn,Ei).call(this,Ye,an(this,Kn).get(Ye)):an(this,ra).has(Ye)?!Wn(this,Nn,Ei).call(this,Ye,an(this,ra).get(Ye)):!1}peek(Ye){if(an(this,Kn).has(Ye))return Wn(this,Nn,Pf).call(this,Ye,an(this,Kn));if(an(this,ra).has(Ye))return Wn(this,Nn,Pf).call(this,Ye,an(this,ra))}expiresIn(Ye){const tt=an(this,Kn).get(Ye)??an(this,ra).get(Ye);if(tt)return tt.expiry?tt.expiry-Date.now():Number.POSITIVE_INFINITY}delete(Ye){const tt=an(this,Kn).delete(Ye);return tt&&$f(this,ei)._--,an(this,ra).delete(Ye)||tt}clear(){an(this,Kn).clear(),an(this,ra).clear(),Bn(this,ei,0)}resize(Ye){if(!(Ye&&Ye>0))throw new TypeError("`maxSize` must be a number greater than 0");const tt=[...Wn(this,Nn,dc).call(this)],rt=tt.length-Ye;rt<0?(Bn(this,Kn,new Map(tt)),Bn(this,ra,new Map),Bn(this,ei,tt.length)):(rt>0&&Wn(this,Nn,uc).call(this,tt.slice(0,rt)),Bn(this,ra,new Map(tt.slice(rt))),Bn(this,Kn,new Map),Bn(this,ei,0)),Bn(this,Oo,Ye)}evict(Ye=1){const tt=Number(Ye);if(!tt||tt<=0)return;const rt=[...Wn(this,Nn,dc).call(this)],nt=Math.trunc(Math.min(tt,Math.max(rt.length-1,0)));nt<=0||(Wn(this,Nn,uc).call(this,rt.slice(0,nt)),Bn(this,ra,new Map(rt.slice(nt))),Bn(this,Kn,new Map),Bn(this,ei,0))}*keys(){for(const[Ye]of this)yield Ye}*values(){for(const[,Ye]of this)yield Ye}*[Symbol.iterator](){for(const Ye of an(this,Kn)){const[tt,rt]=Ye;Wn(this,Nn,Ei).call(this,tt,rt)===!1&&(yield[tt,rt.value])}for(const Ye of an(this,ra)){const[tt,rt]=Ye;an(this,Kn).has(tt)||Wn(this,Nn,Ei).call(this,tt,rt)===!1&&(yield[tt,rt.value])}}*entriesDescending(){let Ye=[...an(this,Kn)];for(let tt=Ye.length-1;tt>=0;--tt){const rt=Ye[tt],[nt,at]=rt;Wn(this,Nn,Ei).call(this,nt,at)===!1&&(yield[nt,at.value])}Ye=[...an(this,ra)];for(let tt=Ye.length-1;tt>=0;--tt){const rt=Ye[tt],[nt,at]=rt;an(this,Kn).has(nt)||Wn(this,Nn,Ei).call(this,nt,at)===!1&&(yield[nt,at.value])}}*entriesAscending(){for(const[Ye,tt]of Wn(this,Nn,dc).call(this))yield[Ye,tt.value]}get size(){if(!an(this,ei))return an(this,ra).size;let Ye=0;for(const tt of an(this,ra).keys())an(this,Kn).has(tt)||Ye++;return Math.min(an(this,ei)+Ye,an(this,Oo))}get maxSize(){return an(this,Oo)}get maxAge(){return an(this,Ks)}entries(){return this.entriesAscending()}forEach(Ye,tt=this){for(const[rt,nt]of this.entriesAscending())Ye.call(tt,nt,rt,this)}get[Symbol.toStringTag](){return"QuickLRU"}toString(){return`QuickLRU(${this.size}/${this.maxSize})`}[Symbol.for("nodejs.util.inspect.custom")](){return this.toString()}}ei=new WeakMap,Kn=new WeakMap,ra=new WeakMap,Oo=new WeakMap,Ks=new WeakMap,Do=new WeakMap,Nn=new WeakSet,uc=function(Ye){if(typeof an(this,Do)=="function")for(const[tt,rt]of Ye)an(this,Do).call(this,tt,rt.value)},Ei=function(Ye,tt){return typeof tt.expiry=="number"&&tt.expiry<=Date.now()?(typeof an(this,Do)=="function"&&an(this,Do).call(this,Ye,tt.value),this.delete(Ye)):!1},Dg=function(Ye,tt){if(Wn(this,Nn,Ei).call(this,Ye,tt)===!1)return tt.value},Df=function(Ye,tt){return tt.expiry?Wn(this,Nn,Dg).call(this,Ye,tt):tt.value},Pf=function(Ye,tt){const rt=tt.get(Ye);return Wn(this,Nn,Df).call(this,Ye,rt)},Mf=function(Ye,tt){an(this,Kn).set(Ye,tt),$f(this,ei)._++,an(this,ei)>=an(this,Oo)&&(Bn(this,ei,0),Wn(this,Nn,uc).call(this,an(this,ra)),Bn(this,ra,an(this,Kn)),Bn(this,Kn,new Map))},Pg=function(Ye,tt){an(this,ra).delete(Ye),Wn(this,Nn,Mf).call(this,Ye,tt)},dc=function*(){for(const Ye of an(this,ra)){const[tt,rt]=Ye;an(this,Kn).has(tt)||Wn(this,Nn,Ei).call(this,tt,rt)===!1&&(yield Ye)}for(const Ye of an(this,Kn)){const[tt,rt]=Ye;Wn(this,Nn,Ei).call(this,tt,rt)===!1&&(yield Ye)}};const has$3=(e,t)=>e.some(Ye=>typeof Ye=="string"?Ye===t:(Ye.lastIndex=0,Ye.test(t))),isNumericKey=e=>e.trim()!==""&&!Number.isNaN(Number(e)),cache=new QuickLRU({maxSize:1e5}),isBuiltIn=e=>ArrayBuffer.isView(e)||e instanceof Date||e instanceof RegExp||e instanceof Error||e instanceof Map||e instanceof Set||e instanceof WeakMap||e instanceof WeakSet||e instanceof Promise,isObject$5=e=>typeof e=="object"&&e!==null&&!isBuiltIn(e),transform$4=(e,t={},Ye=new WeakMap,tt)=>{if(!isObject$5(e))return e;if(Ye.has(e))return Ye.get(e);const{exclude:rt,pascalCase:nt=!1,stopPaths:at,deep:ot=!1,preserveConsecutiveUppercase:ct=!1}=t,Et=new Set(at);if(Array.isArray(e)){const Ut=[];Ye.set(e,Ut);for(const Vt of e)Ut.push(isObject$5(Vt)?transform$4(Vt,t,Ye,tt):Vt);return Ut}const At={};Ye.set(e,At);const jt=mapObject$1(e,(Ut=>(Vt,zt)=>{if(ot&&isObject$5(zt)){const Gt=Ut===void 0?Vt:`${Ut}.${Vt}`;Et.has(Gt)||(zt=Array.isArray(zt)?zt.map(Kt=>isObject$5(Kt)?transform$4(Kt,t,Ye,Gt):Kt):transform$4(zt,t,Ye,Gt))}if(typeof Vt=="string"&&!isNumericKey(Vt)&&!(rt&&has$3(rt,Vt))){const Gt=nt?`${Vt}_`:Vt;if(cache.has(Gt))Vt=cache.get(Gt);else{const Kt=Vt.match(/^[_$]*/)[0],Yt=camelCase(Vt.slice(Kt.length),{pascalCase:nt,locale:!1,preserveConsecutiveUppercase:ct});Vt=Kt+Yt,Vt.length<100&&cache.set(Gt,Vt)}}return[Vt,zt]})(tt),{deep:!1});Object.assign(At,jt);const qt=Object.getOwnPropertySymbols(e);for(const Ut of qt)At[Ut]=ot&&isObject$5(e[Ut])?transform$4(e[Ut],t,Ye,tt):e[Ut];return At};function camelcaseKeys(e,t){const Ye=new WeakMap;return Array.isArray(e)?e.map(tt=>isObject$5(tt)?transform$4(tt,t,Ye,void 0):tt):transform$4(e,t,Ye)}class LangGraphClient extends EventEmitter{constructor(Ye){super();Dr(this,"client");Dr(this,"currentAssistant",null);Dr(this,"currentThread",null);Dr(this,"tools",new ToolManager);Dr(this,"availableAssistants",[]);Dr(this,"graphState",{});Dr(this,"currentRun");Dr(this,"stopController",null);Dr(this,"messageProcessor");Dr(this,"legacyMode");Dr(this,"_status","idle");Dr(this,"messagesMetadata",{});Dr(this,"humanInTheLoop",null);Dr(this,"interruptData",null);Dr(this,"graphPosition","");Dr(this,"extraParams",{});this.client=Ye.client,this.legacyMode=Ye.legacyMode??!1,this.messageProcessor=new MessageProcessor}get assistants(){return this.client.assistants}get threads(){return this.client.threads}get runs(){return this.client.runs}get status(){return this._status}listAssistants(){return this.assistants.search({metadata:null,offset:0,limit:100})}async initAssistant(Ye,tt={}){try{const rt=await this.listAssistants();if(this.availableAssistants=rt,rt.length>0)if(Ye){if(this.currentAssistant=rt.find(nt=>nt.graph_id===Ye)||null,!this.currentAssistant){if(tt.fallbackToAvailableAssistants)return this.currentAssistant=this.availableAssistants[0],this.currentAssistant;throw new Error("Agent not found: "+Ye)}}else return this.currentAssistant=rt[0],this.currentAssistant;else throw new Error("No assistants found")}catch(rt){throw console.error("Failed to initialize LangGraphClient:",rt),rt}}async createThread({threadId:Ye,graphId:tt}={}){try{return this.currentThread=await this.threads.create({threadId:Ye,graphId:tt}),this.currentThread}catch(rt){throw console.error("Failed to create new thread:",rt),rt}}graphVisualize(){var Ye;return this.assistants.getGraph((Ye=this.currentAssistant)==null?void 0:Ye.assistant_id,{xray:!0})}async listThreads(Ye={}){return this.threads.search({sortOrder:Ye.sortOrder||"desc",sortBy:Ye.sortBy||"updated_at",offset:Ye.offset||0,limit:Ye.limit||10,without_details:!0})}async deleteThread(Ye){return this.threads.delete(Ye)}async resetThread(Ye,tt){var nt,at;await this.initAssistant(Ye),this.currentThread=await this.threads.get(tt),this.graphState=this.currentThread.values;const rt=((nt=this.graphState)==null?void 0:nt.messages)||[];return this.messageProcessor.setGraphMessages(rt),this.emit("value",{event:"messages/partial",data:{messages:this.messageProcessor.getGraphMessages()}}),((at=this.currentThread)==null?void 0:at.status)==="interrupted"&&this.sendMessage([],{joinRunId:this.currentThread.thread_id}),this.currentThread}async resetStream(){const Ye=await this.runs.list(this.currentThread.thread_id),tt=Ye==null?void 0:Ye.find(rt=>rt.status==="running"||rt.status==="pending");tt&&await this.sendMessage([],{joinRunId:tt.run_id})}cloneMessage(Ye){return this.messageProcessor.cloneMessage(Ye)}get renderMessage(){return this.messageProcessor.renderMessages(this.graphState,()=>this.getGraphNodeNow(),this.messagesMetadata)}get tokenCounter(){return this.messageProcessor.getGraphMessages().reduce((Ye,tt)=>{var rt,nt,at,ot,ct;if(tt.usage_metadata)Ye.total_tokens+=((rt=tt.usage_metadata)==null?void 0:rt.total_tokens)||0,Ye.input_tokens+=((nt=tt.usage_metadata)==null?void 0:nt.input_tokens)||0,Ye.output_tokens+=((at=tt.usage_metadata)==null?void 0:at.output_tokens)||0;else if((ot=tt.response_metadata)!=null&&ot.usage){const Et=(ct=tt.response_metadata)==null?void 0:ct.usage;Ye.total_tokens+=Et.total_tokens||0,Ye.input_tokens+=Et.prompt_tokens||0,Ye.output_tokens+=Et.completion_tokens||0}return Ye},{total_tokens:0,input_tokens:0,output_tokens:0})}isFELocking(Ye){var nt;const tt=Ye[Ye.length-1];if(!tt)return!1;const rt=this.tools.getTool(tt==null?void 0:tt.name);return rt&&rt.render&&(tt==null?void 0:tt.type)==="tool"&&!((nt=tt==null?void 0:tt.additional_kwargs)!=null&&nt.done)}cancelRun(){var Ye,tt;(Ye=this.currentThread)!=null&&Ye.thread_id&&((tt=this.currentRun)!=null&&tt.run_id)&&this.runs.cancel(this.currentThread.thread_id,this.currentRun.run_id)}async revertChatTo(Ye,tt){const{state:rt,checkpoint:nt}=await revertChatTo(this.client,this.currentThread.thread_id,Ye,tt);return this.graphState=rt,this.messageProcessor.clearStreamingMessages(),this.messageProcessor.setGraphMessages(rt.messages),rt}async sendMessage(Ye,{joinRunId:tt,extraParams:rt,_debug:nt,command:at}={}){if(!this.currentAssistant)throw new Error("Thread or Assistant not initialized");this.currentThread||(await this.createThread({graphId:this.currentAssistant.graph_id}),this.emit("thread",{event:"thread/create",data:{thread:this.currentThread}})),this.interruptData&&(this.interruptData=null,this.emit("interruptChange",{event:"interruptChange"}));const ot=Array.isArray(Ye)?Ye:[{type:"human",content:Ye}],ct=[];this._status="busy",this.emit("start",{event:"start"});const At=await(async()=>{if(nt!=null&&nt.streamResponse)return nt.streamResponse;const jt=this.legacyMode?qt=>{ct.push(qt),this.processStreamChunk(qt,at)}:void 0;return tt?this.runs.joinStream(this.currentThread.thread_id,tt,{onCallback:jt}):this.runs.stream(this.currentThread.thread_id,this.currentAssistant.assistant_id,{input:{...this.graphState,...this.extraParams,...rt||{},messages:ot,fe_tools:await this.tools.toJSON(this.currentAssistant.graph_id)},streamMode:["messages","values"],streamSubgraphs:!0,command:at,onCallback:jt})})();if(!this.legacyMode)for await(const jt of At)ct.push(jt),this.processStreamChunk(jt,at);const Rt=await this.runFETool();return await this.responseHumanInTheLoop(),Rt&&ct.push(...Rt),this._status="idle",this.emit("done",{event:"done"}),this.messageProcessor.clearStreamingMessages(),ct}getGraphPosition(){return this.graphPosition.split("|").map(Ye=>{const[tt,rt]=Ye.split(":");return{id:rt,name:tt}})}getGraphNodeNow(){const Ye=this.getGraphPosition();return Ye[Ye.length-1]}processStreamChunk(Ye,tt){if(Ye.event==="metadata")this.currentRun=Ye.data;else if(Ye.event==="error"||Ye.event==="Error"||Ye.event==="__stream_error__")this._status="error",this.emit("error",Ye);else{if(Ye.event==="messages/metadata")return Object.assign(this.messagesMetadata,Ye.data),!0;if(Ye.event==="messages/partial"||Ye.event==="messages/complete"){for(const rt of Ye.data)this.messageProcessor.updateStreamingMessage(rt),this.messageProcessor.spendTime.setSpendTime(rt.id);return this.emit("message",Ye),!0}else if(Ye.event==="values"){const rt=Ye.data;if(rt!=null&&rt.__interrupt__){const nt=this.getHumanInTheLoopData(rt==null?void 0:rt.__interrupt__);nt?this.humanInTheLoop=nt:this.interruptData=rt.__interrupt__}else if(rt!=null&&rt.messages){const nt=!!(tt!=null&&tt.resume),at=rt.messages.length>=this.messageProcessor.getGraphMessages().length;(!nt||nt&&at)&&(this.messageProcessor.setGraphMessages(rt.messages),this.emit("value",Ye)),this.graphState=Ye.data}return!0}else Ye.event.startsWith("values|")&&(this.graphPosition=Ye.event.split("|")[1])}return!1}runFETool(){var rt;const Ye=this.messageProcessor.getStreamingMessages(),tt=Ye[Ye.length-1];if(tt&&tt.type==="ai"&&(rt=tt.tool_calls)!=null&&rt.length){const nt=tt.tool_calls.map(at=>{const ot={...at,tool_call_id:at.id,tool_input:JSON.stringify(at.args),additional_kwargs:{}};return this.callFETool(ot,at.args).catch(ct=>console.warn(ct))});return console.log("batch call tools",nt.length),this._status="interrupted",this.currentThread.status="interrupted",this.emit("interruptChange",{event:"interruptChange"}),Promise.all(nt)}}getHumanInTheLoopData(Ye){if(z$6.array(z$6.object({id:z$6.string(),value:z$6.union([z$6.object({review_configs:z$6.array(z$6.any())}),z$6.object({reviewConfigs:z$6.array(z$6.any())})])})).safeParse(Ye).success){const rt=Ye.map(nt=>nt&&"review_configs"in nt.value?{id:nt.id,value:{actionRequests:nt.value.action_requests,reviewConfigs:camelcaseKeys(nt.value.review_configs,{deep:!0})}}:nt);return rt.forEach(nt=>(nt.value.actionRequests.forEach(at=>{at.id=at.id||createActionRequestID(at)}),nt)),{interruptData:rt,result:{}}}}async responseHumanInTheLoop(){if(this.humanInTheLoop){const Ye=this.humanInTheLoop;return this.humanInTheLoop=null,this.resume({decisions:Ye.interruptData[0].value.actionRequests.map(tt=>Ye.result[tt.id])})}}async callFETool(Ye,tt){const rt=this;await this.tools.callTool(Ye.name,tt,{client:rt,message:Ye})}resume(Ye){return this.sendMessage([],{command:{resume:Ye}})}doneFEToolWaiting(Ye,tt){var nt;!this.tools.doneWaiting(Ye,tt)&&((nt=this.currentThread)==null?void 0:nt.status)==="interrupted"&&this.resume(tt)}doneHumanInTheLoopWaiting(Ye,tt,rt){this.tools.doneWaiting(Ye,rt),this.humanInTheLoop&&(this.humanInTheLoop.result[tt]=rt)}getCurrentThread(){return this.currentThread}getCurrentAssistant(){return this.currentAssistant}async reset(){var Ye;await this.initAssistant((Ye=this.currentAssistant)==null?void 0:Ye.graph_id),this.currentThread=null,this.graphState={},this.messageProcessor.setGraphMessages([]),this.messageProcessor.clearStreamingMessages(),this.currentRun=void 0,this.tools.clearWaiting(),this._status="idle",this.emit("value",{event:"messages/partial",data:{messages:[]}})}}let History$1=class{constructor(t){Dr(this,"sessions",new Map);Dr(this,"activeSessionId",null);Dr(this,"clientConfig");Dr(this,"virtualClient");this.clientConfig=t,this.virtualClient=new LangGraphClient(t)}async createSession(t={}){var nt;const Ye=t.sessionId||this.generateSessionId(),tt=t.agentName||((nt=this.virtualClient.getCurrentAssistant())==null?void 0:nt.graph_id);if(!tt)throw new Error("Agent name is required. Please call init() first or provide agentName.");if(this.sessions.has(Ye))throw new Error(`Session ${Ye} already exists`);const rt={sessionId:Ye,agentName:tt};return t.restore&&(rt.thread=await this.virtualClient.threads.get(Ye)),this.sessions.set(Ye,rt),rt}async activateSession(t,Ye=!1){var nt,at,ot;const tt=this.sessions.get(t)||{sessionId:t,agentName:(nt=this.virtualClient.getCurrentAssistant())==null?void 0:nt.graph_id};if(!tt.client){const ct=new LangGraphClient(this.clientConfig);await ct.initAssistant(tt.agentName),(tt.thread||Ye)&&await ct.resetThread(tt.agentName,t),tt.client=ct}const rt=this.activeSessionId&&this.sessions.get(this.activeSessionId);return rt&&((at=rt.client)==null?void 0:at.status)==="idle"&&((ot=rt.client)==null||ot.reset(),rt.client=void 0),this.activeSessionId=t,tt}getActiveSession(){return this.activeSessionId&&this.sessions.get(this.activeSessionId)||null}getSession(t){return this.sessions.get(t)||null}getAllSessions(){return Array.from(this.sessions.values())}async deleteSession(t){if(!this.sessions.get(t))return!1;this.activeSessionId===t&&(this.activeSessionId=null);try{await this.virtualClient.deleteThread(t)}catch(tt){console.warn(`Failed to delete thread for session ${t}:`,tt)}return this.sessions.delete(t),!0}async clearAllSessions(){const t=Array.from(this.sessions.keys());for(const Ye of t)await this.deleteSession(Ye);this.activeSessionId=null}getSessionCount(){return this.sessions.size}generateSessionId(){return typeof crypto<"u"&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,t=>{const Ye=Math.random()*16|0;return(t==="x"?Ye:Ye&3|8).toString(16)})}async addSessionFromThread(t,Ye){var rt;const tt=Ye||((rt=this.virtualClient.getCurrentAssistant())==null?void 0:rt.graph_id);if(!tt)throw new Error("Agent name is required. Please call init() first or provide agentName.");return this.createSession({sessionId:t,agentName:tt,restore:!0})}getActiveClient(){const t=this.getActiveSession();return(t==null?void 0:t.client)||null}async listRemoteSessions(t={}){return this.virtualClient.listThreads(t)}async syncFromRemote(t={}){var nt;const Ye=t.agentName||((nt=this.virtualClient.getCurrentAssistant())==null?void 0:nt.graph_id);if(!Ye)throw new Error("Agent name is required. Please call init() first or provide agentName.");const tt=await this.listRemoteSessions({limit:t.limit||10,sortBy:"updated_at",sortOrder:"desc"}),rt=[];for(const at of tt){const ot=at.thread_id;if(this.sessions.has(ot)){const ct=this.sessions.get(ot);ct.thread=at,rt.push(ct)}else{const ct={sessionId:ot,thread:at,agentName:Ye};this.sessions.set(ot,ct),rt.push(ct)}}return rt}async init(t,Ye){return this.virtualClient.initAssistant(t,Ye)}};const formatTime=e=>e.toLocaleTimeString(),formatFullTime=e=>{const t=ct=>ct.toString().padStart(2,"0"),Ye=e.getFullYear(),tt=t(e.getMonth()+1),rt=t(e.getDate()),nt=t(e.getHours()),at=t(e.getMinutes()),ot=t(e.getSeconds());return`${Ye}-${tt}-${rt} ${nt}:${at}:${ot}`},getMessageContent=e=>typeof e=="string"?e:Array.isArray(e)?e.map(t=>typeof t=="string"?t:t.type==="text"?t.text:t.type==="image_url"?"[图片]":t.type==="tool_use"?"":JSON.stringify(t)).join(""):JSON.stringify(e),getHistoryContent=e=>{var Ye,tt,rt;const t=e.title||e.name||((rt=(tt=(Ye=e==null?void 0:e.values)==null?void 0:Ye.messages)==null?void 0:tt[0])==null?void 0:rt.content);return t&&Array.isArray(t)?t.map(nt=>nt.type==="text"?nt.text:void 0).filter(Boolean):typeof t=="string"?t:""},createChatStore=(e,t,Ye={})=>{const tt=atom(null),rt=atom([]),nt=atom(null),at=atom([]),ot=atom([]),ct=atom(""),Et=atom(null),At=atom(e),Rt=atom(null),jt=atom("__start__"),qt=atom("idle"),Ut=atom(null),Vt=atom(!1),zt=atom([]),Gt=atom([]),Kt=atom(Ye.showHistory??!1),Yt=atom(Ye.showGraph??!1),Xt=atom(null);let Jt=null;const Qt=atom(!1),er=()=>{const sr=nt.get();sr&&Qt.set(sr.status==="busy"||sr.status==="interrupted")},nr=r$5(sr=>{if(nt.get()!==sr)return;const dr=sr.renderMessage,_r=dr[dr.length-1];jt.set((_r==null?void 0:_r.node_name)||(_r==null?void 0:_r.name)||"__start__"),ot.set(dr),qt.set(sr.status)},10),ir=async()=>{const sr=nt.get();sr&&(sr.tools.clearTools(),sr.tools.bindTools(zt.get()))},lr=async()=>{var sr;Yt.get()&&Xt.set(await((sr=nt.get())==null?void 0:sr.graphVisualize())||null)};async function cr(){const sr=new History$1({...t,client:t.client??await createLangGraphServerClient(t)});if(await sr.init(At.get(),{fallbackToAvailableAssistants:Ye.fallbackToAvailableAssistants}),tt.set(sr),Ye.autoRestoreLastSession)if(await mr(),rt.get().length>0){const dr=rt.get();await Ar(dr[0].sessionId)}else await gr();else await gr();return sr}async function mr(){const sr=tt.get();if(sr)try{const dr=await sr.syncFromRemote({limit:10});rt.set(dr),at.set(dr.filter(_r=>_r.thread).map(_r=>_r.thread))}catch(dr){console.error("Failed to sync sessions:",dr)}}async function gr(){const sr=tt.get();if(sr)try{const dr=await sr.createSession();await mr(),await Ar(dr.sessionId)}catch(dr){console.error("Failed to create new session:",dr),Et.set(dr.message)}}function pr(sr){const dr=()=>nt.get()===sr,_r=()=>{dr()&&er()},wr=()=>{if(!dr())return;const Rr=sr.getCurrentThread();Rt.set((Rr==null?void 0:Rr.thread_id)||null),jt.set("__start__");const jr=tt.get(),Fr=jr==null?void 0:jr.getActiveSession();Fr&&Rr&&(Fr.thread=Rr),mr()},Or=()=>{dr()&&(er(),nr(sr))},Pr=Rr=>{dr()&&(er(),Et.set(Rr.data))},Nr=()=>{var Rr;dr()&&(Rt.set(((Rr=sr.getCurrentThread())==null?void 0:Rr.thread_id)||null),er(),nr(sr))},Lr=()=>{var Rr;dr()&&(Rt.set(((Rr=sr.getCurrentThread())==null?void 0:Rr.thread_id)||null),er(),nr(sr))},$r=Rr=>{if(!dr())return;const jr=sr.interruptData;jr?(Ut.set(jr),Vt.set(!0),er()):(Ut.set(null),Vt.set(!1)),nr(sr),nt.set(nt.get())};return sr.on("start",_r),sr.on("thread",wr),sr.on("done",Or),sr.on("error",Pr),sr.on("message",Nr),sr.on("value",Lr),sr.on("interruptChange",$r),()=>{sr.off("start",_r),sr.off("thread",wr),sr.off("done",Or),sr.off("error",Pr),sr.off("message",Nr),sr.off("value",Lr),sr.off("interruptChange",$r)}}async function Ar(sr,dr=!1){var wr;const _r=tt.get();if(_r)try{Jt&&(Jt(),Jt=null),Et.set(null),Ut.set(null),Vt.set(!1);const Pr=(await _r.activateSession(sr,dr)).client;if(Pr){Jt=pr(Pr),(wr=Ye.onInit)==null||wr.call(Ye,Pr),nt.set(Pr),Rt.set(sr);const Nr=Pr.renderMessage;ot.set(Nr);const Lr=Nr[Nr.length-1];jt.set((Lr==null?void 0:Lr.node_name)||(Lr==null?void 0:Lr.name)||"__start__"),er(),Yt.get()&&lr(),ir();const $r=Pr.getCurrentThread();if($r&&($r.status==="busy"||$r.status==="pending")&&await Pr.resetStream(),($r==null?void 0:$r.status)==="interrupted"){const Rr=Pr.interruptData;Rr&&(Ut.set(Rr),Vt.set(!0))}}}catch(Or){console.error("Failed to activate session:",Or),Et.set(Or.message)}}async function vr(sr,dr,_r=!1,wr=!1){const Or=nt.get();if(!(!_r&&!ct.get().trim()&&!(sr!=null&&sr.length)||!Or)&&Or.status!=="busy"){Et.set(null);try{Qt.set(!0),await Or.sendMessage(sr||ct.get(),dr)}catch(Pr){if(Pr.message.includes("422"))await Or.resetStream();else throw Pr}finally{ct.set(""),er()}}}function xr(){var sr;(sr=nt.get())==null||sr.cancelRun()}function Sr(sr){const dr=Gt.get();Gt.set(dr.includes(sr)?dr.filter(_r=>_r!==sr):[...dr,sr])}function Ir(){Kt.set(!Kt.get()),Kt.get()&&mr()}function yr(sr){const dr=at.get();at.set([sr,...dr])}function hr(sr){var wr;const dr=nt.get();if(!dr)return null;const _r=(wr=dr.tools.getTool(sr))==null?void 0:wr.render;return _r?Or=>_r(new ToolRenderData(Or,dr)):null}const Tr=useArtifacts$1(ot,nt);return{data:{client:nt,history:tt,sessions:rt,renderMessages:ot,userInput:ct,loading:Qt,inChatError:Et,currentAgent:At,currentChatId:Rt,currentNodeName:jt,currentStatus:qt,interruptData:Ut,isInterrupted:Vt,tools:zt,collapsedTools:Gt,showGraph:Yt,graphVisualize:Xt,showHistory:Kt,historyList:at,...Tr.data},mutations:{initClient:cr,getClient:()=>nt.get(),getHistory:()=>tt.get(),activateSession:Ar,createNewSession:gr,refreshSessionList:mr,refreshHistoryList:mr,sendMessage:vr,stopGeneration:xr,setUserInput:sr=>ct.set(sr),async revertChatTo(sr,dr=!1,_r){var wr;if(await((wr=nt.get())==null?void 0:wr.revertChatTo(sr,_r||{})),dr)return vr([],_r,!0);nr(nt.get())},refreshTools:ir,setTools(sr){zt.set(sr),ir()},toggleToolCollapse:Sr,getToolUIRender:hr,isFELocking:()=>{var sr;return(sr=nt.get())==null?void 0:sr.isFELocking(ot.get())},toggleHistoryVisible:Ir,toggleGraphVisible(){Yt.set(!Yt.get()),Yt.get()&&lr()},refreshGraph:lr,setCurrentAgent(sr){return At.set(sr),cr()},resumeFromInterrupt(sr){return vr([],{command:{resume:sr}},!0)},addToHistory:yr,createNewChat:gr,toHistoryChat:sr=>Ar(sr.thread_id,!0),async deleteHistoryChat(sr){const dr=tt.get();dr&&(await dr.deleteSession(sr.thread_id),await mr())},...Tr.mutation}}},useUnionStore=(e,t)=>({...Object.fromEntries(Object.entries(e.data).map(([tt,rt])=>[tt,t(rt)])),...e.mutations});let emit=(e,t)=>Ye=>{e.current!==Ye&&(e.current=Ye,t())};function useStore$1(e,{keys:t,deps:Ye=[e,t]}={}){let tt=reactExports.useRef();tt.current=e.get();let rt=reactExports.useCallback(at=>(emit(tt,at)(e.value),(t==null?void 0:t.length)>0?listenKeys(e,t,emit(tt,at)):e.listen(emit(tt,at))),Ye),nt=()=>tt.current;return reactExports.useSyncExternalStore(rt,nt,nt)}const ChatContext=reactExports.createContext(void 0),useChat=()=>{const e=reactExports.useContext(ChatContext);if(!e)throw new Error("useChat must be used within a ChatProvider");return e},ChatProvider=({children:e,defaultAgent:t="",apiUrl:Ye="http://localhost:8123",defaultHeaders:tt,withCredentials:rt=!1,fetch:nt,showHistory:at=!1,showGraph:ot=!1,fallbackToAvailableAssistants:ct=!1,autoRestoreLastSession:Et=!1,onInitError:At,client:Rt,legacyMode:jt=!1})=>{const qt=reactExports.useMemo(()=>tt||{},[tt]),Ut=reactExports.useRef(At);reactExports.useEffect(()=>{Ut.current=At},[At]);const Vt=reactExports.useMemo(()=>{const Kt=nt||globalThis.fetch,Xt={apiUrl:Ye,defaultHeaders:qt,callerOptions:{fetch:rt?(Jt,Qt)=>(Qt.credentials="include",Kt(Jt,Qt)):Kt,maxRetries:1},legacyMode:jt};return Rt&&(Xt.client=Rt),createChatStore(t,Xt,{showHistory:at,showGraph:ot,fallbackToAvailableAssistants:ct,autoRestoreLastSession:Et})},[t,Ye,qt,rt,nt,at,ot,ct,Et]),zt=useUnionStore(Vt,useStore$1),Gt=reactExports.useRef(!1);return reactExports.useEffect(()=>{Gt.current||(Gt.current=!0,zt.initClient().catch(Kt=>{console.error(Kt),Ut.current&&Ut.current(Kt,zt.currentAgent)}))},[zt]),reactExports.createElement(ChatContext.Provider,{value:zt},e)};/**
84
84
  * @license lucide-react v0.544.0 - ISC
85
85
  *
86
86
  * This source code is licensed under the ISC license.
@@ -350,7 +350,7 @@ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.
350
350
  *
351
351
  * This source code is licensed under the ISC license.
352
352
  * See the LICENSE file in the root directory of this source tree.
353
- */const __iconNode$3=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],X$6=createLucideIcon$1("x",__iconNode$3),ExtraParamsContext=reactExports.createContext(void 0),ExtraParamsProvider=({children:e})=>{const[t,Ye]=reactExports.useState(()=>{const rt=localStorage.getItem("extraParams");try{return rt?JSON.parse(rt):{}}catch(nt){return console.error("Failed to parse extraParams from localStorage",nt),{}}});reactExports.useEffect(()=>{localStorage.setItem("extraParams",JSON.stringify(t))},[t]);const tt=rt=>{Ye(rt)};return jsxRuntimeExports.jsx(ExtraParamsContext.Provider,{value:{extraParams:t,setExtraParams:tt},children:e})},useExtraParams=()=>{const e=reactExports.useContext(ExtraParamsContext);if(e===void 0)throw new Error("useExtraParams must be used within an ExtraParamsProvider");return e},parseFileTags=e=>{const Ye=e.trim().match(/^<file type="([^"]+)" url="([^"]+)"><\/file>$/);if(Ye){const[,tt,rt]=Ye;if(tt==="image")return[{type:"image_url",image_url:{url:rt}}];if(tt==="video")return[{type:"video_url",video_url:{url:rt}}];if(tt==="audio")return[{type:"audio_url",audio_url:{url:rt}}];if(tt==="other")return[{type:"file_url",file_url:{url:rt}}]}return[]},MessageHuman=({message:e,content:t})=>{const Ye=useChat(),{extraParams:tt}=useExtraParams(),[rt,nt]=reactExports.useState(!1),[at,ot]=reactExports.useState(!1),[ct,Et]=reactExports.useState(""),At=Vt=>typeof Vt=="string"?Vt:Array.isArray(Vt)?Vt.filter(zt=>zt.type==="text"&&typeof zt.text=="string").map(zt=>zt.text).join(""):"",Rt=()=>{ot(!0),Et(At(t))},jt=async()=>{ct.trim()!==At(t)&&(await Ye.revertChatTo(e.id,!1,{includeMessageId:!0}),await Ye.sendMessage([{type:"human",content:ct}],{extraParams:tt})),ot(!1),Et("")},qt=()=>{ot(!1),Et("")},Ut=()=>at?jsxRuntimeExports.jsxs("div",{className:"flex flex-col gap-2",children:[jsxRuntimeExports.jsx("textarea",{value:ct,onChange:Vt=>Et(Vt.target.value),className:"w-full bg-transparent text-white rounded px-3 py-2 min-h-[120px] resize-none border-2 border-blue-400 outline-none",placeholder:"编辑消息内容...",autoFocus:!0}),jsxRuntimeExports.jsxs("div",{className:"flex gap-2 justify-end",children:[jsxRuntimeExports.jsx("button",{onClick:jt,className:"px-3 py-1 bg-green-600 text-white rounded text-sm hover:bg-green-700 transition-colors",title:"确认编辑",children:jsxRuntimeExports.jsx(Check$2,{size:14})}),jsxRuntimeExports.jsx("button",{onClick:qt,className:"px-3 py-1 bg-gray-600 text-white rounded text-sm hover:bg-gray-700 transition-colors",title:"取消编辑",children:jsxRuntimeExports.jsx(X$6,{size:14})})]})]}):typeof t=="string"?jsxRuntimeExports.jsx("div",{className:"text-white whitespace-pre-wrap cursor-pointer",onDoubleClick:Rt,title:"双击编辑",children:t}):Array.isArray(t)?t.flatMap(Vt=>{if(Vt.type==="text"&&typeof Vt.text=="string"){const zt=parseFileTags(Vt.text);return zt.length>0?zt:[Vt]}else return[Vt]}).map((Vt,zt)=>{switch(Vt.type){case"text":return jsxRuntimeExports.jsx("div",{className:"text-white whitespace-pre-wrap cursor-pointer",onDoubleClick:Rt,title:"双击编辑",children:Vt.text},zt);case"image_url":return jsxRuntimeExports.jsx("div",{className:"mt-2",children:jsxRuntimeExports.jsx("img",{src:Vt.image_url.url,alt:Vt.image_url.url,className:"max-w-[200px] rounded"})},zt);case"video_url":return jsxRuntimeExports.jsx("div",{className:"mt-2",children:jsxRuntimeExports.jsx("video",{controls:!0,src:Vt.video_url.url,className:"max-w-[200px] rounded",children:"您的浏览器不支持视频播放"})},zt);case"audio_url":return jsxRuntimeExports.jsx("div",{className:"mt-2",children:jsxRuntimeExports.jsx("audio",{controls:!0,src:Vt.audio_url.url,className:"w-full",children:"您的浏览器不支持音频播放"})},zt);case"file_url":return jsxRuntimeExports.jsxs("div",{className:"mt-2 p-2 bg-gray-100 rounded flex items-center gap-2",children:[jsxRuntimeExports.jsx("svg",{viewBox:"0 0 24 24",width:"20",height:"20",fill:"currentColor",className:"text-gray-500",children:jsxRuntimeExports.jsx("path",{d:"M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M18,20H6V4H13V9H18V20Z"})}),jsxRuntimeExports.jsx("a",{href:Vt.file_url.url,target:"_blank",rel:"noopener noreferrer",className:"text-blue-600 hover:text-blue-800 underline text-sm",children:"下载文件"})]},zt);default:return jsxRuntimeExports.jsx("div",{className:"text-white whitespace-pre-wrap",children:JSON.stringify(Vt)},zt)}}):jsxRuntimeExports.jsx("div",{className:"text-white whitespace-pre-wrap",children:JSON.stringify(t)});return jsxRuntimeExports.jsxs("div",{className:"flex flex-row w-full justify-end group/message-human ",children:[jsxRuntimeExports.jsxs("div",{className:"hidden group-hover/message-human:flex gap-2 mx-2",children:[jsxRuntimeExports.jsx("button",{onClick:()=>Ye.revertChatTo(e.id,!0),className:"p-2 text-gray-700 transition-colors cursor-pointer",title:"重试",children:jsxRuntimeExports.jsx(RotateCcw,{size:16})}),jsxRuntimeExports.jsx("button",{onClick:Rt,className:"p-2 text-gray-700 transition-colors cursor-pointer",title:"编辑",children:jsxRuntimeExports.jsx(PenLine,{size:16})}),jsxRuntimeExports.jsx("button",{onClick:()=>nt(!rt),className:"p-2 text-gray-700 transition-colors cursor-pointer",title:rt?"收起":"展开",children:rt?jsxRuntimeExports.jsx(ChevronUp,{size:16}):jsxRuntimeExports.jsx(ChevronDown$1,{size:16})})]}),jsxRuntimeExports.jsx("div",{className:`flex flex-col w-fit bg-blue-500/90 rounded-2xl text-white px-4 py-3 max-w-[80%] ${rt||at?"":"max-h-40 overflow-y-auto"} ${at?"w-full h-52":""}`,children:Ut()})]})},MonitorContext=reactExports.createContext(void 0),MonitorProvider=({children:e})=>{const[t,Ye]=reactExports.useState(!1),[tt,rt]=reactExports.useState(""),nt=ct=>{rt(ct),Ye(!0)},at=()=>{Ye(!1),rt("")},ot=(ct,Et)=>{const At=new URL("/api/open-smith/ui/index.html",window.location.origin),Rt=new URLSearchParams;Rt.set("thread_id",ct),Et&&Rt.set("trace_id",Et),At.hash="/?"+Rt.toString(),nt(At.toString())};return jsxRuntimeExports.jsx(MonitorContext.Provider,{value:{isOpen:t,url:tt,openMonitor:nt,closeModal:at,openMonitorWithChat:ot},children:e})},useMonitor=()=>reactExports.useContext(MonitorContext),Monitor=()=>{const{isOpen:e,url:t,closeModal:Ye}=useMonitor();return e?jsxRuntimeExports.jsx("div",{className:"fixed inset-0 flex items-center justify-center z-50",children:jsxRuntimeExports.jsxs("div",{className:"bg-white rounded-lg shadow-xl max-w-7xl w-full mx-4 max-h-[90vh] h-full flex flex-col border border-gray-200 relative",children:[jsxRuntimeExports.jsx("button",{onClick:Ye,className:"text-gray-400 hover:text-gray-600 text-2xl leading-none absolute top-2 right-2 z-50 cursor-pointer",children:"×"}),jsxRuntimeExports.jsx("div",{className:"flex-1 p-4 min-h-0",children:t&&jsxRuntimeExports.jsx("iframe",{src:t,className:"w-full h-full border rounded",title:"Monitor",sandbox:"allow-scripts allow-same-origin"})})]})}):null},formatTokens=e=>e.toString(),UsageMetadata=({usage_metadata:e,spend_time:t,response_metadata:Ye,id:tt,tool_call_id:rt})=>{const nt=t?(e.output_tokens||0)*1e3/(t||1):0;t=t&&!isNaN(t)?t:0;const{currentChatId:at}=useChat(),ot=useMonitor();return jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-between text-xs text-gray-400 mt-3",children:[jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-3",children:[jsxRuntimeExports.jsx(TokenPanel,{usage_metadata:e}),!!t&&jsxRuntimeExports.jsxs("span",{className:"text-gray-400",children:[(t/1e3).toFixed(2),"s"]}),!!nt&&jsxRuntimeExports.jsxs("span",{className:"text-gray-400",children:[nt.toFixed(2)," TPS"]})]}),jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-2",children:[(Ye==null?void 0:Ye.model_name)&&jsxRuntimeExports.jsx("span",{className:"text-gray-500",children:Ye.model_name}),rt&&jsxRuntimeExports.jsxs("span",{className:"text-gray-400",children:["Tool: ",rt]}),tt&&jsxRuntimeExports.jsxs("span",{className:"text-gray-400",onClick:()=>ot==null?void 0:ot.openMonitorWithChat(at,tt),children:["ID: ",tt]})]})]})},TokenPanel=({usage_metadata:e})=>{var t;return jsxRuntimeExports.jsx("div",{className:"flex items-center gap-1",children:jsxRuntimeExports.jsxs("span",{className:"flex items-center gap-1.5 group relative",children:[jsxRuntimeExports.jsx("span",{className:"text-xs",children:"📊"}),jsxRuntimeExports.jsx("span",{className:"text-gray-400",children:formatTokens(e.total_tokens||0)}),jsxRuntimeExports.jsx("div",{className:"hidden group-hover:block absolute bottom-full left-0 mb-2 bg-white/95 backdrop-blur-sm border border-gray-200 shadow-lg rounded-lg text-xs z-10 min-w-[280px]",children:jsxRuntimeExports.jsxs("div",{className:"p-3",children:[jsxRuntimeExports.jsx("div",{className:"text-sm font-medium text-gray-700 mb-3 border-b border-gray-100 pb-2",children:"Token 使用详情"}),jsxRuntimeExports.jsxs("div",{className:"space-y-3",children:[jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-between",children:[jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntimeExports.jsx("span",{className:"text-green-600",children:"📥"}),jsxRuntimeExports.jsx("span",{className:"text-gray-700 font-medium",children:"输入 Token"})]}),jsxRuntimeExports.jsx("span",{className:"text-gray-900 font-mono",children:formatTokens(e.input_tokens||0)})]}),!!((t=e.input_token_details)!=null&&t.cache_read)&&jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-between ml-6",children:[jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntimeExports.jsx("span",{className:"text-blue-600",children:"💾"}),jsxRuntimeExports.jsx("span",{className:"text-gray-600 text-xs",children:"缓存读取"})]}),jsxRuntimeExports.jsx("span",{className:"text-blue-700 font-mono text-xs",children:formatTokens(e.input_token_details.cache_read)})]}),jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-between border-t border-gray-100 pt-3",children:[jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntimeExports.jsx("span",{className:"text-blue-600",children:"📤"}),jsxRuntimeExports.jsx("span",{className:"text-gray-700 font-medium",children:"输出 Token"})]}),jsxRuntimeExports.jsx("span",{className:"text-gray-900 font-mono",children:formatTokens(e.output_tokens||0)})]}),(e.prompt_tokens_details||e.completion_tokens_details)&&jsxRuntimeExports.jsxs("div",{className:"border-t border-gray-100 pt-3 mt-3",children:[jsxRuntimeExports.jsx("div",{className:"text-xs text-gray-500 mb-2",children:"详细数据"}),jsxRuntimeExports.jsxs("div",{className:"text-xs text-gray-400 bg-gray-50 p-2 rounded",children:["输入详情: ",JSON.stringify(e)]})]})]})]})})]})})};function r$4(e){var t,Ye,tt="";if(typeof e=="string"||typeof e=="number")tt+=e;else if(typeof e=="object")if(Array.isArray(e)){var rt=e.length;for(t=0;t<rt;t++)e[t]&&(Ye=r$4(e[t]))&&(tt&&(tt+=" "),tt+=Ye)}else for(Ye in e)e[Ye]&&(tt&&(tt+=" "),tt+=Ye);return tt}function clsx(){for(var e,t,Ye=0,tt="",rt=arguments.length;Ye<rt;Ye++)(e=arguments[Ye])&&(t=r$4(e))&&(tt&&(tt+=" "),tt+=t);return tt}const CLASS_PART_SEPARATOR="-",createClassGroupUtils=e=>{const t=createClassMap(e),{conflictingClassGroups:Ye,conflictingClassGroupModifiers:tt}=e;return{getClassGroupId:at=>{const ot=at.split(CLASS_PART_SEPARATOR);return ot[0]===""&&ot.length!==1&&ot.shift(),getGroupRecursive(ot,t)||getGroupIdForArbitraryProperty(at)},getConflictingClassGroupIds:(at,ot)=>{const ct=Ye[at]||[];return ot&&tt[at]?[...ct,...tt[at]]:ct}}},getGroupRecursive=(e,t)=>{var at;if(e.length===0)return t.classGroupId;const Ye=e[0],tt=t.nextPart.get(Ye),rt=tt?getGroupRecursive(e.slice(1),tt):void 0;if(rt)return rt;if(t.validators.length===0)return;const nt=e.join(CLASS_PART_SEPARATOR);return(at=t.validators.find(({validator:ot})=>ot(nt)))==null?void 0:at.classGroupId},arbitraryPropertyRegex=/^\[(.+)\]$/,getGroupIdForArbitraryProperty=e=>{if(arbitraryPropertyRegex.test(e)){const t=arbitraryPropertyRegex.exec(e)[1],Ye=t==null?void 0:t.substring(0,t.indexOf(":"));if(Ye)return"arbitrary.."+Ye}},createClassMap=e=>{const{theme:t,classGroups:Ye}=e,tt={nextPart:new Map,validators:[]};for(const rt in Ye)processClassesRecursively(Ye[rt],tt,rt,t);return tt},processClassesRecursively=(e,t,Ye,tt)=>{e.forEach(rt=>{if(typeof rt=="string"){const nt=rt===""?t:getPart(t,rt);nt.classGroupId=Ye;return}if(typeof rt=="function"){if(isThemeGetter(rt)){processClassesRecursively(rt(tt),t,Ye,tt);return}t.validators.push({validator:rt,classGroupId:Ye});return}Object.entries(rt).forEach(([nt,at])=>{processClassesRecursively(at,getPart(t,nt),Ye,tt)})})},getPart=(e,t)=>{let Ye=e;return t.split(CLASS_PART_SEPARATOR).forEach(tt=>{Ye.nextPart.has(tt)||Ye.nextPart.set(tt,{nextPart:new Map,validators:[]}),Ye=Ye.nextPart.get(tt)}),Ye},isThemeGetter=e=>e.isThemeGetter,createLruCache=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,Ye=new Map,tt=new Map;const rt=(nt,at)=>{Ye.set(nt,at),t++,t>e&&(t=0,tt=Ye,Ye=new Map)};return{get(nt){let at=Ye.get(nt);if(at!==void 0)return at;if((at=tt.get(nt))!==void 0)return rt(nt,at),at},set(nt,at){Ye.has(nt)?Ye.set(nt,at):rt(nt,at)}}},IMPORTANT_MODIFIER="!",MODIFIER_SEPARATOR=":",MODIFIER_SEPARATOR_LENGTH=MODIFIER_SEPARATOR.length,createParseClassName=e=>{const{prefix:t,experimentalParseClassName:Ye}=e;let tt=rt=>{const nt=[];let at=0,ot=0,ct=0,Et;for(let Ut=0;Ut<rt.length;Ut++){let Vt=rt[Ut];if(at===0&&ot===0){if(Vt===MODIFIER_SEPARATOR){nt.push(rt.slice(ct,Ut)),ct=Ut+MODIFIER_SEPARATOR_LENGTH;continue}if(Vt==="/"){Et=Ut;continue}}Vt==="["?at++:Vt==="]"?at--:Vt==="("?ot++:Vt===")"&&ot--}const At=nt.length===0?rt:rt.substring(ct),Rt=stripImportantModifier(At),jt=Rt!==At,qt=Et&&Et>ct?Et-ct:void 0;return{modifiers:nt,hasImportantModifier:jt,baseClassName:Rt,maybePostfixModifierPosition:qt}};if(t){const rt=t+MODIFIER_SEPARATOR,nt=tt;tt=at=>at.startsWith(rt)?nt(at.substring(rt.length)):{isExternal:!0,modifiers:[],hasImportantModifier:!1,baseClassName:at,maybePostfixModifierPosition:void 0}}if(Ye){const rt=tt;tt=nt=>Ye({className:nt,parseClassName:rt})}return tt},stripImportantModifier=e=>e.endsWith(IMPORTANT_MODIFIER)?e.substring(0,e.length-1):e.startsWith(IMPORTANT_MODIFIER)?e.substring(1):e,createSortModifiers=e=>{const t=Object.fromEntries(e.orderSensitiveModifiers.map(tt=>[tt,!0]));return tt=>{if(tt.length<=1)return tt;const rt=[];let nt=[];return tt.forEach(at=>{at[0]==="["||t[at]?(rt.push(...nt.sort(),at),nt=[]):nt.push(at)}),rt.push(...nt.sort()),rt}},createConfigUtils=e=>({cache:createLruCache(e.cacheSize),parseClassName:createParseClassName(e),sortModifiers:createSortModifiers(e),...createClassGroupUtils(e)}),SPLIT_CLASSES_REGEX=/\s+/,mergeClassList=(e,t)=>{const{parseClassName:Ye,getClassGroupId:tt,getConflictingClassGroupIds:rt,sortModifiers:nt}=t,at=[],ot=e.trim().split(SPLIT_CLASSES_REGEX);let ct="";for(let Et=ot.length-1;Et>=0;Et-=1){const At=ot[Et],{isExternal:Rt,modifiers:jt,hasImportantModifier:qt,baseClassName:Ut,maybePostfixModifierPosition:Vt}=Ye(At);if(Rt){ct=At+(ct.length>0?" "+ct:ct);continue}let zt=!!Vt,Gt=tt(zt?Ut.substring(0,Vt):Ut);if(!Gt){if(!zt){ct=At+(ct.length>0?" "+ct:ct);continue}if(Gt=tt(Ut),!Gt){ct=At+(ct.length>0?" "+ct:ct);continue}zt=!1}const Kt=nt(jt).join(":"),Yt=qt?Kt+IMPORTANT_MODIFIER:Kt,Xt=Yt+Gt;if(at.includes(Xt))continue;at.push(Xt);const Jt=rt(Gt,zt);for(let Qt=0;Qt<Jt.length;++Qt){const er=Jt[Qt];at.push(Yt+er)}ct=At+(ct.length>0?" "+ct:ct)}return ct};function twJoin(){let e=0,t,Ye,tt="";for(;e<arguments.length;)(t=arguments[e++])&&(Ye=toValue(t))&&(tt&&(tt+=" "),tt+=Ye);return tt}const toValue=e=>{if(typeof e=="string")return e;let t,Ye="";for(let tt=0;tt<e.length;tt++)e[tt]&&(t=toValue(e[tt]))&&(Ye&&(Ye+=" "),Ye+=t);return Ye};function createTailwindMerge(e,...t){let Ye,tt,rt,nt=at;function at(ct){const Et=t.reduce((At,Rt)=>Rt(At),e());return Ye=createConfigUtils(Et),tt=Ye.cache.get,rt=Ye.cache.set,nt=ot,ot(ct)}function ot(ct){const Et=tt(ct);if(Et)return Et;const At=mergeClassList(ct,Ye);return rt(ct,At),At}return function(){return nt(twJoin.apply(null,arguments))}}const fromTheme=e=>{const t=Ye=>Ye[e]||[];return t.isThemeGetter=!0,t},arbitraryValueRegex=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,arbitraryVariableRegex=/^\((?:(\w[\w-]*):)?(.+)\)$/i,fractionRegex=/^\d+\/\d+$/,tshirtUnitRegex=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,lengthUnitRegex=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,colorFunctionRegex=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,shadowRegex=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,imageRegex=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,isFraction=e=>fractionRegex.test(e),isNumber$3=e=>!!e&&!Number.isNaN(Number(e)),isInteger=e=>!!e&&Number.isInteger(Number(e)),isPercent$1=e=>e.endsWith("%")&&isNumber$3(e.slice(0,-1)),isTshirtSize=e=>tshirtUnitRegex.test(e),isAny=()=>!0,isLengthOnly=e=>lengthUnitRegex.test(e)&&!colorFunctionRegex.test(e),isNever=()=>!1,isShadow=e=>shadowRegex.test(e),isImage=e=>imageRegex.test(e),isAnyNonArbitrary=e=>!isArbitraryValue(e)&&!isArbitraryVariable(e),isArbitrarySize=e=>getIsArbitraryValue(e,isLabelSize,isNever),isArbitraryValue=e=>arbitraryValueRegex.test(e),isArbitraryLength=e=>getIsArbitraryValue(e,isLabelLength,isLengthOnly),isArbitraryNumber=e=>getIsArbitraryValue(e,isLabelNumber,isNumber$3),isArbitraryPosition=e=>getIsArbitraryValue(e,isLabelPosition,isNever),isArbitraryImage=e=>getIsArbitraryValue(e,isLabelImage,isImage),isArbitraryShadow=e=>getIsArbitraryValue(e,isLabelShadow,isShadow),isArbitraryVariable=e=>arbitraryVariableRegex.test(e),isArbitraryVariableLength=e=>getIsArbitraryVariable(e,isLabelLength),isArbitraryVariableFamilyName=e=>getIsArbitraryVariable(e,isLabelFamilyName),isArbitraryVariablePosition=e=>getIsArbitraryVariable(e,isLabelPosition),isArbitraryVariableSize=e=>getIsArbitraryVariable(e,isLabelSize),isArbitraryVariableImage=e=>getIsArbitraryVariable(e,isLabelImage),isArbitraryVariableShadow=e=>getIsArbitraryVariable(e,isLabelShadow,!0),getIsArbitraryValue=(e,t,Ye)=>{const tt=arbitraryValueRegex.exec(e);return tt?tt[1]?t(tt[1]):Ye(tt[2]):!1},getIsArbitraryVariable=(e,t,Ye=!1)=>{const tt=arbitraryVariableRegex.exec(e);return tt?tt[1]?t(tt[1]):Ye:!1},isLabelPosition=e=>e==="position"||e==="percentage",isLabelImage=e=>e==="image"||e==="url",isLabelSize=e=>e==="length"||e==="size"||e==="bg-size",isLabelLength=e=>e==="length",isLabelNumber=e=>e==="number",isLabelFamilyName=e=>e==="family-name",isLabelShadow=e=>e==="shadow",getDefaultConfig=()=>{const e=fromTheme("color"),t=fromTheme("font"),Ye=fromTheme("text"),tt=fromTheme("font-weight"),rt=fromTheme("tracking"),nt=fromTheme("leading"),at=fromTheme("breakpoint"),ot=fromTheme("container"),ct=fromTheme("spacing"),Et=fromTheme("radius"),At=fromTheme("shadow"),Rt=fromTheme("inset-shadow"),jt=fromTheme("text-shadow"),qt=fromTheme("drop-shadow"),Ut=fromTheme("blur"),Vt=fromTheme("perspective"),zt=fromTheme("aspect"),Gt=fromTheme("ease"),Kt=fromTheme("animate"),Yt=()=>["auto","avoid","all","avoid-page","page","left","right","column"],Xt=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],Jt=()=>[...Xt(),isArbitraryVariable,isArbitraryValue],Qt=()=>["auto","hidden","clip","visible","scroll"],er=()=>["auto","contain","none"],nr=()=>[isArbitraryVariable,isArbitraryValue,ct],ir=()=>[isFraction,"full","auto",...nr()],lr=()=>[isInteger,"none","subgrid",isArbitraryVariable,isArbitraryValue],cr=()=>["auto",{span:["full",isInteger,isArbitraryVariable,isArbitraryValue]},isInteger,isArbitraryVariable,isArbitraryValue],mr=()=>[isInteger,"auto",isArbitraryVariable,isArbitraryValue],gr=()=>["auto","min","max","fr",isArbitraryVariable,isArbitraryValue],pr=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],Ar=()=>["start","end","center","stretch","center-safe","end-safe"],vr=()=>["auto",...nr()],xr=()=>[isFraction,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...nr()],Sr=()=>[e,isArbitraryVariable,isArbitraryValue],Ir=()=>[...Xt(),isArbitraryVariablePosition,isArbitraryPosition,{position:[isArbitraryVariable,isArbitraryValue]}],yr=()=>["no-repeat",{repeat:["","x","y","space","round"]}],hr=()=>["auto","cover","contain",isArbitraryVariableSize,isArbitrarySize,{size:[isArbitraryVariable,isArbitraryValue]}],Tr=()=>[isPercent$1,isArbitraryVariableLength,isArbitraryLength],sr=()=>["","none","full",Et,isArbitraryVariable,isArbitraryValue],dr=()=>["",isNumber$3,isArbitraryVariableLength,isArbitraryLength],_r=()=>["solid","dashed","dotted","double"],wr=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],Or=()=>[isNumber$3,isPercent$1,isArbitraryVariablePosition,isArbitraryPosition],Pr=()=>["","none",Ut,isArbitraryVariable,isArbitraryValue],Nr=()=>["none",isNumber$3,isArbitraryVariable,isArbitraryValue],Lr=()=>["none",isNumber$3,isArbitraryVariable,isArbitraryValue],$r=()=>[isNumber$3,isArbitraryVariable,isArbitraryValue],Rr=()=>[isFraction,"full",...nr()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[isTshirtSize],breakpoint:[isTshirtSize],color:[isAny],container:[isTshirtSize],"drop-shadow":[isTshirtSize],ease:["in","out","in-out"],font:[isAnyNonArbitrary],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[isTshirtSize],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[isTshirtSize],shadow:[isTshirtSize],spacing:["px",isNumber$3],text:[isTshirtSize],"text-shadow":[isTshirtSize],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",isFraction,isArbitraryValue,isArbitraryVariable,zt]}],container:["container"],columns:[{columns:[isNumber$3,isArbitraryValue,isArbitraryVariable,ot]}],"break-after":[{"break-after":Yt()}],"break-before":[{"break-before":Yt()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:Jt()}],overflow:[{overflow:Qt()}],"overflow-x":[{"overflow-x":Qt()}],"overflow-y":[{"overflow-y":Qt()}],overscroll:[{overscroll:er()}],"overscroll-x":[{"overscroll-x":er()}],"overscroll-y":[{"overscroll-y":er()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:ir()}],"inset-x":[{"inset-x":ir()}],"inset-y":[{"inset-y":ir()}],start:[{start:ir()}],end:[{end:ir()}],top:[{top:ir()}],right:[{right:ir()}],bottom:[{bottom:ir()}],left:[{left:ir()}],visibility:["visible","invisible","collapse"],z:[{z:[isInteger,"auto",isArbitraryVariable,isArbitraryValue]}],basis:[{basis:[isFraction,"full","auto",ot,...nr()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[isNumber$3,isFraction,"auto","initial","none",isArbitraryValue]}],grow:[{grow:["",isNumber$3,isArbitraryVariable,isArbitraryValue]}],shrink:[{shrink:["",isNumber$3,isArbitraryVariable,isArbitraryValue]}],order:[{order:[isInteger,"first","last","none",isArbitraryVariable,isArbitraryValue]}],"grid-cols":[{"grid-cols":lr()}],"col-start-end":[{col:cr()}],"col-start":[{"col-start":mr()}],"col-end":[{"col-end":mr()}],"grid-rows":[{"grid-rows":lr()}],"row-start-end":[{row:cr()}],"row-start":[{"row-start":mr()}],"row-end":[{"row-end":mr()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":gr()}],"auto-rows":[{"auto-rows":gr()}],gap:[{gap:nr()}],"gap-x":[{"gap-x":nr()}],"gap-y":[{"gap-y":nr()}],"justify-content":[{justify:[...pr(),"normal"]}],"justify-items":[{"justify-items":[...Ar(),"normal"]}],"justify-self":[{"justify-self":["auto",...Ar()]}],"align-content":[{content:["normal",...pr()]}],"align-items":[{items:[...Ar(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...Ar(),{baseline:["","last"]}]}],"place-content":[{"place-content":pr()}],"place-items":[{"place-items":[...Ar(),"baseline"]}],"place-self":[{"place-self":["auto",...Ar()]}],p:[{p:nr()}],px:[{px:nr()}],py:[{py:nr()}],ps:[{ps:nr()}],pe:[{pe:nr()}],pt:[{pt:nr()}],pr:[{pr:nr()}],pb:[{pb:nr()}],pl:[{pl:nr()}],m:[{m:vr()}],mx:[{mx:vr()}],my:[{my:vr()}],ms:[{ms:vr()}],me:[{me:vr()}],mt:[{mt:vr()}],mr:[{mr:vr()}],mb:[{mb:vr()}],ml:[{ml:vr()}],"space-x":[{"space-x":nr()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":nr()}],"space-y-reverse":["space-y-reverse"],size:[{size:xr()}],w:[{w:[ot,"screen",...xr()]}],"min-w":[{"min-w":[ot,"screen","none",...xr()]}],"max-w":[{"max-w":[ot,"screen","none","prose",{screen:[at]},...xr()]}],h:[{h:["screen","lh",...xr()]}],"min-h":[{"min-h":["screen","lh","none",...xr()]}],"max-h":[{"max-h":["screen","lh",...xr()]}],"font-size":[{text:["base",Ye,isArbitraryVariableLength,isArbitraryLength]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[tt,isArbitraryVariable,isArbitraryNumber]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",isPercent$1,isArbitraryValue]}],"font-family":[{font:[isArbitraryVariableFamilyName,isArbitraryValue,t]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[rt,isArbitraryVariable,isArbitraryValue]}],"line-clamp":[{"line-clamp":[isNumber$3,"none",isArbitraryVariable,isArbitraryNumber]}],leading:[{leading:[nt,...nr()]}],"list-image":[{"list-image":["none",isArbitraryVariable,isArbitraryValue]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",isArbitraryVariable,isArbitraryValue]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:Sr()}],"text-color":[{text:Sr()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[..._r(),"wavy"]}],"text-decoration-thickness":[{decoration:[isNumber$3,"from-font","auto",isArbitraryVariable,isArbitraryLength]}],"text-decoration-color":[{decoration:Sr()}],"underline-offset":[{"underline-offset":[isNumber$3,"auto",isArbitraryVariable,isArbitraryValue]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:nr()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",isArbitraryVariable,isArbitraryValue]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",isArbitraryVariable,isArbitraryValue]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:Ir()}],"bg-repeat":[{bg:yr()}],"bg-size":[{bg:hr()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},isInteger,isArbitraryVariable,isArbitraryValue],radial:["",isArbitraryVariable,isArbitraryValue],conic:[isInteger,isArbitraryVariable,isArbitraryValue]},isArbitraryVariableImage,isArbitraryImage]}],"bg-color":[{bg:Sr()}],"gradient-from-pos":[{from:Tr()}],"gradient-via-pos":[{via:Tr()}],"gradient-to-pos":[{to:Tr()}],"gradient-from":[{from:Sr()}],"gradient-via":[{via:Sr()}],"gradient-to":[{to:Sr()}],rounded:[{rounded:sr()}],"rounded-s":[{"rounded-s":sr()}],"rounded-e":[{"rounded-e":sr()}],"rounded-t":[{"rounded-t":sr()}],"rounded-r":[{"rounded-r":sr()}],"rounded-b":[{"rounded-b":sr()}],"rounded-l":[{"rounded-l":sr()}],"rounded-ss":[{"rounded-ss":sr()}],"rounded-se":[{"rounded-se":sr()}],"rounded-ee":[{"rounded-ee":sr()}],"rounded-es":[{"rounded-es":sr()}],"rounded-tl":[{"rounded-tl":sr()}],"rounded-tr":[{"rounded-tr":sr()}],"rounded-br":[{"rounded-br":sr()}],"rounded-bl":[{"rounded-bl":sr()}],"border-w":[{border:dr()}],"border-w-x":[{"border-x":dr()}],"border-w-y":[{"border-y":dr()}],"border-w-s":[{"border-s":dr()}],"border-w-e":[{"border-e":dr()}],"border-w-t":[{"border-t":dr()}],"border-w-r":[{"border-r":dr()}],"border-w-b":[{"border-b":dr()}],"border-w-l":[{"border-l":dr()}],"divide-x":[{"divide-x":dr()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":dr()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[..._r(),"hidden","none"]}],"divide-style":[{divide:[..._r(),"hidden","none"]}],"border-color":[{border:Sr()}],"border-color-x":[{"border-x":Sr()}],"border-color-y":[{"border-y":Sr()}],"border-color-s":[{"border-s":Sr()}],"border-color-e":[{"border-e":Sr()}],"border-color-t":[{"border-t":Sr()}],"border-color-r":[{"border-r":Sr()}],"border-color-b":[{"border-b":Sr()}],"border-color-l":[{"border-l":Sr()}],"divide-color":[{divide:Sr()}],"outline-style":[{outline:[..._r(),"none","hidden"]}],"outline-offset":[{"outline-offset":[isNumber$3,isArbitraryVariable,isArbitraryValue]}],"outline-w":[{outline:["",isNumber$3,isArbitraryVariableLength,isArbitraryLength]}],"outline-color":[{outline:Sr()}],shadow:[{shadow:["","none",At,isArbitraryVariableShadow,isArbitraryShadow]}],"shadow-color":[{shadow:Sr()}],"inset-shadow":[{"inset-shadow":["none",Rt,isArbitraryVariableShadow,isArbitraryShadow]}],"inset-shadow-color":[{"inset-shadow":Sr()}],"ring-w":[{ring:dr()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:Sr()}],"ring-offset-w":[{"ring-offset":[isNumber$3,isArbitraryLength]}],"ring-offset-color":[{"ring-offset":Sr()}],"inset-ring-w":[{"inset-ring":dr()}],"inset-ring-color":[{"inset-ring":Sr()}],"text-shadow":[{"text-shadow":["none",jt,isArbitraryVariableShadow,isArbitraryShadow]}],"text-shadow-color":[{"text-shadow":Sr()}],opacity:[{opacity:[isNumber$3,isArbitraryVariable,isArbitraryValue]}],"mix-blend":[{"mix-blend":[...wr(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":wr()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[isNumber$3]}],"mask-image-linear-from-pos":[{"mask-linear-from":Or()}],"mask-image-linear-to-pos":[{"mask-linear-to":Or()}],"mask-image-linear-from-color":[{"mask-linear-from":Sr()}],"mask-image-linear-to-color":[{"mask-linear-to":Sr()}],"mask-image-t-from-pos":[{"mask-t-from":Or()}],"mask-image-t-to-pos":[{"mask-t-to":Or()}],"mask-image-t-from-color":[{"mask-t-from":Sr()}],"mask-image-t-to-color":[{"mask-t-to":Sr()}],"mask-image-r-from-pos":[{"mask-r-from":Or()}],"mask-image-r-to-pos":[{"mask-r-to":Or()}],"mask-image-r-from-color":[{"mask-r-from":Sr()}],"mask-image-r-to-color":[{"mask-r-to":Sr()}],"mask-image-b-from-pos":[{"mask-b-from":Or()}],"mask-image-b-to-pos":[{"mask-b-to":Or()}],"mask-image-b-from-color":[{"mask-b-from":Sr()}],"mask-image-b-to-color":[{"mask-b-to":Sr()}],"mask-image-l-from-pos":[{"mask-l-from":Or()}],"mask-image-l-to-pos":[{"mask-l-to":Or()}],"mask-image-l-from-color":[{"mask-l-from":Sr()}],"mask-image-l-to-color":[{"mask-l-to":Sr()}],"mask-image-x-from-pos":[{"mask-x-from":Or()}],"mask-image-x-to-pos":[{"mask-x-to":Or()}],"mask-image-x-from-color":[{"mask-x-from":Sr()}],"mask-image-x-to-color":[{"mask-x-to":Sr()}],"mask-image-y-from-pos":[{"mask-y-from":Or()}],"mask-image-y-to-pos":[{"mask-y-to":Or()}],"mask-image-y-from-color":[{"mask-y-from":Sr()}],"mask-image-y-to-color":[{"mask-y-to":Sr()}],"mask-image-radial":[{"mask-radial":[isArbitraryVariable,isArbitraryValue]}],"mask-image-radial-from-pos":[{"mask-radial-from":Or()}],"mask-image-radial-to-pos":[{"mask-radial-to":Or()}],"mask-image-radial-from-color":[{"mask-radial-from":Sr()}],"mask-image-radial-to-color":[{"mask-radial-to":Sr()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":Xt()}],"mask-image-conic-pos":[{"mask-conic":[isNumber$3]}],"mask-image-conic-from-pos":[{"mask-conic-from":Or()}],"mask-image-conic-to-pos":[{"mask-conic-to":Or()}],"mask-image-conic-from-color":[{"mask-conic-from":Sr()}],"mask-image-conic-to-color":[{"mask-conic-to":Sr()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:Ir()}],"mask-repeat":[{mask:yr()}],"mask-size":[{mask:hr()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",isArbitraryVariable,isArbitraryValue]}],filter:[{filter:["","none",isArbitraryVariable,isArbitraryValue]}],blur:[{blur:Pr()}],brightness:[{brightness:[isNumber$3,isArbitraryVariable,isArbitraryValue]}],contrast:[{contrast:[isNumber$3,isArbitraryVariable,isArbitraryValue]}],"drop-shadow":[{"drop-shadow":["","none",qt,isArbitraryVariableShadow,isArbitraryShadow]}],"drop-shadow-color":[{"drop-shadow":Sr()}],grayscale:[{grayscale:["",isNumber$3,isArbitraryVariable,isArbitraryValue]}],"hue-rotate":[{"hue-rotate":[isNumber$3,isArbitraryVariable,isArbitraryValue]}],invert:[{invert:["",isNumber$3,isArbitraryVariable,isArbitraryValue]}],saturate:[{saturate:[isNumber$3,isArbitraryVariable,isArbitraryValue]}],sepia:[{sepia:["",isNumber$3,isArbitraryVariable,isArbitraryValue]}],"backdrop-filter":[{"backdrop-filter":["","none",isArbitraryVariable,isArbitraryValue]}],"backdrop-blur":[{"backdrop-blur":Pr()}],"backdrop-brightness":[{"backdrop-brightness":[isNumber$3,isArbitraryVariable,isArbitraryValue]}],"backdrop-contrast":[{"backdrop-contrast":[isNumber$3,isArbitraryVariable,isArbitraryValue]}],"backdrop-grayscale":[{"backdrop-grayscale":["",isNumber$3,isArbitraryVariable,isArbitraryValue]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[isNumber$3,isArbitraryVariable,isArbitraryValue]}],"backdrop-invert":[{"backdrop-invert":["",isNumber$3,isArbitraryVariable,isArbitraryValue]}],"backdrop-opacity":[{"backdrop-opacity":[isNumber$3,isArbitraryVariable,isArbitraryValue]}],"backdrop-saturate":[{"backdrop-saturate":[isNumber$3,isArbitraryVariable,isArbitraryValue]}],"backdrop-sepia":[{"backdrop-sepia":["",isNumber$3,isArbitraryVariable,isArbitraryValue]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":nr()}],"border-spacing-x":[{"border-spacing-x":nr()}],"border-spacing-y":[{"border-spacing-y":nr()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",isArbitraryVariable,isArbitraryValue]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[isNumber$3,"initial",isArbitraryVariable,isArbitraryValue]}],ease:[{ease:["linear","initial",Gt,isArbitraryVariable,isArbitraryValue]}],delay:[{delay:[isNumber$3,isArbitraryVariable,isArbitraryValue]}],animate:[{animate:["none",Kt,isArbitraryVariable,isArbitraryValue]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[Vt,isArbitraryVariable,isArbitraryValue]}],"perspective-origin":[{"perspective-origin":Jt()}],rotate:[{rotate:Nr()}],"rotate-x":[{"rotate-x":Nr()}],"rotate-y":[{"rotate-y":Nr()}],"rotate-z":[{"rotate-z":Nr()}],scale:[{scale:Lr()}],"scale-x":[{"scale-x":Lr()}],"scale-y":[{"scale-y":Lr()}],"scale-z":[{"scale-z":Lr()}],"scale-3d":["scale-3d"],skew:[{skew:$r()}],"skew-x":[{"skew-x":$r()}],"skew-y":[{"skew-y":$r()}],transform:[{transform:[isArbitraryVariable,isArbitraryValue,"","none","gpu","cpu"]}],"transform-origin":[{origin:Jt()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:Rr()}],"translate-x":[{"translate-x":Rr()}],"translate-y":[{"translate-y":Rr()}],"translate-z":[{"translate-z":Rr()}],"translate-none":["translate-none"],accent:[{accent:Sr()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:Sr()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",isArbitraryVariable,isArbitraryValue]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":nr()}],"scroll-mx":[{"scroll-mx":nr()}],"scroll-my":[{"scroll-my":nr()}],"scroll-ms":[{"scroll-ms":nr()}],"scroll-me":[{"scroll-me":nr()}],"scroll-mt":[{"scroll-mt":nr()}],"scroll-mr":[{"scroll-mr":nr()}],"scroll-mb":[{"scroll-mb":nr()}],"scroll-ml":[{"scroll-ml":nr()}],"scroll-p":[{"scroll-p":nr()}],"scroll-px":[{"scroll-px":nr()}],"scroll-py":[{"scroll-py":nr()}],"scroll-ps":[{"scroll-ps":nr()}],"scroll-pe":[{"scroll-pe":nr()}],"scroll-pt":[{"scroll-pt":nr()}],"scroll-pr":[{"scroll-pr":nr()}],"scroll-pb":[{"scroll-pb":nr()}],"scroll-pl":[{"scroll-pl":nr()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",isArbitraryVariable,isArbitraryValue]}],fill:[{fill:["none",...Sr()]}],"stroke-w":[{stroke:[isNumber$3,isArbitraryVariableLength,isArbitraryLength,isArbitraryNumber]}],stroke:[{stroke:["none",...Sr()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},twMerge=createTailwindMerge(getDefaultConfig);function cn$2(...e){return twMerge(clsx(e))}const scriptRel="modulepreload",assetsURL=function(e){return"/"+e},seen={},__vitePreload=function(t,Ye,tt){let rt=Promise.resolve();if(Ye&&Ye.length>0){let at=function(Et){return Promise.all(Et.map(At=>Promise.resolve(At).then(Rt=>({status:"fulfilled",value:Rt}),Rt=>({status:"rejected",reason:Rt}))))};document.getElementsByTagName("link");const ot=document.querySelector("meta[property=csp-nonce]"),ct=(ot==null?void 0:ot.nonce)||(ot==null?void 0:ot.getAttribute("nonce"));rt=at(Ye.map(Et=>{if(Et=assetsURL(Et),Et in seen)return;seen[Et]=!0;const At=Et.endsWith(".css"),Rt=At?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${Et}"]${Rt}`))return;const jt=document.createElement("link");if(jt.rel=At?"stylesheet":scriptRel,At||(jt.as="script"),jt.crossOrigin="",jt.href=Et,ct&&jt.setAttribute("nonce",ct),document.head.appendChild(jt),At)return new Promise((qt,Ut)=>{jt.addEventListener("load",qt),jt.addEventListener("error",()=>Ut(new Error(`Unable to preload CSS for ${Et}`)))})}))}function nt(at){const ot=new Event("vite:preloadError",{cancelable:!0});if(ot.payload=at,window.dispatchEvent(ot),!ot.defaultPrevented)throw at}return rt.then(at=>{for(const ot of at||[])ot.status==="rejected"&&nt(ot.reason);return t().catch(nt)})};function ok$1(){}function unreachable(){}function parse$2(e){const t=[],Ye=String(e||"");let tt=Ye.indexOf(","),rt=0,nt=!1;for(;!nt;){tt===-1&&(tt=Ye.length,nt=!0);const at=Ye.slice(rt,tt).trim();(at||!nt)&&t.push(at),rt=tt+1,tt=Ye.indexOf(",",rt)}return t}function stringify$2(e,t){const Ye=t||{};return(e[e.length-1]===""?[...e,""]:e).join((Ye.padRight?" ":"")+","+(Ye.padLeft===!1?"":" ")).trim()}const nameRe=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,nameReJsx=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,emptyOptions$7={};function name(e,t){return(emptyOptions$7.jsx?nameReJsx:nameRe).test(e)}const re$4=/[ \t\n\f\r]/g;function whitespace(e){return typeof e=="object"?e.type==="text"?empty$2(e.value):!1:empty$2(e)}function empty$2(e){return e.replace(re$4,"")===""}let Schema$1=class{constructor(t,Ye,tt){this.normal=Ye,this.property=t,tt&&(this.space=tt)}};Schema$1.prototype.normal={};Schema$1.prototype.property={};Schema$1.prototype.space=void 0;function merge$2(e,t){const Ye={},tt={};for(const rt of e)Object.assign(Ye,rt.property),Object.assign(tt,rt.normal);return new Schema$1(Ye,tt,t)}function normalize$4(e){return e.toLowerCase()}let Info$1=class{constructor(t,Ye){this.attribute=Ye,this.property=t}};Info$1.prototype.attribute="";Info$1.prototype.booleanish=!1;Info$1.prototype.boolean=!1;Info$1.prototype.commaOrSpaceSeparated=!1;Info$1.prototype.commaSeparated=!1;Info$1.prototype.defined=!1;Info$1.prototype.mustUseProperty=!1;Info$1.prototype.number=!1;Info$1.prototype.overloadedBoolean=!1;Info$1.prototype.property="";Info$1.prototype.spaceSeparated=!1;Info$1.prototype.space=void 0;let powers$1=0;const boolean$1=increment$1(),booleanish$1=increment$1(),overloadedBoolean$1=increment$1(),number$5=increment$1(),spaceSeparated$1=increment$1(),commaSeparated$1=increment$1(),commaOrSpaceSeparated$1=increment$1();function increment$1(){return 2**++powers$1}const types$3=Object.freeze(Object.defineProperty({__proto__:null,boolean:boolean$1,booleanish:booleanish$1,commaOrSpaceSeparated:commaOrSpaceSeparated$1,commaSeparated:commaSeparated$1,number:number$5,overloadedBoolean:overloadedBoolean$1,spaceSeparated:spaceSeparated$1},Symbol.toStringTag,{value:"Module"})),checks$1=Object.keys(types$3);let DefinedInfo$1=class extends Info$1{constructor(t,Ye,tt,rt){let nt=-1;if(super(t,Ye),mark$1(this,"space",rt),typeof tt=="number")for(;++nt<checks$1.length;){const at=checks$1[nt];mark$1(this,checks$1[nt],(tt&types$3[at])===types$3[at])}}};DefinedInfo$1.prototype.defined=!0;function mark$1(e,t,Ye){Ye&&(e[t]=Ye)}function create$2(e){const t={},Ye={};for(const[tt,rt]of Object.entries(e.properties)){const nt=new DefinedInfo$1(tt,e.transform(e.attributes||{},tt),rt,e.space);e.mustUseProperty&&e.mustUseProperty.includes(tt)&&(nt.mustUseProperty=!0),t[tt]=nt,Ye[normalize$4(tt)]=tt,Ye[normalize$4(nt.attribute)]=tt}return new Schema$1(t,Ye,e.space)}const aria$2=create$2({properties:{ariaActiveDescendant:null,ariaAtomic:booleanish$1,ariaAutoComplete:null,ariaBusy:booleanish$1,ariaChecked:booleanish$1,ariaColCount:number$5,ariaColIndex:number$5,ariaColSpan:number$5,ariaControls:spaceSeparated$1,ariaCurrent:null,ariaDescribedBy:spaceSeparated$1,ariaDetails:null,ariaDisabled:booleanish$1,ariaDropEffect:spaceSeparated$1,ariaErrorMessage:null,ariaExpanded:booleanish$1,ariaFlowTo:spaceSeparated$1,ariaGrabbed:booleanish$1,ariaHasPopup:null,ariaHidden:booleanish$1,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:spaceSeparated$1,ariaLevel:number$5,ariaLive:null,ariaModal:booleanish$1,ariaMultiLine:booleanish$1,ariaMultiSelectable:booleanish$1,ariaOrientation:null,ariaOwns:spaceSeparated$1,ariaPlaceholder:null,ariaPosInSet:number$5,ariaPressed:booleanish$1,ariaReadOnly:booleanish$1,ariaRelevant:null,ariaRequired:booleanish$1,ariaRoleDescription:spaceSeparated$1,ariaRowCount:number$5,ariaRowIndex:number$5,ariaRowSpan:number$5,ariaSelected:booleanish$1,ariaSetSize:number$5,ariaSort:null,ariaValueMax:number$5,ariaValueMin:number$5,ariaValueNow:number$5,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function caseSensitiveTransform$1(e,t){return t in e?e[t]:t}function caseInsensitiveTransform$1(e,t){return caseSensitiveTransform$1(e,t.toLowerCase())}const html$8=create$2({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:commaSeparated$1,acceptCharset:spaceSeparated$1,accessKey:spaceSeparated$1,action:null,allow:null,allowFullScreen:boolean$1,allowPaymentRequest:boolean$1,allowUserMedia:boolean$1,alt:null,as:null,async:boolean$1,autoCapitalize:null,autoComplete:spaceSeparated$1,autoFocus:boolean$1,autoPlay:boolean$1,blocking:spaceSeparated$1,capture:null,charSet:null,checked:boolean$1,cite:null,className:spaceSeparated$1,cols:number$5,colSpan:null,content:null,contentEditable:booleanish$1,controls:boolean$1,controlsList:spaceSeparated$1,coords:number$5|commaSeparated$1,crossOrigin:null,data:null,dateTime:null,decoding:null,default:boolean$1,defer:boolean$1,dir:null,dirName:null,disabled:boolean$1,download:overloadedBoolean$1,draggable:booleanish$1,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:boolean$1,formTarget:null,headers:spaceSeparated$1,height:number$5,hidden:boolean$1,high:number$5,href:null,hrefLang:null,htmlFor:spaceSeparated$1,httpEquiv:spaceSeparated$1,id:null,imageSizes:null,imageSrcSet:null,inert:boolean$1,inputMode:null,integrity:null,is:null,isMap:boolean$1,itemId:null,itemProp:spaceSeparated$1,itemRef:spaceSeparated$1,itemScope:boolean$1,itemType:spaceSeparated$1,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:boolean$1,low:number$5,manifest:null,max:null,maxLength:number$5,media:null,method:null,min:null,minLength:number$5,multiple:boolean$1,muted:boolean$1,name:null,nonce:null,noModule:boolean$1,noValidate:boolean$1,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:boolean$1,optimum:number$5,pattern:null,ping:spaceSeparated$1,placeholder:null,playsInline:boolean$1,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:boolean$1,referrerPolicy:null,rel:spaceSeparated$1,required:boolean$1,reversed:boolean$1,rows:number$5,rowSpan:number$5,sandbox:spaceSeparated$1,scope:null,scoped:boolean$1,seamless:boolean$1,selected:boolean$1,shadowRootClonable:boolean$1,shadowRootDelegatesFocus:boolean$1,shadowRootMode:null,shape:null,size:number$5,sizes:null,slot:null,span:number$5,spellCheck:booleanish$1,src:null,srcDoc:null,srcLang:null,srcSet:null,start:number$5,step:null,style:null,tabIndex:number$5,target:null,title:null,translate:null,type:null,typeMustMatch:boolean$1,useMap:null,value:booleanish$1,width:number$5,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:spaceSeparated$1,axis:null,background:null,bgColor:null,border:number$5,borderColor:null,bottomMargin:number$5,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:boolean$1,declare:boolean$1,event:null,face:null,frame:null,frameBorder:null,hSpace:number$5,leftMargin:number$5,link:null,longDesc:null,lowSrc:null,marginHeight:number$5,marginWidth:number$5,noResize:boolean$1,noHref:boolean$1,noShade:boolean$1,noWrap:boolean$1,object:null,profile:null,prompt:null,rev:null,rightMargin:number$5,rules:null,scheme:null,scrolling:booleanish$1,standby:null,summary:null,text:null,topMargin:number$5,valueType:null,version:null,vAlign:null,vLink:null,vSpace:number$5,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:boolean$1,disableRemotePlayback:boolean$1,prefix:null,property:null,results:number$5,security:null,unselectable:null},space:"html",transform:caseInsensitiveTransform$1}),svg$3=create$2({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:commaOrSpaceSeparated$1,accentHeight:number$5,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:number$5,amplitude:number$5,arabicForm:null,ascent:number$5,attributeName:null,attributeType:null,azimuth:number$5,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:number$5,by:null,calcMode:null,capHeight:number$5,className:spaceSeparated$1,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:number$5,diffuseConstant:number$5,direction:null,display:null,dur:null,divisor:number$5,dominantBaseline:null,download:boolean$1,dx:null,dy:null,edgeMode:null,editable:null,elevation:number$5,enableBackground:null,end:null,event:null,exponent:number$5,externalResourcesRequired:null,fill:null,fillOpacity:number$5,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:commaSeparated$1,g2:commaSeparated$1,glyphName:commaSeparated$1,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:number$5,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:number$5,horizOriginX:number$5,horizOriginY:number$5,id:null,ideographic:number$5,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:number$5,k:number$5,k1:number$5,k2:number$5,k3:number$5,k4:number$5,kernelMatrix:commaOrSpaceSeparated$1,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:number$5,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:number$5,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:number$5,overlineThickness:number$5,paintOrder:null,panose1:null,path:null,pathLength:number$5,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:spaceSeparated$1,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:number$5,pointsAtY:number$5,pointsAtZ:number$5,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:commaOrSpaceSeparated$1,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:commaOrSpaceSeparated$1,rev:commaOrSpaceSeparated$1,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:commaOrSpaceSeparated$1,requiredFeatures:commaOrSpaceSeparated$1,requiredFonts:commaOrSpaceSeparated$1,requiredFormats:commaOrSpaceSeparated$1,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:number$5,specularExponent:number$5,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:number$5,strikethroughThickness:number$5,string:null,stroke:null,strokeDashArray:commaOrSpaceSeparated$1,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:number$5,strokeOpacity:number$5,strokeWidth:null,style:null,surfaceScale:number$5,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:commaOrSpaceSeparated$1,tabIndex:number$5,tableValues:null,target:null,targetX:number$5,targetY:number$5,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:commaOrSpaceSeparated$1,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:number$5,underlineThickness:number$5,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:number$5,values:null,vAlphabetic:number$5,vMathematical:number$5,vectorEffect:null,vHanging:number$5,vIdeographic:number$5,version:null,vertAdvY:number$5,vertOriginX:number$5,vertOriginY:number$5,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:number$5,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:caseSensitiveTransform$1}),xlink$2=create$2({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,t){return"xlink:"+t.slice(5).toLowerCase()}}),xmlns$2=create$2({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:caseInsensitiveTransform$1}),xml$2=create$2({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),hastToReact={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},cap$2=/[A-Z]/g,dash$1=/-[a-z]/g,valid$1=/^data[-\w.:]+$/i;function find$2(e,t){const Ye=normalize$4(t);let tt=t,rt=Info$1;if(Ye in e.normal)return e.property[e.normal[Ye]];if(Ye.length>4&&Ye.slice(0,4)==="data"&&valid$1.test(t)){if(t.charAt(4)==="-"){const nt=t.slice(5).replace(dash$1,camelcase$1);tt="data"+nt.charAt(0).toUpperCase()+nt.slice(1)}else{const nt=t.slice(4);if(!dash$1.test(nt)){let at=nt.replace(cap$2,kebab$1);at.charAt(0)!=="-"&&(at="-"+at),t="data"+at}}rt=DefinedInfo$1}return new rt(tt,t)}function kebab$1(e){return"-"+e.toLowerCase()}function camelcase$1(e){return e.charAt(1).toUpperCase()}const html$7=merge$2([aria$2,html$8,xlink$2,xmlns$2,xml$2],"html"),svg$2=merge$2([aria$2,svg$3,xlink$2,xmlns$2,xml$2],"svg");function parse$1(e){const t=String(e||"").trim();return t?t.split(/[ \t\n\r\f]+/g):[]}function stringify$1(e){return e.join(" ").trim()}var cjs$1={},inlineStyleParser,hasRequiredInlineStyleParser;function requireInlineStyleParser(){if(hasRequiredInlineStyleParser)return inlineStyleParser;hasRequiredInlineStyleParser=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,t=/\n/g,Ye=/^\s*/,tt=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,rt=/^:\s*/,nt=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,at=/^[;\s]*/,ot=/^\s+|\s+$/g,ct=`
353
+ */const __iconNode$3=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],X$6=createLucideIcon$1("x",__iconNode$3),ExtraParamsContext=reactExports.createContext(void 0),ExtraParamsProvider=({children:e})=>{const[t,Ye]=reactExports.useState(()=>{const rt=localStorage.getItem("extraParams");try{return rt?JSON.parse(rt):{}}catch(nt){return console.error("Failed to parse extraParams from localStorage",nt),{}}});reactExports.useEffect(()=>{localStorage.setItem("extraParams",JSON.stringify(t))},[t]);const tt=rt=>{Ye(rt)};return jsxRuntimeExports.jsx(ExtraParamsContext.Provider,{value:{extraParams:t,setExtraParams:tt},children:e})},useExtraParams=()=>{const e=reactExports.useContext(ExtraParamsContext);if(e===void 0)throw new Error("useExtraParams must be used within an ExtraParamsProvider");return e},parseFileTags=e=>{const Ye=e.trim().match(/^<file type="([^"]+)" url="([^"]+)"><\/file>$/);if(Ye){const[,tt,rt]=Ye;if(tt==="image")return[{type:"image_url",image_url:{url:rt}}];if(tt==="video")return[{type:"video_url",video_url:{url:rt}}];if(tt==="audio")return[{type:"audio_url",audio_url:{url:rt}}];if(tt==="other")return[{type:"file_url",file_url:{url:rt}}]}return[]},MessageHuman=({message:e,content:t})=>{const Ye=useChat(),{extraParams:tt}=useExtraParams(),[rt,nt]=reactExports.useState(!1),[at,ot]=reactExports.useState(!1),[ct,Et]=reactExports.useState(""),At=Vt=>typeof Vt=="string"?Vt:Array.isArray(Vt)?Vt.filter(zt=>zt.type==="text"&&typeof zt.text=="string").map(zt=>zt.text).join(""):"",Rt=()=>{ot(!0),Et(At(t))},jt=async()=>{ct.trim()!==At(t)&&(await Ye.revertChatTo(e.id,!1,{includeMessageId:!0}),await Ye.sendMessage([{type:"human",content:ct}],{extraParams:tt})),ot(!1),Et("")},qt=()=>{ot(!1),Et("")},Ut=()=>at?jsxRuntimeExports.jsxs("div",{className:"flex flex-col gap-2",children:[jsxRuntimeExports.jsx("textarea",{value:ct,onChange:Vt=>Et(Vt.target.value),className:"w-full bg-transparent text-white rounded px-3 py-2 min-h-[120px] resize-none border-2 border-blue-400 outline-none",placeholder:"编辑消息内容...",autoFocus:!0}),jsxRuntimeExports.jsxs("div",{className:"flex gap-2 justify-end",children:[jsxRuntimeExports.jsx("button",{onClick:jt,className:"px-3 py-1 bg-green-600 text-white rounded text-sm hover:bg-green-700 transition-colors",title:"确认编辑",children:jsxRuntimeExports.jsx(Check$2,{size:14})}),jsxRuntimeExports.jsx("button",{onClick:qt,className:"px-3 py-1 bg-gray-600 text-white rounded text-sm hover:bg-gray-700 transition-colors",title:"取消编辑",children:jsxRuntimeExports.jsx(X$6,{size:14})})]})]}):typeof t=="string"?jsxRuntimeExports.jsx("div",{className:"text-white whitespace-pre-wrap cursor-pointer",onDoubleClick:Rt,title:"双击编辑",children:t}):Array.isArray(t)?t.flatMap(Vt=>{if(Vt.type==="text"&&typeof Vt.text=="string"){const zt=parseFileTags(Vt.text);return zt.length>0?zt:[Vt]}else return[Vt]}).map((Vt,zt)=>{switch(Vt.type){case"text":return jsxRuntimeExports.jsx("div",{className:"text-white whitespace-pre-wrap cursor-pointer",onDoubleClick:Rt,title:"双击编辑",children:Vt.text},zt);case"image_url":return jsxRuntimeExports.jsx("div",{className:"mt-2",children:jsxRuntimeExports.jsx("img",{src:Vt.image_url.url,alt:Vt.image_url.url,className:"max-w-[200px] rounded"})},zt);case"video_url":return jsxRuntimeExports.jsx("div",{className:"mt-2",children:jsxRuntimeExports.jsx("video",{controls:!0,src:Vt.video_url.url,className:"max-w-[200px] rounded",children:"您的浏览器不支持视频播放"})},zt);case"audio_url":return jsxRuntimeExports.jsx("div",{className:"mt-2",children:jsxRuntimeExports.jsx("audio",{controls:!0,src:Vt.audio_url.url,className:"w-full",children:"您的浏览器不支持音频播放"})},zt);case"file_url":return jsxRuntimeExports.jsxs("div",{className:"mt-2 p-2 bg-gray-100 rounded flex items-center gap-2",children:[jsxRuntimeExports.jsx("svg",{viewBox:"0 0 24 24",width:"20",height:"20",fill:"currentColor",className:"text-gray-500",children:jsxRuntimeExports.jsx("path",{d:"M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M18,20H6V4H13V9H18V20Z"})}),jsxRuntimeExports.jsx("a",{href:Vt.file_url.url,target:"_blank",rel:"noopener noreferrer",className:"text-blue-600 hover:text-blue-800 underline text-sm",children:"下载文件"})]},zt);default:return jsxRuntimeExports.jsx("div",{className:"text-white whitespace-pre-wrap",children:JSON.stringify(Vt)},zt)}}):jsxRuntimeExports.jsx("div",{className:"text-white whitespace-pre-wrap",children:JSON.stringify(t)});return jsxRuntimeExports.jsxs("div",{className:"flex flex-row w-full justify-end group/message-human ",children:[jsxRuntimeExports.jsxs("div",{className:"hidden group-hover/message-human:flex gap-2 mx-2",children:[jsxRuntimeExports.jsx("button",{onClick:()=>Ye.revertChatTo(e.id,!0),className:"p-2 text-gray-700 transition-colors cursor-pointer",title:"重试",children:jsxRuntimeExports.jsx(RotateCcw,{size:16})}),jsxRuntimeExports.jsx("button",{onClick:Rt,className:"p-2 text-gray-700 transition-colors cursor-pointer",title:"编辑",children:jsxRuntimeExports.jsx(PenLine,{size:16})}),jsxRuntimeExports.jsx("button",{onClick:()=>nt(!rt),className:"p-2 text-gray-700 transition-colors cursor-pointer",title:rt?"收起":"展开",children:rt?jsxRuntimeExports.jsx(ChevronUp,{size:16}):jsxRuntimeExports.jsx(ChevronDown$1,{size:16})})]}),jsxRuntimeExports.jsx("div",{className:`flex flex-col w-fit bg-blue-500/90 rounded-2xl text-white px-4 py-3 max-w-[80%] ${rt||at?"":"max-h-40 overflow-y-auto"} ${at?"w-full h-52":""}`,children:Ut()})]})},MonitorContext=reactExports.createContext(void 0),MonitorProvider=({children:e})=>{const[t,Ye]=reactExports.useState(!1),[tt,rt]=reactExports.useState(""),nt=ct=>{rt(ct),Ye(!0)},at=()=>{Ye(!1),rt("")},ot=(ct,Et)=>{const At=new URL("/api/open-smith/ui/index.html",window.location.origin),Rt=new URLSearchParams;Rt.set("thread_id",ct),Et&&Rt.set("trace_id",Et),At.hash="/?"+Rt.toString(),nt(At.toString())};return jsxRuntimeExports.jsx(MonitorContext.Provider,{value:{isOpen:t,url:tt,openMonitor:nt,closeModal:at,openMonitorWithChat:ot},children:e})},useMonitor=()=>reactExports.useContext(MonitorContext),Monitor=()=>{const{isOpen:e,url:t,closeModal:Ye}=useMonitor();return e?jsxRuntimeExports.jsx("div",{className:"fixed inset-0 flex items-center justify-center z-50",children:jsxRuntimeExports.jsxs("div",{className:"bg-white rounded-lg shadow-xl max-w-7xl w-full mx-4 max-h-[90vh] h-full flex flex-col border border-gray-200 relative",children:[jsxRuntimeExports.jsx("button",{onClick:Ye,className:"text-gray-400 hover:text-gray-600 text-2xl leading-none absolute top-2 right-2 z-50 cursor-pointer",children:"×"}),jsxRuntimeExports.jsx("div",{className:"flex-1 p-4 min-h-0",children:t&&jsxRuntimeExports.jsx("iframe",{src:t,className:"w-full h-full border rounded",title:"Monitor",sandbox:"allow-scripts allow-same-origin"})})]})}):null},formatTokens=e=>e.toString(),UsageMetadata=({usage_metadata:e,spend_time:t,response_metadata:Ye,id:tt,tool_call_id:rt})=>{const nt=t?(e.output_tokens||0)*1e3/(t||1):0;t=t&&!isNaN(t)?t:0;const{currentChatId:at}=useChat(),ot=useMonitor();return jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-between text-xs text-gray-400 mt-3",children:[jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-3",children:[jsxRuntimeExports.jsx(TokenPanel,{usage_metadata:e}),!!t&&jsxRuntimeExports.jsxs("span",{className:"text-gray-400",children:[(t/1e3).toFixed(2),"s"]}),!!nt&&jsxRuntimeExports.jsxs("span",{className:"text-gray-400",children:[nt.toFixed(2)," TPS"]})]}),jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-2",children:[(Ye==null?void 0:Ye.model_name)&&jsxRuntimeExports.jsx("span",{className:"text-gray-500",children:Ye.model_name}),rt&&jsxRuntimeExports.jsxs("span",{className:"text-gray-400",children:["Tool: ",rt]}),tt&&jsxRuntimeExports.jsxs("span",{className:"text-gray-400",onClick:()=>ot==null?void 0:ot.openMonitorWithChat(at,tt),children:["ID: ",tt]})]})]})},TokenPanel=({usage_metadata:e})=>{var t;return jsxRuntimeExports.jsx("div",{className:"flex items-center gap-1",children:jsxRuntimeExports.jsxs("span",{className:"flex items-center gap-1.5 group relative",children:[jsxRuntimeExports.jsx("span",{className:"text-xs",children:"📊"}),jsxRuntimeExports.jsx("span",{className:"text-gray-400",children:formatTokens(e.total_tokens||0)}),jsxRuntimeExports.jsx("div",{className:"hidden group-hover:block absolute bottom-full left-0 mb-2 bg-white/95 backdrop-blur-sm border border-gray-200 shadow-lg rounded-lg text-xs z-10 min-w-[280px]",children:jsxRuntimeExports.jsxs("div",{className:"p-3",children:[jsxRuntimeExports.jsx("div",{className:"text-sm font-medium text-gray-700 mb-3 border-b border-gray-100 pb-2",children:"Token 使用详情"}),jsxRuntimeExports.jsxs("div",{className:"space-y-3",children:[jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-between",children:[jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntimeExports.jsx("span",{className:"text-green-600",children:"📥"}),jsxRuntimeExports.jsx("span",{className:"text-gray-700 font-medium",children:"输入 Token"})]}),jsxRuntimeExports.jsx("span",{className:"text-gray-900 font-mono",children:formatTokens(e.input_tokens||0)})]}),!!((t=e.input_token_details)!=null&&t.cache_read)&&jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-between ml-6",children:[jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntimeExports.jsx("span",{className:"text-blue-600",children:"💾"}),jsxRuntimeExports.jsx("span",{className:"text-gray-600 text-xs",children:"缓存读取"})]}),jsxRuntimeExports.jsx("span",{className:"text-blue-700 font-mono text-xs",children:formatTokens(e.input_token_details.cache_read)})]}),jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-between border-t border-gray-100 pt-3",children:[jsxRuntimeExports.jsxs("div",{className:"flex items-center gap-2",children:[jsxRuntimeExports.jsx("span",{className:"text-blue-600",children:"📤"}),jsxRuntimeExports.jsx("span",{className:"text-gray-700 font-medium",children:"输出 Token"})]}),jsxRuntimeExports.jsx("span",{className:"text-gray-900 font-mono",children:formatTokens(e.output_tokens||0)})]}),(e.prompt_tokens_details||e.completion_tokens_details)&&jsxRuntimeExports.jsxs("div",{className:"border-t border-gray-100 pt-3 mt-3",children:[jsxRuntimeExports.jsx("div",{className:"text-xs text-gray-500 mb-2",children:"详细数据"}),jsxRuntimeExports.jsxs("div",{className:"text-xs text-gray-400 bg-gray-50 p-2 rounded",children:["输入详情: ",JSON.stringify(e)]})]})]})]})})]})})},getThinkingContent=e=>{var t,Ye;return((t=e.additional_kwargs)==null?void 0:t.reasoning_content)||Array.isArray(e.content)&&((Ye=e.content.find(tt=>tt.type==="thinking"))==null?void 0:Ye.thinking)},getTextContent=e=>{var t;return typeof e.content=="string"?e.content:(t=e.content)==null?void 0:t.filter(Ye=>Ye.type==="text").map(Ye=>Ye.text).join("")};function r$4(e){var t,Ye,tt="";if(typeof e=="string"||typeof e=="number")tt+=e;else if(typeof e=="object")if(Array.isArray(e)){var rt=e.length;for(t=0;t<rt;t++)e[t]&&(Ye=r$4(e[t]))&&(tt&&(tt+=" "),tt+=Ye)}else for(Ye in e)e[Ye]&&(tt&&(tt+=" "),tt+=Ye);return tt}function clsx(){for(var e,t,Ye=0,tt="",rt=arguments.length;Ye<rt;Ye++)(e=arguments[Ye])&&(t=r$4(e))&&(tt&&(tt+=" "),tt+=t);return tt}const CLASS_PART_SEPARATOR="-",createClassGroupUtils=e=>{const t=createClassMap(e),{conflictingClassGroups:Ye,conflictingClassGroupModifiers:tt}=e;return{getClassGroupId:at=>{const ot=at.split(CLASS_PART_SEPARATOR);return ot[0]===""&&ot.length!==1&&ot.shift(),getGroupRecursive(ot,t)||getGroupIdForArbitraryProperty(at)},getConflictingClassGroupIds:(at,ot)=>{const ct=Ye[at]||[];return ot&&tt[at]?[...ct,...tt[at]]:ct}}},getGroupRecursive=(e,t)=>{var at;if(e.length===0)return t.classGroupId;const Ye=e[0],tt=t.nextPart.get(Ye),rt=tt?getGroupRecursive(e.slice(1),tt):void 0;if(rt)return rt;if(t.validators.length===0)return;const nt=e.join(CLASS_PART_SEPARATOR);return(at=t.validators.find(({validator:ot})=>ot(nt)))==null?void 0:at.classGroupId},arbitraryPropertyRegex=/^\[(.+)\]$/,getGroupIdForArbitraryProperty=e=>{if(arbitraryPropertyRegex.test(e)){const t=arbitraryPropertyRegex.exec(e)[1],Ye=t==null?void 0:t.substring(0,t.indexOf(":"));if(Ye)return"arbitrary.."+Ye}},createClassMap=e=>{const{theme:t,classGroups:Ye}=e,tt={nextPart:new Map,validators:[]};for(const rt in Ye)processClassesRecursively(Ye[rt],tt,rt,t);return tt},processClassesRecursively=(e,t,Ye,tt)=>{e.forEach(rt=>{if(typeof rt=="string"){const nt=rt===""?t:getPart(t,rt);nt.classGroupId=Ye;return}if(typeof rt=="function"){if(isThemeGetter(rt)){processClassesRecursively(rt(tt),t,Ye,tt);return}t.validators.push({validator:rt,classGroupId:Ye});return}Object.entries(rt).forEach(([nt,at])=>{processClassesRecursively(at,getPart(t,nt),Ye,tt)})})},getPart=(e,t)=>{let Ye=e;return t.split(CLASS_PART_SEPARATOR).forEach(tt=>{Ye.nextPart.has(tt)||Ye.nextPart.set(tt,{nextPart:new Map,validators:[]}),Ye=Ye.nextPart.get(tt)}),Ye},isThemeGetter=e=>e.isThemeGetter,createLruCache=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,Ye=new Map,tt=new Map;const rt=(nt,at)=>{Ye.set(nt,at),t++,t>e&&(t=0,tt=Ye,Ye=new Map)};return{get(nt){let at=Ye.get(nt);if(at!==void 0)return at;if((at=tt.get(nt))!==void 0)return rt(nt,at),at},set(nt,at){Ye.has(nt)?Ye.set(nt,at):rt(nt,at)}}},IMPORTANT_MODIFIER="!",MODIFIER_SEPARATOR=":",MODIFIER_SEPARATOR_LENGTH=MODIFIER_SEPARATOR.length,createParseClassName=e=>{const{prefix:t,experimentalParseClassName:Ye}=e;let tt=rt=>{const nt=[];let at=0,ot=0,ct=0,Et;for(let Ut=0;Ut<rt.length;Ut++){let Vt=rt[Ut];if(at===0&&ot===0){if(Vt===MODIFIER_SEPARATOR){nt.push(rt.slice(ct,Ut)),ct=Ut+MODIFIER_SEPARATOR_LENGTH;continue}if(Vt==="/"){Et=Ut;continue}}Vt==="["?at++:Vt==="]"?at--:Vt==="("?ot++:Vt===")"&&ot--}const At=nt.length===0?rt:rt.substring(ct),Rt=stripImportantModifier(At),jt=Rt!==At,qt=Et&&Et>ct?Et-ct:void 0;return{modifiers:nt,hasImportantModifier:jt,baseClassName:Rt,maybePostfixModifierPosition:qt}};if(t){const rt=t+MODIFIER_SEPARATOR,nt=tt;tt=at=>at.startsWith(rt)?nt(at.substring(rt.length)):{isExternal:!0,modifiers:[],hasImportantModifier:!1,baseClassName:at,maybePostfixModifierPosition:void 0}}if(Ye){const rt=tt;tt=nt=>Ye({className:nt,parseClassName:rt})}return tt},stripImportantModifier=e=>e.endsWith(IMPORTANT_MODIFIER)?e.substring(0,e.length-1):e.startsWith(IMPORTANT_MODIFIER)?e.substring(1):e,createSortModifiers=e=>{const t=Object.fromEntries(e.orderSensitiveModifiers.map(tt=>[tt,!0]));return tt=>{if(tt.length<=1)return tt;const rt=[];let nt=[];return tt.forEach(at=>{at[0]==="["||t[at]?(rt.push(...nt.sort(),at),nt=[]):nt.push(at)}),rt.push(...nt.sort()),rt}},createConfigUtils=e=>({cache:createLruCache(e.cacheSize),parseClassName:createParseClassName(e),sortModifiers:createSortModifiers(e),...createClassGroupUtils(e)}),SPLIT_CLASSES_REGEX=/\s+/,mergeClassList=(e,t)=>{const{parseClassName:Ye,getClassGroupId:tt,getConflictingClassGroupIds:rt,sortModifiers:nt}=t,at=[],ot=e.trim().split(SPLIT_CLASSES_REGEX);let ct="";for(let Et=ot.length-1;Et>=0;Et-=1){const At=ot[Et],{isExternal:Rt,modifiers:jt,hasImportantModifier:qt,baseClassName:Ut,maybePostfixModifierPosition:Vt}=Ye(At);if(Rt){ct=At+(ct.length>0?" "+ct:ct);continue}let zt=!!Vt,Gt=tt(zt?Ut.substring(0,Vt):Ut);if(!Gt){if(!zt){ct=At+(ct.length>0?" "+ct:ct);continue}if(Gt=tt(Ut),!Gt){ct=At+(ct.length>0?" "+ct:ct);continue}zt=!1}const Kt=nt(jt).join(":"),Yt=qt?Kt+IMPORTANT_MODIFIER:Kt,Xt=Yt+Gt;if(at.includes(Xt))continue;at.push(Xt);const Jt=rt(Gt,zt);for(let Qt=0;Qt<Jt.length;++Qt){const er=Jt[Qt];at.push(Yt+er)}ct=At+(ct.length>0?" "+ct:ct)}return ct};function twJoin(){let e=0,t,Ye,tt="";for(;e<arguments.length;)(t=arguments[e++])&&(Ye=toValue(t))&&(tt&&(tt+=" "),tt+=Ye);return tt}const toValue=e=>{if(typeof e=="string")return e;let t,Ye="";for(let tt=0;tt<e.length;tt++)e[tt]&&(t=toValue(e[tt]))&&(Ye&&(Ye+=" "),Ye+=t);return Ye};function createTailwindMerge(e,...t){let Ye,tt,rt,nt=at;function at(ct){const Et=t.reduce((At,Rt)=>Rt(At),e());return Ye=createConfigUtils(Et),tt=Ye.cache.get,rt=Ye.cache.set,nt=ot,ot(ct)}function ot(ct){const Et=tt(ct);if(Et)return Et;const At=mergeClassList(ct,Ye);return rt(ct,At),At}return function(){return nt(twJoin.apply(null,arguments))}}const fromTheme=e=>{const t=Ye=>Ye[e]||[];return t.isThemeGetter=!0,t},arbitraryValueRegex=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,arbitraryVariableRegex=/^\((?:(\w[\w-]*):)?(.+)\)$/i,fractionRegex=/^\d+\/\d+$/,tshirtUnitRegex=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,lengthUnitRegex=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,colorFunctionRegex=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,shadowRegex=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,imageRegex=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,isFraction=e=>fractionRegex.test(e),isNumber$3=e=>!!e&&!Number.isNaN(Number(e)),isInteger=e=>!!e&&Number.isInteger(Number(e)),isPercent$1=e=>e.endsWith("%")&&isNumber$3(e.slice(0,-1)),isTshirtSize=e=>tshirtUnitRegex.test(e),isAny=()=>!0,isLengthOnly=e=>lengthUnitRegex.test(e)&&!colorFunctionRegex.test(e),isNever=()=>!1,isShadow=e=>shadowRegex.test(e),isImage=e=>imageRegex.test(e),isAnyNonArbitrary=e=>!isArbitraryValue(e)&&!isArbitraryVariable(e),isArbitrarySize=e=>getIsArbitraryValue(e,isLabelSize,isNever),isArbitraryValue=e=>arbitraryValueRegex.test(e),isArbitraryLength=e=>getIsArbitraryValue(e,isLabelLength,isLengthOnly),isArbitraryNumber=e=>getIsArbitraryValue(e,isLabelNumber,isNumber$3),isArbitraryPosition=e=>getIsArbitraryValue(e,isLabelPosition,isNever),isArbitraryImage=e=>getIsArbitraryValue(e,isLabelImage,isImage),isArbitraryShadow=e=>getIsArbitraryValue(e,isLabelShadow,isShadow),isArbitraryVariable=e=>arbitraryVariableRegex.test(e),isArbitraryVariableLength=e=>getIsArbitraryVariable(e,isLabelLength),isArbitraryVariableFamilyName=e=>getIsArbitraryVariable(e,isLabelFamilyName),isArbitraryVariablePosition=e=>getIsArbitraryVariable(e,isLabelPosition),isArbitraryVariableSize=e=>getIsArbitraryVariable(e,isLabelSize),isArbitraryVariableImage=e=>getIsArbitraryVariable(e,isLabelImage),isArbitraryVariableShadow=e=>getIsArbitraryVariable(e,isLabelShadow,!0),getIsArbitraryValue=(e,t,Ye)=>{const tt=arbitraryValueRegex.exec(e);return tt?tt[1]?t(tt[1]):Ye(tt[2]):!1},getIsArbitraryVariable=(e,t,Ye=!1)=>{const tt=arbitraryVariableRegex.exec(e);return tt?tt[1]?t(tt[1]):Ye:!1},isLabelPosition=e=>e==="position"||e==="percentage",isLabelImage=e=>e==="image"||e==="url",isLabelSize=e=>e==="length"||e==="size"||e==="bg-size",isLabelLength=e=>e==="length",isLabelNumber=e=>e==="number",isLabelFamilyName=e=>e==="family-name",isLabelShadow=e=>e==="shadow",getDefaultConfig=()=>{const e=fromTheme("color"),t=fromTheme("font"),Ye=fromTheme("text"),tt=fromTheme("font-weight"),rt=fromTheme("tracking"),nt=fromTheme("leading"),at=fromTheme("breakpoint"),ot=fromTheme("container"),ct=fromTheme("spacing"),Et=fromTheme("radius"),At=fromTheme("shadow"),Rt=fromTheme("inset-shadow"),jt=fromTheme("text-shadow"),qt=fromTheme("drop-shadow"),Ut=fromTheme("blur"),Vt=fromTheme("perspective"),zt=fromTheme("aspect"),Gt=fromTheme("ease"),Kt=fromTheme("animate"),Yt=()=>["auto","avoid","all","avoid-page","page","left","right","column"],Xt=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],Jt=()=>[...Xt(),isArbitraryVariable,isArbitraryValue],Qt=()=>["auto","hidden","clip","visible","scroll"],er=()=>["auto","contain","none"],nr=()=>[isArbitraryVariable,isArbitraryValue,ct],ir=()=>[isFraction,"full","auto",...nr()],lr=()=>[isInteger,"none","subgrid",isArbitraryVariable,isArbitraryValue],cr=()=>["auto",{span:["full",isInteger,isArbitraryVariable,isArbitraryValue]},isInteger,isArbitraryVariable,isArbitraryValue],mr=()=>[isInteger,"auto",isArbitraryVariable,isArbitraryValue],gr=()=>["auto","min","max","fr",isArbitraryVariable,isArbitraryValue],pr=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],Ar=()=>["start","end","center","stretch","center-safe","end-safe"],vr=()=>["auto",...nr()],xr=()=>[isFraction,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...nr()],Sr=()=>[e,isArbitraryVariable,isArbitraryValue],Ir=()=>[...Xt(),isArbitraryVariablePosition,isArbitraryPosition,{position:[isArbitraryVariable,isArbitraryValue]}],yr=()=>["no-repeat",{repeat:["","x","y","space","round"]}],hr=()=>["auto","cover","contain",isArbitraryVariableSize,isArbitrarySize,{size:[isArbitraryVariable,isArbitraryValue]}],Tr=()=>[isPercent$1,isArbitraryVariableLength,isArbitraryLength],sr=()=>["","none","full",Et,isArbitraryVariable,isArbitraryValue],dr=()=>["",isNumber$3,isArbitraryVariableLength,isArbitraryLength],_r=()=>["solid","dashed","dotted","double"],wr=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],Or=()=>[isNumber$3,isPercent$1,isArbitraryVariablePosition,isArbitraryPosition],Pr=()=>["","none",Ut,isArbitraryVariable,isArbitraryValue],Nr=()=>["none",isNumber$3,isArbitraryVariable,isArbitraryValue],Lr=()=>["none",isNumber$3,isArbitraryVariable,isArbitraryValue],$r=()=>[isNumber$3,isArbitraryVariable,isArbitraryValue],Rr=()=>[isFraction,"full",...nr()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[isTshirtSize],breakpoint:[isTshirtSize],color:[isAny],container:[isTshirtSize],"drop-shadow":[isTshirtSize],ease:["in","out","in-out"],font:[isAnyNonArbitrary],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[isTshirtSize],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[isTshirtSize],shadow:[isTshirtSize],spacing:["px",isNumber$3],text:[isTshirtSize],"text-shadow":[isTshirtSize],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",isFraction,isArbitraryValue,isArbitraryVariable,zt]}],container:["container"],columns:[{columns:[isNumber$3,isArbitraryValue,isArbitraryVariable,ot]}],"break-after":[{"break-after":Yt()}],"break-before":[{"break-before":Yt()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:Jt()}],overflow:[{overflow:Qt()}],"overflow-x":[{"overflow-x":Qt()}],"overflow-y":[{"overflow-y":Qt()}],overscroll:[{overscroll:er()}],"overscroll-x":[{"overscroll-x":er()}],"overscroll-y":[{"overscroll-y":er()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:ir()}],"inset-x":[{"inset-x":ir()}],"inset-y":[{"inset-y":ir()}],start:[{start:ir()}],end:[{end:ir()}],top:[{top:ir()}],right:[{right:ir()}],bottom:[{bottom:ir()}],left:[{left:ir()}],visibility:["visible","invisible","collapse"],z:[{z:[isInteger,"auto",isArbitraryVariable,isArbitraryValue]}],basis:[{basis:[isFraction,"full","auto",ot,...nr()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[isNumber$3,isFraction,"auto","initial","none",isArbitraryValue]}],grow:[{grow:["",isNumber$3,isArbitraryVariable,isArbitraryValue]}],shrink:[{shrink:["",isNumber$3,isArbitraryVariable,isArbitraryValue]}],order:[{order:[isInteger,"first","last","none",isArbitraryVariable,isArbitraryValue]}],"grid-cols":[{"grid-cols":lr()}],"col-start-end":[{col:cr()}],"col-start":[{"col-start":mr()}],"col-end":[{"col-end":mr()}],"grid-rows":[{"grid-rows":lr()}],"row-start-end":[{row:cr()}],"row-start":[{"row-start":mr()}],"row-end":[{"row-end":mr()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":gr()}],"auto-rows":[{"auto-rows":gr()}],gap:[{gap:nr()}],"gap-x":[{"gap-x":nr()}],"gap-y":[{"gap-y":nr()}],"justify-content":[{justify:[...pr(),"normal"]}],"justify-items":[{"justify-items":[...Ar(),"normal"]}],"justify-self":[{"justify-self":["auto",...Ar()]}],"align-content":[{content:["normal",...pr()]}],"align-items":[{items:[...Ar(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...Ar(),{baseline:["","last"]}]}],"place-content":[{"place-content":pr()}],"place-items":[{"place-items":[...Ar(),"baseline"]}],"place-self":[{"place-self":["auto",...Ar()]}],p:[{p:nr()}],px:[{px:nr()}],py:[{py:nr()}],ps:[{ps:nr()}],pe:[{pe:nr()}],pt:[{pt:nr()}],pr:[{pr:nr()}],pb:[{pb:nr()}],pl:[{pl:nr()}],m:[{m:vr()}],mx:[{mx:vr()}],my:[{my:vr()}],ms:[{ms:vr()}],me:[{me:vr()}],mt:[{mt:vr()}],mr:[{mr:vr()}],mb:[{mb:vr()}],ml:[{ml:vr()}],"space-x":[{"space-x":nr()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":nr()}],"space-y-reverse":["space-y-reverse"],size:[{size:xr()}],w:[{w:[ot,"screen",...xr()]}],"min-w":[{"min-w":[ot,"screen","none",...xr()]}],"max-w":[{"max-w":[ot,"screen","none","prose",{screen:[at]},...xr()]}],h:[{h:["screen","lh",...xr()]}],"min-h":[{"min-h":["screen","lh","none",...xr()]}],"max-h":[{"max-h":["screen","lh",...xr()]}],"font-size":[{text:["base",Ye,isArbitraryVariableLength,isArbitraryLength]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[tt,isArbitraryVariable,isArbitraryNumber]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",isPercent$1,isArbitraryValue]}],"font-family":[{font:[isArbitraryVariableFamilyName,isArbitraryValue,t]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[rt,isArbitraryVariable,isArbitraryValue]}],"line-clamp":[{"line-clamp":[isNumber$3,"none",isArbitraryVariable,isArbitraryNumber]}],leading:[{leading:[nt,...nr()]}],"list-image":[{"list-image":["none",isArbitraryVariable,isArbitraryValue]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",isArbitraryVariable,isArbitraryValue]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:Sr()}],"text-color":[{text:Sr()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[..._r(),"wavy"]}],"text-decoration-thickness":[{decoration:[isNumber$3,"from-font","auto",isArbitraryVariable,isArbitraryLength]}],"text-decoration-color":[{decoration:Sr()}],"underline-offset":[{"underline-offset":[isNumber$3,"auto",isArbitraryVariable,isArbitraryValue]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:nr()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",isArbitraryVariable,isArbitraryValue]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",isArbitraryVariable,isArbitraryValue]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:Ir()}],"bg-repeat":[{bg:yr()}],"bg-size":[{bg:hr()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},isInteger,isArbitraryVariable,isArbitraryValue],radial:["",isArbitraryVariable,isArbitraryValue],conic:[isInteger,isArbitraryVariable,isArbitraryValue]},isArbitraryVariableImage,isArbitraryImage]}],"bg-color":[{bg:Sr()}],"gradient-from-pos":[{from:Tr()}],"gradient-via-pos":[{via:Tr()}],"gradient-to-pos":[{to:Tr()}],"gradient-from":[{from:Sr()}],"gradient-via":[{via:Sr()}],"gradient-to":[{to:Sr()}],rounded:[{rounded:sr()}],"rounded-s":[{"rounded-s":sr()}],"rounded-e":[{"rounded-e":sr()}],"rounded-t":[{"rounded-t":sr()}],"rounded-r":[{"rounded-r":sr()}],"rounded-b":[{"rounded-b":sr()}],"rounded-l":[{"rounded-l":sr()}],"rounded-ss":[{"rounded-ss":sr()}],"rounded-se":[{"rounded-se":sr()}],"rounded-ee":[{"rounded-ee":sr()}],"rounded-es":[{"rounded-es":sr()}],"rounded-tl":[{"rounded-tl":sr()}],"rounded-tr":[{"rounded-tr":sr()}],"rounded-br":[{"rounded-br":sr()}],"rounded-bl":[{"rounded-bl":sr()}],"border-w":[{border:dr()}],"border-w-x":[{"border-x":dr()}],"border-w-y":[{"border-y":dr()}],"border-w-s":[{"border-s":dr()}],"border-w-e":[{"border-e":dr()}],"border-w-t":[{"border-t":dr()}],"border-w-r":[{"border-r":dr()}],"border-w-b":[{"border-b":dr()}],"border-w-l":[{"border-l":dr()}],"divide-x":[{"divide-x":dr()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":dr()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[..._r(),"hidden","none"]}],"divide-style":[{divide:[..._r(),"hidden","none"]}],"border-color":[{border:Sr()}],"border-color-x":[{"border-x":Sr()}],"border-color-y":[{"border-y":Sr()}],"border-color-s":[{"border-s":Sr()}],"border-color-e":[{"border-e":Sr()}],"border-color-t":[{"border-t":Sr()}],"border-color-r":[{"border-r":Sr()}],"border-color-b":[{"border-b":Sr()}],"border-color-l":[{"border-l":Sr()}],"divide-color":[{divide:Sr()}],"outline-style":[{outline:[..._r(),"none","hidden"]}],"outline-offset":[{"outline-offset":[isNumber$3,isArbitraryVariable,isArbitraryValue]}],"outline-w":[{outline:["",isNumber$3,isArbitraryVariableLength,isArbitraryLength]}],"outline-color":[{outline:Sr()}],shadow:[{shadow:["","none",At,isArbitraryVariableShadow,isArbitraryShadow]}],"shadow-color":[{shadow:Sr()}],"inset-shadow":[{"inset-shadow":["none",Rt,isArbitraryVariableShadow,isArbitraryShadow]}],"inset-shadow-color":[{"inset-shadow":Sr()}],"ring-w":[{ring:dr()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:Sr()}],"ring-offset-w":[{"ring-offset":[isNumber$3,isArbitraryLength]}],"ring-offset-color":[{"ring-offset":Sr()}],"inset-ring-w":[{"inset-ring":dr()}],"inset-ring-color":[{"inset-ring":Sr()}],"text-shadow":[{"text-shadow":["none",jt,isArbitraryVariableShadow,isArbitraryShadow]}],"text-shadow-color":[{"text-shadow":Sr()}],opacity:[{opacity:[isNumber$3,isArbitraryVariable,isArbitraryValue]}],"mix-blend":[{"mix-blend":[...wr(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":wr()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[isNumber$3]}],"mask-image-linear-from-pos":[{"mask-linear-from":Or()}],"mask-image-linear-to-pos":[{"mask-linear-to":Or()}],"mask-image-linear-from-color":[{"mask-linear-from":Sr()}],"mask-image-linear-to-color":[{"mask-linear-to":Sr()}],"mask-image-t-from-pos":[{"mask-t-from":Or()}],"mask-image-t-to-pos":[{"mask-t-to":Or()}],"mask-image-t-from-color":[{"mask-t-from":Sr()}],"mask-image-t-to-color":[{"mask-t-to":Sr()}],"mask-image-r-from-pos":[{"mask-r-from":Or()}],"mask-image-r-to-pos":[{"mask-r-to":Or()}],"mask-image-r-from-color":[{"mask-r-from":Sr()}],"mask-image-r-to-color":[{"mask-r-to":Sr()}],"mask-image-b-from-pos":[{"mask-b-from":Or()}],"mask-image-b-to-pos":[{"mask-b-to":Or()}],"mask-image-b-from-color":[{"mask-b-from":Sr()}],"mask-image-b-to-color":[{"mask-b-to":Sr()}],"mask-image-l-from-pos":[{"mask-l-from":Or()}],"mask-image-l-to-pos":[{"mask-l-to":Or()}],"mask-image-l-from-color":[{"mask-l-from":Sr()}],"mask-image-l-to-color":[{"mask-l-to":Sr()}],"mask-image-x-from-pos":[{"mask-x-from":Or()}],"mask-image-x-to-pos":[{"mask-x-to":Or()}],"mask-image-x-from-color":[{"mask-x-from":Sr()}],"mask-image-x-to-color":[{"mask-x-to":Sr()}],"mask-image-y-from-pos":[{"mask-y-from":Or()}],"mask-image-y-to-pos":[{"mask-y-to":Or()}],"mask-image-y-from-color":[{"mask-y-from":Sr()}],"mask-image-y-to-color":[{"mask-y-to":Sr()}],"mask-image-radial":[{"mask-radial":[isArbitraryVariable,isArbitraryValue]}],"mask-image-radial-from-pos":[{"mask-radial-from":Or()}],"mask-image-radial-to-pos":[{"mask-radial-to":Or()}],"mask-image-radial-from-color":[{"mask-radial-from":Sr()}],"mask-image-radial-to-color":[{"mask-radial-to":Sr()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":Xt()}],"mask-image-conic-pos":[{"mask-conic":[isNumber$3]}],"mask-image-conic-from-pos":[{"mask-conic-from":Or()}],"mask-image-conic-to-pos":[{"mask-conic-to":Or()}],"mask-image-conic-from-color":[{"mask-conic-from":Sr()}],"mask-image-conic-to-color":[{"mask-conic-to":Sr()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:Ir()}],"mask-repeat":[{mask:yr()}],"mask-size":[{mask:hr()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",isArbitraryVariable,isArbitraryValue]}],filter:[{filter:["","none",isArbitraryVariable,isArbitraryValue]}],blur:[{blur:Pr()}],brightness:[{brightness:[isNumber$3,isArbitraryVariable,isArbitraryValue]}],contrast:[{contrast:[isNumber$3,isArbitraryVariable,isArbitraryValue]}],"drop-shadow":[{"drop-shadow":["","none",qt,isArbitraryVariableShadow,isArbitraryShadow]}],"drop-shadow-color":[{"drop-shadow":Sr()}],grayscale:[{grayscale:["",isNumber$3,isArbitraryVariable,isArbitraryValue]}],"hue-rotate":[{"hue-rotate":[isNumber$3,isArbitraryVariable,isArbitraryValue]}],invert:[{invert:["",isNumber$3,isArbitraryVariable,isArbitraryValue]}],saturate:[{saturate:[isNumber$3,isArbitraryVariable,isArbitraryValue]}],sepia:[{sepia:["",isNumber$3,isArbitraryVariable,isArbitraryValue]}],"backdrop-filter":[{"backdrop-filter":["","none",isArbitraryVariable,isArbitraryValue]}],"backdrop-blur":[{"backdrop-blur":Pr()}],"backdrop-brightness":[{"backdrop-brightness":[isNumber$3,isArbitraryVariable,isArbitraryValue]}],"backdrop-contrast":[{"backdrop-contrast":[isNumber$3,isArbitraryVariable,isArbitraryValue]}],"backdrop-grayscale":[{"backdrop-grayscale":["",isNumber$3,isArbitraryVariable,isArbitraryValue]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[isNumber$3,isArbitraryVariable,isArbitraryValue]}],"backdrop-invert":[{"backdrop-invert":["",isNumber$3,isArbitraryVariable,isArbitraryValue]}],"backdrop-opacity":[{"backdrop-opacity":[isNumber$3,isArbitraryVariable,isArbitraryValue]}],"backdrop-saturate":[{"backdrop-saturate":[isNumber$3,isArbitraryVariable,isArbitraryValue]}],"backdrop-sepia":[{"backdrop-sepia":["",isNumber$3,isArbitraryVariable,isArbitraryValue]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":nr()}],"border-spacing-x":[{"border-spacing-x":nr()}],"border-spacing-y":[{"border-spacing-y":nr()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",isArbitraryVariable,isArbitraryValue]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[isNumber$3,"initial",isArbitraryVariable,isArbitraryValue]}],ease:[{ease:["linear","initial",Gt,isArbitraryVariable,isArbitraryValue]}],delay:[{delay:[isNumber$3,isArbitraryVariable,isArbitraryValue]}],animate:[{animate:["none",Kt,isArbitraryVariable,isArbitraryValue]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[Vt,isArbitraryVariable,isArbitraryValue]}],"perspective-origin":[{"perspective-origin":Jt()}],rotate:[{rotate:Nr()}],"rotate-x":[{"rotate-x":Nr()}],"rotate-y":[{"rotate-y":Nr()}],"rotate-z":[{"rotate-z":Nr()}],scale:[{scale:Lr()}],"scale-x":[{"scale-x":Lr()}],"scale-y":[{"scale-y":Lr()}],"scale-z":[{"scale-z":Lr()}],"scale-3d":["scale-3d"],skew:[{skew:$r()}],"skew-x":[{"skew-x":$r()}],"skew-y":[{"skew-y":$r()}],transform:[{transform:[isArbitraryVariable,isArbitraryValue,"","none","gpu","cpu"]}],"transform-origin":[{origin:Jt()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:Rr()}],"translate-x":[{"translate-x":Rr()}],"translate-y":[{"translate-y":Rr()}],"translate-z":[{"translate-z":Rr()}],"translate-none":["translate-none"],accent:[{accent:Sr()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:Sr()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",isArbitraryVariable,isArbitraryValue]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":nr()}],"scroll-mx":[{"scroll-mx":nr()}],"scroll-my":[{"scroll-my":nr()}],"scroll-ms":[{"scroll-ms":nr()}],"scroll-me":[{"scroll-me":nr()}],"scroll-mt":[{"scroll-mt":nr()}],"scroll-mr":[{"scroll-mr":nr()}],"scroll-mb":[{"scroll-mb":nr()}],"scroll-ml":[{"scroll-ml":nr()}],"scroll-p":[{"scroll-p":nr()}],"scroll-px":[{"scroll-px":nr()}],"scroll-py":[{"scroll-py":nr()}],"scroll-ps":[{"scroll-ps":nr()}],"scroll-pe":[{"scroll-pe":nr()}],"scroll-pt":[{"scroll-pt":nr()}],"scroll-pr":[{"scroll-pr":nr()}],"scroll-pb":[{"scroll-pb":nr()}],"scroll-pl":[{"scroll-pl":nr()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",isArbitraryVariable,isArbitraryValue]}],fill:[{fill:["none",...Sr()]}],"stroke-w":[{stroke:[isNumber$3,isArbitraryVariableLength,isArbitraryLength,isArbitraryNumber]}],stroke:[{stroke:["none",...Sr()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},twMerge=createTailwindMerge(getDefaultConfig);function cn$2(...e){return twMerge(clsx(e))}const scriptRel="modulepreload",assetsURL=function(e){return"/"+e},seen={},__vitePreload=function(t,Ye,tt){let rt=Promise.resolve();if(Ye&&Ye.length>0){let at=function(Et){return Promise.all(Et.map(At=>Promise.resolve(At).then(Rt=>({status:"fulfilled",value:Rt}),Rt=>({status:"rejected",reason:Rt}))))};document.getElementsByTagName("link");const ot=document.querySelector("meta[property=csp-nonce]"),ct=(ot==null?void 0:ot.nonce)||(ot==null?void 0:ot.getAttribute("nonce"));rt=at(Ye.map(Et=>{if(Et=assetsURL(Et),Et in seen)return;seen[Et]=!0;const At=Et.endsWith(".css"),Rt=At?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${Et}"]${Rt}`))return;const jt=document.createElement("link");if(jt.rel=At?"stylesheet":scriptRel,At||(jt.as="script"),jt.crossOrigin="",jt.href=Et,ct&&jt.setAttribute("nonce",ct),document.head.appendChild(jt),At)return new Promise((qt,Ut)=>{jt.addEventListener("load",qt),jt.addEventListener("error",()=>Ut(new Error(`Unable to preload CSS for ${Et}`)))})}))}function nt(at){const ot=new Event("vite:preloadError",{cancelable:!0});if(ot.payload=at,window.dispatchEvent(ot),!ot.defaultPrevented)throw at}return rt.then(at=>{for(const ot of at||[])ot.status==="rejected"&&nt(ot.reason);return t().catch(nt)})};function ok$1(){}function unreachable(){}function parse$2(e){const t=[],Ye=String(e||"");let tt=Ye.indexOf(","),rt=0,nt=!1;for(;!nt;){tt===-1&&(tt=Ye.length,nt=!0);const at=Ye.slice(rt,tt).trim();(at||!nt)&&t.push(at),rt=tt+1,tt=Ye.indexOf(",",rt)}return t}function stringify$2(e,t){const Ye=t||{};return(e[e.length-1]===""?[...e,""]:e).join((Ye.padRight?" ":"")+","+(Ye.padLeft===!1?"":" ")).trim()}const nameRe=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,nameReJsx=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,emptyOptions$7={};function name(e,t){return(emptyOptions$7.jsx?nameReJsx:nameRe).test(e)}const re$4=/[ \t\n\f\r]/g;function whitespace(e){return typeof e=="object"?e.type==="text"?empty$2(e.value):!1:empty$2(e)}function empty$2(e){return e.replace(re$4,"")===""}let Schema$1=class{constructor(t,Ye,tt){this.normal=Ye,this.property=t,tt&&(this.space=tt)}};Schema$1.prototype.normal={};Schema$1.prototype.property={};Schema$1.prototype.space=void 0;function merge$2(e,t){const Ye={},tt={};for(const rt of e)Object.assign(Ye,rt.property),Object.assign(tt,rt.normal);return new Schema$1(Ye,tt,t)}function normalize$4(e){return e.toLowerCase()}let Info$1=class{constructor(t,Ye){this.attribute=Ye,this.property=t}};Info$1.prototype.attribute="";Info$1.prototype.booleanish=!1;Info$1.prototype.boolean=!1;Info$1.prototype.commaOrSpaceSeparated=!1;Info$1.prototype.commaSeparated=!1;Info$1.prototype.defined=!1;Info$1.prototype.mustUseProperty=!1;Info$1.prototype.number=!1;Info$1.prototype.overloadedBoolean=!1;Info$1.prototype.property="";Info$1.prototype.spaceSeparated=!1;Info$1.prototype.space=void 0;let powers$1=0;const boolean$1=increment$1(),booleanish$1=increment$1(),overloadedBoolean$1=increment$1(),number$5=increment$1(),spaceSeparated$1=increment$1(),commaSeparated$1=increment$1(),commaOrSpaceSeparated$1=increment$1();function increment$1(){return 2**++powers$1}const types$3=Object.freeze(Object.defineProperty({__proto__:null,boolean:boolean$1,booleanish:booleanish$1,commaOrSpaceSeparated:commaOrSpaceSeparated$1,commaSeparated:commaSeparated$1,number:number$5,overloadedBoolean:overloadedBoolean$1,spaceSeparated:spaceSeparated$1},Symbol.toStringTag,{value:"Module"})),checks$1=Object.keys(types$3);let DefinedInfo$1=class extends Info$1{constructor(t,Ye,tt,rt){let nt=-1;if(super(t,Ye),mark$1(this,"space",rt),typeof tt=="number")for(;++nt<checks$1.length;){const at=checks$1[nt];mark$1(this,checks$1[nt],(tt&types$3[at])===types$3[at])}}};DefinedInfo$1.prototype.defined=!0;function mark$1(e,t,Ye){Ye&&(e[t]=Ye)}function create$2(e){const t={},Ye={};for(const[tt,rt]of Object.entries(e.properties)){const nt=new DefinedInfo$1(tt,e.transform(e.attributes||{},tt),rt,e.space);e.mustUseProperty&&e.mustUseProperty.includes(tt)&&(nt.mustUseProperty=!0),t[tt]=nt,Ye[normalize$4(tt)]=tt,Ye[normalize$4(nt.attribute)]=tt}return new Schema$1(t,Ye,e.space)}const aria$2=create$2({properties:{ariaActiveDescendant:null,ariaAtomic:booleanish$1,ariaAutoComplete:null,ariaBusy:booleanish$1,ariaChecked:booleanish$1,ariaColCount:number$5,ariaColIndex:number$5,ariaColSpan:number$5,ariaControls:spaceSeparated$1,ariaCurrent:null,ariaDescribedBy:spaceSeparated$1,ariaDetails:null,ariaDisabled:booleanish$1,ariaDropEffect:spaceSeparated$1,ariaErrorMessage:null,ariaExpanded:booleanish$1,ariaFlowTo:spaceSeparated$1,ariaGrabbed:booleanish$1,ariaHasPopup:null,ariaHidden:booleanish$1,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:spaceSeparated$1,ariaLevel:number$5,ariaLive:null,ariaModal:booleanish$1,ariaMultiLine:booleanish$1,ariaMultiSelectable:booleanish$1,ariaOrientation:null,ariaOwns:spaceSeparated$1,ariaPlaceholder:null,ariaPosInSet:number$5,ariaPressed:booleanish$1,ariaReadOnly:booleanish$1,ariaRelevant:null,ariaRequired:booleanish$1,ariaRoleDescription:spaceSeparated$1,ariaRowCount:number$5,ariaRowIndex:number$5,ariaRowSpan:number$5,ariaSelected:booleanish$1,ariaSetSize:number$5,ariaSort:null,ariaValueMax:number$5,ariaValueMin:number$5,ariaValueNow:number$5,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function caseSensitiveTransform$1(e,t){return t in e?e[t]:t}function caseInsensitiveTransform$1(e,t){return caseSensitiveTransform$1(e,t.toLowerCase())}const html$8=create$2({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:commaSeparated$1,acceptCharset:spaceSeparated$1,accessKey:spaceSeparated$1,action:null,allow:null,allowFullScreen:boolean$1,allowPaymentRequest:boolean$1,allowUserMedia:boolean$1,alt:null,as:null,async:boolean$1,autoCapitalize:null,autoComplete:spaceSeparated$1,autoFocus:boolean$1,autoPlay:boolean$1,blocking:spaceSeparated$1,capture:null,charSet:null,checked:boolean$1,cite:null,className:spaceSeparated$1,cols:number$5,colSpan:null,content:null,contentEditable:booleanish$1,controls:boolean$1,controlsList:spaceSeparated$1,coords:number$5|commaSeparated$1,crossOrigin:null,data:null,dateTime:null,decoding:null,default:boolean$1,defer:boolean$1,dir:null,dirName:null,disabled:boolean$1,download:overloadedBoolean$1,draggable:booleanish$1,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:boolean$1,formTarget:null,headers:spaceSeparated$1,height:number$5,hidden:boolean$1,high:number$5,href:null,hrefLang:null,htmlFor:spaceSeparated$1,httpEquiv:spaceSeparated$1,id:null,imageSizes:null,imageSrcSet:null,inert:boolean$1,inputMode:null,integrity:null,is:null,isMap:boolean$1,itemId:null,itemProp:spaceSeparated$1,itemRef:spaceSeparated$1,itemScope:boolean$1,itemType:spaceSeparated$1,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:boolean$1,low:number$5,manifest:null,max:null,maxLength:number$5,media:null,method:null,min:null,minLength:number$5,multiple:boolean$1,muted:boolean$1,name:null,nonce:null,noModule:boolean$1,noValidate:boolean$1,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:boolean$1,optimum:number$5,pattern:null,ping:spaceSeparated$1,placeholder:null,playsInline:boolean$1,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:boolean$1,referrerPolicy:null,rel:spaceSeparated$1,required:boolean$1,reversed:boolean$1,rows:number$5,rowSpan:number$5,sandbox:spaceSeparated$1,scope:null,scoped:boolean$1,seamless:boolean$1,selected:boolean$1,shadowRootClonable:boolean$1,shadowRootDelegatesFocus:boolean$1,shadowRootMode:null,shape:null,size:number$5,sizes:null,slot:null,span:number$5,spellCheck:booleanish$1,src:null,srcDoc:null,srcLang:null,srcSet:null,start:number$5,step:null,style:null,tabIndex:number$5,target:null,title:null,translate:null,type:null,typeMustMatch:boolean$1,useMap:null,value:booleanish$1,width:number$5,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:spaceSeparated$1,axis:null,background:null,bgColor:null,border:number$5,borderColor:null,bottomMargin:number$5,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:boolean$1,declare:boolean$1,event:null,face:null,frame:null,frameBorder:null,hSpace:number$5,leftMargin:number$5,link:null,longDesc:null,lowSrc:null,marginHeight:number$5,marginWidth:number$5,noResize:boolean$1,noHref:boolean$1,noShade:boolean$1,noWrap:boolean$1,object:null,profile:null,prompt:null,rev:null,rightMargin:number$5,rules:null,scheme:null,scrolling:booleanish$1,standby:null,summary:null,text:null,topMargin:number$5,valueType:null,version:null,vAlign:null,vLink:null,vSpace:number$5,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:boolean$1,disableRemotePlayback:boolean$1,prefix:null,property:null,results:number$5,security:null,unselectable:null},space:"html",transform:caseInsensitiveTransform$1}),svg$3=create$2({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:commaOrSpaceSeparated$1,accentHeight:number$5,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:number$5,amplitude:number$5,arabicForm:null,ascent:number$5,attributeName:null,attributeType:null,azimuth:number$5,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:number$5,by:null,calcMode:null,capHeight:number$5,className:spaceSeparated$1,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:number$5,diffuseConstant:number$5,direction:null,display:null,dur:null,divisor:number$5,dominantBaseline:null,download:boolean$1,dx:null,dy:null,edgeMode:null,editable:null,elevation:number$5,enableBackground:null,end:null,event:null,exponent:number$5,externalResourcesRequired:null,fill:null,fillOpacity:number$5,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:commaSeparated$1,g2:commaSeparated$1,glyphName:commaSeparated$1,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:number$5,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:number$5,horizOriginX:number$5,horizOriginY:number$5,id:null,ideographic:number$5,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:number$5,k:number$5,k1:number$5,k2:number$5,k3:number$5,k4:number$5,kernelMatrix:commaOrSpaceSeparated$1,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:number$5,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:number$5,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:number$5,overlineThickness:number$5,paintOrder:null,panose1:null,path:null,pathLength:number$5,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:spaceSeparated$1,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:number$5,pointsAtY:number$5,pointsAtZ:number$5,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:commaOrSpaceSeparated$1,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:commaOrSpaceSeparated$1,rev:commaOrSpaceSeparated$1,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:commaOrSpaceSeparated$1,requiredFeatures:commaOrSpaceSeparated$1,requiredFonts:commaOrSpaceSeparated$1,requiredFormats:commaOrSpaceSeparated$1,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:number$5,specularExponent:number$5,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:number$5,strikethroughThickness:number$5,string:null,stroke:null,strokeDashArray:commaOrSpaceSeparated$1,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:number$5,strokeOpacity:number$5,strokeWidth:null,style:null,surfaceScale:number$5,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:commaOrSpaceSeparated$1,tabIndex:number$5,tableValues:null,target:null,targetX:number$5,targetY:number$5,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:commaOrSpaceSeparated$1,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:number$5,underlineThickness:number$5,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:number$5,values:null,vAlphabetic:number$5,vMathematical:number$5,vectorEffect:null,vHanging:number$5,vIdeographic:number$5,version:null,vertAdvY:number$5,vertOriginX:number$5,vertOriginY:number$5,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:number$5,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:caseSensitiveTransform$1}),xlink$2=create$2({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,t){return"xlink:"+t.slice(5).toLowerCase()}}),xmlns$2=create$2({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:caseInsensitiveTransform$1}),xml$2=create$2({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),hastToReact={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},cap$2=/[A-Z]/g,dash$1=/-[a-z]/g,valid$1=/^data[-\w.:]+$/i;function find$2(e,t){const Ye=normalize$4(t);let tt=t,rt=Info$1;if(Ye in e.normal)return e.property[e.normal[Ye]];if(Ye.length>4&&Ye.slice(0,4)==="data"&&valid$1.test(t)){if(t.charAt(4)==="-"){const nt=t.slice(5).replace(dash$1,camelcase$1);tt="data"+nt.charAt(0).toUpperCase()+nt.slice(1)}else{const nt=t.slice(4);if(!dash$1.test(nt)){let at=nt.replace(cap$2,kebab$1);at.charAt(0)!=="-"&&(at="-"+at),t="data"+at}}rt=DefinedInfo$1}return new rt(tt,t)}function kebab$1(e){return"-"+e.toLowerCase()}function camelcase$1(e){return e.charAt(1).toUpperCase()}const html$7=merge$2([aria$2,html$8,xlink$2,xmlns$2,xml$2],"html"),svg$2=merge$2([aria$2,svg$3,xlink$2,xmlns$2,xml$2],"svg");function parse$1(e){const t=String(e||"").trim();return t?t.split(/[ \t\n\r\f]+/g):[]}function stringify$1(e){return e.join(" ").trim()}var cjs$1={},inlineStyleParser,hasRequiredInlineStyleParser;function requireInlineStyleParser(){if(hasRequiredInlineStyleParser)return inlineStyleParser;hasRequiredInlineStyleParser=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,t=/\n/g,Ye=/^\s*/,tt=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,rt=/^:\s*/,nt=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,at=/^[;\s]*/,ot=/^\s+|\s+$/g,ct=`
354
354
  `,Et="/",At="*",Rt="",jt="comment",qt="declaration";inlineStyleParser=function(Vt,zt){if(typeof Vt!="string")throw new TypeError("First argument must be a string");if(!Vt)return[];zt=zt||{};var Gt=1,Kt=1;function Yt(gr){var pr=gr.match(t);pr&&(Gt+=pr.length);var Ar=gr.lastIndexOf(ct);Kt=~Ar?gr.length-Ar:Kt+gr.length}function Xt(){var gr={line:Gt,column:Kt};return function(pr){return pr.position=new Jt(gr),nr(),pr}}function Jt(gr){this.start=gr,this.end={line:Gt,column:Kt},this.source=zt.source}Jt.prototype.content=Vt;function Qt(gr){var pr=new Error(zt.source+":"+Gt+":"+Kt+": "+gr);if(pr.reason=gr,pr.filename=zt.source,pr.line=Gt,pr.column=Kt,pr.source=Vt,!zt.silent)throw pr}function er(gr){var pr=gr.exec(Vt);if(pr){var Ar=pr[0];return Yt(Ar),Vt=Vt.slice(Ar.length),pr}}function nr(){er(Ye)}function ir(gr){var pr;for(gr=gr||[];pr=lr();)pr!==!1&&gr.push(pr);return gr}function lr(){var gr=Xt();if(!(Et!=Vt.charAt(0)||At!=Vt.charAt(1))){for(var pr=2;Rt!=Vt.charAt(pr)&&(At!=Vt.charAt(pr)||Et!=Vt.charAt(pr+1));)++pr;if(pr+=2,Rt===Vt.charAt(pr-1))return Qt("End of comment missing");var Ar=Vt.slice(2,pr-2);return Kt+=2,Yt(Ar),Vt=Vt.slice(pr),Kt+=2,gr({type:jt,comment:Ar})}}function cr(){var gr=Xt(),pr=er(tt);if(pr){if(lr(),!er(rt))return Qt("property missing ':'");var Ar=er(nt),vr=gr({type:qt,property:Ut(pr[0].replace(e,Rt)),value:Ar?Ut(Ar[0].replace(e,Rt)):Rt});return er(at),vr}}function mr(){var gr=[];ir(gr);for(var pr;pr=cr();)pr!==!1&&(gr.push(pr),ir(gr));return gr}return nr(),mr()};function Ut(Vt){return Vt?Vt.replace(ot,Rt):Rt}return inlineStyleParser}var hasRequiredCjs$1;function requireCjs$1(){if(hasRequiredCjs$1)return cjs$1;hasRequiredCjs$1=1;var e=cjs$1&&cjs$1.__importDefault||function(tt){return tt&&tt.__esModule?tt:{default:tt}};Object.defineProperty(cjs$1,"__esModule",{value:!0}),cjs$1.default=Ye;var t=e(requireInlineStyleParser());function Ye(tt,rt){var nt=null;if(!tt||typeof tt!="string")return nt;var at=(0,t.default)(tt),ot=typeof rt=="function";return at.forEach(function(ct){if(ct.type==="declaration"){var Et=ct.property,At=ct.value;ot?rt(Et,At,ct):At&&(nt=nt||{},nt[Et]=At)}}),nt}return cjs$1}var utilities={},hasRequiredUtilities;function requireUtilities(){if(hasRequiredUtilities)return utilities;hasRequiredUtilities=1,Object.defineProperty(utilities,"__esModule",{value:!0}),utilities.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,t=/-([a-z])/g,Ye=/^[^-]+$/,tt=/^-(webkit|moz|ms|o|khtml)-/,rt=/^-(ms)-/,nt=function(Et){return!Et||Ye.test(Et)||e.test(Et)},at=function(Et,At){return At.toUpperCase()},ot=function(Et,At){return"".concat(At,"-")},ct=function(Et,At){return At===void 0&&(At={}),nt(Et)?Et:(Et=Et.toLowerCase(),At.reactCompat?Et=Et.replace(rt,ot):Et=Et.replace(tt,ot),Et.replace(t,at))};return utilities.camelCase=ct,utilities}var cjs,hasRequiredCjs;function requireCjs(){if(hasRequiredCjs)return cjs;hasRequiredCjs=1;var e=cjs&&cjs.__importDefault||function(rt){return rt&&rt.__esModule?rt:{default:rt}},t=e(requireCjs$1()),Ye=requireUtilities();function tt(rt,nt){var at={};return!rt||typeof rt!="string"||(0,t.default)(rt,function(ot,ct){ot&&ct&&(at[(0,Ye.camelCase)(ot,nt)]=ct)}),at}return tt.default=tt,cjs=tt,cjs}var cjsExports=requireCjs();const styleToJs=getDefaultExportFromCjs(cjsExports),pointEnd=point$6("end"),pointStart=point$6("start");function point$6(e){return t;function t(Ye){const tt=Ye&&Ye.position&&Ye.position[e]||{};if(typeof tt.line=="number"&&tt.line>0&&typeof tt.column=="number"&&tt.column>0)return{line:tt.line,column:tt.column,offset:typeof tt.offset=="number"&&tt.offset>-1?tt.offset:void 0}}}function position$2(e){const t=pointStart(e),Ye=pointEnd(e);if(t&&Ye)return{start:t,end:Ye}}function stringifyPosition(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?position$1(e.position):"start"in e||"end"in e?position$1(e):"line"in e||"column"in e?point$5(e):""}function point$5(e){return index$1(e&&e.line)+":"+index$1(e&&e.column)}function position$1(e){return point$5(e&&e.start)+"-"+point$5(e&&e.end)}function index$1(e){return e&&typeof e=="number"?e:1}class VFileMessage extends Error{constructor(t,Ye,tt){super(),typeof Ye=="string"&&(tt=Ye,Ye=void 0);let rt="",nt={},at=!1;if(Ye&&("line"in Ye&&"column"in Ye?nt={place:Ye}:"start"in Ye&&"end"in Ye?nt={place:Ye}:"type"in Ye?nt={ancestors:[Ye],place:Ye.position}:nt={...Ye}),typeof t=="string"?rt=t:!nt.cause&&t&&(at=!0,rt=t.message,nt.cause=t),!nt.ruleId&&!nt.source&&typeof tt=="string"){const ct=tt.indexOf(":");ct===-1?nt.ruleId=tt:(nt.source=tt.slice(0,ct),nt.ruleId=tt.slice(ct+1))}if(!nt.place&&nt.ancestors&&nt.ancestors){const ct=nt.ancestors[nt.ancestors.length-1];ct&&(nt.place=ct.position)}const ot=nt.place&&"start"in nt.place?nt.place.start:nt.place;this.ancestors=nt.ancestors||void 0,this.cause=nt.cause||void 0,this.column=ot?ot.column:void 0,this.fatal=void 0,this.file,this.message=rt,this.line=ot?ot.line:void 0,this.name=stringifyPosition(nt.place)||"1:1",this.place=nt.place||void 0,this.reason=this.message,this.ruleId=nt.ruleId||void 0,this.source=nt.source||void 0,this.stack=at&&nt.cause&&typeof nt.cause.stack=="string"?nt.cause.stack:"",this.actual,this.expected,this.note,this.url}}VFileMessage.prototype.file="";VFileMessage.prototype.name="";VFileMessage.prototype.reason="";VFileMessage.prototype.message="";VFileMessage.prototype.stack="";VFileMessage.prototype.column=void 0;VFileMessage.prototype.line=void 0;VFileMessage.prototype.ancestors=void 0;VFileMessage.prototype.cause=void 0;VFileMessage.prototype.fatal=void 0;VFileMessage.prototype.place=void 0;VFileMessage.prototype.ruleId=void 0;VFileMessage.prototype.source=void 0;const own$9={}.hasOwnProperty,emptyMap=new Map,cap$1=/[A-Z]/g,tableElements=new Set(["table","tbody","thead","tfoot","tr"]),tableCellElement=new Set(["td","th"]),docs="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function toJsxRuntime(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const Ye=t.filePath||void 0;let tt;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");tt=developmentCreate(Ye,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");tt=productionCreate(Ye,t.jsx,t.jsxs)}const rt={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:tt,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:Ye,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?svg$2:html$7,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},nt=one$6(rt,e,void 0);return nt&&typeof nt!="string"?nt:rt.create(e,rt.Fragment,{children:nt||void 0},void 0)}function one$6(e,t,Ye){if(t.type==="element")return element$7(e,t,Ye);if(t.type==="mdxFlowExpression"||t.type==="mdxTextExpression")return mdxExpression(e,t);if(t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement")return mdxJsxElement(e,t,Ye);if(t.type==="mdxjsEsm")return mdxEsm(e,t);if(t.type==="root")return root$8(e,t,Ye);if(t.type==="text")return text$a(e,t)}function element$7(e,t,Ye){const tt=e.schema;let rt=tt;t.tagName.toLowerCase()==="svg"&&tt.space==="html"&&(rt=svg$2,e.schema=rt),e.ancestors.push(t);const nt=findComponentFromName(e,t.tagName,!1),at=createElementProps(e,t);let ot=createChildren$1(e,t);return tableElements.has(t.tagName)&&(ot=ot.filter(function(ct){return typeof ct=="string"?!whitespace(ct):!0})),addNode(e,at,nt,t),addChildren(at,ot),e.ancestors.pop(),e.schema=tt,e.create(t,nt,at,Ye)}function mdxExpression(e,t){if(t.data&&t.data.estree&&e.evaluater){const tt=t.data.estree.body[0];return tt.type,e.evaluater.evaluateExpression(tt.expression)}crashEstree(e,t.position)}function mdxEsm(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);crashEstree(e,t.position)}function mdxJsxElement(e,t,Ye){const tt=e.schema;let rt=tt;t.name==="svg"&&tt.space==="html"&&(rt=svg$2,e.schema=rt),e.ancestors.push(t);const nt=t.name===null?e.Fragment:findComponentFromName(e,t.name,!0),at=createJsxElementProps(e,t),ot=createChildren$1(e,t);return addNode(e,at,nt,t),addChildren(at,ot),e.ancestors.pop(),e.schema=tt,e.create(t,nt,at,Ye)}function root$8(e,t,Ye){const tt={};return addChildren(tt,createChildren$1(e,t)),e.create(t,e.Fragment,tt,Ye)}function text$a(e,t){return t.value}function addNode(e,t,Ye,tt){typeof Ye!="string"&&Ye!==e.Fragment&&e.passNode&&(t.node=tt)}function addChildren(e,t){if(t.length>0){const Ye=t.length>1?t:t[0];Ye&&(e.children=Ye)}}function productionCreate(e,t,Ye){return tt;function tt(rt,nt,at,ot){const Et=Array.isArray(at.children)?Ye:t;return ot?Et(nt,at,ot):Et(nt,at)}}function developmentCreate(e,t){return Ye;function Ye(tt,rt,nt,at){const ot=Array.isArray(nt.children),ct=pointStart(tt);return t(rt,nt,at,ot,{columnNumber:ct?ct.column-1:void 0,fileName:e,lineNumber:ct?ct.line:void 0},void 0)}}function createElementProps(e,t){const Ye={};let tt,rt;for(rt in t.properties)if(rt!=="children"&&own$9.call(t.properties,rt)){const nt=createProperty$1(e,rt,t.properties[rt]);if(nt){const[at,ot]=nt;e.tableCellAlignToStyle&&at==="align"&&typeof ot=="string"&&tableCellElement.has(t.tagName)?tt=ot:Ye[at]=ot}}if(tt){const nt=Ye.style||(Ye.style={});nt[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=tt}return Ye}function createJsxElementProps(e,t){const Ye={};for(const tt of t.attributes)if(tt.type==="mdxJsxExpressionAttribute")if(tt.data&&tt.data.estree&&e.evaluater){const nt=tt.data.estree.body[0];nt.type;const at=nt.expression;at.type;const ot=at.properties[0];ot.type,Object.assign(Ye,e.evaluater.evaluateExpression(ot.argument))}else crashEstree(e,t.position);else{const rt=tt.name;let nt;if(tt.value&&typeof tt.value=="object")if(tt.value.data&&tt.value.data.estree&&e.evaluater){const ot=tt.value.data.estree.body[0];ot.type,nt=e.evaluater.evaluateExpression(ot.expression)}else crashEstree(e,t.position);else nt=tt.value===null?!0:tt.value;Ye[rt]=nt}return Ye}function createChildren$1(e,t){const Ye=[];let tt=-1;const rt=e.passKeys?new Map:emptyMap;for(;++tt<t.children.length;){const nt=t.children[tt];let at;if(e.passKeys){const ct=nt.type==="element"?nt.tagName:nt.type==="mdxJsxFlowElement"||nt.type==="mdxJsxTextElement"?nt.name:void 0;if(ct){const Et=rt.get(ct)||0;at=ct+"-"+Et,rt.set(ct,Et+1)}}const ot=one$6(e,nt,at);ot!==void 0&&Ye.push(ot)}return Ye}function createProperty$1(e,t,Ye){const tt=find$2(e.schema,t);if(!(Ye==null||typeof Ye=="number"&&Number.isNaN(Ye))){if(Array.isArray(Ye)&&(Ye=tt.commaSeparated?stringify$2(Ye):stringify$1(Ye)),tt.property==="style"){let rt=typeof Ye=="object"?Ye:parseStyle(e,String(Ye));return e.stylePropertyNameCase==="css"&&(rt=transformStylesToCssCasing(rt)),["style",rt]}return[e.elementAttributeNameCase==="react"&&tt.space?hastToReact[tt.property]||tt.property:tt.attribute,Ye]}}function parseStyle(e,t){try{return styleToJs(t,{reactCompat:!0})}catch(Ye){if(e.ignoreInvalidStyle)return{};const tt=Ye,rt=new VFileMessage("Cannot parse `style` attribute",{ancestors:e.ancestors,cause:tt,ruleId:"style",source:"hast-util-to-jsx-runtime"});throw rt.file=e.filePath||void 0,rt.url=docs+"#cannot-parse-style-attribute",rt}}function findComponentFromName(e,t,Ye){let tt;if(!Ye)tt={type:"Literal",value:t};else if(t.includes(".")){const rt=t.split(".");let nt=-1,at;for(;++nt<rt.length;){const ot=name(rt[nt])?{type:"Identifier",name:rt[nt]}:{type:"Literal",value:rt[nt]};at=at?{type:"MemberExpression",object:at,property:ot,computed:!!(nt&&ot.type==="Literal"),optional:!1}:ot}tt=at}else tt=name(t)&&!/^[a-z]/.test(t)?{type:"Identifier",name:t}:{type:"Literal",value:t};if(tt.type==="Literal"){const rt=tt.value;return own$9.call(e.components,rt)?e.components[rt]:rt}if(e.evaluater)return e.evaluater.evaluateExpression(tt);crashEstree(e)}function crashEstree(e,t){const Ye=new VFileMessage("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:t,ruleId:"mdx-estree",source:"hast-util-to-jsx-runtime"});throw Ye.file=e.filePath||void 0,Ye.url=docs+"#cannot-handle-mdx-estrees-without-createevaluater",Ye}function transformStylesToCssCasing(e){const t={};let Ye;for(Ye in e)own$9.call(e,Ye)&&(t[transformStyleToCssCasing(Ye)]=e[Ye]);return t}function transformStyleToCssCasing(e){let t=e.replace(cap$1,toDash);return t.slice(0,3)==="ms-"&&(t="-"+t),t}function toDash(e){return"-"+e.toLowerCase()}const urlAttributes={action:["form"],cite:["blockquote","del","ins","q"],data:["object"],formAction:["button","input"],href:["a","area","base","link"],icon:["menuitem"],itemId:null,manifest:["html"],ping:["a","area"],poster:["video"],src:["audio","embed","iframe","img","input","script","source","track","video"]},emptyOptions$6={};function toString$4(e,t){const Ye=emptyOptions$6,tt=typeof Ye.includeImageAlt=="boolean"?Ye.includeImageAlt:!0,rt=typeof Ye.includeHtml=="boolean"?Ye.includeHtml:!0;return one$5(e,tt,rt)}function one$5(e,t,Ye){if(node(e)){if("value"in e)return e.type==="html"&&!Ye?"":e.value;if(t&&"alt"in e&&e.alt)return e.alt;if("children"in e)return all$5(e.children,t,Ye)}return Array.isArray(e)?all$5(e,t,Ye):""}function all$5(e,t,Ye){const tt=[];let rt=-1;for(;++rt<e.length;)tt[rt]=one$5(e[rt],t,Ye);return tt.join("")}function node(e){return!!(e&&typeof e=="object")}const element$6=document.createElement("i");function decodeNamedCharacterReference(e){const t="&"+e+";";element$6.innerHTML=t;const Ye=element$6.textContent;return Ye.charCodeAt(Ye.length-1)===59&&e!=="semi"||Ye===t?!1:Ye}function splice$1(e,t,Ye,tt){const rt=e.length;let nt=0,at;if(t<0?t=-t>rt?0:rt+t:t=t>rt?rt:t,Ye=Ye>0?Ye:0,tt.length<1e4)at=Array.from(tt),at.unshift(t,Ye),e.splice(...at);else for(Ye&&e.splice(t,Ye);nt<tt.length;)at=tt.slice(nt,nt+1e4),at.unshift(t,0),e.splice(...at),nt+=1e4,t+=1e4}function push(e,t){return e.length>0?(splice$1(e,e.length,0,t),e):t}const hasOwnProperty$f={}.hasOwnProperty;function combineExtensions(e){const t={};let Ye=-1;for(;++Ye<e.length;)syntaxExtension(t,e[Ye]);return t}function syntaxExtension(e,t){let Ye;for(Ye in t){const rt=(hasOwnProperty$f.call(e,Ye)?e[Ye]:void 0)||(e[Ye]={}),nt=t[Ye];let at;if(nt)for(at in nt){hasOwnProperty$f.call(rt,at)||(rt[at]=[]);const ot=nt[at];constructs(rt[at],Array.isArray(ot)?ot:ot?[ot]:[])}}}function constructs(e,t){let Ye=-1;const tt=[];for(;++Ye<t.length;)(t[Ye].add==="after"?e:tt).push(t[Ye]);splice$1(e,0,0,tt)}function decodeNumericCharacterReference(e,t){const Ye=Number.parseInt(e,t);return Ye<9||Ye===11||Ye>13&&Ye<32||Ye>126&&Ye<160||Ye>55295&&Ye<57344||Ye>64975&&Ye<65008||(Ye&65535)===65535||(Ye&65535)===65534||Ye>1114111?"�":String.fromCodePoint(Ye)}function normalizeIdentifier(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const asciiAlpha=regexCheck(/[A-Za-z]/),asciiAlphanumeric=regexCheck(/[\dA-Za-z]/),asciiAtext=regexCheck(/[#-'*+\--9=?A-Z^-~]/);function asciiControl(e){return e!==null&&(e<32||e===127)}const asciiDigit=regexCheck(/\d/),asciiHexDigit=regexCheck(/[\dA-Fa-f]/),asciiPunctuation=regexCheck(/[!-/:-@[-`{-~]/);function markdownLineEnding(e){return e!==null&&e<-2}function markdownLineEndingOrSpace(e){return e!==null&&(e<0||e===32)}function markdownSpace(e){return e===-2||e===-1||e===32}const unicodePunctuation=regexCheck(new RegExp("\\p{P}|\\p{S}","u")),unicodeWhitespace=regexCheck(/\s/);function regexCheck(e){return t;function t(Ye){return Ye!==null&&Ye>-1&&e.test(String.fromCharCode(Ye))}}function normalizeUri(e){const t=[];let Ye=-1,tt=0,rt=0;for(;++Ye<e.length;){const nt=e.charCodeAt(Ye);let at="";if(nt===37&&asciiAlphanumeric(e.charCodeAt(Ye+1))&&asciiAlphanumeric(e.charCodeAt(Ye+2)))rt=2;else if(nt<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(nt))||(at=String.fromCharCode(nt));else if(nt>55295&&nt<57344){const ot=e.charCodeAt(Ye+1);nt<56320&&ot>56319&&ot<57344?(at=String.fromCharCode(nt,ot),rt=1):at="�"}else at=String.fromCharCode(nt);at&&(t.push(e.slice(tt,Ye),encodeURIComponent(at)),tt=Ye+rt+1,at=""),rt&&(Ye+=rt,rt=0)}return t.join("")+e.slice(tt)}function factorySpace(e,t,Ye,tt){const rt=tt?tt-1:Number.POSITIVE_INFINITY;let nt=0;return at;function at(ct){return markdownSpace(ct)?(e.enter(Ye),ot(ct)):t(ct)}function ot(ct){return markdownSpace(ct)&&nt++<rt?(e.consume(ct),ot):(e.exit(Ye),t(ct))}}const content$1={tokenize:initializeContent};function initializeContent(e){const t=e.attempt(this.parser.constructs.contentInitial,tt,rt);let Ye;return t;function tt(ot){if(ot===null){e.consume(ot);return}return e.enter("lineEnding"),e.consume(ot),e.exit("lineEnding"),factorySpace(e,t,"linePrefix")}function rt(ot){return e.enter("paragraph"),nt(ot)}function nt(ot){const ct=e.enter("chunkText",{contentType:"text",previous:Ye});return Ye&&(Ye.next=ct),Ye=ct,at(ot)}function at(ot){if(ot===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(ot);return}return markdownLineEnding(ot)?(e.consume(ot),e.exit("chunkText"),nt):(e.consume(ot),at)}}const document$2={tokenize:initializeDocument},containerConstruct={tokenize:tokenizeContainer};function initializeDocument(e){const t=this,Ye=[];let tt=0,rt,nt,at;return ot;function ot(Yt){if(tt<Ye.length){const Xt=Ye[tt];return t.containerState=Xt[1],e.attempt(Xt[0].continuation,ct,Et)(Yt)}return Et(Yt)}function ct(Yt){if(tt++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,rt&&Kt();const Xt=t.events.length;let Jt=Xt,Qt;for(;Jt--;)if(t.events[Jt][0]==="exit"&&t.events[Jt][1].type==="chunkFlow"){Qt=t.events[Jt][1].end;break}Gt(tt);let er=Xt;for(;er<t.events.length;)t.events[er][1].end={...Qt},er++;return splice$1(t.events,Jt+1,0,t.events.slice(Xt)),t.events.length=er,Et(Yt)}return ot(Yt)}function Et(Yt){if(tt===Ye.length){if(!rt)return jt(Yt);if(rt.currentConstruct&&rt.currentConstruct.concrete)return Ut(Yt);t.interrupt=!!(rt.currentConstruct&&!rt._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(containerConstruct,At,Rt)(Yt)}function At(Yt){return rt&&Kt(),Gt(tt),jt(Yt)}function Rt(Yt){return t.parser.lazy[t.now().line]=tt!==Ye.length,at=t.now().offset,Ut(Yt)}function jt(Yt){return t.containerState={},e.attempt(containerConstruct,qt,Ut)(Yt)}function qt(Yt){return tt++,Ye.push([t.currentConstruct,t.containerState]),jt(Yt)}function Ut(Yt){if(Yt===null){rt&&Kt(),Gt(0),e.consume(Yt);return}return rt=rt||t.parser.flow(t.now()),e.enter("chunkFlow",{_tokenizer:rt,contentType:"flow",previous:nt}),Vt(Yt)}function Vt(Yt){if(Yt===null){zt(e.exit("chunkFlow"),!0),Gt(0),e.consume(Yt);return}return markdownLineEnding(Yt)?(e.consume(Yt),zt(e.exit("chunkFlow")),tt=0,t.interrupt=void 0,ot):(e.consume(Yt),Vt)}function zt(Yt,Xt){const Jt=t.sliceStream(Yt);if(Xt&&Jt.push(null),Yt.previous=nt,nt&&(nt.next=Yt),nt=Yt,rt.defineSkip(Yt.start),rt.write(Jt),t.parser.lazy[Yt.start.line]){let Qt=rt.events.length;for(;Qt--;)if(rt.events[Qt][1].start.offset<at&&(!rt.events[Qt][1].end||rt.events[Qt][1].end.offset>at))return;const er=t.events.length;let nr=er,ir,lr;for(;nr--;)if(t.events[nr][0]==="exit"&&t.events[nr][1].type==="chunkFlow"){if(ir){lr=t.events[nr][1].end;break}ir=!0}for(Gt(tt),Qt=er;Qt<t.events.length;)t.events[Qt][1].end={...lr},Qt++;splice$1(t.events,nr+1,0,t.events.slice(er)),t.events.length=Qt}}function Gt(Yt){let Xt=Ye.length;for(;Xt-- >Yt;){const Jt=Ye[Xt];t.containerState=Jt[1],Jt[0].exit.call(t,e)}Ye.length=Yt}function Kt(){rt.write([null]),nt=void 0,rt=void 0,t.containerState._closeFlow=void 0}}function tokenizeContainer(e,t,Ye){return factorySpace(e,e.attempt(this.parser.constructs.document,t,Ye),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function classifyCharacter(e){if(e===null||markdownLineEndingOrSpace(e)||unicodeWhitespace(e))return 1;if(unicodePunctuation(e))return 2}function resolveAll(e,t,Ye){const tt=[];let rt=-1;for(;++rt<e.length;){const nt=e[rt].resolveAll;nt&&!tt.includes(nt)&&(t=nt(t,Ye),tt.push(nt))}return t}const attention={name:"attention",resolveAll:resolveAllAttention,tokenize:tokenizeAttention};function resolveAllAttention(e,t){let Ye=-1,tt,rt,nt,at,ot,ct,Et,At;for(;++Ye<e.length;)if(e[Ye][0]==="enter"&&e[Ye][1].type==="attentionSequence"&&e[Ye][1]._close){for(tt=Ye;tt--;)if(e[tt][0]==="exit"&&e[tt][1].type==="attentionSequence"&&e[tt][1]._open&&t.sliceSerialize(e[tt][1]).charCodeAt(0)===t.sliceSerialize(e[Ye][1]).charCodeAt(0)){if((e[tt][1]._close||e[Ye][1]._open)&&(e[Ye][1].end.offset-e[Ye][1].start.offset)%3&&!((e[tt][1].end.offset-e[tt][1].start.offset+e[Ye][1].end.offset-e[Ye][1].start.offset)%3))continue;ct=e[tt][1].end.offset-e[tt][1].start.offset>1&&e[Ye][1].end.offset-e[Ye][1].start.offset>1?2:1;const Rt={...e[tt][1].end},jt={...e[Ye][1].start};movePoint(Rt,-ct),movePoint(jt,ct),at={type:ct>1?"strongSequence":"emphasisSequence",start:Rt,end:{...e[tt][1].end}},ot={type:ct>1?"strongSequence":"emphasisSequence",start:{...e[Ye][1].start},end:jt},nt={type:ct>1?"strongText":"emphasisText",start:{...e[tt][1].end},end:{...e[Ye][1].start}},rt={type:ct>1?"strong":"emphasis",start:{...at.start},end:{...ot.end}},e[tt][1].end={...at.start},e[Ye][1].start={...ot.end},Et=[],e[tt][1].end.offset-e[tt][1].start.offset&&(Et=push(Et,[["enter",e[tt][1],t],["exit",e[tt][1],t]])),Et=push(Et,[["enter",rt,t],["enter",at,t],["exit",at,t],["enter",nt,t]]),Et=push(Et,resolveAll(t.parser.constructs.insideSpan.null,e.slice(tt+1,Ye),t)),Et=push(Et,[["exit",nt,t],["enter",ot,t],["exit",ot,t],["exit",rt,t]]),e[Ye][1].end.offset-e[Ye][1].start.offset?(At=2,Et=push(Et,[["enter",e[Ye][1],t],["exit",e[Ye][1],t]])):At=0,splice$1(e,tt-1,Ye-tt+3,Et),Ye=tt+Et.length-At-2;break}}for(Ye=-1;++Ye<e.length;)e[Ye][1].type==="attentionSequence"&&(e[Ye][1].type="data");return e}function tokenizeAttention(e,t){const Ye=this.parser.constructs.attentionMarkers.null,tt=this.previous,rt=classifyCharacter(tt);let nt;return at;function at(ct){return nt=ct,e.enter("attentionSequence"),ot(ct)}function ot(ct){if(ct===nt)return e.consume(ct),ot;const Et=e.exit("attentionSequence"),At=classifyCharacter(ct),Rt=!At||At===2&&rt||Ye.includes(ct),jt=!rt||rt===2&&At||Ye.includes(tt);return Et._open=!!(nt===42?Rt:Rt&&(rt||!jt)),Et._close=!!(nt===42?jt:jt&&(At||!Rt)),t(ct)}}function movePoint(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}const autolink={name:"autolink",tokenize:tokenizeAutolink};function tokenizeAutolink(e,t,Ye){let tt=0;return rt;function rt(qt){return e.enter("autolink"),e.enter("autolinkMarker"),e.consume(qt),e.exit("autolinkMarker"),e.enter("autolinkProtocol"),nt}function nt(qt){return asciiAlpha(qt)?(e.consume(qt),at):qt===64?Ye(qt):Et(qt)}function at(qt){return qt===43||qt===45||qt===46||asciiAlphanumeric(qt)?(tt=1,ot(qt)):Et(qt)}function ot(qt){return qt===58?(e.consume(qt),tt=0,ct):(qt===43||qt===45||qt===46||asciiAlphanumeric(qt))&&tt++<32?(e.consume(qt),ot):(tt=0,Et(qt))}function ct(qt){return qt===62?(e.exit("autolinkProtocol"),e.enter("autolinkMarker"),e.consume(qt),e.exit("autolinkMarker"),e.exit("autolink"),t):qt===null||qt===32||qt===60||asciiControl(qt)?Ye(qt):(e.consume(qt),ct)}function Et(qt){return qt===64?(e.consume(qt),At):asciiAtext(qt)?(e.consume(qt),Et):Ye(qt)}function At(qt){return asciiAlphanumeric(qt)?Rt(qt):Ye(qt)}function Rt(qt){return qt===46?(e.consume(qt),tt=0,At):qt===62?(e.exit("autolinkProtocol").type="autolinkEmail",e.enter("autolinkMarker"),e.consume(qt),e.exit("autolinkMarker"),e.exit("autolink"),t):jt(qt)}function jt(qt){if((qt===45||asciiAlphanumeric(qt))&&tt++<63){const Ut=qt===45?jt:Rt;return e.consume(qt),Ut}return Ye(qt)}}const blankLine={partial:!0,tokenize:tokenizeBlankLine};function tokenizeBlankLine(e,t,Ye){return tt;function tt(nt){return markdownSpace(nt)?factorySpace(e,rt,"linePrefix")(nt):rt(nt)}function rt(nt){return nt===null||markdownLineEnding(nt)?t(nt):Ye(nt)}}const blockQuote={continuation:{tokenize:tokenizeBlockQuoteContinuation},exit:exit$1,name:"blockQuote",tokenize:tokenizeBlockQuoteStart};function tokenizeBlockQuoteStart(e,t,Ye){const tt=this;return rt;function rt(at){if(at===62){const ot=tt.containerState;return ot.open||(e.enter("blockQuote",{_container:!0}),ot.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(at),e.exit("blockQuoteMarker"),nt}return Ye(at)}function nt(at){return markdownSpace(at)?(e.enter("blockQuotePrefixWhitespace"),e.consume(at),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(at))}}function tokenizeBlockQuoteContinuation(e,t,Ye){const tt=this;return rt;function rt(at){return markdownSpace(at)?factorySpace(e,nt,"linePrefix",tt.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(at):nt(at)}function nt(at){return e.attempt(blockQuote,t,Ye)(at)}}function exit$1(e){e.exit("blockQuote")}const characterEscape={name:"characterEscape",tokenize:tokenizeCharacterEscape};function tokenizeCharacterEscape(e,t,Ye){return tt;function tt(nt){return e.enter("characterEscape"),e.enter("escapeMarker"),e.consume(nt),e.exit("escapeMarker"),rt}function rt(nt){return asciiPunctuation(nt)?(e.enter("characterEscapeValue"),e.consume(nt),e.exit("characterEscapeValue"),e.exit("characterEscape"),t):Ye(nt)}}const characterReference={name:"characterReference",tokenize:tokenizeCharacterReference};function tokenizeCharacterReference(e,t,Ye){const tt=this;let rt=0,nt,at;return ot;function ot(Rt){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(Rt),e.exit("characterReferenceMarker"),ct}function ct(Rt){return Rt===35?(e.enter("characterReferenceMarkerNumeric"),e.consume(Rt),e.exit("characterReferenceMarkerNumeric"),Et):(e.enter("characterReferenceValue"),nt=31,at=asciiAlphanumeric,At(Rt))}function Et(Rt){return Rt===88||Rt===120?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(Rt),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),nt=6,at=asciiHexDigit,At):(e.enter("characterReferenceValue"),nt=7,at=asciiDigit,At(Rt))}function At(Rt){if(Rt===59&&rt){const jt=e.exit("characterReferenceValue");return at===asciiAlphanumeric&&!decodeNamedCharacterReference(tt.sliceSerialize(jt))?Ye(Rt):(e.enter("characterReferenceMarker"),e.consume(Rt),e.exit("characterReferenceMarker"),e.exit("characterReference"),t)}return at(Rt)&&rt++<nt?(e.consume(Rt),At):Ye(Rt)}}const nonLazyContinuation$1={partial:!0,tokenize:tokenizeNonLazyContinuation$1},codeFenced={concrete:!0,name:"codeFenced",tokenize:tokenizeCodeFenced};function tokenizeCodeFenced(e,t,Ye){const tt=this,rt={partial:!0,tokenize:Jt};let nt=0,at=0,ot;return ct;function ct(Qt){return Et(Qt)}function Et(Qt){const er=tt.events[tt.events.length-1];return nt=er&&er[1].type==="linePrefix"?er[2].sliceSerialize(er[1],!0).length:0,ot=Qt,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),At(Qt)}function At(Qt){return Qt===ot?(at++,e.consume(Qt),At):at<3?Ye(Qt):(e.exit("codeFencedFenceSequence"),markdownSpace(Qt)?factorySpace(e,Rt,"whitespace")(Qt):Rt(Qt))}function Rt(Qt){return Qt===null||markdownLineEnding(Qt)?(e.exit("codeFencedFence"),tt.interrupt?t(Qt):e.check(nonLazyContinuation$1,Vt,Xt)(Qt)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),jt(Qt))}function jt(Qt){return Qt===null||markdownLineEnding(Qt)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),Rt(Qt)):markdownSpace(Qt)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),factorySpace(e,qt,"whitespace")(Qt)):Qt===96&&Qt===ot?Ye(Qt):(e.consume(Qt),jt)}function qt(Qt){return Qt===null||markdownLineEnding(Qt)?Rt(Qt):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),Ut(Qt))}function Ut(Qt){return Qt===null||markdownLineEnding(Qt)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),Rt(Qt)):Qt===96&&Qt===ot?Ye(Qt):(e.consume(Qt),Ut)}function Vt(Qt){return e.attempt(rt,Xt,zt)(Qt)}function zt(Qt){return e.enter("lineEnding"),e.consume(Qt),e.exit("lineEnding"),Gt}function Gt(Qt){return nt>0&&markdownSpace(Qt)?factorySpace(e,Kt,"linePrefix",nt+1)(Qt):Kt(Qt)}function Kt(Qt){return Qt===null||markdownLineEnding(Qt)?e.check(nonLazyContinuation$1,Vt,Xt)(Qt):(e.enter("codeFlowValue"),Yt(Qt))}function Yt(Qt){return Qt===null||markdownLineEnding(Qt)?(e.exit("codeFlowValue"),Kt(Qt)):(e.consume(Qt),Yt)}function Xt(Qt){return e.exit("codeFenced"),t(Qt)}function Jt(Qt,er,nr){let ir=0;return lr;function lr(Ar){return Qt.enter("lineEnding"),Qt.consume(Ar),Qt.exit("lineEnding"),cr}function cr(Ar){return Qt.enter("codeFencedFence"),markdownSpace(Ar)?factorySpace(Qt,mr,"linePrefix",tt.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(Ar):mr(Ar)}function mr(Ar){return Ar===ot?(Qt.enter("codeFencedFenceSequence"),gr(Ar)):nr(Ar)}function gr(Ar){return Ar===ot?(ir++,Qt.consume(Ar),gr):ir>=at?(Qt.exit("codeFencedFenceSequence"),markdownSpace(Ar)?factorySpace(Qt,pr,"whitespace")(Ar):pr(Ar)):nr(Ar)}function pr(Ar){return Ar===null||markdownLineEnding(Ar)?(Qt.exit("codeFencedFence"),er(Ar)):nr(Ar)}}}function tokenizeNonLazyContinuation$1(e,t,Ye){const tt=this;return rt;function rt(at){return at===null?Ye(at):(e.enter("lineEnding"),e.consume(at),e.exit("lineEnding"),nt)}function nt(at){return tt.parser.lazy[tt.now().line]?Ye(at):t(at)}}const codeIndented={name:"codeIndented",tokenize:tokenizeCodeIndented},furtherStart={partial:!0,tokenize:tokenizeFurtherStart};function tokenizeCodeIndented(e,t,Ye){const tt=this;return rt;function rt(Et){return e.enter("codeIndented"),factorySpace(e,nt,"linePrefix",5)(Et)}function nt(Et){const At=tt.events[tt.events.length-1];return At&&At[1].type==="linePrefix"&&At[2].sliceSerialize(At[1],!0).length>=4?at(Et):Ye(Et)}function at(Et){return Et===null?ct(Et):markdownLineEnding(Et)?e.attempt(furtherStart,at,ct)(Et):(e.enter("codeFlowValue"),ot(Et))}function ot(Et){return Et===null||markdownLineEnding(Et)?(e.exit("codeFlowValue"),at(Et)):(e.consume(Et),ot)}function ct(Et){return e.exit("codeIndented"),t(Et)}}function tokenizeFurtherStart(e,t,Ye){const tt=this;return rt;function rt(at){return tt.parser.lazy[tt.now().line]?Ye(at):markdownLineEnding(at)?(e.enter("lineEnding"),e.consume(at),e.exit("lineEnding"),rt):factorySpace(e,nt,"linePrefix",5)(at)}function nt(at){const ot=tt.events[tt.events.length-1];return ot&&ot[1].type==="linePrefix"&&ot[2].sliceSerialize(ot[1],!0).length>=4?t(at):markdownLineEnding(at)?rt(at):Ye(at)}}const codeText={name:"codeText",previous:previous$2,resolve:resolveCodeText,tokenize:tokenizeCodeText};function resolveCodeText(e){let t=e.length-4,Ye=3,tt,rt;if((e[Ye][1].type==="lineEnding"||e[Ye][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(tt=Ye;++tt<t;)if(e[tt][1].type==="codeTextData"){e[Ye][1].type="codeTextPadding",e[t][1].type="codeTextPadding",Ye+=2,t-=2;break}}for(tt=Ye-1,t++;++tt<=t;)rt===void 0?tt!==t&&e[tt][1].type!=="lineEnding"&&(rt=tt):(tt===t||e[tt][1].type==="lineEnding")&&(e[rt][1].type="codeTextData",tt!==rt+2&&(e[rt][1].end=e[tt-1][1].end,e.splice(rt+2,tt-rt-2),t-=tt-rt-2,tt=rt+2),rt=void 0);return e}function previous$2(e){return e!==96||this.events[this.events.length-1][1].type==="characterEscape"}function tokenizeCodeText(e,t,Ye){let tt=0,rt,nt;return at;function at(Rt){return e.enter("codeText"),e.enter("codeTextSequence"),ot(Rt)}function ot(Rt){return Rt===96?(e.consume(Rt),tt++,ot):(e.exit("codeTextSequence"),ct(Rt))}function ct(Rt){return Rt===null?Ye(Rt):Rt===32?(e.enter("space"),e.consume(Rt),e.exit("space"),ct):Rt===96?(nt=e.enter("codeTextSequence"),rt=0,At(Rt)):markdownLineEnding(Rt)?(e.enter("lineEnding"),e.consume(Rt),e.exit("lineEnding"),ct):(e.enter("codeTextData"),Et(Rt))}function Et(Rt){return Rt===null||Rt===32||Rt===96||markdownLineEnding(Rt)?(e.exit("codeTextData"),ct(Rt)):(e.consume(Rt),Et)}function At(Rt){return Rt===96?(e.consume(Rt),rt++,At):rt===tt?(e.exit("codeTextSequence"),e.exit("codeText"),t(Rt)):(nt.type="codeTextData",Et(Rt))}}class SpliceBuffer{constructor(t){this.left=t?[...t]:[],this.right=[]}get(t){if(t<0||t>=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return t<this.left.length?this.left[t]:this.right[this.right.length-t+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(t,Ye){const tt=Ye??Number.POSITIVE_INFINITY;return tt<this.left.length?this.left.slice(t,tt):t>this.left.length?this.right.slice(this.right.length-tt+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-tt+this.left.length).reverse())}splice(t,Ye,tt){const rt=Ye||0;this.setCursor(Math.trunc(t));const nt=this.right.splice(this.right.length-rt,Number.POSITIVE_INFINITY);return tt&&chunkedPush(this.left,tt),nt.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),chunkedPush(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),chunkedPush(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t<this.left.length){const Ye=this.left.splice(t,Number.POSITIVE_INFINITY);chunkedPush(this.right,Ye.reverse())}else{const Ye=this.right.splice(this.left.length+this.right.length-t,Number.POSITIVE_INFINITY);chunkedPush(this.left,Ye.reverse())}}}function chunkedPush(e,t){let Ye=0;if(t.length<1e4)e.push(...t);else for(;Ye<t.length;)e.push(...t.slice(Ye,Ye+1e4)),Ye+=1e4}function subtokenize(e){const t={};let Ye=-1,tt,rt,nt,at,ot,ct,Et;const At=new SpliceBuffer(e);for(;++Ye<At.length;){for(;Ye in t;)Ye=t[Ye];if(tt=At.get(Ye),Ye&&tt[1].type==="chunkFlow"&&At.get(Ye-1)[1].type==="listItemPrefix"&&(ct=tt[1]._tokenizer.events,nt=0,nt<ct.length&&ct[nt][1].type==="lineEndingBlank"&&(nt+=2),nt<ct.length&&ct[nt][1].type==="content"))for(;++nt<ct.length&&ct[nt][1].type!=="content";)ct[nt][1].type==="chunkText"&&(ct[nt][1]._isInFirstContentOfListItem=!0,nt++);if(tt[0]==="enter")tt[1].contentType&&(Object.assign(t,subcontent(At,Ye)),Ye=t[Ye],Et=!0);else if(tt[1]._container){for(nt=Ye,rt=void 0;nt--;)if(at=At.get(nt),at[1].type==="lineEnding"||at[1].type==="lineEndingBlank")at[0]==="enter"&&(rt&&(At.get(rt)[1].type="lineEndingBlank"),at[1].type="lineEnding",rt=nt);else if(!(at[1].type==="linePrefix"||at[1].type==="listItemIndent"))break;rt&&(tt[1].end={...At.get(rt)[1].start},ot=At.slice(rt,Ye),ot.unshift(tt),At.splice(rt,Ye-rt+1,ot))}}return splice$1(e,0,Number.POSITIVE_INFINITY,At.slice(0)),!Et}function subcontent(e,t){const Ye=e.get(t)[1],tt=e.get(t)[2];let rt=t-1;const nt=[];let at=Ye._tokenizer;at||(at=tt.parser[Ye.contentType](Ye.start),Ye._contentTypeTextTrailing&&(at._contentTypeTextTrailing=!0));const ot=at.events,ct=[],Et={};let At,Rt,jt=-1,qt=Ye,Ut=0,Vt=0;const zt=[Vt];for(;qt;){for(;e.get(++rt)[1]!==qt;);nt.push(rt),qt._tokenizer||(At=tt.sliceStream(qt),qt.next||At.push(null),Rt&&at.defineSkip(qt.start),qt._isInFirstContentOfListItem&&(at._gfmTasklistFirstContentOfListItem=!0),at.write(At),qt._isInFirstContentOfListItem&&(at._gfmTasklistFirstContentOfListItem=void 0)),Rt=qt,qt=qt.next}for(qt=Ye;++jt<ot.length;)ot[jt][0]==="exit"&&ot[jt-1][0]==="enter"&&ot[jt][1].type===ot[jt-1][1].type&&ot[jt][1].start.line!==ot[jt][1].end.line&&(Vt=jt+1,zt.push(Vt),qt._tokenizer=void 0,qt.previous=void 0,qt=qt.next);for(at.events=[],qt?(qt._tokenizer=void 0,qt.previous=void 0):zt.pop(),jt=zt.length;jt--;){const Gt=ot.slice(zt[jt],zt[jt+1]),Kt=nt.pop();ct.push([Kt,Kt+Gt.length-1]),e.splice(Kt,2,Gt)}for(ct.reverse(),jt=-1;++jt<ct.length;)Et[Ut+ct[jt][0]]=Ut+ct[jt][1],Ut+=ct[jt][1]-ct[jt][0]-1;return Et}const content={resolve:resolveContent,tokenize:tokenizeContent},continuationConstruct={partial:!0,tokenize:tokenizeContinuation};function resolveContent(e){return subtokenize(e),e}function tokenizeContent(e,t){let Ye;return tt;function tt(ot){return e.enter("content"),Ye=e.enter("chunkContent",{contentType:"content"}),rt(ot)}function rt(ot){return ot===null?nt(ot):markdownLineEnding(ot)?e.check(continuationConstruct,at,nt)(ot):(e.consume(ot),rt)}function nt(ot){return e.exit("chunkContent"),e.exit("content"),t(ot)}function at(ot){return e.consume(ot),e.exit("chunkContent"),Ye.next=e.enter("chunkContent",{contentType:"content",previous:Ye}),Ye=Ye.next,rt}}function tokenizeContinuation(e,t,Ye){const tt=this;return rt;function rt(at){return e.exit("chunkContent"),e.enter("lineEnding"),e.consume(at),e.exit("lineEnding"),factorySpace(e,nt,"linePrefix")}function nt(at){if(at===null||markdownLineEnding(at))return Ye(at);const ot=tt.events[tt.events.length-1];return!tt.parser.constructs.disable.null.includes("codeIndented")&&ot&&ot[1].type==="linePrefix"&&ot[2].sliceSerialize(ot[1],!0).length>=4?t(at):e.interrupt(tt.parser.constructs.flow,Ye,t)(at)}}function factoryDestination(e,t,Ye,tt,rt,nt,at,ot,ct){const Et=ct||Number.POSITIVE_INFINITY;let At=0;return Rt;function Rt(Gt){return Gt===60?(e.enter(tt),e.enter(rt),e.enter(nt),e.consume(Gt),e.exit(nt),jt):Gt===null||Gt===32||Gt===41||asciiControl(Gt)?Ye(Gt):(e.enter(tt),e.enter(at),e.enter(ot),e.enter("chunkString",{contentType:"string"}),Vt(Gt))}function jt(Gt){return Gt===62?(e.enter(nt),e.consume(Gt),e.exit(nt),e.exit(rt),e.exit(tt),t):(e.enter(ot),e.enter("chunkString",{contentType:"string"}),qt(Gt))}function qt(Gt){return Gt===62?(e.exit("chunkString"),e.exit(ot),jt(Gt)):Gt===null||Gt===60||markdownLineEnding(Gt)?Ye(Gt):(e.consume(Gt),Gt===92?Ut:qt)}function Ut(Gt){return Gt===60||Gt===62||Gt===92?(e.consume(Gt),qt):qt(Gt)}function Vt(Gt){return!At&&(Gt===null||Gt===41||markdownLineEndingOrSpace(Gt))?(e.exit("chunkString"),e.exit(ot),e.exit(at),e.exit(tt),t(Gt)):At<Et&&Gt===40?(e.consume(Gt),At++,Vt):Gt===41?(e.consume(Gt),At--,Vt):Gt===null||Gt===32||Gt===40||asciiControl(Gt)?Ye(Gt):(e.consume(Gt),Gt===92?zt:Vt)}function zt(Gt){return Gt===40||Gt===41||Gt===92?(e.consume(Gt),Vt):Vt(Gt)}}function factoryLabel(e,t,Ye,tt,rt,nt){const at=this;let ot=0,ct;return Et;function Et(qt){return e.enter(tt),e.enter(rt),e.consume(qt),e.exit(rt),e.enter(nt),At}function At(qt){return ot>999||qt===null||qt===91||qt===93&&!ct||qt===94&&!ot&&"_hiddenFootnoteSupport"in at.parser.constructs?Ye(qt):qt===93?(e.exit(nt),e.enter(rt),e.consume(qt),e.exit(rt),e.exit(tt),t):markdownLineEnding(qt)?(e.enter("lineEnding"),e.consume(qt),e.exit("lineEnding"),At):(e.enter("chunkString",{contentType:"string"}),Rt(qt))}function Rt(qt){return qt===null||qt===91||qt===93||markdownLineEnding(qt)||ot++>999?(e.exit("chunkString"),At(qt)):(e.consume(qt),ct||(ct=!markdownSpace(qt)),qt===92?jt:Rt)}function jt(qt){return qt===91||qt===92||qt===93?(e.consume(qt),ot++,Rt):Rt(qt)}}function factoryTitle(e,t,Ye,tt,rt,nt){let at;return ot;function ot(jt){return jt===34||jt===39||jt===40?(e.enter(tt),e.enter(rt),e.consume(jt),e.exit(rt),at=jt===40?41:jt,ct):Ye(jt)}function ct(jt){return jt===at?(e.enter(rt),e.consume(jt),e.exit(rt),e.exit(tt),t):(e.enter(nt),Et(jt))}function Et(jt){return jt===at?(e.exit(nt),ct(at)):jt===null?Ye(jt):markdownLineEnding(jt)?(e.enter("lineEnding"),e.consume(jt),e.exit("lineEnding"),factorySpace(e,Et,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),At(jt))}function At(jt){return jt===at||jt===null||markdownLineEnding(jt)?(e.exit("chunkString"),Et(jt)):(e.consume(jt),jt===92?Rt:At)}function Rt(jt){return jt===at||jt===92?(e.consume(jt),At):At(jt)}}function factoryWhitespace(e,t){let Ye;return tt;function tt(rt){return markdownLineEnding(rt)?(e.enter("lineEnding"),e.consume(rt),e.exit("lineEnding"),Ye=!0,tt):markdownSpace(rt)?factorySpace(e,tt,Ye?"linePrefix":"lineSuffix")(rt):t(rt)}}const definition$1={name:"definition",tokenize:tokenizeDefinition},titleBefore={partial:!0,tokenize:tokenizeTitleBefore};function tokenizeDefinition(e,t,Ye){const tt=this;let rt;return nt;function nt(qt){return e.enter("definition"),at(qt)}function at(qt){return factoryLabel.call(tt,e,ot,Ye,"definitionLabel","definitionLabelMarker","definitionLabelString")(qt)}function ot(qt){return rt=normalizeIdentifier(tt.sliceSerialize(tt.events[tt.events.length-1][1]).slice(1,-1)),qt===58?(e.enter("definitionMarker"),e.consume(qt),e.exit("definitionMarker"),ct):Ye(qt)}function ct(qt){return markdownLineEndingOrSpace(qt)?factoryWhitespace(e,Et)(qt):Et(qt)}function Et(qt){return factoryDestination(e,At,Ye,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(qt)}function At(qt){return e.attempt(titleBefore,Rt,Rt)(qt)}function Rt(qt){return markdownSpace(qt)?factorySpace(e,jt,"whitespace")(qt):jt(qt)}function jt(qt){return qt===null||markdownLineEnding(qt)?(e.exit("definition"),tt.parser.defined.push(rt),t(qt)):Ye(qt)}}function tokenizeTitleBefore(e,t,Ye){return tt;function tt(ot){return markdownLineEndingOrSpace(ot)?factoryWhitespace(e,rt)(ot):Ye(ot)}function rt(ot){return factoryTitle(e,nt,Ye,"definitionTitle","definitionTitleMarker","definitionTitleString")(ot)}function nt(ot){return markdownSpace(ot)?factorySpace(e,at,"whitespace")(ot):at(ot)}function at(ot){return ot===null||markdownLineEnding(ot)?t(ot):Ye(ot)}}const hardBreakEscape={name:"hardBreakEscape",tokenize:tokenizeHardBreakEscape};function tokenizeHardBreakEscape(e,t,Ye){return tt;function tt(nt){return e.enter("hardBreakEscape"),e.consume(nt),rt}function rt(nt){return markdownLineEnding(nt)?(e.exit("hardBreakEscape"),t(nt)):Ye(nt)}}const headingAtx={name:"headingAtx",resolve:resolveHeadingAtx,tokenize:tokenizeHeadingAtx};function resolveHeadingAtx(e,t){let Ye=e.length-2,tt=3,rt,nt;return e[tt][1].type==="whitespace"&&(tt+=2),Ye-2>tt&&e[Ye][1].type==="whitespace"&&(Ye-=2),e[Ye][1].type==="atxHeadingSequence"&&(tt===Ye-1||Ye-4>tt&&e[Ye-2][1].type==="whitespace")&&(Ye-=tt+1===Ye?2:4),Ye>tt&&(rt={type:"atxHeadingText",start:e[tt][1].start,end:e[Ye][1].end},nt={type:"chunkText",start:e[tt][1].start,end:e[Ye][1].end,contentType:"text"},splice$1(e,tt,Ye-tt+1,[["enter",rt,t],["enter",nt,t],["exit",nt,t],["exit",rt,t]])),e}function tokenizeHeadingAtx(e,t,Ye){let tt=0;return rt;function rt(At){return e.enter("atxHeading"),nt(At)}function nt(At){return e.enter("atxHeadingSequence"),at(At)}function at(At){return At===35&&tt++<6?(e.consume(At),at):At===null||markdownLineEndingOrSpace(At)?(e.exit("atxHeadingSequence"),ot(At)):Ye(At)}function ot(At){return At===35?(e.enter("atxHeadingSequence"),ct(At)):At===null||markdownLineEnding(At)?(e.exit("atxHeading"),t(At)):markdownSpace(At)?factorySpace(e,ot,"whitespace")(At):(e.enter("atxHeadingText"),Et(At))}function ct(At){return At===35?(e.consume(At),ct):(e.exit("atxHeadingSequence"),ot(At))}function Et(At){return At===null||At===35||markdownLineEndingOrSpace(At)?(e.exit("atxHeadingText"),ot(At)):(e.consume(At),Et)}}const htmlBlockNames=["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","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],htmlRawNames=["pre","script","style","textarea"],htmlFlow={concrete:!0,name:"htmlFlow",resolveTo:resolveToHtmlFlow,tokenize:tokenizeHtmlFlow},blankLineBefore={partial:!0,tokenize:tokenizeBlankLineBefore},nonLazyContinuationStart={partial:!0,tokenize:tokenizeNonLazyContinuationStart};function resolveToHtmlFlow(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function tokenizeHtmlFlow(e,t,Ye){const tt=this;let rt,nt,at,ot,ct;return Et;function Et(sr){return At(sr)}function At(sr){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(sr),Rt}function Rt(sr){return sr===33?(e.consume(sr),jt):sr===47?(e.consume(sr),nt=!0,Vt):sr===63?(e.consume(sr),rt=3,tt.interrupt?t:yr):asciiAlpha(sr)?(e.consume(sr),at=String.fromCharCode(sr),zt):Ye(sr)}function jt(sr){return sr===45?(e.consume(sr),rt=2,qt):sr===91?(e.consume(sr),rt=5,ot=0,Ut):asciiAlpha(sr)?(e.consume(sr),rt=4,tt.interrupt?t:yr):Ye(sr)}function qt(sr){return sr===45?(e.consume(sr),tt.interrupt?t:yr):Ye(sr)}function Ut(sr){const dr="CDATA[";return sr===dr.charCodeAt(ot++)?(e.consume(sr),ot===dr.length?tt.interrupt?t:mr:Ut):Ye(sr)}function Vt(sr){return asciiAlpha(sr)?(e.consume(sr),at=String.fromCharCode(sr),zt):Ye(sr)}function zt(sr){if(sr===null||sr===47||sr===62||markdownLineEndingOrSpace(sr)){const dr=sr===47,_r=at.toLowerCase();return!dr&&!nt&&htmlRawNames.includes(_r)?(rt=1,tt.interrupt?t(sr):mr(sr)):htmlBlockNames.includes(at.toLowerCase())?(rt=6,dr?(e.consume(sr),Gt):tt.interrupt?t(sr):mr(sr)):(rt=7,tt.interrupt&&!tt.parser.lazy[tt.now().line]?Ye(sr):nt?Kt(sr):Yt(sr))}return sr===45||asciiAlphanumeric(sr)?(e.consume(sr),at+=String.fromCharCode(sr),zt):Ye(sr)}function Gt(sr){return sr===62?(e.consume(sr),tt.interrupt?t:mr):Ye(sr)}function Kt(sr){return markdownSpace(sr)?(e.consume(sr),Kt):lr(sr)}function Yt(sr){return sr===47?(e.consume(sr),lr):sr===58||sr===95||asciiAlpha(sr)?(e.consume(sr),Xt):markdownSpace(sr)?(e.consume(sr),Yt):lr(sr)}function Xt(sr){return sr===45||sr===46||sr===58||sr===95||asciiAlphanumeric(sr)?(e.consume(sr),Xt):Jt(sr)}function Jt(sr){return sr===61?(e.consume(sr),Qt):markdownSpace(sr)?(e.consume(sr),Jt):Yt(sr)}function Qt(sr){return sr===null||sr===60||sr===61||sr===62||sr===96?Ye(sr):sr===34||sr===39?(e.consume(sr),ct=sr,er):markdownSpace(sr)?(e.consume(sr),Qt):nr(sr)}function er(sr){return sr===ct?(e.consume(sr),ct=null,ir):sr===null||markdownLineEnding(sr)?Ye(sr):(e.consume(sr),er)}function nr(sr){return sr===null||sr===34||sr===39||sr===47||sr===60||sr===61||sr===62||sr===96||markdownLineEndingOrSpace(sr)?Jt(sr):(e.consume(sr),nr)}function ir(sr){return sr===47||sr===62||markdownSpace(sr)?Yt(sr):Ye(sr)}function lr(sr){return sr===62?(e.consume(sr),cr):Ye(sr)}function cr(sr){return sr===null||markdownLineEnding(sr)?mr(sr):markdownSpace(sr)?(e.consume(sr),cr):Ye(sr)}function mr(sr){return sr===45&&rt===2?(e.consume(sr),vr):sr===60&&rt===1?(e.consume(sr),xr):sr===62&&rt===4?(e.consume(sr),hr):sr===63&&rt===3?(e.consume(sr),yr):sr===93&&rt===5?(e.consume(sr),Ir):markdownLineEnding(sr)&&(rt===6||rt===7)?(e.exit("htmlFlowData"),e.check(blankLineBefore,Tr,gr)(sr)):sr===null||markdownLineEnding(sr)?(e.exit("htmlFlowData"),gr(sr)):(e.consume(sr),mr)}function gr(sr){return e.check(nonLazyContinuationStart,pr,Tr)(sr)}function pr(sr){return e.enter("lineEnding"),e.consume(sr),e.exit("lineEnding"),Ar}function Ar(sr){return sr===null||markdownLineEnding(sr)?gr(sr):(e.enter("htmlFlowData"),mr(sr))}function vr(sr){return sr===45?(e.consume(sr),yr):mr(sr)}function xr(sr){return sr===47?(e.consume(sr),at="",Sr):mr(sr)}function Sr(sr){if(sr===62){const dr=at.toLowerCase();return htmlRawNames.includes(dr)?(e.consume(sr),hr):mr(sr)}return asciiAlpha(sr)&&at.length<8?(e.consume(sr),at+=String.fromCharCode(sr),Sr):mr(sr)}function Ir(sr){return sr===93?(e.consume(sr),yr):mr(sr)}function yr(sr){return sr===62?(e.consume(sr),hr):sr===45&&rt===2?(e.consume(sr),yr):mr(sr)}function hr(sr){return sr===null||markdownLineEnding(sr)?(e.exit("htmlFlowData"),Tr(sr)):(e.consume(sr),hr)}function Tr(sr){return e.exit("htmlFlow"),t(sr)}}function tokenizeNonLazyContinuationStart(e,t,Ye){const tt=this;return rt;function rt(at){return markdownLineEnding(at)?(e.enter("lineEnding"),e.consume(at),e.exit("lineEnding"),nt):Ye(at)}function nt(at){return tt.parser.lazy[tt.now().line]?Ye(at):t(at)}}function tokenizeBlankLineBefore(e,t,Ye){return tt;function tt(rt){return e.enter("lineEnding"),e.consume(rt),e.exit("lineEnding"),e.attempt(blankLine,t,Ye)}}const htmlText={name:"htmlText",tokenize:tokenizeHtmlText};function tokenizeHtmlText(e,t,Ye){const tt=this;let rt,nt,at;return ot;function ot(yr){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(yr),ct}function ct(yr){return yr===33?(e.consume(yr),Et):yr===47?(e.consume(yr),Jt):yr===63?(e.consume(yr),Yt):asciiAlpha(yr)?(e.consume(yr),nr):Ye(yr)}function Et(yr){return yr===45?(e.consume(yr),At):yr===91?(e.consume(yr),nt=0,Ut):asciiAlpha(yr)?(e.consume(yr),Kt):Ye(yr)}function At(yr){return yr===45?(e.consume(yr),qt):Ye(yr)}function Rt(yr){return yr===null?Ye(yr):yr===45?(e.consume(yr),jt):markdownLineEnding(yr)?(at=Rt,xr(yr)):(e.consume(yr),Rt)}function jt(yr){return yr===45?(e.consume(yr),qt):Rt(yr)}function qt(yr){return yr===62?vr(yr):yr===45?jt(yr):Rt(yr)}function Ut(yr){const hr="CDATA[";return yr===hr.charCodeAt(nt++)?(e.consume(yr),nt===hr.length?Vt:Ut):Ye(yr)}function Vt(yr){return yr===null?Ye(yr):yr===93?(e.consume(yr),zt):markdownLineEnding(yr)?(at=Vt,xr(yr)):(e.consume(yr),Vt)}function zt(yr){return yr===93?(e.consume(yr),Gt):Vt(yr)}function Gt(yr){return yr===62?vr(yr):yr===93?(e.consume(yr),Gt):Vt(yr)}function Kt(yr){return yr===null||yr===62?vr(yr):markdownLineEnding(yr)?(at=Kt,xr(yr)):(e.consume(yr),Kt)}function Yt(yr){return yr===null?Ye(yr):yr===63?(e.consume(yr),Xt):markdownLineEnding(yr)?(at=Yt,xr(yr)):(e.consume(yr),Yt)}function Xt(yr){return yr===62?vr(yr):Yt(yr)}function Jt(yr){return asciiAlpha(yr)?(e.consume(yr),Qt):Ye(yr)}function Qt(yr){return yr===45||asciiAlphanumeric(yr)?(e.consume(yr),Qt):er(yr)}function er(yr){return markdownLineEnding(yr)?(at=er,xr(yr)):markdownSpace(yr)?(e.consume(yr),er):vr(yr)}function nr(yr){return yr===45||asciiAlphanumeric(yr)?(e.consume(yr),nr):yr===47||yr===62||markdownLineEndingOrSpace(yr)?ir(yr):Ye(yr)}function ir(yr){return yr===47?(e.consume(yr),vr):yr===58||yr===95||asciiAlpha(yr)?(e.consume(yr),lr):markdownLineEnding(yr)?(at=ir,xr(yr)):markdownSpace(yr)?(e.consume(yr),ir):vr(yr)}function lr(yr){return yr===45||yr===46||yr===58||yr===95||asciiAlphanumeric(yr)?(e.consume(yr),lr):cr(yr)}function cr(yr){return yr===61?(e.consume(yr),mr):markdownLineEnding(yr)?(at=cr,xr(yr)):markdownSpace(yr)?(e.consume(yr),cr):ir(yr)}function mr(yr){return yr===null||yr===60||yr===61||yr===62||yr===96?Ye(yr):yr===34||yr===39?(e.consume(yr),rt=yr,gr):markdownLineEnding(yr)?(at=mr,xr(yr)):markdownSpace(yr)?(e.consume(yr),mr):(e.consume(yr),pr)}function gr(yr){return yr===rt?(e.consume(yr),rt=void 0,Ar):yr===null?Ye(yr):markdownLineEnding(yr)?(at=gr,xr(yr)):(e.consume(yr),gr)}function pr(yr){return yr===null||yr===34||yr===39||yr===60||yr===61||yr===96?Ye(yr):yr===47||yr===62||markdownLineEndingOrSpace(yr)?ir(yr):(e.consume(yr),pr)}function Ar(yr){return yr===47||yr===62||markdownLineEndingOrSpace(yr)?ir(yr):Ye(yr)}function vr(yr){return yr===62?(e.consume(yr),e.exit("htmlTextData"),e.exit("htmlText"),t):Ye(yr)}function xr(yr){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(yr),e.exit("lineEnding"),Sr}function Sr(yr){return markdownSpace(yr)?factorySpace(e,Ir,"linePrefix",tt.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(yr):Ir(yr)}function Ir(yr){return e.enter("htmlTextData"),at(yr)}}const labelEnd={name:"labelEnd",resolveAll:resolveAllLabelEnd,resolveTo:resolveToLabelEnd,tokenize:tokenizeLabelEnd},resourceConstruct={tokenize:tokenizeResource},referenceFullConstruct={tokenize:tokenizeReferenceFull},referenceCollapsedConstruct={tokenize:tokenizeReferenceCollapsed};function resolveAllLabelEnd(e){let t=-1;const Ye=[];for(;++t<e.length;){const tt=e[t][1];if(Ye.push(e[t]),tt.type==="labelImage"||tt.type==="labelLink"||tt.type==="labelEnd"){const rt=tt.type==="labelImage"?4:2;tt.type="data",t+=rt}}return e.length!==Ye.length&&splice$1(e,0,e.length,Ye),e}function resolveToLabelEnd(e,t){let Ye=e.length,tt=0,rt,nt,at,ot;for(;Ye--;)if(rt=e[Ye][1],nt){if(rt.type==="link"||rt.type==="labelLink"&&rt._inactive)break;e[Ye][0]==="enter"&&rt.type==="labelLink"&&(rt._inactive=!0)}else if(at){if(e[Ye][0]==="enter"&&(rt.type==="labelImage"||rt.type==="labelLink")&&!rt._balanced&&(nt=Ye,rt.type!=="labelLink")){tt=2;break}}else rt.type==="labelEnd"&&(at=Ye);const ct={type:e[nt][1].type==="labelLink"?"link":"image",start:{...e[nt][1].start},end:{...e[e.length-1][1].end}},Et={type:"label",start:{...e[nt][1].start},end:{...e[at][1].end}},At={type:"labelText",start:{...e[nt+tt+2][1].end},end:{...e[at-2][1].start}};return ot=[["enter",ct,t],["enter",Et,t]],ot=push(ot,e.slice(nt+1,nt+tt+3)),ot=push(ot,[["enter",At,t]]),ot=push(ot,resolveAll(t.parser.constructs.insideSpan.null,e.slice(nt+tt+4,at-3),t)),ot=push(ot,[["exit",At,t],e[at-2],e[at-1],["exit",Et,t]]),ot=push(ot,e.slice(at+1)),ot=push(ot,[["exit",ct,t]]),splice$1(e,nt,e.length,ot),e}function tokenizeLabelEnd(e,t,Ye){const tt=this;let rt=tt.events.length,nt,at;for(;rt--;)if((tt.events[rt][1].type==="labelImage"||tt.events[rt][1].type==="labelLink")&&!tt.events[rt][1]._balanced){nt=tt.events[rt][1];break}return ot;function ot(jt){return nt?nt._inactive?Rt(jt):(at=tt.parser.defined.includes(normalizeIdentifier(tt.sliceSerialize({start:nt.end,end:tt.now()}))),e.enter("labelEnd"),e.enter("labelMarker"),e.consume(jt),e.exit("labelMarker"),e.exit("labelEnd"),ct):Ye(jt)}function ct(jt){return jt===40?e.attempt(resourceConstruct,At,at?At:Rt)(jt):jt===91?e.attempt(referenceFullConstruct,At,at?Et:Rt)(jt):at?At(jt):Rt(jt)}function Et(jt){return e.attempt(referenceCollapsedConstruct,At,Rt)(jt)}function At(jt){return t(jt)}function Rt(jt){return nt._balanced=!0,Ye(jt)}}function tokenizeResource(e,t,Ye){return tt;function tt(Rt){return e.enter("resource"),e.enter("resourceMarker"),e.consume(Rt),e.exit("resourceMarker"),rt}function rt(Rt){return markdownLineEndingOrSpace(Rt)?factoryWhitespace(e,nt)(Rt):nt(Rt)}function nt(Rt){return Rt===41?At(Rt):factoryDestination(e,at,ot,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(Rt)}function at(Rt){return markdownLineEndingOrSpace(Rt)?factoryWhitespace(e,ct)(Rt):At(Rt)}function ot(Rt){return Ye(Rt)}function ct(Rt){return Rt===34||Rt===39||Rt===40?factoryTitle(e,Et,Ye,"resourceTitle","resourceTitleMarker","resourceTitleString")(Rt):At(Rt)}function Et(Rt){return markdownLineEndingOrSpace(Rt)?factoryWhitespace(e,At)(Rt):At(Rt)}function At(Rt){return Rt===41?(e.enter("resourceMarker"),e.consume(Rt),e.exit("resourceMarker"),e.exit("resource"),t):Ye(Rt)}}function tokenizeReferenceFull(e,t,Ye){const tt=this;return rt;function rt(ot){return factoryLabel.call(tt,e,nt,at,"reference","referenceMarker","referenceString")(ot)}function nt(ot){return tt.parser.defined.includes(normalizeIdentifier(tt.sliceSerialize(tt.events[tt.events.length-1][1]).slice(1,-1)))?t(ot):Ye(ot)}function at(ot){return Ye(ot)}}function tokenizeReferenceCollapsed(e,t,Ye){return tt;function tt(nt){return e.enter("reference"),e.enter("referenceMarker"),e.consume(nt),e.exit("referenceMarker"),rt}function rt(nt){return nt===93?(e.enter("referenceMarker"),e.consume(nt),e.exit("referenceMarker"),e.exit("reference"),t):Ye(nt)}}const labelStartImage={name:"labelStartImage",resolveAll:labelEnd.resolveAll,tokenize:tokenizeLabelStartImage};function tokenizeLabelStartImage(e,t,Ye){const tt=this;return rt;function rt(ot){return e.enter("labelImage"),e.enter("labelImageMarker"),e.consume(ot),e.exit("labelImageMarker"),nt}function nt(ot){return ot===91?(e.enter("labelMarker"),e.consume(ot),e.exit("labelMarker"),e.exit("labelImage"),at):Ye(ot)}function at(ot){return ot===94&&"_hiddenFootnoteSupport"in tt.parser.constructs?Ye(ot):t(ot)}}const labelStartLink={name:"labelStartLink",resolveAll:labelEnd.resolveAll,tokenize:tokenizeLabelStartLink};function tokenizeLabelStartLink(e,t,Ye){const tt=this;return rt;function rt(at){return e.enter("labelLink"),e.enter("labelMarker"),e.consume(at),e.exit("labelMarker"),e.exit("labelLink"),nt}function nt(at){return at===94&&"_hiddenFootnoteSupport"in tt.parser.constructs?Ye(at):t(at)}}const lineEnding={name:"lineEnding",tokenize:tokenizeLineEnding};function tokenizeLineEnding(e,t){return Ye;function Ye(tt){return e.enter("lineEnding"),e.consume(tt),e.exit("lineEnding"),factorySpace(e,t,"linePrefix")}}const thematicBreak$2={name:"thematicBreak",tokenize:tokenizeThematicBreak};function tokenizeThematicBreak(e,t,Ye){let tt=0,rt;return nt;function nt(Et){return e.enter("thematicBreak"),at(Et)}function at(Et){return rt=Et,ot(Et)}function ot(Et){return Et===rt?(e.enter("thematicBreakSequence"),ct(Et)):tt>=3&&(Et===null||markdownLineEnding(Et))?(e.exit("thematicBreak"),t(Et)):Ye(Et)}function ct(Et){return Et===rt?(e.consume(Et),tt++,ct):(e.exit("thematicBreakSequence"),markdownSpace(Et)?factorySpace(e,ot,"whitespace")(Et):ot(Et))}}const list$3={continuation:{tokenize:tokenizeListContinuation},exit:tokenizeListEnd,name:"list",tokenize:tokenizeListStart},listItemPrefixWhitespaceConstruct={partial:!0,tokenize:tokenizeListItemPrefixWhitespace},indentConstruct={partial:!0,tokenize:tokenizeIndent$1};function tokenizeListStart(e,t,Ye){const tt=this,rt=tt.events[tt.events.length-1];let nt=rt&&rt[1].type==="linePrefix"?rt[2].sliceSerialize(rt[1],!0).length:0,at=0;return ot;function ot(qt){const Ut=tt.containerState.type||(qt===42||qt===43||qt===45?"listUnordered":"listOrdered");if(Ut==="listUnordered"?!tt.containerState.marker||qt===tt.containerState.marker:asciiDigit(qt)){if(tt.containerState.type||(tt.containerState.type=Ut,e.enter(Ut,{_container:!0})),Ut==="listUnordered")return e.enter("listItemPrefix"),qt===42||qt===45?e.check(thematicBreak$2,Ye,Et)(qt):Et(qt);if(!tt.interrupt||qt===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),ct(qt)}return Ye(qt)}function ct(qt){return asciiDigit(qt)&&++at<10?(e.consume(qt),ct):(!tt.interrupt||at<2)&&(tt.containerState.marker?qt===tt.containerState.marker:qt===41||qt===46)?(e.exit("listItemValue"),Et(qt)):Ye(qt)}function Et(qt){return e.enter("listItemMarker"),e.consume(qt),e.exit("listItemMarker"),tt.containerState.marker=tt.containerState.marker||qt,e.check(blankLine,tt.interrupt?Ye:At,e.attempt(listItemPrefixWhitespaceConstruct,jt,Rt))}function At(qt){return tt.containerState.initialBlankLine=!0,nt++,jt(qt)}function Rt(qt){return markdownSpace(qt)?(e.enter("listItemPrefixWhitespace"),e.consume(qt),e.exit("listItemPrefixWhitespace"),jt):Ye(qt)}function jt(qt){return tt.containerState.size=nt+tt.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(qt)}}function tokenizeListContinuation(e,t,Ye){const tt=this;return tt.containerState._closeFlow=void 0,e.check(blankLine,rt,nt);function rt(ot){return tt.containerState.furtherBlankLines=tt.containerState.furtherBlankLines||tt.containerState.initialBlankLine,factorySpace(e,t,"listItemIndent",tt.containerState.size+1)(ot)}function nt(ot){return tt.containerState.furtherBlankLines||!markdownSpace(ot)?(tt.containerState.furtherBlankLines=void 0,tt.containerState.initialBlankLine=void 0,at(ot)):(tt.containerState.furtherBlankLines=void 0,tt.containerState.initialBlankLine=void 0,e.attempt(indentConstruct,t,at)(ot))}function at(ot){return tt.containerState._closeFlow=!0,tt.interrupt=void 0,factorySpace(e,e.attempt(list$3,t,Ye),"linePrefix",tt.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(ot)}}function tokenizeIndent$1(e,t,Ye){const tt=this;return factorySpace(e,rt,"listItemIndent",tt.containerState.size+1);function rt(nt){const at=tt.events[tt.events.length-1];return at&&at[1].type==="listItemIndent"&&at[2].sliceSerialize(at[1],!0).length===tt.containerState.size?t(nt):Ye(nt)}}function tokenizeListEnd(e){e.exit(this.containerState.type)}function tokenizeListItemPrefixWhitespace(e,t,Ye){const tt=this;return factorySpace(e,rt,"listItemPrefixWhitespace",tt.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function rt(nt){const at=tt.events[tt.events.length-1];return!markdownSpace(nt)&&at&&at[1].type==="listItemPrefixWhitespace"?t(nt):Ye(nt)}}const setextUnderline={name:"setextUnderline",resolveTo:resolveToSetextUnderline,tokenize:tokenizeSetextUnderline};function resolveToSetextUnderline(e,t){let Ye=e.length,tt,rt,nt;for(;Ye--;)if(e[Ye][0]==="enter"){if(e[Ye][1].type==="content"){tt=Ye;break}e[Ye][1].type==="paragraph"&&(rt=Ye)}else e[Ye][1].type==="content"&&e.splice(Ye,1),!nt&&e[Ye][1].type==="definition"&&(nt=Ye);const at={type:"setextHeading",start:{...e[tt][1].start},end:{...e[e.length-1][1].end}};return e[rt][1].type="setextHeadingText",nt?(e.splice(rt,0,["enter",at,t]),e.splice(nt+1,0,["exit",e[tt][1],t]),e[tt][1].end={...e[nt][1].end}):e[tt][1]=at,e.push(["exit",at,t]),e}function tokenizeSetextUnderline(e,t,Ye){const tt=this;let rt;return nt;function nt(Et){let At=tt.events.length,Rt;for(;At--;)if(tt.events[At][1].type!=="lineEnding"&&tt.events[At][1].type!=="linePrefix"&&tt.events[At][1].type!=="content"){Rt=tt.events[At][1].type==="paragraph";break}return!tt.parser.lazy[tt.now().line]&&(tt.interrupt||Rt)?(e.enter("setextHeadingLine"),rt=Et,at(Et)):Ye(Et)}function at(Et){return e.enter("setextHeadingLineSequence"),ot(Et)}function ot(Et){return Et===rt?(e.consume(Et),ot):(e.exit("setextHeadingLineSequence"),markdownSpace(Et)?factorySpace(e,ct,"lineSuffix")(Et):ct(Et))}function ct(Et){return Et===null||markdownLineEnding(Et)?(e.exit("setextHeadingLine"),t(Et)):Ye(Et)}}const flow$1={tokenize:initializeFlow};function initializeFlow(e){const t=this,Ye=e.attempt(blankLine,tt,e.attempt(this.parser.constructs.flowInitial,rt,factorySpace(e,e.attempt(this.parser.constructs.flow,rt,e.attempt(content,rt)),"linePrefix")));return Ye;function tt(nt){if(nt===null){e.consume(nt);return}return e.enter("lineEndingBlank"),e.consume(nt),e.exit("lineEndingBlank"),t.currentConstruct=void 0,Ye}function rt(nt){if(nt===null){e.consume(nt);return}return e.enter("lineEnding"),e.consume(nt),e.exit("lineEnding"),t.currentConstruct=void 0,Ye}}const resolver={resolveAll:createResolver()},string$1=initializeFactory("string"),text$9=initializeFactory("text");function initializeFactory(e){return{resolveAll:createResolver(e==="text"?resolveAllLineSuffixes:void 0),tokenize:t};function t(Ye){const tt=this,rt=this.parser.constructs[e],nt=Ye.attempt(rt,at,ot);return at;function at(At){return Et(At)?nt(At):ot(At)}function ot(At){if(At===null){Ye.consume(At);return}return Ye.enter("data"),Ye.consume(At),ct}function ct(At){return Et(At)?(Ye.exit("data"),nt(At)):(Ye.consume(At),ct)}function Et(At){if(At===null)return!0;const Rt=rt[At];let jt=-1;if(Rt)for(;++jt<Rt.length;){const qt=Rt[jt];if(!qt.previous||qt.previous.call(tt,tt.previous))return!0}return!1}}}function createResolver(e){return t;function t(Ye,tt){let rt=-1,nt;for(;++rt<=Ye.length;)nt===void 0?Ye[rt]&&Ye[rt][1].type==="data"&&(nt=rt,rt++):(!Ye[rt]||Ye[rt][1].type!=="data")&&(rt!==nt+2&&(Ye[nt][1].end=Ye[rt-1][1].end,Ye.splice(nt+2,rt-nt-2),rt=nt+2),nt=void 0);return e?e(Ye,tt):Ye}}function resolveAllLineSuffixes(e,t){let Ye=0;for(;++Ye<=e.length;)if((Ye===e.length||e[Ye][1].type==="lineEnding")&&e[Ye-1][1].type==="data"){const tt=e[Ye-1][1],rt=t.sliceStream(tt);let nt=rt.length,at=-1,ot=0,ct;for(;nt--;){const Et=rt[nt];if(typeof Et=="string"){for(at=Et.length;Et.charCodeAt(at-1)===32;)ot++,at--;if(at)break;at=-1}else if(Et===-2)ct=!0,ot++;else if(Et!==-1){nt++;break}}if(t._contentTypeTextTrailing&&Ye===e.length&&(ot=0),ot){const Et={type:Ye===e.length||ct||ot<2?"lineSuffix":"hardBreakTrailing",start:{_bufferIndex:nt?at:tt.start._bufferIndex+at,_index:tt.start._index+nt,line:tt.end.line,column:tt.end.column-ot,offset:tt.end.offset-ot},end:{...tt.end}};tt.end={...Et.start},tt.start.offset===tt.end.offset?Object.assign(tt,Et):(e.splice(Ye,0,["enter",Et,t],["exit",Et,t]),Ye+=2)}Ye++}return e}const document$1={42:list$3,43:list$3,45:list$3,48:list$3,49:list$3,50:list$3,51:list$3,52:list$3,53:list$3,54:list$3,55:list$3,56:list$3,57:list$3,62:blockQuote},contentInitial={91:definition$1},flowInitial={[-2]:codeIndented,[-1]:codeIndented,32:codeIndented},flow={35:headingAtx,42:thematicBreak$2,45:[setextUnderline,thematicBreak$2],60:htmlFlow,61:setextUnderline,95:thematicBreak$2,96:codeFenced,126:codeFenced},string={38:characterReference,92:characterEscape},text$8={[-5]:lineEnding,[-4]:lineEnding,[-3]:lineEnding,33:labelStartImage,38:characterReference,42:attention,60:[autolink,htmlText],91:labelStartLink,92:[hardBreakEscape,characterEscape],93:labelEnd,95:attention,96:codeText},insideSpan={null:[attention,resolver]},attentionMarkers={null:[42,95]},disable={null:[]},defaultConstructs=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers,contentInitial,disable,document:document$1,flow,flowInitial,insideSpan,string,text:text$8},Symbol.toStringTag,{value:"Module"}));function createTokenizer(e,t,Ye){let tt={_bufferIndex:-1,_index:0,line:Ye&&Ye.line||1,column:Ye&&Ye.column||1,offset:Ye&&Ye.offset||0};const rt={},nt=[];let at=[],ot=[];const ct={attempt:er(Jt),check:er(Qt),consume:Kt,enter:Yt,exit:Xt,interrupt:er(Qt,{interrupt:!0})},Et={code:null,containerState:{},defineSkip:Vt,events:[],now:Ut,parser:e,previous:null,sliceSerialize:jt,sliceStream:qt,write:Rt};let At=t.tokenize.call(Et,ct);return t.resolveAll&&nt.push(t),Et;function Rt(cr){return at=push(at,cr),zt(),at[at.length-1]!==null?[]:(nr(t,0),Et.events=resolveAll(nt,Et.events,Et),Et.events)}function jt(cr,mr){return serializeChunks(qt(cr),mr)}function qt(cr){return sliceChunks(at,cr)}function Ut(){const{_bufferIndex:cr,_index:mr,line:gr,column:pr,offset:Ar}=tt;return{_bufferIndex:cr,_index:mr,line:gr,column:pr,offset:Ar}}function Vt(cr){rt[cr.line]=cr.column,lr()}function zt(){let cr;for(;tt._index<at.length;){const mr=at[tt._index];if(typeof mr=="string")for(cr=tt._index,tt._bufferIndex<0&&(tt._bufferIndex=0);tt._index===cr&&tt._bufferIndex<mr.length;)Gt(mr.charCodeAt(tt._bufferIndex));else Gt(mr)}}function Gt(cr){At=At(cr)}function Kt(cr){markdownLineEnding(cr)?(tt.line++,tt.column=1,tt.offset+=cr===-3?2:1,lr()):cr!==-1&&(tt.column++,tt.offset++),tt._bufferIndex<0?tt._index++:(tt._bufferIndex++,tt._bufferIndex===at[tt._index].length&&(tt._bufferIndex=-1,tt._index++)),Et.previous=cr}function Yt(cr,mr){const gr=mr||{};return gr.type=cr,gr.start=Ut(),Et.events.push(["enter",gr,Et]),ot.push(gr),gr}function Xt(cr){const mr=ot.pop();return mr.end=Ut(),Et.events.push(["exit",mr,Et]),mr}function Jt(cr,mr){nr(cr,mr.from)}function Qt(cr,mr){mr.restore()}function er(cr,mr){return gr;function gr(pr,Ar,vr){let xr,Sr,Ir,yr;return Array.isArray(pr)?Tr(pr):"tokenize"in pr?Tr([pr]):hr(pr);function hr(wr){return Or;function Or(Pr){const Nr=Pr!==null&&wr[Pr],Lr=Pr!==null&&wr.null,$r=[...Array.isArray(Nr)?Nr:Nr?[Nr]:[],...Array.isArray(Lr)?Lr:Lr?[Lr]:[]];return Tr($r)(Pr)}}function Tr(wr){return xr=wr,Sr=0,wr.length===0?vr:sr(wr[Sr])}function sr(wr){return Or;function Or(Pr){return yr=ir(),Ir=wr,wr.partial||(Et.currentConstruct=wr),wr.name&&Et.parser.constructs.disable.null.includes(wr.name)?_r():wr.tokenize.call(mr?Object.assign(Object.create(Et),mr):Et,ct,dr,_r)(Pr)}}function dr(wr){return cr(Ir,yr),Ar}function _r(wr){return yr.restore(),++Sr<xr.length?sr(xr[Sr]):vr}}}function nr(cr,mr){cr.resolveAll&&!nt.includes(cr)&&nt.push(cr),cr.resolve&&splice$1(Et.events,mr,Et.events.length-mr,cr.resolve(Et.events.slice(mr),Et)),cr.resolveTo&&(Et.events=cr.resolveTo(Et.events,Et))}function ir(){const cr=Ut(),mr=Et.previous,gr=Et.currentConstruct,pr=Et.events.length,Ar=Array.from(ot);return{from:pr,restore:vr};function vr(){tt=cr,Et.previous=mr,Et.currentConstruct=gr,Et.events.length=pr,ot=Ar,lr()}}function lr(){tt.line in rt&&tt.column<2&&(tt.column=rt[tt.line],tt.offset+=rt[tt.line]-1)}}function sliceChunks(e,t){const Ye=t.start._index,tt=t.start._bufferIndex,rt=t.end._index,nt=t.end._bufferIndex;let at;if(Ye===rt)at=[e[Ye].slice(tt,nt)];else{if(at=e.slice(Ye,rt),tt>-1){const ot=at[0];typeof ot=="string"?at[0]=ot.slice(tt):at.shift()}nt>0&&at.push(e[rt].slice(0,nt))}return at}function serializeChunks(e,t){let Ye=-1;const tt=[];let rt;for(;++Ye<e.length;){const nt=e[Ye];let at;if(typeof nt=="string")at=nt;else switch(nt){case-5:{at="\r";break}case-4:{at=`
355
355
  `;break}case-3:{at=`\r
356
356
  `;break}case-2:{at=t?" ":" ";break}case-1:{if(!t&&rt)continue;at=" ";break}default:at=String.fromCharCode(nt)}rt=nt===-2,tt.push(at)}return tt.join("")}function parse(e){const tt={constructs:combineExtensions([defaultConstructs,...(e||{}).extensions||[]]),content:rt(content$1),defined:[],document:rt(document$2),flow:rt(flow$1),lazy:{},string:rt(string$1),text:rt(text$9)};return tt;function rt(nt){return at;function at(ot){return createTokenizer(tt,nt,ot)}}}function postprocess(e){for(;!subtokenize(e););return e}const search$1=/[\0\t\n\r]/g;function preprocess(){let e=1,t="",Ye=!0,tt;return rt;function rt(nt,at,ot){const ct=[];let Et,At,Rt,jt,qt;for(nt=t+(typeof nt=="string"?nt.toString():new TextDecoder(at||void 0).decode(nt)),Rt=0,t="",Ye&&(nt.charCodeAt(0)===65279&&Rt++,Ye=void 0);Rt<nt.length;){if(search$1.lastIndex=Rt,Et=search$1.exec(nt),jt=Et&&Et.index!==void 0?Et.index:nt.length,qt=nt.charCodeAt(jt),!Et){t=nt.slice(Rt);break}if(qt===10&&Rt===jt&&tt)ct.push(-3),tt=void 0;else switch(tt&&(ct.push(-5),tt=void 0),Rt<jt&&(ct.push(nt.slice(Rt,jt)),e+=jt-Rt),qt){case 0:{ct.push(65533),e++;break}case 9:{for(At=Math.ceil(e/4)*4,ct.push(-2);e++<At;)ct.push(-1);break}case 10:{ct.push(-4),e=1;break}default:tt=!0,e=1}Rt=jt+1}return ot&&(tt&&ct.push(-5),t&&ct.push(t),ct.push(null)),ct}}const characterEscapeOrReference=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function decodeString(e){return e.replace(characterEscapeOrReference,decode)}function decode(e,t,Ye){if(t)return t;if(Ye.charCodeAt(0)===35){const rt=Ye.charCodeAt(1),nt=rt===120||rt===88;return decodeNumericCharacterReference(Ye.slice(nt?2:1),nt?16:10)}return decodeNamedCharacterReference(Ye)||e}const own$8={}.hasOwnProperty;function fromMarkdown(e,t,Ye){return typeof t!="string"&&(Ye=t,t=void 0),compiler(Ye)(postprocess(parse(Ye).document().write(preprocess()(e,t,!0))))}function compiler(e){const t={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:nt(sn),autolinkProtocol:ir,autolinkEmail:ir,atxHeading:nt(Gr),blockQuote:nt(Lr),characterEscape:ir,characterReference:ir,codeFenced:nt($r),codeFencedFenceInfo:at,codeFencedFenceMeta:at,codeIndented:nt($r,at),codeText:nt(Rr,at),codeTextData:ir,data:ir,codeFlowValue:ir,definition:nt(jr),definitionDestinationString:at,definitionLabelString:at,definitionTitleString:at,emphasis:nt(Fr),hardBreakEscape:nt(Yr),hardBreakTrailing:nt(Yr),htmlFlow:nt(Qr,at),htmlFlowData:ir,htmlText:nt(Qr,at),htmlTextData:ir,image:nt(fn),label:at,link:nt(sn),listItem:nt(_n),listItemValue:jt,listOrdered:nt(bn,Rt),listUnordered:nt(bn),paragraph:nt(rn),reference:sr,referenceString:at,resourceDestinationString:at,resourceTitleString:at,setextHeading:nt(Gr),strong:nt(pn),thematicBreak:nt(En)},exit:{atxHeading:ct(),atxHeadingSequence:Jt,autolink:ct(),autolinkEmail:Nr,autolinkProtocol:Pr,blockQuote:ct(),characterEscapeValue:lr,characterReferenceMarkerHexadecimal:_r,characterReferenceMarkerNumeric:_r,characterReferenceValue:wr,characterReference:Or,codeFenced:ct(zt),codeFencedFence:Vt,codeFencedFenceInfo:qt,codeFencedFenceMeta:Ut,codeFlowValue:lr,codeIndented:ct(Gt),codeText:ct(Ar),codeTextData:lr,data:lr,definition:ct(),definitionDestinationString:Xt,definitionLabelString:Kt,definitionTitleString:Yt,emphasis:ct(),hardBreakEscape:ct(mr),hardBreakTrailing:ct(mr),htmlFlow:ct(gr),htmlFlowData:lr,htmlText:ct(pr),htmlTextData:lr,image:ct(xr),label:Ir,labelText:Sr,lineEnding:cr,link:ct(vr),listItem:ct(),listOrdered:ct(),listUnordered:ct(),paragraph:ct(),referenceString:dr,resourceDestinationString:yr,resourceTitleString:hr,resource:Tr,setextHeading:ct(nr),setextHeadingLineSequence:er,setextHeadingText:Qt,strong:ct(),thematicBreak:ct()}};configure(t,(e||{}).mdastExtensions||[]);const Ye={};return tt;function tt(Hr){let Xr={type:"root",children:[]};const tn={stack:[Xr],tokenStack:[],config:t,enter:ot,exit:Et,buffer:at,resume:At,data:Ye},un=[];let yn=-1;for(;++yn<Hr.length;)if(Hr[yn][1].type==="listOrdered"||Hr[yn][1].type==="listUnordered")if(Hr[yn][0]==="enter")un.push(yn);else{const Jn=un.pop();yn=rt(Hr,Jn,yn)}for(yn=-1;++yn<Hr.length;){const Jn=t[Hr[yn][0]];own$8.call(Jn,Hr[yn][1].type)&&Jn[Hr[yn][1].type].call(Object.assign({sliceSerialize:Hr[yn][2].sliceSerialize},tn),Hr[yn][1])}if(tn.tokenStack.length>0){const Jn=tn.tokenStack[tn.tokenStack.length-1];(Jn[1]||defaultOnError).call(tn,void 0,Jn[0])}for(Xr.position={start:point$4(Hr.length>0?Hr[0][1].start:{line:1,column:1,offset:0}),end:point$4(Hr.length>0?Hr[Hr.length-2][1].end:{line:1,column:1,offset:0})},yn=-1;++yn<t.transforms.length;)Xr=t.transforms[yn](Xr)||Xr;return Xr}function rt(Hr,Xr,tn){let un=Xr-1,yn=-1,Jn=!1,Mn,$n,Tn,Ln;for(;++un<=tn;){const In=Hr[un];switch(In[1].type){case"listUnordered":case"listOrdered":case"blockQuote":{In[0]==="enter"?yn++:yn--,Ln=void 0;break}case"lineEndingBlank":{In[0]==="enter"&&(Mn&&!Ln&&!yn&&!Tn&&(Tn=un),Ln=void 0);break}case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:Ln=void 0}if(!yn&&In[0]==="enter"&&In[1].type==="listItemPrefix"||yn===-1&&In[0]==="exit"&&(In[1].type==="listUnordered"||In[1].type==="listOrdered")){if(Mn){let _a=un;for($n=void 0;_a--;){const aa=Hr[_a];if(aa[1].type==="lineEnding"||aa[1].type==="lineEndingBlank"){if(aa[0]==="exit")continue;$n&&(Hr[$n][1].type="lineEndingBlank",Jn=!0),aa[1].type="lineEnding",$n=_a}else if(!(aa[1].type==="linePrefix"||aa[1].type==="blockQuotePrefix"||aa[1].type==="blockQuotePrefixWhitespace"||aa[1].type==="blockQuoteMarker"||aa[1].type==="listItemIndent"))break}Tn&&(!$n||Tn<$n)&&(Mn._spread=!0),Mn.end=Object.assign({},$n?Hr[$n][1].start:In[1].end),Hr.splice($n||un,0,["exit",Mn,In[2]]),un++,tn++}if(In[1].type==="listItemPrefix"){const _a={type:"listItem",_spread:!1,start:Object.assign({},In[1].start),end:void 0};Mn=_a,Hr.splice(un,0,["enter",_a,In[2]]),un++,tn++,Tn=void 0,Ln=!0}}}return Hr[Xr][1]._spread=Jn,tn}function nt(Hr,Xr){return tn;function tn(un){ot.call(this,Hr(un),un),Xr&&Xr.call(this,un)}}function at(){this.stack.push({type:"fragment",children:[]})}function ot(Hr,Xr,tn){this.stack[this.stack.length-1].children.push(Hr),this.stack.push(Hr),this.tokenStack.push([Xr,tn||void 0]),Hr.position={start:point$4(Xr.start),end:void 0}}function ct(Hr){return Xr;function Xr(tn){Hr&&Hr.call(this,tn),Et.call(this,tn)}}function Et(Hr,Xr){const tn=this.stack.pop(),un=this.tokenStack.pop();if(un)un[0].type!==Hr.type&&(Xr?Xr.call(this,Hr,un[0]):(un[1]||defaultOnError).call(this,Hr,un[0]));else throw new Error("Cannot close `"+Hr.type+"` ("+stringifyPosition({start:Hr.start,end:Hr.end})+"): it’s not open");tn.position.end=point$4(Hr.end)}function At(){return toString$4(this.stack.pop())}function Rt(){this.data.expectingFirstListItemValue=!0}function jt(Hr){if(this.data.expectingFirstListItemValue){const Xr=this.stack[this.stack.length-2];Xr.start=Number.parseInt(this.sliceSerialize(Hr),10),this.data.expectingFirstListItemValue=void 0}}function qt(){const Hr=this.resume(),Xr=this.stack[this.stack.length-1];Xr.lang=Hr}function Ut(){const Hr=this.resume(),Xr=this.stack[this.stack.length-1];Xr.meta=Hr}function Vt(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function zt(){const Hr=this.resume(),Xr=this.stack[this.stack.length-1];Xr.value=Hr.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),this.data.flowCodeInside=void 0}function Gt(){const Hr=this.resume(),Xr=this.stack[this.stack.length-1];Xr.value=Hr.replace(/(\r?\n|\r)$/g,"")}function Kt(Hr){const Xr=this.resume(),tn=this.stack[this.stack.length-1];tn.label=Xr,tn.identifier=normalizeIdentifier(this.sliceSerialize(Hr)).toLowerCase()}function Yt(){const Hr=this.resume(),Xr=this.stack[this.stack.length-1];Xr.title=Hr}function Xt(){const Hr=this.resume(),Xr=this.stack[this.stack.length-1];Xr.url=Hr}function Jt(Hr){const Xr=this.stack[this.stack.length-1];if(!Xr.depth){const tn=this.sliceSerialize(Hr).length;Xr.depth=tn}}function Qt(){this.data.setextHeadingSlurpLineEnding=!0}function er(Hr){const Xr=this.stack[this.stack.length-1];Xr.depth=this.sliceSerialize(Hr).codePointAt(0)===61?1:2}function nr(){this.data.setextHeadingSlurpLineEnding=void 0}function ir(Hr){const tn=this.stack[this.stack.length-1].children;let un=tn[tn.length-1];(!un||un.type!=="text")&&(un=vn(),un.position={start:point$4(Hr.start),end:void 0},tn.push(un)),this.stack.push(un)}function lr(Hr){const Xr=this.stack.pop();Xr.value+=this.sliceSerialize(Hr),Xr.position.end=point$4(Hr.end)}function cr(Hr){const Xr=this.stack[this.stack.length-1];if(this.data.atHardBreak){const tn=Xr.children[Xr.children.length-1];tn.position.end=point$4(Hr.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(Xr.type)&&(ir.call(this,Hr),lr.call(this,Hr))}function mr(){this.data.atHardBreak=!0}function gr(){const Hr=this.resume(),Xr=this.stack[this.stack.length-1];Xr.value=Hr}function pr(){const Hr=this.resume(),Xr=this.stack[this.stack.length-1];Xr.value=Hr}function Ar(){const Hr=this.resume(),Xr=this.stack[this.stack.length-1];Xr.value=Hr}function vr(){const Hr=this.stack[this.stack.length-1];if(this.data.inReference){const Xr=this.data.referenceType||"shortcut";Hr.type+="Reference",Hr.referenceType=Xr,delete Hr.url,delete Hr.title}else delete Hr.identifier,delete Hr.label;this.data.referenceType=void 0}function xr(){const Hr=this.stack[this.stack.length-1];if(this.data.inReference){const Xr=this.data.referenceType||"shortcut";Hr.type+="Reference",Hr.referenceType=Xr,delete Hr.url,delete Hr.title}else delete Hr.identifier,delete Hr.label;this.data.referenceType=void 0}function Sr(Hr){const Xr=this.sliceSerialize(Hr),tn=this.stack[this.stack.length-2];tn.label=decodeString(Xr),tn.identifier=normalizeIdentifier(Xr).toLowerCase()}function Ir(){const Hr=this.stack[this.stack.length-1],Xr=this.resume(),tn=this.stack[this.stack.length-1];if(this.data.inReference=!0,tn.type==="link"){const un=Hr.children;tn.children=un}else tn.alt=Xr}function yr(){const Hr=this.resume(),Xr=this.stack[this.stack.length-1];Xr.url=Hr}function hr(){const Hr=this.resume(),Xr=this.stack[this.stack.length-1];Xr.title=Hr}function Tr(){this.data.inReference=void 0}function sr(){this.data.referenceType="collapsed"}function dr(Hr){const Xr=this.resume(),tn=this.stack[this.stack.length-1];tn.label=Xr,tn.identifier=normalizeIdentifier(this.sliceSerialize(Hr)).toLowerCase(),this.data.referenceType="full"}function _r(Hr){this.data.characterReferenceType=Hr.type}function wr(Hr){const Xr=this.sliceSerialize(Hr),tn=this.data.characterReferenceType;let un;tn?(un=decodeNumericCharacterReference(Xr,tn==="characterReferenceMarkerNumeric"?10:16),this.data.characterReferenceType=void 0):un=decodeNamedCharacterReference(Xr);const yn=this.stack[this.stack.length-1];yn.value+=un}function Or(Hr){const Xr=this.stack.pop();Xr.position.end=point$4(Hr.end)}function Pr(Hr){lr.call(this,Hr);const Xr=this.stack[this.stack.length-1];Xr.url=this.sliceSerialize(Hr)}function Nr(Hr){lr.call(this,Hr);const Xr=this.stack[this.stack.length-1];Xr.url="mailto:"+this.sliceSerialize(Hr)}function Lr(){return{type:"blockquote",children:[]}}function $r(){return{type:"code",lang:null,meta:null,value:""}}function Rr(){return{type:"inlineCode",value:""}}function jr(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function Fr(){return{type:"emphasis",children:[]}}function Gr(){return{type:"heading",depth:0,children:[]}}function Yr(){return{type:"break"}}function Qr(){return{type:"html",value:""}}function fn(){return{type:"image",title:null,url:"",alt:null}}function sn(){return{type:"link",title:null,url:"",children:[]}}function bn(Hr){return{type:"list",ordered:Hr.type==="listOrdered",start:null,spread:Hr._spread,children:[]}}function _n(Hr){return{type:"listItem",spread:Hr._spread,checked:null,children:[]}}function rn(){return{type:"paragraph",children:[]}}function pn(){return{type:"strong",children:[]}}function vn(){return{type:"text",value:""}}function En(){return{type:"thematicBreak"}}}function point$4(e){return{line:e.line,column:e.column,offset:e.offset}}function configure(e,t){let Ye=-1;for(;++Ye<t.length;){const tt=t[Ye];Array.isArray(tt)?configure(e,tt):extension(e,tt)}}function extension(e,t){let Ye;for(Ye in t)if(own$8.call(t,Ye))switch(Ye){case"canContainEols":{const tt=t[Ye];tt&&e[Ye].push(...tt);break}case"transforms":{const tt=t[Ye];tt&&e[Ye].push(...tt);break}case"enter":case"exit":{const tt=t[Ye];tt&&Object.assign(e[Ye],tt);break}}}function defaultOnError(e,t){throw e?new Error("Cannot close `"+e.type+"` ("+stringifyPosition({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+stringifyPosition({start:t.start,end:t.end})+") is open"):new Error("Cannot close document, a token (`"+t.type+"`, "+stringifyPosition({start:t.start,end:t.end})+") is still open")}function remarkParse(e){const t=this;t.parser=Ye;function Ye(tt){return fromMarkdown(tt,{...t.data("settings"),...e,extensions:t.data("micromarkExtensions")||[],mdastExtensions:t.data("fromMarkdownExtensions")||[]})}}function blockquote$1(e,t){const Ye={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,Ye),e.applyData(t,Ye)}function hardBreak$1(e,t){const Ye={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,Ye),[e.applyData(t,Ye),{type:"text",value:`
@@ -890,7 +890,7 @@ ${t}</tr>
890
890
  `}tablecell(t){let Ye=this.parser.parseInline(t.tokens),tt=t.header?"th":"td";return(t.align?`<${tt} align="${t.align}">`:`<${tt}>`)+Ye+`</${tt}>
891
891
  `}strong({tokens:t}){return`<strong>${this.parser.parseInline(t)}</strong>`}em({tokens:t}){return`<em>${this.parser.parseInline(t)}</em>`}codespan({text:t}){return`<code>${w$1(t,!0)}</code>`}br(t){return"<br>"}del({tokens:t}){return`<del>${this.parser.parseInline(t)}</del>`}link({href:t,title:Ye,tokens:tt}){let rt=this.parser.parseInline(tt),nt=J$1(t);if(nt===null)return rt;t=nt;let at='<a href="'+t+'"';return Ye&&(at+=' title="'+w$1(Ye)+'"'),at+=">"+rt+"</a>",at}image({href:t,title:Ye,text:tt,tokens:rt}){rt&&(tt=this.parser.parseInline(rt,this.parser.textRenderer));let nt=J$1(t);if(nt===null)return w$1(tt);t=nt;let at=`<img src="${t}" alt="${tt}"`;return Ye&&(at+=` title="${w$1(Ye)}"`),at+=">",at}text(t){return"tokens"in t&&t.tokens?this.parser.parseInline(t.tokens):"escaped"in t&&t.escaped?t.text:w$1(t.text)}},$$1=class{strong({text:t}){return t}em({text:t}){return t}codespan({text:t}){return t}del({text:t}){return t}html({text:t}){return t}text({text:t}){return t}link({text:t}){return""+t}image({text:t}){return""+t}br(){return""}},b$1=class Ff{constructor(t){Dr(this,"options");Dr(this,"renderer");Dr(this,"textRenderer");this.options=t||T$1,this.options.renderer=this.options.renderer||new P$3,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new $$1}static parse(t,Ye){return new Ff(Ye).parse(t)}static parseInline(t,Ye){return new Ff(Ye).parseInline(t)}parse(t,Ye=!0){var rt,nt;let tt="";for(let at=0;at<t.length;at++){let ot=t[at];if((nt=(rt=this.options.extensions)==null?void 0:rt.renderers)!=null&&nt[ot.type]){let Et=ot,At=this.options.extensions.renderers[Et.type].call({parser:this},Et);if(At!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(Et.type)){tt+=At||"";continue}}let ct=ot;switch(ct.type){case"space":{tt+=this.renderer.space(ct);continue}case"hr":{tt+=this.renderer.hr(ct);continue}case"heading":{tt+=this.renderer.heading(ct);continue}case"code":{tt+=this.renderer.code(ct);continue}case"table":{tt+=this.renderer.table(ct);continue}case"blockquote":{tt+=this.renderer.blockquote(ct);continue}case"list":{tt+=this.renderer.list(ct);continue}case"html":{tt+=this.renderer.html(ct);continue}case"def":{tt+=this.renderer.def(ct);continue}case"paragraph":{tt+=this.renderer.paragraph(ct);continue}case"text":{let Et=ct,At=this.renderer.text(Et);for(;at+1<t.length&&t[at+1].type==="text";)Et=t[++at],At+=`
892
892
  `+this.renderer.text(Et);Ye?tt+=this.renderer.paragraph({type:"paragraph",raw:At,text:At,tokens:[{type:"text",raw:At,text:At,escaped:!0}]}):tt+=At;continue}default:{let Et='Token with "'+ct.type+'" type was not found.';if(this.options.silent)return console.error(Et),"";throw new Error(Et)}}}return tt}parseInline(t,Ye=this.renderer){var rt,nt;let tt="";for(let at=0;at<t.length;at++){let ot=t[at];if((nt=(rt=this.options.extensions)==null?void 0:rt.renderers)!=null&&nt[ot.type]){let Et=this.options.extensions.renderers[ot.type].call({parser:this},ot);if(Et!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(ot.type)){tt+=Et||"";continue}}let ct=ot;switch(ct.type){case"escape":{tt+=Ye.text(ct);break}case"html":{tt+=Ye.html(ct);break}case"link":{tt+=Ye.link(ct);break}case"image":{tt+=Ye.image(ct);break}case"strong":{tt+=Ye.strong(ct);break}case"em":{tt+=Ye.em(ct);break}case"codespan":{tt+=Ye.codespan(ct);break}case"br":{tt+=Ye.br(ct);break}case"del":{tt+=Ye.del(ct);break}case"text":{tt+=Ye.text(ct);break}default:{let Et='Token with "'+ct.type+'" type was not found.';if(this.options.silent)return console.error(Et),"";throw new Error(Et)}}}return tt}},lc,S$1=(lc=class{constructor(t){Dr(this,"options");Dr(this,"block");this.options=t||T$1}preprocess(t){return t}postprocess(t){return t}processAllTokens(t){return t}emStrongMask(t){return t}provideLexer(){return this.block?x$3.lex:x$3.lexInline}provideParser(){return this.block?b$1.parse:b$1.parseInline}},Dr(lc,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens","emStrongMask"])),Dr(lc,"passThroughHooksRespectAsync",new Set(["preprocess","postprocess","processAllTokens"])),lc),B$1=class{constructor(...t){Dr(this,"defaults",L$1());Dr(this,"options",this.setOptions);Dr(this,"parse",this.parseMarkdown(!0));Dr(this,"parseInline",this.parseMarkdown(!1));Dr(this,"Parser",b$1);Dr(this,"Renderer",P$3);Dr(this,"TextRenderer",$$1);Dr(this,"Lexer",x$3);Dr(this,"Tokenizer",y$2);Dr(this,"Hooks",S$1);this.use(...t)}walkTokens(t,Ye){var rt,nt;let tt=[];for(let at of t)switch(tt=tt.concat(Ye.call(this,at)),at.type){case"table":{let ot=at;for(let ct of ot.header)tt=tt.concat(this.walkTokens(ct.tokens,Ye));for(let ct of ot.rows)for(let Et of ct)tt=tt.concat(this.walkTokens(Et.tokens,Ye));break}case"list":{let ot=at;tt=tt.concat(this.walkTokens(ot.items,Ye));break}default:{let ot=at;(nt=(rt=this.defaults.extensions)==null?void 0:rt.childTokens)!=null&&nt[ot.type]?this.defaults.extensions.childTokens[ot.type].forEach(ct=>{let Et=ot[ct].flat(1/0);tt=tt.concat(this.walkTokens(Et,Ye))}):ot.tokens&&(tt=tt.concat(this.walkTokens(ot.tokens,Ye)))}}return tt}use(...t){let Ye=this.defaults.extensions||{renderers:{},childTokens:{}};return t.forEach(tt=>{let rt={...tt};if(rt.async=this.defaults.async||rt.async||!1,tt.extensions&&(tt.extensions.forEach(nt=>{if(!nt.name)throw new Error("extension name required");if("renderer"in nt){let at=Ye.renderers[nt.name];at?Ye.renderers[nt.name]=function(...ot){let ct=nt.renderer.apply(this,ot);return ct===!1&&(ct=at.apply(this,ot)),ct}:Ye.renderers[nt.name]=nt.renderer}if("tokenizer"in nt){if(!nt.level||nt.level!=="block"&&nt.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let at=Ye[nt.level];at?at.unshift(nt.tokenizer):Ye[nt.level]=[nt.tokenizer],nt.start&&(nt.level==="block"?Ye.startBlock?Ye.startBlock.push(nt.start):Ye.startBlock=[nt.start]:nt.level==="inline"&&(Ye.startInline?Ye.startInline.push(nt.start):Ye.startInline=[nt.start]))}"childTokens"in nt&&nt.childTokens&&(Ye.childTokens[nt.name]=nt.childTokens)}),rt.extensions=Ye),tt.renderer){let nt=this.defaults.renderer||new P$3(this.defaults);for(let at in tt.renderer){if(!(at in nt))throw new Error(`renderer '${at}' does not exist`);if(["options","parser"].includes(at))continue;let ot=at,ct=tt.renderer[ot],Et=nt[ot];nt[ot]=(...At)=>{let Rt=ct.apply(nt,At);return Rt===!1&&(Rt=Et.apply(nt,At)),Rt||""}}rt.renderer=nt}if(tt.tokenizer){let nt=this.defaults.tokenizer||new y$2(this.defaults);for(let at in tt.tokenizer){if(!(at in nt))throw new Error(`tokenizer '${at}' does not exist`);if(["options","rules","lexer"].includes(at))continue;let ot=at,ct=tt.tokenizer[ot],Et=nt[ot];nt[ot]=(...At)=>{let Rt=ct.apply(nt,At);return Rt===!1&&(Rt=Et.apply(nt,At)),Rt}}rt.tokenizer=nt}if(tt.hooks){let nt=this.defaults.hooks||new S$1;for(let at in tt.hooks){if(!(at in nt))throw new Error(`hook '${at}' does not exist`);if(["options","block"].includes(at))continue;let ot=at,ct=tt.hooks[ot],Et=nt[ot];S$1.passThroughHooks.has(at)?nt[ot]=At=>{if(this.defaults.async&&S$1.passThroughHooksRespectAsync.has(at))return(async()=>{let jt=await ct.call(nt,At);return Et.call(nt,jt)})();let Rt=ct.call(nt,At);return Et.call(nt,Rt)}:nt[ot]=(...At)=>{if(this.defaults.async)return(async()=>{let jt=await ct.apply(nt,At);return jt===!1&&(jt=await Et.apply(nt,At)),jt})();let Rt=ct.apply(nt,At);return Rt===!1&&(Rt=Et.apply(nt,At)),Rt}}rt.hooks=nt}if(tt.walkTokens){let nt=this.defaults.walkTokens,at=tt.walkTokens;rt.walkTokens=function(ot){let ct=[];return ct.push(at.call(this,ot)),nt&&(ct=ct.concat(nt.call(this,ot))),ct}}this.defaults={...this.defaults,...rt}}),this}setOptions(t){return this.defaults={...this.defaults,...t},this}lexer(t,Ye){return x$3.lex(t,Ye??this.defaults)}parser(t,Ye){return b$1.parse(t,Ye??this.defaults)}parseMarkdown(t){return(Ye,tt)=>{let rt={...tt},nt={...this.defaults,...rt},at=this.onError(!!nt.silent,!!nt.async);if(this.defaults.async===!0&&rt.async===!1)return at(new 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 Ye>"u"||Ye===null)return at(new Error("marked(): input parameter is undefined or null"));if(typeof Ye!="string")return at(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(Ye)+", string expected"));if(nt.hooks&&(nt.hooks.options=nt,nt.hooks.block=t),nt.async)return(async()=>{let ot=nt.hooks?await nt.hooks.preprocess(Ye):Ye,ct=await(nt.hooks?await nt.hooks.provideLexer():t?x$3.lex:x$3.lexInline)(ot,nt),Et=nt.hooks?await nt.hooks.processAllTokens(ct):ct;nt.walkTokens&&await Promise.all(this.walkTokens(Et,nt.walkTokens));let At=await(nt.hooks?await nt.hooks.provideParser():t?b$1.parse:b$1.parseInline)(Et,nt);return nt.hooks?await nt.hooks.postprocess(At):At})().catch(at);try{nt.hooks&&(Ye=nt.hooks.preprocess(Ye));let ot=(nt.hooks?nt.hooks.provideLexer():t?x$3.lex:x$3.lexInline)(Ye,nt);nt.hooks&&(ot=nt.hooks.processAllTokens(ot)),nt.walkTokens&&this.walkTokens(ot,nt.walkTokens);let ct=(nt.hooks?nt.hooks.provideParser():t?b$1.parse:b$1.parseInline)(ot,nt);return nt.hooks&&(ct=nt.hooks.postprocess(ct)),ct}catch(ot){return at(ot)}}}onError(t,Ye){return tt=>{if(tt.message+=`
893
- Please report this to https://github.com/markedjs/marked.`,t){let rt="<p>An error occurred:</p><pre>"+w$1(tt.message+"",!0)+"</pre>";return Ye?Promise.resolve(rt):rt}if(Ye)return Promise.reject(tt);throw tt}}},_$1=new B$1;function k$3(e,t){return _$1.parse(e,t)}k$3.options=k$3.setOptions=function(e){return _$1.setOptions(e),k$3.defaults=_$1.defaults,G$2(k$3.defaults),k$3};k$3.getDefaults=L$1;k$3.defaults=T$1;k$3.use=function(...e){return _$1.use(...e),k$3.defaults=_$1.defaults,G$2(k$3.defaults),k$3};k$3.walkTokens=function(e,t){return _$1.walkTokens(e,t)};k$3.parseInline=_$1.parseInline;k$3.Parser=b$1;k$3.parser=b$1.parse;k$3.Renderer=P$3;k$3.TextRenderer=$$1;k$3.Lexer=x$3;k$3.lexer=x$3.lex;k$3.Tokenizer=y$2;k$3.Hooks=S$1;k$3.parse=k$3;k$3.options;k$3.setOptions;k$3.use;k$3.walkTokens;k$3.parseInline;b$1.parse;x$3.lex;var m$1=(...e)=>twMerge(clsx(e)),P$2=(e,t,Ye)=>{let tt=typeof t=="string"?new Blob([t],{type:Ye}):t,rt=URL.createObjectURL(tt),nt=document.createElement("a");nt.href=rt,nt.download=e,document.body.appendChild(nt),nt.click(),document.body.removeChild(nt),URL.revokeObjectURL(rt)},Ze$1=/<pre(\s|>)/,W$1=reactExports.createContext({code:""}),O$1=class{constructor(){this.lightHighlighter=null,this.darkHighlighter=null,this.lightTheme=null,this.darkTheme=null,this.loadedLanguages=new Set,this.initializationPromise=null}isLanguageSupported(t){return Object.hasOwn(bundledLanguages,t)}getFallbackLanguage(){return"text"}async ensureHighlightersInitialized(t,Ye){var tt,rt;let[nt,at]=t,ot=createJavaScriptRegexEngine({forgiving:!0}),ct=!this.lightHighlighter||this.lightTheme!==nt,Et=!this.darkHighlighter||this.darkTheme!==at;(ct||Et)&&this.loadedLanguages.clear();let At=this.isLanguageSupported(Ye),Rt=!this.loadedLanguages.has(Ye)&&At;if(ct?(this.lightHighlighter=await createHighlighter({themes:[nt],langs:At?[Ye]:[],engine:ot}),this.lightTheme=nt,At&&this.loadedLanguages.add(Ye)):Rt&&await((tt=this.lightHighlighter)==null?void 0:tt.loadLanguage(Ye)),Et){let jt=Rt?[...this.loadedLanguages].concat(At?[Ye]:[]):Array.from(this.loadedLanguages);this.darkHighlighter=await createHighlighter({themes:[at],langs:jt.length>0?jt:At?[Ye]:[],engine:ot}),this.darkTheme=at}else Rt&&await((rt=this.darkHighlighter)==null?void 0:rt.loadLanguage(Ye));Rt&&this.loadedLanguages.add(Ye)}async highlightCode(t,Ye,tt,rt){var nt,at;this.initializationPromise&&await this.initializationPromise,this.initializationPromise=this.ensureHighlightersInitialized(tt,Ye),await this.initializationPromise,this.initializationPromise=null;let[ot,ct]=tt,Et=this.isLanguageSupported(Ye)?Ye:this.getFallbackLanguage(),At=(nt=this.lightHighlighter)==null?void 0:nt.codeToHtml(t,{lang:Et,theme:ot}),Rt=(at=this.darkHighlighter)==null?void 0:at.codeToHtml(t,{lang:Et,theme:ct}),jt=qt=>rt?qt.replace(Ze$1,`<pre class="${rt}"$1`):qt;return[jt(At),jt(Rt)]}},et=new O$1,ee$1=({code:e,language:t,className:Ye,children:tt,preClassName:rt,...nt})=>{let[at,ot]=reactExports.useState(""),[ct,Et]=reactExports.useState(""),At=reactExports.useRef(!1),[Rt,jt]=reactExports.useContext(X$2);return reactExports.useEffect(()=>(At.current=!0,et.highlightCode(e,t,[Rt,jt],rt).then(([qt,Ut])=>{At.current&&(ot(qt),Et(Ut))}),()=>{At.current=!1}),[e,t,Rt,jt,rt]),jsxRuntimeExports.jsx(W$1.Provider,{value:{code:e},children:jsxRuntimeExports.jsxs("div",{className:"my-4 w-full overflow-hidden rounded-xl border","data-code-block-container":!0,"data-language":t,children:[jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-between bg-muted/80 p-3 text-muted-foreground text-xs","data-code-block-header":!0,"data-language":t,children:[jsxRuntimeExports.jsx("span",{className:"ml-1 font-mono lowercase",children:t}),jsxRuntimeExports.jsx("div",{className:"flex items-center gap-2",children:tt})]}),jsxRuntimeExports.jsx("div",{className:"w-full",children:jsxRuntimeExports.jsxs("div",{className:"min-w-full",children:[jsxRuntimeExports.jsx("div",{className:m$1("overflow-x-auto dark:hidden",Ye),dangerouslySetInnerHTML:{__html:at},"data-code-block":!0,"data-language":t,...nt}),jsxRuntimeExports.jsx("div",{className:m$1("hidden overflow-x-auto dark:block",Ye),dangerouslySetInnerHTML:{__html:ct},"data-code-block":!0,"data-language":t,...nt})]})})]})})},Q$1={"1c":"1c","1c-query":"1cq",abap:"abap","actionscript-3":"as",ada:"ada",adoc:"adoc","angular-html":"html","angular-ts":"ts",apache:"conf",apex:"cls",apl:"apl",applescript:"applescript",ara:"ara",asciidoc:"adoc",asm:"asm",astro:"astro",awk:"awk",ballerina:"bal",bash:"sh",bat:"bat",batch:"bat",be:"be",beancount:"beancount",berry:"berry",bibtex:"bib",bicep:"bicep",blade:"blade.php",bsl:"bsl",c:"c","c#":"cs","c++":"cpp",cadence:"cdc",cairo:"cairo",cdc:"cdc",clarity:"clar",clj:"clj",clojure:"clj","closure-templates":"soy",cmake:"cmake",cmd:"cmd",cobol:"cob",codeowners:"CODEOWNERS",codeql:"ql",coffee:"coffee",coffeescript:"coffee","common-lisp":"lisp",console:"sh",coq:"v",cpp:"cpp",cql:"cql",crystal:"cr",cs:"cs",csharp:"cs",css:"css",csv:"csv",cue:"cue",cypher:"cql",d:"d",dart:"dart",dax:"dax",desktop:"desktop",diff:"diff",docker:"dockerfile",dockerfile:"dockerfile",dotenv:"env","dream-maker":"dm",edge:"edge",elisp:"el",elixir:"ex",elm:"elm","emacs-lisp":"el",erb:"erb",erl:"erl",erlang:"erl",f:"f","f#":"fs",f03:"f03",f08:"f08",f18:"f18",f77:"f77",f90:"f90",f95:"f95",fennel:"fnl",fish:"fish",fluent:"ftl",for:"for","fortran-fixed-form":"f","fortran-free-form":"f90",fs:"fs",fsharp:"fs",fsl:"fsl",ftl:"ftl",gdresource:"tres",gdscript:"gd",gdshader:"gdshader",genie:"gs",gherkin:"feature","git-commit":"gitcommit","git-rebase":"gitrebase",gjs:"js",gleam:"gleam","glimmer-js":"js","glimmer-ts":"ts",glsl:"glsl",gnuplot:"plt",go:"go",gql:"gql",graphql:"graphql",groovy:"groovy",gts:"gts",hack:"hack",haml:"haml",handlebars:"hbs",haskell:"hs",haxe:"hx",hbs:"hbs",hcl:"hcl",hjson:"hjson",hlsl:"hlsl",hs:"hs",html:"html","html-derivative":"html",http:"http",hxml:"hxml",hy:"hy",imba:"imba",ini:"ini",jade:"jade",java:"java",javascript:"js",jinja:"jinja",jison:"jison",jl:"jl",js:"js",json:"json",json5:"json5",jsonc:"jsonc",jsonl:"jsonl",jsonnet:"jsonnet",jssm:"jssm",jsx:"jsx",julia:"jl",kotlin:"kt",kql:"kql",kt:"kt",kts:"kts",kusto:"kql",latex:"tex",lean:"lean",lean4:"lean",less:"less",liquid:"liquid",lisp:"lisp",lit:"lit",llvm:"ll",log:"log",logo:"logo",lua:"lua",luau:"luau",make:"mak",makefile:"mak",markdown:"md",marko:"marko",matlab:"m",md:"md",mdc:"mdc",mdx:"mdx",mediawiki:"wiki",mermaid:"mmd",mips:"s",mipsasm:"s",mmd:"mmd",mojo:"mojo",move:"move",nar:"nar",narrat:"narrat",nextflow:"nf",nf:"nf",nginx:"conf",nim:"nim",nix:"nix",nu:"nu",nushell:"nu",objc:"m","objective-c":"m","objective-cpp":"mm",ocaml:"ml",pascal:"pas",perl:"pl",perl6:"p6",php:"php",plsql:"pls",po:"po",polar:"polar",postcss:"pcss",pot:"pot",potx:"potx",powerquery:"pq",powershell:"ps1",prisma:"prisma",prolog:"pl",properties:"properties",proto:"proto",protobuf:"proto",ps:"ps",ps1:"ps1",pug:"pug",puppet:"pp",purescript:"purs",py:"py",python:"py",ql:"ql",qml:"qml",qmldir:"qmldir",qss:"qss",r:"r",racket:"rkt",raku:"raku",razor:"cshtml",rb:"rb",reg:"reg",regex:"regex",regexp:"regexp",rel:"rel",riscv:"s",rs:"rs",rst:"rst",ruby:"rb",rust:"rs",sas:"sas",sass:"sass",scala:"scala",scheme:"scm",scss:"scss",sdbl:"sdbl",sh:"sh",shader:"shader",shaderlab:"shader",shell:"sh",shellscript:"sh",shellsession:"sh",smalltalk:"st",solidity:"sol",soy:"soy",sparql:"rq",spl:"spl",splunk:"spl",sql:"sql","ssh-config":"config",stata:"do",styl:"styl",stylus:"styl",svelte:"svelte",swift:"swift","system-verilog":"sv",systemd:"service",talon:"talon",talonscript:"talon",tasl:"tasl",tcl:"tcl",templ:"templ",terraform:"tf",tex:"tex",tf:"tf",tfvars:"tfvars",toml:"toml",ts:"ts","ts-tags":"ts",tsp:"tsp",tsv:"tsv",tsx:"tsx",turtle:"ttl",twig:"twig",typ:"typ",typescript:"ts",typespec:"tsp",typst:"typ",v:"v",vala:"vala",vb:"vb",verilog:"v",vhdl:"vhdl",vim:"vim",viml:"vim",vimscript:"vim",vue:"vue","vue-html":"html","vue-vine":"vine",vy:"vy",vyper:"vy",wasm:"wasm",wenyan:"wy",wgsl:"wgsl",wiki:"wiki",wikitext:"wiki",wit:"wit",wl:"wl",wolfram:"wl",xml:"xml",xsl:"xsl",yaml:"yaml",yml:"yml",zenscript:"zs",zig:"zig",zsh:"zsh",文言:"wy"},U$2=({onDownload:e,onError:t,language:Ye,children:tt,className:rt,code:nt,...at})=>{let{code:ot}=reactExports.useContext(W$1),{isAnimating:ct}=reactExports.useContext(M$2),Et=nt??ot,At=`file.${Ye&&Ye in Q$1?Q$1[Ye]:"txt"}`,Rt="text/plain",jt=()=>{try{P$2(At,Et,Rt),e==null||e()}catch(qt){t==null||t(qt)}};return jsxRuntimeExports.jsx("button",{className:m$1("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",rt),disabled:ct,onClick:jt,title:"Download file",type:"button",...at,children:tt??jsxRuntimeExports.jsx(Download$1,{size:14})})},z$2=({onCopy:e,onError:t,timeout:Ye=2e3,children:tt,className:rt,code:nt,...at})=>{let[ot,ct]=reactExports.useState(!1),Et=reactExports.useRef(0),{code:At}=reactExports.useContext(W$1),{isAnimating:Rt}=reactExports.useContext(M$2),jt=nt??At,qt=async()=>{var Vt;if(typeof window>"u"||!((Vt=navigator==null?void 0:navigator.clipboard)!=null&&Vt.writeText)){t==null||t(new Error("Clipboard API not available"));return}try{ot||(await navigator.clipboard.writeText(jt),ct(!0),e==null||e(),Et.current=window.setTimeout(()=>ct(!1),Ye))}catch(zt){t==null||t(zt)}};reactExports.useEffect(()=>()=>{window.clearTimeout(Et.current)},[]);let Ut=ot?Check$1:Copy$1;return jsxRuntimeExports.jsx("button",{className:m$1("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",rt),disabled:Rt,onClick:qt,type:"button",...at,children:tt??jsxRuntimeExports.jsx(Ut,{size:14})})},te$1=({node:e,className:t,src:Ye,alt:tt,...rt})=>{let nt=async()=>{var at;if(Ye)try{let ot=await(await fetch(Ye)).blob(),ct=new URL(Ye,window.location.origin).pathname.split("/").pop()||"",Et=ct.includes(".")&&((at=ct.split(".").pop())==null?void 0:at.length)<=4,At="";if(Et)At=ct;else{let Rt=ot.type,jt="png";Rt.includes("jpeg")||Rt.includes("jpg")?jt="jpg":Rt.includes("png")?jt="png":Rt.includes("svg")?jt="svg":Rt.includes("gif")?jt="gif":Rt.includes("webp")&&(jt="webp"),At=`${(tt||ct||"image").replace(/\.[^/.]+$/,"")}.${jt}`}P$2(At,ot,ot.type)}catch(ot){console.error("Failed to download image:",ot)}};return Ye?jsxRuntimeExports.jsxs("div",{className:"group relative my-4 inline-block","data-streamdown":"image-wrapper",children:[jsxRuntimeExports.jsx("img",{alt:tt,className:m$1("max-w-full rounded-lg",t),"data-streamdown":"image",src:Ye,...rt}),jsxRuntimeExports.jsx("div",{className:"pointer-events-none absolute inset-0 hidden rounded-lg bg-black/10 group-hover:block"}),jsxRuntimeExports.jsx("button",{className:m$1("absolute right-2 bottom-2 flex h-8 w-8 cursor-pointer items-center justify-center rounded-md border border-border bg-background/90 shadow-sm backdrop-blur-sm transition-all duration-200 hover:bg-background","opacity-0 group-hover:opacity-100"),onClick:nt,title:"Download image",type:"button",children:jsxRuntimeExports.jsx(Download$1,{size:14})})]}):null},st=async e=>{let t={startOnLoad:!1,theme:"default",securityLevel:"strict",fontFamily:"monospace",suppressErrorRendering:!0,...e},Ye=(await __vitePreload(async()=>{const{default:tt}=await import("./mermaid.core-BpzyNF0N.js").then(rt=>rt.aq);return{default:tt}},[])).default;return Ye.initialize(t),Ye},oe$1=({chart:e,className:t,config:Ye})=>{let[tt,rt]=reactExports.useState(null),[nt,at]=reactExports.useState(!0),[ot,ct]=reactExports.useState(""),[Et,At]=reactExports.useState("");if(reactExports.useEffect(()=>{(async()=>{try{rt(null),at(!0);let jt=await st(Ye),qt=e.split("").reduce((zt,Gt)=>(zt<<5)-zt+Gt.charCodeAt(0)|0,0),Ut=`mermaid-${Math.abs(qt)}-${Date.now()}-${Math.random().toString(36).substring(2,9)}`,{svg:Vt}=await jt.render(Ut,e);ct(Vt),At(Vt)}catch(jt){if(!(Et||ot)){let qt=jt instanceof Error?jt.message:"Failed to render Mermaid chart";rt(qt)}}finally{at(!1)}})()},[e,Ye]),nt&&!ot&&!Et)return jsxRuntimeExports.jsx("div",{className:m$1("my-4 flex justify-center p-4",t),children:jsxRuntimeExports.jsxs("div",{className:"flex items-center space-x-2 text-muted-foreground",children:[jsxRuntimeExports.jsx("div",{className:"h-4 w-4 animate-spin rounded-full border-current border-b-2"}),jsxRuntimeExports.jsx("span",{className:"text-sm",children:"Loading diagram..."})]})});if(tt&&!ot&&!Et)return jsxRuntimeExports.jsxs("div",{className:m$1("rounded-lg border border-red-200 bg-red-50 p-4",t),children:[jsxRuntimeExports.jsxs("p",{className:"font-mono text-red-700 text-sm",children:["Mermaid Error: ",tt]}),jsxRuntimeExports.jsxs("details",{className:"mt-2",children:[jsxRuntimeExports.jsx("summary",{className:"cursor-pointer text-red-600 text-xs",children:"Show Code"}),jsxRuntimeExports.jsx("pre",{className:"mt-2 overflow-x-auto rounded bg-red-100 p-2 text-red-800 text-xs",children:e})]})]});let Rt=ot||Et;return jsxRuntimeExports.jsx("div",{"aria-label":"Mermaid chart",className:m$1("my-4 flex justify-center",t),dangerouslySetInnerHTML:{__html:Rt},role:"img"})};function le$1(e){var t,Ye;let tt=[],rt=[],nt=e.querySelectorAll("thead th");for(let ot of nt)tt.push(((t=ot.textContent)==null?void 0:t.trim())||"");let at=e.querySelectorAll("tbody tr");for(let ot of at){let ct=[],Et=ot.querySelectorAll("td");for(let At of Et)ct.push(((Ye=At.textContent)==null?void 0:Ye.trim())||"");rt.push(ct)}return{headers:tt,rows:rt}}function de$1(e){let{headers:t,rows:Ye}=e,tt=nt=>nt.includes(",")||nt.includes('"')||nt.includes(`
893
+ Please report this to https://github.com/markedjs/marked.`,t){let rt="<p>An error occurred:</p><pre>"+w$1(tt.message+"",!0)+"</pre>";return Ye?Promise.resolve(rt):rt}if(Ye)return Promise.reject(tt);throw tt}}},_$1=new B$1;function k$3(e,t){return _$1.parse(e,t)}k$3.options=k$3.setOptions=function(e){return _$1.setOptions(e),k$3.defaults=_$1.defaults,G$2(k$3.defaults),k$3};k$3.getDefaults=L$1;k$3.defaults=T$1;k$3.use=function(...e){return _$1.use(...e),k$3.defaults=_$1.defaults,G$2(k$3.defaults),k$3};k$3.walkTokens=function(e,t){return _$1.walkTokens(e,t)};k$3.parseInline=_$1.parseInline;k$3.Parser=b$1;k$3.parser=b$1.parse;k$3.Renderer=P$3;k$3.TextRenderer=$$1;k$3.Lexer=x$3;k$3.lexer=x$3.lex;k$3.Tokenizer=y$2;k$3.Hooks=S$1;k$3.parse=k$3;k$3.options;k$3.setOptions;k$3.use;k$3.walkTokens;k$3.parseInline;b$1.parse;x$3.lex;var m$1=(...e)=>twMerge(clsx(e)),P$2=(e,t,Ye)=>{let tt=typeof t=="string"?new Blob([t],{type:Ye}):t,rt=URL.createObjectURL(tt),nt=document.createElement("a");nt.href=rt,nt.download=e,document.body.appendChild(nt),nt.click(),document.body.removeChild(nt),URL.revokeObjectURL(rt)},Ze$1=/<pre(\s|>)/,W$1=reactExports.createContext({code:""}),O$1=class{constructor(){this.lightHighlighter=null,this.darkHighlighter=null,this.lightTheme=null,this.darkTheme=null,this.loadedLanguages=new Set,this.initializationPromise=null}isLanguageSupported(t){return Object.hasOwn(bundledLanguages,t)}getFallbackLanguage(){return"text"}async ensureHighlightersInitialized(t,Ye){var tt,rt;let[nt,at]=t,ot=createJavaScriptRegexEngine({forgiving:!0}),ct=!this.lightHighlighter||this.lightTheme!==nt,Et=!this.darkHighlighter||this.darkTheme!==at;(ct||Et)&&this.loadedLanguages.clear();let At=this.isLanguageSupported(Ye),Rt=!this.loadedLanguages.has(Ye)&&At;if(ct?(this.lightHighlighter=await createHighlighter({themes:[nt],langs:At?[Ye]:[],engine:ot}),this.lightTheme=nt,At&&this.loadedLanguages.add(Ye)):Rt&&await((tt=this.lightHighlighter)==null?void 0:tt.loadLanguage(Ye)),Et){let jt=Rt?[...this.loadedLanguages].concat(At?[Ye]:[]):Array.from(this.loadedLanguages);this.darkHighlighter=await createHighlighter({themes:[at],langs:jt.length>0?jt:At?[Ye]:[],engine:ot}),this.darkTheme=at}else Rt&&await((rt=this.darkHighlighter)==null?void 0:rt.loadLanguage(Ye));Rt&&this.loadedLanguages.add(Ye)}async highlightCode(t,Ye,tt,rt){var nt,at;this.initializationPromise&&await this.initializationPromise,this.initializationPromise=this.ensureHighlightersInitialized(tt,Ye),await this.initializationPromise,this.initializationPromise=null;let[ot,ct]=tt,Et=this.isLanguageSupported(Ye)?Ye:this.getFallbackLanguage(),At=(nt=this.lightHighlighter)==null?void 0:nt.codeToHtml(t,{lang:Et,theme:ot}),Rt=(at=this.darkHighlighter)==null?void 0:at.codeToHtml(t,{lang:Et,theme:ct}),jt=qt=>rt?qt.replace(Ze$1,`<pre class="${rt}"$1`):qt;return[jt(At),jt(Rt)]}},et=new O$1,ee$1=({code:e,language:t,className:Ye,children:tt,preClassName:rt,...nt})=>{let[at,ot]=reactExports.useState(""),[ct,Et]=reactExports.useState(""),At=reactExports.useRef(!1),[Rt,jt]=reactExports.useContext(X$2);return reactExports.useEffect(()=>(At.current=!0,et.highlightCode(e,t,[Rt,jt],rt).then(([qt,Ut])=>{At.current&&(ot(qt),Et(Ut))}),()=>{At.current=!1}),[e,t,Rt,jt,rt]),jsxRuntimeExports.jsx(W$1.Provider,{value:{code:e},children:jsxRuntimeExports.jsxs("div",{className:"my-4 w-full overflow-hidden rounded-xl border","data-code-block-container":!0,"data-language":t,children:[jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-between bg-muted/80 p-3 text-muted-foreground text-xs","data-code-block-header":!0,"data-language":t,children:[jsxRuntimeExports.jsx("span",{className:"ml-1 font-mono lowercase",children:t}),jsxRuntimeExports.jsx("div",{className:"flex items-center gap-2",children:tt})]}),jsxRuntimeExports.jsx("div",{className:"w-full",children:jsxRuntimeExports.jsxs("div",{className:"min-w-full",children:[jsxRuntimeExports.jsx("div",{className:m$1("overflow-x-auto dark:hidden",Ye),dangerouslySetInnerHTML:{__html:at},"data-code-block":!0,"data-language":t,...nt}),jsxRuntimeExports.jsx("div",{className:m$1("hidden overflow-x-auto dark:block",Ye),dangerouslySetInnerHTML:{__html:ct},"data-code-block":!0,"data-language":t,...nt})]})})]})})},Q$1={"1c":"1c","1c-query":"1cq",abap:"abap","actionscript-3":"as",ada:"ada",adoc:"adoc","angular-html":"html","angular-ts":"ts",apache:"conf",apex:"cls",apl:"apl",applescript:"applescript",ara:"ara",asciidoc:"adoc",asm:"asm",astro:"astro",awk:"awk",ballerina:"bal",bash:"sh",bat:"bat",batch:"bat",be:"be",beancount:"beancount",berry:"berry",bibtex:"bib",bicep:"bicep",blade:"blade.php",bsl:"bsl",c:"c","c#":"cs","c++":"cpp",cadence:"cdc",cairo:"cairo",cdc:"cdc",clarity:"clar",clj:"clj",clojure:"clj","closure-templates":"soy",cmake:"cmake",cmd:"cmd",cobol:"cob",codeowners:"CODEOWNERS",codeql:"ql",coffee:"coffee",coffeescript:"coffee","common-lisp":"lisp",console:"sh",coq:"v",cpp:"cpp",cql:"cql",crystal:"cr",cs:"cs",csharp:"cs",css:"css",csv:"csv",cue:"cue",cypher:"cql",d:"d",dart:"dart",dax:"dax",desktop:"desktop",diff:"diff",docker:"dockerfile",dockerfile:"dockerfile",dotenv:"env","dream-maker":"dm",edge:"edge",elisp:"el",elixir:"ex",elm:"elm","emacs-lisp":"el",erb:"erb",erl:"erl",erlang:"erl",f:"f","f#":"fs",f03:"f03",f08:"f08",f18:"f18",f77:"f77",f90:"f90",f95:"f95",fennel:"fnl",fish:"fish",fluent:"ftl",for:"for","fortran-fixed-form":"f","fortran-free-form":"f90",fs:"fs",fsharp:"fs",fsl:"fsl",ftl:"ftl",gdresource:"tres",gdscript:"gd",gdshader:"gdshader",genie:"gs",gherkin:"feature","git-commit":"gitcommit","git-rebase":"gitrebase",gjs:"js",gleam:"gleam","glimmer-js":"js","glimmer-ts":"ts",glsl:"glsl",gnuplot:"plt",go:"go",gql:"gql",graphql:"graphql",groovy:"groovy",gts:"gts",hack:"hack",haml:"haml",handlebars:"hbs",haskell:"hs",haxe:"hx",hbs:"hbs",hcl:"hcl",hjson:"hjson",hlsl:"hlsl",hs:"hs",html:"html","html-derivative":"html",http:"http",hxml:"hxml",hy:"hy",imba:"imba",ini:"ini",jade:"jade",java:"java",javascript:"js",jinja:"jinja",jison:"jison",jl:"jl",js:"js",json:"json",json5:"json5",jsonc:"jsonc",jsonl:"jsonl",jsonnet:"jsonnet",jssm:"jssm",jsx:"jsx",julia:"jl",kotlin:"kt",kql:"kql",kt:"kt",kts:"kts",kusto:"kql",latex:"tex",lean:"lean",lean4:"lean",less:"less",liquid:"liquid",lisp:"lisp",lit:"lit",llvm:"ll",log:"log",logo:"logo",lua:"lua",luau:"luau",make:"mak",makefile:"mak",markdown:"md",marko:"marko",matlab:"m",md:"md",mdc:"mdc",mdx:"mdx",mediawiki:"wiki",mermaid:"mmd",mips:"s",mipsasm:"s",mmd:"mmd",mojo:"mojo",move:"move",nar:"nar",narrat:"narrat",nextflow:"nf",nf:"nf",nginx:"conf",nim:"nim",nix:"nix",nu:"nu",nushell:"nu",objc:"m","objective-c":"m","objective-cpp":"mm",ocaml:"ml",pascal:"pas",perl:"pl",perl6:"p6",php:"php",plsql:"pls",po:"po",polar:"polar",postcss:"pcss",pot:"pot",potx:"potx",powerquery:"pq",powershell:"ps1",prisma:"prisma",prolog:"pl",properties:"properties",proto:"proto",protobuf:"proto",ps:"ps",ps1:"ps1",pug:"pug",puppet:"pp",purescript:"purs",py:"py",python:"py",ql:"ql",qml:"qml",qmldir:"qmldir",qss:"qss",r:"r",racket:"rkt",raku:"raku",razor:"cshtml",rb:"rb",reg:"reg",regex:"regex",regexp:"regexp",rel:"rel",riscv:"s",rs:"rs",rst:"rst",ruby:"rb",rust:"rs",sas:"sas",sass:"sass",scala:"scala",scheme:"scm",scss:"scss",sdbl:"sdbl",sh:"sh",shader:"shader",shaderlab:"shader",shell:"sh",shellscript:"sh",shellsession:"sh",smalltalk:"st",solidity:"sol",soy:"soy",sparql:"rq",spl:"spl",splunk:"spl",sql:"sql","ssh-config":"config",stata:"do",styl:"styl",stylus:"styl",svelte:"svelte",swift:"swift","system-verilog":"sv",systemd:"service",talon:"talon",talonscript:"talon",tasl:"tasl",tcl:"tcl",templ:"templ",terraform:"tf",tex:"tex",tf:"tf",tfvars:"tfvars",toml:"toml",ts:"ts","ts-tags":"ts",tsp:"tsp",tsv:"tsv",tsx:"tsx",turtle:"ttl",twig:"twig",typ:"typ",typescript:"ts",typespec:"tsp",typst:"typ",v:"v",vala:"vala",vb:"vb",verilog:"v",vhdl:"vhdl",vim:"vim",viml:"vim",vimscript:"vim",vue:"vue","vue-html":"html","vue-vine":"vine",vy:"vy",vyper:"vy",wasm:"wasm",wenyan:"wy",wgsl:"wgsl",wiki:"wiki",wikitext:"wiki",wit:"wit",wl:"wl",wolfram:"wl",xml:"xml",xsl:"xsl",yaml:"yaml",yml:"yml",zenscript:"zs",zig:"zig",zsh:"zsh",文言:"wy"},U$2=({onDownload:e,onError:t,language:Ye,children:tt,className:rt,code:nt,...at})=>{let{code:ot}=reactExports.useContext(W$1),{isAnimating:ct}=reactExports.useContext(M$2),Et=nt??ot,At=`file.${Ye&&Ye in Q$1?Q$1[Ye]:"txt"}`,Rt="text/plain",jt=()=>{try{P$2(At,Et,Rt),e==null||e()}catch(qt){t==null||t(qt)}};return jsxRuntimeExports.jsx("button",{className:m$1("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",rt),disabled:ct,onClick:jt,title:"Download file",type:"button",...at,children:tt??jsxRuntimeExports.jsx(Download$1,{size:14})})},z$2=({onCopy:e,onError:t,timeout:Ye=2e3,children:tt,className:rt,code:nt,...at})=>{let[ot,ct]=reactExports.useState(!1),Et=reactExports.useRef(0),{code:At}=reactExports.useContext(W$1),{isAnimating:Rt}=reactExports.useContext(M$2),jt=nt??At,qt=async()=>{var Vt;if(typeof window>"u"||!((Vt=navigator==null?void 0:navigator.clipboard)!=null&&Vt.writeText)){t==null||t(new Error("Clipboard API not available"));return}try{ot||(await navigator.clipboard.writeText(jt),ct(!0),e==null||e(),Et.current=window.setTimeout(()=>ct(!1),Ye))}catch(zt){t==null||t(zt)}};reactExports.useEffect(()=>()=>{window.clearTimeout(Et.current)},[]);let Ut=ot?Check$1:Copy$1;return jsxRuntimeExports.jsx("button",{className:m$1("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",rt),disabled:Rt,onClick:qt,type:"button",...at,children:tt??jsxRuntimeExports.jsx(Ut,{size:14})})},te$1=({node:e,className:t,src:Ye,alt:tt,...rt})=>{let nt=async()=>{var at;if(Ye)try{let ot=await(await fetch(Ye)).blob(),ct=new URL(Ye,window.location.origin).pathname.split("/").pop()||"",Et=ct.includes(".")&&((at=ct.split(".").pop())==null?void 0:at.length)<=4,At="";if(Et)At=ct;else{let Rt=ot.type,jt="png";Rt.includes("jpeg")||Rt.includes("jpg")?jt="jpg":Rt.includes("png")?jt="png":Rt.includes("svg")?jt="svg":Rt.includes("gif")?jt="gif":Rt.includes("webp")&&(jt="webp"),At=`${(tt||ct||"image").replace(/\.[^/.]+$/,"")}.${jt}`}P$2(At,ot,ot.type)}catch(ot){console.error("Failed to download image:",ot)}};return Ye?jsxRuntimeExports.jsxs("div",{className:"group relative my-4 inline-block","data-streamdown":"image-wrapper",children:[jsxRuntimeExports.jsx("img",{alt:tt,className:m$1("max-w-full rounded-lg",t),"data-streamdown":"image",src:Ye,...rt}),jsxRuntimeExports.jsx("div",{className:"pointer-events-none absolute inset-0 hidden rounded-lg bg-black/10 group-hover:block"}),jsxRuntimeExports.jsx("button",{className:m$1("absolute right-2 bottom-2 flex h-8 w-8 cursor-pointer items-center justify-center rounded-md border border-border bg-background/90 shadow-sm backdrop-blur-sm transition-all duration-200 hover:bg-background","opacity-0 group-hover:opacity-100"),onClick:nt,title:"Download image",type:"button",children:jsxRuntimeExports.jsx(Download$1,{size:14})})]}):null},st=async e=>{let t={startOnLoad:!1,theme:"default",securityLevel:"strict",fontFamily:"monospace",suppressErrorRendering:!0,...e},Ye=(await __vitePreload(async()=>{const{default:tt}=await import("./mermaid.core-B3hGqMVI.js").then(rt=>rt.aq);return{default:tt}},[])).default;return Ye.initialize(t),Ye},oe$1=({chart:e,className:t,config:Ye})=>{let[tt,rt]=reactExports.useState(null),[nt,at]=reactExports.useState(!0),[ot,ct]=reactExports.useState(""),[Et,At]=reactExports.useState("");if(reactExports.useEffect(()=>{(async()=>{try{rt(null),at(!0);let jt=await st(Ye),qt=e.split("").reduce((zt,Gt)=>(zt<<5)-zt+Gt.charCodeAt(0)|0,0),Ut=`mermaid-${Math.abs(qt)}-${Date.now()}-${Math.random().toString(36).substring(2,9)}`,{svg:Vt}=await jt.render(Ut,e);ct(Vt),At(Vt)}catch(jt){if(!(Et||ot)){let qt=jt instanceof Error?jt.message:"Failed to render Mermaid chart";rt(qt)}}finally{at(!1)}})()},[e,Ye]),nt&&!ot&&!Et)return jsxRuntimeExports.jsx("div",{className:m$1("my-4 flex justify-center p-4",t),children:jsxRuntimeExports.jsxs("div",{className:"flex items-center space-x-2 text-muted-foreground",children:[jsxRuntimeExports.jsx("div",{className:"h-4 w-4 animate-spin rounded-full border-current border-b-2"}),jsxRuntimeExports.jsx("span",{className:"text-sm",children:"Loading diagram..."})]})});if(tt&&!ot&&!Et)return jsxRuntimeExports.jsxs("div",{className:m$1("rounded-lg border border-red-200 bg-red-50 p-4",t),children:[jsxRuntimeExports.jsxs("p",{className:"font-mono text-red-700 text-sm",children:["Mermaid Error: ",tt]}),jsxRuntimeExports.jsxs("details",{className:"mt-2",children:[jsxRuntimeExports.jsx("summary",{className:"cursor-pointer text-red-600 text-xs",children:"Show Code"}),jsxRuntimeExports.jsx("pre",{className:"mt-2 overflow-x-auto rounded bg-red-100 p-2 text-red-800 text-xs",children:e})]})]});let Rt=ot||Et;return jsxRuntimeExports.jsx("div",{"aria-label":"Mermaid chart",className:m$1("my-4 flex justify-center",t),dangerouslySetInnerHTML:{__html:Rt},role:"img"})};function le$1(e){var t,Ye;let tt=[],rt=[],nt=e.querySelectorAll("thead th");for(let ot of nt)tt.push(((t=ot.textContent)==null?void 0:t.trim())||"");let at=e.querySelectorAll("tbody tr");for(let ot of at){let ct=[],Et=ot.querySelectorAll("td");for(let At of Et)ct.push(((Ye=At.textContent)==null?void 0:Ye.trim())||"");rt.push(ct)}return{headers:tt,rows:rt}}function de$1(e){let{headers:t,rows:Ye}=e,tt=nt=>nt.includes(",")||nt.includes('"')||nt.includes(`
894
894
  `)?`"${nt.replace(/"/g,'""')}"`:nt,rt=[];t.length>0&&rt.push(t.map(tt).join(","));for(let nt of Ye)rt.push(nt.map(tt).join(","));return rt.join(`
895
895
  `)}function ce$1(e){let{headers:t,rows:Ye}=e;if(t.length===0)return"";let tt=[],rt=t.map(nt=>nt.replace(/\|/g,"\\|"));tt.push(`| ${rt.join(" | ")} |`),tt.push(`| ${t.map(()=>"---").join(" | ")} |`);for(let nt of Ye){let at=[...nt];for(;at.length<t.length;)at.push("");let ot=at.map(ct=>ct.replace(/\|/g,"\\|"));tt.push(`| ${ot.join(" | ")} |`)}return tt.join(`
896
896
  `)}var me$1=({children:e,className:t,onCopy:Ye,onError:tt,timeout:rt=2e3,format:nt="markdown"})=>{let[at,ot]=reactExports.useState(!1),ct=reactExports.useRef(0),{isAnimating:Et}=reactExports.useContext(M$2),At=async jt=>{var qt;if(typeof window>"u"||!((qt=navigator==null?void 0:navigator.clipboard)!=null&&qt.write)){tt==null||tt(new Error("Clipboard API not available"));return}try{if(!at){let Ut=jt.currentTarget.closest('[data-streamdown="table-wrapper"]'),Vt=Ut==null?void 0:Ut.querySelector("table");if(!Vt){tt==null||tt(new Error("Table not found"));return}let zt=le$1(Vt),Gt=new ClipboardItem({"text/plain":nt==="markdown"?ce$1(zt):de$1(zt),"text/html":new Blob([Vt.outerHTML],{type:"text/html"})});await navigator.clipboard.write([Gt]),ot(!0),Ye==null||Ye(),ct.current=window.setTimeout(()=>ot(!1),rt)}}catch(Ut){tt==null||tt(Ut)}};reactExports.useEffect(()=>()=>{window.clearTimeout(ct.current)},[]);let Rt=at?Check$1:Copy$1;return jsxRuntimeExports.jsx("button",{className:m$1("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",t),disabled:Et,onClick:At,title:`Copy table as ${nt}`,type:"button",children:e??jsxRuntimeExports.jsx(Rt,{size:14})})},pe$1=({children:e,className:t,onDownload:Ye,onError:tt})=>{let[rt,nt]=reactExports.useState(!1),at=reactExports.useRef(null),{isAnimating:ot}=reactExports.useContext(M$2),ct=Et=>{var At;try{let Rt=(At=at.current)==null?void 0:At.closest('[data-streamdown="table-wrapper"]'),jt=Rt==null?void 0:Rt.querySelector("table");if(!jt){tt==null||tt(new Error("Table not found"));return}let qt=le$1(jt),Ut=Et==="csv"?de$1(qt):ce$1(qt);P$2(`table.${Et==="csv"?"csv":"md"}`,Ut,Et==="csv"?"text/csv":"text/markdown"),nt(!1),Ye==null||Ye(Et)}catch(Rt){tt==null||tt(Rt)}};return reactExports.useEffect(()=>{let Et=At=>{at.current&&!at.current.contains(At.target)&&nt(!1)};return document.addEventListener("mousedown",Et),()=>{document.removeEventListener("mousedown",Et)}},[]),jsxRuntimeExports.jsxs("div",{className:"relative",ref:at,children:[jsxRuntimeExports.jsx("button",{className:m$1("cursor-pointer p-1 text-muted-foreground transition-all hover:text-foreground disabled:cursor-not-allowed disabled:opacity-50",t),disabled:ot,onClick:()=>nt(!rt),title:"Download table",type:"button",children:e??jsxRuntimeExports.jsx(Download$1,{size:14})}),rt&&jsxRuntimeExports.jsxs("div",{className:"absolute top-full right-0 z-10 mt-1 min-w-[120px] rounded-md border border-border bg-background shadow-lg",children:[jsxRuntimeExports.jsx("button",{className:"w-full px-3 py-2 text-left text-sm transition-colors hover:bg-muted/40",onClick:()=>ct("csv"),type:"button",children:"CSV"}),jsxRuntimeExports.jsx("button",{className:"w-full px-3 py-2 text-left text-sm transition-colors hover:bg-muted/40",onClick:()=>ct("markdown"),type:"button",children:"Markdown"})]})]})},lt$1=/language-([^\s]+)/;function A$1(e,t){if(!(e!=null&&e.position||t!=null&&t.position))return!0;if(!(e!=null&&e.position&&t!=null&&t.position))return!1;let Ye=e.position.start,tt=t.position.start,rt=e.position.end,nt=t.position.end;return(Ye==null?void 0:Ye.line)===(tt==null?void 0:tt.line)&&(Ye==null?void 0:Ye.column)===(tt==null?void 0:tt.column)&&(rt==null?void 0:rt.line)===(nt==null?void 0:nt.line)&&(rt==null?void 0:rt.column)===(nt==null?void 0:nt.column)}function k$2(e,t){return e.className===t.className&&A$1(e.node,t.node)}var F$1=(e,t)=>typeof e=="boolean"?e:e[t]!==!1,V$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("ol",{className:m$1("ml-4 list-outside list-decimal whitespace-normal",t),"data-streamdown":"ordered-list",...tt,children:e}),(e,t)=>k$2(e,t));V$1.displayName="MarkdownOl";var ue$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("li",{className:m$1("py-1",t),"data-streamdown":"list-item",...tt,children:e}),(e,t)=>e.className===t.className&&A$1(e.node,t.node));ue$1.displayName="MarkdownLi";var ge$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("ul",{className:m$1("ml-4 list-outside list-disc whitespace-normal",t),"data-streamdown":"unordered-list",...tt,children:e}),(e,t)=>k$2(e,t));ge$1.displayName="MarkdownUl";var fe$1=reactExports.memo(({className:e,node:t,...Ye})=>jsxRuntimeExports.jsx("hr",{className:m$1("my-6 border-border",e),"data-streamdown":"horizontal-rule",...Ye}),(e,t)=>k$2(e,t));fe$1.displayName="MarkdownHr";var he$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("span",{className:m$1("font-semibold",t),"data-streamdown":"strong",...tt,children:e}),(e,t)=>k$2(e,t));he$1.displayName="MarkdownStrong";var be$1=reactExports.memo(({children:e,className:t,href:Ye,node:tt,...rt})=>{let nt=Ye==="streamdown:incomplete-link";return jsxRuntimeExports.jsx("a",{className:m$1("wrap-anywhere font-medium text-primary underline",t),"data-incomplete":nt,"data-streamdown":"link",href:Ye,rel:"noreferrer",target:"_blank",...rt,children:e})},(e,t)=>k$2(e,t)&&e.href===t.href);be$1.displayName="MarkdownA";var ke$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("h1",{className:m$1("mt-6 mb-2 font-semibold text-3xl",t),"data-streamdown":"heading-1",...tt,children:e}),(e,t)=>k$2(e,t));ke$1.displayName="MarkdownH1";var ye$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("h2",{className:m$1("mt-6 mb-2 font-semibold text-2xl",t),"data-streamdown":"heading-2",...tt,children:e}),(e,t)=>k$2(e,t));ye$1.displayName="MarkdownH2";var we$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("h3",{className:m$1("mt-6 mb-2 font-semibold text-xl",t),"data-streamdown":"heading-3",...tt,children:e}),(e,t)=>k$2(e,t));we$1.displayName="MarkdownH3";var ve$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("h4",{className:m$1("mt-6 mb-2 font-semibold text-lg",t),"data-streamdown":"heading-4",...tt,children:e}),(e,t)=>k$2(e,t));ve$1.displayName="MarkdownH4";var Me$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("h5",{className:m$1("mt-6 mb-2 font-semibold text-base",t),"data-streamdown":"heading-5",...tt,children:e}),(e,t)=>k$2(e,t));Me$1.displayName="MarkdownH5";var Te$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("h6",{className:m$1("mt-6 mb-2 font-semibold text-sm",t),"data-streamdown":"heading-6",...tt,children:e}),(e,t)=>k$2(e,t));Te$1.displayName="MarkdownH6";var Ce$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>{let rt=reactExports.useContext(j$1),nt=F$1(rt,"table");return jsxRuntimeExports.jsxs("div",{className:"my-4 flex flex-col space-y-2","data-streamdown":"table-wrapper",children:[nt&&jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-end gap-1",children:[jsxRuntimeExports.jsx(me$1,{}),jsxRuntimeExports.jsx(pe$1,{})]}),jsxRuntimeExports.jsx("div",{className:"overflow-x-auto",children:jsxRuntimeExports.jsx("table",{className:m$1("w-full border-collapse border border-border",t),"data-streamdown":"table",...tt,children:e})})]})},(e,t)=>k$2(e,t));Ce$1.displayName="MarkdownTable";var Pe$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("thead",{className:m$1("bg-muted/80",t),"data-streamdown":"table-header",...tt,children:e}),(e,t)=>k$2(e,t));Pe$1.displayName="MarkdownThead";var Ne$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("tbody",{className:m$1("divide-y divide-border bg-muted/40",t),"data-streamdown":"table-body",...tt,children:e}),(e,t)=>k$2(e,t));Ne$1.displayName="MarkdownTbody";var Ie$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("tr",{className:m$1("border-border border-b",t),"data-streamdown":"table-row",...tt,children:e}),(e,t)=>k$2(e,t));Ie$1.displayName="MarkdownTr";var Se$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("th",{className:m$1("whitespace-nowrap px-4 py-2 text-left font-semibold text-sm",t),"data-streamdown":"table-header-cell",...tt,children:e}),(e,t)=>k$2(e,t));Se$1.displayName="MarkdownTh";var Le$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("td",{className:m$1("px-4 py-2 text-sm",t),"data-streamdown":"table-cell",...tt,children:e}),(e,t)=>k$2(e,t));Le$1.displayName="MarkdownTd";var Be$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("blockquote",{className:m$1("my-4 border-muted-foreground/30 border-l-4 pl-4 text-muted-foreground italic",t),"data-streamdown":"blockquote",...tt,children:e}),(e,t)=>k$2(e,t));Be$1.displayName="MarkdownBlockquote";var $e$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("sup",{className:m$1("text-sm",t),"data-streamdown":"superscript",...tt,children:e}),(e,t)=>k$2(e,t));$e$1.displayName="MarkdownSup";var xe$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>jsxRuntimeExports.jsx("sub",{className:m$1("text-sm",t),"data-streamdown":"subscript",...tt,children:e}),(e,t)=>k$2(e,t));xe$1.displayName="MarkdownSub";var He$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>{if("data-footnotes"in tt){let rt=at=>{var ot,ct;if(!reactExports.isValidElement(at))return!1;let Et=Array.isArray(at.props.children)?at.props.children:[at.props.children],At=!1,Rt=!1;for(let jt of Et)if(jt){if(typeof jt=="string")jt.trim()!==""&&(At=!0);else if(reactExports.isValidElement(jt))if(((ot=jt.props)==null?void 0:ot["data-footnote-backref"])!==void 0)Rt=!0;else{let qt=Array.isArray(jt.props.children)?jt.props.children:[jt.props.children];for(let Ut of qt){if(typeof Ut=="string"&&Ut.trim()!==""){At=!0;break}if(reactExports.isValidElement(Ut)&&((ct=Ut.props)==null?void 0:ct["data-footnote-backref"])===void 0){At=!0;break}}}}return Rt&&!At},nt=Array.isArray(e)?e.map(at=>{if(!reactExports.isValidElement(at))return at;if(at.type===V$1){let ot=(Array.isArray(at.props.children)?at.props.children:[at.props.children]).filter(ct=>!rt(ct));return ot.length===0?null:{...at,props:{...at.props,children:ot}}}return at}):e;return(Array.isArray(nt)?nt.some(at=>at!==null):nt!==null)?jsxRuntimeExports.jsx("section",{className:t,...tt,children:nt}):null}return jsxRuntimeExports.jsx("section",{className:t,...tt,children:e})},(e,t)=>k$2(e,t));He$1.displayName="MarkdownSection";var dt=({node:e,className:t,children:Ye,...tt})=>{var rt,nt,at;let ot=((rt=e==null?void 0:e.position)==null?void 0:rt.start.line)===((nt=e==null?void 0:e.position)==null?void 0:nt.end.line),ct=reactExports.useContext(G$1),Et=reactExports.useContext(j$1);if(ot)return jsxRuntimeExports.jsx("code",{className:m$1("rounded bg-muted px-1.5 py-0.5 font-mono text-sm",t),"data-streamdown":"inline-code",...tt,children:Ye});let At=t==null?void 0:t.match(lt$1),Rt=(at=At==null?void 0:At.at(1))!=null?at:"",jt="";if(reactExports.isValidElement(Ye)&&Ye.props&&typeof Ye.props=="object"&&"children"in Ye.props&&typeof Ye.props.children=="string"?jt=Ye.props.children:typeof Ye=="string"&&(jt=Ye),Rt==="mermaid"){let Ut=F$1(Et,"mermaid");return jsxRuntimeExports.jsxs("div",{className:m$1("group relative my-4 h-auto rounded-xl border p-4",t),"data-streamdown":"mermaid-block",children:[Ut&&jsxRuntimeExports.jsxs("div",{className:"flex items-center justify-end gap-2",children:[jsxRuntimeExports.jsx(U$2,{code:jt,language:Rt}),jsxRuntimeExports.jsx(z$2,{code:jt})]}),jsxRuntimeExports.jsx(oe$1,{chart:jt,config:ct})]})}let qt=F$1(Et,"code");return jsxRuntimeExports.jsx(ee$1,{className:m$1("overflow-x-auto border-t",t),code:jt,"data-language":Rt,"data-streamdown":"code-block",language:Rt,preClassName:"overflow-x-auto font-mono text-xs p-4 bg-muted/40",children:qt&&jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(U$2,{code:jt,language:Rt}),jsxRuntimeExports.jsx(z$2,{})]})})},Ae$1=reactExports.memo(dt,(e,t)=>e.className===t.className&&A$1(e.node,t.node));Ae$1.displayName="MarkdownCode";var je$1=reactExports.memo(te$1,(e,t)=>e.className===t.className&&A$1(e.node,t.node));je$1.displayName="MarkdownImg";var Re$1=reactExports.memo(({children:e,className:t,node:Ye,...tt})=>{var rt;let nt=(Array.isArray(e)?e:[e]).filter(at=>at!=null&&at!=="");return nt.length===1&&reactExports.isValidElement(nt[0])&&((rt=nt[0].props.node)==null?void 0:rt.tagName)==="img"?jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:e}):jsxRuntimeExports.jsx("p",{className:t,...tt,children:e})},(e,t)=>k$2(e,t));Re$1.displayName="MarkdownParagraph";var De$1={ol:V$1,li:ue$1,ul:ge$1,hr:fe$1,strong:he$1,a:be$1,h1:ke$1,h2:ye$1,h3:we$1,h4:ve$1,h5:Me$1,h6:Te$1,table:Ce$1,thead:Pe$1,tbody:Ne$1,tr:Ie$1,th:Se$1,td:Le$1,blockquote:Be$1,code:Ae$1,img:je$1,pre:({children:e})=>e,sup:$e$1,sub:xe$1,p:Re$1,section:He$1},Ee$1=e=>{let t=/\[\^[^\]\s]{1,200}\](?!:)/.test(e),Ye=/\[\^[^\]\s]{1,200}\]:/.test(e);if(t||Ye)return[e];let tt=x$3.lex(e,{gfm:!0}),rt=[],nt=[];for(let at=0;at<tt.length;at++){let ot=tt[at],ct=ot.raw;if(nt.length>0){if(rt[rt.length-1]+=ct,ot.type==="html"){let Et=ct.match(/<\/(\w+)>/);if(Et){let At=Et[1];nt[nt.length-1]===At&&nt.pop()}}continue}if(ot.type==="html"&&ot.block){let Et=ct.match(/<(\w+)[\s>]/);if(Et){let At=Et[1];ct.includes(`</${At}>`)||nt.push(At)}}if(ct.trim()==="$$"&&rt.length>0){let Et=rt.at(-1);if(!Et){rt.push(ct);continue}let At=Et.trimStart().startsWith("$$"),Rt=(Et.match(/\$\$/g)||[]).length;if(At&&Rt%2===1){rt[rt.length-1]=Et+ct;continue}}if(rt.length>0&&ct.trimEnd().endsWith("$$")){let Et=rt.at(-1);if(!Et){rt.push(ct);continue}let At=Et.trimStart().startsWith("$$"),Rt=(Et.match(/\$\$/g)||[]).length,jt=(ct.match(/\$\$/g)||[]).length;if(At&&Rt%2===1&&!ct.trimStart().startsWith("$$")&&jt===1){rt[rt.length-1]=Et+ct;continue}}rt.push(ct)}return rt},mt=/(!?\[)([^\]]*?)$/,pt=/(\*\*)([^*]*?)$/,ut=/(__)([^_]*?)$/,gt$1=/(\*\*\*)([^*]*?)$/,ft=/(\*)([^*]*?)$/,ht=/(_)([^_]*?)$/,bt=/(`)([^`]*?)$/,kt=/(~~)([^~]*?)$/,R$1=e=>{let t=(e.match(/```/g)||[]).length;return t>0&&t%2===0&&e.includes(`
@@ -904,7 +904,7 @@ Please report this to https://github.com/markedjs/marked.`,t){let rt="<p>An erro
904
904
  `)||(e.endsWith("```\n")||e.endsWith("```"))&&t%2===0)return e;let tt=e.match(bt);if(tt&&!Ye){let rt=tt[2];if(!rt||/^[\s_~*`]*$/.test(rt))return e;if(It(e)%2===1)return`${e}\``}return e},Lt=e=>{let t=e.match(kt);if(t){let Ye=t[2];if(!Ye||/^[\s_~*`]*$/.test(Ye))return e;if((e.match(/~~/g)||[]).length%2===1)return`${e}~~`}return e},Bt=e=>{if((e.match(/\$\$/g)||[]).length%2===0)return e;let t=e.indexOf("$$");return t!==-1&&e.indexOf(`
905
905
  `,t)!==-1&&!e.endsWith(`
906
906
  `)?`${e}
907
- $$`:`${e}$$`},$t=e=>{let t=0,Ye=e.match(/\*+/g)||[];for(let tt of Ye){let rt=tt.length;rt>=3&&(t+=Math.floor(rt/3))}return t},xt=e=>{if(R$1(e)||/^\*{4,}$/.test(e))return e;let t=e.match(gt$1);if(t){let Ye=t[2];if(!Ye||/^[\s_~*`]*$/.test(Ye))return e;if($t(e)%2===1)return`${e}***`}return e},Oe$1=e=>{if(!e||typeof e!="string")return e;let t=e,Ye=yt(t);return Ye.endsWith("](streamdown:incomplete-link)")?Ye:(t=Ye,t=xt(t),t=wt(t),t=vt(t),t=Tt(t),t=Pt(t),t=St(t),t=Lt(t),t=Bt(t),t)},_t={harden:[harden,{allowedImagePrefixes:["*"],allowedLinkPrefixes:["*"],defaultOrigin:void 0,allowDataImages:!0}],raw:rehypeRaw,katex:[rehypeKatex,{errorColor:"var(--color-muted-foreground)"}]},Ot={gfm:[remarkGfm,{}],math:[remarkMath,{singleDollarTextMath:!1}]},X$2=reactExports.createContext(["github-light","github-dark"]),G$1=reactExports.createContext(void 0),j$1=reactExports.createContext(!0),M$2=reactExports.createContext({isAnimating:!1}),ze$1=reactExports.memo(({content:e,shouldParseIncompleteMarkdown:t,...Ye})=>{let tt=reactExports.useMemo(()=>typeof e=="string"&&t?Oe$1(e.trim()):e,[e,t]);return jsxRuntimeExports.jsx(Markdown$1,{...Ye,children:tt})},(e,t)=>e.content===t.content);ze$1.displayName="Block";var Wt=reactExports.memo(({children:e,parseIncompleteMarkdown:t=!0,components:Ye,rehypePlugins:tt=Object.values(_t),remarkPlugins:rt=Object.values(Ot),className:nt,shikiTheme:at=["github-light","github-dark"],mermaidConfig:ot,controls:ct=!0,isAnimating:Et=!1,...At})=>{let Rt=reactExports.useId(),jt=reactExports.useMemo(()=>Ee$1(typeof e=="string"?e:""),[e]);return jsxRuntimeExports.jsx(X$2.Provider,{value:at,children:jsxRuntimeExports.jsx(G$1.Provider,{value:ot,children:jsxRuntimeExports.jsx(j$1.Provider,{value:ct,children:jsxRuntimeExports.jsx(M$2.Provider,{value:{isAnimating:Et},children:jsxRuntimeExports.jsx("div",{className:m$1("space-y-4",nt),children:jt.map((qt,Ut)=>jsxRuntimeExports.jsx(ze$1,{components:{...De$1,...Ye},content:qt,rehypePlugins:tt,remarkPlugins:rt,shouldParseIncompleteMarkdown:t,...At},`${Rt}-block-${Ut}`))})})})})})},(e,t)=>e.children===t.children&&e.shikiTheme===t.shikiTheme&&e.isAnimating===t.isAnimating);Wt.displayName="Streamdown";const Response$1=reactExports.memo(({className:e,...t})=>jsxRuntimeExports.jsx(Wt,{className:cn$2("size-full [&>*:first-child]:mt-0 [&>*:last-child]:mb-0",e),...t}),(e,t)=>e.children===t.children);Response$1.displayName="Response";var useLayoutEffect2=globalThis!=null&&globalThis.document?reactExports.useLayoutEffect:()=>{},useInsertionEffect=React$1[" useInsertionEffect ".trim().toString()]||useLayoutEffect2;function useControllableState({prop:e,defaultProp:t,onChange:Ye=()=>{},caller:tt}){const[rt,nt,at]=useUncontrolledState({defaultProp:t,onChange:Ye}),ot=e!==void 0,ct=ot?e:rt;{const At=reactExports.useRef(e!==void 0);reactExports.useEffect(()=>{const Rt=At.current;Rt!==ot&&console.warn(`${tt} is changing from ${Rt?"controlled":"uncontrolled"} to ${ot?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),At.current=ot},[ot,tt])}const Et=reactExports.useCallback(At=>{var Rt;if(ot){const jt=isFunction$1(At)?At(e):At;jt!==e&&((Rt=at.current)==null||Rt.call(at,jt))}else nt(At)},[ot,e,nt,at]);return[ct,Et]}function useUncontrolledState({defaultProp:e,onChange:t}){const[Ye,tt]=reactExports.useState(e),rt=reactExports.useRef(Ye),nt=reactExports.useRef(t);return useInsertionEffect(()=>{nt.current=t},[t]),reactExports.useEffect(()=>{var at;rt.current!==Ye&&((at=nt.current)==null||at.call(nt,Ye),rt.current=Ye)},[Ye,rt]),[Ye,tt,nt]}function isFunction$1(e){return typeof e=="function"}function setRef(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function composeRefs(...e){return t=>{let Ye=!1;const tt=e.map(rt=>{const nt=setRef(rt,t);return!Ye&&typeof nt=="function"&&(Ye=!0),nt});if(Ye)return()=>{for(let rt=0;rt<tt.length;rt++){const nt=tt[rt];typeof nt=="function"?nt():setRef(e[rt],null)}}}}function useComposedRefs(...e){return reactExports.useCallback(composeRefs(...e),e)}function createSlot(e){const t=createSlotClone(e),Ye=reactExports.forwardRef((tt,rt)=>{const{children:nt,...at}=tt,ot=reactExports.Children.toArray(nt),ct=ot.find(isSlottable);if(ct){const Et=ct.props.children,At=ot.map(Rt=>Rt===ct?reactExports.Children.count(Et)>1?reactExports.Children.only(null):reactExports.isValidElement(Et)?Et.props.children:null:Rt);return jsxRuntimeExports.jsx(t,{...at,ref:rt,children:reactExports.isValidElement(Et)?reactExports.cloneElement(Et,void 0,At):null})}return jsxRuntimeExports.jsx(t,{...at,ref:rt,children:nt})});return Ye.displayName=`${e}.Slot`,Ye}var Slot=createSlot("Slot");function createSlotClone(e){const t=reactExports.forwardRef((Ye,tt)=>{const{children:rt,...nt}=Ye;if(reactExports.isValidElement(rt)){const at=getElementRef$1(rt),ot=mergeProps$1(nt,rt.props);return rt.type!==reactExports.Fragment&&(ot.ref=tt?composeRefs(tt,at):at),reactExports.cloneElement(rt,ot)}return reactExports.Children.count(rt)>1?reactExports.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var SLOTTABLE_IDENTIFIER=Symbol("radix.slottable");function isSlottable(e){return reactExports.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===SLOTTABLE_IDENTIFIER}function mergeProps$1(e,t){const Ye={...t};for(const tt in t){const rt=e[tt],nt=t[tt];/^on[A-Z]/.test(tt)?rt&&nt?Ye[tt]=(...ot)=>{const ct=nt(...ot);return rt(...ot),ct}:rt&&(Ye[tt]=rt):tt==="style"?Ye[tt]={...rt,...nt}:tt==="className"&&(Ye[tt]=[rt,nt].filter(Boolean).join(" "))}return{...e,...Ye}}function getElementRef$1(e){var tt,rt;let t=(tt=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:tt.get,Ye=t&&"isReactWarning"in t&&t.isReactWarning;return Ye?e.ref:(t=(rt=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:rt.get,Ye=t&&"isReactWarning"in t&&t.isReactWarning,Ye?e.props.ref:e.props.ref||e.ref)}const falsyToString=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,cx=clsx,cva=(e,t)=>Ye=>{var tt;if((t==null?void 0:t.variants)==null)return cx(e,Ye==null?void 0:Ye.class,Ye==null?void 0:Ye.className);const{variants:rt,defaultVariants:nt}=t,at=Object.keys(rt).map(Et=>{const At=Ye==null?void 0:Ye[Et],Rt=nt==null?void 0:nt[Et];if(At===null)return null;const jt=falsyToString(At)||falsyToString(Rt);return rt[Et][jt]}),ot=Ye&&Object.entries(Ye).reduce((Et,At)=>{let[Rt,jt]=At;return jt===void 0||(Et[Rt]=jt),Et},{}),ct=t==null||(tt=t.compoundVariants)===null||tt===void 0?void 0:tt.reduce((Et,At)=>{let{class:Rt,className:jt,...qt}=At;return Object.entries(qt).every(Ut=>{let[Vt,zt]=Ut;return Array.isArray(zt)?zt.includes({...nt,...ot}[Vt]):{...nt,...ot}[Vt]===zt})?[...Et,Rt,jt]:Et},[]);return cx(e,at,ct,Ye==null?void 0:Ye.class,Ye==null?void 0:Ye.className)},badgeVariants=cva("inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"}},defaultVariants:{variant:"default"}});function Badge({className:e,variant:t,asChild:Ye=!1,...tt}){const rt=Ye?Slot:"span";return jsxRuntimeExports.jsx(rt,{"data-slot":"badge",className:cn$2(badgeVariants({variant:t}),e),...tt})}function composeEventHandlers(e,t,{checkForDefaultPrevented:Ye=!0}={}){return function(rt){if(e==null||e(rt),Ye===!1||!rt.defaultPrevented)return t==null?void 0:t(rt)}}function createContextScope(e,t=[]){let Ye=[];function tt(nt,at){const ot=reactExports.createContext(at),ct=Ye.length;Ye=[...Ye,at];const Et=Rt=>{var Gt;const{scope:jt,children:qt,...Ut}=Rt,Vt=((Gt=jt==null?void 0:jt[e])==null?void 0:Gt[ct])||ot,zt=reactExports.useMemo(()=>Ut,Object.values(Ut));return jsxRuntimeExports.jsx(Vt.Provider,{value:zt,children:qt})};Et.displayName=nt+"Provider";function At(Rt,jt){var Vt;const qt=((Vt=jt==null?void 0:jt[e])==null?void 0:Vt[ct])||ot,Ut=reactExports.useContext(qt);if(Ut)return Ut;if(at!==void 0)return at;throw new Error(`\`${Rt}\` must be used within \`${nt}\``)}return[Et,At]}const rt=()=>{const nt=Ye.map(at=>reactExports.createContext(at));return function(ot){const ct=(ot==null?void 0:ot[e])||nt;return reactExports.useMemo(()=>({[`__scope${e}`]:{...ot,[e]:ct}}),[ot,ct])}};return rt.scopeName=e,[tt,composeContextScopes(rt,...t)]}function composeContextScopes(...e){const t=e[0];if(e.length===1)return t;const Ye=()=>{const tt=e.map(rt=>({useScope:rt(),scopeName:rt.scopeName}));return function(nt){const at=tt.reduce((ot,{useScope:ct,scopeName:Et})=>{const Rt=ct(nt)[`__scope${Et}`];return{...ot,...Rt}},{});return reactExports.useMemo(()=>({[`__scope${t.scopeName}`]:at}),[at])}};return Ye.scopeName=t.scopeName,Ye}var reactDomExports=requireReactDom();const ReactDOM=getDefaultExportFromCjs(reactDomExports);var NODES=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],Primitive=NODES.reduce((e,t)=>{const Ye=createSlot(`Primitive.${t}`),tt=reactExports.forwardRef((rt,nt)=>{const{asChild:at,...ot}=rt,ct=at?Ye:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),jsxRuntimeExports.jsx(ct,{...ot,ref:nt})});return tt.displayName=`Primitive.${t}`,{...e,[t]:tt}},{});function useStateMachine(e,t){return reactExports.useReducer((Ye,tt)=>t[Ye][tt]??Ye,e)}var Presence=e=>{const{present:t,children:Ye}=e,tt=usePresence$1(t),rt=typeof Ye=="function"?Ye({present:tt.isPresent}):reactExports.Children.only(Ye),nt=useComposedRefs(tt.ref,getElementRef(rt));return typeof Ye=="function"||tt.isPresent?reactExports.cloneElement(rt,{ref:nt}):null};Presence.displayName="Presence";function usePresence$1(e){const[t,Ye]=reactExports.useState(),tt=reactExports.useRef(null),rt=reactExports.useRef(e),nt=reactExports.useRef("none"),at=e?"mounted":"unmounted",[ot,ct]=useStateMachine(at,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return reactExports.useEffect(()=>{const Et=getAnimationName(tt.current);nt.current=ot==="mounted"?Et:"none"},[ot]),useLayoutEffect2(()=>{const Et=tt.current,At=rt.current;if(At!==e){const jt=nt.current,qt=getAnimationName(Et);e?ct("MOUNT"):qt==="none"||(Et==null?void 0:Et.display)==="none"?ct("UNMOUNT"):ct(At&&jt!==qt?"ANIMATION_OUT":"UNMOUNT"),rt.current=e}},[e,ct]),useLayoutEffect2(()=>{if(t){let Et;const At=t.ownerDocument.defaultView??window,Rt=qt=>{const Vt=getAnimationName(tt.current).includes(CSS.escape(qt.animationName));if(qt.target===t&&Vt&&(ct("ANIMATION_END"),!rt.current)){const zt=t.style.animationFillMode;t.style.animationFillMode="forwards",Et=At.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=zt)})}},jt=qt=>{qt.target===t&&(nt.current=getAnimationName(tt.current))};return t.addEventListener("animationstart",jt),t.addEventListener("animationcancel",Rt),t.addEventListener("animationend",Rt),()=>{At.clearTimeout(Et),t.removeEventListener("animationstart",jt),t.removeEventListener("animationcancel",Rt),t.removeEventListener("animationend",Rt)}}else ct("ANIMATION_END")},[t,ct]),{isPresent:["mounted","unmountSuspended"].includes(ot),ref:reactExports.useCallback(Et=>{tt.current=Et?getComputedStyle(Et):null,Ye(Et)},[])}}function getAnimationName(e){return(e==null?void 0:e.animationName)||"none"}function getElementRef(e){var tt,rt;let t=(tt=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:tt.get,Ye=t&&"isReactWarning"in t&&t.isReactWarning;return Ye?e.ref:(t=(rt=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:rt.get,Ye=t&&"isReactWarning"in t&&t.isReactWarning,Ye?e.props.ref:e.props.ref||e.ref)}var useReactId=React$1[" useId ".trim().toString()]||(()=>{}),count=0;function useId$1(e){const[t,Ye]=reactExports.useState(useReactId());return useLayoutEffect2(()=>{Ye(tt=>tt??String(count++))},[e]),e||(t?`radix-${t}`:"")}var COLLAPSIBLE_NAME="Collapsible",[createCollapsibleContext]=createContextScope(COLLAPSIBLE_NAME),[CollapsibleProvider,useCollapsibleContext]=createCollapsibleContext(COLLAPSIBLE_NAME),Collapsible$1=reactExports.forwardRef((e,t)=>{const{__scopeCollapsible:Ye,open:tt,defaultOpen:rt,disabled:nt,onOpenChange:at,...ot}=e,[ct,Et]=useControllableState({prop:tt,defaultProp:rt??!1,onChange:at,caller:COLLAPSIBLE_NAME});return jsxRuntimeExports.jsx(CollapsibleProvider,{scope:Ye,disabled:nt,contentId:useId$1(),open:ct,onOpenToggle:reactExports.useCallback(()=>Et(At=>!At),[Et]),children:jsxRuntimeExports.jsx(Primitive.div,{"data-state":getState(ct),"data-disabled":nt?"":void 0,...ot,ref:t})})});Collapsible$1.displayName=COLLAPSIBLE_NAME;var TRIGGER_NAME="CollapsibleTrigger",CollapsibleTrigger$1=reactExports.forwardRef((e,t)=>{const{__scopeCollapsible:Ye,...tt}=e,rt=useCollapsibleContext(TRIGGER_NAME,Ye);return jsxRuntimeExports.jsx(Primitive.button,{type:"button","aria-controls":rt.contentId,"aria-expanded":rt.open||!1,"data-state":getState(rt.open),"data-disabled":rt.disabled?"":void 0,disabled:rt.disabled,...tt,ref:t,onClick:composeEventHandlers(e.onClick,rt.onOpenToggle)})});CollapsibleTrigger$1.displayName=TRIGGER_NAME;var CONTENT_NAME="CollapsibleContent",CollapsibleContent$1=reactExports.forwardRef((e,t)=>{const{forceMount:Ye,...tt}=e,rt=useCollapsibleContext(CONTENT_NAME,e.__scopeCollapsible);return jsxRuntimeExports.jsx(Presence,{present:Ye||rt.open,children:({present:nt})=>jsxRuntimeExports.jsx(CollapsibleContentImpl,{...tt,ref:t,present:nt})})});CollapsibleContent$1.displayName=CONTENT_NAME;var CollapsibleContentImpl=reactExports.forwardRef((e,t)=>{const{__scopeCollapsible:Ye,present:tt,children:rt,...nt}=e,at=useCollapsibleContext(CONTENT_NAME,Ye),[ot,ct]=reactExports.useState(tt),Et=reactExports.useRef(null),At=useComposedRefs(t,Et),Rt=reactExports.useRef(0),jt=Rt.current,qt=reactExports.useRef(0),Ut=qt.current,Vt=at.open||ot,zt=reactExports.useRef(Vt),Gt=reactExports.useRef(void 0);return reactExports.useEffect(()=>{const Kt=requestAnimationFrame(()=>zt.current=!1);return()=>cancelAnimationFrame(Kt)},[]),useLayoutEffect2(()=>{const Kt=Et.current;if(Kt){Gt.current=Gt.current||{transitionDuration:Kt.style.transitionDuration,animationName:Kt.style.animationName},Kt.style.transitionDuration="0s",Kt.style.animationName="none";const Yt=Kt.getBoundingClientRect();Rt.current=Yt.height,qt.current=Yt.width,zt.current||(Kt.style.transitionDuration=Gt.current.transitionDuration,Kt.style.animationName=Gt.current.animationName),ct(tt)}},[at.open,tt]),jsxRuntimeExports.jsx(Primitive.div,{"data-state":getState(at.open),"data-disabled":at.disabled?"":void 0,id:at.contentId,hidden:!Vt,...nt,ref:At,style:{"--radix-collapsible-content-height":jt?`${jt}px`:void 0,"--radix-collapsible-content-width":Ut?`${Ut}px`:void 0,...e.style},children:Vt&&rt})});function getState(e){return e?"open":"closed"}var Root=Collapsible$1;function Collapsible({...e}){return jsxRuntimeExports.jsx(Root,{"data-slot":"collapsible",...e})}function CollapsibleTrigger({...e}){return jsxRuntimeExports.jsx(CollapsibleTrigger$1,{"data-slot":"collapsible-trigger",...e})}function CollapsibleContent({...e}){return jsxRuntimeExports.jsx(CollapsibleContent$1,{"data-slot":"collapsible-content",...e})}const ChainOfThoughtContext=reactExports.createContext(null),useChainOfThought=()=>{const e=reactExports.useContext(ChainOfThoughtContext);if(!e)throw new Error("ChainOfThought components must be used within ChainOfThought");return e},ChainOfThought=reactExports.memo(({className:e,open:t,defaultOpen:Ye=!1,onOpenChange:tt,children:rt,...nt})=>{const[at,ot]=useControllableState({prop:t,defaultProp:Ye,onChange:tt}),ct=reactExports.useMemo(()=>({isOpen:at,setIsOpen:ot}),[at,ot]);return jsxRuntimeExports.jsx(ChainOfThoughtContext.Provider,{value:ct,children:jsxRuntimeExports.jsx("div",{className:cn$2("not-prose max-w-prose space-y-4",e),...nt,children:rt})})}),ChainOfThoughtHeader=reactExports.memo(({className:e,children:t,...Ye})=>{const{isOpen:tt,setIsOpen:rt}=useChainOfThought();return jsxRuntimeExports.jsx(Collapsible,{onOpenChange:rt,open:tt,children:jsxRuntimeExports.jsxs(CollapsibleTrigger,{className:cn$2("flex w-full items-center gap-2 text-muted-foreground text-sm transition-colors hover:text-foreground",e),...Ye,children:[jsxRuntimeExports.jsx(Brain,{className:"size-4"}),jsxRuntimeExports.jsx("span",{className:"flex-1 text-left",children:t??"Chain of Thought"}),jsxRuntimeExports.jsx(ChevronDown$1,{className:cn$2("size-4 transition-transform",tt?"rotate-180":"rotate-0")})]})})}),ChainOfThoughtStep=reactExports.memo(({className:e,icon:t=Dot$1,label:Ye,description:tt,status:rt="complete",children:nt,...at})=>{const ot={complete:"text-muted-foreground",active:"text-foreground",pending:"text-muted-foreground/50"};return jsxRuntimeExports.jsxs("div",{className:cn$2("flex gap-2 text-sm",ot[rt],"fade-in-0 slide-in-from-top-2 animate-in",e),...at,children:[jsxRuntimeExports.jsxs("div",{className:"relative mt-0.5",children:[jsxRuntimeExports.jsx(t,{className:"size-4"}),jsxRuntimeExports.jsx("div",{className:"-mx-px absolute top-7 bottom-0 left-1/2 w-px bg-border"})]}),jsxRuntimeExports.jsxs("div",{className:"flex-1 space-y-2",children:[jsxRuntimeExports.jsx("div",{children:Ye}),tt&&jsxRuntimeExports.jsx("div",{className:"text-muted-foreground text-xs",children:tt}),nt]})]})}),ChainOfThoughtSearchResults=reactExports.memo(({className:e,...t})=>jsxRuntimeExports.jsx("div",{className:cn$2("flex items-center gap-2",e),...t})),ChainOfThoughtSearchResult=reactExports.memo(({className:e,children:t,...Ye})=>jsxRuntimeExports.jsx(Badge,{className:cn$2("gap-1 px-2 py-0.5 font-normal text-xs",e),variant:"secondary",...Ye,children:t})),ChainOfThoughtContent=reactExports.memo(({className:e,children:t,...Ye})=>{const{isOpen:tt}=useChainOfThought();return jsxRuntimeExports.jsx(Collapsible,{open:tt,children:jsxRuntimeExports.jsx(CollapsibleContent,{className:cn$2("mt-2 space-y-3","data-[state=closed]:fade-out-0 data-[state=closed]:slide-out-to-top-2 data-[state=open]:slide-in-from-top-2 text-popover-foreground outline-none data-[state=closed]:animate-out data-[state=open]:animate-in",e),...Ye,children:t})})}),ChainOfThoughtImage=reactExports.memo(({className:e,children:t,caption:Ye,...tt})=>jsxRuntimeExports.jsxs("div",{className:cn$2("mt-2 space-y-2",e),...tt,children:[jsxRuntimeExports.jsx("div",{className:"relative flex max-h-[22rem] items-center justify-center overflow-hidden rounded-lg bg-muted p-3",children:t}),Ye&&jsxRuntimeExports.jsx("p",{className:"text-muted-foreground text-xs",children:Ye})]}));ChainOfThought.displayName="ChainOfThought";ChainOfThoughtHeader.displayName="ChainOfThoughtHeader";ChainOfThoughtStep.displayName="ChainOfThoughtStep";ChainOfThoughtSearchResults.displayName="ChainOfThoughtSearchResults";ChainOfThoughtSearchResult.displayName="ChainOfThoughtSearchResult";ChainOfThoughtContent.displayName="ChainOfThoughtContent";ChainOfThoughtImage.displayName="ChainOfThoughtImage";const Reasoning=e=>{var t;return jsxRuntimeExports.jsxs(ChainOfThought,{defaultOpen:!0,className:e.className,children:[jsxRuntimeExports.jsx(ChainOfThoughtHeader,{children:"思考内容"}),jsxRuntimeExports.jsx(ChainOfThoughtContent,{children:jsxRuntimeExports.jsx(ChainOfThoughtStep,{label:((t=e.message.additional_kwargs)==null?void 0:t.reasoning_content)||"",status:"complete"})})]})},MessageAI=({message:e})=>{var t;return jsxRuntimeExports.jsxs("div",{className:"flex flex-col w-[80%] bg-white rounded-2xl px-5 py-4 border border-gray-200",children:[jsxRuntimeExports.jsx("div",{className:"text-xs font-medium text-gray-500 mb-3",children:e.name}),(t=e.additional_kwargs)!=null&&t.reasoning_content?jsxRuntimeExports.jsx(Reasoning,{message:e,className:"mb-4"}):null,jsxRuntimeExports.jsx("div",{className:"markdown-body max-w-none",children:jsxRuntimeExports.jsx(Response$1,{children:getMessageContent(e.content)})}),jsxRuntimeExports.jsx(UsageMetadata,{response_metadata:e.response_metadata,usage_metadata:e.usage_metadata||{},spend_time:e.spend_time,id:e.id})]})},buttonVariants$1=cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function Button$1({className:e,variant:t,size:Ye,asChild:tt=!1,...rt}){const nt=tt?Slot:"button";return jsxRuntimeExports.jsx(nt,{"data-slot":"button",className:cn$2(buttonVariants$1({variant:t,size:Ye,className:e})),...rt})}function _objectWithoutPropertiesLoose$v(e,t){if(e==null)return{};var Ye={};for(var tt in e)if({}.hasOwnProperty.call(e,tt)){if(t.indexOf(tt)!==-1)continue;Ye[tt]=e[tt]}return Ye}function _objectWithoutProperties$v(e,t){if(e==null)return{};var Ye,tt,rt=_objectWithoutPropertiesLoose$v(e,t);if(Object.getOwnPropertySymbols){var nt=Object.getOwnPropertySymbols(e);for(tt=0;tt<nt.length;tt++)Ye=nt[tt],t.indexOf(Ye)===-1&&{}.propertyIsEnumerable.call(e,Ye)&&(rt[Ye]=e[Ye])}return rt}function _arrayLikeToArray(e,t){(t==null||t>e.length)&&(t=e.length);for(var Ye=0,tt=Array(t);Ye<t;Ye++)tt[Ye]=e[Ye];return tt}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _iterableToArray(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function _unsupportedIterableToArray(e,t){if(e){if(typeof e=="string")return _arrayLikeToArray(e,t);var Ye={}.toString.call(e).slice(8,-1);return Ye==="Object"&&e.constructor&&(Ye=e.constructor.name),Ye==="Map"||Ye==="Set"?Array.from(e):Ye==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(Ye)?_arrayLikeToArray(e,t):void 0}}function _nonIterableSpread(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
907
+ $$`:`${e}$$`},$t=e=>{let t=0,Ye=e.match(/\*+/g)||[];for(let tt of Ye){let rt=tt.length;rt>=3&&(t+=Math.floor(rt/3))}return t},xt=e=>{if(R$1(e)||/^\*{4,}$/.test(e))return e;let t=e.match(gt$1);if(t){let Ye=t[2];if(!Ye||/^[\s_~*`]*$/.test(Ye))return e;if($t(e)%2===1)return`${e}***`}return e},Oe$1=e=>{if(!e||typeof e!="string")return e;let t=e,Ye=yt(t);return Ye.endsWith("](streamdown:incomplete-link)")?Ye:(t=Ye,t=xt(t),t=wt(t),t=vt(t),t=Tt(t),t=Pt(t),t=St(t),t=Lt(t),t=Bt(t),t)},_t={harden:[harden,{allowedImagePrefixes:["*"],allowedLinkPrefixes:["*"],defaultOrigin:void 0,allowDataImages:!0}],raw:rehypeRaw,katex:[rehypeKatex,{errorColor:"var(--color-muted-foreground)"}]},Ot={gfm:[remarkGfm,{}],math:[remarkMath,{singleDollarTextMath:!1}]},X$2=reactExports.createContext(["github-light","github-dark"]),G$1=reactExports.createContext(void 0),j$1=reactExports.createContext(!0),M$2=reactExports.createContext({isAnimating:!1}),ze$1=reactExports.memo(({content:e,shouldParseIncompleteMarkdown:t,...Ye})=>{let tt=reactExports.useMemo(()=>typeof e=="string"&&t?Oe$1(e.trim()):e,[e,t]);return jsxRuntimeExports.jsx(Markdown$1,{...Ye,children:tt})},(e,t)=>e.content===t.content);ze$1.displayName="Block";var Wt=reactExports.memo(({children:e,parseIncompleteMarkdown:t=!0,components:Ye,rehypePlugins:tt=Object.values(_t),remarkPlugins:rt=Object.values(Ot),className:nt,shikiTheme:at=["github-light","github-dark"],mermaidConfig:ot,controls:ct=!0,isAnimating:Et=!1,...At})=>{let Rt=reactExports.useId(),jt=reactExports.useMemo(()=>Ee$1(typeof e=="string"?e:""),[e]);return jsxRuntimeExports.jsx(X$2.Provider,{value:at,children:jsxRuntimeExports.jsx(G$1.Provider,{value:ot,children:jsxRuntimeExports.jsx(j$1.Provider,{value:ct,children:jsxRuntimeExports.jsx(M$2.Provider,{value:{isAnimating:Et},children:jsxRuntimeExports.jsx("div",{className:m$1("space-y-4",nt),children:jt.map((qt,Ut)=>jsxRuntimeExports.jsx(ze$1,{components:{...De$1,...Ye},content:qt,rehypePlugins:tt,remarkPlugins:rt,shouldParseIncompleteMarkdown:t,...At},`${Rt}-block-${Ut}`))})})})})})},(e,t)=>e.children===t.children&&e.shikiTheme===t.shikiTheme&&e.isAnimating===t.isAnimating);Wt.displayName="Streamdown";const Response$1=reactExports.memo(({className:e,...t})=>jsxRuntimeExports.jsx(Wt,{className:cn$2("size-full [&>*:first-child]:mt-0 [&>*:last-child]:mb-0",e),...t}),(e,t)=>e.children===t.children);Response$1.displayName="Response";var useLayoutEffect2=globalThis!=null&&globalThis.document?reactExports.useLayoutEffect:()=>{},useInsertionEffect=React$1[" useInsertionEffect ".trim().toString()]||useLayoutEffect2;function useControllableState({prop:e,defaultProp:t,onChange:Ye=()=>{},caller:tt}){const[rt,nt,at]=useUncontrolledState({defaultProp:t,onChange:Ye}),ot=e!==void 0,ct=ot?e:rt;{const At=reactExports.useRef(e!==void 0);reactExports.useEffect(()=>{const Rt=At.current;Rt!==ot&&console.warn(`${tt} is changing from ${Rt?"controlled":"uncontrolled"} to ${ot?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),At.current=ot},[ot,tt])}const Et=reactExports.useCallback(At=>{var Rt;if(ot){const jt=isFunction$1(At)?At(e):At;jt!==e&&((Rt=at.current)==null||Rt.call(at,jt))}else nt(At)},[ot,e,nt,at]);return[ct,Et]}function useUncontrolledState({defaultProp:e,onChange:t}){const[Ye,tt]=reactExports.useState(e),rt=reactExports.useRef(Ye),nt=reactExports.useRef(t);return useInsertionEffect(()=>{nt.current=t},[t]),reactExports.useEffect(()=>{var at;rt.current!==Ye&&((at=nt.current)==null||at.call(nt,Ye),rt.current=Ye)},[Ye,rt]),[Ye,tt,nt]}function isFunction$1(e){return typeof e=="function"}function setRef(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function composeRefs(...e){return t=>{let Ye=!1;const tt=e.map(rt=>{const nt=setRef(rt,t);return!Ye&&typeof nt=="function"&&(Ye=!0),nt});if(Ye)return()=>{for(let rt=0;rt<tt.length;rt++){const nt=tt[rt];typeof nt=="function"?nt():setRef(e[rt],null)}}}}function useComposedRefs(...e){return reactExports.useCallback(composeRefs(...e),e)}function createSlot(e){const t=createSlotClone(e),Ye=reactExports.forwardRef((tt,rt)=>{const{children:nt,...at}=tt,ot=reactExports.Children.toArray(nt),ct=ot.find(isSlottable);if(ct){const Et=ct.props.children,At=ot.map(Rt=>Rt===ct?reactExports.Children.count(Et)>1?reactExports.Children.only(null):reactExports.isValidElement(Et)?Et.props.children:null:Rt);return jsxRuntimeExports.jsx(t,{...at,ref:rt,children:reactExports.isValidElement(Et)?reactExports.cloneElement(Et,void 0,At):null})}return jsxRuntimeExports.jsx(t,{...at,ref:rt,children:nt})});return Ye.displayName=`${e}.Slot`,Ye}var Slot=createSlot("Slot");function createSlotClone(e){const t=reactExports.forwardRef((Ye,tt)=>{const{children:rt,...nt}=Ye;if(reactExports.isValidElement(rt)){const at=getElementRef$1(rt),ot=mergeProps$1(nt,rt.props);return rt.type!==reactExports.Fragment&&(ot.ref=tt?composeRefs(tt,at):at),reactExports.cloneElement(rt,ot)}return reactExports.Children.count(rt)>1?reactExports.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var SLOTTABLE_IDENTIFIER=Symbol("radix.slottable");function isSlottable(e){return reactExports.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===SLOTTABLE_IDENTIFIER}function mergeProps$1(e,t){const Ye={...t};for(const tt in t){const rt=e[tt],nt=t[tt];/^on[A-Z]/.test(tt)?rt&&nt?Ye[tt]=(...ot)=>{const ct=nt(...ot);return rt(...ot),ct}:rt&&(Ye[tt]=rt):tt==="style"?Ye[tt]={...rt,...nt}:tt==="className"&&(Ye[tt]=[rt,nt].filter(Boolean).join(" "))}return{...e,...Ye}}function getElementRef$1(e){var tt,rt;let t=(tt=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:tt.get,Ye=t&&"isReactWarning"in t&&t.isReactWarning;return Ye?e.ref:(t=(rt=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:rt.get,Ye=t&&"isReactWarning"in t&&t.isReactWarning,Ye?e.props.ref:e.props.ref||e.ref)}const falsyToString=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,cx=clsx,cva=(e,t)=>Ye=>{var tt;if((t==null?void 0:t.variants)==null)return cx(e,Ye==null?void 0:Ye.class,Ye==null?void 0:Ye.className);const{variants:rt,defaultVariants:nt}=t,at=Object.keys(rt).map(Et=>{const At=Ye==null?void 0:Ye[Et],Rt=nt==null?void 0:nt[Et];if(At===null)return null;const jt=falsyToString(At)||falsyToString(Rt);return rt[Et][jt]}),ot=Ye&&Object.entries(Ye).reduce((Et,At)=>{let[Rt,jt]=At;return jt===void 0||(Et[Rt]=jt),Et},{}),ct=t==null||(tt=t.compoundVariants)===null||tt===void 0?void 0:tt.reduce((Et,At)=>{let{class:Rt,className:jt,...qt}=At;return Object.entries(qt).every(Ut=>{let[Vt,zt]=Ut;return Array.isArray(zt)?zt.includes({...nt,...ot}[Vt]):{...nt,...ot}[Vt]===zt})?[...Et,Rt,jt]:Et},[]);return cx(e,at,ct,Ye==null?void 0:Ye.class,Ye==null?void 0:Ye.className)},badgeVariants=cva("inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",destructive:"border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"}},defaultVariants:{variant:"default"}});function Badge({className:e,variant:t,asChild:Ye=!1,...tt}){const rt=Ye?Slot:"span";return jsxRuntimeExports.jsx(rt,{"data-slot":"badge",className:cn$2(badgeVariants({variant:t}),e),...tt})}function composeEventHandlers(e,t,{checkForDefaultPrevented:Ye=!0}={}){return function(rt){if(e==null||e(rt),Ye===!1||!rt.defaultPrevented)return t==null?void 0:t(rt)}}function createContextScope(e,t=[]){let Ye=[];function tt(nt,at){const ot=reactExports.createContext(at),ct=Ye.length;Ye=[...Ye,at];const Et=Rt=>{var Gt;const{scope:jt,children:qt,...Ut}=Rt,Vt=((Gt=jt==null?void 0:jt[e])==null?void 0:Gt[ct])||ot,zt=reactExports.useMemo(()=>Ut,Object.values(Ut));return jsxRuntimeExports.jsx(Vt.Provider,{value:zt,children:qt})};Et.displayName=nt+"Provider";function At(Rt,jt){var Vt;const qt=((Vt=jt==null?void 0:jt[e])==null?void 0:Vt[ct])||ot,Ut=reactExports.useContext(qt);if(Ut)return Ut;if(at!==void 0)return at;throw new Error(`\`${Rt}\` must be used within \`${nt}\``)}return[Et,At]}const rt=()=>{const nt=Ye.map(at=>reactExports.createContext(at));return function(ot){const ct=(ot==null?void 0:ot[e])||nt;return reactExports.useMemo(()=>({[`__scope${e}`]:{...ot,[e]:ct}}),[ot,ct])}};return rt.scopeName=e,[tt,composeContextScopes(rt,...t)]}function composeContextScopes(...e){const t=e[0];if(e.length===1)return t;const Ye=()=>{const tt=e.map(rt=>({useScope:rt(),scopeName:rt.scopeName}));return function(nt){const at=tt.reduce((ot,{useScope:ct,scopeName:Et})=>{const Rt=ct(nt)[`__scope${Et}`];return{...ot,...Rt}},{});return reactExports.useMemo(()=>({[`__scope${t.scopeName}`]:at}),[at])}};return Ye.scopeName=t.scopeName,Ye}var reactDomExports=requireReactDom();const ReactDOM=getDefaultExportFromCjs(reactDomExports);var NODES=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],Primitive=NODES.reduce((e,t)=>{const Ye=createSlot(`Primitive.${t}`),tt=reactExports.forwardRef((rt,nt)=>{const{asChild:at,...ot}=rt,ct=at?Ye:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),jsxRuntimeExports.jsx(ct,{...ot,ref:nt})});return tt.displayName=`Primitive.${t}`,{...e,[t]:tt}},{});function useStateMachine(e,t){return reactExports.useReducer((Ye,tt)=>t[Ye][tt]??Ye,e)}var Presence=e=>{const{present:t,children:Ye}=e,tt=usePresence$1(t),rt=typeof Ye=="function"?Ye({present:tt.isPresent}):reactExports.Children.only(Ye),nt=useComposedRefs(tt.ref,getElementRef(rt));return typeof Ye=="function"||tt.isPresent?reactExports.cloneElement(rt,{ref:nt}):null};Presence.displayName="Presence";function usePresence$1(e){const[t,Ye]=reactExports.useState(),tt=reactExports.useRef(null),rt=reactExports.useRef(e),nt=reactExports.useRef("none"),at=e?"mounted":"unmounted",[ot,ct]=useStateMachine(at,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return reactExports.useEffect(()=>{const Et=getAnimationName(tt.current);nt.current=ot==="mounted"?Et:"none"},[ot]),useLayoutEffect2(()=>{const Et=tt.current,At=rt.current;if(At!==e){const jt=nt.current,qt=getAnimationName(Et);e?ct("MOUNT"):qt==="none"||(Et==null?void 0:Et.display)==="none"?ct("UNMOUNT"):ct(At&&jt!==qt?"ANIMATION_OUT":"UNMOUNT"),rt.current=e}},[e,ct]),useLayoutEffect2(()=>{if(t){let Et;const At=t.ownerDocument.defaultView??window,Rt=qt=>{const Vt=getAnimationName(tt.current).includes(CSS.escape(qt.animationName));if(qt.target===t&&Vt&&(ct("ANIMATION_END"),!rt.current)){const zt=t.style.animationFillMode;t.style.animationFillMode="forwards",Et=At.setTimeout(()=>{t.style.animationFillMode==="forwards"&&(t.style.animationFillMode=zt)})}},jt=qt=>{qt.target===t&&(nt.current=getAnimationName(tt.current))};return t.addEventListener("animationstart",jt),t.addEventListener("animationcancel",Rt),t.addEventListener("animationend",Rt),()=>{At.clearTimeout(Et),t.removeEventListener("animationstart",jt),t.removeEventListener("animationcancel",Rt),t.removeEventListener("animationend",Rt)}}else ct("ANIMATION_END")},[t,ct]),{isPresent:["mounted","unmountSuspended"].includes(ot),ref:reactExports.useCallback(Et=>{tt.current=Et?getComputedStyle(Et):null,Ye(Et)},[])}}function getAnimationName(e){return(e==null?void 0:e.animationName)||"none"}function getElementRef(e){var tt,rt;let t=(tt=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:tt.get,Ye=t&&"isReactWarning"in t&&t.isReactWarning;return Ye?e.ref:(t=(rt=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:rt.get,Ye=t&&"isReactWarning"in t&&t.isReactWarning,Ye?e.props.ref:e.props.ref||e.ref)}var useReactId=React$1[" useId ".trim().toString()]||(()=>{}),count=0;function useId$1(e){const[t,Ye]=reactExports.useState(useReactId());return useLayoutEffect2(()=>{Ye(tt=>tt??String(count++))},[e]),e||(t?`radix-${t}`:"")}var COLLAPSIBLE_NAME="Collapsible",[createCollapsibleContext]=createContextScope(COLLAPSIBLE_NAME),[CollapsibleProvider,useCollapsibleContext]=createCollapsibleContext(COLLAPSIBLE_NAME),Collapsible$1=reactExports.forwardRef((e,t)=>{const{__scopeCollapsible:Ye,open:tt,defaultOpen:rt,disabled:nt,onOpenChange:at,...ot}=e,[ct,Et]=useControllableState({prop:tt,defaultProp:rt??!1,onChange:at,caller:COLLAPSIBLE_NAME});return jsxRuntimeExports.jsx(CollapsibleProvider,{scope:Ye,disabled:nt,contentId:useId$1(),open:ct,onOpenToggle:reactExports.useCallback(()=>Et(At=>!At),[Et]),children:jsxRuntimeExports.jsx(Primitive.div,{"data-state":getState(ct),"data-disabled":nt?"":void 0,...ot,ref:t})})});Collapsible$1.displayName=COLLAPSIBLE_NAME;var TRIGGER_NAME="CollapsibleTrigger",CollapsibleTrigger$1=reactExports.forwardRef((e,t)=>{const{__scopeCollapsible:Ye,...tt}=e,rt=useCollapsibleContext(TRIGGER_NAME,Ye);return jsxRuntimeExports.jsx(Primitive.button,{type:"button","aria-controls":rt.contentId,"aria-expanded":rt.open||!1,"data-state":getState(rt.open),"data-disabled":rt.disabled?"":void 0,disabled:rt.disabled,...tt,ref:t,onClick:composeEventHandlers(e.onClick,rt.onOpenToggle)})});CollapsibleTrigger$1.displayName=TRIGGER_NAME;var CONTENT_NAME="CollapsibleContent",CollapsibleContent$1=reactExports.forwardRef((e,t)=>{const{forceMount:Ye,...tt}=e,rt=useCollapsibleContext(CONTENT_NAME,e.__scopeCollapsible);return jsxRuntimeExports.jsx(Presence,{present:Ye||rt.open,children:({present:nt})=>jsxRuntimeExports.jsx(CollapsibleContentImpl,{...tt,ref:t,present:nt})})});CollapsibleContent$1.displayName=CONTENT_NAME;var CollapsibleContentImpl=reactExports.forwardRef((e,t)=>{const{__scopeCollapsible:Ye,present:tt,children:rt,...nt}=e,at=useCollapsibleContext(CONTENT_NAME,Ye),[ot,ct]=reactExports.useState(tt),Et=reactExports.useRef(null),At=useComposedRefs(t,Et),Rt=reactExports.useRef(0),jt=Rt.current,qt=reactExports.useRef(0),Ut=qt.current,Vt=at.open||ot,zt=reactExports.useRef(Vt),Gt=reactExports.useRef(void 0);return reactExports.useEffect(()=>{const Kt=requestAnimationFrame(()=>zt.current=!1);return()=>cancelAnimationFrame(Kt)},[]),useLayoutEffect2(()=>{const Kt=Et.current;if(Kt){Gt.current=Gt.current||{transitionDuration:Kt.style.transitionDuration,animationName:Kt.style.animationName},Kt.style.transitionDuration="0s",Kt.style.animationName="none";const Yt=Kt.getBoundingClientRect();Rt.current=Yt.height,qt.current=Yt.width,zt.current||(Kt.style.transitionDuration=Gt.current.transitionDuration,Kt.style.animationName=Gt.current.animationName),ct(tt)}},[at.open,tt]),jsxRuntimeExports.jsx(Primitive.div,{"data-state":getState(at.open),"data-disabled":at.disabled?"":void 0,id:at.contentId,hidden:!Vt,...nt,ref:At,style:{"--radix-collapsible-content-height":jt?`${jt}px`:void 0,"--radix-collapsible-content-width":Ut?`${Ut}px`:void 0,...e.style},children:Vt&&rt})});function getState(e){return e?"open":"closed"}var Root=Collapsible$1;function Collapsible({...e}){return jsxRuntimeExports.jsx(Root,{"data-slot":"collapsible",...e})}function CollapsibleTrigger({...e}){return jsxRuntimeExports.jsx(CollapsibleTrigger$1,{"data-slot":"collapsible-trigger",...e})}function CollapsibleContent({...e}){return jsxRuntimeExports.jsx(CollapsibleContent$1,{"data-slot":"collapsible-content",...e})}const ChainOfThoughtContext=reactExports.createContext(null),useChainOfThought=()=>{const e=reactExports.useContext(ChainOfThoughtContext);if(!e)throw new Error("ChainOfThought components must be used within ChainOfThought");return e},ChainOfThought=reactExports.memo(({className:e,open:t,defaultOpen:Ye=!1,onOpenChange:tt,children:rt,...nt})=>{const[at,ot]=useControllableState({prop:t,defaultProp:Ye,onChange:tt}),ct=reactExports.useMemo(()=>({isOpen:at,setIsOpen:ot}),[at,ot]);return jsxRuntimeExports.jsx(ChainOfThoughtContext.Provider,{value:ct,children:jsxRuntimeExports.jsx("div",{className:cn$2("not-prose max-w-prose space-y-4",e),...nt,children:rt})})}),ChainOfThoughtHeader=reactExports.memo(({className:e,children:t,...Ye})=>{const{isOpen:tt,setIsOpen:rt}=useChainOfThought();return jsxRuntimeExports.jsx(Collapsible,{onOpenChange:rt,open:tt,children:jsxRuntimeExports.jsxs(CollapsibleTrigger,{className:cn$2("flex w-full items-center gap-2 text-muted-foreground text-sm transition-colors hover:text-foreground",e),...Ye,children:[jsxRuntimeExports.jsx(Brain,{className:"size-4"}),jsxRuntimeExports.jsx("span",{className:"flex-1 text-left",children:t??"Chain of Thought"}),jsxRuntimeExports.jsx(ChevronDown$1,{className:cn$2("size-4 transition-transform",tt?"rotate-180":"rotate-0")})]})})}),ChainOfThoughtStep=reactExports.memo(({className:e,icon:t=Dot$1,label:Ye,description:tt,status:rt="complete",children:nt,...at})=>{const ot={complete:"text-muted-foreground",active:"text-foreground",pending:"text-muted-foreground/50"};return jsxRuntimeExports.jsxs("div",{className:cn$2("flex gap-2 text-sm",ot[rt],"fade-in-0 slide-in-from-top-2 animate-in",e),...at,children:[jsxRuntimeExports.jsxs("div",{className:"relative mt-0.5",children:[jsxRuntimeExports.jsx(t,{className:"size-4"}),jsxRuntimeExports.jsx("div",{className:"-mx-px absolute top-7 bottom-0 left-1/2 w-px bg-border"})]}),jsxRuntimeExports.jsxs("div",{className:"flex-1 space-y-2",children:[jsxRuntimeExports.jsx("div",{children:Ye}),tt&&jsxRuntimeExports.jsx("div",{className:"text-muted-foreground text-xs",children:tt}),nt]})]})}),ChainOfThoughtSearchResults=reactExports.memo(({className:e,...t})=>jsxRuntimeExports.jsx("div",{className:cn$2("flex items-center gap-2",e),...t})),ChainOfThoughtSearchResult=reactExports.memo(({className:e,children:t,...Ye})=>jsxRuntimeExports.jsx(Badge,{className:cn$2("gap-1 px-2 py-0.5 font-normal text-xs",e),variant:"secondary",...Ye,children:t})),ChainOfThoughtContent=reactExports.memo(({className:e,children:t,...Ye})=>{const{isOpen:tt}=useChainOfThought();return jsxRuntimeExports.jsx(Collapsible,{open:tt,children:jsxRuntimeExports.jsx(CollapsibleContent,{className:cn$2("mt-2 space-y-3","data-[state=closed]:fade-out-0 data-[state=closed]:slide-out-to-top-2 data-[state=open]:slide-in-from-top-2 text-popover-foreground outline-none data-[state=closed]:animate-out data-[state=open]:animate-in",e),...Ye,children:t})})}),ChainOfThoughtImage=reactExports.memo(({className:e,children:t,caption:Ye,...tt})=>jsxRuntimeExports.jsxs("div",{className:cn$2("mt-2 space-y-2",e),...tt,children:[jsxRuntimeExports.jsx("div",{className:"relative flex max-h-[22rem] items-center justify-center overflow-hidden rounded-lg bg-muted p-3",children:t}),Ye&&jsxRuntimeExports.jsx("p",{className:"text-muted-foreground text-xs",children:Ye})]}));ChainOfThought.displayName="ChainOfThought";ChainOfThoughtHeader.displayName="ChainOfThoughtHeader";ChainOfThoughtStep.displayName="ChainOfThoughtStep";ChainOfThoughtSearchResults.displayName="ChainOfThoughtSearchResults";ChainOfThoughtSearchResult.displayName="ChainOfThoughtSearchResult";ChainOfThoughtContent.displayName="ChainOfThoughtContent";ChainOfThoughtImage.displayName="ChainOfThoughtImage";const Reasoning=e=>jsxRuntimeExports.jsxs(ChainOfThought,{defaultOpen:!0,className:e.className,children:[jsxRuntimeExports.jsx(ChainOfThoughtHeader,{children:"思考内容"}),jsxRuntimeExports.jsx(ChainOfThoughtContent,{children:jsxRuntimeExports.jsx(ChainOfThoughtStep,{label:e.reasoning_content||"",status:"complete"})})]}),MessageAI=({message:e})=>{const t=getThinkingContent(e),Ye=getTextContent(e);return jsxRuntimeExports.jsxs("div",{className:"flex flex-col w-[80%] bg-white rounded-2xl px-5 py-4 border border-gray-200",children:[jsxRuntimeExports.jsx("div",{className:"text-xs font-medium text-gray-500 mb-3",children:e.name}),t?jsxRuntimeExports.jsx(Reasoning,{reasoning_content:t,className:"mb-4"}):null,jsxRuntimeExports.jsx("div",{className:"markdown-body max-w-none",children:jsxRuntimeExports.jsx(Response$1,{children:Ye})}),jsxRuntimeExports.jsx(UsageMetadata,{response_metadata:e.response_metadata,usage_metadata:e.usage_metadata||{},spend_time:e.spend_time,id:e.id})]})},buttonVariants$1=cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90",destructive:"bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",sm:"h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 rounded-md px-6 has-[>svg]:px-4",icon:"size-9","icon-sm":"size-8","icon-lg":"size-10"}},defaultVariants:{variant:"default",size:"default"}});function Button$1({className:e,variant:t,size:Ye,asChild:tt=!1,...rt}){const nt=tt?Slot:"button";return jsxRuntimeExports.jsx(nt,{"data-slot":"button",className:cn$2(buttonVariants$1({variant:t,size:Ye,className:e})),...rt})}function _objectWithoutPropertiesLoose$v(e,t){if(e==null)return{};var Ye={};for(var tt in e)if({}.hasOwnProperty.call(e,tt)){if(t.indexOf(tt)!==-1)continue;Ye[tt]=e[tt]}return Ye}function _objectWithoutProperties$v(e,t){if(e==null)return{};var Ye,tt,rt=_objectWithoutPropertiesLoose$v(e,t);if(Object.getOwnPropertySymbols){var nt=Object.getOwnPropertySymbols(e);for(tt=0;tt<nt.length;tt++)Ye=nt[tt],t.indexOf(Ye)===-1&&{}.propertyIsEnumerable.call(e,Ye)&&(rt[Ye]=e[Ye])}return rt}function _arrayLikeToArray(e,t){(t==null||t>e.length)&&(t=e.length);for(var Ye=0,tt=Array(t);Ye<t;Ye++)tt[Ye]=e[Ye];return tt}function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}function _iterableToArray(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function _unsupportedIterableToArray(e,t){if(e){if(typeof e=="string")return _arrayLikeToArray(e,t);var Ye={}.toString.call(e).slice(8,-1);return Ye==="Object"&&e.constructor&&(Ye=e.constructor.name),Ye==="Map"||Ye==="Set"?Array.from(e):Ye==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(Ye)?_arrayLikeToArray(e,t):void 0}}function _nonIterableSpread(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
908
908
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _typeof(e){"@babel/helpers - typeof";return _typeof=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_typeof(e)}function toPrimitive(e,t){if(_typeof(e)!="object"||!e)return e;var Ye=e[Symbol.toPrimitive];if(Ye!==void 0){var tt=Ye.call(e,t);if(_typeof(tt)!="object")return tt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function toPropertyKey(e){var t=toPrimitive(e,"string");return _typeof(t)=="symbol"?t:t+""}function _defineProperty$N(e,t,Ye){return(t=toPropertyKey(t))in e?Object.defineProperty(e,t,{value:Ye,enumerable:!0,configurable:!0,writable:!0}):e[t]=Ye,e}function _extends$z(){return _extends$z=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var Ye=arguments[t];for(var tt in Ye)({}).hasOwnProperty.call(Ye,tt)&&(e[tt]=Ye[tt])}return e},_extends$z.apply(null,arguments)}function ownKeys$L(e,t){var Ye=Object.keys(e);if(Object.getOwnPropertySymbols){var tt=Object.getOwnPropertySymbols(e);t&&(tt=tt.filter(function(rt){return Object.getOwnPropertyDescriptor(e,rt).enumerable})),Ye.push.apply(Ye,tt)}return Ye}function _objectSpread$K(e){for(var t=1;t<arguments.length;t++){var Ye=arguments[t]!=null?arguments[t]:{};t%2?ownKeys$L(Object(Ye),!0).forEach(function(tt){_defineProperty$N(e,tt,Ye[tt])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(Ye)):ownKeys$L(Object(Ye)).forEach(function(tt){Object.defineProperty(e,tt,Object.getOwnPropertyDescriptor(Ye,tt))})}return e}function powerSetPermutations(e){var t=e.length;if(t===0||t===1)return e;if(t===2)return[e[0],e[1],"".concat(e[0],".").concat(e[1]),"".concat(e[1],".").concat(e[0])];if(t===3)return[e[0],e[1],e[2],"".concat(e[0],".").concat(e[1]),"".concat(e[0],".").concat(e[2]),"".concat(e[1],".").concat(e[0]),"".concat(e[1],".").concat(e[2]),"".concat(e[2],".").concat(e[0]),"".concat(e[2],".").concat(e[1]),"".concat(e[0],".").concat(e[1],".").concat(e[2]),"".concat(e[0],".").concat(e[2],".").concat(e[1]),"".concat(e[1],".").concat(e[0],".").concat(e[2]),"".concat(e[1],".").concat(e[2],".").concat(e[0]),"".concat(e[2],".").concat(e[0],".").concat(e[1]),"".concat(e[2],".").concat(e[1],".").concat(e[0])];if(t>=4)return[e[0],e[1],e[2],e[3],"".concat(e[0],".").concat(e[1]),"".concat(e[0],".").concat(e[2]),"".concat(e[0],".").concat(e[3]),"".concat(e[1],".").concat(e[0]),"".concat(e[1],".").concat(e[2]),"".concat(e[1],".").concat(e[3]),"".concat(e[2],".").concat(e[0]),"".concat(e[2],".").concat(e[1]),"".concat(e[2],".").concat(e[3]),"".concat(e[3],".").concat(e[0]),"".concat(e[3],".").concat(e[1]),"".concat(e[3],".").concat(e[2]),"".concat(e[0],".").concat(e[1],".").concat(e[2]),"".concat(e[0],".").concat(e[1],".").concat(e[3]),"".concat(e[0],".").concat(e[2],".").concat(e[1]),"".concat(e[0],".").concat(e[2],".").concat(e[3]),"".concat(e[0],".").concat(e[3],".").concat(e[1]),"".concat(e[0],".").concat(e[3],".").concat(e[2]),"".concat(e[1],".").concat(e[0],".").concat(e[2]),"".concat(e[1],".").concat(e[0],".").concat(e[3]),"".concat(e[1],".").concat(e[2],".").concat(e[0]),"".concat(e[1],".").concat(e[2],".").concat(e[3]),"".concat(e[1],".").concat(e[3],".").concat(e[0]),"".concat(e[1],".").concat(e[3],".").concat(e[2]),"".concat(e[2],".").concat(e[0],".").concat(e[1]),"".concat(e[2],".").concat(e[0],".").concat(e[3]),"".concat(e[2],".").concat(e[1],".").concat(e[0]),"".concat(e[2],".").concat(e[1],".").concat(e[3]),"".concat(e[2],".").concat(e[3],".").concat(e[0]),"".concat(e[2],".").concat(e[3],".").concat(e[1]),"".concat(e[3],".").concat(e[0],".").concat(e[1]),"".concat(e[3],".").concat(e[0],".").concat(e[2]),"".concat(e[3],".").concat(e[1],".").concat(e[0]),"".concat(e[3],".").concat(e[1],".").concat(e[2]),"".concat(e[3],".").concat(e[2],".").concat(e[0]),"".concat(e[3],".").concat(e[2],".").concat(e[1]),"".concat(e[0],".").concat(e[1],".").concat(e[2],".").concat(e[3]),"".concat(e[0],".").concat(e[1],".").concat(e[3],".").concat(e[2]),"".concat(e[0],".").concat(e[2],".").concat(e[1],".").concat(e[3]),"".concat(e[0],".").concat(e[2],".").concat(e[3],".").concat(e[1]),"".concat(e[0],".").concat(e[3],".").concat(e[1],".").concat(e[2]),"".concat(e[0],".").concat(e[3],".").concat(e[2],".").concat(e[1]),"".concat(e[1],".").concat(e[0],".").concat(e[2],".").concat(e[3]),"".concat(e[1],".").concat(e[0],".").concat(e[3],".").concat(e[2]),"".concat(e[1],".").concat(e[2],".").concat(e[0],".").concat(e[3]),"".concat(e[1],".").concat(e[2],".").concat(e[3],".").concat(e[0]),"".concat(e[1],".").concat(e[3],".").concat(e[0],".").concat(e[2]),"".concat(e[1],".").concat(e[3],".").concat(e[2],".").concat(e[0]),"".concat(e[2],".").concat(e[0],".").concat(e[1],".").concat(e[3]),"".concat(e[2],".").concat(e[0],".").concat(e[3],".").concat(e[1]),"".concat(e[2],".").concat(e[1],".").concat(e[0],".").concat(e[3]),"".concat(e[2],".").concat(e[1],".").concat(e[3],".").concat(e[0]),"".concat(e[2],".").concat(e[3],".").concat(e[0],".").concat(e[1]),"".concat(e[2],".").concat(e[3],".").concat(e[1],".").concat(e[0]),"".concat(e[3],".").concat(e[0],".").concat(e[1],".").concat(e[2]),"".concat(e[3],".").concat(e[0],".").concat(e[2],".").concat(e[1]),"".concat(e[3],".").concat(e[1],".").concat(e[0],".").concat(e[2]),"".concat(e[3],".").concat(e[1],".").concat(e[2],".").concat(e[0]),"".concat(e[3],".").concat(e[2],".").concat(e[0],".").concat(e[1]),"".concat(e[3],".").concat(e[2],".").concat(e[1],".").concat(e[0])]}var classNameCombinations={};function getClassNameCombinations(e){if(e.length===0||e.length===1)return e;var t=e.join(".");return classNameCombinations[t]||(classNameCombinations[t]=powerSetPermutations(e)),classNameCombinations[t]}function createStyleObject(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Ye=arguments.length>2?arguments[2]:void 0,tt=e.filter(function(nt){return nt!=="token"}),rt=getClassNameCombinations(tt);return rt.reduce(function(nt,at){return _objectSpread$K(_objectSpread$K({},nt),Ye[at])},t)}function createClassNameString(e){return e.join(" ")}function createChildren(e,t){var Ye=0;return function(tt){return Ye+=1,tt.map(function(rt,nt){return createElement$1({node:rt,stylesheet:e,useInlineStyles:t,key:"code-segment-".concat(Ye,"-").concat(nt)})})}}function createElement$1(e){var t=e.node,Ye=e.stylesheet,tt=e.style,rt=tt===void 0?{}:tt,nt=e.useInlineStyles,at=e.key,ot=t.properties,ct=t.type,Et=t.tagName,At=t.value;if(ct==="text")return At;if(Et){var Rt=createChildren(Ye,nt),jt;if(!nt)jt=_objectSpread$K(_objectSpread$K({},ot),{},{className:createClassNameString(ot.className)});else{var qt=Object.keys(Ye).reduce(function(Gt,Kt){return Kt.split(".").forEach(function(Yt){Gt.includes(Yt)||Gt.push(Yt)}),Gt},[]),Ut=ot.className&&ot.className.includes("token")?["token"]:[],Vt=ot.className&&Ut.concat(ot.className.filter(function(Gt){return!qt.includes(Gt)}));jt=_objectSpread$K(_objectSpread$K({},ot),{},{className:createClassNameString(Vt)||void 0,style:createStyleObject(ot.className,Object.assign({},ot.style,rt),Ye)})}var zt=Rt(t.children);return React.createElement(Et,_extends$z({key:at},jt),zt)}}const checkForListedLanguage=function(e,t){var Ye=e.listLanguages();return Ye.indexOf(t)!==-1};var _excluded$v=["language","children","style","customStyle","codeTagProps","useInlineStyles","showLineNumbers","showInlineLineNumbers","startingLineNumber","lineNumberContainerStyle","lineNumberStyle","wrapLines","wrapLongLines","lineProps","renderer","PreTag","CodeTag","code","astGenerator"];function ownKeys$K(e,t){var Ye=Object.keys(e);if(Object.getOwnPropertySymbols){var tt=Object.getOwnPropertySymbols(e);t&&(tt=tt.filter(function(rt){return Object.getOwnPropertyDescriptor(e,rt).enumerable})),Ye.push.apply(Ye,tt)}return Ye}function _objectSpread$J(e){for(var t=1;t<arguments.length;t++){var Ye=arguments[t]!=null?arguments[t]:{};t%2?ownKeys$K(Object(Ye),!0).forEach(function(tt){_defineProperty$N(e,tt,Ye[tt])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(Ye)):ownKeys$K(Object(Ye)).forEach(function(tt){Object.defineProperty(e,tt,Object.getOwnPropertyDescriptor(Ye,tt))})}return e}var newLineRegex=/\n/g;function getNewLines(e){return e.match(newLineRegex)}function getAllLineNumbers(e){var t=e.lines,Ye=e.startingLineNumber,tt=e.style;return t.map(function(rt,nt){var at=nt+Ye;return React.createElement("span",{key:"line-".concat(nt),className:"react-syntax-highlighter-line-number",style:typeof tt=="function"?tt(at):tt},"".concat(at,`
909
909
  `))})}function AllLineNumbers(e){var t=e.codeString,Ye=e.codeStyle,tt=e.containerStyle,rt=tt===void 0?{float:"left",paddingRight:"10px"}:tt,nt=e.numberStyle,at=nt===void 0?{}:nt,ot=e.startingLineNumber;return React.createElement("code",{style:Object.assign({},Ye,rt)},getAllLineNumbers({lines:t.replace(/\n$/,"").split(`
910
910
  `),style:at,startingLineNumber:ot}))}function getEmWidthOfNumber(e){return"".concat(e.toString().length,".25em")}function getInlineLineNumber(e,t){return{type:"element",tagName:"span",properties:{key:"line-number--".concat(e),className:["comment","linenumber","react-syntax-highlighter-line-number"],style:t},children:[{type:"text",value:e}]}}function assembleLineNumberStyles(e,t,Ye){var tt={display:"inline-block",minWidth:getEmWidthOfNumber(Ye),paddingRight:"1em",textAlign:"right",userSelect:"none"},rt=typeof e=="function"?e(t):e,nt=_objectSpread$J(_objectSpread$J({},tt),rt);return nt}function createLineElement(e){var t=e.children,Ye=e.lineNumber,tt=e.lineNumberStyle,rt=e.largestLineNumber,nt=e.showInlineLineNumbers,at=e.lineProps,ot=at===void 0?{}:at,ct=e.className,Et=ct===void 0?[]:ct,At=e.showLineNumbers,Rt=e.wrapLongLines,jt=e.wrapLines,qt=jt===void 0?!1:jt,Ut=qt?_objectSpread$J({},typeof ot=="function"?ot(Ye):ot):{};if(Ut.className=Ut.className?[].concat(_toConsumableArray(Ut.className.trim().split(/\s+/)),_toConsumableArray(Et)):Et,Ye&&nt){var Vt=assembleLineNumberStyles(tt,Ye,rt);t.unshift(getInlineLineNumber(Ye,Vt))}return Rt&At&&(Ut.style=_objectSpread$J({display:"flex"},Ut.style)),{type:"element",tagName:"span",properties:Ut,children:t}}function flattenCodeTree(e){for(var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],Ye=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],tt=0;tt<e.length;tt++){var rt=e[tt];if(rt.type==="text")Ye.push(createLineElement({children:[rt],className:_toConsumableArray(new Set(t))}));else if(rt.children){var nt=t.concat(rt.properties.className);flattenCodeTree(rt.children,nt).forEach(function(at){return Ye.push(at)})}}return Ye}function processLines(e,t,Ye,tt,rt,nt,at,ot,ct){var Et,At=flattenCodeTree(e.value),Rt=[],jt=-1,qt=0;function Ut(Jt,Qt){var er=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[];return createLineElement({children:Jt,lineNumber:Qt,lineNumberStyle:ot,largestLineNumber:at,showInlineLineNumbers:rt,lineProps:Ye,className:er,showLineNumbers:tt,wrapLongLines:ct,wrapLines:t})}function Vt(Jt,Qt){if(tt&&Qt&&rt){var er=assembleLineNumberStyles(ot,Qt,at);Jt.unshift(getInlineLineNumber(Qt,er))}return Jt}function zt(Jt,Qt){var er=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[];return t||er.length>0?Ut(Jt,Qt,er):Vt(Jt,Qt)}for(var Gt=function(){var Qt=At[qt],er=Qt.children[0].value,nr=getNewLines(er);if(nr){var ir=er.split(`