11 lines
115 KiB
JavaScript
11 lines
115 KiB
JavaScript
import { __commonJS, __require } from './chunk-42AJV46F.mjs';
|
|
import { cpus } from 'node:os';
|
|
import { NextJsSharpError } from 'storybook/internal/preview-errors';
|
|
import imageSizeOf from 'image-size';
|
|
import { interpolateName } from 'loader-utils';
|
|
|
|
var require_is=__commonJS({"../../node_modules/sharp/lib/is.js"(exports,module){var defined=function(val){return typeof val<"u"&&val!==null},object=function(val){return typeof val=="object"},plainObject=function(val){return Object.prototype.toString.call(val)==="[object Object]"},fn=function(val){return typeof val=="function"},bool=function(val){return typeof val=="boolean"},buffer=function(val){return val instanceof Buffer},typedArray=function(val){if(defined(val))switch(val.constructor){case Uint8Array:case Uint8ClampedArray:case Int8Array:case Uint16Array:case Int16Array:case Uint32Array:case Int32Array:case Float32Array:case Float64Array:return !0}return !1},arrayBuffer=function(val){return val instanceof ArrayBuffer},string=function(val){return typeof val=="string"&&val.length>0},number=function(val){return typeof val=="number"&&!Number.isNaN(val)},integer=function(val){return Number.isInteger(val)},inRange=function(val,min,max){return val>=min&&val<=max},inArray=function(val,list){return list.includes(val)},invalidParameterError=function(name,expected,actual){return new Error(`Expected ${expected} for ${name} but received ${actual} of type ${typeof actual}`)},nativeError=function(native,context){return context.message=native.message,context};module.exports={defined,object,plainObject,fn,bool,buffer,typedArray,arrayBuffer,string,number,integer,inRange,inArray,invalidParameterError,nativeError};}});var require_process=__commonJS({"../../node_modules/detect-libc/lib/process.js"(exports,module){var isLinux=()=>process.platform==="linux",report=null,getReport=()=>{if(!report)if(isLinux()&&process.report){let orig=process.report.excludeNetwork;process.report.excludeNetwork=!0,report=process.report.getReport(),process.report.excludeNetwork=orig;}else report={};return report};module.exports={isLinux,getReport};}});var require_filesystem=__commonJS({"../../node_modules/detect-libc/lib/filesystem.js"(exports,module){var fs=__require("fs"),LDD_PATH="/usr/bin/ldd",readFileSync=path=>fs.readFileSync(path,"utf-8"),readFile=path=>new Promise((resolve,reject)=>{fs.readFile(path,"utf-8",(err,data)=>{err?reject(err):resolve(data);});});module.exports={LDD_PATH,readFileSync,readFile};}});var require_detect_libc=__commonJS({"../../node_modules/detect-libc/lib/detect-libc.js"(exports,module){var childProcess=__require("child_process"),{isLinux,getReport}=require_process(),{LDD_PATH,readFile,readFileSync}=require_filesystem(),cachedFamilyFilesystem,cachedVersionFilesystem,command="getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true",commandOut="",safeCommand=()=>commandOut||new Promise(resolve=>{childProcess.exec(command,(err,out)=>{commandOut=err?" ":out,resolve(commandOut);});}),safeCommandSync=()=>{if(!commandOut)try{commandOut=childProcess.execSync(command,{encoding:"utf8"});}catch{commandOut=" ";}return commandOut},GLIBC="glibc",RE_GLIBC_VERSION=/LIBC[a-z0-9 \-).]*?(\d+\.\d+)/i,MUSL="musl",isFileMusl=f=>f.includes("libc.musl-")||f.includes("ld-musl-"),familyFromReport=()=>{let report=getReport();return report.header&&report.header.glibcVersionRuntime?GLIBC:Array.isArray(report.sharedObjects)&&report.sharedObjects.some(isFileMusl)?MUSL:null},familyFromCommand=out=>{let[getconf,ldd1]=out.split(/[\r\n]+/);return getconf&&getconf.includes(GLIBC)?GLIBC:ldd1&&ldd1.includes(MUSL)?MUSL:null},getFamilyFromLddContent=content=>content.includes("musl")?MUSL:content.includes("GNU C Library")?GLIBC:null,familyFromFilesystem=async()=>{if(cachedFamilyFilesystem!==void 0)return cachedFamilyFilesystem;cachedFamilyFilesystem=null;try{let lddContent=await readFile(LDD_PATH);cachedFamilyFilesystem=getFamilyFromLddContent(lddContent);}catch{}return cachedFamilyFilesystem},familyFromFilesystemSync=()=>{if(cachedFamilyFilesystem!==void 0)return cachedFamilyFilesystem;cachedFamilyFilesystem=null;try{let lddContent=readFileSync(LDD_PATH);cachedFamilyFilesystem=getFamilyFromLddContent(lddContent);}catch{}return cachedFamilyFilesystem},family=async()=>{let family2=null;if(isLinux()&&(family2=await familyFromFilesystem(),family2||(family2=familyFromReport()),!family2)){let out=await safeCommand();family2=familyFromCommand(out);}return family2},familySync=()=>{let family2=null;if(isLinux()&&(family2=familyFromFilesystemSync(),family2||(family2=familyFromReport()),!family2)){let out=safeCommandSync();family2=familyFromCommand(out);}return family2},isNonGlibcLinux=async()=>isLinux()&&await family()!==GLIBC,isNonGlibcLinuxSync=()=>isLinux()&&familySync()!==GLIBC,versionFromFilesystem=async()=>{if(cachedVersionFilesystem!==void 0)return cachedVersionFilesystem;cachedVersionFilesystem=null;try{let versionMatch=(await readFile(LDD_PATH)).match(RE_GLIBC_VERSION);versionMatch&&(cachedVersionFilesystem=versionMatch[1]);}catch{}return cachedVersionFilesystem},versionFromFilesystemSync=()=>{if(cachedVersionFilesystem!==void 0)return cachedVersionFilesystem;cachedVersionFilesystem=null;try{let versionMatch=readFileSync(LDD_PATH).match(RE_GLIBC_VERSION);versionMatch&&(cachedVersionFilesystem=versionMatch[1]);}catch{}return cachedVersionFilesystem},versionFromReport=()=>{let report=getReport();return report.header&&report.header.glibcVersionRuntime?report.header.glibcVersionRuntime:null},versionSuffix=s=>s.trim().split(/\s+/)[1],versionFromCommand=out=>{let[getconf,ldd1,ldd2]=out.split(/[\r\n]+/);return getconf&&getconf.includes(GLIBC)?versionSuffix(getconf):ldd1&&ldd2&&ldd1.includes(MUSL)?versionSuffix(ldd2):null},version=async()=>{let version2=null;if(isLinux()&&(version2=await versionFromFilesystem(),version2||(version2=versionFromReport()),!version2)){let out=await safeCommand();version2=versionFromCommand(out);}return version2},versionSync=()=>{let version2=null;if(isLinux()&&(version2=versionFromFilesystemSync(),version2||(version2=versionFromReport()),!version2)){let out=safeCommandSync();version2=versionFromCommand(out);}return version2};module.exports={GLIBC,MUSL,family,familySync,isNonGlibcLinux,isNonGlibcLinuxSync,version,versionSync};}});var require_package=__commonJS({"../../node_modules/sharp/package.json"(exports,module){module.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.33.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:{install:"node install/check",clean:"rm -rf src/build/ .nyc_output/ coverage/ test/fixtures/output.*",test:"npm run test-lint && npm run test-unit && npm run test-licensing && npm run test-types","test-lint":"semistandard && cpplint","test-unit":"nyc --reporter=lcov --reporter=text --check-coverage --branches=100 mocha","test-licensing":'license-checker --production --summary --onlyAllow="Apache-2.0;BSD;ISC;LGPL-3.0-or-later;MIT"',"test-leak":"./test/leak/leak.sh","test-types":"tsd","package-from-local-build":"node npm/from-local-build","package-from-github-release":"node npm/from-github-release","docs-build":"node docs/build && node docs/search-index/build","docs-serve":"cd docs && npx serve","docs-publish":"cd docs && 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:{color:"^4.2.3","detect-libc":"^2.0.3",semver:"^7.6.3"},optionalDependencies:{"@img/sharp-darwin-arm64":"0.33.5","@img/sharp-darwin-x64":"0.33.5","@img/sharp-libvips-darwin-arm64":"1.0.4","@img/sharp-libvips-darwin-x64":"1.0.4","@img/sharp-libvips-linux-arm":"1.0.5","@img/sharp-libvips-linux-arm64":"1.0.4","@img/sharp-libvips-linux-s390x":"1.0.4","@img/sharp-libvips-linux-x64":"1.0.4","@img/sharp-libvips-linuxmusl-arm64":"1.0.4","@img/sharp-libvips-linuxmusl-x64":"1.0.4","@img/sharp-linux-arm":"0.33.5","@img/sharp-linux-arm64":"0.33.5","@img/sharp-linux-s390x":"0.33.5","@img/sharp-linux-x64":"0.33.5","@img/sharp-linuxmusl-arm64":"0.33.5","@img/sharp-linuxmusl-x64":"0.33.5","@img/sharp-wasm32":"0.33.5","@img/sharp-win32-ia32":"0.33.5","@img/sharp-win32-x64":"0.33.5"},devDependencies:{"@emnapi/runtime":"^1.2.0","@img/sharp-libvips-dev":"1.0.4","@img/sharp-libvips-dev-wasm32":"1.0.5","@img/sharp-libvips-win32-ia32":"1.0.4","@img/sharp-libvips-win32-x64":"1.0.4","@types/node":"*",async:"^3.2.5",cc:"^3.0.1",emnapi:"^1.2.0","exif-reader":"^2.0.1","extract-zip":"^2.0.1",icc:"^3.0.0","jsdoc-to-markdown":"^8.0.3","license-checker":"^25.0.1",mocha:"^10.7.3","node-addon-api":"^8.1.0",nyc:"^17.0.0",prebuild:"^13.0.1",semistandard:"^17.0.0","tar-fs":"^3.0.6",tsd:"^0.31.1"},license:"Apache-2.0",engines:{node:"^18.17.0 || ^20.3.0 || >=21.0.0"},config:{libvips:">=8.15.3"},funding:{url:"https://opencollective.com/libvips"},binary:{napi_versions:[9]},semistandard:{env:["mocha"]},cc:{linelength:"120",filter:["build/include"]},nyc:{include:["lib"]},tsd:{directory:"test/types/"}};}});var require_libvips=__commonJS({"../../node_modules/sharp/lib/libvips.js"(exports,module){var{spawnSync}=__require("node:child_process"),{createHash}=__require("node:crypto"),semverCoerce=__require("semver/functions/coerce"),semverGreaterThanOrEqualTo=__require("semver/functions/gte"),semverSatisfies=__require("semver/functions/satisfies"),detectLibc=require_detect_libc(),{config,engines,optionalDependencies}=require_package(),minimumLibvipsVersionLabelled=process.env.npm_package_config_libvips||config.libvips,minimumLibvipsVersion=semverCoerce(minimumLibvipsVersionLabelled).version,prebuiltPlatforms=["darwin-arm64","darwin-x64","linux-arm","linux-arm64","linux-s390x","linux-x64","linuxmusl-arm64","linuxmusl-x64","win32-ia32","win32-x64"],spawnSyncOptions={encoding:"utf8",shell:!0},log=item=>{item instanceof Error?console.error(`sharp: Installation error: ${item.message}`):console.log(`sharp: ${item}`);},runtimeLibc=()=>detectLibc.isNonGlibcLinuxSync()?detectLibc.familySync():"",runtimePlatformArch=()=>`${process.platform}${runtimeLibc()}-${process.arch}`,buildPlatformArch=()=>{if(isEmscripten())return "wasm32";let{npm_config_arch,npm_config_platform,npm_config_libc}=process.env,libc=typeof npm_config_libc=="string"?npm_config_libc:runtimeLibc();return `${npm_config_platform||process.platform}${libc}-${npm_config_arch||process.arch}`},buildSharpLibvipsIncludeDir=()=>{try{return __require(`@img/sharp-libvips-dev-${buildPlatformArch()}/include`)}catch{try{return __require("@img/sharp-libvips-dev/include")}catch{}}return ""},buildSharpLibvipsCPlusPlusDir=()=>{try{return __require("@img/sharp-libvips-dev/cplusplus")}catch{}return ""},buildSharpLibvipsLibDir=()=>{try{return __require(`@img/sharp-libvips-dev-${buildPlatformArch()}/lib`)}catch{try{return __require(`@img/sharp-libvips-${buildPlatformArch()}/lib`)}catch{}}return ""},isUnsupportedNodeRuntime=()=>{if(process.release?.name==="node"&&process.versions&&!semverSatisfies(process.versions.node,engines.node))return {found:process.versions.node,expected:engines.node}},isEmscripten=()=>{let{CC}=process.env;return !!(CC&&CC.endsWith("/emcc"))},isRosetta=()=>process.platform==="darwin"&&process.arch==="x64"?(spawnSync("sysctl sysctl.proc_translated",spawnSyncOptions).stdout||"").trim()==="sysctl.proc_translated: 1":!1,sha512=s=>createHash("sha512").update(s).digest("hex"),yarnLocator=()=>{try{let identHash=sha512(`imgsharp-libvips-${buildPlatformArch()}`),npmVersion=semverCoerce(optionalDependencies[`@img/sharp-libvips-${buildPlatformArch()}`]).version;return sha512(`${identHash}npm:${npmVersion}`).slice(0,10)}catch{}return ""},spawnRebuild=()=>spawnSync(`node-gyp rebuild --directory=src ${isEmscripten()?"--nodedir=emscripten":""}`,{...spawnSyncOptions,stdio:"inherit"}).status,globalLibvipsVersion=()=>process.platform!=="win32"?(spawnSync("pkg-config --modversion vips-cpp",{...spawnSyncOptions,env:{...process.env,PKG_CONFIG_PATH:pkgConfigPath()}}).stdout||"").trim():"",pkgConfigPath=()=>process.platform!=="win32"?[(spawnSync('which brew >/dev/null 2>&1 && brew environment --plain | grep PKG_CONFIG_LIBDIR | cut -d" " -f2',spawnSyncOptions).stdout||"").trim(),process.env.PKG_CONFIG_PATH,"/usr/local/lib/pkgconfig","/usr/lib/pkgconfig","/usr/local/libdata/pkgconfig","/usr/libdata/pkgconfig"].filter(Boolean).join(":"):"",skipSearch=(status,reason,logger)=>(logger&&logger(`Detected ${reason}, skipping search for globally-installed libvips`),status),useGlobalLibvips=logger=>{if(process.env.SHARP_IGNORE_GLOBAL_LIBVIPS)return skipSearch(!1,"SHARP_IGNORE_GLOBAL_LIBVIPS",logger);if(process.env.SHARP_FORCE_GLOBAL_LIBVIPS)return skipSearch(!0,"SHARP_FORCE_GLOBAL_LIBVIPS",logger);if(isRosetta())return skipSearch(!1,"Rosetta",logger);let globalVipsVersion=globalLibvipsVersion();return !!globalVipsVersion&&semverGreaterThanOrEqualTo(globalVipsVersion,minimumLibvipsVersion)};module.exports={minimumLibvipsVersion,prebuiltPlatforms,buildPlatformArch,buildSharpLibvipsIncludeDir,buildSharpLibvipsCPlusPlusDir,buildSharpLibvipsLibDir,isUnsupportedNodeRuntime,runtimePlatformArch,log,yarnLocator,spawnRebuild,globalLibvipsVersion,pkgConfigPath,useGlobalLibvips};}});var require_sharp=__commonJS({"../../node_modules/sharp/lib/sharp.js"(exports,module){var{familySync,versionSync}=require_detect_libc(),{runtimePlatformArch,isUnsupportedNodeRuntime,prebuiltPlatforms,minimumLibvipsVersion}=require_libvips(),runtimePlatform=runtimePlatformArch(),paths=[`../src/build/Release/sharp-${runtimePlatform}.node`,"../src/build/Release/sharp-wasm32.node",`@img/sharp-${runtimePlatform}/sharp.node`,"@img/sharp-wasm32/sharp.node"],sharp,errors=[];for(let path of paths)try{sharp=__require(path);break}catch(err){errors.push(err);}if(sharp)module.exports=sharp;else {let[isLinux,isMacOs,isWindows]=["linux","darwin","win32"].map(os=>runtimePlatform.startsWith(os)),help=[`Could not load the "sharp" module using the ${runtimePlatform} runtime`];errors.forEach(err=>{err.code!=="MODULE_NOT_FOUND"&&help.push(`${err.code}: ${err.message}`);});let messages=errors.map(err=>err.message).join(" ");if(help.push("Possible solutions:"),isUnsupportedNodeRuntime()){let{found,expected}=isUnsupportedNodeRuntime();help.push("- Please upgrade Node.js:",` Found ${found}`,` Requires ${expected}`);}else if(prebuiltPlatforms.includes(runtimePlatform)){let[os,cpu]=runtimePlatform.split("-"),libc=os.endsWith("musl")?" --libc=musl":"";help.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=${os.replace("musl","")}${libc} --cpu=${cpu} sharp`);}else help.push(`- Manually install libvips >= ${minimumLibvipsVersion}`,"- Add experimental WebAssembly-based dependencies:"," npm install --cpu=wasm32 sharp"," npm install @img/sharp-wasm32");if(isLinux&&/(symbol not found|CXXABI_)/i.test(messages))try{let{config}=__require(`@img/sharp-libvips-${runtimePlatform}/package`),libcFound=`${familySync()} ${versionSync()}`,libcRequires=`${config.musl?"musl":"glibc"} ${config.musl||config.glibc}`;help.push("- Update your OS:",` Found ${libcFound}`,` Requires ${libcRequires}`);}catch{}throw isLinux&&/\/snap\/core[0-9]{2}/.test(messages)&&help.push("- Remove the Node.js Snap, which does not support native modules"," snap remove node"),isMacOs&&/Incompatible library version/.test(messages)&&help.push("- Update Homebrew:"," brew update && brew upgrade vips"),errors.some(err=>err.code==="ERR_DLOPEN_DISABLED")&&help.push("- Run Node.js without using the --no-addons flag"),isWindows&&/The specified procedure could not be found/.test(messages)&&help.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"),help.push("- Consult the installation documentation:"," See https://sharp.pixelplumbing.com/install"),new Error(help.join(`
|
|
`))}}});var require_constructor=__commonJS({"../../node_modules/sharp/lib/constructor.js"(exports,module){var util=__require("node:util"),stream=__require("node:stream"),is=require_is();require_sharp();var debuglog=util.debuglog("sharp"),Sharp=function(input,options){if(arguments.length===1&&!is.defined(input))throw new Error("Invalid input");return this instanceof Sharp?(stream.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],useExifOrientation:!1,angle:0,rotationAngle:0,rotationBackground:[0,0,0,255],rotateBeforePreExtract:!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,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,resolveWithObject:!1,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,webpPreset:"default",webpEffort:4,webpMinSize:!1,webpMixed:!1,gifBitdepth:8,gifEffort:7,gifDither:1,gifInterFrameMaxError:0,gifInterPaletteMaxError:3,gifReuse:!0,gifProgressive:!1,tiffQuality:80,tiffCompression:"jpeg",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:[],debuglog:warning=>{this.emit("warning",warning),debuglog(warning);},queueListener:function(queueLength){Sharp.queue.emit("change",queueLength);}},this.options.input=this._createInputDescriptor(input,options,{allowStream:!0}),this):new Sharp(input,options)};Object.setPrototypeOf(Sharp.prototype,stream.Duplex.prototype);Object.setPrototypeOf(Sharp,stream.Duplex);function clone(){let clone2=this.constructor.call(),{debuglog:debuglog2,queueListener,...options}=this.options;return clone2.options=structuredClone(options),clone2.options.debuglog=debuglog2,clone2.options.queueListener=queueListener,this._isStreamInput()&&this.on("finish",()=>{this._flattenBufferIn(),clone2.options.input.buffer=this.options.input.buffer,clone2.emit("finish");}),clone2}Object.assign(Sharp.prototype,{clone});module.exports=Sharp;}});var require_color_name=__commonJS({"../../node_modules/color-name/index.js"(exports,module){module.exports={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]};}});var require_is_arrayish=__commonJS({"../../node_modules/simple-swizzle/node_modules/is-arrayish/index.js"(exports,module){module.exports=function(obj){return !obj||typeof obj=="string"?!1:obj instanceof Array||Array.isArray(obj)||obj.length>=0&&(obj.splice instanceof Function||Object.getOwnPropertyDescriptor(obj,obj.length-1)&&obj.constructor.name!=="String")};}});var require_simple_swizzle=__commonJS({"../../node_modules/simple-swizzle/index.js"(exports,module){var isArrayish=require_is_arrayish(),concat=Array.prototype.concat,slice=Array.prototype.slice,swizzle=module.exports=function(args){for(var results=[],i=0,len=args.length;i<len;i++){var arg=args[i];isArrayish(arg)?results=concat.call(results,slice.call(arg)):results.push(arg);}return results};swizzle.wrap=function(fn){return function(){return fn(swizzle(arguments))}};}});var require_color_string=__commonJS({"../../node_modules/color-string/index.js"(exports,module){var colorNames=require_color_name(),swizzle=require_simple_swizzle(),hasOwnProperty=Object.hasOwnProperty,reverseNames=Object.create(null);for(name in colorNames)hasOwnProperty.call(colorNames,name)&&(reverseNames[colorNames[name]]=name);var name,cs=module.exports={to:{},get:{}};cs.get=function(string){var prefix=string.substring(0,3).toLowerCase(),val,model;switch(prefix){case"hsl":val=cs.get.hsl(string),model="hsl";break;case"hwb":val=cs.get.hwb(string),model="hwb";break;default:val=cs.get.rgb(string),model="rgb";break}return val?{model,value:val}:null};cs.get.rgb=function(string){if(!string)return null;var abbr=/^#([a-f0-9]{3,4})$/i,hex=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,rgba=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,per=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,keyword=/^(\w+)$/,rgb=[0,0,0,1],match,i,hexAlpha;if(match=string.match(hex)){for(hexAlpha=match[2],match=match[1],i=0;i<3;i++){var i2=i*2;rgb[i]=parseInt(match.slice(i2,i2+2),16);}hexAlpha&&(rgb[3]=parseInt(hexAlpha,16)/255);}else if(match=string.match(abbr)){for(match=match[1],hexAlpha=match[3],i=0;i<3;i++)rgb[i]=parseInt(match[i]+match[i],16);hexAlpha&&(rgb[3]=parseInt(hexAlpha+hexAlpha,16)/255);}else if(match=string.match(rgba)){for(i=0;i<3;i++)rgb[i]=parseInt(match[i+1],0);match[4]&&(match[5]?rgb[3]=parseFloat(match[4])*.01:rgb[3]=parseFloat(match[4]));}else if(match=string.match(per)){for(i=0;i<3;i++)rgb[i]=Math.round(parseFloat(match[i+1])*2.55);match[4]&&(match[5]?rgb[3]=parseFloat(match[4])*.01:rgb[3]=parseFloat(match[4]));}else return (match=string.match(keyword))?match[1]==="transparent"?[0,0,0,0]:hasOwnProperty.call(colorNames,match[1])?(rgb=colorNames[match[1]],rgb[3]=1,rgb):null:null;for(i=0;i<3;i++)rgb[i]=clamp(rgb[i],0,255);return rgb[3]=clamp(rgb[3],0,1),rgb};cs.get.hsl=function(string){if(!string)return null;var hsl=/^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*)?\)$/,match=string.match(hsl);if(match){var alpha=parseFloat(match[4]),h=(parseFloat(match[1])%360+360)%360,s=clamp(parseFloat(match[2]),0,100),l=clamp(parseFloat(match[3]),0,100),a=clamp(isNaN(alpha)?1:alpha,0,1);return [h,s,l,a]}return null};cs.get.hwb=function(string){if(!string)return null;var hwb=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,match=string.match(hwb);if(match){var alpha=parseFloat(match[4]),h=(parseFloat(match[1])%360+360)%360,w=clamp(parseFloat(match[2]),0,100),b=clamp(parseFloat(match[3]),0,100),a=clamp(isNaN(alpha)?1:alpha,0,1);return [h,w,b,a]}return null};cs.to.hex=function(){var rgba=swizzle(arguments);return "#"+hexDouble(rgba[0])+hexDouble(rgba[1])+hexDouble(rgba[2])+(rgba[3]<1?hexDouble(Math.round(rgba[3]*255)):"")};cs.to.rgb=function(){var rgba=swizzle(arguments);return rgba.length<4||rgba[3]===1?"rgb("+Math.round(rgba[0])+", "+Math.round(rgba[1])+", "+Math.round(rgba[2])+")":"rgba("+Math.round(rgba[0])+", "+Math.round(rgba[1])+", "+Math.round(rgba[2])+", "+rgba[3]+")"};cs.to.rgb.percent=function(){var rgba=swizzle(arguments),r=Math.round(rgba[0]/255*100),g=Math.round(rgba[1]/255*100),b=Math.round(rgba[2]/255*100);return rgba.length<4||rgba[3]===1?"rgb("+r+"%, "+g+"%, "+b+"%)":"rgba("+r+"%, "+g+"%, "+b+"%, "+rgba[3]+")"};cs.to.hsl=function(){var hsla=swizzle(arguments);return hsla.length<4||hsla[3]===1?"hsl("+hsla[0]+", "+hsla[1]+"%, "+hsla[2]+"%)":"hsla("+hsla[0]+", "+hsla[1]+"%, "+hsla[2]+"%, "+hsla[3]+")"};cs.to.hwb=function(){var hwba=swizzle(arguments),a="";return hwba.length>=4&&hwba[3]!==1&&(a=", "+hwba[3]),"hwb("+hwba[0]+", "+hwba[1]+"%, "+hwba[2]+"%"+a+")"};cs.to.keyword=function(rgb){return reverseNames[rgb.slice(0,3)]};function clamp(num,min,max){return Math.min(Math.max(min,num),max)}function hexDouble(num){var str=Math.round(num).toString(16).toUpperCase();return str.length<2?"0"+str:str}}});var require_conversions=__commonJS({"../../node_modules/color-convert/conversions.js"(exports,module){var cssKeywords=require_color_name(),reverseKeywords={};for(let key of Object.keys(cssKeywords))reverseKeywords[cssKeywords[key]]=key;var convert={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"},lch:{channels:3,labels:"lch"},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"]}};module.exports=convert;for(let model of Object.keys(convert)){if(!("channels"in convert[model]))throw new Error("missing channels property: "+model);if(!("labels"in convert[model]))throw new Error("missing channel labels property: "+model);if(convert[model].labels.length!==convert[model].channels)throw new Error("channel and label counts mismatch: "+model);let{channels,labels}=convert[model];delete convert[model].channels,delete convert[model].labels,Object.defineProperty(convert[model],"channels",{value:channels}),Object.defineProperty(convert[model],"labels",{value:labels});}convert.rgb.hsl=function(rgb){let r=rgb[0]/255,g=rgb[1]/255,b=rgb[2]/255,min=Math.min(r,g,b),max=Math.max(r,g,b),delta=max-min,h,s;max===min?h=0:r===max?h=(g-b)/delta:g===max?h=2+(b-r)/delta:b===max&&(h=4+(r-g)/delta),h=Math.min(h*60,360),h<0&&(h+=360);let l=(min+max)/2;return max===min?s=0:l<=.5?s=delta/(max+min):s=delta/(2-max-min),[h,s*100,l*100]};convert.rgb.hsv=function(rgb){let rdif,gdif,bdif,h,s,r=rgb[0]/255,g=rgb[1]/255,b=rgb[2]/255,v=Math.max(r,g,b),diff=v-Math.min(r,g,b),diffc=function(c){return (v-c)/6/diff+1/2};return diff===0?(h=0,s=0):(s=diff/v,rdif=diffc(r),gdif=diffc(g),bdif=diffc(b),r===v?h=bdif-gdif:g===v?h=1/3+rdif-bdif:b===v&&(h=2/3+gdif-rdif),h<0?h+=1:h>1&&(h-=1)),[h*360,s*100,v*100]};convert.rgb.hwb=function(rgb){let r=rgb[0],g=rgb[1],b=rgb[2],h=convert.rgb.hsl(rgb)[0],w=1/255*Math.min(r,Math.min(g,b));return b=1-1/255*Math.max(r,Math.max(g,b)),[h,w*100,b*100]};convert.rgb.cmyk=function(rgb){let r=rgb[0]/255,g=rgb[1]/255,b=rgb[2]/255,k=Math.min(1-r,1-g,1-b),c=(1-r-k)/(1-k)||0,m=(1-g-k)/(1-k)||0,y=(1-b-k)/(1-k)||0;return [c*100,m*100,y*100,k*100]};function comparativeDistance(x,y){return (x[0]-y[0])**2+(x[1]-y[1])**2+(x[2]-y[2])**2}convert.rgb.keyword=function(rgb){let reversed=reverseKeywords[rgb];if(reversed)return reversed;let currentClosestDistance=1/0,currentClosestKeyword;for(let keyword of Object.keys(cssKeywords)){let value=cssKeywords[keyword],distance=comparativeDistance(rgb,value);distance<currentClosestDistance&&(currentClosestDistance=distance,currentClosestKeyword=keyword);}return currentClosestKeyword};convert.keyword.rgb=function(keyword){return cssKeywords[keyword]};convert.rgb.xyz=function(rgb){let r=rgb[0]/255,g=rgb[1]/255,b=rgb[2]/255;r=r>.04045?((r+.055)/1.055)**2.4:r/12.92,g=g>.04045?((g+.055)/1.055)**2.4:g/12.92,b=b>.04045?((b+.055)/1.055)**2.4:b/12.92;let x=r*.4124+g*.3576+b*.1805,y=r*.2126+g*.7152+b*.0722,z=r*.0193+g*.1192+b*.9505;return [x*100,y*100,z*100]};convert.rgb.lab=function(rgb){let xyz=convert.rgb.xyz(rgb),x=xyz[0],y=xyz[1],z=xyz[2];x/=95.047,y/=100,z/=108.883,x=x>.008856?x**(1/3):7.787*x+16/116,y=y>.008856?y**(1/3):7.787*y+16/116,z=z>.008856?z**(1/3):7.787*z+16/116;let l=116*y-16,a=500*(x-y),b=200*(y-z);return [l,a,b]};convert.hsl.rgb=function(hsl){let h=hsl[0]/360,s=hsl[1]/100,l=hsl[2]/100,t2,t3,val;if(s===0)return val=l*255,[val,val,val];l<.5?t2=l*(1+s):t2=l+s-l*s;let t1=2*l-t2,rgb=[0,0,0];for(let i=0;i<3;i++)t3=h+1/3*-(i-1),t3<0&&t3++,t3>1&&t3--,6*t3<1?val=t1+(t2-t1)*6*t3:2*t3<1?val=t2:3*t3<2?val=t1+(t2-t1)*(2/3-t3)*6:val=t1,rgb[i]=val*255;return rgb};convert.hsl.hsv=function(hsl){let h=hsl[0],s=hsl[1]/100,l=hsl[2]/100,smin=s,lmin=Math.max(l,.01);l*=2,s*=l<=1?l:2-l,smin*=lmin<=1?lmin:2-lmin;let v=(l+s)/2,sv=l===0?2*smin/(lmin+smin):2*s/(l+s);return [h,sv*100,v*100]};convert.hsv.rgb=function(hsv){let h=hsv[0]/60,s=hsv[1]/100,v=hsv[2]/100,hi=Math.floor(h)%6,f=h-Math.floor(h),p=255*v*(1-s),q=255*v*(1-s*f),t=255*v*(1-s*(1-f));switch(v*=255,hi){case 0:return [v,t,p];case 1:return [q,v,p];case 2:return [p,v,t];case 3:return [p,q,v];case 4:return [t,p,v];case 5:return [v,p,q]}};convert.hsv.hsl=function(hsv){let h=hsv[0],s=hsv[1]/100,v=hsv[2]/100,vmin=Math.max(v,.01),sl,l;l=(2-s)*v;let lmin=(2-s)*vmin;return sl=s*vmin,sl/=lmin<=1?lmin:2-lmin,sl=sl||0,l/=2,[h,sl*100,l*100]};convert.hwb.rgb=function(hwb){let h=hwb[0]/360,wh=hwb[1]/100,bl=hwb[2]/100,ratio=wh+bl,f;ratio>1&&(wh/=ratio,bl/=ratio);let i=Math.floor(6*h),v=1-bl;f=6*h-i,(i&1)!==0&&(f=1-f);let n=wh+f*(v-wh),r,g,b;switch(i){default:case 6:case 0:r=v,g=n,b=wh;break;case 1:r=n,g=v,b=wh;break;case 2:r=wh,g=v,b=n;break;case 3:r=wh,g=n,b=v;break;case 4:r=n,g=wh,b=v;break;case 5:r=v,g=wh,b=n;break}return [r*255,g*255,b*255]};convert.cmyk.rgb=function(cmyk){let c=cmyk[0]/100,m=cmyk[1]/100,y=cmyk[2]/100,k=cmyk[3]/100,r=1-Math.min(1,c*(1-k)+k),g=1-Math.min(1,m*(1-k)+k),b=1-Math.min(1,y*(1-k)+k);return [r*255,g*255,b*255]};convert.xyz.rgb=function(xyz){let x=xyz[0]/100,y=xyz[1]/100,z=xyz[2]/100,r,g,b;return r=x*3.2406+y*-1.5372+z*-.4986,g=x*-.9689+y*1.8758+z*.0415,b=x*.0557+y*-.204+z*1.057,r=r>.0031308?1.055*r**(1/2.4)-.055:r*12.92,g=g>.0031308?1.055*g**(1/2.4)-.055:g*12.92,b=b>.0031308?1.055*b**(1/2.4)-.055:b*12.92,r=Math.min(Math.max(0,r),1),g=Math.min(Math.max(0,g),1),b=Math.min(Math.max(0,b),1),[r*255,g*255,b*255]};convert.xyz.lab=function(xyz){let x=xyz[0],y=xyz[1],z=xyz[2];x/=95.047,y/=100,z/=108.883,x=x>.008856?x**(1/3):7.787*x+16/116,y=y>.008856?y**(1/3):7.787*y+16/116,z=z>.008856?z**(1/3):7.787*z+16/116;let l=116*y-16,a=500*(x-y),b=200*(y-z);return [l,a,b]};convert.lab.xyz=function(lab){let l=lab[0],a=lab[1],b=lab[2],x,y,z;y=(l+16)/116,x=a/500+y,z=y-b/200;let y2=y**3,x2=x**3,z2=z**3;return y=y2>.008856?y2:(y-16/116)/7.787,x=x2>.008856?x2:(x-16/116)/7.787,z=z2>.008856?z2:(z-16/116)/7.787,x*=95.047,y*=100,z*=108.883,[x,y,z]};convert.lab.lch=function(lab){let l=lab[0],a=lab[1],b=lab[2],h;h=Math.atan2(b,a)*360/2/Math.PI,h<0&&(h+=360);let c=Math.sqrt(a*a+b*b);return [l,c,h]};convert.lch.lab=function(lch){let l=lch[0],c=lch[1],hr=lch[2]/360*2*Math.PI,a=c*Math.cos(hr),b=c*Math.sin(hr);return [l,a,b]};convert.rgb.ansi16=function(args,saturation=null){let[r,g,b]=args,value=saturation===null?convert.rgb.hsv(args)[2]:saturation;if(value=Math.round(value/50),value===0)return 30;let ansi=30+(Math.round(b/255)<<2|Math.round(g/255)<<1|Math.round(r/255));return value===2&&(ansi+=60),ansi};convert.hsv.ansi16=function(args){return convert.rgb.ansi16(convert.hsv.rgb(args),args[2])};convert.rgb.ansi256=function(args){let r=args[0],g=args[1],b=args[2];return r===g&&g===b?r<8?16:r>248?231:Math.round((r-8)/247*24)+232:16+36*Math.round(r/255*5)+6*Math.round(g/255*5)+Math.round(b/255*5)};convert.ansi16.rgb=function(args){let color=args%10;if(color===0||color===7)return args>50&&(color+=3.5),color=color/10.5*255,[color,color,color];let mult=(~~(args>50)+1)*.5,r=(color&1)*mult*255,g=(color>>1&1)*mult*255,b=(color>>2&1)*mult*255;return [r,g,b]};convert.ansi256.rgb=function(args){if(args>=232){let c=(args-232)*10+8;return [c,c,c]}args-=16;let rem,r=Math.floor(args/36)/5*255,g=Math.floor((rem=args%36)/6)/5*255,b=rem%6/5*255;return [r,g,b]};convert.rgb.hex=function(args){let string=(((Math.round(args[0])&255)<<16)+((Math.round(args[1])&255)<<8)+(Math.round(args[2])&255)).toString(16).toUpperCase();return "000000".substring(string.length)+string};convert.hex.rgb=function(args){let match=args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!match)return [0,0,0];let colorString=match[0];match[0].length===3&&(colorString=colorString.split("").map(char=>char+char).join(""));let integer=parseInt(colorString,16),r=integer>>16&255,g=integer>>8&255,b=integer&255;return [r,g,b]};convert.rgb.hcg=function(rgb){let r=rgb[0]/255,g=rgb[1]/255,b=rgb[2]/255,max=Math.max(Math.max(r,g),b),min=Math.min(Math.min(r,g),b),chroma=max-min,grayscale,hue;return chroma<1?grayscale=min/(1-chroma):grayscale=0,chroma<=0?hue=0:max===r?hue=(g-b)/chroma%6:max===g?hue=2+(b-r)/chroma:hue=4+(r-g)/chroma,hue/=6,hue%=1,[hue*360,chroma*100,grayscale*100]};convert.hsl.hcg=function(hsl){let s=hsl[1]/100,l=hsl[2]/100,c=l<.5?2*s*l:2*s*(1-l),f=0;return c<1&&(f=(l-.5*c)/(1-c)),[hsl[0],c*100,f*100]};convert.hsv.hcg=function(hsv){let s=hsv[1]/100,v=hsv[2]/100,c=s*v,f=0;return c<1&&(f=(v-c)/(1-c)),[hsv[0],c*100,f*100]};convert.hcg.rgb=function(hcg){let h=hcg[0]/360,c=hcg[1]/100,g=hcg[2]/100;if(c===0)return [g*255,g*255,g*255];let pure=[0,0,0],hi=h%1*6,v=hi%1,w=1-v,mg=0;switch(Math.floor(hi)){case 0:pure[0]=1,pure[1]=v,pure[2]=0;break;case 1:pure[0]=w,pure[1]=1,pure[2]=0;break;case 2:pure[0]=0,pure[1]=1,pure[2]=v;break;case 3:pure[0]=0,pure[1]=w,pure[2]=1;break;case 4:pure[0]=v,pure[1]=0,pure[2]=1;break;default:pure[0]=1,pure[1]=0,pure[2]=w;}return mg=(1-c)*g,[(c*pure[0]+mg)*255,(c*pure[1]+mg)*255,(c*pure[2]+mg)*255]};convert.hcg.hsv=function(hcg){let c=hcg[1]/100,g=hcg[2]/100,v=c+g*(1-c),f=0;return v>0&&(f=c/v),[hcg[0],f*100,v*100]};convert.hcg.hsl=function(hcg){let c=hcg[1]/100,l=hcg[2]/100*(1-c)+.5*c,s=0;return l>0&&l<.5?s=c/(2*l):l>=.5&&l<1&&(s=c/(2*(1-l))),[hcg[0],s*100,l*100]};convert.hcg.hwb=function(hcg){let c=hcg[1]/100,g=hcg[2]/100,v=c+g*(1-c);return [hcg[0],(v-c)*100,(1-v)*100]};convert.hwb.hcg=function(hwb){let w=hwb[1]/100,v=1-hwb[2]/100,c=v-w,g=0;return c<1&&(g=(v-c)/(1-c)),[hwb[0],c*100,g*100]};convert.apple.rgb=function(apple){return [apple[0]/65535*255,apple[1]/65535*255,apple[2]/65535*255]};convert.rgb.apple=function(rgb){return [rgb[0]/255*65535,rgb[1]/255*65535,rgb[2]/255*65535]};convert.gray.rgb=function(args){return [args[0]/100*255,args[0]/100*255,args[0]/100*255]};convert.gray.hsl=function(args){return [0,0,args[0]]};convert.gray.hsv=convert.gray.hsl;convert.gray.hwb=function(gray){return [0,100,gray[0]]};convert.gray.cmyk=function(gray){return [0,0,0,gray[0]]};convert.gray.lab=function(gray){return [gray[0],0,0]};convert.gray.hex=function(gray){let val=Math.round(gray[0]/100*255)&255,string=((val<<16)+(val<<8)+val).toString(16).toUpperCase();return "000000".substring(string.length)+string};convert.rgb.gray=function(rgb){return [(rgb[0]+rgb[1]+rgb[2])/3/255*100]};}});var require_route=__commonJS({"../../node_modules/color-convert/route.js"(exports,module){var conversions=require_conversions();function buildGraph(){let graph={},models=Object.keys(conversions);for(let len=models.length,i=0;i<len;i++)graph[models[i]]={distance:-1,parent:null};return graph}function deriveBFS(fromModel){let graph=buildGraph(),queue=[fromModel];for(graph[fromModel].distance=0;queue.length;){let current=queue.pop(),adjacents=Object.keys(conversions[current]);for(let len=adjacents.length,i=0;i<len;i++){let adjacent=adjacents[i],node=graph[adjacent];node.distance===-1&&(node.distance=graph[current].distance+1,node.parent=current,queue.unshift(adjacent));}}return graph}function link(from,to){return function(args){return to(from(args))}}function wrapConversion(toModel,graph){let path=[graph[toModel].parent,toModel],fn=conversions[graph[toModel].parent][toModel],cur=graph[toModel].parent;for(;graph[cur].parent;)path.unshift(graph[cur].parent),fn=link(conversions[graph[cur].parent][cur],fn),cur=graph[cur].parent;return fn.conversion=path,fn}module.exports=function(fromModel){let graph=deriveBFS(fromModel),conversion={},models=Object.keys(graph);for(let len=models.length,i=0;i<len;i++){let toModel=models[i];graph[toModel].parent!==null&&(conversion[toModel]=wrapConversion(toModel,graph));}return conversion};}});var require_color_convert=__commonJS({"../../node_modules/color-convert/index.js"(exports,module){var conversions=require_conversions(),route=require_route(),convert={},models=Object.keys(conversions);function wrapRaw(fn){let wrappedFn=function(...args){let arg0=args[0];return arg0==null?arg0:(arg0.length>1&&(args=arg0),fn(args))};return "conversion"in fn&&(wrappedFn.conversion=fn.conversion),wrappedFn}function wrapRounded(fn){let wrappedFn=function(...args){let arg0=args[0];if(arg0==null)return arg0;arg0.length>1&&(args=arg0);let result=fn(args);if(typeof result=="object")for(let len=result.length,i=0;i<len;i++)result[i]=Math.round(result[i]);return result};return "conversion"in fn&&(wrappedFn.conversion=fn.conversion),wrappedFn}models.forEach(fromModel=>{convert[fromModel]={},Object.defineProperty(convert[fromModel],"channels",{value:conversions[fromModel].channels}),Object.defineProperty(convert[fromModel],"labels",{value:conversions[fromModel].labels});let routes=route(fromModel);Object.keys(routes).forEach(toModel=>{let fn=routes[toModel];convert[fromModel][toModel]=wrapRounded(fn),convert[fromModel][toModel].raw=wrapRaw(fn);});});module.exports=convert;}});var require_color=__commonJS({"../../node_modules/color/index.js"(exports,module){var colorString=require_color_string(),convert=require_color_convert(),skippedModels=["keyword","gray","hex"],hashedModelKeys={};for(let model of Object.keys(convert))hashedModelKeys[[...convert[model].labels].sort().join("")]=model;var limiters={};function Color(object,model){if(!(this instanceof Color))return new Color(object,model);if(model&&model in skippedModels&&(model=null),model&&!(model in convert))throw new Error("Unknown model: "+model);let i,channels;if(object==null)this.model="rgb",this.color=[0,0,0],this.valpha=1;else if(object instanceof Color)this.model=object.model,this.color=[...object.color],this.valpha=object.valpha;else if(typeof object=="string"){let result=colorString.get(object);if(result===null)throw new Error("Unable to parse color from string: "+object);this.model=result.model,channels=convert[this.model].channels,this.color=result.value.slice(0,channels),this.valpha=typeof result.value[channels]=="number"?result.value[channels]:1;}else if(object.length>0){this.model=model||"rgb",channels=convert[this.model].channels;let newArray=Array.prototype.slice.call(object,0,channels);this.color=zeroArray(newArray,channels),this.valpha=typeof object[channels]=="number"?object[channels]:1;}else if(typeof object=="number")this.model="rgb",this.color=[object>>16&255,object>>8&255,object&255],this.valpha=1;else {this.valpha=1;let keys=Object.keys(object);"alpha"in object&&(keys.splice(keys.indexOf("alpha"),1),this.valpha=typeof object.alpha=="number"?object.alpha:0);let hashedKeys=keys.sort().join("");if(!(hashedKeys in hashedModelKeys))throw new Error("Unable to parse color from object: "+JSON.stringify(object));this.model=hashedModelKeys[hashedKeys];let{labels}=convert[this.model],color=[];for(i=0;i<labels.length;i++)color.push(object[labels[i]]);this.color=zeroArray(color);}if(limiters[this.model])for(channels=convert[this.model].channels,i=0;i<channels;i++){let limit=limiters[this.model][i];limit&&(this.color[i]=limit(this.color[i]));}this.valpha=Math.max(0,Math.min(1,this.valpha)),Object.freeze&&Object.freeze(this);}Color.prototype={toString(){return this.string()},toJSON(){return this[this.model]()},string(places){let self=this.model in colorString.to?this:this.rgb();self=self.round(typeof places=="number"?places:1);let args=self.valpha===1?self.color:[...self.color,this.valpha];return colorString.to[self.model](args)},percentString(places){let self=this.rgb().round(typeof places=="number"?places:1),args=self.valpha===1?self.color:[...self.color,this.valpha];return colorString.to.rgb.percent(args)},array(){return this.valpha===1?[...this.color]:[...this.color,this.valpha]},object(){let result={},{channels}=convert[this.model],{labels}=convert[this.model];for(let i=0;i<channels;i++)result[labels[i]]=this.color[i];return this.valpha!==1&&(result.alpha=this.valpha),result},unitArray(){let rgb=this.rgb().color;return rgb[0]/=255,rgb[1]/=255,rgb[2]/=255,this.valpha!==1&&rgb.push(this.valpha),rgb},unitObject(){let rgb=this.rgb().object();return rgb.r/=255,rgb.g/=255,rgb.b/=255,this.valpha!==1&&(rgb.alpha=this.valpha),rgb},round(places){return places=Math.max(places||0,0),new Color([...this.color.map(roundToPlace(places)),this.valpha],this.model)},alpha(value){return value!==void 0?new Color([...this.color,Math.max(0,Math.min(1,value))],this.model):this.valpha},red:getset("rgb",0,maxfn(255)),green:getset("rgb",1,maxfn(255)),blue:getset("rgb",2,maxfn(255)),hue:getset(["hsl","hsv","hsl","hwb","hcg"],0,value=>(value%360+360)%360),saturationl:getset("hsl",1,maxfn(100)),lightness:getset("hsl",2,maxfn(100)),saturationv:getset("hsv",1,maxfn(100)),value:getset("hsv",2,maxfn(100)),chroma:getset("hcg",1,maxfn(100)),gray:getset("hcg",2,maxfn(100)),white:getset("hwb",1,maxfn(100)),wblack:getset("hwb",2,maxfn(100)),cyan:getset("cmyk",0,maxfn(100)),magenta:getset("cmyk",1,maxfn(100)),yellow:getset("cmyk",2,maxfn(100)),black:getset("cmyk",3,maxfn(100)),x:getset("xyz",0,maxfn(95.047)),y:getset("xyz",1,maxfn(100)),z:getset("xyz",2,maxfn(108.833)),l:getset("lab",0,maxfn(100)),a:getset("lab",1),b:getset("lab",2),keyword(value){return value!==void 0?new Color(value):convert[this.model].keyword(this.color)},hex(value){return value!==void 0?new Color(value):colorString.to.hex(this.rgb().round().color)},hexa(value){if(value!==void 0)return new Color(value);let rgbArray=this.rgb().round().color,alphaHex=Math.round(this.valpha*255).toString(16).toUpperCase();return alphaHex.length===1&&(alphaHex="0"+alphaHex),colorString.to.hex(rgbArray)+alphaHex},rgbNumber(){let rgb=this.rgb().color;return (rgb[0]&255)<<16|(rgb[1]&255)<<8|rgb[2]&255},luminosity(){let rgb=this.rgb().color,lum=[];for(let[i,element]of rgb.entries()){let chan=element/255;lum[i]=chan<=.04045?chan/12.92:((chan+.055)/1.055)**2.4;}return .2126*lum[0]+.7152*lum[1]+.0722*lum[2]},contrast(color2){let lum1=this.luminosity(),lum2=color2.luminosity();return lum1>lum2?(lum1+.05)/(lum2+.05):(lum2+.05)/(lum1+.05)},level(color2){let contrastRatio=this.contrast(color2);return contrastRatio>=7?"AAA":contrastRatio>=4.5?"AA":""},isDark(){let rgb=this.rgb().color;return (rgb[0]*2126+rgb[1]*7152+rgb[2]*722)/1e4<128},isLight(){return !this.isDark()},negate(){let rgb=this.rgb();for(let i=0;i<3;i++)rgb.color[i]=255-rgb.color[i];return rgb},lighten(ratio){let hsl=this.hsl();return hsl.color[2]+=hsl.color[2]*ratio,hsl},darken(ratio){let hsl=this.hsl();return hsl.color[2]-=hsl.color[2]*ratio,hsl},saturate(ratio){let hsl=this.hsl();return hsl.color[1]+=hsl.color[1]*ratio,hsl},desaturate(ratio){let hsl=this.hsl();return hsl.color[1]-=hsl.color[1]*ratio,hsl},whiten(ratio){let hwb=this.hwb();return hwb.color[1]+=hwb.color[1]*ratio,hwb},blacken(ratio){let hwb=this.hwb();return hwb.color[2]+=hwb.color[2]*ratio,hwb},grayscale(){let rgb=this.rgb().color,value=rgb[0]*.3+rgb[1]*.59+rgb[2]*.11;return Color.rgb(value,value,value)},fade(ratio){return this.alpha(this.valpha-this.valpha*ratio)},opaquer(ratio){return this.alpha(this.valpha+this.valpha*ratio)},rotate(degrees){let hsl=this.hsl(),hue=hsl.color[0];return hue=(hue+degrees)%360,hue=hue<0?360+hue:hue,hsl.color[0]=hue,hsl},mix(mixinColor,weight){if(!mixinColor||!mixinColor.rgb)throw new Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof mixinColor);let color1=mixinColor.rgb(),color2=this.rgb(),p=weight===void 0?.5:weight,w=2*p-1,a=color1.alpha()-color2.alpha(),w1=((w*a===-1?w:(w+a)/(1+w*a))+1)/2,w2=1-w1;return Color.rgb(w1*color1.red()+w2*color2.red(),w1*color1.green()+w2*color2.green(),w1*color1.blue()+w2*color2.blue(),color1.alpha()*p+color2.alpha()*(1-p))}};for(let model of Object.keys(convert)){if(skippedModels.includes(model))continue;let{channels}=convert[model];Color.prototype[model]=function(...args){return this.model===model?new Color(this):args.length>0?new Color(args,model):new Color([...assertArray(convert[this.model][model].raw(this.color)),this.valpha],model)},Color[model]=function(...args){let color=args[0];return typeof color=="number"&&(color=zeroArray(args,channels)),new Color(color,model)};}function roundTo(number,places){return Number(number.toFixed(places))}function roundToPlace(places){return function(number){return roundTo(number,places)}}function getset(model,channel,modifier){model=Array.isArray(model)?model:[model];for(let m of model)(limiters[m]||(limiters[m]=[]))[channel]=modifier;return model=model[0],function(value){let result;return value!==void 0?(modifier&&(value=modifier(value)),result=this[model](),result.color[channel]=value,result):(result=this[model]().color[channel],modifier&&(result=modifier(result)),result)}}function maxfn(max){return function(v){return Math.max(0,Math.min(max,v))}}function assertArray(value){return Array.isArray(value)?value:[value]}function zeroArray(array,length){for(let i=0;i<length;i++)typeof array[i]!="number"&&(array[i]=0);return array}module.exports=Color;}});var require_input=__commonJS({"../../node_modules/sharp/lib/input.js"(exports,module){var color=require_color(),is=require_is(),sharp=require_sharp(),align={left:"low",center:"centre",centre:"centre",right:"high"};function _inputOptionsFromObject(obj){let{raw,density,limitInputPixels,ignoreIcc,unlimited,sequentialRead,failOn,failOnError,animated,page,pages,subifd}=obj;return [raw,density,limitInputPixels,ignoreIcc,unlimited,sequentialRead,failOn,failOnError,animated,page,pages,subifd].some(is.defined)?{raw,density,limitInputPixels,ignoreIcc,unlimited,sequentialRead,failOn,failOnError,animated,page,pages,subifd}:void 0}function _createInputDescriptor(input,inputOptions,containerOptions){let inputDescriptor={failOn:"warning",limitInputPixels:Math.pow(16383,2),ignoreIcc:!1,unlimited:!1,sequentialRead:!0};if(is.string(input))inputDescriptor.file=input;else if(is.buffer(input)){if(input.length===0)throw Error("Input Buffer is empty");inputDescriptor.buffer=input;}else if(is.arrayBuffer(input)){if(input.byteLength===0)throw Error("Input bit Array is empty");inputDescriptor.buffer=Buffer.from(input,0,input.byteLength);}else if(is.typedArray(input)){if(input.length===0)throw Error("Input Bit Array is empty");inputDescriptor.buffer=Buffer.from(input.buffer,input.byteOffset,input.byteLength);}else if(is.plainObject(input)&&!is.defined(inputOptions))inputOptions=input,_inputOptionsFromObject(inputOptions)&&(inputDescriptor.buffer=[]);else if(!is.defined(input)&&!is.defined(inputOptions)&&is.object(containerOptions)&&containerOptions.allowStream)inputDescriptor.buffer=[];else throw new Error(`Unsupported input '${input}' of type ${typeof input}${is.defined(inputOptions)?` when also providing options of type ${typeof inputOptions}`:""}`);if(is.object(inputOptions)){if(is.defined(inputOptions.failOnError))if(is.bool(inputOptions.failOnError))inputDescriptor.failOn=inputOptions.failOnError?"warning":"none";else throw is.invalidParameterError("failOnError","boolean",inputOptions.failOnError);if(is.defined(inputOptions.failOn))if(is.string(inputOptions.failOn)&&is.inArray(inputOptions.failOn,["none","truncated","error","warning"]))inputDescriptor.failOn=inputOptions.failOn;else throw is.invalidParameterError("failOn","one of: none, truncated, error, warning",inputOptions.failOn);if(is.defined(inputOptions.density))if(is.inRange(inputOptions.density,1,1e5))inputDescriptor.density=inputOptions.density;else throw is.invalidParameterError("density","number between 1 and 100000",inputOptions.density);if(is.defined(inputOptions.ignoreIcc))if(is.bool(inputOptions.ignoreIcc))inputDescriptor.ignoreIcc=inputOptions.ignoreIcc;else throw is.invalidParameterError("ignoreIcc","boolean",inputOptions.ignoreIcc);if(is.defined(inputOptions.limitInputPixels))if(is.bool(inputOptions.limitInputPixels))inputDescriptor.limitInputPixels=inputOptions.limitInputPixels?Math.pow(16383,2):0;else if(is.integer(inputOptions.limitInputPixels)&&is.inRange(inputOptions.limitInputPixels,0,Number.MAX_SAFE_INTEGER))inputDescriptor.limitInputPixels=inputOptions.limitInputPixels;else throw is.invalidParameterError("limitInputPixels","positive integer",inputOptions.limitInputPixels);if(is.defined(inputOptions.unlimited))if(is.bool(inputOptions.unlimited))inputDescriptor.unlimited=inputOptions.unlimited;else throw is.invalidParameterError("unlimited","boolean",inputOptions.unlimited);if(is.defined(inputOptions.sequentialRead))if(is.bool(inputOptions.sequentialRead))inputDescriptor.sequentialRead=inputOptions.sequentialRead;else throw is.invalidParameterError("sequentialRead","boolean",inputOptions.sequentialRead);if(is.defined(inputOptions.raw))if(is.object(inputOptions.raw)&&is.integer(inputOptions.raw.width)&&inputOptions.raw.width>0&&is.integer(inputOptions.raw.height)&&inputOptions.raw.height>0&&is.integer(inputOptions.raw.channels)&&is.inRange(inputOptions.raw.channels,1,4))switch(inputDescriptor.rawWidth=inputOptions.raw.width,inputDescriptor.rawHeight=inputOptions.raw.height,inputDescriptor.rawChannels=inputOptions.raw.channels,inputDescriptor.rawPremultiplied=!!inputOptions.raw.premultiplied,input.constructor){case Uint8Array:case Uint8ClampedArray:inputDescriptor.rawDepth="uchar";break;case Int8Array:inputDescriptor.rawDepth="char";break;case Uint16Array:inputDescriptor.rawDepth="ushort";break;case Int16Array:inputDescriptor.rawDepth="short";break;case Uint32Array:inputDescriptor.rawDepth="uint";break;case Int32Array:inputDescriptor.rawDepth="int";break;case Float32Array:inputDescriptor.rawDepth="float";break;case Float64Array:inputDescriptor.rawDepth="double";break;default:inputDescriptor.rawDepth="uchar";break}else throw new Error("Expected width, height and channels for raw pixel input");if(is.defined(inputOptions.animated))if(is.bool(inputOptions.animated))inputDescriptor.pages=inputOptions.animated?-1:1;else throw is.invalidParameterError("animated","boolean",inputOptions.animated);if(is.defined(inputOptions.pages))if(is.integer(inputOptions.pages)&&is.inRange(inputOptions.pages,-1,1e5))inputDescriptor.pages=inputOptions.pages;else throw is.invalidParameterError("pages","integer between -1 and 100000",inputOptions.pages);if(is.defined(inputOptions.page))if(is.integer(inputOptions.page)&&is.inRange(inputOptions.page,0,1e5))inputDescriptor.page=inputOptions.page;else throw is.invalidParameterError("page","integer between 0 and 100000",inputOptions.page);if(is.defined(inputOptions.level))if(is.integer(inputOptions.level)&&is.inRange(inputOptions.level,0,256))inputDescriptor.level=inputOptions.level;else throw is.invalidParameterError("level","integer between 0 and 256",inputOptions.level);if(is.defined(inputOptions.subifd))if(is.integer(inputOptions.subifd)&&is.inRange(inputOptions.subifd,-1,1e5))inputDescriptor.subifd=inputOptions.subifd;else throw is.invalidParameterError("subifd","integer between -1 and 100000",inputOptions.subifd);if(is.defined(inputOptions.create))if(is.object(inputOptions.create)&&is.integer(inputOptions.create.width)&&inputOptions.create.width>0&&is.integer(inputOptions.create.height)&&inputOptions.create.height>0&&is.integer(inputOptions.create.channels)){if(inputDescriptor.createWidth=inputOptions.create.width,inputDescriptor.createHeight=inputOptions.create.height,inputDescriptor.createChannels=inputOptions.create.channels,is.defined(inputOptions.create.noise)){if(!is.object(inputOptions.create.noise))throw new Error("Expected noise to be an object");if(!is.inArray(inputOptions.create.noise.type,["gaussian"]))throw new Error("Only gaussian noise is supported at the moment");if(!is.inRange(inputOptions.create.channels,1,4))throw is.invalidParameterError("create.channels","number between 1 and 4",inputOptions.create.channels);if(inputDescriptor.createNoiseType=inputOptions.create.noise.type,is.number(inputOptions.create.noise.mean)&&is.inRange(inputOptions.create.noise.mean,0,1e4))inputDescriptor.createNoiseMean=inputOptions.create.noise.mean;else throw is.invalidParameterError("create.noise.mean","number between 0 and 10000",inputOptions.create.noise.mean);if(is.number(inputOptions.create.noise.sigma)&&is.inRange(inputOptions.create.noise.sigma,0,1e4))inputDescriptor.createNoiseSigma=inputOptions.create.noise.sigma;else throw is.invalidParameterError("create.noise.sigma","number between 0 and 10000",inputOptions.create.noise.sigma)}else if(is.defined(inputOptions.create.background)){if(!is.inRange(inputOptions.create.channels,3,4))throw is.invalidParameterError("create.channels","number between 3 and 4",inputOptions.create.channels);let background=color(inputOptions.create.background);inputDescriptor.createBackground=[background.red(),background.green(),background.blue(),Math.round(background.alpha()*255)];}else throw new Error("Expected valid noise or background to create a new input image");delete inputDescriptor.buffer;}else throw new Error("Expected valid width, height and channels to create a new input image");if(is.defined(inputOptions.text))if(is.object(inputOptions.text)&&is.string(inputOptions.text.text)){if(inputDescriptor.textValue=inputOptions.text.text,is.defined(inputOptions.text.height)&&is.defined(inputOptions.text.dpi))throw new Error("Expected only one of dpi or height");if(is.defined(inputOptions.text.font))if(is.string(inputOptions.text.font))inputDescriptor.textFont=inputOptions.text.font;else throw is.invalidParameterError("text.font","string",inputOptions.text.font);if(is.defined(inputOptions.text.fontfile))if(is.string(inputOptions.text.fontfile))inputDescriptor.textFontfile=inputOptions.text.fontfile;else throw is.invalidParameterError("text.fontfile","string",inputOptions.text.fontfile);if(is.defined(inputOptions.text.width))if(is.integer(inputOptions.text.width)&&inputOptions.text.width>0)inputDescriptor.textWidth=inputOptions.text.width;else throw is.invalidParameterError("text.width","positive integer",inputOptions.text.width);if(is.defined(inputOptions.text.height))if(is.integer(inputOptions.text.height)&&inputOptions.text.height>0)inputDescriptor.textHeight=inputOptions.text.height;else throw is.invalidParameterError("text.height","positive integer",inputOptions.text.height);if(is.defined(inputOptions.text.align))if(is.string(inputOptions.text.align)&&is.string(this.constructor.align[inputOptions.text.align]))inputDescriptor.textAlign=this.constructor.align[inputOptions.text.align];else throw is.invalidParameterError("text.align","valid alignment",inputOptions.text.align);if(is.defined(inputOptions.text.justify))if(is.bool(inputOptions.text.justify))inputDescriptor.textJustify=inputOptions.text.justify;else throw is.invalidParameterError("text.justify","boolean",inputOptions.text.justify);if(is.defined(inputOptions.text.dpi))if(is.integer(inputOptions.text.dpi)&&is.inRange(inputOptions.text.dpi,1,1e6))inputDescriptor.textDpi=inputOptions.text.dpi;else throw is.invalidParameterError("text.dpi","integer between 1 and 1000000",inputOptions.text.dpi);if(is.defined(inputOptions.text.rgba))if(is.bool(inputOptions.text.rgba))inputDescriptor.textRgba=inputOptions.text.rgba;else throw is.invalidParameterError("text.rgba","bool",inputOptions.text.rgba);if(is.defined(inputOptions.text.spacing))if(is.integer(inputOptions.text.spacing)&&is.inRange(inputOptions.text.spacing,-1e6,1e6))inputDescriptor.textSpacing=inputOptions.text.spacing;else throw is.invalidParameterError("text.spacing","integer between -1000000 and 1000000",inputOptions.text.spacing);if(is.defined(inputOptions.text.wrap))if(is.string(inputOptions.text.wrap)&&is.inArray(inputOptions.text.wrap,["word","char","word-char","none"]))inputDescriptor.textWrap=inputOptions.text.wrap;else throw is.invalidParameterError("text.wrap","one of: word, char, word-char, none",inputOptions.text.wrap);delete inputDescriptor.buffer;}else throw new Error("Expected a valid string to create an image with text.")}else if(is.defined(inputOptions))throw new Error("Invalid input options "+inputOptions);return inputDescriptor}function _write(chunk,encoding,callback){Array.isArray(this.options.input.buffer)?is.buffer(chunk)?(this.options.input.buffer.length===0&&this.on("finish",()=>{this.streamInFinished=!0;}),this.options.input.buffer.push(chunk),callback()):callback(new Error("Non-Buffer data on Writable Stream")):callback(new Error("Unexpected data on Writable Stream"));}function _flattenBufferIn(){this._isStreamInput()&&(this.options.input.buffer=Buffer.concat(this.options.input.buffer));}function _isStreamInput(){return Array.isArray(this.options.input.buffer)}function metadata(callback){let stack=Error();return is.fn(callback)?(this._isStreamInput()?this.on("finish",()=>{this._flattenBufferIn(),sharp.metadata(this.options,(err,metadata2)=>{err?callback(is.nativeError(err,stack)):callback(null,metadata2);});}):sharp.metadata(this.options,(err,metadata2)=>{err?callback(is.nativeError(err,stack)):callback(null,metadata2);}),this):this._isStreamInput()?new Promise((resolve,reject)=>{let finished=()=>{this._flattenBufferIn(),sharp.metadata(this.options,(err,metadata2)=>{err?reject(is.nativeError(err,stack)):resolve(metadata2);});};this.writableFinished?finished():this.once("finish",finished);}):new Promise((resolve,reject)=>{sharp.metadata(this.options,(err,metadata2)=>{err?reject(is.nativeError(err,stack)):resolve(metadata2);});})}function stats(callback){let stack=Error();return is.fn(callback)?(this._isStreamInput()?this.on("finish",()=>{this._flattenBufferIn(),sharp.stats(this.options,(err,stats2)=>{err?callback(is.nativeError(err,stack)):callback(null,stats2);});}):sharp.stats(this.options,(err,stats2)=>{err?callback(is.nativeError(err,stack)):callback(null,stats2);}),this):this._isStreamInput()?new Promise((resolve,reject)=>{this.on("finish",function(){this._flattenBufferIn(),sharp.stats(this.options,(err,stats2)=>{err?reject(is.nativeError(err,stack)):resolve(stats2);});});}):new Promise((resolve,reject)=>{sharp.stats(this.options,(err,stats2)=>{err?reject(is.nativeError(err,stack)):resolve(stats2);});})}module.exports=function(Sharp){Object.assign(Sharp.prototype,{_inputOptionsFromObject,_createInputDescriptor,_write,_flattenBufferIn,_isStreamInput,metadata,stats}),Sharp.align=align;};}});var require_resize=__commonJS({"../../node_modules/sharp/lib/resize.js"(exports,module){var is=require_is(),gravity={center:0,centre:0,north:1,east:2,south:3,west:4,northeast:5,southeast:6,southwest:7,northwest:8},position={top:1,right:2,bottom:3,left:4,"right top":5,"right bottom":6,"left bottom":7,"left top":8},extendWith={background:"background",copy:"copy",repeat:"repeat",mirror:"mirror"},strategy={entropy:16,attention:17},kernel={nearest:"nearest",linear:"linear",cubic:"cubic",mitchell:"mitchell",lanczos2:"lanczos2",lanczos3:"lanczos3"},fit={contain:"contain",cover:"cover",fill:"fill",inside:"inside",outside:"outside"},mapFitToCanvas={contain:"embed",cover:"crop",fill:"ignore_aspect",inside:"max",outside:"min"};function isRotationExpected(options){return options.angle%360!==0||options.useExifOrientation===!0||options.rotationAngle!==0}function isResizeExpected(options){return options.width!==-1||options.height!==-1}function resize(widthOrOptions,height,options){if(isResizeExpected(this.options)&&this.options.debuglog("ignoring previous resize options"),this.options.widthPost!==-1&&this.options.debuglog("operation order will be: extract, resize, extract"),is.defined(widthOrOptions))if(is.object(widthOrOptions)&&!is.defined(options))options=widthOrOptions;else if(is.integer(widthOrOptions)&&widthOrOptions>0)this.options.width=widthOrOptions;else throw is.invalidParameterError("width","positive integer",widthOrOptions);else this.options.width=-1;if(is.defined(height))if(is.integer(height)&&height>0)this.options.height=height;else throw is.invalidParameterError("height","positive integer",height);else this.options.height=-1;if(is.object(options)){if(is.defined(options.width))if(is.integer(options.width)&&options.width>0)this.options.width=options.width;else throw is.invalidParameterError("width","positive integer",options.width);if(is.defined(options.height))if(is.integer(options.height)&&options.height>0)this.options.height=options.height;else throw is.invalidParameterError("height","positive integer",options.height);if(is.defined(options.fit)){let canvas=mapFitToCanvas[options.fit];if(is.string(canvas))this.options.canvas=canvas;else throw is.invalidParameterError("fit","valid fit",options.fit)}if(is.defined(options.position)){let pos=is.integer(options.position)?options.position:strategy[options.position]||position[options.position]||gravity[options.position];if(is.integer(pos)&&(is.inRange(pos,0,8)||is.inRange(pos,16,17)))this.options.position=pos;else throw is.invalidParameterError("position","valid position/gravity/strategy",options.position)}if(this._setBackgroundColourOption("resizeBackground",options.background),is.defined(options.kernel))if(is.string(kernel[options.kernel]))this.options.kernel=kernel[options.kernel];else throw is.invalidParameterError("kernel","valid kernel name",options.kernel);is.defined(options.withoutEnlargement)&&this._setBooleanOption("withoutEnlargement",options.withoutEnlargement),is.defined(options.withoutReduction)&&this._setBooleanOption("withoutReduction",options.withoutReduction),is.defined(options.fastShrinkOnLoad)&&this._setBooleanOption("fastShrinkOnLoad",options.fastShrinkOnLoad);}return isRotationExpected(this.options)&&isResizeExpected(this.options)&&(this.options.rotateBeforePreExtract=!0),this}function extend(extend2){if(is.integer(extend2)&&extend2>0)this.options.extendTop=extend2,this.options.extendBottom=extend2,this.options.extendLeft=extend2,this.options.extendRight=extend2;else if(is.object(extend2)){if(is.defined(extend2.top))if(is.integer(extend2.top)&&extend2.top>=0)this.options.extendTop=extend2.top;else throw is.invalidParameterError("top","positive integer",extend2.top);if(is.defined(extend2.bottom))if(is.integer(extend2.bottom)&&extend2.bottom>=0)this.options.extendBottom=extend2.bottom;else throw is.invalidParameterError("bottom","positive integer",extend2.bottom);if(is.defined(extend2.left))if(is.integer(extend2.left)&&extend2.left>=0)this.options.extendLeft=extend2.left;else throw is.invalidParameterError("left","positive integer",extend2.left);if(is.defined(extend2.right))if(is.integer(extend2.right)&&extend2.right>=0)this.options.extendRight=extend2.right;else throw is.invalidParameterError("right","positive integer",extend2.right);if(this._setBackgroundColourOption("extendBackground",extend2.background),is.defined(extend2.extendWith))if(is.string(extendWith[extend2.extendWith]))this.options.extendWith=extendWith[extend2.extendWith];else throw is.invalidParameterError("extendWith","one of: background, copy, repeat, mirror",extend2.extendWith)}else throw is.invalidParameterError("extend","integer or object",extend2);return this}function extract(options){let suffix=isResizeExpected(this.options)||this.options.widthPre!==-1?"Post":"Pre";return this.options[`width${suffix}`]!==-1&&this.options.debuglog("ignoring previous extract options"),["left","top","width","height"].forEach(function(name){let value=options[name];if(is.integer(value)&&value>=0)this.options[name+(name==="left"||name==="top"?"Offset":"")+suffix]=value;else throw is.invalidParameterError(name,"integer",value)},this),isRotationExpected(this.options)&&!isResizeExpected(this.options)&&(this.options.widthPre===-1||this.options.widthPost===-1)&&(this.options.rotateBeforePreExtract=!0),this}function trim(options){if(this.options.trimThreshold=10,is.defined(options))if(is.object(options)){if(is.defined(options.background)&&this._setBackgroundColourOption("trimBackground",options.background),is.defined(options.threshold))if(is.number(options.threshold)&&options.threshold>=0)this.options.trimThreshold=options.threshold;else throw is.invalidParameterError("threshold","positive number",options.threshold);is.defined(options.lineArt)&&this._setBooleanOption("trimLineArt",options.lineArt);}else throw is.invalidParameterError("trim","object",options);return isRotationExpected(this.options)&&(this.options.rotateBeforePreExtract=!0),this}module.exports=function(Sharp){Object.assign(Sharp.prototype,{resize,extend,extract,trim}),Sharp.gravity=gravity,Sharp.strategy=strategy,Sharp.kernel=kernel,Sharp.fit=fit,Sharp.position=position;};}});var require_composite=__commonJS({"../../node_modules/sharp/lib/composite.js"(exports,module){var is=require_is(),blend={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 composite(images){if(!Array.isArray(images))throw is.invalidParameterError("images to composite","array",images);return this.options.composite=images.map(image=>{if(!is.object(image))throw is.invalidParameterError("image to composite","object",image);let inputOptions=this._inputOptionsFromObject(image),composite2={input:this._createInputDescriptor(image.input,inputOptions,{allowStream:!1}),blend:"over",tile:!1,left:0,top:0,hasOffset:!1,gravity:0,premultiplied:!1};if(is.defined(image.blend))if(is.string(blend[image.blend]))composite2.blend=blend[image.blend];else throw is.invalidParameterError("blend","valid blend name",image.blend);if(is.defined(image.tile))if(is.bool(image.tile))composite2.tile=image.tile;else throw is.invalidParameterError("tile","boolean",image.tile);if(is.defined(image.left))if(is.integer(image.left))composite2.left=image.left;else throw is.invalidParameterError("left","integer",image.left);if(is.defined(image.top))if(is.integer(image.top))composite2.top=image.top;else throw is.invalidParameterError("top","integer",image.top);if(is.defined(image.top)!==is.defined(image.left))throw new Error("Expected both left and top to be set");if(composite2.hasOffset=is.integer(image.top)&&is.integer(image.left),is.defined(image.gravity))if(is.integer(image.gravity)&&is.inRange(image.gravity,0,8))composite2.gravity=image.gravity;else if(is.string(image.gravity)&&is.integer(this.constructor.gravity[image.gravity]))composite2.gravity=this.constructor.gravity[image.gravity];else throw is.invalidParameterError("gravity","valid gravity",image.gravity);if(is.defined(image.premultiplied))if(is.bool(image.premultiplied))composite2.premultiplied=image.premultiplied;else throw is.invalidParameterError("premultiplied","boolean",image.premultiplied);return composite2}),this}module.exports=function(Sharp){Sharp.prototype.composite=composite,Sharp.blend=blend;};}});var require_operation=__commonJS({"../../node_modules/sharp/lib/operation.js"(exports,module){var color=require_color(),is=require_is(),vipsPrecision={integer:"integer",float:"float",approximate:"approximate"};function rotate(angle,options){if((this.options.useExifOrientation||this.options.angle||this.options.rotationAngle)&&this.options.debuglog("ignoring previous rotate options"),!is.defined(angle))this.options.useExifOrientation=!0;else if(is.integer(angle)&&!(angle%90))this.options.angle=angle;else if(is.number(angle)){if(this.options.rotationAngle=angle,is.object(options)&&options.background){let backgroundColour=color(options.background);this.options.rotationBackground=[backgroundColour.red(),backgroundColour.green(),backgroundColour.blue(),Math.round(backgroundColour.alpha()*255)];}}else throw is.invalidParameterError("angle","numeric",angle);return this}function flip(flip2){return this.options.flip=is.bool(flip2)?flip2:!0,this}function flop(flop2){return this.options.flop=is.bool(flop2)?flop2:!0,this}function affine(matrix,options){let flatMatrix=[].concat(...matrix);if(flatMatrix.length===4&&flatMatrix.every(is.number))this.options.affineMatrix=flatMatrix;else throw is.invalidParameterError("matrix","1x4 or 2x2 array",matrix);if(is.defined(options))if(is.object(options)){if(this._setBackgroundColourOption("affineBackground",options.background),is.defined(options.idx))if(is.number(options.idx))this.options.affineIdx=options.idx;else throw is.invalidParameterError("options.idx","number",options.idx);if(is.defined(options.idy))if(is.number(options.idy))this.options.affineIdy=options.idy;else throw is.invalidParameterError("options.idy","number",options.idy);if(is.defined(options.odx))if(is.number(options.odx))this.options.affineOdx=options.odx;else throw is.invalidParameterError("options.odx","number",options.odx);if(is.defined(options.ody))if(is.number(options.ody))this.options.affineOdy=options.ody;else throw is.invalidParameterError("options.ody","number",options.ody);if(is.defined(options.interpolator))if(is.inArray(options.interpolator,Object.values(this.constructor.interpolators)))this.options.affineInterpolator=options.interpolator;else throw is.invalidParameterError("options.interpolator","valid interpolator name",options.interpolator)}else throw is.invalidParameterError("options","object",options);return this}function sharpen(options,flat,jagged){if(!is.defined(options))this.options.sharpenSigma=-1;else if(is.bool(options))this.options.sharpenSigma=options?-1:0;else if(is.number(options)&&is.inRange(options,.01,1e4)){if(this.options.sharpenSigma=options,is.defined(flat))if(is.number(flat)&&is.inRange(flat,0,1e4))this.options.sharpenM1=flat;else throw is.invalidParameterError("flat","number between 0 and 10000",flat);if(is.defined(jagged))if(is.number(jagged)&&is.inRange(jagged,0,1e4))this.options.sharpenM2=jagged;else throw is.invalidParameterError("jagged","number between 0 and 10000",jagged)}else if(is.plainObject(options)){if(is.number(options.sigma)&&is.inRange(options.sigma,1e-6,10))this.options.sharpenSigma=options.sigma;else throw is.invalidParameterError("options.sigma","number between 0.000001 and 10",options.sigma);if(is.defined(options.m1))if(is.number(options.m1)&&is.inRange(options.m1,0,1e6))this.options.sharpenM1=options.m1;else throw is.invalidParameterError("options.m1","number between 0 and 1000000",options.m1);if(is.defined(options.m2))if(is.number(options.m2)&&is.inRange(options.m2,0,1e6))this.options.sharpenM2=options.m2;else throw is.invalidParameterError("options.m2","number between 0 and 1000000",options.m2);if(is.defined(options.x1))if(is.number(options.x1)&&is.inRange(options.x1,0,1e6))this.options.sharpenX1=options.x1;else throw is.invalidParameterError("options.x1","number between 0 and 1000000",options.x1);if(is.defined(options.y2))if(is.number(options.y2)&&is.inRange(options.y2,0,1e6))this.options.sharpenY2=options.y2;else throw is.invalidParameterError("options.y2","number between 0 and 1000000",options.y2);if(is.defined(options.y3))if(is.number(options.y3)&&is.inRange(options.y3,0,1e6))this.options.sharpenY3=options.y3;else throw is.invalidParameterError("options.y3","number between 0 and 1000000",options.y3)}else throw is.invalidParameterError("sigma","number between 0.01 and 10000",options);return this}function median(size){if(!is.defined(size))this.options.medianSize=3;else if(is.integer(size)&&is.inRange(size,1,1e3))this.options.medianSize=size;else throw is.invalidParameterError("size","integer between 1 and 1000",size);return this}function blur(options){let sigma;if(is.number(options))sigma=options;else if(is.plainObject(options)){if(!is.number(options.sigma))throw is.invalidParameterError("options.sigma","number between 0.3 and 1000",sigma);if(sigma=options.sigma,"precision"in options)if(is.string(vipsPrecision[options.precision]))this.options.precision=vipsPrecision[options.precision];else throw is.invalidParameterError("precision","one of: integer, float, approximate",options.precision);if("minAmplitude"in options)if(is.number(options.minAmplitude)&&is.inRange(options.minAmplitude,.001,1))this.options.minAmpl=options.minAmplitude;else throw is.invalidParameterError("minAmplitude","number between 0.001 and 1",options.minAmplitude)}if(!is.defined(options))this.options.blurSigma=-1;else if(is.bool(options))this.options.blurSigma=options?-1:0;else if(is.number(sigma)&&is.inRange(sigma,.3,1e3))this.options.blurSigma=sigma;else throw is.invalidParameterError("sigma","number between 0.3 and 1000",sigma);return this}function flatten(options){return this.options.flatten=is.bool(options)?options:!0,is.object(options)&&this._setBackgroundColourOption("flattenBackground",options.background),this}function unflatten(){return this.options.unflatten=!0,this}function gamma(gamma2,gammaOut){if(!is.defined(gamma2))this.options.gamma=2.2;else if(is.number(gamma2)&&is.inRange(gamma2,1,3))this.options.gamma=gamma2;else throw is.invalidParameterError("gamma","number between 1.0 and 3.0",gamma2);if(!is.defined(gammaOut))this.options.gammaOut=this.options.gamma;else if(is.number(gammaOut)&&is.inRange(gammaOut,1,3))this.options.gammaOut=gammaOut;else throw is.invalidParameterError("gammaOut","number between 1.0 and 3.0",gammaOut);return this}function negate(options){if(this.options.negate=is.bool(options)?options:!0,is.plainObject(options)&&"alpha"in options)if(is.bool(options.alpha))this.options.negateAlpha=options.alpha;else throw is.invalidParameterError("alpha","should be boolean value",options.alpha);return this}function normalise(options){if(is.plainObject(options)){if(is.defined(options.lower))if(is.number(options.lower)&&is.inRange(options.lower,0,99))this.options.normaliseLower=options.lower;else throw is.invalidParameterError("lower","number between 0 and 99",options.lower);if(is.defined(options.upper))if(is.number(options.upper)&&is.inRange(options.upper,1,100))this.options.normaliseUpper=options.upper;else throw is.invalidParameterError("upper","number between 1 and 100",options.upper)}if(this.options.normaliseLower>=this.options.normaliseUpper)throw is.invalidParameterError("range","lower to be less than upper",`${this.options.normaliseLower} >= ${this.options.normaliseUpper}`);return this.options.normalise=!0,this}function normalize(options){return this.normalise(options)}function clahe(options){if(is.plainObject(options)){if(is.integer(options.width)&&options.width>0)this.options.claheWidth=options.width;else throw is.invalidParameterError("width","integer greater than zero",options.width);if(is.integer(options.height)&&options.height>0)this.options.claheHeight=options.height;else throw is.invalidParameterError("height","integer greater than zero",options.height);if(is.defined(options.maxSlope))if(is.integer(options.maxSlope)&&is.inRange(options.maxSlope,0,100))this.options.claheMaxSlope=options.maxSlope;else throw is.invalidParameterError("maxSlope","integer between 0 and 100",options.maxSlope)}else throw is.invalidParameterError("options","plain object",options);return this}function convolve(kernel){if(!is.object(kernel)||!Array.isArray(kernel.kernel)||!is.integer(kernel.width)||!is.integer(kernel.height)||!is.inRange(kernel.width,3,1001)||!is.inRange(kernel.height,3,1001)||kernel.height*kernel.width!==kernel.kernel.length)throw new Error("Invalid convolution kernel");return is.integer(kernel.scale)||(kernel.scale=kernel.kernel.reduce(function(a,b){return a+b},0)),kernel.scale<1&&(kernel.scale=1),is.integer(kernel.offset)||(kernel.offset=0),this.options.convKernel=kernel,this}function threshold(threshold2,options){if(!is.defined(threshold2))this.options.threshold=128;else if(is.bool(threshold2))this.options.threshold=threshold2?128:0;else if(is.integer(threshold2)&&is.inRange(threshold2,0,255))this.options.threshold=threshold2;else throw is.invalidParameterError("threshold","integer between 0 and 255",threshold2);return !is.object(options)||options.greyscale===!0||options.grayscale===!0?this.options.thresholdGrayscale=!0:this.options.thresholdGrayscale=!1,this}function boolean(operand,operator,options){if(this.options.boolean=this._createInputDescriptor(operand,options),is.string(operator)&&is.inArray(operator,["and","or","eor"]))this.options.booleanOp=operator;else throw is.invalidParameterError("operator","one of: and, or, eor",operator);return this}function linear(a,b){if(!is.defined(a)&&is.number(b)?a=1:is.number(a)&&!is.defined(b)&&(b=0),!is.defined(a))this.options.linearA=[];else if(is.number(a))this.options.linearA=[a];else if(Array.isArray(a)&&a.length&&a.every(is.number))this.options.linearA=a;else throw is.invalidParameterError("a","number or array of numbers",a);if(!is.defined(b))this.options.linearB=[];else if(is.number(b))this.options.linearB=[b];else if(Array.isArray(b)&&b.length&&b.every(is.number))this.options.linearB=b;else throw is.invalidParameterError("b","number or array of numbers",b);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 recomb(inputMatrix){if(!Array.isArray(inputMatrix))throw is.invalidParameterError("inputMatrix","array",inputMatrix);if(inputMatrix.length!==3&&inputMatrix.length!==4)throw is.invalidParameterError("inputMatrix","3x3 or 4x4 array",inputMatrix.length);let recombMatrix=inputMatrix.flat().map(Number);if(recombMatrix.length!==9&&recombMatrix.length!==16)throw is.invalidParameterError("inputMatrix","cardinality of 9 or 16",recombMatrix.length);return this.options.recombMatrix=recombMatrix,this}function modulate(options){if(!is.plainObject(options))throw is.invalidParameterError("options","plain object",options);if("brightness"in options)if(is.number(options.brightness)&&options.brightness>=0)this.options.brightness=options.brightness;else throw is.invalidParameterError("brightness","number above zero",options.brightness);if("saturation"in options)if(is.number(options.saturation)&&options.saturation>=0)this.options.saturation=options.saturation;else throw is.invalidParameterError("saturation","number above zero",options.saturation);if("hue"in options)if(is.integer(options.hue))this.options.hue=options.hue%360;else throw is.invalidParameterError("hue","number",options.hue);if("lightness"in options)if(is.number(options.lightness))this.options.lightness=options.lightness;else throw is.invalidParameterError("lightness","number",options.lightness);return this}module.exports=function(Sharp){Object.assign(Sharp.prototype,{rotate,flip,flop,affine,sharpen,median,blur,flatten,unflatten,gamma,negate,normalise,normalize,clahe,convolve,threshold,boolean,linear,recomb,modulate});};}});var require_colour=__commonJS({"../../node_modules/sharp/lib/colour.js"(exports,module){var color=require_color(),is=require_is(),colourspace={multiband:"multiband","b-w":"b-w",bw:"b-w",cmyk:"cmyk",srgb:"srgb"};function tint(tint2){return this._setBackgroundColourOption("tint",tint2),this}function greyscale(greyscale2){return this.options.greyscale=is.bool(greyscale2)?greyscale2:!0,this}function grayscale(grayscale2){return this.greyscale(grayscale2)}function pipelineColourspace(colourspace2){if(!is.string(colourspace2))throw is.invalidParameterError("colourspace","string",colourspace2);return this.options.colourspacePipeline=colourspace2,this}function pipelineColorspace(colorspace){return this.pipelineColourspace(colorspace)}function toColourspace(colourspace2){if(!is.string(colourspace2))throw is.invalidParameterError("colourspace","string",colourspace2);return this.options.colourspace=colourspace2,this}function toColorspace(colorspace){return this.toColourspace(colorspace)}function _setBackgroundColourOption(key,value){if(is.defined(value))if(is.object(value)||is.string(value)){let colour=color(value);this.options[key]=[colour.red(),colour.green(),colour.blue(),Math.round(colour.alpha()*255)];}else throw is.invalidParameterError("background","object or string",value)}module.exports=function(Sharp){Object.assign(Sharp.prototype,{tint,greyscale,grayscale,pipelineColourspace,pipelineColorspace,toColourspace,toColorspace,_setBackgroundColourOption}),Sharp.colourspace=colourspace,Sharp.colorspace=colourspace;};}});var require_channel=__commonJS({"../../node_modules/sharp/lib/channel.js"(exports,module){var is=require_is(),bool={and:"and",or:"or",eor:"eor"};function removeAlpha(){return this.options.removeAlpha=!0,this}function ensureAlpha(alpha){if(is.defined(alpha))if(is.number(alpha)&&is.inRange(alpha,0,1))this.options.ensureAlpha=alpha;else throw is.invalidParameterError("alpha","number between 0 and 1",alpha);else this.options.ensureAlpha=1;return this}function extractChannel(channel){let channelMap={red:0,green:1,blue:2,alpha:3};if(Object.keys(channelMap).includes(channel)&&(channel=channelMap[channel]),is.integer(channel)&&is.inRange(channel,0,4))this.options.extractChannel=channel;else throw is.invalidParameterError("channel","integer or one of: red, green, blue, alpha",channel);return this}function joinChannel(images,options){return Array.isArray(images)?images.forEach(function(image){this.options.joinChannelIn.push(this._createInputDescriptor(image,options));},this):this.options.joinChannelIn.push(this._createInputDescriptor(images,options)),this}function bandbool(boolOp){if(is.string(boolOp)&&is.inArray(boolOp,["and","or","eor"]))this.options.bandBoolOp=boolOp;else throw is.invalidParameterError("boolOp","one of: and, or, eor",boolOp);return this}module.exports=function(Sharp){Object.assign(Sharp.prototype,{removeAlpha,ensureAlpha,extractChannel,joinChannel,bandbool}),Sharp.bool=bool;};}});var require_output=__commonJS({"../../node_modules/sharp/lib/output.js"(exports,module){var path=__require("node:path"),is=require_is(),sharp=require_sharp(),formats=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"]]),jp2Regex=/\.(jp[2x]|j2[kc])$/i,errJp2Save=()=>new Error("JP2 output requires libvips with support for OpenJPEG"),bitdepthFromColourCount=colours=>1<<31-Math.clz32(Math.ceil(Math.log2(colours)));function toFile(fileOut,callback){let err;if(is.string(fileOut)?is.string(this.options.input.file)&&path.resolve(this.options.input.file)===path.resolve(fileOut)?err=new Error("Cannot use same file for input and output"):jp2Regex.test(path.extname(fileOut))&&!this.constructor.format.jp2k.output.file&&(err=errJp2Save()):err=new Error("Missing output file path"),err)if(is.fn(callback))callback(err);else return Promise.reject(err);else {this.options.fileOut=fileOut;let stack=Error();return this._pipeline(callback,stack)}return this}function toBuffer(options,callback){is.object(options)?this._setBooleanOption("resolveWithObject",options.resolveWithObject):this.options.resolveWithObject&&(this.options.resolveWithObject=!1),this.options.fileOut="";let stack=Error();return this._pipeline(is.fn(options)?options:callback,stack)}function keepExif(){return this.options.keepMetadata|=1,this}function withExif(exif){if(is.object(exif))for(let[ifd,entries]of Object.entries(exif))if(is.object(entries))for(let[k,v]of Object.entries(entries))if(is.string(v))this.options.withExif[`exif-${ifd.toLowerCase()}-${k}`]=v;else throw is.invalidParameterError(`${ifd}.${k}`,"string",v);else throw is.invalidParameterError(ifd,"object",entries);else throw is.invalidParameterError("exif","object",exif);return this.options.withExifMerge=!1,this.keepExif()}function withExifMerge(exif){return this.withExif(exif),this.options.withExifMerge=!0,this}function keepIccProfile(){return this.options.keepMetadata|=8,this}function withIccProfile(icc,options){if(is.string(icc))this.options.withIccProfile=icc;else throw is.invalidParameterError("icc","string",icc);if(this.keepIccProfile(),is.object(options)&&is.defined(options.attach))if(is.bool(options.attach))options.attach||(this.options.keepMetadata&=-9);else throw is.invalidParameterError("attach","boolean",options.attach);return this}function keepMetadata(){return this.options.keepMetadata=31,this}function withMetadata(options){if(this.keepMetadata(),this.withIccProfile("srgb"),is.object(options)){if(is.defined(options.orientation))if(is.integer(options.orientation)&&is.inRange(options.orientation,1,8))this.options.withMetadataOrientation=options.orientation;else throw is.invalidParameterError("orientation","integer between 1 and 8",options.orientation);if(is.defined(options.density))if(is.number(options.density)&&options.density>0)this.options.withMetadataDensity=options.density;else throw is.invalidParameterError("density","positive number",options.density);is.defined(options.icc)&&this.withIccProfile(options.icc),is.defined(options.exif)&&this.withExifMerge(options.exif);}return this}function toFormat(format,options){let actualFormat=formats.get((is.object(format)&&is.string(format.id)?format.id:format).toLowerCase());if(!actualFormat)throw is.invalidParameterError("format",`one of: ${[...formats.keys()].join(", ")}`,format);return this[actualFormat](options)}function jpeg(options){if(is.object(options)){if(is.defined(options.quality))if(is.integer(options.quality)&&is.inRange(options.quality,1,100))this.options.jpegQuality=options.quality;else throw is.invalidParameterError("quality","integer between 1 and 100",options.quality);if(is.defined(options.progressive)&&this._setBooleanOption("jpegProgressive",options.progressive),is.defined(options.chromaSubsampling))if(is.string(options.chromaSubsampling)&&is.inArray(options.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jpegChromaSubsampling=options.chromaSubsampling;else throw is.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",options.chromaSubsampling);let optimiseCoding=is.bool(options.optimizeCoding)?options.optimizeCoding:options.optimiseCoding;if(is.defined(optimiseCoding)&&this._setBooleanOption("jpegOptimiseCoding",optimiseCoding),is.defined(options.mozjpeg))if(is.bool(options.mozjpeg))options.mozjpeg&&(this.options.jpegTrellisQuantisation=!0,this.options.jpegOvershootDeringing=!0,this.options.jpegOptimiseScans=!0,this.options.jpegProgressive=!0,this.options.jpegQuantisationTable=3);else throw is.invalidParameterError("mozjpeg","boolean",options.mozjpeg);let trellisQuantisation=is.bool(options.trellisQuantization)?options.trellisQuantization:options.trellisQuantisation;is.defined(trellisQuantisation)&&this._setBooleanOption("jpegTrellisQuantisation",trellisQuantisation),is.defined(options.overshootDeringing)&&this._setBooleanOption("jpegOvershootDeringing",options.overshootDeringing);let optimiseScans=is.bool(options.optimizeScans)?options.optimizeScans:options.optimiseScans;is.defined(optimiseScans)&&(this._setBooleanOption("jpegOptimiseScans",optimiseScans),optimiseScans&&(this.options.jpegProgressive=!0));let quantisationTable=is.number(options.quantizationTable)?options.quantizationTable:options.quantisationTable;if(is.defined(quantisationTable))if(is.integer(quantisationTable)&&is.inRange(quantisationTable,0,8))this.options.jpegQuantisationTable=quantisationTable;else throw is.invalidParameterError("quantisationTable","integer between 0 and 8",quantisationTable)}return this._updateFormatOut("jpeg",options)}function png(options){if(is.object(options)){if(is.defined(options.progressive)&&this._setBooleanOption("pngProgressive",options.progressive),is.defined(options.compressionLevel))if(is.integer(options.compressionLevel)&&is.inRange(options.compressionLevel,0,9))this.options.pngCompressionLevel=options.compressionLevel;else throw is.invalidParameterError("compressionLevel","integer between 0 and 9",options.compressionLevel);is.defined(options.adaptiveFiltering)&&this._setBooleanOption("pngAdaptiveFiltering",options.adaptiveFiltering);let colours=options.colours||options.colors;if(is.defined(colours))if(is.integer(colours)&&is.inRange(colours,2,256))this.options.pngBitdepth=bitdepthFromColourCount(colours);else throw is.invalidParameterError("colours","integer between 2 and 256",colours);if(is.defined(options.palette)?this._setBooleanOption("pngPalette",options.palette):[options.quality,options.effort,options.colours,options.colors,options.dither].some(is.defined)&&this._setBooleanOption("pngPalette",!0),this.options.pngPalette){if(is.defined(options.quality))if(is.integer(options.quality)&&is.inRange(options.quality,0,100))this.options.pngQuality=options.quality;else throw is.invalidParameterError("quality","integer between 0 and 100",options.quality);if(is.defined(options.effort))if(is.integer(options.effort)&&is.inRange(options.effort,1,10))this.options.pngEffort=options.effort;else throw is.invalidParameterError("effort","integer between 1 and 10",options.effort);if(is.defined(options.dither))if(is.number(options.dither)&&is.inRange(options.dither,0,1))this.options.pngDither=options.dither;else throw is.invalidParameterError("dither","number between 0.0 and 1.0",options.dither)}}return this._updateFormatOut("png",options)}function webp(options){if(is.object(options)){if(is.defined(options.quality))if(is.integer(options.quality)&&is.inRange(options.quality,1,100))this.options.webpQuality=options.quality;else throw is.invalidParameterError("quality","integer between 1 and 100",options.quality);if(is.defined(options.alphaQuality))if(is.integer(options.alphaQuality)&&is.inRange(options.alphaQuality,0,100))this.options.webpAlphaQuality=options.alphaQuality;else throw is.invalidParameterError("alphaQuality","integer between 0 and 100",options.alphaQuality);if(is.defined(options.lossless)&&this._setBooleanOption("webpLossless",options.lossless),is.defined(options.nearLossless)&&this._setBooleanOption("webpNearLossless",options.nearLossless),is.defined(options.smartSubsample)&&this._setBooleanOption("webpSmartSubsample",options.smartSubsample),is.defined(options.preset))if(is.string(options.preset)&&is.inArray(options.preset,["default","photo","picture","drawing","icon","text"]))this.options.webpPreset=options.preset;else throw is.invalidParameterError("preset","one of: default, photo, picture, drawing, icon, text",options.preset);if(is.defined(options.effort))if(is.integer(options.effort)&&is.inRange(options.effort,0,6))this.options.webpEffort=options.effort;else throw is.invalidParameterError("effort","integer between 0 and 6",options.effort);is.defined(options.minSize)&&this._setBooleanOption("webpMinSize",options.minSize),is.defined(options.mixed)&&this._setBooleanOption("webpMixed",options.mixed);}return trySetAnimationOptions(options,this.options),this._updateFormatOut("webp",options)}function gif(options){if(is.object(options)){is.defined(options.reuse)&&this._setBooleanOption("gifReuse",options.reuse),is.defined(options.progressive)&&this._setBooleanOption("gifProgressive",options.progressive);let colours=options.colours||options.colors;if(is.defined(colours))if(is.integer(colours)&&is.inRange(colours,2,256))this.options.gifBitdepth=bitdepthFromColourCount(colours);else throw is.invalidParameterError("colours","integer between 2 and 256",colours);if(is.defined(options.effort))if(is.number(options.effort)&&is.inRange(options.effort,1,10))this.options.gifEffort=options.effort;else throw is.invalidParameterError("effort","integer between 1 and 10",options.effort);if(is.defined(options.dither))if(is.number(options.dither)&&is.inRange(options.dither,0,1))this.options.gifDither=options.dither;else throw is.invalidParameterError("dither","number between 0.0 and 1.0",options.dither);if(is.defined(options.interFrameMaxError))if(is.number(options.interFrameMaxError)&&is.inRange(options.interFrameMaxError,0,32))this.options.gifInterFrameMaxError=options.interFrameMaxError;else throw is.invalidParameterError("interFrameMaxError","number between 0.0 and 32.0",options.interFrameMaxError);if(is.defined(options.interPaletteMaxError))if(is.number(options.interPaletteMaxError)&&is.inRange(options.interPaletteMaxError,0,256))this.options.gifInterPaletteMaxError=options.interPaletteMaxError;else throw is.invalidParameterError("interPaletteMaxError","number between 0.0 and 256.0",options.interPaletteMaxError)}return trySetAnimationOptions(options,this.options),this._updateFormatOut("gif",options)}function jp2(options){if(!this.constructor.format.jp2k.output.buffer)throw errJp2Save();if(is.object(options)){if(is.defined(options.quality))if(is.integer(options.quality)&&is.inRange(options.quality,1,100))this.options.jp2Quality=options.quality;else throw is.invalidParameterError("quality","integer between 1 and 100",options.quality);if(is.defined(options.lossless))if(is.bool(options.lossless))this.options.jp2Lossless=options.lossless;else throw is.invalidParameterError("lossless","boolean",options.lossless);if(is.defined(options.tileWidth))if(is.integer(options.tileWidth)&&is.inRange(options.tileWidth,1,32768))this.options.jp2TileWidth=options.tileWidth;else throw is.invalidParameterError("tileWidth","integer between 1 and 32768",options.tileWidth);if(is.defined(options.tileHeight))if(is.integer(options.tileHeight)&&is.inRange(options.tileHeight,1,32768))this.options.jp2TileHeight=options.tileHeight;else throw is.invalidParameterError("tileHeight","integer between 1 and 32768",options.tileHeight);if(is.defined(options.chromaSubsampling))if(is.string(options.chromaSubsampling)&&is.inArray(options.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jp2ChromaSubsampling=options.chromaSubsampling;else throw is.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",options.chromaSubsampling)}return this._updateFormatOut("jp2",options)}function trySetAnimationOptions(source,target){if(is.object(source)&&is.defined(source.loop))if(is.integer(source.loop)&&is.inRange(source.loop,0,65535))target.loop=source.loop;else throw is.invalidParameterError("loop","integer between 0 and 65535",source.loop);if(is.object(source)&&is.defined(source.delay))if(is.integer(source.delay)&&is.inRange(source.delay,0,65535))target.delay=[source.delay];else if(Array.isArray(source.delay)&&source.delay.every(is.integer)&&source.delay.every(v=>is.inRange(v,0,65535)))target.delay=source.delay;else throw is.invalidParameterError("delay","integer or an array of integers between 0 and 65535",source.delay)}function tiff(options){if(is.object(options)){if(is.defined(options.quality))if(is.integer(options.quality)&&is.inRange(options.quality,1,100))this.options.tiffQuality=options.quality;else throw is.invalidParameterError("quality","integer between 1 and 100",options.quality);if(is.defined(options.bitdepth))if(is.integer(options.bitdepth)&&is.inArray(options.bitdepth,[1,2,4,8]))this.options.tiffBitdepth=options.bitdepth;else throw is.invalidParameterError("bitdepth","1, 2, 4 or 8",options.bitdepth);if(is.defined(options.tile)&&this._setBooleanOption("tiffTile",options.tile),is.defined(options.tileWidth))if(is.integer(options.tileWidth)&&options.tileWidth>0)this.options.tiffTileWidth=options.tileWidth;else throw is.invalidParameterError("tileWidth","integer greater than zero",options.tileWidth);if(is.defined(options.tileHeight))if(is.integer(options.tileHeight)&&options.tileHeight>0)this.options.tiffTileHeight=options.tileHeight;else throw is.invalidParameterError("tileHeight","integer greater than zero",options.tileHeight);if(is.defined(options.miniswhite)&&this._setBooleanOption("tiffMiniswhite",options.miniswhite),is.defined(options.pyramid)&&this._setBooleanOption("tiffPyramid",options.pyramid),is.defined(options.xres))if(is.number(options.xres)&&options.xres>0)this.options.tiffXres=options.xres;else throw is.invalidParameterError("xres","number greater than zero",options.xres);if(is.defined(options.yres))if(is.number(options.yres)&&options.yres>0)this.options.tiffYres=options.yres;else throw is.invalidParameterError("yres","number greater than zero",options.yres);if(is.defined(options.compression))if(is.string(options.compression)&&is.inArray(options.compression,["none","jpeg","deflate","packbits","ccittfax4","lzw","webp","zstd","jp2k"]))this.options.tiffCompression=options.compression;else throw is.invalidParameterError("compression","one of: none, jpeg, deflate, packbits, ccittfax4, lzw, webp, zstd, jp2k",options.compression);if(is.defined(options.predictor))if(is.string(options.predictor)&&is.inArray(options.predictor,["none","horizontal","float"]))this.options.tiffPredictor=options.predictor;else throw is.invalidParameterError("predictor","one of: none, horizontal, float",options.predictor);if(is.defined(options.resolutionUnit))if(is.string(options.resolutionUnit)&&is.inArray(options.resolutionUnit,["inch","cm"]))this.options.tiffResolutionUnit=options.resolutionUnit;else throw is.invalidParameterError("resolutionUnit","one of: inch, cm",options.resolutionUnit)}return this._updateFormatOut("tiff",options)}function avif(options){return this.heif({...options,compression:"av1"})}function heif(options){if(is.object(options)){if(is.string(options.compression)&&is.inArray(options.compression,["av1","hevc"]))this.options.heifCompression=options.compression;else throw is.invalidParameterError("compression","one of: av1, hevc",options.compression);if(is.defined(options.quality))if(is.integer(options.quality)&&is.inRange(options.quality,1,100))this.options.heifQuality=options.quality;else throw is.invalidParameterError("quality","integer between 1 and 100",options.quality);if(is.defined(options.lossless))if(is.bool(options.lossless))this.options.heifLossless=options.lossless;else throw is.invalidParameterError("lossless","boolean",options.lossless);if(is.defined(options.effort))if(is.integer(options.effort)&&is.inRange(options.effort,0,9))this.options.heifEffort=options.effort;else throw is.invalidParameterError("effort","integer between 0 and 9",options.effort);if(is.defined(options.chromaSubsampling))if(is.string(options.chromaSubsampling)&&is.inArray(options.chromaSubsampling,["4:2:0","4:4:4"]))this.options.heifChromaSubsampling=options.chromaSubsampling;else throw is.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",options.chromaSubsampling);if(is.defined(options.bitdepth))if(is.integer(options.bitdepth)&&is.inArray(options.bitdepth,[8,10,12])){if(options.bitdepth!==8&&this.constructor.versions.heif)throw is.invalidParameterError("bitdepth when using prebuilt binaries",8,options.bitdepth);this.options.heifBitdepth=options.bitdepth;}else throw is.invalidParameterError("bitdepth","8, 10 or 12",options.bitdepth)}else throw is.invalidParameterError("options","Object",options);return this._updateFormatOut("heif",options)}function jxl(options){if(is.object(options)){if(is.defined(options.quality))if(is.integer(options.quality)&&is.inRange(options.quality,1,100))this.options.jxlDistance=options.quality>=30?.1+(100-options.quality)*.09:53/3e3*options.quality*options.quality-23/20*options.quality+25;else throw is.invalidParameterError("quality","integer between 1 and 100",options.quality);else if(is.defined(options.distance))if(is.number(options.distance)&&is.inRange(options.distance,0,15))this.options.jxlDistance=options.distance;else throw is.invalidParameterError("distance","number between 0.0 and 15.0",options.distance);if(is.defined(options.decodingTier))if(is.integer(options.decodingTier)&&is.inRange(options.decodingTier,0,4))this.options.jxlDecodingTier=options.decodingTier;else throw is.invalidParameterError("decodingTier","integer between 0 and 4",options.decodingTier);if(is.defined(options.lossless))if(is.bool(options.lossless))this.options.jxlLossless=options.lossless;else throw is.invalidParameterError("lossless","boolean",options.lossless);if(is.defined(options.effort))if(is.integer(options.effort)&&is.inRange(options.effort,3,9))this.options.jxlEffort=options.effort;else throw is.invalidParameterError("effort","integer between 3 and 9",options.effort)}return this._updateFormatOut("jxl",options)}function raw(options){if(is.object(options)&&is.defined(options.depth))if(is.string(options.depth)&&is.inArray(options.depth,["char","uchar","short","ushort","int","uint","float","complex","double","dpcomplex"]))this.options.rawDepth=options.depth;else throw is.invalidParameterError("depth","one of: char, uchar, short, ushort, int, uint, float, complex, double, dpcomplex",options.depth);return this._updateFormatOut("raw")}function tile(options){if(is.object(options)){if(is.defined(options.size))if(is.integer(options.size)&&is.inRange(options.size,1,8192))this.options.tileSize=options.size;else throw is.invalidParameterError("size","integer between 1 and 8192",options.size);if(is.defined(options.overlap))if(is.integer(options.overlap)&&is.inRange(options.overlap,0,8192)){if(options.overlap>this.options.tileSize)throw is.invalidParameterError("overlap",`<= size (${this.options.tileSize})`,options.overlap);this.options.tileOverlap=options.overlap;}else throw is.invalidParameterError("overlap","integer between 0 and 8192",options.overlap);if(is.defined(options.container))if(is.string(options.container)&&is.inArray(options.container,["fs","zip"]))this.options.tileContainer=options.container;else throw is.invalidParameterError("container","one of: fs, zip",options.container);if(is.defined(options.layout))if(is.string(options.layout)&&is.inArray(options.layout,["dz","google","iiif","iiif3","zoomify"]))this.options.tileLayout=options.layout;else throw is.invalidParameterError("layout","one of: dz, google, iiif, iiif3, zoomify",options.layout);if(is.defined(options.angle))if(is.integer(options.angle)&&!(options.angle%90))this.options.tileAngle=options.angle;else throw is.invalidParameterError("angle","positive/negative multiple of 90",options.angle);if(this._setBackgroundColourOption("tileBackground",options.background),is.defined(options.depth))if(is.string(options.depth)&&is.inArray(options.depth,["onepixel","onetile","one"]))this.options.tileDepth=options.depth;else throw is.invalidParameterError("depth","one of: onepixel, onetile, one",options.depth);if(is.defined(options.skipBlanks))if(is.integer(options.skipBlanks)&&is.inRange(options.skipBlanks,-1,65535))this.options.tileSkipBlanks=options.skipBlanks;else throw is.invalidParameterError("skipBlanks","integer between -1 and 255/65535",options.skipBlanks);else is.defined(options.layout)&&options.layout==="google"&&(this.options.tileSkipBlanks=5);let centre=is.bool(options.center)?options.center:options.centre;if(is.defined(centre)&&this._setBooleanOption("tileCentre",centre),is.defined(options.id))if(is.string(options.id))this.options.tileId=options.id;else throw is.invalidParameterError("id","string",options.id);if(is.defined(options.basename))if(is.string(options.basename))this.options.tileBasename=options.basename;else throw is.invalidParameterError("basename","string",options.basename)}if(is.inArray(this.options.formatOut,["jpeg","png","webp"]))this.options.tileFormat=this.options.formatOut;else if(this.options.formatOut!=="input")throw is.invalidParameterError("format","one of: jpeg, png, webp",this.options.formatOut);return this._updateFormatOut("dz")}function timeout(options){if(!is.plainObject(options))throw is.invalidParameterError("options","object",options);if(is.integer(options.seconds)&&is.inRange(options.seconds,0,3600))this.options.timeoutSeconds=options.seconds;else throw is.invalidParameterError("seconds","integer between 0 and 3600",options.seconds);return this}function _updateFormatOut(formatOut,options){return is.object(options)&&options.force===!1||(this.options.formatOut=formatOut),this}function _setBooleanOption(key,val){if(is.bool(val))this.options[key]=val;else throw is.invalidParameterError(key,"boolean",val)}function _read(){if(!this.options.streamOut){this.options.streamOut=!0;let stack=Error();this._pipeline(void 0,stack);}}function _pipeline(callback,stack){return typeof callback=="function"?(this._isStreamInput()?this.on("finish",()=>{this._flattenBufferIn(),sharp.pipeline(this.options,(err,data,info)=>{err?callback(is.nativeError(err,stack)):callback(null,data,info);});}):sharp.pipeline(this.options,(err,data,info)=>{err?callback(is.nativeError(err,stack)):callback(null,data,info);}),this):this.options.streamOut?(this._isStreamInput()?(this.once("finish",()=>{this._flattenBufferIn(),sharp.pipeline(this.options,(err,data,info)=>{err?this.emit("error",is.nativeError(err,stack)):(this.emit("info",info),this.push(data)),this.push(null),this.on("end",()=>this.emit("close"));});}),this.streamInFinished&&this.emit("finish")):sharp.pipeline(this.options,(err,data,info)=>{err?this.emit("error",is.nativeError(err,stack)):(this.emit("info",info),this.push(data)),this.push(null),this.on("end",()=>this.emit("close"));}),this):this._isStreamInput()?new Promise((resolve,reject)=>{this.once("finish",()=>{this._flattenBufferIn(),sharp.pipeline(this.options,(err,data,info)=>{err?reject(is.nativeError(err,stack)):this.options.resolveWithObject?resolve({data,info}):resolve(data);});});}):new Promise((resolve,reject)=>{sharp.pipeline(this.options,(err,data,info)=>{err?reject(is.nativeError(err,stack)):this.options.resolveWithObject?resolve({data,info}):resolve(data);});})}module.exports=function(Sharp){Object.assign(Sharp.prototype,{toFile,toBuffer,keepExif,withExif,withExifMerge,keepIccProfile,withIccProfile,keepMetadata,withMetadata,toFormat,jpeg,jp2,png,webp,tiff,avif,heif,jxl,gif,raw,tile,timeout,_updateFormatOut,_setBooleanOption,_read,_pipeline});};}});var require_utility=__commonJS({"../../node_modules/sharp/lib/utility.js"(exports,module){var events=__require("node:events"),detectLibc=require_detect_libc(),is=require_is(),{runtimePlatformArch}=require_libvips(),sharp=require_sharp(),runtimePlatform=runtimePlatformArch(),libvipsVersion=sharp.libvipsVersion(),format=sharp.format();format.heif.output.alias=["avif","heic"];format.jpeg.output.alias=["jpe","jpg"];format.tiff.output.alias=["tif"];format.jp2k.output.alias=["j2c","j2k","jp2","jpx"];var interpolators={nearest:"nearest",bilinear:"bilinear",bicubic:"bicubic",locallyBoundedBicubic:"lbb",nohalo:"nohalo",vertexSplitQuadraticBasisSpline:"vsqbs"},versions={vips:libvipsVersion.semver};if(!libvipsVersion.isGlobal)if(libvipsVersion.isWasm)try{versions=__require("@img/sharp-wasm32/versions");}catch{}else try{versions=__require(`@img/sharp-${runtimePlatform}/versions`);}catch{try{versions=__require(`@img/sharp-libvips-${runtimePlatform}/versions`);}catch{}}versions.sharp=require_package().version;versions.heif&&format.heif&&(format.heif.input.fileSuffix=[".avif"],format.heif.output.alias=["avif"]);function cache(options){return is.bool(options)?options?sharp.cache(50,20,100):sharp.cache(0,0,0):is.object(options)?sharp.cache(options.memory,options.files,options.items):sharp.cache()}cache(!0);function concurrency(concurrency2){return sharp.concurrency(is.integer(concurrency2)?concurrency2:null)}detectLibc.familySync()===detectLibc.GLIBC&&!sharp._isUsingJemalloc()?sharp.concurrency(1):detectLibc.familySync()===detectLibc.MUSL&&sharp.concurrency()===1024&&sharp.concurrency(__require("node:os").availableParallelism());var queue=new events.EventEmitter;function counters(){return sharp.counters()}function simd(simd2){return sharp.simd(is.bool(simd2)?simd2:null)}function block(options){if(is.object(options))if(Array.isArray(options.operation)&&options.operation.every(is.string))sharp.block(options.operation,!0);else throw is.invalidParameterError("operation","Array<string>",options.operation);else throw is.invalidParameterError("options","object",options)}function unblock(options){if(is.object(options))if(Array.isArray(options.operation)&&options.operation.every(is.string))sharp.block(options.operation,!1);else throw is.invalidParameterError("operation","Array<string>",options.operation);else throw is.invalidParameterError("options","object",options)}module.exports=function(Sharp){Sharp.cache=cache,Sharp.concurrency=concurrency,Sharp.counters=counters,Sharp.simd=simd,Sharp.format=format,Sharp.interpolators=interpolators,Sharp.versions=versions,Sharp.queue=queue,Sharp.block=block,Sharp.unblock=unblock;};}});var require_lib=__commonJS({"../../node_modules/sharp/lib/index.js"(exports,module){var Sharp=require_constructor();require_input()(Sharp);require_resize()(Sharp);require_composite()(Sharp);require_operation()(Sharp);require_colour()(Sharp);require_channel()(Sharp);require_output()(Sharp);require_utility()(Sharp);module.exports=Sharp;}});var require_next_image_loader_stub=__commonJS({"src/next-image-loader-stub.ts"(exports,module){var sharp;try{if(sharp=require_lib(),sharp&&sharp.concurrency()>1){let divisor=process.env.NODE_ENV==="development"?4:2;sharp.concurrency(Math.floor(Math.max(cpus().length/divisor,1)));}}catch{console.warn("You have to install sharp in order to use image optimization features in Next.js. AVIF support is also disabled.");}var nextImageLoaderStub=async function(content){let{filename,nextConfig}=this.getOptions(),opts={context:this.rootContext,content},outputPath=interpolateName(this,filename.replace("[ext]",".[ext]"),opts),extension=interpolateName(this,"[ext]",opts);if(this.emitFile(outputPath,content),nextConfig.images?.disableStaticImages)return `const src = '${outputPath}'; export default src;`;let width,height;if(extension==="avif")if(sharp){let result=await sharp(content).metadata();width=result.width,height=result.height;}else throw new NextJsSharpError;else {let result=imageSizeOf(this.resourcePath);width=result.width,height=result.height;}return `export default ${JSON.stringify({src:outputPath,height,width,blurDataURL:outputPath})};`};nextImageLoaderStub.raw=!0;module.exports=nextImageLoaderStub;}});var nextImageLoaderStub = require_next_image_loader_stub();
|
|
|
|
export { nextImageLoaderStub as default };
|