@json-to-office/jto 0.35.0 → 0.36.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 (20) hide show
  1. package/dist/cli.js +1 -1
  2. package/dist/client/assets/{HomePage-DgVVosCp.js → HomePage-ClplX49_.js} +4 -4
  3. package/dist/client/assets/{HomePage-DgVVosCp.js.map → HomePage-ClplX49_.js.map} +1 -1
  4. package/dist/client/assets/{JsonEditorPage-13oxEHfY.js → JsonEditorPage-VBBzZ5AM.js} +3 -3
  5. package/dist/client/assets/{JsonEditorPage-13oxEHfY.js.map → JsonEditorPage-VBBzZ5AM.js.map} +1 -1
  6. package/dist/client/assets/{MonacoPluginProvider-DiUyU9px.js → MonacoPluginProvider-DhTtNIjM.js} +3 -3
  7. package/dist/client/assets/{MonacoPluginProvider-DiUyU9px.js.map → MonacoPluginProvider-DhTtNIjM.js.map} +1 -1
  8. package/dist/client/assets/{editor-ouhvdGgK.js → editor-B4VqQFbE.js} +2 -2
  9. package/dist/client/assets/{editor-ouhvdGgK.js.map → editor-B4VqQFbE.js.map} +1 -1
  10. package/dist/client/assets/{editor-monaco-json-CTrPZKuA.js → editor-monaco-json-BHxvOGIG.js} +2 -2
  11. package/dist/client/assets/{editor-monaco-json-CTrPZKuA.js.map → editor-monaco-json-BHxvOGIG.js.map} +1 -1
  12. package/dist/client/assets/{editor-refs-store-DNQzN0_z.js → editor-refs-store-bPpACPf6.js} +2 -2
  13. package/dist/client/assets/{editor-refs-store-DNQzN0_z.js.map → editor-refs-store-bPpACPf6.js.map} +1 -1
  14. package/dist/client/assets/{index-CRuLxurM.js → index-D6iX-U9c.js} +4 -4
  15. package/dist/client/assets/index-D6iX-U9c.js.map +1 -0
  16. package/dist/client/assets/{preview-D3QYaLPp.js → preview-DElYSCd1.js} +2 -2
  17. package/dist/client/assets/{preview-D3QYaLPp.js.map → preview-DElYSCd1.js.map} +1 -1
  18. package/dist/client/index.html +1 -1
  19. package/package.json +3 -3
  20. package/dist/client/assets/index-CRuLxurM.js.map +0 -1
@@ -1,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/HomePage-DgVVosCp.js","assets/react-vendor-CTFDOf2G.js","assets/radix-ui-Bq-7y_Sq.js","assets/ui-vendor-DyQLnWB8.js","assets/editor-refs-store-DNQzN0_z.js","assets/state-vendor-ByFYl9bq.js","assets/MonacoPluginProvider-DiUyU9px.js","assets/monaco-editor-BcgxPCqT.js","assets/query-vendor-Df8-oete.js","assets/JsonEditorPage-13oxEHfY.js","assets/NotFoundPage-SV9cseZ6.js"])))=>i.map(i=>d[i]);
2
- var cc=Object.defineProperty;var lc=(e,n,i)=>n in e?cc(e,n,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[n]=i;var ft=(e,n,i)=>lc(e,typeof n!="symbol"?n+"":n,i);import{r as Q,j as w,O as dc,u as pc,B as uc,e as mc}from"./react-vendor-CTFDOf2G.js";import{Q as fc,a as gc}from"./query-vendor-Df8-oete.js";import{P as hc,C as Ho,A as bc,a as Oc,R as yc,T as xc}from"./radix-ui-Bq-7y_Sq.js";import{c as Sc}from"./ui-vendor-DyQLnWB8.js";import{loader as wc}from"./monaco-editor-BcgxPCqT.js";import{c as Lc}from"./state-vendor-ByFYl9bq.js";(function(){const n=document.createElement("link").relList;if(n&&n.supports&&n.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))r(o);new MutationObserver(o=>{for(const a of o)if(a.type==="childList")for(const s of a.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&r(s)}).observe(document,{childList:!0,subtree:!0});function i(o){const a={};return o.integrity&&(a.integrity=o.integrity),o.referrerPolicy&&(a.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?a.credentials="include":o.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function r(o){if(o.ep)return;o.ep=!0;const a=i(o);fetch(o.href,a)}})();const Pc="modulepreload",Ic=function(e){return"/"+e},bo={},hr=function(n,i,r){let o=Promise.resolve();if(i&&i.length>0){document.getElementsByTagName("link");const s=document.querySelector("meta[property=csp-nonce]"),l=(s==null?void 0:s.nonce)||(s==null?void 0:s.getAttribute("nonce"));o=Promise.allSettled(i.map(c=>{if(c=Ic(c),c in bo)return;bo[c]=!0;const m=c.endsWith(".css"),x=m?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${x}`))return;const L=document.createElement("link");if(L.rel=m?"stylesheet":Pc,m||(L.as="script"),L.crossOrigin="",L.href=c,l&&L.setAttribute("nonce",l),document.head.appendChild(L),m)return new Promise((I,A)=>{L.addEventListener("load",I),L.addEventListener("error",()=>A(new Error(`Unable to preload CSS for ${c}`)))})}))}function a(s){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=s,window.dispatchEvent(l),!l.defaultPrevented)throw s}return o.then(s=>{for(const l of s||[])l.status==="rejected"&&a(l.reason);return n().catch(a)})},Fc={theme:"system",setTheme:()=>null,resolvedTheme:"light"},Go=Q.createContext(Fc);function $c({children:e,defaultTheme:n="system",storageKey:i="vite-ui-theme",...r}){const[o,a]=Q.useState(()=>localStorage.getItem(i)||n),s=o==="system"?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":o;Q.useEffect(()=>{const c=window.document.documentElement;if(c.classList.remove("light","dark"),o==="system"){const m=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";c.classList.add(m);return}c.classList.add(o)},[o]);const l={theme:o,resolvedTheme:s,setTheme:c=>{localStorage.setItem(i,c),a(c)}};return w.jsx(Go.Provider,{...r,value:l,children:e})}const I0=()=>{const e=Q.useContext(Go);if(e===void 0)throw new Error("useTheme must be used within a ThemeProvider");return e},br="-",Nc=e=>{const n=Tc(e),{conflictingClassGroups:i,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:s=>{const l=s.split(br);return l[0]===""&&l.length!==1&&l.shift(),Wo(l,n)||Cc(s)},getConflictingClassGroupIds:(s,l)=>{const c=i[s]||[];return l&&r[s]?[...c,...r[s]]:c}}},Wo=(e,n)=>{var s;if(e.length===0)return n.classGroupId;const i=e[0],r=n.nextPart.get(i),o=r?Wo(e.slice(1),r):void 0;if(o)return o;if(n.validators.length===0)return;const a=e.join(br);return(s=n.validators.find(({validator:l})=>l(a)))==null?void 0:s.classGroupId},Oo=/^\[(.+)\]$/,Cc=e=>{if(Oo.test(e)){const n=Oo.exec(e)[1],i=n==null?void 0:n.substring(0,n.indexOf(":"));if(i)return"arbitrary.."+i}},Tc=e=>{const{theme:n,classGroups:i}=e,r={nextPart:new Map,validators:[]};for(const o in i)er(i[o],r,o,n);return r},er=(e,n,i,r)=>{e.forEach(o=>{if(typeof o=="string"){const a=o===""?n:yo(n,o);a.classGroupId=i;return}if(typeof o=="function"){if(Ac(o)){er(o(r),n,i,r);return}n.validators.push({validator:o,classGroupId:i});return}Object.entries(o).forEach(([a,s])=>{er(s,yo(n,a),i,r)})})},yo=(e,n)=>{let i=e;return n.split(br).forEach(r=>{i.nextPart.has(r)||i.nextPart.set(r,{nextPart:new Map,validators:[]}),i=i.nextPart.get(r)}),i},Ac=e=>e.isThemeGetter,jc=e=>{if(e<1)return{get:()=>{},set:()=>{}};let n=0,i=new Map,r=new Map;const o=(a,s)=>{i.set(a,s),n++,n>e&&(n=0,r=i,i=new Map)};return{get(a){let s=i.get(a);if(s!==void 0)return s;if((s=r.get(a))!==void 0)return o(a,s),s},set(a,s){i.has(a)?i.set(a,s):o(a,s)}}},tr="!",nr=":",Rc=nr.length,vc=e=>{const{prefix:n,experimentalParseClassName:i}=e;let r=o=>{const a=[];let s=0,l=0,c=0,m;for(let h=0;h<o.length;h++){let u=o[h];if(s===0&&l===0){if(u===nr){a.push(o.slice(c,h)),c=h+Rc;continue}if(u==="/"){m=h;continue}}u==="["?s++:u==="]"?s--:u==="("?l++:u===")"&&l--}const x=a.length===0?o:o.substring(c),L=Uc(x),I=L!==x,A=m&&m>c?m-c:void 0;return{modifiers:a,hasImportantModifier:I,baseClassName:L,maybePostfixModifierPosition:A}};if(n){const o=n+nr,a=r;r=s=>s.startsWith(o)?a(s.substring(o.length)):{isExternal:!0,modifiers:[],hasImportantModifier:!1,baseClassName:s,maybePostfixModifierPosition:void 0}}if(i){const o=r;r=a=>i({className:a,parseClassName:o})}return r},Uc=e=>e.endsWith(tr)?e.substring(0,e.length-1):e.startsWith(tr)?e.substring(1):e,Mc=e=>{const n=Object.fromEntries(e.orderSensitiveModifiers.map(r=>[r,!0]));return r=>{if(r.length<=1)return r;const o=[];let a=[];return r.forEach(s=>{s[0]==="["||n[s]?(o.push(...a.sort(),s),a=[]):a.push(s)}),o.push(...a.sort()),o}},kc=e=>({cache:jc(e.cacheSize),parseClassName:vc(e),sortModifiers:Mc(e),...Nc(e)}),Bc=/\s+/,Dc=(e,n)=>{const{parseClassName:i,getClassGroupId:r,getConflictingClassGroupIds:o,sortModifiers:a}=n,s=[],l=e.trim().split(Bc);let c="";for(let m=l.length-1;m>=0;m-=1){const x=l[m],{isExternal:L,modifiers:I,hasImportantModifier:A,baseClassName:h,maybePostfixModifierPosition:u}=i(x);if(L){c=x+(c.length>0?" "+c:c);continue}let P=!!u,j=r(P?h.substring(0,u):h);if(!j){if(!P){c=x+(c.length>0?" "+c:c);continue}if(j=r(h),!j){c=x+(c.length>0?" "+c:c);continue}P=!1}const re=a(I).join(":"),Ze=A?re+tr:re,Qe=Ze+j;if(s.includes(Qe))continue;s.push(Qe);const E=o(j,P);for(let oe=0;oe<E.length;++oe){const ut=E[oe];s.push(Ze+ut)}c=x+(c.length>0?" "+c:c)}return c};function Ec(){let e=0,n,i,r="";for(;e<arguments.length;)(n=arguments[e++])&&(i=qo(n))&&(r&&(r+=" "),r+=i);return r}const qo=e=>{if(typeof e=="string")return e;let n,i="";for(let r=0;r<e.length;r++)e[r]&&(n=qo(e[r]))&&(i&&(i+=" "),i+=n);return i};function zc(e,...n){let i,r,o,a=s;function s(c){const m=n.reduce((x,L)=>L(x),e());return i=kc(m),r=i.cache.get,o=i.cache.set,a=l,l(c)}function l(c){const m=r(c);if(m)return m;const x=Dc(c,i);return o(c,x),x}return function(){return a(Ec.apply(null,arguments))}}const J=e=>{const n=i=>i[e]||[];return n.isThemeGetter=!0,n},Jo=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Xo=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Kc=/^\d+\/\d+$/,_c=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Hc=/\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$/,Gc=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/,Wc=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,qc=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,jt=e=>Kc.test(e),N=e=>!!e&&!Number.isNaN(Number(e)),gt=e=>!!e&&Number.isInteger(Number(e)),xo=e=>e.endsWith("%")&&N(e.slice(0,-1)),et=e=>_c.test(e),Jc=()=>!0,Xc=e=>Hc.test(e)&&!Gc.test(e),Or=()=>!1,Vc=e=>Wc.test(e),Yc=e=>qc.test(e),Zc=e=>!b(e)&&!O(e),Qc=e=>Wt(e,Zo,Or),b=e=>Jo.test(e),ht=e=>Wt(e,Qo,Xc),Hi=e=>Wt(e,dl,N),el=e=>Wt(e,Vo,Or),tl=e=>Wt(e,Yo,Yc),nl=e=>Wt(e,Or,Vc),O=e=>Xo.test(e),Bn=e=>qt(e,Qo),il=e=>qt(e,pl),rl=e=>qt(e,Vo),ol=e=>qt(e,Zo),al=e=>qt(e,Yo),sl=e=>qt(e,ul,!0),Wt=(e,n,i)=>{const r=Jo.exec(e);return r?r[1]?n(r[1]):i(r[2]):!1},qt=(e,n,i=!1)=>{const r=Xo.exec(e);return r?r[1]?n(r[1]):i:!1},Vo=e=>e==="position",cl=new Set(["image","url"]),Yo=e=>cl.has(e),ll=new Set(["length","size","percentage"]),Zo=e=>ll.has(e),Qo=e=>e==="length",dl=e=>e==="number",pl=e=>e==="family-name",ul=e=>e==="shadow",ml=()=>{const e=J("color"),n=J("font"),i=J("text"),r=J("font-weight"),o=J("tracking"),a=J("leading"),s=J("breakpoint"),l=J("container"),c=J("spacing"),m=J("radius"),x=J("shadow"),L=J("inset-shadow"),I=J("drop-shadow"),A=J("blur"),h=J("perspective"),u=J("aspect"),P=J("ease"),j=J("animate"),re=()=>["auto","avoid","all","avoid-page","page","left","right","column"],Ze=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],Qe=()=>["auto","hidden","clip","visible","scroll"],E=()=>["auto","contain","none"],oe=()=>[jt,"px","full","auto",O,b,c],ut=()=>[gt,"none","subgrid",O,b],jn=()=>["auto",{span:["full",gt,O,b]},O,b],Rn=()=>[gt,"auto",O,b],mo=()=>["auto","min","max","fr",O,b],Ei=()=>[O,b,c],zi=()=>["start","end","center","between","around","evenly","stretch","baseline"],At=()=>["start","end","center","stretch"],M=()=>[O,b,c],ze=()=>["px",...M()],Ke=()=>["px","auto",...M()],mt=()=>[jt,"auto","px","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",O,b,c],k=()=>[e,O,b],Ki=()=>[xo,ht],ce=()=>["","none","full",m,O,b],ge=()=>["",N,Bn,ht],vn=()=>["solid","dashed","dotted","double"],fo=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],go=()=>["","none",A,O,b],ho=()=>["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",O,b],Un=()=>["none",N,O,b],Mn=()=>["none",N,O,b],_i=()=>[N,O,b],kn=()=>[jt,"full","px",O,b,c];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[et],breakpoint:[et],color:[Jc],container:[et],"drop-shadow":[et],ease:["in","out","in-out"],font:[Zc],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[et],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[et],shadow:[et],spacing:[N],text:[et],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",jt,b,O,u]}],container:["container"],columns:[{columns:[N,b,O,l]}],"break-after":[{"break-after":re()}],"break-before":[{"break-before":re()}],"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:[...Ze(),b,O]}],overflow:[{overflow:Qe()}],"overflow-x":[{"overflow-x":Qe()}],"overflow-y":[{"overflow-y":Qe()}],overscroll:[{overscroll:E()}],"overscroll-x":[{"overscroll-x":E()}],"overscroll-y":[{"overscroll-y":E()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:oe()}],"inset-x":[{"inset-x":oe()}],"inset-y":[{"inset-y":oe()}],start:[{start:oe()}],end:[{end:oe()}],top:[{top:oe()}],right:[{right:oe()}],bottom:[{bottom:oe()}],left:[{left:oe()}],visibility:["visible","invisible","collapse"],z:[{z:[gt,"auto",O,b]}],basis:[{basis:[jt,"full","auto",O,b,l,c]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[N,jt,"auto","initial","none",b]}],grow:[{grow:["",N,O,b]}],shrink:[{shrink:["",N,O,b]}],order:[{order:[gt,"first","last","none",O,b]}],"grid-cols":[{"grid-cols":ut()}],"col-start-end":[{col:jn()}],"col-start":[{"col-start":Rn()}],"col-end":[{"col-end":Rn()}],"grid-rows":[{"grid-rows":ut()}],"row-start-end":[{row:jn()}],"row-start":[{"row-start":Rn()}],"row-end":[{"row-end":Rn()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":mo()}],"auto-rows":[{"auto-rows":mo()}],gap:[{gap:Ei()}],"gap-x":[{"gap-x":Ei()}],"gap-y":[{"gap-y":Ei()}],"justify-content":[{justify:[...zi(),"normal"]}],"justify-items":[{"justify-items":[...At(),"normal"]}],"justify-self":[{"justify-self":["auto",...At()]}],"align-content":[{content:["normal",...zi()]}],"align-items":[{items:[...At(),"baseline"]}],"align-self":[{self:["auto",...At(),"baseline"]}],"place-content":[{"place-content":zi()}],"place-items":[{"place-items":[...At(),"baseline"]}],"place-self":[{"place-self":["auto",...At()]}],p:[{p:ze()}],px:[{px:ze()}],py:[{py:ze()}],ps:[{ps:ze()}],pe:[{pe:ze()}],pt:[{pt:ze()}],pr:[{pr:ze()}],pb:[{pb:ze()}],pl:[{pl:ze()}],m:[{m:Ke()}],mx:[{mx:Ke()}],my:[{my:Ke()}],ms:[{ms:Ke()}],me:[{me:Ke()}],mt:[{mt:Ke()}],mr:[{mr:Ke()}],mb:[{mb:Ke()}],ml:[{ml:Ke()}],"space-x":[{"space-x":M()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":M()}],"space-y-reverse":["space-y-reverse"],size:[{size:mt()}],w:[{w:[l,"screen",...mt()]}],"min-w":[{"min-w":[l,"screen","none",...mt()]}],"max-w":[{"max-w":[l,"screen","none","prose",{screen:[s]},...mt()]}],h:[{h:["screen",...mt()]}],"min-h":[{"min-h":["screen","none",...mt()]}],"max-h":[{"max-h":["screen",...mt()]}],"font-size":[{text:["base",i,Bn,ht]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[r,O,Hi]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",xo,b]}],"font-family":[{font:[il,b,n]}],"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:[o,O,b]}],"line-clamp":[{"line-clamp":[N,"none",O,Hi]}],leading:[{leading:[O,b,a,c]}],"list-image":[{"list-image":["none",O,b]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",O,b]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:k()}],"text-color":[{text:k()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...vn(),"wavy"]}],"text-decoration-thickness":[{decoration:[N,"from-font","auto",O,ht]}],"text-decoration-color":[{decoration:k()}],"underline-offset":[{"underline-offset":[N,"auto",O,b]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:["px",...M()]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",O,b]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",O,b]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...Ze(),rl,el]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","space","round"]}]}],"bg-size":[{bg:["auto","cover","contain",ol,Qc]}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},gt,O,b],radial:["",O,b],conic:[gt,O,b]},al,tl]}],"bg-color":[{bg:k()}],"gradient-from-pos":[{from:Ki()}],"gradient-via-pos":[{via:Ki()}],"gradient-to-pos":[{to:Ki()}],"gradient-from":[{from:k()}],"gradient-via":[{via:k()}],"gradient-to":[{to:k()}],rounded:[{rounded:ce()}],"rounded-s":[{"rounded-s":ce()}],"rounded-e":[{"rounded-e":ce()}],"rounded-t":[{"rounded-t":ce()}],"rounded-r":[{"rounded-r":ce()}],"rounded-b":[{"rounded-b":ce()}],"rounded-l":[{"rounded-l":ce()}],"rounded-ss":[{"rounded-ss":ce()}],"rounded-se":[{"rounded-se":ce()}],"rounded-ee":[{"rounded-ee":ce()}],"rounded-es":[{"rounded-es":ce()}],"rounded-tl":[{"rounded-tl":ce()}],"rounded-tr":[{"rounded-tr":ce()}],"rounded-br":[{"rounded-br":ce()}],"rounded-bl":[{"rounded-bl":ce()}],"border-w":[{border:ge()}],"border-w-x":[{"border-x":ge()}],"border-w-y":[{"border-y":ge()}],"border-w-s":[{"border-s":ge()}],"border-w-e":[{"border-e":ge()}],"border-w-t":[{"border-t":ge()}],"border-w-r":[{"border-r":ge()}],"border-w-b":[{"border-b":ge()}],"border-w-l":[{"border-l":ge()}],"divide-x":[{"divide-x":ge()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":ge()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...vn(),"hidden","none"]}],"divide-style":[{divide:[...vn(),"hidden","none"]}],"border-color":[{border:k()}],"border-color-x":[{"border-x":k()}],"border-color-y":[{"border-y":k()}],"border-color-s":[{"border-s":k()}],"border-color-e":[{"border-e":k()}],"border-color-t":[{"border-t":k()}],"border-color-r":[{"border-r":k()}],"border-color-b":[{"border-b":k()}],"border-color-l":[{"border-l":k()}],"divide-color":[{divide:k()}],"outline-style":[{outline:[...vn(),"none","hidden"]}],"outline-offset":[{"outline-offset":[N,O,b]}],"outline-w":[{outline:["",N,Bn,ht]}],"outline-color":[{outline:[e]}],shadow:[{shadow:["","none",x,sl,nl]}],"shadow-color":[{shadow:k()}],"inset-shadow":[{"inset-shadow":["none",O,b,L]}],"inset-shadow-color":[{"inset-shadow":k()}],"ring-w":[{ring:ge()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:k()}],"ring-offset-w":[{"ring-offset":[N,ht]}],"ring-offset-color":[{"ring-offset":k()}],"inset-ring-w":[{"inset-ring":ge()}],"inset-ring-color":[{"inset-ring":k()}],opacity:[{opacity:[N,O,b]}],"mix-blend":[{"mix-blend":[...fo(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":fo()}],filter:[{filter:["","none",O,b]}],blur:[{blur:go()}],brightness:[{brightness:[N,O,b]}],contrast:[{contrast:[N,O,b]}],"drop-shadow":[{"drop-shadow":["","none",I,O,b]}],grayscale:[{grayscale:["",N,O,b]}],"hue-rotate":[{"hue-rotate":[N,O,b]}],invert:[{invert:["",N,O,b]}],saturate:[{saturate:[N,O,b]}],sepia:[{sepia:["",N,O,b]}],"backdrop-filter":[{"backdrop-filter":["","none",O,b]}],"backdrop-blur":[{"backdrop-blur":go()}],"backdrop-brightness":[{"backdrop-brightness":[N,O,b]}],"backdrop-contrast":[{"backdrop-contrast":[N,O,b]}],"backdrop-grayscale":[{"backdrop-grayscale":["",N,O,b]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[N,O,b]}],"backdrop-invert":[{"backdrop-invert":["",N,O,b]}],"backdrop-opacity":[{"backdrop-opacity":[N,O,b]}],"backdrop-saturate":[{"backdrop-saturate":[N,O,b]}],"backdrop-sepia":[{"backdrop-sepia":["",N,O,b]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":M()}],"border-spacing-x":[{"border-spacing-x":M()}],"border-spacing-y":[{"border-spacing-y":M()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",O,b]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[N,"initial",O,b]}],ease:[{ease:["linear","initial",P,O,b]}],delay:[{delay:[N,O,b]}],animate:[{animate:["none",j,O,b]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[h,O,b]}],"perspective-origin":[{"perspective-origin":ho()}],rotate:[{rotate:Un()}],"rotate-x":[{"rotate-x":Un()}],"rotate-y":[{"rotate-y":Un()}],"rotate-z":[{"rotate-z":Un()}],scale:[{scale:Mn()}],"scale-x":[{"scale-x":Mn()}],"scale-y":[{"scale-y":Mn()}],"scale-z":[{"scale-z":Mn()}],"scale-3d":["scale-3d"],skew:[{skew:_i()}],"skew-x":[{"skew-x":_i()}],"skew-y":[{"skew-y":_i()}],transform:[{transform:[O,b,"","none","gpu","cpu"]}],"transform-origin":[{origin:ho()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:kn()}],"translate-x":[{"translate-x":kn()}],"translate-y":[{"translate-y":kn()}],"translate-z":[{"translate-z":kn()}],"translate-none":["translate-none"],accent:[{accent:k()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:k()}],"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",O,b]}],"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":M()}],"scroll-mx":[{"scroll-mx":M()}],"scroll-my":[{"scroll-my":M()}],"scroll-ms":[{"scroll-ms":M()}],"scroll-me":[{"scroll-me":M()}],"scroll-mt":[{"scroll-mt":M()}],"scroll-mr":[{"scroll-mr":M()}],"scroll-mb":[{"scroll-mb":M()}],"scroll-ml":[{"scroll-ml":M()}],"scroll-p":[{"scroll-p":M()}],"scroll-px":[{"scroll-px":M()}],"scroll-py":[{"scroll-py":M()}],"scroll-ps":[{"scroll-ps":M()}],"scroll-pe":[{"scroll-pe":M()}],"scroll-pt":[{"scroll-pt":M()}],"scroll-pr":[{"scroll-pr":M()}],"scroll-pb":[{"scroll-pb":M()}],"scroll-pl":[{"scroll-pl":M()}],"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",O,b]}],fill:[{fill:["none",...k()]}],"stroke-w":[{stroke:[N,Bn,ht,Hi]}],stroke:[{stroke:["none",...k()]}],"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-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-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:["before","after","placeholder","file","marker","selection","first-line","first-letter","backdrop","*","**"]}},fl=zc(ml);function it(...e){return fl(Sc(e))}const gl=Oc,F0=yc,$0=xc,hl=Q.forwardRef(({className:e,sideOffset:n=4,children:i,...r},o)=>w.jsx(hc,{children:w.jsxs(Ho,{ref:o,"data-slot":"tooltip-content",sideOffset:n,className:it("bg-primary text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit text-balance rounded-md px-3 py-1.5 text-xs",e),...r,children:[i,w.jsx(bc,{className:"z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-primary fill-primary"})]})}));hl.displayName=Ho.displayName;const ea=Q.forwardRef(({className:e,variant:n="default",title:i,description:r,action:o,open:a,onOpenChange:s,...l},c)=>w.jsx("div",{ref:c,className:it("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-lg border p-6 pr-8 shadow-lg transition-all",n==="default"&&"border bg-background text-foreground",n==="destructive"&&"destructive group border-destructive bg-destructive text-destructive-foreground",e),...l}));ea.displayName="Toast";const bl=Q.forwardRef(({className:e,...n},i)=>w.jsx("button",{ref:i,className:it("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",e),...n}));bl.displayName="ToastAction";const ta=Q.forwardRef(({className:e,...n},i)=>w.jsx("button",{ref:i,type:"button",className:it("absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-destructive-foreground/70 group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive-foreground/40",e),"toast-close":"",...n,children:w.jsxs("svg",{className:"h-4 w-4",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[w.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),w.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})}));ta.displayName="ToastClose";const na=Q.forwardRef(({className:e,...n},i)=>w.jsx("div",{ref:i,className:it("text-sm font-semibold",e),...n}));na.displayName="ToastTitle";const ia=Q.forwardRef(({className:e,...n},i)=>w.jsx("div",{ref:i,className:it("text-sm opacity-90",e),...n}));ia.displayName="ToastDescription";const ra=Q.forwardRef(({className:e,...n},i)=>w.jsx("ol",{ref:i,className:it("fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",e),...n}));ra.displayName="ToastViewport";const Ol=1,oa=5e3;let Gi=0;function yl(){return Gi=(Gi+1)%Number.MAX_SAFE_INTEGER,Gi.toString()}const Wi=new Map,So=e=>{if(Wi.has(e))return;const n=setTimeout(()=>{Wi.delete(e),cn({type:"REMOVE_TOAST",toastId:e})},oa);Wi.set(e,n)},xl=(e,n)=>{switch(n.type){case"ADD_TOAST":return{...e,toasts:[n.toast,...e.toasts].slice(0,Ol)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(i=>i.id===n.toast.id?{...i,...n.toast}:i)};case"DISMISS_TOAST":{const{toastId:i}=n;return i?So(i):e.toasts.forEach(r=>{So(r.id)}),{...e,toasts:e.toasts.map(r=>r.id===i||i===void 0?{...r,open:!1}:r)}}case"REMOVE_TOAST":return n.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(i=>i.id!==n.toastId)}}},_n=[];let Hn={toasts:[]};function cn(e){Hn=xl(Hn,e),_n.forEach(n=>{n(Hn)})}function Sl({...e}){const n=yl(),i=o=>cn({type:"UPDATE_TOAST",toast:{...o,id:n}}),r=()=>cn({type:"DISMISS_TOAST",toastId:n});return cn({type:"ADD_TOAST",toast:{...e,id:n,open:!0,onOpenChange:o=>{o||r()}}}),setTimeout(()=>{r()},oa),{id:n,dismiss:r,update:i}}function wl(){const[e,n]=Q.useState(Hn);return Q.useEffect(()=>(_n.push(n),()=>{const i=_n.indexOf(n);i>-1&&_n.splice(i,1)}),[e]),{...e,toast:Sl,dismiss:i=>cn({type:"DISMISS_TOAST",toastId:i})}}function Ll(){const{toasts:e,dismiss:n}=wl();return w.jsx(ra,{children:e.map(function({id:i,title:r,description:o,action:a,open:s,...l}){return s===!1?null:w.jsxs(ea,{...l,children:[w.jsxs("div",{className:"grid gap-1",children:[r&&w.jsx(na,{children:r}),o&&w.jsx(ia,{children:o})]}),a,w.jsx(ta,{onClick:c=>{c.preventDefault(),c.stopPropagation(),n(i)}})]},i)})})}function Pl(){return w.jsx($c,{defaultTheme:"system",storageKey:"vite-ui-theme",children:w.jsxs(gl,{delayDuration:300,children:[w.jsx("div",{className:"min-h-screen bg-background font-sans antialiased",children:w.jsx(dc,{})}),w.jsx(Ll,{})]})})}function Il({className:e,size:n="md",variant:i="primary",...r}){const o={sm:"h-4 w-4",md:"h-6 w-6",lg:"h-8 w-8"},a={primary:"border-primary",secondary:"border-secondary",muted:"border-muted-foreground"};return w.jsx("div",{className:it("animate-spin rounded-full border-2 border-solid",o[n],a[i],e),style:{borderRightColor:"transparent"},...r})}const Fl=Q.lazy(()=>hr(()=>import("./HomePage-DgVVosCp.js").then(e=>e.H),__vite__mapDeps([0,1,2,3,4,5,6,7,8])).then(e=>({default:e.HomePage}))),$l=Q.lazy(()=>hr(()=>import("./JsonEditorPage-13oxEHfY.js"),__vite__mapDeps([9,1,6,5,7,8,2,3])).then(e=>({default:e.JsonEditorPage}))),Nl=Q.lazy(()=>hr(()=>import("./NotFoundPage-SV9cseZ6.js"),__vite__mapDeps([10,1])).then(e=>({default:e.NotFoundPage}))),qi=({children:e})=>w.jsx(Q.Suspense,{fallback:w.jsx("div",{className:"flex items-center justify-center h-screen",children:w.jsx(Il,{className:"w-8 h-8"})}),children:e}),Cl=[{path:"/",element:w.jsx(Pl,{}),children:[{index:!0,element:w.jsx(qi,{children:w.jsx(Fl,{})})},{path:"json-editor",element:w.jsx(qi,{children:w.jsx($l,{})})}]},{path:"*",element:w.jsx(qi,{children:w.jsx(Nl,{})})}];function Tl(){return pc(Cl)}const Al=new fc({defaultOptions:{queries:{staleTime:1e3*60*5,retry:1}}});function jl(){return w.jsx(gc,{client:Al,children:w.jsx(uc,{children:w.jsx(Tl,{})})})}function Rl(e){return H(e)&&!fe(e)&&!On(e)&&Symbol.asyncIterator in e}function fe(e){return Array.isArray(e)}function aa(e){return typeof e=="bigint"}function bn(e){return typeof e=="boolean"}function yr(e){return e instanceof globalThis.Date}function vl(e){return typeof e=="function"}function Ul(e){return H(e)&&!fe(e)&&!On(e)&&Symbol.iterator in e}function Ml(e){return e===null}function Be(e){return typeof e=="number"}function H(e){return typeof e=="object"&&e!==null}function sa(e){return e instanceof globalThis.RegExp}function z(e){return typeof e=="string"}function kl(e){return typeof e=="symbol"}function On(e){return e instanceof globalThis.Uint8Array}function K(e){return e===void 0}function Bl(e){return e.map(n=>Jn(n))}function Dl(e){return new Date(e.getTime())}function El(e){return new Uint8Array(e)}function zl(e){return new RegExp(e.source,e.flags)}function Kl(e){const n={};for(const i of Object.getOwnPropertyNames(e))n[i]=Jn(e[i]);for(const i of Object.getOwnPropertySymbols(e))n[i]=Jn(e[i]);return n}function Jn(e){return fe(e)?Bl(e):yr(e)?Dl(e):On(e)?El(e):sa(e)?zl(e):H(e)?Kl(e):e}function he(e){return Jn(e)}function xr(e,n){return he(n===void 0?e:{...n,...e})}function ca(e){return De(e)&&globalThis.Symbol.asyncIterator in e}function la(e){return De(e)&&globalThis.Symbol.iterator in e}function da(e){return e instanceof globalThis.Promise}function yn(e){return e instanceof Date&&globalThis.Number.isFinite(e.getTime())}function _l(e){return e instanceof globalThis.Map}function Hl(e){return e instanceof globalThis.Set}function Gl(e){return globalThis.ArrayBuffer.isView(e)}function Sr(e){return e instanceof globalThis.Uint8Array}function Wl(e,n){return n in e}function De(e){return e!==null&&typeof e=="object"}function Ee(e){return globalThis.Array.isArray(e)&&!globalThis.ArrayBuffer.isView(e)}function rt(e){return e===void 0}function ei(e){return e===null}function ti(e){return typeof e=="boolean"}function He(e){return typeof e=="number"}function pa(e){return globalThis.Number.isInteger(e)}function ni(e){return typeof e=="bigint"}function ke(e){return typeof e=="string"}function wr(e){return typeof e=="function"}function ii(e){return typeof e=="symbol"}function ql(e){return ni(e)||ti(e)||ei(e)||He(e)||ke(e)||ii(e)||rt(e)}var be;(function(e){e.InstanceMode="default",e.ExactOptionalPropertyTypes=!1,e.AllowArrayObject=!1,e.AllowNaN=!1,e.AllowNullVoid=!1;function n(s,l){return e.ExactOptionalPropertyTypes?l in s:s[l]!==void 0}e.IsExactOptionalProperty=n;function i(s){const l=De(s);return e.AllowArrayObject?l:l&&!Ee(s)}e.IsObjectLike=i;function r(s){return i(s)&&!(s instanceof Date)&&!(s instanceof Uint8Array)}e.IsRecordLike=r;function o(s){return e.AllowNaN?He(s):Number.isFinite(s)}e.IsNumberLike=o;function a(s){const l=rt(s);return e.AllowNullVoid?l||s===null:l}e.IsVoidLike=a})(be||(be={}));function Jl(e){return globalThis.Object.freeze(e).map(n=>Xn(n))}function Xl(e){const n={};for(const i of Object.getOwnPropertyNames(e))n[i]=Xn(e[i]);for(const i of Object.getOwnPropertySymbols(e))n[i]=Xn(e[i]);return globalThis.Object.freeze(n)}function Xn(e){return fe(e)?Jl(e):yr(e)?e:On(e)?e:sa(e)?e:H(e)?Xl(e):e}function f(e,n){const i=n!==void 0?{...n,...e}:e;switch(be.InstanceMode){case"freeze":return Xn(i);case"clone":return he(i);default:return i}}class ve extends Error{constructor(n){super(n)}}const Le=Symbol.for("TypeBox.Transform"),xn=Symbol.for("TypeBox.Readonly"),Xe=Symbol.for("TypeBox.Optional"),ri=Symbol.for("TypeBox.Hint"),y=Symbol.for("TypeBox.Kind");function Lr(e){return H(e)&&e[xn]==="Readonly"}function ot(e){return H(e)&&e[Xe]==="Optional"}function ua(e){return C(e,"Any")}function ma(e){return C(e,"Argument")}function Jt(e){return C(e,"Array")}function oi(e){return C(e,"AsyncIterator")}function ai(e){return C(e,"BigInt")}function Sn(e){return C(e,"Boolean")}function Xt(e){return C(e,"Computed")}function Vt(e){return C(e,"Constructor")}function Vl(e){return C(e,"Date")}function Yt(e){return C(e,"Function")}function Zt(e){return C(e,"Integer")}function Ie(e){return C(e,"Intersect")}function si(e){return C(e,"Iterator")}function C(e,n){return H(e)&&y in e&&e[y]===n}function fa(e){return bn(e)||Be(e)||z(e)}function xt(e){return C(e,"Literal")}function St(e){return C(e,"MappedKey")}function Se(e){return C(e,"MappedResult")}function wn(e){return C(e,"Never")}function Yl(e){return C(e,"Not")}function Pr(e){return C(e,"Null")}function Qt(e){return C(e,"Number")}function Ue(e){return C(e,"Object")}function ci(e){return C(e,"Promise")}function li(e){return C(e,"Record")}function ue(e){return C(e,"Ref")}function ga(e){return C(e,"RegExp")}function Ln(e){return C(e,"String")}function Ir(e){return C(e,"Symbol")}function wt(e){return C(e,"TemplateLiteral")}function Zl(e){return C(e,"This")}function di(e){return H(e)&&Le in e}function Lt(e){return C(e,"Tuple")}function Fr(e){return C(e,"Undefined")}function Z(e){return C(e,"Union")}function Ql(e){return C(e,"Uint8Array")}function ed(e){return C(e,"Unknown")}function td(e){return C(e,"Unsafe")}function nd(e){return C(e,"Void")}function ha(e){return H(e)&&y in e&&z(e[y])}function We(e){return ua(e)||ma(e)||Jt(e)||Sn(e)||ai(e)||oi(e)||Xt(e)||Vt(e)||Vl(e)||Yt(e)||Zt(e)||Ie(e)||si(e)||xt(e)||St(e)||Se(e)||wn(e)||Yl(e)||Pr(e)||Qt(e)||Ue(e)||ci(e)||li(e)||ue(e)||ga(e)||Ln(e)||Ir(e)||wt(e)||Zl(e)||Lt(e)||Fr(e)||Z(e)||Ql(e)||ed(e)||td(e)||nd(e)||ha(e)}const id=["Argument","Any","Array","AsyncIterator","BigInt","Boolean","Computed","Constructor","Date","Enum","Function","Integer","Intersect","Iterator","Literal","MappedKey","MappedResult","Not","Null","Number","Object","Promise","Record","Ref","RegExp","String","Symbol","TemplateLiteral","This","Tuple","Undefined","Union","Uint8Array","Unknown","Void"];function ba(e){try{return new RegExp(e),!0}catch{return!1}}function $r(e){if(!z(e))return!1;for(let n=0;n<e.length;n++){const i=e.charCodeAt(n);if(i>=7&&i<=13||i===27||i===127)return!1}return!0}function Oa(e){return Nr(e)||te(e)}function an(e){return K(e)||aa(e)}function U(e){return K(e)||Be(e)}function Nr(e){return K(e)||bn(e)}function v(e){return K(e)||z(e)}function rd(e){return K(e)||z(e)&&$r(e)&&ba(e)}function od(e){return K(e)||z(e)&&$r(e)}function ya(e){return K(e)||te(e)}function Vn(e){return H(e)&&e[Xe]==="Optional"}function Te(e){return T(e,"Any")&&v(e.$id)}function ad(e){return T(e,"Argument")&&Be(e.index)}function Pt(e){return T(e,"Array")&&e.type==="array"&&v(e.$id)&&te(e.items)&&U(e.minItems)&&U(e.maxItems)&&Nr(e.uniqueItems)&&ya(e.contains)&&U(e.minContains)&&U(e.maxContains)}function Cr(e){return T(e,"AsyncIterator")&&e.type==="AsyncIterator"&&v(e.$id)&&te(e.items)}function pi(e){return T(e,"BigInt")&&e.type==="bigint"&&v(e.$id)&&an(e.exclusiveMaximum)&&an(e.exclusiveMinimum)&&an(e.maximum)&&an(e.minimum)&&an(e.multipleOf)}function It(e){return T(e,"Boolean")&&e.type==="boolean"&&v(e.$id)}function sd(e){return T(e,"Computed")&&z(e.target)&&fe(e.parameters)&&e.parameters.every(n=>te(n))}function ui(e){return T(e,"Constructor")&&e.type==="Constructor"&&v(e.$id)&&fe(e.parameters)&&e.parameters.every(n=>te(n))&&te(e.returns)}function mi(e){return T(e,"Date")&&e.type==="Date"&&v(e.$id)&&U(e.exclusiveMaximumTimestamp)&&U(e.exclusiveMinimumTimestamp)&&U(e.maximumTimestamp)&&U(e.minimumTimestamp)&&U(e.multipleOfTimestamp)}function fi(e){return T(e,"Function")&&e.type==="Function"&&v(e.$id)&&fe(e.parameters)&&e.parameters.every(n=>te(n))&&te(e.returns)}function Ve(e){return T(e,"Integer")&&e.type==="integer"&&v(e.$id)&&U(e.exclusiveMaximum)&&U(e.exclusiveMinimum)&&U(e.maximum)&&U(e.minimum)&&U(e.multipleOf)}function xa(e){return H(e)&&Object.entries(e).every(([n,i])=>$r(n)&&te(i))}function Ft(e){return T(e,"Intersect")&&!(z(e.type)&&e.type!=="object")&&fe(e.allOf)&&e.allOf.every(n=>te(n)&&!md(n))&&v(e.type)&&(Nr(e.unevaluatedProperties)||ya(e.unevaluatedProperties))&&v(e.$id)}function Tr(e){return T(e,"Iterator")&&e.type==="Iterator"&&v(e.$id)&&te(e.items)}function T(e,n){return H(e)&&y in e&&e[y]===n}function Sa(e){return at(e)&&z(e.const)}function wa(e){return at(e)&&Be(e.const)}function La(e){return at(e)&&bn(e.const)}function at(e){return T(e,"Literal")&&v(e.$id)&&cd(e.const)}function cd(e){return bn(e)||Be(e)||z(e)}function ld(e){return T(e,"MappedKey")&&fe(e.keys)&&e.keys.every(n=>Be(n)||z(n))}function dd(e){return T(e,"MappedResult")&&xa(e.properties)}function st(e){return T(e,"Never")&&H(e.not)&&Object.getOwnPropertyNames(e.not).length===0}function Et(e){return T(e,"Not")&&te(e.not)}function Ar(e){return T(e,"Null")&&e.type==="null"&&v(e.$id)}function pe(e){return T(e,"Number")&&e.type==="number"&&v(e.$id)&&U(e.exclusiveMaximum)&&U(e.exclusiveMinimum)&&U(e.maximum)&&U(e.minimum)&&U(e.multipleOf)}function B(e){return T(e,"Object")&&e.type==="object"&&v(e.$id)&&xa(e.properties)&&Oa(e.additionalProperties)&&U(e.minProperties)&&U(e.maxProperties)}function jr(e){return T(e,"Promise")&&e.type==="Promise"&&v(e.$id)&&te(e.item)}function ee(e){return T(e,"Record")&&e.type==="object"&&v(e.$id)&&Oa(e.additionalProperties)&&H(e.patternProperties)&&(n=>{const i=Object.getOwnPropertyNames(n.patternProperties);return i.length===1&&ba(i[0])&&H(n.patternProperties)&&te(n.patternProperties[i[0]])})(e)}function pd(e){return T(e,"Ref")&&v(e.$id)&&z(e.$ref)}function ln(e){return T(e,"RegExp")&&v(e.$id)&&z(e.source)&&z(e.flags)&&U(e.maxLength)&&U(e.minLength)}function Ae(e){return T(e,"String")&&e.type==="string"&&v(e.$id)&&U(e.minLength)&&U(e.maxLength)&&rd(e.pattern)&&od(e.format)}function dn(e){return T(e,"Symbol")&&e.type==="symbol"&&v(e.$id)}function pn(e){return T(e,"TemplateLiteral")&&e.type==="string"&&z(e.pattern)&&e.pattern[0]==="^"&&e.pattern[e.pattern.length-1]==="$"}function ud(e){return T(e,"This")&&v(e.$id)&&z(e.$ref)}function md(e){return H(e)&&Le in e}function gi(e){return T(e,"Tuple")&&e.type==="array"&&v(e.$id)&&Be(e.minItems)&&Be(e.maxItems)&&e.minItems===e.maxItems&&(K(e.items)&&K(e.additionalItems)&&e.minItems===0||fe(e.items)&&e.items.every(n=>te(n)))}function bt(e){return T(e,"Undefined")&&e.type==="undefined"&&v(e.$id)}function Je(e){return T(e,"Union")&&v(e.$id)&&H(e)&&fe(e.anyOf)&&e.anyOf.every(n=>te(n))}function Pn(e){return T(e,"Uint8Array")&&e.type==="Uint8Array"&&v(e.$id)&&U(e.minByteLength)&&U(e.maxByteLength)}function je(e){return T(e,"Unknown")&&v(e.$id)}function fd(e){return T(e,"Unsafe")}function hi(e){return T(e,"Void")&&e.type==="void"&&v(e.$id)}function gd(e){return H(e)&&y in e&&z(e[y])&&!id.includes(e[y])}function te(e){return H(e)&&(Te(e)||ad(e)||Pt(e)||It(e)||pi(e)||Cr(e)||sd(e)||ui(e)||mi(e)||fi(e)||Ve(e)||Ft(e)||Tr(e)||at(e)||ld(e)||dd(e)||st(e)||Et(e)||Ar(e)||pe(e)||B(e)||jr(e)||ee(e)||pd(e)||ln(e)||Ae(e)||dn(e)||pn(e)||ud(e)||gi(e)||bt(e)||Je(e)||Pn(e)||je(e)||fd(e)||hi(e)||gd(e))}const hd="(true|false)",Gn="(0|[1-9][0-9]*)",Pa="(.*)",bd="(?!.*)",zt=`^${Gn}$`,Kt=`^${Pa}$`,Od=`^${bd}$`,Rr=new Map;function Ia(e){return Rr.has(e)}function Fa(e,n){Rr.set(e,n)}function $a(e){return Rr.get(e)}const Na=new Map;function vr(e){return Na.has(e)}function Ca(e){return Na.get(e)}function yd(e,n){return e.includes(n)}function xd(e){return[...new Set(e)]}function Sd(e,n){return e.filter(i=>n.includes(i))}function wd(e,n){return e.reduce((i,r)=>Sd(i,r),n)}function Ld(e){return e.length===1?e[0]:e.length>1?wd(e.slice(1),e[0]):[]}function Pd(e){const n=[];for(const i of e)n.push(...i);return n}function un(e){return f({[y]:"Any"},e)}function Ur(e,n){return f({[y]:"Array",type:"array",items:e},n)}function Id(e){return f({[y]:"Argument",index:e})}function Mr(e,n){return f({[y]:"AsyncIterator",type:"AsyncIterator",items:e},n)}function q(e,n,i){return f({[y]:"Computed",target:e,parameters:n},i)}function Fd(e,n){const{[n]:i,...r}=e;return r}function Oe(e,n){return n.reduce((i,r)=>Fd(i,r),e)}function D(e){return f({[y]:"Never",not:{}},e)}function ne(e){return f({[y]:"MappedResult",properties:e})}function kr(e,n,i){return f({[y]:"Constructor",type:"Constructor",parameters:e,returns:n},i)}function In(e,n,i){return f({[y]:"Function",type:"Function",parameters:e,returns:n},i)}function ir(e,n){return f({[y]:"Union",anyOf:e},n)}function $d(e){return e.some(n=>ot(n))}function wo(e){return e.map(n=>ot(n)?Nd(n):n)}function Nd(e){return Oe(e,[Xe])}function Cd(e,n){return $d(e)?dt(ir(wo(e),n)):ir(wo(e),n)}function en(e,n){return e.length===1?f(e[0],n):e.length===0?D(n):Cd(e,n)}function ie(e,n){return e.length===0?D(n):e.length===1?f(e[0],n):ir(e,n)}class Lo extends ve{}function Td(e){return e.replace(/\\\$/g,"$").replace(/\\\*/g,"*").replace(/\\\^/g,"^").replace(/\\\|/g,"|").replace(/\\\(/g,"(").replace(/\\\)/g,")")}function Br(e,n,i){return e[n]===i&&e.charCodeAt(n-1)!==92}function Ge(e,n){return Br(e,n,"(")}function mn(e,n){return Br(e,n,")")}function Ta(e,n){return Br(e,n,"|")}function Ad(e){if(!(Ge(e,0)&&mn(e,e.length-1)))return!1;let n=0;for(let i=0;i<e.length;i++)if(Ge(e,i)&&(n+=1),mn(e,i)&&(n-=1),n===0&&i!==e.length-1)return!1;return!0}function jd(e){return e.slice(1,e.length-1)}function Rd(e){let n=0;for(let i=0;i<e.length;i++)if(Ge(e,i)&&(n+=1),mn(e,i)&&(n-=1),Ta(e,i)&&n===0)return!0;return!1}function vd(e){for(let n=0;n<e.length;n++)if(Ge(e,n))return!0;return!1}function Ud(e){let[n,i]=[0,0];const r=[];for(let a=0;a<e.length;a++)if(Ge(e,a)&&(n+=1),mn(e,a)&&(n-=1),Ta(e,a)&&n===0){const s=e.slice(i,a);s.length>0&&r.push(_t(s)),i=a+1}const o=e.slice(i);return o.length>0&&r.push(_t(o)),r.length===0?{type:"const",const:""}:r.length===1?r[0]:{type:"or",expr:r}}function Md(e){function n(o,a){if(!Ge(o,a))throw new Lo("TemplateLiteralParser: Index must point to open parens");let s=0;for(let l=a;l<o.length;l++)if(Ge(o,l)&&(s+=1),mn(o,l)&&(s-=1),s===0)return[a,l];throw new Lo("TemplateLiteralParser: Unclosed group parens in expression")}function i(o,a){for(let s=a;s<o.length;s++)if(Ge(o,s))return[a,s];return[a,o.length]}const r=[];for(let o=0;o<e.length;o++)if(Ge(e,o)){const[a,s]=n(e,o),l=e.slice(a,s+1);r.push(_t(l)),o=s}else{const[a,s]=i(e,o),l=e.slice(a,s);l.length>0&&r.push(_t(l)),o=s-1}return r.length===0?{type:"const",const:""}:r.length===1?r[0]:{type:"and",expr:r}}function _t(e){return Ad(e)?_t(jd(e)):Rd(e)?Ud(e):vd(e)?Md(e):{type:"const",const:Td(e)}}function Dr(e){return _t(e.slice(1,e.length-1))}class kd extends ve{}function Bd(e){return e.type==="or"&&e.expr.length===2&&e.expr[0].type==="const"&&e.expr[0].const==="0"&&e.expr[1].type==="const"&&e.expr[1].const==="[1-9][0-9]*"}function Dd(e){return e.type==="or"&&e.expr.length===2&&e.expr[0].type==="const"&&e.expr[0].const==="true"&&e.expr[1].type==="const"&&e.expr[1].const==="false"}function Ed(e){return e.type==="const"&&e.const===".*"}function fn(e){return Bd(e)||Ed(e)?!1:Dd(e)?!0:e.type==="and"?e.expr.every(n=>fn(n)):e.type==="or"?e.expr.every(n=>fn(n)):e.type==="const"?!0:(()=>{throw new kd("Unknown expression type")})()}function zd(e){const n=Dr(e.pattern);return fn(n)}class Kd extends ve{}function*Aa(e){if(e.length===1)return yield*e[0];for(const n of e[0])for(const i of Aa(e.slice(1)))yield`${n}${i}`}function*_d(e){return yield*Aa(e.expr.map(n=>[...bi(n)]))}function*Hd(e){for(const n of e.expr)yield*bi(n)}function*Gd(e){return yield e.const}function*bi(e){return e.type==="and"?yield*_d(e):e.type==="or"?yield*Hd(e):e.type==="const"?yield*Gd(e):(()=>{throw new Kd("Unknown expression")})()}function ja(e){const n=Dr(e.pattern);return fn(n)?[...bi(n)]:[]}function _(e,n){return f({[y]:"Literal",const:e,type:typeof e},n)}function Ra(e){return f({[y]:"Boolean",type:"boolean"},e)}function Er(e){return f({[y]:"BigInt",type:"bigint"},e)}function $t(e){return f({[y]:"Number",type:"number"},e)}function Ot(e){return f({[y]:"String",type:"string"},e)}function*Wd(e){const n=e.trim().replace(/"|'/g,"");return n==="boolean"?yield Ra():n==="number"?yield $t():n==="bigint"?yield Er():n==="string"?yield Ot():yield(()=>{const i=n.split("|").map(r=>_(r.trim()));return i.length===0?D():i.length===1?i[0]:en(i)})()}function*qd(e){if(e[1]!=="{"){const n=_("$"),i=rr(e.slice(1));return yield*[n,...i]}for(let n=2;n<e.length;n++)if(e[n]==="}"){const i=Wd(e.slice(2,n)),r=rr(e.slice(n+1));return yield*[...i,...r]}yield _(e)}function*rr(e){for(let n=0;n<e.length;n++)if(e[n]==="$"){const i=_(e.slice(0,n)),r=qd(e.slice(n));return yield*[i,...r]}yield _(e)}function Jd(e){return[...rr(e)]}class Xd extends ve{}function Vd(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function va(e,n){return wt(e)?e.pattern.slice(1,e.pattern.length-1):Z(e)?`(${e.anyOf.map(i=>va(i,n)).join("|")})`:Qt(e)?`${n}${Gn}`:Zt(e)?`${n}${Gn}`:ai(e)?`${n}${Gn}`:Ln(e)?`${n}${Pa}`:xt(e)?`${n}${Vd(e.const.toString())}`:Sn(e)?`${n}${hd}`:(()=>{throw new Xd(`Unexpected Kind '${e[y]}'`)})()}function Po(e){return`^${e.map(n=>va(n,"")).join("")}$`}function Yn(e){const i=ja(e).map(r=>_(r));return en(i)}function Ua(e,n){const i=z(e)?Po(Jd(e)):Po(e);return f({[y]:"TemplateLiteral",type:"string",pattern:i},n)}function Yd(e){return ja(e).map(i=>i.toString())}function Zd(e){const n=[];for(const i of e)n.push(...ct(i));return n}function Qd(e){return[e.toString()]}function ct(e){return[...new Set(wt(e)?Yd(e):Z(e)?Zd(e.anyOf):xt(e)?Qd(e.const):Qt(e)?["[number]"]:Zt(e)?["[number]"]:[])]}function ep(e,n,i){const r={};for(const o of Object.getOwnPropertyNames(n))r[o]=Oi(e,ct(n[o]),i);return r}function tp(e,n,i){return ep(e,n.properties,i)}function np(e,n,i){const r=tp(e,n,i);return ne(r)}function Ma(e,n){return e.map(i=>ka(i,n))}function ip(e){return e.filter(n=>!wn(n))}function rp(e,n){return za(ip(Ma(e,n)))}function op(e){return e.some(n=>wn(n))?[]:e}function ap(e,n){return en(op(Ma(e,n)))}function sp(e,n){return n in e?e[n]:n==="[number]"?en(e):D()}function cp(e,n){return n==="[number]"?e:D()}function lp(e,n){return n in e?e[n]:D()}function ka(e,n){return Ie(e)?rp(e.allOf,n):Z(e)?ap(e.anyOf,n):Lt(e)?sp(e.items??[],n):Jt(e)?cp(e.items,n):Ue(e)?lp(e.properties,n):D()}function Ba(e,n){return n.map(i=>ka(e,i))}function Io(e,n){return en(Ba(e,n))}function Oi(e,n,i){if(ue(e)||ue(n)){const r="Index types using Ref parameters require both Type and Key to be of TSchema";if(!We(e)||!We(n))throw new ve(r);return q("Index",[e,n])}return Se(n)?np(e,n,i):St(n)?mp(e,n,i):f(We(n)?Io(e,ct(n)):Io(e,n),i)}function dp(e,n,i){return{[n]:Oi(e,[n],he(i))}}function pp(e,n,i){return n.reduce((r,o)=>({...r,...dp(e,o,i)}),{})}function up(e,n,i){return pp(e,n.keys,i)}function mp(e,n,i){const r=up(e,n,i);return ne(r)}function zr(e,n){return f({[y]:"Iterator",type:"Iterator",items:e},n)}function fp(e){const n=[];for(let i in e)ot(e[i])||n.push(i);return n}function gp(e,n){const i=fp(e),r=i.length>0?{[y]:"Object",type:"object",properties:e,required:i}:{[y]:"Object",type:"object",properties:e};return f(r,n)}var Y=gp;function Da(e,n){return f({[y]:"Promise",type:"Promise",item:e},n)}function hp(e){return f(Oe(e,[xn]))}function bp(e){return f({...e,[xn]:"Readonly"})}function Op(e,n){return n===!1?hp(e):bp(e)}function lt(e,n){const i=n??!0;return Se(e)?Sp(e,i):Op(e,i)}function yp(e,n){const i={};for(const r of globalThis.Object.getOwnPropertyNames(e))i[r]=lt(e[r],n);return i}function xp(e,n){return yp(e.properties,n)}function Sp(e,n){const i=xp(e,n);return ne(i)}function tn(e,n){return f(e.length>0?{[y]:"Tuple",type:"array",items:e,additionalItems:!1,minItems:e.length,maxItems:e.length}:{[y]:"Tuple",type:"array",minItems:e.length,maxItems:e.length},n)}function Ea(e,n){return e in n?we(e,n[e]):ne(n)}function wp(e){return{[e]:_(e)}}function Lp(e){const n={};for(const i of e)n[i]=_(i);return n}function Pp(e,n){return yd(n,e)?wp(e):Lp(n)}function Ip(e,n){const i=Pp(e,n);return Ea(e,i)}function sn(e,n){return n.map(i=>we(e,i))}function Fp(e,n){const i={};for(const r of globalThis.Object.getOwnPropertyNames(n))i[r]=we(e,n[r]);return i}function we(e,n){const i={...n};return ot(n)?dt(we(e,Oe(n,[Xe]))):Lr(n)?lt(we(e,Oe(n,[xn]))):Se(n)?Ea(e,n.properties):St(n)?Ip(e,n.keys):Vt(n)?kr(sn(e,n.parameters),we(e,n.returns),i):Yt(n)?In(sn(e,n.parameters),we(e,n.returns),i):oi(n)?Mr(we(e,n.items),i):si(n)?zr(we(e,n.items),i):Ie(n)?pt(sn(e,n.allOf),i):Z(n)?ie(sn(e,n.anyOf),i):Lt(n)?tn(sn(e,n.items??[]),i):Ue(n)?Y(Fp(e,n.properties),i):Jt(n)?Ur(we(e,n.items),i):ci(n)?Da(we(e,n.item),i):n}function $p(e,n){const i={};for(const r of e)i[r]=we(r,n);return i}function Np(e,n,i){const r=We(e)?ct(e):e,o=n({[y]:"MappedKey",keys:r}),a=$p(r,o);return Y(a,i)}function Cp(e){return f(Oe(e,[Xe]))}function Tp(e){return f({...e,[Xe]:"Optional"})}function Ap(e,n){return n===!1?Cp(e):Tp(e)}function dt(e,n){const i=n??!0;return Se(e)?vp(e,i):Ap(e,i)}function jp(e,n){const i={};for(const r of globalThis.Object.getOwnPropertyNames(e))i[r]=dt(e[r],n);return i}function Rp(e,n){return jp(e.properties,n)}function vp(e,n){const i=Rp(e,n);return ne(i)}function or(e,n={}){const i=e.every(o=>Ue(o)),r=We(n.unevaluatedProperties)?{unevaluatedProperties:n.unevaluatedProperties}:{};return f(n.unevaluatedProperties===!1||We(n.unevaluatedProperties)||i?{...r,[y]:"Intersect",type:"object",allOf:e}:{...r,[y]:"Intersect",allOf:e},n)}function Up(e){return e.every(n=>ot(n))}function Mp(e){return Oe(e,[Xe])}function Fo(e){return e.map(n=>ot(n)?Mp(n):n)}function kp(e,n){return Up(e)?dt(or(Fo(e),n)):or(Fo(e),n)}function za(e,n={}){if(e.length===1)return f(e[0],n);if(e.length===0)return D(n);if(e.some(i=>di(i)))throw new Error("Cannot intersect transform types");return kp(e,n)}function pt(e,n){if(e.length===1)return f(e[0],n);if(e.length===0)return D(n);if(e.some(i=>di(i)))throw new Error("Cannot intersect transform types");return or(e,n)}function Fn(...e){const[n,i]=typeof e[0]=="string"?[e[0],e[1]]:[e[0].$id,e[1]];if(typeof n!="string")throw new ve("Ref: $ref must be a string");return f({[y]:"Ref",$ref:n},i)}function Bp(e,n){return q("Awaited",[q(e,n)])}function Dp(e){return q("Awaited",[Fn(e)])}function Ep(e){return pt(Ka(e))}function zp(e){return ie(Ka(e))}function Kp(e){return yi(e)}function Ka(e){return e.map(n=>yi(n))}function yi(e,n){return f(Xt(e)?Bp(e.target,e.parameters):Ie(e)?Ep(e.allOf):Z(e)?zp(e.anyOf):ci(e)?Kp(e.item):ue(e)?Dp(e.$ref):e,n)}function _a(e){const n=[];for(const i of e)n.push(xi(i));return n}function _p(e){const n=_a(e);return Pd(n)}function Hp(e){const n=_a(e);return Ld(n)}function Gp(e){return e.map((n,i)=>i.toString())}function Wp(e){return["[number]"]}function qp(e){return globalThis.Object.getOwnPropertyNames(e)}function Jp(e){return ar?globalThis.Object.getOwnPropertyNames(e).map(i=>i[0]==="^"&&i[i.length-1]==="$"?i.slice(1,i.length-1):i):[]}function xi(e){return Ie(e)?_p(e.allOf):Z(e)?Hp(e.anyOf):Lt(e)?Gp(e.items??[]):Jt(e)?Wp(e.items):Ue(e)?qp(e.properties):li(e)?Jp(e.patternProperties):[]}let ar=!1;function Zn(e){ar=!0;const n=xi(e);return ar=!1,`^(${n.map(r=>`(${r})`).join("|")})$`}function Xp(e,n){return q("KeyOf",[q(e,n)])}function Vp(e){return q("KeyOf",[Fn(e)])}function Yp(e,n){const i=xi(e),r=Zp(i),o=en(r);return f(o,n)}function Zp(e){return e.map(n=>n==="[number]"?$t():_(n))}function Kr(e,n){return Xt(e)?Xp(e.target,e.parameters):ue(e)?Vp(e.$ref):Se(e)?tu(e,n):Yp(e,n)}function Qp(e,n){const i={};for(const r of globalThis.Object.getOwnPropertyNames(e))i[r]=Kr(e[r],he(n));return i}function eu(e,n){return Qp(e.properties,n)}function tu(e,n){const i=eu(e,n);return ne(i)}function nu(e){const n=[];for(const i of e)n.push(...xi(i));return xd(n)}function iu(e){return e.filter(n=>!wn(n))}function ru(e,n){const i=[];for(const r of e)i.push(...Ba(r,[n]));return iu(i)}function ou(e,n){const i={};for(const r of n)i[r]=za(ru(e,r));return i}function au(e,n){const i=nu(e),r=ou(e,i);return Y(r,n)}function Ha(e){return f({[y]:"Date",type:"Date"},e)}function Ga(e){return f({[y]:"Null",type:"null"},e)}function Wa(e){return f({[y]:"Symbol",type:"symbol"},e)}function qa(e){return f({[y]:"Undefined",type:"undefined"},e)}function Ja(e){return f({[y]:"Uint8Array",type:"Uint8Array"},e)}function Si(e){return f({[y]:"Unknown"},e)}function su(e){return e.map(n=>_r(n,!1))}function cu(e){const n={};for(const i of globalThis.Object.getOwnPropertyNames(e))n[i]=lt(_r(e[i],!1));return n}function Dn(e,n){return n===!0?e:lt(e)}function _r(e,n){return Rl(e)||Ul(e)?Dn(un(),n):fe(e)?lt(tn(su(e))):On(e)?Ja():yr(e)?Ha():H(e)?Dn(Y(cu(e)),n):vl(e)?Dn(In([],Si()),n):K(e)?qa():Ml(e)?Ga():kl(e)?Wa():aa(e)?Er():Be(e)||bn(e)||z(e)?_(e):Y({})}function lu(e,n){return f(_r(e,!0),n)}function du(e,n){return Vt(e)?tn(e.parameters,n):D(n)}function pu(e,n){if(K(e))throw new Error("Enum undefined or empty");const i=globalThis.Object.getOwnPropertyNames(e).filter(a=>isNaN(a)).map(a=>e[a]),o=[...new Set(i)].map(a=>_(a));return ie(o,{...n,[ri]:"Enum"})}class uu extends ve{}var p;(function(e){e[e.Union=0]="Union",e[e.True=1]="True",e[e.False=2]="False"})(p||(p={}));function Pe(e){return e===p.False?e:p.True}function nn(e){throw new uu(e)}function G(e){return st(e)||Ft(e)||Je(e)||je(e)||Te(e)}function W(e,n){return st(n)?Ya():Ft(n)?wi(e,n):Je(n)?Gr(e,n):je(n)?ts():Te(n)?Hr():nn("StructuralRight")}function Hr(e,n){return p.True}function mu(e,n){return Ft(n)?wi(e,n):Je(n)&&n.anyOf.some(i=>Te(i)||je(i))?p.True:Je(n)?p.Union:je(n)||Te(n)?p.True:p.Union}function fu(e,n){return je(e)?p.False:Te(e)?p.Union:st(e)?p.True:p.False}function gu(e,n){return B(n)&&Li(n)?p.True:G(n)?W(e,n):Pt(n)?Pe(R(e.items,n.items)):p.False}function hu(e,n){return G(n)?W(e,n):Cr(n)?Pe(R(e.items,n.items)):p.False}function bu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):pi(n)?p.True:p.False}function Xa(e,n){return La(e)||It(e)?p.True:p.False}function Ou(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):It(n)?p.True:p.False}function yu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ui(n)?e.parameters.length>n.parameters.length?p.False:e.parameters.every((i,r)=>Pe(R(n.parameters[r],i))===p.True)?Pe(R(e.returns,n.returns)):p.False:p.False}function xu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):mi(n)?p.True:p.False}function Su(e,n){return G(n)?W(e,n):B(n)?se(e,n):fi(n)?e.parameters.length>n.parameters.length?p.False:e.parameters.every((i,r)=>Pe(R(n.parameters[r],i))===p.True)?Pe(R(e.returns,n.returns)):p.False:p.False}function Va(e,n){return at(e)&&Be(e.const)||pe(e)||Ve(e)?p.True:p.False}function wu(e,n){return Ve(n)||pe(n)?p.True:G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):p.False}function wi(e,n){return n.allOf.every(i=>R(e,i)===p.True)?p.True:p.False}function Lu(e,n){return e.allOf.some(i=>R(i,n)===p.True)?p.True:p.False}function Pu(e,n){return G(n)?W(e,n):Tr(n)?Pe(R(e.items,n.items)):p.False}function Iu(e,n){return at(n)&&n.const===e.const?p.True:G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):Ae(n)?es(e):pe(n)?Za(e):Ve(n)?Va(e):It(n)?Xa(e):p.False}function Ya(e,n){return p.False}function Fu(e,n){return p.True}function $o(e){let[n,i]=[e,0];for(;Et(n);)n=n.not,i+=1;return i%2===0?n:Si()}function $u(e,n){return Et(e)?R($o(e),n):Et(n)?R(e,$o(n)):nn("Invalid fallthrough for Not")}function Nu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):Ar(n)?p.True:p.False}function Za(e,n){return wa(e)||pe(e)||Ve(e)?p.True:p.False}function Cu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):Ve(n)||pe(n)?p.True:p.False}function me(e,n){return Object.getOwnPropertyNames(e.properties).length===n}function No(e){return Li(e)}function Co(e){return me(e,0)||me(e,1)&&"description"in e.properties&&Je(e.properties.description)&&e.properties.description.anyOf.length===2&&(Ae(e.properties.description.anyOf[0])&&bt(e.properties.description.anyOf[1])||Ae(e.properties.description.anyOf[1])&&bt(e.properties.description.anyOf[0]))}function Ji(e){return me(e,0)}function To(e){return me(e,0)}function Tu(e){return me(e,0)}function Au(e){return me(e,0)}function ju(e){return Li(e)}function Ru(e){const n=$t();return me(e,0)||me(e,1)&&"length"in e.properties&&Pe(R(e.properties.length,n))===p.True}function vu(e){return me(e,0)}function Li(e){const n=$t();return me(e,0)||me(e,1)&&"length"in e.properties&&Pe(R(e.properties.length,n))===p.True}function Uu(e){const n=In([un()],un());return me(e,0)||me(e,1)&&"then"in e.properties&&Pe(R(e.properties.then,n))===p.True}function Qa(e,n){return R(e,n)===p.False||Vn(e)&&!Vn(n)?p.False:p.True}function se(e,n){return je(e)?p.False:Te(e)?p.Union:st(e)||Sa(e)&&No(n)||wa(e)&&Ji(n)||La(e)&&To(n)||dn(e)&&Co(n)||pi(e)&&Tu(n)||Ae(e)&&No(n)||dn(e)&&Co(n)||pe(e)&&Ji(n)||Ve(e)&&Ji(n)||It(e)&&To(n)||Pn(e)&&ju(n)||mi(e)&&Au(n)||ui(e)&&vu(n)||fi(e)&&Ru(n)?p.True:ee(e)&&Ae(sr(e))?n[ri]==="Record"?p.True:p.False:ee(e)&&pe(sr(e))?me(n,0)?p.True:p.False:p.False}function Mu(e,n){return G(n)?W(e,n):ee(n)?Fe(e,n):B(n)?(()=>{for(const i of Object.getOwnPropertyNames(n.properties)){if(!(i in e.properties)&&!Vn(n.properties[i]))return p.False;if(Vn(n.properties[i]))return p.True;if(Qa(e.properties[i],n.properties[i])===p.False)return p.False}return p.True})():p.False}function ku(e,n){return G(n)?W(e,n):B(n)&&Uu(n)?p.True:jr(n)?Pe(R(e.item,n.item)):p.False}function sr(e){return zt in e.patternProperties?$t():Kt in e.patternProperties?Ot():nn("Unknown record key pattern")}function cr(e){return zt in e.patternProperties?e.patternProperties[zt]:Kt in e.patternProperties?e.patternProperties[Kt]:nn("Unable to get record value schema")}function Fe(e,n){const[i,r]=[sr(n),cr(n)];return Sa(e)&&pe(i)&&Pe(R(e,r))===p.True?p.True:Pn(e)&&pe(i)||Ae(e)&&pe(i)||Pt(e)&&pe(i)?R(e,r):B(e)?(()=>{for(const o of Object.getOwnPropertyNames(e.properties))if(Qa(r,e.properties[o])===p.False)return p.False;return p.True})():p.False}function Bu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?R(cr(e),cr(n)):p.False}function Du(e,n){const i=ln(e)?Ot():e,r=ln(n)?Ot():n;return R(i,r)}function es(e,n){return at(e)&&z(e.const)||Ae(e)?p.True:p.False}function Eu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):Ae(n)?p.True:p.False}function zu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):dn(n)?p.True:p.False}function Ku(e,n){return pn(e)?R(Yn(e),n):pn(n)?R(e,Yn(n)):nn("Invalid fallthrough for TemplateLiteral")}function _u(e,n){return Pt(n)&&e.items!==void 0&&e.items.every(i=>R(i,n.items)===p.True)}function Hu(e,n){return st(e)?p.True:je(e)?p.False:Te(e)?p.Union:p.False}function Gu(e,n){return G(n)?W(e,n):B(n)&&Li(n)||Pt(n)&&_u(e,n)?p.True:gi(n)?K(e.items)&&!K(n.items)||!K(e.items)&&K(n.items)?p.False:K(e.items)&&!K(n.items)||e.items.every((i,r)=>R(i,n.items[r])===p.True)?p.True:p.False:p.False}function Wu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):Pn(n)?p.True:p.False}function qu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):hi(n)?Vu(e):bt(n)?p.True:p.False}function Gr(e,n){return n.anyOf.some(i=>R(e,i)===p.True)?p.True:p.False}function Ju(e,n){return e.anyOf.every(i=>R(i,n)===p.True)?p.True:p.False}function ts(e,n){return p.True}function Xu(e,n){return st(n)?Ya():Ft(n)?wi(e,n):Je(n)?Gr(e,n):Te(n)?Hr():Ae(n)?es(e):pe(n)?Za(e):Ve(n)?Va(e):It(n)?Xa(e):Pt(n)?fu(e):gi(n)?Hu(e):B(n)?se(e,n):je(n)?p.True:p.False}function Vu(e,n){return bt(e)||bt(e)?p.True:p.False}function Yu(e,n){return Ft(n)?wi(e,n):Je(n)?Gr(e,n):je(n)?ts():Te(n)?Hr():B(n)?se(e,n):hi(n)?p.True:p.False}function R(e,n){return pn(e)||pn(n)?Ku(e,n):ln(e)||ln(n)?Du(e,n):Et(e)||Et(n)?$u(e,n):Te(e)?mu(e,n):Pt(e)?gu(e,n):pi(e)?bu(e,n):It(e)?Ou(e,n):Cr(e)?hu(e,n):ui(e)?yu(e,n):mi(e)?xu(e,n):fi(e)?Su(e,n):Ve(e)?wu(e,n):Ft(e)?Lu(e,n):Tr(e)?Pu(e,n):at(e)?Iu(e,n):st(e)?Fu():Ar(e)?Nu(e,n):pe(e)?Cu(e,n):B(e)?Mu(e,n):ee(e)?Bu(e,n):Ae(e)?Eu(e,n):dn(e)?zu(e,n):gi(e)?Gu(e,n):jr(e)?ku(e,n):Pn(e)?Wu(e,n):bt(e)?qu(e,n):Je(e)?Ju(e,n):je(e)?Xu(e,n):hi(e)?Yu(e,n):nn(`Unknown left type operand '${e[y]}'`)}function $n(e,n){return R(e,n)}function Zu(e,n,i,r,o){const a={};for(const s of globalThis.Object.getOwnPropertyNames(e))a[s]=Wr(e[s],n,i,r,he(o));return a}function Qu(e,n,i,r,o){return Zu(e.properties,n,i,r,o)}function em(e,n,i,r,o){const a=Qu(e,n,i,r,o);return ne(a)}function tm(e,n,i,r){const o=$n(e,n);return o===p.Union?ie([i,r]):o===p.True?i:r}function Wr(e,n,i,r,o){return Se(e)?em(e,n,i,r,o):St(e)?f(om(e,n,i,r,o)):f(tm(e,n,i,r),o)}function nm(e,n,i,r,o){return{[e]:Wr(_(e),n,i,r,he(o))}}function im(e,n,i,r,o){return e.reduce((a,s)=>({...a,...nm(s,n,i,r,o)}),{})}function rm(e,n,i,r,o){return im(e.keys,n,i,r,o)}function om(e,n,i,r,o){const a=rm(e,n,i,r,o);return ne(a)}function am(e){return e.allOf.every(n=>Nn(n))}function sm(e){return e.anyOf.some(n=>Nn(n))}function cm(e){return!Nn(e.not)}function Nn(e){return e[y]==="Intersect"?am(e):e[y]==="Union"?sm(e):e[y]==="Not"?cm(e):e[y]==="Undefined"}function lm(e,n){return qr(Yn(e),n)}function dm(e,n){const i=e.filter(r=>$n(r,n)===p.False);return i.length===1?i[0]:ie(i)}function qr(e,n,i={}){return wt(e)?f(lm(e,n),i):Se(e)?f(mm(e,n),i):f(Z(e)?dm(e.anyOf,n):$n(e,n)!==p.False?D():e,i)}function pm(e,n){const i={};for(const r of globalThis.Object.getOwnPropertyNames(e))i[r]=qr(e[r],n);return i}function um(e,n){return pm(e.properties,n)}function mm(e,n){const i=um(e,n);return ne(i)}function fm(e,n){return Jr(Yn(e),n)}function gm(e,n){const i=e.filter(r=>$n(r,n)!==p.False);return i.length===1?i[0]:ie(i)}function Jr(e,n,i){return wt(e)?f(fm(e,n),i):Se(e)?f(Om(e,n),i):f(Z(e)?gm(e.anyOf,n):$n(e,n)!==p.False?e:D(),i)}function hm(e,n){const i={};for(const r of globalThis.Object.getOwnPropertyNames(e))i[r]=Jr(e[r],n);return i}function bm(e,n){return hm(e.properties,n)}function Om(e,n){const i=bm(e,n);return ne(i)}function ym(e,n){return Vt(e)?f(e.returns,n):D(n)}function ns(e){return lt(dt(e))}function Nt(e,n,i){return f({[y]:"Record",type:"object",patternProperties:{[e]:n}},i)}function Xr(e,n,i){const r={};for(const o of e)r[o]=n;return Y(r,{...i,[ri]:"Record"})}function xm(e,n,i){return zd(e)?Xr(ct(e),n,i):Nt(e.pattern,n,i)}function Sm(e,n,i){return Xr(ct(ie(e)),n,i)}function wm(e,n,i){return Xr([e.toString()],n,i)}function Lm(e,n,i){return Nt(e.source,n,i)}function Pm(e,n,i){const r=K(e.pattern)?Kt:e.pattern;return Nt(r,n,i)}function Im(e,n,i){return Nt(Kt,n,i)}function Fm(e,n,i){return Nt(Od,n,i)}function $m(e,n,i){return Y({true:n,false:n},i)}function Nm(e,n,i){return Nt(zt,n,i)}function Cm(e,n,i){return Nt(zt,n,i)}function is(e,n,i={}){return Z(e)?Sm(e.anyOf,n,i):wt(e)?xm(e,n,i):xt(e)?wm(e.const,n,i):Sn(e)?$m(e,n,i):Zt(e)?Nm(e,n,i):Qt(e)?Cm(e,n,i):ga(e)?Lm(e,n,i):Ln(e)?Pm(e,n,i):ua(e)?Im(e,n,i):wn(e)?Fm(e,n,i):D(i)}function Vr(e){return globalThis.Object.getOwnPropertyNames(e.patternProperties)[0]}function Tm(e){const n=Vr(e);return n===Kt?Ot():n===zt?$t():Ot({pattern:n})}function rs(e){return e.patternProperties[Vr(e)]}function Am(e,n){return n.parameters=Cn(e,n.parameters),n.returns=Re(e,n.returns),n}function jm(e,n){return n.parameters=Cn(e,n.parameters),n.returns=Re(e,n.returns),n}function Rm(e,n){return n.allOf=Cn(e,n.allOf),n}function vm(e,n){return n.anyOf=Cn(e,n.anyOf),n}function Um(e,n){return K(n.items)||(n.items=Cn(e,n.items)),n}function Mm(e,n){return n.items=Re(e,n.items),n}function km(e,n){return n.items=Re(e,n.items),n}function Bm(e,n){return n.items=Re(e,n.items),n}function Dm(e,n){return n.item=Re(e,n.item),n}function Em(e,n){const i=Hm(e,n.properties);return{...n,...Y(i)}}function zm(e,n){const i=Re(e,Tm(n)),r=Re(e,rs(n)),o=is(i,r);return{...n,...o}}function Km(e,n){return n.index in e?e[n.index]:Si()}function _m(e,n){const i=Lr(n),r=ot(n),o=Re(e,n);return i&&r?ns(o):i&&!r?lt(o):!i&&r?dt(o):o}function Hm(e,n){return globalThis.Object.getOwnPropertyNames(n).reduce((i,r)=>({...i,[r]:_m(e,n[r])}),{})}function Cn(e,n){return n.map(i=>Re(e,i))}function Re(e,n){return Vt(n)?Am(e,n):Yt(n)?jm(e,n):Ie(n)?Rm(e,n):Z(n)?vm(e,n):Lt(n)?Um(e,n):Jt(n)?Mm(e,n):oi(n)?km(e,n):si(n)?Bm(e,n):ci(n)?Dm(e,n):Ue(n)?Em(e,n):li(n)?zm(e,n):ma(n)?Km(e,n):n}function Gm(e,n){return Re(n,xr(e))}function Wm(e){return f({[y]:"Integer",type:"integer"},e)}function qm(e,n,i){return{[e]:rn(_(e),n,he(i))}}function Jm(e,n,i){return e.reduce((o,a)=>({...o,...qm(a,n,i)}),{})}function Xm(e,n,i){return Jm(e.keys,n,i)}function Vm(e,n,i){const r=Xm(e,n,i);return ne(r)}function Ym(e){const[n,i]=[e.slice(0,1),e.slice(1)];return[n.toLowerCase(),i].join("")}function Zm(e){const[n,i]=[e.slice(0,1),e.slice(1)];return[n.toUpperCase(),i].join("")}function Qm(e){return e.toUpperCase()}function ef(e){return e.toLowerCase()}function tf(e,n,i){const r=Dr(e.pattern);if(!fn(r))return{...e,pattern:os(e.pattern,n)};const s=[...bi(r)].map(m=>_(m)),l=as(s,n),c=ie(l);return Ua([c],i)}function os(e,n){return typeof e=="string"?n==="Uncapitalize"?Ym(e):n==="Capitalize"?Zm(e):n==="Uppercase"?Qm(e):n==="Lowercase"?ef(e):e:e.toString()}function as(e,n){return e.map(i=>rn(i,n))}function rn(e,n,i={}){return St(e)?Vm(e,n,i):wt(e)?tf(e,n,i):Z(e)?ie(as(e.anyOf,n),i):xt(e)?_(os(e.const,n),i):f(e,i)}function nf(e,n={}){return rn(e,"Capitalize",n)}function rf(e,n={}){return rn(e,"Lowercase",n)}function of(e,n={}){return rn(e,"Uncapitalize",n)}function af(e,n={}){return rn(e,"Uppercase",n)}function sf(e,n,i){const r={};for(const o of globalThis.Object.getOwnPropertyNames(e))r[o]=Pi(e[o],n,he(i));return r}function cf(e,n,i){return sf(e.properties,n,i)}function lf(e,n,i){const r=cf(e,n,i);return ne(r)}function df(e,n){return e.map(i=>Yr(i,n))}function pf(e,n){return e.map(i=>Yr(i,n))}function uf(e,n){const{[n]:i,...r}=e;return r}function mf(e,n){return n.reduce((i,r)=>uf(i,r),e)}function ff(e,n){const i=Oe(e,[Le,"$id","required","properties"]),r=mf(e.properties,n);return Y(r,i)}function gf(e){const n=e.reduce((i,r)=>fa(r)?[...i,_(r)]:i,[]);return ie(n)}function Yr(e,n){return Ie(e)?pt(df(e.allOf,n)):Z(e)?ie(pf(e.anyOf,n)):Ue(e)?ff(e,n):Y({})}function Pi(e,n,i){const r=fe(n)?gf(n):n,o=We(n)?ct(n):n,a=ue(e),s=ue(n);return Se(e)?lf(e,o,i):St(n)?yf(e,n,i):a&&s?q("Omit",[e,r],i):!a&&s?q("Omit",[e,r],i):a&&!s?q("Omit",[e,r],i):f({...Yr(e,o),...i})}function hf(e,n,i){return{[n]:Pi(e,[n],he(i))}}function bf(e,n,i){return n.reduce((r,o)=>({...r,...hf(e,o,i)}),{})}function Of(e,n,i){return bf(e,n.keys,i)}function yf(e,n,i){const r=Of(e,n,i);return ne(r)}function xf(e,n,i){const r={};for(const o of globalThis.Object.getOwnPropertyNames(e))r[o]=Ii(e[o],n,he(i));return r}function Sf(e,n,i){return xf(e.properties,n,i)}function wf(e,n,i){const r=Sf(e,n,i);return ne(r)}function Lf(e,n){return e.map(i=>Zr(i,n))}function Pf(e,n){return e.map(i=>Zr(i,n))}function If(e,n){const i={};for(const r of n)r in e&&(i[r]=e[r]);return i}function Ff(e,n){const i=Oe(e,[Le,"$id","required","properties"]),r=If(e.properties,n);return Y(r,i)}function $f(e){const n=e.reduce((i,r)=>fa(r)?[...i,_(r)]:i,[]);return ie(n)}function Zr(e,n){return Ie(e)?pt(Lf(e.allOf,n)):Z(e)?ie(Pf(e.anyOf,n)):Ue(e)?Ff(e,n):Y({})}function Ii(e,n,i){const r=fe(n)?$f(n):n,o=We(n)?ct(n):n,a=ue(e),s=ue(n);return Se(e)?wf(e,o,i):St(n)?Af(e,n,i):a&&s?q("Pick",[e,r],i):!a&&s?q("Pick",[e,r],i):a&&!s?q("Pick",[e,r],i):f({...Zr(e,o),...i})}function Nf(e,n,i){return{[n]:Ii(e,[n],he(i))}}function Cf(e,n,i){return n.reduce((r,o)=>({...r,...Nf(e,o,i)}),{})}function Tf(e,n,i){return Cf(e,n.keys,i)}function Af(e,n,i){const r=Tf(e,n,i);return ne(r)}function jf(e,n){return q("Partial",[q(e,n)])}function Rf(e){return q("Partial",[Fn(e)])}function vf(e){const n={};for(const i of globalThis.Object.getOwnPropertyNames(e))n[i]=dt(e[i]);return n}function Uf(e){const n=Oe(e,[Le,"$id","required","properties"]),i=vf(e.properties);return Y(i,n)}function Ao(e){return e.map(n=>ss(n))}function ss(e){return Xt(e)?jf(e.target,e.parameters):ue(e)?Rf(e.$ref):Ie(e)?pt(Ao(e.allOf)):Z(e)?ie(Ao(e.anyOf)):Ue(e)?Uf(e):ai(e)||Sn(e)||Zt(e)||xt(e)||Pr(e)||Qt(e)||Ln(e)||Ir(e)||Fr(e)?e:Y({})}function Qr(e,n){return Se(e)?Bf(e,n):f({...ss(e),...n})}function Mf(e,n){const i={};for(const r of globalThis.Object.getOwnPropertyNames(e))i[r]=Qr(e[r],he(n));return i}function kf(e,n){return Mf(e.properties,n)}function Bf(e,n){const i=kf(e,n);return ne(i)}function Df(e,n){return q("Required",[q(e,n)])}function Ef(e){return q("Required",[Fn(e)])}function zf(e){const n={};for(const i of globalThis.Object.getOwnPropertyNames(e))n[i]=Oe(e[i],[Xe]);return n}function Kf(e){const n=Oe(e,[Le,"$id","required","properties"]),i=zf(e.properties);return Y(i,n)}function jo(e){return e.map(n=>cs(n))}function cs(e){return Xt(e)?Df(e.target,e.parameters):ue(e)?Ef(e.$ref):Ie(e)?pt(jo(e.allOf)):Z(e)?ie(jo(e.anyOf)):Ue(e)?Kf(e):ai(e)||Sn(e)||Zt(e)||xt(e)||Pr(e)||Qt(e)||Ln(e)||Ir(e)||Fr(e)?e:Y({})}function eo(e,n){return Se(e)?Gf(e,n):f({...cs(e),...n})}function _f(e,n){const i={};for(const r of globalThis.Object.getOwnPropertyNames(e))i[r]=eo(e[r],n);return i}function Hf(e,n){return _f(e.properties,n)}function Gf(e,n){const i=Hf(e,n);return ne(i)}function Wf(e,n){return n.map(i=>ue(i)?to(e,i.$ref):ye(e,i))}function to(e,n){return n in e?ue(e[n])?to(e,e[n].$ref):ye(e,e[n]):D()}function qf(e){return yi(e[0])}function Jf(e){return Oi(e[0],e[1])}function Xf(e){return Kr(e[0])}function Vf(e){return Qr(e[0])}function Yf(e){return Pi(e[0],e[1])}function Zf(e){return Ii(e[0],e[1])}function Qf(e){return eo(e[0])}function eg(e,n,i){const r=Wf(e,i);return n==="Awaited"?qf(r):n==="Index"?Jf(r):n==="KeyOf"?Xf(r):n==="Partial"?Vf(r):n==="Omit"?Yf(r):n==="Pick"?Zf(r):n==="Required"?Qf(r):D()}function tg(e,n){return Ur(ye(e,n))}function ng(e,n){return Mr(ye(e,n))}function ig(e,n,i){return kr(Tn(e,n),ye(e,i))}function rg(e,n,i){return In(Tn(e,n),ye(e,i))}function og(e,n){return pt(Tn(e,n))}function ag(e,n){return zr(ye(e,n))}function sg(e,n){return Y(globalThis.Object.keys(n).reduce((i,r)=>({...i,[r]:ye(e,n[r])}),{}))}function cg(e,n){const[i,r]=[ye(e,rs(n)),Vr(n)],o=xr(n);return o.patternProperties[r]=i,o}function lg(e,n){return ue(n)?{...to(e,n.$ref),[Le]:n[Le]}:n}function dg(e,n){return tn(Tn(e,n))}function pg(e,n){return ie(Tn(e,n))}function Tn(e,n){return n.map(i=>ye(e,i))}function ye(e,n){return ot(n)?f(ye(e,Oe(n,[Xe])),n):Lr(n)?f(ye(e,Oe(n,[xn])),n):di(n)?f(lg(e,n),n):Jt(n)?f(tg(e,n.items),n):oi(n)?f(ng(e,n.items),n):Xt(n)?f(eg(e,n.target,n.parameters)):Vt(n)?f(ig(e,n.parameters,n.returns),n):Yt(n)?f(rg(e,n.parameters,n.returns),n):Ie(n)?f(og(e,n.allOf),n):si(n)?f(ag(e,n.items),n):Ue(n)?f(sg(e,n.properties),n):li(n)?f(cg(e,n)):Lt(n)?f(dg(e,n.items||[]),n):Z(n)?f(pg(e,n.anyOf),n):n}function ug(e,n){return n in e?ye(e,e[n]):D()}function mg(e){return globalThis.Object.getOwnPropertyNames(e).reduce((n,i)=>({...n,[i]:ug(e,i)}),{})}class fg{constructor(n){const i=mg(n),r=this.WithIdentifiers(i);this.$defs=r}Import(n,i){const r={...this.$defs,[n]:f(this.$defs[n],i)};return f({[y]:"Import",$defs:r,$ref:n})}WithIdentifiers(n){return globalThis.Object.getOwnPropertyNames(n).reduce((i,r)=>({...i,[r]:{...n[r],$id:r}}),{})}}function gg(e){return new fg(e)}function hg(e,n){return f({[y]:"Not",not:e},n)}function bg(e,n){return Yt(e)?tn(e.parameters,n):D()}let Og=0;function yg(e,n={}){K(n.$id)&&(n.$id=`T${Og++}`);const i=xr(e({[y]:"This",$ref:`${n.$id}`}));return i.$id=n.$id,f({[ri]:"Recursive",...i},n)}function xg(e,n){const i=z(e)?new globalThis.RegExp(e):e;return f({[y]:"RegExp",type:"RegExp",source:i.source,flags:i.flags},n)}function Sg(e){return Ie(e)?e.allOf:Z(e)?e.anyOf:Lt(e)?e.items??[]:[]}function wg(e){return Sg(e)}function Lg(e,n){return Yt(e)?f(e.returns,n):D(n)}class Pg{constructor(n){this.schema=n}Decode(n){return new Ig(this.schema,n)}}class Ig{constructor(n,i){this.schema=n,this.decode=i}EncodeTransform(n,i){const a={Encode:s=>i[Le].Encode(n(s)),Decode:s=>this.decode(i[Le].Decode(s))};return{...i,[Le]:a}}EncodeSchema(n,i){const r={Decode:this.decode,Encode:n};return{...i,[Le]:r}}Encode(n){return di(this.schema)?this.EncodeTransform(n,this.schema):this.EncodeSchema(n,this.schema)}}function Fg(e){return new Pg(e)}function $g(e={}){return f({[y]:e[y]??"Unsafe"},e)}function Ng(e){return f({[y]:"Void",type:"void"},e)}const Cg=Object.freeze(Object.defineProperty({__proto__:null,Any:un,Argument:Id,Array:Ur,AsyncIterator:Mr,Awaited:yi,BigInt:Er,Boolean:Ra,Capitalize:nf,Composite:au,Const:lu,Constructor:kr,ConstructorParameters:du,Date:Ha,Enum:pu,Exclude:qr,Extends:Wr,Extract:Jr,Function:In,Index:Oi,InstanceType:ym,Instantiate:Gm,Integer:Wm,Intersect:pt,Iterator:zr,KeyOf:Kr,Literal:_,Lowercase:rf,Mapped:Np,Module:gg,Never:D,Not:hg,Null:Ga,Number:$t,Object:Y,Omit:Pi,Optional:dt,Parameters:bg,Partial:Qr,Pick:Ii,Promise:Da,Readonly:lt,ReadonlyOptional:ns,Record:is,Recursive:yg,Ref:Fn,RegExp:xg,Required:eo,Rest:wg,ReturnType:Lg,String:Ot,Symbol:Wa,TemplateLiteral:Ua,Transform:Fg,Tuple:tn,Uint8Array:Ja,Uncapitalize:of,Undefined:qa,Union:ie,Unknown:Si,Unsafe:$g,Uppercase:af,Void:Ng},Symbol.toStringTag,{value:"Module"})),t=Cg;var Tg=["Arial","Calibri","Cambria","Consolas","Courier New","Georgia","Segoe UI","Tahoma","Times New Roman","Trebuchet MS","Verdana","Helvetica","Helvetica Neue","Menlo","Monaco"];function N0(e){const n=e.toLowerCase();return Tg.some(i=>i.toLowerCase()===n)}var gn=t.String({description:"Font family name. Prefer a SAFE_FONTS entry (Arial, Calibri, Cambria, Consolas, Courier New, Georgia, Segoe UI, Tahoma, Times New Roman, Trebuchet MS, Verdana, Helvetica, Helvetica Neue, Menlo, Monaco) for zero-setup rendering. For any other font, register it in props.fontRegistry[] and reference it here by family. Unregistered non-safe names render with a host fallback.",examples:["Arial","Calibri","Georgia","Inter","Roboto"]}),An=t.Number({minimum:100,maximum:900,description:"OpenType weight (100 thin ... 900 black). Default 400."}),Fi=t.Boolean({description:"Whether this source is italic. Default false."}),Ag=t.Object({kind:t.Literal("safe"),family:t.String({description:"A SAFE_FONTS name — installed with Office."})},{additionalProperties:!1,description:"Office-installed font — no embedding"}),jg=t.Object({kind:t.Literal("google"),family:t.String({description:'Exact Google Fonts family name (e.g. "Inter").'}),weights:t.Optional(t.Array(An,{description:"Weights to fetch. Default [400, 700]."})),italics:t.Optional(t.Boolean({description:"Include italic variants. Default false."}))},{additionalProperties:!1,description:"Google Fonts — auto-fetched and embedded"}),Rg=t.Object({kind:t.Literal("file"),path:t.String({description:"Path to a .ttf/.otf file. Relative paths are resolved against the JSON document file."}),weight:t.Optional(An),italic:t.Optional(Fi)},{additionalProperties:!1,description:"Local font file to embed"}),vg=t.Object({kind:t.Literal("url"),url:t.String({description:"HTTPS URL of a TTF or OTF file."}),weight:t.Optional(An),italic:t.Optional(Fi)},{additionalProperties:!1,description:"Direct TTF/OTF URL (non-Google CDN)"}),Ug=t.Object({kind:t.Literal("variable"),url:t.String({description:"HTTPS URL of a variable TTF (`fvar` axis table required)."}),weight:An,italic:t.Optional(Fi),axes:t.Optional(t.Record(t.String(),t.Number(),{description:"Additional axis pin values (e.g. `{ ital: 1, opsz: 14 }`) merged on top of the derived `wght` pin. Uncommon — the `weight` field is usually enough."}))},{additionalProperties:!1,description:"Variable-font instancer. The fetcher pins `wght` to `weight` (plus any `axes` overrides) and emits a clean static TTF, bypassing upstream distributions that collapse multiple static weights onto the same glyph geometry."}),Mg=t.Object({kind:t.Literal("data"),data:t.String({description:"Base64-encoded TTF/OTF or data: URL (data:font/ttf;base64,...). Makes the JSON self-contained at the cost of size."}),weight:t.Optional(An),italic:t.Optional(Fi)},{additionalProperties:!1,description:"Inline base64 font — portable"}),kg=t.Union([Ag,jg,Rg,Mg,vg,Ug],{description:'A single font variant source. Use kind:"safe" for installed fonts, kind:"google" for Google Fonts, kind:"file" for local files, kind:"data" for base64, kind:"url" for direct HTTPS TTF/OTF URLs, kind:"variable" to instance a variable TTF at a specific weight.'}),Bg=t.Union([t.Literal("sans"),t.Literal("serif"),t.Literal("mono"),t.Literal("display"),t.Literal("handwriting")],{description:"Broad category used for fallback selection"}),Dg=t.Object({id:t.String({description:'Registry key. By convention, match the display family name ("Inter", "Roboto Slab").'}),family:t.String({description:"Display family used in font.family / fontFace / theme.fonts.*. Usually identical to id."}),category:t.Optional(Bg),sources:t.Array(kg,{minItems:1,description:"One or more weight/style variants. List at least a regular (weight 400, italic false)."})},{additionalProperties:!1,description:"A font registered for this document. Referenced by family from font.family, fontFace, and theme.fonts.*."}),$i=t.Array(Dg,{description:"Document-scoped font registry. Every non-safe font used in this document must be registered here."}),Eg=t.String({pattern:"^#?[0-9A-Fa-f]{6}$",description:"Hex color (e.g. #FF0000)"}),zg=["primary","secondary","accent","background","text","text2","background2","accent4","accent5","accent6"],Kg=["accent1","accent2","accent3","tx1","tx2","bg1","bg2"],Ni=t.Union([Eg,...zg.map(e=>t.Literal(e)),...Kg.map(e=>t.Literal(e))],{description:"Hex color or semantic theme color name"}),ls=["title","subtitle","heading1","heading2","heading3","body","caption"],ds=t.Union(ls.map(e=>t.Literal(e)),{description:"Predefined style name"}),Ci=t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right")],{description:"Horizontal alignment options"}),Ti=t.Union([t.Literal("top"),t.Literal("middle"),t.Literal("bottom")],{description:"Vertical alignment options"}),no=t.Object({type:t.Optional(t.Union([t.Literal("outer"),t.Literal("inner")],{description:"Shadow type"})),color:t.Optional(Ni),blur:t.Optional(t.Number({description:"Shadow blur radius in points"})),offset:t.Optional(t.Number({description:"Shadow offset in points"})),angle:t.Optional(t.Number({description:"Shadow angle in degrees"})),opacity:t.Optional(t.Number({minimum:0,maximum:1,description:"Shadow opacity (0-1)"}))},{description:"Shadow configuration",additionalProperties:!1}),Ct=t.Object({column:t.Number({minimum:0,description:"Starting column (0-indexed)"}),row:t.Number({minimum:0,description:"Starting row (0-indexed)"}),columnSpan:t.Optional(t.Number({minimum:1,description:"Number of columns to span (default: 1)"})),rowSpan:t.Optional(t.Number({minimum:1,description:"Number of rows to span (default: 1)"}))},{additionalProperties:!1,description:"Grid-based positioning"}),_g=t.Object({text:t.String({description:"Run text content"}),color:t.Optional(t.String({description:"Run color (hex without # or semantic theme name)"})),bold:t.Optional(t.Boolean({description:"Bold run"})),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Per-run weight (100–900). Overrides `bold` when set — renderer picks the closest embedded variant via CSS font-matching."})),italic:t.Optional(t.Boolean({description:"Italic run"})),underline:t.Optional(t.Union([t.Boolean({description:"Simple underline toggle"}),t.Object({style:t.Optional(t.Union([t.Literal("sng"),t.Literal("dbl"),t.Literal("dash"),t.Literal("dotted")])),color:t.Optional(t.String({description:"Underline color (hex)"}))},{additionalProperties:!1})])),strike:t.Optional(t.Boolean({description:"Strikethrough run"})),fontSize:t.Optional(t.Number({minimum:1,description:"Run font size in points"})),fontFace:t.Optional(t.String({description:"Run font family"})),superscript:t.Optional(t.Boolean({description:"Render run as superscript"})),subscript:t.Optional(t.Boolean({description:"Render run as subscript"})),charSpacing:t.Optional(t.Number({description:"Character spacing in points"})),breakLine:t.Optional(t.Boolean({description:"Insert line break after this run"}))},{description:"A styled text run. Run options override component-level defaults.",additionalProperties:!1}),Ai=t.Object({text:t.Optional(t.String({description:"Text content to display. Mutually exclusive with `runs` — set exactly one of the two."})),runs:t.Optional(t.Array(_g,{minItems:1,description:"Rich text runs with per-run styling, rendered as one text block. Mutually exclusive with `text` — set exactly one of the two. Component-level props (align, valign, fill, lineSpacing, position…) still apply to the whole block."})),x:t.Optional(t.Union([t.Number({description:"X position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"X as percentage"})])),y:t.Optional(t.Union([t.Number({description:"Y position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Y as percentage"})])),w:t.Optional(t.Union([t.Number({description:"Width in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Width as percentage"})])),h:t.Optional(t.Union([t.Number({description:"Height in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Height as percentage"})])),fontSize:t.Optional(t.Number({minimum:1,description:"Font size in points"})),fontFace:t.Optional(gn),color:t.Optional(t.String({description:'Text color (hex without #, e.g., "FF0000")'})),bold:t.Optional(t.Boolean({description:"Bold text"})),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Per-run weight (100–900). Renderer picks the closest embedded variant via CSS font-matching and references it through a synthetic family alias. Overrides `bold` when set."})),italic:t.Optional(t.Boolean({description:"Italic text"})),underline:t.Optional(t.Union([t.Boolean({description:"Simple underline toggle"}),t.Object({style:t.Optional(t.Union([t.Literal("sng"),t.Literal("dbl"),t.Literal("dash"),t.Literal("dotted")])),color:t.Optional(t.String({description:"Underline color (hex)"}))},{additionalProperties:!1})])),strike:t.Optional(t.Boolean({description:"Strikethrough text"})),language:t.Optional(t.String({pattern:"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$",description:'Language tag (BCP-47, e.g. "en-US", "fr-FR") for spell-checking this text. Overrides the presentation default.',examples:["en-US","fr-FR","de-DE","it-IT","es-ES"]})),align:t.Optional(Ci),valign:t.Optional(Ti),breakLine:t.Optional(t.Boolean({description:"Add line break after text"})),bullet:t.Optional(t.Union([t.Boolean({description:"Enable default bullet"}),t.Object({type:t.Optional(t.Union([t.Literal("bullet"),t.Literal("number")])),style:t.Optional(t.String({description:"Bullet character or style"})),startAt:t.Optional(t.Number({description:"Starting number for numbered lists"}))},{additionalProperties:!1})])),margin:t.Optional(t.Union([t.Number({description:"Margin in points (all sides)"}),t.Array(t.Number(),{description:"Margins as [top, right, bottom, left] in points",minItems:4,maxItems:4})])),rotate:t.Optional(t.Number({description:"Rotation angle in degrees"})),shadow:t.Optional(no),fill:t.Optional(t.Object({color:t.String({description:"Fill color (hex without #)"}),transparency:t.Optional(t.Number({minimum:0,maximum:100,description:"Fill transparency (0-100)"}))},{additionalProperties:!1})),hyperlink:t.Optional(t.Object({url:t.Optional(t.String({description:"Hyperlink URL"})),slide:t.Optional(t.Number({description:"Slide number to link to"})),tooltip:t.Optional(t.String({description:"Hyperlink tooltip"}))},{additionalProperties:!1})),lineSpacing:t.Optional(t.Number({description:"Line spacing in points"})),lineSpacingMultiple:t.Optional(t.Number({minimum:.1,maximum:10,description:"Line spacing as a multiple of the font size (e.g. 0.9 = 90%). Takes precedence over lineSpacing."})),charSpacing:t.Optional(t.Number({description:"Character spacing in points (positive = wider, negative = tighter)"})),paraSpaceBefore:t.Optional(t.Number({description:"Space before paragraph in points"})),paraSpaceAfter:t.Optional(t.Number({description:"Space after paragraph in points"})),grid:t.Optional(Ct),style:t.Optional(ds)},{description:"Text component props",additionalProperties:!1}),ji=t.Object({path:t.Optional(t.String({description:"Image file path or URL (mutually exclusive with base64 and svg)"})),base64:t.Optional(t.String({description:"Base64-encoded image data in data URI format (mutually exclusive with path and svg)"})),svg:t.Optional(t.String({description:'Raw inline SVG markup, e.g. "<svg xmlns=\\"http://www.w3.org/2000/svg\\" viewBox=\\"0 0 24 24\\">...</svg>" (mutually exclusive with path and base64). Wrapped into an image/svg+xml data URI and embedded as a vector (PowerPoint 2016+); intrinsic size taken from the SVG viewBox/width/height when w/h omitted.'})),x:t.Optional(t.Union([t.Number({description:"X position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"X as percentage"})])),y:t.Optional(t.Union([t.Number({description:"Y position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Y as percentage"})])),w:t.Optional(t.Union([t.Number({description:"Width in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Width as percentage"})])),h:t.Optional(t.Union([t.Number({description:"Height in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Height as percentage"})])),sizing:t.Optional(t.Object({type:t.Union([t.Literal("contain"),t.Literal("cover"),t.Literal("crop")],{description:"Image sizing strategy"}),w:t.Optional(t.Number({description:"Target width in inches"})),h:t.Optional(t.Number({description:"Target height in inches"}))},{description:"Image sizing options",additionalProperties:!1})),rotate:t.Optional(t.Number({description:"Rotation angle in degrees"})),rounding:t.Optional(t.Boolean({description:"Apply rounded corners to image"})),shadow:t.Optional(no),hyperlink:t.Optional(t.Object({url:t.Optional(t.String({description:"Hyperlink URL"})),slide:t.Optional(t.Number({description:"Slide number to link to"})),tooltip:t.Optional(t.String({description:"Hyperlink tooltip"}))},{additionalProperties:!1})),alt:t.Optional(t.String({description:"Alternative text for accessibility"})),grid:t.Optional(Ct)},{description:"PPTX image component props",additionalProperties:!1}),Hg=t.Union([t.Literal("rect"),t.Literal("roundRect"),t.Literal("ellipse"),t.Literal("triangle"),t.Literal("diamond"),t.Literal("pentagon"),t.Literal("hexagon"),t.Literal("star5"),t.Literal("star6"),t.Literal("line"),t.Literal("arc"),t.Literal("pie"),t.Literal("blockArc"),t.Literal("chord"),t.Literal("arrow"),t.Literal("chevron"),t.Literal("cloud"),t.Literal("heart"),t.Literal("lightning")],{description:"Shape type"}),Gg=t.Object({text:t.String(),fontSize:t.Optional(t.Number({minimum:1})),fontFace:t.Optional(t.String()),color:t.Optional(t.String({description:"Segment color (hex without # or semantic name)"})),bold:t.Optional(t.Boolean()),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900})),italic:t.Optional(t.Boolean()),breakLine:t.Optional(t.Boolean({description:"Insert line break after this segment"})),spaceBefore:t.Optional(t.Number({minimum:0,description:"Space before paragraph in points"})),spaceAfter:t.Optional(t.Number({minimum:0,description:"Space after paragraph in points"})),charSpacing:t.Optional(t.Number({description:"Character spacing in points"}))},{additionalProperties:!1}),Wg=["pct5","pct10","pct20","pct25","pct30","pct40","pct50","pct60","pct70","pct75","pct80","pct90","horz","vert","ltHorz","ltVert","dkHorz","dkVert","narHorz","narVert","dashHorz","dashVert","cross","dnDiag","upDiag","ltDnDiag","ltUpDiag","dkDnDiag","dkUpDiag","wdDnDiag","wdUpDiag","dashDnDiag","dashUpDiag","diagCross","smCheck","lgCheck","smGrid","lgGrid","dotGrid","smConfetti","lgConfetti","horzBrick","diagBrick","solidDmnd","openDmnd","dotDmnd","plaid","sphere","weave","divot","shingle","wave","trellis","zigZag"],qg=t.Object({color:t.String({description:"Stop color (hex without # or semantic theme name)"}),pos:t.Number({minimum:0,maximum:100,description:"Stop position along the gradient (0-100)"}),transparency:t.Optional(t.Number({minimum:0,maximum:100,description:"Stop transparency (0-100)"}))},{additionalProperties:!1,description:"Gradient color stop"}),ps=t.Object({type:t.Union([t.Literal("linear"),t.Literal("radial")],{description:"Gradient type"}),angle:t.Optional(t.Number({minimum:0,maximum:360,description:"Gradient angle in degrees for linear gradients (0 = left→right, 90 = top→bottom). Default: 0."})),stops:t.Array(qg,{minItems:2,description:"Gradient color stops (at least 2)"}),focus:t.Optional(t.Union([t.Literal("center"),t.Literal("topLeft"),t.Literal("topRight"),t.Literal("bottomLeft"),t.Literal("bottomRight")],{description:'Focus point for radial gradients (default: "center")'}))},{additionalProperties:!1,description:"Gradient fill configuration"}),Jg=t.Object({preset:t.Union(Wg.map(e=>t.Literal(e)),{description:"OOXML pattern preset name (a:pattFill prst value)"}),foreground:t.String({description:"Pattern foreground color (hex without # or semantic name)"}),background:t.String({description:"Pattern background color (hex without # or semantic name)"})},{additionalProperties:!1,description:"Pattern fill configuration"}),Ri=t.Object({type:Hg,x:t.Optional(t.Union([t.Number({description:"X position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"X as percentage"})])),y:t.Optional(t.Union([t.Number({description:"Y position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Y as percentage"})])),w:t.Optional(t.Union([t.Number({description:"Width in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Width as percentage"})])),h:t.Optional(t.Union([t.Number({description:"Height in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Height as percentage"})])),fill:t.Optional(t.Object({color:t.Optional(t.String({description:"Fill color (hex without #)"})),transparency:t.Optional(t.Number({minimum:0,maximum:100,description:"Fill transparency (0-100)"})),gradient:t.Optional(ps),pattern:t.Optional(Jg)},{additionalProperties:!1})),line:t.Optional(t.Object({color:t.Optional(t.String({description:"Line color (hex without #)"})),width:t.Optional(t.Number({minimum:0,description:"Line width in points"})),dashType:t.Optional(t.Union([t.Literal("solid"),t.Literal("dash"),t.Literal("dot"),t.Literal("dashDot")]))},{additionalProperties:!1})),text:t.Optional(t.Union([t.String({description:"Plain text"}),t.Array(Gg,{description:"Rich text segments with per-segment formatting"})],{description:"Text content inside the shape"})),fontSize:t.Optional(t.Number({minimum:1,description:"Font size for shape text"})),fontFace:t.Optional(t.String({description:"Font family for shape text"})),fontColor:t.Optional(t.String({description:"Font color for shape text (hex without #)"})),charSpacing:t.Optional(t.Number({description:"Character spacing in points for shape text"})),bold:t.Optional(t.Boolean({description:"Bold shape text"})),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Per-shape weight (100–900). Overrides `bold` when set."})),italic:t.Optional(t.Boolean({description:"Italic shape text"})),align:t.Optional(Ci),valign:t.Optional(Ti),rotate:t.Optional(t.Number({description:"Rotation angle in degrees"})),angleRange:t.Optional(t.Array(t.Number(),{minItems:2,maxItems:2,description:"Shape arc [start, end] angles in degrees (arc/pie/blockArc/chord shapes)"})),flipH:t.Optional(t.Boolean({description:"Flip shape horizontally"})),flipV:t.Optional(t.Boolean({description:"Flip shape vertically"})),shadow:t.Optional(no),rectRadius:t.Optional(t.Number({minimum:0,description:"Corner radius for roundRect shape in inches"})),grid:t.Optional(Ct),style:t.Optional(ds)},{description:"Shape component props",additionalProperties:!1}),Xg=t.Union([t.String({description:"Simple text cell"}),t.Object({text:t.String({description:"Cell text content"}),color:t.Optional(t.String({description:"Text color (hex without #)"})),fill:t.Optional(t.String({description:"Cell background color (hex without #)"})),fontSize:t.Optional(t.Number({description:"Font size in points"})),fontFace:t.Optional(t.String({description:"Font family"})),bold:t.Optional(t.Boolean({description:"Bold text"})),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Per-cell weight (100–900). Overrides `bold` when set."})),italic:t.Optional(t.Boolean({description:"Italic text"})),align:t.Optional(Ci),valign:t.Optional(Ti),colspan:t.Optional(t.Number({minimum:1,description:"Column span"})),rowspan:t.Optional(t.Number({minimum:1,description:"Row span"})),margin:t.Optional(t.Union([t.Number({description:"Margin in points (all sides)"}),t.Array(t.Number(),{minItems:4,maxItems:4})]))},{additionalProperties:!1})]),vi=t.Object({rows:t.Array(t.Array(Xg,{description:"Row of cells"}),{description:"Table rows (array of arrays)",minItems:1}),x:t.Optional(t.Union([t.Number({description:"X position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"X as percentage"})])),y:t.Optional(t.Union([t.Number({description:"Y position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Y as percentage"})])),w:t.Optional(t.Union([t.Number({description:"Width in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Width as percentage"})])),h:t.Optional(t.Union([t.Number({description:"Height in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Height as percentage"})])),colW:t.Optional(t.Union([t.Number({description:"Uniform column width in inches"}),t.Array(t.Number(),{description:"Individual column widths in inches"})])),rowH:t.Optional(t.Union([t.Number({description:"Uniform row height in inches"}),t.Array(t.Number(),{description:"Individual row heights in inches"})])),border:t.Optional(t.Object({type:t.Optional(t.Union([t.Literal("solid"),t.Literal("dash"),t.Literal("dot"),t.Literal("none")])),pt:t.Optional(t.Number({minimum:0,description:"Border width in points"})),color:t.Optional(t.String({description:"Border color (hex without #)"}))},{additionalProperties:!1})),fill:t.Optional(t.String({description:"Table background color (hex without #)"})),fontSize:t.Optional(t.Number({minimum:1,description:"Default font size for all cells"})),fontFace:t.Optional(t.String({description:"Default font family for all cells"})),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Default weight for all cells (100–900). Same sub-family aliasing as the per-cell `fontWeight`; a cell that sets its own `fontWeight` or `bold` opts out."})),color:t.Optional(t.String({description:"Default text color for all cells (hex without #)"})),align:t.Optional(Ci),valign:t.Optional(Ti),autoPage:t.Optional(t.Boolean({description:"Auto-paginate table across multiple slides when content overflows"})),autoPageRepeatHeader:t.Optional(t.Boolean({description:"Repeat first row as header on each auto-paged slide"})),margin:t.Optional(t.Union([t.Number({description:"Cell margin in points (all sides)"}),t.Array(t.Number(),{minItems:4,maxItems:4})])),borderRadius:t.Optional(t.Number({minimum:0,description:"Rounded corner radius in inches. Renders a roundRect shape behind the table."})),grid:t.Optional(Ct)},{description:"PPTX table component props",additionalProperties:!1}),Ui=t.Object({options:t.Intersect([t.Record(t.String(),t.Unknown()),t.Object({chart:t.Object({width:t.Number(),height:t.Number()})})]),scale:t.Optional(t.Number()),serverUrl:t.Optional(t.String({description:"Highcharts Export Server URL (default: http://localhost:7801)"})),resources:t.Optional(t.Object({css:t.Optional(t.String()),js:t.Optional(t.String()),files:t.Optional(t.Array(t.String()))})),x:t.Optional(t.Union([t.Number({description:"X position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"X as percentage"})])),y:t.Optional(t.Union([t.Number({description:"Y position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Y as percentage"})])),w:t.Optional(t.Union([t.Number({description:"Width in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Width as percentage"})])),h:t.Optional(t.Union([t.Number({description:"Height in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Height as percentage"})])),grid:t.Optional(Ct)},{description:"PPTX Highcharts component props",additionalProperties:!1}),En=t.Union([t.Number(),t.String({pattern:"^\\d+(\\.\\d+)?%$"})]),Vg=t.Union([t.Literal("area"),t.Literal("bar"),t.Literal("bar3D"),t.Literal("bubble"),t.Literal("doughnut"),t.Literal("line"),t.Literal("pie"),t.Literal("radar"),t.Literal("scatter")],{description:"Chart type"}),Yg=t.Object({name:t.Optional(t.String({description:"Series name"})),labels:t.Optional(t.Array(t.String(),{description:"Category labels"})),values:t.Optional(t.Array(t.Number(),{description:"Data values"})),sizes:t.Optional(t.Array(t.Number(),{description:"Bubble sizes (bubble charts only)"}))},{additionalProperties:!1}),Ro=t.Object({style:t.Optional(t.Union([t.Literal("solid"),t.Literal("dash"),t.Literal("dot"),t.Literal("none")],{description:"Grid line style"})),size:t.Optional(t.Number({minimum:0,description:"Grid line width (points)"})),color:t.Optional(t.String({description:"Grid line color (hex or semantic)"}))},{additionalProperties:!1,description:"Axis grid line styling"}),Mi=t.Object({type:Vg,data:t.Array(Yg,{description:"Chart data series",minItems:1}),showLegend:t.Optional(t.Boolean({description:"Show chart legend"})),showTitle:t.Optional(t.Boolean({description:"Show chart title"})),showValue:t.Optional(t.Boolean({description:"Show data values"})),showPercent:t.Optional(t.Boolean({description:"Show percentages (pie/doughnut)"})),showLabel:t.Optional(t.Boolean({description:"Show category labels on data points"})),showSerName:t.Optional(t.Boolean({description:"Show series name on data points"})),title:t.Optional(t.String({description:"Chart title text"})),titleFontSize:t.Optional(t.Number({description:"Title font size (points)"})),titleColor:t.Optional(t.String({description:"Title color (hex or semantic)"})),titleFontFace:t.Optional(t.String({description:"Title font face"})),titleFontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Title weight (100–900). Rendered as a sub-family alias — see `dataLabelFontWeight`."})),chartColors:t.Optional(t.Array(t.String(),{description:"Series colors (hex or semantic theme names). Defaults to theme palette."})),dataBorder:t.Optional(t.Object({pt:t.Number({minimum:0,description:"Border width (points)"}),color:t.String({description:"Border color (hex or semantic)"})},{additionalProperties:!1,description:"Outline on data elements (bars, slices, areas)"})),legendPos:t.Optional(t.Union([t.Literal("b"),t.Literal("l"),t.Literal("r"),t.Literal("t"),t.Literal("tr")],{description:"Legend position"})),legendFontSize:t.Optional(t.Number({description:"Legend font size"})),legendFontFace:t.Optional(t.String({description:"Legend font face"})),legendFontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Legend weight (100–900). Rendered as a sub-family alias — see `dataLabelFontWeight`. PowerPoint gives the legend no bold toggle, so 400 and 700 both render Regular (700 warns)."})),legendColor:t.Optional(t.String({description:"Legend text color"})),catAxisTitle:t.Optional(t.String({description:"Category axis title"})),catAxisHidden:t.Optional(t.Boolean({description:"Hide category axis"})),catAxisLabelRotate:t.Optional(t.Number({description:"Category axis label rotation (degrees)"})),catAxisLabelFontSize:t.Optional(t.Number({description:"Category axis label font size"})),catAxisLabelColor:t.Optional(t.String({description:"Category axis label color (hex or semantic)"})),catAxisLabelFontFace:t.Optional(t.String({description:"Category axis label font face"})),catAxisLabelFontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Category axis label weight (100–900). Rendered as a sub-family alias — see `dataLabelFontWeight`."})),catGridLine:t.Optional(Ro),valAxisTitle:t.Optional(t.String({description:"Value axis title"})),valAxisHidden:t.Optional(t.Boolean({description:"Hide value axis"})),valAxisMinVal:t.Optional(t.Number({description:"Value axis minimum"})),valAxisMaxVal:t.Optional(t.Number({description:"Value axis maximum"})),valAxisLabelFormatCode:t.Optional(t.String({description:'Value axis label format (e.g. "$0.00", "#%")'})),valAxisMajorUnit:t.Optional(t.Number({description:"Value axis major unit / tick interval"})),valAxisLabelColor:t.Optional(t.String({description:"Value axis label color (hex or semantic)"})),valAxisLabelFontFace:t.Optional(t.String({description:"Value axis label font face"})),valAxisLabelFontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Value axis label weight (100–900). Rendered as a sub-family alias — see `dataLabelFontWeight`."})),valAxisLabelFontSize:t.Optional(t.Number({description:"Value axis label font size"})),valGridLine:t.Optional(Ro),catAxisLineShow:t.Optional(t.Boolean({description:"Show the category axis line"})),valAxisLineShow:t.Optional(t.Boolean({description:"Show the value axis line"})),barDir:t.Optional(t.Union([t.Literal("bar"),t.Literal("col")],{description:'Bar direction: "bar" (horizontal) or "col" (vertical, default)'})),barGrouping:t.Optional(t.Union([t.Literal("clustered"),t.Literal("stacked"),t.Literal("percentStacked")],{description:"Bar grouping style"})),barGapWidthPct:t.Optional(t.Number({minimum:0,maximum:500,description:"Bar gap width (0-500%)"})),barOverlapPct:t.Optional(t.Number({minimum:-100,maximum:100,description:"Overlap between series bars (-100 to 100%). 100 = fully overlapped, negative = gap."})),lineSmooth:t.Optional(t.Boolean({description:"Smooth lines"})),lineDataSymbol:t.Optional(t.Union([t.Literal("circle"),t.Literal("dash"),t.Literal("diamond"),t.Literal("dot"),t.Literal("none"),t.Literal("square"),t.Literal("triangle")],{description:"Line data point marker symbol"})),lineSize:t.Optional(t.Number({description:"Line width (points)"})),lineDataSymbolSize:t.Optional(t.Number({minimum:2,maximum:72,description:"Line data point marker size (points)"})),firstSliceAng:t.Optional(t.Number({minimum:0,maximum:359,description:"Angle of first slice (degrees)"})),holeSize:t.Optional(t.Number({minimum:10,maximum:90,description:"Doughnut hole size (%)"})),radarStyle:t.Optional(t.Union([t.Literal("standard"),t.Literal("marker"),t.Literal("filled")],{description:"Radar chart style"})),dataLabelColor:t.Optional(t.String({description:"Data label text color"})),dataLabelFontSize:t.Optional(t.Number({description:"Data label font size"})),dataLabelFontFace:t.Optional(t.String({description:"Data label font face"})),dataLabelFontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:'Data label weight (100–900); overrides `dataLabelFontBold`. PowerPoint chart labels carry no numeric weight, so a non-RIBBI weight renders by rewriting the font face to the matching sub-family ("Inter" at 300 → "Inter Light") — 400 and 700 stay on the family and use the bold toggle. Falls back to the theme body font when the sibling font face is unset.'})),dataLabelFontBold:t.Optional(t.Boolean({description:"Bold data labels"})),dataLabelPosition:t.Optional(t.Union([t.Literal("b"),t.Literal("bestFit"),t.Literal("ctr"),t.Literal("l"),t.Literal("r"),t.Literal("t"),t.Literal("inEnd"),t.Literal("outEnd")],{description:"Data label position"})),x:t.Optional(En),y:t.Optional(En),w:t.Optional(En),h:t.Optional(En),grid:t.Optional(Ct)},{description:"Native PowerPoint chart component props",additionalProperties:!1}),tt=[{name:"text",propsSchema:Ai,hasChildren:!1,category:"content",description:"Text element - displays text with formatting, positioning and styling options."},{name:"image",propsSchema:ji,hasChildren:!1,category:"content",description:"Image element - displays images from file path, URL, or base64 data."},{name:"shape",propsSchema:Ri,hasChildren:!1,category:"content",description:"Shape element - draws geometric shapes with optional text, fill, and line styling."},{name:"table",propsSchema:vi,hasChildren:!1,category:"content",description:"Table element - displays tabular data with rows and columns."},{name:"highcharts",propsSchema:Ui,hasChildren:!1,category:"content",description:"Highcharts element - renders charts via Highcharts Export Server."},{name:"chart",propsSchema:Mi,hasChildren:!1,category:"content",description:"Native PowerPoint chart - editable, scalable, no external server needed."}];function Rt(e){return t.Object({name:t.Literal(e.name),id:t.Optional(t.String()),enabled:t.Optional(t.Boolean({default:!0,description:"When false, this component is filtered out and not rendered. Defaults to true."})),props:e.propsSchema},{additionalProperties:!1,description:e.description})}var Zg=t.Union([Rt(tt[0]),Rt(tt[1]),Rt(tt[2]),Rt(tt[3]),Rt(tt[4]),Rt(tt[5])],{$id:"PptxSlideContent",discriminator:{propertyName:"name"},description:"A single PPTX slide content element (text, image, shape, table, highcharts, or chart)."}),Qg=t.Partial(Ai),eh=t.Partial(ji),th=t.Partial(Ri),nh=t.Partial(vi),ih=t.Partial(Ui),rh=t.Partial(Mi),us=t.Object({text:t.Optional(Qg),image:t.Optional(eh),shape:t.Optional(th),table:t.Optional(nh),highcharts:t.Optional(ih),chart:t.Optional(rh)},{additionalProperties:!0});function ms(e){var i;if(typeof e!="object"||e===null||Array.isArray(e))return;const n=(i=e.properties)==null?void 0:i.name;return typeof(n==null?void 0:n.const)=="string"?n.const:void 0}function oh(e){var i;const n=(i=e.properties)==null?void 0:i.version;return typeof(n==null?void 0:n.const)=="string"}function ah(e){return Array.isArray(e.required)&&e.required.includes("name")}function sh(e){const n=new Map;for(const i of e){const r=ms(i),o=n.get(r);o?o.push(i):n.set(r,[i])}return n}function ch(e,n){const i=n.find(r=>!oh(r)&&typeof r.description=="string")??n.find(r=>typeof r.description=="string");return{const:e,type:"string",...i?{description:i.description}:{}}}function lh(e){const n=new WeakSet;function i(r){if(typeof r!="object"||r===null||n.has(r))return;if(n.add(r),Array.isArray(r)){r.forEach(i);return}const o=r,a=o.anyOf,l=Array.isArray(a)&&a.length>=2&&a.every(c=>ms(c)!==void 0&&ah(c))&&o.properties===void 0&&o.allOf===void 0&&o.if===void 0&&o.required===void 0&&o.additionalProperties===void 0&&(o.type===void 0||o.type==="object")?sh(a):void 0;l&&l.size>=2&&(o.type="object",o.required=["name"],o.properties={name:{anyOf:[...l.entries()].map(([c,m])=>ch(c,m))}},o.allOf=[...l.entries()].map(([c,m])=>({if:{properties:{name:{const:c}},required:["name"]},then:m.length===1?m[0]:{anyOf:m}})),delete o.anyOf);for(const c of Object.values(o))i(c)}i(e)}function dh(e){if(typeof e!="object"||e===null)return[];const n=e;return Array.isArray(n.anyOf)?n.anyOf.filter(i=>typeof i=="object"&&i!==null):Array.isArray(n.allOf)?n.allOf.flatMap(i=>{const r=i==null?void 0:i.then;if(typeof r!="object"||r===null)return[];const o=r.anyOf;return Array.isArray(o)?o.filter(a=>typeof a=="object"&&a!==null):[r]}):[]}function lr(e,n,i){if(!(typeof e!="object"||e===null)){if(Array.isArray(e)){e.forEach(r=>{typeof r=="object"&&r!==null&&lr(r,n,i)});return}e.$ref===n&&(e.$ref=i);for(const r of Object.values(e))typeof r=="object"&&r!==null&&lr(r,n,i)}}function ph(e,n="ComponentDefinition"){function i(r,o=""){if(!(typeof r!="object"||r===null))for(const[a,s]of Object.entries(r)){const l=o?`${o}.${a}`:a;if(s&&typeof s=="object"){const c=s;if(c.type==="array"&&c.items&&Object.keys(c.items).length===0&&(c.items={$ref:`#/definitions/${n}`}),c.type==="array"&&c.items&&typeof c.items=="object"&&"$ref"in c.items&&typeof c.items.$ref=="string"&&/^T\d+$/.test(c.items.$ref)&&(c.items={$ref:`#/definitions/${n}`}),typeof c.$ref=="string"&&(/^T\d+$/.test(c.$ref)||c.$ref===n)&&(c.$ref=`#/definitions/${n}`),a==="$id"&&typeof s=="string"&&(/^T\d+$/.test(s)||s===n)&&l!==`definitions.${n}.$id`){delete r[a];continue}i(s,l)}}}i(e)}function fs(e,n={}){const{$schema:i="https://json-schema.org/draft-07/schema#",$id:r,title:o,description:a,definitions:s={}}=n,l=JSON.parse(JSON.stringify(e));if(l.$id&&typeof l.$id=="string"&&/^T\d+$/.test(l.$id)){const L=l.$id;delete l.$id,lr(l,L,"#")}const c={...s};function m(L,I=""){if(!(typeof L!="object"||L===null)){for(const[A,h]of Object.entries(L))if(h&&typeof h=="object"){const u=h;if(u.$id&&typeof u.$id=="string"){const P=u.$id;if(I!==`definitions.${P}`){const{$id:j,...re}=u;c[P]=re,L[A]={$ref:`#/definitions/${P}`},m(re,`definitions.${P}`);continue}}m(h,I?`${I}.${A}`:A)}}}m(l);const x={$schema:i};return r&&(x.$id=r),Object.assign(x,l),x.$schema=i,r&&(x.$id=r),o!==void 0&&(x.title=o),a!==void 0&&(x.description=a),Object.keys(c).length>0&&(x.definitions=c),ph(x),lh(x),x}var Me={};function uh(){return typeof process>"u"||!Me?!1:!!(Me.CI||Me.GITHUB_ACTIONS||Me.GITLAB_CI)}function mh(){var e;return typeof process>"u"||Me!=null&&Me.NO_COLOR?!1:Me!=null&&Me.FORCE_COLOR||(e=process.stdout)!=null&&e.isTTY?!0:!uh()}mh();var fh=/^(\d+)\.(\d+)\.(\d+)$/;function vo(e){const n=e.match(fh);if(!n)throw new Error(`Invalid semver: "${e}". Expected format: major.minor.patch`);return{major:Number(n[1]),minor:Number(n[2]),patch:Number(n[3])}}function gh(e,n){const i=vo(e),r=vo(n);return i.major-r.major||i.minor-r.minor||i.patch-r.patch}function gs(e){if(e.length===0)throw new Error("Cannot determine latest version from empty array");return e.reduce((n,i)=>gh(i,n)>0?i:n)}function hh(e){switch(e.errorType){case d.ArrayContains:return"Expected array to contain at least one matching value";case d.ArrayMaxContains:return`Expected array to contain no more than ${e.schema.maxContains} matching values`;case d.ArrayMinContains:return`Expected array to contain at least ${e.schema.minContains} matching values`;case d.ArrayMaxItems:return`Expected array length to be less or equal to ${e.schema.maxItems}`;case d.ArrayMinItems:return`Expected array length to be greater or equal to ${e.schema.minItems}`;case d.ArrayUniqueItems:return"Expected array elements to be unique";case d.Array:return"Expected array";case d.AsyncIterator:return"Expected AsyncIterator";case d.BigIntExclusiveMaximum:return`Expected bigint to be less than ${e.schema.exclusiveMaximum}`;case d.BigIntExclusiveMinimum:return`Expected bigint to be greater than ${e.schema.exclusiveMinimum}`;case d.BigIntMaximum:return`Expected bigint to be less or equal to ${e.schema.maximum}`;case d.BigIntMinimum:return`Expected bigint to be greater or equal to ${e.schema.minimum}`;case d.BigIntMultipleOf:return`Expected bigint to be a multiple of ${e.schema.multipleOf}`;case d.BigInt:return"Expected bigint";case d.Boolean:return"Expected boolean";case d.DateExclusiveMinimumTimestamp:return`Expected Date timestamp to be greater than ${e.schema.exclusiveMinimumTimestamp}`;case d.DateExclusiveMaximumTimestamp:return`Expected Date timestamp to be less than ${e.schema.exclusiveMaximumTimestamp}`;case d.DateMinimumTimestamp:return`Expected Date timestamp to be greater or equal to ${e.schema.minimumTimestamp}`;case d.DateMaximumTimestamp:return`Expected Date timestamp to be less or equal to ${e.schema.maximumTimestamp}`;case d.DateMultipleOfTimestamp:return`Expected Date timestamp to be a multiple of ${e.schema.multipleOfTimestamp}`;case d.Date:return"Expected Date";case d.Function:return"Expected function";case d.IntegerExclusiveMaximum:return`Expected integer to be less than ${e.schema.exclusiveMaximum}`;case d.IntegerExclusiveMinimum:return`Expected integer to be greater than ${e.schema.exclusiveMinimum}`;case d.IntegerMaximum:return`Expected integer to be less or equal to ${e.schema.maximum}`;case d.IntegerMinimum:return`Expected integer to be greater or equal to ${e.schema.minimum}`;case d.IntegerMultipleOf:return`Expected integer to be a multiple of ${e.schema.multipleOf}`;case d.Integer:return"Expected integer";case d.IntersectUnevaluatedProperties:return"Unexpected property";case d.Intersect:return"Expected all values to match";case d.Iterator:return"Expected Iterator";case d.Literal:return`Expected ${typeof e.schema.const=="string"?`'${e.schema.const}'`:e.schema.const}`;case d.Never:return"Never";case d.Not:return"Value should not match";case d.Null:return"Expected null";case d.NumberExclusiveMaximum:return`Expected number to be less than ${e.schema.exclusiveMaximum}`;case d.NumberExclusiveMinimum:return`Expected number to be greater than ${e.schema.exclusiveMinimum}`;case d.NumberMaximum:return`Expected number to be less or equal to ${e.schema.maximum}`;case d.NumberMinimum:return`Expected number to be greater or equal to ${e.schema.minimum}`;case d.NumberMultipleOf:return`Expected number to be a multiple of ${e.schema.multipleOf}`;case d.Number:return"Expected number";case d.Object:return"Expected object";case d.ObjectAdditionalProperties:return"Unexpected property";case d.ObjectMaxProperties:return`Expected object to have no more than ${e.schema.maxProperties} properties`;case d.ObjectMinProperties:return`Expected object to have at least ${e.schema.minProperties} properties`;case d.ObjectRequiredProperty:return"Expected required property";case d.Promise:return"Expected Promise";case d.RegExp:return"Expected string to match regular expression";case d.StringFormatUnknown:return`Unknown format '${e.schema.format}'`;case d.StringFormat:return`Expected string to match '${e.schema.format}' format`;case d.StringMaxLength:return`Expected string length less or equal to ${e.schema.maxLength}`;case d.StringMinLength:return`Expected string length greater or equal to ${e.schema.minLength}`;case d.StringPattern:return`Expected string to match '${e.schema.pattern}'`;case d.String:return"Expected string";case d.Symbol:return"Expected symbol";case d.TupleLength:return`Expected tuple to have ${e.schema.maxItems||0} elements`;case d.Tuple:return"Expected tuple";case d.Uint8ArrayMaxByteLength:return`Expected byte length less or equal to ${e.schema.maxByteLength}`;case d.Uint8ArrayMinByteLength:return`Expected byte length greater or equal to ${e.schema.minByteLength}`;case d.Uint8Array:return"Expected Uint8Array";case d.Undefined:return"Expected undefined";case d.Union:return"Expected union value";case d.Void:return"Expected void";case d.Kind:return`Expected kind '${e.schema[y]}'`;default:return"Unknown error type"}}let bh=hh;function Oh(){return bh}class yh extends ve{constructor(n){super(`Unable to dereference schema with $id '${n.$ref}'`),this.schema=n}}function xh(e,n){const i=n.find(r=>r.$id===e.$ref);if(i===void 0)throw new yh(e);return Tt(i,n)}function hs(e,n){return!ke(e.$id)||n.some(i=>i.$id===e.$id)||n.push(e),n}function Tt(e,n){return e[y]==="This"||e[y]==="Ref"?xh(e,n):e}class Sh extends ve{constructor(n){super("Unable to hash value"),this.value=n}}var xe;(function(e){e[e.Undefined=0]="Undefined",e[e.Null=1]="Null",e[e.Boolean=2]="Boolean",e[e.Number=3]="Number",e[e.String=4]="String",e[e.Object=5]="Object",e[e.Array=6]="Array",e[e.Date=7]="Date",e[e.Uint8Array=8]="Uint8Array",e[e.Symbol=9]="Symbol",e[e.BigInt=10]="BigInt"})(xe||(xe={}));let Bt=BigInt("14695981039346656037");const[wh,Lh]=[BigInt("1099511628211"),BigInt("18446744073709551616")],Ph=Array.from({length:256}).map((e,n)=>BigInt(n)),bs=new Float64Array(1),Os=new DataView(bs.buffer),ys=new Uint8Array(bs.buffer);function*Ih(e){const n=e===0?1:Math.ceil(Math.floor(Math.log2(e)+1)/8);for(let i=0;i<n;i++)yield e>>8*(n-1-i)&255}function Fh(e){ae(xe.Array);for(const n of e)Ht(n)}function $h(e){ae(xe.Boolean),ae(e?1:0)}function Nh(e){ae(xe.BigInt),Os.setBigInt64(0,e);for(const n of ys)ae(n)}function Ch(e){ae(xe.Date),Ht(e.getTime())}function Th(e){ae(xe.Null)}function Ah(e){ae(xe.Number),Os.setFloat64(0,e);for(const n of ys)ae(n)}function jh(e){ae(xe.Object);for(const n of globalThis.Object.getOwnPropertyNames(e).sort())Ht(n),Ht(e[n])}function Rh(e){ae(xe.String);for(let n=0;n<e.length;n++)for(const i of Ih(e.charCodeAt(n)))ae(i)}function vh(e){ae(xe.Symbol),Ht(e.description)}function Uh(e){ae(xe.Uint8Array);for(let n=0;n<e.length;n++)ae(e[n])}function Mh(e){return ae(xe.Undefined)}function Ht(e){if(Ee(e))return Fh(e);if(ti(e))return $h(e);if(ni(e))return Nh(e);if(yn(e))return Ch(e);if(ei(e))return Th();if(He(e))return Ah(e);if(De(e))return jh(e);if(ke(e))return Rh(e);if(ii(e))return vh(e);if(Sr(e))return Uh(e);if(rt(e))return Mh();throw new Sh(e)}function ae(e){Bt=Bt^Ph[e],Bt=Bt*wh%Lh}function xs(e){return Bt=BigInt("14695981039346656037"),Ht(e),Bt}class kh extends ve{constructor(n){super("Unknown type"),this.schema=n}}function Bh(e){return e[y]==="Any"||e[y]==="Unknown"}function $(e){return e!==void 0}function Dh(e,n,i){return!0}function Eh(e,n,i){return!0}function zh(e,n,i){if(!Ee(i)||$(e.minItems)&&!(i.length>=e.minItems)||$(e.maxItems)&&!(i.length<=e.maxItems)||!i.every(a=>X(e.items,n,a))||e.uniqueItems===!0&&!function(){const a=new Set;for(const s of i){const l=xs(s);if(a.has(l))return!1;a.add(l)}return!0}())return!1;if(!($(e.contains)||He(e.minContains)||He(e.maxContains)))return!0;const r=$(e.contains)?e.contains:D(),o=i.reduce((a,s)=>X(r,n,s)?a+1:a,0);return!(o===0||He(e.minContains)&&o<e.minContains||He(e.maxContains)&&o>e.maxContains)}function Kh(e,n,i){return ca(i)}function _h(e,n,i){return!(!ni(i)||$(e.exclusiveMaximum)&&!(i<e.exclusiveMaximum)||$(e.exclusiveMinimum)&&!(i>e.exclusiveMinimum)||$(e.maximum)&&!(i<=e.maximum)||$(e.minimum)&&!(i>=e.minimum)||$(e.multipleOf)&&i%e.multipleOf!==BigInt(0))}function Hh(e,n,i){return ti(i)}function Gh(e,n,i){return X(e.returns,n,i.prototype)}function Wh(e,n,i){return!(!yn(i)||$(e.exclusiveMaximumTimestamp)&&!(i.getTime()<e.exclusiveMaximumTimestamp)||$(e.exclusiveMinimumTimestamp)&&!(i.getTime()>e.exclusiveMinimumTimestamp)||$(e.maximumTimestamp)&&!(i.getTime()<=e.maximumTimestamp)||$(e.minimumTimestamp)&&!(i.getTime()>=e.minimumTimestamp)||$(e.multipleOfTimestamp)&&i.getTime()%e.multipleOfTimestamp!==0)}function qh(e,n,i){return wr(i)}function Jh(e,n,i){const r=globalThis.Object.values(e.$defs),o=e.$defs[e.$ref];return X(o,[...n,...r],i)}function Xh(e,n,i){return!(!pa(i)||$(e.exclusiveMaximum)&&!(i<e.exclusiveMaximum)||$(e.exclusiveMinimum)&&!(i>e.exclusiveMinimum)||$(e.maximum)&&!(i<=e.maximum)||$(e.minimum)&&!(i>=e.minimum)||$(e.multipleOf)&&i%e.multipleOf!==0)}function Vh(e,n,i){const r=e.allOf.every(o=>X(o,n,i));if(e.unevaluatedProperties===!1){const o=new RegExp(Zn(e)),a=Object.getOwnPropertyNames(i).every(s=>o.test(s));return r&&a}else if(We(e.unevaluatedProperties)){const o=new RegExp(Zn(e)),a=Object.getOwnPropertyNames(i).every(s=>o.test(s)||X(e.unevaluatedProperties,n,i[s]));return r&&a}else return r}function Yh(e,n,i){return la(i)}function Zh(e,n,i){return i===e.const}function Qh(e,n,i){return!1}function eb(e,n,i){return!X(e.not,n,i)}function tb(e,n,i){return ei(i)}function nb(e,n,i){return!(!be.IsNumberLike(i)||$(e.exclusiveMaximum)&&!(i<e.exclusiveMaximum)||$(e.exclusiveMinimum)&&!(i>e.exclusiveMinimum)||$(e.minimum)&&!(i>=e.minimum)||$(e.maximum)&&!(i<=e.maximum)||$(e.multipleOf)&&i%e.multipleOf!==0)}function ib(e,n,i){if(!be.IsObjectLike(i)||$(e.minProperties)&&!(Object.getOwnPropertyNames(i).length>=e.minProperties)||$(e.maxProperties)&&!(Object.getOwnPropertyNames(i).length<=e.maxProperties))return!1;const r=Object.getOwnPropertyNames(e.properties);for(const o of r){const a=e.properties[o];if(e.required&&e.required.includes(o)){if(!X(a,n,i[o])||(Nn(a)||Bh(a))&&!(o in i))return!1}else if(be.IsExactOptionalProperty(i,o)&&!X(a,n,i[o]))return!1}if(e.additionalProperties===!1){const o=Object.getOwnPropertyNames(i);return e.required&&e.required.length===r.length&&o.length===r.length?!0:o.every(a=>r.includes(a))}else return typeof e.additionalProperties=="object"?Object.getOwnPropertyNames(i).every(a=>r.includes(a)||X(e.additionalProperties,n,i[a])):!0}function rb(e,n,i){return da(i)}function ob(e,n,i){if(!be.IsRecordLike(i)||$(e.minProperties)&&!(Object.getOwnPropertyNames(i).length>=e.minProperties)||$(e.maxProperties)&&!(Object.getOwnPropertyNames(i).length<=e.maxProperties))return!1;const[r,o]=Object.entries(e.patternProperties)[0],a=new RegExp(r),s=Object.entries(i).every(([m,x])=>a.test(m)?X(o,n,x):!0),l=typeof e.additionalProperties=="object"?Object.entries(i).every(([m,x])=>a.test(m)?!0:X(e.additionalProperties,n,x)):!0,c=e.additionalProperties===!1?Object.getOwnPropertyNames(i).every(m=>a.test(m)):!0;return s&&l&&c}function ab(e,n,i){return X(Tt(e,n),n,i)}function sb(e,n,i){const r=new RegExp(e.source,e.flags);return $(e.minLength)&&!(i.length>=e.minLength)||$(e.maxLength)&&!(i.length<=e.maxLength)?!1:r.test(i)}function cb(e,n,i){return!ke(i)||$(e.minLength)&&!(i.length>=e.minLength)||$(e.maxLength)&&!(i.length<=e.maxLength)||$(e.pattern)&&!new RegExp(e.pattern).test(i)?!1:$(e.format)?Ia(e.format)?$a(e.format)(i):!1:!0}function lb(e,n,i){return ii(i)}function db(e,n,i){return ke(i)&&new RegExp(e.pattern).test(i)}function pb(e,n,i){return X(Tt(e,n),n,i)}function ub(e,n,i){if(!Ee(i)||e.items===void 0&&i.length!==0||i.length!==e.maxItems)return!1;if(!e.items)return!0;for(let r=0;r<e.items.length;r++)if(!X(e.items[r],n,i[r]))return!1;return!0}function mb(e,n,i){return rt(i)}function fb(e,n,i){return e.anyOf.some(r=>X(r,n,i))}function gb(e,n,i){return!(!Sr(i)||$(e.maxByteLength)&&!(i.length<=e.maxByteLength)||$(e.minByteLength)&&!(i.length>=e.minByteLength))}function hb(e,n,i){return!0}function bb(e,n,i){return be.IsVoidLike(i)}function Ob(e,n,i){return vr(e[y])?Ca(e[y])(e,i):!1}function X(e,n,i){const r=$(e.$id)?hs(e,n):n,o=e;switch(o[y]){case"Any":return Dh();case"Argument":return Eh();case"Array":return zh(o,r,i);case"AsyncIterator":return Kh(o,r,i);case"BigInt":return _h(o,r,i);case"Boolean":return Hh(o,r,i);case"Constructor":return Gh(o,r,i);case"Date":return Wh(o,r,i);case"Function":return qh(o,r,i);case"Import":return Jh(o,r,i);case"Integer":return Xh(o,r,i);case"Intersect":return Vh(o,r,i);case"Iterator":return Yh(o,r,i);case"Literal":return Zh(o,r,i);case"Never":return Qh();case"Not":return eb(o,r,i);case"Null":return tb(o,r,i);case"Number":return nb(o,r,i);case"Object":return ib(o,r,i);case"Promise":return rb(o,r,i);case"Record":return ob(o,r,i);case"Ref":return ab(o,r,i);case"RegExp":return sb(o,r,i);case"String":return cb(o,r,i);case"Symbol":return lb(o,r,i);case"TemplateLiteral":return db(o,r,i);case"This":return pb(o,r,i);case"Tuple":return ub(o,r,i);case"Undefined":return mb(o,r,i);case"Union":return fb(o,r,i);case"Uint8Array":return gb(o,r,i);case"Unknown":return hb();case"Void":return bb(o,r,i);default:if(!vr(o[y]))throw new kh(o);return Ob(o,r,i)}}function io(...e){return e.length===3?X(e[0],e[1],e[2]):X(e[0],[],e[1])}var d;(function(e){e[e.ArrayContains=0]="ArrayContains",e[e.ArrayMaxContains=1]="ArrayMaxContains",e[e.ArrayMaxItems=2]="ArrayMaxItems",e[e.ArrayMinContains=3]="ArrayMinContains",e[e.ArrayMinItems=4]="ArrayMinItems",e[e.ArrayUniqueItems=5]="ArrayUniqueItems",e[e.Array=6]="Array",e[e.AsyncIterator=7]="AsyncIterator",e[e.BigIntExclusiveMaximum=8]="BigIntExclusiveMaximum",e[e.BigIntExclusiveMinimum=9]="BigIntExclusiveMinimum",e[e.BigIntMaximum=10]="BigIntMaximum",e[e.BigIntMinimum=11]="BigIntMinimum",e[e.BigIntMultipleOf=12]="BigIntMultipleOf",e[e.BigInt=13]="BigInt",e[e.Boolean=14]="Boolean",e[e.DateExclusiveMaximumTimestamp=15]="DateExclusiveMaximumTimestamp",e[e.DateExclusiveMinimumTimestamp=16]="DateExclusiveMinimumTimestamp",e[e.DateMaximumTimestamp=17]="DateMaximumTimestamp",e[e.DateMinimumTimestamp=18]="DateMinimumTimestamp",e[e.DateMultipleOfTimestamp=19]="DateMultipleOfTimestamp",e[e.Date=20]="Date",e[e.Function=21]="Function",e[e.IntegerExclusiveMaximum=22]="IntegerExclusiveMaximum",e[e.IntegerExclusiveMinimum=23]="IntegerExclusiveMinimum",e[e.IntegerMaximum=24]="IntegerMaximum",e[e.IntegerMinimum=25]="IntegerMinimum",e[e.IntegerMultipleOf=26]="IntegerMultipleOf",e[e.Integer=27]="Integer",e[e.IntersectUnevaluatedProperties=28]="IntersectUnevaluatedProperties",e[e.Intersect=29]="Intersect",e[e.Iterator=30]="Iterator",e[e.Kind=31]="Kind",e[e.Literal=32]="Literal",e[e.Never=33]="Never",e[e.Not=34]="Not",e[e.Null=35]="Null",e[e.NumberExclusiveMaximum=36]="NumberExclusiveMaximum",e[e.NumberExclusiveMinimum=37]="NumberExclusiveMinimum",e[e.NumberMaximum=38]="NumberMaximum",e[e.NumberMinimum=39]="NumberMinimum",e[e.NumberMultipleOf=40]="NumberMultipleOf",e[e.Number=41]="Number",e[e.ObjectAdditionalProperties=42]="ObjectAdditionalProperties",e[e.ObjectMaxProperties=43]="ObjectMaxProperties",e[e.ObjectMinProperties=44]="ObjectMinProperties",e[e.ObjectRequiredProperty=45]="ObjectRequiredProperty",e[e.Object=46]="Object",e[e.Promise=47]="Promise",e[e.RegExp=48]="RegExp",e[e.StringFormatUnknown=49]="StringFormatUnknown",e[e.StringFormat=50]="StringFormat",e[e.StringMaxLength=51]="StringMaxLength",e[e.StringMinLength=52]="StringMinLength",e[e.StringPattern=53]="StringPattern",e[e.String=54]="String",e[e.Symbol=55]="Symbol",e[e.TupleLength=56]="TupleLength",e[e.Tuple=57]="Tuple",e[e.Uint8ArrayMaxByteLength=58]="Uint8ArrayMaxByteLength",e[e.Uint8ArrayMinByteLength=59]="Uint8ArrayMinByteLength",e[e.Uint8Array=60]="Uint8Array",e[e.Undefined=61]="Undefined",e[e.Union=62]="Union",e[e.Void=63]="Void"})(d||(d={}));class yb extends ve{constructor(n){super("Unknown type"),this.schema=n}}function _e(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function F(e){return e!==void 0}class Ss{constructor(n){this.iterator=n}[Symbol.iterator](){return this.iterator}First(){const n=this.iterator.next();return n.done?void 0:n.value}}function g(e,n,i,r,o=[]){return{type:e,schema:n,path:i,value:r,message:Oh()({errorType:e,path:i,schema:n,value:r,errors:o}),errors:o}}function*xb(e,n,i,r){}function*Sb(e,n,i,r){}function*wb(e,n,i,r){if(!Ee(r))return yield g(d.Array,e,i,r);F(e.minItems)&&!(r.length>=e.minItems)&&(yield g(d.ArrayMinItems,e,i,r)),F(e.maxItems)&&!(r.length<=e.maxItems)&&(yield g(d.ArrayMaxItems,e,i,r));for(let s=0;s<r.length;s++)yield*V(e.items,n,`${i}/${s}`,r[s]);if(e.uniqueItems===!0&&!function(){const s=new Set;for(const l of r){const c=xs(l);if(s.has(c))return!1;s.add(c)}return!0}()&&(yield g(d.ArrayUniqueItems,e,i,r)),!(F(e.contains)||F(e.minContains)||F(e.maxContains)))return;const o=F(e.contains)?e.contains:D(),a=r.reduce((s,l,c)=>V(o,n,`${i}${c}`,l).next().done===!0?s+1:s,0);a===0&&(yield g(d.ArrayContains,e,i,r)),He(e.minContains)&&a<e.minContains&&(yield g(d.ArrayMinContains,e,i,r)),He(e.maxContains)&&a>e.maxContains&&(yield g(d.ArrayMaxContains,e,i,r))}function*Lb(e,n,i,r){ca(r)||(yield g(d.AsyncIterator,e,i,r))}function*Pb(e,n,i,r){if(!ni(r))return yield g(d.BigInt,e,i,r);F(e.exclusiveMaximum)&&!(r<e.exclusiveMaximum)&&(yield g(d.BigIntExclusiveMaximum,e,i,r)),F(e.exclusiveMinimum)&&!(r>e.exclusiveMinimum)&&(yield g(d.BigIntExclusiveMinimum,e,i,r)),F(e.maximum)&&!(r<=e.maximum)&&(yield g(d.BigIntMaximum,e,i,r)),F(e.minimum)&&!(r>=e.minimum)&&(yield g(d.BigIntMinimum,e,i,r)),F(e.multipleOf)&&r%e.multipleOf!==BigInt(0)&&(yield g(d.BigIntMultipleOf,e,i,r))}function*Ib(e,n,i,r){ti(r)||(yield g(d.Boolean,e,i,r))}function*Fb(e,n,i,r){yield*V(e.returns,n,i,r.prototype)}function*$b(e,n,i,r){if(!yn(r))return yield g(d.Date,e,i,r);F(e.exclusiveMaximumTimestamp)&&!(r.getTime()<e.exclusiveMaximumTimestamp)&&(yield g(d.DateExclusiveMaximumTimestamp,e,i,r)),F(e.exclusiveMinimumTimestamp)&&!(r.getTime()>e.exclusiveMinimumTimestamp)&&(yield g(d.DateExclusiveMinimumTimestamp,e,i,r)),F(e.maximumTimestamp)&&!(r.getTime()<=e.maximumTimestamp)&&(yield g(d.DateMaximumTimestamp,e,i,r)),F(e.minimumTimestamp)&&!(r.getTime()>=e.minimumTimestamp)&&(yield g(d.DateMinimumTimestamp,e,i,r)),F(e.multipleOfTimestamp)&&r.getTime()%e.multipleOfTimestamp!==0&&(yield g(d.DateMultipleOfTimestamp,e,i,r))}function*Nb(e,n,i,r){wr(r)||(yield g(d.Function,e,i,r))}function*Cb(e,n,i,r){const o=globalThis.Object.values(e.$defs),a=e.$defs[e.$ref];yield*V(a,[...n,...o],i,r)}function*Tb(e,n,i,r){if(!pa(r))return yield g(d.Integer,e,i,r);F(e.exclusiveMaximum)&&!(r<e.exclusiveMaximum)&&(yield g(d.IntegerExclusiveMaximum,e,i,r)),F(e.exclusiveMinimum)&&!(r>e.exclusiveMinimum)&&(yield g(d.IntegerExclusiveMinimum,e,i,r)),F(e.maximum)&&!(r<=e.maximum)&&(yield g(d.IntegerMaximum,e,i,r)),F(e.minimum)&&!(r>=e.minimum)&&(yield g(d.IntegerMinimum,e,i,r)),F(e.multipleOf)&&r%e.multipleOf!==0&&(yield g(d.IntegerMultipleOf,e,i,r))}function*Ab(e,n,i,r){let o=!1;for(const a of e.allOf)for(const s of V(a,n,i,r))o=!0,yield s;if(o)return yield g(d.Intersect,e,i,r);if(e.unevaluatedProperties===!1){const a=new RegExp(Zn(e));for(const s of Object.getOwnPropertyNames(r))a.test(s)||(yield g(d.IntersectUnevaluatedProperties,e,`${i}/${s}`,r))}if(typeof e.unevaluatedProperties=="object"){const a=new RegExp(Zn(e));for(const s of Object.getOwnPropertyNames(r))if(!a.test(s)){const l=V(e.unevaluatedProperties,n,`${i}/${s}`,r[s]).next();l.done||(yield l.value)}}}function*jb(e,n,i,r){la(r)||(yield g(d.Iterator,e,i,r))}function*Rb(e,n,i,r){r!==e.const&&(yield g(d.Literal,e,i,r))}function*vb(e,n,i,r){yield g(d.Never,e,i,r)}function*Ub(e,n,i,r){V(e.not,n,i,r).next().done===!0&&(yield g(d.Not,e,i,r))}function*Mb(e,n,i,r){ei(r)||(yield g(d.Null,e,i,r))}function*kb(e,n,i,r){if(!be.IsNumberLike(r))return yield g(d.Number,e,i,r);F(e.exclusiveMaximum)&&!(r<e.exclusiveMaximum)&&(yield g(d.NumberExclusiveMaximum,e,i,r)),F(e.exclusiveMinimum)&&!(r>e.exclusiveMinimum)&&(yield g(d.NumberExclusiveMinimum,e,i,r)),F(e.maximum)&&!(r<=e.maximum)&&(yield g(d.NumberMaximum,e,i,r)),F(e.minimum)&&!(r>=e.minimum)&&(yield g(d.NumberMinimum,e,i,r)),F(e.multipleOf)&&r%e.multipleOf!==0&&(yield g(d.NumberMultipleOf,e,i,r))}function*Bb(e,n,i,r){if(!be.IsObjectLike(r))return yield g(d.Object,e,i,r);F(e.minProperties)&&!(Object.getOwnPropertyNames(r).length>=e.minProperties)&&(yield g(d.ObjectMinProperties,e,i,r)),F(e.maxProperties)&&!(Object.getOwnPropertyNames(r).length<=e.maxProperties)&&(yield g(d.ObjectMaxProperties,e,i,r));const o=Array.isArray(e.required)?e.required:[],a=Object.getOwnPropertyNames(e.properties),s=Object.getOwnPropertyNames(r);for(const l of o)s.includes(l)||(yield g(d.ObjectRequiredProperty,e.properties[l],`${i}/${_e(l)}`,void 0));if(e.additionalProperties===!1)for(const l of s)a.includes(l)||(yield g(d.ObjectAdditionalProperties,e,`${i}/${_e(l)}`,r[l]));if(typeof e.additionalProperties=="object")for(const l of s)a.includes(l)||(yield*V(e.additionalProperties,n,`${i}/${_e(l)}`,r[l]));for(const l of a){const c=e.properties[l];e.required&&e.required.includes(l)?(yield*V(c,n,`${i}/${_e(l)}`,r[l]),Nn(e)&&!(l in r)&&(yield g(d.ObjectRequiredProperty,c,`${i}/${_e(l)}`,void 0))):be.IsExactOptionalProperty(r,l)&&(yield*V(c,n,`${i}/${_e(l)}`,r[l]))}}function*Db(e,n,i,r){da(r)||(yield g(d.Promise,e,i,r))}function*Eb(e,n,i,r){if(!be.IsRecordLike(r))return yield g(d.Object,e,i,r);F(e.minProperties)&&!(Object.getOwnPropertyNames(r).length>=e.minProperties)&&(yield g(d.ObjectMinProperties,e,i,r)),F(e.maxProperties)&&!(Object.getOwnPropertyNames(r).length<=e.maxProperties)&&(yield g(d.ObjectMaxProperties,e,i,r));const[o,a]=Object.entries(e.patternProperties)[0],s=new RegExp(o);for(const[l,c]of Object.entries(r))s.test(l)&&(yield*V(a,n,`${i}/${_e(l)}`,c));if(typeof e.additionalProperties=="object")for(const[l,c]of Object.entries(r))s.test(l)||(yield*V(e.additionalProperties,n,`${i}/${_e(l)}`,c));if(e.additionalProperties===!1){for(const[l,c]of Object.entries(r))if(!s.test(l))return yield g(d.ObjectAdditionalProperties,e,`${i}/${_e(l)}`,c)}}function*zb(e,n,i,r){yield*V(Tt(e,n),n,i,r)}function*Kb(e,n,i,r){if(!ke(r))return yield g(d.String,e,i,r);if(F(e.minLength)&&!(r.length>=e.minLength)&&(yield g(d.StringMinLength,e,i,r)),F(e.maxLength)&&!(r.length<=e.maxLength)&&(yield g(d.StringMaxLength,e,i,r)),!new RegExp(e.source,e.flags).test(r))return yield g(d.RegExp,e,i,r)}function*_b(e,n,i,r){if(!ke(r))return yield g(d.String,e,i,r);F(e.minLength)&&!(r.length>=e.minLength)&&(yield g(d.StringMinLength,e,i,r)),F(e.maxLength)&&!(r.length<=e.maxLength)&&(yield g(d.StringMaxLength,e,i,r)),ke(e.pattern)&&(new RegExp(e.pattern).test(r)||(yield g(d.StringPattern,e,i,r))),ke(e.format)&&(Ia(e.format)?$a(e.format)(r)||(yield g(d.StringFormat,e,i,r)):yield g(d.StringFormatUnknown,e,i,r))}function*Hb(e,n,i,r){ii(r)||(yield g(d.Symbol,e,i,r))}function*Gb(e,n,i,r){if(!ke(r))return yield g(d.String,e,i,r);new RegExp(e.pattern).test(r)||(yield g(d.StringPattern,e,i,r))}function*Wb(e,n,i,r){yield*V(Tt(e,n),n,i,r)}function*qb(e,n,i,r){if(!Ee(r))return yield g(d.Tuple,e,i,r);if(e.items===void 0&&r.length!==0)return yield g(d.TupleLength,e,i,r);if(r.length!==e.maxItems)return yield g(d.TupleLength,e,i,r);if(e.items)for(let o=0;o<e.items.length;o++)yield*V(e.items[o],n,`${i}/${o}`,r[o])}function*Jb(e,n,i,r){rt(r)||(yield g(d.Undefined,e,i,r))}function*Xb(e,n,i,r){if(io(e,n,r))return;const o=e.anyOf.map(a=>new Ss(V(a,n,i,r)));yield g(d.Union,e,i,r,o)}function*Vb(e,n,i,r){if(!Sr(r))return yield g(d.Uint8Array,e,i,r);F(e.maxByteLength)&&!(r.length<=e.maxByteLength)&&(yield g(d.Uint8ArrayMaxByteLength,e,i,r)),F(e.minByteLength)&&!(r.length>=e.minByteLength)&&(yield g(d.Uint8ArrayMinByteLength,e,i,r))}function*Yb(e,n,i,r){}function*Zb(e,n,i,r){be.IsVoidLike(r)||(yield g(d.Void,e,i,r))}function*Qb(e,n,i,r){Ca(e[y])(e,r)||(yield g(d.Kind,e,i,r))}function*V(e,n,i,r){const o=F(e.$id)?[...n,e]:n,a=e;switch(a[y]){case"Any":return yield*xb();case"Argument":return yield*Sb();case"Array":return yield*wb(a,o,i,r);case"AsyncIterator":return yield*Lb(a,o,i,r);case"BigInt":return yield*Pb(a,o,i,r);case"Boolean":return yield*Ib(a,o,i,r);case"Constructor":return yield*Fb(a,o,i,r);case"Date":return yield*$b(a,o,i,r);case"Function":return yield*Nb(a,o,i,r);case"Import":return yield*Cb(a,o,i,r);case"Integer":return yield*Tb(a,o,i,r);case"Intersect":return yield*Ab(a,o,i,r);case"Iterator":return yield*jb(a,o,i,r);case"Literal":return yield*Rb(a,o,i,r);case"Never":return yield*vb(a,o,i,r);case"Not":return yield*Ub(a,o,i,r);case"Null":return yield*Mb(a,o,i,r);case"Number":return yield*kb(a,o,i,r);case"Object":return yield*Bb(a,o,i,r);case"Promise":return yield*Db(a,o,i,r);case"Record":return yield*Eb(a,o,i,r);case"Ref":return yield*zb(a,o,i,r);case"RegExp":return yield*Kb(a,o,i,r);case"String":return yield*_b(a,o,i,r);case"Symbol":return yield*Hb(a,o,i,r);case"TemplateLiteral":return yield*Gb(a,o,i,r);case"This":return yield*Wb(a,o,i,r);case"Tuple":return yield*qb(a,o,i,r);case"Undefined":return yield*Jb(a,o,i,r);case"Union":return yield*Xb(a,o,i,r);case"Uint8Array":return yield*Vb(a,o,i,r);case"Unknown":return yield*Yb();case"Void":return yield*Zb(a,o,i,r);default:if(!vr(a[y]))throw new yb(e);return yield*Qb(a,o,i,r)}}function eO(...e){const n=e.length===3?V(e[0],e[1],"",e[2]):V(e[0],[],"",e[1]);return new Ss(n)}function tO(e){const n={};for(const i of Object.getOwnPropertyNames(e))n[i]=yt(e[i]);for(const i of Object.getOwnPropertySymbols(e))n[i]=yt(e[i]);return n}function nO(e){return e.map(n=>yt(n))}function iO(e){return e.slice()}function rO(e){return new Map(yt([...e.entries()]))}function oO(e){return new Set(yt([...e.entries()]))}function aO(e){return new Date(e.toISOString())}function yt(e){if(Ee(e))return nO(e);if(yn(e))return aO(e);if(Gl(e))return iO(e);if(_l(e))return rO(e);if(Hl(e))return oO(e);if(De(e))return tO(e);if(ql(e))return e;throw new Error("ValueClone: Unable to clone value")}function Ye(e,n){const i=Wl(e,"default")?e.default:void 0,r=wr(i)?i():yt(i);return rt(n)?r:De(n)&&De(r)?Object.assign(r,n):n}function dr(e){return ha(e)&&"default"in e}function sO(e,n,i){if(Ee(i)){for(let o=0;o<i.length;o++)i[o]=le(e.items,n,i[o]);return i}const r=Ye(e,i);if(!Ee(r))return r;for(let o=0;o<r.length;o++)r[o]=le(e.items,n,r[o]);return r}function cO(e,n,i){return yn(i)?i:Ye(e,i)}function lO(e,n,i){const r=globalThis.Object.values(e.$defs),o=e.$defs[e.$ref];return le(o,[...n,...r],i)}function dO(e,n,i){const r=Ye(e,i);return e.allOf.reduce((o,a)=>{const s=le(a,n,r);return De(s)?{...o,...s}:s},{})}function pO(e,n,i){const r=Ye(e,i);if(!De(r))return r;const o=Object.getOwnPropertyNames(e.properties);for(const a of o){const s=le(e.properties[a],n,r[a]);rt(s)||(r[a]=le(e.properties[a],n,r[a]))}if(!dr(e.additionalProperties))return r;for(const a of Object.getOwnPropertyNames(r))o.includes(a)||(r[a]=le(e.additionalProperties,n,r[a]));return r}function uO(e,n,i){const r=Ye(e,i);if(!De(r))return r;const o=e.additionalProperties,[a,s]=Object.entries(e.patternProperties)[0],l=new RegExp(a);for(const c of Object.getOwnPropertyNames(r))l.test(c)&&dr(s)&&(r[c]=le(s,n,r[c]));if(!dr(o))return r;for(const c of Object.getOwnPropertyNames(r))l.test(c)||(r[c]=le(o,n,r[c]));return r}function mO(e,n,i){return le(Tt(e,n),n,Ye(e,i))}function fO(e,n,i){return le(Tt(e,n),n,i)}function gO(e,n,i){const r=Ye(e,i);if(!Ee(r)||rt(e.items))return r;const[o,a]=[e.items,Math.max(e.items.length,r.length)];for(let s=0;s<a;s++)s<o.length&&(r[s]=le(o[s],n,r[s]));return r}function hO(e,n,i){const r=Ye(e,i);for(const o of e.anyOf){const a=le(o,n,yt(r));if(io(o,n,a))return a}return r}function le(e,n,i){const r=hs(e,n),o=e;switch(o[y]){case"Array":return sO(o,r,i);case"Date":return cO(o,r,i);case"Import":return lO(o,r,i);case"Intersect":return dO(o,r,i);case"Object":return pO(o,r,i);case"Record":return uO(o,r,i);case"Ref":return mO(o,r,i);case"This":return fO(o,r,i);case"Tuple":return gO(o,r,i);case"Union":return hO(o,r,i);default:return Ye(o,i)}}function bO(...e){return e.length===3?le(e[0],e[1],e[2]):le(e[0],[],e[1])}var Uo=200,Mo=36,ko=600,OO=new Set(["family","fontFace","titleFontFace","legendFontFace","dataLabelFontFace","catAxisLabelFontFace","valAxisLabelFontFace"]),yO=new Set(["heading","body","mono","light"]),xO=new Set(["fontRegistry"]);function pr(e,n,i){if(e!=null){if(typeof e=="string"){if(i&&(OO.has(i)||yO.has(i))){const r=e.trim();r.length>0&&n.add(r)}return}if(Array.isArray(e)){for(const r of e)pr(r,n,i);return}if(typeof e=="object"){const r=e.fonts;if(i==="theme"&&r&&typeof r=="object"){for(const[o,a]of Object.entries(r))if(typeof a=="string"){const s=a.trim();s.length>0&&n.add(s)}else if(a&&typeof a=="object"){const s=a.family;typeof s=="string"&&s.trim().length>0&&n.add(s.trim())}}for(const[o,a]of Object.entries(e))xO.has(o)||pr(a,n,o)}}}function ws(e){const n=new Set;return pr(e,n),n}var C0=ws,T0=ws,A0={100:"Thin",200:"ExtraLight",300:"Light",400:"Regular",500:"Medium",600:"SemiBold",700:"Bold",800:"ExtraBold",900:"Black"},j0=[{family:"Inter",category:"sans",weights:[100,200,300,400,500,600,700,800,900],hasItalic:!1},{family:"Roboto",category:"sans",weights:[100,300,400,500,700,900],hasItalic:!0},{family:"Open Sans",category:"sans",weights:[300,400,500,600,700,800],hasItalic:!0},{family:"Lato",category:"sans",weights:[100,300,400,700,900],hasItalic:!0},{family:"Montserrat",category:"sans",weights:[100,200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Poppins",category:"sans",weights:[100,200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Work Sans",category:"sans",weights:[100,200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Nunito",category:"sans",weights:[200,300,400,500,600,700,800,900],hasItalic:!0},{family:"DM Sans",category:"sans",weights:[100,200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Rubik",category:"sans",weights:[300,400,500,600,700,800,900],hasItalic:!0},{family:"Source Sans 3",category:"sans",weights:[200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Manrope",category:"sans",weights:[200,300,400,500,600,700,800],hasItalic:!1},{family:"Plus Jakarta Sans",category:"sans",weights:[200,300,400,500,600,700,800],hasItalic:!0},{family:"IBM Plex Sans",category:"sans",weights:[100,200,300,400,500,600,700],hasItalic:!0},{family:"Archivo",category:"sans",weights:[100,200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Geist",category:"sans",weights:[100,200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Space Grotesk",category:"sans",weights:[300,400,500,600,700],hasItalic:!1},{family:"Playfair Display",category:"serif",weights:[400,500,600,700,800,900],hasItalic:!0},{family:"Merriweather",category:"serif",weights:[300,400,700,900],hasItalic:!0},{family:"Lora",category:"serif",weights:[400,500,600,700],hasItalic:!0},{family:"Source Serif 4",category:"serif",weights:[200,300,400,500,600,700,800,900],hasItalic:!0},{family:"DM Serif Display",category:"serif",weights:[400],hasItalic:!0},{family:"Crimson Pro",category:"serif",weights:[200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Cormorant Garamond",category:"serif",weights:[300,400,500,600,700],hasItalic:!0},{family:"JetBrains Mono",category:"mono",weights:[100,200,300,400,500,600,700,800],hasItalic:!0},{family:"Fira Code",category:"mono",weights:[300,400,500,600,700],hasItalic:!1},{family:"IBM Plex Mono",category:"mono",weights:[100,200,300,400,500,600,700],hasItalic:!0},{family:"Source Code Pro",category:"mono",weights:[200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Space Mono",category:"mono",weights:[400,700],hasItalic:!0},{family:"Geist Mono",category:"mono",weights:[100,200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Bebas Neue",category:"display",weights:[400],hasItalic:!1},{family:"Abril Fatface",category:"display",weights:[400],hasItalic:!1},{family:"Archivo Black",category:"display",weights:[400],hasItalic:!1},{family:"Oswald",category:"display",weights:[200,300,400,500,600,700],hasItalic:!1},{family:"Caveat",category:"handwriting",weights:[400,500,600,700],hasItalic:!1},{family:"Pacifico",category:"handwriting",weights:[400],hasItalic:!1}],SO=t.Union([t.Number({description:"Margin in inches (all sides)"}),t.Object({top:t.Number({description:"Top margin in inches"}),right:t.Number({description:"Right margin in inches"}),bottom:t.Number({description:"Bottom margin in inches"}),left:t.Number({description:"Left margin in inches"})},{additionalProperties:!1})],{description:"Slide margins in inches"}),wO=t.Union([t.Number({description:"Gutter in inches (both axes)"}),t.Object({column:t.Number({description:"Column gutter in inches"}),row:t.Number({description:"Row gutter in inches"})},{additionalProperties:!1})],{description:"Gaps between grid tracks in inches"}),Ls=t.Object({columns:t.Optional(t.Number({minimum:1,description:"Number of columns (default: 12)"})),rows:t.Optional(t.Number({minimum:1,description:"Number of rows (default: 6)"})),margin:t.Optional(SO),gutter:t.Optional(wO)},{additionalProperties:!1,description:"Grid layout configuration"}),$e=t.String({pattern:"^#?[0-9A-Fa-f]{6}$",description:"Hex color (e.g. #FF0000)"}),LO=t.Object({fontSize:t.Optional(t.Number()),fontFace:t.Optional(gn),fontColor:t.Optional(Ni),bold:t.Optional(t.Boolean()),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900})),italic:t.Optional(t.Boolean()),align:t.Optional(t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right"),t.Literal("justify")])),lineSpacing:t.Optional(t.Number()),charSpacing:t.Optional(t.Number()),paraSpaceAfter:t.Optional(t.Number())},{additionalProperties:!1,description:"Text style preset"}),Ps=t.Object({name:t.String({description:"Theme name"}),colors:t.Object({primary:$e,secondary:$e,accent:$e,background:$e,text:$e,text2:t.Optional($e),background2:t.Optional($e),accent4:t.Optional($e),accent5:t.Optional($e),accent6:t.Optional($e)},{additionalProperties:!1,description:"Theme color palette (10-slot scheme)"}),fonts:t.Object({heading:gn,body:gn},{additionalProperties:!1,description:"Font families"}),fontRegistry:t.Optional($i),defaults:t.Object({fontSize:t.Number({description:"Default font size in points"}),fontColor:$e},{additionalProperties:!1,description:"Default text styling"}),styles:t.Optional(t.Partial(t.Object(Object.fromEntries(ls.map(e=>[e,LO]))),{additionalProperties:!1,description:"Named text style presets"})),componentDefaults:t.Optional(us)},{additionalProperties:!1,description:"Presentation theme configuration"});t.Object({x:t.Optional(t.Union([t.Number({description:"X position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'X position as percentage (e.g., "10%")'})])),y:t.Optional(t.Union([t.Number({description:"Y position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Y position as percentage (e.g., "10%")'})])),w:t.Optional(t.Union([t.Number({description:"Width in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Width as percentage (e.g., "80%")'})])),h:t.Optional(t.Union([t.Number({description:"Height in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Height as percentage (e.g., "20%")'})]))},{description:"Position and size in inches or percentages",additionalProperties:!1});var Is=t.Object({color:t.Optional(Ni),gradient:t.Optional(ps),image:t.Optional(t.Object({path:t.Optional(t.String({description:"Image file path or URL"})),base64:t.Optional(t.String({description:"Base64-encoded image data"}))},{description:"Background image",additionalProperties:!1}))},{description:"Slide background configuration",additionalProperties:!1}),PO=t.Object({type:t.Optional(t.Union([t.Literal("fade"),t.Literal("push"),t.Literal("wipe"),t.Literal("zoom"),t.Literal("none")],{description:"Transition effect type"})),speed:t.Optional(t.Union([t.Literal("slow"),t.Literal("medium"),t.Literal("fast")],{description:"Transition speed"}))},{description:"Slide transition configuration",additionalProperties:!1}),nt=t.Union([t.Number({description:"Position/size in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Position/size as percentage of slide dimension (e.g., "50%")'})]);function vt(e,n){return t.Object({name:t.Literal(e),id:t.Optional(t.String()),enabled:t.Optional(t.Boolean({default:!0,description:"When false, this component is filtered out and not rendered. Defaults to true."})),props:n},{additionalProperties:!1})}var IO=t.Union([vt("text",Ai),vt("image",ji),vt("shape",Ri),vt("table",vi),vt("chart",Mi),vt("highcharts",Ui)],{discriminator:{propertyName:"name"},description:"Fixed component on a template slide (same format as slide children)"});function Ut(e,n){return t.Object({name:t.Literal(e),props:t.Partial(n,{description:"Default props inherited by the component placed in this placeholder"})},{additionalProperties:!1})}var FO=t.Union([Ut("text",Ai),Ut("image",ji),Ut("shape",Ri),Ut("table",vi),Ut("chart",Mi),Ut("highcharts",Ui)],{discriminator:{propertyName:"name"},description:"Partial component stub — styling defaults only"}),$O=t.Object({name:t.String({description:"Unique placeholder name"}),x:t.Optional(nt),y:t.Optional(nt),w:t.Optional(nt),h:t.Optional(nt),grid:t.Optional(Ct),defaults:t.Optional(FO)},{additionalProperties:!1,description:"Placeholder on a template slide — defaults is a component stub whose props are inherited by the actual component"}),NO=t.Object({name:t.String({description:"Unique template slide name"}),background:t.Optional(Is),margin:t.Optional(t.Union([t.Number({description:"Margin in inches (all sides)"}),t.Array(t.Number(),{minItems:4,maxItems:4,description:"Margin [top, right, bottom, left] in inches"})])),slideNumber:t.Optional(t.Object({x:nt,y:nt,w:t.Optional(nt),h:t.Optional(nt),color:t.Optional(Ni),fontSize:t.Optional(t.Number({description:"Slide number font size in points"}))},{additionalProperties:!1,description:"Slide number position and styling"})),objects:t.Optional(t.Array(IO,{description:"Fixed components (logos, footers, decorations) — same { name, props } format as slide children"})),placeholders:t.Optional(t.Array($O,{description:"Placeholder regions for slide content"})),grid:t.Optional(Ls)},{additionalProperties:!1,description:"Template slide definition (reusable slide template)"}),CO=t.Object({title:t.Optional(t.String({description:"Presentation title metadata"})),author:t.Optional(t.String({description:"Presentation author metadata"})),subject:t.Optional(t.String({description:"Presentation subject metadata"})),company:t.Optional(t.String({description:"Company name metadata"})),theme:t.Optional(t.Union([t.String({description:'Theme name to apply (default: "default")',default:"default"}),Ps],{description:'Theme to apply: a built-in/custom theme name (default: "default"), or an inline theme config object so the document stays self-contained'})),fontRegistry:t.Optional($i),slideWidth:t.Optional(t.Number({description:"Slide width in inches (default: 10)",default:10})),slideHeight:t.Optional(t.Number({description:"Slide height in inches (default: 7.5)",default:7.5})),rtlMode:t.Optional(t.Boolean({description:"Right-to-left text direction"})),language:t.Optional(t.String({pattern:"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$",description:'Default presentation language (BCP-47 tag, e.g. "en-US"). Sets the spell-check language for all text; individual text components can override it.',examples:["en-US","fr-FR","de-DE","it-IT","es-ES"]})),pageNumberFormat:t.Optional(t.Union([t.Literal("9"),t.Literal("09")],{description:'Format for {PAGE_NUMBER} placeholders: "9" = bare number (default), "09" = zero-padded',default:"9"})),componentDefaults:t.Optional(us),grid:t.Optional(Ls),templates:t.Optional(t.Array(NO,{description:"Template slide definitions (reusable slide templates)"}))},{description:"Presentation container props",additionalProperties:!1}),TO=t.Object({meta:t.Optional(t.Object({title:t.Optional(t.String({description:"Authoring label for this slide, shown in editors and outlines. Never rendered — slide content is unaffected."}))},{additionalProperties:!1,description:"Authoring metadata; has no effect on the presentation."})),background:t.Optional(Is),transition:t.Optional(PO),notes:t.Optional(t.String({description:"Speaker notes for this slide"})),layout:t.Optional(t.String({description:'Slide layout name (e.g., "Title Slide", "Blank")'})),hidden:t.Optional(t.Boolean({description:"Hide this slide from presentation"})),template:t.Optional(t.String({description:"Template slide name to apply"}))},{description:"Slide container props",additionalProperties:!1}),hn=[{name:"pptx",propsSchema:CO,hasChildren:!0,allowedChildren:["slide"],category:"container",description:"Main presentation container - defines the overall presentation structure. Required as the root component.",special:{hasSchemaField:!0}},{name:"slide",propsSchema:TO,hasChildren:!0,allowedChildren:tt.map(({name:e})=>e),hasPlaceholders:!0,category:"container",description:"Slide container - groups content elements on a single slide."},...tt];function Wn(e,n,i){var o;const r={name:t.Literal(e.name),id:t.Optional(t.String()),enabled:t.Optional(t.Boolean({default:!0,description:"When false, this component is filtered out and not rendered. Defaults to true."}))};if((o=e.special)!=null&&o.hasSchemaField&&(r.$schema=t.Optional(t.String({format:"uri"}))),r.props=e.propsSchema,e.hasChildren&&n&&(r.children=t.Optional(t.Array(n))),e.hasPlaceholders&&(i??n)){const a=e.propsSchema.properties??{},s=i??n;r.props=t.Object({...a,placeholders:t.Optional(t.Record(t.String(),s,{description:'Content for named placeholders: { "title": { "name": "text", ... } }'}))},{additionalProperties:!1,description:e.propsSchema.description})}return t.Object(r,{additionalProperties:!1,description:e.description})}function AO(e){return hn.map(n=>Wn(n,e))}function Fs(e,n=[]){const i=new Map;for(const s of hn)s.hasChildren||i.set(s.name,Wn(s,void 0,e));const r=hn.filter(s=>s.hasChildren),o=new Map,a=[...r];for(;a.length>0;){const s=a.length;for(let l=a.length-1;l>=0;l--){const c=a[l];if(!c.allowedChildren){o.set(c.name,Wn(c,e,e)),a.splice(l,1);continue}if(!c.allowedChildren.filter(A=>r.some(h=>h.name===A)).every(A=>o.has(A)))continue;const L=[...c.allowedChildren.map(A=>o.get(A)??i.get(A)).filter(A=>A!==void 0),...n],I=L.length===1?L[0]:t.Union(L);o.set(c.name,Wn(c,I,e)),a.splice(l,1)}if(a.length===s)throw new Error(`Circular allowedChildren among: ${a.map(l=>l.name).join(", ")}`)}return[...o.values(),...i.values()]}t.Union([...AO(t.Any())],{discriminator:{propertyName:"name"},description:"Standard PPTX component definition with discriminated union"});t.Recursive(e=>t.Union([...Fs(e)],{discriminator:{propertyName:"name"},description:"PPTX component definition with discriminated union"}));function jO(e,n,i,r){const o={name:t.Literal(e.name),id:t.Optional(t.String()),enabled:t.Optional(t.Boolean({default:!0,description:"When false, this component is filtered out and not rendered. Defaults to true."})),version:r?t.Optional(t.Literal(n.version)):t.Literal(n.version),props:n.propsSchema};return n.hasChildren&&(o.children=t.Optional(t.Array(i))),t.Object(o,{additionalProperties:!1,description:n.description??e.name})}function RO(e={}){const{customComponents:n=[]}=e;return t.Recursive(i=>{const r=[];for(const s of n)if(s.versions.length>0){const l=gs(s.versions.map(m=>m.version)),c=s.versions.map(m=>jO(s,m,i,m.version===l));r.push(c.length===1?c[0]:t.Union(c))}const a=[...Fs(i,r),...r];return a.length===0?t.Object({}):t.Union(a)})}Object.fromEntries(hn.map(e=>[e.name,e.propsSchema]));new Set(hn.filter(e=>{var n;return!!((n=e.special)!=null&&n.hasSchemaField)}).map(e=>e.name));var $s=new Set(["name","id","enabled","props","children"]);[...$s];[...$s];var S=t.String({pattern:"^(#[0-9A-Fa-f]{6}|[a-zA-Z][a-zA-Z0-9]*)$",description:'Hex color with # prefix (e.g. "#000000") or theme color name'}),Ns=t.String({pattern:"^(transparent|#[0-9A-Fa-f]{6}|[a-zA-Z][a-zA-Z0-9]*)$",description:'Hex color with # prefix, theme color name, or "transparent"'}),Cs=t.String({pattern:"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$",description:'BCP-47 language tag for spell/grammar checking (e.g. "en-US", "fr-FR", "de-DE")',examples:["en-US","fr-FR","de-DE","it-IT","es-ES"]}),Ts=t.Boolean({description:"Disable spell/grammar checking for this text (e.g. code snippets or identifiers)"}),ro=t.Array(t.String({minLength:1}),{description:"Words that should never be flagged as misspelled (whole-word, case-insensitive). E.g. brand names or technical terms.",examples:[["Wiseair","json-to-office","pptx"]]}),oo=t.Object({size:t.Optional(t.Number({minimum:8,maximum:120})),color:t.Optional(S),bold:t.Optional(t.Boolean()),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Per-run weight (100–900). Any integer accepted; renderer picks the closest embedded variant via CSS font-matching. `bold: true` is shorthand for `fontWeight: 700`; if both are set, `fontWeight` wins."})),italic:t.Optional(t.Boolean()),underline:t.Optional(t.Boolean()),lineSpacing:t.Optional(t.Object({type:t.Union([t.Literal("single"),t.Literal("atLeast"),t.Literal("exactly"),t.Literal("double"),t.Literal("multiple")]),value:t.Optional(t.Number({minimum:0}))},{additionalProperties:!1})),spacing:t.Optional(t.Object({before:t.Optional(t.Number({minimum:0})),after:t.Optional(t.Number({minimum:0}))},{additionalProperties:!1})),characterSpacing:t.Optional(t.Object({type:t.Union([t.Literal("condensed"),t.Literal("expanded")]),value:t.Number()},{additionalProperties:!1})),scale:t.Optional(t.Number({minimum:1,maximum:600,description:"Character width scaling in percent (w:w). 100 is normal; values below compress glyphs, above expand them (e.g. 55, 115)."}))},{additionalProperties:!1}),Dt=t.Object({family:gn,...oo.properties},{description:"Font definition with family and optional formatting properties",additionalProperties:!1}),ao=t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right")],{description:"Text alignment options"}),As=t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right"),t.Literal("justify")],{description:"Text alignment options including justify"}),vO=t.Union([t.Literal(1),t.Literal(2),t.Literal(3),t.Literal(4),t.Literal(5),t.Literal(6)],{description:"Heading level (1-6)"}),on=t.Object({before:t.Optional(t.Number({minimum:0,description:"Spacing before element in points"})),after:t.Optional(t.Number({minimum:0,description:"Spacing after element in points"}))},{description:"Spacing configuration",additionalProperties:!1}),UO=t.Object({before:t.Optional(t.Number({minimum:0,description:"Spacing before list in points"})),after:t.Optional(t.Number({minimum:0,description:"Spacing after list in points"})),item:t.Optional(t.Number({minimum:0,description:"Spacing between list items in points"}))},{description:"List spacing configuration with item spacing",additionalProperties:!1});t.Object({top:t.Optional(t.Number({minimum:0})),bottom:t.Optional(t.Number({minimum:0})),left:t.Optional(t.Number({minimum:0})),right:t.Optional(t.Number({minimum:0}))},{description:"Margin configuration",additionalProperties:!1});t.Object({style:t.Optional(t.Union([t.Literal("solid"),t.Literal("dashed"),t.Literal("dotted"),t.Literal("double"),t.Literal("none")])),width:t.Optional(t.Number({minimum:0})),color:t.Optional(S)},{description:"Border configuration",additionalProperties:!1});var MO=t.Object({type:t.Union([t.Literal("single"),t.Literal("atLeast"),t.Literal("exactly"),t.Literal("double"),t.Literal("multiple")]),value:t.Optional(t.Number({minimum:0}))},{description:"Line spacing configuration",additionalProperties:!1}),ki=t.Object({left:t.Optional(t.Number({minimum:0})),hanging:t.Optional(t.Number({minimum:0}))},{description:"Indentation configuration",additionalProperties:!1}),js=t.Object({left:t.Optional(t.Number({description:"Left indentation in twips (1/20 of a point)"})),right:t.Optional(t.Number({description:"Right indentation in twips (1/20 of a point)"})),hanging:t.Optional(t.Number({minimum:0,description:"Hanging indent in twips: first line stays at the left indent, following lines are indented. Mutually exclusive with firstLine."})),firstLine:t.Optional(t.Number({minimum:0,description:"First-line indent in twips: only the first line is indented. Mutually exclusive with hanging."}))},{description:"Paragraph indentation (w:ind) in twips. Use either hanging or firstLine, not both.",additionalProperties:!1}),kO=t.Union([t.Literal("left"),t.Literal("right"),t.Literal("center"),t.Literal("decimal"),t.Literal("bar")],{description:"Tab stop alignment type"}),BO=t.Union([t.Literal("dot"),t.Literal("hyphen"),t.Literal("underscore"),t.Literal("middleDot"),t.Literal("none")],{description:"Leader character filling the space before the tab stop"}),DO=t.Object({type:kO,position:t.Number({minimum:0,description:"Tab stop position in twips (1/20 of a point)"}),leader:t.Optional(BO)},{description:"Tab stop definition (w:tab in w:tabs)",additionalProperties:!1}),EO=t.Array(DO,{description:"Tab stops for the paragraph. Tab characters (\\t) in the text jump to these positions."}),zO=t.Union([t.Literal("character"),t.Literal("column"),t.Literal("margin"),t.Literal("page"),t.Literal("text")],{description:"Horizontal position relative to"}),KO=t.Union([t.Literal("margin"),t.Literal("page"),t.Literal("paragraph"),t.Literal("line"),t.Literal("text")],{description:"Vertical position relative to"}),_O=t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right"),t.Literal("inside"),t.Literal("outside")],{description:"Horizontal alignment"}),HO=t.Union([t.Literal("top"),t.Literal("center"),t.Literal("bottom"),t.Literal("inside"),t.Literal("outside")],{description:"Vertical alignment"}),GO=t.Union([t.Literal("none"),t.Literal("square"),t.Literal("topAndBottom"),t.Literal("around"),t.Literal("tight"),t.Literal("through")],{description:"Text wrapping type"}),WO=t.Union([t.Literal("bothSides"),t.Literal("left"),t.Literal("right"),t.Literal("largest")],{description:"Text wrapping side"}),so=t.Object({horizontalPosition:t.Optional(t.Object({relative:t.Optional(zO),align:t.Optional(_O),offset:t.Optional(t.Union([t.Number({description:"Horizontal offset in twips (1/20 of a point)"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Horizontal offset as percentage (e.g., "50%") relative to page or margin width'})]))},{description:"Horizontal positioning (use either align or offset, not both)",additionalProperties:!1})),verticalPosition:t.Optional(t.Object({relative:t.Optional(KO),align:t.Optional(HO),offset:t.Optional(t.Union([t.Number({description:"Vertical offset in twips (1/20 of a point)"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Vertical offset as percentage (e.g., "50%") relative to page or margin height'})]))},{description:"Vertical positioning (use either align or offset, not both)",additionalProperties:!1})),wrap:t.Optional(t.Object({type:GO,side:t.Optional(WO),margins:t.Optional(t.Object({top:t.Optional(t.Union([t.Number({description:"Top margin in twips"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Top margin as percentage of page height"})])),bottom:t.Optional(t.Union([t.Number({description:"Bottom margin in twips"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Bottom margin as percentage of page height"})])),left:t.Optional(t.Union([t.Number({description:"Left margin in twips"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Left margin as percentage of page width"})])),right:t.Optional(t.Union([t.Number({description:"Right margin in twips"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Right margin as percentage of page width"})]))},{description:"Distance from text margins",additionalProperties:!1}))},{description:"Text wrapping configuration",additionalProperties:!1})),allowOverlap:t.Optional(t.Boolean({description:"Allow element to overlap with other elements"})),behindDocument:t.Optional(t.Boolean({description:"Place element behind document text"})),lockAnchor:t.Optional(t.Boolean({description:"Lock the anchor position"})),layoutInCell:t.Optional(t.Boolean({description:"Layout element within table cell"})),zIndex:t.Optional(t.Number({minimum:0,description:"Z-order for overlapping elements (must be non-negative)"})),rotation:t.Optional(t.Number({description:"Rotation angle in degrees"})),visibility:t.Optional(t.Union([t.Literal("hidden"),t.Literal("inherit")],{description:"Visibility of the floating element"}))},{description:"Floating element properties",additionalProperties:!1});t.Object({start:t.Optional(t.Number({minimum:1})),style:t.Optional(t.Union([t.Literal("decimal"),t.Literal("lowerLetter"),t.Literal("upperLetter"),t.Literal("lowerRoman"),t.Literal("upperRoman")])),separator:t.Optional(t.String())},{description:"Numbering configuration for lists",additionalProperties:!1});var qO={};t.Object(qO,{description:"Base component props",additionalProperties:!0});var JO=t.Object({type:t.Union([t.Literal("equal"),t.Literal("insert"),t.Literal("delete")],{description:"Segment kind: 'equal' renders as normal text, 'insert' as a tracked insertion, 'delete' as a tracked deletion"}),text:t.String({description:"Literal text of this segment (rendered without markdown)"})},{description:"A contiguous run of text sharing one revision state",additionalProperties:!1}),Bi=t.Object({author:t.Optional(t.String({description:'Revision author shown in Word (default: "json-to-office")'})),date:t.Optional(t.String({format:"date-time",description:"Revision timestamp (ISO 8601). Defaults to the Unix epoch for deterministic output"})),segments:t.Array(JO,{minItems:1,description:"Ordered text segments; concatenating equal+insert segments yields the new text, equal+delete the old text"})},{description:"Tracked-change data: renders the component text as native Word revisions (accept/reject in Word)",additionalProperties:!1}),XO=t.Object({type:t.Union([t.Literal("insert"),t.Literal("delete")],{description:"Whether the element was inserted or deleted"}),author:t.Optional(t.String({description:'Revision author shown in Word (default: "json-to-office")'})),date:t.Optional(t.String({format:"date-time",description:"Revision timestamp (ISO 8601). Defaults to the Unix epoch for deterministic output"}))},{description:"Structural tracked change: the element itself was inserted or deleted",additionalProperties:!1}),Rs={text:t.String({minLength:1,description:"Comment body. Newlines split it into separate paragraphs in the comment pane."}),author:t.Optional(t.String({description:'Comment author shown in Word (default: "json-to-office")'})),initials:t.Optional(t.String({description:"Author initials shown on the comment bubble (derived from the author when omitted)"})),date:t.Optional(t.String({format:"date-time",description:"Comment timestamp (ISO 8601). Defaults to the Unix epoch for deterministic output"}))},VO=t.Object(Rs,{description:"A reply within a comment thread",additionalProperties:!1}),Di=t.Object({...Rs,replies:t.Optional(t.Array(VO,{minItems:1,description:"Replies, in order. They anchor to the same text and Word shows them as one thread."})),resolved:t.Optional(t.Boolean({description:"Mark the whole thread resolved (w15:done). Word writes the thread state only when the document contains at least one reply."}))},{description:"A Word review comment anchored to this component's text",additionalProperties:!1}),vs=t.Object({text:t.String({description:"Heading text (required)"}),level:t.Optional(vO),font:t.Optional(t.Partial(Dt)),language:t.Optional(Cs),noProof:t.Optional(Ts),noProofWords:t.Optional(ro),alignment:t.Optional(As),spacing:t.Optional(on),indent:t.Optional(js),lineSpacing:t.Optional(t.Union([t.Number({minimum:0}),MO])),pageBreak:t.Optional(t.Boolean({description:"Insert page break before heading"})),columnBreak:t.Optional(t.Boolean({description:"Insert column break before heading"})),numbering:t.Optional(t.Boolean({description:"Include in numbering"})),keepNext:t.Optional(t.Boolean({description:"Keep heading with next paragraph on same page"})),keepLines:t.Optional(t.Boolean({description:"Keep all lines of heading together on same page"})),revision:t.Optional(Bi),comment:t.Optional(Di)},{description:"Heading component props",additionalProperties:!1}),Us=t.Object({id:t.String({minLength:1,pattern:"^[^\\]\\s]+$",description:'Marker id referenced from the text as `[^id]`. Any characters except whitespace and "]".'}),text:t.String({minLength:1,description:"Note body. Newlines split it into separate paragraphs where the note is placed."})},{description:"A note body bound to an inline `[^id]` marker",additionalProperties:!1}),YO=t.Array(Us,{description:"Footnote bodies for `[^id]` markers in this paragraph, placed at the foot of the page. An unreferenced body is not emitted.",minItems:1}),ZO=t.Array(Us,{description:"Endnote bodies for `[^id]` markers in this paragraph, collected at the end of the document. An unreferenced body is not emitted.",minItems:1}),QO=t.Union([t.Literal("around"),t.Literal("none"),t.Literal("notBeside"),t.Literal("through"),t.Literal("tight"),t.Literal("auto")],{description:"Frame text wrapping type"}),Bo=t.Union([t.Literal("margin"),t.Literal("page"),t.Literal("text")],{description:"Frame anchor type"}),ey=t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right"),t.Literal("inside"),t.Literal("outside")],{description:"Frame horizontal alignment"}),ty=t.Union([t.Literal("top"),t.Literal("center"),t.Literal("bottom"),t.Literal("inside"),t.Literal("outside")],{description:"Frame vertical alignment"}),ny=t.Object({horizontalPosition:t.Optional(t.Object({relative:t.Optional(Bo),align:t.Optional(ey),offset:t.Optional(t.Union([t.Number({description:"Horizontal offset in twips (1/20 of a point)"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Horizontal offset as percentage (e.g., "50%") relative to page or margin width'})]))},{description:"Horizontal positioning (use either align or offset, not both)",additionalProperties:!1})),verticalPosition:t.Optional(t.Object({relative:t.Optional(Bo),align:t.Optional(ty),offset:t.Optional(t.Union([t.Number({description:"Vertical offset in twips (1/20 of a point)"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Vertical offset as percentage (e.g., "50%") relative to page or margin height'})]))},{description:"Vertical positioning (use either align or offset, not both)",additionalProperties:!1})),wrap:t.Optional(t.Object({type:QO},{description:"Text wrapping configuration",additionalProperties:!1})),lockAnchor:t.Optional(t.Boolean({description:"Lock the anchor position"})),width:t.Optional(t.Number({minimum:1,description:"Frame width in twips (DXA units)"})),height:t.Optional(t.Number({minimum:1,description:"Frame height in twips (DXA units)"}))},{description:"Floating text frame properties",additionalProperties:!1}),iy=t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right"),t.Literal("justify")],{description:"Paragraph text alignment"}),Ms=t.Object({text:t.String({description:"Text content (required)"}),font:t.Optional(t.Partial(Dt)),themeStyle:t.Optional(t.String()),language:t.Optional(Cs),noProof:t.Optional(Ts),noProofWords:t.Optional(ro),boldColor:t.Optional(S),spacing:t.Optional(on),alignment:t.Optional(iy),indent:t.Optional(js),tabStops:t.Optional(EO),pageBreak:t.Optional(t.Boolean({description:"Insert page break before paragraph"})),columnBreak:t.Optional(t.Boolean({description:"Insert column break before paragraph"})),floating:t.Optional(ny),keepNext:t.Optional(t.Boolean({description:"Keep paragraph with next paragraph on same page"})),keepLines:t.Optional(t.Boolean({description:"Keep all lines of paragraph together on same page"})),id:t.Optional(t.String({description:"Unique identifier for internal linking (bookmark anchor)"})),revision:t.Optional(Bi),comment:t.Optional(Di),footnotes:t.Optional(YO),endnotes:t.Optional(ZO)},{description:"Paragraph component props (font nested for theme consistency; no flat font properties)",additionalProperties:!1}),ks=t.Object({path:t.Optional(t.String({description:"Image source URL or file path (mutually exclusive with base64 and svg)"})),base64:t.Optional(t.String({description:'Base64-encoded image data in data URI format (e.g., "data:image/png;base64,iVBORw0KGgo...") (mutually exclusive with path and svg)'})),svg:t.Optional(t.String({description:'Raw inline SVG markup, e.g. "<svg xmlns=\\"http://www.w3.org/2000/svg\\" viewBox=\\"0 0 24 24\\">...</svg>" (mutually exclusive with path and base64). Renders as a vector image (Word 2016+); intrinsic size taken from the SVG viewBox/width/height when width/height omitted.'})),alt:t.Optional(t.String({description:"Alternative text for accessibility"})),width:t.Optional(t.Union([t.Number({minimum:1,description:"Image width in pixels"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Image width as percentage (e.g., "90%") relative to widthRelativeTo (defaults to content width)'})],{description:'Image width in pixels (number) or as percentage string (e.g., "90%")',default:"100%"})),height:t.Optional(t.Union([t.Number({minimum:1,description:"Image height in pixels"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Image height as percentage (e.g., "90%") relative to heightRelativeTo (defaults to content height)'})],{description:'Image height in pixels (number) or as percentage string (e.g., "90%")'})),widthRelativeTo:t.Optional(t.Union([t.Literal("content"),t.Literal("page")],{description:"Reference for width percentages: content (page width minus margins) or page (full page width)",default:"content"})),heightRelativeTo:t.Optional(t.Union([t.Literal("content"),t.Literal("page")],{description:"Reference for height percentages: content (page height minus margins) or page (full page height)",default:"content"})),alignment:t.Optional(ao),caption:t.Optional(t.String({description:"Image caption (supports rich text with **bold**, *italic*, ***both***)"})),spacing:t.Optional(on),floating:t.Optional(so),keepNext:t.Optional(t.Boolean({description:"Keep paragraph with next paragraph on same page"})),keepLines:t.Optional(t.Boolean({description:"Keep all lines of paragraph together on same page"}))},{description:"Image component props",additionalProperties:!1}),Bs=t.Object({number:t.String({description:"Statistic number/value (required)"}),description:t.String({description:"Statistic description (required)"}),unit:t.Optional(t.String({description:"Unit of measurement"})),format:t.Optional(t.String({description:"Number format pattern"})),trend:t.Optional(t.Union([t.Literal("up"),t.Literal("down"),t.Literal("neutral")])),trendValue:t.Optional(t.Union([t.String(),t.Number()])),alignment:t.Optional(ao),spacing:t.Optional(on),size:t.Optional(t.Union([t.Literal("small"),t.Literal("medium"),t.Literal("large")]))},{description:"Statistic component props",additionalProperties:!1}),ry=t.Recursive(e=>t.Union([t.String(),t.Object({name:t.String(),props:t.Object({},{additionalProperties:!0}),children:t.Optional(t.Array(e))},{additionalProperties:!1})])),Ds=t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right"),t.Literal("justify")],{description:"Horizontal text alignment"}),Es=t.Union([t.Literal("top"),t.Literal("middle"),t.Literal("bottom")],{description:"Vertical cell alignment"}),zs=t.Object({family:t.Optional(t.String({description:"Font family name"})),size:t.Optional(t.Number({minimum:0,description:"Font size in points"})),bold:t.Optional(t.Boolean({description:"Bold text"})),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Per-cell weight (100–900). Overrides `bold` when set."})),italic:t.Optional(t.Boolean({description:"Italic text"})),underline:t.Optional(t.Boolean({description:"Underlined text"}))},{additionalProperties:!1}),ur=t.Union([t.String({description:"Border color for all sides (hex without #)"}),t.Object({bottom:t.Optional(t.String({description:"Bottom border color (hex without #)"})),top:t.Optional(t.String({description:"Top border color (hex without #)"})),right:t.Optional(t.String({description:"Right border color (hex without #)"})),left:t.Optional(t.String({description:"Left border color (hex without #)"}))},{additionalProperties:!1})]),mr=t.Union([t.Number({minimum:0,description:"Border size for all sides in points"}),t.Object({bottom:t.Optional(t.Number({minimum:0,description:"Bottom border size in points"})),top:t.Optional(t.Number({minimum:0,description:"Top border size in points"})),right:t.Optional(t.Number({minimum:0,description:"Right border size in points"})),left:t.Optional(t.Number({minimum:0,description:"Left border size in points"}))},{additionalProperties:!1})]),oy=t.Union([t.Boolean({description:"Hide all borders when true"}),t.Object({bottom:t.Optional(t.Boolean({description:"Hide bottom border"})),top:t.Optional(t.Boolean({description:"Hide top border"})),right:t.Optional(t.Boolean({description:"Hide right border"})),left:t.Optional(t.Boolean({description:"Hide left border"})),insideHorizontal:t.Optional(t.Boolean({description:"Hide horizontal borders between rows"})),insideVertical:t.Optional(t.Boolean({description:"Hide vertical borders between columns"}))},{description:"Selectively hide specific borders",additionalProperties:!1})]),Ks=t.Union([t.Number({minimum:0,description:"Padding for all sides in points"}),t.Object({bottom:t.Optional(t.Number({minimum:0,description:"Bottom padding in points"})),top:t.Optional(t.Number({minimum:0,description:"Top padding in points"})),right:t.Optional(t.Number({minimum:0,description:"Right padding in points"})),left:t.Optional(t.Number({minimum:0,description:"Left padding in points"}))},{additionalProperties:!1})]),Xi=t.Object({color:t.Optional(S),backgroundColor:t.Optional(Ns),horizontalAlignment:t.Optional(Ds),verticalAlignment:t.Optional(Es),font:t.Optional(zs),borderColor:t.Optional(ur),borderSize:t.Optional(mr),padding:t.Optional(Ks),height:t.Optional(t.Number({minimum:0,description:"Cell height in points"}))},{additionalProperties:!1});function _s(e){const n=t.Union([t.String(),e]),i={color:t.Optional(S),backgroundColor:t.Optional(Ns),horizontalAlignment:t.Optional(Ds),verticalAlignment:t.Optional(Es),font:t.Optional(zs),borderColor:t.Optional(ur),borderSize:t.Optional(mr),padding:t.Optional(Ks),height:t.Optional(t.Number({minimum:0,description:"Cell height in points"})),comment:t.Optional(Di),revision:t.Optional(Bi)},r=t.Object({...i,content:t.Optional(n)},{additionalProperties:!1}),o=t.Object({...i,content:t.Optional(n)},{additionalProperties:!1}),a=t.Object({width:t.Optional(t.Union([t.Number({minimum:0,description:"Column width in points. When set on some columns, remaining columns will automatically share the leftover table space equally. Leave undefined to distribute space evenly among unspecified columns."}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Column width as percentage of available width (e.g., "40%")'})])),cellDefaults:t.Optional(Xi),header:t.Optional(r),cells:t.Optional(t.Array(o))},{additionalProperties:!1});return t.Object({borderColor:t.Optional(ur),borderSize:t.Optional(mr),hideBorders:t.Optional(oy),cellDefaults:t.Optional(Xi),headerCellDefaults:t.Optional(Xi),width:t.Optional(t.Number({minimum:0,maximum:100,description:"Table width in percentage (0-100)"})),columns:t.Array(a,{description:"Table columns with headers and cells",minItems:1}),rows:t.Optional(t.Array(t.Object({revision:t.Optional(XO),cantSplit:t.Optional(t.Boolean({description:"Keep this row on one page"})),tableHeader:t.Optional(t.Boolean({description:"Repeat this row as a header on each page"}))},{additionalProperties:!1}),{description:"Row-parallel properties, indexed like `columns[].cells`. The model is column-major, so anything that belongs to a whole row lives here."})),keepInOnePage:t.Optional(t.Boolean({description:"Keep table rows together on the same page by setting keepNext on all paragraphs"})),keepNext:t.Optional(t.Boolean({description:"Set keepNext on the last row to keep it connected to the next element. Works independently of keepInOnePage. Defaults to false."})),repeatHeaderOnPageBreak:t.Optional(t.Boolean({description:"Repeat the header row on each page when the table spans multiple pages. Defaults to true.",default:!0}))},{description:"Table component props with column-based structure",additionalProperties:!1})}var Hs=_s(ry),Gs=e=>t.Object({meta:t.Optional(t.Object({title:t.Optional(t.String({description:"Authoring label for this section, shown in editors and outlines. Never rendered — add a heading child for a visible title."}))},{additionalProperties:!1,description:"Authoring metadata; has no effect on the document."})),header:t.Optional(t.Union([t.Array(e||t.Any(),{description:"Section header components"}),t.Literal("linkToPrevious",{description:"Link header to previous section"})])),footer:t.Optional(t.Union([t.Array(e||t.Any(),{description:"Section footer components"}),t.Literal("linkToPrevious",{description:"Link footer to previous section"})])),pageBreak:t.Optional(t.Boolean({description:"Insert page break before section",default:!0})),spacing:t.Optional(on),page:t.Optional(t.Object({size:t.Optional(t.Union([t.Literal("A4"),t.Literal("A3"),t.Literal("LETTER"),t.Literal("LEGAL"),t.Object({width:t.Number({minimum:0}),height:t.Number({minimum:0})})])),margins:t.Optional(t.Object({top:t.Optional(t.Number({minimum:0})),bottom:t.Optional(t.Number({minimum:0})),left:t.Optional(t.Number({minimum:0})),right:t.Optional(t.Number({minimum:0})),header:t.Optional(t.Number({minimum:0})),footer:t.Optional(t.Number({minimum:0})),gutter:t.Optional(t.Number({minimum:0}))},{additionalProperties:!1}))},{description:"Page configuration override for this section (overrides theme page settings)",additionalProperties:!1}))},{description:"Section component props",additionalProperties:!1}),Ws=Gs(),ay=t.Object({width:t.Optional(t.Union([t.Number({minimum:1,description:"Column width in points"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Column width as percentage of available width (e.g., "30%")'}),t.Literal("auto",{description:"Auto width: consume remaining space after fixed widths and gaps"})])),gap:t.Optional(t.Union([t.Number({minimum:0,description:"Gap after this column in points"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Gap after this column as percentage of available width (e.g., "5%")'})]))},{additionalProperties:!1}),qs=t.Object({columns:t.Union([t.Number({minimum:1,description:"Number of equal-width columns (converter will normalize to array)"}),t.Array(ay,{minItems:1,description:"List of columns in order; width and gap can be points, percentages, or auto width"})]),gap:t.Optional(t.Union([t.Number({minimum:0,description:"Default gap applied after each column except the last (points)"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Default gap applied after each column except the last as percentage of available width (e.g., "5%")'})]))},{description:"Columns component props",additionalProperties:!1}),Js=t.Union([t.Literal("decimal"),t.Literal("upperRoman"),t.Literal("lowerRoman"),t.Literal("upperLetter"),t.Literal("lowerLetter"),t.Literal("bullet"),t.Literal("ordinal"),t.Literal("cardinalText"),t.Literal("ordinalText"),t.Literal("hex"),t.Literal("chicago"),t.Literal("ideographDigital"),t.Literal("japaneseCounting"),t.Literal("aiueo"),t.Literal("iroha"),t.Literal("decimalFullWidth"),t.Literal("decimalHalfWidth"),t.Literal("japaneseLegal"),t.Literal("japaneseDigitalTenThousand"),t.Literal("decimalEnclosedCircle"),t.Literal("decimalFullWidth2"),t.Literal("aiueoFullWidth"),t.Literal("irohaFullWidth"),t.Literal("decimalZero"),t.Literal("ganada"),t.Literal("chosung"),t.Literal("decimalEnclosedFullstop"),t.Literal("decimalEnclosedParen"),t.Literal("decimalEnclosedCircleChinese"),t.Literal("ideographEnclosedCircle"),t.Literal("ideographTraditional"),t.Literal("ideographZodiac"),t.Literal("ideographZodiacTraditional"),t.Literal("taiwaneseCounting"),t.Literal("ideographLegalTraditional"),t.Literal("taiwaneseCountingThousand"),t.Literal("taiwaneseDigital"),t.Literal("chineseCounting"),t.Literal("chineseLegalSimplified"),t.Literal("chineseCountingThousand"),t.Literal("koreanDigital"),t.Literal("koreanCounting"),t.Literal("koreanLegal"),t.Literal("koreanDigital2"),t.Literal("vietnameseCounting"),t.Literal("russianLower"),t.Literal("russianUpper"),t.Literal("none"),t.Literal("numberInDash"),t.Literal("hebrew1"),t.Literal("hebrew2"),t.Literal("arabicAlpha"),t.Literal("arabicAbjad"),t.Literal("hindiVowels"),t.Literal("hindiConsonants"),t.Literal("hindiNumbers"),t.Literal("hindiCounting"),t.Literal("thaiLetters"),t.Literal("thaiNumbers"),t.Literal("thaiCounting")],{description:"Number or bullet format for list levels"}),sy=t.Object({family:t.Optional(t.String({description:"Font family name"})),size:t.Optional(t.Number({minimum:1,description:"Marker size in points"})),color:t.Optional(S),bold:t.Optional(t.Boolean({description:"Bold marker"})),italic:t.Optional(t.Boolean({description:"Italic marker"})),underline:t.Optional(t.Boolean({description:"Underlined marker"}))},{description:"Styling for the number/bullet glyph only. The list text is unaffected.",additionalProperties:!1}),cy=t.Object({level:t.Number({minimum:0,maximum:8,description:"Nesting level (0 = root, 1 = first sublevel, etc.)"}),format:t.Optional(Js),text:t.Optional(t.String({description:'Number format string (e.g., "%1." for "1.", "%1)" for "1)", custom bullet character for bullet format)'})),alignment:t.Optional(t.Union([t.Literal("start"),t.Literal("end"),t.Literal("left"),t.Literal("right"),t.Literal("center")],{description:"Alignment of the numbering/bullet"})),indent:t.Optional(ki),start:t.Optional(t.Number({minimum:1,description:"Starting number for this level (default: 1)"})),font:t.Optional(sy)},{description:"Configuration for a single list level",additionalProperties:!1}),Xs=t.Object({items:t.Array(t.Union([t.String(),t.Object({text:t.String(),level:t.Optional(t.Number({minimum:0,maximum:8,description:"Nesting level for this item"})),revision:t.Optional(Bi)},{additionalProperties:!1})]),{description:"List items (required)",minItems:1}),reference:t.Optional(t.String({description:"Unique reference ID for this numbering configuration (auto-generated if not provided)"})),levels:t.Optional(t.Array(cy,{description:"Configuration for each nesting level",minItems:1,maxItems:9})),format:t.Optional(t.Union([Js,t.Literal("numbered"),t.Literal("none")],{description:"Format for level 0 (simplified option when levels not specified)"})),bullet:t.Optional(t.String({description:"Custom bullet character (simplified option when levels not specified)"})),start:t.Optional(t.Number({minimum:1,description:"Starting number for level 0. Applies whether or not `levels` is given; a `start` on the level itself wins."})),spacing:t.Optional(UO),alignment:t.Optional(As),indent:t.Optional(t.Union([t.Number({minimum:0}),ki])),comment:t.Optional(Di)},{description:"List component props",additionalProperties:!1}),co=["revision","comment","footnotes","endnotes"],ly=t.Partial(t.Omit(vs,co)),dy=t.Partial(t.Omit(Ms,co)),py=t.Partial(ks),uy=t.Partial(Bs),my=t.Partial(t.Omit(Hs,["rows"])),fy=t.Partial(Ws),gy=t.Partial(qs),hy=t.Partial(t.Omit(Xs,co)),Vs=t.Object({heading:t.Optional(ly),paragraph:t.Optional(dy),image:t.Optional(py),statistic:t.Optional(uy),table:t.Optional(my),section:t.Optional(fy),columns:t.Optional(gy),list:t.Optional(hy)},{additionalProperties:!0}),by=t.Object({top:t.Number({minimum:0}),bottom:t.Number({minimum:0}),left:t.Number({minimum:0}),right:t.Number({minimum:0}),header:t.Number({minimum:0}),footer:t.Number({minimum:0}),gutter:t.Number({minimum:0})},{additionalProperties:!1,description:"Document margin configuration"});t.Object({width:t.Number({minimum:0}),height:t.Number({minimum:0})},{additionalProperties:!1,description:"Page dimensions in twips"});var Oy=t.Object({size:t.Union([t.Literal("A4"),t.Literal("A3"),t.Literal("LETTER"),t.Literal("LEGAL"),t.Object({width:t.Number({minimum:0}),height:t.Number({minimum:0})},{additionalProperties:!1})],{description:"Standard page size or custom dimensions"}),margins:by},{description:"Page configuration including dimensions and margins",additionalProperties:!1}),Ys=t.Object({heading:Dt,body:Dt,mono:Dt,light:Dt},{additionalProperties:!1,description:"Font definitions for different text types"}),yy=t.Union([t.Literal("single"),t.Literal("dashDotStroked"),t.Literal("dashed"),t.Literal("dashSmallGap"),t.Literal("dotDash"),t.Literal("dotDotDash"),t.Literal("dotted"),t.Literal("double"),t.Literal("doubleWave"),t.Literal("inset"),t.Literal("nil"),t.Literal("none"),t.Literal("outset"),t.Literal("thick"),t.Literal("thickThinLargeGap"),t.Literal("thickThinMediumGap"),t.Literal("thickThinSmallGap"),t.Literal("thinThickLargeGap"),t.Literal("thinThickMediumGap"),t.Literal("thinThickSmallGap"),t.Literal("thinThickThinLargeGap"),t.Literal("thinThickThinMediumGap"),t.Literal("thinThickThinSmallGap"),t.Literal("threeDEmboss"),t.Literal("threeDEngrave"),t.Literal("triple"),t.Literal("wave")],{description:"Paragraph border style"}),Zs={style:yy,size:t.Number({minimum:0,description:"Width in eighths of a point (docx sz)"}),color:S,space:t.Optional(t.Number({minimum:0,description:"Space between text and border in points"}))},zn=t.Object(Zs,{additionalProperties:!1,description:"Paragraph border side definition"}),xy=t.Object(Zs,{additionalProperties:!1,description:"Rule drawn between consecutive paragraphs sharing this border set (w:between), in place of their adjoining bottom and top edges"}),Qs=t.Object({top:t.Optional(zn),bottom:t.Optional(zn),left:t.Optional(zn),right:t.Optional(zn),between:t.Optional(xy)},{additionalProperties:!1,description:"Paragraph borders (per side, plus the between-paragraph rule)"}),ec=t.Optional(t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right"),t.Literal("justify")])),Ne=t.Object({font:t.Optional(t.Union([t.Literal("heading"),t.Literal("body"),t.Literal("mono"),t.Literal("light")])),...oo.properties,alignment:ec,priority:t.Optional(t.Number()),baseStyle:t.Optional(t.String()),followingStyle:t.Optional(t.String()),widowControl:t.Optional(t.Boolean()),keepNext:t.Optional(t.Boolean()),keepLinesTogether:t.Optional(t.Boolean()),outlineLevel:t.Optional(t.Number()),borders:t.Optional(Qs),indent:t.Optional(ki)},{additionalProperties:!1}),Sy=t.Union([t.Literal("dot"),t.Literal("hyphen"),t.Literal("middleDot"),t.Literal("none"),t.Literal("underscore")],{description:"Tab leader style: dot (dotted), hyphen (dashed), middleDot, none (blank), or underscore"}),wy=t.Union([t.Literal("left"),t.Literal("right"),t.Literal("center"),t.Literal("bar"),t.Literal("clear"),t.Literal("decimal"),t.Literal("end"),t.Literal("num"),t.Literal("start")],{description:"Tab stop alignment type"}),Ly=t.Object({type:wy,position:t.Union([t.Number({description:"Tab stop position in twips (1/1440 inch). Common: 9026 for right-aligned at page margin"}),t.Literal("max",{description:"Use maximum position (TabStopPosition.MAX = 9026 twips)"})]),leader:t.Optional(Sy)},{description:"Tab stop configuration with position, alignment, and optional leader",additionalProperties:!1}),Mt=t.Object({font:t.Optional(t.Union([t.Literal("heading"),t.Literal("body"),t.Literal("mono"),t.Literal("light")])),...oo.properties,alignment:ec,tabStops:t.Optional(t.Array(Ly,{description:"Tab stops for TOC entries. Use right-aligned tab with leader to create dotted lines to page numbers.",default:[{type:"right",position:"max",leader:"none"}]})),priority:t.Optional(t.Number()),followingStyle:t.Optional(t.String()),widowControl:t.Optional(t.Boolean()),keepNext:t.Optional(t.Boolean()),keepLinesTogether:t.Optional(t.Boolean()),outlineLevel:t.Optional(t.Number()),borders:t.Optional(Qs),indent:t.Optional(ki)},{additionalProperties:!1}),tc=t.Object({normal:t.Optional(Ne),heading1:t.Optional(Ne),heading2:t.Optional(Ne),heading3:t.Optional(Ne),heading4:t.Optional(Ne),heading5:t.Optional(Ne),heading6:t.Optional(Ne),title:t.Optional(Ne),subtitle:t.Optional(Ne),TOC1:t.Optional(Mt),TOC2:t.Optional(Mt),TOC3:t.Optional(Mt),TOC4:t.Optional(Mt),TOC5:t.Optional(Mt),TOC6:t.Optional(Mt)},{additionalProperties:Ne,description:"Style definitions supporting predefined styles (normal, heading1..6, title, subtitle), TOC entry styles (TOC1..TOC6), and arbitrary custom styles."});t.Object({level:t.Union([t.Literal(1),t.Literal(2),t.Literal(3),t.Literal(4),t.Literal(5),t.Literal(6)]),...Ne.properties},{additionalProperties:!1});var Py=t.Object({primary:S,secondary:S,accent:S,text:S,background:S,border:S,textPrimary:S,textSecondary:S,textMuted:S,borderPrimary:S,borderSecondary:S,backgroundPrimary:S,backgroundSecondary:S,accent4:t.Optional(S),accent5:t.Optional(S),accent6:t.Optional(S)},{additionalProperties:!1}),Iy=t.Object({colors:t.Optional(t.Partial(Py)),fonts:t.Optional(t.Partial(Ys)),styles:t.Optional(tc)},{additionalProperties:!1,description:"Partial theme deep-merged over the resolved named theme: define or override palette tokens, font roles, and named styles in-document."}),Fy=t.Object({$schema:t.Optional(t.String()),name:t.String(),displayName:t.String(),description:t.String(),version:t.String(),colors:t.Object({primary:S,secondary:S,accent:S,text:S,background:S,border:S,textPrimary:S,textSecondary:S,textMuted:S,borderPrimary:S,borderSecondary:S,backgroundPrimary:S,backgroundSecondary:S,accent4:t.Optional(S),accent5:t.Optional(S),accent6:t.Optional(S)},{additionalProperties:!1}),fonts:Ys,fontRegistry:t.Optional($i),page:Oy,styles:t.Optional(tc),componentDefaults:t.Optional(Vs),noProofWords:t.Optional(t.Array(t.String({minLength:1}),{description:"Words that should never be flagged as misspelled (whole-word, case-insensitive)."}))},{additionalProperties:!1,description:"Theme configuration"});function R0(e="minimal-theme"){return{name:e,displayName:e.split(/[-_\s]+/).filter(Boolean).map(n=>n.charAt(0).toUpperCase()+n.slice(1)).join(" ")||e,description:"A minimal theme with basic styling",version:"1.0.0",colors:{primary:"#2563EB",secondary:"#64748B",accent:"#F8FAFC",text:"#334155",background:"#FFFFFF",border:"#E2E8F0",textPrimary:"#334155",textSecondary:"#64748B",textMuted:"#94A3B8",borderPrimary:"#CBD5E1",borderSecondary:"#E2E8F0",backgroundPrimary:"#FFFFFF",backgroundSecondary:"#F8FAFC"},fonts:{heading:{family:"Arial",size:14},body:{family:"Arial",size:11},mono:{family:"Courier New",size:10},light:{family:"Arial",size:10}},page:{size:"A4",margins:{top:1440,bottom:1440,left:1440,right:1440,header:720,footer:720,gutter:0}},styles:{normal:{font:"body",size:11,color:"#334155",alignment:"left",lineSpacing:{type:"multiple",value:1.15},spacing:{after:8}}}}}var $y=e=>t.Object({theme:t.Optional(t.String({description:'Theme name to apply (default: "minimal")',examples:["minimal","corporate","modern"],default:"minimal"})),themeOverrides:t.Optional(Iy),fontRegistry:t.Optional($i),componentDefaults:t.Optional(Vs),language:t.Optional(t.String({pattern:"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$",description:`Default document language (BCP-47 tag, e.g. "en-US"). Sets Word's default proofing/spell-check language; individual components can override it locally.`,examples:["en-US","fr-FR","de-DE","it-IT","es-ES"]})),noProofWords:t.Optional(ro),trackRevisions:t.Optional(t.Boolean({description:"Open the document in track-changes mode: Word marks any further edits as revisions. Set automatically on redline documents produced by the diff engine"})),metadata:t.Optional(t.Object({title:t.Optional(t.String({description:"Document title",examples:["Annual Report 2024","Technical Documentation"]})),subtitle:t.Optional(t.String({description:"Document subtitle"})),description:t.Optional(t.String()),author:t.Optional(t.String()),company:t.Optional(t.String({description:"Company name, written to docProps/custom.xml (Word has no core-property slot for it)"})),date:t.Optional(t.String({description:"Document date used by {DATE}/{DATETIME} placeholders (defaults to the generation timestamp)"})),version:t.Optional(t.String({description:"Document version, written to docProps/custom.xml",examples:["1.0","2024.3"]})),tags:t.Optional(t.Array(t.String()))},{description:"Document metadata (title, author, company, version, etc.). Package timestamps (dcterms:created/modified) are not part of this object: they come from the `generatedAt` generation option so repeated builds stay byte-identical.",additionalProperties:!1}))},{description:"Report component props",additionalProperties:!1}),Ny=$y(),Cy=t.Object({width:t.Optional(t.Union([t.Number({minimum:1,description:"Text box width in pixels"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Text box width as percentage (e.g., "50%") relative to content width'})],{description:'Text box width in pixels (number) or as percentage string (e.g., "50%")'})),height:t.Optional(t.Union([t.Number({minimum:1,description:"Text box height in pixels"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Text box height as percentage (e.g., "50%") relative to content height'})],{description:'Text box height in pixels (number) or as percentage string (e.g., "50%")'})),floating:t.Optional(so),style:t.Optional(t.Object({padding:t.Optional(t.Object({top:t.Optional(t.Number({minimum:0})),right:t.Optional(t.Number({minimum:0})),bottom:t.Optional(t.Number({minimum:0})),left:t.Optional(t.Number({minimum:0}))},{additionalProperties:!1})),border:t.Optional(t.Object({top:t.Optional(t.Object({style:t.Optional(t.Union([t.Literal("solid"),t.Literal("dashed"),t.Literal("dotted"),t.Literal("double"),t.Literal("none")])),width:t.Optional(t.Number({minimum:0})),color:t.Optional(S)},{additionalProperties:!1})),right:t.Optional(t.Object({style:t.Optional(t.Union([t.Literal("solid"),t.Literal("dashed"),t.Literal("dotted"),t.Literal("double"),t.Literal("none")])),width:t.Optional(t.Number({minimum:0})),color:t.Optional(S)},{additionalProperties:!1})),bottom:t.Optional(t.Object({style:t.Optional(t.Union([t.Literal("solid"),t.Literal("dashed"),t.Literal("dotted"),t.Literal("double"),t.Literal("none")])),width:t.Optional(t.Number({minimum:0})),color:t.Optional(S)},{additionalProperties:!1})),left:t.Optional(t.Object({style:t.Optional(t.Union([t.Literal("solid"),t.Literal("dashed"),t.Literal("dotted"),t.Literal("double"),t.Literal("none")])),width:t.Optional(t.Number({minimum:0})),color:t.Optional(S)},{additionalProperties:!1}))},{additionalProperties:!1})),shading:t.Optional(t.Object({fill:t.Optional(S)},{additionalProperties:!1}))},{additionalProperties:!1}))},{additionalProperties:!1}),Ty=t.Union([t.Literal("numeric"),t.Literal("bullet"),t.Literal("none")],{description:"TOC numbering style — accepted but not applied (Word TOC fields carry no numbering switch); setting it logs a warning during generation"}),Ay=t.Union([t.Literal("document"),t.Literal("section")],{description:"TOC scope: document-wide or section-only"}),jy=t.Object({styleId:t.String({description:"Custom style ID matching a key in theme.styles"}),level:t.Number({minimum:1,maximum:6,description:"TOC level (1-6) to assign to this style"})},{description:"Mapping of custom style to TOC level",additionalProperties:!1});t.Object({from:t.Optional(t.Number({minimum:1,maximum:6,default:1,description:"Starting heading level (1-6). Defaults to 1 if not specified."})),to:t.Optional(t.Number({minimum:1,maximum:6,default:3,description:"Ending heading level (1-6). Defaults to 3 if not specified."}))},{description:'Range of heading levels to include in TOC. Specify at least one of "from" or "to".',additionalProperties:!1});var Ry=t.Object({pageBreak:t.Optional(t.Boolean({description:"Insert page break before TOC block"})),depth:t.Optional(t.Object({from:t.Optional(t.Number({minimum:1,maximum:6,default:1,description:"Starting heading level (1-6). Defaults to 1 if not specified."})),to:t.Optional(t.Number({minimum:1,maximum:6,default:3,description:"Ending heading level (1-6). Defaults to 3 if not specified."}))},{description:'Range of heading levels to include in TOC. Specify "from", "to", or both. Defaults: from=1, to=3',additionalProperties:!1,default:{to:3}})),pageNumbersDepth:t.Optional(t.Object({from:t.Optional(t.Number({minimum:1,maximum:6,default:1,description:"Starting heading level (1-6). Defaults to 1 if not specified."})),to:t.Optional(t.Number({minimum:1,maximum:6,default:3,description:"Ending heading level (1-6). Defaults to 3 if not specified."}))},{description:'Range of heading levels to show page numbers. Specify "from", "to", or both. When specified, page numbers are hidden for entries outside this range.',additionalProperties:!1})),numberingStyle:t.Optional(Ty),title:t.Optional(t.String({description:"TOC heading title"})),includePageNumbers:t.Optional(t.Boolean({default:!0,description:"Show page numbers next to entries"})),numberSeparator:t.Optional(t.Boolean({default:!0,description:'Use tab separator between entry and page number. True applies "\\t" (default), false applies " "'})),scope:t.Optional(t.Union([Ay,t.Literal("auto")],{default:"auto",description:'TOC scope: "document" for entire document, "section" for parent section only, "auto" for automatic detection (section if inside section, otherwise document)'})),styles:t.Optional(t.Array(jy,{description:"Custom style mappings for TOC entries. Maps custom theme styles to TOC levels."}))},{description:"Table of Contents component props",additionalProperties:!1}),vy=t.Object({options:t.Intersect([t.Record(t.String(),t.Unknown()),t.Object({chart:t.Object({width:t.Number(),height:t.Number()})})]),scale:t.Optional(t.Number()),resources:t.Optional(t.Object({css:t.Optional(t.String()),js:t.Optional(t.String()),files:t.Optional(t.Array(t.String()))})),serverUrl:t.Optional(t.String({description:"Highcharts Export Server URL (default: http://localhost:7801)"})),width:t.Optional(t.Union([t.Number({minimum:1,description:"Image width in pixels"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Image width as percentage (e.g., "90%") relative to content width'})],{description:'Rendered image width in pixels (number) or as percentage string (e.g., "90%")'})),height:t.Optional(t.Union([t.Number({minimum:1,description:"Image height in pixels"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Image height as percentage (e.g., "90%") relative to content height'})],{description:'Rendered image height in pixels (number) or as percentage string (e.g., "90%")'}))}),Uy=t.Object({color:t.Optional(t.String({description:'Background color (hex like "#FFFFFF" or a theme color name)'})),image:t.Optional(t.Object({path:t.Optional(t.String()),base64:t.Optional(t.String())},{additionalProperties:!1}))},{additionalProperties:!1}),My=t.Object({width:t.Number({minimum:.1,description:"Canvas width in inches (pptx slideWidth)"}),height:t.Number({minimum:.1,description:"Canvas height in inches (pptx slideHeight)"}),theme:t.Optional(t.String({description:"pptx theme name applied to the slide"})),background:t.Optional(Uy)},{description:"pptx canvas definition for the visual",additionalProperties:!1}),ky=t.Object({canvas:My,elements:t.Optional(t.Array(Zg,{description:"pptx slide content elements (text, image, shape, table, highcharts, chart), positioned with x/y/w/h in inches"})),dpi:t.Optional(t.Number({minimum:Mo,maximum:ko,default:Uo,description:`Raster resolution in DPI (default ${Uo}, range ${Mo}-${ko}). Higher = sharper + larger.`})),serverUrl:t.Optional(t.String({description:"Rasterization service URL override (default from services.pptx)"})),width:t.Optional(t.Union([t.Number({minimum:1,description:"Rendered width in pixels"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Rendered width as percentage (e.g. "90%")'})],{description:"Rendered width in the document, in pixels (number) or percentage string. Defaults to the canvas physical size."})),height:t.Optional(t.Union([t.Number({minimum:1,description:"Rendered height in pixels"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Rendered height as percentage (e.g. "90%")'})])),alignment:t.Optional(ao),caption:t.Optional(t.String({description:"Caption (supports rich text with **bold**, *italic*, ***both***)"})),alt:t.Optional(t.String({description:"Alternative text for accessibility"})),spacing:t.Optional(on),floating:t.Optional(so),keepNext:t.Optional(t.Boolean({description:"Keep paragraph with next paragraph on same page"})),keepLines:t.Optional(t.Boolean({description:"Keep all lines of paragraph together on same page"}))},{description:"Visual component props (pptx-rendered graphic)",additionalProperties:!1}),Gt=[{name:"docx",propsSchema:Ny,hasChildren:!0,allowedChildren:["section"],category:"container",description:"Main document container - defines the overall document structure. Required as the root component.",special:{hasSchemaField:!0}},{name:"section",propsSchema:Ws,createPropsSchema:Gs,hasChildren:!0,allowedChildren:["heading","paragraph","image","statistic","table","list","toc","highcharts","visual","columns","text-box"],category:"container",description:"Section container - groups related content with optional title. Use for organizing document structure."},{name:"columns",propsSchema:qs,hasChildren:!0,allowedChildren:["heading","paragraph","image","statistic","table","list","toc","highcharts","visual","text-box"],category:"layout",description:"Multi-column layout - arranges content in 2-4 columns. Great for side-by-side content."},{name:"text-box",propsSchema:Cy,hasChildren:!0,allowedChildren:["heading","paragraph","image"],category:"layout",description:"Floating text container - allows positioning text anywhere on the page with absolute or relative positioning."},{name:"heading",propsSchema:vs,hasChildren:!1,category:"content",description:"Heading text - supports levels 1-6 for document hierarchy. Level 1 is largest."},{name:"paragraph",propsSchema:Ms,hasChildren:!1,category:"content",description:"Paragraph text - supports formatting like bold, italic, and color. Main content element."},{name:"image",propsSchema:ks,hasChildren:!1,category:"content",description:"Image element - displays images with optional caption. Supports various formats."},{name:"statistic",propsSchema:Bs,hasChildren:!1,category:"content",description:"Statistic display - shows a number with description. Perfect for KPIs and metrics."},{name:"table",propsSchema:Hs,createPropsSchema:_s,hasChildren:!1,category:"content",description:"Data table - displays tabular data with headers. Supports formatting and alignment."},{name:"list",propsSchema:Xs,hasChildren:!1,category:"content",description:"List element - bulleted or numbered list items. Supports nested lists."},{name:"toc",propsSchema:Ry,hasChildren:!1,category:"content",description:"Table of contents - automatically generates TOC from document headings. Supports depth ranges and custom styles."},{name:"highcharts",propsSchema:vy,hasChildren:!1,category:"content",description:"Chart component powered by Highcharts - render line, bar, pie, heatmap, and more with rich options."},{name:"visual",propsSchema:ky,hasChildren:!1,category:"content",description:"Free-canvas graphic authored as a single pptx slide and embedded as a rasterized PNG. Use for infographics, diagrams and layered compositions that the document flow cannot express."}];function Do(e){return Gt.find(n=>n.name===e)}function By(e){var i;const n=e;return n.type!=="object"||(((i=n.required)==null?void 0:i.length)??0)>0}function qn(e,n,i){var a,s;const r={name:t.Literal(e.name),id:t.Optional(t.String()),enabled:t.Optional(t.Boolean({default:!0,description:"When false, this component is filtered out and not rendered. Defaults to true. Useful for conditional component inclusion."}))};(a=e.special)!=null&&a.hasSchemaField&&(r.$schema=t.Optional(t.String({format:"uri"})));const o=e.createPropsSchema&&i?e.createPropsSchema(i):e.propsSchema;return r.props=By(o)?o:t.Optional(o),e.hasChildren&&n&&(r.children=(s=e.special)!=null&&s.hasSchemaField?t.Array(n):t.Optional(t.Array(n))),t.Object(r,{additionalProperties:!1,description:e.description})}function Dy(e){return Gt.map(n=>qn(n,e))}function nc(e,n=[]){const i=new Map;for(const l of Gt)l.hasChildren||i.set(l.name,qn(l,void 0,e));const r=Gt.filter(l=>l.hasChildren),o=new Map,a=[...r];for(;a.length>0;){const l=a.length;for(let c=a.length-1;c>=0;c--){const m=a[c];if(!m.allowedChildren){o.set(m.name,qn(m,e,e)),a.splice(c,1);continue}if(!m.allowedChildren.filter(h=>r.some(u=>u.name===h)).every(h=>o.has(h)))continue;const I=[...m.allowedChildren.map(h=>o.get(h)??i.get(h)).filter(h=>h!==void 0),...n],A=I.length===1?I[0]:t.Union(I);o.set(m.name,qn(m,A,e)),a.splice(c,1)}if(a.length===l)throw new Error(`Circular allowedChildren among: ${a.map(c=>c.name).join(", ")}`)}const s=new Map([...o,...i]);return{schemas:[...s.values()],byName:s}}function Ey(e={}){const{includeStandardComponents:n=!0,customComponents:i=[],title:r="JSON Report Definition",description:o="JSON report definition with TypeBox schemas"}=e;let a=[],s=[];const l=t.Recursive(m=>{const x=[];for(const u of i)if(u.versionedProps&&u.versionedProps.length>0){const P=u.versionedProps,j=gs(P.map(E=>E.version));for(const E of P){const oe=E.description||u.description,ut={name:t.Literal(u.name),id:t.Optional(t.String()),version:oe?t.Literal(E.version,{description:oe}):t.Literal(E.version),props:E.propsSchema};E.hasChildren&&(ut.children=t.Optional(t.Array(m)));const jn=E.description?`${u.name} v${E.version} — ${E.description}`:u.description?`${u.name} v${E.version} — ${u.description}`:`${u.name} v${E.version}`;x.push(t.Object(ut,{additionalProperties:!1,description:jn}))}const re=P.find(E=>E.version===j),Ze={name:t.Literal(u.name),id:t.Optional(t.String()),props:re.propsSchema};re.hasChildren&&(Ze.children=t.Optional(t.Array(m)));const Qe=re.description?`${u.name} (latest: v${j}) — ${re.description}`:u.description?`${u.name} (latest: v${j}) — ${u.description}`:`${u.name} (latest: v${j})`;x.push(t.Object(Ze,{additionalProperties:!1,description:Qe}))}else{const P=!!u.hasChildren,j={name:t.Literal(u.name),id:t.Optional(t.String()),props:u.propsSchema};P&&(j.children=t.Optional(t.Array(m))),x.push(t.Object(j,{additionalProperties:!1,...u.description?{description:u.description}:{}}))}const{schemas:L,byName:I}=n?nc(m,x):{schemas:[],byName:new Map},A=Do("section");a=["section",...(A==null?void 0:A.allowedChildren)??[]].map(u=>I.get(u)).filter(u=>u!==void 0),s=x;const h=[...L,...x];if(h.length===0)return t.Any();if(h.length===1)return h[0];{const u=i.length>0?"Component definition with discriminated union including custom components":"Component definition with discriminated union";return t.Union(h,{discriminator:{propertyName:"name"},description:u})}},{$id:"ComponentDefinition"}),c=Do("docx");if(!c)throw new Error("Docx root component not found in registry");if(a.length===0)throw new Error("Root child schemas not found in narrowed standard schemas");return t.Object({name:t.Literal("docx"),id:t.Optional(t.String()),$schema:t.Optional(t.String({format:"uri"})),props:t.Optional(c.propsSchema),children:t.Array(t.Union([...a,...s],{discriminator:{propertyName:"name"}}))},{additionalProperties:!1,title:r,description:o,definitions:{ComponentDefinition:l}})}t.Union([...Dy(t.Any())],{discriminator:{propertyName:"name"},description:"Standard component definition with discriminated union"});var zy=t.Recursive(e=>t.Union([...nc(e).schemas],{discriminator:{propertyName:"name"},description:"Component definition with discriminated union"})),Ky=t.Object({content:t.String({description:"Text content (required)"}),spaceAfter:t.Optional(t.Number({minimum:0,description:"Spacing after text in points"})),fontSize:t.Optional(t.Number({minimum:1})),fontFamily:t.Optional(t.String()),bold:t.Optional(t.Boolean()),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900})),italic:t.Optional(t.Boolean()),underline:t.Optional(t.Boolean()),color:t.Optional(t.String({pattern:"^#[0-9A-Fa-f]{6}$"})),alignment:t.Optional(t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right"),t.Literal("justify")]))}),_y=t.Object({name:t.Literal("text-space-after"),id:t.Optional(t.String()),props:Ky}),Hy=_y;Object.fromEntries([...Gt.map(e=>[e.name,e.propsSchema]),["custom",Hy]]);new Set(Gt.filter(e=>{var n;return!!((n=e.special)!=null&&n.hasSchemaField)}).map(e=>e.name));var de={};function Gy(){return{includeEmojis:!ic(),verbosity:"normal",includeSuggestions:!0,includePath:!0,maxMessageLength:0,includeDocLinks:!1,colorSupport:Wy()}}Gy();function ic(){return typeof process>"u"||!de?!1:!!(de.CI||de.CONTINUOUS_INTEGRATION||de.GITHUB_ACTIONS||de.GITLAB_CI||de.CIRCLECI||de.TRAVIS||de.JENKINS_URL)}function Wy(){var e;return typeof process>"u"||de!=null&&de.NO_COLOR?!1:de!=null&&de.FORCE_COLOR||(e=process.stdout)!=null&&e.isTTY?!0:!ic()}t.Object({definition:zy,format:t.Optional(t.Union([t.Literal("docx"),t.Literal("pdf"),t.Literal("html")])),options:t.Optional(t.Object({includeMetadata:t.Optional(t.Boolean()),includeComments:t.Optional(t.Boolean({deprecated:!0,description:"Deprecated and ignored. Comments are authored per component via the `comment` prop."})),trackChanges:t.Optional(t.Boolean())},{additionalProperties:!0}))},{additionalProperties:!1,description:"Document generation request"});t.Object({definition:t.Unknown(),strict:t.Optional(t.Boolean())},{additionalProperties:!1,description:"Document validation request"});t.Object({success:t.Boolean(),documentId:t.Optional(t.String()),downloadUrl:t.Optional(t.String()),error:t.Optional(t.String()),metadata:t.Optional(t.Object({pageCount:t.Optional(t.Number()),wordCount:t.Optional(t.Number()),generatedAt:t.Optional(t.String({format:"date-time"}))},{additionalProperties:!0}))},{additionalProperties:!1,description:"Document generation response"});t.Object({valid:t.Boolean(),errors:t.Array(t.Object({path:t.String(),message:t.String(),code:t.Optional(t.String())})),warnings:t.Optional(t.Array(t.Object({path:t.String(),message:t.String(),code:t.Optional(t.String())})))},{additionalProperties:!1,description:"Document validation response"});Fa("uri",e=>{try{return new URL(e),!0}catch{return e.includes(".json")||e.includes("/")||e.includes("\\")?!0:/^https?:\/\/.+/.test(e)}});Fa("date-time",e=>/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{3})?Z?$/.test(e)&&!isNaN(Date.parse(e)));var qy=["columns","heading","highcharts","image","list","paragraph","docx","section","statistic","table","text-box","toc","visual"];new Set(qy);const Vi=t.Object({basePath:t.String({default:""})});function Jy(e){const n=bO(Vi,e);if(n.basePath&&n.basePath!==""&&(!n.basePath.startsWith("/")||n.basePath.endsWith("/")))throw new Error("basePath must start with / and not end with /");if(!io(Vi,n)){const i=[...eO(Vi,n)];throw new Error(`Environment validation failed: ${i.map(r=>r.message).join(", ")}`)}return n}const v0=Jy({basePath:""}),qe=typeof window<"u"&&window.__JTO_FORMAT__||"docx",U0=qe==="docx"?"Document":"Presentation",M0=qe==="docx"?".docx":".pptx";function Xy(){var r;const e=Ey({customComponents:[]}),n=fs(e,{$schema:"https://json-schema.org/draft-07/schema#",$id:"https://json-to-office.dev/schema/document/v1.0.0",title:"JSON to DOCX Document Definition",description:"Schema for JSON to DOCX JSON document definitions"}),i={...n,default:{name:"docx",props:{title:"New Document"},children:[]},properties:{...n.properties,children:{...((r=n.properties)==null?void 0:r.children)||{},description:'Array of document components. Type "name" to see available component types.',markdownDescription:"Array of document components. Available types:\n- `docx` - Main container\n- `section` - Section container\n- `heading` - Heading element\n- `paragraph` - Paragraph element\n- `image` - Image element\n- `table` - Data table\n- `list` - List element\n- `columns` - Column layout\n- `statistic` - Statistic element\n- `highcharts` - Highcharts chart\n- `toc` - Table of contents"}},definitions:{...n.definitions||{}}};return lo(i),i}function Vy(){var r;const e=RO({customComponents:[]}),n=fs(e,{$schema:"https://json-schema.org/draft-07/schema#",$id:"https://json-to-office.dev/schema/presentation/v1.0.0",title:"JSON to PPTX Presentation Definition",description:"Schema for JSON to PPTX JSON presentation definitions"}),i={...n,default:{name:"pptx",props:{title:"New Presentation"},children:[]},properties:{...n.properties,children:{...((r=n.properties)==null?void 0:r.children)||{},description:'Array of slide components. Type "name" to see available component types.',markdownDescription:"Array of presentation components. Available types:\n- `pptx` - Main container\n- `slide` - Slide container\n- `text` - Text element\n- `image` - Image element\n- `shape` - Shape element\n- `table` - Data table\n- `highcharts` - Highcharts chart"}},definitions:{...n.definitions||{}}};return lo(i),i}function Yy(){return qe==="docx"?Xy():Vy()}function Zy(){const n=JSON.parse(JSON.stringify(qe==="docx"?Fy:Ps));fr(n,!1);const i=qe==="docx"?"DOCX":"PPTX";return{...n,$schema:"https://json-schema.org/draft-07/schema#",$id:"https://json-to-office.dev/schemas/theme/v1.0.0",title:`JSON to ${i} Theme`,description:`Theme definition for JSON to ${i} ${qe==="docx"?"documents":"presentations"}`}}function Qy(e=qe==="docx"?["*.docx.json"]:["*.pptx.json"]){return{uri:"https://json-to-office.dev/schema/report/v1.0.0",fileMatch:e,schema:Yy()}}function rc(e=[`*.${qe}.theme.json`]){return{uri:"https://json-to-office.dev/schemas/theme/v1.0.0",fileMatch:e,schema:Zy()}}function lo(e){var n,i,r;if(!(typeof e!="object"||e===null)){if(typeof((i=(n=e.properties)==null?void 0:n.name)==null?void 0:i.const)=="string"){const o=e.properties.name.const;e.description||(e.description=e0(o)),(r=e.properties)!=null&&r.props&&t0(o,e.properties.props)}Object.values(e).forEach(o=>{typeof o=="object"&&o!==null&&lo(o)})}}function e0(e){return{docx:"Main document container - defines the overall document structure.",section:"Section container - groups content within a document section.",heading:"Heading element - displays headings with level and formatting.",paragraph:"Paragraph element - displays text with formatting.",columns:"Column layout - arranges content in multiple columns.",list:"List element - displays ordered or unordered lists.",statistic:"Statistic element - displays key metrics.",highcharts:"Highcharts chart - renders a chart from Highcharts options.",toc:"Table of contents - generates a document TOC.","text-box":"Text box element - a positioned box with text content.",pptx:"Main presentation container - defines the overall presentation structure.",slide:"Slide container - groups content elements within a single slide.",text:"Text element - displays text with formatting and positioning.",shape:"Shape element - geometric shapes with optional text and styling.",image:"Image element - displays images with sizing and positioning.",table:"Table element - displays tabular data with headers and rows.",custom:"Custom component - user-defined component type for specialized content."}[e]||`${e} component`}function t0(e,n){if(!n.properties)return;const r={text:{text:"The text content to display",fontSize:"Font size in points",bold:"Whether to bold the text",color:"Text color as hex string",align:"Text alignment"},shape:{type:"Shape type (rect, ellipse, etc.)",text:"Text content inside the shape",fill:"Fill color"},heading:{text:"The heading text",level:"Heading level (1-6)"},paragraph:{text:"The paragraph text content"},image:{path:"Path or URL to the image",w:"Image width in inches",h:"Image height in inches"},table:{rows:"Array of rows, each containing cell values",colW:"Column widths"}}[e];r&&Object.entries(r).forEach(([o,a])=>{n.properties[o]&&(n.properties[o].description=a)})}function fr(e,n=!0){if(!(typeof e!="object"||e===null)){if(e.$id&&/^T\d+$/.test(e.$id)&&delete e.$id,e.$ref&&/^T\d+$/.test(e.$ref)&&(n?e.$ref="#/definitions/ComponentDefinition":delete e.$ref),Array.isArray(e)){e.forEach(i=>fr(i,n));return}Object.keys(e).forEach(i=>{typeof e[i]=="object"&&e[i]!==null&&fr(e[i],n)})}}const Ce="/api",kt=`${Ce}/${qe}`,k0={discovery:{all:`${Ce}/discovery/all`,plugins:`${Ce}/discovery/plugins`,documents:`${Ce}/discovery/documents`,themes:`${Ce}/discovery/themes`,schemas:{document:`${Ce}/discovery/schemas/document`,theme:`${Ce}/discovery/schemas/theme`}},generate:`${kt}/generate`,validate:`${kt}/validate`,diff:`${kt}/diff`,fonts:{catalog:`${Ce}/fonts/catalog`,materialize:`${Ce}/fonts/materialize`},preview:{libreoffice:`${kt}/preview/libreoffice`,libreofficeFromJson:`${kt}/preview/libreoffice-from-json`},cacheStats:`${kt}/cache-stats`};class n0{constructor(){ft(this,"documentSchemaCache",null);ft(this,"themeSchemaCache",null);ft(this,"pluginSchemaCache",new Map);ft(this,"cacheTimestamp",{});ft(this,"CACHE_DURATION",5*60*1e3);ft(this,"MAX_PLUGIN_CACHE",10)}async fetchDocumentSchema(n){const i=n?`document-${[...n].sort().join(",")}`:"document";if(n){const r=this.pluginSchemaCache.get(i);if(r&&this.isCacheValid(i))return r}else if(this.documentSchemaCache&&this.isCacheValid("document"))return this.documentSchemaCache;try{let r=`${Ce}/discovery/schemas/document`;if(n){const s=new URLSearchParams;s.append("plugins",n.join(",")),r=`${r}?${s.toString()}`}const o=await fetch(r);if(!o.ok)throw new Error(`Failed to fetch document schema: ${o.statusText}`);const a=await o.json();if(!a.success||!a.data)throw new Error(a.error||"Failed to fetch document schema");if(n){if(this.pluginSchemaCache.size>=this.MAX_PLUGIN_CACHE){const s=this.pluginSchemaCache.keys().next().value;s&&this.pluginSchemaCache.delete(s)}this.pluginSchemaCache.set(i,a.data)}else this.documentSchemaCache=a.data;return this.cacheTimestamp[i]=Date.now(),a.data}catch(r){throw console.error("Error fetching document schema:",r),r}}async fetchThemeSchema(){if(this.themeSchemaCache&&this.isCacheValid("theme"))return this.themeSchemaCache;try{const n=await fetch(`${Ce}/discovery/schemas/theme`);if(!n.ok)throw new Error(`Failed to fetch theme schema: ${n.statusText}`);const i=await n.json();if(!i.success||!i.data)throw new Error(i.error||"Failed to fetch theme schema");return this.themeSchemaCache=i.data,this.cacheTimestamp.theme=Date.now(),i.data}catch(n){throw console.error("Error fetching theme schema:",n),n}}async getSchemaForActiveTab(n){return n==="theme"?this.fetchThemeSchema():this.fetchDocumentSchema()}clearCache(){this.documentSchemaCache=null,this.themeSchemaCache=null,this.pluginSchemaCache.clear(),this.cacheTimestamp={}}clearPluginSchemaCache(){this.pluginSchemaCache.clear(),Object.keys(this.cacheTimestamp).forEach(n=>{n.startsWith("document-")&&delete this.cacheTimestamp[n]})}isCacheValid(n){const i=this.cacheTimestamp[n];return i?Date.now()-i<this.CACHE_DURATION:!1}formatSchemaForDisplay(n){return JSON.stringify(n,null,2)}getSchemaMetadata(n){return{title:n.title,description:n.description,version:n.version||n.$id,$schema:n.$schema}}}const Eo=new n0,i0=new Set(["family","fontFace","titleFontFace","legendFontFace","dataLabelFontFace","catAxisLabelFontFace","valAxisLabelFontFace"]),r0=new Set(["heading","body"]);function o0(e){const n=[],i=[{kind:"object"}];let r=0;const o=[],a=h=>h===" "||h===" "||h===`
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/HomePage-ClplX49_.js","assets/react-vendor-CTFDOf2G.js","assets/radix-ui-Bq-7y_Sq.js","assets/ui-vendor-DyQLnWB8.js","assets/editor-refs-store-bPpACPf6.js","assets/state-vendor-ByFYl9bq.js","assets/MonacoPluginProvider-DhTtNIjM.js","assets/monaco-editor-BcgxPCqT.js","assets/query-vendor-Df8-oete.js","assets/JsonEditorPage-VBBzZ5AM.js","assets/NotFoundPage-SV9cseZ6.js"])))=>i.map(i=>d[i]);
2
+ var cc=Object.defineProperty;var lc=(e,n,i)=>n in e?cc(e,n,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[n]=i;var ft=(e,n,i)=>lc(e,typeof n!="symbol"?n+"":n,i);import{r as Q,j as w,O as dc,u as pc,B as uc,e as mc}from"./react-vendor-CTFDOf2G.js";import{Q as fc,a as gc}from"./query-vendor-Df8-oete.js";import{P as hc,C as Ho,A as bc,a as Oc,R as yc,T as xc}from"./radix-ui-Bq-7y_Sq.js";import{c as Sc}from"./ui-vendor-DyQLnWB8.js";import{loader as wc}from"./monaco-editor-BcgxPCqT.js";import{c as Lc}from"./state-vendor-ByFYl9bq.js";(function(){const n=document.createElement("link").relList;if(n&&n.supports&&n.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))r(o);new MutationObserver(o=>{for(const a of o)if(a.type==="childList")for(const s of a.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&r(s)}).observe(document,{childList:!0,subtree:!0});function i(o){const a={};return o.integrity&&(a.integrity=o.integrity),o.referrerPolicy&&(a.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?a.credentials="include":o.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function r(o){if(o.ep)return;o.ep=!0;const a=i(o);fetch(o.href,a)}})();const Pc="modulepreload",Ic=function(e){return"/"+e},bo={},hr=function(n,i,r){let o=Promise.resolve();if(i&&i.length>0){document.getElementsByTagName("link");const s=document.querySelector("meta[property=csp-nonce]"),l=(s==null?void 0:s.nonce)||(s==null?void 0:s.getAttribute("nonce"));o=Promise.allSettled(i.map(c=>{if(c=Ic(c),c in bo)return;bo[c]=!0;const m=c.endsWith(".css"),x=m?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${x}`))return;const L=document.createElement("link");if(L.rel=m?"stylesheet":Pc,m||(L.as="script"),L.crossOrigin="",L.href=c,l&&L.setAttribute("nonce",l),document.head.appendChild(L),m)return new Promise((I,A)=>{L.addEventListener("load",I),L.addEventListener("error",()=>A(new Error(`Unable to preload CSS for ${c}`)))})}))}function a(s){const l=new Event("vite:preloadError",{cancelable:!0});if(l.payload=s,window.dispatchEvent(l),!l.defaultPrevented)throw s}return o.then(s=>{for(const l of s||[])l.status==="rejected"&&a(l.reason);return n().catch(a)})},Fc={theme:"system",setTheme:()=>null,resolvedTheme:"light"},Go=Q.createContext(Fc);function $c({children:e,defaultTheme:n="system",storageKey:i="vite-ui-theme",...r}){const[o,a]=Q.useState(()=>localStorage.getItem(i)||n),s=o==="system"?window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light":o;Q.useEffect(()=>{const c=window.document.documentElement;if(c.classList.remove("light","dark"),o==="system"){const m=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";c.classList.add(m);return}c.classList.add(o)},[o]);const l={theme:o,resolvedTheme:s,setTheme:c=>{localStorage.setItem(i,c),a(c)}};return w.jsx(Go.Provider,{...r,value:l,children:e})}const I0=()=>{const e=Q.useContext(Go);if(e===void 0)throw new Error("useTheme must be used within a ThemeProvider");return e},br="-",Nc=e=>{const n=Tc(e),{conflictingClassGroups:i,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:s=>{const l=s.split(br);return l[0]===""&&l.length!==1&&l.shift(),Wo(l,n)||Cc(s)},getConflictingClassGroupIds:(s,l)=>{const c=i[s]||[];return l&&r[s]?[...c,...r[s]]:c}}},Wo=(e,n)=>{var s;if(e.length===0)return n.classGroupId;const i=e[0],r=n.nextPart.get(i),o=r?Wo(e.slice(1),r):void 0;if(o)return o;if(n.validators.length===0)return;const a=e.join(br);return(s=n.validators.find(({validator:l})=>l(a)))==null?void 0:s.classGroupId},Oo=/^\[(.+)\]$/,Cc=e=>{if(Oo.test(e)){const n=Oo.exec(e)[1],i=n==null?void 0:n.substring(0,n.indexOf(":"));if(i)return"arbitrary.."+i}},Tc=e=>{const{theme:n,classGroups:i}=e,r={nextPart:new Map,validators:[]};for(const o in i)er(i[o],r,o,n);return r},er=(e,n,i,r)=>{e.forEach(o=>{if(typeof o=="string"){const a=o===""?n:yo(n,o);a.classGroupId=i;return}if(typeof o=="function"){if(Ac(o)){er(o(r),n,i,r);return}n.validators.push({validator:o,classGroupId:i});return}Object.entries(o).forEach(([a,s])=>{er(s,yo(n,a),i,r)})})},yo=(e,n)=>{let i=e;return n.split(br).forEach(r=>{i.nextPart.has(r)||i.nextPart.set(r,{nextPart:new Map,validators:[]}),i=i.nextPart.get(r)}),i},Ac=e=>e.isThemeGetter,jc=e=>{if(e<1)return{get:()=>{},set:()=>{}};let n=0,i=new Map,r=new Map;const o=(a,s)=>{i.set(a,s),n++,n>e&&(n=0,r=i,i=new Map)};return{get(a){let s=i.get(a);if(s!==void 0)return s;if((s=r.get(a))!==void 0)return o(a,s),s},set(a,s){i.has(a)?i.set(a,s):o(a,s)}}},tr="!",nr=":",Rc=nr.length,vc=e=>{const{prefix:n,experimentalParseClassName:i}=e;let r=o=>{const a=[];let s=0,l=0,c=0,m;for(let h=0;h<o.length;h++){let u=o[h];if(s===0&&l===0){if(u===nr){a.push(o.slice(c,h)),c=h+Rc;continue}if(u==="/"){m=h;continue}}u==="["?s++:u==="]"?s--:u==="("?l++:u===")"&&l--}const x=a.length===0?o:o.substring(c),L=Uc(x),I=L!==x,A=m&&m>c?m-c:void 0;return{modifiers:a,hasImportantModifier:I,baseClassName:L,maybePostfixModifierPosition:A}};if(n){const o=n+nr,a=r;r=s=>s.startsWith(o)?a(s.substring(o.length)):{isExternal:!0,modifiers:[],hasImportantModifier:!1,baseClassName:s,maybePostfixModifierPosition:void 0}}if(i){const o=r;r=a=>i({className:a,parseClassName:o})}return r},Uc=e=>e.endsWith(tr)?e.substring(0,e.length-1):e.startsWith(tr)?e.substring(1):e,Mc=e=>{const n=Object.fromEntries(e.orderSensitiveModifiers.map(r=>[r,!0]));return r=>{if(r.length<=1)return r;const o=[];let a=[];return r.forEach(s=>{s[0]==="["||n[s]?(o.push(...a.sort(),s),a=[]):a.push(s)}),o.push(...a.sort()),o}},kc=e=>({cache:jc(e.cacheSize),parseClassName:vc(e),sortModifiers:Mc(e),...Nc(e)}),Bc=/\s+/,Dc=(e,n)=>{const{parseClassName:i,getClassGroupId:r,getConflictingClassGroupIds:o,sortModifiers:a}=n,s=[],l=e.trim().split(Bc);let c="";for(let m=l.length-1;m>=0;m-=1){const x=l[m],{isExternal:L,modifiers:I,hasImportantModifier:A,baseClassName:h,maybePostfixModifierPosition:u}=i(x);if(L){c=x+(c.length>0?" "+c:c);continue}let P=!!u,j=r(P?h.substring(0,u):h);if(!j){if(!P){c=x+(c.length>0?" "+c:c);continue}if(j=r(h),!j){c=x+(c.length>0?" "+c:c);continue}P=!1}const re=a(I).join(":"),Ze=A?re+tr:re,Qe=Ze+j;if(s.includes(Qe))continue;s.push(Qe);const E=o(j,P);for(let oe=0;oe<E.length;++oe){const ut=E[oe];s.push(Ze+ut)}c=x+(c.length>0?" "+c:c)}return c};function Ec(){let e=0,n,i,r="";for(;e<arguments.length;)(n=arguments[e++])&&(i=qo(n))&&(r&&(r+=" "),r+=i);return r}const qo=e=>{if(typeof e=="string")return e;let n,i="";for(let r=0;r<e.length;r++)e[r]&&(n=qo(e[r]))&&(i&&(i+=" "),i+=n);return i};function zc(e,...n){let i,r,o,a=s;function s(c){const m=n.reduce((x,L)=>L(x),e());return i=kc(m),r=i.cache.get,o=i.cache.set,a=l,l(c)}function l(c){const m=r(c);if(m)return m;const x=Dc(c,i);return o(c,x),x}return function(){return a(Ec.apply(null,arguments))}}const J=e=>{const n=i=>i[e]||[];return n.isThemeGetter=!0,n},Jo=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Xo=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Kc=/^\d+\/\d+$/,_c=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Hc=/\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$/,Gc=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/,Wc=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,qc=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,jt=e=>Kc.test(e),N=e=>!!e&&!Number.isNaN(Number(e)),gt=e=>!!e&&Number.isInteger(Number(e)),xo=e=>e.endsWith("%")&&N(e.slice(0,-1)),et=e=>_c.test(e),Jc=()=>!0,Xc=e=>Hc.test(e)&&!Gc.test(e),Or=()=>!1,Vc=e=>Wc.test(e),Yc=e=>qc.test(e),Zc=e=>!b(e)&&!O(e),Qc=e=>Wt(e,Zo,Or),b=e=>Jo.test(e),ht=e=>Wt(e,Qo,Xc),Hi=e=>Wt(e,dl,N),el=e=>Wt(e,Vo,Or),tl=e=>Wt(e,Yo,Yc),nl=e=>Wt(e,Or,Vc),O=e=>Xo.test(e),Bn=e=>qt(e,Qo),il=e=>qt(e,pl),rl=e=>qt(e,Vo),ol=e=>qt(e,Zo),al=e=>qt(e,Yo),sl=e=>qt(e,ul,!0),Wt=(e,n,i)=>{const r=Jo.exec(e);return r?r[1]?n(r[1]):i(r[2]):!1},qt=(e,n,i=!1)=>{const r=Xo.exec(e);return r?r[1]?n(r[1]):i:!1},Vo=e=>e==="position",cl=new Set(["image","url"]),Yo=e=>cl.has(e),ll=new Set(["length","size","percentage"]),Zo=e=>ll.has(e),Qo=e=>e==="length",dl=e=>e==="number",pl=e=>e==="family-name",ul=e=>e==="shadow",ml=()=>{const e=J("color"),n=J("font"),i=J("text"),r=J("font-weight"),o=J("tracking"),a=J("leading"),s=J("breakpoint"),l=J("container"),c=J("spacing"),m=J("radius"),x=J("shadow"),L=J("inset-shadow"),I=J("drop-shadow"),A=J("blur"),h=J("perspective"),u=J("aspect"),P=J("ease"),j=J("animate"),re=()=>["auto","avoid","all","avoid-page","page","left","right","column"],Ze=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],Qe=()=>["auto","hidden","clip","visible","scroll"],E=()=>["auto","contain","none"],oe=()=>[jt,"px","full","auto",O,b,c],ut=()=>[gt,"none","subgrid",O,b],jn=()=>["auto",{span:["full",gt,O,b]},O,b],Rn=()=>[gt,"auto",O,b],mo=()=>["auto","min","max","fr",O,b],Ei=()=>[O,b,c],zi=()=>["start","end","center","between","around","evenly","stretch","baseline"],At=()=>["start","end","center","stretch"],M=()=>[O,b,c],ze=()=>["px",...M()],Ke=()=>["px","auto",...M()],mt=()=>[jt,"auto","px","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",O,b,c],k=()=>[e,O,b],Ki=()=>[xo,ht],ce=()=>["","none","full",m,O,b],ge=()=>["",N,Bn,ht],vn=()=>["solid","dashed","dotted","double"],fo=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],go=()=>["","none",A,O,b],ho=()=>["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",O,b],Un=()=>["none",N,O,b],Mn=()=>["none",N,O,b],_i=()=>[N,O,b],kn=()=>[jt,"full","px",O,b,c];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[et],breakpoint:[et],color:[Jc],container:[et],"drop-shadow":[et],ease:["in","out","in-out"],font:[Zc],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[et],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[et],shadow:[et],spacing:[N],text:[et],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",jt,b,O,u]}],container:["container"],columns:[{columns:[N,b,O,l]}],"break-after":[{"break-after":re()}],"break-before":[{"break-before":re()}],"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:[...Ze(),b,O]}],overflow:[{overflow:Qe()}],"overflow-x":[{"overflow-x":Qe()}],"overflow-y":[{"overflow-y":Qe()}],overscroll:[{overscroll:E()}],"overscroll-x":[{"overscroll-x":E()}],"overscroll-y":[{"overscroll-y":E()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:oe()}],"inset-x":[{"inset-x":oe()}],"inset-y":[{"inset-y":oe()}],start:[{start:oe()}],end:[{end:oe()}],top:[{top:oe()}],right:[{right:oe()}],bottom:[{bottom:oe()}],left:[{left:oe()}],visibility:["visible","invisible","collapse"],z:[{z:[gt,"auto",O,b]}],basis:[{basis:[jt,"full","auto",O,b,l,c]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[N,jt,"auto","initial","none",b]}],grow:[{grow:["",N,O,b]}],shrink:[{shrink:["",N,O,b]}],order:[{order:[gt,"first","last","none",O,b]}],"grid-cols":[{"grid-cols":ut()}],"col-start-end":[{col:jn()}],"col-start":[{"col-start":Rn()}],"col-end":[{"col-end":Rn()}],"grid-rows":[{"grid-rows":ut()}],"row-start-end":[{row:jn()}],"row-start":[{"row-start":Rn()}],"row-end":[{"row-end":Rn()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":mo()}],"auto-rows":[{"auto-rows":mo()}],gap:[{gap:Ei()}],"gap-x":[{"gap-x":Ei()}],"gap-y":[{"gap-y":Ei()}],"justify-content":[{justify:[...zi(),"normal"]}],"justify-items":[{"justify-items":[...At(),"normal"]}],"justify-self":[{"justify-self":["auto",...At()]}],"align-content":[{content:["normal",...zi()]}],"align-items":[{items:[...At(),"baseline"]}],"align-self":[{self:["auto",...At(),"baseline"]}],"place-content":[{"place-content":zi()}],"place-items":[{"place-items":[...At(),"baseline"]}],"place-self":[{"place-self":["auto",...At()]}],p:[{p:ze()}],px:[{px:ze()}],py:[{py:ze()}],ps:[{ps:ze()}],pe:[{pe:ze()}],pt:[{pt:ze()}],pr:[{pr:ze()}],pb:[{pb:ze()}],pl:[{pl:ze()}],m:[{m:Ke()}],mx:[{mx:Ke()}],my:[{my:Ke()}],ms:[{ms:Ke()}],me:[{me:Ke()}],mt:[{mt:Ke()}],mr:[{mr:Ke()}],mb:[{mb:Ke()}],ml:[{ml:Ke()}],"space-x":[{"space-x":M()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":M()}],"space-y-reverse":["space-y-reverse"],size:[{size:mt()}],w:[{w:[l,"screen",...mt()]}],"min-w":[{"min-w":[l,"screen","none",...mt()]}],"max-w":[{"max-w":[l,"screen","none","prose",{screen:[s]},...mt()]}],h:[{h:["screen",...mt()]}],"min-h":[{"min-h":["screen","none",...mt()]}],"max-h":[{"max-h":["screen",...mt()]}],"font-size":[{text:["base",i,Bn,ht]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[r,O,Hi]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",xo,b]}],"font-family":[{font:[il,b,n]}],"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:[o,O,b]}],"line-clamp":[{"line-clamp":[N,"none",O,Hi]}],leading:[{leading:[O,b,a,c]}],"list-image":[{"list-image":["none",O,b]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",O,b]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:k()}],"text-color":[{text:k()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...vn(),"wavy"]}],"text-decoration-thickness":[{decoration:[N,"from-font","auto",O,ht]}],"text-decoration-color":[{decoration:k()}],"underline-offset":[{"underline-offset":[N,"auto",O,b]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:["px",...M()]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",O,b]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",O,b]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...Ze(),rl,el]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","space","round"]}]}],"bg-size":[{bg:["auto","cover","contain",ol,Qc]}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},gt,O,b],radial:["",O,b],conic:[gt,O,b]},al,tl]}],"bg-color":[{bg:k()}],"gradient-from-pos":[{from:Ki()}],"gradient-via-pos":[{via:Ki()}],"gradient-to-pos":[{to:Ki()}],"gradient-from":[{from:k()}],"gradient-via":[{via:k()}],"gradient-to":[{to:k()}],rounded:[{rounded:ce()}],"rounded-s":[{"rounded-s":ce()}],"rounded-e":[{"rounded-e":ce()}],"rounded-t":[{"rounded-t":ce()}],"rounded-r":[{"rounded-r":ce()}],"rounded-b":[{"rounded-b":ce()}],"rounded-l":[{"rounded-l":ce()}],"rounded-ss":[{"rounded-ss":ce()}],"rounded-se":[{"rounded-se":ce()}],"rounded-ee":[{"rounded-ee":ce()}],"rounded-es":[{"rounded-es":ce()}],"rounded-tl":[{"rounded-tl":ce()}],"rounded-tr":[{"rounded-tr":ce()}],"rounded-br":[{"rounded-br":ce()}],"rounded-bl":[{"rounded-bl":ce()}],"border-w":[{border:ge()}],"border-w-x":[{"border-x":ge()}],"border-w-y":[{"border-y":ge()}],"border-w-s":[{"border-s":ge()}],"border-w-e":[{"border-e":ge()}],"border-w-t":[{"border-t":ge()}],"border-w-r":[{"border-r":ge()}],"border-w-b":[{"border-b":ge()}],"border-w-l":[{"border-l":ge()}],"divide-x":[{"divide-x":ge()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":ge()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...vn(),"hidden","none"]}],"divide-style":[{divide:[...vn(),"hidden","none"]}],"border-color":[{border:k()}],"border-color-x":[{"border-x":k()}],"border-color-y":[{"border-y":k()}],"border-color-s":[{"border-s":k()}],"border-color-e":[{"border-e":k()}],"border-color-t":[{"border-t":k()}],"border-color-r":[{"border-r":k()}],"border-color-b":[{"border-b":k()}],"border-color-l":[{"border-l":k()}],"divide-color":[{divide:k()}],"outline-style":[{outline:[...vn(),"none","hidden"]}],"outline-offset":[{"outline-offset":[N,O,b]}],"outline-w":[{outline:["",N,Bn,ht]}],"outline-color":[{outline:[e]}],shadow:[{shadow:["","none",x,sl,nl]}],"shadow-color":[{shadow:k()}],"inset-shadow":[{"inset-shadow":["none",O,b,L]}],"inset-shadow-color":[{"inset-shadow":k()}],"ring-w":[{ring:ge()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:k()}],"ring-offset-w":[{"ring-offset":[N,ht]}],"ring-offset-color":[{"ring-offset":k()}],"inset-ring-w":[{"inset-ring":ge()}],"inset-ring-color":[{"inset-ring":k()}],opacity:[{opacity:[N,O,b]}],"mix-blend":[{"mix-blend":[...fo(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":fo()}],filter:[{filter:["","none",O,b]}],blur:[{blur:go()}],brightness:[{brightness:[N,O,b]}],contrast:[{contrast:[N,O,b]}],"drop-shadow":[{"drop-shadow":["","none",I,O,b]}],grayscale:[{grayscale:["",N,O,b]}],"hue-rotate":[{"hue-rotate":[N,O,b]}],invert:[{invert:["",N,O,b]}],saturate:[{saturate:[N,O,b]}],sepia:[{sepia:["",N,O,b]}],"backdrop-filter":[{"backdrop-filter":["","none",O,b]}],"backdrop-blur":[{"backdrop-blur":go()}],"backdrop-brightness":[{"backdrop-brightness":[N,O,b]}],"backdrop-contrast":[{"backdrop-contrast":[N,O,b]}],"backdrop-grayscale":[{"backdrop-grayscale":["",N,O,b]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[N,O,b]}],"backdrop-invert":[{"backdrop-invert":["",N,O,b]}],"backdrop-opacity":[{"backdrop-opacity":[N,O,b]}],"backdrop-saturate":[{"backdrop-saturate":[N,O,b]}],"backdrop-sepia":[{"backdrop-sepia":["",N,O,b]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":M()}],"border-spacing-x":[{"border-spacing-x":M()}],"border-spacing-y":[{"border-spacing-y":M()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",O,b]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[N,"initial",O,b]}],ease:[{ease:["linear","initial",P,O,b]}],delay:[{delay:[N,O,b]}],animate:[{animate:["none",j,O,b]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[h,O,b]}],"perspective-origin":[{"perspective-origin":ho()}],rotate:[{rotate:Un()}],"rotate-x":[{"rotate-x":Un()}],"rotate-y":[{"rotate-y":Un()}],"rotate-z":[{"rotate-z":Un()}],scale:[{scale:Mn()}],"scale-x":[{"scale-x":Mn()}],"scale-y":[{"scale-y":Mn()}],"scale-z":[{"scale-z":Mn()}],"scale-3d":["scale-3d"],skew:[{skew:_i()}],"skew-x":[{"skew-x":_i()}],"skew-y":[{"skew-y":_i()}],transform:[{transform:[O,b,"","none","gpu","cpu"]}],"transform-origin":[{origin:ho()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:kn()}],"translate-x":[{"translate-x":kn()}],"translate-y":[{"translate-y":kn()}],"translate-z":[{"translate-z":kn()}],"translate-none":["translate-none"],accent:[{accent:k()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:k()}],"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",O,b]}],"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":M()}],"scroll-mx":[{"scroll-mx":M()}],"scroll-my":[{"scroll-my":M()}],"scroll-ms":[{"scroll-ms":M()}],"scroll-me":[{"scroll-me":M()}],"scroll-mt":[{"scroll-mt":M()}],"scroll-mr":[{"scroll-mr":M()}],"scroll-mb":[{"scroll-mb":M()}],"scroll-ml":[{"scroll-ml":M()}],"scroll-p":[{"scroll-p":M()}],"scroll-px":[{"scroll-px":M()}],"scroll-py":[{"scroll-py":M()}],"scroll-ps":[{"scroll-ps":M()}],"scroll-pe":[{"scroll-pe":M()}],"scroll-pt":[{"scroll-pt":M()}],"scroll-pr":[{"scroll-pr":M()}],"scroll-pb":[{"scroll-pb":M()}],"scroll-pl":[{"scroll-pl":M()}],"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",O,b]}],fill:[{fill:["none",...k()]}],"stroke-w":[{stroke:[N,Bn,ht,Hi]}],stroke:[{stroke:["none",...k()]}],"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-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-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:["before","after","placeholder","file","marker","selection","first-line","first-letter","backdrop","*","**"]}},fl=zc(ml);function it(...e){return fl(Sc(e))}const gl=Oc,F0=yc,$0=xc,hl=Q.forwardRef(({className:e,sideOffset:n=4,children:i,...r},o)=>w.jsx(hc,{children:w.jsxs(Ho,{ref:o,"data-slot":"tooltip-content",sideOffset:n,className:it("bg-primary text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit text-balance rounded-md px-3 py-1.5 text-xs",e),...r,children:[i,w.jsx(bc,{className:"z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-primary fill-primary"})]})}));hl.displayName=Ho.displayName;const ea=Q.forwardRef(({className:e,variant:n="default",title:i,description:r,action:o,open:a,onOpenChange:s,...l},c)=>w.jsx("div",{ref:c,className:it("group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-lg border p-6 pr-8 shadow-lg transition-all",n==="default"&&"border bg-background text-foreground",n==="destructive"&&"destructive group border-destructive bg-destructive text-destructive-foreground",e),...l}));ea.displayName="Toast";const bl=Q.forwardRef(({className:e,...n},i)=>w.jsx("button",{ref:i,className:it("inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium ring-offset-background transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive",e),...n}));bl.displayName="ToastAction";const ta=Q.forwardRef(({className:e,...n},i)=>w.jsx("button",{ref:i,type:"button",className:it("absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-destructive-foreground/70 group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive-foreground/40",e),"toast-close":"",...n,children:w.jsxs("svg",{className:"h-4 w-4",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[w.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),w.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})}));ta.displayName="ToastClose";const na=Q.forwardRef(({className:e,...n},i)=>w.jsx("div",{ref:i,className:it("text-sm font-semibold",e),...n}));na.displayName="ToastTitle";const ia=Q.forwardRef(({className:e,...n},i)=>w.jsx("div",{ref:i,className:it("text-sm opacity-90",e),...n}));ia.displayName="ToastDescription";const ra=Q.forwardRef(({className:e,...n},i)=>w.jsx("ol",{ref:i,className:it("fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]",e),...n}));ra.displayName="ToastViewport";const Ol=1,oa=5e3;let Gi=0;function yl(){return Gi=(Gi+1)%Number.MAX_SAFE_INTEGER,Gi.toString()}const Wi=new Map,So=e=>{if(Wi.has(e))return;const n=setTimeout(()=>{Wi.delete(e),cn({type:"REMOVE_TOAST",toastId:e})},oa);Wi.set(e,n)},xl=(e,n)=>{switch(n.type){case"ADD_TOAST":return{...e,toasts:[n.toast,...e.toasts].slice(0,Ol)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(i=>i.id===n.toast.id?{...i,...n.toast}:i)};case"DISMISS_TOAST":{const{toastId:i}=n;return i?So(i):e.toasts.forEach(r=>{So(r.id)}),{...e,toasts:e.toasts.map(r=>r.id===i||i===void 0?{...r,open:!1}:r)}}case"REMOVE_TOAST":return n.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(i=>i.id!==n.toastId)}}},_n=[];let Hn={toasts:[]};function cn(e){Hn=xl(Hn,e),_n.forEach(n=>{n(Hn)})}function Sl({...e}){const n=yl(),i=o=>cn({type:"UPDATE_TOAST",toast:{...o,id:n}}),r=()=>cn({type:"DISMISS_TOAST",toastId:n});return cn({type:"ADD_TOAST",toast:{...e,id:n,open:!0,onOpenChange:o=>{o||r()}}}),setTimeout(()=>{r()},oa),{id:n,dismiss:r,update:i}}function wl(){const[e,n]=Q.useState(Hn);return Q.useEffect(()=>(_n.push(n),()=>{const i=_n.indexOf(n);i>-1&&_n.splice(i,1)}),[e]),{...e,toast:Sl,dismiss:i=>cn({type:"DISMISS_TOAST",toastId:i})}}function Ll(){const{toasts:e,dismiss:n}=wl();return w.jsx(ra,{children:e.map(function({id:i,title:r,description:o,action:a,open:s,...l}){return s===!1?null:w.jsxs(ea,{...l,children:[w.jsxs("div",{className:"grid gap-1",children:[r&&w.jsx(na,{children:r}),o&&w.jsx(ia,{children:o})]}),a,w.jsx(ta,{onClick:c=>{c.preventDefault(),c.stopPropagation(),n(i)}})]},i)})})}function Pl(){return w.jsx($c,{defaultTheme:"system",storageKey:"vite-ui-theme",children:w.jsxs(gl,{delayDuration:300,children:[w.jsx("div",{className:"min-h-screen bg-background font-sans antialiased",children:w.jsx(dc,{})}),w.jsx(Ll,{})]})})}function Il({className:e,size:n="md",variant:i="primary",...r}){const o={sm:"h-4 w-4",md:"h-6 w-6",lg:"h-8 w-8"},a={primary:"border-primary",secondary:"border-secondary",muted:"border-muted-foreground"};return w.jsx("div",{className:it("animate-spin rounded-full border-2 border-solid",o[n],a[i],e),style:{borderRightColor:"transparent"},...r})}const Fl=Q.lazy(()=>hr(()=>import("./HomePage-ClplX49_.js").then(e=>e.H),__vite__mapDeps([0,1,2,3,4,5,6,7,8])).then(e=>({default:e.HomePage}))),$l=Q.lazy(()=>hr(()=>import("./JsonEditorPage-VBBzZ5AM.js"),__vite__mapDeps([9,1,6,5,7,8,2,3])).then(e=>({default:e.JsonEditorPage}))),Nl=Q.lazy(()=>hr(()=>import("./NotFoundPage-SV9cseZ6.js"),__vite__mapDeps([10,1])).then(e=>({default:e.NotFoundPage}))),qi=({children:e})=>w.jsx(Q.Suspense,{fallback:w.jsx("div",{className:"flex items-center justify-center h-screen",children:w.jsx(Il,{className:"w-8 h-8"})}),children:e}),Cl=[{path:"/",element:w.jsx(Pl,{}),children:[{index:!0,element:w.jsx(qi,{children:w.jsx(Fl,{})})},{path:"json-editor",element:w.jsx(qi,{children:w.jsx($l,{})})}]},{path:"*",element:w.jsx(qi,{children:w.jsx(Nl,{})})}];function Tl(){return pc(Cl)}const Al=new fc({defaultOptions:{queries:{staleTime:1e3*60*5,retry:1}}});function jl(){return w.jsx(gc,{client:Al,children:w.jsx(uc,{children:w.jsx(Tl,{})})})}function Rl(e){return H(e)&&!fe(e)&&!On(e)&&Symbol.asyncIterator in e}function fe(e){return Array.isArray(e)}function aa(e){return typeof e=="bigint"}function bn(e){return typeof e=="boolean"}function yr(e){return e instanceof globalThis.Date}function vl(e){return typeof e=="function"}function Ul(e){return H(e)&&!fe(e)&&!On(e)&&Symbol.iterator in e}function Ml(e){return e===null}function Be(e){return typeof e=="number"}function H(e){return typeof e=="object"&&e!==null}function sa(e){return e instanceof globalThis.RegExp}function z(e){return typeof e=="string"}function kl(e){return typeof e=="symbol"}function On(e){return e instanceof globalThis.Uint8Array}function K(e){return e===void 0}function Bl(e){return e.map(n=>Jn(n))}function Dl(e){return new Date(e.getTime())}function El(e){return new Uint8Array(e)}function zl(e){return new RegExp(e.source,e.flags)}function Kl(e){const n={};for(const i of Object.getOwnPropertyNames(e))n[i]=Jn(e[i]);for(const i of Object.getOwnPropertySymbols(e))n[i]=Jn(e[i]);return n}function Jn(e){return fe(e)?Bl(e):yr(e)?Dl(e):On(e)?El(e):sa(e)?zl(e):H(e)?Kl(e):e}function he(e){return Jn(e)}function xr(e,n){return he(n===void 0?e:{...n,...e})}function ca(e){return De(e)&&globalThis.Symbol.asyncIterator in e}function la(e){return De(e)&&globalThis.Symbol.iterator in e}function da(e){return e instanceof globalThis.Promise}function yn(e){return e instanceof Date&&globalThis.Number.isFinite(e.getTime())}function _l(e){return e instanceof globalThis.Map}function Hl(e){return e instanceof globalThis.Set}function Gl(e){return globalThis.ArrayBuffer.isView(e)}function Sr(e){return e instanceof globalThis.Uint8Array}function Wl(e,n){return n in e}function De(e){return e!==null&&typeof e=="object"}function Ee(e){return globalThis.Array.isArray(e)&&!globalThis.ArrayBuffer.isView(e)}function rt(e){return e===void 0}function ei(e){return e===null}function ti(e){return typeof e=="boolean"}function He(e){return typeof e=="number"}function pa(e){return globalThis.Number.isInteger(e)}function ni(e){return typeof e=="bigint"}function ke(e){return typeof e=="string"}function wr(e){return typeof e=="function"}function ii(e){return typeof e=="symbol"}function ql(e){return ni(e)||ti(e)||ei(e)||He(e)||ke(e)||ii(e)||rt(e)}var be;(function(e){e.InstanceMode="default",e.ExactOptionalPropertyTypes=!1,e.AllowArrayObject=!1,e.AllowNaN=!1,e.AllowNullVoid=!1;function n(s,l){return e.ExactOptionalPropertyTypes?l in s:s[l]!==void 0}e.IsExactOptionalProperty=n;function i(s){const l=De(s);return e.AllowArrayObject?l:l&&!Ee(s)}e.IsObjectLike=i;function r(s){return i(s)&&!(s instanceof Date)&&!(s instanceof Uint8Array)}e.IsRecordLike=r;function o(s){return e.AllowNaN?He(s):Number.isFinite(s)}e.IsNumberLike=o;function a(s){const l=rt(s);return e.AllowNullVoid?l||s===null:l}e.IsVoidLike=a})(be||(be={}));function Jl(e){return globalThis.Object.freeze(e).map(n=>Xn(n))}function Xl(e){const n={};for(const i of Object.getOwnPropertyNames(e))n[i]=Xn(e[i]);for(const i of Object.getOwnPropertySymbols(e))n[i]=Xn(e[i]);return globalThis.Object.freeze(n)}function Xn(e){return fe(e)?Jl(e):yr(e)?e:On(e)?e:sa(e)?e:H(e)?Xl(e):e}function f(e,n){const i=n!==void 0?{...n,...e}:e;switch(be.InstanceMode){case"freeze":return Xn(i);case"clone":return he(i);default:return i}}class ve extends Error{constructor(n){super(n)}}const Le=Symbol.for("TypeBox.Transform"),xn=Symbol.for("TypeBox.Readonly"),Xe=Symbol.for("TypeBox.Optional"),ri=Symbol.for("TypeBox.Hint"),y=Symbol.for("TypeBox.Kind");function Lr(e){return H(e)&&e[xn]==="Readonly"}function ot(e){return H(e)&&e[Xe]==="Optional"}function ua(e){return C(e,"Any")}function ma(e){return C(e,"Argument")}function Jt(e){return C(e,"Array")}function oi(e){return C(e,"AsyncIterator")}function ai(e){return C(e,"BigInt")}function Sn(e){return C(e,"Boolean")}function Xt(e){return C(e,"Computed")}function Vt(e){return C(e,"Constructor")}function Vl(e){return C(e,"Date")}function Yt(e){return C(e,"Function")}function Zt(e){return C(e,"Integer")}function Ie(e){return C(e,"Intersect")}function si(e){return C(e,"Iterator")}function C(e,n){return H(e)&&y in e&&e[y]===n}function fa(e){return bn(e)||Be(e)||z(e)}function xt(e){return C(e,"Literal")}function St(e){return C(e,"MappedKey")}function Se(e){return C(e,"MappedResult")}function wn(e){return C(e,"Never")}function Yl(e){return C(e,"Not")}function Pr(e){return C(e,"Null")}function Qt(e){return C(e,"Number")}function Ue(e){return C(e,"Object")}function ci(e){return C(e,"Promise")}function li(e){return C(e,"Record")}function ue(e){return C(e,"Ref")}function ga(e){return C(e,"RegExp")}function Ln(e){return C(e,"String")}function Ir(e){return C(e,"Symbol")}function wt(e){return C(e,"TemplateLiteral")}function Zl(e){return C(e,"This")}function di(e){return H(e)&&Le in e}function Lt(e){return C(e,"Tuple")}function Fr(e){return C(e,"Undefined")}function Z(e){return C(e,"Union")}function Ql(e){return C(e,"Uint8Array")}function ed(e){return C(e,"Unknown")}function td(e){return C(e,"Unsafe")}function nd(e){return C(e,"Void")}function ha(e){return H(e)&&y in e&&z(e[y])}function We(e){return ua(e)||ma(e)||Jt(e)||Sn(e)||ai(e)||oi(e)||Xt(e)||Vt(e)||Vl(e)||Yt(e)||Zt(e)||Ie(e)||si(e)||xt(e)||St(e)||Se(e)||wn(e)||Yl(e)||Pr(e)||Qt(e)||Ue(e)||ci(e)||li(e)||ue(e)||ga(e)||Ln(e)||Ir(e)||wt(e)||Zl(e)||Lt(e)||Fr(e)||Z(e)||Ql(e)||ed(e)||td(e)||nd(e)||ha(e)}const id=["Argument","Any","Array","AsyncIterator","BigInt","Boolean","Computed","Constructor","Date","Enum","Function","Integer","Intersect","Iterator","Literal","MappedKey","MappedResult","Not","Null","Number","Object","Promise","Record","Ref","RegExp","String","Symbol","TemplateLiteral","This","Tuple","Undefined","Union","Uint8Array","Unknown","Void"];function ba(e){try{return new RegExp(e),!0}catch{return!1}}function $r(e){if(!z(e))return!1;for(let n=0;n<e.length;n++){const i=e.charCodeAt(n);if(i>=7&&i<=13||i===27||i===127)return!1}return!0}function Oa(e){return Nr(e)||te(e)}function an(e){return K(e)||aa(e)}function U(e){return K(e)||Be(e)}function Nr(e){return K(e)||bn(e)}function v(e){return K(e)||z(e)}function rd(e){return K(e)||z(e)&&$r(e)&&ba(e)}function od(e){return K(e)||z(e)&&$r(e)}function ya(e){return K(e)||te(e)}function Vn(e){return H(e)&&e[Xe]==="Optional"}function Te(e){return T(e,"Any")&&v(e.$id)}function ad(e){return T(e,"Argument")&&Be(e.index)}function Pt(e){return T(e,"Array")&&e.type==="array"&&v(e.$id)&&te(e.items)&&U(e.minItems)&&U(e.maxItems)&&Nr(e.uniqueItems)&&ya(e.contains)&&U(e.minContains)&&U(e.maxContains)}function Cr(e){return T(e,"AsyncIterator")&&e.type==="AsyncIterator"&&v(e.$id)&&te(e.items)}function pi(e){return T(e,"BigInt")&&e.type==="bigint"&&v(e.$id)&&an(e.exclusiveMaximum)&&an(e.exclusiveMinimum)&&an(e.maximum)&&an(e.minimum)&&an(e.multipleOf)}function It(e){return T(e,"Boolean")&&e.type==="boolean"&&v(e.$id)}function sd(e){return T(e,"Computed")&&z(e.target)&&fe(e.parameters)&&e.parameters.every(n=>te(n))}function ui(e){return T(e,"Constructor")&&e.type==="Constructor"&&v(e.$id)&&fe(e.parameters)&&e.parameters.every(n=>te(n))&&te(e.returns)}function mi(e){return T(e,"Date")&&e.type==="Date"&&v(e.$id)&&U(e.exclusiveMaximumTimestamp)&&U(e.exclusiveMinimumTimestamp)&&U(e.maximumTimestamp)&&U(e.minimumTimestamp)&&U(e.multipleOfTimestamp)}function fi(e){return T(e,"Function")&&e.type==="Function"&&v(e.$id)&&fe(e.parameters)&&e.parameters.every(n=>te(n))&&te(e.returns)}function Ve(e){return T(e,"Integer")&&e.type==="integer"&&v(e.$id)&&U(e.exclusiveMaximum)&&U(e.exclusiveMinimum)&&U(e.maximum)&&U(e.minimum)&&U(e.multipleOf)}function xa(e){return H(e)&&Object.entries(e).every(([n,i])=>$r(n)&&te(i))}function Ft(e){return T(e,"Intersect")&&!(z(e.type)&&e.type!=="object")&&fe(e.allOf)&&e.allOf.every(n=>te(n)&&!md(n))&&v(e.type)&&(Nr(e.unevaluatedProperties)||ya(e.unevaluatedProperties))&&v(e.$id)}function Tr(e){return T(e,"Iterator")&&e.type==="Iterator"&&v(e.$id)&&te(e.items)}function T(e,n){return H(e)&&y in e&&e[y]===n}function Sa(e){return at(e)&&z(e.const)}function wa(e){return at(e)&&Be(e.const)}function La(e){return at(e)&&bn(e.const)}function at(e){return T(e,"Literal")&&v(e.$id)&&cd(e.const)}function cd(e){return bn(e)||Be(e)||z(e)}function ld(e){return T(e,"MappedKey")&&fe(e.keys)&&e.keys.every(n=>Be(n)||z(n))}function dd(e){return T(e,"MappedResult")&&xa(e.properties)}function st(e){return T(e,"Never")&&H(e.not)&&Object.getOwnPropertyNames(e.not).length===0}function Et(e){return T(e,"Not")&&te(e.not)}function Ar(e){return T(e,"Null")&&e.type==="null"&&v(e.$id)}function pe(e){return T(e,"Number")&&e.type==="number"&&v(e.$id)&&U(e.exclusiveMaximum)&&U(e.exclusiveMinimum)&&U(e.maximum)&&U(e.minimum)&&U(e.multipleOf)}function B(e){return T(e,"Object")&&e.type==="object"&&v(e.$id)&&xa(e.properties)&&Oa(e.additionalProperties)&&U(e.minProperties)&&U(e.maxProperties)}function jr(e){return T(e,"Promise")&&e.type==="Promise"&&v(e.$id)&&te(e.item)}function ee(e){return T(e,"Record")&&e.type==="object"&&v(e.$id)&&Oa(e.additionalProperties)&&H(e.patternProperties)&&(n=>{const i=Object.getOwnPropertyNames(n.patternProperties);return i.length===1&&ba(i[0])&&H(n.patternProperties)&&te(n.patternProperties[i[0]])})(e)}function pd(e){return T(e,"Ref")&&v(e.$id)&&z(e.$ref)}function ln(e){return T(e,"RegExp")&&v(e.$id)&&z(e.source)&&z(e.flags)&&U(e.maxLength)&&U(e.minLength)}function Ae(e){return T(e,"String")&&e.type==="string"&&v(e.$id)&&U(e.minLength)&&U(e.maxLength)&&rd(e.pattern)&&od(e.format)}function dn(e){return T(e,"Symbol")&&e.type==="symbol"&&v(e.$id)}function pn(e){return T(e,"TemplateLiteral")&&e.type==="string"&&z(e.pattern)&&e.pattern[0]==="^"&&e.pattern[e.pattern.length-1]==="$"}function ud(e){return T(e,"This")&&v(e.$id)&&z(e.$ref)}function md(e){return H(e)&&Le in e}function gi(e){return T(e,"Tuple")&&e.type==="array"&&v(e.$id)&&Be(e.minItems)&&Be(e.maxItems)&&e.minItems===e.maxItems&&(K(e.items)&&K(e.additionalItems)&&e.minItems===0||fe(e.items)&&e.items.every(n=>te(n)))}function bt(e){return T(e,"Undefined")&&e.type==="undefined"&&v(e.$id)}function Je(e){return T(e,"Union")&&v(e.$id)&&H(e)&&fe(e.anyOf)&&e.anyOf.every(n=>te(n))}function Pn(e){return T(e,"Uint8Array")&&e.type==="Uint8Array"&&v(e.$id)&&U(e.minByteLength)&&U(e.maxByteLength)}function je(e){return T(e,"Unknown")&&v(e.$id)}function fd(e){return T(e,"Unsafe")}function hi(e){return T(e,"Void")&&e.type==="void"&&v(e.$id)}function gd(e){return H(e)&&y in e&&z(e[y])&&!id.includes(e[y])}function te(e){return H(e)&&(Te(e)||ad(e)||Pt(e)||It(e)||pi(e)||Cr(e)||sd(e)||ui(e)||mi(e)||fi(e)||Ve(e)||Ft(e)||Tr(e)||at(e)||ld(e)||dd(e)||st(e)||Et(e)||Ar(e)||pe(e)||B(e)||jr(e)||ee(e)||pd(e)||ln(e)||Ae(e)||dn(e)||pn(e)||ud(e)||gi(e)||bt(e)||Je(e)||Pn(e)||je(e)||fd(e)||hi(e)||gd(e))}const hd="(true|false)",Gn="(0|[1-9][0-9]*)",Pa="(.*)",bd="(?!.*)",zt=`^${Gn}$`,Kt=`^${Pa}$`,Od=`^${bd}$`,Rr=new Map;function Ia(e){return Rr.has(e)}function Fa(e,n){Rr.set(e,n)}function $a(e){return Rr.get(e)}const Na=new Map;function vr(e){return Na.has(e)}function Ca(e){return Na.get(e)}function yd(e,n){return e.includes(n)}function xd(e){return[...new Set(e)]}function Sd(e,n){return e.filter(i=>n.includes(i))}function wd(e,n){return e.reduce((i,r)=>Sd(i,r),n)}function Ld(e){return e.length===1?e[0]:e.length>1?wd(e.slice(1),e[0]):[]}function Pd(e){const n=[];for(const i of e)n.push(...i);return n}function un(e){return f({[y]:"Any"},e)}function Ur(e,n){return f({[y]:"Array",type:"array",items:e},n)}function Id(e){return f({[y]:"Argument",index:e})}function Mr(e,n){return f({[y]:"AsyncIterator",type:"AsyncIterator",items:e},n)}function q(e,n,i){return f({[y]:"Computed",target:e,parameters:n},i)}function Fd(e,n){const{[n]:i,...r}=e;return r}function Oe(e,n){return n.reduce((i,r)=>Fd(i,r),e)}function D(e){return f({[y]:"Never",not:{}},e)}function ne(e){return f({[y]:"MappedResult",properties:e})}function kr(e,n,i){return f({[y]:"Constructor",type:"Constructor",parameters:e,returns:n},i)}function In(e,n,i){return f({[y]:"Function",type:"Function",parameters:e,returns:n},i)}function ir(e,n){return f({[y]:"Union",anyOf:e},n)}function $d(e){return e.some(n=>ot(n))}function wo(e){return e.map(n=>ot(n)?Nd(n):n)}function Nd(e){return Oe(e,[Xe])}function Cd(e,n){return $d(e)?dt(ir(wo(e),n)):ir(wo(e),n)}function en(e,n){return e.length===1?f(e[0],n):e.length===0?D(n):Cd(e,n)}function ie(e,n){return e.length===0?D(n):e.length===1?f(e[0],n):ir(e,n)}class Lo extends ve{}function Td(e){return e.replace(/\\\$/g,"$").replace(/\\\*/g,"*").replace(/\\\^/g,"^").replace(/\\\|/g,"|").replace(/\\\(/g,"(").replace(/\\\)/g,")")}function Br(e,n,i){return e[n]===i&&e.charCodeAt(n-1)!==92}function Ge(e,n){return Br(e,n,"(")}function mn(e,n){return Br(e,n,")")}function Ta(e,n){return Br(e,n,"|")}function Ad(e){if(!(Ge(e,0)&&mn(e,e.length-1)))return!1;let n=0;for(let i=0;i<e.length;i++)if(Ge(e,i)&&(n+=1),mn(e,i)&&(n-=1),n===0&&i!==e.length-1)return!1;return!0}function jd(e){return e.slice(1,e.length-1)}function Rd(e){let n=0;for(let i=0;i<e.length;i++)if(Ge(e,i)&&(n+=1),mn(e,i)&&(n-=1),Ta(e,i)&&n===0)return!0;return!1}function vd(e){for(let n=0;n<e.length;n++)if(Ge(e,n))return!0;return!1}function Ud(e){let[n,i]=[0,0];const r=[];for(let a=0;a<e.length;a++)if(Ge(e,a)&&(n+=1),mn(e,a)&&(n-=1),Ta(e,a)&&n===0){const s=e.slice(i,a);s.length>0&&r.push(_t(s)),i=a+1}const o=e.slice(i);return o.length>0&&r.push(_t(o)),r.length===0?{type:"const",const:""}:r.length===1?r[0]:{type:"or",expr:r}}function Md(e){function n(o,a){if(!Ge(o,a))throw new Lo("TemplateLiteralParser: Index must point to open parens");let s=0;for(let l=a;l<o.length;l++)if(Ge(o,l)&&(s+=1),mn(o,l)&&(s-=1),s===0)return[a,l];throw new Lo("TemplateLiteralParser: Unclosed group parens in expression")}function i(o,a){for(let s=a;s<o.length;s++)if(Ge(o,s))return[a,s];return[a,o.length]}const r=[];for(let o=0;o<e.length;o++)if(Ge(e,o)){const[a,s]=n(e,o),l=e.slice(a,s+1);r.push(_t(l)),o=s}else{const[a,s]=i(e,o),l=e.slice(a,s);l.length>0&&r.push(_t(l)),o=s-1}return r.length===0?{type:"const",const:""}:r.length===1?r[0]:{type:"and",expr:r}}function _t(e){return Ad(e)?_t(jd(e)):Rd(e)?Ud(e):vd(e)?Md(e):{type:"const",const:Td(e)}}function Dr(e){return _t(e.slice(1,e.length-1))}class kd extends ve{}function Bd(e){return e.type==="or"&&e.expr.length===2&&e.expr[0].type==="const"&&e.expr[0].const==="0"&&e.expr[1].type==="const"&&e.expr[1].const==="[1-9][0-9]*"}function Dd(e){return e.type==="or"&&e.expr.length===2&&e.expr[0].type==="const"&&e.expr[0].const==="true"&&e.expr[1].type==="const"&&e.expr[1].const==="false"}function Ed(e){return e.type==="const"&&e.const===".*"}function fn(e){return Bd(e)||Ed(e)?!1:Dd(e)?!0:e.type==="and"?e.expr.every(n=>fn(n)):e.type==="or"?e.expr.every(n=>fn(n)):e.type==="const"?!0:(()=>{throw new kd("Unknown expression type")})()}function zd(e){const n=Dr(e.pattern);return fn(n)}class Kd extends ve{}function*Aa(e){if(e.length===1)return yield*e[0];for(const n of e[0])for(const i of Aa(e.slice(1)))yield`${n}${i}`}function*_d(e){return yield*Aa(e.expr.map(n=>[...bi(n)]))}function*Hd(e){for(const n of e.expr)yield*bi(n)}function*Gd(e){return yield e.const}function*bi(e){return e.type==="and"?yield*_d(e):e.type==="or"?yield*Hd(e):e.type==="const"?yield*Gd(e):(()=>{throw new Kd("Unknown expression")})()}function ja(e){const n=Dr(e.pattern);return fn(n)?[...bi(n)]:[]}function _(e,n){return f({[y]:"Literal",const:e,type:typeof e},n)}function Ra(e){return f({[y]:"Boolean",type:"boolean"},e)}function Er(e){return f({[y]:"BigInt",type:"bigint"},e)}function $t(e){return f({[y]:"Number",type:"number"},e)}function Ot(e){return f({[y]:"String",type:"string"},e)}function*Wd(e){const n=e.trim().replace(/"|'/g,"");return n==="boolean"?yield Ra():n==="number"?yield $t():n==="bigint"?yield Er():n==="string"?yield Ot():yield(()=>{const i=n.split("|").map(r=>_(r.trim()));return i.length===0?D():i.length===1?i[0]:en(i)})()}function*qd(e){if(e[1]!=="{"){const n=_("$"),i=rr(e.slice(1));return yield*[n,...i]}for(let n=2;n<e.length;n++)if(e[n]==="}"){const i=Wd(e.slice(2,n)),r=rr(e.slice(n+1));return yield*[...i,...r]}yield _(e)}function*rr(e){for(let n=0;n<e.length;n++)if(e[n]==="$"){const i=_(e.slice(0,n)),r=qd(e.slice(n));return yield*[i,...r]}yield _(e)}function Jd(e){return[...rr(e)]}class Xd extends ve{}function Vd(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function va(e,n){return wt(e)?e.pattern.slice(1,e.pattern.length-1):Z(e)?`(${e.anyOf.map(i=>va(i,n)).join("|")})`:Qt(e)?`${n}${Gn}`:Zt(e)?`${n}${Gn}`:ai(e)?`${n}${Gn}`:Ln(e)?`${n}${Pa}`:xt(e)?`${n}${Vd(e.const.toString())}`:Sn(e)?`${n}${hd}`:(()=>{throw new Xd(`Unexpected Kind '${e[y]}'`)})()}function Po(e){return`^${e.map(n=>va(n,"")).join("")}$`}function Yn(e){const i=ja(e).map(r=>_(r));return en(i)}function Ua(e,n){const i=z(e)?Po(Jd(e)):Po(e);return f({[y]:"TemplateLiteral",type:"string",pattern:i},n)}function Yd(e){return ja(e).map(i=>i.toString())}function Zd(e){const n=[];for(const i of e)n.push(...ct(i));return n}function Qd(e){return[e.toString()]}function ct(e){return[...new Set(wt(e)?Yd(e):Z(e)?Zd(e.anyOf):xt(e)?Qd(e.const):Qt(e)?["[number]"]:Zt(e)?["[number]"]:[])]}function ep(e,n,i){const r={};for(const o of Object.getOwnPropertyNames(n))r[o]=Oi(e,ct(n[o]),i);return r}function tp(e,n,i){return ep(e,n.properties,i)}function np(e,n,i){const r=tp(e,n,i);return ne(r)}function Ma(e,n){return e.map(i=>ka(i,n))}function ip(e){return e.filter(n=>!wn(n))}function rp(e,n){return za(ip(Ma(e,n)))}function op(e){return e.some(n=>wn(n))?[]:e}function ap(e,n){return en(op(Ma(e,n)))}function sp(e,n){return n in e?e[n]:n==="[number]"?en(e):D()}function cp(e,n){return n==="[number]"?e:D()}function lp(e,n){return n in e?e[n]:D()}function ka(e,n){return Ie(e)?rp(e.allOf,n):Z(e)?ap(e.anyOf,n):Lt(e)?sp(e.items??[],n):Jt(e)?cp(e.items,n):Ue(e)?lp(e.properties,n):D()}function Ba(e,n){return n.map(i=>ka(e,i))}function Io(e,n){return en(Ba(e,n))}function Oi(e,n,i){if(ue(e)||ue(n)){const r="Index types using Ref parameters require both Type and Key to be of TSchema";if(!We(e)||!We(n))throw new ve(r);return q("Index",[e,n])}return Se(n)?np(e,n,i):St(n)?mp(e,n,i):f(We(n)?Io(e,ct(n)):Io(e,n),i)}function dp(e,n,i){return{[n]:Oi(e,[n],he(i))}}function pp(e,n,i){return n.reduce((r,o)=>({...r,...dp(e,o,i)}),{})}function up(e,n,i){return pp(e,n.keys,i)}function mp(e,n,i){const r=up(e,n,i);return ne(r)}function zr(e,n){return f({[y]:"Iterator",type:"Iterator",items:e},n)}function fp(e){const n=[];for(let i in e)ot(e[i])||n.push(i);return n}function gp(e,n){const i=fp(e),r=i.length>0?{[y]:"Object",type:"object",properties:e,required:i}:{[y]:"Object",type:"object",properties:e};return f(r,n)}var Y=gp;function Da(e,n){return f({[y]:"Promise",type:"Promise",item:e},n)}function hp(e){return f(Oe(e,[xn]))}function bp(e){return f({...e,[xn]:"Readonly"})}function Op(e,n){return n===!1?hp(e):bp(e)}function lt(e,n){const i=n??!0;return Se(e)?Sp(e,i):Op(e,i)}function yp(e,n){const i={};for(const r of globalThis.Object.getOwnPropertyNames(e))i[r]=lt(e[r],n);return i}function xp(e,n){return yp(e.properties,n)}function Sp(e,n){const i=xp(e,n);return ne(i)}function tn(e,n){return f(e.length>0?{[y]:"Tuple",type:"array",items:e,additionalItems:!1,minItems:e.length,maxItems:e.length}:{[y]:"Tuple",type:"array",minItems:e.length,maxItems:e.length},n)}function Ea(e,n){return e in n?we(e,n[e]):ne(n)}function wp(e){return{[e]:_(e)}}function Lp(e){const n={};for(const i of e)n[i]=_(i);return n}function Pp(e,n){return yd(n,e)?wp(e):Lp(n)}function Ip(e,n){const i=Pp(e,n);return Ea(e,i)}function sn(e,n){return n.map(i=>we(e,i))}function Fp(e,n){const i={};for(const r of globalThis.Object.getOwnPropertyNames(n))i[r]=we(e,n[r]);return i}function we(e,n){const i={...n};return ot(n)?dt(we(e,Oe(n,[Xe]))):Lr(n)?lt(we(e,Oe(n,[xn]))):Se(n)?Ea(e,n.properties):St(n)?Ip(e,n.keys):Vt(n)?kr(sn(e,n.parameters),we(e,n.returns),i):Yt(n)?In(sn(e,n.parameters),we(e,n.returns),i):oi(n)?Mr(we(e,n.items),i):si(n)?zr(we(e,n.items),i):Ie(n)?pt(sn(e,n.allOf),i):Z(n)?ie(sn(e,n.anyOf),i):Lt(n)?tn(sn(e,n.items??[]),i):Ue(n)?Y(Fp(e,n.properties),i):Jt(n)?Ur(we(e,n.items),i):ci(n)?Da(we(e,n.item),i):n}function $p(e,n){const i={};for(const r of e)i[r]=we(r,n);return i}function Np(e,n,i){const r=We(e)?ct(e):e,o=n({[y]:"MappedKey",keys:r}),a=$p(r,o);return Y(a,i)}function Cp(e){return f(Oe(e,[Xe]))}function Tp(e){return f({...e,[Xe]:"Optional"})}function Ap(e,n){return n===!1?Cp(e):Tp(e)}function dt(e,n){const i=n??!0;return Se(e)?vp(e,i):Ap(e,i)}function jp(e,n){const i={};for(const r of globalThis.Object.getOwnPropertyNames(e))i[r]=dt(e[r],n);return i}function Rp(e,n){return jp(e.properties,n)}function vp(e,n){const i=Rp(e,n);return ne(i)}function or(e,n={}){const i=e.every(o=>Ue(o)),r=We(n.unevaluatedProperties)?{unevaluatedProperties:n.unevaluatedProperties}:{};return f(n.unevaluatedProperties===!1||We(n.unevaluatedProperties)||i?{...r,[y]:"Intersect",type:"object",allOf:e}:{...r,[y]:"Intersect",allOf:e},n)}function Up(e){return e.every(n=>ot(n))}function Mp(e){return Oe(e,[Xe])}function Fo(e){return e.map(n=>ot(n)?Mp(n):n)}function kp(e,n){return Up(e)?dt(or(Fo(e),n)):or(Fo(e),n)}function za(e,n={}){if(e.length===1)return f(e[0],n);if(e.length===0)return D(n);if(e.some(i=>di(i)))throw new Error("Cannot intersect transform types");return kp(e,n)}function pt(e,n){if(e.length===1)return f(e[0],n);if(e.length===0)return D(n);if(e.some(i=>di(i)))throw new Error("Cannot intersect transform types");return or(e,n)}function Fn(...e){const[n,i]=typeof e[0]=="string"?[e[0],e[1]]:[e[0].$id,e[1]];if(typeof n!="string")throw new ve("Ref: $ref must be a string");return f({[y]:"Ref",$ref:n},i)}function Bp(e,n){return q("Awaited",[q(e,n)])}function Dp(e){return q("Awaited",[Fn(e)])}function Ep(e){return pt(Ka(e))}function zp(e){return ie(Ka(e))}function Kp(e){return yi(e)}function Ka(e){return e.map(n=>yi(n))}function yi(e,n){return f(Xt(e)?Bp(e.target,e.parameters):Ie(e)?Ep(e.allOf):Z(e)?zp(e.anyOf):ci(e)?Kp(e.item):ue(e)?Dp(e.$ref):e,n)}function _a(e){const n=[];for(const i of e)n.push(xi(i));return n}function _p(e){const n=_a(e);return Pd(n)}function Hp(e){const n=_a(e);return Ld(n)}function Gp(e){return e.map((n,i)=>i.toString())}function Wp(e){return["[number]"]}function qp(e){return globalThis.Object.getOwnPropertyNames(e)}function Jp(e){return ar?globalThis.Object.getOwnPropertyNames(e).map(i=>i[0]==="^"&&i[i.length-1]==="$"?i.slice(1,i.length-1):i):[]}function xi(e){return Ie(e)?_p(e.allOf):Z(e)?Hp(e.anyOf):Lt(e)?Gp(e.items??[]):Jt(e)?Wp(e.items):Ue(e)?qp(e.properties):li(e)?Jp(e.patternProperties):[]}let ar=!1;function Zn(e){ar=!0;const n=xi(e);return ar=!1,`^(${n.map(r=>`(${r})`).join("|")})$`}function Xp(e,n){return q("KeyOf",[q(e,n)])}function Vp(e){return q("KeyOf",[Fn(e)])}function Yp(e,n){const i=xi(e),r=Zp(i),o=en(r);return f(o,n)}function Zp(e){return e.map(n=>n==="[number]"?$t():_(n))}function Kr(e,n){return Xt(e)?Xp(e.target,e.parameters):ue(e)?Vp(e.$ref):Se(e)?tu(e,n):Yp(e,n)}function Qp(e,n){const i={};for(const r of globalThis.Object.getOwnPropertyNames(e))i[r]=Kr(e[r],he(n));return i}function eu(e,n){return Qp(e.properties,n)}function tu(e,n){const i=eu(e,n);return ne(i)}function nu(e){const n=[];for(const i of e)n.push(...xi(i));return xd(n)}function iu(e){return e.filter(n=>!wn(n))}function ru(e,n){const i=[];for(const r of e)i.push(...Ba(r,[n]));return iu(i)}function ou(e,n){const i={};for(const r of n)i[r]=za(ru(e,r));return i}function au(e,n){const i=nu(e),r=ou(e,i);return Y(r,n)}function Ha(e){return f({[y]:"Date",type:"Date"},e)}function Ga(e){return f({[y]:"Null",type:"null"},e)}function Wa(e){return f({[y]:"Symbol",type:"symbol"},e)}function qa(e){return f({[y]:"Undefined",type:"undefined"},e)}function Ja(e){return f({[y]:"Uint8Array",type:"Uint8Array"},e)}function Si(e){return f({[y]:"Unknown"},e)}function su(e){return e.map(n=>_r(n,!1))}function cu(e){const n={};for(const i of globalThis.Object.getOwnPropertyNames(e))n[i]=lt(_r(e[i],!1));return n}function Dn(e,n){return n===!0?e:lt(e)}function _r(e,n){return Rl(e)||Ul(e)?Dn(un(),n):fe(e)?lt(tn(su(e))):On(e)?Ja():yr(e)?Ha():H(e)?Dn(Y(cu(e)),n):vl(e)?Dn(In([],Si()),n):K(e)?qa():Ml(e)?Ga():kl(e)?Wa():aa(e)?Er():Be(e)||bn(e)||z(e)?_(e):Y({})}function lu(e,n){return f(_r(e,!0),n)}function du(e,n){return Vt(e)?tn(e.parameters,n):D(n)}function pu(e,n){if(K(e))throw new Error("Enum undefined or empty");const i=globalThis.Object.getOwnPropertyNames(e).filter(a=>isNaN(a)).map(a=>e[a]),o=[...new Set(i)].map(a=>_(a));return ie(o,{...n,[ri]:"Enum"})}class uu extends ve{}var p;(function(e){e[e.Union=0]="Union",e[e.True=1]="True",e[e.False=2]="False"})(p||(p={}));function Pe(e){return e===p.False?e:p.True}function nn(e){throw new uu(e)}function G(e){return st(e)||Ft(e)||Je(e)||je(e)||Te(e)}function W(e,n){return st(n)?Ya():Ft(n)?wi(e,n):Je(n)?Gr(e,n):je(n)?ts():Te(n)?Hr():nn("StructuralRight")}function Hr(e,n){return p.True}function mu(e,n){return Ft(n)?wi(e,n):Je(n)&&n.anyOf.some(i=>Te(i)||je(i))?p.True:Je(n)?p.Union:je(n)||Te(n)?p.True:p.Union}function fu(e,n){return je(e)?p.False:Te(e)?p.Union:st(e)?p.True:p.False}function gu(e,n){return B(n)&&Li(n)?p.True:G(n)?W(e,n):Pt(n)?Pe(R(e.items,n.items)):p.False}function hu(e,n){return G(n)?W(e,n):Cr(n)?Pe(R(e.items,n.items)):p.False}function bu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):pi(n)?p.True:p.False}function Xa(e,n){return La(e)||It(e)?p.True:p.False}function Ou(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):It(n)?p.True:p.False}function yu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ui(n)?e.parameters.length>n.parameters.length?p.False:e.parameters.every((i,r)=>Pe(R(n.parameters[r],i))===p.True)?Pe(R(e.returns,n.returns)):p.False:p.False}function xu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):mi(n)?p.True:p.False}function Su(e,n){return G(n)?W(e,n):B(n)?se(e,n):fi(n)?e.parameters.length>n.parameters.length?p.False:e.parameters.every((i,r)=>Pe(R(n.parameters[r],i))===p.True)?Pe(R(e.returns,n.returns)):p.False:p.False}function Va(e,n){return at(e)&&Be(e.const)||pe(e)||Ve(e)?p.True:p.False}function wu(e,n){return Ve(n)||pe(n)?p.True:G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):p.False}function wi(e,n){return n.allOf.every(i=>R(e,i)===p.True)?p.True:p.False}function Lu(e,n){return e.allOf.some(i=>R(i,n)===p.True)?p.True:p.False}function Pu(e,n){return G(n)?W(e,n):Tr(n)?Pe(R(e.items,n.items)):p.False}function Iu(e,n){return at(n)&&n.const===e.const?p.True:G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):Ae(n)?es(e):pe(n)?Za(e):Ve(n)?Va(e):It(n)?Xa(e):p.False}function Ya(e,n){return p.False}function Fu(e,n){return p.True}function $o(e){let[n,i]=[e,0];for(;Et(n);)n=n.not,i+=1;return i%2===0?n:Si()}function $u(e,n){return Et(e)?R($o(e),n):Et(n)?R(e,$o(n)):nn("Invalid fallthrough for Not")}function Nu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):Ar(n)?p.True:p.False}function Za(e,n){return wa(e)||pe(e)||Ve(e)?p.True:p.False}function Cu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):Ve(n)||pe(n)?p.True:p.False}function me(e,n){return Object.getOwnPropertyNames(e.properties).length===n}function No(e){return Li(e)}function Co(e){return me(e,0)||me(e,1)&&"description"in e.properties&&Je(e.properties.description)&&e.properties.description.anyOf.length===2&&(Ae(e.properties.description.anyOf[0])&&bt(e.properties.description.anyOf[1])||Ae(e.properties.description.anyOf[1])&&bt(e.properties.description.anyOf[0]))}function Ji(e){return me(e,0)}function To(e){return me(e,0)}function Tu(e){return me(e,0)}function Au(e){return me(e,0)}function ju(e){return Li(e)}function Ru(e){const n=$t();return me(e,0)||me(e,1)&&"length"in e.properties&&Pe(R(e.properties.length,n))===p.True}function vu(e){return me(e,0)}function Li(e){const n=$t();return me(e,0)||me(e,1)&&"length"in e.properties&&Pe(R(e.properties.length,n))===p.True}function Uu(e){const n=In([un()],un());return me(e,0)||me(e,1)&&"then"in e.properties&&Pe(R(e.properties.then,n))===p.True}function Qa(e,n){return R(e,n)===p.False||Vn(e)&&!Vn(n)?p.False:p.True}function se(e,n){return je(e)?p.False:Te(e)?p.Union:st(e)||Sa(e)&&No(n)||wa(e)&&Ji(n)||La(e)&&To(n)||dn(e)&&Co(n)||pi(e)&&Tu(n)||Ae(e)&&No(n)||dn(e)&&Co(n)||pe(e)&&Ji(n)||Ve(e)&&Ji(n)||It(e)&&To(n)||Pn(e)&&ju(n)||mi(e)&&Au(n)||ui(e)&&vu(n)||fi(e)&&Ru(n)?p.True:ee(e)&&Ae(sr(e))?n[ri]==="Record"?p.True:p.False:ee(e)&&pe(sr(e))?me(n,0)?p.True:p.False:p.False}function Mu(e,n){return G(n)?W(e,n):ee(n)?Fe(e,n):B(n)?(()=>{for(const i of Object.getOwnPropertyNames(n.properties)){if(!(i in e.properties)&&!Vn(n.properties[i]))return p.False;if(Vn(n.properties[i]))return p.True;if(Qa(e.properties[i],n.properties[i])===p.False)return p.False}return p.True})():p.False}function ku(e,n){return G(n)?W(e,n):B(n)&&Uu(n)?p.True:jr(n)?Pe(R(e.item,n.item)):p.False}function sr(e){return zt in e.patternProperties?$t():Kt in e.patternProperties?Ot():nn("Unknown record key pattern")}function cr(e){return zt in e.patternProperties?e.patternProperties[zt]:Kt in e.patternProperties?e.patternProperties[Kt]:nn("Unable to get record value schema")}function Fe(e,n){const[i,r]=[sr(n),cr(n)];return Sa(e)&&pe(i)&&Pe(R(e,r))===p.True?p.True:Pn(e)&&pe(i)||Ae(e)&&pe(i)||Pt(e)&&pe(i)?R(e,r):B(e)?(()=>{for(const o of Object.getOwnPropertyNames(e.properties))if(Qa(r,e.properties[o])===p.False)return p.False;return p.True})():p.False}function Bu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?R(cr(e),cr(n)):p.False}function Du(e,n){const i=ln(e)?Ot():e,r=ln(n)?Ot():n;return R(i,r)}function es(e,n){return at(e)&&z(e.const)||Ae(e)?p.True:p.False}function Eu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):Ae(n)?p.True:p.False}function zu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):dn(n)?p.True:p.False}function Ku(e,n){return pn(e)?R(Yn(e),n):pn(n)?R(e,Yn(n)):nn("Invalid fallthrough for TemplateLiteral")}function _u(e,n){return Pt(n)&&e.items!==void 0&&e.items.every(i=>R(i,n.items)===p.True)}function Hu(e,n){return st(e)?p.True:je(e)?p.False:Te(e)?p.Union:p.False}function Gu(e,n){return G(n)?W(e,n):B(n)&&Li(n)||Pt(n)&&_u(e,n)?p.True:gi(n)?K(e.items)&&!K(n.items)||!K(e.items)&&K(n.items)?p.False:K(e.items)&&!K(n.items)||e.items.every((i,r)=>R(i,n.items[r])===p.True)?p.True:p.False:p.False}function Wu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):Pn(n)?p.True:p.False}function qu(e,n){return G(n)?W(e,n):B(n)?se(e,n):ee(n)?Fe(e,n):hi(n)?Vu(e):bt(n)?p.True:p.False}function Gr(e,n){return n.anyOf.some(i=>R(e,i)===p.True)?p.True:p.False}function Ju(e,n){return e.anyOf.every(i=>R(i,n)===p.True)?p.True:p.False}function ts(e,n){return p.True}function Xu(e,n){return st(n)?Ya():Ft(n)?wi(e,n):Je(n)?Gr(e,n):Te(n)?Hr():Ae(n)?es(e):pe(n)?Za(e):Ve(n)?Va(e):It(n)?Xa(e):Pt(n)?fu(e):gi(n)?Hu(e):B(n)?se(e,n):je(n)?p.True:p.False}function Vu(e,n){return bt(e)||bt(e)?p.True:p.False}function Yu(e,n){return Ft(n)?wi(e,n):Je(n)?Gr(e,n):je(n)?ts():Te(n)?Hr():B(n)?se(e,n):hi(n)?p.True:p.False}function R(e,n){return pn(e)||pn(n)?Ku(e,n):ln(e)||ln(n)?Du(e,n):Et(e)||Et(n)?$u(e,n):Te(e)?mu(e,n):Pt(e)?gu(e,n):pi(e)?bu(e,n):It(e)?Ou(e,n):Cr(e)?hu(e,n):ui(e)?yu(e,n):mi(e)?xu(e,n):fi(e)?Su(e,n):Ve(e)?wu(e,n):Ft(e)?Lu(e,n):Tr(e)?Pu(e,n):at(e)?Iu(e,n):st(e)?Fu():Ar(e)?Nu(e,n):pe(e)?Cu(e,n):B(e)?Mu(e,n):ee(e)?Bu(e,n):Ae(e)?Eu(e,n):dn(e)?zu(e,n):gi(e)?Gu(e,n):jr(e)?ku(e,n):Pn(e)?Wu(e,n):bt(e)?qu(e,n):Je(e)?Ju(e,n):je(e)?Xu(e,n):hi(e)?Yu(e,n):nn(`Unknown left type operand '${e[y]}'`)}function $n(e,n){return R(e,n)}function Zu(e,n,i,r,o){const a={};for(const s of globalThis.Object.getOwnPropertyNames(e))a[s]=Wr(e[s],n,i,r,he(o));return a}function Qu(e,n,i,r,o){return Zu(e.properties,n,i,r,o)}function em(e,n,i,r,o){const a=Qu(e,n,i,r,o);return ne(a)}function tm(e,n,i,r){const o=$n(e,n);return o===p.Union?ie([i,r]):o===p.True?i:r}function Wr(e,n,i,r,o){return Se(e)?em(e,n,i,r,o):St(e)?f(om(e,n,i,r,o)):f(tm(e,n,i,r),o)}function nm(e,n,i,r,o){return{[e]:Wr(_(e),n,i,r,he(o))}}function im(e,n,i,r,o){return e.reduce((a,s)=>({...a,...nm(s,n,i,r,o)}),{})}function rm(e,n,i,r,o){return im(e.keys,n,i,r,o)}function om(e,n,i,r,o){const a=rm(e,n,i,r,o);return ne(a)}function am(e){return e.allOf.every(n=>Nn(n))}function sm(e){return e.anyOf.some(n=>Nn(n))}function cm(e){return!Nn(e.not)}function Nn(e){return e[y]==="Intersect"?am(e):e[y]==="Union"?sm(e):e[y]==="Not"?cm(e):e[y]==="Undefined"}function lm(e,n){return qr(Yn(e),n)}function dm(e,n){const i=e.filter(r=>$n(r,n)===p.False);return i.length===1?i[0]:ie(i)}function qr(e,n,i={}){return wt(e)?f(lm(e,n),i):Se(e)?f(mm(e,n),i):f(Z(e)?dm(e.anyOf,n):$n(e,n)!==p.False?D():e,i)}function pm(e,n){const i={};for(const r of globalThis.Object.getOwnPropertyNames(e))i[r]=qr(e[r],n);return i}function um(e,n){return pm(e.properties,n)}function mm(e,n){const i=um(e,n);return ne(i)}function fm(e,n){return Jr(Yn(e),n)}function gm(e,n){const i=e.filter(r=>$n(r,n)!==p.False);return i.length===1?i[0]:ie(i)}function Jr(e,n,i){return wt(e)?f(fm(e,n),i):Se(e)?f(Om(e,n),i):f(Z(e)?gm(e.anyOf,n):$n(e,n)!==p.False?e:D(),i)}function hm(e,n){const i={};for(const r of globalThis.Object.getOwnPropertyNames(e))i[r]=Jr(e[r],n);return i}function bm(e,n){return hm(e.properties,n)}function Om(e,n){const i=bm(e,n);return ne(i)}function ym(e,n){return Vt(e)?f(e.returns,n):D(n)}function ns(e){return lt(dt(e))}function Nt(e,n,i){return f({[y]:"Record",type:"object",patternProperties:{[e]:n}},i)}function Xr(e,n,i){const r={};for(const o of e)r[o]=n;return Y(r,{...i,[ri]:"Record"})}function xm(e,n,i){return zd(e)?Xr(ct(e),n,i):Nt(e.pattern,n,i)}function Sm(e,n,i){return Xr(ct(ie(e)),n,i)}function wm(e,n,i){return Xr([e.toString()],n,i)}function Lm(e,n,i){return Nt(e.source,n,i)}function Pm(e,n,i){const r=K(e.pattern)?Kt:e.pattern;return Nt(r,n,i)}function Im(e,n,i){return Nt(Kt,n,i)}function Fm(e,n,i){return Nt(Od,n,i)}function $m(e,n,i){return Y({true:n,false:n},i)}function Nm(e,n,i){return Nt(zt,n,i)}function Cm(e,n,i){return Nt(zt,n,i)}function is(e,n,i={}){return Z(e)?Sm(e.anyOf,n,i):wt(e)?xm(e,n,i):xt(e)?wm(e.const,n,i):Sn(e)?$m(e,n,i):Zt(e)?Nm(e,n,i):Qt(e)?Cm(e,n,i):ga(e)?Lm(e,n,i):Ln(e)?Pm(e,n,i):ua(e)?Im(e,n,i):wn(e)?Fm(e,n,i):D(i)}function Vr(e){return globalThis.Object.getOwnPropertyNames(e.patternProperties)[0]}function Tm(e){const n=Vr(e);return n===Kt?Ot():n===zt?$t():Ot({pattern:n})}function rs(e){return e.patternProperties[Vr(e)]}function Am(e,n){return n.parameters=Cn(e,n.parameters),n.returns=Re(e,n.returns),n}function jm(e,n){return n.parameters=Cn(e,n.parameters),n.returns=Re(e,n.returns),n}function Rm(e,n){return n.allOf=Cn(e,n.allOf),n}function vm(e,n){return n.anyOf=Cn(e,n.anyOf),n}function Um(e,n){return K(n.items)||(n.items=Cn(e,n.items)),n}function Mm(e,n){return n.items=Re(e,n.items),n}function km(e,n){return n.items=Re(e,n.items),n}function Bm(e,n){return n.items=Re(e,n.items),n}function Dm(e,n){return n.item=Re(e,n.item),n}function Em(e,n){const i=Hm(e,n.properties);return{...n,...Y(i)}}function zm(e,n){const i=Re(e,Tm(n)),r=Re(e,rs(n)),o=is(i,r);return{...n,...o}}function Km(e,n){return n.index in e?e[n.index]:Si()}function _m(e,n){const i=Lr(n),r=ot(n),o=Re(e,n);return i&&r?ns(o):i&&!r?lt(o):!i&&r?dt(o):o}function Hm(e,n){return globalThis.Object.getOwnPropertyNames(n).reduce((i,r)=>({...i,[r]:_m(e,n[r])}),{})}function Cn(e,n){return n.map(i=>Re(e,i))}function Re(e,n){return Vt(n)?Am(e,n):Yt(n)?jm(e,n):Ie(n)?Rm(e,n):Z(n)?vm(e,n):Lt(n)?Um(e,n):Jt(n)?Mm(e,n):oi(n)?km(e,n):si(n)?Bm(e,n):ci(n)?Dm(e,n):Ue(n)?Em(e,n):li(n)?zm(e,n):ma(n)?Km(e,n):n}function Gm(e,n){return Re(n,xr(e))}function Wm(e){return f({[y]:"Integer",type:"integer"},e)}function qm(e,n,i){return{[e]:rn(_(e),n,he(i))}}function Jm(e,n,i){return e.reduce((o,a)=>({...o,...qm(a,n,i)}),{})}function Xm(e,n,i){return Jm(e.keys,n,i)}function Vm(e,n,i){const r=Xm(e,n,i);return ne(r)}function Ym(e){const[n,i]=[e.slice(0,1),e.slice(1)];return[n.toLowerCase(),i].join("")}function Zm(e){const[n,i]=[e.slice(0,1),e.slice(1)];return[n.toUpperCase(),i].join("")}function Qm(e){return e.toUpperCase()}function ef(e){return e.toLowerCase()}function tf(e,n,i){const r=Dr(e.pattern);if(!fn(r))return{...e,pattern:os(e.pattern,n)};const s=[...bi(r)].map(m=>_(m)),l=as(s,n),c=ie(l);return Ua([c],i)}function os(e,n){return typeof e=="string"?n==="Uncapitalize"?Ym(e):n==="Capitalize"?Zm(e):n==="Uppercase"?Qm(e):n==="Lowercase"?ef(e):e:e.toString()}function as(e,n){return e.map(i=>rn(i,n))}function rn(e,n,i={}){return St(e)?Vm(e,n,i):wt(e)?tf(e,n,i):Z(e)?ie(as(e.anyOf,n),i):xt(e)?_(os(e.const,n),i):f(e,i)}function nf(e,n={}){return rn(e,"Capitalize",n)}function rf(e,n={}){return rn(e,"Lowercase",n)}function of(e,n={}){return rn(e,"Uncapitalize",n)}function af(e,n={}){return rn(e,"Uppercase",n)}function sf(e,n,i){const r={};for(const o of globalThis.Object.getOwnPropertyNames(e))r[o]=Pi(e[o],n,he(i));return r}function cf(e,n,i){return sf(e.properties,n,i)}function lf(e,n,i){const r=cf(e,n,i);return ne(r)}function df(e,n){return e.map(i=>Yr(i,n))}function pf(e,n){return e.map(i=>Yr(i,n))}function uf(e,n){const{[n]:i,...r}=e;return r}function mf(e,n){return n.reduce((i,r)=>uf(i,r),e)}function ff(e,n){const i=Oe(e,[Le,"$id","required","properties"]),r=mf(e.properties,n);return Y(r,i)}function gf(e){const n=e.reduce((i,r)=>fa(r)?[...i,_(r)]:i,[]);return ie(n)}function Yr(e,n){return Ie(e)?pt(df(e.allOf,n)):Z(e)?ie(pf(e.anyOf,n)):Ue(e)?ff(e,n):Y({})}function Pi(e,n,i){const r=fe(n)?gf(n):n,o=We(n)?ct(n):n,a=ue(e),s=ue(n);return Se(e)?lf(e,o,i):St(n)?yf(e,n,i):a&&s?q("Omit",[e,r],i):!a&&s?q("Omit",[e,r],i):a&&!s?q("Omit",[e,r],i):f({...Yr(e,o),...i})}function hf(e,n,i){return{[n]:Pi(e,[n],he(i))}}function bf(e,n,i){return n.reduce((r,o)=>({...r,...hf(e,o,i)}),{})}function Of(e,n,i){return bf(e,n.keys,i)}function yf(e,n,i){const r=Of(e,n,i);return ne(r)}function xf(e,n,i){const r={};for(const o of globalThis.Object.getOwnPropertyNames(e))r[o]=Ii(e[o],n,he(i));return r}function Sf(e,n,i){return xf(e.properties,n,i)}function wf(e,n,i){const r=Sf(e,n,i);return ne(r)}function Lf(e,n){return e.map(i=>Zr(i,n))}function Pf(e,n){return e.map(i=>Zr(i,n))}function If(e,n){const i={};for(const r of n)r in e&&(i[r]=e[r]);return i}function Ff(e,n){const i=Oe(e,[Le,"$id","required","properties"]),r=If(e.properties,n);return Y(r,i)}function $f(e){const n=e.reduce((i,r)=>fa(r)?[...i,_(r)]:i,[]);return ie(n)}function Zr(e,n){return Ie(e)?pt(Lf(e.allOf,n)):Z(e)?ie(Pf(e.anyOf,n)):Ue(e)?Ff(e,n):Y({})}function Ii(e,n,i){const r=fe(n)?$f(n):n,o=We(n)?ct(n):n,a=ue(e),s=ue(n);return Se(e)?wf(e,o,i):St(n)?Af(e,n,i):a&&s?q("Pick",[e,r],i):!a&&s?q("Pick",[e,r],i):a&&!s?q("Pick",[e,r],i):f({...Zr(e,o),...i})}function Nf(e,n,i){return{[n]:Ii(e,[n],he(i))}}function Cf(e,n,i){return n.reduce((r,o)=>({...r,...Nf(e,o,i)}),{})}function Tf(e,n,i){return Cf(e,n.keys,i)}function Af(e,n,i){const r=Tf(e,n,i);return ne(r)}function jf(e,n){return q("Partial",[q(e,n)])}function Rf(e){return q("Partial",[Fn(e)])}function vf(e){const n={};for(const i of globalThis.Object.getOwnPropertyNames(e))n[i]=dt(e[i]);return n}function Uf(e){const n=Oe(e,[Le,"$id","required","properties"]),i=vf(e.properties);return Y(i,n)}function Ao(e){return e.map(n=>ss(n))}function ss(e){return Xt(e)?jf(e.target,e.parameters):ue(e)?Rf(e.$ref):Ie(e)?pt(Ao(e.allOf)):Z(e)?ie(Ao(e.anyOf)):Ue(e)?Uf(e):ai(e)||Sn(e)||Zt(e)||xt(e)||Pr(e)||Qt(e)||Ln(e)||Ir(e)||Fr(e)?e:Y({})}function Qr(e,n){return Se(e)?Bf(e,n):f({...ss(e),...n})}function Mf(e,n){const i={};for(const r of globalThis.Object.getOwnPropertyNames(e))i[r]=Qr(e[r],he(n));return i}function kf(e,n){return Mf(e.properties,n)}function Bf(e,n){const i=kf(e,n);return ne(i)}function Df(e,n){return q("Required",[q(e,n)])}function Ef(e){return q("Required",[Fn(e)])}function zf(e){const n={};for(const i of globalThis.Object.getOwnPropertyNames(e))n[i]=Oe(e[i],[Xe]);return n}function Kf(e){const n=Oe(e,[Le,"$id","required","properties"]),i=zf(e.properties);return Y(i,n)}function jo(e){return e.map(n=>cs(n))}function cs(e){return Xt(e)?Df(e.target,e.parameters):ue(e)?Ef(e.$ref):Ie(e)?pt(jo(e.allOf)):Z(e)?ie(jo(e.anyOf)):Ue(e)?Kf(e):ai(e)||Sn(e)||Zt(e)||xt(e)||Pr(e)||Qt(e)||Ln(e)||Ir(e)||Fr(e)?e:Y({})}function eo(e,n){return Se(e)?Gf(e,n):f({...cs(e),...n})}function _f(e,n){const i={};for(const r of globalThis.Object.getOwnPropertyNames(e))i[r]=eo(e[r],n);return i}function Hf(e,n){return _f(e.properties,n)}function Gf(e,n){const i=Hf(e,n);return ne(i)}function Wf(e,n){return n.map(i=>ue(i)?to(e,i.$ref):ye(e,i))}function to(e,n){return n in e?ue(e[n])?to(e,e[n].$ref):ye(e,e[n]):D()}function qf(e){return yi(e[0])}function Jf(e){return Oi(e[0],e[1])}function Xf(e){return Kr(e[0])}function Vf(e){return Qr(e[0])}function Yf(e){return Pi(e[0],e[1])}function Zf(e){return Ii(e[0],e[1])}function Qf(e){return eo(e[0])}function eg(e,n,i){const r=Wf(e,i);return n==="Awaited"?qf(r):n==="Index"?Jf(r):n==="KeyOf"?Xf(r):n==="Partial"?Vf(r):n==="Omit"?Yf(r):n==="Pick"?Zf(r):n==="Required"?Qf(r):D()}function tg(e,n){return Ur(ye(e,n))}function ng(e,n){return Mr(ye(e,n))}function ig(e,n,i){return kr(Tn(e,n),ye(e,i))}function rg(e,n,i){return In(Tn(e,n),ye(e,i))}function og(e,n){return pt(Tn(e,n))}function ag(e,n){return zr(ye(e,n))}function sg(e,n){return Y(globalThis.Object.keys(n).reduce((i,r)=>({...i,[r]:ye(e,n[r])}),{}))}function cg(e,n){const[i,r]=[ye(e,rs(n)),Vr(n)],o=xr(n);return o.patternProperties[r]=i,o}function lg(e,n){return ue(n)?{...to(e,n.$ref),[Le]:n[Le]}:n}function dg(e,n){return tn(Tn(e,n))}function pg(e,n){return ie(Tn(e,n))}function Tn(e,n){return n.map(i=>ye(e,i))}function ye(e,n){return ot(n)?f(ye(e,Oe(n,[Xe])),n):Lr(n)?f(ye(e,Oe(n,[xn])),n):di(n)?f(lg(e,n),n):Jt(n)?f(tg(e,n.items),n):oi(n)?f(ng(e,n.items),n):Xt(n)?f(eg(e,n.target,n.parameters)):Vt(n)?f(ig(e,n.parameters,n.returns),n):Yt(n)?f(rg(e,n.parameters,n.returns),n):Ie(n)?f(og(e,n.allOf),n):si(n)?f(ag(e,n.items),n):Ue(n)?f(sg(e,n.properties),n):li(n)?f(cg(e,n)):Lt(n)?f(dg(e,n.items||[]),n):Z(n)?f(pg(e,n.anyOf),n):n}function ug(e,n){return n in e?ye(e,e[n]):D()}function mg(e){return globalThis.Object.getOwnPropertyNames(e).reduce((n,i)=>({...n,[i]:ug(e,i)}),{})}class fg{constructor(n){const i=mg(n),r=this.WithIdentifiers(i);this.$defs=r}Import(n,i){const r={...this.$defs,[n]:f(this.$defs[n],i)};return f({[y]:"Import",$defs:r,$ref:n})}WithIdentifiers(n){return globalThis.Object.getOwnPropertyNames(n).reduce((i,r)=>({...i,[r]:{...n[r],$id:r}}),{})}}function gg(e){return new fg(e)}function hg(e,n){return f({[y]:"Not",not:e},n)}function bg(e,n){return Yt(e)?tn(e.parameters,n):D()}let Og=0;function yg(e,n={}){K(n.$id)&&(n.$id=`T${Og++}`);const i=xr(e({[y]:"This",$ref:`${n.$id}`}));return i.$id=n.$id,f({[ri]:"Recursive",...i},n)}function xg(e,n){const i=z(e)?new globalThis.RegExp(e):e;return f({[y]:"RegExp",type:"RegExp",source:i.source,flags:i.flags},n)}function Sg(e){return Ie(e)?e.allOf:Z(e)?e.anyOf:Lt(e)?e.items??[]:[]}function wg(e){return Sg(e)}function Lg(e,n){return Yt(e)?f(e.returns,n):D(n)}class Pg{constructor(n){this.schema=n}Decode(n){return new Ig(this.schema,n)}}class Ig{constructor(n,i){this.schema=n,this.decode=i}EncodeTransform(n,i){const a={Encode:s=>i[Le].Encode(n(s)),Decode:s=>this.decode(i[Le].Decode(s))};return{...i,[Le]:a}}EncodeSchema(n,i){const r={Decode:this.decode,Encode:n};return{...i,[Le]:r}}Encode(n){return di(this.schema)?this.EncodeTransform(n,this.schema):this.EncodeSchema(n,this.schema)}}function Fg(e){return new Pg(e)}function $g(e={}){return f({[y]:e[y]??"Unsafe"},e)}function Ng(e){return f({[y]:"Void",type:"void"},e)}const Cg=Object.freeze(Object.defineProperty({__proto__:null,Any:un,Argument:Id,Array:Ur,AsyncIterator:Mr,Awaited:yi,BigInt:Er,Boolean:Ra,Capitalize:nf,Composite:au,Const:lu,Constructor:kr,ConstructorParameters:du,Date:Ha,Enum:pu,Exclude:qr,Extends:Wr,Extract:Jr,Function:In,Index:Oi,InstanceType:ym,Instantiate:Gm,Integer:Wm,Intersect:pt,Iterator:zr,KeyOf:Kr,Literal:_,Lowercase:rf,Mapped:Np,Module:gg,Never:D,Not:hg,Null:Ga,Number:$t,Object:Y,Omit:Pi,Optional:dt,Parameters:bg,Partial:Qr,Pick:Ii,Promise:Da,Readonly:lt,ReadonlyOptional:ns,Record:is,Recursive:yg,Ref:Fn,RegExp:xg,Required:eo,Rest:wg,ReturnType:Lg,String:Ot,Symbol:Wa,TemplateLiteral:Ua,Transform:Fg,Tuple:tn,Uint8Array:Ja,Uncapitalize:of,Undefined:qa,Union:ie,Unknown:Si,Unsafe:$g,Uppercase:af,Void:Ng},Symbol.toStringTag,{value:"Module"})),t=Cg;var Tg=["Arial","Calibri","Cambria","Consolas","Courier New","Georgia","Segoe UI","Tahoma","Times New Roman","Trebuchet MS","Verdana","Helvetica","Helvetica Neue","Menlo","Monaco"];function N0(e){const n=e.toLowerCase();return Tg.some(i=>i.toLowerCase()===n)}var gn=t.String({description:"Font family name. Prefer a SAFE_FONTS entry (Arial, Calibri, Cambria, Consolas, Courier New, Georgia, Segoe UI, Tahoma, Times New Roman, Trebuchet MS, Verdana, Helvetica, Helvetica Neue, Menlo, Monaco) for zero-setup rendering. For any other font, register it in props.fontRegistry[] and reference it here by family. Unregistered non-safe names render with a host fallback.",examples:["Arial","Calibri","Georgia","Inter","Roboto"]}),An=t.Number({minimum:100,maximum:900,description:"OpenType weight (100 thin ... 900 black). Default 400."}),Fi=t.Boolean({description:"Whether this source is italic. Default false."}),Ag=t.Object({kind:t.Literal("safe"),family:t.String({description:"A SAFE_FONTS name — installed with Office."})},{additionalProperties:!1,description:"Office-installed font — no embedding"}),jg=t.Object({kind:t.Literal("google"),family:t.String({description:'Exact Google Fonts family name (e.g. "Inter").'}),weights:t.Optional(t.Array(An,{description:"Weights to fetch. Default [400, 700]."})),italics:t.Optional(t.Boolean({description:"Include italic variants. Default false."}))},{additionalProperties:!1,description:"Google Fonts — auto-fetched and embedded"}),Rg=t.Object({kind:t.Literal("file"),path:t.String({description:"Path to a .ttf/.otf file. Relative paths are resolved against the JSON document file."}),weight:t.Optional(An),italic:t.Optional(Fi)},{additionalProperties:!1,description:"Local font file to embed"}),vg=t.Object({kind:t.Literal("url"),url:t.String({description:"HTTPS URL of a TTF or OTF file."}),weight:t.Optional(An),italic:t.Optional(Fi)},{additionalProperties:!1,description:"Direct TTF/OTF URL (non-Google CDN)"}),Ug=t.Object({kind:t.Literal("variable"),url:t.String({description:"HTTPS URL of a variable TTF (`fvar` axis table required)."}),weight:An,italic:t.Optional(Fi),axes:t.Optional(t.Record(t.String(),t.Number(),{description:"Additional axis pin values (e.g. `{ ital: 1, opsz: 14 }`) merged on top of the derived `wght` pin. Uncommon — the `weight` field is usually enough."}))},{additionalProperties:!1,description:"Variable-font instancer. The fetcher pins `wght` to `weight` (plus any `axes` overrides) and emits a clean static TTF, bypassing upstream distributions that collapse multiple static weights onto the same glyph geometry."}),Mg=t.Object({kind:t.Literal("data"),data:t.String({description:"Base64-encoded TTF/OTF or data: URL (data:font/ttf;base64,...). Makes the JSON self-contained at the cost of size."}),weight:t.Optional(An),italic:t.Optional(Fi)},{additionalProperties:!1,description:"Inline base64 font — portable"}),kg=t.Union([Ag,jg,Rg,Mg,vg,Ug],{description:'A single font variant source. Use kind:"safe" for installed fonts, kind:"google" for Google Fonts, kind:"file" for local files, kind:"data" for base64, kind:"url" for direct HTTPS TTF/OTF URLs, kind:"variable" to instance a variable TTF at a specific weight.'}),Bg=t.Union([t.Literal("sans"),t.Literal("serif"),t.Literal("mono"),t.Literal("display"),t.Literal("handwriting")],{description:"Broad category used for fallback selection"}),Dg=t.Object({id:t.String({description:'Registry key. By convention, match the display family name ("Inter", "Roboto Slab").'}),family:t.String({description:"Display family used in font.family / fontFace / theme.fonts.*. Usually identical to id."}),category:t.Optional(Bg),sources:t.Array(kg,{minItems:1,description:"One or more weight/style variants. List at least a regular (weight 400, italic false)."})},{additionalProperties:!1,description:"A font registered for this document. Referenced by family from font.family, fontFace, and theme.fonts.*."}),$i=t.Array(Dg,{description:"Document-scoped font registry. Every non-safe font used in this document must be registered here."}),Eg=t.String({pattern:"^#?[0-9A-Fa-f]{6}$",description:"Hex color (e.g. #FF0000)"}),zg=["primary","secondary","accent","background","text","text2","background2","accent4","accent5","accent6"],Kg=["accent1","accent2","accent3","tx1","tx2","bg1","bg2"],Ni=t.Union([Eg,...zg.map(e=>t.Literal(e)),...Kg.map(e=>t.Literal(e))],{description:"Hex color or semantic theme color name"}),ls=["title","subtitle","heading1","heading2","heading3","body","caption"],ds=t.Union(ls.map(e=>t.Literal(e)),{description:"Predefined style name"}),Ci=t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right")],{description:"Horizontal alignment options"}),Ti=t.Union([t.Literal("top"),t.Literal("middle"),t.Literal("bottom")],{description:"Vertical alignment options"}),no=t.Object({type:t.Optional(t.Union([t.Literal("outer"),t.Literal("inner")],{description:"Shadow type"})),color:t.Optional(Ni),blur:t.Optional(t.Number({description:"Shadow blur radius in points"})),offset:t.Optional(t.Number({description:"Shadow offset in points"})),angle:t.Optional(t.Number({description:"Shadow angle in degrees"})),opacity:t.Optional(t.Number({minimum:0,maximum:1,description:"Shadow opacity (0-1)"}))},{description:"Shadow configuration",additionalProperties:!1}),Ct=t.Object({column:t.Number({minimum:0,description:"Starting column (0-indexed)"}),row:t.Number({minimum:0,description:"Starting row (0-indexed)"}),columnSpan:t.Optional(t.Number({minimum:1,description:"Number of columns to span (default: 1)"})),rowSpan:t.Optional(t.Number({minimum:1,description:"Number of rows to span (default: 1)"}))},{additionalProperties:!1,description:"Grid-based positioning"}),_g=t.Object({text:t.String({description:"Run text content"}),color:t.Optional(t.String({description:"Run color (hex without # or semantic theme name)"})),bold:t.Optional(t.Boolean({description:"Bold run"})),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Per-run weight (100–900). Overrides `bold` when set — renderer picks the closest embedded variant via CSS font-matching."})),italic:t.Optional(t.Boolean({description:"Italic run"})),underline:t.Optional(t.Union([t.Boolean({description:"Simple underline toggle"}),t.Object({style:t.Optional(t.Union([t.Literal("sng"),t.Literal("dbl"),t.Literal("dash"),t.Literal("dotted")])),color:t.Optional(t.String({description:"Underline color (hex)"}))},{additionalProperties:!1})])),strike:t.Optional(t.Boolean({description:"Strikethrough run"})),fontSize:t.Optional(t.Number({minimum:1,description:"Run font size in points"})),fontFace:t.Optional(t.String({description:"Run font family"})),superscript:t.Optional(t.Boolean({description:"Render run as superscript"})),subscript:t.Optional(t.Boolean({description:"Render run as subscript"})),charSpacing:t.Optional(t.Number({description:"Character spacing in points"})),breakLine:t.Optional(t.Boolean({description:"Insert line break after this run"}))},{description:"A styled text run. Run options override component-level defaults.",additionalProperties:!1}),Ai=t.Object({text:t.Optional(t.String({description:"Text content to display. Mutually exclusive with `runs` — set exactly one of the two."})),runs:t.Optional(t.Array(_g,{minItems:1,description:"Rich text runs with per-run styling, rendered as one text block. Mutually exclusive with `text` — set exactly one of the two. Component-level props (align, valign, fill, lineSpacing, position…) still apply to the whole block."})),x:t.Optional(t.Union([t.Number({description:"X position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"X as percentage"})])),y:t.Optional(t.Union([t.Number({description:"Y position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Y as percentage"})])),w:t.Optional(t.Union([t.Number({description:"Width in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Width as percentage"})])),h:t.Optional(t.Union([t.Number({description:"Height in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Height as percentage"})])),fontSize:t.Optional(t.Number({minimum:1,description:"Font size in points"})),fontFace:t.Optional(gn),color:t.Optional(t.String({description:'Text color (hex without #, e.g., "FF0000")'})),bold:t.Optional(t.Boolean({description:"Bold text"})),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Per-run weight (100–900). Renderer picks the closest embedded variant via CSS font-matching and references it through a synthetic family alias. Overrides `bold` when set."})),italic:t.Optional(t.Boolean({description:"Italic text"})),underline:t.Optional(t.Union([t.Boolean({description:"Simple underline toggle"}),t.Object({style:t.Optional(t.Union([t.Literal("sng"),t.Literal("dbl"),t.Literal("dash"),t.Literal("dotted")])),color:t.Optional(t.String({description:"Underline color (hex)"}))},{additionalProperties:!1})])),strike:t.Optional(t.Boolean({description:"Strikethrough text"})),language:t.Optional(t.String({pattern:"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$",description:'Language tag (BCP-47, e.g. "en-US", "fr-FR") for spell-checking this text. Overrides the presentation default.',examples:["en-US","fr-FR","de-DE","it-IT","es-ES"]})),align:t.Optional(Ci),valign:t.Optional(Ti),breakLine:t.Optional(t.Boolean({description:"Add line break after text"})),bullet:t.Optional(t.Union([t.Boolean({description:"Enable default bullet"}),t.Object({type:t.Optional(t.Union([t.Literal("bullet"),t.Literal("number")])),style:t.Optional(t.String({description:"Bullet character or style"})),startAt:t.Optional(t.Number({description:"Starting number for numbered lists"}))},{additionalProperties:!1})])),margin:t.Optional(t.Union([t.Number({description:"Margin in points (all sides)"}),t.Array(t.Number(),{description:"Margins as [top, right, bottom, left] in points",minItems:4,maxItems:4})])),rotate:t.Optional(t.Number({description:"Rotation angle in degrees"})),shadow:t.Optional(no),fill:t.Optional(t.Object({color:t.String({description:"Fill color (hex without #)"}),transparency:t.Optional(t.Number({minimum:0,maximum:100,description:"Fill transparency (0-100)"}))},{additionalProperties:!1})),hyperlink:t.Optional(t.Object({url:t.Optional(t.String({description:"Hyperlink URL"})),slide:t.Optional(t.Number({description:"Slide number to link to"})),tooltip:t.Optional(t.String({description:"Hyperlink tooltip"}))},{additionalProperties:!1})),lineSpacing:t.Optional(t.Number({description:"Line spacing in points"})),lineSpacingMultiple:t.Optional(t.Number({minimum:.1,maximum:10,description:"Line spacing as a multiple of the font size (e.g. 0.9 = 90%). Takes precedence over lineSpacing."})),charSpacing:t.Optional(t.Number({description:"Character spacing in points (positive = wider, negative = tighter)"})),paraSpaceBefore:t.Optional(t.Number({description:"Space before paragraph in points"})),paraSpaceAfter:t.Optional(t.Number({description:"Space after paragraph in points"})),grid:t.Optional(Ct),style:t.Optional(ds)},{description:"Text component props",additionalProperties:!1}),ji=t.Object({path:t.Optional(t.String({description:"Image file path or URL (mutually exclusive with base64 and svg)"})),base64:t.Optional(t.String({description:"Base64-encoded image data in data URI format (mutually exclusive with path and svg)"})),svg:t.Optional(t.String({description:'Raw inline SVG markup, e.g. "<svg xmlns=\\"http://www.w3.org/2000/svg\\" viewBox=\\"0 0 24 24\\">...</svg>" (mutually exclusive with path and base64). Wrapped into an image/svg+xml data URI and embedded as a vector (PowerPoint 2016+); intrinsic size taken from the SVG viewBox/width/height when w/h omitted.'})),x:t.Optional(t.Union([t.Number({description:"X position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"X as percentage"})])),y:t.Optional(t.Union([t.Number({description:"Y position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Y as percentage"})])),w:t.Optional(t.Union([t.Number({description:"Width in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Width as percentage"})])),h:t.Optional(t.Union([t.Number({description:"Height in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Height as percentage"})])),sizing:t.Optional(t.Object({type:t.Union([t.Literal("contain"),t.Literal("cover"),t.Literal("crop")],{description:"Image sizing strategy"}),w:t.Optional(t.Number({description:"Target width in inches"})),h:t.Optional(t.Number({description:"Target height in inches"}))},{description:"Image sizing options",additionalProperties:!1})),rotate:t.Optional(t.Number({description:"Rotation angle in degrees"})),rounding:t.Optional(t.Boolean({description:"Apply rounded corners to image"})),shadow:t.Optional(no),hyperlink:t.Optional(t.Object({url:t.Optional(t.String({description:"Hyperlink URL"})),slide:t.Optional(t.Number({description:"Slide number to link to"})),tooltip:t.Optional(t.String({description:"Hyperlink tooltip"}))},{additionalProperties:!1})),alt:t.Optional(t.String({description:"Alternative text for accessibility"})),grid:t.Optional(Ct)},{description:"PPTX image component props",additionalProperties:!1}),Hg=t.Union([t.Literal("rect"),t.Literal("roundRect"),t.Literal("ellipse"),t.Literal("triangle"),t.Literal("diamond"),t.Literal("pentagon"),t.Literal("hexagon"),t.Literal("star5"),t.Literal("star6"),t.Literal("line"),t.Literal("arc"),t.Literal("pie"),t.Literal("blockArc"),t.Literal("chord"),t.Literal("arrow"),t.Literal("chevron"),t.Literal("cloud"),t.Literal("heart"),t.Literal("lightning")],{description:"Shape type"}),Gg=t.Object({text:t.String(),fontSize:t.Optional(t.Number({minimum:1})),fontFace:t.Optional(t.String()),color:t.Optional(t.String({description:"Segment color (hex without # or semantic name)"})),bold:t.Optional(t.Boolean()),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900})),italic:t.Optional(t.Boolean()),breakLine:t.Optional(t.Boolean({description:"Insert line break after this segment"})),spaceBefore:t.Optional(t.Number({minimum:0,description:"Space before paragraph in points"})),spaceAfter:t.Optional(t.Number({minimum:0,description:"Space after paragraph in points"})),charSpacing:t.Optional(t.Number({description:"Character spacing in points"}))},{additionalProperties:!1}),Wg=["pct5","pct10","pct20","pct25","pct30","pct40","pct50","pct60","pct70","pct75","pct80","pct90","horz","vert","ltHorz","ltVert","dkHorz","dkVert","narHorz","narVert","dashHorz","dashVert","cross","dnDiag","upDiag","ltDnDiag","ltUpDiag","dkDnDiag","dkUpDiag","wdDnDiag","wdUpDiag","dashDnDiag","dashUpDiag","diagCross","smCheck","lgCheck","smGrid","lgGrid","dotGrid","smConfetti","lgConfetti","horzBrick","diagBrick","solidDmnd","openDmnd","dotDmnd","plaid","sphere","weave","divot","shingle","wave","trellis","zigZag"],qg=t.Object({color:t.String({description:"Stop color (hex without # or semantic theme name)"}),pos:t.Number({minimum:0,maximum:100,description:"Stop position along the gradient (0-100)"}),transparency:t.Optional(t.Number({minimum:0,maximum:100,description:"Stop transparency (0-100)"}))},{additionalProperties:!1,description:"Gradient color stop"}),ps=t.Object({type:t.Union([t.Literal("linear"),t.Literal("radial")],{description:"Gradient type"}),angle:t.Optional(t.Number({minimum:0,maximum:360,description:"Gradient angle in degrees for linear gradients (0 = left→right, 90 = top→bottom). Default: 0."})),stops:t.Array(qg,{minItems:2,description:"Gradient color stops (at least 2)"}),focus:t.Optional(t.Union([t.Literal("center"),t.Literal("topLeft"),t.Literal("topRight"),t.Literal("bottomLeft"),t.Literal("bottomRight")],{description:'Focus point for radial gradients (default: "center")'}))},{additionalProperties:!1,description:"Gradient fill configuration"}),Jg=t.Object({preset:t.Union(Wg.map(e=>t.Literal(e)),{description:"OOXML pattern preset name (a:pattFill prst value)"}),foreground:t.String({description:"Pattern foreground color (hex without # or semantic name)"}),background:t.String({description:"Pattern background color (hex without # or semantic name)"})},{additionalProperties:!1,description:"Pattern fill configuration"}),Ri=t.Object({type:Hg,x:t.Optional(t.Union([t.Number({description:"X position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"X as percentage"})])),y:t.Optional(t.Union([t.Number({description:"Y position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Y as percentage"})])),w:t.Optional(t.Union([t.Number({description:"Width in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Width as percentage"})])),h:t.Optional(t.Union([t.Number({description:"Height in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Height as percentage"})])),fill:t.Optional(t.Object({color:t.Optional(t.String({description:"Fill color (hex without #)"})),transparency:t.Optional(t.Number({minimum:0,maximum:100,description:"Fill transparency (0-100)"})),gradient:t.Optional(ps),pattern:t.Optional(Jg)},{additionalProperties:!1})),line:t.Optional(t.Object({color:t.Optional(t.String({description:"Line color (hex without #)"})),width:t.Optional(t.Number({minimum:0,description:"Line width in points"})),dashType:t.Optional(t.Union([t.Literal("solid"),t.Literal("dash"),t.Literal("dot"),t.Literal("dashDot")]))},{additionalProperties:!1})),text:t.Optional(t.Union([t.String({description:"Plain text"}),t.Array(Gg,{description:"Rich text segments with per-segment formatting"})],{description:"Text content inside the shape"})),fontSize:t.Optional(t.Number({minimum:1,description:"Font size for shape text"})),fontFace:t.Optional(t.String({description:"Font family for shape text"})),fontColor:t.Optional(t.String({description:"Font color for shape text (hex without #)"})),charSpacing:t.Optional(t.Number({description:"Character spacing in points for shape text"})),bold:t.Optional(t.Boolean({description:"Bold shape text"})),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Per-shape weight (100–900). Overrides `bold` when set."})),italic:t.Optional(t.Boolean({description:"Italic shape text"})),align:t.Optional(Ci),valign:t.Optional(Ti),rotate:t.Optional(t.Number({description:"Rotation angle in degrees"})),angleRange:t.Optional(t.Array(t.Number(),{minItems:2,maxItems:2,description:"Shape arc [start, end] angles in degrees (arc/pie/blockArc/chord shapes)"})),flipH:t.Optional(t.Boolean({description:"Flip shape horizontally"})),flipV:t.Optional(t.Boolean({description:"Flip shape vertically"})),shadow:t.Optional(no),rectRadius:t.Optional(t.Number({minimum:0,description:"Corner radius for roundRect shape in inches"})),grid:t.Optional(Ct),style:t.Optional(ds)},{description:"Shape component props",additionalProperties:!1}),Xg=t.Union([t.String({description:"Simple text cell"}),t.Object({text:t.String({description:"Cell text content"}),color:t.Optional(t.String({description:"Text color (hex without #)"})),fill:t.Optional(t.String({description:"Cell background color (hex without #)"})),fontSize:t.Optional(t.Number({description:"Font size in points"})),fontFace:t.Optional(t.String({description:"Font family"})),bold:t.Optional(t.Boolean({description:"Bold text"})),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Per-cell weight (100–900). Overrides `bold` when set."})),italic:t.Optional(t.Boolean({description:"Italic text"})),align:t.Optional(Ci),valign:t.Optional(Ti),colspan:t.Optional(t.Number({minimum:1,description:"Column span"})),rowspan:t.Optional(t.Number({minimum:1,description:"Row span"})),margin:t.Optional(t.Union([t.Number({description:"Margin in points (all sides)"}),t.Array(t.Number(),{minItems:4,maxItems:4})]))},{additionalProperties:!1})]),vi=t.Object({rows:t.Array(t.Array(Xg,{description:"Row of cells"}),{description:"Table rows (array of arrays)",minItems:1}),x:t.Optional(t.Union([t.Number({description:"X position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"X as percentage"})])),y:t.Optional(t.Union([t.Number({description:"Y position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Y as percentage"})])),w:t.Optional(t.Union([t.Number({description:"Width in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Width as percentage"})])),h:t.Optional(t.Union([t.Number({description:"Height in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Height as percentage"})])),colW:t.Optional(t.Union([t.Number({description:"Uniform column width in inches"}),t.Array(t.Number(),{description:"Individual column widths in inches"})])),rowH:t.Optional(t.Union([t.Number({description:"Uniform row height in inches"}),t.Array(t.Number(),{description:"Individual row heights in inches"})])),border:t.Optional(t.Object({type:t.Optional(t.Union([t.Literal("solid"),t.Literal("dash"),t.Literal("dot"),t.Literal("none")])),pt:t.Optional(t.Number({minimum:0,description:"Border width in points"})),color:t.Optional(t.String({description:"Border color (hex without #)"}))},{additionalProperties:!1})),fill:t.Optional(t.String({description:"Table background color (hex without #)"})),fontSize:t.Optional(t.Number({minimum:1,description:"Default font size for all cells"})),fontFace:t.Optional(t.String({description:"Default font family for all cells"})),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Default weight for all cells (100–900). Same sub-family aliasing as the per-cell `fontWeight`; a cell that sets its own `fontWeight` or `bold` opts out."})),color:t.Optional(t.String({description:"Default text color for all cells (hex without #)"})),align:t.Optional(Ci),valign:t.Optional(Ti),autoPage:t.Optional(t.Boolean({description:"Auto-paginate table across multiple slides when content overflows"})),autoPageRepeatHeader:t.Optional(t.Boolean({description:"Repeat first row as header on each auto-paged slide"})),margin:t.Optional(t.Union([t.Number({description:"Cell margin in points (all sides)"}),t.Array(t.Number(),{minItems:4,maxItems:4})])),borderRadius:t.Optional(t.Number({minimum:0,description:"Rounded corner radius in inches. Renders a roundRect shape behind the table."})),grid:t.Optional(Ct)},{description:"PPTX table component props",additionalProperties:!1}),Ui=t.Object({options:t.Intersect([t.Record(t.String(),t.Unknown()),t.Object({chart:t.Object({width:t.Number(),height:t.Number()})})]),scale:t.Optional(t.Number()),serverUrl:t.Optional(t.String({description:"Highcharts Export Server URL (default: http://localhost:7801)"})),resources:t.Optional(t.Object({css:t.Optional(t.String()),js:t.Optional(t.String()),files:t.Optional(t.Array(t.String()))})),x:t.Optional(t.Union([t.Number({description:"X position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"X as percentage"})])),y:t.Optional(t.Union([t.Number({description:"Y position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Y as percentage"})])),w:t.Optional(t.Union([t.Number({description:"Width in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Width as percentage"})])),h:t.Optional(t.Union([t.Number({description:"Height in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Height as percentage"})])),grid:t.Optional(Ct)},{description:"PPTX Highcharts component props",additionalProperties:!1}),En=t.Union([t.Number(),t.String({pattern:"^\\d+(\\.\\d+)?%$"})]),Vg=t.Union([t.Literal("area"),t.Literal("bar"),t.Literal("bar3D"),t.Literal("bubble"),t.Literal("doughnut"),t.Literal("line"),t.Literal("pie"),t.Literal("radar"),t.Literal("scatter")],{description:"Chart type"}),Yg=t.Object({name:t.Optional(t.String({description:"Series name"})),labels:t.Optional(t.Array(t.String(),{description:"Category labels"})),values:t.Optional(t.Array(t.Number(),{description:"Data values"})),sizes:t.Optional(t.Array(t.Number(),{description:"Bubble sizes (bubble charts only)"}))},{additionalProperties:!1}),Ro=t.Object({style:t.Optional(t.Union([t.Literal("solid"),t.Literal("dash"),t.Literal("dot"),t.Literal("none")],{description:"Grid line style"})),size:t.Optional(t.Number({minimum:0,description:"Grid line width (points)"})),color:t.Optional(t.String({description:"Grid line color (hex or semantic)"}))},{additionalProperties:!1,description:"Axis grid line styling"}),Mi=t.Object({type:Vg,data:t.Array(Yg,{description:"Chart data series",minItems:1}),showLegend:t.Optional(t.Boolean({description:"Show chart legend"})),showTitle:t.Optional(t.Boolean({description:"Show chart title"})),showValue:t.Optional(t.Boolean({description:"Show data values"})),showPercent:t.Optional(t.Boolean({description:"Show percentages (pie/doughnut)"})),showLabel:t.Optional(t.Boolean({description:"Show category labels on data points"})),showSerName:t.Optional(t.Boolean({description:"Show series name on data points"})),title:t.Optional(t.String({description:"Chart title text"})),titleFontSize:t.Optional(t.Number({description:"Title font size (points)"})),titleColor:t.Optional(t.String({description:"Title color (hex or semantic)"})),titleFontFace:t.Optional(t.String({description:"Title font face"})),titleFontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Title weight (100–900). Rendered as a sub-family alias — see `dataLabelFontWeight`."})),chartColors:t.Optional(t.Array(t.String(),{description:"Series colors (hex or semantic theme names). Defaults to theme palette."})),dataBorder:t.Optional(t.Object({pt:t.Number({minimum:0,description:"Border width (points)"}),color:t.String({description:"Border color (hex or semantic)"})},{additionalProperties:!1,description:"Outline on data elements (bars, slices, areas)"})),legendPos:t.Optional(t.Union([t.Literal("b"),t.Literal("l"),t.Literal("r"),t.Literal("t"),t.Literal("tr")],{description:"Legend position"})),legendFontSize:t.Optional(t.Number({description:"Legend font size"})),legendFontFace:t.Optional(t.String({description:"Legend font face"})),legendFontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Legend weight (100–900). Rendered as a sub-family alias — see `dataLabelFontWeight`. PowerPoint gives the legend no bold toggle, so 400 and 700 both render Regular (700 warns)."})),legendColor:t.Optional(t.String({description:"Legend text color"})),catAxisTitle:t.Optional(t.String({description:"Category axis title"})),catAxisHidden:t.Optional(t.Boolean({description:"Hide category axis"})),catAxisLabelRotate:t.Optional(t.Number({description:"Category axis label rotation (degrees)"})),catAxisLabelFontSize:t.Optional(t.Number({description:"Category axis label font size"})),catAxisLabelColor:t.Optional(t.String({description:"Category axis label color (hex or semantic)"})),catAxisLabelFontFace:t.Optional(t.String({description:"Category axis label font face"})),catAxisLabelFontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Category axis label weight (100–900). Rendered as a sub-family alias — see `dataLabelFontWeight`."})),catGridLine:t.Optional(Ro),valAxisTitle:t.Optional(t.String({description:"Value axis title"})),valAxisHidden:t.Optional(t.Boolean({description:"Hide value axis"})),valAxisMinVal:t.Optional(t.Number({description:"Value axis minimum"})),valAxisMaxVal:t.Optional(t.Number({description:"Value axis maximum"})),valAxisLabelFormatCode:t.Optional(t.String({description:'Value axis label format (e.g. "$0.00", "#%")'})),valAxisMajorUnit:t.Optional(t.Number({description:"Value axis major unit / tick interval"})),valAxisLabelColor:t.Optional(t.String({description:"Value axis label color (hex or semantic)"})),valAxisLabelFontFace:t.Optional(t.String({description:"Value axis label font face"})),valAxisLabelFontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Value axis label weight (100–900). Rendered as a sub-family alias — see `dataLabelFontWeight`."})),valAxisLabelFontSize:t.Optional(t.Number({description:"Value axis label font size"})),valGridLine:t.Optional(Ro),catAxisLineShow:t.Optional(t.Boolean({description:"Show the category axis line"})),valAxisLineShow:t.Optional(t.Boolean({description:"Show the value axis line"})),barDir:t.Optional(t.Union([t.Literal("bar"),t.Literal("col")],{description:'Bar direction: "bar" (horizontal) or "col" (vertical, default)'})),barGrouping:t.Optional(t.Union([t.Literal("clustered"),t.Literal("stacked"),t.Literal("percentStacked")],{description:"Bar grouping style"})),barGapWidthPct:t.Optional(t.Number({minimum:0,maximum:500,description:"Bar gap width (0-500%)"})),barOverlapPct:t.Optional(t.Number({minimum:-100,maximum:100,description:"Overlap between series bars (-100 to 100%). 100 = fully overlapped, negative = gap."})),lineSmooth:t.Optional(t.Boolean({description:"Smooth lines"})),lineDataSymbol:t.Optional(t.Union([t.Literal("circle"),t.Literal("dash"),t.Literal("diamond"),t.Literal("dot"),t.Literal("none"),t.Literal("square"),t.Literal("triangle")],{description:"Line data point marker symbol"})),lineSize:t.Optional(t.Number({description:"Line width (points)"})),lineDataSymbolSize:t.Optional(t.Number({minimum:2,maximum:72,description:"Line data point marker size (points)"})),firstSliceAng:t.Optional(t.Number({minimum:0,maximum:359,description:"Angle of first slice (degrees)"})),holeSize:t.Optional(t.Number({minimum:10,maximum:90,description:"Doughnut hole size (%)"})),radarStyle:t.Optional(t.Union([t.Literal("standard"),t.Literal("marker"),t.Literal("filled")],{description:"Radar chart style"})),dataLabelColor:t.Optional(t.String({description:"Data label text color"})),dataLabelFontSize:t.Optional(t.Number({description:"Data label font size"})),dataLabelFontFace:t.Optional(t.String({description:"Data label font face"})),dataLabelFontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:'Data label weight (100–900); overrides `dataLabelFontBold`. PowerPoint chart labels carry no numeric weight, so a non-RIBBI weight renders by rewriting the font face to the matching sub-family ("Inter" at 300 → "Inter Light") — 400 and 700 stay on the family and use the bold toggle. Falls back to the theme body font when the sibling font face is unset.'})),dataLabelFontBold:t.Optional(t.Boolean({description:"Bold data labels"})),dataLabelPosition:t.Optional(t.Union([t.Literal("b"),t.Literal("bestFit"),t.Literal("ctr"),t.Literal("l"),t.Literal("r"),t.Literal("t"),t.Literal("inEnd"),t.Literal("outEnd")],{description:"Data label position"})),x:t.Optional(En),y:t.Optional(En),w:t.Optional(En),h:t.Optional(En),grid:t.Optional(Ct)},{description:"Native PowerPoint chart component props",additionalProperties:!1}),tt=[{name:"text",propsSchema:Ai,hasChildren:!1,category:"content",description:"Text element - displays text with formatting, positioning and styling options."},{name:"image",propsSchema:ji,hasChildren:!1,category:"content",description:"Image element - displays images from file path, URL, or base64 data."},{name:"shape",propsSchema:Ri,hasChildren:!1,category:"content",description:"Shape element - draws geometric shapes with optional text, fill, and line styling."},{name:"table",propsSchema:vi,hasChildren:!1,category:"content",description:"Table element - displays tabular data with rows and columns."},{name:"highcharts",propsSchema:Ui,hasChildren:!1,category:"content",description:"Highcharts element - renders charts via Highcharts Export Server."},{name:"chart",propsSchema:Mi,hasChildren:!1,category:"content",description:"Native PowerPoint chart - editable, scalable, no external server needed."}];function Rt(e){return t.Object({name:t.Literal(e.name),id:t.Optional(t.String()),enabled:t.Optional(t.Boolean({default:!0,description:"When false, this component is filtered out and not rendered. Defaults to true."})),props:e.propsSchema},{additionalProperties:!1,description:e.description})}var Zg=t.Union([Rt(tt[0]),Rt(tt[1]),Rt(tt[2]),Rt(tt[3]),Rt(tt[4]),Rt(tt[5])],{$id:"PptxSlideContent",discriminator:{propertyName:"name"},description:"A single PPTX slide content element (text, image, shape, table, highcharts, or chart)."}),Qg=t.Partial(Ai),eh=t.Partial(ji),th=t.Partial(Ri),nh=t.Partial(vi),ih=t.Partial(Ui),rh=t.Partial(Mi),us=t.Object({text:t.Optional(Qg),image:t.Optional(eh),shape:t.Optional(th),table:t.Optional(nh),highcharts:t.Optional(ih),chart:t.Optional(rh)},{additionalProperties:!0}),Me={};function oh(){return typeof process>"u"||!Me?!1:!!(Me.CI||Me.GITHUB_ACTIONS||Me.GITLAB_CI)}function ah(){var e;return typeof process>"u"||Me!=null&&Me.NO_COLOR?!1:Me!=null&&Me.FORCE_COLOR||(e=process.stdout)!=null&&e.isTTY?!0:!oh()}ah();var sh=/^(\d+)\.(\d+)\.(\d+)$/;function vo(e){const n=e.match(sh);if(!n)throw new Error(`Invalid semver: "${e}". Expected format: major.minor.patch`);return{major:Number(n[1]),minor:Number(n[2]),patch:Number(n[3])}}function ch(e,n){const i=vo(e),r=vo(n);return i.major-r.major||i.minor-r.minor||i.patch-r.patch}function ms(e){if(e.length===0)throw new Error("Cannot determine latest version from empty array");return e.reduce((n,i)=>ch(i,n)>0?i:n)}function lh(e){switch(e.errorType){case d.ArrayContains:return"Expected array to contain at least one matching value";case d.ArrayMaxContains:return`Expected array to contain no more than ${e.schema.maxContains} matching values`;case d.ArrayMinContains:return`Expected array to contain at least ${e.schema.minContains} matching values`;case d.ArrayMaxItems:return`Expected array length to be less or equal to ${e.schema.maxItems}`;case d.ArrayMinItems:return`Expected array length to be greater or equal to ${e.schema.minItems}`;case d.ArrayUniqueItems:return"Expected array elements to be unique";case d.Array:return"Expected array";case d.AsyncIterator:return"Expected AsyncIterator";case d.BigIntExclusiveMaximum:return`Expected bigint to be less than ${e.schema.exclusiveMaximum}`;case d.BigIntExclusiveMinimum:return`Expected bigint to be greater than ${e.schema.exclusiveMinimum}`;case d.BigIntMaximum:return`Expected bigint to be less or equal to ${e.schema.maximum}`;case d.BigIntMinimum:return`Expected bigint to be greater or equal to ${e.schema.minimum}`;case d.BigIntMultipleOf:return`Expected bigint to be a multiple of ${e.schema.multipleOf}`;case d.BigInt:return"Expected bigint";case d.Boolean:return"Expected boolean";case d.DateExclusiveMinimumTimestamp:return`Expected Date timestamp to be greater than ${e.schema.exclusiveMinimumTimestamp}`;case d.DateExclusiveMaximumTimestamp:return`Expected Date timestamp to be less than ${e.schema.exclusiveMaximumTimestamp}`;case d.DateMinimumTimestamp:return`Expected Date timestamp to be greater or equal to ${e.schema.minimumTimestamp}`;case d.DateMaximumTimestamp:return`Expected Date timestamp to be less or equal to ${e.schema.maximumTimestamp}`;case d.DateMultipleOfTimestamp:return`Expected Date timestamp to be a multiple of ${e.schema.multipleOfTimestamp}`;case d.Date:return"Expected Date";case d.Function:return"Expected function";case d.IntegerExclusiveMaximum:return`Expected integer to be less than ${e.schema.exclusiveMaximum}`;case d.IntegerExclusiveMinimum:return`Expected integer to be greater than ${e.schema.exclusiveMinimum}`;case d.IntegerMaximum:return`Expected integer to be less or equal to ${e.schema.maximum}`;case d.IntegerMinimum:return`Expected integer to be greater or equal to ${e.schema.minimum}`;case d.IntegerMultipleOf:return`Expected integer to be a multiple of ${e.schema.multipleOf}`;case d.Integer:return"Expected integer";case d.IntersectUnevaluatedProperties:return"Unexpected property";case d.Intersect:return"Expected all values to match";case d.Iterator:return"Expected Iterator";case d.Literal:return`Expected ${typeof e.schema.const=="string"?`'${e.schema.const}'`:e.schema.const}`;case d.Never:return"Never";case d.Not:return"Value should not match";case d.Null:return"Expected null";case d.NumberExclusiveMaximum:return`Expected number to be less than ${e.schema.exclusiveMaximum}`;case d.NumberExclusiveMinimum:return`Expected number to be greater than ${e.schema.exclusiveMinimum}`;case d.NumberMaximum:return`Expected number to be less or equal to ${e.schema.maximum}`;case d.NumberMinimum:return`Expected number to be greater or equal to ${e.schema.minimum}`;case d.NumberMultipleOf:return`Expected number to be a multiple of ${e.schema.multipleOf}`;case d.Number:return"Expected number";case d.Object:return"Expected object";case d.ObjectAdditionalProperties:return"Unexpected property";case d.ObjectMaxProperties:return`Expected object to have no more than ${e.schema.maxProperties} properties`;case d.ObjectMinProperties:return`Expected object to have at least ${e.schema.minProperties} properties`;case d.ObjectRequiredProperty:return"Expected required property";case d.Promise:return"Expected Promise";case d.RegExp:return"Expected string to match regular expression";case d.StringFormatUnknown:return`Unknown format '${e.schema.format}'`;case d.StringFormat:return`Expected string to match '${e.schema.format}' format`;case d.StringMaxLength:return`Expected string length less or equal to ${e.schema.maxLength}`;case d.StringMinLength:return`Expected string length greater or equal to ${e.schema.minLength}`;case d.StringPattern:return`Expected string to match '${e.schema.pattern}'`;case d.String:return"Expected string";case d.Symbol:return"Expected symbol";case d.TupleLength:return`Expected tuple to have ${e.schema.maxItems||0} elements`;case d.Tuple:return"Expected tuple";case d.Uint8ArrayMaxByteLength:return`Expected byte length less or equal to ${e.schema.maxByteLength}`;case d.Uint8ArrayMinByteLength:return`Expected byte length greater or equal to ${e.schema.minByteLength}`;case d.Uint8Array:return"Expected Uint8Array";case d.Undefined:return"Expected undefined";case d.Union:return"Expected union value";case d.Void:return"Expected void";case d.Kind:return`Expected kind '${e.schema[y]}'`;default:return"Unknown error type"}}let dh=lh;function ph(){return dh}class uh extends ve{constructor(n){super(`Unable to dereference schema with $id '${n.$ref}'`),this.schema=n}}function mh(e,n){const i=n.find(r=>r.$id===e.$ref);if(i===void 0)throw new uh(e);return Tt(i,n)}function fs(e,n){return!ke(e.$id)||n.some(i=>i.$id===e.$id)||n.push(e),n}function Tt(e,n){return e[y]==="This"||e[y]==="Ref"?mh(e,n):e}class fh extends ve{constructor(n){super("Unable to hash value"),this.value=n}}var xe;(function(e){e[e.Undefined=0]="Undefined",e[e.Null=1]="Null",e[e.Boolean=2]="Boolean",e[e.Number=3]="Number",e[e.String=4]="String",e[e.Object=5]="Object",e[e.Array=6]="Array",e[e.Date=7]="Date",e[e.Uint8Array=8]="Uint8Array",e[e.Symbol=9]="Symbol",e[e.BigInt=10]="BigInt"})(xe||(xe={}));let Bt=BigInt("14695981039346656037");const[gh,hh]=[BigInt("1099511628211"),BigInt("18446744073709551616")],bh=Array.from({length:256}).map((e,n)=>BigInt(n)),gs=new Float64Array(1),hs=new DataView(gs.buffer),bs=new Uint8Array(gs.buffer);function*Oh(e){const n=e===0?1:Math.ceil(Math.floor(Math.log2(e)+1)/8);for(let i=0;i<n;i++)yield e>>8*(n-1-i)&255}function yh(e){ae(xe.Array);for(const n of e)Ht(n)}function xh(e){ae(xe.Boolean),ae(e?1:0)}function Sh(e){ae(xe.BigInt),hs.setBigInt64(0,e);for(const n of bs)ae(n)}function wh(e){ae(xe.Date),Ht(e.getTime())}function Lh(e){ae(xe.Null)}function Ph(e){ae(xe.Number),hs.setFloat64(0,e);for(const n of bs)ae(n)}function Ih(e){ae(xe.Object);for(const n of globalThis.Object.getOwnPropertyNames(e).sort())Ht(n),Ht(e[n])}function Fh(e){ae(xe.String);for(let n=0;n<e.length;n++)for(const i of Oh(e.charCodeAt(n)))ae(i)}function $h(e){ae(xe.Symbol),Ht(e.description)}function Nh(e){ae(xe.Uint8Array);for(let n=0;n<e.length;n++)ae(e[n])}function Ch(e){return ae(xe.Undefined)}function Ht(e){if(Ee(e))return yh(e);if(ti(e))return xh(e);if(ni(e))return Sh(e);if(yn(e))return wh(e);if(ei(e))return Lh();if(He(e))return Ph(e);if(De(e))return Ih(e);if(ke(e))return Fh(e);if(ii(e))return $h(e);if(Sr(e))return Nh(e);if(rt(e))return Ch();throw new fh(e)}function ae(e){Bt=Bt^bh[e],Bt=Bt*gh%hh}function Os(e){return Bt=BigInt("14695981039346656037"),Ht(e),Bt}class Th extends ve{constructor(n){super("Unknown type"),this.schema=n}}function Ah(e){return e[y]==="Any"||e[y]==="Unknown"}function $(e){return e!==void 0}function jh(e,n,i){return!0}function Rh(e,n,i){return!0}function vh(e,n,i){if(!Ee(i)||$(e.minItems)&&!(i.length>=e.minItems)||$(e.maxItems)&&!(i.length<=e.maxItems)||!i.every(a=>X(e.items,n,a))||e.uniqueItems===!0&&!function(){const a=new Set;for(const s of i){const l=Os(s);if(a.has(l))return!1;a.add(l)}return!0}())return!1;if(!($(e.contains)||He(e.minContains)||He(e.maxContains)))return!0;const r=$(e.contains)?e.contains:D(),o=i.reduce((a,s)=>X(r,n,s)?a+1:a,0);return!(o===0||He(e.minContains)&&o<e.minContains||He(e.maxContains)&&o>e.maxContains)}function Uh(e,n,i){return ca(i)}function Mh(e,n,i){return!(!ni(i)||$(e.exclusiveMaximum)&&!(i<e.exclusiveMaximum)||$(e.exclusiveMinimum)&&!(i>e.exclusiveMinimum)||$(e.maximum)&&!(i<=e.maximum)||$(e.minimum)&&!(i>=e.minimum)||$(e.multipleOf)&&i%e.multipleOf!==BigInt(0))}function kh(e,n,i){return ti(i)}function Bh(e,n,i){return X(e.returns,n,i.prototype)}function Dh(e,n,i){return!(!yn(i)||$(e.exclusiveMaximumTimestamp)&&!(i.getTime()<e.exclusiveMaximumTimestamp)||$(e.exclusiveMinimumTimestamp)&&!(i.getTime()>e.exclusiveMinimumTimestamp)||$(e.maximumTimestamp)&&!(i.getTime()<=e.maximumTimestamp)||$(e.minimumTimestamp)&&!(i.getTime()>=e.minimumTimestamp)||$(e.multipleOfTimestamp)&&i.getTime()%e.multipleOfTimestamp!==0)}function Eh(e,n,i){return wr(i)}function zh(e,n,i){const r=globalThis.Object.values(e.$defs),o=e.$defs[e.$ref];return X(o,[...n,...r],i)}function Kh(e,n,i){return!(!pa(i)||$(e.exclusiveMaximum)&&!(i<e.exclusiveMaximum)||$(e.exclusiveMinimum)&&!(i>e.exclusiveMinimum)||$(e.maximum)&&!(i<=e.maximum)||$(e.minimum)&&!(i>=e.minimum)||$(e.multipleOf)&&i%e.multipleOf!==0)}function _h(e,n,i){const r=e.allOf.every(o=>X(o,n,i));if(e.unevaluatedProperties===!1){const o=new RegExp(Zn(e)),a=Object.getOwnPropertyNames(i).every(s=>o.test(s));return r&&a}else if(We(e.unevaluatedProperties)){const o=new RegExp(Zn(e)),a=Object.getOwnPropertyNames(i).every(s=>o.test(s)||X(e.unevaluatedProperties,n,i[s]));return r&&a}else return r}function Hh(e,n,i){return la(i)}function Gh(e,n,i){return i===e.const}function Wh(e,n,i){return!1}function qh(e,n,i){return!X(e.not,n,i)}function Jh(e,n,i){return ei(i)}function Xh(e,n,i){return!(!be.IsNumberLike(i)||$(e.exclusiveMaximum)&&!(i<e.exclusiveMaximum)||$(e.exclusiveMinimum)&&!(i>e.exclusiveMinimum)||$(e.minimum)&&!(i>=e.minimum)||$(e.maximum)&&!(i<=e.maximum)||$(e.multipleOf)&&i%e.multipleOf!==0)}function Vh(e,n,i){if(!be.IsObjectLike(i)||$(e.minProperties)&&!(Object.getOwnPropertyNames(i).length>=e.minProperties)||$(e.maxProperties)&&!(Object.getOwnPropertyNames(i).length<=e.maxProperties))return!1;const r=Object.getOwnPropertyNames(e.properties);for(const o of r){const a=e.properties[o];if(e.required&&e.required.includes(o)){if(!X(a,n,i[o])||(Nn(a)||Ah(a))&&!(o in i))return!1}else if(be.IsExactOptionalProperty(i,o)&&!X(a,n,i[o]))return!1}if(e.additionalProperties===!1){const o=Object.getOwnPropertyNames(i);return e.required&&e.required.length===r.length&&o.length===r.length?!0:o.every(a=>r.includes(a))}else return typeof e.additionalProperties=="object"?Object.getOwnPropertyNames(i).every(a=>r.includes(a)||X(e.additionalProperties,n,i[a])):!0}function Yh(e,n,i){return da(i)}function Zh(e,n,i){if(!be.IsRecordLike(i)||$(e.minProperties)&&!(Object.getOwnPropertyNames(i).length>=e.minProperties)||$(e.maxProperties)&&!(Object.getOwnPropertyNames(i).length<=e.maxProperties))return!1;const[r,o]=Object.entries(e.patternProperties)[0],a=new RegExp(r),s=Object.entries(i).every(([m,x])=>a.test(m)?X(o,n,x):!0),l=typeof e.additionalProperties=="object"?Object.entries(i).every(([m,x])=>a.test(m)?!0:X(e.additionalProperties,n,x)):!0,c=e.additionalProperties===!1?Object.getOwnPropertyNames(i).every(m=>a.test(m)):!0;return s&&l&&c}function Qh(e,n,i){return X(Tt(e,n),n,i)}function eb(e,n,i){const r=new RegExp(e.source,e.flags);return $(e.minLength)&&!(i.length>=e.minLength)||$(e.maxLength)&&!(i.length<=e.maxLength)?!1:r.test(i)}function tb(e,n,i){return!ke(i)||$(e.minLength)&&!(i.length>=e.minLength)||$(e.maxLength)&&!(i.length<=e.maxLength)||$(e.pattern)&&!new RegExp(e.pattern).test(i)?!1:$(e.format)?Ia(e.format)?$a(e.format)(i):!1:!0}function nb(e,n,i){return ii(i)}function ib(e,n,i){return ke(i)&&new RegExp(e.pattern).test(i)}function rb(e,n,i){return X(Tt(e,n),n,i)}function ob(e,n,i){if(!Ee(i)||e.items===void 0&&i.length!==0||i.length!==e.maxItems)return!1;if(!e.items)return!0;for(let r=0;r<e.items.length;r++)if(!X(e.items[r],n,i[r]))return!1;return!0}function ab(e,n,i){return rt(i)}function sb(e,n,i){return e.anyOf.some(r=>X(r,n,i))}function cb(e,n,i){return!(!Sr(i)||$(e.maxByteLength)&&!(i.length<=e.maxByteLength)||$(e.minByteLength)&&!(i.length>=e.minByteLength))}function lb(e,n,i){return!0}function db(e,n,i){return be.IsVoidLike(i)}function pb(e,n,i){return vr(e[y])?Ca(e[y])(e,i):!1}function X(e,n,i){const r=$(e.$id)?fs(e,n):n,o=e;switch(o[y]){case"Any":return jh();case"Argument":return Rh();case"Array":return vh(o,r,i);case"AsyncIterator":return Uh(o,r,i);case"BigInt":return Mh(o,r,i);case"Boolean":return kh(o,r,i);case"Constructor":return Bh(o,r,i);case"Date":return Dh(o,r,i);case"Function":return Eh(o,r,i);case"Import":return zh(o,r,i);case"Integer":return Kh(o,r,i);case"Intersect":return _h(o,r,i);case"Iterator":return Hh(o,r,i);case"Literal":return Gh(o,r,i);case"Never":return Wh();case"Not":return qh(o,r,i);case"Null":return Jh(o,r,i);case"Number":return Xh(o,r,i);case"Object":return Vh(o,r,i);case"Promise":return Yh(o,r,i);case"Record":return Zh(o,r,i);case"Ref":return Qh(o,r,i);case"RegExp":return eb(o,r,i);case"String":return tb(o,r,i);case"Symbol":return nb(o,r,i);case"TemplateLiteral":return ib(o,r,i);case"This":return rb(o,r,i);case"Tuple":return ob(o,r,i);case"Undefined":return ab(o,r,i);case"Union":return sb(o,r,i);case"Uint8Array":return cb(o,r,i);case"Unknown":return lb();case"Void":return db(o,r,i);default:if(!vr(o[y]))throw new Th(o);return pb(o,r,i)}}function io(...e){return e.length===3?X(e[0],e[1],e[2]):X(e[0],[],e[1])}var d;(function(e){e[e.ArrayContains=0]="ArrayContains",e[e.ArrayMaxContains=1]="ArrayMaxContains",e[e.ArrayMaxItems=2]="ArrayMaxItems",e[e.ArrayMinContains=3]="ArrayMinContains",e[e.ArrayMinItems=4]="ArrayMinItems",e[e.ArrayUniqueItems=5]="ArrayUniqueItems",e[e.Array=6]="Array",e[e.AsyncIterator=7]="AsyncIterator",e[e.BigIntExclusiveMaximum=8]="BigIntExclusiveMaximum",e[e.BigIntExclusiveMinimum=9]="BigIntExclusiveMinimum",e[e.BigIntMaximum=10]="BigIntMaximum",e[e.BigIntMinimum=11]="BigIntMinimum",e[e.BigIntMultipleOf=12]="BigIntMultipleOf",e[e.BigInt=13]="BigInt",e[e.Boolean=14]="Boolean",e[e.DateExclusiveMaximumTimestamp=15]="DateExclusiveMaximumTimestamp",e[e.DateExclusiveMinimumTimestamp=16]="DateExclusiveMinimumTimestamp",e[e.DateMaximumTimestamp=17]="DateMaximumTimestamp",e[e.DateMinimumTimestamp=18]="DateMinimumTimestamp",e[e.DateMultipleOfTimestamp=19]="DateMultipleOfTimestamp",e[e.Date=20]="Date",e[e.Function=21]="Function",e[e.IntegerExclusiveMaximum=22]="IntegerExclusiveMaximum",e[e.IntegerExclusiveMinimum=23]="IntegerExclusiveMinimum",e[e.IntegerMaximum=24]="IntegerMaximum",e[e.IntegerMinimum=25]="IntegerMinimum",e[e.IntegerMultipleOf=26]="IntegerMultipleOf",e[e.Integer=27]="Integer",e[e.IntersectUnevaluatedProperties=28]="IntersectUnevaluatedProperties",e[e.Intersect=29]="Intersect",e[e.Iterator=30]="Iterator",e[e.Kind=31]="Kind",e[e.Literal=32]="Literal",e[e.Never=33]="Never",e[e.Not=34]="Not",e[e.Null=35]="Null",e[e.NumberExclusiveMaximum=36]="NumberExclusiveMaximum",e[e.NumberExclusiveMinimum=37]="NumberExclusiveMinimum",e[e.NumberMaximum=38]="NumberMaximum",e[e.NumberMinimum=39]="NumberMinimum",e[e.NumberMultipleOf=40]="NumberMultipleOf",e[e.Number=41]="Number",e[e.ObjectAdditionalProperties=42]="ObjectAdditionalProperties",e[e.ObjectMaxProperties=43]="ObjectMaxProperties",e[e.ObjectMinProperties=44]="ObjectMinProperties",e[e.ObjectRequiredProperty=45]="ObjectRequiredProperty",e[e.Object=46]="Object",e[e.Promise=47]="Promise",e[e.RegExp=48]="RegExp",e[e.StringFormatUnknown=49]="StringFormatUnknown",e[e.StringFormat=50]="StringFormat",e[e.StringMaxLength=51]="StringMaxLength",e[e.StringMinLength=52]="StringMinLength",e[e.StringPattern=53]="StringPattern",e[e.String=54]="String",e[e.Symbol=55]="Symbol",e[e.TupleLength=56]="TupleLength",e[e.Tuple=57]="Tuple",e[e.Uint8ArrayMaxByteLength=58]="Uint8ArrayMaxByteLength",e[e.Uint8ArrayMinByteLength=59]="Uint8ArrayMinByteLength",e[e.Uint8Array=60]="Uint8Array",e[e.Undefined=61]="Undefined",e[e.Union=62]="Union",e[e.Void=63]="Void"})(d||(d={}));class ub extends ve{constructor(n){super("Unknown type"),this.schema=n}}function _e(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function F(e){return e!==void 0}class ys{constructor(n){this.iterator=n}[Symbol.iterator](){return this.iterator}First(){const n=this.iterator.next();return n.done?void 0:n.value}}function g(e,n,i,r,o=[]){return{type:e,schema:n,path:i,value:r,message:ph()({errorType:e,path:i,schema:n,value:r,errors:o}),errors:o}}function*mb(e,n,i,r){}function*fb(e,n,i,r){}function*gb(e,n,i,r){if(!Ee(r))return yield g(d.Array,e,i,r);F(e.minItems)&&!(r.length>=e.minItems)&&(yield g(d.ArrayMinItems,e,i,r)),F(e.maxItems)&&!(r.length<=e.maxItems)&&(yield g(d.ArrayMaxItems,e,i,r));for(let s=0;s<r.length;s++)yield*V(e.items,n,`${i}/${s}`,r[s]);if(e.uniqueItems===!0&&!function(){const s=new Set;for(const l of r){const c=Os(l);if(s.has(c))return!1;s.add(c)}return!0}()&&(yield g(d.ArrayUniqueItems,e,i,r)),!(F(e.contains)||F(e.minContains)||F(e.maxContains)))return;const o=F(e.contains)?e.contains:D(),a=r.reduce((s,l,c)=>V(o,n,`${i}${c}`,l).next().done===!0?s+1:s,0);a===0&&(yield g(d.ArrayContains,e,i,r)),He(e.minContains)&&a<e.minContains&&(yield g(d.ArrayMinContains,e,i,r)),He(e.maxContains)&&a>e.maxContains&&(yield g(d.ArrayMaxContains,e,i,r))}function*hb(e,n,i,r){ca(r)||(yield g(d.AsyncIterator,e,i,r))}function*bb(e,n,i,r){if(!ni(r))return yield g(d.BigInt,e,i,r);F(e.exclusiveMaximum)&&!(r<e.exclusiveMaximum)&&(yield g(d.BigIntExclusiveMaximum,e,i,r)),F(e.exclusiveMinimum)&&!(r>e.exclusiveMinimum)&&(yield g(d.BigIntExclusiveMinimum,e,i,r)),F(e.maximum)&&!(r<=e.maximum)&&(yield g(d.BigIntMaximum,e,i,r)),F(e.minimum)&&!(r>=e.minimum)&&(yield g(d.BigIntMinimum,e,i,r)),F(e.multipleOf)&&r%e.multipleOf!==BigInt(0)&&(yield g(d.BigIntMultipleOf,e,i,r))}function*Ob(e,n,i,r){ti(r)||(yield g(d.Boolean,e,i,r))}function*yb(e,n,i,r){yield*V(e.returns,n,i,r.prototype)}function*xb(e,n,i,r){if(!yn(r))return yield g(d.Date,e,i,r);F(e.exclusiveMaximumTimestamp)&&!(r.getTime()<e.exclusiveMaximumTimestamp)&&(yield g(d.DateExclusiveMaximumTimestamp,e,i,r)),F(e.exclusiveMinimumTimestamp)&&!(r.getTime()>e.exclusiveMinimumTimestamp)&&(yield g(d.DateExclusiveMinimumTimestamp,e,i,r)),F(e.maximumTimestamp)&&!(r.getTime()<=e.maximumTimestamp)&&(yield g(d.DateMaximumTimestamp,e,i,r)),F(e.minimumTimestamp)&&!(r.getTime()>=e.minimumTimestamp)&&(yield g(d.DateMinimumTimestamp,e,i,r)),F(e.multipleOfTimestamp)&&r.getTime()%e.multipleOfTimestamp!==0&&(yield g(d.DateMultipleOfTimestamp,e,i,r))}function*Sb(e,n,i,r){wr(r)||(yield g(d.Function,e,i,r))}function*wb(e,n,i,r){const o=globalThis.Object.values(e.$defs),a=e.$defs[e.$ref];yield*V(a,[...n,...o],i,r)}function*Lb(e,n,i,r){if(!pa(r))return yield g(d.Integer,e,i,r);F(e.exclusiveMaximum)&&!(r<e.exclusiveMaximum)&&(yield g(d.IntegerExclusiveMaximum,e,i,r)),F(e.exclusiveMinimum)&&!(r>e.exclusiveMinimum)&&(yield g(d.IntegerExclusiveMinimum,e,i,r)),F(e.maximum)&&!(r<=e.maximum)&&(yield g(d.IntegerMaximum,e,i,r)),F(e.minimum)&&!(r>=e.minimum)&&(yield g(d.IntegerMinimum,e,i,r)),F(e.multipleOf)&&r%e.multipleOf!==0&&(yield g(d.IntegerMultipleOf,e,i,r))}function*Pb(e,n,i,r){let o=!1;for(const a of e.allOf)for(const s of V(a,n,i,r))o=!0,yield s;if(o)return yield g(d.Intersect,e,i,r);if(e.unevaluatedProperties===!1){const a=new RegExp(Zn(e));for(const s of Object.getOwnPropertyNames(r))a.test(s)||(yield g(d.IntersectUnevaluatedProperties,e,`${i}/${s}`,r))}if(typeof e.unevaluatedProperties=="object"){const a=new RegExp(Zn(e));for(const s of Object.getOwnPropertyNames(r))if(!a.test(s)){const l=V(e.unevaluatedProperties,n,`${i}/${s}`,r[s]).next();l.done||(yield l.value)}}}function*Ib(e,n,i,r){la(r)||(yield g(d.Iterator,e,i,r))}function*Fb(e,n,i,r){r!==e.const&&(yield g(d.Literal,e,i,r))}function*$b(e,n,i,r){yield g(d.Never,e,i,r)}function*Nb(e,n,i,r){V(e.not,n,i,r).next().done===!0&&(yield g(d.Not,e,i,r))}function*Cb(e,n,i,r){ei(r)||(yield g(d.Null,e,i,r))}function*Tb(e,n,i,r){if(!be.IsNumberLike(r))return yield g(d.Number,e,i,r);F(e.exclusiveMaximum)&&!(r<e.exclusiveMaximum)&&(yield g(d.NumberExclusiveMaximum,e,i,r)),F(e.exclusiveMinimum)&&!(r>e.exclusiveMinimum)&&(yield g(d.NumberExclusiveMinimum,e,i,r)),F(e.maximum)&&!(r<=e.maximum)&&(yield g(d.NumberMaximum,e,i,r)),F(e.minimum)&&!(r>=e.minimum)&&(yield g(d.NumberMinimum,e,i,r)),F(e.multipleOf)&&r%e.multipleOf!==0&&(yield g(d.NumberMultipleOf,e,i,r))}function*Ab(e,n,i,r){if(!be.IsObjectLike(r))return yield g(d.Object,e,i,r);F(e.minProperties)&&!(Object.getOwnPropertyNames(r).length>=e.minProperties)&&(yield g(d.ObjectMinProperties,e,i,r)),F(e.maxProperties)&&!(Object.getOwnPropertyNames(r).length<=e.maxProperties)&&(yield g(d.ObjectMaxProperties,e,i,r));const o=Array.isArray(e.required)?e.required:[],a=Object.getOwnPropertyNames(e.properties),s=Object.getOwnPropertyNames(r);for(const l of o)s.includes(l)||(yield g(d.ObjectRequiredProperty,e.properties[l],`${i}/${_e(l)}`,void 0));if(e.additionalProperties===!1)for(const l of s)a.includes(l)||(yield g(d.ObjectAdditionalProperties,e,`${i}/${_e(l)}`,r[l]));if(typeof e.additionalProperties=="object")for(const l of s)a.includes(l)||(yield*V(e.additionalProperties,n,`${i}/${_e(l)}`,r[l]));for(const l of a){const c=e.properties[l];e.required&&e.required.includes(l)?(yield*V(c,n,`${i}/${_e(l)}`,r[l]),Nn(e)&&!(l in r)&&(yield g(d.ObjectRequiredProperty,c,`${i}/${_e(l)}`,void 0))):be.IsExactOptionalProperty(r,l)&&(yield*V(c,n,`${i}/${_e(l)}`,r[l]))}}function*jb(e,n,i,r){da(r)||(yield g(d.Promise,e,i,r))}function*Rb(e,n,i,r){if(!be.IsRecordLike(r))return yield g(d.Object,e,i,r);F(e.minProperties)&&!(Object.getOwnPropertyNames(r).length>=e.minProperties)&&(yield g(d.ObjectMinProperties,e,i,r)),F(e.maxProperties)&&!(Object.getOwnPropertyNames(r).length<=e.maxProperties)&&(yield g(d.ObjectMaxProperties,e,i,r));const[o,a]=Object.entries(e.patternProperties)[0],s=new RegExp(o);for(const[l,c]of Object.entries(r))s.test(l)&&(yield*V(a,n,`${i}/${_e(l)}`,c));if(typeof e.additionalProperties=="object")for(const[l,c]of Object.entries(r))s.test(l)||(yield*V(e.additionalProperties,n,`${i}/${_e(l)}`,c));if(e.additionalProperties===!1){for(const[l,c]of Object.entries(r))if(!s.test(l))return yield g(d.ObjectAdditionalProperties,e,`${i}/${_e(l)}`,c)}}function*vb(e,n,i,r){yield*V(Tt(e,n),n,i,r)}function*Ub(e,n,i,r){if(!ke(r))return yield g(d.String,e,i,r);if(F(e.minLength)&&!(r.length>=e.minLength)&&(yield g(d.StringMinLength,e,i,r)),F(e.maxLength)&&!(r.length<=e.maxLength)&&(yield g(d.StringMaxLength,e,i,r)),!new RegExp(e.source,e.flags).test(r))return yield g(d.RegExp,e,i,r)}function*Mb(e,n,i,r){if(!ke(r))return yield g(d.String,e,i,r);F(e.minLength)&&!(r.length>=e.minLength)&&(yield g(d.StringMinLength,e,i,r)),F(e.maxLength)&&!(r.length<=e.maxLength)&&(yield g(d.StringMaxLength,e,i,r)),ke(e.pattern)&&(new RegExp(e.pattern).test(r)||(yield g(d.StringPattern,e,i,r))),ke(e.format)&&(Ia(e.format)?$a(e.format)(r)||(yield g(d.StringFormat,e,i,r)):yield g(d.StringFormatUnknown,e,i,r))}function*kb(e,n,i,r){ii(r)||(yield g(d.Symbol,e,i,r))}function*Bb(e,n,i,r){if(!ke(r))return yield g(d.String,e,i,r);new RegExp(e.pattern).test(r)||(yield g(d.StringPattern,e,i,r))}function*Db(e,n,i,r){yield*V(Tt(e,n),n,i,r)}function*Eb(e,n,i,r){if(!Ee(r))return yield g(d.Tuple,e,i,r);if(e.items===void 0&&r.length!==0)return yield g(d.TupleLength,e,i,r);if(r.length!==e.maxItems)return yield g(d.TupleLength,e,i,r);if(e.items)for(let o=0;o<e.items.length;o++)yield*V(e.items[o],n,`${i}/${o}`,r[o])}function*zb(e,n,i,r){rt(r)||(yield g(d.Undefined,e,i,r))}function*Kb(e,n,i,r){if(io(e,n,r))return;const o=e.anyOf.map(a=>new ys(V(a,n,i,r)));yield g(d.Union,e,i,r,o)}function*_b(e,n,i,r){if(!Sr(r))return yield g(d.Uint8Array,e,i,r);F(e.maxByteLength)&&!(r.length<=e.maxByteLength)&&(yield g(d.Uint8ArrayMaxByteLength,e,i,r)),F(e.minByteLength)&&!(r.length>=e.minByteLength)&&(yield g(d.Uint8ArrayMinByteLength,e,i,r))}function*Hb(e,n,i,r){}function*Gb(e,n,i,r){be.IsVoidLike(r)||(yield g(d.Void,e,i,r))}function*Wb(e,n,i,r){Ca(e[y])(e,r)||(yield g(d.Kind,e,i,r))}function*V(e,n,i,r){const o=F(e.$id)?[...n,e]:n,a=e;switch(a[y]){case"Any":return yield*mb();case"Argument":return yield*fb();case"Array":return yield*gb(a,o,i,r);case"AsyncIterator":return yield*hb(a,o,i,r);case"BigInt":return yield*bb(a,o,i,r);case"Boolean":return yield*Ob(a,o,i,r);case"Constructor":return yield*yb(a,o,i,r);case"Date":return yield*xb(a,o,i,r);case"Function":return yield*Sb(a,o,i,r);case"Import":return yield*wb(a,o,i,r);case"Integer":return yield*Lb(a,o,i,r);case"Intersect":return yield*Pb(a,o,i,r);case"Iterator":return yield*Ib(a,o,i,r);case"Literal":return yield*Fb(a,o,i,r);case"Never":return yield*$b(a,o,i,r);case"Not":return yield*Nb(a,o,i,r);case"Null":return yield*Cb(a,o,i,r);case"Number":return yield*Tb(a,o,i,r);case"Object":return yield*Ab(a,o,i,r);case"Promise":return yield*jb(a,o,i,r);case"Record":return yield*Rb(a,o,i,r);case"Ref":return yield*vb(a,o,i,r);case"RegExp":return yield*Ub(a,o,i,r);case"String":return yield*Mb(a,o,i,r);case"Symbol":return yield*kb(a,o,i,r);case"TemplateLiteral":return yield*Bb(a,o,i,r);case"This":return yield*Db(a,o,i,r);case"Tuple":return yield*Eb(a,o,i,r);case"Undefined":return yield*zb(a,o,i,r);case"Union":return yield*Kb(a,o,i,r);case"Uint8Array":return yield*_b(a,o,i,r);case"Unknown":return yield*Hb();case"Void":return yield*Gb(a,o,i,r);default:if(!vr(a[y]))throw new ub(e);return yield*Wb(a,o,i,r)}}function qb(...e){const n=e.length===3?V(e[0],e[1],"",e[2]):V(e[0],[],"",e[1]);return new ys(n)}function Jb(e){const n={};for(const i of Object.getOwnPropertyNames(e))n[i]=yt(e[i]);for(const i of Object.getOwnPropertySymbols(e))n[i]=yt(e[i]);return n}function Xb(e){return e.map(n=>yt(n))}function Vb(e){return e.slice()}function Yb(e){return new Map(yt([...e.entries()]))}function Zb(e){return new Set(yt([...e.entries()]))}function Qb(e){return new Date(e.toISOString())}function yt(e){if(Ee(e))return Xb(e);if(yn(e))return Qb(e);if(Gl(e))return Vb(e);if(_l(e))return Yb(e);if(Hl(e))return Zb(e);if(De(e))return Jb(e);if(ql(e))return e;throw new Error("ValueClone: Unable to clone value")}function Ye(e,n){const i=Wl(e,"default")?e.default:void 0,r=wr(i)?i():yt(i);return rt(n)?r:De(n)&&De(r)?Object.assign(r,n):n}function lr(e){return ha(e)&&"default"in e}function eO(e,n,i){if(Ee(i)){for(let o=0;o<i.length;o++)i[o]=le(e.items,n,i[o]);return i}const r=Ye(e,i);if(!Ee(r))return r;for(let o=0;o<r.length;o++)r[o]=le(e.items,n,r[o]);return r}function tO(e,n,i){return yn(i)?i:Ye(e,i)}function nO(e,n,i){const r=globalThis.Object.values(e.$defs),o=e.$defs[e.$ref];return le(o,[...n,...r],i)}function iO(e,n,i){const r=Ye(e,i);return e.allOf.reduce((o,a)=>{const s=le(a,n,r);return De(s)?{...o,...s}:s},{})}function rO(e,n,i){const r=Ye(e,i);if(!De(r))return r;const o=Object.getOwnPropertyNames(e.properties);for(const a of o){const s=le(e.properties[a],n,r[a]);rt(s)||(r[a]=le(e.properties[a],n,r[a]))}if(!lr(e.additionalProperties))return r;for(const a of Object.getOwnPropertyNames(r))o.includes(a)||(r[a]=le(e.additionalProperties,n,r[a]));return r}function oO(e,n,i){const r=Ye(e,i);if(!De(r))return r;const o=e.additionalProperties,[a,s]=Object.entries(e.patternProperties)[0],l=new RegExp(a);for(const c of Object.getOwnPropertyNames(r))l.test(c)&&lr(s)&&(r[c]=le(s,n,r[c]));if(!lr(o))return r;for(const c of Object.getOwnPropertyNames(r))l.test(c)||(r[c]=le(o,n,r[c]));return r}function aO(e,n,i){return le(Tt(e,n),n,Ye(e,i))}function sO(e,n,i){return le(Tt(e,n),n,i)}function cO(e,n,i){const r=Ye(e,i);if(!Ee(r)||rt(e.items))return r;const[o,a]=[e.items,Math.max(e.items.length,r.length)];for(let s=0;s<a;s++)s<o.length&&(r[s]=le(o[s],n,r[s]));return r}function lO(e,n,i){const r=Ye(e,i);for(const o of e.anyOf){const a=le(o,n,yt(r));if(io(o,n,a))return a}return r}function le(e,n,i){const r=fs(e,n),o=e;switch(o[y]){case"Array":return eO(o,r,i);case"Date":return tO(o,r,i);case"Import":return nO(o,r,i);case"Intersect":return iO(o,r,i);case"Object":return rO(o,r,i);case"Record":return oO(o,r,i);case"Ref":return aO(o,r,i);case"This":return sO(o,r,i);case"Tuple":return cO(o,r,i);case"Union":return lO(o,r,i);default:return Ye(o,i)}}function dO(...e){return e.length===3?le(e[0],e[1],e[2]):le(e[0],[],e[1])}function xs(e){var i;if(typeof e!="object"||e===null||Array.isArray(e))return;const n=(i=e.properties)==null?void 0:i.name;return typeof(n==null?void 0:n.const)=="string"?n.const:void 0}function pO(e){var i;const n=(i=e.properties)==null?void 0:i.version;return typeof(n==null?void 0:n.const)=="string"}function uO(e){return Array.isArray(e.required)&&e.required.includes("name")}function mO(e){const n=new Map;for(const i of e){const r=xs(i),o=n.get(r);o?o.push(i):n.set(r,[i])}return n}function fO(e,n){const i=n.find(r=>!pO(r)&&typeof r.description=="string")??n.find(r=>typeof r.description=="string");return{const:e,type:"string",...i?{description:i.description}:{}}}function gO(e){const n=new WeakSet;function i(r){if(typeof r!="object"||r===null||n.has(r))return;if(n.add(r),Array.isArray(r)){r.forEach(i);return}const o=r,a=o.anyOf,l=Array.isArray(a)&&a.length>=2&&a.every(c=>xs(c)!==void 0&&uO(c))&&o.properties===void 0&&o.allOf===void 0&&o.if===void 0&&o.required===void 0&&o.additionalProperties===void 0&&(o.type===void 0||o.type==="object")?mO(a):void 0;l&&l.size>=2&&(o.type="object",o.required=["name"],o.properties={name:{anyOf:[...l.entries()].map(([c,m])=>fO(c,m))}},o.allOf=[...l.entries()].map(([c,m])=>({if:{properties:{name:{const:c}},required:["name"]},then:m.length===1?m[0]:{anyOf:m}})),delete o.anyOf);for(const c of Object.values(o))i(c)}i(e)}function hO(e){if(typeof e!="object"||e===null)return[];const n=e;return Array.isArray(n.anyOf)?n.anyOf.filter(i=>typeof i=="object"&&i!==null):Array.isArray(n.allOf)?n.allOf.flatMap(i=>{const r=i==null?void 0:i.then;if(typeof r!="object"||r===null)return[];const o=r.anyOf;return Array.isArray(o)?o.filter(a=>typeof a=="object"&&a!==null):[r]}):[]}function dr(e,n,i){if(!(typeof e!="object"||e===null)){if(Array.isArray(e)){e.forEach(r=>{typeof r=="object"&&r!==null&&dr(r,n,i)});return}e.$ref===n&&(e.$ref=i);for(const r of Object.values(e))typeof r=="object"&&r!==null&&dr(r,n,i)}}function bO(e,n="ComponentDefinition"){function i(r,o=""){if(!(typeof r!="object"||r===null))for(const[a,s]of Object.entries(r)){const l=o?`${o}.${a}`:a;if(s&&typeof s=="object"){const c=s;if(c.type==="array"&&c.items&&Object.keys(c.items).length===0&&(c.items={$ref:`#/definitions/${n}`}),c.type==="array"&&c.items&&typeof c.items=="object"&&"$ref"in c.items&&typeof c.items.$ref=="string"&&/^T\d+$/.test(c.items.$ref)&&(c.items={$ref:`#/definitions/${n}`}),typeof c.$ref=="string"&&(/^T\d+$/.test(c.$ref)||c.$ref===n)&&(c.$ref=`#/definitions/${n}`),a==="$id"&&typeof s=="string"&&(/^T\d+$/.test(s)||s===n)&&l!==`definitions.${n}.$id`){delete r[a];continue}i(s,l)}}}i(e)}function Ss(e,n={}){const{$schema:i="https://json-schema.org/draft-07/schema#",$id:r,title:o,description:a,definitions:s={}}=n,l=JSON.parse(JSON.stringify(e));if(l.$id&&typeof l.$id=="string"&&/^T\d+$/.test(l.$id)){const L=l.$id;delete l.$id,dr(l,L,"#")}const c={...s};function m(L,I=""){if(!(typeof L!="object"||L===null)){for(const[A,h]of Object.entries(L))if(h&&typeof h=="object"){const u=h;if(u.$id&&typeof u.$id=="string"){const P=u.$id;if(I!==`definitions.${P}`){const{$id:j,...re}=u;c[P]=re,L[A]={$ref:`#/definitions/${P}`},m(re,`definitions.${P}`);continue}}m(h,I?`${I}.${A}`:A)}}}m(l);const x={$schema:i};return r&&(x.$id=r),Object.assign(x,l),x.$schema=i,r&&(x.$id=r),o!==void 0&&(x.title=o),a!==void 0&&(x.description=a),Object.keys(c).length>0&&(x.definitions=c),bO(x),gO(x),x}var Uo=200,Mo=36,ko=600,OO=new Set(["family","fontFace","titleFontFace","legendFontFace","dataLabelFontFace","catAxisLabelFontFace","valAxisLabelFontFace"]),yO=new Set(["heading","body","mono","light"]),xO=new Set(["fontRegistry"]);function pr(e,n,i){if(e!=null){if(typeof e=="string"){if(i&&(OO.has(i)||yO.has(i))){const r=e.trim();r.length>0&&n.add(r)}return}if(Array.isArray(e)){for(const r of e)pr(r,n,i);return}if(typeof e=="object"){const r=e.fonts;if(i==="theme"&&r&&typeof r=="object"){for(const[o,a]of Object.entries(r))if(typeof a=="string"){const s=a.trim();s.length>0&&n.add(s)}else if(a&&typeof a=="object"){const s=a.family;typeof s=="string"&&s.trim().length>0&&n.add(s.trim())}}for(const[o,a]of Object.entries(e))xO.has(o)||pr(a,n,o)}}}function ws(e){const n=new Set;return pr(e,n),n}var C0=ws,T0=ws,A0={100:"Thin",200:"ExtraLight",300:"Light",400:"Regular",500:"Medium",600:"SemiBold",700:"Bold",800:"ExtraBold",900:"Black"},j0=[{family:"Inter",category:"sans",weights:[100,200,300,400,500,600,700,800,900],hasItalic:!1},{family:"Roboto",category:"sans",weights:[100,300,400,500,700,900],hasItalic:!0},{family:"Open Sans",category:"sans",weights:[300,400,500,600,700,800],hasItalic:!0},{family:"Lato",category:"sans",weights:[100,300,400,700,900],hasItalic:!0},{family:"Montserrat",category:"sans",weights:[100,200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Poppins",category:"sans",weights:[100,200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Work Sans",category:"sans",weights:[100,200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Nunito",category:"sans",weights:[200,300,400,500,600,700,800,900],hasItalic:!0},{family:"DM Sans",category:"sans",weights:[100,200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Rubik",category:"sans",weights:[300,400,500,600,700,800,900],hasItalic:!0},{family:"Source Sans 3",category:"sans",weights:[200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Manrope",category:"sans",weights:[200,300,400,500,600,700,800],hasItalic:!1},{family:"Plus Jakarta Sans",category:"sans",weights:[200,300,400,500,600,700,800],hasItalic:!0},{family:"IBM Plex Sans",category:"sans",weights:[100,200,300,400,500,600,700],hasItalic:!0},{family:"Archivo",category:"sans",weights:[100,200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Geist",category:"sans",weights:[100,200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Space Grotesk",category:"sans",weights:[300,400,500,600,700],hasItalic:!1},{family:"Playfair Display",category:"serif",weights:[400,500,600,700,800,900],hasItalic:!0},{family:"Merriweather",category:"serif",weights:[300,400,700,900],hasItalic:!0},{family:"Lora",category:"serif",weights:[400,500,600,700],hasItalic:!0},{family:"Source Serif 4",category:"serif",weights:[200,300,400,500,600,700,800,900],hasItalic:!0},{family:"DM Serif Display",category:"serif",weights:[400],hasItalic:!0},{family:"Crimson Pro",category:"serif",weights:[200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Cormorant Garamond",category:"serif",weights:[300,400,500,600,700],hasItalic:!0},{family:"JetBrains Mono",category:"mono",weights:[100,200,300,400,500,600,700,800],hasItalic:!0},{family:"Fira Code",category:"mono",weights:[300,400,500,600,700],hasItalic:!1},{family:"IBM Plex Mono",category:"mono",weights:[100,200,300,400,500,600,700],hasItalic:!0},{family:"Source Code Pro",category:"mono",weights:[200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Space Mono",category:"mono",weights:[400,700],hasItalic:!0},{family:"Geist Mono",category:"mono",weights:[100,200,300,400,500,600,700,800,900],hasItalic:!0},{family:"Bebas Neue",category:"display",weights:[400],hasItalic:!1},{family:"Abril Fatface",category:"display",weights:[400],hasItalic:!1},{family:"Archivo Black",category:"display",weights:[400],hasItalic:!1},{family:"Oswald",category:"display",weights:[200,300,400,500,600,700],hasItalic:!1},{family:"Caveat",category:"handwriting",weights:[400,500,600,700],hasItalic:!1},{family:"Pacifico",category:"handwriting",weights:[400],hasItalic:!1}],SO=t.Union([t.Number({description:"Margin in inches (all sides)"}),t.Object({top:t.Number({description:"Top margin in inches"}),right:t.Number({description:"Right margin in inches"}),bottom:t.Number({description:"Bottom margin in inches"}),left:t.Number({description:"Left margin in inches"})},{additionalProperties:!1})],{description:"Slide margins in inches"}),wO=t.Union([t.Number({description:"Gutter in inches (both axes)"}),t.Object({column:t.Number({description:"Column gutter in inches"}),row:t.Number({description:"Row gutter in inches"})},{additionalProperties:!1})],{description:"Gaps between grid tracks in inches"}),Ls=t.Object({columns:t.Optional(t.Number({minimum:1,description:"Number of columns (default: 12)"})),rows:t.Optional(t.Number({minimum:1,description:"Number of rows (default: 6)"})),margin:t.Optional(SO),gutter:t.Optional(wO)},{additionalProperties:!1,description:"Grid layout configuration"}),$e=t.String({pattern:"^#?[0-9A-Fa-f]{6}$",description:"Hex color (e.g. #FF0000)"}),LO=t.Object({fontSize:t.Optional(t.Number()),fontFace:t.Optional(gn),fontColor:t.Optional(Ni),bold:t.Optional(t.Boolean()),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900})),italic:t.Optional(t.Boolean()),align:t.Optional(t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right"),t.Literal("justify")])),lineSpacing:t.Optional(t.Number()),charSpacing:t.Optional(t.Number()),paraSpaceAfter:t.Optional(t.Number())},{additionalProperties:!1,description:"Text style preset"}),Ps=t.Object({name:t.String({description:"Theme name"}),colors:t.Object({primary:$e,secondary:$e,accent:$e,background:$e,text:$e,text2:t.Optional($e),background2:t.Optional($e),accent4:t.Optional($e),accent5:t.Optional($e),accent6:t.Optional($e)},{additionalProperties:!1,description:"Theme color palette (10-slot scheme)"}),fonts:t.Object({heading:gn,body:gn},{additionalProperties:!1,description:"Font families"}),fontRegistry:t.Optional($i),defaults:t.Object({fontSize:t.Number({description:"Default font size in points"}),fontColor:$e},{additionalProperties:!1,description:"Default text styling"}),styles:t.Optional(t.Partial(t.Object(Object.fromEntries(ls.map(e=>[e,LO]))),{additionalProperties:!1,description:"Named text style presets"})),componentDefaults:t.Optional(us)},{additionalProperties:!1,description:"Presentation theme configuration"});t.Object({x:t.Optional(t.Union([t.Number({description:"X position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'X position as percentage (e.g., "10%")'})])),y:t.Optional(t.Union([t.Number({description:"Y position in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Y position as percentage (e.g., "10%")'})])),w:t.Optional(t.Union([t.Number({description:"Width in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Width as percentage (e.g., "80%")'})])),h:t.Optional(t.Union([t.Number({description:"Height in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Height as percentage (e.g., "20%")'})]))},{description:"Position and size in inches or percentages",additionalProperties:!1});var Is=t.Object({color:t.Optional(Ni),gradient:t.Optional(ps),image:t.Optional(t.Object({path:t.Optional(t.String({description:"Image file path or URL"})),base64:t.Optional(t.String({description:"Base64-encoded image data"}))},{description:"Background image",additionalProperties:!1}))},{description:"Slide background configuration",additionalProperties:!1}),PO=t.Object({type:t.Optional(t.Union([t.Literal("fade"),t.Literal("push"),t.Literal("wipe"),t.Literal("zoom"),t.Literal("none")],{description:"Transition effect type"})),speed:t.Optional(t.Union([t.Literal("slow"),t.Literal("medium"),t.Literal("fast")],{description:"Transition speed"}))},{description:"Slide transition configuration",additionalProperties:!1}),nt=t.Union([t.Number({description:"Position/size in inches"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Position/size as percentage of slide dimension (e.g., "50%")'})]);function vt(e,n){return t.Object({name:t.Literal(e),id:t.Optional(t.String()),enabled:t.Optional(t.Boolean({default:!0,description:"When false, this component is filtered out and not rendered. Defaults to true."})),props:n},{additionalProperties:!1})}var IO=t.Union([vt("text",Ai),vt("image",ji),vt("shape",Ri),vt("table",vi),vt("chart",Mi),vt("highcharts",Ui)],{discriminator:{propertyName:"name"},description:"Fixed component on a template slide (same format as slide children)"});function Ut(e,n){return t.Object({name:t.Literal(e),props:t.Partial(n,{description:"Default props inherited by the component placed in this placeholder"})},{additionalProperties:!1})}var FO=t.Union([Ut("text",Ai),Ut("image",ji),Ut("shape",Ri),Ut("table",vi),Ut("chart",Mi),Ut("highcharts",Ui)],{discriminator:{propertyName:"name"},description:"Partial component stub — styling defaults only"}),$O=t.Object({name:t.String({description:"Unique placeholder name"}),x:t.Optional(nt),y:t.Optional(nt),w:t.Optional(nt),h:t.Optional(nt),grid:t.Optional(Ct),defaults:t.Optional(FO)},{additionalProperties:!1,description:"Placeholder on a template slide — defaults is a component stub whose props are inherited by the actual component"}),NO=t.Object({name:t.String({description:"Unique template slide name"}),background:t.Optional(Is),margin:t.Optional(t.Union([t.Number({description:"Margin in inches (all sides)"}),t.Array(t.Number(),{minItems:4,maxItems:4,description:"Margin [top, right, bottom, left] in inches"})])),slideNumber:t.Optional(t.Object({x:nt,y:nt,w:t.Optional(nt),h:t.Optional(nt),color:t.Optional(Ni),fontSize:t.Optional(t.Number({description:"Slide number font size in points"}))},{additionalProperties:!1,description:"Slide number position and styling"})),objects:t.Optional(t.Array(IO,{description:"Fixed components (logos, footers, decorations) — same { name, props } format as slide children"})),placeholders:t.Optional(t.Array($O,{description:"Placeholder regions for slide content"})),grid:t.Optional(Ls)},{additionalProperties:!1,description:"Template slide definition (reusable slide template)"}),CO=t.Object({title:t.Optional(t.String({description:"Presentation title metadata"})),author:t.Optional(t.String({description:"Presentation author metadata"})),subject:t.Optional(t.String({description:"Presentation subject metadata"})),company:t.Optional(t.String({description:"Company name metadata"})),theme:t.Optional(t.Union([t.String({description:'Theme name to apply (default: "default")',default:"default"}),Ps],{description:'Theme to apply: a built-in/custom theme name (default: "default"), or an inline theme config object so the document stays self-contained'})),fontRegistry:t.Optional($i),slideWidth:t.Optional(t.Number({description:"Slide width in inches (default: 10)",default:10})),slideHeight:t.Optional(t.Number({description:"Slide height in inches (default: 7.5)",default:7.5})),rtlMode:t.Optional(t.Boolean({description:"Right-to-left text direction"})),language:t.Optional(t.String({pattern:"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$",description:'Default presentation language (BCP-47 tag, e.g. "en-US"). Sets the spell-check language for all text; individual text components can override it.',examples:["en-US","fr-FR","de-DE","it-IT","es-ES"]})),pageNumberFormat:t.Optional(t.Union([t.Literal("9"),t.Literal("09")],{description:'Format for {PAGE_NUMBER} placeholders: "9" = bare number (default), "09" = zero-padded',default:"9"})),componentDefaults:t.Optional(us),grid:t.Optional(Ls),templates:t.Optional(t.Array(NO,{description:"Template slide definitions (reusable slide templates)"}))},{description:"Presentation container props",additionalProperties:!1}),TO=t.Object({meta:t.Optional(t.Object({title:t.Optional(t.String({description:"Authoring label for this slide, shown in editors and outlines. Never rendered — slide content is unaffected."}))},{additionalProperties:!1,description:"Authoring metadata; has no effect on the presentation."})),background:t.Optional(Is),transition:t.Optional(PO),notes:t.Optional(t.String({description:"Speaker notes for this slide"})),layout:t.Optional(t.String({description:'Slide layout name (e.g., "Title Slide", "Blank")'})),hidden:t.Optional(t.Boolean({description:"Hide this slide from presentation"})),template:t.Optional(t.String({description:"Template slide name to apply"}))},{description:"Slide container props",additionalProperties:!1}),hn=[{name:"pptx",propsSchema:CO,hasChildren:!0,allowedChildren:["slide"],category:"container",description:"Main presentation container - defines the overall presentation structure. Required as the root component.",special:{hasSchemaField:!0}},{name:"slide",propsSchema:TO,hasChildren:!0,allowedChildren:tt.map(({name:e})=>e),hasPlaceholders:!0,category:"container",description:"Slide container - groups content elements on a single slide."},...tt];function Wn(e,n,i){var o;const r={name:t.Literal(e.name),id:t.Optional(t.String()),enabled:t.Optional(t.Boolean({default:!0,description:"When false, this component is filtered out and not rendered. Defaults to true."}))};if((o=e.special)!=null&&o.hasSchemaField&&(r.$schema=t.Optional(t.String({format:"uri"}))),r.props=e.propsSchema,e.hasChildren&&n&&(r.children=t.Optional(t.Array(n))),e.hasPlaceholders&&(i??n)){const a=e.propsSchema.properties??{},s=i??n;r.props=t.Object({...a,placeholders:t.Optional(t.Record(t.String(),s,{description:'Content for named placeholders: { "title": { "name": "text", ... } }'}))},{additionalProperties:!1,description:e.propsSchema.description})}return t.Object(r,{additionalProperties:!1,description:e.description})}function AO(e){return hn.map(n=>Wn(n,e))}function Fs(e,n=[]){const i=new Map;for(const s of hn)s.hasChildren||i.set(s.name,Wn(s,void 0,e));const r=hn.filter(s=>s.hasChildren),o=new Map,a=[...r];for(;a.length>0;){const s=a.length;for(let l=a.length-1;l>=0;l--){const c=a[l];if(!c.allowedChildren){o.set(c.name,Wn(c,e,e)),a.splice(l,1);continue}if(!c.allowedChildren.filter(A=>r.some(h=>h.name===A)).every(A=>o.has(A)))continue;const L=[...c.allowedChildren.map(A=>o.get(A)??i.get(A)).filter(A=>A!==void 0),...n],I=L.length===1?L[0]:t.Union(L);o.set(c.name,Wn(c,I,e)),a.splice(l,1)}if(a.length===s)throw new Error(`Circular allowedChildren among: ${a.map(l=>l.name).join(", ")}`)}return[...o.values(),...i.values()]}t.Union([...AO(t.Any())],{discriminator:{propertyName:"name"},description:"Standard PPTX component definition with discriminated union"});t.Recursive(e=>t.Union([...Fs(e)],{discriminator:{propertyName:"name"},description:"PPTX component definition with discriminated union"}));function jO(e,n,i,r){const o={name:t.Literal(e.name),id:t.Optional(t.String()),enabled:t.Optional(t.Boolean({default:!0,description:"When false, this component is filtered out and not rendered. Defaults to true."})),version:r?t.Optional(t.Literal(n.version)):t.Literal(n.version),props:n.propsSchema};return n.hasChildren&&(o.children=t.Optional(t.Array(i))),t.Object(o,{additionalProperties:!1,description:n.description??e.name})}function RO(e={}){const{customComponents:n=[]}=e;return t.Recursive(i=>{const r=[];for(const s of n)if(s.versions.length>0){const l=ms(s.versions.map(m=>m.version)),c=s.versions.map(m=>jO(s,m,i,m.version===l));r.push(c.length===1?c[0]:t.Union(c))}const a=[...Fs(i,r),...r];return a.length===0?t.Object({}):t.Union(a)})}Object.fromEntries(hn.map(e=>[e.name,e.propsSchema]));new Set(hn.filter(e=>{var n;return!!((n=e.special)!=null&&n.hasSchemaField)}).map(e=>e.name));var $s=new Set(["name","id","enabled","props","children"]);[...$s];[...$s];var S=t.String({pattern:"^(#[0-9A-Fa-f]{6}|[a-zA-Z][a-zA-Z0-9]*)$",description:'Hex color with # prefix (e.g. "#000000") or theme color name'}),Ns=t.String({pattern:"^(transparent|#[0-9A-Fa-f]{6}|[a-zA-Z][a-zA-Z0-9]*)$",description:'Hex color with # prefix, theme color name, or "transparent"'}),Cs=t.String({pattern:"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$",description:'BCP-47 language tag for spell/grammar checking (e.g. "en-US", "fr-FR", "de-DE")',examples:["en-US","fr-FR","de-DE","it-IT","es-ES"]}),Ts=t.Boolean({description:"Disable spell/grammar checking for this text (e.g. code snippets or identifiers)"}),ro=t.Array(t.String({minLength:1}),{description:"Words that should never be flagged as misspelled (whole-word, case-insensitive). E.g. brand names or technical terms.",examples:[["Wiseair","json-to-office","pptx"]]}),oo=t.Object({size:t.Optional(t.Number({minimum:8,maximum:120})),color:t.Optional(S),bold:t.Optional(t.Boolean()),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Per-run weight (100–900). Any integer accepted; renderer picks the closest embedded variant via CSS font-matching. `bold: true` is shorthand for `fontWeight: 700`; if both are set, `fontWeight` wins."})),italic:t.Optional(t.Boolean()),underline:t.Optional(t.Boolean()),lineSpacing:t.Optional(t.Object({type:t.Union([t.Literal("single"),t.Literal("atLeast"),t.Literal("exactly"),t.Literal("double"),t.Literal("multiple")]),value:t.Optional(t.Number({minimum:0}))},{additionalProperties:!1})),spacing:t.Optional(t.Object({before:t.Optional(t.Number({minimum:0})),after:t.Optional(t.Number({minimum:0}))},{additionalProperties:!1})),characterSpacing:t.Optional(t.Object({type:t.Union([t.Literal("condensed"),t.Literal("expanded")]),value:t.Number()},{additionalProperties:!1})),scale:t.Optional(t.Number({minimum:1,maximum:600,description:"Character width scaling in percent (w:w). 100 is normal; values below compress glyphs, above expand them (e.g. 55, 115)."}))},{additionalProperties:!1}),Dt=t.Object({family:gn,...oo.properties},{description:"Font definition with family and optional formatting properties",additionalProperties:!1}),ao=t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right")],{description:"Text alignment options"}),As=t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right"),t.Literal("justify")],{description:"Text alignment options including justify"}),vO=t.Union([t.Literal(1),t.Literal(2),t.Literal(3),t.Literal(4),t.Literal(5),t.Literal(6)],{description:"Heading level (1-6)"}),on=t.Object({before:t.Optional(t.Number({minimum:0,description:"Spacing before element in points"})),after:t.Optional(t.Number({minimum:0,description:"Spacing after element in points"}))},{description:"Spacing configuration",additionalProperties:!1}),UO=t.Object({before:t.Optional(t.Number({minimum:0,description:"Spacing before list in points"})),after:t.Optional(t.Number({minimum:0,description:"Spacing after list in points"})),item:t.Optional(t.Number({minimum:0,description:"Spacing between list items in points"}))},{description:"List spacing configuration with item spacing",additionalProperties:!1});t.Object({top:t.Optional(t.Number({minimum:0})),bottom:t.Optional(t.Number({minimum:0})),left:t.Optional(t.Number({minimum:0})),right:t.Optional(t.Number({minimum:0}))},{description:"Margin configuration",additionalProperties:!1});t.Object({style:t.Optional(t.Union([t.Literal("solid"),t.Literal("dashed"),t.Literal("dotted"),t.Literal("double"),t.Literal("none")])),width:t.Optional(t.Number({minimum:0})),color:t.Optional(S)},{description:"Border configuration",additionalProperties:!1});var MO=t.Object({type:t.Union([t.Literal("single"),t.Literal("atLeast"),t.Literal("exactly"),t.Literal("double"),t.Literal("multiple")]),value:t.Optional(t.Number({minimum:0}))},{description:"Line spacing configuration",additionalProperties:!1}),ki=t.Object({left:t.Optional(t.Number({minimum:0})),hanging:t.Optional(t.Number({minimum:0}))},{description:"Indentation configuration",additionalProperties:!1}),js=t.Object({left:t.Optional(t.Number({description:"Left indentation in twips (1/20 of a point)"})),right:t.Optional(t.Number({description:"Right indentation in twips (1/20 of a point)"})),hanging:t.Optional(t.Number({minimum:0,description:"Hanging indent in twips: first line stays at the left indent, following lines are indented. Mutually exclusive with firstLine."})),firstLine:t.Optional(t.Number({minimum:0,description:"First-line indent in twips: only the first line is indented. Mutually exclusive with hanging."}))},{description:"Paragraph indentation (w:ind) in twips. Use either hanging or firstLine, not both.",additionalProperties:!1}),kO=t.Union([t.Literal("left"),t.Literal("right"),t.Literal("center"),t.Literal("decimal"),t.Literal("bar")],{description:"Tab stop alignment type"}),BO=t.Union([t.Literal("dot"),t.Literal("hyphen"),t.Literal("underscore"),t.Literal("middleDot"),t.Literal("none")],{description:"Leader character filling the space before the tab stop"}),DO=t.Object({type:kO,position:t.Number({minimum:0,description:"Tab stop position in twips (1/20 of a point)"}),leader:t.Optional(BO)},{description:"Tab stop definition (w:tab in w:tabs)",additionalProperties:!1}),EO=t.Array(DO,{description:"Tab stops for the paragraph. Tab characters (\\t) in the text jump to these positions."}),zO=t.Union([t.Literal("character"),t.Literal("column"),t.Literal("margin"),t.Literal("page"),t.Literal("text")],{description:"Horizontal position relative to"}),KO=t.Union([t.Literal("margin"),t.Literal("page"),t.Literal("paragraph"),t.Literal("line"),t.Literal("text")],{description:"Vertical position relative to"}),_O=t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right"),t.Literal("inside"),t.Literal("outside")],{description:"Horizontal alignment"}),HO=t.Union([t.Literal("top"),t.Literal("center"),t.Literal("bottom"),t.Literal("inside"),t.Literal("outside")],{description:"Vertical alignment"}),GO=t.Union([t.Literal("none"),t.Literal("square"),t.Literal("topAndBottom"),t.Literal("around"),t.Literal("tight"),t.Literal("through")],{description:"Text wrapping type"}),WO=t.Union([t.Literal("bothSides"),t.Literal("left"),t.Literal("right"),t.Literal("largest")],{description:"Text wrapping side"}),so=t.Object({horizontalPosition:t.Optional(t.Object({relative:t.Optional(zO),align:t.Optional(_O),offset:t.Optional(t.Union([t.Number({description:"Horizontal offset in twips (1/20 of a point)"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Horizontal offset as percentage (e.g., "50%") relative to page or margin width'})]))},{description:"Horizontal positioning (use either align or offset, not both)",additionalProperties:!1})),verticalPosition:t.Optional(t.Object({relative:t.Optional(KO),align:t.Optional(HO),offset:t.Optional(t.Union([t.Number({description:"Vertical offset in twips (1/20 of a point)"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Vertical offset as percentage (e.g., "50%") relative to page or margin height'})]))},{description:"Vertical positioning (use either align or offset, not both)",additionalProperties:!1})),wrap:t.Optional(t.Object({type:GO,side:t.Optional(WO),margins:t.Optional(t.Object({top:t.Optional(t.Union([t.Number({description:"Top margin in twips"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Top margin as percentage of page height"})])),bottom:t.Optional(t.Union([t.Number({description:"Bottom margin in twips"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Bottom margin as percentage of page height"})])),left:t.Optional(t.Union([t.Number({description:"Left margin in twips"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Left margin as percentage of page width"})])),right:t.Optional(t.Union([t.Number({description:"Right margin in twips"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:"Right margin as percentage of page width"})]))},{description:"Distance from text margins",additionalProperties:!1}))},{description:"Text wrapping configuration",additionalProperties:!1})),allowOverlap:t.Optional(t.Boolean({description:"Allow element to overlap with other elements"})),behindDocument:t.Optional(t.Boolean({description:"Place element behind document text"})),lockAnchor:t.Optional(t.Boolean({description:"Lock the anchor position"})),layoutInCell:t.Optional(t.Boolean({description:"Layout element within table cell"})),zIndex:t.Optional(t.Number({minimum:0,description:"Z-order for overlapping elements (must be non-negative)"})),rotation:t.Optional(t.Number({description:"Rotation angle in degrees"})),visibility:t.Optional(t.Union([t.Literal("hidden"),t.Literal("inherit")],{description:"Visibility of the floating element"}))},{description:"Floating element properties",additionalProperties:!1});t.Object({start:t.Optional(t.Number({minimum:1})),style:t.Optional(t.Union([t.Literal("decimal"),t.Literal("lowerLetter"),t.Literal("upperLetter"),t.Literal("lowerRoman"),t.Literal("upperRoman")])),separator:t.Optional(t.String())},{description:"Numbering configuration for lists",additionalProperties:!1});var qO={};t.Object(qO,{description:"Base component props",additionalProperties:!0});var JO=t.Object({type:t.Union([t.Literal("equal"),t.Literal("insert"),t.Literal("delete")],{description:"Segment kind: 'equal' renders as normal text, 'insert' as a tracked insertion, 'delete' as a tracked deletion"}),text:t.String({description:"Literal text of this segment (rendered without markdown)"})},{description:"A contiguous run of text sharing one revision state",additionalProperties:!1}),Bi=t.Object({author:t.Optional(t.String({description:'Revision author shown in Word (default: "json-to-office")'})),date:t.Optional(t.String({format:"date-time",description:"Revision timestamp (ISO 8601). Defaults to the Unix epoch for deterministic output"})),segments:t.Array(JO,{minItems:1,description:"Ordered text segments; concatenating equal+insert segments yields the new text, equal+delete the old text"})},{description:"Tracked-change data: renders the component text as native Word revisions (accept/reject in Word)",additionalProperties:!1}),XO=t.Object({type:t.Union([t.Literal("insert"),t.Literal("delete")],{description:"Whether the element was inserted or deleted"}),author:t.Optional(t.String({description:'Revision author shown in Word (default: "json-to-office")'})),date:t.Optional(t.String({format:"date-time",description:"Revision timestamp (ISO 8601). Defaults to the Unix epoch for deterministic output"}))},{description:"Structural tracked change: the element itself was inserted or deleted",additionalProperties:!1}),Rs={text:t.String({minLength:1,description:"Comment body. Newlines split it into separate paragraphs in the comment pane."}),author:t.Optional(t.String({description:'Comment author shown in Word (default: "json-to-office")'})),initials:t.Optional(t.String({description:"Author initials shown on the comment bubble (derived from the author when omitted)"})),date:t.Optional(t.String({format:"date-time",description:"Comment timestamp (ISO 8601). Defaults to the Unix epoch for deterministic output"}))},VO=t.Object(Rs,{description:"A reply within a comment thread",additionalProperties:!1}),Di=t.Object({...Rs,replies:t.Optional(t.Array(VO,{minItems:1,description:"Replies, in order. They anchor to the same text and Word shows them as one thread."})),resolved:t.Optional(t.Boolean({description:"Mark the whole thread resolved (w15:done). Word writes the thread state only when the document contains at least one reply."}))},{description:"A Word review comment anchored to this component's text",additionalProperties:!1}),vs=t.Object({text:t.String({description:"Heading text (required)"}),level:t.Optional(vO),font:t.Optional(t.Partial(Dt)),language:t.Optional(Cs),noProof:t.Optional(Ts),noProofWords:t.Optional(ro),alignment:t.Optional(As),spacing:t.Optional(on),indent:t.Optional(js),lineSpacing:t.Optional(t.Union([t.Number({minimum:0}),MO])),pageBreak:t.Optional(t.Boolean({description:"Insert page break before heading"})),columnBreak:t.Optional(t.Boolean({description:"Insert column break before heading"})),numbering:t.Optional(t.Boolean({description:"Include in numbering"})),keepNext:t.Optional(t.Boolean({description:"Keep heading with next paragraph on same page"})),keepLines:t.Optional(t.Boolean({description:"Keep all lines of heading together on same page"})),revision:t.Optional(Bi),comment:t.Optional(Di)},{description:"Heading component props",additionalProperties:!1}),Us=t.Object({id:t.String({minLength:1,pattern:"^[^\\]\\s]+$",description:'Marker id referenced from the text as `[^id]`. Any characters except whitespace and "]".'}),text:t.String({minLength:1,description:"Note body. Newlines split it into separate paragraphs where the note is placed."})},{description:"A note body bound to an inline `[^id]` marker",additionalProperties:!1}),YO=t.Array(Us,{description:"Footnote bodies for `[^id]` markers in this paragraph, placed at the foot of the page. An unreferenced body is not emitted.",minItems:1}),ZO=t.Array(Us,{description:"Endnote bodies for `[^id]` markers in this paragraph, collected at the end of the document. An unreferenced body is not emitted.",minItems:1}),QO=t.Union([t.Literal("around"),t.Literal("none"),t.Literal("notBeside"),t.Literal("through"),t.Literal("tight"),t.Literal("auto")],{description:"Frame text wrapping type"}),Bo=t.Union([t.Literal("margin"),t.Literal("page"),t.Literal("text")],{description:"Frame anchor type"}),ey=t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right"),t.Literal("inside"),t.Literal("outside")],{description:"Frame horizontal alignment"}),ty=t.Union([t.Literal("top"),t.Literal("center"),t.Literal("bottom"),t.Literal("inside"),t.Literal("outside")],{description:"Frame vertical alignment"}),ny=t.Object({horizontalPosition:t.Optional(t.Object({relative:t.Optional(Bo),align:t.Optional(ey),offset:t.Optional(t.Union([t.Number({description:"Horizontal offset in twips (1/20 of a point)"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Horizontal offset as percentage (e.g., "50%") relative to page or margin width'})]))},{description:"Horizontal positioning (use either align or offset, not both)",additionalProperties:!1})),verticalPosition:t.Optional(t.Object({relative:t.Optional(Bo),align:t.Optional(ty),offset:t.Optional(t.Union([t.Number({description:"Vertical offset in twips (1/20 of a point)"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Vertical offset as percentage (e.g., "50%") relative to page or margin height'})]))},{description:"Vertical positioning (use either align or offset, not both)",additionalProperties:!1})),wrap:t.Optional(t.Object({type:QO},{description:"Text wrapping configuration",additionalProperties:!1})),lockAnchor:t.Optional(t.Boolean({description:"Lock the anchor position"})),width:t.Optional(t.Number({minimum:1,description:"Frame width in twips (DXA units)"})),height:t.Optional(t.Number({minimum:1,description:"Frame height in twips (DXA units)"}))},{description:"Floating text frame properties",additionalProperties:!1}),iy=t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right"),t.Literal("justify")],{description:"Paragraph text alignment"}),Ms=t.Object({text:t.String({description:"Text content (required)"}),font:t.Optional(t.Partial(Dt)),themeStyle:t.Optional(t.String()),language:t.Optional(Cs),noProof:t.Optional(Ts),noProofWords:t.Optional(ro),boldColor:t.Optional(S),spacing:t.Optional(on),alignment:t.Optional(iy),indent:t.Optional(js),tabStops:t.Optional(EO),pageBreak:t.Optional(t.Boolean({description:"Insert page break before paragraph"})),columnBreak:t.Optional(t.Boolean({description:"Insert column break before paragraph"})),floating:t.Optional(ny),keepNext:t.Optional(t.Boolean({description:"Keep paragraph with next paragraph on same page"})),keepLines:t.Optional(t.Boolean({description:"Keep all lines of paragraph together on same page"})),id:t.Optional(t.String({description:"Unique identifier for internal linking (bookmark anchor)"})),revision:t.Optional(Bi),comment:t.Optional(Di),footnotes:t.Optional(YO),endnotes:t.Optional(ZO)},{description:"Paragraph component props (font nested for theme consistency; no flat font properties)",additionalProperties:!1}),ks=t.Object({path:t.Optional(t.String({description:"Image source URL or file path (mutually exclusive with base64 and svg)"})),base64:t.Optional(t.String({description:'Base64-encoded image data in data URI format (e.g., "data:image/png;base64,iVBORw0KGgo...") (mutually exclusive with path and svg)'})),svg:t.Optional(t.String({description:'Raw inline SVG markup, e.g. "<svg xmlns=\\"http://www.w3.org/2000/svg\\" viewBox=\\"0 0 24 24\\">...</svg>" (mutually exclusive with path and base64). Renders as a vector image (Word 2016+); intrinsic size taken from the SVG viewBox/width/height when width/height omitted.'})),alt:t.Optional(t.String({description:"Alternative text for accessibility"})),width:t.Optional(t.Union([t.Number({minimum:1,description:"Image width in pixels"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Image width as percentage (e.g., "90%") relative to widthRelativeTo (defaults to content width)'})],{description:'Image width in pixels (number) or as percentage string (e.g., "90%")',default:"100%"})),height:t.Optional(t.Union([t.Number({minimum:1,description:"Image height in pixels"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Image height as percentage (e.g., "90%") relative to heightRelativeTo (defaults to content height)'})],{description:'Image height in pixels (number) or as percentage string (e.g., "90%")'})),widthRelativeTo:t.Optional(t.Union([t.Literal("content"),t.Literal("page")],{description:"Reference for width percentages: content (page width minus margins) or page (full page width)",default:"content"})),heightRelativeTo:t.Optional(t.Union([t.Literal("content"),t.Literal("page")],{description:"Reference for height percentages: content (page height minus margins) or page (full page height)",default:"content"})),alignment:t.Optional(ao),caption:t.Optional(t.String({description:"Image caption (supports rich text with **bold**, *italic*, ***both***)"})),spacing:t.Optional(on),floating:t.Optional(so),keepNext:t.Optional(t.Boolean({description:"Keep paragraph with next paragraph on same page"})),keepLines:t.Optional(t.Boolean({description:"Keep all lines of paragraph together on same page"}))},{description:"Image component props",additionalProperties:!1}),Bs=t.Object({number:t.String({description:"Statistic number/value (required)"}),description:t.String({description:"Statistic description (required)"}),unit:t.Optional(t.String({description:"Unit of measurement"})),format:t.Optional(t.String({description:"Number format pattern"})),trend:t.Optional(t.Union([t.Literal("up"),t.Literal("down"),t.Literal("neutral")])),trendValue:t.Optional(t.Union([t.String(),t.Number()])),alignment:t.Optional(ao),spacing:t.Optional(on),size:t.Optional(t.Union([t.Literal("small"),t.Literal("medium"),t.Literal("large")]))},{description:"Statistic component props",additionalProperties:!1}),ry=t.Recursive(e=>t.Union([t.String(),t.Object({name:t.String(),props:t.Object({},{additionalProperties:!0}),children:t.Optional(t.Array(e))},{additionalProperties:!1})])),Ds=t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right"),t.Literal("justify")],{description:"Horizontal text alignment"}),Es=t.Union([t.Literal("top"),t.Literal("middle"),t.Literal("bottom")],{description:"Vertical cell alignment"}),zs=t.Object({family:t.Optional(t.String({description:"Font family name"})),size:t.Optional(t.Number({minimum:0,description:"Font size in points"})),bold:t.Optional(t.Boolean({description:"Bold text"})),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900,description:"Per-cell weight (100–900). Overrides `bold` when set."})),italic:t.Optional(t.Boolean({description:"Italic text"})),underline:t.Optional(t.Boolean({description:"Underlined text"}))},{additionalProperties:!1}),ur=t.Union([t.String({description:"Border color for all sides (hex without #)"}),t.Object({bottom:t.Optional(t.String({description:"Bottom border color (hex without #)"})),top:t.Optional(t.String({description:"Top border color (hex without #)"})),right:t.Optional(t.String({description:"Right border color (hex without #)"})),left:t.Optional(t.String({description:"Left border color (hex without #)"}))},{additionalProperties:!1})]),mr=t.Union([t.Number({minimum:0,description:"Border size for all sides in points"}),t.Object({bottom:t.Optional(t.Number({minimum:0,description:"Bottom border size in points"})),top:t.Optional(t.Number({minimum:0,description:"Top border size in points"})),right:t.Optional(t.Number({minimum:0,description:"Right border size in points"})),left:t.Optional(t.Number({minimum:0,description:"Left border size in points"}))},{additionalProperties:!1})]),oy=t.Union([t.Boolean({description:"Hide all borders when true"}),t.Object({bottom:t.Optional(t.Boolean({description:"Hide bottom border"})),top:t.Optional(t.Boolean({description:"Hide top border"})),right:t.Optional(t.Boolean({description:"Hide right border"})),left:t.Optional(t.Boolean({description:"Hide left border"})),insideHorizontal:t.Optional(t.Boolean({description:"Hide horizontal borders between rows"})),insideVertical:t.Optional(t.Boolean({description:"Hide vertical borders between columns"}))},{description:"Selectively hide specific borders",additionalProperties:!1})]),Ks=t.Union([t.Number({minimum:0,description:"Padding for all sides in points"}),t.Object({bottom:t.Optional(t.Number({minimum:0,description:"Bottom padding in points"})),top:t.Optional(t.Number({minimum:0,description:"Top padding in points"})),right:t.Optional(t.Number({minimum:0,description:"Right padding in points"})),left:t.Optional(t.Number({minimum:0,description:"Left padding in points"}))},{additionalProperties:!1})]),Xi=t.Object({color:t.Optional(S),backgroundColor:t.Optional(Ns),horizontalAlignment:t.Optional(Ds),verticalAlignment:t.Optional(Es),font:t.Optional(zs),borderColor:t.Optional(ur),borderSize:t.Optional(mr),padding:t.Optional(Ks),height:t.Optional(t.Number({minimum:0,description:"Cell height in points"}))},{additionalProperties:!1});function _s(e){const n=t.Union([t.String(),e]),i={color:t.Optional(S),backgroundColor:t.Optional(Ns),horizontalAlignment:t.Optional(Ds),verticalAlignment:t.Optional(Es),font:t.Optional(zs),borderColor:t.Optional(ur),borderSize:t.Optional(mr),padding:t.Optional(Ks),height:t.Optional(t.Number({minimum:0,description:"Cell height in points"})),comment:t.Optional(Di),revision:t.Optional(Bi)},r=t.Object({...i,content:t.Optional(n)},{additionalProperties:!1}),o=t.Object({...i,content:t.Optional(n)},{additionalProperties:!1}),a=t.Object({width:t.Optional(t.Union([t.Number({minimum:0,description:"Column width in points. When set on some columns, remaining columns will automatically share the leftover table space equally. Leave undefined to distribute space evenly among unspecified columns."}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Column width as percentage of available width (e.g., "40%")'})])),cellDefaults:t.Optional(Xi),header:t.Optional(r),cells:t.Optional(t.Array(o))},{additionalProperties:!1});return t.Object({borderColor:t.Optional(ur),borderSize:t.Optional(mr),hideBorders:t.Optional(oy),cellDefaults:t.Optional(Xi),headerCellDefaults:t.Optional(Xi),width:t.Optional(t.Number({minimum:0,maximum:100,description:"Table width in percentage (0-100)"})),columns:t.Array(a,{description:"Table columns with headers and cells",minItems:1}),rows:t.Optional(t.Array(t.Object({revision:t.Optional(XO),cantSplit:t.Optional(t.Boolean({description:"Keep this row on one page"})),tableHeader:t.Optional(t.Boolean({description:"Repeat this row as a header on each page"}))},{additionalProperties:!1}),{description:"Row-parallel properties, indexed like `columns[].cells`. The model is column-major, so anything that belongs to a whole row lives here."})),keepInOnePage:t.Optional(t.Boolean({description:"Keep table rows together on the same page by setting keepNext on all paragraphs"})),keepNext:t.Optional(t.Boolean({description:"Set keepNext on the last row to keep it connected to the next element. Works independently of keepInOnePage. Defaults to false."})),repeatHeaderOnPageBreak:t.Optional(t.Boolean({description:"Repeat the header row on each page when the table spans multiple pages. Defaults to true.",default:!0}))},{description:"Table component props with column-based structure",additionalProperties:!1})}var Hs=_s(ry),Gs=e=>t.Object({meta:t.Optional(t.Object({title:t.Optional(t.String({description:"Authoring label for this section, shown in editors and outlines. Never rendered — add a heading child for a visible title."}))},{additionalProperties:!1,description:"Authoring metadata; has no effect on the document."})),header:t.Optional(t.Union([t.Array(e||t.Any(),{description:"Section header components"}),t.Literal("linkToPrevious",{description:"Link header to previous section"})])),footer:t.Optional(t.Union([t.Array(e||t.Any(),{description:"Section footer components"}),t.Literal("linkToPrevious",{description:"Link footer to previous section"})])),pageBreak:t.Optional(t.Boolean({description:"Insert page break before section",default:!0})),spacing:t.Optional(on),page:t.Optional(t.Object({size:t.Optional(t.Union([t.Literal("A4"),t.Literal("A3"),t.Literal("LETTER"),t.Literal("LEGAL"),t.Object({width:t.Number({minimum:0}),height:t.Number({minimum:0})})])),margins:t.Optional(t.Object({top:t.Optional(t.Number({minimum:0})),bottom:t.Optional(t.Number({minimum:0})),left:t.Optional(t.Number({minimum:0})),right:t.Optional(t.Number({minimum:0})),header:t.Optional(t.Number({minimum:0})),footer:t.Optional(t.Number({minimum:0})),gutter:t.Optional(t.Number({minimum:0}))},{additionalProperties:!1}))},{description:"Page configuration override for this section (overrides theme page settings)",additionalProperties:!1}))},{description:"Section component props",additionalProperties:!1}),Ws=Gs(),ay=t.Object({width:t.Optional(t.Union([t.Number({minimum:1,description:"Column width in points"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Column width as percentage of available width (e.g., "30%")'}),t.Literal("auto",{description:"Auto width: consume remaining space after fixed widths and gaps"})])),gap:t.Optional(t.Union([t.Number({minimum:0,description:"Gap after this column in points"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Gap after this column as percentage of available width (e.g., "5%")'})]))},{additionalProperties:!1}),qs=t.Object({columns:t.Union([t.Number({minimum:1,description:"Number of equal-width columns (converter will normalize to array)"}),t.Array(ay,{minItems:1,description:"List of columns in order; width and gap can be points, percentages, or auto width"})]),gap:t.Optional(t.Union([t.Number({minimum:0,description:"Default gap applied after each column except the last (points)"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Default gap applied after each column except the last as percentage of available width (e.g., "5%")'})]))},{description:"Columns component props",additionalProperties:!1}),Js=t.Union([t.Literal("decimal"),t.Literal("upperRoman"),t.Literal("lowerRoman"),t.Literal("upperLetter"),t.Literal("lowerLetter"),t.Literal("bullet"),t.Literal("ordinal"),t.Literal("cardinalText"),t.Literal("ordinalText"),t.Literal("hex"),t.Literal("chicago"),t.Literal("ideographDigital"),t.Literal("japaneseCounting"),t.Literal("aiueo"),t.Literal("iroha"),t.Literal("decimalFullWidth"),t.Literal("decimalHalfWidth"),t.Literal("japaneseLegal"),t.Literal("japaneseDigitalTenThousand"),t.Literal("decimalEnclosedCircle"),t.Literal("decimalFullWidth2"),t.Literal("aiueoFullWidth"),t.Literal("irohaFullWidth"),t.Literal("decimalZero"),t.Literal("ganada"),t.Literal("chosung"),t.Literal("decimalEnclosedFullstop"),t.Literal("decimalEnclosedParen"),t.Literal("decimalEnclosedCircleChinese"),t.Literal("ideographEnclosedCircle"),t.Literal("ideographTraditional"),t.Literal("ideographZodiac"),t.Literal("ideographZodiacTraditional"),t.Literal("taiwaneseCounting"),t.Literal("ideographLegalTraditional"),t.Literal("taiwaneseCountingThousand"),t.Literal("taiwaneseDigital"),t.Literal("chineseCounting"),t.Literal("chineseLegalSimplified"),t.Literal("chineseCountingThousand"),t.Literal("koreanDigital"),t.Literal("koreanCounting"),t.Literal("koreanLegal"),t.Literal("koreanDigital2"),t.Literal("vietnameseCounting"),t.Literal("russianLower"),t.Literal("russianUpper"),t.Literal("none"),t.Literal("numberInDash"),t.Literal("hebrew1"),t.Literal("hebrew2"),t.Literal("arabicAlpha"),t.Literal("arabicAbjad"),t.Literal("hindiVowels"),t.Literal("hindiConsonants"),t.Literal("hindiNumbers"),t.Literal("hindiCounting"),t.Literal("thaiLetters"),t.Literal("thaiNumbers"),t.Literal("thaiCounting")],{description:"Number or bullet format for list levels"}),sy=t.Object({family:t.Optional(t.String({description:"Font family name"})),size:t.Optional(t.Number({minimum:1,description:"Marker size in points"})),color:t.Optional(S),bold:t.Optional(t.Boolean({description:"Bold marker"})),italic:t.Optional(t.Boolean({description:"Italic marker"})),underline:t.Optional(t.Boolean({description:"Underlined marker"}))},{description:"Styling for the number/bullet glyph only. The list text is unaffected.",additionalProperties:!1}),cy=t.Object({level:t.Number({minimum:0,maximum:8,description:"Nesting level (0 = root, 1 = first sublevel, etc.)"}),format:t.Optional(Js),text:t.Optional(t.String({description:'Number format string (e.g., "%1." for "1.", "%1)" for "1)", custom bullet character for bullet format)'})),alignment:t.Optional(t.Union([t.Literal("start"),t.Literal("end"),t.Literal("left"),t.Literal("right"),t.Literal("center")],{description:"Alignment of the numbering/bullet"})),indent:t.Optional(ki),start:t.Optional(t.Number({minimum:1,description:"Starting number for this level (default: 1)"})),font:t.Optional(sy)},{description:"Configuration for a single list level",additionalProperties:!1}),Xs=t.Object({items:t.Array(t.Union([t.String(),t.Object({text:t.String(),level:t.Optional(t.Number({minimum:0,maximum:8,description:"Nesting level for this item"})),revision:t.Optional(Bi)},{additionalProperties:!1})]),{description:"List items (required)",minItems:1}),reference:t.Optional(t.String({description:"Unique reference ID for this numbering configuration (auto-generated if not provided)"})),levels:t.Optional(t.Array(cy,{description:"Configuration for each nesting level",minItems:1,maxItems:9})),format:t.Optional(t.Union([Js,t.Literal("numbered"),t.Literal("none")],{description:"Format for level 0 (simplified option when levels not specified)"})),bullet:t.Optional(t.String({description:"Custom bullet character (simplified option when levels not specified)"})),start:t.Optional(t.Number({minimum:1,description:"Starting number for level 0. Applies whether or not `levels` is given; a `start` on the level itself wins."})),spacing:t.Optional(UO),alignment:t.Optional(As),indent:t.Optional(t.Union([t.Number({minimum:0}),ki])),comment:t.Optional(Di)},{description:"List component props",additionalProperties:!1}),co=["revision","comment","footnotes","endnotes"],ly=t.Partial(t.Omit(vs,co)),dy=t.Partial(t.Omit(Ms,co)),py=t.Partial(ks),uy=t.Partial(Bs),my=t.Partial(t.Omit(Hs,["rows"])),fy=t.Partial(Ws),gy=t.Partial(qs),hy=t.Partial(t.Omit(Xs,co)),Vs=t.Object({heading:t.Optional(ly),paragraph:t.Optional(dy),image:t.Optional(py),statistic:t.Optional(uy),table:t.Optional(my),section:t.Optional(fy),columns:t.Optional(gy),list:t.Optional(hy)},{additionalProperties:!0}),by=t.Object({top:t.Number({minimum:0}),bottom:t.Number({minimum:0}),left:t.Number({minimum:0}),right:t.Number({minimum:0}),header:t.Number({minimum:0}),footer:t.Number({minimum:0}),gutter:t.Number({minimum:0})},{additionalProperties:!1,description:"Document margin configuration"});t.Object({width:t.Number({minimum:0}),height:t.Number({minimum:0})},{additionalProperties:!1,description:"Page dimensions in twips"});var Oy=t.Object({size:t.Union([t.Literal("A4"),t.Literal("A3"),t.Literal("LETTER"),t.Literal("LEGAL"),t.Object({width:t.Number({minimum:0}),height:t.Number({minimum:0})},{additionalProperties:!1})],{description:"Standard page size or custom dimensions"}),margins:by},{description:"Page configuration including dimensions and margins",additionalProperties:!1}),Ys=t.Object({heading:Dt,body:Dt,mono:Dt,light:Dt},{additionalProperties:!1,description:"Font definitions for different text types"}),yy=t.Union([t.Literal("single"),t.Literal("dashDotStroked"),t.Literal("dashed"),t.Literal("dashSmallGap"),t.Literal("dotDash"),t.Literal("dotDotDash"),t.Literal("dotted"),t.Literal("double"),t.Literal("doubleWave"),t.Literal("inset"),t.Literal("nil"),t.Literal("none"),t.Literal("outset"),t.Literal("thick"),t.Literal("thickThinLargeGap"),t.Literal("thickThinMediumGap"),t.Literal("thickThinSmallGap"),t.Literal("thinThickLargeGap"),t.Literal("thinThickMediumGap"),t.Literal("thinThickSmallGap"),t.Literal("thinThickThinLargeGap"),t.Literal("thinThickThinMediumGap"),t.Literal("thinThickThinSmallGap"),t.Literal("threeDEmboss"),t.Literal("threeDEngrave"),t.Literal("triple"),t.Literal("wave")],{description:"Paragraph border style"}),Zs={style:yy,size:t.Number({minimum:0,description:"Width in eighths of a point (docx sz)"}),color:S,space:t.Optional(t.Number({minimum:0,description:"Space between text and border in points"}))},zn=t.Object(Zs,{additionalProperties:!1,description:"Paragraph border side definition"}),xy=t.Object(Zs,{additionalProperties:!1,description:"Rule drawn between consecutive paragraphs sharing this border set (w:between), in place of their adjoining bottom and top edges"}),Qs=t.Object({top:t.Optional(zn),bottom:t.Optional(zn),left:t.Optional(zn),right:t.Optional(zn),between:t.Optional(xy)},{additionalProperties:!1,description:"Paragraph borders (per side, plus the between-paragraph rule)"}),ec=t.Optional(t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right"),t.Literal("justify")])),Ne=t.Object({font:t.Optional(t.Union([t.Literal("heading"),t.Literal("body"),t.Literal("mono"),t.Literal("light")])),...oo.properties,alignment:ec,priority:t.Optional(t.Number()),baseStyle:t.Optional(t.String()),followingStyle:t.Optional(t.String()),widowControl:t.Optional(t.Boolean()),keepNext:t.Optional(t.Boolean()),keepLinesTogether:t.Optional(t.Boolean()),outlineLevel:t.Optional(t.Number()),borders:t.Optional(Qs),indent:t.Optional(ki)},{additionalProperties:!1}),Sy=t.Union([t.Literal("dot"),t.Literal("hyphen"),t.Literal("middleDot"),t.Literal("none"),t.Literal("underscore")],{description:"Tab leader style: dot (dotted), hyphen (dashed), middleDot, none (blank), or underscore"}),wy=t.Union([t.Literal("left"),t.Literal("right"),t.Literal("center"),t.Literal("bar"),t.Literal("clear"),t.Literal("decimal"),t.Literal("end"),t.Literal("num"),t.Literal("start")],{description:"Tab stop alignment type"}),Ly=t.Object({type:wy,position:t.Union([t.Number({description:"Tab stop position in twips (1/1440 inch). Common: 9026 for right-aligned at page margin"}),t.Literal("max",{description:"Use maximum position (TabStopPosition.MAX = 9026 twips)"})]),leader:t.Optional(Sy)},{description:"Tab stop configuration with position, alignment, and optional leader",additionalProperties:!1}),Mt=t.Object({font:t.Optional(t.Union([t.Literal("heading"),t.Literal("body"),t.Literal("mono"),t.Literal("light")])),...oo.properties,alignment:ec,tabStops:t.Optional(t.Array(Ly,{description:"Tab stops for TOC entries. Use right-aligned tab with leader to create dotted lines to page numbers.",default:[{type:"right",position:"max",leader:"none"}]})),priority:t.Optional(t.Number()),followingStyle:t.Optional(t.String()),widowControl:t.Optional(t.Boolean()),keepNext:t.Optional(t.Boolean()),keepLinesTogether:t.Optional(t.Boolean()),outlineLevel:t.Optional(t.Number()),borders:t.Optional(Qs),indent:t.Optional(ki)},{additionalProperties:!1}),tc=t.Object({normal:t.Optional(Ne),heading1:t.Optional(Ne),heading2:t.Optional(Ne),heading3:t.Optional(Ne),heading4:t.Optional(Ne),heading5:t.Optional(Ne),heading6:t.Optional(Ne),title:t.Optional(Ne),subtitle:t.Optional(Ne),TOC1:t.Optional(Mt),TOC2:t.Optional(Mt),TOC3:t.Optional(Mt),TOC4:t.Optional(Mt),TOC5:t.Optional(Mt),TOC6:t.Optional(Mt)},{additionalProperties:Ne,description:"Style definitions supporting predefined styles (normal, heading1..6, title, subtitle), TOC entry styles (TOC1..TOC6), and arbitrary custom styles."});t.Object({level:t.Union([t.Literal(1),t.Literal(2),t.Literal(3),t.Literal(4),t.Literal(5),t.Literal(6)]),...Ne.properties},{additionalProperties:!1});var Py=t.Object({primary:S,secondary:S,accent:S,text:S,background:S,border:S,textPrimary:S,textSecondary:S,textMuted:S,borderPrimary:S,borderSecondary:S,backgroundPrimary:S,backgroundSecondary:S,accent4:t.Optional(S),accent5:t.Optional(S),accent6:t.Optional(S)},{additionalProperties:!1}),Iy=t.Object({colors:t.Optional(t.Partial(Py)),fonts:t.Optional(t.Partial(Ys)),styles:t.Optional(tc)},{additionalProperties:!1,description:"Partial theme deep-merged over the resolved named theme: define or override palette tokens, font roles, and named styles in-document."}),Fy=t.Object({$schema:t.Optional(t.String()),name:t.String(),displayName:t.String(),description:t.String(),version:t.String(),colors:t.Object({primary:S,secondary:S,accent:S,text:S,background:S,border:S,textPrimary:S,textSecondary:S,textMuted:S,borderPrimary:S,borderSecondary:S,backgroundPrimary:S,backgroundSecondary:S,accent4:t.Optional(S),accent5:t.Optional(S),accent6:t.Optional(S)},{additionalProperties:!1}),fonts:Ys,fontRegistry:t.Optional($i),page:Oy,styles:t.Optional(tc),componentDefaults:t.Optional(Vs),noProofWords:t.Optional(t.Array(t.String({minLength:1}),{description:"Words that should never be flagged as misspelled (whole-word, case-insensitive)."}))},{additionalProperties:!1,description:"Theme configuration"});function R0(e="minimal-theme"){return{name:e,displayName:e.split(/[-_\s]+/).filter(Boolean).map(n=>n.charAt(0).toUpperCase()+n.slice(1)).join(" ")||e,description:"A minimal theme with basic styling",version:"1.0.0",colors:{primary:"#2563EB",secondary:"#64748B",accent:"#F8FAFC",text:"#334155",background:"#FFFFFF",border:"#E2E8F0",textPrimary:"#334155",textSecondary:"#64748B",textMuted:"#94A3B8",borderPrimary:"#CBD5E1",borderSecondary:"#E2E8F0",backgroundPrimary:"#FFFFFF",backgroundSecondary:"#F8FAFC"},fonts:{heading:{family:"Arial",size:14},body:{family:"Arial",size:11},mono:{family:"Courier New",size:10},light:{family:"Arial",size:10}},page:{size:"A4",margins:{top:1440,bottom:1440,left:1440,right:1440,header:720,footer:720,gutter:0}},styles:{normal:{font:"body",size:11,color:"#334155",alignment:"left",lineSpacing:{type:"multiple",value:1.15},spacing:{after:8}}}}}var $y=e=>t.Object({theme:t.Optional(t.String({description:'Theme name to apply (default: "minimal")',examples:["minimal","corporate","modern"],default:"minimal"})),themeOverrides:t.Optional(Iy),fontRegistry:t.Optional($i),componentDefaults:t.Optional(Vs),language:t.Optional(t.String({pattern:"^[A-Za-z]{2,3}(-[A-Za-z0-9]{2,8})*$",description:`Default document language (BCP-47 tag, e.g. "en-US"). Sets Word's default proofing/spell-check language; individual components can override it locally.`,examples:["en-US","fr-FR","de-DE","it-IT","es-ES"]})),noProofWords:t.Optional(ro),trackRevisions:t.Optional(t.Boolean({description:"Open the document in track-changes mode: Word marks any further edits as revisions. Set automatically on redline documents produced by the diff engine"})),metadata:t.Optional(t.Object({title:t.Optional(t.String({description:"Document title",examples:["Annual Report 2024","Technical Documentation"]})),subtitle:t.Optional(t.String({description:"Document subtitle"})),description:t.Optional(t.String()),author:t.Optional(t.String()),company:t.Optional(t.String({description:"Company name, written to docProps/custom.xml (Word has no core-property slot for it)"})),date:t.Optional(t.String({description:"Document date used by {DATE}/{DATETIME} placeholders (defaults to the generation timestamp)"})),version:t.Optional(t.String({description:"Document version, written to docProps/custom.xml",examples:["1.0","2024.3"]})),tags:t.Optional(t.Array(t.String()))},{description:"Document metadata (title, author, company, version, etc.). Package timestamps (dcterms:created/modified) are not part of this object: they come from the `generatedAt` generation option so repeated builds stay byte-identical.",additionalProperties:!1}))},{description:"Report component props",additionalProperties:!1}),Ny=$y(),Cy=t.Object({width:t.Optional(t.Union([t.Number({minimum:1,description:"Text box width in pixels"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Text box width as percentage (e.g., "50%") relative to content width'})],{description:'Text box width in pixels (number) or as percentage string (e.g., "50%")'})),height:t.Optional(t.Union([t.Number({minimum:1,description:"Text box height in pixels"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Text box height as percentage (e.g., "50%") relative to content height'})],{description:'Text box height in pixels (number) or as percentage string (e.g., "50%")'})),floating:t.Optional(so),style:t.Optional(t.Object({padding:t.Optional(t.Object({top:t.Optional(t.Number({minimum:0})),right:t.Optional(t.Number({minimum:0})),bottom:t.Optional(t.Number({minimum:0})),left:t.Optional(t.Number({minimum:0}))},{additionalProperties:!1})),border:t.Optional(t.Object({top:t.Optional(t.Object({style:t.Optional(t.Union([t.Literal("solid"),t.Literal("dashed"),t.Literal("dotted"),t.Literal("double"),t.Literal("none")])),width:t.Optional(t.Number({minimum:0})),color:t.Optional(S)},{additionalProperties:!1})),right:t.Optional(t.Object({style:t.Optional(t.Union([t.Literal("solid"),t.Literal("dashed"),t.Literal("dotted"),t.Literal("double"),t.Literal("none")])),width:t.Optional(t.Number({minimum:0})),color:t.Optional(S)},{additionalProperties:!1})),bottom:t.Optional(t.Object({style:t.Optional(t.Union([t.Literal("solid"),t.Literal("dashed"),t.Literal("dotted"),t.Literal("double"),t.Literal("none")])),width:t.Optional(t.Number({minimum:0})),color:t.Optional(S)},{additionalProperties:!1})),left:t.Optional(t.Object({style:t.Optional(t.Union([t.Literal("solid"),t.Literal("dashed"),t.Literal("dotted"),t.Literal("double"),t.Literal("none")])),width:t.Optional(t.Number({minimum:0})),color:t.Optional(S)},{additionalProperties:!1}))},{additionalProperties:!1})),shading:t.Optional(t.Object({fill:t.Optional(S)},{additionalProperties:!1}))},{additionalProperties:!1}))},{additionalProperties:!1}),Ty=t.Union([t.Literal("numeric"),t.Literal("bullet"),t.Literal("none")],{description:"TOC numbering style — accepted but not applied (Word TOC fields carry no numbering switch); setting it logs a warning during generation"}),Ay=t.Union([t.Literal("document"),t.Literal("section")],{description:"TOC scope: document-wide or section-only"}),jy=t.Object({styleId:t.String({description:"Custom style ID matching a key in theme.styles"}),level:t.Number({minimum:1,maximum:6,description:"TOC level (1-6) to assign to this style"})},{description:"Mapping of custom style to TOC level",additionalProperties:!1});t.Object({from:t.Optional(t.Number({minimum:1,maximum:6,default:1,description:"Starting heading level (1-6). Defaults to 1 if not specified."})),to:t.Optional(t.Number({minimum:1,maximum:6,default:3,description:"Ending heading level (1-6). Defaults to 3 if not specified."}))},{description:'Range of heading levels to include in TOC. Specify at least one of "from" or "to".',additionalProperties:!1});var Ry=t.Object({pageBreak:t.Optional(t.Boolean({description:"Insert page break before TOC block"})),depth:t.Optional(t.Object({from:t.Optional(t.Number({minimum:1,maximum:6,default:1,description:"Starting heading level (1-6). Defaults to 1 if not specified."})),to:t.Optional(t.Number({minimum:1,maximum:6,default:3,description:"Ending heading level (1-6). Defaults to 3 if not specified."}))},{description:'Range of heading levels to include in TOC. Specify "from", "to", or both. Defaults: from=1, to=3',additionalProperties:!1,default:{to:3}})),pageNumbersDepth:t.Optional(t.Object({from:t.Optional(t.Number({minimum:1,maximum:6,default:1,description:"Starting heading level (1-6). Defaults to 1 if not specified."})),to:t.Optional(t.Number({minimum:1,maximum:6,default:3,description:"Ending heading level (1-6). Defaults to 3 if not specified."}))},{description:'Range of heading levels to show page numbers. Specify "from", "to", or both. When specified, page numbers are hidden for entries outside this range.',additionalProperties:!1})),numberingStyle:t.Optional(Ty),title:t.Optional(t.String({description:"TOC heading title"})),includePageNumbers:t.Optional(t.Boolean({default:!0,description:"Show page numbers next to entries"})),numberSeparator:t.Optional(t.Boolean({default:!0,description:'Use tab separator between entry and page number. True applies "\\t" (default), false applies " "'})),scope:t.Optional(t.Union([Ay,t.Literal("auto")],{default:"auto",description:'TOC scope: "document" for entire document, "section" for parent section only, "auto" for automatic detection (section if inside section, otherwise document)'})),styles:t.Optional(t.Array(jy,{description:"Custom style mappings for TOC entries. Maps custom theme styles to TOC levels."}))},{description:"Table of Contents component props",additionalProperties:!1}),vy=t.Object({options:t.Intersect([t.Record(t.String(),t.Unknown()),t.Object({chart:t.Object({width:t.Number(),height:t.Number()})})]),scale:t.Optional(t.Number()),resources:t.Optional(t.Object({css:t.Optional(t.String()),js:t.Optional(t.String()),files:t.Optional(t.Array(t.String()))})),serverUrl:t.Optional(t.String({description:"Highcharts Export Server URL (default: http://localhost:7801)"})),width:t.Optional(t.Union([t.Number({minimum:1,description:"Image width in pixels"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Image width as percentage (e.g., "90%") relative to content width'})],{description:'Rendered image width in pixels (number) or as percentage string (e.g., "90%")'})),height:t.Optional(t.Union([t.Number({minimum:1,description:"Image height in pixels"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Image height as percentage (e.g., "90%") relative to content height'})],{description:'Rendered image height in pixels (number) or as percentage string (e.g., "90%")'}))}),Uy=t.Object({color:t.Optional(t.String({description:'Background color (hex like "#FFFFFF" or a theme color name)'})),image:t.Optional(t.Object({path:t.Optional(t.String()),base64:t.Optional(t.String())},{additionalProperties:!1}))},{additionalProperties:!1}),My=t.Object({width:t.Number({minimum:.1,description:"Canvas width in inches (pptx slideWidth)"}),height:t.Number({minimum:.1,description:"Canvas height in inches (pptx slideHeight)"}),theme:t.Optional(t.String({description:"pptx theme name applied to the slide"})),background:t.Optional(Uy)},{description:"pptx canvas definition for the visual",additionalProperties:!1}),ky=t.Object({canvas:My,elements:t.Optional(t.Array(Zg,{description:"pptx slide content elements (text, image, shape, table, highcharts, chart), positioned with x/y/w/h in inches"})),dpi:t.Optional(t.Number({minimum:Mo,maximum:ko,default:Uo,description:`Raster resolution in DPI (default ${Uo}, range ${Mo}-${ko}). Higher = sharper + larger.`})),serverUrl:t.Optional(t.String({description:"Rasterization service URL override (default from services.pptx)"})),width:t.Optional(t.Union([t.Number({minimum:1,description:"Rendered width in pixels"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Rendered width as percentage (e.g. "90%")'})],{description:"Rendered width in the document, in pixels (number) or percentage string. Defaults to the canvas physical size."})),height:t.Optional(t.Union([t.Number({minimum:1,description:"Rendered height in pixels"}),t.String({pattern:"^\\d+(\\.\\d+)?%$",description:'Rendered height as percentage (e.g. "90%")'})])),alignment:t.Optional(ao),caption:t.Optional(t.String({description:"Caption (supports rich text with **bold**, *italic*, ***both***)"})),alt:t.Optional(t.String({description:"Alternative text for accessibility"})),spacing:t.Optional(on),floating:t.Optional(so),keepNext:t.Optional(t.Boolean({description:"Keep paragraph with next paragraph on same page"})),keepLines:t.Optional(t.Boolean({description:"Keep all lines of paragraph together on same page"}))},{description:"Visual component props (pptx-rendered graphic)",additionalProperties:!1}),Gt=[{name:"docx",propsSchema:Ny,hasChildren:!0,allowedChildren:["section"],category:"container",description:"Main document container - defines the overall document structure. Required as the root component.",special:{hasSchemaField:!0}},{name:"section",propsSchema:Ws,createPropsSchema:Gs,hasChildren:!0,allowedChildren:["heading","paragraph","image","statistic","table","list","toc","highcharts","visual","columns","text-box"],category:"container",description:"Section container - groups related content with optional title. Use for organizing document structure."},{name:"columns",propsSchema:qs,hasChildren:!0,allowedChildren:["heading","paragraph","image","statistic","table","list","toc","highcharts","visual","text-box"],category:"layout",description:"Multi-column layout - arranges content in 2-4 columns. Great for side-by-side content."},{name:"text-box",propsSchema:Cy,hasChildren:!0,allowedChildren:["heading","paragraph","image"],category:"layout",description:"Floating text container - allows positioning text anywhere on the page with absolute or relative positioning."},{name:"heading",propsSchema:vs,hasChildren:!1,category:"content",description:"Heading text - supports levels 1-6 for document hierarchy. Level 1 is largest."},{name:"paragraph",propsSchema:Ms,hasChildren:!1,category:"content",description:"Paragraph text - supports formatting like bold, italic, and color. Main content element."},{name:"image",propsSchema:ks,hasChildren:!1,category:"content",description:"Image element - displays images with optional caption. Supports various formats."},{name:"statistic",propsSchema:Bs,hasChildren:!1,category:"content",description:"Statistic display - shows a number with description. Perfect for KPIs and metrics."},{name:"table",propsSchema:Hs,createPropsSchema:_s,hasChildren:!1,category:"content",description:"Data table - displays tabular data with headers. Supports formatting and alignment."},{name:"list",propsSchema:Xs,hasChildren:!1,category:"content",description:"List element - bulleted or numbered list items. Supports nested lists."},{name:"toc",propsSchema:Ry,hasChildren:!1,category:"content",description:"Table of contents - automatically generates TOC from document headings. Supports depth ranges and custom styles."},{name:"highcharts",propsSchema:vy,hasChildren:!1,category:"content",description:"Chart component powered by Highcharts - render line, bar, pie, heatmap, and more with rich options."},{name:"visual",propsSchema:ky,hasChildren:!1,category:"content",description:"Free-canvas graphic authored as a single pptx slide and embedded as a rasterized PNG. Use for infographics, diagrams and layered compositions that the document flow cannot express."}];function Do(e){return Gt.find(n=>n.name===e)}function By(e){var i;const n=e;return n.type!=="object"||(((i=n.required)==null?void 0:i.length)??0)>0}function qn(e,n,i){var a,s;const r={name:t.Literal(e.name),id:t.Optional(t.String()),enabled:t.Optional(t.Boolean({default:!0,description:"When false, this component is filtered out and not rendered. Defaults to true. Useful for conditional component inclusion."}))};(a=e.special)!=null&&a.hasSchemaField&&(r.$schema=t.Optional(t.String({format:"uri"})));const o=e.createPropsSchema&&i?e.createPropsSchema(i):e.propsSchema;return r.props=By(o)?o:t.Optional(o),e.hasChildren&&n&&(r.children=(s=e.special)!=null&&s.hasSchemaField?t.Array(n):t.Optional(t.Array(n))),t.Object(r,{additionalProperties:!1,description:e.description})}function Dy(e){return Gt.map(n=>qn(n,e))}function nc(e,n=[]){const i=new Map;for(const l of Gt)l.hasChildren||i.set(l.name,qn(l,void 0,e));const r=Gt.filter(l=>l.hasChildren),o=new Map,a=[...r];for(;a.length>0;){const l=a.length;for(let c=a.length-1;c>=0;c--){const m=a[c];if(!m.allowedChildren){o.set(m.name,qn(m,e,e)),a.splice(c,1);continue}if(!m.allowedChildren.filter(h=>r.some(u=>u.name===h)).every(h=>o.has(h)))continue;const I=[...m.allowedChildren.map(h=>o.get(h)??i.get(h)).filter(h=>h!==void 0),...n],A=I.length===1?I[0]:t.Union(I);o.set(m.name,qn(m,A,e)),a.splice(c,1)}if(a.length===l)throw new Error(`Circular allowedChildren among: ${a.map(c=>c.name).join(", ")}`)}const s=new Map([...o,...i]);return{schemas:[...s.values()],byName:s}}function Ey(e={}){const{includeStandardComponents:n=!0,customComponents:i=[],title:r="JSON Report Definition",description:o="JSON report definition with TypeBox schemas"}=e;let a=[],s=[];const l=t.Recursive(m=>{const x=[];for(const u of i)if(u.versionedProps&&u.versionedProps.length>0){const P=u.versionedProps,j=ms(P.map(E=>E.version));for(const E of P){const oe=E.description||u.description,ut={name:t.Literal(u.name),id:t.Optional(t.String()),version:oe?t.Literal(E.version,{description:oe}):t.Literal(E.version),props:E.propsSchema};E.hasChildren&&(ut.children=t.Optional(t.Array(m)));const jn=E.description?`${u.name} v${E.version} — ${E.description}`:u.description?`${u.name} v${E.version} — ${u.description}`:`${u.name} v${E.version}`;x.push(t.Object(ut,{additionalProperties:!1,description:jn}))}const re=P.find(E=>E.version===j),Ze={name:t.Literal(u.name),id:t.Optional(t.String()),props:re.propsSchema};re.hasChildren&&(Ze.children=t.Optional(t.Array(m)));const Qe=re.description?`${u.name} (latest: v${j}) — ${re.description}`:u.description?`${u.name} (latest: v${j}) — ${u.description}`:`${u.name} (latest: v${j})`;x.push(t.Object(Ze,{additionalProperties:!1,description:Qe}))}else{const P=!!u.hasChildren,j={name:t.Literal(u.name),id:t.Optional(t.String()),props:u.propsSchema};P&&(j.children=t.Optional(t.Array(m))),x.push(t.Object(j,{additionalProperties:!1,...u.description?{description:u.description}:{}}))}const{schemas:L,byName:I}=n?nc(m,x):{schemas:[],byName:new Map},A=Do("section");a=["section",...(A==null?void 0:A.allowedChildren)??[]].map(u=>I.get(u)).filter(u=>u!==void 0),s=x;const h=[...L,...x];if(h.length===0)return t.Any();if(h.length===1)return h[0];{const u=i.length>0?"Component definition with discriminated union including custom components":"Component definition with discriminated union";return t.Union(h,{discriminator:{propertyName:"name"},description:u})}},{$id:"ComponentDefinition"}),c=Do("docx");if(!c)throw new Error("Docx root component not found in registry");if(a.length===0)throw new Error("Root child schemas not found in narrowed standard schemas");return t.Object({name:t.Literal("docx"),id:t.Optional(t.String()),$schema:t.Optional(t.String({format:"uri"})),props:t.Optional(c.propsSchema),children:t.Array(t.Union([...a,...s],{discriminator:{propertyName:"name"}}))},{additionalProperties:!1,title:r,description:o,definitions:{ComponentDefinition:l}})}t.Union([...Dy(t.Any())],{discriminator:{propertyName:"name"},description:"Standard component definition with discriminated union"});var zy=t.Recursive(e=>t.Union([...nc(e).schemas],{discriminator:{propertyName:"name"},description:"Component definition with discriminated union"})),Ky=t.Object({content:t.String({description:"Text content (required)"}),spaceAfter:t.Optional(t.Number({minimum:0,description:"Spacing after text in points"})),fontSize:t.Optional(t.Number({minimum:1})),fontFamily:t.Optional(t.String()),bold:t.Optional(t.Boolean()),fontWeight:t.Optional(t.Integer({minimum:100,maximum:900})),italic:t.Optional(t.Boolean()),underline:t.Optional(t.Boolean()),color:t.Optional(t.String({pattern:"^#[0-9A-Fa-f]{6}$"})),alignment:t.Optional(t.Union([t.Literal("left"),t.Literal("center"),t.Literal("right"),t.Literal("justify")]))}),_y=t.Object({name:t.Literal("text-space-after"),id:t.Optional(t.String()),props:Ky}),Hy=_y;Object.fromEntries([...Gt.map(e=>[e.name,e.propsSchema]),["custom",Hy]]);new Set(Gt.filter(e=>{var n;return!!((n=e.special)!=null&&n.hasSchemaField)}).map(e=>e.name));var de={};function Gy(){return{includeEmojis:!ic(),verbosity:"normal",includeSuggestions:!0,includePath:!0,maxMessageLength:0,includeDocLinks:!1,colorSupport:Wy()}}Gy();function ic(){return typeof process>"u"||!de?!1:!!(de.CI||de.CONTINUOUS_INTEGRATION||de.GITHUB_ACTIONS||de.GITLAB_CI||de.CIRCLECI||de.TRAVIS||de.JENKINS_URL)}function Wy(){var e;return typeof process>"u"||de!=null&&de.NO_COLOR?!1:de!=null&&de.FORCE_COLOR||(e=process.stdout)!=null&&e.isTTY?!0:!ic()}t.Object({definition:zy,format:t.Optional(t.Union([t.Literal("docx"),t.Literal("pdf"),t.Literal("html")])),options:t.Optional(t.Object({includeMetadata:t.Optional(t.Boolean()),includeComments:t.Optional(t.Boolean({deprecated:!0,description:"Deprecated and ignored. Comments are authored per component via the `comment` prop."})),trackChanges:t.Optional(t.Boolean())},{additionalProperties:!0}))},{additionalProperties:!1,description:"Document generation request"});t.Object({definition:t.Unknown(),strict:t.Optional(t.Boolean())},{additionalProperties:!1,description:"Document validation request"});t.Object({success:t.Boolean(),documentId:t.Optional(t.String()),downloadUrl:t.Optional(t.String()),error:t.Optional(t.String()),metadata:t.Optional(t.Object({pageCount:t.Optional(t.Number()),wordCount:t.Optional(t.Number()),generatedAt:t.Optional(t.String({format:"date-time"}))},{additionalProperties:!0}))},{additionalProperties:!1,description:"Document generation response"});t.Object({valid:t.Boolean(),errors:t.Array(t.Object({path:t.String(),message:t.String(),code:t.Optional(t.String())})),warnings:t.Optional(t.Array(t.Object({path:t.String(),message:t.String(),code:t.Optional(t.String())})))},{additionalProperties:!1,description:"Document validation response"});Fa("uri",e=>{try{return new URL(e),!0}catch{return e.includes(".json")||e.includes("/")||e.includes("\\")?!0:/^https?:\/\/.+/.test(e)}});Fa("date-time",e=>/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{3})?Z?$/.test(e)&&!isNaN(Date.parse(e)));var qy=["columns","heading","highcharts","image","list","paragraph","docx","section","statistic","table","text-box","toc","visual"];new Set(qy);const Vi=t.Object({basePath:t.String({default:""})});function Jy(e){const n=dO(Vi,e);if(n.basePath&&n.basePath!==""&&(!n.basePath.startsWith("/")||n.basePath.endsWith("/")))throw new Error("basePath must start with / and not end with /");if(!io(Vi,n)){const i=[...qb(Vi,n)];throw new Error(`Environment validation failed: ${i.map(r=>r.message).join(", ")}`)}return n}const v0=Jy({basePath:""}),qe=typeof window<"u"&&window.__JTO_FORMAT__||"docx",U0=qe==="docx"?"Document":"Presentation",M0=qe==="docx"?".docx":".pptx";function Xy(){var r;const e=Ey({customComponents:[]}),n=Ss(e,{$schema:"https://json-schema.org/draft-07/schema#",$id:"https://json-to-office.dev/schema/document/v1.0.0",title:"JSON to DOCX Document Definition",description:"Schema for JSON to DOCX JSON document definitions"}),i={...n,default:{name:"docx",props:{title:"New Document"},children:[]},properties:{...n.properties,children:{...((r=n.properties)==null?void 0:r.children)||{},description:'Array of document components. Type "name" to see available component types.',markdownDescription:"Array of document components. Available types:\n- `docx` - Main container\n- `section` - Section container\n- `heading` - Heading element\n- `paragraph` - Paragraph element\n- `image` - Image element\n- `table` - Data table\n- `list` - List element\n- `columns` - Column layout\n- `statistic` - Statistic element\n- `highcharts` - Highcharts chart\n- `toc` - Table of contents"}},definitions:{...n.definitions||{}}};return lo(i),i}function Vy(){var r;const e=RO({customComponents:[]}),n=Ss(e,{$schema:"https://json-schema.org/draft-07/schema#",$id:"https://json-to-office.dev/schema/presentation/v1.0.0",title:"JSON to PPTX Presentation Definition",description:"Schema for JSON to PPTX JSON presentation definitions"}),i={...n,default:{name:"pptx",props:{title:"New Presentation"},children:[]},properties:{...n.properties,children:{...((r=n.properties)==null?void 0:r.children)||{},description:'Array of slide components. Type "name" to see available component types.',markdownDescription:"Array of presentation components. Available types:\n- `pptx` - Main container\n- `slide` - Slide container\n- `text` - Text element\n- `image` - Image element\n- `shape` - Shape element\n- `table` - Data table\n- `highcharts` - Highcharts chart"}},definitions:{...n.definitions||{}}};return lo(i),i}function Yy(){return qe==="docx"?Xy():Vy()}function Zy(){const n=JSON.parse(JSON.stringify(qe==="docx"?Fy:Ps));fr(n,!1);const i=qe==="docx"?"DOCX":"PPTX";return{...n,$schema:"https://json-schema.org/draft-07/schema#",$id:"https://json-to-office.dev/schemas/theme/v1.0.0",title:`JSON to ${i} Theme`,description:`Theme definition for JSON to ${i} ${qe==="docx"?"documents":"presentations"}`}}function Qy(e=qe==="docx"?["*.docx.json"]:["*.pptx.json"]){return{uri:"https://json-to-office.dev/schema/report/v1.0.0",fileMatch:e,schema:Yy()}}function rc(e=[`*.${qe}.theme.json`]){return{uri:"https://json-to-office.dev/schemas/theme/v1.0.0",fileMatch:e,schema:Zy()}}function lo(e){var n,i,r;if(!(typeof e!="object"||e===null)){if(typeof((i=(n=e.properties)==null?void 0:n.name)==null?void 0:i.const)=="string"){const o=e.properties.name.const;e.description||(e.description=e0(o)),(r=e.properties)!=null&&r.props&&t0(o,e.properties.props)}Object.values(e).forEach(o=>{typeof o=="object"&&o!==null&&lo(o)})}}function e0(e){return{docx:"Main document container - defines the overall document structure.",section:"Section container - groups content within a document section.",heading:"Heading element - displays headings with level and formatting.",paragraph:"Paragraph element - displays text with formatting.",columns:"Column layout - arranges content in multiple columns.",list:"List element - displays ordered or unordered lists.",statistic:"Statistic element - displays key metrics.",highcharts:"Highcharts chart - renders a chart from Highcharts options.",toc:"Table of contents - generates a document TOC.","text-box":"Text box element - a positioned box with text content.",pptx:"Main presentation container - defines the overall presentation structure.",slide:"Slide container - groups content elements within a single slide.",text:"Text element - displays text with formatting and positioning.",shape:"Shape element - geometric shapes with optional text and styling.",image:"Image element - displays images with sizing and positioning.",table:"Table element - displays tabular data with headers and rows.",custom:"Custom component - user-defined component type for specialized content."}[e]||`${e} component`}function t0(e,n){if(!n.properties)return;const r={text:{text:"The text content to display",fontSize:"Font size in points",bold:"Whether to bold the text",color:"Text color as hex string",align:"Text alignment"},shape:{type:"Shape type (rect, ellipse, etc.)",text:"Text content inside the shape",fill:"Fill color"},heading:{text:"The heading text",level:"Heading level (1-6)"},paragraph:{text:"The paragraph text content"},image:{path:"Path or URL to the image",w:"Image width in inches",h:"Image height in inches"},table:{rows:"Array of rows, each containing cell values",colW:"Column widths"}}[e];r&&Object.entries(r).forEach(([o,a])=>{n.properties[o]&&(n.properties[o].description=a)})}function fr(e,n=!0){if(!(typeof e!="object"||e===null)){if(e.$id&&/^T\d+$/.test(e.$id)&&delete e.$id,e.$ref&&/^T\d+$/.test(e.$ref)&&(n?e.$ref="#/definitions/ComponentDefinition":delete e.$ref),Array.isArray(e)){e.forEach(i=>fr(i,n));return}Object.keys(e).forEach(i=>{typeof e[i]=="object"&&e[i]!==null&&fr(e[i],n)})}}const Ce="/api",kt=`${Ce}/${qe}`,k0={discovery:{all:`${Ce}/discovery/all`,plugins:`${Ce}/discovery/plugins`,documents:`${Ce}/discovery/documents`,themes:`${Ce}/discovery/themes`,schemas:{document:`${Ce}/discovery/schemas/document`,theme:`${Ce}/discovery/schemas/theme`}},generate:`${kt}/generate`,validate:`${kt}/validate`,diff:`${kt}/diff`,fonts:{catalog:`${Ce}/fonts/catalog`,materialize:`${Ce}/fonts/materialize`},preview:{libreoffice:`${kt}/preview/libreoffice`,libreofficeFromJson:`${kt}/preview/libreoffice-from-json`},cacheStats:`${kt}/cache-stats`};class n0{constructor(){ft(this,"documentSchemaCache",null);ft(this,"themeSchemaCache",null);ft(this,"pluginSchemaCache",new Map);ft(this,"cacheTimestamp",{});ft(this,"CACHE_DURATION",5*60*1e3);ft(this,"MAX_PLUGIN_CACHE",10)}async fetchDocumentSchema(n){const i=n?`document-${[...n].sort().join(",")}`:"document";if(n){const r=this.pluginSchemaCache.get(i);if(r&&this.isCacheValid(i))return r}else if(this.documentSchemaCache&&this.isCacheValid("document"))return this.documentSchemaCache;try{let r=`${Ce}/discovery/schemas/document`;if(n){const s=new URLSearchParams;s.append("plugins",n.join(",")),r=`${r}?${s.toString()}`}const o=await fetch(r);if(!o.ok)throw new Error(`Failed to fetch document schema: ${o.statusText}`);const a=await o.json();if(!a.success||!a.data)throw new Error(a.error||"Failed to fetch document schema");if(n){if(this.pluginSchemaCache.size>=this.MAX_PLUGIN_CACHE){const s=this.pluginSchemaCache.keys().next().value;s&&this.pluginSchemaCache.delete(s)}this.pluginSchemaCache.set(i,a.data)}else this.documentSchemaCache=a.data;return this.cacheTimestamp[i]=Date.now(),a.data}catch(r){throw console.error("Error fetching document schema:",r),r}}async fetchThemeSchema(){if(this.themeSchemaCache&&this.isCacheValid("theme"))return this.themeSchemaCache;try{const n=await fetch(`${Ce}/discovery/schemas/theme`);if(!n.ok)throw new Error(`Failed to fetch theme schema: ${n.statusText}`);const i=await n.json();if(!i.success||!i.data)throw new Error(i.error||"Failed to fetch theme schema");return this.themeSchemaCache=i.data,this.cacheTimestamp.theme=Date.now(),i.data}catch(n){throw console.error("Error fetching theme schema:",n),n}}async getSchemaForActiveTab(n){return n==="theme"?this.fetchThemeSchema():this.fetchDocumentSchema()}clearCache(){this.documentSchemaCache=null,this.themeSchemaCache=null,this.pluginSchemaCache.clear(),this.cacheTimestamp={}}clearPluginSchemaCache(){this.pluginSchemaCache.clear(),Object.keys(this.cacheTimestamp).forEach(n=>{n.startsWith("document-")&&delete this.cacheTimestamp[n]})}isCacheValid(n){const i=this.cacheTimestamp[n];return i?Date.now()-i<this.CACHE_DURATION:!1}formatSchemaForDisplay(n){return JSON.stringify(n,null,2)}getSchemaMetadata(n){return{title:n.title,description:n.description,version:n.version||n.$id,$schema:n.$schema}}}const Eo=new n0,i0=new Set(["family","fontFace","titleFontFace","legendFontFace","dataLabelFontFace","catAxisLabelFontFace","valAxisLabelFontFace"]),r0=new Set(["heading","body"]);function o0(e){const n=[],i=[{kind:"object"}];let r=0;const o=[],a=h=>h===" "||h===" "||h===`
3
3
  `||h==="\r",s=()=>{for(;r<e.length&&a(e[r]);)r++},l=()=>{const h=r;r++;let u="";for(;r<e.length;){const P=e[r];if(P==="\\"){const j=e[r+1];if(j==='"')u+='"';else if(j==="\\")u+="\\";else if(j==="/")u+="/";else if(j==="n")u+=`
4
- `;else if(j==="r")u+="\r";else if(j==="t")u+=" ";else if(j==="u"){const re=e.slice(r+2,r+6);/^[0-9a-fA-F]{4}$/.test(re)?(u+=String.fromCharCode(parseInt(re,16)),r+=6):(u+="\\u",r+=2);continue}else u+=j??"";r+=2;continue}if(P==='"')return r++,{value:u,start:h,end:r};u+=P,r++}return{value:u,start:h,end:r}},c=()=>{for(;r<e.length;){const h=e[r];if(h===","||h==="}"||h==="]"||a(h))return;r++}},m=()=>{const h=i[i.length-1];return h?h.kind==="object"?h.key===void 0?o.slice():[...o,h.key]:h.kind==="array"?[...o,h.index??0]:o.slice():o.slice()},x=()=>{const h=i[i.length-1];if(!h||h.kind!=="object")return!1;const u=h.key;return!u||o.includes("fontRegistry")?!1:i0.has(u)?!0:r0.has(u)?o[o.length-1]==="fonts":!1},L=()=>{if(s(),r>=e.length)return;const h=e[r];if(h==='"'){const{value:u,start:P,end:j}=l();x()&&n.push({path:m(),value:u,valueStart:P,valueEnd:j});return}if(h==="{"){const u=i[i.length-1],P=(u==null?void 0:u.kind)==="object"?u.key:(u==null?void 0:u.kind)==="array"?u.index:void 0;P!==void 0&&o.push(P),r++,i.push({kind:"object",parentKey:P}),I(),i.pop(),P!==void 0&&o.pop();return}if(h==="["){const u=i[i.length-1],P=(u==null?void 0:u.kind)==="object"?u.key:(u==null?void 0:u.kind)==="array"?u.index:void 0;P!==void 0&&o.push(P),r++,i.push({kind:"array",index:0,parentKey:P}),A(),i.pop(),P!==void 0&&o.pop();return}c()},I=()=>{if(s(),e[r]==="}"){r++;return}for(;r<e.length;){if(s(),e[r]!=='"'){for(;r<e.length&&e[r]!=="}";)r++;e[r]==="}"&&r++;return}const{value:h}=l();if(s(),e[r]!==":")return;r++;const u=i[i.length-1];if(u&&(u.key=h),L(),u&&(u.key=void 0),s(),e[r]===","){r++;continue}if(e[r]==="}"){r++;return}return}},A=()=>{if(s(),e[r]==="]"){r++;return}for(;r<e.length;){if(L(),s(),e[r]===","){r++;const h=i[i.length-1];h&&h.kind==="array"&&(h.index=(h.index??0)+1);continue}if(e[r]==="]"){r++;return}return}};return s(),L(),n}const a0=Lc(e=>({open:!1,contextual:void 0,openFor:n=>e({open:!0,contextual:n}),close:()=>e({open:!1,contextual:void 0})})),zo="jto.pickFont";let Yi=null,Zi=null;function s0(e){Yi&&Yi.dispose(),Zi&&Zi.dispose(),Zi=e.editor.registerCommand(zo,(n,i,r)=>{a0.getState().openFor({jsonPath:i,currentValue:r})}),Yi=e.languages.registerCodeLensProvider("json",{provideCodeLenses(n){const i=n.getValue();return{lenses:o0(i).map(o=>{const a=n.getPositionAt(o.valueStart),s=n.getPositionAt(o.valueEnd);return{range:{startLineNumber:a.lineNumber,startColumn:a.column,endLineNumber:s.lineNumber,endColumn:s.column},id:`jto-pick-font-${o.valueStart}`,command:{id:zo,title:o.value?`Pick font… (current: ${o.value})`:"Pick font…",arguments:[o.path,o.value]}}}),dispose:()=>{}}},resolveCodeLens(n,i){return i}})}const oc="jto-light",ac="jto-dark",c0={surface:"#ffffff",popover:"#ffffff",foreground:"#1a1f2e",muted:"#546f9c",border:"#e2e6ed",fill:"#f8f9fc",lineHighlight:"#edeff3",selection:"#4f7ef833",inserted:"#16a34a26",removed:"#ef444426"},l0={surface:"#282c3e",popover:"#32374e",foreground:"#fafafa",muted:"#a4b2cc",border:"#494e65",fill:"#3b4054",lineHighlight:"#3b405499",selection:"#85a6fa33",inserted:"#34d39926",removed:"#fca5a526"};function Ko(e){return{"editor.background":e.surface,"editor.foreground":e.foreground,"editor.lineHighlightBackground":e.lineHighlight,"editor.lineHighlightBorder":"#00000000","editor.selectionBackground":e.selection,"editor.inactiveSelectionBackground":e.fill,"editorCursor.foreground":e.foreground,"editorGutter.background":e.surface,"editorLineNumber.foreground":`${e.muted}99`,"editorLineNumber.activeForeground":e.foreground,"editorIndentGuide.background1":e.border,"editorIndentGuide.activeBackground1":e.muted,"editorWhitespace.foreground":e.border,"editorWidget.background":e.popover,"editorWidget.border":e.border,"editorSuggestWidget.background":e.popover,"editorSuggestWidget.border":e.border,"editorSuggestWidget.selectedBackground":e.fill,"editorSuggestWidget.foreground":e.foreground,"editorHoverWidget.background":e.popover,"editorHoverWidget.border":e.border,"input.background":e.surface,"input.border":e.border,"dropdown.background":e.popover,"dropdown.border":e.border,"list.hoverBackground":e.fill,"list.activeSelectionBackground":e.fill,"list.activeSelectionForeground":e.foreground,"scrollbar.shadow":"#00000000","scrollbarSlider.background":`${e.muted}33`,"scrollbarSlider.hoverBackground":`${e.muted}55`,"scrollbarSlider.activeBackground":`${e.muted}77`,"diffEditor.insertedTextBackground":e.inserted,"diffEditor.removedTextBackground":e.removed,"diffEditor.border":e.border,"editorGroupHeader.tabsBackground":e.fill,"editorOverviewRuler.border":"#00000000"}}let _o=!1;function d0(e){_o||(e.editor.defineTheme(oc,{base:"vs",inherit:!0,rules:[],colors:Ko(c0)}),e.editor.defineTheme(ac,{base:"vs-dark",inherit:!0,rules:[],colors:Ko(l0)}),_o=!0)}function B0(e){return e==="dark"?ac:oc}let gr=!1,Kn=null,Qi=[];async function po(){if(!gr)try{const e=await wc.init();uo(e),gr=!0,console.log("Monaco configured globally with JSON schemas")}catch(e){console.error("Failed to configure Monaco globally:",e)}}function sc(e){return e.replace(/,(\s*[}\]])/g,"$1")}function uo(e){d0(e),e.languages.json.jsonDefaults.setModeConfiguration({documentFormattingEdits:!0,documentRangeFormattingEdits:!0,completionItems:!1,hovers:!0,documentSymbols:!0,tokens:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0}),e.languages.registerDocumentFormattingEditProvider("json",{provideDocumentFormattingEdits(r){const o=r.getValue(),a=sc(o);try{const s=JSON.parse(a),l=JSON.stringify(s,null,2);return[{range:r.getFullModelRange(),text:l}]}catch{return[{range:r.getFullModelRange(),text:a}]}}}),f0(e),s0(e);const n=Qy(),i=rc();Qn(n.schema),e.languages.json.jsonDefaults.setDiagnosticsOptions({validate:!0,enableSchemaRequest:!1,allowComments:!1,trailingCommas:"error",schemaValidation:"error",schemas:[n,i],schemaRequest:"ignore"}),console.log("Monaco instance configured with schemas:",{reportSchema:{uri:n.uri,fileMatch:n.fileMatch,schemaKeys:Object.keys(n.schema)},themeSchema:{uri:i.uri,fileMatch:i.fileMatch,schemaKeys:Object.keys(i.schema)}})}async function p0(){gr=!1,await po()}function Qn(e){if(!(typeof e!="object"||e===null)){if(Array.isArray(e)){e.forEach(n=>Qn(n));return}delete e.discriminator;for(const n of Object.values(e))Qn(n)}}function u0(e,n){var r,o,a,s,l,c;function i(m){if(!m||m.type!=="string")return;const x=Array.isArray(m.examples)?m.examples:[];m.examples=[...new Set([...x,...n])]}i((a=(o=(r=e==null?void 0:e.properties)==null?void 0:r.props)==null?void 0:o.properties)==null?void 0:a.theme);for(const m of dh(e))i((c=(l=(s=m==null?void 0:m.properties)==null?void 0:s.props)==null?void 0:l.properties)==null?void 0:c.theme)}function m0(e,n){return e===void 0?n.languages.CompletionItemKind.Property:{1:n.languages.CompletionItemKind.Text,2:n.languages.CompletionItemKind.Method,3:n.languages.CompletionItemKind.Function,4:n.languages.CompletionItemKind.Constructor,5:n.languages.CompletionItemKind.Field,6:n.languages.CompletionItemKind.Variable,7:n.languages.CompletionItemKind.Class,8:n.languages.CompletionItemKind.Interface,9:n.languages.CompletionItemKind.Module,10:n.languages.CompletionItemKind.Property,11:n.languages.CompletionItemKind.Unit,12:n.languages.CompletionItemKind.Value,13:n.languages.CompletionItemKind.Enum,14:n.languages.CompletionItemKind.Keyword,15:n.languages.CompletionItemKind.Snippet,16:n.languages.CompletionItemKind.Color,17:n.languages.CompletionItemKind.File,18:n.languages.CompletionItemKind.Reference,19:n.languages.CompletionItemKind.Folder,20:n.languages.CompletionItemKind.EnumMember,21:n.languages.CompletionItemKind.Constant,22:n.languages.CompletionItemKind.Struct,23:n.languages.CompletionItemKind.Event,24:n.languages.CompletionItemKind.Operator,25:n.languages.CompletionItemKind.TypeParameter}[e]??n.languages.CompletionItemKind.Property}function f0(e){Kn&&(Kn.dispose(),Kn=null),Kn=e.languages.registerCompletionItemProvider("json",{triggerCharacters:['"',":"," "],async provideCompletionItems(n,i){const r=e.languages.json.getWorker;if(!r)return{suggestions:[]};const s=await(await(await r())(n.uri)).doComplete(n.uri.toString(),{line:i.lineNumber-1,character:i.column-1});return s!=null&&s.items?{suggestions:s.items.map(c=>{var h,u,P;let m="";c.documentation&&(typeof c.documentation=="string"?m=c.documentation:c.documentation.value&&(m=c.documentation.value)),!m&&c.detail&&(m=c.detail);let x;if(c.textEdit){const j=c.textEdit.range;x={startLineNumber:j.start.line+1,startColumn:j.start.character+1,endLineNumber:j.end.line+1,endColumn:j.end.character+1}}else{const j=n.getWordUntilPosition(i);x={startLineNumber:i.lineNumber,startColumn:j.startColumn,endLineNumber:i.lineNumber,endColumn:j.endColumn}}const L=((h=c.textEdit)==null?void 0:h.newText)??c.insertText??(typeof c.label=="string"?c.label:((u=c.label)==null?void 0:u.label)??"");let I;c.documentation&&(typeof c.documentation=="string"?I=c.documentation:c.documentation.kind==="markdown"?I={value:c.documentation.value}:I=c.documentation.value);const A={label:typeof c.label=="string"?c.label:((P=c.label)==null?void 0:P.label)??"",kind:m0(c.kind,e),detail:m,documentation:I,insertText:L,range:x,sortText:c.sortText,filterText:c.filterText,preselect:c.preselect};return c.insertTextFormat===2&&(A.insertTextRules=e.languages.CompletionItemInsertTextRule.InsertAsSnippet),A})}:{suggestions:[]}}})}async function g0(e,n,i){var r;try{Eo.clearPluginSchemaCache();const o=await Eo.fetchDocumentSchema(n),a=JSON.parse(JSON.stringify(o));if(!a||typeof a!="object")throw new Error("Invalid schema received from server");Qn(a),i&&(Qi=i),Qi.length&&u0(a,Qi);const s={uri:"https://json-to-office.dev/schema/report/v1.0.0",fileMatch:["*.docx.json","*.pptx.json"],schema:a},l=rc();e.languages.registerDocumentFormattingEditProvider("json",{provideDocumentFormattingEdits(I){const A=I.getValue(),h=sc(A);try{const u=JSON.parse(h),P=JSON.stringify(u,null,2);return[{range:I.getFullModelRange(),text:P}]}catch{return[{range:I.getFullModelRange(),text:h}]}}}),e.languages.json.jsonDefaults.setDiagnosticsOptions({validate:!0,enableSchemaRequest:!1,allowComments:!1,trailingCommas:"error",schemaValidation:"error",schemas:[s,l],schemaRequest:"ignore"}),console.log("Monaco updated with plugin-aware schemas:",{plugins:n||[],reportSchema:{uri:s.uri,fileMatch:s.fileMatch}});const c=e.editor.getModels();let m=!0;if(c.forEach(I=>{if(I.getLanguageId()==="json")try{e.editor.setModelLanguage(I,"json"),console.log("🔄 Re-validating model:",I.uri.toString())}catch(A){console.error("Failed to revalidate model:",I.uri.toString(),A),m=!1}}),!((r=e.languages.json.jsonDefaults.diagnosticsOptions.schemas)==null?void 0:r.some(I=>I.uri===s.uri)))throw new Error("Schema was not properly applied to Monaco editor");return console.log("✅ Schema validation successful"),m}catch(o){throw console.error("Failed to update Monaco with plugin schemas:",o),uo(e),o}}const D0=Object.freeze(Object.defineProperty({__proto__:null,configureMonaco:po,configureMonacoInstance:uo,resetMonacoConfig:p0,updateMonacoWithPlugins:g0},Symbol.toStringTag,{value:"Module"}));po().then(()=>{console.log("Monaco editor configured with JSON schemas for better autocomplete")}).catch(e=>{console.error("Failed to configure Monaco:",e)});const h0=document.getElementById("root"),b0=mc.createRoot(h0);b0.render(w.jsx(jl,{}));export{k0 as A,io as C,eO as E,qe as F,j0 as P,Il as S,t as T,A0 as W,hr as _,R0 as a,gl as b,it as c,F0 as d,$0 as e,hl as f,I0 as g,U0 as h,T0 as i,C0 as j,N0 as k,M0 as l,a0 as m,g0 as n,B0 as o,v0 as p,D0 as q,d0 as r,Eo as s,wl as u};
5
- //# sourceMappingURL=index-CRuLxurM.js.map
4
+ `;else if(j==="r")u+="\r";else if(j==="t")u+=" ";else if(j==="u"){const re=e.slice(r+2,r+6);/^[0-9a-fA-F]{4}$/.test(re)?(u+=String.fromCharCode(parseInt(re,16)),r+=6):(u+="\\u",r+=2);continue}else u+=j??"";r+=2;continue}if(P==='"')return r++,{value:u,start:h,end:r};u+=P,r++}return{value:u,start:h,end:r}},c=()=>{for(;r<e.length;){const h=e[r];if(h===","||h==="}"||h==="]"||a(h))return;r++}},m=()=>{const h=i[i.length-1];return h?h.kind==="object"?h.key===void 0?o.slice():[...o,h.key]:h.kind==="array"?[...o,h.index??0]:o.slice():o.slice()},x=()=>{const h=i[i.length-1];if(!h||h.kind!=="object")return!1;const u=h.key;return!u||o.includes("fontRegistry")?!1:i0.has(u)?!0:r0.has(u)?o[o.length-1]==="fonts":!1},L=()=>{if(s(),r>=e.length)return;const h=e[r];if(h==='"'){const{value:u,start:P,end:j}=l();x()&&n.push({path:m(),value:u,valueStart:P,valueEnd:j});return}if(h==="{"){const u=i[i.length-1],P=(u==null?void 0:u.kind)==="object"?u.key:(u==null?void 0:u.kind)==="array"?u.index:void 0;P!==void 0&&o.push(P),r++,i.push({kind:"object",parentKey:P}),I(),i.pop(),P!==void 0&&o.pop();return}if(h==="["){const u=i[i.length-1],P=(u==null?void 0:u.kind)==="object"?u.key:(u==null?void 0:u.kind)==="array"?u.index:void 0;P!==void 0&&o.push(P),r++,i.push({kind:"array",index:0,parentKey:P}),A(),i.pop(),P!==void 0&&o.pop();return}c()},I=()=>{if(s(),e[r]==="}"){r++;return}for(;r<e.length;){if(s(),e[r]!=='"'){for(;r<e.length&&e[r]!=="}";)r++;e[r]==="}"&&r++;return}const{value:h}=l();if(s(),e[r]!==":")return;r++;const u=i[i.length-1];if(u&&(u.key=h),L(),u&&(u.key=void 0),s(),e[r]===","){r++;continue}if(e[r]==="}"){r++;return}return}},A=()=>{if(s(),e[r]==="]"){r++;return}for(;r<e.length;){if(L(),s(),e[r]===","){r++;const h=i[i.length-1];h&&h.kind==="array"&&(h.index=(h.index??0)+1);continue}if(e[r]==="]"){r++;return}return}};return s(),L(),n}const a0=Lc(e=>({open:!1,contextual:void 0,openFor:n=>e({open:!0,contextual:n}),close:()=>e({open:!1,contextual:void 0})})),zo="jto.pickFont";let Yi=null,Zi=null;function s0(e){Yi&&Yi.dispose(),Zi&&Zi.dispose(),Zi=e.editor.registerCommand(zo,(n,i,r)=>{a0.getState().openFor({jsonPath:i,currentValue:r})}),Yi=e.languages.registerCodeLensProvider("json",{provideCodeLenses(n){const i=n.getValue();return{lenses:o0(i).map(o=>{const a=n.getPositionAt(o.valueStart),s=n.getPositionAt(o.valueEnd);return{range:{startLineNumber:a.lineNumber,startColumn:a.column,endLineNumber:s.lineNumber,endColumn:s.column},id:`jto-pick-font-${o.valueStart}`,command:{id:zo,title:o.value?`Pick font… (current: ${o.value})`:"Pick font…",arguments:[o.path,o.value]}}}),dispose:()=>{}}},resolveCodeLens(n,i){return i}})}const oc="jto-light",ac="jto-dark",c0={surface:"#ffffff",popover:"#ffffff",foreground:"#1a1f2e",muted:"#546f9c",border:"#e2e6ed",fill:"#f8f9fc",lineHighlight:"#edeff3",selection:"#4f7ef833",inserted:"#16a34a26",removed:"#ef444426"},l0={surface:"#282c3e",popover:"#32374e",foreground:"#fafafa",muted:"#a4b2cc",border:"#494e65",fill:"#3b4054",lineHighlight:"#3b405499",selection:"#85a6fa33",inserted:"#34d39926",removed:"#fca5a526"};function Ko(e){return{"editor.background":e.surface,"editor.foreground":e.foreground,"editor.lineHighlightBackground":e.lineHighlight,"editor.lineHighlightBorder":"#00000000","editor.selectionBackground":e.selection,"editor.inactiveSelectionBackground":e.fill,"editorCursor.foreground":e.foreground,"editorGutter.background":e.surface,"editorLineNumber.foreground":`${e.muted}99`,"editorLineNumber.activeForeground":e.foreground,"editorIndentGuide.background1":e.border,"editorIndentGuide.activeBackground1":e.muted,"editorWhitespace.foreground":e.border,"editorWidget.background":e.popover,"editorWidget.border":e.border,"editorSuggestWidget.background":e.popover,"editorSuggestWidget.border":e.border,"editorSuggestWidget.selectedBackground":e.fill,"editorSuggestWidget.foreground":e.foreground,"editorHoverWidget.background":e.popover,"editorHoverWidget.border":e.border,"input.background":e.surface,"input.border":e.border,"dropdown.background":e.popover,"dropdown.border":e.border,"list.hoverBackground":e.fill,"list.activeSelectionBackground":e.fill,"list.activeSelectionForeground":e.foreground,"scrollbar.shadow":"#00000000","scrollbarSlider.background":`${e.muted}33`,"scrollbarSlider.hoverBackground":`${e.muted}55`,"scrollbarSlider.activeBackground":`${e.muted}77`,"diffEditor.insertedTextBackground":e.inserted,"diffEditor.removedTextBackground":e.removed,"diffEditor.border":e.border,"editorGroupHeader.tabsBackground":e.fill,"editorOverviewRuler.border":"#00000000"}}let _o=!1;function d0(e){_o||(e.editor.defineTheme(oc,{base:"vs",inherit:!0,rules:[],colors:Ko(c0)}),e.editor.defineTheme(ac,{base:"vs-dark",inherit:!0,rules:[],colors:Ko(l0)}),_o=!0)}function B0(e){return e==="dark"?ac:oc}let gr=!1,Kn=null,Qi=[];async function po(){if(!gr)try{const e=await wc.init();uo(e),gr=!0,console.log("Monaco configured globally with JSON schemas")}catch(e){console.error("Failed to configure Monaco globally:",e)}}function sc(e){return e.replace(/,(\s*[}\]])/g,"$1")}function uo(e){d0(e),e.languages.json.jsonDefaults.setModeConfiguration({documentFormattingEdits:!0,documentRangeFormattingEdits:!0,completionItems:!1,hovers:!0,documentSymbols:!0,tokens:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0}),e.languages.registerDocumentFormattingEditProvider("json",{provideDocumentFormattingEdits(r){const o=r.getValue(),a=sc(o);try{const s=JSON.parse(a),l=JSON.stringify(s,null,2);return[{range:r.getFullModelRange(),text:l}]}catch{return[{range:r.getFullModelRange(),text:a}]}}}),f0(e),s0(e);const n=Qy(),i=rc();Qn(n.schema),e.languages.json.jsonDefaults.setDiagnosticsOptions({validate:!0,enableSchemaRequest:!1,allowComments:!1,trailingCommas:"error",schemaValidation:"error",schemas:[n,i],schemaRequest:"ignore"}),console.log("Monaco instance configured with schemas:",{reportSchema:{uri:n.uri,fileMatch:n.fileMatch,schemaKeys:Object.keys(n.schema)},themeSchema:{uri:i.uri,fileMatch:i.fileMatch,schemaKeys:Object.keys(i.schema)}})}async function p0(){gr=!1,await po()}function Qn(e){if(!(typeof e!="object"||e===null)){if(Array.isArray(e)){e.forEach(n=>Qn(n));return}delete e.discriminator;for(const n of Object.values(e))Qn(n)}}function u0(e,n){var r,o,a,s,l,c;function i(m){if(!m||m.type!=="string")return;const x=Array.isArray(m.examples)?m.examples:[];m.examples=[...new Set([...x,...n])]}i((a=(o=(r=e==null?void 0:e.properties)==null?void 0:r.props)==null?void 0:o.properties)==null?void 0:a.theme);for(const m of hO(e))i((c=(l=(s=m==null?void 0:m.properties)==null?void 0:s.props)==null?void 0:l.properties)==null?void 0:c.theme)}function m0(e,n){return e===void 0?n.languages.CompletionItemKind.Property:{1:n.languages.CompletionItemKind.Text,2:n.languages.CompletionItemKind.Method,3:n.languages.CompletionItemKind.Function,4:n.languages.CompletionItemKind.Constructor,5:n.languages.CompletionItemKind.Field,6:n.languages.CompletionItemKind.Variable,7:n.languages.CompletionItemKind.Class,8:n.languages.CompletionItemKind.Interface,9:n.languages.CompletionItemKind.Module,10:n.languages.CompletionItemKind.Property,11:n.languages.CompletionItemKind.Unit,12:n.languages.CompletionItemKind.Value,13:n.languages.CompletionItemKind.Enum,14:n.languages.CompletionItemKind.Keyword,15:n.languages.CompletionItemKind.Snippet,16:n.languages.CompletionItemKind.Color,17:n.languages.CompletionItemKind.File,18:n.languages.CompletionItemKind.Reference,19:n.languages.CompletionItemKind.Folder,20:n.languages.CompletionItemKind.EnumMember,21:n.languages.CompletionItemKind.Constant,22:n.languages.CompletionItemKind.Struct,23:n.languages.CompletionItemKind.Event,24:n.languages.CompletionItemKind.Operator,25:n.languages.CompletionItemKind.TypeParameter}[e]??n.languages.CompletionItemKind.Property}function f0(e){Kn&&(Kn.dispose(),Kn=null),Kn=e.languages.registerCompletionItemProvider("json",{triggerCharacters:['"',":"," "],async provideCompletionItems(n,i){const r=e.languages.json.getWorker;if(!r)return{suggestions:[]};const s=await(await(await r())(n.uri)).doComplete(n.uri.toString(),{line:i.lineNumber-1,character:i.column-1});return s!=null&&s.items?{suggestions:s.items.map(c=>{var h,u,P;let m="";c.documentation&&(typeof c.documentation=="string"?m=c.documentation:c.documentation.value&&(m=c.documentation.value)),!m&&c.detail&&(m=c.detail);let x;if(c.textEdit){const j=c.textEdit.range;x={startLineNumber:j.start.line+1,startColumn:j.start.character+1,endLineNumber:j.end.line+1,endColumn:j.end.character+1}}else{const j=n.getWordUntilPosition(i);x={startLineNumber:i.lineNumber,startColumn:j.startColumn,endLineNumber:i.lineNumber,endColumn:j.endColumn}}const L=((h=c.textEdit)==null?void 0:h.newText)??c.insertText??(typeof c.label=="string"?c.label:((u=c.label)==null?void 0:u.label)??"");let I;c.documentation&&(typeof c.documentation=="string"?I=c.documentation:c.documentation.kind==="markdown"?I={value:c.documentation.value}:I=c.documentation.value);const A={label:typeof c.label=="string"?c.label:((P=c.label)==null?void 0:P.label)??"",kind:m0(c.kind,e),detail:m,documentation:I,insertText:L,range:x,sortText:c.sortText,filterText:c.filterText,preselect:c.preselect};return c.insertTextFormat===2&&(A.insertTextRules=e.languages.CompletionItemInsertTextRule.InsertAsSnippet),A})}:{suggestions:[]}}})}async function g0(e,n,i){var r;try{Eo.clearPluginSchemaCache();const o=await Eo.fetchDocumentSchema(n),a=JSON.parse(JSON.stringify(o));if(!a||typeof a!="object")throw new Error("Invalid schema received from server");Qn(a),i&&(Qi=i),Qi.length&&u0(a,Qi);const s={uri:"https://json-to-office.dev/schema/report/v1.0.0",fileMatch:["*.docx.json","*.pptx.json"],schema:a},l=rc();e.languages.registerDocumentFormattingEditProvider("json",{provideDocumentFormattingEdits(I){const A=I.getValue(),h=sc(A);try{const u=JSON.parse(h),P=JSON.stringify(u,null,2);return[{range:I.getFullModelRange(),text:P}]}catch{return[{range:I.getFullModelRange(),text:h}]}}}),e.languages.json.jsonDefaults.setDiagnosticsOptions({validate:!0,enableSchemaRequest:!1,allowComments:!1,trailingCommas:"error",schemaValidation:"error",schemas:[s,l],schemaRequest:"ignore"}),console.log("Monaco updated with plugin-aware schemas:",{plugins:n||[],reportSchema:{uri:s.uri,fileMatch:s.fileMatch}});const c=e.editor.getModels();let m=!0;if(c.forEach(I=>{if(I.getLanguageId()==="json")try{e.editor.setModelLanguage(I,"json"),console.log("🔄 Re-validating model:",I.uri.toString())}catch(A){console.error("Failed to revalidate model:",I.uri.toString(),A),m=!1}}),!((r=e.languages.json.jsonDefaults.diagnosticsOptions.schemas)==null?void 0:r.some(I=>I.uri===s.uri)))throw new Error("Schema was not properly applied to Monaco editor");return console.log("✅ Schema validation successful"),m}catch(o){throw console.error("Failed to update Monaco with plugin schemas:",o),uo(e),o}}const D0=Object.freeze(Object.defineProperty({__proto__:null,configureMonaco:po,configureMonacoInstance:uo,resetMonacoConfig:p0,updateMonacoWithPlugins:g0},Symbol.toStringTag,{value:"Module"}));po().then(()=>{console.log("Monaco editor configured with JSON schemas for better autocomplete")}).catch(e=>{console.error("Failed to configure Monaco:",e)});const h0=document.getElementById("root"),b0=mc.createRoot(h0);b0.render(w.jsx(jl,{}));export{k0 as A,io as C,qb as E,qe as F,j0 as P,Il as S,t as T,A0 as W,hr as _,R0 as a,gl as b,it as c,F0 as d,$0 as e,hl as f,I0 as g,U0 as h,T0 as i,C0 as j,N0 as k,M0 as l,a0 as m,g0 as n,B0 as o,v0 as p,D0 as q,d0 as r,Eo as s,wl as u};
5
+ //# sourceMappingURL=index-D6iX-U9c.js.map