@loaders.gl/textures 4.4.1 → 4.4.2

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.
@@ -50494,7 +50494,7 @@ function getVersion() {
50494
50494
  globalThis._loadersgl_.version = NPM_TAG;
50495
50495
  warningIssued = true;
50496
50496
  } else {
50497
- globalThis._loadersgl_.version = "4.4.1";
50497
+ globalThis._loadersgl_.version = "4.4.2";
50498
50498
  }
50499
50499
  }
50500
50500
  return globalThis._loadersgl_.version;
@@ -54239,7 +54239,7 @@ if (nodeVersion2 < 18) {
54239
54239
  }
54240
54240
 
54241
54241
  // src/lib/utils/version.ts
54242
- var VERSION2 = true ? "4.4.1" : "latest";
54242
+ var VERSION2 = true ? "4.4.2" : "latest";
54243
54243
 
54244
54244
  // src/lib/parsers/basis-module-loader.ts
54245
54245
  var BASIS_EXTERNAL_LIBRARIES = {
@@ -22,7 +22,7 @@
22
22
  globalThis._loadersgl_.version = NPM_TAG;
23
23
  warningIssued = true;
24
24
  } else {
25
- globalThis._loadersgl_.version = "4.4.1";
25
+ globalThis._loadersgl_.version = "4.4.2";
26
26
  }
27
27
  }
28
28
  return globalThis._loadersgl_.version;
@@ -382,7 +382,7 @@
382
382
  }
383
383
 
384
384
  // src/lib/utils/version.ts
385
- var VERSION2 = true ? "4.4.1" : "latest";
385
+ var VERSION2 = true ? "4.4.2" : "latest";
386
386
 
387
387
  // src/lib/parsers/basis-module-loader.ts
388
388
  var BASIS_EXTERNAL_LIBRARIES = {
@@ -529,7 +529,7 @@
529
529
  var dist_default = new ProbeLog({ id: "@probe.gl/log" });
530
530
 
531
531
  // ../loader-utils/src/lib/log-utils/log.ts
532
- var VERSION2 = true ? "4.4.1" : "latest";
532
+ var VERSION2 = true ? "4.4.2" : "latest";
533
533
  var version = VERSION2[0] >= "0" && VERSION2[0] <= "9" ? `v${VERSION2}` : "";
534
534
  function createLog() {
535
535
  const log2 = new ProbeLog({ id: "loaders.gl" });
@@ -564,7 +564,7 @@
564
564
  globalThis._loadersgl_.version = NPM_TAG;
565
565
  warningIssued = true;
566
566
  } else {
567
- globalThis._loadersgl_.version = "4.4.1";
567
+ globalThis._loadersgl_.version = "4.4.2";
568
568
  }
569
569
  }
570
570
  return globalThis._loadersgl_.version;
@@ -924,7 +924,7 @@
924
924
  }
925
925
 
926
926
  // src/lib/utils/version.ts
927
- var VERSION4 = true ? "4.4.1" : "latest";
927
+ var VERSION4 = true ? "4.4.2" : "latest";
928
928
 
929
929
  // ../../node_modules/ktx-parse/dist/ktx-parse.modern.js
930
930
  var KHR_SUPERCOMPRESSION_NONE = 0;
@@ -29,7 +29,7 @@
29
29
  globalThis._loadersgl_.version = NPM_TAG;
30
30
  warningIssued = true;
31
31
  } else {
32
- globalThis._loadersgl_.version = "4.4.1";
32
+ globalThis._loadersgl_.version = "4.4.2";
33
33
  }
34
34
  }
35
35
  return globalThis._loadersgl_.version;
@@ -389,7 +389,7 @@
389
389
  }
390
390
 
391
391
  // src/lib/utils/version.ts
392
- var VERSION2 = true ? "4.4.1" : "latest";
392
+ var VERSION2 = true ? "4.4.2" : "latest";
393
393
 
394
394
  // src/crunch-loader.ts
