@dilemmagx/orchestra 1.2.2 → 1.2.3
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/index.js +1 -1
- package/dist/index.js.map +2 -2
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";var Ga=Object.create;var Xe=Object.defineProperty;var Wa=Object.getOwnPropertyDescriptor;var Va=Object.getOwnPropertyNames;var Xa=Object.getPrototypeOf,Ka=Object.prototype.hasOwnProperty;var S=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Qa=(e,t)=>{for(var r in t)Xe(e,r,{get:t[r],enumerable:!0})},Pr=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Va(t))!Ka.call(e,i)&&i!==r&&Xe(e,i,{get:()=>t[i],enumerable:!(n=Wa(t,i))||n.enumerable});return e};var Ir=(e,t,r)=>(r=e!=null?Ga(Xa(e)):{},Pr(t||!e||!e.__esModule?Xe(r,"default",{value:e,enumerable:!0}):r,e)),Ya=e=>Pr(Xe({},"__esModule",{value:!0}),e);var J=S((Wu,kr)=>{var Ar=e=>typeof e<"u"&&e!==null,Ja=e=>typeof e=="object",Za=e=>Object.prototype.toString.call(e)==="[object Object]",eo=e=>typeof e=="function",to=e=>typeof e=="boolean",ro=e=>e instanceof Buffer,no=e=>{if(Ar(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},io=e=>e instanceof ArrayBuffer,ao=e=>typeof e=="string"&&e.length>0,oo=e=>typeof e=="number"&&!Number.isNaN(e),so=e=>Number.isInteger(e),lo=(e,t,r)=>e>=t&&e<=r,co=(e,t)=>t.includes(e),uo=(e,t,r)=>new Error(`Expected ${t} for ${e} but received ${r} of type ${typeof r}`),fo=(e,t)=>(t.message=e.message,t);kr.exports={defined:Ar,object:Ja,plainObject:Za,fn:eo,bool:to,buffer:ro,typedArray:no,arrayBuffer:io,string:ao,number:oo,integer:so,inRange:lo,inArray:co,invalidParameterError:uo,nativeError:fo}});var $r=S((Vu,Mr)=>{"use strict";var jr=()=>process.platform==="linux",Ze=null,ho=()=>{if(!Ze)if(jr()&&process.report){let e=process.report.excludeNetwork;process.report.excludeNetwork=!0,Ze=process.report.getReport(),process.report.excludeNetwork=e}else Ze={};return Ze};Mr.exports={isLinux:jr,getReport:ho}});var Tr=S((Xu,Lr)=>{"use strict";var Ee=require("fs"),mo="/usr/bin/ldd",go="/proc/self/exe",et=2048,bo=e=>{let t=Ee.openSync(e,"r"),r=Buffer.alloc(et),n=Ee.readSync(t,r,0,et,0);return Ee.close(t,()=>{}),r.subarray(0,n)},po=e=>new Promise((t,r)=>{Ee.open(e,"r",(n,i)=>{if(n)r(n);else{let a=Buffer.alloc(et);Ee.read(i,a,0,et,0,(o,s)=>{t(a.subarray(0,s)),Ee.close(i,()=>{})})}})});Lr.exports={LDD_PATH:mo,SELF_PATH:go,readFileSync:bo,readFile:po}});var Br=S((Ku,Cr)=>{"use strict";var wo=e=>{if(e.length<64||e.readUInt32BE(0)!==2135247942||e.readUInt8(4)!==2||e.readUInt8(5)!==1)return null;let t=e.readUInt32LE(32),r=e.readUInt16LE(54),n=e.readUInt16LE(56);for(let i=0;i<n;i++){let a=t+i*r;if(e.readUInt32LE(a)===3){let s=e.readUInt32LE(a+8),c=e.readUInt32LE(a+32);return e.subarray(s,s+c).toString().replace(/\0.*$/g,"")}}return null};Cr.exports={interpreterPath:wo}});var rt=S((Qu,en)=>{"use strict";var _r=require("child_process"),{isLinux:Pe,getReport:qr}=$r(),{LDD_PATH:tt,SELF_PATH:Or,readFile:Ct,readFileSync:Bt}=Tr(),{interpreterPath:Dr}=Br(),Z,ee,te,Ur="getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",fe="",zr=()=>fe||new Promise(e=>{_r.exec(Ur,(t,r)=>{fe=t?" ":r,e(fe)})}),Hr=()=>{if(!fe)try{fe=_r.execSync(Ur,{encoding:"utf8"})}catch{fe=" "}return fe},se="glibc",Gr=/LIBC[a-z0-9 \-).]*?(\d+\.\d+)/i,pe="musl",yo=e=>e.includes("libc.musl-")||e.includes("ld-musl-"),Wr=()=>{let e=qr();return e.header&&e.header.glibcVersionRuntime?se:Array.isArray(e.sharedObjects)&&e.sharedObjects.some(yo)?pe:null},Vr=e=>{let[t,r]=e.split(/[\r\n]+/);return t&&t.includes(se)?se:r&&r.includes(pe)?pe:null},Xr=e=>{if(e){if(e.includes("/ld-musl-"))return pe;if(e.includes("/ld-linux-"))return se}return null},Kr=e=>(e=e.toString(),e.includes("musl")?pe:e.includes("GNU C Library")?se:null),xo=async()=>{if(ee!==void 0)return ee;ee=null;try{let e=await Ct(tt);ee=Kr(e)}catch{}return ee},vo=()=>{if(ee!==void 0)return ee;ee=null;try{let e=Bt(tt);ee=Kr(e)}catch{}return ee},Eo=async()=>{if(Z!==void 0)return Z;Z=null;try{let e=await Ct(Or),t=Dr(e);Z=Xr(t)}catch{}return Z},Po=()=>{if(Z!==void 0)return Z;Z=null;try{let e=Bt(Or),t=Dr(e);Z=Xr(t)}catch{}return Z},Qr=async()=>{let e=null;if(Pe()&&(e=await Eo(),!e&&(e=await xo(),e||(e=Wr()),!e))){let t=await zr();e=Vr(t)}return e},Yr=()=>{let e=null;if(Pe()&&(e=Po(),!e&&(e=vo(),e||(e=Wr()),!e))){let t=Hr();e=Vr(t)}return e},Io=async()=>Pe()&&await Qr()!==se,No=()=>Pe()&&Yr()!==se,Ro=async()=>{if(te!==void 0)return te;te=null;try{let t=(await Ct(tt)).match(Gr);t&&(te=t[1])}catch{}return te},So=()=>{if(te!==void 0)return te;te=null;try{let t=Bt(tt).match(Gr);t&&(te=t[1])}catch{}return te},Jr=()=>{let e=qr();return e.header&&e.header.glibcVersionRuntime?e.header.glibcVersionRuntime:null},Fr=e=>e.trim().split(/\s+/)[1],Zr=e=>{let[t,r,n]=e.split(/[\r\n]+/);return t&&t.includes(se)?Fr(t):r&&n&&r.includes(pe)?Fr(n):null},Ao=async()=>{let e=null;if(Pe()&&(e=await Ro(),e||(e=Jr()),!e)){let t=await zr();e=Zr(t)}return e},ko=()=>{let e=null;if(Pe()&&(e=So(),e||(e=Jr()),!e)){let t=Hr();e=Zr(t)}return e};en.exports={GLIBC:se,MUSL:pe,family:Qr,familySync:Yr,isNonGlibcLinux:Io,isNonGlibcLinuxSync:No,version:Ao,versionSync:ko}});var Oe=S((Yu,tn)=>{"use strict";var jo=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...e)=>console.error("SEMVER",...e):()=>{};tn.exports=jo});var nt=S((Ju,rn)=>{"use strict";var Mo="2.0.0",$o=Number.MAX_SAFE_INTEGER||9007199254740991,Lo=16,To=250,Co=["major","premajor","minor","preminor","patch","prepatch","prerelease"];rn.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:Lo,MAX_SAFE_BUILD_LENGTH:To,MAX_SAFE_INTEGER:$o,RELEASE_TYPES:Co,SEMVER_SPEC_VERSION:Mo,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var De=S((re,nn)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:Ft,MAX_SAFE_BUILD_LENGTH:Bo,MAX_LENGTH:Fo}=nt(),_o=Oe();re=nn.exports={};var qo=re.re=[],Oo=re.safeRe=[],w=re.src=[],Do=re.safeSrc=[],y=re.t={},Uo=0,_t="[a-zA-Z0-9-]",zo=[["\\s",1],["\\d",Fo],[_t,Bo]],Ho=e=>{for(let[t,r]of zo)e=e.split(`${t}*`).join(`${t}{0,${r}}`).split(`${t}+`).join(`${t}{1,${r}}`);return e},R=(e,t,r)=>{let n=Ho(t),i=Uo++;_o(e,i,t),y[e]=i,w[i]=t,Do[i]=n,qo[i]=new RegExp(t,r?"g":void 0),Oo[i]=new RegExp(n,r?"g":void 0)};R("NUMERICIDENTIFIER","0|[1-9]\\d*");R("NUMERICIDENTIFIERLOOSE","\\d+");R("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${_t}*`);R("MAINVERSION",`(${w[y.NUMERICIDENTIFIER]})\\.(${w[y.NUMERICIDENTIFIER]})\\.(${w[y.NUMERICIDENTIFIER]})`);R("MAINVERSIONLOOSE",`(${w[y.NUMERICIDENTIFIERLOOSE]})\\.(${w[y.NUMERICIDENTIFIERLOOSE]})\\.(${w[y.NUMERICIDENTIFIERLOOSE]})`);R("PRERELEASEIDENTIFIER",`(?:${w[y.NONNUMERICIDENTIFIER]}|${w[y.NUMERICIDENTIFIER]})`);R("PRERELEASEIDENTIFIERLOOSE",`(?:${w[y.NONNUMERICIDENTIFIER]}|${w[y.NUMERICIDENTIFIERLOOSE]})`);R("PRERELEASE",`(?:-(${w[y.PRERELEASEIDENTIFIER]}(?:\\.${w[y.PRERELEASEIDENTIFIER]})*))`);R("PRERELEASELOOSE",`(?:-?(${w[y.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${w[y.PRERELEASEIDENTIFIERLOOSE]})*))`);R("BUILDIDENTIFIER",`${_t}+`);R("BUILD",`(?:\\+(${w[y.BUILDIDENTIFIER]}(?:\\.${w[y.BUILDIDENTIFIER]})*))`);R("FULLPLAIN",`v?${w[y.MAINVERSION]}${w[y.PRERELEASE]}?${w[y.BUILD]}?`);R("FULL",`^${w[y.FULLPLAIN]}$`);R("LOOSEPLAIN",`[v=\\s]*${w[y.MAINVERSIONLOOSE]}${w[y.PRERELEASELOOSE]}?${w[y.BUILD]}?`);R("LOOSE",`^${w[y.LOOSEPLAIN]}$`);R("GTLT","((?:<|>)?=?)");R("XRANGEIDENTIFIERLOOSE",`${w[y.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);R("XRANGEIDENTIFIER",`${w[y.NUMERICIDENTIFIER]}|x|X|\\*`);R("XRANGEPLAIN",`[v=\\s]*(${w[y.XRANGEIDENTIFIER]})(?:\\.(${w[y.XRANGEIDENTIFIER]})(?:\\.(${w[y.XRANGEIDENTIFIER]})(?:${w[y.PRERELEASE]})?${w[y.BUILD]}?)?)?`);R("XRANGEPLAINLOOSE",`[v=\\s]*(${w[y.XRANGEIDENTIFIERLOOSE]})(?:\\.(${w[y.XRANGEIDENTIFIERLOOSE]})(?:\\.(${w[y.XRANGEIDENTIFIERLOOSE]})(?:${w[y.PRERELEASELOOSE]})?${w[y.BUILD]}?)?)?`);R("XRANGE",`^${w[y.GTLT]}\\s*${w[y.XRANGEPLAIN]}$`);R("XRANGELOOSE",`^${w[y.GTLT]}\\s*${w[y.XRANGEPLAINLOOSE]}$`);R("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Ft}})(?:\\.(\\d{1,${Ft}}))?(?:\\.(\\d{1,${Ft}}))?`);R("COERCE",`${w[y.COERCEPLAIN]}(?:$|[^\\d])`);R("COERCEFULL",w[y.COERCEPLAIN]+`(?:${w[y.PRERELEASE]})?(?:${w[y.BUILD]})?(?:$|[^\\d])`);R("COERCERTL",w[y.COERCE],!0);R("COERCERTLFULL",w[y.COERCEFULL],!0);R("LONETILDE","(?:~>?)");R("TILDETRIM",`(\\s*)${w[y.LONETILDE]}\\s+`,!0);re.tildeTrimReplace="$1~";R("TILDE",`^${w[y.LONETILDE]}${w[y.XRANGEPLAIN]}$`);R("TILDELOOSE",`^${w[y.LONETILDE]}${w[y.XRANGEPLAINLOOSE]}$`);R("LONECARET","(?:\\^)");R("CARETTRIM",`(\\s*)${w[y.LONECARET]}\\s+`,!0);re.caretTrimReplace="$1^";R("CARET",`^${w[y.LONECARET]}${w[y.XRANGEPLAIN]}$`);R("CARETLOOSE",`^${w[y.LONECARET]}${w[y.XRANGEPLAINLOOSE]}$`);R("COMPARATORLOOSE",`^${w[y.GTLT]}\\s*(${w[y.LOOSEPLAIN]})$|^$`);R("COMPARATOR",`^${w[y.GTLT]}\\s*(${w[y.FULLPLAIN]})$|^$`);R("COMPARATORTRIM",`(\\s*)${w[y.GTLT]}\\s*(${w[y.LOOSEPLAIN]}|${w[y.XRANGEPLAIN]})`,!0);re.comparatorTrimReplace="$1$2$3";R("HYPHENRANGE",`^\\s*(${w[y.XRANGEPLAIN]})\\s+-\\s+(${w[y.XRANGEPLAIN]})\\s*$`);R("HYPHENRANGELOOSE",`^\\s*(${w[y.XRANGEPLAINLOOSE]})\\s+-\\s+(${w[y.XRANGEPLAINLOOSE]})\\s*$`);R("STAR","(<|>)?=?\\s*\\*");R("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");R("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var it=S((Zu,an)=>{"use strict";var Go=Object.freeze({loose:!0}),Wo=Object.freeze({}),Vo=e=>e?typeof e!="object"?Go:e:Wo;an.exports=Vo});var cn=S((ef,ln)=>{"use strict";var on=/^[0-9]+$/,sn=(e,t)=>{if(typeof e=="number"&&typeof t=="number")return e===t?0:e<t?-1:1;let r=on.test(e),n=on.test(t);return r&&n&&(e=+e,t=+t),e===t?0:r&&!n?-1:n&&!r?1:e<t?-1:1},Xo=(e,t)=>sn(t,e);ln.exports={compareIdentifiers:sn,rcompareIdentifiers:Xo}});var Ie=S((tf,fn)=>{"use strict";var at=Oe(),{MAX_LENGTH:un,MAX_SAFE_INTEGER:ot}=nt(),{safeRe:st,t:lt}=De(),Ko=it(),{compareIdentifiers:qt}=cn(),Ot=class e{constructor(t,r){if(r=Ko(r),t instanceof e){if(t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease)return t;t=t.version}else if(typeof t!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof t}".`);if(t.length>un)throw new TypeError(`version is longer than ${un} characters`);at("SemVer",t,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=t.trim().match(r.loose?st[lt.LOOSE]:st[lt.FULL]);if(!n)throw new TypeError(`Invalid Version: ${t}`);if(this.raw=t,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>ot||this.major<0)throw new TypeError("Invalid major version");if(this.minor>ot||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>ot||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(i=>{if(/^[0-9]+$/.test(i)){let a=+i;if(a>=0&&a<ot)return a}return i}):this.prerelease=[],this.build=n[5]?n[5].split("."):[],this.format()}format(){return this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length&&(this.version+=`-${this.prerelease.join(".")}`),this.version}toString(){return this.version}compare(t){if(at("SemVer.compare",this.version,this.options,t),!(t instanceof e)){if(typeof t=="string"&&t===this.version)return 0;t=new e(t,this.options)}return t.version===this.version?0:this.compareMain(t)||this.comparePre(t)}compareMain(t){return t instanceof e||(t=new e(t,this.options)),this.major<t.major?-1:this.major>t.major?1:this.minor<t.minor?-1:this.minor>t.minor?1:this.patch<t.patch?-1:this.patch>t.patch?1:0}comparePre(t){if(t instanceof e||(t=new e(t,this.options)),this.prerelease.length&&!t.prerelease.length)return-1;if(!this.prerelease.length&&t.prerelease.length)return 1;if(!this.prerelease.length&&!t.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],i=t.prerelease[r];if(at("prerelease compare",r,n,i),n===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(n===void 0)return-1;if(n===i)continue;return qt(n,i)}while(++r)}compareBuild(t){t instanceof e||(t=new e(t,this.options));let r=0;do{let n=this.build[r],i=t.build[r];if(at("build compare",r,n,i),n===void 0&&i===void 0)return 0;if(i===void 0)return 1;if(n===void 0)return-1;if(n===i)continue;return qt(n,i)}while(++r)}inc(t,r,n){if(t.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let i=`-${r}`.match(this.options.loose?st[lt.PRERELEASELOOSE]:st[lt.PRERELEASE]);if(!i||i[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(t){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let i=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[i];else{let a=this.prerelease.length;for(;--a>=0;)typeof this.prerelease[a]=="number"&&(this.prerelease[a]++,a=-2);if(a===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(i)}}if(r){let a=[r,i];n===!1&&(a=[r]),qt(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=a):this.prerelease=a}break}default:throw new Error(`invalid increment argument: ${t}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};fn.exports=Ot});var mn=S((rf,dn)=>{"use strict";var hn=Ie(),Qo=(e,t,r=!1)=>{if(e instanceof hn)return e;try{return new hn(e,t)}catch(n){if(!r)return null;throw n}};dn.exports=Qo});var bn=S((nf,gn)=>{"use strict";var Yo=Ie(),Jo=mn(),{safeRe:ct,t:ut}=De(),Zo=(e,t)=>{if(e instanceof Yo)return e;if(typeof e=="number"&&(e=String(e)),typeof e!="string")return null;t=t||{};let r=null;if(!t.rtl)r=e.match(t.includePrerelease?ct[ut.COERCEFULL]:ct[ut.COERCE]);else{let c=t.includePrerelease?ct[ut.COERCERTLFULL]:ct[ut.COERCERTL],f;for(;(f=c.exec(e))&&(!r||r.index+r[0].length!==e.length);)(!r||f.index+f[0].length!==r.index+r[0].length)&&(r=f),c.lastIndex=f.index+f[1].length+f[2].length;c.lastIndex=-1}if(r===null)return null;let n=r[2],i=r[3]||"0",a=r[4]||"0",o=t.includePrerelease&&r[5]?`-${r[5]}`:"",s=t.includePrerelease&&r[6]?`+${r[6]}`:"";return Jo(`${n}.${i}.${a}${o}${s}`,t)};gn.exports=Zo});var we=S((af,wn)=>{"use strict";var pn=Ie(),es=(e,t,r)=>new pn(e,r).compare(new pn(t,r));wn.exports=es});var Dt=S((of,yn)=>{"use strict";var ts=we(),rs=(e,t,r)=>ts(e,t,r)>=0;yn.exports=rs});var vn=S((sf,xn)=>{"use strict";var Ut=class{constructor(){this.max=1e3,this.map=new Map}get(t){let r=this.map.get(t);if(r!==void 0)return this.map.delete(t),this.map.set(t,r),r}delete(t){return this.map.delete(t)}set(t,r){if(!this.delete(t)&&r!==void 0){if(this.map.size>=this.max){let i=this.map.keys().next().value;this.delete(i)}this.map.set(t,r)}return this}};xn.exports=Ut});var Pn=S((lf,En)=>{"use strict";var ns=we(),is=(e,t,r)=>ns(e,t,r)===0;En.exports=is});var Nn=S((cf,In)=>{"use strict";var as=we(),os=(e,t,r)=>as(e,t,r)!==0;In.exports=os});var Sn=S((uf,Rn)=>{"use strict";var ss=we(),ls=(e,t,r)=>ss(e,t,r)>0;Rn.exports=ls});var kn=S((ff,An)=>{"use strict";var cs=we(),us=(e,t,r)=>cs(e,t,r)<0;An.exports=us});var Mn=S((hf,jn)=>{"use strict";var fs=we(),hs=(e,t,r)=>fs(e,t,r)<=0;jn.exports=hs});var Ln=S((df,$n)=>{"use strict";var ds=Pn(),ms=Nn(),gs=Sn(),bs=Dt(),ps=kn(),ws=Mn(),ys=(e,t,r,n)=>{switch(t){case"===":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e===r;case"!==":return typeof e=="object"&&(e=e.version),typeof r=="object"&&(r=r.version),e!==r;case"":case"=":case"==":return ds(e,r,n);case"!=":return ms(e,r,n);case">":return gs(e,r,n);case">=":return bs(e,r,n);case"<":return ps(e,r,n);case"<=":return ws(e,r,n);default:throw new TypeError(`Invalid operator: ${t}`)}};$n.exports=ys});var On=S((mf,qn)=>{"use strict";var Ue=Symbol("SemVer ANY"),Gt=class e{static get ANY(){return Ue}constructor(t,r){if(r=Tn(r),t instanceof e){if(t.loose===!!r.loose)return t;t=t.value}t=t.trim().split(/\s+/).join(" "),Ht("comparator",t,r),this.options=r,this.loose=!!r.loose,this.parse(t),this.semver===Ue?this.value="":this.value=this.operator+this.semver.version,Ht("comp",this)}parse(t){let r=this.options.loose?Cn[Bn.COMPARATORLOOSE]:Cn[Bn.COMPARATOR],n=t.match(r);if(!n)throw new TypeError(`Invalid comparator: ${t}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new Fn(n[2],this.options.loose):this.semver=Ue}toString(){return this.value}test(t){if(Ht("Comparator.test",t,this.options.loose),this.semver===Ue||t===Ue)return!0;if(typeof t=="string")try{t=new Fn(t,this.options)}catch{return!1}return zt(t,this.operator,this.semver,this.options)}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new _n(t.value,r).test(this.value):t.operator===""?t.value===""?!0:new _n(this.value,r).test(t.semver):(r=Tn(r),r.includePrerelease&&(this.value==="<0.0.0-0"||t.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||t.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&t.operator.startsWith(">")||this.operator.startsWith("<")&&t.operator.startsWith("<")||this.semver.version===t.semver.version&&this.operator.includes("=")&&t.operator.includes("=")||zt(this.semver,"<",t.semver,r)&&this.operator.startsWith(">")&&t.operator.startsWith("<")||zt(this.semver,">",t.semver,r)&&this.operator.startsWith("<")&&t.operator.startsWith(">")))}};qn.exports=Gt;var Tn=it(),{safeRe:Cn,t:Bn}=De(),zt=Ln(),Ht=Oe(),Fn=Ie(),_n=Wt()});var Wt=S((gf,Hn)=>{"use strict";var xs=/\s+/g,Vt=class e{constructor(t,r){if(r=Es(r),t instanceof e)return t.loose===!!r.loose&&t.includePrerelease===!!r.includePrerelease?t:new e(t.raw,r);if(t instanceof Xt)return this.raw=t.value,this.set=[[t]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=t.trim().replace(xs," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(i=>!Un(i[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let i of this.set)if(i.length===1&&ks(i[0])){this.set=[i];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let t=0;t<this.set.length;t++){t>0&&(this.formatted+="||");let r=this.set[t];for(let n=0;n<r.length;n++)n>0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(t){let n=((this.options.includePrerelease&&Ss)|(this.options.loose&&As))+":"+t,i=Dn.get(n);if(i)return i;let a=this.options.loose,o=a?z[D.HYPHENRANGELOOSE]:z[D.HYPHENRANGE];t=t.replace(o,qs(this.options.includePrerelease)),M("hyphen replace",t),t=t.replace(z[D.COMPARATORTRIM],Is),M("comparator trim",t),t=t.replace(z[D.TILDETRIM],Ns),M("tilde trim",t),t=t.replace(z[D.CARETTRIM],Rs),M("caret trim",t);let s=t.split(" ").map(m=>js(m,this.options)).join(" ").split(/\s+/).map(m=>_s(m,this.options));a&&(s=s.filter(m=>(M("loose invalid filter",m,this.options),!!m.match(z[D.COMPARATORLOOSE])))),M("range list",s);let c=new Map,f=s.map(m=>new Xt(m,this.options));for(let m of f){if(Un(m))return[m];c.set(m.value,m)}c.size>1&&c.has("")&&c.delete("");let d=[...c.values()];return Dn.set(n,d),d}intersects(t,r){if(!(t instanceof e))throw new TypeError("a Range is required");return this.set.some(n=>zn(n,r)&&t.set.some(i=>zn(i,r)&&n.every(a=>i.every(o=>a.intersects(o,r)))))}test(t){if(!t)return!1;if(typeof t=="string")try{t=new Ps(t,this.options)}catch{return!1}for(let r=0;r<this.set.length;r++)if(Os(this.set[r],t,this.options))return!0;return!1}};Hn.exports=Vt;var vs=vn(),Dn=new vs,Es=it(),Xt=On(),M=Oe(),Ps=Ie(),{safeRe:z,t:D,comparatorTrimReplace:Is,tildeTrimReplace:Ns,caretTrimReplace:Rs}=De(),{FLAG_INCLUDE_PRERELEASE:Ss,FLAG_LOOSE:As}=nt(),Un=e=>e.value==="<0.0.0-0",ks=e=>e.value==="",zn=(e,t)=>{let r=!0,n=e.slice(),i=n.pop();for(;r&&n.length;)r=n.every(a=>i.intersects(a,t)),i=n.pop();return r},js=(e,t)=>(e=e.replace(z[D.BUILD],""),M("comp",e,t),e=Ls(e,t),M("caret",e),e=Ms(e,t),M("tildes",e),e=Cs(e,t),M("xrange",e),e=Fs(e,t),M("stars",e),e),H=e=>!e||e.toLowerCase()==="x"||e==="*",Ms=(e,t)=>e.trim().split(/\s+/).map(r=>$s(r,t)).join(" "),$s=(e,t)=>{let r=t.loose?z[D.TILDELOOSE]:z[D.TILDE];return e.replace(r,(n,i,a,o,s)=>{M("tilde",e,n,i,a,o,s);let c;return H(i)?c="":H(a)?c=`>=${i}.0.0 <${+i+1}.0.0-0`:H(o)?c=`>=${i}.${a}.0 <${i}.${+a+1}.0-0`:s?(M("replaceTilde pr",s),c=`>=${i}.${a}.${o}-${s} <${i}.${+a+1}.0-0`):c=`>=${i}.${a}.${o} <${i}.${+a+1}.0-0`,M("tilde return",c),c})},Ls=(e,t)=>e.trim().split(/\s+/).map(r=>Ts(r,t)).join(" "),Ts=(e,t)=>{M("caret",e,t);let r=t.loose?z[D.CARETLOOSE]:z[D.CARET],n=t.includePrerelease?"-0":"";return e.replace(r,(i,a,o,s,c)=>{M("caret",e,i,a,o,s,c);let f;return H(a)?f="":H(o)?f=`>=${a}.0.0${n} <${+a+1}.0.0-0`:H(s)?a==="0"?f=`>=${a}.${o}.0${n} <${a}.${+o+1}.0-0`:f=`>=${a}.${o}.0${n} <${+a+1}.0.0-0`:c?(M("replaceCaret pr",c),a==="0"?o==="0"?f=`>=${a}.${o}.${s}-${c} <${a}.${o}.${+s+1}-0`:f=`>=${a}.${o}.${s}-${c} <${a}.${+o+1}.0-0`:f=`>=${a}.${o}.${s}-${c} <${+a+1}.0.0-0`):(M("no pr"),a==="0"?o==="0"?f=`>=${a}.${o}.${s}${n} <${a}.${o}.${+s+1}-0`:f=`>=${a}.${o}.${s}${n} <${a}.${+o+1}.0-0`:f=`>=${a}.${o}.${s} <${+a+1}.0.0-0`),M("caret return",f),f})},Cs=(e,t)=>(M("replaceXRanges",e,t),e.split(/\s+/).map(r=>Bs(r,t)).join(" ")),Bs=(e,t)=>{e=e.trim();let r=t.loose?z[D.XRANGELOOSE]:z[D.XRANGE];return e.replace(r,(n,i,a,o,s,c)=>{M("xRange",e,n,i,a,o,s,c);let f=H(a),d=f||H(o),m=d||H(s),g=m;return i==="="&&g&&(i=""),c=t.includePrerelease?"-0":"",f?i===">"||i==="<"?n="<0.0.0-0":n="*":i&&g?(d&&(o=0),s=0,i===">"?(i=">=",d?(a=+a+1,o=0,s=0):(o=+o+1,s=0)):i==="<="&&(i="<",d?a=+a+1:o=+o+1),i==="<"&&(c="-0"),n=`${i+a}.${o}.${s}${c}`):d?n=`>=${a}.0.0${c} <${+a+1}.0.0-0`:m&&(n=`>=${a}.${o}.0${c} <${a}.${+o+1}.0-0`),M("xRange return",n),n})},Fs=(e,t)=>(M("replaceStars",e,t),e.trim().replace(z[D.STAR],"")),_s=(e,t)=>(M("replaceGTE0",e,t),e.trim().replace(z[t.includePrerelease?D.GTE0PRE:D.GTE0],"")),qs=e=>(t,r,n,i,a,o,s,c,f,d,m,g)=>(H(n)?r="":H(i)?r=`>=${n}.0.0${e?"-0":""}`:H(a)?r=`>=${n}.${i}.0${e?"-0":""}`:o?r=`>=${r}`:r=`>=${r}${e?"-0":""}`,H(f)?c="":H(d)?c=`<${+f+1}.0.0-0`:H(m)?c=`<${f}.${+d+1}.0-0`:g?c=`<=${f}.${d}.${m}-${g}`:e?c=`<${f}.${d}.${+m+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),Os=(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(M(e[n].semver),e[n].semver!==Xt.ANY&&e[n].semver.prerelease.length>0){let i=e[n].semver;if(i.major===t.major&&i.minor===t.minor&&i.patch===t.patch)return!0}return!1}return!0}});var Wn=S((bf,Gn)=>{"use strict";var Ds=Wt(),Us=(e,t,r)=>{try{t=new Ds(t,r)}catch{return!1}return t.test(e)};Gn.exports=Us});var Kt=S((pf,zs)=>{zs.exports={name:"sharp",description:"High performance Node.js image processing, the fastest module to resize JPEG, PNG, WebP, GIF, AVIF and TIFF images",version:"0.34.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\xE4ck <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\xFCnemann <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\xE9r\xE9my 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\u011B\u0161ovec <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\xF1o <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\xE9 <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>"],scripts:{build:"node install/build.js",install:"node install/check.js || npm run build",clean:"rm -rf src/build/ .nyc_output/ coverage/ test/fixtures/output.*",test:"npm run lint && npm run test-unit",lint:"npm run lint-cpp && npm run lint-js && npm run lint-types","lint-cpp":"cpplint --quiet src/*.h src/*.cc","lint-js":"biome lint","lint-types":"tsd --files ./test/types/sharp.test-d.ts","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-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",main:"lib/index.js",types:"lib/index.d.ts",files:["install","lib","src/*.{cc,h,gyp}"],repository:{type:"git",url:"git://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.0.0","detect-libc":"^2.1.2",semver:"^7.7.3"},optionalDependencies:{"@img/sharp-darwin-arm64":"0.34.5","@img/sharp-darwin-x64":"0.34.5","@img/sharp-libvips-darwin-arm64":"1.2.4","@img/sharp-libvips-darwin-x64":"1.2.4","@img/sharp-libvips-linux-arm":"1.2.4","@img/sharp-libvips-linux-arm64":"1.2.4","@img/sharp-libvips-linux-ppc64":"1.2.4","@img/sharp-libvips-linux-riscv64":"1.2.4","@img/sharp-libvips-linux-s390x":"1.2.4","@img/sharp-libvips-linux-x64":"1.2.4","@img/sharp-libvips-linuxmusl-arm64":"1.2.4","@img/sharp-libvips-linuxmusl-x64":"1.2.4","@img/sharp-linux-arm":"0.34.5","@img/sharp-linux-arm64":"0.34.5","@img/sharp-linux-ppc64":"0.34.5","@img/sharp-linux-riscv64":"0.34.5","@img/sharp-linux-s390x":"0.34.5","@img/sharp-linux-x64":"0.34.5","@img/sharp-linuxmusl-arm64":"0.34.5","@img/sharp-linuxmusl-x64":"0.34.5","@img/sharp-wasm32":"0.34.5","@img/sharp-win32-arm64":"0.34.5","@img/sharp-win32-ia32":"0.34.5","@img/sharp-win32-x64":"0.34.5"},devDependencies:{"@biomejs/biome":"^2.3.4","@cpplint/cli":"^0.1.0","@emnapi/runtime":"^1.7.0","@img/sharp-libvips-dev":"1.2.4","@img/sharp-libvips-dev-wasm32":"1.2.4","@img/sharp-libvips-win32-arm64":"1.2.4","@img/sharp-libvips-win32-ia32":"1.2.4","@img/sharp-libvips-win32-x64":"1.2.4","@types/node":"*",emnapi:"^1.7.0","exif-reader":"^2.0.2","extract-zip":"^2.0.1",icc:"^3.0.0","jsdoc-to-markdown":"^9.1.3","node-addon-api":"^8.5.0","node-gyp":"^11.5.0","tar-fs":"^3.1.1",tsd:"^0.33.0"},license:"Apache-2.0",engines:{node:"^18.17.0 || ^20.3.0 || >=21.0.0"},config:{libvips:">=8.17.3"},funding:{url:"https://opencollective.com/libvips"}}});var Yt=S((wf,ri)=>{var{spawnSync:ft}=require("node:child_process"),{createHash:Hs}=require("node:crypto"),Qn=bn(),Gs=Dt(),Ws=Wn(),Vn=rt(),{config:Vs,engines:Xn,optionalDependencies:Xs}=Kt(),Ks=process.env.npm_package_config_libvips||Vs.libvips,Yn=Qn(Ks).version,Qs=["darwin-arm64","darwin-x64","linux-arm","linux-arm64","linux-ppc64","linux-riscv64","linux-s390x","linux-x64","linuxmusl-arm64","linuxmusl-x64","win32-arm64","win32-ia32","win32-x64"],ht={encoding:"utf8",shell:!0},Ys=e=>{e instanceof Error?console.error(`sharp: Installation error: ${e.message}`):console.log(`sharp: ${e}`)},Jn=()=>Vn.isNonGlibcLinuxSync()?Vn.familySync():"",Js=()=>`${process.platform}${Jn()}-${process.arch}`,Ne=()=>{if(Zn())return"wasm32";let{npm_config_arch:e,npm_config_platform:t,npm_config_libc:r}=process.env,n=typeof r=="string"?r:Jn();return`${t||process.platform}${n}-${e||process.arch}`},Zs=()=>{try{return require(`@img/sharp-libvips-dev-${Ne()}/include`)}catch{try{return require("@img/sharp-libvips-dev/include")}catch{}}return""},el=()=>{try{return require("@img/sharp-libvips-dev/cplusplus")}catch{}return""},tl=()=>{try{return require(`@img/sharp-libvips-dev-${Ne()}/lib`)}catch{try{return require(`@img/sharp-libvips-${Ne()}/lib`)}catch{}}return""},rl=()=>{if(process.release?.name==="node"&&process.versions&&!Ws(process.versions.node,Xn.node))return{found:process.versions.node,expected:Xn.node}},Zn=()=>{let{CC:e}=process.env;return!!e?.endsWith("/emcc")},nl=()=>process.platform==="darwin"&&process.arch==="x64"?(ft("sysctl sysctl.proc_translated",ht).stdout||"").trim()==="sysctl.proc_translated: 1":!1,Kn=e=>Hs("sha512").update(e).digest("hex"),il=()=>{try{let e=Kn(`imgsharp-libvips-${Ne()}`),t=Qn(Xs[`@img/sharp-libvips-${Ne()}`],{includePrerelease:!0}).version;return Kn(`${e}npm:${t}`).slice(0,10)}catch{}return""},al=()=>ft(`node-gyp rebuild --directory=src ${Zn()?"--nodedir=emscripten":""}`,{...ht,stdio:"inherit"}).status,ei=()=>process.platform!=="win32"?(ft("pkg-config --modversion vips-cpp",{...ht,env:{...process.env,PKG_CONFIG_PATH:ti()}}).stdout||"").trim():"",ti=()=>process.platform!=="win32"?[(ft('which brew >/dev/null 2>&1 && brew environment --plain | grep PKG_CONFIG_LIBDIR | cut -d" " -f2',ht).stdout||"").trim(),process.env.PKG_CONFIG_PATH,"/usr/local/lib/pkgconfig","/usr/lib/pkgconfig","/usr/local/libdata/pkgconfig","/usr/libdata/pkgconfig"].filter(Boolean).join(":"):"",Qt=(e,t,r)=>(r&&r(`Detected ${t}, skipping search for globally-installed libvips`),e),ol=e=>{if(process.env.SHARP_IGNORE_GLOBAL_LIBVIPS)return Qt(!1,"SHARP_IGNORE_GLOBAL_LIBVIPS",e);if(process.env.SHARP_FORCE_GLOBAL_LIBVIPS)return Qt(!0,"SHARP_FORCE_GLOBAL_LIBVIPS",e);if(nl())return Qt(!1,"Rosetta",e);let t=ei();return!!t&&Gs(t,Yn)};ri.exports={minimumLibvipsVersion:Yn,prebuiltPlatforms:Qs,buildPlatformArch:Ne,buildSharpLibvipsIncludeDir:Zs,buildSharpLibvipsCPlusPlusDir:el,buildSharpLibvipsLibDir:tl,isUnsupportedNodeRuntime:rl,runtimePlatformArch:Js,log:Ys,yarnLocator:il,spawnRebuild:al,globalLibvipsVersion:ei,pkgConfigPath:ti,useGlobalLibvips:ol}});var He=S((yf,ii)=>{var{familySync:sl,versionSync:ll}=rt(),{runtimePlatformArch:cl,isUnsupportedNodeRuntime:ni,prebuiltPlatforms:ul,minimumLibvipsVersion:fl}=Yt(),ye=cl(),hl=[`../src/build/Release/sharp-${ye}.node`,"../src/build/Release/sharp-wasm32.node",`@img/sharp-${ye}/sharp.node`,"@img/sharp-wasm32/sharp.node"],Jt,Re,ze=[];for(Jt of hl)try{Re=require(Jt);break}catch(e){ze.push(e)}if(Re&&Jt.startsWith("@img/sharp-linux-x64")&&!Re._isUsingX64V2()){let e=new Error("Prebuilt binaries for linux-x64 require v2 microarchitecture");e.code="Unsupported CPU",ze.push(e),Re=null}if(Re)ii.exports=Re;else{let[e,t,r]=["linux","darwin","win32"].map(a=>ye.startsWith(a)),n=[`Could not load the "sharp" module using the ${ye} runtime`];ze.forEach(a=>{a.code!=="MODULE_NOT_FOUND"&&n.push(`${a.code}: ${a.message}`)});let i=ze.map(a=>a.message).join(" ");if(n.push("Possible solutions:"),ni()){let{found:a,expected:o}=ni();n.push("- Please upgrade Node.js:",` Found ${a}`,` Requires ${o}`)}else if(ul.includes(ye)){let[a,o]=ye.split("-"),s=a.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=${a.replace("musl","")}${s} --cpu=${o} sharp`)}else n.push(`- Manually install libvips >= ${fl}`,"- Add experimental WebAssembly-based dependencies:"," npm install --cpu=wasm32 sharp"," npm install @img/sharp-wasm32");if(e&&/(symbol not found|CXXABI_)/i.test(i))try{let{config:a}=require(`@img/sharp-libvips-${ye}/package`),o=`${sl()} ${ll()}`,s=`${a.musl?"musl":"glibc"} ${a.musl||a.glibc}`;n.push("- Update your OS:",` Found ${o}`,` Requires ${s}`)}catch{}throw e&&/\/snap\/core[0-9]{2}/.test(i)&&n.push("- Remove the Node.js Snap, which does not support native modules"," snap remove node"),t&&/Incompatible library version/.test(i)&&n.push("- Update Homebrew:"," brew update && brew upgrade vips"),ze.some(a=>a.code==="ERR_DLOPEN_DISABLED")&&n.push("- Run Node.js without using the --no-addons flag"),r&&/The specified procedure could not be found/.test(i)&&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"),n.push("- Consult the installation documentation:"," See https://sharp.pixelplumbing.com/install"),new Error(n.join(`
|
|
2
|
-
`))}});var oi=S((xf,ai)=>{var dl=require("node:util"),Zt=require("node:stream"),ml=J();He();var gl=dl.debuglog("sharp"),bl=e=>{xe.queue.emit("change",e)},xe=function(e,t){if(arguments.length===1&&!ml.defined(e))throw new Error("Invalid input");return this instanceof xe?(Zt.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:.2,sharpenSigma:0,sharpenM1:1,sharpenM2:2,sharpenX1:2,sharpenY2:10,sharpenY3:20,threshold:0,thresholdGrayscale:!0,trimBackground:[],trimThreshold:-1,trimLineArt:!1,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,keepMetadata:0,withMetadataOrientation:-1,withMetadataDensity:0,withIccProfile:"",withExif:{},withExifMerge:!0,withXmp:"",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,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:8,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,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),gl(r)},queueListener:bl},this.options.input=this._createInputDescriptor(e,t,{allowStream:!0}),this):new xe(e,t)};Object.setPrototypeOf(xe.prototype,Zt.Duplex.prototype);Object.setPrototypeOf(xe,Zt.Duplex);function pl(){let e=this.constructor.call(),{debuglog:t,queueListener:r,...n}=this.options;return e.options=structuredClone(n),e.options.debuglog=t,e.options.queueListener=r,this._isStreamInput()&&this.on("finish",()=>{this._flattenBufferIn(),e.options.input.buffer=this.options.input.buffer,e.emit("finish")}),e}Object.assign(xe.prototype,{clone:pl});ai.exports=xe});var ci=S((vf,li)=>{var u=J(),he=He(),wl={left:"low",top:"low",low:"low",center:"centre",centre:"centre",right:"high",bottom:"high",high:"high"},yl=["failOn","limitInputPixels","unlimited","animated","autoOrient","density","ignoreIcc","page","pages","sequentialRead","jp2","openSlide","pdf","raw","svg","tiff","failOnError","openSlideLevel","pdfBackground","tiffSubifd"];function si(e){let t=yl.filter(r=>u.defined(e[r])).map(r=>[r,e[r]]);return t.length?Object.fromEntries(t):void 0}function xl(e,t,r){let n={autoOrient:!1,failOn:"warning",limitInputPixels:268402689,ignoreIcc:!1,unlimited:!1,sequentialRead:!0};if(u.string(e))n.file=e;else if(u.buffer(e)){if(e.length===0)throw Error("Input Buffer is empty");n.buffer=e}else if(u.arrayBuffer(e)){if(e.byteLength===0)throw Error("Input bit Array is empty");n.buffer=Buffer.from(e,0,e.byteLength)}else if(u.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(u.plainObject(e)&&!u.defined(t))t=e,si(t)&&(n.buffer=[]);else if(!u.defined(e)&&!u.defined(t)&&u.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(i=>this._createInputDescriptor(i));else throw new Error("Recursive join is unsupported");else throw new Error("Expected at least two images to join");else throw new Error(`Unsupported input '${e}' of type ${typeof e}${u.defined(t)?` when also providing options of type ${typeof t}`:""}`);if(u.object(t)){if(u.defined(t.failOnError))if(u.bool(t.failOnError))n.failOn=t.failOnError?"warning":"none";else throw u.invalidParameterError("failOnError","boolean",t.failOnError);if(u.defined(t.failOn))if(u.string(t.failOn)&&u.inArray(t.failOn,["none","truncated","error","warning"]))n.failOn=t.failOn;else throw u.invalidParameterError("failOn","one of: none, truncated, error, warning",t.failOn);if(u.defined(t.autoOrient))if(u.bool(t.autoOrient))n.autoOrient=t.autoOrient;else throw u.invalidParameterError("autoOrient","boolean",t.autoOrient);if(u.defined(t.density))if(u.inRange(t.density,1,1e5))n.density=t.density;else throw u.invalidParameterError("density","number between 1 and 100000",t.density);if(u.defined(t.ignoreIcc))if(u.bool(t.ignoreIcc))n.ignoreIcc=t.ignoreIcc;else throw u.invalidParameterError("ignoreIcc","boolean",t.ignoreIcc);if(u.defined(t.limitInputPixels))if(u.bool(t.limitInputPixels))n.limitInputPixels=t.limitInputPixels?16383**2:0;else if(u.integer(t.limitInputPixels)&&u.inRange(t.limitInputPixels,0,Number.MAX_SAFE_INTEGER))n.limitInputPixels=t.limitInputPixels;else throw u.invalidParameterError("limitInputPixels","positive integer",t.limitInputPixels);if(u.defined(t.unlimited))if(u.bool(t.unlimited))n.unlimited=t.unlimited;else throw u.invalidParameterError("unlimited","boolean",t.unlimited);if(u.defined(t.sequentialRead))if(u.bool(t.sequentialRead))n.sequentialRead=t.sequentialRead;else throw u.invalidParameterError("sequentialRead","boolean",t.sequentialRead);if(u.defined(t.raw)){if(u.object(t.raw)&&u.integer(t.raw.width)&&t.raw.width>0&&u.integer(t.raw.height)&&t.raw.height>0&&u.integer(t.raw.channels)&&u.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 new Error("Expected width, height and channels for raw pixel input");if(n.rawPremultiplied=!1,u.defined(t.raw.premultiplied))if(u.bool(t.raw.premultiplied))n.rawPremultiplied=t.raw.premultiplied;else throw u.invalidParameterError("raw.premultiplied","boolean",t.raw.premultiplied);if(n.rawPageHeight=0,u.defined(t.raw.pageHeight))if(u.integer(t.raw.pageHeight)&&t.raw.pageHeight>0&&t.raw.pageHeight<=t.raw.height){if(t.raw.height%t.raw.pageHeight!==0)throw new Error(`Expected raw.height ${t.raw.height} to be a multiple of raw.pageHeight ${t.raw.pageHeight}`);n.rawPageHeight=t.raw.pageHeight}else throw u.invalidParameterError("raw.pageHeight","positive integer",t.raw.pageHeight)}if(u.defined(t.animated))if(u.bool(t.animated))n.pages=t.animated?-1:1;else throw u.invalidParameterError("animated","boolean",t.animated);if(u.defined(t.pages))if(u.integer(t.pages)&&u.inRange(t.pages,-1,1e5))n.pages=t.pages;else throw u.invalidParameterError("pages","integer between -1 and 100000",t.pages);if(u.defined(t.page))if(u.integer(t.page)&&u.inRange(t.page,0,1e5))n.page=t.page;else throw u.invalidParameterError("page","integer between 0 and 100000",t.page);if(u.object(t.openSlide)&&u.defined(t.openSlide.level))if(u.integer(t.openSlide.level)&&u.inRange(t.openSlide.level,0,256))n.openSlideLevel=t.openSlide.level;else throw u.invalidParameterError("openSlide.level","integer between 0 and 256",t.openSlide.level);else if(u.defined(t.level))if(u.integer(t.level)&&u.inRange(t.level,0,256))n.openSlideLevel=t.level;else throw u.invalidParameterError("level","integer between 0 and 256",t.level);if(u.object(t.tiff)&&u.defined(t.tiff.subifd))if(u.integer(t.tiff.subifd)&&u.inRange(t.tiff.subifd,-1,1e5))n.tiffSubifd=t.tiff.subifd;else throw u.invalidParameterError("tiff.subifd","integer between -1 and 100000",t.tiff.subifd);else if(u.defined(t.subifd))if(u.integer(t.subifd)&&u.inRange(t.subifd,-1,1e5))n.tiffSubifd=t.subifd;else throw u.invalidParameterError("subifd","integer between -1 and 100000",t.subifd);if(u.object(t.svg)){if(u.defined(t.svg.stylesheet))if(u.string(t.svg.stylesheet))n.svgStylesheet=t.svg.stylesheet;else throw u.invalidParameterError("svg.stylesheet","string",t.svg.stylesheet);if(u.defined(t.svg.highBitdepth))if(u.bool(t.svg.highBitdepth))n.svgHighBitdepth=t.svg.highBitdepth;else throw u.invalidParameterError("svg.highBitdepth","boolean",t.svg.highBitdepth)}if(u.object(t.pdf)&&u.defined(t.pdf.background)?n.pdfBackground=this._getBackgroundColourOption(t.pdf.background):u.defined(t.pdfBackground)&&(n.pdfBackground=this._getBackgroundColourOption(t.pdfBackground)),u.object(t.jp2)&&u.defined(t.jp2.oneshot))if(u.bool(t.jp2.oneshot))n.jp2Oneshot=t.jp2.oneshot;else throw u.invalidParameterError("jp2.oneshot","boolean",t.jp2.oneshot);if(u.defined(t.create))if(u.object(t.create)&&u.integer(t.create.width)&&t.create.width>0&&u.integer(t.create.height)&&t.create.height>0&&u.integer(t.create.channels)){if(n.createWidth=t.create.width,n.createHeight=t.create.height,n.createChannels=t.create.channels,n.createPageHeight=0,u.defined(t.create.pageHeight))if(u.integer(t.create.pageHeight)&&t.create.pageHeight>0&&t.create.pageHeight<=t.create.height){if(t.create.height%t.create.pageHeight!==0)throw new Error(`Expected create.height ${t.create.height} to be a multiple of create.pageHeight ${t.create.pageHeight}`);n.createPageHeight=t.create.pageHeight}else throw u.invalidParameterError("create.pageHeight","positive integer",t.create.pageHeight);if(u.defined(t.create.noise)){if(!u.object(t.create.noise))throw new Error("Expected noise to be an object");if(t.create.noise.type!=="gaussian")throw new Error("Only gaussian noise is supported at the moment");if(n.createNoiseType=t.create.noise.type,!u.inRange(t.create.channels,1,4))throw u.invalidParameterError("create.channels","number between 1 and 4",t.create.channels);if(n.createNoiseMean=128,u.defined(t.create.noise.mean))if(u.number(t.create.noise.mean)&&u.inRange(t.create.noise.mean,0,1e4))n.createNoiseMean=t.create.noise.mean;else throw u.invalidParameterError("create.noise.mean","number between 0 and 10000",t.create.noise.mean);if(n.createNoiseSigma=30,u.defined(t.create.noise.sigma))if(u.number(t.create.noise.sigma)&&u.inRange(t.create.noise.sigma,0,1e4))n.createNoiseSigma=t.create.noise.sigma;else throw u.invalidParameterError("create.noise.sigma","number between 0 and 10000",t.create.noise.sigma)}else if(u.defined(t.create.background)){if(!u.inRange(t.create.channels,3,4))throw u.invalidParameterError("create.channels","number between 3 and 4",t.create.channels);n.createBackground=this._getBackgroundColourOption(t.create.background)}else throw new Error("Expected valid noise or background to create a new input image");delete n.buffer}else throw new Error("Expected valid width, height and channels to create a new input image");if(u.defined(t.text))if(u.object(t.text)&&u.string(t.text.text)){if(n.textValue=t.text.text,u.defined(t.text.height)&&u.defined(t.text.dpi))throw new Error("Expected only one of dpi or height");if(u.defined(t.text.font))if(u.string(t.text.font))n.textFont=t.text.font;else throw u.invalidParameterError("text.font","string",t.text.font);if(u.defined(t.text.fontfile))if(u.string(t.text.fontfile))n.textFontfile=t.text.fontfile;else throw u.invalidParameterError("text.fontfile","string",t.text.fontfile);if(u.defined(t.text.width))if(u.integer(t.text.width)&&t.text.width>0)n.textWidth=t.text.width;else throw u.invalidParameterError("text.width","positive integer",t.text.width);if(u.defined(t.text.height))if(u.integer(t.text.height)&&t.text.height>0)n.textHeight=t.text.height;else throw u.invalidParameterError("text.height","positive integer",t.text.height);if(u.defined(t.text.align))if(u.string(t.text.align)&&u.string(this.constructor.align[t.text.align]))n.textAlign=this.constructor.align[t.text.align];else throw u.invalidParameterError("text.align","valid alignment",t.text.align);if(u.defined(t.text.justify))if(u.bool(t.text.justify))n.textJustify=t.text.justify;else throw u.invalidParameterError("text.justify","boolean",t.text.justify);if(u.defined(t.text.dpi))if(u.integer(t.text.dpi)&&u.inRange(t.text.dpi,1,1e6))n.textDpi=t.text.dpi;else throw u.invalidParameterError("text.dpi","integer between 1 and 1000000",t.text.dpi);if(u.defined(t.text.rgba))if(u.bool(t.text.rgba))n.textRgba=t.text.rgba;else throw u.invalidParameterError("text.rgba","bool",t.text.rgba);if(u.defined(t.text.spacing))if(u.integer(t.text.spacing)&&u.inRange(t.text.spacing,-1e6,1e6))n.textSpacing=t.text.spacing;else throw u.invalidParameterError("text.spacing","integer between -1000000 and 1000000",t.text.spacing);if(u.defined(t.text.wrap))if(u.string(t.text.wrap)&&u.inArray(t.text.wrap,["word","char","word-char","none"]))n.textWrap=t.text.wrap;else throw u.invalidParameterError("text.wrap","one of: word, char, word-char, none",t.text.wrap);delete n.buffer}else throw new Error("Expected a valid string to create an image with text.");if(u.defined(t.join))if(u.defined(this.options.join)){if(u.defined(t.join.animated))if(u.bool(t.join.animated))n.joinAnimated=t.join.animated;else throw u.invalidParameterError("join.animated","boolean",t.join.animated);if(u.defined(t.join.across))if(u.integer(t.join.across)&&u.inRange(t.join.across,1,1e6))n.joinAcross=t.join.across;else throw u.invalidParameterError("join.across","integer between 1 and 100000",t.join.across);if(u.defined(t.join.shim))if(u.integer(t.join.shim)&&u.inRange(t.join.shim,0,1e6))n.joinShim=t.join.shim;else throw u.invalidParameterError("join.shim","integer between 0 and 100000",t.join.shim);if(u.defined(t.join.background)&&(n.joinBackground=this._getBackgroundColourOption(t.join.background)),u.defined(t.join.halign))if(u.string(t.join.halign)&&u.string(this.constructor.align[t.join.halign]))n.joinHalign=this.constructor.align[t.join.halign];else throw u.invalidParameterError("join.halign","valid alignment",t.join.halign);if(u.defined(t.join.valign))if(u.string(t.join.valign)&&u.string(this.constructor.align[t.join.valign]))n.joinValign=this.constructor.align[t.join.valign];else throw u.invalidParameterError("join.valign","valid alignment",t.join.valign)}else throw new Error("Expected input to be an array of images to join")}else if(u.defined(t))throw new Error(`Invalid input options ${t}`);return n}function vl(e,t,r){Array.isArray(this.options.input.buffer)?u.buffer(e)?(this.options.input.buffer.length===0&&this.on("finish",()=>{this.streamInFinished=!0}),this.options.input.buffer.push(e),r()):r(new Error("Non-Buffer data on Writable Stream")):r(new Error("Unexpected data on Writable Stream"))}function El(){this._isStreamInput()&&(this.options.input.buffer=Buffer.concat(this.options.input.buffer))}function Pl(){return Array.isArray(this.options.input.buffer)}function Il(e){let t=Error();return u.fn(e)?(this._isStreamInput()?this.on("finish",()=>{this._flattenBufferIn(),he.metadata(this.options,(r,n)=>{r?e(u.nativeError(r,t)):e(null,n)})}):he.metadata(this.options,(r,n)=>{r?e(u.nativeError(r,t)):e(null,n)}),this):this._isStreamInput()?new Promise((r,n)=>{let i=()=>{this._flattenBufferIn(),he.metadata(this.options,(a,o)=>{a?n(u.nativeError(a,t)):r(o)})};this.writableFinished?i():this.once("finish",i)}):new Promise((r,n)=>{he.metadata(this.options,(i,a)=>{i?n(u.nativeError(i,t)):r(a)})})}function Nl(e){let t=Error();return u.fn(e)?(this._isStreamInput()?this.on("finish",()=>{this._flattenBufferIn(),he.stats(this.options,(r,n)=>{r?e(u.nativeError(r,t)):e(null,n)})}):he.stats(this.options,(r,n)=>{r?e(u.nativeError(r,t)):e(null,n)}),this):this._isStreamInput()?new Promise((r,n)=>{this.on("finish",function(){this._flattenBufferIn(),he.stats(this.options,(i,a)=>{i?n(u.nativeError(i,t)):r(a)})})}):new Promise((r,n)=>{he.stats(this.options,(i,a)=>{i?n(u.nativeError(i,t)):r(a)})})}li.exports=e=>{Object.assign(e.prototype,{_inputOptionsFromObject:si,_createInputDescriptor:xl,_write:vl,_flattenBufferIn:El,_isStreamInput:Pl,metadata:Il,stats:Nl}),e.align=wl}});var gi=S((Ef,mi)=>{var v=J(),fi={center:0,centre:0,north:1,east:2,south:3,west:4,northeast:5,southeast:6,southwest:7,northwest:8},hi={top:1,right:2,bottom:3,left:4,"right top":5,"right bottom":6,"left bottom":7,"left top":8},ui={background:"background",copy:"copy",repeat:"repeat",mirror:"mirror"},di={entropy:16,attention:17},er={nearest:"nearest",linear:"linear",cubic:"cubic",mitchell:"mitchell",lanczos2:"lanczos2",lanczos3:"lanczos3",mks2013:"mks2013",mks2021:"mks2021"},Rl={contain:"contain",cover:"cover",fill:"fill",inside:"inside",outside:"outside"},Sl={contain:"embed",cover:"crop",fill:"ignore_aspect",inside:"max",outside:"min"};function tr(e){return e.angle%360!==0||e.rotationAngle!==0}function dt(e){return e.width!==-1||e.height!==-1}function Al(e,t,r){if(dt(this.options)&&this.options.debuglog("ignoring previous resize options"),this.options.widthPost!==-1&&this.options.debuglog("operation order will be: extract, resize, extract"),v.defined(e))if(v.object(e)&&!v.defined(r))r=e;else if(v.integer(e)&&e>0)this.options.width=e;else throw v.invalidParameterError("width","positive integer",e);else this.options.width=-1;if(v.defined(t))if(v.integer(t)&&t>0)this.options.height=t;else throw v.invalidParameterError("height","positive integer",t);else this.options.height=-1;if(v.object(r)){if(v.defined(r.width))if(v.integer(r.width)&&r.width>0)this.options.width=r.width;else throw v.invalidParameterError("width","positive integer",r.width);if(v.defined(r.height))if(v.integer(r.height)&&r.height>0)this.options.height=r.height;else throw v.invalidParameterError("height","positive integer",r.height);if(v.defined(r.fit)){let n=Sl[r.fit];if(v.string(n))this.options.canvas=n;else throw v.invalidParameterError("fit","valid fit",r.fit)}if(v.defined(r.position)){let n=v.integer(r.position)?r.position:di[r.position]||hi[r.position]||fi[r.position];if(v.integer(n)&&(v.inRange(n,0,8)||v.inRange(n,16,17)))this.options.position=n;else throw v.invalidParameterError("position","valid position/gravity/strategy",r.position)}if(this._setBackgroundColourOption("resizeBackground",r.background),v.defined(r.kernel))if(v.string(er[r.kernel]))this.options.kernel=er[r.kernel];else throw v.invalidParameterError("kernel","valid kernel name",r.kernel);v.defined(r.withoutEnlargement)&&this._setBooleanOption("withoutEnlargement",r.withoutEnlargement),v.defined(r.withoutReduction)&&this._setBooleanOption("withoutReduction",r.withoutReduction),v.defined(r.fastShrinkOnLoad)&&this._setBooleanOption("fastShrinkOnLoad",r.fastShrinkOnLoad)}return tr(this.options)&&dt(this.options)&&(this.options.rotateBefore=!0),this}function kl(e){if(v.integer(e)&&e>0)this.options.extendTop=e,this.options.extendBottom=e,this.options.extendLeft=e,this.options.extendRight=e;else if(v.object(e)){if(v.defined(e.top))if(v.integer(e.top)&&e.top>=0)this.options.extendTop=e.top;else throw v.invalidParameterError("top","positive integer",e.top);if(v.defined(e.bottom))if(v.integer(e.bottom)&&e.bottom>=0)this.options.extendBottom=e.bottom;else throw v.invalidParameterError("bottom","positive integer",e.bottom);if(v.defined(e.left))if(v.integer(e.left)&&e.left>=0)this.options.extendLeft=e.left;else throw v.invalidParameterError("left","positive integer",e.left);if(v.defined(e.right))if(v.integer(e.right)&&e.right>=0)this.options.extendRight=e.right;else throw v.invalidParameterError("right","positive integer",e.right);if(this._setBackgroundColourOption("extendBackground",e.background),v.defined(e.extendWith))if(v.string(ui[e.extendWith]))this.options.extendWith=ui[e.extendWith];else throw v.invalidParameterError("extendWith","one of: background, copy, repeat, mirror",e.extendWith)}else throw v.invalidParameterError("extend","integer or object",e);return this}function jl(e){let t=dt(this.options)||this.options.widthPre!==-1?"Post":"Pre";return this.options[`width${t}`]!==-1&&this.options.debuglog("ignoring previous extract options"),["left","top","width","height"].forEach(function(r){let n=e[r];if(v.integer(n)&&n>=0)this.options[r+(r==="left"||r==="top"?"Offset":"")+t]=n;else throw v.invalidParameterError(r,"integer",n)},this),tr(this.options)&&!dt(this.options)&&(this.options.widthPre===-1||this.options.widthPost===-1)&&(this.options.rotateBefore=!0),this.options.input.autoOrient&&(this.options.orientBefore=!0),this}function Ml(e){if(this.options.trimThreshold=10,v.defined(e))if(v.object(e)){if(v.defined(e.background)&&this._setBackgroundColourOption("trimBackground",e.background),v.defined(e.threshold))if(v.number(e.threshold)&&e.threshold>=0)this.options.trimThreshold=e.threshold;else throw v.invalidParameterError("threshold","positive number",e.threshold);v.defined(e.lineArt)&&this._setBooleanOption("trimLineArt",e.lineArt)}else throw v.invalidParameterError("trim","object",e);return tr(this.options)&&(this.options.rotateBefore=!0),this}mi.exports=e=>{Object.assign(e.prototype,{resize:Al,extend:kl,extract:jl,trim:Ml}),e.gravity=fi,e.strategy=di,e.kernel=er,e.fit=Rl,e.position=hi}});var pi=S((Pf,bi)=>{var k=J(),rr={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 $l(e){if(!Array.isArray(e))throw k.invalidParameterError("images to composite","array",e);return this.options.composite=e.map(t=>{if(!k.object(t))throw k.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(k.defined(t.blend))if(k.string(rr[t.blend]))n.blend=rr[t.blend];else throw k.invalidParameterError("blend","valid blend name",t.blend);if(k.defined(t.tile))if(k.bool(t.tile))n.tile=t.tile;else throw k.invalidParameterError("tile","boolean",t.tile);if(k.defined(t.left))if(k.integer(t.left))n.left=t.left;else throw k.invalidParameterError("left","integer",t.left);if(k.defined(t.top))if(k.integer(t.top))n.top=t.top;else throw k.invalidParameterError("top","integer",t.top);if(k.defined(t.top)!==k.defined(t.left))throw new Error("Expected both left and top to be set");if(n.hasOffset=k.integer(t.top)&&k.integer(t.left),k.defined(t.gravity))if(k.integer(t.gravity)&&k.inRange(t.gravity,0,8))n.gravity=t.gravity;else if(k.string(t.gravity)&&k.integer(this.constructor.gravity[t.gravity]))n.gravity=this.constructor.gravity[t.gravity];else throw k.invalidParameterError("gravity","valid gravity",t.gravity);if(k.defined(t.premultiplied))if(k.bool(t.premultiplied))n.premultiplied=t.premultiplied;else throw k.invalidParameterError("premultiplied","boolean",t.premultiplied);return n}),this}bi.exports=e=>{e.prototype.composite=$l,e.blend=rr}});var Ei=S((If,vi)=>{var h=J(),wi={integer:"integer",float:"float",approximate:"approximate"};function Ll(e,t){if(!h.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),h.integer(e)&&!(e%90))this.options.angle=e;else if(h.number(e))this.options.rotationAngle=e,h.object(t)&&t.background&&this._setBackgroundColourOption("rotationBackground",t.background);else throw h.invalidParameterError("angle","numeric",e);return this}function Tl(){return this.options.input.autoOrient=!0,this}function Cl(e){return this.options.flip=h.bool(e)?e:!0,this}function Bl(e){return this.options.flop=h.bool(e)?e:!0,this}function Fl(e,t){let r=[].concat(...e);if(r.length===4&&r.every(h.number))this.options.affineMatrix=r;else throw h.invalidParameterError("matrix","1x4 or 2x2 array",e);if(h.defined(t))if(h.object(t)){if(this._setBackgroundColourOption("affineBackground",t.background),h.defined(t.idx))if(h.number(t.idx))this.options.affineIdx=t.idx;else throw h.invalidParameterError("options.idx","number",t.idx);if(h.defined(t.idy))if(h.number(t.idy))this.options.affineIdy=t.idy;else throw h.invalidParameterError("options.idy","number",t.idy);if(h.defined(t.odx))if(h.number(t.odx))this.options.affineOdx=t.odx;else throw h.invalidParameterError("options.odx","number",t.odx);if(h.defined(t.ody))if(h.number(t.ody))this.options.affineOdy=t.ody;else throw h.invalidParameterError("options.ody","number",t.ody);if(h.defined(t.interpolator))if(h.inArray(t.interpolator,Object.values(this.constructor.interpolators)))this.options.affineInterpolator=t.interpolator;else throw h.invalidParameterError("options.interpolator","valid interpolator name",t.interpolator)}else throw h.invalidParameterError("options","object",t);return this}function _l(e,t,r){if(!h.defined(e))this.options.sharpenSigma=-1;else if(h.bool(e))this.options.sharpenSigma=e?-1:0;else if(h.number(e)&&h.inRange(e,.01,1e4)){if(this.options.sharpenSigma=e,h.defined(t))if(h.number(t)&&h.inRange(t,0,1e4))this.options.sharpenM1=t;else throw h.invalidParameterError("flat","number between 0 and 10000",t);if(h.defined(r))if(h.number(r)&&h.inRange(r,0,1e4))this.options.sharpenM2=r;else throw h.invalidParameterError("jagged","number between 0 and 10000",r)}else if(h.plainObject(e)){if(h.number(e.sigma)&&h.inRange(e.sigma,1e-6,10))this.options.sharpenSigma=e.sigma;else throw h.invalidParameterError("options.sigma","number between 0.000001 and 10",e.sigma);if(h.defined(e.m1))if(h.number(e.m1)&&h.inRange(e.m1,0,1e6))this.options.sharpenM1=e.m1;else throw h.invalidParameterError("options.m1","number between 0 and 1000000",e.m1);if(h.defined(e.m2))if(h.number(e.m2)&&h.inRange(e.m2,0,1e6))this.options.sharpenM2=e.m2;else throw h.invalidParameterError("options.m2","number between 0 and 1000000",e.m2);if(h.defined(e.x1))if(h.number(e.x1)&&h.inRange(e.x1,0,1e6))this.options.sharpenX1=e.x1;else throw h.invalidParameterError("options.x1","number between 0 and 1000000",e.x1);if(h.defined(e.y2))if(h.number(e.y2)&&h.inRange(e.y2,0,1e6))this.options.sharpenY2=e.y2;else throw h.invalidParameterError("options.y2","number between 0 and 1000000",e.y2);if(h.defined(e.y3))if(h.number(e.y3)&&h.inRange(e.y3,0,1e6))this.options.sharpenY3=e.y3;else throw h.invalidParameterError("options.y3","number between 0 and 1000000",e.y3)}else throw h.invalidParameterError("sigma","number between 0.01 and 10000",e);return this}function ql(e){if(!h.defined(e))this.options.medianSize=3;else if(h.integer(e)&&h.inRange(e,1,1e3))this.options.medianSize=e;else throw h.invalidParameterError("size","integer between 1 and 1000",e);return this}function Ol(e){let t;if(h.number(e))t=e;else if(h.plainObject(e)){if(!h.number(e.sigma))throw h.invalidParameterError("options.sigma","number between 0.3 and 1000",t);if(t=e.sigma,"precision"in e)if(h.string(wi[e.precision]))this.options.precision=wi[e.precision];else throw h.invalidParameterError("precision","one of: integer, float, approximate",e.precision);if("minAmplitude"in e)if(h.number(e.minAmplitude)&&h.inRange(e.minAmplitude,.001,1))this.options.minAmpl=e.minAmplitude;else throw h.invalidParameterError("minAmplitude","number between 0.001 and 1",e.minAmplitude)}if(!h.defined(e))this.options.blurSigma=-1;else if(h.bool(e))this.options.blurSigma=e?-1:0;else if(h.number(t)&&h.inRange(t,.3,1e3))this.options.blurSigma=t;else throw h.invalidParameterError("sigma","number between 0.3 and 1000",t);return this}function yi(e){if(!h.defined(e))this.options.dilateWidth=1;else if(h.integer(e)&&e>0)this.options.dilateWidth=e;else throw h.invalidParameterError("dilate","positive integer",yi);return this}function xi(e){if(!h.defined(e))this.options.erodeWidth=1;else if(h.integer(e)&&e>0)this.options.erodeWidth=e;else throw h.invalidParameterError("erode","positive integer",xi);return this}function Dl(e){return this.options.flatten=h.bool(e)?e:!0,h.object(e)&&this._setBackgroundColourOption("flattenBackground",e.background),this}function Ul(){return this.options.unflatten=!0,this}function zl(e,t){if(!h.defined(e))this.options.gamma=2.2;else if(h.number(e)&&h.inRange(e,1,3))this.options.gamma=e;else throw h.invalidParameterError("gamma","number between 1.0 and 3.0",e);if(!h.defined(t))this.options.gammaOut=this.options.gamma;else if(h.number(t)&&h.inRange(t,1,3))this.options.gammaOut=t;else throw h.invalidParameterError("gammaOut","number between 1.0 and 3.0",t);return this}function Hl(e){if(this.options.negate=h.bool(e)?e:!0,h.plainObject(e)&&"alpha"in e)if(h.bool(e.alpha))this.options.negateAlpha=e.alpha;else throw h.invalidParameterError("alpha","should be boolean value",e.alpha);return this}function Gl(e){if(h.plainObject(e)){if(h.defined(e.lower))if(h.number(e.lower)&&h.inRange(e.lower,0,99))this.options.normaliseLower=e.lower;else throw h.invalidParameterError("lower","number between 0 and 99",e.lower);if(h.defined(e.upper))if(h.number(e.upper)&&h.inRange(e.upper,1,100))this.options.normaliseUpper=e.upper;else throw h.invalidParameterError("upper","number between 1 and 100",e.upper)}if(this.options.normaliseLower>=this.options.normaliseUpper)throw h.invalidParameterError("range","lower to be less than upper",`${this.options.normaliseLower} >= ${this.options.normaliseUpper}`);return this.options.normalise=!0,this}function Wl(e){return this.normalise(e)}function Vl(e){if(h.plainObject(e)){if(h.integer(e.width)&&e.width>0)this.options.claheWidth=e.width;else throw h.invalidParameterError("width","integer greater than zero",e.width);if(h.integer(e.height)&&e.height>0)this.options.claheHeight=e.height;else throw h.invalidParameterError("height","integer greater than zero",e.height);if(h.defined(e.maxSlope))if(h.integer(e.maxSlope)&&h.inRange(e.maxSlope,0,100))this.options.claheMaxSlope=e.maxSlope;else throw h.invalidParameterError("maxSlope","integer between 0 and 100",e.maxSlope)}else throw h.invalidParameterError("options","plain object",e);return this}function Xl(e){if(!h.object(e)||!Array.isArray(e.kernel)||!h.integer(e.width)||!h.integer(e.height)||!h.inRange(e.width,3,1001)||!h.inRange(e.height,3,1001)||e.height*e.width!==e.kernel.length)throw new Error("Invalid convolution kernel");return h.integer(e.scale)||(e.scale=e.kernel.reduce((t,r)=>t+r,0)),e.scale<1&&(e.scale=1),h.integer(e.offset)||(e.offset=0),this.options.convKernel=e,this}function Kl(e,t){if(!h.defined(e))this.options.threshold=128;else if(h.bool(e))this.options.threshold=e?128:0;else if(h.integer(e)&&h.inRange(e,0,255))this.options.threshold=e;else throw h.invalidParameterError("threshold","integer between 0 and 255",e);return!h.object(t)||t.greyscale===!0||t.grayscale===!0?this.options.thresholdGrayscale=!0:this.options.thresholdGrayscale=!1,this}function Ql(e,t,r){if(this.options.boolean=this._createInputDescriptor(e,r),h.string(t)&&h.inArray(t,["and","or","eor"]))this.options.booleanOp=t;else throw h.invalidParameterError("operator","one of: and, or, eor",t);return this}function Yl(e,t){if(!h.defined(e)&&h.number(t)?e=1:h.number(e)&&!h.defined(t)&&(t=0),!h.defined(e))this.options.linearA=[];else if(h.number(e))this.options.linearA=[e];else if(Array.isArray(e)&&e.length&&e.every(h.number))this.options.linearA=e;else throw h.invalidParameterError("a","number or array of numbers",e);if(!h.defined(t))this.options.linearB=[];else if(h.number(t))this.options.linearB=[t];else if(Array.isArray(t)&&t.length&&t.every(h.number))this.options.linearB=t;else throw h.invalidParameterError("b","number or array of numbers",t);if(this.options.linearA.length!==this.options.linearB.length)throw new Error("Expected a and b to be arrays of the same length");return this}function Jl(e){if(!Array.isArray(e))throw h.invalidParameterError("inputMatrix","array",e);if(e.length!==3&&e.length!==4)throw h.invalidParameterError("inputMatrix","3x3 or 4x4 array",e.length);let t=e.flat().map(Number);if(t.length!==9&&t.length!==16)throw h.invalidParameterError("inputMatrix","cardinality of 9 or 16",t.length);return this.options.recombMatrix=t,this}function Zl(e){if(!h.plainObject(e))throw h.invalidParameterError("options","plain object",e);if("brightness"in e)if(h.number(e.brightness)&&e.brightness>=0)this.options.brightness=e.brightness;else throw h.invalidParameterError("brightness","number above zero",e.brightness);if("saturation"in e)if(h.number(e.saturation)&&e.saturation>=0)this.options.saturation=e.saturation;else throw h.invalidParameterError("saturation","number above zero",e.saturation);if("hue"in e)if(h.integer(e.hue))this.options.hue=e.hue%360;else throw h.invalidParameterError("hue","number",e.hue);if("lightness"in e)if(h.number(e.lightness))this.options.lightness=e.lightness;else throw h.invalidParameterError("lightness","number",e.lightness);return this}vi.exports=e=>{Object.assign(e.prototype,{autoOrient:Tl,rotate:Ll,flip:Cl,flop:Bl,affine:Fl,sharpen:_l,erode:xi,dilate:yi,median:ql,blur:Ol,flatten:Dl,unflatten:Ul,gamma:zl,negate:Hl,normalise:Gl,normalize:Wl,clahe:Vl,convolve:Xl,threshold:Kl,boolean:Ql,linear:Yl,recomb:Jl,modulate:Zl})}});var Ai=S((Nf,Si)=>{var or=Object.defineProperty,ec=Object.getOwnPropertyDescriptor,tc=Object.getOwnPropertyNames,rc=Object.prototype.hasOwnProperty,nc=(e,t)=>{for(var r in t)or(e,r,{get:t[r],enumerable:!0})},ic=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of tc(t))!rc.call(e,i)&&i!==r&&or(e,i,{get:()=>t[i],enumerable:!(n=ec(t,i))||n.enumerable});return e},ac=e=>ic(or({},"__esModule",{value:!0}),e),Pi={};nc(Pi,{default:()=>yc});Si.exports=ac(Pi);var ne={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]},Ii=Object.create(null);for(let e in ne)Object.hasOwn(ne,e)&&(Ii[ne[e]]=e);var W={to:{},get:{}};W.get=function(e){let t=e.slice(0,3).toLowerCase(),r,n;switch(t){case"hsl":{r=W.get.hsl(e),n="hsl";break}case"hwb":{r=W.get.hwb(e),n="hwb";break}default:{r=W.get.rgb(e),n="rgb";break}}return r?{model:n,value:r}:null};W.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+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[\s,|/]\s*([+-]?[\d.]+)(%?)\s*)?\)$/,i=/^rgba?\(\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*(?:[\s,|/]\s*([+-]?[\d.]+)(%?)\s*)?\)$/,a=/^(\w+)$/,o=[0,0,0,1],s,c,f;if(s=e.match(r)){for(f=s[2],s=s[1],c=0;c<3;c++){let d=c*2;o[c]=Number.parseInt(s.slice(d,d+2),16)}f&&(o[3]=Number.parseInt(f,16)/255)}else if(s=e.match(t)){for(s=s[1],f=s[3],c=0;c<3;c++)o[c]=Number.parseInt(s[c]+s[c],16);f&&(o[3]=Number.parseInt(f+f,16)/255)}else if(s=e.match(n)){for(c=0;c<3;c++)o[c]=Number.parseInt(s[c+1],10);s[4]&&(o[3]=s[5]?Number.parseFloat(s[4])*.01:Number.parseFloat(s[4]))}else if(s=e.match(i)){for(c=0;c<3;c++)o[c]=Math.round(Number.parseFloat(s[c+1])*2.55);s[4]&&(o[3]=s[5]?Number.parseFloat(s[4])*.01:Number.parseFloat(s[4]))}else return(s=e.match(a))?s[1]==="transparent"?[0,0,0,0]:Object.hasOwn(ne,s[1])?(o=ne[s[1]],o[3]=1,o):null:null;for(c=0;c<3;c++)o[c]=de(o[c],0,255);return o[3]=de(o[3],0,1),o};W.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*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,r=e.match(t);if(r){let n=Number.parseFloat(r[4]),i=(Number.parseFloat(r[1])%360+360)%360,a=de(Number.parseFloat(r[2]),0,100),o=de(Number.parseFloat(r[3]),0,100),s=de(Number.isNaN(n)?1:n,0,1);return[i,a,o,s]}return null};W.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*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,r=e.match(t);if(r){let n=Number.parseFloat(r[4]),i=(Number.parseFloat(r[1])%360+360)%360,a=de(Number.parseFloat(r[2]),0,100),o=de(Number.parseFloat(r[3]),0,100),s=de(Number.isNaN(n)?1:n,0,1);return[i,a,o,s]}return null};W.to.hex=function(...e){return"#"+mt(e[0])+mt(e[1])+mt(e[2])+(e[3]<1?mt(Math.round(e[3]*255)):"")};W.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]+")"};W.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]+")"};W.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]+")"};W.to.hwb=function(...e){let t="";return e.length>=4&&e[3]!==1&&(t=", "+e[3]),"hwb("+e[0]+", "+e[1]+"%, "+e[2]+"%"+t+")"};W.to.keyword=function(...e){return Ii[e.slice(0,3)]};function de(e,t,r){return Math.min(Math.max(t,e),r)}function mt(e){let t=Math.round(e).toString(16).toUpperCase();return t.length<2?"0"+t:t}var Se=W,Ni={};for(let e of Object.keys(ne))Ni[ne[e]]=e;var p={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"]}},ve=p,le=(6/29)**3;function ke(e){let t=e>.0031308?1.055*e**.4166666666666667-.055:e*12.92;return Math.min(Math.max(0,t),1)}function je(e){return e>.04045?((e+.055)/1.055)**2.4:e/12.92}for(let e of Object.keys(p)){if(!("channels"in p[e]))throw new Error("missing channels property: "+e);if(!("labels"in p[e]))throw new Error("missing channel labels property: "+e);if(p[e].labels.length!==p[e].channels)throw new Error("channel and label counts mismatch: "+e);let{channels:t,labels:r}=p[e];delete p[e].channels,delete p[e].labels,Object.defineProperty(p[e],"channels",{value:t}),Object.defineProperty(p[e],"labels",{value:r})}p.rgb.hsl=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=a-i,s,c;switch(a){case i:{s=0;break}case t:{s=(r-n)/o;break}case r:{s=2+(n-t)/o;break}case n:{s=4+(t-r)/o;break}}s=Math.min(s*60,360),s<0&&(s+=360);let f=(i+a)/2;return a===i?c=0:f<=.5?c=o/(a+i):c=o/(2-a-i),[s,c*100,f*100]};p.rgb.hsv=function(e){let t,r,n,i,a,o=e[0]/255,s=e[1]/255,c=e[2]/255,f=Math.max(o,s,c),d=f-Math.min(o,s,c),m=function(g){return(f-g)/6/d+1/2};if(d===0)i=0,a=0;else{switch(a=d/f,t=m(o),r=m(s),n=m(c),f){case o:{i=n-r;break}case s:{i=1/3+t-n;break}case c:{i=2/3+r-t;break}}i<0?i+=1:i>1&&(i-=1)}return[i*360,a*100,f*100]};p.rgb.hwb=function(e){let t=e[0],r=e[1],n=e[2],i=p.rgb.hsl(e)[0],a=1/255*Math.min(t,Math.min(r,n));return n=1-1/255*Math.max(t,Math.max(r,n)),[i,a*100,n*100]};p.rgb.oklab=function(e){let t=je(e[0]/255),r=je(e[1]/255),n=je(e[2]/255),i=Math.cbrt(.4122214708*t+.5363325363*r+.0514459929*n),a=Math.cbrt(.2119034982*t+.6806995451*r+.1073969566*n),o=Math.cbrt(.0883024619*t+.2817188376*r+.6299787005*n),s=.2104542553*i+.793617785*a-.0040720468*o,c=1.9779984951*i-2.428592205*a+.4505937099*o,f=.0259040371*i+.7827717662*a-.808675766*o;return[s*100,c*100,f*100]};p.rgb.cmyk=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,i=Math.min(1-t,1-r,1-n),a=(1-t-i)/(1-i)||0,o=(1-r-i)/(1-i)||0,s=(1-n-i)/(1-i)||0;return[a*100,o*100,s*100,i*100]};function oc(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}p.rgb.keyword=function(e){let t=Ni[e];if(t)return t;let r=Number.POSITIVE_INFINITY,n;for(let i of Object.keys(ne)){let a=ne[i],o=oc(e,a);o<r&&(r=o,n=i)}return n};p.keyword.rgb=function(e){return ne[e]};p.rgb.xyz=function(e){let t=je(e[0]/255),r=je(e[1]/255),n=je(e[2]/255),i=t*.4124564+r*.3575761+n*.1804375,a=t*.2126729+r*.7151522+n*.072175,o=t*.0193339+r*.119192+n*.9503041;return[i*100,a*100,o*100]};p.rgb.lab=function(e){let t=p.rgb.xyz(e),r=t[0],n=t[1],i=t[2];r/=95.047,n/=100,i/=108.883,r=r>le?r**(1/3):7.787*r+16/116,n=n>le?n**(1/3):7.787*n+16/116,i=i>le?i**(1/3):7.787*i+16/116;let a=116*n-16,o=500*(r-n),s=200*(n-i);return[a,o,s]};p.hsl.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,i,a;if(r===0)return a=n*255,[a,a,a];let o=n<.5?n*(1+r):n+r-n*r,s=2*n-o,c=[0,0,0];for(let f=0;f<3;f++)i=t+1/3*-(f-1),i<0&&i++,i>1&&i--,6*i<1?a=s+(o-s)*6*i:2*i<1?a=o:3*i<2?a=s+(o-s)*(2/3-i)*6:a=s,c[f]=a*255;return c};p.hsl.hsv=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,i=r,a=Math.max(n,.01);n*=2,r*=n<=1?n:2-n,i*=a<=1?a:2-a;let o=(n+r)/2,s=n===0?2*i/(a+i):2*r/(n+r);return[t,s*100,o*100]};p.hsv.rgb=function(e){let t=e[0]/60,r=e[1]/100,n=e[2]/100,i=Math.floor(t)%6,a=t-Math.floor(t),o=255*n*(1-r),s=255*n*(1-r*a),c=255*n*(1-r*(1-a));switch(n*=255,i){case 0:return[n,c,o];case 1:return[s,n,o];case 2:return[o,n,c];case 3:return[o,s,n];case 4:return[c,o,n];case 5:return[n,o,s]}};p.hsv.hsl=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,i=Math.max(n,.01),a,o;o=(2-r)*n;let s=(2-r)*i;return a=r*i,a/=s<=1?s:2-s,a=a||0,o/=2,[t,a*100,o*100]};p.hwb.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,i=r+n,a;i>1&&(r/=i,n/=i);let o=Math.floor(6*t),s=1-n;a=6*t-o,(o&1)!==0&&(a=1-a);let c=r+a*(s-r),f,d,m;switch(o){default:case 6:case 0:{f=s,d=c,m=r;break}case 1:{f=c,d=s,m=r;break}case 2:{f=r,d=s,m=c;break}case 3:{f=r,d=c,m=s;break}case 4:{f=c,d=r,m=s;break}case 5:{f=s,d=r,m=c;break}}return[f*255,d*255,m*255]};p.cmyk.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,i=e[3]/100,a=1-Math.min(1,t*(1-i)+i),o=1-Math.min(1,r*(1-i)+i),s=1-Math.min(1,n*(1-i)+i);return[a*255,o*255,s*255]};p.xyz.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,i,a,o;return i=t*3.2404542+r*-1.5371385+n*-.4985314,a=t*-.969266+r*1.8760108+n*.041556,o=t*.0556434+r*-.2040259+n*1.0572252,i=ke(i),a=ke(a),o=ke(o),[i*255,a*255,o*255]};p.xyz.lab=function(e){let t=e[0],r=e[1],n=e[2];t/=95.047,r/=100,n/=108.883,t=t>le?t**(1/3):7.787*t+16/116,r=r>le?r**(1/3):7.787*r+16/116,n=n>le?n**(1/3):7.787*n+16/116;let i=116*r-16,a=500*(t-r),o=200*(r-n);return[i,a,o]};p.xyz.oklab=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,i=Math.cbrt(.8189330101*t+.3618667424*r-.1288597137*n),a=Math.cbrt(.0329845436*t+.9293118715*r+.0361456387*n),o=Math.cbrt(.0482003018*t+.2643662691*r+.633851707*n),s=.2104542553*i+.793617785*a-.0040720468*o,c=1.9779984951*i-2.428592205*a+.4505937099*o,f=.0259040371*i+.7827717662*a-.808675766*o;return[s*100,c*100,f*100]};p.oklab.oklch=function(e){return p.lab.lch(e)};p.oklab.xyz=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,i=(.999999998*t+.396337792*r+.215803758*n)**3,a=(1.000000008*t-.105561342*r-.063854175*n)**3,o=(1.000000055*t-.089484182*r-1.291485538*n)**3,s=1.227013851*i-.55779998*a+.281256149*o,c=-.040580178*i+1.11225687*a-.071676679*o,f=-.076381285*i-.421481978*a+1.58616322*o;return[s*100,c*100,f*100]};p.oklab.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,i=(t+.3963377774*r+.2158037573*n)**3,a=(t-.1055613458*r-.0638541728*n)**3,o=(t-.0894841775*r-1.291485548*n)**3,s=ke(4.0767416621*i-3.3077115913*a+.2309699292*o),c=ke(-1.2684380046*i+2.6097574011*a-.3413193965*o),f=ke(-.0041960863*i-.7034186147*a+1.707614701*o);return[s*255,c*255,f*255]};p.oklch.oklab=function(e){return p.lch.lab(e)};p.lab.xyz=function(e){let t=e[0],r=e[1],n=e[2],i,a,o;a=(t+16)/116,i=r/500+a,o=a-n/200;let s=a**3,c=i**3,f=o**3;return a=s>le?s:(a-16/116)/7.787,i=c>le?c:(i-16/116)/7.787,o=f>le?f:(o-16/116)/7.787,i*=95.047,a*=100,o*=108.883,[i,a,o]};p.lab.lch=function(e){let t=e[0],r=e[1],n=e[2],i;i=Math.atan2(n,r)*360/2/Math.PI,i<0&&(i+=360);let o=Math.sqrt(r*r+n*n);return[t,o,i]};p.lch.lab=function(e){let t=e[0],r=e[1],i=e[2]/360*2*Math.PI,a=r*Math.cos(i),o=r*Math.sin(i);return[t,a,o]};p.rgb.ansi16=function(e,t=null){let[r,n,i]=e,a=t===null?p.rgb.hsv(e)[2]:t;if(a=Math.round(a/50),a===0)return 30;let o=30+(Math.round(i/255)<<2|Math.round(n/255)<<1|Math.round(r/255));return a===2&&(o+=60),o};p.hsv.ansi16=function(e){return p.rgb.ansi16(p.hsv.rgb(e),e[2])};p.rgb.ansi256=function(e){let t=e[0],r=e[1],n=e[2];return t>>4===r>>4&&r>>4===n>>4?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5)};p.ansi16.rgb=function(e){e=e[0];let t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];let r=(Math.trunc(e>50)+1)*.5,n=(t&1)*r*255,i=(t>>1&1)*r*255,a=(t>>2&1)*r*255;return[n,i,a]};p.ansi256.rgb=function(e){if(e=e[0],e>=232){let a=(e-232)*10+8;return[a,a,a]}e-=16;let t,r=Math.floor(e/36)/5*255,n=Math.floor((t=e%36)/6)/5*255,i=t%6/5*255;return[r,n,i]};p.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};p.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];t[0].length===3&&(r=[...r].map(s=>s+s).join(""));let n=Number.parseInt(r,16),i=n>>16&255,a=n>>8&255,o=n&255;return[i,a,o]};p.rgb.hcg=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,i=Math.max(Math.max(t,r),n),a=Math.min(Math.min(t,r),n),o=i-a,s,c=o<1?a/(1-o):0;return o<=0?s=0:i===t?s=(r-n)/o%6:i===r?s=2+(n-t)/o:s=4+(t-r)/o,s/=6,s%=1,[s*360,o*100,c*100]};p.hsl.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=r<.5?2*t*r:2*t*(1-r),i=0;return n<1&&(i=(r-.5*n)/(1-n)),[e[0],n*100,i*100]};p.hsv.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=t*r,i=0;return n<1&&(i=(r-n)/(1-n)),[e[0],n*100,i*100]};p.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 i=[0,0,0],a=t%1*6,o=a%1,s=1-o,c=0;switch(Math.floor(a)){case 0:{i[0]=1,i[1]=o,i[2]=0;break}case 1:{i[0]=s,i[1]=1,i[2]=0;break}case 2:{i[0]=0,i[1]=1,i[2]=o;break}case 3:{i[0]=0,i[1]=s,i[2]=1;break}case 4:{i[0]=o,i[1]=0,i[2]=1;break}default:i[0]=1,i[1]=0,i[2]=s}return c=(1-r)*n,[(r*i[0]+c)*255,(r*i[1]+c)*255,(r*i[2]+c)*255]};p.hcg.hsv=function(e){let t=e[1]/100,r=e[2]/100,n=t+r*(1-t),i=0;return n>0&&(i=t/n),[e[0],i*100,n*100]};p.hcg.hsl=function(e){let t=e[1]/100,n=e[2]/100*(1-t)+.5*t,i=0;return n>0&&n<.5?i=t/(2*n):n>=.5&&n<1&&(i=t/(2*(1-n))),[e[0],i*100,n*100]};p.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]};p.hwb.hcg=function(e){let t=e[1]/100,n=1-e[2]/100,i=n-t,a=0;return i<1&&(a=(n-i)/(1-i)),[e[0],i*100,a*100]};p.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};p.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};p.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};p.gray.hsl=function(e){return[0,0,e[0]]};p.gray.hsv=p.gray.hsl;p.gray.hwb=function(e){return[0,100,e[0]]};p.gray.cmyk=function(e){return[0,0,0,e[0]]};p.gray.lab=function(e){return[e[0],0,0]};p.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};p.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]};function sc(){let e={},t=Object.keys(ve);for(let{length:r}=t,n=0;n<r;n++)e[t[n]]={distance:-1,parent:null};return e}function lc(e){let t=sc(),r=[e];for(t[e].distance=0;r.length>0;){let n=r.pop(),i=Object.keys(ve[n]);for(let{length:a}=i,o=0;o<a;o++){let s=i[o],c=t[s];c.distance===-1&&(c.distance=t[n].distance+1,c.parent=n,r.unshift(s))}}return t}function cc(e,t){return function(r){return t(e(r))}}function uc(e,t){let r=[t[e].parent,e],n=ve[t[e].parent][e],i=t[e].parent;for(;t[i].parent;)r.unshift(t[i].parent),n=cc(ve[t[i].parent][i],n),i=t[i].parent;return n.conversion=r,n}function fc(e){let t=lc(e),r={},n=Object.keys(t);for(let{length:i}=n,a=0;a<i;a++){let o=n[a];t[o].parent!==null&&(r[o]=uc(o,t))}return r}var hc=fc,Ae={},dc=Object.keys(ve);function mc(e){let t=function(...r){let n=r[0];return n==null?n:(n.length>1&&(r=n),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function gc(e){let t=function(...r){let n=r[0];if(n==null)return n;n.length>1&&(r=n);let i=e(r);if(typeof i=="object")for(let{length:a}=i,o=0;o<a;o++)i[o]=Math.round(i[o]);return i};return"conversion"in e&&(t.conversion=e.conversion),t}for(let e of dc){Ae[e]={},Object.defineProperty(Ae[e],"channels",{value:ve[e].channels}),Object.defineProperty(Ae[e],"labels",{value:ve[e].labels});let t=hc(e),r=Object.keys(t);for(let n of r){let i=t[n];Ae[e][n]=gc(i),Ae[e][n].raw=mc(i)}}var V=Ae,Ri=["keyword","gray","hex"],nr={};for(let e of Object.keys(V))nr[[...V[e].labels].sort().join("")]=e;var ir={};function O(e,t){if(!(this instanceof O))return new O(e,t);if(t&&t in Ri&&(t=null),t&&!(t in V))throw new 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 O)this.model=e.model,this.color=[...e.color],this.valpha=e.valpha;else if(typeof e=="string"){let i=Se.get(e);if(i===null)throw new Error("Unable to parse color from string: "+e);this.model=i.model,n=V[this.model].channels,this.color=i.value.slice(0,n),this.valpha=typeof i.value[n]=="number"?i.value[n]:1}else if(e.length>0){this.model=t||"rgb",n=V[this.model].channels;let i=Array.prototype.slice.call(e,0,n);this.color=ar(i,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 i=Object.keys(e);"alpha"in e&&(i.splice(i.indexOf("alpha"),1),this.valpha=typeof e.alpha=="number"?e.alpha:0);let a=i.sort().join("");if(!(a in nr))throw new Error("Unable to parse color from object: "+JSON.stringify(e));this.model=nr[a];let{labels:o}=V[this.model],s=[];for(r=0;r<o.length;r++)s.push(e[o[r]]);this.color=ar(s)}if(ir[this.model])for(n=V[this.model].channels,r=0;r<n;r++){let i=ir[this.model][r];i&&(this.color[r]=i(this.color[r]))}this.valpha=Math.max(0,Math.min(1,this.valpha)),Object.freeze&&Object.freeze(this)}O.prototype={toString(){return this.string()},toJSON(){return this[this.model]()},string(e){let t=this.model in Se.to?this:this.rgb();t=t.round(typeof e=="number"?e:1);let r=t.valpha===1?t.color:[...t.color,this.valpha];return Se.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 Se.to.rgb.percent(...r)},array(){return this.valpha===1?[...this.color]:[...this.color,this.valpha]},object(){let e={},{channels:t}=V[this.model],{labels:r}=V[this.model];for(let n=0;n<t;n++)e[r[n]]=this.color[n];return this.valpha!==1&&(e.alpha=this.valpha),e},unitArray(){let e=this.rgb().color;return e[0]/=255,e[1]/=255,e[2]/=255,this.valpha!==1&&e.push(this.valpha),e},unitObject(){let e=this.rgb().object();return e.r/=255,e.g/=255,e.b/=255,this.valpha!==1&&(e.alpha=this.valpha),e},round(e){return e=Math.max(e||0,0),new O([...this.color.map(pc(e)),this.valpha],this.model)},alpha(e){return e!==void 0?new O([...this.color,Math.max(0,Math.min(1,e))],this.model):this.valpha},red:B("rgb",0,q(255)),green:B("rgb",1,q(255)),blue:B("rgb",2,q(255)),hue:B(["hsl","hsv","hsl","hwb","hcg"],0,e=>(e%360+360)%360),saturationl:B("hsl",1,q(100)),lightness:B("hsl",2,q(100)),saturationv:B("hsv",1,q(100)),value:B("hsv",2,q(100)),chroma:B("hcg",1,q(100)),gray:B("hcg",2,q(100)),white:B("hwb",1,q(100)),wblack:B("hwb",2,q(100)),cyan:B("cmyk",0,q(100)),magenta:B("cmyk",1,q(100)),yellow:B("cmyk",2,q(100)),black:B("cmyk",3,q(100)),x:B("xyz",0,q(95.047)),y:B("xyz",1,q(100)),z:B("xyz",2,q(108.833)),l:B("lab",0,q(100)),a:B("lab",1),b:B("lab",2),keyword(e){return e!==void 0?new O(e):V[this.model].keyword(this.color)},hex(e){return e!==void 0?new O(e):Se.to.hex(...this.rgb().round().color)},hexa(e){if(e!==void 0)return new O(e);let t=this.rgb().round().color,r=Math.round(this.valpha*255).toString(16).toUpperCase();return r.length===1&&(r="0"+r),Se.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 i=n/255;t[r]=i<=.04045?i/12.92:((i+.055)/1.055)**2.4}return .2126*t[0]+.7152*t[1]+.0722*t[2]},contrast(e){let t=this.luminosity(),r=e.luminosity();return t>r?(t+.05)/(r+.05):(r+.05)/(t+.05)},level(e){let t=this.contrast(e);return t>=7?"AAA":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]*.3+e[1]*.59+e[2]*.11;return O.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 new Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof e);let r=e.rgb(),n=this.rgb(),i=t===void 0?.5:t,a=2*i-1,o=r.alpha()-n.alpha(),s=((a*o===-1?a:(a+o)/(1+a*o))+1)/2,c=1-s;return O.rgb(s*r.red()+c*n.red(),s*r.green()+c*n.green(),s*r.blue()+c*n.blue(),r.alpha()*i+n.alpha()*(1-i))}};for(let e of Object.keys(V)){if(Ri.includes(e))continue;let{channels:t}=V[e];O.prototype[e]=function(...r){return this.model===e?new O(this):r.length>0?new O(r,e):new O([...wc(V[this.model][e].raw(this.color)),this.valpha],e)},O[e]=function(...r){let n=r[0];return typeof n=="number"&&(n=ar(r,t)),new O(n,e)}}function bc(e,t){return Number(e.toFixed(t))}function pc(e){return function(t){return bc(t,e)}}function B(e,t,r){e=Array.isArray(e)?e:[e];for(let n of e)(ir[n]||=[])[t]=r;return e=e[0],function(n){let i;return n!==void 0?(r&&(n=r(n)),i=this[e](),i.color[t]=n,i):(i=this[e]().color[t],r&&(i=r(i)),i)}}function q(e){return function(t){return Math.max(0,Math.min(e,t))}}function wc(e){return Array.isArray(e)?e:[e]}function ar(e,t){for(let r=0;r<t;r++)typeof e[r]!="number"&&(e[r]=0);return e}var yc=O});var ji=S((Rf,ki)=>{ki.exports=Ai().default});var Ti=S((Sf,Li)=>{var xc=ji(),ce=J(),Mi={multiband:"multiband","b-w":"b-w",bw:"b-w",cmyk:"cmyk",srgb:"srgb"};function vc(e){return this._setBackgroundColourOption("tint",e),this}function Ec(e){return this.options.greyscale=ce.bool(e)?e:!0,this}function Pc(e){return this.greyscale(e)}function Ic(e){if(!ce.string(e))throw ce.invalidParameterError("colourspace","string",e);return this.options.colourspacePipeline=e,this}function Nc(e){return this.pipelineColourspace(e)}function Rc(e){if(!ce.string(e))throw ce.invalidParameterError("colourspace","string",e);return this.options.colourspace=e,this}function Sc(e){return this.toColourspace(e)}function $i(e){if(ce.object(e)||ce.string(e)&&e.length>=3&&e.length<=200){let t=xc(e);return[t.red(),t.green(),t.blue(),Math.round(t.alpha()*255)]}else throw ce.invalidParameterError("background","object or string",e)}function Ac(e,t){ce.defined(t)&&(this.options[e]=$i(t))}Li.exports=e=>{Object.assign(e.prototype,{tint:vc,greyscale:Ec,grayscale:Pc,pipelineColourspace:Ic,pipelineColorspace:Nc,toColourspace:Rc,toColorspace:Sc,_getBackgroundColourOption:$i,_setBackgroundColourOption:Ac}),e.colourspace=Mi,e.colorspace=Mi}});var Bi=S((Af,Ci)=>{var ie=J(),kc={and:"and",or:"or",eor:"eor"};function jc(){return this.options.removeAlpha=!0,this}function Mc(e){if(ie.defined(e))if(ie.number(e)&&ie.inRange(e,0,1))this.options.ensureAlpha=e;else throw ie.invalidParameterError("alpha","number between 0 and 1",e);else this.options.ensureAlpha=1;return this}function $c(e){let t={red:0,green:1,blue:2,alpha:3};if(Object.keys(t).includes(e)&&(e=t[e]),ie.integer(e)&&ie.inRange(e,0,4))this.options.extractChannel=e;else throw ie.invalidParameterError("channel","integer or one of: red, green, blue, alpha",e);return this}function Lc(e,t){return Array.isArray(e)?e.forEach(function(r){this.options.joinChannelIn.push(this._createInputDescriptor(r,t))},this):this.options.joinChannelIn.push(this._createInputDescriptor(e,t)),this}function Tc(e){if(ie.string(e)&&ie.inArray(e,["and","or","eor"]))this.options.bandBoolOp=e;else throw ie.invalidParameterError("boolOp","one of: and, or, eor",e);return this}Ci.exports=e=>{Object.assign(e.prototype,{removeAlpha:jc,ensureAlpha:Mc,extractChannel:$c,joinChannel:Lc,bandbool:Tc}),e.bool=kc}});var Di=S((kf,Oi)=>{var sr=require("node:path"),l=J(),Me=He(),Fi=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"]]),Cc=/\.(jp[2x]|j2[kc])$/i,_i=()=>new Error("JP2 output requires libvips with support for OpenJPEG"),qi=e=>1<<31-Math.clz32(Math.ceil(Math.log2(e)));function Bc(e,t){let r;if(l.string(e)?l.string(this.options.input.file)&&sr.resolve(this.options.input.file)===sr.resolve(e)?r=new Error("Cannot use same file for input and output"):Cc.test(sr.extname(e))&&!this.constructor.format.jp2k.output.file&&(r=_i()):r=new Error("Missing output file path"),r)if(l.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 Fc(e,t){l.object(e)?this._setBooleanOption("resolveWithObject",e.resolveWithObject):this.options.resolveWithObject&&(this.options.resolveWithObject=!1),this.options.fileOut="";let r=Error();return this._pipeline(l.fn(e)?e:t,r)}function _c(){return this.options.keepMetadata|=1,this}function qc(e){if(l.object(e))for(let[t,r]of Object.entries(e))if(l.object(r))for(let[n,i]of Object.entries(r))if(l.string(i))this.options.withExif[`exif-${t.toLowerCase()}-${n}`]=i;else throw l.invalidParameterError(`${t}.${n}`,"string",i);else throw l.invalidParameterError(t,"object",r);else throw l.invalidParameterError("exif","object",e);return this.options.withExifMerge=!1,this.keepExif()}function Oc(e){return this.withExif(e),this.options.withExifMerge=!0,this}function Dc(){return this.options.keepMetadata|=8,this}function Uc(e,t){if(l.string(e))this.options.withIccProfile=e;else throw l.invalidParameterError("icc","string",e);if(this.keepIccProfile(),l.object(t)&&l.defined(t.attach))if(l.bool(t.attach))t.attach||(this.options.keepMetadata&=-9);else throw l.invalidParameterError("attach","boolean",t.attach);return this}function zc(){return this.options.keepMetadata|=2,this}function Hc(e){if(l.string(e)&&e.length>0)this.options.withXmp=e,this.options.keepMetadata|=2;else throw l.invalidParameterError("xmp","non-empty string",e);return this}function Gc(){return this.options.keepMetadata=31,this}function Wc(e){if(this.keepMetadata(),this.withIccProfile("srgb"),l.object(e)){if(l.defined(e.orientation))if(l.integer(e.orientation)&&l.inRange(e.orientation,1,8))this.options.withMetadataOrientation=e.orientation;else throw l.invalidParameterError("orientation","integer between 1 and 8",e.orientation);if(l.defined(e.density))if(l.number(e.density)&&e.density>0)this.options.withMetadataDensity=e.density;else throw l.invalidParameterError("density","positive number",e.density);l.defined(e.icc)&&this.withIccProfile(e.icc),l.defined(e.exif)&&this.withExifMerge(e.exif)}return this}function Vc(e,t){let r=Fi.get((l.object(e)&&l.string(e.id)?e.id:e).toLowerCase());if(!r)throw l.invalidParameterError("format",`one of: ${[...Fi.keys()].join(", ")}`,e);return this[r](t)}function Xc(e){if(l.object(e)){if(l.defined(e.quality))if(l.integer(e.quality)&&l.inRange(e.quality,1,100))this.options.jpegQuality=e.quality;else throw l.invalidParameterError("quality","integer between 1 and 100",e.quality);if(l.defined(e.progressive)&&this._setBooleanOption("jpegProgressive",e.progressive),l.defined(e.chromaSubsampling))if(l.string(e.chromaSubsampling)&&l.inArray(e.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jpegChromaSubsampling=e.chromaSubsampling;else throw l.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",e.chromaSubsampling);let t=l.bool(e.optimizeCoding)?e.optimizeCoding:e.optimiseCoding;if(l.defined(t)&&this._setBooleanOption("jpegOptimiseCoding",t),l.defined(e.mozjpeg))if(l.bool(e.mozjpeg))e.mozjpeg&&(this.options.jpegTrellisQuantisation=!0,this.options.jpegOvershootDeringing=!0,this.options.jpegOptimiseScans=!0,this.options.jpegProgressive=!0,this.options.jpegQuantisationTable=3);else throw l.invalidParameterError("mozjpeg","boolean",e.mozjpeg);let r=l.bool(e.trellisQuantization)?e.trellisQuantization:e.trellisQuantisation;l.defined(r)&&this._setBooleanOption("jpegTrellisQuantisation",r),l.defined(e.overshootDeringing)&&this._setBooleanOption("jpegOvershootDeringing",e.overshootDeringing);let n=l.bool(e.optimizeScans)?e.optimizeScans:e.optimiseScans;l.defined(n)&&(this._setBooleanOption("jpegOptimiseScans",n),n&&(this.options.jpegProgressive=!0));let i=l.number(e.quantizationTable)?e.quantizationTable:e.quantisationTable;if(l.defined(i))if(l.integer(i)&&l.inRange(i,0,8))this.options.jpegQuantisationTable=i;else throw l.invalidParameterError("quantisationTable","integer between 0 and 8",i)}return this._updateFormatOut("jpeg",e)}function Kc(e){if(l.object(e)){if(l.defined(e.progressive)&&this._setBooleanOption("pngProgressive",e.progressive),l.defined(e.compressionLevel))if(l.integer(e.compressionLevel)&&l.inRange(e.compressionLevel,0,9))this.options.pngCompressionLevel=e.compressionLevel;else throw l.invalidParameterError("compressionLevel","integer between 0 and 9",e.compressionLevel);l.defined(e.adaptiveFiltering)&&this._setBooleanOption("pngAdaptiveFiltering",e.adaptiveFiltering);let t=e.colours||e.colors;if(l.defined(t))if(l.integer(t)&&l.inRange(t,2,256))this.options.pngBitdepth=qi(t);else throw l.invalidParameterError("colours","integer between 2 and 256",t);if(l.defined(e.palette)?this._setBooleanOption("pngPalette",e.palette):[e.quality,e.effort,e.colours,e.colors,e.dither].some(l.defined)&&this._setBooleanOption("pngPalette",!0),this.options.pngPalette){if(l.defined(e.quality))if(l.integer(e.quality)&&l.inRange(e.quality,0,100))this.options.pngQuality=e.quality;else throw l.invalidParameterError("quality","integer between 0 and 100",e.quality);if(l.defined(e.effort))if(l.integer(e.effort)&&l.inRange(e.effort,1,10))this.options.pngEffort=e.effort;else throw l.invalidParameterError("effort","integer between 1 and 10",e.effort);if(l.defined(e.dither))if(l.number(e.dither)&&l.inRange(e.dither,0,1))this.options.pngDither=e.dither;else throw l.invalidParameterError("dither","number between 0.0 and 1.0",e.dither)}}return this._updateFormatOut("png",e)}function Qc(e){if(l.object(e)){if(l.defined(e.quality))if(l.integer(e.quality)&&l.inRange(e.quality,1,100))this.options.webpQuality=e.quality;else throw l.invalidParameterError("quality","integer between 1 and 100",e.quality);if(l.defined(e.alphaQuality))if(l.integer(e.alphaQuality)&&l.inRange(e.alphaQuality,0,100))this.options.webpAlphaQuality=e.alphaQuality;else throw l.invalidParameterError("alphaQuality","integer between 0 and 100",e.alphaQuality);if(l.defined(e.lossless)&&this._setBooleanOption("webpLossless",e.lossless),l.defined(e.nearLossless)&&this._setBooleanOption("webpNearLossless",e.nearLossless),l.defined(e.smartSubsample)&&this._setBooleanOption("webpSmartSubsample",e.smartSubsample),l.defined(e.smartDeblock)&&this._setBooleanOption("webpSmartDeblock",e.smartDeblock),l.defined(e.preset))if(l.string(e.preset)&&l.inArray(e.preset,["default","photo","picture","drawing","icon","text"]))this.options.webpPreset=e.preset;else throw l.invalidParameterError("preset","one of: default, photo, picture, drawing, icon, text",e.preset);if(l.defined(e.effort))if(l.integer(e.effort)&&l.inRange(e.effort,0,6))this.options.webpEffort=e.effort;else throw l.invalidParameterError("effort","integer between 0 and 6",e.effort);l.defined(e.minSize)&&this._setBooleanOption("webpMinSize",e.minSize),l.defined(e.mixed)&&this._setBooleanOption("webpMixed",e.mixed)}return lr(e,this.options),this._updateFormatOut("webp",e)}function Yc(e){if(l.object(e)){l.defined(e.reuse)&&this._setBooleanOption("gifReuse",e.reuse),l.defined(e.progressive)&&this._setBooleanOption("gifProgressive",e.progressive);let t=e.colours||e.colors;if(l.defined(t))if(l.integer(t)&&l.inRange(t,2,256))this.options.gifBitdepth=qi(t);else throw l.invalidParameterError("colours","integer between 2 and 256",t);if(l.defined(e.effort))if(l.number(e.effort)&&l.inRange(e.effort,1,10))this.options.gifEffort=e.effort;else throw l.invalidParameterError("effort","integer between 1 and 10",e.effort);if(l.defined(e.dither))if(l.number(e.dither)&&l.inRange(e.dither,0,1))this.options.gifDither=e.dither;else throw l.invalidParameterError("dither","number between 0.0 and 1.0",e.dither);if(l.defined(e.interFrameMaxError))if(l.number(e.interFrameMaxError)&&l.inRange(e.interFrameMaxError,0,32))this.options.gifInterFrameMaxError=e.interFrameMaxError;else throw l.invalidParameterError("interFrameMaxError","number between 0.0 and 32.0",e.interFrameMaxError);if(l.defined(e.interPaletteMaxError))if(l.number(e.interPaletteMaxError)&&l.inRange(e.interPaletteMaxError,0,256))this.options.gifInterPaletteMaxError=e.interPaletteMaxError;else throw l.invalidParameterError("interPaletteMaxError","number between 0.0 and 256.0",e.interPaletteMaxError);if(l.defined(e.keepDuplicateFrames))if(l.bool(e.keepDuplicateFrames))this._setBooleanOption("gifKeepDuplicateFrames",e.keepDuplicateFrames);else throw l.invalidParameterError("keepDuplicateFrames","boolean",e.keepDuplicateFrames)}return lr(e,this.options),this._updateFormatOut("gif",e)}function Jc(e){if(!this.constructor.format.jp2k.output.buffer)throw _i();if(l.object(e)){if(l.defined(e.quality))if(l.integer(e.quality)&&l.inRange(e.quality,1,100))this.options.jp2Quality=e.quality;else throw l.invalidParameterError("quality","integer between 1 and 100",e.quality);if(l.defined(e.lossless))if(l.bool(e.lossless))this.options.jp2Lossless=e.lossless;else throw l.invalidParameterError("lossless","boolean",e.lossless);if(l.defined(e.tileWidth))if(l.integer(e.tileWidth)&&l.inRange(e.tileWidth,1,32768))this.options.jp2TileWidth=e.tileWidth;else throw l.invalidParameterError("tileWidth","integer between 1 and 32768",e.tileWidth);if(l.defined(e.tileHeight))if(l.integer(e.tileHeight)&&l.inRange(e.tileHeight,1,32768))this.options.jp2TileHeight=e.tileHeight;else throw l.invalidParameterError("tileHeight","integer between 1 and 32768",e.tileHeight);if(l.defined(e.chromaSubsampling))if(l.string(e.chromaSubsampling)&&l.inArray(e.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jp2ChromaSubsampling=e.chromaSubsampling;else throw l.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",e.chromaSubsampling)}return this._updateFormatOut("jp2",e)}function lr(e,t){if(l.object(e)&&l.defined(e.loop))if(l.integer(e.loop)&&l.inRange(e.loop,0,65535))t.loop=e.loop;else throw l.invalidParameterError("loop","integer between 0 and 65535",e.loop);if(l.object(e)&&l.defined(e.delay))if(l.integer(e.delay)&&l.inRange(e.delay,0,65535))t.delay=[e.delay];else if(Array.isArray(e.delay)&&e.delay.every(l.integer)&&e.delay.every(r=>l.inRange(r,0,65535)))t.delay=e.delay;else throw l.invalidParameterError("delay","integer or an array of integers between 0 and 65535",e.delay)}function Zc(e){if(l.object(e)){if(l.defined(e.quality))if(l.integer(e.quality)&&l.inRange(e.quality,1,100))this.options.tiffQuality=e.quality;else throw l.invalidParameterError("quality","integer between 1 and 100",e.quality);if(l.defined(e.bitdepth))if(l.integer(e.bitdepth)&&l.inArray(e.bitdepth,[1,2,4,8]))this.options.tiffBitdepth=e.bitdepth;else throw l.invalidParameterError("bitdepth","1, 2, 4 or 8",e.bitdepth);if(l.defined(e.tile)&&this._setBooleanOption("tiffTile",e.tile),l.defined(e.tileWidth))if(l.integer(e.tileWidth)&&e.tileWidth>0)this.options.tiffTileWidth=e.tileWidth;else throw l.invalidParameterError("tileWidth","integer greater than zero",e.tileWidth);if(l.defined(e.tileHeight))if(l.integer(e.tileHeight)&&e.tileHeight>0)this.options.tiffTileHeight=e.tileHeight;else throw l.invalidParameterError("tileHeight","integer greater than zero",e.tileHeight);if(l.defined(e.miniswhite)&&this._setBooleanOption("tiffMiniswhite",e.miniswhite),l.defined(e.pyramid)&&this._setBooleanOption("tiffPyramid",e.pyramid),l.defined(e.xres))if(l.number(e.xres)&&e.xres>0)this.options.tiffXres=e.xres;else throw l.invalidParameterError("xres","number greater than zero",e.xres);if(l.defined(e.yres))if(l.number(e.yres)&&e.yres>0)this.options.tiffYres=e.yres;else throw l.invalidParameterError("yres","number greater than zero",e.yres);if(l.defined(e.compression))if(l.string(e.compression)&&l.inArray(e.compression,["none","jpeg","deflate","packbits","ccittfax4","lzw","webp","zstd","jp2k"]))this.options.tiffCompression=e.compression;else throw l.invalidParameterError("compression","one of: none, jpeg, deflate, packbits, ccittfax4, lzw, webp, zstd, jp2k",e.compression);if(l.defined(e.bigtiff)&&this._setBooleanOption("tiffBigtiff",e.bigtiff),l.defined(e.predictor))if(l.string(e.predictor)&&l.inArray(e.predictor,["none","horizontal","float"]))this.options.tiffPredictor=e.predictor;else throw l.invalidParameterError("predictor","one of: none, horizontal, float",e.predictor);if(l.defined(e.resolutionUnit))if(l.string(e.resolutionUnit)&&l.inArray(e.resolutionUnit,["inch","cm"]))this.options.tiffResolutionUnit=e.resolutionUnit;else throw l.invalidParameterError("resolutionUnit","one of: inch, cm",e.resolutionUnit)}return this._updateFormatOut("tiff",e)}function eu(e){return this.heif({...e,compression:"av1"})}function tu(e){if(l.object(e)){if(l.string(e.compression)&&l.inArray(e.compression,["av1","hevc"]))this.options.heifCompression=e.compression;else throw l.invalidParameterError("compression","one of: av1, hevc",e.compression);if(l.defined(e.quality))if(l.integer(e.quality)&&l.inRange(e.quality,1,100))this.options.heifQuality=e.quality;else throw l.invalidParameterError("quality","integer between 1 and 100",e.quality);if(l.defined(e.lossless))if(l.bool(e.lossless))this.options.heifLossless=e.lossless;else throw l.invalidParameterError("lossless","boolean",e.lossless);if(l.defined(e.effort))if(l.integer(e.effort)&&l.inRange(e.effort,0,9))this.options.heifEffort=e.effort;else throw l.invalidParameterError("effort","integer between 0 and 9",e.effort);if(l.defined(e.chromaSubsampling))if(l.string(e.chromaSubsampling)&&l.inArray(e.chromaSubsampling,["4:2:0","4:4:4"]))this.options.heifChromaSubsampling=e.chromaSubsampling;else throw l.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",e.chromaSubsampling);if(l.defined(e.bitdepth))if(l.integer(e.bitdepth)&&l.inArray(e.bitdepth,[8,10,12])){if(e.bitdepth!==8&&this.constructor.versions.heif)throw l.invalidParameterError("bitdepth when using prebuilt binaries",8,e.bitdepth);this.options.heifBitdepth=e.bitdepth}else throw l.invalidParameterError("bitdepth","8, 10 or 12",e.bitdepth)}else throw l.invalidParameterError("options","Object",e);return this._updateFormatOut("heif",e)}function ru(e){if(l.object(e)){if(l.defined(e.quality))if(l.integer(e.quality)&&l.inRange(e.quality,1,100))this.options.jxlDistance=e.quality>=30?.1+(100-e.quality)*.09:53/3e3*e.quality*e.quality-23/20*e.quality+25;else throw l.invalidParameterError("quality","integer between 1 and 100",e.quality);else if(l.defined(e.distance))if(l.number(e.distance)&&l.inRange(e.distance,0,15))this.options.jxlDistance=e.distance;else throw l.invalidParameterError("distance","number between 0.0 and 15.0",e.distance);if(l.defined(e.decodingTier))if(l.integer(e.decodingTier)&&l.inRange(e.decodingTier,0,4))this.options.jxlDecodingTier=e.decodingTier;else throw l.invalidParameterError("decodingTier","integer between 0 and 4",e.decodingTier);if(l.defined(e.lossless))if(l.bool(e.lossless))this.options.jxlLossless=e.lossless;else throw l.invalidParameterError("lossless","boolean",e.lossless);if(l.defined(e.effort))if(l.integer(e.effort)&&l.inRange(e.effort,1,9))this.options.jxlEffort=e.effort;else throw l.invalidParameterError("effort","integer between 1 and 9",e.effort)}return lr(e,this.options),this._updateFormatOut("jxl",e)}function nu(e){if(l.object(e)&&l.defined(e.depth))if(l.string(e.depth)&&l.inArray(e.depth,["char","uchar","short","ushort","int","uint","float","complex","double","dpcomplex"]))this.options.rawDepth=e.depth;else throw l.invalidParameterError("depth","one of: char, uchar, short, ushort, int, uint, float, complex, double, dpcomplex",e.depth);return this._updateFormatOut("raw")}function iu(e){if(l.object(e)){if(l.defined(e.size))if(l.integer(e.size)&&l.inRange(e.size,1,8192))this.options.tileSize=e.size;else throw l.invalidParameterError("size","integer between 1 and 8192",e.size);if(l.defined(e.overlap))if(l.integer(e.overlap)&&l.inRange(e.overlap,0,8192)){if(e.overlap>this.options.tileSize)throw l.invalidParameterError("overlap",`<= size (${this.options.tileSize})`,e.overlap);this.options.tileOverlap=e.overlap}else throw l.invalidParameterError("overlap","integer between 0 and 8192",e.overlap);if(l.defined(e.container))if(l.string(e.container)&&l.inArray(e.container,["fs","zip"]))this.options.tileContainer=e.container;else throw l.invalidParameterError("container","one of: fs, zip",e.container);if(l.defined(e.layout))if(l.string(e.layout)&&l.inArray(e.layout,["dz","google","iiif","iiif3","zoomify"]))this.options.tileLayout=e.layout;else throw l.invalidParameterError("layout","one of: dz, google, iiif, iiif3, zoomify",e.layout);if(l.defined(e.angle))if(l.integer(e.angle)&&!(e.angle%90))this.options.tileAngle=e.angle;else throw l.invalidParameterError("angle","positive/negative multiple of 90",e.angle);if(this._setBackgroundColourOption("tileBackground",e.background),l.defined(e.depth))if(l.string(e.depth)&&l.inArray(e.depth,["onepixel","onetile","one"]))this.options.tileDepth=e.depth;else throw l.invalidParameterError("depth","one of: onepixel, onetile, one",e.depth);if(l.defined(e.skipBlanks))if(l.integer(e.skipBlanks)&&l.inRange(e.skipBlanks,-1,65535))this.options.tileSkipBlanks=e.skipBlanks;else throw l.invalidParameterError("skipBlanks","integer between -1 and 255/65535",e.skipBlanks);else l.defined(e.layout)&&e.layout==="google"&&(this.options.tileSkipBlanks=5);let t=l.bool(e.center)?e.center:e.centre;if(l.defined(t)&&this._setBooleanOption("tileCentre",t),l.defined(e.id))if(l.string(e.id))this.options.tileId=e.id;else throw l.invalidParameterError("id","string",e.id);if(l.defined(e.basename))if(l.string(e.basename))this.options.tileBasename=e.basename;else throw l.invalidParameterError("basename","string",e.basename)}if(l.inArray(this.options.formatOut,["jpeg","png","webp"]))this.options.tileFormat=this.options.formatOut;else if(this.options.formatOut!=="input")throw l.invalidParameterError("format","one of: jpeg, png, webp",this.options.formatOut);return this._updateFormatOut("dz")}function au(e){if(!l.plainObject(e))throw l.invalidParameterError("options","object",e);if(l.integer(e.seconds)&&l.inRange(e.seconds,0,3600))this.options.timeoutSeconds=e.seconds;else throw l.invalidParameterError("seconds","integer between 0 and 3600",e.seconds);return this}function ou(e,t){return l.object(t)&&t.force===!1||(this.options.formatOut=e),this}function su(e,t){if(l.bool(t))this.options[e]=t;else throw l.invalidParameterError(e,"boolean",t)}function lu(){if(!this.options.streamOut){this.options.streamOut=!0;let e=Error();this._pipeline(void 0,e)}}function cu(e,t){return typeof e=="function"?(this._isStreamInput()?this.on("finish",()=>{this._flattenBufferIn(),Me.pipeline(this.options,(r,n,i)=>{r?e(l.nativeError(r,t)):e(null,n,i)})}):Me.pipeline(this.options,(r,n,i)=>{r?e(l.nativeError(r,t)):e(null,n,i)}),this):this.options.streamOut?(this._isStreamInput()?(this.once("finish",()=>{this._flattenBufferIn(),Me.pipeline(this.options,(r,n,i)=>{r?this.emit("error",l.nativeError(r,t)):(this.emit("info",i),this.push(n)),this.push(null),this.on("end",()=>this.emit("close"))})}),this.streamInFinished&&this.emit("finish")):Me.pipeline(this.options,(r,n,i)=>{r?this.emit("error",l.nativeError(r,t)):(this.emit("info",i),this.push(n)),this.push(null),this.on("end",()=>this.emit("close"))}),this):this._isStreamInput()?new Promise((r,n)=>{this.once("finish",()=>{this._flattenBufferIn(),Me.pipeline(this.options,(i,a,o)=>{i?n(l.nativeError(i,t)):this.options.resolveWithObject?r({data:a,info:o}):r(a)})})}):new Promise((r,n)=>{Me.pipeline(this.options,(i,a,o)=>{i?n(l.nativeError(i,t)):this.options.resolveWithObject?r({data:a,info:o}):r(a)})})}Oi.exports=e=>{Object.assign(e.prototype,{toFile:Bc,toBuffer:Fc,keepExif:_c,withExif:qc,withExifMerge:Oc,keepIccProfile:Dc,withIccProfile:Uc,keepXmp:zc,withXmp:Hc,keepMetadata:Gc,withMetadata:Wc,toFormat:Vc,jpeg:Xc,jp2:Jc,png:Kc,webp:Qc,tiff:Zc,avif:eu,heif:tu,jxl:ru,gif:Yc,raw:nu,tile:iu,timeout:au,_updateFormatOut:ou,_setBooleanOption:su,_read:lu,_pipeline:cu})}});var Gi=S((jf,Hi)=>{var uu=require("node:events"),gt=rt(),Q=J(),{runtimePlatformArch:fu}=Yt(),G=He(),Ui=fu(),cr=G.libvipsVersion(),me=G.format();me.heif.output.alias=["avif","heic"];me.jpeg.output.alias=["jpe","jpg"];me.tiff.output.alias=["tif"];me.jp2k.output.alias=["j2c","j2k","jp2","jpx"];var hu={nearest:"nearest",bilinear:"bilinear",bicubic:"bicubic",locallyBoundedBicubic:"lbb",nohalo:"nohalo",vertexSplitQuadraticBasisSpline:"vsqbs"},$e={vips:cr.semver};if(!cr.isGlobal)if(cr.isWasm)try{$e=require("@img/sharp-wasm32/versions")}catch{}else try{$e=require(`@img/sharp-${Ui}/versions`)}catch{try{$e=require(`@img/sharp-libvips-${Ui}/versions`)}catch{}}$e.sharp=Kt().version;$e.heif&&me.heif&&(me.heif.input.fileSuffix=[".avif"],me.heif.output.alias=["avif"]);function zi(e){return Q.bool(e)?e?G.cache(50,20,100):G.cache(0,0,0):Q.object(e)?G.cache(e.memory,e.files,e.items):G.cache()}zi(!0);function du(e){return G.concurrency(Q.integer(e)?e:null)}gt.familySync()===gt.GLIBC&&!G._isUsingJemalloc()?G.concurrency(1):gt.familySync()===gt.MUSL&&G.concurrency()===1024&&G.concurrency(require("node:os").availableParallelism());var mu=new uu.EventEmitter;function gu(){return G.counters()}function bu(e){return G.simd(Q.bool(e)?e:null)}function pu(e){if(Q.object(e))if(Array.isArray(e.operation)&&e.operation.every(Q.string))G.block(e.operation,!0);else throw Q.invalidParameterError("operation","Array<string>",e.operation);else throw Q.invalidParameterError("options","object",e)}function wu(e){if(Q.object(e))if(Array.isArray(e.operation)&&e.operation.every(Q.string))G.block(e.operation,!1);else throw Q.invalidParameterError("operation","Array<string>",e.operation);else throw Q.invalidParameterError("options","object",e)}Hi.exports=e=>{e.cache=zi,e.concurrency=du,e.counters=gu,e.simd=bu,e.format=me,e.interpolators=hu,e.versions=$e,e.queue=mu,e.block=pu,e.unblock=wu}});var Vi=S((Mf,Wi)=>{var ue=oi();ci()(ue);gi()(ue);pi()(ue);Ei()(ue);Ti()(ue);Bi()(ue);Di()(ue);Gi()(ue);Wi.exports=ue});var qu={};Qa(qu,{DEFAULT_IMAGE_KEY:()=>X,ImageBuffer:()=>_,Pipeline:()=>_e,SeededRandom:()=>be,buildBoxKernel:()=>Ma,buildGaussianKernel:()=>wr,colorDistance:()=>Ke,createAlphaSelector:()=>oa,createBrightnessNode:()=>va,createCheckerboardNode:()=>Sa,createCircleNode:()=>ka,createCircleSelector:()=>pr,createContrastNode:()=>Ea,createConvolutionNode:()=>We,createEdgeDetectNode:()=>Ta,createExamplePipeline:()=>qa,createFillNode:()=>fa,createFractalNoiseNode:()=>ma,createGammaNode:()=>xa,createGaussianBlurNode:()=>$a,createGaussianNoiseNode:()=>Na,createGrayscaleNode:()=>ya,createImageNode:()=>j,createInvertNode:()=>wa,createLumaSelector:()=>aa,createMapNode:()=>oe,createMaskMapNode:()=>ca,createMaskedNode:()=>la,createNoiseNode:()=>Pt,createPaletteMapNode:()=>ja,createParamNode:()=>sa,createPerlinNoiseNode:()=>ga,createPixelNode:()=>mr,createRandom:()=>Je,createRandomFillNode:()=>Ia,createRectNode:()=>Aa,createRectSelector:()=>br,createResizeNode:()=>Ca,createRidgedNoiseNode:()=>pa,createSaltPepperNoiseNode:()=>Ra,createSelectionCropNode:()=>ua,createSharpenNode:()=>La,createTextNode:()=>Ba,createThresholdNode:()=>Pa,createTurbulenceNoiseNode:()=>ba,createValueNoiseNode:()=>ha,createVoronoiNoiseNode:()=>da,defineNode:()=>na,getImage:()=>vt,hexToRgba:()=>jt,hslaToRgba:()=>$t,hsvaToRgba:()=>Mt,imageToBuffer:()=>pt,loadImage:()=>Le,mergeNodeState:()=>Et,node:()=>ia,pipeline:()=>Oa,renderText:()=>wt,resizeImage:()=>Te,rgbaToHex:()=>Nr,rgbaToHsla:()=>Sr,rgbaToHsva:()=>Rr,runNode:()=>gr,runNodeImage:()=>Be,saveImage:()=>Zi,sourceFromBuffer:()=>Yi,sourceFromDataUri:()=>Qi,sourceFromEmpty:()=>Ji,sourceFromPath:()=>Xi,sourceFromUrl:()=>Ki,toRgba:()=>F});module.exports=Ya(qu);function F(e){if(typeof e=="string")return jt(e);if("v"in e)return Mt({h:e.h,s:e.s,v:e.v,a:"a"in e?e.a:1});if("l"in e)return $t({h:e.h,s:e.s,l:e.l,a:"a"in e?e.a:1});let t="a"in e?e.a:255;return{r:U(e.r),g:U(e.g),b:U(e.b),a:qe(t)}}function Nr(e){let t=U(e.r).toString(16).padStart(2,"0"),r=U(e.g).toString(16).padStart(2,"0"),n=U(e.b).toString(16).padStart(2,"0"),i=U(e.a).toString(16).padStart(2,"0");return`#${t}${r}${n}${i}`}function jt(e){let t=e.replace("#","").trim();if(t.length===3||t.length===4){let r=parseInt(t[0]+t[0],16),n=parseInt(t[1]+t[1],16),i=parseInt(t[2]+t[2],16),a=t.length===4?parseInt(t[3]+t[3],16):255;return{r,g:n,b:i,a}}if(t.length===6||t.length===8){let r=parseInt(t.slice(0,2),16),n=parseInt(t.slice(2,4),16),i=parseInt(t.slice(4,6),16),a=t.length===8?parseInt(t.slice(6,8),16):255;return{r,g:n,b:i,a}}throw new Error("Invalid hex color")}function Rr(e){let t=Y(e.r,0,255)/255,r=Y(e.g,0,255)/255,n=Y(e.b,0,255)/255,i=Math.max(t,r,n),a=Math.min(t,r,n),o=i-a,s=0;o!==0&&(i===t?s=(r-n)/o%6:i===r?s=(n-t)/o+2:s=(t-r)/o+4);let c=Qe(s*60),f=i===0?0:o/i;return{h:c,s:Math.round(f*100),v:Math.round(i*100),a:qe(e.a)}}function Mt(e){let t=Qe(e.h),r=Y(e.s,0,100)/100,n=Y(e.v,0,100)/100,i=n*r,a=i*(1-Math.abs(t/60%2-1)),o=n-i,s=0,c=0,f=0;return t<60?(s=i,c=a):t<120?(s=a,c=i):t<180?(c=i,f=a):t<240?(c=a,f=i):t<300?(s=a,f=i):(s=i,f=a),{r:U((s+o)*255),g:U((c+o)*255),b:U((f+o)*255),a:qe(e.a)}}function Sr(e){let t=Y(e.r,0,255)/255,r=Y(e.g,0,255)/255,n=Y(e.b,0,255)/255,i=Math.max(t,r,n),a=Math.min(t,r,n),o=i-a,s=0;o!==0&&(i===t?s=(r-n)/o%6:i===r?s=(n-t)/o+2:s=(t-r)/o+4);let c=(i+a)/2,f=o===0?0:o/(1-Math.abs(2*c-1));return{h:Qe(s*60),s:Math.round(f*100),l:Math.round(c*100),a:qe(e.a)}}function $t(e){let t=Qe(e.h),r=Y(e.s,0,100)/100,n=Y(e.l,0,100)/100,i=(1-Math.abs(2*n-1))*r,a=i*(1-Math.abs(t/60%2-1)),o=n-i/2,s=0,c=0,f=0;return t<60?(s=i,c=a):t<120?(s=a,c=i):t<180?(c=i,f=a):t<240?(c=a,f=i):t<300?(s=a,f=i):(s=i,f=a),{r:U((s+o)*255),g:U((c+o)*255),b:U((f+o)*255),a:qe(e.a)}}function Ke(e,t){let r=e.r-t.r,n=e.g-t.g,i=e.b-t.b;return r*r+n*n+i*i}function Y(e,t,r){return Math.max(t,Math.min(r,e))}function Qe(e){let t=e%360;return t<0?t+360:t}function U(e){return Math.round(Y(e,0,255))}function qe(e){return e<=1?U(e*255):U(e)}var Lt={rgba8:4,rgb8:3,gray8:1,rgba32f:4},_=class e{constructor(t,r,n,i){this.width=t,this.height=r,this.format=n;let a=t*r*Lt[n];if(i){if(i.length!==a)throw new Error("ImageBuffer data length mismatch");this.data=i}else this.data=n==="rgba32f"?new Float32Array(a):new Uint8Array(a)}static create(t,r,n,i){let a=new e(t,r,n);return i&&a.fill(i),a}static fromMatrix(t,r="rgba8"){if(t.length===0)throw new Error("Pixel matrix cannot be empty");let n=t.length,i=t[0]?.length??0;if(i===0)throw new Error("Pixel matrix rows cannot be empty");for(let o of t)if(o.length!==i)throw new Error("Pixel matrix rows must have consistent lengths");let a=new e(i,n,r);for(let o=0;o<n;o+=1)for(let s=0;s<i;s+=1)a.setPixel(s,o,t[o][s]);return a}clone(){let t=this.format==="rgba32f"?new Float32Array(this.data):new Uint8Array(this.data);return new e(this.width,this.height,this.format,t)}getPixel(t,r){this.assertInside(t,r);let n=(r*this.width+t)*Lt[this.format];if(this.format==="gray8"){let a=this.data[n];return{r:a,g:a,b:a,a:255}}if(this.format==="rgb8"){let a=this.data;return{r:a[n],g:a[n+1],b:a[n+2],a:255}}if(this.format==="rgba32f"){let a=this.data;return{r:K(a[n]),g:K(a[n+1]),b:K(a[n+2]),a:K(a[n+3])}}let i=this.data;return{r:i[n],g:i[n+1],b:i[n+2],a:i[n+3]}}setPixel(t,r,n){this.assertInside(t,r);let i=(r*this.width+t)*Lt[this.format],a=n.a??255;if(this.format==="gray8"){let s=K((n.r+n.g+n.b)/3);this.data[i]=s;return}if(this.format==="rgb8"){let s=this.data;s[i]=K(n.r),s[i+1]=K(n.g),s[i+2]=K(n.b);return}if(this.format==="rgba32f"){let s=this.data;s[i]=Ye(n.r),s[i+1]=Ye(n.g),s[i+2]=Ye(n.b),s[i+3]=Ye(a);return}let o=this.data;o[i]=K(n.r),o[i+1]=K(n.g),o[i+2]=K(n.b),o[i+3]=K(a)}setPixelColor(t,r,n){let i=F(n);this.setPixel(t,r,i)}fill(t){for(let r=0;r<this.height;r+=1)for(let n=0;n<this.width;n+=1)this.setPixel(n,r,t)}fillColor(t){let r=F(t);this.fill(r)}toMatrix(){let t=[];for(let r=0;r<this.height;r+=1){let n=[];for(let i=0;i<this.width;i+=1)n.push(this.getPixel(i,r));t.push(n)}return t}mapPixels(t){let r=new e(this.width,this.height,this.format);for(let n=0;n<this.height;n+=1)for(let i=0;i<this.width;i+=1){let a=this.getPixel(i,n);r.setPixel(i,n,t(a,i,n))}return r}toFormat(t){if(t===this.format)return this.clone();let r=new e(this.width,this.height,t);for(let n=0;n<this.height;n+=1)for(let i=0;i<this.width;i+=1)r.setPixel(i,n,this.getPixel(i,n));return r}assertInside(t,r){if(t<0||r<0||t>=this.width||r>=this.height)throw new Error("Pixel coordinate out of bounds")}};function K(e){if(Number.isNaN(e)||!Number.isFinite(e))return 0;let t=e<=1?e*255:e;return Math.max(0,Math.min(255,Math.round(t)))}function Ye(e){return Number.isNaN(e)||!Number.isFinite(e)?0:e>1?Math.max(0,Math.min(1,e/255)):Math.max(0,Math.min(1,e))}var be=class{constructor(t){this.state=t>>>0}next(){let t=this.state+=1831565813;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}nextFloat(){return this.next()}nextInt(t,r){let n=Math.min(t,r),i=Math.max(t,r);return Math.floor(this.next()*(i-n+1))+n}nextRange(t,r){let n=Math.min(t,r),i=Math.max(t,r);return this.next()*(i-n)+n}nextGaussian(t=0,r=1){let n=0,i=0;for(;n===0;)n=this.next();for(;i===0;)i=this.next();return Math.sqrt(-2*Math.log(n))*Math.cos(2*Math.PI*i)*r+t}};function Je(e){return e==null?new be(Tt(Date.now())):typeof e=="number"&&Number.isFinite(e)?new be(Tt(e)):new be(Tt(String(e)))}function Tt(e){let t=String(e),r=2166136261;for(let n=0;n<t.length;n+=1)r^=t.charCodeAt(n),r=Math.imul(r,16777619);return r>>>0}var bt=Ir(require("node:fs/promises")),Ge=Ir(Vi());function Xi(e){return{type:"path",path:e}}function Ki(e){return{type:"url",url:e}}function Qi(e){return{type:"datauri",dataUri:e}}function Yi(e){return{type:"buffer",buffer:e}}function Ji(e,t,r="rgba8",n){return{type:"empty",width:e,height:t,format:r,fill:n}}async function Le(e){if(e.type==="empty")return _.create(e.width,e.height,e.format??"rgba8",e.fill);let t=await yu(e),{data:r,info:n}=await(0,Ge.default)(t).ensureAlpha().raw().toBuffer({resolveWithObject:!0}),i=new Uint8Array(r);return new _(n.width,n.height,"rgba8",i)}async function pt(e,t={}){let r=e.format==="rgba8"?e:e.toFormat("rgba8"),n=Buffer.from(r.data),i=(0,Ge.default)(n,{raw:{width:r.width,height:r.height,channels:4}}),a=t.format??"png";return a==="jpeg"?i=i.jpeg({quality:t.quality??90}):a==="webp"?i=i.webp({quality:t.quality??90}):i=i.png(),i.toBuffer()}async function Zi(e,t,r={}){let n=await pt(e,r);await bt.default.writeFile(t,n)}async function Te(e,t,r,n={}){let i=e.format==="rgba8"?e:e.toFormat("rgba8"),a=Buffer.from(i.data),{data:o,info:s}=await(0,Ge.default)(a,{raw:{width:i.width,height:i.height,channels:4}}).resize(t,r,{fit:n.fit??"fill",withoutEnlargement:n.withoutEnlargement??!1}).ensureAlpha().raw().toBuffer({resolveWithObject:!0});return new _(s.width,s.height,"rgba8",new Uint8Array(o))}async function wt(e,t){let r=await pt(e,{format:"png"}),n=await vu(e.width,e.height,t),{data:i,info:a}=await(0,Ge.default)(r).composite([{input:Buffer.from(n)}]).ensureAlpha().raw().toBuffer({resolveWithObject:!0}),o=new _(a.width,a.height,"rgba8",new Uint8Array(i));return e.format==="rgba8"?o:o.toFormat(e.format)}async function yu(e){if(e.type==="buffer")return e.buffer;if(e.type==="path")return bt.default.readFile(e.path);if(e.type==="url"){let t=await fetch(e.url);if(!t.ok)throw new Error(`Failed to fetch image: ${t.status} ${t.statusText}`);let r=await t.arrayBuffer();return Buffer.from(r)}if(e.type==="datauri")return xu(e.dataUri);throw new Error("Unsupported image source")}function xu(e){let[t,r]=e.split(",");if(!r)throw new Error("Invalid data URI");return/;base64/i.test(t)?Buffer.from(r,"base64"):Buffer.from(decodeURIComponent(r))}async function vu(e,t,r){let n=r.layout,i=r.style??{},a=i.fontSize??48,o=i.bold?700:r.font.weight??400,s=i.italic?"italic":r.font.style??"normal",c=i.opacity??1,f=n.lineHeight??Math.round(a*1.25),d=n.align??"left",m=n.letterSpacing??0,g=i.color??"#ffffff",P=Nu(g,c),N=d==="center"?"middle":d==="right"?"end":"start",b=Iu(r.text,n.maxWidth,a,n.maxLines),x=d==="left"?n.x:d==="center"?n.x+(n.maxWidth??0)/2:n.x+(n.maxWidth??0),E=n.y+a,A=[i.underline?"underline":null,i.strikethrough?"line-through":null].filter(Boolean).join(" "),I=await Eu(r.font),$=b.map((L,T)=>`<tspan x="${x}" dy="${T===0?0:f}">${ur(L)}</tspan>`).join("");return`<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
`))}});var oi=S((xf,ai)=>{var dl=require("node:util"),Zt=require("node:stream"),ml=J();He();var gl=dl.debuglog("sharp"),bl=e=>{xe.queue.emit("change",e)},xe=function(e,t){if(arguments.length===1&&!ml.defined(e))throw new Error("Invalid input");return this instanceof xe?(Zt.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:.2,sharpenSigma:0,sharpenM1:1,sharpenM2:2,sharpenX1:2,sharpenY2:10,sharpenY3:20,threshold:0,thresholdGrayscale:!0,trimBackground:[],trimThreshold:-1,trimLineArt:!1,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,keepMetadata:0,withMetadataOrientation:-1,withMetadataDensity:0,withIccProfile:"",withExif:{},withExifMerge:!0,withXmp:"",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,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:8,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,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),gl(r)},queueListener:bl},this.options.input=this._createInputDescriptor(e,t,{allowStream:!0}),this):new xe(e,t)};Object.setPrototypeOf(xe.prototype,Zt.Duplex.prototype);Object.setPrototypeOf(xe,Zt.Duplex);function pl(){let e=this.constructor.call(),{debuglog:t,queueListener:r,...n}=this.options;return e.options=structuredClone(n),e.options.debuglog=t,e.options.queueListener=r,this._isStreamInput()&&this.on("finish",()=>{this._flattenBufferIn(),e.options.input.buffer=this.options.input.buffer,e.emit("finish")}),e}Object.assign(xe.prototype,{clone:pl});ai.exports=xe});var ci=S((vf,li)=>{var u=J(),he=He(),wl={left:"low",top:"low",low:"low",center:"centre",centre:"centre",right:"high",bottom:"high",high:"high"},yl=["failOn","limitInputPixels","unlimited","animated","autoOrient","density","ignoreIcc","page","pages","sequentialRead","jp2","openSlide","pdf","raw","svg","tiff","failOnError","openSlideLevel","pdfBackground","tiffSubifd"];function si(e){let t=yl.filter(r=>u.defined(e[r])).map(r=>[r,e[r]]);return t.length?Object.fromEntries(t):void 0}function xl(e,t,r){let n={autoOrient:!1,failOn:"warning",limitInputPixels:268402689,ignoreIcc:!1,unlimited:!1,sequentialRead:!0};if(u.string(e))n.file=e;else if(u.buffer(e)){if(e.length===0)throw Error("Input Buffer is empty");n.buffer=e}else if(u.arrayBuffer(e)){if(e.byteLength===0)throw Error("Input bit Array is empty");n.buffer=Buffer.from(e,0,e.byteLength)}else if(u.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(u.plainObject(e)&&!u.defined(t))t=e,si(t)&&(n.buffer=[]);else if(!u.defined(e)&&!u.defined(t)&&u.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(i=>this._createInputDescriptor(i));else throw new Error("Recursive join is unsupported");else throw new Error("Expected at least two images to join");else throw new Error(`Unsupported input '${e}' of type ${typeof e}${u.defined(t)?` when also providing options of type ${typeof t}`:""}`);if(u.object(t)){if(u.defined(t.failOnError))if(u.bool(t.failOnError))n.failOn=t.failOnError?"warning":"none";else throw u.invalidParameterError("failOnError","boolean",t.failOnError);if(u.defined(t.failOn))if(u.string(t.failOn)&&u.inArray(t.failOn,["none","truncated","error","warning"]))n.failOn=t.failOn;else throw u.invalidParameterError("failOn","one of: none, truncated, error, warning",t.failOn);if(u.defined(t.autoOrient))if(u.bool(t.autoOrient))n.autoOrient=t.autoOrient;else throw u.invalidParameterError("autoOrient","boolean",t.autoOrient);if(u.defined(t.density))if(u.inRange(t.density,1,1e5))n.density=t.density;else throw u.invalidParameterError("density","number between 1 and 100000",t.density);if(u.defined(t.ignoreIcc))if(u.bool(t.ignoreIcc))n.ignoreIcc=t.ignoreIcc;else throw u.invalidParameterError("ignoreIcc","boolean",t.ignoreIcc);if(u.defined(t.limitInputPixels))if(u.bool(t.limitInputPixels))n.limitInputPixels=t.limitInputPixels?16383**2:0;else if(u.integer(t.limitInputPixels)&&u.inRange(t.limitInputPixels,0,Number.MAX_SAFE_INTEGER))n.limitInputPixels=t.limitInputPixels;else throw u.invalidParameterError("limitInputPixels","positive integer",t.limitInputPixels);if(u.defined(t.unlimited))if(u.bool(t.unlimited))n.unlimited=t.unlimited;else throw u.invalidParameterError("unlimited","boolean",t.unlimited);if(u.defined(t.sequentialRead))if(u.bool(t.sequentialRead))n.sequentialRead=t.sequentialRead;else throw u.invalidParameterError("sequentialRead","boolean",t.sequentialRead);if(u.defined(t.raw)){if(u.object(t.raw)&&u.integer(t.raw.width)&&t.raw.width>0&&u.integer(t.raw.height)&&t.raw.height>0&&u.integer(t.raw.channels)&&u.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 new Error("Expected width, height and channels for raw pixel input");if(n.rawPremultiplied=!1,u.defined(t.raw.premultiplied))if(u.bool(t.raw.premultiplied))n.rawPremultiplied=t.raw.premultiplied;else throw u.invalidParameterError("raw.premultiplied","boolean",t.raw.premultiplied);if(n.rawPageHeight=0,u.defined(t.raw.pageHeight))if(u.integer(t.raw.pageHeight)&&t.raw.pageHeight>0&&t.raw.pageHeight<=t.raw.height){if(t.raw.height%t.raw.pageHeight!==0)throw new Error(`Expected raw.height ${t.raw.height} to be a multiple of raw.pageHeight ${t.raw.pageHeight}`);n.rawPageHeight=t.raw.pageHeight}else throw u.invalidParameterError("raw.pageHeight","positive integer",t.raw.pageHeight)}if(u.defined(t.animated))if(u.bool(t.animated))n.pages=t.animated?-1:1;else throw u.invalidParameterError("animated","boolean",t.animated);if(u.defined(t.pages))if(u.integer(t.pages)&&u.inRange(t.pages,-1,1e5))n.pages=t.pages;else throw u.invalidParameterError("pages","integer between -1 and 100000",t.pages);if(u.defined(t.page))if(u.integer(t.page)&&u.inRange(t.page,0,1e5))n.page=t.page;else throw u.invalidParameterError("page","integer between 0 and 100000",t.page);if(u.object(t.openSlide)&&u.defined(t.openSlide.level))if(u.integer(t.openSlide.level)&&u.inRange(t.openSlide.level,0,256))n.openSlideLevel=t.openSlide.level;else throw u.invalidParameterError("openSlide.level","integer between 0 and 256",t.openSlide.level);else if(u.defined(t.level))if(u.integer(t.level)&&u.inRange(t.level,0,256))n.openSlideLevel=t.level;else throw u.invalidParameterError("level","integer between 0 and 256",t.level);if(u.object(t.tiff)&&u.defined(t.tiff.subifd))if(u.integer(t.tiff.subifd)&&u.inRange(t.tiff.subifd,-1,1e5))n.tiffSubifd=t.tiff.subifd;else throw u.invalidParameterError("tiff.subifd","integer between -1 and 100000",t.tiff.subifd);else if(u.defined(t.subifd))if(u.integer(t.subifd)&&u.inRange(t.subifd,-1,1e5))n.tiffSubifd=t.subifd;else throw u.invalidParameterError("subifd","integer between -1 and 100000",t.subifd);if(u.object(t.svg)){if(u.defined(t.svg.stylesheet))if(u.string(t.svg.stylesheet))n.svgStylesheet=t.svg.stylesheet;else throw u.invalidParameterError("svg.stylesheet","string",t.svg.stylesheet);if(u.defined(t.svg.highBitdepth))if(u.bool(t.svg.highBitdepth))n.svgHighBitdepth=t.svg.highBitdepth;else throw u.invalidParameterError("svg.highBitdepth","boolean",t.svg.highBitdepth)}if(u.object(t.pdf)&&u.defined(t.pdf.background)?n.pdfBackground=this._getBackgroundColourOption(t.pdf.background):u.defined(t.pdfBackground)&&(n.pdfBackground=this._getBackgroundColourOption(t.pdfBackground)),u.object(t.jp2)&&u.defined(t.jp2.oneshot))if(u.bool(t.jp2.oneshot))n.jp2Oneshot=t.jp2.oneshot;else throw u.invalidParameterError("jp2.oneshot","boolean",t.jp2.oneshot);if(u.defined(t.create))if(u.object(t.create)&&u.integer(t.create.width)&&t.create.width>0&&u.integer(t.create.height)&&t.create.height>0&&u.integer(t.create.channels)){if(n.createWidth=t.create.width,n.createHeight=t.create.height,n.createChannels=t.create.channels,n.createPageHeight=0,u.defined(t.create.pageHeight))if(u.integer(t.create.pageHeight)&&t.create.pageHeight>0&&t.create.pageHeight<=t.create.height){if(t.create.height%t.create.pageHeight!==0)throw new Error(`Expected create.height ${t.create.height} to be a multiple of create.pageHeight ${t.create.pageHeight}`);n.createPageHeight=t.create.pageHeight}else throw u.invalidParameterError("create.pageHeight","positive integer",t.create.pageHeight);if(u.defined(t.create.noise)){if(!u.object(t.create.noise))throw new Error("Expected noise to be an object");if(t.create.noise.type!=="gaussian")throw new Error("Only gaussian noise is supported at the moment");if(n.createNoiseType=t.create.noise.type,!u.inRange(t.create.channels,1,4))throw u.invalidParameterError("create.channels","number between 1 and 4",t.create.channels);if(n.createNoiseMean=128,u.defined(t.create.noise.mean))if(u.number(t.create.noise.mean)&&u.inRange(t.create.noise.mean,0,1e4))n.createNoiseMean=t.create.noise.mean;else throw u.invalidParameterError("create.noise.mean","number between 0 and 10000",t.create.noise.mean);if(n.createNoiseSigma=30,u.defined(t.create.noise.sigma))if(u.number(t.create.noise.sigma)&&u.inRange(t.create.noise.sigma,0,1e4))n.createNoiseSigma=t.create.noise.sigma;else throw u.invalidParameterError("create.noise.sigma","number between 0 and 10000",t.create.noise.sigma)}else if(u.defined(t.create.background)){if(!u.inRange(t.create.channels,3,4))throw u.invalidParameterError("create.channels","number between 3 and 4",t.create.channels);n.createBackground=this._getBackgroundColourOption(t.create.background)}else throw new Error("Expected valid noise or background to create a new input image");delete n.buffer}else throw new Error("Expected valid width, height and channels to create a new input image");if(u.defined(t.text))if(u.object(t.text)&&u.string(t.text.text)){if(n.textValue=t.text.text,u.defined(t.text.height)&&u.defined(t.text.dpi))throw new Error("Expected only one of dpi or height");if(u.defined(t.text.font))if(u.string(t.text.font))n.textFont=t.text.font;else throw u.invalidParameterError("text.font","string",t.text.font);if(u.defined(t.text.fontfile))if(u.string(t.text.fontfile))n.textFontfile=t.text.fontfile;else throw u.invalidParameterError("text.fontfile","string",t.text.fontfile);if(u.defined(t.text.width))if(u.integer(t.text.width)&&t.text.width>0)n.textWidth=t.text.width;else throw u.invalidParameterError("text.width","positive integer",t.text.width);if(u.defined(t.text.height))if(u.integer(t.text.height)&&t.text.height>0)n.textHeight=t.text.height;else throw u.invalidParameterError("text.height","positive integer",t.text.height);if(u.defined(t.text.align))if(u.string(t.text.align)&&u.string(this.constructor.align[t.text.align]))n.textAlign=this.constructor.align[t.text.align];else throw u.invalidParameterError("text.align","valid alignment",t.text.align);if(u.defined(t.text.justify))if(u.bool(t.text.justify))n.textJustify=t.text.justify;else throw u.invalidParameterError("text.justify","boolean",t.text.justify);if(u.defined(t.text.dpi))if(u.integer(t.text.dpi)&&u.inRange(t.text.dpi,1,1e6))n.textDpi=t.text.dpi;else throw u.invalidParameterError("text.dpi","integer between 1 and 1000000",t.text.dpi);if(u.defined(t.text.rgba))if(u.bool(t.text.rgba))n.textRgba=t.text.rgba;else throw u.invalidParameterError("text.rgba","bool",t.text.rgba);if(u.defined(t.text.spacing))if(u.integer(t.text.spacing)&&u.inRange(t.text.spacing,-1e6,1e6))n.textSpacing=t.text.spacing;else throw u.invalidParameterError("text.spacing","integer between -1000000 and 1000000",t.text.spacing);if(u.defined(t.text.wrap))if(u.string(t.text.wrap)&&u.inArray(t.text.wrap,["word","char","word-char","none"]))n.textWrap=t.text.wrap;else throw u.invalidParameterError("text.wrap","one of: word, char, word-char, none",t.text.wrap);delete n.buffer}else throw new Error("Expected a valid string to create an image with text.");if(u.defined(t.join))if(u.defined(this.options.join)){if(u.defined(t.join.animated))if(u.bool(t.join.animated))n.joinAnimated=t.join.animated;else throw u.invalidParameterError("join.animated","boolean",t.join.animated);if(u.defined(t.join.across))if(u.integer(t.join.across)&&u.inRange(t.join.across,1,1e6))n.joinAcross=t.join.across;else throw u.invalidParameterError("join.across","integer between 1 and 100000",t.join.across);if(u.defined(t.join.shim))if(u.integer(t.join.shim)&&u.inRange(t.join.shim,0,1e6))n.joinShim=t.join.shim;else throw u.invalidParameterError("join.shim","integer between 0 and 100000",t.join.shim);if(u.defined(t.join.background)&&(n.joinBackground=this._getBackgroundColourOption(t.join.background)),u.defined(t.join.halign))if(u.string(t.join.halign)&&u.string(this.constructor.align[t.join.halign]))n.joinHalign=this.constructor.align[t.join.halign];else throw u.invalidParameterError("join.halign","valid alignment",t.join.halign);if(u.defined(t.join.valign))if(u.string(t.join.valign)&&u.string(this.constructor.align[t.join.valign]))n.joinValign=this.constructor.align[t.join.valign];else throw u.invalidParameterError("join.valign","valid alignment",t.join.valign)}else throw new Error("Expected input to be an array of images to join")}else if(u.defined(t))throw new Error(`Invalid input options ${t}`);return n}function vl(e,t,r){Array.isArray(this.options.input.buffer)?u.buffer(e)?(this.options.input.buffer.length===0&&this.on("finish",()=>{this.streamInFinished=!0}),this.options.input.buffer.push(e),r()):r(new Error("Non-Buffer data on Writable Stream")):r(new Error("Unexpected data on Writable Stream"))}function El(){this._isStreamInput()&&(this.options.input.buffer=Buffer.concat(this.options.input.buffer))}function Pl(){return Array.isArray(this.options.input.buffer)}function Il(e){let t=Error();return u.fn(e)?(this._isStreamInput()?this.on("finish",()=>{this._flattenBufferIn(),he.metadata(this.options,(r,n)=>{r?e(u.nativeError(r,t)):e(null,n)})}):he.metadata(this.options,(r,n)=>{r?e(u.nativeError(r,t)):e(null,n)}),this):this._isStreamInput()?new Promise((r,n)=>{let i=()=>{this._flattenBufferIn(),he.metadata(this.options,(a,o)=>{a?n(u.nativeError(a,t)):r(o)})};this.writableFinished?i():this.once("finish",i)}):new Promise((r,n)=>{he.metadata(this.options,(i,a)=>{i?n(u.nativeError(i,t)):r(a)})})}function Nl(e){let t=Error();return u.fn(e)?(this._isStreamInput()?this.on("finish",()=>{this._flattenBufferIn(),he.stats(this.options,(r,n)=>{r?e(u.nativeError(r,t)):e(null,n)})}):he.stats(this.options,(r,n)=>{r?e(u.nativeError(r,t)):e(null,n)}),this):this._isStreamInput()?new Promise((r,n)=>{this.on("finish",function(){this._flattenBufferIn(),he.stats(this.options,(i,a)=>{i?n(u.nativeError(i,t)):r(a)})})}):new Promise((r,n)=>{he.stats(this.options,(i,a)=>{i?n(u.nativeError(i,t)):r(a)})})}li.exports=e=>{Object.assign(e.prototype,{_inputOptionsFromObject:si,_createInputDescriptor:xl,_write:vl,_flattenBufferIn:El,_isStreamInput:Pl,metadata:Il,stats:Nl}),e.align=wl}});var gi=S((Ef,mi)=>{var v=J(),fi={center:0,centre:0,north:1,east:2,south:3,west:4,northeast:5,southeast:6,southwest:7,northwest:8},hi={top:1,right:2,bottom:3,left:4,"right top":5,"right bottom":6,"left bottom":7,"left top":8},ui={background:"background",copy:"copy",repeat:"repeat",mirror:"mirror"},di={entropy:16,attention:17},er={nearest:"nearest",linear:"linear",cubic:"cubic",mitchell:"mitchell",lanczos2:"lanczos2",lanczos3:"lanczos3",mks2013:"mks2013",mks2021:"mks2021"},Rl={contain:"contain",cover:"cover",fill:"fill",inside:"inside",outside:"outside"},Sl={contain:"embed",cover:"crop",fill:"ignore_aspect",inside:"max",outside:"min"};function tr(e){return e.angle%360!==0||e.rotationAngle!==0}function dt(e){return e.width!==-1||e.height!==-1}function Al(e,t,r){if(dt(this.options)&&this.options.debuglog("ignoring previous resize options"),this.options.widthPost!==-1&&this.options.debuglog("operation order will be: extract, resize, extract"),v.defined(e))if(v.object(e)&&!v.defined(r))r=e;else if(v.integer(e)&&e>0)this.options.width=e;else throw v.invalidParameterError("width","positive integer",e);else this.options.width=-1;if(v.defined(t))if(v.integer(t)&&t>0)this.options.height=t;else throw v.invalidParameterError("height","positive integer",t);else this.options.height=-1;if(v.object(r)){if(v.defined(r.width))if(v.integer(r.width)&&r.width>0)this.options.width=r.width;else throw v.invalidParameterError("width","positive integer",r.width);if(v.defined(r.height))if(v.integer(r.height)&&r.height>0)this.options.height=r.height;else throw v.invalidParameterError("height","positive integer",r.height);if(v.defined(r.fit)){let n=Sl[r.fit];if(v.string(n))this.options.canvas=n;else throw v.invalidParameterError("fit","valid fit",r.fit)}if(v.defined(r.position)){let n=v.integer(r.position)?r.position:di[r.position]||hi[r.position]||fi[r.position];if(v.integer(n)&&(v.inRange(n,0,8)||v.inRange(n,16,17)))this.options.position=n;else throw v.invalidParameterError("position","valid position/gravity/strategy",r.position)}if(this._setBackgroundColourOption("resizeBackground",r.background),v.defined(r.kernel))if(v.string(er[r.kernel]))this.options.kernel=er[r.kernel];else throw v.invalidParameterError("kernel","valid kernel name",r.kernel);v.defined(r.withoutEnlargement)&&this._setBooleanOption("withoutEnlargement",r.withoutEnlargement),v.defined(r.withoutReduction)&&this._setBooleanOption("withoutReduction",r.withoutReduction),v.defined(r.fastShrinkOnLoad)&&this._setBooleanOption("fastShrinkOnLoad",r.fastShrinkOnLoad)}return tr(this.options)&&dt(this.options)&&(this.options.rotateBefore=!0),this}function kl(e){if(v.integer(e)&&e>0)this.options.extendTop=e,this.options.extendBottom=e,this.options.extendLeft=e,this.options.extendRight=e;else if(v.object(e)){if(v.defined(e.top))if(v.integer(e.top)&&e.top>=0)this.options.extendTop=e.top;else throw v.invalidParameterError("top","positive integer",e.top);if(v.defined(e.bottom))if(v.integer(e.bottom)&&e.bottom>=0)this.options.extendBottom=e.bottom;else throw v.invalidParameterError("bottom","positive integer",e.bottom);if(v.defined(e.left))if(v.integer(e.left)&&e.left>=0)this.options.extendLeft=e.left;else throw v.invalidParameterError("left","positive integer",e.left);if(v.defined(e.right))if(v.integer(e.right)&&e.right>=0)this.options.extendRight=e.right;else throw v.invalidParameterError("right","positive integer",e.right);if(this._setBackgroundColourOption("extendBackground",e.background),v.defined(e.extendWith))if(v.string(ui[e.extendWith]))this.options.extendWith=ui[e.extendWith];else throw v.invalidParameterError("extendWith","one of: background, copy, repeat, mirror",e.extendWith)}else throw v.invalidParameterError("extend","integer or object",e);return this}function jl(e){let t=dt(this.options)||this.options.widthPre!==-1?"Post":"Pre";return this.options[`width${t}`]!==-1&&this.options.debuglog("ignoring previous extract options"),["left","top","width","height"].forEach(function(r){let n=e[r];if(v.integer(n)&&n>=0)this.options[r+(r==="left"||r==="top"?"Offset":"")+t]=n;else throw v.invalidParameterError(r,"integer",n)},this),tr(this.options)&&!dt(this.options)&&(this.options.widthPre===-1||this.options.widthPost===-1)&&(this.options.rotateBefore=!0),this.options.input.autoOrient&&(this.options.orientBefore=!0),this}function Ml(e){if(this.options.trimThreshold=10,v.defined(e))if(v.object(e)){if(v.defined(e.background)&&this._setBackgroundColourOption("trimBackground",e.background),v.defined(e.threshold))if(v.number(e.threshold)&&e.threshold>=0)this.options.trimThreshold=e.threshold;else throw v.invalidParameterError("threshold","positive number",e.threshold);v.defined(e.lineArt)&&this._setBooleanOption("trimLineArt",e.lineArt)}else throw v.invalidParameterError("trim","object",e);return tr(this.options)&&(this.options.rotateBefore=!0),this}mi.exports=e=>{Object.assign(e.prototype,{resize:Al,extend:kl,extract:jl,trim:Ml}),e.gravity=fi,e.strategy=di,e.kernel=er,e.fit=Rl,e.position=hi}});var pi=S((Pf,bi)=>{var k=J(),rr={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 $l(e){if(!Array.isArray(e))throw k.invalidParameterError("images to composite","array",e);return this.options.composite=e.map(t=>{if(!k.object(t))throw k.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(k.defined(t.blend))if(k.string(rr[t.blend]))n.blend=rr[t.blend];else throw k.invalidParameterError("blend","valid blend name",t.blend);if(k.defined(t.tile))if(k.bool(t.tile))n.tile=t.tile;else throw k.invalidParameterError("tile","boolean",t.tile);if(k.defined(t.left))if(k.integer(t.left))n.left=t.left;else throw k.invalidParameterError("left","integer",t.left);if(k.defined(t.top))if(k.integer(t.top))n.top=t.top;else throw k.invalidParameterError("top","integer",t.top);if(k.defined(t.top)!==k.defined(t.left))throw new Error("Expected both left and top to be set");if(n.hasOffset=k.integer(t.top)&&k.integer(t.left),k.defined(t.gravity))if(k.integer(t.gravity)&&k.inRange(t.gravity,0,8))n.gravity=t.gravity;else if(k.string(t.gravity)&&k.integer(this.constructor.gravity[t.gravity]))n.gravity=this.constructor.gravity[t.gravity];else throw k.invalidParameterError("gravity","valid gravity",t.gravity);if(k.defined(t.premultiplied))if(k.bool(t.premultiplied))n.premultiplied=t.premultiplied;else throw k.invalidParameterError("premultiplied","boolean",t.premultiplied);return n}),this}bi.exports=e=>{e.prototype.composite=$l,e.blend=rr}});var Ei=S((If,vi)=>{var h=J(),wi={integer:"integer",float:"float",approximate:"approximate"};function Ll(e,t){if(!h.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),h.integer(e)&&!(e%90))this.options.angle=e;else if(h.number(e))this.options.rotationAngle=e,h.object(t)&&t.background&&this._setBackgroundColourOption("rotationBackground",t.background);else throw h.invalidParameterError("angle","numeric",e);return this}function Tl(){return this.options.input.autoOrient=!0,this}function Cl(e){return this.options.flip=h.bool(e)?e:!0,this}function Bl(e){return this.options.flop=h.bool(e)?e:!0,this}function Fl(e,t){let r=[].concat(...e);if(r.length===4&&r.every(h.number))this.options.affineMatrix=r;else throw h.invalidParameterError("matrix","1x4 or 2x2 array",e);if(h.defined(t))if(h.object(t)){if(this._setBackgroundColourOption("affineBackground",t.background),h.defined(t.idx))if(h.number(t.idx))this.options.affineIdx=t.idx;else throw h.invalidParameterError("options.idx","number",t.idx);if(h.defined(t.idy))if(h.number(t.idy))this.options.affineIdy=t.idy;else throw h.invalidParameterError("options.idy","number",t.idy);if(h.defined(t.odx))if(h.number(t.odx))this.options.affineOdx=t.odx;else throw h.invalidParameterError("options.odx","number",t.odx);if(h.defined(t.ody))if(h.number(t.ody))this.options.affineOdy=t.ody;else throw h.invalidParameterError("options.ody","number",t.ody);if(h.defined(t.interpolator))if(h.inArray(t.interpolator,Object.values(this.constructor.interpolators)))this.options.affineInterpolator=t.interpolator;else throw h.invalidParameterError("options.interpolator","valid interpolator name",t.interpolator)}else throw h.invalidParameterError("options","object",t);return this}function _l(e,t,r){if(!h.defined(e))this.options.sharpenSigma=-1;else if(h.bool(e))this.options.sharpenSigma=e?-1:0;else if(h.number(e)&&h.inRange(e,.01,1e4)){if(this.options.sharpenSigma=e,h.defined(t))if(h.number(t)&&h.inRange(t,0,1e4))this.options.sharpenM1=t;else throw h.invalidParameterError("flat","number between 0 and 10000",t);if(h.defined(r))if(h.number(r)&&h.inRange(r,0,1e4))this.options.sharpenM2=r;else throw h.invalidParameterError("jagged","number between 0 and 10000",r)}else if(h.plainObject(e)){if(h.number(e.sigma)&&h.inRange(e.sigma,1e-6,10))this.options.sharpenSigma=e.sigma;else throw h.invalidParameterError("options.sigma","number between 0.000001 and 10",e.sigma);if(h.defined(e.m1))if(h.number(e.m1)&&h.inRange(e.m1,0,1e6))this.options.sharpenM1=e.m1;else throw h.invalidParameterError("options.m1","number between 0 and 1000000",e.m1);if(h.defined(e.m2))if(h.number(e.m2)&&h.inRange(e.m2,0,1e6))this.options.sharpenM2=e.m2;else throw h.invalidParameterError("options.m2","number between 0 and 1000000",e.m2);if(h.defined(e.x1))if(h.number(e.x1)&&h.inRange(e.x1,0,1e6))this.options.sharpenX1=e.x1;else throw h.invalidParameterError("options.x1","number between 0 and 1000000",e.x1);if(h.defined(e.y2))if(h.number(e.y2)&&h.inRange(e.y2,0,1e6))this.options.sharpenY2=e.y2;else throw h.invalidParameterError("options.y2","number between 0 and 1000000",e.y2);if(h.defined(e.y3))if(h.number(e.y3)&&h.inRange(e.y3,0,1e6))this.options.sharpenY3=e.y3;else throw h.invalidParameterError("options.y3","number between 0 and 1000000",e.y3)}else throw h.invalidParameterError("sigma","number between 0.01 and 10000",e);return this}function ql(e){if(!h.defined(e))this.options.medianSize=3;else if(h.integer(e)&&h.inRange(e,1,1e3))this.options.medianSize=e;else throw h.invalidParameterError("size","integer between 1 and 1000",e);return this}function Ol(e){let t;if(h.number(e))t=e;else if(h.plainObject(e)){if(!h.number(e.sigma))throw h.invalidParameterError("options.sigma","number between 0.3 and 1000",t);if(t=e.sigma,"precision"in e)if(h.string(wi[e.precision]))this.options.precision=wi[e.precision];else throw h.invalidParameterError("precision","one of: integer, float, approximate",e.precision);if("minAmplitude"in e)if(h.number(e.minAmplitude)&&h.inRange(e.minAmplitude,.001,1))this.options.minAmpl=e.minAmplitude;else throw h.invalidParameterError("minAmplitude","number between 0.001 and 1",e.minAmplitude)}if(!h.defined(e))this.options.blurSigma=-1;else if(h.bool(e))this.options.blurSigma=e?-1:0;else if(h.number(t)&&h.inRange(t,.3,1e3))this.options.blurSigma=t;else throw h.invalidParameterError("sigma","number between 0.3 and 1000",t);return this}function yi(e){if(!h.defined(e))this.options.dilateWidth=1;else if(h.integer(e)&&e>0)this.options.dilateWidth=e;else throw h.invalidParameterError("dilate","positive integer",yi);return this}function xi(e){if(!h.defined(e))this.options.erodeWidth=1;else if(h.integer(e)&&e>0)this.options.erodeWidth=e;else throw h.invalidParameterError("erode","positive integer",xi);return this}function Dl(e){return this.options.flatten=h.bool(e)?e:!0,h.object(e)&&this._setBackgroundColourOption("flattenBackground",e.background),this}function Ul(){return this.options.unflatten=!0,this}function zl(e,t){if(!h.defined(e))this.options.gamma=2.2;else if(h.number(e)&&h.inRange(e,1,3))this.options.gamma=e;else throw h.invalidParameterError("gamma","number between 1.0 and 3.0",e);if(!h.defined(t))this.options.gammaOut=this.options.gamma;else if(h.number(t)&&h.inRange(t,1,3))this.options.gammaOut=t;else throw h.invalidParameterError("gammaOut","number between 1.0 and 3.0",t);return this}function Hl(e){if(this.options.negate=h.bool(e)?e:!0,h.plainObject(e)&&"alpha"in e)if(h.bool(e.alpha))this.options.negateAlpha=e.alpha;else throw h.invalidParameterError("alpha","should be boolean value",e.alpha);return this}function Gl(e){if(h.plainObject(e)){if(h.defined(e.lower))if(h.number(e.lower)&&h.inRange(e.lower,0,99))this.options.normaliseLower=e.lower;else throw h.invalidParameterError("lower","number between 0 and 99",e.lower);if(h.defined(e.upper))if(h.number(e.upper)&&h.inRange(e.upper,1,100))this.options.normaliseUpper=e.upper;else throw h.invalidParameterError("upper","number between 1 and 100",e.upper)}if(this.options.normaliseLower>=this.options.normaliseUpper)throw h.invalidParameterError("range","lower to be less than upper",`${this.options.normaliseLower} >= ${this.options.normaliseUpper}`);return this.options.normalise=!0,this}function Wl(e){return this.normalise(e)}function Vl(e){if(h.plainObject(e)){if(h.integer(e.width)&&e.width>0)this.options.claheWidth=e.width;else throw h.invalidParameterError("width","integer greater than zero",e.width);if(h.integer(e.height)&&e.height>0)this.options.claheHeight=e.height;else throw h.invalidParameterError("height","integer greater than zero",e.height);if(h.defined(e.maxSlope))if(h.integer(e.maxSlope)&&h.inRange(e.maxSlope,0,100))this.options.claheMaxSlope=e.maxSlope;else throw h.invalidParameterError("maxSlope","integer between 0 and 100",e.maxSlope)}else throw h.invalidParameterError("options","plain object",e);return this}function Xl(e){if(!h.object(e)||!Array.isArray(e.kernel)||!h.integer(e.width)||!h.integer(e.height)||!h.inRange(e.width,3,1001)||!h.inRange(e.height,3,1001)||e.height*e.width!==e.kernel.length)throw new Error("Invalid convolution kernel");return h.integer(e.scale)||(e.scale=e.kernel.reduce((t,r)=>t+r,0)),e.scale<1&&(e.scale=1),h.integer(e.offset)||(e.offset=0),this.options.convKernel=e,this}function Kl(e,t){if(!h.defined(e))this.options.threshold=128;else if(h.bool(e))this.options.threshold=e?128:0;else if(h.integer(e)&&h.inRange(e,0,255))this.options.threshold=e;else throw h.invalidParameterError("threshold","integer between 0 and 255",e);return!h.object(t)||t.greyscale===!0||t.grayscale===!0?this.options.thresholdGrayscale=!0:this.options.thresholdGrayscale=!1,this}function Ql(e,t,r){if(this.options.boolean=this._createInputDescriptor(e,r),h.string(t)&&h.inArray(t,["and","or","eor"]))this.options.booleanOp=t;else throw h.invalidParameterError("operator","one of: and, or, eor",t);return this}function Yl(e,t){if(!h.defined(e)&&h.number(t)?e=1:h.number(e)&&!h.defined(t)&&(t=0),!h.defined(e))this.options.linearA=[];else if(h.number(e))this.options.linearA=[e];else if(Array.isArray(e)&&e.length&&e.every(h.number))this.options.linearA=e;else throw h.invalidParameterError("a","number or array of numbers",e);if(!h.defined(t))this.options.linearB=[];else if(h.number(t))this.options.linearB=[t];else if(Array.isArray(t)&&t.length&&t.every(h.number))this.options.linearB=t;else throw h.invalidParameterError("b","number or array of numbers",t);if(this.options.linearA.length!==this.options.linearB.length)throw new Error("Expected a and b to be arrays of the same length");return this}function Jl(e){if(!Array.isArray(e))throw h.invalidParameterError("inputMatrix","array",e);if(e.length!==3&&e.length!==4)throw h.invalidParameterError("inputMatrix","3x3 or 4x4 array",e.length);let t=e.flat().map(Number);if(t.length!==9&&t.length!==16)throw h.invalidParameterError("inputMatrix","cardinality of 9 or 16",t.length);return this.options.recombMatrix=t,this}function Zl(e){if(!h.plainObject(e))throw h.invalidParameterError("options","plain object",e);if("brightness"in e)if(h.number(e.brightness)&&e.brightness>=0)this.options.brightness=e.brightness;else throw h.invalidParameterError("brightness","number above zero",e.brightness);if("saturation"in e)if(h.number(e.saturation)&&e.saturation>=0)this.options.saturation=e.saturation;else throw h.invalidParameterError("saturation","number above zero",e.saturation);if("hue"in e)if(h.integer(e.hue))this.options.hue=e.hue%360;else throw h.invalidParameterError("hue","number",e.hue);if("lightness"in e)if(h.number(e.lightness))this.options.lightness=e.lightness;else throw h.invalidParameterError("lightness","number",e.lightness);return this}vi.exports=e=>{Object.assign(e.prototype,{autoOrient:Tl,rotate:Ll,flip:Cl,flop:Bl,affine:Fl,sharpen:_l,erode:xi,dilate:yi,median:ql,blur:Ol,flatten:Dl,unflatten:Ul,gamma:zl,negate:Hl,normalise:Gl,normalize:Wl,clahe:Vl,convolve:Xl,threshold:Kl,boolean:Ql,linear:Yl,recomb:Jl,modulate:Zl})}});var Ai=S((Nf,Si)=>{var or=Object.defineProperty,ec=Object.getOwnPropertyDescriptor,tc=Object.getOwnPropertyNames,rc=Object.prototype.hasOwnProperty,nc=(e,t)=>{for(var r in t)or(e,r,{get:t[r],enumerable:!0})},ic=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of tc(t))!rc.call(e,i)&&i!==r&&or(e,i,{get:()=>t[i],enumerable:!(n=ec(t,i))||n.enumerable});return e},ac=e=>ic(or({},"__esModule",{value:!0}),e),Pi={};nc(Pi,{default:()=>yc});Si.exports=ac(Pi);var ne={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]},Ii=Object.create(null);for(let e in ne)Object.hasOwn(ne,e)&&(Ii[ne[e]]=e);var W={to:{},get:{}};W.get=function(e){let t=e.slice(0,3).toLowerCase(),r,n;switch(t){case"hsl":{r=W.get.hsl(e),n="hsl";break}case"hwb":{r=W.get.hwb(e),n="hwb";break}default:{r=W.get.rgb(e),n="rgb";break}}return r?{model:n,value:r}:null};W.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+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[\s,|/]\s*([+-]?[\d.]+)(%?)\s*)?\)$/,i=/^rgba?\(\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*,?\s*([+-]?[\d.]+)%\s*(?:[\s,|/]\s*([+-]?[\d.]+)(%?)\s*)?\)$/,a=/^(\w+)$/,o=[0,0,0,1],s,c,f;if(s=e.match(r)){for(f=s[2],s=s[1],c=0;c<3;c++){let d=c*2;o[c]=Number.parseInt(s.slice(d,d+2),16)}f&&(o[3]=Number.parseInt(f,16)/255)}else if(s=e.match(t)){for(s=s[1],f=s[3],c=0;c<3;c++)o[c]=Number.parseInt(s[c]+s[c],16);f&&(o[3]=Number.parseInt(f+f,16)/255)}else if(s=e.match(n)){for(c=0;c<3;c++)o[c]=Number.parseInt(s[c+1],10);s[4]&&(o[3]=s[5]?Number.parseFloat(s[4])*.01:Number.parseFloat(s[4]))}else if(s=e.match(i)){for(c=0;c<3;c++)o[c]=Math.round(Number.parseFloat(s[c+1])*2.55);s[4]&&(o[3]=s[5]?Number.parseFloat(s[4])*.01:Number.parseFloat(s[4]))}else return(s=e.match(a))?s[1]==="transparent"?[0,0,0,0]:Object.hasOwn(ne,s[1])?(o=ne[s[1]],o[3]=1,o):null:null;for(c=0;c<3;c++)o[c]=de(o[c],0,255);return o[3]=de(o[3],0,1),o};W.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*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,r=e.match(t);if(r){let n=Number.parseFloat(r[4]),i=(Number.parseFloat(r[1])%360+360)%360,a=de(Number.parseFloat(r[2]),0,100),o=de(Number.parseFloat(r[3]),0,100),s=de(Number.isNaN(n)?1:n,0,1);return[i,a,o,s]}return null};W.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*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,r=e.match(t);if(r){let n=Number.parseFloat(r[4]),i=(Number.parseFloat(r[1])%360+360)%360,a=de(Number.parseFloat(r[2]),0,100),o=de(Number.parseFloat(r[3]),0,100),s=de(Number.isNaN(n)?1:n,0,1);return[i,a,o,s]}return null};W.to.hex=function(...e){return"#"+mt(e[0])+mt(e[1])+mt(e[2])+(e[3]<1?mt(Math.round(e[3]*255)):"")};W.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]+")"};W.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]+")"};W.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]+")"};W.to.hwb=function(...e){let t="";return e.length>=4&&e[3]!==1&&(t=", "+e[3]),"hwb("+e[0]+", "+e[1]+"%, "+e[2]+"%"+t+")"};W.to.keyword=function(...e){return Ii[e.slice(0,3)]};function de(e,t,r){return Math.min(Math.max(t,e),r)}function mt(e){let t=Math.round(e).toString(16).toUpperCase();return t.length<2?"0"+t:t}var Se=W,Ni={};for(let e of Object.keys(ne))Ni[ne[e]]=e;var p={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"]}},ve=p,le=(6/29)**3;function ke(e){let t=e>.0031308?1.055*e**.4166666666666667-.055:e*12.92;return Math.min(Math.max(0,t),1)}function je(e){return e>.04045?((e+.055)/1.055)**2.4:e/12.92}for(let e of Object.keys(p)){if(!("channels"in p[e]))throw new Error("missing channels property: "+e);if(!("labels"in p[e]))throw new Error("missing channel labels property: "+e);if(p[e].labels.length!==p[e].channels)throw new Error("channel and label counts mismatch: "+e);let{channels:t,labels:r}=p[e];delete p[e].channels,delete p[e].labels,Object.defineProperty(p[e],"channels",{value:t}),Object.defineProperty(p[e],"labels",{value:r})}p.rgb.hsl=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=a-i,s,c;switch(a){case i:{s=0;break}case t:{s=(r-n)/o;break}case r:{s=2+(n-t)/o;break}case n:{s=4+(t-r)/o;break}}s=Math.min(s*60,360),s<0&&(s+=360);let f=(i+a)/2;return a===i?c=0:f<=.5?c=o/(a+i):c=o/(2-a-i),[s,c*100,f*100]};p.rgb.hsv=function(e){let t,r,n,i,a,o=e[0]/255,s=e[1]/255,c=e[2]/255,f=Math.max(o,s,c),d=f-Math.min(o,s,c),m=function(g){return(f-g)/6/d+1/2};if(d===0)i=0,a=0;else{switch(a=d/f,t=m(o),r=m(s),n=m(c),f){case o:{i=n-r;break}case s:{i=1/3+t-n;break}case c:{i=2/3+r-t;break}}i<0?i+=1:i>1&&(i-=1)}return[i*360,a*100,f*100]};p.rgb.hwb=function(e){let t=e[0],r=e[1],n=e[2],i=p.rgb.hsl(e)[0],a=1/255*Math.min(t,Math.min(r,n));return n=1-1/255*Math.max(t,Math.max(r,n)),[i,a*100,n*100]};p.rgb.oklab=function(e){let t=je(e[0]/255),r=je(e[1]/255),n=je(e[2]/255),i=Math.cbrt(.4122214708*t+.5363325363*r+.0514459929*n),a=Math.cbrt(.2119034982*t+.6806995451*r+.1073969566*n),o=Math.cbrt(.0883024619*t+.2817188376*r+.6299787005*n),s=.2104542553*i+.793617785*a-.0040720468*o,c=1.9779984951*i-2.428592205*a+.4505937099*o,f=.0259040371*i+.7827717662*a-.808675766*o;return[s*100,c*100,f*100]};p.rgb.cmyk=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,i=Math.min(1-t,1-r,1-n),a=(1-t-i)/(1-i)||0,o=(1-r-i)/(1-i)||0,s=(1-n-i)/(1-i)||0;return[a*100,o*100,s*100,i*100]};function oc(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}p.rgb.keyword=function(e){let t=Ni[e];if(t)return t;let r=Number.POSITIVE_INFINITY,n;for(let i of Object.keys(ne)){let a=ne[i],o=oc(e,a);o<r&&(r=o,n=i)}return n};p.keyword.rgb=function(e){return ne[e]};p.rgb.xyz=function(e){let t=je(e[0]/255),r=je(e[1]/255),n=je(e[2]/255),i=t*.4124564+r*.3575761+n*.1804375,a=t*.2126729+r*.7151522+n*.072175,o=t*.0193339+r*.119192+n*.9503041;return[i*100,a*100,o*100]};p.rgb.lab=function(e){let t=p.rgb.xyz(e),r=t[0],n=t[1],i=t[2];r/=95.047,n/=100,i/=108.883,r=r>le?r**(1/3):7.787*r+16/116,n=n>le?n**(1/3):7.787*n+16/116,i=i>le?i**(1/3):7.787*i+16/116;let a=116*n-16,o=500*(r-n),s=200*(n-i);return[a,o,s]};p.hsl.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,i,a;if(r===0)return a=n*255,[a,a,a];let o=n<.5?n*(1+r):n+r-n*r,s=2*n-o,c=[0,0,0];for(let f=0;f<3;f++)i=t+1/3*-(f-1),i<0&&i++,i>1&&i--,6*i<1?a=s+(o-s)*6*i:2*i<1?a=o:3*i<2?a=s+(o-s)*(2/3-i)*6:a=s,c[f]=a*255;return c};p.hsl.hsv=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,i=r,a=Math.max(n,.01);n*=2,r*=n<=1?n:2-n,i*=a<=1?a:2-a;let o=(n+r)/2,s=n===0?2*i/(a+i):2*r/(n+r);return[t,s*100,o*100]};p.hsv.rgb=function(e){let t=e[0]/60,r=e[1]/100,n=e[2]/100,i=Math.floor(t)%6,a=t-Math.floor(t),o=255*n*(1-r),s=255*n*(1-r*a),c=255*n*(1-r*(1-a));switch(n*=255,i){case 0:return[n,c,o];case 1:return[s,n,o];case 2:return[o,n,c];case 3:return[o,s,n];case 4:return[c,o,n];case 5:return[n,o,s]}};p.hsv.hsl=function(e){let t=e[0],r=e[1]/100,n=e[2]/100,i=Math.max(n,.01),a,o;o=(2-r)*n;let s=(2-r)*i;return a=r*i,a/=s<=1?s:2-s,a=a||0,o/=2,[t,a*100,o*100]};p.hwb.rgb=function(e){let t=e[0]/360,r=e[1]/100,n=e[2]/100,i=r+n,a;i>1&&(r/=i,n/=i);let o=Math.floor(6*t),s=1-n;a=6*t-o,(o&1)!==0&&(a=1-a);let c=r+a*(s-r),f,d,m;switch(o){default:case 6:case 0:{f=s,d=c,m=r;break}case 1:{f=c,d=s,m=r;break}case 2:{f=r,d=s,m=c;break}case 3:{f=r,d=c,m=s;break}case 4:{f=c,d=r,m=s;break}case 5:{f=s,d=r,m=c;break}}return[f*255,d*255,m*255]};p.cmyk.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,i=e[3]/100,a=1-Math.min(1,t*(1-i)+i),o=1-Math.min(1,r*(1-i)+i),s=1-Math.min(1,n*(1-i)+i);return[a*255,o*255,s*255]};p.xyz.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,i,a,o;return i=t*3.2404542+r*-1.5371385+n*-.4985314,a=t*-.969266+r*1.8760108+n*.041556,o=t*.0556434+r*-.2040259+n*1.0572252,i=ke(i),a=ke(a),o=ke(o),[i*255,a*255,o*255]};p.xyz.lab=function(e){let t=e[0],r=e[1],n=e[2];t/=95.047,r/=100,n/=108.883,t=t>le?t**(1/3):7.787*t+16/116,r=r>le?r**(1/3):7.787*r+16/116,n=n>le?n**(1/3):7.787*n+16/116;let i=116*r-16,a=500*(t-r),o=200*(r-n);return[i,a,o]};p.xyz.oklab=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,i=Math.cbrt(.8189330101*t+.3618667424*r-.1288597137*n),a=Math.cbrt(.0329845436*t+.9293118715*r+.0361456387*n),o=Math.cbrt(.0482003018*t+.2643662691*r+.633851707*n),s=.2104542553*i+.793617785*a-.0040720468*o,c=1.9779984951*i-2.428592205*a+.4505937099*o,f=.0259040371*i+.7827717662*a-.808675766*o;return[s*100,c*100,f*100]};p.oklab.oklch=function(e){return p.lab.lch(e)};p.oklab.xyz=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,i=(.999999998*t+.396337792*r+.215803758*n)**3,a=(1.000000008*t-.105561342*r-.063854175*n)**3,o=(1.000000055*t-.089484182*r-1.291485538*n)**3,s=1.227013851*i-.55779998*a+.281256149*o,c=-.040580178*i+1.11225687*a-.071676679*o,f=-.076381285*i-.421481978*a+1.58616322*o;return[s*100,c*100,f*100]};p.oklab.rgb=function(e){let t=e[0]/100,r=e[1]/100,n=e[2]/100,i=(t+.3963377774*r+.2158037573*n)**3,a=(t-.1055613458*r-.0638541728*n)**3,o=(t-.0894841775*r-1.291485548*n)**3,s=ke(4.0767416621*i-3.3077115913*a+.2309699292*o),c=ke(-1.2684380046*i+2.6097574011*a-.3413193965*o),f=ke(-.0041960863*i-.7034186147*a+1.707614701*o);return[s*255,c*255,f*255]};p.oklch.oklab=function(e){return p.lch.lab(e)};p.lab.xyz=function(e){let t=e[0],r=e[1],n=e[2],i,a,o;a=(t+16)/116,i=r/500+a,o=a-n/200;let s=a**3,c=i**3,f=o**3;return a=s>le?s:(a-16/116)/7.787,i=c>le?c:(i-16/116)/7.787,o=f>le?f:(o-16/116)/7.787,i*=95.047,a*=100,o*=108.883,[i,a,o]};p.lab.lch=function(e){let t=e[0],r=e[1],n=e[2],i;i=Math.atan2(n,r)*360/2/Math.PI,i<0&&(i+=360);let o=Math.sqrt(r*r+n*n);return[t,o,i]};p.lch.lab=function(e){let t=e[0],r=e[1],i=e[2]/360*2*Math.PI,a=r*Math.cos(i),o=r*Math.sin(i);return[t,a,o]};p.rgb.ansi16=function(e,t=null){let[r,n,i]=e,a=t===null?p.rgb.hsv(e)[2]:t;if(a=Math.round(a/50),a===0)return 30;let o=30+(Math.round(i/255)<<2|Math.round(n/255)<<1|Math.round(r/255));return a===2&&(o+=60),o};p.hsv.ansi16=function(e){return p.rgb.ansi16(p.hsv.rgb(e),e[2])};p.rgb.ansi256=function(e){let t=e[0],r=e[1],n=e[2];return t>>4===r>>4&&r>>4===n>>4?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5)};p.ansi16.rgb=function(e){e=e[0];let t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];let r=(Math.trunc(e>50)+1)*.5,n=(t&1)*r*255,i=(t>>1&1)*r*255,a=(t>>2&1)*r*255;return[n,i,a]};p.ansi256.rgb=function(e){if(e=e[0],e>=232){let a=(e-232)*10+8;return[a,a,a]}e-=16;let t,r=Math.floor(e/36)/5*255,n=Math.floor((t=e%36)/6)/5*255,i=t%6/5*255;return[r,n,i]};p.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};p.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];t[0].length===3&&(r=[...r].map(s=>s+s).join(""));let n=Number.parseInt(r,16),i=n>>16&255,a=n>>8&255,o=n&255;return[i,a,o]};p.rgb.hcg=function(e){let t=e[0]/255,r=e[1]/255,n=e[2]/255,i=Math.max(Math.max(t,r),n),a=Math.min(Math.min(t,r),n),o=i-a,s,c=o<1?a/(1-o):0;return o<=0?s=0:i===t?s=(r-n)/o%6:i===r?s=2+(n-t)/o:s=4+(t-r)/o,s/=6,s%=1,[s*360,o*100,c*100]};p.hsl.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=r<.5?2*t*r:2*t*(1-r),i=0;return n<1&&(i=(r-.5*n)/(1-n)),[e[0],n*100,i*100]};p.hsv.hcg=function(e){let t=e[1]/100,r=e[2]/100,n=t*r,i=0;return n<1&&(i=(r-n)/(1-n)),[e[0],n*100,i*100]};p.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 i=[0,0,0],a=t%1*6,o=a%1,s=1-o,c=0;switch(Math.floor(a)){case 0:{i[0]=1,i[1]=o,i[2]=0;break}case 1:{i[0]=s,i[1]=1,i[2]=0;break}case 2:{i[0]=0,i[1]=1,i[2]=o;break}case 3:{i[0]=0,i[1]=s,i[2]=1;break}case 4:{i[0]=o,i[1]=0,i[2]=1;break}default:i[0]=1,i[1]=0,i[2]=s}return c=(1-r)*n,[(r*i[0]+c)*255,(r*i[1]+c)*255,(r*i[2]+c)*255]};p.hcg.hsv=function(e){let t=e[1]/100,r=e[2]/100,n=t+r*(1-t),i=0;return n>0&&(i=t/n),[e[0],i*100,n*100]};p.hcg.hsl=function(e){let t=e[1]/100,n=e[2]/100*(1-t)+.5*t,i=0;return n>0&&n<.5?i=t/(2*n):n>=.5&&n<1&&(i=t/(2*(1-n))),[e[0],i*100,n*100]};p.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]};p.hwb.hcg=function(e){let t=e[1]/100,n=1-e[2]/100,i=n-t,a=0;return i<1&&(a=(n-i)/(1-i)),[e[0],i*100,a*100]};p.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};p.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};p.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};p.gray.hsl=function(e){return[0,0,e[0]]};p.gray.hsv=p.gray.hsl;p.gray.hwb=function(e){return[0,100,e[0]]};p.gray.cmyk=function(e){return[0,0,0,e[0]]};p.gray.lab=function(e){return[e[0],0,0]};p.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};p.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]};function sc(){let e={},t=Object.keys(ve);for(let{length:r}=t,n=0;n<r;n++)e[t[n]]={distance:-1,parent:null};return e}function lc(e){let t=sc(),r=[e];for(t[e].distance=0;r.length>0;){let n=r.pop(),i=Object.keys(ve[n]);for(let{length:a}=i,o=0;o<a;o++){let s=i[o],c=t[s];c.distance===-1&&(c.distance=t[n].distance+1,c.parent=n,r.unshift(s))}}return t}function cc(e,t){return function(r){return t(e(r))}}function uc(e,t){let r=[t[e].parent,e],n=ve[t[e].parent][e],i=t[e].parent;for(;t[i].parent;)r.unshift(t[i].parent),n=cc(ve[t[i].parent][i],n),i=t[i].parent;return n.conversion=r,n}function fc(e){let t=lc(e),r={},n=Object.keys(t);for(let{length:i}=n,a=0;a<i;a++){let o=n[a];t[o].parent!==null&&(r[o]=uc(o,t))}return r}var hc=fc,Ae={},dc=Object.keys(ve);function mc(e){let t=function(...r){let n=r[0];return n==null?n:(n.length>1&&(r=n),e(r))};return"conversion"in e&&(t.conversion=e.conversion),t}function gc(e){let t=function(...r){let n=r[0];if(n==null)return n;n.length>1&&(r=n);let i=e(r);if(typeof i=="object")for(let{length:a}=i,o=0;o<a;o++)i[o]=Math.round(i[o]);return i};return"conversion"in e&&(t.conversion=e.conversion),t}for(let e of dc){Ae[e]={},Object.defineProperty(Ae[e],"channels",{value:ve[e].channels}),Object.defineProperty(Ae[e],"labels",{value:ve[e].labels});let t=hc(e),r=Object.keys(t);for(let n of r){let i=t[n];Ae[e][n]=gc(i),Ae[e][n].raw=mc(i)}}var V=Ae,Ri=["keyword","gray","hex"],nr={};for(let e of Object.keys(V))nr[[...V[e].labels].sort().join("")]=e;var ir={};function O(e,t){if(!(this instanceof O))return new O(e,t);if(t&&t in Ri&&(t=null),t&&!(t in V))throw new 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 O)this.model=e.model,this.color=[...e.color],this.valpha=e.valpha;else if(typeof e=="string"){let i=Se.get(e);if(i===null)throw new Error("Unable to parse color from string: "+e);this.model=i.model,n=V[this.model].channels,this.color=i.value.slice(0,n),this.valpha=typeof i.value[n]=="number"?i.value[n]:1}else if(e.length>0){this.model=t||"rgb",n=V[this.model].channels;let i=Array.prototype.slice.call(e,0,n);this.color=ar(i,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 i=Object.keys(e);"alpha"in e&&(i.splice(i.indexOf("alpha"),1),this.valpha=typeof e.alpha=="number"?e.alpha:0);let a=i.sort().join("");if(!(a in nr))throw new Error("Unable to parse color from object: "+JSON.stringify(e));this.model=nr[a];let{labels:o}=V[this.model],s=[];for(r=0;r<o.length;r++)s.push(e[o[r]]);this.color=ar(s)}if(ir[this.model])for(n=V[this.model].channels,r=0;r<n;r++){let i=ir[this.model][r];i&&(this.color[r]=i(this.color[r]))}this.valpha=Math.max(0,Math.min(1,this.valpha)),Object.freeze&&Object.freeze(this)}O.prototype={toString(){return this.string()},toJSON(){return this[this.model]()},string(e){let t=this.model in Se.to?this:this.rgb();t=t.round(typeof e=="number"?e:1);let r=t.valpha===1?t.color:[...t.color,this.valpha];return Se.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 Se.to.rgb.percent(...r)},array(){return this.valpha===1?[...this.color]:[...this.color,this.valpha]},object(){let e={},{channels:t}=V[this.model],{labels:r}=V[this.model];for(let n=0;n<t;n++)e[r[n]]=this.color[n];return this.valpha!==1&&(e.alpha=this.valpha),e},unitArray(){let e=this.rgb().color;return e[0]/=255,e[1]/=255,e[2]/=255,this.valpha!==1&&e.push(this.valpha),e},unitObject(){let e=this.rgb().object();return e.r/=255,e.g/=255,e.b/=255,this.valpha!==1&&(e.alpha=this.valpha),e},round(e){return e=Math.max(e||0,0),new O([...this.color.map(pc(e)),this.valpha],this.model)},alpha(e){return e!==void 0?new O([...this.color,Math.max(0,Math.min(1,e))],this.model):this.valpha},red:B("rgb",0,q(255)),green:B("rgb",1,q(255)),blue:B("rgb",2,q(255)),hue:B(["hsl","hsv","hsl","hwb","hcg"],0,e=>(e%360+360)%360),saturationl:B("hsl",1,q(100)),lightness:B("hsl",2,q(100)),saturationv:B("hsv",1,q(100)),value:B("hsv",2,q(100)),chroma:B("hcg",1,q(100)),gray:B("hcg",2,q(100)),white:B("hwb",1,q(100)),wblack:B("hwb",2,q(100)),cyan:B("cmyk",0,q(100)),magenta:B("cmyk",1,q(100)),yellow:B("cmyk",2,q(100)),black:B("cmyk",3,q(100)),x:B("xyz",0,q(95.047)),y:B("xyz",1,q(100)),z:B("xyz",2,q(108.833)),l:B("lab",0,q(100)),a:B("lab",1),b:B("lab",2),keyword(e){return e!==void 0?new O(e):V[this.model].keyword(this.color)},hex(e){return e!==void 0?new O(e):Se.to.hex(...this.rgb().round().color)},hexa(e){if(e!==void 0)return new O(e);let t=this.rgb().round().color,r=Math.round(this.valpha*255).toString(16).toUpperCase();return r.length===1&&(r="0"+r),Se.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 i=n/255;t[r]=i<=.04045?i/12.92:((i+.055)/1.055)**2.4}return .2126*t[0]+.7152*t[1]+.0722*t[2]},contrast(e){let t=this.luminosity(),r=e.luminosity();return t>r?(t+.05)/(r+.05):(r+.05)/(t+.05)},level(e){let t=this.contrast(e);return t>=7?"AAA":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]*.3+e[1]*.59+e[2]*.11;return O.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 new Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof e);let r=e.rgb(),n=this.rgb(),i=t===void 0?.5:t,a=2*i-1,o=r.alpha()-n.alpha(),s=((a*o===-1?a:(a+o)/(1+a*o))+1)/2,c=1-s;return O.rgb(s*r.red()+c*n.red(),s*r.green()+c*n.green(),s*r.blue()+c*n.blue(),r.alpha()*i+n.alpha()*(1-i))}};for(let e of Object.keys(V)){if(Ri.includes(e))continue;let{channels:t}=V[e];O.prototype[e]=function(...r){return this.model===e?new O(this):r.length>0?new O(r,e):new O([...wc(V[this.model][e].raw(this.color)),this.valpha],e)},O[e]=function(...r){let n=r[0];return typeof n=="number"&&(n=ar(r,t)),new O(n,e)}}function bc(e,t){return Number(e.toFixed(t))}function pc(e){return function(t){return bc(t,e)}}function B(e,t,r){e=Array.isArray(e)?e:[e];for(let n of e)(ir[n]||=[])[t]=r;return e=e[0],function(n){let i;return n!==void 0?(r&&(n=r(n)),i=this[e](),i.color[t]=n,i):(i=this[e]().color[t],r&&(i=r(i)),i)}}function q(e){return function(t){return Math.max(0,Math.min(e,t))}}function wc(e){return Array.isArray(e)?e:[e]}function ar(e,t){for(let r=0;r<t;r++)typeof e[r]!="number"&&(e[r]=0);return e}var yc=O});var ji=S((Rf,ki)=>{ki.exports=Ai().default});var Ti=S((Sf,Li)=>{var xc=ji(),ce=J(),Mi={multiband:"multiband","b-w":"b-w",bw:"b-w",cmyk:"cmyk",srgb:"srgb"};function vc(e){return this._setBackgroundColourOption("tint",e),this}function Ec(e){return this.options.greyscale=ce.bool(e)?e:!0,this}function Pc(e){return this.greyscale(e)}function Ic(e){if(!ce.string(e))throw ce.invalidParameterError("colourspace","string",e);return this.options.colourspacePipeline=e,this}function Nc(e){return this.pipelineColourspace(e)}function Rc(e){if(!ce.string(e))throw ce.invalidParameterError("colourspace","string",e);return this.options.colourspace=e,this}function Sc(e){return this.toColourspace(e)}function $i(e){if(ce.object(e)||ce.string(e)&&e.length>=3&&e.length<=200){let t=xc(e);return[t.red(),t.green(),t.blue(),Math.round(t.alpha()*255)]}else throw ce.invalidParameterError("background","object or string",e)}function Ac(e,t){ce.defined(t)&&(this.options[e]=$i(t))}Li.exports=e=>{Object.assign(e.prototype,{tint:vc,greyscale:Ec,grayscale:Pc,pipelineColourspace:Ic,pipelineColorspace:Nc,toColourspace:Rc,toColorspace:Sc,_getBackgroundColourOption:$i,_setBackgroundColourOption:Ac}),e.colourspace=Mi,e.colorspace=Mi}});var Bi=S((Af,Ci)=>{var ie=J(),kc={and:"and",or:"or",eor:"eor"};function jc(){return this.options.removeAlpha=!0,this}function Mc(e){if(ie.defined(e))if(ie.number(e)&&ie.inRange(e,0,1))this.options.ensureAlpha=e;else throw ie.invalidParameterError("alpha","number between 0 and 1",e);else this.options.ensureAlpha=1;return this}function $c(e){let t={red:0,green:1,blue:2,alpha:3};if(Object.keys(t).includes(e)&&(e=t[e]),ie.integer(e)&&ie.inRange(e,0,4))this.options.extractChannel=e;else throw ie.invalidParameterError("channel","integer or one of: red, green, blue, alpha",e);return this}function Lc(e,t){return Array.isArray(e)?e.forEach(function(r){this.options.joinChannelIn.push(this._createInputDescriptor(r,t))},this):this.options.joinChannelIn.push(this._createInputDescriptor(e,t)),this}function Tc(e){if(ie.string(e)&&ie.inArray(e,["and","or","eor"]))this.options.bandBoolOp=e;else throw ie.invalidParameterError("boolOp","one of: and, or, eor",e);return this}Ci.exports=e=>{Object.assign(e.prototype,{removeAlpha:jc,ensureAlpha:Mc,extractChannel:$c,joinChannel:Lc,bandbool:Tc}),e.bool=kc}});var Di=S((kf,Oi)=>{var sr=require("node:path"),l=J(),Me=He(),Fi=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"]]),Cc=/\.(jp[2x]|j2[kc])$/i,_i=()=>new Error("JP2 output requires libvips with support for OpenJPEG"),qi=e=>1<<31-Math.clz32(Math.ceil(Math.log2(e)));function Bc(e,t){let r;if(l.string(e)?l.string(this.options.input.file)&&sr.resolve(this.options.input.file)===sr.resolve(e)?r=new Error("Cannot use same file for input and output"):Cc.test(sr.extname(e))&&!this.constructor.format.jp2k.output.file&&(r=_i()):r=new Error("Missing output file path"),r)if(l.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 Fc(e,t){l.object(e)?this._setBooleanOption("resolveWithObject",e.resolveWithObject):this.options.resolveWithObject&&(this.options.resolveWithObject=!1),this.options.fileOut="";let r=Error();return this._pipeline(l.fn(e)?e:t,r)}function _c(){return this.options.keepMetadata|=1,this}function qc(e){if(l.object(e))for(let[t,r]of Object.entries(e))if(l.object(r))for(let[n,i]of Object.entries(r))if(l.string(i))this.options.withExif[`exif-${t.toLowerCase()}-${n}`]=i;else throw l.invalidParameterError(`${t}.${n}`,"string",i);else throw l.invalidParameterError(t,"object",r);else throw l.invalidParameterError("exif","object",e);return this.options.withExifMerge=!1,this.keepExif()}function Oc(e){return this.withExif(e),this.options.withExifMerge=!0,this}function Dc(){return this.options.keepMetadata|=8,this}function Uc(e,t){if(l.string(e))this.options.withIccProfile=e;else throw l.invalidParameterError("icc","string",e);if(this.keepIccProfile(),l.object(t)&&l.defined(t.attach))if(l.bool(t.attach))t.attach||(this.options.keepMetadata&=-9);else throw l.invalidParameterError("attach","boolean",t.attach);return this}function zc(){return this.options.keepMetadata|=2,this}function Hc(e){if(l.string(e)&&e.length>0)this.options.withXmp=e,this.options.keepMetadata|=2;else throw l.invalidParameterError("xmp","non-empty string",e);return this}function Gc(){return this.options.keepMetadata=31,this}function Wc(e){if(this.keepMetadata(),this.withIccProfile("srgb"),l.object(e)){if(l.defined(e.orientation))if(l.integer(e.orientation)&&l.inRange(e.orientation,1,8))this.options.withMetadataOrientation=e.orientation;else throw l.invalidParameterError("orientation","integer between 1 and 8",e.orientation);if(l.defined(e.density))if(l.number(e.density)&&e.density>0)this.options.withMetadataDensity=e.density;else throw l.invalidParameterError("density","positive number",e.density);l.defined(e.icc)&&this.withIccProfile(e.icc),l.defined(e.exif)&&this.withExifMerge(e.exif)}return this}function Vc(e,t){let r=Fi.get((l.object(e)&&l.string(e.id)?e.id:e).toLowerCase());if(!r)throw l.invalidParameterError("format",`one of: ${[...Fi.keys()].join(", ")}`,e);return this[r](t)}function Xc(e){if(l.object(e)){if(l.defined(e.quality))if(l.integer(e.quality)&&l.inRange(e.quality,1,100))this.options.jpegQuality=e.quality;else throw l.invalidParameterError("quality","integer between 1 and 100",e.quality);if(l.defined(e.progressive)&&this._setBooleanOption("jpegProgressive",e.progressive),l.defined(e.chromaSubsampling))if(l.string(e.chromaSubsampling)&&l.inArray(e.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jpegChromaSubsampling=e.chromaSubsampling;else throw l.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",e.chromaSubsampling);let t=l.bool(e.optimizeCoding)?e.optimizeCoding:e.optimiseCoding;if(l.defined(t)&&this._setBooleanOption("jpegOptimiseCoding",t),l.defined(e.mozjpeg))if(l.bool(e.mozjpeg))e.mozjpeg&&(this.options.jpegTrellisQuantisation=!0,this.options.jpegOvershootDeringing=!0,this.options.jpegOptimiseScans=!0,this.options.jpegProgressive=!0,this.options.jpegQuantisationTable=3);else throw l.invalidParameterError("mozjpeg","boolean",e.mozjpeg);let r=l.bool(e.trellisQuantization)?e.trellisQuantization:e.trellisQuantisation;l.defined(r)&&this._setBooleanOption("jpegTrellisQuantisation",r),l.defined(e.overshootDeringing)&&this._setBooleanOption("jpegOvershootDeringing",e.overshootDeringing);let n=l.bool(e.optimizeScans)?e.optimizeScans:e.optimiseScans;l.defined(n)&&(this._setBooleanOption("jpegOptimiseScans",n),n&&(this.options.jpegProgressive=!0));let i=l.number(e.quantizationTable)?e.quantizationTable:e.quantisationTable;if(l.defined(i))if(l.integer(i)&&l.inRange(i,0,8))this.options.jpegQuantisationTable=i;else throw l.invalidParameterError("quantisationTable","integer between 0 and 8",i)}return this._updateFormatOut("jpeg",e)}function Kc(e){if(l.object(e)){if(l.defined(e.progressive)&&this._setBooleanOption("pngProgressive",e.progressive),l.defined(e.compressionLevel))if(l.integer(e.compressionLevel)&&l.inRange(e.compressionLevel,0,9))this.options.pngCompressionLevel=e.compressionLevel;else throw l.invalidParameterError("compressionLevel","integer between 0 and 9",e.compressionLevel);l.defined(e.adaptiveFiltering)&&this._setBooleanOption("pngAdaptiveFiltering",e.adaptiveFiltering);let t=e.colours||e.colors;if(l.defined(t))if(l.integer(t)&&l.inRange(t,2,256))this.options.pngBitdepth=qi(t);else throw l.invalidParameterError("colours","integer between 2 and 256",t);if(l.defined(e.palette)?this._setBooleanOption("pngPalette",e.palette):[e.quality,e.effort,e.colours,e.colors,e.dither].some(l.defined)&&this._setBooleanOption("pngPalette",!0),this.options.pngPalette){if(l.defined(e.quality))if(l.integer(e.quality)&&l.inRange(e.quality,0,100))this.options.pngQuality=e.quality;else throw l.invalidParameterError("quality","integer between 0 and 100",e.quality);if(l.defined(e.effort))if(l.integer(e.effort)&&l.inRange(e.effort,1,10))this.options.pngEffort=e.effort;else throw l.invalidParameterError("effort","integer between 1 and 10",e.effort);if(l.defined(e.dither))if(l.number(e.dither)&&l.inRange(e.dither,0,1))this.options.pngDither=e.dither;else throw l.invalidParameterError("dither","number between 0.0 and 1.0",e.dither)}}return this._updateFormatOut("png",e)}function Qc(e){if(l.object(e)){if(l.defined(e.quality))if(l.integer(e.quality)&&l.inRange(e.quality,1,100))this.options.webpQuality=e.quality;else throw l.invalidParameterError("quality","integer between 1 and 100",e.quality);if(l.defined(e.alphaQuality))if(l.integer(e.alphaQuality)&&l.inRange(e.alphaQuality,0,100))this.options.webpAlphaQuality=e.alphaQuality;else throw l.invalidParameterError("alphaQuality","integer between 0 and 100",e.alphaQuality);if(l.defined(e.lossless)&&this._setBooleanOption("webpLossless",e.lossless),l.defined(e.nearLossless)&&this._setBooleanOption("webpNearLossless",e.nearLossless),l.defined(e.smartSubsample)&&this._setBooleanOption("webpSmartSubsample",e.smartSubsample),l.defined(e.smartDeblock)&&this._setBooleanOption("webpSmartDeblock",e.smartDeblock),l.defined(e.preset))if(l.string(e.preset)&&l.inArray(e.preset,["default","photo","picture","drawing","icon","text"]))this.options.webpPreset=e.preset;else throw l.invalidParameterError("preset","one of: default, photo, picture, drawing, icon, text",e.preset);if(l.defined(e.effort))if(l.integer(e.effort)&&l.inRange(e.effort,0,6))this.options.webpEffort=e.effort;else throw l.invalidParameterError("effort","integer between 0 and 6",e.effort);l.defined(e.minSize)&&this._setBooleanOption("webpMinSize",e.minSize),l.defined(e.mixed)&&this._setBooleanOption("webpMixed",e.mixed)}return lr(e,this.options),this._updateFormatOut("webp",e)}function Yc(e){if(l.object(e)){l.defined(e.reuse)&&this._setBooleanOption("gifReuse",e.reuse),l.defined(e.progressive)&&this._setBooleanOption("gifProgressive",e.progressive);let t=e.colours||e.colors;if(l.defined(t))if(l.integer(t)&&l.inRange(t,2,256))this.options.gifBitdepth=qi(t);else throw l.invalidParameterError("colours","integer between 2 and 256",t);if(l.defined(e.effort))if(l.number(e.effort)&&l.inRange(e.effort,1,10))this.options.gifEffort=e.effort;else throw l.invalidParameterError("effort","integer between 1 and 10",e.effort);if(l.defined(e.dither))if(l.number(e.dither)&&l.inRange(e.dither,0,1))this.options.gifDither=e.dither;else throw l.invalidParameterError("dither","number between 0.0 and 1.0",e.dither);if(l.defined(e.interFrameMaxError))if(l.number(e.interFrameMaxError)&&l.inRange(e.interFrameMaxError,0,32))this.options.gifInterFrameMaxError=e.interFrameMaxError;else throw l.invalidParameterError("interFrameMaxError","number between 0.0 and 32.0",e.interFrameMaxError);if(l.defined(e.interPaletteMaxError))if(l.number(e.interPaletteMaxError)&&l.inRange(e.interPaletteMaxError,0,256))this.options.gifInterPaletteMaxError=e.interPaletteMaxError;else throw l.invalidParameterError("interPaletteMaxError","number between 0.0 and 256.0",e.interPaletteMaxError);if(l.defined(e.keepDuplicateFrames))if(l.bool(e.keepDuplicateFrames))this._setBooleanOption("gifKeepDuplicateFrames",e.keepDuplicateFrames);else throw l.invalidParameterError("keepDuplicateFrames","boolean",e.keepDuplicateFrames)}return lr(e,this.options),this._updateFormatOut("gif",e)}function Jc(e){if(!this.constructor.format.jp2k.output.buffer)throw _i();if(l.object(e)){if(l.defined(e.quality))if(l.integer(e.quality)&&l.inRange(e.quality,1,100))this.options.jp2Quality=e.quality;else throw l.invalidParameterError("quality","integer between 1 and 100",e.quality);if(l.defined(e.lossless))if(l.bool(e.lossless))this.options.jp2Lossless=e.lossless;else throw l.invalidParameterError("lossless","boolean",e.lossless);if(l.defined(e.tileWidth))if(l.integer(e.tileWidth)&&l.inRange(e.tileWidth,1,32768))this.options.jp2TileWidth=e.tileWidth;else throw l.invalidParameterError("tileWidth","integer between 1 and 32768",e.tileWidth);if(l.defined(e.tileHeight))if(l.integer(e.tileHeight)&&l.inRange(e.tileHeight,1,32768))this.options.jp2TileHeight=e.tileHeight;else throw l.invalidParameterError("tileHeight","integer between 1 and 32768",e.tileHeight);if(l.defined(e.chromaSubsampling))if(l.string(e.chromaSubsampling)&&l.inArray(e.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jp2ChromaSubsampling=e.chromaSubsampling;else throw l.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",e.chromaSubsampling)}return this._updateFormatOut("jp2",e)}function lr(e,t){if(l.object(e)&&l.defined(e.loop))if(l.integer(e.loop)&&l.inRange(e.loop,0,65535))t.loop=e.loop;else throw l.invalidParameterError("loop","integer between 0 and 65535",e.loop);if(l.object(e)&&l.defined(e.delay))if(l.integer(e.delay)&&l.inRange(e.delay,0,65535))t.delay=[e.delay];else if(Array.isArray(e.delay)&&e.delay.every(l.integer)&&e.delay.every(r=>l.inRange(r,0,65535)))t.delay=e.delay;else throw l.invalidParameterError("delay","integer or an array of integers between 0 and 65535",e.delay)}function Zc(e){if(l.object(e)){if(l.defined(e.quality))if(l.integer(e.quality)&&l.inRange(e.quality,1,100))this.options.tiffQuality=e.quality;else throw l.invalidParameterError("quality","integer between 1 and 100",e.quality);if(l.defined(e.bitdepth))if(l.integer(e.bitdepth)&&l.inArray(e.bitdepth,[1,2,4,8]))this.options.tiffBitdepth=e.bitdepth;else throw l.invalidParameterError("bitdepth","1, 2, 4 or 8",e.bitdepth);if(l.defined(e.tile)&&this._setBooleanOption("tiffTile",e.tile),l.defined(e.tileWidth))if(l.integer(e.tileWidth)&&e.tileWidth>0)this.options.tiffTileWidth=e.tileWidth;else throw l.invalidParameterError("tileWidth","integer greater than zero",e.tileWidth);if(l.defined(e.tileHeight))if(l.integer(e.tileHeight)&&e.tileHeight>0)this.options.tiffTileHeight=e.tileHeight;else throw l.invalidParameterError("tileHeight","integer greater than zero",e.tileHeight);if(l.defined(e.miniswhite)&&this._setBooleanOption("tiffMiniswhite",e.miniswhite),l.defined(e.pyramid)&&this._setBooleanOption("tiffPyramid",e.pyramid),l.defined(e.xres))if(l.number(e.xres)&&e.xres>0)this.options.tiffXres=e.xres;else throw l.invalidParameterError("xres","number greater than zero",e.xres);if(l.defined(e.yres))if(l.number(e.yres)&&e.yres>0)this.options.tiffYres=e.yres;else throw l.invalidParameterError("yres","number greater than zero",e.yres);if(l.defined(e.compression))if(l.string(e.compression)&&l.inArray(e.compression,["none","jpeg","deflate","packbits","ccittfax4","lzw","webp","zstd","jp2k"]))this.options.tiffCompression=e.compression;else throw l.invalidParameterError("compression","one of: none, jpeg, deflate, packbits, ccittfax4, lzw, webp, zstd, jp2k",e.compression);if(l.defined(e.bigtiff)&&this._setBooleanOption("tiffBigtiff",e.bigtiff),l.defined(e.predictor))if(l.string(e.predictor)&&l.inArray(e.predictor,["none","horizontal","float"]))this.options.tiffPredictor=e.predictor;else throw l.invalidParameterError("predictor","one of: none, horizontal, float",e.predictor);if(l.defined(e.resolutionUnit))if(l.string(e.resolutionUnit)&&l.inArray(e.resolutionUnit,["inch","cm"]))this.options.tiffResolutionUnit=e.resolutionUnit;else throw l.invalidParameterError("resolutionUnit","one of: inch, cm",e.resolutionUnit)}return this._updateFormatOut("tiff",e)}function eu(e){return this.heif({...e,compression:"av1"})}function tu(e){if(l.object(e)){if(l.string(e.compression)&&l.inArray(e.compression,["av1","hevc"]))this.options.heifCompression=e.compression;else throw l.invalidParameterError("compression","one of: av1, hevc",e.compression);if(l.defined(e.quality))if(l.integer(e.quality)&&l.inRange(e.quality,1,100))this.options.heifQuality=e.quality;else throw l.invalidParameterError("quality","integer between 1 and 100",e.quality);if(l.defined(e.lossless))if(l.bool(e.lossless))this.options.heifLossless=e.lossless;else throw l.invalidParameterError("lossless","boolean",e.lossless);if(l.defined(e.effort))if(l.integer(e.effort)&&l.inRange(e.effort,0,9))this.options.heifEffort=e.effort;else throw l.invalidParameterError("effort","integer between 0 and 9",e.effort);if(l.defined(e.chromaSubsampling))if(l.string(e.chromaSubsampling)&&l.inArray(e.chromaSubsampling,["4:2:0","4:4:4"]))this.options.heifChromaSubsampling=e.chromaSubsampling;else throw l.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",e.chromaSubsampling);if(l.defined(e.bitdepth))if(l.integer(e.bitdepth)&&l.inArray(e.bitdepth,[8,10,12])){if(e.bitdepth!==8&&this.constructor.versions.heif)throw l.invalidParameterError("bitdepth when using prebuilt binaries",8,e.bitdepth);this.options.heifBitdepth=e.bitdepth}else throw l.invalidParameterError("bitdepth","8, 10 or 12",e.bitdepth)}else throw l.invalidParameterError("options","Object",e);return this._updateFormatOut("heif",e)}function ru(e){if(l.object(e)){if(l.defined(e.quality))if(l.integer(e.quality)&&l.inRange(e.quality,1,100))this.options.jxlDistance=e.quality>=30?.1+(100-e.quality)*.09:53/3e3*e.quality*e.quality-23/20*e.quality+25;else throw l.invalidParameterError("quality","integer between 1 and 100",e.quality);else if(l.defined(e.distance))if(l.number(e.distance)&&l.inRange(e.distance,0,15))this.options.jxlDistance=e.distance;else throw l.invalidParameterError("distance","number between 0.0 and 15.0",e.distance);if(l.defined(e.decodingTier))if(l.integer(e.decodingTier)&&l.inRange(e.decodingTier,0,4))this.options.jxlDecodingTier=e.decodingTier;else throw l.invalidParameterError("decodingTier","integer between 0 and 4",e.decodingTier);if(l.defined(e.lossless))if(l.bool(e.lossless))this.options.jxlLossless=e.lossless;else throw l.invalidParameterError("lossless","boolean",e.lossless);if(l.defined(e.effort))if(l.integer(e.effort)&&l.inRange(e.effort,1,9))this.options.jxlEffort=e.effort;else throw l.invalidParameterError("effort","integer between 1 and 9",e.effort)}return lr(e,this.options),this._updateFormatOut("jxl",e)}function nu(e){if(l.object(e)&&l.defined(e.depth))if(l.string(e.depth)&&l.inArray(e.depth,["char","uchar","short","ushort","int","uint","float","complex","double","dpcomplex"]))this.options.rawDepth=e.depth;else throw l.invalidParameterError("depth","one of: char, uchar, short, ushort, int, uint, float, complex, double, dpcomplex",e.depth);return this._updateFormatOut("raw")}function iu(e){if(l.object(e)){if(l.defined(e.size))if(l.integer(e.size)&&l.inRange(e.size,1,8192))this.options.tileSize=e.size;else throw l.invalidParameterError("size","integer between 1 and 8192",e.size);if(l.defined(e.overlap))if(l.integer(e.overlap)&&l.inRange(e.overlap,0,8192)){if(e.overlap>this.options.tileSize)throw l.invalidParameterError("overlap",`<= size (${this.options.tileSize})`,e.overlap);this.options.tileOverlap=e.overlap}else throw l.invalidParameterError("overlap","integer between 0 and 8192",e.overlap);if(l.defined(e.container))if(l.string(e.container)&&l.inArray(e.container,["fs","zip"]))this.options.tileContainer=e.container;else throw l.invalidParameterError("container","one of: fs, zip",e.container);if(l.defined(e.layout))if(l.string(e.layout)&&l.inArray(e.layout,["dz","google","iiif","iiif3","zoomify"]))this.options.tileLayout=e.layout;else throw l.invalidParameterError("layout","one of: dz, google, iiif, iiif3, zoomify",e.layout);if(l.defined(e.angle))if(l.integer(e.angle)&&!(e.angle%90))this.options.tileAngle=e.angle;else throw l.invalidParameterError("angle","positive/negative multiple of 90",e.angle);if(this._setBackgroundColourOption("tileBackground",e.background),l.defined(e.depth))if(l.string(e.depth)&&l.inArray(e.depth,["onepixel","onetile","one"]))this.options.tileDepth=e.depth;else throw l.invalidParameterError("depth","one of: onepixel, onetile, one",e.depth);if(l.defined(e.skipBlanks))if(l.integer(e.skipBlanks)&&l.inRange(e.skipBlanks,-1,65535))this.options.tileSkipBlanks=e.skipBlanks;else throw l.invalidParameterError("skipBlanks","integer between -1 and 255/65535",e.skipBlanks);else l.defined(e.layout)&&e.layout==="google"&&(this.options.tileSkipBlanks=5);let t=l.bool(e.center)?e.center:e.centre;if(l.defined(t)&&this._setBooleanOption("tileCentre",t),l.defined(e.id))if(l.string(e.id))this.options.tileId=e.id;else throw l.invalidParameterError("id","string",e.id);if(l.defined(e.basename))if(l.string(e.basename))this.options.tileBasename=e.basename;else throw l.invalidParameterError("basename","string",e.basename)}if(l.inArray(this.options.formatOut,["jpeg","png","webp"]))this.options.tileFormat=this.options.formatOut;else if(this.options.formatOut!=="input")throw l.invalidParameterError("format","one of: jpeg, png, webp",this.options.formatOut);return this._updateFormatOut("dz")}function au(e){if(!l.plainObject(e))throw l.invalidParameterError("options","object",e);if(l.integer(e.seconds)&&l.inRange(e.seconds,0,3600))this.options.timeoutSeconds=e.seconds;else throw l.invalidParameterError("seconds","integer between 0 and 3600",e.seconds);return this}function ou(e,t){return l.object(t)&&t.force===!1||(this.options.formatOut=e),this}function su(e,t){if(l.bool(t))this.options[e]=t;else throw l.invalidParameterError(e,"boolean",t)}function lu(){if(!this.options.streamOut){this.options.streamOut=!0;let e=Error();this._pipeline(void 0,e)}}function cu(e,t){return typeof e=="function"?(this._isStreamInput()?this.on("finish",()=>{this._flattenBufferIn(),Me.pipeline(this.options,(r,n,i)=>{r?e(l.nativeError(r,t)):e(null,n,i)})}):Me.pipeline(this.options,(r,n,i)=>{r?e(l.nativeError(r,t)):e(null,n,i)}),this):this.options.streamOut?(this._isStreamInput()?(this.once("finish",()=>{this._flattenBufferIn(),Me.pipeline(this.options,(r,n,i)=>{r?this.emit("error",l.nativeError(r,t)):(this.emit("info",i),this.push(n)),this.push(null),this.on("end",()=>this.emit("close"))})}),this.streamInFinished&&this.emit("finish")):Me.pipeline(this.options,(r,n,i)=>{r?this.emit("error",l.nativeError(r,t)):(this.emit("info",i),this.push(n)),this.push(null),this.on("end",()=>this.emit("close"))}),this):this._isStreamInput()?new Promise((r,n)=>{this.once("finish",()=>{this._flattenBufferIn(),Me.pipeline(this.options,(i,a,o)=>{i?n(l.nativeError(i,t)):this.options.resolveWithObject?r({data:a,info:o}):r(a)})})}):new Promise((r,n)=>{Me.pipeline(this.options,(i,a,o)=>{i?n(l.nativeError(i,t)):this.options.resolveWithObject?r({data:a,info:o}):r(a)})})}Oi.exports=e=>{Object.assign(e.prototype,{toFile:Bc,toBuffer:Fc,keepExif:_c,withExif:qc,withExifMerge:Oc,keepIccProfile:Dc,withIccProfile:Uc,keepXmp:zc,withXmp:Hc,keepMetadata:Gc,withMetadata:Wc,toFormat:Vc,jpeg:Xc,jp2:Jc,png:Kc,webp:Qc,tiff:Zc,avif:eu,heif:tu,jxl:ru,gif:Yc,raw:nu,tile:iu,timeout:au,_updateFormatOut:ou,_setBooleanOption:su,_read:lu,_pipeline:cu})}});var Gi=S((jf,Hi)=>{var uu=require("node:events"),gt=rt(),Q=J(),{runtimePlatformArch:fu}=Yt(),G=He(),Ui=fu(),cr=G.libvipsVersion(),me=G.format();me.heif.output.alias=["avif","heic"];me.jpeg.output.alias=["jpe","jpg"];me.tiff.output.alias=["tif"];me.jp2k.output.alias=["j2c","j2k","jp2","jpx"];var hu={nearest:"nearest",bilinear:"bilinear",bicubic:"bicubic",locallyBoundedBicubic:"lbb",nohalo:"nohalo",vertexSplitQuadraticBasisSpline:"vsqbs"},$e={vips:cr.semver};if(!cr.isGlobal)if(cr.isWasm)try{$e=require("@img/sharp-wasm32/versions")}catch{}else try{$e=require(`@img/sharp-${Ui}/versions`)}catch{try{$e=require(`@img/sharp-libvips-${Ui}/versions`)}catch{}}$e.sharp=Kt().version;$e.heif&&me.heif&&(me.heif.input.fileSuffix=[".avif"],me.heif.output.alias=["avif"]);function zi(e){return Q.bool(e)?e?G.cache(50,20,100):G.cache(0,0,0):Q.object(e)?G.cache(e.memory,e.files,e.items):G.cache()}zi(!0);function du(e){return G.concurrency(Q.integer(e)?e:null)}gt.familySync()===gt.GLIBC&&!G._isUsingJemalloc()?G.concurrency(1):gt.familySync()===gt.MUSL&&G.concurrency()===1024&&G.concurrency(require("node:os").availableParallelism());var mu=new uu.EventEmitter;function gu(){return G.counters()}function bu(e){return G.simd(Q.bool(e)?e:null)}function pu(e){if(Q.object(e))if(Array.isArray(e.operation)&&e.operation.every(Q.string))G.block(e.operation,!0);else throw Q.invalidParameterError("operation","Array<string>",e.operation);else throw Q.invalidParameterError("options","object",e)}function wu(e){if(Q.object(e))if(Array.isArray(e.operation)&&e.operation.every(Q.string))G.block(e.operation,!1);else throw Q.invalidParameterError("operation","Array<string>",e.operation);else throw Q.invalidParameterError("options","object",e)}Hi.exports=e=>{e.cache=zi,e.concurrency=du,e.counters=gu,e.simd=bu,e.format=me,e.interpolators=hu,e.versions=$e,e.queue=mu,e.block=pu,e.unblock=wu}});var Vi=S((Mf,Wi)=>{var ue=oi();ci()(ue);gi()(ue);pi()(ue);Ei()(ue);Ti()(ue);Bi()(ue);Di()(ue);Gi()(ue);Wi.exports=ue});var qu={};Qa(qu,{DEFAULT_IMAGE_KEY:()=>X,ImageBuffer:()=>_,Pipeline:()=>_e,SeededRandom:()=>be,buildBoxKernel:()=>Ma,buildGaussianKernel:()=>wr,colorDistance:()=>Ke,createAlphaSelector:()=>oa,createBrightnessNode:()=>va,createCheckerboardNode:()=>Sa,createCircleNode:()=>ka,createCircleSelector:()=>pr,createContrastNode:()=>Ea,createConvolutionNode:()=>We,createEdgeDetectNode:()=>Ta,createExamplePipeline:()=>qa,createFillNode:()=>fa,createFractalNoiseNode:()=>ma,createGammaNode:()=>xa,createGaussianBlurNode:()=>$a,createGaussianNoiseNode:()=>Na,createGrayscaleNode:()=>ya,createImageNode:()=>j,createInvertNode:()=>wa,createLumaSelector:()=>aa,createMapNode:()=>oe,createMaskMapNode:()=>ca,createMaskedNode:()=>la,createNoiseNode:()=>Pt,createPaletteMapNode:()=>ja,createParamNode:()=>sa,createPerlinNoiseNode:()=>ga,createPixelNode:()=>mr,createRandom:()=>Je,createRandomFillNode:()=>Ia,createRectNode:()=>Aa,createRectSelector:()=>br,createResizeNode:()=>Ca,createRidgedNoiseNode:()=>pa,createSaltPepperNoiseNode:()=>Ra,createSelectionCropNode:()=>ua,createSharpenNode:()=>La,createTextNode:()=>Ba,createThresholdNode:()=>Pa,createTurbulenceNoiseNode:()=>ba,createValueNoiseNode:()=>ha,createVoronoiNoiseNode:()=>da,defineNode:()=>na,getImage:()=>vt,hexToRgba:()=>jt,hslaToRgba:()=>$t,hsvaToRgba:()=>Mt,imageToBuffer:()=>pt,loadImage:()=>Le,mergeNodeState:()=>Et,node:()=>ia,pipeline:()=>Oa,renderText:()=>wt,resizeImage:()=>Te,rgbaToHex:()=>Nr,rgbaToHsla:()=>Sr,rgbaToHsva:()=>Rr,runNode:()=>gr,runNodeImage:()=>Be,saveImage:()=>Zi,sourceFromBuffer:()=>Yi,sourceFromDataUri:()=>Qi,sourceFromEmpty:()=>Ji,sourceFromPath:()=>Xi,sourceFromUrl:()=>Ki,toRgba:()=>F});module.exports=Ya(qu);function F(e){if(typeof e=="string")return jt(e);if("v"in e)return Mt({h:e.h,s:e.s,v:e.v,a:"a"in e?e.a:1});if("l"in e)return $t({h:e.h,s:e.s,l:e.l,a:"a"in e?e.a:1});let t="a"in e?e.a:255;return{r:U(e.r),g:U(e.g),b:U(e.b),a:qe(t)}}function Nr(e){let t=U(e.r).toString(16).padStart(2,"0"),r=U(e.g).toString(16).padStart(2,"0"),n=U(e.b).toString(16).padStart(2,"0"),i=U(e.a).toString(16).padStart(2,"0");return`#${t}${r}${n}${i}`}function jt(e){let t=e.replace("#","").trim();if(t.length===3||t.length===4){let r=parseInt(t[0]+t[0],16),n=parseInt(t[1]+t[1],16),i=parseInt(t[2]+t[2],16),a=t.length===4?parseInt(t[3]+t[3],16):255;return{r,g:n,b:i,a}}if(t.length===6||t.length===8){let r=parseInt(t.slice(0,2),16),n=parseInt(t.slice(2,4),16),i=parseInt(t.slice(4,6),16),a=t.length===8?parseInt(t.slice(6,8),16):255;return{r,g:n,b:i,a}}throw new Error("Invalid hex color")}function Rr(e){let t=Y(e.r,0,255)/255,r=Y(e.g,0,255)/255,n=Y(e.b,0,255)/255,i=Math.max(t,r,n),a=Math.min(t,r,n),o=i-a,s=0;o!==0&&(i===t?s=(r-n)/o%6:i===r?s=(n-t)/o+2:s=(t-r)/o+4);let c=Qe(s*60),f=i===0?0:o/i;return{h:c,s:Math.round(f*100),v:Math.round(i*100),a:qe(e.a)}}function Mt(e){let t=Qe(e.h),r=Y(e.s,0,100)/100,n=Y(e.v,0,100)/100,i=n*r,a=i*(1-Math.abs(t/60%2-1)),o=n-i,s=0,c=0,f=0;return t<60?(s=i,c=a):t<120?(s=a,c=i):t<180?(c=i,f=a):t<240?(c=a,f=i):t<300?(s=a,f=i):(s=i,f=a),{r:U((s+o)*255),g:U((c+o)*255),b:U((f+o)*255),a:qe(e.a)}}function Sr(e){let t=Y(e.r,0,255)/255,r=Y(e.g,0,255)/255,n=Y(e.b,0,255)/255,i=Math.max(t,r,n),a=Math.min(t,r,n),o=i-a,s=0;o!==0&&(i===t?s=(r-n)/o%6:i===r?s=(n-t)/o+2:s=(t-r)/o+4);let c=(i+a)/2,f=o===0?0:o/(1-Math.abs(2*c-1));return{h:Qe(s*60),s:Math.round(f*100),l:Math.round(c*100),a:qe(e.a)}}function $t(e){let t=Qe(e.h),r=Y(e.s,0,100)/100,n=Y(e.l,0,100)/100,i=(1-Math.abs(2*n-1))*r,a=i*(1-Math.abs(t/60%2-1)),o=n-i/2,s=0,c=0,f=0;return t<60?(s=i,c=a):t<120?(s=a,c=i):t<180?(c=i,f=a):t<240?(c=a,f=i):t<300?(s=a,f=i):(s=i,f=a),{r:U((s+o)*255),g:U((c+o)*255),b:U((f+o)*255),a:qe(e.a)}}function Ke(e,t){let r=e.r-t.r,n=e.g-t.g,i=e.b-t.b;return r*r+n*n+i*i}function Y(e,t,r){return Math.max(t,Math.min(r,e))}function Qe(e){let t=e%360;return t<0?t+360:t}function U(e){return Math.round(Y(e,0,255))}function qe(e){return e<=1?U(e*255):U(e)}var Lt={rgba8:4,rgb8:3,gray8:1,rgba32f:4},_=class e{constructor(t,r,n,i){this.width=t,this.height=r,this.format=n;let a=t*r*Lt[n];if(i){if(i.length!==a)throw new Error("ImageBuffer data length mismatch");this.data=i}else this.data=n==="rgba32f"?new Float32Array(a):new Uint8Array(a)}static create(t,r,n,i){let a=new e(t,r,n);return i&&a.fill(i),a}static fromMatrix(t,r="rgba8"){if(t.length===0)throw new Error("Pixel matrix cannot be empty");let n=t.length,i=t[0]?.length??0;if(i===0)throw new Error("Pixel matrix rows cannot be empty");for(let o of t)if(o.length!==i)throw new Error("Pixel matrix rows must have consistent lengths");let a=new e(i,n,r);for(let o=0;o<n;o+=1)for(let s=0;s<i;s+=1)a.setPixel(s,o,t[o][s]);return a}clone(){let t=this.format==="rgba32f"?new Float32Array(this.data):new Uint8Array(this.data);return new e(this.width,this.height,this.format,t)}getPixel(t,r){this.assertInside(t,r);let n=(r*this.width+t)*Lt[this.format];if(this.format==="gray8"){let a=this.data[n];return{r:a,g:a,b:a,a:255}}if(this.format==="rgb8"){let a=this.data;return{r:a[n],g:a[n+1],b:a[n+2],a:255}}if(this.format==="rgba32f"){let a=this.data;return{r:K(a[n]),g:K(a[n+1]),b:K(a[n+2]),a:K(a[n+3])}}let i=this.data;return{r:i[n],g:i[n+1],b:i[n+2],a:i[n+3]}}setPixel(t,r,n){this.assertInside(t,r);let i=(r*this.width+t)*Lt[this.format],a=n.a??255;if(this.format==="gray8"){let s=K((n.r+n.g+n.b)/3);this.data[i]=s;return}if(this.format==="rgb8"){let s=this.data;s[i]=K(n.r),s[i+1]=K(n.g),s[i+2]=K(n.b);return}if(this.format==="rgba32f"){let s=this.data;s[i]=Ye(n.r),s[i+1]=Ye(n.g),s[i+2]=Ye(n.b),s[i+3]=Ye(a);return}let o=this.data;o[i]=K(n.r),o[i+1]=K(n.g),o[i+2]=K(n.b),o[i+3]=K(a)}setPixelColor(t,r,n){let i=F(n);this.setPixel(t,r,i)}fill(t){for(let r=0;r<this.height;r+=1)for(let n=0;n<this.width;n+=1)this.setPixel(n,r,t)}fillColor(t){let r=F(t);this.fill(r)}toMatrix(){let t=[];for(let r=0;r<this.height;r+=1){let n=[];for(let i=0;i<this.width;i+=1)n.push(this.getPixel(i,r));t.push(n)}return t}mapPixels(t){let r=new e(this.width,this.height,this.format);for(let n=0;n<this.height;n+=1)for(let i=0;i<this.width;i+=1){let a=this.getPixel(i,n);r.setPixel(i,n,t(a,i,n))}return r}toFormat(t){if(t===this.format)return this.clone();let r=new e(this.width,this.height,t);for(let n=0;n<this.height;n+=1)for(let i=0;i<this.width;i+=1)r.setPixel(i,n,this.getPixel(i,n));return r}assertInside(t,r){if(t<0||r<0||t>=this.width||r>=this.height)throw new Error("Pixel coordinate out of bounds")}};function K(e){if(Number.isNaN(e)||!Number.isFinite(e))return 0;let t=e<=1&&!Number.isInteger(e)?e*255:e;return Math.max(0,Math.min(255,Math.round(t)))}function Ye(e){return Number.isNaN(e)||!Number.isFinite(e)?0:e>1?Math.max(0,Math.min(1,e/255)):Math.max(0,Math.min(1,e))}var be=class{constructor(t){this.state=t>>>0}next(){let t=this.state+=1831565813;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}nextFloat(){return this.next()}nextInt(t,r){let n=Math.min(t,r),i=Math.max(t,r);return Math.floor(this.next()*(i-n+1))+n}nextRange(t,r){let n=Math.min(t,r),i=Math.max(t,r);return this.next()*(i-n)+n}nextGaussian(t=0,r=1){let n=0,i=0;for(;n===0;)n=this.next();for(;i===0;)i=this.next();return Math.sqrt(-2*Math.log(n))*Math.cos(2*Math.PI*i)*r+t}};function Je(e){return e==null?new be(Tt(Date.now())):typeof e=="number"&&Number.isFinite(e)?new be(Tt(e)):new be(Tt(String(e)))}function Tt(e){let t=String(e),r=2166136261;for(let n=0;n<t.length;n+=1)r^=t.charCodeAt(n),r=Math.imul(r,16777619);return r>>>0}var bt=Ir(require("node:fs/promises")),Ge=Ir(Vi());function Xi(e){return{type:"path",path:e}}function Ki(e){return{type:"url",url:e}}function Qi(e){return{type:"datauri",dataUri:e}}function Yi(e){return{type:"buffer",buffer:e}}function Ji(e,t,r="rgba8",n){return{type:"empty",width:e,height:t,format:r,fill:n}}async function Le(e){if(e.type==="empty")return _.create(e.width,e.height,e.format??"rgba8",e.fill);let t=await yu(e),{data:r,info:n}=await(0,Ge.default)(t).ensureAlpha().raw().toBuffer({resolveWithObject:!0}),i=new Uint8Array(r);return new _(n.width,n.height,"rgba8",i)}async function pt(e,t={}){let r=e.format==="rgba8"?e:e.toFormat("rgba8"),n=Buffer.from(r.data),i=(0,Ge.default)(n,{raw:{width:r.width,height:r.height,channels:4}}),a=t.format??"png";return a==="jpeg"?i=i.jpeg({quality:t.quality??90}):a==="webp"?i=i.webp({quality:t.quality??90}):i=i.png(),i.toBuffer()}async function Zi(e,t,r={}){let n=await pt(e,r);await bt.default.writeFile(t,n)}async function Te(e,t,r,n={}){let i=e.format==="rgba8"?e:e.toFormat("rgba8"),a=Buffer.from(i.data),{data:o,info:s}=await(0,Ge.default)(a,{raw:{width:i.width,height:i.height,channels:4}}).resize(t,r,{fit:n.fit??"fill",withoutEnlargement:n.withoutEnlargement??!1}).ensureAlpha().raw().toBuffer({resolveWithObject:!0});return new _(s.width,s.height,"rgba8",new Uint8Array(o))}async function wt(e,t){let r=await pt(e,{format:"png"}),n=await vu(e.width,e.height,t),{data:i,info:a}=await(0,Ge.default)(r).composite([{input:Buffer.from(n)}]).ensureAlpha().raw().toBuffer({resolveWithObject:!0}),o=new _(a.width,a.height,"rgba8",new Uint8Array(i));return e.format==="rgba8"?o:o.toFormat(e.format)}async function yu(e){if(e.type==="buffer")return e.buffer;if(e.type==="path")return bt.default.readFile(e.path);if(e.type==="url"){let t=await fetch(e.url);if(!t.ok)throw new Error(`Failed to fetch image: ${t.status} ${t.statusText}`);let r=await t.arrayBuffer();return Buffer.from(r)}if(e.type==="datauri")return xu(e.dataUri);throw new Error("Unsupported image source")}function xu(e){let[t,r]=e.split(",");if(!r)throw new Error("Invalid data URI");return/;base64/i.test(t)?Buffer.from(r,"base64"):Buffer.from(decodeURIComponent(r))}async function vu(e,t,r){let n=r.layout,i=r.style??{},a=i.fontSize??48,o=i.bold?700:r.font.weight??400,s=i.italic?"italic":r.font.style??"normal",c=i.opacity??1,f=n.lineHeight??Math.round(a*1.25),d=n.align??"left",m=n.letterSpacing??0,g=i.color??"#ffffff",P=Nu(g,c),N=d==="center"?"middle":d==="right"?"end":"start",b=Iu(r.text,n.maxWidth,a,n.maxLines),x=d==="left"?n.x:d==="center"?n.x+(n.maxWidth??0)/2:n.x+(n.maxWidth??0),E=n.y+a,A=[i.underline?"underline":null,i.strikethrough?"line-through":null].filter(Boolean).join(" "),I=await Eu(r.font),$=b.map((L,T)=>`<tspan x="${x}" dy="${T===0?0:f}">${ur(L)}</tspan>`).join("");return`<?xml version="1.0" encoding="UTF-8"?>
|
|
3
3
|
<svg xmlns="http://www.w3.org/2000/svg" width="${e}" height="${t}">
|
|
4
4
|
<style>
|
|
5
5
|
${I}
|