@jxsuite/compiler 8.3.0 → 8.4.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.
- package/dist/cli.js +168 -167
- package/dist/compiler.js +82 -82
- package/package.json +7 -7
- package/src/cli.ts +1 -1
- package/src/site/image-cache.ts +8 -3
- package/src/site/image-optimizer.ts +20 -1
- package/src/site/image-transform.ts +19 -5
- package/src/site/site-loader.ts +8 -7
- package/src/site/validate-command.ts +2 -3
package/dist/cli.js
CHANGED
|
@@ -1,66 +1,66 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{createRequire as
|
|
3
|
-
`,"\r"]);
|
|
4
|
-
`],["r","\r"],["t","\t"]])});function
|
|
5
|
-
`,patched:!0}}function
|
|
2
|
+
import{createRequire as dC}from"node:module";var oC=Object.create;var{getPrototypeOf:aC,defineProperty:Ay,getOwnPropertyNames:lC}=Object;var Ry=Object.prototype.hasOwnProperty;function cC(e){return this[e]}var uC,fC,br=(e,t,r)=>{var n=e!=null&&typeof e==="object";if(n){var s=t?uC??=new WeakMap:fC??=new WeakMap,i=s.get(e);if(i)return i}r=e!=null?oC(aC(e)):{};let o=t||!e||!e.__esModule||!Ry.call(e,"default")?Ay(r,"default",{value:e,enumerable:!0}):r;if(e&&typeof e==="object"||typeof e==="function"){for(let a of lC(e))if(!Ry.call(o,a))Ay(o,a,{get:cC.bind(e,a),enumerable:!0})}if(n)s.set(e,o);return o};var C=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var D=(e,t,r)=>()=>{if(e)try{t=e(e=0)}catch(n){r=[n]}if(r)throw r[0];return t};var Be=dC(import.meta.url);function O(e){return typeof e==="string"}function Ct(e){return typeof e==="number"}function Qt(e){return typeof e==="boolean"}function Wt(e){return typeof e==="function"}function V(e){return typeof e==="object"&&e!==null}function W(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}function He(e){return W(e)&&typeof e.$ref==="string"}function Mr(e){return W(e)&&e.$prototype==="Function"}function Dr(e){return W(e)&&W(e.$expression)}function Ai(e){return Dr(e)&&Array.isArray(e.parameters)&&e.parameters.length>0}function Ts(e){return Mr(e)&&Array.isArray(e.body)}function vn(e){return W(e)&&typeof e.$prototype==="string"&&e.$prototype!=="Function"}function os(e){return W(e)&&e.timing==="server"&&typeof e.$src==="string"&&typeof e.$export==="string"&&!e.$prototype}function Oy(e){return W(e)&&!e.$prototype&&!e.$expression&&"default"in e}function Is(e){if(!W(e))return!1;for(let t of Object.keys(e))if(!Ny.has(t))return!1;return!0}function dt(e){return W(e)&&e.$prototype==="Array"}function Dd(e){return(Array.isArray(e)?e:[e]).some((r)=>dt(r))}function Cy(e){return W(e)&&e.$prototype==="Class"}function xr(e){return W(e)}function ye(e){return typeof e==="string"&&e.includes("${")}function Ri(e){return/\breturn\b[^\S\n]*(?![;}\s]|$)/.test(e)}function Oi(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}function as(e){if(!e)return[];return e.map((t)=>O(t)?t:t.name)}function pC(e){return typeof e==="string"}function Sn(e){if(typeof e!=="object"||e===null||Array.isArray(e)||!W(e.$expression))return!1;let t=e.$expression;if(t.operator==="?:")return typeof t.value==="string"&&typeof t.initial==="string";if(t.operator==="switch")return W(t.cases)&&Object.values(t.cases).every((r)=>O(r))&&typeof t.default==="string";return!1}function xo(e){if(pC(e))return[e];if(!Sn(e))return[];let t=e.$expression;if(t.operator==="?:")return[...new Set([t.value,t.initial])];return[...new Set([...Object.values(t.cases),t.default])]}var Ny;var be=D(()=>{Ny=new Set(["type","enum","minimum","maximum","minLength","maxLength","pattern","format","items","properties","required","description","title","$comment"])});function Iy(e){let t=[],r=[],n=null,s=0,i=()=>r.at(-1)?.path??"",o=()=>n===null?i():gC(i(),n),a=()=>{s+=1;let l="";while(s<e.length){let c=e[s];if(c==="\\"){let u=e[s+1]??"";if(u==="u")l+=String.fromCodePoint(Number.parseInt(e.slice(s+2,s+6),16)),s+=6;else l+=mC.get(u)??u,s+=2;continue}if(c==='"')return s+=1,l;l+=c,s+=1}return l};while(s<e.length){let l=e[s];if(Ty.has(l)||l===","||l===":"){s+=1;continue}if(l==="{"||l==="["){r.push(l==="{"?{keys:new Set,kind:"object",path:o()}:{kind:"array",path:o()}),n=null,s+=1;continue}if(l==="}"||l==="]"){r.pop(),n=null,s+=1;continue}if(l==='"'){let u=a(),p=r.at(-1);if(p?.kind==="object"&&hC(e,s)===":"){if(p.keys.has(u))t.push({detail:u,kind:"duplicate-key",path:p.path});p.keys.add(u),n=u}else n=null;continue}if(l==="-"||l>="0"&&l<="9"){let u=s;while(s<e.length&&/[\d+.eE-]/.test(e[s]))s+=1;let p=e.slice(u,s);if(!yC(p))t.push({detail:p,kind:"unsafe-number",path:o()});n=null;continue}let c=s;while(s<e.length&&/[A-Za-z]/.test(e[s]))s+=1;if(s===c)s+=1;n=null}return t}function hC(e,t){let r=t;while(r<e.length&&Ty.has(e[r]))r+=1;return e[r]??""}function gC(e,t){return e===""?t:`${e}.${t}`}function yC(e){if(/[.eE]/.test(e))return!0;let t=Number(e);if(!Number.isFinite(t))return!1;return String(t)===e.replace(/^\+/,"")}function Jy(e){let t=e.path===""?"the document root":`"${e.path}"`;return e.kind==="duplicate-key"?`duplicate key "${e.detail}" in ${t} — JSON.parse keeps the last one and `+"silently discards the first (RFC 7493 §2.3)":`number ${e.detail} in ${t} cannot be represented exactly and will change when `+"the document is written back (RFC 7493 §2.2)"}var Ty,mC;var My=D(()=>{Ty=new Set([" ","\t",`
|
|
3
|
+
`,"\r"]);mC=new Map([["b","\b"],["f","\f"],["n",`
|
|
4
|
+
`],["r","\r"],["t","\t"]])});function Pe(e){return e instanceof Error?e.message:String(e)}function Ly(e){if(O(e))return Dy.test(e)?e.normalize("NFC"):e;if(Array.isArray(e))return e.map((t)=>Ly(t));if(W(e))return $o(e);return e}function $o(e){let t={};for(let[r,n]of Object.entries(e))t[Dy.test(r)?r.normalize("NFC"):r]=Ly(n);return t}function Ld(e,t,r){let n;try{n=JSON.parse(e)}catch(i){throw Error(`Failed to parse ${r} at ${t}: ${Pe(i)}`,{cause:i})}if(!W(n))throw Error(`Invalid ${r} at ${t}: expected a JSON object`);let s=Iy(e);if(s.length>0){let i=s.map((o)=>Jy(o)).join("; ");throw Error(`Invalid ${r} at ${t}: ${i}`)}return $o(n)}function Fy(e,t){return Ld(e,t,"Jx document")}function qy(e,t){return Ld(e,t,"project config")}function Vy(e,t){return Ld(e,t,"class definition")}var Dy;var er=D(()=>{be();My();Dy=/[^\p{ASCII}]/u});import{spawn as bC}from"node:child_process";import{createRequire as xC}from"node:module";import{join as $C}from"node:path";function wC(e){try{return xC($C(e,"package.json")).resolve("@jxsuite/server/convert")}catch{throw Error(`@jxsuite/server is not installed in ${e}. Add it to devDependencies (e.g. \`bun add -d @jxsuite/server\`) and retry.`)}}function Wy(e,t,r=bC,n=process){let s=wC(e),i=r("bun",[s,"--root",e,...t],{stdio:"inherit"});return i.on("error",(o)=>{console.error(o.code==="ENOENT"?"jx convert runs on Bun, which was not found on your PATH. Install it from https://bun.sh and retry.":`Failed to start jx convert: ${o.message}`),n.exitCode=1}),i.on("exit",(o)=>{n.exitCode=o??0}),i}var Hy=()=>{};function vC(e){return JSON.parse(e)}function wo(e){return e!==null&&typeof e==="object"&&!Array.isArray(e)}function SC(e){return wo(e)&&typeof e.binding==="string"}function EC(e){try{let t=vC(e);return wo(t)?t:void 0}catch{return}}function By(e,t){if(t.length===0)return{content:e??"",patched:!1};let r={};if(e){let n=EC(e);if(n===void 0)return{content:e,patched:!1};r=n}for(let n of t)Uy(r,n);return{content:`${JSON.stringify(r,null,"\t")}
|
|
5
|
+
`,patched:!0}}function Uy(e,t){for(let[r,n]of Object.entries(t)){let s=r in e?e[r]:void 0;if(Array.isArray(n)){e[r]=jC(Array.isArray(s)?s:[],n);continue}if(wo(n)){if(wo(s))Uy(s,n);else if(s===void 0)e[r]=structuredClone(n);continue}if(s===void 0)e[r]=n}}function jC(e,t){let r=[...e];for(let n of t){if(!SC(n)){if(!r.some((a)=>JSON.stringify(a)===JSON.stringify(n)))r.push(structuredClone(n));continue}let s=r.findIndex((o)=>wo(o)&&o.binding===n.binding),i=r[s];if(wo(i))r[s]={...i,...n};else r.push(structuredClone(n))}return r}var zy=()=>{};function Xy(e){if(!O(e))return null;let[t,...r]=e.split(";"),n=(t??"").indexOf("/");if(n===-1)return null;let s=(t??"").slice(0,n).trim().toLowerCase(),i=(t??"").slice(n+1).trim().toLowerCase();if(!Gy.test(s)||!Gy.test(i))return null;let o=i.lastIndexOf("+"),a=o===-1?null:i.slice(o+1),l=o===-1?i:i.slice(0,o);if(a==="")return null;let c=l.indexOf("."),u=c===-1?null:l.slice(0,c),p=u!==null&&PC.has(u)?u:null,h=p===null?l:l.slice(p.length+1);if(h==="")return null;let m={};for(let b of r){let g=b.indexOf("=");if(g===-1)return null;let y=b.slice(0,g).trim().toLowerCase(),w=b.slice(g+1).trim();if(y==="")return null;if(w.startsWith('"')&&w.endsWith('"')&&w.length>=2)w=w.slice(1,-1);m[y]=w}return{parameters:m,subtype:h,suffix:a,tree:p,type:s}}function Zy(e){if(!O(e)||e.trim()==="")return"expected a media type string";if(!e.includes("/"))return`"${e}" has no "/" — a media type is type/subtype (RFC 6838 §4.2)`;if(Xy(e)===null)return`"${e}" is not a well-formed media type (RFC 6838 §4.2)`;return null}function Qy(e){let t=Xy(e);if(t===null)return null;let r=t.tree===null?"":`${t.tree}.`,n=t.suffix===null?"":`+${t.suffix}`;return`${t.type}/${r}${t.subtype}${n}`}var Gy,PC,Ky="text/markdown; variant=GFM",Yy="application/yaml",eb;var Fd=D(()=>{be();Gy=/^[A-Za-z0-9][A-Za-z0-9!#$&^_.+-]{0,126}$/,PC=new Set(["vnd","prs","x"]);eb={".jxn":"text/plain; charset=utf-8",".markdown":`${Ky}; charset=utf-8`,".md":`${Ky}; charset=utf-8`,".yaml":`${Yy}; charset=utf-8`,".yml":`${Yy}; charset=utf-8`}});class tb{index;text;constructor(e){this.text=e,this.index=e.codePointAt(0)===65279?1:0}get done(){return this.index>=this.text.length}startsWith(e){return this.text.startsWith(e,this.index)}skipLine(){let e=this.text.indexOf(`
|
|
6
6
|
`,this.index);this.index=e===-1?this.text.length:e}skipBlock(){let e=1;this.index+=2;while(!this.done&&e>0)if(this.startsWith("/*"))e+=1,this.index+=2;else if(this.startsWith("*/"))e-=1,this.index+=2;else this.index+=1}skipTrivia(){for(;;){while(!this.done&&/[\s;]/u.test(this.text.charAt(this.index)))this.index+=1;if(this.startsWith("//"))this.skipLine();else if(this.startsWith("/*"))this.skipBlock();else if(this.startsWith("/-"))this.index+=2,this.skipNode();else return}}skipString(){let e=0,t=this.index;while(this.text.charAt(t)==="#")e+=1,t+=1;let r=this.text.startsWith('"""',t),n=r?'"""':'"',s=n+"#".repeat(e);t+=n.length;while(t<this.text.length)if(e===0&&this.text.charAt(t)==="\\")t+=2;else if(this.text.startsWith(s,t))return this.index=t+s.length,!0;else if(!r&&this.text.charAt(t)===`
|
|
7
7
|
`)return!1;else t+=1;return!1}skipNode(){let e=0;while(!this.done){let t=this.text.charAt(this.index);if(t==='"'||t==="#"&&/^#+"/u.test(this.text.slice(this.index,this.index+16))){if(!this.skipString())return!1}else if(this.startsWith("//"))this.skipLine();else if(this.startsWith("/*"))this.skipBlock();else if(t==="{")e+=1,this.index+=1;else if(t==="}"){if(e===0)return!1;e-=1,this.index+=1}else if((t===`
|
|
8
|
-
`||t===";")&&e===0)return this.index+=1,!0;else this.index+=1}return e===0}}function Td(e){if(mN.test(e))return"unreadable";let t=new zy(e);for(;;){if(t.skipTrivia(),t.done)return"document";if(t.startsWith("(")){let r=e.indexOf(")",t.index);if(r===-1)return"unreadable";t.index=r+1}else{let[r]=hN.exec(e.slice(t.index,t.index+256))??[];if(!r)return t.startsWith('"')||t.startsWith("#")?"document":"unreadable";if(!r.startsWith("$"))return r==="project"?"project":"document";if(t.index+=r.length,!t.skipNode())return"unreadable"}}}var mN,hN;var Id=D(()=>{mN=/\0/u,hN=/^[^\s\\/(){};[\]"#=]+/u});function za(e){switch(e){case 9:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8239:case 8287:case 12288:return!0}return!1}function Js(e){return e===13||e===10||e===133||e===11||e===12||e===8232||e===8233||!1}function Ec(e){return e<8||e>=14&&e<=25||e===127||e>=55296&&e<=57343||e>1114111||e===8206||e===8207||e>=8234&&e<=8238||e>=8294&&e<=8297||e===65279}function rt(e){return!isNaN(e)&&!za(e)&&!Js(e)&&e!==61&&e!==92&&e!==47&&e!==40&&e!==41&&e!==123&&e!==125&&e!==59&&e!==91&&e!==93&&e!==34&&e!==35&&!0}function Gy(e){return e>=65&&e<91||e>=97&&e<123||!1}function Jd(e){return e>=48&&e<64||e>=65&&e<71||e>=97&&e<103||!1}function Md(e){return Jd(e)||e===95}function cs(e){return e>=48&&e<58}function Ci(e){return cs(e)||e===95}function Dd(e){return e>=48&&e<56}function Ky(e){return Dd(e)||e===95}function Ld(e){return e===48||e===49}function Yy(e){return Ld(e)||e===95}function Xy(e){return e===45||e===43}var Ns=1,$o=2,Ai=3,mc=4,hc=5,Ba=6,gc=7,yc=8,Ua=9,Ts=10,Xt=11,wo=12,vo=13,bc=14,ls=15,xc=16,$c=17,Ri=18,Is=19,wc=20,vc=21,Sc=22,So=23,Oi=24,Sn=28;function*yN(e){for(let t of(gN??=new Intl.Segmenter("en")).segment(e))yield t.segment}function bN(e){return e[Symbol.iterator]()}function Zy(e,{flags:t,graphemeLocations:r=!1}){let n=r?yN(e):bN(e),s=n.next();return{text:e,graphemeLocations:r,line:1,column:1,offset:0,length:e.length,iterator:n,currentIter:s,current:s.done?NaN:s.value.codePointAt(0),start:{line:1,column:1,offset:0},errorsInToken:null,flags:t}}function*Qy(e){if(Ie(e,65279))e.column=1,yield ke(e,$o);if(Ec(e.current))throw En(e,`Invalid character \\u${e.current.toString(16)}`)}function wt(e){e.offset+=e.currentIter.value.length,e.column++;let t=e.currentIter=e.iterator.next(),r=e.current=t.done?NaN:t.value.codePointAt(0);if(Ec(r))if(r>=55296&&r<=57343||r>1114111)Ga(e,`Invalid character \\u${r.toString(16)}`);else Ga(e,`Invalid character \\u${r.toString(16)}, this character is not allowed but can be included in strings as \\u{${r.toString(16)}}`);return r}function cn(e,t){if(t(e.current)){let r=e.current;return wt(e),r}}function Ie(e,t){if(e.current===t)return wt(e),t}function Eo(e){if(!Js(e.current))return!1;if(!e.graphemeLocations&&e.current===13&&e.text.codePointAt(e.offset+1)===10)e.iterator.next(),e.offset++;return wt(e),e.column=1,e.line++,!0}function Fd(e,t){while(e.current===t)wt(e)}function Ue(e,t){while(t(e.current))wt(e)}function ke(e,t,r){let{line:n,column:s,offset:i}=e,o={line:n,column:s,offset:i},a=e.start;e.start=o;let l=e.errorsInToken;e.errorsInToken=null;let c={type:t,text:e.text.slice(a.offset,o.offset),start:a,end:o,errors:l};if(r){if(!c.errors)c.errors=[];c.errors.push(new Me(r,{token:c}))}return c}function En(e,t){if(t instanceof Me)return t;let{line:r,column:n,offset:s}=e,i={line:r,column:n,offset:s},o;if(s<e.length)if(Js(e.current))o={line:r+1,column:1,offset:s+1};else o={line:r,column:n+1,offset:s+1};return new Me(`${t}`,{start:i,end:o})}function Ga(e,t){(e.errorsInToken??=[]).push(En(e,t))}var gN;var eb=D(()=>{Ni()});function Ti(e){return(t)=>(wt(t),ke(t,e))}function Ka(e){return Ue(e,za),ke(e,Ri)}function Ii(e){return Eo(e),ke(e,Is)}function xN(e){wt(e);let t=!1,r=!1;if(Ie(e,34)){if(!Ie(e,34))return ke(e,Ua);if(r=!0,e.current===34)throw En(e,"Multiline strings must start with exactly three quotes");while(!t&&e.offset<e.length)if(Ie(e,34)){if(Ie(e,34)&&Ie(e,34))t=!0}else Ie(e,92),Eo(e)||wt(e)}else while(!t&&e.offset<e.length)if(Ie(e,34))t=!0;else Ie(e,92),Eo(e)||wt(e);if(!t)throw En(e,"Unexpected EOF inside string");return ke(e,r?So:Ua)}function tb(e){if(wt(e),e.current===35||e.current===34){let t=1;while(Ie(e,35))t++;if(!Ie(e,34))throw En(e,`Expected a quote after ${"#".repeat(t)}`);let r=!1;if(Ie(e,34))if(Ie(e,34)){if(e.current===34)throw En(e,"Multiline strings must start with exactly three quotes");r=!0}else{let n=0;while(Ie(e,35))n++;if(n===t)return ke(e,Ts)}while(!0){if(e.offset>=e.length)throw En(e,"Unexpected EOF while parsing raw string");if(Ie(e,34)){if(r){if(!Ie(e,34)||!Ie(e,34))continue}let n=0;while(n<t&&Ie(e,35))n++;if(n===t)return ke(e,r?Oi:Ts)}else Eo(e)||wt(e)}}else{let t;if(e.current<255){let r=Ae[e.current];t=r(e)}else if(za(e.current))t=Ka(e);else if(Js(e.current))t=Ii(e);else t=Vd(e);if(t.type!==Xt)(t.errors??=[]).push(new Me("Expected a valid identifier",{token:t}));return t.type=vo,t}}function $N(e){if(wt(e),cn(e,cs))return Ue(e,rt),ke(e,Xt,"Invalid identifier, identifiers that start with a sign and a dot must be quoted if the next character is a digit to prevent confusion with decimal numbers");return Ue(e,rt),ke(e,Xt)}function wN(e){if(wt(e),Ie(e,45))return ke(e,Ai);else if(Ie(e,47)){while(e.offset<e.length&&!Js(e.current))wt(e);return ke(e,vc)}else if(Ie(e,42)){let t=1;while(e.offset<e.length)if(Ie(e,42)){if(Ie(e,47)){if(t--,t===0)return ke(e,Sc)}}else if(Ie(e,47)){if(Ie(e,42))t++}else Eo(e)||wt(e);throw En(e,"Unexpected EOF in multiline comment")}else jc(e)}function rb(e){return wt(e),vN(e)}function vN(e){if(cs(e.current))return un(e);else if(Ie(e,46)){if(cn(e,cs))return Ue(e,rt),ke(e,Xt,"Invalid identifier or number, surround with quotes to make it an identifier or add a zero between the sign and the decimal point");return Ue(e,rt),ke(e,Xt)}else return Ue(e,rt),ke(e,Xt)}function qd(e,t,r,n){return(s)=>{let i=wt(s);if(cn(s,r))return Ue(s,n),ke(s,t);else if(!s.flags.experimentalSuffixedNumbers){if(Ie(s,95)){if(Ue(s,n),!rt(s.current))return ke(s,t,`Invalid ${e} number, the first character after 0${String.fromCodePoint(i)} cannot be an underscore`)}return Ue(s,rt),ke(s,Xt,`Invalid ${e} number`)}else if(Ie(s,95)){if(Fd(s,95),r(s.current)){if(Ue(s,n),!rt(s.current))return ke(s,t,`Invalid ${e} number, the first character after 0${String.fromCodePoint(i)} cannot be an underscore`)}return Ue(s,rt),ke(s,Xt,"Invalid number with suffix, a suffix cannot start with a letter followed by an underscore")}else if(cs(s.current))return ke(s,Xt,"Invalid number with suffix, a suffix cannot start with a letter followed by a number");else return Ue(s,rt),ke(s,Sn)}}function un(e){if(Ie(e,48)){let t=Pc[e.current];if(t)return t(e)}if(Ue(e,Ci),Ie(e,46)){if(!cn(e,cs))if(e.current===95)Ga(e,"Invalid decimal number, the part after the decimal point mustn't start on an underscore");else Ga(e,"Invalid decimal number, a decimal point must be followed by a digit");Ue(e,Ci)}if(Ie(e,101)||Ie(e,69))if(cn(e,Xy),cn(e,cs)){if(Ue(e,Ci),rt(e.current))return Ue(e,rt),ke(e,Xt,"Invalid number with suffix, a number with an exponent cannot have a suffix");return ke(e,ls)}else if(!e.flags.experimentalSuffixedNumbers)if(e.current===95)return Ue(e,Ci),ke(e,ls,"Invalid decimal number, the number after the exponent mustn't start on an underscore");else return Ue(e,rt),ke(e,ls,"Invalid decimal number, missing a number after the exponent");else if(Ie(e,95)){if(Fd(e,95),cs(e.current)){if(Ue(e,Ci),!rt(e.current))return ke(e,ls,"Invalid decimal number, the number after the exponent mustn't start on an underscore")}return Ue(e,rt),ke(e,Xt,"Invalid number with suffix, a suffix cannot start with a letter followed by an underscore")}else return Ue(e,rt),ke(e,Sn);else if(e.flags.experimentalSuffixedNumbers)if(e.current===88||e.current===120){wt(e);let t=null;if(cn(e,Md))t="Invalid number with suffix, a suffix cannot start with an x followed by a hexidecimal number";return Ue(e,rt),ke(e,Sn,t)}else if(cn(e,Gy)){let t=null;if(cn(e,Ci))t="Invalid number with suffix, a suffix cannot start with a letter followed by a digit";return Ue(e,rt),ke(e,Sn,t)}else if(Ie(e,44))return Ue(e,rt),ke(e,Sn,"Invalid number with suffix, a suffix cannot start with a comma");else if(Ie(e,46))return Ue(e,rt),ke(e,Sn,"Invalid number with suffix, a suffix cannot start with a dot");else if(cn(e,rt))return Ue(e,rt),ke(e,Sn);else return ke(e,ls);else return ke(e,ls)}function SN(e){if(wt(e),e.current!=35)return Ue(e,rt),ke(e,Xt);let t=tb(e);t.start.offset--,t.start.column--;let r;switch(t.type){case Ts:case Oi:r='Invalid raw string, the correct syntax is #" "#, not r#" "#';break;default:r="Invalid token, did you forget a whitespace after this r?"}return(t.errors??=[]).push(new Me(r,{token:t})),t}function Vd(e){return wt(e),Ue(e,rt),ke(e,Xt)}function jc(e){throw En(e,`Unexpected character ${JSON.stringify(String.fromCodePoint(e.current))}, did you forget to quote an identifier?`)}function*Ya(e,t){let r=Zy(e,t);yield*Qy(r);while(!r.currentIter.done){if(r.current<255){let n=Ae[r.current];yield n(r);continue}if(za(r.current)){yield Ka(r);continue}if(Js(r.current)){yield Ii(r);continue}yield Vd(r)}yield ke(r,Ns)}var Pc,Ae;var nb=D(()=>{Ni();eb();Pc=Array(256).fill(null);Pc[98]=qd("binary",$c,Ld,Yy);Pc[111]=qd("octal",xc,Dd,Ky);Pc[120]=qd("hexadecimal",bc,Jd,Md);Ae=Array(255);Ae.fill(Vd);for(let e=0;e<32;e++)Ae[e]=jc;Ae[9]=Ka;Ae[10]=Ii;Ae[11]=Ii;Ae[12]=Ii;Ae[13]=Ii;Ae[32]=Ka;Ae[34]=xN;Ae[35]=tb;Ae[40]=Ti(mc);Ae[41]=Ti(Ba);Ae[43]=rb;Ae[45]=rb;Ae[46]=$N;Ae[47]=wN;Ae[48]=un;Ae[49]=un;Ae[50]=un;Ae[51]=un;Ae[52]=un;Ae[53]=un;Ae[54]=un;Ae[55]=un;Ae[56]=un;Ae[57]=un;Ae[59]=Ti(yc);Ae[61]=Ti(wo);Ae[91]=jc;Ae[92]=Ti(wc);Ae[93]=jc;Ae[114]=SN;Ae[123]=Ti(hc);Ae[125]=Ti(gc);Ae[133]=Ii;Ae[160]=Ka});var Po=D(()=>{nb()});var Me;var Ni=D(()=>{Po();Me=class Me extends Error{name="InvalidKdlError";start;end;token;errors;constructor(e,{token:t,start:r=t?.start,end:n=t?.end,errors:s,...i}={}){if(t?.type===Ns)e=`${e} at end of input`;else if(r)e=`${e} at ${r.line}:${r.column}`;super(e,i);this.token=t,this.start=r,this.end=n,this.errors=s}*flat(){if(this.errors==null){yield this;return}for(let e of this.errors)yield*e.flat()}}});function jo(e){return sb.get(e)}function ib(e,{start:t},{end:r}){sb.set(e,{start:t,end:r})}var sb;var Wd=D(()=>{sb=new WeakMap});function ob({experimentalSuffixedNumbers:e=!1}={}){return{experimentalSuffixedNumbers:e}}class fn{type="identifier";static type="identifier";representation;constructor(e){this.name=e}getName(){return this.name}setName(e){if(e!==this.name)this.name=e,this.representation=void 0}clone(){let e=new fn(this.name);return e.representation=this.representation,e}}class Pn{type="tag";static type="tag";representation;leading;trailing;suffix;constructor(e){this.name,Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!1,value:e})}getName(){return this.name}setName(e){if(e!==this.name)this.name=e,this.representation=void 0}clone(){let e=new Pn(this.name);return e.representation=this.representation,e.leading=this.leading,e.trailing=this.trailing,e.suffix=this.suffix,e}}class dn{type="value";static type="value";representation;tag=null;betweenTagAndValue;constructor(e){this.value=e}clone(){let e=new dn(this.value);return e.tag=this.tag?.clone()??null,e.betweenTagAndValue=this.betweenTagAndValue,e.representation=this.representation,e}getValue(){return this.value}setValue(e){if(e!==this.value)this.value=e,this.representation=void 0}getTag(){return this.tag?this.tag.name:null}setTag(e){if(e==null)this.tag=null;else if(this.tag!=null)this.tag.setName(e);else this.tag=new Pn(e)}}var Hd=()=>{};class Mr{static createArgument(e){return new Mr(new dn(e),null)}static createProperty(e,t){return new Mr(new dn(t),new fn(e))}type="entry";static type="entry";name;value;leading;trailing;equals;constructor(e,t){this.value=e,this.name=t}clone(){let e=new Mr(this.value.clone(),this.name?.clone()??null);return e.leading=this.leading,e.trailing=this.trailing,e.equals=this.equals,e}getTag(){return this.value.getTag()}setTag(e){this.value.setTag(e)}getName(){return this.name?this.name.name:null}setName(e){this.name=e!=null?new fn(e):null}getValue(){return this.value.value}setValue(e){this.value=new dn(e)}isArgument(){return this.name==null}isProperty(){return this.name!=null}}var Bd=D(()=>{Hd()});function*ko(e){for(let t=e.length-1;t>=0;t--)yield e[t]}function Ud(e){return e.children??(e.children=new Ms)}class _o{static create(e){return new _o(new fn(e))}type="node";static type="node";name;tag=null;entries;children;leading;trailing;beforeChildren;betweenTagAndName;constructor(e,t=[],r=null){this.name=e,this.entries=t,this.children=r}clone({shallow:e=!1}={}){let t=new _o(this.name.clone(),e?[]:this.entries.map((r)=>r.clone()),this.children?.clone({shallow:e}));if(this.tag)t.tag=this.tag.clone();return t.leading=this.leading,t.betweenTagAndName=this.betweenTagAndName,t.beforeChildren=this.beforeChildren,t.trailing=this.trailing,t}getTag(){return this.tag?this.tag.name:null}setTag(e){this.tag=e!=null?new Pn(e):null}getName(){return this.name.name}setName(e){this.name.setName(e)}hasArguments(){return this.entries.some((e)=>e.isArgument())}getArguments(){return this.getArgumentEntries().map((e)=>e.getValue())}getArgumentEntries(){return this.entries.filter((e)=>e.isArgument())}hasArgument(e){return this.getArgumentEntry(e)!=null}getArgument(e){return this.getArgumentEntry(e)?.getValue()}getArgumentEntry(e){for(let t of this.entries){if(!t.isArgument())continue;if(e===0)return t;e--}}addArgument(e,t,r){let n=Mr.createArgument(e);if(n.value.setTag(t),r!=null)for(let[s,i]of this.entries.entries()){if(!i.isArgument())continue;if(r===0){this.entries.splice(s,0,i);return}r--}this.entries.push(n)}removeArgument(e){for(let[t,r]of this.entries.entries()){if(!r.isArgument())continue;if(e===0){this.entries.splice(t,1);return}e--}}hasProperties(){return this.entries.some((e)=>e.isProperty())}getProperties(){return new Map(this.getPropertyEntries().map((e)=>[e.getName(),e.getValue()]))}getPropertyEntries(){return this.entries.filter((e)=>e.isProperty())}getPropertyEntryMap(){return new Map(this.getPropertyEntries().map((e)=>[e.getName(),e]))}hasProperty(e){return this.getPropertyEntry(e)!=null}getProperty(e){return this.getPropertyEntry(e)?.getValue()}getPropertyEntry(e){for(let t of ko(this.entries))if(t.getName()===e)return t;return}setProperty(e,t,r){for(let s of ko(this.entries))if(s.getName()===e){s.setValue(t),s.value.setTag(r);return}let n=Mr.createProperty(e,t);n.value.setTag(r),this.entries.push(n)}deleteProperty(e){this.entries=this.entries.filter((t)=>t.getName()!==e)}hasChildren(){return this.children!=null&&!this.children.isEmpty()}appendNode(e){Ud(this).appendNode(e)}insertNodeBefore(e,t){Ud(this).insertNodeBefore(e,t)}insertNodeAfter(e,t){Ud(this).insertNodeAfter(e,t)}removeNode(e){if(this.children==null)throw Error("Node to remove is not in document");this.children.removeNode(e)}replaceNode(e,t){if(this.children==null)throw Error("Node to remove is not in document");this.children.replaceNode(e,t)}findNodesByName(e){return this.children!=null?this.children.findNodesByName(e):[]}findNodeByName(e){return this.children?.findNodeByName(e)}findParameterizedNode(e,t){return this.children?.findParameterizedNode(e,t)}removeNodesByName(e){this.children?.removeNodesByName(e)}}var ab=D(()=>{zd();Bd()});function*Ao(e){if(e instanceof Ms)yield*e.nodes;else yield e}class Ms{type="document";static type="document";nodes;trailing;constructor(e=[]){this.nodes=e}clone({shallow:e}={}){let t=new Ms(e?[]:this.nodes.map((r)=>r.clone()));return t.trailing=this.trailing,t}appendNode(e){this.nodes.push(...Ao(e))}insertNodeBefore(e,t){if(t==null){this.nodes.push(...Ao(e));return}let r=this.nodes.indexOf(t);if(r===-1)throw Error("Reference node is not in document");this.nodes.splice(r,0,...Ao(e))}insertNodeAfter(e,t){if(t==null){this.nodes.unshift(...Ao(e));return}let r=this.nodes.indexOf(t);if(r===-1)throw Error("Reference node is not in document");this.nodes.splice(r+1,0,...Ao(e))}removeNode(e){let t=this.nodes.indexOf(e);if(t===-1)throw Error("Node to remove is not in document");this.nodes.splice(t,1)}replaceNode(e,t){let r=this.nodes.indexOf(e);if(r===-1)throw Error("Node to replace is not in document");this.nodes.splice(r,1,...Ao(t))}findNodesByName(e){return this.nodes.filter((t)=>t.name.name===e)}findNodeByName(e){for(let t of ko(this.nodes))if(t.name.name===e)return t;return}findParameterizedNode(e,t){for(let r of ko(this.nodes)){if(r.name.name!==e)continue;let n=r.getArguments();if(n.length!==1||t!==void 0&&n[0]!==t)continue;return r}return}removeNodesByName(e){this.nodes=this.nodes.filter((t)=>t.name.name!==e)}isEmpty(){return this.nodes.length===0}}var zd=()=>{};var lb=D(()=>{zd();Bd();ab();Hd()});function cb(e,t,r){let n;while(n=PN.exec(t)){let s=Xa(r,t,n.index);e.push(new Me("Raw strings with single quotes cannot contain any unescaped newlines, use triple-quotes for multiline strings",{token:r,start:s,end:{offset:s.offset+n[0].length,line:s.line+1,column:1}}))}return t}function ub(e,t,r){if(!Ro.test(t))return e.push(new Me("Raw strings with three quotes must be multiline strings",{token:r})),t;if(!Ro.test(t[0]))return e.push(new Me("Multi-line strings must start with a newline",{token:r})),t;let n=_N.exec(t)?.[1];if(n==null)return e.push(new Me("The final line in a multiline string may only contain whitespace",{token:r})),t;return t.replace(RN,(s,i,o,a,l)=>{if(!a)return`
|
|
9
|
-
`;if(!o.startsWith(n)){let c=
|
|
8
|
+
`||t===";")&&e===0)return this.index+=1,!0;else this.index+=1}return e===0}}function vo(e){if(kC.test(e))return"unreadable";let t=new tb(e);for(;;){if(t.skipTrivia(),t.done)return"document";if(t.startsWith("(")){let r=e.indexOf(")",t.index);if(r===-1)return"unreadable";t.index=r+1}else{let[r]=_C.exec(e.slice(t.index,t.index+256))??[];if(!r)return t.startsWith('"')||t.startsWith("#")?"document":"unreadable";if(!r.startsWith("$"))return r==="project"?"project":"document";if(t.index+=r.length,!t.skipNode())return"unreadable"}}}var kC,_C;var Ya=D(()=>{kC=/\0/u,_C=/^[^\s\\/(){};[\]"#=]+/u});function Qa(e){switch(e){case 9:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8239:case 8287:case 12288:return!0}return!1}function Ls(e){return e===13||e===10||e===133||e===11||e===12||e===8232||e===8233||!1}function _c(e){return e<8||e>=14&&e<=25||e===127||e>=55296&&e<=57343||e>1114111||e===8206||e===8207||e>=8234&&e<=8238||e>=8294&&e<=8297||e===65279}function rt(e){return!isNaN(e)&&!Qa(e)&&!Ls(e)&&e!==61&&e!==92&&e!==47&&e!==40&&e!==41&&e!==123&&e!==125&&e!==59&&e!==91&&e!==93&&e!==34&&e!==35&&!0}function rb(e){return e>=65&&e<91||e>=97&&e<123||!1}function qd(e){return e>=48&&e<64||e>=65&&e<71||e>=97&&e<103||!1}function Vd(e){return qd(e)||e===95}function cs(e){return e>=48&&e<58}function Ii(e){return cs(e)||e===95}function Wd(e){return e>=48&&e<56}function nb(e){return Wd(e)||e===95}function Hd(e){return e===48||e===49}function sb(e){return Hd(e)||e===95}function ib(e){return e===45||e===43}var Js=1,So=2,Ni=3,bc=4,xc=5,Xa=6,$c=7,wc=8,Za=9,Ms=10,tr=11,Eo=12,jo=13,vc=14,ls=15,Sc=16,Ec=17,Ci=18,Ds=19,jc=20,Pc=21,kc=22,Po=23,Ti=24,En=28;function*RC(e){for(let t of(AC??=new Intl.Segmenter("en")).segment(e))yield t.segment}function OC(e){return e[Symbol.iterator]()}function ob(e,{flags:t,graphemeLocations:r=!1}){let n=r?RC(e):OC(e),s=n.next();return{text:e,graphemeLocations:r,line:1,column:1,offset:0,length:e.length,iterator:n,currentIter:s,current:s.done?NaN:s.value.codePointAt(0),start:{line:1,column:1,offset:0},errorsInToken:null,flags:t}}function*ab(e){if(Ie(e,65279))e.column=1,yield ke(e,So);if(_c(e.current))throw jn(e,`Invalid character \\u${e.current.toString(16)}`)}function vt(e){e.offset+=e.currentIter.value.length,e.column++;let t=e.currentIter=e.iterator.next(),r=e.current=t.done?NaN:t.value.codePointAt(0);if(_c(r))if(r>=55296&&r<=57343||r>1114111)el(e,`Invalid character \\u${r.toString(16)}`);else el(e,`Invalid character \\u${r.toString(16)}, this character is not allowed but can be included in strings as \\u{${r.toString(16)}}`);return r}function fn(e,t){if(t(e.current)){let r=e.current;return vt(e),r}}function Ie(e,t){if(e.current===t)return vt(e),t}function ko(e){if(!Ls(e.current))return!1;if(!e.graphemeLocations&&e.current===13&&e.text.codePointAt(e.offset+1)===10)e.iterator.next(),e.offset++;return vt(e),e.column=1,e.line++,!0}function Bd(e,t){while(e.current===t)vt(e)}function ze(e,t){while(t(e.current))vt(e)}function ke(e,t,r){let{line:n,column:s,offset:i}=e,o={line:n,column:s,offset:i},a=e.start;e.start=o;let l=e.errorsInToken;e.errorsInToken=null;let c={type:t,text:e.text.slice(a.offset,o.offset),start:a,end:o,errors:l};if(r){if(!c.errors)c.errors=[];c.errors.push(new De(r,{token:c}))}return c}function jn(e,t){if(t instanceof De)return t;let{line:r,column:n,offset:s}=e,i={line:r,column:n,offset:s},o;if(s<e.length)if(Ls(e.current))o={line:r+1,column:1,offset:s+1};else o={line:r,column:n+1,offset:s+1};return new De(`${t}`,{start:i,end:o})}function el(e,t){(e.errorsInToken??=[]).push(jn(e,t))}var AC;var lb=D(()=>{Ji()});function Mi(e){return(t)=>(vt(t),ke(t,e))}function tl(e){return ze(e,Qa),ke(e,Ci)}function Di(e){return ko(e),ke(e,Ds)}function NC(e){vt(e);let t=!1,r=!1;if(Ie(e,34)){if(!Ie(e,34))return ke(e,Za);if(r=!0,e.current===34)throw jn(e,"Multiline strings must start with exactly three quotes");while(!t&&e.offset<e.length)if(Ie(e,34)){if(Ie(e,34)&&Ie(e,34))t=!0}else Ie(e,92),ko(e)||vt(e)}else while(!t&&e.offset<e.length)if(Ie(e,34))t=!0;else Ie(e,92),ko(e)||vt(e);if(!t)throw jn(e,"Unexpected EOF inside string");return ke(e,r?Po:Za)}function cb(e){if(vt(e),e.current===35||e.current===34){let t=1;while(Ie(e,35))t++;if(!Ie(e,34))throw jn(e,`Expected a quote after ${"#".repeat(t)}`);let r=!1;if(Ie(e,34))if(Ie(e,34)){if(e.current===34)throw jn(e,"Multiline strings must start with exactly three quotes");r=!0}else{let n=0;while(Ie(e,35))n++;if(n===t)return ke(e,Ms)}while(!0){if(e.offset>=e.length)throw jn(e,"Unexpected EOF while parsing raw string");if(Ie(e,34)){if(r){if(!Ie(e,34)||!Ie(e,34))continue}let n=0;while(n<t&&Ie(e,35))n++;if(n===t)return ke(e,r?Ti:Ms)}else ko(e)||vt(e)}}else{let t;if(e.current<255){let r=Ae[e.current];t=r(e)}else if(Qa(e.current))t=tl(e);else if(Ls(e.current))t=Di(e);else t=zd(e);if(t.type!==tr)(t.errors??=[]).push(new De("Expected a valid identifier",{token:t}));return t.type=jo,t}}function CC(e){if(vt(e),fn(e,cs))return ze(e,rt),ke(e,tr,"Invalid identifier, identifiers that start with a sign and a dot must be quoted if the next character is a digit to prevent confusion with decimal numbers");return ze(e,rt),ke(e,tr)}function TC(e){if(vt(e),Ie(e,45))return ke(e,Ni);else if(Ie(e,47)){while(e.offset<e.length&&!Ls(e.current))vt(e);return ke(e,Pc)}else if(Ie(e,42)){let t=1;while(e.offset<e.length)if(Ie(e,42)){if(Ie(e,47)){if(t--,t===0)return ke(e,kc)}}else if(Ie(e,47)){if(Ie(e,42))t++}else ko(e)||vt(e);throw jn(e,"Unexpected EOF in multiline comment")}else Rc(e)}function ub(e){return vt(e),IC(e)}function IC(e){if(cs(e.current))return dn(e);else if(Ie(e,46)){if(fn(e,cs))return ze(e,rt),ke(e,tr,"Invalid identifier or number, surround with quotes to make it an identifier or add a zero between the sign and the decimal point");return ze(e,rt),ke(e,tr)}else return ze(e,rt),ke(e,tr)}function Ud(e,t,r,n){return(s)=>{let i=vt(s);if(fn(s,r))return ze(s,n),ke(s,t);else if(!s.flags.experimentalSuffixedNumbers){if(Ie(s,95)){if(ze(s,n),!rt(s.current))return ke(s,t,`Invalid ${e} number, the first character after 0${String.fromCodePoint(i)} cannot be an underscore`)}return ze(s,rt),ke(s,tr,`Invalid ${e} number`)}else if(Ie(s,95)){if(Bd(s,95),r(s.current)){if(ze(s,n),!rt(s.current))return ke(s,t,`Invalid ${e} number, the first character after 0${String.fromCodePoint(i)} cannot be an underscore`)}return ze(s,rt),ke(s,tr,"Invalid number with suffix, a suffix cannot start with a letter followed by an underscore")}else if(cs(s.current))return ke(s,tr,"Invalid number with suffix, a suffix cannot start with a letter followed by a number");else return ze(s,rt),ke(s,En)}}function dn(e){if(Ie(e,48)){let t=Ac[e.current];if(t)return t(e)}if(ze(e,Ii),Ie(e,46)){if(!fn(e,cs))if(e.current===95)el(e,"Invalid decimal number, the part after the decimal point mustn't start on an underscore");else el(e,"Invalid decimal number, a decimal point must be followed by a digit");ze(e,Ii)}if(Ie(e,101)||Ie(e,69))if(fn(e,ib),fn(e,cs)){if(ze(e,Ii),rt(e.current))return ze(e,rt),ke(e,tr,"Invalid number with suffix, a number with an exponent cannot have a suffix");return ke(e,ls)}else if(!e.flags.experimentalSuffixedNumbers)if(e.current===95)return ze(e,Ii),ke(e,ls,"Invalid decimal number, the number after the exponent mustn't start on an underscore");else return ze(e,rt),ke(e,ls,"Invalid decimal number, missing a number after the exponent");else if(Ie(e,95)){if(Bd(e,95),cs(e.current)){if(ze(e,Ii),!rt(e.current))return ke(e,ls,"Invalid decimal number, the number after the exponent mustn't start on an underscore")}return ze(e,rt),ke(e,tr,"Invalid number with suffix, a suffix cannot start with a letter followed by an underscore")}else return ze(e,rt),ke(e,En);else if(e.flags.experimentalSuffixedNumbers)if(e.current===88||e.current===120){vt(e);let t=null;if(fn(e,Vd))t="Invalid number with suffix, a suffix cannot start with an x followed by a hexidecimal number";return ze(e,rt),ke(e,En,t)}else if(fn(e,rb)){let t=null;if(fn(e,Ii))t="Invalid number with suffix, a suffix cannot start with a letter followed by a digit";return ze(e,rt),ke(e,En,t)}else if(Ie(e,44))return ze(e,rt),ke(e,En,"Invalid number with suffix, a suffix cannot start with a comma");else if(Ie(e,46))return ze(e,rt),ke(e,En,"Invalid number with suffix, a suffix cannot start with a dot");else if(fn(e,rt))return ze(e,rt),ke(e,En);else return ke(e,ls);else return ke(e,ls)}function JC(e){if(vt(e),e.current!=35)return ze(e,rt),ke(e,tr);let t=cb(e);t.start.offset--,t.start.column--;let r;switch(t.type){case Ms:case Ti:r='Invalid raw string, the correct syntax is #" "#, not r#" "#';break;default:r="Invalid token, did you forget a whitespace after this r?"}return(t.errors??=[]).push(new De(r,{token:t})),t}function zd(e){return vt(e),ze(e,rt),ke(e,tr)}function Rc(e){throw jn(e,`Unexpected character ${JSON.stringify(String.fromCodePoint(e.current))}, did you forget to quote an identifier?`)}function*rl(e,t){let r=ob(e,t);yield*ab(r);while(!r.currentIter.done){if(r.current<255){let n=Ae[r.current];yield n(r);continue}if(Qa(r.current)){yield tl(r);continue}if(Ls(r.current)){yield Di(r);continue}yield zd(r)}yield ke(r,Js)}var Ac,Ae;var fb=D(()=>{Ji();lb();Ac=Array(256).fill(null);Ac[98]=Ud("binary",Ec,Hd,sb);Ac[111]=Ud("octal",Sc,Wd,nb);Ac[120]=Ud("hexadecimal",vc,qd,Vd);Ae=Array(255);Ae.fill(zd);for(let e=0;e<32;e++)Ae[e]=Rc;Ae[9]=tl;Ae[10]=Di;Ae[11]=Di;Ae[12]=Di;Ae[13]=Di;Ae[32]=tl;Ae[34]=NC;Ae[35]=cb;Ae[40]=Mi(bc);Ae[41]=Mi(Xa);Ae[43]=ub;Ae[45]=ub;Ae[46]=CC;Ae[47]=TC;Ae[48]=dn;Ae[49]=dn;Ae[50]=dn;Ae[51]=dn;Ae[52]=dn;Ae[53]=dn;Ae[54]=dn;Ae[55]=dn;Ae[56]=dn;Ae[57]=dn;Ae[59]=Mi(wc);Ae[61]=Mi(Eo);Ae[91]=Rc;Ae[92]=Mi(jc);Ae[93]=Rc;Ae[114]=JC;Ae[123]=Mi(xc);Ae[125]=Mi($c);Ae[133]=Di;Ae[160]=tl});var _o=D(()=>{fb()});var De;var Ji=D(()=>{_o();De=class De extends Error{name="InvalidKdlError";start;end;token;errors;constructor(e,{token:t,start:r=t?.start,end:n=t?.end,errors:s,...i}={}){if(t?.type===Js)e=`${e} at end of input`;else if(r)e=`${e} at ${r.line}:${r.column}`;super(e,i);this.token=t,this.start=r,this.end=n,this.errors=s}*flat(){if(this.errors==null){yield this;return}for(let e of this.errors)yield*e.flat()}}});function Ao(e){return db.get(e)}function pb(e,{start:t},{end:r}){db.set(e,{start:t,end:r})}var db;var Gd=D(()=>{db=new WeakMap});function mb({experimentalSuffixedNumbers:e=!1}={}){return{experimentalSuffixedNumbers:e}}class pn{type="identifier";static type="identifier";representation;constructor(e){this.name=e}getName(){return this.name}setName(e){if(e!==this.name)this.name=e,this.representation=void 0}clone(){let e=new pn(this.name);return e.representation=this.representation,e}}class Pn{type="tag";static type="tag";representation;leading;trailing;suffix;constructor(e){this.name,Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!1,value:e})}getName(){return this.name}setName(e){if(e!==this.name)this.name=e,this.representation=void 0}clone(){let e=new Pn(this.name);return e.representation=this.representation,e.leading=this.leading,e.trailing=this.trailing,e.suffix=this.suffix,e}}class mn{type="value";static type="value";representation;tag=null;betweenTagAndValue;constructor(e){this.value=e}clone(){let e=new mn(this.value);return e.tag=this.tag?.clone()??null,e.betweenTagAndValue=this.betweenTagAndValue,e.representation=this.representation,e}getValue(){return this.value}setValue(e){if(e!==this.value)this.value=e,this.representation=void 0}getTag(){return this.tag?this.tag.name:null}setTag(e){if(e==null)this.tag=null;else if(this.tag!=null)this.tag.setName(e);else this.tag=new Pn(e)}}var Kd=()=>{};class Lr{static createArgument(e){return new Lr(new mn(e),null)}static createProperty(e,t){return new Lr(new mn(t),new pn(e))}type="entry";static type="entry";name;value;leading;trailing;equals;constructor(e,t){this.value=e,this.name=t}clone(){let e=new Lr(this.value.clone(),this.name?.clone()??null);return e.leading=this.leading,e.trailing=this.trailing,e.equals=this.equals,e}getTag(){return this.value.getTag()}setTag(e){this.value.setTag(e)}getName(){return this.name?this.name.name:null}setName(e){this.name=e!=null?new pn(e):null}getValue(){return this.value.value}setValue(e){this.value=new mn(e)}isArgument(){return this.name==null}isProperty(){return this.name!=null}}var Yd=D(()=>{Kd()});function*Ro(e){for(let t=e.length-1;t>=0;t--)yield e[t]}function Xd(e){return e.children??(e.children=new Fs)}class Oo{static create(e){return new Oo(new pn(e))}type="node";static type="node";name;tag=null;entries;children;leading;trailing;beforeChildren;betweenTagAndName;constructor(e,t=[],r=null){this.name=e,this.entries=t,this.children=r}clone({shallow:e=!1}={}){let t=new Oo(this.name.clone(),e?[]:this.entries.map((r)=>r.clone()),this.children?.clone({shallow:e}));if(this.tag)t.tag=this.tag.clone();return t.leading=this.leading,t.betweenTagAndName=this.betweenTagAndName,t.beforeChildren=this.beforeChildren,t.trailing=this.trailing,t}getTag(){return this.tag?this.tag.name:null}setTag(e){this.tag=e!=null?new Pn(e):null}getName(){return this.name.name}setName(e){this.name.setName(e)}hasArguments(){return this.entries.some((e)=>e.isArgument())}getArguments(){return this.getArgumentEntries().map((e)=>e.getValue())}getArgumentEntries(){return this.entries.filter((e)=>e.isArgument())}hasArgument(e){return this.getArgumentEntry(e)!=null}getArgument(e){return this.getArgumentEntry(e)?.getValue()}getArgumentEntry(e){for(let t of this.entries){if(!t.isArgument())continue;if(e===0)return t;e--}}addArgument(e,t,r){let n=Lr.createArgument(e);if(n.value.setTag(t),r!=null)for(let[s,i]of this.entries.entries()){if(!i.isArgument())continue;if(r===0){this.entries.splice(s,0,i);return}r--}this.entries.push(n)}removeArgument(e){for(let[t,r]of this.entries.entries()){if(!r.isArgument())continue;if(e===0){this.entries.splice(t,1);return}e--}}hasProperties(){return this.entries.some((e)=>e.isProperty())}getProperties(){return new Map(this.getPropertyEntries().map((e)=>[e.getName(),e.getValue()]))}getPropertyEntries(){return this.entries.filter((e)=>e.isProperty())}getPropertyEntryMap(){return new Map(this.getPropertyEntries().map((e)=>[e.getName(),e]))}hasProperty(e){return this.getPropertyEntry(e)!=null}getProperty(e){return this.getPropertyEntry(e)?.getValue()}getPropertyEntry(e){for(let t of Ro(this.entries))if(t.getName()===e)return t;return}setProperty(e,t,r){for(let s of Ro(this.entries))if(s.getName()===e){s.setValue(t),s.value.setTag(r);return}let n=Lr.createProperty(e,t);n.value.setTag(r),this.entries.push(n)}deleteProperty(e){this.entries=this.entries.filter((t)=>t.getName()!==e)}hasChildren(){return this.children!=null&&!this.children.isEmpty()}appendNode(e){Xd(this).appendNode(e)}insertNodeBefore(e,t){Xd(this).insertNodeBefore(e,t)}insertNodeAfter(e,t){Xd(this).insertNodeAfter(e,t)}removeNode(e){if(this.children==null)throw Error("Node to remove is not in document");this.children.removeNode(e)}replaceNode(e,t){if(this.children==null)throw Error("Node to remove is not in document");this.children.replaceNode(e,t)}findNodesByName(e){return this.children!=null?this.children.findNodesByName(e):[]}findNodeByName(e){return this.children?.findNodeByName(e)}findParameterizedNode(e,t){return this.children?.findParameterizedNode(e,t)}removeNodesByName(e){this.children?.removeNodesByName(e)}}var hb=D(()=>{Zd();Yd()});function*No(e){if(e instanceof Fs)yield*e.nodes;else yield e}class Fs{type="document";static type="document";nodes;trailing;constructor(e=[]){this.nodes=e}clone({shallow:e}={}){let t=new Fs(e?[]:this.nodes.map((r)=>r.clone()));return t.trailing=this.trailing,t}appendNode(e){this.nodes.push(...No(e))}insertNodeBefore(e,t){if(t==null){this.nodes.push(...No(e));return}let r=this.nodes.indexOf(t);if(r===-1)throw Error("Reference node is not in document");this.nodes.splice(r,0,...No(e))}insertNodeAfter(e,t){if(t==null){this.nodes.unshift(...No(e));return}let r=this.nodes.indexOf(t);if(r===-1)throw Error("Reference node is not in document");this.nodes.splice(r+1,0,...No(e))}removeNode(e){let t=this.nodes.indexOf(e);if(t===-1)throw Error("Node to remove is not in document");this.nodes.splice(t,1)}replaceNode(e,t){let r=this.nodes.indexOf(e);if(r===-1)throw Error("Node to replace is not in document");this.nodes.splice(r,1,...No(t))}findNodesByName(e){return this.nodes.filter((t)=>t.name.name===e)}findNodeByName(e){for(let t of Ro(this.nodes))if(t.name.name===e)return t;return}findParameterizedNode(e,t){for(let r of Ro(this.nodes)){if(r.name.name!==e)continue;let n=r.getArguments();if(n.length!==1||t!==void 0&&n[0]!==t)continue;return r}return}removeNodesByName(e){this.nodes=this.nodes.filter((t)=>t.name.name!==e)}isEmpty(){return this.nodes.length===0}}var Zd=()=>{};var gb=D(()=>{Zd();Yd();hb();Kd()});function yb(e,t,r){let n;while(n=DC.exec(t)){let s=nl(r,t,n.index);e.push(new De("Raw strings with single quotes cannot contain any unescaped newlines, use triple-quotes for multiline strings",{token:r,start:s,end:{offset:s.offset+n[0].length,line:s.line+1,column:1}}))}return t}function bb(e,t,r){if(!Co.test(t))return e.push(new De("Raw strings with three quotes must be multiline strings",{token:r})),t;if(!Co.test(t[0]))return e.push(new De("Multi-line strings must start with a newline",{token:r})),t;let n=qC.exec(t)?.[1];if(n==null)return e.push(new De("The final line in a multiline string may only contain whitespace",{token:r})),t;return t.replace(WC,(s,i,o,a,l)=>{if(!a)return`
|
|
9
|
+
`;if(!o.startsWith(n)){let c=nl(r,t,l+i.length);return e.push(new De("Every non-blank line of a multi-line string must start with the offset defined by the last line of the string",{token:r,start:c,end:{offset:c.offset+n.length,line:c.line,column:c.column+n.length}})),`
|
|
10
10
|
`}return`
|
|
11
|
-
`+o.slice(n.length)+a}).slice(1,-1)}function
|
|
12
|
-
`;if(!o.startsWith(n)){let h=
|
|
11
|
+
`+o.slice(n.length)+a}).slice(1,-1)}function xb(e,t,r){let n;while(n=FC.exec(t)){let s=nl(r,t,n.indices[1][0]);e.push(new De("Strings with single quotes cannot contain any unescaped newlines, use triple-quotes for multiline strings",{token:r,start:s,end:{offset:s.offset+n[1].length,line:s.line+1,column:1}}))}return t.replace(BC,(s,i,o,a,l)=>wb(e,t,r,s,i,o,a,l))}function $b(e,t,r){if(!LC.test(t))return e.push(new De("Strings with three quotes must be multiline strings",{token:r})),t;if(!Co.test(t[0]))return e.push(new De("Multi-line strings must start with a newline",{token:r})),t;let n=VC.exec(t)?.[1];if(n==null){let s=HC.exec(t),i=s?nl(r,t,s.index):void 0,o="The final line in a multiline string may only contain whitespace";if(s?.[0][0]==="\\")o+=" after removing escaped whitespace";return e.push(new De(o,{token:r,start:i,end:i&&{offset:i.offset,line:i.line,column:i.column+1}})),t}return t.replace(UC,(s,i,o,a,l,c,u)=>{if(!i)return wb(e,t,r,s,a,l,c,u);let p=t[u+i.length+(o?o.length:0)];if(Co.test(p))return`
|
|
12
|
+
`;if(!o.startsWith(n)){let h=nl(r,t,u+i.length);return e.push(new De("Every non-blank line of a multi-line string must start with the offset defined by the last line of the string",{token:r,start:h,end:{offset:h.offset+n.length,line:h.line,column:h.column+n.length}})),`
|
|
13
13
|
`}return`
|
|
14
|
-
`+o.slice(n.length)}).slice(1,-1)}function
|
|
15
|
-
`],["\\r","\r"],["\\t","\t"],["\\\\","\\"],["\\\"",'"'],["\\b","\b"],["\\f","\f"],["\\s"," "]]),Ro=/\x0D\x0A|[\x0A\x0B\x0C\x0D\x85\u2028\u2029]/,PN=/\x0D\x0A|[\x0A\x0B\x0C\x0D\x85\u2028\u2029]/g,jN=/(?:^|[^\\\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000\x0A\x0B\x0C\x0D\x85\u2028\u2029])(?:\\\\)*[\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000\x0A\x0B\x0C\x0D\x85\u2028\u2029]*(\x0D\x0A|[\x0A\x0B\x0C\x0D\x85\u2028\u2029])/s,kN=/(?:^|[^\\\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000\x0A\x0B\x0C\x0D\x85\u2028\u2029])(?:\\\\)*[\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000\x0A\x0B\x0C\x0D\x85\u2028\u2029]*(\x0D\x0A|[\x0A\x0B\x0C\x0D\x85\u2028\u2029])/dgs;_N=/[\x0A\x0B\x0C\x0D\x85\u2028\u2029]([\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]*)$/,AN=/(?:^|[^\\\x0A\x0B\x0C\x0D\x85\u2028\u2029\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000])(?:\\\\)*[\x0A\x0B\x0C\x0D\x85\u2028\u2029\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]*[\x0A\x0B\x0C\x0D\x85\u2028\u2029]([\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]*)(?:\\[\x0A\x0B\x0C\x0D\x85\u2028\u2029\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]*)*$/,RN=/(\x0D\x0A|[\x0A\x0B\x0C\x0D\x85\u2028\u2029])([\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]*)([^\x0A\x0B\x0C\x0D\x85\u2028\u2029\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]?)/g,ON=/([^\x0A\x0B\x0C\x0D\x85\u2028\u2029\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000])[\x0A\x0B\x0C\x0D\x85\u2028\u2029\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]*$/;CN=/\\(?:$|u\{(0[0-9a-fA-F]{0,5}|10[0-9a-fA-F]{4}|[1-9a-fA-F][0-9a-fA-F]{0,4})\}|u(\{[^}]{1,6}\}?|[0-9a-fA-F]{1,5}|10[0-9a-fA-F]{4})|([\x0A\x0B\x0C\x0D\x85\u2028\u2029\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]+)|.)/g;NN=/(\x0D\x0A|[\x0A\x0B\x0C\x0D\x85\u2028\u2029])([\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]*)|\\(?:$|u\{(0[0-9a-fA-F]{0,5}|10[0-9a-fA-F]{4}|[1-9a-fA-F][0-9a-fA-F]{0,4})\}|u(\{[^}]{1,6}\}?|[0-9a-fA-F]{1,5}|10[0-9a-fA-F]{4})|([\x0A\x0B\x0C\x0D\x85\u2028\u2029\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]+)|.)/g});function us(e){if(!e.current.done)e.lastToken=e.current.value;e.current=e.tokens.next();let t=!e.current.done&&e.current.value.errors;if(t)e.errors.push(...t)}function ze(e,t){if(!e.current.done&&e.current.value.type===t){let r=e.current.value;return us(e),r}}function Re(e,t){let r="current"in e?e.current.value??e.lastToken:e;return new Me(t,{token:r})}function br(e,t,r,n=r){if(e.storeLocations)ib(t,r,n)}function Zt(e="",t="",r=""){return e+t+r||void 0}function Ac(e,t,{storeLocations:r=!1,flags:n}){let s={type:-1,text:"",start:{offset:0,line:1,column:1},end:{offset:0,line:1,column:1},errors:null},i={text:e,tokens:t[Symbol.iterator](),current:{done:!1,value:s},storeLocations:r,lastToken:s,errors:[],flags:n};return us(i),i}function Kd(e,t){if(!t&&!e.current.done&&e.current.value.type!==Ns)t=Re(e,`Unexpected token ${JSON.stringify(e.current.value.text)}, did you forget to quote an identifier?`);let r=e.errors??[];if(t!=null)if(t instanceof Me)if(t.errors)r.push(...t.errors);else r.push(t);else r.push(new Me(`An unexpected error occurred, ${String(t)}, this is likely a bug in the KDL parser`,{cause:t}));if(r.length)if(r.length===1)throw r[0];else throw new Me("Encountered multiple errors",{errors:r})}function kc(e){switch(e){case"#null":return null;case"#true":return!0;case"#false":return!1;case"#inf":return 1/0;case"#-inf":return-1/0;case"#nan":return NaN}}function hb(e){return e==="inf"||e==="-inf"||e==="nan"||e==="true"||e==="false"||e==="null"||!1}function Yd(e){let{value:t}=e.current,r,n,s,i,o,a=!1;if(t?.text[0]==="-"||t?.text[0]==="+")o=t.text[0];switch(t?.type){case Sn:{if(!e.flags.experimentalSuffixedNumbers)throw new Me("Unreachable code: got a suffixed number from the tokenizer but the suffixed number flag is not set",{token:t});let u=o?t.text.slice(1):t.text,p=u.search(/[^0-9._]/);if(n=(o??"")+u.slice(0,p),r=Number.parseFloat(n.replaceAll("_","")),i=s=u.slice(p),hb(s))e.errors.push(Re(e,`Invalid suffix ${s}, values that look like keywords cannot be used as suffix`))}break;case $c:a=!0,r=(o==="-"?-1:1)*Number.parseInt(t.text.slice(o?3:2).replaceAll("_",""),2);break;case xc:a=!0,r=(o==="-"?-1:1)*Number.parseInt(t.text.slice(o?3:2).replaceAll("_",""),8);break;case ls:a=!0,r=Number.parseFloat(t.text.replaceAll("_",""));break;case bc:a=!0,r=(o==="-"?-1:1)*Number.parseInt(t.text.slice(o?3:2).replaceAll("_",""),16);break;case vo:if(r=kc(t.text),r===void 0)if(r=null,kc(t.text.toLowerCase())!==void 0)e.errors.push(Re(e,`Invalid keyword ${t.text}, keywords are case sensitive, write ${t.text.toLowerCase()} instead`));else switch(t.text.toLowerCase()){case"#nul":case"#nill":e.errors.push(Re(e,`Invalid keyword ${t.text}, did you mean #null?`));break;case"#fals":case"#fasle":e.errors.push(Re(e,`Invalid keyword ${t.text}, did you mean #false?`));break;case"#ture":case"#treu":e.errors.push(Re(e,`Invalid keyword ${t.text}, did you mean #true?`));break;case"#ifn":e.errors.push(Re(e,`Invalid keyword ${t.text}, did you mean #inf?`));break;case"#-ifn":e.errors.push(Re(e,`Invalid keyword ${t.text}, did you mean #-inf?`));break;default:e.errors.push(Re(e,`Invalid keyword ${t.text}, surround it with quotes to use a string`))}break;default:return}us(e);let l=e.flags.experimentalSuffixedNumbers&&ze(e,vo);if(l)if(a){if(i=l.text,kc(i)!==void 0)e.errors.push(Re(l,`Invalid number suffix ${i}, did you forget a space between the number and the keyword?`));s=i.slice(1)}else if(s)e.errors.push(Re(l,"Unexpected hashed suffix, a number can only have one suffix"));else if(typeof r==="number")e.errors.push(Re(l,"Unexpected hashed suffix, you cannot place suffixes on number keywords"));else e.errors.push(Re(l,"Unexpected hashed suffix, you can only place suffixes on numbers"));let c=new dn(r);if(c.representation=n??t.text,br(e,c,t),s){let u=new Pn(s);u.representation=i,u.suffix=!0,br(e,u,e.lastToken),c.tag=u}return c}function Za(e){if(e.current.done)return;let{value:t}=e.current,r;switch(t.type){case Xt:if(us(e),hb(t.text))e.errors.push(Re(e,`Invalid keyword "${t.text}", add a leading # to use the keyword or surround with quotes to make it a string`));r=[t.text,t.text,t];break;case Ua:us(e),r=[fb(e.errors,t.text.slice(1,-1),t),t.text,t];break;case So:us(e),r=[db(e.errors,t.text.slice(3,-3),t),t.text,t];break;case Ts:{us(e);let n=t.text,s=n.indexOf('"');r=[cb(e.errors,n.slice(s+1,-(s+1)),t),n,t];break}case Oi:{us(e);let n=t.text,s=n.indexOf('"');r=[ub(e.errors,n.slice(s+3,-(s+3)),t),n,t];break}default:return}if(ze(e,vo))e.errors.push(Re(e.lastToken,kc(e.lastToken.text)===void 0?"Unexpected hashed suffix on a string, you can only place suffixes on numbers":"Unexpected keyword, did you forget to add whitespace?"));return r}function Xd(e){let t=Za(e);if(!t)return;let r=new fn(t[0]);return r.representation=t[1],br(e,r,t[2],e.lastToken),r}function _c(e){let t=Yd(e);if(t)return t;let r=Za(e);if(!r)return;let n=new dn(r[0]);return n.representation=r[1],br(e,n,r[2],e.lastToken),n}function Qa(e){let t=ze(e,vc);if(!t)return;let{value:r}=e.current;return us(e),t.text+(r?.text??"")}function Rc(e){return ze(e,Sc)?.text}function Zd(e){return ze(e,Ri)??Rc(e)}function Oc(e){let t=ze(e,wc);if(!t)return;while(Zd(e));if(!Qa(e)&&!ze(e,Is)&&!ze(e,Ns))e.errors.push(Re(e,`Expected newline or single-line comment after backslash but got ${e.current.value?.text??"EOF"}`));return e.text.slice(t.start.offset,e.lastToken.end.offset)}function Ds(e){let t=e.lastToken.end;while(ze(e,Is)?.text??Qa(e)??Zd(e)??Oc(e));if(e.lastToken.end===t)return;return e.text.slice(t.offset,e.lastToken.end.offset)}function _t(e){let t=e.lastToken.end;while(Zd(e)??Oc(e));if(e.lastToken.end===t)return;return e.text.slice(t.offset,e.lastToken.end.offset)}function Gd(e){let t=ze(e,mc);if(!t)return;let r=_t(e),n=Za(e);if(!n&&e.current.value){let a=e.current.value;if(Ds(e))e.errors.push(Re(a,"This type of whitespace is not allowed inside a tag"));n=Za(e)}if(!n){if(Yd(e))e.errors.push(Re(e,"Invalid tag, did you forget to quote a string?")),n=["error","error"]}if(!n)throw Re(e,"Invalid tag, did you forget to quote a string?");let s=_t(e),i=ze(e,Ba);if(!i&&e.current.value){let a=e.current.value;if(Ds(e))e.errors.push(Re(a,"This type of whitespace is not allowed inside a tag"));i=ze(e,Ba)}if(!i)throw Re(e,"Invalid tag, did you forget to quote a string?");let o=new Pn(n[0]);return o.representation=n[1],o.leading=r,o.trailing=s,br(e,o,t,e.lastToken),o}function Cc(e){return Qa(e)??ze(e,Is)?.text??ze(e,yc)?.text??ze(e,Ns)?.text}function Qd(e){if(!ze(e,hc))return;let t=xb(e);if(!ze(e,gc))throw Re(e,"Invalid node children");return t}function Oo(e){let t=e.current.value;{let p=Gd(e);if(p){let h=_t(e),m=_c(e);if(!m)throw Re(e,"Invalid argument");if(m.tag)e.errors.push(Re(e.lastToken,"A number suffix cannot be combined with a regular tag"));m.tag=p,m.betweenTagAndValue=h;let b=new Mr(m,null);br(e,m,t,e.lastToken),br(e,b,t,e.lastToken);let g=_t(e);if(ze(e,wo))e.errors.push(Re(e.lastToken,typeof m.value==="string"?"Unexpected equals sign, properties are name=(tag)value not (tag)name=value":"Unexpected equals sign")),g=Zt(g,_t(e))||" ";return[b,g]}}{let p=Yd(e);if(p){let h=new Mr(p,null);br(e,h,t,e.lastToken);let m=_t(e);if(ze(e,wo))e.errors.push(Re(e.lastToken,"Unexpected equals sign, did you forget to quote the property name?")),m=Zt(m,_t(e))||" ";return[h,m]}}let r=Za(e);if(!r)return;let n=_t(e),s=ze(e,wo);if(!s){let p=new dn(r[0]);p.representation=r[1],br(e,p,r[2]);let h=new Mr(p,null);return br(e,h,t,e.lastToken),[h,n]}let i=new fn(r[0]);i.representation=r[1],br(e,i,r[2]);let o=_t(e),a=Gd(e),l=a&&_t(e),c=_c(e);if(!c)throw Re(e,"Expected a value");if(a){if(c.tag)e.errors.push(Re(e.lastToken,"A number suffix cannot be combined with a regular tag"));c.tag=a,c.betweenTagAndValue=l}let u=new Mr(c,i);return br(e,u,t,e.lastToken),u.equals=Zt(n,s.text,o),[u,void 0]}function gb(e){let t=_t(e)??"",r;while(r=Ji(e)){let o=e.lastToken.end,a=Oo(e);if(!a)throw Re(e,"Expected a property or argument");if(!(a[1]??_t(e)))throw Re(e,"Expected space after slashdashed property or argument");t=t+r+e.text.slice(o.offset,e.lastToken.end.offset)}let n=Oo(e);if(!n)return;let s=n[1]??_t(e)??"";while(r=Ji(e)){let o=e.lastToken.end,a=Oo(e);if(!a)throw Re(e,"Expected a property or argument");if(!(a[1]??_t(e)))break;s=s+r+e.text.slice(o.offset,e.lastToken.end.offset)}let i=n[0];return i.leading=t,i.trailing=s,i}function Ji(e){let t=ze(e,Ai)?.text;if(!t)return;return Zt(t,Ds(e))}function Nc(e){let t=e.current.value,r=Gd(e),n=r&&_t(e),s=Xd(e);if(!s)if(r)throw Re(e,"Couldn't find node name");else return;let i=_t(e),o=i!=null,a=Ji(e),l=[];while(o||a){let h=e.lastToken.end,m=Oo(e);if(!m)break;if(a)o=(m[1]||_t(e))!=null,i=Zt(i,a,e.text.slice(h.offset,e.lastToken.end.offset)),a=Ji(e);else{let b=m[0];b.leading=i,l.push(b),i=m[1]||_t(e),o=i!=null,a=Ji(e)}}let c,u;while(!0){a??=Ji(e);let h=e.lastToken.end,m=Qd(e);if(!m){if(a)throw Re(e,"Unexpected slashdash");break}if(a)i=Zt(i,a,e.text.slice(h.offset,e.lastToken.end.offset)),a=void 0;else{if(c)e.errors.push(Re(e,"A node can only have one children block"));c=m,u=i??"",i=void 0}i=Zt(i,_t(e))}let p=new _o(s,l,c);return p.tag=r??null,p.betweenTagAndName=n,p.beforeChildren=u,p.trailing=i??"",br(e,p,t,e.lastToken),p}function yb(e){let t=Ds(e),r=Nc(e);if(!r)return;let n=Zt(Cc(e),Ds(e));return r.leading=Zt(t,r.leading),r.trailing=Zt(r.trailing,n),r}function bb(e){let t=ze(e,$o)?.text,r=xb(e);if(!t)return r;if(r.nodes[0])r.nodes[0].leading=Zt(t,r.nodes[0].leading);else r.trailing=Zt(t,r.trailing);return r}function xb(e){let t=e.current.value,r=[],n=!0,s=Ds(e);while(n){let o=e.lastToken.end,a=Ji(e),l=Nc(e);if(!l){if(a)throw Re(e,"Unexpected slashdash");break}let c=_t(e),u=Cc(e);if(a)s=Zt(s,e.text.slice(o.offset,e.lastToken.end.offset),Ds(e));else l.trailing=Zt(l.trailing,c,u)??"",r.push(l),l.leading=s??"",s=Ds(e);n=u!=null}let i=new Ms(r);return br(e,i,t,e.lastToken),i.trailing=s??"",i}var ep=D(()=>{Ni();Wd();lb();mb();Po()});function $b(e,t){let r=[],n;while(n=t(e))r.push(n);return r.length>0?r:void 0}function TN(e){{let t=ze(e,$o);if(t)return{type:"bom",text:t.text}}{let t=ze(e,Is);if(t)return{type:"newline",text:t.text}}{let t=ze(e,Ri);if(t)return{type:"space",text:t.text}}{let t=Qa(e);if(t)return{type:"singleline",text:t}}{let t=Rc(e);if(t)return{type:"multiline",text:t}}return}function Tc(e){{let t=Oc(e);if(t)return{type:"line-escape",text:t}}{let t=ze(e,Ri);if(t)return{type:"space",text:t.text}}{let t=Rc(e);if(t)return{type:"multiline",text:t}}return}function wb(e){let t=[];while(!0){{let r=TN(e);if(r){t.push(r);continue}}if(ze(e,Ai)?.text){let n,s=$b(e,Tc)??[],i=Nc(e);if(!i)throw Re(e,"Invalid slashdash, expected a commented node");i.trailing=Zt(i.trailing,$b(e,Tc)?.map((o)=>o.text).join(""),Cc(e)),t.push({type:"slashdash",preface:s,value:i});continue}break}return t}function IN(e){let t=ze(e,Ai);if(t==null)return;let r,n=[];while(r=Tc(e))n.push(r);let s,i,o="";if(i=Oo(e)){if(s=i[0],i[1])o=i[1]}else if(i=Qd(e))s=i;else throw Re(t,"Couldn't find argument, property, or children that were commented by slashdash");return[{type:"slashdash",preface:n,value:s},o]}function tp(e){let t=[];while(!0){let r=Tc(e);if(!r)break;let n=!0;t.push(r);while(n){let s=IN(e);if(!s)break;if(t.push(s[0]),s[1][0])t.push(...tp(Ac(s[1][0],Ya(s[1][0],{flags:e.flags}),{flags:e.flags})));n=!!s[1][0]}}return t}var vb=D(()=>{Po();ep()});function Ls(e,{as:t="document",flags:r,...n}={}){let s=JN[t];if(s==null)throw TypeError(`Invalid "as" target passed: ${JSON.stringify(t)}`);if(typeof e!=="string"){if(typeof TextDecoder!=="function")throw TypeError("Uint8Array input is only supported on platforms that include TextDecoder");e=new TextDecoder("utf-8",{fatal:!0}).decode(e)}let i=ob(r),o=Ya(e,{...n,flags:i}),a=Ac(e,o,{...n,flags:i}),l;try{l=s(a)}catch(c){Kd(a,c)}if(Kd(a),!l)throw new Me(`Expected ${/^[aeiouy]/.exec(t)?"an":"a"} ${t}`);return l}var JN;var Sb=D(()=>{Ni();Po();ep();vb();JN={value:_c,identifier:Xd,node:yb,entry:gb,document:bb,"whitespace in document":wb,"whitespace in node":tp}});var Ic=D(()=>{Ni();Wd();Sb()});function Co(e,t){let r=e.slice(0,t),n=r.split(`
|
|
14
|
+
`+o.slice(n.length)}).slice(1,-1)}function wb(e,t,r,n,s,i,o,a){if(o)return"";if(i){let l=r.text.startsWith('"""'),c=t.slice(0,a).split(Co),u={offset:r.start.offset+(l?3:1)+a,line:r.start.line+(c.length-1),column:c.length===1?r.start.column+(l?3:1)+a:c.at(-1).length},p={offset:u.offset+n.length,line:u.line,column:u.column+n.length};if(!i.startsWith("{"))e.push(new De(String.raw`Invalid unicode escape "\u${i}", did you forget to use {}? "\u{${i}}"`,{token:r,start:u,end:p}));else e.push(new De(String.raw`Invalid unicode escape "\u${i.endsWith("}")?i:`${i}...`}"`,{token:r,start:u,end:p}));return""}else if(s){let l=parseInt(s,16);if(l>=55296&&l<=57343)e.push(new De(String.raw`Invalid unicode escape "\u{${s}}, only scalar values can be added using an escape`,{token:r}));return String.fromCodePoint(l)}else{let l=MC.get(n);if(l==null)return e.push(new De(n.length<2?"Invalid whitespace escape at the end of a string":`Invalid escape "${n}"`,{token:r})),"";return l}}function nl(e,t,r){let n=1;switch(e.type){case Po:n=3;break;case Ms:n=e.text.indexOf('"')+1;break;case Ti:n=e.text.indexOf('"')+3;break}let s=t.slice(0,r).split(Co);return{offset:e.start.offset+n+r,line:e.start.line+(s.length-1),column:s.length===1?e.start.column+n+r:1+s[s.length-1].length}}var EY,MC,Co,DC,LC,FC,qC,VC,WC,HC,BC,UC;var vb=D(()=>{Ji();_o();EY=new Map([...Array.from({length:32},(e,t)=>[t,`\\u{${t.toString(16).padStart(2,"0")}}`]),[127,"\\u{7f}"],[8206,"\\u{200e}"],[8207,"\\u{200f}"],[8234,"\\u{202a}"],[8235,"\\u{202b}"],[8236,"\\u{202c}"],[8237,"\\u{202d}"],[8238,"\\u{202e}"],[8294,"\\u{2066}"],[8295,"\\u{2067}"],[8296,"\\u{2068}"],[8297,"\\u{2069}"],[65279,"\\u{feff}"],[34,"\\\""],[92,"\\\\"],[10,"\\n"],[11,"\\u{0b}"],[12,"\\f"],[13,"\\r"],[133,"\\u{85}"],[8232,"\\u{2028}"],[8233,"\\u{2029}"],[8,"\\b"],[9,"\\t"]]),MC=new Map([["\\n",`
|
|
15
|
+
`],["\\r","\r"],["\\t","\t"],["\\\\","\\"],["\\\"",'"'],["\\b","\b"],["\\f","\f"],["\\s"," "]]),Co=/\x0D\x0A|[\x0A\x0B\x0C\x0D\x85\u2028\u2029]/,DC=/\x0D\x0A|[\x0A\x0B\x0C\x0D\x85\u2028\u2029]/g,LC=/(?:^|[^\\\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000\x0A\x0B\x0C\x0D\x85\u2028\u2029])(?:\\\\)*[\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000\x0A\x0B\x0C\x0D\x85\u2028\u2029]*(\x0D\x0A|[\x0A\x0B\x0C\x0D\x85\u2028\u2029])/s,FC=/(?:^|[^\\\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000\x0A\x0B\x0C\x0D\x85\u2028\u2029])(?:\\\\)*[\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000\x0A\x0B\x0C\x0D\x85\u2028\u2029]*(\x0D\x0A|[\x0A\x0B\x0C\x0D\x85\u2028\u2029])/dgs;qC=/[\x0A\x0B\x0C\x0D\x85\u2028\u2029]([\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]*)$/,VC=/(?:^|[^\\\x0A\x0B\x0C\x0D\x85\u2028\u2029\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000])(?:\\\\)*[\x0A\x0B\x0C\x0D\x85\u2028\u2029\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]*[\x0A\x0B\x0C\x0D\x85\u2028\u2029]([\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]*)(?:\\[\x0A\x0B\x0C\x0D\x85\u2028\u2029\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]*)*$/,WC=/(\x0D\x0A|[\x0A\x0B\x0C\x0D\x85\u2028\u2029])([\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]*)([^\x0A\x0B\x0C\x0D\x85\u2028\u2029\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]?)/g,HC=/([^\x0A\x0B\x0C\x0D\x85\u2028\u2029\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000])[\x0A\x0B\x0C\x0D\x85\u2028\u2029\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]*$/;BC=/\\(?:$|u\{(0[0-9a-fA-F]{0,5}|10[0-9a-fA-F]{4}|[1-9a-fA-F][0-9a-fA-F]{0,4})\}|u(\{[^}]{1,6}\}?|[0-9a-fA-F]{1,5}|10[0-9a-fA-F]{4})|([\x0A\x0B\x0C\x0D\x85\u2028\u2029\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]+)|.)/g;UC=/(\x0D\x0A|[\x0A\x0B\x0C\x0D\x85\u2028\u2029])([\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]*)|\\(?:$|u\{(0[0-9a-fA-F]{0,5}|10[0-9a-fA-F]{4}|[1-9a-fA-F][0-9a-fA-F]{0,4})\}|u(\{[^}]{1,6}\}?|[0-9a-fA-F]{1,5}|10[0-9a-fA-F]{4})|([\x0A\x0B\x0C\x0D\x85\u2028\u2029\uFEFF\u0009\u0020\u00A0\u1680\u2000-\u200A\u202F\u205F\u3000]+)|.)/g});function us(e){if(!e.current.done)e.lastToken=e.current.value;e.current=e.tokens.next();let t=!e.current.done&&e.current.value.errors;if(t)e.errors.push(...t)}function Ge(e,t){if(!e.current.done&&e.current.value.type===t){let r=e.current.value;return us(e),r}}function Re(e,t){let r="current"in e?e.current.value??e.lastToken:e;return new De(t,{token:r})}function $r(e,t,r,n=r){if(e.storeLocations)pb(t,r,n)}function rr(e="",t="",r=""){return e+t+r||void 0}function Cc(e,t,{storeLocations:r=!1,flags:n}){let s={type:-1,text:"",start:{offset:0,line:1,column:1},end:{offset:0,line:1,column:1},errors:null},i={text:e,tokens:t[Symbol.iterator](),current:{done:!1,value:s},storeLocations:r,lastToken:s,errors:[],flags:n};return us(i),i}function ep(e,t){if(!t&&!e.current.done&&e.current.value.type!==Js)t=Re(e,`Unexpected token ${JSON.stringify(e.current.value.text)}, did you forget to quote an identifier?`);let r=e.errors??[];if(t!=null)if(t instanceof De)if(t.errors)r.push(...t.errors);else r.push(t);else r.push(new De(`An unexpected error occurred, ${String(t)}, this is likely a bug in the KDL parser`,{cause:t}));if(r.length)if(r.length===1)throw r[0];else throw new De("Encountered multiple errors",{errors:r})}function Oc(e){switch(e){case"#null":return null;case"#true":return!0;case"#false":return!1;case"#inf":return 1/0;case"#-inf":return-1/0;case"#nan":return NaN}}function Sb(e){return e==="inf"||e==="-inf"||e==="nan"||e==="true"||e==="false"||e==="null"||!1}function tp(e){let{value:t}=e.current,r,n,s,i,o,a=!1;if(t?.text[0]==="-"||t?.text[0]==="+")o=t.text[0];switch(t?.type){case En:{if(!e.flags.experimentalSuffixedNumbers)throw new De("Unreachable code: got a suffixed number from the tokenizer but the suffixed number flag is not set",{token:t});let u=o?t.text.slice(1):t.text,p=u.search(/[^0-9._]/);if(n=(o??"")+u.slice(0,p),r=Number.parseFloat(n.replaceAll("_","")),i=s=u.slice(p),Sb(s))e.errors.push(Re(e,`Invalid suffix ${s}, values that look like keywords cannot be used as suffix`))}break;case Ec:a=!0,r=(o==="-"?-1:1)*Number.parseInt(t.text.slice(o?3:2).replaceAll("_",""),2);break;case Sc:a=!0,r=(o==="-"?-1:1)*Number.parseInt(t.text.slice(o?3:2).replaceAll("_",""),8);break;case ls:a=!0,r=Number.parseFloat(t.text.replaceAll("_",""));break;case vc:a=!0,r=(o==="-"?-1:1)*Number.parseInt(t.text.slice(o?3:2).replaceAll("_",""),16);break;case jo:if(r=Oc(t.text),r===void 0)if(r=null,Oc(t.text.toLowerCase())!==void 0)e.errors.push(Re(e,`Invalid keyword ${t.text}, keywords are case sensitive, write ${t.text.toLowerCase()} instead`));else switch(t.text.toLowerCase()){case"#nul":case"#nill":e.errors.push(Re(e,`Invalid keyword ${t.text}, did you mean #null?`));break;case"#fals":case"#fasle":e.errors.push(Re(e,`Invalid keyword ${t.text}, did you mean #false?`));break;case"#ture":case"#treu":e.errors.push(Re(e,`Invalid keyword ${t.text}, did you mean #true?`));break;case"#ifn":e.errors.push(Re(e,`Invalid keyword ${t.text}, did you mean #inf?`));break;case"#-ifn":e.errors.push(Re(e,`Invalid keyword ${t.text}, did you mean #-inf?`));break;default:e.errors.push(Re(e,`Invalid keyword ${t.text}, surround it with quotes to use a string`))}break;default:return}us(e);let l=e.flags.experimentalSuffixedNumbers&&Ge(e,jo);if(l)if(a){if(i=l.text,Oc(i)!==void 0)e.errors.push(Re(l,`Invalid number suffix ${i}, did you forget a space between the number and the keyword?`));s=i.slice(1)}else if(s)e.errors.push(Re(l,"Unexpected hashed suffix, a number can only have one suffix"));else if(typeof r==="number")e.errors.push(Re(l,"Unexpected hashed suffix, you cannot place suffixes on number keywords"));else e.errors.push(Re(l,"Unexpected hashed suffix, you can only place suffixes on numbers"));let c=new mn(r);if(c.representation=n??t.text,$r(e,c,t),s){let u=new Pn(s);u.representation=i,u.suffix=!0,$r(e,u,e.lastToken),c.tag=u}return c}function sl(e){if(e.current.done)return;let{value:t}=e.current,r;switch(t.type){case tr:if(us(e),Sb(t.text))e.errors.push(Re(e,`Invalid keyword "${t.text}", add a leading # to use the keyword or surround with quotes to make it a string`));r=[t.text,t.text,t];break;case Za:us(e),r=[xb(e.errors,t.text.slice(1,-1),t),t.text,t];break;case Po:us(e),r=[$b(e.errors,t.text.slice(3,-3),t),t.text,t];break;case Ms:{us(e);let n=t.text,s=n.indexOf('"');r=[yb(e.errors,n.slice(s+1,-(s+1)),t),n,t];break}case Ti:{us(e);let n=t.text,s=n.indexOf('"');r=[bb(e.errors,n.slice(s+3,-(s+3)),t),n,t];break}default:return}if(Ge(e,jo))e.errors.push(Re(e.lastToken,Oc(e.lastToken.text)===void 0?"Unexpected hashed suffix on a string, you can only place suffixes on numbers":"Unexpected keyword, did you forget to add whitespace?"));return r}function rp(e){let t=sl(e);if(!t)return;let r=new pn(t[0]);return r.representation=t[1],$r(e,r,t[2],e.lastToken),r}function Nc(e){let t=tp(e);if(t)return t;let r=sl(e);if(!r)return;let n=new mn(r[0]);return n.representation=r[1],$r(e,n,r[2],e.lastToken),n}function il(e){let t=Ge(e,Pc);if(!t)return;let{value:r}=e.current;return us(e),t.text+(r?.text??"")}function Tc(e){return Ge(e,kc)?.text}function np(e){return Ge(e,Ci)??Tc(e)}function Ic(e){let t=Ge(e,jc);if(!t)return;while(np(e));if(!il(e)&&!Ge(e,Ds)&&!Ge(e,Js))e.errors.push(Re(e,`Expected newline or single-line comment after backslash but got ${e.current.value?.text??"EOF"}`));return e.text.slice(t.start.offset,e.lastToken.end.offset)}function qs(e){let t=e.lastToken.end;while(Ge(e,Ds)?.text??il(e)??np(e)??Ic(e));if(e.lastToken.end===t)return;return e.text.slice(t.offset,e.lastToken.end.offset)}function _t(e){let t=e.lastToken.end;while(np(e)??Ic(e));if(e.lastToken.end===t)return;return e.text.slice(t.offset,e.lastToken.end.offset)}function Qd(e){let t=Ge(e,bc);if(!t)return;let r=_t(e),n=sl(e);if(!n&&e.current.value){let a=e.current.value;if(qs(e))e.errors.push(Re(a,"This type of whitespace is not allowed inside a tag"));n=sl(e)}if(!n){if(tp(e))e.errors.push(Re(e,"Invalid tag, did you forget to quote a string?")),n=["error","error"]}if(!n)throw Re(e,"Invalid tag, did you forget to quote a string?");let s=_t(e),i=Ge(e,Xa);if(!i&&e.current.value){let a=e.current.value;if(qs(e))e.errors.push(Re(a,"This type of whitespace is not allowed inside a tag"));i=Ge(e,Xa)}if(!i)throw Re(e,"Invalid tag, did you forget to quote a string?");let o=new Pn(n[0]);return o.representation=n[1],o.leading=r,o.trailing=s,$r(e,o,t,e.lastToken),o}function Jc(e){return il(e)??Ge(e,Ds)?.text??Ge(e,wc)?.text??Ge(e,Js)?.text}function sp(e){if(!Ge(e,xc))return;let t=kb(e);if(!Ge(e,$c))throw Re(e,"Invalid node children");return t}function To(e){let t=e.current.value;{let p=Qd(e);if(p){let h=_t(e),m=Nc(e);if(!m)throw Re(e,"Invalid argument");if(m.tag)e.errors.push(Re(e.lastToken,"A number suffix cannot be combined with a regular tag"));m.tag=p,m.betweenTagAndValue=h;let b=new Lr(m,null);$r(e,m,t,e.lastToken),$r(e,b,t,e.lastToken);let g=_t(e);if(Ge(e,Eo))e.errors.push(Re(e.lastToken,typeof m.value==="string"?"Unexpected equals sign, properties are name=(tag)value not (tag)name=value":"Unexpected equals sign")),g=rr(g,_t(e))||" ";return[b,g]}}{let p=tp(e);if(p){let h=new Lr(p,null);$r(e,h,t,e.lastToken);let m=_t(e);if(Ge(e,Eo))e.errors.push(Re(e.lastToken,"Unexpected equals sign, did you forget to quote the property name?")),m=rr(m,_t(e))||" ";return[h,m]}}let r=sl(e);if(!r)return;let n=_t(e),s=Ge(e,Eo);if(!s){let p=new mn(r[0]);p.representation=r[1],$r(e,p,r[2]);let h=new Lr(p,null);return $r(e,h,t,e.lastToken),[h,n]}let i=new pn(r[0]);i.representation=r[1],$r(e,i,r[2]);let o=_t(e),a=Qd(e),l=a&&_t(e),c=Nc(e);if(!c)throw Re(e,"Expected a value");if(a){if(c.tag)e.errors.push(Re(e.lastToken,"A number suffix cannot be combined with a regular tag"));c.tag=a,c.betweenTagAndValue=l}let u=new Lr(c,i);return $r(e,u,t,e.lastToken),u.equals=rr(n,s.text,o),[u,void 0]}function Eb(e){let t=_t(e)??"",r;while(r=Li(e)){let o=e.lastToken.end,a=To(e);if(!a)throw Re(e,"Expected a property or argument");if(!(a[1]??_t(e)))throw Re(e,"Expected space after slashdashed property or argument");t=t+r+e.text.slice(o.offset,e.lastToken.end.offset)}let n=To(e);if(!n)return;let s=n[1]??_t(e)??"";while(r=Li(e)){let o=e.lastToken.end,a=To(e);if(!a)throw Re(e,"Expected a property or argument");if(!(a[1]??_t(e)))break;s=s+r+e.text.slice(o.offset,e.lastToken.end.offset)}let i=n[0];return i.leading=t,i.trailing=s,i}function Li(e){let t=Ge(e,Ni)?.text;if(!t)return;return rr(t,qs(e))}function Mc(e){let t=e.current.value,r=Qd(e),n=r&&_t(e),s=rp(e);if(!s)if(r)throw Re(e,"Couldn't find node name");else return;let i=_t(e),o=i!=null,a=Li(e),l=[];while(o||a){let h=e.lastToken.end,m=To(e);if(!m)break;if(a)o=(m[1]||_t(e))!=null,i=rr(i,a,e.text.slice(h.offset,e.lastToken.end.offset)),a=Li(e);else{let b=m[0];b.leading=i,l.push(b),i=m[1]||_t(e),o=i!=null,a=Li(e)}}let c,u;while(!0){a??=Li(e);let h=e.lastToken.end,m=sp(e);if(!m){if(a)throw Re(e,"Unexpected slashdash");break}if(a)i=rr(i,a,e.text.slice(h.offset,e.lastToken.end.offset)),a=void 0;else{if(c)e.errors.push(Re(e,"A node can only have one children block"));c=m,u=i??"",i=void 0}i=rr(i,_t(e))}let p=new Oo(s,l,c);return p.tag=r??null,p.betweenTagAndName=n,p.beforeChildren=u,p.trailing=i??"",$r(e,p,t,e.lastToken),p}function jb(e){let t=qs(e),r=Mc(e);if(!r)return;let n=rr(Jc(e),qs(e));return r.leading=rr(t,r.leading),r.trailing=rr(r.trailing,n),r}function Pb(e){let t=Ge(e,So)?.text,r=kb(e);if(!t)return r;if(r.nodes[0])r.nodes[0].leading=rr(t,r.nodes[0].leading);else r.trailing=rr(t,r.trailing);return r}function kb(e){let t=e.current.value,r=[],n=!0,s=qs(e);while(n){let o=e.lastToken.end,a=Li(e),l=Mc(e);if(!l){if(a)throw Re(e,"Unexpected slashdash");break}let c=_t(e),u=Jc(e);if(a)s=rr(s,e.text.slice(o.offset,e.lastToken.end.offset),qs(e));else l.trailing=rr(l.trailing,c,u)??"",r.push(l),l.leading=s??"",s=qs(e);n=u!=null}let i=new Fs(r);return $r(e,i,t,e.lastToken),i.trailing=s??"",i}var ip=D(()=>{Ji();Gd();gb();vb();_o()});function _b(e,t){let r=[],n;while(n=t(e))r.push(n);return r.length>0?r:void 0}function zC(e){{let t=Ge(e,So);if(t)return{type:"bom",text:t.text}}{let t=Ge(e,Ds);if(t)return{type:"newline",text:t.text}}{let t=Ge(e,Ci);if(t)return{type:"space",text:t.text}}{let t=il(e);if(t)return{type:"singleline",text:t}}{let t=Tc(e);if(t)return{type:"multiline",text:t}}return}function Dc(e){{let t=Ic(e);if(t)return{type:"line-escape",text:t}}{let t=Ge(e,Ci);if(t)return{type:"space",text:t.text}}{let t=Tc(e);if(t)return{type:"multiline",text:t}}return}function Ab(e){let t=[];while(!0){{let r=zC(e);if(r){t.push(r);continue}}if(Ge(e,Ni)?.text){let n,s=_b(e,Dc)??[],i=Mc(e);if(!i)throw Re(e,"Invalid slashdash, expected a commented node");i.trailing=rr(i.trailing,_b(e,Dc)?.map((o)=>o.text).join(""),Jc(e)),t.push({type:"slashdash",preface:s,value:i});continue}break}return t}function GC(e){let t=Ge(e,Ni);if(t==null)return;let r,n=[];while(r=Dc(e))n.push(r);let s,i,o="";if(i=To(e)){if(s=i[0],i[1])o=i[1]}else if(i=sp(e))s=i;else throw Re(t,"Couldn't find argument, property, or children that were commented by slashdash");return[{type:"slashdash",preface:n,value:s},o]}function op(e){let t=[];while(!0){let r=Dc(e);if(!r)break;let n=!0;t.push(r);while(n){let s=GC(e);if(!s)break;if(t.push(s[0]),s[1][0])t.push(...op(Cc(s[1][0],rl(s[1][0],{flags:e.flags}),{flags:e.flags})));n=!!s[1][0]}}return t}var Rb=D(()=>{_o();ip()});function Vs(e,{as:t="document",flags:r,...n}={}){let s=KC[t];if(s==null)throw TypeError(`Invalid "as" target passed: ${JSON.stringify(t)}`);if(typeof e!=="string"){if(typeof TextDecoder!=="function")throw TypeError("Uint8Array input is only supported on platforms that include TextDecoder");e=new TextDecoder("utf-8",{fatal:!0}).decode(e)}let i=mb(r),o=rl(e,{...n,flags:i}),a=Cc(e,o,{...n,flags:i}),l;try{l=s(a)}catch(c){ep(a,c)}if(ep(a),!l)throw new De(`Expected ${/^[aeiouy]/.exec(t)?"an":"a"} ${t}`);return l}var KC;var Ob=D(()=>{Ji();_o();ip();Rb();KC={value:Nc,identifier:rp,node:jb,entry:Eb,document:Pb,"whitespace in document":Ab,"whitespace in node":op}});var Lc=D(()=>{Ji();Gd();Ob()});function Io(e,t){let r=e.slice(0,t),n=r.split(`
|
|
16
16
|
`).length;return{column:t-r.lastIndexOf(`
|
|
17
|
-
`),line:n,offset:t}}var xr;var el=D(()=>{xr=class xr extends Error{column;line;offset;reason;constructor(e,t=null){super(t?`${e} (line ${t.line}, column ${t.column})`:e);this.name="JxnError",this.column=t?.column??null,this.line=t?.line??null,this.offset=t?.offset??null,this.reason=e}inFile(e){let t=this.line!==null&&this.column!==null&&this.offset!==null?{column:this.column,line:this.line,offset:this.offset}:null;return new xr(`${e}: ${this.reason}`,t)}}});var Eb;var Pb=D(()=>{Eb=new Set(["onabort","onactivate","onaddsourcebuffer","onaddtrack","onadvertisementreceived","onafterprint","onanimationcancel","onanimationend","onanimationiteration","onanimationstart","onappinstalled","onaudioend","onaudioprocess","onaudiostart","onauxclick","onavailabilitychanged","onbackgroundfetchabort","onbackgroundfetchclick","onbackgroundfetchfail","onbackgroundfetchsuccess","onbeforeinput","onbeforeinstallprompt","onbeforematch","onbeforeprint","onbeforetoggle","onbeforexrselect","onbegin","onblocked","onblur","onboundary","onbufferedamountlow","onbufferedchange","oncancel","oncanmakepayment","oncanplay","oncanplaythrough","oncaptureaction","oncapturedmousechange","oncapturehandlechange","onchange","oncharacterboundsupdate","oncharacteristicvaluechanged","onchargingchange","onchargingtimechange","onclick","onclose","onclosing","oncommand","oncomplete","oncompositionend","oncompositionstart","onconfigurationchange","onconnect","onconnecting","onconnectionavailable","onconnectionstatechange","oncontentdelete","oncontextlost","oncontextmenu","oncontextoverflow","oncontextrestored","oncontrollerchange","oncookiechange","oncopy","oncuechange","oncurrententrychange","oncurrentscreenchange","oncut","ondataavailable","ondatachannel","ondblclick","ondequeue","ondevicechange","ondevicemotion","ondeviceorientation","ondeviceorientationabsolute","ondischargingtimechange","ondisconnect","ondispose","ondownloadprogress","ondrag","ondragend","ondragenter","ondragleave","ondragover","ondragstart","ondrop","ondurationchange","onemptied","onencrypted","onend","onended","onendstreaming","onenter","onenterpictureinpicture","onerror","onexit","onfencedtreeclick","onfetch","onfinish","onfocus","onformdata","onframeratechange","onfreeze","onfullscreenchange","onfullscreenerror","ongamepadconnected","ongamepaddisconnected","ongatheringstatechange","ongattserverdisconnected","ongeometrychange","ongotpointercapture","onhashchange","onicecandidate","onicecandidateerror","oniceconnectionstatechange","onicegatheringstatechange","oninput","oninputreport","oninputsourceschange","oninstall","oninstallresult","oninvalid","onisolationchange","onkeydown","onkeyframerequest","onkeypress","onkeystatuseschange","onkeyup","onlanguagechange","onlayoutchange","onleavepictureinpicture","onlevelchange","onload","onloadeddata","onloadedmetadata","onloadend","onloading","onloadingdone","onloadingerror","onloadstart","onlocation","onlostpointercapture","onmanagedconfigurationchange","onmark","onmessage","onmessageerror","onmidimessage","onmousedown","onmouseenter","onmouseleave","onmousemove","onmouseout","onmouseover","onmouseup","onmute","onnavigate","onnavigateerror","onnavigatesuccess","onnegotiationneeded","onnomatch","onnotificationclick","onnotificationclose","onoffline","ononline","onopen","onorientationchange","onpagehide","onpagereveal","onpageshow","onpageswap","onpaste","onpause","onpayerdetailchange","onpaymentmethodchange","onpaymentrequest","onperiodicsync","onplay","onplaying","onpointercancel","onpointerdown","onpointerenter","onpointerleave","onpointerlockchange","onpointerlockerror","onpointermove","onpointerout","onpointerover","onpointerrawupdate","onpointerup","onpopstate","onportalactivate","onprerenderingchange","onprioritychange","onprocessorerror","onprogress","onpromptaction","onpromptdismiss","onpush","onpushsubscriptionchange","onquotaoverflow","onratechange","onreading","onreadingerror","onreadystatechange","onredraw","onreflectionchange","onrejectionhandled","onrelease","onremove","onremovesourcebuffer","onremovetrack","onrepeat","onreset","onresize","onresourcetimingbufferfull","onresult","onresume","onrtctransform","onscreenschange","onscroll","onscrollend","onsecuritypolicyviolation","onseeked","onseeking","onselect","onselectedcandidatepairchange","onselectend","onselectionchange","onselectstart","onserviceadded","onservicechanged","onserviceremoved","onshippingaddresschange","onshippingoptionchange","onshow","onsignalingstatechange","onsinkchange","onslotchange","onsnapchanged","onsnapchanging","onsoundend","onsoundstart","onsourceclose","onsourceended","onsourceopen","onspeechend","onspeechstart","onsqueeze","onsqueezeend","onsqueezestart","onstalled","onstart","onstartstreaming","onstatechange","onstop","onstorage","onstream","onsubmit","onsuccess","onsuspend","onsync","onterminate","ontextformatupdate","ontextupdate","ontimeout","ontimeupdate","ontoggle","ontonechange","ontoolactivated","ontoolcancel","ontoolchange","ontouchcancel","ontouchend","ontouchmove","ontouchstart","ontrack","ontransitioncancel","ontransitionend","ontransitionrun","ontransitionstart","onuncapturederror","onunhandledrejection","onunload","onunmute","onupdate","onupdateend","onupdatefound","onupdatestart","onupgradeneeded","onvalidationstatuschange","onversionchange","onvisibilitychange","onvoiceschanged","onvolumechange","onwaiting","onwaitingforkey","onwebkitanimationend","onwebkitanimationiteration","onwebkitanimationstart","onwebkittransitionend","onwheel","onzoomlevelchange"])});function Fe(e,t,r,n,s){let i=t.normalize("NFC");if(i==="__proto__")throw Ge(n,s,'"__proto__" cannot be a key: it would not be data');if(Object.hasOwn(e,i))throw Ge(n,s,`"${i}" is written twice, and one of them would be lost`);e[i]=r}function Ge(e,t,r){let n=jb(t)?.start;return new xr(r,n===void 0?null:Co(e.text,n))}function jb(e){let t=jo(e);return t?{end:t.end.offset,start:t.start.offset}:null}function $r(e,t,r){let n=e.spans?jb(r):null;if(n)e.spans?.set(t,n)}function pn(e){return e.replaceAll("~","~0").replaceAll("/","~1")}function Mc(e,t){let r=t.getTag();if(r!==null&&!DN.has(r))throw Ge(e,t,`(${r}) is not an annotation Jx Notation has`);if(r==="ref")throw Ge(e,t,"(ref) annotates a value, and this is a name");return r}function No(e,t){let r=t.getTag(),n=t.getValue();if(r!==null&&r!=="ref")throw Ge(e,t,`(${r}) cannot annotate a value here; only (ref) can`);if(Nt(n)){if(!Number.isFinite(n))throw Ge(e,t,"JSON has no way to hold #inf or #nan");if(Number.isInteger(n)&&!Number.isSafeInteger(n))throw Ge(e,t,"This number is too large to survive being read as JSON")}if(r==="ref"){if(!O(n))throw Ge(e,t,"(ref) needs a string");return{$ref:n}}return n}function Mi(e,t){return t.entries.filter((r)=>!r.name).map((r)=>No(e,r))}function Di(e){return e.entries.filter((t)=>t.name)}function Hr(e){return e.children?.nodes??[]}function tl(e){return e.getName()??""}function FN(e,t,r){let n={$prototype:"Function"},s=Mi(e,t),i=Hr(t);for(let o of Di(t))Fe(n,tl(o),No(e,o),e,o);if(i.length>0){if(s.length>0)Fe(n,"parameters",s,e,t);Fe(n,"body",rp(e,i,`${r}/body`),e,t)}else if(s.length>0){let o=s.at(-1)??null,a=s.slice(0,-1);if(a.length>0)Fe(n,"parameters",a,e,t);Fe(n,"body",o,e,t)}return $r(e,r,t),n}function rp(e,t,r){return t.map((n,s)=>{if(n.getName()!=="-")throw Ge(e,n,`A list holds only "-" items, and this is "${n.getName()}"`);return jn(e,n,`${r}/${s}`)})}function jn(e,t,r){let n=Mc(e,t);if($r(e,r,t),n==="fn")return FN(e,t,r);let s=Mi(e,t),i=Di(t),o=Hr(t);if(n==="array"){if(i.length>0)throw Ge(e,t,"(array) holds items, and these are named");return[...s,...rp(e,o,r)]}if(n!=="object"){if(s.length>1){if(i.length>0||o.length>0)throw Ge(e,t,"A list of values cannot also have names or a block");return s}if(s.length===1){if(i.length>0||o.length>0)throw Ge(e,t,"A value cannot also have names or a block");return s[0]??null}if(o.length>0&&i.length===0&&o.every((l)=>l.getName()==="-"))return rp(e,o,r)}else if(s.length>0)throw Ge(e,t,"(object) holds names, and this is a value");let a={};for(let l of i){let c=tl(l);Fe(a,c,No(e,l),e,l),$r(e,`${r}/${pn(c)}`,l)}for(let l of o){let c=l.getName();Fe(a,c,jn(e,l,`${r}/${pn(c)}`),e,l)}return a}function kb(e,t,r){let n={};if($r(e,r,t),Mi(e,t).length>0)throw Ge(e,t,"A style block holds declarations, and this is a value");for(let s of Di(t)){let i=tl(s);Fe(n,i,No(e,s),e,s),$r(e,`${r}/${pn(i)}`,s)}for(let s of Hr(t)){let i=s.getName(),o=`${r}/${pn(i)}`,a=Hr(s);if(s.getTag()==="array"||a.length>0&&a.every((c)=>c.getName()==="-")){Fe(n,i,jn(e,s,o),e,s);continue}let l=Mi(e,s);if(l.length>1)throw Ge(e,s,`"${i}" has more than one value. A selector with a space in it needs quotes`);if(l.length===1){if(Di(s).length>0||Hr(s).length>0)throw Ge(e,s,`"${i}" has a value and names. A selector with a space in it needs quotes`);Fe(n,i,l[0]??null,e,s),$r(e,o,s)}else Fe(n,i,kb(e,s,o),e,s)}return n}function Jc(e,t,r){let n=Hr(t);if(n.length!==1||!n[0])throw Ge(e,t,`"${t.getName()}" holds one element`);return Ab(e,n[0],r)}function _b(e,t,r){let n={$prototype:"Array"};if($r(e,r,t),Mi(e,t).length>0)throw Ge(e,t,"$array holds names and one element, and this is a value");for(let s of Di(t)){let i=tl(s);Fe(n,i.startsWith(".")?i.slice(1):i,No(e,s),e,s)}if(Hr(t).length>0)Fe(n,"map",Jc(e,t,`${r}/map`),e,t);return n}function Ab(e,t,r){let n=t.getName();if(n==="-"){let s=Mi(e,t);if(s.length!==1||Di(t).length>0||Hr(t).length>0)throw Ge(e,t,'"-" is one piece of text or one (ref)');return $r(e,r,t),s[0]??null}if(n==="$array")return _b(e,t,r);return np(e,t,r)}function qN(e,t,r,n){let s=Mc(e,r);if(t==="map")return Jc(e,r,n);if(t==="cases"){let i={};for(let o of Hr(r)){let a=o.getName();Fe(i,a,Jc(e,o,`${n}/${pn(a)}`),e,o)}return i}if(t==="children"&&s!=="array"&&Hr(r).length>0)return Jc(e,r,n);return jn(e,r,n)}function np(e,t,r){let n={},s=t.getName(),i=Mc(e,t);if($r(e,r,t),i!==null)throw Ge(e,t,`(${i}) cannot annotate an element`);let o=Mi(e,t);if(s==="$element"){let[l,c,...u]=o;if(u.length>0)throw Ge(e,t,"$element takes at most a tag and a text value");if(l!==void 0)Fe(n,"tagName",l,e,t);if(c!==void 0)Fe(n,"textContent",c,e,t)}else{if(s.startsWith("$"))throw Ge(e,t,`"${s}" is not a kind of element`);if(Fe(n,"tagName",s,e,t),o.length>1)throw Ge(e,t,"An element has one text value. A list of them needs a block");if(o[0]!==void 0)Fe(n,"textContent",o[0],e,t),$r(e,`${r}/textContent`,t)}VN(e,t,n,r);let a=[];for(let l of Hr(t))WN(e,l,n,a,r);if(a.length>0)Fe(n,"children",a,e,t);return n}function Rb(e){let{attributes:t}=e;if(B(t))return t;let r={};return e.attributes=r,r}function VN(e,t,r,n){for(let s of Di(t)){let i=tl(s),o=s.getTag();if(o==="fn")throw Ge(e,s,"A function has a block form: (fn)name, on a line of its own");let a=No(e,s);if(i.startsWith(".")||i.startsWith("$")){let l=i.startsWith(".")?i.slice(1):i;Fe(r,l,a,e,s),$r(e,`${n}/${pn(l)}`,s)}else if(i.startsWith("on")&&o==="ref")Fe(r,i,a,e,s),$r(e,`${n}/${pn(i)}`,s);else if(i.startsWith("on")&&Eb.has(i))throw Ge(e,s,`${i} needs (ref)"pointer", or a function on a line of its own: (fn)${i} "…"`);else Fe(Rb(r),i,a,e,s),$r(e,`${n}/attributes/${pn(i)}`,s)}}function WN(e,t,r,n,s){let i=t.getName(),o=Mc(e,t),a=(l)=>`${s}/${pn(l)}`;if(o==="fn"||o==="on"){if(!i.startsWith("on"))throw Ge(e,t,`(${o}) in an element marks a handler, and "${i}" is not one`);Fe(r,i,jn(e,t,a(i)),e,t)}else if(i==="script")throw Ge(e,t,'"script" is reserved. A <script> element is $element "script"');else if(i==="state")Fe(r,"state",jn(e,t,a("state")),e,t);else if(i==="style")Fe(r,"style",kb(e,t,a("style")),e,t);else if(i==="attributes"){let l=jn(e,t,a("attributes"));if(B(l))for(let[c,u]of Object.entries(l))Fe(Rb(r),c,u,e,t);else Fe(r,"attributes",l,e,t)}else if(i.startsWith(".")){let l=i.slice(1);Fe(r,l,qN(e,l,t,a(l)),e,t)}else if(i.startsWith("$")&&i!=="$array"&&i!=="$element")Fe(r,i,jn(e,t,a(i)),e,t);else{if(LN.has(i))throw Ge(e,t,`"${i}" is reserved here`);n.push(Ab(e,t,`${s}/children/${n.length}`))}}function HN(e,t){return Hr(t).map((r,n)=>{let s=`/$head/${n}`;return r.getName()==="-"?jn(e,r,s):np(e,r,s)})}function BN(e){let t=MN.exec(e);if(t)throw new xr(`A raw control character (U+${t[0].codePointAt(0)?.toString(16).toUpperCase().padStart(4,"0")}) cannot be in a Jx Notation file. Escape it, as \\u{1b}`,Co(e,t.index));try{return Ls(e,{storeLocations:!0})}catch(r){let s=(r instanceof Me?r.errors?.[0]??r:null)?.start,i=r instanceof Error?r.message:String(r);throw new xr(i.split(`
|
|
18
|
-
`)[0]??i,s?
|
|
19
|
-
`,r);r=n===-1?e.length:n}else if(e.startsWith("/*",r)){t.comments+=1;let n=e.indexOf("*/",r+2);r=n===-1?e.length:n+2}else if(e.startsWith("/-",r))t.comments+=1,r+=2;else if(e.charAt(r)==="#"&&/^#+"/u.test(e.slice(r,r+16))){let[n=""]=/^#+/u.exec(e.slice(r))??[],s=r+n.length,i=e.startsWith('"""',s)?'"""':'"',o=e.indexOf(i+n,s+i.length);r=o===-1?e.length:o+i.length+n.length}else if(e.charAt(r)==='"'){let n=e.startsWith('"""',r)?'"""':'"';r+=n.length;while(r<e.length&&!e.startsWith(n,r))if(e.charAt(r)==="\\")t.escapes.push(r),r+=2;else r+=1;r+=n.length}else r+=1;return t}function
|
|
20
|
-
`)+1)}function
|
|
17
|
+
`),line:n,offset:t}}var Ht;var Jo=D(()=>{Ht=class Ht extends Error{column;line;offset;reason;constructor(e,t=null){super(t?`${e} (line ${t.line}, column ${t.column})`:e);this.name="JxnError",this.column=t?.column??null,this.line=t?.line??null,this.offset=t?.offset??null,this.reason=e}inFile(e){let t=this.line!==null&&this.column!==null&&this.offset!==null?{column:this.column,line:this.line,offset:this.offset}:null;return new Ht(`${e}: ${this.reason}`,t)}}});var Nb;var Cb=D(()=>{Nb=new Set(["onabort","onactivate","onaddsourcebuffer","onaddtrack","onadvertisementreceived","onafterprint","onanimationcancel","onanimationend","onanimationiteration","onanimationstart","onappinstalled","onaudioend","onaudioprocess","onaudiostart","onauxclick","onavailabilitychanged","onbackgroundfetchabort","onbackgroundfetchclick","onbackgroundfetchfail","onbackgroundfetchsuccess","onbeforeinput","onbeforeinstallprompt","onbeforematch","onbeforeprint","onbeforetoggle","onbeforexrselect","onbegin","onblocked","onblur","onboundary","onbufferedamountlow","onbufferedchange","oncancel","oncanmakepayment","oncanplay","oncanplaythrough","oncaptureaction","oncapturedmousechange","oncapturehandlechange","onchange","oncharacterboundsupdate","oncharacteristicvaluechanged","onchargingchange","onchargingtimechange","onclick","onclose","onclosing","oncommand","oncomplete","oncompositionend","oncompositionstart","onconfigurationchange","onconnect","onconnecting","onconnectionavailable","onconnectionstatechange","oncontentdelete","oncontextlost","oncontextmenu","oncontextoverflow","oncontextrestored","oncontrollerchange","oncookiechange","oncopy","oncuechange","oncurrententrychange","oncurrentscreenchange","oncut","ondataavailable","ondatachannel","ondblclick","ondequeue","ondevicechange","ondevicemotion","ondeviceorientation","ondeviceorientationabsolute","ondischargingtimechange","ondisconnect","ondispose","ondownloadprogress","ondrag","ondragend","ondragenter","ondragleave","ondragover","ondragstart","ondrop","ondurationchange","onemptied","onencrypted","onend","onended","onendstreaming","onenter","onenterpictureinpicture","onerror","onexit","onfencedtreeclick","onfetch","onfinish","onfocus","onformdata","onframeratechange","onfreeze","onfullscreenchange","onfullscreenerror","ongamepadconnected","ongamepaddisconnected","ongatheringstatechange","ongattserverdisconnected","ongeometrychange","ongotpointercapture","onhashchange","onicecandidate","onicecandidateerror","oniceconnectionstatechange","onicegatheringstatechange","oninput","oninputreport","oninputsourceschange","oninstall","oninstallresult","oninvalid","onisolationchange","onkeydown","onkeyframerequest","onkeypress","onkeystatuseschange","onkeyup","onlanguagechange","onlayoutchange","onleavepictureinpicture","onlevelchange","onload","onloadeddata","onloadedmetadata","onloadend","onloading","onloadingdone","onloadingerror","onloadstart","onlocation","onlostpointercapture","onmanagedconfigurationchange","onmark","onmessage","onmessageerror","onmidimessage","onmousedown","onmouseenter","onmouseleave","onmousemove","onmouseout","onmouseover","onmouseup","onmute","onnavigate","onnavigateerror","onnavigatesuccess","onnegotiationneeded","onnomatch","onnotificationclick","onnotificationclose","onoffline","ononline","onopen","onorientationchange","onpagehide","onpagereveal","onpageshow","onpageswap","onpaste","onpause","onpayerdetailchange","onpaymentmethodchange","onpaymentrequest","onperiodicsync","onplay","onplaying","onpointercancel","onpointerdown","onpointerenter","onpointerleave","onpointerlockchange","onpointerlockerror","onpointermove","onpointerout","onpointerover","onpointerrawupdate","onpointerup","onpopstate","onportalactivate","onprerenderingchange","onprioritychange","onprocessorerror","onprogress","onpromptaction","onpromptdismiss","onpush","onpushsubscriptionchange","onquotaoverflow","onratechange","onreading","onreadingerror","onreadystatechange","onredraw","onreflectionchange","onrejectionhandled","onrelease","onremove","onremovesourcebuffer","onremovetrack","onrepeat","onreset","onresize","onresourcetimingbufferfull","onresult","onresume","onrtctransform","onscreenschange","onscroll","onscrollend","onsecuritypolicyviolation","onseeked","onseeking","onselect","onselectedcandidatepairchange","onselectend","onselectionchange","onselectstart","onserviceadded","onservicechanged","onserviceremoved","onshippingaddresschange","onshippingoptionchange","onshow","onsignalingstatechange","onsinkchange","onslotchange","onsnapchanged","onsnapchanging","onsoundend","onsoundstart","onsourceclose","onsourceended","onsourceopen","onspeechend","onspeechstart","onsqueeze","onsqueezeend","onsqueezestart","onstalled","onstart","onstartstreaming","onstatechange","onstop","onstorage","onstream","onsubmit","onsuccess","onsuspend","onsync","onterminate","ontextformatupdate","ontextupdate","ontimeout","ontimeupdate","ontoggle","ontonechange","ontoolactivated","ontoolcancel","ontoolchange","ontouchcancel","ontouchend","ontouchmove","ontouchstart","ontrack","ontransitioncancel","ontransitionend","ontransitionrun","ontransitionstart","onuncapturederror","onunhandledrejection","onunload","onunmute","onupdate","onupdateend","onupdatefound","onupdatestart","onupgradeneeded","onvalidationstatuschange","onversionchange","onvisibilitychange","onvoiceschanged","onvolumechange","onwaiting","onwaitingforkey","onwebkitanimationend","onwebkitanimationiteration","onwebkitanimationstart","onwebkittransitionend","onwheel","onzoomlevelchange"])});function Je(e,t,r,n,s){let i=t.normalize("NFC");if(i==="__proto__")throw Fe(n,s,'"__proto__" cannot be a key: it would not be data');if(Object.hasOwn(e,i))throw Fe(n,s,`"${i}" is written twice, and one of them would be lost`);e[i]=r}function Fe(e,t,r){let n=Tb(t)?.start;return new Ht(r,n===void 0?null:Io(e.text,n))}function Tb(e){let t=Ao(e);return t?{end:t.end.offset,start:t.start.offset}:null}function Bt(e,t,r){let n=e.spans?Tb(r):null;if(n)e.spans?.set(t,n)}function Fr(e){return e.replaceAll("~","~0").replaceAll("/","~1")}function Mo(e,t){let r=t.getTag();if(r!==null&&!XC.has(r))throw Fe(e,t,`(${r}) is not an annotation Jx Notation has`);if(r==="ref")throw Fe(e,t,"(ref) annotates a value, and this is a name");return r}function Do(e,t){let r=t.getTag(),n=t.getValue();if(r!==null&&r!=="ref")throw Fe(e,t,`(${r}) cannot annotate a value here; only (ref) can`);if(Ct(n)){if(!Number.isFinite(n))throw Fe(e,t,"JSON has no way to hold #inf or #nan");if(Number.isInteger(n)&&!Number.isSafeInteger(n))throw Fe(e,t,"This number is too large to survive being read as JSON")}if(r==="ref"){if(!O(n))throw Fe(e,t,"(ref) needs a string");return{$ref:n}}return n}function fs(e,t){return t.entries.filter((r)=>!r.name).map((r)=>Do(e,r))}function ds(e){return e.entries.filter((t)=>t.name)}function wr(e){return e.children?.nodes??[]}function ol(e){return e.getName()??""}function QC(e,t,r){let n={$prototype:"Function"},s=fs(e,t),i=wr(t);for(let o of ds(t))Je(n,ol(o),Do(e,o),e,o);if(i.length>0){if(s.length>0)Je(n,"parameters",s,e,t);Je(n,"body",ap(e,i,`${r}/body`),e,t)}else if(s.length>0){let o=s.at(-1)??null,a=s.slice(0,-1);if(a.length>0)Je(n,"parameters",a,e,t);Je(n,"body",o,e,t)}return Bt(e,r,t),n}function ap(e,t,r){return t.map((n,s)=>{if(n.getName()!=="-")throw Fe(e,n,`A list holds only "-" items, and this is "${n.getName()}"`);return zr(e,n,`${r}/${s}`)})}function zr(e,t,r){let n=Mo(e,t);if(Bt(e,r,t),n==="fn")return QC(e,t,r);let s=fs(e,t),i=ds(t),o=wr(t);if(n==="array"){if(i.length>0)throw Fe(e,t,"(array) holds items, and these are named");return[...s,...ap(e,o,r)]}if(n!=="object"){if(s.length>1){if(i.length>0||o.length>0)throw Fe(e,t,"A list of values cannot also have names or a block");return s}if(s.length===1){if(i.length>0||o.length>0)throw Fe(e,t,"A value cannot also have names or a block");return s[0]??null}if(o.length>0&&i.length===0&&o.every((l)=>l.getName()==="-"))return ap(e,o,r)}else if(s.length>0)throw Fe(e,t,"(object) holds names, and this is a value");let a={};for(let l of i){let c=ol(l);Je(a,c,Do(e,l),e,l),Bt(e,`${r}/${Fr(c)}`,l)}for(let l of o){let c=l.getName();Je(a,c,zr(e,l,`${r}/${Fr(c)}`),e,l)}return a}function qc(e,t,r){let n={};if(Bt(e,r,t),fs(e,t).length>0)throw Fe(e,t,"A style block holds declarations, and this is a value");for(let s of ds(t)){let i=ol(s);Je(n,i,Do(e,s),e,s),Bt(e,`${r}/${Fr(i)}`,s)}for(let s of wr(t)){let i=s.getName(),o=`${r}/${Fr(i)}`,a=wr(s);if(s.getTag()==="array"||a.length>0&&a.every((c)=>c.getName()==="-")){Je(n,i,zr(e,s,o),e,s);continue}let l=fs(e,s);if(l.length>1)throw Fe(e,s,`"${i}" has more than one value. A selector with a space in it needs quotes`);if(l.length===1){if(ds(s).length>0||wr(s).length>0)throw Fe(e,s,`"${i}" has a value and names. A selector with a space in it needs quotes`);Je(n,i,l[0]??null,e,s),Bt(e,o,s)}else Je(n,i,qc(e,s,o),e,s)}return n}function Fc(e,t,r){let n=wr(t);if(n.length!==1||!n[0])throw Fe(e,t,`"${t.getName()}" holds one element`);return Jb(e,n[0],r)}function Ib(e,t,r){let n={$prototype:"Array"};if(Bt(e,r,t),fs(e,t).length>0)throw Fe(e,t,"$array holds names and one element, and this is a value");for(let s of ds(t)){let i=ol(s);Je(n,i.startsWith(".")?i.slice(1):i,Do(e,s),e,s)}if(wr(t).length>0)Je(n,"map",Fc(e,t,`${r}/map`),e,t);return n}function Jb(e,t,r){let n=t.getName();if(n==="-"){let s=fs(e,t);if(s.length!==1||ds(t).length>0||wr(t).length>0)throw Fe(e,t,'"-" is one piece of text or one (ref)');return Bt(e,r,t),s[0]??null}if(n==="$array")return Ib(e,t,r);return lp(e,t,r)}function eT(e,t,r,n){let s=Mo(e,r);if(t==="map")return Fc(e,r,n);if(t==="cases"){let i={};for(let o of wr(r)){let a=o.getName();Je(i,a,Fc(e,o,`${n}/${Fr(a)}`),e,o)}return i}if(t==="children"&&s!=="array"&&wr(r).length>0)return Fc(e,r,n);return zr(e,r,n)}function lp(e,t,r){let n={},s=t.getName(),i=Mo(e,t);if(Bt(e,r,t),i!==null)throw Fe(e,t,`(${i}) cannot annotate an element`);let o=fs(e,t);if(s==="$element"){let[l,c,...u]=o;if(u.length>0)throw Fe(e,t,"$element takes at most a tag and a text value");if(l!==void 0)Je(n,"tagName",l,e,t);if(c!==void 0)Je(n,"textContent",c,e,t)}else{if(s.startsWith("$"))throw Fe(e,t,`"${s}" is not a kind of element`);if(Je(n,"tagName",s,e,t),o.length>1)throw Fe(e,t,"An element has one text value. A list of them needs a block");if(o[0]!==void 0)Je(n,"textContent",o[0],e,t),Bt(e,`${r}/textContent`,t)}tT(e,t,n,r);let a=[];for(let l of wr(t))rT(e,l,n,a,r);if(a.length>0)Je(n,"children",a,e,t);return n}function Mb(e){let{attributes:t}=e;if(W(t))return t;let r={};return e.attributes=r,r}function tT(e,t,r,n){for(let s of ds(t)){let i=ol(s),o=s.getTag();if(o==="fn")throw Fe(e,s,"A function has a block form: (fn)name, on a line of its own");let a=Do(e,s);if(i.startsWith(".")||i.startsWith("$")){let l=i.startsWith(".")?i.slice(1):i;Je(r,l,a,e,s),Bt(e,`${n}/${Fr(l)}`,s)}else if(i.startsWith("on")&&o==="ref")Je(r,i,a,e,s),Bt(e,`${n}/${Fr(i)}`,s);else if(i.startsWith("on")&&Nb.has(i))throw Fe(e,s,`${i} needs (ref)"pointer", or a function on a line of its own: (fn)${i} "…"`);else Je(Mb(r),i,a,e,s),Bt(e,`${n}/attributes/${Fr(i)}`,s)}}function rT(e,t,r,n,s){let i=t.getName(),o=Mo(e,t),a=(l)=>`${s}/${Fr(l)}`;if(o==="fn"||o==="on"){if(!i.startsWith("on"))throw Fe(e,t,`(${o}) in an element marks a handler, and "${i}" is not one`);Je(r,i,zr(e,t,a(i)),e,t)}else if(i==="script")throw Fe(e,t,'"script" is reserved. A <script> element is $element "script"');else if(i==="state")Je(r,"state",zr(e,t,a("state")),e,t);else if(i==="style")Je(r,"style",qc(e,t,a("style")),e,t);else if(i==="attributes"){let l=zr(e,t,a("attributes"));if(W(l))for(let[c,u]of Object.entries(l))Je(Mb(r),c,u,e,t);else Je(r,"attributes",l,e,t)}else if(i.startsWith(".")){let l=i.slice(1);Je(r,l,eT(e,l,t,a(l)),e,t)}else if(i.startsWith("$")&&i!=="$array"&&i!=="$element")Je(r,i,zr(e,t,a(i)),e,t);else{if(ZC.has(i))throw Fe(e,t,`"${i}" is reserved here`);n.push(Jb(e,t,`${s}/children/${n.length}`))}}function cp(e,t){return wr(t).map((r,n)=>{let s=`/$head/${n}`;return r.getName()==="-"?zr(e,r,s):lp(e,r,s)})}function up(e){let t=YC.exec(e);if(t)throw new Ht(`A raw control character (U+${t[0].codePointAt(0)?.toString(16).toUpperCase().padStart(4,"0")}) cannot be in a Jx Notation file. Escape it, as \\u{1b}`,Io(e,t.index));try{return Vs(e,{storeLocations:!0})}catch(r){let s=(r instanceof De?r.errors?.[0]??r:null)?.start,i=r instanceof Error?r.message:String(r);throw new Ht(i.split(`
|
|
18
|
+
`)[0]??i,s?Io(e,s.offset):null)}}function Db(e){if(vo(e.text)==="project")throw new Ht('This is a project file: its first node is "project". A document has an element there, and a <project> element is $element "project"');let r=up(e.text),n={},s=null;for(let i of r.nodes){let o=i.getName();if(o==="$head"&&i.getTag()===null)Je(n,o,cp(e,i),e,i);else if(o.startsWith("$")&&o!=="$array"&&o!=="$element")Je(n,o,zr(e,i,`/${Fr(o)}`),e,i),Bt(e,`/${Fr(o)}`,i);else if(s)throw Fe(e,i,"A document has one root element, and this is a second");else s=i}if(s){let i=s.getName()==="$array"?Ib(e,s,""):lp(e,s,"");for(let[o,a]of Object.entries(i))Je(n,o,a,e,s)}return $o(n)}function Fi(e,t){try{return Db({spans:null,text:e})}catch(r){throw t!==void 0&&r instanceof Ht?r.inFile(t):r}}function fp(e){let t=new Map;return{document:Db({spans:t,text:e}),spans:t}}var YC,XC,ZC;var al=D(()=>{Lc();be();er();Ya();Jo();Cb();YC=/(?![\t\n\v\f\r])\p{Cc}/u,XC=new Set(["array","fn","object","on","ref"]),ZC=new Set(["attributes","script","state","style"])});function ps(e){return e.toLowerCase().endsWith(".jxn")}function ms(e){return e.endsWith(".json")||ps(e)}function hs(e,t){return ps(t)?Fi(e,t):Fy(e,t)}var Vc=D(()=>{er();al()});function iT(e){let t={comments:0,escapes:[]},r=sT.exec(e)?.[0].length??0;while(r<e.length)if(e.startsWith("//",r)){t.comments+=1;let n=e.indexOf(`
|
|
19
|
+
`,r);r=n===-1?e.length:n}else if(e.startsWith("/*",r)){t.comments+=1;let n=e.indexOf("*/",r+2);r=n===-1?e.length:n+2}else if(e.startsWith("/-",r))t.comments+=1,r+=2;else if(e.charAt(r)==="#"&&/^#+"/u.test(e.slice(r,r+16))){let[n=""]=/^#+/u.exec(e.slice(r))??[],s=r+n.length,i=e.startsWith('"""',s)?'"""':'"',o=e.indexOf(i+n,s+i.length);r=o===-1?e.length:o+i.length+n.length}else if(e.charAt(r)==='"'){let n=e.startsWith('"""',r)?'"""':'"';r+=n.length;while(r<e.length&&!e.startsWith(n,r))if(e.charAt(r)==="\\")t.escapes.push(r),r+=2;else r+=1;r+=n.length}else r+=1;return t}function dp(e){return iT(e).escapes.flatMap((t)=>{let r=nT.get(e.charAt(t+1));return r?[{...Io(e,t),message:r}]:[]})}var nT,sT;var Lb=D(()=>{Jo();nT=new Map([["b",String.raw`\b in a quoted string is a backspace, not a word boundary. Use a raw string, like #"…"#, if this is a pattern.`],["s",String.raw`\s in a quoted string is a space, not whitespace. Use a raw string, like #"…"#, if this is a pattern.`]]),sT=/^\uFEFF?\s*\/-[^\S\n]*kdl-version[^\S\n]+\d+[^\S\n]*(?:\n|$)/u});function Lo(e,t=!1){if(Array.isArray(e))return`[${e.map((s)=>Lo(s,t)).join(",")}]`;if(!W(e))return e===void 0?"null":JSON.stringify(e);return`{${(t?Object.keys(e):Object.keys(e).toSorted()).map((s)=>`${JSON.stringify(s)}:${Lo(e[s],t||s==="style")}`).join(",")}}`}function oT(e,t){let r=e;for(let n of t.split("/").slice(1)){let s=n.replaceAll("~1","/").replaceAll("~0","~");if(Array.isArray(r))r=r[Number(s)];else r=W(r)?r[s]:void 0}return r}function aT({spans:e}){let t=new Map;for(let[r,n]of e){let s=t.get(n.start);if(s===void 0||r.length<s.length)t.set(n.start,r)}return t}function Fb(e,t){let r=aT(e),n=new Map;for(let[s,i]of r)n.set(s,Lo(oT(e.document,i)));return{meanings:n,pointers:r,text:t}}function gs(e){let t=Ao(e);return{end:t?.end.offset??0,start:t?.start.offset??0}}function Hc(e,t){let{end:r,start:n}=gs(e);return t.slice(n,r).trimEnd()}function Wc(e,t){let{end:r,start:n}=gs(e);return`${e.leading??" "}${t.slice(n,r).trimEnd()}`}function gp(e){return e.children?.nodes??[]}function pp(e){let t=e.entries.map((i)=>`${i.getName()??""}=(${i.getTag()??""})${JSON.stringify(i.getValue())}`),r=t.filter((i)=>!i.startsWith("=")).toSorted(),n=t.filter((i)=>i.startsWith("=")),s=gp(e).map((i)=>pp(i));return`(${e.getTag()??""})${e.getName()} ${[...r,...n].join(" ")} {${s.join(";")}}`}function mp(e,t,r){if(pp(t)===pp(r))return!0;let n=e.previous.meanings.get(gs(t).start);return n!==void 0&&n===e.next.meanings.get(gs(r).start)}function qb(e){let r=e.entries.filter((n)=>["$id","key"].includes(n.getName()??"")).map((n)=>JSON.stringify(n.getValue()));return`(${e.getTag()??""})${e.getName()} ${r.join(" ")}`}function Vb(e,t,r){let n=e.length+1,s=t.length+1,i=new Int32Array(n*s);for(let c=e.length-1;c>=0;c-=1)for(let u=t.length-1;u>=0;u-=1){let p=e[c],h=t[u];i[c*s+u]=p!==void 0&&h!==void 0&&r(p,h)?(i[(c+1)*s+u+1]??0)+1:Math.max(i[(c+1)*s+u]??0,i[c*s+u+1]??0)}let o=[],a=0,l=0;while(a<e.length&&l<t.length){let c=e[a],u=t[l];if(c!==void 0&&u!==void 0&&r(c,u))o.push([a,l]),a+=1,l+=1;else if((i[(a+1)*s+l]??0)>=(i[a*s+l+1]??0))a+=1;else l+=1}return o}function lT(e,t,r){let n=new Map,s=new Set,i=(c,u)=>{let p=t[c];if(p)n.set(u,p),s.add(c)},o=Vb(t,r,(c,u)=>mp(e,c,u)),a=0,l=0;for(let[c,u]of[...o,[t.length,r.length]]){let p=Vb(t.slice(a,c),r.slice(l,u),(h,m)=>qb(h)===qb(m));for(let[h,m]of p)i(a+h,l+m);if(c<t.length)i(c,u);a=c+1,l=u+1}for(let[c,u]of r.entries())if(!n.has(c)){let p=t.findIndex((h,m)=>!s.has(m)&&mp(e,h,u));if(p!==-1)i(p,c)}return n}function yp(e){let t=e.leading??"";return t.slice(t.lastIndexOf(`
|
|
20
|
+
`)+1)}function cT(e,t,r){return e.split(`
|
|
21
21
|
`).map((n,s)=>s>0&&n.startsWith(t)?r+n.slice(t.length):n).join(`
|
|
22
|
-
`)}function
|
|
23
|
-
${h.join("")}${n}}`}function
|
|
22
|
+
`)}function uT(e,t,r){let n=[...r],s=(o)=>{let a=o.getName(),l=n.findIndex((c)=>c.getName()===a);return l===-1?void 0:n.splice(l,1)[0]},i="";for(let o of t.entries){let a=s(o);if(a){let l=a.getTag()===o.getTag()&&a.getValue()===o.getValue();i+=l?Wc(o,e.previous.text):`${o.leading??" "}${Wc(a,e.next.text).trimStart()}`}}for(let o of n)i+=` ${Wc(o,e.next.text).trimStart()}`;return i}function fT(e,t,r){let n=new Map;for(let i of gp(t)){let o=e.previous.pointers.get(gs(i).start);if(o!==void 0)n.set(o,i)}let s=new Map;for(let i of r.entries){let o=e.next.pointers.get(gs(i).start),a=o===void 0?void 0:n.get(o);if(a&&i.getName()!==null)s.set(a,i)}return s}function dT(e,t,r){let{text:n}=e.previous,s=Wc(r,e.next.text).trimStart().slice(`${r.getName()}=`.length),[i]=t.entries;if(i?.getName()===null&&t.entries.length===1&&!t.children){if(i.getValue()===r.getValue()&&i.getTag()===r.getTag())return Hc(t,n);return`${hp(t,n)}${i.leading??" "}${s}`}return`${hp(t,n)} ${s}`}function hp(e,t){let{start:r}=gs(e),[n]=e.entries;if(n)return t.slice(r,gs(n).start-(n.leading??"").length);let s=e.children&&Ao(e.children);if(s)return t.slice(r,s.start.offset-1).trimEnd();return Hc(e,t)}function pT(e,t,r,n){let s=fT(e,t,r),i=new Set(s.values()),o=r.entries.filter((m)=>!i.has(m)),a=`${hp(t,e.previous.text)}${uT(e,t,o)}`,l=gp(r);if(l.length===0&&s.size===0)return a;let c=l[0]?yp(l[0]):`${n} `,u=t.children,p=t.beforeChildren===""?" ":t.beforeChildren??" ";if(u&&u.nodes.length>0&&hT(u,e.previous.text,t)){let m=`${n}${mT(u,n)}`;return`${a}${p}{${Hb(e,u,l,m,c,s)}}`}let h=l.map((m)=>Wb(e,m,c,`${n} `));return`${a}${p}{
|
|
23
|
+
${h.join("")}${n}}`}function mT(e,t){let[r]=e.nodes,n=r?yp(r):"";return n.startsWith(t)?n.slice(t.length):" "}function hT(e,t,r){let{end:n,start:s}=gs(r),[i]=e.nodes;return i!==void 0&&(i.leading??"").includes(`
|
|
24
24
|
`)&&t.slice(s,n).includes(`
|
|
25
|
-
`)}function
|
|
26
|
-
`}function
|
|
25
|
+
`)}function Wb(e,t,r,n){return`${n}${cT(Hc(t,e.next.text),r,n)}
|
|
26
|
+
`}function Hb(e,t,r,n,s,i){let o=t.nodes.filter((y)=>!i.has(y)),a=lT(e,o,r),l=t.nodes[0]?.leading??"",c=l.indexOf(`
|
|
27
27
|
`),u=c===-1?"":l.slice(0,c+1),p=u,h=-1,m=()=>{if(p!==""&&!p.endsWith(`
|
|
28
28
|
`)&&!p.endsWith(";"))p+=`
|
|
29
|
-
`},b=(y,w)=>{let
|
|
29
|
+
`},b=(y,w)=>{let j=t.nodes.indexOf(y),S=j===h+1||j>h;h=Math.max(h,j);let E=y===t.nodes[0]?l.slice(u.length):y.leading??"";if(S&&(E.includes(`
|
|
30
30
|
`)||p===u||p.endsWith(";"))){p+=`${E}${w}${y.trailing??""}`;return}if(!p.endsWith(`
|
|
31
31
|
`))p+=`
|
|
32
32
|
`;let k=(y.trailing??"").replace(/^;/u,"");p+=`${E.includes(`
|
|
33
|
-
`)?E:n}${w}${k}`},g=(y)=>{for(let[w,
|
|
34
|
-
`)t+=String.raw`\n`;else if(r==="\t")t+=String.raw`\t`;else if(r==="\r")t+=String.raw`\r`;else if(
|
|
33
|
+
`)?E:n}${w}${k}`},g=(y)=>{for(let[w,j]of t.nodes.entries()){let S=i.get(j);if(S&&w<y&&w>h)m(),b(j,dT(e,j,S))}};for(let[y,w]of r.entries()){let j=a.get(y);if(j){g(t.nodes.indexOf(j)),m();let S=mp(e,j,w)?Hc(j,e.previous.text):pT(e,j,w,yp(j));b(j,S)}else m(),p+=Wb(e,w,s,n)}return g(t.nodes.length),`${p}${t.trailing??""}`}function Bc(e,t,r){let n;try{n=r(e)}catch{return t}let s=r(t),i=Lo(s.document);if(Lo(n.document)===i)return e;let o={next:Fb(s,t),previous:Fb(n,e)},a=Hb(o,Vs(e,{storeLocations:!0}),Vs(t,{storeLocations:!0}).nodes,"","",new Map);try{return Lo(r(a).document)===i?a:t}catch{return t}}var Uc=D(()=>{Lc();be()});function Gb(e){return!/\p{Cs}/u.test(e)}function Kb(e,t){try{return Vs(`x ${e}`).nodes[0]?.entries[0]?.getValue()===t}catch{return!1}}function zc(e){let t='"';for(let r of e)if(r==='"')t+=String.raw`\"`;else if(r==="\\")t+=String.raw`\\`;else if(r===`
|
|
34
|
+
`)t+=String.raw`\n`;else if(r==="\t")t+=String.raw`\t`;else if(r==="\r")t+=String.raw`\r`;else if(zb.test(r))t+=`\\u{${r.codePointAt(0)?.toString(16)}}`;else t+=r;return`${t}"`}function Yb(e,t){let r="#";while(e.includes(t+r))r+="#";return r}function bT(e,t){if(gT.test(e))return null;let r=Yb(e,'"""'),n=`${t}${nr}`,s=e.split(`
|
|
35
35
|
`).map((o)=>o===""?"":n+o),i=`${r}"""
|
|
36
36
|
${s.join(`
|
|
37
37
|
`)}
|
|
38
|
-
${n}"""${r}`;return
|
|
39
|
-
`)){let n=
|
|
40
|
-
`))){let h=`${i} ${u.join(" ")}`;if(h.length<=
|
|
41
|
-
`)?null:`${
|
|
42
|
-
`))break;o.push(`${
|
|
43
|
-
`)})}function
|
|
44
|
-
`)&&!e.startsWith("on")&&!e.startsWith("$")&&!e.startsWith(".")}function
|
|
45
|
-
`))i.push(...
|
|
46
|
-
`))t.push(...
|
|
47
|
-
`)}`);else if(s.startsWith("$"))r.push(...
|
|
38
|
+
${n}"""${r}`;return Kb(i,e)?i:null}function xp(e,t,r){if(!Gb(e))throw new Ht(`${r} holds a lone surrogate, which Jx Notation has no way to spell`);if(Ub.test(e))return e;if(e.includes(`
|
|
39
|
+
`)){let n=bT(e,t);if(n)return n}else if((e.includes("\\")||e.includes('"'))&&!zb.test(e)){let n=Yb(e,'"'),s=`${n}"${e}"${n}`;if(Kb(s,e))return s}return zc(e)}function vr(e,t){if(!Gb(e))throw new Ht(`${t} is a key with a lone surrogate, which Jx Notation cannot spell`);return Ub.test(e)?e:zc(e)}function Dt(e,t,r){if(e===null)return"#null";if(e===!0)return"#true";if(e===!1)return"#false";if(Ct(e))return Object.is(e,-0)?"-0":String(e);if(O(e))return xp(e,t,r);return cl(e)?`(ref)${zc(e.$ref)}`:null}function Xb(e){if(!Gr(e)||e.$prototype!=="Function")return!1;let{$prototype:t,body:r,parameters:n,...s}=e,i=Object.values(s).every((c)=>Dt(c,"","")!==null),o=n===void 0||Array.isArray(n)&&n.length>0&&n.every((c)=>O(c))&&r!==void 0,a=r===void 0||O(r)||Array.isArray(r),l=Array.isArray(r)&&r.length===0;return i&&o&&a&&!l}function Zb(e,t,r,n){let{$prototype:s,body:i,parameters:o,...a}=t,l=[`${r}(fn)${vr(e,n)}`];for(let[c,u]of Object.entries(a))l.push(`${vr(c,n)}=${Dt(u,r,pt(n,c))}`);if(Array.isArray(o))for(let c of o)l.push(xp(String(c),r,pt(n,"parameters")));if(O(i))l.push(xp(i,r,pt(n,"body")));else if(Array.isArray(i))return[`${l.join(" ")} {`,...i.flatMap((c,u)=>qr("-",c,r+nr,pt(pt(n,"body"),u))),`${r}}`];return[l.join(" ")]}function qr(e,t,r,n){let s=vr(e,n),i=r+s,o=Dt(t,r,n);if(o!==null)return[`${i} ${o}`];if(Xb(t))return Zb(e,t,r,n);if(Array.isArray(t)){if(t.length===0)return[`${r}(array)${s}`];let u=t.map((h,m)=>Dt(h,r,pt(n,m)));if(t.length>1&&u.every((h)=>h!==null&&!h.includes(`
|
|
40
|
+
`))){let h=`${i} ${u.join(" ")}`;if(h.length<=bp)return[h]}return[`${i} {`,...t.flatMap((h,m)=>qr("-",h,r+nr,pt(n,m))),`${r}}`]}let a=Gr(t)?Object.entries(t):[];if(a.length===0)return[`${i} {}`];let l=a.every(([u])=>u==="-")?`${r}(object)${s}`:i,c=a.map(([u,p])=>{let h=Dt(p,r,pt(n,u));return h===null||h.includes(`
|
|
41
|
+
`)?null:`${vr(u,n)}=${h}`});if(c.every((u)=>u!==null)){let u=`${l} ${c.join(" ")}`;if(u.length<=bp)return[u]}return[`${l} {`,...a.flatMap(([u,p])=>qr(u,p,r+nr,pt(n,u))),`${r}}`]}function Qb(e,t,r,n){let s=Object.entries(t),i=r+vr(e,n);if(s.length===0)return[`${i} {}`];let o=[],a=0;for(let[h,m]of s){let b=Dt(m,r,pt(n,h));if(b===null||b.includes(`
|
|
42
|
+
`))break;o.push(`${vr(h,n)}=${b}`),a+=1}let l=`${i} ${o.join(" ")}`,c=o.length>0&&l.length<=bp,u=c?a:0,p=s.slice(u).flatMap(([h,m])=>{if(Gr(m)&&!cl(m))return Qb(h,m,r+nr,pt(n,h));return qr(h,m,r+nr,pt(n,h))});if(c&&p.length===0)return[l];return[`${c?l:i} {`,...p,`${r}}`]}function xT(e){if(!Gr(e)||e.$prototype!=="Array"||!Gr(e.map))return!1;let{$prototype:t,map:r,...n}=e;return Object.values(n).every((s)=>{let i=Dt(s,"","");return i!==null&&!i.includes(`
|
|
43
|
+
`)})}function $T(e,t,r){let{$prototype:n,map:s,...i}=e,o=[`${t}$array`];for(let[a,l]of Object.entries(i))o.push(`${vr(a,r)}=${Dt(l,t,pt(r,a))}`);return[`${o.join(" ")} {`,...ll(s??null,t+nr,pt(r,"map")),`${t}}`]}function ll(e,t,r){let n=Dt(e,t,r);if(n!==null)return[`${t}- ${n}`];if(xT(e))return $T(e,t,r);if(Gr(e))return $p(e,t,r);throw new Ht(`${r} is a list inside a list of children, which has no spelling`)}function wT(e,t,r){let{tagName:n}=e;if(!O(n))return`${t}$element`;if(yT.has(n)||n.startsWith("$")||n.startsWith("."))return`${t}$element ${zc(n)}`;return t+vr(n,r)}function vT(e,t){return t!==null&&!t.includes(`
|
|
44
|
+
`)&&!e.startsWith("on")&&!e.startsWith("$")&&!e.startsWith(".")}function $p(e,t,r){let n=[wT(e,t,r)],s=t+nr,i=[],o={},a=null;for(let[l,c]of Object.entries(e)){let u=pt(r,l);if(l==="tagName"&&O(c))continue;if(l==="children")continue;if(l==="textContent"){let p=Dt(c,t,u);if(p===null||!O(e.tagName))Bb(n,i,l,c,s,t,u);else a=p}else if(l==="attributes"&&Gr(c))for(let[p,h]of Object.entries(c)){let m=Dt(h,t,pt(u,p));if(vT(p,m))n.push(`${vr(p,u)}=${m}`);else o[p]=h}else if(l==="state")i.push(...qr("state",c,s,u));else if(l==="style"&&Gr(c))i.push(...Qb("style",c,s,u));else if(l.startsWith("on")&&cl(c))n.push(`${vr(l,u)}=${Dt(c,t,u)}`);else if(l.startsWith("on"))i.push(...Xb(c)?Zb(l,c,s,u):qr(l,c,s,u).map((p,h)=>h===0?p.replace(s,`${s}(on)`):p));else if(l.startsWith("$")){let p=Dt(c,t,u);if(p===null||p.includes(`
|
|
45
|
+
`))i.push(...qr(l,c,s,u));else n.push(`${vr(l,u)}=${p}`)}else Bb(n,i,l,c,s,t,u)}if(Object.keys(o).length>0)i.push(...qr("attributes",o,s,pt(r,"attributes")));if(i.push(...ST(e.children,s,pt(r,"children"))),a!==null)n.push(a);return i.length===0?[n.join(" ")]:[`${n.join(" ")} {`,...i,`${t}}`]}function ST(e,t,r){if(e===void 0)return[];if(Array.isArray(e)){if(e.length===0)return[`${t}(array).children`];return e.flatMap((s,i)=>ll(s,t,pt(r,i)))}let n=Dt(e,t,r);if(n!==null)return[`${t}.children ${n}`];return[`${t}.children {`,...ll(e,t+nr,r),`${t}}`]}function Bb(e,t,r,n,s,i,o){let a=vr(`.${r}`,o);if(r==="map"&&Gr(n)){t.push(`${s}${a} {`,...ll(n,s+nr,o),`${s}}`);return}if(r==="cases"&&Gr(n)){t.push(`${s}${a} {`);for(let[c,u]of Object.entries(n))t.push(`${s}${nr}${vr(c,o)} {`,...ll(u,s+nr+nr,pt(o,c)),`${s}${nr}}`);t.push(`${s}}`);return}let l=Dt(n,i,o);if(l===null||l.includes(`
|
|
46
|
+
`))t.push(...qr(`.${r}`,n,s,o));else e.push(`${a}=${l}`)}function ex(e,t){return["$head {",...e.flatMap((r,n)=>Gr(r)&&!cl(r)&&O(r.tagName)&&!r.$ref?$p(r,t,`/$head/${n}`):qr("-",r,t,`/$head/${n}`)),"}"]}function ET(e){let{document:t,spans:r}=fp(e);return{document:W(t)?t:null,spans:r}}function wp(e,t){let r=jT(e);return t===void 0?r:Bc(t,r,ET)}function jT(e){if(!W(e))throw new Ht("A document is an object");let t=e,r=["/- kdl-version 2"],n={};for(let[s,i]of Object.entries(t))if(s==="$head"&&Array.isArray(i))r.push(...ex(i,nr));else if(s==="$head")r.push(`(object)${qr(s,i,"","/$head").join(`
|
|
47
|
+
`)}`);else if(s.startsWith("$"))r.push(...qr(s,i,"",pt("",s)));else n[s]=i;if(Object.keys(n).length>0)r.push("",...$p(n,"",""));return`${r.join(`
|
|
48
48
|
`)}
|
|
49
|
-
`}var or=" ",pp=100,Fb,qb,sT,iT,Ur=(e)=>B(e),qc=(e)=>Ur(e)&&O(e.$ref)&&Object.keys(e).length===1,vt=(e,t)=>`${e}/${String(t).replaceAll("~","~0").replaceAll("/","~1")}`;var Gb=D(()=>{Ic();ve();el();Dc();dp();Fb=/^(?![-+]?\.?\d)(?!(?:true|false|null|inf|-inf|nan)$)[^\s\\/(){};[\]"#=,\p{Cc}\p{Cf}\p{Zl}\p{Zp}]+$/u,qb=/[\p{Cc}\p{Zl}\p{Zp}--]/u,sT=/(?!\n)\p{Cc}|[\p{Zl}\p{Zp}--]/u,iT=new Set(["-","attributes","script","state","style"])});var Fi=D(()=>{Id();Cb();el();Nb();Dc();dp();Gb()});function Zb(e){if(e===null)throw TypeError("A class descriptor cannot be null");return B(e)?e:{}}class sl{name;classPath;classDef;extensions;mediaType;mediaTypeEssence;documentKinds;exportTarget;remote;studio;project;server;connector;capabilities;#t;#e=null;constructor(e,t,r,n){this.name=e,this.classPath=t,this.classDef=r,this.#t=n;let{format:s}=r;this.extensions=(s?.extensions??[]).map((i)=>i.toLowerCase()),this.mediaType=s?.mediaType??null,this.mediaTypeEssence=By(this.mediaType),this.documentKinds=s?.documentKinds??[],this.exportTarget=s?.exportTarget===!0,this.remote=s?.remote===!0,this.studio=r.$studio??null,this.project=r.project??null,this.server=r.server??null,this.connector=r.connector??null,this.capabilities=gT(r)}implementation(){if(!this.#e){let e=this.classDef.$implementation;if(!e)return Promise.reject(Error(`Format class "${this.name}" has no $implementation to import`));this.#e=this.#t.importModule(this.#t.resolvePath(this.classPath,e))}return this.#e}async implementationExport(){return this.#r(await this.implementation())}#r(e){let t=this.classDef.title??this.name;return e[t]??e.default?.[t]??e.default}async call(e,...t){let r=this.capabilities[e];if(!r)throw Error(`Format class "${this.name}" does not declare a "${e}" capability`);let n=this.#r(await this.implementation()),s=n?.[r.identifier];if(!Vt(s)){let o=this.classDef.title??this.name;throw TypeError(`Format class "${this.name}": implementation export "${o}" has no static "${r.identifier}" method`)}return await s.call(n,...t)}async parseDocument(e,t){return await this.call("parse",e,t)}}class Wc{#t;get#e(){return[...this.#t,$T]}constructor(e){this.#t=e;for(let t of e)if(t.extensions.includes(".jxn"))throw Error(`Format "${t.name}" claims ".jxn", which is built in`);for(let t of e){if(t.mediaType===null)continue;let r=Hy(t.mediaType);if(r!==null)throw Error(`Format "${t.name}" declares an invalid mediaType: ${r}`)}for(let t of Yb){let r=new Map;for(let n of e){if(!n.capabilities[t])continue;for(let s of n.extensions){let i=r.get(s);if(i)throw Error(`Format conflict: "${i.name}" and "${n.name}" both claim "${s}" with the "${t}" capability`);r.set(s,n)}}}}get entries(){return this.#t}byExtension(e,t){let r=Kb(e);return this.#e.find((n)=>n.extensions.includes(r)&&(!t||n.capabilities[t]))}byName(e){return this.#t.find((t)=>t.name===e)}withCapability(e){return this.#e.filter((t)=>t.capabilities[e])}documentExtensions(e){let t=new Set;for(let r of this.#e){if(e&&!r.documentKinds.includes(e))continue;for(let n of r.extensions)t.add(n)}return t.delete(".json"),[...t]}has(e){let t=Kb(e);return this.#e.some((r)=>r.extensions.includes(t))}}function gT(e){let t={},r=e.$defs?.methods??{};for(let[n,s]of Object.entries(r)){let{role:i}=s;if(!bT(i))continue;let o={identifier:s.identifier??n,timing:s.timing??hT};if(O(s.discriminator))o.discriminator=s.discriminator;t[i]=o}return t}function bT(e){return e!==void 0&&yT.has(e)}function Kb(e){let t=e.toLowerCase();return t.startsWith(".")?t:`.${t}`}var Yb,Xb,hT,yT,xT,$T;var yp=D(()=>{ve();Nd();Yb=["parse","serialize","rewrite","discover","load"],Xb=[...Yb,"projectData","resolvePaths","lower","emit","head","assets","mount","dialect","deploySchema","bindings","testConnection"];hT=["compiler","server"];yT=new Set(Xb);xT={importModule:async()=>{await Promise.resolve().then(() => Fi());return{JxNotation:{parse:(r)=>Li(r),serialize:(r)=>gp(r)}}},loadJson:()=>Promise.reject(Error("Jx Notation reads no file of its own")),resolvePath:(e,t)=>t},$T=new sl("jxn","",{$defs:{methods:{parse:{role:"parse"},serialize:{role:"serialize"}}},$implementation:"jxn",format:{documentKinds:["page","component"],extensions:[".jxn"]},title:"JxNotation"},xT)});class Qb{#t;#e;#r;constructor(e){this.#t=e,this.#e=e.flatMap((s)=>s.classes);let t=new Map;for(let s of e)for(let i of s.classes){let o=t.get(i.name);if(o&&o!==s.specifier)throw Error(`Extension conflict: "${o}" and "${s.specifier}" both provide a class named "${i.name}"`);t.set(i.name,s.specifier)}let r=new Map;for(let s of this.#e){if(!s.project)continue;let i=r.get(s.project.key);if(i)throw Error(`Extension conflict: "${i.name}" and "${s.name}" both claim the project section "${s.project.key}"`);r.set(s.project.key,s)}let n=new Map;for(let s of this.#e){if(!s.server)continue;let{basePath:i}=s.server;if(!i.startsWith("/_jx/"))throw Error(`Extension "${s.name}": server basePath "${i}" must be under /_jx/`);let o=n.get(i);if(o)throw Error(`Extension conflict: "${o.name}" and "${s.name}" both mount "${i}"`);n.set(i,s)}this.#r=new Wc(this.#e.filter((s)=>s.extensions.length>0))}get extensions(){return this.#t}get classes(){return this.#e}get formats(){return this.#r}byName(e){return this.#e.find((t)=>t.name===e)}projectContributions(){return this.#e.filter((e)=>e.project!==null)}byProjectKey(e){return this.#e.find((t)=>t.project?.key===e)}byPathsDiscriminator(e){return this.#e.find((t)=>t.capabilities.resolvePaths?.discriminator===e)}emitters(){return this.#e.filter((e)=>e.capabilities.emit!==void 0)}headProviders(){return this.#e.filter((e)=>e.capabilities.head!==void 0)}assetProviders(){return this.#e.filter((e)=>e.capabilities.assets!==void 0)}serverMounts(){return this.#e.filter((e)=>e.server!==null).toSorted((e,t)=>(e.server?.order??100)-(t.server?.order??100)||e.name.localeCompare(t.name))}connectors(){return this.#e.filter((e)=>e.connector!==null)}schemaFragments(e){return this.#t.map((t)=>t.schemas[e]).filter((t)=>typeof t==="string")}}async function e0(e,t,r){let n=[];for(let s of e??[])n.push(await wT(s,t,r));return new Qb(n)}async function wT(e,t,r){let n;if(e.startsWith("./")||e.startsWith("../")){let l=t.resolvePath(r,e);n=t.resolvePath(`${l}/package.json`,`./${il}`)}else try{n=t.resolvePath(r,`${e}/${il}`)}catch(l){throw Error(`Extension "${e}" is not resolvable: it must export ${il} (is the package installed, and does its exports map include it?): ${bp(l)}`,{cause:l})}let s;try{s=await t.loadJson(n)}catch(l){throw Error(`Extension "${e}": cannot read manifest ${n}: ${bp(l)}`,{cause:l})}if(!B(s)||!O(s.name))throw Error(`Extension "${e}": ${il} must declare a "name"`);let i=s;if(!e.startsWith(".")&&i.name!==e)throw Error(`Extension "${e}": manifest name "${i.name}" does not match the specifier`);let o=[];for(let[l,c]of Object.entries(i.classes??{})){let u=t.resolvePath(n,c),p;try{p=await t.loadJson(u)}catch(h){throw Error(`Extension "${e}": cannot read class "${l}" at ${u}: ${bp(h)}`,{cause:h})}o.push(new sl(l,u,Zb(p),t))}let a={};if(i.schemas?.project)a.project=t.resolvePath(n,i.schemas.project);if(i.schemas?.document)a.document=t.resolvePath(n,i.schemas.document);if(i.schemas?.fields)a.fields=t.resolvePath(n,i.schemas.fields);return{specifier:e,manifestPath:n,manifest:i,classes:o,schemas:a}}function bp(e){return e instanceof Error?e.message:String(e)}var il="jx-extension.json";var t0=D(()=>{yp();ve();yp()});var r0=D(()=>{ve()});var Hc="project.json";var xp=D(()=>{ve();r0();ir()});import{dirname as _X,join as vT}from"node:path";function kn(e){return vT(e,Hc)}var Io=D(()=>{xp()});import{readFileSync as ST}from"node:fs";import{dirname as ET,isAbsolute as PT,resolve as n0,sep as Bc}from"node:path";import{pathToFileURL as jT}from"node:url";import{createRequire as kT}from"node:module";async function $p(e){let t=[e],r=`${Bc}src${Bc}`,n=`${Bc}dist${Bc}`;if(e.includes(r)){let i=e.replace(r,n);if(t.push(i),i.endsWith(".ts"))t.push(`${i.slice(0,-3)}.js`)}if(e.endsWith(".js"))t.push(`${e.slice(0,-3)}.ts`);let s;for(let i of t)try{return await import(jT(i).href)}catch(o){s=o}throw s instanceof Error?s:Error(String(s))}function wp(e,t){return kT(n0(e,"package.json")).resolve(t)}function vp(e){return{importModule:(t)=>$p(t),loadJson:async(t)=>JSON.parse(ST(t,"utf8")),resolvePath:(t,r)=>{if(r.startsWith("./")||r.startsWith("../"))return n0(ET(t),r);if(PT(r))return r;return wp(e,r)}}}async function Fs(e,t){return e0(t?.extensions,vp(e),kn(e))}function Uc(e,t){return Error(`No format class registered for "${t}" (${e}). Enable an extension providing this format in project.json "extensions", e.g. "@jxsuite/parser".`)}var ms=D(()=>{t0();ve();Io()});import{existsSync as _T,readFileSync as AT}from"node:fs";import{resolve as RT}from"node:path";function qs(e){let t=kn(e);if(!_T(t))throw Error(`project.json not found in ${e}`);let r;try{r=Cd(AT(t,"utf8"),t)}catch(o){throw Error(`Invalid project.json: ${je(o)}`,{cause:o})}let n={...ol,...r,build:{...ol.build,...r.build},defaults:{...ol.defaults,...r.defaults},images:{...ol.images,...r.images},url:r.url??ol.url};if(r.$head)n.$head=r.$head;if(r.$media)n.$media=r.$media;if(r.style)n.style=r.style;if(r.state)n.state=r.state;if(r.redirects)n.redirects=r.redirects;if(r.imports)n.imports=r.imports;let s=["cloudflare-workers","cloudflare-pages","node","bun"];if(n.build.adapter==="static")delete n.build.adapter;if(n.build.adapter&&!s.includes(n.build.adapter))throw Error(`Unknown build adapter "${n.build.adapter}" in project.json. Valid adapters: ${s.join(", ")}`);let i=["build","cloudflare"];if(!i.includes(n.images.service))throw Error(`Unknown images.service "${n.images.service}" in project.json. Valid services: ${i.join(", ")}`);return{config:n,configPath:t,projectRoot:RT(e)}}var ol;var al=D(()=>{ir();Io();ol={$head:[],$media:{},build:{format:"directory",outDir:"./dist",provider:null,trailingSlash:"always"},defaults:{charset:"utf8",lang:"en",layout:null},images:{formats:["webp","avif"],lazyLoad:!0,optimize:!0,picture:!0,quality:{avif:65,jpeg:80,png:80,webp:80},service:"build",sizes:"(max-width: 768px) 100vw, 50vw",widths:[320,640,960,1280,1920]},imports:{},name:"Jx Site",redirects:{},state:{},style:{},url:""}});import{existsSync as Sp,readFileSync as s0,writeFileSync as OT}from"node:fs";import{resolve as i0}from"node:path";async function o0(e,t={}){let{dryRun:r=!1,connection:n}=t,{config:s}=qs(e),i=await Fs(e,s),o=B(s.connections)?s.connections:{},a=B(s.data)?s.data:{},l=Object.keys(o).filter((b)=>!n||b===n);if(n&&l.length===0)throw Error(`Unknown connection "${n}" (no such connections entry in project.json)`);if(l.length===0)throw Error('project.json has no "connections" section — nothing to push. Declare a connection and '+'its tables in the "data" section first.');let c={...process.env,...NT(e),JX_PROJECT_ROOT:e},u=[],p=[];for(let b of l){let g=o[b],y=B(g)?{...g,$name:b}:{$name:b},w=String(y.provider??""),P=CT(i.connectors(),w);if(!P)throw Error(`Connection "${b}" names provider "${w}", but no enabled extension provides it (enable the extension in project.json "extensions")`);let S={};for(let[k,A]of Object.entries(a))if(B(A)&&A.connection===b)S[k]=A;let E=await P.call("deploySchema",S,y,{dryRun:r,env:c});if(u.push({applied:E.applied??!r,connection:b,provider:w,statements:E.statements??[],tables:Object.keys(S),warnings:E.warnings??[]}),P.capabilities.bindings){let k=await P.call("bindings",y);if(B(k)&&Object.keys(k).length>0)p.push(k)}}let h=i0(e,"wrangler.jsonc"),m=!1;if(!r&&p.length>0&&Sp(h)){let b=s0(h,"utf8"),{content:g,patched:y}=My(b,p);if(y&&g!==b)OT(h,g,"utf8"),m=!0}return{bindingsPatched:m,results:u,wranglerPath:Sp(h)?h:null}}function CT(e,t){return e.find((r)=>r.connector?.provider===t)}function NT(e){let t=i0(e,".dev.vars");if(!Sp(t))return{};let r=new Map;for(let n of s0(t,"utf8").split(`
|
|
50
|
-
`)){let s=n.trim();if(s===""||s.startsWith("#"))continue;let i=s.indexOf("=");if(i===-1)continue;let o=s.slice(0,i).trim(),a=s.slice(i+1).trim();if(a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'"))a=a.slice(1,-1);if(o!=="")r.set(o,a)}return Object.fromEntries(r)}var
|
|
49
|
+
`}var nr=" ",bp=100,Ub,zb,gT,yT,Gr=(e)=>W(e),cl=(e)=>Gr(e)&&O(e.$ref)&&Object.keys(e).length===1,pt=(e,t)=>`${e}/${String(t).replaceAll("~","~0").replaceAll("/","~1")}`;var Gc=D(()=>{Lc();be();Jo();al();Uc();Ub=/^(?![-+]?\.?\d)(?!(?:true|false|null|inf|-inf|nan)$)[^\s\\/(){};[\]"#=,\p{Cc}\p{Cf}\p{Zl}\p{Zp}]+$/u,zb=/[\p{Cc}\p{Zl}\p{Zp}--]/u,gT=/(?!\n)\p{Cc}|[\p{Zl}\p{Zp}--]/u,yT=new Set(["-","attributes","script","state","style"])});function _T(e,t,r){if(Mo(e,t)!==null)throw Fe(e,t,`"project" names the file's kind, and takes no annotation`);let n=fs(e,t);if(n.length>1||ds(t).length>0||wr(t).length>0)throw Fe(e,t,`"project" holds one value, the project's name, and nothing else`);if(n[0]!==void 0)Je(r,"name",n[0],e,t),Bt(e,"/name",t)}function AT(e,t,r){let n=t.getName(),s=`/${Fr(n)}`,i=t.getTag()===null,o;if(n==="$head"&&i)o=cp(e,t),Bt(e,s,t);else if(kT.has(n)&&i)o=qc(e,t,s);else o=zr(e,t,s);Je(r,n,o,e,t)}function RT(e){if(vo(e.text)==="document")throw new Ht('A project file declares itself: its first node, after any $ metadata, is project "<name>"');let t=up(e.text),r={},n=!1;for(let s of t.nodes)if(s.getName()===PT){if(n)throw Fe(e,s,'"project" is written twice, and a file declares one project');_T(e,s,r),n=!0}else AT(e,s,r);return $o(r)}function vp(e,t){try{return RT({spans:null,text:e})}catch(r){throw t!==void 0&&r instanceof Ht?r.inFile(t):r}}var PT="project",kT;var Sp=D(()=>{be();er();Ya();Jo();al();Uc();Gc();kT=new Set(["$media","style"])});var qi=D(()=>{Ya();Vc();Jo();Lb();al();Uc();Gc();Sp()});function sx(e){if(e===null)throw TypeError("A class descriptor cannot be null");return W(e)?e:{}}class ul{name;classPath;classDef;extensions;mediaType;mediaTypeEssence;documentKinds;exportTarget;remote;studio;project;server;connector;capabilities;#t;#e=null;constructor(e,t,r,n){this.name=e,this.classPath=t,this.classDef=r,this.#t=n;let{format:s}=r;this.extensions=(s?.extensions??[]).map((i)=>i.toLowerCase()),this.mediaType=s?.mediaType??null,this.mediaTypeEssence=Qy(this.mediaType),this.documentKinds=s?.documentKinds??[],this.exportTarget=s?.exportTarget===!0,this.remote=s?.remote===!0,this.studio=r.$studio??null,this.project=r.project??null,this.server=r.server??null,this.connector=r.connector??null,this.capabilities=CT(r)}implementation(){if(!this.#e){let e=this.classDef.$implementation;if(!e)return Promise.reject(Error(`Format class "${this.name}" has no $implementation to import`));this.#e=this.#t.importModule(this.#t.resolvePath(this.classPath,e))}return this.#e}async implementationExport(){return this.#r(await this.implementation())}#r(e){let t=this.classDef.title??this.name;return e[t]??e.default?.[t]??e.default}async call(e,...t){let r=this.capabilities[e];if(!r)throw Error(`Format class "${this.name}" does not declare a "${e}" capability`);let n=this.#r(await this.implementation()),s=n?.[r.identifier];if(!Wt(s)){let o=this.classDef.title??this.name;throw TypeError(`Format class "${this.name}": implementation export "${o}" has no static "${r.identifier}" method`)}return await s.call(n,...t)}async parseDocument(e,t){return await this.call("parse",e,t)}}class Kc{#t;get#e(){return[...this.#t,MT]}constructor(e){this.#t=e;for(let t of e)if(t.extensions.includes(".jxn"))throw Error(`Format "${t.name}" claims ".jxn", which is built in`);for(let t of e){if(t.mediaType===null)continue;let r=Zy(t.mediaType);if(r!==null)throw Error(`Format "${t.name}" declares an invalid mediaType: ${r}`)}for(let t of rx){let r=new Map;for(let n of e){if(!n.capabilities[t])continue;for(let s of n.extensions){let i=r.get(s);if(i)throw Error(`Format conflict: "${i.name}" and "${n.name}" both claim "${s}" with the "${t}" capability`);r.set(s,n)}}}}get entries(){return this.#t}byExtension(e,t){let r=tx(e);return this.#e.find((n)=>n.extensions.includes(r)&&(!t||n.capabilities[t]))}byName(e){return this.#t.find((t)=>t.name===e)}withCapability(e){return this.#e.filter((t)=>t.capabilities[e])}documentExtensions(e){let t=new Set;for(let r of this.#e){if(e&&!r.documentKinds.includes(e))continue;for(let n of r.extensions)t.add(n)}return t.delete(".json"),[...t]}has(e){let t=tx(e);return this.#e.some((r)=>r.extensions.includes(t))}}function CT(e){let t={},r=e.$defs?.methods??{};for(let[n,s]of Object.entries(r)){let{role:i}=s;if(!IT(i))continue;let o={identifier:s.identifier??n,timing:s.timing??NT};if(O(s.discriminator))o.discriminator=s.discriminator;t[i]=o}return t}function IT(e){return e!==void 0&&TT.has(e)}function tx(e){let t=e.toLowerCase();return t.startsWith(".")?t:`.${t}`}var rx,nx,NT,TT,JT,MT;var Ep=D(()=>{be();Fd();rx=["parse","serialize","rewrite","discover","load"],nx=[...rx,"projectData","resolvePaths","lower","emit","head","assets","mount","dialect","deploySchema","bindings","testConnection"];NT=["compiler","server"];TT=new Set(nx);JT={importModule:async()=>{await Promise.resolve().then(() => qi());return{JxNotation:{parse:(r)=>Fi(r),serialize:(r)=>wp(r)}}},loadJson:()=>Promise.reject(Error("Jx Notation reads no file of its own")),resolvePath:(e,t)=>t},MT=new ul("jxn","",{$defs:{methods:{parse:{role:"parse"},serialize:{role:"serialize"}}},$implementation:"jxn",format:{documentKinds:["page","component"],extensions:[".jxn"]},title:"JxNotation"},JT)});class ix{#t;#e;#r;constructor(e){this.#t=e,this.#e=e.flatMap((s)=>s.classes);let t=new Map;for(let s of e)for(let i of s.classes){let o=t.get(i.name);if(o&&o!==s.specifier)throw Error(`Extension conflict: "${o}" and "${s.specifier}" both provide a class named "${i.name}"`);t.set(i.name,s.specifier)}let r=new Map;for(let s of this.#e){if(!s.project)continue;let i=r.get(s.project.key);if(i)throw Error(`Extension conflict: "${i.name}" and "${s.name}" both claim the project section "${s.project.key}"`);r.set(s.project.key,s)}let n=new Map;for(let s of this.#e){if(!s.server)continue;let{basePath:i}=s.server;if(!i.startsWith("/_jx/"))throw Error(`Extension "${s.name}": server basePath "${i}" must be under /_jx/`);let o=n.get(i);if(o)throw Error(`Extension conflict: "${o.name}" and "${s.name}" both mount "${i}"`);n.set(i,s)}this.#r=new Kc(this.#e.filter((s)=>s.extensions.length>0))}get extensions(){return this.#t}get classes(){return this.#e}get formats(){return this.#r}byName(e){return this.#e.find((t)=>t.name===e)}projectContributions(){return this.#e.filter((e)=>e.project!==null)}byProjectKey(e){return this.#e.find((t)=>t.project?.key===e)}byPathsDiscriminator(e){return this.#e.find((t)=>t.capabilities.resolvePaths?.discriminator===e)}emitters(){return this.#e.filter((e)=>e.capabilities.emit!==void 0)}headProviders(){return this.#e.filter((e)=>e.capabilities.head!==void 0)}assetProviders(){return this.#e.filter((e)=>e.capabilities.assets!==void 0)}serverMounts(){return this.#e.filter((e)=>e.server!==null).toSorted((e,t)=>(e.server?.order??100)-(t.server?.order??100)||e.name.localeCompare(t.name))}connectors(){return this.#e.filter((e)=>e.connector!==null)}schemaFragments(e){return this.#t.map((t)=>t.schemas[e]).filter((t)=>typeof t==="string")}}async function ox(e,t,r){let n=[];for(let s of e??[])n.push(await DT(s,t,r));return new ix(n)}async function DT(e,t,r){let n;if(e.startsWith("./")||e.startsWith("../")){let l=t.resolvePath(r,e);n=t.resolvePath(`${l}/package.json`,`./${fl}`)}else try{n=t.resolvePath(r,`${e}/${fl}`)}catch(l){throw Error(`Extension "${e}" is not resolvable: it must export ${fl} (is the package installed, and does its exports map include it?): ${jp(l)}`,{cause:l})}let s;try{s=await t.loadJson(n)}catch(l){throw Error(`Extension "${e}": cannot read manifest ${n}: ${jp(l)}`,{cause:l})}if(!W(s)||!O(s.name))throw Error(`Extension "${e}": ${fl} must declare a "name"`);let i=s;if(!e.startsWith(".")&&i.name!==e)throw Error(`Extension "${e}": manifest name "${i.name}" does not match the specifier`);let o=[];for(let[l,c]of Object.entries(i.classes??{})){let u=t.resolvePath(n,c),p;try{p=await t.loadJson(u)}catch(h){throw Error(`Extension "${e}": cannot read class "${l}" at ${u}: ${jp(h)}`,{cause:h})}o.push(new ul(l,u,sx(p),t))}let a={};if(i.schemas?.project)a.project=t.resolvePath(n,i.schemas.project);if(i.schemas?.document)a.document=t.resolvePath(n,i.schemas.document);if(i.schemas?.fields)a.fields=t.resolvePath(n,i.schemas.fields);return{specifier:e,manifestPath:n,manifest:i,classes:o,schemas:a}}function jp(e){return e instanceof Error?e.message:String(e)}var fl="jx-extension.json";var ax=D(()=>{Ep();be();Ep()});var lx=D(()=>{be()});function FT(e){return`${e} holds both project.jxn and project.json, and a project has one. Keep the one you edit and delete the other`}function ux(e){let t=LT.filter((r)=>e(r));if(t.length>1)return"conflict";return t[0]??null}function Yc(e,t){return ps(t)?vp(e,t):qy(e,t)}var LT,cx="project.json",Pp;var Xc=D(()=>{be();lx();Ya();Vc();Sp();er();LT=["project.jxn","project.json"];Pp=class Pp extends Error{constructor(e){super(FT(e));this.name="ProjectFileConflictError"}}});import{accessSync as dZ,closeSync as pZ,constants as mZ,existsSync as qT,fstatSync as hZ,lstatSync as gZ,openSync as yZ,readFileSync as bZ,statSync as xZ}from"node:fs";import{dirname as wZ,join as fx}from"node:path";function VT(e){return ux((t)=>qT(fx(e,t)))}function kn(e){let t=VT(e);if(t==="conflict")throw new Pp(e);return fx(e,t??cx)}var Fo=D(()=>{Xc()});import{readFileSync as WT}from"node:fs";import{dirname as HT,isAbsolute as BT,resolve as dx,sep as Zc}from"node:path";import{pathToFileURL as UT}from"node:url";import{createRequire as zT}from"node:module";async function kp(e){let t=[e],r=`${Zc}src${Zc}`,n=`${Zc}dist${Zc}`;if(e.includes(r)){let i=e.replace(r,n);if(t.push(i),i.endsWith(".ts"))t.push(`${i.slice(0,-3)}.js`)}if(e.endsWith(".js"))t.push(`${e.slice(0,-3)}.ts`);let s;for(let i of t)try{return await import(UT(i).href)}catch(o){s=o}throw s instanceof Error?s:Error(String(s))}function _p(e,t){return zT(dx(e,"package.json")).resolve(t)}function Ap(e){return{importModule:(t)=>kp(t),loadJson:async(t)=>JSON.parse(WT(t,"utf8")),resolvePath:(t,r)=>{if(r.startsWith("./")||r.startsWith("../"))return dx(HT(t),r);if(BT(r))return r;return _p(e,r)}}}async function Ws(e,t){return ox(t?.extensions,Ap(e),kn(e))}function Qc(e,t){return Error(`No format class registered for "${t}" (${e}). Enable an extension providing this format in project.json "extensions", e.g. "@jxsuite/parser".`)}var ys=D(()=>{ax();be();Fo()});import{existsSync as GT,readFileSync as KT}from"node:fs";import{basename as YT,resolve as XT}from"node:path";function Hs(e){let t=kn(e);if(!GT(t))throw Error(`No project.jxn or project.json in ${e}`);let r;try{r=Yc(KT(t,"utf8"),t)}catch(o){throw Error(`Invalid ${YT(t)}: ${Pe(o)}`,{cause:o})}let n={...dl,...r,build:{...dl.build,...r.build},defaults:{...dl.defaults,...r.defaults},images:{...dl.images,...r.images},url:r.url??dl.url};if(r.$head)n.$head=r.$head;if(r.$media)n.$media=r.$media;if(r.style)n.style=r.style;if(r.state)n.state=r.state;if(r.redirects)n.redirects=r.redirects;if(r.imports)n.imports=r.imports;let s=["cloudflare-workers","cloudflare-pages","node","bun"];if(n.build.adapter==="static")delete n.build.adapter;if(n.build.adapter&&!s.includes(n.build.adapter))throw Error(`Unknown build adapter "${n.build.adapter}" in project.json. Valid adapters: ${s.join(", ")}`);let i=["build","cloudflare"];if(!i.includes(n.images.service))throw Error(`Unknown images.service "${n.images.service}" in project.json. Valid services: ${i.join(", ")}`);return{config:n,configPath:t,projectRoot:XT(e)}}var dl;var pl=D(()=>{er();Xc();Fo();dl={$head:[],$media:{},build:{format:"directory",outDir:"./dist",provider:null,trailingSlash:"always"},defaults:{charset:"utf8",lang:"en",layout:null},images:{formats:["webp","avif"],lazyLoad:!0,optimize:!0,picture:!0,quality:{avif:65,jpeg:80,png:80,webp:80},service:"build",sizes:"(max-width: 768px) 100vw, 50vw",widths:[320,640,960,1280,1920]},imports:{},name:"Jx Site",redirects:{},state:{},style:{},url:""}});import{existsSync as Rp,readFileSync as px,writeFileSync as ZT}from"node:fs";import{resolve as mx}from"node:path";async function hx(e,t={}){let{dryRun:r=!1,connection:n}=t,{config:s}=Hs(e),i=await Ws(e,s),o=W(s.connections)?s.connections:{},a=W(s.data)?s.data:{},l=Object.keys(o).filter((b)=>!n||b===n);if(n&&l.length===0)throw Error(`Unknown connection "${n}" (no such connections entry in project.json)`);if(l.length===0)throw Error('project.json has no "connections" section — nothing to push. Declare a connection and '+'its tables in the "data" section first.');let c={...process.env,...e2(e),JX_PROJECT_ROOT:e},u=[],p=[];for(let b of l){let g=o[b],y=W(g)?{...g,$name:b}:{$name:b},w=String(y.provider??""),j=QT(i.connectors(),w);if(!j)throw Error(`Connection "${b}" names provider "${w}", but no enabled extension provides it (enable the extension in project.json "extensions")`);let S={};for(let[k,A]of Object.entries(a))if(W(A)&&A.connection===b)S[k]=A;let E=await j.call("deploySchema",S,y,{dryRun:r,env:c});if(u.push({applied:E.applied??!r,connection:b,provider:w,statements:E.statements??[],tables:Object.keys(S),warnings:E.warnings??[]}),j.capabilities.bindings){let k=await j.call("bindings",y);if(W(k)&&Object.keys(k).length>0)p.push(k)}}let h=mx(e,"wrangler.jsonc"),m=!1;if(!r&&p.length>0&&Rp(h)){let b=px(h,"utf8"),{content:g,patched:y}=By(b,p);if(y&&g!==b)ZT(h,g,"utf8"),m=!0}return{bindingsPatched:m,results:u,wranglerPath:Rp(h)?h:null}}function QT(e,t){return e.find((r)=>r.connector?.provider===t)}function e2(e){let t=mx(e,".dev.vars");if(!Rp(t))return{};let r=new Map;for(let n of px(t,"utf8").split(`
|
|
50
|
+
`)){let s=n.trim();if(s===""||s.startsWith("#"))continue;let i=s.indexOf("=");if(i===-1)continue;let o=s.slice(0,i).trim(),a=s.slice(i+1).trim();if(a.startsWith('"')&&a.endsWith('"')||a.startsWith("'")&&a.endsWith("'"))a=a.slice(1,-1);if(o!=="")r.set(o,a)}return Object.fromEntries(r)}var gx=D(()=>{zy();ys();pl();be()});function Vi(e){return e.startsWith(eu)}function yx(e){let t=e;if(Vi(t))t=t.slice(eu.length);return t=t.replace(/^\.\//,"").replace(/\.(js|ts|mjs|mts)$/,"").replaceAll("@","").replaceAll(/[/\\]+/g,"-").replaceAll(/[^\w.-]/g,"-").replaceAll(/-+/g,"-").replaceAll(/^-|-$/g,""),`${Op}${t}.js`}function bx(e){let t=/\.(\w+)$/.exec(e)?.[1]??"",r=e.replace(/\.\w+$/,"").replaceAll("@","").replaceAll(/[/\\]+/g,"-").replaceAll(/[^\w.-]/g,"-").replaceAll(/-+/g,"-").replaceAll(/^-|-$/g,"");return t===""?`${Op}${r}`:`${Op}${r}.${t}`}function xx(e){let t=e.replaceAll("\\","/");return t.length>1&&t.endsWith("/")?t.slice(0,-1):t}function tu(e){let t=xx(e);return t.startsWith("/")?t:`/${t}`}function t2(e,t){return[...e].toSorted((r,n)=>n[t].length-r[t].length)}function ru(e,t){let r=t.split("#")[0].split("?")[0];if(!r.startsWith("/"))return null;let n;try{n=decodeURIComponent(r)}catch{return null}if(/%2e|%2f/i.test(n))return null;for(let s of t2(e,"urlPrefix")){let i=tu(s.urlPrefix);if(!n.startsWith(`${i}/`))continue;let a=n.slice(i.length+1).split("/");if(a.some((c)=>c===""||c==="."||c===".."))return null;let{filter:l}=s;if(l&&!l(a.join("/")))return null;return`${xx(s.dir)}/${a.join("/")}`}return null}function $x(e,t){let r=new Set;for(let n of t){let s=tu(n.urlPrefix),i=new RegExp(`${s.replaceAll(/[.*+?^${}()|[\]\\]/g,String.raw`\$&`)}/[^${r2}]+`,"g");for(let o of e.matchAll(i)){let a=o[0].split("#")[0].split("?")[0];if(!a.endsWith("/"))r.add(a)}}return[...r].filter(Boolean)}function Np(e){let t=[],r=0;while(r<e.length){while(r<e.length&&(/\s/.test(e[r])||e[r]===","))r+=1;if(r>=e.length)break;let n=r;while(r<e.length&&!/\s/.test(e[r]))r+=1;let s=e.slice(n,r);if(s.endsWith(",")){t.push({descriptor:"",url:s.replace(/,+$/,"")});continue}while(r<e.length&&/\s/.test(e[r]))r+=1;let i=r;while(r<e.length&&e[r]!==",")r+=1;let o=e.slice(i,r).trim();if(r+=1,s=s.replace(/,+$/,""),s!=="")t.push({descriptor:o,url:s})}return t}function Cp(e){return e.map(({url:t,descriptor:r})=>r?`${t} ${r}`:t).join(", ")}function Wi(e){if(!O(e)||e==="")return"";let t;try{({pathname:t}=new URL(e))}catch{return""}let r=t.replace(/\/+$/,"");if(r===""||r==="/")return"";return r.startsWith("/")?r:`/${r}`}function Xe(e,t){if(e===""||!t.startsWith("/")||t.startsWith("//"))return t;if(t===e||t.startsWith(`${e}/`))return t;return e+t}function Bs(e,t){let r=new URL(t);if(!r.pathname.endsWith("/"))r.pathname+="/";return new URL(e.replace(/^\/+/,""),r).href}var eu="npm:",Op="/assets/",r2;var Vr=D(()=>{be();r2=String.raw`"'\s<>()\\`});function wx(e,t){return e.replaceAll(a2,(r,n,s)=>{let i=s.trim(),o=d2.exec(i),a=o?o[2]:i,l=Xe(t,a);if(l===a)return r;return`url(${n}${o?`${o[1]}${l}${o[1]}`:l}${n})`})}function p2(e,t,r,n,s){let i=r.toLowerCase();if(n2.has(i))return Xe(s,n);if(s2.has(i)){let o=Np(n);return o.length===0?n:Cp(o.map((a)=>({descriptor:a.descriptor,url:Xe(s,a.url)})))}if(i==="style")return wx(n,s);if(i==="content"&&e==="meta"&&f2.test(t))return Xe(s,n);return n}function vx(e,t){if(t==="")return e;let r=e.replaceAll(c2,(n,s,i,o)=>{let a=i.replaceAll(l2,(l,c)=>`"${Xe(t,c)}"`);return s+a+o});return r=r.replaceAll(u2,(n,s,i,o)=>s+wx(i,t)+o),r.replaceAll(i2,(n,s,i)=>{if(i==="")return n;let o=s.toLowerCase(),a=i.replaceAll(o2,(l,c,u,p,h)=>{let m=p===void 0?"'":'"',b=p??h??"",g=p2(o,i,c,b,t);return g===b?l:`${c}=${m}${g}${m}`});return a===i?n:`<${s}${a}>`})}var n2,s2,i2,o2,a2,l2,c2,u2,f2,d2;var Sx=D(()=>{Vr();n2=new Set(["href","src","poster","action","formaction","data"]),s2=new Set(["srcset","imagesrcset"]),i2=/<([a-zA-Z][a-zA-Z0-9-]*)((?:"[^"]*"|'[^']*'|[^>"'])*)>/g,o2=/([a-zA-Z_:][\w:.-]*)\s*=\s*("([^"]*)"|'([^']*)')/g,a2=/url\(\s*(['"]?)([^'")]+)\1\s*\)/g,l2=/"(\/[^"/][^"]*)"/g,c2=/(<script\b[^>]*\btype\s*=\s*["']importmap["'][^>]*>)([\s\S]*?)(<\/script>)/gi,u2=/(<style\b[^>]*>)([\s\S]*?)(<\/style>)/gi,f2=/\b(?:property|name)\s*=\s*["'](?:og:|twitter:)[\w:.-]*(?:image|url|video|audio|player)[\w:.-]*["']/i,d2=/^("|"|'|')([\s\S]*)\1$/});var mu=C(function(KZ,Gx){var __dirname="/home/runner/work/jx/jx/node_modules/esbuild/lib",__filename="/home/runner/work/jx/jx/node_modules/esbuild/lib/main.js",{defineProperty:Dp,getOwnPropertyDescriptor:m2,getOwnPropertyNames:h2}=Object,g2=Object.prototype.hasOwnProperty,y2=(e,t)=>{for(var r in t)Dp(e,r,{get:t[r],enumerable:!0})},b2=(e,t,r,n)=>{if(t&&typeof t==="object"||typeof t==="function"){for(let s of h2(t))if(!g2.call(e,s)&&s!==r)Dp(e,s,{get:()=>t[s],enumerable:!(n=m2(t,s))||n.enumerable})}return e},x2=(e)=>b2(Dp({},"__esModule",{value:!0}),e),yl={};y2(yl,{analyzeMetafile:()=>Y2,analyzeMetafileSync:()=>eI,build:()=>U2,buildSync:()=>X2,context:()=>z2,default:()=>sI,formatMessages:()=>K2,formatMessagesSync:()=>Q2,initialize:()=>rI,stop:()=>tI,transform:()=>G2,transformSync:()=>Z2,version:()=>B2});Gx.exports=x2(yl);function Ex(e){let t=(n)=>{if(n===null)r.write8(0);else if(typeof n==="boolean")r.write8(1),r.write8(+n);else if(typeof n==="number")r.write8(2),r.write32(n|0);else if(typeof n==="string")r.write8(3),r.write(hn(n));else if(n instanceof Uint8Array)r.write8(4),r.write(n);else if(n instanceof Array){r.write8(5),r.write32(n.length);for(let s of n)t(s)}else{let s=Object.keys(n);r.write8(6),r.write32(s.length);for(let i of s)r.write(hn(i)),t(n[i])}},r=new Tx;return r.write32(0),r.write32(e.id<<1|+!e.isRequest),t(e.value),Ip(r.buf,r.len-4,0),r.buf.subarray(0,r.len)}function $2(e){let t=()=>{switch(r.read8()){case 0:return null;case 1:return!!r.read8();case 2:return r.read32();case 3:return Gi(r.read());case 4:return r.read();case 5:{let o=r.read32(),a=[];for(let l=0;l<o;l++)a.push(t());return a}case 6:{let o=r.read32(),a={};for(let l=0;l<o;l++)a[Gi(r.read())]=t();return a}default:throw Error("Invalid packet")}},r=new Tx(e),n=r.read32(),s=(n&1)===0;n>>>=1;let i=t();if(r.ptr!==e.length)throw Error("Invalid packet");return{id:n,isRequest:s,value:i}}var Tx=class{constructor(e=new Uint8Array(1024)){this.buf=e,this.len=0,this.ptr=0}_write(e){if(this.len+e>this.buf.length){let t=new Uint8Array((this.len+e)*2);t.set(this.buf),this.buf=t}return this.len+=e,this.len-e}write8(e){let t=this._write(1);this.buf[t]=e}write32(e){let t=this._write(4);Ip(this.buf,e,t)}write(e){let t=this._write(4+e.length);Ip(this.buf,e.length,t),this.buf.set(e,t+4)}_read(e){if(this.ptr+e>this.buf.length)throw Error("Invalid packet");return this.ptr+=e,this.ptr-e}read8(){return this.buf[this._read(1)]}read32(){return Ix(this.buf,this._read(4))}read(){let e=this.read32(),t=new Uint8Array(e),r=this._read(t.length);return t.set(this.buf.subarray(r,r+e)),t}},hn,Gi,Tp;if(typeof TextEncoder<"u"&&typeof TextDecoder<"u"){let e=new TextEncoder,t=new TextDecoder;hn=(r)=>e.encode(r),Gi=(r)=>t.decode(r),Tp='new TextEncoder().encode("")'}else if(typeof Buffer<"u")hn=(e)=>Buffer.from(e),Gi=(e)=>{let{buffer:t,byteOffset:r,byteLength:n}=e;return Buffer.from(t,r,n).toString()},Tp='Buffer.from("")';else throw Error("No UTF-8 codec found");if(!(hn("")instanceof Uint8Array))throw Error(`Invariant violation: "${Tp} instanceof Uint8Array" is incorrectly false
|
|
51
51
|
|
|
52
52
|
This indicates that your JavaScript environment is broken. You cannot use
|
|
53
53
|
esbuild in this environment because esbuild relies on this invariant. This
|
|
54
54
|
is not a problem with esbuild. You need to fix your environment instead.
|
|
55
|
-
`);function
|
|
56
|
-
`;break;case 114:u+="\r";break;case 116:u+="\t";break;case 117:{let p=0;for(let h=0;h<4;h++)if(c=e[l++],p<<=4,c>=48&&c<=57)p|=c-48;else if(c>=97&&c<=102)p|=c+-87;else if(c>=65&&c<=70)p|=c+-55;else zr(e,--l);u+=hs(p);break}default:zr(e,--l);break}else if(c<=127)u+=hs(c);else if((c&224)===192)u+=hs((c&31)<<6|e[l++]&63);else if((c&240)===224)u+=hs((c&15)<<12|(e[l++]&63)<<6|e[l++]&63);else if((c&248)==240){let p=(c&7)<<18|(e[l++]&63)<<12|(e[l++]&63)<<6|e[l++]&63;if(p>65535)p-=65536,u+=hs(p>>10&1023|55296),p=56320|p&1023;u+=hs(p)}}u[0];break}case 91:{u=[],t.push(i),r.push(a),n.push(o),i=null,a=u,o=1;continue}case 123:{u={},t.push(i),r.push(a),n.push(o),i=null,a=u,o=2;continue}case 93:{if(o!==1)zr(e,--l);u=a,i=t.pop(),a=r.pop(),o=n.pop();break}case 125:{if(o!==2)zr(e,--l);u=a,i=t.pop(),a=r.pop(),o=n.pop();break}default:zr(e,--l)}c=e[l];while(c<=32)c=e[++l];switch(o){case 0:{if(l===s)return u;break}case 1:{if(a.push(u),c===44){l++;continue}if(c===93)continue;break}case 2:{if(i===null){if(i=u,c===58){l++;continue}}else{if(a[i]=u,i=null,c===44){l++;continue}if(c===125)continue}break}}break}zr(e,l)}var At=JSON.stringify,g0="warning",y0="silent";function Mo(e,t){let r=[];for(let n of e){if(wr(n,t),n.indexOf(",")>=0)throw Error(`Invalid ${t}: ${n}`);r.push(n)}return r.join(",")}var Zc=()=>null,at=(e)=>typeof e==="boolean"?null:"a boolean",ie=(e)=>typeof e==="string"?null:"a string",Qc=(e)=>e instanceof RegExp?null:"a RegExp object",Hi=(e)=>typeof e==="number"&&e===(e|0)?null:"an integer",t2=(e)=>typeof e==="number"&&e===(e|0)&&e>=0&&e<=65535?null:"a valid port number",k0=(e)=>typeof e==="function"?null:"a function",gs=(e)=>Array.isArray(e)?null:"an array",vr=(e)=>Array.isArray(e)&&e.every((t)=>typeof t==="string")?null:"an array of strings",Fr=(e)=>typeof e==="object"&&e!==null&&!Array.isArray(e)?null:"an object",r2=(e)=>typeof e==="object"&&e!==null?null:"an array or an object",n2=(e)=>e instanceof WebAssembly.Module?null:"a WebAssembly.Module",b0=(e)=>typeof e==="object"&&!Array.isArray(e)?null:"an object or null",_0=(e)=>typeof e==="string"||typeof e==="boolean"?null:"a string or a boolean",s2=(e)=>typeof e==="string"||typeof e==="object"&&e!==null&&!Array.isArray(e)?null:"a string or an object",A0=(e)=>typeof e==="string"||Array.isArray(e)&&e.every((t)=>typeof t==="string")?null:"a string or an array of strings",R0=(e)=>typeof e==="string"||e instanceof Uint8Array?null:"a string or a Uint8Array",i2=(e)=>typeof e==="string"||e instanceof URL?null:"a string or a URL";function T(e,t,r,n){let s=e[r];if(t[r+""]=!0,s===void 0)return;let i=n(s);if(i!==null)throw Error(`${At(r)} must be ${i}`);return s}function St(e,t,r){for(let n in e)if(!(n in t))throw Error(`Invalid option ${r}: ${At(n)}`)}function o2(e){let t=Object.create(null),r=T(e,t,"wasmURL",i2),n=T(e,t,"wasmModule",n2),s=T(e,t,"worker",at);return St(e,t,"in initialize() call"),{wasmURL:r,wasmModule:n,worker:s}}function O0(e){let t;if(e!==void 0){t=Object.create(null);for(let r in e){let n=e[r];if(typeof n==="string"||n===!1)t[r]=n;else throw Error(`Expected ${At(r)} in mangle cache to map to either a string or false`)}}return t}function su(e,t,r,n,s){let i=T(t,r,"color",at),o=T(t,r,"logLevel",ie),a=T(t,r,"logLimit",Hi),l=T(t,r,"logStyle",ie);if(i!==void 0)e.push(`--color=${i}`);else if(n)e.push("--color=true");if(e.push(`--log-level=${o||s}`),e.push(`--log-limit=${a||0}`),l)e.push(`--log-style=${l}`)}function wr(e,t,r){if(typeof e!=="string")throw Error(`Expected value for ${t}${r!==void 0?" "+At(r):""} to be a string, got ${typeof e} instead`);return e}function C0(e,t,r){let n=T(t,r,"legalComments",ie),s=T(t,r,"sourceRoot",ie),i=T(t,r,"sourcesContent",at),o=T(t,r,"target",A0),a=T(t,r,"format",ie),l=T(t,r,"globalName",ie),c=T(t,r,"mangleProps",Qc),u=T(t,r,"reserveProps",Qc),p=T(t,r,"mangleQuoted",at),h=T(t,r,"minify",at),m=T(t,r,"minifySyntax",at),b=T(t,r,"minifyWhitespace",at),g=T(t,r,"minifyIdentifiers",at),y=T(t,r,"lineLimit",Hi),w=T(t,r,"drop",vr),P=T(t,r,"dropLabels",vr),S=T(t,r,"charset",ie),E=T(t,r,"treeShaking",at),k=T(t,r,"ignoreAnnotations",at),A=T(t,r,"jsx",ie),R=T(t,r,"jsxFactory",ie),_=T(t,r,"jsxFragment",ie),I=T(t,r,"jsxImportSource",ie),L=T(t,r,"jsxDev",at),J=T(t,r,"jsxSideEffects",at),F=T(t,r,"define",Fr),K=T(t,r,"logOverride",Fr),ae=T(t,r,"supported",Fr),me=T(t,r,"pure",vr),ce=T(t,r,"keepNames",at),se=T(t,r,"platform",ie),ue=T(t,r,"tsconfigRaw",s2),Ce=T(t,r,"absPaths",vr);if(n)e.push(`--legal-comments=${n}`);if(s!==void 0)e.push(`--source-root=${s}`);if(i!==void 0)e.push(`--sources-content=${i}`);if(o)e.push(`--target=${Mo(Array.isArray(o)?o:[o],"target")}`);if(a)e.push(`--format=${a}`);if(l)e.push(`--global-name=${l}`);if(se)e.push(`--platform=${se}`);if(ue)e.push(`--tsconfig-raw=${typeof ue==="string"?ue:JSON.stringify(ue)}`);if(h)e.push("--minify");if(m)e.push("--minify-syntax");if(b)e.push("--minify-whitespace");if(g)e.push("--minify-identifiers");if(y)e.push(`--line-limit=${y}`);if(S)e.push(`--charset=${S}`);if(E!==void 0)e.push(`--tree-shaking=${E}`);if(k)e.push("--ignore-annotations");if(w)for(let Y of w)e.push(`--drop:${wr(Y,"drop")}`);if(P)e.push(`--drop-labels=${Mo(P,"drop label")}`);if(Ce)e.push(`--abs-paths=${Mo(Ce,"abs paths")}`);if(c)e.push(`--mangle-props=${eu(c)}`);if(u)e.push(`--reserve-props=${eu(u)}`);if(p!==void 0)e.push(`--mangle-quoted=${p}`);if(A)e.push(`--jsx=${A}`);if(R)e.push(`--jsx-factory=${R}`);if(_)e.push(`--jsx-fragment=${_}`);if(I)e.push(`--jsx-import-source=${I}`);if(L)e.push("--jsx-dev");if(J)e.push("--jsx-side-effects");if(F)for(let Y in F){if(Y.indexOf("=")>=0)throw Error(`Invalid define: ${Y}`);e.push(`--define:${Y}=${wr(F[Y],"define",Y)}`)}if(K)for(let Y in K){if(Y.indexOf("=")>=0)throw Error(`Invalid log override: ${Y}`);e.push(`--log-override:${Y}=${wr(K[Y],"log override",Y)}`)}if(ae)for(let Y in ae){if(Y.indexOf("=")>=0)throw Error(`Invalid supported: ${Y}`);let Ee=ae[Y];if(typeof Ee!=="boolean")throw Error(`Expected value for supported ${At(Y)} to be a boolean, got ${typeof Ee} instead`);e.push(`--supported:${Y}=${Ee}`)}if(me)for(let Y of me)e.push(`--pure:${wr(Y,"pure")}`);if(ce)e.push("--keep-names")}function a2(e,t,r,n,s){var i;let o=[],a=[],l=Object.create(null),c=null,u=null;su(o,t,l,r,n),C0(o,t,l);let p=T(t,l,"sourcemap",_0),h=T(t,l,"bundle",at),m=T(t,l,"splitting",at),b=T(t,l,"preserveSymlinks",at),g=T(t,l,"metafile",at),y=T(t,l,"outfile",ie),w=T(t,l,"outdir",ie),P=T(t,l,"outbase",ie),S=T(t,l,"tsconfig",ie),E=T(t,l,"resolveExtensions",vr),k=T(t,l,"nodePaths",vr),A=T(t,l,"mainFields",vr),R=T(t,l,"conditions",vr),_=T(t,l,"external",vr),I=T(t,l,"packages",ie),L=T(t,l,"alias",Fr),J=T(t,l,"loader",Fr),F=T(t,l,"outExtension",Fr),K=T(t,l,"publicPath",ie),ae=T(t,l,"entryNames",ie),me=T(t,l,"chunkNames",ie),ce=T(t,l,"assetNames",ie),se=T(t,l,"inject",vr),ue=T(t,l,"banner",Fr),Ce=T(t,l,"footer",Fr),Y=T(t,l,"entryPoints",r2),Ee=T(t,l,"absWorkingDir",ie),oe=T(t,l,"stdin",Fr),W=(i=T(t,l,"write",at))!=null?i:s,ot=T(t,l,"allowOverwrite",at),de=T(t,l,"mangleCache",Fr);if(l.plugins=!0,St(t,l,`in ${e}() call`),p)o.push(`--sourcemap${p===!0?"":`=${p}`}`);if(h)o.push("--bundle");if(ot)o.push("--allow-overwrite");if(m)o.push("--splitting");if(b)o.push("--preserve-symlinks");if(g)o.push("--metafile");if(y)o.push(`--outfile=${y}`);if(w)o.push(`--outdir=${w}`);if(P)o.push(`--outbase=${P}`);if(S)o.push(`--tsconfig=${S}`);if(I)o.push(`--packages=${I}`);if(E)o.push(`--resolve-extensions=${Mo(E,"resolve extension")}`);if(K)o.push(`--public-path=${K}`);if(ae)o.push(`--entry-names=${ae}`);if(me)o.push(`--chunk-names=${me}`);if(ce)o.push(`--asset-names=${ce}`);if(A)o.push(`--main-fields=${Mo(A,"main field")}`);if(R)o.push(`--conditions=${Mo(R,"condition")}`);if(_)for(let X of _)o.push(`--external:${wr(X,"external")}`);if(L)for(let X in L){if(X.indexOf("=")>=0)throw Error(`Invalid package name in alias: ${X}`);o.push(`--alias:${X}=${wr(L[X],"alias",X)}`)}if(ue)for(let X in ue){if(X.indexOf("=")>=0)throw Error(`Invalid banner file type: ${X}`);o.push(`--banner:${X}=${wr(ue[X],"banner",X)}`)}if(Ce)for(let X in Ce){if(X.indexOf("=")>=0)throw Error(`Invalid footer file type: ${X}`);o.push(`--footer:${X}=${wr(Ce[X],"footer",X)}`)}if(se)for(let X of se)o.push(`--inject:${wr(X,"inject")}`);if(J)for(let X in J){if(X.indexOf("=")>=0)throw Error(`Invalid loader extension: ${X}`);o.push(`--loader:${X}=${wr(J[X],"loader",X)}`)}if(F)for(let X in F){if(X.indexOf("=")>=0)throw Error(`Invalid out extension: ${X}`);o.push(`--out-extension:${X}=${wr(F[X],"out extension",X)}`)}if(Y)if(Array.isArray(Y))for(let X=0,Pt=Y.length;X<Pt;X++){let et=Y[X];if(typeof et==="object"&&et!==null){let Ut=Object.create(null),$t=T(et,Ut,"in",ie),Ot=T(et,Ut,"out",ie);if(St(et,Ut,"in entry point at index "+X),$t===void 0)throw Error('Missing property "in" for entry point at index '+X);if(Ot===void 0)throw Error('Missing property "out" for entry point at index '+X);a.push([Ot,$t])}else a.push(["",wr(et,"entry point at index "+X)])}else for(let X in Y)a.push([X,wr(Y[X],"entry point",X)]);if(oe){let X=Object.create(null),Pt=T(oe,X,"contents",R0),et=T(oe,X,"resolveDir",ie),Ut=T(oe,X,"sourcefile",ie),$t=T(oe,X,"loader",ie);if(St(oe,X,'in "stdin" object'),Ut)o.push(`--sourcefile=${Ut}`);if($t)o.push(`--loader=${$t}`);if(et)u=et;if(typeof Pt==="string")c=mn(Pt);else if(Pt instanceof Uint8Array)c=Pt}let xt=[];if(k)for(let X of k)X+="",xt.push(X);return{entries:a,flags:o,write:W,stdinContents:c,stdinResolveDir:u,absWorkingDir:Ee,nodePaths:xt,mangleCache:O0(de)}}function l2(e,t,r,n){let s=[],i=Object.create(null);su(s,t,i,r,n),C0(s,t,i);let o=T(t,i,"sourcemap",_0),a=T(t,i,"sourcefile",ie),l=T(t,i,"loader",ie),c=T(t,i,"banner",ie),u=T(t,i,"footer",ie),p=T(t,i,"mangleCache",Fr);if(St(t,i,`in ${e}() call`),o)s.push(`--sourcemap=${o===!0?"external":o}`);if(a)s.push(`--sourcefile=${a}`);if(l)s.push(`--loader=${l}`);if(c)s.push(`--banner=${c}`);if(u)s.push(`--footer=${u}`);return{flags:s,mangleCache:O0(p)}}function N0(e){let t={},r={didClose:!1,reason:""},n={},s=0,i=0,o=new Uint8Array(16384),a=0,l=(S)=>{let E=a+S.length;if(E>o.length){let A=new Uint8Array(E*2);A.set(o),o=A}o.set(S,a),a+=S.length;let k=0;while(k+4<=a){let A=j0(o,k);if(k+4+A>a)break;k+=4,b(o.subarray(k,k+A)),k+=A}if(k>0)o.copyWithin(0,k,a),a-=k},c=(S)=>{if(r.didClose=!0,S)r.reason=": "+(S.message||S);let E="The service was stopped"+r.reason;for(let k in n)n[k](E,null);n={}},u=(S,E,k)=>{if(r.didClose)return k("The service is no longer running"+r.reason,null);let A=s++;if(n[A]=(R,_)=>{try{k(R,_)}finally{if(S)S.unref()}},S)S.ref();e.writeToStdin(h0({id:A,isRequest:!0,value:E}))},p=(S,E)=>{if(r.didClose)throw Error("The service is no longer running"+r.reason);e.writeToStdin(h0({id:S,isRequest:!1,value:E}))},h=async(S,E)=>{try{if(E.command==="ping"){p(S,{});return}if(typeof E.key==="number"){let k=t[E.key];if(!k)return;let A=k[E.command];if(A){await A(S,E);return}}throw Error("Invalid command: "+E.command)}catch(k){let A=[Wi(k,e,null,void 0,"")];try{p(S,{errors:A})}catch{}}},m=!0,b=(S)=>{if(m){m=!1;let k=String.fromCharCode(...S);if(k!=="0.28.2")throw Error(`Cannot start service: Host version "0.28.2" does not match binary version ${At(k)}`);return}let E=QT(S);if(E.isRequest)h(E.id,E.value);else{let k=n[E.id];if(delete n[E.id],E.value.error)k(E.value.error,{});else k(null,E.value)}};return{readFromStdout:l,afterClose:c,service:{buildOrContext:({callName:S,refs:E,options:k,isTTY:A,defaultWD:R,callback:_})=>{let I=0,L=i++,J={},F={ref(){if(++I===1){if(E)E.ref()}},unref(){if(--I===0){if(delete t[L],E)E.unref()}}};t[L]=J,F.ref(),c2(S,L,u,p,F,e,J,k,A,R,(K,ae)=>{try{_(K,ae)}finally{F.unref()}})},transform:({callName:S,refs:E,input:k,options:A,isTTY:R,fs:_,callback:I})=>{let L=T0(),J=(F)=>{try{if(typeof k!=="string"&&!(k instanceof Uint8Array))throw Error('The input to "transform" must be a string or a Uint8Array');let{flags:K,mangleCache:ae}=l2(S,A,R,y0),me={command:"transform",flags:K,inputFS:F!==null,input:F!==null?mn(F):typeof k==="string"?mn(k):k};if(ae)me.mangleCache=ae;u(E,me,(ce,se)=>{if(ce)return I(Error(ce),null);let ue=Do(se.errors,L),Ce=Do(se.warnings,L),Y=1,Ee=()=>{if(--Y===0){let oe={warnings:Ce,code:se.code,map:se.map,mangleCache:void 0,legalComments:void 0};if("legalComments"in se)oe.legalComments=se==null?void 0:se.legalComments;if(se.mangleCache)oe.mangleCache=se==null?void 0:se.mangleCache;I(null,oe)}};if(ue.length>0)return I(cl("Transform failed",ue,Ce),null);if(se.codeFS)Y++,_.readFile(se.code,(oe,W)=>{if(oe!==null)I(oe,null);else se.code=W,Ee()});if(se.mapFS)Y++,_.readFile(se.map,(oe,W)=>{if(oe!==null)I(oe,null);else se.map=W,Ee()});Ee()})}catch(K){let ae=[];try{su(ae,A,{},R,y0)}catch{}let me=Wi(K,e,L,void 0,"");u(E,{command:"error",flags:ae,error:me},()=>{me.detail=L.load(me.detail),I(cl("Transform failed",[me],[]),null)})}};if((typeof k==="string"||k instanceof Uint8Array)&&k.length>1048576){let F=J;J=()=>_.writeFile(k,F)}J(null)},formatMessages:({callName:S,refs:E,messages:k,options:A,callback:R})=>{if(!A)throw Error(`Missing second argument in ${S}() call`);let _={},I=T(A,_,"kind",ie),L=T(A,_,"color",at),J=T(A,_,"terminalWidth",Hi),F=T(A,_,"logStyle",ie);if(St(A,_,`in ${S}() call`),I===void 0)throw Error(`Missing "kind" in ${S}() call`);if(I!=="error"&&I!=="warning")throw Error(`Expected "kind" to be "error" or "warning" in ${S}() call`);let K={command:"format-msgs",messages:ys(k,"messages",null,"",J),isWarning:I==="warning"};if(L!==void 0)K.color=L;if(J!==void 0)K.terminalWidth=J;if(F!==void 0)K.logStyle=F;u(E,K,(ae,me)=>{if(ae)return R(Error(ae),null);R(null,me.messages)})},analyzeMetafile:({callName:S,refs:E,metafile:k,options:A,callback:R})=>{if(A===void 0)A={};let _={},I=T(A,_,"color",at),L=T(A,_,"verbose",at);St(A,_,`in ${S}() call`);let J={command:"analyze-metafile",metafile:k};if(I!==void 0)J.color=I;if(L!==void 0)J.verbose=L;u(E,J,(F,K)=>{if(F)return R(Error(F),null);R(null,K.result)})}}}}function c2(e,t,r,n,s,i,o,a,l,c,u){let p=T0(),h=e==="context",m=(y,w)=>{let P=[];try{su(P,a,{},l,g0)}catch{}let S=Wi(y,i,p,void 0,w);r(s,{command:"error",flags:P,error:S},()=>{S.detail=p.load(S.detail),u(cl(h?"Context failed":"Build failed",[S],[]),null)})},b;if(typeof a==="object"){let y=a.plugins;if(y!==void 0){if(!Array.isArray(y))return m(Error('"plugins" must be an array'),"");b=y}}if(b&&b.length>0){if(i.isSync)return m(Error("Cannot use plugins in synchronous API calls"),"");u2(t,r,n,s,i,o,a,b,p).then((y)=>{if(!y.ok)return m(y.error,y.pluginName);try{g(y.requestPlugins,y.runOnEndCallbacks,y.scheduleOnDisposeCallbacks)}catch(w){m(w,"")}},(y)=>m(y,""));return}try{g(null,(y,w)=>w([],[]),()=>{})}catch(y){m(y,"")}function g(y,w,P){let S=i.hasFS,{entries:E,flags:k,write:A,stdinContents:R,stdinResolveDir:_,absWorkingDir:I,nodePaths:L,mangleCache:J}=a2(e,a,l,g0,S);if(A&&!i.hasFS)throw Error('The "write" option is unavailable in this environment');let F={command:"build",key:t,entries:E,flags:k,write:A,stdinContents:R,stdinResolveDir:_,absWorkingDir:I||c,nodePaths:L,context:h};if(y)F.plugins=y;if(J)F.mangleCache=J;let K=(ce,se)=>{let ue={errors:Do(ce.errors,p),warnings:Do(ce.warnings,p),outputFiles:void 0,metafile:void 0,mangleCache:void 0},Ce=ue.errors.slice(),Y=ue.warnings.slice();if(ce.outputFiles)ue.outputFiles=ce.outputFiles.map(d2);if(ce.metafile&&ce.metafile.length)ue.metafile=p2(ce.metafile);if(ce.mangleCache)ue.mangleCache=ce.mangleCache;if(ce.writeToStdout!==void 0)console.log(zi(ce.writeToStdout).replace(/\n$/,""));w(ue,(Ee,oe)=>{if(Ce.length>0||Ee.length>0){let W=cl("Build failed",Ce.concat(Ee),Y.concat(oe));return se(W,null,Ee,oe)}se(null,ue,Ee,oe)})},ae,me;if(h)o["on-end"]=(ce,se)=>new Promise((ue)=>{K(se,(Ce,Y,Ee,oe)=>{let W={errors:Ee,warnings:oe};if(me)me(Ce,Y);ae=void 0,me=void 0,n(ce,W),ue()})});r(s,F,(ce,se)=>{if(ce)return u(Error(ce),null);if(!h)return K(se,(Y,Ee)=>(P(),u(Y,Ee)));if(se.errors.length>0)return u(cl("Context failed",se.errors,se.warnings),null);let ue=!1,Ce={rebuild:()=>{if(!ae)ae=new Promise((Y,Ee)=>{let oe;me=(ot,de)=>{if(!oe)oe=()=>ot?Ee(ot):Y(de)};let W=()=>{r(s,{command:"rebuild",key:t},(de,xt)=>{if(de)Ee(Error(de));else if(oe)oe();else W()})};W()});return ae},watch:(Y={})=>new Promise((Ee,oe)=>{if(!i.hasFS)throw Error('Cannot use the "watch" API in this environment');let W={},ot=T(Y,W,"delay",Hi);St(Y,W,"in watch() call");let de={command:"watch",key:t};if(ot)de.delay=ot;r(s,de,(xt)=>{if(xt)oe(Error(xt));else Ee(void 0)})}),serve:(Y={})=>new Promise((Ee,oe)=>{if(!i.hasFS)throw Error('Cannot use the "serve" API in this environment');let W={},ot=T(Y,W,"port",t2),de=T(Y,W,"host",ie),xt=T(Y,W,"servedir",ie),X=T(Y,W,"keyfile",ie),Pt=T(Y,W,"certfile",ie),et=T(Y,W,"fallback",ie),Ut=T(Y,W,"cors",Fr),$t=T(Y,W,"onRequest",k0);St(Y,W,"in serve() call");let Ot={command:"serve",key:t,onRequest:!!$t};if(ot!==void 0)Ot.port=ot;if(de!==void 0)Ot.host=de;if(xt!==void 0)Ot.servedir=xt;if(X!==void 0)Ot.keyfile=X;if(Pt!==void 0)Ot.certfile=Pt;if(et!==void 0)Ot.fallback=et;if(Ut){let zt={},qt=T(Ut,zt,"origin",A0);if(St(Ut,zt,'on "cors" object'),Array.isArray(qt))Ot.corsOrigin=qt;else if(qt!==void 0)Ot.corsOrigin=[qt]}r(s,Ot,(zt,qt)=>{if(zt)return oe(Error(zt));if($t)o["serve-request"]=(es,ts)=>{$t(ts.args),n(es,{})};Ee(qt)})}),cancel:()=>new Promise((Y)=>{if(ue)return Y();r(s,{command:"cancel",key:t},()=>{Y()})}),dispose:()=>new Promise((Y)=>{if(ue)return Y();ue=!0,r(s,{command:"dispose",key:t},()=>{Y(),P(),s.unref()})})};s.ref(),u(null,Ce)})}}var u2=async(e,t,r,n,s,i,o,a,l)=>{let c=[],u=[],p={},h={},m=[],b=0,g=0,y=[],w=!1;a=[...a];for(let E of a){let k={};if(typeof E!=="object")throw Error(`Plugin at index ${g} must be an object`);let A=T(E,k,"name",ie);if(typeof A!=="string"||A==="")throw Error(`Plugin at index ${g} is missing a name`);try{let R=T(E,k,"setup",k0);if(typeof R!=="function")throw Error("Plugin is missing a setup function");St(E,k,`on plugin ${At(A)}`);let _={name:A,onStart:!1,onEnd:!1,onResolve:[],onLoad:[]};g++;let L=R({initialOptions:o,resolve:(J,F={})=>{if(!w)throw Error('Cannot call "resolve" before plugin setup has completed');if(typeof J!=="string")throw Error("The path to resolve must be a string");let K=Object.create(null),ae=T(F,K,"pluginName",ie),me=T(F,K,"importer",ie),ce=T(F,K,"namespace",ie),se=T(F,K,"resolveDir",ie),ue=T(F,K,"kind",ie),Ce=T(F,K,"pluginData",Zc),Y=T(F,K,"with",Fr);return St(F,K,"in resolve() call"),new Promise((Ee,oe)=>{let W={command:"resolve",path:J,key:e,pluginName:A};if(ae!=null)W.pluginName=ae;if(me!=null)W.importer=me;if(ce!=null)W.namespace=ce;if(se!=null)W.resolveDir=se;if(ue!=null)W.kind=ue;else throw Error('Must specify "kind" when calling "resolve"');if(Ce!=null)W.pluginData=l.store(Ce);if(Y!=null)W.with=f2(Y,"with");t(n,W,(ot,de)=>{if(ot!==null)oe(Error(ot));else Ee({errors:Do(de.errors,l),warnings:Do(de.warnings,l),path:de.path,external:de.external,sideEffects:de.sideEffects,namespace:de.namespace,suffix:de.suffix,pluginData:l.load(de.pluginData)})})})},onStart(J){let K=Yc(Error('This error came from the "onStart" callback registered here:'),s,"onStart");c.push({name:A,callback:J,note:K}),_.onStart=!0},onEnd(J){let K=Yc(Error('This error came from the "onEnd" callback registered here:'),s,"onEnd");u.push({name:A,callback:J,note:K}),_.onEnd=!0},onResolve(J,F){let ae=Yc(Error('This error came from the "onResolve" callback registered here:'),s,"onResolve"),me={},ce=T(J,me,"filter",Qc),se=T(J,me,"namespace",ie);if(St(J,me,`in onResolve() call for plugin ${At(A)}`),ce==null)throw Error("onResolve() call is missing a filter");let ue=b++;p[ue]={name:A,callback:F,note:ae},_.onResolve.push({id:ue,filter:eu(ce),namespace:se||""})},onLoad(J,F){let ae=Yc(Error('This error came from the "onLoad" callback registered here:'),s,"onLoad"),me={},ce=T(J,me,"filter",Qc),se=T(J,me,"namespace",ie);if(St(J,me,`in onLoad() call for plugin ${At(A)}`),ce==null)throw Error("onLoad() call is missing a filter");let ue=b++;h[ue]={name:A,callback:F,note:ae},_.onLoad.push({id:ue,filter:eu(ce),namespace:se||""})},onDispose(J){m.push(J)},esbuild:s.esbuild});if(L)await L;y.push(_)}catch(R){return{ok:!1,error:R,pluginName:A}}}i["on-start"]=async(E,k)=>{l.clear();let A={errors:[],warnings:[]};await Promise.all(c.map(async({name:R,callback:_,note:I})=>{try{let L=await _();if(L!=null){if(typeof L!=="object")throw Error(`Expected onStart() callback in plugin ${At(R)} to return an object`);let J={},F=T(L,J,"errors",gs),K=T(L,J,"warnings",gs);if(St(L,J,`from onStart() callback in plugin ${At(R)}`),F!=null)A.errors.push(...ys(F,"errors",l,R,void 0));if(K!=null)A.warnings.push(...ys(K,"warnings",l,R,void 0))}}catch(L){A.errors.push(Wi(L,s,l,I&&I(),R))}})),r(E,A)},i["on-resolve"]=async(E,k)=>{let A={},R="",_,I;for(let L of k.ids)try{({name:R,callback:_,note:I}=p[L]);let J=await _({path:k.path,importer:k.importer,namespace:k.namespace,resolveDir:k.resolveDir,kind:k.kind,pluginData:l.load(k.pluginData),with:k.with});if(J!=null){if(typeof J!=="object")throw Error(`Expected onResolve() callback in plugin ${At(R)} to return an object`);let F={},K=T(J,F,"pluginName",ie),ae=T(J,F,"path",ie),me=T(J,F,"namespace",ie),ce=T(J,F,"suffix",ie),se=T(J,F,"external",at),ue=T(J,F,"sideEffects",at),Ce=T(J,F,"pluginData",Zc),Y=T(J,F,"errors",gs),Ee=T(J,F,"warnings",gs),oe=T(J,F,"watchFiles",vr),W=T(J,F,"watchDirs",vr);if(St(J,F,`from onResolve() callback in plugin ${At(R)}`),A.id=L,K!=null)A.pluginName=K;if(ae!=null)A.path=ae;if(me!=null)A.namespace=me;if(ce!=null)A.suffix=ce;if(se!=null)A.external=se;if(ue!=null)A.sideEffects=ue;if(Ce!=null)A.pluginData=l.store(Ce);if(Y!=null)A.errors=ys(Y,"errors",l,R,void 0);if(Ee!=null)A.warnings=ys(Ee,"warnings",l,R,void 0);if(oe!=null)A.watchFiles=Xc(oe,"watchFiles");if(W!=null)A.watchDirs=Xc(W,"watchDirs");break}}catch(J){A={id:L,errors:[Wi(J,s,l,I&&I(),R)]};break}r(E,A)},i["on-load"]=async(E,k)=>{let A={},R="",_,I;for(let L of k.ids)try{({name:R,callback:_,note:I}=h[L]);let J=await _({path:k.path,namespace:k.namespace,suffix:k.suffix,pluginData:l.load(k.pluginData),with:k.with});if(J!=null){if(typeof J!=="object")throw Error(`Expected onLoad() callback in plugin ${At(R)} to return an object`);let F={},K=T(J,F,"pluginName",ie),ae=T(J,F,"contents",R0),me=T(J,F,"resolveDir",ie),ce=T(J,F,"pluginData",Zc),se=T(J,F,"loader",ie),ue=T(J,F,"errors",gs),Ce=T(J,F,"warnings",gs),Y=T(J,F,"watchFiles",vr),Ee=T(J,F,"watchDirs",vr);if(St(J,F,`from onLoad() callback in plugin ${At(R)}`),A.id=L,K!=null)A.pluginName=K;if(ae instanceof Uint8Array)A.contents=ae;else if(ae!=null)A.contents=mn(ae);if(me!=null)A.resolveDir=me;if(ce!=null)A.pluginData=l.store(ce);if(se!=null)A.loader=se;if(ue!=null)A.errors=ys(ue,"errors",l,R,void 0);if(Ce!=null)A.warnings=ys(Ce,"warnings",l,R,void 0);if(Y!=null)A.watchFiles=Xc(Y,"watchFiles");if(Ee!=null)A.watchDirs=Xc(Ee,"watchDirs");break}}catch(J){A={id:L,errors:[Wi(J,s,l,I&&I(),R)]};break}r(E,A)};let P=(E,k)=>k([],[]);if(u.length>0)P=(E,k)=>{(async()=>{let A=[],R=[];for(let{name:_,callback:I,note:L}of u){let J,F;try{let K=await I(E);if(K!=null){if(typeof K!=="object")throw Error(`Expected onEnd() callback in plugin ${At(_)} to return an object`);let ae={},me=T(K,ae,"errors",gs),ce=T(K,ae,"warnings",gs);if(St(K,ae,`from onEnd() callback in plugin ${At(_)}`),me!=null)J=ys(me,"errors",l,_,void 0);if(ce!=null)F=ys(ce,"warnings",l,_,void 0)}}catch(K){J=[Wi(K,s,l,L&&L(),_)]}if(J){A.push(...J);try{E.errors.push(...J)}catch{}}if(F){R.push(...F);try{E.warnings.push(...F)}catch{}}}k(A,R)})()};let S=()=>{for(let E of m)setTimeout(()=>E(),0)};return w=!0,{ok:!0,requestPlugins:y,runOnEndCallbacks:P,scheduleOnDisposeCallbacks:S}};function T0(){let e=new Map,t=0;return{clear(){e.clear()},load(r){return e.get(r)},store(r){if(r===void 0)return-1;let n=t++;return e.set(n,r),n}}}function Yc(e,t,r){let n,s=!1;return()=>{if(s)return n;s=!0;try{let i=(e.stack+"").split(`
|
|
57
|
-
`);i.splice(1,1);let o=
|
|
58
|
-
`),"")}catch{}return{id:"",pluginName:s,text:i,location:o,notes:n?[n]:[],detail:r?r.store(e):-1}}function
|
|
55
|
+
`);function Ix(e,t){return(e[t++]|e[t++]<<8|e[t++]<<16|e[t++]<<24)>>>0}function Ip(e,t,r){e[r++]=t,e[r++]=t>>8,e[r++]=t>>16,e[r++]=t>>24}var bs=String.fromCharCode;function Kr(e,t,r){let n=e[t],s=1,i=0;for(let o=0;o<t;o++)if(e[o]===10)s++,i=0;else i++;throw SyntaxError(r?r:t===e.length?"Unexpected end of input while parsing JSON":n>=32&&n<=126?`Unexpected character ${bs(n)} in JSON at position ${t} (line ${s}, column ${i})`:`Unexpected byte 0x${n.toString(16)} in JSON at position ${t} (line ${s}, column ${i})`)}function w2(e){if(!(e instanceof Uint8Array))throw Error("JSON input must be a Uint8Array");let t=[],r=[],n=[],s=e.length,i=null,o=0,a,l=0;while(l<s){let c=e[l++];if(c<=32)continue;let u;if(o===2&&i===null&&c!==34&&c!==125)Kr(e,--l);switch(c){case 116:{if(e[l++]!==114||e[l++]!==117||e[l++]!==101)Kr(e,--l);u=!0;break}case 102:{if(e[l++]!==97||e[l++]!==108||e[l++]!==115||e[l++]!==101)Kr(e,--l);u=!1;break}case 110:{if(e[l++]!==117||e[l++]!==108||e[l++]!==108)Kr(e,--l);u=null;break}case 45:case 46:case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:{let p=l;u=bs(c),c=e[l];while(!0){switch(c){case 43:case 45:case 46:case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:case 101:case 69:{u+=bs(c),c=e[++l];continue}}break}if(u=+u,isNaN(u))Kr(e,--p,"Invalid number");break}case 34:{u="";while(!0){if(l>=s)Kr(e,s);if(c=e[l++],c===34)break;else if(c===92)switch(e[l++]){case 34:u+='"';break;case 47:u+="/";break;case 92:u+="\\";break;case 98:u+="\b";break;case 102:u+="\f";break;case 110:u+=`
|
|
56
|
+
`;break;case 114:u+="\r";break;case 116:u+="\t";break;case 117:{let p=0;for(let h=0;h<4;h++)if(c=e[l++],p<<=4,c>=48&&c<=57)p|=c-48;else if(c>=97&&c<=102)p|=c+-87;else if(c>=65&&c<=70)p|=c+-55;else Kr(e,--l);u+=bs(p);break}default:Kr(e,--l);break}else if(c<=127)u+=bs(c);else if((c&224)===192)u+=bs((c&31)<<6|e[l++]&63);else if((c&240)===224)u+=bs((c&15)<<12|(e[l++]&63)<<6|e[l++]&63);else if((c&248)==240){let p=(c&7)<<18|(e[l++]&63)<<12|(e[l++]&63)<<6|e[l++]&63;if(p>65535)p-=65536,u+=bs(p>>10&1023|55296),p=56320|p&1023;u+=bs(p)}}u[0];break}case 91:{u=[],t.push(i),r.push(a),n.push(o),i=null,a=u,o=1;continue}case 123:{u={},t.push(i),r.push(a),n.push(o),i=null,a=u,o=2;continue}case 93:{if(o!==1)Kr(e,--l);u=a,i=t.pop(),a=r.pop(),o=n.pop();break}case 125:{if(o!==2)Kr(e,--l);u=a,i=t.pop(),a=r.pop(),o=n.pop();break}default:Kr(e,--l)}c=e[l];while(c<=32)c=e[++l];switch(o){case 0:{if(l===s)return u;break}case 1:{if(a.push(u),c===44){l++;continue}if(c===93)continue;break}case 2:{if(i===null){if(i=u,c===58){l++;continue}}else{if(a[i]=u,i=null,c===44){l++;continue}if(c===125)continue}break}}break}Kr(e,l)}var At=JSON.stringify,jx="warning",Px="silent";function Vo(e,t){let r=[];for(let n of e){if(Sr(n,t),n.indexOf(",")>=0)throw Error(`Invalid ${t}: ${n}`);r.push(n)}return r.join(",")}var iu=()=>null,at=(e)=>typeof e==="boolean"?null:"a boolean",ie=(e)=>typeof e==="string"?null:"a string",ou=(e)=>e instanceof RegExp?null:"a RegExp object",Bi=(e)=>typeof e==="number"&&e===(e|0)?null:"an integer",v2=(e)=>typeof e==="number"&&e===(e|0)&&e>=0&&e<=65535?null:"a valid port number",Jx=(e)=>typeof e==="function"?null:"a function",xs=(e)=>Array.isArray(e)?null:"an array",Er=(e)=>Array.isArray(e)&&e.every((t)=>typeof t==="string")?null:"an array of strings",Wr=(e)=>typeof e==="object"&&e!==null&&!Array.isArray(e)?null:"an object",S2=(e)=>typeof e==="object"&&e!==null?null:"an array or an object",E2=(e)=>e instanceof WebAssembly.Module?null:"a WebAssembly.Module",kx=(e)=>typeof e==="object"&&!Array.isArray(e)?null:"an object or null",Mx=(e)=>typeof e==="string"||typeof e==="boolean"?null:"a string or a boolean",j2=(e)=>typeof e==="string"||typeof e==="object"&&e!==null&&!Array.isArray(e)?null:"a string or an object",Dx=(e)=>typeof e==="string"||Array.isArray(e)&&e.every((t)=>typeof t==="string")?null:"a string or an array of strings",Lx=(e)=>typeof e==="string"||e instanceof Uint8Array?null:"a string or a Uint8Array",P2=(e)=>typeof e==="string"||e instanceof URL?null:"a string or a URL";function T(e,t,r,n){let s=e[r];if(t[r+""]=!0,s===void 0)return;let i=n(s);if(i!==null)throw Error(`${At(r)} must be ${i}`);return s}function St(e,t,r){for(let n in e)if(!(n in t))throw Error(`Invalid option ${r}: ${At(n)}`)}function k2(e){let t=Object.create(null),r=T(e,t,"wasmURL",P2),n=T(e,t,"wasmModule",E2),s=T(e,t,"worker",at);return St(e,t,"in initialize() call"),{wasmURL:r,wasmModule:n,worker:s}}function Fx(e){let t;if(e!==void 0){t=Object.create(null);for(let r in e){let n=e[r];if(typeof n==="string"||n===!1)t[r]=n;else throw Error(`Expected ${At(r)} in mangle cache to map to either a string or false`)}}return t}function fu(e,t,r,n,s){let i=T(t,r,"color",at),o=T(t,r,"logLevel",ie),a=T(t,r,"logLimit",Bi),l=T(t,r,"logStyle",ie);if(i!==void 0)e.push(`--color=${i}`);else if(n)e.push("--color=true");if(e.push(`--log-level=${o||s}`),e.push(`--log-limit=${a||0}`),l)e.push(`--log-style=${l}`)}function Sr(e,t,r){if(typeof e!=="string")throw Error(`Expected value for ${t}${r!==void 0?" "+At(r):""} to be a string, got ${typeof e} instead`);return e}function qx(e,t,r){let n=T(t,r,"legalComments",ie),s=T(t,r,"sourceRoot",ie),i=T(t,r,"sourcesContent",at),o=T(t,r,"target",Dx),a=T(t,r,"format",ie),l=T(t,r,"globalName",ie),c=T(t,r,"mangleProps",ou),u=T(t,r,"reserveProps",ou),p=T(t,r,"mangleQuoted",at),h=T(t,r,"minify",at),m=T(t,r,"minifySyntax",at),b=T(t,r,"minifyWhitespace",at),g=T(t,r,"minifyIdentifiers",at),y=T(t,r,"lineLimit",Bi),w=T(t,r,"drop",Er),j=T(t,r,"dropLabels",Er),S=T(t,r,"charset",ie),E=T(t,r,"treeShaking",at),k=T(t,r,"ignoreAnnotations",at),A=T(t,r,"jsx",ie),R=T(t,r,"jsxFactory",ie),_=T(t,r,"jsxFragment",ie),I=T(t,r,"jsxImportSource",ie),L=T(t,r,"jsxDev",at),J=T(t,r,"jsxSideEffects",at),F=T(t,r,"define",Wr),K=T(t,r,"logOverride",Wr),ae=T(t,r,"supported",Wr),me=T(t,r,"pure",Er),ce=T(t,r,"keepNames",at),se=T(t,r,"platform",ie),ue=T(t,r,"tsconfigRaw",j2),Ne=T(t,r,"absPaths",Er);if(n)e.push(`--legal-comments=${n}`);if(s!==void 0)e.push(`--source-root=${s}`);if(i!==void 0)e.push(`--sources-content=${i}`);if(o)e.push(`--target=${Vo(Array.isArray(o)?o:[o],"target")}`);if(a)e.push(`--format=${a}`);if(l)e.push(`--global-name=${l}`);if(se)e.push(`--platform=${se}`);if(ue)e.push(`--tsconfig-raw=${typeof ue==="string"?ue:JSON.stringify(ue)}`);if(h)e.push("--minify");if(m)e.push("--minify-syntax");if(b)e.push("--minify-whitespace");if(g)e.push("--minify-identifiers");if(y)e.push(`--line-limit=${y}`);if(S)e.push(`--charset=${S}`);if(E!==void 0)e.push(`--tree-shaking=${E}`);if(k)e.push("--ignore-annotations");if(w)for(let Y of w)e.push(`--drop:${Sr(Y,"drop")}`);if(j)e.push(`--drop-labels=${Vo(j,"drop label")}`);if(Ne)e.push(`--abs-paths=${Vo(Ne,"abs paths")}`);if(c)e.push(`--mangle-props=${au(c)}`);if(u)e.push(`--reserve-props=${au(u)}`);if(p!==void 0)e.push(`--mangle-quoted=${p}`);if(A)e.push(`--jsx=${A}`);if(R)e.push(`--jsx-factory=${R}`);if(_)e.push(`--jsx-fragment=${_}`);if(I)e.push(`--jsx-import-source=${I}`);if(L)e.push("--jsx-dev");if(J)e.push("--jsx-side-effects");if(F)for(let Y in F){if(Y.indexOf("=")>=0)throw Error(`Invalid define: ${Y}`);e.push(`--define:${Y}=${Sr(F[Y],"define",Y)}`)}if(K)for(let Y in K){if(Y.indexOf("=")>=0)throw Error(`Invalid log override: ${Y}`);e.push(`--log-override:${Y}=${Sr(K[Y],"log override",Y)}`)}if(ae)for(let Y in ae){if(Y.indexOf("=")>=0)throw Error(`Invalid supported: ${Y}`);let Ee=ae[Y];if(typeof Ee!=="boolean")throw Error(`Expected value for supported ${At(Y)} to be a boolean, got ${typeof Ee} instead`);e.push(`--supported:${Y}=${Ee}`)}if(me)for(let Y of me)e.push(`--pure:${Sr(Y,"pure")}`);if(ce)e.push("--keep-names")}function _2(e,t,r,n,s){var i;let o=[],a=[],l=Object.create(null),c=null,u=null;fu(o,t,l,r,n),qx(o,t,l);let p=T(t,l,"sourcemap",Mx),h=T(t,l,"bundle",at),m=T(t,l,"splitting",at),b=T(t,l,"preserveSymlinks",at),g=T(t,l,"metafile",at),y=T(t,l,"outfile",ie),w=T(t,l,"outdir",ie),j=T(t,l,"outbase",ie),S=T(t,l,"tsconfig",ie),E=T(t,l,"resolveExtensions",Er),k=T(t,l,"nodePaths",Er),A=T(t,l,"mainFields",Er),R=T(t,l,"conditions",Er),_=T(t,l,"external",Er),I=T(t,l,"packages",ie),L=T(t,l,"alias",Wr),J=T(t,l,"loader",Wr),F=T(t,l,"outExtension",Wr),K=T(t,l,"publicPath",ie),ae=T(t,l,"entryNames",ie),me=T(t,l,"chunkNames",ie),ce=T(t,l,"assetNames",ie),se=T(t,l,"inject",Er),ue=T(t,l,"banner",Wr),Ne=T(t,l,"footer",Wr),Y=T(t,l,"entryPoints",S2),Ee=T(t,l,"absWorkingDir",ie),oe=T(t,l,"stdin",Wr),H=(i=T(t,l,"write",at))!=null?i:s,ot=T(t,l,"allowOverwrite",at),de=T(t,l,"mangleCache",Wr);if(l.plugins=!0,St(t,l,`in ${e}() call`),p)o.push(`--sourcemap${p===!0?"":`=${p}`}`);if(h)o.push("--bundle");if(ot)o.push("--allow-overwrite");if(m)o.push("--splitting");if(b)o.push("--preserve-symlinks");if(g)o.push("--metafile");if(y)o.push(`--outfile=${y}`);if(w)o.push(`--outdir=${w}`);if(j)o.push(`--outbase=${j}`);if(S)o.push(`--tsconfig=${S}`);if(I)o.push(`--packages=${I}`);if(E)o.push(`--resolve-extensions=${Vo(E,"resolve extension")}`);if(K)o.push(`--public-path=${K}`);if(ae)o.push(`--entry-names=${ae}`);if(me)o.push(`--chunk-names=${me}`);if(ce)o.push(`--asset-names=${ce}`);if(A)o.push(`--main-fields=${Vo(A,"main field")}`);if(R)o.push(`--conditions=${Vo(R,"condition")}`);if(_)for(let X of _)o.push(`--external:${Sr(X,"external")}`);if(L)for(let X in L){if(X.indexOf("=")>=0)throw Error(`Invalid package name in alias: ${X}`);o.push(`--alias:${X}=${Sr(L[X],"alias",X)}`)}if(ue)for(let X in ue){if(X.indexOf("=")>=0)throw Error(`Invalid banner file type: ${X}`);o.push(`--banner:${X}=${Sr(ue[X],"banner",X)}`)}if(Ne)for(let X in Ne){if(X.indexOf("=")>=0)throw Error(`Invalid footer file type: ${X}`);o.push(`--footer:${X}=${Sr(Ne[X],"footer",X)}`)}if(se)for(let X of se)o.push(`--inject:${Sr(X,"inject")}`);if(J)for(let X in J){if(X.indexOf("=")>=0)throw Error(`Invalid loader extension: ${X}`);o.push(`--loader:${X}=${Sr(J[X],"loader",X)}`)}if(F)for(let X in F){if(X.indexOf("=")>=0)throw Error(`Invalid out extension: ${X}`);o.push(`--out-extension:${X}=${Sr(F[X],"out extension",X)}`)}if(Y)if(Array.isArray(Y))for(let X=0,jt=Y.length;X<jt;X++){let et=Y[X];if(typeof et==="object"&&et!==null){let Kt=Object.create(null),wt=T(et,Kt,"in",ie),Ot=T(et,Kt,"out",ie);if(St(et,Kt,"in entry point at index "+X),wt===void 0)throw Error('Missing property "in" for entry point at index '+X);if(Ot===void 0)throw Error('Missing property "out" for entry point at index '+X);a.push([Ot,wt])}else a.push(["",Sr(et,"entry point at index "+X)])}else for(let X in Y)a.push([X,Sr(Y[X],"entry point",X)]);if(oe){let X=Object.create(null),jt=T(oe,X,"contents",Lx),et=T(oe,X,"resolveDir",ie),Kt=T(oe,X,"sourcefile",ie),wt=T(oe,X,"loader",ie);if(St(oe,X,'in "stdin" object'),Kt)o.push(`--sourcefile=${Kt}`);if(wt)o.push(`--loader=${wt}`);if(et)u=et;if(typeof jt==="string")c=hn(jt);else if(jt instanceof Uint8Array)c=jt}let $t=[];if(k)for(let X of k)X+="",$t.push(X);return{entries:a,flags:o,write:H,stdinContents:c,stdinResolveDir:u,absWorkingDir:Ee,nodePaths:$t,mangleCache:Fx(de)}}function A2(e,t,r,n){let s=[],i=Object.create(null);fu(s,t,i,r,n),qx(s,t,i);let o=T(t,i,"sourcemap",Mx),a=T(t,i,"sourcefile",ie),l=T(t,i,"loader",ie),c=T(t,i,"banner",ie),u=T(t,i,"footer",ie),p=T(t,i,"mangleCache",Wr);if(St(t,i,`in ${e}() call`),o)s.push(`--sourcemap=${o===!0?"external":o}`);if(a)s.push(`--sourcefile=${a}`);if(l)s.push(`--loader=${l}`);if(c)s.push(`--banner=${c}`);if(u)s.push(`--footer=${u}`);return{flags:s,mangleCache:Fx(p)}}function Vx(e){let t={},r={didClose:!1,reason:""},n={},s=0,i=0,o=new Uint8Array(16384),a=0,l=(S)=>{let E=a+S.length;if(E>o.length){let A=new Uint8Array(E*2);A.set(o),o=A}o.set(S,a),a+=S.length;let k=0;while(k+4<=a){let A=Ix(o,k);if(k+4+A>a)break;k+=4,b(o.subarray(k,k+A)),k+=A}if(k>0)o.copyWithin(0,k,a),a-=k},c=(S)=>{if(r.didClose=!0,S)r.reason=": "+(S.message||S);let E="The service was stopped"+r.reason;for(let k in n)n[k](E,null);n={}},u=(S,E,k)=>{if(r.didClose)return k("The service is no longer running"+r.reason,null);let A=s++;if(n[A]=(R,_)=>{try{k(R,_)}finally{if(S)S.unref()}},S)S.ref();e.writeToStdin(Ex({id:A,isRequest:!0,value:E}))},p=(S,E)=>{if(r.didClose)throw Error("The service is no longer running"+r.reason);e.writeToStdin(Ex({id:S,isRequest:!1,value:E}))},h=async(S,E)=>{try{if(E.command==="ping"){p(S,{});return}if(typeof E.key==="number"){let k=t[E.key];if(!k)return;let A=k[E.command];if(A){await A(S,E);return}}throw Error("Invalid command: "+E.command)}catch(k){let A=[Hi(k,e,null,void 0,"")];try{p(S,{errors:A})}catch{}}},m=!0,b=(S)=>{if(m){m=!1;let k=String.fromCharCode(...S);if(k!=="0.28.2")throw Error(`Cannot start service: Host version "0.28.2" does not match binary version ${At(k)}`);return}let E=$2(S);if(E.isRequest)h(E.id,E.value);else{let k=n[E.id];if(delete n[E.id],E.value.error)k(E.value.error,{});else k(null,E.value)}};return{readFromStdout:l,afterClose:c,service:{buildOrContext:({callName:S,refs:E,options:k,isTTY:A,defaultWD:R,callback:_})=>{let I=0,L=i++,J={},F={ref(){if(++I===1){if(E)E.ref()}},unref(){if(--I===0){if(delete t[L],E)E.unref()}}};t[L]=J,F.ref(),R2(S,L,u,p,F,e,J,k,A,R,(K,ae)=>{try{_(K,ae)}finally{F.unref()}})},transform:({callName:S,refs:E,input:k,options:A,isTTY:R,fs:_,callback:I})=>{let L=Wx(),J=(F)=>{try{if(typeof k!=="string"&&!(k instanceof Uint8Array))throw Error('The input to "transform" must be a string or a Uint8Array');let{flags:K,mangleCache:ae}=A2(S,A,R,Px),me={command:"transform",flags:K,inputFS:F!==null,input:F!==null?hn(F):typeof k==="string"?hn(k):k};if(ae)me.mangleCache=ae;u(E,me,(ce,se)=>{if(ce)return I(Error(ce),null);let ue=Wo(se.errors,L),Ne=Wo(se.warnings,L),Y=1,Ee=()=>{if(--Y===0){let oe={warnings:Ne,code:se.code,map:se.map,mangleCache:void 0,legalComments:void 0};if("legalComments"in se)oe.legalComments=se==null?void 0:se.legalComments;if(se.mangleCache)oe.mangleCache=se==null?void 0:se.mangleCache;I(null,oe)}};if(ue.length>0)return I(hl("Transform failed",ue,Ne),null);if(se.codeFS)Y++,_.readFile(se.code,(oe,H)=>{if(oe!==null)I(oe,null);else se.code=H,Ee()});if(se.mapFS)Y++,_.readFile(se.map,(oe,H)=>{if(oe!==null)I(oe,null);else se.map=H,Ee()});Ee()})}catch(K){let ae=[];try{fu(ae,A,{},R,Px)}catch{}let me=Hi(K,e,L,void 0,"");u(E,{command:"error",flags:ae,error:me},()=>{me.detail=L.load(me.detail),I(hl("Transform failed",[me],[]),null)})}};if((typeof k==="string"||k instanceof Uint8Array)&&k.length>1048576){let F=J;J=()=>_.writeFile(k,F)}J(null)},formatMessages:({callName:S,refs:E,messages:k,options:A,callback:R})=>{if(!A)throw Error(`Missing second argument in ${S}() call`);let _={},I=T(A,_,"kind",ie),L=T(A,_,"color",at),J=T(A,_,"terminalWidth",Bi),F=T(A,_,"logStyle",ie);if(St(A,_,`in ${S}() call`),I===void 0)throw Error(`Missing "kind" in ${S}() call`);if(I!=="error"&&I!=="warning")throw Error(`Expected "kind" to be "error" or "warning" in ${S}() call`);let K={command:"format-msgs",messages:$s(k,"messages",null,"",J),isWarning:I==="warning"};if(L!==void 0)K.color=L;if(J!==void 0)K.terminalWidth=J;if(F!==void 0)K.logStyle=F;u(E,K,(ae,me)=>{if(ae)return R(Error(ae),null);R(null,me.messages)})},analyzeMetafile:({callName:S,refs:E,metafile:k,options:A,callback:R})=>{if(A===void 0)A={};let _={},I=T(A,_,"color",at),L=T(A,_,"verbose",at);St(A,_,`in ${S}() call`);let J={command:"analyze-metafile",metafile:k};if(I!==void 0)J.color=I;if(L!==void 0)J.verbose=L;u(E,J,(F,K)=>{if(F)return R(Error(F),null);R(null,K.result)})}}}}function R2(e,t,r,n,s,i,o,a,l,c,u){let p=Wx(),h=e==="context",m=(y,w)=>{let j=[];try{fu(j,a,{},l,jx)}catch{}let S=Hi(y,i,p,void 0,w);r(s,{command:"error",flags:j,error:S},()=>{S.detail=p.load(S.detail),u(hl(h?"Context failed":"Build failed",[S],[]),null)})},b;if(typeof a==="object"){let y=a.plugins;if(y!==void 0){if(!Array.isArray(y))return m(Error('"plugins" must be an array'),"");b=y}}if(b&&b.length>0){if(i.isSync)return m(Error("Cannot use plugins in synchronous API calls"),"");O2(t,r,n,s,i,o,a,b,p).then((y)=>{if(!y.ok)return m(y.error,y.pluginName);try{g(y.requestPlugins,y.runOnEndCallbacks,y.scheduleOnDisposeCallbacks)}catch(w){m(w,"")}},(y)=>m(y,""));return}try{g(null,(y,w)=>w([],[]),()=>{})}catch(y){m(y,"")}function g(y,w,j){let S=i.hasFS,{entries:E,flags:k,write:A,stdinContents:R,stdinResolveDir:_,absWorkingDir:I,nodePaths:L,mangleCache:J}=_2(e,a,l,jx,S);if(A&&!i.hasFS)throw Error('The "write" option is unavailable in this environment');let F={command:"build",key:t,entries:E,flags:k,write:A,stdinContents:R,stdinResolveDir:_,absWorkingDir:I||c,nodePaths:L,context:h};if(y)F.plugins=y;if(J)F.mangleCache=J;let K=(ce,se)=>{let ue={errors:Wo(ce.errors,p),warnings:Wo(ce.warnings,p),outputFiles:void 0,metafile:void 0,mangleCache:void 0},Ne=ue.errors.slice(),Y=ue.warnings.slice();if(ce.outputFiles)ue.outputFiles=ce.outputFiles.map(C2);if(ce.metafile&&ce.metafile.length)ue.metafile=T2(ce.metafile);if(ce.mangleCache)ue.mangleCache=ce.mangleCache;if(ce.writeToStdout!==void 0)console.log(Gi(ce.writeToStdout).replace(/\n$/,""));w(ue,(Ee,oe)=>{if(Ne.length>0||Ee.length>0){let H=hl("Build failed",Ne.concat(Ee),Y.concat(oe));return se(H,null,Ee,oe)}se(null,ue,Ee,oe)})},ae,me;if(h)o["on-end"]=(ce,se)=>new Promise((ue)=>{K(se,(Ne,Y,Ee,oe)=>{let H={errors:Ee,warnings:oe};if(me)me(Ne,Y);ae=void 0,me=void 0,n(ce,H),ue()})});r(s,F,(ce,se)=>{if(ce)return u(Error(ce),null);if(!h)return K(se,(Y,Ee)=>(j(),u(Y,Ee)));if(se.errors.length>0)return u(hl("Context failed",se.errors,se.warnings),null);let ue=!1,Ne={rebuild:()=>{if(!ae)ae=new Promise((Y,Ee)=>{let oe;me=(ot,de)=>{if(!oe)oe=()=>ot?Ee(ot):Y(de)};let H=()=>{r(s,{command:"rebuild",key:t},(de,$t)=>{if(de)Ee(Error(de));else if(oe)oe();else H()})};H()});return ae},watch:(Y={})=>new Promise((Ee,oe)=>{if(!i.hasFS)throw Error('Cannot use the "watch" API in this environment');let H={},ot=T(Y,H,"delay",Bi);St(Y,H,"in watch() call");let de={command:"watch",key:t};if(ot)de.delay=ot;r(s,de,($t)=>{if($t)oe(Error($t));else Ee(void 0)})}),serve:(Y={})=>new Promise((Ee,oe)=>{if(!i.hasFS)throw Error('Cannot use the "serve" API in this environment');let H={},ot=T(Y,H,"port",v2),de=T(Y,H,"host",ie),$t=T(Y,H,"servedir",ie),X=T(Y,H,"keyfile",ie),jt=T(Y,H,"certfile",ie),et=T(Y,H,"fallback",ie),Kt=T(Y,H,"cors",Wr),wt=T(Y,H,"onRequest",Jx);St(Y,H,"in serve() call");let Ot={command:"serve",key:t,onRequest:!!wt};if(ot!==void 0)Ot.port=ot;if(de!==void 0)Ot.host=de;if($t!==void 0)Ot.servedir=$t;if(X!==void 0)Ot.keyfile=X;if(jt!==void 0)Ot.certfile=jt;if(et!==void 0)Ot.fallback=et;if(Kt){let Yt={},Vt=T(Kt,Yt,"origin",Dx);if(St(Kt,Yt,'on "cors" object'),Array.isArray(Vt))Ot.corsOrigin=Vt;else if(Vt!==void 0)Ot.corsOrigin=[Vt]}r(s,Ot,(Yt,Vt)=>{if(Yt)return oe(Error(Yt));if(wt)o["serve-request"]=(es,ts)=>{wt(ts.args),n(es,{})};Ee(Vt)})}),cancel:()=>new Promise((Y)=>{if(ue)return Y();r(s,{command:"cancel",key:t},()=>{Y()})}),dispose:()=>new Promise((Y)=>{if(ue)return Y();ue=!0,r(s,{command:"dispose",key:t},()=>{Y(),j(),s.unref()})})};s.ref(),u(null,Ne)})}}var O2=async(e,t,r,n,s,i,o,a,l)=>{let c=[],u=[],p={},h={},m=[],b=0,g=0,y=[],w=!1;a=[...a];for(let E of a){let k={};if(typeof E!=="object")throw Error(`Plugin at index ${g} must be an object`);let A=T(E,k,"name",ie);if(typeof A!=="string"||A==="")throw Error(`Plugin at index ${g} is missing a name`);try{let R=T(E,k,"setup",Jx);if(typeof R!=="function")throw Error("Plugin is missing a setup function");St(E,k,`on plugin ${At(A)}`);let _={name:A,onStart:!1,onEnd:!1,onResolve:[],onLoad:[]};g++;let L=R({initialOptions:o,resolve:(J,F={})=>{if(!w)throw Error('Cannot call "resolve" before plugin setup has completed');if(typeof J!=="string")throw Error("The path to resolve must be a string");let K=Object.create(null),ae=T(F,K,"pluginName",ie),me=T(F,K,"importer",ie),ce=T(F,K,"namespace",ie),se=T(F,K,"resolveDir",ie),ue=T(F,K,"kind",ie),Ne=T(F,K,"pluginData",iu),Y=T(F,K,"with",Wr);return St(F,K,"in resolve() call"),new Promise((Ee,oe)=>{let H={command:"resolve",path:J,key:e,pluginName:A};if(ae!=null)H.pluginName=ae;if(me!=null)H.importer=me;if(ce!=null)H.namespace=ce;if(se!=null)H.resolveDir=se;if(ue!=null)H.kind=ue;else throw Error('Must specify "kind" when calling "resolve"');if(Ne!=null)H.pluginData=l.store(Ne);if(Y!=null)H.with=N2(Y,"with");t(n,H,(ot,de)=>{if(ot!==null)oe(Error(ot));else Ee({errors:Wo(de.errors,l),warnings:Wo(de.warnings,l),path:de.path,external:de.external,sideEffects:de.sideEffects,namespace:de.namespace,suffix:de.suffix,pluginData:l.load(de.pluginData)})})})},onStart(J){let K=nu(Error('This error came from the "onStart" callback registered here:'),s,"onStart");c.push({name:A,callback:J,note:K}),_.onStart=!0},onEnd(J){let K=nu(Error('This error came from the "onEnd" callback registered here:'),s,"onEnd");u.push({name:A,callback:J,note:K}),_.onEnd=!0},onResolve(J,F){let ae=nu(Error('This error came from the "onResolve" callback registered here:'),s,"onResolve"),me={},ce=T(J,me,"filter",ou),se=T(J,me,"namespace",ie);if(St(J,me,`in onResolve() call for plugin ${At(A)}`),ce==null)throw Error("onResolve() call is missing a filter");let ue=b++;p[ue]={name:A,callback:F,note:ae},_.onResolve.push({id:ue,filter:au(ce),namespace:se||""})},onLoad(J,F){let ae=nu(Error('This error came from the "onLoad" callback registered here:'),s,"onLoad"),me={},ce=T(J,me,"filter",ou),se=T(J,me,"namespace",ie);if(St(J,me,`in onLoad() call for plugin ${At(A)}`),ce==null)throw Error("onLoad() call is missing a filter");let ue=b++;h[ue]={name:A,callback:F,note:ae},_.onLoad.push({id:ue,filter:au(ce),namespace:se||""})},onDispose(J){m.push(J)},esbuild:s.esbuild});if(L)await L;y.push(_)}catch(R){return{ok:!1,error:R,pluginName:A}}}i["on-start"]=async(E,k)=>{l.clear();let A={errors:[],warnings:[]};await Promise.all(c.map(async({name:R,callback:_,note:I})=>{try{let L=await _();if(L!=null){if(typeof L!=="object")throw Error(`Expected onStart() callback in plugin ${At(R)} to return an object`);let J={},F=T(L,J,"errors",xs),K=T(L,J,"warnings",xs);if(St(L,J,`from onStart() callback in plugin ${At(R)}`),F!=null)A.errors.push(...$s(F,"errors",l,R,void 0));if(K!=null)A.warnings.push(...$s(K,"warnings",l,R,void 0))}}catch(L){A.errors.push(Hi(L,s,l,I&&I(),R))}})),r(E,A)},i["on-resolve"]=async(E,k)=>{let A={},R="",_,I;for(let L of k.ids)try{({name:R,callback:_,note:I}=p[L]);let J=await _({path:k.path,importer:k.importer,namespace:k.namespace,resolveDir:k.resolveDir,kind:k.kind,pluginData:l.load(k.pluginData),with:k.with});if(J!=null){if(typeof J!=="object")throw Error(`Expected onResolve() callback in plugin ${At(R)} to return an object`);let F={},K=T(J,F,"pluginName",ie),ae=T(J,F,"path",ie),me=T(J,F,"namespace",ie),ce=T(J,F,"suffix",ie),se=T(J,F,"external",at),ue=T(J,F,"sideEffects",at),Ne=T(J,F,"pluginData",iu),Y=T(J,F,"errors",xs),Ee=T(J,F,"warnings",xs),oe=T(J,F,"watchFiles",Er),H=T(J,F,"watchDirs",Er);if(St(J,F,`from onResolve() callback in plugin ${At(R)}`),A.id=L,K!=null)A.pluginName=K;if(ae!=null)A.path=ae;if(me!=null)A.namespace=me;if(ce!=null)A.suffix=ce;if(se!=null)A.external=se;if(ue!=null)A.sideEffects=ue;if(Ne!=null)A.pluginData=l.store(Ne);if(Y!=null)A.errors=$s(Y,"errors",l,R,void 0);if(Ee!=null)A.warnings=$s(Ee,"warnings",l,R,void 0);if(oe!=null)A.watchFiles=su(oe,"watchFiles");if(H!=null)A.watchDirs=su(H,"watchDirs");break}}catch(J){A={id:L,errors:[Hi(J,s,l,I&&I(),R)]};break}r(E,A)},i["on-load"]=async(E,k)=>{let A={},R="",_,I;for(let L of k.ids)try{({name:R,callback:_,note:I}=h[L]);let J=await _({path:k.path,namespace:k.namespace,suffix:k.suffix,pluginData:l.load(k.pluginData),with:k.with});if(J!=null){if(typeof J!=="object")throw Error(`Expected onLoad() callback in plugin ${At(R)} to return an object`);let F={},K=T(J,F,"pluginName",ie),ae=T(J,F,"contents",Lx),me=T(J,F,"resolveDir",ie),ce=T(J,F,"pluginData",iu),se=T(J,F,"loader",ie),ue=T(J,F,"errors",xs),Ne=T(J,F,"warnings",xs),Y=T(J,F,"watchFiles",Er),Ee=T(J,F,"watchDirs",Er);if(St(J,F,`from onLoad() callback in plugin ${At(R)}`),A.id=L,K!=null)A.pluginName=K;if(ae instanceof Uint8Array)A.contents=ae;else if(ae!=null)A.contents=hn(ae);if(me!=null)A.resolveDir=me;if(ce!=null)A.pluginData=l.store(ce);if(se!=null)A.loader=se;if(ue!=null)A.errors=$s(ue,"errors",l,R,void 0);if(Ne!=null)A.warnings=$s(Ne,"warnings",l,R,void 0);if(Y!=null)A.watchFiles=su(Y,"watchFiles");if(Ee!=null)A.watchDirs=su(Ee,"watchDirs");break}}catch(J){A={id:L,errors:[Hi(J,s,l,I&&I(),R)]};break}r(E,A)};let j=(E,k)=>k([],[]);if(u.length>0)j=(E,k)=>{(async()=>{let A=[],R=[];for(let{name:_,callback:I,note:L}of u){let J,F;try{let K=await I(E);if(K!=null){if(typeof K!=="object")throw Error(`Expected onEnd() callback in plugin ${At(_)} to return an object`);let ae={},me=T(K,ae,"errors",xs),ce=T(K,ae,"warnings",xs);if(St(K,ae,`from onEnd() callback in plugin ${At(_)}`),me!=null)J=$s(me,"errors",l,_,void 0);if(ce!=null)F=$s(ce,"warnings",l,_,void 0)}}catch(K){J=[Hi(K,s,l,L&&L(),_)]}if(J){A.push(...J);try{E.errors.push(...J)}catch{}}if(F){R.push(...F);try{E.warnings.push(...F)}catch{}}}k(A,R)})()};let S=()=>{for(let E of m)setTimeout(()=>E(),0)};return w=!0,{ok:!0,requestPlugins:y,runOnEndCallbacks:j,scheduleOnDisposeCallbacks:S}};function Wx(){let e=new Map,t=0;return{clear(){e.clear()},load(r){return e.get(r)},store(r){if(r===void 0)return-1;let n=t++;return e.set(n,r),n}}}function nu(e,t,r){let n,s=!1;return()=>{if(s)return n;s=!0;try{let i=(e.stack+"").split(`
|
|
57
|
+
`);i.splice(1,1);let o=Hx(t,i,r);if(o)return n={text:e.message,location:o},n}catch{}}}function Hi(e,t,r,n,s){let i="Internal error",o=null;try{i=(e&&e.message||e)+""}catch{}try{o=Hx(t,(e.stack+"").split(`
|
|
58
|
+
`),"")}catch{}return{id:"",pluginName:s,text:i,location:o,notes:n?[n]:[],detail:r?r.store(e):-1}}function Hx(e,t,r){let n=" at ";if(e.readFileSync&&!t[0].startsWith(n)&&t[1].startsWith(n))for(let s=1;s<t.length;s++){let i=t[s];if(!i.startsWith(n))continue;i=i.slice(n.length);while(!0){let o=/^(?:new |async )?\S+ \((.*)\)$/.exec(i);if(o){i=o[1];continue}if(o=/^eval at \S+ \((.*)\)(?:, \S+:\d+:\d+)?$/.exec(i),o){i=o[1];continue}if(o=/^(\S+):(\d+):(\d+)$/.exec(i),o){let a;try{a=e.readFileSync(o[1],"utf8")}catch{break}let l=a.split(/\r\n|\r|\n|\u2028|\u2029/)[+o[2]-1]||"",c=+o[3]-1,u=l.slice(c,c+r.length)===r?r.length:0;return{file:o[1],namespace:"file",line:+o[2],column:hn(l.slice(0,c)).length,length:hn(l.slice(c,c+u)).length,lineText:l+`
|
|
59
59
|
`+t.slice(1).join(`
|
|
60
|
-
`),suggestion:""}}break}}return null}function
|
|
60
|
+
`),suggestion:""}}break}}return null}function hl(e,t,r){let n=5;e+=t.length<1?"":` with ${t.length} error${t.length<2?"":"s"}:`+t.slice(0,n+1).map((i,o)=>{if(o===n)return`
|
|
61
61
|
...`;if(!i.location)return`
|
|
62
62
|
error: ${i.text}`;let{file:a,line:l,column:c}=i.location,u=i.pluginName?`[plugin: ${i.pluginName}] `:"";return`
|
|
63
|
-
${a}:${l}:${c}: ERROR: ${u}${i.text}`}).join("");let s=Error(e);for(let[i,o]of[["errors",t],["warnings",r]])Object.defineProperty(s,i,{configurable:!0,enumerable:!0,get:()=>o,set:(a)=>Object.defineProperty(s,i,{configurable:!0,enumerable:!0,value:a})});return s}function
|
|
63
|
+
${a}:${l}:${c}: ERROR: ${u}${i.text}`}).join("");let s=Error(e);for(let[i,o]of[["errors",t],["warnings",r]])Object.defineProperty(s,i,{configurable:!0,enumerable:!0,get:()=>o,set:(a)=>Object.defineProperty(s,i,{configurable:!0,enumerable:!0,value:a})});return s}function Wo(e,t){for(let r of e)r.detail=t.load(r.detail);return e}function _x(e,t,r){if(e==null)return null;let n={},s=T(e,n,"file",ie),i=T(e,n,"namespace",ie),o=T(e,n,"line",Bi),a=T(e,n,"column",Bi),l=T(e,n,"length",Bi),c=T(e,n,"lineText",ie),u=T(e,n,"suggestion",ie);if(St(e,n,t),c){let p=c.slice(0,(a&&a>0?a:0)+(l&&l>0?l:0)+(r&&r>0?r:80));if(!/[\x7F-\uFFFF]/.test(p)&&!/\n/.test(c))c=p}return{file:s||"",namespace:i||"",line:o||0,column:a||0,length:l||0,lineText:c||"",suggestion:u||""}}function $s(e,t,r,n,s){let i=[],o=0;for(let a of e){let l={},c=T(a,l,"id",ie),u=T(a,l,"pluginName",ie),p=T(a,l,"text",ie),h=T(a,l,"location",kx),m=T(a,l,"notes",xs),b=T(a,l,"detail",iu),g=`in element ${o} of "${t}"`;St(a,l,g);let y=[];if(m)for(let w of m){let j={},S=T(w,j,"text",ie),E=T(w,j,"location",kx);St(w,j,g),y.push({text:S||"",location:_x(E,g,s)})}i.push({id:c||"",pluginName:u||n,text:p||"",location:_x(h,g,s),notes:y,detail:r?r.store(b):-1}),o++}return i}function su(e,t){let r=[];for(let n of e){if(typeof n!=="string")throw Error(`${At(t)} must be an array of strings`);r.push(n)}return r}function N2(e,t){let r=Object.create(null);for(let n in e){let s=e[n];if(typeof s!=="string")throw Error(`key ${At(n)} in object ${At(t)} must be a string`);r[n]=s}return r}function C2({path:e,contents:t,hash:r}){let n=null;return{path:e,contents:t,hash:r,get text(){let s=this.contents;if(n===null||s!==t)t=s,n=Gi(s);return n}}}function au(e){let t=e.source;if(e.flags)t=`(?${e.flags})${t}`;return t}function T2(e){let t;try{t=Gi(e)}catch{return w2(e)}return JSON.parse(t)}var Us=Be("fs"),Ax=Be("os"),Yr=Be("path"),qo=process.env.ESBUILD_BINARY_PATH||qo,I2=(e)=>!!e&&e!=="/usr/bin/esbuild",Rx="@esbuild/darwin-arm64",Ox="@esbuild/darwin-x64",lu={"win32 arm64 LE":"@esbuild/win32-arm64","win32 ia32 LE":"@esbuild/win32-ia32","win32 x64 LE":"@esbuild/win32-x64"},cu={"aix ppc64 BE":"@esbuild/aix-ppc64","android arm64 LE":"@esbuild/android-arm64","darwin arm64 LE":"@esbuild/darwin-arm64","darwin x64 LE":"@esbuild/darwin-x64","freebsd arm64 LE":"@esbuild/freebsd-arm64","freebsd x64 LE":"@esbuild/freebsd-x64","linux arm LE":"@esbuild/linux-arm","linux arm64 LE":"@esbuild/linux-arm64","linux ia32 LE":"@esbuild/linux-ia32","linux mips64el LE":"@esbuild/linux-mips64el","linux ppc64 LE":"@esbuild/linux-ppc64","linux riscv64 LE":"@esbuild/linux-riscv64","linux s390x BE":"@esbuild/linux-s390x","linux x64 LE":"@esbuild/linux-x64","linux loong64 LE":"@esbuild/linux-loong64","netbsd arm64 LE":"@esbuild/netbsd-arm64","netbsd x64 LE":"@esbuild/netbsd-x64","openbsd arm64 LE":"@esbuild/openbsd-arm64","openbsd x64 LE":"@esbuild/openbsd-x64","sunos x64 LE":"@esbuild/sunos-x64"},Nx={"android arm LE":"@esbuild/android-arm","android x64 LE":"@esbuild/android-x64","openharmony arm64 LE":"@esbuild/openharmony-arm64"};function J2(){let e,t,r=!1,n=`${process.platform} ${Ax.arch()} ${Ax.endianness()}`;if(n in lu)e=lu[n],t="esbuild.exe";else if(n in cu)e=cu[n],t="bin/esbuild";else if(n in Nx)e=Nx[n],t="bin/esbuild",r=!0;else throw Error(`Unsupported platform: ${n}`);return{pkg:e,subpath:t,isWASM:r}}function M2(){let e=Be.resolve("esbuild"),t=Yr.dirname(Yr.dirname(Yr.dirname(e)));if(Yr.basename(t)==="node_modules"){for(let r in cu)try{let n=cu[r];if(Us.existsSync(Yr.join(t,n)))return n}catch{}for(let r in lu)try{let n=lu[r];if(Us.existsSync(Yr.join(t,n)))return n}catch{}}return null}function D2(e,t){let r=Yr.dirname(Be.resolve("esbuild"));return Yr.join(r,`downloaded-${e.replace("/","-")}-${Yr.basename(t)}`)}function L2(){if(I2(qo))if(!Us.existsSync(qo))console.warn(`[esbuild] Ignoring bad configuration: ESBUILD_BINARY_PATH=${qo}`);else return{binPath:qo,isWASM:!1};let{pkg:e,subpath:t,isWASM:r}=J2(),n;try{n=Be.resolve(`${e}/${t}`)}catch(s){if(n=D2(e,t),!Us.existsSync(n)){try{Be.resolve(e)}catch{let i=M2();if(i){let o=`
|
|
64
64
|
Specifically the "${i}" package is present but this platform
|
|
65
65
|
needs the "${e}" package instead. People often get into this
|
|
66
66
|
situation by installing esbuild on Windows or macOS and copying "node_modules"
|
|
@@ -77,7 +77,7 @@ If you are installing with yarn, you can try listing both this platform and the
|
|
|
77
77
|
other platform in your ".yarnrc.yml" file using the "supportedArchitectures"
|
|
78
78
|
feature: https://yarnpkg.com/configuration/yarnrc/#supportedArchitectures
|
|
79
79
|
Keep in mind that this means multiple copies of esbuild will be present.
|
|
80
|
-
`;if(e===
|
|
80
|
+
`;if(e===Ox&&i===Rx||e===Rx&&i===Ox)o=`
|
|
81
81
|
Specifically the "${i}" package is present but this platform
|
|
82
82
|
needs the "${e}" package instead. People often get into this
|
|
83
83
|
situation by installing esbuild with npm running inside of Rosetta 2 and then
|
|
@@ -109,42 +109,42 @@ want to do that.
|
|
|
109
109
|
If you are installing esbuild with npm, make sure that you don't specify the
|
|
110
110
|
"--no-optional" or "--omit=optional" flags. The "optionalDependencies" feature
|
|
111
111
|
of "package.json" is used by esbuild to install the correct binary executable
|
|
112
|
-
for your current platform.`)}throw s}}if(/\.zip\//.test(n)){let s;try{s=(()=>{throw new Error("Cannot require module "+"pnpapi");})()}catch(i){}if(s){let i=s.getPackageInformation(s.topLevel).packageLocation,o=
|
|
112
|
+
for your current platform.`)}throw s}}if(/\.zip\//.test(n)){let s;try{s=(()=>{throw new Error("Cannot require module "+"pnpapi");})()}catch(i){}if(s){let i=s.getPackageInformation(s.topLevel).packageLocation,o=Yr.join(i,"node_modules",".cache","esbuild",`pnpapi-${e.replace("/","-")}-0.28.2-${Yr.basename(t)}`);if(!Us.existsSync(o))Us.mkdirSync(Yr.dirname(o),{recursive:!0}),Us.copyFileSync(n,o),Us.chmodSync(o,493);return{binPath:o,isWASM:r}}}return{binPath:n,isWASM:r}}var Bx=Be("child_process"),F2=Be("crypto"),Jp=Be("path"),Ui=Be("fs"),q2=Be("os"),V2=Be("tty"),ur;if(process.env.ESBUILD_WORKER_THREADS!=="0"){try{ur=Be("worker_threads")}catch{}let[e,t]=process.versions.node.split(".");if(+e<12||+e===12&&+t<17||+e===13&&+t<13)ur=void 0}var Cx,bl=((Cx=ur==null?void 0:ur.workerData)==null?void 0:Cx.esbuildVersion)==="0.28.2",Ux=()=>{if((!qo||!1)&&(Jp.basename(__filename)!=="main.js"||Jp.basename(__dirname)!=="lib"))throw Error(`The esbuild JavaScript API cannot be bundled. Please mark the "esbuild" package as external so it's not included in the bundle.
|
|
113
113
|
|
|
114
|
-
More information: The file containing the code for esbuild's JavaScript API (${__filename}) does not appear to be inside the esbuild package on the file system, which usually means that the esbuild package was bundled into another file. This is problematic because the API needs to run a binary executable inside the esbuild package which is located using a relative path from the API code to the executable. If the esbuild package is bundled, the relative path will be incorrect and the executable won't be found.`);{let{binPath:e,isWASM:t}=
|
|
115
|
-
error: ${c}`),p=[{id:"",pluginName:"",text:c,location:null,notes:[],detail:void 0}];return u.errors=p,u.warnings=[],u},o=(c)=>{if(!c)return;let u=c.plugins;if(u&&u.length>0)throw i("Cannot use plugins in synchronous API calls")},a=(c,u)=>{for(let p in u)c[p]=u[p]},l=(c,u)=>{let p=s++,h=new SharedArrayBuffer(8),m=new Int32Array(h),b={sharedBuffer:h,id:p,command:c,args:u};n.postMessage(b);let g=Atomics.wait(m,0,0);if(g!=="ok"&&g!=="not-equal")throw Error("Internal error: Atomics.wait() failed: "+g);let{message:{id:y,resolve:w,reject:
|
|
116
|
-
`,{outfile:s,resolveDir:t},{...r,minify:!1,onFileLoaded:(i)=>n.push(i)})}catch{return}finally{V2(s,{force:!0})}return n.find((i)=>!Ip(i))}async function Ki(e,{resolveDir:t,outfile:r},n){let s=await Np({entry:{resolveDir:t,source:e},...U0(n)});V0(r,s,"utf8")}async function K0(e,{projectRoot:t,outfile:r,adapter:n}){await Ki(e,{outfile:r,resolveDir:t},G2(n))}var W0,K2;var Jp=D(()=>{Lr();F0();W0=["@vue/reactivity","lit-html"];K2={"process.env.NODE_ENV":'"production"'}});function Q2(e){return e.split("\\").join("/").replace(/^\.\//,"").replace(/^\//,"").replace(/^pages\//,"")}function Y0(e){let t=Q2(e),r=t.slice(t.lastIndexOf("/")+1),n=r.lastIndexOf(".");if(n>0)t=t.slice(0,t.length-(r.length-n));if(t.endsWith("/index"))t=t.slice(0,-6)||"/";else if(t==="index")t="/";if(!t.startsWith("/"))t=`/${t}`;let s=[],i=!1,o=!1,a=t.replaceAll(Z2,(l,c,u)=>{if(i=!0,c)return o=!0,s.push(c),"*";return s.push(u),`:${u}`});return{isCatchAll:o,isDynamic:i,params:s,urlPattern:a}}function X0(e,t){if(e.isDynamic!==t.isDynamic)return e.isDynamic?1:-1;if(e.isCatchAll!==t.isCatchAll)return e.isCatchAll?1:-1;return e.urlPattern.localeCompare(t.urlPattern)}var Z2;var Z0=D(()=>{Z2=/\[\.\.\.(\w+)\]|\[(\w+)\]/g});function tI(e){return e.replaceAll("~1","/").replaceAll("~0","~")}function Q0(e){if(!B(e)||!("paginate"in e))return null;let{each:t,pageSize:r,paginate:n}=e,s=B(n)?n.$ref:void 0,i=O(s)?eI.exec(s)?.[1]:void 0;if(i===void 0)throw TypeError('$paths.paginate must be { "$ref": "#/state/<key>" }');if(!Nt(r)||!Number.isInteger(r)||r<1)throw TypeError("$paths.pageSize must be a positive integer");let o={key:tI(i),pageSize:r};if(t!==void 0){if(!B(t)&&!Array.isArray(t))throw TypeError("$paths.each must be a $paths source");if(B(t)&&"paginate"in t)throw TypeError("$paths.each cannot itself be paged");o.each=t}return o}function Mp(e,t){return Math.max(1,Math.ceil(e/t))}function ex(e,t,r){let n=(t-1)*r;return e.slice(n,n+r)}function Yi(e,t){if(e.endsWith("*")){if(t===1){let r=e.slice(0,-1).replace(/\/$/,"");return r===""?"/":r}return`${e.slice(0,-1)}${t}`}return e.replace(/:[^/]+/,String(t))}function tx(e,t,r,n){let s=Mp(n,r),i=[];for(let o=1;o<=s;o++)i.push({current:o===t,number:o,url:Yi(e,o)});return{first:Yi(e,1),itemCount:n,last:Yi(e,s),next:t<s?Yi(e,t+1):null,number:t,pageCount:s,pageSize:r,pages:i,prev:t>1?Yi(e,t-1):null}}var eI;var rx=D(()=>{ve();eI=/^#\/state\/([^/]+)$/});function Kr(e){if(!O(e)||e.trim()==="")return null;try{return new Intl.Locale(e.trim()).toString()}catch{return null}}function pl(e){let t=Kr(e);if(t===null)return"ltr";let r=new Intl.Locale(t),n=r.script??r.maximize().script;return n!==void 0&&rI.has(n)?"rtl":"ltr"}function nx(e){let t=Kr(e);if(t===null)return O(e)?e:"";return new Intl.DisplayNames([t],{type:"language"}).of(t)??t}function Dp(e){let t=e.i18n,r=[];if(!V(t))return{errors:r,i18n:null};let n=Array.isArray(t.locales)?t.locales:[],s=[];for(let a of n){let l=Kr(a);if(l===null){r.push(`i18n.locales: "${String(a)}" is not a well-formed BCP 47 language tag.`);continue}if(!s.includes(l))s.push(l)}let i=Kr(t.defaultLocale)??s[0]??null;if(t.defaultLocale!==void 0&&Kr(t.defaultLocale)===null)r.push(`i18n.defaultLocale: "${String(t.defaultLocale)}" is not a well-formed BCP 47 language tag.`);if(i===null)return r.push("i18n is declared with no usable locale — set `defaultLocale` or `locales`."),{errors:r,i18n:null};if(!s.includes(i))s.unshift(i);let o=t.routing==="prefix-always"||t.routing==="prefix-except-default"?t.routing:nI;return{errors:r,i18n:{defaultLocale:i,locales:s,routing:o}}}function hn(e,t){if(t===null)return null;let r=e.split("/").find(Boolean);if(r===void 0)return t.defaultLocale;let n=Kr(r);return n!==null&&t.locales.includes(n)?n:t.defaultLocale}var rI,lu="^[A-Za-z]{2,8}(-[A-Za-z0-9]{1,8})*$",nI="prefix-except-default";var Xi=D(()=>{ve();rI=new Set(["Adlm","Arab","Aran","Armi","Avst","Cprt","Egyd","Egyh","Elym","Gara","Hatr","Hebr","Hluw","Hung","Khar","Lydi","Mand","Mani","Mend","Merc","Mero","Narb","Nbat","Nkoo","Orkh","Palm","Phli","Phlp","Phnx","Prti","Rohg","Samr","Sarb","Sogd","Sogo","Syrc","Thaa","Todr","Yezi"])});function Sr(e){return e.replaceAll(/[A-Z]/g,(t)=>`-${t.toLowerCase()}`)}function sx(e,t){if(e.startsWith("@--"))return t[e.slice(1)]??e.slice(1);if(e.startsWith("@(")){let r=e.slice(2,-1).trim();return sI.has(r.toLowerCase())?r:e.slice(1)}return null}function ml(e){return e.startsWith("@position-try")||e.startsWith("@property")||e.startsWith("@font-face")||e.startsWith("@counter-style")}function gl(e){return e.startsWith("@keyframes")}function ix(e,t){let r=[];for(let n of hl(e))for(let s of hl(t))r.push(iI(n,s));return r.join(", ")}function iI(e,t){let r=uu(t,e);if(r!==null)return r;if(t.startsWith("[")||t.startsWith(":")||t.startsWith("."))return`${e}${t}`;return`${e} ${t}`}function Lp(e){let t=[],r=null,n=0;for(let s=0;s<e.length;s+=1){let i=e[s];if(r){if(i==="\\")s+=1;else if(i===r)r=null;continue}if(i==="\\")s+=1;else if(i==='"'||i==="'")r=i;else if(i==="[")n+=1;else if(i==="]")n=Math.max(0,n-1);else if(i==="&"&&n===0)t.push(s)}return t}function uu(e,t){return Lp(e).length>0?oI(e,t):null}function oI(e,t){let r="",n=0;for(let s of Lp(e))r+=e.slice(n,s)+t,n=s+1;return r+e.slice(n)}function hl(e){let t=[],r=0,n=null,s=0;for(let o=0;o<e.length;o+=1){let a=e[o];if(n){if(a==="\\")o+=1;else if(a===n)n=null;continue}if(a==='"'||a==="'")n=a;else if(a==="("||a==="[")r+=1;else if(a===")"||a==="]")r=Math.max(0,r-1);else if(a===","&&r===0)t.push(e.slice(s,o)),s=o+1}t.push(e.slice(s));let i=t.flatMap((o)=>{let a=o.trim();return a===""?[]:[a]});return i.length>0?i:[e]}function yn(e){let t=/^\(\s*prefers-color-scheme\s*:\s*(light|dark)\s*\)$/.exec(e.trim())?.[1];return t==="light"||t==="dark"?t:null}function Fp(e,t){if(e===":root"||e==="html")return{auto:`${e}:where(:not([${gn}]))`,forced:`${e}:where([${gn}="${t}"])`};return{auto:`:where(:root:not([${gn}])) ${e}`,forced:`:where(:root[${gn}="${t}"]) ${e}`}}function Hs(e){return e.startsWith(":")||e.startsWith(".")||e.startsWith("&")||e.startsWith("[")}function qp(e){return e.startsWith("--")?e:Sr(e)}function cu(e){let t=2166136261;for(let r=0;r<e.length;r+=1)t^=e.charCodeAt(r),t=Math.imul(t,16777619);return(t>>>0).toString(36)}function ox(e,t,r){let n=r.map(([i,o])=>`${i}: ${o}`).join("; "),s=t===null?n:`${t} { ${n} }`;for(let i=e.length-1;i>=0;i-=1)s=`${e[i]} { ${s} }`;return s}function aI(e,t,r){let n=r.map(({selector:i,declarations:o})=>`${i} { ${o.map(([a,l])=>`${a}: ${l}`).join("; ")} }`).join(" "),s=`@keyframes ${t} { ${n} }`;for(let i=e.length-1;i>=0;i-=1)s=`${e[i]} { ${s} }`;return s}function lI(e){let t=Object.keys(e).filter((n)=>gl(n));if(t.length===0)return e;let r={...e};for(let n of t)delete r[n];return r}function cI(e){let r=Lp(e).at(-1),n=r===void 0?e:e.slice(r+1);return n===""||n.startsWith(":")||n.startsWith(".")||n.startsWith("[")}function Lo(e,t={}){let{scope:r=null,mediaQueries:n={},transposeValue:s=(y)=>y,transposeSelector:i=(y)=>y,resolveValue:o}=t,a=[],l=(y)=>y!==null&&typeof y==="object"&&!Array.isArray(y)&&!We(y),c=(y,w)=>{if(l(w))return[w];if(!ml(y)||!Array.isArray(w)||w.length===0)return[];return w.every((P)=>l(P))?w:[]},u=(y,w,P,S)=>{if(w===void 0||w===null)return null;if(We(w))return P?o?.(y,w,S)??null:null;if(V(w))return null;let E=String(w);if(ye(E))return P?o?.(y,E,S)??null:null;return s(E)},p=(y,w,P=!0,S="self")=>{let E=[];for(let[k,A]of Object.entries(y)){if(c(k,A).length>0)continue;if(w&&(k.startsWith("@")||Hs(k)))continue;if(k.startsWith("$"))continue;let R=u(k,A,P,S);if(R!==null)E.push([qp(k),R])}return E},h=(y,w,P,S,E)=>{if(P.length===0)return;let k=w;if(k!==null){let _=i(k);if(_===null)return;k=_}let A=ox(y,k,P),R={text:A,conditions:[...y],selector:k,declarations:P,target:S,key:cu(A)};if(O(E)&&E!=="")R.description=E;a.push(R)},m=(y,w,P)=>{let S=y.slice(10).trim();if(S==="")return;let E=[];for(let[A,R]of Object.entries(w)){if(!l(R))continue;let _=p(R,!0,!1,"unscoped");if(_.length>0)E.push({declarations:_,selector:A.trim()})}if(E.length===0)return;let k=aI(P,S,E);a.push({blocks:E,conditions:[...P],declarations:[],key:cu(k),selector:null,target:"unscoped",text:k})},b=(y,w,P,S,E)=>{if(y==="@--")return;if(ml(y)){h([...S,y],null,p(w,!1,!0,"unscoped"),"unscoped",w.$description);return}if(gl(y)){m(y,w,S);return}let k=sx(y,n),A=k===null?y:`@media ${k}`,R=k===null?null:yn(k);if(R!==null&&P!==null){let{auto:_,forced:I}=Fp(P,R);g(w,_,[...S,A],E),g(lI(w),I,S,E);return}g(w,P,[...S,A],E)};function g(y,w,P,S){h(P,w,p(y,!0,!0,S),S,y.$description);for(let[E,k]of Object.entries(y))for(let A of c(E,k))if(E.startsWith("@"))b(E,A,w,P,S);else if(w!==null)g(A,ix(w,E),P,cI(E)?S:"descendant")}return g(e,r,[],"self"),a}var sI,gn="data-color-scheme",fu="jx-color-scheme";var yl=D(()=>{ve();sI=new Set(["all","print","screen","speech"])});function cx(){return`the Intl helpers ${Wp.join(", ")}`}var _n="en-US",Vp="UTC",ax,Wp,lx;var Hp=D(()=>{ax=[{api:"Intl.NumberFormat",params:["value","locale","options"],path:"Intl/formatNumber",summary:"Format a number for a locale — grouping, decimals, currency, percent, units."},{api:"Intl.DateTimeFormat",params:["value","locale","options"],path:"Intl/formatDate",summary:"Format a date or timestamp for a locale. Pass `timeZone` in options."},{api:"Intl.RelativeTimeFormat",params:["value","unit","locale","options"],path:"Intl/formatRelativeTime",summary:'Format a relative time — `-3, "day"` becomes "3 days ago".'},{api:"Intl.ListFormat",params:["values","locale","options"],path:"Intl/formatList",summary:'Join a list the way a locale does — "a, b, and c", not a hand-written comma join.'},{api:"Intl.PluralRules",params:["value","locale","options"],path:"Intl/plural",summary:'Which plural category a number falls in ("one", "few", "other") — many languages have '+"more than two, so a ternary on `n === 1` is wrong outside English."},{api:"Intl.Collator",params:["a","b","locale","options"],path:"Intl/compare",summary:'Compare two strings for sorting. `<` and `sort()` order by UTF-16 code unit, which puts "Zebra" before "apple" and sorts every accented word into the wrong place.'},{api:"Intl.DisplayNames",params:["code","type","locale","options"],path:"Intl/displayName",summary:'The name of a language, region, script or currency in a locale — "de" as "German" or '+'"Deutsch", from CLDR rather than a hand-kept table.'},{api:"Intl.Segmenter",params:["value","granularity","locale"],path:"Intl/segment",summary:"Split text into graphemes, words or sentences (UAX #29). `[...str]` splits code points, so it cuts an emoji with a skin-tone modifier in half."}],Wp=ax.map((e)=>e.path),lx=Object.fromEntries(ax.map((e)=>[e.path,e.params.indexOf("locale")]))});function uI(e){return e.replaceAll("~1","/").replaceAll("~0","~")}function Dt(e){return e.replaceAll("~","~0").replaceAll("/","~1")}function bs(e){if(e==="")return[];return e.split("/").map((t)=>uI(t))}function Wt(e,t){let r=e;for(let n of bs(t))r=r?.[n];return r}function Je(e,t){let r=e;for(let n of bs(t))r+=Bp.test(n)?`.${n}`:`[${JSON.stringify(n)}]`;return r}function ux(e,t){let r=e;for(let[n,s]of bs(t).entries()){let i=n===0?"":"?.";r+=Bp.test(s)?`${n===0?".":i}${s}`:`${i}[${JSON.stringify(s)}]`}return r}function xs(e){return Bp.test(e)?e:JSON.stringify(e)}function fx(e){let t=e.replaceAll(/[^A-Za-z0-9_$]/g,"_");if(t==="")return"ref";return/^\d/.test(t)?`_${t}`:t}var Bp;var Fo=D(()=>{Bp=/^[A-Za-z_$][A-Za-z0-9_$]*$/});function Up(e){let t=e.$map;return V(t)?t:void 0}function hx(e){return V(e)&&!Array.isArray(e)&&"operator"in e}function bl(e){return V(e)&&!Array.isArray(e)&&"$ref"in e}function mI(e,t,r){let n=lx[e];if(n===void 0||n<0||t[n]!=null)return t;let s=Wt(r.$page,"locale");if(!O(s)||s==="")return t;let i=[...t];return i[n]=s,i}function xx(e){return e.startsWith("window#/")&&dI.has(e.slice(8))}function $s(e){return gx.has(e)}function lt(e,t){if(!e)return;let r=(e.depth??0)+1;if(r>hI)return;return{depth:r,path:[...e.path??[],...Array.isArray(t)?t:[t]],report:e.report}}function nt(e,t,r,n,s){if(e===null||e===void 0)return e;if(hx(e))return qr(e,t,r,n,s);if(bl(e)){let i=du(e.$ref,t,r,n);return s?.report(s.path??[],i),i}if(Array.isArray(e))return $x(e,t,r,n,s);return s?.report(s.path??[],e),e}function $x(e,t,r,n,s){return e.map((i,o)=>nt(i,t,r,n,lt(s,o)))}function gI(e,t,r,n){let s=(i)=>{if(!e.slice(i.length).includes("/"))return t;return du(e.slice(0,e.lastIndexOf("/")),t,r,n)};if(e.startsWith("#/state/"))return s("#/state/");if(e.startsWith("parent#/"))return s("parent#/");if(e.startsWith("$map/")||e.startsWith("$args/"))return e.split("/").length>2?du(e.slice(0,e.lastIndexOf("/")),t,r,n):void 0;return}function du(e,t,r,n){if(e==="$reduce/acc")return n?.acc;if(e.startsWith("$reduce/"))return n?.acc;if(e.startsWith("$args/")){let s=e.slice(6).split("/"),i=n?.args?.[s[0]];return s.length>1?Wt(i,s.slice(1).join("/")):i}if(e.startsWith("event#/")){let s=e.slice(7);return Wt(r,s)}if(e.startsWith("$map/")){let s=e.split("/"),[,i]=s,o,a=Up(t);if(i==="item")o=n?.item??a?.item??t["$map/item"];else if(i==="index")o=n?.index??a?.index??t["$map/index"];else o=a?.[i]??t[`$map/${i}`];return s.length>2?Wt(o,s.slice(2).join("/")):o}if(e.startsWith("#/state/"))return Wt(t,e.slice(8));if(e.startsWith("parent#/"))return Wt(t,e.slice(8));if(e.startsWith("window#/"))return Wt(globalThis.window,e.slice(8));if(e.startsWith("document#/"))return Wt(globalThis.document,e.slice(10));return Wt(t,e)??null}function yI(e,t,r,n){if(e.startsWith("$map/")){let s=e.split("/"),[,i]=s,o,a=Up(t);if(i==="item")o=n?.item??a?.item??t["$map/item"];else if(i==="index")o=n?.index??a?.index??t["$map/index"];else o=a?.[i]??t[`$map/${i}`];if(s.length>2){let l=s.slice(2),c=l.pop(),u=l.length>0?Wt(o,l.join("/")):o;return{key:c,obj:u}}return{key:i==="item"?"$map/item":"$map/index",obj:Up(t)??t}}if(e.startsWith("#/state/")){let s=e.slice(8);if(s.indexOf("/")===-1)return{key:s,obj:t};let o=bs(s),a=o.pop(),l=t;for(let c of o)l=l[c];return{key:a,obj:l}}return{key:e,obj:t}}function qr(e,t,r,n,s){let i=bI(e,t,r,n,s);return s?.report(s.path??[],i),i}function px(e,t,r){switch(e){case"+":return t+r;case"-":return t-r;case"*":return t*r;case"/":return t/r;case"%":return t%r;case"<":return t<r;case"<=":return t<=r;case">":return t>r;default:return t>=r}}function bI(e,t,r,n,s){let{operator:i,target:o,value:a,initial:l}=e;if(!fI.has(i))throw Error(`$expression: unknown operator "${i}"`);if(zp.has(i)&&!("value"in e)){let c=nt(o,t,r,n,lt(s,"target"));if(i==="!")return!c;if(i==="-")return-c}if(i==="call"){let c=bl(o)?o.$ref:void 0;if(!O(c))throw TypeError("$expression: call target must be a $ref pointer");let u=(n?.callDepth??0)+1;if(u>dx)throw Error(`$expression: call depth exceeded (${dx})`);let p=Array.isArray(a)?a.map((m,b)=>nt(m,t,r,n,lt(s,["value",b]))):[];if(c.startsWith("window#/")){if(!xx(c))throw Error(`$expression: "${c}" is not a blessed pure global`);let m=c.slice(8),b=pI.get(m);if(b)return b(...mI(m,p,t));let g=Wt(globalThis.window,m),y=m.lastIndexOf("/"),w=y===-1?globalThis.window:Wt(globalThis.window,m.slice(0,y));return g.apply(w,p)}let h=du(c,t,r,n);if(Vt(h))return h.apply(gI(c,t,r,n),p);if(V(h)&&"$expression"in h){let m=h,b={};for(let[g,y]of(m.parameters??[]).entries()){let w=O(y)?y:y?.name??"";if(!w)continue;b[w]=p[g]===void 0&&V(y)&&"default"in y?y.default:p[g]}return qr(m.$expression,t,r,{args:b,callDepth:u})}throw TypeError(`$expression: call target "${c}" is not callable`)}if(Yp.has(i)){if(i==="?:"){let m=nt(o,t,r,n,lt(s,"target"));if(s){let b=nt(a,t,r,n,lt(s,"value")),g=nt(l,t,r,n,lt(s,"initial"));return m?b:g}return m?nt(a,t,r,n):nt(l,t,r,n)}let c=nt(o,t,r,n,lt(s,"target")),u=String(c),p=e.cases??{},h=Object.hasOwn(p,u);if(s){let m;for(let[g,y]of Object.entries(p)){let w=nt(y,t,r,n,lt(s,["cases",g]));if(g===u)m=w}let b=nt(e.default,t,r,n,lt(s,"default"));return h?m:b}return h?nt(p[u],t,r,n):nt(e.default,t,r,n)}if(Gp.has(i)){let c=nt(o,t,r,n,lt(s,"target")),u=nt(a,t,r,n,lt(s,"value"));switch(i){case"===":return c===u;case"!==":return c!==u;case"&&":return c&&u;case"||":return c||u;case"??":return c??u;default:return px(i,c,u)}}if(yx.has(i)){let c=nt(a,t,r,n,lt(s,"value")),{obj:u,key:p}=yI(o.$ref,t,r,n);u[p]=i==="="?c:px(i.slice(0,-1),u[p],c);return}if(bx.has(i)){let c=nt(o,t,r,n,lt(s,"target"));switch(i){case"push":return c.push(nt(a,t,r,n,lt(s,"value")));case"unshift":return c.unshift(nt(a,t,r,n,lt(s,"value")));case"pop":return c.pop();case"shift":return c.shift();case"splice":{let u=nt(a,t,r,n,lt(s,"value"));return c.splice(...u)}default:break}}if(Xp.has(i)){let c=nt(o,t,r,n,lt(s,"target")),u=a===void 0?[]:Array.isArray(a)?$x(a,t,r,n,lt(s,"value")):[nt(a,t,r,n,lt(s,"value"))],p=Wt(c,i);if(!Vt(p))return;return p.apply(c,u)}if(Kp.has(i)){let c=nt(o,t,r,n,lt(s,"target")),u=a;if(i==="reduce"){let p=nt(l,t,r,n,lt(s,"initial"));for(let[h,m]of c.entries())p=qr(u,t,r,{acc:p,index:h,item:m},h===0?lt(s,"value"):void 0);return p}if(i==="map")return c.map((p,h)=>qr(u,t,r,{...n,index:h,item:p},h===0?lt(s,"value"):void 0));if(i==="filter")return c.filter((p,h)=>qr(u,t,r,{...n,index:h,item:p},h===0?lt(s,"value"):void 0))}return}function ut(e,t){if(e===null)return"null";if(e===void 0)return"undefined";if(hx(e))return ur(e,t);if(bl(e))return Zp(e.$ref,t);if(Array.isArray(e))return e.map((r)=>ut(r,t)).join(", ");return JSON.stringify(e)}function xI(e){return`_fx_${e.replaceAll(/[^A-Za-z0-9_$]/g,"_")}`}function Zp(e,t){let r=t.statePrefix??"state",n=t.eventParam??"event";if(e==="$reduce/acc")return"_acc";if(e.startsWith("$reduce/"))return"_acc";if(e.startsWith("$args/"))return Je("_args",e.slice(6));if(e.startsWith("event#/"))return Je(n,e.slice(7));if(e.startsWith("$map/")){let s=e.split("/"),[,i]=s;if(i==="item")return s.length>2?Je("_item",s.slice(2).join("/")):"_item";if(i==="index")return"_index";return`_${i}`}if(e.startsWith("#/state/"))return Je(r,e.slice(8));if(e.startsWith("parent#/"))return Je(r,e.slice(8));if(e.startsWith("window#/"))return Je("window",e.slice(8));if(e.startsWith("document#/"))return Je("document",e.slice(10));return Je(r,e)}function mx(e,t){if(bl(e))return Zp(e.$ref,t);return ut(e,t)}function $I(e,t,r){let n=(o)=>t[o]??"undefined",s=`(${r.statePrefix??"state"}?.$page?.locale ?? ${JSON.stringify(_n)})`,i=JSON.stringify(Vp);switch(e){case"Intl/formatNumber":return`new Intl.NumberFormat(${n(1)} ?? ${s}, ${n(2)}).format(${n(0)})`;case"Intl/formatDate":return`new Intl.DateTimeFormat(${n(1)} ?? ${s}, {timeZone: ${i}, ...${n(2)}}).format(new Date(${n(0)}))`;case"Intl/formatRelativeTime":return`new Intl.RelativeTimeFormat(${n(2)} ?? ${s}, ${n(3)}).format(${n(0)}, ${n(1)})`;case"Intl/formatList":return`new Intl.ListFormat(${n(1)} ?? ${s}, ${n(2)}).format(${n(0)})`;case"Intl/plural":return`new Intl.PluralRules(${n(1)} ?? ${s}, ${n(2)}).select(${n(0)})`;case"Intl/compare":return`new Intl.Collator(${n(2)} ?? ${s}, ${n(3)}).compare(${n(0)}, ${n(1)})`;case"Intl/displayName":return`new Intl.DisplayNames(${n(2)} ?? ${s}, {...${n(3)}, type: ${n(1)} ?? 'language'}).of(${n(0)})`;case"Intl/segment":return`[...new Intl.Segmenter(${n(2)} ?? ${s}, {granularity: ${n(1)} ?? 'grapheme'}).segment(${n(0)})].map((p) => p.segment)`;default:return null}}function ur(e,t={}){let{operator:r,target:n,value:s,initial:i}=e;if(zp.has(r)&&!("value"in e)){let o=ut(n,t);if(r==="!")return`!(${o})`;if(r==="-")return`-(${o})`}if(r==="call"){let o=(bl(n)?n.$ref:void 0)??"",a=Array.isArray(s)?s.map((l)=>ut(l,t)):[];if(o.startsWith("window#/")){if(!xx(o))throw Error(`$expression: "${o}" is not a blessed pure global`);let l=$I(o.slice(8),a,t);if(l)return l;return`window.${o.slice(8).replaceAll("/",".")}(${a.join(", ")})`}if(o.startsWith("#/state/")){let l=o.slice(8),c=t.formulaParams?.[l];if(c){let u=c.map((p,h)=>`${JSON.stringify(p)}: ${a[h]??"undefined"}`).join(", ");return`${xI(l)}(${t.statePrefix??"state"}, { ${u} })`}}return`${Zp(o,t)}(${a.join(", ")})`}if(Yp.has(r)){if(r==="?:"){let c=ut(n,t),u=ut(s,t),p=ut(i,t);return`(${c} ? ${u} : ${p})`}let o=ut(n,t),a=Object.entries(e.cases??{}).map(([c,u])=>`_d === ${JSON.stringify(c)} ? ${ut(u,t)} : `).join(""),l="default"in e?ut(e.default,t):"undefined";return`((_d) => ${a}${l})(String(${o}))`}if(Gp.has(r)){let o=ut(n,t),a=ut(s,t);return`(${o} ${r} ${a})`}if(yx.has(r)){let o=mx(n,t),a=ut(s,t);return`${o} ${r} ${a}`}if(bx.has(r)){let o=mx(n,t);switch(r){case"push":return`${o}.push(${ut(s,t)})`;case"unshift":return`${o}.unshift(${ut(s,t)})`;case"pop":return`${o}.pop()`;case"shift":return`${o}.shift()`;case"splice":{let a=Array.isArray(s)?s.map((l)=>ut(l,t)).join(", "):ut(s,t);return`${o}.splice(${a})`}default:break}}if(Xp.has(r)){let o=ut(n,t),a=s===void 0?"":Array.isArray(s)?s.map((l)=>ut(l,t)).join(", "):ut(s,t);return`(${o})?.${r}?.(${a})`}if(Kp.has(r)){let o=ut(n,t),a=ur(s,t);if(r==="reduce"){let l=ut(i,t);return`${o}.reduce((_acc, _item, _index) => ${a}, ${l})`}if(r==="map")return`${o}.map((_item, _index) => ${a})`;if(r==="filter")return`${o}.filter((_item, _index) => ${a})`}return"undefined"}function qo(e,t,r,n){return nt(e,t,r,n)}function ws(e,t={}){return ut(e,t)}var gx,zp,Gp,yx,bx,Kp,Yp,Xp,fI,dI,pI,dx=64,hI=64;var xl=D(()=>{Hp();ve();Fo();gx=new Set(["=","+=","-=","*=","/=","push","pop","shift","unshift","splice"]),zp=new Set(["!","-"]),Gp=new Set(["+","-","*","/","%","===","!==","<","<=",">",">=","&&","||","??"]),yx=new Set(["=","+=","-=","*=","/="]),bx=new Set(["push","pop","shift","unshift","splice"]),Kp=new Set(["reduce","map","filter"]),Yp=new Set(["?:","switch"]),Xp=new Set(["includes","indexOf","lastIndexOf","join","slice","concat","at","flat","toSorted","toReversed","toSpliced","with","toUpperCase","toLowerCase","trim","trimStart","trimEnd","split","startsWith","endsWith","padStart","padEnd","replaceAll","repeat","charAt","normalize","toLocaleUpperCase","toLocaleLowerCase","toFixed","toPrecision","toLocaleString"]),fI=new Set([...gx,...zp,...Gp,...Kp,...Yp,...Xp,"call"]),dI=new Set(["isNaN","isFinite","parseFloat","parseInt","encodeURIComponent","decodeURIComponent","structuredClone","Math/abs","Math/ceil","Math/floor","Math/round","Math/trunc","Math/sign","Math/sqrt","Math/cbrt","Math/pow","Math/exp","Math/log","Math/log2","Math/log10","Math/min","Math/max","Math/hypot","Number/isInteger","Number/isFinite","Number/isNaN","Number/parseFloat","Number/parseInt","JSON/parse","JSON/stringify","Object/keys","Object/values","Object/entries","Object/fromEntries","Array/from","Array/isArray","Array/of","String/fromCharCode","String/fromCodePoint",...Wp]),pI=new Map([["Intl/compare",(e,t,r,n)=>new Intl.Collator(r??_n,n).compare(e,t)],["Intl/displayName",(e,t,r,n)=>new Intl.DisplayNames(r??_n,{...n,type:t??"language"}).of(e)],["Intl/formatDate",(e,t,r)=>new Intl.DateTimeFormat(t??_n,{timeZone:Vp,...r}).format(new Date(e))],["Intl/formatList",(e,t,r)=>new Intl.ListFormat(t??_n,r).format(e)],["Intl/formatNumber",(e,t,r)=>new Intl.NumberFormat(t??_n,r).format(e)],["Intl/formatRelativeTime",(e,t,r,n)=>new Intl.RelativeTimeFormat(r??_n,n).format(e,t)],["Intl/plural",(e,t,r)=>new Intl.PluralRules(t??_n,r).select(e)],["Intl/segment",(e,t,r)=>[...new Intl.Segmenter(r??_n,{granularity:t??"grapheme"}).segment(e)].map((n)=>n.segment)]])});function wx(e){if("operator"in e)return{kind:"expression",node:e};if("if"in e)return{kind:"if",node:e};if("$switch"in e)return{kind:"switch",node:e};if("stopPropagation"in e)return{kind:"stopPropagation"};if("preventDefault"in e)return{kind:"preventDefault"};return{kind:"dispatch",node:e}}function wI(e){return(V(e)||Vt(e))&&"then"in e&&Vt(e.then)}async function Vo(e,t,r,n={}){let s=n.args?{args:n.args}:void 0;for(let i of e){let o=wx(i);switch(o.kind){case"expression":{let a=qr(o.node,t,r,s);if(wI(a))await a;break}case"if":{let a=o.node,l=qo(a.if,t,r,s)?a.then:a.else;if(Array.isArray(l))await Vo(l,t,r,n);break}case"switch":{let a=o.node,l=String(qo(a.$switch,t,r,s)),c=a.cases??{},u=Object.hasOwn(c,l)?c[l]:a.default;if(Array.isArray(u))await Vo(u,t,r,n);break}case"dispatch":{let a=o.node,l=Vt(n.target)?n.target():n.target,c=r?.currentTarget??l;if(!c)break;let u={};if("detail"in a)u.detail=qo(a.detail,t,r,s);if(a.bubbles!==void 0)u.bubbles=a.bubbles;if(a.composed!==void 0)u.composed=a.composed;c.dispatchEvent(new CustomEvent(a.dispatchEvent,u));break}case"stopPropagation":{r?.stopPropagation();break}case"preventDefault":{r?.preventDefault();break}default:break}}}function Yr(e,t={}){let r=t.indent??"",n=[];for(let s of e){let i=wx(s);switch(i.kind){case"expression":{n.push(`${r}${ur(i.node,t)};`);break}case"if":{let o=i.node,a=ws(o.if,t),l={...t,indent:`${r} `};if(n.push(`${r}if (${a}) {`,Yr(o.then??[],l)),o.else)n.push(`${r}} else {`,Yr(o.else,l));n.push(`${r}}`);break}case"switch":{let o=i.node,a=ws(o.$switch,t),l={...t,indent:`${r} `};n.push(`${r}switch (String(${a})) {`);for(let[c,u]of Object.entries(o.cases??{}))n.push(`${r} case ${JSON.stringify(c)}: {`,Yr(u,l),`${r} break;`,`${r} }`);if(o.default)n.push(`${r} default: {`,Yr(o.default,l),`${r} }`);n.push(`${r}}`);break}case"dispatch":{let o=i.node,a=t.eventParam??"event",l=t.dispatchTarget??`(${a} && ${a}.currentTarget)`,c=[];if("detail"in o)c.push(`detail: ${ws(o.detail,t)}`);if(o.bubbles!==void 0)c.push(`bubbles: ${JSON.stringify(o.bubbles)}`);if(o.composed!==void 0)c.push(`composed: ${JSON.stringify(o.composed)}`);let u=c.length>0?`, { ${c.join(", ")} }`:"";n.push(`${r}${l}?.dispatchEvent(new CustomEvent(${JSON.stringify(o.dispatchEvent)}${u}));`);break}case"stopPropagation":{n.push(`${r}${t.eventParam??"event"}?.stopPropagation();`);break}case"preventDefault":{n.push(`${r}${t.eventParam??"event"}?.preventDefault();`);break}default:break}}return n.join(`
|
|
117
|
-
`)}var
|
|
118
|
-
`)}var
|
|
119
|
-
`)}function
|
|
120
|
-
`)}function
|
|
121
|
-
${t}`}function
|
|
122
|
-
function ${
|
|
114
|
+
More information: The file containing the code for esbuild's JavaScript API (${__filename}) does not appear to be inside the esbuild package on the file system, which usually means that the esbuild package was bundled into another file. This is problematic because the API needs to run a binary executable inside the esbuild package which is located using a relative path from the API code to the executable. If the esbuild package is bundled, the relative path will be incorrect and the executable won't be found.`);{let{binPath:e,isWASM:t}=L2();if(t)return["node",[e]];else return[e,[]]}},gl=()=>V2.isatty(2),W2={readFile(e,t){try{let r=Ui.readFileSync(e,"utf8");try{Ui.unlinkSync(e)}catch{}t(null,r)}catch(r){t(r,null)}},writeFile(e,t){try{let r=zx();Ui.writeFileSync(r,e),t(r)}catch{t(null)}}},H2={readFile(e,t){try{Ui.readFile(e,"utf8",(r,n)=>{try{Ui.unlink(e,()=>t(r,n))}catch{t(r,n)}})}catch(r){t(r,null)}},writeFile(e,t){try{let r=zx();Ui.writeFile(r,e,(n)=>n!==null?t(null):t(r))}catch{t(null)}}},B2="0.28.2",U2=(e)=>Ki().build(e),z2=(e)=>Ki().context(e),G2=(e,t)=>Ki().transform(e,t),K2=(e,t)=>Ki().formatMessages(e,t),Y2=(e,t)=>Ki().analyzeMetafile(e,t),X2=(e)=>{if(ur&&!bl){if(!fr)fr=pu(ur);return fr.buildSync(e)}let t;return du((r)=>r.buildOrContext({callName:"buildSync",refs:null,options:e,isTTY:gl(),defaultWD:zi,callback:(n,s)=>{if(n)throw n;t=s}})),t},Z2=(e,t)=>{if(ur&&!bl){if(!fr)fr=pu(ur);return fr.transformSync(e,t)}let r;return du((n)=>n.transform({callName:"transformSync",refs:null,input:e,options:t||{},isTTY:gl(),fs:W2,callback:(s,i)=>{if(s)throw s;r=i}})),r},Q2=(e,t)=>{if(ur&&!bl){if(!fr)fr=pu(ur);return fr.formatMessagesSync(e,t)}let r;return du((n)=>n.formatMessages({callName:"formatMessagesSync",refs:null,messages:e,options:t,callback:(s,i)=>{if(s)throw s;r=i}})),r},eI=(e,t)=>{if(ur&&!bl){if(!fr)fr=pu(ur);return fr.analyzeMetafileSync(e,t)}let r;return du((n)=>n.analyzeMetafile({callName:"analyzeMetafileSync",refs:null,metafile:typeof e==="string"?e:JSON.stringify(e),options:t,callback:(s,i)=>{if(s)throw s;r=i}})),r},tI=()=>{if(uu)uu();if(fr)fr.stop();return Promise.resolve()},Mp=!1,rI=(e)=>{if(e=k2(e||{}),e.wasmURL)throw Error('The "wasmURL" option only works in the browser');if(e.wasmModule)throw Error('The "wasmModule" option only works in the browser');if(e.worker)throw Error('The "worker" option only works in the browser');if(Mp)throw Error('Cannot call "initialize" more than once');return Ki(),Mp=!0,Promise.resolve()},zi=process.cwd(),ml,uu,Ki=()=>{if(ml)return ml;let[e,t]=Ux(),r=Bx.spawn(e,t.concat("--service=0.28.2","--ping"),{windowsHide:!0,stdio:["pipe","pipe","inherit"],cwd:zi}),{readFromStdout:n,afterClose:s,service:i}=Vx({writeToStdin(u){r.stdin.write(u,(p)=>{if(p)s(p)})},readFileSync:Ui.readFileSync,isSync:!1,hasFS:!0,esbuild:yl});r.stdin.on("error",s),r.on("error",s);let{stdin:o,stdout:a}=r;a.on("data",n),a.on("end",s),uu=()=>{o.destroy(),a.destroy(),r.kill(),Mp=!1,ml=void 0,uu=void 0};let l=0;if(r.unref(),o.unref)o.unref();if(a.unref)a.unref();let c={ref(){if(++l===1)r.ref()},unref(){if(--l===0)r.unref()}};return ml={build:(u)=>new Promise((p,h)=>{i.buildOrContext({callName:"build",refs:c,options:u,isTTY:gl(),defaultWD:zi,callback:(m,b)=>m?h(m):p(b)})}),context:(u)=>new Promise((p,h)=>i.buildOrContext({callName:"context",refs:c,options:u,isTTY:gl(),defaultWD:zi,callback:(m,b)=>m?h(m):p(b)})),transform:(u,p)=>new Promise((h,m)=>i.transform({callName:"transform",refs:c,input:u,options:p||{},isTTY:gl(),fs:H2,callback:(b,g)=>b?m(b):h(g)})),formatMessages:(u,p)=>new Promise((h,m)=>i.formatMessages({callName:"formatMessages",refs:c,messages:u,options:p,callback:(b,g)=>b?m(b):h(g)})),analyzeMetafile:(u,p)=>new Promise((h,m)=>i.analyzeMetafile({callName:"analyzeMetafile",refs:c,metafile:typeof u==="string"?u:JSON.stringify(u),options:p,callback:(b,g)=>b?m(b):h(g)}))},ml},du=(e)=>{let[t,r]=Ux(),n=new Uint8Array,{readFromStdout:s,afterClose:i,service:o}=Vx({writeToStdin(l){if(n.length!==0)throw Error("Must run at most one command");n=l},isSync:!0,hasFS:!0,esbuild:yl});e(o);let a=Bx.execFileSync(t,r.concat("--service=0.28.2"),{cwd:zi,windowsHide:!0,input:n,maxBuffer:+process.env.ESBUILD_MAX_BUFFER||16777216});s(a),i(null)},zx=()=>Jp.join(q2.tmpdir(),`esbuild-${F2.randomBytes(32).toString("hex")}`),fr=null,pu=(e)=>{let{port1:t,port2:r}=new e.MessageChannel,n=new e.Worker(__filename,{workerData:{workerPort:r,defaultWD:zi,esbuildVersion:"0.28.2"},transferList:[r],execArgv:[]}),s=0,i=(c)=>{let u=Error(`Build failed with 1 error:
|
|
115
|
+
error: ${c}`),p=[{id:"",pluginName:"",text:c,location:null,notes:[],detail:void 0}];return u.errors=p,u.warnings=[],u},o=(c)=>{if(!c)return;let u=c.plugins;if(u&&u.length>0)throw i("Cannot use plugins in synchronous API calls")},a=(c,u)=>{for(let p in u)c[p]=u[p]},l=(c,u)=>{let p=s++,h=new SharedArrayBuffer(8),m=new Int32Array(h),b={sharedBuffer:h,id:p,command:c,args:u};n.postMessage(b);let g=Atomics.wait(m,0,0);if(g!=="ok"&&g!=="not-equal")throw Error("Internal error: Atomics.wait() failed: "+g);let{message:{id:y,resolve:w,reject:j,properties:S}}=e.receiveMessageOnPort(t);if(p!==y)throw Error(`Internal error: Expected id ${p} but got id ${y}`);if(j)throw a(j,S),j;return w};return n.unref(),{buildSync(c){return o(c),l("build",[c])},transformSync(c,u){return l("transform",[c,u])},formatMessagesSync(c,u){return l("formatMessages",[c,u])},analyzeMetafileSync(c,u){return l("analyzeMetafile",[c,u])},stop(){n.terminate(),fr=null}}},nI=()=>{let e=ur.workerData.workerPort,t=ur.parentPort,r=(n)=>{let s={};if(n&&typeof n==="object")for(let i in n)s[i]=n[i];return s};try{let n=Ki();zi=ur.workerData.defaultWD,t.on("message",(s)=>{(async()=>{let{sharedBuffer:i,id:o,command:a,args:l}=s,c=new Int32Array(i);try{switch(a){case"build":e.postMessage({id:o,resolve:await n.build(l[0])});break;case"transform":e.postMessage({id:o,resolve:await n.transform(l[0],l[1])});break;case"formatMessages":e.postMessage({id:o,resolve:await n.formatMessages(l[0],l[1])});break;case"analyzeMetafile":e.postMessage({id:o,resolve:await n.analyzeMetafile(l[0],l[1])});break;default:throw Error(`Invalid command: ${a}`)}}catch(u){e.postMessage({id:o,reject:u,properties:r(u)})}Atomics.add(c,0,1),Atomics.notify(c,0,1/0)})()})}catch(n){t.on("message",(s)=>{let{sharedBuffer:i,id:o}=s,a=new Int32Array(i);e.postMessage({id:o,reject:n,properties:r(n)}),Atomics.add(a,0,1),Atomics.notify(a,0,1/0)})}};if(bl)nI();var sI=yl});import{createRequire as iI}from"node:module";import{join as oI}from"node:path";function Lp(e,t){return iI(oI(t,"package.json")).resolve(e)}function aI(e){return e==="node"||e==="bun"?"node":"browser"}async function Fp(e){let t=await Promise.resolve().then(() => br(mu(),1)),{entry:r}=e,n={bundle:!0,external:e.external,format:"esm",logLevel:"silent",minify:e.minify,platform:aI(e.target),plugins:e.plugins,write:!1};if(e.conditions)n.conditions=e.conditions;if(e.define)n.define=e.define;if("path"in r)n.entryPoints=[r.path];else n.stdin={contents:r.source,loader:"js",resolveDir:r.resolveDir,sourcefile:"jx-entry.js"};return(await t.build({...n,write:!1})).outputFiles[0].text}var Kx=()=>{};var Yx=".jx-entry-";import{rmSync as cI,writeFileSync as Xx}from"node:fs";import{tmpdir as uI}from"node:os";import{basename as fI,join as dI,resolve as pI}from"node:path";function Qx(e){return Vi(e)||e.startsWith("./")||e.startsWith("../")}function qp(e,t,r){if(Vi(e))return Lp(e.slice(eu.length),r);return pI(t,e)}function e0(e,t){return Lp(e,t)}function mI(e){let{onFileLoaded:t,resolver:r}=e;if(r===void 0&&t===void 0)return[];return[{name:"jx-bundle-hooks",setup:(s)=>{if(r!==void 0)s.onResolve({filter:r.filter},(i)=>r.resolve(i));if(t!==void 0)s.onLoad({filter:/.*/},(i)=>{t(i.path)})}}]}function hI(e){if(e==="cloudflare-workers"||e==="cloudflare-pages")return{conditions:["workerd","worker"],external:["cloudflare:*","node:*"],target:"workerd"};return{target:e==="bun"?"bun":"node"}}function yI(e){return e.minify??e.target==="browser"}function bI(e){let t={};if(e.conditions)t.conditions=e.conditions;if(e.target==="browser")t.define={...gI};return t}function t0(e){return{...bI(e),external:e.external??[],minify:yI(e),plugins:mI(e),target:e.target}}async function r0(e,t){let r=await Fp({entry:{path:e.entryPath},...t0(t)});Xx(e.outfile,r,"utf8")}function Vp(e){return e==="<stdin>"||fI(e).startsWith(Yx)}async function n0(e,t,r){let n=[],s=dI(uI(),`jx-resolve-${process.pid}.js`);try{await Yi(`export * from ${JSON.stringify(e)};
|
|
116
|
+
`,{outfile:s,resolveDir:t},{...r,minify:!1,onFileLoaded:(i)=>n.push(i)})}catch{return}finally{cI(s,{force:!0})}return n.find((i)=>!Vp(i))}async function Yi(e,{resolveDir:t,outfile:r},n){let s=await Fp({entry:{resolveDir:t,source:e},...t0(n)});Xx(r,s,"utf8")}async function s0(e,{projectRoot:t,outfile:r,adapter:n}){await Yi(e,{outfile:r,resolveDir:t},hI(n))}var Zx,gI;var Wp=D(()=>{Vr();Kx();Zx=["@vue/reactivity","lit-html"];gI={"process.env.NODE_ENV":'"production"'}});function $I(e){return e.split("\\").join("/").replace(/^\.\//,"").replace(/^\//,"").replace(/^pages\//,"")}function i0(e){let t=$I(e),r=t.slice(t.lastIndexOf("/")+1),n=r.lastIndexOf(".");if(n>0)t=t.slice(0,t.length-(r.length-n));if(t.endsWith("/index"))t=t.slice(0,-6)||"/";else if(t==="index")t="/";if(!t.startsWith("/"))t=`/${t}`;let s=[],i=!1,o=!1,a=t.replaceAll(xI,(l,c,u)=>{if(i=!0,c)return o=!0,s.push(c),"*";return s.push(u),`:${u}`});return{isCatchAll:o,isDynamic:i,params:s,urlPattern:a}}function o0(e,t){if(e.isDynamic!==t.isDynamic)return e.isDynamic?1:-1;if(e.isCatchAll!==t.isCatchAll)return e.isCatchAll?1:-1;return e.urlPattern.localeCompare(t.urlPattern)}var xI;var a0=D(()=>{xI=/\[\.\.\.(\w+)\]|\[(\w+)\]/g});function vI(e){return e.replaceAll("~1","/").replaceAll("~0","~")}function l0(e){if(!W(e)||!("paginate"in e))return null;let{each:t,pageSize:r,paginate:n}=e,s=W(n)?n.$ref:void 0,i=O(s)?wI.exec(s)?.[1]:void 0;if(i===void 0)throw TypeError('$paths.paginate must be { "$ref": "#/state/<key>" }');if(!Ct(r)||!Number.isInteger(r)||r<1)throw TypeError("$paths.pageSize must be a positive integer");let o={key:vI(i),pageSize:r};if(t!==void 0){if(!W(t)&&!Array.isArray(t))throw TypeError("$paths.each must be a $paths source");if(W(t)&&"paginate"in t)throw TypeError("$paths.each cannot itself be paged");o.each=t}return o}function Hp(e,t){return Math.max(1,Math.ceil(e/t))}function c0(e,t,r){let n=(t-1)*r;return e.slice(n,n+r)}function Xi(e,t){if(e.endsWith("*")){if(t===1){let r=e.slice(0,-1).replace(/\/$/,"");return r===""?"/":r}return`${e.slice(0,-1)}${t}`}return e.replace(/:[^/]+/,String(t))}function u0(e,t,r,n){let s=Hp(n,r),i=[];for(let o=1;o<=s;o++)i.push({current:o===t,number:o,url:Xi(e,o)});return{first:Xi(e,1),itemCount:n,last:Xi(e,s),next:t<s?Xi(e,t+1):null,number:t,pageCount:s,pageSize:r,pages:i,prev:t>1?Xi(e,t-1):null}}var wI;var f0=D(()=>{be();wI=/^#\/state\/([^/]+)$/});function Xr(e){if(!O(e)||e.trim()==="")return null;try{return new Intl.Locale(e.trim()).toString()}catch{return null}}function xl(e){let t=Xr(e);if(t===null)return"ltr";let r=new Intl.Locale(t),n=r.script??r.maximize().script;return n!==void 0&&SI.has(n)?"rtl":"ltr"}function d0(e){let t=Xr(e);if(t===null)return O(e)?e:"";return new Intl.DisplayNames([t],{type:"language"}).of(t)??t}function Bp(e){let t=e.i18n,r=[];if(!V(t))return{errors:r,i18n:null};let n=Array.isArray(t.locales)?t.locales:[],s=[];for(let a of n){let l=Xr(a);if(l===null){r.push(`i18n.locales: "${String(a)}" is not a well-formed BCP 47 language tag.`);continue}if(!s.includes(l))s.push(l)}let i=Xr(t.defaultLocale)??s[0]??null;if(t.defaultLocale!==void 0&&Xr(t.defaultLocale)===null)r.push(`i18n.defaultLocale: "${String(t.defaultLocale)}" is not a well-formed BCP 47 language tag.`);if(i===null)return r.push("i18n is declared with no usable locale — set `defaultLocale` or `locales`."),{errors:r,i18n:null};if(!s.includes(i))s.unshift(i);let o=t.routing==="prefix-always"||t.routing==="prefix-except-default"?t.routing:EI;return{errors:r,i18n:{defaultLocale:i,locales:s,routing:o}}}function gn(e,t){if(t===null)return null;let r=e.split("/").find(Boolean);if(r===void 0)return t.defaultLocale;let n=Xr(r);return n!==null&&t.locales.includes(n)?n:t.defaultLocale}var SI,hu="^[A-Za-z]{2,8}(-[A-Za-z0-9]{1,8})*$",EI="prefix-except-default";var Zi=D(()=>{be();SI=new Set(["Adlm","Arab","Aran","Armi","Avst","Cprt","Egyd","Egyh","Elym","Gara","Hatr","Hebr","Hluw","Hung","Khar","Lydi","Mand","Mani","Mend","Merc","Mero","Narb","Nbat","Nkoo","Orkh","Palm","Phli","Phlp","Phnx","Prti","Rohg","Samr","Sarb","Sogd","Sogo","Syrc","Thaa","Todr","Yezi"])});function jr(e){return e.replaceAll(/[A-Z]/g,(t)=>`-${t.toLowerCase()}`)}function p0(e,t){if(e.startsWith("@--"))return t[e.slice(1)]??e.slice(1);if(e.startsWith("@(")){let r=e.slice(2,-1).trim();return jI.has(r.toLowerCase())?r:e.slice(1)}return null}function $l(e){return e.startsWith("@position-try")||e.startsWith("@property")||e.startsWith("@font-face")||e.startsWith("@counter-style")}function vl(e){return e.startsWith("@keyframes")}function m0(e,t){let r=[];for(let n of wl(e))for(let s of wl(t))r.push(PI(n,s));return r.join(", ")}function PI(e,t){let r=yu(t,e);if(r!==null)return r;if(t.startsWith("[")||t.startsWith(":")||t.startsWith("."))return`${e}${t}`;return`${e} ${t}`}function Up(e){let t=[],r=null,n=0;for(let s=0;s<e.length;s+=1){let i=e[s];if(r){if(i==="\\")s+=1;else if(i===r)r=null;continue}if(i==="\\")s+=1;else if(i==='"'||i==="'")r=i;else if(i==="[")n+=1;else if(i==="]")n=Math.max(0,n-1);else if(i==="&"&&n===0)t.push(s)}return t}function yu(e,t){return Up(e).length>0?kI(e,t):null}function kI(e,t){let r="",n=0;for(let s of Up(e))r+=e.slice(n,s)+t,n=s+1;return r+e.slice(n)}function wl(e){let t=[],r=0,n=null,s=0;for(let o=0;o<e.length;o+=1){let a=e[o];if(n){if(a==="\\")o+=1;else if(a===n)n=null;continue}if(a==='"'||a==="'")n=a;else if(a==="("||a==="[")r+=1;else if(a===")"||a==="]")r=Math.max(0,r-1);else if(a===","&&r===0)t.push(e.slice(s,o)),s=o+1}t.push(e.slice(s));let i=t.flatMap((o)=>{let a=o.trim();return a===""?[]:[a]});return i.length>0?i:[e]}function bn(e){let t=/^\(\s*prefers-color-scheme\s*:\s*(light|dark)\s*\)$/.exec(e.trim())?.[1];return t==="light"||t==="dark"?t:null}function zp(e,t){if(e===":root"||e==="html")return{auto:`${e}:where(:not([${yn}]))`,forced:`${e}:where([${yn}="${t}"])`};return{auto:`:where(:root:not([${yn}])) ${e}`,forced:`:where(:root[${yn}="${t}"]) ${e}`}}function zs(e){return e.startsWith(":")||e.startsWith(".")||e.startsWith("&")||e.startsWith("[")}function Gp(e){return e.startsWith("--")?e:jr(e)}function gu(e){let t=2166136261;for(let r=0;r<e.length;r+=1)t^=e.charCodeAt(r),t=Math.imul(t,16777619);return(t>>>0).toString(36)}function h0(e,t,r){let n=r.map(([i,o])=>`${i}: ${o}`).join("; "),s=t===null?n:`${t} { ${n} }`;for(let i=e.length-1;i>=0;i-=1)s=`${e[i]} { ${s} }`;return s}function _I(e,t,r){let n=r.map(({selector:i,declarations:o})=>`${i} { ${o.map(([a,l])=>`${a}: ${l}`).join("; ")} }`).join(" "),s=`@keyframes ${t} { ${n} }`;for(let i=e.length-1;i>=0;i-=1)s=`${e[i]} { ${s} }`;return s}function AI(e){let t=Object.keys(e).filter((n)=>vl(n));if(t.length===0)return e;let r={...e};for(let n of t)delete r[n];return r}function RI(e){let r=Up(e).at(-1),n=r===void 0?e:e.slice(r+1);return n===""||n.startsWith(":")||n.startsWith(".")||n.startsWith("[")}function Ho(e,t={}){let{scope:r=null,mediaQueries:n={},transposeValue:s=(y)=>y,transposeSelector:i=(y)=>y,resolveValue:o}=t,a=[],l=(y)=>y!==null&&typeof y==="object"&&!Array.isArray(y)&&!He(y),c=(y,w)=>{if(l(w))return[w];if(!$l(y)||!Array.isArray(w)||w.length===0)return[];return w.every((j)=>l(j))?w:[]},u=(y,w,j,S)=>{if(w===void 0||w===null)return null;if(He(w))return j?o?.(y,w,S)??null:null;if(V(w))return null;let E=String(w);if(ye(E))return j?o?.(y,E,S)??null:null;return s(E)},p=(y,w,j=!0,S="self")=>{let E=[];for(let[k,A]of Object.entries(y)){if(c(k,A).length>0)continue;if(w&&(k.startsWith("@")||zs(k)))continue;if(k.startsWith("$"))continue;let R=u(k,A,j,S);if(R!==null)E.push([Gp(k),R])}return E},h=(y,w,j,S,E)=>{if(j.length===0)return;let k=w;if(k!==null){let _=i(k);if(_===null)return;k=_}let A=h0(y,k,j),R={text:A,conditions:[...y],selector:k,declarations:j,target:S,key:gu(A)};if(O(E)&&E!=="")R.description=E;a.push(R)},m=(y,w,j)=>{let S=y.slice(10).trim();if(S==="")return;let E=[];for(let[A,R]of Object.entries(w)){if(!l(R))continue;let _=p(R,!0,!1,"unscoped");if(_.length>0)E.push({declarations:_,selector:A.trim()})}if(E.length===0)return;let k=_I(j,S,E);a.push({blocks:E,conditions:[...j],declarations:[],key:gu(k),selector:null,target:"unscoped",text:k})},b=(y,w,j,S,E)=>{if(y==="@--")return;if($l(y)){h([...S,y],null,p(w,!1,!0,"unscoped"),"unscoped",w.$description);return}if(vl(y)){m(y,w,S);return}let k=p0(y,n),A=k===null?y:`@media ${k}`,R=k===null?null:bn(k);if(R!==null&&j!==null){let{auto:_,forced:I}=zp(j,R);g(w,_,[...S,A],E),g(AI(w),I,S,E);return}g(w,j,[...S,A],E)};function g(y,w,j,S){h(j,w,p(y,!0,!0,S),S,y.$description);for(let[E,k]of Object.entries(y))for(let A of c(E,k))if(E.startsWith("@"))b(E,A,w,j,S);else if(w!==null)g(A,m0(w,E),j,RI(E)?S:"descendant")}return g(e,r,[],"self"),a}var jI,yn="data-color-scheme",bu="jx-color-scheme";var Sl=D(()=>{be();jI=new Set(["all","print","screen","speech"])});function b0(){return`the Intl helpers ${Yp.join(", ")}`}var _n="en-US",Kp="UTC",g0,Yp,y0;var Xp=D(()=>{g0=[{api:"Intl.NumberFormat",params:["value","locale","options"],path:"Intl/formatNumber",summary:"Format a number for a locale — grouping, decimals, currency, percent, units."},{api:"Intl.DateTimeFormat",params:["value","locale","options"],path:"Intl/formatDate",summary:"Format a date or timestamp for a locale. Pass `timeZone` in options."},{api:"Intl.RelativeTimeFormat",params:["value","unit","locale","options"],path:"Intl/formatRelativeTime",summary:'Format a relative time — `-3, "day"` becomes "3 days ago".'},{api:"Intl.ListFormat",params:["values","locale","options"],path:"Intl/formatList",summary:'Join a list the way a locale does — "a, b, and c", not a hand-written comma join.'},{api:"Intl.PluralRules",params:["value","locale","options"],path:"Intl/plural",summary:'Which plural category a number falls in ("one", "few", "other") — many languages have '+"more than two, so a ternary on `n === 1` is wrong outside English."},{api:"Intl.Collator",params:["a","b","locale","options"],path:"Intl/compare",summary:'Compare two strings for sorting. `<` and `sort()` order by UTF-16 code unit, which puts "Zebra" before "apple" and sorts every accented word into the wrong place.'},{api:"Intl.DisplayNames",params:["code","type","locale","options"],path:"Intl/displayName",summary:'The name of a language, region, script or currency in a locale — "de" as "German" or '+'"Deutsch", from CLDR rather than a hand-kept table.'},{api:"Intl.Segmenter",params:["value","granularity","locale"],path:"Intl/segment",summary:"Split text into graphemes, words or sentences (UAX #29). `[...str]` splits code points, so it cuts an emoji with a skin-tone modifier in half."}],Yp=g0.map((e)=>e.path),y0=Object.fromEntries(g0.map((e)=>[e.path,e.params.indexOf("locale")]))});function OI(e){return e.replaceAll("~1","/").replaceAll("~0","~")}function Lt(e){return e.replaceAll("~","~0").replaceAll("/","~1")}function ws(e){if(e==="")return[];return e.split("/").map((t)=>OI(t))}function Ut(e,t){let r=e;for(let n of ws(t))r=r?.[n];return r}function Me(e,t){let r=e;for(let n of ws(t))r+=Zp.test(n)?`.${n}`:`[${JSON.stringify(n)}]`;return r}function x0(e,t){let r=e;for(let[n,s]of ws(t).entries()){let i=n===0?"":"?.";r+=Zp.test(s)?`${n===0?".":i}${s}`:`${i}[${JSON.stringify(s)}]`}return r}function vs(e){return Zp.test(e)?e:JSON.stringify(e)}function $0(e){let t=e.replaceAll(/[^A-Za-z0-9_$]/g,"_");if(t==="")return"ref";return/^\d/.test(t)?`_${t}`:t}var Zp;var Bo=D(()=>{Zp=/^[A-Za-z_$][A-Za-z0-9_$]*$/});function Qp(e){let t=e.$map;return V(t)?t:void 0}function E0(e){return V(e)&&!Array.isArray(e)&&"operator"in e}function El(e){return V(e)&&!Array.isArray(e)&&"$ref"in e}function II(e,t,r){let n=y0[e];if(n===void 0||n<0||t[n]!=null)return t;let s=Ut(r.$page,"locale");if(!O(s)||s==="")return t;let i=[...t];return i[n]=s,i}function _0(e){return e.startsWith("window#/")&&CI.has(e.slice(8))}function Ss(e){return j0.has(e)}function lt(e,t){if(!e)return;let r=(e.depth??0)+1;if(r>JI)return;return{depth:r,path:[...e.path??[],...Array.isArray(t)?t:[t]],report:e.report}}function nt(e,t,r,n,s){if(e===null||e===void 0)return e;if(E0(e))return Hr(e,t,r,n,s);if(El(e)){let i=xu(e.$ref,t,r,n);return s?.report(s.path??[],i),i}if(Array.isArray(e))return A0(e,t,r,n,s);return s?.report(s.path??[],e),e}function A0(e,t,r,n,s){return e.map((i,o)=>nt(i,t,r,n,lt(s,o)))}function MI(e,t,r,n){let s=(i)=>{if(!e.slice(i.length).includes("/"))return t;return xu(e.slice(0,e.lastIndexOf("/")),t,r,n)};if(e.startsWith("#/state/"))return s("#/state/");if(e.startsWith("parent#/"))return s("parent#/");if(e.startsWith("$map/")||e.startsWith("$args/"))return e.split("/").length>2?xu(e.slice(0,e.lastIndexOf("/")),t,r,n):void 0;return}function xu(e,t,r,n){if(e==="$reduce/acc")return n?.acc;if(e.startsWith("$reduce/"))return n?.acc;if(e.startsWith("$args/")){let s=e.slice(6).split("/"),i=n?.args?.[s[0]];return s.length>1?Ut(i,s.slice(1).join("/")):i}if(e.startsWith("event#/")){let s=e.slice(7);return Ut(r,s)}if(e.startsWith("$map/")){let s=e.split("/"),[,i]=s,o,a=Qp(t);if(i==="item")o=n?.item??a?.item??t["$map/item"];else if(i==="index")o=n?.index??a?.index??t["$map/index"];else o=a?.[i]??t[`$map/${i}`];return s.length>2?Ut(o,s.slice(2).join("/")):o}if(e.startsWith("#/state/"))return Ut(t,e.slice(8));if(e.startsWith("parent#/"))return Ut(t,e.slice(8));if(e.startsWith("window#/"))return Ut(globalThis.window,e.slice(8));if(e.startsWith("document#/"))return Ut(globalThis.document,e.slice(10));return Ut(t,e)??null}function DI(e,t,r,n){if(e.startsWith("$map/")){let s=e.split("/"),[,i]=s,o,a=Qp(t);if(i==="item")o=n?.item??a?.item??t["$map/item"];else if(i==="index")o=n?.index??a?.index??t["$map/index"];else o=a?.[i]??t[`$map/${i}`];if(s.length>2){let l=s.slice(2),c=l.pop(),u=l.length>0?Ut(o,l.join("/")):o;return{key:c,obj:u}}return{key:i==="item"?"$map/item":"$map/index",obj:Qp(t)??t}}if(e.startsWith("#/state/")){let s=e.slice(8);if(s.indexOf("/")===-1)return{key:s,obj:t};let o=ws(s),a=o.pop(),l=t;for(let c of o)l=l[c];return{key:a,obj:l}}return{key:e,obj:t}}function Hr(e,t,r,n,s){let i=LI(e,t,r,n,s);return s?.report(s.path??[],i),i}function v0(e,t,r){switch(e){case"+":return t+r;case"-":return t-r;case"*":return t*r;case"/":return t/r;case"%":return t%r;case"<":return t<r;case"<=":return t<=r;case">":return t>r;default:return t>=r}}function LI(e,t,r,n,s){let{operator:i,target:o,value:a,initial:l}=e;if(!NI.has(i))throw Error(`$expression: unknown operator "${i}"`);if(em.has(i)&&!("value"in e)){let c=nt(o,t,r,n,lt(s,"target"));if(i==="!")return!c;if(i==="-")return-c}if(i==="call"){let c=El(o)?o.$ref:void 0;if(!O(c))throw TypeError("$expression: call target must be a $ref pointer");let u=(n?.callDepth??0)+1;if(u>w0)throw Error(`$expression: call depth exceeded (${w0})`);let p=Array.isArray(a)?a.map((m,b)=>nt(m,t,r,n,lt(s,["value",b]))):[];if(c.startsWith("window#/")){if(!_0(c))throw Error(`$expression: "${c}" is not a blessed pure global`);let m=c.slice(8),b=TI.get(m);if(b)return b(...II(m,p,t));let g=Ut(globalThis.window,m),y=m.lastIndexOf("/"),w=y===-1?globalThis.window:Ut(globalThis.window,m.slice(0,y));return g.apply(w,p)}let h=xu(c,t,r,n);if(Wt(h))return h.apply(MI(c,t,r,n),p);if(V(h)&&"$expression"in h){let m=h,b={};for(let[g,y]of(m.parameters??[]).entries()){let w=O(y)?y:y?.name??"";if(!w)continue;b[w]=p[g]===void 0&&V(y)&&"default"in y?y.default:p[g]}return Hr(m.$expression,t,r,{args:b,callDepth:u})}throw TypeError(`$expression: call target "${c}" is not callable`)}if(nm.has(i)){if(i==="?:"){let m=nt(o,t,r,n,lt(s,"target"));if(s){let b=nt(a,t,r,n,lt(s,"value")),g=nt(l,t,r,n,lt(s,"initial"));return m?b:g}return m?nt(a,t,r,n):nt(l,t,r,n)}let c=nt(o,t,r,n,lt(s,"target")),u=String(c),p=e.cases??{},h=Object.hasOwn(p,u);if(s){let m;for(let[g,y]of Object.entries(p)){let w=nt(y,t,r,n,lt(s,["cases",g]));if(g===u)m=w}let b=nt(e.default,t,r,n,lt(s,"default"));return h?m:b}return h?nt(p[u],t,r,n):nt(e.default,t,r,n)}if(tm.has(i)){let c=nt(o,t,r,n,lt(s,"target")),u=nt(a,t,r,n,lt(s,"value"));switch(i){case"===":return c===u;case"!==":return c!==u;case"&&":return c&&u;case"||":return c||u;case"??":return c??u;default:return v0(i,c,u)}}if(P0.has(i)){let c=nt(a,t,r,n,lt(s,"value")),{obj:u,key:p}=DI(o.$ref,t,r,n);u[p]=i==="="?c:v0(i.slice(0,-1),u[p],c);return}if(k0.has(i)){let c=nt(o,t,r,n,lt(s,"target"));switch(i){case"push":return c.push(nt(a,t,r,n,lt(s,"value")));case"unshift":return c.unshift(nt(a,t,r,n,lt(s,"value")));case"pop":return c.pop();case"shift":return c.shift();case"splice":{let u=nt(a,t,r,n,lt(s,"value"));return c.splice(...u)}default:break}}if(sm.has(i)){let c=nt(o,t,r,n,lt(s,"target")),u=a===void 0?[]:Array.isArray(a)?A0(a,t,r,n,lt(s,"value")):[nt(a,t,r,n,lt(s,"value"))],p=Ut(c,i);if(!Wt(p))return;return p.apply(c,u)}if(rm.has(i)){let c=nt(o,t,r,n,lt(s,"target")),u=a;if(i==="reduce"){let p=nt(l,t,r,n,lt(s,"initial"));for(let[h,m]of c.entries())p=Hr(u,t,r,{acc:p,index:h,item:m},h===0?lt(s,"value"):void 0);return p}if(i==="map")return c.map((p,h)=>Hr(u,t,r,{...n,index:h,item:p},h===0?lt(s,"value"):void 0));if(i==="filter")return c.filter((p,h)=>Hr(u,t,r,{...n,index:h,item:p},h===0?lt(s,"value"):void 0))}return}function ut(e,t){if(e===null)return"null";if(e===void 0)return"undefined";if(E0(e))return dr(e,t);if(El(e))return im(e.$ref,t);if(Array.isArray(e))return e.map((r)=>ut(r,t)).join(", ");return JSON.stringify(e)}function FI(e){return`_fx_${e.replaceAll(/[^A-Za-z0-9_$]/g,"_")}`}function im(e,t){let r=t.statePrefix??"state",n=t.eventParam??"event";if(e==="$reduce/acc")return"_acc";if(e.startsWith("$reduce/"))return"_acc";if(e.startsWith("$args/"))return Me("_args",e.slice(6));if(e.startsWith("event#/"))return Me(n,e.slice(7));if(e.startsWith("$map/")){let s=e.split("/"),[,i]=s;if(i==="item")return s.length>2?Me("_item",s.slice(2).join("/")):"_item";if(i==="index")return"_index";return`_${i}`}if(e.startsWith("#/state/"))return Me(r,e.slice(8));if(e.startsWith("parent#/"))return Me(r,e.slice(8));if(e.startsWith("window#/"))return Me("window",e.slice(8));if(e.startsWith("document#/"))return Me("document",e.slice(10));return Me(r,e)}function S0(e,t){if(El(e))return im(e.$ref,t);return ut(e,t)}function qI(e,t,r){let n=(o)=>t[o]??"undefined",s=`(${r.statePrefix??"state"}?.$page?.locale ?? ${JSON.stringify(_n)})`,i=JSON.stringify(Kp);switch(e){case"Intl/formatNumber":return`new Intl.NumberFormat(${n(1)} ?? ${s}, ${n(2)}).format(${n(0)})`;case"Intl/formatDate":return`new Intl.DateTimeFormat(${n(1)} ?? ${s}, {timeZone: ${i}, ...${n(2)}}).format(new Date(${n(0)}))`;case"Intl/formatRelativeTime":return`new Intl.RelativeTimeFormat(${n(2)} ?? ${s}, ${n(3)}).format(${n(0)}, ${n(1)})`;case"Intl/formatList":return`new Intl.ListFormat(${n(1)} ?? ${s}, ${n(2)}).format(${n(0)})`;case"Intl/plural":return`new Intl.PluralRules(${n(1)} ?? ${s}, ${n(2)}).select(${n(0)})`;case"Intl/compare":return`new Intl.Collator(${n(2)} ?? ${s}, ${n(3)}).compare(${n(0)}, ${n(1)})`;case"Intl/displayName":return`new Intl.DisplayNames(${n(2)} ?? ${s}, {...${n(3)}, type: ${n(1)} ?? 'language'}).of(${n(0)})`;case"Intl/segment":return`[...new Intl.Segmenter(${n(2)} ?? ${s}, {granularity: ${n(1)} ?? 'grapheme'}).segment(${n(0)})].map((p) => p.segment)`;default:return null}}function dr(e,t={}){let{operator:r,target:n,value:s,initial:i}=e;if(em.has(r)&&!("value"in e)){let o=ut(n,t);if(r==="!")return`!(${o})`;if(r==="-")return`-(${o})`}if(r==="call"){let o=(El(n)?n.$ref:void 0)??"",a=Array.isArray(s)?s.map((l)=>ut(l,t)):[];if(o.startsWith("window#/")){if(!_0(o))throw Error(`$expression: "${o}" is not a blessed pure global`);let l=qI(o.slice(8),a,t);if(l)return l;return`window.${o.slice(8).replaceAll("/",".")}(${a.join(", ")})`}if(o.startsWith("#/state/")){let l=o.slice(8),c=t.formulaParams?.[l];if(c){let u=c.map((p,h)=>`${JSON.stringify(p)}: ${a[h]??"undefined"}`).join(", ");return`${FI(l)}(${t.statePrefix??"state"}, { ${u} })`}}return`${im(o,t)}(${a.join(", ")})`}if(nm.has(r)){if(r==="?:"){let c=ut(n,t),u=ut(s,t),p=ut(i,t);return`(${c} ? ${u} : ${p})`}let o=ut(n,t),a=Object.entries(e.cases??{}).map(([c,u])=>`_d === ${JSON.stringify(c)} ? ${ut(u,t)} : `).join(""),l="default"in e?ut(e.default,t):"undefined";return`((_d) => ${a}${l})(String(${o}))`}if(tm.has(r)){let o=ut(n,t),a=ut(s,t);return`(${o} ${r} ${a})`}if(P0.has(r)){let o=S0(n,t),a=ut(s,t);return`${o} ${r} ${a}`}if(k0.has(r)){let o=S0(n,t);switch(r){case"push":return`${o}.push(${ut(s,t)})`;case"unshift":return`${o}.unshift(${ut(s,t)})`;case"pop":return`${o}.pop()`;case"shift":return`${o}.shift()`;case"splice":{let a=Array.isArray(s)?s.map((l)=>ut(l,t)).join(", "):ut(s,t);return`${o}.splice(${a})`}default:break}}if(sm.has(r)){let o=ut(n,t),a=s===void 0?"":Array.isArray(s)?s.map((l)=>ut(l,t)).join(", "):ut(s,t);return`(${o})?.${r}?.(${a})`}if(rm.has(r)){let o=ut(n,t),a=dr(s,t);if(r==="reduce"){let l=ut(i,t);return`${o}.reduce((_acc, _item, _index) => ${a}, ${l})`}if(r==="map")return`${o}.map((_item, _index) => ${a})`;if(r==="filter")return`${o}.filter((_item, _index) => ${a})`}return"undefined"}function Uo(e,t,r,n){return nt(e,t,r,n)}function Es(e,t={}){return ut(e,t)}var j0,em,tm,P0,k0,rm,nm,sm,NI,CI,TI,w0=64,JI=64;var jl=D(()=>{Xp();be();Bo();j0=new Set(["=","+=","-=","*=","/=","push","pop","shift","unshift","splice"]),em=new Set(["!","-"]),tm=new Set(["+","-","*","/","%","===","!==","<","<=",">",">=","&&","||","??"]),P0=new Set(["=","+=","-=","*=","/="]),k0=new Set(["push","pop","shift","unshift","splice"]),rm=new Set(["reduce","map","filter"]),nm=new Set(["?:","switch"]),sm=new Set(["includes","indexOf","lastIndexOf","join","slice","concat","at","flat","toSorted","toReversed","toSpliced","with","toUpperCase","toLowerCase","trim","trimStart","trimEnd","split","startsWith","endsWith","padStart","padEnd","replaceAll","repeat","charAt","normalize","toLocaleUpperCase","toLocaleLowerCase","toFixed","toPrecision","toLocaleString"]),NI=new Set([...j0,...em,...tm,...rm,...nm,...sm,"call"]),CI=new Set(["isNaN","isFinite","parseFloat","parseInt","encodeURIComponent","decodeURIComponent","structuredClone","Math/abs","Math/ceil","Math/floor","Math/round","Math/trunc","Math/sign","Math/sqrt","Math/cbrt","Math/pow","Math/exp","Math/log","Math/log2","Math/log10","Math/min","Math/max","Math/hypot","Number/isInteger","Number/isFinite","Number/isNaN","Number/parseFloat","Number/parseInt","JSON/parse","JSON/stringify","Object/keys","Object/values","Object/entries","Object/fromEntries","Array/from","Array/isArray","Array/of","String/fromCharCode","String/fromCodePoint",...Yp]),TI=new Map([["Intl/compare",(e,t,r,n)=>new Intl.Collator(r??_n,n).compare(e,t)],["Intl/displayName",(e,t,r,n)=>new Intl.DisplayNames(r??_n,{...n,type:t??"language"}).of(e)],["Intl/formatDate",(e,t,r)=>new Intl.DateTimeFormat(t??_n,{timeZone:Kp,...r}).format(new Date(e))],["Intl/formatList",(e,t,r)=>new Intl.ListFormat(t??_n,r).format(e)],["Intl/formatNumber",(e,t,r)=>new Intl.NumberFormat(t??_n,r).format(e)],["Intl/formatRelativeTime",(e,t,r,n)=>new Intl.RelativeTimeFormat(r??_n,n).format(e,t)],["Intl/plural",(e,t,r)=>new Intl.PluralRules(t??_n,r).select(e)],["Intl/segment",(e,t,r)=>[...new Intl.Segmenter(r??_n,{granularity:t??"grapheme"}).segment(e)].map((n)=>n.segment)]])});function R0(e){if("operator"in e)return{kind:"expression",node:e};if("if"in e)return{kind:"if",node:e};if("$switch"in e)return{kind:"switch",node:e};if("stopPropagation"in e)return{kind:"stopPropagation"};if("preventDefault"in e)return{kind:"preventDefault"};return{kind:"dispatch",node:e}}function VI(e){return(V(e)||Wt(e))&&"then"in e&&Wt(e.then)}async function zo(e,t,r,n={}){let s=n.args?{args:n.args}:void 0;for(let i of e){let o=R0(i);switch(o.kind){case"expression":{let a=Hr(o.node,t,r,s);if(VI(a))await a;break}case"if":{let a=o.node,l=Uo(a.if,t,r,s)?a.then:a.else;if(Array.isArray(l))await zo(l,t,r,n);break}case"switch":{let a=o.node,l=String(Uo(a.$switch,t,r,s)),c=a.cases??{},u=Object.hasOwn(c,l)?c[l]:a.default;if(Array.isArray(u))await zo(u,t,r,n);break}case"dispatch":{let a=o.node,l=Wt(n.target)?n.target():n.target,c=r?.currentTarget??l;if(!c)break;let u={};if("detail"in a)u.detail=Uo(a.detail,t,r,s);if(a.bubbles!==void 0)u.bubbles=a.bubbles;if(a.composed!==void 0)u.composed=a.composed;c.dispatchEvent(new CustomEvent(a.dispatchEvent,u));break}case"stopPropagation":{r?.stopPropagation();break}case"preventDefault":{r?.preventDefault();break}default:break}}}function Zr(e,t={}){let r=t.indent??"",n=[];for(let s of e){let i=R0(s);switch(i.kind){case"expression":{n.push(`${r}${dr(i.node,t)};`);break}case"if":{let o=i.node,a=Es(o.if,t),l={...t,indent:`${r} `};if(n.push(`${r}if (${a}) {`,Zr(o.then??[],l)),o.else)n.push(`${r}} else {`,Zr(o.else,l));n.push(`${r}}`);break}case"switch":{let o=i.node,a=Es(o.$switch,t),l={...t,indent:`${r} `};n.push(`${r}switch (String(${a})) {`);for(let[c,u]of Object.entries(o.cases??{}))n.push(`${r} case ${JSON.stringify(c)}: {`,Zr(u,l),`${r} break;`,`${r} }`);if(o.default)n.push(`${r} default: {`,Zr(o.default,l),`${r} }`);n.push(`${r}}`);break}case"dispatch":{let o=i.node,a=t.eventParam??"event",l=t.dispatchTarget??`(${a} && ${a}.currentTarget)`,c=[];if("detail"in o)c.push(`detail: ${Es(o.detail,t)}`);if(o.bubbles!==void 0)c.push(`bubbles: ${JSON.stringify(o.bubbles)}`);if(o.composed!==void 0)c.push(`composed: ${JSON.stringify(o.composed)}`);let u=c.length>0?`, { ${c.join(", ")} }`:"";n.push(`${r}${l}?.dispatchEvent(new CustomEvent(${JSON.stringify(o.dispatchEvent)}${u}));`);break}case"stopPropagation":{n.push(`${r}${t.eventParam??"event"}?.stopPropagation();`);break}case"preventDefault":{n.push(`${r}${t.eventParam??"event"}?.preventDefault();`);break}default:break}}return n.join(`
|
|
117
|
+
`)}var $u=D(()=>{be();jl()});function Go(e){if(!e.startsWith("${")||!e.endsWith("}"))return!1;let t=0;for(let r=1;r<e.length;r+=1){let n=e[r];if(n==="{")t+=1;else if(n==="}"){if(t-=1,t===0)return r===e.length-1}}return!1}function N0(){return[...O0].toSorted()}function Qi(e,t){let r=e.toLowerCase();if(r.startsWith("aria-")||O0.has(r))return String(t);return t?"":null}var js,O0,om=32,wu,vu="jx-slot",Pl="data-jx-slots",am="jx.slot.group",JQ;var Ko=D(()=>{Sl();jl();Bo();be();Vr();$u();Sl();js=new Set(["$schema","$id","$defs","state","$ref","$props","$elements","$title","$description","$switch","$prototype","$src","$export","$media","$map","timing","default","description","body","parameters","arguments","name","tagName","children","style","attributes","items","map","filter","sort","cases","observedAttributes"]),O0=new Set(["contenteditable","draggable","spellcheck"]);wu=/^[\t\n\f\r ]+$/u,JQ=(()=>{let e=Symbol.for(am),t=globalThis;return t[e]??=new WeakMap,t[e]})()});function C0(e,t,r,n,s=HI){let i=[],o=(p,h)=>{let m={mediaQueries:t,scope:h,transposeValue:r};if(n)m.resolveValue=(b,g)=>n(b,g,h);for(let b of Ho(p,m))i.push(b.text)},a={},l={},c=[],u=[];for(let[p,h]of Object.entries(e)){if(V(h)&&!Array.isArray(h)){if(p.startsWith("@"))c.push([p,h]);else if(!p.startsWith("--"))u.push([p,h]);continue}if(zs(p)||p.startsWith("@"))continue;if(p.startsWith("--")||p==="colorScheme"||p==="color-scheme")a[p]=h;else l[p]=h}o(a,s.root),o(l,s.body);for(let[p,h]of u)if(p.startsWith("&"))o({[p]:h},s.root);else o(h,p);for(let[p,h]of c){if($l(p)||vl(p)){o({[p]:h},null);continue}let m={},b={},g=[];for(let[y,w]of Object.entries(h)){if(V(w)&&!Array.isArray(w)){if(!y.startsWith("@"))g.push([y,w]);continue}if(y.startsWith("--"))m[y]=w;else b[y]=w}o({[p]:m},s.root),o({[p]:b},s.body);for(let[y,w]of g)o({[p]:w},y)}if(Object.values(t).some((p)=>bn(p)!==null)&&!("colorScheme"in e))i.push(`${s.root} { color-scheme: light dark }`,`${s.root}:where([${yn}="light"]) { color-scheme: light }`,`${s.root}:where([${yn}="dark"]) { color-scheme: dark }`);return i.join(`
|
|
118
|
+
`)}var HI;var T0=D(()=>{Sl();be();HI={body:"body",root:":root"}});function I0(e){return e===!1||e==="open"||e==="closed"}function eo(e,t){let r=e?.$shadow;if(I0(r))return r===!1?null:r;let n=t?.shadow;return I0(n)&&n!==!1?n:null}function J0(e,t){return t===null?e:":host"}function _l(e,t){let r=[];for(let[n,s]of(e.parameters??[]).entries()){let i=M0(s);if(!i)continue;let o=D0(s)?`_a[${n}] === undefined ? ${JSON.stringify(s.default)} : _a[${n}]`:`_a[${n}]`;r.push(`${JSON.stringify(i)}: ${o}`)}return`(..._a) => { const _args = { ${r.join(", ")} }; return ${t}; }`}function M0(e){return O(e)?e:e?.name??""}function D0(e){return V(e)&&"default"in e}function ju(e,t){let r=dm(e,t);return r===e?e:`${r} as ${e}`}function dm(e,t){let r=t?.$export;return O(r)&&r!==""?r:e}function Pu(e,t,r={}){let{statePrefix:n="state",indent:s="",collect:i}=r,{url:o}=t,a=ye(o),l=t.method??"GET";if(t.manual)return`${s}// ${e}: manual Request — fetch triggered by user action`;let c=[`// ${e}: auto-fetch from ${a?"(dynamic URL)":o}`,i?`${i}.push(effect(() => {`:"effect(() => {"];if(a)c.push(` const url = \`${UI(o,n)}\`;`,' if (!url || url === "undefined" || url.includes("undefined")) return;');else c.push(` const url = ${JSON.stringify(o)};`);let u=[];if(l!=="GET")u.push(`method: ${JSON.stringify(l)}`);if(t.headers)u.push(`headers: ${JSON.stringify(t.headers)}`);if(t.body){let h=V(t.body)?JSON.stringify(JSON.stringify(t.body)):JSON.stringify(t.body);u.push(`body: ${h}`)}let p=u.length>0?`, { ${u.join(", ")} }`:"";return c.push(` fetch(url${p})`," .then(r => r.ok ? r.json() : Promise.reject(r.statusText))",` .then(d => { ${n}.${e} = d; })`,` .catch(e => { ${n}.${e} = { error: String(e) }; });`,i?"}));":"});"),c.map((h)=>`${s}${h}`).join(`
|
|
119
|
+
`)}function ku(e,t,r={}){let{statePrefix:n="state",indent:s="",collect:i,serverBaseUrl:o="/_jx/server"}=r,a=JSON.stringify(`${o}/${t.$export}`),l=Object.entries(t.arguments??{}),c=l.map(([g,y])=>{if(!He(y))return`${vs(g)}: ${JSON.stringify(y)}`;if(BI.some((w)=>y.$ref.startsWith(w)))throw Error(`Server function "${e}": argument "${g}" references "${y.$ref}", which a state entry cannot read. Use a #/state/, parent#/, window#/ or document#/ reference.`);return`${vs(g)}: ${Es({$ref:y.$ref},{statePrefix:n})}`}),u=l.some(([,g])=>He(g)),p=`${B0}(${a}, ${c.length>0?`{ ${c.join(", ")} }`:"{}"})`,h=Me(n,Lt(e)),m=`console.error(${JSON.stringify(`Jx server function ${t.$export}:`)}, e)`;return(u?[`// ${e}: server function ${t.$export}, called again when an argument changes`,"{"," let _jxSeq = 0;",i?` ${i}.push(effect(() => {`:" effect(() => {"," const _seq = ++_jxSeq;",` ${p}`,` .then((d) => { if (_seq === _jxSeq) ${h} = d; })`,` .catch((e) => { if (_seq === _jxSeq) ${m}; });`,i?" }));":" });","}"]:[`// ${e}: server function ${t.$export}, called once`,p,` .then((d) => { ${h} = d; })`,` .catch((e) => { ${m}; });`]).map((g)=>`${s}${g}`).join(`
|
|
120
|
+
`)}function UI(e,t){if(t==="state")return e;return e.replaceAll(/\$\{([^}]*)\}/g,(r,n)=>`\${${n.replaceAll(/(?<!this\.)\bstate\./g,`${t}.`)}}`)}function _u(e){if(!V(e))return!1;if(e.state)for(let[t,r]of Object.entries(e.state)){if(t==="$site"||t==="$page")continue;if(!V(r)||Array.isArray(r))return!0;if(r.timing==="compiler")continue;if(r.$prototype)return!0;if("default"in r)return!0;if(Is(r))continue;return!0}if(e.$switch)return!0;if(dt(e)||Dd(e.children))return!0;if(Array.isArray(e.children)&&e.children.some((t)=>_u(t)))return!0;for(let[t,r]of Object.entries(e)){if(js.has(t))continue;if(He(r))return!0;if(ye(r))return!0}if(V(e.style)){for(let t of Object.values(e.style))if(ye(t))return!0}if(V(e.attributes)){for(let t of Object.values(e.attributes))if(ye(t))return!0}return!1}function F0(e){if(!V(e))return!1;if(e.$switch)return!0;if(dt(e)||Dd(e.children))return!0;for(let[t,r]of Object.entries(e)){if(js.has(t))continue;if(He(r))return!0;if(ye(r))return!0}if(V(e.style)){for(let t of Object.values(e.style))if(ye(t))return!0}if(V(e.attributes)){for(let t of Object.values(e.attributes))if(ye(t))return!0}return!1}function ea(e,t=null,r={},n={}){let s=e?.state?Yo(e.state,t):t??q0();return{media:n,scope:s,scopeDefs:r}}function q0(e=null){return Object.create(e)}function V0(e){return e[L0]}function um(e,t){if(O(e)){for(let i of e.matchAll(zI))t.add(i[1]);for(let i of e.matchAll(GI))t.add(i[1]);return}if(Array.isArray(e)){for(let i of e)um(i,t);return}if(!V(e))return;let r=e,{operator:n,target:s}=r;if(O(n)&&Ss(n)&&He(s)&&s.$ref.startsWith("#/state/"))t.add(s.$ref.slice(8).split("/")[0]);for(let i of Object.values(r))um(i,t)}function Yo(e={},t=null){let r=q0(t),n=t?V0(t):void 0,s=new Set(n);Object.defineProperty(r,L0,{configurable:!0,enumerable:!1,value:s,writable:!0});let i=new Set;for(let c of Object.values(e))if(Mr(c)||Dr(c))um(c.body??c.$expression,i);for(let c of i)if(c in e)s.add(c);for(let[c,u]of Object.entries(e)){if(!V(u)||Array.isArray(u)){Ps(r,c,Su(u));continue}if("default"in u){Ps(r,c,Su(u.default));continue}if(os(u)){s.add(c);continue}if(!u.$prototype&&!("$expression"in u)&&!Is(u))Ps(r,c,Su(u))}let o=[],a=[];for(let[c,u]of Object.entries(e)){if(ye(u)){o.push([c,u]);continue}if(!V(u))continue;if(Dr(u)){let p=u.$expression;if(Ai(u)){let h=u.parameters;Ps(r,c,(...m)=>{let b={};for(let[g,y]of h.entries()){let w=M0(y);if(!w)continue;b[w]=m[g]===void 0&&D0(y)?y.default:m[g]}return Hr(p,r,null,{args:b})})}else if(Ss(p.operator))Ps(r,c,(h,m)=>Hr(p,h,m));else lm(r,c,()=>Hr(p,r,null));continue}if(Mr(u)){if(Ts(u)){let{body:p}=u;Ps(r,c,(h,m)=>{zo(p,h??r,m??null)})}else if(O(u.body)){let p=u.parameters?as(u.parameters):u.arguments??[],{body:h}=u,m=p.includes("state")?p:["state",...p],b=Function(...m,h),g=(y,w)=>b(...m.map((j)=>j==="state"?y:w));if(Ri(h))lm(r,c,()=>g(r)),a.push([c,h]);else Ps(r,c,g)}else Ps(r,c,()=>{}),s.add(c);continue}if(vn(u)&&(u.$prototype==="LocalStorage"||u.$prototype==="SessionStorage")){Ps(r,c,Su(u.default??null));continue}if(vn(u)&&u.$prototype==="Request")s.add(c)}let l=!0;while(l){l=!1;for(let[c,u]of[...a,...o])if(!s.has(c)&&W0(u,r))s.add(c),l=!0}for(let[c,u]of o)lm(r,c,()=>sr(u,r));return r}function Ps(e,t,r){Object.defineProperty(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0})}function lm(e,t,r){Object.defineProperty(e,t,{configurable:!0,enumerable:!0,get:r})}function Ze(e,t){if(He(e))return pm(e.$ref,t);if(ye(e))return sr(e,t);return e}function Pr(e){return He(e)}function pm(e,t){if(!O(e))return e;if(e.startsWith("$map/")){let r=e.split("/"),n=r[1],i=t.$map?.[n]??t[`$map/${n}`];return r.length>2?cm(i,r.slice(2).join("/")):i}if(e.startsWith("#/state/"))return cm(t,e.slice(8));return cm(t,e)??null}function W0(e,t){if(!t)return!1;let r=V0(t);for(let n of e.matchAll(/\bstate\.([A-Za-z_$][\w$]*)\s*(\()?/g)){if(n[2])continue;let s=n[1];if(r?.has(s))return!0;let i;try{i=t[s]}catch{continue}if(Wt(i))return!0}return!1}function Au(e){return Go(e)?`(${e.slice(2,-1)})`:`\`${e}\``}function sr(e,t){if(W0(e,t))return null;let r=["state","$map","$site","$page"],n=[t,t?.$map,t?.$site,t?.$page];try{let s=Go(e)?`return (${e.slice(2,-1)})`:`return \`${e}\``;return Function(...r,s)(...n)}catch{return null}}function cm(e,t){return Ut(e,t)}function Su(e){if(!V(e))return e;return structuredClone(e)}function KI(e,t){if(!e||!t)return"";return Object.entries(e).filter(([r,n])=>!r.startsWith(":")&&!r.startsWith(".")&&!r.startsWith("&")&&!r.startsWith("[")&&!r.startsWith("@")&&ye(n)).map(([r,n])=>{let s=Ze(n,t);return s==null?null:`${jr(r)}: ${s}`}).filter(Boolean).join("; ")}function to(e,t,r=""){let n="",s=Ze(e.id,t),i=Ze(e.className,t),o=Ze(e.hidden,t),a=Ze(e.tabIndex,t),l=Ze(e.title,t),c=Ze(e.lang,t),u=Ze(e.dir,t);if(s)n+=` id="${_e(String(s))}"`;if(i)n+=` class="${_e(String(i))}"`;if(o)n+=" hidden";if(a!==void 0&&a!==null)n+=` tabindex="${_e(String(a))}"`;if(l)n+=` title="${_e(String(l))}"`;if(c)n+=` lang="${_e(String(c))}"`;if(u)n+=` dir="${_e(String(u))}"`;let p=[KI(e.style,t),r].filter(Boolean).join("; ");if(p)n+=` style="${_e(p)}"`;if(e.attributes)for(let[h,m]of Object.entries(e.attributes)){let b=Ze(m,t);if(Qt(b)){let g=Qi(h,b);if(g!==null)n+=g===""?` ${h}`:` ${h}="${_e(g)}"`;continue}if(O(b)||Ct(b))n+=` ${h}="${_e(String(b))}"`}if(e.$static)n+=" data-jx-static";else if(e.$prerendered)n+=" data-jx-prerendered";return n}function Al(e,t=" "){return e?"":`
|
|
121
|
+
${t}`}function ta(){let e=JSON.stringify(bu),t=JSON.stringify(yn);return`(function(){try{var s=localStorage.getItem(${e});if(s==="light"||s==="dark"){document.documentElement.setAttribute(${t},s)}}catch(e){}})()`}function Eu(e,t,r,n){for(let s of Ho(t,{mediaQueries:n,resolveValue:(i,o)=>H0(i,o,r),scope:r}))e.push(s.text)}function H0(e,t,r){let n=O(t)?t:t.$ref;return YI.push({property:e,selector:r,source:n}),null}function Ru(){return`const __jxEnumAttrs = new Set(${JSON.stringify(N0())});
|
|
122
|
+
function ${ra}(n, v) {
|
|
123
123
|
if (typeof v !== 'boolean') return v;
|
|
124
124
|
const l = n.toLowerCase();
|
|
125
125
|
if (l.startsWith('aria-') || __jxEnumAttrs.has(l)) return String(v);
|
|
126
126
|
return v ? '' : null;
|
|
127
|
-
}`}function
|
|
128
|
-
`)}function
|
|
129
|
-
`)}function
|
|
130
|
-
${
|
|
127
|
+
}`}function Ou(){return[`async function ${B0}(url, args) {`," const r = await fetch(url, {"," method: 'POST',"," headers: { 'Content-Type': 'application/json' },"," body: JSON.stringify(args),"," });"," const text = await r.text();"," let body = null;"," if (text !== '') {"," try { body = JSON.parse(text); } catch (e) { if (r.ok) throw e; }"," }"," if (!r.ok) throw new Error((body && body.error) || text || r.statusText);"," return body;","}"].join(`
|
|
128
|
+
`)}function U0(){let e=`new RegExp(${JSON.stringify(wu.source)}, ${JSON.stringify(wu.flags)})`,t=`Symbol.for(${JSON.stringify(am)})`,r=JSON.stringify(Pl),n=JSON.stringify(vu);return[`const __jxSlotWs = ${e};`,`const __jxSlotRec = globalThis[${t}] || (globalThis[${t}] = new WeakMap());`,`function ${mm}(host) {`,` const id = host.getAttribute(${r});`," if (id === null) return Array.from(host.childNodes);",` host.removeAttribute(${r});`,` const open = ${n} + ' ' + id + ' ';`,` const close = '/' + ${n} + ' ' + id;`," const openers = [];"," const w = host.ownerDocument.createTreeWalker(host, 128);"," for (let n = w.nextNode(); n; n = w.nextNode()) if (n.data.startsWith(open)) openers.push(n);"," const out = [];"," for (const o of openers) {"," const name = decodeURIComponent(o.data.slice(open.length));"," for (let n = o.nextSibling; n; n = n.nextSibling) {"," if (n.nodeType === 8 && n.data === close) break;"," __jxSlotRec.set(n, name);"," out.push(n);"," }"," }"," return out;","}",`function ${hm}(host, captured) {`," const slots = Array.from(host.querySelectorAll('slot'));"," if (slots.length === 0) return;"," const groups = new Map();"," for (const n of captured) {"," if (n.nodeType === 3 && __jxSlotWs.test(n.data)) continue;"," const r = __jxSlotRec.get(n);"," __jxSlotRec.delete(n);"," const name = r !== undefined ? r : n.nodeType === 1 ? n.getAttribute('slot') || '' : '';"," let g = groups.get(name);"," if (!g) { g = []; groups.set(name, g); }"," g.push(n);"," }"," const taken = new Set();"," for (const slot of slots) {"," const name = slot.getAttribute('name') || '';"," let g = [];"," if (!taken.has(name)) { taken.add(name); g = groups.get(name) || []; }"," const content = g.some((n) => n.nodeType === 1 || (n.nodeType === 3 && n.data !== ''));"," const placed = content ? g : g.concat(Array.from(slot.childNodes));"," const p = slot.parentElement;"," if (p && p !== host && p.localName.includes('-')) {"," const r = __jxSlotRec.get(slot);"," const f = r !== undefined ? r : slot.getAttribute('slot') || '';"," for (const n of placed) __jxSlotRec.set(n, f);"," }"," slot.replaceWith(...placed);"," }","}"].join(`
|
|
129
|
+
`)}function Gs(e){for(let t of gm(e)){if(dt(t)){if(t.map&&Gs([t.map]))return!0;continue}if(!xr(t))continue;if(t.tagName==="slot")return!0;let r=Object.values(t.cases??{}).filter((n)=>xr(n)&&!Pr(n));if(Gs(r)||Gs(t.children))return!0}return!1}function gm(e){if(dt(e))return[e];if(!Array.isArray(e))return[];return e}function sa(e,t={},r=null){let n=[],s=C0(V(r)?r:{},t,(o)=>o,H0);if(s!=="")n.push(s);if(Ks(e,n,t,"",{n:0}),n.length===0)return"";return`<style>
|
|
130
|
+
${Nu(n.join(`
|
|
131
131
|
`))}
|
|
132
|
-
</style>`}function
|
|
133
|
-
${l}`,c.content||=a;else s.set(o,{content:a,html:l})}return{groups:s,id:n,taken:new Set}}function
|
|
134
|
-
`);return""}function
|
|
135
|
-
`);if(!V(e))return"";if(e.$prototype==="Array")return"";if(e.$switch){let a=e.tagName??"div",l=
|
|
136
|
-
${p}`}let i=n?.componentDefs.get(s);if(i&&n)return
|
|
137
|
-
`):"";E=`<template shadowrootmode="${w}"><link rel="stylesheet" href="/components/${i}.css">${
|
|
132
|
+
</style>`}function Nu(e){return e.replaceAll(/<\/(?=style)/gi,String.raw`<\/`)}function Ks(e,t,r,n="",s,i="jx"){let o=s??{n:0};if(!V(e))return;if(e.style&&!e.id&&!e.className)e.className=`${i}-${o.n}`,o.n+=1;let a=xo(e.tagName).join(", ")||"*",l=e.id?`#${e.id}`:e.className?`.${e.className.split(" ")[0]}`:a;if(e.style)Eu(t,e.style,l,r);if(Array.isArray(e.children))for(let c of e.children)Ks(c,t,r,l,o,i);if(V(e.cases))for(let c of Object.values(e.cases))Ks(c,t,r,l,o,i)}function _e(e){return String(e).replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""").replaceAll("'","'")}function Cu(e){return e.split("-").map((t)=>t.charAt(0).toUpperCase()+t.slice(1)).join("")}function z0(e){let t=[];return G0(e,t),t}function G0(e,t){if(!V(e))return;if(e.state){for(let[r,n]of Object.entries(e.state))if(os(n))t.push({exportName:n.$export,key:r,src:n.$src})}if(Array.isArray(e.children))for(let r of e.children)G0(r,t)}function bm(e,t){if(O(e))return e;let r=xo(e);if(r.length===0)return"div";if(!Sn(e))return r[0];let n=e.$expression,s=n.target;if(n.operator==="?:")return Ze(s,t)?n.value:n.initial;let i=Ze(s,t);return n.cases[String(i)]??n.default}function xm(e){if(!e?.slotIds)return null;return e.slotIds.n+=1,e.slotIds.n}function $m(e,t,r,n=null){let s=new Map;for(let i of gm(e)){let o="",a=!0,l;if(O(i)||Ct(i)||Qt(i)){if(l=r(i),wu.test(l))continue;a=l!==""}else if(dt(i))l="";else if(!xr(i))l=r(i),a=l!=="";else{let u=Ze(i.attributes?.slot,t),p=O(i.slot)?Ze(i.slot,t):null;if(O(u)&&u!=="")o=u,l=r(i);else if(O(p)&&p!==""){o=p;let{slot:h,...m}=i;l=r({...m,attributes:{...m.attributes,slot:p}})}else l=r(i)}let c=s.get(o);if(c)c.html=c.html===""?l:`${c.html}
|
|
133
|
+
${l}`,c.content||=a;else s.set(o,{content:a,html:l})}return{groups:s,id:n,taken:new Set}}function K0(e,t,r){for(let n of gm(e)){if(dt(n)||!xr(n))continue;if(n.tagName==="slot"){let s=Ze(n.attributes?.name,t);r.taken.add(O(s)?s:"")}K0(n.children,t,r)}}function wm(e){let t=null,r={};for(let[n,s]of Object.entries(e??{}))if(n.startsWith("props.")&&n.length>6)t??={},t[n.slice(6)]=s;else r[n]=s;return{lifted:t,rest:r}}function Tu(e,t){if(!t)return Yo(e.state??{},null);let r={...e.state};for(let[n,s]of Object.entries(t)){let i=r[n];r[n]=V(i)&&!Array.isArray(i)&&"default"in i?{...i,default:s}:s}return Yo(r,null)}function vm(e,t){return Object.fromEntries(Object.entries(e??{}).flatMap(([r,n])=>{if(!ye(n))return[];let s=Ze(n,t);return s==null?[]:[[r,s]]}))}function kl(e,t,r,n){if(e.textContent!==void 0){let s=Ze(e.textContent,t);return s!=null?_e(String(s)):""}if(e.innerHTML){let s=Ze(e.innerHTML,t);return s!=null?String(s):e.innerHTML}if(Array.isArray(e.children))return e.children.map((s)=>Xo(s,t,r,n)).join(`
|
|
134
|
+
`);return""}function Xo(e,t,r=null,n=null){if(O(e)){if(ye(e)&&t){let a=sr(e,t);return a!=null?_e(String(a)):_e(e)}return _e(e)}if(Ct(e)||Qt(e))return _e(String(e));if(Array.isArray(e))return e.map((a)=>Xo(a,t,r,n)).join(`
|
|
135
|
+
`);if(!V(e))return"";if(e.$prototype==="Array")return"";if(e.$switch){let a=e.tagName??"div",l=to(e,t),c=Ze(e.$switch,t),u=c==null?void 0:e.cases?.[String(c)],p=u!==void 0&&!Pr(u)?Xo(u,t,r,n):"";return`<${a}${l}>${p}</${a}>`}let s=bm(e.tagName,t);if(s==="slot"&&r){let a=Ze(e.attributes?.name,t),l=O(a)?a:"",c;if(!r.taken.has(l))r.taken.add(l),c=r.groups.get(l);let u=c?.html??"";if(u!==""&&r.id!==null)u=`<!--${vu} ${r.id} ${encodeURIComponent(l)}-->${u}<!--/${vu} ${r.id}-->`;if(c?.content)return K0(e.children,t,r),u;let p=kl(e,t,r,n);return u===""?p:p===""?u:`${u}
|
|
136
|
+
${p}`}let i=n?.componentDefs.get(s);if(i&&n)return XI(e,i,t,r,n);let o=to(e,t);if(ym.has(s))return`<${s}${o}>`;return`<${s}${o}>${kl(e,t,r,n)}</${s}>`}function XI(e,t,r,n,s){let i=t.tagName,{lifted:o,rest:a}=wm(e.attributes),l={...o,...e.$props},c={};for(let[_,I]of Object.entries(l))c[_]=Ze(I,r)??I;let u=Object.keys(c).length>0,p=s.path??[],h={key:JSON.stringify(c),tag:i},m=[...p.map((_)=>_.tag),i].join(" → ");if(p.some((_)=>_.tag===h.tag&&_.key===h.key))throw Error(`Component <${i}> renders itself: ${m}. A component cannot appear inside its own `+"definition with the same props — the expansion would never end.");if(p.length>=om)throw Error(`Component nesting exceeds ${om} levels: ${m}. A component that renders itself with changing props needs a case that stops.`);let b={...s,path:[...p,h]},{children:g}=e,y=(_)=>Xo(_,r,n,s),w=eo(t,s.defaults),j=Iu(t),S=Tu(t,u?c:null),E,k=null;if(w){let _=Array.isArray(g)?g.map((I)=>y(I)).join(`
|
|
137
|
+
`):"";E=`<template shadowrootmode="${w}"><link rel="stylesheet" href="/components/${i}.css">${kl(t,S,null,b)}</template>${_}`}else{k=!j&&Gs(t.children)?xm(s):null;let _=$m(g,r,y,k);E=kl(t,S,_,b)}let A=Object.entries(vm(t.style,S)).map(([_,I])=>`${jr(_)}: ${I}`).join("; "),R={...e};if(delete R.$props,delete R.children,R.attributes=!j&&u?{...a,"data-jx-props":JSON.stringify(c)}:a,k!==null)R.attributes={...R.attributes,[Pl]:String(k)};if(j)R.$static=!0;else R.$prerendered=!0;return`<${i}${to(R,r,A)}>${E}</${i}>`}function Y0(e,t=null,r=null,n=null){return kl(e,Tu(e,t),r,n)}function Iu(e){return fm(e)}function fm(e){if(!V(e))return!0;if(Array.isArray(e))return e.every((t)=>fm(t));if(e.$prototype)return!1;if(e.$ref)return!1;if(e.state)for(let t of Object.values(e.state)){if(!V(t)||Array.isArray(t))continue;if(t.$prototype)return!1;if(t.$ref)return!1}for(let t of Object.keys(e))if(t.startsWith("on")&&t!=="observedAttributes")return!1;if(Array.isArray(e.children))return e.children.every((t)=>fm(t));if(dt(e.children))return!1;return!0}function QI(e,t){return wl(e).map((r)=>eJ(r,t)).join(", ")}function eJ(e,t){let r=yu(e,t);if(r!==null)return r;if(e.startsWith(":host")){let n=/^:host\((.*)\)$/.exec(e)?.[1];if(t===":host")return e;return n===void 0?t:`${t}${n}`}if(t===":host"&&ZI.test(e))return e;return`${t}${e}`}function X0(e,t,r=null,n={},s=null){let i=[],o=J0(e,s);if(V(t)){let a={},l=[];for(let[c,u]of Object.entries(t))if(He(u))a[c]=u;else if(V(u)&&!Array.isArray(u))l.push([c,u]);else if(!c.startsWith("@")&&!zs(c))a[c]=u;Eu(i,a,o,n);for(let[c,u]of l)if(c.startsWith("@"))Eu(i,{[c]:u},o,n);else if(zs(c))Eu(i,u,QI(c,o),n)}if(r&&Array.isArray(r.children)){let a={n:0};for(let l of r.children)Ks(l,i,n,"",a,e)}return i.length>0?`${i.join(`
|
|
138
138
|
`)}
|
|
139
|
-
`:""}var
|
|
140
|
-
${e.slice(r)}`}function Ux(e,t){return new URL(`/${TI(e,t).split(II).join("/")}`,"http://localhost").pathname}var JI="/404";var gm=D(()=>{An()});function zx(e,t){if(t===null||t.routing!=="prefix-always")return[];let r=[];for(let n of e){if(n.urlPattern==="/")continue;let s=n.urlPattern.split("/").find(Boolean),i=Kr(s);if(i===null||!t.locales.includes(i))r.push(n.urlPattern)}return r}function Gx(e,t){if(t===null)return null;let r=e.split("/").find(Boolean),n=Kr(r);if(r===void 0||n===null||t.locales.includes(n))return null;let s=t.locales.find((i)=>i!==n&&i.split("-")[0]===n.split("-")[0]);return s===void 0?null:{meant:s,segment:r}}function DI(e,t){let r=e.split("/").filter(Boolean),n=Kr(r[0]);if(t!==null&&n!==null&&t.locales.includes(n))return r.slice(1).join("/");return r.join("/")}function ym(e,t){let r=new Map,n=[];if(t===null)return{conflicts:n,sets:r};let s=new Map,i=new Set;for(let o of e){let a=o.translationKey===void 0?DI(o.urlPattern,t):o.translationKey.replaceAll(/^\/+|\/+$/g,"");if(o.translationKey!==void 0)i.add(o.urlPattern);let l=hn(o.urlPattern,t);if(l===null)continue;let c=s.get(a)??[],u=c.find((p)=>p.locale===l);if(u===void 0)c.push({locale:l,urlPattern:o.urlPattern});else n.push({declared:i.has(u.urlPattern)||o.translationKey!==void 0,key:a,locale:l,urlPatterns:[u.urlPattern,o.urlPattern]});s.set(a,c)}for(let o of s.values()){let a=o.toSorted((l,c)=>l.locale===c.locale?0:l.locale<c.locale?-1:1);for(let l of o)r.set(l.urlPattern,a)}return{conflicts:n,sets:r}}function Kx(e,t,r,n){let s=new Map;if(t===null||r==="")return s;let i=new Map;for(let[o,a]of ym(e,t).sets){if(a.length<2)continue;let l=i.get(a);if(l===void 0){l=a.map((u)=>({href:Vs(ea(u.urlPattern,n),r),hreflang:u.locale}));let c=a.find((u)=>u.locale===t.defaultLocale);if(c!==void 0)l.push({href:Vs(ea(c.urlPattern,n),r),hreflang:"x-default"});i.set(a,l)}s.set(o,l)}return s}function Yx({pageLang:e,pageDir:t,routeLocale:r,defaults:n}){let s=e??r??n?.lang??"en",i=t??n?.dir;if(i!==void 0)return{dir:i,lang:s};return pl(s)==="rtl"?{dir:"rtl",lang:s}:{lang:s}}var bm=D(()=>{Lr();Xi();gm();Xi();Xi()});function Xx(e,t,r,n=null,s=null,i=[]){if(!e.state)e.state={};let o={};if(s!==null)o.defaultLocale=s.defaultLocale,o.locales=s.locales;e.state.$site={name:t.name??"Jx Site",url:t.url??"",...o,...t.state};let a=(O(e.$lang)?e.$lang:void 0)??hn(r.urlPattern,s)??t.defaults?.lang,l=i.map((u)=>({code:u.locale,current:u.urlPattern===r.urlPattern,dir:pl(u.locale),label:nx(u.locale),url:u.urlPattern})),c={params:r._pathParams??{},title:e.title??e._pageTitle??t.name??"",url:r.urlPattern};if(l.length>0)c.alternates=l;if(r.pagination){let{first:u,itemCount:p,last:h,next:m,number:b,pageCount:g,pageSize:y,pages:w,prev:P}=r.pagination;c.pagination={first:u,itemCount:p,last:h,next:m,number:b,pageCount:g,pageSize:y,pages:w.map(({current:S,number:E,url:k})=>({current:S,number:E,url:k})),prev:P}}if(a!==void 0)c.dir=pl(a),c.locale=a;if(e.state.$page=c,t.state){for(let[u,p]of Object.entries(t.state))if(u!=="$site"&&u!=="$page"&&!(u in e.state))e.state[u]=p}if(t.$media)e.$media={...t.$media,...e.$media};if(t.imports&&Object.keys(t.imports).length>0){if(!e.imports)e.imports={};for(let[u,p]of Object.entries(t.imports))if(!(u in e.imports))e.imports[u]=n&&(p.startsWith("./")||p.startsWith("../"))?n(p,r):p}if(t.$elements?.length)if(!e.$elements?.length)e.$elements=[...t.$elements];else{let u=new Set,p=[];for(let h of[...t.$elements,...e.$elements]){let m=O(h)?h:V(h)?h.$ref:void 0;if(m&&!u.has(m))u.add(m),p.push(h)}e.$elements=p}return e}var Zx=D(()=>{ve();Xi()});import{dirname as LI,relative as FI,resolve as qI}from"node:path";function xm(e){return(t,r)=>{if(!r.sourcePath)return t;return`./${FI(LI(r.sourcePath),qI(e,t))}`}}function Qx(e,t,r,n=null,s=null,i=[]){return Xx(e,t,r,n===null?null:xm(n),s,i)}var $m=D(()=>{Zx()});import{readFileSync as VI}from"node:fs";import{dirname as wm,resolve as Ru}from"node:path";import{createRequire as WI}from"node:module";function UI(e){return Vt(e.resolve)}async function Ou(e,t,r,n={}){let s=e.imports??{},{state:i}=e;if(!i)return;for(let[o,a]of Object.entries(i)){if(!wn(a))continue;if(HI.has(a.$prototype))continue;if(a.timing&&a.timing!=="compiler"){let l=n.registry?.byName(a.$prototype);if(l?.capabilities.lower)try{let c=await l.call("lower",a,{projectConfig:n.config,root:r,route:t});if(B(c)){let u=c.$bundle;if(Array.isArray(u)){for(let p of u)if(O(p))n.registerBundle?.(p)}delete c.$bundle}i[o]=c}catch(c){console.warn(`prototype-resolver: failed to lower "${o}" ($prototype: "${a.$prototype}"):`,je(c))}continue}if(!a.$src){let l=s[a.$prototype]??zI(n,a.$prototype);if(!l)continue;a.$src=l}try{let l=await GI(a,t,r,i,n);if(a.timing&&B(l))l.timing=a.timing;i[o]=l}catch(l){console.warn(`prototype-resolver: failed to resolve "${o}" ($prototype: "${a.$prototype}"):`,je(l))}}}function zI(e,t){return e.registry?.byName(t)?.classPath}async function GI(e,t,r,n,s){let i=e.$src;if(!i)throw Error(`$prototype "${e.$prototype}" has no $src to resolve`);let o;if(i.startsWith("./")||i.startsWith("../"))o=t.sourcePath?Ru(wm(t.sourcePath),i):Ru(r,i);else o=WI(Ru(r,"package.json")).resolve(i);let a=VI(o,"utf8"),l=Ty(a,o);if(!l.$implementation)throw Error(`${i} has no $implementation field`);let c=Ru(wm(o),l.$implementation),u=await $p(c),p=e.$export??l.title??e.$prototype,h=u[p]??u.default?.[p];if(!h)throw Error(`Module ${l.$implementation} does not export "${p}"`);let m={};for(let[g,y]of Object.entries(e))if(!BI.has(g))m[g]=y;if(m.src&&!m.basePath&&t.sourcePath)m.basePath=wm(t.sourcePath);m._project={config:s.config??null,root:r,...s.sections},m._document={route:t,state:n};let b=new h(m);if(UI(b))return await b.resolve();return b}var HI,BI;var vm=D(()=>{ms();ve();ir();HI=new Set(["Function","LocalStorage","SessionStorage","Array"]),BI=new Set(["$prototype","$src","$export","timing","default","description"])});import{readFileSync as Sm,readdirSync as KI,statSync as YI}from"node:fs";import{extname as t$,join as XI,relative as ZI,resolve as QI}from"node:path";async function to(e,t){let r=Sm(e,"utf8");if(fs(e))return ds(r,e);let n=t$(e).toLowerCase(),s=t?.byExtension(n,"parse");if(!s)throw Error(`No format class registered for "${n}" (${e}). Enable an extension providing this format in project.json "extensions", e.g. "@jxsuite/parser".`);return await s.parseDocument(r)}async function r$(e,t){let r=new Map,n=new Map;for(let s of e){if(!n.has(s.sourcePath))n.set(s.sourcePath,await tJ(s.sourcePath,t));let i=n.get(s.sourcePath);if(i!==null&&i!==void 0)r.set(s.urlPattern,eJ(i,s._pathParams))}return r}function eJ(e,t){if(!e.includes("${"))return e;return e.replaceAll(/\$\{(\w+)\}/g,(r,n)=>t?.[n]??r)}async function tJ(e,t){if(!Sm(e,"utf8").includes("$translationKey"))return null;let r;try{r=await to(e,t)}catch{return null}return O(r.$translationKey)&&r.$translationKey!==""?r.$translationKey:null}async function n$(e,t){let r=[],n=new Set([".json",".jxn",...t?.documentExtensions("page")??[]]);return await s$(e,e,r,n,t),r.sort(X0),r}async function s$(e,t,r,n,s){let i=KI(e,{withFileTypes:!0});for(let o of i){let a=XI(e,o.name);if(o.isDirectory()){if(o.name.startsWith("_"))continue;await s$(a,t,r,n,s);continue}let l=t$(o.name).toLowerCase();if(!n.has(l))continue;if(o.name.startsWith("_"))continue;let c=ZI(t,a);r.push(await rJ(c,a,s))}}async function rJ(e,t,r){let{isCatchAll:n,isDynamic:s,params:i,urlPattern:o}=Y0(e),a=null;try{let c=(await to(t,r)).$layout;if(O(c))a=c}catch{}return{$layout:a,isCatchAll:n,isDynamic:s,params:i,relativePath:e,sourcePath:t,urlPattern:o}}function nJ(e){let t=e[Cu];if(!B(t))return null;let{mtime:r}=t;return O(r)&&r!==""?r:null}function i$(e){if(e.includes("\x00"))return"has a NUL character";for(let t of e.split("/")){if(t==="."||t==="..")return'has a "." or ".." segment';if(t.includes("\\"))return"has a backslash"}return null}async function o$(e,t,r={},n,s,i,o={}){let a=[],l=(u,p)=>{let h=`Dynamic route ${u.urlPattern}: ${p}`;if(o.errors===void 0)throw Error(h);o.errors.push(h)},c=e.flatMap((u)=>u.isDynamic?[u.urlPattern]:[]);for(let u of e){if(!u.isDynamic){a.push(u);continue}let p;try{p=await to(u.sourcePath,n?.formats)}catch{a.push(u);continue}if(!p.$paths){console.warn(`Warning: dynamic route ${u.urlPattern} has no $paths — skipping`);continue}let h;try{h=Q0(p.$paths)}catch(b){l(u,je(b));continue}if(h!==null){let b=hn(u.urlPattern,i??null),g=h.each===void 0?[{}]:await e$(h.each,t,r,n,s,b,u,c);for(let y of g){let w=await sJ(u,p,h,y,{locale:b,projectConfig:s,projectRoot:t,registry:n,report:l,sections:r});a.push(...w)}continue}let m=await e$(p.$paths,t,r,n,s,hn(u.urlPattern,i??null),u,c);for(let b of m){let g=u.urlPattern,y={};for(let[E,k]of Object.entries(b)){if(E===Cu)continue;y[E]=String(k),g=g.replace(`:${E}`,y[E]),g=g.replace("*",y[E])}let w=i$(g);if(w!==null){console.warn(`Warning: $paths for ${u.urlPattern} produced "${g}", which ${w}; skipping it`);continue}let P=nJ(b),S={...u,_pathParams:y,isCatchAll:!1,isDynamic:!1,params:[],urlPattern:g};if(P!==null)S.sourceMtime=P;a.push(S)}}return a}function a$(e,t){let r=e;for(let[n,s]of Object.entries(t)){let i=new RegExp(`:${n.replaceAll(/[.*+?^${}()|[\]\\]/g,String.raw`\$&`)}(?=/|$)`);r=i.test(r)?r.replace(i,()=>s):r.replace("*",()=>s)}return r}async function sJ(e,t,r,n,s){let i={};for(let[b,g]of Object.entries(n))if(b!==Cu)i[b]=String(g);let o=e.params.filter((b)=>!(b in i));if(o.length!==1)return s.report(e,`a paged route takes exactly one parameter besides those its each source fills; this one has ${o.length}`),[];let a=o[0];if(t.state?.[r.key]===void 0)return s.report(e,`$paths.paginate names state entry "${r.key}", which this page does not declare`),[];let l=a$(e.urlPattern,i),c=i$(l);if(c!==null)return console.warn(`Warning: $paths for ${e.urlPattern} produced "${l}", which ${c}; skipping it`),[];let u=await oJ(t,r.key,e,i,s);if(!Array.isArray(u))return s.report(e,`state entry "${r.key}" did not resolve to an array at build time`),[];let p=iJ(u,e.sourcePath),h=Mp(u.length,r.pageSize),m=[];for(let b=1;b<=h;b++){let g={...e,_pathParams:{...i,[a]:String(b)},isCatchAll:!1,isDynamic:!1,pagedState:{items:ex(u,b,r.pageSize),key:r.key},pagination:tx(l,b,r.pageSize,u.length),params:[],urlPattern:Yi(l,b)};if(p!==null)g.sourceMtime=p;m.push(g)}return m}function iJ(e,t){let r=null,n=YI(t).mtime.getTime();for(let s of e){let i=B(s)?s[Cu]:void 0,o=B(i)?i.mtime:void 0;if(O(o)&&Date.parse(o)>n)n=Date.parse(o),r=o}return r}async function oJ(e,t,r,n,s){let i=e.state?.[t];if(i===void 0||Array.isArray(i))return i;let o={},a=xm(s.projectRoot);for(let[u,p]of Object.entries(s.projectConfig?.imports??{}))o[u]=p.startsWith("./")||p.startsWith("../")?a(p,r):p;Object.assign(o,e.imports);let l={imports:o,state:{[t]:structuredClone(i)}},c={_pathParams:n,locale:s.locale,sourcePath:r.sourcePath,urlPattern:a$(r.urlPattern,n)};return await Ou(l,c,s.projectRoot,{...s.projectConfig&&{config:s.projectConfig},...s.registry&&{registry:s.registry},sections:s.sections}),l.state?.[t]}async function e$(e,t,r,n,s,i,o,a){if(Array.isArray(e))return e;if("values"in e&&Array.isArray(e.values)){let l=O(e.param)?e.param:"value";return e.values.map((c)=>({[l]:c}))}if("$ref"in e&&O(e.$ref)&&e.$ref){let l=e.$ref,c=QI(t,l),u;try{u=JSON.parse(Sm(c,"utf8"))}catch(m){return console.warn(`Warning: $paths.$ref could not load "${l}": ${je(m)}`),[]}if(!Array.isArray(u))return console.warn(`Warning: $paths.$ref "${l}" must be a JSON array`),[];let p=O(e.param)?e.param:"id",h=O(e.field)?e.field:"id";return u.map((m)=>{if(m===null)throw TypeError(`$paths.$ref "${l}" contains a null entry`);return{[p]:(B(m)?m[h]??m.id:void 0)??String(m)}})}for(let l of Object.keys(e)){let c=n?.byPathsDiscriminator(l);if(!c?.project)continue;let u={data:r[c.project.key],locale:i,projectConfig:s,root:t};if(o!==void 0)u.params=o.params,u.urlPattern=o.urlPattern;if(a!==void 0)u.patterns=a;return await c.call("resolvePaths",e,u)}return console.warn("Warning: unrecognized $paths shape — skipping"),[]}var Cu="_meta";var l$=D(()=>{ve();Fi();ir();Z0();rx();bm();$m();vm()});import{createHash as aJ}from"node:crypto";function c$(){return{fontOrigins:new Set,frameOrigins:new Set,imgOrigins:new Set,scriptHashes:new Set,scriptOrigins:new Set,styleOrigins:new Set}}function ro(e,t){let r=new RegExp(`\\b${t}\\s*=\\s*("([^"]*)"|'([^']*)')`,"i").exec(e);return r?.[2]??r?.[3]}function Em(e){if(e===void 0||!/^https?:\/\//i.test(e))return null;try{return new URL(e).origin}catch{return null}}function hJ(e){return`'sha256-${aJ("sha256").update(e,"utf8").digest("base64")}'`}function u$(e,t){for(let r of e.matchAll(cJ)){let n=r[1]??"",s=ro(n,"src"),i=(ro(n,"type")??"").trim().toLowerCase();if(s!==void 0){let o=Em(s);if(o)t.scriptOrigins.add(o);continue}if(lJ.has(i))t.scriptHashes.add(hJ(r[2]??""))}for(let r of e.matchAll(uJ)){let n=r[1]??"",s=(ro(n,"rel")??"").toLowerCase(),i=ro(n,"href"),o=Em(i);if(!o)continue;if(s.includes("stylesheet"))t.styleOrigins.add(o);if(mJ.test(i??"")||(ro(n,"as")??"")==="font")t.fontOrigins.add(o)}for(let[r,n]of[[fJ,t.imgOrigins],[dJ,t.imgOrigins],[pJ,t.frameOrigins]])for(let s of e.matchAll(r)){let i=s[1]??"";for(let o of[ro(i,"src"),...gJ(ro(i,"srcset"))]){let a=Em(o);if(a)n.add(a)}}}function gJ(e){return e===void 0?[]:e.split(",").map((t)=>t.trim().split(/\s+/)[0]??"").filter(Boolean)}function f$(e){let t=e?.csp;if(t===void 0||t===!1)return null;if(t===!0)return{};if(t==="report-only")return{mode:"report-only"};return t}function d$(e,t){let r=(o,a)=>[...o,...a].join(" "),n={"base-uri":"'self'","default-src":"'self'","font-src":r(["'self'"],e.fontOrigins),"form-action":"'self'","frame-ancestors":"'self'","frame-src":r(["'self'"],e.frameOrigins),"img-src":r(["'self'","data:"],e.imgOrigins),"object-src":"'none'","script-src":r(["'self'",...[...e.scriptHashes].toSorted()],e.scriptOrigins),"style-src":r(["'self'","'unsafe-inline'"],e.styleOrigins)};if(t.reportUri!==void 0&&t.reportUri!=="")n["report-to"]="csp-endpoint",n["report-uri"]=t.reportUri;for(let[o,a]of Object.entries(t.directives??{}))n[o]=a;let s=Object.entries(n).filter(([,o])=>o!==!1&&o!=="").toSorted(([o],[a])=>o<a?-1:1).map(([o,a])=>`${o} ${String(a)}`).join("; "),i=t.mode==="report-only"?{"Content-Security-Policy-Report-Only":s}:{"Content-Security-Policy":s};if(t.reportUri!==void 0&&t.reportUri!=="")i["Reporting-Endpoints"]=`csp-endpoint="${t.reportUri}"`;return i}var lJ,cJ,uJ,fJ,dJ,pJ,mJ;var Pm=D(()=>{lJ=new Set(["","module","importmap","text/javascript","module-shim"]),cJ=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,uJ=/<link\b([^>]*)>/gi,fJ=/<img\b([^>]*)>/gi,dJ=/<source\b([^>]*)>/gi,pJ=/<iframe\b([^>]*)>/gi,mJ=/\.(woff2?|ttf|otf|eot)(\?|#|$)/i});import{existsSync as Nu,readFileSync as yJ,writeFileSync as m$}from"node:fs";import{join as Tu}from"node:path";function h$(e,t){let r=e?.headers??{},n=[];if(r.enabled===!1)return{errors:n,rules:[]};let s=r.security??{},i={};if(s.contentTypeOptions!==!1)i["X-Content-Type-Options"]="nosniff";if(s.referrerPolicy!==!1)i["Referrer-Policy"]=s.referrerPolicy??"strict-origin-when-cross-origin";if(s.permissionsPolicy!==!1)i["Permissions-Policy"]=s.permissionsPolicy??"camera=(), microphone=(), geolocation=()";if(s.frameOptions!==!1)i["X-Frame-Options"]=s.frameOptions??"SAMEORIGIN";let{hsts:o}=s;if(o){let u=o===!0?{}:o,p=u.maxAge??p$,h=u.includeSubDomains??!0,m=u.preload??!1;if(m&&!h)n.push("build.headers.security.hsts: `preload` requires `includeSubDomains` — the preload list "+"will not accept the header without it.");else i["Strict-Transport-Security"]=[`max-age=${p}`,h?"includeSubDomains":null,m?"preload":null].filter(Boolean).join("; ")}let a=f$(s);if(a)if(t===void 0)n.push("build.headers.security.csp is set, but no page was scanned for inline scripts — the "+"policy would block every one of them.");else Object.assign(i,d$(t,a));let l=r.cache??"auto";if(l==="auto")i["Cache-Control"]="public, max-age=0, must-revalidate";let c=[];if(Object.keys(i).length>0)c.push({headers:i,pattern:"/*"});if(l==="auto")c.push({headers:{"Cache-Control":`public, max-age=${p$}, immutable`},pattern:bJ});for(let[u,p]of Object.entries(r.rules??{}))c.push({headers:p,pattern:u});return{errors:n,rules:c}}function g$(e){let t=[["feed.xml","application/atom+xml; charset=utf-8"],["feed.json","application/feed+json; charset=utf-8"],["manifest.webmanifest","application/manifest+json; charset=utf-8"],[".well-known/security.txt","text/plain; charset=utf-8"]],r=[];for(let[n,s]of t)if(Nu(Tu(e,n)))r.push({headers:{"Content-Type":s},pattern:`/${n}`});if(Nu(Tu(e,"feed","archive")))r.push({headers:{"Content-Type":"application/atom+xml; charset=utf-8"},pattern:"/feed/archive/*"});return r}function y$(e,t){if(t==="")return[...e];return e.map((r)=>({headers:r.headers,pattern:Xe(t,r.pattern)}))}function wJ(e){let t=e.map((r)=>{let n=Object.entries(r.headers).map(([s,i])=>` ${s}: ${i}`);return[r.pattern,...n].join(`
|
|
141
|
-
`)});return`${[
|
|
139
|
+
`:""}var BI,L0,Zo="https://esm.sh/@vue/reactivity@3.5.40",Qo="https://esm.sh/lit-html@3.3.0",zI,GI,Ys,YI,ra="__jxAttrText",B0="__jxServerCall",mm="__jxCaptureSlotted",hm="__jxDistributeSlots",na="<!---->",ym,ZI;var An=D(()=>{Ko();Sl();jl();$u();T0();be();Bo();Ko();jl();$u();be();BI=["$map/","event#/","$args/","$reduce/"];L0=Symbol("jx.runtimeOnlyStateKeys");zI=/\bstate\.([A-Za-z_$][\w$]*)\s*(?:\+\+|--|(?:\*\*|\|\||&&|\?\?|<<|>>>|>>|[-+*/%&|^])?=(?!=))/g,GI=/\bstate\.([A-Za-z_$][\w$]*)\s*\.\s*(?:push|pop|shift|unshift|splice|sort|reverse|fill|copyWithin)\s*\(/g;Ys=new Set(["pre","textarea","listing","plaintext","xmp"]);YI=[];ym=new Set(["input","br","hr","img","meta","link","area","col","source"]);ZI=/^(?:::slotted\(|::part\()/});import{relative as tJ,sep as rJ}from"node:path";function Rl(e){return e===nJ}function ia(e,t){if(e==="/")return"/";if(t==="always")return e.endsWith("/")?e:`${e}/`;if(t==="never")return e.replace(/\/+$/,"")||"/";return e}function Ju(e,t){let r=new RegExp(`\\s${t}\\s*=\\s*(?:"([^"]*)"|'([^']*)'|([^\\s"'>]+))`,"i").exec(e);return r===null?null:r[1]??r[2]??r[3]??""}function Z0(e){let t=e.search(/<\/head\s*>/i),r=t===-1?e:e.slice(0,t);for(let[n]of r.matchAll(/<meta\b[^>]*>/gi)){if(Ju(n,"name")?.trim().toLowerCase()!=="robots")continue;let s=new Set((Ju(n,"content")??"").toLowerCase().split(",").map((i)=>i.trim()));if(s.has("noindex")||s.has("none"))return!0}return!1}function Q0(e){let t=e.search(/<\/head\s*>/i);return{end:t,head:t===-1?e:e.slice(0,t)}}function sJ(e,t){let r=t.trim().toLowerCase();for(let[n]of Q0(e).head.matchAll(/<link\b[^>]*>/gi)){let s=(Ju(n,"rel")??"").toLowerCase().split(/\s+/),i=(Ju(n,"type")??"").split(";")[0]?.trim().toLowerCase();if(s.includes("alternate")&&i===r)return!0}return!1}function e$(e,t){let{end:r}=Q0(e);if(r===-1||sJ(e,t.type))return e;let n=`<link href="${_e(t.href)}" rel="alternate" type="${_e(t.type)}">`;return`${e.slice(0,r)}${n}
|
|
140
|
+
${e.slice(r)}`}function t$(e,t){return new URL(`/${tJ(e,t).split(rJ).join("/")}`,"http://localhost").pathname}var nJ="/404";var Sm=D(()=>{An()});function r$(e,t){if(t===null||t.routing!=="prefix-always")return[];let r=[];for(let n of e){if(n.urlPattern==="/")continue;let s=n.urlPattern.split("/").find(Boolean),i=Xr(s);if(i===null||!t.locales.includes(i))r.push(n.urlPattern)}return r}function n$(e,t){if(t===null)return null;let r=e.split("/").find(Boolean),n=Xr(r);if(r===void 0||n===null||t.locales.includes(n))return null;let s=t.locales.find((i)=>i!==n&&i.split("-")[0]===n.split("-")[0]);return s===void 0?null:{meant:s,segment:r}}function iJ(e,t){let r=e.split("/").filter(Boolean),n=Xr(r[0]);if(t!==null&&n!==null&&t.locales.includes(n))return r.slice(1).join("/");return r.join("/")}function Em(e,t){let r=new Map,n=[];if(t===null)return{conflicts:n,sets:r};let s=new Map,i=new Set;for(let o of e){let a=o.translationKey===void 0?iJ(o.urlPattern,t):o.translationKey.replaceAll(/^\/+|\/+$/g,"");if(o.translationKey!==void 0)i.add(o.urlPattern);let l=gn(o.urlPattern,t);if(l===null)continue;let c=s.get(a)??[],u=c.find((p)=>p.locale===l);if(u===void 0)c.push({locale:l,urlPattern:o.urlPattern});else n.push({declared:i.has(u.urlPattern)||o.translationKey!==void 0,key:a,locale:l,urlPatterns:[u.urlPattern,o.urlPattern]});s.set(a,c)}for(let o of s.values()){let a=o.toSorted((l,c)=>l.locale===c.locale?0:l.locale<c.locale?-1:1);for(let l of o)r.set(l.urlPattern,a)}return{conflicts:n,sets:r}}function s$(e,t,r,n){let s=new Map;if(t===null||r==="")return s;let i=new Map;for(let[o,a]of Em(e,t).sets){if(a.length<2)continue;let l=i.get(a);if(l===void 0){l=a.map((u)=>({href:Bs(ia(u.urlPattern,n),r),hreflang:u.locale}));let c=a.find((u)=>u.locale===t.defaultLocale);if(c!==void 0)l.push({href:Bs(ia(c.urlPattern,n),r),hreflang:"x-default"});i.set(a,l)}s.set(o,l)}return s}function i$({pageLang:e,pageDir:t,routeLocale:r,defaults:n}){let s=e??r??n?.lang??"en",i=t??n?.dir;if(i!==void 0)return{dir:i,lang:s};return xl(s)==="rtl"?{dir:"rtl",lang:s}:{lang:s}}var jm=D(()=>{Vr();Zi();Sm();Zi();Zi()});function o$(e,t,r,n=null,s=null,i=[]){if(!e.state)e.state={};let o={};if(s!==null)o.defaultLocale=s.defaultLocale,o.locales=s.locales;e.state.$site={name:t.name??"Jx Site",url:t.url??"",...o,...t.state};let a=(O(e.$lang)?e.$lang:void 0)??gn(r.urlPattern,s)??t.defaults?.lang,l=i.map((u)=>({code:u.locale,current:u.urlPattern===r.urlPattern,dir:xl(u.locale),label:d0(u.locale),url:u.urlPattern})),c={params:r._pathParams??{},title:e.title??e._pageTitle??t.name??"",url:r.urlPattern};if(l.length>0)c.alternates=l;if(r.pagination){let{first:u,itemCount:p,last:h,next:m,number:b,pageCount:g,pageSize:y,pages:w,prev:j}=r.pagination;c.pagination={first:u,itemCount:p,last:h,next:m,number:b,pageCount:g,pageSize:y,pages:w.map(({current:S,number:E,url:k})=>({current:S,number:E,url:k})),prev:j}}if(a!==void 0)c.dir=xl(a),c.locale=a;if(e.state.$page=c,t.state){for(let[u,p]of Object.entries(t.state))if(u!=="$site"&&u!=="$page"&&!(u in e.state))e.state[u]=p}if(t.$media)e.$media={...t.$media,...e.$media};if(t.imports&&Object.keys(t.imports).length>0){if(!e.imports)e.imports={};for(let[u,p]of Object.entries(t.imports))if(!(u in e.imports))e.imports[u]=n&&(p.startsWith("./")||p.startsWith("../"))?n(p,r):p}if(t.$elements?.length)if(!e.$elements?.length)e.$elements=[...t.$elements];else{let u=new Set,p=[];for(let h of[...t.$elements,...e.$elements]){let m=O(h)?h:V(h)?h.$ref:void 0;if(m&&!u.has(m))u.add(m),p.push(h)}e.$elements=p}return e}var a$=D(()=>{be();Zi()});import{dirname as oJ,relative as aJ,resolve as lJ}from"node:path";function Pm(e){return(t,r)=>{if(!r.sourcePath)return t;return`./${aJ(oJ(r.sourcePath),lJ(e,t))}`}}function l$(e,t,r,n=null,s=null,i=[]){return o$(e,t,r,n===null?null:Pm(n),s,i)}var km=D(()=>{a$()});import{readFileSync as cJ}from"node:fs";import{dirname as _m,resolve as Mu}from"node:path";import{createRequire as uJ}from"node:module";function pJ(e){return Wt(e.resolve)}async function Du(e,t,r,n={}){let s=e.imports??{},{state:i}=e;if(!i)return;for(let[o,a]of Object.entries(i)){if(!vn(a))continue;if(fJ.has(a.$prototype))continue;if(a.timing&&a.timing!=="compiler"){let l=n.registry?.byName(a.$prototype);if(l?.capabilities.lower)try{let c=await l.call("lower",a,{projectConfig:n.config,root:r,route:t});if(W(c)){let u=c.$bundle;if(Array.isArray(u)){for(let p of u)if(O(p))n.registerBundle?.(p)}delete c.$bundle}i[o]=c}catch(c){console.warn(`prototype-resolver: failed to lower "${o}" ($prototype: "${a.$prototype}"):`,Pe(c))}continue}if(!a.$src){let l=s[a.$prototype]??mJ(n,a.$prototype);if(!l)continue;a.$src=l}try{let l=await hJ(a,t,r,i,n);if(a.timing&&W(l))l.timing=a.timing;i[o]=l}catch(l){console.warn(`prototype-resolver: failed to resolve "${o}" ($prototype: "${a.$prototype}"):`,Pe(l))}}}function mJ(e,t){return e.registry?.byName(t)?.classPath}async function hJ(e,t,r,n,s){let i=e.$src;if(!i)throw Error(`$prototype "${e.$prototype}" has no $src to resolve`);let o;if(i.startsWith("./")||i.startsWith("../"))o=t.sourcePath?Mu(_m(t.sourcePath),i):Mu(r,i);else o=uJ(Mu(r,"package.json")).resolve(i);let a=cJ(o,"utf8"),l=Vy(a,o);if(!l.$implementation)throw Error(`${i} has no $implementation field`);let c=Mu(_m(o),l.$implementation),u=await kp(c),p=e.$export??l.title??e.$prototype,h=u[p]??u.default?.[p];if(!h)throw Error(`Module ${l.$implementation} does not export "${p}"`);let m={};for(let[g,y]of Object.entries(e))if(!dJ.has(g))m[g]=y;if(m.src&&!m.basePath&&t.sourcePath)m.basePath=_m(t.sourcePath);m._project={config:s.config??null,root:r,...s.sections},m._document={route:t,state:n};let b=new h(m);if(pJ(b))return await b.resolve();return b}var fJ,dJ;var Am=D(()=>{ys();be();er();fJ=new Set(["Function","LocalStorage","SessionStorage","Array"]),dJ=new Set(["$prototype","$src","$export","timing","default","description"])});import{readFileSync as Rm,readdirSync as gJ,statSync as yJ}from"node:fs";import{extname as u$,join as bJ,relative as xJ,resolve as $J}from"node:path";async function ro(e,t){let r=Rm(e,"utf8");if(ms(e))return hs(r,e);let n=u$(e).toLowerCase(),s=t?.byExtension(n,"parse");if(!s)throw Error(`No format class registered for "${n}" (${e}). Enable an extension providing this format in project.json "extensions", e.g. "@jxsuite/parser".`);return await s.parseDocument(r)}async function f$(e,t){let r=new Map,n=new Map;for(let s of e){if(!n.has(s.sourcePath))n.set(s.sourcePath,await vJ(s.sourcePath,t));let i=n.get(s.sourcePath);if(i!==null&&i!==void 0)r.set(s.urlPattern,wJ(i,s._pathParams))}return r}function wJ(e,t){if(!e.includes("${"))return e;return e.replaceAll(/\$\{(\w+)\}/g,(r,n)=>t?.[n]??r)}async function vJ(e,t){if(!Rm(e,"utf8").includes("$translationKey"))return null;let r;try{r=await ro(e,t)}catch{return null}return O(r.$translationKey)&&r.$translationKey!==""?r.$translationKey:null}async function d$(e,t){let r=[],n=new Set([".json",".jxn",...t?.documentExtensions("page")??[]]);return await p$(e,e,r,n,t),r.sort(o0),r}async function p$(e,t,r,n,s){let i=gJ(e,{withFileTypes:!0});for(let o of i){let a=bJ(e,o.name);if(o.isDirectory()){if(o.name.startsWith("_"))continue;await p$(a,t,r,n,s);continue}let l=u$(o.name).toLowerCase();if(!n.has(l))continue;if(o.name.startsWith("_"))continue;let c=xJ(t,a);r.push(await SJ(c,a,s))}}async function SJ(e,t,r){let{isCatchAll:n,isDynamic:s,params:i,urlPattern:o}=i0(e),a=null;try{let c=(await ro(t,r)).$layout;if(O(c))a=c}catch{}return{$layout:a,isCatchAll:n,isDynamic:s,params:i,relativePath:e,sourcePath:t,urlPattern:o}}function EJ(e){let t=e[Lu];if(!W(t))return null;let{mtime:r}=t;return O(r)&&r!==""?r:null}function m$(e){if(e.includes("\x00"))return"has a NUL character";for(let t of e.split("/")){if(t==="."||t==="..")return'has a "." or ".." segment';if(t.includes("\\"))return"has a backslash"}return null}async function h$(e,t,r={},n,s,i,o={}){let a=[],l=(u,p)=>{let h=`Dynamic route ${u.urlPattern}: ${p}`;if(o.errors===void 0)throw Error(h);o.errors.push(h)},c=e.flatMap((u)=>u.isDynamic?[u.urlPattern]:[]);for(let u of e){if(!u.isDynamic){a.push(u);continue}let p;try{p=await ro(u.sourcePath,n?.formats)}catch{a.push(u);continue}if(!p.$paths){console.warn(`Warning: dynamic route ${u.urlPattern} has no $paths — skipping`);continue}let h;try{h=l0(p.$paths)}catch(b){l(u,Pe(b));continue}if(h!==null){let b=gn(u.urlPattern,i??null),g=h.each===void 0?[{}]:await c$(h.each,t,r,n,s,b,u,c);for(let y of g){let w=await jJ(u,p,h,y,{locale:b,projectConfig:s,projectRoot:t,registry:n,report:l,sections:r});a.push(...w)}continue}let m=await c$(p.$paths,t,r,n,s,gn(u.urlPattern,i??null),u,c);for(let b of m){let g=u.urlPattern,y={};for(let[E,k]of Object.entries(b)){if(E===Lu)continue;y[E]=String(k),g=g.replace(`:${E}`,y[E]),g=g.replace("*",y[E])}let w=m$(g);if(w!==null){console.warn(`Warning: $paths for ${u.urlPattern} produced "${g}", which ${w}; skipping it`);continue}let j=EJ(b),S={...u,_pathParams:y,isCatchAll:!1,isDynamic:!1,params:[],urlPattern:g};if(j!==null)S.sourceMtime=j;a.push(S)}}return a}function g$(e,t){let r=e;for(let[n,s]of Object.entries(t)){let i=new RegExp(`:${n.replaceAll(/[.*+?^${}()|[\]\\]/g,String.raw`\$&`)}(?=/|$)`);r=i.test(r)?r.replace(i,()=>s):r.replace("*",()=>s)}return r}async function jJ(e,t,r,n,s){let i={};for(let[b,g]of Object.entries(n))if(b!==Lu)i[b]=String(g);let o=e.params.filter((b)=>!(b in i));if(o.length!==1)return s.report(e,`a paged route takes exactly one parameter besides those its each source fills; this one has ${o.length}`),[];let a=o[0];if(t.state?.[r.key]===void 0)return s.report(e,`$paths.paginate names state entry "${r.key}", which this page does not declare`),[];let l=g$(e.urlPattern,i),c=m$(l);if(c!==null)return console.warn(`Warning: $paths for ${e.urlPattern} produced "${l}", which ${c}; skipping it`),[];let u=await kJ(t,r.key,e,i,s);if(!Array.isArray(u))return s.report(e,`state entry "${r.key}" did not resolve to an array at build time`),[];let p=PJ(u,e.sourcePath),h=Hp(u.length,r.pageSize),m=[];for(let b=1;b<=h;b++){let g={...e,_pathParams:{...i,[a]:String(b)},isCatchAll:!1,isDynamic:!1,pagedState:{items:c0(u,b,r.pageSize),key:r.key},pagination:u0(l,b,r.pageSize,u.length),params:[],urlPattern:Xi(l,b)};if(p!==null)g.sourceMtime=p;m.push(g)}return m}function PJ(e,t){let r=null,n=yJ(t).mtime.getTime();for(let s of e){let i=W(s)?s[Lu]:void 0,o=W(i)?i.mtime:void 0;if(O(o)&&Date.parse(o)>n)n=Date.parse(o),r=o}return r}async function kJ(e,t,r,n,s){let i=e.state?.[t];if(i===void 0||Array.isArray(i))return i;let o={},a=Pm(s.projectRoot);for(let[u,p]of Object.entries(s.projectConfig?.imports??{}))o[u]=p.startsWith("./")||p.startsWith("../")?a(p,r):p;Object.assign(o,e.imports);let l={imports:o,state:{[t]:structuredClone(i)}},c={_pathParams:n,locale:s.locale,sourcePath:r.sourcePath,urlPattern:g$(r.urlPattern,n)};return await Du(l,c,s.projectRoot,{...s.projectConfig&&{config:s.projectConfig},...s.registry&&{registry:s.registry},sections:s.sections}),l.state?.[t]}async function c$(e,t,r,n,s,i,o,a){if(Array.isArray(e))return e;if("values"in e&&Array.isArray(e.values)){let l=O(e.param)?e.param:"value";return e.values.map((c)=>({[l]:c}))}if("$ref"in e&&O(e.$ref)&&e.$ref){let l=e.$ref,c=$J(t,l),u;try{u=JSON.parse(Rm(c,"utf8"))}catch(m){return console.warn(`Warning: $paths.$ref could not load "${l}": ${Pe(m)}`),[]}if(!Array.isArray(u))return console.warn(`Warning: $paths.$ref "${l}" must be a JSON array`),[];let p=O(e.param)?e.param:"id",h=O(e.field)?e.field:"id";return u.map((m)=>{if(m===null)throw TypeError(`$paths.$ref "${l}" contains a null entry`);return{[p]:(W(m)?m[h]??m.id:void 0)??String(m)}})}for(let l of Object.keys(e)){let c=n?.byPathsDiscriminator(l);if(!c?.project)continue;let u={data:r[c.project.key],locale:i,projectConfig:s,root:t};if(o!==void 0)u.params=o.params,u.urlPattern=o.urlPattern;if(a!==void 0)u.patterns=a;return await c.call("resolvePaths",e,u)}return console.warn("Warning: unrecognized $paths shape — skipping"),[]}var Lu="_meta";var y$=D(()=>{be();qi();er();a0();f0();jm();km();Am()});import{createHash as _J}from"node:crypto";function b$(){return{fontOrigins:new Set,frameOrigins:new Set,imgOrigins:new Set,scriptHashes:new Set,scriptOrigins:new Set,styleOrigins:new Set}}function no(e,t){let r=new RegExp(`\\b${t}\\s*=\\s*("([^"]*)"|'([^']*)')`,"i").exec(e);return r?.[2]??r?.[3]}function Om(e){if(e===void 0||!/^https?:\/\//i.test(e))return null;try{return new URL(e).origin}catch{return null}}function JJ(e){return`'sha256-${_J("sha256").update(e,"utf8").digest("base64")}'`}function x$(e,t){for(let r of e.matchAll(RJ)){let n=r[1]??"",s=no(n,"src"),i=(no(n,"type")??"").trim().toLowerCase();if(s!==void 0){let o=Om(s);if(o)t.scriptOrigins.add(o);continue}if(AJ.has(i))t.scriptHashes.add(JJ(r[2]??""))}for(let r of e.matchAll(OJ)){let n=r[1]??"",s=(no(n,"rel")??"").toLowerCase(),i=no(n,"href"),o=Om(i);if(!o)continue;if(s.includes("stylesheet"))t.styleOrigins.add(o);if(IJ.test(i??"")||(no(n,"as")??"")==="font")t.fontOrigins.add(o)}for(let[r,n]of[[NJ,t.imgOrigins],[CJ,t.imgOrigins],[TJ,t.frameOrigins]])for(let s of e.matchAll(r)){let i=s[1]??"";for(let o of[no(i,"src"),...MJ(no(i,"srcset"))]){let a=Om(o);if(a)n.add(a)}}}function MJ(e){return e===void 0?[]:e.split(",").map((t)=>t.trim().split(/\s+/)[0]??"").filter(Boolean)}function $$(e){let t=e?.csp;if(t===void 0||t===!1)return null;if(t===!0)return{};if(t==="report-only")return{mode:"report-only"};return t}function w$(e,t){let r=(o,a)=>[...o,...a].join(" "),n={"base-uri":"'self'","default-src":"'self'","font-src":r(["'self'"],e.fontOrigins),"form-action":"'self'","frame-ancestors":"'self'","frame-src":r(["'self'"],e.frameOrigins),"img-src":r(["'self'","data:"],e.imgOrigins),"object-src":"'none'","script-src":r(["'self'",...[...e.scriptHashes].toSorted()],e.scriptOrigins),"style-src":r(["'self'","'unsafe-inline'"],e.styleOrigins)};if(t.reportUri!==void 0&&t.reportUri!=="")n["report-to"]="csp-endpoint",n["report-uri"]=t.reportUri;for(let[o,a]of Object.entries(t.directives??{}))n[o]=a;let s=Object.entries(n).filter(([,o])=>o!==!1&&o!=="").toSorted(([o],[a])=>o<a?-1:1).map(([o,a])=>`${o} ${String(a)}`).join("; "),i=t.mode==="report-only"?{"Content-Security-Policy-Report-Only":s}:{"Content-Security-Policy":s};if(t.reportUri!==void 0&&t.reportUri!=="")i["Reporting-Endpoints"]=`csp-endpoint="${t.reportUri}"`;return i}var AJ,RJ,OJ,NJ,CJ,TJ,IJ;var Nm=D(()=>{AJ=new Set(["","module","importmap","text/javascript","module-shim"]),RJ=/<script\b([^>]*)>([\s\S]*?)<\/script>/gi,OJ=/<link\b([^>]*)>/gi,NJ=/<img\b([^>]*)>/gi,CJ=/<source\b([^>]*)>/gi,TJ=/<iframe\b([^>]*)>/gi,IJ=/\.(woff2?|ttf|otf|eot)(\?|#|$)/i});import{existsSync as Fu,readFileSync as DJ,writeFileSync as S$}from"node:fs";import{join as qu}from"node:path";function E$(e,t){let r=e?.headers??{},n=[];if(r.enabled===!1)return{errors:n,rules:[]};let s=r.security??{},i={};if(s.contentTypeOptions!==!1)i["X-Content-Type-Options"]="nosniff";if(s.referrerPolicy!==!1)i["Referrer-Policy"]=s.referrerPolicy??"strict-origin-when-cross-origin";if(s.permissionsPolicy!==!1)i["Permissions-Policy"]=s.permissionsPolicy??"camera=(), microphone=(), geolocation=()";if(s.frameOptions!==!1)i["X-Frame-Options"]=s.frameOptions??"SAMEORIGIN";let{hsts:o}=s;if(o){let u=o===!0?{}:o,p=u.maxAge??v$,h=u.includeSubDomains??!0,m=u.preload??!1;if(m&&!h)n.push("build.headers.security.hsts: `preload` requires `includeSubDomains` — the preload list "+"will not accept the header without it.");else i["Strict-Transport-Security"]=[`max-age=${p}`,h?"includeSubDomains":null,m?"preload":null].filter(Boolean).join("; ")}let a=$$(s);if(a)if(t===void 0)n.push("build.headers.security.csp is set, but no page was scanned for inline scripts — the "+"policy would block every one of them.");else Object.assign(i,w$(t,a));let l=r.cache??"auto";if(l==="auto")i["Cache-Control"]="public, max-age=0, must-revalidate";let c=[];if(Object.keys(i).length>0)c.push({headers:i,pattern:"/*"});if(l==="auto")c.push({headers:{"Cache-Control":`public, max-age=${v$}, immutable`},pattern:LJ});for(let[u,p]of Object.entries(r.rules??{}))c.push({headers:p,pattern:u});return{errors:n,rules:c}}function j$(e){let t=[["feed.xml","application/atom+xml; charset=utf-8"],["feed.json","application/feed+json; charset=utf-8"],["manifest.webmanifest","application/manifest+json; charset=utf-8"],[".well-known/security.txt","text/plain; charset=utf-8"]],r=[];for(let[n,s]of t)if(Fu(qu(e,n)))r.push({headers:{"Content-Type":s},pattern:`/${n}`});if(Fu(qu(e,"feed","archive")))r.push({headers:{"Content-Type":"application/atom+xml; charset=utf-8"},pattern:"/feed/archive/*"});return r}function P$(e,t){if(t==="")return[...e];return e.map((r)=>({headers:r.headers,pattern:Xe(t,r.pattern)}))}function VJ(e){let t=e.map((r)=>{let n=Object.entries(r.headers).map(([s,i])=>` ${s}: ${i}`);return[r.pattern,...n].join(`
|
|
141
|
+
`)});return`${[FJ,"",...t].join(`
|
|
142
142
|
`)}
|
|
143
|
-
`}function
|
|
144
|
-
${
|
|
143
|
+
`}function k$(e,t){if(t.length===0)return 0;let r=qu(e,"_headers"),n=Fu(r)?DJ(r,"utf8").trim():"",s=VJ(t),i=n===""?s:`${s}
|
|
144
|
+
${qJ}
|
|
145
145
|
${n}
|
|
146
|
-
`;return
|
|
147
|
-
`)}function
|
|
146
|
+
`;return S$(r,i,"utf8"),1}function _$(e){let t=qu(e,".nojekyll");if(Fu(t))return 0;return S$(t,"","utf8"),1}var LJ="/images/_optimized/*",v$=31536000,FJ="# Generated by @jxsuite/compiler — configure via build.headers in project.json.",qJ="# ─── public/_headers (hand-authored; these rules override the block above) ───";var A$=D(()=>{Vr();Nm()});async function R$(e,t,r,n={}){let s={},i=Ap(e);for(let o of r.projectContributions()){let a=o.project?.key;if(!a||!o.capabilities.projectData)continue;if(!t||!(a in t))continue;s[a]=await o.call("projectData",t[a],{io:i,projectConfig:t,registry:r,root:e,...n.lazy===!0&&{lazy:!0},...n.includeHeld===!0&&{includeHeld:!0}})}return s}var O$=D(()=>{ys()});import{cpSync as WJ,existsSync as HJ,mkdirSync as BJ}from"node:fs";import{dirname as UJ,resolve as zJ}from"node:path";async function N$(e,t,r){let n=[],s=[],i=new Map;for(let o of e.assetProviders()){let a=o.project?.key,l=a?t[a]:void 0;if(a&&(l==null||V(l)&&Object.keys(l).length===0))continue;try{let c=await o.call("assets",l??null,{projectConfig:t,root:r});for(let u of c??[]){if(!V(u)||!u.urlPrefix||!u.dir)continue;let p={dir:u.dir,urlPrefix:tu(u.urlPrefix)};if(Wt(u.filter))p.filter=u.filter;let h=i.get(p.urlPrefix);if(h){if(h.dir!==p.dir)s.push(`Asset mount conflict: "${p.urlPrefix}" is claimed by both "${h.dir}" and "${p.dir}"`);continue}i.set(p.urlPrefix,p),n.push(p)}}catch(c){s.push(`Error in ${o.name}.assets: ${Pe(c)}`)}}return{errors:s,mounts:n}}function Cm(e,t,r){if(t.length===0||!e)return;for(let n of $x(e,t))r.add(n)}function C$(e,t,r){let n=0,s=[];for(let i of e){let o=ru(t,i);if(!o||!HJ(o)){s.push(i);continue}let a=zJ(r,decodeURIComponent(i).replace(/^\//,""));BJ(UJ(a),{recursive:!0}),WJ(o,a),n+=1}return{copied:n,missing:s}}var T$=D(()=>{Vr();be();er()});async function Tm(e,t,r){let n=e.$layout??t.defaults?.layout??null;if(!n)return e;let s=await r(n);if(s.$layout)s=await Tm(s,t,r);let i=e.children??[],o=O(i)?[i]:Array.isArray(i)?i:[],a=KJ(s);if(GJ(a,o),e.state)a.state={...a.state,...e.state};if(e.$media)a.$media={...a.$media,...e.$media};if(e.style)a.style={...a.style,...e.style};if(e.attributes)a.attributes={...a.attributes,...e.attributes};if(e.$head)a._pageHead=e.$head;if(e.title)a._pageTitle=e.title;return delete a.$layout,a}function GJ(e,t){let r=new Map,n=[];for(let s of t){let i=V(s)?s.attributes?.slot:void 0;if(i){let o=r.get(i);if(!o)o=[],r.set(i,o);o.push(s)}else n.push(s)}I$(e,r,n)}function I$(e,t,r){if(!V(e))return;if(!Array.isArray(e.children))return;let n=[];for(let s of e.children)if(V(s)&&s.tagName==="slot"){let i=s.attributes?.name,o=i?t.get(i):void 0;if(i&&o)n.push(...o),t.delete(i);else if(!i&&r.length>0)n.push(...r);else if(Array.isArray(s.children))n.push(...s.children)}else I$(s,t,r),n.push(s);e.children=n}function KJ(e){return structuredClone(e)}var J$=D(()=>{be()});import{existsSync as YJ,readFileSync as XJ}from"node:fs";import{resolve as M$}from"node:path";function D$(e){return(t)=>{let r=M$(e,t);if(!YJ(r))throw Error(`Layout not found: ${t} (resolved to ${r})`);try{return hs(XJ(r,"utf8"),r)}catch(n){throw Error(`Invalid layout at ${r}: ${Pe(n)}`,{cause:n})}}}function L$(e,t,r){return Tm(e,t,D$(r))}function F$(e,t,r){let n=D$(r),s=[],i=e.$layout??t.defaults?.layout;while(i){let o=M$(r,i);if(s.some((l)=>l.path===o))break;let a=n(i);s.push({doc:a,path:o}),i=a.$layout}return s}var q$=D(()=>{qi();er();J$()});import{dirname as ZJ,relative as QJ,resolve as eM,sep as tM}from"node:path";function V$(e,t){return QJ(t,e).split(tM).join("/")}function rM(e,t,r){if(!e.startsWith("./")&&!e.startsWith("../"))return e;return`./${V$(eM(t,e),r)}`}function Ol(e,t,r){let n=ZJ(t),s=V$(t,r);return z0(e).map((i)=>({exportName:i.exportName,src:rM(i.src,n,r),declaredIn:s}))}function W$(e){let t=new Map;for(let{exportName:s,src:i,declaredIn:o}of e){let a=t.get(s)??new Map;if(t.set(s,a),!a.has(i))a.set(i,o)}let r=[],n=[];for(let[s,i]of t){let o=[...i];if(r.push({exportName:s,src:o[0][0]}),o.length>1){let a=o.map(([l,c])=>`${l} (declared in ${c})`);n.push(`Server function "${s}" is exported by ${o.length} different modules: ${a.join(", ")}. The site worker serves one function per export name, at /_jx/server/${s}, so a call meant for any but the first would get the first's answer. Rename the export in all but one module, and the $export that names it.`)}}return{entries:r,errors:n}}var H$=D(()=>{An()});function B$(e,t){if(!O(t)||t.trim()==="")return[...e];return[{attributes:{content:t,name:"description"},tagName:"meta"},...e]}function U$(e=[],t=[],r=[],n={}){let s=[{attributes:{charset:n.charset??"utf8"},tagName:"meta"},{attributes:{content:"width=device-width, initial-scale=1",name:"viewport"},tagName:"meta"}],i=new Map;for(let a of[...s,...e,...t,...r]){let l=Im(a);i.set(l,a)}let o=n.title??n.siteName??"Jx Site";if(i.set("title",{children:[o],tagName:"title"}),n.pageUrl&&n.siteUrl){let a=Bs(n.pageUrl,n.siteUrl);if(![...i.values()].some((c)=>V(c)&&c.tagName==="link"&&c.attributes?.rel==="canonical")){let c={attributes:{href:a,rel:"canonical"},tagName:"link"};i.set(Im(c),c)}if(!i.has("meta:og:url"))i.set("meta:og:url",{attributes:{content:a,property:"og:url"},tagName:"meta"})}if(n.siteName&&!i.has("meta:og:site_name"))i.set("meta:og:site_name",{attributes:{content:n.siteName,property:"og:site_name"},tagName:"meta"});for(let a of n.alternates??[]){let l={attributes:{href:a.href,hreflang:a.hreflang,rel:"alternate"},tagName:"link"},c=Im(l);if(!i.has(c))i.set(c,l)}return[...i.values()]}function Im(e){if(!V(e))return String(e);let t=e.tagName??"unknown",r=e.attributes??{};if(t==="title")return"title";if(r.charset)return"meta:charset";if(t==="meta"&&r.name)return`meta:${r.name}`;if(t==="meta"&&r.property)return`meta:${r.property}`;if(t==="link"&&r.rel){let n=r.hreflang??r.type??r.media??r.sizes??"";return`link:${r.rel}:${r.href??""}:${String(n)}`}if(t==="script"&&r.src)return`script:${r.src}`;if(t==="style"){let n=Array.isArray(e.children)?e.children.join(""):e.textContent,s=V(n)?JSON.stringify(n):n??"";return`style:${nM(s)}`}return`${t}:${JSON.stringify(e)}`}function nM(e){let t=0;for(let r=0;r<e.length;r++)t=Math.trunc((t<<5)-t+(e.codePointAt(r)??0));return t.toString(36)}function z$(e){return e.map((t)=>sM(t)).join(`
|
|
147
|
+
`)}function sM(e){if(O(e))return e;if(!V(e))return"";let t=e.tagName,r=e.attributes??{},n=Object.entries(r).map(([l,c])=>c===!0?l:`${l}="${iM(c)}"`).join(" "),s=n?`<${t} ${n}>`:`<${t}>`;if(t!==void 0&&new Set(["meta","link","base","br","hr","img","input"]).has(t))return s;let o=Array.isArray(e.children)?e.children.join(""):e.textContent,a=V(o)?JSON.stringify(o,null,2):o??"";return`${s}${a}</${t}>`}function iM(e){return String(e).replaceAll("&","&").replaceAll('"',""").replaceAll("<","<")}var G$=D(()=>{Vr();be()});function lM(e){let t=e.indexOf(":");if(t===-1)return!1;if(t===e.length-1)return!1;try{return new URL(e).protocol!==""}catch{return!1}}function cM(e){if(!O(e))return[];return e.split(/\s+/).filter((t)=>{if(t==="")return!1;let r=t.toLowerCase();return!oM.has(r)&&!aM.has(r)&&!lM(t)})}function K$(e){let t=new Set;for(let r of e){if(!V(r)||r.tagName!=="link")continue;for(let n of cM(r.attributes?.rel))t.add(n)}return[...t]}var oM,aM;var Y$=D(()=>{be();oM=new Set(["about","acl","alternate","amphtml","api-catalog","appendix","apple-touch-icon","apple-touch-startup-image","archives","author","blocked-by","bookmark","c2pa-manifest","canonical","chapter","cite-as","collection","compression-dictionary","contents","convertedfrom","copyright","create-form","current","deprecation","describedby","describes","disclosure","dns-prefetch","dpp","duplicate","edit","edit-form","edit-media","enclosure","external","first","geofeed","glossary","help","hosts","hub","ice-server","icon","index","intervalafter","intervalbefore","intervalcontains","intervaldisjoint","intervalduring","intervalequals","intervalfinishedby","intervalfinishes","intervalin","intervalmeets","intervalmetby","intervaloverlappedby","intervaloverlaps","intervalstartedby","intervalstarts","item","last","latest-version","license","linkset","lrdd","manifest","mask-icon","me","media-feed","memento","micropub","modulepreload","monitor","monitor-group","next","next-archive","nofollow","noopener","noreferrer","opener","openid2.local_id","openid2.provider","original","p3pv1","payment","pingback","preconnect","predecessor-version","prefetch","preload","prerender","prev","prev-archive","preview","previous","privacy-policy","profile","publication","rdap-active","rdap-bottom","rdap-down","rdap-top","rdap-up","related","replies","restconf","ruleinput","search","section","self","service","service-desc","service-doc","service-meta","sip-trunking-capability","sponsored","start","status","stylesheet","subsection","successor-version","sunset","tag","terms-of-service","timegate","timemap","type","ugc","up","version-history","via","webmention","working-copy","working-copy-of"]),aM=new Set(["shortcut"])});async function Hu(e,t={}){let{resolveElementPath:r,$media:n,formats:s}=t,i=[],o=new Set;async function a(l,c){let u,p;if(O(l)){let{readFileSync:E}=await import("node:fs"),{resolve:k}=await import("node:path");if(p=c?k(c,l):k(l),o.has(p))return;if(o.add(p),ms(p))u=hs(E(p,"utf8"),p);else{let{extname:A}=await import("node:path"),R=A(p).toLowerCase(),_=s?.byExtension(R,"parse");if(!_){await Promise.resolve().then(() => ys());throw Qc(p,R)}u=await _.parseDocument(E(p,"utf8"))}}else{if(u=l,p=null,u.tagName&&o.has(u.tagName))return;if(u.tagName)o.add(u.tagName)}let{tagName:h}=u;if(!h||!h.includes("-"))throw Error(`compileElement: tagName "${h}" must contain a hyphen`);let{dirname:m}=await import("node:path"),b=p?m(p):null,g=[];if(Array.isArray(u.$elements))for(let E of u.$elements){let k=He(E)?E.$ref:E;if(!O(k))continue;if(b)await a(k,b);let A=r?r(k,b):k.replace(/\.(?:json|jxn)$/i,".js");g.push(A)}let y=Cu(h);if(n)u.$media={...n,...u.$media};let{rewriteSrc:w}=t,j=Nl(u,y,g,w?(E)=>w(E,b):void 0,eo(u,t.defaults),t.serverBaseUrl),S=p?p.replace(/\.(?:json|jxn)$/i,".js"):`${h}.js`;i.push({content:j,path:S,tagName:h})}return await a(e,t.basePath??null),{files:i}}async function uM(e,t={}){let{title:r="Jx App",reactivitySrc:n="https://esm.sh/@vue/reactivity@3.5.13",litHtmlSrc:s="https://esm.sh/lit-html@3.3.0"}=t,i=await Hu(e,t),o=i.files.at(-1);if(!o)throw Error("compileElementPage: no element modules were produced");let{basename:a}=await import("node:path"),l=a(o.path),c=`<!DOCTYPE html>
|
|
148
148
|
<html lang="en">
|
|
149
149
|
<head>
|
|
150
150
|
<meta charset="utf-8">
|
|
@@ -163,11 +163,11 @@ ${n}
|
|
|
163
163
|
<${o.tagName}></${o.tagName}>
|
|
164
164
|
<script type="module" src="./${l}"></script>
|
|
165
165
|
</body>
|
|
166
|
-
</html>`;return{files:i.files,html:c}}function
|
|
167
|
-
`)}function
|
|
166
|
+
</html>`;return{files:i.files,html:c}}function fM(e){if(!V(e)||Array.isArray(e))return JSON.stringify(e);if("default"in e)return JSON.stringify(e.default);if(Is(e))return;if(e.$prototype==="LocalStorage"||e.$prototype==="SessionStorage")return JSON.stringify(e.default??null);if(e.$prototype==="Request")return"null";if(os(e))return"null";return JSON.stringify(e)}function dM(e){let t=new Set,r=new Set,n=(i)=>{if(i.startsWith("#/state/"))t.add(i.slice(8).split("/")[0])},s=(i)=>{if(O(i)){for(let a of i.matchAll(/\bstate\.([A-Za-z_$][\w$]*)\s*\(/g))t.add(a[1]);return}if(!V(i)||r.has(i))return;if(r.add(i),Array.isArray(i)){for(let a of i)s(a);return}let o=i;if(o.operator==="call"&&He(o.target))n(o.target.$ref);for(let[a,l]of Object.entries(o)){if(a.startsWith("on")&&a!=="observedAttributes"&&He(l))n(l.$ref);s(l)}};return s(e.children),s(e.state),t}function Nl(e,t,r,n,s=null,i="/_jx/server"){let o=["// Generated by @jxsuite/compiler — do not edit manually"];if(e.$id)o.push(`// Source: ${e.$id}`);for(let R of r)o.push(`import '${R}';`);let a=new Map,l=new Map,c=e.state??{},u=dM(e);for(let[R,_]of Object.entries(c))if(Mr(_)&&_.$src){let I=_.$src;if(_.$lazy===!0){if(!u.has(R)&&!X$.has(R))throw Error(`"${R}" declares "$lazy": true but is used as a computed value, not called. A lazily loaded function resolves to a promise; a computed must resolve now. Remove "$lazy", or call ${R}() from a handler instead of binding its value.`);let J=l.get(I);if(!J)J=[],l.set(I,J);J.push({binding:R,exportName:dm(R,_)});continue}let L=a.get(I);if(!L)L=[],a.set(I,L);L.push(ju(R,_))}for(let[R,_]of a){let I=n?n(R):R;o.push(`import { ${_.join(", ")} } from '${I}';`)}let p=Object.entries(c).flatMap(([R,_])=>vn(_)&&_.$prototype==="Request"?[[R,_]]:[]),h=Object.entries(c).flatMap(([R,_])=>os(_)?[[R,_]]:[]);if(o.push("import { reactive, computed, effect, stop } from '@vue/reactivity';","import { render, html, nothing } from 'lit-html';",Ru()),h.length>0)o.push(Ou());let m=s===null&&Gs(e.children);if(m)o.push(U0());let b=0;for(let[R,_]of l){let I=n?n(R):R,L=`_jxLazy${b}`;b+=1,o.push(`let ${L};`,`const ${L}Load = () => (${L} ??= import('${I}'));`,..._.map(({binding:J,exportName:F})=>`const ${J} = (...args) => ${L}Load().then((m) => m.${F}(...args));`))}o.push("",`class ${t} extends HTMLElement {`," #effects = [];",...s===null?[]:[" #root = null;"],""," constructor() {"," super();");let g=[],y=[],w=[],j=[],S=[];for(let[R,_]of Object.entries(c))if(Dr(_))if(Ai(_))j.push([R,_]);else if(Ss(_.$expression.operator))w.push([R,_]);else y.push([R,_]);else if(Mr(_))if(_.$src&&!O(_.body))if(u.has(R)||X$.has(R))w.push([R,_]);else y.push([R,_]);else if(O(_.body)&&Ri(_.body))y.push([R,_]);else w.push([R,_]);else if(O(_)&&_.includes("${"))S.push([R,_]);else{let I=fM(_);if(I!==void 0)g.push([R,I])}o.push(" this.state = reactive({");for(let[R,_]of g)o.push(` ${vs(R)}: ${_},`);o.push(" });");for(let[R,_]of w)if(o.push(""),Dr(_)){let I=dr(_.$expression,{eventParam:"e",statePrefix:"s"});o.push(` ${Me("this.state",Lt(R))} = (s, e) => { ${I}; };`)}else if(Ts(_)){let I=Zr(_.body,{dispatchTarget:"this",eventParam:"e",indent:" ",statePrefix:"this.state"});o.push(` ${Me("this.state",Lt(R))} = (s, e) => {`,I," };")}else{let I=_.parameters?as(_.parameters):_.arguments??["state"],L=I.join(", "),J=O(_.body)?_.body:"";if(I[0]==="state")if(_.$src)o.push(` ${Me("this.state",Lt(R))} = (${L}) => ${R}(${L});`);else o.push(` ${Me("this.state",Lt(R))} = (${L}) => {`,` ${J}`," };");else{let F=I.map((K)=>K==="state"?"state":"e").join(", ");if(_.$src)o.push(` ${Me("this.state",Lt(R))} = (state, e) => ${R}(${F});`);else o.push(` ${Me("this.state",Lt(R))} = (state, e) => {`,` const _fn = (${L}) => {`,` ${J}`," };",` return _fn(${F});`," };")}}for(let[R,_]of j){o.push("");let I=dr(_.$expression,{eventParam:"e",statePrefix:"this.state"});o.push(` ${Me("this.state",Lt(R))} = ${_l(_,I)};`)}for(let[R,_]of S)o.push("",` ${Me("this.state",Lt(R))} = computed(() => ${Au(_.replaceAll("state.","this.state."))});`);for(let[R,_]of y)if(o.push(""),Dr(_)){let I=dr(_.$expression,{eventParam:"e",statePrefix:"this.state"});o.push(` ${Me("this.state",Lt(R))} = computed(() => ${I});`)}else if(_.$src)o.push(` ${Me("this.state",Lt(R))} = computed(() => ${R}(this.state));`);else{o.push(` ${Me("this.state",Lt(R))} = computed(() => {`);let I=(O(_.body)?_.body:"").replaceAll("state.","this.state.");o.push(` ${I}`," });")}o.push(" }","");let E=[];if(Array.isArray(e.children)){let R={n:0};for(let _ of e.children)Ks(_,E,e.$media??{},"",R,e.tagName)}let k=ew(),A=!Array.isArray(e.children)&&e.textContent!==void 0?` ${Bu(e.textContent)}`:Wu(e.children,e.style," ",!1,!1,k);o.push(" template() {"," const s = this.state;",...k.decls," return html`",A," `;"," }","",...s===null?[]:[" #renderRoot() {"," if (this.#root) return this.#root;",s==="closed"?" this.#root = this.attachInternals().shadowRoot ?? this.attachShadow({ mode: 'closed' });":" this.#root = this.shadowRoot ?? this.attachShadow({ mode: 'open' });"," return this.#root;"," }",""]," connectedCallback() {"," const _pa = this.getAttribute('data-jx-props');"," if (_pa) {"," try {"," const _p = JSON.parse(_pa);"," for (const [k, v] of Object.entries(_p)) {"," if (k.startsWith('#')) continue;"," if (k in this.state) this.state[k] = v;"," }"," } catch {}"," this.removeAttribute('data-jx-props');"," }"," const _pn = this.getAttributeNames().filter(n => n.startsWith('props.') && n.length > 6);"," for (const _n of _pn) {"," const _k = _n.slice(6);"," if (_k.startsWith('#')) { this.removeAttribute(_n); continue; }"," if (_k in this.state) {"," this.state[_k] = this.getAttribute(_n);"," this.removeAttribute(_n);"," }"," }"," for (const key of Object.keys(this.state)) {"," if (key.startsWith('#')) continue;"," if (this.hasOwnProperty(key) && this[key] !== undefined) {"," this.state[key] = this[key];"," }"," }");for(let[R,_]of p)o.push(Pu(R,_,{collect:"this.#effects",indent:" ",statePrefix:"this.state"}));for(let[R,_]of h)o.push(ku(R,_,{collect:"this.#effects",indent:" ",serverBaseUrl:i,statePrefix:"this.state"}));if(V(e.style)){let R=[];for(let[_,I]of Object.entries(e.style)){if(_.startsWith(":")||_.startsWith(".")||_.startsWith("&")||_.startsWith("[")||_.startsWith("@"))continue;if(O(I)&&I.includes("${"))R.push([jr(_),I])}if(R.length>0){o.push(" this.#effects.push(effect(() => {");for(let[_,I]of R){let L=I.replaceAll(/\$\{([^}]+)\}/g,(J,F)=>`\${${F.replaceAll("state.","this.state.")}}`);o.push(` this.style['${_}'] = \`${L}\`;`)}o.push(" }));")}}if(m)o.push(` const _slotted = ${mm}(this);`);if(o.push(" if (this.hasAttribute('data-jx-prerendered')) {"," this.removeAttribute('data-jx-prerendered');"," }"),s===null)o.push(" this.replaceChildren();"," this.#effects.push(effect(() => render(this.template(), this)));");else o.push(" const _root = this.#renderRoot();"," for (const _n of [..._root.childNodes]) {"," if (!(_n.nodeType === 1 && _n.tagName === 'LINK')) _n.remove();"," }"," this.#effects.push(effect(() => render(this.template(), _root)));");if(m)o.push(` ${hm}(this, _slotted);`);return o.push(" if (typeof this.state.onMount === 'function') {"," queueMicrotask(() => this.state.onMount(this.state));"," }"," }",""," disconnectedCallback() {"," for (const _e of this.#effects) { stop(_e); }"," this.#effects.length = 0;"," if (typeof this.state.onUnmount === 'function') { this.state.onUnmount(this.state); }"," }","}","",`customElements.define('${e.tagName}', ${t});`,""),o.join(`
|
|
167
|
+
`)}function ew(){return{byText:new Map,decls:[]}}function tw(e,t){let r=e.byText.get(t);if(r)return r;let n=`_c${e.decls.length}`;e.decls.push(` const ${n} = html\`
|
|
168
168
|
${t}
|
|
169
|
-
\`;`);let s=`\${${n}}`;return e.byText.set(t,s),s}function
|
|
170
|
-
`)}function
|
|
169
|
+
\`;`);let s=`\${${n}}`;return e.byText.set(t,s),s}function Wu(e,t,r,n=!1,s=!1,i=null,o=!1){if(!e)return"";let a=o?na:"";if(dt(e))return`${Q$(e,r)}${a}`;if(!Array.isArray(e))return"";return e.map((l)=>{if(dt(l))return`${Q$(l,r)}${a}`;let c=Mm(l,n?"":r,n,s,i);return O(l)&&l.includes("${")||V(l)&&Sn(l.tagName)?`${c}${a}`:c}).join(n?"":`
|
|
170
|
+
`)}function Mm(e,t,r=!1,n=!1,s=null,i=null){if(O(e)){if(e.includes("${"))return`${t}${Bu(e)}`;return`${t}${_e(e)}`}if(Ct(e)||Qt(e))return`${t}${_e(String(e))}`;if(!V(e))return"";if(Sn(e.tagName)){let g=e.tagName.$expression,y=Es(g.target,{eventParam:"e",statePrefix:"s"}),w=g.operator==="?:"?[[!0,g.value],[!1,g.initial]]:[...Object.entries(g.cases),["__default__",g.default]],j=w.map(([,_])=>_),S=j.map((_)=>r||Ys.has(_)),E=null;if(s&&S.every((_)=>_===S[0])){let _=Z$(e,`${t} `,S[0]===!0,n,s,j.some((I)=>I.includes("-")));if(_.trim()!=="")E=tw(s,_)}let k=w.map(([_,I])=>{let L={...e,tagName:I};return[_,Mm(L,`${t} `,r,n,s,E)]});if(g.operator==="?:"){let[,_]=k[0],[,I]=k[1];return`${t}\${${y}
|
|
171
171
|
? html\`
|
|
172
172
|
${_}
|
|
173
173
|
\`
|
|
@@ -180,25 +180,25 @@ ${A.join(`,
|
|
|
180
180
|
`)}
|
|
181
181
|
}[String(${y})] ?? html\`
|
|
182
182
|
${R}
|
|
183
|
-
\`}`}let o=e.tagName??"div",a=r||
|
|
183
|
+
\`}`}let o=e.tagName??"div",a=r||Ys.has(o),l=[];if(e.attributes)for(let[g,y]of Object.entries(e.attributes))if(He(y))l.push(`${g}="\${${ra}('${g}', ${Rn(y.$ref)}) ?? nothing}"`);else if(O(y)&&pM(y))l.push(`${g}="\${${ra}('${g}', ${Br(y).slice(2,-1)}) ?? nothing}"`);else if(O(y)&&y.includes("${"))l.push(`${g}="${Br(y)}"`);else if(Qt(y)){let w=Qi(g,y);if(w!==null)l.push(w===""?g:`${g}="${w}"`)}else l.push(`${g}="${y}"`);if(e.id)l.push(`id="${Br(String(e.id))}"`);if(e.className)l.push(`class="${Br(String(e.className))}"`);for(let[g,y]of Object.entries(e)){if(js.has(g)||g.startsWith("$")||g.startsWith("on")||g==="tagName"||g==="id"||g==="className"||g==="style"||g==="children"||g==="textContent"||g==="innerHTML"||g==="attributes")continue;if(Vu(y))l.push(`.${g}="\${${Rn(y.$ref)}}"`);else if(O(y)&&y.includes("${"))l.push(`.${g}="${Br(y)}"`);else l.push(`.${g}="\${${JSON.stringify(y)}}"`)}if(e.$props)for(let[g,y]of Object.entries(e.$props))if(Vu(y))l.push(`.${g}="\${${Rn(y.$ref)}}"`);else if(O(y)&&y.includes("${"))l.push(`.${g}="${Br(y)}"`);else l.push(`.${g}="\${${JSON.stringify(y)}}"`);let c=n?"s.$map = $map; ":"";for(let[g,y]of Object.entries(e)){if(!g.startsWith("on")||g==="observedAttributes")continue;let w=g.slice(2).toLowerCase();if(Vu(y))l.push(c?`@${w}="\${(e) => { ${c}${Rn(y.$ref)}(s, e); }}"`:`@${w}="\${(e) => ${Rn(y.$ref)}(s, e)}"`);else if(V(y)&&"$expression"in y){let j=dr(y.$expression,{eventParam:"e",statePrefix:"s"});l.push(`@${w}="\${(e) => { ${c}${j}; }}"`)}else if(Mr(y))l.push(`@${w}="\${(e) => { ${c}${mM(y)} }}"`)}let u=nw(e.style);if(u)l.push(`style="${u}"`);let p=l.length>0?`
|
|
184
184
|
${t} ${l.join(`
|
|
185
185
|
${t} `)}`:"";if(new Set(["input","br","hr","img","meta","link"]).has(o))return`${t}<${o}${p}
|
|
186
|
-
${t}>`;let m=i??
|
|
187
|
-
${t}>${m}${b}</${o}>`}function
|
|
188
|
-
${l.map(([h,m])=>{let b=s&&u.has(m)?
|
|
186
|
+
${t}>`;let m=i??Z$(e,t,a,n,s,o.includes("-")),b=o==="slot"?na:"";return a?`${b}<${o}${p}>${m}${b}</${o}>`:`${t}${b}<${o}${p}
|
|
187
|
+
${t}>${m}${b}</${o}>`}function Z$(e,t,r,n,s,i=!1){if(e.$switch){let o=He(e.$switch)?e.$switch.$ref:e.$switch,a=Rn(o),l=[];for(let[h,m]of Object.entries(e.cases??{})){if(!m||He(m))continue;l.push([h,Mm(m,`${t} `,!1,n,s)])}let c=l.map(([,h])=>h),u=new Set(c.filter((h,m)=>c.indexOf(h)!==m&&h.trim()!==""));return`\${{
|
|
188
|
+
${l.map(([h,m])=>{let b=s&&u.has(m)?tw(s,m):m;return` ${JSON.stringify(h)}: html\`
|
|
189
189
|
${b}
|
|
190
190
|
\``}).join(`,
|
|
191
191
|
`)}
|
|
192
|
-
}[${a}]}`}if(e.textContent!==void 0){let o=
|
|
193
|
-
${
|
|
194
|
-
${t}`;return""}function
|
|
192
|
+
}[${a}]}`}if(e.textContent!==void 0){let o=Bu(e.textContent),a=He(e.textContent)||O(e.textContent)&&e.textContent.includes("${");return i&&a?`${o}${na}`:o}if(e.innerHTML!==void 0)return e.innerHTML;if(e.children)return r?Wu(e.children,e.style,"",!0,n,s,i):`
|
|
193
|
+
${Wu(e.children,e.style,`${t} `,!1,n,s,i)}
|
|
194
|
+
${t}`;return""}function Q$(e,t){let r=He(e.items)?Rn(e.items.$ref):"ITEMS",n=e.map;if(!n)return"";let s=n.tagName??"div",i=[];if(n.attributes)for(let[m,b]of Object.entries(n.attributes))if(He(b))i.push(`${m}="\${${Jm(b.$ref)}}"`);else if(O(b)&&b.includes("${"))i.push(`${m}="${Br(b)}"`);else i.push(`${m}="${b}"`);if(n.id)i.push(`id="${Br(String(n.id))}"`);if(n.className)i.push(`class="${Br(String(n.className))}"`);for(let[m,b]of Object.entries(n)){if(js.has(m)||m.startsWith("$")||m.startsWith("on")||m==="tagName"||m==="id"||m==="className"||m==="style"||m==="children"||m==="textContent"||m==="innerHTML"||m==="attributes")continue;if(Vu(b))i.push(`.${m}="\${${Jm(b.$ref)}}"`);else if(O(b)&&b.includes("${"))i.push(`.${m}="${Br(b)}"`);else i.push(`.${m}="\${${JSON.stringify(b)}}"`)}if(n.$props)for(let[m,b]of Object.entries(n.$props))if(He(b))i.push(`.${m}="\${${Jm(b.$ref)}}"`);else if(O(b)&&b.includes("${"))i.push(`.${m}="${Br(b)}"`);else i.push(`.${m}="\${${JSON.stringify(b)}}"`);let o=nw(n.style);if(o)i.push(`style="${o}"`);for(let[m,b]of Object.entries(n)){if(!m.startsWith("on"))continue;let g=m.slice(2).toLowerCase();if(He(b))i.push(`@${g}="\${(e) => { s.$map = $map; ${Rn(b.$ref)}(s, e); }}"`);else if(Dr(b)){let y=dr(b.$expression,{eventParam:"e",statePrefix:"s"});i.push(`@${g}="\${(e) => { s.$map = $map; ${y}; }}"`)}}let a=i.length>0?`
|
|
195
195
|
${t} ${i.join(`
|
|
196
|
-
${t} `)}`:"",l=
|
|
197
|
-
${
|
|
196
|
+
${t} `)}`:"",l=ew(),c="";if(n.textContent!==void 0)c=Bu(n.textContent);else if(n.children)c=`
|
|
197
|
+
${Wu(n.children,null,`${t} `,!1,!0,l)}
|
|
198
198
|
${t} `;let u=`html\`
|
|
199
199
|
${t} <${s}${a}
|
|
200
200
|
${t} >${c}</${s}>
|
|
201
|
-
${t}\``,p=(u.includes("$map")?"const $map = { item, index }; ":"")+l.decls.map((m)=>`${m.trim()} `).join(""),h=p?`(item, index) => { ${p}return ${u}; }`:`(item, index) => ${u}`;return`${t}\${${r}.map(${h})}`}function
|
|
201
|
+
${t}\``,p=(u.includes("$map")?"const $map = { item, index }; ":"")+l.decls.map((m)=>`${m.trim()} `).join(""),h=p?`(item, index) => { ${p}return ${u}; }`:`(item, index) => ${u}`;return`${t}\${${r}.map(${h})}`}function Vu(e){return He(e)&&e.$ref!==""}function Rn(e){if(e.startsWith("#/state/"))return Me("s",e.slice(8));if(e.startsWith("$map/"))return rw(e.slice(5));if(e.startsWith("parent#/"))return Me("s",e.slice(8));if(e.startsWith("window#/"))return Me("window",e.slice(8));if(e.startsWith("document#/"))return Me("document",e.slice(10));return Me("s",e)}function rw(e){let[t,...r]=ws(e);return Me(t??"",r.map((n)=>Lt(n)).join("/"))}function Jm(e){if(e.startsWith("$map/"))return rw(e.slice(5));return Rn(e)}function Br(e){return e.replaceAll("state.","s.")}function pM(e){return e.startsWith("${")&&e.endsWith("}")&&!e.slice(2).includes("${")}function Bu(e){if(He(e))return`\${${Rn(e.$ref)}}`;if(O(e)&&e.includes("${"))return Br(e);return String(e)}function mM(e){if(Ts(e))return Zr(e.body,{dispatchTarget:"e.currentTarget",eventParam:"e",statePrefix:"s"});let t=O(e.body)?e.body:"",r=e.parameters?as(e.parameters):e.arguments??[];if(r.length>0){let n=r.map((s)=>s==="state"?"s":"e").join(", ");return`((${r.join(", ")}) => { ${t} })(${n});`}return t.replaceAll(/(?<!this\.)state\./g,"s.").replaceAll(/(?<!this\.)state(?!\.)/g,"s")}function nw(e){if(!V(e))return"";let t=[];for(let[r,n]of Object.entries(e)){if(r.startsWith(":")||r.startsWith(".")||r.startsWith("&")||r.startsWith("[")||r.startsWith("@"))continue;if(O(n)&&n.includes("${")){let s=jr(r);t.push(`${s}: ${Br(n)}`)}}return t.join("; ")}var X$;var Cl=D(()=>{Ko();An();be();qi();Bo();X$=new Set(["onMount","onUnmount","onAdopted"])});function sw(e,t){let{title:r="Jx App",reactivitySrc:n,litHtmlSrc:s}=t,i=ea(e,null,e.state??{},e.$media??{}),o=sa(e,e.$media??{},t.projectStyle??null),a=[],l=iw(e,!1,i,a),c=[],u="",p="";if(a.length>0){for(let b of a){let g=Nl(b.def,b.className,[],t.rewriteSrc);c.push({content:g,path:`_islands/${b.tagName}.js`,tagName:b.tagName})}u=`<script type="importmap">
|
|
202
202
|
{
|
|
203
203
|
"imports": {
|
|
204
204
|
"@vue/reactivity": "${n}",
|
|
@@ -206,7 +206,7 @@ ${t}\``,p=(u.includes("$map")?"const $map = { item, index }; ":"")+l.decls.map((
|
|
|
206
206
|
}
|
|
207
207
|
}
|
|
208
208
|
</script>`,p=c.map((b)=>`<script type="module" src="./${b.path}"></script>`).join(`
|
|
209
|
-
`)}let h=t.prePaintScheme!==!1&&Object.values(e.$media??{}).some((b)=>
|
|
209
|
+
`)}let h=t.prePaintScheme!==!1&&Object.values(e.$media??{}).some((b)=>bn(String(b))!==null)?`<script>${ta()}</script>
|
|
210
210
|
`:"",m=`<!DOCTYPE html>
|
|
211
211
|
<html lang="en">
|
|
212
212
|
<head>
|
|
@@ -220,9 +220,9 @@ ${t}\``,p=(u.includes("$map")?"const $map = { item, index }; ":"")+l.decls.map((
|
|
|
220
220
|
${l}
|
|
221
221
|
${p}
|
|
222
222
|
</body>
|
|
223
|
-
</html>`;return{files:c,html:m}}function
|
|
223
|
+
</html>`;return{files:c,html:m}}function iw(e,t,r,n){if(O(e))return _e(e);if(Ct(e)||Qt(e))return _e(String(e));if(!V(e))return"";let s=ea(e,r.scope,e.state??r.scopeDefs,e.$media??r.media);if(t){let c=n.length,u=`jx-island-${c}`,p=`JxIsland${c}`,h={...e,tagName:u};return n.push({className:p,def:h,tagName:u}),`<${u}></${u}>`}let i=bm(e.tagName,s.scope),o=to(e,s.scope);if(ym.has(i))return`<${i}${o}>`;let a=r.preformatted===!0||Ys.has(i),l=hM(e,{...s,preformatted:a},n);return`<${i}${o}>${l}</${i}>`}function hM(e,t,r){if(e.textContent!==void 0){let n=Ze(e.textContent,t.scope);return n==null?"":_e(String(n))}if(e.innerHTML){let n=Ze(e.innerHTML,t.scope);return n==null?e.innerHTML:String(n)}if(Array.isArray(e.children))return e.children.map((n)=>iw(n,F0(n),t,r)).join(Al(t.preformatted));return""}var ow=D(()=>{An();Cl();be()});function qm(e,t){let{title:r="Jx App",reactivitySrc:n=Zo,litHtmlSrc:s=Qo,modulePath:i="app.js",serverBaseUrl:o="/_jx/server"}=t,a=ea(e,null,e.state??{},e.$media??{}),l=sa(e,e.$media??{},t.projectStyle??null),c={h:0,l:0,m:0,needsLit:!1,s:0,sw:0,t:0},u=new Map,p=new Map,h=[],m=[],b=[],g=[],y=[],w=[],j=new Map,S=e.state??{};for(let[I,L]of Object.entries(S)){if(!V(L)||Array.isArray(L)){if(ye(L))m.push([I,`() => ${Au(L)}`]);else h.push([I,L]);continue}if(Dr(L)){let J=L.$expression,F=dr(J,{eventParam:"e",statePrefix:"state"});if(Ai(L))y.push(`state[${JSON.stringify(I)}] = ${_l(L,F)};`);else if(Ss(J.operator))g.push([I,{args:["state","e"],body:F}]);else m.push([I,`() => ${F}`]);continue}if(Mr(L)){let J=L.parameters?as(L.parameters):L.arguments,{body:F}=L;if(Array.isArray(F)){let K=Zr(F,{eventParam:"e",statePrefix:"state"});if(L.parameters&&L.parameters.length>0)y.push(`state[${JSON.stringify(I)}] = ${_l(L,`(() => {
|
|
224
224
|
${K}
|
|
225
|
-
})()`)};`);else g.push([I,{args:["state","e"],body:K}])}else if(L.$src){let K=
|
|
225
|
+
})()`)};`);else g.push([I,{args:["state","e"],body:K}])}else if(L.$src){let K=j.get(L.$src);if(!K)K=new Set,j.set(L.$src,K);K.add(ju(I,L)),m.push([I,`() => { return ${I}(state); }`])}else if(O(F)&&Ri(F))m.push([I,`() => { ${F} }`]);else g.push([I,{args:J??["state"],body:F}]);continue}if(Is(L))continue;if(Oy(L)){h.push([I,L.default]);continue}if(vn(L)){if(L.$prototype==="LocalStorage"||L.$prototype==="SessionStorage"){let J=L.$prototype==="LocalStorage"?"localStorage":"sessionStorage",F=L.key??I,K=L.default??null;h.push([I,null]),y.push(yM(I,J,F,K));continue}if(L.$prototype==="Request"){h.push([I,null]),y.push(Pu(I,L));continue}if(L.$prototype==="Cookie"){h.push([I,null]),y.push(bM(I,L.name??I,L.default??null));continue}}if(os(L)){h.push([I,null]),w.push(ku(I,L,{serverBaseUrl:o}));continue}h.push([I,L])}let E=aw(e,a,u,p,c);for(let[I,L]of u)if(!b.some(([J])=>J===I))b.push([I,L]);for(let[I,L]of p)if(!g.some(([J])=>J===I))g.push([I,L]);let k=gM(h,m,b,g,y,w,j,c,n,t.rewriteSrc),A=[` "@vue/reactivity": "${n}"`,` "lit-html": "${s}"`],R=t.prePaintScheme!==!1&&Object.values(e.$media??{}).some((I)=>bn(String(I))!==null)?`<script>${ta()}</script>
|
|
226
226
|
`:"",_=`<!DOCTYPE html>
|
|
227
227
|
<html lang="en">
|
|
228
228
|
<head>
|
|
@@ -243,17 +243,17 @@ ${A.join(`,
|
|
|
243
243
|
<body>
|
|
244
244
|
${E}
|
|
245
245
|
</body>
|
|
246
|
-
</html>`;return{files:[{content:k,path:i}],html:_}}function
|
|
246
|
+
</html>`;return{files:[{content:k,path:i}],html:_}}function aw(e,t,r,n,s){if(O(e))return _e(e);if(Ct(e)||Qt(e))return _e(String(e));if(!V(e))return"";let i=ea(e,t.scope,e.state??t.scopeDefs,e.$media??t.media);if(Sn(e.tagName))throw Error(`A tag chosen at creation is not supported on a dynamic page yet (candidates: ${xo(e.tagName).join(", ")}). Move the element into a component, or give it a literal tagName.`);let o=e.tagName??"div";i.preformatted=t.preformatted===!0||Ys.has(o);let a=[],l=!1;if(e.textContent!==void 0){let g=e.textContent;if(Pr(g)){let y=oa(g.$ref);a.push(`:text-content="${y}"`),Dm(r,y,g.$ref),l=!0}else if(ye(g)){let y=`_t${s.t}`;s.t+=1,a.push(`:text-content="${y}"`),r.set(y,`() => \`${g}\``),l=!0}}for(let[g,y]of Object.entries(e)){if(!g.startsWith("on")||g==="observedAttributes")continue;let w=g.slice(2).toLowerCase();if(Pr(y)){let j=oa(y.$ref);a.push(`@${w}="${j}"`),l=!0}else if(Mr(y)){let j=`_h${s.h}`;s.h+=1,a.push(`@${w}="${j}"`);let{body:S}=y;n.set(j,Array.isArray(S)?{args:["state","e"],body:Zr(S,{eventParam:"e",statePrefix:"state"})}:{args:y.parameters?as(y.parameters):y.arguments??["state","event"],body:S}),l=!0}else if(Dr(y)){let j=`_h${s.h}`;s.h+=1,a.push(`@${w}="${j}"`);let S=dr(y.$expression,{eventParam:"e",statePrefix:"state"});n.set(j,{args:["state","e"],body:S}),l=!0}}if(V(e.style))for(let[g,y]of Object.entries(e.style)){if(g.startsWith(":")||g.startsWith(".")||g.startsWith("&")||g.startsWith("[")||g.startsWith("@"))continue;if(cw(y))continue;if(ye(y)){let w=`_s${s.s}`;s.s+=1,a.push(`:style.${jr(g)}="${w}"`),r.set(w,`() => \`${y}\``),l=!0}}if(V(e.attributes)){for(let[g,y]of Object.entries(e.attributes))if(Pr(y)){let w=oa(y.$ref);a.push(`:attr.${g}="${w}"`),Dm(r,w,y.$ref),l=!0}else if(ye(y)){let w=`_t${s.t}`;s.t+=1,a.push(`:attr.${g}="${w}"`),r.set(w,`() => \`${y}\``),l=!0}}for(let[g,y]of Object.entries(e)){if(js.has(g)||g.startsWith("on")||g.startsWith("$")||g==="tagName"||g==="id"||g==="className"||g==="style"||g==="children"||g==="textContent"||g==="innerHTML"||g==="attributes")continue;if(Pr(y)){let w=oa(y.$ref);a.push(`:${jr(g)}="${w}"`),Dm(r,w,y.$ref),l=!0}else if(ye(y)){let w=`_t${s.t}`;s.t+=1,a.push(`:${jr(g)}="${w}"`),r.set(w,`() => \`${y}\``),l=!0}}let c=to(e,i.scope),u=l?" data-bind":"",p=a.length>0?` ${a.join(" ")}`:"",h="",m=e;if(m.$switch){s.needsLit=!0;let g=`_sw${s.sw}`;s.sw+=1;let y=Pr(m.$switch)?Fm(m.$switch.$ref):`\`${String(m.$switch)}\``,w=m.cases??{},j=Object.entries(w).filter(([,E])=>E&&!Pr(E)).map(([E,k])=>`${JSON.stringify(E)}: html\`${Lm(k,i.preformatted)}\``);r.set(g,`() => ({${j.join(", ")}})[String(${y})] ?? html\`\``),a.push(`:render="${g}"`);let S=` ${a.join(" ")}`;return`<${o}${c} data-bind${S}></${o}>`}if(m.textContent!==void 0&&!l){let g=Ze(m.textContent,i.scope);h=g==null?"":_e(String(g))}else if(m.textContent!==void 0&&l){let g=Ze(m.textContent,i.scope);h=g==null?"":_e(String(g))}else if(m.innerHTML){let g=Ze(m.innerHTML,i.scope);h=g==null?m.innerHTML:String(g)}else if(dt(m.children)){s.needsLit=!0;let g=`_list${s.l}`;s.l+=1;let y=m.children,w=Pr(y.items)?Fm(y.items.$ref):JSON.stringify(y.items),j=Vm(y.map);r.set(g,`() => (${w} ?? []).map((item, index) => html\`${j}\`)`),a.push(`:render="${g}"`),l=!0;let S=" data-bind",E=` ${a.join(" ")}`;if(new Set(["input","br","hr","img","meta","link"]).has(o))return`<${o}${c}${S}${E}>`;return`<${o}${c}${S}${E}></${o}>`}else if(Array.isArray(m.children)&&m.children.some((g)=>dt(g))){s.needsLit=!0;let g=`_children${s.l}`;s.l+=1;let y=m.children.map((j)=>Lm(j,i.preformatted)).join(Al(i.preformatted," "));r.set(g,i.preformatted?`() => html\`${y}\``:`() => html\`
|
|
247
247
|
${y}
|
|
248
|
-
\``),a.push(`:render="${g}"`),l=!0;let w=` ${a.join(" ")}`;return`<${o}${c} data-bind${w}></${o}>`}else if(Array.isArray(m.children))h=m.children.map((g)=>
|
|
249
|
-
${
|
|
250
|
-
`;else if(Array.isArray(e.children)){let l=e.children.map((c)=>{let u=
|
|
248
|
+
\``),a.push(`:render="${g}"`),l=!0;let w=` ${a.join(" ")}`;return`<${o}${c} data-bind${w}></${o}>`}else if(Array.isArray(m.children))h=m.children.map((g)=>aw(g,i,r,n,s)).join(Al(i.preformatted));if(new Set(["input","br","hr","img","meta","link"]).has(o))return`<${o}${c}${u}${p}>`;return`<${o}${c}${u}${p}>${h}</${o}>`}function Vm(e,t=!1){if(!e)return"";if(Sn(e.tagName))throw Error(`A tag chosen at creation is not supported inside a dynamic page's repeater yet (candidates: ${xo(e.tagName).join(", ")}). Move the item into a component, or give it a literal tagName.`);let r=e.tagName??"div",n=t||Ys.has(r),s="";if(e.id)s+=` id="${e.id}"`;if(e.className)s+=` class="${Xs(e.className)}"`;if(V(e.$props))for(let[l,c]of Object.entries(e.$props))if(Pr(c))s+=` .${l}="\${${xM(c.$ref)}}"`;else if(ye(c))s+=` .${l}="${Xs(c)}"`;else s+=` .${l}="\${${JSON.stringify(c)}}"`;if(V(e.attributes))for(let[l,c]of Object.entries(e.attributes)){if(ye(c)){s+=` ${l}="${Xs(c)}"`;continue}if(Qt(c)){let u=Qi(l,c);if(u!==null)s+=u===""?` ${l}`:` ${l}="${_e(u)}"`;continue}s+=` ${l}="${_e(String(c))}"`}if(V(e.style)){let l=[];for(let[c,u]of Object.entries(e.style)){if(c.startsWith(":")||c.startsWith(".")||c.startsWith("&")||c.startsWith("[")||c.startsWith("@"))continue;if(cw(u))continue;let p=jr(c);if(ye(String(u)))l.push(`${p}: ${Xs(String(u))}`);else l.push(`${p}: ${u}`)}if(l.length>0)s+=` style="${l.join("; ")}"`}for(let[l,c]of Object.entries(e)){if(!l.startsWith("on")||l==="observedAttributes")continue;let u=l.slice(2).toLowerCase();if(Pr(c)){let p=oa(c.$ref);s+=` @${u}=\${(e) => { state.$map = { item, index }; on.${p}(e); }}`}else if(Ts(c)){let p=Zr(c.body,{eventParam:"e",statePrefix:"state"});s+=` @${u}=\${(e) => { state.$map = { item, index }; ${p} }}`}else if(Mr(c)){let p=Xs(c.body);s+=` @${u}=\${(e) => { ${p} }}`}else if(V(c)&&"$expression"in c){let p=dr(c.$expression,{eventParam:"e",statePrefix:"state"});s+=` @${u}=\${(e) => { state.$map = { item, index }; ${p}; }}`}}if(e.contentEditable)s+=` contenteditable="${e.contentEditable}"`;let i=r.includes("-")?na:"",o="";if(e.textContent!==void 0){let l=String(e.textContent);if(ye(l))o=`${Xs(l)}${i}`;else if(Pr(e.textContent))o=`\${state.${oa(e.textContent.$ref)}}${i}`;else o=_e(l)}else if(e.innerHTML)o=Xs(String(e.innerHTML));else if(dt(e.children))o=`
|
|
249
|
+
${lw(e.children)}${i}
|
|
250
|
+
`;else if(Array.isArray(e.children)){let l=e.children.map((c)=>{let u=Lm(c,n);return dt(c)||O(c)&&ye(c)?`${u}${i}`:u});o=n?l.join(""):`
|
|
251
251
|
${l.join(`
|
|
252
252
|
`)}
|
|
253
|
-
`}if(new Set(["input","br","hr","img","meta","link"]).has(r))return`<${r}${s}>`;return`<${r}${s}>${o}</${r}>`}function
|
|
254
|
-
`)}function
|
|
255
|
-
`)}function
|
|
256
|
-
`)}function
|
|
253
|
+
`}if(new Set(["input","br","hr","img","meta","link"]).has(r))return`<${r}${s}>`;return`<${r}${s}>${o}</${r}>`}function Lm(e,t=!1){if(O(e))return ye(e)?Xs(e):_e(e);if(Ct(e)||Qt(e))return _e(String(e));if(dt(e))return lw(e);return Vm(e,t)}function lw(e){let{items:t}=e,r=Pr(t)?Fm(t.$ref):JSON.stringify(t??[]),n=Vm(e.map);return`\${(${r} ?? []).map((item, index) => html\`${n}\`)}`}function Xs(e){return e.replaceAll("$map.","")}function gM(e,t,r,n,s,i,o,a,l,c){let u=[],{needsLit:p}=a,h=t.length>0;u.push("// Generated by @jxsuite/compiler — do not edit manually");let m=["reactive","effect"];if(h)m.push("computed");if(u.push(`import { ${m.join(", ")} } from '@vue/reactivity';`),p)u.push("import { html, render } from 'lit-html';");for(let[b,g]of o){let y=c?c(b):b;u.push(`import { ${[...g].join(", ")} } from '${y}';`)}if(u.push("",Ru()),i.length>0)u.push("",Ou());u.push("","const state = reactive({");for(let[b,g]of e)u.push(` ${vs(b)}: ${JSON.stringify(g)},`);if(u.push("});",""),s.length>0){for(let b of s)u.push(b);u.push("")}if(t.length>0){for(let[b,g]of t)u.push(`${Me("state",Lt(b))} = computed(${g});`);u.push("")}if(i.length>0){for(let b of i)u.push(b);u.push("")}if(r.length>0){u.push("const bind = {");for(let[b,g]of r)u.push(` ${vs(b)}: ${g},`);u.push("};")}else u.push("const bind = {};");if(u.push(""),n.length>0){u.push("const on = {");for(let[b,g]of n){let y=g.args??["state"],w=y.map((j)=>j==="state"?"state":"e").join(", ");u.push(` ${vs(b)}: (e) => { const fn = (${y.join(", ")}) => { ${g.body} }; fn(${w}); },`)}u.push("};")}else u.push("const on = {};");if(u.push("","function hydrate(root) {"," root.querySelectorAll('[data-bind]').forEach(el => {"," [...el.attributes].forEach(a => {"," if (a.name.startsWith(':')) {"," const parts = a.name.slice(1).split('.');"," const key = a.value;"),p)u.push(" if (parts[0] === 'render') {"," effect(() => { render(bind[key](), el); });"," } else if (parts[0] === 'style' && parts.length > 1) {");else u.push(" if (parts[0] === 'style' && parts.length > 1) {");return u.push(" effect(() => { el.style[parts[1]] = bind[key](); });"," } else if (parts[0] === 'attr' && parts.length > 1) {"," effect(() => {",` const _t = ${ra}(parts[1], bind[key]());`," if (_t === null) { el.removeAttribute(parts[1]); }"," else { el.setAttribute(parts[1], _t); }"," });"," } else {"," const prop = parts[0].replace(/-([a-z])/g, (_, c) => c.toUpperCase());"," effect(() => { el[prop] = bind[key](); });"," }"," } else if (a.name.startsWith('@')) {"," el.addEventListener(a.name.slice(1), on[a.value]);"," }"," });"," });","}","","hydrate(document);",""),u.join(`
|
|
254
|
+
`)}function yM(e,t,r,n){return[`// ${e}: ${t} (key: "${r}")`,"try {",` const _s = ${t}.getItem(${JSON.stringify(r)});`,` state.${e} = _s !== null ? JSON.parse(_s) : ${JSON.stringify(n)};`,`} catch { state.${e} = ${JSON.stringify(n)}; }`,"effect(() => {",` const v = state.${e};`," try {",` if (v === null) ${t}.removeItem(${JSON.stringify(r)});`,` else ${t}.setItem(${JSON.stringify(r)}, JSON.stringify(v));`," } catch {}","});"].join(`
|
|
255
|
+
`)}function bM(e,t,r){return[`// ${e}: Cookie (name: "${t}")`,"{",` const _m = document.cookie.match(new RegExp("(?:^|; )${t}=([^;]*)"));`,` try { state.${e} = _m ? JSON.parse(decodeURIComponent(_m[1])) : ${JSON.stringify(r)}; }`,` catch { state.${e} = _m ? _m[1] : ${JSON.stringify(r)}; }`,"}"].join(`
|
|
256
|
+
`)}function cw(e){return e===null||V(e)}function xM(e){if(e.startsWith("$map/")){let[t,...r]=ws(e.slice(5));return Me(t??"",r.map((n)=>Lt(n)).join("/"))}if(e.startsWith("#/state/"))return Me("state",e.slice(8));return Me("state",e)}function Fm(e){return x0("state",e.startsWith("#/state/")?e.slice(8):e)}function oa(e){return $0(e.startsWith("#/state/")?e.slice(8):e)}function Dm(e,t,r){if(e.has(t))return;e.set(t,`() => ${Me("state",r.startsWith("#/state/")?r.slice(8):r)}`)}var Wm=D(()=>{Ko();An();be();Bo()});function $M(e,t){if(t.routing==="prefix-except-default"&&e===t.defaultLocale)return"/";return`/${e.toLowerCase()}/`}function uw(e){if(e===null||e.locales.length<2)return"";let t=JSON.stringify(e.locales),r=JSON.stringify(e.defaultLocale),n=JSON.stringify(Object.fromEntries(e.locales.map((s)=>[s,$M(s,e)])));return`
|
|
257
257
|
// ─── Locale negotiation (RFC 4647 Lookup over Accept-Language) ───────────────
|
|
258
258
|
const JX_LOCALES = ${t}
|
|
259
259
|
const JX_DEFAULT_LOCALE = ${r}
|
|
@@ -322,12 +322,12 @@ app.use('/', async (c, next) => {
|
|
|
322
322
|
res.headers.set('Content-Language', locale)
|
|
323
323
|
c.res = res
|
|
324
324
|
})
|
|
325
|
-
`}function
|
|
326
|
-
`),c=
|
|
325
|
+
`}function Uu(e,t="/_jx/server"){return Xe(e,t)}function Hm(e,t={}){let{adapter:r=null,mounts:n=[],connectors:s=[],i18n:i=null,base:o=""}=t,a=Uu(o,t.baseUrl);if(e.length===0&&n.length===0&&!r)return null;let l=e.map(({exportName:m,src:b})=>`import { ${m} } from '${b}'`).join(`
|
|
326
|
+
`),c=wM(n,s),u=e.map(({exportName:m})=>vM(m,a)).join(`
|
|
327
327
|
`),p=r==="cloudflare-workers"||r==="cloudflare-pages"?`
|
|
328
328
|
app.all('*', (c) => c.env.ASSETS.fetch(c.req.raw))
|
|
329
329
|
`:`
|
|
330
|
-
`,h=
|
|
330
|
+
`,h=uw(i);return`// Generated by @jxsuite/compiler — do not edit manually
|
|
331
331
|
import { Hono } from 'hono'
|
|
332
332
|
${l}${c.imports}
|
|
333
333
|
|
|
@@ -335,11 +335,11 @@ const app = new Hono()
|
|
|
335
335
|
${h}${c.routes}${u}
|
|
336
336
|
${p}
|
|
337
337
|
export default app
|
|
338
|
-
`}function
|
|
338
|
+
`}function wM(e,t){if(e.length===0)return{imports:"",routes:""};let r=e.toSorted((i,o)=>i.order-o.order),n=[];for(let i of r)n.push(`import { ${i.className} } from '${i.module}'`);for(let i of t)n.push(`import { ${i.className} } from '${i.module}'`);let s=["// Extension server mounts (specs/extensions.md §11): one shared ctx, mounted in order.","const jxCtx = {}",`const jxConnectors = { ${t.map((i)=>`${JSON.stringify(i.provider)}: ${i.className}`).join(", ")} }`];for(let[i,o]of r.entries()){let a=JSON.stringify(o.options);s.push(`const jxMount${i} = await ${o.className}.mount({ ...${a}, connectors: jxConnectors }, jxCtx)`,`app.all('${o.basePath}/*', (c) => jxMount${i}(c.req.raw, c.env))`,`app.all('${o.basePath}', (c) => jxMount${i}(c.req.raw, c.env))`)}return{imports:`
|
|
339
339
|
${n.join(`
|
|
340
340
|
`)}`,routes:`${s.join(`
|
|
341
341
|
`)}
|
|
342
|
-
`}}function
|
|
342
|
+
`}}function vM(e,t){return`
|
|
343
343
|
app.post('${t}/${e}', async (c) => {
|
|
344
344
|
const args = await c.req.json().catch(() => ({}))
|
|
345
345
|
try {
|
|
@@ -347,9 +347,9 @@ app.post('${t}/${e}', async (c) => {
|
|
|
347
347
|
} catch (e) {
|
|
348
348
|
return c.json({ ok: false, error: e?.message ?? 'Server error' }, 500)
|
|
349
349
|
}
|
|
350
|
-
})`}var
|
|
351
|
-
`)}function
|
|
352
|
-
`):e.body??"").includes("await ")}var
|
|
350
|
+
})`}var Bm=D(()=>{Vr()});function dw(e){let t=e.title;if(!t)throw Error("compileClassJson: missing title (class name)");let r=EM(e.extends),n=e.$defs,s=n?.fields??{},i=n?.constructor,o=SM(i)?i:void 0,a=n?.methods??{},l=["// Generated by @jxsuite/compiler from .class.json — do not edit manually"];if(e.$id)l.push(`// Source: ${e.$id}`);l.push("");let c=r!=="Object"?` extends ${r}`:"";l.push(`class ${t}${c} {`);for(let[u,p]of Object.entries(s)){if(p.scope!=="static")continue;let h=p.identifier??u,m=p.access==="private"?"#":"",b=p.initializer!==void 0?JSON.stringify(p.initializer):p.default!==void 0?JSON.stringify(p.default):"null";l.push(` static ${m}${h} = ${b};`)}for(let[u,p]of Object.entries(s)){if(p.scope==="static")continue;if(p.access!=="private")continue;let h=p.identifier??u;l.push(` #${h};`)}if(Object.keys(s).length>0)l.push("");if(l.push(" constructor(config = {}) {"),o?.superCall||r!=="Object"){let u=o?.superCall?.arguments?o.superCall.arguments.join(", "):"";l.push(` super(${u});`)}for(let[u,p]of Object.entries(s)){if(p.scope==="static")continue;let h=p.identifier??u,m=p.access==="private"?"#":"",b=p.initializer!==void 0?JSON.stringify(p.initializer):p.default!==void 0?JSON.stringify(p.default):"null";l.push(` this.${m}${h} = config.${h} !== undefined ? config.${h} : ${b};`)}if(o?.body){let u=Array.isArray(o.body)?o.body:[o.body];for(let p of u)l.push(` ${p}`)}l.push(" }");for(let[u,p]of Object.entries(a)){let h=p.identifier??u,m=p.scope==="static",g=p.access==="private"?"#":"",y=m?"static ":"",w=p.returnType?.$ref?.includes("Promise")||PM(p)?"async ":"",j=fw(p.parameters??[]),S=jM(p.body);if(l.push(""),p.role==="accessor"){if(p.getter)l.push(` ${y}get ${g}${h}() {`,` ${p.getter.body}`," }");if(p.setter){let E=fw(p.setter.parameters??[]);l.push(` ${y}set ${g}${h}(${E}) {`,` ${p.setter.body}`," }")}}else{l.push(` ${y}${w}${g}${h}(${j}) {`);for(let E of S)l.push(` ${E}`);l.push(" }")}}return l.push("}","",`export { ${t} };`,`export default ${t};`,""),l.join(`
|
|
351
|
+
`)}function SM(e){return typeof e==="object"}function EM(e){if(!e)return"Object";if(O(e))return e;if(e.$ref){let t=e.$ref.match(/([A-Za-z0-9_]+)\.class\.json/);return t?t[1]:"Object"}return"Object"}function fw(e){return e.map((t)=>{if(t.$ref)return t.$ref.split("/").pop();let r=t.identifier??t.name;return O(r)?r:"arg"}).join(", ")}function jM(e){if(!e)return[""];return Array.isArray(e)?e:[e]}function PM(e){return(Array.isArray(e.body)?e.body.join(`
|
|
352
|
+
`):e.body??"").includes("await ")}var pw=D(()=>{be()});import{readFileSync as kM}from"node:fs";async function Um(e,t={}){let{title:r="Jx App",reactivitySrc:n=Zo,litHtmlSrc:s=Qo,projectStyle:i=null}=t,o;if(O(e)){let l=kM(e,"utf8");if(ms(e))o=hs(l,e);else{let{extname:c}=await import("node:path"),u=c(e).toLowerCase(),p=t.formats?.byExtension(u,"parse");if(!p){await Promise.resolve().then(() => ys());throw Qc(e,u)}o=await p.parseDocument(l)}}else o=e;if(Cy(o)){await Promise.resolve().then(() => pw());let c=dw(o),u=O(e)?e.replace(/\.class\.json$/,".js"):`${o.title}.js`;return{files:[{content:c,path:u}],html:""}}if(!_u(o))return sw(o,{litHtmlSrc:s,projectStyle:i,reactivitySrc:n,...mw(t),title:r});if(o.tagName&&o.tagName.includes("-")){let{tagName:l}=o,c=Cu(l),p={content:Nl(o,c,[],t.rewriteSrc,null,t.serverBaseUrl),path:`${l}.js`,tagName:l},h=sa(o,o.$media??{},i),m=`<!DOCTYPE html>
|
|
353
353
|
<html lang="en">
|
|
354
354
|
<head>
|
|
355
355
|
<meta charset="utf-8">
|
|
@@ -369,47 +369,47 @@ app.post('${t}/${e}', async (c) => {
|
|
|
369
369
|
<${l}></${l}>
|
|
370
370
|
<script type="module" src="./${l}.js"></script>
|
|
371
371
|
</body>
|
|
372
|
-
</html>`;return{files:[p],html:m}}let a={litHtmlSrc:s,projectStyle:i,reactivitySrc:n,...
|
|
372
|
+
</html>`;return{files:[p],html:m}}let a={litHtmlSrc:s,projectStyle:i,reactivitySrc:n,...mw(t),title:r};if(t.serverBaseUrl!==void 0)a.serverBaseUrl=t.serverBaseUrl;return qm(o,a)}function mw(e){let t={};if(e.prePaintScheme===!1)t.prePaintScheme=!1;if(e.rewriteSrc)t.rewriteSrc=e.rewriteSrc;return t}async function Vte(e,t){let r=await Um(e),{writeFileSync:n,mkdirSync:s}=await import("node:fs"),{dirname:i,join:o}=await import("node:path");if(t){n(t,r.html,"utf8"),console.error(`Written to ${t}`);let a=i(t);for(let l of r.files){let c=o(a,l.path);s(i(c),{recursive:!0}),n(c,l.content,"utf8"),console.error(`Written to ${c}`)}}else process.stdout.write(r.html)}var hw=D(()=>{An();Cl();ow();Wm();be();qi();An();Bm();Cl();Wm()});var gw=(e)=>typeof e<"u"&&e!==null,_M=(e)=>typeof e==="object",AM=(e)=>Object.prototype.toString.call(e)==="[object Object]",RM=(e)=>typeof e==="function",OM=(e)=>typeof e==="boolean",NM=(e)=>e instanceof Buffer,CM=(e)=>{if(gw(e))switch(e.constructor){case Uint8Array:case Uint8ClampedArray:case Int8Array:case Uint16Array:case Int16Array:case Uint32Array:case Int32Array:case Float32Array:case Float64Array:return!0}return!1},TM=(e)=>e instanceof ArrayBuffer,IM=(e)=>typeof e==="string"&&e.length>0,JM=(e)=>typeof e==="number"&&Number.isFinite(e),MM=(e)=>Number.isInteger(e),DM=(e,t,r)=>e>=t&&e<=r,LM=(e,t)=>t.includes(e),FM=(e,t,r)=>{let n;try{n=String(r).slice(0,100)}catch{}return Error(`Expected ${t} for ${e} but received ${n} of type ${typeof r}`)},qM=(e,t)=>(t.message=e.message,t),f;var On=D(()=>{/*!
|
|
373
373
|
Copyright 2013 Lovell Fuller and others.
|
|
374
374
|
SPDX-License-Identifier: Apache-2.0
|
|
375
|
-
*/f={defined:aw,object:aM,plainObject:lM,fn:cM,bool:uM,buffer:fM,typedArray:dM,arrayBuffer:pM,string:mM,number:hM,integer:gM,inRange:yM,inArray:bM,invalidParameterError:xM,nativeError:$M}});var uw=N(function(tte,cw){var lw=()=>process.platform==="linux",Fu=null,wM=()=>{if(!Fu)if(lw()&&process.report){let e=process.report.excludeNetwork;process.report.excludeNetwork=!0,Fu=process.report.getReport(),process.report.excludeNetwork=e}else Fu={};return Fu};cw.exports={isLinux:lw,getReport:wM}});var dw=N(function(rte,fw){var Xr=He("fs"),vM=(e)=>{let t=Xr.openSync(e,"r"),r=Buffer.alloc(2048),n=Xr.readSync(t,r,0,2048,0);return Xr.close(t,()=>{}),r.subarray(0,n)},SM=(e)=>new Promise((t,r)=>{Xr.open(e,"r",(n,s)=>{if(n)r(n);else{let i=Buffer.alloc(2048);Xr.read(s,i,0,2048,0,(o,a)=>{t(i.subarray(0,a)),Xr.close(s,()=>{})})}})});fw.exports={LDD_PATH:"/usr/bin/ldd",SELF_PATH:"/proc/self/exe",readFileSync:vM,readFile:SM}});var mw=N(function(nte,pw){var EM=(e)=>{if(e.length<64)return null;if(e.readUInt32BE(0)!==2135247942)return null;if(e.readUInt8(4)!==2)return null;if(e.readUInt8(5)!==1)return null;let t=e.readUInt32LE(32),r=e.readUInt16LE(54),n=e.readUInt16LE(56);for(let s=0;s<n;s++){let i=t+s*r;if(e.readUInt32LE(i)===3){let a=e.readUInt32LE(i+8),l=e.readUInt32LE(i+32);return e.subarray(a,a+l).toString().replace(/\0.*$/g,"")}}return null};pw.exports={interpreterPath:EM}});var Wu=N(function(ste,Rw){var qu=He("child_process"),{isLinux:ra,getReport:gw}=uw(),{LDD_PATH:Vu,SELF_PATH:yw,readFile:Fm,readFileSync:qm}=dw(),{interpreterPath:bw}=mw(),Cn,Nn,Tn,Ks="",xw=()=>{if(!Ks)return new Promise((e)=>{qu.exec("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",(t,r)=>{Ks=t?" ":r,e(Ks)})});return Ks},$w=()=>{if(!Ks)try{Ks=qu.execSync("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",{encoding:"utf8"})}catch(e){Ks=" "}return Ks},Es="glibc",ww=/LIBC[a-z0-9 \-).]*?(\d+\.\d+)/i,no="musl",PM=(e)=>e.includes("libc.musl-")||e.includes("ld-musl-"),vw=()=>{let e=gw();if(e.header&&e.header.glibcVersionRuntime)return Es;if(Array.isArray(e.sharedObjects)){if(e.sharedObjects.some(PM))return no}return null},Sw=(e)=>{let[t,r]=e.split(/[\r\n]+/);if(t&&t.includes(Es))return Es;if(r&&r.includes(no))return no;return null},Ew=(e)=>{if(e){if(e.includes("/ld-musl-"))return no;else if(e.includes("/ld-linux-"))return Es}return null},Pw=(e)=>{if(e=e.toString(),e.includes("musl"))return no;if(e.includes("GNU C Library"))return Es;return null},jM=async()=>{if(Nn!==void 0)return Nn;Nn=null;try{let e=await Fm(Vu);Nn=Pw(e)}catch(e){}return Nn},kM=()=>{if(Nn!==void 0)return Nn;Nn=null;try{let e=qm(Vu);Nn=Pw(e)}catch(e){}return Nn},_M=async()=>{if(Cn!==void 0)return Cn;Cn=null;try{let e=await Fm(yw),t=bw(e);Cn=Ew(t)}catch(e){}return Cn},AM=()=>{if(Cn!==void 0)return Cn;Cn=null;try{let e=qm(yw),t=bw(e);Cn=Ew(t)}catch(e){}return Cn},jw=async()=>{let e=null;if(ra()){if(e=await _M(),!e){if(e=await jM(),!e)e=vw();if(!e){let t=await xw();e=Sw(t)}}}return e},kw=()=>{let e=null;if(ra()){if(e=AM(),!e){if(e=kM(),!e)e=vw();if(!e){let t=$w();e=Sw(t)}}}return e},RM=async()=>ra()&&await jw()!==Es,OM=()=>ra()&&kw()!==Es,CM=async()=>{if(Tn!==void 0)return Tn;Tn=null;try{let t=(await Fm(Vu)).match(ww);if(t)Tn=t[1]}catch(e){}return Tn},NM=()=>{if(Tn!==void 0)return Tn;Tn=null;try{let t=qm(Vu).match(ww);if(t)Tn=t[1]}catch(e){}return Tn},_w=()=>{let e=gw();if(e.header&&e.header.glibcVersionRuntime)return e.header.glibcVersionRuntime;return null},hw=(e)=>e.trim().split(/\s+/)[1],Aw=(e)=>{let[t,r,n]=e.split(/[\r\n]+/);if(t&&t.includes(Es))return hw(t);if(r&&n&&r.includes(no))return hw(n);return null},TM=async()=>{let e=null;if(ra()){if(e=await CM(),!e)e=_w();if(!e){let t=await xw();e=Aw(t)}}return e},IM=()=>{let e=null;if(ra()){if(e=NM(),!e)e=_w();if(!e){let t=$w();e=Aw(t)}}return e};Rw.exports={GLIBC:Es,MUSL:no,family:jw,familySync:kw,isNonGlibcLinux:RM,isNonGlibcLinuxSync:OM,version:TM,versionSync:IM}});var na=N(function(ite,Ow){var JM=Number.MAX_SAFE_INTEGER||9007199254740991,MM=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Ow.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:JM,RELEASE_TYPES:MM,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var _l=N(function(ote,Cw){var DM=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};Cw.exports=DM});var sa=N(function(In,Nw){var{MAX_SAFE_COMPONENT_LENGTH:Vm,MAX_SAFE_BUILD_LENGTH:LM,MAX_LENGTH:FM}=na(),qM=_l();In=Nw.exports={};var VM=In.re=[],WM=In.safeRe=[],te=In.src=[],HM=In.safeSrc=[],re=In.t={},BM=0,Wm="[a-zA-Z0-9-]",UM=[["\\s",1],["\\d",FM],[Wm,LM]],zM=(e)=>{for(let[t,r]of UM)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e},Se=(e,t,r)=>{let n=zM(t),s=BM++;qM(e,s,t),re[e]=s,te[s]=t,HM[s]=n,VM[s]=new RegExp(t,r?"g":void 0),WM[s]=new RegExp(n,r?"g":void 0)};Se("NUMERICIDENTIFIER","0|[1-9]\\d*");Se("NUMERICIDENTIFIERLOOSE","\\d+");Se("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Wm}*`);Se("MAINVERSION",`(${te[re.NUMERICIDENTIFIER]})\\.(${te[re.NUMERICIDENTIFIER]})\\.(${te[re.NUMERICIDENTIFIER]})`);Se("MAINVERSIONLOOSE",`(${te[re.NUMERICIDENTIFIERLOOSE]})\\.(${te[re.NUMERICIDENTIFIERLOOSE]})\\.(${te[re.NUMERICIDENTIFIERLOOSE]})`);Se("PRERELEASEIDENTIFIER",`(?:${te[re.NONNUMERICIDENTIFIER]}|${te[re.NUMERICIDENTIFIER]})`);Se("PRERELEASEIDENTIFIERLOOSE",`(?:${te[re.NONNUMERICIDENTIFIER]}|${te[re.NUMERICIDENTIFIERLOOSE]})`);Se("PRERELEASE",`(?:-(${te[re.PRERELEASEIDENTIFIER]}(?:\\.${te[re.PRERELEASEIDENTIFIER]})*))`);Se("PRERELEASELOOSE",`(?:-?(${te[re.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${te[re.PRERELEASEIDENTIFIERLOOSE]})*))`);Se("BUILDIDENTIFIER",`${Wm}+`);Se("BUILD",`(?:\\+(${te[re.BUILDIDENTIFIER]}(?:\\.${te[re.BUILDIDENTIFIER]})*))`);Se("FULLPLAIN",`v?${te[re.MAINVERSION]}${te[re.PRERELEASE]}?${te[re.BUILD]}?`);Se("FULL",`^${te[re.FULLPLAIN]}$`);Se("LOOSEPLAIN",`[v=\\s]*${te[re.MAINVERSIONLOOSE]}${te[re.PRERELEASELOOSE]}?${te[re.BUILD]}?`);Se("LOOSE",`^${te[re.LOOSEPLAIN]}$`);Se("GTLT","((?:<|>)?=?)");Se("XRANGEIDENTIFIERLOOSE",`${te[re.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);Se("XRANGEIDENTIFIER",`${te[re.NUMERICIDENTIFIER]}|x|X|\\*`);Se("XRANGEPLAIN",`[v=\\s]*(${te[re.XRANGEIDENTIFIER]})(?:\\.(${te[re.XRANGEIDENTIFIER]})(?:\\.(${te[re.XRANGEIDENTIFIER]})(?:${te[re.PRERELEASE]})?${te[re.BUILD]}?)?)?`);Se("XRANGEPLAINLOOSE",`[v=\\s]*(${te[re.XRANGEIDENTIFIERLOOSE]})(?:\\.(${te[re.XRANGEIDENTIFIERLOOSE]})(?:\\.(${te[re.XRANGEIDENTIFIERLOOSE]})(?:${te[re.PRERELEASELOOSE]})?${te[re.BUILD]}?)?)?`);Se("XRANGE",`^${te[re.GTLT]}\\s*${te[re.XRANGEPLAIN]}$`);Se("XRANGELOOSE",`^${te[re.GTLT]}\\s*${te[re.XRANGEPLAINLOOSE]}$`);Se("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Vm}})(?:\\.(\\d{1,${Vm}}))?(?:\\.(\\d{1,${Vm}}))?`);Se("COERCE",`${te[re.COERCEPLAIN]}(?:$|[^\\d])`);Se("COERCEFULL",te[re.COERCEPLAIN]+`(?:${te[re.PRERELEASE]})?(?:${te[re.BUILD]})?(?:$|[^\\d])`);Se("COERCERTL",te[re.COERCE],!0);Se("COERCERTLFULL",te[re.COERCEFULL],!0);Se("LONETILDE","(?:~>?)");Se("TILDETRIM",`(\\s*)${te[re.LONETILDE]}\\s+`,!0);In.tildeTrimReplace="$1~";Se("TILDE",`^${te[re.LONETILDE]}${te[re.XRANGEPLAIN]}$`);Se("TILDELOOSE",`^${te[re.LONETILDE]}${te[re.XRANGEPLAINLOOSE]}$`);Se("LONECARET","(?:\\^)");Se("CARETTRIM",`(\\s*)${te[re.LONECARET]}\\s+`,!0);In.caretTrimReplace="$1^";Se("CARET",`^${te[re.LONECARET]}${te[re.XRANGEPLAIN]}$`);Se("CARETLOOSE",`^${te[re.LONECARET]}${te[re.XRANGEPLAINLOOSE]}$`);Se("COMPARATORLOOSE",`^${te[re.GTLT]}\\s*(${te[re.LOOSEPLAIN]})$|^$`);Se("COMPARATOR",`^${te[re.GTLT]}\\s*(${te[re.FULLPLAIN]})$|^$`);Se("COMPARATORTRIM",`(\\s*)${te[re.GTLT]}\\s*(${te[re.LOOSEPLAIN]}|${te[re.XRANGEPLAIN]})`,!0);In.comparatorTrimReplace="$1$2$3";Se("HYPHENRANGE",`^\\s*(${te[re.XRANGEPLAIN]})\\s+-\\s+(${te[re.XRANGEPLAIN]})\\s*$`);Se("HYPHENRANGELOOSE",`^\\s*(${te[re.XRANGEPLAINLOOSE]})\\s+-\\s+(${te[re.XRANGEPLAINLOOSE]})\\s*$`);Se("STAR","(<|>)?=?\\s*\\*");Se("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");Se("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var Hu=N(function(ate,Tw){var GM=Object.freeze({loose:!0}),KM=Object.freeze({}),YM=(e)=>{if(!e)return KM;if(typeof e!=="object")return GM;return e};Tw.exports=YM});var Hm=N(function(lte,Mw){var Iw=/^[0-9]+$/,Jw=(e,t)=>{if(typeof e==="number"&&typeof t==="number")return e===t?0:e<t?-1:1;let r=Iw.test(e),n=Iw.test(t);if(r&&n)e=+e,t=+t;return e===t?0:r&&!n?-1:n&&!r?1:e<t?-1:1},XM=(e,t)=>Jw(t,e);Mw.exports={compareIdentifiers:Jw,rcompareIdentifiers:XM}});var Ht=N(function(cte,Lw){var Bu=_l(),{MAX_LENGTH:Dw,MAX_SAFE_INTEGER:Uu}=na(),{safeRe:zu,t:Gu}=sa(),ZM=Hu(),{compareIdentifiers:Bm}=Hm(),QM=(e,t)=>{let r=t.split(".");if(r.length>e.length)return!1;for(let n=0;n<r.length;n++)if(Bm(e[n],r[n])!==0)return!1;return!0};class bn{constructor(e,t){if(t=ZM(t),e instanceof bn)if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease)return e;else e=e.version;else if(typeof e!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>Dw)throw TypeError(`version is longer than ${Dw} characters`);Bu("SemVer",e,t),this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease;let r=e.trim().match(t.loose?zu[Gu.LOOSE]:zu[Gu.FULL]);if(!r)throw TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+r[1],this.minor=+r[2],this.patch=+r[3],this.major>Uu||this.major<0)throw TypeError("Invalid major version");if(this.minor>Uu||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>Uu||this.patch<0)throw TypeError("Invalid patch version");if(!r[4])this.prerelease=[];else this.prerelease=r[4].split(".").map((n)=>{if(/^[0-9]+$/.test(n)){let s=+n;if(s>=0&&s<Uu)return s}return n});this.build=r[5]?r[5].split("."):[],this.format()}format(){if(this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length)this.version+=`-${this.prerelease.join(".")}`;return this.version}toString(){return this.version}compare(e){if(Bu("SemVer.compare",this.version,this.options,e),!(e instanceof bn)){if(typeof e==="string"&&e===this.version)return 0;e=new bn(e,this.options)}if(e.version===this.version)return 0;return this.compareMain(e)||this.comparePre(e)}compareMain(e){if(!(e instanceof bn))e=new bn(e,this.options);if(this.major<e.major)return-1;if(this.major>e.major)return 1;if(this.minor<e.minor)return-1;if(this.minor>e.minor)return 1;if(this.patch<e.patch)return-1;if(this.patch>e.patch)return 1;return 0}comparePre(e){if(!(e instanceof bn))e=new bn(e,this.options);if(this.prerelease.length&&!e.prerelease.length)return-1;else if(!this.prerelease.length&&e.prerelease.length)return 1;else if(!this.prerelease.length&&!e.prerelease.length)return 0;let t=0;do{let r=this.prerelease[t],n=e.prerelease[t];if(Bu("prerelease compare",t,r,n),r===void 0&&n===void 0)return 0;else if(n===void 0)return 1;else if(r===void 0)return-1;else if(r===n)continue;else return Bm(r,n)}while(++t)}compareBuild(e){if(!(e instanceof bn))e=new bn(e,this.options);let t=0;do{let r=this.build[t],n=e.build[t];if(Bu("build compare",t,r,n),r===void 0&&n===void 0)return 0;else if(n===void 0)return 1;else if(r===void 0)return-1;else if(r===n)continue;else return Bm(r,n)}while(++t)}inc(e,t,r){if(e.startsWith("pre")){if(!t&&r===!1)throw Error("invalid increment argument: identifier is empty");if(t){let n=`-${t}`.match(this.options.loose?zu[Gu.PRERELEASELOOSE]:zu[Gu.PRERELEASE]);if(!n||n[1]!==t)throw Error(`invalid identifier: ${t}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",t,r);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",t,r);break;case"prepatch":this.prerelease.length=0,this.inc("patch",t,r),this.inc("pre",t,r);break;case"prerelease":if(this.prerelease.length===0)this.inc("patch",t,r);this.inc("pre",t,r);break;case"release":if(this.prerelease.length===0)throw Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":if(this.minor!==0||this.patch!==0||this.prerelease.length===0)this.major++;this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":if(this.patch!==0||this.prerelease.length===0)this.minor++;this.patch=0,this.prerelease=[];break;case"patch":if(this.prerelease.length===0)this.patch++;this.prerelease=[];break;case"pre":{let n=Number(r)?1:0;if(this.prerelease.length===0)this.prerelease=[n];else{let s=this.prerelease.length;while(--s>=0)if(typeof this.prerelease[s]==="number")this.prerelease[s]++,s=-2;if(s===-1){if(t===this.prerelease.join(".")&&r===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(n)}}if(t){let s=[t,n];if(r===!1)s=[t];if(QM(this.prerelease,t)){let i=this.prerelease[t.split(".").length];if(isNaN(i))this.prerelease=s}else this.prerelease=s}break}default:throw Error(`invalid increment argument: ${e}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}Lw.exports=bn});var Ys=N(function(ute,qw){var Fw=Ht(),eD=(e,t,r=!1)=>{if(e instanceof Fw)return e;try{return new Fw(e,t)}catch(n){if(!r)return null;throw n}};qw.exports=eD});var Ww=N(function(fte,Vw){var tD=Ys(),rD=(e,t)=>{let r=tD(e,t);return r?r.version:null};Vw.exports=rD});var Bw=N(function(dte,Hw){var nD=Ys(),sD=(e,t)=>{let r=nD(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null};Hw.exports=sD});var Gw=N(function(pte,zw){var Uw=Ht(),iD=(e,t,r,n,s)=>{if(typeof r==="string")s=n,n=r,r=void 0;try{return new Uw(e instanceof Uw?e.version:e,r).inc(t,n,s).version}catch(i){return null}};zw.exports=iD});var Xw=N(function(mte,Yw){var Kw=Ys(),oD=(e,t)=>{let r=Kw(e,null,!0),n=Kw(t,null,!0),s=r.compare(n);if(s===0)return null;let i=s>0,o=i?r:n,a=i?n:r,l=!!o.prerelease.length;if(!!a.prerelease.length&&!l){if(!a.patch&&!a.minor)return"major";if(a.compareMain(o)===0){if(a.minor&&!a.patch)return"minor";return"patch"}}let u=l?"pre":"";if(r.major!==n.major)return u+"major";if(r.minor!==n.minor)return u+"minor";if(r.patch!==n.patch)return u+"patch";return"prerelease"};Yw.exports=oD});var Qw=N(function(hte,Zw){var aD=Ht(),lD=(e,t)=>new aD(e,t).major;Zw.exports=lD});var tv=N(function(gte,ev){var cD=Ht(),uD=(e,t)=>new cD(e,t).minor;ev.exports=uD});var nv=N(function(yte,rv){var fD=Ht(),dD=(e,t)=>new fD(e,t).patch;rv.exports=dD});var iv=N(function(bte,sv){var pD=Ys(),mD=(e,t)=>{let r=pD(e,t);return r&&r.prerelease.length?r.prerelease:null};sv.exports=mD});var Zr=N(function(xte,av){var ov=Ht(),hD=(e,t,r)=>new ov(e,r).compare(new ov(t,r));av.exports=hD});var cv=N(function($te,lv){var gD=Zr(),yD=(e,t,r)=>gD(t,e,r);lv.exports=yD});var fv=N(function(wte,uv){var bD=Zr(),xD=(e,t)=>bD(e,t,!0);uv.exports=xD});var Ku=N(function(vte,pv){var dv=Ht(),$D=(e,t,r)=>{let n=new dv(e,r),s=new dv(t,r);return n.compare(s)||n.compareBuild(s)};pv.exports=$D});var hv=N(function(Ste,mv){var wD=Ku(),vD=(e,t)=>e.sort((r,n)=>wD(r,n,t));mv.exports=vD});var yv=N(function(Ete,gv){var SD=Ku(),ED=(e,t)=>e.sort((r,n)=>SD(n,r,t));gv.exports=ED});var Al=N(function(Pte,bv){var PD=Zr(),jD=(e,t,r)=>PD(e,t,r)>0;bv.exports=jD});var Yu=N(function(jte,xv){var kD=Zr(),_D=(e,t,r)=>kD(e,t,r)<0;xv.exports=_D});var Um=N(function(kte,$v){var AD=Zr(),RD=(e,t,r)=>AD(e,t,r)===0;$v.exports=RD});var zm=N(function(_te,wv){var OD=Zr(),CD=(e,t,r)=>OD(e,t,r)!==0;wv.exports=CD});var Xu=N(function(Ate,vv){var ND=Zr(),TD=(e,t,r)=>ND(e,t,r)>=0;vv.exports=TD});var Zu=N(function(Rte,Sv){var ID=Zr(),JD=(e,t,r)=>ID(e,t,r)<=0;Sv.exports=JD});var Gm=N(function(Ote,Ev){var MD=Um(),DD=zm(),LD=Al(),FD=Xu(),qD=Yu(),VD=Zu(),WD=(e,t,r,n)=>{switch(t){case"===":if(typeof e==="object")e=e.version;if(typeof r==="object")r=r.version;return e===r;case"!==":if(typeof e==="object")e=e.version;if(typeof r==="object")r=r.version;return e!==r;case"":case"=":case"==":return MD(e,r,n);case"!=":return DD(e,r,n);case">":return LD(e,r,n);case">=":return FD(e,r,n);case"<":return qD(e,r,n);case"<=":return VD(e,r,n);default:throw TypeError(`Invalid operator: ${t}`)}};Ev.exports=WD});var jv=N(function(Cte,Pv){var HD=Ht(),BD=Ys(),{safeRe:Qu,t:ef}=sa(),UD=(e,t)=>{if(e instanceof HD)return e;if(typeof e==="number")e=String(e);if(typeof e!=="string")return null;t=t||{};let r=null;if(!t.rtl)r=e.match(t.includePrerelease?Qu[ef.COERCEFULL]:Qu[ef.COERCE]);else{let l=t.includePrerelease?Qu[ef.COERCERTLFULL]:Qu[ef.COERCERTL],c;while((c=l.exec(e))&&(!r||r.index+r[0].length!==e.length)){if(!r||c.index+c[0].length!==r.index+r[0].length)r=c;l.lastIndex=c.index+c[1].length+c[2].length}l.lastIndex=-1}if(r===null)return null;let n=r[2],s=r[3]||"0",i=r[4]||"0",o=t.includePrerelease&&r[5]?`-${r[5]}`:"",a=t.includePrerelease&&r[6]?`+${r[6]}`:"";return BD(`${n}.${s}.${i}${o}${a}`,t)};Pv.exports=UD});var Av=N(function(Nte,_v){var zD=Ys(),kv=na(),GD=Ht(),KD=(e,t,r)=>{if(!kv.RELEASE_TYPES.includes(t))return null;let n=YD(e,r);return n&&XD(n,t)},YD=(e,t)=>{let r=e instanceof GD?e.version:e;return zD(r,t)},XD=(e,t)=>{if(ZD(t))return e.version;switch(e.prerelease=[],t){case"major":e.minor=0,e.patch=0;break;case"minor":e.patch=0;break}return e.format()},ZD=(e)=>e.startsWith("pre");_v.exports=KD});var Cv=N(function(Tte,Ov){class Rv{constructor(){this.max=1000,this.map=new Map}get(e){let t=this.map.get(e);if(t===void 0)return;else return this.map.delete(e),this.map.set(e,t),t}delete(e){return this.map.delete(e)}set(e,t){if(!this.delete(e)&&t!==void 0){if(this.map.size>=this.max){let n=this.map.keys().next().value;this.delete(n)}this.map.set(e,t)}return this}}Ov.exports=Rv});var Qr=N(function(Ite,Jv){var QD=/\s+/g;class Rl{constructor(e,t){if(t=tL(t),e instanceof Rl)if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease)return e;else return new Rl(e.raw,t);if(e instanceof tf)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e.trim().replace(QD," "),this.set=this.raw.split("||").map((r)=>this.parseRange(r.trim())).filter((r)=>r.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let r=this.set[0];if(this.set=this.set.filter((n)=>!Tv(n[0])),this.set.length===0)this.set=[r];else if(this.set.length>1){for(let n of this.set)if(n.length===1&&uL(n[0])){this.set=[n];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e<this.set.length;e++){if(e>0)this.formatted+="||";let t=this.set[e];for(let r=0;r<t.length;r++){if(r>0)this.formatted+=" ";this.formatted+=t[r].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){e=e.replace(cL,"");let r=((this.options.includePrerelease&&aL)|(this.options.loose&&lL))+":"+e,n=Nv.get(r);if(n)return n;let s=this.options.loose,i=s?fr[Bt.HYPHENRANGELOOSE]:fr[Bt.HYPHENRANGE];e=e.replace(i,wL(this.options.includePrerelease)),st("hyphen replace",e),e=e.replace(fr[Bt.COMPARATORTRIM],sL),st("comparator trim",e),e=e.replace(fr[Bt.TILDETRIM],iL),st("tilde trim",e),e=e.replace(fr[Bt.CARETTRIM],oL),st("caret trim",e);let o=e.split(" ").map((u)=>fL(u,this.options)).join(" ").split(/\s+/).map((u)=>$L(u,this.options));if(s)o=o.filter((u)=>(st("loose invalid filter",u,this.options),!!u.match(fr[Bt.COMPARATORLOOSE])));st("range list",o);let a=new Map,l=o.map((u)=>new tf(u,this.options));for(let u of l){if(Tv(u))return[u];a.set(u.value,u)}if(a.size>1&&a.has(""))a.delete("");let c=[...a.values()];return Nv.set(r,c),c}intersects(e,t){if(!(e instanceof Rl))throw TypeError("a Range is required");return this.set.some((r)=>Iv(r,t)&&e.set.some((n)=>Iv(n,t)&&r.every((s)=>n.every((i)=>s.intersects(i,t)))))}test(e){if(!e)return!1;if(typeof e==="string")try{e=new rL(e,this.options)}catch(t){return!1}for(let t=0;t<this.set.length;t++)if(vL(this.set[t],e,this.options))return!0;return!1}}Jv.exports=Rl;var eL=Cv(),Nv=new eL,tL=Hu(),tf=Ol(),st=_l(),rL=Ht(),{safeRe:fr,src:nL,t:Bt,comparatorTrimReplace:sL,tildeTrimReplace:iL,caretTrimReplace:oL}=sa(),{FLAG_INCLUDE_PRERELEASE:aL,FLAG_LOOSE:lL}=na(),cL=new RegExp(nL[Bt.BUILD],"g"),Tv=(e)=>e.value==="<0.0.0-0",uL=(e)=>e.value==="",Iv=(e,t)=>{let r=!0,n=e.slice(),s=n.pop();while(r&&n.length)r=n.every((i)=>s.intersects(i,t)),s=n.pop();return r},fL=(e,t)=>(e=e.replace(fr[Bt.BUILD],""),st("comp",e,t),e=hL(e,t),st("caret",e),e=pL(e,t),st("tildes",e),e=yL(e,t),st("xrange",e),e=xL(e,t),st("stars",e),e),It=(e)=>!e||e.toLowerCase()==="x"||e==="*",dL=(e,t,r)=>It(e)&&!It(t)||It(t)&&r&&!It(r),pL=(e,t)=>e.trim().split(/\s+/).map((r)=>mL(r,t)).join(" "),mL=(e,t)=>{let r=t.loose?fr[Bt.TILDELOOSE]:fr[Bt.TILDE],n=t.includePrerelease?"-0":"";return e.replace(r,(s,i,o,a,l)=>{st("tilde",e,s,i,o,a,l);let c;if(It(i))c="";else if(It(o))c=`>=${i}.0.0${n} <${+i+1}.0.0-0`;else if(It(a))c=`>=${i}.${o}.0${n} <${i}.${+o+1}.0-0`;else if(l)st("replaceTilde pr",l),c=`>=${i}.${o}.${a}-${l} <${i}.${+o+1}.0-0`;else c=`>=${i}.${o}.${a} <${i}.${+o+1}.0-0`;return st("tilde return",c),c})},hL=(e,t)=>e.trim().split(/\s+/).map((r)=>gL(r,t)).join(" "),gL=(e,t)=>{st("caret",e,t);let r=t.loose?fr[Bt.CARETLOOSE]:fr[Bt.CARET],n=t.includePrerelease?"-0":"";return e.replace(r,(s,i,o,a,l)=>{st("caret",e,s,i,o,a,l);let c;if(It(i))c="";else if(It(o))c=`>=${i}.0.0${n} <${+i+1}.0.0-0`;else if(It(a))if(i==="0")c=`>=${i}.${o}.0${n} <${i}.${+o+1}.0-0`;else c=`>=${i}.${o}.0${n} <${+i+1}.0.0-0`;else if(l)if(st("replaceCaret pr",l),i==="0")if(o==="0")c=`>=${i}.${o}.${a}-${l} <${i}.${o}.${+a+1}-0`;else c=`>=${i}.${o}.${a}-${l} <${i}.${+o+1}.0-0`;else c=`>=${i}.${o}.${a}-${l} <${+i+1}.0.0-0`;else if(st("no pr"),i==="0")if(o==="0")c=`>=${i}.${o}.${a} <${i}.${o}.${+a+1}-0`;else c=`>=${i}.${o}.${a} <${i}.${+o+1}.0-0`;else c=`>=${i}.${o}.${a} <${+i+1}.0.0-0`;return st("caret return",c),c})},yL=(e,t)=>(st("replaceXRanges",e,t),e.split(/\s+/).map((r)=>bL(r,t)).join(" ")),bL=(e,t)=>{e=e.trim();let r=t.loose?fr[Bt.XRANGELOOSE]:fr[Bt.XRANGE];return e.replace(r,(n,s,i,o,a,l)=>{if(st("xRange",e,n,s,i,o,a,l),dL(i,o,a))return e;let c=It(i),u=c||It(o),p=u||It(a),h=p;if(s==="="&&h)s="";if(l=t.includePrerelease?"-0":"",c)if(s===">"||s==="<")n="<0.0.0-0";else n="*";else if(s&&h){if(u)o=0;if(a=0,s===">")if(s=">=",u)i=+i+1,o=0,a=0;else o=+o+1,a=0;else if(s==="<=")if(s="<",u)i=+i+1;else o=+o+1;if(s==="<")l="-0";n=`${s+i}.${o}.${a}${l}`}else if(u)n=`>=${i}.0.0${l} <${+i+1}.0.0-0`;else if(p)n=`>=${i}.${o}.0${l} <${i}.${+o+1}.0-0`;return st("xRange return",n),n})},xL=(e,t)=>(st("replaceStars",e,t),e.trim().replace(fr[Bt.STAR],"")),$L=(e,t)=>(st("replaceGTE0",e,t),e.trim().replace(fr[t.includePrerelease?Bt.GTE0PRE:Bt.GTE0],"")),wL=(e)=>(t,r,n,s,i,o,a,l,c,u,p,h)=>{if(It(n))r="";else if(It(s))r=`>=${n}.0.0${e?"-0":""}`;else if(It(i))r=`>=${n}.${s}.0${e?"-0":""}`;else if(o)r=`>=${r}`;else r=`>=${r}${e?"-0":""}`;if(It(c))l="";else if(It(u))l=`<${+c+1}.0.0-0`;else if(It(p))l=`<${c}.${+u+1}.0-0`;else if(h)l=`<=${c}.${u}.${p}-${h}`;else if(e)l=`<${c}.${u}.${+p+1}-0`;else l=`<=${l}`;return`${r} ${l}`.trim()},vL=(e,t,r)=>{for(let n=0;n<e.length;n++)if(!e[n].test(t))return!1;if(t.prerelease.length&&!r.includePrerelease){for(let n=0;n<e.length;n++){if(st(e[n].semver),e[n].semver===tf.ANY)continue;if(e[n].semver.prerelease.length>0){let s=e[n].semver;if(s.major===t.major&&s.minor===t.minor&&s.patch===t.patch)return!0}}return!1}return!0}});var Ol=N(function(Jte,Vv){var Cl=Symbol("SemVer ANY");class rf{static get ANY(){return Cl}constructor(e,t){if(t=Mv(t),e instanceof rf)if(e.loose===!!t.loose)return e;else e=e.value;if(e=e.trim().split(/\s+/).join(" "),Ym("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===Cl)this.value="";else this.value=this.operator+this.semver.version;Ym("comp",this)}parse(e){let t=this.options.loose?Dv[Lv.COMPARATORLOOSE]:Dv[Lv.COMPARATOR],r=e.match(t);if(!r)throw TypeError(`Invalid comparator: ${e}`);if(this.operator=r[1]!==void 0?r[1]:"",this.operator==="=")this.operator="";if(!r[2])this.semver=Cl;else this.semver=new Fv(r[2],this.options.loose)}toString(){return this.value}test(e){if(Ym("Comparator.test",e,this.options.loose),this.semver===Cl||e===Cl)return!0;if(typeof e==="string")try{e=new Fv(e,this.options)}catch(t){return!1}return Km(e,this.operator,this.semver,this.options)}intersects(e,t){if(!(e instanceof rf))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new qv(e.value,t).test(this.value)}else if(e.operator===""){if(e.value==="")return!0;return new qv(this.value,t).test(e.semver)}if(t=Mv(t),t.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0"))return!1;if(!t.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&e.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&e.operator.startsWith("<"))return!0;if(this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("="))return!0;if(Km(this.semver,"<",e.semver,t)&&this.operator.startsWith(">")&&e.operator.startsWith("<"))return!0;if(Km(this.semver,">",e.semver,t)&&this.operator.startsWith("<")&&e.operator.startsWith(">"))return!0;return!1}}Vv.exports=rf;var Mv=Hu(),{safeRe:Dv,t:Lv}=sa(),Km=Gm(),Ym=_l(),Fv=Ht(),qv=Qr()});var Nl=N(function(Mte,Wv){var SL=Qr(),EL=(e,t,r)=>{try{t=new SL(t,r)}catch(n){return!1}return t.test(e)};Wv.exports=EL});var Bv=N(function(Dte,Hv){var PL=Qr(),jL=(e,t)=>new PL(e,t).set.map((r)=>r.map((n)=>n.value).join(" ").trim().split(" "));Hv.exports=jL});var zv=N(function(Lte,Uv){var kL=Ht(),_L=Qr(),AL=(e,t,r)=>{let n=null,s=null,i=null;try{i=new _L(t,r)}catch(o){return null}return e.forEach((o)=>{if(i.test(o)){if(!n||s.compare(o)===-1)n=o,s=new kL(n,r)}}),n};Uv.exports=AL});var Kv=N(function(Fte,Gv){var RL=Ht(),OL=Qr(),CL=(e,t,r)=>{let n=null,s=null,i=null;try{i=new OL(t,r)}catch(o){return null}return e.forEach((o)=>{if(i.test(o)){if(!n||s.compare(o)===1)n=o,s=new RL(n,r)}}),n};Gv.exports=CL});var Zv=N(function(qte,Xv){var Xm=Ht(),NL=Qr(),Yv=Al(),TL=(e,t)=>{e=new NL(e,t);let r=new Xm("0.0.0");if(e.test(r))return r;if(r=new Xm("0.0.0-0"),e.test(r))return r;r=null;for(let n=0;n<e.set.length;++n){let s=e.set[n],i=null;if(s.forEach((o)=>{let a=new Xm(o.semver.version);switch(o.operator){case">":if(a.prerelease.length===0)a.patch++;else a.prerelease.push(0);a.raw=a.format();case"":case">=":if(!i||Yv(a,i))i=a;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${o.operator}`)}}),i&&(!r||Yv(r,i)))r=i}if(r&&e.test(r))return r;return null};Xv.exports=TL});var eS=N(function(Vte,Qv){var IL=Qr(),JL=(e,t)=>{try{return new IL(e,t).range||"*"}catch(r){return null}};Qv.exports=JL});var nf=N(function(Wte,sS){var ML=Ht(),nS=Ol(),{ANY:DL}=nS,LL=Qr(),FL=Nl(),tS=Al(),rS=Yu(),qL=Zu(),VL=Xu(),WL=(e,t,r,n)=>{e=new ML(e,n),t=new LL(t,n);let s,i,o,a,l;switch(r){case">":s=tS,i=qL,o=rS,a=">",l=">=";break;case"<":s=rS,i=VL,o=tS,a="<",l="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(FL(e,t,n))return!1;for(let c=0;c<t.set.length;++c){let u=t.set[c],p=null,h=null;if(u.forEach((m)=>{if(m.semver===DL)m=new nS(">=0.0.0");if(p=p||m,h=h||m,s(m.semver,p.semver,n))p=m;else if(o(m.semver,h.semver,n))h=m}),p.operator===a||p.operator===l)return!1;if((!h.operator||h.operator===a)&&i(e,h.semver))return!1;else if(h.operator===l&&o(e,h.semver))return!1}return!0};sS.exports=WL});var oS=N(function(Hte,iS){var HL=nf(),BL=(e,t,r)=>HL(e,t,">",r);iS.exports=BL});var lS=N(function(Bte,aS){var UL=nf(),zL=(e,t,r)=>UL(e,t,"<",r);aS.exports=zL});var fS=N(function(Ute,uS){var cS=Qr(),GL=(e,t,r)=>(e=new cS(e,r),t=new cS(t,r),e.intersects(t,r));uS.exports=GL});var pS=N(function(zte,dS){var KL=Nl(),YL=Zr();dS.exports=(e,t,r)=>{let n=[],s=null,i=null,o=e.sort((u,p)=>YL(u,p,r));for(let u of o)if(KL(u,t,r)){if(i=u,!s)s=u}else{if(i)n.push([s,i]);i=null,s=null}if(s)n.push([s,null]);let a=[];for(let[u,p]of n)if(u===p)a.push(u);else if(!p&&u===o[0])a.push("*");else if(!p)a.push(`>=${u}`);else if(u===o[0])a.push(`<=${p}`);else a.push(`${u} - ${p}`);let l=a.join(" || "),c=typeof t.raw==="string"?t.raw:String(t);return l.length<c.length?l:t}});var xS=N(function(Gte,bS){var mS=Qr(),eh=Ol(),{ANY:Zm}=eh,Qm=Nl(),th=Zr(),XL=(e,t,r={})=>{if(e===t)return!0;e=new mS(e,r),t=new mS(t,r);let n=!1;e:for(let s of e.set){for(let i of t.set){let o=QL(s,i,r);if(n=n||o!==null,o)continue e}if(n)return!1}return!0},ZL=[new eh(">=0.0.0-0")],hS=[new eh(">=0.0.0")],QL=(e,t,r)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===Zm)if(t.length===1&&t[0].semver===Zm)return!0;else if(r.includePrerelease)e=ZL;else e=hS;if(t.length===1&&t[0].semver===Zm)if(r.includePrerelease)return!0;else t=hS;let n=new Set,s,i;for(let m of e)if(m.operator===">"||m.operator===">=")s=gS(s,m,r);else if(m.operator==="<"||m.operator==="<=")i=yS(i,m,r);else n.add(m.semver);if(n.size>1)return null;let o;if(s&&i){if(o=th(s.semver,i.semver,r),o>0)return null;else if(o===0&&(s.operator!==">="||i.operator!=="<="))return null}for(let m of n){if(s&&!Qm(m,String(s),r))return null;if(i&&!Qm(m,String(i),r))return null;for(let b of t)if(!Qm(m,String(b),r))return!1;return!0}let a,l,c,u,p=i&&!r.includePrerelease&&i.semver.prerelease.length?i.semver:!1,h=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1;if(p&&p.prerelease.length===1&&i.operator==="<"&&p.prerelease[0]===0)p=!1;for(let m of t){if(u=u||m.operator===">"||m.operator===">=",c=c||m.operator==="<"||m.operator==="<=",s){if(h){if(m.semver.prerelease&&m.semver.prerelease.length&&m.semver.major===h.major&&m.semver.minor===h.minor&&m.semver.patch===h.patch)h=!1}if(m.operator===">"||m.operator===">="){if(a=gS(s,m,r),a===m&&a!==s)return!1}else if(s.operator===">="&&!m.test(s.semver))return!1}if(i){if(p){if(m.semver.prerelease&&m.semver.prerelease.length&&m.semver.major===p.major&&m.semver.minor===p.minor&&m.semver.patch===p.patch)p=!1}if(m.operator==="<"||m.operator==="<="){if(l=yS(i,m,r),l===m&&l!==i)return!1}else if(i.operator==="<="&&!m.test(i.semver))return!1}if(!m.operator&&(i||s)&&o!==0)return!1}if(s&&c&&!i&&o!==0)return!1;if(i&&u&&!s&&o!==0)return!1;if(h||p)return!1;return!0},gS=(e,t,r)=>{if(!e)return t;let n=th(e.semver,t.semver,r);return n>0?e:n<0?t:t.operator===">"&&e.operator===">="?t:e},yS=(e,t,r)=>{if(!e)return t;let n=th(e.semver,t.semver,r);return n<0?e:n>0?t:t.operator==="<"&&e.operator==="<="?t:e};bS.exports=XL});var wS=N(function(Kte,$S){var ia=sa(),sf=na(),eF=Ht(),of=Hm(),tF=Ys(),rF=Ww(),nF=Bw(),sF=Gw(),iF=Xw(),oF=Qw(),aF=tv(),lF=nv(),cF=iv(),uF=Zr(),fF=cv(),dF=fv(),pF=Ku(),mF=hv(),hF=yv(),gF=Al(),yF=Yu(),bF=Um(),xF=zm(),$F=Xu(),wF=Zu(),vF=Gm(),SF=jv(),EF=Av(),PF=Ol(),jF=Qr(),kF=Nl(),_F=Bv(),AF=zv(),RF=Kv(),OF=Zv(),CF=eS(),NF=nf(),TF=oS(),IF=lS(),JF=fS(),MF=pS(),DF=xS();$S.exports={parse:tF,valid:rF,clean:nF,inc:sF,diff:iF,major:oF,minor:aF,patch:lF,prerelease:cF,compare:uF,rcompare:fF,compareLoose:dF,compareBuild:pF,sort:mF,rsort:hF,gt:gF,lt:yF,eq:bF,neq:xF,gte:$F,lte:wF,cmp:vF,coerce:SF,truncate:EF,Comparator:PF,Range:jF,satisfies:kF,toComparators:_F,maxSatisfying:AF,minSatisfying:RF,minVersion:OF,validRange:CF,outside:NF,gtr:TF,ltr:IF,intersects:JF,simplifyRange:MF,subset:DF,SemVer:eF,re:ia.re,src:ia.src,tokens:ia.t,SEMVER_SPEC_VERSION:sf.SEMVER_SPEC_VERSION,RELEASE_TYPES:sf.RELEASE_TYPES,compareIdentifiers:of.compareIdentifiers,rcompareIdentifiers:of.rcompareIdentifiers}});var Ps;var af=D(()=>{Ps={name:"sharp",description:"High performance Node.js image processing, the fastest module to resize JPEG, PNG, WebP, GIF, AVIF and TIFF images",version:"0.35.5",author:"Lovell Fuller <npm@lovell.info>",homepage:"https://sharp.pixelplumbing.com",contributors:["Pierre Inglebert <pierre.inglebert@gmail.com>","Jonathan Ong <jonathanrichardong@gmail.com>","Chanon Sajjamanochai <chanon.s@gmail.com>","Juliano Julio <julianojulio@gmail.com>","Daniel Gasienica <daniel@gasienica.ch>","Julian Walker <julian@fiftythree.com>","Amit Pitaru <pitaru.amit@gmail.com>","Brandon Aaron <hello.brandon@aaron.sh>","Andreas Lind <andreas@one.com>","Maurus Cuelenaere <mcuelenaere@gmail.com>","Linus Unnebäck <linus@folkdatorn.se>","Victor Mateevitsi <mvictoras@gmail.com>","Alaric Holloway <alaric.holloway@gmail.com>","Bernhard K. Weisshuhn <bkw@codingforce.com>","Chris Riley <criley@primedia.com>","David Carley <dacarley@gmail.com>","John Tobin <john@limelightmobileinc.com>","Kenton Gray <kentongray@gmail.com>","Felix Bünemann <Felix.Buenemann@gmail.com>","Samy Al Zahrani <samyalzahrany@gmail.com>","Chintan Thakkar <lemnisk8@gmail.com>","F. Orlando Galashan <frulo@gmx.de>","Kleis Auke Wolthuizen <info@kleisauke.nl>","Matt Hirsch <mhirsch@media.mit.edu>","Matthias Thoemmes <thoemmes@gmail.com>","Patrick Paskaris <patrick@paskaris.gr>","Jérémy Lal <kapouer@melix.org>","Rahul Nanwani <r.nanwani@gmail.com>","Alice Monday <alice0meta@gmail.com>","Kristo Jorgenson <kristo.jorgenson@gmail.com>","YvesBos <yves_bos@outlook.com>","Guy Maliar <guy@tailorbrands.com>","Nicolas Coden <nicolas@ncoden.fr>","Matt Parrish <matt.r.parrish@gmail.com>","Marcel Bretschneider <marcel.bretschneider@gmail.com>","Matthew McEachen <matthew+github@mceachen.org>","Jarda Kotěšovec <jarda.kotesovec@gmail.com>","Kenric D'Souza <kenric.dsouza@gmail.com>","Oleh Aleinyk <oleg.aleynik@gmail.com>","Marcel Bretschneider <marcel.bretschneider@gmail.com>","Andrea Bianco <andrea.bianco@unibas.ch>","Rik Heywood <rik@rik.org>","Thomas Parisot <hi@oncletom.io>","Nathan Graves <nathanrgraves+github@gmail.com>","Tom Lokhorst <tom@lokhorst.eu>","Espen Hovlandsdal <espen@hovlandsdal.com>","Sylvain Dumont <sylvain.dumont35@gmail.com>","Alun Davies <alun.owain.davies@googlemail.com>","Aidan Hoolachan <ajhoolachan21@gmail.com>","Axel Eirola <axel.eirola@iki.fi>","Freezy <freezy@xbmc.org>","Daiz <taneli.vatanen@gmail.com>","Julian Aubourg <j@ubourg.net>","Keith Belovay <keith@picthrive.com>","Michael B. Klein <mbklein@gmail.com>","Jordan Prudhomme <jordan@raboland.fr>","Ilya Ovdin <iovdin@gmail.com>","Andargor <andargor@yahoo.com>","Paul Neave <paul.neave@gmail.com>","Brendan Kennedy <brenwken@gmail.com>","Brychan Bennett-Odlum <git@brychan.io>","Edward Silverton <e.silverton@gmail.com>","Roman Malieiev <aromaleev@gmail.com>","Tomas Szabo <tomas.szabo@deftomat.com>","Robert O'Rourke <robert@o-rourke.org>","Guillermo Alfonso Varela Chouciño <guillevch@gmail.com>","Christian Flintrup <chr@gigahost.dk>","Manan Jadhav <manan@motionden.com>","Leon Radley <leon@radley.se>","alza54 <alza54@thiocod.in>","Jacob Smith <jacob@frende.me>","Michael Nutt <michael@nutt.im>","Brad Parham <baparham@gmail.com>","Taneli Vatanen <taneli.vatanen@gmail.com>","Joris Dugué <zaruike10@gmail.com>","Chris Banks <christopher.bradley.banks@gmail.com>","Ompal Singh <ompal.hitm09@gmail.com>","Brodan <christopher.hranj@gmail.com>","Ankur Parihar <ankur.github@gmail.com>","Brahim Ait elhaj <brahima@gmail.com>","Mart Jansink <m.jansink@gmail.com>","Lachlan Newman <lachnewman007@gmail.com>","Dennis Beatty <dennis@dcbeatty.com>","Ingvar Stepanyan <me@rreverser.com>","Don Denton <don@happycollision.com>","Dmytro Tiapukhin <cool.gegeg@gmail.com>","Florian Lefebvre <contact@florian-lefebvre.dev>"],scripts:{build:"node install/build.js","build:dist":"node scripts/build.mjs",clean:"rm -rf src/build/ test/fixtures/output.*",test:"npm run lint && npm run test-unit",lint:"npm run lint-cpp && npm run lint-js && npm run lint-types && npm run lint-publish","lint-cpp":"cpplint --quiet src/*.h src/*.cc","lint-js":"biome lint","lint-publish":"publint --strict","lint-types":"tsd --files ./test/types/sharp.test-d.{cts,mts}","test-leak":"./test/leak/leak.sh","test-unit":"node --experimental-test-coverage test/unit.mjs","package-from-local-build":"node npm/from-local-build.js","package-wasm-wrappers":"node npm/wasm-wrappers.js","package-release-notes":"node npm/release-notes.js","docs-build":"node docs/build.mjs","docs-serve":"cd docs && npm start","docs-publish":"cd docs && npm run build && npx firebase-tools deploy --project pixelplumbing --only hosting:pixelplumbing-sharp"},type:"commonjs",files:["dist","install","lib/index.d.ts","src/*.{cc,h,gyp}"],main:"./dist/index.cjs",module:"./dist/index.mjs",types:"./dist/index.d.mts",exports:{".":{import:{types:"./dist/index.d.mts",default:"./dist/index.mjs"},require:{types:"./dist/index.d.cts",default:"./dist/index.cjs"}}},sideEffects:!0,repository:{type:"git",url:"git+https://github.com/lovell/sharp.git"},keywords:["jpeg","png","webp","avif","tiff","gif","svg","jp2","dzi","image","resize","thumbnail","crop","embed","libvips","vips"],dependencies:{"@img/colour":"^1.1.0","detect-libc":"^2.1.2",semver:"^7.8.5"},optionalDependencies:{"@img/sharp-darwin-arm64":"0.35.5","@img/sharp-darwin-x64":"0.35.5","@img/sharp-freebsd-wasm32":"0.35.5","@img/sharp-libvips-darwin-arm64":"1.3.4","@img/sharp-libvips-darwin-x64":"1.3.4","@img/sharp-libvips-linux-arm":"1.3.4","@img/sharp-libvips-linux-arm64":"1.3.4","@img/sharp-libvips-linux-ppc64":"1.3.4","@img/sharp-libvips-linux-riscv64":"1.3.4","@img/sharp-libvips-linux-s390x":"1.3.4","@img/sharp-libvips-linux-x64":"1.3.4","@img/sharp-libvips-linuxmusl-arm64":"1.3.4","@img/sharp-libvips-linuxmusl-x64":"1.3.4","@img/sharp-linux-arm":"0.35.5","@img/sharp-linux-arm64":"0.35.5","@img/sharp-linux-ppc64":"0.35.5","@img/sharp-linux-riscv64":"0.35.5","@img/sharp-linux-s390x":"0.35.5","@img/sharp-linux-x64":"0.35.5","@img/sharp-linuxmusl-arm64":"0.35.5","@img/sharp-linuxmusl-x64":"0.35.5","@img/sharp-webcontainers-wasm32":"0.35.5","@img/sharp-win32-arm64":"0.35.5","@img/sharp-win32-ia32":"0.35.5","@img/sharp-win32-x64":"0.35.5"},peerDependenciesMeta:{"@types/node":{optional:!0}},devDependencies:{"@biomejs/biome":"^2.5.14","@cpplint/cli":"^0.1.0","@emnapi/runtime":"^1.11.3","@img/sharp-libvips-dev":"1.3.4","@img/sharp-libvips-dev-wasm32":"1.3.4","@img/sharp-libvips-win32-arm64":"1.3.4","@img/sharp-libvips-win32-ia32":"1.3.4","@img/sharp-libvips-win32-x64":"1.3.4","@types/node":"*",emnapi:"^1.11.3","exif-reader":"^2.0.3",icc:"^4.0.0","node-addon-api":"^8.9.2","node-gyp":"^12.4.0",publint:"^0.3.24","tar-fs":"^3.1.3",tsd:"^0.33.0",yauzl:"^3.4.0"},license:"Apache-2.0",engines:{node:">=20.9.0"},config:{libvips:">=8.18.7"},funding:{url:"https://opencollective.com/libvips"}}});import{spawnSync as Tl}from"node:child_process";import{createHash as FF}from"node:crypto";var Il,nh,qF,SS,VF,sh,WF=(e)=>{if(e instanceof Error)console.error(`sharp: Installation error: ${e.message}`);else console.log(`sharp: ${e}`)},ES=()=>nh.default.isNonGlibcLinuxSync()?nh.default.familySync():"",HF=()=>`${process.platform}${ES()}-${process.arch}`,oa=()=>{if(PS())return"wasm32";let{npm_config_arch:e,npm_config_platform:t,npm_config_libc:r}=process.env,n=typeof r==="string"?r:ES();return`${t||process.platform}${n}-${e||process.arch}`},BF=()=>{try{return He(`@img/sharp-libvips-dev-${oa()}/include`)}catch{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/include");})()}catch{}}return""},UF=()=>{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/cplusplus");})()}catch{}return""},zF=()=>{try{return He(`@img/sharp-libvips-dev-${oa()}/lib`)}catch{try{return He(`@img/sharp-libvips-${oa()}/lib`)}catch{}}return""},GF=()=>{if(process.release?.name==="node"&&process.versions){if(!Il.default.satisfies(process.versions.node,Ps.engines.node))return{found:process.versions.node,expected:Ps.engines.node}}},PS=()=>{let{CC:e}=process.env;return Boolean(e?.endsWith("/emcc"))},KF=()=>{if(process.platform==="darwin"&&process.arch==="x64")return(Tl("sysctl sysctl.proc_translated",sh).stdout||"").trim()==="sysctl.proc_translated: 1";return!1},vS=(e)=>FF("sha512").update(e).digest("hex"),YF=()=>{try{let e=vS(`imgsharp-libvips-${oa()}`),t=Il.default.coerce(Ps.optionalDependencies[`@img/sharp-libvips-${oa()}`],{includePrerelease:!0}).version;return vS(`${e}npm:${t}`).slice(0,10)}catch{}return""},XF=()=>Tl(`node-gyp rebuild --directory=src ${PS()?"--nodedir=emscripten":""}`,{...sh,stdio:"inherit"}).status,jS=()=>{if(process.platform!=="win32")return(Tl("pkg-config --modversion vips-cpp",{...sh,env:{...process.env,PKG_CONFIG_PATH:kS()}}).stdout||"").trim();else return""},ZF=()=>{try{let e=(Tl("brew",["--prefix"],{encoding:"utf8"}).stdout||"").trim();if(e)return`${e}/lib/pkgconfig`}catch(e){}return},QF=()=>{try{let e=(Tl("pkg-config",["--variable","pc_path","pkg-config"],{encoding:"utf8"}).stdout||"").trim();if(e)return e}catch(e){}return},kS=()=>{if(process.platform!=="win32")return[ZF(),QF(),process.env.PKG_CONFIG_PATH].filter(Boolean).join(":");else return""},rh=(e,t,r)=>{if(r)r(`Detected ${t}, skipping search for globally-installed libvips`);return e},e5=(e)=>{if(Boolean(process.env.SHARP_IGNORE_GLOBAL_LIBVIPS)===!0)return rh(!1,"SHARP_IGNORE_GLOBAL_LIBVIPS",e);if(Boolean(process.env.SHARP_FORCE_GLOBAL_LIBVIPS)===!0)return rh(!0,"SHARP_FORCE_GLOBAL_LIBVIPS",e);if(KF())return rh(!1,"Rosetta",e);let t=jS();return!!t&&Il.default.gte(t,SS)},lf;var ih=D(()=>{af();Il=gr(wS(),1),nh=gr(Wu(),1);/*!
|
|
375
|
+
*/f={defined:gw,object:_M,plainObject:AM,fn:RM,bool:OM,buffer:NM,typedArray:CM,arrayBuffer:TM,string:IM,number:JM,integer:MM,inRange:DM,inArray:LM,invalidParameterError:FM,nativeError:qM}});var xw=C(function(Kte,bw){var yw=()=>process.platform==="linux",zu=null,VM=()=>{if(!zu)if(yw()&&process.report){let e=process.report.excludeNetwork;process.report.excludeNetwork=!0,zu=process.report.getReport(),process.report.excludeNetwork=e}else zu={};return zu};bw.exports={isLinux:yw,getReport:VM}});var ww=C(function(Yte,$w){var Qr=Be("fs"),WM=(e)=>{let t=Qr.openSync(e,"r"),r=Buffer.alloc(2048),n=Qr.readSync(t,r,0,2048,0);return Qr.close(t,()=>{}),r.subarray(0,n)},HM=(e)=>new Promise((t,r)=>{Qr.open(e,"r",(n,s)=>{if(n)r(n);else{let i=Buffer.alloc(2048);Qr.read(s,i,0,2048,0,(o,a)=>{t(i.subarray(0,a)),Qr.close(s,()=>{})})}})});$w.exports={LDD_PATH:"/usr/bin/ldd",SELF_PATH:"/proc/self/exe",readFileSync:WM,readFile:HM}});var Sw=C(function(Xte,vw){var BM=(e)=>{if(e.length<64)return null;if(e.readUInt32BE(0)!==2135247942)return null;if(e.readUInt8(4)!==2)return null;if(e.readUInt8(5)!==1)return null;let t=e.readUInt32LE(32),r=e.readUInt16LE(54),n=e.readUInt16LE(56);for(let s=0;s<n;s++){let i=t+s*r;if(e.readUInt32LE(i)===3){let a=e.readUInt32LE(i+8),l=e.readUInt32LE(i+32);return e.subarray(a,a+l).toString().replace(/\0.*$/g,"")}}return null};vw.exports={interpreterPath:BM}});var Yu=C(function(Zte,Lw){var Gu=Be("child_process"),{isLinux:aa,getReport:jw}=xw(),{LDD_PATH:Ku,SELF_PATH:Pw,readFile:zm,readFileSync:Gm}=ww(),{interpreterPath:kw}=Sw(),Nn,Cn,Tn,Zs="",_w=()=>{if(!Zs)return new Promise((e)=>{Gu.exec("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",(t,r)=>{Zs=t?" ":r,e(Zs)})});return Zs},Aw=()=>{if(!Zs)try{Zs=Gu.execSync("getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",{encoding:"utf8"})}catch(e){Zs=" "}return Zs},ks="glibc",Rw=/LIBC[a-z0-9 \-).]*?(\d+\.\d+)/i,so="musl",UM=(e)=>e.includes("libc.musl-")||e.includes("ld-musl-"),Ow=()=>{let e=jw();if(e.header&&e.header.glibcVersionRuntime)return ks;if(Array.isArray(e.sharedObjects)){if(e.sharedObjects.some(UM))return so}return null},Nw=(e)=>{let[t,r]=e.split(/[\r\n]+/);if(t&&t.includes(ks))return ks;if(r&&r.includes(so))return so;return null},Cw=(e)=>{if(e){if(e.includes("/ld-musl-"))return so;else if(e.includes("/ld-linux-"))return ks}return null},Tw=(e)=>{if(e=e.toString(),e.includes("musl"))return so;if(e.includes("GNU C Library"))return ks;return null},zM=async()=>{if(Cn!==void 0)return Cn;Cn=null;try{let e=await zm(Ku);Cn=Tw(e)}catch(e){}return Cn},GM=()=>{if(Cn!==void 0)return Cn;Cn=null;try{let e=Gm(Ku);Cn=Tw(e)}catch(e){}return Cn},KM=async()=>{if(Nn!==void 0)return Nn;Nn=null;try{let e=await zm(Pw),t=kw(e);Nn=Cw(t)}catch(e){}return Nn},YM=()=>{if(Nn!==void 0)return Nn;Nn=null;try{let e=Gm(Pw),t=kw(e);Nn=Cw(t)}catch(e){}return Nn},Iw=async()=>{let e=null;if(aa()){if(e=await KM(),!e){if(e=await zM(),!e)e=Ow();if(!e){let t=await _w();e=Nw(t)}}}return e},Jw=()=>{let e=null;if(aa()){if(e=YM(),!e){if(e=GM(),!e)e=Ow();if(!e){let t=Aw();e=Nw(t)}}}return e},XM=async()=>aa()&&await Iw()!==ks,ZM=()=>aa()&&Jw()!==ks,QM=async()=>{if(Tn!==void 0)return Tn;Tn=null;try{let t=(await zm(Ku)).match(Rw);if(t)Tn=t[1]}catch(e){}return Tn},eD=()=>{if(Tn!==void 0)return Tn;Tn=null;try{let t=Gm(Ku).match(Rw);if(t)Tn=t[1]}catch(e){}return Tn},Mw=()=>{let e=jw();if(e.header&&e.header.glibcVersionRuntime)return e.header.glibcVersionRuntime;return null},Ew=(e)=>e.trim().split(/\s+/)[1],Dw=(e)=>{let[t,r,n]=e.split(/[\r\n]+/);if(t&&t.includes(ks))return Ew(t);if(r&&n&&r.includes(so))return Ew(n);return null},tD=async()=>{let e=null;if(aa()){if(e=await QM(),!e)e=Mw();if(!e){let t=await _w();e=Dw(t)}}return e},rD=()=>{let e=null;if(aa()){if(e=eD(),!e)e=Mw();if(!e){let t=Aw();e=Dw(t)}}return e};Lw.exports={GLIBC:ks,MUSL:so,family:Iw,familySync:Jw,isNonGlibcLinux:XM,isNonGlibcLinuxSync:ZM,version:tD,versionSync:rD}});var la=C(function(Qte,Fw){var nD=Number.MAX_SAFE_INTEGER||9007199254740991,sD=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Fw.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:nD,RELEASE_TYPES:sD,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var Tl=C(function(ere,qw){var iD=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};qw.exports=iD});var ca=C(function(In,Vw){var{MAX_SAFE_COMPONENT_LENGTH:Km,MAX_SAFE_BUILD_LENGTH:oD,MAX_LENGTH:aD}=la(),lD=Tl();In=Vw.exports={};var cD=In.re=[],uD=In.safeRe=[],te=In.src=[],fD=In.safeSrc=[],re=In.t={},dD=0,Ym="[a-zA-Z0-9-]",pD=[["\\s",1],["\\d",aD],[Ym,oD]],mD=(e)=>{for(let[t,r]of pD)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e},Se=(e,t,r)=>{let n=mD(t),s=dD++;lD(e,s,t),re[e]=s,te[s]=t,fD[s]=n,cD[s]=new RegExp(t,r?"g":void 0),uD[s]=new RegExp(n,r?"g":void 0)};Se("NUMERICIDENTIFIER","0|[1-9]\\d*");Se("NUMERICIDENTIFIERLOOSE","\\d+");Se("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Ym}*`);Se("MAINVERSION",`(${te[re.NUMERICIDENTIFIER]})\\.(${te[re.NUMERICIDENTIFIER]})\\.(${te[re.NUMERICIDENTIFIER]})`);Se("MAINVERSIONLOOSE",`(${te[re.NUMERICIDENTIFIERLOOSE]})\\.(${te[re.NUMERICIDENTIFIERLOOSE]})\\.(${te[re.NUMERICIDENTIFIERLOOSE]})`);Se("PRERELEASEIDENTIFIER",`(?:${te[re.NONNUMERICIDENTIFIER]}|${te[re.NUMERICIDENTIFIER]})`);Se("PRERELEASEIDENTIFIERLOOSE",`(?:${te[re.NONNUMERICIDENTIFIER]}|${te[re.NUMERICIDENTIFIERLOOSE]})`);Se("PRERELEASE",`(?:-(${te[re.PRERELEASEIDENTIFIER]}(?:\\.${te[re.PRERELEASEIDENTIFIER]})*))`);Se("PRERELEASELOOSE",`(?:-?(${te[re.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${te[re.PRERELEASEIDENTIFIERLOOSE]})*))`);Se("BUILDIDENTIFIER",`${Ym}+`);Se("BUILD",`(?:\\+(${te[re.BUILDIDENTIFIER]}(?:\\.${te[re.BUILDIDENTIFIER]})*))`);Se("FULLPLAIN",`v?${te[re.MAINVERSION]}${te[re.PRERELEASE]}?${te[re.BUILD]}?`);Se("FULL",`^${te[re.FULLPLAIN]}$`);Se("LOOSEPLAIN",`[v=\\s]*${te[re.MAINVERSIONLOOSE]}${te[re.PRERELEASELOOSE]}?${te[re.BUILD]}?`);Se("LOOSE",`^${te[re.LOOSEPLAIN]}$`);Se("GTLT","((?:<|>)?=?)");Se("XRANGEIDENTIFIERLOOSE",`${te[re.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);Se("XRANGEIDENTIFIER",`${te[re.NUMERICIDENTIFIER]}|x|X|\\*`);Se("XRANGEPLAIN",`[v=\\s]*(${te[re.XRANGEIDENTIFIER]})(?:\\.(${te[re.XRANGEIDENTIFIER]})(?:\\.(${te[re.XRANGEIDENTIFIER]})(?:${te[re.PRERELEASE]})?${te[re.BUILD]}?)?)?`);Se("XRANGEPLAINLOOSE",`[v=\\s]*(${te[re.XRANGEIDENTIFIERLOOSE]})(?:\\.(${te[re.XRANGEIDENTIFIERLOOSE]})(?:\\.(${te[re.XRANGEIDENTIFIERLOOSE]})(?:${te[re.PRERELEASELOOSE]})?${te[re.BUILD]}?)?)?`);Se("XRANGE",`^${te[re.GTLT]}\\s*${te[re.XRANGEPLAIN]}$`);Se("XRANGELOOSE",`^${te[re.GTLT]}\\s*${te[re.XRANGEPLAINLOOSE]}$`);Se("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Km}})(?:\\.(\\d{1,${Km}}))?(?:\\.(\\d{1,${Km}}))?`);Se("COERCE",`${te[re.COERCEPLAIN]}(?:$|[^\\d])`);Se("COERCEFULL",te[re.COERCEPLAIN]+`(?:${te[re.PRERELEASE]})?(?:${te[re.BUILD]})?(?:$|[^\\d])`);Se("COERCERTL",te[re.COERCE],!0);Se("COERCERTLFULL",te[re.COERCEFULL],!0);Se("LONETILDE","(?:~>?)");Se("TILDETRIM",`(\\s*)${te[re.LONETILDE]}\\s+`,!0);In.tildeTrimReplace="$1~";Se("TILDE",`^${te[re.LONETILDE]}${te[re.XRANGEPLAIN]}$`);Se("TILDELOOSE",`^${te[re.LONETILDE]}${te[re.XRANGEPLAINLOOSE]}$`);Se("LONECARET","(?:\\^)");Se("CARETTRIM",`(\\s*)${te[re.LONECARET]}\\s+`,!0);In.caretTrimReplace="$1^";Se("CARET",`^${te[re.LONECARET]}${te[re.XRANGEPLAIN]}$`);Se("CARETLOOSE",`^${te[re.LONECARET]}${te[re.XRANGEPLAINLOOSE]}$`);Se("COMPARATORLOOSE",`^${te[re.GTLT]}\\s*(${te[re.LOOSEPLAIN]})$|^$`);Se("COMPARATOR",`^${te[re.GTLT]}\\s*(${te[re.FULLPLAIN]})$|^$`);Se("COMPARATORTRIM",`(\\s*)${te[re.GTLT]}\\s*(${te[re.LOOSEPLAIN]}|${te[re.XRANGEPLAIN]})`,!0);In.comparatorTrimReplace="$1$2$3";Se("HYPHENRANGE",`^\\s*(${te[re.XRANGEPLAIN]})\\s+-\\s+(${te[re.XRANGEPLAIN]})\\s*$`);Se("HYPHENRANGELOOSE",`^\\s*(${te[re.XRANGEPLAINLOOSE]})\\s+-\\s+(${te[re.XRANGEPLAINLOOSE]})\\s*$`);Se("STAR","(<|>)?=?\\s*\\*");Se("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");Se("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var Xu=C(function(tre,Ww){var hD=Object.freeze({loose:!0}),gD=Object.freeze({}),yD=(e)=>{if(!e)return gD;if(typeof e!=="object")return hD;return e};Ww.exports=yD});var Xm=C(function(rre,Uw){var Hw=/^[0-9]+$/,Bw=(e,t)=>{if(typeof e==="number"&&typeof t==="number")return e===t?0:e<t?-1:1;let r=Hw.test(e),n=Hw.test(t);if(r&&n)e=+e,t=+t;return e===t?0:r&&!n?-1:n&&!r?1:e<t?-1:1},bD=(e,t)=>Bw(t,e);Uw.exports={compareIdentifiers:Bw,rcompareIdentifiers:bD}});var zt=C(function(nre,Gw){var Zu=Tl(),{MAX_LENGTH:zw,MAX_SAFE_INTEGER:Qu}=la(),{safeRe:ef,t:tf}=ca(),xD=Xu(),{compareIdentifiers:Zm}=Xm(),$D=(e,t)=>{let r=t.split(".");if(r.length>e.length)return!1;for(let n=0;n<r.length;n++)if(Zm(e[n],r[n])!==0)return!1;return!0};class xn{constructor(e,t){if(t=xD(t),e instanceof xn)if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease)return e;else e=e.version;else if(typeof e!=="string")throw TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>zw)throw TypeError(`version is longer than ${zw} characters`);Zu("SemVer",e,t),this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease;let r=e.trim().match(t.loose?ef[tf.LOOSE]:ef[tf.FULL]);if(!r)throw TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+r[1],this.minor=+r[2],this.patch=+r[3],this.major>Qu||this.major<0)throw TypeError("Invalid major version");if(this.minor>Qu||this.minor<0)throw TypeError("Invalid minor version");if(this.patch>Qu||this.patch<0)throw TypeError("Invalid patch version");if(!r[4])this.prerelease=[];else this.prerelease=r[4].split(".").map((n)=>{if(/^[0-9]+$/.test(n)){let s=+n;if(s>=0&&s<Qu)return s}return n});this.build=r[5]?r[5].split("."):[],this.format()}format(){if(this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length)this.version+=`-${this.prerelease.join(".")}`;return this.version}toString(){return this.version}compare(e){if(Zu("SemVer.compare",this.version,this.options,e),!(e instanceof xn)){if(typeof e==="string"&&e===this.version)return 0;e=new xn(e,this.options)}if(e.version===this.version)return 0;return this.compareMain(e)||this.comparePre(e)}compareMain(e){if(!(e instanceof xn))e=new xn(e,this.options);if(this.major<e.major)return-1;if(this.major>e.major)return 1;if(this.minor<e.minor)return-1;if(this.minor>e.minor)return 1;if(this.patch<e.patch)return-1;if(this.patch>e.patch)return 1;return 0}comparePre(e){if(!(e instanceof xn))e=new xn(e,this.options);if(this.prerelease.length&&!e.prerelease.length)return-1;else if(!this.prerelease.length&&e.prerelease.length)return 1;else if(!this.prerelease.length&&!e.prerelease.length)return 0;let t=0;do{let r=this.prerelease[t],n=e.prerelease[t];if(Zu("prerelease compare",t,r,n),r===void 0&&n===void 0)return 0;else if(n===void 0)return 1;else if(r===void 0)return-1;else if(r===n)continue;else return Zm(r,n)}while(++t)}compareBuild(e){if(!(e instanceof xn))e=new xn(e,this.options);let t=0;do{let r=this.build[t],n=e.build[t];if(Zu("build compare",t,r,n),r===void 0&&n===void 0)return 0;else if(n===void 0)return 1;else if(r===void 0)return-1;else if(r===n)continue;else return Zm(r,n)}while(++t)}inc(e,t,r){if(e.startsWith("pre")){if(!t&&r===!1)throw Error("invalid increment argument: identifier is empty");if(t){let n=`-${t}`.match(this.options.loose?ef[tf.PRERELEASELOOSE]:ef[tf.PRERELEASE]);if(!n||n[1]!==t)throw Error(`invalid identifier: ${t}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",t,r);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",t,r);break;case"prepatch":this.prerelease.length=0,this.inc("patch",t,r),this.inc("pre",t,r);break;case"prerelease":if(this.prerelease.length===0)this.inc("patch",t,r);this.inc("pre",t,r);break;case"release":if(this.prerelease.length===0)throw Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":if(this.minor!==0||this.patch!==0||this.prerelease.length===0)this.major++;this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":if(this.patch!==0||this.prerelease.length===0)this.minor++;this.patch=0,this.prerelease=[];break;case"patch":if(this.prerelease.length===0)this.patch++;this.prerelease=[];break;case"pre":{let n=Number(r)?1:0;if(this.prerelease.length===0)this.prerelease=[n];else{let s=this.prerelease.length;while(--s>=0)if(typeof this.prerelease[s]==="number")this.prerelease[s]++,s=-2;if(s===-1){if(t===this.prerelease.join(".")&&r===!1)throw Error("invalid increment argument: identifier already exists");this.prerelease.push(n)}}if(t){let s=[t,n];if(r===!1)s=[t];if($D(this.prerelease,t)){let i=this.prerelease[t.split(".").length];if(isNaN(i))this.prerelease=s}else this.prerelease=s}break}default:throw Error(`invalid increment argument: ${e}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}Gw.exports=xn});var Qs=C(function(sre,Yw){var Kw=zt(),wD=(e,t,r=!1)=>{if(e instanceof Kw)return e;try{return new Kw(e,t)}catch(n){if(!r)return null;throw n}};Yw.exports=wD});var Zw=C(function(ire,Xw){var vD=Qs(),SD=(e,t)=>{let r=vD(e,t);return r?r.version:null};Xw.exports=SD});var ev=C(function(ore,Qw){var ED=Qs(),jD=(e,t)=>{let r=ED(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null};Qw.exports=jD});var nv=C(function(are,rv){var tv=zt(),PD=(e,t,r,n,s)=>{if(typeof r==="string")s=n,n=r,r=void 0;try{return new tv(e instanceof tv?e.version:e,r).inc(t,n,s).version}catch(i){return null}};rv.exports=PD});var ov=C(function(lre,iv){var sv=Qs(),kD=(e,t)=>{let r=sv(e,null,!0),n=sv(t,null,!0),s=r.compare(n);if(s===0)return null;let i=s>0,o=i?r:n,a=i?n:r,l=!!o.prerelease.length;if(!!a.prerelease.length&&!l){if(!a.patch&&!a.minor)return"major";if(a.compareMain(o)===0){if(a.minor&&!a.patch)return"minor";return"patch"}}let u=l?"pre":"";if(r.major!==n.major)return u+"major";if(r.minor!==n.minor)return u+"minor";if(r.patch!==n.patch)return u+"patch";return"prerelease"};iv.exports=kD});var lv=C(function(cre,av){var _D=zt(),AD=(e,t)=>new _D(e,t).major;av.exports=AD});var uv=C(function(ure,cv){var RD=zt(),OD=(e,t)=>new RD(e,t).minor;cv.exports=OD});var dv=C(function(fre,fv){var ND=zt(),CD=(e,t)=>new ND(e,t).patch;fv.exports=CD});var mv=C(function(dre,pv){var TD=Qs(),ID=(e,t)=>{let r=TD(e,t);return r&&r.prerelease.length?r.prerelease:null};pv.exports=ID});var en=C(function(pre,gv){var hv=zt(),JD=(e,t,r)=>new hv(e,r).compare(new hv(t,r));gv.exports=JD});var bv=C(function(mre,yv){var MD=en(),DD=(e,t,r)=>MD(t,e,r);yv.exports=DD});var $v=C(function(hre,xv){var LD=en(),FD=(e,t)=>LD(e,t,!0);xv.exports=FD});var rf=C(function(gre,vv){var wv=zt(),qD=(e,t,r)=>{let n=new wv(e,r),s=new wv(t,r);return n.compare(s)||n.compareBuild(s)};vv.exports=qD});var Ev=C(function(yre,Sv){var VD=rf(),WD=(e,t)=>e.sort((r,n)=>VD(r,n,t));Sv.exports=WD});var Pv=C(function(bre,jv){var HD=rf(),BD=(e,t)=>e.sort((r,n)=>HD(n,r,t));jv.exports=BD});var Il=C(function(xre,kv){var UD=en(),zD=(e,t,r)=>UD(e,t,r)>0;kv.exports=zD});var nf=C(function($re,_v){var GD=en(),KD=(e,t,r)=>GD(e,t,r)<0;_v.exports=KD});var Qm=C(function(wre,Av){var YD=en(),XD=(e,t,r)=>YD(e,t,r)===0;Av.exports=XD});var eh=C(function(vre,Rv){var ZD=en(),QD=(e,t,r)=>ZD(e,t,r)!==0;Rv.exports=QD});var sf=C(function(Sre,Ov){var eL=en(),tL=(e,t,r)=>eL(e,t,r)>=0;Ov.exports=tL});var of=C(function(Ere,Nv){var rL=en(),nL=(e,t,r)=>rL(e,t,r)<=0;Nv.exports=nL});var th=C(function(jre,Cv){var sL=Qm(),iL=eh(),oL=Il(),aL=sf(),lL=nf(),cL=of(),uL=(e,t,r,n)=>{switch(t){case"===":if(typeof e==="object")e=e.version;if(typeof r==="object")r=r.version;return e===r;case"!==":if(typeof e==="object")e=e.version;if(typeof r==="object")r=r.version;return e!==r;case"":case"=":case"==":return sL(e,r,n);case"!=":return iL(e,r,n);case">":return oL(e,r,n);case">=":return aL(e,r,n);case"<":return lL(e,r,n);case"<=":return cL(e,r,n);default:throw TypeError(`Invalid operator: ${t}`)}};Cv.exports=uL});var Iv=C(function(Pre,Tv){var fL=zt(),dL=Qs(),{safeRe:af,t:lf}=ca(),pL=(e,t)=>{if(e instanceof fL)return e;if(typeof e==="number")e=String(e);if(typeof e!=="string")return null;t=t||{};let r=null;if(!t.rtl)r=e.match(t.includePrerelease?af[lf.COERCEFULL]:af[lf.COERCE]);else{let l=t.includePrerelease?af[lf.COERCERTLFULL]:af[lf.COERCERTL],c;while((c=l.exec(e))&&(!r||r.index+r[0].length!==e.length)){if(!r||c.index+c[0].length!==r.index+r[0].length)r=c;l.lastIndex=c.index+c[1].length+c[2].length}l.lastIndex=-1}if(r===null)return null;let n=r[2],s=r[3]||"0",i=r[4]||"0",o=t.includePrerelease&&r[5]?`-${r[5]}`:"",a=t.includePrerelease&&r[6]?`+${r[6]}`:"";return dL(`${n}.${s}.${i}${o}${a}`,t)};Tv.exports=pL});var Dv=C(function(kre,Mv){var mL=Qs(),Jv=la(),hL=zt(),gL=(e,t,r)=>{if(!Jv.RELEASE_TYPES.includes(t))return null;let n=yL(e,r);return n&&bL(n,t)},yL=(e,t)=>{let r=e instanceof hL?e.version:e;return mL(r,t)},bL=(e,t)=>{if(xL(t))return e.version;switch(e.prerelease=[],t){case"major":e.minor=0,e.patch=0;break;case"minor":e.patch=0;break}return e.format()},xL=(e)=>e.startsWith("pre");Mv.exports=gL});var qv=C(function(_re,Fv){class Lv{constructor(){this.max=1000,this.map=new Map}get(e){let t=this.map.get(e);if(t===void 0)return;else return this.map.delete(e),this.map.set(e,t),t}delete(e){return this.map.delete(e)}set(e,t){if(!this.delete(e)&&t!==void 0){if(this.map.size>=this.max){let n=this.map.keys().next().value;this.delete(n)}this.map.set(e,t)}return this}}Fv.exports=Lv});var tn=C(function(Are,Bv){var $L=/\s+/g;class Jl{constructor(e,t){if(t=vL(t),e instanceof Jl)if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease)return e;else return new Jl(e.raw,t);if(e instanceof cf)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e.trim().replace($L," "),this.set=this.raw.split("||").map((r)=>this.parseRange(r.trim())).filter((r)=>r.length),!this.set.length)throw TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let r=this.set[0];if(this.set=this.set.filter((n)=>!Wv(n[0])),this.set.length===0)this.set=[r];else if(this.set.length>1){for(let n of this.set)if(n.length===1&&OL(n[0])){this.set=[n];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e<this.set.length;e++){if(e>0)this.formatted+="||";let t=this.set[e];for(let r=0;r<t.length;r++){if(r>0)this.formatted+=" ";this.formatted+=t[r].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){e=e.replace(RL,"");let r=((this.options.includePrerelease&&_L)|(this.options.loose&&AL))+":"+e,n=Vv.get(r);if(n)return n;let s=this.options.loose,i=s?pr[Gt.HYPHENRANGELOOSE]:pr[Gt.HYPHENRANGE];e=e.replace(i,VL(this.options.includePrerelease)),st("hyphen replace",e),e=e.replace(pr[Gt.COMPARATORTRIM],jL),st("comparator trim",e),e=e.replace(pr[Gt.TILDETRIM],PL),st("tilde trim",e),e=e.replace(pr[Gt.CARETTRIM],kL),st("caret trim",e);let o=e.split(" ").map((u)=>NL(u,this.options)).join(" ").split(/\s+/).map((u)=>qL(u,this.options));if(s)o=o.filter((u)=>(st("loose invalid filter",u,this.options),!!u.match(pr[Gt.COMPARATORLOOSE])));st("range list",o);let a=new Map,l=o.map((u)=>new cf(u,this.options));for(let u of l){if(Wv(u))return[u];a.set(u.value,u)}if(a.size>1&&a.has(""))a.delete("");let c=[...a.values()];return Vv.set(r,c),c}intersects(e,t){if(!(e instanceof Jl))throw TypeError("a Range is required");return this.set.some((r)=>Hv(r,t)&&e.set.some((n)=>Hv(n,t)&&r.every((s)=>n.every((i)=>s.intersects(i,t)))))}test(e){if(!e)return!1;if(typeof e==="string")try{e=new SL(e,this.options)}catch(t){return!1}for(let t=0;t<this.set.length;t++)if(WL(this.set[t],e,this.options))return!0;return!1}}Bv.exports=Jl;var wL=qv(),Vv=new wL,vL=Xu(),cf=Ml(),st=Tl(),SL=zt(),{safeRe:pr,src:EL,t:Gt,comparatorTrimReplace:jL,tildeTrimReplace:PL,caretTrimReplace:kL}=ca(),{FLAG_INCLUDE_PRERELEASE:_L,FLAG_LOOSE:AL}=la(),RL=new RegExp(EL[Gt.BUILD],"g"),Wv=(e)=>e.value==="<0.0.0-0",OL=(e)=>e.value==="",Hv=(e,t)=>{let r=!0,n=e.slice(),s=n.pop();while(r&&n.length)r=n.every((i)=>s.intersects(i,t)),s=n.pop();return r},NL=(e,t)=>(e=e.replace(pr[Gt.BUILD],""),st("comp",e,t),e=JL(e,t),st("caret",e),e=TL(e,t),st("tildes",e),e=DL(e,t),st("xrange",e),e=FL(e,t),st("stars",e),e),It=(e)=>!e||e.toLowerCase()==="x"||e==="*",CL=(e,t,r)=>It(e)&&!It(t)||It(t)&&r&&!It(r),TL=(e,t)=>e.trim().split(/\s+/).map((r)=>IL(r,t)).join(" "),IL=(e,t)=>{let r=t.loose?pr[Gt.TILDELOOSE]:pr[Gt.TILDE],n=t.includePrerelease?"-0":"";return e.replace(r,(s,i,o,a,l)=>{st("tilde",e,s,i,o,a,l);let c;if(It(i))c="";else if(It(o))c=`>=${i}.0.0${n} <${+i+1}.0.0-0`;else if(It(a))c=`>=${i}.${o}.0${n} <${i}.${+o+1}.0-0`;else if(l)st("replaceTilde pr",l),c=`>=${i}.${o}.${a}-${l} <${i}.${+o+1}.0-0`;else c=`>=${i}.${o}.${a} <${i}.${+o+1}.0-0`;return st("tilde return",c),c})},JL=(e,t)=>e.trim().split(/\s+/).map((r)=>ML(r,t)).join(" "),ML=(e,t)=>{st("caret",e,t);let r=t.loose?pr[Gt.CARETLOOSE]:pr[Gt.CARET],n=t.includePrerelease?"-0":"";return e.replace(r,(s,i,o,a,l)=>{st("caret",e,s,i,o,a,l);let c;if(It(i))c="";else if(It(o))c=`>=${i}.0.0${n} <${+i+1}.0.0-0`;else if(It(a))if(i==="0")c=`>=${i}.${o}.0${n} <${i}.${+o+1}.0-0`;else c=`>=${i}.${o}.0${n} <${+i+1}.0.0-0`;else if(l)if(st("replaceCaret pr",l),i==="0")if(o==="0")c=`>=${i}.${o}.${a}-${l} <${i}.${o}.${+a+1}-0`;else c=`>=${i}.${o}.${a}-${l} <${i}.${+o+1}.0-0`;else c=`>=${i}.${o}.${a}-${l} <${+i+1}.0.0-0`;else if(st("no pr"),i==="0")if(o==="0")c=`>=${i}.${o}.${a} <${i}.${o}.${+a+1}-0`;else c=`>=${i}.${o}.${a} <${i}.${+o+1}.0-0`;else c=`>=${i}.${o}.${a} <${+i+1}.0.0-0`;return st("caret return",c),c})},DL=(e,t)=>(st("replaceXRanges",e,t),e.split(/\s+/).map((r)=>LL(r,t)).join(" ")),LL=(e,t)=>{e=e.trim();let r=t.loose?pr[Gt.XRANGELOOSE]:pr[Gt.XRANGE];return e.replace(r,(n,s,i,o,a,l)=>{if(st("xRange",e,n,s,i,o,a,l),CL(i,o,a))return e;let c=It(i),u=c||It(o),p=u||It(a),h=p;if(s==="="&&h)s="";if(l=t.includePrerelease?"-0":"",c)if(s===">"||s==="<")n="<0.0.0-0";else n="*";else if(s&&h){if(u)o=0;if(a=0,s===">")if(s=">=",u)i=+i+1,o=0,a=0;else o=+o+1,a=0;else if(s==="<=")if(s="<",u)i=+i+1;else o=+o+1;if(s==="<")l="-0";n=`${s+i}.${o}.${a}${l}`}else if(u)n=`>=${i}.0.0${l} <${+i+1}.0.0-0`;else if(p)n=`>=${i}.${o}.0${l} <${i}.${+o+1}.0-0`;return st("xRange return",n),n})},FL=(e,t)=>(st("replaceStars",e,t),e.trim().replace(pr[Gt.STAR],"")),qL=(e,t)=>(st("replaceGTE0",e,t),e.trim().replace(pr[t.includePrerelease?Gt.GTE0PRE:Gt.GTE0],"")),VL=(e)=>(t,r,n,s,i,o,a,l,c,u,p,h)=>{if(It(n))r="";else if(It(s))r=`>=${n}.0.0${e?"-0":""}`;else if(It(i))r=`>=${n}.${s}.0${e?"-0":""}`;else if(o)r=`>=${r}`;else r=`>=${r}${e?"-0":""}`;if(It(c))l="";else if(It(u))l=`<${+c+1}.0.0-0`;else if(It(p))l=`<${c}.${+u+1}.0-0`;else if(h)l=`<=${c}.${u}.${p}-${h}`;else if(e)l=`<${c}.${u}.${+p+1}-0`;else l=`<=${l}`;return`${r} ${l}`.trim()},WL=(e,t,r)=>{for(let n=0;n<e.length;n++)if(!e[n].test(t))return!1;if(t.prerelease.length&&!r.includePrerelease){for(let n=0;n<e.length;n++){if(st(e[n].semver),e[n].semver===cf.ANY)continue;if(e[n].semver.prerelease.length>0){let s=e[n].semver;if(s.major===t.major&&s.minor===t.minor&&s.patch===t.patch)return!0}}return!1}return!0}});var Ml=C(function(Rre,Xv){var Dl=Symbol("SemVer ANY");class uf{static get ANY(){return Dl}constructor(e,t){if(t=Uv(t),e instanceof uf)if(e.loose===!!t.loose)return e;else e=e.value;if(e=e.trim().split(/\s+/).join(" "),nh("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===Dl)this.value="";else this.value=this.operator+this.semver.version;nh("comp",this)}parse(e){let t=this.options.loose?zv[Gv.COMPARATORLOOSE]:zv[Gv.COMPARATOR],r=e.match(t);if(!r)throw TypeError(`Invalid comparator: ${e}`);if(this.operator=r[1]!==void 0?r[1]:"",this.operator==="=")this.operator="";if(!r[2])this.semver=Dl;else this.semver=new Kv(r[2],this.options.loose)}toString(){return this.value}test(e){if(nh("Comparator.test",e,this.options.loose),this.semver===Dl||e===Dl)return!0;if(typeof e==="string")try{e=new Kv(e,this.options)}catch(t){return!1}return rh(e,this.operator,this.semver,this.options)}intersects(e,t){if(!(e instanceof uf))throw TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new Yv(e.value,t).test(this.value)}else if(e.operator===""){if(e.value==="")return!0;return new Yv(this.value,t).test(e.semver)}if(t=Uv(t),t.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0"))return!1;if(!t.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&e.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&e.operator.startsWith("<"))return!0;if(this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("="))return!0;if(rh(this.semver,"<",e.semver,t)&&this.operator.startsWith(">")&&e.operator.startsWith("<"))return!0;if(rh(this.semver,">",e.semver,t)&&this.operator.startsWith("<")&&e.operator.startsWith(">"))return!0;return!1}}Xv.exports=uf;var Uv=Xu(),{safeRe:zv,t:Gv}=ca(),rh=th(),nh=Tl(),Kv=zt(),Yv=tn()});var Ll=C(function(Ore,Zv){var HL=tn(),BL=(e,t,r)=>{try{t=new HL(t,r)}catch(n){return!1}return t.test(e)};Zv.exports=BL});var eS=C(function(Nre,Qv){var UL=tn(),zL=(e,t)=>new UL(e,t).set.map((r)=>r.map((n)=>n.value).join(" ").trim().split(" "));Qv.exports=zL});var rS=C(function(Cre,tS){var GL=zt(),KL=tn(),YL=(e,t,r)=>{let n=null,s=null,i=null;try{i=new KL(t,r)}catch(o){return null}return e.forEach((o)=>{if(i.test(o)){if(!n||s.compare(o)===-1)n=o,s=new GL(n,r)}}),n};tS.exports=YL});var sS=C(function(Tre,nS){var XL=zt(),ZL=tn(),QL=(e,t,r)=>{let n=null,s=null,i=null;try{i=new ZL(t,r)}catch(o){return null}return e.forEach((o)=>{if(i.test(o)){if(!n||s.compare(o)===1)n=o,s=new XL(n,r)}}),n};nS.exports=QL});var aS=C(function(Ire,oS){var sh=zt(),eF=tn(),iS=Il(),tF=(e,t)=>{e=new eF(e,t);let r=new sh("0.0.0");if(e.test(r))return r;if(r=new sh("0.0.0-0"),e.test(r))return r;r=null;for(let n=0;n<e.set.length;++n){let s=e.set[n],i=null;if(s.forEach((o)=>{let a=new sh(o.semver.version);switch(o.operator){case">":if(a.prerelease.length===0)a.patch++;else a.prerelease.push(0);a.raw=a.format();case"":case">=":if(!i||iS(a,i))i=a;break;case"<":case"<=":break;default:throw Error(`Unexpected operation: ${o.operator}`)}}),i&&(!r||iS(r,i)))r=i}if(r&&e.test(r))return r;return null};oS.exports=tF});var cS=C(function(Jre,lS){var rF=tn(),nF=(e,t)=>{try{return new rF(e,t).range||"*"}catch(r){return null}};lS.exports=nF});var ff=C(function(Mre,pS){var sF=zt(),dS=Ml(),{ANY:iF}=dS,oF=tn(),aF=Ll(),uS=Il(),fS=nf(),lF=of(),cF=sf(),uF=(e,t,r,n)=>{e=new sF(e,n),t=new oF(t,n);let s,i,o,a,l;switch(r){case">":s=uS,i=lF,o=fS,a=">",l=">=";break;case"<":s=fS,i=cF,o=uS,a="<",l="<=";break;default:throw TypeError('Must provide a hilo val of "<" or ">"')}if(aF(e,t,n))return!1;for(let c=0;c<t.set.length;++c){let u=t.set[c],p=null,h=null;if(u.forEach((m)=>{if(m.semver===iF)m=new dS(">=0.0.0");if(p=p||m,h=h||m,s(m.semver,p.semver,n))p=m;else if(o(m.semver,h.semver,n))h=m}),p.operator===a||p.operator===l)return!1;if((!h.operator||h.operator===a)&&i(e,h.semver))return!1;else if(h.operator===l&&o(e,h.semver))return!1}return!0};pS.exports=uF});var hS=C(function(Dre,mS){var fF=ff(),dF=(e,t,r)=>fF(e,t,">",r);mS.exports=dF});var yS=C(function(Lre,gS){var pF=ff(),mF=(e,t,r)=>pF(e,t,"<",r);gS.exports=mF});var $S=C(function(Fre,xS){var bS=tn(),hF=(e,t,r)=>(e=new bS(e,r),t=new bS(t,r),e.intersects(t,r));xS.exports=hF});var vS=C(function(qre,wS){var gF=Ll(),yF=en();wS.exports=(e,t,r)=>{let n=[],s=null,i=null,o=e.sort((u,p)=>yF(u,p,r));for(let u of o)if(gF(u,t,r)){if(i=u,!s)s=u}else{if(i)n.push([s,i]);i=null,s=null}if(s)n.push([s,null]);let a=[];for(let[u,p]of n)if(u===p)a.push(u);else if(!p&&u===o[0])a.push("*");else if(!p)a.push(`>=${u}`);else if(u===o[0])a.push(`<=${p}`);else a.push(`${u} - ${p}`);let l=a.join(" || "),c=typeof t.raw==="string"?t.raw:String(t);return l.length<c.length?l:t}});var _S=C(function(Vre,kS){var SS=tn(),ah=Ml(),{ANY:ih}=ah,oh=Ll(),lh=en(),bF=(e,t,r={})=>{if(e===t)return!0;e=new SS(e,r),t=new SS(t,r);let n=!1;e:for(let s of e.set){for(let i of t.set){let o=$F(s,i,r);if(n=n||o!==null,o)continue e}if(n)return!1}return!0},xF=[new ah(">=0.0.0-0")],ES=[new ah(">=0.0.0")],$F=(e,t,r)=>{if(e===t)return!0;if(e.length===1&&e[0].semver===ih)if(t.length===1&&t[0].semver===ih)return!0;else if(r.includePrerelease)e=xF;else e=ES;if(t.length===1&&t[0].semver===ih)if(r.includePrerelease)return!0;else t=ES;let n=new Set,s,i;for(let m of e)if(m.operator===">"||m.operator===">=")s=jS(s,m,r);else if(m.operator==="<"||m.operator==="<=")i=PS(i,m,r);else n.add(m.semver);if(n.size>1)return null;let o;if(s&&i){if(o=lh(s.semver,i.semver,r),o>0)return null;else if(o===0&&(s.operator!==">="||i.operator!=="<="))return null}for(let m of n){if(s&&!oh(m,String(s),r))return null;if(i&&!oh(m,String(i),r))return null;for(let b of t)if(!oh(m,String(b),r))return!1;return!0}let a,l,c,u,p=i&&!r.includePrerelease&&i.semver.prerelease.length?i.semver:!1,h=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1;if(p&&p.prerelease.length===1&&i.operator==="<"&&p.prerelease[0]===0)p=!1;for(let m of t){if(u=u||m.operator===">"||m.operator===">=",c=c||m.operator==="<"||m.operator==="<=",s){if(h){if(m.semver.prerelease&&m.semver.prerelease.length&&m.semver.major===h.major&&m.semver.minor===h.minor&&m.semver.patch===h.patch)h=!1}if(m.operator===">"||m.operator===">="){if(a=jS(s,m,r),a===m&&a!==s)return!1}else if(s.operator===">="&&!m.test(s.semver))return!1}if(i){if(p){if(m.semver.prerelease&&m.semver.prerelease.length&&m.semver.major===p.major&&m.semver.minor===p.minor&&m.semver.patch===p.patch)p=!1}if(m.operator==="<"||m.operator==="<="){if(l=PS(i,m,r),l===m&&l!==i)return!1}else if(i.operator==="<="&&!m.test(i.semver))return!1}if(!m.operator&&(i||s)&&o!==0)return!1}if(s&&c&&!i&&o!==0)return!1;if(i&&u&&!s&&o!==0)return!1;if(h||p)return!1;return!0},jS=(e,t,r)=>{if(!e)return t;let n=lh(e.semver,t.semver,r);return n>0?e:n<0?t:t.operator===">"&&e.operator===">="?t:e},PS=(e,t,r)=>{if(!e)return t;let n=lh(e.semver,t.semver,r);return n<0?e:n>0?t:t.operator==="<"&&e.operator==="<="?t:e};kS.exports=bF});var RS=C(function(Wre,AS){var ua=ca(),df=la(),wF=zt(),pf=Xm(),vF=Qs(),SF=Zw(),EF=ev(),jF=nv(),PF=ov(),kF=lv(),_F=uv(),AF=dv(),RF=mv(),OF=en(),NF=bv(),CF=$v(),TF=rf(),IF=Ev(),JF=Pv(),MF=Il(),DF=nf(),LF=Qm(),FF=eh(),qF=sf(),VF=of(),WF=th(),HF=Iv(),BF=Dv(),UF=Ml(),zF=tn(),GF=Ll(),KF=eS(),YF=rS(),XF=sS(),ZF=aS(),QF=cS(),e5=ff(),t5=hS(),r5=yS(),n5=$S(),s5=vS(),i5=_S();AS.exports={parse:vF,valid:SF,clean:EF,inc:jF,diff:PF,major:kF,minor:_F,patch:AF,prerelease:RF,compare:OF,rcompare:NF,compareLoose:CF,compareBuild:TF,sort:IF,rsort:JF,gt:MF,lt:DF,eq:LF,neq:FF,gte:qF,lte:VF,cmp:WF,coerce:HF,truncate:BF,Comparator:UF,Range:zF,satisfies:GF,toComparators:KF,maxSatisfying:YF,minSatisfying:XF,minVersion:ZF,validRange:QF,outside:e5,gtr:t5,ltr:r5,intersects:n5,simplifyRange:s5,subset:i5,SemVer:wF,re:ua.re,src:ua.src,tokens:ua.t,SEMVER_SPEC_VERSION:df.SEMVER_SPEC_VERSION,RELEASE_TYPES:df.RELEASE_TYPES,compareIdentifiers:pf.compareIdentifiers,rcompareIdentifiers:pf.rcompareIdentifiers}});var _s;var mf=D(()=>{_s={name:"sharp",description:"High performance Node.js image processing, the fastest module to resize JPEG, PNG, WebP, GIF, AVIF and TIFF images",version:"0.35.5",author:"Lovell Fuller <npm@lovell.info>",homepage:"https://sharp.pixelplumbing.com",contributors:["Pierre Inglebert <pierre.inglebert@gmail.com>","Jonathan Ong <jonathanrichardong@gmail.com>","Chanon Sajjamanochai <chanon.s@gmail.com>","Juliano Julio <julianojulio@gmail.com>","Daniel Gasienica <daniel@gasienica.ch>","Julian Walker <julian@fiftythree.com>","Amit Pitaru <pitaru.amit@gmail.com>","Brandon Aaron <hello.brandon@aaron.sh>","Andreas Lind <andreas@one.com>","Maurus Cuelenaere <mcuelenaere@gmail.com>","Linus Unnebäck <linus@folkdatorn.se>","Victor Mateevitsi <mvictoras@gmail.com>","Alaric Holloway <alaric.holloway@gmail.com>","Bernhard K. Weisshuhn <bkw@codingforce.com>","Chris Riley <criley@primedia.com>","David Carley <dacarley@gmail.com>","John Tobin <john@limelightmobileinc.com>","Kenton Gray <kentongray@gmail.com>","Felix Bünemann <Felix.Buenemann@gmail.com>","Samy Al Zahrani <samyalzahrany@gmail.com>","Chintan Thakkar <lemnisk8@gmail.com>","F. Orlando Galashan <frulo@gmx.de>","Kleis Auke Wolthuizen <info@kleisauke.nl>","Matt Hirsch <mhirsch@media.mit.edu>","Matthias Thoemmes <thoemmes@gmail.com>","Patrick Paskaris <patrick@paskaris.gr>","Jérémy Lal <kapouer@melix.org>","Rahul Nanwani <r.nanwani@gmail.com>","Alice Monday <alice0meta@gmail.com>","Kristo Jorgenson <kristo.jorgenson@gmail.com>","YvesBos <yves_bos@outlook.com>","Guy Maliar <guy@tailorbrands.com>","Nicolas Coden <nicolas@ncoden.fr>","Matt Parrish <matt.r.parrish@gmail.com>","Marcel Bretschneider <marcel.bretschneider@gmail.com>","Matthew McEachen <matthew+github@mceachen.org>","Jarda Kotěšovec <jarda.kotesovec@gmail.com>","Kenric D'Souza <kenric.dsouza@gmail.com>","Oleh Aleinyk <oleg.aleynik@gmail.com>","Marcel Bretschneider <marcel.bretschneider@gmail.com>","Andrea Bianco <andrea.bianco@unibas.ch>","Rik Heywood <rik@rik.org>","Thomas Parisot <hi@oncletom.io>","Nathan Graves <nathanrgraves+github@gmail.com>","Tom Lokhorst <tom@lokhorst.eu>","Espen Hovlandsdal <espen@hovlandsdal.com>","Sylvain Dumont <sylvain.dumont35@gmail.com>","Alun Davies <alun.owain.davies@googlemail.com>","Aidan Hoolachan <ajhoolachan21@gmail.com>","Axel Eirola <axel.eirola@iki.fi>","Freezy <freezy@xbmc.org>","Daiz <taneli.vatanen@gmail.com>","Julian Aubourg <j@ubourg.net>","Keith Belovay <keith@picthrive.com>","Michael B. Klein <mbklein@gmail.com>","Jordan Prudhomme <jordan@raboland.fr>","Ilya Ovdin <iovdin@gmail.com>","Andargor <andargor@yahoo.com>","Paul Neave <paul.neave@gmail.com>","Brendan Kennedy <brenwken@gmail.com>","Brychan Bennett-Odlum <git@brychan.io>","Edward Silverton <e.silverton@gmail.com>","Roman Malieiev <aromaleev@gmail.com>","Tomas Szabo <tomas.szabo@deftomat.com>","Robert O'Rourke <robert@o-rourke.org>","Guillermo Alfonso Varela Chouciño <guillevch@gmail.com>","Christian Flintrup <chr@gigahost.dk>","Manan Jadhav <manan@motionden.com>","Leon Radley <leon@radley.se>","alza54 <alza54@thiocod.in>","Jacob Smith <jacob@frende.me>","Michael Nutt <michael@nutt.im>","Brad Parham <baparham@gmail.com>","Taneli Vatanen <taneli.vatanen@gmail.com>","Joris Dugué <zaruike10@gmail.com>","Chris Banks <christopher.bradley.banks@gmail.com>","Ompal Singh <ompal.hitm09@gmail.com>","Brodan <christopher.hranj@gmail.com>","Ankur Parihar <ankur.github@gmail.com>","Brahim Ait elhaj <brahima@gmail.com>","Mart Jansink <m.jansink@gmail.com>","Lachlan Newman <lachnewman007@gmail.com>","Dennis Beatty <dennis@dcbeatty.com>","Ingvar Stepanyan <me@rreverser.com>","Don Denton <don@happycollision.com>","Dmytro Tiapukhin <cool.gegeg@gmail.com>","Florian Lefebvre <contact@florian-lefebvre.dev>"],scripts:{build:"node install/build.js","build:dist":"node scripts/build.mjs",clean:"rm -rf src/build/ test/fixtures/output.*",test:"npm run lint && npm run test-unit",lint:"npm run lint-cpp && npm run lint-js && npm run lint-types && npm run lint-publish","lint-cpp":"cpplint --quiet src/*.h src/*.cc","lint-js":"biome lint","lint-publish":"publint --strict","lint-types":"tsd --files ./test/types/sharp.test-d.{cts,mts}","test-leak":"./test/leak/leak.sh","test-unit":"node --experimental-test-coverage test/unit.mjs","package-from-local-build":"node npm/from-local-build.js","package-wasm-wrappers":"node npm/wasm-wrappers.js","package-release-notes":"node npm/release-notes.js","docs-build":"node docs/build.mjs","docs-serve":"cd docs && npm start","docs-publish":"cd docs && npm run build && npx firebase-tools deploy --project pixelplumbing --only hosting:pixelplumbing-sharp"},type:"commonjs",files:["dist","install","lib/index.d.ts","src/*.{cc,h,gyp}"],main:"./dist/index.cjs",module:"./dist/index.mjs",types:"./dist/index.d.mts",exports:{".":{import:{types:"./dist/index.d.mts",default:"./dist/index.mjs"},require:{types:"./dist/index.d.cts",default:"./dist/index.cjs"}}},sideEffects:!0,repository:{type:"git",url:"git+https://github.com/lovell/sharp.git"},keywords:["jpeg","png","webp","avif","tiff","gif","svg","jp2","dzi","image","resize","thumbnail","crop","embed","libvips","vips"],dependencies:{"@img/colour":"^1.1.0","detect-libc":"^2.1.2",semver:"^7.8.5"},optionalDependencies:{"@img/sharp-darwin-arm64":"0.35.5","@img/sharp-darwin-x64":"0.35.5","@img/sharp-freebsd-wasm32":"0.35.5","@img/sharp-libvips-darwin-arm64":"1.3.4","@img/sharp-libvips-darwin-x64":"1.3.4","@img/sharp-libvips-linux-arm":"1.3.4","@img/sharp-libvips-linux-arm64":"1.3.4","@img/sharp-libvips-linux-ppc64":"1.3.4","@img/sharp-libvips-linux-riscv64":"1.3.4","@img/sharp-libvips-linux-s390x":"1.3.4","@img/sharp-libvips-linux-x64":"1.3.4","@img/sharp-libvips-linuxmusl-arm64":"1.3.4","@img/sharp-libvips-linuxmusl-x64":"1.3.4","@img/sharp-linux-arm":"0.35.5","@img/sharp-linux-arm64":"0.35.5","@img/sharp-linux-ppc64":"0.35.5","@img/sharp-linux-riscv64":"0.35.5","@img/sharp-linux-s390x":"0.35.5","@img/sharp-linux-x64":"0.35.5","@img/sharp-linuxmusl-arm64":"0.35.5","@img/sharp-linuxmusl-x64":"0.35.5","@img/sharp-webcontainers-wasm32":"0.35.5","@img/sharp-win32-arm64":"0.35.5","@img/sharp-win32-ia32":"0.35.5","@img/sharp-win32-x64":"0.35.5"},peerDependenciesMeta:{"@types/node":{optional:!0}},devDependencies:{"@biomejs/biome":"^2.5.14","@cpplint/cli":"^0.1.0","@emnapi/runtime":"^1.11.3","@img/sharp-libvips-dev":"1.3.4","@img/sharp-libvips-dev-wasm32":"1.3.4","@img/sharp-libvips-win32-arm64":"1.3.4","@img/sharp-libvips-win32-ia32":"1.3.4","@img/sharp-libvips-win32-x64":"1.3.4","@types/node":"*",emnapi:"^1.11.3","exif-reader":"^2.0.3",icc:"^4.0.0","node-addon-api":"^8.9.2","node-gyp":"^12.4.0",publint:"^0.3.24","tar-fs":"^3.1.3",tsd:"^0.33.0",yauzl:"^3.4.0"},license:"Apache-2.0",engines:{node:">=20.9.0"},config:{libvips:">=8.18.7"},funding:{url:"https://opencollective.com/libvips"}}});import{spawnSync as Fl}from"node:child_process";import{createHash as a5}from"node:crypto";var ql,uh,l5,NS,c5,fh,u5=(e)=>{if(e instanceof Error)console.error(`sharp: Installation error: ${e.message}`);else console.log(`sharp: ${e}`)},CS=()=>uh.default.isNonGlibcLinuxSync()?uh.default.familySync():"",f5=()=>`${process.platform}${CS()}-${process.arch}`,fa=()=>{if(TS())return"wasm32";let{npm_config_arch:e,npm_config_platform:t,npm_config_libc:r}=process.env,n=typeof r==="string"?r:CS();return`${t||process.platform}${n}-${e||process.arch}`},d5=()=>{try{return Be(`@img/sharp-libvips-dev-${fa()}/include`)}catch{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/include");})()}catch{}}return""},p5=()=>{try{return (()=>{throw new Error("Cannot require module "+"@img/sharp-libvips-dev/cplusplus");})()}catch{}return""},m5=()=>{try{return Be(`@img/sharp-libvips-dev-${fa()}/lib`)}catch{try{return Be(`@img/sharp-libvips-${fa()}/lib`)}catch{}}return""},h5=()=>{if(process.release?.name==="node"&&process.versions){if(!ql.default.satisfies(process.versions.node,_s.engines.node))return{found:process.versions.node,expected:_s.engines.node}}},TS=()=>{let{CC:e}=process.env;return Boolean(e?.endsWith("/emcc"))},g5=()=>{if(process.platform==="darwin"&&process.arch==="x64")return(Fl("sysctl sysctl.proc_translated",fh).stdout||"").trim()==="sysctl.proc_translated: 1";return!1},OS=(e)=>a5("sha512").update(e).digest("hex"),y5=()=>{try{let e=OS(`imgsharp-libvips-${fa()}`),t=ql.default.coerce(_s.optionalDependencies[`@img/sharp-libvips-${fa()}`],{includePrerelease:!0}).version;return OS(`${e}npm:${t}`).slice(0,10)}catch{}return""},b5=()=>Fl(`node-gyp rebuild --directory=src ${TS()?"--nodedir=emscripten":""}`,{...fh,stdio:"inherit"}).status,IS=()=>{if(process.platform!=="win32")return(Fl("pkg-config --modversion vips-cpp",{...fh,env:{...process.env,PKG_CONFIG_PATH:JS()}}).stdout||"").trim();else return""},x5=()=>{try{let e=(Fl("brew",["--prefix"],{encoding:"utf8"}).stdout||"").trim();if(e)return`${e}/lib/pkgconfig`}catch(e){}return},$5=()=>{try{let e=(Fl("pkg-config",["--variable","pc_path","pkg-config"],{encoding:"utf8"}).stdout||"").trim();if(e)return e}catch(e){}return},JS=()=>{if(process.platform!=="win32")return[x5(),$5(),process.env.PKG_CONFIG_PATH].filter(Boolean).join(":");else return""},ch=(e,t,r)=>{if(r)r(`Detected ${t}, skipping search for globally-installed libvips`);return e},w5=(e)=>{if(Boolean(process.env.SHARP_IGNORE_GLOBAL_LIBVIPS)===!0)return ch(!1,"SHARP_IGNORE_GLOBAL_LIBVIPS",e);if(Boolean(process.env.SHARP_FORCE_GLOBAL_LIBVIPS)===!0)return ch(!0,"SHARP_FORCE_GLOBAL_LIBVIPS",e);if(g5())return ch(!1,"Rosetta",e);let t=IS();return!!t&&ql.default.gte(t,NS)},hf;var dh=D(()=>{mf();ql=br(RS(),1),uh=br(Yu(),1);/*!
|
|
376
376
|
Copyright 2013 Lovell Fuller and others.
|
|
377
377
|
SPDX-License-Identifier: Apache-2.0
|
|
378
|
-
*/
|
|
378
|
+
*/l5=process.env.npm_package_config_libvips||_s.config.libvips,NS=ql.default.coerce(l5).version,c5=["darwin-arm64","darwin-x64","freebsd-arm64","freebsd-x64","linux-arm","linux-arm64","linux-ppc64","linux-riscv64","linux-s390x","linux-wasm32","linux-x64","linuxmusl-arm64","linuxmusl-x64","win32-arm64","win32-ia32","win32-x64"],fh={encoding:"utf8",shell:!0},hf={minimumLibvipsVersion:NS,prebuiltPlatforms:c5,buildPlatformArch:fa,buildSharpLibvipsIncludeDir:d5,buildSharpLibvipsCPlusPlusDir:p5,buildSharpLibvipsLibDir:m5,isUnsupportedNodeRuntime:h5,runtimePlatformArch:f5,log:u5,yarnLocator:y5,spawnRebuild:b5,globalLibvipsVersion:IS,pkgConfigPath:JS,useGlobalLibvips:w5}});import{createRequire as v5}from"node:module";var gf,Jt,DS,S5,MS,E5,j5,As,Qe,ei,Ve;var Vl=D(()=>{dh();mf();gf=br(Yu(),1);/*!
|
|
379
379
|
Copyright 2013 Lovell Fuller and others.
|
|
380
380
|
SPDX-License-Identifier: Apache-2.0
|
|
381
|
-
*/Jt=
|
|
382
|
-
`))}
|
|
381
|
+
*/Jt=v5(import.meta.url),{version:DS}=_s,{runtimePlatformArch:S5,isUnsupportedNodeRuntime:MS,prebuiltPlatforms:E5,minimumLibvipsVersion:j5}=hf,As=S5(),ei=[];try{Qe=Jt(`../src/build/Release/sharp-${As}-${DS}.node`)}catch(e){ei.push(e)}if(!Qe)try{Qe=Jt(`../src/build/Release/sharp-wasm32-${DS}.node`)}catch(e){ei.push(e)}if(!Qe)try{switch(As){case"darwin-arm64":Qe=Jt("@img/sharp-darwin-arm64/sharp.node");break;case"darwin-x64":Qe=Jt("@img/sharp-darwin-x64/sharp.node");break;case"linux-arm":Qe=Jt("@img/sharp-linux-arm/sharp.node");break;case"linux-arm64":Qe=Jt("@img/sharp-linux-arm64/sharp.node");break;case"linux-ppc64":Qe=Jt("@img/sharp-linux-ppc64/sharp.node");break;case"linux-riscv64":Qe=Jt("@img/sharp-linux-riscv64/sharp.node");break;case"linux-s390x":Qe=Jt("@img/sharp-linux-s390x/sharp.node");break;case"linux-x64":Qe=Jt("@img/sharp-linux-x64/sharp.node");break;case"linuxmusl-arm64":Qe=Jt("@img/sharp-linuxmusl-arm64/sharp.node");break;case"linuxmusl-x64":Qe=Jt("@img/sharp-linuxmusl-x64/sharp.node");break;case"win32-arm64":Qe=Jt("@img/sharp-win32-arm64/sharp.node");break;case"win32-ia32":Qe=Jt("@img/sharp-win32-ia32/sharp.node");break;case"win32-x64":Qe=Jt("@img/sharp-win32-x64/sharp.node");break;case"freebsd-arm64":case"freebsd-x64":Qe=Jt("@img/sharp-freebsd-wasm32/sharp.node");break;case"linux-wasm32":Qe=Jt("@img/sharp-webcontainers-wasm32/sharp.node");break}if(Qe&&["linux-x64","linuxmusl-x64"].includes(As)&&!Qe._isUsingX64V2()){let e=Error("Prebuilt binaries for Linux x64 require v2 microarchitecture");e.code="Unsupported CPU",ei.push(e),Qe=null}if(Qe&&process.versions.electron&&As.startsWith("linux"))process.emitWarning("Binaries provided by Electron for use on Linux may be incompatible with sharp - see https://sharp.pixelplumbing.com/install#electron-and-linux",{code:"SharpElectronLinux"})}catch(e){ei.push(e)}if(!Qe)try{Qe=Jt("@img/sharp-wasm32/sharp.node")}catch(e){ei.push(e)}if(!Qe){let[e,t,r]=["linux","darwin","win32"].map((i)=>As.startsWith(i)),n=[`Could not load the "sharp" module using the ${As} runtime`];ei.forEach((i)=>{if(!i.code?.endsWith("MODULE_NOT_FOUND"))n.push(i.code?`${i.code}: ${i.message}`:i.message)});let s=ei.map((i)=>i.message).join(" ");if(n.push("Possible solutions:"),MS()){let{found:i,expected:o}=MS();n.push("- Please upgrade Node.js:",` Found ${i}`,` Requires ${o}`)}else if(E5.includes(As)&&!/libstdc\+\+\.so/.test(s)){let[i,o]=As.split("-"),a=i.endsWith("musl")?" --libc=musl":"";n.push("- Ensure optional dependencies can be installed:"," npm install --include=optional sharp","- Ensure your package manager supports multi-platform installation:"," See https://sharp.pixelplumbing.com/install#cross-platform","- Add platform-specific dependencies:",` npm install --os=${i.replace("musl","")}${a} --cpu=${o} sharp`)}else n.push(`- Manually install libvips >= ${j5}`," See https://sharp.pixelplumbing.com/install#building-from-source","- Add WebAssembly-based dependencies:"," npm install sharp @img/sharp-wasm32");if(e&&/(symbol not found|CXXABI_)/i.test(s))try{let{config:i}=Jt(`@img/sharp-libvips-${As}/package`),o=`${gf.familySync()} ${gf.versionSync()}`,a=`${i.musl?"musl":"glibc"} ${i.musl||i.glibc}`;n.push("- Update your OS:",` Found ${o}`,` Requires ${a}`)}catch(i){}if(e&&/\/snap\/core[0-9]{2}/.test(s))n.push("- Remove the Node.js Snap, which does not support native modules"," snap remove node");if(t&&/Incompatible library version/.test(s))n.push("- Update Homebrew:"," brew update && brew upgrade vips");if(ei.some((i)=>i.code==="ERR_DLOPEN_DISABLED"))n.push("- Run Node.js without using the --no-addons flag");if(r&&/The specified procedure could not be found/.test(s))n.push("- Using the canvas package on Windows?"," See https://sharp.pixelplumbing.com/install#canvas-and-windows","- Check for outdated versions of sharp in the dependency tree:"," npm ls sharp");throw n.push("- Consult the installation documentation:"," See https://sharp.pixelplumbing.com/install"),Error(n.join(`
|
|
382
|
+
`))}Ve=Qe});import P5 from"node:util";import ph from"node:stream";function A5(){let e=this.constructor.call(),{debuglog:t,queueListener:r,...n}=this.options;if(e.options=structuredClone(n),e.options.debuglog=t,e.options.queueListener=r,this._isStreamInput())this._whenStreamInFinished(()=>{this._flattenBufferIn(),e.options.input.buffer=this.options.input.buffer,e.emit("finish")});return e}var k5,_5=(e)=>{io.queue.emit("change",e)},io=function(e,t){if(arguments.length===1&&!f.defined(e))throw Error("Invalid input");if(!(this instanceof io))return new io(e,t);return ph.Duplex.call(this),this.options={topOffsetPre:-1,leftOffsetPre:-1,widthPre:-1,heightPre:-1,topOffsetPost:-1,leftOffsetPost:-1,widthPost:-1,heightPost:-1,width:-1,height:-1,canvas:"crop",position:0,resizeBackground:[0,0,0,255],angle:0,rotationAngle:0,rotationBackground:[0,0,0,255],rotateBefore:!1,orientBefore:!1,flip:!1,flop:!1,extendTop:0,extendBottom:0,extendLeft:0,extendRight:0,extendBackground:[0,0,0,255],extendWith:"background",withoutEnlargement:!1,withoutReduction:!1,affineMatrix:[],affineBackground:[0,0,0,255],affineIdx:0,affineIdy:0,affineOdx:0,affineOdy:0,affineInterpolator:this.constructor.interpolators.bilinear,kernel:"lanczos3",fastShrinkOnLoad:!0,tint:[-1,0,0,0],flatten:!1,flattenBackground:[0,0,0],unflatten:!1,negate:!1,negateAlpha:!0,medianSize:0,blurSigma:0,precision:"integer",minAmpl:0.2,sharpenSigma:0,sharpenM1:1,sharpenM2:2,sharpenX1:2,sharpenY2:10,sharpenY3:20,threshold:0,thresholdGrayscale:!0,trimBackground:[],trimThreshold:-1,trimLineArt:!1,trimMargin:0,dilateWidth:0,erodeWidth:0,gamma:0,gammaOut:0,greyscale:!1,normalise:!1,normaliseLower:1,normaliseUpper:99,claheWidth:0,claheHeight:0,claheMaxSlope:3,brightness:1,saturation:1,hue:0,lightness:0,booleanBufferIn:null,booleanFileIn:"",joinChannelIn:[],extractChannel:-1,removeAlpha:!1,ensureAlpha:-1,colourspace:"srgb",colourspacePipeline:"last",composite:[],fileOut:"",formatOut:"input",streamOut:!1,typedArrayOut:!1,keepMetadata:0,withMetadataOrientation:-1,withMetadataDensity:0,withIccProfile:"",withExif:{},withExifMerge:!0,withXmp:"",keepGainMap:!1,withGainMap:!1,resolveWithObject:!1,loop:-1,delay:[],jpegQuality:80,jpegProgressive:!1,jpegChromaSubsampling:"4:2:0",jpegTrellisQuantisation:!1,jpegOvershootDeringing:!1,jpegOptimiseScans:!1,jpegOptimiseCoding:!0,jpegQuantisationTable:0,pngProgressive:!1,pngCompressionLevel:6,pngAdaptiveFiltering:!1,pngPalette:!1,pngQuality:100,pngEffort:7,pngBitdepth:8,pngDither:1,jp2Quality:80,jp2TileHeight:512,jp2TileWidth:512,jp2Lossless:!1,jp2ChromaSubsampling:"4:4:4",webpQuality:80,webpAlphaQuality:100,webpLossless:!1,webpNearLossless:!1,webpSmartSubsample:!1,webpSmartDeblock:!1,webpPreset:"default",webpEffort:4,webpMinSize:!1,webpMixed:!1,webpExact:!1,gifBitdepth:8,gifEffort:7,gifDither:1,gifInterFrameMaxError:0,gifInterPaletteMaxError:3,gifKeepDuplicateFrames:!1,gifReuse:!0,gifProgressive:!1,tiffQuality:80,tiffCompression:"jpeg",tiffBigtiff:!1,tiffPredictor:"horizontal",tiffPyramid:!1,tiffMiniswhite:!1,tiffBitdepth:0,tiffTile:!1,tiffTileHeight:256,tiffTileWidth:256,tiffXres:1,tiffYres:1,tiffResolutionUnit:"inch",heifQuality:50,heifLossless:!1,heifCompression:"av1",heifEffort:4,heifChromaSubsampling:"4:4:4",heifBitdepth:8,heifTune:"auto",jxlDistance:1,jxlDecodingTier:0,jxlEffort:7,jxlLossless:!1,rawDepth:"uchar",tileSize:256,tileOverlap:0,tileContainer:"fs",tileLayout:"dz",tileFormat:"last",tileDepth:"last",tileAngle:0,tileSkipBlanks:-1,tileBackground:[255,255,255,255],tileCentre:!1,tileId:"https://example.com/iiif",tileBasename:"",timeoutSeconds:0,linearA:[],linearB:[],pdfBackground:[255,255,255,255],debuglog:(r)=>{this.emit("warning",r),k5(r)},queueListener:_5},this.options.input=this._createInputDescriptor(e,t,{allowStream:!0}),this},Jn;var LS=D(()=>{On();Vl();/*!
|
|
383
383
|
Copyright 2013 Lovell Fuller and others.
|
|
384
384
|
SPDX-License-Identifier: Apache-2.0
|
|
385
|
-
*/o5=i5.debuglog("sharp");Object.setPrototypeOf(so.prototype,oh.Duplex.prototype);Object.setPrototypeOf(so,oh.Duplex);Object.assign(so.prototype,{clone:l5});Jn=so});function OS(e){let t=u5.filter((r)=>f.defined(e[r])).map((r)=>[r,e[r]]);return t.length?Object.fromEntries(t):void 0}function f5(e,t,r){let n={autoOrient:!1,failOn:"warning",limitInputPixels:268402689,limitInputChannels:5,ignoreIcc:!1,unlimited:!1,sequentialRead:!0};if(f.string(e))n.file=e;else if(f.buffer(e)){if(e.length===0)throw Error("Input Buffer is empty");n.buffer=e}else if(f.arrayBuffer(e)){if(e.byteLength===0)throw Error("Input bit Array is empty");n.buffer=Buffer.from(e,0,e.byteLength)}else if(f.typedArray(e)){if(e.length===0)throw Error("Input Bit Array is empty");n.buffer=Buffer.from(e.buffer,e.byteOffset,e.byteLength)}else if(f.plainObject(e)&&!f.defined(t)){if(t=e,OS(t))n.buffer=[]}else if(!f.defined(e)&&!f.defined(t)&&f.object(r)&&r.allowStream)n.buffer=[];else if(Array.isArray(e))if(e.length>1)if(!this.options.joining)this.options.joining=!0,this.options.join=e.map((s)=>this._createInputDescriptor(s));else throw Error("Recursive join is unsupported");else throw Error("Expected at least two images to join");else throw Error(`Unsupported input '${e}' of type ${typeof e}${f.defined(t)?` when also providing options of type ${typeof t}`:""}`);if(f.object(t)){if(f.defined(t.failOn))if(f.string(t.failOn)&&f.inArray(t.failOn,["none","truncated","error","warning"]))n.failOn=t.failOn;else throw f.invalidParameterError("failOn","one of: none, truncated, error, warning",t.failOn);if(f.defined(t.autoOrient))if(f.bool(t.autoOrient))n.autoOrient=t.autoOrient;else throw f.invalidParameterError("autoOrient","boolean",t.autoOrient);if(f.defined(t.density))if(f.number(t.density)&&f.inRange(t.density,1,1e5))n.density=t.density;else throw f.invalidParameterError("density","number between 1 and 100000",t.density);if(f.defined(t.ignoreIcc))if(f.bool(t.ignoreIcc))n.ignoreIcc=t.ignoreIcc;else throw f.invalidParameterError("ignoreIcc","boolean",t.ignoreIcc);if(f.defined(t.limitInputPixels))if(f.bool(t.limitInputPixels))n.limitInputPixels=t.limitInputPixels?268402689:0;else if(f.integer(t.limitInputPixels)&&f.inRange(t.limitInputPixels,0,Number.MAX_SAFE_INTEGER))n.limitInputPixels=t.limitInputPixels;else throw f.invalidParameterError("limitInputPixels","positive integer",t.limitInputPixels);if(f.defined(t.limitInputChannels))if(f.bool(t.limitInputChannels))n.limitInputChannels=t.limitInputChannels?5:0;else if(f.integer(t.limitInputChannels)&&f.inRange(t.limitInputChannels,0,Number.MAX_SAFE_INTEGER))n.limitInputChannels=t.limitInputChannels;else throw f.invalidParameterError("limitInputChannels","positive integer",t.limitInputChannels);if(f.defined(t.unlimited))if(f.bool(t.unlimited))n.unlimited=t.unlimited;else throw f.invalidParameterError("unlimited","boolean",t.unlimited);if(f.defined(t.sequentialRead))if(f.bool(t.sequentialRead))n.sequentialRead=t.sequentialRead;else throw f.invalidParameterError("sequentialRead","boolean",t.sequentialRead);if(f.defined(t.raw)){if(f.object(t.raw)&&f.integer(t.raw.width)&&f.inRange(t.raw.width,1,1e8)&&f.integer(t.raw.height)&&f.inRange(t.raw.height,1,1e8)&&f.integer(t.raw.channels)&&f.inRange(t.raw.channels,1,4))switch(n.rawWidth=t.raw.width,n.rawHeight=t.raw.height,n.rawChannels=t.raw.channels,e.constructor){case Uint8Array:case Uint8ClampedArray:n.rawDepth="uchar";break;case Int8Array:n.rawDepth="char";break;case Uint16Array:n.rawDepth="ushort";break;case Int16Array:n.rawDepth="short";break;case Uint32Array:n.rawDepth="uint";break;case Int32Array:n.rawDepth="int";break;case Float32Array:n.rawDepth="float";break;case Float64Array:n.rawDepth="double";break;default:n.rawDepth="uchar";break}else throw Error("Expected width, height and channels for raw pixel input");if(n.rawPremultiplied=!1,f.defined(t.raw.premultiplied))if(f.bool(t.raw.premultiplied))n.rawPremultiplied=t.raw.premultiplied;else throw f.invalidParameterError("raw.premultiplied","boolean",t.raw.premultiplied);if(n.rawPageHeight=0,f.defined(t.raw.pageHeight))if(f.integer(t.raw.pageHeight)&&t.raw.pageHeight>0&&t.raw.pageHeight<=t.raw.height){if(t.raw.height%t.raw.pageHeight!==0)throw Error(`Expected raw.height ${t.raw.height} to be a multiple of raw.pageHeight ${t.raw.pageHeight}`);n.rawPageHeight=t.raw.pageHeight}else throw f.invalidParameterError("raw.pageHeight","positive integer",t.raw.pageHeight)}if(f.defined(t.animated))if(f.bool(t.animated))n.pages=t.animated?-1:1;else throw f.invalidParameterError("animated","boolean",t.animated);if(f.defined(t.pages))if(f.integer(t.pages)&&f.inRange(t.pages,-1,1e5))n.pages=t.pages;else throw f.invalidParameterError("pages","integer between -1 and 100000",t.pages);if(f.defined(t.page))if(f.integer(t.page)&&f.inRange(t.page,0,1e5))n.page=t.page;else throw f.invalidParameterError("page","integer between 0 and 100000",t.page);if(f.object(t.openSlide)&&f.defined(t.openSlide.level))if(f.integer(t.openSlide.level)&&f.inRange(t.openSlide.level,0,256))n.openSlideLevel=t.openSlide.level;else throw f.invalidParameterError("openSlide.level","integer between 0 and 256",t.openSlide.level);else if(f.defined(t.level))if(f.integer(t.level)&&f.inRange(t.level,0,256))n.openSlideLevel=t.level;else throw f.invalidParameterError("level","integer between 0 and 256",t.level);if(f.object(t.tiff)&&f.defined(t.tiff.subifd))if(f.integer(t.tiff.subifd)&&f.inRange(t.tiff.subifd,-1,1e5))n.tiffSubifd=t.tiff.subifd;else throw f.invalidParameterError("tiff.subifd","integer between -1 and 100000",t.tiff.subifd);else if(f.defined(t.subifd))if(f.integer(t.subifd)&&f.inRange(t.subifd,-1,1e5))n.tiffSubifd=t.subifd;else throw f.invalidParameterError("subifd","integer between -1 and 100000",t.subifd);if(f.object(t.svg)){if(f.defined(t.svg.stylesheet))if(f.string(t.svg.stylesheet))n.svgStylesheet=t.svg.stylesheet;else throw f.invalidParameterError("svg.stylesheet","string",t.svg.stylesheet);if(f.defined(t.svg.highBitdepth))if(f.bool(t.svg.highBitdepth))n.svgHighBitdepth=t.svg.highBitdepth;else throw f.invalidParameterError("svg.highBitdepth","boolean",t.svg.highBitdepth)}if(f.object(t.pdf)&&f.defined(t.pdf.background))n.pdfBackground=this._getBackgroundColourOption(t.pdf.background);else if(f.defined(t.pdfBackground))n.pdfBackground=this._getBackgroundColourOption(t.pdfBackground);if(f.object(t.jp2)&&f.defined(t.jp2.oneshot))if(f.bool(t.jp2.oneshot))n.jp2Oneshot=t.jp2.oneshot;else throw f.invalidParameterError("jp2.oneshot","boolean",t.jp2.oneshot);if(f.defined(t.create))if(f.object(t.create)&&f.integer(t.create.width)&&f.inRange(t.create.width,1,1e8)&&f.integer(t.create.height)&&f.inRange(t.create.height,1,1e8)&&f.integer(t.create.channels)){if(n.createWidth=t.create.width,n.createHeight=t.create.height,n.createChannels=t.create.channels,n.createPageHeight=0,f.defined(t.create.pageHeight))if(f.integer(t.create.pageHeight)&&t.create.pageHeight>0&&t.create.pageHeight<=t.create.height){if(t.create.height%t.create.pageHeight!==0)throw Error(`Expected create.height ${t.create.height} to be a multiple of create.pageHeight ${t.create.pageHeight}`);n.createPageHeight=t.create.pageHeight}else throw f.invalidParameterError("create.pageHeight","positive integer",t.create.pageHeight);if(f.defined(t.create.noise)){if(!f.object(t.create.noise))throw Error("Expected noise to be an object");if(t.create.noise.type!=="gaussian")throw Error("Only gaussian noise is supported at the moment");if(n.createNoiseType=t.create.noise.type,!f.inRange(t.create.channels,1,4))throw f.invalidParameterError("create.channels","number between 1 and 4",t.create.channels);if(n.createNoiseMean=128,f.defined(t.create.noise.mean))if(f.number(t.create.noise.mean)&&f.inRange(t.create.noise.mean,0,1e4))n.createNoiseMean=t.create.noise.mean;else throw f.invalidParameterError("create.noise.mean","number between 0 and 10000",t.create.noise.mean);if(n.createNoiseSigma=30,f.defined(t.create.noise.sigma))if(f.number(t.create.noise.sigma)&&f.inRange(t.create.noise.sigma,0,1e4))n.createNoiseSigma=t.create.noise.sigma;else throw f.invalidParameterError("create.noise.sigma","number between 0 and 10000",t.create.noise.sigma)}else if(f.defined(t.create.background)){if(!f.inRange(t.create.channels,3,4))throw f.invalidParameterError("create.channels","number between 3 and 4",t.create.channels);n.createBackground=this._getBackgroundColourOption(t.create.background)}else throw Error("Expected valid noise or background to create a new input image");delete n.buffer}else throw Error("Expected valid width, height and channels to create a new input image");if(f.defined(t.text))if(f.object(t.text)&&f.string(t.text.text)){if(n.textValue=t.text.text,f.defined(t.text.height)&&f.defined(t.text.dpi))throw Error("Expected only one of dpi or height");if(f.defined(t.text.font))if(f.string(t.text.font))n.textFont=t.text.font;else throw f.invalidParameterError("text.font","string",t.text.font);if(f.defined(t.text.fontfile))if(f.string(t.text.fontfile))n.textFontfile=t.text.fontfile;else throw f.invalidParameterError("text.fontfile","string",t.text.fontfile);if(f.defined(t.text.width))if(f.integer(t.text.width)&&f.inRange(t.text.width,1,1e6))n.textWidth=t.text.width;else throw f.invalidParameterError("text.width","integer between 1 and 1000000",t.text.width);if(f.defined(t.text.height))if(f.integer(t.text.height)&&f.inRange(t.text.height,1,1e6))n.textHeight=t.text.height;else throw f.invalidParameterError("text.height","integer between 1 and 1000000",t.text.height);if(f.defined(t.text.align))if(f.string(t.text.align)&&f.string(this.constructor.align[t.text.align]))n.textAlign=this.constructor.align[t.text.align];else throw f.invalidParameterError("text.align","valid alignment",t.text.align);if(f.defined(t.text.justify))if(f.bool(t.text.justify))n.textJustify=t.text.justify;else throw f.invalidParameterError("text.justify","boolean",t.text.justify);if(f.defined(t.text.dpi))if(f.integer(t.text.dpi)&&f.inRange(t.text.dpi,1,1e6))n.textDpi=t.text.dpi;else throw f.invalidParameterError("text.dpi","integer between 1 and 1000000",t.text.dpi);if(f.defined(t.text.rgba))if(f.bool(t.text.rgba))n.textRgba=t.text.rgba;else throw f.invalidParameterError("text.rgba","bool",t.text.rgba);if(f.defined(t.text.spacing))if(f.integer(t.text.spacing)&&f.inRange(t.text.spacing,-1e6,1e6))n.textSpacing=t.text.spacing;else throw f.invalidParameterError("text.spacing","integer between -1000000 and 1000000",t.text.spacing);if(f.defined(t.text.wrap))if(f.string(t.text.wrap)&&f.inArray(t.text.wrap,["word","char","word-char","none"]))n.textWrap=t.text.wrap;else throw f.invalidParameterError("text.wrap","one of: word, char, word-char, none",t.text.wrap);delete n.buffer}else throw Error("Expected a valid string to create an image with text.");if(f.defined(t.join))if(f.defined(this.options.join)){if(f.defined(t.join.animated))if(f.bool(t.join.animated))n.joinAnimated=t.join.animated;else throw f.invalidParameterError("join.animated","boolean",t.join.animated);if(f.defined(t.join.across))if(f.integer(t.join.across)&&f.inRange(t.join.across,1,1e6))n.joinAcross=t.join.across;else throw f.invalidParameterError("join.across","integer between 1 and 100000",t.join.across);if(f.defined(t.join.shim))if(f.integer(t.join.shim)&&f.inRange(t.join.shim,0,1e6))n.joinShim=t.join.shim;else throw f.invalidParameterError("join.shim","integer between 0 and 100000",t.join.shim);if(f.defined(t.join.background))n.joinBackground=this._getBackgroundColourOption(t.join.background);if(f.defined(t.join.halign))if(f.string(t.join.halign)&&f.string(this.constructor.align[t.join.halign]))n.joinHalign=this.constructor.align[t.join.halign];else throw f.invalidParameterError("join.halign","valid alignment",t.join.halign);if(f.defined(t.join.valign))if(f.string(t.join.valign)&&f.string(this.constructor.align[t.join.valign]))n.joinValign=this.constructor.align[t.join.valign];else throw f.invalidParameterError("join.valign","valid alignment",t.join.valign)}else throw Error("Expected input to be an array of images to join")}else if(f.defined(t))throw Error(`Invalid input options ${t}`);return n}function d5(e,t,r){if(Array.isArray(this.options.input.buffer))if(f.buffer(e))this.options.input.buffer.push(e),r();else r(Error("Non-Buffer data on Writable Stream"));else r(Error("Unexpected data on Writable Stream"))}function p5(){if(this._isStreamInput())this.options.input.buffer=Buffer.concat(this.options.input.buffer)}function m5(){return Array.isArray(this.options.input.buffer)}function h5(e){if(this.writableFinished)e();else this.once("finish",e)}function g5(e){let t=Error();if(f.fn(e)){if(this._isStreamInput())this._whenStreamInFinished(()=>{this._flattenBufferIn(),qe.metadata(this.options,(r,n)=>{if(r)e(f.nativeError(r,t));else e(null,n)})});else qe.metadata(this.options,(r,n)=>{if(r)e(f.nativeError(r,t));else e(null,n)});return this}else if(this._isStreamInput())return new Promise((r,n)=>{this._whenStreamInFinished(()=>{this._flattenBufferIn(),qe.metadata(this.options,(s,i)=>{if(s)n(f.nativeError(s,t));else r(i)})})});else return new Promise((r,n)=>{qe.metadata(this.options,(s,i)=>{if(s)n(f.nativeError(s,t));else r(i)})})}function y5(e){let t=Error();if(f.fn(e)){if(this._isStreamInput())this._whenStreamInFinished(()=>{this._flattenBufferIn(),qe.stats(this.options,(r,n)=>{if(r)e(f.nativeError(r,t));else e(null,n)})});else qe.stats(this.options,(r,n)=>{if(r)e(f.nativeError(r,t));else e(null,n)});return this}else if(this._isStreamInput())return new Promise((r,n)=>{this._whenStreamInFinished(()=>{this._flattenBufferIn(),qe.stats(this.options,(s,i)=>{if(s)n(f.nativeError(s,t));else r(i)})})});else return new Promise((r,n)=>{qe.stats(this.options,(s,i)=>{if(s)n(f.nativeError(s,t));else r(i)})})}var c5,u5,CS=(e)=>{Object.assign(e.prototype,{_inputOptionsFromObject:OS,_createInputDescriptor:f5,_write:d5,_flattenBufferIn:p5,_isStreamInput:m5,_whenStreamInFinished:h5,metadata:g5,stats:y5}),e.align=c5};var NS=D(()=>{On();Jl();/*!
|
|
385
|
+
*/k5=P5.debuglog("sharp");Object.setPrototypeOf(io.prototype,ph.Duplex.prototype);Object.setPrototypeOf(io,ph.Duplex);Object.assign(io.prototype,{clone:A5});Jn=io});function FS(e){let t=O5.filter((r)=>f.defined(e[r])).map((r)=>[r,e[r]]);return t.length?Object.fromEntries(t):void 0}function N5(e,t,r){let n={autoOrient:!1,failOn:"warning",limitInputPixels:268402689,limitInputChannels:5,ignoreIcc:!1,unlimited:!1,sequentialRead:!0};if(f.string(e))n.file=e;else if(f.buffer(e)){if(e.length===0)throw Error("Input Buffer is empty");n.buffer=e}else if(f.arrayBuffer(e)){if(e.byteLength===0)throw Error("Input bit Array is empty");n.buffer=Buffer.from(e,0,e.byteLength)}else if(f.typedArray(e)){if(e.length===0)throw Error("Input Bit Array is empty");n.buffer=Buffer.from(e.buffer,e.byteOffset,e.byteLength)}else if(f.plainObject(e)&&!f.defined(t)){if(t=e,FS(t))n.buffer=[]}else if(!f.defined(e)&&!f.defined(t)&&f.object(r)&&r.allowStream)n.buffer=[];else if(Array.isArray(e))if(e.length>1)if(!this.options.joining)this.options.joining=!0,this.options.join=e.map((s)=>this._createInputDescriptor(s));else throw Error("Recursive join is unsupported");else throw Error("Expected at least two images to join");else throw Error(`Unsupported input '${e}' of type ${typeof e}${f.defined(t)?` when also providing options of type ${typeof t}`:""}`);if(f.object(t)){if(f.defined(t.failOn))if(f.string(t.failOn)&&f.inArray(t.failOn,["none","truncated","error","warning"]))n.failOn=t.failOn;else throw f.invalidParameterError("failOn","one of: none, truncated, error, warning",t.failOn);if(f.defined(t.autoOrient))if(f.bool(t.autoOrient))n.autoOrient=t.autoOrient;else throw f.invalidParameterError("autoOrient","boolean",t.autoOrient);if(f.defined(t.density))if(f.number(t.density)&&f.inRange(t.density,1,1e5))n.density=t.density;else throw f.invalidParameterError("density","number between 1 and 100000",t.density);if(f.defined(t.ignoreIcc))if(f.bool(t.ignoreIcc))n.ignoreIcc=t.ignoreIcc;else throw f.invalidParameterError("ignoreIcc","boolean",t.ignoreIcc);if(f.defined(t.limitInputPixels))if(f.bool(t.limitInputPixels))n.limitInputPixels=t.limitInputPixels?268402689:0;else if(f.integer(t.limitInputPixels)&&f.inRange(t.limitInputPixels,0,Number.MAX_SAFE_INTEGER))n.limitInputPixels=t.limitInputPixels;else throw f.invalidParameterError("limitInputPixels","positive integer",t.limitInputPixels);if(f.defined(t.limitInputChannels))if(f.bool(t.limitInputChannels))n.limitInputChannels=t.limitInputChannels?5:0;else if(f.integer(t.limitInputChannels)&&f.inRange(t.limitInputChannels,0,Number.MAX_SAFE_INTEGER))n.limitInputChannels=t.limitInputChannels;else throw f.invalidParameterError("limitInputChannels","positive integer",t.limitInputChannels);if(f.defined(t.unlimited))if(f.bool(t.unlimited))n.unlimited=t.unlimited;else throw f.invalidParameterError("unlimited","boolean",t.unlimited);if(f.defined(t.sequentialRead))if(f.bool(t.sequentialRead))n.sequentialRead=t.sequentialRead;else throw f.invalidParameterError("sequentialRead","boolean",t.sequentialRead);if(f.defined(t.raw)){if(f.object(t.raw)&&f.integer(t.raw.width)&&f.inRange(t.raw.width,1,1e8)&&f.integer(t.raw.height)&&f.inRange(t.raw.height,1,1e8)&&f.integer(t.raw.channels)&&f.inRange(t.raw.channels,1,4))switch(n.rawWidth=t.raw.width,n.rawHeight=t.raw.height,n.rawChannels=t.raw.channels,e.constructor){case Uint8Array:case Uint8ClampedArray:n.rawDepth="uchar";break;case Int8Array:n.rawDepth="char";break;case Uint16Array:n.rawDepth="ushort";break;case Int16Array:n.rawDepth="short";break;case Uint32Array:n.rawDepth="uint";break;case Int32Array:n.rawDepth="int";break;case Float32Array:n.rawDepth="float";break;case Float64Array:n.rawDepth="double";break;default:n.rawDepth="uchar";break}else throw Error("Expected width, height and channels for raw pixel input");if(n.rawPremultiplied=!1,f.defined(t.raw.premultiplied))if(f.bool(t.raw.premultiplied))n.rawPremultiplied=t.raw.premultiplied;else throw f.invalidParameterError("raw.premultiplied","boolean",t.raw.premultiplied);if(n.rawPageHeight=0,f.defined(t.raw.pageHeight))if(f.integer(t.raw.pageHeight)&&t.raw.pageHeight>0&&t.raw.pageHeight<=t.raw.height){if(t.raw.height%t.raw.pageHeight!==0)throw Error(`Expected raw.height ${t.raw.height} to be a multiple of raw.pageHeight ${t.raw.pageHeight}`);n.rawPageHeight=t.raw.pageHeight}else throw f.invalidParameterError("raw.pageHeight","positive integer",t.raw.pageHeight)}if(f.defined(t.animated))if(f.bool(t.animated))n.pages=t.animated?-1:1;else throw f.invalidParameterError("animated","boolean",t.animated);if(f.defined(t.pages))if(f.integer(t.pages)&&f.inRange(t.pages,-1,1e5))n.pages=t.pages;else throw f.invalidParameterError("pages","integer between -1 and 100000",t.pages);if(f.defined(t.page))if(f.integer(t.page)&&f.inRange(t.page,0,1e5))n.page=t.page;else throw f.invalidParameterError("page","integer between 0 and 100000",t.page);if(f.object(t.openSlide)&&f.defined(t.openSlide.level))if(f.integer(t.openSlide.level)&&f.inRange(t.openSlide.level,0,256))n.openSlideLevel=t.openSlide.level;else throw f.invalidParameterError("openSlide.level","integer between 0 and 256",t.openSlide.level);else if(f.defined(t.level))if(f.integer(t.level)&&f.inRange(t.level,0,256))n.openSlideLevel=t.level;else throw f.invalidParameterError("level","integer between 0 and 256",t.level);if(f.object(t.tiff)&&f.defined(t.tiff.subifd))if(f.integer(t.tiff.subifd)&&f.inRange(t.tiff.subifd,-1,1e5))n.tiffSubifd=t.tiff.subifd;else throw f.invalidParameterError("tiff.subifd","integer between -1 and 100000",t.tiff.subifd);else if(f.defined(t.subifd))if(f.integer(t.subifd)&&f.inRange(t.subifd,-1,1e5))n.tiffSubifd=t.subifd;else throw f.invalidParameterError("subifd","integer between -1 and 100000",t.subifd);if(f.object(t.svg)){if(f.defined(t.svg.stylesheet))if(f.string(t.svg.stylesheet))n.svgStylesheet=t.svg.stylesheet;else throw f.invalidParameterError("svg.stylesheet","string",t.svg.stylesheet);if(f.defined(t.svg.highBitdepth))if(f.bool(t.svg.highBitdepth))n.svgHighBitdepth=t.svg.highBitdepth;else throw f.invalidParameterError("svg.highBitdepth","boolean",t.svg.highBitdepth)}if(f.object(t.pdf)&&f.defined(t.pdf.background))n.pdfBackground=this._getBackgroundColourOption(t.pdf.background);else if(f.defined(t.pdfBackground))n.pdfBackground=this._getBackgroundColourOption(t.pdfBackground);if(f.object(t.jp2)&&f.defined(t.jp2.oneshot))if(f.bool(t.jp2.oneshot))n.jp2Oneshot=t.jp2.oneshot;else throw f.invalidParameterError("jp2.oneshot","boolean",t.jp2.oneshot);if(f.defined(t.create))if(f.object(t.create)&&f.integer(t.create.width)&&f.inRange(t.create.width,1,1e8)&&f.integer(t.create.height)&&f.inRange(t.create.height,1,1e8)&&f.integer(t.create.channels)){if(n.createWidth=t.create.width,n.createHeight=t.create.height,n.createChannels=t.create.channels,n.createPageHeight=0,f.defined(t.create.pageHeight))if(f.integer(t.create.pageHeight)&&t.create.pageHeight>0&&t.create.pageHeight<=t.create.height){if(t.create.height%t.create.pageHeight!==0)throw Error(`Expected create.height ${t.create.height} to be a multiple of create.pageHeight ${t.create.pageHeight}`);n.createPageHeight=t.create.pageHeight}else throw f.invalidParameterError("create.pageHeight","positive integer",t.create.pageHeight);if(f.defined(t.create.noise)){if(!f.object(t.create.noise))throw Error("Expected noise to be an object");if(t.create.noise.type!=="gaussian")throw Error("Only gaussian noise is supported at the moment");if(n.createNoiseType=t.create.noise.type,!f.inRange(t.create.channels,1,4))throw f.invalidParameterError("create.channels","number between 1 and 4",t.create.channels);if(n.createNoiseMean=128,f.defined(t.create.noise.mean))if(f.number(t.create.noise.mean)&&f.inRange(t.create.noise.mean,0,1e4))n.createNoiseMean=t.create.noise.mean;else throw f.invalidParameterError("create.noise.mean","number between 0 and 10000",t.create.noise.mean);if(n.createNoiseSigma=30,f.defined(t.create.noise.sigma))if(f.number(t.create.noise.sigma)&&f.inRange(t.create.noise.sigma,0,1e4))n.createNoiseSigma=t.create.noise.sigma;else throw f.invalidParameterError("create.noise.sigma","number between 0 and 10000",t.create.noise.sigma)}else if(f.defined(t.create.background)){if(!f.inRange(t.create.channels,3,4))throw f.invalidParameterError("create.channels","number between 3 and 4",t.create.channels);n.createBackground=this._getBackgroundColourOption(t.create.background)}else throw Error("Expected valid noise or background to create a new input image");delete n.buffer}else throw Error("Expected valid width, height and channels to create a new input image");if(f.defined(t.text))if(f.object(t.text)&&f.string(t.text.text)){if(n.textValue=t.text.text,f.defined(t.text.height)&&f.defined(t.text.dpi))throw Error("Expected only one of dpi or height");if(f.defined(t.text.font))if(f.string(t.text.font))n.textFont=t.text.font;else throw f.invalidParameterError("text.font","string",t.text.font);if(f.defined(t.text.fontfile))if(f.string(t.text.fontfile))n.textFontfile=t.text.fontfile;else throw f.invalidParameterError("text.fontfile","string",t.text.fontfile);if(f.defined(t.text.width))if(f.integer(t.text.width)&&f.inRange(t.text.width,1,1e6))n.textWidth=t.text.width;else throw f.invalidParameterError("text.width","integer between 1 and 1000000",t.text.width);if(f.defined(t.text.height))if(f.integer(t.text.height)&&f.inRange(t.text.height,1,1e6))n.textHeight=t.text.height;else throw f.invalidParameterError("text.height","integer between 1 and 1000000",t.text.height);if(f.defined(t.text.align))if(f.string(t.text.align)&&f.string(this.constructor.align[t.text.align]))n.textAlign=this.constructor.align[t.text.align];else throw f.invalidParameterError("text.align","valid alignment",t.text.align);if(f.defined(t.text.justify))if(f.bool(t.text.justify))n.textJustify=t.text.justify;else throw f.invalidParameterError("text.justify","boolean",t.text.justify);if(f.defined(t.text.dpi))if(f.integer(t.text.dpi)&&f.inRange(t.text.dpi,1,1e6))n.textDpi=t.text.dpi;else throw f.invalidParameterError("text.dpi","integer between 1 and 1000000",t.text.dpi);if(f.defined(t.text.rgba))if(f.bool(t.text.rgba))n.textRgba=t.text.rgba;else throw f.invalidParameterError("text.rgba","bool",t.text.rgba);if(f.defined(t.text.spacing))if(f.integer(t.text.spacing)&&f.inRange(t.text.spacing,-1e6,1e6))n.textSpacing=t.text.spacing;else throw f.invalidParameterError("text.spacing","integer between -1000000 and 1000000",t.text.spacing);if(f.defined(t.text.wrap))if(f.string(t.text.wrap)&&f.inArray(t.text.wrap,["word","char","word-char","none"]))n.textWrap=t.text.wrap;else throw f.invalidParameterError("text.wrap","one of: word, char, word-char, none",t.text.wrap);delete n.buffer}else throw Error("Expected a valid string to create an image with text.");if(f.defined(t.join))if(f.defined(this.options.join)){if(f.defined(t.join.animated))if(f.bool(t.join.animated))n.joinAnimated=t.join.animated;else throw f.invalidParameterError("join.animated","boolean",t.join.animated);if(f.defined(t.join.across))if(f.integer(t.join.across)&&f.inRange(t.join.across,1,1e6))n.joinAcross=t.join.across;else throw f.invalidParameterError("join.across","integer between 1 and 100000",t.join.across);if(f.defined(t.join.shim))if(f.integer(t.join.shim)&&f.inRange(t.join.shim,0,1e6))n.joinShim=t.join.shim;else throw f.invalidParameterError("join.shim","integer between 0 and 100000",t.join.shim);if(f.defined(t.join.background))n.joinBackground=this._getBackgroundColourOption(t.join.background);if(f.defined(t.join.halign))if(f.string(t.join.halign)&&f.string(this.constructor.align[t.join.halign]))n.joinHalign=this.constructor.align[t.join.halign];else throw f.invalidParameterError("join.halign","valid alignment",t.join.halign);if(f.defined(t.join.valign))if(f.string(t.join.valign)&&f.string(this.constructor.align[t.join.valign]))n.joinValign=this.constructor.align[t.join.valign];else throw f.invalidParameterError("join.valign","valid alignment",t.join.valign)}else throw Error("Expected input to be an array of images to join")}else if(f.defined(t))throw Error(`Invalid input options ${t}`);return n}function C5(e,t,r){if(Array.isArray(this.options.input.buffer))if(f.buffer(e))this.options.input.buffer.push(e),r();else r(Error("Non-Buffer data on Writable Stream"));else r(Error("Unexpected data on Writable Stream"))}function T5(){if(this._isStreamInput())this.options.input.buffer=Buffer.concat(this.options.input.buffer)}function I5(){return Array.isArray(this.options.input.buffer)}function J5(e){if(this.writableFinished)e();else this.once("finish",e)}function M5(e){let t=Error();if(f.fn(e)){if(this._isStreamInput())this._whenStreamInFinished(()=>{this._flattenBufferIn(),Ve.metadata(this.options,(r,n)=>{if(r)e(f.nativeError(r,t));else e(null,n)})});else Ve.metadata(this.options,(r,n)=>{if(r)e(f.nativeError(r,t));else e(null,n)});return this}else if(this._isStreamInput())return new Promise((r,n)=>{this._whenStreamInFinished(()=>{this._flattenBufferIn(),Ve.metadata(this.options,(s,i)=>{if(s)n(f.nativeError(s,t));else r(i)})})});else return new Promise((r,n)=>{Ve.metadata(this.options,(s,i)=>{if(s)n(f.nativeError(s,t));else r(i)})})}function D5(e){let t=Error();if(f.fn(e)){if(this._isStreamInput())this._whenStreamInFinished(()=>{this._flattenBufferIn(),Ve.stats(this.options,(r,n)=>{if(r)e(f.nativeError(r,t));else e(null,n)})});else Ve.stats(this.options,(r,n)=>{if(r)e(f.nativeError(r,t));else e(null,n)});return this}else if(this._isStreamInput())return new Promise((r,n)=>{this._whenStreamInFinished(()=>{this._flattenBufferIn(),Ve.stats(this.options,(s,i)=>{if(s)n(f.nativeError(s,t));else r(i)})})});else return new Promise((r,n)=>{Ve.stats(this.options,(s,i)=>{if(s)n(f.nativeError(s,t));else r(i)})})}var R5,O5,qS=(e)=>{Object.assign(e.prototype,{_inputOptionsFromObject:FS,_createInputDescriptor:N5,_write:C5,_flattenBufferIn:T5,_isStreamInput:I5,_whenStreamInFinished:J5,metadata:M5,stats:D5}),e.align=R5};var VS=D(()=>{On();Vl();/*!
|
|
386
386
|
Copyright 2013 Lovell Fuller and others.
|
|
387
387
|
SPDX-License-Identifier: Apache-2.0
|
|
388
|
-
*/
|
|
388
|
+
*/R5={left:"low",top:"low",low:"low",center:"centre",centre:"centre",right:"high",bottom:"high",high:"high"},O5=["failOn","limitInputPixels","limitInputChannels","unlimited","animated","autoOrient","density","ignoreIcc","page","pages","sequentialRead","jp2","openSlide","pdf","raw","svg","tiff","openSlideLevel","pdfBackground","tiffSubifd"]});function hh(e){return e.angle%360!==0||e.rotationAngle!==0}function yf(e){return e.width!==-1||e.height!==-1}function q5(e,t,r){if(yf(this.options))this.options.debuglog("ignoring previous resize options");if(this.options.widthPost!==-1)this.options.debuglog("operation order will be: extract, resize, extract");if(f.defined(e))if(f.object(e)&&!f.defined(r))r=e;else if(f.integer(e)&&f.inRange(e,1,1e8))this.options.width=e;else throw f.invalidParameterError("width","positive integer between 1 and 100000000",e);else this.options.width=-1;if(f.defined(t))if(f.integer(t)&&f.inRange(t,1,1e8))this.options.height=t;else throw f.invalidParameterError("height","positive integer between 1 and 100000000",t);else this.options.height=-1;if(f.object(r)){if(f.defined(r.width))if(f.integer(r.width)&&f.inRange(r.width,1,1e8))this.options.width=r.width;else throw f.invalidParameterError("width","positive integer between 1 and 100000000",r.width);if(f.defined(r.height))if(f.integer(r.height)&&f.inRange(r.height,1,1e8))this.options.height=r.height;else throw f.invalidParameterError("height","positive integer between 1 and 100000000",r.height);if(f.defined(r.fit)){let n=F5[r.fit];if(f.string(n))this.options.canvas=n;else throw f.invalidParameterError("fit","valid fit",r.fit)}if(f.defined(r.position)){let n=f.integer(r.position)?r.position:US[r.position]||BS[r.position]||HS[r.position];if(f.integer(n)&&(f.inRange(n,0,8)||f.inRange(n,16,17)))this.options.position=n;else throw f.invalidParameterError("position","valid position/gravity/strategy",r.position)}if(this._setBackgroundColourOption("resizeBackground",r.background),f.defined(r.kernel))if(f.string(mh[r.kernel]))this.options.kernel=mh[r.kernel];else throw f.invalidParameterError("kernel","valid kernel name",r.kernel);if(f.defined(r.withoutEnlargement))this._setBooleanOption("withoutEnlargement",r.withoutEnlargement);if(f.defined(r.withoutReduction))this._setBooleanOption("withoutReduction",r.withoutReduction);if(f.defined(r.fastShrinkOnLoad))this._setBooleanOption("fastShrinkOnLoad",r.fastShrinkOnLoad)}if(hh(this.options)&&yf(this.options))this.options.rotateBefore=!0;return this}function V5(e){if(f.integer(e))if(f.inRange(e,1,1e8))this.options.extendTop=e,this.options.extendBottom=e,this.options.extendLeft=e,this.options.extendRight=e;else throw f.invalidParameterError("extend","integer between 1 and 100000000",e);else if(f.object(e)){if(f.defined(e.top))if(f.integer(e.top)&&f.inRange(e.top,0,1e8))this.options.extendTop=e.top;else throw f.invalidParameterError("top","integer between 0 and 100000000",e.top);if(f.defined(e.bottom))if(f.integer(e.bottom)&&f.inRange(e.bottom,0,1e8))this.options.extendBottom=e.bottom;else throw f.invalidParameterError("bottom","integer between 0 and 100000000",e.bottom);if(f.defined(e.left))if(f.integer(e.left)&&f.inRange(e.left,0,1e8))this.options.extendLeft=e.left;else throw f.invalidParameterError("left","integer between 0 and 100000000",e.left);if(f.defined(e.right))if(f.integer(e.right)&&f.inRange(e.right,0,1e8))this.options.extendRight=e.right;else throw f.invalidParameterError("right","integer between 0 and 100000000",e.right);if(this._setBackgroundColourOption("extendBackground",e.background),f.defined(e.extendWith))if(f.string(WS[e.extendWith]))this.options.extendWith=WS[e.extendWith];else throw f.invalidParameterError("extendWith","one of: background, copy, repeat, mirror",e.extendWith)}else throw f.invalidParameterError("extend","integer or object",e);return this}function W5(e){let t=yf(this.options)||this.options.widthPre!==-1?"Post":"Pre";if(this.options[`width${t}`]!==-1)this.options.debuglog("ignoring previous extract options");if(["left","top","width","height"].forEach(function(r){let n=e[r];if(f.integer(n)&&f.inRange(n,0,1e8))this.options[r+(r==="left"||r==="top"?"Offset":"")+t]=n;else throw f.invalidParameterError(r,"integer between 0 and 100000000",n)},this),hh(this.options)&&!yf(this.options)){if(this.options.widthPre===-1||this.options.widthPost===-1)this.options.rotateBefore=!0}if(this.options.input.autoOrient)this.options.orientBefore=!0;return this}function H5(e){if(this.options.trimThreshold=10,f.defined(e))if(f.object(e)){if(f.defined(e.background))this._setBackgroundColourOption("trimBackground",e.background);if(f.defined(e.threshold))if(f.number(e.threshold)&&e.threshold>=0)this.options.trimThreshold=e.threshold;else throw f.invalidParameterError("threshold","positive number",e.threshold);if(f.defined(e.lineArt))this._setBooleanOption("trimLineArt",e.lineArt);if(f.defined(e.margin))if(f.integer(e.margin)&&f.inRange(e.margin,0,1e7))this.options.trimMargin=e.margin;else throw f.invalidParameterError("margin","integer between 0 and 10000000",e.margin)}else throw f.invalidParameterError("trim","object",e);if(hh(this.options))this.options.rotateBefore=!0;return this}var HS,BS,WS,US,mh,L5,F5,zS=(e)=>{Object.assign(e.prototype,{resize:q5,extend:V5,extract:W5,trim:H5}),e.gravity=HS,e.strategy=US,e.kernel=mh,e.fit=L5,e.position=BS};var GS=D(()=>{On();/*!
|
|
389
389
|
Copyright 2013 Lovell Fuller and others.
|
|
390
390
|
SPDX-License-Identifier: Apache-2.0
|
|
391
|
-
*/
|
|
391
|
+
*/HS={center:0,centre:0,north:1,east:2,south:3,west:4,northeast:5,southeast:6,southwest:7,northwest:8},BS={top:1,right:2,bottom:3,left:4,"right top":5,"right bottom":6,"left bottom":7,"left top":8},WS={background:"background",copy:"copy",repeat:"repeat",mirror:"mirror"},US={entropy:16,attention:17},mh={nearest:"nearest",linear:"linear",cubic:"cubic",mitchell:"mitchell",lanczos2:"lanczos2",lanczos3:"lanczos3",mks2013:"mks2013",mks2021:"mks2021"},L5={contain:"contain",cover:"cover",fill:"fill",inside:"inside",outside:"outside"},F5={contain:"embed",cover:"crop",fill:"ignore_aspect",inside:"max",outside:"min"}});function B5(e){if(!Array.isArray(e))throw f.invalidParameterError("images to composite","array",e);return this.options.composite=e.map((t)=>{if(!f.object(t))throw f.invalidParameterError("image to composite","object",t);let r=this._inputOptionsFromObject(t),n={input:this._createInputDescriptor(t.input,r,{allowStream:!1}),blend:"over",tile:!1,left:0,top:0,hasOffset:!1,gravity:0,premultiplied:!1};if(f.defined(t.blend))if(f.string(gh[t.blend]))n.blend=gh[t.blend];else throw f.invalidParameterError("blend","valid blend name",t.blend);if(f.defined(t.tile))if(f.bool(t.tile))n.tile=t.tile;else throw f.invalidParameterError("tile","boolean",t.tile);if(f.defined(t.left))if(f.integer(t.left)&&f.inRange(t.left,-1e8,1e8))n.left=t.left;else throw f.invalidParameterError("left","integer between -100000000 and 100000000",t.left);if(f.defined(t.top))if(f.integer(t.top)&&f.inRange(t.top,-1e8,1e8))n.top=t.top;else throw f.invalidParameterError("top","integer between -100000000 and 100000000",t.top);if(f.defined(t.top)!==f.defined(t.left))throw Error("Expected both left and top to be set");else n.hasOffset=f.integer(t.top)&&f.integer(t.left);if(f.defined(t.gravity))if(f.integer(t.gravity)&&f.inRange(t.gravity,0,8))n.gravity=t.gravity;else if(f.string(t.gravity)&&f.integer(this.constructor.gravity[t.gravity]))n.gravity=this.constructor.gravity[t.gravity];else throw f.invalidParameterError("gravity","valid gravity",t.gravity);if(f.defined(t.premultiplied))if(f.bool(t.premultiplied))n.premultiplied=t.premultiplied;else throw f.invalidParameterError("premultiplied","boolean",t.premultiplied);return n}),this}var gh,KS=(e)=>{e.prototype.composite=B5,e.blend=gh};var YS=D(()=>{On();/*!
|
|
392
392
|
Copyright 2013 Lovell Fuller and others.
|
|
393
393
|
SPDX-License-Identifier: Apache-2.0
|
|
394
|
-
*/ch={clear:"clear",source:"source",over:"over",in:"in",out:"out",atop:"atop",dest:"dest","dest-over":"dest-over","dest-in":"dest-in","dest-out":"dest-out","dest-atop":"dest-atop",xor:"xor",add:"add",saturate:"saturate",multiply:"multiply",screen:"screen",overlay:"overlay",darken:"darken",lighten:"lighten","colour-dodge":"colour-dodge","color-dodge":"colour-dodge","colour-burn":"colour-burn","color-burn":"colour-burn","hard-light":"hard-light","soft-light":"soft-light",difference:"difference",exclusion:"exclusion"}});function P5(e,t){if(!f.defined(e))return this.autoOrient();if(this.options.angle||this.options.rotationAngle)this.options.debuglog("ignoring previous rotate options"),this.options.angle=0,this.options.rotationAngle=0;if(f.integer(e)&&!(e%90))this.options.angle=e;else if(f.number(e)){if(this.options.rotationAngle=e,f.object(t)&&t.background)this._setBackgroundColourOption("rotationBackground",t.background)}else throw f.invalidParameterError("angle","numeric",e);return this}function j5(){return this.options.input.autoOrient=!0,this}function k5(e){return this.options.flip=f.bool(e)?e:!0,this}function _5(e){return this.options.flop=f.bool(e)?e:!0,this}function A5(e,t){let n=Array.isArray(e)&&(e.length===4&&e.every(f.number)||e.length===2&&e.every((s)=>Array.isArray(s)&&s.length===2))?e.flat():[];if(n.length===4&&n.every(f.number))this.options.affineMatrix=n;else throw f.invalidParameterError("matrix","1x4 or 2x2 array",e);if(f.defined(t))if(f.object(t)){if(this._setBackgroundColourOption("affineBackground",t.background),f.defined(t.idx))if(f.number(t.idx))this.options.affineIdx=t.idx;else throw f.invalidParameterError("options.idx","number",t.idx);if(f.defined(t.idy))if(f.number(t.idy))this.options.affineIdy=t.idy;else throw f.invalidParameterError("options.idy","number",t.idy);if(f.defined(t.odx))if(f.number(t.odx))this.options.affineOdx=t.odx;else throw f.invalidParameterError("options.odx","number",t.odx);if(f.defined(t.ody))if(f.number(t.ody))this.options.affineOdy=t.ody;else throw f.invalidParameterError("options.ody","number",t.ody);if(f.defined(t.interpolator))if(f.inArray(t.interpolator,Object.values(this.constructor.interpolators)))this.options.affineInterpolator=t.interpolator;else throw f.invalidParameterError("options.interpolator","valid interpolator name",t.interpolator)}else throw f.invalidParameterError("options","object",t);return this}function R5(e){if(f.plainObject(e)){if(f.number(e.sigma)&&f.inRange(e.sigma,0.000001,10))this.options.sharpenSigma=e.sigma;else throw f.invalidParameterError("options.sigma","number between 0.000001 and 10",e.sigma);if(f.defined(e.m1))if(f.number(e.m1)&&f.inRange(e.m1,0,1e6))this.options.sharpenM1=e.m1;else throw f.invalidParameterError("options.m1","number between 0 and 1000000",e.m1);if(f.defined(e.m2))if(f.number(e.m2)&&f.inRange(e.m2,0,1e6))this.options.sharpenM2=e.m2;else throw f.invalidParameterError("options.m2","number between 0 and 1000000",e.m2);if(f.defined(e.x1))if(f.number(e.x1)&&f.inRange(e.x1,0,1e6))this.options.sharpenX1=e.x1;else throw f.invalidParameterError("options.x1","number between 0 and 1000000",e.x1);if(f.defined(e.y2))if(f.number(e.y2)&&f.inRange(e.y2,0,1e6))this.options.sharpenY2=e.y2;else throw f.invalidParameterError("options.y2","number between 0 and 1000000",e.y2);if(f.defined(e.y3))if(f.number(e.y3)&&f.inRange(e.y3,0,1e6))this.options.sharpenY3=e.y3;else throw f.invalidParameterError("options.y3","number between 0 and 1000000",e.y3)}else this.options.sharpenSigma=-1;return this}function O5(e){if(!f.defined(e))this.options.medianSize=3;else if(f.integer(e)&&f.inRange(e,1,1000))this.options.medianSize=e;else throw f.invalidParameterError("size","integer between 1 and 1000",e);return this}function C5(e){let t;if(f.number(e))t=e;else if(f.plainObject(e)){if(!f.number(e.sigma))throw f.invalidParameterError("options.sigma","number between 0.3 and 1000",t);if(t=e.sigma,"precision"in e)if(f.string(VS[e.precision]))this.options.precision=VS[e.precision];else throw f.invalidParameterError("precision","one of: integer, float, approximate",e.precision);if("minAmplitude"in e)if(f.number(e.minAmplitude)&&f.inRange(e.minAmplitude,0.001,1))this.options.minAmpl=e.minAmplitude;else throw f.invalidParameterError("minAmplitude","number between 0.001 and 1",e.minAmplitude)}if(!f.defined(e))this.options.blurSigma=-1;else if(f.bool(e))this.options.blurSigma=e?-1:0;else if(f.number(t)&&f.inRange(t,0.3,1000))this.options.blurSigma=t;else throw f.invalidParameterError("sigma","number between 0.3 and 1000",t);return this}function N5(e){if(!f.defined(e))this.options.dilateWidth=1;else if(f.integer(e)&&f.inRange(e,1,65536))this.options.dilateWidth=e;else throw f.invalidParameterError("width","integer between 1 and 65536",e);return this}function T5(e){if(!f.defined(e))this.options.erodeWidth=1;else if(f.integer(e)&&f.inRange(e,1,65536))this.options.erodeWidth=e;else throw f.invalidParameterError("width","integer between 1 and 65536",e);return this}function I5(e){if(this.options.flatten=f.bool(e)?e:!0,f.object(e))this._setBackgroundColourOption("flattenBackground",e.background);return this}function J5(){return this.options.unflatten=!0,this}function M5(e,t){if(!f.defined(e))this.options.gamma=2.2;else if(f.number(e)&&f.inRange(e,1,3))this.options.gamma=e;else throw f.invalidParameterError("gamma","number between 1.0 and 3.0",e);if(!f.defined(t))this.options.gammaOut=this.options.gamma;else if(f.number(t)&&f.inRange(t,1,3))this.options.gammaOut=t;else throw f.invalidParameterError("gammaOut","number between 1.0 and 3.0",t);return this}function D5(e){if(this.options.negate=f.bool(e)?e:!0,f.plainObject(e)&&"alpha"in e)if(!f.bool(e.alpha))throw f.invalidParameterError("alpha","should be boolean value",e.alpha);else this.options.negateAlpha=e.alpha;return this}function L5(e){if(f.plainObject(e)){if(f.defined(e.lower))if(f.number(e.lower)&&f.inRange(e.lower,0,99))this.options.normaliseLower=e.lower;else throw f.invalidParameterError("lower","number between 0 and 99",e.lower);if(f.defined(e.upper))if(f.number(e.upper)&&f.inRange(e.upper,1,100))this.options.normaliseUpper=e.upper;else throw f.invalidParameterError("upper","number between 1 and 100",e.upper)}if(this.options.normaliseLower>=this.options.normaliseUpper)throw f.invalidParameterError("range","lower to be less than upper",`${this.options.normaliseLower} >= ${this.options.normaliseUpper}`);return this.options.normalise=!0,this}function F5(e){return this.normalise(e)}function q5(e){if(f.plainObject(e)){if(f.integer(e.width)&&f.inRange(e.width,1,65536))this.options.claheWidth=e.width;else throw f.invalidParameterError("width","integer between 1 and 65536",e.width);if(f.integer(e.height)&&f.inRange(e.height,1,65536))this.options.claheHeight=e.height;else throw f.invalidParameterError("height","integer between 1 and 65536",e.height);if(f.defined(e.maxSlope))if(f.integer(e.maxSlope)&&f.inRange(e.maxSlope,0,100))this.options.claheMaxSlope=e.maxSlope;else throw f.invalidParameterError("maxSlope","integer between 0 and 100",e.maxSlope)}else throw f.invalidParameterError("options","plain object",e);return this}function V5(e){if(!f.object(e)||!Array.isArray(e.kernel)||!f.integer(e.width)||!f.integer(e.height)||!f.inRange(e.width,3,1001)||!f.inRange(e.height,3,1001)||e.height*e.width!==e.kernel.length||!e.kernel.every(f.number))throw Error("Invalid convolution kernel");if(!f.integer(e.scale))e.scale=e.kernel.reduce((t,r)=>t+r,0);if(e.scale<1)e.scale=1;if(!f.integer(e.offset))e.offset=0;return this.options.convKernel=e,this}function W5(e,t){if(!f.defined(e))this.options.threshold=128;else if(f.bool(e))this.options.threshold=e?128:0;else if(f.integer(e)&&f.inRange(e,0,255))this.options.threshold=e;else throw f.invalidParameterError("threshold","integer between 0 and 255",e);if(!f.object(t)||t.greyscale===!0||t.grayscale===!0)this.options.thresholdGrayscale=!0;else this.options.thresholdGrayscale=!1;return this}function H5(e,t,r){if(this.options.boolean=this._createInputDescriptor(e,r),f.string(t)&&f.inArray(t,["and","or","eor"]))this.options.booleanOp=t;else throw f.invalidParameterError("operator","one of: and, or, eor",t);return this}function B5(e,t){if(!f.defined(e)&&f.number(t))e=1;else if(f.number(e)&&!f.defined(t))t=0;if(!f.defined(e))this.options.linearA=[];else if(f.number(e))this.options.linearA=[e];else if(Array.isArray(e)&&f.inRange(e.length,1,1e6)&&e.every(f.number))this.options.linearA=e;else throw f.invalidParameterError("a","number or array of numbers",e);if(!f.defined(t))this.options.linearB=[];else if(f.number(t))this.options.linearB=[t];else if(Array.isArray(t)&&f.inRange(t.length,1,1e6)&&t.every(f.number))this.options.linearB=t;else throw f.invalidParameterError("b","number or array of numbers",t);if(this.options.linearA.length!==this.options.linearB.length)throw Error("Expected a and b to be arrays of the same length");return this}function U5(e){if(!Array.isArray(e))throw f.invalidParameterError("inputMatrix","array",e);let t=e.length;if(t!==3&&t!==4)throw f.invalidParameterError("inputMatrix","3x3 or 4x4 array",t);if(!e.every((n)=>Array.isArray(n)&&n.length===t))throw f.invalidParameterError("inputMatrix",`array of ${t} arrays of length ${t}`,e);let r=e.flat();if(!r.every(f.number))throw f.invalidParameterError("inputMatrix","array of numbers",r);return this.options.recombMatrix=r,this}function z5(e){if(!f.plainObject(e))throw f.invalidParameterError("options","plain object",e);if("brightness"in e)if(f.number(e.brightness)&&e.brightness>=0)this.options.brightness=e.brightness;else throw f.invalidParameterError("brightness","number above zero",e.brightness);if("saturation"in e)if(f.number(e.saturation)&&e.saturation>=0)this.options.saturation=e.saturation;else throw f.invalidParameterError("saturation","number above zero",e.saturation);if("hue"in e)if(f.integer(e.hue))this.options.hue=e.hue%360;else throw f.invalidParameterError("hue","number",e.hue);if("lightness"in e)if(f.number(e.lightness))this.options.lightness=e.lightness;else throw f.invalidParameterError("lightness","number",e.lightness);return this}var VS,WS=(e)=>{Object.assign(e.prototype,{autoOrient:j5,rotate:P5,flip:k5,flop:_5,affine:A5,sharpen:R5,erode:T5,dilate:N5,median:O5,blur:C5,flatten:I5,unflatten:J5,gamma:M5,negate:D5,normalise:L5,normalize:F5,clahe:q5,convolve:V5,threshold:W5,boolean:H5,linear:B5,recomb:U5,modulate:z5})};var HS=D(()=>{On();/*!
|
|
394
|
+
*/gh={clear:"clear",source:"source",over:"over",in:"in",out:"out",atop:"atop",dest:"dest","dest-over":"dest-over","dest-in":"dest-in","dest-out":"dest-out","dest-atop":"dest-atop",xor:"xor",add:"add",saturate:"saturate",multiply:"multiply",screen:"screen",overlay:"overlay",darken:"darken",lighten:"lighten","colour-dodge":"colour-dodge","color-dodge":"colour-dodge","colour-burn":"colour-burn","color-burn":"colour-burn","hard-light":"hard-light","soft-light":"soft-light",difference:"difference",exclusion:"exclusion"}});function U5(e,t){if(!f.defined(e))return this.autoOrient();if(this.options.angle||this.options.rotationAngle)this.options.debuglog("ignoring previous rotate options"),this.options.angle=0,this.options.rotationAngle=0;if(f.integer(e)&&!(e%90))this.options.angle=e;else if(f.number(e)){if(this.options.rotationAngle=e,f.object(t)&&t.background)this._setBackgroundColourOption("rotationBackground",t.background)}else throw f.invalidParameterError("angle","numeric",e);return this}function z5(){return this.options.input.autoOrient=!0,this}function G5(e){return this.options.flip=f.bool(e)?e:!0,this}function K5(e){return this.options.flop=f.bool(e)?e:!0,this}function Y5(e,t){let n=Array.isArray(e)&&(e.length===4&&e.every(f.number)||e.length===2&&e.every((s)=>Array.isArray(s)&&s.length===2))?e.flat():[];if(n.length===4&&n.every(f.number))this.options.affineMatrix=n;else throw f.invalidParameterError("matrix","1x4 or 2x2 array",e);if(f.defined(t))if(f.object(t)){if(this._setBackgroundColourOption("affineBackground",t.background),f.defined(t.idx))if(f.number(t.idx))this.options.affineIdx=t.idx;else throw f.invalidParameterError("options.idx","number",t.idx);if(f.defined(t.idy))if(f.number(t.idy))this.options.affineIdy=t.idy;else throw f.invalidParameterError("options.idy","number",t.idy);if(f.defined(t.odx))if(f.number(t.odx))this.options.affineOdx=t.odx;else throw f.invalidParameterError("options.odx","number",t.odx);if(f.defined(t.ody))if(f.number(t.ody))this.options.affineOdy=t.ody;else throw f.invalidParameterError("options.ody","number",t.ody);if(f.defined(t.interpolator))if(f.inArray(t.interpolator,Object.values(this.constructor.interpolators)))this.options.affineInterpolator=t.interpolator;else throw f.invalidParameterError("options.interpolator","valid interpolator name",t.interpolator)}else throw f.invalidParameterError("options","object",t);return this}function X5(e){if(f.plainObject(e)){if(f.number(e.sigma)&&f.inRange(e.sigma,0.000001,10))this.options.sharpenSigma=e.sigma;else throw f.invalidParameterError("options.sigma","number between 0.000001 and 10",e.sigma);if(f.defined(e.m1))if(f.number(e.m1)&&f.inRange(e.m1,0,1e6))this.options.sharpenM1=e.m1;else throw f.invalidParameterError("options.m1","number between 0 and 1000000",e.m1);if(f.defined(e.m2))if(f.number(e.m2)&&f.inRange(e.m2,0,1e6))this.options.sharpenM2=e.m2;else throw f.invalidParameterError("options.m2","number between 0 and 1000000",e.m2);if(f.defined(e.x1))if(f.number(e.x1)&&f.inRange(e.x1,0,1e6))this.options.sharpenX1=e.x1;else throw f.invalidParameterError("options.x1","number between 0 and 1000000",e.x1);if(f.defined(e.y2))if(f.number(e.y2)&&f.inRange(e.y2,0,1e6))this.options.sharpenY2=e.y2;else throw f.invalidParameterError("options.y2","number between 0 and 1000000",e.y2);if(f.defined(e.y3))if(f.number(e.y3)&&f.inRange(e.y3,0,1e6))this.options.sharpenY3=e.y3;else throw f.invalidParameterError("options.y3","number between 0 and 1000000",e.y3)}else this.options.sharpenSigma=-1;return this}function Z5(e){if(!f.defined(e))this.options.medianSize=3;else if(f.integer(e)&&f.inRange(e,1,1000))this.options.medianSize=e;else throw f.invalidParameterError("size","integer between 1 and 1000",e);return this}function Q5(e){let t;if(f.number(e))t=e;else if(f.plainObject(e)){if(!f.number(e.sigma))throw f.invalidParameterError("options.sigma","number between 0.3 and 1000",t);if(t=e.sigma,"precision"in e)if(f.string(XS[e.precision]))this.options.precision=XS[e.precision];else throw f.invalidParameterError("precision","one of: integer, float, approximate",e.precision);if("minAmplitude"in e)if(f.number(e.minAmplitude)&&f.inRange(e.minAmplitude,0.001,1))this.options.minAmpl=e.minAmplitude;else throw f.invalidParameterError("minAmplitude","number between 0.001 and 1",e.minAmplitude)}if(!f.defined(e))this.options.blurSigma=-1;else if(f.bool(e))this.options.blurSigma=e?-1:0;else if(f.number(t)&&f.inRange(t,0.3,1000))this.options.blurSigma=t;else throw f.invalidParameterError("sigma","number between 0.3 and 1000",t);return this}function eq(e){if(!f.defined(e))this.options.dilateWidth=1;else if(f.integer(e)&&f.inRange(e,1,65536))this.options.dilateWidth=e;else throw f.invalidParameterError("width","integer between 1 and 65536",e);return this}function tq(e){if(!f.defined(e))this.options.erodeWidth=1;else if(f.integer(e)&&f.inRange(e,1,65536))this.options.erodeWidth=e;else throw f.invalidParameterError("width","integer between 1 and 65536",e);return this}function rq(e){if(this.options.flatten=f.bool(e)?e:!0,f.object(e))this._setBackgroundColourOption("flattenBackground",e.background);return this}function nq(){return this.options.unflatten=!0,this}function sq(e,t){if(!f.defined(e))this.options.gamma=2.2;else if(f.number(e)&&f.inRange(e,1,3))this.options.gamma=e;else throw f.invalidParameterError("gamma","number between 1.0 and 3.0",e);if(!f.defined(t))this.options.gammaOut=this.options.gamma;else if(f.number(t)&&f.inRange(t,1,3))this.options.gammaOut=t;else throw f.invalidParameterError("gammaOut","number between 1.0 and 3.0",t);return this}function iq(e){if(this.options.negate=f.bool(e)?e:!0,f.plainObject(e)&&"alpha"in e)if(!f.bool(e.alpha))throw f.invalidParameterError("alpha","should be boolean value",e.alpha);else this.options.negateAlpha=e.alpha;return this}function oq(e){if(f.plainObject(e)){if(f.defined(e.lower))if(f.number(e.lower)&&f.inRange(e.lower,0,99))this.options.normaliseLower=e.lower;else throw f.invalidParameterError("lower","number between 0 and 99",e.lower);if(f.defined(e.upper))if(f.number(e.upper)&&f.inRange(e.upper,1,100))this.options.normaliseUpper=e.upper;else throw f.invalidParameterError("upper","number between 1 and 100",e.upper)}if(this.options.normaliseLower>=this.options.normaliseUpper)throw f.invalidParameterError("range","lower to be less than upper",`${this.options.normaliseLower} >= ${this.options.normaliseUpper}`);return this.options.normalise=!0,this}function aq(e){return this.normalise(e)}function lq(e){if(f.plainObject(e)){if(f.integer(e.width)&&f.inRange(e.width,1,65536))this.options.claheWidth=e.width;else throw f.invalidParameterError("width","integer between 1 and 65536",e.width);if(f.integer(e.height)&&f.inRange(e.height,1,65536))this.options.claheHeight=e.height;else throw f.invalidParameterError("height","integer between 1 and 65536",e.height);if(f.defined(e.maxSlope))if(f.integer(e.maxSlope)&&f.inRange(e.maxSlope,0,100))this.options.claheMaxSlope=e.maxSlope;else throw f.invalidParameterError("maxSlope","integer between 0 and 100",e.maxSlope)}else throw f.invalidParameterError("options","plain object",e);return this}function cq(e){if(!f.object(e)||!Array.isArray(e.kernel)||!f.integer(e.width)||!f.integer(e.height)||!f.inRange(e.width,3,1001)||!f.inRange(e.height,3,1001)||e.height*e.width!==e.kernel.length||!e.kernel.every(f.number))throw Error("Invalid convolution kernel");if(!f.integer(e.scale))e.scale=e.kernel.reduce((t,r)=>t+r,0);if(e.scale<1)e.scale=1;if(!f.integer(e.offset))e.offset=0;return this.options.convKernel=e,this}function uq(e,t){if(!f.defined(e))this.options.threshold=128;else if(f.bool(e))this.options.threshold=e?128:0;else if(f.integer(e)&&f.inRange(e,0,255))this.options.threshold=e;else throw f.invalidParameterError("threshold","integer between 0 and 255",e);if(!f.object(t)||t.greyscale===!0||t.grayscale===!0)this.options.thresholdGrayscale=!0;else this.options.thresholdGrayscale=!1;return this}function fq(e,t,r){if(this.options.boolean=this._createInputDescriptor(e,r),f.string(t)&&f.inArray(t,["and","or","eor"]))this.options.booleanOp=t;else throw f.invalidParameterError("operator","one of: and, or, eor",t);return this}function dq(e,t){if(!f.defined(e)&&f.number(t))e=1;else if(f.number(e)&&!f.defined(t))t=0;if(!f.defined(e))this.options.linearA=[];else if(f.number(e))this.options.linearA=[e];else if(Array.isArray(e)&&f.inRange(e.length,1,1e6)&&e.every(f.number))this.options.linearA=e;else throw f.invalidParameterError("a","number or array of numbers",e);if(!f.defined(t))this.options.linearB=[];else if(f.number(t))this.options.linearB=[t];else if(Array.isArray(t)&&f.inRange(t.length,1,1e6)&&t.every(f.number))this.options.linearB=t;else throw f.invalidParameterError("b","number or array of numbers",t);if(this.options.linearA.length!==this.options.linearB.length)throw Error("Expected a and b to be arrays of the same length");return this}function pq(e){if(!Array.isArray(e))throw f.invalidParameterError("inputMatrix","array",e);let t=e.length;if(t!==3&&t!==4)throw f.invalidParameterError("inputMatrix","3x3 or 4x4 array",t);if(!e.every((n)=>Array.isArray(n)&&n.length===t))throw f.invalidParameterError("inputMatrix",`array of ${t} arrays of length ${t}`,e);let r=e.flat();if(!r.every(f.number))throw f.invalidParameterError("inputMatrix","array of numbers",r);return this.options.recombMatrix=r,this}function mq(e){if(!f.plainObject(e))throw f.invalidParameterError("options","plain object",e);if("brightness"in e)if(f.number(e.brightness)&&e.brightness>=0)this.options.brightness=e.brightness;else throw f.invalidParameterError("brightness","number above zero",e.brightness);if("saturation"in e)if(f.number(e.saturation)&&e.saturation>=0)this.options.saturation=e.saturation;else throw f.invalidParameterError("saturation","number above zero",e.saturation);if("hue"in e)if(f.integer(e.hue))this.options.hue=e.hue%360;else throw f.invalidParameterError("hue","number",e.hue);if("lightness"in e)if(f.number(e.lightness))this.options.lightness=e.lightness;else throw f.invalidParameterError("lightness","number",e.lightness);return this}var XS,ZS=(e)=>{Object.assign(e.prototype,{autoOrient:z5,rotate:U5,flip:G5,flop:K5,affine:Y5,sharpen:X5,erode:tq,dilate:eq,median:Z5,blur:Q5,flatten:rq,unflatten:nq,gamma:sq,negate:iq,normalise:oq,normalize:aq,clahe:lq,convolve:cq,threshold:uq,boolean:fq,linear:dq,recomb:pq,modulate:mq})};var QS=D(()=>{On();/*!
|
|
395
395
|
Copyright 2013 Lovell Fuller and others.
|
|
396
396
|
SPDX-License-Identifier: Apache-2.0
|
|
397
|
-
*/VS={integer:"integer",float:"float",approximate:"approximate"}});var YS=N(function($re,KS){var{defineProperty:mh,getOwnPropertyDescriptor:G5,getOwnPropertyNames:K5}=Object,Y5=Object.prototype.hasOwnProperty,X5=(e,t)=>{for(var r in t)mh(e,r,{get:t[r],enumerable:!0})},Z5=(e,t,r,n)=>{if(t&&typeof t==="object"||typeof t==="function"){for(let s of K5(t))if(!Y5.call(e,s)&&s!==r)mh(e,s,{get:()=>t[s],enumerable:!(n=G5(t,s))||n.enumerable})}return e},Q5=(e)=>Z5(mh({},"__esModule",{value:!0}),e),BS={};X5(BS,{default:()=>pq});KS.exports=Q5(BS);var uh={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};for(let e in uh)Object.freeze(uh[e]);var Mn=Object.freeze(uh),US=Object.create(null);for(let e in Mn)if(Object.hasOwn(Mn,e))US[Mn[e]]=e;var Pr={to:{},get:{}};Pr.get=function(e){let t=e.slice(0,3).toLowerCase(),r,n;switch(t){case"hsl":{r=Pr.get.hsl(e),n="hsl";break}case"hwb":{r=Pr.get.hwb(e),n="hwb";break}default:{r=Pr.get.rgb(e),n="rgb";break}}if(!r)return null;return{model:n,value:r}};Pr.get.rgb=function(e){if(!e)return null;let t=/^#([a-f\d]{3,4})$/i,r=/^#([a-f\d]{6})([a-f\d]{2})?$/i,n=/^rgba?\(\s*([+-]?(?:\d*\.)?\d+(?:e\d+)?)(?=[\s,])\s*(?:,\s*)?([+-]?(?:\d*\.)?\d+(?:e\d+)?)(?=[\s,])\s*(?:,\s*)?([+-]?(?:\d*\.)?\d+(?:e\d+)?)\s*(?:[\s,|/]\s*([+-]?(?:\d*\.)?\d+(?:e\d+)?)(%?)\s*)?\)$/i,s=/^rgba?\(\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*(?:[\s,|/]\s*([+-]?[\d.]+)(%?)\s*)?\)$/i,i=/^(\w+)$/,o=[0,0,0,1],a,l,c;if(a=e.match(r)){c=a[2],a=a[1];for(l=0;l<3;l++){let u=l*2;o[l]=Number.parseInt(a.slice(u,u+2),16)}if(c)o[3]=Number.parseInt(c,16)/255}else if(a=e.match(t)){a=a[1],c=a[3];for(l=0;l<3;l++)o[l]=Number.parseInt(a[l]+a[l],16);if(c)o[3]=Number.parseInt(c+c,16)/255}else if(a=e.match(n)){for(l=0;l<3;l++)o[l]=Number.parseFloat(a[l+1]);if(a[4])o[3]=a[5]?Number.parseFloat(a[4])*0.01:Number.parseFloat(a[4])}else if(a=e.match(s)){for(l=0;l<3;l++)o[l]=Math.round(Number.parseFloat(a[l+1])*2.55);if(a[4])o[3]=a[5]?Number.parseFloat(a[4])*0.01:Number.parseFloat(a[4])}else if(a=e.toLowerCase().match(i)){if(a[1]==="transparent")return[0,0,0,0];if(!Object.hasOwn(Mn,a[1]))return null;return o=Mn[a[1]].slice(),o[3]=1,o}else return null;for(l=0;l<3;l++)o[l]=Zs(o[l],0,255);return o[3]=Zs(o[3],0,1),o};Pr.get.hsl=function(e){if(!e)return null;let t=/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*(?:[,|/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:e[+-]?\d+)?)\s*)?\)$/i,r=e.match(t);if(r){let n=Number.parseFloat(r[4]),s=(Number.parseFloat(r[1])%360+360)%360,i=Zs(Number.parseFloat(r[2]),0,100),o=Zs(Number.parseFloat(r[3]),0,100),a=Zs(Number.isNaN(n)?1:n,0,1);return[s,i,o,a]}return null};Pr.get.hwb=function(e){if(!e)return null;let t=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*[\s,]\s*([+-]?[\d.]+)%\s*[\s,]\s*([+-]?[\d.]+)%\s*(?:[\s,]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:e[+-]?\d+)?)\s*)?\)$/i,r=e.match(t);if(r){let n=Number.parseFloat(r[4]),s=(Number.parseFloat(r[1])%360+360)%360,i=Zs(Number.parseFloat(r[2]),0,100),o=Zs(Number.parseFloat(r[3]),0,100),a=Zs(Number.isNaN(n)?1:n,0,1);return[s,i,o,a]}return null};Pr.to.hex=function(...e){return"#"+ff(e[0])+ff(e[1])+ff(e[2])+(e[3]<1?ff(Math.round(e[3]*255)):"")};Pr.to.rgb=function(...e){return e.length<4||e[3]===1?"rgb("+Math.round(e[0])+", "+Math.round(e[1])+", "+Math.round(e[2])+")":"rgba("+Math.round(e[0])+", "+Math.round(e[1])+", "+Math.round(e[2])+", "+e[3]+")"};Pr.to.rgb.percent=function(...e){let t=Math.round(e[0]/255*100),r=Math.round(e[1]/255*100),n=Math.round(e[2]/255*100);return e.length<4||e[3]===1?"rgb("+t+"%, "+r+"%, "+n+"%)":"rgba("+t+"%, "+r+"%, "+n+"%, "+e[3]+")"};Pr.to.hsl=function(...e){return e.length<4||e[3]===1?"hsl("+e[0]+", "+e[1]+"%, "+e[2]+"%)":"hsla("+e[0]+", "+e[1]+"%, "+e[2]+"%, "+e[3]+")"};Pr.to.hwb=function(...e){let t="";if(e.length>=4&&e[3]!==1)t=", "+e[3];return"hwb("+e[0]+", "+e[1]+"%, "+e[2]+"%"+t+")"};Pr.to.keyword=function(...e){return US[e.slice(0,3)]};function Zs(e,t,r){return Math.min(Math.max(t,e),r)}function ff(e){let t=Math.round(e).toString(16).toUpperCase();return t.length<2?"0"+t:t}var aa=Pr,zS={};for(let e of Object.keys(Mn))zS[Mn[e]]=e;var Q={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},oklab:{channels:3,labels:["okl","oka","okb"]},lch:{channels:3,labels:"lch"},oklch:{channels:3,labels:["okl","okc","okh"]},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}},io=Q,ks=0.008856451679035631;function ca(e){let t=e>0.0031308?1.055*e**0.4166666666666667-0.055:e*12.92;return Math.min(Math.max(0,t),1)}function ua(e){return e>0.04045?((e+0.055)/1.055)**2.4:e/12.92}for(let e of Object.keys(Q)){if(!("channels"in Q[e]))throw Error("missing channels property: "+e);if(!("labels"in Q[e]))throw Error("missing channel labels property: "+e);if(Q[e].labels.length!==Q[e].channels)throw Error("channel and label counts mismatch: "+e);let{channels:t,labels:r}=Q[e];delete Q[e].channels,delete Q[e].labels,Object.defineProperty(Q[e],"channels",{value:t}),Object.defineProperty(Q[e],"labels",{value:r})}Q.rgb.hsl=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,s=Math.min(t,r,n),i=Math.max(t,r,n),o=i-s,a,l;switch(i){case s:{a=0;break}case t:{a=(r-n)/o;break}case r:{a=2+(n-t)/o;break}case n:{a=4+(t-r)/o;break}}if(a=Math.min(a*60,360),a<0)a+=360;let c=(s+i)/2;if(i===s)l=0;else if(c<=0.5)l=o/(i+s);else l=o/(2-i-s);return[a,l*100,c*100]};Q.rgb.hsv=function(e){let t,r,n,s,i,o=e[0]/255,a=e[1]/255,l=e[2]/255,c=Math.max(o,a,l),u=c-Math.min(o,a,l),p=function(h){return(c-h)/6/u+0.5};if(u===0)s=0,i=0;else{switch(i=u/c,t=p(o),r=p(a),n=p(l),c){case o:{s=n-r;break}case a:{s=0.3333333333333333+t-n;break}case l:{s=0.6666666666666666+r-t;break}}if(s<0)s+=1;else if(s>1)s-=1}return[s*360,i*100,c*100]};Q.rgb.hwb=function(e){let t=e[0],r=e[1],n=e[2],s=Q.rgb.hsl(e)[0],i=0.00392156862745098*Math.min(t,Math.min(r,n));return n=1-0.00392156862745098*Math.max(t,Math.max(r,n)),[s,i*100,n*100]};Q.rgb.oklab=function(e){let t=ua(e[0]/255),r=ua(e[1]/255),n=ua(e[2]/255),s=Math.cbrt(0.4122214708*t+0.5363325363*r+0.0514459929*n),i=Math.cbrt(0.2119034982*t+0.6806995451*r+0.1073969566*n),o=Math.cbrt(0.0883024619*t+0.2817188376*r+0.6299787005*n),a=0.2104542553*s+0.793617785*i-0.0040720468*o,l=1.9779984951*s-2.428592205*i+0.4505937099*o,c=0.0259040371*s+0.7827717662*i-0.808675766*o;return[a*100,l*100,c*100]};Q.rgb.cmyk=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,s=Math.min(1-t,1-r,1-n),i=(1-t-s)/(1-s)||0,o=(1-r-s)/(1-s)||0,a=(1-n-s)/(1-s)||0;return[i*100,o*100,a*100,s*100]};function eq(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}Q.rgb.keyword=function(e){let t=zS[e];if(t)return t;let r=Number.POSITIVE_INFINITY,n;for(let s of Object.keys(Mn)){let i=Mn[s],o=eq(e,i);if(o<r)r=o,n=s}return n};Q.keyword.rgb=function(e){return[...Mn[e]]};Q.rgb.xyz=function(e){let t=ua(e[0]/255),r=ua(e[1]/255),n=ua(e[2]/255),s=t*0.4124564+r*0.3575761+n*0.1804375,i=t*0.2126729+r*0.7151522+n*0.072175,o=t*0.0193339+r*0.119192+n*0.9503041;return[s*100,i*100,o*100]};Q.rgb.lab=function(e){let t=Q.rgb.xyz(e),r=t[0],n=t[1],s=t[2];r/=95.047,n/=100,s/=108.883,r=r>ks?r**0.3333333333333333:7.787*r+0.13793103448275862,n=n>ks?n**0.3333333333333333:7.787*n+0.13793103448275862,s=s>ks?s**0.3333333333333333:7.787*s+0.13793103448275862;let i=116*n-16,o=500*(r-n),a=200*(n-s);return[i,o,a]};Q.hsl.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,s,i;if(r===0)return i=n*255,[i,i,i];let o=n<0.5?n*(1+r):n+r-n*r,a=2*n-o,l=[0,0,0];for(let c=0;c<3;c++){if(s=t+0.3333333333333333*-(c-1),s<0)s++;if(s>1)s--;if(6*s<1)i=a+(o-a)*6*s;else if(2*s<1)i=o;else if(3*s<2)i=a+(o-a)*(0.6666666666666666-s)*6;else i=a;l[c]=i*255}return l};Q.hsl.hsv=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,s=r,i=Math.max(n,0.01);n*=2,r*=n<=1?n:2-n,s*=i<=1?i:2-i;let o=(n+r)/2,a=n===0?2*s/(i+s):2*r/(n+r);return[t,a*100,o*100]};Q.hsv.rgb=function(e){let t=e[0]/60,r=e[1]/100,n=e[2]/100,s=Math.floor(t)%6,i=t-Math.floor(t),o=255*n*(1-r),a=255*n*(1-r*i),l=255*n*(1-r*(1-i));switch(n*=255,s){case 0:return[n,l,o];case 1:return[a,n,o];case 2:return[o,n,l];case 3:return[o,a,n];case 4:return[l,o,n];case 5:return[n,o,a]}};Q.hsv.hsl=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,s=Math.max(n,0.01),i,o;o=(2-r)*n;let a=(2-r)*s;return i=r*s,i/=a<=1?a:2-a,i=i||0,o/=2,[t,i*100,o*100]};Q.hwb.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,s=r+n,i;if(s>1)r/=s,n/=s;let o=Math.floor(6*t),a=1-n;if(i=6*t-o,(o&1)!==0)i=1-i;let l=r+i*(a-r),c,u,p;switch(o){default:case 6:case 0:{c=a,u=l,p=r;break}case 1:{c=l,u=a,p=r;break}case 2:{c=r,u=a,p=l;break}case 3:{c=r,u=l,p=a;break}case 4:{c=l,u=r,p=a;break}case 5:{c=a,u=r,p=l;break}}return[c*255,u*255,p*255]};Q.cmyk.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,s=e[3]/100,i=1-Math.min(1,t*(1-s)+s),o=1-Math.min(1,r*(1-s)+s),a=1-Math.min(1,n*(1-s)+s);return[i*255,o*255,a*255]};Q.xyz.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,s,i,o;return s=t*3.2404542+r*-1.5371385+n*-0.4985314,i=t*-0.969266+r*1.8760108+n*0.041556,o=t*0.0556434+r*-0.2040259+n*1.0572252,s=ca(s),i=ca(i),o=ca(o),[s*255,i*255,o*255]};Q.xyz.lab=function(e){let t=e[0],r=e[1],n=e[2];t/=95.047,r/=100,n/=108.883,t=t>ks?t**0.3333333333333333:7.787*t+0.13793103448275862,r=r>ks?r**0.3333333333333333:7.787*r+0.13793103448275862,n=n>ks?n**0.3333333333333333:7.787*n+0.13793103448275862;let s=116*r-16,i=500*(t-r),o=200*(r-n);return[s,i,o]};Q.xyz.oklab=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,s=Math.cbrt(0.8189330101*t+0.3618667424*r-0.1288597137*n),i=Math.cbrt(0.0329845436*t+0.9293118715*r+0.0361456387*n),o=Math.cbrt(0.0482003018*t+0.2643662691*r+0.633851707*n),a=0.2104542553*s+0.793617785*i-0.0040720468*o,l=1.9779984951*s-2.428592205*i+0.4505937099*o,c=0.0259040371*s+0.7827717662*i-0.808675766*o;return[a*100,l*100,c*100]};Q.oklab.oklch=function(e){return Q.lab.lch(e)};Q.oklab.xyz=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,s=(0.999999998*t+0.396337792*r+0.215803758*n)**3,i=(1.000000008*t-0.105561342*r-0.063854175*n)**3,o=(1.000000055*t-0.089484182*r-1.291485538*n)**3,a=1.227013851*s-0.55779998*i+0.281256149*o,l=-0.040580178*s+1.11225687*i-0.071676679*o,c=-0.076381285*s-0.421481978*i+1.58616322*o;return[a*100,l*100,c*100]};Q.oklab.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,s=(t+0.3963377774*r+0.2158037573*n)**3,i=(t-0.1055613458*r-0.0638541728*n)**3,o=(t-0.0894841775*r-1.291485548*n)**3,a=ca(4.0767416621*s-3.3077115913*i+0.2309699292*o),l=ca(-1.2684380046*s+2.6097574011*i-0.3413193965*o),c=ca(-0.0041960863*s-0.7034186147*i+1.707614701*o);return[a*255,l*255,c*255]};Q.oklch.oklab=function(e){return Q.lch.lab(e)};Q.lab.xyz=function(e){let t=e[0],r=e[1],n=e[2],s,i,o;i=(t+16)/116,s=r/500+i,o=i-n/200;let a=i**3,l=s**3,c=o**3;return i=a>ks?a:(i-0.13793103448275862)/7.787,s=l>ks?l:(s-0.13793103448275862)/7.787,o=c>ks?c:(o-0.13793103448275862)/7.787,s*=95.047,i*=100,o*=108.883,[s,i,o]};Q.lab.lch=function(e){let t=e[0],r=e[1],n=e[2],s;if(s=Math.atan2(n,r)*360/2/Math.PI,s<0)s+=360;let o=Math.sqrt(r*r+n*n);return[t,o,s]};Q.lch.lab=function(e){let t=e[0],r=e[1],s=e[2]/360*2*Math.PI,i=r*Math.cos(s),o=r*Math.sin(s);return[t,i,o]};Q.rgb.ansi16=function(e,t=null){let[r,n,s]=e,i=t===null?Q.rgb.hsv(e)[2]:t;if(i=Math.round(i/50),i===0)return 30;let o=30+(Math.round(s/255)<<2|Math.round(n/255)<<1|Math.round(r/255));if(i===2)o+=60;return o};Q.hsv.ansi16=function(e){return Q.rgb.ansi16(Q.hsv.rgb(e),e[2])};Q.rgb.ansi256=function(e){let t=e[0],r=e[1],n=e[2];if(t>>4===r>>4&&r>>4===n>>4){if(t<8)return 16;if(t>248)return 231;return Math.round((t-8)/247*24)+232}return 16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5)};Q.ansi16.rgb=function(e){e=e[0];let t=e%10;if(t===0||t===7){if(e>50)t+=3.5;return t=t/10.5*255,[t,t,t]}let r=(Math.trunc(e>50)+1)*0.5,n=(t&1)*r*255,s=(t>>1&1)*r*255,i=(t>>2&1)*r*255;return[n,s,i]};Q.ansi256.rgb=function(e){if(e=e[0],e>=232){let i=(e-232)*10+8;return[i,i,i]}e-=16;let t,r=Math.floor(e/36)/5*255,n=Math.floor((t=e%36)/6)/5*255,s=t%6/5*255;return[r,n,s]};Q.rgb.hex=function(e){let r=(((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255)).toString(16).toUpperCase();return"000000".slice(r.length)+r};Q.hex.rgb=function(e){let t=e.toString(16).match(/[a-f\d]{6}|[a-f\d]{3}/i);if(!t)return[0,0,0];let r=t[0];if(t[0].length===3)r=[...r].map((a)=>a+a).join("");let n=Number.parseInt(r,16),s=n>>16&255,i=n>>8&255,o=n&255;return[s,i,o]};Q.rgb.hcg=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,s=Math.max(Math.max(t,r),n),i=Math.min(Math.min(t,r),n),o=s-i,a,l=o<1?i/(1-o):0;if(o<=0)a=0;else if(s===t)a=(r-n)/o%6;else if(s===r)a=2+(n-t)/o;else a=4+(t-r)/o;return a/=6,a%=1,[a*360,o*100,l*100]};Q.hsl.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=r<0.5?2*t*r:2*t*(1-r),s=0;if(n<1)s=(r-0.5*n)/(1-n);return[e[0],n*100,s*100]};Q.hsv.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=t*r,s=0;if(n<1)s=(r-n)/(1-n);return[e[0],n*100,s*100]};Q.hcg.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100;if(r===0)return[n*255,n*255,n*255];let s=[0,0,0],i=t%1*6,o=i%1,a=1-o,l=0;switch(Math.floor(i)){case 0:{s[0]=1,s[1]=o,s[2]=0;break}case 1:{s[0]=a,s[1]=1,s[2]=0;break}case 2:{s[0]=0,s[1]=1,s[2]=o;break}case 3:{s[0]=0,s[1]=a,s[2]=1;break}case 4:{s[0]=o,s[1]=0,s[2]=1;break}default:s[0]=1,s[1]=0,s[2]=a}return l=(1-r)*n,[(r*s[0]+l)*255,(r*s[1]+l)*255,(r*s[2]+l)*255]};Q.hcg.hsv=function(e){let t=e[1]/100,r=e[2]/100,n=t+r*(1-t),s=0;if(n>0)s=t/n;return[e[0],s*100,n*100]};Q.hcg.hsl=function(e){let t=e[1]/100,n=e[2]/100*(1-t)+0.5*t,s=0;if(n>0&&n<0.5)s=t/(2*n);else if(n>=0.5&&n<1)s=t/(2*(1-n));return[e[0],s*100,n*100]};Q.hcg.hwb=function(e){let t=e[1]/100,r=e[2]/100,n=t+r*(1-t);return[e[0],(n-t)*100,(1-n)*100]};Q.hwb.hcg=function(e){let t=e[1]/100,n=1-e[2]/100,s=n-t,i=0;if(s<1)i=(n-s)/(1-s);return[e[0],s*100,i*100]};Q.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};Q.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};Q.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};Q.gray.hsl=function(e){return[0,0,e[0]]};Q.gray.hsv=Q.gray.hsl;Q.gray.hwb=function(e){return[0,100,e[0]]};Q.gray.cmyk=function(e){return[0,0,0,e[0]]};Q.gray.lab=function(e){return[e[0],0,0]};Q.gray.hex=function(e){let t=Math.round(e[0]/100*255)&255,n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".slice(n.length)+n};Q.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]};function tq(){let e={},t=Object.keys(io);for(let{length:r}=t,n=0;n<r;n++)e[t[n]]={distance:-1,parent:null};return e}function rq(e){let t=tq(),r=[e];t[e].distance=0;while(r.length>0){let n=r.pop(),s=Object.keys(io[n]);for(let{length:i}=s,o=0;o<i;o++){let a=s[o],l=t[a];if(l.distance===-1)l.distance=t[n].distance+1,l.parent=n,r.unshift(a)}}return t}function nq(e,t){return function(r){return t(e(r))}}function sq(e,t){let r=[t[e].parent,e],n=io[t[e].parent][e],s=t[e].parent;while(t[s].parent)r.unshift(t[s].parent),n=nq(io[t[s].parent][s],n),s=t[s].parent;return n.conversion=r,n}function iq(e){let t=rq(e),r={},n=Object.keys(t);for(let{length:s}=n,i=0;i<s;i++){let o=n[i];if(t[o].parent===null)continue;r[o]=sq(o,t)}return r}var oq=iq,la={},aq=Object.keys(io);function lq(e){let t=function(...r){let n=r[0];if(n===void 0||n===null)return n;if(n.length>1)r=n;return e(r)};if("conversion"in e)t.conversion=e.conversion;return t}function cq(e){let t=function(...r){let n=r[0];if(n===void 0||n===null)return n;if(n.length>1)r=n;let s=e(r);if(typeof s==="object")for(let{length:i}=s,o=0;o<i;o++)s[o]=Math.round(s[o]);return s};if("conversion"in e)t.conversion=e.conversion;return t}for(let e of aq){la[e]={},Object.defineProperty(la[e],"channels",{value:io[e].channels}),Object.defineProperty(la[e],"labels",{value:io[e].labels});let t=oq(e),r=Object.keys(t);for(let n of r){let s=t[n];la[e][n]=cq(s),la[e][n].raw=lq(s)}}var Wr=la,GS=["keyword","gray","hex"],fh={};for(let e of Object.keys(Wr))fh[[...Wr[e].labels].sort().join("")]=e;var dh={};function Lt(e,t){if(!(this instanceof Lt))return new Lt(e,t);if(t&&t in GS)t=null;if(t&&!(t in Wr))throw Error("Unknown model: "+t);let r,n;if(e==null)this.model="rgb",this.color=[0,0,0],this.valpha=1;else if(e instanceof Lt)this.model=e.model,this.color=[...e.color],this.valpha=e.valpha;else if(typeof e==="string"){let s=aa.get(e);if(s===null)throw Error("Unable to parse color from string: "+e);this.model=s.model,n=Wr[this.model].channels,this.color=s.value.slice(0,n),this.valpha=typeof s.value[n]==="number"?s.value[n]:1}else if(e.length>0){this.model=t||"rgb",n=Wr[this.model].channels;let s=Array.prototype.slice.call(e,0,n);this.color=ph(s,n),this.valpha=typeof e[n]==="number"?e[n]:1}else if(typeof e==="number")this.model="rgb",this.color=[e>>16&255,e>>8&255,e&255],this.valpha=1;else{this.valpha=1;let s=Object.keys(e);if("alpha"in e)s.splice(s.indexOf("alpha"),1),this.valpha=typeof e.alpha==="number"?e.alpha:0;let i=s.sort().join("");if(!(i in fh))throw Error("Unable to parse color from object: "+JSON.stringify(e));this.model=fh[i];let{labels:o}=Wr[this.model],a=[];for(r=0;r<o.length;r++)a.push(e[o[r]]);this.color=ph(a)}if(dh[this.model]){n=Wr[this.model].channels;for(r=0;r<n;r++){let s=dh[this.model][r];if(s)this.color[r]=s(this.color[r])}}if(this.valpha=Math.max(0,Math.min(1,this.valpha)),Object.freeze)Object.freeze(this)}Lt.prototype={toString(){return this.string()},toJSON(){return this[this.model]()},string(e){let t=this.model in aa.to?this:this.rgb();t=t.round(typeof e==="number"?e:1);let r=t.valpha===1?t.color:[...t.color,this.valpha];return aa.to[t.model](...r)},percentString(e){let t=this.rgb().round(typeof e==="number"?e:1),r=t.valpha===1?t.color:[...t.color,this.valpha];return aa.to.rgb.percent(...r)},array(){return this.valpha===1?[...this.color]:[...this.color,this.valpha]},object(){let e={},{channels:t}=Wr[this.model],{labels:r}=Wr[this.model];for(let n=0;n<t;n++)e[r[n]]=this.color[n];if(this.valpha!==1)e.alpha=this.valpha;return e},unitArray(){let e=this.rgb().color;if(e[0]/=255,e[1]/=255,e[2]/=255,this.valpha!==1)e.push(this.valpha);return e},unitObject(){let e=this.rgb().object();if(e.r/=255,e.g/=255,e.b/=255,this.valpha!==1)e.alpha=this.valpha;return e},round(e){return e=Math.max(e||0,0),new Lt([...this.color.map(fq(e)),this.valpha],this.model)},alpha(e){if(e!==void 0)return new Lt([...this.color,Math.max(0,Math.min(1,e))],this.model);return this.valpha},red:pt("rgb",0,Mt(255)),green:pt("rgb",1,Mt(255)),blue:pt("rgb",2,Mt(255)),hue:pt(["hsl","hsv","hsl","hwb","hcg"],0,(e)=>(e%360+360)%360),saturationl:pt("hsl",1,Mt(100)),lightness:pt("hsl",2,Mt(100)),saturationv:pt("hsv",1,Mt(100)),value:pt("hsv",2,Mt(100)),chroma:pt("hcg",1,Mt(100)),gray:pt("hcg",2,Mt(100)),white:pt("hwb",1,Mt(100)),wblack:pt("hwb",2,Mt(100)),cyan:pt("cmyk",0,Mt(100)),magenta:pt("cmyk",1,Mt(100)),yellow:pt("cmyk",2,Mt(100)),black:pt("cmyk",3,Mt(100)),x:pt("xyz",0,Mt(95.047)),y:pt("xyz",1,Mt(100)),z:pt("xyz",2,Mt(108.833)),l:pt("lab",0,Mt(100)),a:pt("lab",1),b:pt("lab",2),keyword(e){if(e!==void 0)return new Lt(e);return Wr[this.model].keyword(this.color)},hex(e){if(e!==void 0)return new Lt(e);return aa.to.hex(...this.rgb().round().color)},hexa(e){if(e!==void 0)return new Lt(e);let t=this.rgb().round().color,r=Math.round(this.valpha*255).toString(16).toUpperCase();if(r.length===1)r="0"+r;return aa.to.hex(...t)+r},rgbNumber(){let e=this.rgb().color;return(e[0]&255)<<16|(e[1]&255)<<8|e[2]&255},luminosity(){let e=this.rgb().color,t=[];for(let[r,n]of e.entries()){let s=n/255;t[r]=s<=0.04045?s/12.92:((s+0.055)/1.055)**2.4}return 0.2126*t[0]+0.7152*t[1]+0.0722*t[2]},contrast(e){let t=this.luminosity(),r=e.luminosity();if(t>r)return(t+0.05)/(r+0.05);return(r+0.05)/(t+0.05)},level(e){let t=this.contrast(e);if(t>=7)return"AAA";return t>=4.5?"AA":""},isDark(){let e=this.rgb().color;return(e[0]*2126+e[1]*7152+e[2]*722)/1e4<128},isLight(){return!this.isDark()},negate(){let e=this.rgb();for(let t=0;t<3;t++)e.color[t]=255-e.color[t];return e},lighten(e){let t=this.hsl();return t.color[2]+=t.color[2]*e,t},darken(e){let t=this.hsl();return t.color[2]-=t.color[2]*e,t},saturate(e){let t=this.hsl();return t.color[1]+=t.color[1]*e,t},desaturate(e){let t=this.hsl();return t.color[1]-=t.color[1]*e,t},whiten(e){let t=this.hwb();return t.color[1]+=t.color[1]*e,t},blacken(e){let t=this.hwb();return t.color[2]+=t.color[2]*e,t},grayscale(){let e=this.rgb().color,t=e[0]*0.3+e[1]*0.59+e[2]*0.11;return Lt.rgb(t,t,t)},fade(e){return this.alpha(this.valpha-this.valpha*e)},opaquer(e){return this.alpha(this.valpha+this.valpha*e)},rotate(e){let t=this.hsl(),r=t.color[0];return r=(r+e)%360,r=r<0?360+r:r,t.color[0]=r,t},mix(e,t){if(!e||!e.rgb)throw Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof e);let r=e.rgb(),n=this.rgb(),s=t===void 0?0.5:t,i=2*s-1,o=r.alpha()-n.alpha(),a=((i*o===-1?i:(i+o)/(1+i*o))+1)/2,l=1-a;return Lt.rgb(a*r.red()+l*n.red(),a*r.green()+l*n.green(),a*r.blue()+l*n.blue(),r.alpha()*s+n.alpha()*(1-s))}};for(let e of Object.keys(Wr)){if(GS.includes(e))continue;let{channels:t}=Wr[e];Lt.prototype[e]=function(...r){if(this.model===e)return new Lt(this);if(r.length>0)return new Lt(r,e);return new Lt([...dq(Wr[this.model][e].raw(this.color)),this.valpha],e)},Lt[e]=function(...r){let n=r[0];if(typeof n==="number")n=ph(r,t);return new Lt(n,e)}}function uq(e,t){return Number(e.toFixed(t))}function fq(e){return function(t){return uq(t,e)}}function pt(e,t,r){e=Array.isArray(e)?e:[e];for(let n of e)(dh[n]||=[])[t]=r;return e=e[0],function(n){let s;if(n!==void 0){if(r)n=r(n);return s=this[e](),s.color[t]=n,s}if(s=this[e]().color[t],r)s=r(s);return s}}function Mt(e){return function(t){return Math.max(0,Math.min(e,t))}}function dq(e){return Array.isArray(e)?e:[e]}function ph(e,t){for(let r=0;r<t;r++)if(typeof e[r]!=="number")e[r]=0;return e}var pq=Lt});var ZS=N(function(wre,XS){XS.exports=YS().default});function mq(e){return this._setBackgroundColourOption("tint",e),this}function hq(e){return this.options.greyscale=f.bool(e)?e:!0,this}function gq(e){return this.greyscale(e)}function yq(e){if(!f.string(e))throw f.invalidParameterError("colourspace","string",e);return this.options.colourspacePipeline=e,this}function bq(e){return this.pipelineColourspace(e)}function xq(e){if(!f.string(e))throw f.invalidParameterError("colourspace","string",e);return this.options.colourspace=e,this}function $q(e){return this.toColourspace(e)}function tE(e){if(f.object(e)||f.string(e)&&e.length>=3&&e.length<=200){let t=eE.default(e),r=t.red(),n=t.green(),s=t.blue(),i=Math.round(t.alpha()*255);for(let[o,a]of[["red",r],["green",n],["blue",s],["alpha",i]])if(!f.number(a))throw f.invalidParameterError(`background.${o}`,"number",a);return[r,n,s,i]}else throw f.invalidParameterError("background","object or string",e)}function wq(e,t){if(f.defined(t))this.options[e]=tE(t)}var eE,QS,rE=(e)=>{Object.assign(e.prototype,{tint:mq,greyscale:hq,grayscale:gq,pipelineColourspace:yq,pipelineColorspace:bq,toColourspace:xq,toColorspace:$q,_getBackgroundColourOption:tE,_setBackgroundColourOption:wq}),e.colourspace=QS,e.colorspace=QS};var nE=D(()=>{On();eE=gr(ZS(),1);/*!
|
|
397
|
+
*/XS={integer:"integer",float:"float",approximate:"approximate"}});var iE=C(function(mne,sE){var{defineProperty:wh,getOwnPropertyDescriptor:hq,getOwnPropertyNames:gq}=Object,yq=Object.prototype.hasOwnProperty,bq=(e,t)=>{for(var r in t)wh(e,r,{get:t[r],enumerable:!0})},xq=(e,t,r,n)=>{if(t&&typeof t==="object"||typeof t==="function"){for(let s of gq(t))if(!yq.call(e,s)&&s!==r)wh(e,s,{get:()=>t[s],enumerable:!(n=hq(t,s))||n.enumerable})}return e},$q=(e)=>xq(wh({},"__esModule",{value:!0}),e),eE={};bq(eE,{default:()=>Tq});sE.exports=$q(eE);var yh={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};for(let e in yh)Object.freeze(yh[e]);var Mn=Object.freeze(yh),tE=Object.create(null);for(let e in Mn)if(Object.hasOwn(Mn,e))tE[Mn[e]]=e;var kr={to:{},get:{}};kr.get=function(e){let t=e.slice(0,3).toLowerCase(),r,n;switch(t){case"hsl":{r=kr.get.hsl(e),n="hsl";break}case"hwb":{r=kr.get.hwb(e),n="hwb";break}default:{r=kr.get.rgb(e),n="rgb";break}}if(!r)return null;return{model:n,value:r}};kr.get.rgb=function(e){if(!e)return null;let t=/^#([a-f\d]{3,4})$/i,r=/^#([a-f\d]{6})([a-f\d]{2})?$/i,n=/^rgba?\(\s*([+-]?(?:\d*\.)?\d+(?:e\d+)?)(?=[\s,])\s*(?:,\s*)?([+-]?(?:\d*\.)?\d+(?:e\d+)?)(?=[\s,])\s*(?:,\s*)?([+-]?(?:\d*\.)?\d+(?:e\d+)?)\s*(?:[\s,|/]\s*([+-]?(?:\d*\.)?\d+(?:e\d+)?)(%?)\s*)?\)$/i,s=/^rgba?\(\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*(?:[\s,|/]\s*([+-]?[\d.]+)(%?)\s*)?\)$/i,i=/^(\w+)$/,o=[0,0,0,1],a,l,c;if(a=e.match(r)){c=a[2],a=a[1];for(l=0;l<3;l++){let u=l*2;o[l]=Number.parseInt(a.slice(u,u+2),16)}if(c)o[3]=Number.parseInt(c,16)/255}else if(a=e.match(t)){a=a[1],c=a[3];for(l=0;l<3;l++)o[l]=Number.parseInt(a[l]+a[l],16);if(c)o[3]=Number.parseInt(c+c,16)/255}else if(a=e.match(n)){for(l=0;l<3;l++)o[l]=Number.parseFloat(a[l+1]);if(a[4])o[3]=a[5]?Number.parseFloat(a[4])*0.01:Number.parseFloat(a[4])}else if(a=e.match(s)){for(l=0;l<3;l++)o[l]=Math.round(Number.parseFloat(a[l+1])*2.55);if(a[4])o[3]=a[5]?Number.parseFloat(a[4])*0.01:Number.parseFloat(a[4])}else if(a=e.toLowerCase().match(i)){if(a[1]==="transparent")return[0,0,0,0];if(!Object.hasOwn(Mn,a[1]))return null;return o=Mn[a[1]].slice(),o[3]=1,o}else return null;for(l=0;l<3;l++)o[l]=ti(o[l],0,255);return o[3]=ti(o[3],0,1),o};kr.get.hsl=function(e){if(!e)return null;let t=/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*(?:[,|/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:e[+-]?\d+)?)\s*)?\)$/i,r=e.match(t);if(r){let n=Number.parseFloat(r[4]),s=(Number.parseFloat(r[1])%360+360)%360,i=ti(Number.parseFloat(r[2]),0,100),o=ti(Number.parseFloat(r[3]),0,100),a=ti(Number.isNaN(n)?1:n,0,1);return[s,i,o,a]}return null};kr.get.hwb=function(e){if(!e)return null;let t=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*[\s,]\s*([+-]?[\d.]+)%\s*[\s,]\s*([+-]?[\d.]+)%\s*(?:[\s,]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:e[+-]?\d+)?)\s*)?\)$/i,r=e.match(t);if(r){let n=Number.parseFloat(r[4]),s=(Number.parseFloat(r[1])%360+360)%360,i=ti(Number.parseFloat(r[2]),0,100),o=ti(Number.parseFloat(r[3]),0,100),a=ti(Number.isNaN(n)?1:n,0,1);return[s,i,o,a]}return null};kr.to.hex=function(...e){return"#"+bf(e[0])+bf(e[1])+bf(e[2])+(e[3]<1?bf(Math.round(e[3]*255)):"")};kr.to.rgb=function(...e){return e.length<4||e[3]===1?"rgb("+Math.round(e[0])+", "+Math.round(e[1])+", "+Math.round(e[2])+")":"rgba("+Math.round(e[0])+", "+Math.round(e[1])+", "+Math.round(e[2])+", "+e[3]+")"};kr.to.rgb.percent=function(...e){let t=Math.round(e[0]/255*100),r=Math.round(e[1]/255*100),n=Math.round(e[2]/255*100);return e.length<4||e[3]===1?"rgb("+t+"%, "+r+"%, "+n+"%)":"rgba("+t+"%, "+r+"%, "+n+"%, "+e[3]+")"};kr.to.hsl=function(...e){return e.length<4||e[3]===1?"hsl("+e[0]+", "+e[1]+"%, "+e[2]+"%)":"hsla("+e[0]+", "+e[1]+"%, "+e[2]+"%, "+e[3]+")"};kr.to.hwb=function(...e){let t="";if(e.length>=4&&e[3]!==1)t=", "+e[3];return"hwb("+e[0]+", "+e[1]+"%, "+e[2]+"%"+t+")"};kr.to.keyword=function(...e){return tE[e.slice(0,3)]};function ti(e,t,r){return Math.min(Math.max(t,e),r)}function bf(e){let t=Math.round(e).toString(16).toUpperCase();return t.length<2?"0"+t:t}var da=kr,rE={};for(let e of Object.keys(Mn))rE[Mn[e]]=e;var Q={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},oklab:{channels:3,labels:["okl","oka","okb"]},lch:{channels:3,labels:"lch"},oklch:{channels:3,labels:["okl","okc","okh"]},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}},oo=Q,Rs=0.008856451679035631;function ma(e){let t=e>0.0031308?1.055*e**0.4166666666666667-0.055:e*12.92;return Math.min(Math.max(0,t),1)}function ha(e){return e>0.04045?((e+0.055)/1.055)**2.4:e/12.92}for(let e of Object.keys(Q)){if(!("channels"in Q[e]))throw Error("missing channels property: "+e);if(!("labels"in Q[e]))throw Error("missing channel labels property: "+e);if(Q[e].labels.length!==Q[e].channels)throw Error("channel and label counts mismatch: "+e);let{channels:t,labels:r}=Q[e];delete Q[e].channels,delete Q[e].labels,Object.defineProperty(Q[e],"channels",{value:t}),Object.defineProperty(Q[e],"labels",{value:r})}Q.rgb.hsl=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,s=Math.min(t,r,n),i=Math.max(t,r,n),o=i-s,a,l;switch(i){case s:{a=0;break}case t:{a=(r-n)/o;break}case r:{a=2+(n-t)/o;break}case n:{a=4+(t-r)/o;break}}if(a=Math.min(a*60,360),a<0)a+=360;let c=(s+i)/2;if(i===s)l=0;else if(c<=0.5)l=o/(i+s);else l=o/(2-i-s);return[a,l*100,c*100]};Q.rgb.hsv=function(e){let t,r,n,s,i,o=e[0]/255,a=e[1]/255,l=e[2]/255,c=Math.max(o,a,l),u=c-Math.min(o,a,l),p=function(h){return(c-h)/6/u+0.5};if(u===0)s=0,i=0;else{switch(i=u/c,t=p(o),r=p(a),n=p(l),c){case o:{s=n-r;break}case a:{s=0.3333333333333333+t-n;break}case l:{s=0.6666666666666666+r-t;break}}if(s<0)s+=1;else if(s>1)s-=1}return[s*360,i*100,c*100]};Q.rgb.hwb=function(e){let t=e[0],r=e[1],n=e[2],s=Q.rgb.hsl(e)[0],i=0.00392156862745098*Math.min(t,Math.min(r,n));return n=1-0.00392156862745098*Math.max(t,Math.max(r,n)),[s,i*100,n*100]};Q.rgb.oklab=function(e){let t=ha(e[0]/255),r=ha(e[1]/255),n=ha(e[2]/255),s=Math.cbrt(0.4122214708*t+0.5363325363*r+0.0514459929*n),i=Math.cbrt(0.2119034982*t+0.6806995451*r+0.1073969566*n),o=Math.cbrt(0.0883024619*t+0.2817188376*r+0.6299787005*n),a=0.2104542553*s+0.793617785*i-0.0040720468*o,l=1.9779984951*s-2.428592205*i+0.4505937099*o,c=0.0259040371*s+0.7827717662*i-0.808675766*o;return[a*100,l*100,c*100]};Q.rgb.cmyk=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,s=Math.min(1-t,1-r,1-n),i=(1-t-s)/(1-s)||0,o=(1-r-s)/(1-s)||0,a=(1-n-s)/(1-s)||0;return[i*100,o*100,a*100,s*100]};function wq(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}Q.rgb.keyword=function(e){let t=rE[e];if(t)return t;let r=Number.POSITIVE_INFINITY,n;for(let s of Object.keys(Mn)){let i=Mn[s],o=wq(e,i);if(o<r)r=o,n=s}return n};Q.keyword.rgb=function(e){return[...Mn[e]]};Q.rgb.xyz=function(e){let t=ha(e[0]/255),r=ha(e[1]/255),n=ha(e[2]/255),s=t*0.4124564+r*0.3575761+n*0.1804375,i=t*0.2126729+r*0.7151522+n*0.072175,o=t*0.0193339+r*0.119192+n*0.9503041;return[s*100,i*100,o*100]};Q.rgb.lab=function(e){let t=Q.rgb.xyz(e),r=t[0],n=t[1],s=t[2];r/=95.047,n/=100,s/=108.883,r=r>Rs?r**0.3333333333333333:7.787*r+0.13793103448275862,n=n>Rs?n**0.3333333333333333:7.787*n+0.13793103448275862,s=s>Rs?s**0.3333333333333333:7.787*s+0.13793103448275862;let i=116*n-16,o=500*(r-n),a=200*(n-s);return[i,o,a]};Q.hsl.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,s,i;if(r===0)return i=n*255,[i,i,i];let o=n<0.5?n*(1+r):n+r-n*r,a=2*n-o,l=[0,0,0];for(let c=0;c<3;c++){if(s=t+0.3333333333333333*-(c-1),s<0)s++;if(s>1)s--;if(6*s<1)i=a+(o-a)*6*s;else if(2*s<1)i=o;else if(3*s<2)i=a+(o-a)*(0.6666666666666666-s)*6;else i=a;l[c]=i*255}return l};Q.hsl.hsv=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,s=r,i=Math.max(n,0.01);n*=2,r*=n<=1?n:2-n,s*=i<=1?i:2-i;let o=(n+r)/2,a=n===0?2*s/(i+s):2*r/(n+r);return[t,a*100,o*100]};Q.hsv.rgb=function(e){let t=e[0]/60,r=e[1]/100,n=e[2]/100,s=Math.floor(t)%6,i=t-Math.floor(t),o=255*n*(1-r),a=255*n*(1-r*i),l=255*n*(1-r*(1-i));switch(n*=255,s){case 0:return[n,l,o];case 1:return[a,n,o];case 2:return[o,n,l];case 3:return[o,a,n];case 4:return[l,o,n];case 5:return[n,o,a]}};Q.hsv.hsl=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,s=Math.max(n,0.01),i,o;o=(2-r)*n;let a=(2-r)*s;return i=r*s,i/=a<=1?a:2-a,i=i||0,o/=2,[t,i*100,o*100]};Q.hwb.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,s=r+n,i;if(s>1)r/=s,n/=s;let o=Math.floor(6*t),a=1-n;if(i=6*t-o,(o&1)!==0)i=1-i;let l=r+i*(a-r),c,u,p;switch(o){default:case 6:case 0:{c=a,u=l,p=r;break}case 1:{c=l,u=a,p=r;break}case 2:{c=r,u=a,p=l;break}case 3:{c=r,u=l,p=a;break}case 4:{c=l,u=r,p=a;break}case 5:{c=a,u=r,p=l;break}}return[c*255,u*255,p*255]};Q.cmyk.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,s=e[3]/100,i=1-Math.min(1,t*(1-s)+s),o=1-Math.min(1,r*(1-s)+s),a=1-Math.min(1,n*(1-s)+s);return[i*255,o*255,a*255]};Q.xyz.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,s,i,o;return s=t*3.2404542+r*-1.5371385+n*-0.4985314,i=t*-0.969266+r*1.8760108+n*0.041556,o=t*0.0556434+r*-0.2040259+n*1.0572252,s=ma(s),i=ma(i),o=ma(o),[s*255,i*255,o*255]};Q.xyz.lab=function(e){let t=e[0],r=e[1],n=e[2];t/=95.047,r/=100,n/=108.883,t=t>Rs?t**0.3333333333333333:7.787*t+0.13793103448275862,r=r>Rs?r**0.3333333333333333:7.787*r+0.13793103448275862,n=n>Rs?n**0.3333333333333333:7.787*n+0.13793103448275862;let s=116*r-16,i=500*(t-r),o=200*(r-n);return[s,i,o]};Q.xyz.oklab=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,s=Math.cbrt(0.8189330101*t+0.3618667424*r-0.1288597137*n),i=Math.cbrt(0.0329845436*t+0.9293118715*r+0.0361456387*n),o=Math.cbrt(0.0482003018*t+0.2643662691*r+0.633851707*n),a=0.2104542553*s+0.793617785*i-0.0040720468*o,l=1.9779984951*s-2.428592205*i+0.4505937099*o,c=0.0259040371*s+0.7827717662*i-0.808675766*o;return[a*100,l*100,c*100]};Q.oklab.oklch=function(e){return Q.lab.lch(e)};Q.oklab.xyz=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,s=(0.999999998*t+0.396337792*r+0.215803758*n)**3,i=(1.000000008*t-0.105561342*r-0.063854175*n)**3,o=(1.000000055*t-0.089484182*r-1.291485538*n)**3,a=1.227013851*s-0.55779998*i+0.281256149*o,l=-0.040580178*s+1.11225687*i-0.071676679*o,c=-0.076381285*s-0.421481978*i+1.58616322*o;return[a*100,l*100,c*100]};Q.oklab.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,s=(t+0.3963377774*r+0.2158037573*n)**3,i=(t-0.1055613458*r-0.0638541728*n)**3,o=(t-0.0894841775*r-1.291485548*n)**3,a=ma(4.0767416621*s-3.3077115913*i+0.2309699292*o),l=ma(-1.2684380046*s+2.6097574011*i-0.3413193965*o),c=ma(-0.0041960863*s-0.7034186147*i+1.707614701*o);return[a*255,l*255,c*255]};Q.oklch.oklab=function(e){return Q.lch.lab(e)};Q.lab.xyz=function(e){let t=e[0],r=e[1],n=e[2],s,i,o;i=(t+16)/116,s=r/500+i,o=i-n/200;let a=i**3,l=s**3,c=o**3;return i=a>Rs?a:(i-0.13793103448275862)/7.787,s=l>Rs?l:(s-0.13793103448275862)/7.787,o=c>Rs?c:(o-0.13793103448275862)/7.787,s*=95.047,i*=100,o*=108.883,[s,i,o]};Q.lab.lch=function(e){let t=e[0],r=e[1],n=e[2],s;if(s=Math.atan2(n,r)*360/2/Math.PI,s<0)s+=360;let o=Math.sqrt(r*r+n*n);return[t,o,s]};Q.lch.lab=function(e){let t=e[0],r=e[1],s=e[2]/360*2*Math.PI,i=r*Math.cos(s),o=r*Math.sin(s);return[t,i,o]};Q.rgb.ansi16=function(e,t=null){let[r,n,s]=e,i=t===null?Q.rgb.hsv(e)[2]:t;if(i=Math.round(i/50),i===0)return 30;let o=30+(Math.round(s/255)<<2|Math.round(n/255)<<1|Math.round(r/255));if(i===2)o+=60;return o};Q.hsv.ansi16=function(e){return Q.rgb.ansi16(Q.hsv.rgb(e),e[2])};Q.rgb.ansi256=function(e){let t=e[0],r=e[1],n=e[2];if(t>>4===r>>4&&r>>4===n>>4){if(t<8)return 16;if(t>248)return 231;return Math.round((t-8)/247*24)+232}return 16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5)};Q.ansi16.rgb=function(e){e=e[0];let t=e%10;if(t===0||t===7){if(e>50)t+=3.5;return t=t/10.5*255,[t,t,t]}let r=(Math.trunc(e>50)+1)*0.5,n=(t&1)*r*255,s=(t>>1&1)*r*255,i=(t>>2&1)*r*255;return[n,s,i]};Q.ansi256.rgb=function(e){if(e=e[0],e>=232){let i=(e-232)*10+8;return[i,i,i]}e-=16;let t,r=Math.floor(e/36)/5*255,n=Math.floor((t=e%36)/6)/5*255,s=t%6/5*255;return[r,n,s]};Q.rgb.hex=function(e){let r=(((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255)).toString(16).toUpperCase();return"000000".slice(r.length)+r};Q.hex.rgb=function(e){let t=e.toString(16).match(/[a-f\d]{6}|[a-f\d]{3}/i);if(!t)return[0,0,0];let r=t[0];if(t[0].length===3)r=[...r].map((a)=>a+a).join("");let n=Number.parseInt(r,16),s=n>>16&255,i=n>>8&255,o=n&255;return[s,i,o]};Q.rgb.hcg=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,s=Math.max(Math.max(t,r),n),i=Math.min(Math.min(t,r),n),o=s-i,a,l=o<1?i/(1-o):0;if(o<=0)a=0;else if(s===t)a=(r-n)/o%6;else if(s===r)a=2+(n-t)/o;else a=4+(t-r)/o;return a/=6,a%=1,[a*360,o*100,l*100]};Q.hsl.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=r<0.5?2*t*r:2*t*(1-r),s=0;if(n<1)s=(r-0.5*n)/(1-n);return[e[0],n*100,s*100]};Q.hsv.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=t*r,s=0;if(n<1)s=(r-n)/(1-n);return[e[0],n*100,s*100]};Q.hcg.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100;if(r===0)return[n*255,n*255,n*255];let s=[0,0,0],i=t%1*6,o=i%1,a=1-o,l=0;switch(Math.floor(i)){case 0:{s[0]=1,s[1]=o,s[2]=0;break}case 1:{s[0]=a,s[1]=1,s[2]=0;break}case 2:{s[0]=0,s[1]=1,s[2]=o;break}case 3:{s[0]=0,s[1]=a,s[2]=1;break}case 4:{s[0]=o,s[1]=0,s[2]=1;break}default:s[0]=1,s[1]=0,s[2]=a}return l=(1-r)*n,[(r*s[0]+l)*255,(r*s[1]+l)*255,(r*s[2]+l)*255]};Q.hcg.hsv=function(e){let t=e[1]/100,r=e[2]/100,n=t+r*(1-t),s=0;if(n>0)s=t/n;return[e[0],s*100,n*100]};Q.hcg.hsl=function(e){let t=e[1]/100,n=e[2]/100*(1-t)+0.5*t,s=0;if(n>0&&n<0.5)s=t/(2*n);else if(n>=0.5&&n<1)s=t/(2*(1-n));return[e[0],s*100,n*100]};Q.hcg.hwb=function(e){let t=e[1]/100,r=e[2]/100,n=t+r*(1-t);return[e[0],(n-t)*100,(1-n)*100]};Q.hwb.hcg=function(e){let t=e[1]/100,n=1-e[2]/100,s=n-t,i=0;if(s<1)i=(n-s)/(1-s);return[e[0],s*100,i*100]};Q.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};Q.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};Q.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};Q.gray.hsl=function(e){return[0,0,e[0]]};Q.gray.hsv=Q.gray.hsl;Q.gray.hwb=function(e){return[0,100,e[0]]};Q.gray.cmyk=function(e){return[0,0,0,e[0]]};Q.gray.lab=function(e){return[e[0],0,0]};Q.gray.hex=function(e){let t=Math.round(e[0]/100*255)&255,n=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".slice(n.length)+n};Q.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]};function vq(){let e={},t=Object.keys(oo);for(let{length:r}=t,n=0;n<r;n++)e[t[n]]={distance:-1,parent:null};return e}function Sq(e){let t=vq(),r=[e];t[e].distance=0;while(r.length>0){let n=r.pop(),s=Object.keys(oo[n]);for(let{length:i}=s,o=0;o<i;o++){let a=s[o],l=t[a];if(l.distance===-1)l.distance=t[n].distance+1,l.parent=n,r.unshift(a)}}return t}function Eq(e,t){return function(r){return t(e(r))}}function jq(e,t){let r=[t[e].parent,e],n=oo[t[e].parent][e],s=t[e].parent;while(t[s].parent)r.unshift(t[s].parent),n=Eq(oo[t[s].parent][s],n),s=t[s].parent;return n.conversion=r,n}function Pq(e){let t=Sq(e),r={},n=Object.keys(t);for(let{length:s}=n,i=0;i<s;i++){let o=n[i];if(t[o].parent===null)continue;r[o]=jq(o,t)}return r}var kq=Pq,pa={},_q=Object.keys(oo);function Aq(e){let t=function(...r){let n=r[0];if(n===void 0||n===null)return n;if(n.length>1)r=n;return e(r)};if("conversion"in e)t.conversion=e.conversion;return t}function Rq(e){let t=function(...r){let n=r[0];if(n===void 0||n===null)return n;if(n.length>1)r=n;let s=e(r);if(typeof s==="object")for(let{length:i}=s,o=0;o<i;o++)s[o]=Math.round(s[o]);return s};if("conversion"in e)t.conversion=e.conversion;return t}for(let e of _q){pa[e]={},Object.defineProperty(pa[e],"channels",{value:oo[e].channels}),Object.defineProperty(pa[e],"labels",{value:oo[e].labels});let t=kq(e),r=Object.keys(t);for(let n of r){let s=t[n];pa[e][n]=Rq(s),pa[e][n].raw=Aq(s)}}var Ur=pa,nE=["keyword","gray","hex"],bh={};for(let e of Object.keys(Ur))bh[[...Ur[e].labels].sort().join("")]=e;var xh={};function Ft(e,t){if(!(this instanceof Ft))return new Ft(e,t);if(t&&t in nE)t=null;if(t&&!(t in Ur))throw Error("Unknown model: "+t);let r,n;if(e==null)this.model="rgb",this.color=[0,0,0],this.valpha=1;else if(e instanceof Ft)this.model=e.model,this.color=[...e.color],this.valpha=e.valpha;else if(typeof e==="string"){let s=da.get(e);if(s===null)throw Error("Unable to parse color from string: "+e);this.model=s.model,n=Ur[this.model].channels,this.color=s.value.slice(0,n),this.valpha=typeof s.value[n]==="number"?s.value[n]:1}else if(e.length>0){this.model=t||"rgb",n=Ur[this.model].channels;let s=Array.prototype.slice.call(e,0,n);this.color=$h(s,n),this.valpha=typeof e[n]==="number"?e[n]:1}else if(typeof e==="number")this.model="rgb",this.color=[e>>16&255,e>>8&255,e&255],this.valpha=1;else{this.valpha=1;let s=Object.keys(e);if("alpha"in e)s.splice(s.indexOf("alpha"),1),this.valpha=typeof e.alpha==="number"?e.alpha:0;let i=s.sort().join("");if(!(i in bh))throw Error("Unable to parse color from object: "+JSON.stringify(e));this.model=bh[i];let{labels:o}=Ur[this.model],a=[];for(r=0;r<o.length;r++)a.push(e[o[r]]);this.color=$h(a)}if(xh[this.model]){n=Ur[this.model].channels;for(r=0;r<n;r++){let s=xh[this.model][r];if(s)this.color[r]=s(this.color[r])}}if(this.valpha=Math.max(0,Math.min(1,this.valpha)),Object.freeze)Object.freeze(this)}Ft.prototype={toString(){return this.string()},toJSON(){return this[this.model]()},string(e){let t=this.model in da.to?this:this.rgb();t=t.round(typeof e==="number"?e:1);let r=t.valpha===1?t.color:[...t.color,this.valpha];return da.to[t.model](...r)},percentString(e){let t=this.rgb().round(typeof e==="number"?e:1),r=t.valpha===1?t.color:[...t.color,this.valpha];return da.to.rgb.percent(...r)},array(){return this.valpha===1?[...this.color]:[...this.color,this.valpha]},object(){let e={},{channels:t}=Ur[this.model],{labels:r}=Ur[this.model];for(let n=0;n<t;n++)e[r[n]]=this.color[n];if(this.valpha!==1)e.alpha=this.valpha;return e},unitArray(){let e=this.rgb().color;if(e[0]/=255,e[1]/=255,e[2]/=255,this.valpha!==1)e.push(this.valpha);return e},unitObject(){let e=this.rgb().object();if(e.r/=255,e.g/=255,e.b/=255,this.valpha!==1)e.alpha=this.valpha;return e},round(e){return e=Math.max(e||0,0),new Ft([...this.color.map(Nq(e)),this.valpha],this.model)},alpha(e){if(e!==void 0)return new Ft([...this.color,Math.max(0,Math.min(1,e))],this.model);return this.valpha},red:mt("rgb",0,Mt(255)),green:mt("rgb",1,Mt(255)),blue:mt("rgb",2,Mt(255)),hue:mt(["hsl","hsv","hsl","hwb","hcg"],0,(e)=>(e%360+360)%360),saturationl:mt("hsl",1,Mt(100)),lightness:mt("hsl",2,Mt(100)),saturationv:mt("hsv",1,Mt(100)),value:mt("hsv",2,Mt(100)),chroma:mt("hcg",1,Mt(100)),gray:mt("hcg",2,Mt(100)),white:mt("hwb",1,Mt(100)),wblack:mt("hwb",2,Mt(100)),cyan:mt("cmyk",0,Mt(100)),magenta:mt("cmyk",1,Mt(100)),yellow:mt("cmyk",2,Mt(100)),black:mt("cmyk",3,Mt(100)),x:mt("xyz",0,Mt(95.047)),y:mt("xyz",1,Mt(100)),z:mt("xyz",2,Mt(108.833)),l:mt("lab",0,Mt(100)),a:mt("lab",1),b:mt("lab",2),keyword(e){if(e!==void 0)return new Ft(e);return Ur[this.model].keyword(this.color)},hex(e){if(e!==void 0)return new Ft(e);return da.to.hex(...this.rgb().round().color)},hexa(e){if(e!==void 0)return new Ft(e);let t=this.rgb().round().color,r=Math.round(this.valpha*255).toString(16).toUpperCase();if(r.length===1)r="0"+r;return da.to.hex(...t)+r},rgbNumber(){let e=this.rgb().color;return(e[0]&255)<<16|(e[1]&255)<<8|e[2]&255},luminosity(){let e=this.rgb().color,t=[];for(let[r,n]of e.entries()){let s=n/255;t[r]=s<=0.04045?s/12.92:((s+0.055)/1.055)**2.4}return 0.2126*t[0]+0.7152*t[1]+0.0722*t[2]},contrast(e){let t=this.luminosity(),r=e.luminosity();if(t>r)return(t+0.05)/(r+0.05);return(r+0.05)/(t+0.05)},level(e){let t=this.contrast(e);if(t>=7)return"AAA";return t>=4.5?"AA":""},isDark(){let e=this.rgb().color;return(e[0]*2126+e[1]*7152+e[2]*722)/1e4<128},isLight(){return!this.isDark()},negate(){let e=this.rgb();for(let t=0;t<3;t++)e.color[t]=255-e.color[t];return e},lighten(e){let t=this.hsl();return t.color[2]+=t.color[2]*e,t},darken(e){let t=this.hsl();return t.color[2]-=t.color[2]*e,t},saturate(e){let t=this.hsl();return t.color[1]+=t.color[1]*e,t},desaturate(e){let t=this.hsl();return t.color[1]-=t.color[1]*e,t},whiten(e){let t=this.hwb();return t.color[1]+=t.color[1]*e,t},blacken(e){let t=this.hwb();return t.color[2]+=t.color[2]*e,t},grayscale(){let e=this.rgb().color,t=e[0]*0.3+e[1]*0.59+e[2]*0.11;return Ft.rgb(t,t,t)},fade(e){return this.alpha(this.valpha-this.valpha*e)},opaquer(e){return this.alpha(this.valpha+this.valpha*e)},rotate(e){let t=this.hsl(),r=t.color[0];return r=(r+e)%360,r=r<0?360+r:r,t.color[0]=r,t},mix(e,t){if(!e||!e.rgb)throw Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof e);let r=e.rgb(),n=this.rgb(),s=t===void 0?0.5:t,i=2*s-1,o=r.alpha()-n.alpha(),a=((i*o===-1?i:(i+o)/(1+i*o))+1)/2,l=1-a;return Ft.rgb(a*r.red()+l*n.red(),a*r.green()+l*n.green(),a*r.blue()+l*n.blue(),r.alpha()*s+n.alpha()*(1-s))}};for(let e of Object.keys(Ur)){if(nE.includes(e))continue;let{channels:t}=Ur[e];Ft.prototype[e]=function(...r){if(this.model===e)return new Ft(this);if(r.length>0)return new Ft(r,e);return new Ft([...Cq(Ur[this.model][e].raw(this.color)),this.valpha],e)},Ft[e]=function(...r){let n=r[0];if(typeof n==="number")n=$h(r,t);return new Ft(n,e)}}function Oq(e,t){return Number(e.toFixed(t))}function Nq(e){return function(t){return Oq(t,e)}}function mt(e,t,r){e=Array.isArray(e)?e:[e];for(let n of e)(xh[n]||=[])[t]=r;return e=e[0],function(n){let s;if(n!==void 0){if(r)n=r(n);return s=this[e](),s.color[t]=n,s}if(s=this[e]().color[t],r)s=r(s);return s}}function Mt(e){return function(t){return Math.max(0,Math.min(e,t))}}function Cq(e){return Array.isArray(e)?e:[e]}function $h(e,t){for(let r=0;r<t;r++)if(typeof e[r]!=="number")e[r]=0;return e}var Tq=Ft});var aE=C(function(hne,oE){oE.exports=iE().default});function Iq(e){return this._setBackgroundColourOption("tint",e),this}function Jq(e){return this.options.greyscale=f.bool(e)?e:!0,this}function Mq(e){return this.greyscale(e)}function Dq(e){if(!f.string(e))throw f.invalidParameterError("colourspace","string",e);return this.options.colourspacePipeline=e,this}function Lq(e){return this.pipelineColourspace(e)}function Fq(e){if(!f.string(e))throw f.invalidParameterError("colourspace","string",e);return this.options.colourspace=e,this}function qq(e){return this.toColourspace(e)}function uE(e){if(f.object(e)||f.string(e)&&e.length>=3&&e.length<=200){let t=cE.default(e),r=t.red(),n=t.green(),s=t.blue(),i=Math.round(t.alpha()*255);for(let[o,a]of[["red",r],["green",n],["blue",s],["alpha",i]])if(!f.number(a))throw f.invalidParameterError(`background.${o}`,"number",a);return[r,n,s,i]}else throw f.invalidParameterError("background","object or string",e)}function Vq(e,t){if(f.defined(t))this.options[e]=uE(t)}var cE,lE,fE=(e)=>{Object.assign(e.prototype,{tint:Iq,greyscale:Jq,grayscale:Mq,pipelineColourspace:Dq,pipelineColorspace:Lq,toColourspace:Fq,toColorspace:qq,_getBackgroundColourOption:uE,_setBackgroundColourOption:Vq}),e.colourspace=lE,e.colorspace=lE};var dE=D(()=>{On();cE=br(aE(),1);/*!
|
|
398
398
|
Copyright 2013 Lovell Fuller and others.
|
|
399
399
|
SPDX-License-Identifier: Apache-2.0
|
|
400
|
-
*/
|
|
400
|
+
*/lE={multiband:"multiband","b-w":"b-w",bw:"b-w",cmyk:"cmyk",srgb:"srgb"}});function Hq(){return this.options.removeAlpha=!0,this}function Bq(e){if(f.defined(e))if(f.number(e)&&f.inRange(e,0,1))this.options.ensureAlpha=e;else throw f.invalidParameterError("alpha","number between 0 and 1",e);else this.options.ensureAlpha=1;return this}function Uq(e){let t={red:0,green:1,blue:2,alpha:3};if(Object.keys(t).includes(e))e=t[e];if(f.integer(e)&&f.inRange(e,0,4))this.options.extractChannel=e;else throw f.invalidParameterError("channel","integer or one of: red, green, blue, alpha",e);return this}function zq(e,t){if(Array.isArray(e))e.forEach(function(r){this.options.joinChannelIn.push(this._createInputDescriptor(r,t))},this);else this.options.joinChannelIn.push(this._createInputDescriptor(e,t));return this}function Gq(e){if(f.string(e)&&f.inArray(e,["and","or","eor"]))this.options.bandBoolOp=e;else throw f.invalidParameterError("boolOp","one of: and, or, eor",e);return this}var Wq,pE=(e)=>{Object.assign(e.prototype,{removeAlpha:Hq,ensureAlpha:Bq,extractChannel:Uq,joinChannel:zq,bandbool:Gq}),e.bool=Wq};var mE=D(()=>{On();/*!
|
|
401
401
|
Copyright 2013 Lovell Fuller and others.
|
|
402
402
|
SPDX-License-Identifier: Apache-2.0
|
|
403
|
-
*/vq={and:"and",or:"or",eor:"eor"}});import hh from"node:path";function Aq(e,t){let r;if(!f.string(e))r=Error("Missing output file path");else if(f.string(this.options.input.file)&&hh.resolve(this.options.input.file)===hh.resolve(e))r=Error("Cannot use same file for input and output");else if(_q.test(hh.extname(e))&&!this.constructor.format.jp2.output.file)r=aE();if(r)if(f.fn(t))t(r);else return Promise.reject(r);else{this.options.fileOut=e;let n=Error();return this._pipeline(t,n)}return this}function Rq(e,t){if(f.object(e))this._setBooleanOption("resolveWithObject",e.resolveWithObject);else if(this.options.resolveWithObject)this.options.resolveWithObject=!1;this.options.fileOut="";let r=Error();return this._pipeline(f.fn(e)?e:t,r)}function Oq(){this.options.resolveWithObject=!0,this.options.typedArrayOut=!0;let e=Error();return this._pipeline(null,e)}function Cq(e){if(f.number(e)&&e>0)this.options.withMetadataDensity=e;else throw f.invalidParameterError("density","positive number",e);return this.keepExif()}function Nq(){return this.options.keepMetadata|=1,this}function Tq(e){if(f.object(e))for(let[t,r]of Object.entries(e))if(f.object(r))for(let[n,s]of Object.entries(r))if(f.string(s))this.options.withExif[`exif-${t.toLowerCase()}-${n}`]=s;else throw f.invalidParameterError(`${t}.${n}`,"string",s);else throw f.invalidParameterError(t,"object",r);else throw f.invalidParameterError("exif","object",e);return this.options.withExifMerge=!1,this.keepExif()}function Iq(e){return this.withExif(e),this.options.withExifMerge=!0,this}function Jq(){return this.options.keepMetadata|=8,this}function Mq(e,t){if(f.string(e))this.options.withIccProfile=e;else throw f.invalidParameterError("icc","string",e);if(this.keepIccProfile(),f.object(t)){if(f.defined(t.attach))if(f.bool(t.attach)){if(!t.attach)this.options.keepMetadata&=-9}else throw f.invalidParameterError("attach","boolean",t.attach)}return this}function Dq(){return this.options.keepGainMap=!0,this.options.withGainMap=!1,this.options.keepMetadata|=32,this}function Lq(){return this.options.withGainMap=!0,this.options.keepGainMap=!1,this.options.colourspace="scrgb",this}function Fq(){return this.options.keepMetadata|=2,this}function qq(e){if(f.string(e)&&e.length>0)this.options.withXmp=e,this.options.keepMetadata|=2;else throw f.invalidParameterError("xmp","non-empty string",e);return this}function Vq(){return this.options.keepMetadata|=31,this}function Wq(e){if(this.keepMetadata(),this.withIccProfile("srgb"),f.object(e)){if(f.defined(e.orientation))if(f.integer(e.orientation)&&f.inRange(e.orientation,1,8))this.options.withMetadataOrientation=e.orientation;else throw f.invalidParameterError("orientation","integer between 1 and 8",e.orientation);if(f.defined(e.density))if(f.number(e.density)&&e.density>0)this.options.withMetadataDensity=e.density;else throw f.invalidParameterError("density","positive number",e.density);if(f.defined(e.icc))this.withIccProfile(e.icc);if(f.defined(e.exif))this.withExifMerge(e.exif)}return this}function Hq(e,t){let r=oE.get((f.object(e)&&f.string(e.id)?e.id:e).toLowerCase());if(!r)throw f.invalidParameterError("format",`one of: ${[...oE.keys()].join(", ")}`,e);return this[r](t)}function Bq(e){if(f.object(e)){if(f.defined(e.quality))if(f.integer(e.quality)&&f.inRange(e.quality,1,100))this.options.jpegQuality=e.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",e.quality);if(f.defined(e.progressive))this._setBooleanOption("jpegProgressive",e.progressive);if(f.defined(e.chromaSubsampling))if(f.string(e.chromaSubsampling)&&f.inArray(e.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jpegChromaSubsampling=e.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",e.chromaSubsampling);let t=f.bool(e.optimizeCoding)?e.optimizeCoding:e.optimiseCoding;if(f.defined(t))this._setBooleanOption("jpegOptimiseCoding",t);if(f.defined(e.mozjpeg))if(f.bool(e.mozjpeg)){if(e.mozjpeg)this.options.jpegTrellisQuantisation=!0,this.options.jpegOvershootDeringing=!0,this.options.jpegOptimiseScans=!0,this.options.jpegProgressive=!0,this.options.jpegQuantisationTable=3}else throw f.invalidParameterError("mozjpeg","boolean",e.mozjpeg);let r=f.bool(e.trellisQuantization)?e.trellisQuantization:e.trellisQuantisation;if(f.defined(r))this._setBooleanOption("jpegTrellisQuantisation",r);if(f.defined(e.overshootDeringing))this._setBooleanOption("jpegOvershootDeringing",e.overshootDeringing);let n=f.bool(e.optimizeScans)?e.optimizeScans:e.optimiseScans;if(f.defined(n)){if(this._setBooleanOption("jpegOptimiseScans",n),n)this.options.jpegProgressive=!0}let s=f.number(e.quantizationTable)?e.quantizationTable:e.quantisationTable;if(f.defined(s))if(f.integer(s)&&f.inRange(s,0,8))this.options.jpegQuantisationTable=s;else throw f.invalidParameterError("quantisationTable","integer between 0 and 8",s)}return this._updateFormatOut("jpeg",e)}function Uq(e){if(f.object(e)){if(f.defined(e.progressive))this._setBooleanOption("pngProgressive",e.progressive);if(f.defined(e.compressionLevel))if(f.integer(e.compressionLevel)&&f.inRange(e.compressionLevel,0,9))this.options.pngCompressionLevel=e.compressionLevel;else throw f.invalidParameterError("compressionLevel","integer between 0 and 9",e.compressionLevel);if(f.defined(e.adaptiveFiltering))this._setBooleanOption("pngAdaptiveFiltering",e.adaptiveFiltering);let t=e.colours||e.colors;if(f.defined(t))if(f.integer(t)&&f.inRange(t,2,256))this.options.pngBitdepth=lE(t);else throw f.invalidParameterError("colours","integer between 2 and 256",t);if(f.defined(e.palette))this._setBooleanOption("pngPalette",e.palette);else if([e.quality,e.effort,e.colours,e.colors,e.dither].some(f.defined))this._setBooleanOption("pngPalette",!0);if(this.options.pngPalette){if(f.defined(e.quality))if(f.integer(e.quality)&&f.inRange(e.quality,0,100))this.options.pngQuality=e.quality;else throw f.invalidParameterError("quality","integer between 0 and 100",e.quality);if(f.defined(e.effort))if(f.integer(e.effort)&&f.inRange(e.effort,1,10))this.options.pngEffort=e.effort;else throw f.invalidParameterError("effort","integer between 1 and 10",e.effort);if(f.defined(e.dither))if(f.number(e.dither)&&f.inRange(e.dither,0,1))this.options.pngDither=e.dither;else throw f.invalidParameterError("dither","number between 0.0 and 1.0",e.dither)}}return this._updateFormatOut("png",e)}function zq(e){if(f.object(e)){if(f.defined(e.quality))if(f.integer(e.quality)&&f.inRange(e.quality,1,100))this.options.webpQuality=e.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",e.quality);if(f.defined(e.alphaQuality))if(f.integer(e.alphaQuality)&&f.inRange(e.alphaQuality,0,100))this.options.webpAlphaQuality=e.alphaQuality;else throw f.invalidParameterError("alphaQuality","integer between 0 and 100",e.alphaQuality);if(f.defined(e.lossless))this._setBooleanOption("webpLossless",e.lossless);if(f.defined(e.nearLossless))this._setBooleanOption("webpNearLossless",e.nearLossless);if(f.defined(e.smartSubsample))this._setBooleanOption("webpSmartSubsample",e.smartSubsample);if(f.defined(e.smartDeblock))this._setBooleanOption("webpSmartDeblock",e.smartDeblock);if(f.defined(e.preset))if(f.string(e.preset)&&f.inArray(e.preset,["default","photo","picture","drawing","icon","text"]))this.options.webpPreset=e.preset;else throw f.invalidParameterError("preset","one of: default, photo, picture, drawing, icon, text",e.preset);if(f.defined(e.effort))if(f.integer(e.effort)&&f.inRange(e.effort,0,6))this.options.webpEffort=e.effort;else throw f.invalidParameterError("effort","integer between 0 and 6",e.effort);if(f.defined(e.minSize))this._setBooleanOption("webpMinSize",e.minSize);if(f.defined(e.mixed))this._setBooleanOption("webpMixed",e.mixed);if(f.defined(e.exact))this._setBooleanOption("webpExact",e.exact)}return gh(e,this.options),this._updateFormatOut("webp",e)}function Gq(e){if(f.object(e)){if(f.defined(e.reuse))this._setBooleanOption("gifReuse",e.reuse);if(f.defined(e.progressive))this._setBooleanOption("gifProgressive",e.progressive);let t=e.colours||e.colors;if(f.defined(t))if(f.integer(t)&&f.inRange(t,2,256))this.options.gifBitdepth=lE(t);else throw f.invalidParameterError("colours","integer between 2 and 256",t);if(f.defined(e.effort))if(f.integer(e.effort)&&f.inRange(e.effort,1,10))this.options.gifEffort=e.effort;else throw f.invalidParameterError("effort","integer between 1 and 10",e.effort);if(f.defined(e.dither))if(f.number(e.dither)&&f.inRange(e.dither,0,1))this.options.gifDither=e.dither;else throw f.invalidParameterError("dither","number between 0.0 and 1.0",e.dither);if(f.defined(e.interFrameMaxError))if(f.number(e.interFrameMaxError)&&f.inRange(e.interFrameMaxError,0,32))this.options.gifInterFrameMaxError=e.interFrameMaxError;else throw f.invalidParameterError("interFrameMaxError","number between 0.0 and 32.0",e.interFrameMaxError);if(f.defined(e.interPaletteMaxError))if(f.number(e.interPaletteMaxError)&&f.inRange(e.interPaletteMaxError,0,256))this.options.gifInterPaletteMaxError=e.interPaletteMaxError;else throw f.invalidParameterError("interPaletteMaxError","number between 0.0 and 256.0",e.interPaletteMaxError);if(f.defined(e.keepDuplicateFrames))if(f.bool(e.keepDuplicateFrames))this._setBooleanOption("gifKeepDuplicateFrames",e.keepDuplicateFrames);else throw f.invalidParameterError("keepDuplicateFrames","boolean",e.keepDuplicateFrames)}return gh(e,this.options),this._updateFormatOut("gif",e)}function Kq(e){if(!this.constructor.format.jp2.output.buffer)throw aE();if(f.object(e)){if(f.defined(e.quality))if(f.integer(e.quality)&&f.inRange(e.quality,1,100))this.options.jp2Quality=e.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",e.quality);if(f.defined(e.lossless))if(f.bool(e.lossless))this.options.jp2Lossless=e.lossless;else throw f.invalidParameterError("lossless","boolean",e.lossless);if(f.defined(e.tileWidth))if(f.integer(e.tileWidth)&&f.inRange(e.tileWidth,1,32768))this.options.jp2TileWidth=e.tileWidth;else throw f.invalidParameterError("tileWidth","integer between 1 and 32768",e.tileWidth);if(f.defined(e.tileHeight))if(f.integer(e.tileHeight)&&f.inRange(e.tileHeight,1,32768))this.options.jp2TileHeight=e.tileHeight;else throw f.invalidParameterError("tileHeight","integer between 1 and 32768",e.tileHeight);if(f.defined(e.chromaSubsampling))if(f.string(e.chromaSubsampling)&&f.inArray(e.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jp2ChromaSubsampling=e.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",e.chromaSubsampling)}return this._updateFormatOut("jp2",e)}function gh(e,t){if(f.object(e)&&f.defined(e.loop))if(f.integer(e.loop)&&f.inRange(e.loop,0,65535))t.loop=e.loop;else throw f.invalidParameterError("loop","integer between 0 and 65535",e.loop);if(f.object(e)&&f.defined(e.delay))if(f.integer(e.delay)&&f.inRange(e.delay,0,65535))t.delay=[e.delay];else if(Array.isArray(e.delay)&&f.inRange(e.delay.length,1,1e6)&&e.delay.every(f.integer)&&e.delay.every((r)=>f.inRange(r,0,65535)))t.delay=e.delay;else throw f.invalidParameterError("delay","integer or an array of integers between 0 and 65535",e.delay)}function Yq(e){if(f.object(e)){if(f.defined(e.quality))if(f.integer(e.quality)&&f.inRange(e.quality,1,100))this.options.tiffQuality=e.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",e.quality);if(f.defined(e.bitdepth))if(f.integer(e.bitdepth)&&f.inArray(e.bitdepth,[1,2,4]))this.options.tiffBitdepth=e.bitdepth;else throw f.invalidParameterError("bitdepth","1, 2 or 4",e.bitdepth);if(f.defined(e.tile))this._setBooleanOption("tiffTile",e.tile);if(f.defined(e.tileWidth))if(f.integer(e.tileWidth)&&f.inRange(e.tileWidth,1,32768))this.options.tiffTileWidth=e.tileWidth;else throw f.invalidParameterError("tileWidth","integer between 1 and 32768",e.tileWidth);if(f.defined(e.tileHeight))if(f.integer(e.tileHeight)&&f.inRange(e.tileHeight,1,32768))this.options.tiffTileHeight=e.tileHeight;else throw f.invalidParameterError("tileHeight","integer between 1 and 32768",e.tileHeight);if(f.defined(e.miniswhite))this._setBooleanOption("tiffMiniswhite",e.miniswhite);if(f.defined(e.pyramid))this._setBooleanOption("tiffPyramid",e.pyramid);if(f.defined(e.xres))if(f.number(e.xres)&&f.inRange(e.xres,0.001,1e6))this.options.tiffXres=e.xres;else throw f.invalidParameterError("xres","number between 0.001 and 1000000",e.xres);if(f.defined(e.yres))if(f.number(e.yres)&&f.inRange(e.yres,0.001,1e6))this.options.tiffYres=e.yres;else throw f.invalidParameterError("yres","number between 0.001 and 1000000",e.yres);if(f.defined(e.compression))if(f.string(e.compression)&&f.inArray(e.compression,["none","jpeg","deflate","packbits","ccittfax4","lzw","webp","zstd","jp2k"]))this.options.tiffCompression=e.compression;else throw f.invalidParameterError("compression","one of: none, jpeg, deflate, packbits, ccittfax4, lzw, webp, zstd, jp2k",e.compression);if(f.defined(e.bigtiff))this._setBooleanOption("tiffBigtiff",e.bigtiff);if(f.defined(e.predictor))if(f.string(e.predictor)&&f.inArray(e.predictor,["none","horizontal","float"]))this.options.tiffPredictor=e.predictor;else throw f.invalidParameterError("predictor","one of: none, horizontal, float",e.predictor);if(f.defined(e.resolutionUnit))if(f.string(e.resolutionUnit)&&f.inArray(e.resolutionUnit,["inch","cm"]))this.options.tiffResolutionUnit=e.resolutionUnit;else throw f.invalidParameterError("resolutionUnit","one of: inch, cm",e.resolutionUnit)}return this._updateFormatOut("tiff",e)}function Xq(e){return this.heif({...e,compression:"av1"})}function Zq(e){if(f.object(e)){if(f.string(e.compression)&&f.inArray(e.compression,["av1","hevc"]))this.options.heifCompression=e.compression;else throw f.invalidParameterError("compression","one of: av1, hevc",e.compression);if(f.defined(e.quality))if(f.integer(e.quality)&&f.inRange(e.quality,1,100))this.options.heifQuality=e.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",e.quality);if(f.defined(e.lossless))if(f.bool(e.lossless))this.options.heifLossless=e.lossless;else throw f.invalidParameterError("lossless","boolean",e.lossless);if(f.defined(e.effort))if(f.integer(e.effort)&&f.inRange(e.effort,0,9))this.options.heifEffort=e.effort;else throw f.invalidParameterError("effort","integer between 0 and 9",e.effort);if(f.defined(e.chromaSubsampling))if(f.string(e.chromaSubsampling)&&f.inArray(e.chromaSubsampling,["4:2:0","4:4:4"]))this.options.heifChromaSubsampling=e.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",e.chromaSubsampling);if(f.defined(e.bitdepth))if(f.integer(e.bitdepth)&&f.inArray(e.bitdepth,[8,10,12]))this.options.heifBitdepth=e.bitdepth;else throw f.invalidParameterError("bitdepth","8, 10 or 12",e.bitdepth);if(f.defined(e.tune))if(f.string(e.tune)&&f.inArray(e.tune,["auto","iq","psnr","ssim"]))if(this.options.heifLossless&&e.tune==="iq")this.options.heifTune="ssim";else this.options.heifTune=e.tune;else throw f.invalidParameterError("tune","one of: auto, iq, psnr, ssim",e.tune)}else throw f.invalidParameterError("options","Object",e);return this._updateFormatOut("heif",e)}function Qq(e){if(f.object(e)){if(f.defined(e.quality))if(f.integer(e.quality)&&f.inRange(e.quality,1,100))this.options.jxlDistance=e.quality>=30?0.1+(100-e.quality)*0.09:0.017666666666666667*e.quality*e.quality-1.15*e.quality+25;else throw f.invalidParameterError("quality","integer between 1 and 100",e.quality);else if(f.defined(e.distance))if(f.number(e.distance)&&f.inRange(e.distance,0,15))this.options.jxlDistance=e.distance;else throw f.invalidParameterError("distance","number between 0.0 and 15.0",e.distance);if(f.defined(e.decodingTier))if(f.integer(e.decodingTier)&&f.inRange(e.decodingTier,0,4))this.options.jxlDecodingTier=e.decodingTier;else throw f.invalidParameterError("decodingTier","integer between 0 and 4",e.decodingTier);if(f.defined(e.lossless))if(f.bool(e.lossless))this.options.jxlLossless=e.lossless;else throw f.invalidParameterError("lossless","boolean",e.lossless);if(f.defined(e.effort))if(f.integer(e.effort)&&f.inRange(e.effort,1,9))this.options.jxlEffort=e.effort;else throw f.invalidParameterError("effort","integer between 1 and 9",e.effort)}return gh(e,this.options),this._updateFormatOut("jxl",e)}function e3(e){if(f.object(e)){if(f.defined(e.depth))if(f.string(e.depth)&&f.inArray(e.depth,["char","uchar","short","ushort","int","uint","float","complex","double","dpcomplex"]))this.options.rawDepth=e.depth;else throw f.invalidParameterError("depth","one of: char, uchar, short, ushort, int, uint, float, complex, double, dpcomplex",e.depth)}return this._updateFormatOut("raw")}function t3(e){if(f.object(e)){if(f.defined(e.size))if(f.integer(e.size)&&f.inRange(e.size,1,8192))this.options.tileSize=e.size;else throw f.invalidParameterError("size","integer between 1 and 8192",e.size);if(f.defined(e.overlap))if(f.integer(e.overlap)&&f.inRange(e.overlap,0,8192)){if(e.overlap>this.options.tileSize)throw f.invalidParameterError("overlap",`<= size (${this.options.tileSize})`,e.overlap);this.options.tileOverlap=e.overlap}else throw f.invalidParameterError("overlap","integer between 0 and 8192",e.overlap);if(f.defined(e.container))if(f.string(e.container)&&f.inArray(e.container,["fs","zip"]))this.options.tileContainer=e.container;else throw f.invalidParameterError("container","one of: fs, zip",e.container);if(f.defined(e.layout))if(f.string(e.layout)&&f.inArray(e.layout,["dz","google","iiif","iiif3","zoomify"]))this.options.tileLayout=e.layout;else throw f.invalidParameterError("layout","one of: dz, google, iiif, iiif3, zoomify",e.layout);if(f.defined(e.angle))if(f.integer(e.angle)&&!(e.angle%90))this.options.tileAngle=e.angle;else throw f.invalidParameterError("angle","positive/negative multiple of 90",e.angle);if(this._setBackgroundColourOption("tileBackground",e.background),f.defined(e.depth))if(f.string(e.depth)&&f.inArray(e.depth,["onepixel","onetile","one"]))this.options.tileDepth=e.depth;else throw f.invalidParameterError("depth","one of: onepixel, onetile, one",e.depth);if(f.defined(e.skipBlanks))if(f.integer(e.skipBlanks)&&f.inRange(e.skipBlanks,-1,65535))this.options.tileSkipBlanks=e.skipBlanks;else throw f.invalidParameterError("skipBlanks","integer between -1 and 255/65535",e.skipBlanks);else if(f.defined(e.layout)&&e.layout==="google")this.options.tileSkipBlanks=5;let t=f.bool(e.center)?e.center:e.centre;if(f.defined(t))this._setBooleanOption("tileCentre",t);if(f.defined(e.id))if(f.string(e.id))this.options.tileId=e.id;else throw f.invalidParameterError("id","string",e.id);if(f.defined(e.basename))if(f.string(e.basename))this.options.tileBasename=e.basename;else throw f.invalidParameterError("basename","string",e.basename)}if(f.inArray(this.options.formatOut,["jpeg","png","webp"]))this.options.tileFormat=this.options.formatOut;else if(this.options.formatOut!=="input")throw f.invalidParameterError("format","one of: jpeg, png, webp",this.options.formatOut);return this._updateFormatOut("dz")}function r3(e){if(!f.plainObject(e))throw f.invalidParameterError("options","object",e);if(f.integer(e.seconds)&&f.inRange(e.seconds,0,3600))this.options.timeoutSeconds=e.seconds;else throw f.invalidParameterError("seconds","integer between 0 and 3600",e.seconds);return this}function n3(e,t){if(!(f.object(t)&&t.force===!1))this.options.formatOut=e;return this}function s3(e,t){if(f.bool(t))this.options[e]=t;else throw f.invalidParameterError(e,"boolean",t)}function i3(){if(!this.options.streamOut){this.options.streamOut=!0;let e=Error();this._pipeline(void 0,e)}}function o3(e,t){if(typeof e==="function"){if(this._isStreamInput())this._whenStreamInFinished(()=>{this._flattenBufferIn(),qe.pipeline(this.options,(r,n,s)=>{if(r)e(f.nativeError(r,t));else e(null,n,s)})});else qe.pipeline(this.options,(r,n,s)=>{if(r)e(f.nativeError(r,t));else e(null,n,s)});return this}else if(this.options.streamOut){if(this._isStreamInput())this._whenStreamInFinished(()=>{this._flattenBufferIn(),qe.pipeline(this.options,(r,n,s)=>{if(r)this.emit("error",f.nativeError(r,t));else this.emit("info",s),this.push(n);this.push(null),this.on("end",()=>this.emit("close"))})});else qe.pipeline(this.options,(r,n,s)=>{if(r)this.emit("error",f.nativeError(r,t));else this.emit("info",s),this.push(n);this.push(null),this.on("end",()=>this.emit("close"))});return this}else if(this._isStreamInput())return new Promise((r,n)=>{this._whenStreamInFinished(()=>{this._flattenBufferIn(),qe.pipeline(this.options,(s,i,o)=>{if(s)n(f.nativeError(s,t));else if(this.options.resolveWithObject)r({data:i,info:o});else r(i)})})});else return new Promise((r,n)=>{qe.pipeline(this.options,(s,i,o)=>{if(s)n(f.nativeError(s,t));else if(this.options.resolveWithObject)r({data:i,info:o});else r(i)})})}var oE,_q,aE=()=>Error("JP2 output requires libvips with support for OpenJPEG"),lE=(e)=>1<<32-Math.clz32(Math.ceil(Math.log2(e))-1),cE=(e)=>{Object.assign(e.prototype,{toFile:Aq,toBuffer:Rq,toUint8Array:Oq,withDensity:Cq,keepExif:Nq,withExif:Tq,withExifMerge:Iq,keepIccProfile:Jq,withIccProfile:Mq,keepGainMap:Dq,withGainMap:Lq,keepXmp:Fq,withXmp:qq,keepMetadata:Vq,withMetadata:Wq,toFormat:Hq,jpeg:Bq,jp2:Kq,png:Uq,webp:zq,tiff:Yq,avif:Xq,heif:Zq,jxl:Qq,gif:Gq,raw:e3,tile:t3,timeout:r3,_updateFormatOut:n3,_setBooleanOption:s3,_read:i3,_pipeline:o3})};var uE=D(()=>{On();Jl();/*!
|
|
403
|
+
*/Wq={and:"and",or:"or",eor:"eor"}});import vh from"node:path";function Yq(e,t){let r;if(!f.string(e))r=Error("Missing output file path");else if(f.string(this.options.input.file)&&vh.resolve(this.options.input.file)===vh.resolve(e))r=Error("Cannot use same file for input and output");else if(Kq.test(vh.extname(e))&&!this.constructor.format.jp2.output.file)r=gE();if(r)if(f.fn(t))t(r);else return Promise.reject(r);else{this.options.fileOut=e;let n=Error();return this._pipeline(t,n)}return this}function Xq(e,t){if(f.object(e))this._setBooleanOption("resolveWithObject",e.resolveWithObject);else if(this.options.resolveWithObject)this.options.resolveWithObject=!1;this.options.fileOut="";let r=Error();return this._pipeline(f.fn(e)?e:t,r)}function Zq(){this.options.resolveWithObject=!0,this.options.typedArrayOut=!0;let e=Error();return this._pipeline(null,e)}function Qq(e){if(f.number(e)&&e>0)this.options.withMetadataDensity=e;else throw f.invalidParameterError("density","positive number",e);return this.keepExif()}function eV(){return this.options.keepMetadata|=1,this}function tV(e){if(f.object(e))for(let[t,r]of Object.entries(e))if(f.object(r))for(let[n,s]of Object.entries(r))if(f.string(s))this.options.withExif[`exif-${t.toLowerCase()}-${n}`]=s;else throw f.invalidParameterError(`${t}.${n}`,"string",s);else throw f.invalidParameterError(t,"object",r);else throw f.invalidParameterError("exif","object",e);return this.options.withExifMerge=!1,this.keepExif()}function rV(e){return this.withExif(e),this.options.withExifMerge=!0,this}function nV(){return this.options.keepMetadata|=8,this}function sV(e,t){if(f.string(e))this.options.withIccProfile=e;else throw f.invalidParameterError("icc","string",e);if(this.keepIccProfile(),f.object(t)){if(f.defined(t.attach))if(f.bool(t.attach)){if(!t.attach)this.options.keepMetadata&=-9}else throw f.invalidParameterError("attach","boolean",t.attach)}return this}function iV(){return this.options.keepGainMap=!0,this.options.withGainMap=!1,this.options.keepMetadata|=32,this}function oV(){return this.options.withGainMap=!0,this.options.keepGainMap=!1,this.options.colourspace="scrgb",this}function aV(){return this.options.keepMetadata|=2,this}function lV(e){if(f.string(e)&&e.length>0)this.options.withXmp=e,this.options.keepMetadata|=2;else throw f.invalidParameterError("xmp","non-empty string",e);return this}function cV(){return this.options.keepMetadata|=31,this}function uV(e){if(this.keepMetadata(),this.withIccProfile("srgb"),f.object(e)){if(f.defined(e.orientation))if(f.integer(e.orientation)&&f.inRange(e.orientation,1,8))this.options.withMetadataOrientation=e.orientation;else throw f.invalidParameterError("orientation","integer between 1 and 8",e.orientation);if(f.defined(e.density))if(f.number(e.density)&&e.density>0)this.options.withMetadataDensity=e.density;else throw f.invalidParameterError("density","positive number",e.density);if(f.defined(e.icc))this.withIccProfile(e.icc);if(f.defined(e.exif))this.withExifMerge(e.exif)}return this}function fV(e,t){let r=hE.get((f.object(e)&&f.string(e.id)?e.id:e).toLowerCase());if(!r)throw f.invalidParameterError("format",`one of: ${[...hE.keys()].join(", ")}`,e);return this[r](t)}function dV(e){if(f.object(e)){if(f.defined(e.quality))if(f.integer(e.quality)&&f.inRange(e.quality,1,100))this.options.jpegQuality=e.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",e.quality);if(f.defined(e.progressive))this._setBooleanOption("jpegProgressive",e.progressive);if(f.defined(e.chromaSubsampling))if(f.string(e.chromaSubsampling)&&f.inArray(e.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jpegChromaSubsampling=e.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",e.chromaSubsampling);let t=f.bool(e.optimizeCoding)?e.optimizeCoding:e.optimiseCoding;if(f.defined(t))this._setBooleanOption("jpegOptimiseCoding",t);if(f.defined(e.mozjpeg))if(f.bool(e.mozjpeg)){if(e.mozjpeg)this.options.jpegTrellisQuantisation=!0,this.options.jpegOvershootDeringing=!0,this.options.jpegOptimiseScans=!0,this.options.jpegProgressive=!0,this.options.jpegQuantisationTable=3}else throw f.invalidParameterError("mozjpeg","boolean",e.mozjpeg);let r=f.bool(e.trellisQuantization)?e.trellisQuantization:e.trellisQuantisation;if(f.defined(r))this._setBooleanOption("jpegTrellisQuantisation",r);if(f.defined(e.overshootDeringing))this._setBooleanOption("jpegOvershootDeringing",e.overshootDeringing);let n=f.bool(e.optimizeScans)?e.optimizeScans:e.optimiseScans;if(f.defined(n)){if(this._setBooleanOption("jpegOptimiseScans",n),n)this.options.jpegProgressive=!0}let s=f.number(e.quantizationTable)?e.quantizationTable:e.quantisationTable;if(f.defined(s))if(f.integer(s)&&f.inRange(s,0,8))this.options.jpegQuantisationTable=s;else throw f.invalidParameterError("quantisationTable","integer between 0 and 8",s)}return this._updateFormatOut("jpeg",e)}function pV(e){if(f.object(e)){if(f.defined(e.progressive))this._setBooleanOption("pngProgressive",e.progressive);if(f.defined(e.compressionLevel))if(f.integer(e.compressionLevel)&&f.inRange(e.compressionLevel,0,9))this.options.pngCompressionLevel=e.compressionLevel;else throw f.invalidParameterError("compressionLevel","integer between 0 and 9",e.compressionLevel);if(f.defined(e.adaptiveFiltering))this._setBooleanOption("pngAdaptiveFiltering",e.adaptiveFiltering);let t=e.colours||e.colors;if(f.defined(t))if(f.integer(t)&&f.inRange(t,2,256))this.options.pngBitdepth=yE(t);else throw f.invalidParameterError("colours","integer between 2 and 256",t);if(f.defined(e.palette))this._setBooleanOption("pngPalette",e.palette);else if([e.quality,e.effort,e.colours,e.colors,e.dither].some(f.defined))this._setBooleanOption("pngPalette",!0);if(this.options.pngPalette){if(f.defined(e.quality))if(f.integer(e.quality)&&f.inRange(e.quality,0,100))this.options.pngQuality=e.quality;else throw f.invalidParameterError("quality","integer between 0 and 100",e.quality);if(f.defined(e.effort))if(f.integer(e.effort)&&f.inRange(e.effort,1,10))this.options.pngEffort=e.effort;else throw f.invalidParameterError("effort","integer between 1 and 10",e.effort);if(f.defined(e.dither))if(f.number(e.dither)&&f.inRange(e.dither,0,1))this.options.pngDither=e.dither;else throw f.invalidParameterError("dither","number between 0.0 and 1.0",e.dither)}}return this._updateFormatOut("png",e)}function mV(e){if(f.object(e)){if(f.defined(e.quality))if(f.integer(e.quality)&&f.inRange(e.quality,1,100))this.options.webpQuality=e.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",e.quality);if(f.defined(e.alphaQuality))if(f.integer(e.alphaQuality)&&f.inRange(e.alphaQuality,0,100))this.options.webpAlphaQuality=e.alphaQuality;else throw f.invalidParameterError("alphaQuality","integer between 0 and 100",e.alphaQuality);if(f.defined(e.lossless))this._setBooleanOption("webpLossless",e.lossless);if(f.defined(e.nearLossless))this._setBooleanOption("webpNearLossless",e.nearLossless);if(f.defined(e.smartSubsample))this._setBooleanOption("webpSmartSubsample",e.smartSubsample);if(f.defined(e.smartDeblock))this._setBooleanOption("webpSmartDeblock",e.smartDeblock);if(f.defined(e.preset))if(f.string(e.preset)&&f.inArray(e.preset,["default","photo","picture","drawing","icon","text"]))this.options.webpPreset=e.preset;else throw f.invalidParameterError("preset","one of: default, photo, picture, drawing, icon, text",e.preset);if(f.defined(e.effort))if(f.integer(e.effort)&&f.inRange(e.effort,0,6))this.options.webpEffort=e.effort;else throw f.invalidParameterError("effort","integer between 0 and 6",e.effort);if(f.defined(e.minSize))this._setBooleanOption("webpMinSize",e.minSize);if(f.defined(e.mixed))this._setBooleanOption("webpMixed",e.mixed);if(f.defined(e.exact))this._setBooleanOption("webpExact",e.exact)}return Sh(e,this.options),this._updateFormatOut("webp",e)}function hV(e){if(f.object(e)){if(f.defined(e.reuse))this._setBooleanOption("gifReuse",e.reuse);if(f.defined(e.progressive))this._setBooleanOption("gifProgressive",e.progressive);let t=e.colours||e.colors;if(f.defined(t))if(f.integer(t)&&f.inRange(t,2,256))this.options.gifBitdepth=yE(t);else throw f.invalidParameterError("colours","integer between 2 and 256",t);if(f.defined(e.effort))if(f.integer(e.effort)&&f.inRange(e.effort,1,10))this.options.gifEffort=e.effort;else throw f.invalidParameterError("effort","integer between 1 and 10",e.effort);if(f.defined(e.dither))if(f.number(e.dither)&&f.inRange(e.dither,0,1))this.options.gifDither=e.dither;else throw f.invalidParameterError("dither","number between 0.0 and 1.0",e.dither);if(f.defined(e.interFrameMaxError))if(f.number(e.interFrameMaxError)&&f.inRange(e.interFrameMaxError,0,32))this.options.gifInterFrameMaxError=e.interFrameMaxError;else throw f.invalidParameterError("interFrameMaxError","number between 0.0 and 32.0",e.interFrameMaxError);if(f.defined(e.interPaletteMaxError))if(f.number(e.interPaletteMaxError)&&f.inRange(e.interPaletteMaxError,0,256))this.options.gifInterPaletteMaxError=e.interPaletteMaxError;else throw f.invalidParameterError("interPaletteMaxError","number between 0.0 and 256.0",e.interPaletteMaxError);if(f.defined(e.keepDuplicateFrames))if(f.bool(e.keepDuplicateFrames))this._setBooleanOption("gifKeepDuplicateFrames",e.keepDuplicateFrames);else throw f.invalidParameterError("keepDuplicateFrames","boolean",e.keepDuplicateFrames)}return Sh(e,this.options),this._updateFormatOut("gif",e)}function gV(e){if(!this.constructor.format.jp2.output.buffer)throw gE();if(f.object(e)){if(f.defined(e.quality))if(f.integer(e.quality)&&f.inRange(e.quality,1,100))this.options.jp2Quality=e.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",e.quality);if(f.defined(e.lossless))if(f.bool(e.lossless))this.options.jp2Lossless=e.lossless;else throw f.invalidParameterError("lossless","boolean",e.lossless);if(f.defined(e.tileWidth))if(f.integer(e.tileWidth)&&f.inRange(e.tileWidth,1,32768))this.options.jp2TileWidth=e.tileWidth;else throw f.invalidParameterError("tileWidth","integer between 1 and 32768",e.tileWidth);if(f.defined(e.tileHeight))if(f.integer(e.tileHeight)&&f.inRange(e.tileHeight,1,32768))this.options.jp2TileHeight=e.tileHeight;else throw f.invalidParameterError("tileHeight","integer between 1 and 32768",e.tileHeight);if(f.defined(e.chromaSubsampling))if(f.string(e.chromaSubsampling)&&f.inArray(e.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jp2ChromaSubsampling=e.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",e.chromaSubsampling)}return this._updateFormatOut("jp2",e)}function Sh(e,t){if(f.object(e)&&f.defined(e.loop))if(f.integer(e.loop)&&f.inRange(e.loop,0,65535))t.loop=e.loop;else throw f.invalidParameterError("loop","integer between 0 and 65535",e.loop);if(f.object(e)&&f.defined(e.delay))if(f.integer(e.delay)&&f.inRange(e.delay,0,65535))t.delay=[e.delay];else if(Array.isArray(e.delay)&&f.inRange(e.delay.length,1,1e6)&&e.delay.every(f.integer)&&e.delay.every((r)=>f.inRange(r,0,65535)))t.delay=e.delay;else throw f.invalidParameterError("delay","integer or an array of integers between 0 and 65535",e.delay)}function yV(e){if(f.object(e)){if(f.defined(e.quality))if(f.integer(e.quality)&&f.inRange(e.quality,1,100))this.options.tiffQuality=e.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",e.quality);if(f.defined(e.bitdepth))if(f.integer(e.bitdepth)&&f.inArray(e.bitdepth,[1,2,4]))this.options.tiffBitdepth=e.bitdepth;else throw f.invalidParameterError("bitdepth","1, 2 or 4",e.bitdepth);if(f.defined(e.tile))this._setBooleanOption("tiffTile",e.tile);if(f.defined(e.tileWidth))if(f.integer(e.tileWidth)&&f.inRange(e.tileWidth,1,32768))this.options.tiffTileWidth=e.tileWidth;else throw f.invalidParameterError("tileWidth","integer between 1 and 32768",e.tileWidth);if(f.defined(e.tileHeight))if(f.integer(e.tileHeight)&&f.inRange(e.tileHeight,1,32768))this.options.tiffTileHeight=e.tileHeight;else throw f.invalidParameterError("tileHeight","integer between 1 and 32768",e.tileHeight);if(f.defined(e.miniswhite))this._setBooleanOption("tiffMiniswhite",e.miniswhite);if(f.defined(e.pyramid))this._setBooleanOption("tiffPyramid",e.pyramid);if(f.defined(e.xres))if(f.number(e.xres)&&f.inRange(e.xres,0.001,1e6))this.options.tiffXres=e.xres;else throw f.invalidParameterError("xres","number between 0.001 and 1000000",e.xres);if(f.defined(e.yres))if(f.number(e.yres)&&f.inRange(e.yres,0.001,1e6))this.options.tiffYres=e.yres;else throw f.invalidParameterError("yres","number between 0.001 and 1000000",e.yres);if(f.defined(e.compression))if(f.string(e.compression)&&f.inArray(e.compression,["none","jpeg","deflate","packbits","ccittfax4","lzw","webp","zstd","jp2k"]))this.options.tiffCompression=e.compression;else throw f.invalidParameterError("compression","one of: none, jpeg, deflate, packbits, ccittfax4, lzw, webp, zstd, jp2k",e.compression);if(f.defined(e.bigtiff))this._setBooleanOption("tiffBigtiff",e.bigtiff);if(f.defined(e.predictor))if(f.string(e.predictor)&&f.inArray(e.predictor,["none","horizontal","float"]))this.options.tiffPredictor=e.predictor;else throw f.invalidParameterError("predictor","one of: none, horizontal, float",e.predictor);if(f.defined(e.resolutionUnit))if(f.string(e.resolutionUnit)&&f.inArray(e.resolutionUnit,["inch","cm"]))this.options.tiffResolutionUnit=e.resolutionUnit;else throw f.invalidParameterError("resolutionUnit","one of: inch, cm",e.resolutionUnit)}return this._updateFormatOut("tiff",e)}function bV(e){return this.heif({...e,compression:"av1"})}function xV(e){if(f.object(e)){if(f.string(e.compression)&&f.inArray(e.compression,["av1","hevc"]))this.options.heifCompression=e.compression;else throw f.invalidParameterError("compression","one of: av1, hevc",e.compression);if(f.defined(e.quality))if(f.integer(e.quality)&&f.inRange(e.quality,1,100))this.options.heifQuality=e.quality;else throw f.invalidParameterError("quality","integer between 1 and 100",e.quality);if(f.defined(e.lossless))if(f.bool(e.lossless))this.options.heifLossless=e.lossless;else throw f.invalidParameterError("lossless","boolean",e.lossless);if(f.defined(e.effort))if(f.integer(e.effort)&&f.inRange(e.effort,0,9))this.options.heifEffort=e.effort;else throw f.invalidParameterError("effort","integer between 0 and 9",e.effort);if(f.defined(e.chromaSubsampling))if(f.string(e.chromaSubsampling)&&f.inArray(e.chromaSubsampling,["4:2:0","4:4:4"]))this.options.heifChromaSubsampling=e.chromaSubsampling;else throw f.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",e.chromaSubsampling);if(f.defined(e.bitdepth))if(f.integer(e.bitdepth)&&f.inArray(e.bitdepth,[8,10,12]))this.options.heifBitdepth=e.bitdepth;else throw f.invalidParameterError("bitdepth","8, 10 or 12",e.bitdepth);if(f.defined(e.tune))if(f.string(e.tune)&&f.inArray(e.tune,["auto","iq","psnr","ssim"]))if(this.options.heifLossless&&e.tune==="iq")this.options.heifTune="ssim";else this.options.heifTune=e.tune;else throw f.invalidParameterError("tune","one of: auto, iq, psnr, ssim",e.tune)}else throw f.invalidParameterError("options","Object",e);return this._updateFormatOut("heif",e)}function $V(e){if(f.object(e)){if(f.defined(e.quality))if(f.integer(e.quality)&&f.inRange(e.quality,1,100))this.options.jxlDistance=e.quality>=30?0.1+(100-e.quality)*0.09:0.017666666666666667*e.quality*e.quality-1.15*e.quality+25;else throw f.invalidParameterError("quality","integer between 1 and 100",e.quality);else if(f.defined(e.distance))if(f.number(e.distance)&&f.inRange(e.distance,0,15))this.options.jxlDistance=e.distance;else throw f.invalidParameterError("distance","number between 0.0 and 15.0",e.distance);if(f.defined(e.decodingTier))if(f.integer(e.decodingTier)&&f.inRange(e.decodingTier,0,4))this.options.jxlDecodingTier=e.decodingTier;else throw f.invalidParameterError("decodingTier","integer between 0 and 4",e.decodingTier);if(f.defined(e.lossless))if(f.bool(e.lossless))this.options.jxlLossless=e.lossless;else throw f.invalidParameterError("lossless","boolean",e.lossless);if(f.defined(e.effort))if(f.integer(e.effort)&&f.inRange(e.effort,1,9))this.options.jxlEffort=e.effort;else throw f.invalidParameterError("effort","integer between 1 and 9",e.effort)}return Sh(e,this.options),this._updateFormatOut("jxl",e)}function wV(e){if(f.object(e)){if(f.defined(e.depth))if(f.string(e.depth)&&f.inArray(e.depth,["char","uchar","short","ushort","int","uint","float","complex","double","dpcomplex"]))this.options.rawDepth=e.depth;else throw f.invalidParameterError("depth","one of: char, uchar, short, ushort, int, uint, float, complex, double, dpcomplex",e.depth)}return this._updateFormatOut("raw")}function vV(e){if(f.object(e)){if(f.defined(e.size))if(f.integer(e.size)&&f.inRange(e.size,1,8192))this.options.tileSize=e.size;else throw f.invalidParameterError("size","integer between 1 and 8192",e.size);if(f.defined(e.overlap))if(f.integer(e.overlap)&&f.inRange(e.overlap,0,8192)){if(e.overlap>this.options.tileSize)throw f.invalidParameterError("overlap",`<= size (${this.options.tileSize})`,e.overlap);this.options.tileOverlap=e.overlap}else throw f.invalidParameterError("overlap","integer between 0 and 8192",e.overlap);if(f.defined(e.container))if(f.string(e.container)&&f.inArray(e.container,["fs","zip"]))this.options.tileContainer=e.container;else throw f.invalidParameterError("container","one of: fs, zip",e.container);if(f.defined(e.layout))if(f.string(e.layout)&&f.inArray(e.layout,["dz","google","iiif","iiif3","zoomify"]))this.options.tileLayout=e.layout;else throw f.invalidParameterError("layout","one of: dz, google, iiif, iiif3, zoomify",e.layout);if(f.defined(e.angle))if(f.integer(e.angle)&&!(e.angle%90))this.options.tileAngle=e.angle;else throw f.invalidParameterError("angle","positive/negative multiple of 90",e.angle);if(this._setBackgroundColourOption("tileBackground",e.background),f.defined(e.depth))if(f.string(e.depth)&&f.inArray(e.depth,["onepixel","onetile","one"]))this.options.tileDepth=e.depth;else throw f.invalidParameterError("depth","one of: onepixel, onetile, one",e.depth);if(f.defined(e.skipBlanks))if(f.integer(e.skipBlanks)&&f.inRange(e.skipBlanks,-1,65535))this.options.tileSkipBlanks=e.skipBlanks;else throw f.invalidParameterError("skipBlanks","integer between -1 and 255/65535",e.skipBlanks);else if(f.defined(e.layout)&&e.layout==="google")this.options.tileSkipBlanks=5;let t=f.bool(e.center)?e.center:e.centre;if(f.defined(t))this._setBooleanOption("tileCentre",t);if(f.defined(e.id))if(f.string(e.id))this.options.tileId=e.id;else throw f.invalidParameterError("id","string",e.id);if(f.defined(e.basename))if(f.string(e.basename))this.options.tileBasename=e.basename;else throw f.invalidParameterError("basename","string",e.basename)}if(f.inArray(this.options.formatOut,["jpeg","png","webp"]))this.options.tileFormat=this.options.formatOut;else if(this.options.formatOut!=="input")throw f.invalidParameterError("format","one of: jpeg, png, webp",this.options.formatOut);return this._updateFormatOut("dz")}function SV(e){if(!f.plainObject(e))throw f.invalidParameterError("options","object",e);if(f.integer(e.seconds)&&f.inRange(e.seconds,0,3600))this.options.timeoutSeconds=e.seconds;else throw f.invalidParameterError("seconds","integer between 0 and 3600",e.seconds);return this}function EV(e,t){if(!(f.object(t)&&t.force===!1))this.options.formatOut=e;return this}function jV(e,t){if(f.bool(t))this.options[e]=t;else throw f.invalidParameterError(e,"boolean",t)}function PV(){if(!this.options.streamOut){this.options.streamOut=!0;let e=Error();this._pipeline(void 0,e)}}function kV(e,t){if(typeof e==="function"){if(this._isStreamInput())this._whenStreamInFinished(()=>{this._flattenBufferIn(),Ve.pipeline(this.options,(r,n,s)=>{if(r)e(f.nativeError(r,t));else e(null,n,s)})});else Ve.pipeline(this.options,(r,n,s)=>{if(r)e(f.nativeError(r,t));else e(null,n,s)});return this}else if(this.options.streamOut){if(this._isStreamInput())this._whenStreamInFinished(()=>{this._flattenBufferIn(),Ve.pipeline(this.options,(r,n,s)=>{if(r)this.emit("error",f.nativeError(r,t));else this.emit("info",s),this.push(n);this.push(null),this.on("end",()=>this.emit("close"))})});else Ve.pipeline(this.options,(r,n,s)=>{if(r)this.emit("error",f.nativeError(r,t));else this.emit("info",s),this.push(n);this.push(null),this.on("end",()=>this.emit("close"))});return this}else if(this._isStreamInput())return new Promise((r,n)=>{this._whenStreamInFinished(()=>{this._flattenBufferIn(),Ve.pipeline(this.options,(s,i,o)=>{if(s)n(f.nativeError(s,t));else if(this.options.resolveWithObject)r({data:i,info:o});else r(i)})})});else return new Promise((r,n)=>{Ve.pipeline(this.options,(s,i,o)=>{if(s)n(f.nativeError(s,t));else if(this.options.resolveWithObject)r({data:i,info:o});else r(i)})})}var hE,Kq,gE=()=>Error("JP2 output requires libvips with support for OpenJPEG"),yE=(e)=>1<<32-Math.clz32(Math.ceil(Math.log2(e))-1),bE=(e)=>{Object.assign(e.prototype,{toFile:Yq,toBuffer:Xq,toUint8Array:Zq,withDensity:Qq,keepExif:eV,withExif:tV,withExifMerge:rV,keepIccProfile:nV,withIccProfile:sV,keepGainMap:iV,withGainMap:oV,keepXmp:aV,withXmp:lV,keepMetadata:cV,withMetadata:uV,toFormat:fV,jpeg:dV,jp2:gV,png:pV,webp:mV,tiff:yV,avif:bV,heif:xV,jxl:$V,gif:hV,raw:wV,tile:vV,timeout:SV,_updateFormatOut:EV,_setBooleanOption:jV,_read:PV,_pipeline:kV})};var xE=D(()=>{On();Vl();/*!
|
|
404
404
|
Copyright 2013 Lovell Fuller and others.
|
|
405
405
|
SPDX-License-Identifier: Apache-2.0
|
|
406
|
-
*/
|
|
406
|
+
*/hE=new Map([["heic","heif"],["heif","heif"],["avif","avif"],["jpeg","jpeg"],["jpg","jpeg"],["jpe","jpeg"],["tile","tile"],["dz","tile"],["png","png"],["raw","raw"],["tiff","tiff"],["tif","tiff"],["webp","webp"],["gif","gif"],["jp2","jp2"],["jpx","jp2"],["j2k","jp2"],["j2c","jp2"],["jxl","jxl"]]),Kq=/\.(jp[2x]|j2[kc])$/i});import _V from"node:events";import{createRequire as AV}from"node:module";import{availableParallelism as RV}from"node:os";function wE(e){if(f.bool(e))if(e)return Ve.cache(50,20,100);else return Ve.cache(0,0,0);else if(f.object(e)){for(let t of["memory","files","items"]){let r=e[t];if(f.defined(r)&&!(f.integer(r)&&r>=0))throw f.invalidParameterError(t,"a positive integer",r)}return Ve.cache(e.memory,e.files,e.items)}else return Ve.cache()}function NV(e){return Ve.concurrency(f.integer(e)?e:null)}function TV(){return Ve.counters()}function IV(e){return Ve.simd(f.bool(e)?e:null)}function JV(e){if(f.object(e))if(Array.isArray(e.operation)&&e.operation.every(f.string))Ve.block(e.operation,!0);else throw f.invalidParameterError("operation","Array<string>",e.operation);else throw f.invalidParameterError("options","object",e)}function MV(e){if(f.object(e))if(Array.isArray(e.operation)&&e.operation.every(f.string))Ve.block(e.operation,!1);else throw f.invalidParameterError("operation","Array<string>",e.operation);else throw f.invalidParameterError("options","object",e)}var Wl,Eh,$E,jh,ri,OV,ga,CV,vE=(e)=>{e.cache=wE,e.concurrency=NV,e.counters=TV,e.simd=IV,e.format=ri,e.interpolators=OV,e.versions=ga,e.queue=CV,e.block=JV,e.unblock=MV};var SE=D(()=>{On();dh();Vl();mf();Wl=br(Yu(),1);/*!
|
|
407
407
|
Copyright 2013 Lovell Fuller and others.
|
|
408
408
|
SPDX-License-Identifier: Apache-2.0
|
|
409
|
-
*/
|
|
409
|
+
*/Eh=AV(import.meta.url),$E=hf.runtimePlatformArch(),jh=Ve.libvipsVersion(),ri=Ve.format();ri.heif.output.alias=["avif","heic"];ri.jpeg.output.alias=["jpe","jpg"];ri.tiff.output.alias=["tif"];ri.jp2.output.alias=["j2c","j2k","jp2","jpx"];OV={nearest:"nearest",bilinear:"bilinear",bicubic:"bicubic",locallyBoundedBicubic:"lbb",nohalo:"nohalo",vertexSplitQuadraticBasisSpline:"vsqbs"},ga={vips:jh.semver};if(!jh.isGlobal)if(!jh.isWasm)try{ga=Eh(`@img/sharp-${$E}/versions`)}catch(e){try{ga=Eh(`@img/sharp-libvips-${$E}/versions`)}catch(t){}}else try{ga=Eh("@img/sharp-wasm32/versions")}catch(e){}ga.sharp=_s.version;if(ga.heif&&ri.heif)ri.heif.input.fileSuffix=[".avif"],ri.heif.output.alias=["avif"];wE(!0);if(!process.env.MALLOC_ARENA_MAX&&Wl.default.familySync()===Wl.default.GLIBC&&!Ve._isUsingJemalloc())Ve.concurrency(1);else if(Wl.default.familySync()===Wl.default.MUSL&&Ve.concurrency()===1024)Ve.concurrency(RV());CV=new _V.EventEmitter});var DV;var EE=D(()=>{LS();VS();GS();YS();QS();dE();mE();xE();SE();/*!
|
|
410
410
|
Copyright 2013 Lovell Fuller and others.
|
|
411
411
|
SPDX-License-Identifier: Apache-2.0
|
|
412
|
-
*/CS(Jn);DS(Jn);FS(Jn);WS(Jn);rE(Jn);sE(Jn);cE(Jn);pE(Jn);y3=Jn});import{createHash as gE}from"node:crypto";import{existsSync as b3,mkdirSync as x3,readFileSync as $3}from"node:fs";import{basename as w3,extname as v3,resolve as xh}from"node:path";import{createRequire as S3}from"node:module";async function yE(){if(da)return da;try{let e=await Promise.resolve().then(() => (hE(),{}));return da=y3,da}catch{}try{return da=S3(xh(process.cwd(),"package.json"))("sharp"),da}catch(e){throw Error(`Sharp is required for image optimization but failed to load: ${je(e)}`,{cause:e})}}async function $h(e){let r=await(await yE())(e).metadata();return{format:r.format??"unknown",height:r.height??0,width:r.width??0}}function Dl(e){let t=$3(e);return gE("md5").update(t).digest("hex").slice(0,8)}function wh(e){let t=JSON.stringify({formats:e.formats,quality:e.quality,v:P3,widths:e.widths});return gE("md5").update(t).digest("hex").slice(0,8)}function j3(e,t,r,n){return`${e}-${t}-${r}.${n}`}async function bE(e,t,r){let n=await yE(),s=await $h(e),i=Dl(e),o=w3(e,v3(e)),a=xh(t,"_optimized");x3(a,{recursive:!0});let l=[],c=r.widths.length>0?Math.max(...r.widths):s.width,u=r.widths.filter((m)=>m<=s.width);if(s.width<c&&!u.includes(s.width))u.push(s.width);if(u.length===0)u.push(s.width);u.sort((m,b)=>m-b);let p=[];for(let m of u)for(let b of r.formats){let g=j3(o,m,i,b),y=`/${E3}/${g}`,w=xh(a,g);if(l.push({absolutePath:w,format:b,outputPath:y,width:m}),b3(w))continue;let P=r.quality[b]??80,S=n(e).resize(m).toFormat(b,{quality:P}).toFile(w).then(()=>{});p.push(S)}let h=4;for(let m=0;m<p.length;m+=h)await Promise.all(p.slice(m,m+h));return{contentHash:i,original:{format:s.format,height:s.height,width:s.width},variants:l}}function xE(e,t){return e.flatMap((r)=>r.format===t?[`${r.outputPath} ${r.width}w`]:[]).join(", ")}var da=null,E3="images/_optimized",P3=2;var vh=D(()=>{ir()});import{existsSync as k3,mkdirSync as _3,readFileSync as A3,rmSync as R3,writeFileSync as O3}from"node:fs";import{basename as C3,resolve as pf}from"node:path";import{execSync as N3}from"node:child_process";import{tmpdir as T3}from"node:os";function J3(){let e=process.env.npm_config_cache??process.env.NPM_CONFIG_CACHE;if(e)return e;try{let t=N3("npm config get cache",{cwd:T3(),encoding:"utf8",stdio:["ignore","pipe","ignore"],timeout:I3}).trim();return t&&t!=="undefined"?t:null}catch{return null}}function pa(e){if(df===void 0)df=J3();if(df)return pf(df,"jxsuite-images",C3(e));return pf(e,".cache/images")}function $E(e){let t=pf(pa(e),"manifest.json");if(!k3(t))return{entries:{},touched:new Set,version:1};try{let r=JSON.parse(A3(t,"utf8"));return r.touched=new Set,r}catch{return{entries:{},touched:new Set,version:1}}}function wE(e,t,r={}){if(r.prune&&t.touched)M3(t,t.touched);let n=pa(e);_3(n,{recursive:!0}),O3(pf(n,"manifest.json"),JSON.stringify({entries:t.entries,version:t.version},null,2),"utf8")}function M3(e,t){let r=new Set,n=Object.entries(e.entries);for(let[s,i]of n)if(t.has(s))for(let o of i.manifest.variants??[])r.add(o.absolutePath);for(let[s,i]of n){if(t.has(s))continue;for(let o of i.manifest.variants??[])if(!r.has(o.absolutePath))R3(o.absolutePath,{force:!0});delete e.entries[s]}}function vE(e,t){e.touched?.add(t);let r=e.entries[t];if(!r)return null;return r.manifest}function SE(e,t,r,n){e.touched?.add(t),e.entries[t]={manifest:n,source:r,timestamp:Date.now()}}var df,I3=3000;var Sh=D(()=>{vh()});function Eh(e,t){if(!t||EE(e.loading))return{};if(String(e.fetchpriority??"").toLowerCase()==="high")return{};return EE(e.decoding)?{loading:"lazy"}:{decoding:"async",loading:"lazy"}}var EE=(e)=>e!==void 0&&e!==null&&e!=="";import{existsSync as RE}from"node:fs";import{basename as D3,extname as OE,resolve as PE}from"node:path";async function F3(e,t){let r=t.get(e);if(!r){let n=Dl(e);try{let s=await $h(e);r={width:s.width,height:s.height,hash:n}}catch(s){if(!jE)jE=!0,console.warn(`Could not read image dimensions (${je(s)}) — `+"emitting srcsets without width/height attributes.");r={width:null,height:null,hash:n}}t.set(e,r)}return r}function kE(e,t,r,n){let s=t.quality.webp??80,i=e.startsWith("/")?"":"/",o=n?`?v=${n}`:"";return t.widths.filter((a)=>a<=r).toSorted((a,l)=>a-l).map((a)=>`/cdn-cgi/image/width=${a},quality=${s},fit=scale-down,format=auto${i}${e}${o} ${a}w`).join(", ")}async function q3(e,t,r,n,s){let i=`${Dl(e)}:${wh(r)}`,o=vE(s,i);if(o){if(o.variants.every((c)=>RE(c.absolutePath)))return o}if(!o)console.log(` Optimizing ${D3(e)}...`);let a=await bE(e,pa(n),r);return SE(s,i,t,a),a}function V3(e){if(!e)return!0;if(e.includes("${"))return!0;if(L3.some((t)=>e.startsWith(t)))return!0;if(CE.has(OE(e).toLowerCase()))return!0;return!1}function W3(e,t){if(t.service!=="cloudflare")return!1;if(!t.remoteDomains?.length)return!1;if(!e.startsWith("https://"))return!1;if(e.includes("${"))return!1;try{let r=new URL(e);if(CE.has(OE(r.pathname).toLowerCase()))return!1;return t.remoteDomains.includes(r.hostname)}catch{return!1}}function H3(e,t,r){let n=r?.length?Kc(r,e):null;if(n)return n;if(e.startsWith("/"))return PE(t,"public",e.slice(1));return PE(t,e)}async function NE(e,t,r,n,s,i=[]){let o=new Map;return await TE(e,t,r,n,s??new Map,o,i),{imageRefs:o}}async function TE(e,t,r,n,s,i,o,a=null){if(e.tagName==="img"){if(await Y3(e,t,r,n,s,i,o,a))return}if(O(e.innerHTML)&&e.innerHTML.includes("<img"))e.innerHTML=await tV(e.innerHTML,t,r,n,s,i,o);if(Array.isArray(e.children)){let l=JE(e,a);for(let c of e.children){if(!yr(c))continue;await TE(c,t,r,n,s,i,o,l)}}}async function IE(e,t,r,n,s,i,o,a){if(!O(e)||t)return null;let l=W3(e,r);if(!l&&V3(e))return null;if(l)return{dims:null,sources:[],srcset:kE(e,r,1/0,null)};let c=H3(e,n,a);if(!RE(c))return null;if(r.service==="cloudflare"){let g=await F3(c,i),y=kE(e,r,g.width??1/0,g.hash);return{dims:g.width&&g.height?{height:g.height,width:g.width}:null,sources:[],srcset:y}}let u=o.get(c);if(!u)u=await q3(c,e,r,n,s),o.set(c,u);let h=[..._E.filter((g)=>r.formats.includes(g)),...r.formats.filter((g)=>!_E.includes(g))].flatMap((g)=>{let y=xE(u.variants,g);return y===""?[]:[{srcset:y,type:B3.get(g)??`image/${g}`}]}),m=u.original?.width&&u.original.height?{height:u.original.height,width:u.original.width}:null,b=r.picture!==!1&&h.length>1;return{dims:m,fallbackSrc:z3(u.variants,r.formats),sources:b?h:[],srcset:h[0]?.srcset??""}}function z3(e,t){let r=U3.find((s)=>t.includes(s));if(r===void 0)return;let n;for(let s of e)if(s.format===r&&(n===void 0||s.width>n.width))n=s;return n?.outputPath}function AE(e){if(!O(e))return null;let t=G3.exec(e.trim());if(!t)return null;let r=Number(t[1]);return t[2]==="rem"?r*16:r}function JE(e,t){let{style:r}=e;if(!V(r))return t;let n=AE(r.maxWidth)??AE(r.width);if(n===null)return t;return t===null?n:Math.min(t,n)}function K3(e){if(e===null)return;let t=Math.round(e);return`(max-width: ${t}px) 100vw, ${t}px`}async function Y3(e,t,r,n,s,i,o,a=null){if(!e.attributes)e.attributes={};let l=e.attributes;if(l.src===void 0&&O(e.src))l.src=e.src,delete e.src;let c=t.optimize?await IE(l.src,l["data-no-optimize"]!==void 0,t,r,n,s,i,o):null,u=JE(e,a),p=l.sizes??K3(u)??t.sizes;if(c){if(c.srcset!==""){if(l.srcset=c.srcset,l.sizes=p,c.fallbackSrc!==void 0)l.src=c.fallbackSrc}if(c.dims&&l.width===void 0&&l.height===void 0)l.width=String(c.dims.width),l.height=String(c.dims.height)}if(Object.assign(l,Eh(l,t.lazyLoad)),c&&c.sources.length>0)return X3(e,c.sources,p),!0;return!1}function X3(e,t,r){let n={...e.attributes},s=n.sizes??r;delete n.srcset,delete n.sizes;let i={attributes:n,tagName:"img"};if(e.style!==void 0)i.style=e.style,delete e.style;let o=t.map((a)=>{let l={};if(s!=="")l.sizes=s;return l.srcset=a.srcset,l.type=a.type,{attributes:l,tagName:"source"}});o.push(i),e.tagName="picture",e.attributes={},e.children=o}async function tV(e,t,r,n,s,i,o){let a=[];for(let c of e.matchAll(Z3)){let u=c[0],p=c[1],h=(Ll(p,"src")??"").replaceAll("&","&"),m=Q3.test(p),b=t.optimize&&h!==""&&!m?await IE(h,eV.test(p),t,r,n,s,i,o):null,g="";if(b&&b.srcset!=="")g+=` srcset="${b.srcset}" sizes="${t.sizes}"`;if(b?.dims&&!/\bwidth=/.test(p)&&!/\bheight=/.test(p))g+=` width="${b.dims.width}" height="${b.dims.height}"`;let y=Eh({decoding:Ll(p,"decoding"),fetchpriority:Ll(p,"fetchpriority"),loading:Ll(p,"loading")},t.lazyLoad);for(let[P,S]of Object.entries(y))g+=` ${P}="${S}"`;if(g==="")continue;let w=b&&b.sources.length>0?rV(p,b.sources,t.sizes,g):`<img${p}${g}>`;a.push({match:u,replacement:w})}let l=e;for(let{match:c,replacement:u}of a)l=l.replace(c,u);return l}function rV(e,t,r,n){let s=Ll(e,"sizes")??r,i=n.replace(/ srcset="[^"]*"/,"").replace(/ sizes="[^"]*"/,"");return`<picture>${t.map((a)=>`<source type="${a.type}" srcset="${a.srcset}" sizes="${s}">`).join("")}<img${e}${i}></picture>`}function Ll(e,t){return new RegExp(`\\b${t}="([^"]*)"`,"i").exec(e)?.[1]}var CE,L3,jE=!1,_E,B3,U3,G3,Z3,Q3,eV;var ME=D(()=>{vh();Sh();Lr();ve();ir();CE=new Set([".svg",".gif"]),L3=["http://","https://","data:","//"];_E=["avif","webp","jpeg","png"],B3=new Map([["avif","image/avif"],["jpeg","image/jpeg"],["png","image/png"],["webp","image/webp"]]);U3=["jpeg","png"];G3=/^(\d+(?:\.\d+)?)(px|rem)$/;Z3=/<img\b([^>]*)>/gi,Q3=/\bsrcset="/,eV=/\bdata-no-optimize\b/});import{createHash as nV}from"node:crypto";import{existsSync as sV}from"node:fs";import{join as DE}from"node:path";function oV(e,t){let r=e.replace(/^\//,"");return e.endsWith("/")||r===""?DE(t,r,"index.html"):DE(t,r)}function jh(e){if(e===void 0)return null;if(e===!1)return!1;if(e===!0)return{};return e.enabled===!1?!1:e}function aV(e){let t=JSON.stringify({fallback:e.offlineFallback??null,precache:[...e.precache??[]].toSorted(),scope:e.scope??"/"});return nV("sha256").update(t,"utf8").digest("hex").slice(0,8)}function LE(e,t,r=""){let n=[],s=[],i=[...e.precache??[]],o=e.offlineFallback;if(o!==void 0&&!i.includes(o))i.push(o),n.push(`serviceWorker: "${o}" is the offline fallback but was not in \`precache\` — `+"added, since a page that was never cached cannot be served offline.");if(t!==void 0){for(let h of i)if(!h.startsWith("/"))s.push(`serviceWorker.precache: "${h}" must be a site-absolute URL starting with /.`);else if(!sV(oV(h,t)))s.push(`serviceWorker.precache: "${h}" is not a file this build produced — `+"`cache.addAll()` is all-or-nothing, so one bad entry stops the worker installing.")}let a=i.map((h)=>Xe(r,h)),l=Xe(r,iV),c=o===void 0?null:Xe(r,o),u=`jx-${aV(e)}`,p=`/*
|
|
412
|
+
*/qS(Jn);zS(Jn);KS(Jn);ZS(Jn);fE(Jn);pE(Jn);bE(Jn);vE(Jn);DV=Jn});import{createHash as jE}from"node:crypto";import{existsSync as LV,mkdirSync as FV,readFileSync as qV}from"node:fs";import{basename as VV,extname as WV,resolve as Ph}from"node:path";import{createRequire as HV}from"node:module";async function PE(){if(ya)return ya;try{let e=await Promise.resolve().then(() => (EE(),{}));return ya=DV,ya}catch{}try{return ya=HV(Ph(process.cwd(),"package.json"))("sharp"),ya}catch(e){throw Error(`Sharp is required for image optimization but failed to load: ${Pe(e)}`,{cause:e})}}async function kh(e){let r=await(await PE())(e).metadata();return{format:r.format??"unknown",height:r.height??0,width:r.width??0}}function Hl(e){let t=qV(e);return jE("md5").update(t).digest("hex").slice(0,8)}function kE(e){let t=JSON.stringify({formats:e.formats,quality:e.quality,v:UV,widths:e.widths});return jE("md5").update(t).digest("hex").slice(0,8)}function zV(e,t,r,n){return`${e}-${t}-${r}.${n}`}async function _E(e,t,r){let n=await PE(),s=await kh(e),i=Hl(e),o=VV(e,WV(e)),a=Ph(t,"_optimized");FV(a,{recursive:!0});let l=[],c=r.widths.length>0?Math.max(...r.widths):s.width,u=r.widths.filter((m)=>m<=s.width);if(s.width<c&&!u.includes(s.width))u.push(s.width);if(u.length===0)u.push(s.width);u.sort((m,b)=>m-b);let p=[];for(let m of u)for(let b of r.formats){let g=zV(o,m,i,b),y=`/${BV}/${g}`,w=Ph(a,g);if(l.push({absolutePath:w,format:b,outputPath:y,width:m}),LV(w))continue;let j=r.quality[b]??80,S=n(e).resize(m).toFormat(b,{quality:j}).toFile(w).then(()=>{});p.push(S)}let h=4;for(let m=0;m<p.length;m+=h)await Promise.all(p.slice(m,m+h));return{contentHash:i,original:{format:s.format,height:s.height,width:s.width},variants:l}}function AE(e,t){return e.flatMap((r)=>r.format===t?[`${_h(r.outputPath)} ${r.width}w`]:[]).join(", ")}function _h(e){return e.split("/").map((t)=>encodeURIComponent(t)).join("/")}var ya=null,BV="images/_optimized",UV=2;var Ah=D(()=>{er()});import{existsSync as GV,mkdirSync as KV,readFileSync as YV,rmSync as XV,writeFileSync as ZV}from"node:fs";import{basename as RE,extname as QV,resolve as $f}from"node:path";import{execSync as e3}from"node:child_process";import{tmpdir as t3}from"node:os";function n3(){let e=process.env.npm_config_cache??process.env.NPM_CONFIG_CACHE;if(e)return e;try{let t=e3("npm config get cache",{cwd:t3(),encoding:"utf8",stdio:["ignore","pipe","ignore"],timeout:r3}).trim();return t&&t!=="undefined"?t:null}catch{return null}}function ba(e){if(xf===void 0)xf=n3();if(xf)return $f(xf,"jxsuite-images",RE(e));return $f(e,".cache/images")}function OE(e,t){return`${Hl(e)}:${kE(t)}:${RE(e,QV(e))}`}function NE(e){let t=$f(ba(e),"manifest.json");if(!GV(t))return{entries:{},touched:new Set,version:1};try{let r=JSON.parse(YV(t,"utf8"));return r.touched=new Set,r}catch{return{entries:{},touched:new Set,version:1}}}function CE(e,t,r={}){if(r.prune&&t.touched)s3(t,t.touched);let n=ba(e);KV(n,{recursive:!0}),ZV($f(n,"manifest.json"),JSON.stringify({entries:t.entries,version:t.version},null,2),"utf8")}function s3(e,t){let r=new Set,n=Object.entries(e.entries);for(let[s,i]of n)if(t.has(s))for(let o of i.manifest.variants??[])r.add(o.absolutePath);for(let[s,i]of n){if(t.has(s))continue;for(let o of i.manifest.variants??[])if(!r.has(o.absolutePath))XV(o.absolutePath,{force:!0});delete e.entries[s]}}function TE(e,t){e.touched?.add(t);let r=e.entries[t];if(!r)return null;return r.manifest}function IE(e,t,r,n){e.touched?.add(t),e.entries[t]={manifest:n,source:r,timestamp:Date.now()}}var xf,r3=3000;var Rh=D(()=>{Ah()});function Oh(e,t){if(!t||JE(e.loading))return{};if(String(e.fetchpriority??"").toLowerCase()==="high")return{};return JE(e.decoding)?{loading:"lazy"}:{decoding:"async",loading:"lazy"}}var JE=(e)=>e!==void 0&&e!==null&&e!=="";import{existsSync as VE}from"node:fs";import{basename as i3,extname as WE,resolve as ME}from"node:path";async function a3(e,t){let r=t.get(e);if(!r){let n=Hl(e);try{let s=await kh(e);r={width:s.width,height:s.height,hash:n}}catch(s){if(!DE)DE=!0,console.warn(`Could not read image dimensions (${Pe(s)}) — `+"emitting srcsets without width/height attributes.");r={width:null,height:null,hash:n}}t.set(e,r)}return r}function LE(e,t,r,n){let s=t.quality.webp??80,i=e.startsWith("/")?"":"/",o=n?`?v=${n}`:"",a=l3(e);return t.widths.filter((l)=>l<=r).toSorted((l,c)=>l-c).map((l)=>`/cdn-cgi/image/width=${l},quality=${s},fit=scale-down,format=auto${i}${a}${o} ${l}w`).join(", ")}function l3(e){return e.replaceAll(/[\s,]/g,(t)=>encodeURIComponent(t))}async function c3(e,t,r,n,s){let i=OE(e,r),o=TE(s,i);if(o){if(o.variants.every((c)=>VE(c.absolutePath)))return o}if(!o)console.log(` Optimizing ${i3(e)}...`);let a=await _E(e,ba(n),r);return IE(s,i,t,a),a}function u3(e){if(!e)return!0;if(e.includes("${"))return!0;if(o3.some((t)=>e.startsWith(t)))return!0;if(HE.has(WE(e).toLowerCase()))return!0;return!1}function f3(e,t){if(t.service!=="cloudflare")return!1;if(!t.remoteDomains?.length)return!1;if(!e.startsWith("https://"))return!1;if(e.includes("${"))return!1;try{let r=new URL(e);if(HE.has(WE(r.pathname).toLowerCase()))return!1;return t.remoteDomains.includes(r.hostname)}catch{return!1}}function d3(e,t,r){let n=r?.length?ru(r,e):null;if(n)return n;if(e.startsWith("/"))return ME(t,"public",e.slice(1));return ME(t,e)}async function BE(e,t,r,n,s,i=[]){let o=new Map;return await UE(e,t,r,n,s??new Map,o,i),{imageRefs:o}}async function UE(e,t,r,n,s,i,o,a=null){if(e.tagName==="img"){if(await b3(e,t,r,n,s,i,o,a))return}if(O(e.innerHTML)&&e.innerHTML.includes("<img"))e.innerHTML=await S3(e.innerHTML,t,r,n,s,i,o);if(Array.isArray(e.children)){let l=GE(e,a);for(let c of e.children){if(!xr(c))continue;await UE(c,t,r,n,s,i,o,l)}}}async function zE(e,t,r,n,s,i,o,a){if(!O(e)||t)return null;let l=f3(e,r);if(!l&&u3(e))return null;if(l)return{dims:null,sources:[],srcset:LE(e,r,1/0,null)};let c=d3(e,n,a);if(!VE(c))return null;if(r.service==="cloudflare"){let g=await a3(c,i),y=LE(e,r,g.width??1/0,g.hash);return{dims:g.width&&g.height?{height:g.height,width:g.width}:null,sources:[],srcset:y}}let u=o.get(c);if(!u)u=await c3(c,e,r,n,s),o.set(c,u);let h=[...FE.filter((g)=>r.formats.includes(g)),...r.formats.filter((g)=>!FE.includes(g))].flatMap((g)=>{let y=AE(u.variants,g);return y===""?[]:[{srcset:y,type:p3.get(g)??`image/${g}`}]}),m=u.original?.width&&u.original.height?{height:u.original.height,width:u.original.width}:null,b=r.picture!==!1&&h.length>1;return{dims:m,fallbackSrc:h3(u.variants,r.formats),sources:b?h:[],srcset:h[0]?.srcset??""}}function h3(e,t){let r=m3.find((s)=>t.includes(s));if(r===void 0)return;let n;for(let s of e)if(s.format===r&&(n===void 0||s.width>n.width))n=s;return n&&_h(n.outputPath)}function qE(e){if(!O(e))return null;let t=g3.exec(e.trim());if(!t)return null;let r=Number(t[1]);return t[2]==="rem"?r*16:r}function GE(e,t){let{style:r}=e;if(!V(r))return t;let n=qE(r.maxWidth)??qE(r.width);if(n===null)return t;return t===null?n:Math.min(t,n)}function y3(e){if(e===null)return;let t=Math.round(e);return`(max-width: ${t}px) 100vw, ${t}px`}async function b3(e,t,r,n,s,i,o,a=null){if(!e.attributes)e.attributes={};let l=e.attributes;if(l.src===void 0&&O(e.src))l.src=e.src,delete e.src;let c=t.optimize?await zE(l.src,l["data-no-optimize"]!==void 0,t,r,n,s,i,o):null,u=GE(e,a),p=l.sizes??y3(u)??t.sizes;if(c){if(c.srcset!==""){if(l.srcset=c.srcset,l.sizes=p,c.fallbackSrc!==void 0)l.src=c.fallbackSrc}if(c.dims&&l.width===void 0&&l.height===void 0)l.width=String(c.dims.width),l.height=String(c.dims.height)}if(Object.assign(l,Oh(l,t.lazyLoad)),c&&c.sources.length>0)return x3(e,c.sources,p),!0;return!1}function x3(e,t,r){let n={...e.attributes},s=n.sizes??r;delete n.srcset,delete n.sizes;let i={attributes:n,tagName:"img"};if(e.style!==void 0)i.style=e.style,delete e.style;let o=t.map((a)=>{let l={};if(s!=="")l.sizes=s;return l.srcset=a.srcset,l.type=a.type,{attributes:l,tagName:"source"}});o.push(i),e.tagName="picture",e.attributes={},e.children=o}async function S3(e,t,r,n,s,i,o){let a=[];for(let c of e.matchAll($3)){let u=c[0],p=c[1],h=(Bl(p,"src")??"").replaceAll("&","&"),m=w3.test(p),b=t.optimize&&h!==""&&!m?await zE(h,v3.test(p),t,r,n,s,i,o):null,g="";if(b&&b.srcset!=="")g+=` srcset="${b.srcset}" sizes="${t.sizes}"`;if(b?.dims&&!/\bwidth=/.test(p)&&!/\bheight=/.test(p))g+=` width="${b.dims.width}" height="${b.dims.height}"`;let y=Oh({decoding:Bl(p,"decoding"),fetchpriority:Bl(p,"fetchpriority"),loading:Bl(p,"loading")},t.lazyLoad);for(let[j,S]of Object.entries(y))g+=` ${j}="${S}"`;if(g==="")continue;let w=b&&b.sources.length>0?E3(p,b.sources,t.sizes,g):`<img${p}${g}>`;a.push({match:u,replacement:w})}let l=e;for(let{match:c,replacement:u}of a)l=l.replace(c,u);return l}function E3(e,t,r,n){let s=Bl(e,"sizes")??r,i=n.replace(/ srcset="[^"]*"/,"").replace(/ sizes="[^"]*"/,"");return`<picture>${t.map((a)=>`<source type="${a.type}" srcset="${a.srcset}" sizes="${s}">`).join("")}<img${e}${i}></picture>`}function Bl(e,t){return new RegExp(`\\b${t}="([^"]*)"`,"i").exec(e)?.[1]}var HE,o3,DE=!1,FE,p3,m3,g3,$3,w3,v3;var KE=D(()=>{Ah();Rh();Vr();be();er();HE=new Set([".svg",".gif"]),o3=["http://","https://","data:","//"];FE=["avif","webp","jpeg","png"],p3=new Map([["avif","image/avif"],["jpeg","image/jpeg"],["png","image/png"],["webp","image/webp"]]);m3=["jpeg","png"];g3=/^(\d+(?:\.\d+)?)(px|rem)$/;$3=/<img\b([^>]*)>/gi,w3=/\bsrcset="/,v3=/\bdata-no-optimize\b/});import{createHash as j3}from"node:crypto";import{existsSync as P3}from"node:fs";import{join as YE}from"node:path";function _3(e,t){let r=e.replace(/^\//,"");return e.endsWith("/")||r===""?YE(t,r,"index.html"):YE(t,r)}function Ch(e){if(e===void 0)return null;if(e===!1)return!1;if(e===!0)return{};return e.enabled===!1?!1:e}function A3(e){let t=JSON.stringify({fallback:e.offlineFallback??null,precache:[...e.precache??[]].toSorted(),scope:e.scope??"/"});return j3("sha256").update(t,"utf8").digest("hex").slice(0,8)}function XE(e,t,r=""){let n=[],s=[],i=[...e.precache??[]],o=e.offlineFallback;if(o!==void 0&&!i.includes(o))i.push(o),n.push(`serviceWorker: "${o}" is the offline fallback but was not in \`precache\` — `+"added, since a page that was never cached cannot be served offline.");if(t!==void 0){for(let h of i)if(!h.startsWith("/"))s.push(`serviceWorker.precache: "${h}" must be a site-absolute URL starting with /.`);else if(!P3(_3(h,t)))s.push(`serviceWorker.precache: "${h}" is not a file this build produced — `+"`cache.addAll()` is all-or-nothing, so one bad entry stops the worker installing.")}let a=i.map((h)=>Xe(r,h)),l=Xe(r,k3),c=o===void 0?null:Xe(r,o),u=`jx-${A3(e)}`,p=`/*
|
|
413
413
|
* Generated by @jxsuite/compiler — configure via \`serviceWorker\` in project.json.
|
|
414
414
|
* Set \`"serviceWorker": false\` to replace this with a worker that removes itself.
|
|
415
415
|
*/
|
|
@@ -499,7 +499,7 @@ self.addEventListener("fetch", (event) => {
|
|
|
499
499
|
})(),
|
|
500
500
|
);
|
|
501
501
|
});
|
|
502
|
-
`;return{errors:s,path:
|
|
502
|
+
`;return{errors:s,path:Nh,source:p,warnings:n}}function ZE(){return{errors:[],path:Nh,source:`/*
|
|
503
503
|
* Generated by @jxsuite/compiler. This site had a service worker and no longer does.
|
|
504
504
|
*
|
|
505
505
|
* A worker is sticky: removing the file would leave every previous visitor running the old one
|
|
@@ -522,95 +522,96 @@ self.addEventListener("activate", (event) => {
|
|
|
522
522
|
})(),
|
|
523
523
|
);
|
|
524
524
|
});
|
|
525
|
-
`,warnings:[]}}function
|
|
526
|
-
`,path:"manifest.webmanifest"}],warnings:n}}function
|
|
525
|
+
`,warnings:[]}}function QE(e,t=""){return`if('serviceWorker' in navigator){addEventListener('load',function(){navigator.serviceWorker.register('${Xe(t,`/${Nh}`)}',{scope:${JSON.stringify(Xe(t,e))}}).catch(function(){})})}`}var Nh="sw.js",k3="/images/_optimized/";var ej=D(()=>{Vr()});import{mkdirSync as R3,writeFileSync as O3}from"node:fs";import{dirname as N3,join as C3}from"node:path";function ni(e,t,r){if(r!==void 0)e[t]=r}function tj(e){let t=e.manifest,r=[],n=[];if(t===void 0||t.enabled===!1)return{errors:r,files:[],warnings:n};let s=t.name??e.name??"Jx Site",i=Wi(e.url),o=[];for(let u of t.icons??[])o.push(O(u.src)?{...u,src:Xe(i,u.src)}:u);let a={display:t.display??"standalone",icons:o,name:s,short_name:t.shortName??s,start_url:Xe(i,t.startUrl??"/")};ni(a,"description",t.description),ni(a,"theme_color",t.themeColor),ni(a,"background_color",t.backgroundColor),ni(a,"scope",t.scope===void 0?void 0:Xe(i,t.scope)),ni(a,"orientation",t.orientation),ni(a,"lang",t.lang),ni(a,"dir",t.dir),ni(a,"categories",t.categories);let l=new Set(o.flatMap((u)=>(u.sizes??"").split(/\s+/).map((p)=>Math.trunc(Number(p.split("x")[0]))))),c=T3.filter((u)=>!l.has(u));if(c.length>0)n.push(`manifest: no ${c.join("px and no ")}px icon declared — browsers will not offer to `+"install the site without one at each size.");return{errors:r,files:[{content:`${JSON.stringify(a,null,2)}
|
|
526
|
+
`,path:"manifest.webmanifest"}],warnings:n}}function rj(e){let t=e.manifest;if(t===void 0||t.enabled===!1)return[];let r=[{attributes:{href:"/manifest.webmanifest",rel:"manifest"},tagName:"link"}];if(t.themeColor!==void 0)r.push({attributes:{content:t.themeColor,name:"theme-color"},tagName:"meta"});return r}function nj(e,t){let r=e.securityTxt,n=[],s=[];if(r===void 0||r.enabled===!1)return{errors:n,files:[],warnings:s};let i=r.contact??[];if(i.length===0)n.push("securityTxt: at least one `contact` is required (RFC 9116 §2.5.3).");if(r.expires===void 0)n.push("securityTxt: `expires` is required (RFC 9116 §2.5.5) — a security.txt with no expiry "+"never goes stale visibly, which is how they end up pointing at people who left.");else{let l=new Date(r.expires);if(Number.isNaN(l.getTime()))n.push(`securityTxt: \`expires\` is not a valid date: "${r.expires}".`);else if(l.getTime()<=t.getTime())n.push(`securityTxt: \`expires\` is in the past (${l.toISOString()}) — an expired `+"security.txt tells a reporter not to trust what it says.")}let o=[];for(let l of r.preferredLanguages??[]){let c=Xr(l);if(c===null)n.push(`securityTxt.preferredLanguages: "${l}" is not a well-formed language tag.`);else o.push(c)}if(n.length>0)return{errors:n,files:[],warnings:s};let a=["# Generated by @jxsuite/compiler — configure via securityTxt in project.json.",...i.map((l)=>`Contact: ${l}`),`Expires: ${new Date(r.expires).toISOString().replace(/\.\d{3}Z$/,"Z")}`,...(r.encryption??[]).map((l)=>`Encryption: ${l}`),...(r.acknowledgments??[]).map((l)=>`Acknowledgments: ${l}`),...o.length>0?[`Preferred-Languages: ${o.join(", ")}`]:[],...r.canonical===void 0?[]:[`Canonical: ${r.canonical}`],...(r.policy??[]).map((l)=>`Policy: ${l}`),...(r.hiring??[]).map((l)=>`Hiring: ${l}`)];return{errors:n,files:[{content:`${a.join(`
|
|
527
527
|
`)}
|
|
528
|
-
`,path:".well-known/security.txt"}],warnings:s}}function
|
|
529
|
-
`,{outfile:a,resolveDir:r},{minify:n,target:"browser"}),i+=1}catch(l){s.push(`Bundling client runtime "${o.specifier}": ${
|
|
528
|
+
`,path:".well-known/security.txt"}],warnings:s}}function sj(e,t,r){let n=0,s=[];for(let i of e){let o=C3(t,i.path);if(r(o)){s.push(i.path);continue}R3(N3(o),{recursive:!0}),O3(o,i.content,"utf8"),n+=1}return{skipped:s,written:n}}var T3;var ij=D(()=>{Vr();Zi();be();T3=[192,512]});import{existsSync as I3,mkdirSync as Ih,readFileSync as J3,readdirSync as M3,writeFileSync as D3}from"node:fs";import{dirname as Ul,join as L3,relative as F3,resolve as zl}from"node:path";function q3(e){return e.endsWith("/")}function aj(e=Jh){let t={},r=[],n=[];for(let s of wf)if(V3(s.specifier,e))t[s.specifier]=s.assetPath,t[`${s.specifier}/`]=s.assetDir,n.push(s.assetPath);else t[s.specifier]=s.fallback,r.push(`Could not resolve "${s.specifier}" — the import map falls back to ${s.fallback}. Interactive pages will load it from a third party, and a \`default-src 'self'\` policy will block them.`);return{assetPaths:n,imports:t,warnings:r}}async function lj(e,t,r=Jh,n=!0){let s=[],i=0;for(let o of wf){if(!e.assetPaths.includes(o.assetPath))continue;let a=zl(t,o.assetPath.replace(/^\//,""));Ih(Ul(a),{recursive:!0});try{await Yi(`export * from ${JSON.stringify(o.specifier)};
|
|
529
|
+
`,{outfile:a,resolveDir:r},{minify:n,target:"browser"}),i+=1}catch(l){s.push(`Bundling client runtime "${o.specifier}": ${Pe(l)}`)}}return{errors:s,written:i}}function Mh(e){return Object.entries(e).filter(([t,r])=>!q3(t)&&r.startsWith("/")).map(([,t])=>t)}function cj(e){let t=[];for(let r of e.matchAll(/<script type="importmap">([\s\S]*?)<\/script>/g)){let n;try{n=JSON.parse(r[1])}catch{continue}let s=W(n)?n.imports:void 0;if(!V(s))continue;let i=Object.entries(s).flatMap(([o,a])=>O(a)?[[o,a]]:[]);t.push(...Mh(Object.fromEntries(i)))}return t}function uj(e){return`<script type="importmap">
|
|
530
530
|
{
|
|
531
531
|
"imports": {
|
|
532
532
|
${Object.entries(e).map(([r,n])=>` ${JSON.stringify(r)}: ${JSON.stringify(n)}`).join(`,
|
|
533
533
|
`)}
|
|
534
534
|
}
|
|
535
535
|
}
|
|
536
|
-
</script>`}function
|
|
537
|
-
`,{outfile:S,resolveDir:t},{minify:r,resolver:
|
|
538
|
-
`,"utf8"),s+=1}catch(a){r.push(`Writing shared core stub ${
|
|
539
|
-
`),
|
|
540
|
-
`,"utf8"),
|
|
536
|
+
</script>`}function V3(e,t){try{return e0(e,t),!0}catch{return!1}}async function fj(e,t=Jh,r=!0){let n=[],s=new Set,i=new Map,o=new Map,a=zl(e,"assets"),l=0,c=async(p)=>{if(!o.has(p.specifier))o.set(p.specifier,await n0(p.specifier,t,{target:"browser"}));return o.get(p.specifier)},u=async(p)=>[...J3(p,"utf8").matchAll(/(?:from|import)\s*["']([^"']+)["']/g)].map((m)=>m[1]);for(let p=0;p<oj;p++){let h=0,m=[];try{m=M3(a,{recursive:!0}).map(String).filter((b)=>b.endsWith(".js")).map((b)=>L3(a,b))}catch{return Th(e,i,n,l)}for(let b of m){let g=[];try{g=await u(b)}catch{continue}for(let y of g){let w=wf.find((E)=>y.startsWith(`${E.specifier}/`));if(!w||s.has(y))continue;s.add(y);let j=y.slice(w.specifier.length+1),S=zl(e,`${w.assetDir.replace(/^\//,"")}${j}`);Ih(Ul(S),{recursive:!0});try{await Yi(`export * from ${JSON.stringify(y)};
|
|
537
|
+
`,{outfile:S,resolveDir:t},{minify:r,resolver:W3(w,S,await c(w),i),target:"browser"}),l+=1,h+=1}catch(E){n.push(`Bundling runtime subpath "${y}": ${Pe(E)}`)}}}if(h===0)return Th(e,i,n,l)}return n.push(`Runtime subpath resolution did not settle in ${oj} passes — a package subpath `+"graph this deep is more likely a cycle in the scan than a real dependency chain."),Th(e,i,n,l)}function W3(e,t,r,n){return{filter:/.*/,resolve:({importer:s,path:i})=>{if(Vp(s))return;if(wf.find((a)=>i===a.specifier||i.startsWith(`${a.specifier}/`))!==void 0)return{external:!0,path:i};if(r===void 0||!i.startsWith("."))return;if(zl(Ul(s),i)!==r)return;return n.set(zl(Ul(t),i),e.specifier),{external:!0,path:i}}}}function Th(e,t,r,n){let s=n;for(let[i,o]of t){if(I3(i))continue;try{Ih(Ul(i),{recursive:!0}),D3(i,`export * from ${JSON.stringify(o)};
|
|
538
|
+
`,"utf8"),s+=1}catch(a){r.push(`Writing shared core stub ${F3(e,i)}: ${Pe(a)}`)}}return{errors:r,written:s}}var wf,Jh,oj=10;var dj=D(()=>{Wp();An();be();er();wf=[{assetDir:"/assets/@vue/reactivity/",assetPath:"/assets/vue-reactivity.js",fallback:Zo,specifier:"@vue/reactivity"},{assetDir:"/assets/lit-html/",assetPath:"/assets/lit-html.js",fallback:Qo,specifier:"lit-html"}];Jh=import.meta.dirname});import{cpSync as vf,existsSync as Os,mkdirSync as $n,readFileSync as H3,readdirSync as B3,rmSync as U3,statSync as z3,writeFileSync as rn}from"node:fs";import{createHash as G3}from"node:crypto";import{basename as K3,dirname as Dn,join as si,relative as Y3,resolve as ft,sep as X3}from"node:path";async function gj(e,t={}){let{clean:r=!0,includeHeld:n=!1,verbose:s=!1}=t,i=[],o=s?console.log.bind(console):()=>{};o("Loading project.json...");let{config:a}=Hs(e);if("contentTypes"in a)throw Error('project.json declares "contentTypes", which is no longer supported. Run `bun scripts/migrate-project-extensions.ts <project>` to migrate to "extensions" + "content", then `jx schema`.');let l=ft(e,a.build.outDir),c=ft(e,"pages"),u=ft(e,"public"),p=a.build.trailingSlash??"always",h=a.build.minify!==!1,m=new Map,b=new Map,g=new Map,y=(M)=>{let B=M.toSorted(),le=`/assets/elements-${G3("sha1").update(B.join("\x00")).digest("hex").slice(0,12)}.js`;return g.set(le,B),le},w=aj(),j=w.imports,S=new Set,E=b$(),{errors:k,i18n:A}=Bp(a);for(let M of k)i.push(M),console.error(M);for(let M of w.warnings)console.warn(M);let R=new Map,_=(M,B,U)=>{let le=R.get(M);if(le!==void 0&&le.entryPath!==B)throw Error(`"${U}" and "${le.specifier}" both map to ${M} — rename one`);R.set(M,{entryPath:B,specifier:U})},I=(M,B)=>{if(!Qx(M))return M;try{let U=qp(M,B??e,e);if(!Vi(M)&&!Os(U))return console.warn(`Sidecar "${M}" not found at ${U} — emitting unbundled`),M;let le=Vi(M)?M:`./${Y3(e,U)}`,Ce=yx(le);return _(Ce,U,M),m.set(Ce,{entryPath:U,specifier:M}),Ce}catch(U){return i.push(`Sidecar "${M}": ${Pe(U)}`),M}},L=(M)=>{let B=bx(M);try{let U=qp(`npm:${M}`,e,e);return _(B,U,M),b.set(B,U),B}catch(U){return i.push(`$head specifier "${M}": ${Pe(U)}`),M}},J=await Ws(e,a),F=J.formats;if(F.entries.length>0)o(` Registered ${F.entries.length} format(s): ${F.entries.map((M)=>M.name).join(", ")}`);let K=J.serverMounts().filter((M)=>{if(!M.project)return!0;let B=a[M.project.key];return V(B)&&Object.keys(B).length>0});if(K.length>0&&!a.build.adapter){let M=K.map((B)=>B.project?`"${B.project.key}"`:`"${B.server.basePath}"`).join(", ");throw Error(`project.json declares dynamic section(s) ${M} served by extension mounts, but `+`build.adapter is "static". Dynamic tables need a server-capable adapter — ${pj}`)}if(r&&Os(l))U3(l,{force:!0,recursive:!0});if($n(l,{recursive:!0}),!Os(c))throw Error(`pages/ directory not found in ${e}`);o("Discovering pages...");let ae=await d$(c,F);o(` Found ${ae.length} page(s)`),o("Loading project sections...");let me=await R$(e,a,J,{includeHeld:n}),ce=Object.keys(me);if(ce.length>0)o(` Loaded ${ce.length} section(s): ${ce.join(", ")}`);let{errors:se,mounts:ue}=await N$(J,a,e);i.push(...se);for(let M of se)console.error(M);if(ue.length>0)o(` Mounted ${ue.length} asset dir(s): ${ue.map((M)=>M.urlPrefix).join(", ")}`);let Ne=new Set,Y=await eW(J,a,e),oe=(await h$(ae,e,me,J,a,A,{errors:i})).map((M)=>Object.assign(M,{locale:gn(M.urlPattern,A)}));o(` ${oe.length} route(s) after expansion`);let H=0,ot=ft(e,"components"),de=[],$t=new Map,X=new Map,jt=new Map;if(Os(ot)){o("Compiling components...");let M=[".json",...F.documentExtensions("component")],B=B3(ot).filter((Xt)=>M.some((tt)=>Xt.endsWith(tt))).toSorted(),U=ft(l,"components");$n(U,{recursive:!0});let le=new Map;for(let Xt of B){let tt=ft(ot,Xt);try{let{tagName:ve}=await ro(tt,F);if(ve)le.set(tt,ve)}catch{}}let Ce=Wi(a.url),Pt=Uu(Ce);for(let Xt of B)try{let tt=ft(ot,Xt),ve={formats:F,resolveElementPath:(Nt,d)=>{let x=d?ft(d,Nt):ft(Nt),v=le.get(x);return v?`./${v}.js`:Nt.replace(/\.(?:json|jxn)$/i,".js")},rewriteSrc:(Nt,d)=>Xe(Ce,I(Nt,d)),serverBaseUrl:Pt};if(a.$media)ve.$media=a.$media;let Zt=await Hu(tt,ve);for(let Nt of Zt.files){let d=Nt.tagName?`${Nt.tagName}.js`:K3(Nt.path);if(!de.includes(Nt.tagName))rn(ft(U,d),Nt.content,"utf8"),de.push(Nt.tagName),H+=1}let kt=await ro(tt,F);if(kt.tagName){X.set(kt.tagName,kt),jt.set(kt.tagName,tt);let Nt=eo(kt,a.defaults),d=X0(kt.tagName,kt.style,kt,a.$media??{},Nt);if(d){if(Nt===null)$t.set(kt.tagName,d);Cm(d,ue,Ne),rn(ft(U,`${kt.tagName}.css`),d,"utf8"),H+=1}}}catch(tt){let ve=Pe(tt);i.push(`Error compiling component ${Xt}: ${ve}`),console.error(`Error compiling component ${Xt}: ${ve}`)}o(` Compiled ${de.length} component(s): ${de.join(", ")}`)}let et=[];for(let[M,B]of X)et.push(...Ol(B,jt.get(M),e));if(a.state)et.push(...Ol({state:a.state},kn(e),e));let Kt=a.images.optimize&&a.images.service==="cloudflare",wt=a.images.optimize&&!Kt?NE(e):null,Ot=Kt?new Map:null;if(Kt)console.log('images.service is "cloudflare" — srcsets use /cdn-cgi/image transform URLs. '+"Ensure Image Transformations are enabled for your zone (Cloudflare dashboard → "+"Images → Transformations); these URLs do not work on *.pages.dev / *.workers.dev previews.");let Yt=a.url,Vt=Wi(Yt),es=Boolean(Yt)&&a.build.sitemap!==!1,ts=[],ho=oe.filter((M)=>!M.urlPattern.includes(":")&&!M.urlPattern.includes("*")),Ir=A===null?new Map:await f$(ho,F),rs=ho.map((M)=>({translationKey:Ir.get(M.urlPattern),urlPattern:M.urlPattern})),go=s$(rs,A,Yt,p),{conflicts:yo,sets:Jd}=Em(rs,A);for(let M of yo){let[B,U]=M.urlPatterns,le=M.declared?"Give one of them a different $translationKey.":"Move one out of the locale tree, or give it its own $translationKey.",Ce=`${U} and ${B} are both the "${M.locale}" version of "${M.key}". A translation set names one URL per language, so ${U} is `+`dropped from it — it carries no alternates and no switcher. ${le}`;if(M.declared)i.push(Ce),console.error(Ce);else console.warn(Ce)}let ns=r$(oe,A);if(ns.length>0)console.warn(`i18n.routing is "prefix-always", but ${ns.length} route(s) sit outside the locale tree and are served as "${A?.defaultLocale}": ${ns.slice(0,10).join(", ")}${ns.length>10?`, and ${ns.length-10} more`:""}. Move them under a locale directory, or use "prefix-except-default".`);if(A!==null&&A.routing==="prefix-always"&&!a.build.adapter&&!oe.some((M)=>M.urlPattern==="/"))console.warn('i18n.routing is "prefix-always" and no page claims "/", so the site root is a 404. '+'Locale negotiation answers "/" only when build.adapter is set — a static deployment has '+`no runtime to read Accept-Language. Add a redirect from "/" to "/${A.defaultLocale.toLowerCase()}/", set build.adapter, or use "prefix-except-default".`);let yc=new Set,bo=new Set;for(let M of oe){let B=n$(M.urlPattern,A);if(B&&!yc.has(B.segment))yc.add(B.segment),console.warn(`Routes under /${B.segment}/ are served as "${A?.defaultLocale}" — `+`i18n.locales declares "${B.meant}", not "${B.segment}". Rename the directory to "${B.meant.toLowerCase()}" or declare the shorter tag.`);try{o(` Compiling ${M.urlPattern} ...`);let U=await Z3(M,a,e,me,wt,X,Ot,F,J,I,ue,Y,L,{alternates:go.get(M.urlPattern)??[],i18n:A,translations:Jd.get(M.urlPattern)??[]},j,y);et.push(...U.serverEntries);for(let ve of U.unregisteredRelations)if(!bo.has(ve))bo.add(ve),console.warn(`<link rel="${ve}"> — "${ve}" is not an IANA link relation, and a relation nobody recognizes does nothing. Check the spelling, or use an absolute `+"URI if it is an extension relation (RFC 8288 §2.1.2).");let le=new Set;for(let[ve,Zt]of X)if(Iu(Zt))le.add(ve);if(de.length>0)U.html=nW(U.html,de,$t,le,U.files.map((ve)=>ve.content).join(`
|
|
539
|
+
`),j);for(let ve of cj(U.html))S.add(ve);Cm(U.html,ue,Ne),x$(U.html,E);let Ce=$j(M.urlPattern,l,p);$n(Dn(Ce),{recursive:!0});let Pt=!M.urlPattern.includes(":")&&!M.urlPattern.includes("*"),Xt=!Rl(M.urlPattern)&&!Z0(U.html);if(es&&!U.excludeFromSitemap&&Xt&&Pt){let ve=go.get(M.urlPattern)??[];ts.push({lastmod:O(M.sourceMtime)&&M.sourceMtime!==""?M.sourceMtime:aW(z3(M.sourcePath).mtime),loc:Bs(ia(M.urlPattern,p),Yt),...ve.length>0&&{alternates:ve}})}let tt=[];for(let ve of F.withCapability("serialize")){if(!ve.exportTarget||Rl(M.urlPattern))continue;try{let Zt=await ve.call("serialize",U.doc,{buildScope:(kt)=>Yo(kt,null),componentDefs:X,evaluateTemplate:(kt,Nt)=>{if(!ye(kt))return;return sr(kt,Nt)??kt},mode:"export"});if(Zt){let kt=Ce.replace(/\.html$/,ve.extensions[0]);tt.push({content:Zt,path:kt,type:ve.mediaTypeEssence})}}catch(Zt){i.push(`Error exporting ${ve.name} for ${M.urlPattern}: ${Pe(Zt)}`)}}for(let ve of tt)if(ve.type!==null)U.html=e$(U.html,{href:t$(l,ve.path),type:ve.type});rn(Ce,vx(U.html,Vt),"utf8"),H+=1;for(let ve of tt)rn(ve.path,ve.content,"utf8"),H+=1;for(let ve of U.files){let Zt=ft(Dn(Ce),ve.path);$n(Dn(Zt),{recursive:!0}),rn(Zt,ve.content,"utf8"),H+=1}}catch(U){let le=`Error compiling ${M.urlPattern}: ${Pe(U)}`;i.push(le),console.error(le)}}if(wt&&a.images.optimize){CE(e,wt,{prune:i.length===0});let M=ft(ba(e),"_optimized");if(Os(M)){let U=ft(l,"images/_optimized");$n(U,{recursive:!0}),vf(M,U,{recursive:!0})}let B=Object.keys(wt.entries).length;if(B>0)o(` Optimized ${B} image(s)`)}let ss=[];if(!a.build.adapter&&et.length>0){let B=`timing: "server" entries ${[...new Set(et.map(({exportName:U,declaredIn:le})=>`${U} (${le})`))].join(", ")} need a server-capable adapter, but `+`build.adapter is "static": a static deployment has nothing to serve /_jx/server — ${pj}`;i.push(B),console.error(B)}if(a.build.adapter){let{adapter:M}=a.build;o("Generating site-wide server worker...");let{entries:B,errors:U}=W$(et);ss=B;for(let tt of U)i.push(tt),console.error(tt);let{mounts:le,connectors:Ce}=Q3(K,J,a);if(le.length>0)o(` Mounting ${le.length} extension route(s): ${le.map((tt)=>tt.basePath).join(", ")}`);let Xt=M==="cloudflare-pages"&&ss.length===0&&le.length===0?null:Hm(ss,{adapter:M,base:Vt,connectors:Ce,i18n:A,mounts:le});if(Xt){let tt=M==="cloudflare-pages"?"_worker.js":"worker.js";try{await s0(Xt,{adapter:M,outfile:ft(l,tt),projectRoot:e}),H+=1,o(` Generated dist/${tt} (bundled, ${ss.length} server function(s))`)}catch(ve){let Zt=`Error bundling dist/${tt}: ${Pe(ve)}`;i.push(Zt),console.error(Zt)}if(M==="cloudflare-pages")rn(ft(l,"_routes.json"),`${JSON.stringify({exclude:[],include:(A&&A.locales.length>1?["/","/_jx/*"]:["/_jx/*"]).map((ve)=>Xe(Vt,ve)),version:1},null,2)}
|
|
540
|
+
`,"utf8"),H+=1}}if(S.size>0){o(`Bundling ${S.size} client runtime module(s)...`);let M=await lj({...w,assetPaths:[...S]},l,void 0,h);H+=M.written;for(let B of M.errors)i.push(B),console.error(B)}if(b.size>0){o(`Copying ${b.size} package asset(s)...`);for(let[M,B]of b){let U=ft(l,M.replace(/^\//,""));$n(Dn(U),{recursive:!0}),vf(B,U),H+=1,o(` ${B} → ${M}`)}}if(m.size>0){o(`Bundling ${m.size} client sidecar module(s)...`);for(let[M,B]of m)try{let U=ft(l,M.replace(/^\//,""));$n(Dn(U),{recursive:!0}),await r0({entryPath:B.entryPath,outfile:U},{external:Zx,minify:h,target:"browser"}),H+=1,o(` ${B.specifier} → ${M}`)}catch(U){let le=`Error bundling sidecar "${B.specifier}": ${Pe(U)}`;i.push(le),console.error(le)}}if(g.size>0){o(`Bundling ${g.size} npm element set(s)...`);for(let[M,B]of g){let U=ft(l,M.replace(/^\//,""));$n(Dn(U),{recursive:!0});try{await Yi(`${B.map((le)=>`import ${JSON.stringify(le)};`).join(`
|
|
541
541
|
`)}
|
|
542
|
-
`,{outfile:U,resolveDir:e},{minify:h,target:"browser"}),
|
|
543
|
-
Build complete: ${oe.length} routes, ${
|
|
544
|
-
${
|
|
542
|
+
`,{outfile:U,resolveDir:e},{minify:h,target:"browser"}),H+=1,o(` ${B.length} element(s) → ${M}`)}catch(le){let Ce=`Error bundling npm $elements [${B.join(", ")}]: ${Pe(le)}`;i.push(Ce),console.error(Ce)}}}if(S.size>0){let M=await fj(l,void 0,h);if(M.written>0)o(`Bundling ${M.written} runtime subpath module(s)...`);H+=M.written;for(let B of M.errors)i.push(B),console.error(B)}for(let M of J.emitters()){let B=M.project?.key,U=B?a[B]:void 0;if(B&&(U==null||V(U)&&Object.keys(U).length===0))continue;try{let le=await M.call("emit",U??null,{projectConfig:a,root:e,routes:oe,sections:me});for(let Ce of le??[]){let Pt=ft(l,Ce.path.replace(/^\//,""));if(!Pt.startsWith(l+X3))throw Error(`emit path escapes outDir: ${Ce.path}`);$n(Dn(Pt),{recursive:!0}),rn(Pt,Ce.content),H+=1,o(` ${M.name} emitted ${Ce.path}`)}}catch(le){let Ce=`Error in ${M.name}.emit: ${Pe(le)}`;i.push(Ce),console.error(Ce)}}if(a.redirects&&Object.keys(a.redirects).length>0){o("Generating redirects...");let M=new Set(oe.map((U)=>U.urlPattern)),B=oW(a.redirects,l,{basePath:Vt,compiledUrls:M,trailingSlash:a.build.trailingSlash});H+=B.files,i.push(...B.errors)}if(es)o(`Generating sitemap (${ts.length} URL(s))...`),H+=cW(ts,l);else if(!Yt&&a.build.sitemap!==!1)console.warn("sitemap.xml skipped — set `url` in project.json to enable sitemap generation.");if(Ne.size>0){let{copied:M,missing:B}=C$(Ne,ue,l);H+=M,o(`Copying ${M} mounted asset(s)...`);for(let U of B)console.warn(`Referenced asset not found: ${U}`)}if(Os(u))o("Copying public/ assets..."),vf(u,l,{recursive:!0});if(es)H+=uW(l,Yt);{let M=[tj(a),nj(a,new Date)];for(let le of M){for(let Ce of le.errors)i.push(Ce),console.error(Ce);for(let Ce of le.warnings)console.warn(Ce)}let{skipped:B,written:U}=sj(M.flatMap((le)=>le.files),l,Os);H+=U;for(let le of B)o(` ${le} — kept the copy from public/`)}{let M=Ch(a.serviceWorker);if(M!==null){let B=M===!1?ZE():XE(M,l,Vt);for(let U of B.warnings)console.warn(U);for(let U of B.errors)i.push(U),console.error(U);if(B.path!==null)rn(si(l,B.path),B.source,"utf8"),H+=1,o(M===!1?" sw.js — tombstone (unregisters and clears)":" sw.js")}}{let{errors:M,rules:B}=E$(a.build,E);i.push(...M);let U=P$([...B,...j$(l)],Vt);if(U.length>0){o("Writing response headers..."),H+=k$(l,U);let{adapter:le,deploy:Ce}=a.build;if(le==="node"||le==="bun")console.warn(`The "${le}" adapter serves no static assets, so dist/_headers is documentation `+"rather than configuration — apply these headers at the reverse proxy in front of it.");else if(le===void 0&&Ce===void 0)if(Os(ft(u,"CNAME")))console.warn("GitHub Pages ignores dist/_headers and serves its own Cache-Control: max-age=600, so the generated caching and security rules will not take effect. Deploy behind a host that reads _headers (Cloudflare Pages, Cloudflare Workers assets, Netlify) to apply them.");else o(" note: _headers is read by Cloudflare Pages, Cloudflare Workers assets and Netlify; other static hosts ignore it and serve their own Cache-Control.")}H+=_$(l)}if(a.copy){o("Copying mapped files...");for(let[M,B]of Object.entries(a.copy)){if(!O(B))throw TypeError(`project.json copy["${M}"] must be a destination path string`);let U=ft(e,M),le=ft(l,B);$n(Dn(le),{recursive:!0}),vf(U,le)}}if(o(`
|
|
543
|
+
Build complete: ${oe.length} routes, ${H} files`),i.length>0)o(` ${i.length} error(s)`);return{errors:i,files:H,routes:oe.length,serverEntries:ss}}async function Z3(e,t,r,n,s,i,o,a,l,c,u,p,h,m,b,g){let y=Wi(t.url),w=await ro(e.sourcePath,a),j=await L$(w,t,r),S=[...Ol(w,e.sourcePath,r),...F$(w,t,r).flatMap((de)=>Ol(de.doc,de.path,r))],E=B$(w.$head??j._pageHead??[],w.description),k=j.$head??[],A=w.title??j._pageTitle??null;delete j._pageHead,delete j._pageTitle,l$(j,t,e,r,m.i18n,m.translations);let R=i$({defaults:t.defaults,pageDir:O(w.$dir)?w.$dir:void 0,pageLang:O(w.$lang)?w.$lang:void 0,routeLocale:gn(e.urlPattern,m.i18n)});if(e.pagedState&&j.state&&e.pagedState.key in j.state)j.state[e.pagedState.key]=e.pagedState.items;await Du(j,e,r,{config:t,registerBundle:(de)=>{c(de,null)},registry:l,sections:n});let _=Yo(j.state??{}),I=A??t.name;if(ye(I))I=sr(I,_)??I;let L=Dh(mj(E,_),h),J=Dh(mj(k,_),h);Gl(j,_);let F={counter:{n:0},media:{...t.$media,...j.$media},rules:[]},K={n:0};if(Wh(j,i,F,t.defaults,K),j.state){let de=new Set;for(let[X,jt]of Object.entries(j.state)){if(X==="$site"||X==="$page")continue;if(W(jt)&&jt.timing==="compiler")delete j.state[X];else if(Array.isArray(jt))de.add(X)}let $t=!0;while($t){$t=!1;let X={...j.state};for(let et of de)delete X[et];let jt=JSON.stringify({children:j.children,state:X});for(let et of de)if(rW(jt,et))de.delete(et),$t=!0}for(let X of de)delete j.state[X]}let ae=Ch(t.serviceWorker),me=ae===null||ae===!1?[]:[{tagName:"script",textContent:QE(ae.scope??"/",y)}],ce=[...rj(t),...me,...p,...Dh(t.$head??[],h)],se=U$(ce,J,L,{title:I,charset:t.defaults.charset??"utf8",siteName:t.name,siteUrl:t.url,...m.alternates.length>0&&{alternates:m.alternates},...!Rl(e.urlPattern)&&{pageUrl:ia(e.urlPattern,t.build.trailingSlash)}});if(t.$media)j.$media={...t.$media,...j.$media};if(Object.values(j.$media??{}).some((de)=>bn(String(de))!==null))se.splice(2,0,{tagName:"script",textContent:ta()});let ue=t.images;await BE(j,ue,r,s,o??void 0,u);let Ne={lang:R.lang,prePaintScheme:!1,projectStyle:t.style??null,rewriteSrc:(de)=>Xe(y,c(de,Dn(e.sourcePath))),serverBaseUrl:Uu(y),title:I},Y=b["@vue/reactivity"];if(Y!==void 0)Ne.reactivitySrc=Y;let Ee=b["lit-html"];if(Ee!==void 0)Ne.litHtmlSrc=Ee;let oe=await Um(j,Ne);if(F.rules.length>0)oe.html=oe.html.replace("</head>",`<style>
|
|
544
|
+
${Nu(F.rules.join(`
|
|
545
545
|
`))}
|
|
546
546
|
</style>
|
|
547
|
-
</head>`);oe.html=
|
|
548
|
-
`):null,g=
|
|
547
|
+
</head>`);oe.html=iW(oe.html,se,R);let H=(de)=>typeof de==="string"&&!de.startsWith("./")&&!de.startsWith("../"),ot=[...new Set([...j.$elements??[],...w.$elements??[]].filter((de)=>H(de)))];if(ot.length>0)oe.html=sW(oe.html,g(ot));return{doc:j,excludeFromSitemap:w.$sitemap===!1,files:oe.files,html:oe.html,unregisteredRelations:K$(se),serverEntries:S}}function Q3(e,t,r){if(e.length===0)return{connectors:[],mounts:[]};let n=Wi(r.url),s={};for(let l of t.projectContributions()){let{key:c}=l.project;if(c in r)s[c]=r[c]}let i=e.map((l)=>{let c=l.server,{module:u}=c;if(!O(u)||u==="")throw Error(`Extension class "${l.name}": server.module (a bare import specifier) is required to generate a deployable worker`);let p=Xe(n,c.basePath);return{basePath:p,className:l.classDef.title??l.name,module:u,options:{basePath:p,sections:s},order:c.order??100}}),o=new Set;for(let l of Object.values(s)){if(!W(l))continue;for(let c of Object.values(l)){let u=W(c)?c.provider:void 0;if(O(u))o.add(u)}}let a=[];for(let l of t.connectors()){let c=String(l.connector.provider);if(!o.has(c))continue;let{module:u}=l.connector;if(!O(u)||u==="")throw Error(`Connector class "${l.name}": connector.module (a bare import specifier) is required to generate a deployable worker`);a.push({className:l.classDef.title??l.name,module:u,provider:c})}return{connectors:a,mounts:i}}async function eW(e,t,r){let n=[];for(let s of e.headProviders()){let i=s.project?.key,o=i===void 0?null:t[i];if(i!==void 0&&(o===void 0||o===null))continue;try{let a=await s.call("head",o??null,{projectConfig:t,root:r});n.push(...a??[])}catch(a){console.warn(`${s.name} head capability failed: ${Pe(a)}`)}}return n}function Vh(e,t){if(Array.isArray(e))return e.map((r)=>Vh(r,t));if(W(e))return Object.fromEntries(Object.entries(e).map(([r,n])=>[r,Vh(n,t)]));if(ye(e))return sr(e,t)??e;return e}function mj(e,t){return e.map((r)=>{if(!V(r))return r;let n={...r};if(n.attributes){n.attributes={...n.attributes};for(let[s,i]of Object.entries(n.attributes))if(ye(i))n.attributes[s]=sr(i,t)??i}if(ye(n.textContent))n.textContent=sr(n.textContent,t)??n.textContent;else if(V(n.textContent))n.textContent=Vh(n.textContent,t);return n})}function Dh(e,t){return e.map((r)=>{if(!V(r)||!r.attributes)return r;let n={...r,attributes:{...r.attributes}};for(let s of["href","src"]){let i=n.attributes[s];if(O(i)&&tW(i))n.attributes[s]=t(i)}return n})}function tW(e){return!e.startsWith("/")&&!e.startsWith("./")&&!e.startsWith("../")&&!e.startsWith("http")&&!e.startsWith("data:")}function yj(e){return wj(e).replaceAll("${","${")}function bj(e){return e.replaceAll("${","${")}function xj(e,t){if(!V(e))return e;let r={};for(let[n,s]of Object.entries(e))if(n==="children"&&Array.isArray(e.children))r.children=e.children.map((i)=>{if(O(i))return i;return xj(i,t)});else if(n==="style"&&V(e.style)){let i={...e.style};for(let[o,a]of Object.entries(i))if(ye(a))i[o]=Sf(a,t)??a;r.style=i}else if(n==="attributes"&&V(e.attributes)){let i={...e.attributes};for(let[o,a]of Object.entries(i))if(ye(a)){let l=Sf(a,t);i[o]=O(l)&&l.includes("${")?bj(l):l??a}r.attributes=i}else if(n==="$props"&&V(e.$props)){let i={...e.$props};for(let[o,a]of Object.entries(i))if(ye(a)){let l=Sf(a,t);i[o]=l!==null?l??null:a}r.$props=i}else if(ye(s)){let i=Sf(s,t);if(n==="textContent"&&O(i)&&i.includes("${"))r.innerHTML=yj(i);else r[n]=i??s}else r[n]=s;return r}function Sf(e,t){try{let r=t.$map,n=V(r)&&"item"in r?r.item:void 0,s=V(r)&&"index"in r?r.index:void 0,i=Go(e)?`return (${e.slice(2,-1)})`:`return \`${e}\``;return Function("state","$map","item","index",i)(t,r,n,s)}catch{return null}}function Gl(e,t){if(!V(e))return;if(ye(e.innerHTML)){let s=sr(e.innerHTML,t);if(s!=null)e.innerHTML=String(s).replaceAll("${","${")}let r=e.textContent;if(ye(r)){let s=sr(r,t);if(O(s)&&s.includes("${"))e.innerHTML=yj(s),delete e.textContent;else e.textContent=s??r}if(V(e.style)){for(let[s,i]of Object.entries(e.style))if(ye(i))e.style[s]=sr(i,t)??i}if(V(e.attributes)){for(let[s,i]of Object.entries(e.attributes))if(ye(i)){let o=sr(i,t);e.attributes[s]=O(o)&&o.includes("${")?bj(o):o??i}}if(V(e.$props)){let s=e.$props;for(let[i,o]of Object.entries(s))if(ye(o))s[i]=sr(o,t)??o}let n=e.children;if(dt(n)){let s=hj(n,t);if(s&&s.length>0){e.children=s;return}}if(ye(n)){let s=sr(n,t);if(Array.isArray(s)){let i=s;e.children=i;for(let o of i)Gl(o,t)}}else if(Array.isArray(e.children)){let s=0;while(s<e.children.length){let i=e.children[s];if(ye(i)){let o=sr(i,t);if(Array.isArray(o)){let a=o;e.children.splice(s,1,...a);for(let l of a)Gl(l,t);s+=a.length;continue}}if(dt(i)){let o=hj(i,t);if(o&&o.length>0){e.children.splice(s,1,...o),s+=o.length;continue}}Gl(i,t),s+=1}}}function rW(e,t){let r=t.replaceAll(/[.*+?^${}()|[\]\\]/g,String.raw`\$&`);return new RegExp(String.raw`\bstate\.${r}\b|#/state/${r}(?=["/])`).test(e)}function hj(e,t){let r=e.items,n=He(r)?pm(r.$ref,t):r,s=e.map;if(!Array.isArray(n)||!s)return null;return n.map((o,a)=>{let l=Object.create(t);l.$map={index:a,item:o},l["$map/item"]=o,l["$map/index"]=a;let c=xj(s,l);return Gl(c,l),c})}function Wh(e,t,r,n,s){if(!V(e))return;if(Array.isArray(e)){for(let a of e)Wh(a,t,r,n,s);return}if(Array.isArray(e.children))for(let a of e.children)Wh(a,t,r,n,s);let{tagName:i}=e;if(!O(i))return;let o=t.get(i);if(o){if(e.attributes){let{lifted:w,rest:j}=wm(e.attributes);if(w)e.attributes=j,e.$props={...w,...e.$props}}let a=(w)=>{if(r&&V(w)&&!Array.isArray(w))Ks(w,r.rules,r.media,"",r.counter,"jxs");return Xo(w,{},null)},l=eo(o,n),c=e.$props||null,u={componentDefs:t,defaults:n,path:[{key:JSON.stringify(c??{}),tag:i}],slotIds:s},p=Iu(o),{children:h}=e,m=!l&&!p&&Gs(o.children)?xm(u):null,b=l?(Array.isArray(h)?h:[]).map((w)=>a(w)).join(`
|
|
548
|
+
`):null,g=Y0(o,c,l?null:$m(h,{},a,m),u);if(m!==null)e.attributes={...e.attributes,[Pl]:String(m)};e.innerHTML=l?`<template shadowrootmode="${l}"><link rel="stylesheet" href="/components/${i}.css">${g}</template>${b??""}`:g,delete e.children;let y=vm(o.style,Tu(o,c));if(Object.keys(y).length>0)e.style={...e.style,...y};if(!p&&e.$props&&Object.keys(e.$props).length>0)e.attributes={...e.attributes,"data-jx-props":JSON.stringify(e.$props)};if(delete e.$props,p)e.$static=!0;else e.$prerendered=!0}}function nW(e,t,r=new Map,n=new Set,s="",i={}){let o=(S)=>e.includes(`<${S}`),a=(S)=>s.includes(`<${S}`),l=t.filter((S)=>o(S)||a(S));if(l.length===0)return e;let c=l.flatMap((S)=>{let E=r.get(S);return E===void 0||E===""?[]:[E]}).join(`
|
|
549
549
|
`),u=c===""?"":`<style>
|
|
550
|
-
${
|
|
550
|
+
${Nu(c)}
|
|
551
551
|
</style>`,p=(S)=>{let E=S.filter(Boolean).join(`
|
|
552
552
|
`);return E===""?e:e.replace("</head>",` ${E}
|
|
553
|
-
</head>`)},h=l.filter((S)=>a(S)||!n.has(S));if(h.length===0)return p([u]);let m=
|
|
554
|
-
`),y=e.includes('<script type="importmap">'),w=p([y?"":m,g,u]),
|
|
555
|
-
`);return w.replace("</body>",` ${
|
|
556
|
-
</body>`)}function
|
|
557
|
-
</body>`)}function
|
|
553
|
+
</head>`)},h=l.filter((S)=>a(S)||!n.has(S));if(h.length===0)return p([u]);let m=uj(i),g=[...Mh(i),...h.map((S)=>`/components/${S}.js`)].map((S)=>`<link rel="modulepreload" href="${S}">`).join(`
|
|
554
|
+
`),y=e.includes('<script type="importmap">'),w=p([y?"":m,g,u]),j=h.map((S)=>`<script type="module" src="/components/${S}.js"></script>`).join(`
|
|
555
|
+
`);return w.replace("</body>",` ${j}
|
|
556
|
+
</body>`)}function sW(e,t){return e.replace("</body>",` <script type="module" src="${t}"></script>
|
|
557
|
+
</body>`)}function iW(e,t,r){let n=z$(t),s=/<head>([\s\S]*?)<\/head>/i,i=e.match(s),o="";if(i){let l=i[1].match(/<style>[\s\S]*?<\/style>/gi);if(l)o+=`
|
|
558
558
|
${l.join(`
|
|
559
559
|
`)}`;let c=i[1].match(/<script[\s\S]*?<\/script>/gi);if(c)o+=`
|
|
560
560
|
${c.join(`
|
|
561
561
|
`)}`}let a=e;if(s.test(a))a=a.replace(s,`<head>
|
|
562
562
|
${n}${o}
|
|
563
|
-
</head>`);return a=a.replace(/<html\s[^>]*>/i,(l)=>{let c=/lang=/.test(l)?l.replace(/lang="[^"]*"/,`lang="${r.lang}"`):l.replace("<html",`<html lang="${r.lang}"`);if(r.dir!==void 0)c=/\sdir=/.test(c)?c.replace(/\sdir="[^"]*"/,` dir="${r.dir}"`):c.replace("<html",`<html dir="${r.dir}"`);return c}),a}function
|
|
564
|
-
<link rel="canonical" href="${
|
|
565
|
-
<meta name="robots" content="noindex">`,
|
|
563
|
+
</head>`);return a=a.replace(/<html\s[^>]*>/i,(l)=>{let c=/lang=/.test(l)?l.replace(/lang="[^"]*"/,`lang="${r.lang}"`):l.replace("<html",`<html lang="${r.lang}"`);if(r.dir!==void 0)c=/\sdir=/.test(c)?c.replace(/\sdir="[^"]*"/,` dir="${r.dir}"`):c.replace("<html",`<html dir="${r.dir}"`);return c}),a}function $j(e,t,r){if(e==="/")return si(t,"index.html");if(Rl(e))return si(t,"404.html");let n=e.replace(/^\//,"");if(r==="always")return si(t,n,"index.html");return si(t,`${n}.html`)}function oW(e,t,r={}){let n=0,s=[],i=[],o=(c)=>c.length>1&&c.endsWith("/")?c.slice(0,-1):c,a=new Set([...r.compiledUrls??[]].map((c)=>o(c))),l=r.trailingSlash??"always";for(let[c,u]of Object.entries(e)){let p=O(u)?u:u.destination,h=!O(u)&&"rewrite"in u&&u.rewrite,m=h?200:!O(u)&&("status"in u)?u.status??301:301;if(!h&&!Lh.has(String(m))){s.push(`Redirect "${c}" has status ${m}, which is not an RFC 9110 §15.4 redirection `+`status. Use one of ${[...Lh.keys()].join(", ")}, or { destination, rewrite: true } for a proxy.`);continue}let b=r.basePath??"";if(i.push(`${Xe(b,c)} ${Xe(b,p)} ${m}`),c.includes(":")||c.includes("*"))continue;if(a.has(o(c)))console.warn(`The ${h?"rewrite":"redirect"} "${c}" collides with a compiled page at the same route — `+"remove one or the other.");if(h)continue;let g=Lh.get(String(m));if(!g.html)continue;let y=$j(c,t,l),w=g.canonical?`
|
|
564
|
+
<link rel="canonical" href="${Fh(p)}">`:`
|
|
565
|
+
<meta name="robots" content="noindex">`,j=`<!DOCTYPE html>
|
|
566
566
|
<html>
|
|
567
567
|
<head>
|
|
568
568
|
<meta charset="utf-8">
|
|
569
|
-
<meta http-equiv="refresh" content="0;url=${
|
|
569
|
+
<meta http-equiv="refresh" content="0;url=${Fh(p)}">${w}
|
|
570
570
|
<title>Redirecting...</title>
|
|
571
571
|
</head>
|
|
572
572
|
<body>
|
|
573
|
-
<p>Redirecting to <a href="${
|
|
573
|
+
<p>Redirecting to <a href="${Fh(p)}">${wj(p)}</a>...</p>
|
|
574
574
|
</body>
|
|
575
|
-
</html
|
|
575
|
+
</html>`;$n(Dn(y),{recursive:!0}),rn(y,j,"utf8"),n+=1}if(i.length>0)rn(si(t,"_redirects"),`${i.join(`
|
|
576
576
|
`)}
|
|
577
|
-
`,"utf8"),n+=1;return{errors:s,files:n}}function
|
|
577
|
+
`,"utf8"),n+=1;return{errors:s,files:n}}function wj(e){return String(e).replaceAll("&","&").replaceAll("<","<").replaceAll(">",">")}function Fh(e){return String(e).replaceAll("&","&").replaceAll('"',""").replaceAll("<","<")}function qh(e){return String(e).replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""").replaceAll("'","'")}function aW(e){return e.toISOString().replace(/\.\d{3}Z$/,"Z")}function cW(e,t){if(e.length===0)return 0;let r=e.map((i)=>{let o=(i.alternates??[]).map((a)=>` <xhtml:link rel="alternate" hreflang="${qh(a.hreflang)}" href="${qh(a.href)}"/>`).join(`
|
|
578
578
|
`);return` <url>
|
|
579
|
-
<loc>${
|
|
579
|
+
<loc>${qh(i.loc)}</loc>
|
|
580
580
|
<lastmod>${i.lastmod}</lastmod>
|
|
581
581
|
${o===""?"":`${o}
|
|
582
582
|
`} </url>`}).join(`
|
|
583
583
|
`),s=`<?xml version="1.0" encoding="UTF-8"?>
|
|
584
|
-
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"${e.some((i)=>(i.alternates?.length??0)>0)?` xmlns:xhtml="${
|
|
584
|
+
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"${e.some((i)=>(i.alternates?.length??0)>0)?` xmlns:xhtml="${lW}"`:""}>
|
|
585
585
|
${r}
|
|
586
586
|
</urlset>
|
|
587
|
-
`;return
|
|
587
|
+
`;return rn(si(t,"sitemap.xml"),s,"utf8"),1}function uW(e,t){let r=si(e,"robots.txt"),n=Os(r),s=n?H3(r,"utf8"):`User-agent: *
|
|
588
588
|
Allow: /
|
|
589
589
|
`;if(/^Sitemap:/im.test(s))return 0;if(!s.endsWith(`
|
|
590
590
|
`))s+=`
|
|
591
591
|
`;return s+=`
|
|
592
|
-
Sitemap: ${
|
|
593
|
-
`,en(r,s,"utf8"),n?0:1}var t1='set build.adapter to "cloudflare-workers", "cloudflare-pages", "node", or "bun".',Ch,FV="http://www.w3.org/1999/xhtml";var u1=D(()=>{ve();ir();Lr();m0();Jp();al();l$();$$();ms();v$();P$();C$();I$();L$();q$();$m();ow();kl();Dm();An();Ho();vm();ME();Pm();VE();gm();zE();bm();e1();Sh();Io();Ch=new Map([["301",{canonical:!0,html:!0,why:""}],["302",{canonical:!1,html:!0,why:""}],["303",{canonical:!1,html:!0,why:""}],["307",{canonical:!1,html:!1,why:"307 preserves the request method and body; a meta-refresh silently converts POST to GET"}],["308",{canonical:!1,html:!1,why:"308 preserves the request method and body; a meta-refresh silently converts POST to GET"}]])});import{createRequire as WV}from"node:module";import{join as HV}from"node:path";import{spawn as BV}from"node:child_process";function UV(e){try{return WV(HV(e,"package.json")).resolve("@jxsuite/server/dev")}catch{throw Error(`@jxsuite/server is not installed in ${e}. Add it to devDependencies (e.g. \`bun add -d @jxsuite/server\`) and retry.`)}}function f1(e,t,r=BV,n=process){let i=[UV(e),"--root",e];if(t!==void 0)i.push("--port",String(t));let o=r("bun",i,{stdio:"inherit"});return o.on("error",(a)=>{if(a.code==="ENOENT")console.error("The Jx dev server runs on Bun, which was not found on your PATH. Install it from https://bun.sh and retry.");else console.error(`Failed to start the dev server: ${a.message}`);n.exitCode=1}),n.on("SIGINT",()=>{o.kill("SIGINT")}),n.on("SIGTERM",()=>{o.kill("SIGTERM")}),o.on("exit",(a)=>{n.exitCode=a??0}),o}var d1=()=>{};import{createServer as zV}from"node:http";import{existsSync as yf,readFileSync as p1,statSync as GV}from"node:fs";import{extname as KV,join as Mh,normalize as YV,resolve as m1,sep as XV}from"node:path";function QV(e,t){let r=YV(t).replaceAll("\\","/"),n=m1(e,`.${r.startsWith("/")?r:`/${r}`}`);if(n!==e&&!n.startsWith(e+XV))return null;if(yf(n)){if(GV(n).isDirectory()){let i=Mh(n,"index.html");return yf(i)?i:null}return n}let s=Mh(n,"index.html");return yf(s)?s:null}function h1(e,t){let r=m1(e),n=zV((s,i)=>{let o=new URL(s.url??"/","http://localhost"),a=QV(r,decodeURIComponent(o.pathname));if(a){i.writeHead(200,{"Content-Type":ZV.get(KV(a).toLowerCase())??"application/octet-stream"}),i.end(p1(a));return}let l=Mh(r,"404.html");if(yf(l)){i.writeHead(404,{"Content-Type":"text/html; charset=utf-8"}),i.end(p1(l));return}i.writeHead(404,{"Content-Type":"text/plain; charset=utf-8"}),i.end("Not found")});return n.listen(t),n}var ZV;var g1=D(()=>{Nd();ZV=new Map(Object.entries({".avif":"image/avif",".css":"text/css; charset=utf-8",".gif":"image/gif",".html":"text/html; charset=utf-8",".ico":"image/x-icon",".jpeg":"image/jpeg",".jpg":"image/jpeg",".js":"text/javascript; charset=utf-8",".json":"application/json; charset=utf-8",".png":"image/png",".svg":"image/svg+xml",".txt":"text/plain; charset=utf-8",".webp":"image/webp",".woff2":"font/woff2",".xml":"application/xml; charset=utf-8",...Uy}))});var Wl="https://jxsuite.com/schema/project/fields/v2",oo="https://jxsuite.com/schema/document/paths/v2",y1,b1,Hl,Dh;var bf=D(()=>{y1={description:"A single field definition inside a section entry schema — a small, recursive subset of "+"JSON Schema. Recursive positions reference the effective field union via the well-known fields resource $id.",properties:{default:{},description:{type:"string"},enum:{type:"array"},format:{type:"string"},items:{$ref:"https://jxsuite.com/schema/project/fields/v2"},properties:{additionalProperties:{$ref:"https://jxsuite.com/schema/project/fields/v2"},type:"object"},required:{items:{type:"string"},type:"array"},type:{enum:["string","number","integer","boolean","array","object"],type:"string"}},required:["type"],type:"object"},b1={description:`Relationship reference field: points at a named entry of a referenceable section via "#/<sectionKey>/<name>" (specs/relationships.md). A bare reference is to-one; wrap in an array field's items for to-many.`,properties:{$ref:{pattern:"^#/[A-Za-z][A-Za-z0-9_-]*/[A-Za-z0-9._-]+$",type:"string"},description:{type:"string"}},required:["$ref"],type:"object"},Hl=[{additionalProperties:!1,description:'Explicit value list: generates one page per value, bound to `param` (default "value").',properties:{param:{description:'Route parameter to fill (default "value").',type:"string"},values:{description:"The values to expand.",type:"array"}},required:["values"],type:"object"},{additionalProperties:!1,description:"JSON data-file source: loads a project-relative file that must contain an array, and generates one page per item.",properties:{$ref:{description:"Project-relative path to a .json file containing an array.",type:"string"},field:{description:'Item field providing the parameter value (default "id").',type:"string"},param:{description:'Route parameter to fill (default "id").',type:"string"}},required:["$ref"],type:"object"},{additionalProperties:!1,description:"Paged list: one route per `pageSize` items of an entry of this page's own state, which must resolve to an array at build time. The page number fills the route's one parameter that `each` does not.",properties:{each:{description:"Another `$paths` source for the route's other parameter: the list is paged once per value of it, as a paged archive per tag is.",type:["object","array"]},pageSize:{description:"Items on each page.",minimum:1,type:"integer"},paginate:{additionalProperties:!1,description:"The state entry to page.",properties:{$ref:{description:"A pointer to an entry of this page's state: `#/state/<key>`.",pattern:"^#/state/[^/]+$",type:"string"}},required:["$ref"],type:"object"}},required:["paginate","pageSize"],type:"object"},{description:"Legacy explicit form: an array of ready-made parameter objects, used as-is with no expansion. Prefer one of the source shapes above.",items:{additionalProperties:{type:"string"},type:"object"},type:"array"}],Dh={description:"A source shape contributed by an extension this schema cannot see. The project's generated document.schema.json validates these exactly; enable the owning extension and regenerate with `jx schema` to get precise checking here.",minProperties:1,type:"object"}});function eW(e){let{corePath:t,fragments:r,fieldSchemaRefs:n=[]}=e;return{$comment:v1,$defs:{Fields:{$id:Wl,anyOf:[{$ref:`${x1}#/$defs/JxFieldSchema`},{$ref:`${x1}#/$defs/RelationshipRef`},...n.map((s)=>({$ref:s}))]}},$schema:"https://json-schema.org/draft/2020-12/schema",allOf:[{$ref:t},...r.map((s)=>({$ref:s}))],type:"object",unevaluatedProperties:!1}}async function Ul(e,t,r,n=[]){let s=structuredClone(e),i=new Map,o=new Set;Lh(s,o);let a=0,l=async(u)=>{let p=Bl(u),h=i.get(p);if(h!==void 0)return h;let m;try{m=structuredClone(await t(p))}catch(w){throw Error(`bundleSchema: cannot load $ref target "${p}": ${aW(w)}`,{cause:w})}let b=O(m.$id)&&ri(m.$id)?m.$id:null;a+=b===null?1:0;let g=b??`urn:jx:bundled:${a}`;if(i.set(p,g),o.has(g))return g;o.add(g),m.$id=g,await c(m,oW(p),!0);let y=s.$defs??={};return y[g]=m,g},c=async(u,p,h=!1)=>{if(Array.isArray(u)){for(let y of u)await c(y,p);return}if(!B(u))return;let m=u,b=p;if(!h&&O(m.$id)&&ri(m.$id))b=null;let g=m.$ref;if(O(g)&&b!==null&&!g.startsWith("#")&&!ri(g)){let y=g.indexOf("#"),w=y===-1?g:g.slice(0,y),P=y===-1?"":g.slice(y);if(w){let S=await l(`${b}/${w}`);m.$ref=`${S}${P}`}}for(let y of Object.values(m))await c(y,b)};await c(s,Bl(r),!0);for(let u of n)await l(`${Bl(r)}/${u}`);return s}function sW(e){return e.replaceAll("~","~0").replaceAll("/","~1")}function*$1(e,t){for(let r of tW){let n=e[r];if(Array.isArray(n)){for(let[s,i]of n.entries())if(B(i))yield[i,`${t}/${r}/${s}`]}else if(B(n))yield[n,`${t}/${r}`]}for(let r of rW){let n=e[r];if(!B(n))continue;for(let[s,i]of Object.entries(n))if(B(i))yield[i,`${t}/${r}/${sW(s)}`]}for(let r of nW){let n=e[r];if(!Array.isArray(n))continue;for(let[s,i]of n.entries())if(B(i))yield[i,`${t}/${r}/${s}`]}}function iW(e,t){let r=e.replace(/^[a-zA-Z][a-zA-Z\d+.-]*:/,"");if(r.startsWith("//")){let i=r.indexOf("/",2);r=i===-1?"":r.slice(i+1)}r=r.replace(/^schema\//,"");let n=r.split(/[^a-zA-Z0-9]+/).filter(Boolean).join("-")||"resource",s=n;for(let i=2;t.has(s);i+=1)s=`${n}-${i}`;return t.add(s),s}function zl(e){let t=structuredClone(e);if(B(t.$defs)){let i=new Set(Object.keys(t.$defs).filter((a)=>!ri(a))),o={};for(let[a,l]of Object.entries(t.$defs)){let c=B(l)&&O(l.$id)?l.$id:a;o[ri(a)?iW(c,i):a]=l}t.$defs=o}let r=new Map,n=(i,o)=>{let{$id:a}=i;if(O(a)&&ri(a)&&!r.has(a))r.set(a,o);for(let[l,c]of $1(i,o))n(l,c)};n(t,"#");let s=(i,o)=>{let a=o,{$id:l}=i;if(O(l)&&ri(l)){if(a=r.get(l)??o,a!=="#")delete i.$id}let c=i.$ref;if(O(c)){let u=c.indexOf("#"),p=u===-1?c:c.slice(0,u),h=u===-1?"":c.slice(u+1);if(p===""){if(h.startsWith("/"))i.$ref=`${a}${h}`}else{let m=r.get(p);if(m!==void 0)i.$ref=h?`${m}${h}`:m}}for(let[u]of $1(i,a))s(u,a)};return s(t,"#"),t}function Lh(e,t){if(Array.isArray(e)){for(let n of e)Lh(n,t);return}if(!B(e))return;let r=e;if(O(r.$id)&&ri(r.$id))t.add(r.$id);for(let n of Object.values(r))Lh(n,t)}function ri(e){return/^[a-zA-Z][a-zA-Z\d+.-]*:/.test(e)}function Bl(e){let t=e.replaceAll("\\","/"),r=t.startsWith("/"),n=[];for(let s of t.split("/")){if(s===""||s===".")continue;if(s===".."){if(n.length>0&&n.at(-1)!=="..")n.pop();else if(!r)n.push("..");continue}n.push(s)}return(r?"/":"")+n.join("/")}function oW(e){let t=e.lastIndexOf("/");if(t===-1)return".";return t===0?"/":e.slice(0,t)}function aW(e){return e instanceof Error?e.message:String(e)}function lW(e){let{corePath:t,pathsValueRefs:r}=e;return{$comment:v1,$defs:{PathsValue:{$id:oo,anyOf:[...Hl,...r.map((n)=>({$ref:n}))]}},$schema:"https://json-schema.org/draft/2020-12/schema",allOf:[{$ref:t}]}}async function S1(e){let{baseDir:t,coreDocumentRef:r,coreProjectRef:n,extensions:s,loadJson:i}=e,o=[],a=[],l=[],c=[];for(let h of s){if(h.project)o.push(h.project);if(h.document){let m=await w1(h.document,i,t);if(a.push(...m),m.length>0)l.push(h.document)}if(h.fields)c.push(...await w1(h.fields,i,t)),o.push(h.fields)}let u=eW({corePath:n,fieldSchemaRefs:c,fragments:o}),p=lW({corePath:r,pathsValueRefs:a});return{document:zl(await Ul(p,i,t,l)),project:zl(await Ul(u,i,t))}}async function w1(e,t,r){let n;try{n=await t(Bl(`${Bl(r)}/${e}`))}catch{return[]}let{$id:s}=n;if(!O(s)||!n.$defs)return[];return Object.keys(n.$defs).map((i)=>`${s}#/$defs/${i}`)}var x1="https://jxsuite.com/schema/project/core/v2",v1="Generated by `jx schema` from project.json#/extensions — do not edit.",tW,rW,nW;var E1=D(()=>{bf();ve();bf();tW=["additionalItems","additionalProperties","contains","contentSchema","else","if","items","not","propertyNames","then","unevaluatedItems","unevaluatedProperties"],rW=["$defs","definitions","dependencies","dependentSchemas","patternProperties","properties"],nW=["allOf","anyOf","oneOf","prefixItems"]});import{existsSync as k1,readFileSync as cW,statSync as P1,writeFileSync as xf}from"node:fs";import{createRequire as qh}from"node:module";import{dirname as uW,isAbsolute as fW,relative as Vh,resolve as ni,sep as Wh}from"node:path";async function _1(e){let{config:t}=qs(e),r=await Fs(e,t),n=ni(e),{document:s,project:i}=await S1({baseDir:n,coreDocumentRef:j1(e,pW),coreProjectRef:j1(e,dW),extensions:r.extensions.map((o)=>({document:o.schemas.document&&Fh(e,o,o.schemas.document),fields:o.schemas.fields&&Fh(e,o,o.schemas.fields),project:o.schemas.project&&Fh(e,o,o.schemas.project)})),loadJson:O1(n)});return{documentSchema:s,projectSchema:i}}async function A1(e){let{documentSchema:t,projectSchema:r}=await _1(e),n=ni(e,"project.schema.json"),s=ni(e,"document.schema.json");return xf(n,`${JSON.stringify(r,null,2)}
|
|
594
|
-
`,"utf8"),
|
|
595
|
-
`,"utf8"),{documentSchemaPath:s,projectSchemaPath:n}}async function
|
|
596
|
-
`,"utf8"),
|
|
597
|
-
`,"utf8");let u=
|
|
598
|
-
`);return
|
|
592
|
+
Sitemap: ${Bs("/sitemap.xml",t)}
|
|
593
|
+
`,rn(r,s,"utf8"),n?0:1}var pj='set build.adapter to "cloudflare-workers", "cloudflare-pages", "node", or "bun".',Lh,lW="http://www.w3.org/1999/xhtml";var vj=D(()=>{be();er();Vr();Sx();Wp();pl();y$();A$();ys();O$();T$();q$();H$();G$();Y$();km();hw();Cl();Bm();An();Ko();Am();KE();Nm();ej();Sm();ij();jm();dj();Rh();Fo();Lh=new Map([["301",{canonical:!0,html:!0,why:""}],["302",{canonical:!1,html:!0,why:""}],["303",{canonical:!1,html:!0,why:""}],["307",{canonical:!1,html:!1,why:"307 preserves the request method and body; a meta-refresh silently converts POST to GET"}],["308",{canonical:!1,html:!1,why:"308 preserves the request method and body; a meta-refresh silently converts POST to GET"}]])});import{createRequire as fW}from"node:module";import{join as dW}from"node:path";import{spawn as pW}from"node:child_process";function mW(e){try{return fW(dW(e,"package.json")).resolve("@jxsuite/server/dev")}catch{throw Error(`@jxsuite/server is not installed in ${e}. Add it to devDependencies (e.g. \`bun add -d @jxsuite/server\`) and retry.`)}}function Sj(e,t,r=pW,n=process){let i=[mW(e),"--root",e];if(t!==void 0)i.push("--port",String(t));let o=r("bun",i,{stdio:"inherit"});return o.on("error",(a)=>{if(a.code==="ENOENT")console.error("The Jx dev server runs on Bun, which was not found on your PATH. Install it from https://bun.sh and retry.");else console.error(`Failed to start the dev server: ${a.message}`);n.exitCode=1}),n.on("SIGINT",()=>{o.kill("SIGINT")}),n.on("SIGTERM",()=>{o.kill("SIGTERM")}),o.on("exit",(a)=>{n.exitCode=a??0}),o}var Ej=()=>{};import{createServer as hW}from"node:http";import{existsSync as Ef,readFileSync as jj,statSync as gW}from"node:fs";import{extname as yW,join as Hh,normalize as bW,resolve as Pj,sep as xW}from"node:path";function wW(e,t){let r=bW(t).replaceAll("\\","/"),n=Pj(e,`.${r.startsWith("/")?r:`/${r}`}`);if(n!==e&&!n.startsWith(e+xW))return null;if(Ef(n)){if(gW(n).isDirectory()){let i=Hh(n,"index.html");return Ef(i)?i:null}return n}let s=Hh(n,"index.html");return Ef(s)?s:null}function kj(e,t){let r=Pj(e),n=hW((s,i)=>{let o=new URL(s.url??"/","http://localhost"),a=wW(r,decodeURIComponent(o.pathname));if(a){i.writeHead(200,{"Content-Type":$W.get(yW(a).toLowerCase())??"application/octet-stream"}),i.end(jj(a));return}let l=Hh(r,"404.html");if(Ef(l)){i.writeHead(404,{"Content-Type":"text/html; charset=utf-8"}),i.end(jj(l));return}i.writeHead(404,{"Content-Type":"text/plain; charset=utf-8"}),i.end("Not found")});return n.listen(t),n}var $W;var _j=D(()=>{Fd();$W=new Map(Object.entries({".avif":"image/avif",".css":"text/css; charset=utf-8",".gif":"image/gif",".html":"text/html; charset=utf-8",".ico":"image/x-icon",".jpeg":"image/jpeg",".jpg":"image/jpeg",".js":"text/javascript; charset=utf-8",".json":"application/json; charset=utf-8",".png":"image/png",".svg":"image/svg+xml",".txt":"text/plain; charset=utf-8",".webp":"image/webp",".woff2":"font/woff2",".xml":"application/xml; charset=utf-8",...eb}))});var Kl="https://jxsuite.com/schema/project/fields/v2",ao="https://jxsuite.com/schema/document/paths/v2",Aj,Rj,Yl,Bh;var jf=D(()=>{Aj={description:"A single field definition inside a section entry schema — a small, recursive subset of "+"JSON Schema. Recursive positions reference the effective field union via the well-known fields resource $id.",properties:{default:{},description:{type:"string"},enum:{type:"array"},format:{type:"string"},items:{$ref:"https://jxsuite.com/schema/project/fields/v2"},properties:{additionalProperties:{$ref:"https://jxsuite.com/schema/project/fields/v2"},type:"object"},required:{items:{type:"string"},type:"array"},type:{enum:["string","number","integer","boolean","array","object"],type:"string"}},required:["type"],type:"object"},Rj={description:`Relationship reference field: points at a named entry of a referenceable section via "#/<sectionKey>/<name>" (specs/relationships.md). A bare reference is to-one; wrap in an array field's items for to-many.`,properties:{$ref:{pattern:"^#/[A-Za-z][A-Za-z0-9_-]*/[A-Za-z0-9._-]+$",type:"string"},description:{type:"string"}},required:["$ref"],type:"object"},Yl=[{additionalProperties:!1,description:'Explicit value list: generates one page per value, bound to `param` (default "value").',properties:{param:{description:'Route parameter to fill (default "value").',type:"string"},values:{description:"The values to expand.",type:"array"}},required:["values"],type:"object"},{additionalProperties:!1,description:"JSON data-file source: loads a project-relative file that must contain an array, and generates one page per item.",properties:{$ref:{description:"Project-relative path to a .json file containing an array.",type:"string"},field:{description:'Item field providing the parameter value (default "id").',type:"string"},param:{description:'Route parameter to fill (default "id").',type:"string"}},required:["$ref"],type:"object"},{additionalProperties:!1,description:"Paged list: one route per `pageSize` items of an entry of this page's own state, which must resolve to an array at build time. The page number fills the route's one parameter that `each` does not.",properties:{each:{description:"Another `$paths` source for the route's other parameter: the list is paged once per value of it, as a paged archive per tag is.",type:["object","array"]},pageSize:{description:"Items on each page.",minimum:1,type:"integer"},paginate:{additionalProperties:!1,description:"The state entry to page.",properties:{$ref:{description:"A pointer to an entry of this page's state: `#/state/<key>`.",pattern:"^#/state/[^/]+$",type:"string"}},required:["$ref"],type:"object"}},required:["paginate","pageSize"],type:"object"},{description:"Legacy explicit form: an array of ready-made parameter objects, used as-is with no expansion. Prefer one of the source shapes above.",items:{additionalProperties:{type:"string"},type:"object"},type:"array"}],Bh={description:"A source shape contributed by an extension this schema cannot see. The project's generated document.schema.json validates these exactly; enable the owning extension and regenerate with `jx schema` to get precise checking here.",minProperties:1,type:"object"}});function vW(e){let{corePath:t,fragments:r,fieldSchemaRefs:n=[]}=e;return{$comment:Tj,$defs:{Fields:{$id:Kl,anyOf:[{$ref:`${Oj}#/$defs/JxFieldSchema`},{$ref:`${Oj}#/$defs/RelationshipRef`},...n.map((s)=>({$ref:s}))]}},$schema:"https://json-schema.org/draft/2020-12/schema",allOf:[{$ref:t},...r.map((s)=>({$ref:s}))],type:"object",unevaluatedProperties:!1}}async function Zl(e,t,r,n=[]){let s=structuredClone(e),i=new Map,o=new Set;Uh(s,o);let a=0,l=async(u)=>{let p=Xl(u),h=i.get(p);if(h!==void 0)return h;let m;try{m=structuredClone(await t(p))}catch(w){throw Error(`bundleSchema: cannot load $ref target "${p}": ${AW(w)}`,{cause:w})}let b=O(m.$id)&&ii(m.$id)?m.$id:null;a+=b===null?1:0;let g=b??`urn:jx:bundled:${a}`;if(i.set(p,g),o.has(g))return g;o.add(g),m.$id=g,await c(m,_W(p),!0);let y=s.$defs??={};return y[g]=m,g},c=async(u,p,h=!1)=>{if(Array.isArray(u)){for(let y of u)await c(y,p);return}if(!W(u))return;let m=u,b=p;if(!h&&O(m.$id)&&ii(m.$id))b=null;let g=m.$ref;if(O(g)&&b!==null&&!g.startsWith("#")&&!ii(g)){let y=g.indexOf("#"),w=y===-1?g:g.slice(0,y),j=y===-1?"":g.slice(y);if(w){let S=await l(`${b}/${w}`);m.$ref=`${S}${j}`}}for(let y of Object.values(m))await c(y,b)};await c(s,Xl(r),!0);for(let u of n)await l(`${Xl(r)}/${u}`);return s}function PW(e){return e.replaceAll("~","~0").replaceAll("/","~1")}function*Nj(e,t){for(let r of SW){let n=e[r];if(Array.isArray(n)){for(let[s,i]of n.entries())if(W(i))yield[i,`${t}/${r}/${s}`]}else if(W(n))yield[n,`${t}/${r}`]}for(let r of EW){let n=e[r];if(!W(n))continue;for(let[s,i]of Object.entries(n))if(W(i))yield[i,`${t}/${r}/${PW(s)}`]}for(let r of jW){let n=e[r];if(!Array.isArray(n))continue;for(let[s,i]of n.entries())if(W(i))yield[i,`${t}/${r}/${s}`]}}function kW(e,t){let r=e.replace(/^[a-zA-Z][a-zA-Z\d+.-]*:/,"");if(r.startsWith("//")){let i=r.indexOf("/",2);r=i===-1?"":r.slice(i+1)}r=r.replace(/^schema\//,"");let n=r.split(/[^a-zA-Z0-9]+/).filter(Boolean).join("-")||"resource",s=n;for(let i=2;t.has(s);i+=1)s=`${n}-${i}`;return t.add(s),s}function Ql(e){let t=structuredClone(e);if(W(t.$defs)){let i=new Set(Object.keys(t.$defs).filter((a)=>!ii(a))),o={};for(let[a,l]of Object.entries(t.$defs)){let c=W(l)&&O(l.$id)?l.$id:a;o[ii(a)?kW(c,i):a]=l}t.$defs=o}let r=new Map,n=(i,o)=>{let{$id:a}=i;if(O(a)&&ii(a)&&!r.has(a))r.set(a,o);for(let[l,c]of Nj(i,o))n(l,c)};n(t,"#");let s=(i,o)=>{let a=o,{$id:l}=i;if(O(l)&&ii(l)){if(a=r.get(l)??o,a!=="#")delete i.$id}let c=i.$ref;if(O(c)){let u=c.indexOf("#"),p=u===-1?c:c.slice(0,u),h=u===-1?"":c.slice(u+1);if(p===""){if(h.startsWith("/"))i.$ref=`${a}${h}`}else{let m=r.get(p);if(m!==void 0)i.$ref=h?`${m}${h}`:m}}for(let[u]of Nj(i,a))s(u,a)};return s(t,"#"),t}function Uh(e,t){if(Array.isArray(e)){for(let n of e)Uh(n,t);return}if(!W(e))return;let r=e;if(O(r.$id)&&ii(r.$id))t.add(r.$id);for(let n of Object.values(r))Uh(n,t)}function ii(e){return/^[a-zA-Z][a-zA-Z\d+.-]*:/.test(e)}function Xl(e){let t=e.replaceAll("\\","/"),r=t.startsWith("/"),n=[];for(let s of t.split("/")){if(s===""||s===".")continue;if(s===".."){if(n.length>0&&n.at(-1)!=="..")n.pop();else if(!r)n.push("..");continue}n.push(s)}return(r?"/":"")+n.join("/")}function _W(e){let t=e.lastIndexOf("/");if(t===-1)return".";return t===0?"/":e.slice(0,t)}function AW(e){return e instanceof Error?e.message:String(e)}function RW(e){let{corePath:t,pathsValueRefs:r}=e;return{$comment:Tj,$defs:{PathsValue:{$id:ao,anyOf:[...Yl,...r.map((n)=>({$ref:n}))]}},$schema:"https://json-schema.org/draft/2020-12/schema",allOf:[{$ref:t}]}}async function Ij(e){let{baseDir:t,coreDocumentRef:r,coreProjectRef:n,extensions:s,loadJson:i}=e,o=[],a=[],l=[],c=[];for(let h of s){if(h.project)o.push(h.project);if(h.document){let m=await Cj(h.document,i,t);if(a.push(...m),m.length>0)l.push(h.document)}if(h.fields)c.push(...await Cj(h.fields,i,t)),o.push(h.fields)}let u=vW({corePath:n,fieldSchemaRefs:c,fragments:o}),p=RW({corePath:r,pathsValueRefs:a});return{document:Ql(await Zl(p,i,t,l)),project:Ql(await Zl(u,i,t))}}async function Cj(e,t,r){let n;try{n=await t(Xl(`${Xl(r)}/${e}`))}catch{return[]}let{$id:s}=n;if(!O(s)||!n.$defs)return[];return Object.keys(n.$defs).map((i)=>`${s}#/$defs/${i}`)}var Oj="https://jxsuite.com/schema/project/core/v2",Tj="Generated by `jx schema` from project.json#/extensions — do not edit.",SW,EW,jW;var Jj=D(()=>{jf();be();jf();SW=["additionalItems","additionalProperties","contains","contentSchema","else","if","items","not","propertyNames","then","unevaluatedItems","unevaluatedProperties"],EW=["$defs","definitions","dependencies","dependentSchemas","patternProperties","properties"],jW=["allOf","anyOf","oneOf","prefixItems"]});import{existsSync as Lj,readFileSync as OW,statSync as Mj,writeFileSync as Pf}from"node:fs";import{createRequire as Gh}from"node:module";import{dirname as NW,isAbsolute as CW,relative as Kh,resolve as oi,sep as Yh}from"node:path";async function Fj(e){let{config:t}=Hs(e),r=await Ws(e,t),n=oi(e),{document:s,project:i}=await Ij({baseDir:n,coreDocumentRef:Dj(e,IW),coreProjectRef:Dj(e,TW),extensions:r.extensions.map((o)=>({document:o.schemas.document&&zh(e,o,o.schemas.document),fields:o.schemas.fields&&zh(e,o,o.schemas.fields),project:o.schemas.project&&zh(e,o,o.schemas.project)})),loadJson:Wj(n)});return{documentSchema:s,projectSchema:i}}async function qj(e){let{documentSchema:t,projectSchema:r}=await Fj(e),n=oi(e,"project.schema.json"),s=oi(e,"document.schema.json");return Pf(n,`${JSON.stringify(r,null,2)}
|
|
594
|
+
`,"utf8"),Pf(s,`${JSON.stringify(t,null,2)}
|
|
595
|
+
`,"utf8"),{documentSchemaPath:s,projectSchemaPath:n}}async function Vj(e,t={}){let{write:r=!0}=t,n=oi(e),s=kn(n),i=oi(n,"project.schema.json"),o=oi(n,"document.schema.json"),a=(g)=>{if(!Lj(g))return!0;try{return Mj(s).mtimeMs>Mj(g).mtimeMs}catch{return!1}},c=a(i)||a(o)?await Fj(n):null;if(c&&r)Pf(i,`${JSON.stringify(c.projectSchema,null,2)}
|
|
596
|
+
`,"utf8"),Pf(o,`${JSON.stringify(c.documentSchema,null,2)}
|
|
597
|
+
`,"utf8");let u=Wj(n),p=c?.projectSchema??ec(i),h=c?.documentSchema??ec(o),m=Ql(await Zl(p,u,n));return{document:Ql(await Zl(h,u,n)),project:m}}function ec(e){let t=JSON.parse(OW(e,"utf8"));if(!W(t))throw TypeError(`Schema file "${e}" is not a JSON object`);return t}function MW(e){return e.startsWith(JW)&&e.endsWith(".json")}function DW(e,t){try{return Gh(import.meta.url).resolve(e)}catch(r){throw Error(`Schema ref "${t}" names the core schema "${e}", which must resolve from the host workspace and does not. The project's own copy is deliberately not consulted, so the host install is missing "${e.split("/").slice(0,2).join("/")}" — check that `+"the package ships with this build",{cause:r})}}function Wj(e){return async(t)=>{let r=oi(t),n=Kh(e,r);if(n.startsWith("..")||CW(n))throw Error(`Schema ref "${t}" escapes the project root ${e}`);let s=n.split(Yh).join("/"),i="node_modules/",o=s.lastIndexOf(i),a=o===-1?null:s.slice(o+i.length);if(a!==null&&MW(a))return ec(DW(a,t));if(Lj(r))return ec(r);if(a===null)throw Error(`Schema ref "${t}" does not exist`);let l;try{l=_p(e,a)}catch(c){throw Error(`Schema ref "${t}" does not exist and "${a}" is not resolvable from the `+"project — is the package installed?",{cause:c})}return ec(l)}}function Dj(e,t){let r=null;try{r=Gh(oi(e,"package.json")).resolve(t)}catch{try{r=Gh(import.meta.url).resolve(t)}catch{r=null}}let n=`./node_modules/${t}`;return r?Hj(e,r,n):n}function zh(e,t,r){let n=Kh(NW(t.manifestPath),r).split(Yh).join("/"),s=`./node_modules/${t.specifier}/${n}`;return Hj(e,r,s)}function Hj(e,t,r){let n=Kh(e,t).split(Yh).join("/");if(n.startsWith(".."))return r;return n.startsWith("./")?n:`./${n}`}var TW="@jxsuite/schema/schemas/project.core.schema.json",IW="@jxsuite/schema/schema.json",JW="@jxsuite/schema/";var Xh=D(()=>{Jj();be();ys();pl();Fo()});var zj=C(function(Cie,Uj){var __dirname="/home/runner/work/jx/jx/node_modules/@webref/elements",Bj=Be("fs").promises,kf=Be("path");async function LW({folder:e=__dirname}={}){let t={},r=await Bj.readdir(e);for(let n of r)if(n.endsWith(".json")&&n!=="package.json"){let s=await Bj.readFile(kf.join(e,n),"utf8");t[kf.basename(n,".json")]=JSON.parse(s)}return t}Uj.exports={listAll:LW}});var Xj=C(function(Tie,Yj){var __dirname="/home/runner/work/jx/jx/node_modules/@webref/css",FW=Be("fs").promises,Gj=Be("path");async function Kj({folder:e=__dirname}={}){let t=await FW.readFile(Gj.join(e,"css.json"),"utf8");return JSON.parse(t)}async function qW({folder:e=__dirname}={}){let t=await Kj(e),r={};for(let[n,s]of Object.entries(t)){r[n]={};for(let i of s){let o=i.name,a=null;if(i.for)a=s.find((l)=>l!==i&&l.name===i.name);if(a)o+=" for "+i.for[0];if(r[n][o]=i,i.descriptors){let l=i.descriptors;i.descriptors={};for(let c of l)i.descriptors[c.name]=c}}}return r}Yj.exports={listAll:Kj,index:qW}});var Zj=C(function(_f,Zh){(function(e,t){typeof _f=="object"&&typeof Zh=="object"?Zh.exports=t():typeof define=="function"&&define.amd?define([],t):typeof _f=="object"?_f.WebIDL2=t():e.WebIDL2=t()})(globalThis,()=>(()=>{var e={d:(d,x)=>{for(var v in x)e.o(x,v)&&!e.o(d,v)&&Object.defineProperty(d,v,{enumerable:!0,get:x[v]})},o:(d,x)=>Object.prototype.hasOwnProperty.call(d,x),r:(d)=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(d,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(d,"__esModule",{value:!0})}},t={};function r(d,x,v,P,N,{level:G="error",autofix:ee,ruleName:ge}={}){function pe(Jr){return Jr>0?d.slice(x,x+Jr):d.slice(Math.max(x+Jr,0),x)}function $e(Jr,{precedes:_i}={}){let is=Jr.map((Ka)=>Ka.trivia+Ka.value).join(""),Ga=d[x];return Ga.type==="eof"?is:_i?is+Ga.trivia:is.slice(Ga.trivia.length)}let Te=d[x].type!=="eof"?d[x].line:d.length>1?d[x-1].line:1,qe=function(Jr){let _i=Jr.split(`
|
|
598
|
+
`);return _i[_i.length-1]}($e(pe(-5),{precedes:!0})),cr=pe(5),yr=$e(cr),za=qe+yr.split(`
|
|
599
599
|
`)[0]+`
|
|
600
|
-
`+(" ".repeat(
|
|
601
|
-
${Va}`;return{message:`${$y} ${j}`,bareMessage:j,context:$y,line:Te,sourceName:d.name,level:G,ruleName:ge,autofix:ee,input:hr,tokens:sr}}function n(d,x,v,j){return r(d,x,v,j,"Syntax")}function s(d,x,v,j,C={}){return C.ruleName=v,r(x.source,d.index,x,j,"Validation",C)}e.r(t),e.d(t,{WebIDLParseError:()=>Ot,parse:()=>Ne,validate:()=>Ct,write:()=>we});class i{constructor({source:d,tokens:x}){Object.defineProperties(this,{source:{value:d},tokens:{value:x,writable:!0},parent:{value:null,writable:!0},this:{value:this}})}toJSON(){let d={type:void 0,name:void 0,inheritance:void 0},x=this;for(;x!==Object.prototype;){let v=Object.getOwnPropertyDescriptors(x);for(let[j,C]of Object.entries(v))(C.enumerable||C.get)&&(d[j]=this[j]);x=Object.getPrototypeOf(x)}return d}}function o(d,x,{useNullableInner:v}={}){if(!d.union){let j=x.unique.get(d.idlType);if(!j)return;if(j.type==="typedef"){let{typedefIncludesDictionary:C}=x.cache;if(C.has(j))return C.get(j);x.cache.typedefIncludesDictionary.set(j,void 0);let G=o(j.idlType,x);if(x.cache.typedefIncludesDictionary.set(j,G),G)return{reference:d,dictionary:G.dictionary}}if(j.type==="dictionary"&&(v||!d.nullable))return{reference:d,dictionary:j}}for(let j of d.subtype){let C=o(j,x);if(C)return j.union?C:{reference:j,dictionary:C.dictionary}}}function a(d,x){if(x.cache.dictionaryIncludesRequiredField.has(d))return x.cache.dictionaryIncludesRequiredField.get(d);x.cache.dictionaryIncludesRequiredField.set(d,void 0);let v=d.members.some((j)=>j.required);if(!v&&d.inheritance){let j=x.unique.get(d.inheritance);j?a(j,x)&&(v=!0):v=!0}return x.cache.dictionaryIncludesRequiredField.set(d,v),v}class l extends Array{constructor({source:d,tokens:x}){super(),Object.defineProperties(this,{source:{value:d},tokens:{value:x},parent:{value:null,writable:!0}})}}class c extends i{static parser(d,x){return()=>{let v=d.consumeKind(x);if(v)return new c({source:d.source,tokens:{value:v}})}}get value(){return J(this.tokens.value.value)}write(d){return d.ts.wrap([d.token(this.tokens.value),d.token(this.tokens.separator)])}}class u extends c{static parse(d){let x=d.consumeKind("eof");if(x)return new u({source:d.source,tokens:{value:x}})}get type(){return"eof"}}function p(d,x){return F(d,{parser:c.parser(d,x),listName:x+" list"})}let h=["identifier","decimal","integer","string"],m=new Map([...["NoInterfaceObject","LenientSetter","LenientThis","TreatNonObjectAsNull","Unforgeable"].map((d)=>[d,`Legacy${d}`]),["NamedConstructor","LegacyFactoryFunction"],["OverrideBuiltins","LegacyOverrideBuiltIns"],["TreatNullAs","LegacyNullToEmptyString"]]);function b(d){for(let x of h){let v=p(d,x);if(v.length)return v}d.error("Expected identifiers, strings, decimals, or integers but none found")}class g extends i{static parse(d){let x={assign:d.consume("=")},v=W(new g({source:d.source,tokens:x}));if(v.list=[],x.assign){if(x.asterisk=d.consume("*"),x.asterisk)return v.this;x.secondaryName=d.consumeKind(...h)}return x.open=d.consume("("),x.open?(v.list=v.rhsIsList?b(d):ce(d),x.close=d.consume(")")||d.error("Unexpected token in extended attribute argument list")):x.assign&&!x.secondaryName&&d.error("No right hand side to extended attribute assignment"),v.this}get rhsIsList(){return this.tokens.assign&&!this.tokens.asterisk&&!this.tokens.secondaryName}get rhsType(){return this.rhsIsList?this.list[0].tokens.value.type+"-list":this.tokens.asterisk?"*":this.tokens.secondaryName?this.tokens.secondaryName.type:null}write(d){let{rhsType:x}=this;return d.ts.wrap([d.token(this.tokens.assign),d.token(this.tokens.asterisk),d.reference_token(this.tokens.secondaryName,this.parent),d.token(this.tokens.open),...this.list.map((v)=>x==="identifier-list"?d.identifier(v,this.parent):v.write(d)),d.token(this.tokens.close)])}}class y extends i{static parse(d){let x=d.consumeKind("identifier");if(x)return new y({source:d.source,tokens:{name:x},params:g.parse(d)})}constructor({source:d,tokens:x,params:v}){super({source:d,tokens:x}),v.parent=this,Object.defineProperty(this,"params",{value:v})}get type(){return"extended-attribute"}get name(){return this.tokens.name.value}get rhs(){let{rhsType:d,tokens:x,list:v}=this.params;if(!d)return null;return{type:d,value:this.params.rhsIsList?v:this.params.tokens.secondaryName?J(x.secondaryName.value):null}}get arguments(){let{rhsIsList:d,list:x}=this.params;return!x||d?[]:x}*validate(d){let{name:x}=this;if(x==="LegacyNoInterfaceObject")yield s(this.tokens.name,this,"no-nointerfaceobject","`[LegacyNoInterfaceObject]` extended attribute is an undesirable feature that may be removed from Web IDL in the future. Refer to the [relevant upstream PR](https://github.com/whatwg/webidl/pull/609) for more information.",{level:"warning"});else if(m.has(x)){let j=`\`[${x}]\` extended attribute is a legacy feature that is now renamed to \`[${m.get(x)}]\`. Refer to the [relevant upstream PR](https://github.com/whatwg/webidl/pull/870) for more information.`;yield s(this.tokens.name,this,"renamed-legacy",j,{level:"warning",autofix:(v=this,()=>{let{name:C}=v;v.tokens.name.value=m.get(C),C==="TreatNullAs"&&(v.params.tokens={})})})}var v;for(let j of this.arguments)yield*j.validate(d)}write(d){return d.ts.wrap([d.ts.trivia(this.tokens.name.trivia),d.ts.extendedAttribute(d.ts.wrap([d.ts.extendedAttributeReference(this.name),this.params.write(d)])),d.token(this.tokens.separator)])}}class w extends l{static parse(d){let x={};x.open=d.consume("[");let v=new w({source:d.source,tokens:x});return x.open?(v.push(...F(d,{parser:y.parse,listName:"extended attribute"})),x.close=d.consume("]")||d.error("Expected a closing token for the extended attribute list"),v.length||(d.unconsume(x.close.index),d.error("An extended attribute list must not be empty")),d.probe("[")&&d.error("Illegal double extended attribute lists, consider merging them"),v):v}*validate(d){for(let x of this)yield*x.validate(d)}write(d){return this.length?d.ts.wrap([d.token(this.tokens.open),...this.map((x)=>x.write(d)),d.token(this.tokens.close)]):""}}function P(d,x){let v=d.consume("?");v&&(x.tokens.nullable=v),d.probe("?")&&d.error("Can't nullable more than once")}function S(d,x){let v=function(j,C){let G=j.consume("FrozenArray","ObservableArray","Promise","async_sequence","sequence","record");if(!G)return;let ee=W(new E({source:j.source,tokens:{base:G}}));switch(ee.tokens.open=j.consume("<")||j.error(`No opening bracket after ${G.value}`),G.value){case"Promise":{j.probe("[")&&j.error("Promise type cannot have extended attribute");let ge=ue(j,C)||j.error("Missing Promise subtype");ee.subtype.push(ge);break}case"async_sequence":case"sequence":case"FrozenArray":case"ObservableArray":{let ge=se(j,C)||j.error(`Missing ${G.value} subtype`);ee.subtype.push(ge);break}case"record":{j.probe("[")&&j.error("Record key cannot have extended attribute");let ge=j.consume(...xt)||j.error(`Record key must be one of: ${xt.join(", ")}`),pe=new E({source:j.source,tokens:{base:ge}});pe.tokens.separator=j.consume(",")||j.error("Missing comma after record key type"),pe.type=C;let xe=se(j,C)||j.error("Error parsing generic type record");ee.subtype.push(pe,xe);break}}return ee.idlType||j.error(`Error parsing generic type ${G.value}`),ee.tokens.close=j.consume(">")||j.error(`Missing closing bracket after ${G.value}`),ee.this}(d,x)||me(d);if(!v){let j=d.consumeKind("identifier")||d.consume(...xt,...de);if(!j)return;v=new E({source:d.source,tokens:{base:j}}),d.probe("<")&&d.error(`Unsupported generic type ${j.value}`)}return v.generic==="Promise"&&d.probe("?")&&d.error("Promise type cannot be nullable"),v.type=x||null,P(d,v),v.nullable&&v.idlType==="any"&&d.error("Type `any` cannot be made nullable"),v}class E extends i{static parse(d,x){return S(d,x)||function(v,j){let C={};if(C.open=v.consume("("),!C.open)return;let G=W(new E({source:v.source,tokens:C}));for(G.type=j||null;;){let ee=se(v,j)||v.error("No type after open parenthesis or 'or' in union type");ee.idlType==="any"&&v.error("Type `any` cannot be included in a union type"),ee.generic==="Promise"&&v.error("Type `Promise` cannot be included in a union type"),G.subtype.push(ee);let ge=v.consume("or");if(!ge)break;ee.tokens.separator=ge}return G.idlType.length<2&&v.error("At least two types are expected in a union type but found less"),C.close=v.consume(")")||v.error("Unterminated union type"),P(v,G),G.this}(d,x)}constructor({source:d,tokens:x}){super({source:d,tokens:x}),Object.defineProperty(this,"subtype",{value:[],writable:!0}),this.extAttrs=new w({source:d,tokens:{}})}get generic(){return this.subtype.length&&this.tokens.base?this.tokens.base.value:""}get nullable(){return Boolean(this.tokens.nullable)}get union(){return Boolean(this.subtype.length)&&!this.tokens.base}get idlType(){if(this.subtype.length)return this.subtype;return J([this.tokens.prefix,this.tokens.base,this.tokens.postfix].filter((d)=>d).map((d)=>d.value).join(" "))}*validate(d){if(yield*this.extAttrs.validate(d),this.idlType==="BufferSource")for(let C of[this.extAttrs,this.parent?.extAttrs])for(let G of C){if(G.name!=="AllowShared")continue;let ee="`[AllowShared] BufferSource` is now replaced with AllowSharedBufferSource.";yield s(this.tokens.base,this,"migrate-allowshared",ee,{autofix:k(this,G,C)})}if(this.idlType==="void")yield s(this.tokens.base,this,"replace-void","`void` is now replaced by `undefined`. Refer to the [relevant GitHub issue](https://github.com/whatwg/webidl/issues/60) for more information.",{autofix:(x=this,()=>{x.tokens.base.value="undefined"})});var x;let v=!this.union&&d.unique.get(this.idlType),j=this.union?this:v&&v.type==="typedef"?v.idlType:void 0;if(j&&this.nullable){let{reference:C}=o(j,d)||{};if(C){let G=(this.union?C:this).tokens.base;yield s(G,this,"no-nullable-union-dict","Nullable union cannot include a dictionary type.")}}else for(let C of this.subtype)yield*C.validate(d)}write(d){return d.ts.wrap([this.extAttrs.write(d),(()=>{if(this.union||this.generic)return d.ts.wrap([d.token(this.tokens.base,d.ts.generic),d.token(this.tokens.open),...this.subtype.map((C)=>C.write(d)),d.token(this.tokens.close)]);let x=this.tokens.prefix||this.tokens.base,v=this.tokens.prefix?[this.tokens.prefix.value,d.ts.trivia(this.tokens.base.trivia)]:[],j=d.reference(d.ts.wrap([...v,this.tokens.base.value,d.token(this.tokens.postfix)]),{unescaped:this.idlType,context:this});return d.ts.wrap([d.ts.trivia(x.trivia),j])})(),d.token(this.tokens.nullable),d.token(this.tokens.separator)])}}function k(d,x,v){return()=>{let j=v.indexOf(x);v.splice(j,1),!v.length&&d.tokens.base.trivia.match(/^\s$/)&&(d.tokens.base.trivia=""),d.tokens.base.value="AllowSharedBufferSource"}}class A extends i{static parse(d){let x=d.consume("=");if(!x)return null;let v=K(d)||d.consumeKind("string")||d.consume("null","[","{")||d.error("No value for default"),j=[v];if(v.value==="["){let C=d.consume("]")||d.error("Default sequence value must be empty");j.push(C)}else if(v.value==="{"){let C=d.consume("}")||d.error("Default dictionary value must be empty");j.push(C)}return new A({source:d.source,tokens:{assign:x},expression:j})}constructor({source:d,tokens:x,expression:v}){super({source:d,tokens:x}),v.parent=this,Object.defineProperty(this,"expression",{value:v})}get type(){return ae(this.expression[0]).type}get value(){return ae(this.expression[0]).value}get negative(){return ae(this.expression[0]).negative}write(d){return d.ts.wrap([d.token(this.tokens.assign),...this.expression.map((x)=>d.token(x))])}}class R extends i{static parse(d){let x=d.position,v={},j=W(new R({source:d.source,tokens:v}));return j.extAttrs=w.parse(d),v.optional=d.consume("optional"),j.idlType=se(d,"argument-type"),j.idlType?(v.optional||(v.variadic=d.consume("...")),v.name=d.consumeKind("identifier")||d.consume(...X),v.name?(j.default=v.optional?A.parse(d):null,j.this):d.unconsume(x)):d.unconsume(x)}get type(){return"argument"}get optional(){return!!this.tokens.optional}get variadic(){return!!this.tokens.variadic}get name(){return J(this.tokens.name.value)}*validate(d){yield*this.extAttrs.validate(d),yield*this.idlType.validate(d);let x=o(this.idlType,d,{useNullableInner:!0});if(x){if(this.idlType.nullable)yield s(this.tokens.name,this,"no-nullable-dict-arg","Dictionary arguments cannot be nullable.");else if(this.optional){if(!this.default)yield s(this.tokens.name,this,"dict-arg-default","Optional dictionary arguments must have a default value of `{}`.",{autofix:_(this)})}else if(this.parent&&!a(x.dictionary,d)&&function(j){let C=j.parent.arguments||j.parent.list,G=C.indexOf(j);return!C.slice(G+1).some((ge)=>!ge.optional)}(this))yield s(this.tokens.name,this,"dict-arg-optional","Dictionary argument must be optional if it has no required fields",{autofix:(v=this,()=>{let C=oe(v.idlType);v.tokens.optional={...C,type:"optional",value:"optional"},C.trivia=" ",_(v)()})})}var v}write(d){return d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.optional),d.ts.type(this.idlType.write(d)),d.token(this.tokens.variadic),d.name_token(this.tokens.name,{data:this}),this.default?this.default.write(d):"",d.token(this.tokens.separator)])}}function _(d){return()=>{d.default=A.parse(new $t(" = {}"))}}class I extends i{static parse(d,{special:x,regular:v}={}){let j={special:x},C=W(new I({source:d.source,tokens:j}));return x&&x.value==="stringifier"&&(j.termination=d.consume(";"),j.termination)?(C.arguments=[],C):(x||v||(j.special=d.consume("getter","setter","deleter")),C.idlType=ue(d)||d.error("Missing return type"),j.name=d.consumeKind("identifier")||d.consume("includes"),j.open=d.consume("(")||d.error("Invalid operation"),C.arguments=ce(d),j.close=d.consume(")")||d.error("Unterminated operation"),j.termination=d.consume(";")||d.error("Unterminated operation, expected `;`"),C.this)}get type(){return"operation"}get name(){let{name:d}=this.tokens;return d?J(d.value):""}get special(){return this.tokens.special?this.tokens.special.value:""}*validate(d){if(yield*this.extAttrs.validate(d),!this.name&&["","static"].includes(this.special))yield s(this.tokens.open,this,"incomplete-op","Regular or static operations must have both a return type and an identifier.");if(this.idlType){if(this.idlType.generic==="async_sequence")yield s(this.idlType.tokens.base,this,"async-sequence-idl-to-js","async_sequence types cannot be returned by an operation.");yield*this.idlType.validate(d)}for(let x of this.arguments)yield*x.validate(d)}write(d){let{parent:x}=this,v=this.idlType?[d.ts.type(this.idlType.write(d)),d.name_token(this.tokens.name,{data:this,parent:x}),d.token(this.tokens.open),d.ts.wrap(this.arguments.map((j)=>j.write(d))),d.token(this.tokens.close)]:[];return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),this.tokens.name?d.token(this.tokens.special):d.token(this.tokens.special,d.ts.nameless,{data:this,parent:x}),...v,d.token(this.tokens.termination)]),{data:this,parent:x})}}class L extends i{static parse(d,{special:x,noInherit:v=!1,readonly:j=!1}={}){let C=d.position,G={special:x},ee=W(new L({source:d.source,tokens:G}));if(x||v||(G.special=d.consume("inherit")),ee.special==="inherit"&&d.probe("readonly")&&d.error("Inherited attributes cannot be read-only"),G.readonly=d.consume("readonly"),j&&!G.readonly&&d.probe("attribute")&&d.error("Attributes must be readonly in this context"),G.base=d.consume("attribute"),G.base)return ee.idlType=se(d,"attribute-type")||d.error("Attribute lacks a type"),G.name=d.consumeKind("identifier")||d.consume("async","required")||d.error("Attribute lacks a name"),G.termination=d.consume(";")||d.error("Unterminated attribute, expected `;`"),ee.this;d.unconsume(C)}get type(){return"attribute"}get special(){return this.tokens.special?this.tokens.special.value:""}get readonly(){return!!this.tokens.readonly}get name(){return J(this.tokens.name.value)}*validate(d){if(yield*this.extAttrs.validate(d),yield*this.idlType.validate(d),["async_sequence","sequence","record"].includes(this.idlType.generic)){let x=`Attributes cannot accept ${this.idlType.generic} types.`;yield s(this.tokens.name,this,"attr-invalid-type",x)}{let{reference:x}=o(this.idlType,d)||{};if(x){let v=(this.idlType.union?x:this.idlType).tokens.base;yield s(v,this,"attr-invalid-type","Attributes cannot accept dictionary types.")}}if(this.readonly&&function(x,v){if(x.union)return!1;if(x.extAttrs.some((C)=>C.name==="EnforceRange"))return!0;let j=v.unique.get(x.idlType);return j?.type==="typedef"&&j.idlType.extAttrs.some((C)=>C.name==="EnforceRange")}(this.idlType,d)){let x=this.idlType.tokens.base;yield s(x,this,"attr-invalid-type","Readonly attributes cannot accept [EnforceRange] extended attribute.")}}write(d){let{parent:x}=this;return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.special),d.token(this.tokens.readonly),d.token(this.tokens.base),d.ts.type(this.idlType.write(d)),d.name_token(this.tokens.name,{data:this,parent:x}),d.token(this.tokens.termination)]),{data:this,parent:x})}}function J(d){return d.startsWith("_")?d.slice(1):d}function F(d,{parser:x,allowDangler:v,listName:j="list"}){let C=x(d);if(!C)return[];C.tokens.separator=d.consume(",");let G=[C];for(;C.tokens.separator;){let ee=x(d);if(!ee){v||d.error(`Trailing comma in ${j}`);break}if(ee.tokens.separator=d.consume(","),G.push(ee),!ee.tokens.separator)break}return G}function K(d){return d.consumeKind("decimal","integer")||d.consume("true","false","Infinity","-Infinity","NaN")}function ae({type:d,value:x}){switch(d){case"decimal":case"integer":return{type:"number",value:x};case"string":return{type:"string",value:x.slice(1,-1)}}switch(x){case"true":case"false":return{type:"boolean",value:x==="true"};case"Infinity":case"-Infinity":return{type:"Infinity",negative:x.startsWith("-")};case"[":return{type:"sequence",value:[]};case"{":return{type:"dictionary"};default:return{type:x}}}function me(d){let{source:x}=d,v=function(){let C=d.consume("unsigned"),G=d.consume("short","long");if(G){let ee=d.consume("long");return new E({source:x,tokens:{prefix:C,base:G,postfix:ee}})}C&&d.error("Failed to parse integer type")}()||function(){let C=d.consume("unrestricted"),G=d.consume("float","double");if(G)return new E({source:x,tokens:{prefix:C,base:G}});C&&d.error("Failed to parse float type")}();if(v)return v;let j=d.consume("bigint","boolean","byte","octet","undefined");return j?new E({source:x,tokens:{base:j}}):void 0}function ce(d){return F(d,{parser:R.parse,listName:"arguments list"})}function se(d,x){let v=w.parse(d),j=E.parse(d,x);return j&&(W(j).extAttrs=v),j}function ue(d,x){let v=E.parse(d,x||"return-type");if(v)return v;let j=d.consume("void");if(j){let C=new E({source:d.source,tokens:{base:j}});return C.type="return-type",C}}function Ce(d){let x=d.consume("stringifier");if(!x)return;return L.parse(d,{special:x})||I.parse(d,{special:x})||d.error("Unterminated stringifier")}function Y(d){let x=d.split(`
|
|
602
|
-
`);if(x.length){let v=x[x.length-1].match(/^\s+/);if(v)return v[0]}return""}function Ee(d){return()=>{if(d.extAttrs.length){let x=new
|
|
603
|
-
${Y(x)}`}}}function oe(d){if(d.extAttrs.length)return d.extAttrs.tokens.open;if(d.type==="operation"&&!d.special)return oe(d.idlType);return Object.values(d.tokens).sort((x,v)=>x.index-v.index)[0]}function W(d,x){if(x||(x=d),!d)return d;return new Proxy(d,{get(v,j){let C=v[j];return Array.isArray(C)&&j!=="source"?W(C,v):C},set(v,j,C){if(v[j]=C,!C)return!0;if(Array.isArray(C))for(let G of C)G.parent!==void 0&&(G.parent=x);else C.parent!==void 0&&(C.parent=x);return!0}})}let ot={decimal:/-?(?=[0-9]*\.|[0-9]+[eE])(([0-9]+\.[0-9]*|[0-9]*\.[0-9]+)([Ee][-+]?[0-9]+)?|[0-9]+[Ee][-+]?[0-9]+)/y,integer:/-?(0([Xx][0-9A-Fa-f]+|[0-7]*)|[1-9][0-9]*)/y,identifier:/[_-]?[A-Za-z][0-9A-Z_a-z-]*/y,string:/"[^"]*"/y,whitespace:/[\t\n\r ]+/y,comment:/\/\/.*|\/\*[\s\S]*?\*\//y,other:/[^\t\n\r 0-9A-Za-z]/y},de=["ArrayBuffer","SharedArrayBuffer","DataView","Int8Array","Int16Array","Int32Array","Uint8Array","Uint16Array","Uint32Array","Uint8ClampedArray","BigInt64Array","BigUint64Array","Float16Array","Float32Array","Float64Array","any","object","symbol"],xt=["ByteString","DOMString","USVString"],X=["async","attribute","callback","const","constructor","deleter","dictionary","enum","getter","includes","inherit","interface","iterable","maplike","namespace","partial","required","setlike","setter","static","stringifier","typedef","unrestricted"],Pt=["-Infinity","FrozenArray","Infinity","NaN","ObservableArray","Promise","async_iterable","async_sequence","bigint","boolean","byte","double","false","float","long","mixin","null","octet","optional","or","readonly","record","sequence","short","true","undefined","unsigned","void"].concat(X,xt,de),et=["(",")",",","...",":",";","<","=",">","?","*","[","]","{","}"],Ut=["_constructor","toString","_toString"];class $t{constructor(d){this.source=function(x){let v=[],j=0,C="",G=1,ee=0;for(;j<x.length;){let pe=x.charAt(j),xe=-1;if(/[\t\n\r ]/.test(pe)?xe=ge("whitespace",{noFlushTrivia:!0}):pe==="/"&&(xe=ge("comment",{noFlushTrivia:!0})),xe!==-1){let Te=v.pop().value;G+=(Te.match(/\n/g)||[]).length,C+=Te,ee-=1}else if(/[-0-9.A-Z_a-z]/.test(pe)){if(xe=ge("decimal"),xe===-1&&(xe=ge("integer")),xe===-1){xe=ge("identifier");let Te=v.length-1,Le=v[Te];if(xe!==-1){if(Ut.includes(Le.value)){let sr=`${J(Le.value)} is a reserved identifier and must not be used.`;throw new Ot(n(v,Te,null,sr))}Pt.includes(Le.value)&&(Le.type="inline")}}}else pe==='"'&&(xe=ge("string"));for(let Te of et)if(x.startsWith(Te,j)){v.push({type:"inline",value:Te,trivia:C,line:G,index:ee}),C="",j+=Te.length,xe=j;break}if(xe===-1&&(xe=ge("other")),xe===-1)throw Error("Token stream not progressing");j=xe,ee+=1}return v.push({type:"eof",value:"",trivia:C,line:G,index:ee}),v;function ge(pe,{noFlushTrivia:xe}={}){let Te=ot[pe];Te.lastIndex=j;let Le=Te.exec(x);return Le?(v.push({type:pe,value:Le[0],trivia:C,line:G,index:ee}),xe||(C=""),Te.lastIndex):-1}}(d),this.position=0}error(d){throw new Ot(n(this.source,this.position,this.current,d))}probeKind(d){return this.source.length>this.position&&this.source[this.position].type===d}probe(d){return this.probeKind("inline")&&this.source[this.position].value===d}consumeKind(...d){for(let x of d){if(!this.probeKind(x))continue;let v=this.source[this.position];return this.position++,v}}consume(...d){if(!this.probeKind("inline"))return;let x=this.source[this.position];for(let v of d)if(x.value===v)return this.position++,x}consumeIdentifier(d){if(this.probeKind("identifier")&&this.source[this.position].value===d)return this.consumeKind("identifier")}unconsume(d){this.position=d}}class Ot extends Error{constructor({message:d,bareMessage:x,context:v,line:j,sourceName:C,input:G,tokens:ee}){super(d),this.name="WebIDLParseError",this.bareMessage=x,this.context=v,this.line=j,this.sourceName=C,this.input=G,this.tokens=ee}}class zt extends c{static parse(d){let x=d.consumeKind("string");if(x)return new zt({source:d.source,tokens:{value:x}})}get type(){return"enum-value"}get value(){return super.value.slice(1,-1)}write(d){let{parent:x}=this;return d.ts.wrap([d.ts.trivia(this.tokens.value.trivia),d.ts.definition(d.ts.wrap(['"',d.ts.name(this.value,{data:this,parent:x}),'"']),{data:this,parent:x}),d.token(this.tokens.separator)])}}class qt extends i{static parse(d){let x={};if(x.base=d.consume("enum"),!x.base)return;x.name=d.consumeKind("identifier")||d.error("No name for enum");let v=W(new qt({source:d.source,tokens:x}));return d.current=v.this,x.open=d.consume("{")||d.error("Bodyless enum"),v.values=F(d,{parser:zt.parse,allowDangler:!0,listName:"enumeration"}),d.probeKind("string")&&d.error("No comma between enum values"),x.close=d.consume("}")||d.error("Unexpected value in enum"),v.values.length||d.error("No value in enum"),x.termination=d.consume(";")||d.error("No semicolon after enum"),v.this}get type(){return"enum"}get name(){return J(this.tokens.name.value)}write(d){return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.base),d.name_token(this.tokens.name,{data:this}),d.token(this.tokens.open),d.ts.wrap(this.values.map((x)=>x.write(d))),d.token(this.tokens.close),d.token(this.tokens.termination)]),{data:this})}}class es extends i{static parse(d){let x=d.consumeKind("identifier");if(!x)return;let v={target:x};if(v.includes=d.consume("includes"),v.includes)return v.mixin=d.consumeKind("identifier")||d.error("Incomplete includes statement"),v.termination=d.consume(";")||d.error("No terminating ; for includes statement"),new es({source:d.source,tokens:v});d.unconsume(x.index)}get type(){return"includes"}get target(){return J(this.tokens.target.value)}get includes(){return J(this.tokens.mixin.value)}write(d){return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.reference_token(this.tokens.target,this),d.token(this.tokens.includes),d.reference_token(this.tokens.mixin,this),d.token(this.tokens.termination)]),{data:this})}}class ts extends i{static parse(d){let x={},v=W(new ts({source:d.source,tokens:x}));if(x.base=d.consume("typedef"),x.base)return v.idlType=se(d,"typedef-type")||d.error("Typedef lacks a type"),x.name=d.consumeKind("identifier")||d.error("Typedef lacks a name"),d.current=v.this,x.termination=d.consume(";")||d.error("Unterminated typedef, expected `;`"),v.this}get type(){return"typedef"}get name(){return J(this.tokens.name.value)}*validate(d){yield*this.idlType.validate(d)}write(d){return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.base),d.ts.type(this.idlType.write(d)),d.name_token(this.tokens.name,{data:this}),d.token(this.tokens.termination)]),{data:this})}}class mo extends i{static parse(d,x){let v={base:x},j=W(new mo({source:d.source,tokens:v}));return v.name=d.consumeKind("identifier")||d.error("Callback lacks a name"),d.current=j.this,v.assign=d.consume("=")||d.error("Callback lacks an assignment"),j.idlType=ue(d)||d.error("Callback lacks a return type"),v.open=d.consume("(")||d.error("Callback lacks parentheses for arguments"),j.arguments=ce(d),v.close=d.consume(")")||d.error("Unterminated callback"),v.termination=d.consume(";")||d.error("Unterminated callback, expected `;`"),j.this}get type(){return"callback"}get name(){return J(this.tokens.name.value)}*validate(d){yield*this.extAttrs.validate(d);for(let x of this.arguments)if(yield*x.validate(d),x.idlType.generic==="async_sequence")yield s(x.tokens.name,x,"async-sequence-idl-to-js","async_sequence types cannot be returned as a callback argument.");yield*this.idlType.validate(d)}write(d){return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.base),d.name_token(this.tokens.name,{data:this}),d.token(this.tokens.assign),d.ts.type(this.idlType.write(d)),d.token(this.tokens.open),...this.arguments.map((x)=>x.write(d)),d.token(this.tokens.close),d.token(this.tokens.termination)]),{data:this})}}class Nr extends i{static parse(d,x,{inheritable:v,allowedMembers:j}){let{tokens:C,type:G}=x;for(C.name=d.consumeKind("identifier")||d.error(`Missing name in ${G}`),d.current=x,x=W(x),v&&Object.assign(C,function(ee){let ge=ee.consume(":");return ge?{colon:ge,inheritance:ee.consumeKind("identifier")||ee.error("Inheritance lacks a type")}:{}}(d)),C.open=d.consume("{")||d.error(`Bodyless ${G}`),x.members=[];;){if(C.close=d.consume("}"),C.close)return C.termination=d.consume(";")||d.error(`Missing semicolon after ${G}`),x.this;let ee=w.parse(d),ge;for(let[pe,...xe]of j)if(ge=W(pe(d,...xe)),ge)break;ge||d.error("Unknown member"),ge.extAttrs=ee,x.members.push(ge.this)}}get partial(){return!!this.tokens.partial}get name(){return J(this.tokens.name.value)}get inheritance(){return this.tokens.inheritance?J(this.tokens.inheritance.value):null}*validate(d){for(let x of this.members)x.validate&&(yield*x.validate(d))}write(d){return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.callback),d.token(this.tokens.partial),d.token(this.tokens.base),d.token(this.tokens.mixin),d.name_token(this.tokens.name,{data:this}),(()=>this.tokens.inheritance?d.ts.wrap([d.token(this.tokens.colon),d.ts.trivia(this.tokens.inheritance.trivia),d.ts.inheritance(d.reference(this.tokens.inheritance.value,{context:this}))]):"")(),d.token(this.tokens.open),d.ts.wrap(this.members.map((x)=>x.write(d))),d.token(this.tokens.close),d.token(this.tokens.termination)]),{data:this})}}class rs extends i{static parse(d){let x={};if(x.base=d.consume("const"),!x.base)return;let v=me(d);if(!v){let C=d.consumeKind("identifier")||d.error("Const lacks a type");v=new E({source:d.source,tokens:{base:C}})}d.probe("?")&&d.error("Unexpected nullable constant type"),v.type="const-type",x.name=d.consumeKind("identifier")||d.error("Const lacks a name"),x.assign=d.consume("=")||d.error("Const lacks value assignment"),x.value=K(d)||d.error("Const lacks a value"),x.termination=d.consume(";")||d.error("Unterminated const, expected `;`");let j=new rs({source:d.source,tokens:x});return W(j).idlType=v,j}get type(){return"const"}get name(){return J(this.tokens.name.value)}get value(){return ae(this.tokens.value)}write(d){let{parent:x}=this;return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.base),d.ts.type(this.idlType.write(d)),d.name_token(this.tokens.name,{data:this,parent:x}),d.token(this.tokens.assign),d.token(this.tokens.value),d.token(this.tokens.termination)]),{data:this,parent:x})}}class ho extends i{static parse(d){let x=d.position,v=W(new ho({source:d.source,tokens:{}})),{tokens:j}=v;if(j.readonly=d.consume("readonly"),j.readonly||(j.async=d.consume("async")),j.base=j.readonly?d.consume("maplike","setlike"):j.async?d.consume("iterable"):d.consume("iterable","async_iterable","maplike","setlike"),!j.base)return void d.unconsume(x);let{type:C}=v,G=C==="maplike",ee=G||C==="iterable"||C==="async_iterable",ge=C==="async_iterable"||v.async&&C==="iterable";j.open=d.consume("<")||d.error(`Missing less-than sign \`<\` in ${C} declaration`);let pe=se(d)||d.error(`Missing a type argument in ${C} declaration`);return v.idlType=[pe],v.arguments=[],ee&&(pe.tokens.separator=d.consume(","),pe.tokens.separator?v.idlType.push(se(d)):G&&d.error(`Missing second type argument in ${C} declaration`)),j.close=d.consume(">")||d.error(`Missing greater-than sign \`>\` in ${C} declaration`),d.probe("(")&&(ge?(j.argsOpen=d.consume("("),v.arguments.push(...ce(d)),j.argsClose=d.consume(")")||d.error("Unterminated async iterable argument list")):d.error("Arguments are only allowed for `async iterable`")),j.termination=d.consume(";")||d.error(`Missing semicolon after ${C} declaration`),v.this}get type(){return this.tokens.base.value}get readonly(){return!!this.tokens.readonly}get async(){return!!this.tokens.async}*validate(d){if(this.async&&this.type==="iterable")yield s(this.tokens.async,this,"obsolete-async-iterable-syntax","`async iterable` is now changed to `async_iterable`.",{autofix:(x=this,()=>{let j=x.tokens.async;x.tokens.base={...j,type:"async_iterable",value:"async_iterable"},delete x.tokens.async})});var x;for(let v of this.idlType)yield*v.validate(d);for(let v of this.arguments)yield*v.validate(d)}write(d){return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.readonly),d.token(this.tokens.async),d.token(this.tokens.base,d.ts.generic),d.token(this.tokens.open),d.ts.wrap(this.idlType.map((x)=>x.write(d))),d.token(this.tokens.close),d.token(this.tokens.argsOpen),d.ts.wrap(this.arguments.map((x)=>x.write(d))),d.token(this.tokens.argsClose),d.token(this.tokens.termination)]),{data:this,parent:this.parent})}}class go extends i{static parse(d){let x=d.consume("constructor");if(!x)return;let v={base:x};v.open=d.consume("(")||d.error("No argument list in constructor");let j=ce(d);v.close=d.consume(")")||d.error("Unterminated constructor"),v.termination=d.consume(";")||d.error("No semicolon after constructor");let C=new go({source:d.source,tokens:v});return W(C).arguments=j,C}get type(){return"constructor"}*validate(d){for(let x of this.arguments)yield*x.validate(d)}write(d){let{parent:x}=this;return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.base,d.ts.nameless,{data:this,parent:x}),d.token(this.tokens.open),d.ts.wrap(this.arguments.map((v)=>v.write(d))),d.token(this.tokens.close),d.token(this.tokens.termination)]),{data:this,parent:x})}}function _d(d){let x=d.consume("static");if(!x)return;return L.parse(d,{special:x})||I.parse(d,{special:x})||d.error("No body in static member")}class ns extends Nr{static parse(d,x,{extMembers:v=[],partial:j=null}={}){let C={partial:j,base:x};return Nr.parse(d,new ns({source:d.source,tokens:C}),{inheritable:!j,allowedMembers:[...v,[rs.parse],[go.parse],[_d],[Ce],[ho.parse],[L.parse],[I.parse]]})}get type(){return"interface"}*validate(d){if(yield*this.extAttrs.validate(d),!this.partial&&this.extAttrs.every((v)=>v.name!=="Exposed"))yield s(this.tokens.name,this,"require-exposed","Interfaces must have `[Exposed]` extended attribute. To fix, add, for example, `[Exposed=Window]`. Please also consider carefully if your interface should also be exposed in a Worker scope. Refer to the [WebIDL spec section on Exposed](https://heycam.github.io/webidl/#Exposed) for more information.",{autofix:Ee(this)});let x=this.extAttrs.filter((v)=>v.name==="Constructor");for(let v of x)yield s(v.tokens.name,this,"constructor-member","Constructors should now be represented as a `constructor()` operation on the interface instead of `[Constructor]` extended attribute. Refer to the [WebIDL spec section on constructor operations](https://heycam.github.io/webidl/#idl-constructors) for more information.",{autofix:dc(this,v)});if(this.extAttrs.some((v)=>v.name==="Global")){let v=this.extAttrs.filter((C)=>C.name==="LegacyFactoryFunction");for(let C of v)yield s(C.tokens.name,this,"no-constructible-global","Interfaces marked as `[Global]` cannot have factory functions.");let j=this.members.filter((C)=>C.type==="constructor");for(let C of j)yield s(C.tokens.base,this,"no-constructible-global","Interfaces marked as `[Global]` cannot have constructors.")}yield*super.validate(d),this.partial||(yield*function*(v,j){let C=function(xe){let Te=pe(xe);return{statics:new Set(Te.filter((Le)=>Le.special==="static").map((Le)=>Le.name)),nonstatics:new Set(Te.filter((Le)=>Le.special!=="static").map((Le)=>Le.name))}}(j),G=v.partials.get(j.name)||[],ee=v.mixinMap.get(j.name)||[];for(let xe of[...G,...ee]){let Te=pe(xe),Le=Te.filter((hr)=>hr.special==="static"),sr=Te.filter((hr)=>hr.special!=="static");yield*ge(Le,C.statics,xe,j),yield*ge(sr,C.nonstatics,xe,j),Le.forEach((hr)=>C.statics.add(hr.name)),sr.forEach((hr)=>C.nonstatics.add(hr.name))}function*ge(xe,Te,Le,sr){for(let hr of xe){let{name:Va}=hr;if(Va&&Te.has(Va)){let Ad=`The ${hr.special==="static"?"static ":""}operation "${Va}" has already been defined for the base interface "${sr.name}" either in itself or in a mixin`;yield s(hr.tokens.name,Le,"no-cross-overload",Ad)}}}function pe(xe){return xe.members.filter(({type:Te})=>Te==="operation")}}(d,this))}}function dc(d,x){return d=W(d),()=>{let v=Y(d.extAttrs.tokens.open.trivia),j=d.members.length?Y(oe(d.members[0]).trivia):function(Te){let Le=Y(Te),sr=Le.includes("\t")?"\t":" ";return Le+sr}(v),C=go.parse(new $t(`
|
|
604
|
-
${
|
|
600
|
+
`+(" ".repeat(qe.length)+"^"),Md=N==="Syntax"?"since":"inside",ky=`${N} error at line ${Te}${d.name?` in ${d.name}`:""}${v&&v.name?`, ${Md} \`${v.partial?"partial ":""}${function(Jr){let _i=[Jr];for(;Jr&&Jr.parent;){let{parent:is}=Jr;_i.unshift(is),Jr=is}return _i.map((is)=>function(Ga,Ka){let _y=Ga;return Ka&&(_y+=` ${Ka}`),_y}(is.type,is.name)).join(" -> ")}(v)}\``:""}:
|
|
601
|
+
${za}`;return{message:`${ky} ${P}`,bareMessage:P,context:ky,line:Te,sourceName:d.name,level:G,ruleName:ge,autofix:ee,input:yr,tokens:cr}}function n(d,x,v,P){return r(d,x,v,P,"Syntax")}function s(d,x,v,P,N={}){return N.ruleName=v,r(x.source,d.index,x,P,"Validation",N)}e.r(t),e.d(t,{WebIDLParseError:()=>Ot,parse:()=>Ce,validate:()=>Nt,write:()=>ve});class i{constructor({source:d,tokens:x}){Object.defineProperties(this,{source:{value:d},tokens:{value:x,writable:!0},parent:{value:null,writable:!0},this:{value:this}})}toJSON(){let d={type:void 0,name:void 0,inheritance:void 0},x=this;for(;x!==Object.prototype;){let v=Object.getOwnPropertyDescriptors(x);for(let[P,N]of Object.entries(v))(N.enumerable||N.get)&&(d[P]=this[P]);x=Object.getPrototypeOf(x)}return d}}function o(d,x,{useNullableInner:v}={}){if(!d.union){let P=x.unique.get(d.idlType);if(!P)return;if(P.type==="typedef"){let{typedefIncludesDictionary:N}=x.cache;if(N.has(P))return N.get(P);x.cache.typedefIncludesDictionary.set(P,void 0);let G=o(P.idlType,x);if(x.cache.typedefIncludesDictionary.set(P,G),G)return{reference:d,dictionary:G.dictionary}}if(P.type==="dictionary"&&(v||!d.nullable))return{reference:d,dictionary:P}}for(let P of d.subtype){let N=o(P,x);if(N)return P.union?N:{reference:P,dictionary:N.dictionary}}}function a(d,x){if(x.cache.dictionaryIncludesRequiredField.has(d))return x.cache.dictionaryIncludesRequiredField.get(d);x.cache.dictionaryIncludesRequiredField.set(d,void 0);let v=d.members.some((P)=>P.required);if(!v&&d.inheritance){let P=x.unique.get(d.inheritance);P?a(P,x)&&(v=!0):v=!0}return x.cache.dictionaryIncludesRequiredField.set(d,v),v}class l extends Array{constructor({source:d,tokens:x}){super(),Object.defineProperties(this,{source:{value:d},tokens:{value:x},parent:{value:null,writable:!0}})}}class c extends i{static parser(d,x){return()=>{let v=d.consumeKind(x);if(v)return new c({source:d.source,tokens:{value:v}})}}get value(){return J(this.tokens.value.value)}write(d){return d.ts.wrap([d.token(this.tokens.value),d.token(this.tokens.separator)])}}class u extends c{static parse(d){let x=d.consumeKind("eof");if(x)return new u({source:d.source,tokens:{value:x}})}get type(){return"eof"}}function p(d,x){return F(d,{parser:c.parser(d,x),listName:x+" list"})}let h=["identifier","decimal","integer","string"],m=new Map([...["NoInterfaceObject","LenientSetter","LenientThis","TreatNonObjectAsNull","Unforgeable"].map((d)=>[d,`Legacy${d}`]),["NamedConstructor","LegacyFactoryFunction"],["OverrideBuiltins","LegacyOverrideBuiltIns"],["TreatNullAs","LegacyNullToEmptyString"]]);function b(d){for(let x of h){let v=p(d,x);if(v.length)return v}d.error("Expected identifiers, strings, decimals, or integers but none found")}class g extends i{static parse(d){let x={assign:d.consume("=")},v=H(new g({source:d.source,tokens:x}));if(v.list=[],x.assign){if(x.asterisk=d.consume("*"),x.asterisk)return v.this;x.secondaryName=d.consumeKind(...h)}return x.open=d.consume("("),x.open?(v.list=v.rhsIsList?b(d):ce(d),x.close=d.consume(")")||d.error("Unexpected token in extended attribute argument list")):x.assign&&!x.secondaryName&&d.error("No right hand side to extended attribute assignment"),v.this}get rhsIsList(){return this.tokens.assign&&!this.tokens.asterisk&&!this.tokens.secondaryName}get rhsType(){return this.rhsIsList?this.list[0].tokens.value.type+"-list":this.tokens.asterisk?"*":this.tokens.secondaryName?this.tokens.secondaryName.type:null}write(d){let{rhsType:x}=this;return d.ts.wrap([d.token(this.tokens.assign),d.token(this.tokens.asterisk),d.reference_token(this.tokens.secondaryName,this.parent),d.token(this.tokens.open),...this.list.map((v)=>x==="identifier-list"?d.identifier(v,this.parent):v.write(d)),d.token(this.tokens.close)])}}class y extends i{static parse(d){let x=d.consumeKind("identifier");if(x)return new y({source:d.source,tokens:{name:x},params:g.parse(d)})}constructor({source:d,tokens:x,params:v}){super({source:d,tokens:x}),v.parent=this,Object.defineProperty(this,"params",{value:v})}get type(){return"extended-attribute"}get name(){return this.tokens.name.value}get rhs(){let{rhsType:d,tokens:x,list:v}=this.params;if(!d)return null;return{type:d,value:this.params.rhsIsList?v:this.params.tokens.secondaryName?J(x.secondaryName.value):null}}get arguments(){let{rhsIsList:d,list:x}=this.params;return!x||d?[]:x}*validate(d){let{name:x}=this;if(x==="LegacyNoInterfaceObject")yield s(this.tokens.name,this,"no-nointerfaceobject","`[LegacyNoInterfaceObject]` extended attribute is an undesirable feature that may be removed from Web IDL in the future. Refer to the [relevant upstream PR](https://github.com/whatwg/webidl/pull/609) for more information.",{level:"warning"});else if(m.has(x)){let P=`\`[${x}]\` extended attribute is a legacy feature that is now renamed to \`[${m.get(x)}]\`. Refer to the [relevant upstream PR](https://github.com/whatwg/webidl/pull/870) for more information.`;yield s(this.tokens.name,this,"renamed-legacy",P,{level:"warning",autofix:(v=this,()=>{let{name:N}=v;v.tokens.name.value=m.get(N),N==="TreatNullAs"&&(v.params.tokens={})})})}var v;for(let P of this.arguments)yield*P.validate(d)}write(d){return d.ts.wrap([d.ts.trivia(this.tokens.name.trivia),d.ts.extendedAttribute(d.ts.wrap([d.ts.extendedAttributeReference(this.name),this.params.write(d)])),d.token(this.tokens.separator)])}}class w extends l{static parse(d){let x={};x.open=d.consume("[");let v=new w({source:d.source,tokens:x});return x.open?(v.push(...F(d,{parser:y.parse,listName:"extended attribute"})),x.close=d.consume("]")||d.error("Expected a closing token for the extended attribute list"),v.length||(d.unconsume(x.close.index),d.error("An extended attribute list must not be empty")),d.probe("[")&&d.error("Illegal double extended attribute lists, consider merging them"),v):v}*validate(d){for(let x of this)yield*x.validate(d)}write(d){return this.length?d.ts.wrap([d.token(this.tokens.open),...this.map((x)=>x.write(d)),d.token(this.tokens.close)]):""}}function j(d,x){let v=d.consume("?");v&&(x.tokens.nullable=v),d.probe("?")&&d.error("Can't nullable more than once")}function S(d,x){let v=function(P,N){let G=P.consume("FrozenArray","ObservableArray","Promise","async_sequence","sequence","record");if(!G)return;let ee=H(new E({source:P.source,tokens:{base:G}}));switch(ee.tokens.open=P.consume("<")||P.error(`No opening bracket after ${G.value}`),G.value){case"Promise":{P.probe("[")&&P.error("Promise type cannot have extended attribute");let ge=ue(P,N)||P.error("Missing Promise subtype");ee.subtype.push(ge);break}case"async_sequence":case"sequence":case"FrozenArray":case"ObservableArray":{let ge=se(P,N)||P.error(`Missing ${G.value} subtype`);ee.subtype.push(ge);break}case"record":{P.probe("[")&&P.error("Record key cannot have extended attribute");let ge=P.consume(...$t)||P.error(`Record key must be one of: ${$t.join(", ")}`),pe=new E({source:P.source,tokens:{base:ge}});pe.tokens.separator=P.consume(",")||P.error("Missing comma after record key type"),pe.type=N;let $e=se(P,N)||P.error("Error parsing generic type record");ee.subtype.push(pe,$e);break}}return ee.idlType||P.error(`Error parsing generic type ${G.value}`),ee.tokens.close=P.consume(">")||P.error(`Missing closing bracket after ${G.value}`),ee.this}(d,x)||me(d);if(!v){let P=d.consumeKind("identifier")||d.consume(...$t,...de);if(!P)return;v=new E({source:d.source,tokens:{base:P}}),d.probe("<")&&d.error(`Unsupported generic type ${P.value}`)}return v.generic==="Promise"&&d.probe("?")&&d.error("Promise type cannot be nullable"),v.type=x||null,j(d,v),v.nullable&&v.idlType==="any"&&d.error("Type `any` cannot be made nullable"),v}class E extends i{static parse(d,x){return S(d,x)||function(v,P){let N={};if(N.open=v.consume("("),!N.open)return;let G=H(new E({source:v.source,tokens:N}));for(G.type=P||null;;){let ee=se(v,P)||v.error("No type after open parenthesis or 'or' in union type");ee.idlType==="any"&&v.error("Type `any` cannot be included in a union type"),ee.generic==="Promise"&&v.error("Type `Promise` cannot be included in a union type"),G.subtype.push(ee);let ge=v.consume("or");if(!ge)break;ee.tokens.separator=ge}return G.idlType.length<2&&v.error("At least two types are expected in a union type but found less"),N.close=v.consume(")")||v.error("Unterminated union type"),j(v,G),G.this}(d,x)}constructor({source:d,tokens:x}){super({source:d,tokens:x}),Object.defineProperty(this,"subtype",{value:[],writable:!0}),this.extAttrs=new w({source:d,tokens:{}})}get generic(){return this.subtype.length&&this.tokens.base?this.tokens.base.value:""}get nullable(){return Boolean(this.tokens.nullable)}get union(){return Boolean(this.subtype.length)&&!this.tokens.base}get idlType(){if(this.subtype.length)return this.subtype;return J([this.tokens.prefix,this.tokens.base,this.tokens.postfix].filter((d)=>d).map((d)=>d.value).join(" "))}*validate(d){if(yield*this.extAttrs.validate(d),this.idlType==="BufferSource")for(let N of[this.extAttrs,this.parent?.extAttrs])for(let G of N){if(G.name!=="AllowShared")continue;let ee="`[AllowShared] BufferSource` is now replaced with AllowSharedBufferSource.";yield s(this.tokens.base,this,"migrate-allowshared",ee,{autofix:k(this,G,N)})}if(this.idlType==="void")yield s(this.tokens.base,this,"replace-void","`void` is now replaced by `undefined`. Refer to the [relevant GitHub issue](https://github.com/whatwg/webidl/issues/60) for more information.",{autofix:(x=this,()=>{x.tokens.base.value="undefined"})});var x;let v=!this.union&&d.unique.get(this.idlType),P=this.union?this:v&&v.type==="typedef"?v.idlType:void 0;if(P&&this.nullable){let{reference:N}=o(P,d)||{};if(N){let G=(this.union?N:this).tokens.base;yield s(G,this,"no-nullable-union-dict","Nullable union cannot include a dictionary type.")}}else for(let N of this.subtype)yield*N.validate(d)}write(d){return d.ts.wrap([this.extAttrs.write(d),(()=>{if(this.union||this.generic)return d.ts.wrap([d.token(this.tokens.base,d.ts.generic),d.token(this.tokens.open),...this.subtype.map((N)=>N.write(d)),d.token(this.tokens.close)]);let x=this.tokens.prefix||this.tokens.base,v=this.tokens.prefix?[this.tokens.prefix.value,d.ts.trivia(this.tokens.base.trivia)]:[],P=d.reference(d.ts.wrap([...v,this.tokens.base.value,d.token(this.tokens.postfix)]),{unescaped:this.idlType,context:this});return d.ts.wrap([d.ts.trivia(x.trivia),P])})(),d.token(this.tokens.nullable),d.token(this.tokens.separator)])}}function k(d,x,v){return()=>{let P=v.indexOf(x);v.splice(P,1),!v.length&&d.tokens.base.trivia.match(/^\s$/)&&(d.tokens.base.trivia=""),d.tokens.base.value="AllowSharedBufferSource"}}class A extends i{static parse(d){let x=d.consume("=");if(!x)return null;let v=K(d)||d.consumeKind("string")||d.consume("null","[","{")||d.error("No value for default"),P=[v];if(v.value==="["){let N=d.consume("]")||d.error("Default sequence value must be empty");P.push(N)}else if(v.value==="{"){let N=d.consume("}")||d.error("Default dictionary value must be empty");P.push(N)}return new A({source:d.source,tokens:{assign:x},expression:P})}constructor({source:d,tokens:x,expression:v}){super({source:d,tokens:x}),v.parent=this,Object.defineProperty(this,"expression",{value:v})}get type(){return ae(this.expression[0]).type}get value(){return ae(this.expression[0]).value}get negative(){return ae(this.expression[0]).negative}write(d){return d.ts.wrap([d.token(this.tokens.assign),...this.expression.map((x)=>d.token(x))])}}class R extends i{static parse(d){let x=d.position,v={},P=H(new R({source:d.source,tokens:v}));return P.extAttrs=w.parse(d),v.optional=d.consume("optional"),P.idlType=se(d,"argument-type"),P.idlType?(v.optional||(v.variadic=d.consume("...")),v.name=d.consumeKind("identifier")||d.consume(...X),v.name?(P.default=v.optional?A.parse(d):null,P.this):d.unconsume(x)):d.unconsume(x)}get type(){return"argument"}get optional(){return!!this.tokens.optional}get variadic(){return!!this.tokens.variadic}get name(){return J(this.tokens.name.value)}*validate(d){yield*this.extAttrs.validate(d),yield*this.idlType.validate(d);let x=o(this.idlType,d,{useNullableInner:!0});if(x){if(this.idlType.nullable)yield s(this.tokens.name,this,"no-nullable-dict-arg","Dictionary arguments cannot be nullable.");else if(this.optional){if(!this.default)yield s(this.tokens.name,this,"dict-arg-default","Optional dictionary arguments must have a default value of `{}`.",{autofix:_(this)})}else if(this.parent&&!a(x.dictionary,d)&&function(P){let N=P.parent.arguments||P.parent.list,G=N.indexOf(P);return!N.slice(G+1).some((ge)=>!ge.optional)}(this))yield s(this.tokens.name,this,"dict-arg-optional","Dictionary argument must be optional if it has no required fields",{autofix:(v=this,()=>{let N=oe(v.idlType);v.tokens.optional={...N,type:"optional",value:"optional"},N.trivia=" ",_(v)()})})}var v}write(d){return d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.optional),d.ts.type(this.idlType.write(d)),d.token(this.tokens.variadic),d.name_token(this.tokens.name,{data:this}),this.default?this.default.write(d):"",d.token(this.tokens.separator)])}}function _(d){return()=>{d.default=A.parse(new wt(" = {}"))}}class I extends i{static parse(d,{special:x,regular:v}={}){let P={special:x},N=H(new I({source:d.source,tokens:P}));return x&&x.value==="stringifier"&&(P.termination=d.consume(";"),P.termination)?(N.arguments=[],N):(x||v||(P.special=d.consume("getter","setter","deleter")),N.idlType=ue(d)||d.error("Missing return type"),P.name=d.consumeKind("identifier")||d.consume("includes"),P.open=d.consume("(")||d.error("Invalid operation"),N.arguments=ce(d),P.close=d.consume(")")||d.error("Unterminated operation"),P.termination=d.consume(";")||d.error("Unterminated operation, expected `;`"),N.this)}get type(){return"operation"}get name(){let{name:d}=this.tokens;return d?J(d.value):""}get special(){return this.tokens.special?this.tokens.special.value:""}*validate(d){if(yield*this.extAttrs.validate(d),!this.name&&["","static"].includes(this.special))yield s(this.tokens.open,this,"incomplete-op","Regular or static operations must have both a return type and an identifier.");if(this.idlType){if(this.idlType.generic==="async_sequence")yield s(this.idlType.tokens.base,this,"async-sequence-idl-to-js","async_sequence types cannot be returned by an operation.");yield*this.idlType.validate(d)}for(let x of this.arguments)yield*x.validate(d)}write(d){let{parent:x}=this,v=this.idlType?[d.ts.type(this.idlType.write(d)),d.name_token(this.tokens.name,{data:this,parent:x}),d.token(this.tokens.open),d.ts.wrap(this.arguments.map((P)=>P.write(d))),d.token(this.tokens.close)]:[];return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),this.tokens.name?d.token(this.tokens.special):d.token(this.tokens.special,d.ts.nameless,{data:this,parent:x}),...v,d.token(this.tokens.termination)]),{data:this,parent:x})}}class L extends i{static parse(d,{special:x,noInherit:v=!1,readonly:P=!1}={}){let N=d.position,G={special:x},ee=H(new L({source:d.source,tokens:G}));if(x||v||(G.special=d.consume("inherit")),ee.special==="inherit"&&d.probe("readonly")&&d.error("Inherited attributes cannot be read-only"),G.readonly=d.consume("readonly"),P&&!G.readonly&&d.probe("attribute")&&d.error("Attributes must be readonly in this context"),G.base=d.consume("attribute"),G.base)return ee.idlType=se(d,"attribute-type")||d.error("Attribute lacks a type"),G.name=d.consumeKind("identifier")||d.consume("async","required")||d.error("Attribute lacks a name"),G.termination=d.consume(";")||d.error("Unterminated attribute, expected `;`"),ee.this;d.unconsume(N)}get type(){return"attribute"}get special(){return this.tokens.special?this.tokens.special.value:""}get readonly(){return!!this.tokens.readonly}get name(){return J(this.tokens.name.value)}*validate(d){if(yield*this.extAttrs.validate(d),yield*this.idlType.validate(d),["async_sequence","sequence","record"].includes(this.idlType.generic)){let x=`Attributes cannot accept ${this.idlType.generic} types.`;yield s(this.tokens.name,this,"attr-invalid-type",x)}{let{reference:x}=o(this.idlType,d)||{};if(x){let v=(this.idlType.union?x:this.idlType).tokens.base;yield s(v,this,"attr-invalid-type","Attributes cannot accept dictionary types.")}}if(this.readonly&&function(x,v){if(x.union)return!1;if(x.extAttrs.some((N)=>N.name==="EnforceRange"))return!0;let P=v.unique.get(x.idlType);return P?.type==="typedef"&&P.idlType.extAttrs.some((N)=>N.name==="EnforceRange")}(this.idlType,d)){let x=this.idlType.tokens.base;yield s(x,this,"attr-invalid-type","Readonly attributes cannot accept [EnforceRange] extended attribute.")}}write(d){let{parent:x}=this;return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.special),d.token(this.tokens.readonly),d.token(this.tokens.base),d.ts.type(this.idlType.write(d)),d.name_token(this.tokens.name,{data:this,parent:x}),d.token(this.tokens.termination)]),{data:this,parent:x})}}function J(d){return d.startsWith("_")?d.slice(1):d}function F(d,{parser:x,allowDangler:v,listName:P="list"}){let N=x(d);if(!N)return[];N.tokens.separator=d.consume(",");let G=[N];for(;N.tokens.separator;){let ee=x(d);if(!ee){v||d.error(`Trailing comma in ${P}`);break}if(ee.tokens.separator=d.consume(","),G.push(ee),!ee.tokens.separator)break}return G}function K(d){return d.consumeKind("decimal","integer")||d.consume("true","false","Infinity","-Infinity","NaN")}function ae({type:d,value:x}){switch(d){case"decimal":case"integer":return{type:"number",value:x};case"string":return{type:"string",value:x.slice(1,-1)}}switch(x){case"true":case"false":return{type:"boolean",value:x==="true"};case"Infinity":case"-Infinity":return{type:"Infinity",negative:x.startsWith("-")};case"[":return{type:"sequence",value:[]};case"{":return{type:"dictionary"};default:return{type:x}}}function me(d){let{source:x}=d,v=function(){let N=d.consume("unsigned"),G=d.consume("short","long");if(G){let ee=d.consume("long");return new E({source:x,tokens:{prefix:N,base:G,postfix:ee}})}N&&d.error("Failed to parse integer type")}()||function(){let N=d.consume("unrestricted"),G=d.consume("float","double");if(G)return new E({source:x,tokens:{prefix:N,base:G}});N&&d.error("Failed to parse float type")}();if(v)return v;let P=d.consume("bigint","boolean","byte","octet","undefined");return P?new E({source:x,tokens:{base:P}}):void 0}function ce(d){return F(d,{parser:R.parse,listName:"arguments list"})}function se(d,x){let v=w.parse(d),P=E.parse(d,x);return P&&(H(P).extAttrs=v),P}function ue(d,x){let v=E.parse(d,x||"return-type");if(v)return v;let P=d.consume("void");if(P){let N=new E({source:d.source,tokens:{base:P}});return N.type="return-type",N}}function Ne(d){let x=d.consume("stringifier");if(!x)return;return L.parse(d,{special:x})||I.parse(d,{special:x})||d.error("Unterminated stringifier")}function Y(d){let x=d.split(`
|
|
602
|
+
`);if(x.length){let v=x[x.length-1].match(/^\s+/);if(v)return v[0]}return""}function Ee(d){return()=>{if(d.extAttrs.length){let x=new wt("Exposed=Window,"),v=y.parse(x);v.tokens.separator=x.consume(",");let P=d.extAttrs[0];/^\s/.test(P.tokens.name.trivia)||(P.tokens.name.trivia=` ${P.tokens.name.trivia}`),d.extAttrs.unshift(v)}else{H(d).extAttrs=w.parse(new wt("[Exposed=Window]"));let x=d.tokens.base.trivia;d.extAttrs.tokens.open.trivia=x,d.tokens.base.trivia=`
|
|
603
|
+
${Y(x)}`}}}function oe(d){if(d.extAttrs.length)return d.extAttrs.tokens.open;if(d.type==="operation"&&!d.special)return oe(d.idlType);return Object.values(d.tokens).sort((x,v)=>x.index-v.index)[0]}function H(d,x){if(x||(x=d),!d)return d;return new Proxy(d,{get(v,P){let N=v[P];return Array.isArray(N)&&P!=="source"?H(N,v):N},set(v,P,N){if(v[P]=N,!N)return!0;if(Array.isArray(N))for(let G of N)G.parent!==void 0&&(G.parent=x);else N.parent!==void 0&&(N.parent=x);return!0}})}let ot={decimal:/-?(?=[0-9]*\.|[0-9]+[eE])(([0-9]+\.[0-9]*|[0-9]*\.[0-9]+)([Ee][-+]?[0-9]+)?|[0-9]+[Ee][-+]?[0-9]+)/y,integer:/-?(0([Xx][0-9A-Fa-f]+|[0-7]*)|[1-9][0-9]*)/y,identifier:/[_-]?[A-Za-z][0-9A-Z_a-z-]*/y,string:/"[^"]*"/y,whitespace:/[\t\n\r ]+/y,comment:/\/\/.*|\/\*[\s\S]*?\*\//y,other:/[^\t\n\r 0-9A-Za-z]/y},de=["ArrayBuffer","SharedArrayBuffer","DataView","Int8Array","Int16Array","Int32Array","Uint8Array","Uint16Array","Uint32Array","Uint8ClampedArray","BigInt64Array","BigUint64Array","Float16Array","Float32Array","Float64Array","any","object","symbol"],$t=["ByteString","DOMString","USVString"],X=["async","attribute","callback","const","constructor","deleter","dictionary","enum","getter","includes","inherit","interface","iterable","maplike","namespace","partial","required","setlike","setter","static","stringifier","typedef","unrestricted"],jt=["-Infinity","FrozenArray","Infinity","NaN","ObservableArray","Promise","async_iterable","async_sequence","bigint","boolean","byte","double","false","float","long","mixin","null","octet","optional","or","readonly","record","sequence","short","true","undefined","unsigned","void"].concat(X,$t,de),et=["(",")",",","...",":",";","<","=",">","?","*","[","]","{","}"],Kt=["_constructor","toString","_toString"];class wt{constructor(d){this.source=function(x){let v=[],P=0,N="",G=1,ee=0;for(;P<x.length;){let pe=x.charAt(P),$e=-1;if(/[\t\n\r ]/.test(pe)?$e=ge("whitespace",{noFlushTrivia:!0}):pe==="/"&&($e=ge("comment",{noFlushTrivia:!0})),$e!==-1){let Te=v.pop().value;G+=(Te.match(/\n/g)||[]).length,N+=Te,ee-=1}else if(/[-0-9.A-Z_a-z]/.test(pe)){if($e=ge("decimal"),$e===-1&&($e=ge("integer")),$e===-1){$e=ge("identifier");let Te=v.length-1,qe=v[Te];if($e!==-1){if(Kt.includes(qe.value)){let cr=`${J(qe.value)} is a reserved identifier and must not be used.`;throw new Ot(n(v,Te,null,cr))}jt.includes(qe.value)&&(qe.type="inline")}}}else pe==='"'&&($e=ge("string"));for(let Te of et)if(x.startsWith(Te,P)){v.push({type:"inline",value:Te,trivia:N,line:G,index:ee}),N="",P+=Te.length,$e=P;break}if($e===-1&&($e=ge("other")),$e===-1)throw Error("Token stream not progressing");P=$e,ee+=1}return v.push({type:"eof",value:"",trivia:N,line:G,index:ee}),v;function ge(pe,{noFlushTrivia:$e}={}){let Te=ot[pe];Te.lastIndex=P;let qe=Te.exec(x);return qe?(v.push({type:pe,value:qe[0],trivia:N,line:G,index:ee}),$e||(N=""),Te.lastIndex):-1}}(d),this.position=0}error(d){throw new Ot(n(this.source,this.position,this.current,d))}probeKind(d){return this.source.length>this.position&&this.source[this.position].type===d}probe(d){return this.probeKind("inline")&&this.source[this.position].value===d}consumeKind(...d){for(let x of d){if(!this.probeKind(x))continue;let v=this.source[this.position];return this.position++,v}}consume(...d){if(!this.probeKind("inline"))return;let x=this.source[this.position];for(let v of d)if(x.value===v)return this.position++,x}consumeIdentifier(d){if(this.probeKind("identifier")&&this.source[this.position].value===d)return this.consumeKind("identifier")}unconsume(d){this.position=d}}class Ot extends Error{constructor({message:d,bareMessage:x,context:v,line:P,sourceName:N,input:G,tokens:ee}){super(d),this.name="WebIDLParseError",this.bareMessage=x,this.context=v,this.line=P,this.sourceName=N,this.input=G,this.tokens=ee}}class Yt extends c{static parse(d){let x=d.consumeKind("string");if(x)return new Yt({source:d.source,tokens:{value:x}})}get type(){return"enum-value"}get value(){return super.value.slice(1,-1)}write(d){let{parent:x}=this;return d.ts.wrap([d.ts.trivia(this.tokens.value.trivia),d.ts.definition(d.ts.wrap(['"',d.ts.name(this.value,{data:this,parent:x}),'"']),{data:this,parent:x}),d.token(this.tokens.separator)])}}class Vt extends i{static parse(d){let x={};if(x.base=d.consume("enum"),!x.base)return;x.name=d.consumeKind("identifier")||d.error("No name for enum");let v=H(new Vt({source:d.source,tokens:x}));return d.current=v.this,x.open=d.consume("{")||d.error("Bodyless enum"),v.values=F(d,{parser:Yt.parse,allowDangler:!0,listName:"enumeration"}),d.probeKind("string")&&d.error("No comma between enum values"),x.close=d.consume("}")||d.error("Unexpected value in enum"),v.values.length||d.error("No value in enum"),x.termination=d.consume(";")||d.error("No semicolon after enum"),v.this}get type(){return"enum"}get name(){return J(this.tokens.name.value)}write(d){return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.base),d.name_token(this.tokens.name,{data:this}),d.token(this.tokens.open),d.ts.wrap(this.values.map((x)=>x.write(d))),d.token(this.tokens.close),d.token(this.tokens.termination)]),{data:this})}}class es extends i{static parse(d){let x=d.consumeKind("identifier");if(!x)return;let v={target:x};if(v.includes=d.consume("includes"),v.includes)return v.mixin=d.consumeKind("identifier")||d.error("Incomplete includes statement"),v.termination=d.consume(";")||d.error("No terminating ; for includes statement"),new es({source:d.source,tokens:v});d.unconsume(x.index)}get type(){return"includes"}get target(){return J(this.tokens.target.value)}get includes(){return J(this.tokens.mixin.value)}write(d){return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.reference_token(this.tokens.target,this),d.token(this.tokens.includes),d.reference_token(this.tokens.mixin,this),d.token(this.tokens.termination)]),{data:this})}}class ts extends i{static parse(d){let x={},v=H(new ts({source:d.source,tokens:x}));if(x.base=d.consume("typedef"),x.base)return v.idlType=se(d,"typedef-type")||d.error("Typedef lacks a type"),x.name=d.consumeKind("identifier")||d.error("Typedef lacks a name"),d.current=v.this,x.termination=d.consume(";")||d.error("Unterminated typedef, expected `;`"),v.this}get type(){return"typedef"}get name(){return J(this.tokens.name.value)}*validate(d){yield*this.idlType.validate(d)}write(d){return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.base),d.ts.type(this.idlType.write(d)),d.name_token(this.tokens.name,{data:this}),d.token(this.tokens.termination)]),{data:this})}}class ho extends i{static parse(d,x){let v={base:x},P=H(new ho({source:d.source,tokens:v}));return v.name=d.consumeKind("identifier")||d.error("Callback lacks a name"),d.current=P.this,v.assign=d.consume("=")||d.error("Callback lacks an assignment"),P.idlType=ue(d)||d.error("Callback lacks a return type"),v.open=d.consume("(")||d.error("Callback lacks parentheses for arguments"),P.arguments=ce(d),v.close=d.consume(")")||d.error("Unterminated callback"),v.termination=d.consume(";")||d.error("Unterminated callback, expected `;`"),P.this}get type(){return"callback"}get name(){return J(this.tokens.name.value)}*validate(d){yield*this.extAttrs.validate(d);for(let x of this.arguments)if(yield*x.validate(d),x.idlType.generic==="async_sequence")yield s(x.tokens.name,x,"async-sequence-idl-to-js","async_sequence types cannot be returned as a callback argument.");yield*this.idlType.validate(d)}write(d){return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.base),d.name_token(this.tokens.name,{data:this}),d.token(this.tokens.assign),d.ts.type(this.idlType.write(d)),d.token(this.tokens.open),...this.arguments.map((x)=>x.write(d)),d.token(this.tokens.close),d.token(this.tokens.termination)]),{data:this})}}class Ir extends i{static parse(d,x,{inheritable:v,allowedMembers:P}){let{tokens:N,type:G}=x;for(N.name=d.consumeKind("identifier")||d.error(`Missing name in ${G}`),d.current=x,x=H(x),v&&Object.assign(N,function(ee){let ge=ee.consume(":");return ge?{colon:ge,inheritance:ee.consumeKind("identifier")||ee.error("Inheritance lacks a type")}:{}}(d)),N.open=d.consume("{")||d.error(`Bodyless ${G}`),x.members=[];;){if(N.close=d.consume("}"),N.close)return N.termination=d.consume(";")||d.error(`Missing semicolon after ${G}`),x.this;let ee=w.parse(d),ge;for(let[pe,...$e]of P)if(ge=H(pe(d,...$e)),ge)break;ge||d.error("Unknown member"),ge.extAttrs=ee,x.members.push(ge.this)}}get partial(){return!!this.tokens.partial}get name(){return J(this.tokens.name.value)}get inheritance(){return this.tokens.inheritance?J(this.tokens.inheritance.value):null}*validate(d){for(let x of this.members)x.validate&&(yield*x.validate(d))}write(d){return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.callback),d.token(this.tokens.partial),d.token(this.tokens.base),d.token(this.tokens.mixin),d.name_token(this.tokens.name,{data:this}),(()=>this.tokens.inheritance?d.ts.wrap([d.token(this.tokens.colon),d.ts.trivia(this.tokens.inheritance.trivia),d.ts.inheritance(d.reference(this.tokens.inheritance.value,{context:this}))]):"")(),d.token(this.tokens.open),d.ts.wrap(this.members.map((x)=>x.write(d))),d.token(this.tokens.close),d.token(this.tokens.termination)]),{data:this})}}class rs extends i{static parse(d){let x={};if(x.base=d.consume("const"),!x.base)return;let v=me(d);if(!v){let N=d.consumeKind("identifier")||d.error("Const lacks a type");v=new E({source:d.source,tokens:{base:N}})}d.probe("?")&&d.error("Unexpected nullable constant type"),v.type="const-type",x.name=d.consumeKind("identifier")||d.error("Const lacks a name"),x.assign=d.consume("=")||d.error("Const lacks value assignment"),x.value=K(d)||d.error("Const lacks a value"),x.termination=d.consume(";")||d.error("Unterminated const, expected `;`");let P=new rs({source:d.source,tokens:x});return H(P).idlType=v,P}get type(){return"const"}get name(){return J(this.tokens.name.value)}get value(){return ae(this.tokens.value)}write(d){let{parent:x}=this;return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.base),d.ts.type(this.idlType.write(d)),d.name_token(this.tokens.name,{data:this,parent:x}),d.token(this.tokens.assign),d.token(this.tokens.value),d.token(this.tokens.termination)]),{data:this,parent:x})}}class go extends i{static parse(d){let x=d.position,v=H(new go({source:d.source,tokens:{}})),{tokens:P}=v;if(P.readonly=d.consume("readonly"),P.readonly||(P.async=d.consume("async")),P.base=P.readonly?d.consume("maplike","setlike"):P.async?d.consume("iterable"):d.consume("iterable","async_iterable","maplike","setlike"),!P.base)return void d.unconsume(x);let{type:N}=v,G=N==="maplike",ee=G||N==="iterable"||N==="async_iterable",ge=N==="async_iterable"||v.async&&N==="iterable";P.open=d.consume("<")||d.error(`Missing less-than sign \`<\` in ${N} declaration`);let pe=se(d)||d.error(`Missing a type argument in ${N} declaration`);return v.idlType=[pe],v.arguments=[],ee&&(pe.tokens.separator=d.consume(","),pe.tokens.separator?v.idlType.push(se(d)):G&&d.error(`Missing second type argument in ${N} declaration`)),P.close=d.consume(">")||d.error(`Missing greater-than sign \`>\` in ${N} declaration`),d.probe("(")&&(ge?(P.argsOpen=d.consume("("),v.arguments.push(...ce(d)),P.argsClose=d.consume(")")||d.error("Unterminated async iterable argument list")):d.error("Arguments are only allowed for `async iterable`")),P.termination=d.consume(";")||d.error(`Missing semicolon after ${N} declaration`),v.this}get type(){return this.tokens.base.value}get readonly(){return!!this.tokens.readonly}get async(){return!!this.tokens.async}*validate(d){if(this.async&&this.type==="iterable")yield s(this.tokens.async,this,"obsolete-async-iterable-syntax","`async iterable` is now changed to `async_iterable`.",{autofix:(x=this,()=>{let P=x.tokens.async;x.tokens.base={...P,type:"async_iterable",value:"async_iterable"},delete x.tokens.async})});var x;for(let v of this.idlType)yield*v.validate(d);for(let v of this.arguments)yield*v.validate(d)}write(d){return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.readonly),d.token(this.tokens.async),d.token(this.tokens.base,d.ts.generic),d.token(this.tokens.open),d.ts.wrap(this.idlType.map((x)=>x.write(d))),d.token(this.tokens.close),d.token(this.tokens.argsOpen),d.ts.wrap(this.arguments.map((x)=>x.write(d))),d.token(this.tokens.argsClose),d.token(this.tokens.termination)]),{data:this,parent:this.parent})}}class yo extends i{static parse(d){let x=d.consume("constructor");if(!x)return;let v={base:x};v.open=d.consume("(")||d.error("No argument list in constructor");let P=ce(d);v.close=d.consume(")")||d.error("Unterminated constructor"),v.termination=d.consume(";")||d.error("No semicolon after constructor");let N=new yo({source:d.source,tokens:v});return H(N).arguments=P,N}get type(){return"constructor"}*validate(d){for(let x of this.arguments)yield*x.validate(d)}write(d){let{parent:x}=this;return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.base,d.ts.nameless,{data:this,parent:x}),d.token(this.tokens.open),d.ts.wrap(this.arguments.map((v)=>v.write(d))),d.token(this.tokens.close),d.token(this.tokens.termination)]),{data:this,parent:x})}}function Jd(d){let x=d.consume("static");if(!x)return;return L.parse(d,{special:x})||I.parse(d,{special:x})||d.error("No body in static member")}class ns extends Ir{static parse(d,x,{extMembers:v=[],partial:P=null}={}){let N={partial:P,base:x};return Ir.parse(d,new ns({source:d.source,tokens:N}),{inheritable:!P,allowedMembers:[...v,[rs.parse],[yo.parse],[Jd],[Ne],[go.parse],[L.parse],[I.parse]]})}get type(){return"interface"}*validate(d){if(yield*this.extAttrs.validate(d),!this.partial&&this.extAttrs.every((v)=>v.name!=="Exposed"))yield s(this.tokens.name,this,"require-exposed","Interfaces must have `[Exposed]` extended attribute. To fix, add, for example, `[Exposed=Window]`. Please also consider carefully if your interface should also be exposed in a Worker scope. Refer to the [WebIDL spec section on Exposed](https://heycam.github.io/webidl/#Exposed) for more information.",{autofix:Ee(this)});let x=this.extAttrs.filter((v)=>v.name==="Constructor");for(let v of x)yield s(v.tokens.name,this,"constructor-member","Constructors should now be represented as a `constructor()` operation on the interface instead of `[Constructor]` extended attribute. Refer to the [WebIDL spec section on constructor operations](https://heycam.github.io/webidl/#idl-constructors) for more information.",{autofix:yc(this,v)});if(this.extAttrs.some((v)=>v.name==="Global")){let v=this.extAttrs.filter((N)=>N.name==="LegacyFactoryFunction");for(let N of v)yield s(N.tokens.name,this,"no-constructible-global","Interfaces marked as `[Global]` cannot have factory functions.");let P=this.members.filter((N)=>N.type==="constructor");for(let N of P)yield s(N.tokens.base,this,"no-constructible-global","Interfaces marked as `[Global]` cannot have constructors.")}yield*super.validate(d),this.partial||(yield*function*(v,P){let N=function($e){let Te=pe($e);return{statics:new Set(Te.filter((qe)=>qe.special==="static").map((qe)=>qe.name)),nonstatics:new Set(Te.filter((qe)=>qe.special!=="static").map((qe)=>qe.name))}}(P),G=v.partials.get(P.name)||[],ee=v.mixinMap.get(P.name)||[];for(let $e of[...G,...ee]){let Te=pe($e),qe=Te.filter((yr)=>yr.special==="static"),cr=Te.filter((yr)=>yr.special!=="static");yield*ge(qe,N.statics,$e,P),yield*ge(cr,N.nonstatics,$e,P),qe.forEach((yr)=>N.statics.add(yr.name)),cr.forEach((yr)=>N.nonstatics.add(yr.name))}function*ge($e,Te,qe,cr){for(let yr of $e){let{name:za}=yr;if(za&&Te.has(za)){let Md=`The ${yr.special==="static"?"static ":""}operation "${za}" has already been defined for the base interface "${cr.name}" either in itself or in a mixin`;yield s(yr.tokens.name,qe,"no-cross-overload",Md)}}}function pe($e){return $e.members.filter(({type:Te})=>Te==="operation")}}(d,this))}}function yc(d,x){return d=H(d),()=>{let v=Y(d.extAttrs.tokens.open.trivia),P=d.members.length?Y(oe(d.members[0]).trivia):function(Te){let qe=Y(Te),cr=qe.includes("\t")?"\t":" ";return qe+cr}(v),N=yo.parse(new wt(`
|
|
604
|
+
${P}constructor();`));N.extAttrs=new w({source:d.source,tokens:{}}),H(N).arguments=x.arguments;let G=function(Te,qe){let cr=Te.slice().reverse().findIndex(qe);return cr===-1?cr:Te.length-cr-1}(d.members,(Te)=>Te.type==="constructor");d.members.splice(G+1,0,N);let{close:ee}=d.tokens;ee.trivia.includes(`
|
|
605
605
|
`)||(ee.trivia+=`
|
|
606
|
-
${v}`);let{extAttrs:ge}=d,pe=ge.indexOf(x),xe=ge.splice(pe,1);ge.length?ge.length===pe?ge[pe-1].tokens.separator=void 0:ge[pe].tokens.name.trivia.trim()||(ge[pe].tokens.name.trivia=xe[0].tokens.name.trivia):ge.tokens.open=ge.tokens.close=void 0}}class yo extends Nr{static parse(d,x,{extMembers:v=[],partial:j}={}){let C={partial:j,base:x};if(C.mixin=d.consume("mixin"),C.mixin)return Nr.parse(d,new yo({source:d.source,tokens:C}),{allowedMembers:[...v,[rs.parse],[Ce],[L.parse,{noInherit:!0}],[I.parse,{regular:!0}]]})}get type(){return"interface mixin"}}class ss extends i{static parse(d){let x={},v=W(new ss({source:d.source,tokens:x}));return v.extAttrs=w.parse(d),x.required=d.consume("required"),v.idlType=se(d,"dictionary-type")||d.error("Dictionary member lacks a type"),x.name=d.consumeKind("identifier")||d.error("Dictionary member lacks a name"),v.default=A.parse(d),x.required&&v.default&&d.error("Required member must not have a default"),x.termination=d.consume(";")||d.error("Unterminated dictionary member, expected `;`"),v.this}get type(){return"field"}get name(){return J(this.tokens.name.value)}get required(){return!!this.tokens.required}*validate(d){yield*this.idlType.validate(d)}write(d){let{parent:x}=this;return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.required),d.ts.type(this.idlType.write(d)),d.name_token(this.tokens.name,{data:this,parent:x}),this.default?this.default.write(d):"",d.token(this.tokens.termination)]),{data:this,parent:x})}}class M extends Nr{static parse(d,{extMembers:x=[],partial:v}={}){let j={partial:v};if(j.base=d.consume("dictionary"),j.base)return Nr.parse(d,new M({source:d.source,tokens:j}),{inheritable:!v,allowedMembers:[...x,[ss.parse]]})}get type(){return"dictionary"}}class H extends Nr{static parse(d,{extMembers:x=[],partial:v}={}){let j={partial:v};if(j.base=d.consume("namespace"),j.base)return Nr.parse(d,new H({source:d.source,tokens:j}),{allowedMembers:[...x,[L.parse,{noInherit:!0,readonly:!0}],[rs.parse],[I.parse,{regular:!0}]]})}get type(){return"namespace"}*validate(d){if(!this.partial&&this.extAttrs.every((x)=>x.name!=="Exposed"))yield s(this.tokens.name,this,"require-exposed","Namespaces must have [Exposed] extended attribute. To fix, add, for example, [Exposed=Window]. Please also consider carefully if your namespace should also be exposed in a Worker scope. Refer to the [WebIDL spec section on Exposed](https://heycam.github.io/webidl/#Exposed) for more information.",{autofix:Ee(this)});yield*super.validate(d)}}class U extends Nr{static parse(d,x,{extMembers:v=[]}={}){let j={callback:x};if(j.base=d.consume("interface"),j.base)return Nr.parse(d,new U({source:d.source,tokens:j}),{allowedMembers:[...v,[rs.parse],[I.parse,{regular:!0}]]})}get type(){return"callback interface"}}function le(d,x){let v=d.source;function j(pe){d.error(pe)}function C(...pe){return d.consume(...pe)}function G(pe){let xe=C("interface");if(xe)return yo.parse(d,xe,{...pe,...x?.extensions?.mixin})||ns.parse(d,xe,{...pe,...x?.extensions?.interface})||j("Interface has no proper body")}function ee(){if(x.productions)for(let pe of x.productions){let xe=pe(d);if(xe)return xe}return function(){let pe=C("callback");if(pe)return d.probe("interface")?U.parse(d,pe,{...x?.extensions?.callbackInterface}):mo.parse(d,pe)}()||G()||function(){let pe=C("partial");if(pe)return M.parse(d,{partial:pe,...x?.extensions?.dictionary})||G({partial:pe})||H.parse(d,{partial:pe,...x?.extensions?.namespace})||j("Partial doesn't apply to anything")}()||M.parse(d,x?.extensions?.dictionary)||qt.parse(d)||ts.parse(d)||es.parse(d)||H.parse(d,x?.extensions?.namespace)}let ge=function(){if(!v.length)return[];let pe=[];for(;;){let Te=w.parse(d),Le=ee();if(!Le){Te.length&&j("Stray extended attributes");break}W(Le).extAttrs=Te,pe.push(Le)}let xe=u.parse(d);return x.concrete&&pe.push(xe),pe}();return d.position<v.length&&j("Unrecognised tokens"),ge}function Ne(d,x={}){let v=new $t(d);return x.sourceName!==void 0&&(v.source.name=x.sourceName),le(v,x)}function jt(d){return d}let Gt={wrap:(d)=>d.join(""),trivia:jt,name:jt,reference:jt,type:jt,generic:jt,nameless:jt,inheritance:jt,definition:jt,extendedAttribute:jt,extendedAttributeReference:jt};class tt{constructor(d){this.ts=Object.assign({},Gt,d)}reference(d,{unescaped:x,context:v}){return x||(x=d.startsWith("_")?d.slice(1):d),this.ts.reference(d,x,v)}token(d,x=jt,...v){if(!d)return"";let j=x(d.value,...v);return this.ts.wrap([this.ts.trivia(d.trivia),j])}reference_token(d,x){return this.token(d,this.reference.bind(this),{context:x})}name_token(d,x){return this.token(d,this.ts.name,x)}identifier(d,x){return this.ts.wrap([this.reference_token(d.tokens.value,x),this.token(d.tokens.separator)])}}function we(d,{templates:x=Gt}={}){x=Object.assign({},Gt,x);let v=new tt(x);return x.wrap(d.map((j)=>j.write(v)))}function Kt(d,x){let v=new Map,j=d.filter((C)=>C.type==="includes");for(let C of j){let G=x.get(C.includes);if(!G)continue;let ee=v.get(C.target);ee?ee.push(G):v.set(C.target,[G])}return v}function*kt(d){let x=function(v){let j=new Map,C=new Set,G=new Map;for(let ee of v)if(ee.partial){let ge=G.get(ee.name);ge?ge.push(ee):G.set(ee.name,[ee])}else ee.name&&(j.has(ee.name)?C.add(ee):j.set(ee.name,ee));return{all:v,unique:j,partials:G,duplicates:C,mixinMap:Kt(v,j),cache:{typedefIncludesDictionary:new WeakMap,dictionaryIncludesRequiredField:new WeakMap}}}(d);for(let v of x.all)v.validate&&(yield*v.validate(x));yield*function*({unique:v,duplicates:j}){for(let C of j){let{name:G}=C,ee=`The name "${G}" of type "${v.get(G).type}" was already seen`;yield s(C.tokens.name,C,"no-duplicate",ee)}}(x)}function Ct(d){return[...kt((x=d,x.flat?x.flat():[].concat(...x)))];var x}return t})())});var U1=N(function(qse,B1){var __dirname="/home/runner/work/jx/jx/node_modules/@webref/idl",q1=He("fs").promises,vf=He("path"),V1=F1();class W1{constructor(e,t){this.filename=t,this.shortname=vf.basename(t,".idl"),this.path=vf.join(e,t)}async text(){return await q1.readFile(this.path,"utf8")}async parse(){let e=await this.text();return V1.parse(e)}}async function H1({folder:e=__dirname}={}){let t={},r=await q1.readdir(e);for(let n of r)if(n.endsWith(".idl")){let s=new W1(e,n);t[s.shortname]=s}return t}async function $W(e){let t=await H1(e);for(let[r,n]of Object.entries(t))t[r]=await n.parse();return t}B1.exports={listAll:H1,parseAll:$W}});var z1,G1;var K1=D(()=>{z1={anyOf:[{additionalProperties:!1,description:"Two-way: `target` is the test, `value` the tag when it is truthy, `initial` the tag when it is not.",properties:{initial:{$ref:"#/$defs/TagName"},operator:{const:"?:",type:"string"},target:{$ref:"#/$defs/ExpressionOperand"},value:{$ref:"#/$defs/TagName"}},required:["operator","target","value","initial"],title:"?: — the tag when the test holds, and the tag when it does not"},{additionalProperties:!1,description:"Multiway: `target` is the discriminant, matched against case keys by its string form. "+"`default` is required — an element with no tag cannot exist.",properties:{cases:{additionalProperties:{$ref:"#/$defs/TagName"},type:"object"},default:{$ref:"#/$defs/TagName"},operator:{const:"switch",type:"string"},target:{$ref:"#/$defs/ExpressionOperand"}},required:["operator","target","cases","default"],title:"switch — one tag per discriminant value, with a required fallback"}],description:"A tag name chosen at element creation. Every branch resolves to a `TagName`, so the candidate set is enumerable without evaluating anything."},G1={anyOf:[{$ref:"#/$defs/TagName"},{additionalProperties:!1,properties:{$expression:{$ref:"#/$defs/TagExpression"}},required:["$expression"],type:"object"}]}});var Y1;var X1=D(()=>{Y1={description:"HTML element tag name or custom element name (must contain a hyphen per Web Components spec). "+"A NAME, never an expression: no `${…}` position in the pipeline evaluates a tagName. Use "+"`$switch`/`cases` to vary the element.",minLength:1,pattern:"^[a-zA-Z][a-zA-Z0-9._-]*$",type:"string"}});var Z1,Q1,eP;var tP=D(()=>{Z1={oneOf:[{type:"string"},{$ref:"#/$defs/RefObject"}]},Q1={oneOf:[{type:"boolean"},{$ref:"#/$defs/RefObject"}]},eP={oneOf:[{type:"number"},{$ref:"#/$defs/RefObject"}]}});var rP;var nP=D(()=>{rP={additionalProperties:!0,description:"A page-level <head> entry. Defines meta tags, link tags, script tags, etc.",properties:{attributes:{additionalProperties:{oneOf:[{type:"string"},{type:"boolean"}]},type:"object"},children:{items:{$ref:"#/$defs/HeadEntry"},type:"array"},tagName:{type:"string"},textContent:{description:"Element content. An object is serialized to JSON inside the tag — that is how a "+'JSON-LD block (`<script type="application/ld+json">`) is authored.',oneOf:[{type:"string"},{type:"object"}]}},required:["tagName"],type:"object"}});var sP,iP;var oP=D(()=>{sP={description:"A CEM-compatible parameter definition for a function. Follows the Custom Elements Manifest Parameter shape.",properties:{default:{description:"Default value for the parameter."},description:{description:"Parameter documentation.",type:"string"},name:{description:"Parameter name.",type:"string"},optional:{description:"Whether the parameter is optional.",type:"boolean"},type:{description:"Parameter type (JSON Schema or CEM { text } format)."}},required:["name"],type:"object"},iP={description:"A CEM-compatible event definition. Describes a CustomEvent the function dispatches.",properties:{deprecated:{description:"Deprecation notice.",oneOf:[{type:"boolean"},{type:"string"}]},description:{description:"Event documentation.",type:"string"},name:{description:"Event name (e.g. 'task-toggled').",type:"string"},type:{description:"Event type (e.g. { text: 'CustomEvent' })."}},required:["name"],type:"object"}});var aP;var lP=D(()=>{aP={enum:["string","number","integer","boolean","array","object","null"],type:"string"}});var cP,uP,fP,dP,pP,mP,hP,gP,yP;var bP=D(()=>{cP={description:"Reference to a $defs type definition in the current component.",examples:["#/$defs/Count","#/$defs/TodoItem","#/$defs/Status"],pattern:String.raw`^#/\$defs/`,type:"string"},uP={description:"Reference to a state entry (runtime variable) in the current component.",examples:["#/state/count","#/state/addTask","#/state/items"],pattern:"^#/state/",type:"string"},fP={description:"Reference to an external Jx component file.",examples:["./card.json","https://cdn.example.com/button.json"],pattern:String.raw`^(\./|\.\./).*\.json$|^https?://`,type:"string"},dP={description:"Reference to a window or document global.",examples:["window#/currentUser","document#/appConfig"],pattern:"^(window|document)#/",type:"string"},pP={description:"Reference to a named state entry passed via $props from a parent component.",examples:["parent#/sharedState","parent#/theme"],pattern:"^parent#/",type:"string"},mP={description:"Reference to the current Array map iteration context.",examples:["$map/item","$map/index","$map/item/text","$map/item/done"],pattern:String.raw`^\$map/(item|index)(/.*)?$`,type:"string"},hP={oneOf:[{$ref:"#/$defs/InternalRef"},{$ref:"#/$defs/StateRef"},{$ref:"#/$defs/ExternalRef"},{$ref:"#/$defs/GlobalRef"},{$ref:"#/$defs/ParentRef"},{$ref:"#/$defs/MapRef"}],type:"string"},gP={additionalProperties:!1,description:"A $ref binding. Resolves to a state entry (reactive) or plain value (static).",properties:{$ref:{$ref:"#/$defs/AnyRef"}},required:["$ref"],type:"object"},yP={properties:{$props:{$ref:"#/$defs/PropsObject"},$ref:{$ref:"#/$defs/ExternalRef"}},required:["$ref"],type:"object"}});var Sf;var xP=D(()=>{Sf={additionalProperties:{anyOf:[{type:"string"},{type:"number"},{$ref:"#/$defs/RefObject"},{$ref:"#/$defs/StyleObject"}]},description:"CSS style definition. camelCase property names follow CSSOM convention. Keys starting with :, ., &, or [ are treated as nested CSS selectors. Keys matching $media breakpoint names (or other @-prefixed at-rules) group nested rules. Nesting is recursive: selector and at-rule groups may nest to arbitrary depth "+"(e.g. breakpoint → selector → pseudo-class), mirroring the compiler's recursive emission. "+"An object carrying $ref is a reactive VALUE, and the runtime reads it as one. It also matches the nested-block branch vacuously, since a block admits a string under any key, which is why these branches are anyOf rather than oneOf. A DECLARATION at-rule (@font-face, @property, @position-try, @counter-style) may hold an ARRAY of blocks, which is that key written more than once, in order: an object's keys are "+"unique, so @font-face — the at-rule whose identity is not in its key — could not otherwise "+"state a family's second weight at all.",patternProperties:{"^@(font-face|property|position-try|counter-style)":{anyOf:[{$ref:"#/$defs/StyleObject"},{items:{$ref:"#/$defs/StyleObject"},minItems:1,type:"array"}]}},properties:{$description:{description:"Why this rule exists. Emitted as a comment by static builds, ignored at runtime.",type:"string"}},type:"object"}});var $P,wP;var vP=D(()=>{$P={additionalProperties:!1,description:"Dynamic mapped list. Re-renders when the items state entry changes.",properties:{$prototype:{const:"Array",type:"string"},filter:{$ref:"#/$defs/RefObject"},items:{oneOf:[{$ref:"#/$defs/RefObject"},{type:"array"}]},key:{additionalProperties:!1,description:"The identity of each rendered row: a $map/item pointer read per item. A row whose key survives a change keeps its DOM node and its effects across reorders, insertions and "+"removals; without a key, rows are keyed by index. $map/index is not a key — an index "+"names a position, not a row.",properties:{$ref:{pattern:String.raw`^\$map/item(/.+)?$`,type:"string"}},required:["$ref"],type:"object"},map:{$ref:"#/$defs/ElementDef"},sort:{$ref:"#/$defs/RefObject"}},required:["$prototype","items","map"],type:"object"},wP={description:"Array of child definitions — elements, text, or Array namespaces (dynamic lists) mixed "+"freely. A bare Array namespace (the whole children slot is one dynamic list) is also "+"accepted for backward compatibility, as is a ${…} template string that resolves at build "+"time to an array of child definitions.",oneOf:[{items:{anyOf:[{$ref:"#/$defs/ElementDef"},{$ref:"#/$defs/SwitchNode"},{$ref:"#/$defs/ArrayNamespace"},{type:"string"},{type:"number"}]},type:"array"},{$ref:"#/$defs/ArrayNamespace"},{description:"Computed children — a ${…} template that resolves at build time to an array of child "+'definitions (e.g. "${state.entry.$children}" for parsed content). A bare plain-text string is NOT a valid children value; text children must be array items.',pattern:String.raw`\$\{`,type:"string"}]}});var SP,EP,PP,jP,kP,Uh;var _P=D(()=>{SP={additionalProperties:{oneOf:[{type:"string"},{type:"number"},{type:"boolean"},{$ref:"#/$defs/RefObject"}]},description:"HTML attributes and ARIA attributes set via element.setAttribute().",type:"object"},EP={additionalProperties:{anyOf:[{type:"string"},{type:"number"},{type:"boolean"},{type:"array"},{type:"object"},{$ref:"#/$defs/RefObject"}]},description:"Explicit prop passing at a component boundary.",type:"object"},PP={oneOf:[{type:"string"},{type:"number"},{type:"boolean"},{type:"null"},{$ref:"#/$defs/RefObject"}]},jP={additionalProperties:!1,description:"Reactive $ref that drives which case to render: a state entry, or inside a mapped array's template the row's $map/item or $map/index (spec §14.1).",properties:{$ref:{oneOf:[{$ref:"#/$defs/StateRef"},{$ref:"#/$defs/MapRef"}],type:"string"}},required:["$ref"],type:"object"},kP={properties:{$switch:{$ref:"#/$defs/SwitchDef"},cases:{additionalProperties:{oneOf:[{$ref:"#/$defs/ElementDef"},{$ref:"#/$defs/ExternalComponentRef"}]},type:"object"},tagName:{$ref:"#/$defs/TagName"}},required:["$switch","cases"],type:"object"},Uh={additionalProperties:{$ref:"#/$defs/ElementPropertyValue"},description:"A Jx element definition. Maps directly to a DOM element.",properties:{"$map/index":{$ref:"#/$defs/RefObject"},"$map/item":{$ref:"#/$defs/RefObject"},$props:{$ref:"#/$defs/PropsObject"},$ref:{$ref:"#/$defs/ExternalRef"},$switch:{$ref:"#/$defs/SwitchDef"},alt:{$ref:"#/$defs/StringOrRef"},attributes:{$ref:"#/$defs/AttributesObject"},cases:{additionalProperties:{oneOf:[{$ref:"#/$defs/ElementDef"},{$ref:"#/$defs/ExternalComponentRef"}]},description:"Switch cases for this element. Maps case values to element definitions or external component refs, rendered according to the reactive $switch discriminant.",type:"object"},checked:{$ref:"#/$defs/BoolOrRef"},children:{$ref:"#/$defs/ChildrenValue"},className:{$ref:"#/$defs/StringOrRef"},dir:{enum:["ltr","rtl","auto"],type:"string"},disabled:{$ref:"#/$defs/BoolOrRef"},hidden:{$ref:"#/$defs/BoolOrRef"},href:{$ref:"#/$defs/StringOrRef"},id:{type:"string"},innerHTML:{$ref:"#/$defs/StringOrRef"},innerText:{$ref:"#/$defs/StringOrRef"},lang:{$ref:"#/$defs/StringOrRef"},name:{$ref:"#/$defs/StringOrRef"},placeholder:{$ref:"#/$defs/StringOrRef"},selected:{$ref:"#/$defs/BoolOrRef"},src:{$ref:"#/$defs/StringOrRef"},style:{$ref:"#/$defs/StyleObject"},tabIndex:{$ref:"#/$defs/NumberOrRef"},tagName:{$ref:"#/$defs/ElementTagName"},textContent:{$ref:"#/$defs/StringOrRef"},title:{$ref:"#/$defs/StringOrRef"},type:{$ref:"#/$defs/StringOrRef"},value:{$ref:"#/$defs/StringOrRef"}},required:["tagName"],type:"object"}});var AP;var RP=D(()=>{AP={description:"A typed reactive state variable with explicit type and default value. The type property is a JSON Schema or $ref to a $defs type definition. The default property is the initial runtime value.",not:{required:["$prototype"]},properties:{$ref:{description:"Reference to a shared type definition.",type:"string"},attribute:{description:"Linked HTML attribute name for CEM extraction.",type:"string"},default:{description:"Initial state value."},deprecated:{description:"Deprecation notice for CEM extraction.",oneOf:[{type:"boolean"},{type:"string"}]},description:{type:"string"},examples:{type:"array"},reflects:{description:"Whether property changes reflect back to the HTML attribute.",type:"boolean"},type:{description:"JSON Schema type definition, $ref to a $defs type, or JSON Schema type string.",oneOf:[{type:"string"},{type:"object"}]}},required:["default"],type:"object"}});var OP;var CP=D(()=>{OP={additionalProperties:!1,description:'A function declaration. $prototype must be "Function". body (inline) and $src (external) are mutually exclusive. First parameter is always state (the reactive scope).',properties:{$export:{description:"Named export in $src module. Defaults to the state key name.",type:"string"},$lazy:{description:"Load $src on first call instead of importing it up front. The function then returns a "+"promise, so it may only be called from a handler or lifecycle hook — never bound as a "+"computed value. Use it for code most visitors never reach.",type:"boolean"},$prototype:{const:"Function",type:"string"},$src:{description:"External module specifier. Mutually exclusive with body.",examples:["./counter.js","npm:@myorg/validators"],type:"string"},arguments:{description:"Legacy alias for parameters: bare string parameter names (state may be listed explicitly as the first name). Superseded by parameters.",examples:[["state","event"]],items:{type:"string"},type:"array"},body:{description:"Inline function body: an opaque JS source string (first implicit parameter is state), or a structured statement array (spec §20) — explicit structured function declaration, analyzable by tooling and editable visually. The escalation ladder within the shape is structured statements → JS string.",examples:["state.count++",'state.items.push({ id: Date.now(), text: "", done: false })','return state.score >= 90 ? "gold" : "silver"',[{operator:"push",target:{$ref:"#/state/cart"},value:1},{dispatchEvent:"cart-changed",detail:{$ref:"#/state/cart"}}]],oneOf:[{type:"string"},{$ref:"#/$defs/StatementList"}]},description:{type:"string"},emits:{description:"Array of CEM-compatible Event objects this function dispatches. Used for CEM extraction and studio event discovery.",items:{$ref:"#/$defs/CemEvent"},type:"array"},name:{description:"Explicit function name. Defaults to the state key name.",type:"string"},parameters:{description:"Function parameters (after the implicit state parameter). Accepts CEM-compatible parameter objects or bare string names for backward compatibility.",examples:[["event"],[{name:"event",type:{text:"Event"}}],[{description:"Item identifier",name:"id",type:{text:"number"}}]],items:{oneOf:[{type:"string"},{$ref:"#/$defs/CemParameter"}]},type:"array"},type:{description:"Return type for tooling (JSON Schema or CEM { text } format)."}},required:["$prototype"],type:"object"}});var NP,TP;var IP=D(()=>{NP={description:"One statement of a structured function body. Either a bare expression node in statement position (a mutation like =/push, or a call — its result discarded unless captured by an assignment), an if/then/else branch (JSON Schema conditional keywords; if holds a pure expression, then/else hold statement lists), a $switch multiway branch (discriminant matched by string form against cases keys, like element-level $switch), a dispatchEvent statement (WHATWG DOM: dispatches a CustomEvent from the handler's current target, with CustomEventInit members detail/bubbles/composed), or the two WHATWG event verbs stopPropagation and preventDefault, each spelled as the member set to true.",oneOf:[{$ref:"#/$defs/ExpressionNode"},{additionalProperties:!1,properties:{else:{items:{$ref:"#/$defs/Statement"},type:"array"},if:{$ref:"#/$defs/ExpressionOperand"},then:{items:{$ref:"#/$defs/Statement"},type:"array"}},required:["if","then"],title:"if / then / else — conditional branch (JSON Schema keyword triple)",type:"object"},{additionalProperties:!1,properties:{$switch:{$ref:"#/$defs/ExpressionOperand"},cases:{additionalProperties:{items:{$ref:"#/$defs/Statement"},type:"array"},type:"object"},default:{items:{$ref:"#/$defs/Statement"},type:"array"}},required:["$switch","cases"],title:"$switch / cases — multiway branch (element-level convention, ECMA switch semantics)",type:"object"},{additionalProperties:!1,properties:{bubbles:{type:"boolean"},composed:{type:"boolean"},detail:{$ref:"#/$defs/ExpressionOperand"},dispatchEvent:{description:"The CustomEvent type to dispatch (WHATWG DOM dispatchEvent).",type:"string"}},required:["dispatchEvent"],title:"dispatchEvent — emit a CustomEvent (WHATWG naming, CustomEventInit members)",type:"object"},{additionalProperties:!1,properties:{stopPropagation:{const:!0,description:"Stop the handler's event at the current target (WHATWG DOM stopPropagation), so an ancestor's handler for the same event does not run. A body run without an event has nothing to stop."}},required:["stopPropagation"],title:"stopPropagation — stop the event here (WHATWG DOM)",type:"object"},{additionalProperties:!1,properties:{preventDefault:{const:!0,description:"Cancel the handler's event's default action (WHATWG DOM preventDefault): a link's navigation, a form's submission, a key's scroll."}},required:["preventDefault"],title:"preventDefault — cancel the event's default action (WHATWG DOM)",type:"object"}]},TP={description:"A structured function body: statements executed sequentially (one yielding a promise is awaited before the next, per ECMA async/await semantics).",items:{$ref:"#/$defs/Statement"},type:"array"}});var JP;var MP=D(()=>{JP={description:'An external class / data source. $prototype is a constructor name (not "Function"). When $prototype is not in the built-in registry, $src is required. All state entries are reactive by default.',properties:{$export:{description:"Named export in $src module. Defaults to the $prototype value.",type:"string"},$prototype:{description:"Constructor name — built-in Web API class or external class name.",examples:["Request","URLSearchParams","FormData","LocalStorage","SessionStorage","Cookie","IndexedDB","Array","Set","Map","Blob","ReadableStream","MarkdownCollection","MyParser"],not:{const:"Function"},type:"string"},$src:{description:"External module specifier. Required when $prototype is not a built-in.",examples:["@jxsuite/md","./lib/my-parser.js","npm:@myorg/data"],type:"string"},autoIncrement:{type:"boolean"},body:{},database:{type:"string"},debounce:{minimum:0,type:"integer"},default:{},description:{type:"string"},domain:{type:"string"},filter:{anyOf:[{$ref:"#/$defs/RefObject"},{description:"A single filter object, e.g. an equality shorthand.",type:"object"},{description:'Ordered filter rules, e.g. [{ field: "Slug", op: "not empty" }].',items:{type:"object"},type:"array"}],description:"Filter configuration: a reactive $ref binding, a single filter object, or an ordered array of rules."},headers:{additionalProperties:{type:"string"},type:"object"},indexes:{items:{properties:{keyPath:{oneOf:[{type:"string"},{items:{type:"string"},type:"array"}]},name:{type:"string"},unique:{type:"boolean"}},required:["name","keyPath"],type:"object"},type:"array"},items:{},key:{type:"string"},keyPath:{type:"string"},manual:{type:"boolean"},map:{$ref:"#/$defs/ElementDef"},maxAge:{type:"integer"},method:{enum:["GET","POST","PUT","PATCH","DELETE","HEAD","OPTIONS"],type:"string"},name:{type:"string"},path:{type:"string"},responseType:{enum:["json","text","blob","arraybuffer","document",""],type:"string"},sameSite:{enum:["strict","lax","none"],type:"string"},secure:{type:"boolean"},sort:{anyOf:[{$ref:"#/$defs/RefObject"},{description:"A single sort rule, e.g. { field, order }.",type:"object"},{description:'Ordered sort rules, e.g. [{ field: "date", order: "desc" }].',items:{type:"object"},type:"array"}],description:"Sort configuration: a reactive $ref binding, a single { field, order } rule, or an ordered array of rules."},src:{description:"Configuration property passed to external class constructor.",type:"string"},store:{type:"string"},timing:{enum:["compiler","server","client"],type:"string"},url:{$ref:"#/$defs/StringOrRef"},version:{minimum:1,type:"integer"}},required:["$prototype"],type:"object"}});var DP;var LP=D(()=>{DP={description:"A reusable JSON Schema type definition for tooling only. No function, no runtime artifact. Referenced from state entries via $ref. Naming convention: PascalCase.",not:{anyOf:[{required:["default"]},{required:["$prototype"]}]},properties:{description:{type:"string"},enum:{type:"array"},examples:{type:"array"},items:{},maxLength:{minimum:0,type:"integer"},maximum:{type:"number"},minLength:{minimum:0,type:"integer"},minimum:{type:"number"},pattern:{type:"string"},properties:{type:"object"},required:{items:{type:"string"},type:"array"},type:{$ref:"#/$defs/JsonSchemaType"}},required:["type"],type:"object"}});var FP,qP,VP,WP,HP,BP,UP,zP,GP,KP,YP,XP,ZP,QP,ej,tj,rj;var nj=D(()=>{Hp();FP={additionalProperties:!1,description:"A JSON Pointer $ref operand within an expression node. $args/<name> resolves a named formula's parameter (callable entries only).",properties:{$ref:{pattern:String.raw`^(\$map/|\$reduce/|\$args/|event#/|#/|parent#/|window#/|document#/)`,type:"string"}},required:["$ref"],type:"object"},qP={anyOf:[{not:{pattern:String.raw`\$\{`},type:"string"},{type:"number"},{type:"boolean"},{type:"null"},{items:{$ref:"#/$defs/ExpressionOperand"},type:"array"},{description:"Plain-object literal (e.g. an Intl options bag). Objects carrying $ref or operator keys are pointers/nodes, never literals.",not:{anyOf:[{required:["$ref"]},{required:["operator"]}]},type:"object"}],description:"A non-reactive operand: scalar, plain-object literal, or array of operands."},VP={anyOf:[{$ref:"#/$defs/ExpressionPointer"},{$ref:"#/$defs/ExpressionNode"},{$ref:"#/$defs/ExpressionLiteral"}],description:"Anything that may appear in target or value: a pointer, a literal, or a nested expression node."},WP={enum:["!","-"]},HP={enum:["+","-","*","/","%","===","!==","<","<=",">",">=","&&","||","??"]},BP={const:"?:"},UP={const:"switch"},zP={const:"call"},GP={description:"A genuine pure String.prototype / Array.prototype / Number.prototype method (spec §19.4d). The ES2023 change-by-copy family (toSorted, toReversed, toSpliced, with) stands in where mutation would otherwise occur. Receiver in target; value carries the argument (bare scalar) or argument list (array).",enum:["includes","indexOf","lastIndexOf","join","slice","concat","at","flat","toSorted","toReversed","toSpliced","with","toUpperCase","toLowerCase","trim","trimStart","trimEnd","split","startsWith","endsWith","padStart","padEnd","replaceAll","repeat","charAt","normalize","toLocaleUpperCase","toLocaleLowerCase","toFixed","toPrecision","toLocaleString"]},KP={enum:["=","+=","-=","*=","/="]},YP={enum:["pop","shift"]},XP={enum:["push","unshift"]},ZP={const:"splice"},QP={const:"reduce"},ej={enum:["map","filter"]},tj={additionalProperties:!1,description:"The core expression node. operator + target, with value gated by arity.",oneOf:[{not:{anyOf:[{required:["value"]},{required:["initial"]}]},properties:{operator:{$ref:"#/$defs/UnaryOperator"}},required:["operator"],title:"Unary — target only, no value"},{not:{required:["initial"]},properties:{operator:{$ref:"#/$defs/BinaryOperator"}},required:["operator","value"],title:"Binary — left in target, right in value"},{not:{required:["initial"]},properties:{operator:{$ref:"#/$defs/AssignmentOperator"},target:{$ref:"#/$defs/ExpressionPointer"}},required:["operator","value"],title:"Assignment — writable target, value required"},{not:{anyOf:[{required:["value"]},{required:["initial"]}]},properties:{operator:{$ref:"#/$defs/NoArgMethod"},target:{$ref:"#/$defs/ExpressionPointer"}},required:["operator"],title:"pop / shift — array receiver, no value"},{not:{required:["initial"]},properties:{operator:{$ref:"#/$defs/OneArgMethod"},target:{$ref:"#/$defs/ExpressionPointer"}},required:["operator","value"],title:"push / unshift — array receiver, single value argument"},{not:{required:["initial"]},properties:{operator:{$ref:"#/$defs/SpliceMethod"},target:{$ref:"#/$defs/ExpressionPointer"},value:{items:{$ref:"#/$defs/ExpressionOperand"},minItems:1,type:"array"}},required:["operator","value"],title:"splice — array receiver, [start, deleteCount, ...items]"},{properties:{operator:{$ref:"#/$defs/ReduceMethod"},target:{anyOf:[{$ref:"#/$defs/ExpressionPointer"},{$ref:"#/$defs/ExpressionNode"}]},value:{$ref:"#/$defs/ExpressionNode"}},required:["operator","value","initial"],title:"reduce — pure fold over a pointer or derived array; seed in initial"},{not:{required:["initial"]},properties:{operator:{$ref:"#/$defs/MapFilterMethod"},target:{anyOf:[{$ref:"#/$defs/ExpressionPointer"},{$ref:"#/$defs/ExpressionNode"}]},value:{$ref:"#/$defs/ExpressionNode"}},required:["operator","value"],title:"map / filter — pure over a pointer or derived array; per-item expression in value"},{description:"The ECMAScript conditional (ternary) operator, pure: target is the test, value the consequent, initial the alternate (the reduce precedent for repurposing initial). Chain else-if by nesting another ?: node in initial.",properties:{operator:{$ref:"#/$defs/ConditionalOperator"}},required:["operator","value","initial"],title:"?: — pure conditional; test in target, consequent in value, alternate in initial"},{description:"Value-keyed multiway selection, pure: target is the discriminant (matched against case keys by its string form, like element-level $switch), cases maps matched values to result operands, default is the operand when no case matches (result is undefined without it). Condition-chain branching composes from nested ?: nodes instead.",not:{anyOf:[{required:["value"]},{required:["initial"]}]},properties:{cases:{additionalProperties:{$ref:"#/$defs/ExpressionOperand"},type:"object"},default:{$ref:"#/$defs/ExpressionOperand"},operator:{$ref:"#/$defs/SwitchOperator"}},required:["operator","cases"],title:"switch — pure value-keyed selection; discriminant in target, results in cases/default"},{description:"A pure standard-library method call: target is the receiver (any operand — never mutated; change-by-copy names replace the mutating originals), value the optional argument (bare scalar) or argument list (array). A missing receiver or method yields undefined, matching null-safe path reads.",not:{required:["initial"]},properties:{operator:{$ref:"#/$defs/PureMethod"}},required:["operator"],title:"Pure method — genuine prototype methods; receiver in target, args in value"},{description:"Invoke a callable, pure in formula position: target is the callee pointer — a named formula entry (#/state/…) or a blessed pure global via window#/ (Math.*, JSON.*, Object.keys/values/entries, and "+`${cx()}) — and value is the positional argument list (the splice args-in-value precedent). Argument order follows the callee's declared parameters.`,not:{required:["initial"]},properties:{operator:{$ref:"#/$defs/CallOperator"},target:{$ref:"#/$defs/ExpressionPointer"},value:{items:{$ref:"#/$defs/ExpressionOperand"},type:"array"}},required:["operator"],title:"call — invoke a named formula or blessed global; callee in target, args in value"}],properties:{cases:{additionalProperties:{$ref:"#/$defs/ExpressionOperand"},description:"switch only: matched discriminant value (string form) → result operand.",type:"object"},default:{$ref:"#/$defs/ExpressionOperand",description:"switch only: result operand when no case key matches."},initial:{$ref:"#/$defs/ExpressionOperand"},operator:{type:"string"},target:{$ref:"#/$defs/ExpressionOperand"},value:{$ref:"#/$defs/ExpressionOperand"}},required:["operator","target"],type:"object"},rj={additionalProperties:!1,description:"A declarative expression entry (Shape 5). Used as a state entry or inline event handler. With parameters it is a named formula: a pure, reusable computation invoked via the call operator, its parameters resolved through $args/<name> refs in the body.",properties:{$description:{type:"string"},$expression:{$ref:"#/$defs/ExpressionNode"},$title:{type:"string"},parameters:{description:"Named-formula parameters (CEM convention, as on Function entries): bare names or CEM parameter objects. Present ⇒ the entry is callable, not a computed value.",items:{anyOf:[{type:"string"},{$ref:"#/$defs/CemParameter"}]},type:"array"}},required:["$expression"],type:"object"}});var sj,ij,oj,aj;var lj=D(()=>{sj={description:"A single state entry. Shape is determined by value type: "+"scalar/array → naked reactive property, string with ${} → computed, "+'object with $prototype: "Function" → function, '+"object with $prototype: <other> → data source, "+"object with type and default → typed reactive property, "+"plain object → naked object reactive property.",oneOf:[{type:"number"},{type:"boolean"},{type:"null"},{type:"string"},{type:"array"},{$ref:"#/$defs/TypedStateDef"},{$ref:"#/$defs/FunctionDef"},{$ref:"#/$defs/ExternalClassDef"},{$ref:"#/$defs/ExpressionEntry"},{not:{anyOf:[{required:["$prototype"]},{required:["default"]},{required:["type"]},{required:["$expression"]}]},type:"object"}]},ij={additionalProperties:{$ref:"#/$defs/StateEntry"},description:"Map of runtime variables. Keys are camelCase (public) or #-prefixed (private). All entries are reactive by default.",type:"object"},oj={additionalProperties:{$ref:"#/$defs/TypeDefEntry"},description:"Map of reusable JSON Schema type definitions. Keys are PascalCase type names. No runtime artifacts are produced.",type:"object"},aj={description:"A $defs type definition entry. Must be a pure JSON Schema type definition or a class definition (.class.json format).",oneOf:[{$ref:"#/$defs/PureTypeDef"},{$ref:"#/$defs/ClassDef"}]}});var wW,zh,Gh,Kh,Yh,Xh,Zh,Qh,eg,tg,cj;var uj=D(()=>{wW=["method","accessor","parse","serialize","rewrite","discover","load","projectData","resolvePaths","lower","emit","head","assets","mount","dialect","deploySchema","bindings","testConnection"],zh={description:"A typed parameter definition for a class.",properties:{default:{},description:{type:"string"},examples:{type:"array"},format:{description:`When "json-schema", this parameter's value is itself a JSON Schema.`,type:"string"},identifier:{type:"string"},type:{}},required:["identifier"],type:"object"},Gh={description:"A class field definition with access control and scope.",properties:{$prototype:{description:'Data source prototype for this field (e.g., "Request").',type:"string"},access:{enum:["public","private","protected"],type:"string"},default:{},description:{type:"string"},examples:{type:"array"},identifier:{type:"string"},initializer:{},role:{const:"field",type:"string"},scope:{enum:["instance","static"],type:"string"},type:{}},type:"object"},Kh={description:"Class constructor definition.",properties:{$prototype:{const:"Function",type:"string"},body:{oneOf:[{type:"string"},{items:{type:"string"},type:"array"}]},description:{type:"string"},parameters:{items:{oneOf:[{additionalProperties:!1,properties:{$ref:{type:"string"}},required:["$ref"],type:"object"},{$ref:"#/$defs/ClassParameterDef"}]},type:"array"},role:{const:"constructor",type:"string"},superCall:{properties:{arguments:{items:{type:"string"},type:"array"}},type:"object"}},type:"object"},Yh={description:"A class method or accessor definition. Capability roles (parse, serialize, rewrite, discover, load) mark static methods that hosts (compiler, server, studio) invoke for format dispatch.",properties:{$prototype:{const:"Function",type:"string"},access:{enum:["public","private","protected"],type:"string"},body:{oneOf:[{type:"string"},{items:{type:"string"},type:"array"}]},description:{type:"string"},getter:{properties:{body:{type:"string"}},type:"object"},identifier:{type:"string"},parameters:{items:{oneOf:[{additionalProperties:!1,properties:{$ref:{type:"string"}},required:["$ref"],type:"object"},{$ref:"#/$defs/ClassParameterDef"}]},type:"array"},returnType:{},role:{enum:wW,type:"string"},scope:{enum:["instance","static"],type:"string"},setter:{properties:{body:{type:"string"},parameters:{type:"array"}},type:"object"},timing:{description:"Execution environments allowed to call this capability directly. Hosts outside the list round-trip through the dev server.",items:{enum:["compiler","server","client"],type:"string"},type:"array"}},type:"object"},Xh={description:"Format participation marker. A class carrying this block is auto-discovered from the project imports map and used for file-extension dispatch by the compiler, server, and studio.",properties:{documentKinds:{description:'"page"/"component" allow the extension in pages/components discovery; "content" allows it as a content-type source.',items:{enum:["page","component","content"],type:"string"},type:"array"},exportTarget:{description:"When true, site builds emit a serialized sidecar per page in this format.",type:"boolean"},extensions:{description:'File extensions this format claims, with leading dot (e.g. [".md"]).',items:{pattern:String.raw`^\.`,type:"string"},minItems:1,type:"array"},mediaType:{description:"MIME type for the format (icons, labels, HTTP).",type:"string"},remote:{description:"When true, the load capability accepts http(s) URLs as sources.",type:"boolean"}},required:["extensions"],type:"object"},Zh={additionalProperties:!1,description:"Project-section admission block (specs/extensions.md §9). A class carrying this block owns "+"the project.json section named by `key`; hosts dispatch that section's data through the class's projectData/resolvePaths capabilities.",properties:{description:{type:"string"},key:{description:"The project.json top-level section this class owns (exclusive per project).",type:"string"},referenceable:{description:"Whether section entries can be referenced from documents (e.g. content types).",type:"boolean"},title:{type:"string"}},required:["key"],type:"object"},Qh={additionalProperties:!1,description:"Server-mount admission block (specs/extensions.md §11). A class carrying this block mounts "+"routes under its /_jx/ basePath in the site worker and dev server.",properties:{basePath:{description:"Route subtree this class mounts — must be under /_jx/ (exclusive per project).",examples:["/_jx/data","/_jx/auth"],type:"string"},module:{description:"Module specifier exporting the mount handler.",type:"string"},order:{description:"Mount order (ascending; default 100).",type:"number"}},required:["basePath"],type:"object"},eg={description:"Connection-provider admission block (specs/extensions.md §12). A class carrying this block "+"provides database connections of the given provider/kind.",properties:{kind:{description:"SQL dialect family the provider speaks.",enum:["sqlite","postgres"],type:"string"},local:{description:"Local-development substitute provider (e.g. sqlite for D1).",type:"string"},module:{description:"Module specifier exporting the provider implementation.",type:"string"},provider:{description:"Provider identifier (e.g. d1, supabase, sqlite).",type:"string"},serve:{description:"Module specifier exporting the serve-time worker binding.",type:"string"}},required:["provider","kind"],type:"object"},tg={description:"Studio control-surface hints for a format class: editor modes, document-mode rules, templates, and the element/nesting constraints that gate structural editing.",properties:{documentMode:{properties:{componentWhen:{description:"Treat the document as a component when this top-level/frontmatter key matches the regex.",properties:{frontmatterKey:{type:"string"},matches:{type:"string"}},type:"object"},default:{enum:["content","component"],type:"string"}},type:"object"},elements:{description:"Element allowlist and nesting constraints for structural editing.",properties:{block:{items:{type:"string"},type:"array"},inline:{items:{type:"string"},type:"array"},nesting:{additionalProperties:{properties:{block:{type:"boolean"},directive:{type:"boolean"},inline:{type:"boolean"},only:{items:{type:"string"},type:"array"}},type:"object"},description:'Per-parent child rules keyed by tag (or "_root"): { block, inline, directive } booleans or { only: [tags] }.',type:"object"},textOnly:{items:{type:"string"},type:"array"},void:{items:{type:"string"},type:"array"}},type:"object"},icon:{type:"string"},modes:{description:"Editor modes the studio offers for documents of this format.",items:{type:"string"},type:"array"},newFileTemplate:{description:"Initial source text for newly created files of this format.",type:"string"}},type:"object"},cj={additionalProperties:!1,description:'A .class.json schema-defined class. $prototype must be "Class". Defines fields, constructor, methods, and type parameters via $defs. Optionally points to a JS module via $implementation for hybrid execution.',properties:{$defs:{description:"Class members: parameters, returnTypes, fields, constructor, methods.",properties:{constructor:{$ref:"#/$defs/ClassConstructorDef"},fields:{additionalProperties:{$ref:"#/$defs/ClassFieldDef"},description:"Class fields with role, access, scope, and type information.",type:"object"},methods:{additionalProperties:{$ref:"#/$defs/ClassMethodDef"},description:"Class methods and accessors.",type:"object"},parameters:{additionalProperties:{$ref:"#/$defs/ClassParameterDef"},description:"Reusable typed parameter schemas, keyed by name.",type:"object"},returnTypes:{additionalProperties:{type:"object"},description:"Output type schemas, keyed by name.",type:"object"}},type:"object"},$id:{type:"string"},$implementation:{description:"Relative path to a JS module containing the actual class implementation.",type:"string"},$prototype:{const:"Class",type:"string"},$schema:{type:"string"},$studio:{$ref:"#/$defs/StudioHints"},connector:{$ref:"#/$defs/ConnectorBlockDef"},description:{type:"string"},extends:{description:"Base class — string name or $ref to another .class.json.",oneOf:[{type:"string"},{properties:{$ref:{type:"string"}},required:["$ref"],type:"object"}]},format:{$ref:"#/$defs/FormatDef"},project:{$ref:"#/$defs/ProjectBlockDef"},server:{$ref:"#/$defs/ServerBlockDef"},title:{description:"PascalCase class name, used as the export name.",type:"string"}},required:["$prototype","title"],type:"object"}});var fj;var dj=D(()=>{fj={additionalProperties:!1,description:"Schema for jx-extension.json manifests. Located at the extension package root and exported so hosts can resolve <package>/jx-extension.json through the exports map.",properties:{$schema:{type:"string"},classes:{additionalProperties:{type:"string"},description:"$prototype-visible class name → class descriptor path, relative to the manifest.",type:"object"},description:{description:"One-line description.",type:"string"},name:{description:"Package name; must match package.json.",type:"string"},schemas:{additionalProperties:!1,description:"Schema fragments this package contributes, relative to the manifest.",properties:{document:{description:"Document-schema fragment (positions like $paths values).",type:"string"},fields:{description:"Field-union fragment: its $defs members are unioned into the per-project "+"field-schema resource as extension field extras (specs/extensions.md §5.3).",type:"string"},project:{description:"Project-schema fragment (top-level project.json sections).",type:"string"}},type:"object"},title:{description:"Human-readable name for studio surfaces.",type:"string"}},required:["name"],type:"object"}});var Ef;var pj=D(()=>{Ef={description:"Image optimization configuration for the project.",properties:{formats:{items:{type:"string"},type:"array"},lazyLoad:{type:"boolean"},optimize:{type:"boolean"},picture:{description:"Wrap a multi-format image in a <picture> with one <source> per format (default true). With it off the <img> carries a srcset in the preferred format alone, which browsers that cannot decode that format will still select from.",type:"boolean"},quality:{properties:{avif:{type:"number"},jpeg:{type:"number"},png:{type:"number"},webp:{type:"number"}},type:"object"},remoteDomains:{description:'Hostnames whose remote (https) images are optimized through /cdn-cgi/image transform URLs (cloudflare service only), e.g. ["drive.usercontent.google.com"]. Remote sources from other hosts are left untouched.',items:{type:"string"},type:"array"},service:{description:'How images are optimized: "build" runs Sharp at build time; "cloudflare" emits /cdn-cgi/image transform URLs served by Cloudflare Image Transformations (requires the feature to be enabled on the serving zone).',enum:["build","cloudflare"],type:"string"},sizes:{type:"string"},widths:{items:{type:"number"},type:"array"}},type:"object"}});var vW,rg;var mj=D(()=>{Xi();vW=[301,302,303,307,308],rg={description:"Schema for Jx project.json files. A project.json file is the root anchor file for a Jx project, declaring site metadata, default settings, global styles, extensions, and build configuration. Open by design: extension-contributed sections (e.g. `content`) are opaque top-level keys; the generated per-project entry document (project.schema.json) closes the composition.",properties:{$defs:{description:"Global type definitions available to all pages.",type:"object"},$elements:{description:"Global custom element dependencies available to all pages. Items are $ref objects or npm package specifier strings.",items:{oneOf:[{additionalProperties:!1,properties:{$ref:{type:"string"}},required:["$ref"],type:"object"},{type:"string"}]},type:"array"},$head:{description:"Global <head> entries applied to all pages. Array of element definitions for meta tags, link tags, script tags, etc.",examples:[[{attributes:{href:"/favicon.svg",rel:"icon"},tagName:"link"},{attributes:{content:"Jx",name:"generator"},tagName:"meta"}]],items:{properties:{attributes:{additionalProperties:{type:"string"},type:"object"},tagName:{type:"string"}},type:"object"},type:"array"},$media:{additionalProperties:{type:"string"},description:'Named media breakpoints following CSS @custom-media convention. Available in all component style objects. Declaring a pure color-scheme query (e.g. "--dark": "(prefers-color-scheme: dark)") additionally opts the site into the forced-scheme contract: @--dark style blocks are dual-emitted so a data-color-scheme attribute on <html> overrides the OS preference, color-scheme is declared on :root, and a pre-paint script restores the '+"visitor's persisted choice (spec §9.5).",examples:[{"--dark":"(prefers-color-scheme: dark)","--lg":"(min-width: 1024px)","--md":"(min-width: 768px)","--sm":"(min-width: 640px)"}],type:"object"},$schema:{description:"Relative path to the generated per-project schema (conventionally ./project.schema.json, written by `jx schema`).",type:"string"},build:{description:"Build configuration.",properties:{adapter:{description:"Platform adapter for deployment-specific output.",enum:["static","cloudflare-pages","cloudflare-workers","node","bun"],type:"string"},deploy:{additionalProperties:!1,description:"Deployment tracking: the hosting project this repo publishes to. Identifiers "+"only (no secrets) — safe to commit; Studio uses it to tell whether the publish "+"workflow already exists. `adapter` says how the build is packaged; `deploy` says where it ships.",properties:{accountId:{description:"Hosting account id (e.g. the Cloudflare account id).",type:"string"},productionUrl:{description:"Production URL of the connected hosting project.",type:"string"},projectName:{description:"Hosting project name (e.g. the Cloudflare Pages project).",pattern:"^[a-z0-9][a-z0-9-]*$",type:"string"},provider:{description:"Hosting provider the project is connected to.",enum:["cloudflare-pages"],type:"string"}},required:["provider","accountId","projectName"],type:"object"},format:{default:"directory",description:"Reserved; currently unused. Accepted for forward compatibility with single-file output (desktop single-file mode) — the build emits per-route directories regardless.",enum:["directory","single"],type:"string"},outDir:{default:"./dist",description:"Output directory for compiled site.",type:"string"},headers:{additionalProperties:!1,description:"Emit dist/_headers — the response headers only the build can know. Honored by "+"Cloudflare Pages/Workers assets and Netlify; on the node/bun adapters the file documents what a reverse proxy in front of them must send.",properties:{cache:{default:"auto",description:'"auto" marks the content-addressed image variants immutable (RFC 8246) and revalidates everything else (RFC 9111). "off" emits no Cache-Control at all.',enum:["auto","off"],type:"string"},enabled:{default:!0,type:"boolean"},rules:{additionalProperties:{additionalProperties:{type:"string"},type:"object"},description:"Verbatim rules, merged after the generated block.",propertyNames:{pattern:"^/"},type:"object"},security:{additionalProperties:!1,properties:{contentTypeOptions:{default:!0,type:"boolean"},csp:{default:!1,description:"CSP Level 3. Off by default: unlike the other security headers this one "+"governs code the build cannot see — a third-party script that loads a "+"second script, a widget that opens a frame — so turning it on is a change "+"to verify in the browser console, not a safe default. `script-src` is derived from the inline scripts and external origins the build emitted; `style-src` keeps 'unsafe-inline', because per-page <style> blocks and per-element style attributes have no site-wide hash.",oneOf:[{type:"boolean"},{const:"report-only"},{additionalProperties:!1,properties:{directives:{additionalProperties:{oneOf:[{type:"string"},{const:!1}]},description:"Replace (string) or remove (false) a computed directive. A replacement is wholesale, so an addition restates the defaults.",type:"object"},mode:{default:"enforce",enum:["enforce","report-only"]},reportUri:{format:"uri-reference",type:"string"}},type:"object"}]},frameOptions:{default:"SAMEORIGIN",oneOf:[{enum:["DENY","SAMEORIGIN"],type:"string"},{const:!1}]},hsts:{default:!1,description:"RFC 6797. Off by default: a wrong max-age locks the apex domain to HTTPS for that long, and the mistake is invisible until a certificate lapses. `preload` requires `includeSubDomains` and is a build error without it.",oneOf:[{type:"boolean"},{additionalProperties:!1,properties:{includeSubDomains:{default:!0,type:"boolean"},maxAge:{default:31536000,minimum:0,type:"integer"},preload:{default:!1,type:"boolean"}},type:"object"}]},permissionsPolicy:{default:"camera=(), microphone=(), geolocation=()",oneOf:[{type:"string"},{const:!1}]},referrerPolicy:{default:"strict-origin-when-cross-origin",oneOf:[{enum:["no-referrer","no-referrer-when-downgrade","origin","origin-when-cross-origin","same-origin","strict-origin","strict-origin-when-cross-origin","unsafe-url"],type:"string"},{const:!1}]}},type:"object"}},type:"object"},sitemap:{default:!0,description:"Generate sitemap.xml from the route table (requires `url`). Set false to disable.",type:"boolean"},trailingSlash:{default:"always",description:"Trailing slash behavior for generated URLs.",enum:["always","never","ignore"],type:"string"}},type:"object"},copy:{additionalProperties:{type:"string"},description:"Declarative file copy map. Keys are source paths (relative to project root), values are destination paths (relative to outDir).",type:"object"},defaults:{description:"Default settings applied to all pages unless overridden.",properties:{charset:{default:"utf8",description:"Default charset for the page.",type:"string"},dir:{description:"Base direction for the <html> element. Omitted when unset — a page's `$dir` "+"overrides it. Right-to-left content renders left-to-right without this.",enum:["ltr","rtl","auto"],type:"string"},lang:{default:"en",description:"Default lang attribute for the <html> element. A page's `$lang` overrides it.",type:"string"},layout:{default:null,description:"Default layout file path applied to all pages. Set to null to render pages without a layout.",examples:["./layouts/base.json"],oneOf:[{type:"string"},{type:"null"}]},shadow:{default:!1,description:"Default shadow-DOM mode for every component (spec.md §16.6). Off unless set: a "+"shadow root isolates component styles from the page and replaces the <slot> emulation with real slot distribution. A component's own `$shadow` overrides this in both directions.",oneOf:[{enum:["open","closed"],type:"string"},{const:!1,type:"boolean"}]}},type:"object"},extensions:{description:"Extension packages: bare package names (resolved project-first through the package exports map) or relative paths. Each must export jx-extension.json.",examples:[["@jxsuite/parser"]],items:{type:"string"},type:"array"},manifest:{additionalProperties:!1,description:'W3C Web App Manifest, emitted as manifest.webmanifest with a <link rel="manifest"> on every page. Absent means no manifest: it is a claim that a site is meant to be installed, and most are not.',properties:{backgroundColor:{type:"string"},categories:{items:{type:"string"},type:"array"},description:{type:"string"},dir:{enum:["ltr","rtl","auto"],type:"string"},display:{default:"standalone",enum:["fullscreen","standalone","minimal-ui","browser"],type:"string"},enabled:{default:!0,type:"boolean"},icons:{description:"Icons at 192px and 512px are what browsers require before offering to install the site; the build warns when either is missing.",items:{additionalProperties:!1,properties:{purpose:{type:"string"},sizes:{examples:["192x192"],type:"string"},src:{type:"string"},type:{type:"string"}},required:["src"],type:"object"},type:"array"},lang:{type:"string"},name:{description:"Defaults to the project name.",type:"string"},orientation:{type:"string"},scope:{type:"string"},shortName:{type:"string"},startUrl:{default:"/",type:"string"},themeColor:{type:"string"}},type:"object"},serviceWorker:{default:!1,description:"W3C Service Worker, emitted as sw.js. Off unless declared — a worker is sticky, so it "+"is the one output that can keep breaking visitors after a deploy tries to fix them. **Turning it off means `false`, not deleting the key**: `false` emits a tombstone at the same URL that unregisters the old worker and clears its caches, and a 404 there is not an instruction to stop. HTML is always network-first; only the content-addressed /images/_optimized/* is served cache-first.",oneOf:[{type:"boolean"},{additionalProperties:!1,properties:{enabled:{default:!0,type:"boolean"},offlineFallback:{description:"Page served for a failed navigation. Added to `precache` if not already there.",type:"string"},precache:{description:"Site-absolute URLs fetched at install time. Each must be a file this build produces; one that is not fails the build, because a single unreachable entry stops the worker installing at all.",items:{pattern:"^/",type:"string"},type:"array"},scope:{default:"/",type:"string"}},type:"object"}]},securityTxt:{additionalProperties:!1,description:"RFC 9116 security.txt, emitted at .well-known/security.txt. `expires` is required by "+"§2.5.5 and an absent or past value is a build error — an expired file advertises a "+"reporting channel while telling the reporter not to trust it. A hand-placed public/.well-known/security.txt shadows this, which is how a clearsigned file ships.",properties:{acknowledgments:{items:{type:"string"},type:"array"},canonical:{type:"string"},contact:{description:"At least one mailto:, https: or tel: URI (§2.5.3).",items:{type:"string"},type:"array"},enabled:{default:!0,type:"boolean"},encryption:{items:{type:"string"},type:"array"},expires:{format:"date-time",type:"string"},hiring:{items:{type:"string"},type:"array"},policy:{items:{type:"string"},type:"array"},preferredLanguages:{description:"BCP 47 tags, validated and canonicalized like i18n.locales.",items:{pattern:lu,type:"string"},type:"array"}},type:"object"},i18n:{description:"Internationalization configuration.",properties:{defaultLocale:{description:"Default locale, as a BCP 47 language tag. The pattern catches shape errors (`en_US`, `en--US`); the build is the authority on well-formedness.",examples:["en"],pattern:lu,type:"string"},locales:{description:"Available locales, as BCP 47 language tags.",examples:[["en","fr","de"]],items:{pattern:lu,type:"string"},type:"array"},routing:{description:"Locale routing strategy.",enum:["prefix-except-default","prefix-always"],type:"string"}},type:"object"},images:{$ref:"#/$defs/ImageConfig"},imports:{additionalProperties:{type:"string"},description:"Global import map: $prototype names to .class.json file paths. Makes external classes available by name in all pages.",examples:[{Markdown:"@jxsuite/parser/Markdown.class.json",MarkdownCollection:"@jxsuite/parser/MarkdownCollection.class.json"}],type:"object"},name:{default:"Jx Site",description:"Human-readable project name.",examples:["My Portfolio","Jx Example Site"],type:"string"},redirects:{additionalProperties:{oneOf:[{description:"Destination path or URL; implies a 301.",type:"string"},{additionalProperties:!1,description:"A redirect with an explicit RFC 9110 §15.4 status.",properties:{destination:{type:"string"},status:{default:301,description:"RFC 9110 §15.4 redirection status. 307 and 308 preserve the request method; "+"301 and 302 historically do not.",enum:[...vW],type:"integer"}},required:["destination"],type:"object"},{additionalProperties:!1,description:"A rewrite (proxy): the destination's content is served AT the source URL, with no "+"redirect. Emitted as status 200 in `_redirects`, which is the host convention — "+"not an HTTP redirection status.",properties:{destination:{type:"string"},rewrite:{const:!0,type:"boolean"}},required:["destination","rewrite"],type:"object"}]},description:"Static redirect and rewrite rules. Keys are source paths in URLPattern pathname syntax.",examples:[{"/api/*":{destination:"https://api.example.com/*",rewrite:!0},"/legacy/*":{destination:"/archive/*",status:308},"/old-about":"/about"}],propertyNames:{pattern:"^/"},type:"object"},state:{description:"Site-wide reactive state available to all pages.",type:"object"},style:{additionalProperties:{oneOf:[{type:"string"},{type:"number"},{$ref:"#/$defs/StyleObject"}]},description:"Global CSS styles applied to the <body> element. Uses the same camelCase CSSOM convention and recursive selector/at-rule nesting as component styles.",type:"object"},url:{description:"Production URL of the deployed site.",examples:["https://example.com","https://jxsuite.com"],type:"string"}},type:"object"}});function SW(){return hj??=EW(),hj}async function EW(){let[e,t,r]=await Promise.all([yj.listAll(),bj.default.listAll(),xj.default.parseAll()]),n=new Set;for(let{elements:c}of Object.values(e))for(let u of c)if(!u.obsolete)n.add(u.name);let s=[...n].toSorted(),i=new Set;for(let c of t.properties)for(let u of c.styleDeclaration??[])i.add(u);let o=[...i].toSorted(),a=new Set;for(let c of Object.values(r))for(let u of c){if(u.type!=="interface"&&u.type!=="interface mixin")continue;if(!u.members)continue;for(let p of u.members)if(p.type==="attribute"&&p.name?.startsWith("on")&&p.idlType?.idlType==="EventHandler")a.add(p.name)}let l=[...a].toSorted();return{cssProps:o,eventHandlers:l,tagExamples:s}}function PW(e){let t={};for(let r of e)t[r]={description:`Event handler for the "${r.slice(2)}" event.`,oneOf:[{$ref:"#/$defs/RefObject"},{$ref:"#/$defs/ExpressionEntry"},{$ref:"#/$defs/FunctionDef"}]};return t}function jW(e){let t={...Sf.properties};for(let r of e)t[r]={oneOf:[{type:"string"},{type:"number"},{$ref:"#/$defs/RefObject"}]};return t}async function kW(){let{tagExamples:e,cssProps:t,eventHandlers:r}=await SW();return{$defs:{DefsMap:oj,TypeDefEntry:aj,StateMap:ij,StateEntry:sj,TypedStateDef:AP,PureTypeDef:DP,FunctionDef:OP,ClassDef:cj,ClassParameterDef:zh,ClassFieldDef:Gh,ClassConstructorDef:Kh,ClassMethodDef:Yh,FormatDef:Xh,ProjectBlockDef:Zh,ServerBlockDef:Qh,ConnectorBlockDef:eg,StudioHints:tg,ExternalClassDef:JP,ExpressionPointer:FP,ExpressionLiteral:qP,ExpressionOperand:VP,UnaryOperator:WP,BinaryOperator:HP,ConditionalOperator:BP,SwitchOperator:UP,CallOperator:zP,PureMethod:GP,AssignmentOperator:KP,NoArgMethod:YP,OneArgMethod:XP,SpliceMethod:ZP,ReduceMethod:QP,MapFilterMethod:ej,ExpressionNode:tj,ExpressionEntry:rj,Statement:NP,StatementList:TP,ElementDef:{...Uh,properties:{...Uh.properties,...PW(r)}},ChildrenValue:wP,ArrayNamespace:$P,SwitchDef:jP,SwitchNode:kP,StyleObject:{...Sf,properties:jW(t)},AttributesObject:SP,PropsObject:EP,RefObject:gP,AnyRef:hP,InternalRef:cP,StateRef:uP,ExternalRef:fP,ExternalComponentRef:yP,GlobalRef:dP,ParentRef:pP,MapRef:mP,ElementPropertyValue:PP,StringOrRef:Z1,BoolOrRef:Q1,NumberOrRef:eP,CemParameter:sP,CemEvent:iP,TagName:{...Y1,examples:[...e,"my-counter","todo-app","user-card"]},TagExpression:z1,ElementTagName:G1,JsonSchemaType:aP,HeadEntry:rP,ImageConfig:Ef,PathsValue:{$id:oo,anyOf:[...Hl,Dh],description:"Default $paths source union: the core shapes, plus a catch-all for source shapes contributed by extensions this schema cannot see. The project's generated document.schema.json replaces this with the exact set its extensions provide."}},$id:"https://jxsuite.com/schema/v1",$schema:"https://json-schema.org/draft/2020-12/schema",additionalProperties:{$ref:"#/$defs/ElementPropertyValue"},description:"Schema for Jx component files. A Jx document is a JSON object that declaratively describes a reactive web component: its structure (DOM tree), styling, type definitions ($defs), runtime state, and inline or external functions. Reactivity is powered by @vue/reactivity.",properties:{$defs:{$ref:"#/$defs/DefsMap",description:"Pure JSON Schema type definitions for this component. "+"All entries are reusable type schemas — no runtime artifacts are produced. "+"Referenced from state entries via $ref. Naming convention: PascalCase."},$elements:{description:"Custom element dependencies. Items are either $ref objects pointing to JX element definitions, or bare npm package name strings for web component libraries.",items:{oneOf:[{additionalProperties:!1,properties:{$ref:{type:"string"}},required:["$ref"],type:"object"},{description:"npm package specifier (must declare customElements in package.json)",type:"string"}]},type:"array"},$head:{description:"Page-level <head> entries. Array of head entries for meta tags, link tags, script tags, etc. Merged with layout and site-level $head entries.",items:{$ref:"#/$defs/HeadEntry"},type:"array"},$id:{description:"Component identifier string. Used by tooling and the builder.",examples:["Counter","TodoApp","UserCard"],type:"string"},$dir:{description:"Base direction for this page's <html> element, overriding `defaults.dir`. Right-to-left content renders left-to-right without it.",enum:["ltr","rtl","auto"],type:"string"},$lang:{description:"Language tag for this page's <html> element, overriding `defaults.lang` "+"(site-architecture.md §8.4).",examples:["en","fr","ar-EG"],type:"string"},$translationKey:{description:"This page's identity across languages, overriding the one its path implies "+"(site-architecture.md §13.5). Two routes are translations when their keys match; "+"the default key is the path with the locale prefix removed, which is right whenever "+"the paths are parallel and wrong for a localized slug — /fr-ca/a-propos/ shares "+"nothing with /about/ until one of them says so.",examples:["about","blog/hello-world"],type:"string"},$layout:{description:"Layout reference for pages. String path to a layout JSON file, or false to opt out of the default layout.",examples:["./layouts/base.json"],oneOf:[{type:"string"},{const:!1,type:"boolean"}]},$shadow:{description:"Render this component into a shadow root instead of the light DOM (spec.md §16.6). "+"Off unless set: a shadow root isolates the component's styles from the page and replaces the <slot> emulation with real slot distribution, so it changes how the "+"component composes. Overrides `defaults.shadow` in both directions — `false` opts "+"one component out of a project that opted in.",oneOf:[{enum:["open","closed"],type:"string"},{const:!1,type:"boolean"}]},$sitemap:{description:"Set false to exclude this page from sitemap.xml (site-architecture.md §8.4.1). "+"Every other page with a URL is included.",type:"boolean"},$media:{additionalProperties:{type:"string"},description:'Named media breakpoints following CSS @custom-media convention. Keys use the CSS custom property -- prefix. Pure color-scheme queries (e.g. "--dark": "(prefers-color-scheme: dark)") are dual-emitted so a data-color-scheme attribute on the root element forces the scheme '+"regardless of the OS preference (spec §9.5).",examples:[{"--dark":"(prefers-color-scheme: dark)","--md":"(min-width: 768px)","--sm":"(min-width: 640px)"}],type:"object"},$paths:{$ref:oo,description:"Dynamic route source for a page: expands one page per entry at build time. One of the core shapes (explicit `values`, a `$ref` data file, or a bare array of parameter objects) or a source shape contributed by an enabled extension, such as the parser's `contentType`."},$schema:{description:"URI identifying the Jx dialect version. Enables schema-aware IDE tooling.",examples:["https://jxsuite.com/schema/v1"],type:"string"},attributes:{$ref:"#/$defs/AttributesObject"},cases:{additionalProperties:{oneOf:[{$ref:"#/$defs/ElementDef"},{$ref:"#/$defs/ExternalComponentRef"}]},description:"Switch cases object. Maps case values to element definitions or external component refs. Used alongside $switch for dynamic component rendering.",type:"object"},children:{$ref:"#/$defs/ChildrenValue"},imports:{additionalProperties:{type:"string"},description:"Import map: $prototype names to .class.json file paths. Allows state entries to reference external classes by name without $src.",type:"object"},observedAttributes:{description:"HTML attributes the custom element watches for changes. Follows the Web Components observedAttributes convention.",items:{type:"string"},type:"array"},state:{$ref:"#/$defs/StateMap",description:"Runtime variables for this component. All entries are reactive by default. Entry shape is determined by value type: "+"scalar/array → reactive property, string with ${} → computed, "+"object with $prototype → function or data source, "+"object with type and default → typed reactive property."},style:{$ref:"#/$defs/StyleObject"},tagName:{$ref:"#/$defs/TagName"},title:{$ref:"#/$defs/StringOrRef",description:"Page title. Can be a static string or a template string with ${} expressions."}},title:"Jx Document",type:"object"}}function _W(){return{$defs:{ImageConfig:Ef,StyleObject:$j},$id:"https://jxsuite.com/schema/project/v1",$schema:"https://json-schema.org/draft/2020-12/schema",description:"Schema for Jx project.json files. A project.json file is the root anchor file for a Jx project, declaring site metadata, default settings, global styles, extensions, and build configuration. Open by design: extension-contributed sections are opaque top-level keys; the generated per-project entry document (project.schema.json) closes the composition.",properties:rg.properties,title:"Jx Project",type:"object"}}function AW(){return{$defs:{ImageConfig:Ef,JxFieldSchema:y1,RelationshipRef:b1,StyleObject:$j},$id:"https://jxsuite.com/schema/project/core/v2",$schema:"https://json-schema.org/draft/2020-12/schema",description:"Core fragment of the Jx project.json schema. Open by design: extension fragments contribute their own top-level sections and the generated per-project entry document "+"(project.schema.json) closes the composition. See specs/extensions.md §5.",properties:rg.properties,title:"Jx Project Core",type:"object"}}function RW(){return{$id:Wl,$schema:"https://json-schema.org/draft/2020-12/schema",anyOf:[{$ref:"https://jxsuite.com/schema/project/core/v2#/$defs/JxFieldSchema"},{$ref:"https://jxsuite.com/schema/project/core/v2#/$defs/RelationshipRef"}],description:"Default field-schema union for section entry schemas: the core field shape plus relationship references. Per-project entry documents override this resource with the "+"effective union. See specs/extensions.md §5.3.",title:"Jx Project Field Union"}}function OW(){return{$id:oo,$schema:"https://json-schema.org/draft/2020-12/schema",anyOf:[...Hl,Dh],description:"Default $paths-value union for documents: the core source shapes. Per-project entry documents override this resource with those members PLUS every extension-contributed paths shape.",title:"Jx Document Paths Union"}}function CW(){return{$id:"https://jxsuite.com/schema/extension-manifest/v1",$schema:"https://json-schema.org/draft/2020-12/schema",title:"Jx Extension Manifest",...fj}}function ng(){return{$defs:{ClassConstructorDef:Kh,ClassFieldDef:Gh,ClassMethodDef:Yh,ClassParameterDef:zh,ConnectorBlockDef:eg,FormatDef:Xh,ProjectBlockDef:Zh,ServerBlockDef:Qh,StudioHints:tg},$id:"https://jxsuite.com/schema/class/v1",$schema:"https://json-schema.org/draft/2020-12/schema",additionalProperties:!1,description:"Schema for Jx .class.json files. A class definition describes a schema-defined class with fields, constructor, methods, and type parameters. Optionally points to a JS module via $implementation for hybrid execution.",properties:{$defs:{description:"Class members: parameters, returnTypes, fields, constructor, methods.",properties:{constructor:{$ref:"#/$defs/ClassConstructorDef"},fields:{additionalProperties:{$ref:"#/$defs/ClassFieldDef"},description:"Class fields with role, access, scope, and type information.",type:"object"},methods:{additionalProperties:{$ref:"#/$defs/ClassMethodDef"},description:"Class methods and accessors.",type:"object"},parameters:{additionalProperties:{$ref:"#/$defs/ClassParameterDef"},description:"Reusable typed parameter schemas, keyed by name.",type:"object"},returnTypes:{additionalProperties:{type:"object"},description:"Output type schemas, keyed by name.",type:"object"}},type:"object"},$id:{type:"string"},$implementation:{description:"Relative path to a JS module containing the actual class implementation.",examples:["./md.js","./lib/calculator.js"],type:"string"},$prototype:{const:"Class",description:'Must be "Class" for class definition files.',type:"string"},$schema:{type:"string"},$studio:{$ref:"#/$defs/StudioHints"},connector:{$ref:"#/$defs/ConnectorBlockDef"},description:{type:"string"},extends:{description:"Base class — string name or $ref to another .class.json.",oneOf:[{type:"string"},{additionalProperties:!1,properties:{$ref:{type:"string"}},required:["$ref"],type:"object"}]},format:{$ref:"#/$defs/FormatDef"},project:{$ref:"#/$defs/ProjectBlockDef"},server:{$ref:"#/$defs/ServerBlockDef"},title:{description:"PascalCase class name, used as the export name.",examples:["MarkdownFile","DataSource","Calculator"],type:"string"}},required:["$prototype","title"],title:"Jx Class Definition",type:"object"}}async function NW(e){let{mkdirSync:t,writeFileSync:r}=await import("node:fs"),{resolve:n,dirname:s}=await import("node:path"),i=s(n(e,"..")),o=await kW(),a=_W(),l=ng(),c=AW(),u=CW(),p=RW(),h=OW(),m=JSON.stringify(o,null,2),b=JSON.stringify(a,null,2),g=JSON.stringify(l,null,2),y=JSON.stringify(c,null,2),w=JSON.stringify(u,null,2),P=JSON.stringify(p,null,2),S=JSON.stringify(h,null,2),[E]=process.argv.slice(2);if(E)r(E,m,"utf8"),console.error(`Jx component schema written to ${E}`);else{r(n(i,"schema.json"),m,"utf8"),r(n(i,"project-schema.json"),b,"utf8"),r(n(i,"class-schema.json"),g,"utf8"),t(n(i,"schemas"),{recursive:!0}),r(n(i,"schemas","project.core.schema.json"),y,"utf8"),r(n(i,"schemas","project.fields.schema.json"),P,"utf8"),r(n(i,"schemas","document.paths.schema.json"),S,"utf8"),r(n(i,"extension-manifest.schema.json"),w,"utf8");let k=Bun.spawnSync(["bunx","oxfmt",n(i,"schemas","project.core.schema.json"),n(i,"schemas","project.fields.schema.json"),n(i,"schemas","document.paths.schema.json")],{cwd:i});if(k.exitCode!==0){let A=k.stderr.toString()||k.stdout.toString()||`exit ${k.exitCode}${k.signalCode?`, signal ${k.signalCode}`:""}`;console.error(`Warning: skipped oxfmt reformat of generated schemas (${A})`)}console.error("Generated:"),console.error(" schema.json (component)"),console.error(" project-schema.json"),console.error(" class-schema.json"),console.error(" schemas/project.core.schema.json"),console.error(" schemas/project.fields.schema.json"),console.error(" schemas/document.paths.schema.json"),console.error(" extension-manifest.schema.json")}}var yj,bj,xj,hj=null,$j,gj,Nie;var wj=D(()=>{K1();X1();tP();nP();oP();lP();bP();xP();vP();_P();RP();CP();IP();MP();LP();nj();lj();uj();dj();bf();pj();mj();yj=gr(I1(),1),bj=gr(L1(),1),xj=gr(U1(),1);$j={...Sf,additionalProperties:{anyOf:[{type:"string"},{type:"number"},{$ref:"#/$defs/StyleObject"}]}};[,gj]=process.argv,Nie=gj?.endsWith("schema.ts")?NW(gj):void 0});var Yl=N(function(Ej){Object.defineProperty(Ej,"__esModule",{value:!0});Ej.regexpCode=Ej.getEsmExportName=Ej.getProperty=Ej.safeStringify=Ej.stringify=Ej.strConcat=Ej.addCodeArg=Ej.str=Ej._=Ej.nil=Ej._Code=Ej.Name=Ej.IDENTIFIER=Ej._CodeOrName=void 0;class Pf{}Ej._CodeOrName=Pf;Ej.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class ma extends Pf{constructor(e){super();if(!Ej.IDENTIFIER.test(e))throw Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}Ej.Name=ma;class $n extends Pf{constructor(e){super();this._items=typeof e==="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((t,r)=>`${t}${r}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((t,r)=>{if(r instanceof ma)t[r.str]=(t[r.str]||0)+1;return t},{})}}Ej._Code=$n;Ej.nil=new $n("");function vj(e,...t){let r=[e[0]],n=0;while(n<t.length)ig(r,t[n]),r.push(e[++n]);return new $n(r)}Ej._=vj;var sg=new $n("+");function Sj(e,...t){let r=[Kl(e[0])],n=0;while(n<t.length)r.push(sg),ig(r,t[n]),r.push(sg,Kl(e[++n]));return TW(r),new $n(r)}Ej.str=Sj;function ig(e,t){if(t instanceof $n)e.push(...t._items);else if(t instanceof ma)e.push(t);else e.push(MW(t))}Ej.addCodeArg=ig;function TW(e){let t=1;while(t<e.length-1){if(e[t]===sg){let r=IW(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function IW(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string"){if(t instanceof ma||e[e.length-1]!=='"')return;if(typeof t!="string")return`${e.slice(0,-1)}${t}"`;if(t[0]==='"')return e.slice(0,-1)+t.slice(1);return}if(typeof t=="string"&&t[0]==='"'&&!(e instanceof ma))return`"${e}${t.slice(1)}`;return}function JW(e,t){return t.emptyStr()?e:e.emptyStr()?t:Sj`${e}${t}`}Ej.strConcat=JW;function MW(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:Kl(Array.isArray(e)?e.join(","):e)}function DW(e){return new $n(Kl(e))}Ej.stringify=DW;function Kl(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Ej.safeStringify=Kl;function LW(e){return typeof e=="string"&&Ej.IDENTIFIER.test(e)?new $n(`.${e}`):vj`[${e}]`}Ej.getProperty=LW;function FW(e){if(typeof e=="string"&&Ej.IDENTIFIER.test(e))return new $n(`${e}`);throw Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}Ej.getEsmExportName=FW;function qW(e){return new $n(e.toString())}Ej.regexpCode=qW});var cg=N(function(_j){Object.defineProperty(_j,"__esModule",{value:!0});_j.ValueScope=_j.ValueScopeName=_j.Scope=_j.varKinds=_j.UsedValueState=void 0;var Ke=Yl();class jj extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`);this.value=e.value}}var kf;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(kf||(_j.UsedValueState=kf={}));_j.varKinds={const:new Ke.Name("const"),let:new Ke.Name("let"),var:new Ke.Name("var")};class ag{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof Ke.Name?e:this.name(e)}name(e){return new Ke.Name(this._newName(e))}_newName(e){let t=this._names[e]||this._nameGroup(e);return`${e}${t.index++}`}_nameGroup(e){var t,r;if(((r=(t=this._parent)===null||t===void 0?void 0:t._prefixes)===null||r===void 0?void 0:r.has(e))||this._prefixes&&!this._prefixes.has(e))throw Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}}_j.Scope=ag;class lg extends Ke.Name{constructor(e,t){super(t);this.prefix=e}setValue(e,{property:t,itemIndex:r}){this.value=e,this.scopePath=Ke._`.${new Ke.Name(t)}[${r}]`}}_j.ValueScopeName=lg;var eH=Ke._`\n`;class kj extends ag{constructor(e){super(e);this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?eH:Ke.nil}}get(){return this._scope}name(e){return new lg(e,this._newName(e))}value(e,t){var r;if(t.ref===void 0)throw Error("CodeGen: ref must be passed in value");let n=this.toName(e),{prefix:s}=n,i=(r=t.key)!==null&&r!==void 0?r:t.ref,o=this._values[s];if(o){let c=o.get(i);if(c)return c}else o=this._values[s]=new Map;o.set(i,n);let a=this._scope[s]||(this._scope[s]=[]),l=a.length;return a[l]=t.ref,n.setValue(t,{property:s,itemIndex:l}),n}getValue(e,t){let r=this._values[e];if(!r)return;return r.get(t)}scopeRefs(e,t=this._values){return this._reduceValues(t,(r)=>{if(r.scopePath===void 0)throw Error(`CodeGen: name "${r}" has no value`);return Ke._`${e}${r.scopePath}`})}scopeCode(e=this._values,t,r){return this._reduceValues(e,(n)=>{if(n.value===void 0)throw Error(`CodeGen: name "${n}" has no value`);return n.value.code},t,r)}_reduceValues(e,t,r={},n){let s=Ke.nil;for(let i in e){let o=e[i];if(!o)continue;let a=r[i]=r[i]||new Map;o.forEach((l)=>{if(a.has(l))return;a.set(l,kf.Started);let c=t(l);if(c){let u=this.opts.es5?_j.varKinds.var:_j.varKinds.const;s=Ke._`${s}${u} ${l} = ${c};${this.opts._n}`}else if(c=n===null||n===void 0?void 0:n(l))s=Ke._`${s}${c}${this.opts._n}`;else throw new jj(l);a.set(l,kf.Completed)})}return s}}_j.ValueScope=kj});var $e=N(function(jr){Object.defineProperty(jr,"__esModule",{value:!0});jr.or=jr.and=jr.not=jr.CodeGen=jr.operators=jr.varKinds=jr.ValueScopeName=jr.ValueScope=jr.Scope=jr.Name=jr.regexpCode=jr.stringify=jr.getProperty=jr.nil=jr.strConcat=jr.str=jr._=void 0;var Z=Yl(),mt=cg(),si=Yl();Object.defineProperty(jr,"_",{enumerable:!0,get:function(){return si._}});Object.defineProperty(jr,"str",{enumerable:!0,get:function(){return si.str}});Object.defineProperty(jr,"strConcat",{enumerable:!0,get:function(){return si.strConcat}});Object.defineProperty(jr,"nil",{enumerable:!0,get:function(){return si.nil}});Object.defineProperty(jr,"getProperty",{enumerable:!0,get:function(){return si.getProperty}});Object.defineProperty(jr,"stringify",{enumerable:!0,get:function(){return si.stringify}});Object.defineProperty(jr,"regexpCode",{enumerable:!0,get:function(){return si.regexpCode}});Object.defineProperty(jr,"Name",{enumerable:!0,get:function(){return si.Name}});var Nf=cg();Object.defineProperty(jr,"Scope",{enumerable:!0,get:function(){return Nf.Scope}});Object.defineProperty(jr,"ValueScope",{enumerable:!0,get:function(){return Nf.ValueScope}});Object.defineProperty(jr,"ValueScopeName",{enumerable:!0,get:function(){return Nf.ValueScopeName}});Object.defineProperty(jr,"varKinds",{enumerable:!0,get:function(){return Nf.varKinds}});jr.operators={GT:new Z._Code(">"),GTE:new Z._Code(">="),LT:new Z._Code("<"),LTE:new Z._Code("<="),EQ:new Z._Code("==="),NEQ:new Z._Code("!=="),NOT:new Z._Code("!"),OR:new Z._Code("||"),AND:new Z._Code("&&"),ADD:new Z._Code("+")};class ii{optimizeNodes(){return this}optimizeNames(e,t){return this}}class Rj extends ii{constructor(e,t,r){super();this.varKind=e,this.name=t,this.rhs=r}render({es5:e,_n:t}){let r=e?mt.varKinds.var:this.varKind,n=this.rhs===void 0?"":` = ${this.rhs}`;return`${r} ${this.name}${n};`+t}optimizeNames(e,t){if(!e[this.name.str])return;if(this.rhs)this.rhs=ga(this.rhs,e,t);return this}get names(){return this.rhs instanceof Z._CodeOrName?this.rhs.names:{}}}class dg extends ii{constructor(e,t,r){super();this.lhs=e,this.rhs=t,this.sideEffects=r}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,t){if(this.lhs instanceof Z.Name&&!e[this.lhs.str]&&!this.sideEffects)return;return this.rhs=ga(this.rhs,e,t),this}get names(){let e=this.lhs instanceof Z.Name?{}:{...this.lhs.names};return Cf(e,this.rhs)}}class Oj extends dg{constructor(e,t,r,n){super(e,r,n);this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}}class Cj extends ii{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}}class Nj extends ii{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}}class Tj extends ii{constructor(e){super();this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}}class Ij extends ii{constructor(e){super();this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,t){return this.code=ga(this.code,e,t),this}get names(){return this.code instanceof Z._CodeOrName?this.code.names:{}}}class Tf extends ii{constructor(e=[]){super();this.nodes=e}render(e){return this.nodes.reduce((t,r)=>t+r.render(e),"")}optimizeNodes(){let{nodes:e}=this,t=e.length;while(t--){let r=e[t].optimizeNodes();if(Array.isArray(r))e.splice(t,1,...r);else if(r)e[t]=r;else e.splice(t,1)}return e.length>0?this:void 0}optimizeNames(e,t){let{nodes:r}=this,n=r.length;while(n--){let s=r[n];if(s.optimizeNames(e,t))continue;sH(e,s.names),r.splice(n,1)}return r.length>0?this:void 0}get names(){return this.nodes.reduce((e,t)=>ao(e,t.names),{})}}class oi extends Tf{render(e){return"{"+e._n+super.render(e)+"}"+e._n}}class Jj extends Tf{}class Xl extends oi{}Xl.kind="else";class As extends oi{constructor(e,t){super(t);this.condition=e}render(e){let t=`if(${this.condition})`+super.render(e);if(this.else)t+="else "+this.else.render(e);return t}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let t=this.else;if(t){let r=t.optimizeNodes();t=this.else=Array.isArray(r)?new Xl(r):r}if(t){if(e===!1)return t instanceof As?t:t.nodes;if(this.nodes.length)return this;return new As(qj(e),t instanceof As?[t]:t.nodes)}if(e===!1||!this.nodes.length)return;return this}optimizeNames(e,t){var r;if(this.else=(r=this.else)===null||r===void 0?void 0:r.optimizeNames(e,t),!(super.optimizeNames(e,t)||this.else))return;return this.condition=ga(this.condition,e,t),this}get names(){let e=super.names;if(Cf(e,this.condition),this.else)ao(e,this.else.names);return e}}As.kind="if";class ha extends oi{}ha.kind="for";class Mj extends ha{constructor(e){super();this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,t){if(!super.optimizeNames(e,t))return;return this.iteration=ga(this.iteration,e,t),this}get names(){return ao(super.names,this.iteration.names)}}class Dj extends ha{constructor(e,t,r,n){super();this.varKind=e,this.name=t,this.from=r,this.to=n}render(e){let t=e.es5?mt.varKinds.var:this.varKind,{name:r,from:n,to:s}=this;return`for(${t} ${r}=${n}; ${r}<${s}; ${r}++)`+super.render(e)}get names(){let e=Cf(super.names,this.from);return Cf(e,this.to)}}class ug extends ha{constructor(e,t,r,n){super();this.loop=e,this.varKind=t,this.name=r,this.iterable=n}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,t){if(!super.optimizeNames(e,t))return;return this.iterable=ga(this.iterable,e,t),this}get names(){return ao(super.names,this.iterable.names)}}class _f extends oi{constructor(e,t,r){super();this.name=e,this.args=t,this.async=r}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}}_f.kind="func";class Af extends Tf{render(e){return"return "+super.render(e)}}Af.kind="return";class Lj extends oi{render(e){let t="try"+super.render(e);if(this.catch)t+=this.catch.render(e);if(this.finally)t+=this.finally.render(e);return t}optimizeNodes(){var e,t;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(t=this.finally)===null||t===void 0||t.optimizeNodes(),this}optimizeNames(e,t){var r,n;return super.optimizeNames(e,t),(r=this.catch)===null||r===void 0||r.optimizeNames(e,t),(n=this.finally)===null||n===void 0||n.optimizeNames(e,t),this}get names(){let e=super.names;if(this.catch)ao(e,this.catch.names);if(this.finally)ao(e,this.finally.names);return e}}class Rf extends oi{constructor(e){super();this.error=e}render(e){return`catch(${this.error})`+super.render(e)}}Rf.kind="catch";class Of extends oi{render(e){return"finally"+super.render(e)}}Of.kind="finally";class Fj{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?`
|
|
607
|
-
`:""},this._extScope=e,this._scope=new mt.Scope({parent:e}),this._nodes=[new Jj]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,t){let r=this._extScope.value(e,t);return(this._values[r.prefix]||(this._values[r.prefix]=new Set)).add(r),r}getScopeValue(e,t){return this._extScope.getValue(e,t)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,t,r,n){let s=this._scope.toName(t);if(r!==void 0&&n)this._constants[s.str]=r;return this._leafNode(new Rj(e,s,r)),s}const(e,t,r){return this._def(mt.varKinds.const,e,t,r)}let(e,t,r){return this._def(mt.varKinds.let,e,t,r)}var(e,t,r){return this._def(mt.varKinds.var,e,t,r)}assign(e,t,r){return this._leafNode(new dg(e,t,r))}add(e,t){return this._leafNode(new Oj(e,jr.operators.ADD,t))}code(e){if(typeof e=="function")e();else if(e!==Z.nil)this._leafNode(new Ij(e));return this}object(...e){let t=["{"];for(let[r,n]of e){if(t.length>1)t.push(",");if(t.push(r),r!==n||this.opts.es5)t.push(":"),Z.addCodeArg(t,n)}return t.push("}"),new Z._Code(t)}if(e,t,r){if(this._blockNode(new As(e)),t&&r)this.code(t).else().code(r).endIf();else if(t)this.code(t).endIf();else if(r)throw Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new As(e))}else(){return this._elseNode(new Xl)}endIf(){return this._endBlockNode(As,Xl)}_for(e,t){if(this._blockNode(e),t)this.code(t).endFor();return this}for(e,t){return this._for(new Mj(e),t)}forRange(e,t,r,n,s=this.opts.es5?mt.varKinds.var:mt.varKinds.let){let i=this._scope.toName(e);return this._for(new Dj(s,i,t,r),()=>n(i))}forOf(e,t,r,n=mt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=t instanceof Z.Name?t:this.var("_arr",t);return this.forRange("_i",0,Z._`${i}.length`,(o)=>{this.var(s,Z._`${i}[${o}]`),r(s)})}return this._for(new ug("of",n,s,t),()=>r(s))}forIn(e,t,r,n=this.opts.es5?mt.varKinds.var:mt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,Z._`Object.keys(${t})`,r);let s=this._scope.toName(e);return this._for(new ug("in",n,s,t),()=>r(s))}endFor(){return this._endBlockNode(ha)}label(e){return this._leafNode(new Cj(e))}break(e){return this._leafNode(new Nj(e))}return(e){let t=new Af;if(this._blockNode(t),this.code(e),t.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(Af)}try(e,t,r){if(!t&&!r)throw Error('CodeGen: "try" without "catch" and "finally"');let n=new Lj;if(this._blockNode(n),this.code(e),t){let s=this.name("e");this._currNode=n.catch=new Rf(s),t(s)}if(r)this._currNode=n.finally=new Of,this.code(r);return this._endBlockNode(Rf,Of)}throw(e){return this._leafNode(new Tj(e))}block(e,t){if(this._blockStarts.push(this._nodes.length),e)this.code(e).endBlock(t);return this}endBlock(e){let t=this._blockStarts.pop();if(t===void 0)throw Error("CodeGen: not in self-balancing block");let r=this._nodes.length-t;if(r<0||e!==void 0&&r!==e)throw Error(`CodeGen: wrong number of nodes: ${r} vs ${e} expected`);return this._nodes.length=t,this}func(e,t=Z.nil,r,n){if(this._blockNode(new _f(e,t,r)),n)this.code(n).endFunc();return this}endFunc(){return this._endBlockNode(_f)}optimize(e=1){while(e-- >0)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,t){let r=this._currNode;if(r instanceof e||t&&r instanceof t)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${t?`${e.kind}/${t.kind}`:e.kind}"`)}_elseNode(e){let t=this._currNode;if(!(t instanceof As))throw Error('CodeGen: "else" without "if"');return this._currNode=t.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let t=this._nodes;t[t.length-1]=e}}jr.CodeGen=Fj;function ao(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Cf(e,t){return t instanceof Z._CodeOrName?ao(e,t.names):e}function ga(e,t,r){if(e instanceof Z.Name)return n(e);if(!s(e))return e;return new Z._Code(e._items.reduce((i,o)=>{if(o instanceof Z.Name)o=n(o);if(o instanceof Z._Code)i.push(...o._items);else i.push(o);return i},[]));function n(i){let o=r[i.str];if(o===void 0||t[i.str]!==1)return i;return delete t[i.str],o}function s(i){return i instanceof Z._Code&&i._items.some((o)=>o instanceof Z.Name&&t[o.str]===1&&r[o.str]!==void 0)}}function sH(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function qj(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:Z._`!${fg(e)}`}jr.not=qj;var iH=Vj(jr.operators.AND);function oH(...e){return e.reduce(iH)}jr.and=oH;var aH=Vj(jr.operators.OR);function lH(...e){return e.reduce(aH)}jr.or=lH;function Vj(e){return(t,r)=>t===Z.nil?r:r===Z.nil?t:Z._`${fg(t)} ${e} ${fg(r)}`}function fg(e){return e instanceof Z.Name?e:Z._`(${e})`}});var Oe=N(function(Zj){Object.defineProperty(Zj,"__esModule",{value:!0});Zj.checkStrictMode=Zj.getErrorPath=Zj.Type=Zj.useFunc=Zj.setEvaluated=Zj.evaluatedPropsToName=Zj.mergeEvaluated=Zj.eachItem=Zj.unescapeJsonPointer=Zj.escapeJsonPointer=Zj.escapeFragment=Zj.unescapeFragment=Zj.schemaRefOrVal=Zj.schemaHasRulesButRef=Zj.schemaHasRules=Zj.checkUnknownRules=Zj.alwaysValidSchema=Zj.toHash=void 0;var fe=$e(),Uj=Yl();function dH(e){let t={};for(let r of e)t[r]=!0;return t}Zj.toHash=dH;function pH(e,t){if(typeof t=="boolean")return t;if(Object.keys(t).length===0)return!0;return zj(e,t),!Gj(t,e.self.RULES.all)}Zj.alwaysValidSchema=pH;function zj(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema)return;if(typeof t==="boolean")return;let s=n.RULES.keywords;for(let i in t)if(!s[i])Xj(e,`unknown keyword: "${i}"`)}Zj.checkUnknownRules=zj;function Gj(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}Zj.schemaHasRules=Gj;function mH(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}Zj.schemaHasRulesButRef=mH;function hH({topSchemaRef:e,schemaPath:t},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return fe._`${r}`}return fe._`${e}${t}${fe.getProperty(n)}`}Zj.schemaRefOrVal=hH;function gH(e){return Kj(decodeURIComponent(e))}Zj.unescapeFragment=gH;function yH(e){return encodeURIComponent(mg(e))}Zj.escapeFragment=yH;function mg(e){if(typeof e=="number")return`${e}`;return e.replace(/~/g,"~0").replace(/\//g,"~1")}Zj.escapeJsonPointer=mg;function Kj(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}Zj.unescapeJsonPointer=Kj;function bH(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}Zj.eachItem=bH;function Hj({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(s,i,o,a)=>{let l=o===void 0?i:o instanceof fe.Name?(i instanceof fe.Name?e(s,i,o):t(s,i,o),o):i instanceof fe.Name?(t(s,o,i),i):r(i,o);return a===fe.Name&&!(l instanceof fe.Name)?n(s,l):l}}Zj.mergeEvaluated={props:Hj({mergeNames:(e,t,r)=>e.if(fe._`${r} !== true && ${t} !== undefined`,()=>{e.if(fe._`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,fe._`${r} || {}`).code(fe._`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if(fe._`${r} !== true`,()=>{if(t===!0)e.assign(r,!0);else e.assign(r,fe._`${r} || {}`),hg(e,r,t)}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:Yj}),items:Hj({mergeNames:(e,t,r)=>e.if(fe._`${r} !== true && ${t} !== undefined`,()=>e.assign(r,fe._`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if(fe._`${r} !== true`,()=>e.assign(r,t===!0?!0:fe._`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function Yj(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",fe._`{}`);if(t!==void 0)hg(e,r,t);return r}Zj.evaluatedPropsToName=Yj;function hg(e,t,r){Object.keys(r).forEach((n)=>e.assign(fe._`${t}${fe.getProperty(n)}`,!0))}Zj.setEvaluated=hg;var Bj={};function xH(e,t){return e.scopeValue("func",{ref:t,code:Bj[t.code]||(Bj[t.code]=new Uj._Code(t.code))})}Zj.useFunc=xH;var pg;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})(pg||(Zj.Type=pg={}));function $H(e,t,r){if(e instanceof fe.Name){let n=t===pg.Num;return r?n?fe._`"[" + ${e} + "]"`:fe._`"['" + ${e} + "']"`:n?fe._`"/" + ${e}`:fe._`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?fe.getProperty(e).toString():"/"+mg(e)}Zj.getErrorPath=$H;function Xj(e,t,r=e.opts.strictSchema){if(!r)return;if(t=`strict mode: ${t}`,r===!0)throw Error(t);e.self.logger.warn(t)}Zj.checkStrictMode=Xj});var tn=N(function(ek){Object.defineProperty(ek,"__esModule",{value:!0});var Ve=$e(),DH={data:new Ve.Name("data"),valCxt:new Ve.Name("valCxt"),instancePath:new Ve.Name("instancePath"),parentData:new Ve.Name("parentData"),parentDataProperty:new Ve.Name("parentDataProperty"),rootData:new Ve.Name("rootData"),dynamicAnchors:new Ve.Name("dynamicAnchors"),vErrors:new Ve.Name("vErrors"),errors:new Ve.Name("errors"),this:new Ve.Name("this"),self:new Ve.Name("self"),scope:new Ve.Name("scope"),json:new Ve.Name("json"),jsonPos:new Ve.Name("jsonPos"),jsonLen:new Ve.Name("jsonLen"),jsonPart:new Ve.Name("jsonPart")};ek.default=DH});var Zl=N(function(sk){Object.defineProperty(sk,"__esModule",{value:!0});sk.extendErrors=sk.resetErrorsCount=sk.reportExtraError=sk.reportError=sk.keyword$DataError=sk.keywordError=void 0;var ne=$e(),ai=Oe(),dr=tn();sk.keywordError={message:({keyword:e})=>ne.str`must pass "${e}" keyword validation`};sk.keyword$DataError={message:({keyword:e,schemaType:t})=>t?ne.str`"${e}" keyword must be ${t} ($data)`:ne.str`"${e}" keyword is invalid ($data)`};function FH(e,t=sk.keywordError,r,n){let{it:s}=e,{gen:i,compositeRule:o,allErrors:a}=s,l=nk(e,t,r);if(n!==null&&n!==void 0?n:o||a)tk(i,l);else rk(s,ne._`[${l}]`)}sk.reportError=FH;function qH(e,t=sk.keywordError,r){let{it:n}=e,{gen:s,compositeRule:i,allErrors:o}=n,a=nk(e,t,r);if(tk(s,a),!(i||o))rk(n,dr.default.vErrors)}sk.reportExtraError=qH;function VH(e,t){e.assign(dr.default.errors,t),e.if(ne._`${dr.default.vErrors} !== null`,()=>e.if(t,()=>e.assign(ne._`${dr.default.vErrors}.length`,t),()=>e.assign(dr.default.vErrors,null)))}sk.resetErrorsCount=VH;function WH({gen:e,keyword:t,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw Error("ajv implementation error");let o=e.name("err");e.forRange("i",s,dr.default.errors,(a)=>{if(e.const(o,ne._`${dr.default.vErrors}[${a}]`),e.if(ne._`${o}.instancePath === undefined`,()=>e.assign(ne._`${o}.instancePath`,ne.strConcat(dr.default.instancePath,i.errorPath))),e.assign(ne._`${o}.schemaPath`,ne.str`${i.errSchemaPath}/${t}`),i.opts.verbose)e.assign(ne._`${o}.schema`,r),e.assign(ne._`${o}.data`,n)})}sk.extendErrors=WH;function tk(e,t){let r=e.const("err",t);e.if(ne._`${dr.default.vErrors} === null`,()=>e.assign(dr.default.vErrors,ne._`[${r}]`),ne._`${dr.default.vErrors}.push(${r})`),e.code(ne._`${dr.default.errors}++`)}function rk(e,t){let{gen:r,validateName:n,schemaEnv:s}=e;if(s.$async)r.throw(ne._`new ${e.ValidationError}(${t})`);else r.assign(ne._`${n}.errors`,t),r.return(!1)}var lo={keyword:new ne.Name("keyword"),schemaPath:new ne.Name("schemaPath"),params:new ne.Name("params"),propertyName:new ne.Name("propertyName"),message:new ne.Name("message"),schema:new ne.Name("schema"),parentSchema:new ne.Name("parentSchema")};function nk(e,t,r){let{createErrors:n}=e.it;if(n===!1)return ne._`{}`;return HH(e,t,r)}function HH(e,t,r={}){let{gen:n,it:s}=e,i=[BH(s,r),UH(e,r)];return zH(e,t,i),n.object(...i)}function BH({errorPath:e},{instancePath:t}){let r=t?ne.str`${e}${ai.getErrorPath(t,ai.Type.Str)}`:e;return[dr.default.instancePath,ne.strConcat(dr.default.instancePath,r)]}function UH({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let s=n?t:ne.str`${t}/${e}`;if(r)s=ne.str`${s}${ai.getErrorPath(r,ai.Type.Str)}`;return[lo.schemaPath,s]}function zH(e,{params:t,message:r},n){let{keyword:s,data:i,schemaValue:o,it:a}=e,{opts:l,propertyName:c,topSchemaRef:u,schemaPath:p}=a;if(n.push([lo.keyword,s],[lo.params,typeof t=="function"?t(e):t||ne._`{}`]),l.messages)n.push([lo.message,typeof r=="function"?r(e):r]);if(l.verbose)n.push([lo.schema,o],[lo.parentSchema,ne._`${u}${p}`],[dr.default.data,i]);if(c)n.push([lo.propertyName,c])}});var fk=N(function(ck){Object.defineProperty(ck,"__esModule",{value:!0});ck.boolOrEmptySchema=ck.topBoolOrEmptySchema=void 0;var ok=Zl(),ak=$e(),ZH=tn(),QH={message:"boolean schema is false"};function eB(e){let{gen:t,schema:r,validateName:n}=e;if(r===!1)lk(e,!1);else if(typeof r=="object"&&r.$async===!0)t.return(ZH.default.data);else t.assign(ak._`${n}.errors`,null),t.return(!0)}ck.topBoolOrEmptySchema=eB;function tB(e,t){let{gen:r,schema:n}=e;if(n===!1)r.var(t,!1),lk(e);else r.var(t,!0)}ck.boolOrEmptySchema=tB;function lk(e,t){let{gen:r,data:n}=e;ok.reportError({gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e},QH,void 0,t)}});var yg=N(function(dk){Object.defineProperty(dk,"__esModule",{value:!0});dk.getRules=dk.isJSONType=void 0;var nB=["string","number","integer","boolean","null","object","array"],sB=new Set(nB);function iB(e){return typeof e=="string"&&sB.has(e)}dk.isJSONType=iB;function oB(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}dk.getRules=oB});var bg=N(function(gk){Object.defineProperty(gk,"__esModule",{value:!0});gk.shouldUseRule=gk.shouldUseGroup=gk.schemaHasRulesForType=void 0;function lB({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&mk(e,n)}gk.schemaHasRulesForType=lB;function mk(e,t){return t.rules.some((r)=>hk(e,r))}gk.shouldUseGroup=mk;function hk(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some((n)=>e[n]!==void 0))}gk.shouldUseRule=hk});var Ql=N(function(Sk){Object.defineProperty(Sk,"__esModule",{value:!0});Sk.reportTypeError=Sk.checkDataTypes=Sk.checkDataType=Sk.coerceAndCheckDataType=Sk.getJSONTypes=Sk.getSchemaTypes=Sk.DataType=void 0;var bk=yg(),xk=bg(),$k=Zl(),z=$e(),Jf=Oe(),ya;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(ya||(Sk.DataType=ya={}));function fB(e){let t=wk(e.type);if(t.includes("null")){if(e.nullable===!1)throw Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw Error('"nullable" cannot be used without "type"');if(e.nullable===!0)t.push("null")}return t}Sk.getSchemaTypes=fB;function wk(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(bk.isJSONType))return t;throw Error("type must be JSONType or JSONType[]: "+t.join(","))}Sk.getJSONTypes=wk;function dB(e,t){let{gen:r,data:n,opts:s}=e,i=pB(t,s.coerceTypes),o=t.length>0&&!(i.length===0&&t.length===1&&xk.schemaHasRulesForType(e,t[0]));if(o){let a=$g(t,n,s.strictNumbers,ya.Wrong);r.if(a,()=>{if(i.length)mB(e,t,i);else wg(e)})}return o}Sk.coerceAndCheckDataType=dB;var vk=new Set(["string","number","integer","boolean","null"]);function pB(e,t){return t?e.filter((r)=>vk.has(r)||t==="array"&&r==="array"):[]}function mB(e,t,r){let{gen:n,data:s,opts:i}=e,o=n.let("dataType",z._`typeof ${s}`),a=n.let("coerced",z._`undefined`);if(i.coerceTypes==="array")n.if(z._`${o} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,z._`${s}[0]`).assign(o,z._`typeof ${s}`).if($g(t,s,i.strictNumbers),()=>n.assign(a,s)));n.if(z._`${a} !== undefined`);for(let c of r)if(vk.has(c)||c==="array"&&i.coerceTypes==="array")l(c);n.else(),wg(e),n.endIf(),n.if(z._`${a} !== undefined`,()=>{n.assign(s,a),hB(e,a)});function l(c){switch(c){case"string":n.elseIf(z._`${o} == "number" || ${o} == "boolean"`).assign(a,z._`"" + ${s}`).elseIf(z._`${s} === null`).assign(a,z._`""`);return;case"number":n.elseIf(z._`${o} == "boolean" || ${s} === null
|
|
606
|
+
${v}`);let{extAttrs:ge}=d,pe=ge.indexOf(x),$e=ge.splice(pe,1);ge.length?ge.length===pe?ge[pe-1].tokens.separator=void 0:ge[pe].tokens.name.trivia.trim()||(ge[pe].tokens.name.trivia=$e[0].tokens.name.trivia):ge.tokens.open=ge.tokens.close=void 0}}class bo extends Ir{static parse(d,x,{extMembers:v=[],partial:P}={}){let N={partial:P,base:x};if(N.mixin=d.consume("mixin"),N.mixin)return Ir.parse(d,new bo({source:d.source,tokens:N}),{allowedMembers:[...v,[rs.parse],[Ne],[L.parse,{noInherit:!0}],[I.parse,{regular:!0}]]})}get type(){return"interface mixin"}}class ss extends i{static parse(d){let x={},v=H(new ss({source:d.source,tokens:x}));return v.extAttrs=w.parse(d),x.required=d.consume("required"),v.idlType=se(d,"dictionary-type")||d.error("Dictionary member lacks a type"),x.name=d.consumeKind("identifier")||d.error("Dictionary member lacks a name"),v.default=A.parse(d),x.required&&v.default&&d.error("Required member must not have a default"),x.termination=d.consume(";")||d.error("Unterminated dictionary member, expected `;`"),v.this}get type(){return"field"}get name(){return J(this.tokens.name.value)}get required(){return!!this.tokens.required}*validate(d){yield*this.idlType.validate(d)}write(d){let{parent:x}=this;return d.ts.definition(d.ts.wrap([this.extAttrs.write(d),d.token(this.tokens.required),d.ts.type(this.idlType.write(d)),d.name_token(this.tokens.name,{data:this,parent:x}),this.default?this.default.write(d):"",d.token(this.tokens.termination)]),{data:this,parent:x})}}class M extends Ir{static parse(d,{extMembers:x=[],partial:v}={}){let P={partial:v};if(P.base=d.consume("dictionary"),P.base)return Ir.parse(d,new M({source:d.source,tokens:P}),{inheritable:!v,allowedMembers:[...x,[ss.parse]]})}get type(){return"dictionary"}}class B extends Ir{static parse(d,{extMembers:x=[],partial:v}={}){let P={partial:v};if(P.base=d.consume("namespace"),P.base)return Ir.parse(d,new B({source:d.source,tokens:P}),{allowedMembers:[...x,[L.parse,{noInherit:!0,readonly:!0}],[rs.parse],[I.parse,{regular:!0}]]})}get type(){return"namespace"}*validate(d){if(!this.partial&&this.extAttrs.every((x)=>x.name!=="Exposed"))yield s(this.tokens.name,this,"require-exposed","Namespaces must have [Exposed] extended attribute. To fix, add, for example, [Exposed=Window]. Please also consider carefully if your namespace should also be exposed in a Worker scope. Refer to the [WebIDL spec section on Exposed](https://heycam.github.io/webidl/#Exposed) for more information.",{autofix:Ee(this)});yield*super.validate(d)}}class U extends Ir{static parse(d,x,{extMembers:v=[]}={}){let P={callback:x};if(P.base=d.consume("interface"),P.base)return Ir.parse(d,new U({source:d.source,tokens:P}),{allowedMembers:[...v,[rs.parse],[I.parse,{regular:!0}]]})}get type(){return"callback interface"}}function le(d,x){let v=d.source;function P(pe){d.error(pe)}function N(...pe){return d.consume(...pe)}function G(pe){let $e=N("interface");if($e)return bo.parse(d,$e,{...pe,...x?.extensions?.mixin})||ns.parse(d,$e,{...pe,...x?.extensions?.interface})||P("Interface has no proper body")}function ee(){if(x.productions)for(let pe of x.productions){let $e=pe(d);if($e)return $e}return function(){let pe=N("callback");if(pe)return d.probe("interface")?U.parse(d,pe,{...x?.extensions?.callbackInterface}):ho.parse(d,pe)}()||G()||function(){let pe=N("partial");if(pe)return M.parse(d,{partial:pe,...x?.extensions?.dictionary})||G({partial:pe})||B.parse(d,{partial:pe,...x?.extensions?.namespace})||P("Partial doesn't apply to anything")}()||M.parse(d,x?.extensions?.dictionary)||Vt.parse(d)||ts.parse(d)||es.parse(d)||B.parse(d,x?.extensions?.namespace)}let ge=function(){if(!v.length)return[];let pe=[];for(;;){let Te=w.parse(d),qe=ee();if(!qe){Te.length&&P("Stray extended attributes");break}H(qe).extAttrs=Te,pe.push(qe)}let $e=u.parse(d);return x.concrete&&pe.push($e),pe}();return d.position<v.length&&P("Unrecognised tokens"),ge}function Ce(d,x={}){let v=new wt(d);return x.sourceName!==void 0&&(v.source.name=x.sourceName),le(v,x)}function Pt(d){return d}let Xt={wrap:(d)=>d.join(""),trivia:Pt,name:Pt,reference:Pt,type:Pt,generic:Pt,nameless:Pt,inheritance:Pt,definition:Pt,extendedAttribute:Pt,extendedAttributeReference:Pt};class tt{constructor(d){this.ts=Object.assign({},Xt,d)}reference(d,{unescaped:x,context:v}){return x||(x=d.startsWith("_")?d.slice(1):d),this.ts.reference(d,x,v)}token(d,x=Pt,...v){if(!d)return"";let P=x(d.value,...v);return this.ts.wrap([this.ts.trivia(d.trivia),P])}reference_token(d,x){return this.token(d,this.reference.bind(this),{context:x})}name_token(d,x){return this.token(d,this.ts.name,x)}identifier(d,x){return this.ts.wrap([this.reference_token(d.tokens.value,x),this.token(d.tokens.separator)])}}function ve(d,{templates:x=Xt}={}){x=Object.assign({},Xt,x);let v=new tt(x);return x.wrap(d.map((P)=>P.write(v)))}function Zt(d,x){let v=new Map,P=d.filter((N)=>N.type==="includes");for(let N of P){let G=x.get(N.includes);if(!G)continue;let ee=v.get(N.target);ee?ee.push(G):v.set(N.target,[G])}return v}function*kt(d){let x=function(v){let P=new Map,N=new Set,G=new Map;for(let ee of v)if(ee.partial){let ge=G.get(ee.name);ge?ge.push(ee):G.set(ee.name,[ee])}else ee.name&&(P.has(ee.name)?N.add(ee):P.set(ee.name,ee));return{all:v,unique:P,partials:G,duplicates:N,mixinMap:Zt(v,P),cache:{typedefIncludesDictionary:new WeakMap,dictionaryIncludesRequiredField:new WeakMap}}}(d);for(let v of x.all)v.validate&&(yield*v.validate(x));yield*function*({unique:v,duplicates:P}){for(let N of P){let{name:G}=N,ee=`The name "${G}" of type "${v.get(G).type}" was already seen`;yield s(N.tokens.name,N,"no-duplicate",ee)}}(x)}function Nt(d){return[...kt((x=d,x.flat?x.flat():[].concat(...x)))];var x}return t})())});var sP=C(function(Iie,nP){var __dirname="/home/runner/work/jx/jx/node_modules/@webref/idl",Qj=Be("fs").promises,Af=Be("path"),eP=Zj();class tP{constructor(e,t){this.filename=t,this.shortname=Af.basename(t,".idl"),this.path=Af.join(e,t)}async text(){return await Qj.readFile(this.path,"utf8")}async parse(){let e=await this.text();return eP.parse(e)}}async function rP({folder:e=__dirname}={}){let t={},r=await Qj.readdir(e);for(let n of r)if(n.endsWith(".idl")){let s=new tP(e,n);t[s.shortname]=s}return t}async function VW(e){let t=await rP(e);for(let[r,n]of Object.entries(t))t[r]=await n.parse();return t}nP.exports={listAll:rP,parseAll:VW}});var iP,oP;var aP=D(()=>{iP={anyOf:[{additionalProperties:!1,description:"Two-way: `target` is the test, `value` the tag when it is truthy, `initial` the tag when it is not.",properties:{initial:{$ref:"#/$defs/TagName"},operator:{const:"?:",type:"string"},target:{$ref:"#/$defs/ExpressionOperand"},value:{$ref:"#/$defs/TagName"}},required:["operator","target","value","initial"],title:"?: — the tag when the test holds, and the tag when it does not"},{additionalProperties:!1,description:"Multiway: `target` is the discriminant, matched against case keys by its string form. "+"`default` is required — an element with no tag cannot exist.",properties:{cases:{additionalProperties:{$ref:"#/$defs/TagName"},type:"object"},default:{$ref:"#/$defs/TagName"},operator:{const:"switch",type:"string"},target:{$ref:"#/$defs/ExpressionOperand"}},required:["operator","target","cases","default"],title:"switch — one tag per discriminant value, with a required fallback"}],description:"A tag name chosen at element creation. Every branch resolves to a `TagName`, so the candidate set is enumerable without evaluating anything."},oP={anyOf:[{$ref:"#/$defs/TagName"},{additionalProperties:!1,properties:{$expression:{$ref:"#/$defs/TagExpression"}},required:["$expression"],type:"object"}]}});var lP;var cP=D(()=>{lP={description:"HTML element tag name or custom element name (must contain a hyphen per Web Components spec). "+"A NAME, never an expression: no `${…}` position in the pipeline evaluates a tagName. Use "+"`$switch`/`cases` to vary the element.",minLength:1,pattern:"^[a-zA-Z][a-zA-Z0-9._-]*$",type:"string"}});var uP,fP,dP;var pP=D(()=>{uP={oneOf:[{type:"string"},{$ref:"#/$defs/RefObject"}]},fP={oneOf:[{type:"boolean"},{$ref:"#/$defs/RefObject"}]},dP={oneOf:[{type:"number"},{$ref:"#/$defs/RefObject"}]}});var mP;var hP=D(()=>{mP={additionalProperties:!0,description:"A page-level <head> entry. Defines meta tags, link tags, script tags, etc.",properties:{attributes:{additionalProperties:{oneOf:[{type:"string"},{type:"boolean"}]},type:"object"},children:{items:{$ref:"#/$defs/HeadEntry"},type:"array"},tagName:{type:"string"},textContent:{description:"Element content. An object is serialized to JSON inside the tag — that is how a "+'JSON-LD block (`<script type="application/ld+json">`) is authored.',oneOf:[{type:"string"},{type:"object"}]}},required:["tagName"],type:"object"}});var gP,yP;var bP=D(()=>{gP={description:"A CEM-compatible parameter definition for a function. Follows the Custom Elements Manifest Parameter shape.",properties:{default:{description:"Default value for the parameter."},description:{description:"Parameter documentation.",type:"string"},name:{description:"Parameter name.",type:"string"},optional:{description:"Whether the parameter is optional.",type:"boolean"},type:{description:"Parameter type (JSON Schema or CEM { text } format)."}},required:["name"],type:"object"},yP={description:"A CEM-compatible event definition. Describes a CustomEvent the function dispatches.",properties:{deprecated:{description:"Deprecation notice.",oneOf:[{type:"boolean"},{type:"string"}]},description:{description:"Event documentation.",type:"string"},name:{description:"Event name (e.g. 'task-toggled').",type:"string"},type:{description:"Event type (e.g. { text: 'CustomEvent' })."}},required:["name"],type:"object"}});var xP;var $P=D(()=>{xP={enum:["string","number","integer","boolean","array","object","null"],type:"string"}});var wP,vP,SP,EP,jP,PP,kP,_P,AP;var RP=D(()=>{wP={description:"Reference to a $defs type definition in the current component.",examples:["#/$defs/Count","#/$defs/TodoItem","#/$defs/Status"],pattern:String.raw`^#/\$defs/`,type:"string"},vP={description:"Reference to a state entry (runtime variable) in the current component.",examples:["#/state/count","#/state/addTask","#/state/items"],pattern:"^#/state/",type:"string"},SP={description:"Reference to an external Jx component file.",examples:["./card.json","https://cdn.example.com/button.json"],pattern:String.raw`^(\./|\.\./).*\.json$|^https?://`,type:"string"},EP={description:"Reference to a window or document global.",examples:["window#/currentUser","document#/appConfig"],pattern:"^(window|document)#/",type:"string"},jP={description:"Reference to a named state entry passed via $props from a parent component.",examples:["parent#/sharedState","parent#/theme"],pattern:"^parent#/",type:"string"},PP={description:"Reference to the current Array map iteration context.",examples:["$map/item","$map/index","$map/item/text","$map/item/done"],pattern:String.raw`^\$map/(item|index)(/.*)?$`,type:"string"},kP={oneOf:[{$ref:"#/$defs/InternalRef"},{$ref:"#/$defs/StateRef"},{$ref:"#/$defs/ExternalRef"},{$ref:"#/$defs/GlobalRef"},{$ref:"#/$defs/ParentRef"},{$ref:"#/$defs/MapRef"}],type:"string"},_P={additionalProperties:!1,description:"A $ref binding. Resolves to a state entry (reactive) or plain value (static).",properties:{$ref:{$ref:"#/$defs/AnyRef"}},required:["$ref"],type:"object"},AP={properties:{$props:{$ref:"#/$defs/PropsObject"},$ref:{$ref:"#/$defs/ExternalRef"}},required:["$ref"],type:"object"}});var Rf;var OP=D(()=>{Rf={additionalProperties:{anyOf:[{type:"string"},{type:"number"},{$ref:"#/$defs/RefObject"},{$ref:"#/$defs/StyleObject"}]},description:"CSS style definition. camelCase property names follow CSSOM convention. Keys starting with :, ., &, or [ are treated as nested CSS selectors. Keys matching $media breakpoint names (or other @-prefixed at-rules) group nested rules. Nesting is recursive: selector and at-rule groups may nest to arbitrary depth "+"(e.g. breakpoint → selector → pseudo-class), mirroring the compiler's recursive emission. "+"An object carrying $ref is a reactive VALUE, and the runtime reads it as one. It also matches the nested-block branch vacuously, since a block admits a string under any key, which is why these branches are anyOf rather than oneOf. A DECLARATION at-rule (@font-face, @property, @position-try, @counter-style) may hold an ARRAY of blocks, which is that key written more than once, in order: an object's keys are "+"unique, so @font-face — the at-rule whose identity is not in its key — could not otherwise "+"state a family's second weight at all.",patternProperties:{"^@(font-face|property|position-try|counter-style)":{anyOf:[{$ref:"#/$defs/StyleObject"},{items:{$ref:"#/$defs/StyleObject"},minItems:1,type:"array"}]}},properties:{$description:{description:"Why this rule exists. Emitted as a comment by static builds, ignored at runtime.",type:"string"}},type:"object"}});var NP,CP;var TP=D(()=>{NP={additionalProperties:!1,description:"Dynamic mapped list. Re-renders when the items state entry changes.",properties:{$prototype:{const:"Array",type:"string"},filter:{$ref:"#/$defs/RefObject"},items:{oneOf:[{$ref:"#/$defs/RefObject"},{type:"array"}]},key:{additionalProperties:!1,description:"The identity of each rendered row: a $map/item pointer read per item. A row whose key survives a change keeps its DOM node and its effects across reorders, insertions and "+"removals; without a key, rows are keyed by index. $map/index is not a key — an index "+"names a position, not a row.",properties:{$ref:{pattern:String.raw`^\$map/item(/.+)?$`,type:"string"}},required:["$ref"],type:"object"},map:{$ref:"#/$defs/ElementDef"},sort:{$ref:"#/$defs/RefObject"}},required:["$prototype","items","map"],type:"object"},CP={description:"Array of child definitions — elements, text, or Array namespaces (dynamic lists) mixed "+"freely. A bare Array namespace (the whole children slot is one dynamic list) is also "+"accepted for backward compatibility, as is a ${…} template string that resolves at build "+"time to an array of child definitions.",oneOf:[{items:{anyOf:[{$ref:"#/$defs/ElementDef"},{$ref:"#/$defs/SwitchNode"},{$ref:"#/$defs/ArrayNamespace"},{type:"string"},{type:"number"}]},type:"array"},{$ref:"#/$defs/ArrayNamespace"},{description:"Computed children — a ${…} template that resolves at build time to an array of child "+'definitions (e.g. "${state.entry.$children}" for parsed content). A bare plain-text string is NOT a valid children value; text children must be array items.',pattern:String.raw`\$\{`,type:"string"}]}});var IP,JP,MP,DP,LP,Qh;var FP=D(()=>{IP={additionalProperties:{oneOf:[{type:"string"},{type:"number"},{type:"boolean"},{$ref:"#/$defs/RefObject"}]},description:"HTML attributes and ARIA attributes set via element.setAttribute().",type:"object"},JP={additionalProperties:{anyOf:[{type:"string"},{type:"number"},{type:"boolean"},{type:"array"},{type:"object"},{$ref:"#/$defs/RefObject"}]},description:"Explicit prop passing at a component boundary.",type:"object"},MP={oneOf:[{type:"string"},{type:"number"},{type:"boolean"},{type:"null"},{$ref:"#/$defs/RefObject"}]},DP={additionalProperties:!1,description:"Reactive $ref that drives which case to render: a state entry, or inside a mapped array's template the row's $map/item or $map/index (spec §14.1).",properties:{$ref:{oneOf:[{$ref:"#/$defs/StateRef"},{$ref:"#/$defs/MapRef"}],type:"string"}},required:["$ref"],type:"object"},LP={properties:{$switch:{$ref:"#/$defs/SwitchDef"},cases:{additionalProperties:{oneOf:[{$ref:"#/$defs/ElementDef"},{$ref:"#/$defs/ExternalComponentRef"}]},type:"object"},tagName:{$ref:"#/$defs/TagName"}},required:["$switch","cases"],type:"object"},Qh={additionalProperties:{$ref:"#/$defs/ElementPropertyValue"},description:"A Jx element definition. Maps directly to a DOM element.",properties:{"$map/index":{$ref:"#/$defs/RefObject"},"$map/item":{$ref:"#/$defs/RefObject"},$props:{$ref:"#/$defs/PropsObject"},$ref:{$ref:"#/$defs/ExternalRef"},$switch:{$ref:"#/$defs/SwitchDef"},alt:{$ref:"#/$defs/StringOrRef"},attributes:{$ref:"#/$defs/AttributesObject"},cases:{additionalProperties:{oneOf:[{$ref:"#/$defs/ElementDef"},{$ref:"#/$defs/ExternalComponentRef"}]},description:"Switch cases for this element. Maps case values to element definitions or external component refs, rendered according to the reactive $switch discriminant.",type:"object"},checked:{$ref:"#/$defs/BoolOrRef"},children:{$ref:"#/$defs/ChildrenValue"},className:{$ref:"#/$defs/StringOrRef"},dir:{enum:["ltr","rtl","auto"],type:"string"},disabled:{$ref:"#/$defs/BoolOrRef"},hidden:{$ref:"#/$defs/BoolOrRef"},href:{$ref:"#/$defs/StringOrRef"},id:{type:"string"},innerHTML:{$ref:"#/$defs/StringOrRef"},innerText:{$ref:"#/$defs/StringOrRef"},lang:{$ref:"#/$defs/StringOrRef"},name:{$ref:"#/$defs/StringOrRef"},placeholder:{$ref:"#/$defs/StringOrRef"},selected:{$ref:"#/$defs/BoolOrRef"},src:{$ref:"#/$defs/StringOrRef"},style:{$ref:"#/$defs/StyleObject"},tabIndex:{$ref:"#/$defs/NumberOrRef"},tagName:{$ref:"#/$defs/ElementTagName"},textContent:{$ref:"#/$defs/StringOrRef"},title:{$ref:"#/$defs/StringOrRef"},type:{$ref:"#/$defs/StringOrRef"},value:{$ref:"#/$defs/StringOrRef"}},required:["tagName"],type:"object"}});var qP;var VP=D(()=>{qP={description:"A typed reactive state variable with explicit type and default value. The type property is a JSON Schema or $ref to a $defs type definition. The default property is the initial runtime value.",not:{required:["$prototype"]},properties:{$ref:{description:"Reference to a shared type definition.",type:"string"},attribute:{description:"Linked HTML attribute name for CEM extraction.",type:"string"},default:{description:"Initial state value."},deprecated:{description:"Deprecation notice for CEM extraction.",oneOf:[{type:"boolean"},{type:"string"}]},description:{type:"string"},examples:{type:"array"},reflects:{description:"Whether property changes reflect back to the HTML attribute.",type:"boolean"},type:{description:"JSON Schema type definition, $ref to a $defs type, or JSON Schema type string.",oneOf:[{type:"string"},{type:"object"}]}},required:["default"],type:"object"}});var WP;var HP=D(()=>{WP={additionalProperties:!1,description:'A function declaration. $prototype must be "Function". body (inline) and $src (external) are mutually exclusive. First parameter is always state (the reactive scope).',properties:{$export:{description:"Named export in $src module. Defaults to the state key name.",type:"string"},$lazy:{description:"Load $src on first call instead of importing it up front. The function then returns a "+"promise, so it may only be called from a handler or lifecycle hook — never bound as a "+"computed value. Use it for code most visitors never reach.",type:"boolean"},$prototype:{const:"Function",type:"string"},$src:{description:"External module specifier. Mutually exclusive with body.",examples:["./counter.js","npm:@myorg/validators"],type:"string"},arguments:{description:"Legacy alias for parameters: bare string parameter names (state may be listed explicitly as the first name). Superseded by parameters.",examples:[["state","event"]],items:{type:"string"},type:"array"},body:{description:"Inline function body: an opaque JS source string (first implicit parameter is state), or a structured statement array (spec §20) — explicit structured function declaration, analyzable by tooling and editable visually. The escalation ladder within the shape is structured statements → JS string.",examples:["state.count++",'state.items.push({ id: Date.now(), text: "", done: false })','return state.score >= 90 ? "gold" : "silver"',[{operator:"push",target:{$ref:"#/state/cart"},value:1},{dispatchEvent:"cart-changed",detail:{$ref:"#/state/cart"}}]],oneOf:[{type:"string"},{$ref:"#/$defs/StatementList"}]},description:{type:"string"},emits:{description:"Array of CEM-compatible Event objects this function dispatches. Used for CEM extraction and studio event discovery.",items:{$ref:"#/$defs/CemEvent"},type:"array"},name:{description:"Explicit function name. Defaults to the state key name.",type:"string"},parameters:{description:"Function parameters (after the implicit state parameter). Accepts CEM-compatible parameter objects or bare string names for backward compatibility.",examples:[["event"],[{name:"event",type:{text:"Event"}}],[{description:"Item identifier",name:"id",type:{text:"number"}}]],items:{oneOf:[{type:"string"},{$ref:"#/$defs/CemParameter"}]},type:"array"},type:{description:"Return type for tooling (JSON Schema or CEM { text } format)."}},required:["$prototype"],type:"object"}});var BP,UP;var zP=D(()=>{BP={description:"One statement of a structured function body. Either a bare expression node in statement position (a mutation like =/push, or a call — its result discarded unless captured by an assignment), an if/then/else branch (JSON Schema conditional keywords; if holds a pure expression, then/else hold statement lists), a $switch multiway branch (discriminant matched by string form against cases keys, like element-level $switch), a dispatchEvent statement (WHATWG DOM: dispatches a CustomEvent from the handler's current target, with CustomEventInit members detail/bubbles/composed), or the two WHATWG event verbs stopPropagation and preventDefault, each spelled as the member set to true.",oneOf:[{$ref:"#/$defs/ExpressionNode"},{additionalProperties:!1,properties:{else:{items:{$ref:"#/$defs/Statement"},type:"array"},if:{$ref:"#/$defs/ExpressionOperand"},then:{items:{$ref:"#/$defs/Statement"},type:"array"}},required:["if","then"],title:"if / then / else — conditional branch (JSON Schema keyword triple)",type:"object"},{additionalProperties:!1,properties:{$switch:{$ref:"#/$defs/ExpressionOperand"},cases:{additionalProperties:{items:{$ref:"#/$defs/Statement"},type:"array"},type:"object"},default:{items:{$ref:"#/$defs/Statement"},type:"array"}},required:["$switch","cases"],title:"$switch / cases — multiway branch (element-level convention, ECMA switch semantics)",type:"object"},{additionalProperties:!1,properties:{bubbles:{type:"boolean"},composed:{type:"boolean"},detail:{$ref:"#/$defs/ExpressionOperand"},dispatchEvent:{description:"The CustomEvent type to dispatch (WHATWG DOM dispatchEvent).",type:"string"}},required:["dispatchEvent"],title:"dispatchEvent — emit a CustomEvent (WHATWG naming, CustomEventInit members)",type:"object"},{additionalProperties:!1,properties:{stopPropagation:{const:!0,description:"Stop the handler's event at the current target (WHATWG DOM stopPropagation), so an ancestor's handler for the same event does not run. A body run without an event has nothing to stop."}},required:["stopPropagation"],title:"stopPropagation — stop the event here (WHATWG DOM)",type:"object"},{additionalProperties:!1,properties:{preventDefault:{const:!0,description:"Cancel the handler's event's default action (WHATWG DOM preventDefault): a link's navigation, a form's submission, a key's scroll."}},required:["preventDefault"],title:"preventDefault — cancel the event's default action (WHATWG DOM)",type:"object"}]},UP={description:"A structured function body: statements executed sequentially (one yielding a promise is awaited before the next, per ECMA async/await semantics).",items:{$ref:"#/$defs/Statement"},type:"array"}});var GP;var KP=D(()=>{GP={description:'An external class / data source. $prototype is a constructor name (not "Function"). When $prototype is not in the built-in registry, $src is required. All state entries are reactive by default.',properties:{$export:{description:"Named export in $src module. Defaults to the $prototype value.",type:"string"},$prototype:{description:"Constructor name — built-in Web API class or external class name.",examples:["Request","URLSearchParams","FormData","LocalStorage","SessionStorage","Cookie","IndexedDB","Array","Set","Map","Blob","ReadableStream","MarkdownCollection","MyParser"],not:{const:"Function"},type:"string"},$src:{description:"External module specifier. Required when $prototype is not a built-in.",examples:["@jxsuite/md","./lib/my-parser.js","npm:@myorg/data"],type:"string"},autoIncrement:{type:"boolean"},body:{},database:{type:"string"},debounce:{minimum:0,type:"integer"},default:{},description:{type:"string"},domain:{type:"string"},filter:{anyOf:[{$ref:"#/$defs/RefObject"},{description:"A single filter object, e.g. an equality shorthand.",type:"object"},{description:'Ordered filter rules, e.g. [{ field: "Slug", op: "not empty" }].',items:{type:"object"},type:"array"}],description:"Filter configuration: a reactive $ref binding, a single filter object, or an ordered array of rules."},headers:{additionalProperties:{type:"string"},type:"object"},indexes:{items:{properties:{keyPath:{oneOf:[{type:"string"},{items:{type:"string"},type:"array"}]},name:{type:"string"},unique:{type:"boolean"}},required:["name","keyPath"],type:"object"},type:"array"},items:{},key:{type:"string"},keyPath:{type:"string"},manual:{type:"boolean"},map:{$ref:"#/$defs/ElementDef"},maxAge:{type:"integer"},method:{enum:["GET","POST","PUT","PATCH","DELETE","HEAD","OPTIONS"],type:"string"},name:{type:"string"},path:{type:"string"},responseType:{enum:["json","text","blob","arraybuffer","document",""],type:"string"},sameSite:{enum:["strict","lax","none"],type:"string"},secure:{type:"boolean"},sort:{anyOf:[{$ref:"#/$defs/RefObject"},{description:"A single sort rule, e.g. { field, order }.",type:"object"},{description:'Ordered sort rules, e.g. [{ field: "date", order: "desc" }].',items:{type:"object"},type:"array"}],description:"Sort configuration: a reactive $ref binding, a single { field, order } rule, or an ordered array of rules."},src:{description:"Configuration property passed to external class constructor.",type:"string"},store:{type:"string"},timing:{enum:["compiler","server","client"],type:"string"},url:{$ref:"#/$defs/StringOrRef"},version:{minimum:1,type:"integer"}},required:["$prototype"],type:"object"}});var YP;var XP=D(()=>{YP={description:"A reusable JSON Schema type definition for tooling only. No function, no runtime artifact. Referenced from state entries via $ref. Naming convention: PascalCase.",not:{anyOf:[{required:["default"]},{required:["$prototype"]}]},properties:{description:{type:"string"},enum:{type:"array"},examples:{type:"array"},items:{},maxLength:{minimum:0,type:"integer"},maximum:{type:"number"},minLength:{minimum:0,type:"integer"},minimum:{type:"number"},pattern:{type:"string"},properties:{type:"object"},required:{items:{type:"string"},type:"array"},type:{$ref:"#/$defs/JsonSchemaType"}},required:["type"],type:"object"}});var ZP,QP,e1,t1,r1,n1,s1,i1,o1,a1,l1,c1,u1,f1,d1,p1,m1;var h1=D(()=>{Xp();ZP={additionalProperties:!1,description:"A JSON Pointer $ref operand within an expression node. $args/<name> resolves a named formula's parameter (callable entries only).",properties:{$ref:{pattern:String.raw`^(\$map/|\$reduce/|\$args/|event#/|#/|parent#/|window#/|document#/)`,type:"string"}},required:["$ref"],type:"object"},QP={anyOf:[{not:{pattern:String.raw`\$\{`},type:"string"},{type:"number"},{type:"boolean"},{type:"null"},{items:{$ref:"#/$defs/ExpressionOperand"},type:"array"},{description:"Plain-object literal (e.g. an Intl options bag). Objects carrying $ref or operator keys are pointers/nodes, never literals.",not:{anyOf:[{required:["$ref"]},{required:["operator"]}]},type:"object"}],description:"A non-reactive operand: scalar, plain-object literal, or array of operands."},e1={anyOf:[{$ref:"#/$defs/ExpressionPointer"},{$ref:"#/$defs/ExpressionNode"},{$ref:"#/$defs/ExpressionLiteral"}],description:"Anything that may appear in target or value: a pointer, a literal, or a nested expression node."},t1={enum:["!","-"]},r1={enum:["+","-","*","/","%","===","!==","<","<=",">",">=","&&","||","??"]},n1={const:"?:"},s1={const:"switch"},i1={const:"call"},o1={description:"A genuine pure String.prototype / Array.prototype / Number.prototype method (spec §19.4d). The ES2023 change-by-copy family (toSorted, toReversed, toSpliced, with) stands in where mutation would otherwise occur. Receiver in target; value carries the argument (bare scalar) or argument list (array).",enum:["includes","indexOf","lastIndexOf","join","slice","concat","at","flat","toSorted","toReversed","toSpliced","with","toUpperCase","toLowerCase","trim","trimStart","trimEnd","split","startsWith","endsWith","padStart","padEnd","replaceAll","repeat","charAt","normalize","toLocaleUpperCase","toLocaleLowerCase","toFixed","toPrecision","toLocaleString"]},a1={enum:["=","+=","-=","*=","/="]},l1={enum:["pop","shift"]},c1={enum:["push","unshift"]},u1={const:"splice"},f1={const:"reduce"},d1={enum:["map","filter"]},p1={additionalProperties:!1,description:"The core expression node. operator + target, with value gated by arity.",oneOf:[{not:{anyOf:[{required:["value"]},{required:["initial"]}]},properties:{operator:{$ref:"#/$defs/UnaryOperator"}},required:["operator"],title:"Unary — target only, no value"},{not:{required:["initial"]},properties:{operator:{$ref:"#/$defs/BinaryOperator"}},required:["operator","value"],title:"Binary — left in target, right in value"},{not:{required:["initial"]},properties:{operator:{$ref:"#/$defs/AssignmentOperator"},target:{$ref:"#/$defs/ExpressionPointer"}},required:["operator","value"],title:"Assignment — writable target, value required"},{not:{anyOf:[{required:["value"]},{required:["initial"]}]},properties:{operator:{$ref:"#/$defs/NoArgMethod"},target:{$ref:"#/$defs/ExpressionPointer"}},required:["operator"],title:"pop / shift — array receiver, no value"},{not:{required:["initial"]},properties:{operator:{$ref:"#/$defs/OneArgMethod"},target:{$ref:"#/$defs/ExpressionPointer"}},required:["operator","value"],title:"push / unshift — array receiver, single value argument"},{not:{required:["initial"]},properties:{operator:{$ref:"#/$defs/SpliceMethod"},target:{$ref:"#/$defs/ExpressionPointer"},value:{items:{$ref:"#/$defs/ExpressionOperand"},minItems:1,type:"array"}},required:["operator","value"],title:"splice — array receiver, [start, deleteCount, ...items]"},{properties:{operator:{$ref:"#/$defs/ReduceMethod"},target:{anyOf:[{$ref:"#/$defs/ExpressionPointer"},{$ref:"#/$defs/ExpressionNode"}]},value:{$ref:"#/$defs/ExpressionNode"}},required:["operator","value","initial"],title:"reduce — pure fold over a pointer or derived array; seed in initial"},{not:{required:["initial"]},properties:{operator:{$ref:"#/$defs/MapFilterMethod"},target:{anyOf:[{$ref:"#/$defs/ExpressionPointer"},{$ref:"#/$defs/ExpressionNode"}]},value:{$ref:"#/$defs/ExpressionNode"}},required:["operator","value"],title:"map / filter — pure over a pointer or derived array; per-item expression in value"},{description:"The ECMAScript conditional (ternary) operator, pure: target is the test, value the consequent, initial the alternate (the reduce precedent for repurposing initial). Chain else-if by nesting another ?: node in initial.",properties:{operator:{$ref:"#/$defs/ConditionalOperator"}},required:["operator","value","initial"],title:"?: — pure conditional; test in target, consequent in value, alternate in initial"},{description:"Value-keyed multiway selection, pure: target is the discriminant (matched against case keys by its string form, like element-level $switch), cases maps matched values to result operands, default is the operand when no case matches (result is undefined without it). Condition-chain branching composes from nested ?: nodes instead.",not:{anyOf:[{required:["value"]},{required:["initial"]}]},properties:{cases:{additionalProperties:{$ref:"#/$defs/ExpressionOperand"},type:"object"},default:{$ref:"#/$defs/ExpressionOperand"},operator:{$ref:"#/$defs/SwitchOperator"}},required:["operator","cases"],title:"switch — pure value-keyed selection; discriminant in target, results in cases/default"},{description:"A pure standard-library method call: target is the receiver (any operand — never mutated; change-by-copy names replace the mutating originals), value the optional argument (bare scalar) or argument list (array). A missing receiver or method yields undefined, matching null-safe path reads.",not:{required:["initial"]},properties:{operator:{$ref:"#/$defs/PureMethod"}},required:["operator"],title:"Pure method — genuine prototype methods; receiver in target, args in value"},{description:"Invoke a callable, pure in formula position: target is the callee pointer — a named formula entry (#/state/…) or a blessed pure global via window#/ (Math.*, JSON.*, Object.keys/values/entries, and "+`${b0()}) — and value is the positional argument list (the splice args-in-value precedent). Argument order follows the callee's declared parameters.`,not:{required:["initial"]},properties:{operator:{$ref:"#/$defs/CallOperator"},target:{$ref:"#/$defs/ExpressionPointer"},value:{items:{$ref:"#/$defs/ExpressionOperand"},type:"array"}},required:["operator"],title:"call — invoke a named formula or blessed global; callee in target, args in value"}],properties:{cases:{additionalProperties:{$ref:"#/$defs/ExpressionOperand"},description:"switch only: matched discriminant value (string form) → result operand.",type:"object"},default:{$ref:"#/$defs/ExpressionOperand",description:"switch only: result operand when no case key matches."},initial:{$ref:"#/$defs/ExpressionOperand"},operator:{type:"string"},target:{$ref:"#/$defs/ExpressionOperand"},value:{$ref:"#/$defs/ExpressionOperand"}},required:["operator","target"],type:"object"},m1={additionalProperties:!1,description:"A declarative expression entry (Shape 5). Used as a state entry or inline event handler. With parameters it is a named formula: a pure, reusable computation invoked via the call operator, its parameters resolved through $args/<name> refs in the body.",properties:{$description:{type:"string"},$expression:{$ref:"#/$defs/ExpressionNode"},$title:{type:"string"},parameters:{description:"Named-formula parameters (CEM convention, as on Function entries): bare names or CEM parameter objects. Present ⇒ the entry is callable, not a computed value.",items:{anyOf:[{type:"string"},{$ref:"#/$defs/CemParameter"}]},type:"array"}},required:["$expression"],type:"object"}});var g1,y1,b1,x1;var $1=D(()=>{g1={description:"A single state entry. Shape is determined by value type: "+"scalar/array → naked reactive property, string with ${} → computed, "+'object with $prototype: "Function" → function, '+"object with $prototype: <other> → data source, "+"object with type and default → typed reactive property, "+"plain object → naked object reactive property.",oneOf:[{type:"number"},{type:"boolean"},{type:"null"},{type:"string"},{type:"array"},{$ref:"#/$defs/TypedStateDef"},{$ref:"#/$defs/FunctionDef"},{$ref:"#/$defs/ExternalClassDef"},{$ref:"#/$defs/ExpressionEntry"},{not:{anyOf:[{required:["$prototype"]},{required:["default"]},{required:["type"]},{required:["$expression"]}]},type:"object"}]},y1={additionalProperties:{$ref:"#/$defs/StateEntry"},description:"Map of runtime variables. Keys are camelCase (public) or #-prefixed (private). All entries are reactive by default.",type:"object"},b1={additionalProperties:{$ref:"#/$defs/TypeDefEntry"},description:"Map of reusable JSON Schema type definitions. Keys are PascalCase type names. No runtime artifacts are produced.",type:"object"},x1={description:"A $defs type definition entry. Must be a pure JSON Schema type definition or a class definition (.class.json format).",oneOf:[{$ref:"#/$defs/PureTypeDef"},{$ref:"#/$defs/ClassDef"}]}});var WW,eg,tg,rg,ng,sg,ig,og,ag,lg,w1;var v1=D(()=>{WW=["method","accessor","parse","serialize","rewrite","discover","load","projectData","resolvePaths","lower","emit","head","assets","mount","dialect","deploySchema","bindings","testConnection"],eg={description:"A typed parameter definition for a class.",properties:{default:{},description:{type:"string"},examples:{type:"array"},format:{description:`When "json-schema", this parameter's value is itself a JSON Schema.`,type:"string"},identifier:{type:"string"},type:{}},required:["identifier"],type:"object"},tg={description:"A class field definition with access control and scope.",properties:{$prototype:{description:'Data source prototype for this field (e.g., "Request").',type:"string"},access:{enum:["public","private","protected"],type:"string"},default:{},description:{type:"string"},examples:{type:"array"},identifier:{type:"string"},initializer:{},role:{const:"field",type:"string"},scope:{enum:["instance","static"],type:"string"},type:{}},type:"object"},rg={description:"Class constructor definition.",properties:{$prototype:{const:"Function",type:"string"},body:{oneOf:[{type:"string"},{items:{type:"string"},type:"array"}]},description:{type:"string"},parameters:{items:{oneOf:[{additionalProperties:!1,properties:{$ref:{type:"string"}},required:["$ref"],type:"object"},{$ref:"#/$defs/ClassParameterDef"}]},type:"array"},role:{const:"constructor",type:"string"},superCall:{properties:{arguments:{items:{type:"string"},type:"array"}},type:"object"}},type:"object"},ng={description:"A class method or accessor definition. Capability roles (parse, serialize, rewrite, discover, load) mark static methods that hosts (compiler, server, studio) invoke for format dispatch.",properties:{$prototype:{const:"Function",type:"string"},access:{enum:["public","private","protected"],type:"string"},body:{oneOf:[{type:"string"},{items:{type:"string"},type:"array"}]},description:{type:"string"},getter:{properties:{body:{type:"string"}},type:"object"},identifier:{type:"string"},parameters:{items:{oneOf:[{additionalProperties:!1,properties:{$ref:{type:"string"}},required:["$ref"],type:"object"},{$ref:"#/$defs/ClassParameterDef"}]},type:"array"},returnType:{},role:{enum:WW,type:"string"},scope:{enum:["instance","static"],type:"string"},setter:{properties:{body:{type:"string"},parameters:{type:"array"}},type:"object"},timing:{description:"Execution environments allowed to call this capability directly. Hosts outside the list round-trip through the dev server.",items:{enum:["compiler","server","client"],type:"string"},type:"array"}},type:"object"},sg={description:"Format participation marker. A class carrying this block is auto-discovered from the project imports map and used for file-extension dispatch by the compiler, server, and studio.",properties:{documentKinds:{description:'"page"/"component" allow the extension in pages/components discovery; "content" allows it as a content-type source.',items:{enum:["page","component","content"],type:"string"},type:"array"},exportTarget:{description:"When true, site builds emit a serialized sidecar per page in this format.",type:"boolean"},extensions:{description:'File extensions this format claims, with leading dot (e.g. [".md"]).',items:{pattern:String.raw`^\.`,type:"string"},minItems:1,type:"array"},mediaType:{description:"MIME type for the format (icons, labels, HTTP).",type:"string"},remote:{description:"When true, the load capability accepts http(s) URLs as sources.",type:"boolean"}},required:["extensions"],type:"object"},ig={additionalProperties:!1,description:"Project-section admission block (specs/extensions.md §9). A class carrying this block owns "+"the project.json section named by `key`; hosts dispatch that section's data through the class's projectData/resolvePaths capabilities.",properties:{description:{type:"string"},key:{description:"The project.json top-level section this class owns (exclusive per project).",type:"string"},referenceable:{description:"Whether section entries can be referenced from documents (e.g. content types).",type:"boolean"},title:{type:"string"}},required:["key"],type:"object"},og={additionalProperties:!1,description:"Server-mount admission block (specs/extensions.md §11). A class carrying this block mounts "+"routes under its /_jx/ basePath in the site worker and dev server.",properties:{basePath:{description:"Route subtree this class mounts — must be under /_jx/ (exclusive per project).",examples:["/_jx/data","/_jx/auth"],type:"string"},module:{description:"Module specifier exporting the mount handler.",type:"string"},order:{description:"Mount order (ascending; default 100).",type:"number"}},required:["basePath"],type:"object"},ag={description:"Connection-provider admission block (specs/extensions.md §12). A class carrying this block "+"provides database connections of the given provider/kind.",properties:{kind:{description:"SQL dialect family the provider speaks.",enum:["sqlite","postgres"],type:"string"},local:{description:"Local-development substitute provider (e.g. sqlite for D1).",type:"string"},module:{description:"Module specifier exporting the provider implementation.",type:"string"},provider:{description:"Provider identifier (e.g. d1, supabase, sqlite).",type:"string"},serve:{description:"Module specifier exporting the serve-time worker binding.",type:"string"}},required:["provider","kind"],type:"object"},lg={description:"Studio control-surface hints for a format class: editor modes, document-mode rules, templates, and the element/nesting constraints that gate structural editing.",properties:{documentMode:{properties:{componentWhen:{description:"Treat the document as a component when this top-level/frontmatter key matches the regex.",properties:{frontmatterKey:{type:"string"},matches:{type:"string"}},type:"object"},default:{enum:["content","component"],type:"string"}},type:"object"},elements:{description:"Element allowlist and nesting constraints for structural editing.",properties:{block:{items:{type:"string"},type:"array"},inline:{items:{type:"string"},type:"array"},nesting:{additionalProperties:{properties:{block:{type:"boolean"},directive:{type:"boolean"},inline:{type:"boolean"},only:{items:{type:"string"},type:"array"}},type:"object"},description:'Per-parent child rules keyed by tag (or "_root"): { block, inline, directive } booleans or { only: [tags] }.',type:"object"},textOnly:{items:{type:"string"},type:"array"},void:{items:{type:"string"},type:"array"}},type:"object"},icon:{type:"string"},modes:{description:"Editor modes the studio offers for documents of this format.",items:{type:"string"},type:"array"},newFileTemplate:{description:"Initial source text for newly created files of this format.",type:"string"}},type:"object"},w1={additionalProperties:!1,description:'A .class.json schema-defined class. $prototype must be "Class". Defines fields, constructor, methods, and type parameters via $defs. Optionally points to a JS module via $implementation for hybrid execution.',properties:{$defs:{description:"Class members: parameters, returnTypes, fields, constructor, methods.",properties:{constructor:{$ref:"#/$defs/ClassConstructorDef"},fields:{additionalProperties:{$ref:"#/$defs/ClassFieldDef"},description:"Class fields with role, access, scope, and type information.",type:"object"},methods:{additionalProperties:{$ref:"#/$defs/ClassMethodDef"},description:"Class methods and accessors.",type:"object"},parameters:{additionalProperties:{$ref:"#/$defs/ClassParameterDef"},description:"Reusable typed parameter schemas, keyed by name.",type:"object"},returnTypes:{additionalProperties:{type:"object"},description:"Output type schemas, keyed by name.",type:"object"}},type:"object"},$id:{type:"string"},$implementation:{description:"Relative path to a JS module containing the actual class implementation.",type:"string"},$prototype:{const:"Class",type:"string"},$schema:{type:"string"},$studio:{$ref:"#/$defs/StudioHints"},connector:{$ref:"#/$defs/ConnectorBlockDef"},description:{type:"string"},extends:{description:"Base class — string name or $ref to another .class.json.",oneOf:[{type:"string"},{properties:{$ref:{type:"string"}},required:["$ref"],type:"object"}]},format:{$ref:"#/$defs/FormatDef"},project:{$ref:"#/$defs/ProjectBlockDef"},server:{$ref:"#/$defs/ServerBlockDef"},title:{description:"PascalCase class name, used as the export name.",type:"string"}},required:["$prototype","title"],type:"object"}});var S1;var E1=D(()=>{S1={additionalProperties:!1,description:"Schema for jx-extension.json manifests. Located at the extension package root and exported so hosts can resolve <package>/jx-extension.json through the exports map.",properties:{$schema:{type:"string"},classes:{additionalProperties:{type:"string"},description:"$prototype-visible class name → class descriptor path, relative to the manifest.",type:"object"},description:{description:"One-line description.",type:"string"},name:{description:"Package name; must match package.json.",type:"string"},schemas:{additionalProperties:!1,description:"Schema fragments this package contributes, relative to the manifest.",properties:{document:{description:"Document-schema fragment (positions like $paths values).",type:"string"},fields:{description:"Field-union fragment: its $defs members are unioned into the per-project "+"field-schema resource as extension field extras (specs/extensions.md §5.3).",type:"string"},project:{description:"Project-schema fragment (top-level project.json sections).",type:"string"}},type:"object"},title:{description:"Human-readable name for studio surfaces.",type:"string"}},required:["name"],type:"object"}});var Of;var j1=D(()=>{Of={description:"Image optimization configuration for the project.",properties:{formats:{items:{type:"string"},type:"array"},lazyLoad:{type:"boolean"},optimize:{type:"boolean"},picture:{description:"Wrap a multi-format image in a <picture> with one <source> per format (default true). With it off the <img> carries a srcset in the preferred format alone, which browsers that cannot decode that format will still select from.",type:"boolean"},quality:{properties:{avif:{type:"number"},jpeg:{type:"number"},png:{type:"number"},webp:{type:"number"}},type:"object"},remoteDomains:{description:'Hostnames whose remote (https) images are optimized through /cdn-cgi/image transform URLs (cloudflare service only), e.g. ["drive.usercontent.google.com"]. Remote sources from other hosts are left untouched.',items:{type:"string"},type:"array"},service:{description:'How images are optimized: "build" runs Sharp at build time; "cloudflare" emits /cdn-cgi/image transform URLs served by Cloudflare Image Transformations (requires the feature to be enabled on the serving zone).',enum:["build","cloudflare"],type:"string"},sizes:{type:"string"},widths:{items:{type:"number"},type:"array"}},type:"object"}});var HW,cg;var P1=D(()=>{Zi();HW=[301,302,303,307,308],cg={description:"Schema for Jx project.json files. A project.json file is the root anchor file for a Jx project, declaring site metadata, default settings, global styles, extensions, and build configuration. Open by design: extension-contributed sections (e.g. `content`) are opaque top-level keys; the generated per-project entry document (project.schema.json) closes the composition.",properties:{$defs:{description:"Global type definitions available to all pages.",type:"object"},$elements:{description:"Global custom element dependencies available to all pages. Items are $ref objects or npm package specifier strings.",items:{oneOf:[{additionalProperties:!1,properties:{$ref:{type:"string"}},required:["$ref"],type:"object"},{type:"string"}]},type:"array"},$head:{description:"Global <head> entries applied to all pages. Array of element definitions for meta tags, link tags, script tags, etc.",examples:[[{attributes:{href:"/favicon.svg",rel:"icon"},tagName:"link"},{attributes:{content:"Jx",name:"generator"},tagName:"meta"}]],items:{properties:{attributes:{additionalProperties:{type:"string"},type:"object"},tagName:{type:"string"}},type:"object"},type:"array"},$media:{additionalProperties:{type:"string"},description:'Named media breakpoints following CSS @custom-media convention. Available in all component style objects. Declaring a pure color-scheme query (e.g. "--dark": "(prefers-color-scheme: dark)") additionally opts the site into the forced-scheme contract: @--dark style blocks are dual-emitted so a data-color-scheme attribute on <html> overrides the OS preference, color-scheme is declared on :root, and a pre-paint script restores the '+"visitor's persisted choice (spec §9.5).",examples:[{"--dark":"(prefers-color-scheme: dark)","--lg":"(min-width: 1024px)","--md":"(min-width: 768px)","--sm":"(min-width: 640px)"}],type:"object"},$schema:{description:"Relative path to the generated per-project schema (conventionally ./project.schema.json, written by `jx schema`).",type:"string"},build:{description:"Build configuration.",properties:{adapter:{description:"Platform adapter for deployment-specific output.",enum:["static","cloudflare-pages","cloudflare-workers","node","bun"],type:"string"},deploy:{additionalProperties:!1,description:"Deployment tracking: the hosting project this repo publishes to. Identifiers "+"only (no secrets) — safe to commit; Studio uses it to tell whether the publish "+"workflow already exists. `adapter` says how the build is packaged; `deploy` says where it ships.",properties:{accountId:{description:"Hosting account id (e.g. the Cloudflare account id).",type:"string"},productionUrl:{description:"Production URL of the connected hosting project.",type:"string"},projectName:{description:"Hosting project name (e.g. the Cloudflare Pages project).",pattern:"^[a-z0-9][a-z0-9-]*$",type:"string"},provider:{description:"Hosting provider the project is connected to.",enum:["cloudflare-pages"],type:"string"}},required:["provider","accountId","projectName"],type:"object"},format:{default:"directory",description:"Reserved; currently unused. Accepted for forward compatibility with single-file output (desktop single-file mode) — the build emits per-route directories regardless.",enum:["directory","single"],type:"string"},outDir:{default:"./dist",description:"Output directory for compiled site.",type:"string"},headers:{additionalProperties:!1,description:"Emit dist/_headers — the response headers only the build can know. Honored by "+"Cloudflare Pages/Workers assets and Netlify; on the node/bun adapters the file documents what a reverse proxy in front of them must send.",properties:{cache:{default:"auto",description:'"auto" marks the content-addressed image variants immutable (RFC 8246) and revalidates everything else (RFC 9111). "off" emits no Cache-Control at all.',enum:["auto","off"],type:"string"},enabled:{default:!0,type:"boolean"},rules:{additionalProperties:{additionalProperties:{type:"string"},type:"object"},description:"Verbatim rules, merged after the generated block.",propertyNames:{pattern:"^/"},type:"object"},security:{additionalProperties:!1,properties:{contentTypeOptions:{default:!0,type:"boolean"},csp:{default:!1,description:"CSP Level 3. Off by default: unlike the other security headers this one "+"governs code the build cannot see — a third-party script that loads a "+"second script, a widget that opens a frame — so turning it on is a change "+"to verify in the browser console, not a safe default. `script-src` is derived from the inline scripts and external origins the build emitted; `style-src` keeps 'unsafe-inline', because per-page <style> blocks and per-element style attributes have no site-wide hash.",oneOf:[{type:"boolean"},{const:"report-only"},{additionalProperties:!1,properties:{directives:{additionalProperties:{oneOf:[{type:"string"},{const:!1}]},description:"Replace (string) or remove (false) a computed directive. A replacement is wholesale, so an addition restates the defaults.",type:"object"},mode:{default:"enforce",enum:["enforce","report-only"]},reportUri:{format:"uri-reference",type:"string"}},type:"object"}]},frameOptions:{default:"SAMEORIGIN",oneOf:[{enum:["DENY","SAMEORIGIN"],type:"string"},{const:!1}]},hsts:{default:!1,description:"RFC 6797. Off by default: a wrong max-age locks the apex domain to HTTPS for that long, and the mistake is invisible until a certificate lapses. `preload` requires `includeSubDomains` and is a build error without it.",oneOf:[{type:"boolean"},{additionalProperties:!1,properties:{includeSubDomains:{default:!0,type:"boolean"},maxAge:{default:31536000,minimum:0,type:"integer"},preload:{default:!1,type:"boolean"}},type:"object"}]},permissionsPolicy:{default:"camera=(), microphone=(), geolocation=()",oneOf:[{type:"string"},{const:!1}]},referrerPolicy:{default:"strict-origin-when-cross-origin",oneOf:[{enum:["no-referrer","no-referrer-when-downgrade","origin","origin-when-cross-origin","same-origin","strict-origin","strict-origin-when-cross-origin","unsafe-url"],type:"string"},{const:!1}]}},type:"object"}},type:"object"},sitemap:{default:!0,description:"Generate sitemap.xml from the route table (requires `url`). Set false to disable.",type:"boolean"},trailingSlash:{default:"always",description:"Trailing slash behavior for generated URLs.",enum:["always","never","ignore"],type:"string"}},type:"object"},copy:{additionalProperties:{type:"string"},description:"Declarative file copy map. Keys are source paths (relative to project root), values are destination paths (relative to outDir).",type:"object"},defaults:{description:"Default settings applied to all pages unless overridden.",properties:{charset:{default:"utf8",description:"Default charset for the page.",type:"string"},dir:{description:"Base direction for the <html> element. Omitted when unset — a page's `$dir` "+"overrides it. Right-to-left content renders left-to-right without this.",enum:["ltr","rtl","auto"],type:"string"},lang:{default:"en",description:"Default lang attribute for the <html> element. A page's `$lang` overrides it.",type:"string"},layout:{default:null,description:"Default layout file path applied to all pages. Set to null to render pages without a layout.",examples:["./layouts/base.json"],oneOf:[{type:"string"},{type:"null"}]},shadow:{default:!1,description:"Default shadow-DOM mode for every component (spec.md §16.6). Off unless set: a "+"shadow root isolates component styles from the page and replaces the <slot> emulation with real slot distribution. A component's own `$shadow` overrides this in both directions.",oneOf:[{enum:["open","closed"],type:"string"},{const:!1,type:"boolean"}]}},type:"object"},extensions:{description:"Extension packages: bare package names (resolved project-first through the package exports map) or relative paths. Each must export jx-extension.json.",examples:[["@jxsuite/parser"]],items:{type:"string"},type:"array"},manifest:{additionalProperties:!1,description:'W3C Web App Manifest, emitted as manifest.webmanifest with a <link rel="manifest"> on every page. Absent means no manifest: it is a claim that a site is meant to be installed, and most are not.',properties:{backgroundColor:{type:"string"},categories:{items:{type:"string"},type:"array"},description:{type:"string"},dir:{enum:["ltr","rtl","auto"],type:"string"},display:{default:"standalone",enum:["fullscreen","standalone","minimal-ui","browser"],type:"string"},enabled:{default:!0,type:"boolean"},icons:{description:"Icons at 192px and 512px are what browsers require before offering to install the site; the build warns when either is missing.",items:{additionalProperties:!1,properties:{purpose:{type:"string"},sizes:{examples:["192x192"],type:"string"},src:{type:"string"},type:{type:"string"}},required:["src"],type:"object"},type:"array"},lang:{type:"string"},name:{description:"Defaults to the project name.",type:"string"},orientation:{type:"string"},scope:{type:"string"},shortName:{type:"string"},startUrl:{default:"/",type:"string"},themeColor:{type:"string"}},type:"object"},serviceWorker:{default:!1,description:"W3C Service Worker, emitted as sw.js. Off unless declared — a worker is sticky, so it "+"is the one output that can keep breaking visitors after a deploy tries to fix them. **Turning it off means `false`, not deleting the key**: `false` emits a tombstone at the same URL that unregisters the old worker and clears its caches, and a 404 there is not an instruction to stop. HTML is always network-first; only the content-addressed /images/_optimized/* is served cache-first.",oneOf:[{type:"boolean"},{additionalProperties:!1,properties:{enabled:{default:!0,type:"boolean"},offlineFallback:{description:"Page served for a failed navigation. Added to `precache` if not already there.",type:"string"},precache:{description:"Site-absolute URLs fetched at install time. Each must be a file this build produces; one that is not fails the build, because a single unreachable entry stops the worker installing at all.",items:{pattern:"^/",type:"string"},type:"array"},scope:{default:"/",type:"string"}},type:"object"}]},securityTxt:{additionalProperties:!1,description:"RFC 9116 security.txt, emitted at .well-known/security.txt. `expires` is required by "+"§2.5.5 and an absent or past value is a build error — an expired file advertises a "+"reporting channel while telling the reporter not to trust it. A hand-placed public/.well-known/security.txt shadows this, which is how a clearsigned file ships.",properties:{acknowledgments:{items:{type:"string"},type:"array"},canonical:{type:"string"},contact:{description:"At least one mailto:, https: or tel: URI (§2.5.3).",items:{type:"string"},type:"array"},enabled:{default:!0,type:"boolean"},encryption:{items:{type:"string"},type:"array"},expires:{format:"date-time",type:"string"},hiring:{items:{type:"string"},type:"array"},policy:{items:{type:"string"},type:"array"},preferredLanguages:{description:"BCP 47 tags, validated and canonicalized like i18n.locales.",items:{pattern:hu,type:"string"},type:"array"}},type:"object"},i18n:{description:"Internationalization configuration.",properties:{defaultLocale:{description:"Default locale, as a BCP 47 language tag. The pattern catches shape errors (`en_US`, `en--US`); the build is the authority on well-formedness.",examples:["en"],pattern:hu,type:"string"},locales:{description:"Available locales, as BCP 47 language tags.",examples:[["en","fr","de"]],items:{pattern:hu,type:"string"},type:"array"},routing:{description:"Locale routing strategy.",enum:["prefix-except-default","prefix-always"],type:"string"}},type:"object"},images:{$ref:"#/$defs/ImageConfig"},imports:{additionalProperties:{type:"string"},description:"Global import map: $prototype names to .class.json file paths. Makes external classes available by name in all pages.",examples:[{Markdown:"@jxsuite/parser/Markdown.class.json",MarkdownCollection:"@jxsuite/parser/MarkdownCollection.class.json"}],type:"object"},name:{default:"Jx Site",description:"Human-readable project name.",examples:["My Portfolio","Jx Example Site"],type:"string"},redirects:{additionalProperties:{oneOf:[{description:"Destination path or URL; implies a 301.",type:"string"},{additionalProperties:!1,description:"A redirect with an explicit RFC 9110 §15.4 status.",properties:{destination:{type:"string"},status:{default:301,description:"RFC 9110 §15.4 redirection status. 307 and 308 preserve the request method; "+"301 and 302 historically do not.",enum:[...HW],type:"integer"}},required:["destination"],type:"object"},{additionalProperties:!1,description:"A rewrite (proxy): the destination's content is served AT the source URL, with no "+"redirect. Emitted as status 200 in `_redirects`, which is the host convention — "+"not an HTTP redirection status.",properties:{destination:{type:"string"},rewrite:{const:!0,type:"boolean"}},required:["destination","rewrite"],type:"object"}]},description:"Static redirect and rewrite rules. Keys are source paths in URLPattern pathname syntax.",examples:[{"/api/*":{destination:"https://api.example.com/*",rewrite:!0},"/legacy/*":{destination:"/archive/*",status:308},"/old-about":"/about"}],propertyNames:{pattern:"^/"},type:"object"},state:{description:"Site-wide reactive state available to all pages.",type:"object"},style:{additionalProperties:{oneOf:[{type:"string"},{type:"number"},{$ref:"#/$defs/StyleObject"}]},description:"Global CSS styles applied to the <body> element. Uses the same camelCase CSSOM convention and recursive selector/at-rule nesting as component styles.",type:"object"},url:{description:"Production URL of the deployed site.",examples:["https://example.com","https://jxsuite.com"],type:"string"}},type:"object"}});function BW(){return k1??=UW(),k1}async function UW(){let[e,t,r]=await Promise.all([A1.listAll(),R1.default.listAll(),O1.default.parseAll()]),n=new Set;for(let{elements:c}of Object.values(e))for(let u of c)if(!u.obsolete)n.add(u.name);let s=[...n].toSorted(),i=new Set;for(let c of t.properties)for(let u of c.styleDeclaration??[])i.add(u);let o=[...i].toSorted(),a=new Set;for(let c of Object.values(r))for(let u of c){if(u.type!=="interface"&&u.type!=="interface mixin")continue;if(!u.members)continue;for(let p of u.members)if(p.type==="attribute"&&p.name?.startsWith("on")&&p.idlType?.idlType==="EventHandler")a.add(p.name)}let l=[...a].toSorted();return{cssProps:o,eventHandlers:l,tagExamples:s}}function zW(e){let t={};for(let r of e)t[r]={description:`Event handler for the "${r.slice(2)}" event.`,oneOf:[{$ref:"#/$defs/RefObject"},{$ref:"#/$defs/ExpressionEntry"},{$ref:"#/$defs/FunctionDef"}]};return t}function GW(e){let t={...Rf.properties};for(let r of e)t[r]={oneOf:[{type:"string"},{type:"number"},{$ref:"#/$defs/RefObject"}]};return t}async function KW(){let{tagExamples:e,cssProps:t,eventHandlers:r}=await BW();return{$defs:{DefsMap:b1,TypeDefEntry:x1,StateMap:y1,StateEntry:g1,TypedStateDef:qP,PureTypeDef:YP,FunctionDef:WP,ClassDef:w1,ClassParameterDef:eg,ClassFieldDef:tg,ClassConstructorDef:rg,ClassMethodDef:ng,FormatDef:sg,ProjectBlockDef:ig,ServerBlockDef:og,ConnectorBlockDef:ag,StudioHints:lg,ExternalClassDef:GP,ExpressionPointer:ZP,ExpressionLiteral:QP,ExpressionOperand:e1,UnaryOperator:t1,BinaryOperator:r1,ConditionalOperator:n1,SwitchOperator:s1,CallOperator:i1,PureMethod:o1,AssignmentOperator:a1,NoArgMethod:l1,OneArgMethod:c1,SpliceMethod:u1,ReduceMethod:f1,MapFilterMethod:d1,ExpressionNode:p1,ExpressionEntry:m1,Statement:BP,StatementList:UP,ElementDef:{...Qh,properties:{...Qh.properties,...zW(r)}},ChildrenValue:CP,ArrayNamespace:NP,SwitchDef:DP,SwitchNode:LP,StyleObject:{...Rf,properties:GW(t)},AttributesObject:IP,PropsObject:JP,RefObject:_P,AnyRef:kP,InternalRef:wP,StateRef:vP,ExternalRef:SP,ExternalComponentRef:AP,GlobalRef:EP,ParentRef:jP,MapRef:PP,ElementPropertyValue:MP,StringOrRef:uP,BoolOrRef:fP,NumberOrRef:dP,CemParameter:gP,CemEvent:yP,TagName:{...lP,examples:[...e,"my-counter","todo-app","user-card"]},TagExpression:iP,ElementTagName:oP,JsonSchemaType:xP,HeadEntry:mP,ImageConfig:Of,PathsValue:{$id:ao,anyOf:[...Yl,Bh],description:"Default $paths source union: the core shapes, plus a catch-all for source shapes contributed by extensions this schema cannot see. The project's generated document.schema.json replaces this with the exact set its extensions provide."}},$id:"https://jxsuite.com/schema/v1",$schema:"https://json-schema.org/draft/2020-12/schema",additionalProperties:{$ref:"#/$defs/ElementPropertyValue"},description:"Schema for Jx component files. A Jx document is a JSON object that declaratively describes a reactive web component: its structure (DOM tree), styling, type definitions ($defs), runtime state, and inline or external functions. Reactivity is powered by @vue/reactivity.",properties:{$defs:{$ref:"#/$defs/DefsMap",description:"Pure JSON Schema type definitions for this component. "+"All entries are reusable type schemas — no runtime artifacts are produced. "+"Referenced from state entries via $ref. Naming convention: PascalCase."},$elements:{description:"Custom element dependencies. Items are either $ref objects pointing to JX element definitions, or bare npm package name strings for web component libraries.",items:{oneOf:[{additionalProperties:!1,properties:{$ref:{type:"string"}},required:["$ref"],type:"object"},{description:"npm package specifier (must declare customElements in package.json)",type:"string"}]},type:"array"},$head:{description:"Page-level <head> entries. Array of head entries for meta tags, link tags, script tags, etc. Merged with layout and site-level $head entries.",items:{$ref:"#/$defs/HeadEntry"},type:"array"},$id:{description:"Component identifier string. Used by tooling and the builder.",examples:["Counter","TodoApp","UserCard"],type:"string"},$dir:{description:"Base direction for this page's <html> element, overriding `defaults.dir`. Right-to-left content renders left-to-right without it.",enum:["ltr","rtl","auto"],type:"string"},$lang:{description:"Language tag for this page's <html> element, overriding `defaults.lang` "+"(site-architecture.md §8.4).",examples:["en","fr","ar-EG"],type:"string"},$translationKey:{description:"This page's identity across languages, overriding the one its path implies "+"(site-architecture.md §13.5). Two routes are translations when their keys match; "+"the default key is the path with the locale prefix removed, which is right whenever "+"the paths are parallel and wrong for a localized slug — /fr-ca/a-propos/ shares "+"nothing with /about/ until one of them says so.",examples:["about","blog/hello-world"],type:"string"},$layout:{description:"Layout reference for pages. String path to a layout JSON file, or false to opt out of the default layout.",examples:["./layouts/base.json"],oneOf:[{type:"string"},{const:!1,type:"boolean"}]},$shadow:{description:"Render this component into a shadow root instead of the light DOM (spec.md §16.6). "+"Off unless set: a shadow root isolates the component's styles from the page and replaces the <slot> emulation with real slot distribution, so it changes how the "+"component composes. Overrides `defaults.shadow` in both directions — `false` opts "+"one component out of a project that opted in.",oneOf:[{enum:["open","closed"],type:"string"},{const:!1,type:"boolean"}]},$sitemap:{description:"Set false to exclude this page from sitemap.xml (site-architecture.md §8.4.1). "+"Every other page with a URL is included.",type:"boolean"},$media:{additionalProperties:{type:"string"},description:'Named media breakpoints following CSS @custom-media convention. Keys use the CSS custom property -- prefix. Pure color-scheme queries (e.g. "--dark": "(prefers-color-scheme: dark)") are dual-emitted so a data-color-scheme attribute on the root element forces the scheme '+"regardless of the OS preference (spec §9.5).",examples:[{"--dark":"(prefers-color-scheme: dark)","--md":"(min-width: 768px)","--sm":"(min-width: 640px)"}],type:"object"},$paths:{$ref:ao,description:"Dynamic route source for a page: expands one page per entry at build time. One of the core shapes (explicit `values`, a `$ref` data file, or a bare array of parameter objects) or a source shape contributed by an enabled extension, such as the parser's `contentType`."},$schema:{description:"URI identifying the Jx dialect version. Enables schema-aware IDE tooling.",examples:["https://jxsuite.com/schema/v1"],type:"string"},attributes:{$ref:"#/$defs/AttributesObject"},cases:{additionalProperties:{oneOf:[{$ref:"#/$defs/ElementDef"},{$ref:"#/$defs/ExternalComponentRef"}]},description:"Switch cases object. Maps case values to element definitions or external component refs. Used alongside $switch for dynamic component rendering.",type:"object"},children:{$ref:"#/$defs/ChildrenValue"},imports:{additionalProperties:{type:"string"},description:"Import map: $prototype names to .class.json file paths. Allows state entries to reference external classes by name without $src.",type:"object"},observedAttributes:{description:"HTML attributes the custom element watches for changes. Follows the Web Components observedAttributes convention.",items:{type:"string"},type:"array"},state:{$ref:"#/$defs/StateMap",description:"Runtime variables for this component. All entries are reactive by default. Entry shape is determined by value type: "+"scalar/array → reactive property, string with ${} → computed, "+"object with $prototype → function or data source, "+"object with type and default → typed reactive property."},style:{$ref:"#/$defs/StyleObject"},tagName:{$ref:"#/$defs/TagName"},title:{$ref:"#/$defs/StringOrRef",description:"Page title. Can be a static string or a template string with ${} expressions."}},title:"Jx Document",type:"object"}}function YW(){return{$defs:{ImageConfig:Of,StyleObject:N1},$id:"https://jxsuite.com/schema/project/v1",$schema:"https://json-schema.org/draft/2020-12/schema",description:"Schema for Jx project.json files. A project.json file is the root anchor file for a Jx project, declaring site metadata, default settings, global styles, extensions, and build configuration. Open by design: extension-contributed sections are opaque top-level keys; the generated per-project entry document (project.schema.json) closes the composition.",properties:cg.properties,title:"Jx Project",type:"object"}}function XW(){return{$defs:{ImageConfig:Of,JxFieldSchema:Aj,RelationshipRef:Rj,StyleObject:N1},$id:"https://jxsuite.com/schema/project/core/v2",$schema:"https://json-schema.org/draft/2020-12/schema",description:"Core fragment of the Jx project.json schema. Open by design: extension fragments contribute their own top-level sections and the generated per-project entry document "+"(project.schema.json) closes the composition. See specs/extensions.md §5.",properties:cg.properties,title:"Jx Project Core",type:"object"}}function ZW(){return{$id:Kl,$schema:"https://json-schema.org/draft/2020-12/schema",anyOf:[{$ref:"https://jxsuite.com/schema/project/core/v2#/$defs/JxFieldSchema"},{$ref:"https://jxsuite.com/schema/project/core/v2#/$defs/RelationshipRef"}],description:"Default field-schema union for section entry schemas: the core field shape plus relationship references. Per-project entry documents override this resource with the "+"effective union. See specs/extensions.md §5.3.",title:"Jx Project Field Union"}}function QW(){return{$id:ao,$schema:"https://json-schema.org/draft/2020-12/schema",anyOf:[...Yl,Bh],description:"Default $paths-value union for documents: the core source shapes. Per-project entry documents override this resource with those members PLUS every extension-contributed paths shape.",title:"Jx Document Paths Union"}}function eH(){return{$id:"https://jxsuite.com/schema/extension-manifest/v1",$schema:"https://json-schema.org/draft/2020-12/schema",title:"Jx Extension Manifest",...S1}}function ug(){return{$defs:{ClassConstructorDef:rg,ClassFieldDef:tg,ClassMethodDef:ng,ClassParameterDef:eg,ConnectorBlockDef:ag,FormatDef:sg,ProjectBlockDef:ig,ServerBlockDef:og,StudioHints:lg},$id:"https://jxsuite.com/schema/class/v1",$schema:"https://json-schema.org/draft/2020-12/schema",additionalProperties:!1,description:"Schema for Jx .class.json files. A class definition describes a schema-defined class with fields, constructor, methods, and type parameters. Optionally points to a JS module via $implementation for hybrid execution.",properties:{$defs:{description:"Class members: parameters, returnTypes, fields, constructor, methods.",properties:{constructor:{$ref:"#/$defs/ClassConstructorDef"},fields:{additionalProperties:{$ref:"#/$defs/ClassFieldDef"},description:"Class fields with role, access, scope, and type information.",type:"object"},methods:{additionalProperties:{$ref:"#/$defs/ClassMethodDef"},description:"Class methods and accessors.",type:"object"},parameters:{additionalProperties:{$ref:"#/$defs/ClassParameterDef"},description:"Reusable typed parameter schemas, keyed by name.",type:"object"},returnTypes:{additionalProperties:{type:"object"},description:"Output type schemas, keyed by name.",type:"object"}},type:"object"},$id:{type:"string"},$implementation:{description:"Relative path to a JS module containing the actual class implementation.",examples:["./md.js","./lib/calculator.js"],type:"string"},$prototype:{const:"Class",description:'Must be "Class" for class definition files.',type:"string"},$schema:{type:"string"},$studio:{$ref:"#/$defs/StudioHints"},connector:{$ref:"#/$defs/ConnectorBlockDef"},description:{type:"string"},extends:{description:"Base class — string name or $ref to another .class.json.",oneOf:[{type:"string"},{additionalProperties:!1,properties:{$ref:{type:"string"}},required:["$ref"],type:"object"}]},format:{$ref:"#/$defs/FormatDef"},project:{$ref:"#/$defs/ProjectBlockDef"},server:{$ref:"#/$defs/ServerBlockDef"},title:{description:"PascalCase class name, used as the export name.",examples:["MarkdownFile","DataSource","Calculator"],type:"string"}},required:["$prototype","title"],title:"Jx Class Definition",type:"object"}}async function tH(e){let{mkdirSync:t,writeFileSync:r}=await import("node:fs"),{resolve:n,dirname:s}=await import("node:path"),i=s(n(e,"..")),o=await KW(),a=YW(),l=ug(),c=XW(),u=eH(),p=ZW(),h=QW(),m=JSON.stringify(o,null,2),b=JSON.stringify(a,null,2),g=JSON.stringify(l,null,2),y=JSON.stringify(c,null,2),w=JSON.stringify(u,null,2),j=JSON.stringify(p,null,2),S=JSON.stringify(h,null,2),[E]=process.argv.slice(2);if(E)r(E,m,"utf8"),console.error(`Jx component schema written to ${E}`);else{r(n(i,"schema.json"),m,"utf8"),r(n(i,"project-schema.json"),b,"utf8"),r(n(i,"class-schema.json"),g,"utf8"),t(n(i,"schemas"),{recursive:!0}),r(n(i,"schemas","project.core.schema.json"),y,"utf8"),r(n(i,"schemas","project.fields.schema.json"),j,"utf8"),r(n(i,"schemas","document.paths.schema.json"),S,"utf8"),r(n(i,"extension-manifest.schema.json"),w,"utf8");let k=Bun.spawnSync(["bunx","oxfmt",n(i,"schemas","project.core.schema.json"),n(i,"schemas","project.fields.schema.json"),n(i,"schemas","document.paths.schema.json")],{cwd:i});if(k.exitCode!==0){let A=k.stderr.toString()||k.stdout.toString()||`exit ${k.exitCode}${k.signalCode?`, signal ${k.signalCode}`:""}`;console.error(`Warning: skipped oxfmt reformat of generated schemas (${A})`)}console.error("Generated:"),console.error(" schema.json (component)"),console.error(" project-schema.json"),console.error(" class-schema.json"),console.error(" schemas/project.core.schema.json"),console.error(" schemas/project.fields.schema.json"),console.error(" schemas/document.paths.schema.json"),console.error(" extension-manifest.schema.json")}}var A1,R1,O1,k1=null,N1,_1,koe;var C1=D(()=>{aP();cP();pP();hP();bP();$P();RP();OP();TP();FP();VP();HP();zP();KP();XP();h1();$1();v1();E1();jf();j1();P1();A1=br(zj(),1),R1=br(Xj(),1),O1=br(sP(),1);N1={...Rf,additionalProperties:{anyOf:[{type:"string"},{type:"number"},{$ref:"#/$defs/StyleObject"}]}};[,_1]=process.argv,koe=_1?.endsWith("schema.ts")?tH(_1):void 0});var rc=C(function(J1){Object.defineProperty(J1,"__esModule",{value:!0});J1.regexpCode=J1.getEsmExportName=J1.getProperty=J1.safeStringify=J1.stringify=J1.strConcat=J1.addCodeArg=J1.str=J1._=J1.nil=J1._Code=J1.Name=J1.IDENTIFIER=J1._CodeOrName=void 0;class Nf{}J1._CodeOrName=Nf;J1.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class xa extends Nf{constructor(e){super();if(!J1.IDENTIFIER.test(e))throw Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}J1.Name=xa;class wn extends Nf{constructor(e){super();this._items=typeof e==="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((t,r)=>`${t}${r}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((t,r)=>{if(r instanceof xa)t[r.str]=(t[r.str]||0)+1;return t},{})}}J1._Code=wn;J1.nil=new wn("");function T1(e,...t){let r=[e[0]],n=0;while(n<t.length)dg(r,t[n]),r.push(e[++n]);return new wn(r)}J1._=T1;var fg=new wn("+");function I1(e,...t){let r=[tc(e[0])],n=0;while(n<t.length)r.push(fg),dg(r,t[n]),r.push(fg,tc(e[++n]));return rH(r),new wn(r)}J1.str=I1;function dg(e,t){if(t instanceof wn)e.push(...t._items);else if(t instanceof xa)e.push(t);else e.push(iH(t))}J1.addCodeArg=dg;function rH(e){let t=1;while(t<e.length-1){if(e[t]===fg){let r=nH(e[t-1],e[t+1]);if(r!==void 0){e.splice(t-1,3,r);continue}e[t++]="+"}t++}}function nH(e,t){if(t==='""')return e;if(e==='""')return t;if(typeof e=="string"){if(t instanceof xa||e[e.length-1]!=='"')return;if(typeof t!="string")return`${e.slice(0,-1)}${t}"`;if(t[0]==='"')return e.slice(0,-1)+t.slice(1);return}if(typeof t=="string"&&t[0]==='"'&&!(e instanceof xa))return`"${e}${t.slice(1)}`;return}function sH(e,t){return t.emptyStr()?e:e.emptyStr()?t:I1`${e}${t}`}J1.strConcat=sH;function iH(e){return typeof e=="number"||typeof e=="boolean"||e===null?e:tc(Array.isArray(e)?e.join(","):e)}function oH(e){return new wn(tc(e))}J1.stringify=oH;function tc(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}J1.safeStringify=tc;function aH(e){return typeof e=="string"&&J1.IDENTIFIER.test(e)?new wn(`.${e}`):T1`[${e}]`}J1.getProperty=aH;function lH(e){if(typeof e=="string"&&J1.IDENTIFIER.test(e))return new wn(`${e}`);throw Error(`CodeGen: invalid export name: ${e}, use explicit $id name mapping`)}J1.getEsmExportName=lH;function cH(e){return new wn(e.toString())}J1.regexpCode=cH});var gg=C(function(F1){Object.defineProperty(F1,"__esModule",{value:!0});F1.ValueScope=F1.ValueScopeName=F1.Scope=F1.varKinds=F1.UsedValueState=void 0;var Ke=rc();class D1 extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`);this.value=e.value}}var Tf;(function(e){e[e.Started=0]="Started",e[e.Completed=1]="Completed"})(Tf||(F1.UsedValueState=Tf={}));F1.varKinds={const:new Ke.Name("const"),let:new Ke.Name("let"),var:new Ke.Name("var")};class mg{constructor({prefixes:e,parent:t}={}){this._names={},this._prefixes=e,this._parent=t}toName(e){return e instanceof Ke.Name?e:this.name(e)}name(e){return new Ke.Name(this._newName(e))}_newName(e){let t=this._names[e]||this._nameGroup(e);return`${e}${t.index++}`}_nameGroup(e){var t,r;if(((r=(t=this._parent)===null||t===void 0?void 0:t._prefixes)===null||r===void 0?void 0:r.has(e))||this._prefixes&&!this._prefixes.has(e))throw Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}}F1.Scope=mg;class hg extends Ke.Name{constructor(e,t){super(t);this.prefix=e}setValue(e,{property:t,itemIndex:r}){this.value=e,this.scopePath=Ke._`.${new Ke.Name(t)}[${r}]`}}F1.ValueScopeName=hg;var vH=Ke._`\n`;class L1 extends mg{constructor(e){super(e);this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?vH:Ke.nil}}get(){return this._scope}name(e){return new hg(e,this._newName(e))}value(e,t){var r;if(t.ref===void 0)throw Error("CodeGen: ref must be passed in value");let n=this.toName(e),{prefix:s}=n,i=(r=t.key)!==null&&r!==void 0?r:t.ref,o=this._values[s];if(o){let c=o.get(i);if(c)return c}else o=this._values[s]=new Map;o.set(i,n);let a=this._scope[s]||(this._scope[s]=[]),l=a.length;return a[l]=t.ref,n.setValue(t,{property:s,itemIndex:l}),n}getValue(e,t){let r=this._values[e];if(!r)return;return r.get(t)}scopeRefs(e,t=this._values){return this._reduceValues(t,(r)=>{if(r.scopePath===void 0)throw Error(`CodeGen: name "${r}" has no value`);return Ke._`${e}${r.scopePath}`})}scopeCode(e=this._values,t,r){return this._reduceValues(e,(n)=>{if(n.value===void 0)throw Error(`CodeGen: name "${n}" has no value`);return n.value.code},t,r)}_reduceValues(e,t,r={},n){let s=Ke.nil;for(let i in e){let o=e[i];if(!o)continue;let a=r[i]=r[i]||new Map;o.forEach((l)=>{if(a.has(l))return;a.set(l,Tf.Started);let c=t(l);if(c){let u=this.opts.es5?F1.varKinds.var:F1.varKinds.const;s=Ke._`${s}${u} ${l} = ${c};${this.opts._n}`}else if(c=n===null||n===void 0?void 0:n(l))s=Ke._`${s}${c}${this.opts._n}`;else throw new D1(l);a.set(l,Tf.Completed)})}return s}}F1.ValueScope=L1});var we=C(function(_r){Object.defineProperty(_r,"__esModule",{value:!0});_r.or=_r.and=_r.not=_r.CodeGen=_r.operators=_r.varKinds=_r.ValueScopeName=_r.ValueScope=_r.Scope=_r.Name=_r.regexpCode=_r.stringify=_r.getProperty=_r.nil=_r.strConcat=_r.str=_r._=void 0;var Z=rc(),ht=gg(),ai=rc();Object.defineProperty(_r,"_",{enumerable:!0,get:function(){return ai._}});Object.defineProperty(_r,"str",{enumerable:!0,get:function(){return ai.str}});Object.defineProperty(_r,"strConcat",{enumerable:!0,get:function(){return ai.strConcat}});Object.defineProperty(_r,"nil",{enumerable:!0,get:function(){return ai.nil}});Object.defineProperty(_r,"getProperty",{enumerable:!0,get:function(){return ai.getProperty}});Object.defineProperty(_r,"stringify",{enumerable:!0,get:function(){return ai.stringify}});Object.defineProperty(_r,"regexpCode",{enumerable:!0,get:function(){return ai.regexpCode}});Object.defineProperty(_r,"Name",{enumerable:!0,get:function(){return ai.Name}});var Ff=gg();Object.defineProperty(_r,"Scope",{enumerable:!0,get:function(){return Ff.Scope}});Object.defineProperty(_r,"ValueScope",{enumerable:!0,get:function(){return Ff.ValueScope}});Object.defineProperty(_r,"ValueScopeName",{enumerable:!0,get:function(){return Ff.ValueScopeName}});Object.defineProperty(_r,"varKinds",{enumerable:!0,get:function(){return Ff.varKinds}});_r.operators={GT:new Z._Code(">"),GTE:new Z._Code(">="),LT:new Z._Code("<"),LTE:new Z._Code("<="),EQ:new Z._Code("==="),NEQ:new Z._Code("!=="),NOT:new Z._Code("!"),OR:new Z._Code("||"),AND:new Z._Code("&&"),ADD:new Z._Code("+")};class li{optimizeNodes(){return this}optimizeNames(e,t){return this}}class V1 extends li{constructor(e,t,r){super();this.varKind=e,this.name=t,this.rhs=r}render({es5:e,_n:t}){let r=e?ht.varKinds.var:this.varKind,n=this.rhs===void 0?"":` = ${this.rhs}`;return`${r} ${this.name}${n};`+t}optimizeNames(e,t){if(!e[this.name.str])return;if(this.rhs)this.rhs=wa(this.rhs,e,t);return this}get names(){return this.rhs instanceof Z._CodeOrName?this.rhs.names:{}}}class xg extends li{constructor(e,t,r){super();this.lhs=e,this.rhs=t,this.sideEffects=r}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,t){if(this.lhs instanceof Z.Name&&!e[this.lhs.str]&&!this.sideEffects)return;return this.rhs=wa(this.rhs,e,t),this}get names(){let e=this.lhs instanceof Z.Name?{}:{...this.lhs.names};return Lf(e,this.rhs)}}class W1 extends xg{constructor(e,t,r,n){super(e,r,n);this.op=t}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}}class H1 extends li{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}}class B1 extends li{constructor(e){super();this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}}class U1 extends li{constructor(e){super();this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}}class z1 extends li{constructor(e){super();this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,t){return this.code=wa(this.code,e,t),this}get names(){return this.code instanceof Z._CodeOrName?this.code.names:{}}}class qf extends li{constructor(e=[]){super();this.nodes=e}render(e){return this.nodes.reduce((t,r)=>t+r.render(e),"")}optimizeNodes(){let{nodes:e}=this,t=e.length;while(t--){let r=e[t].optimizeNodes();if(Array.isArray(r))e.splice(t,1,...r);else if(r)e[t]=r;else e.splice(t,1)}return e.length>0?this:void 0}optimizeNames(e,t){let{nodes:r}=this,n=r.length;while(n--){let s=r[n];if(s.optimizeNames(e,t))continue;PH(e,s.names),r.splice(n,1)}return r.length>0?this:void 0}get names(){return this.nodes.reduce((e,t)=>lo(e,t.names),{})}}class ci extends qf{render(e){return"{"+e._n+super.render(e)+"}"+e._n}}class G1 extends qf{}class nc extends ci{}nc.kind="else";class Ns extends ci{constructor(e,t){super(t);this.condition=e}render(e){let t=`if(${this.condition})`+super.render(e);if(this.else)t+="else "+this.else.render(e);return t}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let t=this.else;if(t){let r=t.optimizeNodes();t=this.else=Array.isArray(r)?new nc(r):r}if(t){if(e===!1)return t instanceof Ns?t:t.nodes;if(this.nodes.length)return this;return new Ns(Q1(e),t instanceof Ns?[t]:t.nodes)}if(e===!1||!this.nodes.length)return;return this}optimizeNames(e,t){var r;if(this.else=(r=this.else)===null||r===void 0?void 0:r.optimizeNames(e,t),!(super.optimizeNames(e,t)||this.else))return;return this.condition=wa(this.condition,e,t),this}get names(){let e=super.names;if(Lf(e,this.condition),this.else)lo(e,this.else.names);return e}}Ns.kind="if";class $a extends ci{}$a.kind="for";class K1 extends $a{constructor(e){super();this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,t){if(!super.optimizeNames(e,t))return;return this.iteration=wa(this.iteration,e,t),this}get names(){return lo(super.names,this.iteration.names)}}class Y1 extends $a{constructor(e,t,r,n){super();this.varKind=e,this.name=t,this.from=r,this.to=n}render(e){let t=e.es5?ht.varKinds.var:this.varKind,{name:r,from:n,to:s}=this;return`for(${t} ${r}=${n}; ${r}<${s}; ${r}++)`+super.render(e)}get names(){let e=Lf(super.names,this.from);return Lf(e,this.to)}}class yg extends $a{constructor(e,t,r,n){super();this.loop=e,this.varKind=t,this.name=r,this.iterable=n}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,t){if(!super.optimizeNames(e,t))return;return this.iterable=wa(this.iterable,e,t),this}get names(){return lo(super.names,this.iterable.names)}}class If extends ci{constructor(e,t,r){super();this.name=e,this.args=t,this.async=r}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}}If.kind="func";class Jf extends qf{render(e){return"return "+super.render(e)}}Jf.kind="return";class X1 extends ci{render(e){let t="try"+super.render(e);if(this.catch)t+=this.catch.render(e);if(this.finally)t+=this.finally.render(e);return t}optimizeNodes(){var e,t;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(t=this.finally)===null||t===void 0||t.optimizeNodes(),this}optimizeNames(e,t){var r,n;return super.optimizeNames(e,t),(r=this.catch)===null||r===void 0||r.optimizeNames(e,t),(n=this.finally)===null||n===void 0||n.optimizeNames(e,t),this}get names(){let e=super.names;if(this.catch)lo(e,this.catch.names);if(this.finally)lo(e,this.finally.names);return e}}class Mf extends ci{constructor(e){super();this.error=e}render(e){return`catch(${this.error})`+super.render(e)}}Mf.kind="catch";class Df extends ci{render(e){return"finally"+super.render(e)}}Df.kind="finally";class Z1{constructor(e,t={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...t,_n:t.lines?`
|
|
607
|
+
`:""},this._extScope=e,this._scope=new ht.Scope({parent:e}),this._nodes=[new G1]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,t){let r=this._extScope.value(e,t);return(this._values[r.prefix]||(this._values[r.prefix]=new Set)).add(r),r}getScopeValue(e,t){return this._extScope.getValue(e,t)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,t,r,n){let s=this._scope.toName(t);if(r!==void 0&&n)this._constants[s.str]=r;return this._leafNode(new V1(e,s,r)),s}const(e,t,r){return this._def(ht.varKinds.const,e,t,r)}let(e,t,r){return this._def(ht.varKinds.let,e,t,r)}var(e,t,r){return this._def(ht.varKinds.var,e,t,r)}assign(e,t,r){return this._leafNode(new xg(e,t,r))}add(e,t){return this._leafNode(new W1(e,_r.operators.ADD,t))}code(e){if(typeof e=="function")e();else if(e!==Z.nil)this._leafNode(new z1(e));return this}object(...e){let t=["{"];for(let[r,n]of e){if(t.length>1)t.push(",");if(t.push(r),r!==n||this.opts.es5)t.push(":"),Z.addCodeArg(t,n)}return t.push("}"),new Z._Code(t)}if(e,t,r){if(this._blockNode(new Ns(e)),t&&r)this.code(t).else().code(r).endIf();else if(t)this.code(t).endIf();else if(r)throw Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Ns(e))}else(){return this._elseNode(new nc)}endIf(){return this._endBlockNode(Ns,nc)}_for(e,t){if(this._blockNode(e),t)this.code(t).endFor();return this}for(e,t){return this._for(new K1(e),t)}forRange(e,t,r,n,s=this.opts.es5?ht.varKinds.var:ht.varKinds.let){let i=this._scope.toName(e);return this._for(new Y1(s,i,t,r),()=>n(i))}forOf(e,t,r,n=ht.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=t instanceof Z.Name?t:this.var("_arr",t);return this.forRange("_i",0,Z._`${i}.length`,(o)=>{this.var(s,Z._`${i}[${o}]`),r(s)})}return this._for(new yg("of",n,s,t),()=>r(s))}forIn(e,t,r,n=this.opts.es5?ht.varKinds.var:ht.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,Z._`Object.keys(${t})`,r);let s=this._scope.toName(e);return this._for(new yg("in",n,s,t),()=>r(s))}endFor(){return this._endBlockNode($a)}label(e){return this._leafNode(new H1(e))}break(e){return this._leafNode(new B1(e))}return(e){let t=new Jf;if(this._blockNode(t),this.code(e),t.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(Jf)}try(e,t,r){if(!t&&!r)throw Error('CodeGen: "try" without "catch" and "finally"');let n=new X1;if(this._blockNode(n),this.code(e),t){let s=this.name("e");this._currNode=n.catch=new Mf(s),t(s)}if(r)this._currNode=n.finally=new Df,this.code(r);return this._endBlockNode(Mf,Df)}throw(e){return this._leafNode(new U1(e))}block(e,t){if(this._blockStarts.push(this._nodes.length),e)this.code(e).endBlock(t);return this}endBlock(e){let t=this._blockStarts.pop();if(t===void 0)throw Error("CodeGen: not in self-balancing block");let r=this._nodes.length-t;if(r<0||e!==void 0&&r!==e)throw Error(`CodeGen: wrong number of nodes: ${r} vs ${e} expected`);return this._nodes.length=t,this}func(e,t=Z.nil,r,n){if(this._blockNode(new If(e,t,r)),n)this.code(n).endFunc();return this}endFunc(){return this._endBlockNode(If)}optimize(e=1){while(e-- >0)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,t){let r=this._currNode;if(r instanceof e||t&&r instanceof t)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${t?`${e.kind}/${t.kind}`:e.kind}"`)}_elseNode(e){let t=this._currNode;if(!(t instanceof Ns))throw Error('CodeGen: "else" without "if"');return this._currNode=t.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let t=this._nodes;t[t.length-1]=e}}_r.CodeGen=Z1;function lo(e,t){for(let r in t)e[r]=(e[r]||0)+(t[r]||0);return e}function Lf(e,t){return t instanceof Z._CodeOrName?lo(e,t.names):e}function wa(e,t,r){if(e instanceof Z.Name)return n(e);if(!s(e))return e;return new Z._Code(e._items.reduce((i,o)=>{if(o instanceof Z.Name)o=n(o);if(o instanceof Z._Code)i.push(...o._items);else i.push(o);return i},[]));function n(i){let o=r[i.str];if(o===void 0||t[i.str]!==1)return i;return delete t[i.str],o}function s(i){return i instanceof Z._Code&&i._items.some((o)=>o instanceof Z.Name&&t[o.str]===1&&r[o.str]!==void 0)}}function PH(e,t){for(let r in t)e[r]=(e[r]||0)-(t[r]||0)}function Q1(e){return typeof e=="boolean"||typeof e=="number"||e===null?!e:Z._`!${bg(e)}`}_r.not=Q1;var kH=ek(_r.operators.AND);function _H(...e){return e.reduce(kH)}_r.and=_H;var AH=ek(_r.operators.OR);function RH(...e){return e.reduce(AH)}_r.or=RH;function ek(e){return(t,r)=>t===Z.nil?r:r===Z.nil?t:Z._`${bg(t)} ${e} ${bg(r)}`}function bg(e){return e instanceof Z.Name?e:Z._`(${e})`}});var Oe=C(function(uk){Object.defineProperty(uk,"__esModule",{value:!0});uk.checkStrictMode=uk.getErrorPath=uk.Type=uk.useFunc=uk.setEvaluated=uk.evaluatedPropsToName=uk.mergeEvaluated=uk.eachItem=uk.unescapeJsonPointer=uk.escapeJsonPointer=uk.escapeFragment=uk.unescapeFragment=uk.schemaRefOrVal=uk.schemaHasRulesButRef=uk.schemaHasRules=uk.checkUnknownRules=uk.alwaysValidSchema=uk.toHash=void 0;var fe=we(),sk=rc();function TH(e){let t={};for(let r of e)t[r]=!0;return t}uk.toHash=TH;function IH(e,t){if(typeof t=="boolean")return t;if(Object.keys(t).length===0)return!0;return ik(e,t),!ok(t,e.self.RULES.all)}uk.alwaysValidSchema=IH;function ik(e,t=e.schema){let{opts:r,self:n}=e;if(!r.strictSchema)return;if(typeof t==="boolean")return;let s=n.RULES.keywords;for(let i in t)if(!s[i])ck(e,`unknown keyword: "${i}"`)}uk.checkUnknownRules=ik;function ok(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(t[r])return!0;return!1}uk.schemaHasRules=ok;function JH(e,t){if(typeof e=="boolean")return!e;for(let r in e)if(r!=="$ref"&&t.all[r])return!0;return!1}uk.schemaHasRulesButRef=JH;function MH({topSchemaRef:e,schemaPath:t},r,n,s){if(!s){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return fe._`${r}`}return fe._`${e}${t}${fe.getProperty(n)}`}uk.schemaRefOrVal=MH;function DH(e){return ak(decodeURIComponent(e))}uk.unescapeFragment=DH;function LH(e){return encodeURIComponent(wg(e))}uk.escapeFragment=LH;function wg(e){if(typeof e=="number")return`${e}`;return e.replace(/~/g,"~0").replace(/\//g,"~1")}uk.escapeJsonPointer=wg;function ak(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}uk.unescapeJsonPointer=ak;function FH(e,t){if(Array.isArray(e))for(let r of e)t(r);else t(e)}uk.eachItem=FH;function rk({mergeNames:e,mergeToName:t,mergeValues:r,resultToName:n}){return(s,i,o,a)=>{let l=o===void 0?i:o instanceof fe.Name?(i instanceof fe.Name?e(s,i,o):t(s,i,o),o):i instanceof fe.Name?(t(s,o,i),i):r(i,o);return a===fe.Name&&!(l instanceof fe.Name)?n(s,l):l}}uk.mergeEvaluated={props:rk({mergeNames:(e,t,r)=>e.if(fe._`${r} !== true && ${t} !== undefined`,()=>{e.if(fe._`${t} === true`,()=>e.assign(r,!0),()=>e.assign(r,fe._`${r} || {}`).code(fe._`Object.assign(${r}, ${t})`))}),mergeToName:(e,t,r)=>e.if(fe._`${r} !== true`,()=>{if(t===!0)e.assign(r,!0);else e.assign(r,fe._`${r} || {}`),vg(e,r,t)}),mergeValues:(e,t)=>e===!0?!0:{...e,...t},resultToName:lk}),items:rk({mergeNames:(e,t,r)=>e.if(fe._`${r} !== true && ${t} !== undefined`,()=>e.assign(r,fe._`${t} === true ? true : ${r} > ${t} ? ${r} : ${t}`)),mergeToName:(e,t,r)=>e.if(fe._`${r} !== true`,()=>e.assign(r,t===!0?!0:fe._`${r} > ${t} ? ${r} : ${t}`)),mergeValues:(e,t)=>e===!0?!0:Math.max(e,t),resultToName:(e,t)=>e.var("items",t)})};function lk(e,t){if(t===!0)return e.var("props",!0);let r=e.var("props",fe._`{}`);if(t!==void 0)vg(e,r,t);return r}uk.evaluatedPropsToName=lk;function vg(e,t,r){Object.keys(r).forEach((n)=>e.assign(fe._`${t}${fe.getProperty(n)}`,!0))}uk.setEvaluated=vg;var nk={};function qH(e,t){return e.scopeValue("func",{ref:t,code:nk[t.code]||(nk[t.code]=new sk._Code(t.code))})}uk.useFunc=qH;var $g;(function(e){e[e.Num=0]="Num",e[e.Str=1]="Str"})($g||(uk.Type=$g={}));function VH(e,t,r){if(e instanceof fe.Name){let n=t===$g.Num;return r?n?fe._`"[" + ${e} + "]"`:fe._`"['" + ${e} + "']"`:n?fe._`"/" + ${e}`:fe._`"/" + ${e}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?fe.getProperty(e).toString():"/"+wg(e)}uk.getErrorPath=VH;function ck(e,t,r=e.opts.strictSchema){if(!r)return;if(t=`strict mode: ${t}`,r===!0)throw Error(t);e.self.logger.warn(t)}uk.checkStrictMode=ck});var nn=C(function(dk){Object.defineProperty(dk,"__esModule",{value:!0});var We=we(),oB={data:new We.Name("data"),valCxt:new We.Name("valCxt"),instancePath:new We.Name("instancePath"),parentData:new We.Name("parentData"),parentDataProperty:new We.Name("parentDataProperty"),rootData:new We.Name("rootData"),dynamicAnchors:new We.Name("dynamicAnchors"),vErrors:new We.Name("vErrors"),errors:new We.Name("errors"),this:new We.Name("this"),self:new We.Name("self"),scope:new We.Name("scope"),json:new We.Name("json"),jsonPos:new We.Name("jsonPos"),jsonLen:new We.Name("jsonLen"),jsonPart:new We.Name("jsonPart")};dk.default=oB});var sc=C(function(gk){Object.defineProperty(gk,"__esModule",{value:!0});gk.extendErrors=gk.resetErrorsCount=gk.reportExtraError=gk.reportError=gk.keyword$DataError=gk.keywordError=void 0;var ne=we(),ui=Oe(),mr=nn();gk.keywordError={message:({keyword:e})=>ne.str`must pass "${e}" keyword validation`};gk.keyword$DataError={message:({keyword:e,schemaType:t})=>t?ne.str`"${e}" keyword must be ${t} ($data)`:ne.str`"${e}" keyword is invalid ($data)`};function lB(e,t=gk.keywordError,r,n){let{it:s}=e,{gen:i,compositeRule:o,allErrors:a}=s,l=hk(e,t,r);if(n!==null&&n!==void 0?n:o||a)pk(i,l);else mk(s,ne._`[${l}]`)}gk.reportError=lB;function cB(e,t=gk.keywordError,r){let{it:n}=e,{gen:s,compositeRule:i,allErrors:o}=n,a=hk(e,t,r);if(pk(s,a),!(i||o))mk(n,mr.default.vErrors)}gk.reportExtraError=cB;function uB(e,t){e.assign(mr.default.errors,t),e.if(ne._`${mr.default.vErrors} !== null`,()=>e.if(t,()=>e.assign(ne._`${mr.default.vErrors}.length`,t),()=>e.assign(mr.default.vErrors,null)))}gk.resetErrorsCount=uB;function fB({gen:e,keyword:t,schemaValue:r,data:n,errsCount:s,it:i}){if(s===void 0)throw Error("ajv implementation error");let o=e.name("err");e.forRange("i",s,mr.default.errors,(a)=>{if(e.const(o,ne._`${mr.default.vErrors}[${a}]`),e.if(ne._`${o}.instancePath === undefined`,()=>e.assign(ne._`${o}.instancePath`,ne.strConcat(mr.default.instancePath,i.errorPath))),e.assign(ne._`${o}.schemaPath`,ne.str`${i.errSchemaPath}/${t}`),i.opts.verbose)e.assign(ne._`${o}.schema`,r),e.assign(ne._`${o}.data`,n)})}gk.extendErrors=fB;function pk(e,t){let r=e.const("err",t);e.if(ne._`${mr.default.vErrors} === null`,()=>e.assign(mr.default.vErrors,ne._`[${r}]`),ne._`${mr.default.vErrors}.push(${r})`),e.code(ne._`${mr.default.errors}++`)}function mk(e,t){let{gen:r,validateName:n,schemaEnv:s}=e;if(s.$async)r.throw(ne._`new ${e.ValidationError}(${t})`);else r.assign(ne._`${n}.errors`,t),r.return(!1)}var co={keyword:new ne.Name("keyword"),schemaPath:new ne.Name("schemaPath"),params:new ne.Name("params"),propertyName:new ne.Name("propertyName"),message:new ne.Name("message"),schema:new ne.Name("schema"),parentSchema:new ne.Name("parentSchema")};function hk(e,t,r){let{createErrors:n}=e.it;if(n===!1)return ne._`{}`;return dB(e,t,r)}function dB(e,t,r={}){let{gen:n,it:s}=e,i=[pB(s,r),mB(e,r)];return hB(e,t,i),n.object(...i)}function pB({errorPath:e},{instancePath:t}){let r=t?ne.str`${e}${ui.getErrorPath(t,ui.Type.Str)}`:e;return[mr.default.instancePath,ne.strConcat(mr.default.instancePath,r)]}function mB({keyword:e,it:{errSchemaPath:t}},{schemaPath:r,parentSchema:n}){let s=n?t:ne.str`${t}/${e}`;if(r)s=ne.str`${s}${ui.getErrorPath(r,ui.Type.Str)}`;return[co.schemaPath,s]}function hB(e,{params:t,message:r},n){let{keyword:s,data:i,schemaValue:o,it:a}=e,{opts:l,propertyName:c,topSchemaRef:u,schemaPath:p}=a;if(n.push([co.keyword,s],[co.params,typeof t=="function"?t(e):t||ne._`{}`]),l.messages)n.push([co.message,typeof r=="function"?r(e):r]);if(l.verbose)n.push([co.schema,o],[co.parentSchema,ne._`${u}${p}`],[mr.default.data,i]);if(c)n.push([co.propertyName,c])}});var Sk=C(function(wk){Object.defineProperty(wk,"__esModule",{value:!0});wk.boolOrEmptySchema=wk.topBoolOrEmptySchema=void 0;var bk=sc(),xk=we(),$B=nn(),wB={message:"boolean schema is false"};function vB(e){let{gen:t,schema:r,validateName:n}=e;if(r===!1)$k(e,!1);else if(typeof r=="object"&&r.$async===!0)t.return($B.default.data);else t.assign(xk._`${n}.errors`,null),t.return(!0)}wk.topBoolOrEmptySchema=vB;function SB(e,t){let{gen:r,schema:n}=e;if(n===!1)r.var(t,!1),$k(e);else r.var(t,!0)}wk.boolOrEmptySchema=SB;function $k(e,t){let{gen:r,data:n}=e;bk.reportError({gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:e},wB,void 0,t)}});var Eg=C(function(Ek){Object.defineProperty(Ek,"__esModule",{value:!0});Ek.getRules=Ek.isJSONType=void 0;var jB=["string","number","integer","boolean","null","object","array"],PB=new Set(jB);function kB(e){return typeof e=="string"&&PB.has(e)}Ek.isJSONType=kB;function _B(){let e={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...e,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},e.number,e.string,e.array,e.object],post:{rules:[]},all:{},keywords:{}}}Ek.getRules=_B});var jg=C(function(_k){Object.defineProperty(_k,"__esModule",{value:!0});_k.shouldUseRule=_k.shouldUseGroup=_k.schemaHasRulesForType=void 0;function RB({schema:e,self:t},r){let n=t.RULES.types[r];return n&&n!==!0&&Pk(e,n)}_k.schemaHasRulesForType=RB;function Pk(e,t){return t.rules.some((r)=>kk(e,r))}_k.shouldUseGroup=Pk;function kk(e,t){var r;return e[t.keyword]!==void 0||((r=t.definition.implements)===null||r===void 0?void 0:r.some((n)=>e[n]!==void 0))}_k.shouldUseRule=kk});var ic=C(function(Ik){Object.defineProperty(Ik,"__esModule",{value:!0});Ik.reportTypeError=Ik.checkDataTypes=Ik.checkDataType=Ik.coerceAndCheckDataType=Ik.getJSONTypes=Ik.getSchemaTypes=Ik.DataType=void 0;var Rk=Eg(),Ok=jg(),Nk=sc(),z=we(),Wf=Oe(),va;(function(e){e[e.Correct=0]="Correct",e[e.Wrong=1]="Wrong"})(va||(Ik.DataType=va={}));function CB(e){let t=Ck(e.type);if(t.includes("null")){if(e.nullable===!1)throw Error("type: null contradicts nullable: false")}else{if(!t.length&&e.nullable!==void 0)throw Error('"nullable" cannot be used without "type"');if(e.nullable===!0)t.push("null")}return t}Ik.getSchemaTypes=CB;function Ck(e){let t=Array.isArray(e)?e:e?[e]:[];if(t.every(Rk.isJSONType))return t;throw Error("type must be JSONType or JSONType[]: "+t.join(","))}Ik.getJSONTypes=Ck;function TB(e,t){let{gen:r,data:n,opts:s}=e,i=IB(t,s.coerceTypes),o=t.length>0&&!(i.length===0&&t.length===1&&Ok.schemaHasRulesForType(e,t[0]));if(o){let a=kg(t,n,s.strictNumbers,va.Wrong);r.if(a,()=>{if(i.length)JB(e,t,i);else _g(e)})}return o}Ik.coerceAndCheckDataType=TB;var Tk=new Set(["string","number","integer","boolean","null"]);function IB(e,t){return t?e.filter((r)=>Tk.has(r)||t==="array"&&r==="array"):[]}function JB(e,t,r){let{gen:n,data:s,opts:i}=e,o=n.let("dataType",z._`typeof ${s}`),a=n.let("coerced",z._`undefined`);if(i.coerceTypes==="array")n.if(z._`${o} == 'object' && Array.isArray(${s}) && ${s}.length == 1`,()=>n.assign(s,z._`${s}[0]`).assign(o,z._`typeof ${s}`).if(kg(t,s,i.strictNumbers),()=>n.assign(a,s)));n.if(z._`${a} !== undefined`);for(let c of r)if(Tk.has(c)||c==="array"&&i.coerceTypes==="array")l(c);n.else(),_g(e),n.endIf(),n.if(z._`${a} !== undefined`,()=>{n.assign(s,a),MB(e,a)});function l(c){switch(c){case"string":n.elseIf(z._`${o} == "number" || ${o} == "boolean"`).assign(a,z._`"" + ${s}`).elseIf(z._`${s} === null`).assign(a,z._`""`);return;case"number":n.elseIf(z._`${o} == "boolean" || ${s} === null
|
|
608
608
|
|| (${o} == "string" && ${s} && ${s} == +${s})`).assign(a,z._`+${s}`);return;case"integer":n.elseIf(z._`${o} === "boolean" || ${s} === null
|
|
609
609
|
|| (${o} === "string" && ${s} && ${s} == +${s} && !(${s} % 1))`).assign(a,z._`+${s}`);return;case"boolean":n.elseIf(z._`${s} === "false" || ${s} === 0 || ${s} === null`).assign(a,!1).elseIf(z._`${s} === "true" || ${s} === 1`).assign(a,!0);return;case"null":n.elseIf(z._`${s} === "" || ${s} === 0 || ${s} === false`),n.assign(a,null);return;case"array":n.elseIf(z._`${o} === "string" || ${o} === "number"
|
|
610
|
-
|| ${o} === "boolean" || ${s} === null`).assign(a,z._`[${s}]`)}}}function hB({gen:e,parentData:t,parentDataProperty:r},n){e.if(z._`${t} !== undefined`,()=>e.assign(z._`${t}[${r}]`,n))}function xg(e,t,r,n=ya.Correct){let s=n===ya.Correct?z.operators.EQ:z.operators.NEQ,i;switch(e){case"null":return z._`${t} ${s} null`;case"array":i=z._`Array.isArray(${t})`;break;case"object":i=z._`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":i=o(z._`!(${t} % 1) && !isNaN(${t})`);break;case"number":i=o();break;default:return z._`typeof ${t} ${s} ${e}`}return n===ya.Correct?i:z.not(i);function o(a=z.nil){return z.and(z._`typeof ${t} == "number"`,a,r?z._`isFinite(${t})`:z.nil)}}Sk.checkDataType=xg;function $g(e,t,r,n){if(e.length===1)return xg(e[0],t,r,n);let s,i=Jf.toHash(e);if(i.array&&i.object){let o=z._`typeof ${t} != "object"`;s=i.null?o:z._`!${t} || ${o}`,delete i.null,delete i.array,delete i.object}else s=z.nil;if(i.number)delete i.integer;for(let o in i)s=z.and(s,xg(o,t,r,n));return s}Sk.checkDataTypes=$g;var gB={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?z._`{type: ${e}}`:z._`{type: ${t}}`};function wg(e){let t=yB(e);$k.reportError(t,gB)}Sk.reportTypeError=wg;function yB(e){let{gen:t,data:r,schema:n}=e,s=Jf.schemaRefOrVal(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:e}}});var Ak=N(function(kk){Object.defineProperty(kk,"__esModule",{value:!0});kk.assignDefaults=void 0;var rn=$e(),jk=Oe();function EB(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let s in r)Pk(e,s,r[s].default);else if(t==="array"&&Array.isArray(n))n.forEach((s,i)=>Pk(e,i,s.default))}kk.assignDefaults=EB;function Pk(e,t,r){let{gen:n,compositeRule:s,data:i,opts:o}=e;if(r===void 0)return;let a=rn._`${i}${rn.getProperty(t)}`;if(s){jk.checkStrictMode(e,`default is ignored for: ${a}`);return}let l=rn._`${a} === undefined`;if(o.useDefaults==="empty")l=rn._`${l} || ${a} === null || ${a} === ""`;n.if(l,rn._`${a} = ${rn.stringify(r)}`)}});var nn=N(function(Nk){Object.defineProperty(Nk,"__esModule",{value:!0});Nk.validateUnion=Nk.validateArray=Nk.usePattern=Nk.callValidateCode=Nk.schemaProperties=Nk.allSchemaProperties=Nk.noPropertyInData=Nk.propertyInData=Nk.isOwnProperty=Nk.hasPropFunc=Nk.reportMissingProp=Nk.checkMissingProp=Nk.checkReportMissingProp=void 0;var he=$e(),ba=Oe(),li=tn(),Rk=Oe();function PB(e,t){let{gen:r,data:n,it:s}=e;r.if(Sg(r,n,t,s.opts.ownProperties),()=>{e.setParams({missingProperty:he._`${t}`},!0),e.error()})}Nk.checkReportMissingProp=PB;function jB({gen:e,data:t,it:{opts:r}},n,s){return he.or(...n.map((i)=>he.and(Sg(e,t,i,r.ownProperties),he._`${s} = ${i}`)))}Nk.checkMissingProp=jB;function kB(e,t){e.setParams({missingProperty:t},!0),e.error()}Nk.reportMissingProp=kB;function Ok(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:he._`Object.prototype.hasOwnProperty`})}Nk.hasPropFunc=Ok;function vg(e,t,r){return he._`${Ok(e)}.call(${t}, ${r})`}Nk.isOwnProperty=vg;function _B(e,t,r,n){let s=he._`${t}${he.getProperty(r)} !== undefined`;return n?he._`${s} && ${vg(e,t,r)}`:s}Nk.propertyInData=_B;function Sg(e,t,r,n){let s=he._`${t}${he.getProperty(r)} === undefined`;return n?he.or(s,he.not(vg(e,t,r))):s}Nk.noPropertyInData=Sg;function Ck(e){return e?Object.keys(e).filter((t)=>t!=="__proto__"):[]}Nk.allSchemaProperties=Ck;function AB(e,t){return Ck(t).filter((r)=>!ba.alwaysValidSchema(e,t[r]))}Nk.schemaProperties=AB;function RB({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:o},a,l,c){let u=c?he._`${e}, ${t}, ${n}${s}`:t,p=[[li.default.instancePath,he.strConcat(li.default.instancePath,i)],[li.default.parentData,o.parentData],[li.default.parentDataProperty,o.parentDataProperty],[li.default.rootData,li.default.rootData]];if(o.opts.dynamicRef)p.push([li.default.dynamicAnchors,li.default.dynamicAnchors]);let h=he._`${u}, ${r.object(...p)}`;return l!==he.nil?he._`${a}.call(${l}, ${h})`:he._`${a}(${h})`}Nk.callValidateCode=RB;var OB=he._`new RegExp`;function CB({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:s}=t.code,i=s(r,n);return e.scopeValue("pattern",{key:i.toString(),ref:i,code:he._`${s.code==="new RegExp"?OB:Rk.useFunc(e,s)}(${r}, ${n})`})}Nk.usePattern=CB;function NB(e){let{gen:t,data:r,keyword:n,it:s}=e,i=t.name("valid");if(s.allErrors){let a=t.let("valid",!0);return o(()=>t.assign(a,!1)),a}return t.var(i,!0),o(()=>t.break()),i;function o(a){let l=t.const("len",he._`${r}.length`);t.forRange("i",0,l,(c)=>{e.subschema({keyword:n,dataProp:c,dataPropType:ba.Type.Num},i),t.if(he.not(i),a)})}}Nk.validateArray=NB;function TB(e){let{gen:t,schema:r,keyword:n,it:s}=e;if(!Array.isArray(r))throw Error("ajv implementation error");if(r.some((l)=>ba.alwaysValidSchema(s,l))&&!s.opts.unevaluated)return;let o=t.let("valid",!1),a=t.name("_valid");t.block(()=>r.forEach((l,c)=>{let u=e.subschema({keyword:n,schemaProp:c,compositeRule:!0},a);if(t.assign(o,he._`${o} || ${a}`),!e.mergeValidEvaluated(u,a))t.if(he.not(o))})),e.result(o,()=>e.reset(),()=>e.error(!0))}Nk.validateUnion=TB});var qk=N(function(Lk){Object.defineProperty(Lk,"__esModule",{value:!0});Lk.validateKeywordUsage=Lk.validSchemaType=Lk.funcKeywordCode=Lk.macroKeywordCode=void 0;var Be=$e(),co=tn(),Jk=nn(),Mk=Zl();function zB(e,t){let{gen:r,keyword:n,schema:s,parentSchema:i,it:o}=e,a=t.macro.call(o.self,s,i,o),l=Dk(r,n,a);if(o.opts.validateSchema!==!1)o.self.validateSchema(a,!0);let c=r.name("valid");e.subschema({schema:a,schemaPath:Be.nil,errSchemaPath:`${o.errSchemaPath}/${n}`,topSchemaRef:l,compositeRule:!0},c),e.pass(c,()=>e.error(!0))}Lk.macroKeywordCode=zB;function GB(e,t){var r;let{gen:n,keyword:s,schema:i,parentSchema:o,$data:a,it:l}=e;YB(l,t);let c=!a&&t.compile?t.compile.call(l.self,i,o,l):t.validate,u=Dk(n,s,c),p=n.let("valid");e.block$data(p,h),e.ok((r=t.valid)!==null&&r!==void 0?r:p);function h(){if(t.errors===!1){if(g(),t.modifying)Ik(e);y(()=>e.error())}else{let w=t.async?m():b();if(t.modifying)Ik(e);y(()=>KB(e,w))}}function m(){let w=n.let("ruleErrs",null);return n.try(()=>g(Be._`await `),(P)=>n.assign(p,!1).if(Be._`${P} instanceof ${l.ValidationError}`,()=>n.assign(w,Be._`${P}.errors`),()=>n.throw(P))),w}function b(){let w=Be._`${u}.errors`;return n.assign(w,null),g(Be.nil),w}function g(w=t.async?Be._`await `:Be.nil){let P=l.opts.passContext?co.default.this:co.default.self,S=!(("compile"in t)&&!a||t.schema===!1);n.assign(p,Be._`${w}${Jk.callValidateCode(e,u,P,S)}`,t.modifying)}function y(w){var P;n.if(Be.not((P=t.valid)!==null&&P!==void 0?P:p),w)}}Lk.funcKeywordCode=GB;function Ik(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,Be._`${n.parentData}[${n.parentDataProperty}]`))}function KB(e,t){let{gen:r}=e;r.if(Be._`Array.isArray(${t})`,()=>{r.assign(co.default.vErrors,Be._`${co.default.vErrors} === null ? ${t} : ${co.default.vErrors}.concat(${t})`).assign(co.default.errors,Be._`${co.default.vErrors}.length`),Mk.extendErrors(e)},()=>e.error())}function YB({schemaEnv:e},t){if(t.async&&!e.$async)throw Error("async keyword in sync schema")}function Dk(e,t,r){if(r===void 0)throw Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:Be.stringify(r)})}function XB(e,t,r=!1){return!t.length||t.some((n)=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}Lk.validSchemaType=XB;function ZB({schema:e,opts:t,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw Error("ajv implementation error");let o=s.dependencies;if(o===null||o===void 0?void 0:o.some((a)=>!Object.prototype.hasOwnProperty.call(e,a)))throw Error(`parent schema must have dependencies of ${i}: ${o.join(",")}`);if(s.validateSchema){if(!s.validateSchema(e[i])){let l=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(l);else throw Error(l)}}}Lk.validateKeywordUsage=ZB});var Hk=N(function(Vk){Object.defineProperty(Vk,"__esModule",{value:!0});Vk.extendSubschemaMode=Vk.extendSubschemaData=Vk.getSubschema=void 0;var Rt=$e(),Mf=Oe();function rU(e,{keyword:t,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:o}){if(t!==void 0&&n!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let a=e.schema[t];return r===void 0?{schema:a,schemaPath:Rt._`${e.schemaPath}${Rt.getProperty(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:a[r],schemaPath:Rt._`${e.schemaPath}${Rt.getProperty(t)}${Rt.getProperty(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${Mf.escapeFragment(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||o===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:o,errSchemaPath:i}}throw Error('either "keyword" or "schema" must be passed')}Vk.getSubschema=rU;function nU(e,t,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:o}){if(s!==void 0&&r!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=t;if(r!==void 0){let{errorPath:c,dataPathArr:u,opts:p}=t,h=a.let("data",Rt._`${t.data}${Rt.getProperty(r)}`,!0);l(h),e.errorPath=Rt.str`${c}${Mf.getErrorPath(r,n,p.jsPropertySyntax)}`,e.parentDataProperty=Rt._`${r}`,e.dataPathArr=[...u,e.parentDataProperty]}if(s!==void 0){let c=s instanceof Rt.Name?s:a.let("data",s,!0);if(l(c),o!==void 0)e.propertyName=o}if(i)e.dataTypes=i;function l(c){e.data=c,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,c]}}Vk.extendSubschemaData=nU;function sU(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){if(n!==void 0)e.compositeRule=n;if(s!==void 0)e.createErrors=s;if(i!==void 0)e.allErrors=i;e.jtdDiscriminator=t,e.jtdMetadata=r}Vk.extendSubschemaMode=sU});var Eg=N(function(aoe,Bk){Bk.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,s,i;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(s=n;s--!==0;)if(!e(t[s],r[s]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(i=Object.keys(t),n=i.length,n!==Object.keys(r).length)return!1;for(s=n;s--!==0;)if(!Object.prototype.hasOwnProperty.call(r,i[s]))return!1;for(s=n;s--!==0;){var o=i[s];if(!e(t[o],r[o]))return!1}return!0}return t!==t&&r!==r}});var zk=N(function(loe,Uk){var ci=Uk.exports=function(e,t,r){if(typeof t=="function")r=t,t={};r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};Df(t,n,s,e,"",e)};ci.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};ci.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};ci.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};ci.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Df(e,t,r,n,s,i,o,a,l,c){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,s,i,o,a,l,c);for(var u in n){var p=n[u];if(Array.isArray(p)){if(u in ci.arrayKeywords)for(var h=0;h<p.length;h++)Df(e,t,r,p[h],s+"/"+u+"/"+h,i,s,u,n,h)}else if(u in ci.propsKeywords){if(p&&typeof p=="object")for(var m in p)Df(e,t,r,p[m],s+"/"+u+"/"+aU(m),i,s,u,n,m)}else if(u in ci.keywords||e.allKeys&&!(u in ci.skipKeywords))Df(e,t,r,p,s+"/"+u,i,s,u,n)}r(n,s,i,o,a,l,c)}}function aU(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var ec=N(function(Zk){Object.defineProperty(Zk,"__esModule",{value:!0});Zk.getSchemaRefs=Zk.resolveUrl=Zk.normalizeId=Zk._getFullPath=Zk.getFullPath=Zk.inlineRef=void 0;var Gk=Oe(),lU=Eg(),cU=zk(),uU=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function fU(e,t=!0){if(typeof e=="boolean")return!0;if(t===!0)return!Pg(e);if(!t)return!1;return Kk(e)<=t}Zk.inlineRef=fU;var dU=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Pg(e){for(let t in e){if(dU.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(Pg))return!0;if(typeof r=="object"&&Pg(r))return!0}return!1}function Kk(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,uU.has(r))continue;if(typeof e[r]=="object")Gk.eachItem(e[r],(n)=>t+=Kk(n));if(t===1/0)return 1/0}return t}function Yk(e,t="",r){if(r!==!1)t=xa(t);let n=e.parse(t);return Xk(e,n)}Zk.getFullPath=Yk;function Xk(e,t){return e.serialize(t).split("#")[0]+"#"}Zk._getFullPath=Xk;var pU=/#\/?$/;function xa(e){return e?e.replace(pU,""):""}Zk.normalizeId=xa;function mU(e,t,r){return r=xa(r),e.resolve(t,r)}Zk.resolveUrl=mU;var hU=/^[a-z_][-a-z0-9._]*$/i;function gU(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=xa(e[r]||t),i={"":s},o=Yk(n,s,!1),a={},l=new Set;return cU(e,{allKeys:!0},(p,h,m,b)=>{if(b===void 0)return;let g=o+h,y=i[b];if(typeof p[r]=="string")y=w.call(this,p[r]);P.call(this,p.$anchor),P.call(this,p.$dynamicAnchor),i[h]=y;function w(S){let E=this.opts.uriResolver.resolve;if(S=xa(y?E(y,S):S),l.has(S))throw u(S);l.add(S);let k=this.refs[S];if(typeof k=="string")k=this.refs[k];if(typeof k=="object")c(p,k.schema,S);else if(S!==xa(g))if(S[0]==="#")c(p,a[S],S),a[S]=p;else this.refs[S]=g;return S}function P(S){if(typeof S=="string"){if(!hU.test(S))throw Error(`invalid anchor "${S}"`);w.call(this,`#${S}`)}}}),a;function c(p,h,m){if(h!==void 0&&!lU(p,h))throw u(m)}function u(p){return Error(`reference "${p}" resolves to more than one schema`)}}Zk.getSchemaRefs=gU});var va=N(function(m_){Object.defineProperty(m_,"__esModule",{value:!0});m_.getData=m_.KeywordCxt=m_.validateFunctionCode=void 0;var Ff=fk(),Lf=Ql(),wa=bg(),ui=Ql(),n_=Ak(),Fn=qk(),$a=Hk(),q=$e(),be=tn(),s_=ec(),Ft=Oe(),Ln=Zl();function vU(e){if(a_(e)){if(l_(e),o_(e)){PU(e);return}}i_(e,()=>Ff.topBoolOrEmptySchema(e))}m_.validateFunctionCode=vU;function i_({gen:e,validateName:t,schema:r,schemaEnv:n,opts:s},i){if(s.code.es5)e.func(t,q._`${be.default.data}, ${be.default.valCxt}`,n.$async,()=>{e.code(q._`"use strict"; ${e_(r,s)}`),EU(e,s),e.code(i)});else e.func(t,q._`${be.default.data}, ${SU(s)}`,n.$async,()=>e.code(e_(r,s)).code(i))}function SU(e){return q._`{${be.default.instancePath}="", ${be.default.parentData}, ${be.default.parentDataProperty}, ${be.default.rootData}=${be.default.data}${e.dynamicRef?q._`, ${be.default.dynamicAnchors}={}`:q.nil}}={}`}function EU(e,t){e.if(be.default.valCxt,()=>{if(e.var(be.default.instancePath,q._`${be.default.valCxt}.${be.default.instancePath}`),e.var(be.default.parentData,q._`${be.default.valCxt}.${be.default.parentData}`),e.var(be.default.parentDataProperty,q._`${be.default.valCxt}.${be.default.parentDataProperty}`),e.var(be.default.rootData,q._`${be.default.valCxt}.${be.default.rootData}`),t.dynamicRef)e.var(be.default.dynamicAnchors,q._`${be.default.valCxt}.${be.default.dynamicAnchors}`)},()=>{if(e.var(be.default.instancePath,q._`""`),e.var(be.default.parentData,q._`undefined`),e.var(be.default.parentDataProperty,q._`undefined`),e.var(be.default.rootData,be.default.data),t.dynamicRef)e.var(be.default.dynamicAnchors,q._`{}`)})}function PU(e){let{schema:t,opts:r,gen:n}=e;i_(e,()=>{if(r.$comment&&t.$comment)u_(e);if(RU(e),n.let(be.default.vErrors,null),n.let(be.default.errors,0),r.unevaluated)jU(e);c_(e),NU(e)});return}function jU(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",q._`${r}.evaluated`),t.if(q._`${e.evaluated}.dynamicProps`,()=>t.assign(q._`${e.evaluated}.props`,q._`undefined`)),t.if(q._`${e.evaluated}.dynamicItems`,()=>t.assign(q._`${e.evaluated}.items`,q._`undefined`))}function e_(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?q._`/*# sourceURL=${r} */`:q.nil}function kU(e,t){if(a_(e)){if(l_(e),o_(e)){_U(e,t);return}}Ff.boolOrEmptySchema(e,t)}function o_({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function a_(e){return typeof e.schema!="boolean"}function _U(e,t){let{schema:r,gen:n,opts:s}=e;if(s.$comment&&r.$comment)u_(e);OU(e),CU(e);let i=n.const("_errs",be.default.errors);c_(e,i),n.var(t,q._`${i} === ${be.default.errors}`)}function l_(e){Ft.checkUnknownRules(e),AU(e)}function c_(e,t){if(e.opts.jtd)return t_(e,[],!1,t);let r=Lf.getSchemaTypes(e.schema),n=Lf.coerceAndCheckDataType(e,r);t_(e,r,!n,t)}function AU(e){let{schema:t,errSchemaPath:r,opts:n,self:s}=e;if(t.$ref&&n.ignoreKeywordsWithRef&&Ft.schemaHasRulesButRef(t,s.RULES))s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function RU(e){let{schema:t,opts:r}=e;if(t.default!==void 0&&r.useDefaults&&r.strictSchema)Ft.checkStrictMode(e,"default is ignored in the schema root")}function OU(e){let t=e.schema[e.opts.schemaId];if(t)e.baseId=s_.resolveUrl(e.opts.uriResolver,e.baseId,t)}function CU(e){if(e.schema.$async&&!e.schemaEnv.$async)throw Error("async schema in sync schema")}function u_({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)e.code(q._`${be.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let o=q.str`${n}/$comment`,a=e.scopeValue("root",{ref:t.root});e.code(q._`${be.default.self}.opts.$comment(${i}, ${o}, ${a}.schema)`)}}function NU(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=e;if(r.$async)t.if(q._`${be.default.errors} === 0`,()=>t.return(be.default.data),()=>t.throw(q._`new ${s}(${be.default.vErrors})`));else{if(t.assign(q._`${n}.errors`,be.default.vErrors),i.unevaluated)TU(e);t.return(q._`${be.default.errors} === 0`)}}function TU({gen:e,evaluated:t,props:r,items:n}){if(r instanceof q.Name)e.assign(q._`${t}.props`,r);if(n instanceof q.Name)e.assign(q._`${t}.items`,n)}function t_(e,t,r,n){let{gen:s,schema:i,data:o,allErrors:a,opts:l,self:c}=e,{RULES:u}=c;if(i.$ref&&(l.ignoreKeywordsWithRef||!Ft.schemaHasRulesButRef(i,u))){s.block(()=>d_(e,"$ref",u.all.$ref.definition));return}if(!l.jtd)IU(e,t);s.block(()=>{for(let h of u.rules)p(h);p(u.post)});function p(h){if(!wa.shouldUseGroup(i,h))return;if(h.type){if(s.if(ui.checkDataType(h.type,o,l.strictNumbers)),r_(e,h),t.length===1&&t[0]===h.type&&r)s.else(),ui.reportTypeError(e);s.endIf()}else r_(e,h);if(!a)s.if(q._`${be.default.errors} === ${n||0}`)}}function r_(e,t){let{gen:r,schema:n,opts:{useDefaults:s}}=e;if(s)n_.assignDefaults(e,t.type);r.block(()=>{for(let i of t.rules)if(wa.shouldUseRule(n,i))d_(e,i.keyword,i.definition,t.type)})}function IU(e,t){if(e.schemaEnv.meta||!e.opts.strictTypes)return;if(JU(e,t),!e.opts.allowUnionTypes)MU(e,t);DU(e,e.dataTypes)}function JU(e,t){if(!t.length)return;if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach((r)=>{if(!f_(e.dataTypes,r))jg(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),FU(e,t)}function MU(e,t){if(t.length>1&&!(t.length===2&&t.includes("null")))jg(e,"use allowUnionTypes to allow union type keyword")}function DU(e,t){let r=e.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&wa.shouldUseRule(e.schema,s)){let{type:i}=s.definition;if(i.length&&!i.some((o)=>LU(t,o)))jg(e,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function LU(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function f_(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function FU(e,t){let r=[];for(let n of e.dataTypes)if(f_(t,n))r.push(n);else if(t.includes("integer")&&n==="number")r.push("integer");e.dataTypes=r}function jg(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,Ft.checkStrictMode(e,t,e.opts.strictTypes)}class kg{constructor(e,t,r){if(Fn.validateKeywordUsage(e,t,r),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=r,this.data=e.data,this.schema=e.schema[r],this.$data=t.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=Ft.schemaRefOrVal(e,this.schema,r,this.$data),this.schemaType=t.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=t,this.$data)this.schemaCode=e.gen.const("vSchema",p_(this.$data,e));else if(this.schemaCode=this.schemaValue,!Fn.validSchemaType(this.schema,t.schemaType,t.allowUndefined))throw Error(`${r} value must be ${JSON.stringify(t.schemaType)}`);if("code"in t?t.trackErrors:t.errors!==!1)this.errsCount=e.gen.const("_errs",be.default.errors)}result(e,t,r){this.failResult(q.not(e),t,r)}failResult(e,t,r){if(this.gen.if(e),r)r();else this.error();if(t){if(this.gen.else(),t(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(e,t){this.failResult(q.not(e),void 0,t)}fail(e){if(e===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(e),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:t}=this;this.fail(q._`${t} !== undefined && (${q.or(this.invalid$data(),e)})`)}error(e,t,r){if(t){this.setParams(t),this._error(e,r),this.setParams({});return}this._error(e,r)}_error(e,t){(e?Ln.reportExtraError:Ln.reportError)(this,this.def.error,t)}$dataError(){Ln.reportError(this,this.def.$dataError||Ln.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');Ln.resetErrorsCount(this.gen,this.errsCount)}ok(e){if(!this.allErrors)this.gen.if(e)}setParams(e,t){if(t)Object.assign(this.params,e);else this.params=e}block$data(e,t,r=q.nil){this.gen.block(()=>{this.check$data(e,r),t()})}check$data(e=q.nil,t=q.nil){if(!this.$data)return;let{gen:r,schemaCode:n,schemaType:s,def:i}=this;if(r.if(q.or(q._`${n} === undefined`,t)),e!==q.nil)r.assign(e,!0);if(s.length||i.validateSchema){if(r.elseIf(this.invalid$data()),this.$dataError(),e!==q.nil)r.assign(e,!1)}r.else()}invalid$data(){let{gen:e,schemaCode:t,schemaType:r,def:n,it:s}=this;return q.or(i(),o());function i(){if(r.length){if(!(t instanceof q.Name))throw Error("ajv implementation error");let a=Array.isArray(r)?r:[r];return q._`${ui.checkDataTypes(a,t,s.opts.strictNumbers,ui.DataType.Wrong)}`}return q.nil}function o(){if(n.validateSchema){let a=e.scopeValue("validate$data",{ref:n.validateSchema});return q._`!${a}(${t})`}return q.nil}}subschema(e,t){let r=$a.getSubschema(this.it,e);$a.extendSubschemaData(r,this.it,e),$a.extendSubschemaMode(r,e);let n={...this.it,...r,items:void 0,props:void 0};return kU(n,t),n}mergeEvaluated(e,t){let{it:r,gen:n}=this;if(!r.opts.unevaluated)return;if(r.props!==!0&&e.props!==void 0)r.props=Ft.mergeEvaluated.props(n,e.props,r.props,t);if(r.items!==!0&&e.items!==void 0)r.items=Ft.mergeEvaluated.items(n,e.items,r.items,t)}mergeValidEvaluated(e,t){let{it:r,gen:n}=this;if(r.opts.unevaluated&&(r.props!==!0||r.items!==!0))return n.if(t,()=>this.mergeEvaluated(e,q.Name)),!0}}m_.KeywordCxt=kg;function d_(e,t,r,n){let s=new kg(e,r,t);if("code"in r)r.code(s,n);else if(s.$data&&r.validate)Fn.funcKeywordCode(s,r);else if("macro"in r)Fn.macroKeywordCode(s,r);else if(r.compile||r.validate)Fn.funcKeywordCode(s,r)}var qU=/^\/(?:[^~]|~0|~1)*$/,VU=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function p_(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let s,i;if(e==="")return be.default.rootData;if(e[0]==="/"){if(!qU.test(e))throw Error(`Invalid JSON-pointer: ${e}`);s=e,i=be.default.rootData}else{let c=VU.exec(e);if(!c)throw Error(`Invalid JSON-pointer: ${e}`);let u=+c[1];if(s=c[2],s==="#"){if(u>=t)throw Error(l("property/index",u));return n[t-u]}if(u>t)throw Error(l("data",u));if(i=r[t-u],!s)return i}let o=i,a=s.split("/");for(let c of a)if(c)i=q._`${i}${q.getProperty(Ft.unescapeJsonPointer(c))}`,o=q._`${o} && ${i}`;return o;function l(c,u){return`Cannot access ${c} ${u} levels up, current level is ${t}`}}m_.getData=p_});var tc=N(function(y_){Object.defineProperty(y_,"__esModule",{value:!0});class g_ extends Error{constructor(e){super("validation failed");this.errors=e,this.ajv=this.validation=!0}}y_.default=g_});var Ea=N(function(x_){Object.defineProperty(x_,"__esModule",{value:!0});var Sa=ec();class b_ extends Error{constructor(e,t,r,n){super(n||`can't resolve reference ${r} from id ${t}`);this.missingRef=Sa.resolveUrl(e,t,r),this.missingSchema=Sa.normalizeId(Sa.getFullPath(e,this.missingRef))}}x_.default=b_});var nc=N(function(v_){Object.defineProperty(v_,"__esModule",{value:!0});v_.resolveSchema=v_.getCompilingSchema=v_.resolveRef=v_.compileSchema=v_.SchemaEnv=void 0;var ht=$e(),zU=tc(),uo=tn(),gt=ec(),qf=Oe(),$_=va();class rc{constructor(e){var t;this.refs={},this.dynamicAnchors={};let r;if(typeof e.schema=="object")r=e.schema;this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(t=e.baseId)!==null&&t!==void 0?t:gt.normalizeId(r===null||r===void 0?void 0:r[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=r===null||r===void 0?void 0:r.$async,this.refs={}}}v_.SchemaEnv=rc;function Ag(e){let t=w_.call(this,e);if(t)return t;let r=gt.getFullPath(this.opts.uriResolver,e.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,o=new ht.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),a;if(e.$async)a=o.scopeValue("Error",{ref:zU.default,code:ht._`require("ajv/dist/runtime/validation_error").default`});let l=o.scopeName("validate");e.validateName=l;let c={gen:o,allErrors:this.opts.allErrors,data:uo.default.data,parentData:uo.default.parentData,parentDataProperty:uo.default.parentDataProperty,dataNames:[uo.default.data],dataPathArr:[ht.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:o.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:ht.stringify(e.schema)}:{ref:e.schema}),validateName:l,ValidationError:a,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:ht.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:ht._`""`,opts:this.opts,self:this},u;try{this._compilations.add(e),$_.validateFunctionCode(c),o.optimize(this.opts.code.optimize);let p=o.toString();if(u=`${o.scopeRefs(uo.default.scope)}return ${p}`,this.opts.code.process)u=this.opts.code.process(u,e);let m=Function(`${uo.default.self}`,`${uo.default.scope}`,u)(this,this.scope.get());if(this.scope.value(l,{ref:m}),m.errors=null,m.schema=e.schema,m.schemaEnv=e,e.$async)m.$async=!0;if(this.opts.code.source===!0)m.source={validateName:l,validateCode:p,scopeValues:o._values};if(this.opts.unevaluated){let{props:b,items:g}=c;if(m.evaluated={props:b instanceof ht.Name?void 0:b,items:g instanceof ht.Name?void 0:g,dynamicProps:b instanceof ht.Name,dynamicItems:g instanceof ht.Name},m.source)m.source.evaluated=ht.stringify(m.evaluated)}return e.validate=m,e}catch(p){if(delete e.validate,delete e.validateName,u)this.logger.error("Error compiling schema, function code:",u);throw p}finally{this._compilations.delete(e)}}v_.compileSchema=Ag;function GU(e,t,r){var n;r=gt.resolveUrl(this.opts.uriResolver,t,r);let s=e.refs[r];if(s)return s;let i=XU.call(this,e,r);if(i===void 0){let o=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;if(o)i=new rc({schema:o,schemaId:a,root:e,baseId:t})}if(i===void 0)return;return e.refs[r]=KU.call(this,i)}v_.resolveRef=GU;function KU(e){if(gt.inlineRef(e.schema,this.opts.inlineRefs))return e.schema;return e.validate?e:Ag.call(this,e)}function w_(e){for(let t of this._compilations)if(YU(t,e))return t}v_.getCompilingSchema=w_;function YU(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function XU(e,t){let r;while(typeof(r=this.refs[t])=="string")t=r;return r||this.schemas[t]||Vf.call(this,e,t)}function Vf(e,t){let r=this.opts.uriResolver.parse(t),n=gt._getFullPath(this.opts.uriResolver,r),s=gt.getFullPath(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===s)return _g.call(this,r,e);let i=gt.normalizeId(n),o=this.refs[i]||this.schemas[i];if(typeof o=="string"){let a=Vf.call(this,e,o);if(typeof(a===null||a===void 0?void 0:a.schema)!=="object")return;return _g.call(this,r,a)}if(typeof(o===null||o===void 0?void 0:o.schema)!=="object")return;if(!o.validate)Ag.call(this,o);if(i===gt.normalizeId(t)){let{schema:a}=o,{schemaId:l}=this.opts,c=a[l];if(c)s=gt.resolveUrl(this.opts.uriResolver,s,c);return new rc({schema:a,schemaId:l,root:e,baseId:s})}return _g.call(this,r,o)}v_.resolveSchema=Vf;var ZU=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function _g(e,{baseId:t,schema:r,root:n}){var s;if(((s=e.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let a of e.fragment.slice(1).split("/")){if(typeof r==="boolean")return;let l=r[qf.unescapeFragment(a)];if(l===void 0)return;r=l;let c=typeof r==="object"&&r[this.opts.schemaId];if(!ZU.has(a)&&c)t=gt.resolveUrl(this.opts.uriResolver,t,c)}let i;if(typeof r!="boolean"&&r.$ref&&!qf.schemaHasRulesButRef(r,this.RULES)){let a=gt.resolveUrl(this.opts.uriResolver,t,r.$ref);i=Vf.call(this,n,a)}let{schemaId:o}=this.opts;if(i=i||new rc({schema:r,schemaId:o,root:n,baseId:t}),i.schema!==i.root.schema)return i;return}});var E_=N(function(moe,n4){n4.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var Ig=N(function(hoe,C_){var s4=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Og=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u),i4=RegExp.prototype.test.bind(/^\d*$/u),fo=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),Cg=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),j_=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:@/]$/u),Ng=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:@/?]$/u),o4=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:]$/u),kr=Array(256);for(let t=0;t<256;t++)kr[t]="%"+"0123456789ABCDEF"[t>>4]+"0123456789ABCDEF"[t&15];function er(e){if(e<2048)return kr[192|e>>6]+kr[128|e&63];if(e<65536)return kr[224|e>>12]+kr[128|e>>6&63]+kr[128|e&63];return kr[240|e>>18]+kr[128|e>>12&63]+kr[128|e>>6&63]+kr[128|e&63]}function a4(e){let t="",r=0,n=0;for(n=0;n<e.length;n++){if(r=e[n].charCodeAt(0),r===48)continue;if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n<e.length;n++){if(r=e[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var l4=RegExp.prototype.test.bind(/^[\dA-Fa-f]{1,4}$/),c4=RegExp.prototype.test.bind(/^[vV][\dA-Fa-f]+\.[A-Za-z\d\-._~!$&'()*+,;=:]+$/),u4=RegExp.prototype.test.bind(/^[A-Za-z\d\-._~]$/),f4=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function d4(e){if(e.length===0)return!1;for(let t=0;t<e.length;t++){if(u4(e[t]))continue;if(e[t]==="%"&&t+2<e.length&&fo(e.slice(t+1,t+3))){t+=2;continue}return!1}return!0}function P_(e){let t=-1,r=0,n=-1,s=0;for(let a=0;a<e.length;a++)if(e[a]==="0"){if(n===-1)n=a;if(s++,s>r)r=s,t=n}else n=-1,s=0;if(r<2)return e.join(":");let i=e.slice(0,t).join(":"),o=e.slice(t+r).join(":");return i+"::"+o}function p4(e){let t=e.indexOf("::");if(t!==-1&&e.indexOf("::",t+1)!==-1)return;let r=t===-1?e.split(":"):e.slice(0,t).split(":"),n=t===-1?[]:e.slice(t+2).split(":");if(t!==-1){if(r.length===1&&r[0]==="")r.length=0;if(n.length===1&&n[0]==="")n.length=0}let s=r.concat(n),i=0;for(let a=0;a<s.length;a++){let l=s[a];if(l==="")return;if(l.indexOf(".")!==-1){if(a!==s.length-1||t!==-1&&n.length===0||!Og(l))return;i+=2;continue}if(!l4(l))return;s[a]=parseInt(l,16).toString(16),i++}if(t===-1){if(i!==8)return;return P_(s)}if(i>=8)return;let o=s.slice(0,r.length);for(let a=i;a<8;a++)o.push("0");for(let a=r.length;a<s.length;a++)o.push(s[a]);return P_(o)}function Rg(e){let t=e[0]==="["&&e[e.length-1]==="]";if((e[0]==="["||e[e.length-1]==="]")&&!t)return{host:e,isIPV6:!1,error:!0};let n=t?e.slice(1,-1):e;if(t&&c4(n))return n=n.toLowerCase(),{host:`[${n}]`,escapedHost:n,isIPV6:!1,isIPVFuture:!0};if(m4(n,":")<2)return{host:e,isIPV6:!1,error:t};let s="",i=n.indexOf("%");if(i!==-1){let a=n.slice(i,i+3).toLowerCase()==="%25"?3:1;if(s=n.slice(i+a),!d4(s))return{host:e,isIPV6:!1,error:!0};n=n.slice(0,i)}let o=p4(n);if(o===void 0)return{host:e,isIPV6:!1,error:!0};return{host:o+(s?"%"+s:""),escapedHost:o+(s?"%25"+s:""),isIPV6:!0}}function m4(e,t){let r=0;for(let n=0;n<e.length;n++)if(e[n]===t)r++;return r}function k_(e){let t=e,r=[],n=-1,s=0;while(s=t.length){if(s===1)if(t===".")break;else if(t==="/"){r.push("/");break}else{r.push(t);break}else if(s===2){if(t[0]==="."){if(t[1]===".")break;else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"){if(t[1]==="."||t[1]==="/"){r.push("/");break}}}else if(s===3){if(t==="/.."){if(r.length!==0)r.pop();r.push("/");break}}if(t[0]==="."){if(t[1]==="."){if(t[2]==="/"){t=t.slice(3);continue}}else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"){if(t[1]==="."){if(t[2]==="/"){t=t.slice(2);continue}else if(t[2]==="."){if(t[3]==="/"){if(t=t.slice(3),r.length!==0)r.pop();continue}}}}if((n=t.indexOf("/",1))===-1){r.push(t);break}else r.push(t.slice(0,n)),t=t.slice(n)}return r.join("")}function h4(e){if(e===""||e[0]==="/")return k_(e);let t=e.split("/"),r=t.length-1,n=[],s=!1;for(let i=0;i<=r;i++){let o=t[i];if(o==="."||o===".."){if(o==="..")if(n.length!==0&&n[n.length-1]!=="..")n.pop();else n.push("..");s=i===r}else n.push(o)}if(s&&n[n.length-1]!=="..")n.push("");if(n.length===0||n[0]===""||n[0].includes(":"))n.unshift(".");return n.join("/")}var g4={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},y4=/[@/?#:]/g,b4=/[@/?#]/g;function __(e,t){let r=t?b4:y4;return r.lastIndex=0,e.replace(r,(n)=>g4[n])}function A_(e,t=!1){if(e.indexOf("%")===-1)return e;let r="";for(let n=0;n<e.length;n++){if(e[n]==="%"&&n+2<e.length){let s=e.slice(n+1,n+3);if(fo(s)){let i=s.toUpperCase(),o=String.fromCharCode(parseInt(i,16));if(t&&Cg(o))r+=o;else r+="%"+i;n+=2;continue}}r+=e[n]}return r}function x4(e){let t="";for(let r=0;r<e.length;r++){let n=e[r];if(n==="%"&&r+2<e.length){let s=e.slice(r+1,r+3);if(fo(s)){let i=s.toUpperCase(),o=String.fromCharCode(parseInt(i,16));if(o!=="."&&Cg(o))t+=o;else t+="%"+i;r+=2;continue}}if(j_(n))t+=n;else{let s=e.charCodeAt(r);if(s<128)t+=O_(s)?n:kr[s];else if(s<55296||s>57343)t+=er(s);else if(s<=56319&&r+1<e.length){let i=e.charCodeAt(r+1);if(i>=56320&&i<=57343)t+=er(65536+(s-55296<<10)+(i-56320)),r++;else t+=er(65533)}else t+=er(65533)}}return t}function $4(e,t=!1){let r="",n=t&&e[0]!=="/";for(let s=0;s<e.length;s++){let i=e[s];if(i==="%"&&s+2<e.length){let o=e.slice(s+1,s+3);if(fo(o)){r+="%"+o.toUpperCase(),s+=2;continue}}if(i==="/")n=!1;if(j_(i)&&(i!==":"||!n))r+=i;else{let o=e.charCodeAt(s);if(o<128)r+=kr[o];else if(o<55296||o>57343)r+=er(o);else if(o<=56319&&s+1<e.length){let a=e.charCodeAt(s+1);if(a>=56320&&a<=57343)r+=er(65536+(o-55296<<10)+(a-56320)),s++;else r+=er(65533)}else r+=er(65533)}}return r}function Tg(e,t){let r="";for(let n=0;n<e.length;n++){let s=e[n];if(s==="%"&&n+2<e.length){let i=e.slice(n+1,n+3);if(fo(i)){r+="%"+i.toUpperCase(),n+=2;continue}}if(t(s))r+=s;else{let i=e.charCodeAt(n);if(i<128)r+=kr[i];else if(i<55296||i>57343)r+=er(i);else if(i<=56319&&n+1<e.length){let o=e.charCodeAt(n+1);if(o>=56320&&o<=57343)r+=er(65536+(i-55296<<10)+(o-56320)),n++;else r+=er(65533)}else r+=er(65533)}}return r}function R_(e){return Tg(e,o4)}function w4(e){return Tg(e,Ng)}function v4(e){return Tg(e,Ng)}function O_(e){return e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122||e===42||e===43||e===45||e===46||e===47||e===64||e===95}function S4(e){let t="";for(let r=0;r<e.length;r++){let n=e[r];if(n==="%"&&r+2<e.length){let s=e.slice(r+1,r+3);if(fo(s)){let i=s.toUpperCase(),o=String.fromCharCode(parseInt(i,16));if(Cg(o))t+=o;else t+="%"+i;r+=2;continue}}if(Ng(n))t+=n;else{let s=e.charCodeAt(r);if(s<128)t+=O_(s)?n:kr[s];else if(s<55296||s>57343)t+=er(s);else if(s<=56319&&r+1<e.length){let i=e.charCodeAt(r+1);if(i>=56320&&i<=57343)t+=er(65536+(s-55296<<10)+(i-56320)),r++;else t+=er(65533)}else t+=er(65533)}}return t}function E4(e){let t="";for(let r=0;r<e.length;r++){if(e[r]==="%"&&r+2<e.length){let n=e.slice(r+1,r+3);if(fo(n)){t+="%"+n.toUpperCase(),r+=2;continue}}t+=escape(e[r])}return t}function P4(e){let t=[];if(e.userinfo!==void 0)t.push(R_(e.userinfo)),t.push("@");if(e.host!==void 0){let r=e.host;if(!Og(r)){let n=Rg(r);if(n.isIPV6!==!0&&n.isIPVFuture!==!0)r=A_(r,!0),n=Rg(r);if(n.isIPV6===!0||n.isIPVFuture===!0)r=`[${n.escapedHost}]`;else r=__(r,!1)}t.push(r)}if(typeof e.port==="number"||typeof e.port==="string"){let r=String(e.port);if(!i4(r))throw TypeError("URI port is malformed.");t.push(":"),t.push(r)}return t.length?t.join(""):void 0}C_.exports={nonSimpleDomain:f4,recomposeAuthority:P4,reescapeHostDelimiters:__,normalizePercentEncoding:A_,normalizePathEncoding:x4,serializePathEncoding:$4,normalizeQueryFragmentEncoding:S4,encodeUserinfo:R_,encodeQuery:w4,encodeFragment:v4,escapePreservingEscapes:E4,removeDotSegments:k_,removeDotSegmentsRelative:h4,isIPv4:Og,isUUID:s4,normalizeIPv6:Rg,stringArrayToHexStripped:a4}});var M_=N(function(goe,J_){var{isUUID:j4}=Ig(),k4=/^([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-./:;=@]|%[\da-f]{2})+)$/iu,_4=["http","https","ws","wss","urn","urn:uuid"];function A4(e){return _4.indexOf(e)!==-1}function Jg(e){if(e.secure===!0)return!0;else if(e.secure===!1)return!1;else if(e.scheme)return e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S");else return!1}function N_(e){if(!e.host)e.error=e.error||"HTTP URIs must have a host.";return e}function T_(e){let t=String(e.scheme).toLowerCase()==="https";if(e.port===(t?443:80)||e.port==="")e.port=void 0;if(!e.path)e.path="/";return e}function R4(e){return e.secure=Jg(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function O4(e){if(e.port===(Jg(e)?443:80)||e.port==="")e.port=void 0;if(typeof e.secure==="boolean")e.scheme=e.secure?"wss":"ws",e.secure=void 0;if(e.resourceName){let t=e.resourceName.indexOf("?"),r=t===-1?e.resourceName:e.resourceName.slice(0,t);e.path=r&&r!=="/"?r:void 0,e.query=t===-1?void 0:e.resourceName.slice(t+1),e.resourceName=void 0}return e.fragment=void 0,e}function C4(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(k4);if(r&&r[0]===e.path){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let s=`${n}:${t.nid||e.nid}`,i=Mg(s);if(e.path=void 0,i)e=i.parse(e,t)}else e.error=e.error||"URN can not be parsed.";return e}function N4(e,t){if(e.nid===void 0)throw Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),s=`${r}:${t.nid||n}`,i=Mg(s);if(i)e=i.serialize(e,t);let o=e,a=e.nss;return o.path=`${n||t.nid}:${a}`,t.skipEscape=!0,o}function T4(e,t){let r=e;if(r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!j4(r.uuid)))r.error=r.error||"UUID is not valid.";return r}function I4(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var I_={scheme:"http",domainHost:!0,parse:N_,serialize:T_},J4={scheme:"https",domainHost:I_.domainHost,parse:N_,serialize:T_},Wf={scheme:"ws",domainHost:!0,parse:R4,serialize:O4},M4={scheme:"wss",domainHost:Wf.domainHost,parse:Wf.parse,serialize:Wf.serialize},D4={scheme:"urn",parse:C4,serialize:N4,skipNormalize:!0},L4={scheme:"urn:uuid",parse:T4,serialize:I4,skipNormalize:!0},Hf={http:I_,https:J4,ws:Wf,wss:M4,urn:D4,"urn:uuid":L4};Object.setPrototypeOf(Hf,null);function Mg(e){return e&&(Hf[e]||Hf[e.toLowerCase()])||void 0}J_.exports={wsIsSecure:Jg,SCHEMES:Hf,isValidSchemeName:A4,getSchemeHandler:Mg}});var X_=N(function(yoe,Gf){var{normalizeIPv6:V_,removeDotSegments:ic,removeDotSegmentsRelative:W_,recomposeAuthority:F4,normalizePercentEncoding:Dg,normalizePathEncoding:q4,serializePathEncoding:D_,normalizeQueryFragmentEncoding:L_,encodeQuery:V4,encodeFragment:W4,reescapeHostDelimiters:H4,isIPv4:H_,nonSimpleDomain:B4}=Ig(),{SCHEMES:B_,getSchemeHandler:Lg}=M_(),U_=/^[A-Za-z][A-Za-z0-9+.-]*$/u,U4=/[\0-\x20"#/:<>?@[\\\]^`{|}\x7F]/u;function F_(e){let t=String(e);if(!U_.test(t))throw TypeError("URI scheme is malformed.");return t}function z4(e,t){if(typeof e==="string")e=r6(e,t);else if(typeof e==="object")e=Uf(po(e,t),t);return e}function G4(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},{parsed:s,malformedAuthorityOrPort:i,malformedPercentEncoding:o,malformedSchemeSpecific:a,malformedHost:l,malformedScheme:c}=Bf(e,n),{parsed:u,malformedAuthorityOrPort:p,malformedPercentEncoding:h,malformedSchemeSpecific:m,malformedHost:b,malformedScheme:g}=Bf(t,n);if(i||p||o||h||a||m||l||b||c||g)throw Error(s.error||u.error||"URI is malformed.");let y=z_(s,u,n,!0),w=Lg(r&&r.scheme||y.scheme),P=y.host,S=P!==void 0&&P!==""&&(H_(P)||V_(P).isIPV6);if(K_(y,r||{},w,S))throw Error("URI host is malformed.");G_(y,r||{},w,S);let E=P&&P.indexOf("%")!==-1&&!/\P{ASCII}/u.test(P);if(y.error&&!E)throw Error(y.error);return n.skipEscape=!0,po(y,n)}function z_(e,t,r,n){let s={};if(!n)e=Uf(po(e,r),r),t=Uf(po(t,r),r);if(r=r||{},!r.tolerant&&t.scheme)s.scheme=t.scheme,s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=ic(t.path||""),s.query=t.query;else{if(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=ic(t.path||""),s.query=t.query;else{if(!t.path)if(s.path=e.path,t.query!==void 0)s.query=t.query;else s.query=e.query;else{if(t.path[0]==="/")s.path=ic(t.path);else{let i=e.userinfo!==void 0||e.host!==void 0||e.port!==void 0;if(i&&!e.path)s.path="/"+t.path;else if(!e.path)s.path=t.path;else s.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path;s.path=e.scheme===void 0&&!i&&s.path[0]!=="/"?W_(s.path):ic(s.path)}s.query=t.query}s.userinfo=e.userinfo,s.host=e.host,s.port=e.port}s.scheme=e.scheme}return s.fragment=t.fragment,s}function K4(e,t,r){let n=q_(e,r),s=q_(t,r);return n!==void 0&&s!==void 0&&n===s}function po(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),s=[];if(r.scheme)r.scheme=F_(r.scheme);let i=Lg(n.scheme||r.scheme);if(i&&i.serialize)i.serialize(r,n);let o=r.userinfo!==void 0||r.host!==void 0||r.port!==void 0,a=(r.scheme===void 0||n.reference==="suffix")&&!o,l=!n.skipEscape&&a;if(r.path!==void 0)if(!n.skipEscape)r.path=D_(r.path,l);else r.path=Dg(r.path);if(n.reference!=="suffix"&&r.scheme)r.scheme=F_(r.scheme),s.push(r.scheme,":");let c=F4(r);if(c!==void 0){if(n.reference!=="suffix")s.push("//");if(s.push(c),r.path&&r.path[0]!=="/")s.push("/")}if(r.path!==void 0){let u=r.path;if(!n.absolutePath&&(!i||!i.absolutePath))u=a&&u[0]!=="/"?W_(u):ic(u);if(a)u=D_(u,!0);if(c===void 0&&u[0]==="/"&&u[1]==="/")u="/%2F"+u.slice(2);s.push(u)}if(r.query!==void 0)s.push("?",V4(r.query));if(r.fragment!==void 0)s.push("#",W4(r.fragment));return s.join("")}var Y4=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u,X4=/^(?:[^#/:?]+:)?\/\/([^/?#]*)/,Z4=/^(?:[^#/:?]+:)?([/\\\t\n\r]*)/;function Q4(e,t){if(t[2]!==void 0&&e.path&&e.path[0]!=="/")return'URI path must start with "/" when authority is present.';if(typeof e.port==="number"&&(e.port<0||e.port>65535))return"URI port is malformed.";return}function sc(e){if(e===void 0)return!1;let t=e.indexOf("%");while(t!==-1){if(t+2>=e.length||!/^[\da-f]{2}$/iu.test(e.slice(t+1,t+3)))return!0;t=e.indexOf("%",t+3)}return!1}function zf(e){return e[0]==="["&&e[e.length-1]==="]"}function e6(e){let t=e[4];return sc(e[3])||t!==void 0&&!zf(t)&&sc(t)||sc(e[6])||sc(e[7])||sc(e[8])}function G_(e,t,r,n){if(K_(e,t,r,n))return e.error=e.error||"URI host is malformed.",!0;if(!t.unicodeSupport&&(!r||!r.unicodeSupport)&&e.host&&!zf(e.host)&&(t.domainHost||r&&r.domainHost)&&n===!1&&B4(e.host)){let s;try{s=new URL("http://"+e.host)}catch(i){return e.error=e.error||"Host's domain name can not be converted to ASCII: "+i,!0}if(!t6(s))return e.error=e.error||"URI host is malformed.",!0;e.host=s.hostname}return!1}function K_(e,t,r,n){return Boolean(e.host&&n===!1&&!zf(e.host)&&(t.domainHost||r&&r.domainHost)&&U4.test(e.host))}function t6(e){return e.username===""&&e.password===""&&e.port===""&&e.pathname==="/"&&e.search===""&&e.hash===""&&e.hostname!==""}function Bf(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1,i=!1,o=!1,a=!1,l=!1,c=!1,u=!1;if(r.reference==="suffix")if(r.scheme)e=r.scheme+":"+e;else e="//"+e;let p=e.match(X4);if(p!==null&&p[1].indexOf("\\")!==-1)n.error="URI authority must not contain a literal backslash.",s=!0;let h=e.match(Z4);if(h!==null){let b=h[1],g=b.replace(/[\t\n\r]/g,"");if(g.length>=2){if(g.slice(0,2)!=="//")n.error=n.error||"URI authority must not contain a literal backslash.",s=!0;else if(b.length!==g.length)n.error=n.error||"URI authority introducer must not contain whitespace.",s=!0}}let m=e.match(Y4);if(m){if(n.scheme=m[1],n.userinfo=m[3],n.host=m[4],n.port=parseInt(m[5],10),n.path=m[6]||"",n.query=m[7],n.fragment=m[8],n.scheme!==void 0)if(U_.test(n.scheme))n.scheme=n.scheme.toLowerCase();else n.error=n.error||"URI scheme is malformed.",c=!0;if(i=e6(m),i)n.error=n.error||"URI contains malformed percent-encoding.";if(isNaN(n.port))n.port=m[5];let b=Q4(n,m);if(b!==void 0)n.error=n.error||b,s=!0;if(n.host)if(H_(n.host)===!1){let w=zf(n.host),P=n.host.indexOf("[")!==-1||n.host.indexOf("]")!==-1,S=V_(n.host);if(u=S.isIPV6||S.isIPVFuture===!0,l=P&&(!w||S.error===!0),n.host=u?S.host:S.host.toLowerCase(),l)n.error=n.error||"URI host is malformed.",s=!0}else u=!0;if(n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path)n.reference="same-document";else if(n.scheme===void 0)n.reference="relative";else if(n.fragment===void 0)n.reference="absolute";else n.reference="uri";if(r.reference&&r.reference!=="suffix"&&r.reference!==n.reference)n.error=n.error||"URI is not a "+r.reference+" reference.";let g=Lg(r.scheme||n.scheme);if(!l)a=G_(n,r,g,u);if(e.indexOf("%")!==-1&&n.host!==void 0&&!l){let y=u?n.host:Dg(n.host,!0);if(!u)y=Dg(y.toLowerCase());n.host=u||r.scheme!=="null"?H4(y,u):y}if(!g||g&&!g.skipNormalize){if(n.path)n.path=q4(n.path);if(n.query)n.query=L_(n.query);if(n.fragment)n.fragment=L_(n.fragment)}if(g&&g.parse){if(g.parse(n,r),g===B_.urn&&n.nid===void 0)o=!0}}else n.error=n.error||"URI can not be parsed.";return{parsed:n,malformedAuthorityOrPort:s,malformedPercentEncoding:i,malformedSchemeSpecific:o,malformedHost:a,malformedScheme:c}}function Uf(e,t){return Bf(e,t).parsed}function r6(e,t){return Y_(e,t).normalized}function Y_(e,t){let{parsed:r,malformedAuthorityOrPort:n,malformedPercentEncoding:s,malformedSchemeSpecific:i,malformedHost:o,malformedScheme:a}=Bf(e,t);return{normalized:n||s||i||o||a?e:po(r,t),malformedAuthorityOrPort:n,malformedPercentEncoding:s,malformedSchemeSpecific:i,malformedHost:o,malformedScheme:a}}function q_(e,t){if(typeof e!=="string"&&typeof e!=="object")return;let r;try{r=typeof e==="string"?e:po(e,t)}catch{return}let{normalized:n,malformedAuthorityOrPort:s,malformedPercentEncoding:i,malformedSchemeSpecific:o,malformedHost:a,malformedScheme:l}=Y_(r,t);return s||i||o||a||l?void 0:n}var Fg={SCHEMES:B_,normalize:z4,resolve:G4,resolveComponent:z_,equal:K4,serialize:po,parse:Uf};Gf.exports=Fg;Gf.exports.default=Fg;Gf.exports.fastUri=Fg});var eA=N(function(Q_){Object.defineProperty(Q_,"__esModule",{value:!0});var Z_=X_();Z_.code='require("ajv/dist/runtime/uri").default';Q_.default=Z_});var Vg=N(function(Rs){Object.defineProperty(Rs,"__esModule",{value:!0});Rs.CodeGen=Rs.Name=Rs.nil=Rs.stringify=Rs.str=Rs._=Rs.KeywordCxt=void 0;var s6=va();Object.defineProperty(Rs,"KeywordCxt",{enumerable:!0,get:function(){return s6.KeywordCxt}});var ja=$e();Object.defineProperty(Rs,"_",{enumerable:!0,get:function(){return ja._}});Object.defineProperty(Rs,"str",{enumerable:!0,get:function(){return ja.str}});Object.defineProperty(Rs,"stringify",{enumerable:!0,get:function(){return ja.stringify}});Object.defineProperty(Rs,"nil",{enumerable:!0,get:function(){return ja.nil}});Object.defineProperty(Rs,"Name",{enumerable:!0,get:function(){return ja.Name}});Object.defineProperty(Rs,"CodeGen",{enumerable:!0,get:function(){return ja.CodeGen}});var i6=tc(),iA=Ea(),oA=yg(),qn=nc(),aA=$e(),Vn=ec(),fi=Ql(),Pa=Oe(),tA=E_(),o6=eA(),lA=(e,t)=>new RegExp(e,t);lA.code="new RegExp";var a6=["removeAdditional","useDefaults","coerceTypes"],l6=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),c6={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},u6={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},rA=200;function f6(e){var t,r,n,s,i,o,a,l,c,u,p,h,m,b,g,y,w,P,S,E,k,A,R,_,I;let L=e.strict,J=(t=e.code)===null||t===void 0?void 0:t.optimize,F=J===!0||J===void 0?1:J||0,K=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:lA,ae=(s=e.uriResolver)!==null&&s!==void 0?s:o6.default;return{strictSchema:(o=(i=e.strictSchema)!==null&&i!==void 0?i:L)!==null&&o!==void 0?o:!0,strictNumbers:(l=(a=e.strictNumbers)!==null&&a!==void 0?a:L)!==null&&l!==void 0?l:!0,strictTypes:(u=(c=e.strictTypes)!==null&&c!==void 0?c:L)!==null&&u!==void 0?u:"log",strictTuples:(h=(p=e.strictTuples)!==null&&p!==void 0?p:L)!==null&&h!==void 0?h:"log",strictRequired:(b=(m=e.strictRequired)!==null&&m!==void 0?m:L)!==null&&b!==void 0?b:!1,code:e.code?{...e.code,optimize:F,regExp:K}:{optimize:F,regExp:K},loopRequired:(g=e.loopRequired)!==null&&g!==void 0?g:rA,loopEnum:(y=e.loopEnum)!==null&&y!==void 0?y:rA,meta:(w=e.meta)!==null&&w!==void 0?w:!0,messages:(P=e.messages)!==null&&P!==void 0?P:!0,inlineRefs:(S=e.inlineRefs)!==null&&S!==void 0?S:!0,schemaId:(E=e.schemaId)!==null&&E!==void 0?E:"$id",addUsedSchema:(k=e.addUsedSchema)!==null&&k!==void 0?k:!0,validateSchema:(A=e.validateSchema)!==null&&A!==void 0?A:!0,validateFormats:(R=e.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(_=e.unicodeRegExp)!==null&&_!==void 0?_:!0,int32range:(I=e.int32range)!==null&&I!==void 0?I:!0,uriResolver:ae}}class Kf{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...f6(e)};let{es5:t,lines:r}=this.opts.code;this.scope=new aA.ValueScope({scope:{},prefixes:l6,es5:t,lines:r}),this.logger=y6(e.logger);let n=e.validateFormats;if(e.validateFormats=!1,this.RULES=oA.getRules(),nA.call(this,c6,e,"NOT SUPPORTED"),nA.call(this,u6,e,"DEPRECATED","warn"),this._metaOpts=h6.call(this),e.formats)p6.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords)m6.call(this,e.keywords);if(typeof e.meta=="object")this.addMetaSchema(e.meta);d6.call(this),e.validateFormats=n}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:t,schemaId:r}=this.opts,n=tA;if(r==="id")n={...tA},n.id=n.$id,delete n.$id;if(t&&e)this.addMetaSchema(n,n[r],!1)}defaultMeta(){let{meta:e,schemaId:t}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[t]||e:void 0}validate(e,t){let r;if(typeof e=="string"){if(r=this.getSchema(e),!r)throw Error(`no schema with key or ref "${e}"`)}else r=this.compile(e);let n=r(t);if(!("$async"in r))this.errors=r.errors;return n}compile(e,t){let r=this._addSchema(e,t);return r.validate||this._compileSchemaEnv(r)}compileAsync(e,t){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:r}=this.opts;return n.call(this,e,t);async function n(c,u){await s.call(this,c.$schema);let p=this._addSchema(c,u);return p.validate||i.call(this,p)}async function s(c){if(c&&!this.getSchema(c))await n.call(this,{$ref:c},!0)}async function i(c){try{return this._compileSchemaEnv(c)}catch(u){if(!(u instanceof iA.default))throw u;return o.call(this,u),await a.call(this,u.missingSchema),i.call(this,c)}}function o({missingSchema:c,missingRef:u}){if(this.refs[c])throw Error(`AnySchema ${c} is loaded but ${u} cannot be resolved`)}async function a(c){let u=await l.call(this,c);if(!this.refs[c])await s.call(this,u.$schema);if(!this.refs[c])this.addSchema(u,c,t)}async function l(c){let u=this._loading[c];if(u)return u;try{return await(this._loading[c]=r(c))}finally{delete this._loading[c]}}}addSchema(e,t,r,n=this.opts.validateSchema){if(Array.isArray(e)){for(let i of e)this.addSchema(i,void 0,r,n);return this}let s;if(typeof e==="object"){let{schemaId:i}=this.opts;if(s=e[i],s!==void 0&&typeof s!="string")throw Error(`schema ${i} must be string`)}return t=Vn.normalizeId(t||s),this._checkUnique(t),this.schemas[t]=this._addSchema(e,r,t,n,!0),this}addMetaSchema(e,t,r=this.opts.validateSchema){return this.addSchema(e,t,!0,r),this}validateSchema(e,t){if(typeof e=="boolean")return!0;let r;if(r=e.$schema,r!==void 0&&typeof r!="string")throw Error("$schema must be a string");if(r=r||this.opts.defaultMeta||this.defaultMeta(),!r)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let n=this.validate(r,e);if(!n&&t){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw Error(s)}return n}getSchema(e){let t;while(typeof(t=sA.call(this,e))=="string")e=t;if(t===void 0){let{schemaId:r}=this.opts,n=new qn.SchemaEnv({schema:{},schemaId:r});if(t=qn.resolveSchema.call(this,n,e),!t)return;this.refs[e]=t}return t.validate||this._compileSchemaEnv(t)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let t=sA.call(this,e);if(typeof t=="object")this._cache.delete(t.schema);return delete this.schemas[e],delete this.refs[e],this}case"object":{let t=e;this._cache.delete(t);let r=e[this.opts.schemaId];if(r)r=Vn.normalizeId(r),delete this.schemas[r],delete this.refs[r];return this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let t of e)this.addKeyword(t);return this}addKeyword(e,t){let r;if(typeof e=="string"){if(r=e,typeof t=="object")this.logger.warn("these parameters are deprecated, see docs for addKeyword"),t.keyword=r}else if(typeof e=="object"&&t===void 0){if(t=e,r=t.keyword,Array.isArray(r)&&!r.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if(x6.call(this,r,t),!t)return Pa.eachItem(r,(s)=>qg.call(this,s)),this;w6.call(this,t);let n={...t,type:fi.getJSONTypes(t.type),schemaType:fi.getJSONTypes(t.schemaType)};return Pa.eachItem(r,n.type.length===0?(s)=>qg.call(this,s,n):(s)=>n.type.forEach((i)=>qg.call(this,s,n,i))),this}getKeyword(e){let t=this.RULES.all[e];return typeof t=="object"?t.definition:!!t}removeKeyword(e){let{RULES:t}=this;delete t.keywords[e],delete t.all[e];for(let r of t.rules){let n=r.rules.findIndex((s)=>s.keyword===e);if(n>=0)r.rules.splice(n,1)}return this}addFormat(e,t){if(typeof t=="string")t=new RegExp(t);return this.formats[e]=t,this}errorsText(e=this.errors,{separator:t=", ",dataVar:r="data"}={}){if(!e||e.length===0)return"No errors";return e.map((n)=>`${r}${n.instancePath} ${n.message}`).reduce((n,s)=>n+t+s)}$dataMetaSchema(e,t){let r=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let n of t){let s=n.split("/").slice(1),i=e;for(let o of s)i=i[o];for(let o in r){let a=r[o];if(typeof a!="object")continue;let{$data:l}=a.definition,c=i[o];if(l&&c)i[o]=cA(c)}}return e}_removeAllSchemas(e,t){for(let r in e){let n=e[r];if(!t||t.test(r)){if(typeof n=="string")delete e[r];else if(n&&!n.meta)this._cache.delete(n.schema),delete e[r]}}}_addSchema(e,t,r,n=this.opts.validateSchema,s=this.opts.addUsedSchema){let i,{schemaId:o}=this.opts;if(typeof e=="object")i=e[o];else if(this.opts.jtd)throw Error("schema must be object");else if(typeof e!="boolean")throw Error("schema must be object or boolean");let a=this._cache.get(e);if(a!==void 0)return a;r=Vn.normalizeId(i||r);let l=Vn.getSchemaRefs.call(this,e,r);if(a=new qn.SchemaEnv({schema:e,schemaId:o,meta:t,baseId:r,localRefs:l}),this._cache.set(a.schema,a),s&&!r.startsWith("#")){if(r)this._checkUnique(r);this.refs[r]=a}if(n)this.validateSchema(e,!0);return a}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta)this._compileMetaSchema(e);else qn.compileSchema.call(this,e);if(!e.validate)throw Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let t=this.opts;this.opts=this._metaOpts;try{qn.compileSchema.call(this,e)}finally{this.opts=t}}}Kf.ValidationError=i6.default;Kf.MissingRefError=iA.default;Rs.default=Kf;function nA(e,t,r,n="error"){for(let s in e){let i=s;if(i in t)this.logger[n](`${r}: option ${s}. ${e[i]}`)}}function sA(e){return e=Vn.normalizeId(e),this.schemas[e]||this.refs[e]}function d6(){let e=this.opts.schemas;if(!e)return;if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function p6(){for(let e in this.opts.formats){let t=this.opts.formats[e];if(t)this.addFormat(e,t)}}function m6(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];if(!r.keyword)r.keyword=t;this.addKeyword(r)}}function h6(){let e={...this.opts};for(let t of a6)delete e[t];return e}var g6={log(){},warn(){},error(){}};function y6(e){if(e===!1)return g6;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw Error("logger must implement log, warn and error methods")}var b6=/^[a-z_$][a-z0-9_$:-]*$/i;function x6(e,t){let{RULES:r}=this;if(Pa.eachItem(e,(n)=>{if(r.keywords[n])throw Error(`Keyword ${n} is already defined`);if(!b6.test(n))throw Error(`Keyword ${n} has invalid name`)}),!t)return;if(t.$data&&!(("code"in t)||("validate"in t)))throw Error('$data keyword must have "code" or "validate" function')}function qg(e,t,r){var n;let s=t===null||t===void 0?void 0:t.post;if(r&&s)throw Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,o=s?i.post:i.rules.find(({type:l})=>l===r);if(!o)o={type:r,rules:[]},i.rules.push(o);if(i.keywords[e]=!0,!t)return;let a={keyword:e,definition:{...t,type:fi.getJSONTypes(t.type),schemaType:fi.getJSONTypes(t.schemaType)}};if(t.before)$6.call(this,o,a,t.before);else o.rules.push(a);i.all[e]=a,(n=t.implements)===null||n===void 0||n.forEach((l)=>this.addKeyword(l))}function $6(e,t,r){let n=e.rules.findIndex((s)=>s.keyword===r);if(n>=0)e.rules.splice(n,0,t);else e.rules.push(t),this.logger.warn(`rule ${r} is not defined`)}function w6(e){let{metaSchema:t}=e;if(t===void 0)return;if(e.$data&&this.opts.$data)t=cA(t);e.validateSchema=this.compile(t,!0)}var v6={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function cA(e){return{anyOf:[e,v6]}}});var fA=N(function(uA){Object.defineProperty(uA,"__esModule",{value:!0});var P6={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};uA.default=P6});var Qf=N(function(pA){Object.defineProperty(pA,"__esModule",{value:!0});pA.callRef=pA.getValidate=void 0;var k6=Ea(),Xf=nn(),Ye=$e(),ka=tn(),Zf=nc(),di=Oe(),_6={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:s,schemaEnv:i,validateName:o,opts:a,self:l}=n,{root:c}=i;if((r==="#"||r==="#/")&&s===c.baseId)return p();let u=Zf.resolveRef.call(l,c,s,r);if(u===void 0)throw new k6.default(n.opts.uriResolver,s,r);if(u instanceof Zf.SchemaEnv)return h(u);return m(u);function p(){if(i===c)return Yf(e,o,i,i.$async);let b=t.scopeValue("root",{ref:c});return Yf(e,Ye._`${b}.validate`,c,c.$async)}function h(b){let g=dA(e,b);Yf(e,g,b,b.$async)}function m(b){let g=t.scopeValue("schema",a.code.source===!0?{ref:b,code:Ye.stringify(b)}:{ref:b}),y=t.name("valid"),w=e.subschema({schema:b,dataTypes:[],schemaPath:Ye.nil,topSchemaRef:g,errSchemaPath:r},y);e.mergeEvaluated(w),e.ok(y)}}};function dA(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):Ye._`${r.scopeValue("wrapper",{ref:t})}.validate`}pA.getValidate=dA;function Yf(e,t,r,n){let{gen:s,it:i}=e,{allErrors:o,schemaEnv:a,opts:l}=i,c=l.passContext?ka.default.this:Ye.nil;if(n)u();else p();function u(){if(!a.$async)throw Error("async schema referenced by sync schema");let b=s.let("valid");s.try(()=>{if(s.code(Ye._`await ${Xf.callValidateCode(e,t,c)}`),m(t),!o)s.assign(b,!0)},(g)=>{if(s.if(Ye._`!(${g} instanceof ${i.ValidationError})`,()=>s.throw(g)),h(g),!o)s.assign(b,!1)}),e.ok(b)}function p(){e.result(Xf.callValidateCode(e,t,c),()=>m(t),()=>h(t))}function h(b){let g=Ye._`${b}.errors`;s.assign(ka.default.vErrors,Ye._`${ka.default.vErrors} === null ? ${g} : ${ka.default.vErrors}.concat(${g})`),s.assign(ka.default.errors,Ye._`${ka.default.vErrors}.length`)}function m(b){var g;if(!i.opts.unevaluated)return;let y=(g=r===null||r===void 0?void 0:r.validate)===null||g===void 0?void 0:g.evaluated;if(i.props!==!0)if(y&&!y.dynamicProps){if(y.props!==void 0)i.props=di.mergeEvaluated.props(s,y.props,i.props)}else{let w=s.var("props",Ye._`${b}.evaluated.props`);i.props=di.mergeEvaluated.props(s,w,i.props,Ye.Name)}if(i.items!==!0)if(y&&!y.dynamicItems){if(y.items!==void 0)i.items=di.mergeEvaluated.items(s,y.items,i.items)}else{let w=s.var("items",Ye._`${b}.evaluated.items`);i.items=di.mergeEvaluated.items(s,w,i.items,Ye.Name)}}}pA.callRef=Yf;pA.default=_6});var Wg=N(function(hA){Object.defineProperty(hA,"__esModule",{value:!0});var O6=fA(),C6=Qf(),N6=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",O6.default,C6.default];hA.default=N6});var yA=N(function(gA){Object.defineProperty(gA,"__esModule",{value:!0});var mi=$e(),pi=mi.operators,ed={maximum:{okStr:"<=",ok:pi.LTE,fail:pi.GT},minimum:{okStr:">=",ok:pi.GTE,fail:pi.LT},exclusiveMaximum:{okStr:"<",ok:pi.LT,fail:pi.GTE},exclusiveMinimum:{okStr:">",ok:pi.GT,fail:pi.LTE}},I6={message:({keyword:e,schemaCode:t})=>mi.str`must be ${ed[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>mi._`{comparison: ${ed[e].okStr}, limit: ${t}}`},J6={keyword:Object.keys(ed),type:"number",schemaType:"number",$data:!0,error:I6,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data(mi._`${r} ${ed[t].fail} ${n} || isNaN(${r})`)}};gA.default=J6});var xA=N(function(bA){Object.defineProperty(bA,"__esModule",{value:!0});var Wn=$e(),D6={message:({schemaCode:e})=>Wn.str`must be multiple of ${e}`,params:({schemaCode:e})=>Wn._`{multipleOf: ${e}}`},L6={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:D6,code(e){let{gen:t,data:r,schemaCode:n,it:s}=e,i=s.opts.multipleOfPrecision,o=t.let("res"),a=i?Wn._`Math.abs(Math.round(${o}) - ${o}) > 1e-${i}`:Wn._`${o} !== parseInt(${o})`;e.fail$data(Wn._`(${n} === 0 || (${o} = ${r}/${n}, ${a}))`)}};bA.default=L6});var vA=N(function(wA){Object.defineProperty(wA,"__esModule",{value:!0});function $A(e){let t=e.length,r=0,n=0,s;while(n<t)if(r++,s=e.charCodeAt(n++),s>=55296&&s<=56319&&n<t){if(s=e.charCodeAt(n),(s&64512)===56320)n++}return r}wA.default=$A;$A.code='require("ajv/dist/runtime/ucs2length").default'});var PA=N(function(EA){Object.defineProperty(EA,"__esModule",{value:!0});var _r=$e(),SA=Oe(),V6=vA(),W6={message({keyword:e,schemaCode:t}){return _r.str`must NOT have ${e==="maxLength"?"more":"fewer"} than ${t} characters`},params:({schemaCode:e})=>_r._`{limit: ${e}}`},H6={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:W6,code(e){let{keyword:t,data:r,schemaCode:n,it:s}=e,i=t==="maxLength"?_r.operators.GT:_r.operators.LT,o=s.opts.unicode===!1?_r._`${r}.length`:_r._`${SA.useFunc(e.gen,V6.default)}(${r})`;e.fail$data(_r._`${o} ${i} ${n}`)}};EA.default=H6});var AA=N(function(_A){Object.defineProperty(_A,"__esModule",{value:!0});var jA=nn(),kA=Oe(),sn=$e(),U6={message:({schemaCode:e})=>sn.str`must match pattern "${e}"`,params:({schemaCode:e})=>sn._`{pattern: ${e}}`},z6={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:U6,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:i,it:o}=e,a=o.opts.unicodeRegExp?"u":"";if(n){let{regExp:l}=o.opts.code,c=l.code==="new RegExp"?sn._`new RegExp`:kA.useFunc(t,l),u=t.let("valid");t.try(()=>t.assign(u,sn._`${c}(${i}, ${a}).test(${r})`),()=>t.assign(u,!1)),e.fail$data(sn._`!${u}`)}else{let l=jA.usePattern(e,s);e.fail$data(sn._`!${l}.test(${r})`)}}};_A.default=z6});var OA=N(function(RA){Object.defineProperty(RA,"__esModule",{value:!0});var Hn=$e(),K6={message({keyword:e,schemaCode:t}){return Hn.str`must NOT have ${e==="maxProperties"?"more":"fewer"} than ${t} properties`},params:({schemaCode:e})=>Hn._`{limit: ${e}}`},Y6={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:K6,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxProperties"?Hn.operators.GT:Hn.operators.LT;e.fail$data(Hn._`Object.keys(${r}).length ${s} ${n}`)}};RA.default=Y6});var TA=N(function(NA){Object.defineProperty(NA,"__esModule",{value:!0});var Bn=nn(),Un=$e(),CA=Oe(),Z6={message:({params:{missingProperty:e}})=>Un.str`must have required property '${e}'`,params:({params:{missingProperty:e}})=>Un._`{missingProperty: ${e}}`},Q6={keyword:"required",type:"object",schemaType:"array",$data:!0,error:Z6,code(e){let{gen:t,schema:r,schemaCode:n,data:s,$data:i,it:o}=e,{opts:a}=o;if(!i&&r.length===0)return;let l=r.length>=a.loopRequired;if(o.allErrors)c();else u();if(a.strictRequired){let m=e.parentSchema.properties,{definedProperties:b}=e.it;for(let g of r)if((m===null||m===void 0?void 0:m[g])===void 0&&!b.has(g)){let y=o.schemaEnv.baseId+o.errSchemaPath,w=`required property "${g}" is not defined at "${y}" (strictRequired)`;CA.checkStrictMode(o,w,o.opts.strictRequired)}}function c(){if(l||i)e.block$data(Un.nil,p);else for(let m of r)Bn.checkReportMissingProp(e,m)}function u(){let m=t.let("missing");if(l||i){let b=t.let("valid",!0);e.block$data(b,()=>h(m,b)),e.ok(b)}else t.if(Bn.checkMissingProp(e,r,m)),Bn.reportMissingProp(e,m),t.else()}function p(){t.forOf("prop",n,(m)=>{e.setParams({missingProperty:m}),t.if(Bn.noPropertyInData(t,s,m,a.ownProperties),()=>e.error())})}function h(m,b){e.setParams({missingProperty:m}),t.forOf(m,n,()=>{t.assign(b,Bn.propertyInData(t,s,m,a.ownProperties)),t.if(Un.not(b),()=>{e.error(),t.break()})},Un.nil)}}};NA.default=Q6});var JA=N(function(IA){Object.defineProperty(IA,"__esModule",{value:!0});var zn=$e(),tz={message({keyword:e,schemaCode:t}){return zn.str`must NOT have ${e==="maxItems"?"more":"fewer"} than ${t} items`},params:({schemaCode:e})=>zn._`{limit: ${e}}`},rz={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:tz,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxItems"?zn.operators.GT:zn.operators.LT;e.fail$data(zn._`${r}.length ${s} ${n}`)}};IA.default=rz});var td=N(function(DA){Object.defineProperty(DA,"__esModule",{value:!0});var MA=Eg();MA.code='require("ajv/dist/runtime/equal").default';DA.default=MA});var qA=N(function(FA){Object.defineProperty(FA,"__esModule",{value:!0});var _a=Ql(),De=$e(),LA=Oe(),iz=td(),oz={message:({params:{i:e,j:t}})=>De.str`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>De._`{i: ${e}, j: ${t}}`},az={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:oz,code(e){let{gen:t,data:r,$data:n,schema:s,parentSchema:i,schemaCode:o,it:a}=e;if(!n&&!s)return;let l=t.let("valid"),c=i.items?_a.getSchemaTypes(i.items):[];e.block$data(l,u,De._`${o} === false`),e.ok(l);function u(){let b=t.let("i",De._`${r}.length`),g=t.let("j");e.setParams({i:b,j:g}),t.assign(l,!0),t.if(De._`${b} > 1`,()=>(p()?h:m)(b,g))}function p(){return c.length>0&&!c.some((b)=>b==="object"||b==="array")}function h(b,g){let y=t.name("item"),w=_a.checkDataTypes(c,y,a.opts.strictNumbers,_a.DataType.Wrong),P=t.const("indices",De._`{}`);t.for(De._`;${b}--;`,()=>{if(t.let(y,De._`${r}[${b}]`),t.if(w,De._`continue`),c.length>1)t.if(De._`typeof ${y} == "string"`,De._`${y} += "_"`);t.if(De._`typeof ${P}[${y}] == "number"`,()=>{t.assign(g,De._`${P}[${y}]`),e.error(),t.assign(l,!1).break()}).code(De._`${P}[${y}] = ${b}`)})}function m(b,g){let y=LA.useFunc(t,iz.default),w=t.name("outer");t.label(w).for(De._`;${b}--;`,()=>t.for(De._`${g} = ${b}; ${g}--;`,()=>t.if(De._`${y}(${r}[${b}], ${r}[${g}])`,()=>{e.error(),t.assign(l,!1).break(w)})))}}};FA.default=az});var HA=N(function(WA){Object.defineProperty(WA,"__esModule",{value:!0});var Aa=$e(),VA=Oe(),cz=td(),uz={message:"must be equal to constant",params:({schemaCode:e})=>Aa._`{allowedValue: ${e}}`},fz={keyword:"const",$data:!0,error:uz,code(e){let{gen:t,data:r,$data:n,schemaCode:s,schema:i}=e;if(n||i&&typeof i=="object")e.fail$data(Aa._`!${VA.useFunc(t,cz.default)}(${r}, ${s})`);else e.fail(Aa._`${i} !== ${r}`)}};WA.default=fz});var zA=N(function(UA){Object.defineProperty(UA,"__esModule",{value:!0});var Gn=$e(),BA=Oe(),pz=td(),mz={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>Gn._`{allowedValues: ${e}}`},hz={keyword:"enum",schemaType:"array",$data:!0,error:mz,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:i,it:o}=e;if(!n&&s.length===0)throw Error("enum must have non-empty array");let a=s.length>=o.opts.loopEnum,l,c=()=>l!==null&&l!==void 0?l:l=BA.useFunc(t,pz.default),u;if(a||n)u=t.let("valid"),e.block$data(u,p);else{if(!Array.isArray(s))throw Error("ajv implementation error");let m=t.const("vSchema",i);u=Gn.or(...s.map((b,g)=>h(m,g)))}e.pass(u);function p(){t.assign(u,!1),t.forOf("v",i,(m)=>t.if(Gn._`${c()}(${r}, ${m})`,()=>t.assign(u,!0).break()))}function h(m,b){let g=s[b];return typeof g==="object"&&g!==null?Gn._`${c()}(${r}, ${m}[${b}])`:Gn._`${r} === ${g}`}}};UA.default=hz});var Hg=N(function(GA){Object.defineProperty(GA,"__esModule",{value:!0});var yz=yA(),bz=xA(),xz=PA(),$z=AA(),wz=OA(),vz=TA(),Sz=JA(),Ez=qA(),Pz=HA(),jz=zA(),kz=[yz.default,bz.default,xz.default,$z.default,wz.default,vz.default,Sz.default,Ez.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},Pz.default,jz.default];GA.default=kz});var Bg=N(function(YA){Object.defineProperty(YA,"__esModule",{value:!0});YA.validateAdditionalItems=void 0;var Ar=$e(),Ra=Oe(),Az={message:({params:{len:e}})=>Ar.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>Ar._`{limit: ${e}}`},Rz={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Az,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){Ra.checkStrictMode(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}KA(e,n)}};function KA(e,t){let{gen:r,schema:n,data:s,keyword:i,it:o}=e;o.items=!0;let a=r.const("len",Ar._`${s}.length`);if(n===!1)e.setParams({len:t.length}),e.pass(Ar._`${a} <= ${t.length}`);else if(typeof n=="object"&&!Ra.alwaysValidSchema(o,n)){let c=r.var("valid",Ar._`${a} <= ${t.length}`);r.if(Ar.not(c),()=>l(c)),e.ok(c)}function l(c){r.forRange("i",t.length,a,(u)=>{if(e.subschema({keyword:i,dataProp:u,dataPropType:Ra.Type.Num},c),!o.allErrors)r.if(Ar.not(c),()=>r.break())})}}YA.validateAdditionalItems=KA;YA.default=Rz});var Ug=N(function(eR){Object.defineProperty(eR,"__esModule",{value:!0});eR.validateTuple=void 0;var rd=$e(),hi=Oe(),ZA=nn(),Cz={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return QA(e,"additionalItems",t);if(r.items=!0,hi.alwaysValidSchema(r,t))return;e.ok(ZA.validateArray(e))}};function QA(e,t,r=e.schema){let{gen:n,parentSchema:s,data:i,keyword:o,it:a}=e;if(u(s),a.opts.unevaluated&&r.length&&a.items!==!0)a.items=hi.mergeEvaluated.items(n,r.length,a.items);let l=n.name("valid"),c=n.const("len",rd._`${i}.length`);r.forEach((p,h)=>{if(hi.alwaysValidSchema(a,p))return;n.if(rd._`${c} > ${h}`,()=>e.subschema({keyword:o,schemaProp:h,dataProp:h},l)),e.ok(l)});function u(p){let{opts:h,errSchemaPath:m}=a,b=r.length,g=b===p.minItems&&(b===p.maxItems||p[t]===!1);if(h.strictTuples&&!g){let y=`"${o}" is ${b}-tuple, but minItems or maxItems/${t} are not specified or different at path "${m}"`;hi.checkStrictMode(a,y,h.strictTuples)}}}eR.validateTuple=QA;eR.default=Cz});var sR=N(function(nR){Object.defineProperty(nR,"__esModule",{value:!0});var rR=Ug(),Tz={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(e)=>rR.validateTuple(e,"items")};nR.default=Tz});var cR=N(function(lR){Object.defineProperty(lR,"__esModule",{value:!0});var nd=$e(),iR=Oe(),oR=nn(),aR=Bg(),Jz={message:({params:{len:e}})=>nd.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>nd._`{limit: ${e}}`},Mz={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Jz,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:s}=r;if(n.items=!0,iR.alwaysValidSchema(n,t))return;if(s)aR.validateAdditionalItems(e,s);else e.ok(oR.validateArray(e))}};lR.default=Mz});var fR=N(function(uR){Object.defineProperty(uR,"__esModule",{value:!0});var ct=$e(),gi=Oe(),Lz={message:({params:{min:e,max:t}})=>t===void 0?ct.str`must contain at least ${e} valid item(s)`:ct.str`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?ct._`{minContains: ${e}}`:ct._`{minContains: ${e}, maxContains: ${t}}`},Fz={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:Lz,code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:i}=e,o,a,{minContains:l,maxContains:c}=n;if(i.opts.next)o=l===void 0?1:l,a=c;else o=1;let u=t.const("len",ct._`${s}.length`);if(e.setParams({min:o,max:a}),a===void 0&&o===0){gi.checkStrictMode(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&o>a){gi.checkStrictMode(i,'"minContains" > "maxContains" is always invalid'),e.fail();return}if(gi.alwaysValidSchema(i,r)){let g=ct._`${u} >= ${o}`;if(a!==void 0)g=ct._`${g} && ${u} <= ${a}`;e.pass(g);return}i.items=!0;let p=t.name("valid");if(a===void 0&&o===1)m(p,()=>t.if(p,()=>t.break()));else if(o===0){if(t.let(p,!0),a!==void 0)t.if(ct._`${s}.length > 0`,h)}else t.let(p,!1),h();e.result(p,()=>e.reset());function h(){let g=t.name("_valid"),y=t.let("count",0);m(g,()=>t.if(g,()=>b(y)))}function m(g,y){t.forRange("i",0,u,(w)=>{e.subschema({keyword:"contains",dataProp:w,dataPropType:gi.Type.Num,compositeRule:!0},g),y()})}function b(g){if(t.code(ct._`${g}++`),a===void 0)t.if(ct._`${g} >= ${o}`,()=>t.assign(p,!0).break());else if(t.if(ct._`${g} > ${a}`,()=>t.assign(p,!1).break()),o===1)t.assign(p,!0);else t.if(ct._`${g} >= ${o}`,()=>t.assign(p,!0))}}};uR.default=Fz});var sd=N(function(hR){Object.defineProperty(hR,"__esModule",{value:!0});hR.validateSchemaDeps=hR.validatePropertyDeps=hR.error=void 0;var Oa=$e(),dR=Oe(),Kn=nn();hR.error={message:({params:{property:e,depsCount:t,deps:r}})=>Oa.str`must have ${t===1?"property":"properties"} ${r} when property ${e} is present`,params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>Oa._`{property: ${e},
|
|
610
|
+
|| ${o} === "boolean" || ${s} === null`).assign(a,z._`[${s}]`)}}}function MB({gen:e,parentData:t,parentDataProperty:r},n){e.if(z._`${t} !== undefined`,()=>e.assign(z._`${t}[${r}]`,n))}function Pg(e,t,r,n=va.Correct){let s=n===va.Correct?z.operators.EQ:z.operators.NEQ,i;switch(e){case"null":return z._`${t} ${s} null`;case"array":i=z._`Array.isArray(${t})`;break;case"object":i=z._`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":i=o(z._`!(${t} % 1) && !isNaN(${t})`);break;case"number":i=o();break;default:return z._`typeof ${t} ${s} ${e}`}return n===va.Correct?i:z.not(i);function o(a=z.nil){return z.and(z._`typeof ${t} == "number"`,a,r?z._`isFinite(${t})`:z.nil)}}Ik.checkDataType=Pg;function kg(e,t,r,n){if(e.length===1)return Pg(e[0],t,r,n);let s,i=Wf.toHash(e);if(i.array&&i.object){let o=z._`typeof ${t} != "object"`;s=i.null?o:z._`!${t} || ${o}`,delete i.null,delete i.array,delete i.object}else s=z.nil;if(i.number)delete i.integer;for(let o in i)s=z.and(s,Pg(o,t,r,n));return s}Ik.checkDataTypes=kg;var DB={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>typeof e=="string"?z._`{type: ${e}}`:z._`{type: ${t}}`};function _g(e){let t=LB(e);Nk.reportError(t,DB)}Ik.reportTypeError=_g;function LB(e){let{gen:t,data:r,schema:n}=e,s=Wf.schemaRefOrVal(e,n,"type");return{gen:t,keyword:"type",data:r,schema:n.type,schemaCode:s,schemaValue:s,parentSchema:n,params:{},it:e}}});var qk=C(function(Lk){Object.defineProperty(Lk,"__esModule",{value:!0});Lk.assignDefaults=void 0;var sn=we(),Dk=Oe();function UB(e,t){let{properties:r,items:n}=e.schema;if(t==="object"&&r)for(let s in r)Mk(e,s,r[s].default);else if(t==="array"&&Array.isArray(n))n.forEach((s,i)=>Mk(e,i,s.default))}Lk.assignDefaults=UB;function Mk(e,t,r){let{gen:n,compositeRule:s,data:i,opts:o}=e;if(r===void 0)return;let a=sn._`${i}${sn.getProperty(t)}`;if(s){Dk.checkStrictMode(e,`default is ignored for: ${a}`);return}let l=sn._`${a} === undefined`;if(o.useDefaults==="empty")l=sn._`${l} || ${a} === null || ${a} === ""`;n.if(l,sn._`${a} = ${sn.stringify(r)}`)}});var on=C(function(Bk){Object.defineProperty(Bk,"__esModule",{value:!0});Bk.validateUnion=Bk.validateArray=Bk.usePattern=Bk.callValidateCode=Bk.schemaProperties=Bk.allSchemaProperties=Bk.noPropertyInData=Bk.propertyInData=Bk.isOwnProperty=Bk.hasPropFunc=Bk.reportMissingProp=Bk.checkMissingProp=Bk.checkReportMissingProp=void 0;var he=we(),Sa=Oe(),fi=nn(),Vk=Oe();function zB(e,t){let{gen:r,data:n,it:s}=e;r.if(Rg(r,n,t,s.opts.ownProperties),()=>{e.setParams({missingProperty:he._`${t}`},!0),e.error()})}Bk.checkReportMissingProp=zB;function GB({gen:e,data:t,it:{opts:r}},n,s){return he.or(...n.map((i)=>he.and(Rg(e,t,i,r.ownProperties),he._`${s} = ${i}`)))}Bk.checkMissingProp=GB;function KB(e,t){e.setParams({missingProperty:t},!0),e.error()}Bk.reportMissingProp=KB;function Wk(e){return e.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:he._`Object.prototype.hasOwnProperty`})}Bk.hasPropFunc=Wk;function Ag(e,t,r){return he._`${Wk(e)}.call(${t}, ${r})`}Bk.isOwnProperty=Ag;function YB(e,t,r,n){let s=he._`${t}${he.getProperty(r)} !== undefined`;return n?he._`${s} && ${Ag(e,t,r)}`:s}Bk.propertyInData=YB;function Rg(e,t,r,n){let s=he._`${t}${he.getProperty(r)} === undefined`;return n?he.or(s,he.not(Ag(e,t,r))):s}Bk.noPropertyInData=Rg;function Hk(e){return e?Object.keys(e).filter((t)=>t!=="__proto__"):[]}Bk.allSchemaProperties=Hk;function XB(e,t){return Hk(t).filter((r)=>!Sa.alwaysValidSchema(e,t[r]))}Bk.schemaProperties=XB;function ZB({schemaCode:e,data:t,it:{gen:r,topSchemaRef:n,schemaPath:s,errorPath:i},it:o},a,l,c){let u=c?he._`${e}, ${t}, ${n}${s}`:t,p=[[fi.default.instancePath,he.strConcat(fi.default.instancePath,i)],[fi.default.parentData,o.parentData],[fi.default.parentDataProperty,o.parentDataProperty],[fi.default.rootData,fi.default.rootData]];if(o.opts.dynamicRef)p.push([fi.default.dynamicAnchors,fi.default.dynamicAnchors]);let h=he._`${u}, ${r.object(...p)}`;return l!==he.nil?he._`${a}.call(${l}, ${h})`:he._`${a}(${h})`}Bk.callValidateCode=ZB;var QB=he._`new RegExp`;function eU({gen:e,it:{opts:t}},r){let n=t.unicodeRegExp?"u":"",{regExp:s}=t.code,i=s(r,n);return e.scopeValue("pattern",{key:i.toString(),ref:i,code:he._`${s.code==="new RegExp"?QB:Vk.useFunc(e,s)}(${r}, ${n})`})}Bk.usePattern=eU;function tU(e){let{gen:t,data:r,keyword:n,it:s}=e,i=t.name("valid");if(s.allErrors){let a=t.let("valid",!0);return o(()=>t.assign(a,!1)),a}return t.var(i,!0),o(()=>t.break()),i;function o(a){let l=t.const("len",he._`${r}.length`);t.forRange("i",0,l,(c)=>{e.subschema({keyword:n,dataProp:c,dataPropType:Sa.Type.Num},i),t.if(he.not(i),a)})}}Bk.validateArray=tU;function rU(e){let{gen:t,schema:r,keyword:n,it:s}=e;if(!Array.isArray(r))throw Error("ajv implementation error");if(r.some((l)=>Sa.alwaysValidSchema(s,l))&&!s.opts.unevaluated)return;let o=t.let("valid",!1),a=t.name("_valid");t.block(()=>r.forEach((l,c)=>{let u=e.subschema({keyword:n,schemaProp:c,compositeRule:!0},a);if(t.assign(o,he._`${o} || ${a}`),!e.mergeValidEvaluated(u,a))t.if(he.not(o))})),e.result(o,()=>e.reset(),()=>e.error(!0))}Bk.validateUnion=rU});var Qk=C(function(Xk){Object.defineProperty(Xk,"__esModule",{value:!0});Xk.validateKeywordUsage=Xk.validSchemaType=Xk.funcKeywordCode=Xk.macroKeywordCode=void 0;var Ue=we(),uo=nn(),Gk=on(),Kk=sc();function hU(e,t){let{gen:r,keyword:n,schema:s,parentSchema:i,it:o}=e,a=t.macro.call(o.self,s,i,o),l=Yk(r,n,a);if(o.opts.validateSchema!==!1)o.self.validateSchema(a,!0);let c=r.name("valid");e.subschema({schema:a,schemaPath:Ue.nil,errSchemaPath:`${o.errSchemaPath}/${n}`,topSchemaRef:l,compositeRule:!0},c),e.pass(c,()=>e.error(!0))}Xk.macroKeywordCode=hU;function gU(e,t){var r;let{gen:n,keyword:s,schema:i,parentSchema:o,$data:a,it:l}=e;bU(l,t);let c=!a&&t.compile?t.compile.call(l.self,i,o,l):t.validate,u=Yk(n,s,c),p=n.let("valid");e.block$data(p,h),e.ok((r=t.valid)!==null&&r!==void 0?r:p);function h(){if(t.errors===!1){if(g(),t.modifying)zk(e);y(()=>e.error())}else{let w=t.async?m():b();if(t.modifying)zk(e);y(()=>yU(e,w))}}function m(){let w=n.let("ruleErrs",null);return n.try(()=>g(Ue._`await `),(j)=>n.assign(p,!1).if(Ue._`${j} instanceof ${l.ValidationError}`,()=>n.assign(w,Ue._`${j}.errors`),()=>n.throw(j))),w}function b(){let w=Ue._`${u}.errors`;return n.assign(w,null),g(Ue.nil),w}function g(w=t.async?Ue._`await `:Ue.nil){let j=l.opts.passContext?uo.default.this:uo.default.self,S=!(("compile"in t)&&!a||t.schema===!1);n.assign(p,Ue._`${w}${Gk.callValidateCode(e,u,j,S)}`,t.modifying)}function y(w){var j;n.if(Ue.not((j=t.valid)!==null&&j!==void 0?j:p),w)}}Xk.funcKeywordCode=gU;function zk(e){let{gen:t,data:r,it:n}=e;t.if(n.parentData,()=>t.assign(r,Ue._`${n.parentData}[${n.parentDataProperty}]`))}function yU(e,t){let{gen:r}=e;r.if(Ue._`Array.isArray(${t})`,()=>{r.assign(uo.default.vErrors,Ue._`${uo.default.vErrors} === null ? ${t} : ${uo.default.vErrors}.concat(${t})`).assign(uo.default.errors,Ue._`${uo.default.vErrors}.length`),Kk.extendErrors(e)},()=>e.error())}function bU({schemaEnv:e},t){if(t.async&&!e.$async)throw Error("async keyword in sync schema")}function Yk(e,t,r){if(r===void 0)throw Error(`keyword "${t}" failed to compile`);return e.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:Ue.stringify(r)})}function xU(e,t,r=!1){return!t.length||t.some((n)=>n==="array"?Array.isArray(e):n==="object"?e&&typeof e=="object"&&!Array.isArray(e):typeof e==n||r&&typeof e>"u")}Xk.validSchemaType=xU;function $U({schema:e,opts:t,self:r,errSchemaPath:n},s,i){if(Array.isArray(s.keyword)?!s.keyword.includes(i):s.keyword!==i)throw Error("ajv implementation error");let o=s.dependencies;if(o===null||o===void 0?void 0:o.some((a)=>!Object.prototype.hasOwnProperty.call(e,a)))throw Error(`parent schema must have dependencies of ${i}: ${o.join(",")}`);if(s.validateSchema){if(!s.validateSchema(e[i])){let l=`keyword "${i}" value is invalid at path "${n}": `+r.errorsText(s.validateSchema.errors);if(t.validateSchema==="log")r.logger.error(l);else throw Error(l)}}}Xk.validateKeywordUsage=$U});var r_=C(function(e_){Object.defineProperty(e_,"__esModule",{value:!0});e_.extendSubschemaMode=e_.extendSubschemaData=e_.getSubschema=void 0;var Rt=we(),Hf=Oe();function EU(e,{keyword:t,schemaProp:r,schema:n,schemaPath:s,errSchemaPath:i,topSchemaRef:o}){if(t!==void 0&&n!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(t!==void 0){let a=e.schema[t];return r===void 0?{schema:a,schemaPath:Rt._`${e.schemaPath}${Rt.getProperty(t)}`,errSchemaPath:`${e.errSchemaPath}/${t}`}:{schema:a[r],schemaPath:Rt._`${e.schemaPath}${Rt.getProperty(t)}${Rt.getProperty(r)}`,errSchemaPath:`${e.errSchemaPath}/${t}/${Hf.escapeFragment(r)}`}}if(n!==void 0){if(s===void 0||i===void 0||o===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:s,topSchemaRef:o,errSchemaPath:i}}throw Error('either "keyword" or "schema" must be passed')}e_.getSubschema=EU;function jU(e,t,{dataProp:r,dataPropType:n,data:s,dataTypes:i,propertyName:o}){if(s!==void 0&&r!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=t;if(r!==void 0){let{errorPath:c,dataPathArr:u,opts:p}=t,h=a.let("data",Rt._`${t.data}${Rt.getProperty(r)}`,!0);l(h),e.errorPath=Rt.str`${c}${Hf.getErrorPath(r,n,p.jsPropertySyntax)}`,e.parentDataProperty=Rt._`${r}`,e.dataPathArr=[...u,e.parentDataProperty]}if(s!==void 0){let c=s instanceof Rt.Name?s:a.let("data",s,!0);if(l(c),o!==void 0)e.propertyName=o}if(i)e.dataTypes=i;function l(c){e.data=c,e.dataLevel=t.dataLevel+1,e.dataTypes=[],t.definedProperties=new Set,e.parentData=t.data,e.dataNames=[...t.dataNames,c]}}e_.extendSubschemaData=jU;function PU(e,{jtdDiscriminator:t,jtdMetadata:r,compositeRule:n,createErrors:s,allErrors:i}){if(n!==void 0)e.compositeRule=n;if(s!==void 0)e.createErrors=s;if(i!==void 0)e.allErrors=i;e.jtdDiscriminator=t,e.jtdMetadata=r}e_.extendSubschemaMode=PU});var Og=C(function(tae,n_){n_.exports=function e(t,r){if(t===r)return!0;if(t&&r&&typeof t=="object"&&typeof r=="object"){if(t.constructor!==r.constructor)return!1;var n,s,i;if(Array.isArray(t)){if(n=t.length,n!=r.length)return!1;for(s=n;s--!==0;)if(!e(t[s],r[s]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if(i=Object.keys(t),n=i.length,n!==Object.keys(r).length)return!1;for(s=n;s--!==0;)if(!Object.prototype.hasOwnProperty.call(r,i[s]))return!1;for(s=n;s--!==0;){var o=i[s];if(!e(t[o],r[o]))return!1}return!0}return t!==t&&r!==r}});var i_=C(function(rae,s_){var di=s_.exports=function(e,t,r){if(typeof t=="function")r=t,t={};r=t.cb||r;var n=typeof r=="function"?r:r.pre||function(){},s=r.post||function(){};Bf(t,n,s,e,"",e)};di.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};di.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};di.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};di.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Bf(e,t,r,n,s,i,o,a,l,c){if(n&&typeof n=="object"&&!Array.isArray(n)){t(n,s,i,o,a,l,c);for(var u in n){var p=n[u];if(Array.isArray(p)){if(u in di.arrayKeywords)for(var h=0;h<p.length;h++)Bf(e,t,r,p[h],s+"/"+u+"/"+h,i,s,u,n,h)}else if(u in di.propsKeywords){if(p&&typeof p=="object")for(var m in p)Bf(e,t,r,p[m],s+"/"+u+"/"+AU(m),i,s,u,n,m)}else if(u in di.keywords||e.allKeys&&!(u in di.skipKeywords))Bf(e,t,r,p,s+"/"+u,i,s,u,n)}r(n,s,i,o,a,l,c)}}function AU(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}});var oc=C(function(u_){Object.defineProperty(u_,"__esModule",{value:!0});u_.getSchemaRefs=u_.resolveUrl=u_.normalizeId=u_._getFullPath=u_.getFullPath=u_.inlineRef=void 0;var o_=Oe(),RU=Og(),OU=i_(),NU=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function CU(e,t=!0){if(typeof e=="boolean")return!0;if(t===!0)return!Ng(e);if(!t)return!1;return a_(e)<=t}u_.inlineRef=CU;var TU=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Ng(e){for(let t in e){if(TU.has(t))return!0;let r=e[t];if(Array.isArray(r)&&r.some(Ng))return!0;if(typeof r=="object"&&Ng(r))return!0}return!1}function a_(e){let t=0;for(let r in e){if(r==="$ref")return 1/0;if(t++,NU.has(r))continue;if(typeof e[r]=="object")o_.eachItem(e[r],(n)=>t+=a_(n));if(t===1/0)return 1/0}return t}function l_(e,t="",r){if(r!==!1)t=Ea(t);let n=e.parse(t);return c_(e,n)}u_.getFullPath=l_;function c_(e,t){return e.serialize(t).split("#")[0]+"#"}u_._getFullPath=c_;var IU=/#\/?$/;function Ea(e){return e?e.replace(IU,""):""}u_.normalizeId=Ea;function JU(e,t,r){return r=Ea(r),e.resolve(t,r)}u_.resolveUrl=JU;var MU=/^[a-z_][-a-z0-9._]*$/i;function DU(e,t){if(typeof e=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,s=Ea(e[r]||t),i={"":s},o=l_(n,s,!1),a={},l=new Set;return OU(e,{allKeys:!0},(p,h,m,b)=>{if(b===void 0)return;let g=o+h,y=i[b];if(typeof p[r]=="string")y=w.call(this,p[r]);j.call(this,p.$anchor),j.call(this,p.$dynamicAnchor),i[h]=y;function w(S){let E=this.opts.uriResolver.resolve;if(S=Ea(y?E(y,S):S),l.has(S))throw u(S);l.add(S);let k=this.refs[S];if(typeof k=="string")k=this.refs[k];if(typeof k=="object")c(p,k.schema,S);else if(S!==Ea(g))if(S[0]==="#")c(p,a[S],S),a[S]=p;else this.refs[S]=g;return S}function j(S){if(typeof S=="string"){if(!MU.test(S))throw Error(`invalid anchor "${S}"`);w.call(this,`#${S}`)}}}),a;function c(p,h,m){if(h!==void 0&&!RU(p,h))throw u(m)}function u(p){return Error(`reference "${p}" resolves to more than one schema`)}}u_.getSchemaRefs=DU});var ka=C(function(P_){Object.defineProperty(P_,"__esModule",{value:!0});P_.getData=P_.KeywordCxt=P_.validateFunctionCode=void 0;var zf=Sk(),Uf=ic(),Pa=jg(),pi=ic(),h_=qk(),Fn=Qk(),ja=r_(),q=we(),xe=nn(),g_=oc(),qt=Oe(),Ln=sc();function HU(e){if(x_(e)){if($_(e),b_(e)){zU(e);return}}y_(e,()=>zf.topBoolOrEmptySchema(e))}P_.validateFunctionCode=HU;function y_({gen:e,validateName:t,schema:r,schemaEnv:n,opts:s},i){if(s.code.es5)e.func(t,q._`${xe.default.data}, ${xe.default.valCxt}`,n.$async,()=>{e.code(q._`"use strict"; ${d_(r,s)}`),UU(e,s),e.code(i)});else e.func(t,q._`${xe.default.data}, ${BU(s)}`,n.$async,()=>e.code(d_(r,s)).code(i))}function BU(e){return q._`{${xe.default.instancePath}="", ${xe.default.parentData}, ${xe.default.parentDataProperty}, ${xe.default.rootData}=${xe.default.data}${e.dynamicRef?q._`, ${xe.default.dynamicAnchors}={}`:q.nil}}={}`}function UU(e,t){e.if(xe.default.valCxt,()=>{if(e.var(xe.default.instancePath,q._`${xe.default.valCxt}.${xe.default.instancePath}`),e.var(xe.default.parentData,q._`${xe.default.valCxt}.${xe.default.parentData}`),e.var(xe.default.parentDataProperty,q._`${xe.default.valCxt}.${xe.default.parentDataProperty}`),e.var(xe.default.rootData,q._`${xe.default.valCxt}.${xe.default.rootData}`),t.dynamicRef)e.var(xe.default.dynamicAnchors,q._`${xe.default.valCxt}.${xe.default.dynamicAnchors}`)},()=>{if(e.var(xe.default.instancePath,q._`""`),e.var(xe.default.parentData,q._`undefined`),e.var(xe.default.parentDataProperty,q._`undefined`),e.var(xe.default.rootData,xe.default.data),t.dynamicRef)e.var(xe.default.dynamicAnchors,q._`{}`)})}function zU(e){let{schema:t,opts:r,gen:n}=e;y_(e,()=>{if(r.$comment&&t.$comment)v_(e);if(ZU(e),n.let(xe.default.vErrors,null),n.let(xe.default.errors,0),r.unevaluated)GU(e);w_(e),t4(e)});return}function GU(e){let{gen:t,validateName:r}=e;e.evaluated=t.const("evaluated",q._`${r}.evaluated`),t.if(q._`${e.evaluated}.dynamicProps`,()=>t.assign(q._`${e.evaluated}.props`,q._`undefined`)),t.if(q._`${e.evaluated}.dynamicItems`,()=>t.assign(q._`${e.evaluated}.items`,q._`undefined`))}function d_(e,t){let r=typeof e=="object"&&e[t.schemaId];return r&&(t.code.source||t.code.process)?q._`/*# sourceURL=${r} */`:q.nil}function KU(e,t){if(x_(e)){if($_(e),b_(e)){YU(e,t);return}}zf.boolOrEmptySchema(e,t)}function b_({schema:e,self:t}){if(typeof e=="boolean")return!e;for(let r in e)if(t.RULES.all[r])return!0;return!1}function x_(e){return typeof e.schema!="boolean"}function YU(e,t){let{schema:r,gen:n,opts:s}=e;if(s.$comment&&r.$comment)v_(e);QU(e),e4(e);let i=n.const("_errs",xe.default.errors);w_(e,i),n.var(t,q._`${i} === ${xe.default.errors}`)}function $_(e){qt.checkUnknownRules(e),XU(e)}function w_(e,t){if(e.opts.jtd)return p_(e,[],!1,t);let r=Uf.getSchemaTypes(e.schema),n=Uf.coerceAndCheckDataType(e,r);p_(e,r,!n,t)}function XU(e){let{schema:t,errSchemaPath:r,opts:n,self:s}=e;if(t.$ref&&n.ignoreKeywordsWithRef&&qt.schemaHasRulesButRef(t,s.RULES))s.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function ZU(e){let{schema:t,opts:r}=e;if(t.default!==void 0&&r.useDefaults&&r.strictSchema)qt.checkStrictMode(e,"default is ignored in the schema root")}function QU(e){let t=e.schema[e.opts.schemaId];if(t)e.baseId=g_.resolveUrl(e.opts.uriResolver,e.baseId,t)}function e4(e){if(e.schema.$async&&!e.schemaEnv.$async)throw Error("async schema in sync schema")}function v_({gen:e,schemaEnv:t,schema:r,errSchemaPath:n,opts:s}){let i=r.$comment;if(s.$comment===!0)e.code(q._`${xe.default.self}.logger.log(${i})`);else if(typeof s.$comment=="function"){let o=q.str`${n}/$comment`,a=e.scopeValue("root",{ref:t.root});e.code(q._`${xe.default.self}.opts.$comment(${i}, ${o}, ${a}.schema)`)}}function t4(e){let{gen:t,schemaEnv:r,validateName:n,ValidationError:s,opts:i}=e;if(r.$async)t.if(q._`${xe.default.errors} === 0`,()=>t.return(xe.default.data),()=>t.throw(q._`new ${s}(${xe.default.vErrors})`));else{if(t.assign(q._`${n}.errors`,xe.default.vErrors),i.unevaluated)r4(e);t.return(q._`${xe.default.errors} === 0`)}}function r4({gen:e,evaluated:t,props:r,items:n}){if(r instanceof q.Name)e.assign(q._`${t}.props`,r);if(n instanceof q.Name)e.assign(q._`${t}.items`,n)}function p_(e,t,r,n){let{gen:s,schema:i,data:o,allErrors:a,opts:l,self:c}=e,{RULES:u}=c;if(i.$ref&&(l.ignoreKeywordsWithRef||!qt.schemaHasRulesButRef(i,u))){s.block(()=>E_(e,"$ref",u.all.$ref.definition));return}if(!l.jtd)n4(e,t);s.block(()=>{for(let h of u.rules)p(h);p(u.post)});function p(h){if(!Pa.shouldUseGroup(i,h))return;if(h.type){if(s.if(pi.checkDataType(h.type,o,l.strictNumbers)),m_(e,h),t.length===1&&t[0]===h.type&&r)s.else(),pi.reportTypeError(e);s.endIf()}else m_(e,h);if(!a)s.if(q._`${xe.default.errors} === ${n||0}`)}}function m_(e,t){let{gen:r,schema:n,opts:{useDefaults:s}}=e;if(s)h_.assignDefaults(e,t.type);r.block(()=>{for(let i of t.rules)if(Pa.shouldUseRule(n,i))E_(e,i.keyword,i.definition,t.type)})}function n4(e,t){if(e.schemaEnv.meta||!e.opts.strictTypes)return;if(s4(e,t),!e.opts.allowUnionTypes)i4(e,t);o4(e,e.dataTypes)}function s4(e,t){if(!t.length)return;if(!e.dataTypes.length){e.dataTypes=t;return}t.forEach((r)=>{if(!S_(e.dataTypes,r))Cg(e,`type "${r}" not allowed by context "${e.dataTypes.join(",")}"`)}),l4(e,t)}function i4(e,t){if(t.length>1&&!(t.length===2&&t.includes("null")))Cg(e,"use allowUnionTypes to allow union type keyword")}function o4(e,t){let r=e.self.RULES.all;for(let n in r){let s=r[n];if(typeof s=="object"&&Pa.shouldUseRule(e.schema,s)){let{type:i}=s.definition;if(i.length&&!i.some((o)=>a4(t,o)))Cg(e,`missing type "${i.join(",")}" for keyword "${n}"`)}}}function a4(e,t){return e.includes(t)||t==="number"&&e.includes("integer")}function S_(e,t){return e.includes(t)||t==="integer"&&e.includes("number")}function l4(e,t){let r=[];for(let n of e.dataTypes)if(S_(t,n))r.push(n);else if(t.includes("integer")&&n==="number")r.push("integer");e.dataTypes=r}function Cg(e,t){let r=e.schemaEnv.baseId+e.errSchemaPath;t+=` at "${r}" (strictTypes)`,qt.checkStrictMode(e,t,e.opts.strictTypes)}class Tg{constructor(e,t,r){if(Fn.validateKeywordUsage(e,t,r),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=r,this.data=e.data,this.schema=e.schema[r],this.$data=t.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=qt.schemaRefOrVal(e,this.schema,r,this.$data),this.schemaType=t.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=t,this.$data)this.schemaCode=e.gen.const("vSchema",j_(this.$data,e));else if(this.schemaCode=this.schemaValue,!Fn.validSchemaType(this.schema,t.schemaType,t.allowUndefined))throw Error(`${r} value must be ${JSON.stringify(t.schemaType)}`);if("code"in t?t.trackErrors:t.errors!==!1)this.errsCount=e.gen.const("_errs",xe.default.errors)}result(e,t,r){this.failResult(q.not(e),t,r)}failResult(e,t,r){if(this.gen.if(e),r)r();else this.error();if(t){if(this.gen.else(),t(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(e,t){this.failResult(q.not(e),void 0,t)}fail(e){if(e===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(e),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:t}=this;this.fail(q._`${t} !== undefined && (${q.or(this.invalid$data(),e)})`)}error(e,t,r){if(t){this.setParams(t),this._error(e,r),this.setParams({});return}this._error(e,r)}_error(e,t){(e?Ln.reportExtraError:Ln.reportError)(this,this.def.error,t)}$dataError(){Ln.reportError(this,this.def.$dataError||Ln.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');Ln.resetErrorsCount(this.gen,this.errsCount)}ok(e){if(!this.allErrors)this.gen.if(e)}setParams(e,t){if(t)Object.assign(this.params,e);else this.params=e}block$data(e,t,r=q.nil){this.gen.block(()=>{this.check$data(e,r),t()})}check$data(e=q.nil,t=q.nil){if(!this.$data)return;let{gen:r,schemaCode:n,schemaType:s,def:i}=this;if(r.if(q.or(q._`${n} === undefined`,t)),e!==q.nil)r.assign(e,!0);if(s.length||i.validateSchema){if(r.elseIf(this.invalid$data()),this.$dataError(),e!==q.nil)r.assign(e,!1)}r.else()}invalid$data(){let{gen:e,schemaCode:t,schemaType:r,def:n,it:s}=this;return q.or(i(),o());function i(){if(r.length){if(!(t instanceof q.Name))throw Error("ajv implementation error");let a=Array.isArray(r)?r:[r];return q._`${pi.checkDataTypes(a,t,s.opts.strictNumbers,pi.DataType.Wrong)}`}return q.nil}function o(){if(n.validateSchema){let a=e.scopeValue("validate$data",{ref:n.validateSchema});return q._`!${a}(${t})`}return q.nil}}subschema(e,t){let r=ja.getSubschema(this.it,e);ja.extendSubschemaData(r,this.it,e),ja.extendSubschemaMode(r,e);let n={...this.it,...r,items:void 0,props:void 0};return KU(n,t),n}mergeEvaluated(e,t){let{it:r,gen:n}=this;if(!r.opts.unevaluated)return;if(r.props!==!0&&e.props!==void 0)r.props=qt.mergeEvaluated.props(n,e.props,r.props,t);if(r.items!==!0&&e.items!==void 0)r.items=qt.mergeEvaluated.items(n,e.items,r.items,t)}mergeValidEvaluated(e,t){let{it:r,gen:n}=this;if(r.opts.unevaluated&&(r.props!==!0||r.items!==!0))return n.if(t,()=>this.mergeEvaluated(e,q.Name)),!0}}P_.KeywordCxt=Tg;function E_(e,t,r,n){let s=new Tg(e,r,t);if("code"in r)r.code(s,n);else if(s.$data&&r.validate)Fn.funcKeywordCode(s,r);else if("macro"in r)Fn.macroKeywordCode(s,r);else if(r.compile||r.validate)Fn.funcKeywordCode(s,r)}var c4=/^\/(?:[^~]|~0|~1)*$/,u4=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function j_(e,{dataLevel:t,dataNames:r,dataPathArr:n}){let s,i;if(e==="")return xe.default.rootData;if(e[0]==="/"){if(!c4.test(e))throw Error(`Invalid JSON-pointer: ${e}`);s=e,i=xe.default.rootData}else{let c=u4.exec(e);if(!c)throw Error(`Invalid JSON-pointer: ${e}`);let u=+c[1];if(s=c[2],s==="#"){if(u>=t)throw Error(l("property/index",u));return n[t-u]}if(u>t)throw Error(l("data",u));if(i=r[t-u],!s)return i}let o=i,a=s.split("/");for(let c of a)if(c)i=q._`${i}${q.getProperty(qt.unescapeJsonPointer(c))}`,o=q._`${o} && ${i}`;return o;function l(c,u){return`Cannot access ${c} ${u} levels up, current level is ${t}`}}P_.getData=j_});var ac=C(function(A_){Object.defineProperty(A_,"__esModule",{value:!0});class __ extends Error{constructor(e){super("validation failed");this.errors=e,this.ajv=this.validation=!0}}A_.default=__});var Aa=C(function(O_){Object.defineProperty(O_,"__esModule",{value:!0});var _a=oc();class R_ extends Error{constructor(e,t,r,n){super(n||`can't resolve reference ${r} from id ${t}`);this.missingRef=_a.resolveUrl(e,t,r),this.missingSchema=_a.normalizeId(_a.getFullPath(e,this.missingRef))}}O_.default=R_});var cc=C(function(T_){Object.defineProperty(T_,"__esModule",{value:!0});T_.resolveSchema=T_.getCompilingSchema=T_.resolveRef=T_.compileSchema=T_.SchemaEnv=void 0;var gt=we(),h4=ac(),fo=nn(),yt=oc(),Gf=Oe(),N_=ka();class lc{constructor(e){var t;this.refs={},this.dynamicAnchors={};let r;if(typeof e.schema=="object")r=e.schema;this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(t=e.baseId)!==null&&t!==void 0?t:yt.normalizeId(r===null||r===void 0?void 0:r[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=r===null||r===void 0?void 0:r.$async,this.refs={}}}T_.SchemaEnv=lc;function Jg(e){let t=C_.call(this,e);if(t)return t;let r=yt.getFullPath(this.opts.uriResolver,e.root.baseId),{es5:n,lines:s}=this.opts.code,{ownProperties:i}=this.opts,o=new gt.CodeGen(this.scope,{es5:n,lines:s,ownProperties:i}),a;if(e.$async)a=o.scopeValue("Error",{ref:h4.default,code:gt._`require("ajv/dist/runtime/validation_error").default`});let l=o.scopeName("validate");e.validateName=l;let c={gen:o,allErrors:this.opts.allErrors,data:fo.default.data,parentData:fo.default.parentData,parentDataProperty:fo.default.parentDataProperty,dataNames:[fo.default.data],dataPathArr:[gt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:o.scopeValue("schema",this.opts.code.source===!0?{ref:e.schema,code:gt.stringify(e.schema)}:{ref:e.schema}),validateName:l,ValidationError:a,schema:e.schema,schemaEnv:e,rootId:r,baseId:e.baseId||r,schemaPath:gt.nil,errSchemaPath:e.schemaPath||(this.opts.jtd?"":"#"),errorPath:gt._`""`,opts:this.opts,self:this},u;try{this._compilations.add(e),N_.validateFunctionCode(c),o.optimize(this.opts.code.optimize);let p=o.toString();if(u=`${o.scopeRefs(fo.default.scope)}return ${p}`,this.opts.code.process)u=this.opts.code.process(u,e);let m=Function(`${fo.default.self}`,`${fo.default.scope}`,u)(this,this.scope.get());if(this.scope.value(l,{ref:m}),m.errors=null,m.schema=e.schema,m.schemaEnv=e,e.$async)m.$async=!0;if(this.opts.code.source===!0)m.source={validateName:l,validateCode:p,scopeValues:o._values};if(this.opts.unevaluated){let{props:b,items:g}=c;if(m.evaluated={props:b instanceof gt.Name?void 0:b,items:g instanceof gt.Name?void 0:g,dynamicProps:b instanceof gt.Name,dynamicItems:g instanceof gt.Name},m.source)m.source.evaluated=gt.stringify(m.evaluated)}return e.validate=m,e}catch(p){if(delete e.validate,delete e.validateName,u)this.logger.error("Error compiling schema, function code:",u);throw p}finally{this._compilations.delete(e)}}T_.compileSchema=Jg;function g4(e,t,r){var n;r=yt.resolveUrl(this.opts.uriResolver,t,r);let s=e.refs[r];if(s)return s;let i=x4.call(this,e,r);if(i===void 0){let o=(n=e.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;if(o)i=new lc({schema:o,schemaId:a,root:e,baseId:t})}if(i===void 0)return;return e.refs[r]=y4.call(this,i)}T_.resolveRef=g4;function y4(e){if(yt.inlineRef(e.schema,this.opts.inlineRefs))return e.schema;return e.validate?e:Jg.call(this,e)}function C_(e){for(let t of this._compilations)if(b4(t,e))return t}T_.getCompilingSchema=C_;function b4(e,t){return e.schema===t.schema&&e.root===t.root&&e.baseId===t.baseId}function x4(e,t){let r;while(typeof(r=this.refs[t])=="string")t=r;return r||this.schemas[t]||Kf.call(this,e,t)}function Kf(e,t){let r=this.opts.uriResolver.parse(t),n=yt._getFullPath(this.opts.uriResolver,r),s=yt.getFullPath(this.opts.uriResolver,e.baseId,void 0);if(Object.keys(e.schema).length>0&&n===s)return Ig.call(this,r,e);let i=yt.normalizeId(n),o=this.refs[i]||this.schemas[i];if(typeof o=="string"){let a=Kf.call(this,e,o);if(typeof(a===null||a===void 0?void 0:a.schema)!=="object")return;return Ig.call(this,r,a)}if(typeof(o===null||o===void 0?void 0:o.schema)!=="object")return;if(!o.validate)Jg.call(this,o);if(i===yt.normalizeId(t)){let{schema:a}=o,{schemaId:l}=this.opts,c=a[l];if(c)s=yt.resolveUrl(this.opts.uriResolver,s,c);return new lc({schema:a,schemaId:l,root:e,baseId:s})}return Ig.call(this,r,o)}T_.resolveSchema=Kf;var $4=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Ig(e,{baseId:t,schema:r,root:n}){var s;if(((s=e.fragment)===null||s===void 0?void 0:s[0])!=="/")return;for(let a of e.fragment.slice(1).split("/")){if(typeof r==="boolean")return;let l=r[Gf.unescapeFragment(a)];if(l===void 0)return;r=l;let c=typeof r==="object"&&r[this.opts.schemaId];if(!$4.has(a)&&c)t=yt.resolveUrl(this.opts.uriResolver,t,c)}let i;if(typeof r!="boolean"&&r.$ref&&!Gf.schemaHasRulesButRef(r,this.RULES)){let a=yt.resolveUrl(this.opts.uriResolver,t,r.$ref);i=Kf.call(this,n,a)}let{schemaId:o}=this.opts;if(i=i||new lc({schema:r,schemaId:o,root:n,baseId:t}),i.schema!==i.root.schema)return i;return}});var J_=C(function(lae,j4){j4.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var Vg=C(function(cae,H_){var P4=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Dg=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u),k4=RegExp.prototype.test.bind(/^\d*$/u),po=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),Lg=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),D_=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:@/]$/u),Fg=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:@/?]$/u),_4=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:]$/u),Ar=Array(256);for(let t=0;t<256;t++)Ar[t]="%"+"0123456789ABCDEF"[t>>4]+"0123456789ABCDEF"[t&15];function ir(e){if(e<2048)return Ar[192|e>>6]+Ar[128|e&63];if(e<65536)return Ar[224|e>>12]+Ar[128|e>>6&63]+Ar[128|e&63];return Ar[240|e>>18]+Ar[128|e>>12&63]+Ar[128|e>>6&63]+Ar[128|e&63]}function A4(e){let t="",r=0,n=0;for(n=0;n<e.length;n++){if(r=e[n].charCodeAt(0),r===48)continue;if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n];break}for(n+=1;n<e.length;n++){if(r=e[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";t+=e[n]}return t}var R4=RegExp.prototype.test.bind(/^[\dA-Fa-f]{1,4}$/),O4=RegExp.prototype.test.bind(/^[vV][\dA-Fa-f]+\.[A-Za-z\d\-._~!$&'()*+,;=:]+$/),N4=RegExp.prototype.test.bind(/^[A-Za-z\d\-._~]$/),C4=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function T4(e){if(e.length===0)return!1;for(let t=0;t<e.length;t++){if(N4(e[t]))continue;if(e[t]==="%"&&t+2<e.length&&po(e.slice(t+1,t+3))){t+=2;continue}return!1}return!0}function M_(e){let t=-1,r=0,n=-1,s=0;for(let a=0;a<e.length;a++)if(e[a]==="0"){if(n===-1)n=a;if(s++,s>r)r=s,t=n}else n=-1,s=0;if(r<2)return e.join(":");let i=e.slice(0,t).join(":"),o=e.slice(t+r).join(":");return i+"::"+o}function I4(e){let t=e.indexOf("::");if(t!==-1&&e.indexOf("::",t+1)!==-1)return;let r=t===-1?e.split(":"):e.slice(0,t).split(":"),n=t===-1?[]:e.slice(t+2).split(":");if(t!==-1){if(r.length===1&&r[0]==="")r.length=0;if(n.length===1&&n[0]==="")n.length=0}let s=r.concat(n),i=0;for(let a=0;a<s.length;a++){let l=s[a];if(l==="")return;if(l.indexOf(".")!==-1){if(a!==s.length-1||t!==-1&&n.length===0||!Dg(l))return;i+=2;continue}if(!R4(l))return;s[a]=parseInt(l,16).toString(16),i++}if(t===-1){if(i!==8)return;return M_(s)}if(i>=8)return;let o=s.slice(0,r.length);for(let a=i;a<8;a++)o.push("0");for(let a=r.length;a<s.length;a++)o.push(s[a]);return M_(o)}function Mg(e){let t=e[0]==="["&&e[e.length-1]==="]";if((e[0]==="["||e[e.length-1]==="]")&&!t)return{host:e,isIPV6:!1,error:!0};let n=t?e.slice(1,-1):e;if(t&&O4(n))return n=n.toLowerCase(),{host:`[${n}]`,escapedHost:n,isIPV6:!1,isIPVFuture:!0};if(J4(n,":")<2)return{host:e,isIPV6:!1,error:t};let s="",i=n.indexOf("%");if(i!==-1){let a=n.slice(i,i+3).toLowerCase()==="%25"?3:1;if(s=n.slice(i+a),!T4(s))return{host:e,isIPV6:!1,error:!0};n=n.slice(0,i)}let o=I4(n);if(o===void 0)return{host:e,isIPV6:!1,error:!0};return{host:o+(s?"%"+s:""),escapedHost:o+(s?"%25"+s:""),isIPV6:!0}}function J4(e,t){let r=0;for(let n=0;n<e.length;n++)if(e[n]===t)r++;return r}function L_(e){let t=e,r=[],n=-1,s=0;while(s=t.length){if(s===1)if(t===".")break;else if(t==="/"){r.push("/");break}else{r.push(t);break}else if(s===2){if(t[0]==="."){if(t[1]===".")break;else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"){if(t[1]==="."||t[1]==="/"){r.push("/");break}}}else if(s===3){if(t==="/.."){if(r.length!==0)r.pop();r.push("/");break}}if(t[0]==="."){if(t[1]==="."){if(t[2]==="/"){t=t.slice(3);continue}}else if(t[1]==="/"){t=t.slice(2);continue}}else if(t[0]==="/"){if(t[1]==="."){if(t[2]==="/"){t=t.slice(2);continue}else if(t[2]==="."){if(t[3]==="/"){if(t=t.slice(3),r.length!==0)r.pop();continue}}}}if((n=t.indexOf("/",1))===-1){r.push(t);break}else r.push(t.slice(0,n)),t=t.slice(n)}return r.join("")}function M4(e){if(e===""||e[0]==="/")return L_(e);let t=e.split("/"),r=t.length-1,n=[],s=!1;for(let i=0;i<=r;i++){let o=t[i];if(o==="."||o===".."){if(o==="..")if(n.length!==0&&n[n.length-1]!=="..")n.pop();else n.push("..");s=i===r}else n.push(o)}if(s&&n[n.length-1]!=="..")n.push("");if(n.length===0||n[0]===""||n[0].includes(":"))n.unshift(".");return n.join("/")}var D4={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},L4=/[@/?#:]/g,F4=/[@/?#]/g;function F_(e,t){let r=t?F4:L4;return r.lastIndex=0,e.replace(r,(n)=>D4[n])}function q_(e,t=!1){if(e.indexOf("%")===-1)return e;let r="";for(let n=0;n<e.length;n++){if(e[n]==="%"&&n+2<e.length){let s=e.slice(n+1,n+3);if(po(s)){let i=s.toUpperCase(),o=String.fromCharCode(parseInt(i,16));if(t&&Lg(o))r+=o;else r+="%"+i;n+=2;continue}}r+=e[n]}return r}function q4(e){let t="";for(let r=0;r<e.length;r++){let n=e[r];if(n==="%"&&r+2<e.length){let s=e.slice(r+1,r+3);if(po(s)){let i=s.toUpperCase(),o=String.fromCharCode(parseInt(i,16));if(o!=="."&&Lg(o))t+=o;else t+="%"+i;r+=2;continue}}if(D_(n))t+=n;else{let s=e.charCodeAt(r);if(s<128)t+=W_(s)?n:Ar[s];else if(s<55296||s>57343)t+=ir(s);else if(s<=56319&&r+1<e.length){let i=e.charCodeAt(r+1);if(i>=56320&&i<=57343)t+=ir(65536+(s-55296<<10)+(i-56320)),r++;else t+=ir(65533)}else t+=ir(65533)}}return t}function V4(e,t=!1){let r="",n=t&&e[0]!=="/";for(let s=0;s<e.length;s++){let i=e[s];if(i==="%"&&s+2<e.length){let o=e.slice(s+1,s+3);if(po(o)){r+="%"+o.toUpperCase(),s+=2;continue}}if(i==="/")n=!1;if(D_(i)&&(i!==":"||!n))r+=i;else{let o=e.charCodeAt(s);if(o<128)r+=Ar[o];else if(o<55296||o>57343)r+=ir(o);else if(o<=56319&&s+1<e.length){let a=e.charCodeAt(s+1);if(a>=56320&&a<=57343)r+=ir(65536+(o-55296<<10)+(a-56320)),s++;else r+=ir(65533)}else r+=ir(65533)}}return r}function qg(e,t){let r="";for(let n=0;n<e.length;n++){let s=e[n];if(s==="%"&&n+2<e.length){let i=e.slice(n+1,n+3);if(po(i)){r+="%"+i.toUpperCase(),n+=2;continue}}if(t(s))r+=s;else{let i=e.charCodeAt(n);if(i<128)r+=Ar[i];else if(i<55296||i>57343)r+=ir(i);else if(i<=56319&&n+1<e.length){let o=e.charCodeAt(n+1);if(o>=56320&&o<=57343)r+=ir(65536+(i-55296<<10)+(o-56320)),n++;else r+=ir(65533)}else r+=ir(65533)}}return r}function V_(e){return qg(e,_4)}function W4(e){return qg(e,Fg)}function H4(e){return qg(e,Fg)}function W_(e){return e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122||e===42||e===43||e===45||e===46||e===47||e===64||e===95}function B4(e){let t="";for(let r=0;r<e.length;r++){let n=e[r];if(n==="%"&&r+2<e.length){let s=e.slice(r+1,r+3);if(po(s)){let i=s.toUpperCase(),o=String.fromCharCode(parseInt(i,16));if(Lg(o))t+=o;else t+="%"+i;r+=2;continue}}if(Fg(n))t+=n;else{let s=e.charCodeAt(r);if(s<128)t+=W_(s)?n:Ar[s];else if(s<55296||s>57343)t+=ir(s);else if(s<=56319&&r+1<e.length){let i=e.charCodeAt(r+1);if(i>=56320&&i<=57343)t+=ir(65536+(s-55296<<10)+(i-56320)),r++;else t+=ir(65533)}else t+=ir(65533)}}return t}function U4(e){let t="";for(let r=0;r<e.length;r++){if(e[r]==="%"&&r+2<e.length){let n=e.slice(r+1,r+3);if(po(n)){t+="%"+n.toUpperCase(),r+=2;continue}}t+=escape(e[r])}return t}function z4(e){let t=[];if(e.userinfo!==void 0)t.push(V_(e.userinfo)),t.push("@");if(e.host!==void 0){let r=e.host;if(!Dg(r)){let n=Mg(r);if(n.isIPV6!==!0&&n.isIPVFuture!==!0)r=q_(r,!0),n=Mg(r);if(n.isIPV6===!0||n.isIPVFuture===!0)r=`[${n.escapedHost}]`;else r=F_(r,!1)}t.push(r)}if(typeof e.port==="number"||typeof e.port==="string"){let r=String(e.port);if(!k4(r))throw TypeError("URI port is malformed.");t.push(":"),t.push(r)}return t.length?t.join(""):void 0}H_.exports={nonSimpleDomain:C4,recomposeAuthority:z4,reescapeHostDelimiters:F_,normalizePercentEncoding:q_,normalizePathEncoding:q4,serializePathEncoding:V4,normalizeQueryFragmentEncoding:B4,encodeUserinfo:V_,encodeQuery:W4,encodeFragment:H4,escapePreservingEscapes:U4,removeDotSegments:L_,removeDotSegmentsRelative:M4,isIPv4:Dg,isUUID:P4,normalizeIPv6:Mg,stringArrayToHexStripped:A4}});var K_=C(function(uae,G_){var{isUUID:G4}=Vg(),K4=/^([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-./:;=@]|%[\da-f]{2})+)$/iu,Y4=["http","https","ws","wss","urn","urn:uuid"];function X4(e){return Y4.indexOf(e)!==-1}function Wg(e){if(e.secure===!0)return!0;else if(e.secure===!1)return!1;else if(e.scheme)return e.scheme.length===3&&(e.scheme[0]==="w"||e.scheme[0]==="W")&&(e.scheme[1]==="s"||e.scheme[1]==="S")&&(e.scheme[2]==="s"||e.scheme[2]==="S");else return!1}function B_(e){if(!e.host)e.error=e.error||"HTTP URIs must have a host.";return e}function U_(e){let t=String(e.scheme).toLowerCase()==="https";if(e.port===(t?443:80)||e.port==="")e.port=void 0;if(!e.path)e.path="/";return e}function Z4(e){return e.secure=Wg(e),e.resourceName=(e.path||"/")+(e.query?"?"+e.query:""),e.path=void 0,e.query=void 0,e}function Q4(e){if(e.port===(Wg(e)?443:80)||e.port==="")e.port=void 0;if(typeof e.secure==="boolean")e.scheme=e.secure?"wss":"ws",e.secure=void 0;if(e.resourceName){let t=e.resourceName.indexOf("?"),r=t===-1?e.resourceName:e.resourceName.slice(0,t);e.path=r&&r!=="/"?r:void 0,e.query=t===-1?void 0:e.resourceName.slice(t+1),e.resourceName=void 0}return e.fragment=void 0,e}function e6(e,t){if(!e.path)return e.error="URN can not be parsed",e;let r=e.path.match(K4);if(r&&r[0]===e.path){let n=t.scheme||e.scheme||"urn";e.nid=r[1].toLowerCase(),e.nss=r[2];let s=`${n}:${t.nid||e.nid}`,i=Hg(s);if(e.path=void 0,i)e=i.parse(e,t)}else e.error=e.error||"URN can not be parsed.";return e}function t6(e,t){if(e.nid===void 0)throw Error("URN without nid cannot be serialized");let r=t.scheme||e.scheme||"urn",n=e.nid.toLowerCase(),s=`${r}:${t.nid||n}`,i=Hg(s);if(i)e=i.serialize(e,t);let o=e,a=e.nss;return o.path=`${n||t.nid}:${a}`,t.skipEscape=!0,o}function r6(e,t){let r=e;if(r.uuid=r.nss,r.nss=void 0,!t.tolerant&&(!r.uuid||!G4(r.uuid)))r.error=r.error||"UUID is not valid.";return r}function n6(e){let t=e;return t.nss=(e.uuid||"").toLowerCase(),t}var z_={scheme:"http",domainHost:!0,parse:B_,serialize:U_},s6={scheme:"https",domainHost:z_.domainHost,parse:B_,serialize:U_},Yf={scheme:"ws",domainHost:!0,parse:Z4,serialize:Q4},i6={scheme:"wss",domainHost:Yf.domainHost,parse:Yf.parse,serialize:Yf.serialize},o6={scheme:"urn",parse:e6,serialize:t6,skipNormalize:!0},a6={scheme:"urn:uuid",parse:r6,serialize:n6,skipNormalize:!0},Xf={http:z_,https:s6,ws:Yf,wss:i6,urn:o6,"urn:uuid":a6};Object.setPrototypeOf(Xf,null);function Hg(e){return e&&(Xf[e]||Xf[e.toLowerCase()])||void 0}G_.exports={wsIsSecure:Wg,SCHEMES:Xf,isValidSchemeName:X4,getSchemeHandler:Hg}});var cA=C(function(fae,td){var{normalizeIPv6:eA,removeDotSegments:fc,removeDotSegmentsRelative:tA,recomposeAuthority:l6,normalizePercentEncoding:Bg,normalizePathEncoding:c6,serializePathEncoding:Y_,normalizeQueryFragmentEncoding:X_,encodeQuery:u6,encodeFragment:f6,reescapeHostDelimiters:d6,isIPv4:rA,nonSimpleDomain:p6}=Vg(),{SCHEMES:nA,getSchemeHandler:Ug}=K_(),sA=/^[A-Za-z][A-Za-z0-9+.-]*$/u,m6=/[\0-\x20"#/:<>?@[\\\]^`{|}\x7F]/u;function Z_(e){let t=String(e);if(!sA.test(t))throw TypeError("URI scheme is malformed.");return t}function h6(e,t){if(typeof e==="string")e=E6(e,t);else if(typeof e==="object")e=Qf(mo(e,t),t);return e}function g6(e,t,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},{parsed:s,malformedAuthorityOrPort:i,malformedPercentEncoding:o,malformedSchemeSpecific:a,malformedHost:l,malformedScheme:c}=Zf(e,n),{parsed:u,malformedAuthorityOrPort:p,malformedPercentEncoding:h,malformedSchemeSpecific:m,malformedHost:b,malformedScheme:g}=Zf(t,n);if(i||p||o||h||a||m||l||b||c||g)throw Error(s.error||u.error||"URI is malformed.");let y=iA(s,u,n,!0),w=Ug(r&&r.scheme||y.scheme),j=y.host,S=j!==void 0&&j!==""&&(rA(j)||eA(j).isIPV6);if(aA(y,r||{},w,S))throw Error("URI host is malformed.");oA(y,r||{},w,S);let E=j&&j.indexOf("%")!==-1&&!/\P{ASCII}/u.test(j);if(y.error&&!E)throw Error(y.error);return n.skipEscape=!0,mo(y,n)}function iA(e,t,r,n){let s={};if(!n)e=Qf(mo(e,r),r),t=Qf(mo(t,r),r);if(r=r||{},!r.tolerant&&t.scheme)s.scheme=t.scheme,s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=fc(t.path||""),s.query=t.query;else{if(t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)s.userinfo=t.userinfo,s.host=t.host,s.port=t.port,s.path=fc(t.path||""),s.query=t.query;else{if(!t.path)if(s.path=e.path,t.query!==void 0)s.query=t.query;else s.query=e.query;else{if(t.path[0]==="/")s.path=fc(t.path);else{let i=e.userinfo!==void 0||e.host!==void 0||e.port!==void 0;if(i&&!e.path)s.path="/"+t.path;else if(!e.path)s.path=t.path;else s.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path;s.path=e.scheme===void 0&&!i&&s.path[0]!=="/"?tA(s.path):fc(s.path)}s.query=t.query}s.userinfo=e.userinfo,s.host=e.host,s.port=e.port}s.scheme=e.scheme}return s.fragment=t.fragment,s}function y6(e,t,r){let n=Q_(e,r),s=Q_(t,r);return n!==void 0&&s!==void 0&&n===s}function mo(e,t){let r={host:e.host,scheme:e.scheme,userinfo:e.userinfo,port:e.port,path:e.path,query:e.query,nid:e.nid,nss:e.nss,uuid:e.uuid,fragment:e.fragment,reference:e.reference,resourceName:e.resourceName,secure:e.secure,error:""},n=Object.assign({},t),s=[];if(r.scheme)r.scheme=Z_(r.scheme);let i=Ug(n.scheme||r.scheme);if(i&&i.serialize)i.serialize(r,n);let o=r.userinfo!==void 0||r.host!==void 0||r.port!==void 0,a=(r.scheme===void 0||n.reference==="suffix")&&!o,l=!n.skipEscape&&a;if(r.path!==void 0)if(!n.skipEscape)r.path=Y_(r.path,l);else r.path=Bg(r.path);if(n.reference!=="suffix"&&r.scheme)r.scheme=Z_(r.scheme),s.push(r.scheme,":");let c=l6(r);if(c!==void 0){if(n.reference!=="suffix")s.push("//");if(s.push(c),r.path&&r.path[0]!=="/")s.push("/")}if(r.path!==void 0){let u=r.path;if(!n.absolutePath&&(!i||!i.absolutePath))u=a&&u[0]!=="/"?tA(u):fc(u);if(a)u=Y_(u,!0);if(c===void 0&&u[0]==="/"&&u[1]==="/")u="/%2F"+u.slice(2);s.push(u)}if(r.query!==void 0)s.push("?",u6(r.query));if(r.fragment!==void 0)s.push("#",f6(r.fragment));return s.join("")}var b6=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u,x6=/^(?:[^#/:?]+:)?\/\/([^/?#]*)/,$6=/^(?:[^#/:?]+:)?([/\\\t\n\r]*)/;function w6(e,t){if(t[2]!==void 0&&e.path&&e.path[0]!=="/")return'URI path must start with "/" when authority is present.';if(typeof e.port==="number"&&(e.port<0||e.port>65535))return"URI port is malformed.";return}function uc(e){if(e===void 0)return!1;let t=e.indexOf("%");while(t!==-1){if(t+2>=e.length||!/^[\da-f]{2}$/iu.test(e.slice(t+1,t+3)))return!0;t=e.indexOf("%",t+3)}return!1}function ed(e){return e[0]==="["&&e[e.length-1]==="]"}function v6(e){let t=e[4];return uc(e[3])||t!==void 0&&!ed(t)&&uc(t)||uc(e[6])||uc(e[7])||uc(e[8])}function oA(e,t,r,n){if(aA(e,t,r,n))return e.error=e.error||"URI host is malformed.",!0;if(!t.unicodeSupport&&(!r||!r.unicodeSupport)&&e.host&&!ed(e.host)&&(t.domainHost||r&&r.domainHost)&&n===!1&&p6(e.host)){let s;try{s=new URL("http://"+e.host)}catch(i){return e.error=e.error||"Host's domain name can not be converted to ASCII: "+i,!0}if(!S6(s))return e.error=e.error||"URI host is malformed.",!0;e.host=s.hostname}return!1}function aA(e,t,r,n){return Boolean(e.host&&n===!1&&!ed(e.host)&&(t.domainHost||r&&r.domainHost)&&m6.test(e.host))}function S6(e){return e.username===""&&e.password===""&&e.port===""&&e.pathname==="/"&&e.search===""&&e.hash===""&&e.hostname!==""}function Zf(e,t){let r=Object.assign({},t),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},s=!1,i=!1,o=!1,a=!1,l=!1,c=!1,u=!1;if(r.reference==="suffix")if(r.scheme)e=r.scheme+":"+e;else e="//"+e;let p=e.match(x6);if(p!==null&&p[1].indexOf("\\")!==-1)n.error="URI authority must not contain a literal backslash.",s=!0;let h=e.match($6);if(h!==null){let b=h[1],g=b.replace(/[\t\n\r]/g,"");if(g.length>=2){if(g.slice(0,2)!=="//")n.error=n.error||"URI authority must not contain a literal backslash.",s=!0;else if(b.length!==g.length)n.error=n.error||"URI authority introducer must not contain whitespace.",s=!0}}let m=e.match(b6);if(m){if(n.scheme=m[1],n.userinfo=m[3],n.host=m[4],n.port=parseInt(m[5],10),n.path=m[6]||"",n.query=m[7],n.fragment=m[8],n.scheme!==void 0)if(sA.test(n.scheme))n.scheme=n.scheme.toLowerCase();else n.error=n.error||"URI scheme is malformed.",c=!0;if(i=v6(m),i)n.error=n.error||"URI contains malformed percent-encoding.";if(isNaN(n.port))n.port=m[5];let b=w6(n,m);if(b!==void 0)n.error=n.error||b,s=!0;if(n.host)if(rA(n.host)===!1){let w=ed(n.host),j=n.host.indexOf("[")!==-1||n.host.indexOf("]")!==-1,S=eA(n.host);if(u=S.isIPV6||S.isIPVFuture===!0,l=j&&(!w||S.error===!0),n.host=u?S.host:S.host.toLowerCase(),l)n.error=n.error||"URI host is malformed.",s=!0}else u=!0;if(n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path)n.reference="same-document";else if(n.scheme===void 0)n.reference="relative";else if(n.fragment===void 0)n.reference="absolute";else n.reference="uri";if(r.reference&&r.reference!=="suffix"&&r.reference!==n.reference)n.error=n.error||"URI is not a "+r.reference+" reference.";let g=Ug(r.scheme||n.scheme);if(!l)a=oA(n,r,g,u);if(e.indexOf("%")!==-1&&n.host!==void 0&&!l){let y=u?n.host:Bg(n.host,!0);if(!u)y=Bg(y.toLowerCase());n.host=u||r.scheme!=="null"?d6(y,u):y}if(!g||g&&!g.skipNormalize){if(n.path)n.path=c6(n.path);if(n.query)n.query=X_(n.query);if(n.fragment)n.fragment=X_(n.fragment)}if(g&&g.parse){if(g.parse(n,r),g===nA.urn&&n.nid===void 0)o=!0}}else n.error=n.error||"URI can not be parsed.";return{parsed:n,malformedAuthorityOrPort:s,malformedPercentEncoding:i,malformedSchemeSpecific:o,malformedHost:a,malformedScheme:c}}function Qf(e,t){return Zf(e,t).parsed}function E6(e,t){return lA(e,t).normalized}function lA(e,t){let{parsed:r,malformedAuthorityOrPort:n,malformedPercentEncoding:s,malformedSchemeSpecific:i,malformedHost:o,malformedScheme:a}=Zf(e,t);return{normalized:n||s||i||o||a?e:mo(r,t),malformedAuthorityOrPort:n,malformedPercentEncoding:s,malformedSchemeSpecific:i,malformedHost:o,malformedScheme:a}}function Q_(e,t){if(typeof e!=="string"&&typeof e!=="object")return;let r;try{r=typeof e==="string"?e:mo(e,t)}catch{return}let{normalized:n,malformedAuthorityOrPort:s,malformedPercentEncoding:i,malformedSchemeSpecific:o,malformedHost:a,malformedScheme:l}=lA(r,t);return s||i||o||a||l?void 0:n}var zg={SCHEMES:nA,normalize:h6,resolve:g6,resolveComponent:iA,equal:y6,serialize:mo,parse:Qf};td.exports=zg;td.exports.default=zg;td.exports.fastUri=zg});var dA=C(function(fA){Object.defineProperty(fA,"__esModule",{value:!0});var uA=cA();uA.code='require("ajv/dist/runtime/uri").default';fA.default=uA});var Kg=C(function(Cs){Object.defineProperty(Cs,"__esModule",{value:!0});Cs.CodeGen=Cs.Name=Cs.nil=Cs.stringify=Cs.str=Cs._=Cs.KeywordCxt=void 0;var P6=ka();Object.defineProperty(Cs,"KeywordCxt",{enumerable:!0,get:function(){return P6.KeywordCxt}});var Oa=we();Object.defineProperty(Cs,"_",{enumerable:!0,get:function(){return Oa._}});Object.defineProperty(Cs,"str",{enumerable:!0,get:function(){return Oa.str}});Object.defineProperty(Cs,"stringify",{enumerable:!0,get:function(){return Oa.stringify}});Object.defineProperty(Cs,"nil",{enumerable:!0,get:function(){return Oa.nil}});Object.defineProperty(Cs,"Name",{enumerable:!0,get:function(){return Oa.Name}});Object.defineProperty(Cs,"CodeGen",{enumerable:!0,get:function(){return Oa.CodeGen}});var k6=ac(),yA=Aa(),bA=Eg(),qn=cc(),xA=we(),Vn=oc(),mi=ic(),Ra=Oe(),pA=J_(),_6=dA(),$A=(e,t)=>new RegExp(e,t);$A.code="new RegExp";var A6=["removeAdditional","useDefaults","coerceTypes"],R6=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),O6={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},N6={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},mA=200;function C6(e){var t,r,n,s,i,o,a,l,c,u,p,h,m,b,g,y,w,j,S,E,k,A,R,_,I;let L=e.strict,J=(t=e.code)===null||t===void 0?void 0:t.optimize,F=J===!0||J===void 0?1:J||0,K=(n=(r=e.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:$A,ae=(s=e.uriResolver)!==null&&s!==void 0?s:_6.default;return{strictSchema:(o=(i=e.strictSchema)!==null&&i!==void 0?i:L)!==null&&o!==void 0?o:!0,strictNumbers:(l=(a=e.strictNumbers)!==null&&a!==void 0?a:L)!==null&&l!==void 0?l:!0,strictTypes:(u=(c=e.strictTypes)!==null&&c!==void 0?c:L)!==null&&u!==void 0?u:"log",strictTuples:(h=(p=e.strictTuples)!==null&&p!==void 0?p:L)!==null&&h!==void 0?h:"log",strictRequired:(b=(m=e.strictRequired)!==null&&m!==void 0?m:L)!==null&&b!==void 0?b:!1,code:e.code?{...e.code,optimize:F,regExp:K}:{optimize:F,regExp:K},loopRequired:(g=e.loopRequired)!==null&&g!==void 0?g:mA,loopEnum:(y=e.loopEnum)!==null&&y!==void 0?y:mA,meta:(w=e.meta)!==null&&w!==void 0?w:!0,messages:(j=e.messages)!==null&&j!==void 0?j:!0,inlineRefs:(S=e.inlineRefs)!==null&&S!==void 0?S:!0,schemaId:(E=e.schemaId)!==null&&E!==void 0?E:"$id",addUsedSchema:(k=e.addUsedSchema)!==null&&k!==void 0?k:!0,validateSchema:(A=e.validateSchema)!==null&&A!==void 0?A:!0,validateFormats:(R=e.validateFormats)!==null&&R!==void 0?R:!0,unicodeRegExp:(_=e.unicodeRegExp)!==null&&_!==void 0?_:!0,int32range:(I=e.int32range)!==null&&I!==void 0?I:!0,uriResolver:ae}}class rd{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...C6(e)};let{es5:t,lines:r}=this.opts.code;this.scope=new xA.ValueScope({scope:{},prefixes:R6,es5:t,lines:r}),this.logger=L6(e.logger);let n=e.validateFormats;if(e.validateFormats=!1,this.RULES=bA.getRules(),hA.call(this,O6,e,"NOT SUPPORTED"),hA.call(this,N6,e,"DEPRECATED","warn"),this._metaOpts=M6.call(this),e.formats)I6.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords)J6.call(this,e.keywords);if(typeof e.meta=="object")this.addMetaSchema(e.meta);T6.call(this),e.validateFormats=n}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:t,schemaId:r}=this.opts,n=pA;if(r==="id")n={...pA},n.id=n.$id,delete n.$id;if(t&&e)this.addMetaSchema(n,n[r],!1)}defaultMeta(){let{meta:e,schemaId:t}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[t]||e:void 0}validate(e,t){let r;if(typeof e=="string"){if(r=this.getSchema(e),!r)throw Error(`no schema with key or ref "${e}"`)}else r=this.compile(e);let n=r(t);if(!("$async"in r))this.errors=r.errors;return n}compile(e,t){let r=this._addSchema(e,t);return r.validate||this._compileSchemaEnv(r)}compileAsync(e,t){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:r}=this.opts;return n.call(this,e,t);async function n(c,u){await s.call(this,c.$schema);let p=this._addSchema(c,u);return p.validate||i.call(this,p)}async function s(c){if(c&&!this.getSchema(c))await n.call(this,{$ref:c},!0)}async function i(c){try{return this._compileSchemaEnv(c)}catch(u){if(!(u instanceof yA.default))throw u;return o.call(this,u),await a.call(this,u.missingSchema),i.call(this,c)}}function o({missingSchema:c,missingRef:u}){if(this.refs[c])throw Error(`AnySchema ${c} is loaded but ${u} cannot be resolved`)}async function a(c){let u=await l.call(this,c);if(!this.refs[c])await s.call(this,u.$schema);if(!this.refs[c])this.addSchema(u,c,t)}async function l(c){let u=this._loading[c];if(u)return u;try{return await(this._loading[c]=r(c))}finally{delete this._loading[c]}}}addSchema(e,t,r,n=this.opts.validateSchema){if(Array.isArray(e)){for(let i of e)this.addSchema(i,void 0,r,n);return this}let s;if(typeof e==="object"){let{schemaId:i}=this.opts;if(s=e[i],s!==void 0&&typeof s!="string")throw Error(`schema ${i} must be string`)}return t=Vn.normalizeId(t||s),this._checkUnique(t),this.schemas[t]=this._addSchema(e,r,t,n,!0),this}addMetaSchema(e,t,r=this.opts.validateSchema){return this.addSchema(e,t,!0,r),this}validateSchema(e,t){if(typeof e=="boolean")return!0;let r;if(r=e.$schema,r!==void 0&&typeof r!="string")throw Error("$schema must be a string");if(r=r||this.opts.defaultMeta||this.defaultMeta(),!r)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let n=this.validate(r,e);if(!n&&t){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw Error(s)}return n}getSchema(e){let t;while(typeof(t=gA.call(this,e))=="string")e=t;if(t===void 0){let{schemaId:r}=this.opts,n=new qn.SchemaEnv({schema:{},schemaId:r});if(t=qn.resolveSchema.call(this,n,e),!t)return;this.refs[e]=t}return t.validate||this._compileSchemaEnv(t)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let t=gA.call(this,e);if(typeof t=="object")this._cache.delete(t.schema);return delete this.schemas[e],delete this.refs[e],this}case"object":{let t=e;this._cache.delete(t);let r=e[this.opts.schemaId];if(r)r=Vn.normalizeId(r),delete this.schemas[r],delete this.refs[r];return this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let t of e)this.addKeyword(t);return this}addKeyword(e,t){let r;if(typeof e=="string"){if(r=e,typeof t=="object")this.logger.warn("these parameters are deprecated, see docs for addKeyword"),t.keyword=r}else if(typeof e=="object"&&t===void 0){if(t=e,r=t.keyword,Array.isArray(r)&&!r.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if(q6.call(this,r,t),!t)return Ra.eachItem(r,(s)=>Gg.call(this,s)),this;W6.call(this,t);let n={...t,type:mi.getJSONTypes(t.type),schemaType:mi.getJSONTypes(t.schemaType)};return Ra.eachItem(r,n.type.length===0?(s)=>Gg.call(this,s,n):(s)=>n.type.forEach((i)=>Gg.call(this,s,n,i))),this}getKeyword(e){let t=this.RULES.all[e];return typeof t=="object"?t.definition:!!t}removeKeyword(e){let{RULES:t}=this;delete t.keywords[e],delete t.all[e];for(let r of t.rules){let n=r.rules.findIndex((s)=>s.keyword===e);if(n>=0)r.rules.splice(n,1)}return this}addFormat(e,t){if(typeof t=="string")t=new RegExp(t);return this.formats[e]=t,this}errorsText(e=this.errors,{separator:t=", ",dataVar:r="data"}={}){if(!e||e.length===0)return"No errors";return e.map((n)=>`${r}${n.instancePath} ${n.message}`).reduce((n,s)=>n+t+s)}$dataMetaSchema(e,t){let r=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let n of t){let s=n.split("/").slice(1),i=e;for(let o of s)i=i[o];for(let o in r){let a=r[o];if(typeof a!="object")continue;let{$data:l}=a.definition,c=i[o];if(l&&c)i[o]=wA(c)}}return e}_removeAllSchemas(e,t){for(let r in e){let n=e[r];if(!t||t.test(r)){if(typeof n=="string")delete e[r];else if(n&&!n.meta)this._cache.delete(n.schema),delete e[r]}}}_addSchema(e,t,r,n=this.opts.validateSchema,s=this.opts.addUsedSchema){let i,{schemaId:o}=this.opts;if(typeof e=="object")i=e[o];else if(this.opts.jtd)throw Error("schema must be object");else if(typeof e!="boolean")throw Error("schema must be object or boolean");let a=this._cache.get(e);if(a!==void 0)return a;r=Vn.normalizeId(i||r);let l=Vn.getSchemaRefs.call(this,e,r);if(a=new qn.SchemaEnv({schema:e,schemaId:o,meta:t,baseId:r,localRefs:l}),this._cache.set(a.schema,a),s&&!r.startsWith("#")){if(r)this._checkUnique(r);this.refs[r]=a}if(n)this.validateSchema(e,!0);return a}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta)this._compileMetaSchema(e);else qn.compileSchema.call(this,e);if(!e.validate)throw Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let t=this.opts;this.opts=this._metaOpts;try{qn.compileSchema.call(this,e)}finally{this.opts=t}}}rd.ValidationError=k6.default;rd.MissingRefError=yA.default;Cs.default=rd;function hA(e,t,r,n="error"){for(let s in e){let i=s;if(i in t)this.logger[n](`${r}: option ${s}. ${e[i]}`)}}function gA(e){return e=Vn.normalizeId(e),this.schemas[e]||this.refs[e]}function T6(){let e=this.opts.schemas;if(!e)return;if(Array.isArray(e))this.addSchema(e);else for(let t in e)this.addSchema(e[t],t)}function I6(){for(let e in this.opts.formats){let t=this.opts.formats[e];if(t)this.addFormat(e,t)}}function J6(e){if(Array.isArray(e)){this.addVocabulary(e);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let t in e){let r=e[t];if(!r.keyword)r.keyword=t;this.addKeyword(r)}}function M6(){let e={...this.opts};for(let t of A6)delete e[t];return e}var D6={log(){},warn(){},error(){}};function L6(e){if(e===!1)return D6;if(e===void 0)return console;if(e.log&&e.warn&&e.error)return e;throw Error("logger must implement log, warn and error methods")}var F6=/^[a-z_$][a-z0-9_$:-]*$/i;function q6(e,t){let{RULES:r}=this;if(Ra.eachItem(e,(n)=>{if(r.keywords[n])throw Error(`Keyword ${n} is already defined`);if(!F6.test(n))throw Error(`Keyword ${n} has invalid name`)}),!t)return;if(t.$data&&!(("code"in t)||("validate"in t)))throw Error('$data keyword must have "code" or "validate" function')}function Gg(e,t,r){var n;let s=t===null||t===void 0?void 0:t.post;if(r&&s)throw Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,o=s?i.post:i.rules.find(({type:l})=>l===r);if(!o)o={type:r,rules:[]},i.rules.push(o);if(i.keywords[e]=!0,!t)return;let a={keyword:e,definition:{...t,type:mi.getJSONTypes(t.type),schemaType:mi.getJSONTypes(t.schemaType)}};if(t.before)V6.call(this,o,a,t.before);else o.rules.push(a);i.all[e]=a,(n=t.implements)===null||n===void 0||n.forEach((l)=>this.addKeyword(l))}function V6(e,t,r){let n=e.rules.findIndex((s)=>s.keyword===r);if(n>=0)e.rules.splice(n,0,t);else e.rules.push(t),this.logger.warn(`rule ${r} is not defined`)}function W6(e){let{metaSchema:t}=e;if(t===void 0)return;if(e.$data&&this.opts.$data)t=wA(t);e.validateSchema=this.compile(t,!0)}var H6={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function wA(e){return{anyOf:[e,H6]}}});var SA=C(function(vA){Object.defineProperty(vA,"__esModule",{value:!0});var z6={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};vA.default=z6});var od=C(function(jA){Object.defineProperty(jA,"__esModule",{value:!0});jA.callRef=jA.getValidate=void 0;var K6=Aa(),sd=on(),Ye=we(),Na=nn(),id=cc(),hi=Oe(),Y6={keyword:"$ref",schemaType:"string",code(e){let{gen:t,schema:r,it:n}=e,{baseId:s,schemaEnv:i,validateName:o,opts:a,self:l}=n,{root:c}=i;if((r==="#"||r==="#/")&&s===c.baseId)return p();let u=id.resolveRef.call(l,c,s,r);if(u===void 0)throw new K6.default(n.opts.uriResolver,s,r);if(u instanceof id.SchemaEnv)return h(u);return m(u);function p(){if(i===c)return nd(e,o,i,i.$async);let b=t.scopeValue("root",{ref:c});return nd(e,Ye._`${b}.validate`,c,c.$async)}function h(b){let g=EA(e,b);nd(e,g,b,b.$async)}function m(b){let g=t.scopeValue("schema",a.code.source===!0?{ref:b,code:Ye.stringify(b)}:{ref:b}),y=t.name("valid"),w=e.subschema({schema:b,dataTypes:[],schemaPath:Ye.nil,topSchemaRef:g,errSchemaPath:r},y);e.mergeEvaluated(w),e.ok(y)}}};function EA(e,t){let{gen:r}=e;return t.validate?r.scopeValue("validate",{ref:t.validate}):Ye._`${r.scopeValue("wrapper",{ref:t})}.validate`}jA.getValidate=EA;function nd(e,t,r,n){let{gen:s,it:i}=e,{allErrors:o,schemaEnv:a,opts:l}=i,c=l.passContext?Na.default.this:Ye.nil;if(n)u();else p();function u(){if(!a.$async)throw Error("async schema referenced by sync schema");let b=s.let("valid");s.try(()=>{if(s.code(Ye._`await ${sd.callValidateCode(e,t,c)}`),m(t),!o)s.assign(b,!0)},(g)=>{if(s.if(Ye._`!(${g} instanceof ${i.ValidationError})`,()=>s.throw(g)),h(g),!o)s.assign(b,!1)}),e.ok(b)}function p(){e.result(sd.callValidateCode(e,t,c),()=>m(t),()=>h(t))}function h(b){let g=Ye._`${b}.errors`;s.assign(Na.default.vErrors,Ye._`${Na.default.vErrors} === null ? ${g} : ${Na.default.vErrors}.concat(${g})`),s.assign(Na.default.errors,Ye._`${Na.default.vErrors}.length`)}function m(b){var g;if(!i.opts.unevaluated)return;let y=(g=r===null||r===void 0?void 0:r.validate)===null||g===void 0?void 0:g.evaluated;if(i.props!==!0)if(y&&!y.dynamicProps){if(y.props!==void 0)i.props=hi.mergeEvaluated.props(s,y.props,i.props)}else{let w=s.var("props",Ye._`${b}.evaluated.props`);i.props=hi.mergeEvaluated.props(s,w,i.props,Ye.Name)}if(i.items!==!0)if(y&&!y.dynamicItems){if(y.items!==void 0)i.items=hi.mergeEvaluated.items(s,y.items,i.items)}else{let w=s.var("items",Ye._`${b}.evaluated.items`);i.items=hi.mergeEvaluated.items(s,w,i.items,Ye.Name)}}}jA.callRef=nd;jA.default=Y6});var Yg=C(function(kA){Object.defineProperty(kA,"__esModule",{value:!0});var Q6=SA(),ez=od(),tz=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",Q6.default,ez.default];kA.default=tz});var AA=C(function(_A){Object.defineProperty(_A,"__esModule",{value:!0});var yi=we(),gi=yi.operators,ad={maximum:{okStr:"<=",ok:gi.LTE,fail:gi.GT},minimum:{okStr:">=",ok:gi.GTE,fail:gi.LT},exclusiveMaximum:{okStr:"<",ok:gi.LT,fail:gi.GTE},exclusiveMinimum:{okStr:">",ok:gi.GT,fail:gi.LTE}},nz={message:({keyword:e,schemaCode:t})=>yi.str`must be ${ad[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>yi._`{comparison: ${ad[e].okStr}, limit: ${t}}`},sz={keyword:Object.keys(ad),type:"number",schemaType:"number",$data:!0,error:nz,code(e){let{keyword:t,data:r,schemaCode:n}=e;e.fail$data(yi._`${r} ${ad[t].fail} ${n} || isNaN(${r})`)}};_A.default=sz});var OA=C(function(RA){Object.defineProperty(RA,"__esModule",{value:!0});var Wn=we(),oz={message:({schemaCode:e})=>Wn.str`must be multiple of ${e}`,params:({schemaCode:e})=>Wn._`{multipleOf: ${e}}`},az={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:oz,code(e){let{gen:t,data:r,schemaCode:n,it:s}=e,i=s.opts.multipleOfPrecision,o=t.let("res"),a=i?Wn._`Math.abs(Math.round(${o}) - ${o}) > 1e-${i}`:Wn._`${o} !== parseInt(${o})`;e.fail$data(Wn._`(${n} === 0 || (${o} = ${r}/${n}, ${a}))`)}};RA.default=az});var TA=C(function(CA){Object.defineProperty(CA,"__esModule",{value:!0});function NA(e){let t=e.length,r=0,n=0,s;while(n<t)if(r++,s=e.charCodeAt(n++),s>=55296&&s<=56319&&n<t){if(s=e.charCodeAt(n),(s&64512)===56320)n++}return r}CA.default=NA;NA.code='require("ajv/dist/runtime/ucs2length").default'});var MA=C(function(JA){Object.defineProperty(JA,"__esModule",{value:!0});var Rr=we(),IA=Oe(),uz=TA(),fz={message({keyword:e,schemaCode:t}){return Rr.str`must NOT have ${e==="maxLength"?"more":"fewer"} than ${t} characters`},params:({schemaCode:e})=>Rr._`{limit: ${e}}`},dz={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:fz,code(e){let{keyword:t,data:r,schemaCode:n,it:s}=e,i=t==="maxLength"?Rr.operators.GT:Rr.operators.LT,o=s.opts.unicode===!1?Rr._`${r}.length`:Rr._`${IA.useFunc(e.gen,uz.default)}(${r})`;e.fail$data(Rr._`${o} ${i} ${n}`)}};JA.default=dz});var qA=C(function(FA){Object.defineProperty(FA,"__esModule",{value:!0});var DA=on(),LA=Oe(),an=we(),mz={message:({schemaCode:e})=>an.str`must match pattern "${e}"`,params:({schemaCode:e})=>an._`{pattern: ${e}}`},hz={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:mz,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:i,it:o}=e,a=o.opts.unicodeRegExp?"u":"";if(n){let{regExp:l}=o.opts.code,c=l.code==="new RegExp"?an._`new RegExp`:LA.useFunc(t,l),u=t.let("valid");t.try(()=>t.assign(u,an._`${c}(${i}, ${a}).test(${r})`),()=>t.assign(u,!1)),e.fail$data(an._`!${u}`)}else{let l=DA.usePattern(e,s);e.fail$data(an._`!${l}.test(${r})`)}}};FA.default=hz});var WA=C(function(VA){Object.defineProperty(VA,"__esModule",{value:!0});var Hn=we(),yz={message({keyword:e,schemaCode:t}){return Hn.str`must NOT have ${e==="maxProperties"?"more":"fewer"} than ${t} properties`},params:({schemaCode:e})=>Hn._`{limit: ${e}}`},bz={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:yz,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxProperties"?Hn.operators.GT:Hn.operators.LT;e.fail$data(Hn._`Object.keys(${r}).length ${s} ${n}`)}};VA.default=bz});var UA=C(function(BA){Object.defineProperty(BA,"__esModule",{value:!0});var Bn=on(),Un=we(),HA=Oe(),$z={message:({params:{missingProperty:e}})=>Un.str`must have required property '${e}'`,params:({params:{missingProperty:e}})=>Un._`{missingProperty: ${e}}`},wz={keyword:"required",type:"object",schemaType:"array",$data:!0,error:$z,code(e){let{gen:t,schema:r,schemaCode:n,data:s,$data:i,it:o}=e,{opts:a}=o;if(!i&&r.length===0)return;let l=r.length>=a.loopRequired;if(o.allErrors)c();else u();if(a.strictRequired){let m=e.parentSchema.properties,{definedProperties:b}=e.it;for(let g of r)if((m===null||m===void 0?void 0:m[g])===void 0&&!b.has(g)){let y=o.schemaEnv.baseId+o.errSchemaPath,w=`required property "${g}" is not defined at "${y}" (strictRequired)`;HA.checkStrictMode(o,w,o.opts.strictRequired)}}function c(){if(l||i)e.block$data(Un.nil,p);else for(let m of r)Bn.checkReportMissingProp(e,m)}function u(){let m=t.let("missing");if(l||i){let b=t.let("valid",!0);e.block$data(b,()=>h(m,b)),e.ok(b)}else t.if(Bn.checkMissingProp(e,r,m)),Bn.reportMissingProp(e,m),t.else()}function p(){t.forOf("prop",n,(m)=>{e.setParams({missingProperty:m}),t.if(Bn.noPropertyInData(t,s,m,a.ownProperties),()=>e.error())})}function h(m,b){e.setParams({missingProperty:m}),t.forOf(m,n,()=>{t.assign(b,Bn.propertyInData(t,s,m,a.ownProperties)),t.if(Un.not(b),()=>{e.error(),t.break()})},Un.nil)}}};BA.default=wz});var GA=C(function(zA){Object.defineProperty(zA,"__esModule",{value:!0});var zn=we(),Sz={message({keyword:e,schemaCode:t}){return zn.str`must NOT have ${e==="maxItems"?"more":"fewer"} than ${t} items`},params:({schemaCode:e})=>zn._`{limit: ${e}}`},Ez={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:Sz,code(e){let{keyword:t,data:r,schemaCode:n}=e,s=t==="maxItems"?zn.operators.GT:zn.operators.LT;e.fail$data(zn._`${r}.length ${s} ${n}`)}};zA.default=Ez});var ld=C(function(YA){Object.defineProperty(YA,"__esModule",{value:!0});var KA=Og();KA.code='require("ajv/dist/runtime/equal").default';YA.default=KA});var QA=C(function(ZA){Object.defineProperty(ZA,"__esModule",{value:!0});var Ca=ic(),Le=we(),XA=Oe(),kz=ld(),_z={message:({params:{i:e,j:t}})=>Le.str`must NOT have duplicate items (items ## ${t} and ${e} are identical)`,params:({params:{i:e,j:t}})=>Le._`{i: ${e}, j: ${t}}`},Az={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:_z,code(e){let{gen:t,data:r,$data:n,schema:s,parentSchema:i,schemaCode:o,it:a}=e;if(!n&&!s)return;let l=t.let("valid"),c=i.items?Ca.getSchemaTypes(i.items):[];e.block$data(l,u,Le._`${o} === false`),e.ok(l);function u(){let b=t.let("i",Le._`${r}.length`),g=t.let("j");e.setParams({i:b,j:g}),t.assign(l,!0),t.if(Le._`${b} > 1`,()=>(p()?h:m)(b,g))}function p(){return c.length>0&&!c.some((b)=>b==="object"||b==="array")}function h(b,g){let y=t.name("item"),w=Ca.checkDataTypes(c,y,a.opts.strictNumbers,Ca.DataType.Wrong),j=t.const("indices",Le._`{}`);t.for(Le._`;${b}--;`,()=>{if(t.let(y,Le._`${r}[${b}]`),t.if(w,Le._`continue`),c.length>1)t.if(Le._`typeof ${y} == "string"`,Le._`${y} += "_"`);t.if(Le._`typeof ${j}[${y}] == "number"`,()=>{t.assign(g,Le._`${j}[${y}]`),e.error(),t.assign(l,!1).break()}).code(Le._`${j}[${y}] = ${b}`)})}function m(b,g){let y=XA.useFunc(t,kz.default),w=t.name("outer");t.label(w).for(Le._`;${b}--;`,()=>t.for(Le._`${g} = ${b}; ${g}--;`,()=>t.if(Le._`${y}(${r}[${b}], ${r}[${g}])`,()=>{e.error(),t.assign(l,!1).break(w)})))}}};ZA.default=Az});var rR=C(function(tR){Object.defineProperty(tR,"__esModule",{value:!0});var Ta=we(),eR=Oe(),Oz=ld(),Nz={message:"must be equal to constant",params:({schemaCode:e})=>Ta._`{allowedValue: ${e}}`},Cz={keyword:"const",$data:!0,error:Nz,code(e){let{gen:t,data:r,$data:n,schemaCode:s,schema:i}=e;if(n||i&&typeof i=="object")e.fail$data(Ta._`!${eR.useFunc(t,Oz.default)}(${r}, ${s})`);else e.fail(Ta._`${i} !== ${r}`)}};tR.default=Cz});var iR=C(function(sR){Object.defineProperty(sR,"__esModule",{value:!0});var Gn=we(),nR=Oe(),Iz=ld(),Jz={message:"must be equal to one of the allowed values",params:({schemaCode:e})=>Gn._`{allowedValues: ${e}}`},Mz={keyword:"enum",schemaType:"array",$data:!0,error:Jz,code(e){let{gen:t,data:r,$data:n,schema:s,schemaCode:i,it:o}=e;if(!n&&s.length===0)throw Error("enum must have non-empty array");let a=s.length>=o.opts.loopEnum,l,c=()=>l!==null&&l!==void 0?l:l=nR.useFunc(t,Iz.default),u;if(a||n)u=t.let("valid"),e.block$data(u,p);else{if(!Array.isArray(s))throw Error("ajv implementation error");let m=t.const("vSchema",i);u=Gn.or(...s.map((b,g)=>h(m,g)))}e.pass(u);function p(){t.assign(u,!1),t.forOf("v",i,(m)=>t.if(Gn._`${c()}(${r}, ${m})`,()=>t.assign(u,!0).break()))}function h(m,b){let g=s[b];return typeof g==="object"&&g!==null?Gn._`${c()}(${r}, ${m}[${b}])`:Gn._`${r} === ${g}`}}};sR.default=Mz});var Xg=C(function(oR){Object.defineProperty(oR,"__esModule",{value:!0});var Lz=AA(),Fz=OA(),qz=MA(),Vz=qA(),Wz=WA(),Hz=UA(),Bz=GA(),Uz=QA(),zz=rR(),Gz=iR(),Kz=[Lz.default,Fz.default,qz.default,Vz.default,Wz.default,Hz.default,Bz.default,Uz.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},zz.default,Gz.default];oR.default=Kz});var Zg=C(function(lR){Object.defineProperty(lR,"__esModule",{value:!0});lR.validateAdditionalItems=void 0;var Or=we(),Ia=Oe(),Xz={message:({params:{len:e}})=>Or.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>Or._`{limit: ${e}}`},Zz={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Xz,code(e){let{parentSchema:t,it:r}=e,{items:n}=t;if(!Array.isArray(n)){Ia.checkStrictMode(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}aR(e,n)}};function aR(e,t){let{gen:r,schema:n,data:s,keyword:i,it:o}=e;o.items=!0;let a=r.const("len",Or._`${s}.length`);if(n===!1)e.setParams({len:t.length}),e.pass(Or._`${a} <= ${t.length}`);else if(typeof n=="object"&&!Ia.alwaysValidSchema(o,n)){let c=r.var("valid",Or._`${a} <= ${t.length}`);r.if(Or.not(c),()=>l(c)),e.ok(c)}function l(c){r.forRange("i",t.length,a,(u)=>{if(e.subschema({keyword:i,dataProp:u,dataPropType:Ia.Type.Num},c),!o.allErrors)r.if(Or.not(c),()=>r.break())})}}lR.validateAdditionalItems=aR;lR.default=Zz});var Qg=C(function(dR){Object.defineProperty(dR,"__esModule",{value:!0});dR.validateTuple=void 0;var cd=we(),bi=Oe(),uR=on(),e8={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){let{schema:t,it:r}=e;if(Array.isArray(t))return fR(e,"additionalItems",t);if(r.items=!0,bi.alwaysValidSchema(r,t))return;e.ok(uR.validateArray(e))}};function fR(e,t,r=e.schema){let{gen:n,parentSchema:s,data:i,keyword:o,it:a}=e;if(u(s),a.opts.unevaluated&&r.length&&a.items!==!0)a.items=bi.mergeEvaluated.items(n,r.length,a.items);let l=n.name("valid"),c=n.const("len",cd._`${i}.length`);r.forEach((p,h)=>{if(bi.alwaysValidSchema(a,p))return;n.if(cd._`${c} > ${h}`,()=>e.subschema({keyword:o,schemaProp:h,dataProp:h},l)),e.ok(l)});function u(p){let{opts:h,errSchemaPath:m}=a,b=r.length,g=b===p.minItems&&(b===p.maxItems||p[t]===!1);if(h.strictTuples&&!g){let y=`"${o}" is ${b}-tuple, but minItems or maxItems/${t} are not specified or different at path "${m}"`;bi.checkStrictMode(a,y,h.strictTuples)}}}dR.validateTuple=fR;dR.default=e8});var gR=C(function(hR){Object.defineProperty(hR,"__esModule",{value:!0});var mR=Qg(),r8={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(e)=>mR.validateTuple(e,"items")};hR.default=r8});var wR=C(function($R){Object.defineProperty($R,"__esModule",{value:!0});var ud=we(),yR=Oe(),bR=on(),xR=Zg(),s8={message:({params:{len:e}})=>ud.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>ud._`{limit: ${e}}`},i8={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:s8,code(e){let{schema:t,parentSchema:r,it:n}=e,{prefixItems:s}=r;if(n.items=!0,yR.alwaysValidSchema(n,t))return;if(s)xR.validateAdditionalItems(e,s);else e.ok(bR.validateArray(e))}};$R.default=i8});var SR=C(function(vR){Object.defineProperty(vR,"__esModule",{value:!0});var ct=we(),xi=Oe(),a8={message:({params:{min:e,max:t}})=>t===void 0?ct.str`must contain at least ${e} valid item(s)`:ct.str`must contain at least ${e} and no more than ${t} valid item(s)`,params:({params:{min:e,max:t}})=>t===void 0?ct._`{minContains: ${e}}`:ct._`{minContains: ${e}, maxContains: ${t}}`},l8={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:a8,code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:i}=e,o,a,{minContains:l,maxContains:c}=n;if(i.opts.next)o=l===void 0?1:l,a=c;else o=1;let u=t.const("len",ct._`${s}.length`);if(e.setParams({min:o,max:a}),a===void 0&&o===0){xi.checkStrictMode(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&o>a){xi.checkStrictMode(i,'"minContains" > "maxContains" is always invalid'),e.fail();return}if(xi.alwaysValidSchema(i,r)){let g=ct._`${u} >= ${o}`;if(a!==void 0)g=ct._`${g} && ${u} <= ${a}`;e.pass(g);return}i.items=!0;let p=t.name("valid");if(a===void 0&&o===1)m(p,()=>t.if(p,()=>t.break()));else if(o===0){if(t.let(p,!0),a!==void 0)t.if(ct._`${s}.length > 0`,h)}else t.let(p,!1),h();e.result(p,()=>e.reset());function h(){let g=t.name("_valid"),y=t.let("count",0);m(g,()=>t.if(g,()=>b(y)))}function m(g,y){t.forRange("i",0,u,(w)=>{e.subschema({keyword:"contains",dataProp:w,dataPropType:xi.Type.Num,compositeRule:!0},g),y()})}function b(g){if(t.code(ct._`${g}++`),a===void 0)t.if(ct._`${g} >= ${o}`,()=>t.assign(p,!0).break());else if(t.if(ct._`${g} > ${a}`,()=>t.assign(p,!1).break()),o===1)t.assign(p,!0);else t.if(ct._`${g} >= ${o}`,()=>t.assign(p,!0))}}};vR.default=l8});var fd=C(function(kR){Object.defineProperty(kR,"__esModule",{value:!0});kR.validateSchemaDeps=kR.validatePropertyDeps=kR.error=void 0;var Ja=we(),ER=Oe(),Kn=on();kR.error={message:({params:{property:e,depsCount:t,deps:r}})=>Ja.str`must have ${t===1?"property":"properties"} ${r} when property ${e} is present`,params:({params:{property:e,depsCount:t,deps:r,missingProperty:n}})=>Ja._`{property: ${e},
|
|
611
611
|
missingProperty: ${n},
|
|
612
612
|
depsCount: ${t},
|
|
613
|
-
deps: ${r}}`};var Vz={keyword:"dependencies",type:"object",schemaType:"object",error:hR.error,code(e){let[t,r]=Wz(e);pR(e,t),mR(e,r)}};function Wz({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let s=Array.isArray(e[n])?t:r;s[n]=e[n]}return[t,r]}function pR(e,t=e.schema){let{gen:r,data:n,it:s}=e;if(Object.keys(t).length===0)return;let i=r.let("missing");for(let o in t){let a=t[o];if(a.length===0)continue;let l=Kn.propertyInData(r,n,o,s.opts.ownProperties);if(e.setParams({property:o,depsCount:a.length,deps:a.join(", ")}),s.allErrors)r.if(l,()=>{for(let c of a)Kn.checkReportMissingProp(e,c)});else r.if(Oa._`${l} && (${Kn.checkMissingProp(e,a,i)})`),Kn.reportMissingProp(e,i),r.else()}}hR.validatePropertyDeps=pR;function mR(e,t=e.schema){let{gen:r,data:n,keyword:s,it:i}=e,o=r.name("valid");for(let a in t){if(dR.alwaysValidSchema(i,t[a]))continue;r.if(Kn.propertyInData(r,n,a,i.opts.ownProperties),()=>{let l=e.subschema({keyword:s,schemaProp:a},o);e.mergeValidEvaluated(l,o)},()=>r.var(o,!0)),e.ok(o)}}hR.validateSchemaDeps=mR;hR.default=Vz});var $R=N(function(xR){Object.defineProperty(xR,"__esModule",{value:!0});var id=$e(),bR=Oe(),Uz={message:"property name must be valid",params:({params:e})=>id._`{propertyName: ${e.propertyName}}`},zz={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:Uz,code(e){let{gen:t,schema:r,data:n,it:s}=e;if(bR.alwaysValidSchema(s,r))return;let i=t.name("valid");t.forIn("key",n,(o)=>{e.setParams({propertyName:o}),e.subschema({keyword:"propertyNames",data:o,dataTypes:["string"],propertyName:o,compositeRule:!0},i),t.if(id.not(i),()=>{if(e.error(!0),!s.allErrors)t.break()})}),e.ok(i)}};xR.default=zz});var zg=N(function(wR){Object.defineProperty(wR,"__esModule",{value:!0});var yi=nn(),yt=$e(),Kz=tn(),bi=Oe(),Yz={message:"must NOT have additional properties",params:({params:e})=>yt._`{additionalProperty: ${e.additionalProperty}}`},Xz={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Yz,code(e){let{gen:t,schema:r,parentSchema:n,data:s,errsCount:i,it:o}=e;if(!i)throw Error("ajv implementation error");let{allErrors:a,opts:l}=o;if(o.props=!0,l.removeAdditional!=="all"&&bi.alwaysValidSchema(o,r))return;let c=yi.allSchemaProperties(n.properties),u=yi.allSchemaProperties(n.patternProperties);p(),e.ok(yt._`${i} === ${Kz.default.errors}`);function p(){t.forIn("key",s,(y)=>{if(!c.length&&!u.length)b(y);else t.if(h(y),()=>b(y))})}function h(y){let w;if(c.length>8){let P=bi.schemaRefOrVal(o,n.properties,"properties");w=yi.isOwnProperty(t,P,y)}else if(c.length)w=yt.or(...c.map((P)=>yt._`${y} === ${P}`));else w=yt.nil;if(u.length)w=yt.or(w,...u.map((P)=>yt._`${yi.usePattern(e,P)}.test(${y})`));return yt.not(w)}function m(y){t.code(yt._`delete ${s}[${y}]`)}function b(y){if(l.removeAdditional==="all"||l.removeAdditional&&r===!1){m(y);return}if(r===!1){if(e.setParams({additionalProperty:y}),e.error(),!a)t.break();return}if(typeof r=="object"&&!bi.alwaysValidSchema(o,r)){let w=t.name("valid");if(l.removeAdditional==="failing")g(y,w,!1),t.if(yt.not(w),()=>{e.reset(),m(y)});else if(g(y,w),!a)t.if(yt.not(w),()=>t.break())}}function g(y,w,P){let S={keyword:"additionalProperties",dataProp:y,dataPropType:bi.Type.Str};if(P===!1)Object.assign(S,{compositeRule:!0,createErrors:!1,allErrors:!1});e.subschema(S,w)}}};wR.default=Xz});var PR=N(function(ER){Object.defineProperty(ER,"__esModule",{value:!0});var SR=va(),od=nn(),Ca=Oe(),vR=zg(),Qz={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:i}=e;if(i.opts.removeAdditional==="all"&&n.additionalProperties===void 0)vR.default.code(new SR.KeywordCxt(i,vR.default,"additionalProperties"));let o=od.allSchemaProperties(r);for(let p of o)i.definedProperties.add(p);if(i.opts.unevaluated&&o.length&&i.props!==!0)i.props=Ca.mergeEvaluated.props(t,Ca.toHash(o),i.props);let a=o.filter((p)=>!Ca.alwaysValidSchema(i,r[p]));if(a.length===0)return;let l=t.name("valid");for(let p of a){if(c(p))u(p);else{if(t.if(od.propertyInData(t,s,p,i.opts.ownProperties)),u(p),!i.allErrors)t.else().var(l,!0);t.endIf()}e.it.definedProperties.add(p),e.ok(l)}function c(p){return i.opts.useDefaults&&!i.compositeRule&&r[p].default!==void 0}function u(p){e.subschema({keyword:"properties",schemaProp:p,dataProp:p},l)}}};ER.default=Qz});var kR=N(function(jR){Object.defineProperty(jR,"__esModule",{value:!0});var ad=nn(),xi=$e(),ld=Oe(),cd=Oe(),t8={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:s,it:i}=e,{opts:o}=i,a=ad.allSchemaProperties(r),l=a.filter((g)=>ld.alwaysValidSchema(i,r[g]));if(a.length===0||l.length===a.length&&(!i.opts.unevaluated||i.props===!0))return;let c=o.strictSchema&&!o.allowMatchingProperties&&s.properties,u=t.name("valid");if(i.props!==!0&&!(i.props instanceof xi.Name))i.props=cd.evaluatedPropsToName(t,i.props);let{props:p}=i;h();function h(){for(let g of a){if(c)m(g);if(i.allErrors)b(g);else t.var(u,!0),b(g),t.if(u)}}function m(g){for(let y in c)if(new RegExp(g).test(y))ld.checkStrictMode(i,`property ${y} matches pattern ${g} (use allowMatchingProperties)`)}function b(g){t.forIn("key",n,(y)=>{t.if(xi._`${ad.usePattern(e,g)}.test(${y})`,()=>{let w=l.includes(g);if(!w)e.subschema({keyword:"patternProperties",schemaProp:g,dataProp:y,dataPropType:cd.Type.Str},u);if(i.opts.unevaluated&&p!==!0)t.assign(xi._`${p}[${y}]`,!0);else if(!w&&!i.allErrors)t.if(xi.not(u),()=>t.break())})})}}};jR.default=t8});var RR=N(function(AR){Object.defineProperty(AR,"__esModule",{value:!0});var _R=Oe(),n8={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if(_R.alwaysValidSchema(n,r)){e.fail();return}let s=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),e.failResult(s,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};AR.default=n8});var NR=N(function(CR){Object.defineProperty(CR,"__esModule",{value:!0});var OR=nn(),i8={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:OR.validateUnion,error:{message:"must match a schema in anyOf"}};CR.default=i8});var JR=N(function(IR){Object.defineProperty(IR,"__esModule",{value:!0});var $i=$e(),TR=Oe(),a8={message:"must match exactly one schema in oneOf",params:({params:e})=>$i._`{passingSchemas: ${e.passing}}`},l8={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:a8,code(e){let{gen:t,schema:r,parentSchema:n,it:s}=e;if(!Array.isArray(r))throw Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,o=t.let("valid",!1),a=t.let("passing",null),l=t.name("_valid");e.setParams({passing:a}),t.block(c),e.result(o,()=>e.reset(),()=>e.error(!0));function c(){i.forEach((u,p)=>{let h;if(TR.alwaysValidSchema(s,u))t.var(l,!0);else h=e.subschema({keyword:"oneOf",schemaProp:p,compositeRule:!0},l);if(p>0)t.if($i._`${l} && ${o}`).assign(o,!1).assign(a,$i._`[${a}, ${p}]`).else();t.if(l,()=>{if(t.assign(o,!0),t.assign(a,p),h)e.mergeEvaluated(h,$i.Name)})})}}};IR.default=l8});var LR=N(function(DR){Object.defineProperty(DR,"__esModule",{value:!0});var MR=Oe(),u8={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw Error("ajv implementation error");let s=t.name("valid");r.forEach((i,o)=>{if(MR.alwaysValidSchema(n,i))return;let a=e.subschema({keyword:"allOf",schemaProp:o},s);e.ok(s),e.mergeEvaluated(a)})}};DR.default=u8});var VR=N(function(qR){Object.defineProperty(qR,"__esModule",{value:!0});var wi=$e(),ud=Oe(),d8={message:({params:e})=>wi.str`must match "${e.ifClause}" schema`,params:({params:e})=>wi._`{failingKeyword: ${e.ifClause}}`},p8={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:d8,code(e){let{gen:t,parentSchema:r,it:n}=e;if(r.then===void 0&&r.else===void 0)ud.checkStrictMode(n,'"if" without "then" and "else" is ignored');let s=FR(n,"then"),i=FR(n,"else");if(!s&&!i)return;let o=t.let("valid",!0),a=t.name("_valid");if(l(),e.reset(),s&&i){let u=t.let("ifClause");e.setParams({ifClause:u}),t.if(a,c("then",u),c("else",u))}else if(s)t.if(a,c("then"));else t.if(wi.not(a),c("else"));e.pass(o,()=>e.error(!0));function l(){let u=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);e.mergeEvaluated(u)}function c(u,p){return()=>{let h=e.subschema({keyword:u},a);if(t.assign(o,a),e.mergeValidEvaluated(h,o),p)t.assign(p,wi._`${u}`);else e.setParams({ifClause:u})}}}};function FR(e,t){let r=e.schema[t];return r!==void 0&&!ud.alwaysValidSchema(e,r)}qR.default=p8});var BR=N(function(HR){Object.defineProperty(HR,"__esModule",{value:!0});var WR=Oe(),h8={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){if(t.if===void 0)WR.checkStrictMode(r,`"${e}" without "if" is ignored`)}};HR.default=h8});var Gg=N(function(UR){Object.defineProperty(UR,"__esModule",{value:!0});var y8=Bg(),b8=sR(),x8=Ug(),$8=cR(),w8=fR(),v8=sd(),S8=$R(),E8=zg(),P8=PR(),j8=kR(),k8=RR(),_8=NR(),A8=JR(),R8=LR(),O8=VR(),C8=BR();function N8(e=!1){let t=[k8.default,_8.default,A8.default,R8.default,O8.default,C8.default,S8.default,E8.default,v8.default,P8.default,j8.default];if(e)t.push(b8.default,$8.default);else t.push(y8.default,x8.default);return t.push(w8.default),t}UR.default=N8});var Kg=N(function(KR){Object.defineProperty(KR,"__esModule",{value:!0});KR.dynamicAnchor=void 0;var Na=$e(),I8=tn(),fd=nc(),zR=Qf(),J8={keyword:"$dynamicAnchor",schemaType:"string",code:(e)=>GR(e,e.schema)};function GR(e,t){let{gen:r,it:n}=e;n.schemaEnv.root.dynamicAnchors[t]=!0;let s=Na._`${I8.default.dynamicAnchors}${Na.getProperty(t)}`,i=n.errSchemaPath==="#"?n.validateName:M8(e);r.if(Na._`!${s}`,()=>r.assign(s,i))}KR.dynamicAnchor=GR;function M8(e){let{schemaEnv:t,schema:r,self:n}=e.it,{root:s,baseId:i,localRefs:o,meta:a}=t.root,{schemaId:l}=n.opts,c=new fd.SchemaEnv({schema:r,schemaId:l,root:s,baseId:i,localRefs:o,meta:a});return fd.compileSchema.call(n,c),zR.getValidate(e,c)}KR.default=J8});var Yg=N(function(ZR){Object.defineProperty(ZR,"__esModule",{value:!0});ZR.dynamicRef=void 0;var dd=$e(),L8=tn(),pd=Qf(),F8={keyword:"$dynamicRef",schemaType:"string",code:(e)=>XR(e,e.schema)};function XR(e,t){let{gen:r,keyword:n,it:s}=e;if(t[0]!=="#")throw Error(`"${n}" only supports hash fragment reference`);let i=t.slice(1);if(s.allErrors)o();else{let l=r.let("valid",!1);o(l),e.ok(l)}function o(l){if(s.schemaEnv.root.dynamicAnchors[i]){let c=r.let("_v",dd._`${L8.default.dynamicAnchors}${dd.getProperty(i)}`);r.if(c,a(c,l),a(s.validateName,l))}else a(s.validateName,l)()}function a(l,c){return c?()=>r.block(()=>{pd.callRef(e,l),r.let(c,!0)}):()=>pd.callRef(e,l)}}ZR.dynamicRef=XR;ZR.default=F8});var nO=N(function(rO){Object.defineProperty(rO,"__esModule",{value:!0});var eO=Kg(),tO=Oe(),V8={keyword:"$recursiveAnchor",schemaType:"boolean",code(e){if(e.schema)eO.dynamicAnchor(e,"");else tO.checkStrictMode(e.it,"$recursiveAnchor: false is ignored")}};rO.default=V8});var oO=N(function(iO){Object.defineProperty(iO,"__esModule",{value:!0});var sO=Yg(),H8={keyword:"$recursiveRef",schemaType:"string",code:(e)=>sO.dynamicRef(e,e.schema)};iO.default=H8});var lO=N(function(aO){Object.defineProperty(aO,"__esModule",{value:!0});var U8=Kg(),z8=Yg(),G8=nO(),K8=oO(),Y8=[U8.default,z8.default,G8.default,K8.default];aO.default=Y8});var uO=N(function(cO){Object.defineProperty(cO,"__esModule",{value:!0});var md=sd(),Z8={keyword:"dependentRequired",type:"object",schemaType:"object",error:md.error,code:(e)=>md.validatePropertyDeps(e)};cO.default=Z8});var pO=N(function(dO){Object.defineProperty(dO,"__esModule",{value:!0});var fO=sd(),e9={keyword:"dependentSchemas",type:"object",schemaType:"object",code:(e)=>fO.validateSchemaDeps(e)};dO.default=e9});var gO=N(function(hO){Object.defineProperty(hO,"__esModule",{value:!0});var mO=Oe(),r9={keyword:["maxContains","minContains"],type:"array",schemaType:"number",code({keyword:e,parentSchema:t,it:r}){if(t.contains===void 0)mO.checkStrictMode(r,`"${e}" without "contains" is ignored`)}};hO.default=r9});var bO=N(function(yO){Object.defineProperty(yO,"__esModule",{value:!0});var s9=uO(),i9=pO(),o9=gO(),a9=[s9.default,i9.default,o9.default];yO.default=a9});var $O=N(function(xO){Object.defineProperty(xO,"__esModule",{value:!0});var tr=$e(),hd=Oe(),c9=tn(),u9={message:"must NOT have unevaluated properties",params:({params:e})=>tr._`{unevaluatedProperty: ${e.unevaluatedProperty}}`},f9={keyword:"unevaluatedProperties",type:"object",schemaType:["boolean","object"],trackErrors:!0,error:u9,code(e){let{gen:t,schema:r,data:n,errsCount:s,it:i}=e;if(!s)throw Error("ajv implementation error");let{allErrors:o,props:a}=i;if(a instanceof tr.Name)t.if(tr._`${a} !== true`,()=>t.forIn("key",n,(p)=>t.if(c(a,p),()=>l(p))));else if(a!==!0)t.forIn("key",n,(p)=>a===void 0?l(p):t.if(u(a,p),()=>l(p)));i.props=!0,e.ok(tr._`${s} === ${c9.default.errors}`);function l(p){if(r===!1){if(e.setParams({unevaluatedProperty:p}),e.error(),!o)t.break();return}if(!hd.alwaysValidSchema(i,r)){let h=t.name("valid");if(e.subschema({keyword:"unevaluatedProperties",dataProp:p,dataPropType:hd.Type.Str},h),!o)t.if(tr.not(h),()=>t.break())}}function c(p,h){return tr._`!${p} || !${p}[${h}]`}function u(p,h){let m=[];for(let b in p)if(p[b]===!0)m.push(tr._`${h} !== ${b}`);return tr.and(...m)}}};xO.default=f9});var vO=N(function(wO){Object.defineProperty(wO,"__esModule",{value:!0});var Rr=$e(),gd=Oe(),p9={message:({params:{len:e}})=>Rr.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>Rr._`{limit: ${e}}`},m9={keyword:"unevaluatedItems",type:"array",schemaType:["boolean","object"],error:p9,code(e){let{gen:t,schema:r,data:n,it:s}=e,i=s.items||0;if(i===!0)return;let o=t.const("len",Rr._`${n}.length`);if(r===!1)e.setParams({len:i}),e.fail(Rr._`${o} > ${i}`);else if(typeof r=="object"&&!gd.alwaysValidSchema(s,r)){let l=t.var("valid",Rr._`${o} <= ${i}`);t.if(Rr.not(l),()=>a(l,i)),e.ok(l)}s.items=!0;function a(l,c){t.forRange("i",c,o,(u)=>{if(e.subschema({keyword:"unevaluatedItems",dataProp:u,dataPropType:gd.Type.Num},l),!s.allErrors)t.if(Rr.not(l),()=>t.break())})}}};wO.default=m9});var EO=N(function(SO){Object.defineProperty(SO,"__esModule",{value:!0});var g9=$O(),y9=vO(),b9=[g9.default,y9.default];SO.default=b9});var jO=N(function(PO){Object.defineProperty(PO,"__esModule",{value:!0});var Pe=$e(),$9={message:({schemaCode:e})=>Pe.str`must match format "${e}"`,params:({schemaCode:e})=>Pe._`{format: ${e}}`},w9={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:$9,code(e,t){let{gen:r,data:n,$data:s,schema:i,schemaCode:o,it:a}=e,{opts:l,errSchemaPath:c,schemaEnv:u,self:p}=a;if(!l.validateFormats)return;if(s)h();else m();function h(){let b=r.scopeValue("formats",{ref:p.formats,code:l.code.formats}),g=r.const("fDef",Pe._`${b}[${o}]`),y=r.let("fType"),w=r.let("format");r.if(Pe._`typeof ${g} == "object" && !(${g} instanceof RegExp)`,()=>r.assign(y,Pe._`${g}.type || "string"`).assign(w,Pe._`${g}.validate`),()=>r.assign(y,Pe._`"string"`).assign(w,g)),e.fail$data(Pe.or(P(),S()));function P(){if(l.strictSchema===!1)return Pe.nil;return Pe._`${o} && !${w}`}function S(){let E=u.$async?Pe._`(${g}.async ? await ${w}(${n}) : ${w}(${n}))`:Pe._`${w}(${n})`,k=Pe._`(typeof ${w} == "function" ? ${E} : ${w}.test(${n}))`;return Pe._`${w} && ${w} !== true && ${y} === ${t} && !${k}`}}function m(){let b=p.formats[i];if(!b){P();return}if(b===!0)return;let[g,y,w]=S(b);if(g===t)e.pass(E());function P(){if(l.strictSchema===!1){p.logger.warn(k());return}throw Error(k());function k(){return`unknown format "${i}" ignored in schema at path "${c}"`}}function S(k){let A=k instanceof RegExp?Pe.regexpCode(k):l.code.formats?Pe._`${l.code.formats}${Pe.getProperty(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:k,code:A});if(typeof k=="object"&&!(k instanceof RegExp))return[k.type||"string",k.validate,Pe._`${R}.validate`];return["string",k,R]}function E(){if(typeof b=="object"&&!(b instanceof RegExp)&&b.async){if(!u.$async)throw Error("async format in sync schema");return Pe._`await ${w}(${n})`}return typeof y=="function"?Pe._`${w}(${n})`:Pe._`${w}.test(${n})`}}}};PO.default=w9});var Xg=N(function(kO){Object.defineProperty(kO,"__esModule",{value:!0});var S9=jO(),E9=[S9.default];kO.default=E9});var Zg=N(function(_O){Object.defineProperty(_O,"__esModule",{value:!0});_O.contentVocabulary=_O.metadataVocabulary=void 0;_O.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];_O.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var OO=N(function(RO){Object.defineProperty(RO,"__esModule",{value:!0});var k9=Wg(),_9=Hg(),A9=Gg(),R9=lO(),O9=bO(),C9=EO(),N9=Xg(),yd=Zg(),T9=[R9.default,k9.default,_9.default,(0,A9.default)(!0),N9.default,yd.metadataVocabulary,yd.contentVocabulary,O9.default,C9.default];RO.default=T9});var IO=N(function(NO){Object.defineProperty(NO,"__esModule",{value:!0});NO.DiscrError=void 0;var CO;(function(e){e.Tag="tag",e.Mapping="mapping"})(CO||(NO.DiscrError=CO={}))});var Qg=N(function(MO){Object.defineProperty(MO,"__esModule",{value:!0});var on=$e(),Ta=IO(),bd=nc(),J9=Ea(),JO=Oe(),M9={message:({params:{discrError:e,tagName:t}})=>e===Ta.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>on._`{error: ${e}, tag: ${r}, tagValue: ${t}}`},D9={keyword:"discriminator",type:"object",schemaType:"object",error:M9,code(e){let{gen:t,data:r,schema:n,parentSchema:s,it:i}=e,{oneOf:o}=s;if(!i.opts.discriminator)throw Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw Error("discriminator: requires propertyName");if(n.mapping)throw Error("discriminator: mapping is not supported");if(!o)throw Error("discriminator: requires oneOf keyword");let l=t.let("valid",!1),c=t.const("tag",on._`${r}${on.getProperty(a)}`);t.if(on._`typeof ${c} == "string"`,()=>u(),()=>e.error(!1,{discrError:Ta.DiscrError.Tag,tag:c,tagName:a})),e.ok(l);function u(){let m=h();t.if(!1);for(let b in m)t.elseIf(on._`${c} === ${b}`),t.assign(l,p(m[b]));t.else(),e.error(!1,{discrError:Ta.DiscrError.Mapping,tag:c,tagName:a}),t.endIf()}function p(m){let b=t.name("valid"),g=e.subschema({keyword:"oneOf",schemaProp:m},b);return e.mergeEvaluated(g,on.Name),b}function h(){var m;let b={},g=w(s),y=!0;for(let E=0;E<o.length;E++){let k=o[E];if((k===null||k===void 0?void 0:k.$ref)&&!JO.schemaHasRulesButRef(k,i.self.RULES)){let R=k.$ref;if(k=bd.resolveRef.call(i.self,i.schemaEnv.root,i.baseId,R),k instanceof bd.SchemaEnv)k=k.schema;if(k===void 0)throw new J9.default(i.opts.uriResolver,i.baseId,R)}let A=(m=k===null||k===void 0?void 0:k.properties)===null||m===void 0?void 0:m[a];if(typeof A!="object")throw Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);y=y&&(g||w(k)),P(A,E)}if(!y)throw Error(`discriminator: "${a}" must be required`);return b;function w({required:E}){return Array.isArray(E)&&E.includes(a)}function P(E,k){if(E.const)S(E.const,k);else if(E.enum)for(let A of E.enum)S(A,k);else throw Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function S(E,k){if(typeof E!="string"||E in b)throw Error(`discriminator: "${a}" values must be unique strings`);b[E]=k}}}};MO.default=D9});var DO=N(function(Sae,F9){F9.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/schema",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/core":!0,"https://json-schema.org/draft/2020-12/vocab/applicator":!0,"https://json-schema.org/draft/2020-12/vocab/unevaluated":!0,"https://json-schema.org/draft/2020-12/vocab/validation":!0,"https://json-schema.org/draft/2020-12/vocab/meta-data":!0,"https://json-schema.org/draft/2020-12/vocab/format-annotation":!0,"https://json-schema.org/draft/2020-12/vocab/content":!0},$dynamicAnchor:"meta",title:"Core and Validation specifications meta-schema",allOf:[{$ref:"meta/core"},{$ref:"meta/applicator"},{$ref:"meta/unevaluated"},{$ref:"meta/validation"},{$ref:"meta/meta-data"},{$ref:"meta/format-annotation"},{$ref:"meta/content"}],type:["object","boolean"],$comment:"This meta-schema also defines keywords that have appeared in previous drafts in order to prevent incompatible extensions as they remain in common use.",properties:{definitions:{$comment:'"definitions" has been replaced by "$defs".',type:"object",additionalProperties:{$dynamicRef:"#meta"},deprecated:!0,default:{}},dependencies:{$comment:'"dependencies" has been split and replaced by "dependentSchemas" and "dependentRequired" in order to serve their differing semantics.',type:"object",additionalProperties:{anyOf:[{$dynamicRef:"#meta"},{$ref:"meta/validation#/$defs/stringArray"}]},deprecated:!0,default:{}},$recursiveAnchor:{$comment:'"$recursiveAnchor" has been replaced by "$dynamicAnchor".',$ref:"meta/core#/$defs/anchorString",deprecated:!0},$recursiveRef:{$comment:'"$recursiveRef" has been replaced by "$dynamicRef".',$ref:"meta/core#/$defs/uriReferenceString",deprecated:!0}}}});var LO=N(function(Eae,q9){q9.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/applicator",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/applicator":!0},$dynamicAnchor:"meta",title:"Applicator vocabulary meta-schema",type:["object","boolean"],properties:{prefixItems:{$ref:"#/$defs/schemaArray"},items:{$dynamicRef:"#meta"},contains:{$dynamicRef:"#meta"},additionalProperties:{$dynamicRef:"#meta"},properties:{type:"object",additionalProperties:{$dynamicRef:"#meta"},default:{}},patternProperties:{type:"object",additionalProperties:{$dynamicRef:"#meta"},propertyNames:{format:"regex"},default:{}},dependentSchemas:{type:"object",additionalProperties:{$dynamicRef:"#meta"},default:{}},propertyNames:{$dynamicRef:"#meta"},if:{$dynamicRef:"#meta"},then:{$dynamicRef:"#meta"},else:{$dynamicRef:"#meta"},allOf:{$ref:"#/$defs/schemaArray"},anyOf:{$ref:"#/$defs/schemaArray"},oneOf:{$ref:"#/$defs/schemaArray"},not:{$dynamicRef:"#meta"}},$defs:{schemaArray:{type:"array",minItems:1,items:{$dynamicRef:"#meta"}}}}});var FO=N(function(Pae,V9){V9.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/unevaluated",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/unevaluated":!0},$dynamicAnchor:"meta",title:"Unevaluated applicator vocabulary meta-schema",type:["object","boolean"],properties:{unevaluatedItems:{$dynamicRef:"#meta"},unevaluatedProperties:{$dynamicRef:"#meta"}}}});var qO=N(function(jae,W9){W9.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/content",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/content":!0},$dynamicAnchor:"meta",title:"Content vocabulary meta-schema",type:["object","boolean"],properties:{contentEncoding:{type:"string"},contentMediaType:{type:"string"},contentSchema:{$dynamicRef:"#meta"}}}});var VO=N(function(kae,H9){H9.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/core",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/core":!0},$dynamicAnchor:"meta",title:"Core vocabulary meta-schema",type:["object","boolean"],properties:{$id:{$ref:"#/$defs/uriReferenceString",$comment:"Non-empty fragments not allowed.",pattern:"^[^#]*#?$"},$schema:{$ref:"#/$defs/uriString"},$ref:{$ref:"#/$defs/uriReferenceString"},$anchor:{$ref:"#/$defs/anchorString"},$dynamicRef:{$ref:"#/$defs/uriReferenceString"},$dynamicAnchor:{$ref:"#/$defs/anchorString"},$vocabulary:{type:"object",propertyNames:{$ref:"#/$defs/uriString"},additionalProperties:{type:"boolean"}},$comment:{type:"string"},$defs:{type:"object",additionalProperties:{$dynamicRef:"#meta"}}},$defs:{anchorString:{type:"string",pattern:"^[A-Za-z_][-A-Za-z0-9._]*$"},uriString:{type:"string",format:"uri"},uriReferenceString:{type:"string",format:"uri-reference"}}}});var WO=N(function(_ae,B9){B9.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/format-annotation",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/format-annotation":!0},$dynamicAnchor:"meta",title:"Format vocabulary meta-schema for annotation results",type:["object","boolean"],properties:{format:{type:"string"}}}});var HO=N(function(Aae,U9){U9.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/meta-data",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/meta-data":!0},$dynamicAnchor:"meta",title:"Meta-data vocabulary meta-schema",type:["object","boolean"],properties:{title:{type:"string"},description:{type:"string"},default:!0,deprecated:{type:"boolean",default:!1},readOnly:{type:"boolean",default:!1},writeOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0}}}});var BO=N(function(Rae,z9){z9.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/validation",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/validation":!0},$dynamicAnchor:"meta",title:"Validation vocabulary meta-schema",type:["object","boolean"],properties:{type:{anyOf:[{$ref:"#/$defs/simpleTypes"},{type:"array",items:{$ref:"#/$defs/simpleTypes"},minItems:1,uniqueItems:!0}]},const:!0,enum:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/$defs/nonNegativeInteger"},minLength:{$ref:"#/$defs/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},maxItems:{$ref:"#/$defs/nonNegativeInteger"},minItems:{$ref:"#/$defs/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},maxContains:{$ref:"#/$defs/nonNegativeInteger"},minContains:{$ref:"#/$defs/nonNegativeInteger",default:1},maxProperties:{$ref:"#/$defs/nonNegativeInteger"},minProperties:{$ref:"#/$defs/nonNegativeIntegerDefault0"},required:{$ref:"#/$defs/stringArray"},dependentRequired:{type:"object",additionalProperties:{$ref:"#/$defs/stringArray"}}},$defs:{nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{$ref:"#/$defs/nonNegativeInteger",default:0},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}}}});var zO=N(function(UO){Object.defineProperty(UO,"__esModule",{value:!0});var G9=DO(),K9=LO(),Y9=FO(),X9=qO(),Z9=VO(),Q9=WO(),eG=HO(),tG=BO(),rG=["/properties"];function nG(e){return[G9,K9,Y9,X9,Z9,t(this,Q9),eG,t(this,tG)].forEach((r)=>this.addMetaSchema(r,void 0,!1)),this;function t(r,n){return e?r.$dataMetaSchema(n,rG):n}}UO.default=nG});var ry=N(function(Or,ty){Object.defineProperty(Or,"__esModule",{value:!0});Or.MissingRefError=Or.ValidationError=Or.CodeGen=Or.Name=Or.nil=Or.stringify=Or.str=Or._=Or.KeywordCxt=Or.Ajv2020=void 0;var iG=Vg(),oG=OO(),aG=Qg(),lG=zO(),ey="https://json-schema.org/draft/2020-12/schema";class oc extends iG.default{constructor(e={}){super({...e,dynamicRef:!0,next:!0,unevaluated:!0})}_addVocabularies(){if(super._addVocabularies(),oG.default.forEach((e)=>this.addVocabulary(e)),this.opts.discriminator)this.addKeyword(aG.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema();let{$data:e,meta:t}=this.opts;if(!t)return;lG.default.call(this,e),this.refs["http://json-schema.org/schema"]=ey}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ey)?ey:void 0)}}Or.Ajv2020=oc;ty.exports=Or=oc;ty.exports.Ajv2020=oc;Object.defineProperty(Or,"__esModule",{value:!0});Or.default=oc;var cG=va();Object.defineProperty(Or,"KeywordCxt",{enumerable:!0,get:function(){return cG.KeywordCxt}});var Ia=$e();Object.defineProperty(Or,"_",{enumerable:!0,get:function(){return Ia._}});Object.defineProperty(Or,"str",{enumerable:!0,get:function(){return Ia.str}});Object.defineProperty(Or,"stringify",{enumerable:!0,get:function(){return Ia.stringify}});Object.defineProperty(Or,"nil",{enumerable:!0,get:function(){return Ia.nil}});Object.defineProperty(Or,"Name",{enumerable:!0,get:function(){return Ia.Name}});Object.defineProperty(Or,"CodeGen",{enumerable:!0,get:function(){return Ia.CodeGen}});var uG=tc();Object.defineProperty(Or,"ValidationError",{enumerable:!0,get:function(){return uG.default}});var fG=Ea();Object.defineProperty(Or,"MissingRefError",{enumerable:!0,get:function(){return fG.default}})});import{existsSync as xd,readFileSync as mG}from"node:fs";import{createRequire as GO}from"node:module";import{isAbsolute as hG,relative as gG,resolve as ny}from"node:path";import{fileURLToPath as KO,pathToFileURL as yG}from"node:url";function ac(e){return JSON.parse(mG(e,"utf8"))}async function YO(e){let t=ny(e),r=kn(t),n=ny(t,"project.schema.json");if(!xd(r))throw Error(`project.json not found in ${t}`);if(!xd(n))throw Error(`project.schema.json not found in ${t} — run \`jx schema\` to generate it from `+"project.json#/extensions");let s=ac(r),i=ac(n);i.$id=yG(n).href;let o;try{({default:o}=await Promise.resolve().then(() => gr(ry(),1)))}catch(u){throw Error("Project validation requires ajv: bun add ajv",{cause:u})}let l=await new o({allErrors:!0,loadSchema:(u)=>bG(u,t),strict:!1}).compileAsync(i),c=l(s);return{errors:l.errors??null,valid:c}}async function bG(e,t){if(!e.startsWith("file:"))throw Error(`Cannot resolve schema ref "${e}": only project-relative file refs are loadable (canonical URIs must resolve from already-loaded fragments)`);let r=KO(e),n=gG(t,r);if(n.startsWith("..")||hG(n))throw Error(`Schema ref "${e}" escapes the project root ${t}`);if(xd(r))return ac(r);let s=n.split("\\").join("/"),i="node_modules/",o=s.lastIndexOf(i);if(o===-1)throw Error(`Schema ref "${e}" does not exist`);let a=s.slice(o+i.length),l="@jxsuite/schema/",c;try{c=GO(ny(t,"package.json")).resolve(a)}catch(u){if(!a.startsWith(l))throw Error(`Schema ref "${e}" does not exist and "${a}" is not resolvable from the `+"project — is the package installed?",{cause:u});try{c=GO(import.meta.url).resolve(a)}catch(p){let h=KO(new URL(`../${a.slice(l.length)}`,import.meta.url));if(xd(h))return ac(h);throw Error(`Schema ref "${e}" does not exist and "${a}" is not resolvable from the project or this host's core`,{cause:p})}}return ac(c)}var XO=D(()=>{Io()});function Xn(e){return B(e.attributes)?e.attributes:{}}function rr(e,t){let r=Xn(e)[t];return O(r)?r:null}function Et(e){return O(e.tagName)?e.tagName.toLowerCase():""}function mr(e,t="the popover"){let r=O(e.id)?e.id:rr(e,"id");if(r)return`#${r}`;let n=Et(e);return n===""?t:`the <${n}>`}function wG(e){let t=Xn(e).popover;return O(t)?t:null}function QO(e){let t=new Set,r=new Set;for(let n of e){let s=n!==null&&O(n.tagName)?n.tagName:"";if(n===null||!s.includes("-"))continue;if(sy(n))t.add(s);let i=n.observedAttributes;if(Array.isArray(i)&&vG.every((o)=>i.includes(o)))r.add(s)}return{invokerTags:r,popoverTags:t}}function sy(e){return"popover"in Xn(e)||"popover"in e}function lc(e,t){return sy(e)||(t?.popoverTags?.has(Et(e))??!1)}function vi(e){if(O(e.id)&&e.id!=="")return e.id;let t=rr(e,"id");return t===""?null:t}function*Yn(e,t=[],r=null,n){yield{enclosing:r,node:e,path:t};let s=lc(e,n)?e:r,{children:i}=e;if(Array.isArray(i)){for(let[l,c]of i.entries())if(V(c))yield*Yn(c,[...t,"children",l],s,n)}else if(B(i)&&yr(i.map))yield*Yn(i.map,[...t,"children","map"],s,n);let o=yr(e.map)?e.map:null;if(o)yield*Yn(o,[...t,"map"],s,n);let a=B(e.cases)?e.cases:{};for(let[l,c]of Object.entries(a))if(V(c))yield*Yn(c,[...t,"cases",l],s,n)}function iy(e,t){let r=[];for(let{node:n}of Yn(e,[],null,t)){if(!lc(n,t))continue;let s=vi(n);if(s!==null&&!r.includes(s))r.push(s)}return r}function $d(e){return e.startsWith("@")}function eC(e){return e.startsWith(":")||e.startsWith("&")||e.startsWith(".")||e.startsWith("[")}function pr(e,t){let r=e?.[t];if(r===void 0||_i(r)||Array.isArray(r))return null;return String(r)}function tC(e){for(let[t,r]of Object.entries(e??{})){if(!_i(r))continue;if(eC(t)&&t.includes(":popover-open")&&pr(r,"display")!==null)return!0;if($d(t)&&tC(r))return!0}return!1}function rC(e){for(let[t,r]of Object.entries(e??{})){if(!_i(r))continue;if(eC(t)&&t.includes(":popover-open"))return!0;if($d(t)&&rC(r))return!0}return!1}function EG(e){return SG.some((t)=>pr(e,t)!==null)}function PG(e){if(!e)return[];let t=[];for(let[r,n]of Object.entries(e))if($d(r)&&_i(n)&&pr(n,"display")!==null)t.push(r);return t}function nC(e){if(!e)return[];let t=[],r=pr(e,"transition");if(r!==null)t.push(r);for(let[n,s]of Object.entries(e))if($d(n)&&_i(s))t.push(...nC(s));return t}function jG(e){if(!e)return!1;if(pr(e,"positionAnchor")!==null||pr(e,"position-anchor")!==null)return!0;return["top","left","right","bottom","inset","insetBlockStart","insetInlineStart"].some((t)=>(pr(e,t)??"").includes("anchor("))}function kG(e){if(!e)return!1;if(pr(e,"positionArea")!==null||pr(e,"position-area")!==null||pr(e,"positionTryFallbacks")!==null||pr(e,"position-try-fallbacks")!==null)return!0;return Object.keys(e).some((t)=>t.startsWith("@supports"))}function sC(e,t){let r=[...Yn(e,[],null,t)],n=iy(e,t),s=r.some(({node:a})=>lc(a,t)),i=new Set;for(let{node:a}of r)if(ZO.has(Et(a))){let l=rr(a,"popovertarget");if(l!==null)i.add(l)}let o=[];for(let{enclosing:a,node:l,path:c}of r)if(o.push(..._G(l,c,a,n,s,t)),sy(l))o.push(...AG(l,c,i));return o}function _G(e,t,r,n,s,i){let o=[],a=Et(e),l=rr(e,"popovertarget"),c=ZO.has(a)||(i?.invokerTags?.has(a)??!1);if(l!==null&&!c)return o.push({detail:"`popovertarget` and `popovertargetaction` come from the `PopoverTargetAttributes` IDL mixin, which HTML includes into `HTMLButtonElement` and `HTMLInputElement` and into nothing else. Elsewhere they parse and do nothing. A link inside an open popover "+"dismisses it by navigating away, which is why this looks like it works — but it does "+`not for a new tab or a same-page fragment. Remove both attributes. ${it}`,fix:"invoker",message:`<${a||"element"}> carries popovertarget, which only <button> and <input> support.`,path:t,rule:"invoker-not-button",severity:"error"}),o;if(l!==null){if(s&&!n.includes(l)){let u=n.length>0?`The popovers here are: ${n.map((p)=>`"${p}"`).join(", ")}. `:"";o.push({detail:`No element in this document declares \`popover\` with the id "${l}". ${u}A target that names nothing does nothing, silently. ${it}`,message:`popovertarget="${l}" names no popover in this document.`,path:t,rule:"target-missing",severity:"error"})}else if(r!==null&&vi(r)!==null&&vi(r)!==l)o.push({detail:`This control is inside ${mr(r)} but targets "${l}". Dismissing a different popover leaves the one the reader is looking at open. This is usually a copy-paste between two panels in the same file. ${it}`,message:`A control inside ${mr(r)} targets "${l}" instead.`,path:t,rule:"target-mismatch",severity:"warn"})}if(a==="a"&&r!==null&&l===null){let u=rr(e,"href")??(O(e.href)?e.href:null),p=rr(e,"target")==="_blank",h=u!==null&&u.includes("#");if(p||h){let m=p?"it opens a new tab, so the panel stays open on the page behind it. ":"it is a same-document fragment, so the page scrolls behind the open panel. ";o.push({detail:`A link inside a panel normally dismisses it by navigating away. This one does not: ${m}`+"There is no declarative fix — a link cannot carry `popovertarget`. Move it out of the "+`panel, make it a <button>, or accept it deliberately. ${it}`,message:`A link inside ${mr(r)} does not dismiss it.`,path:t,rule:"link-does-not-dismiss",severity:"warn"})}}return o}function AG(e,t,r){let n=[],{style:s}=e,i=mr(e),o=wG(e);if(o!==null&&o!==""&&!$G.some((c)=>c===o))n.push({detail:"`popover` is an enumerated attribute taking `auto`, `manual` or `hint`. Anything else falls back to the invalid-value default `manual`, which gives up light dismiss and gives "+`up Escape — so the panel opens and there is no way to close it. Write "auto". ${it}`,fix:"mode",message:`${i} declares popover="${o}", which is not one of auto, manual or hint.`,path:t,rule:"invalid-mode",severity:"error"});else if(Yt(Xn(e).popover))n.push({detail:`\`popover\` carries its value in its text, so a boolean is not the right shape. Written as \`true\` it reaches two of the compiler's emitters as \`popover="true"\`, which is not one of the three keywords, so HTML falls back to \`manual\`: no light dismiss, no Escape, and the trigger stops toggling. Write "auto". ${it}`,fix:"mode",message:`${i} writes popover as a boolean.`,path:t,rule:"invalid-mode",severity:"error"});let a=pr(s,"display");if(a!==null&&a!=="revert"&&a!=="revert-layer")n.push({detail:"A closed popover is hidden by the browser's own `[popover]:not(:popover-open) { display: none }`. That rule is UA-origin, so any author `display` beats it at any specificity, and "+"the panel is laid out on every page whether it is open or not — usually parked off the "+`side of the viewport by the transform meant to animate it, so nothing looks wrong until you scroll sideways. \`display\` belongs in \`:popover-open\` and nowhere else. ${it}`,fix:"display",message:`${i} sets display in its base rule.`,path:t,rule:"base-display",severity:"error"});for(let c of PG(s))n.push({detail:`The same defect as a base \`display\`, arriving through \`${c}\` and therefore only at `+"one width — which is what makes it hard to see. Gate the TRIGGER on a breakpoint, never "+`the panel: the popover mechanism is what hides the panel. ${it}`,fix:"display",message:`${i} sets display inside ${c}.`,path:t,rule:"breakpoint-display",severity:"error"});if(pr(s,"visibility")!==null)n.push({detail:`A second hiding mechanism the browser already provides. Once \`display\` leaves the base rule this one only adds a frame of flicker on open, and it hides the element from assistive technology in a way \`display: none\` already did. ${it}`,fix:"display",message:`${i} also hides itself with visibility.`,path:t,rule:"base-visibility",severity:"warn"});if(!rC(s))n.push({detail:"Nothing changes when it opens, so no transition on it can run and — if `display` is not "+"in the base rule — the panel has no `display` at all while open. This is usually a panel "+`that was styled before it was made a popover. ${it}`,message:`${i} has no :popover-open rule.`,path:t,rule:"no-open-rule",severity:"warn"});else if(!tC(s)&&a===null&&EG(s))n.push({detail:`${i} declares flex or grid properties, but neither its base rule nor its `+"`:popover-open` rule sets a `display` for them to apply to — and the base rule must not "+`(that is what keeps the closed panel hidden). So it opens with the UA's \`display: block\` and the layout silently does nothing. Put \`display: flex\` in \`:popover-open\`. ${it}`,fix:"open-display",message:`${i} is laid out with flex or grid but never sets display.`,path:t,rule:"no-open-display",severity:"error"});for(let c of nC(s))if(c.includes("display")&&!c.includes("overlay")){n.push({detail:"`display …allow-discrete` keeps the box alive while it animates out; `overlay "+"…allow-discrete` is what keeps it in the TOP LAYER for those same milliseconds. "+`Without it the panel drops behind the page content and the backdrop disappears a frame early, so the exit reads as a flicker rather than an animation. ${it}`,message:`${i} transitions display but not overlay.`,path:t,rule:"cut-exit",severity:"warn"});break}if(jG(s)&&!kG(s))n.push({detail:"When `anchor()` does not resolve, every inset it feeds computes to `auto` — and a "+`\`position: fixed\` box with four \`auto\` insets falls back to its STATIC position, which for a panel declared inside a header is in the middle of the header. Use \`position-area\` with \`position-try-fallbacks\`, or add a \`@supports\` block that positions it without anchors. ${it}`,message:`${i} is anchor-positioned with no fallback.`,path:t,rule:"unsafe-anchor",severity:"warn"});let l=vi(e);if(l!==null&&!r.has(l))n.push({detail:`No \`<button>\` or \`<input>\` in this document names it with \`popovertarget\`. If it is opened from another file or from a function that calls \`showPopover()\`, this is fine; otherwise there is no way for a reader to open it. ${it}`,message:`${i} has no invoker in this document.`,path:t,rule:"no-invoker",severity:"warn"});return n}var $G,ZO,vG,SG,it="See docs/framework/concepts/overlays.";var wd=D(()=>{ve();$G=["auto","manual","hint"],ZO=new Set(["button","input"]);vG=["popovertarget","popovertargetaction","command","commandfor"];SG=["flexDirection","flex-direction","alignItems","align-items","justifyContent","justify-content","flexWrap","flex-wrap","gridTemplateColumns","grid-template-columns","gridTemplateRows","grid-template-rows","gap"]});function La(e,t){let r=Xn(e),n=t in r?r[t]:e[t];if(n===void 0||n===null)return{kind:"absent"};if(We(n)||B(n))return{kind:"bound"};if(O(n))return n.includes("${")?{kind:"bound"}:{kind:"text",text:n};return{isTrue:n===!0,kind:"other"}}function Ma(e,t){let r=La(e,t);return r.kind==="text"&&r.text.trim()!==""?r.text:null}function nr(e,t){return La(e,t).kind!=="absent"}function Si(e){let t=La(e,"role");if(t.kind==="bound")return Da;return t.kind==="text"?t.text.trim().toLowerCase().split(/\s+/)[0]:null}function vd(e){let t=La(e,"id");if(t.kind==="bound")return Da;return t.kind==="text"&&t.text!==""?t.text:null}function an(e,t){let r=La(e,t);return r.kind==="bound"||r.kind==="text"&&r.text.trim()!==""}function Sd(e){let t=e.textContent;if(O(t)){if(t.trim()!=="")return!0}else if(t!==void 0&&t!==null)return!0;if(an(e,"aria-label")||nr(e,"aria-labelledby"))return!0;if(Et(e)==="img"&&(an(e,"alt")||an(e,"title")))return!0;if(Et(e)==="slot")return!0;let{children:r}=e;if(Array.isArray(r)){for(let s of r)if(O(s)){if(s.trim()!=="")return!0}else if(V(s)&&Sd(s))return!0}else if(r!=null)return!0;if(B(e.map))return!0;return(B(e.cases)?Object.values(e.cases):[]).some((s)=>yr(s)&&Sd(s))}function*Ja(e,t=[],r=[],n=[]){yield{node:e,path:t,roles:r,tags:n};let s=[...r,Si(e)],i=[...n,Et(e)],{children:o}=e;if(Array.isArray(o)){for(let[a,l]of o.entries())if(V(l))yield*Ja(l,[...t,"children",a],s,i)}else if(B(o)&&yr(o.map))yield*Ja(o.map,[...t,"children","map"],s,i);if(yr(e.map))yield*Ja(e.map,[...t,"map"],s,i);if(B(e.cases)){for(let[a,l]of Object.entries(e.cases))if(V(l))yield*Ja(l,[...t,"cases",a],s,i)}}function IG(e){return e.some((t)=>t.includes("-"))}function Zn(e,t,r,n,s,i="error"){return{criterion:s,detail:`${n} ${RG}`,message:r,path:t,rule:e,severity:i}}function iC(e,t,r){if(r.includes("label"))return!0;if(e===Da||t.bound)return!0;return e!==null&&t.ids.has(e)}function JG(e,t){let{node:r,path:n,tags:s}=e,i=Et(r),o=Si(r);if(o==="bound")return null;if(an(r,"aria-label")||nr(r,"aria-labelledby")||an(r,"title"))return null;let l=mr(r,"the control"),c=(p)=>Zn("interactive-unnamed",n,`${l} has no accessible name.`,`A control with no name is announced as its role alone, so a reader hears "button" and nothing else. ${p}`,"4.1.2"),u=MG(r,i,t,s);if(u==="named"||u==="exempt")return null;if(o!==null&&OG.has(o))return Sd(r)?null:c("Give it text content, or an aria-label.");if(o!==null&&CG.has(o))return c("Give it an aria-label, or aria-labelledby naming its visible label.");if(o!==null)return null;if(i==="button"||i==="summary"||i==="a"&&nr(r,"href"))return Sd(r)?null:c("Give it text content, or an aria-label.");if(u==="unnamed")return c("Give it a <label for> naming its id, or an aria-label.");if(u==="unnamed-value")return c("Give it a value, or an aria-label.");if(u==="unnamed-alt")return c("Give it an alt, or an aria-label.");return null}function MG(e,t,r,n){if(t==="area"){if(!nr(e,"href"))return"none";return an(e,"alt")?"named":"unnamed-alt"}if(t==="select"||t==="textarea")return iC(vd(e),r,n)||an(e,"placeholder")?"named":"unnamed";if(t!=="input")return"none";let s=(Ma(e,"type")??"text").toLowerCase();if(s==="hidden"||nr(e,"type")&&Ma(e,"type")===null)return"exempt";if(NG.has(s))return an(e,"value")?"named":"unnamed-value";if(s==="image")return an(e,"alt")?"named":"unnamed-alt";return iC(vd(e),r,n)||an(e,"placeholder")?"named":"unnamed"}function LG(e){let{node:t,path:r,tags:n}=e,s=Et(t);if(!s.includes("-")||!n.some((i)=>DG.has(i)))return null;return Zn("custom-element-in-select",r,`<${s}> is a custom element inside a <select>.`,'A <select> builds its own rows: an element it does not know is not in select.options, so it cannot be picked, cannot be reached with the arrow keys, and fires no change event — while role="option" on it still makes the accessibility tree read as though it could. Every row of a <select> is a native <option>; a listbox whose rows are jx-option elements is a jx-listbox.',"4.1.2")}function FG(e){let{node:t,path:r}=e;if(Et(t)!=="img")return null;let n=Si(t);if(n==="bound"||n==="presentation"||n==="none")return null;if(nr(t,"alt")||an(t,"aria-label")||nr(t,"aria-labelledby"))return null;return Zn("img-alt-missing",r,`${mr(t,"the image")} has no alt text.`,'An image with no alt is announced by its file name. Describe it in alt, or write alt="" for a decorative one.',"1.1.1")}function VG(e,t){let{node:r,path:n}=e,s=[];for(let i of qG){let o=Ma(r,i);if(o===null)continue;for(let a of o.split(/\s+/))if(a!==""&&!t.has(a))s.push(Zn("aria-target-missing",n,`${mr(r,"the element")} points ${i} at #${a}, which nothing in this document has as its id.`,"A reference to an id that is not in the document is silently dropped, so the relationship it declares does not exist. Name an element that is here, or give that element the id.","1.3.1"))}return s}function WG(e,t,r){for(let n of oC.get(t)??[]){let s=r.get(n);if(s===void 0)continue;if(s.bound)return!0;if(e===Da&&s.ids.size>0)return!0;if(e!==null&&e!==Da&&s.ids.has(e))return!0}return!1}function HG(e,t){let{node:r,path:n,roles:s,tags:i}=e,o=Si(r);if(o===null||o==="bound"||n.length===0||IG(i))return null;if(s.includes("bound")||WG(vd(r),o,t))return null;let a=mr(r,"the element");if(o==="tab"&&!s.includes("tablist"))return Zn("tab-outside-tablist",n,`${a} is a tab outside any tablist.`,'A tab is announced with its position in a tablist, so one with no tablist ancestor has no place to be counted in. Put the tabs in a container with role="tablist".',"1.3.1");if((o==="menuitem"||o==="menuitemcheckbox"||o==="menuitemradio")&&!s.includes("menu")&&!s.includes("menubar"))return Zn("menuitem-outside-menu",n,`${a} is a ${o} outside any menu.`,'A menu item is owned by a menu, and is announced as one of its items. Put it in a container with role="menu" or role="menubar".',"1.3.1");if(o==="option"&&!s.includes("listbox")&&!i.includes("select")&&!i.includes("datalist"))return Zn("option-outside-listbox",n,`${a} is an option outside any listbox.`,'An option is owned by a listbox, and is announced as one of its choices. Put it in a container with role="listbox", or in a <select>.',"1.3.1");return null}function BG(e){let t=[];for(let{node:r}of Ja(e)){if(Si(r)!=="tab")continue;let n=La(r,"aria-selected");if(n.kind==="bound")return null;t.push(n.kind==="other"&&n.isTrue||n.kind==="text"&&n.text==="true")}return t}function UG(e){let{node:t,path:r}=e;if(Si(t)!=="tablist")return null;let n=BG(t);if(n===null||n.length===0||n.includes(!0))return null;return Zn("tablist-none-selected",r,`${mr(t,"the tablist")} has ${n.length} tab(s) and none is selected.`,'A tablist always has a current tab, and aria-selected="true" is how it is announced. Mark the tab whose panel is showing.',"4.1.2","warn")}function zG(e){let{node:t,path:r}=e,n=Si(t);if(!(Et(t)==="dialog"||n==="dialog"||n==="alertdialog")||n==="bound")return null;if(an(t,"aria-label")||nr(t,"aria-labelledby"))return null;return Zn("dialog-unnamed",r,`${mr(t,"the dialog")} has no accessible name.`,"A dialog is announced by its name when it opens, and its content does not name it. Give it aria-labelledby naming its heading, or an aria-label.","4.1.2")}function KG(e){let{node:t,path:r}=e;if(!nr(t,"aria-activedescendant"))return null;let n=Et(t);if(GG.has(n)||n==="a"&&nr(t,"href")||nr(t,"tabIndex")||nr(t,"tabindex")||nr(t,"contenteditable"))return null;return Zn("activedescendant-not-focusable",r,`${mr(t,"the element")} manages focus with aria-activedescendant but cannot itself take focus.`,"aria-activedescendant names the active child of a FOCUSED container; on one that cannot be focused, the keyboard never reaches it. Give the container a tabindex.","2.1.1")}function aC(e){let t=[...Ja(e)],r=new Set,n={bound:!1,ids:new Set},s=new Map,i=!1;for(let{node:a}of t){let l=Si(a);if(l!==null&&TG.has(l)){let u=s.get(l)??{bound:!1,ids:new Set},p=Ma(a,"aria-owns");if(p===null)u.bound||=nr(a,"aria-owns");else for(let h of p.split(/\s+/))if(h!=="")u.ids.add(h);s.set(l,u)}let c=vd(a);if(c===Da)i=!0;else if(c!==null)r.add(c);if(Et(a)==="label"){let u=Ma(a,"for")??Ma(a,"htmlFor");if(u===null)n.bound||=nr(a,"for")||nr(a,"htmlFor");else n.ids.add(u)}}let o=[];for(let a of t){let l=[JG(a,n),FG(a),HG(a,s),LG(a),UG(a),zG(a),KG(a)];for(let c of l)if(c)o.push(c);if(!i)o.push(...VG(a,r))}return o}var RG="See docs/framework/concepts/accessibility.",Da="bound",OG,CG,NG,oC,TG,DG,qG,GG;var lC=D(()=>{ve();wd();OG=new Set(["button","checkbox","link","menuitem","menuitemcheckbox","menuitemradio","option","radio","switch","tab","treeitem"]),CG=new Set(["combobox","listbox","searchbox","slider","spinbutton","textbox"]),NG=new Set(["button","reset","submit"]),oC=new Map([["menuitem",["menu","menubar"]],["menuitemcheckbox",["menu","menubar"]],["menuitemradio",["menu","menubar"]],["option",["listbox"]],["tab",["tablist"]]]),TG=new Set([...oC.values()].flat());DG=new Set(["select","jx-select"]);qG=["aria-activedescendant","aria-controls","aria-describedby","aria-details","aria-errormessage","aria-flowto","aria-labelledby","aria-owns"];GG=new Set(["button","input","select","textarea"])});function oy(e){return Et(e)==="dialog"}function cC(e){return e.startsWith("--")}function rK(e){let t=[];for(let{node:r}of Yn(e)){let n=vi(r);if(oy(r)&&n!==null&&!t.includes(n))t.push(n)}return t}function nK(e){let t=e.oncommand;return t!==void 0&&t!==null}function sK(e,t){for(let{node:r}of Yn(e)){if(r===e)continue;let n=Et(r);if(n==="button"){let s=rr(r,"command"),i=rr(r,"commandfor");if(s!==null&&(s==="close"||s==="request-close")&&(i===null||i===t))return!0}if(n==="form"&&rr(r,"method")?.toLowerCase()==="dialog")return!0}return!1}function fC(e,t){let r=[...Yn(e,[],null,t)],n=rK(e),s=iy(e,t),i=n.length>0||s.length>0,o=new Map,a=new Map;for(let{node:c}of r){let u=vi(c);if(u!==null&&!o.has(u))o.set(u,c);if(Et(c)==="button"){let p=rr(c,"commandfor"),h=rr(c,"command");if(p!==null){let m=a.get(p)??new Set;m.add(h??""),a.set(p,m)}}}let l=[];for(let{node:c,path:u}of r)if(l.push(...iK(c,u,o,n,s,i,t)),oy(c))l.push(...oK(c,u,a));return l}function iK(e,t,r,n,s,i,o){let a=[],l=Et(e),c=o?.invokerTags?.has(l)??!1,u=rr(e,"command"),p=rr(e,"commandfor");if(!(u!==null||p!==null||("command"in Xn(e))||("commandfor"in Xn(e))))return a;let m=mr(e,"the element");if(!tK.has(l)&&!c)return a.push({detail:"`command` and `commandfor` are attributes of `HTMLButtonElement` and of no other "+"interface — not even `<input>`, which `popovertarget` does allow. Elsewhere they parse "+`and do nothing. Make it a <button>, or remove both attributes. ${it}`,fix:"invoker",message:`<${l||"element"}> carries command/commandfor, which only <button> supports.`,path:t,rule:"invoker-not-button",severity:"error"}),a;if(u!==null&&!QG.has(u)&&!cC(u))return a.push({detail:`\`command\` is an enumerated attribute taking ${uC.map((b)=>`\`${b}\``).join(", ")}, or a custom command starting with \`--\`. Anything else is the invalid-value state, and a button in that state does nothing when clicked. ${it}`,message:`${m} declares command="${u}", which is not a built-in or --custom command.`,path:t,rule:"command-invalid",severity:"error"}),a;if(p!==null){let b=r.get(p),g=n.includes(p),y=s.includes(p);if(!b&&i){let w=[...n,...s].map((P)=>`"${P}"`).join(", ");return a.push({detail:`No element in this document has the id "${p}". The dialogs and popovers here are: ${w}. A commandfor that names nothing does nothing, silently. ${it}`,message:`commandfor="${p}" names nothing in this document.`,path:t,rule:"command-target-missing",severity:"error"}),a}if(u!==null&&b){if(YG.has(u)&&!oy(b))a.push({detail:`\`${u}\` acts on a <dialog>, and "${p}" is ${y?"a popover":`a <${Et(b)||"element"}>`}. The click is ignored. ${y?"Use `toggle-popover`, `show-popover` or `hide-popover` for a popover.":"Point it at a dialog, or make the target one."} ${it}`,message:`${m} sends ${u} to "${p}", which is not a dialog.`,path:t,rule:"command-target-mismatch",severity:"error"});else if(XG.has(u)&&!lc(b,o))a.push({detail:`\`${u}\` acts on a popover, and "${p}" is ${g?"a dialog":`a <${Et(b)||"element"}>`} that declares no \`popover\`. The click is ignored. ${g?"Use `show-modal`, `close` or `request-close` for a dialog.":"Give the target a `popover` attribute, or point the button elsewhere."} ${it}`,message:`${m} sends ${u} to "${p}", which is not a popover.`,path:t,rule:"command-target-mismatch",severity:"error"});else if(cC(u)&&!nK(b))a.push({detail:`A custom command is a \`CommandEvent\` dispatched at its target, and "${p}" has no `+"`oncommand` handler to answer it — so the click does nothing. Add one that switches on "+`\`event#/command\`, or use a built-in command. ${it}`,message:`${m} sends ${u} to "${p}", which handles no command.`,path:t,rule:"custom-command-unhandled",severity:"warn"})}}return a}function oK(e,t,r){let n=[],s=mr(e,"the dialog"),i=vi(e),{style:o}=e,a=rr(e,"closedby");if(a!==null&&!eK.has(a))n.push({detail:`\`closedby\` is an enumerated attribute taking \`any\` (light dismiss and Escape), \`closerequest\` (Escape only, the default for a modal) or \`none\`. Anything else is the invalid-value default, \`auto\`, which is the same as leaving it out. ${it}`,message:`${s} declares closedby="${a}", which is not any, closerequest or none.`,path:t,rule:"dialog-closedby-invalid",severity:"error"});if(pr(o,"display")!==null)n.push({detail:`A closed dialog is hidden by the browser's own \`dialog:not([open]) { display: none }\`. That rule is UA-origin, so any author \`display\` beats it, and the dialog is laid out on every page whether or not anyone opened it. \`display\` belongs in the \`&[open]\` rule and nowhere else. ${it}`,fix:"display",message:`${s} sets display in its base rule.`,path:t,rule:"dialog-display",severity:"error"});let l=i===null?void 0:r.get(i),c=rr(e,"open")!==null||Xn(e).open===!0||e.open===!0;if(i!==null&&!l?.has("show-modal")&&!c)n.push({detail:`No <button> in this document opens it with \`command="show-modal"\`. If it is opened from another file or from a function that calls \`showModal()\`, this is fine; otherwise there is no way for a reader to open it. ${it}`,message:`${s} has no invoker in this document.`,path:t,rule:"dialog-no-invoker",severity:"warn"});if(l?.has("show-modal")&&a==="none"&&!sK(e,i))n.push({detail:`A modal dialog makes everything outside it inert, so the only ways out are the ones it offers: \`closedby="none"\` turns off Escape and light dismiss, and nothing inside it closes it. A reader who opens it cannot leave. Add a <button command="close"> inside, or drop \`closedby="none"\`. ${it}`,message:`${s} opens modally, closes on nothing, and has no close button.`,path:t,rule:"modal-without-close",severity:"error"});return n}var uC,YG,XG,ZG,QG,eK,tK;var dC=D(()=>{ve();wd();uC=["toggle-popover","show-popover","hide-popover","show-modal","close","request-close"],YG=new Set(["show-modal","close","request-close"]),XG=new Set(["toggle-popover","show-popover","hide-popover"]),ZG=["any","closerequest","none"],QG=new Set(uC),eK=new Set(ZG),tK=new Set(["button"])});var vC=N(function($C){Object.defineProperty($C,"__esModule",{value:!0});$C.formatNames=$C.fastFormats=$C.fullFormats=void 0;function Qn(e,t){return{validate:e,compare:t}}$C.fullFormats={date:Qn(gC,uy),time:Qn(ly(!0),fy),"date-time":Qn(pC(!0),bC),"iso-time":Qn(ly(),yC),"iso-date-time":Qn(pC(),xC),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:dK,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:xK,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:pK,int32:{type:"number",validate:gK},int64:{type:"number",validate:yK},float:{type:"number",validate:hC},double:{type:"number",validate:hC},password:!0,binary:!0};$C.fastFormats={...$C.fullFormats,date:Qn(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,uy),time:Qn(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,fy),"date-time":Qn(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,bC),"iso-time":Qn(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,yC),"iso-date-time":Qn(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,xC),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};$C.formatNames=Object.keys($C.fullFormats);function aK(e){return e%4===0&&(e%100!==0||e%400===0)}var lK=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,cK=[0,31,28,31,30,31,30,31,31,30,31,30,31];function gC(e){let t=lK.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],s=+t[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&aK(r)?29:cK[n])}function uy(e,t){if(!(e&&t))return;if(e>t)return 1;if(e<t)return-1;return 0}var ay=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function ly(e){return function(r){let n=ay.exec(r);if(!n)return!1;let s=+n[1],i=+n[2],o=+n[3],a=n[4],l=n[5]==="-"?-1:1,c=+(n[6]||0),u=+(n[7]||0);if(c>23||u>59||e&&!a)return!1;if(s<=23&&i<=59&&o<60)return!0;let p=i-u*l,h=s-c*l-(p<0?1:0);return(h===23||h===-1)&&(p===59||p===-1)&&o<61}}function fy(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(!(r&&n))return;return r-n}function yC(e,t){if(!(e&&t))return;let r=ay.exec(e),n=ay.exec(t);if(!(r&&n))return;if(e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t)return 1;if(e<t)return-1;return 0}var cy=/t|\s/i;function pC(e){let t=ly(e);return function(n){let s=n.split(cy);return s.length===2&&gC(s[0])&&t(s[1])}}function bC(e,t){if(!(e&&t))return;let r=new Date(e).valueOf(),n=new Date(t).valueOf();if(!(r&&n))return;return r-n}function xC(e,t){if(!(e&&t))return;let[r,n]=e.split(cy),[s,i]=t.split(cy),o=uy(r,s);if(o===void 0)return;return o||fy(n,i)}var uK=/\/|:/,fK=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function dK(e){return uK.test(e)&&fK.test(e)}var mC=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function pK(e){return mC.lastIndex=0,mC.test(e)}var mK=-2147483648,hK=2147483647;function gK(e){return Number.isInteger(e)&&e<=hK&&e>=mK}function yK(e){return Number.isInteger(e)}function hC(){return!0}var bK=/[^\\]\\Z/;function xK(e){if(bK.test(e))return!1;try{return new RegExp(e),!0}catch(t){return!1}}});var EC=N(function(SC){Object.defineProperty(SC,"__esModule",{value:!0});var wK=Wg(),vK=Hg(),SK=Gg(),EK=Xg(),Ed=Zg(),PK=[wK.default,vK.default,(0,SK.default)(),EK.default,Ed.metadataVocabulary,Ed.contentVocabulary];SC.default=PK});var PC=N(function(rle,kK){kK.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var kC=N(function(Cr,py){Object.defineProperty(Cr,"__esModule",{value:!0});Cr.MissingRefError=Cr.ValidationError=Cr.CodeGen=Cr.Name=Cr.nil=Cr.stringify=Cr.str=Cr._=Cr.KeywordCxt=Cr.Ajv=void 0;var _K=Vg(),AK=EC(),RK=Qg(),jC=PC(),OK=["/properties"],Pd="http://json-schema.org/draft-07/schema";class cc extends _K.default{_addVocabularies(){if(super._addVocabularies(),AK.default.forEach((e)=>this.addVocabulary(e)),this.opts.discriminator)this.addKeyword(RK.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(jC,OK):jC;this.addMetaSchema(e,Pd,!1),this.refs["http://json-schema.org/schema"]=Pd}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Pd)?Pd:void 0)}}Cr.Ajv=cc;py.exports=Cr=cc;py.exports.Ajv=cc;Object.defineProperty(Cr,"__esModule",{value:!0});Cr.default=cc;var CK=va();Object.defineProperty(Cr,"KeywordCxt",{enumerable:!0,get:function(){return CK.KeywordCxt}});var Fa=$e();Object.defineProperty(Cr,"_",{enumerable:!0,get:function(){return Fa._}});Object.defineProperty(Cr,"str",{enumerable:!0,get:function(){return Fa.str}});Object.defineProperty(Cr,"stringify",{enumerable:!0,get:function(){return Fa.stringify}});Object.defineProperty(Cr,"nil",{enumerable:!0,get:function(){return Fa.nil}});Object.defineProperty(Cr,"Name",{enumerable:!0,get:function(){return Fa.Name}});Object.defineProperty(Cr,"CodeGen",{enumerable:!0,get:function(){return Fa.CodeGen}});var NK=tc();Object.defineProperty(Cr,"ValidationError",{enumerable:!0,get:function(){return NK.default}});var TK=Ea();Object.defineProperty(Cr,"MissingRefError",{enumerable:!0,get:function(){return TK.default}})});var RC=N(function(AC){Object.defineProperty(AC,"__esModule",{value:!0});AC.formatLimitDefinition=void 0;var _C=kC(),bt=$e(),Ei=bt.operators,jd={formatMaximum:{okStr:"<=",ok:Ei.LTE,fail:Ei.GT},formatMinimum:{okStr:">=",ok:Ei.GTE,fail:Ei.LT},formatExclusiveMaximum:{okStr:"<",ok:Ei.LT,fail:Ei.GTE},formatExclusiveMinimum:{okStr:">",ok:Ei.GT,fail:Ei.LTE}},MK={message:({keyword:e,schemaCode:t})=>bt.str`should be ${jd[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>bt._`{comparison: ${jd[e].okStr}, limit: ${t}}`};AC.formatLimitDefinition={keyword:Object.keys(jd),type:"string",schemaType:"string",$data:!0,error:MK,code(e){let{gen:t,data:r,schemaCode:n,keyword:s,it:i}=e,{opts:o,self:a}=i;if(!o.validateFormats)return;let l=new _C.KeywordCxt(i,a.RULES.all.format.definition,"format");if(l.$data)c();else u();function c(){let h=t.scopeValue("formats",{ref:a.formats,code:o.code.formats}),m=t.const("fmt",bt._`${h}[${l.schemaCode}]`);e.fail$data(bt.or(bt._`typeof ${m} != "object"`,bt._`${m} instanceof RegExp`,bt._`typeof ${m}.compare != "function"`,p(m)))}function u(){let h=l.schema,m=a.formats[h];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw Error(`"${s}": format "${h}" does not define "compare" function`);let b=t.scopeValue("formats",{key:h,ref:m,code:o.code.formats?bt._`${o.code.formats}${bt.getProperty(h)}`:void 0});e.fail$data(p(b))}function p(h){return bt._`${h}.compare(${r}, ${n}) ${jd[s].fail} 0`}},dependencies:["format"]};var DK=(e)=>(e.addKeyword(AC.formatLimitDefinition),e);AC.default=DK});var TC=N(function(uc,NC){Object.defineProperty(uc,"__esModule",{value:!0});var ln=vC(),FK=RC(),qa=$e(),OC=new qa.Name("fullFormats"),qK=new qa.Name("fastFormats"),hy=(e,t={keywords:!0})=>{if(Array.isArray(t))return CC(e,t,ln.fullFormats,OC),e;let[r,n]=t.mode==="fast"?[ln.fastFormats,qK]:[ln.fullFormats,OC],s=t.formats||ln.formatNames;if(CC(e,s,r,n),t.keywords)(0,FK.default)(e);return e};hy.get=(e,t="full")=>{let n=(t==="fast"?ln.fastFormats:ln.fullFormats)[e];if(!n)throw Error(`Unknown format "${e}"`);return n};function CC(e,t,r,n){var s,i;(s=(i=e.opts.code).formats)!==null&&s!==void 0||(i.formats=qa._`require("ajv-formats/dist/formats").${n}`);for(let o of t)e.addFormat(o,r[o])}NC.exports=uc=hy;Object.defineProperty(uc,"__esModule",{value:!0});uc.default=hy});import{existsSync as JC,readFileSync as by,readdirSync as MC,statSync as DC}from"node:fs";import{createRequire as VK}from"node:module";import{join as LC,relative as kd,resolve as gy}from"node:path";async function UK(){try{let{default:e}=await Promise.resolve().then(() => gr(ry(),1)),{default:t}=await Promise.resolve().then(() => gr(TC(),1));return{addFormats:t,Ajv:e}}catch(e){throw Error("Project validation requires ajv and ajv-formats: bun add ajv ajv-formats",{cause:e})}}async function FC(e,t={}){let r=gy(e),n=[],s=[],i=0;for(let S of["project.schema.json","document.schema.json"]){let E=gy(r,S);if(!JC(E))continue;i+=1;let k=fc(E),A=YK(k);if(A.length>0)n.push({errors:A.map(({reason:R,ref:_})=>({message:`$ref "${_}" ${R} — committed entry documents must be self-contained `+"single-resource schemas; regenerate with `jx schema`"})),file:S})}if(n.length>0)return{checked:i,issues:n,lint:s,valid:!1};let o=await YO(r);if(i+=1,!o.valid)n.push({errors:o.errors??[],file:Hc});let{addFormats:a,Ajv:l}=await UK(),{document:c}=await R1(r,{write:!1}),u=new l({allErrors:!0,ownProperties:!0,strict:!1});a(u);let p=u.compile(c),h=QO(IC(r).flatMap((S)=>{try{return[JSON.parse(by(S,"utf8"))]}catch{return[]}}));for(let S of WK)for(let E of WC(gy(r,S))){if(E.endsWith(".class.json"))continue;i+=1;let k=zK(E,kd(r,E));if(s.push(...k.warnings),k.failure!==null){n.push(k.failure);continue}let A=k.document;if(p(A))s.push(...KK(A,kd(r,E),h));else n.push({errors:p.errors??[],file:kd(r,E)})}let m=new l({allErrors:!0,ownProperties:!0,strict:!1});a(m);let b=m.compile(ng());for(let S of IC(r)){i+=1;let E=fc(S);if(!b(E))n.push({errors:b.errors??[],file:kd(r,S)})}let{config:g}=qs(r),y=await Fs(r,g),w=VK(import.meta.url);for(let S of y.extensions)for(let E of["project","document","fields"]){let k=S.schemas[E];if(!k)continue;i+=1;let A=new l({allErrors:!0,ownProperties:!0,strict:!1});a(A);for(let R of BK){let _=w.resolve(R);A.addSchema(fc(_))}try{A.compile(fc(k))}catch(R){n.push({errors:[{message:R instanceof Error?R.message:String(R)}],file:`${S.specifier} (${E} fragment)`})}}let P=t.strict===!0&&s.some((S)=>S.severity==="error");return{checked:i,issues:n,lint:s,valid:n.length===0&&!P}}function zK(e,t){if(!rl(e))return{document:fc(e),failure:null,warnings:[]};let r=by(e,"utf8"),n=ip(r).map((s)=>({detail:s.message,file:t,message:`line ${s.line}, column ${s.column}: ${s.message}`,path:[],rule:"escape",severity:"warn",source:"notation"}));try{return{document:GK(r),failure:null,warnings:n}}catch(s){return{document:null,failure:{errors:[{message:je(s)}],file:t},warnings:n}}}function GK(e){let t=Li(e);return B(t)?t:null}function fc(e){return JSON.parse(by(e,"utf8"))}function KK(e,t,r){let n=[];for(let s of sC(e,r))n.push({...yy(s),file:t,source:"popover"});for(let s of fC(e,r))n.push({...yy(s),file:t,source:"dialog"});for(let s of aC(e))n.push({...yy(s),criterion:s.criterion,file:t,source:"accessibility"});return n}function yy(e){return{detail:e.detail,message:e.message,path:e.path,rule:e.rule,severity:e.severity}}function qC(e){return e.lint.map((t)=>{let r=t.criterion===void 0?`${t.source}/${t.rule}`:`${t.source}/${t.rule}, WCAG ${t.criterion}`;return`${t.file}: ${t.severity}: ${t.message} [${r}]`})}function YK(e){let t=[],r=new Set,n=(i)=>{let o=e;for(let a of i.slice(1).split("/")){if(a==="")continue;let l=a.replaceAll("~1","/").replaceAll("~0","~");if(!V(o))return!1;if(o=o[l],o===void 0)return!1}return!0},s=(i)=>{if(!B(i)||r.has(i))return;r.add(i);let o=i.$ref;if(O(o)){if(/^[a-zA-Z][a-zA-Z\d+.-]*:/.test(o))t.push({reason:"is an absolute URI editors resolve over the network",ref:o});else if(!o.startsWith("#"))t.push({reason:"is a relative path only Node module resolution can follow",ref:o});else if(o.length>1&&!o.startsWith("#/"))t.push({reason:"is an $anchor reference, which has no root-pointer form",ref:o});else if(o.length>1&&!n(o.slice(1)))t.push({reason:"points at no node in this document",ref:o})}for(let[a,l]of Object.entries(i)){if(!XK.has(a))continue;if(Array.isArray(l))for(let c of l)s(c);else if(B(l)){if(s(l),VC.has(a))for(let c of Object.values(l))s(c)}}};return s(e),t}function WC(e){if(!JC(e))return[];let t=[];for(let r of MC(e)){let n=LC(e,r);if(DC(n).isDirectory())t.push(...WC(n));else if(fs(r))t.push(n)}return t.toSorted()}function IC(e){let t=[],r=(n)=>{for(let s of MC(n)){if(HK.has(s))continue;let i=LC(n,s);if(DC(i).isDirectory())r(i);else if(s.endsWith(".class.json"))t.push(i)}};return r(e),t.toSorted()}function HC(e){let t=[];for(let r of e.issues){t.push(`${r.file}:`);for(let n of r.errors){let s=B(n)?n:{},{instancePath:i,message:o}=s;t.push(` - ${i||"/"}: ${o??JSON.stringify(n)}`)}}return t}var WK,HK,BK,VC,XK;var BC=D(()=>{Fi();ir();wj();XO();lC();dC();wd();ve();ms();al();Hh();xp();WK=["components","pages","layouts"],HK=new Set(["node_modules","dist",".git"]),BK=["@jxsuite/schema/schemas/project.core.schema.json","@jxsuite/schema/schemas/project.fields.schema.json","@jxsuite/schema/schemas/document.paths.schema.json"];VC=new Set(["$defs","definitions","dependencies","dependentSchemas","patternProperties","properties"]),XK=new Set([...VC,"additionalItems","additionalProperties","allOf","anyOf","contains","contentSchema","else","if","items","not","oneOf","prefixItems","propertyNames","then","unevaluatedItems","unevaluatedProperties"])});ir();import{relative as xy,resolve as UC}from"node:path";async function ZK(){let e=process.argv.slice(2),[t]=e;if(!t||t==="--help"||t==="-h")console.log(`Usage: jx <command> [options]
|
|
613
|
+
deps: ${r}}`};var u8={keyword:"dependencies",type:"object",schemaType:"object",error:kR.error,code(e){let[t,r]=f8(e);jR(e,t),PR(e,r)}};function f8({schema:e}){let t={},r={};for(let n in e){if(n==="__proto__")continue;let s=Array.isArray(e[n])?t:r;s[n]=e[n]}return[t,r]}function jR(e,t=e.schema){let{gen:r,data:n,it:s}=e;if(Object.keys(t).length===0)return;let i=r.let("missing");for(let o in t){let a=t[o];if(a.length===0)continue;let l=Kn.propertyInData(r,n,o,s.opts.ownProperties);if(e.setParams({property:o,depsCount:a.length,deps:a.join(", ")}),s.allErrors)r.if(l,()=>{for(let c of a)Kn.checkReportMissingProp(e,c)});else r.if(Ja._`${l} && (${Kn.checkMissingProp(e,a,i)})`),Kn.reportMissingProp(e,i),r.else()}}kR.validatePropertyDeps=jR;function PR(e,t=e.schema){let{gen:r,data:n,keyword:s,it:i}=e,o=r.name("valid");for(let a in t){if(ER.alwaysValidSchema(i,t[a]))continue;r.if(Kn.propertyInData(r,n,a,i.opts.ownProperties),()=>{let l=e.subschema({keyword:s,schemaProp:a},o);e.mergeValidEvaluated(l,o)},()=>r.var(o,!0)),e.ok(o)}}kR.validateSchemaDeps=PR;kR.default=u8});var NR=C(function(OR){Object.defineProperty(OR,"__esModule",{value:!0});var dd=we(),RR=Oe(),m8={message:"property name must be valid",params:({params:e})=>dd._`{propertyName: ${e.propertyName}}`},h8={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:m8,code(e){let{gen:t,schema:r,data:n,it:s}=e;if(RR.alwaysValidSchema(s,r))return;let i=t.name("valid");t.forIn("key",n,(o)=>{e.setParams({propertyName:o}),e.subschema({keyword:"propertyNames",data:o,dataTypes:["string"],propertyName:o,compositeRule:!0},i),t.if(dd.not(i),()=>{if(e.error(!0),!s.allErrors)t.break()})}),e.ok(i)}};OR.default=h8});var ey=C(function(CR){Object.defineProperty(CR,"__esModule",{value:!0});var $i=on(),bt=we(),y8=nn(),wi=Oe(),b8={message:"must NOT have additional properties",params:({params:e})=>bt._`{additionalProperty: ${e.additionalProperty}}`},x8={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:b8,code(e){let{gen:t,schema:r,parentSchema:n,data:s,errsCount:i,it:o}=e;if(!i)throw Error("ajv implementation error");let{allErrors:a,opts:l}=o;if(o.props=!0,l.removeAdditional!=="all"&&wi.alwaysValidSchema(o,r))return;let c=$i.allSchemaProperties(n.properties),u=$i.allSchemaProperties(n.patternProperties);p(),e.ok(bt._`${i} === ${y8.default.errors}`);function p(){t.forIn("key",s,(y)=>{if(!c.length&&!u.length)b(y);else t.if(h(y),()=>b(y))})}function h(y){let w;if(c.length>8){let j=wi.schemaRefOrVal(o,n.properties,"properties");w=$i.isOwnProperty(t,j,y)}else if(c.length)w=bt.or(...c.map((j)=>bt._`${y} === ${j}`));else w=bt.nil;if(u.length)w=bt.or(w,...u.map((j)=>bt._`${$i.usePattern(e,j)}.test(${y})`));return bt.not(w)}function m(y){t.code(bt._`delete ${s}[${y}]`)}function b(y){if(l.removeAdditional==="all"||l.removeAdditional&&r===!1){m(y);return}if(r===!1){if(e.setParams({additionalProperty:y}),e.error(),!a)t.break();return}if(typeof r=="object"&&!wi.alwaysValidSchema(o,r)){let w=t.name("valid");if(l.removeAdditional==="failing")g(y,w,!1),t.if(bt.not(w),()=>{e.reset(),m(y)});else if(g(y,w),!a)t.if(bt.not(w),()=>t.break())}}function g(y,w,j){let S={keyword:"additionalProperties",dataProp:y,dataPropType:wi.Type.Str};if(j===!1)Object.assign(S,{compositeRule:!0,createErrors:!1,allErrors:!1});e.subschema(S,w)}}};CR.default=x8});var MR=C(function(JR){Object.defineProperty(JR,"__esModule",{value:!0});var IR=ka(),pd=on(),Ma=Oe(),TR=ey(),w8={keyword:"properties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,parentSchema:n,data:s,it:i}=e;if(i.opts.removeAdditional==="all"&&n.additionalProperties===void 0)TR.default.code(new IR.KeywordCxt(i,TR.default,"additionalProperties"));let o=pd.allSchemaProperties(r);for(let p of o)i.definedProperties.add(p);if(i.opts.unevaluated&&o.length&&i.props!==!0)i.props=Ma.mergeEvaluated.props(t,Ma.toHash(o),i.props);let a=o.filter((p)=>!Ma.alwaysValidSchema(i,r[p]));if(a.length===0)return;let l=t.name("valid");for(let p of a){if(c(p))u(p);else{if(t.if(pd.propertyInData(t,s,p,i.opts.ownProperties)),u(p),!i.allErrors)t.else().var(l,!0);t.endIf()}e.it.definedProperties.add(p),e.ok(l)}function c(p){return i.opts.useDefaults&&!i.compositeRule&&r[p].default!==void 0}function u(p){e.subschema({keyword:"properties",schemaProp:p,dataProp:p},l)}}};JR.default=w8});var LR=C(function(DR){Object.defineProperty(DR,"__esModule",{value:!0});var md=on(),vi=we(),hd=Oe(),gd=Oe(),S8={keyword:"patternProperties",type:"object",schemaType:"object",code(e){let{gen:t,schema:r,data:n,parentSchema:s,it:i}=e,{opts:o}=i,a=md.allSchemaProperties(r),l=a.filter((g)=>hd.alwaysValidSchema(i,r[g]));if(a.length===0||l.length===a.length&&(!i.opts.unevaluated||i.props===!0))return;let c=o.strictSchema&&!o.allowMatchingProperties&&s.properties,u=t.name("valid");if(i.props!==!0&&!(i.props instanceof vi.Name))i.props=gd.evaluatedPropsToName(t,i.props);let{props:p}=i;h();function h(){for(let g of a){if(c)m(g);if(i.allErrors)b(g);else t.var(u,!0),b(g),t.if(u)}}function m(g){for(let y in c)if(new RegExp(g).test(y))hd.checkStrictMode(i,`property ${y} matches pattern ${g} (use allowMatchingProperties)`)}function b(g){t.forIn("key",n,(y)=>{t.if(vi._`${md.usePattern(e,g)}.test(${y})`,()=>{let w=l.includes(g);if(!w)e.subschema({keyword:"patternProperties",schemaProp:g,dataProp:y,dataPropType:gd.Type.Str},u);if(i.opts.unevaluated&&p!==!0)t.assign(vi._`${p}[${y}]`,!0);else if(!w&&!i.allErrors)t.if(vi.not(u),()=>t.break())})})}}};DR.default=S8});var VR=C(function(qR){Object.defineProperty(qR,"__esModule",{value:!0});var FR=Oe(),j8={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(e){let{gen:t,schema:r,it:n}=e;if(FR.alwaysValidSchema(n,r)){e.fail();return}let s=t.name("valid");e.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},s),e.failResult(s,()=>e.reset(),()=>e.error())},error:{message:"must NOT be valid"}};qR.default=j8});var BR=C(function(HR){Object.defineProperty(HR,"__esModule",{value:!0});var WR=on(),k8={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:WR.validateUnion,error:{message:"must match a schema in anyOf"}};HR.default=k8});var GR=C(function(zR){Object.defineProperty(zR,"__esModule",{value:!0});var Si=we(),UR=Oe(),A8={message:"must match exactly one schema in oneOf",params:({params:e})=>Si._`{passingSchemas: ${e.passing}}`},R8={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:A8,code(e){let{gen:t,schema:r,parentSchema:n,it:s}=e;if(!Array.isArray(r))throw Error("ajv implementation error");if(s.opts.discriminator&&n.discriminator)return;let i=r,o=t.let("valid",!1),a=t.let("passing",null),l=t.name("_valid");e.setParams({passing:a}),t.block(c),e.result(o,()=>e.reset(),()=>e.error(!0));function c(){i.forEach((u,p)=>{let h;if(UR.alwaysValidSchema(s,u))t.var(l,!0);else h=e.subschema({keyword:"oneOf",schemaProp:p,compositeRule:!0},l);if(p>0)t.if(Si._`${l} && ${o}`).assign(o,!1).assign(a,Si._`[${a}, ${p}]`).else();t.if(l,()=>{if(t.assign(o,!0),t.assign(a,p),h)e.mergeEvaluated(h,Si.Name)})})}}};zR.default=R8});var XR=C(function(YR){Object.defineProperty(YR,"__esModule",{value:!0});var KR=Oe(),N8={keyword:"allOf",schemaType:"array",code(e){let{gen:t,schema:r,it:n}=e;if(!Array.isArray(r))throw Error("ajv implementation error");let s=t.name("valid");r.forEach((i,o)=>{if(KR.alwaysValidSchema(n,i))return;let a=e.subschema({keyword:"allOf",schemaProp:o},s);e.ok(s),e.mergeEvaluated(a)})}};YR.default=N8});var eO=C(function(QR){Object.defineProperty(QR,"__esModule",{value:!0});var Ei=we(),yd=Oe(),T8={message:({params:e})=>Ei.str`must match "${e.ifClause}" schema`,params:({params:e})=>Ei._`{failingKeyword: ${e.ifClause}}`},I8={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:T8,code(e){let{gen:t,parentSchema:r,it:n}=e;if(r.then===void 0&&r.else===void 0)yd.checkStrictMode(n,'"if" without "then" and "else" is ignored');let s=ZR(n,"then"),i=ZR(n,"else");if(!s&&!i)return;let o=t.let("valid",!0),a=t.name("_valid");if(l(),e.reset(),s&&i){let u=t.let("ifClause");e.setParams({ifClause:u}),t.if(a,c("then",u),c("else",u))}else if(s)t.if(a,c("then"));else t.if(Ei.not(a),c("else"));e.pass(o,()=>e.error(!0));function l(){let u=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);e.mergeEvaluated(u)}function c(u,p){return()=>{let h=e.subschema({keyword:u},a);if(t.assign(o,a),e.mergeValidEvaluated(h,o),p)t.assign(p,Ei._`${u}`);else e.setParams({ifClause:u})}}}};function ZR(e,t){let r=e.schema[t];return r!==void 0&&!yd.alwaysValidSchema(e,r)}QR.default=I8});var nO=C(function(rO){Object.defineProperty(rO,"__esModule",{value:!0});var tO=Oe(),M8={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:e,parentSchema:t,it:r}){if(t.if===void 0)tO.checkStrictMode(r,`"${e}" without "if" is ignored`)}};rO.default=M8});var ty=C(function(sO){Object.defineProperty(sO,"__esModule",{value:!0});var L8=Zg(),F8=gR(),q8=Qg(),V8=wR(),W8=SR(),H8=fd(),B8=NR(),U8=ey(),z8=MR(),G8=LR(),K8=VR(),Y8=BR(),X8=GR(),Z8=XR(),Q8=eO(),e9=nO();function t9(e=!1){let t=[K8.default,Y8.default,X8.default,Z8.default,Q8.default,e9.default,B8.default,U8.default,H8.default,z8.default,G8.default];if(e)t.push(F8.default,V8.default);else t.push(L8.default,q8.default);return t.push(W8.default),t}sO.default=t9});var ry=C(function(aO){Object.defineProperty(aO,"__esModule",{value:!0});aO.dynamicAnchor=void 0;var Da=we(),n9=nn(),bd=cc(),iO=od(),s9={keyword:"$dynamicAnchor",schemaType:"string",code:(e)=>oO(e,e.schema)};function oO(e,t){let{gen:r,it:n}=e;n.schemaEnv.root.dynamicAnchors[t]=!0;let s=Da._`${n9.default.dynamicAnchors}${Da.getProperty(t)}`,i=n.errSchemaPath==="#"?n.validateName:i9(e);r.if(Da._`!${s}`,()=>r.assign(s,i))}aO.dynamicAnchor=oO;function i9(e){let{schemaEnv:t,schema:r,self:n}=e.it,{root:s,baseId:i,localRefs:o,meta:a}=t.root,{schemaId:l}=n.opts,c=new bd.SchemaEnv({schema:r,schemaId:l,root:s,baseId:i,localRefs:o,meta:a});return bd.compileSchema.call(n,c),iO.getValidate(e,c)}aO.default=s9});var ny=C(function(uO){Object.defineProperty(uO,"__esModule",{value:!0});uO.dynamicRef=void 0;var xd=we(),a9=nn(),$d=od(),l9={keyword:"$dynamicRef",schemaType:"string",code:(e)=>cO(e,e.schema)};function cO(e,t){let{gen:r,keyword:n,it:s}=e;if(t[0]!=="#")throw Error(`"${n}" only supports hash fragment reference`);let i=t.slice(1);if(s.allErrors)o();else{let l=r.let("valid",!1);o(l),e.ok(l)}function o(l){if(s.schemaEnv.root.dynamicAnchors[i]){let c=r.let("_v",xd._`${a9.default.dynamicAnchors}${xd.getProperty(i)}`);r.if(c,a(c,l),a(s.validateName,l))}else a(s.validateName,l)()}function a(l,c){return c?()=>r.block(()=>{$d.callRef(e,l),r.let(c,!0)}):()=>$d.callRef(e,l)}}uO.dynamicRef=cO;uO.default=l9});var hO=C(function(mO){Object.defineProperty(mO,"__esModule",{value:!0});var dO=ry(),pO=Oe(),u9={keyword:"$recursiveAnchor",schemaType:"boolean",code(e){if(e.schema)dO.dynamicAnchor(e,"");else pO.checkStrictMode(e.it,"$recursiveAnchor: false is ignored")}};mO.default=u9});var bO=C(function(yO){Object.defineProperty(yO,"__esModule",{value:!0});var gO=ny(),d9={keyword:"$recursiveRef",schemaType:"string",code:(e)=>gO.dynamicRef(e,e.schema)};yO.default=d9});var $O=C(function(xO){Object.defineProperty(xO,"__esModule",{value:!0});var m9=ry(),h9=ny(),g9=hO(),y9=bO(),b9=[m9.default,h9.default,g9.default,y9.default];xO.default=b9});var vO=C(function(wO){Object.defineProperty(wO,"__esModule",{value:!0});var wd=fd(),$9={keyword:"dependentRequired",type:"object",schemaType:"object",error:wd.error,code:(e)=>wd.validatePropertyDeps(e)};wO.default=$9});var jO=C(function(EO){Object.defineProperty(EO,"__esModule",{value:!0});var SO=fd(),v9={keyword:"dependentSchemas",type:"object",schemaType:"object",code:(e)=>SO.validateSchemaDeps(e)};EO.default=v9});var _O=C(function(kO){Object.defineProperty(kO,"__esModule",{value:!0});var PO=Oe(),E9={keyword:["maxContains","minContains"],type:"array",schemaType:"number",code({keyword:e,parentSchema:t,it:r}){if(t.contains===void 0)PO.checkStrictMode(r,`"${e}" without "contains" is ignored`)}};kO.default=E9});var RO=C(function(AO){Object.defineProperty(AO,"__esModule",{value:!0});var P9=vO(),k9=jO(),_9=_O(),A9=[P9.default,k9.default,_9.default];AO.default=A9});var NO=C(function(OO){Object.defineProperty(OO,"__esModule",{value:!0});var or=we(),vd=Oe(),O9=nn(),N9={message:"must NOT have unevaluated properties",params:({params:e})=>or._`{unevaluatedProperty: ${e.unevaluatedProperty}}`},C9={keyword:"unevaluatedProperties",type:"object",schemaType:["boolean","object"],trackErrors:!0,error:N9,code(e){let{gen:t,schema:r,data:n,errsCount:s,it:i}=e;if(!s)throw Error("ajv implementation error");let{allErrors:o,props:a}=i;if(a instanceof or.Name)t.if(or._`${a} !== true`,()=>t.forIn("key",n,(p)=>t.if(c(a,p),()=>l(p))));else if(a!==!0)t.forIn("key",n,(p)=>a===void 0?l(p):t.if(u(a,p),()=>l(p)));i.props=!0,e.ok(or._`${s} === ${O9.default.errors}`);function l(p){if(r===!1){if(e.setParams({unevaluatedProperty:p}),e.error(),!o)t.break();return}if(!vd.alwaysValidSchema(i,r)){let h=t.name("valid");if(e.subschema({keyword:"unevaluatedProperties",dataProp:p,dataPropType:vd.Type.Str},h),!o)t.if(or.not(h),()=>t.break())}}function c(p,h){return or._`!${p} || !${p}[${h}]`}function u(p,h){let m=[];for(let b in p)if(p[b]===!0)m.push(or._`${h} !== ${b}`);return or.and(...m)}}};OO.default=C9});var TO=C(function(CO){Object.defineProperty(CO,"__esModule",{value:!0});var Nr=we(),Sd=Oe(),I9={message:({params:{len:e}})=>Nr.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>Nr._`{limit: ${e}}`},J9={keyword:"unevaluatedItems",type:"array",schemaType:["boolean","object"],error:I9,code(e){let{gen:t,schema:r,data:n,it:s}=e,i=s.items||0;if(i===!0)return;let o=t.const("len",Nr._`${n}.length`);if(r===!1)e.setParams({len:i}),e.fail(Nr._`${o} > ${i}`);else if(typeof r=="object"&&!Sd.alwaysValidSchema(s,r)){let l=t.var("valid",Nr._`${o} <= ${i}`);t.if(Nr.not(l),()=>a(l,i)),e.ok(l)}s.items=!0;function a(l,c){t.forRange("i",c,o,(u)=>{if(e.subschema({keyword:"unevaluatedItems",dataProp:u,dataPropType:Sd.Type.Num},l),!s.allErrors)t.if(Nr.not(l),()=>t.break())})}}};CO.default=J9});var JO=C(function(IO){Object.defineProperty(IO,"__esModule",{value:!0});var D9=NO(),L9=TO(),F9=[D9.default,L9.default];IO.default=F9});var DO=C(function(MO){Object.defineProperty(MO,"__esModule",{value:!0});var je=we(),V9={message:({schemaCode:e})=>je.str`must match format "${e}"`,params:({schemaCode:e})=>je._`{format: ${e}}`},W9={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:V9,code(e,t){let{gen:r,data:n,$data:s,schema:i,schemaCode:o,it:a}=e,{opts:l,errSchemaPath:c,schemaEnv:u,self:p}=a;if(!l.validateFormats)return;if(s)h();else m();function h(){let b=r.scopeValue("formats",{ref:p.formats,code:l.code.formats}),g=r.const("fDef",je._`${b}[${o}]`),y=r.let("fType"),w=r.let("format");r.if(je._`typeof ${g} == "object" && !(${g} instanceof RegExp)`,()=>r.assign(y,je._`${g}.type || "string"`).assign(w,je._`${g}.validate`),()=>r.assign(y,je._`"string"`).assign(w,g)),e.fail$data(je.or(j(),S()));function j(){if(l.strictSchema===!1)return je.nil;return je._`${o} && !${w}`}function S(){let E=u.$async?je._`(${g}.async ? await ${w}(${n}) : ${w}(${n}))`:je._`${w}(${n})`,k=je._`(typeof ${w} == "function" ? ${E} : ${w}.test(${n}))`;return je._`${w} && ${w} !== true && ${y} === ${t} && !${k}`}}function m(){let b=p.formats[i];if(!b){j();return}if(b===!0)return;let[g,y,w]=S(b);if(g===t)e.pass(E());function j(){if(l.strictSchema===!1){p.logger.warn(k());return}throw Error(k());function k(){return`unknown format "${i}" ignored in schema at path "${c}"`}}function S(k){let A=k instanceof RegExp?je.regexpCode(k):l.code.formats?je._`${l.code.formats}${je.getProperty(i)}`:void 0,R=r.scopeValue("formats",{key:i,ref:k,code:A});if(typeof k=="object"&&!(k instanceof RegExp))return[k.type||"string",k.validate,je._`${R}.validate`];return["string",k,R]}function E(){if(typeof b=="object"&&!(b instanceof RegExp)&&b.async){if(!u.$async)throw Error("async format in sync schema");return je._`await ${w}(${n})`}return typeof y=="function"?je._`${w}(${n})`:je._`${w}.test(${n})`}}}};MO.default=W9});var sy=C(function(LO){Object.defineProperty(LO,"__esModule",{value:!0});var B9=DO(),U9=[B9.default];LO.default=U9});var iy=C(function(FO){Object.defineProperty(FO,"__esModule",{value:!0});FO.contentVocabulary=FO.metadataVocabulary=void 0;FO.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];FO.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var WO=C(function(VO){Object.defineProperty(VO,"__esModule",{value:!0});var K9=Yg(),Y9=Xg(),X9=ty(),Z9=$O(),Q9=RO(),eG=JO(),tG=sy(),Ed=iy(),rG=[Z9.default,K9.default,Y9.default,(0,X9.default)(!0),tG.default,Ed.metadataVocabulary,Ed.contentVocabulary,Q9.default,eG.default];VO.default=rG});var zO=C(function(BO){Object.defineProperty(BO,"__esModule",{value:!0});BO.DiscrError=void 0;var HO;(function(e){e.Tag="tag",e.Mapping="mapping"})(HO||(BO.DiscrError=HO={}))});var oy=C(function(KO){Object.defineProperty(KO,"__esModule",{value:!0});var ln=we(),La=zO(),jd=cc(),sG=Aa(),GO=Oe(),iG={message:({params:{discrError:e,tagName:t}})=>e===La.DiscrError.Tag?`tag "${t}" must be string`:`value of tag "${t}" must be in oneOf`,params:({params:{discrError:e,tag:t,tagName:r}})=>ln._`{error: ${e}, tag: ${r}, tagValue: ${t}}`},oG={keyword:"discriminator",type:"object",schemaType:"object",error:iG,code(e){let{gen:t,data:r,schema:n,parentSchema:s,it:i}=e,{oneOf:o}=s;if(!i.opts.discriminator)throw Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw Error("discriminator: requires propertyName");if(n.mapping)throw Error("discriminator: mapping is not supported");if(!o)throw Error("discriminator: requires oneOf keyword");let l=t.let("valid",!1),c=t.const("tag",ln._`${r}${ln.getProperty(a)}`);t.if(ln._`typeof ${c} == "string"`,()=>u(),()=>e.error(!1,{discrError:La.DiscrError.Tag,tag:c,tagName:a})),e.ok(l);function u(){let m=h();t.if(!1);for(let b in m)t.elseIf(ln._`${c} === ${b}`),t.assign(l,p(m[b]));t.else(),e.error(!1,{discrError:La.DiscrError.Mapping,tag:c,tagName:a}),t.endIf()}function p(m){let b=t.name("valid"),g=e.subschema({keyword:"oneOf",schemaProp:m},b);return e.mergeEvaluated(g,ln.Name),b}function h(){var m;let b={},g=w(s),y=!0;for(let E=0;E<o.length;E++){let k=o[E];if((k===null||k===void 0?void 0:k.$ref)&&!GO.schemaHasRulesButRef(k,i.self.RULES)){let R=k.$ref;if(k=jd.resolveRef.call(i.self,i.schemaEnv.root,i.baseId,R),k instanceof jd.SchemaEnv)k=k.schema;if(k===void 0)throw new sG.default(i.opts.uriResolver,i.baseId,R)}let A=(m=k===null||k===void 0?void 0:k.properties)===null||m===void 0?void 0:m[a];if(typeof A!="object")throw Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);y=y&&(g||w(k)),j(A,E)}if(!y)throw Error(`discriminator: "${a}" must be required`);return b;function w({required:E}){return Array.isArray(E)&&E.includes(a)}function j(E,k){if(E.const)S(E.const,k);else if(E.enum)for(let A of E.enum)S(A,k);else throw Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function S(E,k){if(typeof E!="string"||E in b)throw Error(`discriminator: "${a}" values must be unique strings`);b[E]=k}}}};KO.default=oG});var YO=C(function(yle,lG){lG.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/schema",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/core":!0,"https://json-schema.org/draft/2020-12/vocab/applicator":!0,"https://json-schema.org/draft/2020-12/vocab/unevaluated":!0,"https://json-schema.org/draft/2020-12/vocab/validation":!0,"https://json-schema.org/draft/2020-12/vocab/meta-data":!0,"https://json-schema.org/draft/2020-12/vocab/format-annotation":!0,"https://json-schema.org/draft/2020-12/vocab/content":!0},$dynamicAnchor:"meta",title:"Core and Validation specifications meta-schema",allOf:[{$ref:"meta/core"},{$ref:"meta/applicator"},{$ref:"meta/unevaluated"},{$ref:"meta/validation"},{$ref:"meta/meta-data"},{$ref:"meta/format-annotation"},{$ref:"meta/content"}],type:["object","boolean"],$comment:"This meta-schema also defines keywords that have appeared in previous drafts in order to prevent incompatible extensions as they remain in common use.",properties:{definitions:{$comment:'"definitions" has been replaced by "$defs".',type:"object",additionalProperties:{$dynamicRef:"#meta"},deprecated:!0,default:{}},dependencies:{$comment:'"dependencies" has been split and replaced by "dependentSchemas" and "dependentRequired" in order to serve their differing semantics.',type:"object",additionalProperties:{anyOf:[{$dynamicRef:"#meta"},{$ref:"meta/validation#/$defs/stringArray"}]},deprecated:!0,default:{}},$recursiveAnchor:{$comment:'"$recursiveAnchor" has been replaced by "$dynamicAnchor".',$ref:"meta/core#/$defs/anchorString",deprecated:!0},$recursiveRef:{$comment:'"$recursiveRef" has been replaced by "$dynamicRef".',$ref:"meta/core#/$defs/uriReferenceString",deprecated:!0}}}});var XO=C(function(ble,cG){cG.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/applicator",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/applicator":!0},$dynamicAnchor:"meta",title:"Applicator vocabulary meta-schema",type:["object","boolean"],properties:{prefixItems:{$ref:"#/$defs/schemaArray"},items:{$dynamicRef:"#meta"},contains:{$dynamicRef:"#meta"},additionalProperties:{$dynamicRef:"#meta"},properties:{type:"object",additionalProperties:{$dynamicRef:"#meta"},default:{}},patternProperties:{type:"object",additionalProperties:{$dynamicRef:"#meta"},propertyNames:{format:"regex"},default:{}},dependentSchemas:{type:"object",additionalProperties:{$dynamicRef:"#meta"},default:{}},propertyNames:{$dynamicRef:"#meta"},if:{$dynamicRef:"#meta"},then:{$dynamicRef:"#meta"},else:{$dynamicRef:"#meta"},allOf:{$ref:"#/$defs/schemaArray"},anyOf:{$ref:"#/$defs/schemaArray"},oneOf:{$ref:"#/$defs/schemaArray"},not:{$dynamicRef:"#meta"}},$defs:{schemaArray:{type:"array",minItems:1,items:{$dynamicRef:"#meta"}}}}});var ZO=C(function(xle,uG){uG.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/unevaluated",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/unevaluated":!0},$dynamicAnchor:"meta",title:"Unevaluated applicator vocabulary meta-schema",type:["object","boolean"],properties:{unevaluatedItems:{$dynamicRef:"#meta"},unevaluatedProperties:{$dynamicRef:"#meta"}}}});var QO=C(function($le,fG){fG.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/content",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/content":!0},$dynamicAnchor:"meta",title:"Content vocabulary meta-schema",type:["object","boolean"],properties:{contentEncoding:{type:"string"},contentMediaType:{type:"string"},contentSchema:{$dynamicRef:"#meta"}}}});var eN=C(function(wle,dG){dG.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/core",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/core":!0},$dynamicAnchor:"meta",title:"Core vocabulary meta-schema",type:["object","boolean"],properties:{$id:{$ref:"#/$defs/uriReferenceString",$comment:"Non-empty fragments not allowed.",pattern:"^[^#]*#?$"},$schema:{$ref:"#/$defs/uriString"},$ref:{$ref:"#/$defs/uriReferenceString"},$anchor:{$ref:"#/$defs/anchorString"},$dynamicRef:{$ref:"#/$defs/uriReferenceString"},$dynamicAnchor:{$ref:"#/$defs/anchorString"},$vocabulary:{type:"object",propertyNames:{$ref:"#/$defs/uriString"},additionalProperties:{type:"boolean"}},$comment:{type:"string"},$defs:{type:"object",additionalProperties:{$dynamicRef:"#meta"}}},$defs:{anchorString:{type:"string",pattern:"^[A-Za-z_][-A-Za-z0-9._]*$"},uriString:{type:"string",format:"uri"},uriReferenceString:{type:"string",format:"uri-reference"}}}});var tN=C(function(vle,pG){pG.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/format-annotation",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/format-annotation":!0},$dynamicAnchor:"meta",title:"Format vocabulary meta-schema for annotation results",type:["object","boolean"],properties:{format:{type:"string"}}}});var rN=C(function(Sle,mG){mG.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/meta-data",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/meta-data":!0},$dynamicAnchor:"meta",title:"Meta-data vocabulary meta-schema",type:["object","boolean"],properties:{title:{type:"string"},description:{type:"string"},default:!0,deprecated:{type:"boolean",default:!1},readOnly:{type:"boolean",default:!1},writeOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0}}}});var nN=C(function(Ele,hG){hG.exports={$schema:"https://json-schema.org/draft/2020-12/schema",$id:"https://json-schema.org/draft/2020-12/meta/validation",$vocabulary:{"https://json-schema.org/draft/2020-12/vocab/validation":!0},$dynamicAnchor:"meta",title:"Validation vocabulary meta-schema",type:["object","boolean"],properties:{type:{anyOf:[{$ref:"#/$defs/simpleTypes"},{type:"array",items:{$ref:"#/$defs/simpleTypes"},minItems:1,uniqueItems:!0}]},const:!0,enum:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/$defs/nonNegativeInteger"},minLength:{$ref:"#/$defs/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},maxItems:{$ref:"#/$defs/nonNegativeInteger"},minItems:{$ref:"#/$defs/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},maxContains:{$ref:"#/$defs/nonNegativeInteger"},minContains:{$ref:"#/$defs/nonNegativeInteger",default:1},maxProperties:{$ref:"#/$defs/nonNegativeInteger"},minProperties:{$ref:"#/$defs/nonNegativeIntegerDefault0"},required:{$ref:"#/$defs/stringArray"},dependentRequired:{type:"object",additionalProperties:{$ref:"#/$defs/stringArray"}}},$defs:{nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{$ref:"#/$defs/nonNegativeInteger",default:0},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}}}});var iN=C(function(sN){Object.defineProperty(sN,"__esModule",{value:!0});var gG=YO(),yG=XO(),bG=ZO(),xG=QO(),$G=eN(),wG=tN(),vG=rN(),SG=nN(),EG=["/properties"];function jG(e){return[gG,yG,bG,xG,$G,t(this,wG),vG,t(this,SG)].forEach((r)=>this.addMetaSchema(r,void 0,!1)),this;function t(r,n){return e?r.$dataMetaSchema(n,EG):n}}sN.default=jG});var cy=C(function(Cr,ly){Object.defineProperty(Cr,"__esModule",{value:!0});Cr.MissingRefError=Cr.ValidationError=Cr.CodeGen=Cr.Name=Cr.nil=Cr.stringify=Cr.str=Cr._=Cr.KeywordCxt=Cr.Ajv2020=void 0;var kG=Kg(),_G=WO(),AG=oy(),RG=iN(),ay="https://json-schema.org/draft/2020-12/schema";class dc extends kG.default{constructor(e={}){super({...e,dynamicRef:!0,next:!0,unevaluated:!0})}_addVocabularies(){if(super._addVocabularies(),_G.default.forEach((e)=>this.addVocabulary(e)),this.opts.discriminator)this.addKeyword(AG.default)}_addDefaultMetaSchema(){super._addDefaultMetaSchema();let{$data:e,meta:t}=this.opts;if(!t)return;RG.default.call(this,e),this.refs["http://json-schema.org/schema"]=ay}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ay)?ay:void 0)}}Cr.Ajv2020=dc;ly.exports=Cr=dc;ly.exports.Ajv2020=dc;Object.defineProperty(Cr,"__esModule",{value:!0});Cr.default=dc;var OG=ka();Object.defineProperty(Cr,"KeywordCxt",{enumerable:!0,get:function(){return OG.KeywordCxt}});var Fa=we();Object.defineProperty(Cr,"_",{enumerable:!0,get:function(){return Fa._}});Object.defineProperty(Cr,"str",{enumerable:!0,get:function(){return Fa.str}});Object.defineProperty(Cr,"stringify",{enumerable:!0,get:function(){return Fa.stringify}});Object.defineProperty(Cr,"nil",{enumerable:!0,get:function(){return Fa.nil}});Object.defineProperty(Cr,"Name",{enumerable:!0,get:function(){return Fa.Name}});Object.defineProperty(Cr,"CodeGen",{enumerable:!0,get:function(){return Fa.CodeGen}});var NG=ac();Object.defineProperty(Cr,"ValidationError",{enumerable:!0,get:function(){return NG.default}});var CG=Aa();Object.defineProperty(Cr,"MissingRefError",{enumerable:!0,get:function(){return CG.default}})});import{existsSync as kd,readFileSync as lN}from"node:fs";import{createRequire as oN}from"node:module";import{basename as JG,isAbsolute as MG,relative as DG,resolve as uy}from"node:path";import{fileURLToPath as aN,pathToFileURL as LG}from"node:url";function Pd(e){return JSON.parse(lN(e,"utf8"))}async function cN(e){let t=uy(e),r=kn(t),n=uy(t,"project.schema.json");if(!kd(r))throw Error(`No project.jxn or project.json in ${t}`);if(!kd(n))throw Error(`project.schema.json not found in ${t} — run \`jx schema\` to generate it from `+"the project file's extensions");let s=Yc(lN(r,"utf8"),r),i=Pd(n);i.$id=LG(n).href;let o;try{({default:o}=await Promise.resolve().then(() => br(cy(),1)))}catch(p){throw Error("Project validation requires ajv: bun add ajv",{cause:p})}let l=await new o({allErrors:!0,loadSchema:(p)=>VG(p,t),strict:!1}).compileAsync(i),c=l(s),u=l.errors??null;return{errors:u&&ps(r)?qG(u,s):u,file:JG(r),valid:c}}function FG(e,t){let r=e;for(let n of t.split("/").slice(1)){let s=n.replaceAll("~1","/").replaceAll("~0","~");r=Array.isArray(r)?r[Number(s)]:W(r)?r[s]:void 0}return r}function qG(e,t){return e.map((r)=>{if(!V(r)||!("keyword"in r)||r.keyword!=="type"||!("params"in r)||!V(r.params)||!("type"in r.params)||r.params.type!=="array"||!("instancePath"in r)||!O(r.instancePath))return r;let n=FG(t,r.instancePath),s=Dt(n,"",r.instancePath),i=r.instancePath.split("/").at(-1)??"";if(s===null||s.includes(`
|
|
614
|
+
`)||i==="")return r;return{...r,message:`must be a list, written as ${i} { - ${s} }`}})}async function VG(e,t){if(!e.startsWith("file:"))throw Error(`Cannot resolve schema ref "${e}": only project-relative file refs are loadable (canonical URIs must resolve from already-loaded fragments)`);let r=aN(e),n=DG(t,r);if(n.startsWith("..")||MG(n))throw Error(`Schema ref "${e}" escapes the project root ${t}`);if(kd(r))return Pd(r);let s=n.split("\\").join("/"),i="node_modules/",o=s.lastIndexOf(i);if(o===-1)throw Error(`Schema ref "${e}" does not exist`);let a=s.slice(o+i.length),l="@jxsuite/schema/",c;try{c=oN(uy(t,"package.json")).resolve(a)}catch(u){if(!a.startsWith(l))throw Error(`Schema ref "${e}" does not exist and "${a}" is not resolvable from the `+"project — is the package installed?",{cause:u});try{c=oN(import.meta.url).resolve(a)}catch(p){let h=aN(new URL(`../${a.slice(l.length)}`,import.meta.url));if(kd(h))return Pd(h);throw Error(`Schema ref "${e}" does not exist and "${a}" is not resolvable from the project or this host's core`,{cause:p})}}return Pd(c)}var uN=D(()=>{be();Vc();Gc();Xc();Fo()});function Xn(e){return W(e.attributes)?e.attributes:{}}function ar(e,t){let r=Xn(e)[t];return O(r)?r:null}function Et(e){return O(e.tagName)?e.tagName.toLowerCase():""}function gr(e,t="the popover"){let r=O(e.id)?e.id:ar(e,"id");if(r)return`#${r}`;let n=Et(e);return n===""?t:`the <${n}>`}function BG(e){let t=Xn(e).popover;return O(t)?t:null}function dN(e){let t=new Set,r=new Set;for(let n of e){let s=n!==null&&O(n.tagName)?n.tagName:"";if(n===null||!s.includes("-"))continue;if(fy(n))t.add(s);let i=n.observedAttributes;if(Array.isArray(i)&&UG.every((o)=>i.includes(o)))r.add(s)}return{invokerTags:r,popoverTags:t}}function fy(e){return"popover"in Xn(e)||"popover"in e}function pc(e,t){return fy(e)||(t?.popoverTags?.has(Et(e))??!1)}function ji(e){if(O(e.id)&&e.id!=="")return e.id;let t=ar(e,"id");return t===""?null:t}function*Yn(e,t=[],r=null,n){yield{enclosing:r,node:e,path:t};let s=pc(e,n)?e:r,{children:i}=e;if(Array.isArray(i)){for(let[l,c]of i.entries())if(V(c))yield*Yn(c,[...t,"children",l],s,n)}else if(W(i)&&xr(i.map))yield*Yn(i.map,[...t,"children","map"],s,n);let o=xr(e.map)?e.map:null;if(o)yield*Yn(o,[...t,"map"],s,n);let a=W(e.cases)?e.cases:{};for(let[l,c]of Object.entries(a))if(V(c))yield*Yn(c,[...t,"cases",l],s,n)}function dy(e,t){let r=[];for(let{node:n}of Yn(e,[],null,t)){if(!pc(n,t))continue;let s=ji(n);if(s!==null&&!r.includes(s))r.push(s)}return r}function _d(e){return e.startsWith("@")}function pN(e){return e.startsWith(":")||e.startsWith("&")||e.startsWith(".")||e.startsWith("[")}function hr(e,t){let r=e?.[t];if(r===void 0||Oi(r)||Array.isArray(r))return null;return String(r)}function mN(e){for(let[t,r]of Object.entries(e??{})){if(!Oi(r))continue;if(pN(t)&&t.includes(":popover-open")&&hr(r,"display")!==null)return!0;if(_d(t)&&mN(r))return!0}return!1}function hN(e){for(let[t,r]of Object.entries(e??{})){if(!Oi(r))continue;if(pN(t)&&t.includes(":popover-open"))return!0;if(_d(t)&&hN(r))return!0}return!1}function GG(e){return zG.some((t)=>hr(e,t)!==null)}function KG(e){if(!e)return[];let t=[];for(let[r,n]of Object.entries(e))if(_d(r)&&Oi(n)&&hr(n,"display")!==null)t.push(r);return t}function gN(e){if(!e)return[];let t=[],r=hr(e,"transition");if(r!==null)t.push(r);for(let[n,s]of Object.entries(e))if(_d(n)&&Oi(s))t.push(...gN(s));return t}function YG(e){if(!e)return!1;if(hr(e,"positionAnchor")!==null||hr(e,"position-anchor")!==null)return!0;return["top","left","right","bottom","inset","insetBlockStart","insetInlineStart"].some((t)=>(hr(e,t)??"").includes("anchor("))}function XG(e){if(!e)return!1;if(hr(e,"positionArea")!==null||hr(e,"position-area")!==null||hr(e,"positionTryFallbacks")!==null||hr(e,"position-try-fallbacks")!==null)return!0;return Object.keys(e).some((t)=>t.startsWith("@supports"))}function yN(e,t){let r=[...Yn(e,[],null,t)],n=dy(e,t),s=r.some(({node:a})=>pc(a,t)),i=new Set;for(let{node:a}of r)if(fN.has(Et(a))){let l=ar(a,"popovertarget");if(l!==null)i.add(l)}let o=[];for(let{enclosing:a,node:l,path:c}of r)if(o.push(...ZG(l,c,a,n,s,t)),fy(l))o.push(...QG(l,c,i));return o}function ZG(e,t,r,n,s,i){let o=[],a=Et(e),l=ar(e,"popovertarget"),c=fN.has(a)||(i?.invokerTags?.has(a)??!1);if(l!==null&&!c)return o.push({detail:"`popovertarget` and `popovertargetaction` come from the `PopoverTargetAttributes` IDL mixin, which HTML includes into `HTMLButtonElement` and `HTMLInputElement` and into nothing else. Elsewhere they parse and do nothing. A link inside an open popover "+"dismisses it by navigating away, which is why this looks like it works — but it does "+`not for a new tab or a same-page fragment. Remove both attributes. ${it}`,fix:"invoker",message:`<${a||"element"}> carries popovertarget, which only <button> and <input> support.`,path:t,rule:"invoker-not-button",severity:"error"}),o;if(l!==null){if(s&&!n.includes(l)){let u=n.length>0?`The popovers here are: ${n.map((p)=>`"${p}"`).join(", ")}. `:"";o.push({detail:`No element in this document declares \`popover\` with the id "${l}". ${u}A target that names nothing does nothing, silently. ${it}`,message:`popovertarget="${l}" names no popover in this document.`,path:t,rule:"target-missing",severity:"error"})}else if(r!==null&&ji(r)!==null&&ji(r)!==l)o.push({detail:`This control is inside ${gr(r)} but targets "${l}". Dismissing a different popover leaves the one the reader is looking at open. This is usually a copy-paste between two panels in the same file. ${it}`,message:`A control inside ${gr(r)} targets "${l}" instead.`,path:t,rule:"target-mismatch",severity:"warn"})}if(a==="a"&&r!==null&&l===null){let u=ar(e,"href")??(O(e.href)?e.href:null),p=ar(e,"target")==="_blank",h=u!==null&&u.includes("#");if(p||h){let m=p?"it opens a new tab, so the panel stays open on the page behind it. ":"it is a same-document fragment, so the page scrolls behind the open panel. ";o.push({detail:`A link inside a panel normally dismisses it by navigating away. This one does not: ${m}`+"There is no declarative fix — a link cannot carry `popovertarget`. Move it out of the "+`panel, make it a <button>, or accept it deliberately. ${it}`,message:`A link inside ${gr(r)} does not dismiss it.`,path:t,rule:"link-does-not-dismiss",severity:"warn"})}}return o}function QG(e,t,r){let n=[],{style:s}=e,i=gr(e),o=BG(e);if(o!==null&&o!==""&&!HG.some((c)=>c===o))n.push({detail:"`popover` is an enumerated attribute taking `auto`, `manual` or `hint`. Anything else falls back to the invalid-value default `manual`, which gives up light dismiss and gives "+`up Escape — so the panel opens and there is no way to close it. Write "auto". ${it}`,fix:"mode",message:`${i} declares popover="${o}", which is not one of auto, manual or hint.`,path:t,rule:"invalid-mode",severity:"error"});else if(Qt(Xn(e).popover))n.push({detail:`\`popover\` carries its value in its text, so a boolean is not the right shape. Written as \`true\` it reaches two of the compiler's emitters as \`popover="true"\`, which is not one of the three keywords, so HTML falls back to \`manual\`: no light dismiss, no Escape, and the trigger stops toggling. Write "auto". ${it}`,fix:"mode",message:`${i} writes popover as a boolean.`,path:t,rule:"invalid-mode",severity:"error"});let a=hr(s,"display");if(a!==null&&a!=="revert"&&a!=="revert-layer")n.push({detail:"A closed popover is hidden by the browser's own `[popover]:not(:popover-open) { display: none }`. That rule is UA-origin, so any author `display` beats it at any specificity, and "+"the panel is laid out on every page whether it is open or not — usually parked off the "+`side of the viewport by the transform meant to animate it, so nothing looks wrong until you scroll sideways. \`display\` belongs in \`:popover-open\` and nowhere else. ${it}`,fix:"display",message:`${i} sets display in its base rule.`,path:t,rule:"base-display",severity:"error"});for(let c of KG(s))n.push({detail:`The same defect as a base \`display\`, arriving through \`${c}\` and therefore only at `+"one width — which is what makes it hard to see. Gate the TRIGGER on a breakpoint, never "+`the panel: the popover mechanism is what hides the panel. ${it}`,fix:"display",message:`${i} sets display inside ${c}.`,path:t,rule:"breakpoint-display",severity:"error"});if(hr(s,"visibility")!==null)n.push({detail:`A second hiding mechanism the browser already provides. Once \`display\` leaves the base rule this one only adds a frame of flicker on open, and it hides the element from assistive technology in a way \`display: none\` already did. ${it}`,fix:"display",message:`${i} also hides itself with visibility.`,path:t,rule:"base-visibility",severity:"warn"});if(!hN(s))n.push({detail:"Nothing changes when it opens, so no transition on it can run and — if `display` is not "+"in the base rule — the panel has no `display` at all while open. This is usually a panel "+`that was styled before it was made a popover. ${it}`,message:`${i} has no :popover-open rule.`,path:t,rule:"no-open-rule",severity:"warn"});else if(!mN(s)&&a===null&&GG(s))n.push({detail:`${i} declares flex or grid properties, but neither its base rule nor its `+"`:popover-open` rule sets a `display` for them to apply to — and the base rule must not "+`(that is what keeps the closed panel hidden). So it opens with the UA's \`display: block\` and the layout silently does nothing. Put \`display: flex\` in \`:popover-open\`. ${it}`,fix:"open-display",message:`${i} is laid out with flex or grid but never sets display.`,path:t,rule:"no-open-display",severity:"error"});for(let c of gN(s))if(c.includes("display")&&!c.includes("overlay")){n.push({detail:"`display …allow-discrete` keeps the box alive while it animates out; `overlay "+"…allow-discrete` is what keeps it in the TOP LAYER for those same milliseconds. "+`Without it the panel drops behind the page content and the backdrop disappears a frame early, so the exit reads as a flicker rather than an animation. ${it}`,message:`${i} transitions display but not overlay.`,path:t,rule:"cut-exit",severity:"warn"});break}if(YG(s)&&!XG(s))n.push({detail:"When `anchor()` does not resolve, every inset it feeds computes to `auto` — and a "+`\`position: fixed\` box with four \`auto\` insets falls back to its STATIC position, which for a panel declared inside a header is in the middle of the header. Use \`position-area\` with \`position-try-fallbacks\`, or add a \`@supports\` block that positions it without anchors. ${it}`,message:`${i} is anchor-positioned with no fallback.`,path:t,rule:"unsafe-anchor",severity:"warn"});let l=ji(e);if(l!==null&&!r.has(l))n.push({detail:`No \`<button>\` or \`<input>\` in this document names it with \`popovertarget\`. If it is opened from another file or from a function that calls \`showPopover()\`, this is fine; otherwise there is no way for a reader to open it. ${it}`,message:`${i} has no invoker in this document.`,path:t,rule:"no-invoker",severity:"warn"});return n}var HG,fN,UG,zG,it="See docs/framework/concepts/overlays.";var Ad=D(()=>{be();HG=["auto","manual","hint"],fN=new Set(["button","input"]);UG=["popovertarget","popovertargetaction","command","commandfor"];zG=["flexDirection","flex-direction","alignItems","align-items","justifyContent","justify-content","flexWrap","flex-wrap","gridTemplateColumns","grid-template-columns","gridTemplateRows","grid-template-rows","gap"]});function Ha(e,t){let r=Xn(e),n=t in r?r[t]:e[t];if(n===void 0||n===null)return{kind:"absent"};if(He(n)||W(n))return{kind:"bound"};if(O(n))return n.includes("${")?{kind:"bound"}:{kind:"text",text:n};return{isTrue:n===!0,kind:"other"}}function Va(e,t){let r=Ha(e,t);return r.kind==="text"&&r.text.trim()!==""?r.text:null}function lr(e,t){return Ha(e,t).kind!=="absent"}function Pi(e){let t=Ha(e,"role");if(t.kind==="bound")return Wa;return t.kind==="text"?t.text.trim().toLowerCase().split(/\s+/)[0]:null}function Rd(e){let t=Ha(e,"id");if(t.kind==="bound")return Wa;return t.kind==="text"&&t.text!==""?t.text:null}function cn(e,t){let r=Ha(e,t);return r.kind==="bound"||r.kind==="text"&&r.text.trim()!==""}function Od(e){let t=e.textContent;if(O(t)){if(t.trim()!=="")return!0}else if(t!==void 0&&t!==null)return!0;if(cn(e,"aria-label")||lr(e,"aria-labelledby"))return!0;if(Et(e)==="img"&&(cn(e,"alt")||cn(e,"title")))return!0;if(Et(e)==="slot")return!0;let{children:r}=e;if(Array.isArray(r)){for(let s of r)if(O(s)){if(s.trim()!=="")return!0}else if(V(s)&&Od(s))return!0}else if(r!=null)return!0;if(W(e.map))return!0;return(W(e.cases)?Object.values(e.cases):[]).some((s)=>xr(s)&&Od(s))}function*qa(e,t=[],r=[],n=[]){yield{node:e,path:t,roles:r,tags:n};let s=[...r,Pi(e)],i=[...n,Et(e)],{children:o}=e;if(Array.isArray(o)){for(let[a,l]of o.entries())if(V(l))yield*qa(l,[...t,"children",a],s,i)}else if(W(o)&&xr(o.map))yield*qa(o.map,[...t,"children","map"],s,i);if(xr(e.map))yield*qa(e.map,[...t,"map"],s,i);if(W(e.cases)){for(let[a,l]of Object.entries(e.cases))if(V(l))yield*qa(l,[...t,"cases",a],s,i)}}function iK(e){return e.some((t)=>t.includes("-"))}function Zn(e,t,r,n,s,i="error"){return{criterion:s,detail:`${n} ${eK}`,message:r,path:t,rule:e,severity:i}}function bN(e,t,r){if(r.includes("label"))return!0;if(e===Wa||t.bound)return!0;return e!==null&&t.ids.has(e)}function oK(e,t){let{node:r,path:n,tags:s}=e,i=Et(r),o=Pi(r);if(o==="bound")return null;if(cn(r,"aria-label")||lr(r,"aria-labelledby")||cn(r,"title"))return null;let l=gr(r,"the control"),c=(p)=>Zn("interactive-unnamed",n,`${l} has no accessible name.`,`A control with no name is announced as its role alone, so a reader hears "button" and nothing else. ${p}`,"4.1.2"),u=aK(r,i,t,s);if(u==="named"||u==="exempt")return null;if(o!==null&&tK.has(o))return Od(r)?null:c("Give it text content, or an aria-label.");if(o!==null&&rK.has(o))return c("Give it an aria-label, or aria-labelledby naming its visible label.");if(o!==null)return null;if(i==="button"||i==="summary"||i==="a"&&lr(r,"href"))return Od(r)?null:c("Give it text content, or an aria-label.");if(u==="unnamed")return c("Give it a <label for> naming its id, or an aria-label.");if(u==="unnamed-value")return c("Give it a value, or an aria-label.");if(u==="unnamed-alt")return c("Give it an alt, or an aria-label.");return null}function aK(e,t,r,n){if(t==="area"){if(!lr(e,"href"))return"none";return cn(e,"alt")?"named":"unnamed-alt"}if(t==="select"||t==="textarea")return bN(Rd(e),r,n)||cn(e,"placeholder")?"named":"unnamed";if(t!=="input")return"none";let s=(Va(e,"type")??"text").toLowerCase();if(s==="hidden"||lr(e,"type")&&Va(e,"type")===null)return"exempt";if(nK.has(s))return cn(e,"value")?"named":"unnamed-value";if(s==="image")return cn(e,"alt")?"named":"unnamed-alt";return bN(Rd(e),r,n)||cn(e,"placeholder")?"named":"unnamed"}function cK(e){let{node:t,path:r,tags:n}=e,s=Et(t);if(!s.includes("-")||!n.some((i)=>lK.has(i)))return null;return Zn("custom-element-in-select",r,`<${s}> is a custom element inside a <select>.`,'A <select> builds its own rows: an element it does not know is not in select.options, so it cannot be picked, cannot be reached with the arrow keys, and fires no change event — while role="option" on it still makes the accessibility tree read as though it could. Every row of a <select> is a native <option>; a listbox whose rows are jx-option elements is a jx-listbox.',"4.1.2")}function uK(e){let{node:t,path:r}=e;if(Et(t)!=="img")return null;let n=Pi(t);if(n==="bound"||n==="presentation"||n==="none")return null;if(lr(t,"alt")||cn(t,"aria-label")||lr(t,"aria-labelledby"))return null;return Zn("img-alt-missing",r,`${gr(t,"the image")} has no alt text.`,'An image with no alt is announced by its file name. Describe it in alt, or write alt="" for a decorative one.',"1.1.1")}function dK(e,t){let{node:r,path:n}=e,s=[];for(let i of fK){let o=Va(r,i);if(o===null)continue;for(let a of o.split(/\s+/))if(a!==""&&!t.has(a))s.push(Zn("aria-target-missing",n,`${gr(r,"the element")} points ${i} at #${a}, which nothing in this document has as its id.`,"A reference to an id that is not in the document is silently dropped, so the relationship it declares does not exist. Name an element that is here, or give that element the id.","1.3.1"))}return s}function pK(e,t,r){for(let n of xN.get(t)??[]){let s=r.get(n);if(s===void 0)continue;if(s.bound)return!0;if(e===Wa&&s.ids.size>0)return!0;if(e!==null&&e!==Wa&&s.ids.has(e))return!0}return!1}function mK(e,t){let{node:r,path:n,roles:s,tags:i}=e,o=Pi(r);if(o===null||o==="bound"||n.length===0||iK(i))return null;if(s.includes("bound")||pK(Rd(r),o,t))return null;let a=gr(r,"the element");if(o==="tab"&&!s.includes("tablist"))return Zn("tab-outside-tablist",n,`${a} is a tab outside any tablist.`,'A tab is announced with its position in a tablist, so one with no tablist ancestor has no place to be counted in. Put the tabs in a container with role="tablist".',"1.3.1");if((o==="menuitem"||o==="menuitemcheckbox"||o==="menuitemradio")&&!s.includes("menu")&&!s.includes("menubar"))return Zn("menuitem-outside-menu",n,`${a} is a ${o} outside any menu.`,'A menu item is owned by a menu, and is announced as one of its items. Put it in a container with role="menu" or role="menubar".',"1.3.1");if(o==="option"&&!s.includes("listbox")&&!i.includes("select")&&!i.includes("datalist"))return Zn("option-outside-listbox",n,`${a} is an option outside any listbox.`,'An option is owned by a listbox, and is announced as one of its choices. Put it in a container with role="listbox", or in a <select>.',"1.3.1");return null}function hK(e){let t=[];for(let{node:r}of qa(e)){if(Pi(r)!=="tab")continue;let n=Ha(r,"aria-selected");if(n.kind==="bound")return null;t.push(n.kind==="other"&&n.isTrue||n.kind==="text"&&n.text==="true")}return t}function gK(e){let{node:t,path:r}=e;if(Pi(t)!=="tablist")return null;let n=hK(t);if(n===null||n.length===0||n.includes(!0))return null;return Zn("tablist-none-selected",r,`${gr(t,"the tablist")} has ${n.length} tab(s) and none is selected.`,'A tablist always has a current tab, and aria-selected="true" is how it is announced. Mark the tab whose panel is showing.',"4.1.2","warn")}function yK(e){let{node:t,path:r}=e,n=Pi(t);if(!(Et(t)==="dialog"||n==="dialog"||n==="alertdialog")||n==="bound")return null;if(cn(t,"aria-label")||lr(t,"aria-labelledby"))return null;return Zn("dialog-unnamed",r,`${gr(t,"the dialog")} has no accessible name.`,"A dialog is announced by its name when it opens, and its content does not name it. Give it aria-labelledby naming its heading, or an aria-label.","4.1.2")}function xK(e){let{node:t,path:r}=e;if(!lr(t,"aria-activedescendant"))return null;let n=Et(t);if(bK.has(n)||n==="a"&&lr(t,"href")||lr(t,"tabIndex")||lr(t,"tabindex")||lr(t,"contenteditable"))return null;return Zn("activedescendant-not-focusable",r,`${gr(t,"the element")} manages focus with aria-activedescendant but cannot itself take focus.`,"aria-activedescendant names the active child of a FOCUSED container; on one that cannot be focused, the keyboard never reaches it. Give the container a tabindex.","2.1.1")}function $N(e){let t=[...qa(e)],r=new Set,n={bound:!1,ids:new Set},s=new Map,i=!1;for(let{node:a}of t){let l=Pi(a);if(l!==null&&sK.has(l)){let u=s.get(l)??{bound:!1,ids:new Set},p=Va(a,"aria-owns");if(p===null)u.bound||=lr(a,"aria-owns");else for(let h of p.split(/\s+/))if(h!=="")u.ids.add(h);s.set(l,u)}let c=Rd(a);if(c===Wa)i=!0;else if(c!==null)r.add(c);if(Et(a)==="label"){let u=Va(a,"for")??Va(a,"htmlFor");if(u===null)n.bound||=lr(a,"for")||lr(a,"htmlFor");else n.ids.add(u)}}let o=[];for(let a of t){let l=[oK(a,n),uK(a),mK(a,s),cK(a),gK(a),yK(a),xK(a)];for(let c of l)if(c)o.push(c);if(!i)o.push(...dK(a,r))}return o}var eK="See docs/framework/concepts/accessibility.",Wa="bound",tK,rK,nK,xN,sK,lK,fK,bK;var wN=D(()=>{be();Ad();tK=new Set(["button","checkbox","link","menuitem","menuitemcheckbox","menuitemradio","option","radio","switch","tab","treeitem"]),rK=new Set(["combobox","listbox","searchbox","slider","spinbutton","textbox"]),nK=new Set(["button","reset","submit"]),xN=new Map([["menuitem",["menu","menubar"]],["menuitemcheckbox",["menu","menubar"]],["menuitemradio",["menu","menubar"]],["option",["listbox"]],["tab",["tablist"]]]),sK=new Set([...xN.values()].flat());lK=new Set(["select","jx-select"]);fK=["aria-activedescendant","aria-controls","aria-describedby","aria-details","aria-errormessage","aria-flowto","aria-labelledby","aria-owns"];bK=new Set(["button","input","select","textarea"])});function py(e){return Et(e)==="dialog"}function vN(e){return e.startsWith("--")}function PK(e){let t=[];for(let{node:r}of Yn(e)){let n=ji(r);if(py(r)&&n!==null&&!t.includes(n))t.push(n)}return t}function kK(e){let t=e.oncommand;return t!==void 0&&t!==null}function _K(e,t){for(let{node:r}of Yn(e)){if(r===e)continue;let n=Et(r);if(n==="button"){let s=ar(r,"command"),i=ar(r,"commandfor");if(s!==null&&(s==="close"||s==="request-close")&&(i===null||i===t))return!0}if(n==="form"&&ar(r,"method")?.toLowerCase()==="dialog")return!0}return!1}function EN(e,t){let r=[...Yn(e,[],null,t)],n=PK(e),s=dy(e,t),i=n.length>0||s.length>0,o=new Map,a=new Map;for(let{node:c}of r){let u=ji(c);if(u!==null&&!o.has(u))o.set(u,c);if(Et(c)==="button"){let p=ar(c,"commandfor"),h=ar(c,"command");if(p!==null){let m=a.get(p)??new Set;m.add(h??""),a.set(p,m)}}}let l=[];for(let{node:c,path:u}of r)if(l.push(...AK(c,u,o,n,s,i,t)),py(c))l.push(...RK(c,u,a));return l}function AK(e,t,r,n,s,i,o){let a=[],l=Et(e),c=o?.invokerTags?.has(l)??!1,u=ar(e,"command"),p=ar(e,"commandfor");if(!(u!==null||p!==null||("command"in Xn(e))||("commandfor"in Xn(e))))return a;let m=gr(e,"the element");if(!jK.has(l)&&!c)return a.push({detail:"`command` and `commandfor` are attributes of `HTMLButtonElement` and of no other "+"interface — not even `<input>`, which `popovertarget` does allow. Elsewhere they parse "+`and do nothing. Make it a <button>, or remove both attributes. ${it}`,fix:"invoker",message:`<${l||"element"}> carries command/commandfor, which only <button> supports.`,path:t,rule:"invoker-not-button",severity:"error"}),a;if(u!==null&&!SK.has(u)&&!vN(u))return a.push({detail:`\`command\` is an enumerated attribute taking ${SN.map((b)=>`\`${b}\``).join(", ")}, or a custom command starting with \`--\`. Anything else is the invalid-value state, and a button in that state does nothing when clicked. ${it}`,message:`${m} declares command="${u}", which is not a built-in or --custom command.`,path:t,rule:"command-invalid",severity:"error"}),a;if(p!==null){let b=r.get(p),g=n.includes(p),y=s.includes(p);if(!b&&i){let w=[...n,...s].map((j)=>`"${j}"`).join(", ");return a.push({detail:`No element in this document has the id "${p}". The dialogs and popovers here are: ${w}. A commandfor that names nothing does nothing, silently. ${it}`,message:`commandfor="${p}" names nothing in this document.`,path:t,rule:"command-target-missing",severity:"error"}),a}if(u!==null&&b){if($K.has(u)&&!py(b))a.push({detail:`\`${u}\` acts on a <dialog>, and "${p}" is ${y?"a popover":`a <${Et(b)||"element"}>`}. The click is ignored. ${y?"Use `toggle-popover`, `show-popover` or `hide-popover` for a popover.":"Point it at a dialog, or make the target one."} ${it}`,message:`${m} sends ${u} to "${p}", which is not a dialog.`,path:t,rule:"command-target-mismatch",severity:"error"});else if(wK.has(u)&&!pc(b,o))a.push({detail:`\`${u}\` acts on a popover, and "${p}" is ${g?"a dialog":`a <${Et(b)||"element"}>`} that declares no \`popover\`. The click is ignored. ${g?"Use `show-modal`, `close` or `request-close` for a dialog.":"Give the target a `popover` attribute, or point the button elsewhere."} ${it}`,message:`${m} sends ${u} to "${p}", which is not a popover.`,path:t,rule:"command-target-mismatch",severity:"error"});else if(vN(u)&&!kK(b))a.push({detail:`A custom command is a \`CommandEvent\` dispatched at its target, and "${p}" has no `+"`oncommand` handler to answer it — so the click does nothing. Add one that switches on "+`\`event#/command\`, or use a built-in command. ${it}`,message:`${m} sends ${u} to "${p}", which handles no command.`,path:t,rule:"custom-command-unhandled",severity:"warn"})}}return a}function RK(e,t,r){let n=[],s=gr(e,"the dialog"),i=ji(e),{style:o}=e,a=ar(e,"closedby");if(a!==null&&!EK.has(a))n.push({detail:`\`closedby\` is an enumerated attribute taking \`any\` (light dismiss and Escape), \`closerequest\` (Escape only, the default for a modal) or \`none\`. Anything else is the invalid-value default, \`auto\`, which is the same as leaving it out. ${it}`,message:`${s} declares closedby="${a}", which is not any, closerequest or none.`,path:t,rule:"dialog-closedby-invalid",severity:"error"});if(hr(o,"display")!==null)n.push({detail:`A closed dialog is hidden by the browser's own \`dialog:not([open]) { display: none }\`. That rule is UA-origin, so any author \`display\` beats it, and the dialog is laid out on every page whether or not anyone opened it. \`display\` belongs in the \`&[open]\` rule and nowhere else. ${it}`,fix:"display",message:`${s} sets display in its base rule.`,path:t,rule:"dialog-display",severity:"error"});let l=i===null?void 0:r.get(i),c=ar(e,"open")!==null||Xn(e).open===!0||e.open===!0;if(i!==null&&!l?.has("show-modal")&&!c)n.push({detail:`No <button> in this document opens it with \`command="show-modal"\`. If it is opened from another file or from a function that calls \`showModal()\`, this is fine; otherwise there is no way for a reader to open it. ${it}`,message:`${s} has no invoker in this document.`,path:t,rule:"dialog-no-invoker",severity:"warn"});if(l?.has("show-modal")&&a==="none"&&!_K(e,i))n.push({detail:`A modal dialog makes everything outside it inert, so the only ways out are the ones it offers: \`closedby="none"\` turns off Escape and light dismiss, and nothing inside it closes it. A reader who opens it cannot leave. Add a <button command="close"> inside, or drop \`closedby="none"\`. ${it}`,message:`${s} opens modally, closes on nothing, and has no close button.`,path:t,rule:"modal-without-close",severity:"error"});return n}var SN,$K,wK,vK,SK,EK,jK;var jN=D(()=>{be();Ad();SN=["toggle-popover","show-popover","hide-popover","show-modal","close","request-close"],$K=new Set(["show-modal","close","request-close"]),wK=new Set(["toggle-popover","show-popover","hide-popover"]),vK=["any","closerequest","none"],SK=new Set(SN),EK=new Set(vK),jK=new Set(["button"])});var IN=C(function(CN){Object.defineProperty(CN,"__esModule",{value:!0});CN.formatNames=CN.fastFormats=CN.fullFormats=void 0;function Qn(e,t){return{validate:e,compare:t}}CN.fullFormats={date:Qn(AN,yy),time:Qn(hy(!0),by),"date-time":Qn(PN(!0),ON),"iso-time":Qn(hy(),RN),"iso-date-time":Qn(PN(),NN),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:JK,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:WK,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:MK,int32:{type:"number",validate:FK},int64:{type:"number",validate:qK},float:{type:"number",validate:_N},double:{type:"number",validate:_N},password:!0,binary:!0};CN.fastFormats={...CN.fullFormats,date:Qn(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,yy),time:Qn(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,by),"date-time":Qn(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,ON),"iso-time":Qn(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,RN),"iso-date-time":Qn(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,NN),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};CN.formatNames=Object.keys(CN.fullFormats);function OK(e){return e%4===0&&(e%100!==0||e%400===0)}var NK=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,CK=[0,31,28,31,30,31,30,31,31,30,31,30,31];function AN(e){let t=NK.exec(e);if(!t)return!1;let r=+t[1],n=+t[2],s=+t[3];return n>=1&&n<=12&&s>=1&&s<=(n===2&&OK(r)?29:CK[n])}function yy(e,t){if(!(e&&t))return;if(e>t)return 1;if(e<t)return-1;return 0}var my=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function hy(e){return function(r){let n=my.exec(r);if(!n)return!1;let s=+n[1],i=+n[2],o=+n[3],a=n[4],l=n[5]==="-"?-1:1,c=+(n[6]||0),u=+(n[7]||0);if(c>23||u>59||e&&!a)return!1;if(s<=23&&i<=59&&o<60)return!0;let p=i-u*l,h=s-c*l-(p<0?1:0);return(h===23||h===-1)&&(p===59||p===-1)&&o<61}}function by(e,t){if(!(e&&t))return;let r=new Date("2020-01-01T"+e).valueOf(),n=new Date("2020-01-01T"+t).valueOf();if(!(r&&n))return;return r-n}function RN(e,t){if(!(e&&t))return;let r=my.exec(e),n=my.exec(t);if(!(r&&n))return;if(e=r[1]+r[2]+r[3],t=n[1]+n[2]+n[3],e>t)return 1;if(e<t)return-1;return 0}var gy=/t|\s/i;function PN(e){let t=hy(e);return function(n){let s=n.split(gy);return s.length===2&&AN(s[0])&&t(s[1])}}function ON(e,t){if(!(e&&t))return;let r=new Date(e).valueOf(),n=new Date(t).valueOf();if(!(r&&n))return;return r-n}function NN(e,t){if(!(e&&t))return;let[r,n]=e.split(gy),[s,i]=t.split(gy),o=yy(r,s);if(o===void 0)return;return o||by(n,i)}var TK=/\/|:/,IK=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function JK(e){return TK.test(e)&&IK.test(e)}var kN=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function MK(e){return kN.lastIndex=0,kN.test(e)}var DK=-2147483648,LK=2147483647;function FK(e){return Number.isInteger(e)&&e<=LK&&e>=DK}function qK(e){return Number.isInteger(e)}function _N(){return!0}var VK=/[^\\]\\Z/;function WK(e){if(VK.test(e))return!1;try{return new RegExp(e),!0}catch(t){return!1}}});var MN=C(function(JN){Object.defineProperty(JN,"__esModule",{value:!0});var BK=Yg(),UK=Xg(),zK=ty(),GK=sy(),Nd=iy(),KK=[BK.default,UK.default,(0,zK.default)(),GK.default,Nd.metadataVocabulary,Nd.contentVocabulary];JN.default=KK});var DN=C(function(ece,XK){XK.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var FN=C(function(Tr,$y){Object.defineProperty(Tr,"__esModule",{value:!0});Tr.MissingRefError=Tr.ValidationError=Tr.CodeGen=Tr.Name=Tr.nil=Tr.stringify=Tr.str=Tr._=Tr.KeywordCxt=Tr.Ajv=void 0;var ZK=Kg(),QK=MN(),e7=oy(),LN=DN(),t7=["/properties"],Cd="http://json-schema.org/draft-07/schema";class mc extends ZK.default{_addVocabularies(){if(super._addVocabularies(),QK.default.forEach((e)=>this.addVocabulary(e)),this.opts.discriminator)this.addKeyword(e7.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(LN,t7):LN;this.addMetaSchema(e,Cd,!1),this.refs["http://json-schema.org/schema"]=Cd}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Cd)?Cd:void 0)}}Tr.Ajv=mc;$y.exports=Tr=mc;$y.exports.Ajv=mc;Object.defineProperty(Tr,"__esModule",{value:!0});Tr.default=mc;var r7=ka();Object.defineProperty(Tr,"KeywordCxt",{enumerable:!0,get:function(){return r7.KeywordCxt}});var Ba=we();Object.defineProperty(Tr,"_",{enumerable:!0,get:function(){return Ba._}});Object.defineProperty(Tr,"str",{enumerable:!0,get:function(){return Ba.str}});Object.defineProperty(Tr,"stringify",{enumerable:!0,get:function(){return Ba.stringify}});Object.defineProperty(Tr,"nil",{enumerable:!0,get:function(){return Ba.nil}});Object.defineProperty(Tr,"Name",{enumerable:!0,get:function(){return Ba.Name}});Object.defineProperty(Tr,"CodeGen",{enumerable:!0,get:function(){return Ba.CodeGen}});var n7=ac();Object.defineProperty(Tr,"ValidationError",{enumerable:!0,get:function(){return n7.default}});var s7=Aa();Object.defineProperty(Tr,"MissingRefError",{enumerable:!0,get:function(){return s7.default}})});var WN=C(function(VN){Object.defineProperty(VN,"__esModule",{value:!0});VN.formatLimitDefinition=void 0;var qN=FN(),xt=we(),ki=xt.operators,Td={formatMaximum:{okStr:"<=",ok:ki.LTE,fail:ki.GT},formatMinimum:{okStr:">=",ok:ki.GTE,fail:ki.LT},formatExclusiveMaximum:{okStr:"<",ok:ki.LT,fail:ki.GTE},formatExclusiveMinimum:{okStr:">",ok:ki.GT,fail:ki.LTE}},a7={message:({keyword:e,schemaCode:t})=>xt.str`should be ${Td[e].okStr} ${t}`,params:({keyword:e,schemaCode:t})=>xt._`{comparison: ${Td[e].okStr}, limit: ${t}}`};VN.formatLimitDefinition={keyword:Object.keys(Td),type:"string",schemaType:"string",$data:!0,error:a7,code(e){let{gen:t,data:r,schemaCode:n,keyword:s,it:i}=e,{opts:o,self:a}=i;if(!o.validateFormats)return;let l=new qN.KeywordCxt(i,a.RULES.all.format.definition,"format");if(l.$data)c();else u();function c(){let h=t.scopeValue("formats",{ref:a.formats,code:o.code.formats}),m=t.const("fmt",xt._`${h}[${l.schemaCode}]`);e.fail$data(xt.or(xt._`typeof ${m} != "object"`,xt._`${m} instanceof RegExp`,xt._`typeof ${m}.compare != "function"`,p(m)))}function u(){let h=l.schema,m=a.formats[h];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw Error(`"${s}": format "${h}" does not define "compare" function`);let b=t.scopeValue("formats",{key:h,ref:m,code:o.code.formats?xt._`${o.code.formats}${xt.getProperty(h)}`:void 0});e.fail$data(p(b))}function p(h){return xt._`${h}.compare(${r}, ${n}) ${Td[s].fail} 0`}},dependencies:["format"]};var l7=(e)=>(e.addKeyword(VN.formatLimitDefinition),e);VN.default=l7});var zN=C(function(hc,UN){Object.defineProperty(hc,"__esModule",{value:!0});var un=IN(),u7=WN(),Ua=we(),HN=new Ua.Name("fullFormats"),f7=new Ua.Name("fastFormats"),vy=(e,t={keywords:!0})=>{if(Array.isArray(t))return BN(e,t,un.fullFormats,HN),e;let[r,n]=t.mode==="fast"?[un.fastFormats,f7]:[un.fullFormats,HN],s=t.formats||un.formatNames;if(BN(e,s,r,n),t.keywords)(0,u7.default)(e);return e};vy.get=(e,t="full")=>{let n=(t==="fast"?un.fastFormats:un.fullFormats)[e];if(!n)throw Error(`Unknown format "${e}"`);return n};function BN(e,t,r,n){var s,i;(s=(i=e.opts.code).formats)!==null&&s!==void 0||(i.formats=Ua._`require("ajv-formats/dist/formats").${n}`);for(let o of t)e.addFormat(o,r[o])}UN.exports=hc=vy;Object.defineProperty(hc,"__esModule",{value:!0});hc.default=vy});import{existsSync as KN,readFileSync as jy,readdirSync as YN,statSync as XN}from"node:fs";import{createRequire as d7}from"node:module";import{join as ZN,relative as Id,resolve as Sy}from"node:path";async function g7(){try{let{default:e}=await Promise.resolve().then(() => br(cy(),1)),{default:t}=await Promise.resolve().then(() => br(zN(),1));return{addFormats:t,Ajv:e}}catch(e){throw Error("Project validation requires ajv and ajv-formats: bun add ajv ajv-formats",{cause:e})}}async function QN(e,t={}){let r=Sy(e),n=[],s=[],i=0;for(let S of["project.schema.json","document.schema.json"]){let E=Sy(r,S);if(!KN(E))continue;i+=1;let k=gc(E),A=$7(k);if(A.length>0)n.push({errors:A.map(({reason:R,ref:_})=>({message:`$ref "${_}" ${R} — committed entry documents must be self-contained `+"single-resource schemas; regenerate with `jx schema`"})),file:S})}if(n.length>0)return{checked:i,issues:n,lint:s,valid:!1};let o=await cN(r);if(i+=1,!o.valid)n.push({errors:o.errors??[],file:o.file});let{addFormats:a,Ajv:l}=await g7(),{document:c}=await Vj(r,{write:!1}),u=new l({allErrors:!0,ownProperties:!0,strict:!1});a(u);let p=u.compile(c),h=dN(GN(r).flatMap((S)=>{try{return[JSON.parse(jy(S,"utf8"))]}catch{return[]}}));for(let S of p7)for(let E of rC(Sy(r,S))){if(E.endsWith(".class.json"))continue;i+=1;let k=y7(E,Id(r,E));if(s.push(...k.warnings),k.failure!==null){n.push(k.failure);continue}let A=k.document;if(p(A))s.push(...x7(A,Id(r,E),h));else n.push({errors:p.errors??[],file:Id(r,E)})}let m=new l({allErrors:!0,ownProperties:!0,strict:!1});a(m);let b=m.compile(ug());for(let S of GN(r)){i+=1;let E=gc(S);if(!b(E))n.push({errors:b.errors??[],file:Id(r,S)})}let{config:g}=Hs(r),y=await Ws(r,g),w=d7(import.meta.url);for(let S of y.extensions)for(let E of["project","document","fields"]){let k=S.schemas[E];if(!k)continue;i+=1;let A=new l({allErrors:!0,ownProperties:!0,strict:!1});a(A);for(let R of h7){let _=w.resolve(R);A.addSchema(gc(_))}try{A.compile(gc(k))}catch(R){n.push({errors:[{message:R instanceof Error?R.message:String(R)}],file:`${S.specifier} (${E} fragment)`})}}let j=t.strict===!0&&s.some((S)=>S.severity==="error");return{checked:i,issues:n,lint:s,valid:n.length===0&&!j}}function y7(e,t){if(!ps(e))return{document:gc(e),failure:null,warnings:[]};let r=jy(e,"utf8"),n=dp(r).map((s)=>({detail:s.message,file:t,message:`line ${s.line}, column ${s.column}: ${s.message}`,path:[],rule:"escape",severity:"warn",source:"notation"}));try{return{document:b7(r),failure:null,warnings:n}}catch(s){return{document:null,failure:{errors:[{message:Pe(s)}],file:t},warnings:n}}}function b7(e){let t=Fi(e);return W(t)?t:null}function gc(e){return JSON.parse(jy(e,"utf8"))}function x7(e,t,r){let n=[];for(let s of yN(e,r))n.push({...Ey(s),file:t,source:"popover"});for(let s of EN(e,r))n.push({...Ey(s),file:t,source:"dialog"});for(let s of $N(e))n.push({...Ey(s),criterion:s.criterion,file:t,source:"accessibility"});return n}function Ey(e){return{detail:e.detail,message:e.message,path:e.path,rule:e.rule,severity:e.severity}}function eC(e){return e.lint.map((t)=>{let r=t.criterion===void 0?`${t.source}/${t.rule}`:`${t.source}/${t.rule}, WCAG ${t.criterion}`;return`${t.file}: ${t.severity}: ${t.message} [${r}]`})}function $7(e){let t=[],r=new Set,n=(i)=>{let o=e;for(let a of i.slice(1).split("/")){if(a==="")continue;let l=a.replaceAll("~1","/").replaceAll("~0","~");if(!V(o))return!1;if(o=o[l],o===void 0)return!1}return!0},s=(i)=>{if(!W(i)||r.has(i))return;r.add(i);let o=i.$ref;if(O(o)){if(/^[a-zA-Z][a-zA-Z\d+.-]*:/.test(o))t.push({reason:"is an absolute URI editors resolve over the network",ref:o});else if(!o.startsWith("#"))t.push({reason:"is a relative path only Node module resolution can follow",ref:o});else if(o.length>1&&!o.startsWith("#/"))t.push({reason:"is an $anchor reference, which has no root-pointer form",ref:o});else if(o.length>1&&!n(o.slice(1)))t.push({reason:"points at no node in this document",ref:o})}for(let[a,l]of Object.entries(i)){if(!w7.has(a))continue;if(Array.isArray(l))for(let c of l)s(c);else if(W(l)){if(s(l),tC.has(a))for(let c of Object.values(l))s(c)}}};return s(e),t}function rC(e){if(!KN(e))return[];let t=[];for(let r of YN(e)){let n=ZN(e,r);if(XN(n).isDirectory())t.push(...rC(n));else if(ms(r))t.push(n)}return t.toSorted()}function GN(e){let t=[],r=(n)=>{for(let s of YN(n)){if(m7.has(s))continue;let i=ZN(n,s);if(XN(i).isDirectory())r(i);else if(s.endsWith(".class.json"))t.push(i)}};return r(e),t.toSorted()}function nC(e){let t=[];for(let r of e.issues){t.push(`${r.file}:`);for(let n of r.errors){let s=W(n)?n:{},{instancePath:i,message:o}=s;t.push(` - ${i||"/"}: ${o??JSON.stringify(n)}`)}}return t}var p7,m7,h7,tC,w7;var sC=D(()=>{qi();er();C1();uN();wN();jN();Ad();be();ys();pl();Xh();p7=["components","pages","layouts"],m7=new Set(["node_modules","dist",".git"]),h7=["@jxsuite/schema/schemas/project.core.schema.json","@jxsuite/schema/schemas/project.fields.schema.json","@jxsuite/schema/schemas/document.paths.schema.json"];tC=new Set(["$defs","definitions","dependencies","dependentSchemas","patternProperties","properties"]),w7=new Set([...tC,"additionalItems","additionalProperties","allOf","anyOf","contains","contentSchema","else","if","items","not","oneOf","prefixItems","propertyNames","then","unevaluatedItems","unevaluatedProperties"])});er();import{relative as Py,resolve as iC}from"node:path";async function v7(){let e=process.argv.slice(2),[t]=e;if(!t||t==="--help"||t==="-h")console.log(`Usage: jx <command> [options]
|
|
614
615
|
|
|
615
616
|
Commands:
|
|
616
617
|
build [root] Build a Jx site to dist/
|
|
@@ -618,7 +619,7 @@ Commands:
|
|
|
618
619
|
preview [root] Serve an already-built dist/ directory
|
|
619
620
|
schema [root] Generate project.schema.json + document.schema.json from project.json#/extensions
|
|
620
621
|
validate [root] Validate the whole project: project.json, documents, classes, and fragments
|
|
621
|
-
convert <paths…> Move documents between .json and .jxn, repairing
|
|
622
|
+
convert <paths…> Move documents and the project file between .json and .jxn, repairing references
|
|
622
623
|
db push [root] Sync the data section's tables to their connections (additive-only)
|
|
623
624
|
|
|
624
625
|
Options:
|
|
@@ -630,8 +631,8 @@ Options:
|
|
|
630
631
|
--connection db push: restrict to one connection name
|
|
631
632
|
--strict validate: fail on an overlay or accessibility lint error, not only a schema error
|
|
632
633
|
--to <format> convert: jxn or json
|
|
633
|
-
--drop-comments convert: convert a .jxn file to .json even though it has comments`),process.exit(0);if(t==="convert"){try{await Promise.resolve().then(() =>
|
|
634
|
-
Usage: jx db push [root] [--dry-run] [--connection <name>]`),process.exit(1);let p=i.has("--dry-run");try{await Promise.resolve().then(() =>
|
|
634
|
+
--drop-comments convert: convert a .jxn file to .json even though it has comments`),process.exit(0);if(t==="convert"){try{await Promise.resolve().then(() => Hy());Wy(process.cwd(),e.slice(1))}catch(p){console.error(Pe(p)),process.exit(1)}return}let r=t==="db",n=r?e[1]:null,s=e.slice(r?2:1),i=new Set,o=[],a,l;for(let p=0;p<s.length;p+=1){let h=s[p];if(h==="--connection")p+=1,a=s[p];else if(h==="--port"){p+=1;let m=Math.trunc(Number(s[p]??""));if(Number.isFinite(m)&&m>=0)l=m}else if(h.startsWith("--"))i.add(h);else o.push(h)}let[c]=o,u=iC(c??".");if(r){if(n!=="push")console.error(`Unknown db subcommand: ${n??"(none)"}
|
|
635
|
+
Usage: jx db push [root] [--dry-run] [--connection <name>]`),process.exit(1);let p=i.has("--dry-run");try{await Promise.resolve().then(() => gx());let m={dryRun:p};if(a!==void 0)m.connection=a;let{results:b,bindingsPatched:g,wranglerPath:y}=await hx(u,m);for(let w of b){let j=w.applied?"applied":"dry-run";console.log(`${w.connection} (${w.provider}) — ${w.tables.length} table(s), ${w.statements.length} statement(s) [${j}]`);for(let S of w.statements)console.log(` ${S}`);for(let S of w.warnings)console.warn(` warning: ${S}`)}if(g&&y)console.log(`Updated bindings in ${Py(u,y)}`)}catch(h){console.error(`db push failed: ${Pe(h)}`),process.exit(1)}return}if(t==="build"){let p=i.has("--verbose"),h=!i.has("--no-clean"),m=i.has("--include-held");console.log(`Building site from ${u}...`);try{await Promise.resolve().then(() => vj());let g=await gj(u,{clean:h,includeHeld:m,verbose:p});if(g.errors.length>0){console.error(`
|
|
635
636
|
Build completed with ${g.errors.length} error(s):`);for(let y of g.errors)console.error(` - ${y}`);process.exit(1)}console.log(`
|
|
636
|
-
Done: ${g.routes} routes → ${g.files} files`)}catch(b){console.error(`Build failed: ${
|
|
637
|
-
Run "jx --help" for usage.`),process.exit(1)}var
|
|
637
|
+
Done: ${g.routes} routes → ${g.files} files`)}catch(b){console.error(`Build failed: ${Pe(b)}`),process.exit(1)}}else if(t==="dev")try{await Promise.resolve().then(() => Ej());Sj(u,l)}catch(p){console.error(Pe(p)),process.exit(1)}else if(t==="preview"){let{existsSync:p}=await import("node:fs"),h=iC(u,"dist");if(!p(h))console.error(`No build output at ${h} — run \`jx build\` first.`),process.exit(1);await Promise.resolve().then(() => _j());let b=l??4173;kj(h,b),console.log(`Previewing ${h} at http://localhost:${b}`)}else if(t==="schema")try{await Promise.resolve().then(() => Xh());let{projectSchemaPath:h,documentSchemaPath:m}=await qj(u);console.log(`Wrote ${Py(u,h)}`),console.log(`Wrote ${Py(u,m)}`)}catch(p){console.error(`Schema generation failed: ${Pe(p)}`),process.exit(1)}else if(t==="validate")try{await Promise.resolve().then(() => sC());let b=await QN(u,{strict:i.has("--strict")}),g=eC(b);if(b.valid){console.log(`Project is valid (${b.checked} files checked in ${u})`);for(let y of g)console.log(y)}else{console.error(`Project is INVALID (${u}):`);for(let y of[...nC(b),...g])console.error(y);process.exit(1)}}catch(p){console.error(`Validation failed: ${Pe(p)}`),process.exit(1)}else console.error(`Unknown command: ${t}
|
|
638
|
+
Run "jx --help" for usage.`),process.exit(1)}var kce=v7();export{kce as ready};
|