395
395
  var CrunchLoader = {
package/dist/dist.min.js CHANGED
@@ -4,6 +4,6 @@
4
4
  else if (typeof define === 'function' && define.amd) define([], factory);
5
5
  else if (typeof exports === 'object') exports['loaders'] = factory();
6
6
  else root['loaders'] = factory();})(globalThis, function () {
7
- "use strict";var __exports__=(()=>{var Sn=Object.create;var ue=Object.defineProperty;var ln=Object.getOwnPropertyDescriptor;var mn=Object.getOwnPropertyNames;var En=Object.getPrototypeOf,fn=Object.prototype.hasOwnProperty;var An=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Br=(e,t)=>{for(var r in t)ue(e,r,{get:t[r],enumerable:!0})},Re=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of mn(t))!fn.call(e,n)&&n!==r&&ue(e,n,{get:()=>t[n],enumerable:!(o=ln(t,n))||o.enumerable});return e},Se=(e,t,r)=>(Re(e,t,"default"),r&&Re(r,t,"default")),Tn=(e,t,r)=>(r=e!=null?Sn(En(e)):{},Re(t||!e||!e.__esModule?ue(r,"default",{value:e,enumerable:!0}):r,e)),gn=e=>Re(ue({},"__esModule",{value:!0}),e);var Lr=An((N_,br)=>{br.exports=globalThis.loaders});var ae={};Br(ae,{BASIS_EXTERNAL_LIBRARIES:()=>z,BasisLoader:()=>io,BasisWorkerLoader:()=>rr,CRUNCH_EXTERNAL_LIBRARIES:()=>Jo,CompressedTextureLoader:()=>Ao,CompressedTextureWorkerLoader:()=>or,CompressedTextureWriter:()=>qo,CrunchLoader:()=>nr,CrunchWorkerLoader:()=>nr,GL_COMPRESSED_R11_EAC:()=>gt,GL_COMPRESSED_RED_GREEN_RGTC2_EXT:()=>He,GL_COMPRESSED_RED_RGTC1_EXT:()=>Ie,GL_COMPRESSED_RG11_EAC:()=>xt,GL_COMPRESSED_RGB8_ETC2:()=>dt,GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:()=>Mt,GL_COMPRESSED_RGBA8_ETC2_EAC:()=>Ce,GL_COMPRESSED_RGBA_ASTC_10x10_KHR:()=>Ke,GL_COMPRESSED_RGBA_ASTC_10x5_KHR:()=>he,GL_COMPRESSED_RGBA_ASTC_10x6_KHR:()=>De,GL_COMPRESSED_RGBA_ASTC_10x8_KHR:()=>we,GL_COMPRESSED_RGBA_ASTC_12x10_KHR:()=>Fe,GL_COMPRESSED_RGBA_ASTC_12x12_KHR:()=>ye,GL_COMPRESSED_RGBA_ASTC_4x4_KHR:()=>te,GL_COMPRESSED_RGBA_ASTC_5x4_KHR:()=>Ge,GL_COMPRESSED_RGBA_ASTC_5x5_KHR:()=>Oe,GL_COMPRESSED_RGBA_ASTC_6x5_KHR:()=>Me,GL_COMPRESSED_RGBA_ASTC_6x6_KHR:()=>Be,GL_COMPRESSED_RGBA_ASTC_8x5_KHR:()=>be,GL_COMPRESSED_RGBA_ASTC_8x6_KHR:()=>Le,GL_COMPRESSED_RGBA_ASTC_8x8_KHR:()=>Pe,GL_COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL:()=>jr,GL_COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL:()=>Dt,GL_COMPRESSED_RGBA_BPTC_UNORM_EXT:()=>Yt,GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG:()=>Lt,GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG:()=>de,GL_COMPRESSED_RGBA_S3TC_DXT1_EXT:()=>At,GL_COMPRESSED_RGBA_S3TC_DXT3_EXT:()=>Tt,GL_COMPRESSED_RGBA_S3TC_DXT5_EXT:()=>xe,GL_COMPRESSED_RGB_ATC_WEBGL:()=>ht,GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT:()=>Qn,GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT:()=>es,GL_COMPRESSED_RGB_ETC1_WEBGL:()=>Pt,GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG:()=>zr,GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG:()=>bt,GL_COMPRESSED_RGB_S3TC_DXT1_EXT:()=>pe,GL_COMPRESSED_SIGNED_R11_EAC:()=>pt,GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT:()=>jt,GL_COMPRESSED_SIGNED_RED_RGTC1_EXT:()=>zt,GL_COMPRESSED_SIGNED_RG11_EAC:()=>Ct,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR:()=>kt,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR:()=>Vt,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR:()=>Xt,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR:()=>vt,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR:()=>Wt,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR:()=>$t,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR:()=>wt,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR:()=>Kt,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR:()=>Ft,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR:()=>yt,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR:()=>It,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR:()=>Ht,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR:()=>Ut,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR:()=>Nt,GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:()=>Ot,GL_COMPRESSED_SRGB8_ETC2:()=>Gt,GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:()=>Bt,GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT:()=>qn,GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT:()=>Zt,GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT:()=>qt,GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT:()=>Qt,GL_COMPRESSED_SRGB_S3TC_DXT1_EXT:()=>Jt,GL_EXTENSIONS_CONSTANTS:()=>ts,GL_RGB:()=>Yn,GL_RGB565:()=>Et,GL_RGB5_A1:()=>Zn,GL_RGBA:()=>Jn,GL_RGBA32F:()=>ft,GL_RGBA4:()=>Wr,GL_RGBA8:()=>$r,KTX2BasisWriter:()=>en,KTX2BasisWriterWorker:()=>H_,NPYLoader:()=>Bo,NPYWorkerLoader:()=>Sr,RadianceHDRLoader:()=>Oo,TextureArrayLoader:()=>zo,TextureCubeArrayLoader:()=>Yo,TextureCubeLoader:()=>jo,TextureLoader:()=>$o,loadImageTexture:()=>tn,loadImageTextureArray:()=>rn,loadImageTextureCube:()=>on});Se(ae,Tn(Lr(),1));var u="4.4.1";function pn(){return globalThis._loadersgl_?.version||(globalThis._loadersgl_=globalThis._loadersgl_||{},globalThis._loadersgl_.version="4.4.1"),globalThis._loadersgl_.version}var Pr=pn();function hr(e,t){if(!e)throw new Error(t||"loaders.gl assertion failed.")}var M={self:typeof self<"u"&&self,window:typeof window<"u"&&window,global:typeof global<"u"&&global,document:typeof document<"u"&&document},k_=M.self||M.window||M.global||{},W_=M.window||M.self||M.global||{},$_=M.global||M.self||M.window||{},z_=M.document||{};var V=typeof process!="object"||String(process)!=="[object process]"||process.browser,le=typeof importScripts=="function",j_=typeof window<"u"&&typeof window.orientation<"u",Dr=typeof process<"u"&&process.version&&/v([0-9]*)/.exec(process.version),Y_=Dr&&parseFloat(Dr[1])||0;var rt={};function q(e={}){let t=e.useLocalLibraries??e.core?.useLocalLibraries,r=e.CDN??e.core?.CDN,o=e.modules;return{...t!==void 0?{useLocalLibraries:t}:{},...r!==void 0?{CDN:r}:{},...o!==void 0?{modules:o}:{}}}async function X(e,t=null,r={},o=null){return t&&(e=wr(e,t,r,o)),rt[e]=rt[e]||xn(e),await rt[e]}function wr(e,t,r={},o=null){if(r?.core)throw new Error("loadLibrary: options.core must be pre-normalized");if(!r.useLocalLibraries&&e.startsWith("http"))return e;o=o||e;let n=r.modules||{};return n[o]?n[o]:V?r.CDN?(hr(r.CDN.startsWith("http")),`${r.CDN}/${t}@${Pr}/dist/libs/${o}`):le?`../src/libs/${o}`:`modules/${t}/src/libs/${o}`:`modules/${t}/dist/libs/${o}`}async function xn(e){if(e.endsWith("wasm"))return await dn(e);if(!V){let{requireFromFile:r}=globalThis.loaders||{};try{let o=await r?.(e);return o||!e.includes("/dist/libs/")?o:await r?.(e.replace("/dist/libs/","/src/libs/"))}catch(o){if(e.includes("/dist/libs/"))try{return await r?.(e.replace("/dist/libs/","/src/libs/"))}catch{}return console.error(o),null}}if(le)return importScripts(e);let t=await Gn(e);return Cn(t,e)}function Cn(e,t){if(!V){let{requireFromString:o}=globalThis.loaders||{};return o?.(e,t)}if(le)return eval.call(globalThis,e),null;let r=document.createElement("script");r.id=t;try{r.appendChild(document.createTextNode(e))}catch{r.text=e}return document.body.appendChild(r),null}async function dn(e){let{readFileAsArrayBuffer:t}=globalThis.loaders||{};if(V||!t||e.startsWith("http"))return await(await fetch(e)).arrayBuffer();try{return await t(e)}catch{if(e.includes("/dist/libs/"))return await t(e.replace("/dist/libs/","/src/libs/"));throw new Error(`Failed to load ArrayBuffer from ${e}`)}}async function Gn(e){let{readFileAsText:t}=globalThis.loaders||{};if(V||!t||e.startsWith("http"))return await(await fetch(e)).text();try{return await t(e)}catch{if(e.includes("/dist/libs/"))return await t(e.replace("/dist/libs/","/src/libs/"));throw new Error(`Failed to load text from ${e}`)}}var v=class{constructor(){throw new Error("ChildProcessProxy is not available in browser environments")}async start(t){return await Promise.resolve({})}async stop(){return await Promise.resolve()}async exit(){return await Promise.resolve()}};async function ot(e,t,r,o){return o._parse(e,t,r,o)}function B(e,t){if(!e)throw new Error(t||"loader assertion failed.")}var b={self:typeof self<"u"&&self,window:typeof window<"u"&&window,global:typeof global<"u"&&global,document:typeof document<"u"&&document},On=b.self||b.window||b.global||{},Mn=b.window||b.self||b.global||{},Bn=b.global||b.self||b.window||{},bn=b.document||{};var nt=Boolean(typeof process!="object"||String(process)!=="[object process]"||process.browser);var Kr=typeof process<"u"&&process.version&&/v([0-9]*)/.exec(process.version),Ln=Kr&&parseFloat(Kr[1])||0;var me=globalThis,Pn=globalThis.document||{},Ee=globalThis.process||{},hn=globalThis.console,ia=globalThis.navigator||{};function Fr(e){if(typeof window<"u"&&window.process?.type==="renderer"||typeof process<"u"&&Boolean(process.versions?.electron))return!0;let t=typeof navigator<"u"&&navigator.userAgent,r=e||t;return Boolean(r&&r.indexOf("Electron")>=0)}function F(){return!(typeof process=="object"&&String(process)==="[object process]"&&!process?.browser)||Fr()}var st="4.1.1";function k(e,t){if(!e)throw new Error(t||"Assertion failed")}function _t(e){if(!e)return 0;let t;switch(typeof e){case"number":t=e;break;case"object":t=e.logLevel||e.priority||0;break;default:return 0}return k(Number.isFinite(t)&&t>=0),t}function yr(e){let{logLevel:t,message:r}=e;e.logLevel=_t(t);let o=e.args?Array.from(e.args):[];for(;o.length&&o.shift()!==r;);switch(typeof t){case"string":case"function":r!==void 0&&o.unshift(r),e.message=t;break;case"object":Object.assign(e,t);break;default:}typeof e.message=="function"&&(e.message=e.message());let n=typeof e.message;return k(n==="string"||n==="object"),Object.assign(e,{args:o},e.opts)}var y=()=>{},fe=class{constructor({level:t=0}={}){this.userData={},this._onceCache=new Set,this._level=t}set level(t){this.setLevel(t)}get level(){return this.getLevel()}setLevel(t){return this._level=t,this}getLevel(){return this._level}warn(t,...r){return this._log("warn",0,t,r,{once:!0})}error(t,...r){return this._log("error",0,t,r)}log(t,r,...o){return this._log("log",t,r,o)}info(t,r,...o){return this._log("info",t,r,o)}once(t,r,...o){return this._log("once",t,r,o,{once:!0})}_log(t,r,o,n,s={}){let _=yr({logLevel:r,message:o,args:this._buildArgs(r,o,n),opts:s});return this._createLogFunction(t,_,s)}_buildArgs(t,r,o){return[t,r,...o]}_createLogFunction(t,r,o){if(!this._shouldLog(r.logLevel))return y;let n=this._getOnceTag(o.tag??r.tag??r.message);if((o.once||r.once)&&n!==void 0){if(this._onceCache.has(n))return y;this._onceCache.add(n)}return this._emit(t,r)}_shouldLog(t){return this.getLevel()>=_t(t)}_getOnceTag(t){if(t!==void 0)try{return typeof t=="string"?t:String(t)}catch{return}}};function wn(e){try{let t=window[e],r="__storage_test__";return t.setItem(r,r),t.removeItem(r),t}catch{return null}}var Ae=class{constructor(t,r,o="sessionStorage"){this.storage=wn(o),this.id=t,this.config=r,this._loadConfiguration()}getConfiguration(){return this.config}setConfiguration(t){if(Object.assign(this.config,t),this.storage){let r=JSON.stringify(this.config);this.storage.setItem(this.id,r)}}_loadConfiguration(){let t={};if(this.storage){let r=this.storage.getItem(this.id);t=r?JSON.parse(r):{}}return Object.assign(this.config,t),this}};function Ir(e){let t;return e<10?t=`${e.toFixed(2)}ms`:e<100?t=`${e.toFixed(1)}ms`:e<1e3?t=`${e.toFixed(0)}ms`:t=`${(e/1e3).toFixed(2)}s`,t}function Hr(e,t=8){let r=Math.max(t-e.length,0);return`${" ".repeat(r)}${e}`}var Te;(function(e){e[e.BLACK=30]="BLACK",e[e.RED=31]="RED",e[e.GREEN=32]="GREEN",e[e.YELLOW=33]="YELLOW",e[e.BLUE=34]="BLUE",e[e.MAGENTA=35]="MAGENTA",e[e.CYAN=36]="CYAN",e[e.WHITE=37]="WHITE",e[e.BRIGHT_BLACK=90]="BRIGHT_BLACK",e[e.BRIGHT_RED=91]="BRIGHT_RED",e[e.BRIGHT_GREEN=92]="BRIGHT_GREEN",e[e.BRIGHT_YELLOW=93]="BRIGHT_YELLOW",e[e.BRIGHT_BLUE=94]="BRIGHT_BLUE",e[e.BRIGHT_MAGENTA=95]="BRIGHT_MAGENTA",e[e.BRIGHT_CYAN=96]="BRIGHT_CYAN",e[e.BRIGHT_WHITE=97]="BRIGHT_WHITE"})(Te||(Te={}));var Kn=10;function Ur(e){return typeof e!="string"?e:(e=e.toUpperCase(),Te[e]||Te.WHITE)}function Nr(e,t,r){return!F&&typeof e=="string"&&(t&&(e=`\x1B[${Ur(t)}m${e}\x1B[39m`),r&&(e=`\x1B[${Ur(r)+Kn}m${e}\x1B[49m`)),e}function Vr(e,t=["constructor"]){let r=Object.getPrototypeOf(e),o=Object.getOwnPropertyNames(r),n=e;for(let s of o){let _=n[s];typeof _=="function"&&(t.find(a=>s===a)||(n[s]=_.bind(e)))}}function W(){let e;if(F()&&me.performance)e=me?.performance?.now?.();else if("hrtime"in Ee){let t=Ee?.hrtime?.();e=t[0]*1e3+t[1]/1e6}else e=Date.now();return e}var $={debug:F()&&console.debug||console.log,log:console.log,info:console.info,warn:console.warn,error:console.error},at={enabled:!0,level:0},h=class extends fe{constructor({id:t}={id:""}){super({level:0}),this.VERSION=st,this._startTs=W(),this._deltaTs=W(),this.userData={},this.LOG_THROTTLE_TIMEOUT=0,this.id=t,this.userData={},this._storage=new Ae(`__probe-${this.id}__`,{[this.id]:at}),this.timeStamp(`${this.id} started`),Vr(this),Object.seal(this)}isEnabled(){return this._getConfiguration().enabled}getLevel(){return this._getConfiguration().level}getTotal(){return Number((W()-this._startTs).toPrecision(10))}getDelta(){return Number((W()-this._deltaTs).toPrecision(10))}set priority(t){this.level=t}get priority(){return this.level}getPriority(){return this.level}enable(t=!0){return this._updateConfiguration({enabled:t}),this}setLevel(t){return this._updateConfiguration({level:t}),this}get(t){return this._getConfiguration()[t]}set(t,r){this._updateConfiguration({[t]:r})}settings(){console.table?console.table(this._storage.config):console.log(this._storage.config)}assert(t,r){if(!t)throw new Error(r||"Assertion failed")}warn(t,...r){return this._log("warn",0,t,r,{method:$.warn,once:!0})}error(t,...r){return this._log("error",0,t,r,{method:$.error})}deprecated(t,r){return this.warn(`\`${t}\` is deprecated and will be removed in a later version. Use \`${r}\` instead`)}removed(t,r){return this.error(`\`${t}\` has been removed. Use \`${r}\` instead`)}probe(t,r,...o){return this._log("log",t,r,o,{method:$.log,time:!0,once:!0})}log(t,r,...o){return this._log("log",t,r,o,{method:$.debug})}info(t,r,...o){return this._log("info",t,r,o,{method:console.info})}once(t,r,...o){return this._log("once",t,r,o,{method:$.debug||$.info,once:!0})}table(t,r,o){return r?this._log("table",t,r,o&&[o]||[],{method:console.table||y,tag:yn(r)}):y}time(t,r){return this._log("time",t,r,[],{method:console.time?console.time:console.info})}timeEnd(t,r){return this._log("time",t,r,[],{method:console.timeEnd?console.timeEnd:console.info})}timeStamp(t,r){return this._log("time",t,r,[],{method:console.timeStamp||y})}group(t,r,o={collapsed:!1}){let n=(o.collapsed?console.groupCollapsed:console.group)||console.info;return this._log("group",t,r,[],{method:n})}groupCollapsed(t,r,o={}){return this.group(t,r,Object.assign({},o,{collapsed:!0}))}groupEnd(t){return this._log("groupEnd",t,"",[],{method:console.groupEnd||y})}withGroup(t,r,o){this.group(t,r)();try{o()}finally{this.groupEnd(t)()}}trace(){console.trace&&console.trace()}_shouldLog(t){return this.isEnabled()&&super._shouldLog(t)}_emit(t,r){let o=r.method;k(o),r.total=this.getTotal(),r.delta=this.getDelta(),this._deltaTs=W();let n=Fn(this.id,r.message,r);return o.bind(console,n,...r.args)}_getConfiguration(){return this._storage.config[this.id]||this._updateConfiguration(at),this._storage.config[this.id]}_updateConfiguration(t){let r=this._storage.config[this.id]||{...at};this._storage.setConfiguration({[this.id]:{...r,...t}})}};h.VERSION=st;function Fn(e,t,r){if(typeof t=="string"){let o=r.time?Hr(Ir(r.total)):"";t=r.time?`${e}: ${o} ${t}`:`${e}: ${t}`,t=Nr(t,r.color,r.background)}return t}function yn(e){for(let t in e)for(let r in e[t])return r||"untitled";return"empty"}globalThis.probe={};var Ha=new h({id:"@probe.gl/log"});var it="4.4.1",In=it[0]>="0"&&it[0]<="9"?`v${it}`:"";function Hn(){let e=new h({id:"loaders.gl"});return globalThis.loaders||={},globalThis.loaders.log=e,globalThis.loaders.version=In,globalThis.probe||={},globalThis.probe.loaders=e,e}var ct=Hn();function Rt(e){globalThis.loaders||={},globalThis.loaders.modules||={},Object.assign(globalThis.loaders.modules,e)}function ut(e){return globalThis.loaders?.modules?.[e]||null}var Un="",Xr={};function ge(e){for(let t in Xr)if(e.startsWith(t)){let r=Xr[t];e=e.replace(t,r)}return!e.startsWith("http://")&&!e.startsWith("https://")&&(e=`${Un}${e}`),e}var I={};Br(I,{dirname:()=>Vn,filename:()=>Nn,join:()=>Xn,resolve:()=>vn});function vr(){if(typeof process<"u"&&typeof process.cwd<"u")return process.cwd();let e=window.location?.pathname;return e?.slice(0,e.lastIndexOf("/")+1)||""}function Nn(e){let t=e?e.lastIndexOf("/"):-1;return t>=0?e.substr(t+1):e}function Vn(e){let t=e?e.lastIndexOf("/"):-1;return t>=0?e.substr(0,t):""}function Xn(...e){let t="/";return e=e.map((r,o)=>(o&&(r=r.replace(new RegExp(`^${t}`),"")),o!==e.length-1&&(r=r.replace(new RegExp(`${t}$`),"")),r)),e.join(t)}function vn(...e){let t=[];for(let s=0;s<e.length;s++)t[s]=e[s];let r="",o=!1,n;for(let s=t.length-1;s>=-1&&!o;s--){let _;s>=0?_=t[s]:(n===void 0&&(n=vr()),_=n),_.length!==0&&(r=`${_}/${r}`,o=_.charCodeAt(0)===Q)}return r=kn(r,!o),o?`/${r}`:r.length>0?r:"."}var Q=47,St=46;function kn(e,t){let r="",o=-1,n=0,s,_=!1;for(let a=0;a<=e.length;++a){if(a<e.length)s=e.charCodeAt(a);else{if(s===Q)break;s=Q}if(s===Q){if(!(o===a-1||n===1))if(o!==a-1&&n===2){if(r.length<2||!_||r.charCodeAt(r.length-1)!==St||r.charCodeAt(r.length-2)!==St){if(r.length>2){let i=r.length-1,c=i;for(;c>=0&&r.charCodeAt(c)!==Q;--c);if(c!==i){r=c===-1?"":r.slice(0,c),o=a,n=0,_=!1;continue}}else if(r.length===2||r.length===1){r="",o=a,n=0,_=!1;continue}}t&&(r.length>0?r+="/..":r="..",_=!0)}else{let i=e.slice(o+1,a);r.length>0?r+=`/${i}`:r=i,_=!1}o=a,n=0}else s===St&&n!==-1?++n:n=-1}return r}var z={TRANSCODER:"basis_transcoder.js",TRANSCODER_WASM:"basis_transcoder.wasm",ENCODER:"basis_encoder.js",ENCODER_WASM:"basis_encoder.wasm"},kr;async function mt(e){Rt(e.modules);let t=ut("basis");return t||(kr||=Wn(e),await kr)}async function Wn(e){let t=null,r=null;return[t,r]=await Promise.all([await X(z.TRANSCODER,"textures",e),await X(z.TRANSCODER_WASM,"textures",e)]),t=t||globalThis.BASIS,await $n(t,r)}function $n(e,t){let r={};return t&&(r.wasmBinary=t),new Promise(o=>{e(r).then(n=>{let{BasisFile:s,initializeBasis:_}=n;_(),o({BasisFile:s})})})}var lt;async function ee(e){let t=e.modules||{};return t.basisEncoder?t.basisEncoder:(lt=lt||zn(e),await lt)}async function zn(e){let t=null,r=null;return[t,r]=await Promise.all([await X(z.ENCODER,"textures",e),await X(z.ENCODER_WASM,"textures",e)]),t=t||globalThis.BASIS,await jn(t,r)}function jn(e,t){let r={};return t&&(r.wasmBinary=t),new Promise(o=>{e(r).then(n=>{let{BasisFile:s,KTX2File:_,initializeBasis:a,BasisEncoder:i}=n;a(),o({BasisFile:s,KTX2File:_,BasisEncoder:i})})})}var Yn=6407,Jn=6408,Wr=32854,Zn=32855,$r=32856,Et=36194,ft=34836,pe=33776,At=33777,Tt=33778,xe=33779,gt=37488,pt=37489,xt=37490,Ct=37491,dt=37492,Ce=37493,Gt=37494,Ot=37495,Mt=37496,Bt=37497,bt=35840,zr=35841,de=35842,Lt=35843,Pt=36196,ht=35986,jr=35987,Dt=34798,te=37808,Ge=37809,Oe=37810,Me=37811,Be=37812,be=37813,Le=37814,Pe=37815,he=37816,De=37817,we=37818,Ke=37819,Fe=37820,ye=37821,wt=37840,Kt=37841,Ft=37842,yt=37843,It=37844,Ht=37845,Ut=37846,Nt=37847,Vt=37848,Xt=37849,vt=37850,kt=37851,Wt=37852,$t=37853,Ie=36283,zt=36284,He=36285,jt=36286,Yt=36492,qn=36493,Qn=36494,es=36495,Jt=35916,Zt=35917,qt=35918,Qt=35919,ts={RGB:6407,RGBA:6408,RGBA4:32854,RGB5_A1:32855,RGBA8:32856,RGB565:36194,RGBA32F:34836,COMPRESSED_RGB_S3TC_DXT1_EXT:33776,COMPRESSED_RGBA_S3TC_DXT1_EXT:33777,COMPRESSED_RGBA_S3TC_DXT3_EXT:33778,COMPRESSED_RGBA_S3TC_DXT5_EXT:33779,COMPRESSED_R11_EAC:37488,COMPRESSED_SIGNED_R11_EAC:37489,COMPRESSED_RG11_EAC:37490,COMPRESSED_SIGNED_RG11_EAC:37491,COMPRESSED_RGB8_ETC2:37492,COMPRESSED_RGBA8_ETC2_EAC:37493,COMPRESSED_SRGB8_ETC2:37494,COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:37495,COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:37496,COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:37497,COMPRESSED_RGB_PVRTC_4BPPV1_IMG:35840,COMPRESSED_RGB_PVRTC_2BPPV1_IMG:35841,COMPRESSED_RGBA_PVRTC_4BPPV1_IMG:35842,COMPRESSED_RGBA_PVRTC_2BPPV1_IMG:35843,COMPRESSED_RGB_ETC1_WEBGL:36196,COMPRESSED_RGB_ATC_WEBGL:35986,COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL:35987,COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL:34798,COMPRESSED_RGBA_ASTC_4x4_KHR:37808,COMPRESSED_RGBA_ASTC_5x4_KHR:37809,COMPRESSED_RGBA_ASTC_5x5_KHR:37810,COMPRESSED_RGBA_ASTC_6x5_KHR:37811,COMPRESSED_RGBA_ASTC_6x6_KHR:37812,COMPRESSED_RGBA_ASTC_8x5_KHR:37813,COMPRESSED_RGBA_ASTC_8x6_KHR:37814,COMPRESSED_RGBA_ASTC_8x8_KHR:37815,COMPRESSED_RGBA_ASTC_10x5_KHR:37816,COMPRESSED_RGBA_ASTC_10x6_KHR:37817,COMPRESSED_RGBA_ASTC_10x8_KHR:37818,COMPRESSED_RGBA_ASTC_10x10_KHR:37819,COMPRESSED_RGBA_ASTC_12x10_KHR:37820,COMPRESSED_RGBA_ASTC_12x12_KHR:37821,COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR:37840,COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR:37841,COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR:37842,COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR:37843,COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR:37844,COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR:37845,COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR:37846,COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR:37847,COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR:37848,COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR:37849,COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR:37850,COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR:37851,COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR:37852,COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR:37853,COMPRESSED_RED_RGTC1_EXT:36283,COMPRESSED_SIGNED_RED_RGTC1_EXT:36284,COMPRESSED_RED_GREEN_RGTC2_EXT:36285,COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT:36286,COMPRESSED_RGBA_BPTC_UNORM_EXT:36492,COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT:36493,COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT:36494,COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT:36495,COMPRESSED_SRGB_S3TC_DXT1_EXT:35916,COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT:35917,COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT:35918,COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT:35919,COMPRESSED_RGBA_ASTC_4X4_KHR:37808,COMPRESSED_RGBA_ASTC_5X4_KHR:37809,COMPRESSED_RGBA_ASTC_5X5_KHR:37810,COMPRESSED_RGBA_ASTC_6X5_KHR:37811,COMPRESSED_RGBA_ASTC_6X6_KHR:37812,COMPRESSED_RGBA_ASTC_8X5_KHR:37813,COMPRESSED_RGBA_ASTC_8X6_KHR:37814,COMPRESSED_RGBA_ASTC_8X8_KHR:37815,COMPRESSED_RGBA_ASTC_10X5_KHR:37816,COMPRESSED_RGBA_ASTC_10X6_KHR:37817,COMPRESSED_RGBA_ASTC_10X8_KHR:37818,COMPRESSED_RGBA_ASTC_10X10_KHR:37819,COMPRESSED_RGBA_ASTC_12X10_KHR:37820,COMPRESSED_RGBA_ASTC_12X12_KHR:37821,COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR:37840,COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR:37841,COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR:37842,COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR:37843,COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR:37844,COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR:37845,COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR:37846,COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR:37847,COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR:37848,COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR:37849,COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR:37850,COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR:37851,COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR:37852,COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR:37853};var rs=["","WEBKIT_","MOZ_"],Yr={WEBGL_compressed_texture_s3tc:["bc1-rgb-unorm-webgl","bc1-rgba-unorm","bc2-rgba-unorm","bc3-rgba-unorm"],WEBGL_compressed_texture_s3tc_srgb:["bc1-rgb-unorm-srgb-webgl","bc1-rgba-unorm-srgb","bc2-rgba-unorm-srgb","bc3-rgba-unorm-srgb"],EXT_texture_compression_rgtc:["bc4-r-unorm","bc4-r-snorm","bc5-rg-unorm","bc5-rg-snorm"],EXT_texture_compression_bptc:["bc6h-rgb-ufloat","bc6h-rgb-float","bc7-rgba-unorm","bc7-rgba-unorm-srgb"],WEBGL_compressed_texture_etc1:["etc1-rgb-unorm-webgl"],WEBGL_compressed_texture_etc:["etc2-rgb8unorm","etc2-rgb8unorm-srgb","etc2-rgb8a1unorm","etc2-rgb8a1unorm-srgb","etc2-rgba8unorm","etc2-rgba8unorm-srgb","eac-r11unorm","eac-r11snorm","eac-rg11unorm","eac-rg11snorm"],WEBGL_compressed_texture_pvrtc:["pvrtc-rgb4unorm-webgl","pvrtc-rgba4unorm-webgl","pvrtc-rgb2unorm-webgl","pvrtc-rgba2unorm-webgl"],WEBGL_compressed_texture_atc:["atc-rgb-unorm-webgl","atc-rgba-unorm-webgl","atc-rgbai-unorm-webgl"],WEBGL_compressed_texture_astc:["astc-4x4-unorm","astc-4x4-unorm-srgb","astc-5x4-unorm","astc-5x4-unorm-srgb","astc-5x5-unorm","astc-5x5-unorm-srgb","astc-6x5-unorm","astc-6x5-unorm-srgb","astc-6x6-unorm","astc-6x6-unorm-srgb","astc-8x5-unorm","astc-8x5-unorm-srgb","astc-8x6-unorm","astc-8x6-unorm-srgb","astc-8x8-unorm","astc-8x8-unorm-srgb","astc-10x5-unorm","astc-10x5-unorm-srgb","astc-10x6-unorm","astc-10x6-unorm-srgb","astc-10x8-unorm","astc-10x8-unorm-srgb","astc-10x10-unorm","astc-10x10-unorm-srgb","astc-12x10-unorm","astc-12x10-unorm-srgb","astc-12x12-unorm","astc-12x12-unorm-srgb"]};var Ue=null;function Jr(e){if(!Ue){e=e||os()||void 0,Ue=new Set;for(let t of rs)for(let r in Yr)if(e&&e.getExtension(`${t}${r}`))for(let o of Yr[r])Ue.add(o)}return Ue}function os(){try{return document.createElement("canvas").getContext("webgl")}catch{return null}}var er=class{constructor(){this.vkFormat=0,this.typeSize=1,this.pixelWidth=0,this.pixelHeight=0,this.pixelDepth=0,this.layerCount=0,this.faceCount=1,this.supercompressionScheme=0,this.levels=[],this.dataFormatDescriptor=[{vendorId:0,descriptorType:0,descriptorBlockSize:0,versionNumber:2,colorModel:0,colorPrimaries:1,transferFunction:2,flags:0,texelBlockDimension:[0,0,0,0],bytesPlane:[0,0,0,0,0,0,0,0],samples:[]}],this.keyValue={},this.globalData=null}},H=class{constructor(t,r,o,n){this._dataView=void 0,this._littleEndian=void 0,this._offset=void 0,this._dataView=new DataView(t.buffer,t.byteOffset+r,o),this._littleEndian=n,this._offset=0}_nextUint8(){let t=this._dataView.getUint8(this._offset);return this._offset+=1,t}_nextUint16(){let t=this._dataView.getUint16(this._offset,this._littleEndian);return this._offset+=2,t}_nextUint32(){let t=this._dataView.getUint32(this._offset,this._littleEndian);return this._offset+=4,t}_nextUint64(){let t=this._dataView.getUint32(this._offset,this._littleEndian),r=this._dataView.getUint32(this._offset+4,this._littleEndian),o=t+2**32*r;return this._offset+=8,o}_nextInt32(){let t=this._dataView.getInt32(this._offset,this._littleEndian);return this._offset+=4,t}_nextUint8Array(t){let r=new Uint8Array(this._dataView.buffer,this._dataView.byteOffset+this._offset,t);return this._offset+=t,r}_skip(t){return this._offset+=t,this}_scan(t,r=0){let o=this._offset,n=0;for(;this._dataView.getUint8(this._offset)!==r&&n<t;)n++,this._offset++;return n<t&&this._offset++,new Uint8Array(this._dataView.buffer,this._dataView.byteOffset+o,n)}};var mi=new Uint8Array([0]),E=[171,75,84,88,32,50,48,187,13,10,26,10];function Zr(e){return new TextDecoder().decode(e)}function qr(e){let t=new Uint8Array(e.buffer,e.byteOffset,E.length);if(t[0]!==E[0]||t[1]!==E[1]||t[2]!==E[2]||t[3]!==E[3]||t[4]!==E[4]||t[5]!==E[5]||t[6]!==E[6]||t[7]!==E[7]||t[8]!==E[8]||t[9]!==E[9]||t[10]!==E[10]||t[11]!==E[11])throw new Error("Missing KTX 2.0 identifier.");let r=new er,o=17*Uint32Array.BYTES_PER_ELEMENT,n=new H(e,E.length,o,!0);r.vkFormat=n._nextUint32(),r.typeSize=n._nextUint32(),r.pixelWidth=n._nextUint32(),r.pixelHeight=n._nextUint32(),r.pixelDepth=n._nextUint32(),r.layerCount=n._nextUint32(),r.faceCount=n._nextUint32();let s=n._nextUint32();r.supercompressionScheme=n._nextUint32();let _=n._nextUint32(),a=n._nextUint32(),i=n._nextUint32(),c=n._nextUint32(),l=n._nextUint64(),S=n._nextUint64(),G=s*3*8,K=new H(e,E.length+o,G,!0);for(let A=0;A<s;A++)r.levels.push({levelData:new Uint8Array(e.buffer,e.byteOffset+K._nextUint64(),K._nextUint64()),uncompressedByteLength:K._nextUint64()});let R=new H(e,_,a,!0),Z={vendorId:R._skip(4)._nextUint16(),descriptorType:R._nextUint16(),versionNumber:R._nextUint16(),descriptorBlockSize:R._nextUint16(),colorModel:R._nextUint8(),colorPrimaries:R._nextUint8(),transferFunction:R._nextUint8(),flags:R._nextUint8(),texelBlockDimension:[R._nextUint8(),R._nextUint8(),R._nextUint8(),R._nextUint8()],bytesPlane:[R._nextUint8(),R._nextUint8(),R._nextUint8(),R._nextUint8(),R._nextUint8(),R._nextUint8(),R._nextUint8(),R._nextUint8()],samples:[]},et=6,tt=4,T=(Z.descriptorBlockSize/4-et)/tt;for(let A=0;A<T;A++){let P={bitOffset:R._nextUint16(),bitLength:R._nextUint8(),channelType:R._nextUint8(),samplePosition:[R._nextUint8(),R._nextUint8(),R._nextUint8(),R._nextUint8()],sampleLower:-1/0,sampleUpper:1/0};P.channelType&64?(P.sampleLower=R._nextInt32(),P.sampleUpper=R._nextInt32()):(P.sampleLower=R._nextUint32(),P.sampleUpper=R._nextUint32()),Z.samples[A]=P}r.dataFormatDescriptor.length=0,r.dataFormatDescriptor.push(Z);let g=new H(e,i,c,!0);for(;g._offset<c;){let A=g._nextUint32(),P=g._scan(A),ce=Zr(P);if(r.keyValue[ce]=g._nextUint8Array(A-P.byteLength-1),ce.match(/^ktx/i)){let Mr=Zr(r.keyValue[ce]);r.keyValue[ce]=Mr.substring(0,Mr.lastIndexOf("\0"))}let un=A%4?4-A%4:0;g._skip(un)}if(S<=0)return r;let m=new H(e,l,S,!0),O=m._nextUint16(),f=m._nextUint16(),ie=m._nextUint32(),pr=m._nextUint32(),xr=m._nextUint32(),nn=m._nextUint32(),Cr=[];for(let A=0;A<s;A++)Cr.push({imageFlags:m._nextUint32(),rgbSliceByteOffset:m._nextUint32(),rgbSliceByteLength:m._nextUint32(),alphaSliceByteOffset:m._nextUint32(),alphaSliceByteLength:m._nextUint32()});let dr=l+m._offset,Gr=dr+ie,Or=Gr+pr,sn=Or+xr,_n=new Uint8Array(e.buffer,e.byteOffset+dr,ie),an=new Uint8Array(e.buffer,e.byteOffset+Gr,pr),cn=new Uint8Array(e.buffer,e.byteOffset+Or,xr),Rn=new Uint8Array(e.buffer,e.byteOffset+sn,nn);return r.globalData={endpointCount:O,selectorCount:f,imageDescs:Cr,endpointsData:_n,selectorsData:an,tablesData:cn,extendedData:Rn},r}var Qr={[34836]:"rgba32float",[33776]:"bc1-rgb-unorm-webgl",[35916]:"bc1-rgb-unorm-srgb-webgl",[33777]:"bc1-rgba-unorm",[35917]:"bc1-rgba-unorm-srgb",[33778]:"bc2-rgba-unorm",[35918]:"bc2-rgba-unorm-srgb",[33779]:"bc3-rgba-unorm",[35919]:"bc3-rgba-unorm-srgb",[36283]:"bc4-r-unorm",[36284]:"bc4-r-snorm",[36285]:"bc5-rg-unorm",[36286]:"bc5-rg-snorm",[37492]:"etc2-rgb8unorm",[37494]:"etc2-rgb8unorm-srgb",[37496]:"etc2-rgb8a1unorm",[37497]:"etc2-rgb8a1unorm-srgb",[37493]:"etc2-rgba8unorm",[37495]:"etc2-rgba8unorm-srgb",[37488]:"eac-r11unorm",[37489]:"eac-r11snorm",[37490]:"eac-rg11unorm",[37491]:"eac-rg11snorm",[37808]:"astc-4x4-unorm",[37840]:"astc-4x4-unorm-srgb",[37809]:"astc-5x4-unorm",[37841]:"astc-5x4-unorm-srgb",[37810]:"astc-5x5-unorm",[37842]:"astc-5x5-unorm-srgb",[37811]:"astc-6x5-unorm",[37843]:"astc-6x5-unorm-srgb",[37812]:"astc-6x6-unorm",[37844]:"astc-6x6-unorm-srgb",[37813]:"astc-8x5-unorm",[37845]:"astc-8x5-unorm-srgb",[37814]:"astc-8x6-unorm",[37846]:"astc-8x6-unorm-srgb",[37815]:"astc-8x8-unorm",[37847]:"astc-8x8-unorm-srgb",[37816]:"astc-10x5-unorm",[37848]:"astc-10x5-unorm-srgb",[37817]:"astc-10x6-unorm",[37849]:"astc-10x6-unorm-srgb",[37818]:"astc-10x8-unorm",[37850]:"astc-10x8-unorm-srgb",[37819]:"astc-10x10-unorm",[37851]:"astc-10x10-unorm-srgb",[37820]:"astc-12x10-unorm",[37852]:"astc-12x10-unorm-srgb",[37821]:"astc-12x12-unorm",[37853]:"astc-12x12-unorm-srgb",[35840]:"pvrtc-rgb4unorm-webgl",[35842]:"pvrtc-rgba4unorm-webgl",[35841]:"pvrtc-rgb2unorm-webgl",[35843]:"pvrtc-rgba2unorm-webgl",[36196]:"etc1-rgb-unorm-webgl",[35986]:"atc-rgb-unorm-webgl",[35987]:"atc-rgba-unorm-webgl",[34798]:"atc-rgbai-unorm-webgl"},ns=Object.fromEntries(Object.entries(Qr).map(([e,t])=>[t,Number(e)]));function Ne(e){if(e!==void 0)return Qr[e]}function eo(e){if(e!==void 0)return ns[e]}function j(e,t){let r=new Array(t.mipMapLevels),o=t.textureFormat||Ne(t.internalFormat),n=t.internalFormat||eo(t.textureFormat),s=t.width,_=t.height,a=0;for(let i=0;i<t.mipMapLevels;++i){let c=_s(t,s,_,e,i),S={shape:"texture-level",compressed:!0,data:ss(e,i,a,c),width:s,height:_,levelSize:c};n!==void 0&&(S.format=n),o&&(S.textureFormat=o),r[i]=S,s=Math.max(1,s>>1),_=Math.max(1,_>>1),a+=c}return r}function ss(e,t,r,o){return Array.isArray(e)?e[t].levelData:new Uint8Array(e.buffer,e.byteOffset+r,o)}function _s(e,t,r,o,n){return Array.isArray(o)?e.sizeFunction(o[n]):e.sizeFunction(t,r)}var as={131:33776,132:35916,133:33777,134:35917,135:33778,136:35918,137:33779,138:35919,139:36283,140:36284,141:36285,142:36286,147:37492,148:37494,149:37496,150:37497,151:37493,152:37495,153:37488,154:37489,155:37490,156:37491,157:37808,158:37840,159:37809,160:37841,161:37810,162:37842,163:37811,164:37843,165:37812,166:37844,167:37813,168:37845,169:37814,170:37846,171:37815,172:37847,173:37816,174:37848,175:37817,176:37849,177:37818,178:37850,179:37819,180:37851,181:37820,182:37852,183:37821,184:37853,1000054e3:35843,1000054001:35842,1000066e3:37808,1000066001:37809,1000066002:37810,1000066003:37811,1000066004:37812,1000066005:37813,1000066006:37814,1000066007:37815,1000066008:37816,1000066009:37817,1000066010:37818,1000066011:37819,1000066012:37820,1000066013:37821};function is(e){return as[e]}function to(e){return Ne(is(e))}var p=[171,75,84,88,32,50,48,187,13,10,26,10];function Ve(e){let t=new Uint8Array(e);return!(t.byteLength<p.length||t[0]!==p[0]||t[1]!==p[1]||t[2]!==p[2]||t[3]!==p[3]||t[4]!==p[4]||t[5]!==p[5]||t[6]!==p[6]||t[7]!==p[7]||t[8]!==p[8]||t[9]!==p[9]||t[10]!==p[10]||t[11]!==p[11])}function ro(e){let t=new Uint8Array(e),r=qr(t),o=Math.max(1,r.levels.length),n=r.pixelWidth,s=r.pixelHeight,_=to(r.vkFormat);return _===void 0&&ct.warn(`KTX2 container vkFormat ${r.vkFormat} does not map to a known texture format; returning texture levels without format metadata.`)(),j(r.levels,{mipMapLevels:o,width:n,height:s,sizeFunction:a=>a.uncompressedByteLength,textureFormat:_})}var oo=Promise.resolve(),_o={etc1:{basisFormat:0,compressed:!0,format:36196,textureFormat:"etc1-rgb-unorm-webgl"},etc2:{basisFormat:1,compressed:!0,format:37493,textureFormat:"etc2-rgba8unorm"},bc1:{basisFormat:2,compressed:!0,format:33776,textureFormat:"bc1-rgb-unorm-webgl"},bc3:{basisFormat:3,compressed:!0,format:33779,textureFormat:"bc3-rgba-unorm"},bc4:{basisFormat:4,compressed:!0,format:36283,textureFormat:"bc4-r-unorm"},bc5:{basisFormat:5,compressed:!0,format:36285,textureFormat:"bc5-rg-unorm"},"bc7-m6-opaque-only":{basisFormat:6,compressed:!0,format:36492,textureFormat:"bc7-rgba-unorm"},"bc7-m5":{basisFormat:7,compressed:!0,format:36492,textureFormat:"bc7-rgba-unorm"},"pvrtc1-4-rgb":{basisFormat:8,compressed:!0,format:35840,textureFormat:"pvrtc-rgb4unorm-webgl"},"pvrtc1-4-rgba":{basisFormat:9,compressed:!0,format:35842,textureFormat:"pvrtc-rgba4unorm-webgl"},"astc-4x4":{basisFormat:10,compressed:!0,format:37808,textureFormat:"astc-4x4-unorm"},"atc-rgb":{basisFormat:11,compressed:!0,format:35986,textureFormat:"atc-rgb-unorm-webgl"},"atc-rgba-interpolated-alpha":{basisFormat:12,compressed:!0,format:34798,textureFormat:"atc-rgbai-unorm-webgl"},rgba32:{basisFormat:13,compressed:!1,format:32856,textureFormat:"rgba8unorm"},rgb565:{basisFormat:14,compressed:!1,format:36194,textureFormat:"rgb565unorm-webgl"},bgr565:{basisFormat:15,compressed:!1,format:36194,textureFormat:"rgb565unorm-webgl"},rgba4444:{basisFormat:16,compressed:!1,format:32854,textureFormat:"rgba4unorm-webgl"}},Pi=Object.freeze(Object.keys(_o));async function cs(e){let t=oo,r;oo=new Promise(o=>{r=o}),await t;try{return await e()}finally{r()}}async function Xe(e,t={}){let r=q(t);return await cs(async()=>{if(!t.basis?.containerFormat||t.basis.containerFormat==="auto"){if(Ve(e)){let n=await ee(r);return no(n.KTX2File,e,t)}let{BasisFile:o}=await mt(r);return tr(o,e,t)}switch(t.basis.module){case"encoder":let o=await ee(r);switch(t.basis.containerFormat){case"ktx2":return no(o.KTX2File,e,t);case"basis":default:return tr(o.BasisFile,e,t)}case"transcoder":default:let{BasisFile:n}=await mt(r);return tr(n,e,t)}})}function tr(e,t,r){let o=new e(new Uint8Array(t));try{if(!o.startTranscoding())throw new Error("Failed to start basis transcoding");let n=o.getNumImages(),s=[];for(let _=0;_<n;_++){let a=o.getNumLevels(_),i=[];for(let c=0;c<a;c++)i.push(Rs(o,_,c,r));s.push(i)}return s}finally{o.close(),o.delete()}}function Rs(e,t,r,o){let n=e.getImageWidth(t,r),s=e.getImageHeight(t,r),_=e.getHasAlpha(),{compressed:a,format:i,basisFormat:c,textureFormat:l}=ao(o,_),S=e.getImageTranscodedSizeInBytes(t,r,c),G=new Uint8Array(S);if(!e.transcodeImage(G,t,r,c,0,0))throw new Error("failed to start Basis transcoding");return{shape:"texture-level",width:n,height:s,data:G,compressed:a,...i!==void 0?{format:i}:{},...l!==void 0?{textureFormat:l}:{},hasAlpha:_}}function no(e,t,r){let o=new e(new Uint8Array(t));try{if(!o.startTranscoding())throw new Error("failed to start KTX2 transcoding");let n=o.getLevels(),s=[];for(let _=0;_<n;_++)s.push(us(o,_,r));return[s]}finally{o.close(),o.delete()}}function us(e,t,r){let{alphaFlag:o,height:n,width:s}=e.getImageLevelInfo(t,0,0),{compressed:_,format:a,basisFormat:i,textureFormat:c}=ao(r,o),l=e.getImageTranscodedSizeInBytes(t,0,0,i),S=new Uint8Array(l);if(!e.transcodeImage(S,t,0,0,i,0,-1,-1))throw new Error("Failed to transcode KTX2 image");return{shape:"texture-level",width:s,height:n,data:S,compressed:_,...a!==void 0?{format:a}:{},...c!==void 0?{textureFormat:c}:{},levelSize:l,hasAlpha:o}}function ao(e,t){let r=e.basis?.format||"auto";r==="auto"&&(r=e.basis?.supportedTextureFormats?so(e.basis.supportedTextureFormats):so()),typeof r=="object"&&(r=t?r.alpha:r.noAlpha);let o=r.toLowerCase(),n=_o[o];if(!n)throw new Error(`Unknown Basis format ${r}`);return n}function so(e=Jr()){let t=new Set(e);return Y(t,["astc-4x4-unorm","astc-4x4-unorm-srgb"])?"astc-4x4":Y(t,["bc7-rgba-unorm","bc7-rgba-unorm-srgb"])?{alpha:"bc7-m5",noAlpha:"bc7-m6-opaque-only"}:Y(t,["bc1-rgb-unorm-webgl","bc1-rgb-unorm-srgb-webgl","bc1-rgba-unorm","bc1-rgba-unorm-srgb","bc2-rgba-unorm","bc2-rgba-unorm-srgb","bc3-rgba-unorm","bc3-rgba-unorm-srgb"])?{alpha:"bc3",noAlpha:"bc1"}:Y(t,["pvrtc-rgb4unorm-webgl","pvrtc-rgba4unorm-webgl","pvrtc-rgb2unorm-webgl","pvrtc-rgba2unorm-webgl"])?{alpha:"pvrtc1-4-rgba",noAlpha:"pvrtc1-4-rgb"}:Y(t,["etc2-rgb8unorm","etc2-rgb8unorm-srgb","etc2-rgb8a1unorm","etc2-rgb8a1unorm-srgb","etc2-rgba8unorm","etc2-rgba8unorm-srgb","eac-r11unorm","eac-r11snorm","eac-rg11unorm","eac-rg11snorm"])?"etc2":t.has("etc1-rgb-unorm-webgl")?"etc1":Y(t,["atc-rgb-unorm-webgl","atc-rgba-unorm-webgl","atc-rgbai-unorm-webgl"])?{alpha:"atc-rgba-interpolated-alpha",noAlpha:"atc-rgb"}:"rgb565"}function Y(e,t){return t.some(r=>e.has(r))}var rr={dataType:null,batchType:null,name:"Basis",id:"basis",module:"textures",version:u,worker:!0,extensions:["basis","ktx2"],mimeTypes:["application/octet-stream","image/ktx2"],tests:["sB"],binary:!0,options:{basis:{format:"auto",containerFormat:"auto",module:"transcoder"}}},io={...rr,parse:Xe};var x={MAGIC_NUMBER:542327876,HEADER_LENGTH:31,MAGIC_NUMBER_INDEX:0,HEADER_SIZE_INDEX:1,HEADER_FLAGS_INDEX:2,HEADER_HEIGHT_INDEX:3,HEADER_WIDTH_INDEX:4,MIPMAPCOUNT_INDEX:7,HEADER_PF_FLAGS_INDEX:20,HEADER_PF_FOURCC_INDEX:21,DDSD_MIPMAPCOUNT:131072,DDPF_FOURCC:4},Ss={DXT1:"bc1-rgb-unorm-webgl",DXT3:"bc2-rgba-unorm",DXT5:"bc3-rgba-unorm","ATC ":"atc-rgb-unorm-webgl",ATCA:"atc-rgba-unorm-webgl",ATCI:"atc-rgbai-unorm-webgl"},ls=uo,ms=ve,Es=ve,fs={DXT1:uo,DXT3:ve,DXT5:ve,"ATC ":ls,ATCA:ms,ATCI:Es};function co(e){return new Uint32Array(e,0,x.HEADER_LENGTH)[x.MAGIC_NUMBER_INDEX]===x.MAGIC_NUMBER}function Ro(e){let t=new Int32Array(e,0,x.HEADER_LENGTH),r=t[x.HEADER_PF_FOURCC_INDEX];B(Boolean(t[x.HEADER_PF_FLAGS_INDEX]&x.DDPF_FOURCC),"DDS: Unsupported format, must contain a FourCC code");let o=As(r),n=Ss[o],s=fs[o];B(n&&s,`DDS: Unknown pixel format ${r}`);let _=1;t[x.HEADER_FLAGS_INDEX]&x.DDSD_MIPMAPCOUNT&&(_=Math.max(1,t[x.MIPMAPCOUNT_INDEX]));let a=t[x.HEADER_WIDTH_INDEX],i=t[x.HEADER_HEIGHT_INDEX],c=t[x.HEADER_SIZE_INDEX]+4,l=new Uint8Array(e,c);return j(l,{mipMapLevels:_,width:a,height:i,sizeFunction:s,textureFormat:n})}function uo(e,t){return(e+3>>2)*(t+3>>2)*8}function ve(e,t){return(e+3>>2)*(t+3>>2)*16}function As(e){return String.fromCharCode(e&255,e>>8&255,e>>16&255,e>>24&255)}var C={MAGIC_NUMBER:55727696,MAGIC_NUMBER_EXTRA:1347834371,HEADER_LENGTH:13,HEADER_SIZE:52,MAGIC_NUMBER_INDEX:0,PIXEL_FORMAT_INDEX:2,COLOUR_SPACE_INDEX:4,HEIGHT_INDEX:6,WIDTH_INDEX:7,MIPMAPCOUNT_INDEX:11,METADATA_SIZE_INDEX:12},Ts={0:["pvrtc-rgb2unorm-webgl"],1:["pvrtc-rgba2unorm-webgl"],2:["pvrtc-rgb4unorm-webgl"],3:["pvrtc-rgba4unorm-webgl"],6:["etc1-rgb-unorm-webgl"],7:["bc1-rgb-unorm-webgl"],9:["bc2-rgba-unorm"],11:["bc3-rgba-unorm"],22:["etc2-rgb8unorm"],23:["etc2-rgba8unorm"],24:["etc2-rgb8a1unorm"],25:["eac-r11unorm"],26:["eac-rg11unorm"],27:["astc-4x4-unorm","astc-4x4-unorm-srgb"],28:["astc-5x4-unorm","astc-5x4-unorm-srgb"],29:["astc-5x5-unorm","astc-5x5-unorm-srgb"],30:["astc-6x5-unorm","astc-6x5-unorm-srgb"],31:["astc-6x6-unorm","astc-6x6-unorm-srgb"],32:["astc-8x5-unorm","astc-8x5-unorm-srgb"],33:["astc-8x6-unorm","astc-8x6-unorm-srgb"],34:["astc-8x8-unorm","astc-8x8-unorm-srgb"],35:["astc-10x5-unorm","astc-10x5-unorm-srgb"],36:["astc-10x6-unorm","astc-10x6-unorm-srgb"],37:["astc-10x8-unorm","astc-10x8-unorm-srgb"],38:["astc-10x10-unorm","astc-10x10-unorm-srgb"],39:["astc-12x10-unorm","astc-12x10-unorm-srgb"],40:["astc-12x12-unorm","astc-12x12-unorm-srgb"]},gs={0:So,1:So,2:lo,3:lo,6:re,7:re,9:oe,11:oe,22:re,23:oe,24:re,25:re,26:oe,27:oe,28:ps,29:xs,30:Cs,31:ds,32:Gs,33:Os,34:Ms,35:Bs,36:bs,37:Ls,38:Ps,39:hs,40:Ds};function mo(e){let r=new Uint32Array(e,0,C.HEADER_LENGTH)[C.MAGIC_NUMBER_INDEX];return r===C.MAGIC_NUMBER||r===C.MAGIC_NUMBER_EXTRA}function Eo(e){let t=new Uint32Array(e,0,C.HEADER_LENGTH),r=t[C.PIXEL_FORMAT_INDEX],o=t[C.COLOUR_SPACE_INDEX],n=Ts[r]||[],s=n.length>1&&o?n[1]:n[0],_=gs[r],a=t[C.MIPMAPCOUNT_INDEX],i=t[C.WIDTH_INDEX],c=t[C.HEIGHT_INDEX],l=C.HEADER_SIZE+t[C.METADATA_SIZE_INDEX],S=new Uint8Array(e,l);return j(S,{mipMapLevels:a,width:i,height:c,sizeFunction:_,textureFormat:s})}function So(e,t){return e=Math.max(e,16),t=Math.max(t,8),e*t/4}function lo(e,t){return e=Math.max(e,8),t=Math.max(t,8),e*t/2}function re(e,t){return Math.floor((e+3)/4)*Math.floor((t+3)/4)*8}function oe(e,t){return Math.floor((e+3)/4)*Math.floor((t+3)/4)*16}function ps(e,t){return Math.floor((e+4)/5)*Math.floor((t+3)/4)*16}function xs(e,t){return Math.floor((e+4)/5)*Math.floor((t+4)/5)*16}function Cs(e,t){return Math.floor((e+5)/6)*Math.floor((t+4)/5)*16}function ds(e,t){return Math.floor((e+5)/6)*Math.floor((t+5)/6)*16}function Gs(e,t){return Math.floor((e+7)/8)*Math.floor((t+4)/5)*16}function Os(e,t){return Math.floor((e+7)/8)*Math.floor((t+5)/6)*16}function Ms(e,t){return Math.floor((e+7)/8)*Math.floor((t+7)/8)*16}function Bs(e,t){return Math.floor((e+9)/10)*Math.floor((t+4)/5)*16}function bs(e,t){return Math.floor((e+9)/10)*Math.floor((t+5)/6)*16}function Ls(e,t){return Math.floor((e+9)/10)*Math.floor((t+7)/8)*16}function Ps(e,t){return Math.floor((e+9)/10)*Math.floor((t+9)/10)*16}function hs(e,t){return Math.floor((e+11)/12)*Math.floor((t+9)/10)*16}function Ds(e,t){return Math.floor((e+11)/12)*Math.floor((t+11)/12)*16}function fo(e){if(Ve(e))return ro(e);if(co(e))return Ro(e);if(mo(e))return Eo(e);throw new Error("Texture container format not recognized")}var or={dataType:null,batchType:null,name:"Texture Containers",id:"compressed-texture",module:"textures",version:u,worker:!0,extensions:["ktx","ktx2","dds","pvr"],mimeTypes:["image/ktx2","image/ktx","image/vnd-ms.dds","image/x-dds","application/octet-stream"],binary:!0,options:{"compressed-texture":{useBasis:!1}}},Ao={...or,parse:async(e,t)=>(t={...t},t?.["compressed-texture"]?.useBasis?(t.basis={format:{alpha:"BC3",noAlpha:"BC1"},...t.basis,containerFormat:"ktx2",module:"encoder"},(await Xe(e,t))[0]):fo(e))};var nr={dataType:null,batchType:null,id:"crunch",name:"Crunch",module:"textures",version:u,worker:!0,extensions:["crn"],mimeTypes:["image/crn","image/x-crn","application/octet-stream"],binary:!0,options:{crunch:{}}};var xo=["#?RADIANCE","#?RGBE"],ws="32-bit_rle_rgbe";function Co(e){let t={data:new Uint8Array(e),offset:0},r=ir(t);return r?xo.includes(r):!1}function cr(e){let t={data:new Uint8Array(e),offset:0},r=Ks(t),{width:o,height:n}=r,s=ys(t,r),_=Is(s),a={shape:"texture-level",compressed:!1,width:o,height:n,data:_,levelSize:_.byteLength,format:34836,textureFormat:"rgba32float"};return{shape:"texture",type:"2d",format:"rgba32float",...r.metadata?{metadata:r.metadata}:{},data:[a]}}function Ks(e){let t=ir(e);if(!t||!xo.includes(t))throw new Error("RadianceHDRLoader: bad initial token");let r=!1,o={};for(;e.offset<e.data.length;){let n=ir(e);if(n===null)break;if(!n||n.startsWith("#"))continue;if(n.startsWith("FORMAT=")){if(r=n.slice(7)===ws,!r)throw new Error("RadianceHDRLoader: unsupported format specifier");continue}Hs(o,n);let s=Fs(n);if(s){if(!r)throw new Error("RadianceHDRLoader: missing format specifier");return{...s,...Us(o)?{metadata:o}:{}}}}throw r?new Error("RadianceHDRLoader: missing image size specifier"):new Error("RadianceHDRLoader: missing format specifier")}function Fs(e){let t=e.match(/^([+-])([YX])\s+(\d+)\s+([+-])([YX])\s+(\d+)$/);if(!t)return null;let r=t[1]==="+"?1:-1,o=t[2],n=Number(t[3]),s=t[4]==="+"?1:-1,_=t[5],a=Number(t[6]);if(o===_)throw new Error("RadianceHDRLoader: invalid image dimensions");let i=o==="X"?n:a,c=o==="Y"?n:a;if(!Number.isFinite(i)||!Number.isFinite(c)||i<=0||c<=0)throw new Error("RadianceHDRLoader: invalid image dimensions");return{width:i,height:c,majorAxis:o,majorSign:r,minorAxis:_,minorSign:s}}function ys(e,t){let{width:r,height:o}=t,s=r*o*4,_=t.minorAxis==="X"?r:o,a=t.majorAxis==="Y"?o:r;if(_<8||_>32767)return sr(_r(e,s),t);if(e.offset+4>e.data.length)throw new Error("RadianceHDRLoader: unexpected end of file");let i=e.data;if(!(i[e.offset]===2&&i[e.offset+1]===2&&!(i[e.offset+2]&128))||(i[e.offset+2]<<8|i[e.offset+3])!==_)return sr(_r(e,s),t);let S=new Uint8Array(s),G=new Uint8Array(_*4);for(let K=0;K<a;K++){if(e.offset+4>i.length)throw new Error("RadianceHDRLoader: unexpected end of file");let R=i[e.offset++],Z=i[e.offset++],et=i[e.offset++],tt=i[e.offset++];if(R!==2||Z!==2||(et<<8|tt)!==_)throw new Error("RadianceHDRLoader: bad rgbe scanline format");for(let T=0;T<4;T++){let g=T*_,m=g+_,O=g;for(;O<m;){if(e.offset>=i.length)throw new Error("RadianceHDRLoader: unexpected end of file");let f=i[e.offset++];if(f>128){if(f-=128,f===0||O+f>m||e.offset>=i.length)throw new Error("RadianceHDRLoader: bad scanline data");let ie=i[e.offset++];G.fill(ie,O,O+f),O+=f;continue}if(f===0||O+f>m||e.offset+f>i.length)throw new Error("RadianceHDRLoader: bad scanline data");G.set(i.subarray(e.offset,e.offset+f),O),O+=f,e.offset+=f}}for(let T=0;T<_;T++){let g=Go(t,K,T);S[g]=G[T],S[g+1]=G[T+_],S[g+2]=G[T+_*2],S[g+3]=G[T+_*3]}}return S}function sr(e,t){let r=new Uint8Array(e.length),o=t.minorAxis==="X"?t.width:t.height,n=t.majorAxis==="Y"?t.height:t.width;for(let s=0;s<n;s++)for(let _=0;_<o;_++){let a=(s*o+_)*4,i=Go(t,s,_);r[i]=e[a],r[i+1]=e[a+1],r[i+2]=e[a+2],r[i+3]=e[a+3]}return r}function Go(e,t,r){let o=To(e.majorAxis==="X"?e.width:e.height,e.majorSign,t),n=To(e.minorAxis==="X"?e.width:e.height,e.minorSign,r),s=e.majorAxis==="X"?o:n,_=e.majorAxis==="Y"?o:n;return((e.height-1-_)*e.width+s)*4}function To(e,t,r){return t===1?r:e-1-r}function _r(e,t){if(e.offset+t>e.data.length)throw new Error("RadianceHDRLoader: unexpected end of file");let r=e.data.slice(e.offset,e.offset+t);return e.offset+=t,r}function Is(e){let t=new Float32Array(e.length);for(let r=0;r<e.length;r+=4){let o=e[r+3],n=r;if(o>0){let s=Math.pow(2,o-128)/255;t[n]=e[r]*s,t[n+1]=e[r+1]*s,t[n+2]=e[r+2]*s}t[n+3]=1}return t}function ir(e){if(e.offset>=e.data.length)return null;let t=e.offset;for(;e.offset<e.data.length;)if(e.data[e.offset++]===10){let n=go(e.data.subarray(t,e.offset-1));return n.endsWith("\r")?n.slice(0,-1):n}let r=go(e.data.subarray(t,e.offset));return r.endsWith("\r")?r.slice(0,-1):r}function go(e){let t="";for(let r of e)t+=String.fromCharCode(r);return t}function Hs(e,t){if(t.startsWith("COLORCORR=")){let r=po(t.slice(10),3);r&&(e.colorCorrection=r);return}if(t.startsWith("EXPOSURE=")){let r=ar(t.slice(9));r!==null&&(e.exposure=r);return}if(t.startsWith("GAMMA=")){let r=ar(t.slice(6));r!==null&&(e.gamma=r);return}if(t.startsWith("PIXASPECT=")){let r=ar(t.slice(10));r!==null&&(e.pixelAspectRatio=r);return}if(t.startsWith("PRIMARIES=")){let r=po(t.slice(10),8);r&&(e.primaries=r);return}if(t.startsWith("SOFTWARE=")){e.software=t.slice(9).trim();return}t.startsWith("VIEW=")&&(e.view=t.slice(5).trim())}function ar(e){let t=Number(e.trim());return Number.isFinite(t)?t:null}function po(e,t){let r=e.trim().split(/\s+/).map(o=>Number(o));return r.length!==t||r.some(o=>!Number.isFinite(o))?null:r}function Us(e){return Object.keys(e).length>0}var Oo={dataType:null,batchType:null,name:"Radiance HDR",id:"hdr",module:"textures",version:u,extensions:["hdr"],mimeTypes:["image/vnd.radiance","image/x-hdr","application/octet-stream"],binary:!0,tests:[Co],options:{hdr:{}},parseSync:cr,parse:async e=>cr(e)};var Rr=new Uint32Array([305419896]),Ns=new Uint8Array(Rr.buffer,Rr.byteOffset,Rr.byteLength),Vs=Ns[0]!==18,Mo=Vs,Xs={u1:Uint8Array,i1:Int8Array,u2:Uint16Array,i2:Int16Array,u4:Uint32Array,i4:Int32Array,f4:Float32Array,f8:Float64Array};function ur(e,t){let r=new DataView(e),{header:o,headerEndOffset:n}=vs(r),s=o.descr,_=Xs[s.slice(1,3)];if(!_)throw new Error(`Unimplemented type ${s}`);let i=o.shape?.reduce((l,S)=>l*S)*_.BYTES_PER_ELEMENT;if(e.byteLength<n+i)throw new Error("Buffer overflow");let c=new _(e.slice(n,n+i));if(s[0]===">"&&Mo||s[0]==="<"&&!Mo)throw new Error("Incorrect endianness");return{data:c,header:o}}function vs(e){let t=e.getUint8(6),r=8,o;t>=2?(o=e.getUint32(r,!0),r+=4):(o=e.getUint16(r,!0),r+=2);let n=t<=2?"latin1":"utf-8",s=new TextDecoder(n),_=new Uint8Array(e.buffer,r,o),a=s.decode(_);return r+=o,{header:JSON.parse(a.replace(/'/g,'"').replace("False","false").replace("(","[").replace(/,*\),*/g,"]")),headerEndOffset:r}}var ks=new Uint8Array([147,78,85,77,80,89]),Sr={dataType:null,batchType:null,name:"NPY",id:"npy",module:"textures",version:u,worker:!0,extensions:["npy"],mimeTypes:[],tests:[ks.buffer],options:{npy:{}}},Bo={...Sr,parseSync:ur,parse:async(e,t)=>ur(e,t)};var bo="4.4.1";var Ws=globalThis.loaders?.parseImageNode,lr=typeof Image<"u",mr=typeof ImageBitmap<"u",$s=Boolean(Ws),Er=nt?!0:$s;function Lo(e){switch(e){case"auto":return mr||lr||Er;case"imagebitmap":return mr;case"image":return lr;case"data":return Er;default:throw new Error(`@loaders.gl/images: image ${e} not supported in this environment`)}}function Po(){if(mr)return"imagebitmap";if(lr)return"image";if(Er)return"data";throw new Error("Install '@loaders.gl/polyfills' to parse images under Node.js")}function ke(e){return Boolean(Do(e))}function ho(e){let t=Do(e);if(!t)throw new Error("Not an image");return t}function J(e){return We(e)}function We(e){switch(ho(e)){case"data":return e;case"image":case"imagebitmap":let t=document.createElement("canvas"),r=t.getContext("2d");if(!r)throw new Error("getImageData");return t.width=e.width,t.height=e.height,r.drawImage(e,0,0),r.getImageData(0,0,e.width,e.height);default:throw new Error("getImageData")}}function Do(e){return typeof ImageBitmap<"u"&&e instanceof ImageBitmap?"imagebitmap":typeof Image<"u"&&e instanceof Image?"image":e&&typeof e=="object"&&e.data&&e.width&&e.height?"data":null}var zs=/^data:image\/svg\+xml/,js=/\.svg((\?|#).*)?$/;function $e(e){return e&&(zs.test(e)||js.test(e))}function wo(e,t){if($e(t)){let o=new TextDecoder().decode(e);try{typeof unescape=="function"&&typeof encodeURIComponent=="function"&&(o=unescape(encodeURIComponent(o)))}catch(s){throw new Error(s.message)}return`data:image/svg+xml;base64,${btoa(o)}`}return fr(e,t)}function fr(e,t){if($e(t))throw new Error("SVG cannot be parsed directly to imagebitmap");return new Blob([new Uint8Array(e)])}async function ze(e,t,r){let o=wo(e,r),n=self.URL||self.webkitURL,s=typeof o!="string"&&n.createObjectURL(o);try{return await Ys(s||o,t)}finally{s&&n.revokeObjectURL(s)}}async function Ys(e,t){let r=new Image;return r.src=e,t.image&&t.image.decode&&r.decode?(await r.decode(),r):await new Promise((o,n)=>{try{r.onload=()=>o(r),r.onerror=s=>{let _=s instanceof Error?s.message:"error";n(new Error(_))}}catch(s){n(s)}})}var Ko=!0;async function Fo(e,t,r){let o;$e(r)?o=await ze(e,t,r):o=fr(e,r);let n=t&&t.imagebitmap;return await Js(o,n)}async function Js(e,t=null){if((Zs(t)||!Ko)&&(t=null),t)try{return await createImageBitmap(e,t)}catch(r){console.warn(r),Ko=!1}return await createImageBitmap(e)}function Zs(e){if(!e)return!0;for(let t in e)if(Object.prototype.hasOwnProperty.call(e,t))return!1;return!0}function yo(e){return!t_(e,"ftyp",4)||!(e[8]&96)?null:qs(e)}function qs(e){switch(Qs(e,8,12).replace("\0"," ").trim()){case"avif":case"avis":return{extension:"avif",mimeType:"image/avif"};default:return null}}function Qs(e,t,r){return String.fromCharCode(...e.slice(t,r))}function e_(e){return[...e].map(t=>t.charCodeAt(0))}function t_(e,t,r=0){let o=e_(t);for(let n=0;n<o.length;++n)if(o[n]!==e[n+r])return!1;return!0}var L=!1,ne=!0;function je(e){let t=se(e);return o_(t)||__(t)||n_(t)||s_(t)||r_(t)}function r_(e){let t=new Uint8Array(e instanceof DataView?e.buffer:e),r=yo(t);return r?{mimeType:r.mimeType,width:0,height:0}:null}function o_(e){let t=se(e);return t.byteLength>=24&&t.getUint32(0,L)===2303741511?{mimeType:"image/png",width:t.getUint32(16,L),height:t.getUint32(20,L)}:null}function n_(e){let t=se(e);return t.byteLength>=10&&t.getUint32(0,L)===1195984440?{mimeType:"image/gif",width:t.getUint16(6,ne),height:t.getUint16(8,ne)}:null}function s_(e){let t=se(e);return t.byteLength>=14&&t.getUint16(0,L)===16973&&t.getUint32(2,ne)===t.byteLength?{mimeType:"image/bmp",width:t.getUint32(18,ne),height:t.getUint32(22,ne)}:null}function __(e){let t=se(e);if(!(t.byteLength>=3&&t.getUint16(0,L)===65496&&t.getUint8(2)===255))return null;let{tableMarkers:o,sofMarkers:n}=a_(),s=2;for(;s+9<t.byteLength;){let _=t.getUint16(s,L);if(n.has(_))return{mimeType:"image/jpeg",height:t.getUint16(s+5,L),width:t.getUint16(s+7,L)};if(!o.has(_))return null;s+=2,s+=t.getUint16(s,L)}return null}function a_(){let e=new Set([65499,65476,65484,65501,65534]);for(let r=65504;r<65520;++r)e.add(r);return{tableMarkers:e,sofMarkers:new Set([65472,65473,65474,65475,65477,65478,65479,65481,65482,65483,65485,65486,65487,65502])}}function se(e){if(e instanceof DataView)return e;if(ArrayBuffer.isView(e))return new DataView(e.buffer);if(e instanceof ArrayBuffer)return new DataView(e);throw new Error("toDataView")}async function Io(e,t){let{mimeType:r}=je(e)||{},o=globalThis.loaders?.parseImageNode;return B(o),await o(e,r)}async function Ho(e,t,r){t=t||{};let n=(t.image||{}).type||"auto",{url:s}=r||{},_=i_(n),a;switch(_){case"imagebitmap":a=await Fo(e,t,s);break;case"image":a=await ze(e,t,s);break;case"data":a=await Io(e,t);break;default:B(!1)}return n==="data"&&(a=We(a)),a}function i_(e){switch(e){case"auto":case"data":return Po();default:return Lo(e),e}}var c_=["png","jpg","jpeg","gif","webp","bmp","ico","svg","avif"],R_=["image/png","image/jpeg","image/gif","image/webp","image/avif","image/bmp","image/vnd.microsoft.icon","image/svg+xml"],u_={image:{type:"auto",decode:!0}},Ye={dataType:null,batchType:null,id:"image",module:"images",name:"Images",version:bo,mimeTypes:R_,extensions:c_,parse:Ho,tests:[e=>Boolean(je(new DataView(e)))],options:u_};var S_=e=>e&&typeof e=="object";async function Uo(e,t,r={}){return await Ar(e,t,r)}async function Ar(e,t,r){return Array.isArray(e)?await m_(e,t,r):S_(e)?await l_(e,t,r):await t(e,r)}async function l_(e,t,r){let o=[],n={};for(let s in e){let _=e[s],a=Ar(_,t,r).then(i=>{n[s]=i});o.push(a)}return await Promise.all(o),n}async function m_(e,t,r={}){let o=e.map(n=>Ar(n,t,r));return await Promise.all(o)}var U=[{face:34069,name:"+X",direction:"right",axis:"x",sign:"positive"},{face:34070,name:"-X",direction:"left",axis:"x",sign:"negative"},{face:34071,name:"+Y",direction:"top",axis:"y",sign:"positive"},{face:34072,name:"-Y",direction:"bottom",axis:"y",sign:"negative"},{face:34073,name:"+Z",direction:"front",axis:"z",sign:"positive"},{face:34074,name:"-Z",direction:"back",axis:"z",sign:"negative"}];async function d(e,t,r={},o){let n=Xo(e);if(n.shape!==t)throw new Error(`Expected ${t} manifest, got ${n.shape}`);return await E_(n,r,o)}function w(e,t){try{return Xo(e).shape===t}catch{return!1}}async function E_(e,t={},r){let o=L_(t),n=await f_(e,o,r),s=await N(n,o,r);return h_(e.shape,s)}async function N(e,t={},r){let o=D(t);return await Uo(e,async n=>await qe(n,o,r))}async function qe(e,t={},r){let o=A_(e,t,r),s=await B_(t,r)(o),_=b_(t);if(r){let i=P_(o,s,r);return await ot(s,[Ye],_,i)}let a=await s.arrayBuffer();return await Ye.parse(a,_)}async function f_(e,t={},r){switch(e.shape){case"image-texture":return await T_(e,t,r);case"image-texture-array":if(!Array.isArray(e.layers)||e.layers.length===0)throw new Error("image-texture-array manifest must define one or more layers");return await Promise.all(e.layers.map(async(o,n)=>await vo(o,t,r,{index:n})));case"image-texture-cube":return await No(e,t,r);case"image-texture-cube-array":if(!Array.isArray(e.layers)||e.layers.length===0)throw new Error("image-texture-cube-array manifest must define one or more layers");return await Promise.all(e.layers.map(async(o,n)=>await No(o,t,r,{index:n})));default:throw new Error("Unsupported composite image manifest")}}function D(e={}){if(e.core?.baseUrl)return e;let t=e.baseUrl;return t?{...e,core:{...e.core,baseUrl:t}}:e}function A_(e,t={},r){let o=ge(e);if(w_(e))return o;let n=d_(t,r);if(!n){if(o!==e||e.startsWith("@"))return o;throw new Error(`Unable to resolve relative image URL ${e} without a base URL`)}return ge(O_(n,e))}function Xo(e){let t=JSON.parse(e);if(!t?.shape)throw new Error("Composite image manifest must contain a shape field");return t}async function T_(e,t,r){if((e.image||e.mipmaps)&&e.template)throw new Error("image-texture manifest must define image, mipmaps, or template source");if(e.image&&e.mipmaps)throw new Error("image-texture manifest must define image, mipmaps, or template source");if(e.image)return e.image;if(e.mipmaps?.length)return e.mipmaps;if(e.template)return await ko({mipLevels:e.mipLevels??"auto",template:e.template},t,r,{});throw new Error("image-texture manifest must define image, mipmaps, or template source")}async function No(e,t,r,o={}){let n={};for(let{face:s,name:_,direction:a,axis:i,sign:c}of U){let l=e.faces?.[_]||e.faces?.[a];if(!l)throw new Error(`image-texture-cube manifest is missing ${_} face`);n[s]=await vo(l,t,r,{...o,face:_,direction:a,axis:i,sign:c})}return n}async function vo(e,t,r,o){if(typeof e=="string"||Array.isArray(e)&&e.length>0)return e;if(C_(e))return await ko(e,t,r,o);throw new Error("Composite image source entries must be strings or non-empty mip arrays")}async function ko(e,t,r,o){let n=e.mipLevels==="auto"?await g_(e.template,t,r,o):e.mipLevels;if(!Number.isFinite(n)||n<=0)throw new Error(`Invalid mipLevels value ${e.mipLevels}`);let s=[];for(let _=0;_<n;_++)s.push(Wo(e.template,{...o,lod:_}));return s}async function g_(e,t,r,o){if(!e.includes("{lod}"))throw new Error("Template sources with mipLevels: auto must include a {lod} placeholder");let n=Wo(e,{...o,lod:0}),s=await qe(n,D(t),r),{width:_,height:a}=J(s);return 1+Math.floor(Math.log2(Math.max(_,a)))}function Wo(e,t){let r="";for(let o=0;o<e.length;o++){let n=e[o];if(n==="\\"){let i=e[o+1];if(i==="{"||i==="}"||i==="\\"){r+=i,o++;continue}throw new Error(`Invalid escape sequence \\${i||""} in template ${e}`)}if(n==="}")throw new Error(`Unexpected } in template ${e}`);if(n!=="{"){r+=n;continue}let s=p_(e,o+1);if(s<0)throw new Error(`Unterminated placeholder in template ${e}`);let _=e.slice(o+1,s);if(!/^[a-z][a-zA-Z0-9]*$/.test(_))throw new Error(`Invalid placeholder {${_}} in template ${e}`);let a=x_(_,t);if(a===void 0)throw new Error(`Template ${e} uses unsupported placeholder {${_}} for this source`);r+=String(a),o=s}return r}function p_(e,t){for(let r=t;r<e.length;r++){let o=e[r];if(o==="\\"){r++;continue}if(o==="{")throw new Error(`Nested placeholders are not supported in template ${e}`);if(o==="}")return r}return-1}function x_(e,t){switch(e){case"lod":return t.lod;case"index":return t.index;case"face":return t.face;case"direction":return t.direction;case"axis":return t.axis;case"sign":return t.sign;default:return}}function C_(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function d_(e,t){return t?.baseUrl?t.baseUrl:e.baseUrl?gr(e.baseUrl):e.core?.baseUrl?G_(e.core.baseUrl):null}function gr(e){return e.endsWith("/")?e.slice(0,-1):e}function G_(e){return gr(I.dirname(e))}function O_(e,t){if(M_(e))return new URL(t,`${gr(e)}/`).toString();let r=e.startsWith("/")?e:`/${e}`,o=I.resolve(r,t);return e.startsWith("/")?o:o.slice(1)}function M_(e){return e.startsWith("http:")||e.startsWith("https:")||e.startsWith("file:")||e.startsWith("blob:")}function B_(e,t){let r=e.fetch??e.core?.fetch;return t?.fetch?t.fetch:typeof r=="function"?r:r&&typeof r=="object"?o=>fetch(o,r):fetch}function b_(e){let t=e.core,r={...e};if(delete r.baseUrl,!t?.baseUrl)return r;let o={...t};return delete o.baseUrl,{...r,core:o}}function L_(e){return e.image?.type||typeof ImageBitmap>"u"?e:{...e,image:{...e.image,type:"imagebitmap"}}}function P_(e,t,r){let o=t.url||e,[n,s=""]=o.split("?");return{...r,url:o,response:t,filename:I.filename(n),baseUrl:I.dirname(n),queryString:s}}function h_(e,t){switch(e){case"image-texture":{let r=Je(t);return{shape:"texture",type:"2d",format:Ze(r),data:r}}case"image-texture-array":{let r=t.map(o=>Je(o));return{shape:"texture",type:"2d-array",format:Ze(r[0]),data:r}}case"image-texture-cube":{let r=U.map(({face:o})=>Je(t[o]));return{shape:"texture",type:"cube",format:Ze(r[0]),data:r}}case"image-texture-cube-array":{let r=t.map(o=>U.map(({face:n})=>Je(o[n])));return{shape:"texture",type:"cube-array",format:Ze(r[0][0]),data:r}}default:throw new Error(`Unsupported composite image shape ${e}`)}}function Je(e){if(Array.isArray(e)){if(e.length===0)throw new Error("Composite image members must not be empty");if(e.every(Tr))return e;if(e.every(ke))return e.map(t=>Vo(t));if(e.every(t=>Array.isArray(t)&&t.every(Tr))){if(e.length!==1)throw new Error("Composite image members must resolve to a single image or mip chain");return e[0]}}if(D_(e)){if(e.type!=="2d")throw new Error(`Composite image members must resolve to 2d textures, got ${e.type}`);return e.data}if(Tr(e))return[e];if(ke(e))return[Vo(e)];throw new Error("Composite image members must resolve to an image, mip chain, or texture")}function Vo(e){let{width:t,height:r}=J(e);return{shape:"texture-level",compressed:!1,width:t,height:r,imageBitmap:typeof ImageBitmap<"u"&&e instanceof ImageBitmap?e:void 0,data:new Uint8Array(0),textureFormat:"rgba8unorm"}}function Ze(e){return e[0]?.textureFormat||"rgba8unorm"}function Tr(e){return Boolean(e&&typeof e=="object"&&"shape"in e&&e.shape==="texture-level")}function D_(e){return Boolean(e&&typeof e=="object"&&"shape"in e&&e.shape==="texture")}function w_(e){return e.startsWith("data:")||e.startsWith("blob:")||e.startsWith("file:")||e.startsWith("http:")||e.startsWith("https:")||e.startsWith("/")}var $o={dataType:null,batchType:null,id:"texture",name:"Texture",module:"textures",version:u,extensions:[],mimeTypes:[],text:!0,worker:!1,testText:e=>w(e,"image-texture"),options:{image:{}},parse:async(e,t,r)=>await d(new TextDecoder().decode(e),"image-texture",t,r),parseText:async(e,t,r)=>await d(e,"image-texture",t,r)};var zo={dataType:null,batchType:null,id:"texture-array",name:"Texture Array",module:"textures",version:u,extensions:[],mimeTypes:[],text:!0,worker:!1,testText:e=>w(e,"image-texture-array"),options:{image:{}},parse:async(e,t,r)=>await d(new TextDecoder().decode(e),"image-texture-array",t,r),parseText:async(e,t,r)=>await d(e,"image-texture-array",t,r)};var jo={dataType:null,batchType:null,id:"texture-cube",name:"Texture Cube",module:"textures",version:u,extensions:[],mimeTypes:[],text:!0,worker:!1,testText:e=>w(e,"image-texture-cube"),options:{image:{}},parse:async(e,t,r)=>await d(new TextDecoder().decode(e),"image-texture-cube",t,r),parseText:async(e,t,r)=>await d(e,"image-texture-cube",t,r)};var Yo={dataType:null,batchType:null,id:"texture-cube-array",name:"Texture Cube Array",module:"textures",version:u,extensions:[],mimeTypes:[],text:!0,worker:!1,testText:e=>w(e,"image-texture-cube-array"),options:{image:{}},parse:async(e,t,r)=>await d(new TextDecoder().decode(e),"image-texture-cube-array",t,r),parseText:async(e,t,r)=>await d(e,"image-texture-cube-array",t,r)};var Jo={DECODER:"crunch.js"};async function Zo(e,t,r){let o=["texture-compressor","--type","s3tc","--compression","DXT1","--quality","normal","--input",e,"--output",t];return await new v().start({command:"npx",arguments:o,spawn:r}),t}var qo={name:"DDS Texture Container",id:"dds",module:"textures",version:u,extensions:["dds"],mimeTypes:["image/vnd-ms.dds","image/x-dds","application/octet-stream"],options:{texture:{format:"auto",compression:"auto",quality:"auto",mipmap:!1,flipY:!1,toolFlags:""}},encodeURLtoURL:Zo,encode(){throw new Error("Not implemented")}};async function Qo(e,t={}){let{useSRGB:r=!1,qualityLevel:o=10,encodeUASTC:n=!1,mipmaps:s=!1}=t?.["ktx2-basis-writer"]||{},{BasisEncoder:_}=await ee(q(t)),a=new _;try{let i=new Uint8Array(e.width*e.height*4);a.setCreateKTX2File(!0),a.setKTX2UASTCSupercompression(!0),a.setKTX2SRGBTransferFunc(!0),a.setSliceSourceImage(0,e.data,e.width,e.height,!1),a.setPerceptual(r),a.setMipSRGB(r),a.setQualityLevel(o),a.setUASTC(n),a.setMipGen(s);let c=a.encode(i);return i.subarray(0,c).buffer}catch(i){throw console.error("Basis Universal Supercompressed GPU Texture encoder Error: ",i),i}finally{a.delete()}}var en={name:"Basis Universal Supercompressed GPU Texture",id:"ktx2-basis-writer",module:"textures",version:u,extensions:["ktx2"],mimeTypes:["image/ktx2"],options:{["ktx2-basis-writer"]:{useSRGB:!1,qualityLevel:10,encodeUASTC:!1,mipmaps:!1}},encode:Qo};function Qe(e,t,r){return typeof e=="function"?e({...t,...r}):e}async function tn(e,t={}){let r=await _e(e,t);return await N(r,D(t))}async function _e(e,t,r={}){let o=t&&t.image&&t.image.mipLevels||0;return o!==0?await K_(e,o,t,r):Qe(e,t,r)}async function K_(e,t,r,o){let n=[],s=D(r);if(t==="auto"){let _=Qe(e,r,{...o,lod:0}),a=await qe(_,s),{width:i,height:c}=J(a);t=F_({width:i,height:c}),n.push(_)}B(t>0);for(let _=n.length;_<t;++_){let a=Qe(e,r,{...o,lod:_});n.push(a)}return n}function F_(e){return 1+Math.floor(Math.log2(Math.max(e.width,e.height)))}async function rn(e,t,r={}){let o=await y_(e,t,r);return await N(o,D(r))}async function y_(e,t,r={}){let o=[];for(let n=0;n<e;n++){let s=_e(t,r,{index:n});o.push(s)}return await Promise.all(o)}async function I_(e,t){let r={},o=[],n=0;for(let s=0;s<U.length;++s){let _=U[n],a=_e(e,t,{..._,index:n++}).then(i=>{r[_.face]=i});o.push(a)}return await Promise.all(o),r}async function on(e,t={}){let r=await I_(e,t);return await N(r,D(t))}var H_={name:"Basis Universal Supercompressed GPU Texture",id:"ktx2-basis-writer",module:"textures",version:u,extensions:["ktx2"],worker:!0,options:{useSRGB:!1,qualityLevel:10,encodeUASTC:!1,mipmaps:!1}};return gn(ae);})();
7
+ "use strict";var __exports__=(()=>{var Sn=Object.create;var ue=Object.defineProperty;var ln=Object.getOwnPropertyDescriptor;var mn=Object.getOwnPropertyNames;var En=Object.getPrototypeOf,fn=Object.prototype.hasOwnProperty;var An=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Br=(e,t)=>{for(var r in t)ue(e,r,{get:t[r],enumerable:!0})},Re=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of mn(t))!fn.call(e,n)&&n!==r&&ue(e,n,{get:()=>t[n],enumerable:!(o=ln(t,n))||o.enumerable});return e},Se=(e,t,r)=>(Re(e,t,"default"),r&&Re(r,t,"default")),Tn=(e,t,r)=>(r=e!=null?Sn(En(e)):{},Re(t||!e||!e.__esModule?ue(r,"default",{value:e,enumerable:!0}):r,e)),gn=e=>Re(ue({},"__esModule",{value:!0}),e);var Lr=An((N_,br)=>{br.exports=globalThis.loaders});var ae={};Br(ae,{BASIS_EXTERNAL_LIBRARIES:()=>z,BasisLoader:()=>io,BasisWorkerLoader:()=>rr,CRUNCH_EXTERNAL_LIBRARIES:()=>Jo,CompressedTextureLoader:()=>Ao,CompressedTextureWorkerLoader:()=>or,CompressedTextureWriter:()=>qo,CrunchLoader:()=>nr,CrunchWorkerLoader:()=>nr,GL_COMPRESSED_R11_EAC:()=>gt,GL_COMPRESSED_RED_GREEN_RGTC2_EXT:()=>He,GL_COMPRESSED_RED_RGTC1_EXT:()=>Ie,GL_COMPRESSED_RG11_EAC:()=>xt,GL_COMPRESSED_RGB8_ETC2:()=>dt,GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:()=>Mt,GL_COMPRESSED_RGBA8_ETC2_EAC:()=>Ce,GL_COMPRESSED_RGBA_ASTC_10x10_KHR:()=>Ke,GL_COMPRESSED_RGBA_ASTC_10x5_KHR:()=>he,GL_COMPRESSED_RGBA_ASTC_10x6_KHR:()=>De,GL_COMPRESSED_RGBA_ASTC_10x8_KHR:()=>we,GL_COMPRESSED_RGBA_ASTC_12x10_KHR:()=>Fe,GL_COMPRESSED_RGBA_ASTC_12x12_KHR:()=>ye,GL_COMPRESSED_RGBA_ASTC_4x4_KHR:()=>te,GL_COMPRESSED_RGBA_ASTC_5x4_KHR:()=>Ge,GL_COMPRESSED_RGBA_ASTC_5x5_KHR:()=>Oe,GL_COMPRESSED_RGBA_ASTC_6x5_KHR:()=>Me,GL_COMPRESSED_RGBA_ASTC_6x6_KHR:()=>Be,GL_COMPRESSED_RGBA_ASTC_8x5_KHR:()=>be,GL_COMPRESSED_RGBA_ASTC_8x6_KHR:()=>Le,GL_COMPRESSED_RGBA_ASTC_8x8_KHR:()=>Pe,GL_COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL:()=>jr,GL_COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL:()=>Dt,GL_COMPRESSED_RGBA_BPTC_UNORM_EXT:()=>Yt,GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG:()=>Lt,GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG:()=>de,GL_COMPRESSED_RGBA_S3TC_DXT1_EXT:()=>At,GL_COMPRESSED_RGBA_S3TC_DXT3_EXT:()=>Tt,GL_COMPRESSED_RGBA_S3TC_DXT5_EXT:()=>xe,GL_COMPRESSED_RGB_ATC_WEBGL:()=>ht,GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT:()=>Qn,GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT:()=>es,GL_COMPRESSED_RGB_ETC1_WEBGL:()=>Pt,GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG:()=>zr,GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG:()=>bt,GL_COMPRESSED_RGB_S3TC_DXT1_EXT:()=>pe,GL_COMPRESSED_SIGNED_R11_EAC:()=>pt,GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT:()=>jt,GL_COMPRESSED_SIGNED_RED_RGTC1_EXT:()=>zt,GL_COMPRESSED_SIGNED_RG11_EAC:()=>Ct,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR:()=>kt,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR:()=>Vt,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR:()=>Xt,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR:()=>vt,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR:()=>Wt,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR:()=>$t,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR:()=>wt,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR:()=>Kt,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR:()=>Ft,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR:()=>yt,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR:()=>It,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR:()=>Ht,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR:()=>Ut,GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR:()=>Nt,GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:()=>Ot,GL_COMPRESSED_SRGB8_ETC2:()=>Gt,GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:()=>Bt,GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT:()=>qn,GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT:()=>Zt,GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT:()=>qt,GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT:()=>Qt,GL_COMPRESSED_SRGB_S3TC_DXT1_EXT:()=>Jt,GL_EXTENSIONS_CONSTANTS:()=>ts,GL_RGB:()=>Yn,GL_RGB565:()=>Et,GL_RGB5_A1:()=>Zn,GL_RGBA:()=>Jn,GL_RGBA32F:()=>ft,GL_RGBA4:()=>Wr,GL_RGBA8:()=>$r,KTX2BasisWriter:()=>en,KTX2BasisWriterWorker:()=>H_,NPYLoader:()=>Bo,NPYWorkerLoader:()=>Sr,RadianceHDRLoader:()=>Oo,TextureArrayLoader:()=>zo,TextureCubeArrayLoader:()=>Yo,TextureCubeLoader:()=>jo,TextureLoader:()=>$o,loadImageTexture:()=>tn,loadImageTextureArray:()=>rn,loadImageTextureCube:()=>on});Se(ae,Tn(Lr(),1));var u="4.4.2";function pn(){return globalThis._loadersgl_?.version||(globalThis._loadersgl_=globalThis._loadersgl_||{},globalThis._loadersgl_.version="4.4.2"),globalThis._loadersgl_.version}var Pr=pn();function hr(e,t){if(!e)throw new Error(t||"loaders.gl assertion failed.")}var M={self:typeof self<"u"&&self,window:typeof window<"u"&&window,global:typeof global<"u"&&global,document:typeof document<"u"&&document},k_=M.self||M.window||M.global||{},W_=M.window||M.self||M.global||{},$_=M.global||M.self||M.window||{},z_=M.document||{};var V=typeof process!="object"||String(process)!=="[object process]"||process.browser,le=typeof importScripts=="function",j_=typeof window<"u"&&typeof window.orientation<"u",Dr=typeof process<"u"&&process.version&&/v([0-9]*)/.exec(process.version),Y_=Dr&&parseFloat(Dr[1])||0;var rt={};function q(e={}){let t=e.useLocalLibraries??e.core?.useLocalLibraries,r=e.CDN??e.core?.CDN,o=e.modules;return{...t!==void 0?{useLocalLibraries:t}:{},...r!==void 0?{CDN:r}:{},...o!==void 0?{modules:o}:{}}}async function X(e,t=null,r={},o=null){return t&&(e=wr(e,t,r,o)),rt[e]=rt[e]||xn(e),await rt[e]}function wr(e,t,r={},o=null){if(r?.core)throw new Error("loadLibrary: options.core must be pre-normalized");if(!r.useLocalLibraries&&e.startsWith("http"))return e;o=o||e;let n=r.modules||{};return n[o]?n[o]:V?r.CDN?(hr(r.CDN.startsWith("http")),`${r.CDN}/${t}@${Pr}/dist/libs/${o}`):le?`../src/libs/${o}`:`modules/${t}/src/libs/${o}`:`modules/${t}/dist/libs/${o}`}async function xn(e){if(e.endsWith("wasm"))return await dn(e);if(!V){let{requireFromFile:r}=globalThis.loaders||{};try{let o=await r?.(e);return o||!e.includes("/dist/libs/")?o:await r?.(e.replace("/dist/libs/","/src/libs/"))}catch(o){if(e.includes("/dist/libs/"))try{return await r?.(e.replace("/dist/libs/","/src/libs/"))}catch{}return console.error(o),null}}if(le)return importScripts(e);let t=await Gn(e);return Cn(t,e)}function Cn(e,t){if(!V){let{requireFromString:o}=globalThis.loaders||{};return o?.(e,t)}if(le)return eval.call(globalThis,e),null;let r=document.createElement("script");r.id=t;try{r.appendChild(document.createTextNode(e))}catch{r.text=e}return document.body.appendChild(r),null}async function dn(e){let{readFileAsArrayBuffer:t}=globalThis.loaders||{};if(V||!t||e.startsWith("http"))return await(await fetch(e)).arrayBuffer();try{return await t(e)}catch{if(e.includes("/dist/libs/"))return await t(e.replace("/dist/libs/","/src/libs/"));throw new Error(`Failed to load ArrayBuffer from ${e}`)}}async function Gn(e){let{readFileAsText:t}=globalThis.loaders||{};if(V||!t||e.startsWith("http"))return await(await fetch(e)).text();try{return await t(e)}catch{if(e.includes("/dist/libs/"))return await t(e.replace("/dist/libs/","/src/libs/"));throw new Error(`Failed to load text from ${e}`)}}var v=class{constructor(){throw new Error("ChildProcessProxy is not available in browser environments")}async start(t){return await Promise.resolve({})}async stop(){return await Promise.resolve()}async exit(){return await Promise.resolve()}};async function ot(e,t,r,o){return o._parse(e,t,r,o)}function B(e,t){if(!e)throw new Error(t||"loader assertion failed.")}var b={self:typeof self<"u"&&self,window:typeof window<"u"&&window,global:typeof global<"u"&&global,document:typeof document<"u"&&document},On=b.self||b.window||b.global||{},Mn=b.window||b.self||b.global||{},Bn=b.global||b.self||b.window||{},bn=b.document||{};var nt=Boolean(typeof process!="object"||String(process)!=="[object process]"||process.browser);var Kr=typeof process<"u"&&process.version&&/v([0-9]*)/.exec(process.version),Ln=Kr&&parseFloat(Kr[1])||0;var me=globalThis,Pn=globalThis.document||{},Ee=globalThis.process||{},hn=globalThis.console,ia=globalThis.navigator||{};function Fr(e){if(typeof window<"u"&&window.process?.type==="renderer"||typeof process<"u"&&Boolean(process.versions?.electron))return!0;let t=typeof navigator<"u"&&navigator.userAgent,r=e||t;return Boolean(r&&r.indexOf("Electron")>=0)}function F(){return!(typeof process=="object"&&String(process)==="[object process]"&&!process?.browser)||Fr()}var st="4.1.1";function k(e,t){if(!e)throw new Error(t||"Assertion failed")}function _t(e){if(!e)return 0;let t;switch(typeof e){case"number":t=e;break;case"object":t=e.logLevel||e.priority||0;break;default:return 0}return k(Number.isFinite(t)&&t>=0),t}function yr(e){let{logLevel:t,message:r}=e;e.logLevel=_t(t);let o=e.args?Array.from(e.args):[];for(;o.length&&o.shift()!==r;);switch(typeof t){case"string":case"function":r!==void 0&&o.unshift(r),e.message=t;break;case"object":Object.assign(e,t);break;default:}typeof e.message=="function"&&(e.message=e.message());let n=typeof e.message;return k(n==="string"||n==="object"),Object.assign(e,{args:o},e.opts)}var y=()=>{},fe=class{constructor({level:t=0}={}){this.userData={},this._onceCache=new Set,this._level=t}set level(t){this.setLevel(t)}get level(){return this.getLevel()}setLevel(t){return this._level=t,this}getLevel(){return this._level}warn(t,...r){return this._log("warn",0,t,r,{once:!0})}error(t,...r){return this._log("error",0,t,r)}log(t,r,...o){return this._log("log",t,r,o)}info(t,r,...o){return this._log("info",t,r,o)}once(t,r,...o){return this._log("once",t,r,o,{once:!0})}_log(t,r,o,n,s={}){let _=yr({logLevel:r,message:o,args:this._buildArgs(r,o,n),opts:s});return this._createLogFunction(t,_,s)}_buildArgs(t,r,o){return[t,r,...o]}_createLogFunction(t,r,o){if(!this._shouldLog(r.logLevel))return y;let n=this._getOnceTag(o.tag??r.tag??r.message);if((o.once||r.once)&&n!==void 0){if(this._onceCache.has(n))return y;this._onceCache.add(n)}return this._emit(t,r)}_shouldLog(t){return this.getLevel()>=_t(t)}_getOnceTag(t){if(t!==void 0)try{return typeof t=="string"?t:String(t)}catch{return}}};function wn(e){try{let t=window[e],r="__storage_test__";return t.setItem(r,r),t.removeItem(r),t}catch{return null}}var Ae=class{constructor(t,r,o="sessionStorage"){this.storage=wn(o),this.id=t,this.config=r,this._loadConfiguration()}getConfiguration(){return this.config}setConfiguration(t){if(Object.assign(this.config,t),this.storage){let r=JSON.stringify(this.config);this.storage.setItem(this.id,r)}}_loadConfiguration(){let t={};if(this.storage){let r=this.storage.getItem(this.id);t=r?JSON.parse(r):{}}return Object.assign(this.config,t),this}};function Ir(e){let t;return e<10?t=`${e.toFixed(2)}ms`:e<100?t=`${e.toFixed(1)}ms`:e<1e3?t=`${e.toFixed(0)}ms`:t=`${(e/1e3).toFixed(2)}s`,t}function Hr(e,t=8){let r=Math.max(t-e.length,0);return`${" ".repeat(r)}${e}`}var Te;(function(e){e[e.BLACK=30]="BLACK",e[e.RED=31]="RED",e[e.GREEN=32]="GREEN",e[e.YELLOW=33]="YELLOW",e[e.BLUE=34]="BLUE",e[e.MAGENTA=35]="MAGENTA",e[e.CYAN=36]="CYAN",e[e.WHITE=37]="WHITE",e[e.BRIGHT_BLACK=90]="BRIGHT_BLACK",e[e.BRIGHT_RED=91]="BRIGHT_RED",e[e.BRIGHT_GREEN=92]="BRIGHT_GREEN",e[e.BRIGHT_YELLOW=93]="BRIGHT_YELLOW",e[e.BRIGHT_BLUE=94]="BRIGHT_BLUE",e[e.BRIGHT_MAGENTA=95]="BRIGHT_MAGENTA",e[e.BRIGHT_CYAN=96]="BRIGHT_CYAN",e[e.BRIGHT_WHITE=97]="BRIGHT_WHITE"})(Te||(Te={}));var Kn=10;function Ur(e){return typeof e!="string"?e:(e=e.toUpperCase(),Te[e]||Te.WHITE)}function Nr(e,t,r){return!F&&typeof e=="string"&&(t&&(e=`\x1B[${Ur(t)}m${e}\x1B[39m`),r&&(e=`\x1B[${Ur(r)+Kn}m${e}\x1B[49m`)),e}function Vr(e,t=["constructor"]){let r=Object.getPrototypeOf(e),o=Object.getOwnPropertyNames(r),n=e;for(let s of o){let _=n[s];typeof _=="function"&&(t.find(a=>s===a)||(n[s]=_.bind(e)))}}function W(){let e;if(F()&&me.performance)e=me?.performance?.now?.();else if("hrtime"in Ee){let t=Ee?.hrtime?.();e=t[0]*1e3+t[1]/1e6}else e=Date.now();return e}var $={debug:F()&&console.debug||console.log,log:console.log,info:console.info,warn:console.warn,error:console.error},at={enabled:!0,level:0},h=class extends fe{constructor({id:t}={id:""}){super({level:0}),this.VERSION=st,this._startTs=W(),this._deltaTs=W(),this.userData={},this.LOG_THROTTLE_TIMEOUT=0,this.id=t,this.userData={},this._storage=new Ae(`__probe-${this.id}__`,{[this.id]:at}),this.timeStamp(`${this.id} started`),Vr(this),Object.seal(this)}isEnabled(){return this._getConfiguration().enabled}getLevel(){return this._getConfiguration().level}getTotal(){return Number((W()-this._startTs).toPrecision(10))}getDelta(){return Number((W()-this._deltaTs).toPrecision(10))}set priority(t){this.level=t}get priority(){return this.level}getPriority(){return this.level}enable(t=!0){return this._updateConfiguration({enabled:t}),this}setLevel(t){return this._updateConfiguration({level:t}),this}get(t){return this._getConfiguration()[t]}set(t,r){this._updateConfiguration({[t]:r})}settings(){console.table?console.table(this._storage.config):console.log(this._storage.config)}assert(t,r){if(!t)throw new Error(r||"Assertion failed")}warn(t,...r){return this._log("warn",0,t,r,{method:$.warn,once:!0})}error(t,...r){return this._log("error",0,t,r,{method:$.error})}deprecated(t,r){return this.warn(`\`${t}\` is deprecated and will be removed in a later version. Use \`${r}\` instead`)}removed(t,r){return this.error(`\`${t}\` has been removed. Use \`${r}\` instead`)}probe(t,r,...o){return this._log("log",t,r,o,{method:$.log,time:!0,once:!0})}log(t,r,...o){return this._log("log",t,r,o,{method:$.debug})}info(t,r,...o){return this._log("info",t,r,o,{method:console.info})}once(t,r,...o){return this._log("once",t,r,o,{method:$.debug||$.info,once:!0})}table(t,r,o){return r?this._log("table",t,r,o&&[o]||[],{method:console.table||y,tag:yn(r)}):y}time(t,r){return this._log("time",t,r,[],{method:console.time?console.time:console.info})}timeEnd(t,r){return this._log("time",t,r,[],{method:console.timeEnd?console.timeEnd:console.info})}timeStamp(t,r){return this._log("time",t,r,[],{method:console.timeStamp||y})}group(t,r,o={collapsed:!1}){let n=(o.collapsed?console.groupCollapsed:console.group)||console.info;return this._log("group",t,r,[],{method:n})}groupCollapsed(t,r,o={}){return this.group(t,r,Object.assign({},o,{collapsed:!0}))}groupEnd(t){return this._log("groupEnd",t,"",[],{method:console.groupEnd||y})}withGroup(t,r,o){this.group(t,r)();try{o()}finally{this.groupEnd(t)()}}trace(){console.trace&&console.trace()}_shouldLog(t){return this.isEnabled()&&super._shouldLog(t)}_emit(t,r){let o=r.method;k(o),r.total=this.getTotal(),r.delta=this.getDelta(),this._deltaTs=W();let n=Fn(this.id,r.message,r);return o.bind(console,n,...r.args)}_getConfiguration(){return this._storage.config[this.id]||this._updateConfiguration(at),this._storage.config[this.id]}_updateConfiguration(t){let r=this._storage.config[this.id]||{...at};this._storage.setConfiguration({[this.id]:{...r,...t}})}};h.VERSION=st;function Fn(e,t,r){if(typeof t=="string"){let o=r.time?Hr(Ir(r.total)):"";t=r.time?`${e}: ${o} ${t}`:`${e}: ${t}`,t=Nr(t,r.color,r.background)}return t}function yn(e){for(let t in e)for(let r in e[t])return r||"untitled";return"empty"}globalThis.probe={};var Ha=new h({id:"@probe.gl/log"});var it="4.4.2",In=it[0]>="0"&&it[0]<="9"?`v${it}`:"";function Hn(){let e=new h({id:"loaders.gl"});return globalThis.loaders||={},globalThis.loaders.log=e,globalThis.loaders.version=In,globalThis.probe||={},globalThis.probe.loaders=e,e}var ct=Hn();function Rt(e){globalThis.loaders||={},globalThis.loaders.modules||={},Object.assign(globalThis.loaders.modules,e)}function ut(e){return globalThis.loaders?.modules?.[e]||null}var Un="",Xr={};function ge(e){for(let t in Xr)if(e.startsWith(t)){let r=Xr[t];e=e.replace(t,r)}return!e.startsWith("http://")&&!e.startsWith("https://")&&(e=`${Un}${e}`),e}var I={};Br(I,{dirname:()=>Vn,filename:()=>Nn,join:()=>Xn,resolve:()=>vn});function vr(){if(typeof process<"u"&&typeof process.cwd<"u")return process.cwd();let e=window.location?.pathname;return e?.slice(0,e.lastIndexOf("/")+1)||""}function Nn(e){let t=e?e.lastIndexOf("/"):-1;return t>=0?e.substr(t+1):e}function Vn(e){let t=e?e.lastIndexOf("/"):-1;return t>=0?e.substr(0,t):""}function Xn(...e){let t="/";return e=e.map((r,o)=>(o&&(r=r.replace(new RegExp(`^${t}`),"")),o!==e.length-1&&(r=r.replace(new RegExp(`${t}$`),"")),r)),e.join(t)}function vn(...e){let t=[];for(let s=0;s<e.length;s++)t[s]=e[s];let r="",o=!1,n;for(let s=t.length-1;s>=-1&&!o;s--){let _;s>=0?_=t[s]:(n===void 0&&(n=vr()),_=n),_.length!==0&&(r=`${_}/${r}`,o=_.charCodeAt(0)===Q)}return r=kn(r,!o),o?`/${r}`:r.length>0?r:"."}var Q=47,St=46;function kn(e,t){let r="",o=-1,n=0,s,_=!1;for(let a=0;a<=e.length;++a){if(a<e.length)s=e.charCodeAt(a);else{if(s===Q)break;s=Q}if(s===Q){if(!(o===a-1||n===1))if(o!==a-1&&n===2){if(r.length<2||!_||r.charCodeAt(r.length-1)!==St||r.charCodeAt(r.length-2)!==St){if(r.length>2){let i=r.length-1,c=i;for(;c>=0&&r.charCodeAt(c)!==Q;--c);if(c!==i){r=c===-1?"":r.slice(0,c),o=a,n=0,_=!1;continue}}else if(r.length===2||r.length===1){r="",o=a,n=0,_=!1;continue}}t&&(r.length>0?r+="/..":r="..",_=!0)}else{let i=e.slice(o+1,a);r.length>0?r+=`/${i}`:r=i,_=!1}o=a,n=0}else s===St&&n!==-1?++n:n=-1}return r}var z={TRANSCODER:"basis_transcoder.js",TRANSCODER_WASM:"basis_transcoder.wasm",ENCODER:"basis_encoder.js",ENCODER_WASM:"basis_encoder.wasm"},kr;async function mt(e){Rt(e.modules);let t=ut("basis");return t||(kr||=Wn(e),await kr)}async function Wn(e){let t=null,r=null;return[t,r]=await Promise.all([await X(z.TRANSCODER,"textures",e),await X(z.TRANSCODER_WASM,"textures",e)]),t=t||globalThis.BASIS,await $n(t,r)}function $n(e,t){let r={};return t&&(r.wasmBinary=t),new Promise(o=>{e(r).then(n=>{let{BasisFile:s,initializeBasis:_}=n;_(),o({BasisFile:s})})})}var lt;async function ee(e){let t=e.modules||{};return t.basisEncoder?t.basisEncoder:(lt=lt||zn(e),await lt)}async function zn(e){let t=null,r=null;return[t,r]=await Promise.all([await X(z.ENCODER,"textures",e),await X(z.ENCODER_WASM,"textures",e)]),t=t||globalThis.BASIS,await jn(t,r)}function jn(e,t){let r={};return t&&(r.wasmBinary=t),new Promise(o=>{e(r).then(n=>{let{BasisFile:s,KTX2File:_,initializeBasis:a,BasisEncoder:i}=n;a(),o({BasisFile:s,KTX2File:_,BasisEncoder:i})})})}var Yn=6407,Jn=6408,Wr=32854,Zn=32855,$r=32856,Et=36194,ft=34836,pe=33776,At=33777,Tt=33778,xe=33779,gt=37488,pt=37489,xt=37490,Ct=37491,dt=37492,Ce=37493,Gt=37494,Ot=37495,Mt=37496,Bt=37497,bt=35840,zr=35841,de=35842,Lt=35843,Pt=36196,ht=35986,jr=35987,Dt=34798,te=37808,Ge=37809,Oe=37810,Me=37811,Be=37812,be=37813,Le=37814,Pe=37815,he=37816,De=37817,we=37818,Ke=37819,Fe=37820,ye=37821,wt=37840,Kt=37841,Ft=37842,yt=37843,It=37844,Ht=37845,Ut=37846,Nt=37847,Vt=37848,Xt=37849,vt=37850,kt=37851,Wt=37852,$t=37853,Ie=36283,zt=36284,He=36285,jt=36286,Yt=36492,qn=36493,Qn=36494,es=36495,Jt=35916,Zt=35917,qt=35918,Qt=35919,ts={RGB:6407,RGBA:6408,RGBA4:32854,RGB5_A1:32855,RGBA8:32856,RGB565:36194,RGBA32F:34836,COMPRESSED_RGB_S3TC_DXT1_EXT:33776,COMPRESSED_RGBA_S3TC_DXT1_EXT:33777,COMPRESSED_RGBA_S3TC_DXT3_EXT:33778,COMPRESSED_RGBA_S3TC_DXT5_EXT:33779,COMPRESSED_R11_EAC:37488,COMPRESSED_SIGNED_R11_EAC:37489,COMPRESSED_RG11_EAC:37490,COMPRESSED_SIGNED_RG11_EAC:37491,COMPRESSED_RGB8_ETC2:37492,COMPRESSED_RGBA8_ETC2_EAC:37493,COMPRESSED_SRGB8_ETC2:37494,COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:37495,COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:37496,COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:37497,COMPRESSED_RGB_PVRTC_4BPPV1_IMG:35840,COMPRESSED_RGB_PVRTC_2BPPV1_IMG:35841,COMPRESSED_RGBA_PVRTC_4BPPV1_IMG:35842,COMPRESSED_RGBA_PVRTC_2BPPV1_IMG:35843,COMPRESSED_RGB_ETC1_WEBGL:36196,COMPRESSED_RGB_ATC_WEBGL:35986,COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL:35987,COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL:34798,COMPRESSED_RGBA_ASTC_4x4_KHR:37808,COMPRESSED_RGBA_ASTC_5x4_KHR:37809,COMPRESSED_RGBA_ASTC_5x5_KHR:37810,COMPRESSED_RGBA_ASTC_6x5_KHR:37811,COMPRESSED_RGBA_ASTC_6x6_KHR:37812,COMPRESSED_RGBA_ASTC_8x5_KHR:37813,COMPRESSED_RGBA_ASTC_8x6_KHR:37814,COMPRESSED_RGBA_ASTC_8x8_KHR:37815,COMPRESSED_RGBA_ASTC_10x5_KHR:37816,COMPRESSED_RGBA_ASTC_10x6_KHR:37817,COMPRESSED_RGBA_ASTC_10x8_KHR:37818,COMPRESSED_RGBA_ASTC_10x10_KHR:37819,COMPRESSED_RGBA_ASTC_12x10_KHR:37820,COMPRESSED_RGBA_ASTC_12x12_KHR:37821,COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR:37840,COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR:37841,COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR:37842,COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR:37843,COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR:37844,COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR:37845,COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR:37846,COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR:37847,COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR:37848,COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR:37849,COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR:37850,COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR:37851,COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR:37852,COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR:37853,COMPRESSED_RED_RGTC1_EXT:36283,COMPRESSED_SIGNED_RED_RGTC1_EXT:36284,COMPRESSED_RED_GREEN_RGTC2_EXT:36285,COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT:36286,COMPRESSED_RGBA_BPTC_UNORM_EXT:36492,COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT:36493,COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT:36494,COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT:36495,COMPRESSED_SRGB_S3TC_DXT1_EXT:35916,COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT:35917,COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT:35918,COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT:35919,COMPRESSED_RGBA_ASTC_4X4_KHR:37808,COMPRESSED_RGBA_ASTC_5X4_KHR:37809,COMPRESSED_RGBA_ASTC_5X5_KHR:37810,COMPRESSED_RGBA_ASTC_6X5_KHR:37811,COMPRESSED_RGBA_ASTC_6X6_KHR:37812,COMPRESSED_RGBA_ASTC_8X5_KHR:37813,COMPRESSED_RGBA_ASTC_8X6_KHR:37814,COMPRESSED_RGBA_ASTC_8X8_KHR:37815,COMPRESSED_RGBA_ASTC_10X5_KHR:37816,COMPRESSED_RGBA_ASTC_10X6_KHR:37817,COMPRESSED_RGBA_ASTC_10X8_KHR:37818,COMPRESSED_RGBA_ASTC_10X10_KHR:37819,COMPRESSED_RGBA_ASTC_12X10_KHR:37820,COMPRESSED_RGBA_ASTC_12X12_KHR:37821,COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR:37840,COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR:37841,COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR:37842,COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR:37843,COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR:37844,COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR:37845,COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR:37846,COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR:37847,COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR:37848,COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR:37849,COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR:37850,COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR:37851,COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR:37852,COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR:37853};var rs=["","WEBKIT_","MOZ_"],Yr={WEBGL_compressed_texture_s3tc:["bc1-rgb-unorm-webgl","bc1-rgba-unorm","bc2-rgba-unorm","bc3-rgba-unorm"],WEBGL_compressed_texture_s3tc_srgb:["bc1-rgb-unorm-srgb-webgl","bc1-rgba-unorm-srgb","bc2-rgba-unorm-srgb","bc3-rgba-unorm-srgb"],EXT_texture_compression_rgtc:["bc4-r-unorm","bc4-r-snorm","bc5-rg-unorm","bc5-rg-snorm"],EXT_texture_compression_bptc:["bc6h-rgb-ufloat","bc6h-rgb-float","bc7-rgba-unorm","bc7-rgba-unorm-srgb"],WEBGL_compressed_texture_etc1:["etc1-rgb-unorm-webgl"],WEBGL_compressed_texture_etc:["etc2-rgb8unorm","etc2-rgb8unorm-srgb","etc2-rgb8a1unorm","etc2-rgb8a1unorm-srgb","etc2-rgba8unorm","etc2-rgba8unorm-srgb","eac-r11unorm","eac-r11snorm","eac-rg11unorm","eac-rg11snorm"],WEBGL_compressed_texture_pvrtc:["pvrtc-rgb4unorm-webgl","pvrtc-rgba4unorm-webgl","pvrtc-rgb2unorm-webgl","pvrtc-rgba2unorm-webgl"],WEBGL_compressed_texture_atc:["atc-rgb-unorm-webgl","atc-rgba-unorm-webgl","atc-rgbai-unorm-webgl"],WEBGL_compressed_texture_astc:["astc-4x4-unorm","astc-4x4-unorm-srgb","astc-5x4-unorm","astc-5x4-unorm-srgb","astc-5x5-unorm","astc-5x5-unorm-srgb","astc-6x5-unorm","astc-6x5-unorm-srgb","astc-6x6-unorm","astc-6x6-unorm-srgb","astc-8x5-unorm","astc-8x5-unorm-srgb","astc-8x6-unorm","astc-8x6-unorm-srgb","astc-8x8-unorm","astc-8x8-unorm-srgb","astc-10x5-unorm","astc-10x5-unorm-srgb","astc-10x6-unorm","astc-10x6-unorm-srgb","astc-10x8-unorm","astc-10x8-unorm-srgb","astc-10x10-unorm","astc-10x10-unorm-srgb","astc-12x10-unorm","astc-12x10-unorm-srgb","astc-12x12-unorm","astc-12x12-unorm-srgb"]};var Ue=null;function Jr(e){if(!Ue){e=e||os()||void 0,Ue=new Set;for(let t of rs)for(let r in Yr)if(e&&e.getExtension(`${t}${r}`))for(let o of Yr[r])Ue.add(o)}return Ue}function os(){try{return document.createElement("canvas").getContext("webgl")}catch{return null}}var er=class{constructor(){this.vkFormat=0,this.typeSize=1,this.pixelWidth=0,this.pixelHeight=0,this.pixelDepth=0,this.layerCount=0,this.faceCount=1,this.supercompressionScheme=0,this.levels=[],this.dataFormatDescriptor=[{vendorId:0,descriptorType:0,descriptorBlockSize:0,versionNumber:2,colorModel:0,colorPrimaries:1,transferFunction:2,flags:0,texelBlockDimension:[0,0,0,0],bytesPlane:[0,0,0,0,0,0,0,0],samples:[]}],this.keyValue={},this.globalData=null}},H=class{constructor(t,r,o,n){this._dataView=void 0,this._littleEndian=void 0,this._offset=void 0,this._dataView=new DataView(t.buffer,t.byteOffset+r,o),this._littleEndian=n,this._offset=0}_nextUint8(){let t=this._dataView.getUint8(this._offset);return this._offset+=1,t}_nextUint16(){let t=this._dataView.getUint16(this._offset,this._littleEndian);return this._offset+=2,t}_nextUint32(){let t=this._dataView.getUint32(this._offset,this._littleEndian);return this._offset+=4,t}_nextUint64(){let t=this._dataView.getUint32(this._offset,this._littleEndian),r=this._dataView.getUint32(this._offset+4,this._littleEndian),o=t+2**32*r;return this._offset+=8,o}_nextInt32(){let t=this._dataView.getInt32(this._offset,this._littleEndian);return this._offset+=4,t}_nextUint8Array(t){let r=new Uint8Array(this._dataView.buffer,this._dataView.byteOffset+this._offset,t);return this._offset+=t,r}_skip(t){return this._offset+=t,this}_scan(t,r=0){let o=this._offset,n=0;for(;this._dataView.getUint8(this._offset)!==r&&n<t;)n++,this._offset++;return n<t&&this._offset++,new Uint8Array(this._dataView.buffer,this._dataView.byteOffset+o,n)}};var mi=new Uint8Array([0]),E=[171,75,84,88,32,50,48,187,13,10,26,10];function Zr(e){return new TextDecoder().decode(e)}function qr(e){let t=new Uint8Array(e.buffer,e.byteOffset,E.length);if(t[0]!==E[0]||t[1]!==E[1]||t[2]!==E[2]||t[3]!==E[3]||t[4]!==E[4]||t[5]!==E[5]||t[6]!==E[6]||t[7]!==E[7]||t[8]!==E[8]||t[9]!==E[9]||t[10]!==E[10]||t[11]!==E[11])throw new Error("Missing KTX 2.0 identifier.");let r=new er,o=17*Uint32Array.BYTES_PER_ELEMENT,n=new H(e,E.length,o,!0);r.vkFormat=n._nextUint32(),r.typeSize=n._nextUint32(),r.pixelWidth=n._nextUint32(),r.pixelHeight=n._nextUint32(),r.pixelDepth=n._nextUint32(),r.layerCount=n._nextUint32(),r.faceCount=n._nextUint32();let s=n._nextUint32();r.supercompressionScheme=n._nextUint32();let _=n._nextUint32(),a=n._nextUint32(),i=n._nextUint32(),c=n._nextUint32(),l=n._nextUint64(),S=n._nextUint64(),G=s*3*8,K=new H(e,E.length+o,G,!0);for(let A=0;A<s;A++)r.levels.push({levelData:new Uint8Array(e.buffer,e.byteOffset+K._nextUint64(),K._nextUint64()),uncompressedByteLength:K._nextUint64()});let R=new H(e,_,a,!0),Z={vendorId:R._skip(4)._nextUint16(),descriptorType:R._nextUint16(),versionNumber:R._nextUint16(),descriptorBlockSize:R._nextUint16(),colorModel:R._nextUint8(),colorPrimaries:R._nextUint8(),transferFunction:R._nextUint8(),flags:R._nextUint8(),texelBlockDimension:[R._nextUint8(),R._nextUint8(),R._nextUint8(),R._nextUint8()],bytesPlane:[R._nextUint8(),R._nextUint8(),R._nextUint8(),R._nextUint8(),R._nextUint8(),R._nextUint8(),R._nextUint8(),R._nextUint8()],samples:[]},et=6,tt=4,T=(Z.descriptorBlockSize/4-et)/tt;for(let A=0;A<T;A++){let P={bitOffset:R._nextUint16(),bitLength:R._nextUint8(),channelType:R._nextUint8(),samplePosition:[R._nextUint8(),R._nextUint8(),R._nextUint8(),R._nextUint8()],sampleLower:-1/0,sampleUpper:1/0};P.channelType&64?(P.sampleLower=R._nextInt32(),P.sampleUpper=R._nextInt32()):(P.sampleLower=R._nextUint32(),P.sampleUpper=R._nextUint32()),Z.samples[A]=P}r.dataFormatDescriptor.length=0,r.dataFormatDescriptor.push(Z);let g=new H(e,i,c,!0);for(;g._offset<c;){let A=g._nextUint32(),P=g._scan(A),ce=Zr(P);if(r.keyValue[ce]=g._nextUint8Array(A-P.byteLength-1),ce.match(/^ktx/i)){let Mr=Zr(r.keyValue[ce]);r.keyValue[ce]=Mr.substring(0,Mr.lastIndexOf("\0"))}let un=A%4?4-A%4:0;g._skip(un)}if(S<=0)return r;let m=new H(e,l,S,!0),O=m._nextUint16(),f=m._nextUint16(),ie=m._nextUint32(),pr=m._nextUint32(),xr=m._nextUint32(),nn=m._nextUint32(),Cr=[];for(let A=0;A<s;A++)Cr.push({imageFlags:m._nextUint32(),rgbSliceByteOffset:m._nextUint32(),rgbSliceByteLength:m._nextUint32(),alphaSliceByteOffset:m._nextUint32(),alphaSliceByteLength:m._nextUint32()});let dr=l+m._offset,Gr=dr+ie,Or=Gr+pr,sn=Or+xr,_n=new Uint8Array(e.buffer,e.byteOffset+dr,ie),an=new Uint8Array(e.buffer,e.byteOffset+Gr,pr),cn=new Uint8Array(e.buffer,e.byteOffset+Or,xr),Rn=new Uint8Array(e.buffer,e.byteOffset+sn,nn);return r.globalData={endpointCount:O,selectorCount:f,imageDescs:Cr,endpointsData:_n,selectorsData:an,tablesData:cn,extendedData:Rn},r}var Qr={[34836]:"rgba32float",[33776]:"bc1-rgb-unorm-webgl",[35916]:"bc1-rgb-unorm-srgb-webgl",[33777]:"bc1-rgba-unorm",[35917]:"bc1-rgba-unorm-srgb",[33778]:"bc2-rgba-unorm",[35918]:"bc2-rgba-unorm-srgb",[33779]:"bc3-rgba-unorm",[35919]:"bc3-rgba-unorm-srgb",[36283]:"bc4-r-unorm",[36284]:"bc4-r-snorm",[36285]:"bc5-rg-unorm",[36286]:"bc5-rg-snorm",[37492]:"etc2-rgb8unorm",[37494]:"etc2-rgb8unorm-srgb",[37496]:"etc2-rgb8a1unorm",[37497]:"etc2-rgb8a1unorm-srgb",[37493]:"etc2-rgba8unorm",[37495]:"etc2-rgba8unorm-srgb",[37488]:"eac-r11unorm",[37489]:"eac-r11snorm",[37490]:"eac-rg11unorm",[37491]:"eac-rg11snorm",[37808]:"astc-4x4-unorm",[37840]:"astc-4x4-unorm-srgb",[37809]:"astc-5x4-unorm",[37841]:"astc-5x4-unorm-srgb",[37810]:"astc-5x5-unorm",[37842]:"astc-5x5-unorm-srgb",[37811]:"astc-6x5-unorm",[37843]:"astc-6x5-unorm-srgb",[37812]:"astc-6x6-unorm",[37844]:"astc-6x6-unorm-srgb",[37813]:"astc-8x5-unorm",[37845]:"astc-8x5-unorm-srgb",[37814]:"astc-8x6-unorm",[37846]:"astc-8x6-unorm-srgb",[37815]:"astc-8x8-unorm",[37847]:"astc-8x8-unorm-srgb",[37816]:"astc-10x5-unorm",[37848]:"astc-10x5-unorm-srgb",[37817]:"astc-10x6-unorm",[37849]:"astc-10x6-unorm-srgb",[37818]:"astc-10x8-unorm",[37850]:"astc-10x8-unorm-srgb",[37819]:"astc-10x10-unorm",[37851]:"astc-10x10-unorm-srgb",[37820]:"astc-12x10-unorm",[37852]:"astc-12x10-unorm-srgb",[37821]:"astc-12x12-unorm",[37853]:"astc-12x12-unorm-srgb",[35840]:"pvrtc-rgb4unorm-webgl",[35842]:"pvrtc-rgba4unorm-webgl",[35841]:"pvrtc-rgb2unorm-webgl",[35843]:"pvrtc-rgba2unorm-webgl",[36196]:"etc1-rgb-unorm-webgl",[35986]:"atc-rgb-unorm-webgl",[35987]:"atc-rgba-unorm-webgl",[34798]:"atc-rgbai-unorm-webgl"},ns=Object.fromEntries(Object.entries(Qr).map(([e,t])=>[t,Number(e)]));function Ne(e){if(e!==void 0)return Qr[e]}function eo(e){if(e!==void 0)return ns[e]}function j(e,t){let r=new Array(t.mipMapLevels),o=t.textureFormat||Ne(t.internalFormat),n=t.internalFormat||eo(t.textureFormat),s=t.width,_=t.height,a=0;for(let i=0;i<t.mipMapLevels;++i){let c=_s(t,s,_,e,i),S={shape:"texture-level",compressed:!0,data:ss(e,i,a,c),width:s,height:_,levelSize:c};n!==void 0&&(S.format=n),o&&(S.textureFormat=o),r[i]=S,s=Math.max(1,s>>1),_=Math.max(1,_>>1),a+=c}return r}function ss(e,t,r,o){return Array.isArray(e)?e[t].levelData:new Uint8Array(e.buffer,e.byteOffset+r,o)}function _s(e,t,r,o,n){return Array.isArray(o)?e.sizeFunction(o[n]):e.sizeFunction(t,r)}var as={131:33776,132:35916,133:33777,134:35917,135:33778,136:35918,137:33779,138:35919,139:36283,140:36284,141:36285,142:36286,147:37492,148:37494,149:37496,150:37497,151:37493,152:37495,153:37488,154:37489,155:37490,156:37491,157:37808,158:37840,159:37809,160:37841,161:37810,162:37842,163:37811,164:37843,165:37812,166:37844,167:37813,168:37845,169:37814,170:37846,171:37815,172:37847,173:37816,174:37848,175:37817,176:37849,177:37818,178:37850,179:37819,180:37851,181:37820,182:37852,183:37821,184:37853,1000054e3:35843,1000054001:35842,1000066e3:37808,1000066001:37809,1000066002:37810,1000066003:37811,1000066004:37812,1000066005:37813,1000066006:37814,1000066007:37815,1000066008:37816,1000066009:37817,1000066010:37818,1000066011:37819,1000066012:37820,1000066013:37821};function is(e){return as[e]}function to(e){return Ne(is(e))}var p=[171,75,84,88,32,50,48,187,13,10,26,10];function Ve(e){let t=new Uint8Array(e);return!(t.byteLength<p.length||t[0]!==p[0]||t[1]!==p[1]||t[2]!==p[2]||t[3]!==p[3]||t[4]!==p[4]||t[5]!==p[5]||t[6]!==p[6]||t[7]!==p[7]||t[8]!==p[8]||t[9]!==p[9]||t[10]!==p[10]||t[11]!==p[11])}function ro(e){let t=new Uint8Array(e),r=qr(t),o=Math.max(1,r.levels.length),n=r.pixelWidth,s=r.pixelHeight,_=to(r.vkFormat);return _===void 0&&ct.warn(`KTX2 container vkFormat ${r.vkFormat} does not map to a known texture format; returning texture levels without format metadata.`)(),j(r.levels,{mipMapLevels:o,width:n,height:s,sizeFunction:a=>a.uncompressedByteLength,textureFormat:_})}var oo=Promise.resolve(),_o={etc1:{basisFormat:0,compressed:!0,format:36196,textureFormat:"etc1-rgb-unorm-webgl"},etc2:{basisFormat:1,compressed:!0,format:37493,textureFormat:"etc2-rgba8unorm"},bc1:{basisFormat:2,compressed:!0,format:33776,textureFormat:"bc1-rgb-unorm-webgl"},bc3:{basisFormat:3,compressed:!0,format:33779,textureFormat:"bc3-rgba-unorm"},bc4:{basisFormat:4,compressed:!0,format:36283,textureFormat:"bc4-r-unorm"},bc5:{basisFormat:5,compressed:!0,format:36285,textureFormat:"bc5-rg-unorm"},"bc7-m6-opaque-only":{basisFormat:6,compressed:!0,format:36492,textureFormat:"bc7-rgba-unorm"},"bc7-m5":{basisFormat:7,compressed:!0,format:36492,textureFormat:"bc7-rgba-unorm"},"pvrtc1-4-rgb":{basisFormat:8,compressed:!0,format:35840,textureFormat:"pvrtc-rgb4unorm-webgl"},"pvrtc1-4-rgba":{basisFormat:9,compressed:!0,format:35842,textureFormat:"pvrtc-rgba4unorm-webgl"},"astc-4x4":{basisFormat:10,compressed:!0,format:37808,textureFormat:"astc-4x4-unorm"},"atc-rgb":{basisFormat:11,compressed:!0,format:35986,textureFormat:"atc-rgb-unorm-webgl"},"atc-rgba-interpolated-alpha":{basisFormat:12,compressed:!0,format:34798,textureFormat:"atc-rgbai-unorm-webgl"},rgba32:{basisFormat:13,compressed:!1,format:32856,textureFormat:"rgba8unorm"},rgb565:{basisFormat:14,compressed:!1,format:36194,textureFormat:"rgb565unorm-webgl"},bgr565:{basisFormat:15,compressed:!1,format:36194,textureFormat:"rgb565unorm-webgl"},rgba4444:{basisFormat:16,compressed:!1,format:32854,textureFormat:"rgba4unorm-webgl"}},Pi=Object.freeze(Object.keys(_o));async function cs(e){let t=oo,r;oo=new Promise(o=>{r=o}),await t;try{return await e()}finally{r()}}async function Xe(e,t={}){let r=q(t);return await cs(async()=>{if(!t.basis?.containerFormat||t.basis.containerFormat==="auto"){if(Ve(e)){let n=await ee(r);return no(n.KTX2File,e,t)}let{BasisFile:o}=await mt(r);return tr(o,e,t)}switch(t.basis.module){case"encoder":let o=await ee(r);switch(t.basis.containerFormat){case"ktx2":return no(o.KTX2File,e,t);case"basis":default:return tr(o.BasisFile,e,t)}case"transcoder":default:let{BasisFile:n}=await mt(r);return tr(n,e,t)}})}function tr(e,t,r){let o=new e(new Uint8Array(t));try{if(!o.startTranscoding())throw new Error("Failed to start basis transcoding");let n=o.getNumImages(),s=[];for(let _=0;_<n;_++){let a=o.getNumLevels(_),i=[];for(let c=0;c<a;c++)i.push(Rs(o,_,c,r));s.push(i)}return s}finally{o.close(),o.delete()}}function Rs(e,t,r,o){let n=e.getImageWidth(t,r),s=e.getImageHeight(t,r),_=e.getHasAlpha(),{compressed:a,format:i,basisFormat:c,textureFormat:l}=ao(o,_),S=e.getImageTranscodedSizeInBytes(t,r,c),G=new Uint8Array(S);if(!e.transcodeImage(G,t,r,c,0,0))throw new Error("failed to start Basis transcoding");return{shape:"texture-level",width:n,height:s,data:G,compressed:a,...i!==void 0?{format:i}:{},...l!==void 0?{textureFormat:l}:{},hasAlpha:_}}function no(e,t,r){let o=new e(new Uint8Array(t));try{if(!o.startTranscoding())throw new Error("failed to start KTX2 transcoding");let n=o.getLevels(),s=[];for(let _=0;_<n;_++)s.push(us(o,_,r));return[s]}finally{o.close(),o.delete()}}function us(e,t,r){let{alphaFlag:o,height:n,width:s}=e.getImageLevelInfo(t,0,0),{compressed:_,format:a,basisFormat:i,textureFormat:c}=ao(r,o),l=e.getImageTranscodedSizeInBytes(t,0,0,i),S=new Uint8Array(l);if(!e.transcodeImage(S,t,0,0,i,0,-1,-1))throw new Error("Failed to transcode KTX2 image");return{shape:"texture-level",width:s,height:n,data:S,compressed:_,...a!==void 0?{format:a}:{},...c!==void 0?{textureFormat:c}:{},levelSize:l,hasAlpha:o}}function ao(e,t){let r=e.basis?.format||"auto";r==="auto"&&(r=e.basis?.supportedTextureFormats?so(e.basis.supportedTextureFormats):so()),typeof r=="object"&&(r=t?r.alpha:r.noAlpha);let o=r.toLowerCase(),n=_o[o];if(!n)throw new Error(`Unknown Basis format ${r}`);return n}function so(e=Jr()){let t=new Set(e);return Y(t,["astc-4x4-unorm","astc-4x4-unorm-srgb"])?"astc-4x4":Y(t,["bc7-rgba-unorm","bc7-rgba-unorm-srgb"])?{alpha:"bc7-m5",noAlpha:"bc7-m6-opaque-only"}:Y(t,["bc1-rgb-unorm-webgl","bc1-rgb-unorm-srgb-webgl","bc1-rgba-unorm","bc1-rgba-unorm-srgb","bc2-rgba-unorm","bc2-rgba-unorm-srgb","bc3-rgba-unorm","bc3-rgba-unorm-srgb"])?{alpha:"bc3",noAlpha:"bc1"}:Y(t,["pvrtc-rgb4unorm-webgl","pvrtc-rgba4unorm-webgl","pvrtc-rgb2unorm-webgl","pvrtc-rgba2unorm-webgl"])?{alpha:"pvrtc1-4-rgba",noAlpha:"pvrtc1-4-rgb"}:Y(t,["etc2-rgb8unorm","etc2-rgb8unorm-srgb","etc2-rgb8a1unorm","etc2-rgb8a1unorm-srgb","etc2-rgba8unorm","etc2-rgba8unorm-srgb","eac-r11unorm","eac-r11snorm","eac-rg11unorm","eac-rg11snorm"])?"etc2":t.has("etc1-rgb-unorm-webgl")?"etc1":Y(t,["atc-rgb-unorm-webgl","atc-rgba-unorm-webgl","atc-rgbai-unorm-webgl"])?{alpha:"atc-rgba-interpolated-alpha",noAlpha:"atc-rgb"}:"rgb565"}function Y(e,t){return t.some(r=>e.has(r))}var rr={dataType:null,batchType:null,name:"Basis",id:"basis",module:"textures",version:u,worker:!0,extensions:["basis","ktx2"],mimeTypes:["application/octet-stream","image/ktx2"],tests:["sB"],binary:!0,options:{basis:{format:"auto",containerFormat:"auto",module:"transcoder"}}},io={...rr,parse:Xe};var x={MAGIC_NUMBER:542327876,HEADER_LENGTH:31,MAGIC_NUMBER_INDEX:0,HEADER_SIZE_INDEX:1,HEADER_FLAGS_INDEX:2,HEADER_HEIGHT_INDEX:3,HEADER_WIDTH_INDEX:4,MIPMAPCOUNT_INDEX:7,HEADER_PF_FLAGS_INDEX:20,HEADER_PF_FOURCC_INDEX:21,DDSD_MIPMAPCOUNT:131072,DDPF_FOURCC:4},Ss={DXT1:"bc1-rgb-unorm-webgl",DXT3:"bc2-rgba-unorm",DXT5:"bc3-rgba-unorm","ATC ":"atc-rgb-unorm-webgl",ATCA:"atc-rgba-unorm-webgl",ATCI:"atc-rgbai-unorm-webgl"},ls=uo,ms=ve,Es=ve,fs={DXT1:uo,DXT3:ve,DXT5:ve,"ATC ":ls,ATCA:ms,ATCI:Es};function co(e){return new Uint32Array(e,0,x.HEADER_LENGTH)[x.MAGIC_NUMBER_INDEX]===x.MAGIC_NUMBER}function Ro(e){let t=new Int32Array(e,0,x.HEADER_LENGTH),r=t[x.HEADER_PF_FOURCC_INDEX];B(Boolean(t[x.HEADER_PF_FLAGS_INDEX]&x.DDPF_FOURCC),"DDS: Unsupported format, must contain a FourCC code");let o=As(r),n=Ss[o],s=fs[o];B(n&&s,`DDS: Unknown pixel format ${r}`);let _=1;t[x.HEADER_FLAGS_INDEX]&x.DDSD_MIPMAPCOUNT&&(_=Math.max(1,t[x.MIPMAPCOUNT_INDEX]));let a=t[x.HEADER_WIDTH_INDEX],i=t[x.HEADER_HEIGHT_INDEX],c=t[x.HEADER_SIZE_INDEX]+4,l=new Uint8Array(e,c);return j(l,{mipMapLevels:_,width:a,height:i,sizeFunction:s,textureFormat:n})}function uo(e,t){return(e+3>>2)*(t+3>>2)*8}function ve(e,t){return(e+3>>2)*(t+3>>2)*16}function As(e){return String.fromCharCode(e&255,e>>8&255,e>>16&255,e>>24&255)}var C={MAGIC_NUMBER:55727696,MAGIC_NUMBER_EXTRA:1347834371,HEADER_LENGTH:13,HEADER_SIZE:52,MAGIC_NUMBER_INDEX:0,PIXEL_FORMAT_INDEX:2,COLOUR_SPACE_INDEX:4,HEIGHT_INDEX:6,WIDTH_INDEX:7,MIPMAPCOUNT_INDEX:11,METADATA_SIZE_INDEX:12},Ts={0:["pvrtc-rgb2unorm-webgl"],1:["pvrtc-rgba2unorm-webgl"],2:["pvrtc-rgb4unorm-webgl"],3:["pvrtc-rgba4unorm-webgl"],6:["etc1-rgb-unorm-webgl"],7:["bc1-rgb-unorm-webgl"],9:["bc2-rgba-unorm"],11:["bc3-rgba-unorm"],22:["etc2-rgb8unorm"],23:["etc2-rgba8unorm"],24:["etc2-rgb8a1unorm"],25:["eac-r11unorm"],26:["eac-rg11unorm"],27:["astc-4x4-unorm","astc-4x4-unorm-srgb"],28:["astc-5x4-unorm","astc-5x4-unorm-srgb"],29:["astc-5x5-unorm","astc-5x5-unorm-srgb"],30:["astc-6x5-unorm","astc-6x5-unorm-srgb"],31:["astc-6x6-unorm","astc-6x6-unorm-srgb"],32:["astc-8x5-unorm","astc-8x5-unorm-srgb"],33:["astc-8x6-unorm","astc-8x6-unorm-srgb"],34:["astc-8x8-unorm","astc-8x8-unorm-srgb"],35:["astc-10x5-unorm","astc-10x5-unorm-srgb"],36:["astc-10x6-unorm","astc-10x6-unorm-srgb"],37:["astc-10x8-unorm","astc-10x8-unorm-srgb"],38:["astc-10x10-unorm","astc-10x10-unorm-srgb"],39:["astc-12x10-unorm","astc-12x10-unorm-srgb"],40:["astc-12x12-unorm","astc-12x12-unorm-srgb"]},gs={0:So,1:So,2:lo,3:lo,6:re,7:re,9:oe,11:oe,22:re,23:oe,24:re,25:re,26:oe,27:oe,28:ps,29:xs,30:Cs,31:ds,32:Gs,33:Os,34:Ms,35:Bs,36:bs,37:Ls,38:Ps,39:hs,40:Ds};function mo(e){let r=new Uint32Array(e,0,C.HEADER_LENGTH)[C.MAGIC_NUMBER_INDEX];return r===C.MAGIC_NUMBER||r===C.MAGIC_NUMBER_EXTRA}function Eo(e){let t=new Uint32Array(e,0,C.HEADER_LENGTH),r=t[C.PIXEL_FORMAT_INDEX],o=t[C.COLOUR_SPACE_INDEX],n=Ts[r]||[],s=n.length>1&&o?n[1]:n[0],_=gs[r],a=t[C.MIPMAPCOUNT_INDEX],i=t[C.WIDTH_INDEX],c=t[C.HEIGHT_INDEX],l=C.HEADER_SIZE+t[C.METADATA_SIZE_INDEX],S=new Uint8Array(e,l);return j(S,{mipMapLevels:a,width:i,height:c,sizeFunction:_,textureFormat:s})}function So(e,t){return e=Math.max(e,16),t=Math.max(t,8),e*t/4}function lo(e,t){return e=Math.max(e,8),t=Math.max(t,8),e*t/2}function re(e,t){return Math.floor((e+3)/4)*Math.floor((t+3)/4)*8}function oe(e,t){return Math.floor((e+3)/4)*Math.floor((t+3)/4)*16}function ps(e,t){return Math.floor((e+4)/5)*Math.floor((t+3)/4)*16}function xs(e,t){return Math.floor((e+4)/5)*Math.floor((t+4)/5)*16}function Cs(e,t){return Math.floor((e+5)/6)*Math.floor((t+4)/5)*16}function ds(e,t){return Math.floor((e+5)/6)*Math.floor((t+5)/6)*16}function Gs(e,t){return Math.floor((e+7)/8)*Math.floor((t+4)/5)*16}function Os(e,t){return Math.floor((e+7)/8)*Math.floor((t+5)/6)*16}function Ms(e,t){return Math.floor((e+7)/8)*Math.floor((t+7)/8)*16}function Bs(e,t){return Math.floor((e+9)/10)*Math.floor((t+4)/5)*16}function bs(e,t){return Math.floor((e+9)/10)*Math.floor((t+5)/6)*16}function Ls(e,t){return Math.floor((e+9)/10)*Math.floor((t+7)/8)*16}function Ps(e,t){return Math.floor((e+9)/10)*Math.floor((t+9)/10)*16}function hs(e,t){return Math.floor((e+11)/12)*Math.floor((t+9)/10)*16}function Ds(e,t){return Math.floor((e+11)/12)*Math.floor((t+11)/12)*16}function fo(e){if(Ve(e))return ro(e);if(co(e))return Ro(e);if(mo(e))return Eo(e);throw new Error("Texture container format not recognized")}var or={dataType:null,batchType:null,name:"Texture Containers",id:"compressed-texture",module:"textures",version:u,worker:!0,extensions:["ktx","ktx2","dds","pvr"],mimeTypes:["image/ktx2","image/ktx","image/vnd-ms.dds","image/x-dds","application/octet-stream"],binary:!0,options:{"compressed-texture":{useBasis:!1}}},Ao={...or,parse:async(e,t)=>(t={...t},t?.["compressed-texture"]?.useBasis?(t.basis={format:{alpha:"BC3",noAlpha:"BC1"},...t.basis,containerFormat:"ktx2",module:"encoder"},(await Xe(e,t))[0]):fo(e))};var nr={dataType:null,batchType:null,id:"crunch",name:"Crunch",module:"textures",version:u,worker:!0,extensions:["crn"],mimeTypes:["image/crn","image/x-crn","application/octet-stream"],binary:!0,options:{crunch:{}}};var xo=["#?RADIANCE","#?RGBE"],ws="32-bit_rle_rgbe";function Co(e){let t={data:new Uint8Array(e),offset:0},r=ir(t);return r?xo.includes(r):!1}function cr(e){let t={data:new Uint8Array(e),offset:0},r=Ks(t),{width:o,height:n}=r,s=ys(t,r),_=Is(s),a={shape:"texture-level",compressed:!1,width:o,height:n,data:_,levelSize:_.byteLength,format:34836,textureFormat:"rgba32float"};return{shape:"texture",type:"2d",format:"rgba32float",...r.metadata?{metadata:r.metadata}:{},data:[a]}}function Ks(e){let t=ir(e);if(!t||!xo.includes(t))throw new Error("RadianceHDRLoader: bad initial token");let r=!1,o={};for(;e.offset<e.data.length;){let n=ir(e);if(n===null)break;if(!n||n.startsWith("#"))continue;if(n.startsWith("FORMAT=")){if(r=n.slice(7)===ws,!r)throw new Error("RadianceHDRLoader: unsupported format specifier");continue}Hs(o,n);let s=Fs(n);if(s){if(!r)throw new Error("RadianceHDRLoader: missing format specifier");return{...s,...Us(o)?{metadata:o}:{}}}}throw r?new Error("RadianceHDRLoader: missing image size specifier"):new Error("RadianceHDRLoader: missing format specifier")}function Fs(e){let t=e.match(/^([+-])([YX])\s+(\d+)\s+([+-])([YX])\s+(\d+)$/);if(!t)return null;let r=t[1]==="+"?1:-1,o=t[2],n=Number(t[3]),s=t[4]==="+"?1:-1,_=t[5],a=Number(t[6]);if(o===_)throw new Error("RadianceHDRLoader: invalid image dimensions");let i=o==="X"?n:a,c=o==="Y"?n:a;if(!Number.isFinite(i)||!Number.isFinite(c)||i<=0||c<=0)throw new Error("RadianceHDRLoader: invalid image dimensions");return{width:i,height:c,majorAxis:o,majorSign:r,minorAxis:_,minorSign:s}}function ys(e,t){let{width:r,height:o}=t,s=r*o*4,_=t.minorAxis==="X"?r:o,a=t.majorAxis==="Y"?o:r;if(_<8||_>32767)return sr(_r(e,s),t);if(e.offset+4>e.data.length)throw new Error("RadianceHDRLoader: unexpected end of file");let i=e.data;if(!(i[e.offset]===2&&i[e.offset+1]===2&&!(i[e.offset+2]&128))||(i[e.offset+2]<<8|i[e.offset+3])!==_)return sr(_r(e,s),t);let S=new Uint8Array(s),G=new Uint8Array(_*4);for(let K=0;K<a;K++){if(e.offset+4>i.length)throw new Error("RadianceHDRLoader: unexpected end of file");let R=i[e.offset++],Z=i[e.offset++],et=i[e.offset++],tt=i[e.offset++];if(R!==2||Z!==2||(et<<8|tt)!==_)throw new Error("RadianceHDRLoader: bad rgbe scanline format");for(let T=0;T<4;T++){let g=T*_,m=g+_,O=g;for(;O<m;){if(e.offset>=i.length)throw new Error("RadianceHDRLoader: unexpected end of file");let f=i[e.offset++];if(f>128){if(f-=128,f===0||O+f>m||e.offset>=i.length)throw new Error("RadianceHDRLoader: bad scanline data");let ie=i[e.offset++];G.fill(ie,O,O+f),O+=f;continue}if(f===0||O+f>m||e.offset+f>i.length)throw new Error("RadianceHDRLoader: bad scanline data");G.set(i.subarray(e.offset,e.offset+f),O),O+=f,e.offset+=f}}for(let T=0;T<_;T++){let g=Go(t,K,T);S[g]=G[T],S[g+1]=G[T+_],S[g+2]=G[T+_*2],S[g+3]=G[T+_*3]}}return S}function sr(e,t){let r=new Uint8Array(e.length),o=t.minorAxis==="X"?t.width:t.height,n=t.majorAxis==="Y"?t.height:t.width;for(let s=0;s<n;s++)for(let _=0;_<o;_++){let a=(s*o+_)*4,i=Go(t,s,_);r[i]=e[a],r[i+1]=e[a+1],r[i+2]=e[a+2],r[i+3]=e[a+3]}return r}function Go(e,t,r){let o=To(e.majorAxis==="X"?e.width:e.height,e.majorSign,t),n=To(e.minorAxis==="X"?e.width:e.height,e.minorSign,r),s=e.majorAxis==="X"?o:n,_=e.majorAxis==="Y"?o:n;return((e.height-1-_)*e.width+s)*4}function To(e,t,r){return t===1?r:e-1-r}function _r(e,t){if(e.offset+t>e.data.length)throw new Error("RadianceHDRLoader: unexpected end of file");let r=e.data.slice(e.offset,e.offset+t);return e.offset+=t,r}function Is(e){let t=new Float32Array(e.length);for(let r=0;r<e.length;r+=4){let o=e[r+3],n=r;if(o>0){let s=Math.pow(2,o-128)/255;t[n]=e[r]*s,t[n+1]=e[r+1]*s,t[n+2]=e[r+2]*s}t[n+3]=1}return t}function ir(e){if(e.offset>=e.data.length)return null;let t=e.offset;for(;e.offset<e.data.length;)if(e.data[e.offset++]===10){let n=go(e.data.subarray(t,e.offset-1));return n.endsWith("\r")?n.slice(0,-1):n}let r=go(e.data.subarray(t,e.offset));return r.endsWith("\r")?r.slice(0,-1):r}function go(e){let t="";for(let r of e)t+=String.fromCharCode(r);return t}function Hs(e,t){if(t.startsWith("COLORCORR=")){let r=po(t.slice(10),3);r&&(e.colorCorrection=r);return}if(t.startsWith("EXPOSURE=")){let r=ar(t.slice(9));r!==null&&(e.exposure=r);return}if(t.startsWith("GAMMA=")){let r=ar(t.slice(6));r!==null&&(e.gamma=r);return}if(t.startsWith("PIXASPECT=")){let r=ar(t.slice(10));r!==null&&(e.pixelAspectRatio=r);return}if(t.startsWith("PRIMARIES=")){let r=po(t.slice(10),8);r&&(e.primaries=r);return}if(t.startsWith("SOFTWARE=")){e.software=t.slice(9).trim();return}t.startsWith("VIEW=")&&(e.view=t.slice(5).trim())}function ar(e){let t=Number(e.trim());return Number.isFinite(t)?t:null}function po(e,t){let r=e.trim().split(/\s+/).map(o=>Number(o));return r.length!==t||r.some(o=>!Number.isFinite(o))?null:r}function Us(e){return Object.keys(e).length>0}var Oo={dataType:null,batchType:null,name:"Radiance HDR",id:"hdr",module:"textures",version:u,extensions:["hdr"],mimeTypes:["image/vnd.radiance","image/x-hdr","application/octet-stream"],binary:!0,tests:[Co],options:{hdr:{}},parseSync:cr,parse:async e=>cr(e)};var Rr=new Uint32Array([305419896]),Ns=new Uint8Array(Rr.buffer,Rr.byteOffset,Rr.byteLength),Vs=Ns[0]!==18,Mo=Vs,Xs={u1:Uint8Array,i1:Int8Array,u2:Uint16Array,i2:Int16Array,u4:Uint32Array,i4:Int32Array,f4:Float32Array,f8:Float64Array};function ur(e,t){let r=new DataView(e),{header:o,headerEndOffset:n}=vs(r),s=o.descr,_=Xs[s.slice(1,3)];if(!_)throw new Error(`Unimplemented type ${s}`);let i=o.shape?.reduce((l,S)=>l*S)*_.BYTES_PER_ELEMENT;if(e.byteLength<n+i)throw new Error("Buffer overflow");let c=new _(e.slice(n,n+i));if(s[0]===">"&&Mo||s[0]==="<"&&!Mo)throw new Error("Incorrect endianness");return{data:c,header:o}}function vs(e){let t=e.getUint8(6),r=8,o;t>=2?(o=e.getUint32(r,!0),r+=4):(o=e.getUint16(r,!0),r+=2);let n=t<=2?"latin1":"utf-8",s=new TextDecoder(n),_=new Uint8Array(e.buffer,r,o),a=s.decode(_);return r+=o,{header:JSON.parse(a.replace(/'/g,'"').replace("False","false").replace("(","[").replace(/,*\),*/g,"]")),headerEndOffset:r}}var ks=new Uint8Array([147,78,85,77,80,89]),Sr={dataType:null,batchType:null,name:"NPY",id:"npy",module:"textures",version:u,worker:!0,extensions:["npy"],mimeTypes:[],tests:[ks.buffer],options:{npy:{}}},Bo={...Sr,parseSync:ur,parse:async(e,t)=>ur(e,t)};var bo="4.4.2";var Ws=globalThis.loaders?.parseImageNode,lr=typeof Image<"u",mr=typeof ImageBitmap<"u",$s=Boolean(Ws),Er=nt?!0:$s;function Lo(e){switch(e){case"auto":return mr||lr||Er;case"imagebitmap":return mr;case"image":return lr;case"data":return Er;default:throw new Error(`@loaders.gl/images: image ${e} not supported in this environment`)}}function Po(){if(mr)return"imagebitmap";if(lr)return"image";if(Er)return"data";throw new Error("Install '@loaders.gl/polyfills' to parse images under Node.js")}function ke(e){return Boolean(Do(e))}function ho(e){let t=Do(e);if(!t)throw new Error("Not an image");return t}function J(e){return We(e)}function We(e){switch(ho(e)){case"data":return e;case"image":case"imagebitmap":let t=document.createElement("canvas"),r=t.getContext("2d");if(!r)throw new Error("getImageData");return t.width=e.width,t.height=e.height,r.drawImage(e,0,0),r.getImageData(0,0,e.width,e.height);default:throw new Error("getImageData")}}function Do(e){return typeof ImageBitmap<"u"&&e instanceof ImageBitmap?"imagebitmap":typeof Image<"u"&&e instanceof Image?"image":e&&typeof e=="object"&&e.data&&e.width&&e.height?"data":null}var zs=/^data:image\/svg\+xml/,js=/\.svg((\?|#).*)?$/;function $e(e){return e&&(zs.test(e)||js.test(e))}function wo(e,t){if($e(t)){let o=new TextDecoder().decode(e);try{typeof unescape=="function"&&typeof encodeURIComponent=="function"&&(o=unescape(encodeURIComponent(o)))}catch(s){throw new Error(s.message)}return`data:image/svg+xml;base64,${btoa(o)}`}return fr(e,t)}function fr(e,t){if($e(t))throw new Error("SVG cannot be parsed directly to imagebitmap");return new Blob([new Uint8Array(e)])}async function ze(e,t,r){let o=wo(e,r),n=self.URL||self.webkitURL,s=typeof o!="string"&&n.createObjectURL(o);try{return await Ys(s||o,t)}finally{s&&n.revokeObjectURL(s)}}async function Ys(e,t){let r=new Image;return r.src=e,t.image&&t.image.decode&&r.decode?(await r.decode(),r):await new Promise((o,n)=>{try{r.onload=()=>o(r),r.onerror=s=>{let _=s instanceof Error?s.message:"error";n(new Error(_))}}catch(s){n(s)}})}var Ko=!0;async function Fo(e,t,r){let o;$e(r)?o=await ze(e,t,r):o=fr(e,r);let n=t&&t.imagebitmap;return await Js(o,n)}async function Js(e,t=null){if((Zs(t)||!Ko)&&(t=null),t)try{return await createImageBitmap(e,t)}catch(r){console.warn(r),Ko=!1}return await createImageBitmap(e)}function Zs(e){if(!e)return!0;for(let t in e)if(Object.prototype.hasOwnProperty.call(e,t))return!1;return!0}function yo(e){return!t_(e,"ftyp",4)||!(e[8]&96)?null:qs(e)}function qs(e){switch(Qs(e,8,12).replace("\0"," ").trim()){case"avif":case"avis":return{extension:"avif",mimeType:"image/avif"};default:return null}}function Qs(e,t,r){return String.fromCharCode(...e.slice(t,r))}function e_(e){return[...e].map(t=>t.charCodeAt(0))}function t_(e,t,r=0){let o=e_(t);for(let n=0;n<o.length;++n)if(o[n]!==e[n+r])return!1;return!0}var L=!1,ne=!0;function je(e){let t=se(e);return o_(t)||__(t)||n_(t)||s_(t)||r_(t)}function r_(e){let t=new Uint8Array(e instanceof DataView?e.buffer:e),r=yo(t);return r?{mimeType:r.mimeType,width:0,height:0}:null}function o_(e){let t=se(e);return t.byteLength>=24&&t.getUint32(0,L)===2303741511?{mimeType:"image/png",width:t.getUint32(16,L),height:t.getUint32(20,L)}:null}function n_(e){let t=se(e);return t.byteLength>=10&&t.getUint32(0,L)===1195984440?{mimeType:"image/gif",width:t.getUint16(6,ne),height:t.getUint16(8,ne)}:null}function s_(e){let t=se(e);return t.byteLength>=14&&t.getUint16(0,L)===16973&&t.getUint32(2,ne)===t.byteLength?{mimeType:"image/bmp",width:t.getUint32(18,ne),height:t.getUint32(22,ne)}:null}function __(e){let t=se(e);if(!(t.byteLength>=3&&t.getUint16(0,L)===65496&&t.getUint8(2)===255))return null;let{tableMarkers:o,sofMarkers:n}=a_(),s=2;for(;s+9<t.byteLength;){let _=t.getUint16(s,L);if(n.has(_))return{mimeType:"image/jpeg",height:t.getUint16(s+5,L),width:t.getUint16(s+7,L)};if(!o.has(_))return null;s+=2,s+=t.getUint16(s,L)}return null}function a_(){let e=new Set([65499,65476,65484,65501,65534]);for(let r=65504;r<65520;++r)e.add(r);return{tableMarkers:e,sofMarkers:new Set([65472,65473,65474,65475,65477,65478,65479,65481,65482,65483,65485,65486,65487,65502])}}function se(e){if(e instanceof DataView)return e;if(ArrayBuffer.isView(e))return new DataView(e.buffer);if(e instanceof ArrayBuffer)return new DataView(e);throw new Error("toDataView")}async function Io(e,t){let{mimeType:r}=je(e)||{},o=globalThis.loaders?.parseImageNode;return B(o),await o(e,r)}async function Ho(e,t,r){t=t||{};let n=(t.image||{}).type||"auto",{url:s}=r||{},_=i_(n),a;switch(_){case"imagebitmap":a=await Fo(e,t,s);break;case"image":a=await ze(e,t,s);break;case"data":a=await Io(e,t);break;default:B(!1)}return n==="data"&&(a=We(a)),a}function i_(e){switch(e){case"auto":case"data":return Po();default:return Lo(e),e}}var c_=["png","jpg","jpeg","gif","webp","bmp","ico","svg","avif"],R_=["image/png","image/jpeg","image/gif","image/webp","image/avif","image/bmp","image/vnd.microsoft.icon","image/svg+xml"],u_={image:{type:"auto",decode:!0}},Ye={dataType:null,batchType:null,id:"image",module:"images",name:"Images",version:bo,mimeTypes:R_,extensions:c_,parse:Ho,tests:[e=>Boolean(je(new DataView(e)))],options:u_};var S_=e=>e&&typeof e=="object";async function Uo(e,t,r={}){return await Ar(e,t,r)}async function Ar(e,t,r){return Array.isArray(e)?await m_(e,t,r):S_(e)?await l_(e,t,r):await t(e,r)}async function l_(e,t,r){let o=[],n={};for(let s in e){let _=e[s],a=Ar(_,t,r).then(i=>{n[s]=i});o.push(a)}return await Promise.all(o),n}async function m_(e,t,r={}){let o=e.map(n=>Ar(n,t,r));return await Promise.all(o)}var U=[{face:34069,name:"+X",direction:"right",axis:"x",sign:"positive"},{face:34070,name:"-X",direction:"left",axis:"x",sign:"negative"},{face:34071,name:"+Y",direction:"top",axis:"y",sign:"positive"},{face:34072,name:"-Y",direction:"bottom",axis:"y",sign:"negative"},{face:34073,name:"+Z",direction:"front",axis:"z",sign:"positive"},{face:34074,name:"-Z",direction:"back",axis:"z",sign:"negative"}];async function d(e,t,r={},o){let n=Xo(e);if(n.shape!==t)throw new Error(`Expected ${t} manifest, got ${n.shape}`);return await E_(n,r,o)}function w(e,t){try{return Xo(e).shape===t}catch{return!1}}async function E_(e,t={},r){let o=L_(t),n=await f_(e,o,r),s=await N(n,o,r);return h_(e.shape,s)}async function N(e,t={},r){let o=D(t);return await Uo(e,async n=>await qe(n,o,r))}async function qe(e,t={},r){let o=A_(e,t,r),s=await B_(t,r)(o),_=b_(t);if(r){let i=P_(o,s,r);return await ot(s,[Ye],_,i)}let a=await s.arrayBuffer();return await Ye.parse(a,_)}async function f_(e,t={},r){switch(e.shape){case"image-texture":return await T_(e,t,r);case"image-texture-array":if(!Array.isArray(e.layers)||e.layers.length===0)throw new Error("image-texture-array manifest must define one or more layers");return await Promise.all(e.layers.map(async(o,n)=>await vo(o,t,r,{index:n})));case"image-texture-cube":return await No(e,t,r);case"image-texture-cube-array":if(!Array.isArray(e.layers)||e.layers.length===0)throw new Error("image-texture-cube-array manifest must define one or more layers");return await Promise.all(e.layers.map(async(o,n)=>await No(o,t,r,{index:n})));default:throw new Error("Unsupported composite image manifest")}}function D(e={}){if(e.core?.baseUrl)return e;let t=e.baseUrl;return t?{...e,core:{...e.core,baseUrl:t}}:e}function A_(e,t={},r){let o=ge(e);if(w_(e))return o;let n=d_(t,r);if(!n){if(o!==e||e.startsWith("@"))return o;throw new Error(`Unable to resolve relative image URL ${e} without a base URL`)}return ge(O_(n,e))}function Xo(e){let t=JSON.parse(e);if(!t?.shape)throw new Error("Composite image manifest must contain a shape field");return t}async function T_(e,t,r){if((e.image||e.mipmaps)&&e.template)throw new Error("image-texture manifest must define image, mipmaps, or template source");if(e.image&&e.mipmaps)throw new Error("image-texture manifest must define image, mipmaps, or template source");if(e.image)return e.image;if(e.mipmaps?.length)return e.mipmaps;if(e.template)return await ko({mipLevels:e.mipLevels??"auto",template:e.template},t,r,{});throw new Error("image-texture manifest must define image, mipmaps, or template source")}async function No(e,t,r,o={}){let n={};for(let{face:s,name:_,direction:a,axis:i,sign:c}of U){let l=e.faces?.[_]||e.faces?.[a];if(!l)throw new Error(`image-texture-cube manifest is missing ${_} face`);n[s]=await vo(l,t,r,{...o,face:_,direction:a,axis:i,sign:c})}return n}async function vo(e,t,r,o){if(typeof e=="string"||Array.isArray(e)&&e.length>0)return e;if(C_(e))return await ko(e,t,r,o);throw new Error("Composite image source entries must be strings or non-empty mip arrays")}async function ko(e,t,r,o){let n=e.mipLevels==="auto"?await g_(e.template,t,r,o):e.mipLevels;if(!Number.isFinite(n)||n<=0)throw new Error(`Invalid mipLevels value ${e.mipLevels}`);let s=[];for(let _=0;_<n;_++)s.push(Wo(e.template,{...o,lod:_}));return s}async function g_(e,t,r,o){if(!e.includes("{lod}"))throw new Error("Template sources with mipLevels: auto must include a {lod} placeholder");let n=Wo(e,{...o,lod:0}),s=await qe(n,D(t),r),{width:_,height:a}=J(s);return 1+Math.floor(Math.log2(Math.max(_,a)))}function Wo(e,t){let r="";for(let o=0;o<e.length;o++){let n=e[o];if(n==="\\"){let i=e[o+1];if(i==="{"||i==="}"||i==="\\"){r+=i,o++;continue}throw new Error(`Invalid escape sequence \\${i||""} in template ${e}`)}if(n==="}")throw new Error(`Unexpected } in template ${e}`);if(n!=="{"){r+=n;continue}let s=p_(e,o+1);if(s<0)throw new Error(`Unterminated placeholder in template ${e}`);let _=e.slice(o+1,s);if(!/^[a-z][a-zA-Z0-9]*$/.test(_))throw new Error(`Invalid placeholder {${_}} in template ${e}`);let a=x_(_,t);if(a===void 0)throw new Error(`Template ${e} uses unsupported placeholder {${_}} for this source`);r+=String(a),o=s}return r}function p_(e,t){for(let r=t;r<e.length;r++){let o=e[r];if(o==="\\"){r++;continue}if(o==="{")throw new Error(`Nested placeholders are not supported in template ${e}`);if(o==="}")return r}return-1}function x_(e,t){switch(e){case"lod":return t.lod;case"index":return t.index;case"face":return t.face;case"direction":return t.direction;case"axis":return t.axis;case"sign":return t.sign;default:return}}function C_(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function d_(e,t){return t?.baseUrl?t.baseUrl:e.baseUrl?gr(e.baseUrl):e.core?.baseUrl?G_(e.core.baseUrl):null}function gr(e){return e.endsWith("/")?e.slice(0,-1):e}function G_(e){return gr(I.dirname(e))}function O_(e,t){if(M_(e))return new URL(t,`${gr(e)}/`).toString();let r=e.startsWith("/")?e:`/${e}`,o=I.resolve(r,t);return e.startsWith("/")?o:o.slice(1)}function M_(e){return e.startsWith("http:")||e.startsWith("https:")||e.startsWith("file:")||e.startsWith("blob:")}function B_(e,t){let r=e.fetch??e.core?.fetch;return t?.fetch?t.fetch:typeof r=="function"?r:r&&typeof r=="object"?o=>fetch(o,r):fetch}function b_(e){let t=e.core,r={...e};if(delete r.baseUrl,!t?.baseUrl)return r;let o={...t};return delete o.baseUrl,{...r,core:o}}function L_(e){return e.image?.type||typeof ImageBitmap>"u"?e:{...e,image:{...e.image,type:"imagebitmap"}}}function P_(e,t,r){let o=t.url||e,[n,s=""]=o.split("?");return{...r,url:o,response:t,filename:I.filename(n),baseUrl:I.dirname(n),queryString:s}}function h_(e,t){switch(e){case"image-texture":{let r=Je(t);return{shape:"texture",type:"2d",format:Ze(r),data:r}}case"image-texture-array":{let r=t.map(o=>Je(o));return{shape:"texture",type:"2d-array",format:Ze(r[0]),data:r}}case"image-texture-cube":{let r=U.map(({face:o})=>Je(t[o]));return{shape:"texture",type:"cube",format:Ze(r[0]),data:r}}case"image-texture-cube-array":{let r=t.map(o=>U.map(({face:n})=>Je(o[n])));return{shape:"texture",type:"cube-array",format:Ze(r[0][0]),data:r}}default:throw new Error(`Unsupported composite image shape ${e}`)}}function Je(e){if(Array.isArray(e)){if(e.length===0)throw new Error("Composite image members must not be empty");if(e.every(Tr))return e;if(e.every(ke))return e.map(t=>Vo(t));if(e.every(t=>Array.isArray(t)&&t.every(Tr))){if(e.length!==1)throw new Error("Composite image members must resolve to a single image or mip chain");return e[0]}}if(D_(e)){if(e.type!=="2d")throw new Error(`Composite image members must resolve to 2d textures, got ${e.type}`);return e.data}if(Tr(e))return[e];if(ke(e))return[Vo(e)];throw new Error("Composite image members must resolve to an image, mip chain, or texture")}function Vo(e){let{width:t,height:r}=J(e);return{shape:"texture-level",compressed:!1,width:t,height:r,imageBitmap:typeof ImageBitmap<"u"&&e instanceof ImageBitmap?e:void 0,data:new Uint8Array(0),textureFormat:"rgba8unorm"}}function Ze(e){return e[0]?.textureFormat||"rgba8unorm"}function Tr(e){return Boolean(e&&typeof e=="object"&&"shape"in e&&e.shape==="texture-level")}function D_(e){return Boolean(e&&typeof e=="object"&&"shape"in e&&e.shape==="texture")}function w_(e){return e.startsWith("data:")||e.startsWith("blob:")||e.startsWith("file:")||e.startsWith("http:")||e.startsWith("https:")||e.startsWith("/")}var $o={dataType:null,batchType:null,id:"texture",name:"Texture",module:"textures",version:u,extensions:[],mimeTypes:[],text:!0,worker:!1,testText:e=>w(e,"image-texture"),options:{image:{}},parse:async(e,t,r)=>await d(new TextDecoder().decode(e),"image-texture",t,r),parseText:async(e,t,r)=>await d(e,"image-texture",t,r)};var zo={dataType:null,batchType:null,id:"texture-array",name:"Texture Array",module:"textures",version:u,extensions:[],mimeTypes:[],text:!0,worker:!1,testText:e=>w(e,"image-texture-array"),options:{image:{}},parse:async(e,t,r)=>await d(new TextDecoder().decode(e),"image-texture-array",t,r),parseText:async(e,t,r)=>await d(e,"image-texture-array",t,r)};var jo={dataType:null,batchType:null,id:"texture-cube",name:"Texture Cube",module:"textures",version:u,extensions:[],mimeTypes:[],text:!0,worker:!1,testText:e=>w(e,"image-texture-cube"),options:{image:{}},parse:async(e,t,r)=>await d(new TextDecoder().decode(e),"image-texture-cube",t,r),parseText:async(e,t,r)=>await d(e,"image-texture-cube",t,r)};var Yo={dataType:null,batchType:null,id:"texture-cube-array",name:"Texture Cube Array",module:"textures",version:u,extensions:[],mimeTypes:[],text:!0,worker:!1,testText:e=>w(e,"image-texture-cube-array"),options:{image:{}},parse:async(e,t,r)=>await d(new TextDecoder().decode(e),"image-texture-cube-array",t,r),parseText:async(e,t,r)=>await d(e,"image-texture-cube-array",t,r)};var Jo={DECODER:"crunch.js"};async function Zo(e,t,r){let o=["texture-compressor","--type","s3tc","--compression","DXT1","--quality","normal","--input",e,"--output",t];return await new v().start({command:"npx",arguments:o,spawn:r}),t}var qo={name:"DDS Texture Container",id:"dds",module:"textures",version:u,extensions:["dds"],mimeTypes:["image/vnd-ms.dds","image/x-dds","application/octet-stream"],options:{texture:{format:"auto",compression:"auto",quality:"auto",mipmap:!1,flipY:!1,toolFlags:""}},encodeURLtoURL:Zo,encode(){throw new Error("Not implemented")}};async function Qo(e,t={}){let{useSRGB:r=!1,qualityLevel:o=10,encodeUASTC:n=!1,mipmaps:s=!1}=t?.["ktx2-basis-writer"]||{},{BasisEncoder:_}=await ee(q(t)),a=new _;try{let i=new Uint8Array(e.width*e.height*4);a.setCreateKTX2File(!0),a.setKTX2UASTCSupercompression(!0),a.setKTX2SRGBTransferFunc(!0),a.setSliceSourceImage(0,e.data,e.width,e.height,!1),a.setPerceptual(r),a.setMipSRGB(r),a.setQualityLevel(o),a.setUASTC(n),a.setMipGen(s);let c=a.encode(i);return i.subarray(0,c).buffer}catch(i){throw console.error("Basis Universal Supercompressed GPU Texture encoder Error: ",i),i}finally{a.delete()}}var en={name:"Basis Universal Supercompressed GPU Texture",id:"ktx2-basis-writer",module:"textures",version:u,extensions:["ktx2"],mimeTypes:["image/ktx2"],options:{["ktx2-basis-writer"]:{useSRGB:!1,qualityLevel:10,encodeUASTC:!1,mipmaps:!1}},encode:Qo};function Qe(e,t,r){return typeof e=="function"?e({...t,...r}):e}async function tn(e,t={}){let r=await _e(e,t);return await N(r,D(t))}async function _e(e,t,r={}){let o=t&&t.image&&t.image.mipLevels||0;return o!==0?await K_(e,o,t,r):Qe(e,t,r)}async function K_(e,t,r,o){let n=[],s=D(r);if(t==="auto"){let _=Qe(e,r,{...o,lod:0}),a=await qe(_,s),{width:i,height:c}=J(a);t=F_({width:i,height:c}),n.push(_)}B(t>0);for(let _=n.length;_<t;++_){let a=Qe(e,r,{...o,lod:_});n.push(a)}return n}function F_(e){return 1+Math.floor(Math.log2(Math.max(e.width,e.height)))}async function rn(e,t,r={}){let o=await y_(e,t,r);return await N(o,D(r))}async function y_(e,t,r={}){let o=[];for(let n=0;n<e;n++){let s=_e(t,r,{index:n});o.push(s)}return await Promise.all(o)}async function I_(e,t){let r={},o=[],n=0;for(let s=0;s<U.length;++s){let _=U[n],a=_e(e,t,{..._,index:n++}).then(i=>{r[_.face]=i});o.push(a)}return await Promise.all(o),r}async function on(e,t={}){let r=await I_(e,t);return await N(r,D(t))}var H_={name:"Basis Universal Supercompressed GPU Texture",id:"ktx2-basis-writer",module:"textures",version:u,extensions:["ktx2"],worker:!0,options:{useSRGB:!1,qualityLevel:10,encodeUASTC:!1,mipmaps:!1}};return gn(ae);})();
8
8
  return __exports__;
9
9
  });
package/dist/index.cjs CHANGED
@@ -115,7 +115,7 @@ __export(dist_exports, {
115
115
  module.exports = __toCommonJS(dist_exports);
116
116
 
117
117
  // dist/lib/utils/version.js
118
- var VERSION = true ? "4.4.1" : "latest";
118
+ var VERSION = true ? "4.4.2" : "latest";
119
119
 
120
120
  // dist/lib/parsers/parse-basis.js
121
121
  var import_worker_utils2 = require("@loaders.gl/worker-utils");
@@ -50482,7 +50482,7 @@ function getVersion() {
50482
50482
  globalThis._loadersgl_.version = NPM_TAG;
50483
50483
  warningIssued = true;
50484
50484
  } else {
50485
- globalThis._loadersgl_.version = "4.4.1";
50485
+ globalThis._loadersgl_.version = "4.4.2";
50486
50486
  }
50487
50487
  }
50488
50488
  return globalThis._loadersgl_.version;
@@ -54143,7 +54143,7 @@ if (nodeVersion2 < 18) {
54143
54143
  }
54144
54144
 
54145
54145
  // src/lib/utils/version.ts
54146
- var VERSION2 = true ? "4.4.1" : "latest";
54146
+ var VERSION2 = true ? "4.4.2" : "latest";
54147
54147
 
54148
54148
  // src/lib/parsers/basis-module-loader.ts
54149
54149
  var BASIS_EXTERNAL_LIBRARIES = {
@@ -11,7 +11,7 @@
11
11
  globalThis._loadersgl_.version = NPM_TAG;
12
12
  warningIssued = true;
13
13
  } else {
14
- globalThis._loadersgl_.version = "4.4.1";
14
+ globalThis._loadersgl_.version = "4.4.2";
15
15
  }
16
16
  }
17
17
  return globalThis._loadersgl_.version;
@@ -287,7 +287,7 @@
287
287
  }
288
288
 
289
289
  // src/lib/utils/version.ts
290
- var VERSION2 = true ? "4.4.1" : "latest";
290
+ var VERSION2 = true ? "4.4.2" : "latest";
291
291
 
292
292
  // src/lib/parsers/basis-module-loader.ts
293
293
  var BASIS_EXTERNAL_LIBRARIES = {
@@ -4,5 +4,5 @@
4
4
  // Version constant cannot be imported, it needs to correspond to the build version of **this** module.
5
5
  // __VERSION__ is injected by babel-plugin-version-inline
6
6
  // @ts-ignore TS2304: Cannot find name '__VERSION__'.
7
- export const VERSION = typeof "4.4.1" !== 'undefined' ? "4.4.1" : 'latest';
7
+ export const VERSION = typeof "4.4.2" !== 'undefined' ? "4.4.2" : 'latest';
8
8
  //# sourceMappingURL=version.js.map
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  (() => {
3
3
  // src/lib/utils/version.ts
4
- var VERSION = true ? "4.4.1" : "latest";
4
+ var VERSION = true ? "4.4.2" : "latest";
5
5
 
6
6
  // src/lib/parsers/parse-npy.ts
7
7
  var a = new Uint32Array([305419896]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loaders.gl/textures",
3
- "version": "4.4.1",
3
+ "version": "4.4.2",
4
4
  "description": "Framework-independent loaders for compressed and super compressed (basis) textures ",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -75,10 +75,10 @@
75
75
  "build-crunch-worker": "esbuild src/workers/crunch-worker.ts --outfile=dist/crunch-worker.js --target=esnext --bundle --define:__VERSION__=\\\"$npm_package_version\\\""
76
76
  },
77
77
  "dependencies": {
78
- "@loaders.gl/images": "4.4.1",
79
- "@loaders.gl/loader-utils": "4.4.1",
80
- "@loaders.gl/schema": "4.4.1",
81
- "@loaders.gl/worker-utils": "4.4.1",
78
+ "@loaders.gl/images": "4.4.2",
79
+ "@loaders.gl/loader-utils": "4.4.2",
80
+ "@loaders.gl/schema": "4.4.2",
81
+ "@loaders.gl/worker-utils": "4.4.2",
82
82
  "@math.gl/types": "^4.1.0",
83
83
  "ktx-parse": "^0.7.0",
84
84
  "texture-compressor": "^1.0.2"
@@ -86,5 +86,5 @@
86
86
  "peerDependencies": {
87
87
  "@loaders.gl/core": "~4.4.0"
88
88
  },
89
- "gitHead": "18d4fdf37667eaf6ec832473a8ae89907e391992"
89
+ "gitHead": "1c9649781db0403dbf7c3f1224bbeec77bd812eb"
90
90
  }