gemi 0.4.32 → 0.4.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (181) hide show
  1. package/dist/app/App.d.ts.map +1 -1
  2. package/dist/app/createFlatApiRoutes.d.ts.map +1 -1
  3. package/dist/app/index.js +21 -21
  4. package/dist/bin/index.js +2 -1
  5. package/dist/chunk-01e1579811beb424.js +2 -0
  6. package/dist/chunk-03227f4a68e038f4.js +2 -0
  7. package/dist/chunk-073f5b81e98d91fe.js +3 -0
  8. package/dist/chunk-0a6614fbd65524af.js +2 -0
  9. package/dist/chunk-0b46ec66d2c3d5f3.js +2 -0
  10. package/dist/chunk-0b5fb4e0c7de8316.js +2 -0
  11. package/dist/chunk-0b99ba34351bde91.js +3 -0
  12. package/dist/chunk-0e99fe5c976c8ea2.js +6 -0
  13. package/dist/chunk-0ffc38ed09847e35.js +2 -0
  14. package/dist/chunk-100b76ab0ca3e14d.js +1 -0
  15. package/dist/chunk-1109657ed53fbdc9.js +2 -0
  16. package/dist/chunk-11fb7f7f30378785.js +2 -0
  17. package/dist/chunk-12b4f44a2beae19b.js +2 -0
  18. package/dist/chunk-12ca7224eb6ccf72.js +9 -0
  19. package/dist/chunk-159f5b922269aef1.js +2 -0
  20. package/dist/chunk-16a63b2fee0ce9e2.js +2 -0
  21. package/dist/chunk-176e5ded5ed33d4d.js +2 -0
  22. package/dist/chunk-1875b98b6a064557.js +2 -0
  23. package/dist/chunk-1cc0d1072ee4a92b.js +2 -0
  24. package/dist/chunk-1efe790f8b4ad86d.js +2 -0
  25. package/dist/chunk-1fab30ab853c48cc.js +2 -0
  26. package/dist/chunk-223b0aac9e62386a.js +2 -0
  27. package/dist/chunk-23c287376e277e1d.js +6 -0
  28. package/dist/chunk-241584e48397dda8.js +2 -0
  29. package/dist/chunk-26d58ddc3a89234f.js +2 -0
  30. package/dist/chunk-2a0d1475ac05027d.js +2 -0
  31. package/dist/chunk-2cf271e24c26b0ee.js +2 -0
  32. package/dist/chunk-2ec287222364c6b6.js +2 -0
  33. package/dist/chunk-2f7091b9e4f728c7.js +2 -0
  34. package/dist/chunk-2f7aac67f16768a5.js +1 -0
  35. package/dist/chunk-328c98321c6ba3d6.js +2 -0
  36. package/dist/chunk-34786cd9bc9be20b.js +18 -0
  37. package/dist/chunk-35ab4be8ca6c67ee.js +2 -0
  38. package/dist/chunk-36b8e37ca93fcc67.js +2 -0
  39. package/dist/chunk-370389a68668658a.js +2 -0
  40. package/dist/chunk-3728fa21e6931333.js +2 -0
  41. package/dist/chunk-382a513747a9aa52.js +6 -0
  42. package/dist/chunk-3afa6cad1106f55a.js +2 -0
  43. package/dist/chunk-3bd48fb5397a155b.js +5 -0
  44. package/dist/chunk-3bf6f8c8e8589e3d.js +2 -0
  45. package/dist/chunk-4432f8d8567e682b.js +9 -0
  46. package/dist/chunk-46528bdbb2218772.js +2 -0
  47. package/dist/chunk-47c4cec992af0689.js +2 -0
  48. package/dist/chunk-4b201cccdf6d290f.js +2 -0
  49. package/dist/chunk-4d19e16340534ed0.js +2 -0
  50. package/dist/chunk-4e023976eb557258.js +2 -0
  51. package/dist/chunk-4ffecff075e73d43.js +2 -0
  52. package/dist/chunk-50b440397d41ab5a.js +2 -0
  53. package/dist/chunk-50ea27a13eb62b5e.js +2 -0
  54. package/dist/chunk-514f8554fb446139.js +9 -0
  55. package/dist/chunk-51c21d2a3c45fbe1.js +2 -0
  56. package/dist/chunk-5656abf3151c8fa2.js +2 -0
  57. package/dist/chunk-57a61e580c4adf80.js +2 -0
  58. package/dist/chunk-596024c880387c2f.js +2 -0
  59. package/dist/chunk-5a9fa677066f72ac.js +2 -0
  60. package/dist/chunk-5b836c769c5dad2a.js +2 -0
  61. package/dist/chunk-5cd0a98345a5d57a.js +2 -0
  62. package/dist/chunk-62144f9c5008bd47.js +1 -0
  63. package/dist/chunk-62b2777c629d5157.js +2 -0
  64. package/dist/chunk-62c0f9a87ad8a46b.js +2 -0
  65. package/dist/chunk-63ad0436d3d896b5.js +3 -0
  66. package/dist/chunk-640e4bdae1671873.js +1 -0
  67. package/dist/chunk-6605e290c4de1f0e.js +6 -0
  68. package/dist/chunk-6766e66417809e1a.js +2 -0
  69. package/dist/chunk-6821bb0ff6ed2452.js +18 -0
  70. package/dist/chunk-6921ba2fa2e1adea.js +2 -0
  71. package/dist/chunk-6afe097e13ebdf55.js +2 -0
  72. package/dist/chunk-70bb003c03f21dad.js +2 -0
  73. package/dist/chunk-711f86b9d50d45fe.js +18 -0
  74. package/dist/chunk-72821f055108528e.js +2 -0
  75. package/dist/chunk-73eed146ee78f681.js +1 -0
  76. package/dist/chunk-74db07ba7b97d1c1.js +2 -0
  77. package/dist/chunk-76db0552d2492ee7.js +3 -0
  78. package/dist/chunk-77d5bbc7a9117c21.js +2 -0
  79. package/dist/chunk-7975e27df461cbfb.js +6 -0
  80. package/dist/chunk-79b438007611560a.js +2 -0
  81. package/dist/chunk-79f7d7d90c4fb51a.js +2 -0
  82. package/dist/chunk-7a318e738fec6c2b.js +3 -0
  83. package/dist/chunk-7abc696047809312.js +6 -0
  84. package/dist/chunk-7c62e9d6edc4b418.js +2 -0
  85. package/dist/chunk-7c670baec90faacb.js +2 -0
  86. package/dist/chunk-8295e42bcfc910ff.js +16 -0
  87. package/dist/chunk-8401f0f53dc26633.js +1 -0
  88. package/dist/chunk-84b129a5185ac24d.js +2 -0
  89. package/dist/chunk-84c7f86a97d17f53.js +2 -0
  90. package/dist/chunk-84f1b068dc7fc8b7.js +2 -0
  91. package/dist/chunk-860f5fcef7074193.js +9 -0
  92. package/dist/chunk-880273a32da461fd.js +9 -0
  93. package/dist/chunk-89187bbdf6945131.js +2 -0
  94. package/dist/chunk-895d9b1ef7a65211.js +2 -0
  95. package/dist/chunk-8aa3e0e20e411d11.js +2 -0
  96. package/dist/chunk-8bb91c504b9ca45e.js +2 -0
  97. package/dist/chunk-8c3e0f5d4a0d6e53.js +2 -0
  98. package/dist/chunk-8f24cd33e07d02f3.js +2 -0
  99. package/dist/chunk-933845e73519b4c5.js +2 -0
  100. package/dist/chunk-94578320d28e33ad.js +2 -0
  101. package/dist/chunk-9938e9a4fe25dda5.js +2 -0
  102. package/dist/chunk-9bd00e182ac2f8a6.js +6 -0
  103. package/dist/chunk-9c4a4b4bd266869d.js +2 -0
  104. package/dist/chunk-9ee2118bd4eb34ae.js +9 -0
  105. package/dist/chunk-a095821ffc039b99.js +18 -0
  106. package/dist/chunk-a3526e321ac9d173.js +1 -0
  107. package/dist/chunk-a4862acc0c3fed7d.js +6 -0
  108. package/dist/chunk-a50b9cd348c3e882.js +9 -0
  109. package/dist/chunk-a57ecc74c0fb9045.js +2 -0
  110. package/dist/chunk-a5c18c07abe8fd9c.js +2 -0
  111. package/dist/chunk-a719a1f305964521.js +2 -0
  112. package/dist/chunk-a816613f5321b9db.js +1 -0
  113. package/dist/chunk-a8310ad9bad32329.js +2 -0
  114. package/dist/chunk-aaf5855c5199efe9.js +2 -0
  115. package/dist/chunk-ab0c3f72f95cb4f4.js +3 -0
  116. package/dist/chunk-abd0b68c299eebfc.js +2 -0
  117. package/dist/chunk-b05cb7ef4546980d.js +2 -0
  118. package/dist/chunk-b1918e88103a8501.js +2 -0
  119. package/dist/chunk-b80a86610158cbfd.js +1 -0
  120. package/dist/chunk-bbd36ce62b950ee5.js +2 -0
  121. package/dist/chunk-bbdd098f2a2cd820.js +18 -0
  122. package/dist/chunk-bcd70a6fc2fd359c.js +1 -0
  123. package/dist/chunk-beca91bf7cc216cd.js +2 -0
  124. package/dist/chunk-bee6075c5738d87a.js +2 -0
  125. package/dist/chunk-c29701ffef4ca07a.js +2 -0
  126. package/dist/chunk-c50ff3cf3c78af79.js +2 -0
  127. package/dist/chunk-c62b5c4cec67029c.js +1 -0
  128. package/dist/chunk-c675395110f371b1.js +6 -0
  129. package/dist/chunk-c675f193d459818e.js +2 -0
  130. package/dist/chunk-c8631aa6bbb62e13.js +2 -0
  131. package/dist/chunk-c864ab57913d658f.js +1 -0
  132. package/dist/chunk-c8b00b645df96ed5.js +2 -0
  133. package/dist/chunk-c9707ae8f1d346ff.js +3 -0
  134. package/dist/chunk-cb65fe402653c65e.js +2 -0
  135. package/dist/chunk-cb69e9621a60d310.js +1 -0
  136. package/dist/chunk-cfa9a65fae5ddaf4.js +2 -0
  137. package/dist/chunk-d0757747d9cc2e47.js +2 -0
  138. package/dist/chunk-d22136d39cf8465f.js +2 -0
  139. package/dist/chunk-d3765f96a689a0c1.js +2 -0
  140. package/dist/chunk-d9968563c6c84405.js +3 -0
  141. package/dist/chunk-d9a84b9122601b72.js +2 -0
  142. package/dist/chunk-db65c75cda396f98.js +2 -0
  143. package/dist/chunk-dd211856e049a67f.js +9 -0
  144. package/dist/chunk-de39fc86bbd37240.js +1 -0
  145. package/dist/chunk-e0e0f2ee626a6fb3.js +18 -0
  146. package/dist/chunk-e11c7f3abcf2269f.js +2 -0
  147. package/dist/chunk-e16b252158474b8c.js +1 -0
  148. package/dist/chunk-e9275fb341d2cdd9.js +2 -0
  149. package/dist/chunk-ea9b86cf2edd807b.js +18 -0
  150. package/dist/chunk-ec24a0767aa58f1f.js +18 -0
  151. package/dist/chunk-ee35048642cfe9d8.js +2 -0
  152. package/dist/chunk-ee4ff285d7f4ccdf.js +2 -0
  153. package/dist/chunk-ee604d0215ea07e6.js +1 -0
  154. package/dist/chunk-ee92e80230ce02ec.js +2 -0
  155. package/dist/chunk-f13fd46441a58606.js +2 -0
  156. package/dist/chunk-f2dca6305fcba70b.js +2 -0
  157. package/dist/chunk-f5b888aa9ac4e20f.js +2 -0
  158. package/dist/chunk-f8823a1ede83155e.js +2 -0
  159. package/dist/chunk-f95f5e3439539ca5.js +2 -0
  160. package/dist/chunk-f99bdfc336b2ac57.js +9 -0
  161. package/dist/chunk-faa8c62bfa11f9d5.js +2 -0
  162. package/dist/chunk-fec9f0b0b0319f3b.js +2 -0
  163. package/dist/client/QueryStore.d.ts +6 -1
  164. package/dist/client/QueryStore.d.ts.map +1 -1
  165. package/dist/client/index.js +1 -1
  166. package/dist/email/index.js +1 -1
  167. package/dist/facades/Auth.d.ts +2 -0
  168. package/dist/facades/Auth.d.ts.map +1 -1
  169. package/dist/facades/index.js +1 -1
  170. package/dist/http/ApiRouter.d.ts +28 -1
  171. package/dist/http/ApiRouter.d.ts.map +1 -1
  172. package/dist/http/index.js +1 -1
  173. package/dist/kernel/index.js +2 -2
  174. package/dist/server/index.js +4 -4
  175. package/dist/storage/File.d.ts +22 -0
  176. package/dist/storage/File.d.ts.map +1 -0
  177. package/dist/storage/index.d.ts +2 -0
  178. package/dist/storage/index.d.ts.map +1 -0
  179. package/dist/storage/index.js +2 -0
  180. package/dist/vite/index.js +1 -1
  181. package/package.json +5 -2
@@ -1,5 +1,5 @@
1
1
  // @bun
2
- import{p as q9,q as L} from"../chunk-9350baa090b5a424.js";import{r as Y5,s as I5} from"../chunk-06eebef7eb056baa.js";var d=L((K9,q1)=>{var $1=function(J){return typeof J!=="undefined"&&J!==null},N5=function(J){return typeof J==="object"},P5=function(J){return Object.prototype.toString.call(J)==="[object Object]"},X5=function(J){return typeof J==="function"},V5=function(J){return typeof J==="boolean"},A5=function(J){return J instanceof Buffer},L5=function(J){if($1(J))switch(J.constructor){case Uint8Array:case Uint8ClampedArray:case Int8Array:case Uint16Array:case Int16Array:case Uint32Array:case Int32Array:case Float32Array:case Float64Array:return!0}return!1},R5=function(J){return J instanceof ArrayBuffer},_5=function(J){return typeof J==="string"&&J.length>0},y5=function(J){return typeof J==="number"&&!Number.isNaN(J)},j5=function(J){return Number.isInteger(J)},E5=function(J,$,q){return J>=$&&J<=q},T5=function(J,$){return $.includes(J)},w5=function(J,$,q){return new Error(`Expected ${$} for ${J} but received ${q} of type ${typeof q}`)},z5=function(J,$){return $.message=J.message,$};q1.exports={defined:$1,object:N5,plainObject:P5,fn:X5,bool:V5,buffer:A5,typedArray:L5,arrayBuffer:R5,string:_5,number:y5,integer:j5,inRange:E5,inArray:T5,invalidParameterError:w5,nativeError:z5}});var i=L((F9,W1)=>{var D5=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...J)=>console.error("SEMVER",...J):()=>{};W1.exports=D5});var F2=L((G9,Z1)=>{var C5=Number.MAX_SAFE_INTEGER||9007199254740991,S5=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Z1.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:C5,RELEASE_TYPES:S5,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var o=L((O,Q1)=>{var{MAX_SAFE_COMPONENT_LENGTH:C2,MAX_SAFE_BUILD_LENGTH:k5,MAX_LENGTH:M5}=F2(),x5=i();O=Q1.exports={};var f5=O.re=[],d5=O.safeRe=[],H=O.src=[],N=O.t={},v5=0,S2="[a-zA-Z0-9-]",O5=[["\\s",1],["\\d",M5],[S2,k5]],b5=(J)=>{for(let[$,q]of O5)J=J.split(`${$}*`).join(`${$}{0,${q}}`).split(`${$}+`).join(`${$}{1,${q}}`);return J},A=(J,$,q)=>{const W=b5($),Z=v5++;x5(J,Z,$),N[J]=Z,H[Z]=$,f5[Z]=new RegExp($,q?"g":void 0),d5[Z]=new RegExp(W,q?"g":void 0)};A("NUMERICIDENTIFIER","0|[1-9]\\d*");A("NUMERICIDENTIFIERLOOSE","\\d+");A("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${S2}*`);A("MAINVERSION",`(${H[N.NUMERICIDENTIFIER]})\\.`+`(${H[N.NUMERICIDENTIFIER]})\\.`+`(${H[N.NUMERICIDENTIFIER]})`);A("MAINVERSIONLOOSE",`(${H[N.NUMERICIDENTIFIERLOOSE]})\\.`+`(${H[N.NUMERICIDENTIFIERLOOSE]})\\.`+`(${H[N.NUMERICIDENTIFIERLOOSE]})`);A("PRERELEASEIDENTIFIER",`(?:${H[N.NUMERICIDENTIFIER]}|${H[N.NONNUMERICIDENTIFIER]})`);A("PRERELEASEIDENTIFIERLOOSE",`(?:${H[N.NUMERICIDENTIFIERLOOSE]}|${H[N.NONNUMERICIDENTIFIER]})`);A("PRERELEASE",`(?:-(${H[N.PRERELEASEIDENTIFIER]}(?:\\.${H[N.PRERELEASEIDENTIFIER]})*))`);A("PRERELEASELOOSE",`(?:-?(${H[N.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${H[N.PRERELEASEIDENTIFIERLOOSE]})*))`);A("BUILDIDENTIFIER",`${S2}+`);A("BUILD",`(?:\\+(${H[N.BUILDIDENTIFIER]}(?:\\.${H[N.BUILDIDENTIFIER]})*))`);A("FULLPLAIN",`v?${H[N.MAINVERSION]}${H[N.PRERELEASE]}?${H[N.BUILD]}?`);A("FULL",`^${H[N.FULLPLAIN]}\$`);A("LOOSEPLAIN",`[v=\\s]*${H[N.MAINVERSIONLOOSE]}${H[N.PRERELEASELOOSE]}?${H[N.BUILD]}?`);A("LOOSE",`^${H[N.LOOSEPLAIN]}\$`);A("GTLT","((?:<|>)?=?)");A("XRANGEIDENTIFIERLOOSE",`${H[N.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);A("XRANGEIDENTIFIER",`${H[N.NUMERICIDENTIFIER]}|x|X|\\*`);A("XRANGEPLAIN",`[v=\\s]*(${H[N.XRANGEIDENTIFIER]})`+`(?:\\.(${H[N.XRANGEIDENTIFIER]})`+`(?:\\.(${H[N.XRANGEIDENTIFIER]})`+`(?:${H[N.PRERELEASE]})?${H[N.BUILD]}?`+")?)?");A("XRANGEPLAINLOOSE",`[v=\\s]*(${H[N.XRANGEIDENTIFIERLOOSE]})`+`(?:\\.(${H[N.XRANGEIDENTIFIERLOOSE]})`+`(?:\\.(${H[N.XRANGEIDENTIFIERLOOSE]})`+`(?:${H[N.PRERELEASELOOSE]})?${H[N.BUILD]}?`+")?)?");A("XRANGE",`^${H[N.GTLT]}\\s*${H[N.XRANGEPLAIN]}\$`);A("XRANGELOOSE",`^${H[N.GTLT]}\\s*${H[N.XRANGEPLAINLOOSE]}\$`);A("COERCEPLAIN",`(^|[^\\d])(\\d{1,${C2}})`+`(?:\\.(\\d{1,${C2}}))?`+`(?:\\.(\\d{1,${C2}}))?`);A("COERCE",`${H[N.COERCEPLAIN]}(?:\$|[^\\d])`);A("COERCEFULL",H[N.COERCEPLAIN]+`(?:${H[N.PRERELEASE]})?`+`(?:${H[N.BUILD]})?`+"(?:$|[^\\d])");A("COERCERTL",H[N.COERCE],!0);A("COERCERTLFULL",H[N.COERCEFULL],!0);A("LONETILDE","(?:~>?)");A("TILDETRIM",`(\\s*)${H[N.LONETILDE]}\\s+`,!0);O.tildeTrimReplace="$1~";A("TILDE",`^${H[N.LONETILDE]}${H[N.XRANGEPLAIN]}\$`);A("TILDELOOSE",`^${H[N.LONETILDE]}${H[N.XRANGEPLAINLOOSE]}\$`);A("LONECARET","(?:\\^)");A("CARETTRIM",`(\\s*)${H[N.LONECARET]}\\s+`,!0);O.caretTrimReplace="$1^";A("CARET",`^${H[N.LONECARET]}${H[N.XRANGEPLAIN]}\$`);A("CARETLOOSE",`^${H[N.LONECARET]}${H[N.XRANGEPLAINLOOSE]}\$`);A("COMPARATORLOOSE",`^${H[N.GTLT]}\\s*(${H[N.LOOSEPLAIN]})\$|^\$`);A("COMPARATOR",`^${H[N.GTLT]}\\s*(${H[N.FULLPLAIN]})\$|^\$`);A("COMPARATORTRIM",`(\\s*)${H[N.GTLT]}\\s*(${H[N.LOOSEPLAIN]}|${H[N.XRANGEPLAIN]})`,!0);O.comparatorTrimReplace="$1$2$3";A("HYPHENRANGE",`^\\s*(${H[N.XRANGEPLAIN]})`+"\\s+-\\s+"+`(${H[N.XRANGEPLAIN]})`+"\\s*$");A("HYPHENRANGELOOSE",`^\\s*(${H[N.XRANGEPLAINLOOSE]})`+"\\s+-\\s+"+`(${H[N.XRANGEPLAINLOOSE]})`+"\\s*$");A("STAR","(<|>)?=?\\s*\\*");A("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");A("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var G2=L((H9,U1)=>{var h5=Object.freeze({loose:!0}),g5=Object.freeze({}),m5=(J)=>{if(!J)return g5;if(typeof J!=="object")return h5;return J};U1.exports=m5});var K1=L((N9,I1)=>{var B1=/^[0-9]+$/,Y1=(J,$)=>{const q=B1.test(J),W=B1.test($);if(q&&W)J=+J,$=+$;return J===$?0:q&&!W?-1:W&&!q?1:J<$?-1:1},u5=(J,$)=>Y1($,J);I1.exports={compareIdentifiers:Y1,rcompareIdentifiers:u5}});var r=L((P9,N1)=>{var H2=i(),{MAX_LENGTH:F1,MAX_SAFE_INTEGER:N2}=F2(),{safeRe:G1,t:H1}=o(),l5=G2(),{compareIdentifiers:a}=K1();class f{constructor(J,$){if($=l5($),J instanceof f)if(J.loose===!!$.loose&&J.includePrerelease===!!$.includePrerelease)return J;else J=J.version;else if(typeof J!=="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof J}".`);if(J.length>F1)throw new TypeError(`version is longer than ${F1} characters`);H2("SemVer",J,$),this.options=$,this.loose=!!$.loose,this.includePrerelease=!!$.includePrerelease;const q=J.trim().match($.loose?G1[H1.LOOSE]:G1[H1.FULL]);if(!q)throw new TypeError(`Invalid Version: ${J}`);if(this.raw=J,this.major=+q[1],this.minor=+q[2],this.patch=+q[3],this.major>N2||this.major<0)throw new TypeError("Invalid major version");if(this.minor>N2||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>N2||this.patch<0)throw new TypeError("Invalid patch version");if(!q[4])this.prerelease=[];else this.prerelease=q[4].split(".").map((W)=>{if(/^[0-9]+$/.test(W)){const Z=+W;if(Z>=0&&Z<N2)return Z}return W});this.build=q[5]?q[5].split("."):[],this.format()}format(){if(this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length)this.version+=`-${this.prerelease.join(".")}`;return this.version}toString(){return this.version}compare(J){if(H2("SemVer.compare",this.version,this.options,J),!(J instanceof f)){if(typeof J==="string"&&J===this.version)return 0;J=new f(J,this.options)}if(J.version===this.version)return 0;return this.compareMain(J)||this.comparePre(J)}compareMain(J){if(!(J instanceof f))J=new f(J,this.options);return a(this.major,J.major)||a(this.minor,J.minor)||a(this.patch,J.patch)}comparePre(J){if(!(J instanceof f))J=new f(J,this.options);if(this.prerelease.length&&!J.prerelease.length)return-1;else if(!this.prerelease.length&&J.prerelease.length)return 1;else if(!this.prerelease.length&&!J.prerelease.length)return 0;let $=0;do{const q=this.prerelease[$],W=J.prerelease[$];if(H2("prerelease compare",$,q,W),q===void 0&&W===void 0)return 0;else if(W===void 0)return 1;else if(q===void 0)return-1;else if(q===W)continue;else return a(q,W)}while(++$)}compareBuild(J){if(!(J instanceof f))J=new f(J,this.options);let $=0;do{const q=this.build[$],W=J.build[$];if(H2("build compare",$,q,W),q===void 0&&W===void 0)return 0;else if(W===void 0)return 1;else if(q===void 0)return-1;else if(q===W)continue;else return a(q,W)}while(++$)}inc(J,$,q){switch(J){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",$,q);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",$,q);break;case"prepatch":this.prerelease.length=0,this.inc("patch",$,q),this.inc("pre",$,q);break;case"prerelease":if(this.prerelease.length===0)this.inc("patch",$,q);this.inc("pre",$,q);break;case"major":if(this.minor!==0||this.patch!==0||this.prerelease.length===0)this.major++;this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":if(this.patch!==0||this.prerelease.length===0)this.minor++;this.patch=0,this.prerelease=[];break;case"patch":if(this.prerelease.length===0)this.patch++;this.prerelease=[];break;case"pre":{const W=Number(q)?1:0;if(!$&&q===!1)throw new Error("invalid increment argument: identifier is empty");if(this.prerelease.length===0)this.prerelease=[W];else{let Z=this.prerelease.length;while(--Z>=0)if(typeof this.prerelease[Z]==="number")this.prerelease[Z]++,Z=-2;if(Z===-1){if($===this.prerelease.join(".")&&q===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(W)}}if($){let Z=[$,W];if(q===!1)Z=[$];if(a(this.prerelease[0],$)===0){if(isNaN(this.prerelease[1]))this.prerelease=Z}else this.prerelease=Z}break}default:throw new Error(`invalid increment argument: ${J}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}N1.exports=f});var V1=L((X9,X1)=>{var P1=r(),c5=(J,$,q=!1)=>{if(J instanceof P1)return J;try{return new P1(J,$)}catch(W){if(!q)return null;throw W}};X1.exports=c5});var L1=L((V9,A1)=>{var a5=r(),r5=V1(),{safeRe:P2,t:X2}=o(),e5=(J,$)=>{if(J instanceof a5)return J;if(typeof J==="number")J=String(J);if(typeof J!=="string")return null;$=$||{};let q=null;if(!$.rtl)q=J.match($.includePrerelease?P2[X2.COERCEFULL]:P2[X2.COERCE]);else{const F=$.includePrerelease?P2[X2.COERCERTLFULL]:P2[X2.COERCERTL];let G;while((G=F.exec(J))&&(!q||q.index+q[0].length!==J.length)){if(!q||G.index+G[0].length!==q.index+q[0].length)q=G;F.lastIndex=G.index+G[1].length+G[2].length}F.lastIndex=-1}if(q===null)return null;const W=q[2],Z=q[3]||"0",U=q[4]||"0",B=$.includePrerelease&&q[5]?`-${q[5]}`:"",Y=$.includePrerelease&&q[6]?`+${q[6]}`:"";return r5(`${W}.${Z}.${U}${B}${Y}`,$)};A1.exports=e5});var u=L((A9,_1)=>{var R1=r(),n5=(J,$,q)=>new R1(J,q).compare(new R1($,q));_1.exports=n5});var k2=L((L9,y1)=>{var p5=u(),s5=(J,$,q)=>p5(J,$,q)>=0;y1.exports=s5});var T1=L((R9,E1)=>{class j1{constructor(){this.max=1000,this.map=new Map}get(J){const $=this.map.get(J);if($===void 0)return;else return this.map.delete(J),this.map.set(J,$),$}delete(J){return this.map.delete(J)}set(J,$){if(!this.delete(J)&&$!==void 0){if(this.map.size>=this.max){const W=this.map.keys().next().value;this.delete(W)}this.map.set(J,$)}return this}}E1.exports=j1});var z1=L((_9,w1)=>{var t5=u(),i5=(J,$,q)=>t5(J,$,q)===0;w1.exports=i5});var C1=L((y9,D1)=>{var o5=u(),J4=(J,$,q)=>o5(J,$,q)!==0;D1.exports=J4});var k1=L((j9,S1)=>{var $4=u(),q4=(J,$,q)=>$4(J,$,q)>0;S1.exports=q4});var x1=L((E9,M1)=>{var W4=u(),Z4=(J,$,q)=>W4(J,$,q)<0;M1.exports=Z4});var d1=L((T9,f1)=>{var Q4=u(),U4=(J,$,q)=>Q4(J,$,q)<=0;f1.exports=U4});var O1=L((w9,v1)=>{var B4=z1(),Y4=C1(),I4=k1(),K4=k2(),F4=x1(),G4=d1(),H4=(J,$,q,W)=>{switch($){case"===":if(typeof J==="object")J=J.version;if(typeof q==="object")q=q.version;return J===q;case"!==":if(typeof J==="object")J=J.version;if(typeof q==="object")q=q.version;return J!==q;case"":case"=":case"==":return B4(J,q,W);case"!=":return Y4(J,q,W);case">":return I4(J,q,W);case">=":return K4(J,q,W);case"<":return F4(J,q,W);case"<=":return G4(J,q,W);default:throw new TypeError(`Invalid operator: ${$}`)}};v1.exports=H4});var c1=L((z9,l1)=>{var J2=Symbol("SemVer ANY");class V2{static get ANY(){return J2}constructor(J,$){if($=b1($),J instanceof V2)if(J.loose===!!$.loose)return J;else J=J.value;if(J=J.trim().split(/\s+/).join(" "),x2("comparator",J,$),this.options=$,this.loose=!!$.loose,this.parse(J),this.semver===J2)this.value="";else this.value=this.operator+this.semver.version;x2("comp",this)}parse(J){const $=this.options.loose?h1[g1.COMPARATORLOOSE]:h1[g1.COMPARATOR],q=J.match($);if(!q)throw new TypeError(`Invalid comparator: ${J}`);if(this.operator=q[1]!==void 0?q[1]:"",this.operator==="=")this.operator="";if(!q[2])this.semver=J2;else this.semver=new m1(q[2],this.options.loose)}toString(){return this.value}test(J){if(x2("Comparator.test",J,this.options.loose),this.semver===J2||J===J2)return!0;if(typeof J==="string")try{J=new m1(J,this.options)}catch($){return!1}return M2(J,this.operator,this.semver,this.options)}intersects(J,$){if(!(J instanceof V2))throw new TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new u1(J.value,$).test(this.value)}else if(J.operator===""){if(J.value==="")return!0;return new u1(this.value,$).test(J.semver)}if($=b1($),$.includePrerelease&&(this.value==="<0.0.0-0"||J.value==="<0.0.0-0"))return!1;if(!$.includePrerelease&&(this.value.startsWith("<0.0.0")||J.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&J.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&J.operator.startsWith("<"))return!0;if(this.semver.version===J.semver.version&&this.operator.includes("=")&&J.operator.includes("="))return!0;if(M2(this.semver,"<",J.semver,$)&&this.operator.startsWith(">")&&J.operator.startsWith("<"))return!0;if(M2(this.semver,">",J.semver,$)&&this.operator.startsWith("<")&&J.operator.startsWith(">"))return!0;return!1}}l1.exports=V2;var b1=G2(),{safeRe:h1,t:g1}=o(),M2=O1(),x2=i(),m1=r(),u1=f2()});var f2=L((D9,n1)=>{class $2{constructor(J,$){if($=P4($),J instanceof $2)if(J.loose===!!$.loose&&J.includePrerelease===!!$.includePrerelease)return J;else return new $2(J.raw,$);if(J instanceof d2)return this.raw=J.value,this.set=[[J]],this.format(),this;if(this.options=$,this.loose=!!$.loose,this.includePrerelease=!!$.includePrerelease,this.raw=J.trim().split(/\s+/).join(" "),this.set=this.raw.split("||").map((q)=>this.parseRange(q.trim())).filter((q)=>q.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){const q=this.set[0];if(this.set=this.set.filter((W)=>!r1(W[0])),this.set.length===0)this.set=[q];else if(this.set.length>1){for(let W of this.set)if(W.length===1&&y4(W[0])){this.set=[W];break}}}this.format()}format(){return this.range=this.set.map((J)=>J.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(J){const q=((this.options.includePrerelease&&R4)|(this.options.loose&&_4))+":"+J,W=a1.get(q);if(W)return W;const Z=this.options.loose,U=Z?S[z.HYPHENRANGELOOSE]:S[z.HYPHENRANGE];J=J.replace(U,M4(this.options.includePrerelease)),y("hyphen replace",J),J=J.replace(S[z.COMPARATORTRIM],V4),y("comparator trim",J),J=J.replace(S[z.TILDETRIM],A4),y("tilde trim",J),J=J.replace(S[z.CARETTRIM],L4),y("caret trim",J);let B=J.split(" ").map((P)=>j4(P,this.options)).join(" ").split(/\s+/).map((P)=>k4(P,this.options));if(Z)B=B.filter((P)=>{return y("loose invalid filter",P,this.options),!!P.match(S[z.COMPARATORLOOSE])});y("range list",B);const Y=new Map,F=B.map((P)=>new d2(P,this.options));for(let P of F){if(r1(P))return[P];Y.set(P.value,P)}if(Y.size>1&&Y.has(""))Y.delete("");const G=[...Y.values()];return a1.set(q,G),G}intersects(J,$){if(!(J instanceof $2))throw new TypeError("a Range is required");return this.set.some((q)=>{return e1(q,$)&&J.set.some((W)=>{return e1(W,$)&&q.every((Z)=>{return W.every((U)=>{return Z.intersects(U,$)})})})})}test(J){if(!J)return!1;if(typeof J==="string")try{J=new X4(J,this.options)}catch($){return!1}for(let $=0;$<this.set.length;$++)if(x4(this.set[$],J,this.options))return!0;return!1}}n1.exports=$2;var N4=T1(),a1=new N4,P4=G2(),d2=c1(),y=i(),X4=r(),{safeRe:S,t:z,comparatorTrimReplace:V4,tildeTrimReplace:A4,caretTrimReplace:L4}=o(),{FLAG_INCLUDE_PRERELEASE:R4,FLAG_LOOSE:_4}=F2(),r1=(J)=>J.value==="<0.0.0-0",y4=(J)=>J.value==="",e1=(J,$)=>{let q=!0;const W=J.slice();let Z=W.pop();while(q&&W.length)q=W.every((U)=>{return Z.intersects(U,$)}),Z=W.pop();return q},j4=(J,$)=>{return y("comp",J,$),J=w4(J,$),y("caret",J),J=E4(J,$),y("tildes",J),J=D4(J,$),y("xrange",J),J=S4(J,$),y("stars",J),J},D=(J)=>!J||J.toLowerCase()==="x"||J==="*",E4=(J,$)=>{return J.trim().split(/\s+/).map((q)=>T4(q,$)).join(" ")},T4=(J,$)=>{const q=$.loose?S[z.TILDELOOSE]:S[z.TILDE];return J.replace(q,(W,Z,U,B,Y)=>{y("tilde",J,W,Z,U,B,Y);let F;if(D(Z))F="";else if(D(U))F=`>=${Z}.0.0 <${+Z+1}.0.0-0`;else if(D(B))F=`>=${Z}.${U}.0 <${Z}.${+U+1}.0-0`;else if(Y)y("replaceTilde pr",Y),F=`>=${Z}.${U}.${B}-${Y} <${Z}.${+U+1}.0-0`;else F=`>=${Z}.${U}.${B} <${Z}.${+U+1}.0-0`;return y("tilde return",F),F})},w4=(J,$)=>{return J.trim().split(/\s+/).map((q)=>z4(q,$)).join(" ")},z4=(J,$)=>{y("caret",J,$);const q=$.loose?S[z.CARETLOOSE]:S[z.CARET],W=$.includePrerelease?"-0":"";return J.replace(q,(Z,U,B,Y,F)=>{y("caret",J,Z,U,B,Y,F);let G;if(D(U))G="";else if(D(B))G=`>=${U}.0.0${W} <${+U+1}.0.0-0`;else if(D(Y))if(U==="0")G=`>=${U}.${B}.0${W} <${U}.${+B+1}.0-0`;else G=`>=${U}.${B}.0${W} <${+U+1}.0.0-0`;else if(F)if(y("replaceCaret pr",F),U==="0")if(B==="0")G=`>=${U}.${B}.${Y}-${F} <${U}.${B}.${+Y+1}-0`;else G=`>=${U}.${B}.${Y}-${F} <${U}.${+B+1}.0-0`;else G=`>=${U}.${B}.${Y}-${F} <${+U+1}.0.0-0`;else if(y("no pr"),U==="0")if(B==="0")G=`>=${U}.${B}.${Y}${W} <${U}.${B}.${+Y+1}-0`;else G=`>=${U}.${B}.${Y}${W} <${U}.${+B+1}.0-0`;else G=`>=${U}.${B}.${Y} <${+U+1}.0.0-0`;return y("caret return",G),G})},D4=(J,$)=>{return y("replaceXRanges",J,$),J.split(/\s+/).map((q)=>C4(q,$)).join(" ")},C4=(J,$)=>{J=J.trim();const q=$.loose?S[z.XRANGELOOSE]:S[z.XRANGE];return J.replace(q,(W,Z,U,B,Y,F)=>{y("xRange",J,W,Z,U,B,Y,F);const G=D(U),P=G||D(B),_=P||D(Y),E=_;if(Z==="="&&E)Z="";if(F=$.includePrerelease?"-0":"",G)if(Z===">"||Z==="<")W="<0.0.0-0";else W="*";else if(Z&&E){if(P)B=0;if(Y=0,Z===">")if(Z=">=",P)U=+U+1,B=0,Y=0;else B=+B+1,Y=0;else if(Z==="<=")if(Z="<",P)U=+U+1;else B=+B+1;if(Z==="<")F="-0";W=`${Z+U}.${B}.${Y}${F}`}else if(P)W=`>=${U}.0.0${F} <${+U+1}.0.0-0`;else if(_)W=`>=${U}.${B}.0${F} <${U}.${+B+1}.0-0`;return y("xRange return",W),W})},S4=(J,$)=>{return y("replaceStars",J,$),J.trim().replace(S[z.STAR],"")},k4=(J,$)=>{return y("replaceGTE0",J,$),J.trim().replace(S[$.includePrerelease?z.GTE0PRE:z.GTE0],"")},M4=(J)=>($,q,W,Z,U,B,Y,F,G,P,_,E)=>{if(D(W))q="";else if(D(Z))q=`>=${W}.0.0${J?"-0":""}`;else if(D(U))q=`>=${W}.${Z}.0${J?"-0":""}`;else if(B)q=`>=${q}`;else q=`>=${q}${J?"-0":""}`;if(D(G))F="";else if(D(P))F=`<${+G+1}.0.0-0`;else if(D(_))F=`<${G}.${+P+1}.0-0`;else if(E)F=`<=${G}.${P}.${_}-${E}`;else if(J)F=`<${G}.${P}.${+_+1}-0`;else F=`<=${F}`;return`${q} ${F}`.trim()},x4=(J,$,q)=>{for(let W=0;W<J.length;W++)if(!J[W].test($))return!1;if($.prerelease.length&&!q.includePrerelease){for(let W=0;W<J.length;W++){if(y(J[W].semver),J[W].semver===d2.ANY)continue;if(J[W].semver.prerelease.length>0){const Z=J[W].semver;if(Z.major===$.major&&Z.minor===$.minor&&Z.patch===$.patch)return!0}}return!1}return!0}});var s1=L((C9,p1)=>{var f4=f2(),d4=(J,$,q)=>{try{$=new f4($,q)}catch(W){return!1}return $.test(J)};p1.exports=d4});var v2=L((S9,v4)=>{v4.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.4",author:"Lovell Fuller <npm@lovell.info>",homepage:"https://sharp.pixelplumbing.com",contributors:["Pierre Inglebert <pierre.inglebert@gmail.com>","Jonathan Ong <jonathanrichardong@gmail.com>","Chanon Sajjamanochai <chanon.s@gmail.com>","Juliano Julio <julianojulio@gmail.com>","Daniel Gasienica <daniel@gasienica.ch>","Julian Walker <julian@fiftythree.com>","Amit Pitaru <pitaru.amit@gmail.com>","Brandon Aaron <hello.brandon@aaron.sh>","Andreas Lind <andreas@one.com>","Maurus Cuelenaere <mcuelenaere@gmail.com>","Linus Unnebäck <linus@folkdatorn.se>","Victor Mateevitsi <mvictoras@gmail.com>","Alaric Holloway <alaric.holloway@gmail.com>","Bernhard K. Weisshuhn <bkw@codingforce.com>","Chris Riley <criley@primedia.com>","David Carley <dacarley@gmail.com>","John Tobin <john@limelightmobileinc.com>","Kenton Gray <kentongray@gmail.com>","Felix Bünemann <Felix.Buenemann@gmail.com>","Samy Al Zahrani <samyalzahrany@gmail.com>","Chintan Thakkar <lemnisk8@gmail.com>","F. Orlando Galashan <frulo@gmx.de>","Kleis Auke Wolthuizen <info@kleisauke.nl>","Matt Hirsch <mhirsch@media.mit.edu>","Matthias Thoemmes <thoemmes@gmail.com>","Patrick Paskaris <patrick@paskaris.gr>","Jérémy Lal <kapouer@melix.org>","Rahul Nanwani <r.nanwani@gmail.com>","Alice Monday <alice0meta@gmail.com>","Kristo Jorgenson <kristo.jorgenson@gmail.com>","YvesBos <yves_bos@outlook.com>","Guy Maliar <guy@tailorbrands.com>","Nicolas Coden <nicolas@ncoden.fr>","Matt Parrish <matt.r.parrish@gmail.com>","Marcel Bretschneider <marcel.bretschneider@gmail.com>","Matthew McEachen <matthew+github@mceachen.org>","Jarda Kotěšovec <jarda.kotesovec@gmail.com>","Kenric D'Souza <kenric.dsouza@gmail.com>","Oleh Aleinyk <oleg.aleynik@gmail.com>","Marcel Bretschneider <marcel.bretschneider@gmail.com>","Andrea Bianco <andrea.bianco@unibas.ch>","Rik Heywood <rik@rik.org>","Thomas Parisot <hi@oncletom.io>","Nathan Graves <nathanrgraves+github@gmail.com>","Tom Lokhorst <tom@lokhorst.eu>","Espen Hovlandsdal <espen@hovlandsdal.com>","Sylvain Dumont <sylvain.dumont35@gmail.com>","Alun Davies <alun.owain.davies@googlemail.com>","Aidan Hoolachan <ajhoolachan21@gmail.com>","Axel Eirola <axel.eirola@iki.fi>","Freezy <freezy@xbmc.org>","Daiz <taneli.vatanen@gmail.com>","Julian Aubourg <j@ubourg.net>","Keith Belovay <keith@picthrive.com>","Michael B. Klein <mbklein@gmail.com>","Jordan Prudhomme <jordan@raboland.fr>","Ilya Ovdin <iovdin@gmail.com>","Andargor <andargor@yahoo.com>","Paul Neave <paul.neave@gmail.com>","Brendan Kennedy <brenwken@gmail.com>","Brychan Bennett-Odlum <git@brychan.io>","Edward Silverton <e.silverton@gmail.com>","Roman Malieiev <aromaleev@gmail.com>","Tomas Szabo <tomas.szabo@deftomat.com>","Robert O'Rourke <robert@o-rourke.org>","Guillermo Alfonso Varela Chouciño <guillevch@gmail.com>","Christian Flintrup <chr@gigahost.dk>","Manan Jadhav <manan@motionden.com>","Leon Radley <leon@radley.se>","alza54 <alza54@thiocod.in>","Jacob Smith <jacob@frende.me>","Michael Nutt <michael@nutt.im>","Brad Parham <baparham@gmail.com>","Taneli Vatanen <taneli.vatanen@gmail.com>","Joris Dugué <zaruike10@gmail.com>","Chris Banks <christopher.bradley.banks@gmail.com>","Ompal Singh <ompal.hitm09@gmail.com>","Brodan <christopher.hranj@gmail.com>","Ankur Parihar <ankur.github@gmail.com>","Brahim Ait elhaj <brahima@gmail.com>","Mart Jansink <m.jansink@gmail.com>","Lachlan Newman <lachnewman007@gmail.com>","Dennis Beatty <dennis@dcbeatty.com>","Ingvar Stepanyan <me@rreverser.com>"],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.0"},optionalDependencies:{"@img/sharp-darwin-arm64":"0.33.4","@img/sharp-darwin-x64":"0.33.4","@img/sharp-libvips-darwin-arm64":"1.0.2","@img/sharp-libvips-darwin-x64":"1.0.2","@img/sharp-libvips-linux-arm":"1.0.2","@img/sharp-libvips-linux-arm64":"1.0.2","@img/sharp-libvips-linux-s390x":"1.0.2","@img/sharp-libvips-linux-x64":"1.0.2","@img/sharp-libvips-linuxmusl-arm64":"1.0.2","@img/sharp-libvips-linuxmusl-x64":"1.0.2","@img/sharp-linux-arm":"0.33.4","@img/sharp-linux-arm64":"0.33.4","@img/sharp-linux-s390x":"0.33.4","@img/sharp-linux-x64":"0.33.4","@img/sharp-linuxmusl-arm64":"0.33.4","@img/sharp-linuxmusl-x64":"0.33.4","@img/sharp-wasm32":"0.33.4","@img/sharp-win32-ia32":"0.33.4","@img/sharp-win32-x64":"0.33.4"},devDependencies:{"@emnapi/runtime":"^1.1.1","@img/sharp-libvips-dev":"1.0.2","@img/sharp-libvips-dev-wasm32":"1.0.3","@img/sharp-libvips-win32-ia32":"1.0.2","@img/sharp-libvips-win32-x64":"1.0.2","@types/node":"*",async:"^3.2.5",cc:"^3.0.1",emnapi:"^1.1.1","exif-reader":"^2.0.1","extract-zip":"^2.0.1",icc:"^3.0.0","jsdoc-to-markdown":"^8.0.1","license-checker":"^25.0.1",mocha:"^10.4.0","node-addon-api":"^8.0.0",nyc:"^15.1.0",prebuild:"^13.0.1",semistandard:"^17.0.0","tar-fs":"^3.0.6",tsd:"^0.31.0"},license:"Apache-2.0",engines:{node:"^18.17.0 || ^20.3.0 || >=21.0.0",libvips:">=8.15.2"},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 h2=L((k9,U0)=>{var{spawnSync:A2}=import.meta.require("child_process"),{createHash:O4}=import.meta.require("crypto"),o1=L1(),b4=k2(),h4=s1(),t1=import.meta.require("detect-libc"),{engines:b2,optionalDependencies:g4}=v2(),m4=process.env.npm_package_config_libvips||b2.libvips,J0=o1(m4).version,u4=["darwin-arm64","darwin-x64","linux-arm","linux-arm64","linux-s390x","linux-x64","linuxmusl-arm64","linuxmusl-x64","win32-ia32","win32-x64"],L2={encoding:"utf8",shell:!0},$0=(J)=>{if(J instanceof Error)console.error(`sharp: Installation error: ${J.message}`);else console.log(`sharp: ${J}`)},q0=()=>t1.isNonGlibcLinuxSync()?t1.familySync():"",l4=()=>`${process.platform}${q0()}-${process.arch}`,e=()=>{if(W0())return"wasm32";const{npm_config_arch:J,npm_config_platform:$,npm_config_libc:q}=process.env,W=typeof q==="string"?q:q0();return`${$||process.platform}${W}-${J||process.arch}`},c4=()=>{try{return import.meta.require(`@img/sharp-libvips-dev-${e()}/include`)}catch{try{return (()=>{throw new Error(`Cannot require module "@img/sharp-libvips-dev/include"`);})()}catch{}}return""},a4=()=>{try{return (()=>{throw new Error(`Cannot require module "@img/sharp-libvips-dev/cplusplus"`);})()}catch{}return""},r4=()=>{try{return import.meta.require(`@img/sharp-libvips-dev-${e()}/lib`)}catch{try{return import.meta.require(`@img/sharp-libvips-${e()}/lib`)}catch{}}return""},e4=()=>{if(process.release?.name==="node"&&process.versions){if(!h4(process.versions.node,b2.node))return{found:process.versions.node,expected:b2.node}}},W0=()=>{const{CC:J}=process.env;return Boolean(J&&J.endsWith("/emcc"))},n4=()=>{if(process.platform==="darwin"&&process.arch==="x64")return(A2("sysctl sysctl.proc_translated",L2).stdout||"").trim()==="sysctl.proc_translated: 1";return!1},i1=(J)=>O4("sha512").update(J).digest("hex"),p4=()=>{try{const J=i1(`imgsharp-libvips-${e()}`),$=o1(g4[`@img/sharp-libvips-${e()}`]).version;return i1(`${J}npm:${$}`).slice(0,10)}catch{}return""},s4=()=>A2(`node-gyp rebuild --directory=src ${W0()?"--nodedir=emscripten":""}`,{...L2,stdio:"inherit"}).status,Z0=()=>{if(process.platform!=="win32")return(A2("pkg-config --modversion vips-cpp",{...L2,env:{...process.env,PKG_CONFIG_PATH:Q0()}}).stdout||"").trim();else return""},Q0=()=>{if(process.platform!=="win32")return[(A2('which brew >/dev/null 2>&1 && brew environment --plain | grep PKG_CONFIG_LIBDIR | cut -d" " -f2',L2).stdout||"").trim(),process.env.PKG_CONFIG_PATH,"/usr/local/lib/pkgconfig","/usr/lib/pkgconfig","/usr/local/libdata/pkgconfig","/usr/libdata/pkgconfig"].filter(Boolean).join(":");else return""},O2=(J,$)=>{return $0(`Detected ${$}, skipping search for globally-installed libvips`),J},t4=()=>{if(Boolean(process.env.SHARP_IGNORE_GLOBAL_LIBVIPS)===!0)return O2(!1,"SHARP_IGNORE_GLOBAL_LIBVIPS");if(Boolean(process.env.SHARP_FORCE_GLOBAL_LIBVIPS)===!0)return O2(!0,"SHARP_FORCE_GLOBAL_LIBVIPS");if(n4())return O2(!1,"Rosetta");const J=Z0();return!!J&&b4(J,J0)};U0.exports={minimumLibvipsVersion:J0,prebuiltPlatforms:u4,buildPlatformArch:e,buildSharpLibvipsIncludeDir:c4,buildSharpLibvipsCPlusPlusDir:a4,buildSharpLibvipsLibDir:r4,isUnsupportedNodeRuntime:e4,runtimePlatformArch:l4,log:$0,yarnLocator:p4,spawnRebuild:s4,globalLibvipsVersion:Z0,pkgConfigPath:Q0,useGlobalLibvips:t4}});var q2=L((M9,Y0)=>{var{familySync:i4,versionSync:o4}=import.meta.require("detect-libc"),{runtimePlatformArch:J3,isUnsupportedNodeRuntime:B0,prebuiltPlatforms:$3,minimumLibvipsVersion:q3}=h2(),l=J3(),W3=[`../src/build/Release/sharp-${l}.node`,"../src/build/Release/sharp-wasm32.node",`@img/sharp-${l}/sharp.node`,"@img/sharp-wasm32/sharp.node"],g2,R2=[];for(let J of W3)try{g2=import.meta.require(J);break}catch($){R2.push($)}if(g2)Y0.exports=g2;else{const[J,$,q]=["linux","darwin","win32"].map((U)=>l.startsWith(U)),W=[`Could not load the "sharp" module using the ${l} runtime`];R2.forEach((U)=>{if(U.code!=="MODULE_NOT_FOUND")W.push(`${U.code}: ${U.message}`)});const Z=R2.map((U)=>U.message).join(" ");if(W.push("Possible solutions:"),B0()){const{found:U,expected:B}=B0();W.push("- Please upgrade Node.js:",` Found ${U}`,` Requires ${B}`)}else if($3.includes(l)){const[U,B]=l.split("-"),Y=U.endsWith("musl")?" --libc=musl":"";W.push("- Ensure optional dependencies can be installed:"," npm install --include=optional sharp"," yarn add sharp --ignore-engines","- Ensure your package manager supports multi-platform installation:"," See https://sharp.pixelplumbing.com/install#cross-platform","- Add platform-specific dependencies:",` npm install --os=${U.replace("musl","")}${Y} --cpu=${B} sharp`)}else W.push(`- Manually install libvips >= ${q3}`,"- Add experimental WebAssembly-based dependencies:"," npm install --cpu=wasm32 sharp"," npm install @img/sharp-wasm32");if(J&&/(symbol not found|CXXABI_)/i.test(Z))try{const{engines:U}=import.meta.require(`@img/sharp-libvips-${l}/package`),B=`${i4()} ${o4()}`,Y=`${U.musl?"musl":"glibc"} ${U.musl||U.glibc}`;W.push("- Update your OS:",` Found ${B}`,` Requires ${Y}`)}catch(U){}if(J&&/\/snap\/core[0-9]{2}/.test(Z))W.push("- Remove the Node.js Snap, which does not support native modules"," snap remove node");if($&&/Incompatible library version/.test(Z))W.push("- Update Homebrew:"," brew update && brew upgrade vips");if(R2.some((U)=>U.code==="ERR_DLOPEN_DISABLED"))W.push("- Run Node.js without using the --no-addons flag");if(q&&/The specified procedure could not be found/.test(Z))W.push("- Using the canvas package on Windows?"," See https://sharp.pixelplumbing.com/install#canvas-and-windows","- Check for outdated versions of sharp in the dependency tree:"," npm ls sharp");throw W.push("- Consult the installation documentation:"," See https://sharp.pixelplumbing.com/install"),new Error(W.join("\n"))}});var K0=L((x9,I0)=>{var B3=function(){const J=this.constructor.call(),{debuglog:$,queueListener:q,...W}=this.options;if(J.options=structuredClone(W),J.options.debuglog=$,J.options.queueListener=q,this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),J.options.input.buffer=this.options.input.buffer,J.emit("finish")});return J},Z3=import.meta.require("util"),m2=import.meta.require("stream"),Q3=d();q2();var U3=Z3.debuglog("sharp"),c=function(J,$){if(arguments.length===1&&!Q3.defined(J))throw new Error("Invalid input");if(!(this instanceof c))return new c(J,$);return m2.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,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:(q)=>{this.emit("warning",q),U3(q)},queueListener:function(q){c.queue.emit("change",q)}},this.options.input=this._createInputDescriptor(J,$,{allowStream:!0}),this};Object.setPrototypeOf(c.prototype,m2.Duplex.prototype);Object.setPrototypeOf(c,m2.Duplex);Object.assign(c.prototype,{clone:B3});I0.exports=c});var u2=L((f9,F0)=>{F0.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 H0=L((d9,G0)=>{G0.exports=function J($){if(!$||typeof $==="string")return!1;return $ instanceof Array||Array.isArray($)||$.length>=0&&($.splice instanceof Function||Object.getOwnPropertyDescriptor($,$.length-1)&&$.constructor.name!=="String")}});var X0=L((v9,P0)=>{var Y3=H0(),I3=Array.prototype.concat,K3=Array.prototype.slice,N0=P0.exports=function J($){var q=[];for(var W=0,Z=$.length;W<Z;W++){var U=$[W];if(Y3(U))q=I3.call(q,K3.call(U));else q.push(U)}return q};N0.wrap=function(J){return function(){return J(N0(arguments))}}});var R0=L((O9,L0)=>{var g=function(J,$,q){return Math.min(Math.max($,J),q)},y2=function(J){var $=Math.round(J).toString(16).toUpperCase();return $.length<2?"0"+$:$},W2=u2(),Z2=X0(),V0=Object.hasOwnProperty,A0=Object.create(null);for(_2 in W2)if(V0.call(W2,_2))A0[W2[_2]]=_2;var _2,k=L0.exports={to:{},get:{}};k.get=function(J){var $=J.substring(0,3).toLowerCase(),q,W;switch($){case"hsl":q=k.get.hsl(J),W="hsl";break;case"hwb":q=k.get.hwb(J),W="hwb";break;default:q=k.get.rgb(J),W="rgb";break}if(!q)return null;return{model:W,value:q}};k.get.rgb=function(J){if(!J)return null;var $=/^#([a-f0-9]{3,4})$/i,q=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,W=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,Z=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,U=/^(\w+)$/,B=[0,0,0,1],Y,F,G;if(Y=J.match(q)){G=Y[2],Y=Y[1];for(F=0;F<3;F++){var P=F*2;B[F]=parseInt(Y.slice(P,P+2),16)}if(G)B[3]=parseInt(G,16)/255}else if(Y=J.match($)){Y=Y[1],G=Y[3];for(F=0;F<3;F++)B[F]=parseInt(Y[F]+Y[F],16);if(G)B[3]=parseInt(G+G,16)/255}else if(Y=J.match(W)){for(F=0;F<3;F++)B[F]=parseInt(Y[F+1],0);if(Y[4])if(Y[5])B[3]=parseFloat(Y[4])*0.01;else B[3]=parseFloat(Y[4])}else if(Y=J.match(Z)){for(F=0;F<3;F++)B[F]=Math.round(parseFloat(Y[F+1])*2.55);if(Y[4])if(Y[5])B[3]=parseFloat(Y[4])*0.01;else B[3]=parseFloat(Y[4])}else if(Y=J.match(U)){if(Y[1]==="transparent")return[0,0,0,0];if(!V0.call(W2,Y[1]))return null;return B=W2[Y[1]],B[3]=1,B}else return null;for(F=0;F<3;F++)B[F]=g(B[F],0,255);return B[3]=g(B[3],0,1),B};k.get.hsl=function(J){if(!J)return null;var $=/^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*)?\)$/,q=J.match($);if(q){var W=parseFloat(q[4]),Z=(parseFloat(q[1])%360+360)%360,U=g(parseFloat(q[2]),0,100),B=g(parseFloat(q[3]),0,100),Y=g(isNaN(W)?1:W,0,1);return[Z,U,B,Y]}return null};k.get.hwb=function(J){if(!J)return null;var $=/^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*)?\)$/,q=J.match($);if(q){var W=parseFloat(q[4]),Z=(parseFloat(q[1])%360+360)%360,U=g(parseFloat(q[2]),0,100),B=g(parseFloat(q[3]),0,100),Y=g(isNaN(W)?1:W,0,1);return[Z,U,B,Y]}return null};k.to.hex=function(){var J=Z2(arguments);return"#"+y2(J[0])+y2(J[1])+y2(J[2])+(J[3]<1?y2(Math.round(J[3]*255)):"")};k.to.rgb=function(){var J=Z2(arguments);return J.length<4||J[3]===1?"rgb("+Math.round(J[0])+", "+Math.round(J[1])+", "+Math.round(J[2])+")":"rgba("+Math.round(J[0])+", "+Math.round(J[1])+", "+Math.round(J[2])+", "+J[3]+")"};k.to.rgb.percent=function(){var J=Z2(arguments),$=Math.round(J[0]/255*100),q=Math.round(J[1]/255*100),W=Math.round(J[2]/255*100);return J.length<4||J[3]===1?"rgb("+$+"%, "+q+"%, "+W+"%)":"rgba("+$+"%, "+q+"%, "+W+"%, "+J[3]+")"};k.to.hsl=function(){var J=Z2(arguments);return J.length<4||J[3]===1?"hsl("+J[0]+", "+J[1]+"%, "+J[2]+"%)":"hsla("+J[0]+", "+J[1]+"%, "+J[2]+"%, "+J[3]+")"};k.to.hwb=function(){var J=Z2(arguments),$="";if(J.length>=4&&J[3]!==1)$=", "+J[3];return"hwb("+J[0]+", "+J[1]+"%, "+J[2]+"%"+$+")"};k.to.keyword=function(J){return A0[J.slice(0,3)]}});var l2=L((b9,y0)=>{var F3=function(J,$){return(J[0]-$[0])**2+(J[1]-$[1])**2+(J[2]-$[2])**2},Q2=u2(),_0={};for(let J of Object.keys(Q2))_0[Q2[J]]=J;var X={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"]}};y0.exports=X;for(let J of Object.keys(X)){if(!("channels"in X[J]))throw new Error("missing channels property: "+J);if(!("labels"in X[J]))throw new Error("missing channel labels property: "+J);if(X[J].labels.length!==X[J].channels)throw new Error("channel and label counts mismatch: "+J);const{channels:$,labels:q}=X[J];delete X[J].channels,delete X[J].labels,Object.defineProperty(X[J],"channels",{value:$}),Object.defineProperty(X[J],"labels",{value:q})}X.rgb.hsl=function(J){const $=J[0]/255,q=J[1]/255,W=J[2]/255,Z=Math.min($,q,W),U=Math.max($,q,W),B=U-Z;let Y,F;if(U===Z)Y=0;else if($===U)Y=(q-W)/B;else if(q===U)Y=2+(W-$)/B;else if(W===U)Y=4+($-q)/B;if(Y=Math.min(Y*60,360),Y<0)Y+=360;const G=(Z+U)/2;if(U===Z)F=0;else if(G<=0.5)F=B/(U+Z);else F=B/(2-U-Z);return[Y,F*100,G*100]};X.rgb.hsv=function(J){let $,q,W,Z,U;const B=J[0]/255,Y=J[1]/255,F=J[2]/255,G=Math.max(B,Y,F),P=G-Math.min(B,Y,F),_=function(E){return(G-E)/6/P+0.5};if(P===0)Z=0,U=0;else{if(U=P/G,$=_(B),q=_(Y),W=_(F),B===G)Z=W-q;else if(Y===G)Z=0.3333333333333333+$-W;else if(F===G)Z=0.6666666666666666+q-$;if(Z<0)Z+=1;else if(Z>1)Z-=1}return[Z*360,U*100,G*100]};X.rgb.hwb=function(J){const $=J[0],q=J[1];let W=J[2];const Z=X.rgb.hsl(J)[0],U=0.00392156862745098*Math.min($,Math.min(q,W));return W=1-0.00392156862745098*Math.max($,Math.max(q,W)),[Z,U*100,W*100]};X.rgb.cmyk=function(J){const $=J[0]/255,q=J[1]/255,W=J[2]/255,Z=Math.min(1-$,1-q,1-W),U=(1-$-Z)/(1-Z)||0,B=(1-q-Z)/(1-Z)||0,Y=(1-W-Z)/(1-Z)||0;return[U*100,B*100,Y*100,Z*100]};X.rgb.keyword=function(J){const $=_0[J];if($)return $;let q=Infinity,W;for(let Z of Object.keys(Q2)){const U=Q2[Z],B=F3(J,U);if(B<q)q=B,W=Z}return W};X.keyword.rgb=function(J){return Q2[J]};X.rgb.xyz=function(J){let $=J[0]/255,q=J[1]/255,W=J[2]/255;$=$>0.04045?(($+0.055)/1.055)**2.4:$/12.92,q=q>0.04045?((q+0.055)/1.055)**2.4:q/12.92,W=W>0.04045?((W+0.055)/1.055)**2.4:W/12.92;const Z=$*0.4124+q*0.3576+W*0.1805,U=$*0.2126+q*0.7152+W*0.0722,B=$*0.0193+q*0.1192+W*0.9505;return[Z*100,U*100,B*100]};X.rgb.lab=function(J){const $=X.rgb.xyz(J);let q=$[0],W=$[1],Z=$[2];q/=95.047,W/=100,Z/=108.883,q=q>0.008856?q**0.3333333333333333:7.787*q+0.13793103448275862,W=W>0.008856?W**0.3333333333333333:7.787*W+0.13793103448275862,Z=Z>0.008856?Z**0.3333333333333333:7.787*Z+0.13793103448275862;const U=116*W-16,B=500*(q-W),Y=200*(W-Z);return[U,B,Y]};X.hsl.rgb=function(J){const $=J[0]/360,q=J[1]/100,W=J[2]/100;let Z,U,B;if(q===0)return B=W*255,[B,B,B];if(W<0.5)Z=W*(1+q);else Z=W+q-W*q;const Y=2*W-Z,F=[0,0,0];for(let G=0;G<3;G++){if(U=$+0.3333333333333333*-(G-1),U<0)U++;if(U>1)U--;if(6*U<1)B=Y+(Z-Y)*6*U;else if(2*U<1)B=Z;else if(3*U<2)B=Y+(Z-Y)*(0.6666666666666666-U)*6;else B=Y;F[G]=B*255}return F};X.hsl.hsv=function(J){const $=J[0];let q=J[1]/100,W=J[2]/100,Z=q;const U=Math.max(W,0.01);W*=2,q*=W<=1?W:2-W,Z*=U<=1?U:2-U;const B=(W+q)/2,Y=W===0?2*Z/(U+Z):2*q/(W+q);return[$,Y*100,B*100]};X.hsv.rgb=function(J){const $=J[0]/60,q=J[1]/100;let W=J[2]/100;const Z=Math.floor($)%6,U=$-Math.floor($),B=255*W*(1-q),Y=255*W*(1-q*U),F=255*W*(1-q*(1-U));switch(W*=255,Z){case 0:return[W,F,B];case 1:return[Y,W,B];case 2:return[B,W,F];case 3:return[B,Y,W];case 4:return[F,B,W];case 5:return[W,B,Y]}};X.hsv.hsl=function(J){const $=J[0],q=J[1]/100,W=J[2]/100,Z=Math.max(W,0.01);let U,B;B=(2-q)*W;const Y=(2-q)*Z;return U=q*Z,U/=Y<=1?Y:2-Y,U=U||0,B/=2,[$,U*100,B*100]};X.hwb.rgb=function(J){const $=J[0]/360;let q=J[1]/100,W=J[2]/100;const Z=q+W;let U;if(Z>1)q/=Z,W/=Z;const B=Math.floor(6*$),Y=1-W;if(U=6*$-B,(B&1)!==0)U=1-U;const F=q+U*(Y-q);let G,P,_;switch(B){default:case 6:case 0:G=Y,P=F,_=q;break;case 1:G=F,P=Y,_=q;break;case 2:G=q,P=Y,_=F;break;case 3:G=q,P=F,_=Y;break;case 4:G=F,P=q,_=Y;break;case 5:G=Y,P=q,_=F;break}return[G*255,P*255,_*255]};X.cmyk.rgb=function(J){const $=J[0]/100,q=J[1]/100,W=J[2]/100,Z=J[3]/100,U=1-Math.min(1,$*(1-Z)+Z),B=1-Math.min(1,q*(1-Z)+Z),Y=1-Math.min(1,W*(1-Z)+Z);return[U*255,B*255,Y*255]};X.xyz.rgb=function(J){const $=J[0]/100,q=J[1]/100,W=J[2]/100;let Z,U,B;return Z=$*3.2406+q*-1.5372+W*-0.4986,U=$*-0.9689+q*1.8758+W*0.0415,B=$*0.0557+q*-0.204+W*1.057,Z=Z>0.0031308?1.055*Z**0.4166666666666667-0.055:Z*12.92,U=U>0.0031308?1.055*U**0.4166666666666667-0.055:U*12.92,B=B>0.0031308?1.055*B**0.4166666666666667-0.055:B*12.92,Z=Math.min(Math.max(0,Z),1),U=Math.min(Math.max(0,U),1),B=Math.min(Math.max(0,B),1),[Z*255,U*255,B*255]};X.xyz.lab=function(J){let $=J[0],q=J[1],W=J[2];$/=95.047,q/=100,W/=108.883,$=$>0.008856?$**0.3333333333333333:7.787*$+0.13793103448275862,q=q>0.008856?q**0.3333333333333333:7.787*q+0.13793103448275862,W=W>0.008856?W**0.3333333333333333:7.787*W+0.13793103448275862;const Z=116*q-16,U=500*($-q),B=200*(q-W);return[Z,U,B]};X.lab.xyz=function(J){const $=J[0],q=J[1],W=J[2];let Z,U,B;U=($+16)/116,Z=q/500+U,B=U-W/200;const Y=U**3,F=Z**3,G=B**3;return U=Y>0.008856?Y:(U-0.13793103448275862)/7.787,Z=F>0.008856?F:(Z-0.13793103448275862)/7.787,B=G>0.008856?G:(B-0.13793103448275862)/7.787,Z*=95.047,U*=100,B*=108.883,[Z,U,B]};X.lab.lch=function(J){const $=J[0],q=J[1],W=J[2];let Z;if(Z=Math.atan2(W,q)*360/2/Math.PI,Z<0)Z+=360;const B=Math.sqrt(q*q+W*W);return[$,B,Z]};X.lch.lab=function(J){const $=J[0],q=J[1],Z=J[2]/360*2*Math.PI,U=q*Math.cos(Z),B=q*Math.sin(Z);return[$,U,B]};X.rgb.ansi16=function(J,$=null){const[q,W,Z]=J;let U=$===null?X.rgb.hsv(J)[2]:$;if(U=Math.round(U/50),U===0)return 30;let B=30+(Math.round(Z/255)<<2|Math.round(W/255)<<1|Math.round(q/255));if(U===2)B+=60;return B};X.hsv.ansi16=function(J){return X.rgb.ansi16(X.hsv.rgb(J),J[2])};X.rgb.ansi256=function(J){const $=J[0],q=J[1],W=J[2];if($===q&&q===W){if($<8)return 16;if($>248)return 231;return Math.round(($-8)/247*24)+232}return 16+36*Math.round($/255*5)+6*Math.round(q/255*5)+Math.round(W/255*5)};X.ansi16.rgb=function(J){let $=J%10;if($===0||$===7){if(J>50)$+=3.5;return $=$/10.5*255,[$,$,$]}const q=(~~(J>50)+1)*0.5,W=($&1)*q*255,Z=($>>1&1)*q*255,U=($>>2&1)*q*255;return[W,Z,U]};X.ansi256.rgb=function(J){if(J>=232){const U=(J-232)*10+8;return[U,U,U]}J-=16;let $;const q=Math.floor(J/36)/5*255,W=Math.floor(($=J%36)/6)/5*255,Z=$%6/5*255;return[q,W,Z]};X.rgb.hex=function(J){const q=(((Math.round(J[0])&255)<<16)+((Math.round(J[1])&255)<<8)+(Math.round(J[2])&255)).toString(16).toUpperCase();return"000000".substring(q.length)+q};X.hex.rgb=function(J){const $=J.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!$)return[0,0,0];let q=$[0];if($[0].length===3)q=q.split("").map((Y)=>{return Y+Y}).join("");const W=parseInt(q,16),Z=W>>16&255,U=W>>8&255,B=W&255;return[Z,U,B]};X.rgb.hcg=function(J){const $=J[0]/255,q=J[1]/255,W=J[2]/255,Z=Math.max(Math.max($,q),W),U=Math.min(Math.min($,q),W),B=Z-U;let Y,F;if(B<1)Y=U/(1-B);else Y=0;if(B<=0)F=0;else if(Z===$)F=(q-W)/B%6;else if(Z===q)F=2+(W-$)/B;else F=4+($-q)/B;return F/=6,F%=1,[F*360,B*100,Y*100]};X.hsl.hcg=function(J){const $=J[1]/100,q=J[2]/100,W=q<0.5?2*$*q:2*$*(1-q);let Z=0;if(W<1)Z=(q-0.5*W)/(1-W);return[J[0],W*100,Z*100]};X.hsv.hcg=function(J){const $=J[1]/100,q=J[2]/100,W=$*q;let Z=0;if(W<1)Z=(q-W)/(1-W);return[J[0],W*100,Z*100]};X.hcg.rgb=function(J){const $=J[0]/360,q=J[1]/100,W=J[2]/100;if(q===0)return[W*255,W*255,W*255];const Z=[0,0,0],U=$%1*6,B=U%1,Y=1-B;let F=0;switch(Math.floor(U)){case 0:Z[0]=1,Z[1]=B,Z[2]=0;break;case 1:Z[0]=Y,Z[1]=1,Z[2]=0;break;case 2:Z[0]=0,Z[1]=1,Z[2]=B;break;case 3:Z[0]=0,Z[1]=Y,Z[2]=1;break;case 4:Z[0]=B,Z[1]=0,Z[2]=1;break;default:Z[0]=1,Z[1]=0,Z[2]=Y}return F=(1-q)*W,[(q*Z[0]+F)*255,(q*Z[1]+F)*255,(q*Z[2]+F)*255]};X.hcg.hsv=function(J){const $=J[1]/100,q=J[2]/100,W=$+q*(1-$);let Z=0;if(W>0)Z=$/W;return[J[0],Z*100,W*100]};X.hcg.hsl=function(J){const $=J[1]/100,W=J[2]/100*(1-$)+0.5*$;let Z=0;if(W>0&&W<0.5)Z=$/(2*W);else if(W>=0.5&&W<1)Z=$/(2*(1-W));return[J[0],Z*100,W*100]};X.hcg.hwb=function(J){const $=J[1]/100,q=J[2]/100,W=$+q*(1-$);return[J[0],(W-$)*100,(1-W)*100]};X.hwb.hcg=function(J){const $=J[1]/100,W=1-J[2]/100,Z=W-$;let U=0;if(Z<1)U=(W-Z)/(1-Z);return[J[0],Z*100,U*100]};X.apple.rgb=function(J){return[J[0]/65535*255,J[1]/65535*255,J[2]/65535*255]};X.rgb.apple=function(J){return[J[0]/255*65535,J[1]/255*65535,J[2]/255*65535]};X.gray.rgb=function(J){return[J[0]/100*255,J[0]/100*255,J[0]/100*255]};X.gray.hsl=function(J){return[0,0,J[0]]};X.gray.hsv=X.gray.hsl;X.gray.hwb=function(J){return[0,100,J[0]]};X.gray.cmyk=function(J){return[0,0,0,J[0]]};X.gray.lab=function(J){return[J[0],0,0]};X.gray.hex=function(J){const $=Math.round(J[0]/100*255)&255,W=(($<<16)+($<<8)+$).toString(16).toUpperCase();return"000000".substring(W.length)+W};X.rgb.gray=function(J){return[(J[0]+J[1]+J[2])/3/255*100]}});var E0=L((h9,j0)=>{var G3=function(){const J={},$=Object.keys(j2);for(let q=$.length,W=0;W<q;W++)J[$[W]]={distance:-1,parent:null};return J},H3=function(J){const $=G3(),q=[J];$[J].distance=0;while(q.length){const W=q.pop(),Z=Object.keys(j2[W]);for(let U=Z.length,B=0;B<U;B++){const Y=Z[B],F=$[Y];if(F.distance===-1)F.distance=$[W].distance+1,F.parent=W,q.unshift(Y)}}return $},N3=function(J,$){return function(q){return $(J(q))}},P3=function(J,$){const q=[$[J].parent,J];let W=j2[$[J].parent][J],Z=$[J].parent;while($[Z].parent)q.unshift($[Z].parent),W=N3(j2[$[Z].parent][Z],W),Z=$[Z].parent;return W.conversion=q,W},j2=l2();j0.exports=function(J){const $=H3(J),q={},W=Object.keys($);for(let Z=W.length,U=0;U<Z;U++){const B=W[U];if($[B].parent===null)continue;q[B]=P3(B,$)}return q}});var w0=L((g9,T0)=>{var A3=function(J){const $=function(...q){const W=q[0];if(W===void 0||W===null)return W;if(W.length>1)q=W;return J(q)};if("conversion"in J)$.conversion=J.conversion;return $},L3=function(J){const $=function(...q){const W=q[0];if(W===void 0||W===null)return W;if(W.length>1)q=W;const Z=J(q);if(typeof Z==="object")for(let U=Z.length,B=0;B<U;B++)Z[B]=Math.round(Z[B]);return Z};if("conversion"in J)$.conversion=J.conversion;return $},c2=l2(),X3=E0(),n={},V3=Object.keys(c2);V3.forEach((J)=>{n[J]={},Object.defineProperty(n[J],"channels",{value:c2[J].channels}),Object.defineProperty(n[J],"labels",{value:c2[J].labels});const $=X3(J);Object.keys($).forEach((W)=>{const Z=$[W];n[J][W]=L3(Z),n[J][W].raw=A3(Z)})});T0.exports=n});var T2=L((m9,D0)=>{var w=function(J,$){if(!(this instanceof w))return new w(J,$);if($&&$ in z0)$=null;if($&&!($ in M))throw new Error("Unknown model: "+$);let q,W;if(J==null)this.model="rgb",this.color=[0,0,0],this.valpha=1;else if(J instanceof w)this.model=J.model,this.color=[...J.color],this.valpha=J.valpha;else if(typeof J==="string"){const Z=p.get(J);if(Z===null)throw new Error("Unable to parse color from string: "+J);this.model=Z.model,W=M[this.model].channels,this.color=Z.value.slice(0,W),this.valpha=typeof Z.value[W]==="number"?Z.value[W]:1}else if(J.length>0){this.model=$||"rgb",W=M[this.model].channels;const Z=Array.prototype.slice.call(J,0,W);this.color=r2(Z,W),this.valpha=typeof J[W]==="number"?J[W]:1}else if(typeof J==="number")this.model="rgb",this.color=[J>>16&255,J>>8&255,J&255],this.valpha=1;else{this.valpha=1;const Z=Object.keys(J);if("alpha"in J)Z.splice(Z.indexOf("alpha"),1),this.valpha=typeof J.alpha==="number"?J.alpha:0;const U=Z.sort().join("");if(!(U in a2))throw new Error("Unable to parse color from object: "+JSON.stringify(J));this.model=a2[U];const{labels:B}=M[this.model],Y=[];for(q=0;q<B.length;q++)Y.push(J[B[q]]);this.color=r2(Y)}if(E2[this.model]){W=M[this.model].channels;for(q=0;q<W;q++){const Z=E2[this.model][q];if(Z)this.color[q]=Z(this.color[q])}}if(this.valpha=Math.max(0,Math.min(1,this.valpha)),Object.freeze)Object.freeze(this)},R3=function(J,$){return Number(J.toFixed($))},_3=function(J){return function($){return R3($,J)}},j=function(J,$,q){J=Array.isArray(J)?J:[J];for(let W of J)(E2[W]||(E2[W]=[]))[$]=q;return J=J[0],function(W){let Z;if(W!==void 0){if(q)W=q(W);return Z=this[J](),Z.color[$]=W,Z}if(Z=this[J]().color[$],q)Z=q(Z);return Z}},T=function(J){return function($){return Math.max(0,Math.min(J,$))}},y3=function(J){return Array.isArray(J)?J:[J]},r2=function(J,$){for(let q=0;q<$;q++)if(typeof J[q]!=="number")J[q]=0;return J},p=R0(),M=w0(),z0=["keyword","gray","hex"],a2={};for(let J of Object.keys(M))a2[[...M[J].labels].sort().join("")]=J;var E2={};w.prototype={toString(){return this.string()},toJSON(){return this[this.model]()},string(J){let $=this.model in p.to?this:this.rgb();$=$.round(typeof J==="number"?J:1);const q=$.valpha===1?$.color:[...$.color,this.valpha];return p.to[$.model](q)},percentString(J){const $=this.rgb().round(typeof J==="number"?J:1),q=$.valpha===1?$.color:[...$.color,this.valpha];return p.to.rgb.percent(q)},array(){return this.valpha===1?[...this.color]:[...this.color,this.valpha]},object(){const J={},{channels:$}=M[this.model],{labels:q}=M[this.model];for(let W=0;W<$;W++)J[q[W]]=this.color[W];if(this.valpha!==1)J.alpha=this.valpha;return J},unitArray(){const J=this.rgb().color;if(J[0]/=255,J[1]/=255,J[2]/=255,this.valpha!==1)J.push(this.valpha);return J},unitObject(){const J=this.rgb().object();if(J.r/=255,J.g/=255,J.b/=255,this.valpha!==1)J.alpha=this.valpha;return J},round(J){return J=Math.max(J||0,0),new w([...this.color.map(_3(J)),this.valpha],this.model)},alpha(J){if(J!==void 0)return new w([...this.color,Math.max(0,Math.min(1,J))],this.model);return this.valpha},red:j("rgb",0,T(255)),green:j("rgb",1,T(255)),blue:j("rgb",2,T(255)),hue:j(["hsl","hsv","hsl","hwb","hcg"],0,(J)=>(J%360+360)%360),saturationl:j("hsl",1,T(100)),lightness:j("hsl",2,T(100)),saturationv:j("hsv",1,T(100)),value:j("hsv",2,T(100)),chroma:j("hcg",1,T(100)),gray:j("hcg",2,T(100)),white:j("hwb",1,T(100)),wblack:j("hwb",2,T(100)),cyan:j("cmyk",0,T(100)),magenta:j("cmyk",1,T(100)),yellow:j("cmyk",2,T(100)),black:j("cmyk",3,T(100)),x:j("xyz",0,T(95.047)),y:j("xyz",1,T(100)),z:j("xyz",2,T(108.833)),l:j("lab",0,T(100)),a:j("lab",1),b:j("lab",2),keyword(J){if(J!==void 0)return new w(J);return M[this.model].keyword(this.color)},hex(J){if(J!==void 0)return new w(J);return p.to.hex(this.rgb().round().color)},hexa(J){if(J!==void 0)return new w(J);const $=this.rgb().round().color;let q=Math.round(this.valpha*255).toString(16).toUpperCase();if(q.length===1)q="0"+q;return p.to.hex($)+q},rgbNumber(){const J=this.rgb().color;return(J[0]&255)<<16|(J[1]&255)<<8|J[2]&255},luminosity(){const J=this.rgb().color,$=[];for(let[q,W]of J.entries()){const Z=W/255;$[q]=Z<=0.04045?Z/12.92:((Z+0.055)/1.055)**2.4}return 0.2126*$[0]+0.7152*$[1]+0.0722*$[2]},contrast(J){const $=this.luminosity(),q=J.luminosity();if($>q)return($+0.05)/(q+0.05);return(q+0.05)/($+0.05)},level(J){const $=this.contrast(J);if($>=7)return"AAA";return $>=4.5?"AA":""},isDark(){const J=this.rgb().color;return(J[0]*2126+J[1]*7152+J[2]*722)/1e4<128},isLight(){return!this.isDark()},negate(){const J=this.rgb();for(let $=0;$<3;$++)J.color[$]=255-J.color[$];return J},lighten(J){const $=this.hsl();return $.color[2]+=$.color[2]*J,$},darken(J){const $=this.hsl();return $.color[2]-=$.color[2]*J,$},saturate(J){const $=this.hsl();return $.color[1]+=$.color[1]*J,$},desaturate(J){const $=this.hsl();return $.color[1]-=$.color[1]*J,$},whiten(J){const $=this.hwb();return $.color[1]+=$.color[1]*J,$},blacken(J){const $=this.hwb();return $.color[2]+=$.color[2]*J,$},grayscale(){const J=this.rgb().color,$=J[0]*0.3+J[1]*0.59+J[2]*0.11;return w.rgb($,$,$)},fade(J){return this.alpha(this.valpha-this.valpha*J)},opaquer(J){return this.alpha(this.valpha+this.valpha*J)},rotate(J){const $=this.hsl();let q=$.color[0];return q=(q+J)%360,q=q<0?360+q:q,$.color[0]=q,$},mix(J,$){if(!J||!J.rgb)throw new Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof J);const q=J.rgb(),W=this.rgb(),Z=$===void 0?0.5:$,U=2*Z-1,B=q.alpha()-W.alpha(),Y=((U*B===-1?U:(U+B)/(1+U*B))+1)/2,F=1-Y;return w.rgb(Y*q.red()+F*W.red(),Y*q.green()+F*W.green(),Y*q.blue()+F*W.blue(),q.alpha()*Z+W.alpha()*(1-Z))}};for(let J of Object.keys(M)){if(z0.includes(J))continue;const{channels:$}=M[J];w.prototype[J]=function(...q){if(this.model===J)return new w(this);if(q.length>0)return new w(q,J);return new w([...y3(M[this.model][J].raw(this.color)),this.valpha],J)},w[J]=function(...q){let W=q[0];if(typeof W==="number")W=r2(q,$);return new w(W,J)}}D0.exports=w});var k0=L((u9,S0)=>{var C0=function(J){const{raw:$,density:q,limitInputPixels:W,ignoreIcc:Z,unlimited:U,sequentialRead:B,failOn:Y,failOnError:F,animated:G,page:P,pages:_,subifd:E}=J;return[$,q,W,Z,U,B,Y,F,G,P,_,E].some(K.defined)?{raw:$,density:q,limitInputPixels:W,ignoreIcc:Z,unlimited:U,sequentialRead:B,failOn:Y,failOnError:F,animated:G,page:P,pages:_,subifd:E}:void 0},T3=function(J,$,q){const W={failOn:"warning",limitInputPixels:Math.pow(16383,2),ignoreIcc:!1,unlimited:!1,sequentialRead:!0};if(K.string(J))W.file=J;else if(K.buffer(J)){if(J.length===0)throw Error("Input Buffer is empty");W.buffer=J}else if(K.arrayBuffer(J)){if(J.byteLength===0)throw Error("Input bit Array is empty");W.buffer=Buffer.from(J,0,J.byteLength)}else if(K.typedArray(J)){if(J.length===0)throw Error("Input Bit Array is empty");W.buffer=Buffer.from(J.buffer,J.byteOffset,J.byteLength)}else if(K.plainObject(J)&&!K.defined($)){if($=J,C0($))W.buffer=[]}else if(!K.defined(J)&&!K.defined($)&&K.object(q)&&q.allowStream)W.buffer=[];else throw new Error(`Unsupported input '${J}' of type ${typeof J}${K.defined($)?` when also providing options of type ${typeof $}`:""}`);if(K.object($)){if(K.defined($.failOnError))if(K.bool($.failOnError))W.failOn=$.failOnError?"warning":"none";else throw K.invalidParameterError("failOnError","boolean",$.failOnError);if(K.defined($.failOn))if(K.string($.failOn)&&K.inArray($.failOn,["none","truncated","error","warning"]))W.failOn=$.failOn;else throw K.invalidParameterError("failOn","one of: none, truncated, error, warning",$.failOn);if(K.defined($.density))if(K.inRange($.density,1,1e5))W.density=$.density;else throw K.invalidParameterError("density","number between 1 and 100000",$.density);if(K.defined($.ignoreIcc))if(K.bool($.ignoreIcc))W.ignoreIcc=$.ignoreIcc;else throw K.invalidParameterError("ignoreIcc","boolean",$.ignoreIcc);if(K.defined($.limitInputPixels))if(K.bool($.limitInputPixels))W.limitInputPixels=$.limitInputPixels?Math.pow(16383,2):0;else if(K.integer($.limitInputPixels)&&K.inRange($.limitInputPixels,0,Number.MAX_SAFE_INTEGER))W.limitInputPixels=$.limitInputPixels;else throw K.invalidParameterError("limitInputPixels","positive integer",$.limitInputPixels);if(K.defined($.unlimited))if(K.bool($.unlimited))W.unlimited=$.unlimited;else throw K.invalidParameterError("unlimited","boolean",$.unlimited);if(K.defined($.sequentialRead))if(K.bool($.sequentialRead))W.sequentialRead=$.sequentialRead;else throw K.invalidParameterError("sequentialRead","boolean",$.sequentialRead);if(K.defined($.raw))if(K.object($.raw)&&K.integer($.raw.width)&&$.raw.width>0&&K.integer($.raw.height)&&$.raw.height>0&&K.integer($.raw.channels)&&K.inRange($.raw.channels,1,4))switch(W.rawWidth=$.raw.width,W.rawHeight=$.raw.height,W.rawChannels=$.raw.channels,W.rawPremultiplied=!!$.raw.premultiplied,J.constructor){case Uint8Array:case Uint8ClampedArray:W.rawDepth="uchar";break;case Int8Array:W.rawDepth="char";break;case Uint16Array:W.rawDepth="ushort";break;case Int16Array:W.rawDepth="short";break;case Uint32Array:W.rawDepth="uint";break;case Int32Array:W.rawDepth="int";break;case Float32Array:W.rawDepth="float";break;case Float64Array:W.rawDepth="double";break;default:W.rawDepth="uchar";break}else throw new Error("Expected width, height and channels for raw pixel input");if(K.defined($.animated))if(K.bool($.animated))W.pages=$.animated?-1:1;else throw K.invalidParameterError("animated","boolean",$.animated);if(K.defined($.pages))if(K.integer($.pages)&&K.inRange($.pages,-1,1e5))W.pages=$.pages;else throw K.invalidParameterError("pages","integer between -1 and 100000",$.pages);if(K.defined($.page))if(K.integer($.page)&&K.inRange($.page,0,1e5))W.page=$.page;else throw K.invalidParameterError("page","integer between 0 and 100000",$.page);if(K.defined($.level))if(K.integer($.level)&&K.inRange($.level,0,256))W.level=$.level;else throw K.invalidParameterError("level","integer between 0 and 256",$.level);if(K.defined($.subifd))if(K.integer($.subifd)&&K.inRange($.subifd,-1,1e5))W.subifd=$.subifd;else throw K.invalidParameterError("subifd","integer between -1 and 100000",$.subifd);if(K.defined($.create))if(K.object($.create)&&K.integer($.create.width)&&$.create.width>0&&K.integer($.create.height)&&$.create.height>0&&K.integer($.create.channels)){if(W.createWidth=$.create.width,W.createHeight=$.create.height,W.createChannels=$.create.channels,K.defined($.create.noise)){if(!K.object($.create.noise))throw new Error("Expected noise to be an object");if(!K.inArray($.create.noise.type,["gaussian"]))throw new Error("Only gaussian noise is supported at the moment");if(!K.inRange($.create.channels,1,4))throw K.invalidParameterError("create.channels","number between 1 and 4",$.create.channels);if(W.createNoiseType=$.create.noise.type,K.number($.create.noise.mean)&&K.inRange($.create.noise.mean,0,1e4))W.createNoiseMean=$.create.noise.mean;else throw K.invalidParameterError("create.noise.mean","number between 0 and 10000",$.create.noise.mean);if(K.number($.create.noise.sigma)&&K.inRange($.create.noise.sigma,0,1e4))W.createNoiseSigma=$.create.noise.sigma;else throw K.invalidParameterError("create.noise.sigma","number between 0 and 10000",$.create.noise.sigma)}else if(K.defined($.create.background)){if(!K.inRange($.create.channels,3,4))throw K.invalidParameterError("create.channels","number between 3 and 4",$.create.channels);const Z=j3($.create.background);W.createBackground=[Z.red(),Z.green(),Z.blue(),Math.round(Z.alpha()*255)]}else throw new Error("Expected valid noise or background to create a new input image");delete W.buffer}else throw new Error("Expected valid width, height and channels to create a new input image");if(K.defined($.text))if(K.object($.text)&&K.string($.text.text)){if(W.textValue=$.text.text,K.defined($.text.height)&&K.defined($.text.dpi))throw new Error("Expected only one of dpi or height");if(K.defined($.text.font))if(K.string($.text.font))W.textFont=$.text.font;else throw K.invalidParameterError("text.font","string",$.text.font);if(K.defined($.text.fontfile))if(K.string($.text.fontfile))W.textFontfile=$.text.fontfile;else throw K.invalidParameterError("text.fontfile","string",$.text.fontfile);if(K.defined($.text.width))if(K.integer($.text.width)&&$.text.width>0)W.textWidth=$.text.width;else throw K.invalidParameterError("text.width","positive integer",$.text.width);if(K.defined($.text.height))if(K.integer($.text.height)&&$.text.height>0)W.textHeight=$.text.height;else throw K.invalidParameterError("text.height","positive integer",$.text.height);if(K.defined($.text.align))if(K.string($.text.align)&&K.string(this.constructor.align[$.text.align]))W.textAlign=this.constructor.align[$.text.align];else throw K.invalidParameterError("text.align","valid alignment",$.text.align);if(K.defined($.text.justify))if(K.bool($.text.justify))W.textJustify=$.text.justify;else throw K.invalidParameterError("text.justify","boolean",$.text.justify);if(K.defined($.text.dpi))if(K.integer($.text.dpi)&&K.inRange($.text.dpi,1,1e6))W.textDpi=$.text.dpi;else throw K.invalidParameterError("text.dpi","integer between 1 and 1000000",$.text.dpi);if(K.defined($.text.rgba))if(K.bool($.text.rgba))W.textRgba=$.text.rgba;else throw K.invalidParameterError("text.rgba","bool",$.text.rgba);if(K.defined($.text.spacing))if(K.integer($.text.spacing)&&K.inRange($.text.spacing,-1e6,1e6))W.textSpacing=$.text.spacing;else throw K.invalidParameterError("text.spacing","integer between -1000000 and 1000000",$.text.spacing);if(K.defined($.text.wrap))if(K.string($.text.wrap)&&K.inArray($.text.wrap,["word","char","word-char","none"]))W.textWrap=$.text.wrap;else throw K.invalidParameterError("text.wrap","one of: word, char, word-char, none",$.text.wrap);delete W.buffer}else throw new Error("Expected a valid string to create an image with text.")}else if(K.defined($))throw new Error("Invalid input options "+$);return W},w3=function(J,$,q){if(Array.isArray(this.options.input.buffer))if(K.buffer(J)){if(this.options.input.buffer.length===0)this.on("finish",()=>{this.streamInFinished=!0});this.options.input.buffer.push(J),q()}else q(new Error("Non-Buffer data on Writable Stream"));else q(new Error("Unexpected data on Writable Stream"))},z3=function(){if(this._isStreamInput())this.options.input.buffer=Buffer.concat(this.options.input.buffer)},D3=function(){return Array.isArray(this.options.input.buffer)},C3=function(J){const $=Error();if(K.fn(J)){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),m.metadata(this.options,(q,W)=>{if(q)J(K.nativeError(q,$));else J(null,W)})});else m.metadata(this.options,(q,W)=>{if(q)J(K.nativeError(q,$));else J(null,W)});return this}else if(this._isStreamInput())return new Promise((q,W)=>{const Z=()=>{this._flattenBufferIn(),m.metadata(this.options,(U,B)=>{if(U)W(K.nativeError(U,$));else q(B)})};if(this.writableFinished)Z();else this.once("finish",Z)});else return new Promise((q,W)=>{m.metadata(this.options,(Z,U)=>{if(Z)W(K.nativeError(Z,$));else q(U)})})},S3=function(J){const $=Error();if(K.fn(J)){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),m.stats(this.options,(q,W)=>{if(q)J(K.nativeError(q,$));else J(null,W)})});else m.stats(this.options,(q,W)=>{if(q)J(K.nativeError(q,$));else J(null,W)});return this}else if(this._isStreamInput())return new Promise((q,W)=>{this.on("finish",function(){this._flattenBufferIn(),m.stats(this.options,(Z,U)=>{if(Z)W(K.nativeError(Z,$));else q(U)})})});else return new Promise((q,W)=>{m.stats(this.options,(Z,U)=>{if(Z)W(K.nativeError(Z,$));else q(U)})})},j3=T2(),K=d(),m=q2(),E3={left:"low",center:"centre",centre:"centre",right:"high"};S0.exports=function(J){Object.assign(J.prototype,{_inputOptionsFromObject:C0,_createInputDescriptor:T3,_write:w3,_flattenBufferIn:z3,_isStreamInput:D3,metadata:C3,stats:S3}),J.align=E3}});var O0=L((l9,v0)=>{var n2=function(J){return J.angle%360!==0||J.useExifOrientation===!0||J.rotationAngle!==0},w2=function(J){return J.width!==-1||J.height!==-1},x3=function(J,$,q){if(w2(this.options))this.options.debuglog("ignoring previous resize options");if(this.options.widthPost!==-1)this.options.debuglog("operation order will be: extract, resize, extract");if(V.defined(J))if(V.object(J)&&!V.defined(q))q=J;else if(V.integer(J)&&J>0)this.options.width=J;else throw V.invalidParameterError("width","positive integer",J);else this.options.width=-1;if(V.defined($))if(V.integer($)&&$>0)this.options.height=$;else throw V.invalidParameterError("height","positive integer",$);else this.options.height=-1;if(V.object(q)){if(V.defined(q.width))if(V.integer(q.width)&&q.width>0)this.options.width=q.width;else throw V.invalidParameterError("width","positive integer",q.width);if(V.defined(q.height))if(V.integer(q.height)&&q.height>0)this.options.height=q.height;else throw V.invalidParameterError("height","positive integer",q.height);if(V.defined(q.fit)){const W=M3[q.fit];if(V.string(W))this.options.canvas=W;else throw V.invalidParameterError("fit","valid fit",q.fit)}if(V.defined(q.position)){const W=V.integer(q.position)?q.position:d0[q.position]||f0[q.position]||x0[q.position];if(V.integer(W)&&(V.inRange(W,0,8)||V.inRange(W,16,17)))this.options.position=W;else throw V.invalidParameterError("position","valid position/gravity/strategy",q.position)}if(this._setBackgroundColourOption("resizeBackground",q.background),V.defined(q.kernel))if(V.string(e2[q.kernel]))this.options.kernel=e2[q.kernel];else throw V.invalidParameterError("kernel","valid kernel name",q.kernel);if(V.defined(q.withoutEnlargement))this._setBooleanOption("withoutEnlargement",q.withoutEnlargement);if(V.defined(q.withoutReduction))this._setBooleanOption("withoutReduction",q.withoutReduction);if(V.defined(q.fastShrinkOnLoad))this._setBooleanOption("fastShrinkOnLoad",q.fastShrinkOnLoad)}if(n2(this.options)&&w2(this.options))this.options.rotateBeforePreExtract=!0;return this},f3=function(J){if(V.integer(J)&&J>0)this.options.extendTop=J,this.options.extendBottom=J,this.options.extendLeft=J,this.options.extendRight=J;else if(V.object(J)){if(V.defined(J.top))if(V.integer(J.top)&&J.top>=0)this.options.extendTop=J.top;else throw V.invalidParameterError("top","positive integer",J.top);if(V.defined(J.bottom))if(V.integer(J.bottom)&&J.bottom>=0)this.options.extendBottom=J.bottom;else throw V.invalidParameterError("bottom","positive integer",J.bottom);if(V.defined(J.left))if(V.integer(J.left)&&J.left>=0)this.options.extendLeft=J.left;else throw V.invalidParameterError("left","positive integer",J.left);if(V.defined(J.right))if(V.integer(J.right)&&J.right>=0)this.options.extendRight=J.right;else throw V.invalidParameterError("right","positive integer",J.right);if(this._setBackgroundColourOption("extendBackground",J.background),V.defined(J.extendWith))if(V.string(M0[J.extendWith]))this.options.extendWith=M0[J.extendWith];else throw V.invalidParameterError("extendWith","one of: background, copy, repeat, mirror",J.extendWith)}else throw V.invalidParameterError("extend","integer or object",J);return this},d3=function(J){const $=w2(this.options)||this.options.widthPre!==-1?"Post":"Pre";if(this.options[`width${$}`]!==-1)this.options.debuglog("ignoring previous extract options");if(["left","top","width","height"].forEach(function(q){const W=J[q];if(V.integer(W)&&W>=0)this.options[q+(q==="left"||q==="top"?"Offset":"")+$]=W;else throw V.invalidParameterError(q,"integer",W)},this),n2(this.options)&&!w2(this.options)){if(this.options.widthPre===-1||this.options.widthPost===-1)this.options.rotateBeforePreExtract=!0}return this},v3=function(J){if(this.options.trimThreshold=10,V.defined(J))if(V.object(J)){if(V.defined(J.background))this._setBackgroundColourOption("trimBackground",J.background);if(V.defined(J.threshold))if(V.number(J.threshold)&&J.threshold>=0)this.options.trimThreshold=J.threshold;else throw V.invalidParameterError("threshold","positive number",J.threshold);if(V.defined(J.lineArt))this._setBooleanOption("trimLineArt",J.lineArt)}else throw V.invalidParameterError("trim","object",J);if(n2(this.options))this.options.rotateBeforePreExtract=!0;return this},V=d(),x0={center:0,centre:0,north:1,east:2,south:3,west:4,northeast:5,southeast:6,southwest:7,northwest:8},f0={top:1,right:2,bottom:3,left:4,"right top":5,"right bottom":6,"left bottom":7,"left top":8},M0={background:"background",copy:"copy",repeat:"repeat",mirror:"mirror"},d0={entropy:16,attention:17},e2={nearest:"nearest",linear:"linear",cubic:"cubic",mitchell:"mitchell",lanczos2:"lanczos2",lanczos3:"lanczos3"},k3={contain:"contain",cover:"cover",fill:"fill",inside:"inside",outside:"outside"},M3={contain:"embed",cover:"crop",fill:"ignore_aspect",inside:"max",outside:"min"};v0.exports=function(J){Object.assign(J.prototype,{resize:x3,extend:f3,extract:d3,trim:v3}),J.gravity=x0,J.strategy=d0,J.kernel=e2,J.fit=k3,J.position=f0}});var h0=L((c9,b0)=>{var O3=function(J){if(!Array.isArray(J))throw R.invalidParameterError("images to composite","array",J);return this.options.composite=J.map(($)=>{if(!R.object($))throw R.invalidParameterError("image to composite","object",$);const q=this._inputOptionsFromObject($),W={input:this._createInputDescriptor($.input,q,{allowStream:!1}),blend:"over",tile:!1,left:0,top:0,hasOffset:!1,gravity:0,premultiplied:!1};if(R.defined($.blend))if(R.string(p2[$.blend]))W.blend=p2[$.blend];else throw R.invalidParameterError("blend","valid blend name",$.blend);if(R.defined($.tile))if(R.bool($.tile))W.tile=$.tile;else throw R.invalidParameterError("tile","boolean",$.tile);if(R.defined($.left))if(R.integer($.left))W.left=$.left;else throw R.invalidParameterError("left","integer",$.left);if(R.defined($.top))if(R.integer($.top))W.top=$.top;else throw R.invalidParameterError("top","integer",$.top);if(R.defined($.top)!==R.defined($.left))throw new Error("Expected both left and top to be set");else W.hasOffset=R.integer($.top)&&R.integer($.left);if(R.defined($.gravity))if(R.integer($.gravity)&&R.inRange($.gravity,0,8))W.gravity=$.gravity;else if(R.string($.gravity)&&R.integer(this.constructor.gravity[$.gravity]))W.gravity=this.constructor.gravity[$.gravity];else throw R.invalidParameterError("gravity","valid gravity",$.gravity);if(R.defined($.premultiplied))if(R.bool($.premultiplied))W.premultiplied=$.premultiplied;else throw R.invalidParameterError("premultiplied","boolean",$.premultiplied);return W}),this},R=d(),p2={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"};b0.exports=function(J){J.prototype.composite=O3,J.blend=p2}});var m0=L((a9,g0)=>{var h3=function(J,$){if(this.options.useExifOrientation||this.options.angle||this.options.rotationAngle)this.options.debuglog("ignoring previous rotate options");if(!I.defined(J))this.options.useExifOrientation=!0;else if(I.integer(J)&&!(J%90))this.options.angle=J;else if(I.number(J)){if(this.options.rotationAngle=J,I.object($)&&$.background){const q=b3($.background);this.options.rotationBackground=[q.red(),q.green(),q.blue(),Math.round(q.alpha()*255)]}}else throw I.invalidParameterError("angle","numeric",J);return this},g3=function(J){return this.options.flip=I.bool(J)?J:!0,this},m3=function(J){return this.options.flop=I.bool(J)?J:!0,this},u3=function(J,$){const q=[].concat(...J);if(q.length===4&&q.every(I.number))this.options.affineMatrix=q;else throw I.invalidParameterError("matrix","1x4 or 2x2 array",J);if(I.defined($))if(I.object($)){if(this._setBackgroundColourOption("affineBackground",$.background),I.defined($.idx))if(I.number($.idx))this.options.affineIdx=$.idx;else throw I.invalidParameterError("options.idx","number",$.idx);if(I.defined($.idy))if(I.number($.idy))this.options.affineIdy=$.idy;else throw I.invalidParameterError("options.idy","number",$.idy);if(I.defined($.odx))if(I.number($.odx))this.options.affineOdx=$.odx;else throw I.invalidParameterError("options.odx","number",$.odx);if(I.defined($.ody))if(I.number($.ody))this.options.affineOdy=$.ody;else throw I.invalidParameterError("options.ody","number",$.ody);if(I.defined($.interpolator))if(I.inArray($.interpolator,Object.values(this.constructor.interpolators)))this.options.affineInterpolator=$.interpolator;else throw I.invalidParameterError("options.interpolator","valid interpolator name",$.interpolator)}else throw I.invalidParameterError("options","object",$);return this},l3=function(J,$,q){if(!I.defined(J))this.options.sharpenSigma=-1;else if(I.bool(J))this.options.sharpenSigma=J?-1:0;else if(I.number(J)&&I.inRange(J,0.01,1e4)){if(this.options.sharpenSigma=J,I.defined($))if(I.number($)&&I.inRange($,0,1e4))this.options.sharpenM1=$;else throw I.invalidParameterError("flat","number between 0 and 10000",$);if(I.defined(q))if(I.number(q)&&I.inRange(q,0,1e4))this.options.sharpenM2=q;else throw I.invalidParameterError("jagged","number between 0 and 10000",q)}else if(I.plainObject(J)){if(I.number(J.sigma)&&I.inRange(J.sigma,0.000001,10))this.options.sharpenSigma=J.sigma;else throw I.invalidParameterError("options.sigma","number between 0.000001 and 10",J.sigma);if(I.defined(J.m1))if(I.number(J.m1)&&I.inRange(J.m1,0,1e6))this.options.sharpenM1=J.m1;else throw I.invalidParameterError("options.m1","number between 0 and 1000000",J.m1);if(I.defined(J.m2))if(I.number(J.m2)&&I.inRange(J.m2,0,1e6))this.options.sharpenM2=J.m2;else throw I.invalidParameterError("options.m2","number between 0 and 1000000",J.m2);if(I.defined(J.x1))if(I.number(J.x1)&&I.inRange(J.x1,0,1e6))this.options.sharpenX1=J.x1;else throw I.invalidParameterError("options.x1","number between 0 and 1000000",J.x1);if(I.defined(J.y2))if(I.number(J.y2)&&I.inRange(J.y2,0,1e6))this.options.sharpenY2=J.y2;else throw I.invalidParameterError("options.y2","number between 0 and 1000000",J.y2);if(I.defined(J.y3))if(I.number(J.y3)&&I.inRange(J.y3,0,1e6))this.options.sharpenY3=J.y3;else throw I.invalidParameterError("options.y3","number between 0 and 1000000",J.y3)}else throw I.invalidParameterError("sigma","number between 0.01 and 10000",J);return this},c3=function(J){if(!I.defined(J))this.options.medianSize=3;else if(I.integer(J)&&I.inRange(J,1,1000))this.options.medianSize=J;else throw I.invalidParameterError("size","integer between 1 and 1000",J);return this},a3=function(J){if(!I.defined(J))this.options.blurSigma=-1;else if(I.bool(J))this.options.blurSigma=J?-1:0;else if(I.number(J)&&I.inRange(J,0.3,1000))this.options.blurSigma=J;else throw I.invalidParameterError("sigma","number between 0.3 and 1000",J);return this},r3=function(J){if(this.options.flatten=I.bool(J)?J:!0,I.object(J))this._setBackgroundColourOption("flattenBackground",J.background);return this},e3=function(){return this.options.unflatten=!0,this},n3=function(J,$){if(!I.defined(J))this.options.gamma=2.2;else if(I.number(J)&&I.inRange(J,1,3))this.options.gamma=J;else throw I.invalidParameterError("gamma","number between 1.0 and 3.0",J);if(!I.defined($))this.options.gammaOut=this.options.gamma;else if(I.number($)&&I.inRange($,1,3))this.options.gammaOut=$;else throw I.invalidParameterError("gammaOut","number between 1.0 and 3.0",$);return this},p3=function(J){if(this.options.negate=I.bool(J)?J:!0,I.plainObject(J)&&"alpha"in J)if(!I.bool(J.alpha))throw I.invalidParameterError("alpha","should be boolean value",J.alpha);else this.options.negateAlpha=J.alpha;return this},s3=function(J){if(I.plainObject(J)){if(I.defined(J.lower))if(I.number(J.lower)&&I.inRange(J.lower,0,99))this.options.normaliseLower=J.lower;else throw I.invalidParameterError("lower","number between 0 and 99",J.lower);if(I.defined(J.upper))if(I.number(J.upper)&&I.inRange(J.upper,1,100))this.options.normaliseUpper=J.upper;else throw I.invalidParameterError("upper","number between 1 and 100",J.upper)}if(this.options.normaliseLower>=this.options.normaliseUpper)throw I.invalidParameterError("range","lower to be less than upper",`${this.options.normaliseLower} >= ${this.options.normaliseUpper}`);return this.options.normalise=!0,this},t3=function(J){return this.normalise(J)},i3=function(J){if(I.plainObject(J)){if(I.integer(J.width)&&J.width>0)this.options.claheWidth=J.width;else throw I.invalidParameterError("width","integer greater than zero",J.width);if(I.integer(J.height)&&J.height>0)this.options.claheHeight=J.height;else throw I.invalidParameterError("height","integer greater than zero",J.height);if(I.defined(J.maxSlope))if(I.integer(J.maxSlope)&&I.inRange(J.maxSlope,0,100))this.options.claheMaxSlope=J.maxSlope;else throw I.invalidParameterError("maxSlope","integer between 0 and 100",J.maxSlope)}else throw I.invalidParameterError("options","plain object",J);return this},o3=function(J){if(!I.object(J)||!Array.isArray(J.kernel)||!I.integer(J.width)||!I.integer(J.height)||!I.inRange(J.width,3,1001)||!I.inRange(J.height,3,1001)||J.height*J.width!==J.kernel.length)throw new Error("Invalid convolution kernel");if(!I.integer(J.scale))J.scale=J.kernel.reduce(function($,q){return $+q},0);if(J.scale<1)J.scale=1;if(!I.integer(J.offset))J.offset=0;return this.options.convKernel=J,this},J8=function(J,$){if(!I.defined(J))this.options.threshold=128;else if(I.bool(J))this.options.threshold=J?128:0;else if(I.integer(J)&&I.inRange(J,0,255))this.options.threshold=J;else throw I.invalidParameterError("threshold","integer between 0 and 255",J);if(!I.object($)||$.greyscale===!0||$.grayscale===!0)this.options.thresholdGrayscale=!0;else this.options.thresholdGrayscale=!1;return this},$8=function(J,$,q){if(this.options.boolean=this._createInputDescriptor(J,q),I.string($)&&I.inArray($,["and","or","eor"]))this.options.booleanOp=$;else throw I.invalidParameterError("operator","one of: and, or, eor",$);return this},q8=function(J,$){if(!I.defined(J)&&I.number($))J=1;else if(I.number(J)&&!I.defined($))$=0;if(!I.defined(J))this.options.linearA=[];else if(I.number(J))this.options.linearA=[J];else if(Array.isArray(J)&&J.length&&J.every(I.number))this.options.linearA=J;else throw I.invalidParameterError("a","number or array of numbers",J);if(!I.defined($))this.options.linearB=[];else if(I.number($))this.options.linearB=[$];else if(Array.isArray($)&&$.length&&$.every(I.number))this.options.linearB=$;else throw I.invalidParameterError("b","number or array of numbers",$);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},W8=function(J){if(!Array.isArray(J)||J.length!==3||J[0].length!==3||J[1].length!==3||J[2].length!==3)throw new Error("Invalid recombination matrix");return this.options.recombMatrix=[J[0][0],J[0][1],J[0][2],J[1][0],J[1][1],J[1][2],J[2][0],J[2][1],J[2][2]].map(Number),this},Z8=function(J){if(!I.plainObject(J))throw I.invalidParameterError("options","plain object",J);if("brightness"in J)if(I.number(J.brightness)&&J.brightness>=0)this.options.brightness=J.brightness;else throw I.invalidParameterError("brightness","number above zero",J.brightness);if("saturation"in J)if(I.number(J.saturation)&&J.saturation>=0)this.options.saturation=J.saturation;else throw I.invalidParameterError("saturation","number above zero",J.saturation);if("hue"in J)if(I.integer(J.hue))this.options.hue=J.hue%360;else throw I.invalidParameterError("hue","number",J.hue);if("lightness"in J)if(I.number(J.lightness))this.options.lightness=J.lightness;else throw I.invalidParameterError("lightness","number",J.lightness);return this},b3=T2(),I=d();g0.exports=function(J){Object.assign(J.prototype,{rotate:h3,flip:g3,flop:m3,affine:u3,sharpen:l3,median:c3,blur:a3,flatten:r3,unflatten:e3,gamma:n3,negate:p3,normalise:s3,normalize:t3,clahe:i3,convolve:o3,threshold:J8,boolean:$8,linear:q8,recomb:W8,modulate:Z8})}});var c0=L((r9,l0)=>{var U8=function(J){return this._setBackgroundColourOption("tint",J),this},B8=function(J){return this.options.greyscale=b.bool(J)?J:!0,this},Y8=function(J){return this.greyscale(J)},I8=function(J){if(!b.string(J))throw b.invalidParameterError("colourspace","string",J);return this.options.colourspacePipeline=J,this},K8=function(J){return this.pipelineColourspace(J)},F8=function(J){if(!b.string(J))throw b.invalidParameterError("colourspace","string",J);return this.options.colourspace=J,this},G8=function(J){return this.toColourspace(J)},H8=function(J,$){if(b.defined($))if(b.object($)||b.string($)){const q=Q8($);this.options[J]=[q.red(),q.green(),q.blue(),Math.round(q.alpha()*255)]}else throw b.invalidParameterError("background","object or string",$)},Q8=T2(),b=d(),u0={multiband:"multiband","b-w":"b-w",bw:"b-w",cmyk:"cmyk",srgb:"srgb"};l0.exports=function(J){Object.assign(J.prototype,{tint:U8,greyscale:B8,grayscale:Y8,pipelineColourspace:I8,pipelineColorspace:K8,toColourspace:F8,toColorspace:G8,_setBackgroundColourOption:H8}),J.colourspace=u0,J.colorspace=u0}});var r0=L((e9,a0)=>{var P8=function(){return this.options.removeAlpha=!0,this},X8=function(J){if(v.defined(J))if(v.number(J)&&v.inRange(J,0,1))this.options.ensureAlpha=J;else throw v.invalidParameterError("alpha","number between 0 and 1",J);else this.options.ensureAlpha=1;return this},V8=function(J){const $={red:0,green:1,blue:2,alpha:3};if(Object.keys($).includes(J))J=$[J];if(v.integer(J)&&v.inRange(J,0,4))this.options.extractChannel=J;else throw v.invalidParameterError("channel","integer or one of: red, green, blue, alpha",J);return this},A8=function(J,$){if(Array.isArray(J))J.forEach(function(q){this.options.joinChannelIn.push(this._createInputDescriptor(q,$))},this);else this.options.joinChannelIn.push(this._createInputDescriptor(J,$));return this},L8=function(J){if(v.string(J)&&v.inArray(J,["and","or","eor"]))this.options.bandBoolOp=J;else throw v.invalidParameterError("boolOp","one of: and, or, eor",J);return this},v=d(),N8={and:"and",or:"or",eor:"eor"};a0.exports=function(J){Object.assign(J.prototype,{removeAlpha:P8,ensureAlpha:X8,extractChannel:V8,joinChannel:A8,bandbool:L8}),J.bool=N8}});var i0=L((n9,t0)=>{var _8=function(J,$){let q;if(!Q.string(J))q=new Error("Missing output file path");else if(Q.string(this.options.input.file)&&s2.resolve(this.options.input.file)===s2.resolve(J))q=new Error("Cannot use same file for input and output");else if(R8.test(s2.extname(J))&&!this.constructor.format.jp2k.output.file)q=n0();if(q)if(Q.fn($))$(q);else return Promise.reject(q);else{this.options.fileOut=J;const W=Error();return this._pipeline($,W)}return this},y8=function(J,$){if(Q.object(J))this._setBooleanOption("resolveWithObject",J.resolveWithObject);else if(this.options.resolveWithObject)this.options.resolveWithObject=!1;this.options.fileOut="";const q=Error();return this._pipeline(Q.fn(J)?J:$,q)},j8=function(){return this.options.keepMetadata|=1,this},E8=function(J){if(Q.object(J))for(let[$,q]of Object.entries(J))if(Q.object(q))for(let[W,Z]of Object.entries(q))if(Q.string(Z))this.options.withExif[`exif-${$.toLowerCase()}-${W}`]=Z;else throw Q.invalidParameterError(`${$}.${W}`,"string",Z);else throw Q.invalidParameterError($,"object",q);else throw Q.invalidParameterError("exif","object",J);return this.options.withExifMerge=!1,this.keepExif()},T8=function(J){return this.withExif(J),this.options.withExifMerge=!0,this},w8=function(){return this.options.keepMetadata|=8,this},z8=function(J,$){if(Q.string(J))this.options.withIccProfile=J;else throw Q.invalidParameterError("icc","string",J);if(this.keepIccProfile(),Q.object($)){if(Q.defined($.attach))if(Q.bool($.attach)){if(!$.attach)this.options.keepMetadata&=~8}else throw Q.invalidParameterError("attach","boolean",$.attach)}return this},D8=function(){return this.options.keepMetadata=31,this},C8=function(J){if(this.keepMetadata(),this.withIccProfile("srgb"),Q.object(J)){if(Q.defined(J.orientation))if(Q.integer(J.orientation)&&Q.inRange(J.orientation,1,8))this.options.withMetadataOrientation=J.orientation;else throw Q.invalidParameterError("orientation","integer between 1 and 8",J.orientation);if(Q.defined(J.density))if(Q.number(J.density)&&J.density>0)this.options.withMetadataDensity=J.density;else throw Q.invalidParameterError("density","positive number",J.density);if(Q.defined(J.icc))this.withIccProfile(J.icc);if(Q.defined(J.exif))this.withExifMerge(J.exif)}return this},S8=function(J,$){const q=e0.get((Q.object(J)&&Q.string(J.id)?J.id:J).toLowerCase());if(!q)throw Q.invalidParameterError("format",`one of: ${[...e0.keys()].join(", ")}`,J);return this[q]($)},k8=function(J){if(Q.object(J)){if(Q.defined(J.quality))if(Q.integer(J.quality)&&Q.inRange(J.quality,1,100))this.options.jpegQuality=J.quality;else throw Q.invalidParameterError("quality","integer between 1 and 100",J.quality);if(Q.defined(J.progressive))this._setBooleanOption("jpegProgressive",J.progressive);if(Q.defined(J.chromaSubsampling))if(Q.string(J.chromaSubsampling)&&Q.inArray(J.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jpegChromaSubsampling=J.chromaSubsampling;else throw Q.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",J.chromaSubsampling);const $=Q.bool(J.optimizeCoding)?J.optimizeCoding:J.optimiseCoding;if(Q.defined($))this._setBooleanOption("jpegOptimiseCoding",$);if(Q.defined(J.mozjpeg))if(Q.bool(J.mozjpeg)){if(J.mozjpeg)this.options.jpegTrellisQuantisation=!0,this.options.jpegOvershootDeringing=!0,this.options.jpegOptimiseScans=!0,this.options.jpegProgressive=!0,this.options.jpegQuantisationTable=3}else throw Q.invalidParameterError("mozjpeg","boolean",J.mozjpeg);const q=Q.bool(J.trellisQuantization)?J.trellisQuantization:J.trellisQuantisation;if(Q.defined(q))this._setBooleanOption("jpegTrellisQuantisation",q);if(Q.defined(J.overshootDeringing))this._setBooleanOption("jpegOvershootDeringing",J.overshootDeringing);const W=Q.bool(J.optimizeScans)?J.optimizeScans:J.optimiseScans;if(Q.defined(W)){if(this._setBooleanOption("jpegOptimiseScans",W),W)this.options.jpegProgressive=!0}const Z=Q.number(J.quantizationTable)?J.quantizationTable:J.quantisationTable;if(Q.defined(Z))if(Q.integer(Z)&&Q.inRange(Z,0,8))this.options.jpegQuantisationTable=Z;else throw Q.invalidParameterError("quantisationTable","integer between 0 and 8",Z)}return this._updateFormatOut("jpeg",J)},M8=function(J){if(Q.object(J)){if(Q.defined(J.progressive))this._setBooleanOption("pngProgressive",J.progressive);if(Q.defined(J.compressionLevel))if(Q.integer(J.compressionLevel)&&Q.inRange(J.compressionLevel,0,9))this.options.pngCompressionLevel=J.compressionLevel;else throw Q.invalidParameterError("compressionLevel","integer between 0 and 9",J.compressionLevel);if(Q.defined(J.adaptiveFiltering))this._setBooleanOption("pngAdaptiveFiltering",J.adaptiveFiltering);const $=J.colours||J.colors;if(Q.defined($))if(Q.integer($)&&Q.inRange($,2,256))this.options.pngBitdepth=p0($);else throw Q.invalidParameterError("colours","integer between 2 and 256",$);if(Q.defined(J.palette))this._setBooleanOption("pngPalette",J.palette);else if([J.quality,J.effort,J.colours,J.colors,J.dither].some(Q.defined))this._setBooleanOption("pngPalette",!0);if(this.options.pngPalette){if(Q.defined(J.quality))if(Q.integer(J.quality)&&Q.inRange(J.quality,0,100))this.options.pngQuality=J.quality;else throw Q.invalidParameterError("quality","integer between 0 and 100",J.quality);if(Q.defined(J.effort))if(Q.integer(J.effort)&&Q.inRange(J.effort,1,10))this.options.pngEffort=J.effort;else throw Q.invalidParameterError("effort","integer between 1 and 10",J.effort);if(Q.defined(J.dither))if(Q.number(J.dither)&&Q.inRange(J.dither,0,1))this.options.pngDither=J.dither;else throw Q.invalidParameterError("dither","number between 0.0 and 1.0",J.dither)}}return this._updateFormatOut("png",J)},x8=function(J){if(Q.object(J)){if(Q.defined(J.quality))if(Q.integer(J.quality)&&Q.inRange(J.quality,1,100))this.options.webpQuality=J.quality;else throw Q.invalidParameterError("quality","integer between 1 and 100",J.quality);if(Q.defined(J.alphaQuality))if(Q.integer(J.alphaQuality)&&Q.inRange(J.alphaQuality,0,100))this.options.webpAlphaQuality=J.alphaQuality;else throw Q.invalidParameterError("alphaQuality","integer between 0 and 100",J.alphaQuality);if(Q.defined(J.lossless))this._setBooleanOption("webpLossless",J.lossless);if(Q.defined(J.nearLossless))this._setBooleanOption("webpNearLossless",J.nearLossless);if(Q.defined(J.smartSubsample))this._setBooleanOption("webpSmartSubsample",J.smartSubsample);if(Q.defined(J.preset))if(Q.string(J.preset)&&Q.inArray(J.preset,["default","photo","picture","drawing","icon","text"]))this.options.webpPreset=J.preset;else throw Q.invalidParameterError("preset","one of: default, photo, picture, drawing, icon, text",J.preset);if(Q.defined(J.effort))if(Q.integer(J.effort)&&Q.inRange(J.effort,0,6))this.options.webpEffort=J.effort;else throw Q.invalidParameterError("effort","integer between 0 and 6",J.effort);if(Q.defined(J.minSize))this._setBooleanOption("webpMinSize",J.minSize);if(Q.defined(J.mixed))this._setBooleanOption("webpMixed",J.mixed)}return s0(J,this.options),this._updateFormatOut("webp",J)},f8=function(J){if(Q.object(J)){if(Q.defined(J.reuse))this._setBooleanOption("gifReuse",J.reuse);if(Q.defined(J.progressive))this._setBooleanOption("gifProgressive",J.progressive);const $=J.colours||J.colors;if(Q.defined($))if(Q.integer($)&&Q.inRange($,2,256))this.options.gifBitdepth=p0($);else throw Q.invalidParameterError("colours","integer between 2 and 256",$);if(Q.defined(J.effort))if(Q.number(J.effort)&&Q.inRange(J.effort,1,10))this.options.gifEffort=J.effort;else throw Q.invalidParameterError("effort","integer between 1 and 10",J.effort);if(Q.defined(J.dither))if(Q.number(J.dither)&&Q.inRange(J.dither,0,1))this.options.gifDither=J.dither;else throw Q.invalidParameterError("dither","number between 0.0 and 1.0",J.dither);if(Q.defined(J.interFrameMaxError))if(Q.number(J.interFrameMaxError)&&Q.inRange(J.interFrameMaxError,0,32))this.options.gifInterFrameMaxError=J.interFrameMaxError;else throw Q.invalidParameterError("interFrameMaxError","number between 0.0 and 32.0",J.interFrameMaxError);if(Q.defined(J.interPaletteMaxError))if(Q.number(J.interPaletteMaxError)&&Q.inRange(J.interPaletteMaxError,0,256))this.options.gifInterPaletteMaxError=J.interPaletteMaxError;else throw Q.invalidParameterError("interPaletteMaxError","number between 0.0 and 256.0",J.interPaletteMaxError)}return s0(J,this.options),this._updateFormatOut("gif",J)},d8=function(J){if(!this.constructor.format.jp2k.output.buffer)throw n0();if(Q.object(J)){if(Q.defined(J.quality))if(Q.integer(J.quality)&&Q.inRange(J.quality,1,100))this.options.jp2Quality=J.quality;else throw Q.invalidParameterError("quality","integer between 1 and 100",J.quality);if(Q.defined(J.lossless))if(Q.bool(J.lossless))this.options.jp2Lossless=J.lossless;else throw Q.invalidParameterError("lossless","boolean",J.lossless);if(Q.defined(J.tileWidth))if(Q.integer(J.tileWidth)&&Q.inRange(J.tileWidth,1,32768))this.options.jp2TileWidth=J.tileWidth;else throw Q.invalidParameterError("tileWidth","integer between 1 and 32768",J.tileWidth);if(Q.defined(J.tileHeight))if(Q.integer(J.tileHeight)&&Q.inRange(J.tileHeight,1,32768))this.options.jp2TileHeight=J.tileHeight;else throw Q.invalidParameterError("tileHeight","integer between 1 and 32768",J.tileHeight);if(Q.defined(J.chromaSubsampling))if(Q.string(J.chromaSubsampling)&&Q.inArray(J.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jp2ChromaSubsampling=J.chromaSubsampling;else throw Q.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",J.chromaSubsampling)}return this._updateFormatOut("jp2",J)},s0=function(J,$){if(Q.object(J)&&Q.defined(J.loop))if(Q.integer(J.loop)&&Q.inRange(J.loop,0,65535))$.loop=J.loop;else throw Q.invalidParameterError("loop","integer between 0 and 65535",J.loop);if(Q.object(J)&&Q.defined(J.delay))if(Q.integer(J.delay)&&Q.inRange(J.delay,0,65535))$.delay=[J.delay];else if(Array.isArray(J.delay)&&J.delay.every(Q.integer)&&J.delay.every((q)=>Q.inRange(q,0,65535)))$.delay=J.delay;else throw Q.invalidParameterError("delay","integer or an array of integers between 0 and 65535",J.delay)},v8=function(J){if(Q.object(J)){if(Q.defined(J.quality))if(Q.integer(J.quality)&&Q.inRange(J.quality,1,100))this.options.tiffQuality=J.quality;else throw Q.invalidParameterError("quality","integer between 1 and 100",J.quality);if(Q.defined(J.bitdepth))if(Q.integer(J.bitdepth)&&Q.inArray(J.bitdepth,[1,2,4,8]))this.options.tiffBitdepth=J.bitdepth;else throw Q.invalidParameterError("bitdepth","1, 2, 4 or 8",J.bitdepth);if(Q.defined(J.tile))this._setBooleanOption("tiffTile",J.tile);if(Q.defined(J.tileWidth))if(Q.integer(J.tileWidth)&&J.tileWidth>0)this.options.tiffTileWidth=J.tileWidth;else throw Q.invalidParameterError("tileWidth","integer greater than zero",J.tileWidth);if(Q.defined(J.tileHeight))if(Q.integer(J.tileHeight)&&J.tileHeight>0)this.options.tiffTileHeight=J.tileHeight;else throw Q.invalidParameterError("tileHeight","integer greater than zero",J.tileHeight);if(Q.defined(J.miniswhite))this._setBooleanOption("tiffMiniswhite",J.miniswhite);if(Q.defined(J.pyramid))this._setBooleanOption("tiffPyramid",J.pyramid);if(Q.defined(J.xres))if(Q.number(J.xres)&&J.xres>0)this.options.tiffXres=J.xres;else throw Q.invalidParameterError("xres","number greater than zero",J.xres);if(Q.defined(J.yres))if(Q.number(J.yres)&&J.yres>0)this.options.tiffYres=J.yres;else throw Q.invalidParameterError("yres","number greater than zero",J.yres);if(Q.defined(J.compression))if(Q.string(J.compression)&&Q.inArray(J.compression,["none","jpeg","deflate","packbits","ccittfax4","lzw","webp","zstd","jp2k"]))this.options.tiffCompression=J.compression;else throw Q.invalidParameterError("compression","one of: none, jpeg, deflate, packbits, ccittfax4, lzw, webp, zstd, jp2k",J.compression);if(Q.defined(J.predictor))if(Q.string(J.predictor)&&Q.inArray(J.predictor,["none","horizontal","float"]))this.options.tiffPredictor=J.predictor;else throw Q.invalidParameterError("predictor","one of: none, horizontal, float",J.predictor);if(Q.defined(J.resolutionUnit))if(Q.string(J.resolutionUnit)&&Q.inArray(J.resolutionUnit,["inch","cm"]))this.options.tiffResolutionUnit=J.resolutionUnit;else throw Q.invalidParameterError("resolutionUnit","one of: inch, cm",J.resolutionUnit)}return this._updateFormatOut("tiff",J)},O8=function(J){return this.heif({...J,compression:"av1"})},b8=function(J){if(Q.object(J)){if(Q.string(J.compression)&&Q.inArray(J.compression,["av1","hevc"]))this.options.heifCompression=J.compression;else throw Q.invalidParameterError("compression","one of: av1, hevc",J.compression);if(Q.defined(J.quality))if(Q.integer(J.quality)&&Q.inRange(J.quality,1,100))this.options.heifQuality=J.quality;else throw Q.invalidParameterError("quality","integer between 1 and 100",J.quality);if(Q.defined(J.lossless))if(Q.bool(J.lossless))this.options.heifLossless=J.lossless;else throw Q.invalidParameterError("lossless","boolean",J.lossless);if(Q.defined(J.effort))if(Q.integer(J.effort)&&Q.inRange(J.effort,0,9))this.options.heifEffort=J.effort;else throw Q.invalidParameterError("effort","integer between 0 and 9",J.effort);if(Q.defined(J.chromaSubsampling))if(Q.string(J.chromaSubsampling)&&Q.inArray(J.chromaSubsampling,["4:2:0","4:4:4"]))this.options.heifChromaSubsampling=J.chromaSubsampling;else throw Q.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",J.chromaSubsampling);if(Q.defined(J.bitdepth))if(Q.integer(J.bitdepth)&&Q.inArray(J.bitdepth,[8,10,12])){if(J.bitdepth!==8&&this.constructor.versions.heif)throw Q.invalidParameterError("bitdepth when using prebuilt binaries",8,J.bitdepth);this.options.heifBitdepth=J.bitdepth}else throw Q.invalidParameterError("bitdepth","8, 10 or 12",J.bitdepth)}else throw Q.invalidParameterError("options","Object",J);return this._updateFormatOut("heif",J)},h8=function(J){if(Q.object(J)){if(Q.defined(J.quality))if(Q.integer(J.quality)&&Q.inRange(J.quality,1,100))this.options.jxlDistance=J.quality>=30?0.1+(100-J.quality)*0.09:0.017666666666666667*J.quality*J.quality-1.15*J.quality+25;else throw Q.invalidParameterError("quality","integer between 1 and 100",J.quality);else if(Q.defined(J.distance))if(Q.number(J.distance)&&Q.inRange(J.distance,0,15))this.options.jxlDistance=J.distance;else throw Q.invalidParameterError("distance","number between 0.0 and 15.0",J.distance);if(Q.defined(J.decodingTier))if(Q.integer(J.decodingTier)&&Q.inRange(J.decodingTier,0,4))this.options.jxlDecodingTier=J.decodingTier;else throw Q.invalidParameterError("decodingTier","integer between 0 and 4",J.decodingTier);if(Q.defined(J.lossless))if(Q.bool(J.lossless))this.options.jxlLossless=J.lossless;else throw Q.invalidParameterError("lossless","boolean",J.lossless);if(Q.defined(J.effort))if(Q.integer(J.effort)&&Q.inRange(J.effort,3,9))this.options.jxlEffort=J.effort;else throw Q.invalidParameterError("effort","integer between 3 and 9",J.effort)}return this._updateFormatOut("jxl",J)},g8=function(J){if(Q.object(J)){if(Q.defined(J.depth))if(Q.string(J.depth)&&Q.inArray(J.depth,["char","uchar","short","ushort","int","uint","float","complex","double","dpcomplex"]))this.options.rawDepth=J.depth;else throw Q.invalidParameterError("depth","one of: char, uchar, short, ushort, int, uint, float, complex, double, dpcomplex",J.depth)}return this._updateFormatOut("raw")},m8=function(J){if(Q.object(J)){if(Q.defined(J.size))if(Q.integer(J.size)&&Q.inRange(J.size,1,8192))this.options.tileSize=J.size;else throw Q.invalidParameterError("size","integer between 1 and 8192",J.size);if(Q.defined(J.overlap))if(Q.integer(J.overlap)&&Q.inRange(J.overlap,0,8192)){if(J.overlap>this.options.tileSize)throw Q.invalidParameterError("overlap",`<= size (${this.options.tileSize})`,J.overlap);this.options.tileOverlap=J.overlap}else throw Q.invalidParameterError("overlap","integer between 0 and 8192",J.overlap);if(Q.defined(J.container))if(Q.string(J.container)&&Q.inArray(J.container,["fs","zip"]))this.options.tileContainer=J.container;else throw Q.invalidParameterError("container","one of: fs, zip",J.container);if(Q.defined(J.layout))if(Q.string(J.layout)&&Q.inArray(J.layout,["dz","google","iiif","iiif3","zoomify"]))this.options.tileLayout=J.layout;else throw Q.invalidParameterError("layout","one of: dz, google, iiif, iiif3, zoomify",J.layout);if(Q.defined(J.angle))if(Q.integer(J.angle)&&!(J.angle%90))this.options.tileAngle=J.angle;else throw Q.invalidParameterError("angle","positive/negative multiple of 90",J.angle);if(this._setBackgroundColourOption("tileBackground",J.background),Q.defined(J.depth))if(Q.string(J.depth)&&Q.inArray(J.depth,["onepixel","onetile","one"]))this.options.tileDepth=J.depth;else throw Q.invalidParameterError("depth","one of: onepixel, onetile, one",J.depth);if(Q.defined(J.skipBlanks))if(Q.integer(J.skipBlanks)&&Q.inRange(J.skipBlanks,-1,65535))this.options.tileSkipBlanks=J.skipBlanks;else throw Q.invalidParameterError("skipBlanks","integer between -1 and 255/65535",J.skipBlanks);else if(Q.defined(J.layout)&&J.layout==="google")this.options.tileSkipBlanks=5;const $=Q.bool(J.center)?J.center:J.centre;if(Q.defined($))this._setBooleanOption("tileCentre",$);if(Q.defined(J.id))if(Q.string(J.id))this.options.tileId=J.id;else throw Q.invalidParameterError("id","string",J.id);if(Q.defined(J.basename))if(Q.string(J.basename))this.options.tileBasename=J.basename;else throw Q.invalidParameterError("basename","string",J.basename)}if(Q.inArray(this.options.formatOut,["jpeg","png","webp"]))this.options.tileFormat=this.options.formatOut;else if(this.options.formatOut!=="input")throw Q.invalidParameterError("format","one of: jpeg, png, webp",this.options.formatOut);return this._updateFormatOut("dz")},u8=function(J){if(!Q.plainObject(J))throw Q.invalidParameterError("options","object",J);if(Q.integer(J.seconds)&&Q.inRange(J.seconds,0,3600))this.options.timeoutSeconds=J.seconds;else throw Q.invalidParameterError("seconds","integer between 0 and 3600",J.seconds);return this},l8=function(J,$){if(!(Q.object($)&&$.force===!1))this.options.formatOut=J;return this},c8=function(J,$){if(Q.bool($))this.options[J]=$;else throw Q.invalidParameterError(J,"boolean",$)},a8=function(){if(!this.options.streamOut){this.options.streamOut=!0;const J=Error();this._pipeline(void 0,J)}},r8=function(J,$){if(typeof J==="function"){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),s.pipeline(this.options,(q,W,Z)=>{if(q)J(Q.nativeError(q,$));else J(null,W,Z)})});else s.pipeline(this.options,(q,W,Z)=>{if(q)J(Q.nativeError(q,$));else J(null,W,Z)});return this}else if(this.options.streamOut){if(this._isStreamInput()){if(this.once("finish",()=>{this._flattenBufferIn(),s.pipeline(this.options,(q,W,Z)=>{if(q)this.emit("error",Q.nativeError(q,$));else this.emit("info",Z),this.push(W);this.push(null),this.on("end",()=>this.emit("close"))})}),this.streamInFinished)this.emit("finish")}else s.pipeline(this.options,(q,W,Z)=>{if(q)this.emit("error",Q.nativeError(q,$));else this.emit("info",Z),this.push(W);this.push(null),this.on("end",()=>this.emit("close"))});return this}else if(this._isStreamInput())return new Promise((q,W)=>{this.once("finish",()=>{this._flattenBufferIn(),s.pipeline(this.options,(Z,U,B)=>{if(Z)W(Q.nativeError(Z,$));else if(this.options.resolveWithObject)q({data:U,info:B});else q(U)})})});else return new Promise((q,W)=>{s.pipeline(this.options,(Z,U,B)=>{if(Z)W(Q.nativeError(Z,$));else if(this.options.resolveWithObject)q({data:U,info:B});else q(U)})})},s2=import.meta.require("path"),Q=d(),s=q2(),e0=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"]]),R8=/\.(jp[2x]|j2[kc])$/i,n0=()=>new Error("JP2 output requires libvips with support for OpenJPEG"),p0=(J)=>1<<31-Math.clz32(Math.ceil(Math.log2(J)));t0.exports=function(J){Object.assign(J.prototype,{toFile:_8,toBuffer:y8,keepExif:j8,withExif:E8,withExifMerge:T8,keepIccProfile:w8,withIccProfile:z8,keepMetadata:D8,withMetadata:C8,toFormat:S8,jpeg:k8,jp2:d8,png:M8,webp:x8,tiff:v8,avif:O8,heif:b8,jxl:h8,gif:f8,raw:g8,tile:m8,timeout:u8,_updateFormatOut:l8,_setBooleanOption:c8,_read:a8,_pipeline:r8})}});var q5=L((p9,$5)=>{var J5=function(J){if(x.bool(J))if(J)return C.cache(50,20,100);else return C.cache(0,0,0);else if(x.object(J))return C.cache(J.memory,J.files,J.items);else return C.cache()},s8=function(J){return C.concurrency(x.integer(J)?J:null)},i8=function(){return C.counters()},o8=function(J){return C.simd(x.bool(J)?J:null)},J9=function(J){if(x.object(J))if(Array.isArray(J.operation)&&J.operation.every(x.string))C.block(J.operation,!0);else throw x.invalidParameterError("operation","Array<string>",J.operation);else throw x.invalidParameterError("options","object",J)},$9=function(J){if(x.object(J))if(Array.isArray(J.operation)&&J.operation.every(x.string))C.block(J.operation,!1);else throw x.invalidParameterError("operation","Array<string>",J.operation);else throw x.invalidParameterError("options","object",J)},e8=import.meta.require("events"),z2=import.meta.require("detect-libc"),x=d(),{runtimePlatformArch:n8}=h2(),C=q2(),o0=n8(),t2=C.libvipsVersion(),B2=C.format();B2.heif.output.alias=["avif","heic"];B2.jpeg.output.alias=["jpe","jpg"];B2.tiff.output.alias=["tif"];B2.jp2k.output.alias=["j2c","j2k","jp2","jpx"];var p8={nearest:"nearest",bilinear:"bilinear",bicubic:"bicubic",locallyBoundedBicubic:"lbb",nohalo:"nohalo",vertexSplitQuadraticBasisSpline:"vsqbs"},U2={vips:t2.semver};if(!t2.isGlobal)if(!t2.isWasm)try{U2=import.meta.require(`@img/sharp-${o0}/versions`)}catch(J){try{U2=import.meta.require(`@img/sharp-libvips-${o0}/versions`)}catch($){}}else try{U2=(()=>{throw new Error(`Cannot require module "@img/sharp-wasm32/versions"`);})()}catch(J){}U2.sharp=v2().version;J5(!0);if(z2.familySync()===z2.GLIBC&&!C._isUsingJemalloc())C.concurrency(1);else if(z2.familySync()===z2.MUSL&&C.concurrency()===1024)C.concurrency(import.meta.require("os").availableParallelism());var t8=new e8.EventEmitter;$5.exports=function(J){J.cache=J5,J.concurrency=s8,J.counters=i8,J.simd=o8,J.format=B2,J.interpolators=p8,J.versions=U2,J.queue=t8,J.block=J9,J.unblock=$9}});var Z5=L((s9,W5)=>{var h=K0();k0()(h);O0()(h);h0()(h);m0()(h);c0()(h);r0()(h);i0()(h);q5()(h);W5.exports=h});import U5 from"path";function K2(J){return J.map(($,q)=>{if($.isDev)return J1("style",{type:"text/css","data-vite-dev-id":$.id,children:$.content},$.id,!1,void 0,this);else return J1("style",{type:"text/css",children:$.content},q,!1,void 0,this)})}import{jsxDEV as J1} from"react/jsx-dev-runtime";var Q5=q9(Z5(),1);async function D2(J){const $=new URL(J.url),q=$.searchParams.get("url"),W=Number($.searchParams.get("w")),Z=Number($.searchParams.get("h")),U=$.searchParams.get("fit")??"cover",B=Number($.searchParams.get("q"));if(!q)return new Response(JSON.stringify({error:"url query parameter is required"}),{headers:{"Content-Type":"application/json"},status:404});const F=`${q.startsWith("http")?"":`http://localhost:${process.env.PORT||5173}`}${q}`,G=await fetch(F);if(!G.ok)return new Response(JSON.stringify({error:"Image not found",info:F}),{headers:{"Content-Type":"application/json"},status:404});const P=Buffer.from(await G.arrayBuffer()),_=await Q5.default(P).resize(W>0?W:void 0,Z>0?Z:void 0,{fit:U}).webp({quality:B>0?B:80,force:!0}).toBuffer();return G.headers.delete("Content-Type"),G.headers.delete("Content-Length"),new Response(_,{headers:{"Content-Type":"image/webp","Content-Length":`${_.byteLength}`,...G.headers.toJSON()}})}function i2(J){return`
2
+ import{v as I5,w as K5} from"../chunk-d9a84b9122601b72.js";import{x as W9,y as L} from"../chunk-a5c18c07abe8fd9c.js";var d=L((F9,W1)=>{var q1=function(J){return typeof J!=="undefined"&&J!==null},P5=function(J){return typeof J==="object"},X5=function(J){return Object.prototype.toString.call(J)==="[object Object]"},A5=function(J){return typeof J==="function"},V5=function(J){return typeof J==="boolean"},L5=function(J){return J instanceof Buffer},R5=function(J){if(q1(J))switch(J.constructor){case Uint8Array:case Uint8ClampedArray:case Int8Array:case Uint16Array:case Int16Array:case Uint32Array:case Int32Array:case Float32Array:case Float64Array:return!0}return!1},_5=function(J){return J instanceof ArrayBuffer},y5=function(J){return typeof J==="string"&&J.length>0},j5=function(J){return typeof J==="number"&&!Number.isNaN(J)},E5=function(J){return Number.isInteger(J)},T5=function(J,$,q){return J>=$&&J<=q},w5=function(J,$){return $.includes(J)},z5=function(J,$,q){return new Error(`Expected ${$} for ${J} but received ${q} of type ${typeof q}`)},D5=function(J,$){return $.message=J.message,$};W1.exports={defined:q1,object:P5,plainObject:X5,fn:A5,bool:V5,buffer:L5,typedArray:R5,arrayBuffer:_5,string:y5,number:j5,integer:E5,inRange:T5,inArray:w5,invalidParameterError:z5,nativeError:D5}});var i=L((G9,Z1)=>{var C5=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...J)=>console.error("SEMVER",...J):()=>{};Z1.exports=C5});var G2=L((H9,Q1)=>{var S5=Number.MAX_SAFE_INTEGER||9007199254740991,k5=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Q1.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:S5,RELEASE_TYPES:k5,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var o=L((O,U1)=>{var{MAX_SAFE_COMPONENT_LENGTH:S2,MAX_SAFE_BUILD_LENGTH:M5,MAX_LENGTH:x5}=G2(),f5=i();O=U1.exports={};var d5=O.re=[],v5=O.safeRe=[],H=O.src=[],N=O.t={},O5=0,k2="[a-zA-Z0-9-]",b5=[["\\s",1],["\\d",x5],[k2,M5]],h5=(J)=>{for(let[$,q]of b5)J=J.split(`${$}*`).join(`${$}{0,${q}}`).split(`${$}+`).join(`${$}{1,${q}}`);return J},V=(J,$,q)=>{const W=h5($),Z=O5++;f5(J,Z,$),N[J]=Z,H[Z]=$,d5[Z]=new RegExp($,q?"g":void 0),v5[Z]=new RegExp(W,q?"g":void 0)};V("NUMERICIDENTIFIER","0|[1-9]\\d*");V("NUMERICIDENTIFIERLOOSE","\\d+");V("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${k2}*`);V("MAINVERSION",`(${H[N.NUMERICIDENTIFIER]})\\.`+`(${H[N.NUMERICIDENTIFIER]})\\.`+`(${H[N.NUMERICIDENTIFIER]})`);V("MAINVERSIONLOOSE",`(${H[N.NUMERICIDENTIFIERLOOSE]})\\.`+`(${H[N.NUMERICIDENTIFIERLOOSE]})\\.`+`(${H[N.NUMERICIDENTIFIERLOOSE]})`);V("PRERELEASEIDENTIFIER",`(?:${H[N.NUMERICIDENTIFIER]}|${H[N.NONNUMERICIDENTIFIER]})`);V("PRERELEASEIDENTIFIERLOOSE",`(?:${H[N.NUMERICIDENTIFIERLOOSE]}|${H[N.NONNUMERICIDENTIFIER]})`);V("PRERELEASE",`(?:-(${H[N.PRERELEASEIDENTIFIER]}(?:\\.${H[N.PRERELEASEIDENTIFIER]})*))`);V("PRERELEASELOOSE",`(?:-?(${H[N.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${H[N.PRERELEASEIDENTIFIERLOOSE]})*))`);V("BUILDIDENTIFIER",`${k2}+`);V("BUILD",`(?:\\+(${H[N.BUILDIDENTIFIER]}(?:\\.${H[N.BUILDIDENTIFIER]})*))`);V("FULLPLAIN",`v?${H[N.MAINVERSION]}${H[N.PRERELEASE]}?${H[N.BUILD]}?`);V("FULL",`^${H[N.FULLPLAIN]}\$`);V("LOOSEPLAIN",`[v=\\s]*${H[N.MAINVERSIONLOOSE]}${H[N.PRERELEASELOOSE]}?${H[N.BUILD]}?`);V("LOOSE",`^${H[N.LOOSEPLAIN]}\$`);V("GTLT","((?:<|>)?=?)");V("XRANGEIDENTIFIERLOOSE",`${H[N.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);V("XRANGEIDENTIFIER",`${H[N.NUMERICIDENTIFIER]}|x|X|\\*`);V("XRANGEPLAIN",`[v=\\s]*(${H[N.XRANGEIDENTIFIER]})`+`(?:\\.(${H[N.XRANGEIDENTIFIER]})`+`(?:\\.(${H[N.XRANGEIDENTIFIER]})`+`(?:${H[N.PRERELEASE]})?${H[N.BUILD]}?`+")?)?");V("XRANGEPLAINLOOSE",`[v=\\s]*(${H[N.XRANGEIDENTIFIERLOOSE]})`+`(?:\\.(${H[N.XRANGEIDENTIFIERLOOSE]})`+`(?:\\.(${H[N.XRANGEIDENTIFIERLOOSE]})`+`(?:${H[N.PRERELEASELOOSE]})?${H[N.BUILD]}?`+")?)?");V("XRANGE",`^${H[N.GTLT]}\\s*${H[N.XRANGEPLAIN]}\$`);V("XRANGELOOSE",`^${H[N.GTLT]}\\s*${H[N.XRANGEPLAINLOOSE]}\$`);V("COERCEPLAIN",`(^|[^\\d])(\\d{1,${S2}})`+`(?:\\.(\\d{1,${S2}}))?`+`(?:\\.(\\d{1,${S2}}))?`);V("COERCE",`${H[N.COERCEPLAIN]}(?:\$|[^\\d])`);V("COERCEFULL",H[N.COERCEPLAIN]+`(?:${H[N.PRERELEASE]})?`+`(?:${H[N.BUILD]})?`+"(?:$|[^\\d])");V("COERCERTL",H[N.COERCE],!0);V("COERCERTLFULL",H[N.COERCEFULL],!0);V("LONETILDE","(?:~>?)");V("TILDETRIM",`(\\s*)${H[N.LONETILDE]}\\s+`,!0);O.tildeTrimReplace="$1~";V("TILDE",`^${H[N.LONETILDE]}${H[N.XRANGEPLAIN]}\$`);V("TILDELOOSE",`^${H[N.LONETILDE]}${H[N.XRANGEPLAINLOOSE]}\$`);V("LONECARET","(?:\\^)");V("CARETTRIM",`(\\s*)${H[N.LONECARET]}\\s+`,!0);O.caretTrimReplace="$1^";V("CARET",`^${H[N.LONECARET]}${H[N.XRANGEPLAIN]}\$`);V("CARETLOOSE",`^${H[N.LONECARET]}${H[N.XRANGEPLAINLOOSE]}\$`);V("COMPARATORLOOSE",`^${H[N.GTLT]}\\s*(${H[N.LOOSEPLAIN]})\$|^\$`);V("COMPARATOR",`^${H[N.GTLT]}\\s*(${H[N.FULLPLAIN]})\$|^\$`);V("COMPARATORTRIM",`(\\s*)${H[N.GTLT]}\\s*(${H[N.LOOSEPLAIN]}|${H[N.XRANGEPLAIN]})`,!0);O.comparatorTrimReplace="$1$2$3";V("HYPHENRANGE",`^\\s*(${H[N.XRANGEPLAIN]})`+"\\s+-\\s+"+`(${H[N.XRANGEPLAIN]})`+"\\s*$");V("HYPHENRANGELOOSE",`^\\s*(${H[N.XRANGEPLAINLOOSE]})`+"\\s+-\\s+"+`(${H[N.XRANGEPLAINLOOSE]})`+"\\s*$");V("STAR","(<|>)?=?\\s*\\*");V("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");V("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var H2=L((N9,B1)=>{var g5=Object.freeze({loose:!0}),m5=Object.freeze({}),u5=(J)=>{if(!J)return m5;if(typeof J!=="object")return g5;return J};B1.exports=u5});var F1=L((P9,K1)=>{var Y1=/^[0-9]+$/,I1=(J,$)=>{const q=Y1.test(J),W=Y1.test($);if(q&&W)J=+J,$=+$;return J===$?0:q&&!W?-1:W&&!q?1:J<$?-1:1},l5=(J,$)=>I1($,J);K1.exports={compareIdentifiers:I1,rcompareIdentifiers:l5}});var r=L((X9,P1)=>{var N2=i(),{MAX_LENGTH:G1,MAX_SAFE_INTEGER:P2}=G2(),{safeRe:H1,t:N1}=o(),c5=H2(),{compareIdentifiers:a}=F1();class f{constructor(J,$){if($=c5($),J instanceof f)if(J.loose===!!$.loose&&J.includePrerelease===!!$.includePrerelease)return J;else J=J.version;else if(typeof J!=="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof J}".`);if(J.length>G1)throw new TypeError(`version is longer than ${G1} characters`);N2("SemVer",J,$),this.options=$,this.loose=!!$.loose,this.includePrerelease=!!$.includePrerelease;const q=J.trim().match($.loose?H1[N1.LOOSE]:H1[N1.FULL]);if(!q)throw new TypeError(`Invalid Version: ${J}`);if(this.raw=J,this.major=+q[1],this.minor=+q[2],this.patch=+q[3],this.major>P2||this.major<0)throw new TypeError("Invalid major version");if(this.minor>P2||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>P2||this.patch<0)throw new TypeError("Invalid patch version");if(!q[4])this.prerelease=[];else this.prerelease=q[4].split(".").map((W)=>{if(/^[0-9]+$/.test(W)){const Z=+W;if(Z>=0&&Z<P2)return Z}return W});this.build=q[5]?q[5].split("."):[],this.format()}format(){if(this.version=`${this.major}.${this.minor}.${this.patch}`,this.prerelease.length)this.version+=`-${this.prerelease.join(".")}`;return this.version}toString(){return this.version}compare(J){if(N2("SemVer.compare",this.version,this.options,J),!(J instanceof f)){if(typeof J==="string"&&J===this.version)return 0;J=new f(J,this.options)}if(J.version===this.version)return 0;return this.compareMain(J)||this.comparePre(J)}compareMain(J){if(!(J instanceof f))J=new f(J,this.options);return a(this.major,J.major)||a(this.minor,J.minor)||a(this.patch,J.patch)}comparePre(J){if(!(J instanceof f))J=new f(J,this.options);if(this.prerelease.length&&!J.prerelease.length)return-1;else if(!this.prerelease.length&&J.prerelease.length)return 1;else if(!this.prerelease.length&&!J.prerelease.length)return 0;let $=0;do{const q=this.prerelease[$],W=J.prerelease[$];if(N2("prerelease compare",$,q,W),q===void 0&&W===void 0)return 0;else if(W===void 0)return 1;else if(q===void 0)return-1;else if(q===W)continue;else return a(q,W)}while(++$)}compareBuild(J){if(!(J instanceof f))J=new f(J,this.options);let $=0;do{const q=this.build[$],W=J.build[$];if(N2("build compare",$,q,W),q===void 0&&W===void 0)return 0;else if(W===void 0)return 1;else if(q===void 0)return-1;else if(q===W)continue;else return a(q,W)}while(++$)}inc(J,$,q){switch(J){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",$,q);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",$,q);break;case"prepatch":this.prerelease.length=0,this.inc("patch",$,q),this.inc("pre",$,q);break;case"prerelease":if(this.prerelease.length===0)this.inc("patch",$,q);this.inc("pre",$,q);break;case"major":if(this.minor!==0||this.patch!==0||this.prerelease.length===0)this.major++;this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":if(this.patch!==0||this.prerelease.length===0)this.minor++;this.patch=0,this.prerelease=[];break;case"patch":if(this.prerelease.length===0)this.patch++;this.prerelease=[];break;case"pre":{const W=Number(q)?1:0;if(!$&&q===!1)throw new Error("invalid increment argument: identifier is empty");if(this.prerelease.length===0)this.prerelease=[W];else{let Z=this.prerelease.length;while(--Z>=0)if(typeof this.prerelease[Z]==="number")this.prerelease[Z]++,Z=-2;if(Z===-1){if($===this.prerelease.join(".")&&q===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(W)}}if($){let Z=[$,W];if(q===!1)Z=[$];if(a(this.prerelease[0],$)===0){if(isNaN(this.prerelease[1]))this.prerelease=Z}else this.prerelease=Z}break}default:throw new Error(`invalid increment argument: ${J}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}P1.exports=f});var V1=L((A9,A1)=>{var X1=r(),a5=(J,$,q=!1)=>{if(J instanceof X1)return J;try{return new X1(J,$)}catch(W){if(!q)return null;throw W}};A1.exports=a5});var R1=L((V9,L1)=>{var r5=r(),e5=V1(),{safeRe:X2,t:A2}=o(),n5=(J,$)=>{if(J instanceof r5)return J;if(typeof J==="number")J=String(J);if(typeof J!=="string")return null;$=$||{};let q=null;if(!$.rtl)q=J.match($.includePrerelease?X2[A2.COERCEFULL]:X2[A2.COERCE]);else{const F=$.includePrerelease?X2[A2.COERCERTLFULL]:X2[A2.COERCERTL];let G;while((G=F.exec(J))&&(!q||q.index+q[0].length!==J.length)){if(!q||G.index+G[0].length!==q.index+q[0].length)q=G;F.lastIndex=G.index+G[1].length+G[2].length}F.lastIndex=-1}if(q===null)return null;const W=q[2],Z=q[3]||"0",U=q[4]||"0",B=$.includePrerelease&&q[5]?`-${q[5]}`:"",Y=$.includePrerelease&&q[6]?`+${q[6]}`:"";return e5(`${W}.${Z}.${U}${B}${Y}`,$)};L1.exports=n5});var u=L((L9,y1)=>{var _1=r(),p5=(J,$,q)=>new _1(J,q).compare(new _1($,q));y1.exports=p5});var M2=L((R9,j1)=>{var s5=u(),t5=(J,$,q)=>s5(J,$,q)>=0;j1.exports=t5});var w1=L((_9,T1)=>{class E1{constructor(){this.max=1000,this.map=new Map}get(J){const $=this.map.get(J);if($===void 0)return;else return this.map.delete(J),this.map.set(J,$),$}delete(J){return this.map.delete(J)}set(J,$){if(!this.delete(J)&&$!==void 0){if(this.map.size>=this.max){const W=this.map.keys().next().value;this.delete(W)}this.map.set(J,$)}return this}}T1.exports=E1});var D1=L((y9,z1)=>{var i5=u(),o5=(J,$,q)=>i5(J,$,q)===0;z1.exports=o5});var S1=L((j9,C1)=>{var J4=u(),$4=(J,$,q)=>J4(J,$,q)!==0;C1.exports=$4});var M1=L((E9,k1)=>{var q4=u(),W4=(J,$,q)=>q4(J,$,q)>0;k1.exports=W4});var f1=L((T9,x1)=>{var Z4=u(),Q4=(J,$,q)=>Z4(J,$,q)<0;x1.exports=Q4});var v1=L((w9,d1)=>{var U4=u(),B4=(J,$,q)=>U4(J,$,q)<=0;d1.exports=B4});var b1=L((z9,O1)=>{var Y4=D1(),I4=S1(),K4=M1(),F4=M2(),G4=f1(),H4=v1(),N4=(J,$,q,W)=>{switch($){case"===":if(typeof J==="object")J=J.version;if(typeof q==="object")q=q.version;return J===q;case"!==":if(typeof J==="object")J=J.version;if(typeof q==="object")q=q.version;return J!==q;case"":case"=":case"==":return Y4(J,q,W);case"!=":return I4(J,q,W);case">":return K4(J,q,W);case">=":return F4(J,q,W);case"<":return G4(J,q,W);case"<=":return H4(J,q,W);default:throw new TypeError(`Invalid operator: ${$}`)}};O1.exports=N4});var a1=L((D9,c1)=>{var J2=Symbol("SemVer ANY");class V2{static get ANY(){return J2}constructor(J,$){if($=h1($),J instanceof V2)if(J.loose===!!$.loose)return J;else J=J.value;if(J=J.trim().split(/\s+/).join(" "),f2("comparator",J,$),this.options=$,this.loose=!!$.loose,this.parse(J),this.semver===J2)this.value="";else this.value=this.operator+this.semver.version;f2("comp",this)}parse(J){const $=this.options.loose?g1[m1.COMPARATORLOOSE]:g1[m1.COMPARATOR],q=J.match($);if(!q)throw new TypeError(`Invalid comparator: ${J}`);if(this.operator=q[1]!==void 0?q[1]:"",this.operator==="=")this.operator="";if(!q[2])this.semver=J2;else this.semver=new u1(q[2],this.options.loose)}toString(){return this.value}test(J){if(f2("Comparator.test",J,this.options.loose),this.semver===J2||J===J2)return!0;if(typeof J==="string")try{J=new u1(J,this.options)}catch($){return!1}return x2(J,this.operator,this.semver,this.options)}intersects(J,$){if(!(J instanceof V2))throw new TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new l1(J.value,$).test(this.value)}else if(J.operator===""){if(J.value==="")return!0;return new l1(this.value,$).test(J.semver)}if($=h1($),$.includePrerelease&&(this.value==="<0.0.0-0"||J.value==="<0.0.0-0"))return!1;if(!$.includePrerelease&&(this.value.startsWith("<0.0.0")||J.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&J.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&J.operator.startsWith("<"))return!0;if(this.semver.version===J.semver.version&&this.operator.includes("=")&&J.operator.includes("="))return!0;if(x2(this.semver,"<",J.semver,$)&&this.operator.startsWith(">")&&J.operator.startsWith("<"))return!0;if(x2(this.semver,">",J.semver,$)&&this.operator.startsWith("<")&&J.operator.startsWith(">"))return!0;return!1}}c1.exports=V2;var h1=H2(),{safeRe:g1,t:m1}=o(),x2=b1(),f2=i(),u1=r(),l1=d2()});var d2=L((C9,p1)=>{class $2{constructor(J,$){if($=X4($),J instanceof $2)if(J.loose===!!$.loose&&J.includePrerelease===!!$.includePrerelease)return J;else return new $2(J.raw,$);if(J instanceof v2)return this.raw=J.value,this.set=[[J]],this.format(),this;if(this.options=$,this.loose=!!$.loose,this.includePrerelease=!!$.includePrerelease,this.raw=J.trim().split(/\s+/).join(" "),this.set=this.raw.split("||").map((q)=>this.parseRange(q.trim())).filter((q)=>q.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){const q=this.set[0];if(this.set=this.set.filter((W)=>!e1(W[0])),this.set.length===0)this.set=[q];else if(this.set.length>1){for(let W of this.set)if(W.length===1&&j4(W[0])){this.set=[W];break}}}this.format()}format(){return this.range=this.set.map((J)=>J.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(J){const q=((this.options.includePrerelease&&_4)|(this.options.loose&&y4))+":"+J,W=r1.get(q);if(W)return W;const Z=this.options.loose,U=Z?S[z.HYPHENRANGELOOSE]:S[z.HYPHENRANGE];J=J.replace(U,x4(this.options.includePrerelease)),y("hyphen replace",J),J=J.replace(S[z.COMPARATORTRIM],V4),y("comparator trim",J),J=J.replace(S[z.TILDETRIM],L4),y("tilde trim",J),J=J.replace(S[z.CARETTRIM],R4),y("caret trim",J);let B=J.split(" ").map((P)=>E4(P,this.options)).join(" ").split(/\s+/).map((P)=>M4(P,this.options));if(Z)B=B.filter((P)=>{return y("loose invalid filter",P,this.options),!!P.match(S[z.COMPARATORLOOSE])});y("range list",B);const Y=new Map,F=B.map((P)=>new v2(P,this.options));for(let P of F){if(e1(P))return[P];Y.set(P.value,P)}if(Y.size>1&&Y.has(""))Y.delete("");const G=[...Y.values()];return r1.set(q,G),G}intersects(J,$){if(!(J instanceof $2))throw new TypeError("a Range is required");return this.set.some((q)=>{return n1(q,$)&&J.set.some((W)=>{return n1(W,$)&&q.every((Z)=>{return W.every((U)=>{return Z.intersects(U,$)})})})})}test(J){if(!J)return!1;if(typeof J==="string")try{J=new A4(J,this.options)}catch($){return!1}for(let $=0;$<this.set.length;$++)if(f4(this.set[$],J,this.options))return!0;return!1}}p1.exports=$2;var P4=w1(),r1=new P4,X4=H2(),v2=a1(),y=i(),A4=r(),{safeRe:S,t:z,comparatorTrimReplace:V4,tildeTrimReplace:L4,caretTrimReplace:R4}=o(),{FLAG_INCLUDE_PRERELEASE:_4,FLAG_LOOSE:y4}=G2(),e1=(J)=>J.value==="<0.0.0-0",j4=(J)=>J.value==="",n1=(J,$)=>{let q=!0;const W=J.slice();let Z=W.pop();while(q&&W.length)q=W.every((U)=>{return Z.intersects(U,$)}),Z=W.pop();return q},E4=(J,$)=>{return y("comp",J,$),J=z4(J,$),y("caret",J),J=T4(J,$),y("tildes",J),J=C4(J,$),y("xrange",J),J=k4(J,$),y("stars",J),J},D=(J)=>!J||J.toLowerCase()==="x"||J==="*",T4=(J,$)=>{return J.trim().split(/\s+/).map((q)=>w4(q,$)).join(" ")},w4=(J,$)=>{const q=$.loose?S[z.TILDELOOSE]:S[z.TILDE];return J.replace(q,(W,Z,U,B,Y)=>{y("tilde",J,W,Z,U,B,Y);let F;if(D(Z))F="";else if(D(U))F=`>=${Z}.0.0 <${+Z+1}.0.0-0`;else if(D(B))F=`>=${Z}.${U}.0 <${Z}.${+U+1}.0-0`;else if(Y)y("replaceTilde pr",Y),F=`>=${Z}.${U}.${B}-${Y} <${Z}.${+U+1}.0-0`;else F=`>=${Z}.${U}.${B} <${Z}.${+U+1}.0-0`;return y("tilde return",F),F})},z4=(J,$)=>{return J.trim().split(/\s+/).map((q)=>D4(q,$)).join(" ")},D4=(J,$)=>{y("caret",J,$);const q=$.loose?S[z.CARETLOOSE]:S[z.CARET],W=$.includePrerelease?"-0":"";return J.replace(q,(Z,U,B,Y,F)=>{y("caret",J,Z,U,B,Y,F);let G;if(D(U))G="";else if(D(B))G=`>=${U}.0.0${W} <${+U+1}.0.0-0`;else if(D(Y))if(U==="0")G=`>=${U}.${B}.0${W} <${U}.${+B+1}.0-0`;else G=`>=${U}.${B}.0${W} <${+U+1}.0.0-0`;else if(F)if(y("replaceCaret pr",F),U==="0")if(B==="0")G=`>=${U}.${B}.${Y}-${F} <${U}.${B}.${+Y+1}-0`;else G=`>=${U}.${B}.${Y}-${F} <${U}.${+B+1}.0-0`;else G=`>=${U}.${B}.${Y}-${F} <${+U+1}.0.0-0`;else if(y("no pr"),U==="0")if(B==="0")G=`>=${U}.${B}.${Y}${W} <${U}.${B}.${+Y+1}-0`;else G=`>=${U}.${B}.${Y}${W} <${U}.${+B+1}.0-0`;else G=`>=${U}.${B}.${Y} <${+U+1}.0.0-0`;return y("caret return",G),G})},C4=(J,$)=>{return y("replaceXRanges",J,$),J.split(/\s+/).map((q)=>S4(q,$)).join(" ")},S4=(J,$)=>{J=J.trim();const q=$.loose?S[z.XRANGELOOSE]:S[z.XRANGE];return J.replace(q,(W,Z,U,B,Y,F)=>{y("xRange",J,W,Z,U,B,Y,F);const G=D(U),P=G||D(B),R=P||D(Y),w=R;if(Z==="="&&w)Z="";if(F=$.includePrerelease?"-0":"",G)if(Z===">"||Z==="<")W="<0.0.0-0";else W="*";else if(Z&&w){if(P)B=0;if(Y=0,Z===">")if(Z=">=",P)U=+U+1,B=0,Y=0;else B=+B+1,Y=0;else if(Z==="<=")if(Z="<",P)U=+U+1;else B=+B+1;if(Z==="<")F="-0";W=`${Z+U}.${B}.${Y}${F}`}else if(P)W=`>=${U}.0.0${F} <${+U+1}.0.0-0`;else if(R)W=`>=${U}.${B}.0${F} <${U}.${+B+1}.0-0`;return y("xRange return",W),W})},k4=(J,$)=>{return y("replaceStars",J,$),J.trim().replace(S[z.STAR],"")},M4=(J,$)=>{return y("replaceGTE0",J,$),J.trim().replace(S[$.includePrerelease?z.GTE0PRE:z.GTE0],"")},x4=(J)=>($,q,W,Z,U,B,Y,F,G,P,R,w)=>{if(D(W))q="";else if(D(Z))q=`>=${W}.0.0${J?"-0":""}`;else if(D(U))q=`>=${W}.${Z}.0${J?"-0":""}`;else if(B)q=`>=${q}`;else q=`>=${q}${J?"-0":""}`;if(D(G))F="";else if(D(P))F=`<${+G+1}.0.0-0`;else if(D(R))F=`<${G}.${+P+1}.0-0`;else if(w)F=`<=${G}.${P}.${R}-${w}`;else if(J)F=`<${G}.${P}.${+R+1}-0`;else F=`<=${F}`;return`${q} ${F}`.trim()},f4=(J,$,q)=>{for(let W=0;W<J.length;W++)if(!J[W].test($))return!1;if($.prerelease.length&&!q.includePrerelease){for(let W=0;W<J.length;W++){if(y(J[W].semver),J[W].semver===v2.ANY)continue;if(J[W].semver.prerelease.length>0){const Z=J[W].semver;if(Z.major===$.major&&Z.minor===$.minor&&Z.patch===$.patch)return!0}}return!1}return!0}});var t1=L((S9,s1)=>{var d4=d2(),v4=(J,$,q)=>{try{$=new d4($,q)}catch(W){return!1}return $.test(J)};s1.exports=v4});var O2=L((k9,O4)=>{O4.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.4",author:"Lovell Fuller <npm@lovell.info>",homepage:"https://sharp.pixelplumbing.com",contributors:["Pierre Inglebert <pierre.inglebert@gmail.com>","Jonathan Ong <jonathanrichardong@gmail.com>","Chanon Sajjamanochai <chanon.s@gmail.com>","Juliano Julio <julianojulio@gmail.com>","Daniel Gasienica <daniel@gasienica.ch>","Julian Walker <julian@fiftythree.com>","Amit Pitaru <pitaru.amit@gmail.com>","Brandon Aaron <hello.brandon@aaron.sh>","Andreas Lind <andreas@one.com>","Maurus Cuelenaere <mcuelenaere@gmail.com>","Linus Unnebäck <linus@folkdatorn.se>","Victor Mateevitsi <mvictoras@gmail.com>","Alaric Holloway <alaric.holloway@gmail.com>","Bernhard K. Weisshuhn <bkw@codingforce.com>","Chris Riley <criley@primedia.com>","David Carley <dacarley@gmail.com>","John Tobin <john@limelightmobileinc.com>","Kenton Gray <kentongray@gmail.com>","Felix Bünemann <Felix.Buenemann@gmail.com>","Samy Al Zahrani <samyalzahrany@gmail.com>","Chintan Thakkar <lemnisk8@gmail.com>","F. Orlando Galashan <frulo@gmx.de>","Kleis Auke Wolthuizen <info@kleisauke.nl>","Matt Hirsch <mhirsch@media.mit.edu>","Matthias Thoemmes <thoemmes@gmail.com>","Patrick Paskaris <patrick@paskaris.gr>","Jérémy Lal <kapouer@melix.org>","Rahul Nanwani <r.nanwani@gmail.com>","Alice Monday <alice0meta@gmail.com>","Kristo Jorgenson <kristo.jorgenson@gmail.com>","YvesBos <yves_bos@outlook.com>","Guy Maliar <guy@tailorbrands.com>","Nicolas Coden <nicolas@ncoden.fr>","Matt Parrish <matt.r.parrish@gmail.com>","Marcel Bretschneider <marcel.bretschneider@gmail.com>","Matthew McEachen <matthew+github@mceachen.org>","Jarda Kotěšovec <jarda.kotesovec@gmail.com>","Kenric D'Souza <kenric.dsouza@gmail.com>","Oleh Aleinyk <oleg.aleynik@gmail.com>","Marcel Bretschneider <marcel.bretschneider@gmail.com>","Andrea Bianco <andrea.bianco@unibas.ch>","Rik Heywood <rik@rik.org>","Thomas Parisot <hi@oncletom.io>","Nathan Graves <nathanrgraves+github@gmail.com>","Tom Lokhorst <tom@lokhorst.eu>","Espen Hovlandsdal <espen@hovlandsdal.com>","Sylvain Dumont <sylvain.dumont35@gmail.com>","Alun Davies <alun.owain.davies@googlemail.com>","Aidan Hoolachan <ajhoolachan21@gmail.com>","Axel Eirola <axel.eirola@iki.fi>","Freezy <freezy@xbmc.org>","Daiz <taneli.vatanen@gmail.com>","Julian Aubourg <j@ubourg.net>","Keith Belovay <keith@picthrive.com>","Michael B. Klein <mbklein@gmail.com>","Jordan Prudhomme <jordan@raboland.fr>","Ilya Ovdin <iovdin@gmail.com>","Andargor <andargor@yahoo.com>","Paul Neave <paul.neave@gmail.com>","Brendan Kennedy <brenwken@gmail.com>","Brychan Bennett-Odlum <git@brychan.io>","Edward Silverton <e.silverton@gmail.com>","Roman Malieiev <aromaleev@gmail.com>","Tomas Szabo <tomas.szabo@deftomat.com>","Robert O'Rourke <robert@o-rourke.org>","Guillermo Alfonso Varela Chouciño <guillevch@gmail.com>","Christian Flintrup <chr@gigahost.dk>","Manan Jadhav <manan@motionden.com>","Leon Radley <leon@radley.se>","alza54 <alza54@thiocod.in>","Jacob Smith <jacob@frende.me>","Michael Nutt <michael@nutt.im>","Brad Parham <baparham@gmail.com>","Taneli Vatanen <taneli.vatanen@gmail.com>","Joris Dugué <zaruike10@gmail.com>","Chris Banks <christopher.bradley.banks@gmail.com>","Ompal Singh <ompal.hitm09@gmail.com>","Brodan <christopher.hranj@gmail.com>","Ankur Parihar <ankur.github@gmail.com>","Brahim Ait elhaj <brahima@gmail.com>","Mart Jansink <m.jansink@gmail.com>","Lachlan Newman <lachnewman007@gmail.com>","Dennis Beatty <dennis@dcbeatty.com>","Ingvar Stepanyan <me@rreverser.com>"],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.0"},optionalDependencies:{"@img/sharp-darwin-arm64":"0.33.4","@img/sharp-darwin-x64":"0.33.4","@img/sharp-libvips-darwin-arm64":"1.0.2","@img/sharp-libvips-darwin-x64":"1.0.2","@img/sharp-libvips-linux-arm":"1.0.2","@img/sharp-libvips-linux-arm64":"1.0.2","@img/sharp-libvips-linux-s390x":"1.0.2","@img/sharp-libvips-linux-x64":"1.0.2","@img/sharp-libvips-linuxmusl-arm64":"1.0.2","@img/sharp-libvips-linuxmusl-x64":"1.0.2","@img/sharp-linux-arm":"0.33.4","@img/sharp-linux-arm64":"0.33.4","@img/sharp-linux-s390x":"0.33.4","@img/sharp-linux-x64":"0.33.4","@img/sharp-linuxmusl-arm64":"0.33.4","@img/sharp-linuxmusl-x64":"0.33.4","@img/sharp-wasm32":"0.33.4","@img/sharp-win32-ia32":"0.33.4","@img/sharp-win32-x64":"0.33.4"},devDependencies:{"@emnapi/runtime":"^1.1.1","@img/sharp-libvips-dev":"1.0.2","@img/sharp-libvips-dev-wasm32":"1.0.3","@img/sharp-libvips-win32-ia32":"1.0.2","@img/sharp-libvips-win32-x64":"1.0.2","@types/node":"*",async:"^3.2.5",cc:"^3.0.1",emnapi:"^1.1.1","exif-reader":"^2.0.1","extract-zip":"^2.0.1",icc:"^3.0.0","jsdoc-to-markdown":"^8.0.1","license-checker":"^25.0.1",mocha:"^10.4.0","node-addon-api":"^8.0.0",nyc:"^15.1.0",prebuild:"^13.0.1",semistandard:"^17.0.0","tar-fs":"^3.0.6",tsd:"^0.31.0"},license:"Apache-2.0",engines:{node:"^18.17.0 || ^20.3.0 || >=21.0.0",libvips:">=8.15.2"},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 g2=L((M9,B0)=>{var{spawnSync:L2}=import.meta.require("child_process"),{createHash:b4}=import.meta.require("crypto"),J0=R1(),h4=M2(),g4=t1(),i1=import.meta.require("detect-libc"),{engines:h2,optionalDependencies:m4}=O2(),u4=process.env.npm_package_config_libvips||h2.libvips,$0=J0(u4).version,l4=["darwin-arm64","darwin-x64","linux-arm","linux-arm64","linux-s390x","linux-x64","linuxmusl-arm64","linuxmusl-x64","win32-ia32","win32-x64"],R2={encoding:"utf8",shell:!0},q0=(J)=>{if(J instanceof Error)console.error(`sharp: Installation error: ${J.message}`);else console.log(`sharp: ${J}`)},W0=()=>i1.isNonGlibcLinuxSync()?i1.familySync():"",c4=()=>`${process.platform}${W0()}-${process.arch}`,e=()=>{if(Z0())return"wasm32";const{npm_config_arch:J,npm_config_platform:$,npm_config_libc:q}=process.env,W=typeof q==="string"?q:W0();return`${$||process.platform}${W}-${J||process.arch}`},a4=()=>{try{return import.meta.require(`@img/sharp-libvips-dev-${e()}/include`)}catch{try{return (()=>{throw new Error(`Cannot require module "@img/sharp-libvips-dev/include"`);})()}catch{}}return""},r4=()=>{try{return (()=>{throw new Error(`Cannot require module "@img/sharp-libvips-dev/cplusplus"`);})()}catch{}return""},e4=()=>{try{return import.meta.require(`@img/sharp-libvips-dev-${e()}/lib`)}catch{try{return import.meta.require(`@img/sharp-libvips-${e()}/lib`)}catch{}}return""},n4=()=>{if(process.release?.name==="node"&&process.versions){if(!g4(process.versions.node,h2.node))return{found:process.versions.node,expected:h2.node}}},Z0=()=>{const{CC:J}=process.env;return Boolean(J&&J.endsWith("/emcc"))},p4=()=>{if(process.platform==="darwin"&&process.arch==="x64")return(L2("sysctl sysctl.proc_translated",R2).stdout||"").trim()==="sysctl.proc_translated: 1";return!1},o1=(J)=>b4("sha512").update(J).digest("hex"),s4=()=>{try{const J=o1(`imgsharp-libvips-${e()}`),$=J0(m4[`@img/sharp-libvips-${e()}`]).version;return o1(`${J}npm:${$}`).slice(0,10)}catch{}return""},t4=()=>L2(`node-gyp rebuild --directory=src ${Z0()?"--nodedir=emscripten":""}`,{...R2,stdio:"inherit"}).status,Q0=()=>{if(process.platform!=="win32")return(L2("pkg-config --modversion vips-cpp",{...R2,env:{...process.env,PKG_CONFIG_PATH:U0()}}).stdout||"").trim();else return""},U0=()=>{if(process.platform!=="win32")return[(L2('which brew >/dev/null 2>&1 && brew environment --plain | grep PKG_CONFIG_LIBDIR | cut -d" " -f2',R2).stdout||"").trim(),process.env.PKG_CONFIG_PATH,"/usr/local/lib/pkgconfig","/usr/lib/pkgconfig","/usr/local/libdata/pkgconfig","/usr/libdata/pkgconfig"].filter(Boolean).join(":");else return""},b2=(J,$)=>{return q0(`Detected ${$}, skipping search for globally-installed libvips`),J},i4=()=>{if(Boolean(process.env.SHARP_IGNORE_GLOBAL_LIBVIPS)===!0)return b2(!1,"SHARP_IGNORE_GLOBAL_LIBVIPS");if(Boolean(process.env.SHARP_FORCE_GLOBAL_LIBVIPS)===!0)return b2(!0,"SHARP_FORCE_GLOBAL_LIBVIPS");if(p4())return b2(!1,"Rosetta");const J=Q0();return!!J&&h4(J,$0)};B0.exports={minimumLibvipsVersion:$0,prebuiltPlatforms:l4,buildPlatformArch:e,buildSharpLibvipsIncludeDir:a4,buildSharpLibvipsCPlusPlusDir:r4,buildSharpLibvipsLibDir:e4,isUnsupportedNodeRuntime:n4,runtimePlatformArch:c4,log:q0,yarnLocator:s4,spawnRebuild:t4,globalLibvipsVersion:Q0,pkgConfigPath:U0,useGlobalLibvips:i4}});var q2=L((x9,I0)=>{var{familySync:o4,versionSync:J3}=import.meta.require("detect-libc"),{runtimePlatformArch:$3,isUnsupportedNodeRuntime:Y0,prebuiltPlatforms:q3,minimumLibvipsVersion:W3}=g2(),l=$3(),Z3=[`../src/build/Release/sharp-${l}.node`,"../src/build/Release/sharp-wasm32.node",`@img/sharp-${l}/sharp.node`,"@img/sharp-wasm32/sharp.node"],m2,_2=[];for(let J of Z3)try{m2=import.meta.require(J);break}catch($){_2.push($)}if(m2)I0.exports=m2;else{const[J,$,q]=["linux","darwin","win32"].map((U)=>l.startsWith(U)),W=[`Could not load the "sharp" module using the ${l} runtime`];_2.forEach((U)=>{if(U.code!=="MODULE_NOT_FOUND")W.push(`${U.code}: ${U.message}`)});const Z=_2.map((U)=>U.message).join(" ");if(W.push("Possible solutions:"),Y0()){const{found:U,expected:B}=Y0();W.push("- Please upgrade Node.js:",` Found ${U}`,` Requires ${B}`)}else if(q3.includes(l)){const[U,B]=l.split("-"),Y=U.endsWith("musl")?" --libc=musl":"";W.push("- Ensure optional dependencies can be installed:"," npm install --include=optional sharp"," yarn add sharp --ignore-engines","- Ensure your package manager supports multi-platform installation:"," See https://sharp.pixelplumbing.com/install#cross-platform","- Add platform-specific dependencies:",` npm install --os=${U.replace("musl","")}${Y} --cpu=${B} sharp`)}else W.push(`- Manually install libvips >= ${W3}`,"- Add experimental WebAssembly-based dependencies:"," npm install --cpu=wasm32 sharp"," npm install @img/sharp-wasm32");if(J&&/(symbol not found|CXXABI_)/i.test(Z))try{const{engines:U}=import.meta.require(`@img/sharp-libvips-${l}/package`),B=`${o4()} ${J3()}`,Y=`${U.musl?"musl":"glibc"} ${U.musl||U.glibc}`;W.push("- Update your OS:",` Found ${B}`,` Requires ${Y}`)}catch(U){}if(J&&/\/snap\/core[0-9]{2}/.test(Z))W.push("- Remove the Node.js Snap, which does not support native modules"," snap remove node");if($&&/Incompatible library version/.test(Z))W.push("- Update Homebrew:"," brew update && brew upgrade vips");if(_2.some((U)=>U.code==="ERR_DLOPEN_DISABLED"))W.push("- Run Node.js without using the --no-addons flag");if(q&&/The specified procedure could not be found/.test(Z))W.push("- Using the canvas package on Windows?"," See https://sharp.pixelplumbing.com/install#canvas-and-windows","- Check for outdated versions of sharp in the dependency tree:"," npm ls sharp");throw W.push("- Consult the installation documentation:"," See https://sharp.pixelplumbing.com/install"),new Error(W.join("\n"))}});var F0=L((f9,K0)=>{var Y3=function(){const J=this.constructor.call(),{debuglog:$,queueListener:q,...W}=this.options;if(J.options=structuredClone(W),J.options.debuglog=$,J.options.queueListener=q,this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),J.options.input.buffer=this.options.input.buffer,J.emit("finish")});return J},Q3=import.meta.require("util"),u2=import.meta.require("stream"),U3=d();q2();var B3=Q3.debuglog("sharp"),c=function(J,$){if(arguments.length===1&&!U3.defined(J))throw new Error("Invalid input");if(!(this instanceof c))return new c(J,$);return u2.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,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:(q)=>{this.emit("warning",q),B3(q)},queueListener:function(q){c.queue.emit("change",q)}},this.options.input=this._createInputDescriptor(J,$,{allowStream:!0}),this};Object.setPrototypeOf(c.prototype,u2.Duplex.prototype);Object.setPrototypeOf(c,u2.Duplex);Object.assign(c.prototype,{clone:Y3});K0.exports=c});var l2=L((d9,G0)=>{G0.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 N0=L((v9,H0)=>{H0.exports=function J($){if(!$||typeof $==="string")return!1;return $ instanceof Array||Array.isArray($)||$.length>=0&&($.splice instanceof Function||Object.getOwnPropertyDescriptor($,$.length-1)&&$.constructor.name!=="String")}});var A0=L((O9,X0)=>{var I3=N0(),K3=Array.prototype.concat,F3=Array.prototype.slice,P0=X0.exports=function J($){var q=[];for(var W=0,Z=$.length;W<Z;W++){var U=$[W];if(I3(U))q=K3.call(q,F3.call(U));else q.push(U)}return q};P0.wrap=function(J){return function(){return J(P0(arguments))}}});var _0=L((b9,R0)=>{var g=function(J,$,q){return Math.min(Math.max($,J),q)},j2=function(J){var $=Math.round(J).toString(16).toUpperCase();return $.length<2?"0"+$:$},W2=l2(),Z2=A0(),V0=Object.hasOwnProperty,L0=Object.create(null);for(y2 in W2)if(V0.call(W2,y2))L0[W2[y2]]=y2;var y2,k=R0.exports={to:{},get:{}};k.get=function(J){var $=J.substring(0,3).toLowerCase(),q,W;switch($){case"hsl":q=k.get.hsl(J),W="hsl";break;case"hwb":q=k.get.hwb(J),W="hwb";break;default:q=k.get.rgb(J),W="rgb";break}if(!q)return null;return{model:W,value:q}};k.get.rgb=function(J){if(!J)return null;var $=/^#([a-f0-9]{3,4})$/i,q=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,W=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,Z=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,U=/^(\w+)$/,B=[0,0,0,1],Y,F,G;if(Y=J.match(q)){G=Y[2],Y=Y[1];for(F=0;F<3;F++){var P=F*2;B[F]=parseInt(Y.slice(P,P+2),16)}if(G)B[3]=parseInt(G,16)/255}else if(Y=J.match($)){Y=Y[1],G=Y[3];for(F=0;F<3;F++)B[F]=parseInt(Y[F]+Y[F],16);if(G)B[3]=parseInt(G+G,16)/255}else if(Y=J.match(W)){for(F=0;F<3;F++)B[F]=parseInt(Y[F+1],0);if(Y[4])if(Y[5])B[3]=parseFloat(Y[4])*0.01;else B[3]=parseFloat(Y[4])}else if(Y=J.match(Z)){for(F=0;F<3;F++)B[F]=Math.round(parseFloat(Y[F+1])*2.55);if(Y[4])if(Y[5])B[3]=parseFloat(Y[4])*0.01;else B[3]=parseFloat(Y[4])}else if(Y=J.match(U)){if(Y[1]==="transparent")return[0,0,0,0];if(!V0.call(W2,Y[1]))return null;return B=W2[Y[1]],B[3]=1,B}else return null;for(F=0;F<3;F++)B[F]=g(B[F],0,255);return B[3]=g(B[3],0,1),B};k.get.hsl=function(J){if(!J)return null;var $=/^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*)?\)$/,q=J.match($);if(q){var W=parseFloat(q[4]),Z=(parseFloat(q[1])%360+360)%360,U=g(parseFloat(q[2]),0,100),B=g(parseFloat(q[3]),0,100),Y=g(isNaN(W)?1:W,0,1);return[Z,U,B,Y]}return null};k.get.hwb=function(J){if(!J)return null;var $=/^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*)?\)$/,q=J.match($);if(q){var W=parseFloat(q[4]),Z=(parseFloat(q[1])%360+360)%360,U=g(parseFloat(q[2]),0,100),B=g(parseFloat(q[3]),0,100),Y=g(isNaN(W)?1:W,0,1);return[Z,U,B,Y]}return null};k.to.hex=function(){var J=Z2(arguments);return"#"+j2(J[0])+j2(J[1])+j2(J[2])+(J[3]<1?j2(Math.round(J[3]*255)):"")};k.to.rgb=function(){var J=Z2(arguments);return J.length<4||J[3]===1?"rgb("+Math.round(J[0])+", "+Math.round(J[1])+", "+Math.round(J[2])+")":"rgba("+Math.round(J[0])+", "+Math.round(J[1])+", "+Math.round(J[2])+", "+J[3]+")"};k.to.rgb.percent=function(){var J=Z2(arguments),$=Math.round(J[0]/255*100),q=Math.round(J[1]/255*100),W=Math.round(J[2]/255*100);return J.length<4||J[3]===1?"rgb("+$+"%, "+q+"%, "+W+"%)":"rgba("+$+"%, "+q+"%, "+W+"%, "+J[3]+")"};k.to.hsl=function(){var J=Z2(arguments);return J.length<4||J[3]===1?"hsl("+J[0]+", "+J[1]+"%, "+J[2]+"%)":"hsla("+J[0]+", "+J[1]+"%, "+J[2]+"%, "+J[3]+")"};k.to.hwb=function(){var J=Z2(arguments),$="";if(J.length>=4&&J[3]!==1)$=", "+J[3];return"hwb("+J[0]+", "+J[1]+"%, "+J[2]+"%"+$+")"};k.to.keyword=function(J){return L0[J.slice(0,3)]}});var c2=L((h9,j0)=>{var G3=function(J,$){return(J[0]-$[0])**2+(J[1]-$[1])**2+(J[2]-$[2])**2},Q2=l2(),y0={};for(let J of Object.keys(Q2))y0[Q2[J]]=J;var X={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"]}};j0.exports=X;for(let J of Object.keys(X)){if(!("channels"in X[J]))throw new Error("missing channels property: "+J);if(!("labels"in X[J]))throw new Error("missing channel labels property: "+J);if(X[J].labels.length!==X[J].channels)throw new Error("channel and label counts mismatch: "+J);const{channels:$,labels:q}=X[J];delete X[J].channels,delete X[J].labels,Object.defineProperty(X[J],"channels",{value:$}),Object.defineProperty(X[J],"labels",{value:q})}X.rgb.hsl=function(J){const $=J[0]/255,q=J[1]/255,W=J[2]/255,Z=Math.min($,q,W),U=Math.max($,q,W),B=U-Z;let Y,F;if(U===Z)Y=0;else if($===U)Y=(q-W)/B;else if(q===U)Y=2+(W-$)/B;else if(W===U)Y=4+($-q)/B;if(Y=Math.min(Y*60,360),Y<0)Y+=360;const G=(Z+U)/2;if(U===Z)F=0;else if(G<=0.5)F=B/(U+Z);else F=B/(2-U-Z);return[Y,F*100,G*100]};X.rgb.hsv=function(J){let $,q,W,Z,U;const B=J[0]/255,Y=J[1]/255,F=J[2]/255,G=Math.max(B,Y,F),P=G-Math.min(B,Y,F),R=function(w){return(G-w)/6/P+0.5};if(P===0)Z=0,U=0;else{if(U=P/G,$=R(B),q=R(Y),W=R(F),B===G)Z=W-q;else if(Y===G)Z=0.3333333333333333+$-W;else if(F===G)Z=0.6666666666666666+q-$;if(Z<0)Z+=1;else if(Z>1)Z-=1}return[Z*360,U*100,G*100]};X.rgb.hwb=function(J){const $=J[0],q=J[1];let W=J[2];const Z=X.rgb.hsl(J)[0],U=0.00392156862745098*Math.min($,Math.min(q,W));return W=1-0.00392156862745098*Math.max($,Math.max(q,W)),[Z,U*100,W*100]};X.rgb.cmyk=function(J){const $=J[0]/255,q=J[1]/255,W=J[2]/255,Z=Math.min(1-$,1-q,1-W),U=(1-$-Z)/(1-Z)||0,B=(1-q-Z)/(1-Z)||0,Y=(1-W-Z)/(1-Z)||0;return[U*100,B*100,Y*100,Z*100]};X.rgb.keyword=function(J){const $=y0[J];if($)return $;let q=Infinity,W;for(let Z of Object.keys(Q2)){const U=Q2[Z],B=G3(J,U);if(B<q)q=B,W=Z}return W};X.keyword.rgb=function(J){return Q2[J]};X.rgb.xyz=function(J){let $=J[0]/255,q=J[1]/255,W=J[2]/255;$=$>0.04045?(($+0.055)/1.055)**2.4:$/12.92,q=q>0.04045?((q+0.055)/1.055)**2.4:q/12.92,W=W>0.04045?((W+0.055)/1.055)**2.4:W/12.92;const Z=$*0.4124+q*0.3576+W*0.1805,U=$*0.2126+q*0.7152+W*0.0722,B=$*0.0193+q*0.1192+W*0.9505;return[Z*100,U*100,B*100]};X.rgb.lab=function(J){const $=X.rgb.xyz(J);let q=$[0],W=$[1],Z=$[2];q/=95.047,W/=100,Z/=108.883,q=q>0.008856?q**0.3333333333333333:7.787*q+0.13793103448275862,W=W>0.008856?W**0.3333333333333333:7.787*W+0.13793103448275862,Z=Z>0.008856?Z**0.3333333333333333:7.787*Z+0.13793103448275862;const U=116*W-16,B=500*(q-W),Y=200*(W-Z);return[U,B,Y]};X.hsl.rgb=function(J){const $=J[0]/360,q=J[1]/100,W=J[2]/100;let Z,U,B;if(q===0)return B=W*255,[B,B,B];if(W<0.5)Z=W*(1+q);else Z=W+q-W*q;const Y=2*W-Z,F=[0,0,0];for(let G=0;G<3;G++){if(U=$+0.3333333333333333*-(G-1),U<0)U++;if(U>1)U--;if(6*U<1)B=Y+(Z-Y)*6*U;else if(2*U<1)B=Z;else if(3*U<2)B=Y+(Z-Y)*(0.6666666666666666-U)*6;else B=Y;F[G]=B*255}return F};X.hsl.hsv=function(J){const $=J[0];let q=J[1]/100,W=J[2]/100,Z=q;const U=Math.max(W,0.01);W*=2,q*=W<=1?W:2-W,Z*=U<=1?U:2-U;const B=(W+q)/2,Y=W===0?2*Z/(U+Z):2*q/(W+q);return[$,Y*100,B*100]};X.hsv.rgb=function(J){const $=J[0]/60,q=J[1]/100;let W=J[2]/100;const Z=Math.floor($)%6,U=$-Math.floor($),B=255*W*(1-q),Y=255*W*(1-q*U),F=255*W*(1-q*(1-U));switch(W*=255,Z){case 0:return[W,F,B];case 1:return[Y,W,B];case 2:return[B,W,F];case 3:return[B,Y,W];case 4:return[F,B,W];case 5:return[W,B,Y]}};X.hsv.hsl=function(J){const $=J[0],q=J[1]/100,W=J[2]/100,Z=Math.max(W,0.01);let U,B;B=(2-q)*W;const Y=(2-q)*Z;return U=q*Z,U/=Y<=1?Y:2-Y,U=U||0,B/=2,[$,U*100,B*100]};X.hwb.rgb=function(J){const $=J[0]/360;let q=J[1]/100,W=J[2]/100;const Z=q+W;let U;if(Z>1)q/=Z,W/=Z;const B=Math.floor(6*$),Y=1-W;if(U=6*$-B,(B&1)!==0)U=1-U;const F=q+U*(Y-q);let G,P,R;switch(B){default:case 6:case 0:G=Y,P=F,R=q;break;case 1:G=F,P=Y,R=q;break;case 2:G=q,P=Y,R=F;break;case 3:G=q,P=F,R=Y;break;case 4:G=F,P=q,R=Y;break;case 5:G=Y,P=q,R=F;break}return[G*255,P*255,R*255]};X.cmyk.rgb=function(J){const $=J[0]/100,q=J[1]/100,W=J[2]/100,Z=J[3]/100,U=1-Math.min(1,$*(1-Z)+Z),B=1-Math.min(1,q*(1-Z)+Z),Y=1-Math.min(1,W*(1-Z)+Z);return[U*255,B*255,Y*255]};X.xyz.rgb=function(J){const $=J[0]/100,q=J[1]/100,W=J[2]/100;let Z,U,B;return Z=$*3.2406+q*-1.5372+W*-0.4986,U=$*-0.9689+q*1.8758+W*0.0415,B=$*0.0557+q*-0.204+W*1.057,Z=Z>0.0031308?1.055*Z**0.4166666666666667-0.055:Z*12.92,U=U>0.0031308?1.055*U**0.4166666666666667-0.055:U*12.92,B=B>0.0031308?1.055*B**0.4166666666666667-0.055:B*12.92,Z=Math.min(Math.max(0,Z),1),U=Math.min(Math.max(0,U),1),B=Math.min(Math.max(0,B),1),[Z*255,U*255,B*255]};X.xyz.lab=function(J){let $=J[0],q=J[1],W=J[2];$/=95.047,q/=100,W/=108.883,$=$>0.008856?$**0.3333333333333333:7.787*$+0.13793103448275862,q=q>0.008856?q**0.3333333333333333:7.787*q+0.13793103448275862,W=W>0.008856?W**0.3333333333333333:7.787*W+0.13793103448275862;const Z=116*q-16,U=500*($-q),B=200*(q-W);return[Z,U,B]};X.lab.xyz=function(J){const $=J[0],q=J[1],W=J[2];let Z,U,B;U=($+16)/116,Z=q/500+U,B=U-W/200;const Y=U**3,F=Z**3,G=B**3;return U=Y>0.008856?Y:(U-0.13793103448275862)/7.787,Z=F>0.008856?F:(Z-0.13793103448275862)/7.787,B=G>0.008856?G:(B-0.13793103448275862)/7.787,Z*=95.047,U*=100,B*=108.883,[Z,U,B]};X.lab.lch=function(J){const $=J[0],q=J[1],W=J[2];let Z;if(Z=Math.atan2(W,q)*360/2/Math.PI,Z<0)Z+=360;const B=Math.sqrt(q*q+W*W);return[$,B,Z]};X.lch.lab=function(J){const $=J[0],q=J[1],Z=J[2]/360*2*Math.PI,U=q*Math.cos(Z),B=q*Math.sin(Z);return[$,U,B]};X.rgb.ansi16=function(J,$=null){const[q,W,Z]=J;let U=$===null?X.rgb.hsv(J)[2]:$;if(U=Math.round(U/50),U===0)return 30;let B=30+(Math.round(Z/255)<<2|Math.round(W/255)<<1|Math.round(q/255));if(U===2)B+=60;return B};X.hsv.ansi16=function(J){return X.rgb.ansi16(X.hsv.rgb(J),J[2])};X.rgb.ansi256=function(J){const $=J[0],q=J[1],W=J[2];if($===q&&q===W){if($<8)return 16;if($>248)return 231;return Math.round(($-8)/247*24)+232}return 16+36*Math.round($/255*5)+6*Math.round(q/255*5)+Math.round(W/255*5)};X.ansi16.rgb=function(J){let $=J%10;if($===0||$===7){if(J>50)$+=3.5;return $=$/10.5*255,[$,$,$]}const q=(~~(J>50)+1)*0.5,W=($&1)*q*255,Z=($>>1&1)*q*255,U=($>>2&1)*q*255;return[W,Z,U]};X.ansi256.rgb=function(J){if(J>=232){const U=(J-232)*10+8;return[U,U,U]}J-=16;let $;const q=Math.floor(J/36)/5*255,W=Math.floor(($=J%36)/6)/5*255,Z=$%6/5*255;return[q,W,Z]};X.rgb.hex=function(J){const q=(((Math.round(J[0])&255)<<16)+((Math.round(J[1])&255)<<8)+(Math.round(J[2])&255)).toString(16).toUpperCase();return"000000".substring(q.length)+q};X.hex.rgb=function(J){const $=J.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!$)return[0,0,0];let q=$[0];if($[0].length===3)q=q.split("").map((Y)=>{return Y+Y}).join("");const W=parseInt(q,16),Z=W>>16&255,U=W>>8&255,B=W&255;return[Z,U,B]};X.rgb.hcg=function(J){const $=J[0]/255,q=J[1]/255,W=J[2]/255,Z=Math.max(Math.max($,q),W),U=Math.min(Math.min($,q),W),B=Z-U;let Y,F;if(B<1)Y=U/(1-B);else Y=0;if(B<=0)F=0;else if(Z===$)F=(q-W)/B%6;else if(Z===q)F=2+(W-$)/B;else F=4+($-q)/B;return F/=6,F%=1,[F*360,B*100,Y*100]};X.hsl.hcg=function(J){const $=J[1]/100,q=J[2]/100,W=q<0.5?2*$*q:2*$*(1-q);let Z=0;if(W<1)Z=(q-0.5*W)/(1-W);return[J[0],W*100,Z*100]};X.hsv.hcg=function(J){const $=J[1]/100,q=J[2]/100,W=$*q;let Z=0;if(W<1)Z=(q-W)/(1-W);return[J[0],W*100,Z*100]};X.hcg.rgb=function(J){const $=J[0]/360,q=J[1]/100,W=J[2]/100;if(q===0)return[W*255,W*255,W*255];const Z=[0,0,0],U=$%1*6,B=U%1,Y=1-B;let F=0;switch(Math.floor(U)){case 0:Z[0]=1,Z[1]=B,Z[2]=0;break;case 1:Z[0]=Y,Z[1]=1,Z[2]=0;break;case 2:Z[0]=0,Z[1]=1,Z[2]=B;break;case 3:Z[0]=0,Z[1]=Y,Z[2]=1;break;case 4:Z[0]=B,Z[1]=0,Z[2]=1;break;default:Z[0]=1,Z[1]=0,Z[2]=Y}return F=(1-q)*W,[(q*Z[0]+F)*255,(q*Z[1]+F)*255,(q*Z[2]+F)*255]};X.hcg.hsv=function(J){const $=J[1]/100,q=J[2]/100,W=$+q*(1-$);let Z=0;if(W>0)Z=$/W;return[J[0],Z*100,W*100]};X.hcg.hsl=function(J){const $=J[1]/100,W=J[2]/100*(1-$)+0.5*$;let Z=0;if(W>0&&W<0.5)Z=$/(2*W);else if(W>=0.5&&W<1)Z=$/(2*(1-W));return[J[0],Z*100,W*100]};X.hcg.hwb=function(J){const $=J[1]/100,q=J[2]/100,W=$+q*(1-$);return[J[0],(W-$)*100,(1-W)*100]};X.hwb.hcg=function(J){const $=J[1]/100,W=1-J[2]/100,Z=W-$;let U=0;if(Z<1)U=(W-Z)/(1-Z);return[J[0],Z*100,U*100]};X.apple.rgb=function(J){return[J[0]/65535*255,J[1]/65535*255,J[2]/65535*255]};X.rgb.apple=function(J){return[J[0]/255*65535,J[1]/255*65535,J[2]/255*65535]};X.gray.rgb=function(J){return[J[0]/100*255,J[0]/100*255,J[0]/100*255]};X.gray.hsl=function(J){return[0,0,J[0]]};X.gray.hsv=X.gray.hsl;X.gray.hwb=function(J){return[0,100,J[0]]};X.gray.cmyk=function(J){return[0,0,0,J[0]]};X.gray.lab=function(J){return[J[0],0,0]};X.gray.hex=function(J){const $=Math.round(J[0]/100*255)&255,W=(($<<16)+($<<8)+$).toString(16).toUpperCase();return"000000".substring(W.length)+W};X.rgb.gray=function(J){return[(J[0]+J[1]+J[2])/3/255*100]}});var T0=L((g9,E0)=>{var H3=function(){const J={},$=Object.keys(E2);for(let q=$.length,W=0;W<q;W++)J[$[W]]={distance:-1,parent:null};return J},N3=function(J){const $=H3(),q=[J];$[J].distance=0;while(q.length){const W=q.pop(),Z=Object.keys(E2[W]);for(let U=Z.length,B=0;B<U;B++){const Y=Z[B],F=$[Y];if(F.distance===-1)F.distance=$[W].distance+1,F.parent=W,q.unshift(Y)}}return $},P3=function(J,$){return function(q){return $(J(q))}},X3=function(J,$){const q=[$[J].parent,J];let W=E2[$[J].parent][J],Z=$[J].parent;while($[Z].parent)q.unshift($[Z].parent),W=P3(E2[$[Z].parent][Z],W),Z=$[Z].parent;return W.conversion=q,W},E2=c2();E0.exports=function(J){const $=N3(J),q={},W=Object.keys($);for(let Z=W.length,U=0;U<Z;U++){const B=W[U];if($[B].parent===null)continue;q[B]=X3(B,$)}return q}});var z0=L((m9,w0)=>{var L3=function(J){const $=function(...q){const W=q[0];if(W===void 0||W===null)return W;if(W.length>1)q=W;return J(q)};if("conversion"in J)$.conversion=J.conversion;return $},R3=function(J){const $=function(...q){const W=q[0];if(W===void 0||W===null)return W;if(W.length>1)q=W;const Z=J(q);if(typeof Z==="object")for(let U=Z.length,B=0;B<U;B++)Z[B]=Math.round(Z[B]);return Z};if("conversion"in J)$.conversion=J.conversion;return $},a2=c2(),A3=T0(),n={},V3=Object.keys(a2);V3.forEach((J)=>{n[J]={},Object.defineProperty(n[J],"channels",{value:a2[J].channels}),Object.defineProperty(n[J],"labels",{value:a2[J].labels});const $=A3(J);Object.keys($).forEach((W)=>{const Z=$[W];n[J][W]=R3(Z),n[J][W].raw=L3(Z)})});w0.exports=n});var w2=L((u9,C0)=>{var T=function(J,$){if(!(this instanceof T))return new T(J,$);if($&&$ in D0)$=null;if($&&!($ in M))throw new Error("Unknown model: "+$);let q,W;if(J==null)this.model="rgb",this.color=[0,0,0],this.valpha=1;else if(J instanceof T)this.model=J.model,this.color=[...J.color],this.valpha=J.valpha;else if(typeof J==="string"){const Z=p.get(J);if(Z===null)throw new Error("Unable to parse color from string: "+J);this.model=Z.model,W=M[this.model].channels,this.color=Z.value.slice(0,W),this.valpha=typeof Z.value[W]==="number"?Z.value[W]:1}else if(J.length>0){this.model=$||"rgb",W=M[this.model].channels;const Z=Array.prototype.slice.call(J,0,W);this.color=e2(Z,W),this.valpha=typeof J[W]==="number"?J[W]:1}else if(typeof J==="number")this.model="rgb",this.color=[J>>16&255,J>>8&255,J&255],this.valpha=1;else{this.valpha=1;const Z=Object.keys(J);if("alpha"in J)Z.splice(Z.indexOf("alpha"),1),this.valpha=typeof J.alpha==="number"?J.alpha:0;const U=Z.sort().join("");if(!(U in r2))throw new Error("Unable to parse color from object: "+JSON.stringify(J));this.model=r2[U];const{labels:B}=M[this.model],Y=[];for(q=0;q<B.length;q++)Y.push(J[B[q]]);this.color=e2(Y)}if(T2[this.model]){W=M[this.model].channels;for(q=0;q<W;q++){const Z=T2[this.model][q];if(Z)this.color[q]=Z(this.color[q])}}if(this.valpha=Math.max(0,Math.min(1,this.valpha)),Object.freeze)Object.freeze(this)},_3=function(J,$){return Number(J.toFixed($))},y3=function(J){return function($){return _3($,J)}},j=function(J,$,q){J=Array.isArray(J)?J:[J];for(let W of J)(T2[W]||(T2[W]=[]))[$]=q;return J=J[0],function(W){let Z;if(W!==void 0){if(q)W=q(W);return Z=this[J](),Z.color[$]=W,Z}if(Z=this[J]().color[$],q)Z=q(Z);return Z}},E=function(J){return function($){return Math.max(0,Math.min(J,$))}},j3=function(J){return Array.isArray(J)?J:[J]},e2=function(J,$){for(let q=0;q<$;q++)if(typeof J[q]!=="number")J[q]=0;return J},p=_0(),M=z0(),D0=["keyword","gray","hex"],r2={};for(let J of Object.keys(M))r2[[...M[J].labels].sort().join("")]=J;var T2={};T.prototype={toString(){return this.string()},toJSON(){return this[this.model]()},string(J){let $=this.model in p.to?this:this.rgb();$=$.round(typeof J==="number"?J:1);const q=$.valpha===1?$.color:[...$.color,this.valpha];return p.to[$.model](q)},percentString(J){const $=this.rgb().round(typeof J==="number"?J:1),q=$.valpha===1?$.color:[...$.color,this.valpha];return p.to.rgb.percent(q)},array(){return this.valpha===1?[...this.color]:[...this.color,this.valpha]},object(){const J={},{channels:$}=M[this.model],{labels:q}=M[this.model];for(let W=0;W<$;W++)J[q[W]]=this.color[W];if(this.valpha!==1)J.alpha=this.valpha;return J},unitArray(){const J=this.rgb().color;if(J[0]/=255,J[1]/=255,J[2]/=255,this.valpha!==1)J.push(this.valpha);return J},unitObject(){const J=this.rgb().object();if(J.r/=255,J.g/=255,J.b/=255,this.valpha!==1)J.alpha=this.valpha;return J},round(J){return J=Math.max(J||0,0),new T([...this.color.map(y3(J)),this.valpha],this.model)},alpha(J){if(J!==void 0)return new T([...this.color,Math.max(0,Math.min(1,J))],this.model);return this.valpha},red:j("rgb",0,E(255)),green:j("rgb",1,E(255)),blue:j("rgb",2,E(255)),hue:j(["hsl","hsv","hsl","hwb","hcg"],0,(J)=>(J%360+360)%360),saturationl:j("hsl",1,E(100)),lightness:j("hsl",2,E(100)),saturationv:j("hsv",1,E(100)),value:j("hsv",2,E(100)),chroma:j("hcg",1,E(100)),gray:j("hcg",2,E(100)),white:j("hwb",1,E(100)),wblack:j("hwb",2,E(100)),cyan:j("cmyk",0,E(100)),magenta:j("cmyk",1,E(100)),yellow:j("cmyk",2,E(100)),black:j("cmyk",3,E(100)),x:j("xyz",0,E(95.047)),y:j("xyz",1,E(100)),z:j("xyz",2,E(108.833)),l:j("lab",0,E(100)),a:j("lab",1),b:j("lab",2),keyword(J){if(J!==void 0)return new T(J);return M[this.model].keyword(this.color)},hex(J){if(J!==void 0)return new T(J);return p.to.hex(this.rgb().round().color)},hexa(J){if(J!==void 0)return new T(J);const $=this.rgb().round().color;let q=Math.round(this.valpha*255).toString(16).toUpperCase();if(q.length===1)q="0"+q;return p.to.hex($)+q},rgbNumber(){const J=this.rgb().color;return(J[0]&255)<<16|(J[1]&255)<<8|J[2]&255},luminosity(){const J=this.rgb().color,$=[];for(let[q,W]of J.entries()){const Z=W/255;$[q]=Z<=0.04045?Z/12.92:((Z+0.055)/1.055)**2.4}return 0.2126*$[0]+0.7152*$[1]+0.0722*$[2]},contrast(J){const $=this.luminosity(),q=J.luminosity();if($>q)return($+0.05)/(q+0.05);return(q+0.05)/($+0.05)},level(J){const $=this.contrast(J);if($>=7)return"AAA";return $>=4.5?"AA":""},isDark(){const J=this.rgb().color;return(J[0]*2126+J[1]*7152+J[2]*722)/1e4<128},isLight(){return!this.isDark()},negate(){const J=this.rgb();for(let $=0;$<3;$++)J.color[$]=255-J.color[$];return J},lighten(J){const $=this.hsl();return $.color[2]+=$.color[2]*J,$},darken(J){const $=this.hsl();return $.color[2]-=$.color[2]*J,$},saturate(J){const $=this.hsl();return $.color[1]+=$.color[1]*J,$},desaturate(J){const $=this.hsl();return $.color[1]-=$.color[1]*J,$},whiten(J){const $=this.hwb();return $.color[1]+=$.color[1]*J,$},blacken(J){const $=this.hwb();return $.color[2]+=$.color[2]*J,$},grayscale(){const J=this.rgb().color,$=J[0]*0.3+J[1]*0.59+J[2]*0.11;return T.rgb($,$,$)},fade(J){return this.alpha(this.valpha-this.valpha*J)},opaquer(J){return this.alpha(this.valpha+this.valpha*J)},rotate(J){const $=this.hsl();let q=$.color[0];return q=(q+J)%360,q=q<0?360+q:q,$.color[0]=q,$},mix(J,$){if(!J||!J.rgb)throw new Error('Argument to "mix" was not a Color instance, but rather an instance of '+typeof J);const q=J.rgb(),W=this.rgb(),Z=$===void 0?0.5:$,U=2*Z-1,B=q.alpha()-W.alpha(),Y=((U*B===-1?U:(U+B)/(1+U*B))+1)/2,F=1-Y;return T.rgb(Y*q.red()+F*W.red(),Y*q.green()+F*W.green(),Y*q.blue()+F*W.blue(),q.alpha()*Z+W.alpha()*(1-Z))}};for(let J of Object.keys(M)){if(D0.includes(J))continue;const{channels:$}=M[J];T.prototype[J]=function(...q){if(this.model===J)return new T(this);if(q.length>0)return new T(q,J);return new T([...j3(M[this.model][J].raw(this.color)),this.valpha],J)},T[J]=function(...q){let W=q[0];if(typeof W==="number")W=e2(q,$);return new T(W,J)}}C0.exports=T});var M0=L((l9,k0)=>{var S0=function(J){const{raw:$,density:q,limitInputPixels:W,ignoreIcc:Z,unlimited:U,sequentialRead:B,failOn:Y,failOnError:F,animated:G,page:P,pages:R,subifd:w}=J;return[$,q,W,Z,U,B,Y,F,G,P,R,w].some(K.defined)?{raw:$,density:q,limitInputPixels:W,ignoreIcc:Z,unlimited:U,sequentialRead:B,failOn:Y,failOnError:F,animated:G,page:P,pages:R,subifd:w}:void 0},w3=function(J,$,q){const W={failOn:"warning",limitInputPixels:Math.pow(16383,2),ignoreIcc:!1,unlimited:!1,sequentialRead:!0};if(K.string(J))W.file=J;else if(K.buffer(J)){if(J.length===0)throw Error("Input Buffer is empty");W.buffer=J}else if(K.arrayBuffer(J)){if(J.byteLength===0)throw Error("Input bit Array is empty");W.buffer=Buffer.from(J,0,J.byteLength)}else if(K.typedArray(J)){if(J.length===0)throw Error("Input Bit Array is empty");W.buffer=Buffer.from(J.buffer,J.byteOffset,J.byteLength)}else if(K.plainObject(J)&&!K.defined($)){if($=J,S0($))W.buffer=[]}else if(!K.defined(J)&&!K.defined($)&&K.object(q)&&q.allowStream)W.buffer=[];else throw new Error(`Unsupported input '${J}' of type ${typeof J}${K.defined($)?` when also providing options of type ${typeof $}`:""}`);if(K.object($)){if(K.defined($.failOnError))if(K.bool($.failOnError))W.failOn=$.failOnError?"warning":"none";else throw K.invalidParameterError("failOnError","boolean",$.failOnError);if(K.defined($.failOn))if(K.string($.failOn)&&K.inArray($.failOn,["none","truncated","error","warning"]))W.failOn=$.failOn;else throw K.invalidParameterError("failOn","one of: none, truncated, error, warning",$.failOn);if(K.defined($.density))if(K.inRange($.density,1,1e5))W.density=$.density;else throw K.invalidParameterError("density","number between 1 and 100000",$.density);if(K.defined($.ignoreIcc))if(K.bool($.ignoreIcc))W.ignoreIcc=$.ignoreIcc;else throw K.invalidParameterError("ignoreIcc","boolean",$.ignoreIcc);if(K.defined($.limitInputPixels))if(K.bool($.limitInputPixels))W.limitInputPixels=$.limitInputPixels?Math.pow(16383,2):0;else if(K.integer($.limitInputPixels)&&K.inRange($.limitInputPixels,0,Number.MAX_SAFE_INTEGER))W.limitInputPixels=$.limitInputPixels;else throw K.invalidParameterError("limitInputPixels","positive integer",$.limitInputPixels);if(K.defined($.unlimited))if(K.bool($.unlimited))W.unlimited=$.unlimited;else throw K.invalidParameterError("unlimited","boolean",$.unlimited);if(K.defined($.sequentialRead))if(K.bool($.sequentialRead))W.sequentialRead=$.sequentialRead;else throw K.invalidParameterError("sequentialRead","boolean",$.sequentialRead);if(K.defined($.raw))if(K.object($.raw)&&K.integer($.raw.width)&&$.raw.width>0&&K.integer($.raw.height)&&$.raw.height>0&&K.integer($.raw.channels)&&K.inRange($.raw.channels,1,4))switch(W.rawWidth=$.raw.width,W.rawHeight=$.raw.height,W.rawChannels=$.raw.channels,W.rawPremultiplied=!!$.raw.premultiplied,J.constructor){case Uint8Array:case Uint8ClampedArray:W.rawDepth="uchar";break;case Int8Array:W.rawDepth="char";break;case Uint16Array:W.rawDepth="ushort";break;case Int16Array:W.rawDepth="short";break;case Uint32Array:W.rawDepth="uint";break;case Int32Array:W.rawDepth="int";break;case Float32Array:W.rawDepth="float";break;case Float64Array:W.rawDepth="double";break;default:W.rawDepth="uchar";break}else throw new Error("Expected width, height and channels for raw pixel input");if(K.defined($.animated))if(K.bool($.animated))W.pages=$.animated?-1:1;else throw K.invalidParameterError("animated","boolean",$.animated);if(K.defined($.pages))if(K.integer($.pages)&&K.inRange($.pages,-1,1e5))W.pages=$.pages;else throw K.invalidParameterError("pages","integer between -1 and 100000",$.pages);if(K.defined($.page))if(K.integer($.page)&&K.inRange($.page,0,1e5))W.page=$.page;else throw K.invalidParameterError("page","integer between 0 and 100000",$.page);if(K.defined($.level))if(K.integer($.level)&&K.inRange($.level,0,256))W.level=$.level;else throw K.invalidParameterError("level","integer between 0 and 256",$.level);if(K.defined($.subifd))if(K.integer($.subifd)&&K.inRange($.subifd,-1,1e5))W.subifd=$.subifd;else throw K.invalidParameterError("subifd","integer between -1 and 100000",$.subifd);if(K.defined($.create))if(K.object($.create)&&K.integer($.create.width)&&$.create.width>0&&K.integer($.create.height)&&$.create.height>0&&K.integer($.create.channels)){if(W.createWidth=$.create.width,W.createHeight=$.create.height,W.createChannels=$.create.channels,K.defined($.create.noise)){if(!K.object($.create.noise))throw new Error("Expected noise to be an object");if(!K.inArray($.create.noise.type,["gaussian"]))throw new Error("Only gaussian noise is supported at the moment");if(!K.inRange($.create.channels,1,4))throw K.invalidParameterError("create.channels","number between 1 and 4",$.create.channels);if(W.createNoiseType=$.create.noise.type,K.number($.create.noise.mean)&&K.inRange($.create.noise.mean,0,1e4))W.createNoiseMean=$.create.noise.mean;else throw K.invalidParameterError("create.noise.mean","number between 0 and 10000",$.create.noise.mean);if(K.number($.create.noise.sigma)&&K.inRange($.create.noise.sigma,0,1e4))W.createNoiseSigma=$.create.noise.sigma;else throw K.invalidParameterError("create.noise.sigma","number between 0 and 10000",$.create.noise.sigma)}else if(K.defined($.create.background)){if(!K.inRange($.create.channels,3,4))throw K.invalidParameterError("create.channels","number between 3 and 4",$.create.channels);const Z=E3($.create.background);W.createBackground=[Z.red(),Z.green(),Z.blue(),Math.round(Z.alpha()*255)]}else throw new Error("Expected valid noise or background to create a new input image");delete W.buffer}else throw new Error("Expected valid width, height and channels to create a new input image");if(K.defined($.text))if(K.object($.text)&&K.string($.text.text)){if(W.textValue=$.text.text,K.defined($.text.height)&&K.defined($.text.dpi))throw new Error("Expected only one of dpi or height");if(K.defined($.text.font))if(K.string($.text.font))W.textFont=$.text.font;else throw K.invalidParameterError("text.font","string",$.text.font);if(K.defined($.text.fontfile))if(K.string($.text.fontfile))W.textFontfile=$.text.fontfile;else throw K.invalidParameterError("text.fontfile","string",$.text.fontfile);if(K.defined($.text.width))if(K.integer($.text.width)&&$.text.width>0)W.textWidth=$.text.width;else throw K.invalidParameterError("text.width","positive integer",$.text.width);if(K.defined($.text.height))if(K.integer($.text.height)&&$.text.height>0)W.textHeight=$.text.height;else throw K.invalidParameterError("text.height","positive integer",$.text.height);if(K.defined($.text.align))if(K.string($.text.align)&&K.string(this.constructor.align[$.text.align]))W.textAlign=this.constructor.align[$.text.align];else throw K.invalidParameterError("text.align","valid alignment",$.text.align);if(K.defined($.text.justify))if(K.bool($.text.justify))W.textJustify=$.text.justify;else throw K.invalidParameterError("text.justify","boolean",$.text.justify);if(K.defined($.text.dpi))if(K.integer($.text.dpi)&&K.inRange($.text.dpi,1,1e6))W.textDpi=$.text.dpi;else throw K.invalidParameterError("text.dpi","integer between 1 and 1000000",$.text.dpi);if(K.defined($.text.rgba))if(K.bool($.text.rgba))W.textRgba=$.text.rgba;else throw K.invalidParameterError("text.rgba","bool",$.text.rgba);if(K.defined($.text.spacing))if(K.integer($.text.spacing)&&K.inRange($.text.spacing,-1e6,1e6))W.textSpacing=$.text.spacing;else throw K.invalidParameterError("text.spacing","integer between -1000000 and 1000000",$.text.spacing);if(K.defined($.text.wrap))if(K.string($.text.wrap)&&K.inArray($.text.wrap,["word","char","word-char","none"]))W.textWrap=$.text.wrap;else throw K.invalidParameterError("text.wrap","one of: word, char, word-char, none",$.text.wrap);delete W.buffer}else throw new Error("Expected a valid string to create an image with text.")}else if(K.defined($))throw new Error("Invalid input options "+$);return W},z3=function(J,$,q){if(Array.isArray(this.options.input.buffer))if(K.buffer(J)){if(this.options.input.buffer.length===0)this.on("finish",()=>{this.streamInFinished=!0});this.options.input.buffer.push(J),q()}else q(new Error("Non-Buffer data on Writable Stream"));else q(new Error("Unexpected data on Writable Stream"))},D3=function(){if(this._isStreamInput())this.options.input.buffer=Buffer.concat(this.options.input.buffer)},C3=function(){return Array.isArray(this.options.input.buffer)},S3=function(J){const $=Error();if(K.fn(J)){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),m.metadata(this.options,(q,W)=>{if(q)J(K.nativeError(q,$));else J(null,W)})});else m.metadata(this.options,(q,W)=>{if(q)J(K.nativeError(q,$));else J(null,W)});return this}else if(this._isStreamInput())return new Promise((q,W)=>{const Z=()=>{this._flattenBufferIn(),m.metadata(this.options,(U,B)=>{if(U)W(K.nativeError(U,$));else q(B)})};if(this.writableFinished)Z();else this.once("finish",Z)});else return new Promise((q,W)=>{m.metadata(this.options,(Z,U)=>{if(Z)W(K.nativeError(Z,$));else q(U)})})},k3=function(J){const $=Error();if(K.fn(J)){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),m.stats(this.options,(q,W)=>{if(q)J(K.nativeError(q,$));else J(null,W)})});else m.stats(this.options,(q,W)=>{if(q)J(K.nativeError(q,$));else J(null,W)});return this}else if(this._isStreamInput())return new Promise((q,W)=>{this.on("finish",function(){this._flattenBufferIn(),m.stats(this.options,(Z,U)=>{if(Z)W(K.nativeError(Z,$));else q(U)})})});else return new Promise((q,W)=>{m.stats(this.options,(Z,U)=>{if(Z)W(K.nativeError(Z,$));else q(U)})})},E3=w2(),K=d(),m=q2(),T3={left:"low",center:"centre",centre:"centre",right:"high"};k0.exports=function(J){Object.assign(J.prototype,{_inputOptionsFromObject:S0,_createInputDescriptor:w3,_write:z3,_flattenBufferIn:D3,_isStreamInput:C3,metadata:S3,stats:k3}),J.align=T3}});var b0=L((c9,O0)=>{var p2=function(J){return J.angle%360!==0||J.useExifOrientation===!0||J.rotationAngle!==0},z2=function(J){return J.width!==-1||J.height!==-1},f3=function(J,$,q){if(z2(this.options))this.options.debuglog("ignoring previous resize options");if(this.options.widthPost!==-1)this.options.debuglog("operation order will be: extract, resize, extract");if(A.defined(J))if(A.object(J)&&!A.defined(q))q=J;else if(A.integer(J)&&J>0)this.options.width=J;else throw A.invalidParameterError("width","positive integer",J);else this.options.width=-1;if(A.defined($))if(A.integer($)&&$>0)this.options.height=$;else throw A.invalidParameterError("height","positive integer",$);else this.options.height=-1;if(A.object(q)){if(A.defined(q.width))if(A.integer(q.width)&&q.width>0)this.options.width=q.width;else throw A.invalidParameterError("width","positive integer",q.width);if(A.defined(q.height))if(A.integer(q.height)&&q.height>0)this.options.height=q.height;else throw A.invalidParameterError("height","positive integer",q.height);if(A.defined(q.fit)){const W=x3[q.fit];if(A.string(W))this.options.canvas=W;else throw A.invalidParameterError("fit","valid fit",q.fit)}if(A.defined(q.position)){const W=A.integer(q.position)?q.position:v0[q.position]||d0[q.position]||f0[q.position];if(A.integer(W)&&(A.inRange(W,0,8)||A.inRange(W,16,17)))this.options.position=W;else throw A.invalidParameterError("position","valid position/gravity/strategy",q.position)}if(this._setBackgroundColourOption("resizeBackground",q.background),A.defined(q.kernel))if(A.string(n2[q.kernel]))this.options.kernel=n2[q.kernel];else throw A.invalidParameterError("kernel","valid kernel name",q.kernel);if(A.defined(q.withoutEnlargement))this._setBooleanOption("withoutEnlargement",q.withoutEnlargement);if(A.defined(q.withoutReduction))this._setBooleanOption("withoutReduction",q.withoutReduction);if(A.defined(q.fastShrinkOnLoad))this._setBooleanOption("fastShrinkOnLoad",q.fastShrinkOnLoad)}if(p2(this.options)&&z2(this.options))this.options.rotateBeforePreExtract=!0;return this},d3=function(J){if(A.integer(J)&&J>0)this.options.extendTop=J,this.options.extendBottom=J,this.options.extendLeft=J,this.options.extendRight=J;else if(A.object(J)){if(A.defined(J.top))if(A.integer(J.top)&&J.top>=0)this.options.extendTop=J.top;else throw A.invalidParameterError("top","positive integer",J.top);if(A.defined(J.bottom))if(A.integer(J.bottom)&&J.bottom>=0)this.options.extendBottom=J.bottom;else throw A.invalidParameterError("bottom","positive integer",J.bottom);if(A.defined(J.left))if(A.integer(J.left)&&J.left>=0)this.options.extendLeft=J.left;else throw A.invalidParameterError("left","positive integer",J.left);if(A.defined(J.right))if(A.integer(J.right)&&J.right>=0)this.options.extendRight=J.right;else throw A.invalidParameterError("right","positive integer",J.right);if(this._setBackgroundColourOption("extendBackground",J.background),A.defined(J.extendWith))if(A.string(x0[J.extendWith]))this.options.extendWith=x0[J.extendWith];else throw A.invalidParameterError("extendWith","one of: background, copy, repeat, mirror",J.extendWith)}else throw A.invalidParameterError("extend","integer or object",J);return this},v3=function(J){const $=z2(this.options)||this.options.widthPre!==-1?"Post":"Pre";if(this.options[`width${$}`]!==-1)this.options.debuglog("ignoring previous extract options");if(["left","top","width","height"].forEach(function(q){const W=J[q];if(A.integer(W)&&W>=0)this.options[q+(q==="left"||q==="top"?"Offset":"")+$]=W;else throw A.invalidParameterError(q,"integer",W)},this),p2(this.options)&&!z2(this.options)){if(this.options.widthPre===-1||this.options.widthPost===-1)this.options.rotateBeforePreExtract=!0}return this},O3=function(J){if(this.options.trimThreshold=10,A.defined(J))if(A.object(J)){if(A.defined(J.background))this._setBackgroundColourOption("trimBackground",J.background);if(A.defined(J.threshold))if(A.number(J.threshold)&&J.threshold>=0)this.options.trimThreshold=J.threshold;else throw A.invalidParameterError("threshold","positive number",J.threshold);if(A.defined(J.lineArt))this._setBooleanOption("trimLineArt",J.lineArt)}else throw A.invalidParameterError("trim","object",J);if(p2(this.options))this.options.rotateBeforePreExtract=!0;return this},A=d(),f0={center:0,centre:0,north:1,east:2,south:3,west:4,northeast:5,southeast:6,southwest:7,northwest:8},d0={top:1,right:2,bottom:3,left:4,"right top":5,"right bottom":6,"left bottom":7,"left top":8},x0={background:"background",copy:"copy",repeat:"repeat",mirror:"mirror"},v0={entropy:16,attention:17},n2={nearest:"nearest",linear:"linear",cubic:"cubic",mitchell:"mitchell",lanczos2:"lanczos2",lanczos3:"lanczos3"},M3={contain:"contain",cover:"cover",fill:"fill",inside:"inside",outside:"outside"},x3={contain:"embed",cover:"crop",fill:"ignore_aspect",inside:"max",outside:"min"};O0.exports=function(J){Object.assign(J.prototype,{resize:f3,extend:d3,extract:v3,trim:O3}),J.gravity=f0,J.strategy=v0,J.kernel=n2,J.fit=M3,J.position=d0}});var g0=L((a9,h0)=>{var b3=function(J){if(!Array.isArray(J))throw _.invalidParameterError("images to composite","array",J);return this.options.composite=J.map(($)=>{if(!_.object($))throw _.invalidParameterError("image to composite","object",$);const q=this._inputOptionsFromObject($),W={input:this._createInputDescriptor($.input,q,{allowStream:!1}),blend:"over",tile:!1,left:0,top:0,hasOffset:!1,gravity:0,premultiplied:!1};if(_.defined($.blend))if(_.string(s2[$.blend]))W.blend=s2[$.blend];else throw _.invalidParameterError("blend","valid blend name",$.blend);if(_.defined($.tile))if(_.bool($.tile))W.tile=$.tile;else throw _.invalidParameterError("tile","boolean",$.tile);if(_.defined($.left))if(_.integer($.left))W.left=$.left;else throw _.invalidParameterError("left","integer",$.left);if(_.defined($.top))if(_.integer($.top))W.top=$.top;else throw _.invalidParameterError("top","integer",$.top);if(_.defined($.top)!==_.defined($.left))throw new Error("Expected both left and top to be set");else W.hasOffset=_.integer($.top)&&_.integer($.left);if(_.defined($.gravity))if(_.integer($.gravity)&&_.inRange($.gravity,0,8))W.gravity=$.gravity;else if(_.string($.gravity)&&_.integer(this.constructor.gravity[$.gravity]))W.gravity=this.constructor.gravity[$.gravity];else throw _.invalidParameterError("gravity","valid gravity",$.gravity);if(_.defined($.premultiplied))if(_.bool($.premultiplied))W.premultiplied=$.premultiplied;else throw _.invalidParameterError("premultiplied","boolean",$.premultiplied);return W}),this},_=d(),s2={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"};h0.exports=function(J){J.prototype.composite=b3,J.blend=s2}});var u0=L((r9,m0)=>{var g3=function(J,$){if(this.options.useExifOrientation||this.options.angle||this.options.rotationAngle)this.options.debuglog("ignoring previous rotate options");if(!I.defined(J))this.options.useExifOrientation=!0;else if(I.integer(J)&&!(J%90))this.options.angle=J;else if(I.number(J)){if(this.options.rotationAngle=J,I.object($)&&$.background){const q=h3($.background);this.options.rotationBackground=[q.red(),q.green(),q.blue(),Math.round(q.alpha()*255)]}}else throw I.invalidParameterError("angle","numeric",J);return this},m3=function(J){return this.options.flip=I.bool(J)?J:!0,this},u3=function(J){return this.options.flop=I.bool(J)?J:!0,this},l3=function(J,$){const q=[].concat(...J);if(q.length===4&&q.every(I.number))this.options.affineMatrix=q;else throw I.invalidParameterError("matrix","1x4 or 2x2 array",J);if(I.defined($))if(I.object($)){if(this._setBackgroundColourOption("affineBackground",$.background),I.defined($.idx))if(I.number($.idx))this.options.affineIdx=$.idx;else throw I.invalidParameterError("options.idx","number",$.idx);if(I.defined($.idy))if(I.number($.idy))this.options.affineIdy=$.idy;else throw I.invalidParameterError("options.idy","number",$.idy);if(I.defined($.odx))if(I.number($.odx))this.options.affineOdx=$.odx;else throw I.invalidParameterError("options.odx","number",$.odx);if(I.defined($.ody))if(I.number($.ody))this.options.affineOdy=$.ody;else throw I.invalidParameterError("options.ody","number",$.ody);if(I.defined($.interpolator))if(I.inArray($.interpolator,Object.values(this.constructor.interpolators)))this.options.affineInterpolator=$.interpolator;else throw I.invalidParameterError("options.interpolator","valid interpolator name",$.interpolator)}else throw I.invalidParameterError("options","object",$);return this},c3=function(J,$,q){if(!I.defined(J))this.options.sharpenSigma=-1;else if(I.bool(J))this.options.sharpenSigma=J?-1:0;else if(I.number(J)&&I.inRange(J,0.01,1e4)){if(this.options.sharpenSigma=J,I.defined($))if(I.number($)&&I.inRange($,0,1e4))this.options.sharpenM1=$;else throw I.invalidParameterError("flat","number between 0 and 10000",$);if(I.defined(q))if(I.number(q)&&I.inRange(q,0,1e4))this.options.sharpenM2=q;else throw I.invalidParameterError("jagged","number between 0 and 10000",q)}else if(I.plainObject(J)){if(I.number(J.sigma)&&I.inRange(J.sigma,0.000001,10))this.options.sharpenSigma=J.sigma;else throw I.invalidParameterError("options.sigma","number between 0.000001 and 10",J.sigma);if(I.defined(J.m1))if(I.number(J.m1)&&I.inRange(J.m1,0,1e6))this.options.sharpenM1=J.m1;else throw I.invalidParameterError("options.m1","number between 0 and 1000000",J.m1);if(I.defined(J.m2))if(I.number(J.m2)&&I.inRange(J.m2,0,1e6))this.options.sharpenM2=J.m2;else throw I.invalidParameterError("options.m2","number between 0 and 1000000",J.m2);if(I.defined(J.x1))if(I.number(J.x1)&&I.inRange(J.x1,0,1e6))this.options.sharpenX1=J.x1;else throw I.invalidParameterError("options.x1","number between 0 and 1000000",J.x1);if(I.defined(J.y2))if(I.number(J.y2)&&I.inRange(J.y2,0,1e6))this.options.sharpenY2=J.y2;else throw I.invalidParameterError("options.y2","number between 0 and 1000000",J.y2);if(I.defined(J.y3))if(I.number(J.y3)&&I.inRange(J.y3,0,1e6))this.options.sharpenY3=J.y3;else throw I.invalidParameterError("options.y3","number between 0 and 1000000",J.y3)}else throw I.invalidParameterError("sigma","number between 0.01 and 10000",J);return this},a3=function(J){if(!I.defined(J))this.options.medianSize=3;else if(I.integer(J)&&I.inRange(J,1,1000))this.options.medianSize=J;else throw I.invalidParameterError("size","integer between 1 and 1000",J);return this},r3=function(J){if(!I.defined(J))this.options.blurSigma=-1;else if(I.bool(J))this.options.blurSigma=J?-1:0;else if(I.number(J)&&I.inRange(J,0.3,1000))this.options.blurSigma=J;else throw I.invalidParameterError("sigma","number between 0.3 and 1000",J);return this},e3=function(J){if(this.options.flatten=I.bool(J)?J:!0,I.object(J))this._setBackgroundColourOption("flattenBackground",J.background);return this},n3=function(){return this.options.unflatten=!0,this},p3=function(J,$){if(!I.defined(J))this.options.gamma=2.2;else if(I.number(J)&&I.inRange(J,1,3))this.options.gamma=J;else throw I.invalidParameterError("gamma","number between 1.0 and 3.0",J);if(!I.defined($))this.options.gammaOut=this.options.gamma;else if(I.number($)&&I.inRange($,1,3))this.options.gammaOut=$;else throw I.invalidParameterError("gammaOut","number between 1.0 and 3.0",$);return this},s3=function(J){if(this.options.negate=I.bool(J)?J:!0,I.plainObject(J)&&"alpha"in J)if(!I.bool(J.alpha))throw I.invalidParameterError("alpha","should be boolean value",J.alpha);else this.options.negateAlpha=J.alpha;return this},t3=function(J){if(I.plainObject(J)){if(I.defined(J.lower))if(I.number(J.lower)&&I.inRange(J.lower,0,99))this.options.normaliseLower=J.lower;else throw I.invalidParameterError("lower","number between 0 and 99",J.lower);if(I.defined(J.upper))if(I.number(J.upper)&&I.inRange(J.upper,1,100))this.options.normaliseUpper=J.upper;else throw I.invalidParameterError("upper","number between 1 and 100",J.upper)}if(this.options.normaliseLower>=this.options.normaliseUpper)throw I.invalidParameterError("range","lower to be less than upper",`${this.options.normaliseLower} >= ${this.options.normaliseUpper}`);return this.options.normalise=!0,this},i3=function(J){return this.normalise(J)},o3=function(J){if(I.plainObject(J)){if(I.integer(J.width)&&J.width>0)this.options.claheWidth=J.width;else throw I.invalidParameterError("width","integer greater than zero",J.width);if(I.integer(J.height)&&J.height>0)this.options.claheHeight=J.height;else throw I.invalidParameterError("height","integer greater than zero",J.height);if(I.defined(J.maxSlope))if(I.integer(J.maxSlope)&&I.inRange(J.maxSlope,0,100))this.options.claheMaxSlope=J.maxSlope;else throw I.invalidParameterError("maxSlope","integer between 0 and 100",J.maxSlope)}else throw I.invalidParameterError("options","plain object",J);return this},J8=function(J){if(!I.object(J)||!Array.isArray(J.kernel)||!I.integer(J.width)||!I.integer(J.height)||!I.inRange(J.width,3,1001)||!I.inRange(J.height,3,1001)||J.height*J.width!==J.kernel.length)throw new Error("Invalid convolution kernel");if(!I.integer(J.scale))J.scale=J.kernel.reduce(function($,q){return $+q},0);if(J.scale<1)J.scale=1;if(!I.integer(J.offset))J.offset=0;return this.options.convKernel=J,this},$8=function(J,$){if(!I.defined(J))this.options.threshold=128;else if(I.bool(J))this.options.threshold=J?128:0;else if(I.integer(J)&&I.inRange(J,0,255))this.options.threshold=J;else throw I.invalidParameterError("threshold","integer between 0 and 255",J);if(!I.object($)||$.greyscale===!0||$.grayscale===!0)this.options.thresholdGrayscale=!0;else this.options.thresholdGrayscale=!1;return this},q8=function(J,$,q){if(this.options.boolean=this._createInputDescriptor(J,q),I.string($)&&I.inArray($,["and","or","eor"]))this.options.booleanOp=$;else throw I.invalidParameterError("operator","one of: and, or, eor",$);return this},W8=function(J,$){if(!I.defined(J)&&I.number($))J=1;else if(I.number(J)&&!I.defined($))$=0;if(!I.defined(J))this.options.linearA=[];else if(I.number(J))this.options.linearA=[J];else if(Array.isArray(J)&&J.length&&J.every(I.number))this.options.linearA=J;else throw I.invalidParameterError("a","number or array of numbers",J);if(!I.defined($))this.options.linearB=[];else if(I.number($))this.options.linearB=[$];else if(Array.isArray($)&&$.length&&$.every(I.number))this.options.linearB=$;else throw I.invalidParameterError("b","number or array of numbers",$);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},Z8=function(J){if(!Array.isArray(J)||J.length!==3||J[0].length!==3||J[1].length!==3||J[2].length!==3)throw new Error("Invalid recombination matrix");return this.options.recombMatrix=[J[0][0],J[0][1],J[0][2],J[1][0],J[1][1],J[1][2],J[2][0],J[2][1],J[2][2]].map(Number),this},Q8=function(J){if(!I.plainObject(J))throw I.invalidParameterError("options","plain object",J);if("brightness"in J)if(I.number(J.brightness)&&J.brightness>=0)this.options.brightness=J.brightness;else throw I.invalidParameterError("brightness","number above zero",J.brightness);if("saturation"in J)if(I.number(J.saturation)&&J.saturation>=0)this.options.saturation=J.saturation;else throw I.invalidParameterError("saturation","number above zero",J.saturation);if("hue"in J)if(I.integer(J.hue))this.options.hue=J.hue%360;else throw I.invalidParameterError("hue","number",J.hue);if("lightness"in J)if(I.number(J.lightness))this.options.lightness=J.lightness;else throw I.invalidParameterError("lightness","number",J.lightness);return this},h3=w2(),I=d();m0.exports=function(J){Object.assign(J.prototype,{rotate:g3,flip:m3,flop:u3,affine:l3,sharpen:c3,median:a3,blur:r3,flatten:e3,unflatten:n3,gamma:p3,negate:s3,normalise:t3,normalize:i3,clahe:o3,convolve:J8,threshold:$8,boolean:q8,linear:W8,recomb:Z8,modulate:Q8})}});var a0=L((e9,c0)=>{var B8=function(J){return this._setBackgroundColourOption("tint",J),this},Y8=function(J){return this.options.greyscale=b.bool(J)?J:!0,this},I8=function(J){return this.greyscale(J)},K8=function(J){if(!b.string(J))throw b.invalidParameterError("colourspace","string",J);return this.options.colourspacePipeline=J,this},F8=function(J){return this.pipelineColourspace(J)},G8=function(J){if(!b.string(J))throw b.invalidParameterError("colourspace","string",J);return this.options.colourspace=J,this},H8=function(J){return this.toColourspace(J)},N8=function(J,$){if(b.defined($))if(b.object($)||b.string($)){const q=U8($);this.options[J]=[q.red(),q.green(),q.blue(),Math.round(q.alpha()*255)]}else throw b.invalidParameterError("background","object or string",$)},U8=w2(),b=d(),l0={multiband:"multiband","b-w":"b-w",bw:"b-w",cmyk:"cmyk",srgb:"srgb"};c0.exports=function(J){Object.assign(J.prototype,{tint:B8,greyscale:Y8,grayscale:I8,pipelineColourspace:K8,pipelineColorspace:F8,toColourspace:G8,toColorspace:H8,_setBackgroundColourOption:N8}),J.colourspace=l0,J.colorspace=l0}});var e0=L((n9,r0)=>{var X8=function(){return this.options.removeAlpha=!0,this},A8=function(J){if(v.defined(J))if(v.number(J)&&v.inRange(J,0,1))this.options.ensureAlpha=J;else throw v.invalidParameterError("alpha","number between 0 and 1",J);else this.options.ensureAlpha=1;return this},V8=function(J){const $={red:0,green:1,blue:2,alpha:3};if(Object.keys($).includes(J))J=$[J];if(v.integer(J)&&v.inRange(J,0,4))this.options.extractChannel=J;else throw v.invalidParameterError("channel","integer or one of: red, green, blue, alpha",J);return this},L8=function(J,$){if(Array.isArray(J))J.forEach(function(q){this.options.joinChannelIn.push(this._createInputDescriptor(q,$))},this);else this.options.joinChannelIn.push(this._createInputDescriptor(J,$));return this},R8=function(J){if(v.string(J)&&v.inArray(J,["and","or","eor"]))this.options.bandBoolOp=J;else throw v.invalidParameterError("boolOp","one of: and, or, eor",J);return this},v=d(),P8={and:"and",or:"or",eor:"eor"};r0.exports=function(J){Object.assign(J.prototype,{removeAlpha:X8,ensureAlpha:A8,extractChannel:V8,joinChannel:L8,bandbool:R8}),J.bool=P8}});var o0=L((p9,i0)=>{var y8=function(J,$){let q;if(!Q.string(J))q=new Error("Missing output file path");else if(Q.string(this.options.input.file)&&t2.resolve(this.options.input.file)===t2.resolve(J))q=new Error("Cannot use same file for input and output");else if(_8.test(t2.extname(J))&&!this.constructor.format.jp2k.output.file)q=p0();if(q)if(Q.fn($))$(q);else return Promise.reject(q);else{this.options.fileOut=J;const W=Error();return this._pipeline($,W)}return this},j8=function(J,$){if(Q.object(J))this._setBooleanOption("resolveWithObject",J.resolveWithObject);else if(this.options.resolveWithObject)this.options.resolveWithObject=!1;this.options.fileOut="";const q=Error();return this._pipeline(Q.fn(J)?J:$,q)},E8=function(){return this.options.keepMetadata|=1,this},T8=function(J){if(Q.object(J))for(let[$,q]of Object.entries(J))if(Q.object(q))for(let[W,Z]of Object.entries(q))if(Q.string(Z))this.options.withExif[`exif-${$.toLowerCase()}-${W}`]=Z;else throw Q.invalidParameterError(`${$}.${W}`,"string",Z);else throw Q.invalidParameterError($,"object",q);else throw Q.invalidParameterError("exif","object",J);return this.options.withExifMerge=!1,this.keepExif()},w8=function(J){return this.withExif(J),this.options.withExifMerge=!0,this},z8=function(){return this.options.keepMetadata|=8,this},D8=function(J,$){if(Q.string(J))this.options.withIccProfile=J;else throw Q.invalidParameterError("icc","string",J);if(this.keepIccProfile(),Q.object($)){if(Q.defined($.attach))if(Q.bool($.attach)){if(!$.attach)this.options.keepMetadata&=~8}else throw Q.invalidParameterError("attach","boolean",$.attach)}return this},C8=function(){return this.options.keepMetadata=31,this},S8=function(J){if(this.keepMetadata(),this.withIccProfile("srgb"),Q.object(J)){if(Q.defined(J.orientation))if(Q.integer(J.orientation)&&Q.inRange(J.orientation,1,8))this.options.withMetadataOrientation=J.orientation;else throw Q.invalidParameterError("orientation","integer between 1 and 8",J.orientation);if(Q.defined(J.density))if(Q.number(J.density)&&J.density>0)this.options.withMetadataDensity=J.density;else throw Q.invalidParameterError("density","positive number",J.density);if(Q.defined(J.icc))this.withIccProfile(J.icc);if(Q.defined(J.exif))this.withExifMerge(J.exif)}return this},k8=function(J,$){const q=n0.get((Q.object(J)&&Q.string(J.id)?J.id:J).toLowerCase());if(!q)throw Q.invalidParameterError("format",`one of: ${[...n0.keys()].join(", ")}`,J);return this[q]($)},M8=function(J){if(Q.object(J)){if(Q.defined(J.quality))if(Q.integer(J.quality)&&Q.inRange(J.quality,1,100))this.options.jpegQuality=J.quality;else throw Q.invalidParameterError("quality","integer between 1 and 100",J.quality);if(Q.defined(J.progressive))this._setBooleanOption("jpegProgressive",J.progressive);if(Q.defined(J.chromaSubsampling))if(Q.string(J.chromaSubsampling)&&Q.inArray(J.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jpegChromaSubsampling=J.chromaSubsampling;else throw Q.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",J.chromaSubsampling);const $=Q.bool(J.optimizeCoding)?J.optimizeCoding:J.optimiseCoding;if(Q.defined($))this._setBooleanOption("jpegOptimiseCoding",$);if(Q.defined(J.mozjpeg))if(Q.bool(J.mozjpeg)){if(J.mozjpeg)this.options.jpegTrellisQuantisation=!0,this.options.jpegOvershootDeringing=!0,this.options.jpegOptimiseScans=!0,this.options.jpegProgressive=!0,this.options.jpegQuantisationTable=3}else throw Q.invalidParameterError("mozjpeg","boolean",J.mozjpeg);const q=Q.bool(J.trellisQuantization)?J.trellisQuantization:J.trellisQuantisation;if(Q.defined(q))this._setBooleanOption("jpegTrellisQuantisation",q);if(Q.defined(J.overshootDeringing))this._setBooleanOption("jpegOvershootDeringing",J.overshootDeringing);const W=Q.bool(J.optimizeScans)?J.optimizeScans:J.optimiseScans;if(Q.defined(W)){if(this._setBooleanOption("jpegOptimiseScans",W),W)this.options.jpegProgressive=!0}const Z=Q.number(J.quantizationTable)?J.quantizationTable:J.quantisationTable;if(Q.defined(Z))if(Q.integer(Z)&&Q.inRange(Z,0,8))this.options.jpegQuantisationTable=Z;else throw Q.invalidParameterError("quantisationTable","integer between 0 and 8",Z)}return this._updateFormatOut("jpeg",J)},x8=function(J){if(Q.object(J)){if(Q.defined(J.progressive))this._setBooleanOption("pngProgressive",J.progressive);if(Q.defined(J.compressionLevel))if(Q.integer(J.compressionLevel)&&Q.inRange(J.compressionLevel,0,9))this.options.pngCompressionLevel=J.compressionLevel;else throw Q.invalidParameterError("compressionLevel","integer between 0 and 9",J.compressionLevel);if(Q.defined(J.adaptiveFiltering))this._setBooleanOption("pngAdaptiveFiltering",J.adaptiveFiltering);const $=J.colours||J.colors;if(Q.defined($))if(Q.integer($)&&Q.inRange($,2,256))this.options.pngBitdepth=s0($);else throw Q.invalidParameterError("colours","integer between 2 and 256",$);if(Q.defined(J.palette))this._setBooleanOption("pngPalette",J.palette);else if([J.quality,J.effort,J.colours,J.colors,J.dither].some(Q.defined))this._setBooleanOption("pngPalette",!0);if(this.options.pngPalette){if(Q.defined(J.quality))if(Q.integer(J.quality)&&Q.inRange(J.quality,0,100))this.options.pngQuality=J.quality;else throw Q.invalidParameterError("quality","integer between 0 and 100",J.quality);if(Q.defined(J.effort))if(Q.integer(J.effort)&&Q.inRange(J.effort,1,10))this.options.pngEffort=J.effort;else throw Q.invalidParameterError("effort","integer between 1 and 10",J.effort);if(Q.defined(J.dither))if(Q.number(J.dither)&&Q.inRange(J.dither,0,1))this.options.pngDither=J.dither;else throw Q.invalidParameterError("dither","number between 0.0 and 1.0",J.dither)}}return this._updateFormatOut("png",J)},f8=function(J){if(Q.object(J)){if(Q.defined(J.quality))if(Q.integer(J.quality)&&Q.inRange(J.quality,1,100))this.options.webpQuality=J.quality;else throw Q.invalidParameterError("quality","integer between 1 and 100",J.quality);if(Q.defined(J.alphaQuality))if(Q.integer(J.alphaQuality)&&Q.inRange(J.alphaQuality,0,100))this.options.webpAlphaQuality=J.alphaQuality;else throw Q.invalidParameterError("alphaQuality","integer between 0 and 100",J.alphaQuality);if(Q.defined(J.lossless))this._setBooleanOption("webpLossless",J.lossless);if(Q.defined(J.nearLossless))this._setBooleanOption("webpNearLossless",J.nearLossless);if(Q.defined(J.smartSubsample))this._setBooleanOption("webpSmartSubsample",J.smartSubsample);if(Q.defined(J.preset))if(Q.string(J.preset)&&Q.inArray(J.preset,["default","photo","picture","drawing","icon","text"]))this.options.webpPreset=J.preset;else throw Q.invalidParameterError("preset","one of: default, photo, picture, drawing, icon, text",J.preset);if(Q.defined(J.effort))if(Q.integer(J.effort)&&Q.inRange(J.effort,0,6))this.options.webpEffort=J.effort;else throw Q.invalidParameterError("effort","integer between 0 and 6",J.effort);if(Q.defined(J.minSize))this._setBooleanOption("webpMinSize",J.minSize);if(Q.defined(J.mixed))this._setBooleanOption("webpMixed",J.mixed)}return t0(J,this.options),this._updateFormatOut("webp",J)},d8=function(J){if(Q.object(J)){if(Q.defined(J.reuse))this._setBooleanOption("gifReuse",J.reuse);if(Q.defined(J.progressive))this._setBooleanOption("gifProgressive",J.progressive);const $=J.colours||J.colors;if(Q.defined($))if(Q.integer($)&&Q.inRange($,2,256))this.options.gifBitdepth=s0($);else throw Q.invalidParameterError("colours","integer between 2 and 256",$);if(Q.defined(J.effort))if(Q.number(J.effort)&&Q.inRange(J.effort,1,10))this.options.gifEffort=J.effort;else throw Q.invalidParameterError("effort","integer between 1 and 10",J.effort);if(Q.defined(J.dither))if(Q.number(J.dither)&&Q.inRange(J.dither,0,1))this.options.gifDither=J.dither;else throw Q.invalidParameterError("dither","number between 0.0 and 1.0",J.dither);if(Q.defined(J.interFrameMaxError))if(Q.number(J.interFrameMaxError)&&Q.inRange(J.interFrameMaxError,0,32))this.options.gifInterFrameMaxError=J.interFrameMaxError;else throw Q.invalidParameterError("interFrameMaxError","number between 0.0 and 32.0",J.interFrameMaxError);if(Q.defined(J.interPaletteMaxError))if(Q.number(J.interPaletteMaxError)&&Q.inRange(J.interPaletteMaxError,0,256))this.options.gifInterPaletteMaxError=J.interPaletteMaxError;else throw Q.invalidParameterError("interPaletteMaxError","number between 0.0 and 256.0",J.interPaletteMaxError)}return t0(J,this.options),this._updateFormatOut("gif",J)},v8=function(J){if(!this.constructor.format.jp2k.output.buffer)throw p0();if(Q.object(J)){if(Q.defined(J.quality))if(Q.integer(J.quality)&&Q.inRange(J.quality,1,100))this.options.jp2Quality=J.quality;else throw Q.invalidParameterError("quality","integer between 1 and 100",J.quality);if(Q.defined(J.lossless))if(Q.bool(J.lossless))this.options.jp2Lossless=J.lossless;else throw Q.invalidParameterError("lossless","boolean",J.lossless);if(Q.defined(J.tileWidth))if(Q.integer(J.tileWidth)&&Q.inRange(J.tileWidth,1,32768))this.options.jp2TileWidth=J.tileWidth;else throw Q.invalidParameterError("tileWidth","integer between 1 and 32768",J.tileWidth);if(Q.defined(J.tileHeight))if(Q.integer(J.tileHeight)&&Q.inRange(J.tileHeight,1,32768))this.options.jp2TileHeight=J.tileHeight;else throw Q.invalidParameterError("tileHeight","integer between 1 and 32768",J.tileHeight);if(Q.defined(J.chromaSubsampling))if(Q.string(J.chromaSubsampling)&&Q.inArray(J.chromaSubsampling,["4:2:0","4:4:4"]))this.options.jp2ChromaSubsampling=J.chromaSubsampling;else throw Q.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",J.chromaSubsampling)}return this._updateFormatOut("jp2",J)},t0=function(J,$){if(Q.object(J)&&Q.defined(J.loop))if(Q.integer(J.loop)&&Q.inRange(J.loop,0,65535))$.loop=J.loop;else throw Q.invalidParameterError("loop","integer between 0 and 65535",J.loop);if(Q.object(J)&&Q.defined(J.delay))if(Q.integer(J.delay)&&Q.inRange(J.delay,0,65535))$.delay=[J.delay];else if(Array.isArray(J.delay)&&J.delay.every(Q.integer)&&J.delay.every((q)=>Q.inRange(q,0,65535)))$.delay=J.delay;else throw Q.invalidParameterError("delay","integer or an array of integers between 0 and 65535",J.delay)},O8=function(J){if(Q.object(J)){if(Q.defined(J.quality))if(Q.integer(J.quality)&&Q.inRange(J.quality,1,100))this.options.tiffQuality=J.quality;else throw Q.invalidParameterError("quality","integer between 1 and 100",J.quality);if(Q.defined(J.bitdepth))if(Q.integer(J.bitdepth)&&Q.inArray(J.bitdepth,[1,2,4,8]))this.options.tiffBitdepth=J.bitdepth;else throw Q.invalidParameterError("bitdepth","1, 2, 4 or 8",J.bitdepth);if(Q.defined(J.tile))this._setBooleanOption("tiffTile",J.tile);if(Q.defined(J.tileWidth))if(Q.integer(J.tileWidth)&&J.tileWidth>0)this.options.tiffTileWidth=J.tileWidth;else throw Q.invalidParameterError("tileWidth","integer greater than zero",J.tileWidth);if(Q.defined(J.tileHeight))if(Q.integer(J.tileHeight)&&J.tileHeight>0)this.options.tiffTileHeight=J.tileHeight;else throw Q.invalidParameterError("tileHeight","integer greater than zero",J.tileHeight);if(Q.defined(J.miniswhite))this._setBooleanOption("tiffMiniswhite",J.miniswhite);if(Q.defined(J.pyramid))this._setBooleanOption("tiffPyramid",J.pyramid);if(Q.defined(J.xres))if(Q.number(J.xres)&&J.xres>0)this.options.tiffXres=J.xres;else throw Q.invalidParameterError("xres","number greater than zero",J.xres);if(Q.defined(J.yres))if(Q.number(J.yres)&&J.yres>0)this.options.tiffYres=J.yres;else throw Q.invalidParameterError("yres","number greater than zero",J.yres);if(Q.defined(J.compression))if(Q.string(J.compression)&&Q.inArray(J.compression,["none","jpeg","deflate","packbits","ccittfax4","lzw","webp","zstd","jp2k"]))this.options.tiffCompression=J.compression;else throw Q.invalidParameterError("compression","one of: none, jpeg, deflate, packbits, ccittfax4, lzw, webp, zstd, jp2k",J.compression);if(Q.defined(J.predictor))if(Q.string(J.predictor)&&Q.inArray(J.predictor,["none","horizontal","float"]))this.options.tiffPredictor=J.predictor;else throw Q.invalidParameterError("predictor","one of: none, horizontal, float",J.predictor);if(Q.defined(J.resolutionUnit))if(Q.string(J.resolutionUnit)&&Q.inArray(J.resolutionUnit,["inch","cm"]))this.options.tiffResolutionUnit=J.resolutionUnit;else throw Q.invalidParameterError("resolutionUnit","one of: inch, cm",J.resolutionUnit)}return this._updateFormatOut("tiff",J)},b8=function(J){return this.heif({...J,compression:"av1"})},h8=function(J){if(Q.object(J)){if(Q.string(J.compression)&&Q.inArray(J.compression,["av1","hevc"]))this.options.heifCompression=J.compression;else throw Q.invalidParameterError("compression","one of: av1, hevc",J.compression);if(Q.defined(J.quality))if(Q.integer(J.quality)&&Q.inRange(J.quality,1,100))this.options.heifQuality=J.quality;else throw Q.invalidParameterError("quality","integer between 1 and 100",J.quality);if(Q.defined(J.lossless))if(Q.bool(J.lossless))this.options.heifLossless=J.lossless;else throw Q.invalidParameterError("lossless","boolean",J.lossless);if(Q.defined(J.effort))if(Q.integer(J.effort)&&Q.inRange(J.effort,0,9))this.options.heifEffort=J.effort;else throw Q.invalidParameterError("effort","integer between 0 and 9",J.effort);if(Q.defined(J.chromaSubsampling))if(Q.string(J.chromaSubsampling)&&Q.inArray(J.chromaSubsampling,["4:2:0","4:4:4"]))this.options.heifChromaSubsampling=J.chromaSubsampling;else throw Q.invalidParameterError("chromaSubsampling","one of: 4:2:0, 4:4:4",J.chromaSubsampling);if(Q.defined(J.bitdepth))if(Q.integer(J.bitdepth)&&Q.inArray(J.bitdepth,[8,10,12])){if(J.bitdepth!==8&&this.constructor.versions.heif)throw Q.invalidParameterError("bitdepth when using prebuilt binaries",8,J.bitdepth);this.options.heifBitdepth=J.bitdepth}else throw Q.invalidParameterError("bitdepth","8, 10 or 12",J.bitdepth)}else throw Q.invalidParameterError("options","Object",J);return this._updateFormatOut("heif",J)},g8=function(J){if(Q.object(J)){if(Q.defined(J.quality))if(Q.integer(J.quality)&&Q.inRange(J.quality,1,100))this.options.jxlDistance=J.quality>=30?0.1+(100-J.quality)*0.09:0.017666666666666667*J.quality*J.quality-1.15*J.quality+25;else throw Q.invalidParameterError("quality","integer between 1 and 100",J.quality);else if(Q.defined(J.distance))if(Q.number(J.distance)&&Q.inRange(J.distance,0,15))this.options.jxlDistance=J.distance;else throw Q.invalidParameterError("distance","number between 0.0 and 15.0",J.distance);if(Q.defined(J.decodingTier))if(Q.integer(J.decodingTier)&&Q.inRange(J.decodingTier,0,4))this.options.jxlDecodingTier=J.decodingTier;else throw Q.invalidParameterError("decodingTier","integer between 0 and 4",J.decodingTier);if(Q.defined(J.lossless))if(Q.bool(J.lossless))this.options.jxlLossless=J.lossless;else throw Q.invalidParameterError("lossless","boolean",J.lossless);if(Q.defined(J.effort))if(Q.integer(J.effort)&&Q.inRange(J.effort,3,9))this.options.jxlEffort=J.effort;else throw Q.invalidParameterError("effort","integer between 3 and 9",J.effort)}return this._updateFormatOut("jxl",J)},m8=function(J){if(Q.object(J)){if(Q.defined(J.depth))if(Q.string(J.depth)&&Q.inArray(J.depth,["char","uchar","short","ushort","int","uint","float","complex","double","dpcomplex"]))this.options.rawDepth=J.depth;else throw Q.invalidParameterError("depth","one of: char, uchar, short, ushort, int, uint, float, complex, double, dpcomplex",J.depth)}return this._updateFormatOut("raw")},u8=function(J){if(Q.object(J)){if(Q.defined(J.size))if(Q.integer(J.size)&&Q.inRange(J.size,1,8192))this.options.tileSize=J.size;else throw Q.invalidParameterError("size","integer between 1 and 8192",J.size);if(Q.defined(J.overlap))if(Q.integer(J.overlap)&&Q.inRange(J.overlap,0,8192)){if(J.overlap>this.options.tileSize)throw Q.invalidParameterError("overlap",`<= size (${this.options.tileSize})`,J.overlap);this.options.tileOverlap=J.overlap}else throw Q.invalidParameterError("overlap","integer between 0 and 8192",J.overlap);if(Q.defined(J.container))if(Q.string(J.container)&&Q.inArray(J.container,["fs","zip"]))this.options.tileContainer=J.container;else throw Q.invalidParameterError("container","one of: fs, zip",J.container);if(Q.defined(J.layout))if(Q.string(J.layout)&&Q.inArray(J.layout,["dz","google","iiif","iiif3","zoomify"]))this.options.tileLayout=J.layout;else throw Q.invalidParameterError("layout","one of: dz, google, iiif, iiif3, zoomify",J.layout);if(Q.defined(J.angle))if(Q.integer(J.angle)&&!(J.angle%90))this.options.tileAngle=J.angle;else throw Q.invalidParameterError("angle","positive/negative multiple of 90",J.angle);if(this._setBackgroundColourOption("tileBackground",J.background),Q.defined(J.depth))if(Q.string(J.depth)&&Q.inArray(J.depth,["onepixel","onetile","one"]))this.options.tileDepth=J.depth;else throw Q.invalidParameterError("depth","one of: onepixel, onetile, one",J.depth);if(Q.defined(J.skipBlanks))if(Q.integer(J.skipBlanks)&&Q.inRange(J.skipBlanks,-1,65535))this.options.tileSkipBlanks=J.skipBlanks;else throw Q.invalidParameterError("skipBlanks","integer between -1 and 255/65535",J.skipBlanks);else if(Q.defined(J.layout)&&J.layout==="google")this.options.tileSkipBlanks=5;const $=Q.bool(J.center)?J.center:J.centre;if(Q.defined($))this._setBooleanOption("tileCentre",$);if(Q.defined(J.id))if(Q.string(J.id))this.options.tileId=J.id;else throw Q.invalidParameterError("id","string",J.id);if(Q.defined(J.basename))if(Q.string(J.basename))this.options.tileBasename=J.basename;else throw Q.invalidParameterError("basename","string",J.basename)}if(Q.inArray(this.options.formatOut,["jpeg","png","webp"]))this.options.tileFormat=this.options.formatOut;else if(this.options.formatOut!=="input")throw Q.invalidParameterError("format","one of: jpeg, png, webp",this.options.formatOut);return this._updateFormatOut("dz")},l8=function(J){if(!Q.plainObject(J))throw Q.invalidParameterError("options","object",J);if(Q.integer(J.seconds)&&Q.inRange(J.seconds,0,3600))this.options.timeoutSeconds=J.seconds;else throw Q.invalidParameterError("seconds","integer between 0 and 3600",J.seconds);return this},c8=function(J,$){if(!(Q.object($)&&$.force===!1))this.options.formatOut=J;return this},a8=function(J,$){if(Q.bool($))this.options[J]=$;else throw Q.invalidParameterError(J,"boolean",$)},r8=function(){if(!this.options.streamOut){this.options.streamOut=!0;const J=Error();this._pipeline(void 0,J)}},e8=function(J,$){if(typeof J==="function"){if(this._isStreamInput())this.on("finish",()=>{this._flattenBufferIn(),s.pipeline(this.options,(q,W,Z)=>{if(q)J(Q.nativeError(q,$));else J(null,W,Z)})});else s.pipeline(this.options,(q,W,Z)=>{if(q)J(Q.nativeError(q,$));else J(null,W,Z)});return this}else if(this.options.streamOut){if(this._isStreamInput()){if(this.once("finish",()=>{this._flattenBufferIn(),s.pipeline(this.options,(q,W,Z)=>{if(q)this.emit("error",Q.nativeError(q,$));else this.emit("info",Z),this.push(W);this.push(null),this.on("end",()=>this.emit("close"))})}),this.streamInFinished)this.emit("finish")}else s.pipeline(this.options,(q,W,Z)=>{if(q)this.emit("error",Q.nativeError(q,$));else this.emit("info",Z),this.push(W);this.push(null),this.on("end",()=>this.emit("close"))});return this}else if(this._isStreamInput())return new Promise((q,W)=>{this.once("finish",()=>{this._flattenBufferIn(),s.pipeline(this.options,(Z,U,B)=>{if(Z)W(Q.nativeError(Z,$));else if(this.options.resolveWithObject)q({data:U,info:B});else q(U)})})});else return new Promise((q,W)=>{s.pipeline(this.options,(Z,U,B)=>{if(Z)W(Q.nativeError(Z,$));else if(this.options.resolveWithObject)q({data:U,info:B});else q(U)})})},t2=import.meta.require("path"),Q=d(),s=q2(),n0=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"]]),_8=/\.(jp[2x]|j2[kc])$/i,p0=()=>new Error("JP2 output requires libvips with support for OpenJPEG"),s0=(J)=>1<<31-Math.clz32(Math.ceil(Math.log2(J)));i0.exports=function(J){Object.assign(J.prototype,{toFile:y8,toBuffer:j8,keepExif:E8,withExif:T8,withExifMerge:w8,keepIccProfile:z8,withIccProfile:D8,keepMetadata:C8,withMetadata:S8,toFormat:k8,jpeg:M8,jp2:v8,png:x8,webp:f8,tiff:O8,avif:b8,heif:h8,jxl:g8,gif:d8,raw:m8,tile:u8,timeout:l8,_updateFormatOut:c8,_setBooleanOption:a8,_read:r8,_pipeline:e8})}});var W5=L((s9,q5)=>{var $5=function(J){if(x.bool(J))if(J)return C.cache(50,20,100);else return C.cache(0,0,0);else if(x.object(J))return C.cache(J.memory,J.files,J.items);else return C.cache()},t8=function(J){return C.concurrency(x.integer(J)?J:null)},o8=function(){return C.counters()},J9=function(J){return C.simd(x.bool(J)?J:null)},$9=function(J){if(x.object(J))if(Array.isArray(J.operation)&&J.operation.every(x.string))C.block(J.operation,!0);else throw x.invalidParameterError("operation","Array<string>",J.operation);else throw x.invalidParameterError("options","object",J)},q9=function(J){if(x.object(J))if(Array.isArray(J.operation)&&J.operation.every(x.string))C.block(J.operation,!1);else throw x.invalidParameterError("operation","Array<string>",J.operation);else throw x.invalidParameterError("options","object",J)},n8=import.meta.require("events"),D2=import.meta.require("detect-libc"),x=d(),{runtimePlatformArch:p8}=g2(),C=q2(),J5=p8(),i2=C.libvipsVersion(),B2=C.format();B2.heif.output.alias=["avif","heic"];B2.jpeg.output.alias=["jpe","jpg"];B2.tiff.output.alias=["tif"];B2.jp2k.output.alias=["j2c","j2k","jp2","jpx"];var s8={nearest:"nearest",bilinear:"bilinear",bicubic:"bicubic",locallyBoundedBicubic:"lbb",nohalo:"nohalo",vertexSplitQuadraticBasisSpline:"vsqbs"},U2={vips:i2.semver};if(!i2.isGlobal)if(!i2.isWasm)try{U2=import.meta.require(`@img/sharp-${J5}/versions`)}catch(J){try{U2=import.meta.require(`@img/sharp-libvips-${J5}/versions`)}catch($){}}else try{U2=(()=>{throw new Error(`Cannot require module "@img/sharp-wasm32/versions"`);})()}catch(J){}U2.sharp=O2().version;$5(!0);if(D2.familySync()===D2.GLIBC&&!C._isUsingJemalloc())C.concurrency(1);else if(D2.familySync()===D2.MUSL&&C.concurrency()===1024)C.concurrency(import.meta.require("os").availableParallelism());var i8=new n8.EventEmitter;q5.exports=function(J){J.cache=$5,J.concurrency=t8,J.counters=o8,J.simd=J9,J.format=B2,J.interpolators=s8,J.versions=U2,J.queue=i8,J.block=$9,J.unblock=q9}});var Q5=L((t9,Z5)=>{var h=F0();M0()(h);b0()(h);g0()(h);u0()(h);a0()(h);e0()(h);o0()(h);W5()(h);Z5.exports=h});import B5 from"path";function F2(J){return J.map(($,q)=>{if($.isDev)return $1("style",{type:"text/css","data-vite-dev-id":$.id,children:$.content},$.id,!1,void 0,this);else return $1("style",{type:"text/css",children:$.content},q,!1,void 0,this)})}import{jsxDEV as $1} from"react/jsx-dev-runtime";var U5=W9(Q5(),1);async function C2(J){const $=new URL(J.url),q=$.searchParams.get("url"),W=Number($.searchParams.get("w")),Z=Number($.searchParams.get("h")),U=$.searchParams.get("fit")??"cover",B=Number($.searchParams.get("q"));if(!q)return new Response(JSON.stringify({error:"url query parameter is required"}),{headers:{"Content-Type":"application/json"},status:404});const F=`${q.startsWith("http")?"":`http://localhost:${process.env.PORT||5173}`}${q}`,G=await fetch(F);if(!G.ok)return new Response(JSON.stringify({error:"Image not found",info:F}),{headers:{"Content-Type":"application/json"},status:404});const P=Buffer.from(await G.arrayBuffer()),R=await U5.default(P).resize(W>0?W:void 0,Z>0?Z:void 0,{fit:U}).webp({quality:B>0?B:80,force:!0}).toBuffer();return G.headers.delete("Content-Type"),G.headers.delete("Content-Length"),new Response(R,{headers:{"Content-Type":"image/webp","Content-Length":`${R.byteLength}`,...G.headers.toJSON()}})}function o2(J){return`
3
3
  <!DOCTYPE html>
4
4
  <html lang="en">
5
5
  <head>
@@ -25,16 +25,16 @@ import{p as q9,q as L} from"../chunk-9350baa090b5a424.js";import{r as Y5,s as I5
25
25
  <script type="module" src="/refresh.js"></script>
26
26
  </body>
27
27
  </html>
28
- `}async function W9(){const J=process.cwd(),$=await(await import("vite")).createServer({root:J,logLevel:"error",server:{watch:{usePolling:!0,interval:100},hmr:{clientPort:5174}},appType:"custom",resolve:{alias:{"@/app":Y2}}});process.env.ROOT_DIR=B5,process.env.APP_DIR=Y2;async function q(Z){const{pathname:U}=new URL(Z.url);if(U.startsWith("/__gemi/image"))return await D2(Z);if(U.startsWith("/refresh.js"))return new Response(`
28
+ `}async function Z9(){const J=process.cwd(),$=await(await import("vite")).createServer({root:J,logLevel:"error",server:{watch:{usePolling:!0,interval:100},hmr:{clientPort:5174}},appType:"custom",resolve:{alias:{"@/app":Y2}}});process.env.ROOT_DIR=Y5,process.env.APP_DIR=Y2;async function q(Z){const{pathname:U}=new URL(Z.url);if(U.startsWith("/__gemi/image"))return await C2(Z);if(U.startsWith("/refresh.js"))return new Response(`
29
29
  import RefreshRuntime from "http://localhost:5173/@react-refresh";
30
30
  RefreshRuntime.injectIntoGlobalHook(window);
31
31
  window.\$RefreshReg\$ = () => {};
32
32
  window.\$RefreshSig\$ = () => (type) => type;
33
33
  window.__vite_plugin_react_preamble_installed__ = true;
34
- `,{headers:{"Content-Type":"application/javascript"}});try{const P=await fetch(`http://localhost:5174${U}`);if(P.ok)return P}catch(P){console.log(P)}let B=null;try{B=(await $.ssrLoadModule(U5.join(Y2,"bootstrap.ts"))).app}catch(P){return new Response(i2(P),{status:500,headers:{"Content-Type":"text/html"}})}const{default:Y}=await $.ssrLoadModule(`${Y2}/app.css`),F=[];F.push({isDev:!0,id:`${Y2}/app.css`,content:Y}),B.setRenderParams({styles:K2(F),manifest:null,serverManifest:null,bootstrapModules:["/refresh.js","/app/client.tsx","http://localhost:5173/@vite/client"]});const G=B.fetch.bind(B);try{return await G(Z)}catch(P){if(console.log(P),U.startsWith("/api"))return new Response(JSON.stringify({error:P.message}),{status:500,headers:{"Content-Type":"application/json"}});return new Response(i2(P),{headers:{"Content-Type":"text/html"}})}}await $.listen(5174);const W=Bun.serve({fetch:async(Z)=>{return await q(Z)},port:process.env.PORT||5173});return console.log(`Server started on http://localhost:${process.env.PORT||5173}`),$.watcher.on("change",async(Z)=>{if(Z.includes("app/views"))return;if(console.log(`[vite] ${Z} changed. Updating...`),await $.moduleGraph.getModuleByUrl(`/${Z}`))console.log(`[vite] ${Z} changed. Updating...`)}),W}var B5=process.cwd(),Y2=U5.join(B5,"app");import{join as K5} from"path";async function Q9(){const{app:J}=await import(`${I2}/server/bootstrap.mjs`),$=await import(`${I2}/client/.vite/manifest.json`),q=await import(`${I2}/server/.vite/manifest.json`),Z=await Bun.file(`${I2}/client/${$["app/client.tsx"].css}`).text();process.env.ROOT_DIR=o2,process.env.APP_DIR=Z9,process.env.DIST_DIR=I2;async function U(Y){const{pathname:F}=new URL(Y.url);if(F.startsWith("/__gemi/image"))return await D2(Y);if(new Y5({pathname:"/*.:filetype(png|txt|js|css|jpg|svg|jpeg|ico|ttf)"}).test({pathname:F})){const E=new URL(Y.url),G5=Y.url.replace(E.origin,"").split("?")[0],t=Bun.file(`dist/client${G5.replace("/assets/assets","/assets")}`);if(!t)return new Response("Not found",{status:404});const H5=I5(t.lastModified);return new Response(t.stream(),{headers:{"Content-Type":t.type,"Cache-Control":"public, max-age=31536000, must-revalidate","Content-Length":String(t.size),ETag:H5}})}const P=[];P.push({content:Z}),J.setRenderParams({styles:K2(P),manifest:$,serverManifest:q,bootstrapModules:[`/${$["app/client.tsx"].file}`]});const _=J.fetch.bind(J);try{return await _(Y)}catch(E){if(F.startsWith("/api"))return new Response(JSON.stringify({error:E.message}),{status:500,headers:{"Content-Type":"application/json"}});return new Response(E.stack,{status:500})}}return Bun.serve({fetch:async(Y)=>{return await U(Y)},port:process.env.PORT||5173})}var o2=process.cwd(),Z9=K5(o2,"app"),I2=K5(o2,"dist");import U9 from"path";async function F5(J){const{app:$,RootLayout:q}=J,W=process.cwd(),Z=U9.join(W,"app"),U=process.cwd(),B=await(await import("vite")).createServer({root:U,logLevel:"error",server:{watch:{usePolling:!0,interval:100},hmr:{clientPort:5174}},appType:"custom",resolve:{alias:{"@/app":Z}}});process.env.ROOT_DIR=W,process.env.APP_DIR=Z;async function Y(G){const{pathname:P}=new URL(G.url);if(P.startsWith("/refresh.js"))return new Response(`
34
+ `,{headers:{"Content-Type":"application/javascript"}});try{const P=await fetch(`http://localhost:5174${U}`);if(P.ok)return P}catch(P){console.log(P)}let B=null;try{B=(await $.ssrLoadModule(B5.join(Y2,"bootstrap.ts"))).app}catch(P){return new Response(o2(P),{status:500,headers:{"Content-Type":"text/html"}})}const{default:Y}=await $.ssrLoadModule(`${Y2}/app.css`),F=[];F.push({isDev:!0,id:`${Y2}/app.css`,content:Y}),B.setRenderParams({styles:F2(F),manifest:null,serverManifest:null,bootstrapModules:["/refresh.js","/app/client.tsx","http://localhost:5173/@vite/client"]});const G=B.fetch.bind(B);try{return await G(Z)}catch(P){if(console.log(P),U.startsWith("/api"))return new Response(JSON.stringify({error:P.message}),{status:500,headers:{"Content-Type":"application/json"}});return new Response(o2(P),{headers:{"Content-Type":"text/html"}})}}await $.listen(5174);const W=Bun.serve({fetch:async(Z)=>{return await q(Z)},port:process.env.PORT||5173});return console.log(`Server started on http://localhost:${process.env.PORT||5173}`),$.watcher.on("change",async(Z)=>{if(Z.includes("app/views"))return;if(console.log(`[vite] ${Z} changed. Updating...`),await $.moduleGraph.getModuleByUrl(`/${Z}`))console.log(`[vite] ${Z} changed. Updating...`)}),W}var Y5=process.cwd(),Y2=B5.join(Y5,"app");import{join as F5} from"path";async function U9(){const{app:J}=await import(`${I2}/server/bootstrap.mjs`),$=await import(`${I2}/client/.vite/manifest.json`),q=await import(`${I2}/server/.vite/manifest.json`),Z=await Bun.file(`${I2}/client/${$["app/client.tsx"].css}`).text();process.env.ROOT_DIR=J1,process.env.APP_DIR=Q9,process.env.DIST_DIR=I2;async function U(Y){const{pathname:F}=new URL(Y.url);if(F.startsWith("/__gemi/image"))return await C2(Y);const G=new I5({pathname:"/*.:filetype(png|txt|js|css|jpg|svg|jpeg|ico|ttf)"}),P=F.startsWith("/api");if(G.test({pathname:F})&&!P){const K2=new URL(Y.url),H5=Y.url.replace(K2.origin,"").split("?")[0],t=Bun.file(`dist/client${H5.replace("/assets/assets","/assets")}`);if(!t)return new Response("Not found",{status:404});const N5=K5(t.lastModified);return new Response(t.stream(),{headers:{"Content-Type":t.type,"Cache-Control":"public, max-age=31536000, must-revalidate","Content-Length":String(t.size),ETag:N5}})}const R=[];R.push({content:Z}),J.setRenderParams({styles:F2(R),manifest:$,serverManifest:q,bootstrapModules:[`/${$["app/client.tsx"].file}`]});const w=J.fetch.bind(J);try{return await w(Y)}catch(K2){if(F.startsWith("/api"))return new Response(JSON.stringify({error:K2.message}),{status:500,headers:{"Content-Type":"application/json"}});return new Response(K2.stack,{status:500})}}return Bun.serve({fetch:async(Y)=>{return await U(Y)},port:process.env.PORT||5173})}var J1=process.cwd(),Q9=F5(J1,"app"),I2=F5(J1,"dist");import B9 from"path";async function G5(J){const{app:$,RootLayout:q}=J,W=process.cwd(),Z=B9.join(W,"app"),U=process.cwd(),B=await(await import("vite")).createServer({root:U,logLevel:"error",server:{watch:{usePolling:!0,interval:100},hmr:{clientPort:5174}},appType:"custom",resolve:{alias:{"@/app":Z}}});process.env.ROOT_DIR=W,process.env.APP_DIR=Z;async function Y(G){const{pathname:P}=new URL(G.url);if(P.startsWith("/refresh.js"))return new Response(`
35
35
  import RefreshRuntime from "http://localhost:5173/@react-refresh";
36
36
  RefreshRuntime.injectIntoGlobalHook(window);
37
37
  window.\$RefreshReg\$ = () => {};
38
38
  window.\$RefreshSig\$ = () => (type) => type;
39
39
  window.__vite_plugin_react_preamble_installed__ = true;
40
- `,{headers:{"Content-Type":"application/javascript"}});try{const E=await fetch(`http://localhost:5174${P}`);if(E.ok)return E}catch(E){console.log(E)}return await $.fetch.bind($)(G,{RootLayout:q,options:{bootstrapModules:["/refresh.js","/app/client.tsx","http://localhost:5173/@vite/client"]}})}return B.watcher.on("change",async(G)=>{if(G.includes("app/views"))return;if(console.log(`[vite] ${G} changed. Updating...`),await B.moduleGraph.getModuleByUrl(`/${G}`))console.log(`[vite] ${G} changed. Updating...`)}),await B.listen(5174),Bun.serve({fetch:async(G)=>{return await Y(G)},port:process.env.PORT||5173})}async function B9(J){await F5(J)}export{Q9 as startProdServer,W9 as startDevServer,B9 as createServer};
40
+ `,{headers:{"Content-Type":"application/javascript"}});try{const w=await fetch(`http://localhost:5174${P}`);if(w.ok)return w}catch(w){console.log(w)}return await $.fetch.bind($)(G,{RootLayout:q,options:{bootstrapModules:["/refresh.js","/app/client.tsx","http://localhost:5173/@vite/client"]}})}return B.watcher.on("change",async(G)=>{if(G.includes("app/views"))return;if(console.log(`[vite] ${G} changed. Updating...`),await B.moduleGraph.getModuleByUrl(`/${G}`))console.log(`[vite] ${G} changed. Updating...`)}),await B.listen(5174),Bun.serve({fetch:async(G)=>{return await Y(G)},port:process.env.PORT||5173})}async function Y9(J){await G5(J)}export{U9 as startProdServer,Z9 as startDevServer,Y9 as createServer};