@loaders.gl/core 4.2.0-alpha.3 → 4.2.0-alpha.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core-addons/write-file-browser.js +62 -1
- package/dist/dist.dev.js +366 -332
- package/dist/dist.min.js +15 -0
- package/dist/index.cjs +55 -68
- package/dist/index.cjs.map +7 -0
- package/dist/index.d.ts +20 -20
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -1
- package/dist/iterators/batch-iterators/timed-batch-iterator.js +18 -13
- package/dist/iterators/make-iterator/make-array-buffer-iterator.d.ts +1 -1
- package/dist/iterators/make-iterator/make-array-buffer-iterator.d.ts.map +1 -1
- package/dist/iterators/make-iterator/make-array-buffer-iterator.js +21 -15
- package/dist/iterators/make-iterator/make-blob-iterator.d.ts +1 -1
- package/dist/iterators/make-iterator/make-blob-iterator.d.ts.map +1 -1
- package/dist/iterators/make-iterator/make-blob-iterator.js +18 -10
- package/dist/iterators/make-iterator/make-iterator.d.ts +1 -1
- package/dist/iterators/make-iterator/make-iterator.d.ts.map +1 -1
- package/dist/iterators/make-iterator/make-iterator.js +29 -18
- package/dist/iterators/make-iterator/make-stream-iterator.js +86 -23
- package/dist/iterators/make-iterator/make-string-iterator.d.ts +1 -1
- package/dist/iterators/make-iterator/make-string-iterator.d.ts.map +1 -1
- package/dist/iterators/make-iterator/make-string-iterator.js +20 -10
- package/dist/iterators/make-stream/make-stream.js +47 -29
- package/dist/javascript-utils/is-type.js +25 -19
- package/dist/lib/api/encode-table.js +40 -35
- package/dist/lib/api/encode.js +112 -73
- package/dist/lib/api/load-in-batches.js +35 -21
- package/dist/lib/api/load.js +35 -20
- package/dist/lib/api/loader-options.d.ts +2 -2
- package/dist/lib/api/loader-options.d.ts.map +1 -1
- package/dist/lib/api/loader-options.js +3 -1
- package/dist/lib/api/parse-in-batches.js +105 -69
- package/dist/lib/api/parse-sync.js +42 -33
- package/dist/lib/api/parse.js +73 -61
- package/dist/lib/api/register-loaders.js +23 -14
- package/dist/lib/api/select-loader.js +216 -163
- package/dist/lib/common.js +3 -1
- package/dist/lib/fetch/fetch-error-message.js +17 -12
- package/dist/lib/fetch/fetch-file.js +26 -15
- package/dist/lib/fetch/read-array-buffer.js +30 -15
- package/dist/lib/filesystems/browser-filesystem.js +126 -69
- package/dist/lib/filesystems/read-array-buffer.js +14 -6
- package/dist/lib/init.js +13 -7
- package/dist/lib/loader-utils/check-errors.js +37 -16
- package/dist/lib/loader-utils/get-data.js +110 -88
- package/dist/lib/loader-utils/get-fetch-function.js +24 -13
- package/dist/lib/loader-utils/loader-context.js +50 -31
- package/dist/lib/loader-utils/loggers.js +34 -44
- package/dist/lib/loader-utils/normalize-loader.js +45 -32
- package/dist/lib/loader-utils/option-defaults.js +38 -34
- package/dist/lib/loader-utils/option-utils.d.ts.map +1 -1
- package/dist/lib/loader-utils/option-utils.js +133 -80
- package/dist/lib/progress/fetch-progress.js +54 -47
- package/dist/lib/utils/log.js +4 -4
- package/dist/lib/utils/mime-type-utils.js +34 -11
- package/dist/lib/utils/resource-utils.js +77 -45
- package/dist/lib/utils/response-utils.js +97 -74
- package/dist/lib/utils/url-utils.js +6 -4
- package/dist/null-loader.js +44 -30
- package/dist/null-worker-node.js +1 -1
- package/dist/null-worker.js +1 -1
- package/dist/workers/null-worker-node.js +3 -1
- package/dist/workers/null-worker.js +3 -1
- package/package.json +7 -7
- package/src/lib/loader-utils/option-utils.ts +3 -1
- package/dist/core-addons/README.md +0 -1
- package/dist/core-addons/write-file-browser.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/iterators/batch-iterators/timed-batch-iterator.js.map +0 -1
- package/dist/iterators/make-iterator/make-array-buffer-iterator.js.map +0 -1
- package/dist/iterators/make-iterator/make-blob-iterator.js.map +0 -1
- package/dist/iterators/make-iterator/make-iterator.js.map +0 -1
- package/dist/iterators/make-iterator/make-stream-iterator.js.map +0 -1
- package/dist/iterators/make-iterator/make-string-iterator.js.map +0 -1
- package/dist/iterators/make-stream/make-stream.js.map +0 -1
- package/dist/javascript-utils/is-type.js.map +0 -1
- package/dist/lib/api/encode-table.js.map +0 -1
- package/dist/lib/api/encode.js.map +0 -1
- package/dist/lib/api/load-in-batches.js.map +0 -1
- package/dist/lib/api/load.js.map +0 -1
- package/dist/lib/api/loader-options.js.map +0 -1
- package/dist/lib/api/parse-in-batches.js.map +0 -1
- package/dist/lib/api/parse-sync.js.map +0 -1
- package/dist/lib/api/parse.js.map +0 -1
- package/dist/lib/api/register-loaders.js.map +0 -1
- package/dist/lib/api/select-loader.js.map +0 -1
- package/dist/lib/common.js.map +0 -1
- package/dist/lib/fetch/fetch-error-message.js.map +0 -1
- package/dist/lib/fetch/fetch-file.js.map +0 -1
- package/dist/lib/fetch/read-array-buffer.js.map +0 -1
- package/dist/lib/filesystems/browser-filesystem.js.map +0 -1
- package/dist/lib/filesystems/read-array-buffer.js.map +0 -1
- package/dist/lib/init.js.map +0 -1
- package/dist/lib/loader-utils/check-errors.js.map +0 -1
- package/dist/lib/loader-utils/get-data.js.map +0 -1
- package/dist/lib/loader-utils/get-fetch-function.js.map +0 -1
- package/dist/lib/loader-utils/loader-context.js.map +0 -1
- package/dist/lib/loader-utils/loggers.js.map +0 -1
- package/dist/lib/loader-utils/normalize-loader.js.map +0 -1
- package/dist/lib/loader-utils/option-defaults.js.map +0 -1
- package/dist/lib/loader-utils/option-utils.js.map +0 -1
- package/dist/lib/progress/fetch-progress.js.map +0 -1
- package/dist/lib/utils/log.js.map +0 -1
- package/dist/lib/utils/mime-type-utils.js.map +0 -1
- package/dist/lib/utils/resource-utils.js.map +0 -1
- package/dist/lib/utils/response-utils.js.map +0 -1
- package/dist/lib/utils/url-utils.js.map +0 -1
- package/dist/null-loader.js.map +0 -1
- package/dist/workers/null-worker-node.js.map +0 -1
- package/dist/workers/null-worker.js.map +0 -1
package/dist/dist.min.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
(function webpackUniversalModuleDefinition(root, factory) {
|
|
2
|
+
if (typeof exports === 'object' && typeof module === 'object')
|
|
3
|
+
module.exports = factory();
|
|
4
|
+
else if (typeof define === 'function' && define.amd) define([], factory);
|
|
5
|
+
else if (typeof exports === 'object') exports['loaders'] = factory();
|
|
6
|
+
else root['loaders'] = factory();})(globalThis, function () {
|
|
7
|
+
"use strict";var __exports__=(()=>{var Le=Object.defineProperty;var Cr=Object.getOwnPropertyDescriptor;var Or=Object.getOwnPropertyNames;var Mr=Object.prototype.hasOwnProperty;var _t=(e,t)=>{for(var r in t)Le(e,r,{get:t[r],enumerable:!0})},Ur=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of Or(t))!Mr.call(e,n)&&n!==r&&Le(e,n,{get:()=>t[n],enumerable:!(o=Cr(t,n))||o.enumerable});return e};var jr=e=>Ur(Le({},"__esModule",{value:!0}),e);var en={};_t(en,{JSONLoader:()=>tt,NullLoader:()=>Pr,NullWorkerLoader:()=>Fr,RequestScheduler:()=>V,_BrowserFileSystem:()=>Be,_fetchProgress:()=>Nr,_unregisterLoaders:()=>fr,assert:()=>D,concatenateArrayBuffersAsync:()=>N,document:()=>Fe,encode:()=>Er,encodeInBatches:()=>Rr,encodeSync:()=>bt,encodeTable:()=>yt,encodeTableAsText:()=>kr,encodeTableInBatches:()=>wt,encodeText:()=>Br,encodeTextSync:()=>Lr,encodeURLtoURL:()=>xt,fetchFile:()=>M,forEach:()=>Je,getLoaderOptions:()=>L,getPathPrefix:()=>et,global:()=>ve,isAsyncIterable:()=>pe,isBrowser:()=>h,isIterable:()=>me,isIterator:()=>he,isPromise:()=>Ut,isPureObject:()=>le,isReadableStream:()=>O,isResponse:()=>p,isWorker:()=>Pe,isWritableStream:()=>Dt,load:()=>Tr,loadInBatches:()=>_r,makeIterator:()=>Z,makeLineIterator:()=>qe,makeNumberedLineIterator:()=>Qe,makeStream:()=>Ir,makeTextDecoderIterator:()=>He,makeTextEncoderIterator:()=>Ge,parse:()=>E,parseInBatches:()=>P,parseSync:()=>xr,readArrayBuffer:()=>Gt,registerLoaders:()=>ar,resolvePath:()=>F,selectLoader:()=>Y,selectLoaderSync:()=>K,self:()=>Re,setLoaderOptions:()=>ct,setPathPrefix:()=>Xe,window:()=>Ie});function D(e,t){if(!e)throw new Error(t||"loader assertion failed.")}var A={self:typeof self<"u"&&self,window:typeof window<"u"&&window,global:typeof global<"u"&&global,document:typeof document<"u"&&document},Re=A.self||A.window||A.global||{},Ie=A.window||A.self||A.global||{},ve=A.global||A.self||A.window||{},Fe=A.document||{};var h=Boolean(typeof process!="object"||String(process)!=="[object process]"||process.browser),Pe=typeof importScripts=="function",kt=typeof process<"u"&&process.version&&/v([0-9]*)/.exec(process.version),Dr=kt&&parseFloat(kt[1])||0;function Ne(e,t){return St(e||{},t)}function St(e,t,r=0){if(r>3)return t;let o={...e};for(let[n,s]of Object.entries(t))s&&typeof s=="object"&&!Array.isArray(s)?o[n]=St(o[n]||{},t[n],r+1):o[n]=t[n];return o}var Et="latest";function $r(){return globalThis._loadersgl_?.version||(globalThis._loadersgl_=globalThis._loadersgl_||{},globalThis._loadersgl_.version="4.2.0-alpha.4"),globalThis._loadersgl_.version}var te=$r();function m(e,t){if(!e)throw new Error(t||"loaders.gl assertion failed.")}var _={self:typeof self<"u"&&self,window:typeof window<"u"&&window,global:typeof global<"u"&&global,document:typeof document<"u"&&document},cn=_.self||_.window||_.global||{},fn=_.window||_.self||_.global||{},un=_.global||_.self||_.window||{},ln=_.document||{};var g=typeof process!="object"||String(process)!=="[object process]"||process.browser;var Lt=typeof window<"u"&&typeof window.orientation<"u",Bt=typeof process<"u"&&process.version&&/v([0-9]*)/.exec(process.version),mn=Bt&&parseFloat(Bt[1])||0;var re=class{constructor(t,r){this.isRunning=!0,this._resolve=()=>{},this._reject=()=>{},this.name=t,this.workerThread=r,this.result=new Promise((o,n)=>{this._resolve=o,this._reject=n})}postMessage(t,r){this.workerThread.postMessage({source:"loaders.gl",type:t,payload:r})}done(t){m(this.isRunning),this.isRunning=!1,this._resolve(t)}error(t){m(this.isRunning),this.isRunning=!1,this._reject(t)}};var $=class{terminate(){}};var We=new Map;function Rt(e){m(e.source&&!e.url||!e.source&&e.url);let t=We.get(e.source||e.url);return t||(e.url&&(t=zr(e.url),We.set(e.url,t)),e.source&&(t=It(e.source),We.set(e.source,t))),m(t),t}function zr(e){if(!e.startsWith("http"))return e;let t=Vr(e);return It(t)}function It(e){let t=new Blob([e],{type:"application/javascript"});return URL.createObjectURL(t)}function Vr(e){return`try {
|
|
8
|
+
importScripts('${e}');
|
|
9
|
+
} catch (error) {
|
|
10
|
+
console.error(error);
|
|
11
|
+
throw error;
|
|
12
|
+
}`}function Ce(e,t=!0,r){let o=r||new Set;if(e){if(vt(e))o.add(e);else if(vt(e.buffer))o.add(e.buffer);else if(!ArrayBuffer.isView(e)){if(t&&typeof e=="object")for(let n in e)Ce(e[n],t,o)}}return r===void 0?Array.from(o):[]}function vt(e){return e?e instanceof ArrayBuffer||typeof MessagePort<"u"&&e instanceof MessagePort||typeof ImageBitmap<"u"&&e instanceof ImageBitmap||typeof OffscreenCanvas<"u"&&e instanceof OffscreenCanvas:!1}function Oe(e){if(e===null)return{};let t=Object.assign({},e);return Object.keys(t).forEach(r=>{typeof e[r]=="object"&&!ArrayBuffer.isView(e[r])&&!(e[r]instanceof Array)?t[r]=Oe(e[r]):typeof t[r]=="function"||t[r]instanceof RegExp?t[r]={}:t[r]=e[r]}),t}var Me=()=>{},I=class{static isSupported(){return typeof Worker<"u"&&g||typeof $<"u"&&!g}constructor(t){this.terminated=!1,this._loadableURL="";let{name:r,source:o,url:n}=t;m(o||n),this.name=r,this.source=o,this.url=n,this.onMessage=Me,this.onError=s=>console.log(s),this.worker=g?this._createBrowserWorker():this._createNodeWorker()}destroy(){this.onMessage=Me,this.onError=Me,this.worker.terminate(),this.terminated=!0}get isRunning(){return Boolean(this.onMessage)}postMessage(t,r){r=r||Ce(t),this.worker.postMessage(t,r)}_getErrorFromErrorEvent(t){let r="Failed to load ";return r+=`worker ${this.name} from ${this.url}. `,t.message&&(r+=`${t.message} in `),t.lineno&&(r+=`:${t.lineno}:${t.colno}`),new Error(r)}_createBrowserWorker(){this._loadableURL=Rt({source:this.source,url:this.url});let t=new Worker(this._loadableURL,{name:this.name});return t.onmessage=r=>{r.data?this.onMessage(r.data):this.onError(new Error("No data received"))},t.onerror=r=>{this.onError(this._getErrorFromErrorEvent(r)),this.terminated=!0},t.onmessageerror=r=>console.error(r),t}_createNodeWorker(){let t;if(this.url){let o=this.url.includes(":/")||this.url.startsWith("/")?this.url:`./${this.url}`;t=new $(o,{eval:!1})}else if(this.source)t=new $(this.source,{eval:!0});else throw new Error("no worker");return t.on("message",r=>{this.onMessage(r)}),t.on("error",r=>{this.onError(r)}),t.on("exit",r=>{}),t}};var oe=class{static isSupported(){return I.isSupported()}constructor(t){this.name="unnamed",this.maxConcurrency=1,this.maxMobileConcurrency=1,this.onDebug=()=>{},this.reuseWorkers=!0,this.props={},this.jobQueue=[],this.idleQueue=[],this.count=0,this.isDestroyed=!1,this.source=t.source,this.url=t.url,this.setProps(t)}destroy(){this.idleQueue.forEach(t=>t.destroy()),this.isDestroyed=!0}setProps(t){this.props={...this.props,...t},t.name!==void 0&&(this.name=t.name),t.maxConcurrency!==void 0&&(this.maxConcurrency=t.maxConcurrency),t.maxMobileConcurrency!==void 0&&(this.maxMobileConcurrency=t.maxMobileConcurrency),t.reuseWorkers!==void 0&&(this.reuseWorkers=t.reuseWorkers),t.onDebug!==void 0&&(this.onDebug=t.onDebug)}async startJob(t,r=(n,s,i)=>n.done(i),o=(n,s)=>n.error(s)){let n=new Promise(s=>(this.jobQueue.push({name:t,onMessage:r,onError:o,onStart:s}),this));return this._startQueuedJob(),await n}async _startQueuedJob(){if(!this.jobQueue.length)return;let t=this._getAvailableWorker();if(!t)return;let r=this.jobQueue.shift();if(r){this.onDebug({message:"Starting job",name:r.name,workerThread:t,backlog:this.jobQueue.length});let o=new re(r.name,t);t.onMessage=n=>r.onMessage(o,n.type,n.payload),t.onError=n=>r.onError(o,n),r.onStart(o);try{await o.result}catch(n){console.error(`Worker exception: ${n}`)}finally{this.returnWorkerToQueue(t)}}}returnWorkerToQueue(t){!g||this.isDestroyed||!this.reuseWorkers||this.count>this._getMaxConcurrency()?(t.destroy(),this.count--):this.idleQueue.push(t),this.isDestroyed||this._startQueuedJob()}_getAvailableWorker(){if(this.idleQueue.length>0)return this.idleQueue.shift()||null;if(this.count<this._getMaxConcurrency()){this.count++;let t=`${this.name.toLowerCase()} (#${this.count} of ${this.maxConcurrency})`;return new I({name:t,source:this.source,url:this.url})}return null}_getMaxConcurrency(){return Lt?this.maxMobileConcurrency:this.maxConcurrency}};var Hr={maxConcurrency:3,maxMobileConcurrency:1,reuseWorkers:!0,onDebug:()=>{}},l=class{static isSupported(){return I.isSupported()}static getWorkerFarm(t={}){return l._workerFarm=l._workerFarm||new l({}),l._workerFarm.setProps(t),l._workerFarm}constructor(t){this.workerPools=new Map,this.props={...Hr},this.setProps(t),this.workerPools=new Map}destroy(){for(let t of this.workerPools.values())t.destroy();this.workerPools=new Map}setProps(t){this.props={...this.props,...t};for(let r of this.workerPools.values())r.setProps(this._getWorkerPoolProps())}getWorkerPool(t){let{name:r,source:o,url:n}=t,s=this.workerPools.get(r);return s||(s=new oe({name:r,source:o,url:n}),s.setProps(this._getWorkerPoolProps()),this.workerPools.set(r,s)),s}_getWorkerPoolProps(){return{maxConcurrency:this.props.maxConcurrency,maxMobileConcurrency:this.props.maxMobileConcurrency,reuseWorkers:this.props.reuseWorkers,onDebug:this.props.onDebug}}};function Ft(e){let t=e.version!==te?` (worker-utils@${te})`:"";return`${e.name}@${e.version}${t}`}function ne(e,t={}){let r=t[e.id]||{},o=g?`${e.id}-worker.js`:`${e.id}-worker-node.js`,n=r.workerUrl;if(!n&&e.id==="compression"&&(n=t.workerUrl),t._workerType==="test"&&(g?n=`modules/${e.module}/dist/${o}`:n=`modules/${e.module}/src/workers/${e.id}-worker-node.ts`),!n){let s=e.version;s==="latest"&&(s=Et);let i=s?`@${s}`:"";n=`https://unpkg.com/@loaders.gl/${e.module}${i}/dist/${o}`}return m(n),n}async function Ue(e,t,r={},o={}){let n=Ft(e),s=l.getWorkerFarm(r),{source:i}=r,a={name:n,source:i};i||(a.url=ne(e,r));let c=s.getWorkerPool(a),u=r.jobName||e.name,B=await c.startJob(u,Gr.bind(null,o)),R=Oe(r);return B.postMessage("process",{input:t,options:R}),(await B.result).result}async function Gr(e,t,r,o){switch(r){case"done":t.done(o);break;case"error":t.error(new Error(o.error));break;case"process":let{id:n,input:s,options:i}=o;try{if(!e.process){t.postMessage("error",{id:n,error:"Worker not set up to process on main thread"});return}let a=await e.process(s,i);t.postMessage("done",{id:n,result:a})}catch(a){let c=a instanceof Error?a.message:"unknown error";t.postMessage("error",{id:n,error:c})}break;default:console.warn(`process-on-worker: unknown message ${r}`)}}function je(e,t=te){m(e,"no worker provided");let r=e.version;return!(!t||!r)}function De(e,t){return!l.isSupported()||!g&&!t?._nodeWorkers?!1:e.worker&&t?.worker}async function $e(e,t,r,o,n){let s=e.id,i=ne(e,r),c=l.getWorkerFarm(r).getWorkerPool({name:s,url:i});r=JSON.parse(JSON.stringify(r)),o=JSON.parse(JSON.stringify(o||{}));let u=await c.startJob("process-on-worker",qr.bind(null,n));return u.postMessage("process",{input:t,options:r,context:o}),await(await u.result).result}async function qr(e,t,r,o){switch(r){case"done":t.done(o);break;case"error":t.error(new Error(o.error));break;case"process":let{id:n,input:s,options:i}=o;try{let a=await e(s,i);t.postMessage("done",{id:n,result:a})}catch(a){let c=a instanceof Error?a.message:"unknown error";t.postMessage("error",{id:n,error:c})}break;default:console.warn(`parse-with-worker unknown message ${r}`)}}function ze(e,t){return!l.isSupported()||!h&&!t?._nodeWorkers?!1:e.worker&&t?.worker}function Ve(e,t,r){if(r=r||e.byteLength,e.byteLength<r||t.byteLength<r)return!1;let o=new Uint8Array(e),n=new Uint8Array(t);for(let s=0;s<o.length;++s)if(o[s]!==n[s])return!1;return!0}function se(...e){return Pt(e)}function Pt(e){let t=e.map(s=>s instanceof ArrayBuffer?new Uint8Array(s):s),r=t.reduce((s,i)=>s+i.byteLength,0),o=new Uint8Array(r),n=0;for(let s of t)o.set(s,n),n+=s.byteLength;return o.buffer}async function*He(e,t={}){let r=new TextDecoder(void 0,t);for await(let o of e)yield typeof o=="string"?o:r.decode(o,{stream:!0})}async function*Ge(e){let t=new TextEncoder;for await(let r of e)yield typeof r=="string"?t.encode(r):r}async function*qe(e){let t="";for await(let r of e){t+=r;let o;for(;(o=t.indexOf(`
|
|
13
|
+
`))>=0;){let n=t.slice(0,o+1);t=t.slice(o+1),yield n}}t.length>0&&(yield t)}async function*Qe(e){let t=1;for await(let r of e)yield{counter:t,line:r},t++}async function Je(e,t){for(;;){let{done:r,value:o}=await e.next();if(r){e.return();return}if(t(o))return}}async function N(e){let t=[];for await(let r of e)t.push(r);return se(...t)}function v(e){return v=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},v(e)}function Ke(e,t){if(v(e)!=="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var o=r.call(e,t||"default");if(v(o)!=="object")return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Ye(e){var t=Ke(e,"string");return v(t)==="symbol"?t:String(t)}function f(e,t,r){return t=Ye(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function ie(){let e;if(typeof window<"u"&&window.performance)e=window.performance.now();else if(typeof process<"u"&&process.hrtime){let t=process.hrtime();e=t[0]*1e3+t[1]/1e6}else e=Date.now();return e}var W=class{constructor(t,r){f(this,"name",void 0),f(this,"type",void 0),f(this,"sampleSize",1),f(this,"time",0),f(this,"count",0),f(this,"samples",0),f(this,"lastTiming",0),f(this,"lastSampleTime",0),f(this,"lastSampleCount",0),f(this,"_count",0),f(this,"_time",0),f(this,"_samples",0),f(this,"_startTime",0),f(this,"_timerPending",!1),this.name=t,this.type=r,this.reset()}reset(){return this.time=0,this.count=0,this.samples=0,this.lastTiming=0,this.lastSampleTime=0,this.lastSampleCount=0,this._count=0,this._time=0,this._samples=0,this._startTime=0,this._timerPending=!1,this}setSampleSize(t){return this.sampleSize=t,this}incrementCount(){return this.addCount(1),this}decrementCount(){return this.subtractCount(1),this}addCount(t){return this._count+=t,this._samples++,this._checkSampling(),this}subtractCount(t){return this._count-=t,this._samples++,this._checkSampling(),this}addTime(t){return this._time+=t,this.lastTiming=t,this._samples++,this._checkSampling(),this}timeStart(){return this._startTime=ie(),this._timerPending=!0,this}timeEnd(){return this._timerPending?(this.addTime(ie()-this._startTime),this._timerPending=!1,this._checkSampling(),this):this}getSampleAverageCount(){return this.sampleSize>0?this.lastSampleCount/this.sampleSize:0}getSampleAverageTime(){return this.sampleSize>0?this.lastSampleTime/this.sampleSize:0}getSampleHz(){return this.lastSampleTime>0?this.sampleSize/(this.lastSampleTime/1e3):0}getAverageCount(){return this.samples>0?this.count/this.samples:0}getAverageTime(){return this.samples>0?this.time/this.samples:0}getHz(){return this.time>0?this.samples/(this.time/1e3):0}_checkSampling(){this._samples===this.sampleSize&&(this.lastSampleTime=this._time,this.lastSampleCount=this._count,this.count+=this._count,this.time+=this._time,this.samples+=this._samples,this._time=0,this._count=0,this._samples=0)}};var z=class{constructor(t){f(this,"id",void 0),f(this,"stats",{}),this.id=t.id,this.stats={},this._initializeStats(t.stats),Object.seal(this)}get(t){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"count";return this._getOrCreate({name:t,type:r})}get size(){return Object.keys(this.stats).length}reset(){for(let t of Object.values(this.stats))t.reset();return this}forEach(t){for(let r of Object.values(this.stats))t(r)}getTable(){let t={};return this.forEach(r=>{t[r.name]={time:r.time||0,count:r.count||0,average:r.getAverageTime()||0,hz:r.getHz()||0}}),t}_initializeStats(){(arguments.length>0&&arguments[0]!==void 0?arguments[0]:[]).forEach(r=>this._getOrCreate(r))}_getOrCreate(t){let{name:r,type:o}=t,n=this.stats[r];return n||(t instanceof W?n=t:n=new W(r,o),this.stats[r]=n),n}};var Qr="Queued Requests",Jr="Active Requests",Kr="Cancelled Requests",Yr="Queued Requests Ever",Zr="Active Requests Ever",Xr={id:"request-scheduler",throttleRequests:!0,maxRequests:6,debounceTime:0},V=class{constructor(t={}){this.activeRequestCount=0,this.requestQueue=[],this.requestMap=new Map,this.updateTimer=null,this.props={...Xr,...t},this.stats=new z({id:this.props.id}),this.stats.get(Qr),this.stats.get(Jr),this.stats.get(Kr),this.stats.get(Yr),this.stats.get(Zr)}scheduleRequest(t,r=()=>0){if(!this.props.throttleRequests)return Promise.resolve({done:()=>{}});if(this.requestMap.has(t))return this.requestMap.get(t);let o={handle:t,priority:0,getPriority:r},n=new Promise(s=>(o.resolve=s,o));return this.requestQueue.push(o),this.requestMap.set(t,n),this._issueNewRequests(),n}_issueRequest(t){let{handle:r,resolve:o}=t,n=!1,s=()=>{n||(n=!0,this.requestMap.delete(r),this.activeRequestCount--,this._issueNewRequests())};return this.activeRequestCount++,o?o({done:s}):Promise.resolve({done:s})}_issueNewRequests(){this.updateTimer!==null&&clearTimeout(this.updateTimer),this.updateTimer=setTimeout(()=>this._issueNewRequestsAsync(),this.props.debounceTime)}_issueNewRequestsAsync(){this.updateTimer!==null&&clearTimeout(this.updateTimer),this.updateTimer=null;let t=Math.max(this.props.maxRequests-this.activeRequestCount,0);if(t!==0){this._updateAllRequests();for(let r=0;r<t;++r){let o=this.requestQueue.shift();o&&this._issueRequest(o)}}}_updateAllRequests(){let t=this.requestQueue;for(let r=0;r<t.length;++r){let o=t[r];this._updateRequest(o)||(t.splice(r,1),this.requestMap.delete(o.handle),r--)}t.sort((r,o)=>r.priority-o.priority)}_updateRequest(t){return t.priority=t.getPriority(t.handle),t.priority<0?(t.resolve(null),!1):!0}};var Ze="",Nt={};function Xe(e){Ze=e}function et(){return Ze}function F(e){for(let t in Nt)if(e.startsWith(t)){let r=Nt[t];e=e.replace(t,r)}return!e.startsWith("http://")&&!e.startsWith("https://")&&(e=`${Ze}${e}`),e}var eo="4.2.0-alpha.4",tt={name:"JSON",id:"json",module:"json",version:eo,extensions:["json","geojson"],mimeTypes:["application/json"],category:"json",text:!0,parseTextSync:Wt,parse:async e=>Wt(new TextDecoder().decode(e)),options:{}};function Wt(e){return JSON.parse(e)}function Ct(e){return e&&typeof e=="object"&&e.isBuffer}function we(e){if(Ct(e))return e;if(e instanceof ArrayBuffer)return e;if(ArrayBuffer.isView(e))return e.byteOffset===0&&e.byteLength===e.buffer.byteLength?e.buffer:e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength);if(typeof e=="string"){let t=e;return new TextEncoder().encode(t).buffer}if(e&&typeof e=="object"&&e._toArrayBuffer)return e._toArrayBuffer();throw new Error("toArrayBuffer")}var C={};_t(C,{dirname:()=>ro,filename:()=>to,join:()=>oo,resolve:()=>no});function Ot(){if(typeof process<"u"&&typeof process.cwd<"u")return process.cwd();let e=window.location?.pathname;return e?.slice(0,e.lastIndexOf("/")+1)||""}function to(e){let t=e?e.lastIndexOf("/"):-1;return t>=0?e.substr(t+1):""}function ro(e){let t=e?e.lastIndexOf("/"):-1;return t>=0?e.substr(0,t):""}function oo(...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 no(...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 i;s>=0?i=t[s]:(n===void 0&&(n=Ot()),i=n),i.length!==0&&(r=`${i}/${r}`,o=i.charCodeAt(0)===ae)}return r=so(r,!o),o?`/${r}`:r.length>0?r:"."}var ae=47,rt=46;function so(e,t){let r="",o=-1,n=0,s,i=!1;for(let a=0;a<=e.length;++a){if(a<e.length)s=e.charCodeAt(a);else{if(s===ae)break;s=ae}if(s===ae){if(!(o===a-1||n===1))if(o!==a-1&&n===2){if(r.length<2||!i||r.charCodeAt(r.length-1)!==rt||r.charCodeAt(r.length-2)!==rt){if(r.length>2){let c=r.length-1,u=c;for(;u>=0&&r.charCodeAt(u)!==ae;--u);if(u!==c){r=u===-1?"":r.slice(0,u),o=a,n=0,i=!1;continue}}else if(r.length===2||r.length===1){r="",o=a,n=0,i=!1;continue}}t&&(r.length>0?r+="/..":r="..",i=!0)}else{let c=e.slice(o+1,a);r.length>0?r+=`/${c}`:r=c,i=!1}o=a,n=0}else s===rt&&n!==-1?++n:n=-1}return r}var ce=class{constructor(t){this.handle=t instanceof ArrayBuffer?new Blob([t]):t,this.size=t instanceof ArrayBuffer?t.byteLength:t.size,this.bigsize=BigInt(this.size),this.url=t instanceof File?t.name:""}async close(){}async stat(){return{size:this.handle.size,bigsize:BigInt(this.handle.size),isDirectory:!1}}async read(t,r){return await this.handle.slice(t,t+r).arrayBuffer()}};var fe=new Error("Not implemented"),ue=class{constructor(t,r,o){if(this.size=0,this.bigsize=0n,this.url="",globalThis.loaders?.NodeFile)return new globalThis.loaders.NodeFile(t,r,o);throw h?new Error("Can't instantiate NodeFile in browser."):new Error("Can't instantiate NodeFile. Make sure to import @loaders.gl/polyfills first.")}async read(t,r){throw fe}async write(t,r,o){throw fe}async stat(){throw fe}async truncate(t){throw fe}async append(t){throw fe}async close(){}};var Mt=e=>typeof e=="boolean",w=e=>typeof e=="function",k=e=>e!==null&&typeof e=="object",le=e=>k(e)&&e.constructor==={}.constructor,Ut=e=>k(e)&&w(e.then),me=e=>Boolean(e)&&typeof e[Symbol.iterator]=="function",pe=e=>e&&typeof e[Symbol.asyncIterator]=="function",he=e=>e&&w(e.next),p=e=>typeof Response<"u"&&e instanceof Response||e&&e.arrayBuffer&&e.text&&e.json;var d=e=>typeof Blob<"u"&&e instanceof Blob,jt=e=>e&&typeof e=="object"&&e.isBuffer,io=e=>k(e)&&w(e.abort)&&w(e.getWriter),ao=e=>typeof ReadableStream<"u"&&e instanceof ReadableStream||k(e)&&w(e.tee)&&w(e.cancel)&&w(e.getReader),co=e=>k(e)&&w(e.end)&&w(e.write)&&Mt(e.writable),fo=e=>k(e)&&w(e.read)&&w(e.pipe)&&Mt(e.readable),O=e=>ao(e)||fo(e),Dt=e=>io(e)||co(e);var uo=/^data:([-\w.]+\/[-\w.+]+)(;|,)/,lo=/^([-\w.]+\/[-\w.+]+)/;function $t(e){let t=lo.exec(e);return t?t[1]:e}function ot(e){let t=uo.exec(e);return t?t[1]:""}var zt=/\?.*/;function Vt(e){let t=e.match(zt);return t&&t[0]}function H(e){return e.replace(zt,"")}function b(e){return p(e)?e.url:d(e)?e.name||"":typeof e=="string"?e:""}function de(e){if(p(e)){let t=e,r=t.headers.get("content-type")||"",o=H(t.url);return $t(r)||ot(o)}return d(e)?e.type||"":typeof e=="string"?ot(e):""}function Ht(e){return p(e)?e.headers["content-length"]||-1:d(e)?e.size:typeof e=="string"?e.length:e instanceof ArrayBuffer||ArrayBuffer.isView(e)?e.byteLength:-1}async function be(e){if(p(e))return e;let t={},r=Ht(e);r>=0&&(t["content-length"]=String(r));let o=b(e),n=de(e);n&&(t["content-type"]=n);let s=await po(e);s&&(t["x-first-bytes"]=s),typeof e=="string"&&(e=new TextEncoder().encode(e));let i=new Response(e,{headers:t});return Object.defineProperty(i,"url",{value:o}),i}async function nt(e){if(!e.ok){let t=await mo(e);throw new Error(t)}}async function mo(e){let t=`Failed to fetch resource ${e.url} (${e.status}): `;try{let r=e.headers.get("Content-Type"),o=e.statusText;r?.includes("application/json")&&(o+=` ${await e.text()}`),t+=o,t=t.length>60?`${t.slice(0,60)}...`:t}catch{}return t}async function po(e){if(typeof e=="string")return`data:,${e.slice(0,5)}`;if(e instanceof Blob){let r=e.slice(0,5);return await new Promise(o=>{let n=new FileReader;n.onload=s=>o(s?.target?.result),n.readAsDataURL(r)})}if(e instanceof ArrayBuffer){let r=e.slice(0,5);return`data:base64,${ho(r)}`}return null}function ho(e){let t="",r=new Uint8Array(e);for(let o=0;o<r.byteLength;o++)t+=String.fromCharCode(r[o]);return btoa(t)}function go(e){return!yo(e)&&!wo(e)}function yo(e){return e.startsWith("http:")||e.startsWith("https:")}function wo(e){return e.startsWith("data:")}async function M(e,t){if(typeof e=="string"){let r=F(e);return go(r)&&globalThis.loaders?.fetchNode?globalThis.loaders?.fetchNode(r,t):await fetch(r,t)}return await be(e)}async function Gt(e,t,r){e instanceof Blob||(e=new Blob([e]));let o=e.slice(t,t+r);return await bo(o)}async function bo(e){return await new Promise((t,r)=>{let o=new FileReader;o.onload=n=>t(n?.target?.result),o.onerror=n=>r(n),o.readAsArrayBuffer(e)})}function st(e){if(typeof window<"u"&&typeof window.process=="object"&&window.process.type==="renderer"||typeof process<"u"&&typeof process.versions=="object"&&Boolean(process.versions.electron))return!0;let t=typeof navigator=="object"&&typeof navigator.userAgent=="string"&&navigator.userAgent,r=e||t;return!!(r&&r.indexOf("Electron")>=0)}function x(){return!(typeof process=="object"&&String(process)==="[object process]"&&!process.browser)||st()}var xo=globalThis.self||globalThis.window||globalThis.global,G=globalThis.window||globalThis.self||globalThis.global,To=globalThis.document||{},U=globalThis.process||{},Ao=globalThis.console,bi=globalThis.navigator||{};var xe=typeof __VERSION__<"u"?__VERSION__:"untranspiled source",Ai=x();function _o(e){try{let t=window[e],r="__storage_test__";return t.setItem(r,r),t.removeItem(r),t}catch{return null}}var Te=class{constructor(t,r){let o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"sessionStorage";f(this,"storage",void 0),f(this,"id",void 0),f(this,"config",void 0),this.storage=_o(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 qt(e){let t;return e<10?t="".concat(e.toFixed(2),"ms"):e<100?t="".concat(e.toFixed(1),"ms"):e<1e3?t="".concat(e.toFixed(0),"ms"):t="".concat((e/1e3).toFixed(2),"s"),t}function Qt(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:8,r=Math.max(t-e.length,0);return"".concat(" ".repeat(r)).concat(e)}function Ae(e,t,r){let o=arguments.length>3&&arguments[3]!==void 0?arguments[3]:600,n=e.src.replace(/\(/g,"%28").replace(/\)/g,"%29");e.width>o&&(r=Math.min(r,o/e.width));let s=e.width*r,i=e.height*r,a=["font-size:1px;","padding:".concat(Math.floor(i/2),"px ").concat(Math.floor(s/2),"px;"),"line-height:".concat(i,"px;"),"background:url(".concat(n,");"),"background-size:".concat(s,"px ").concat(i,"px;"),"color:transparent;"].join("");return["".concat(t," %c+"),a]}var _e;(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"})(_e||(_e={}));var ko=10;function Jt(e){return typeof e!="string"?e:(e=e.toUpperCase(),_e[e]||_e.WHITE)}function Kt(e,t,r){if(!x&&typeof e=="string"){if(t){let o=Jt(t);e="\x1B[".concat(o,"m").concat(e,"\x1B[39m")}if(r){let o=Jt(r);e="\x1B[".concat(o+ko,"m").concat(e,"\x1B[49m")}}return e}function Yt(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:["constructor"],r=Object.getPrototypeOf(e),o=Object.getOwnPropertyNames(r),n=e;for(let s of o){let i=n[s];typeof i=="function"&&(t.find(a=>s===a)||(n[s]=i.bind(e)))}}function q(e,t){if(!e)throw new Error(t||"Assertion failed")}function j(){let e;if(x()&&G.performance){var t,r;e=G===null||G===void 0||(t=G.performance)===null||t===void 0||(r=t.now)===null||r===void 0?void 0:r.call(t)}else if("hrtime"in U){var o;let n=U===null||U===void 0||(o=U.hrtime)===null||o===void 0?void 0:o.call(U);e=n[0]*1e3+n[1]/1e6}else e=Date.now();return e}var Q={debug:x()&&console.debug||console.log,log:console.log,info:console.info,warn:console.warn,error:console.error},So={enabled:!0,level:0};function y(){}var Zt={},Xt={once:!0},S=class{constructor(){let{id:t}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{id:""};f(this,"id",void 0),f(this,"VERSION",xe),f(this,"_startTs",j()),f(this,"_deltaTs",j()),f(this,"_storage",void 0),f(this,"userData",{}),f(this,"LOG_THROTTLE_TIMEOUT",0),this.id=t,this.userData={},this._storage=new Te("__probe-".concat(this.id,"__"),So),this.timeStamp("".concat(this.id," started")),Yt(this),Object.seal(this)}set level(t){this.setLevel(t)}get level(){return this.getLevel()}isEnabled(){return this._storage.config.enabled}getLevel(){return this._storage.config.level}getTotal(){return Number((j()-this._startTs).toPrecision(10))}getDelta(){return Number((j()-this._deltaTs).toPrecision(10))}set priority(t){this.level=t}get priority(){return this.level}getPriority(){return this.level}enable(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return this._storage.setConfiguration({enabled:t}),this}setLevel(t){return this._storage.setConfiguration({level:t}),this}get(t){return this._storage.config[t]}set(t,r){this._storage.setConfiguration({[t]:r})}settings(){console.table?console.table(this._storage.config):console.log(this._storage.config)}assert(t,r){q(t,r)}warn(t){return this._getLogFunction(0,t,Q.warn,arguments,Xt)}error(t){return this._getLogFunction(0,t,Q.error,arguments)}deprecated(t,r){return this.warn("`".concat(t,"` is deprecated and will be removed in a later version. Use `").concat(r,"` instead"))}removed(t,r){return this.error("`".concat(t,"` has been removed. Use `").concat(r,"` instead"))}probe(t,r){return this._getLogFunction(t,r,Q.log,arguments,{time:!0,once:!0})}log(t,r){return this._getLogFunction(t,r,Q.debug,arguments)}info(t,r){return this._getLogFunction(t,r,console.info,arguments)}once(t,r){return this._getLogFunction(t,r,Q.debug||Q.info,arguments,Xt)}table(t,r,o){return r?this._getLogFunction(t,r,console.table||y,o&&[o],{tag:Ro(r)}):y}image(t){let{logLevel:r,priority:o,image:n,message:s="",scale:i=1}=t;return this._shouldLog(r||o)?x()?Lo({image:n,message:s,scale:i}):Bo({image:n,message:s,scale:i}):y}time(t,r){return this._getLogFunction(t,r,console.time?console.time:console.info)}timeEnd(t,r){return this._getLogFunction(t,r,console.timeEnd?console.timeEnd:console.info)}timeStamp(t,r){return this._getLogFunction(t,r,console.timeStamp||y)}group(t,r){let o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{collapsed:!1},n=er({logLevel:t,message:r,opts:o}),{collapsed:s}=o;return n.method=(s?console.groupCollapsed:console.group)||console.info,this._getLogFunction(n)}groupCollapsed(t,r){let o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.group(t,r,Object.assign({},o,{collapsed:!0}))}groupEnd(t){return this._getLogFunction(t,"",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()&&this.getLevel()>=tr(t)}_getLogFunction(t,r,o,n,s){if(this._shouldLog(t)){s=er({logLevel:t,message:r,args:n,opts:s}),o=o||s.method,q(o),s.total=this.getTotal(),s.delta=this.getDelta(),this._deltaTs=j();let i=s.tag||s.message;if(s.once&&i)if(!Zt[i])Zt[i]=j();else return y;return r=Eo(this.id,s.message,s),o.bind(console,r,...s.args)}return y}};f(S,"VERSION",xe);function tr(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 q(Number.isFinite(t)&&t>=0),t}function er(e){let{logLevel:t,message:r}=e;e.logLevel=tr(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 q(n==="string"||n==="object"),Object.assign(e,{args:o},e.opts)}function Eo(e,t,r){if(typeof t=="string"){let o=r.time?Qt(qt(r.total)):"";t=r.time?"".concat(e,": ").concat(o," ").concat(t):"".concat(e,": ").concat(t),t=Kt(t,r.color,r.background)}return t}function Bo(e){let{image:t,message:r="",scale:o=1}=e;return console.warn("removed"),y}function Lo(e){let{image:t,message:r="",scale:o=1}=e;if(typeof t=="string"){let s=new Image;return s.onload=()=>{let i=Ae(s,r,o);console.log(...i)},s.src=t,y}let n=t.nodeName||"";if(n.toLowerCase()==="img")return console.log(...Ae(t,r,o)),y;if(n.toLowerCase()==="canvas"){let s=new Image;return s.onload=()=>console.log(...Ae(s,r,o)),s.src=t.toDataURL(),y}return y}function Ro(e){for(let t in e)for(let r in e[t])return r||"untitled";return"empty"}var Ji=new S({id:"@probe.gl/log"});var it=new S({id:"loaders.gl"}),ke=class{log(){return()=>{}}info(){return()=>{}}warn(){return()=>{}}error(){return()=>{}}},Se=class{constructor(){this.console=console}log(...t){return this.console.log.bind(this.console,...t)}info(...t){return this.console.info.bind(this.console,...t)}warn(...t){return this.console.warn.bind(this.console,...t)}error(...t){return this.console.error.bind(this.console,...t)}};var at={fetch:null,mimeType:void 0,nothrow:!1,log:new Se,useLocalLibraries:!1,CDN:"https://unpkg.com/@loaders.gl",worker:!0,maxConcurrency:3,maxMobileConcurrency:1,reuseWorkers:h,_nodeWorkers:!1,_workerType:"",limit:0,_limitMB:0,batchSize:"auto",batchDebounceMs:0,metadata:!1,transforms:[]},rr={throws:"nothrow",dataType:"(no longer used)",uri:"baseUri",method:"fetch.method",headers:"fetch.headers",body:"fetch.body",mode:"fetch.mode",credentials:"fetch.credentials",cache:"fetch.cache",redirect:"fetch.redirect",referrer:"fetch.referrer",referrerPolicy:"fetch.referrerPolicy",integrity:"fetch.integrity",keepalive:"fetch.keepalive",signal:"fetch.signal"};function ge(){globalThis.loaders=globalThis.loaders||{};let{loaders:e}=globalThis;return e._state||(e._state={}),e._state}function L(){let e=ge();return e.globalOptions=e.globalOptions||{...at},e.globalOptions}function ct(e){let t=ge(),r=L();t.globalOptions=sr(r,e)}function J(e,t,r,o){return r=r||[],r=Array.isArray(r)?r:[r],Io(e,r),sr(t,e,o)}function Io(e,t){or(e,null,at,rr,t);for(let r of t){let o=e&&e[r.id]||{},n=r.options&&r.options[r.id]||{},s=r.deprecatedOptions&&r.deprecatedOptions[r.id]||{};or(o,r.id,n,s,t)}}function or(e,t,r,o,n){let s=t||"Top level",i=t?`${t}.`:"";for(let a in e){let c=!t&&k(e[a]),u=a==="baseUri"&&!t,B=a==="workerUrl"&&t;if(!(a in r)&&!u&&!B){if(a in o)it.warn(`${s} loader option '${i}${a}' no longer supported, use '${o[a]}'`)();else if(!c){let R=vo(a,n);it.warn(`${s} loader option '${i}${a}' not recognized. ${R}`)()}}}}function vo(e,t){let r=e.toLowerCase(),o="";for(let n of t)for(let s in n.options){if(e===s)return`Did you mean '${n.id}.${s}'?`;let i=s.toLowerCase();(r.startsWith(i)||i.startsWith(r))&&(o=o||`Did you mean '${n.id}.${s}'?`)}return o}function sr(e,t,r){let n={...e.options||{}};return Fo(n,r),n.log===null&&(n.log=new ke),nr(n,L()),nr(n,t),n}function nr(e,t){for(let r in t)if(r in t){let o=t[r];le(o)&&le(e[r])?e[r]={...e[r],...t[r]}:e[r]=t[r]}}function Fo(e,t){t&&!("baseUri"in e)&&(e.baseUri=t)}function T(e){return e?(Array.isArray(e)&&(e=e[0]),Array.isArray(e?.extensions)):!1}function ye(e){D(e,"null loader"),D(T(e),"invalid loader");let t;return Array.isArray(e)&&(t=e[1],e=e[0],e={...e,options:{...e.options,...t}}),(e?.parseTextSync||e?.parseText)&&(e.text=!0),e.text||(e.binary=!0),e}var ir=()=>{let e=ge();return e.loaderRegistry=e.loaderRegistry||[],e.loaderRegistry};function ar(e){let t=ir();e=Array.isArray(e)?e:[e];for(let r of e){let o=ye(r);t.find(n=>o===n)||t.unshift(o)}}function cr(){return ir()}function fr(){let e=ge();e.loaderRegistry=[]}var ur=new S({id:"loaders.gl"});var Po=/\.([^.]+)$/;async function Y(e,t=[],r,o){if(!mr(e))return null;let n=K(e,t,{...r,nothrow:!0},o);if(n)return n;if(d(e)&&(e=await e.slice(0,10).arrayBuffer(),n=K(e,t,r,o)),!n&&!r?.nothrow)throw new Error(pr(e));return n}function K(e,t=[],r,o){if(!mr(e))return null;if(t&&!Array.isArray(t))return ye(t);let n=[];t&&(n=n.concat(t)),r?.ignoreRegisteredLoaders||n.push(...cr()),Wo(n);let s=No(e,n,r,o);if(!s&&!r?.nothrow)throw new Error(pr(e));return s}function No(e,t,r,o){let n=b(e),s=de(e),i=H(n)||o?.url,a=null,c="";return r?.mimeType&&(a=ft(t,r?.mimeType),c=`match forced by supplied MIME type ${r?.mimeType}`),a=a||Co(t,i),c=c||(a?`matched url ${i}`:""),a=a||ft(t,s),c=c||(a?`matched MIME type ${s}`:""),a=a||Mo(t,e),c=c||(a?`matched initial data ${hr(e)}`:""),r?.fallbackMimeType&&(a=a||ft(t,r?.fallbackMimeType),c=c||(a?`matched fallback MIME type ${s}`:"")),c&&ur.log(1,`selectLoader selected ${a?.name}: ${c}.`),a}function mr(e){return!(e instanceof Response&&e.status===204)}function pr(e){let t=b(e),r=de(e),o="No valid loader found (";o+=t?`${C.filename(t)}, `:"no url provided, ",o+=`MIME type: ${r?`"${r}"`:"not provided"}, `;let n=e?hr(e):"";return o+=n?` first bytes: "${n}"`:"first bytes: not available",o+=")",o}function Wo(e){for(let t of e)ye(t)}function Co(e,t){let r=t&&Po.exec(t),o=r&&r[1];return o?Oo(e,o):null}function Oo(e,t){t=t.toLowerCase();for(let r of e)for(let o of r.extensions)if(o.toLowerCase()===t)return r;return null}function ft(e,t){for(let r of e)if(r.mimeTypes&&r.mimeTypes.includes(t)||t===`application/x.${r.id}`)return r;return null}function Mo(e,t){if(!t)return null;for(let r of e)if(typeof t=="string"){if(Uo(t,r))return r}else if(ArrayBuffer.isView(t)){if(lr(t.buffer,t.byteOffset,r))return r}else if(t instanceof ArrayBuffer&&lr(t,0,r))return r;return null}function Uo(e,t){return t.testText?t.testText(e):(Array.isArray(t.tests)?t.tests:[t.tests]).some(o=>e.startsWith(o))}function lr(e,t,r){return(Array.isArray(r.tests)?r.tests:[r.tests]).some(n=>jo(e,t,r,n))}function jo(e,t,r,o){if(o instanceof ArrayBuffer)return Ve(o,e,o.byteLength);switch(typeof o){case"function":return o(e);case"string":let n=ut(e,t,o.length);return o===n;default:return!1}}function hr(e,t=5){return typeof e=="string"?e.slice(0,t):ArrayBuffer.isView(e)?ut(e.buffer,e.byteOffset,t):e instanceof ArrayBuffer?ut(e,0,t):""}function ut(e,t,r){if(e.byteLength<t+r)return"";let o=new DataView(e),n="";for(let s=0;s<r;s++)n+=String.fromCharCode(o.getUint8(t+s));return n}function*dr(e,t){let r=t?.chunkSize||262144,o=0,n=new TextEncoder;for(;o<e.length;){let s=Math.min(e.length-o,r),i=e.slice(o,o+s);o+=s,yield n.encode(i)}}function*gr(e,t={}){let{chunkSize:r=262144}=t,o=0;for(;o<e.byteLength;){let n=Math.min(e.byteLength-o,r),s=new ArrayBuffer(n),i=new Uint8Array(e,o,n);new Uint8Array(s).set(i),o+=n,yield s}}async function*yr(e,t){let r=t?.chunkSize||1048576,o=0;for(;o<e.size;){let n=o+r,s=await e.slice(o,n).arrayBuffer();o=n,yield s}}function lt(e,t){return h?Do(e,t):$o(e,t)}async function*Do(e,t){let r=e.getReader(),o;try{for(;;){let n=o||r.read();t?._streamReadAhead&&(o=r.read());let{done:s,value:i}=await n;if(s)return;yield we(i)}}catch{r.releaseLock()}}async function*$o(e,t){for await(let r of e)yield we(r)}function Z(e,t){if(typeof e=="string")return dr(e,t);if(e instanceof ArrayBuffer)return gr(e,t);if(d(e))return yr(e,t);if(O(e))return lt(e,t);if(p(e))return lt(e.body,t);throw new Error("makeIterator")}var mt="Cannot convert supplied data type";function pt(e,t,r){if(t.text&&typeof e=="string")return e;if(jt(e)&&(e=e.buffer),e instanceof ArrayBuffer){let o=e;return t.text&&!t.binary?new TextDecoder("utf8").decode(o):o}if(ArrayBuffer.isView(e)){if(t.text&&!t.binary)return new TextDecoder("utf8").decode(e);let o=e.buffer,n=e.byteLength||e.length;return(e.byteOffset!==0||n!==o.byteLength)&&(o=o.slice(e.byteOffset,e.byteOffset+n)),o}throw new Error(mt)}async function wr(e,t,r){let o=e instanceof ArrayBuffer||ArrayBuffer.isView(e);if(typeof e=="string"||o)return pt(e,t,r);if(d(e)&&(e=await be(e)),p(e)){let n=e;return await nt(n),t.binary?await n.arrayBuffer():await n.text()}if(O(e)&&(e=Z(e,r)),me(e)||pe(e))return N(e);throw new Error(mt)}async function br(e,t){if(he(e))return e;if(p(e)){let r=e;await nt(r);let o=await r.body;return Z(o,t)}return d(e)||O(e)?Z(e,t):pe(e)?e:zo(e)}function zo(e){if(ArrayBuffer.isView(e))return function*(){yield e.buffer}();if(e instanceof ArrayBuffer)return function*(){yield e}();if(he(e))return e;if(me(e))return e[Symbol.iterator]();throw new Error(mt)}function X(e,t){let r=L(),o=e||r;return typeof o.fetch=="function"?o.fetch:k(o.fetch)?n=>M(n,o.fetch):t?.fetch?t?.fetch:M}function ee(e,t,r){if(r)return r;let o={fetch:X(t,e),...e};if(o.url){let n=H(o.url);o.baseUrl=n,o.queryString=Vt(o.url),o.filename=C.filename(n),o.baseUrl=C.dirname(n)}return Array.isArray(o.loaders)||(o.loaders=null),o}function Ee(e,t){if(e&&!Array.isArray(e))return e;let r;if(e&&(r=Array.isArray(e)?e:[e]),t&&t.loaders){let o=Array.isArray(t.loaders)?t.loaders:[t.loaders];r=r?[...r,...o]:o}return r&&r.length?r:void 0}async function E(e,t,r,o){t&&!Array.isArray(t)&&!T(t)&&(o=void 0,r=t,t=void 0),e=await e,r=r||{};let n=b(e),i=Ee(t,o),a=await Y(e,i,r);return a?(r=J(r,a,i,n),o=ee({url:n,_parse:E,loaders:i},r,o||null),await Vo(a,e,r,o)):null}async function Vo(e,t,r,o){if(je(e),r=Ne(e.options,r),p(t)){let s=t,{ok:i,redirected:a,status:c,statusText:u,type:B,url:R}=s,At=Object.fromEntries(s.headers.entries());o.response={headers:At,ok:i,redirected:a,status:c,statusText:u,type:B,url:R}}t=await wr(t,e,r);let n=e;if(n.parseTextSync&&typeof t=="string")return n.parseTextSync(t,r,o);if(De(e,r))return await $e(e,t,r,o,E);if(n.parseText&&typeof t=="string")return await n.parseText(t,r,o);if(n.parse)return await n.parse(t,r,o);throw m(!n.parseSync),new Error(`${e.id} loader - no parser found and worker is disabled`)}function xr(e,t,r,o){!Array.isArray(t)&&!T(t)&&(o=void 0,r=t,t=void 0),r=r||{};let s=Ee(t,o),i=K(e,s,r);if(!i)return null;r=J(r,i,s);let a=b(e),c=()=>{throw new Error("parseSync called parse (which is async")};return o=ee({url:a,_parseSync:c,_parse:c,loaders:t},r,o||null),Ho(i,e,r,o)}function Ho(e,t,r,o){if(t=pt(t,e,r),e.parseTextSync&&typeof t=="string")return e.parseTextSync(t,r);if(e.parseSync&&t instanceof ArrayBuffer)return e.parseSync(t,r,o);throw new Error(`${e.name} loader: 'parseSync' not supported by this loader, use 'parse' instead. ${o.url||""}`)}function ht(e){switch(typeof e=="object"&&e?.shape){case"array-row-table":case"object-row-table":return Array.isArray(e.data);case"geojson-table":return Array.isArray(e.features);case"columnar-table":return e.data&&typeof e.data=="object";case"arrow-table":return Boolean(e?.data?.numRows!==void 0);default:return!1}}function dt(e){switch(e.shape){case"array-row-table":case"object-row-table":return e.data.length;case"geojson-table":return e.features.length;case"arrow-table":return e.data.numRows;case"columnar-table":for(let r of Object.values(e.data))return r.length||0;return 0;default:throw new Error("table")}}function gt(e){return{...e,length:dt(e),batchType:"data"}}async function P(e,t,r,o){let n=Array.isArray(t)?t:void 0;!Array.isArray(t)&&!T(t)&&(o=void 0,r=t,t=void 0),e=await e,r=r||{};let s=b(e),i=await Y(e,t,r);return i?(r=J(r,i,n,s),o=ee({url:s,_parseInBatches:P,_parse:E,loaders:n},r,o||null),await Go(i,e,r,o)):[]}async function Go(e,t,r,o){let n=await qo(e,t,r,o);if(!r.metadata)return n;let s={shape:"metadata",batchType:"metadata",metadata:{_loader:e,_context:o},data:[],bytesUsed:0};async function*i(a){yield s,yield*a}return i(n)}async function qo(e,t,r,o){let n=await br(t,r),s=await Ko(n,r?.transforms||[]);return e.parseInBatches?e.parseInBatches(s,r,o):Qo(s,e,r,o)}async function*Qo(e,t,r,o){let n=await N(e),s=await E(n,t,{...r,mimeType:t.mimeTypes[0]},o);yield Jo(s,t)}function Jo(e,t){let r=ht(e)?gt(e):{shape:"unknown",batchType:"data",data:e,length:Array.isArray(e)?e.length:1};return r.mimeType=t.mimeTypes[0],r}async function Ko(e,t=[]){let r=e;for await(let o of t)r=o(r);return r}async function Tr(e,t,r,o){let n,s;!Array.isArray(t)&&!T(t)?(n=[],s=t,o=void 0):(n=t,s=r);let i=X(s),a=e;return typeof e=="string"&&(a=await i(e)),d(e)&&(a=await i(e)),Array.isArray(n)?await E(a,n,s):await E(a,n,s)}function _r(e,t,r,o){let n;!Array.isArray(t)&&!T(t)?(o=void 0,r=t,n=void 0):n=t;let s=X(r||{});return Array.isArray(e)?e.map(a=>Ar(a,n,r||{},s)):Ar(e,n,r||{},s)}async function Ar(e,t,r,o){if(typeof e=="string"){let s=await o(e);return Array.isArray(t)?await P(s,t,r):await P(s,t,r)}return Array.isArray(t)?await P(e,t,r):await P(e,t,r)}async function yt(e,t,r){if(t.encode)return await t.encode(e,r);if(t.encodeText){let o=await t.encodeText(e,r);return new TextEncoder().encode(o)}if(t.encodeInBatches){let o=wt(e,t,r),n=[];for await(let s of o)n.push(s);return se(...n)}throw new Error("Writer could not encode data")}async function kr(e,t,r){if(t.text&&t.encodeText)return await t.encodeText(e,r);if(t.text){let o=await yt(e,t,r);return new TextDecoder().decode(o)}throw new Error(`Writer ${t.name} could not encode data as text`)}function wt(e,t,r){if(t.encodeInBatches){let o=Yo(e);return t.encodeInBatches(o,r)}throw new Error("Writer could not encode data in batches")}function Yo(e){return[{...e,start:0,end:e.length}]}async function Er(e,t,r){return r={...L(),...r},t.encodeURLtoURL?Zo(t,e,r):ze(t,r)?await Ue(t,e,r):await t.encode(e,r)}function bt(e,t,r){if(t.encodeSync)return t.encodeSync(e,r);if(t.encodeTextSync)return new TextEncoder().encode(t.encodeTextSync(e,r));throw new Error(`Writer ${t.name} could not synchronously encode data`)}async function Br(e,t,r){if(t.encodeText)return await t.encodeText(e,r);if(t.encodeTextSync)return t.encodeTextSync(e,r);if(t.text){let o=await t.encode(e,r);return new TextDecoder().decode(o)}throw new Error(`Writer ${t.name} could not encode data as text`)}function Lr(e,t,r){if(t.encodeTextSync)return t.encodeTextSync(e,r);if(t.text&&t.encodeSync){let o=bt(e,t,r);return new TextDecoder().decode(o)}throw new Error(`Writer ${t.name} could not encode data as text`)}function Rr(e,t,r){if(t.encodeInBatches){let o=Xo(e);return t.encodeInBatches(o,r)}throw new Error(`Writer ${t.name} could not encode in batches`)}async function xt(e,t,r,o){if(e=F(e),t=F(t),h||!r.encodeURLtoURL)throw new Error;return await r.encodeURLtoURL(e,t,o)}async function Zo(e,t,r){if(h)throw new Error(`Writer ${e.name} not supported in browser`);let o=Sr("input");await new ue(o,"w").write(t);let s=Sr("output"),i=await xt(o,s,e,r);return(await M(i)).arrayBuffer()}function Xo(e){return[{...e,start:0,end:e.length}]}function Sr(e){return`/tmp/${e}`}function Ir(e,t){if(globalThis.loaders.makeNodeStream)return globalThis.loaders.makeNodeStream(e,t);let r=e[Symbol.asyncIterator]?e[Symbol.asyncIterator]():e[Symbol.iterator]();return new ReadableStream({type:"bytes",async pull(o){try{let{done:n,value:s}=await r.next();n?o.close():o.enqueue(new Uint8Array(s))}catch(n){o.error(n)}},async cancel(){await r?.return?.()}},{highWaterMark:2**24,...t})}var vr="4.2.0-alpha.4",Fr={name:"Null loader",id:"null",module:"core",version:vr,worker:!0,mimeTypes:["application/x.empty"],extensions:["null"],tests:[()=>!1],options:{null:{}}},Pr={name:"Null loader",id:"null",module:"core",version:vr,mimeTypes:["application/x.empty"],extensions:["null"],parse:async(e,t,r)=>Tt(e,t||{},r),parseSync:Tt,parseInBatches:async function*(t,r,o){for await(let n of t)yield Tt(n,r,o)},tests:[()=>!1],options:{null:{}}};function Tt(e,t,r){return null}async function Nr(e,t,r=()=>{},o=()=>{}){if(e=await e,!e.ok)return e;let n=e.body;if(!n)return e;let s=e.headers.get("content-length")||0,i=s?parseInt(s):0;if(!(i>0)||typeof ReadableStream>"u"||!n.getReader)return e;let a=new ReadableStream({async start(c){let u=n.getReader();await Wr(c,u,0,i,t,r,o)}});return new Response(a)}async function Wr(e,t,r,o,n,s,i){try{let{done:a,value:c}=await t.read();if(a){s(),e.close();return}r+=c.byteLength;let u=Math.round(r/o*100);n(u,{loadedBytes:r,totalBytes:o}),e.enqueue(c),await Wr(e,t,r,o,n,s,i)}catch(a){e.error(a),i(a)}}var Be=class{constructor(t,r){this.files={},this.lowerCaseFiles={},this.usedFiles={},this._fetch=r?.fetch||fetch;for(let o=0;o<t.length;++o){let n=t[o];this.files[n.name]=n,this.lowerCaseFiles[n.name.toLowerCase()]=n,this.usedFiles[n.name]=!1}this.fetch=this.fetch.bind(this)}async fetch(t,r){if(t.includes("://"))return this._fetch(t,r);let o=this.files[t];if(!o)return new Response(t,{status:400,statusText:"NOT FOUND"});let s=new Headers(r?.headers).get("Range"),i=s&&/bytes=($1)-($2)/.exec(s);if(i){let c=parseInt(i[1]),u=parseInt(i[2]),B=await o.slice(c,u).arrayBuffer(),R=new Response(B);return Object.defineProperty(R,"url",{value:t}),R}let a=new Response(o);return Object.defineProperty(a,"url",{value:t}),a}async readdir(t){let r=[];for(let o in this.files)r.push(o);return r}async stat(t,r){let o=this.files[t];if(!o)throw new Error(t);return{size:o.size}}async unlink(t){delete this.files[t],delete this.lowerCaseFiles[t],this.usedFiles[t]=!0}async openReadableFile(t,r){return new ce(this.files[t])}_getFile(t,r){let o=this.files[t]||this.lowerCaseFiles[t];return o&&r&&(this.usedFiles[t]=!0),o}};return jr(en);})();
|
|
14
|
+
return __exports__;
|
|
15
|
+
});
|
package/dist/index.cjs
CHANGED
|
@@ -17,9 +17,9 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
19
|
|
|
20
|
-
//
|
|
21
|
-
var
|
|
22
|
-
__export(
|
|
20
|
+
// dist/index.js
|
|
21
|
+
var dist_exports = {};
|
|
22
|
+
__export(dist_exports, {
|
|
23
23
|
JSONLoader: () => import_loader_utils17.JSONLoader,
|
|
24
24
|
NullLoader: () => NullLoader,
|
|
25
25
|
NullWorkerLoader: () => NullWorkerLoader,
|
|
@@ -75,12 +75,12 @@ __export(src_exports, {
|
|
|
75
75
|
setPathPrefix: () => import_loader_utils15.setPathPrefix,
|
|
76
76
|
window: () => import_loader_utils18.window
|
|
77
77
|
});
|
|
78
|
-
module.exports = __toCommonJS(
|
|
78
|
+
module.exports = __toCommonJS(dist_exports);
|
|
79
79
|
|
|
80
|
-
//
|
|
80
|
+
// dist/lib/fetch/fetch-file.js
|
|
81
81
|
var import_loader_utils = require("@loaders.gl/loader-utils");
|
|
82
82
|
|
|
83
|
-
//
|
|
83
|
+
// dist/javascript-utils/is-type.js
|
|
84
84
|
var isBoolean = (x) => typeof x === "boolean";
|
|
85
85
|
var isFunction = (x) => typeof x === "function";
|
|
86
86
|
var isObject = (x) => x !== null && typeof x === "object";
|
|
@@ -99,7 +99,7 @@ var isReadableNodeStream = (x) => isObject(x) && isFunction(x.read) && isFunctio
|
|
|
99
99
|
var isReadableStream = (x) => isReadableDOMStream(x) || isReadableNodeStream(x);
|
|
100
100
|
var isWritableStream = (x) => isWritableDOMStream(x) || isWritableNodeStream(x);
|
|
101
101
|
|
|
102
|
-
//
|
|
102
|
+
// dist/lib/utils/mime-type-utils.js
|
|
103
103
|
var DATA_URL_PATTERN = /^data:([-\w.]+\/[-\w.+]+)(;|,)/;
|
|
104
104
|
var MIME_TYPE_PATTERN = /^([-\w.]+\/[-\w.+]+)/;
|
|
105
105
|
function parseMIMEType(mimeString) {
|
|
@@ -117,7 +117,7 @@ function parseMIMETypeFromURL(url) {
|
|
|
117
117
|
return "";
|
|
118
118
|
}
|
|
119
119
|
|
|
120
|
-
//
|
|
120
|
+
// dist/lib/utils/url-utils.js
|
|
121
121
|
var QUERY_STRING_PATTERN = /\?.*/;
|
|
122
122
|
function extractQueryString(url) {
|
|
123
123
|
const matches = url.match(QUERY_STRING_PATTERN);
|
|
@@ -127,7 +127,7 @@ function stripQueryString(url) {
|
|
|
127
127
|
return url.replace(QUERY_STRING_PATTERN, "");
|
|
128
128
|
}
|
|
129
129
|
|
|
130
|
-
//
|
|
130
|
+
// dist/lib/utils/resource-utils.js
|
|
131
131
|
function getResourceUrl(resource) {
|
|
132
132
|
if (isResponse(resource)) {
|
|
133
133
|
const response = resource;
|
|
@@ -179,7 +179,7 @@ function getResourceContentLength(resource) {
|
|
|
179
179
|
return -1;
|
|
180
180
|
}
|
|
181
181
|
|
|
182
|
-
//
|
|
182
|
+
// dist/lib/utils/response-utils.js
|
|
183
183
|
async function makeResponse(resource) {
|
|
184
184
|
if (isResponse(resource)) {
|
|
185
185
|
return resource;
|
|
@@ -257,7 +257,7 @@ function arrayBufferToBase64(buffer) {
|
|
|
257
257
|
return btoa(binary);
|
|
258
258
|
}
|
|
259
259
|
|
|
260
|
-
//
|
|
260
|
+
// dist/lib/fetch/fetch-file.js
|
|
261
261
|
function isNodePath(url) {
|
|
262
262
|
return !isRequestURL(url) && !isDataURL(url);
|
|
263
263
|
}
|
|
@@ -281,7 +281,7 @@ async function fetchFile(urlOrData, fetchOptions) {
|
|
|
281
281
|
return await makeResponse(urlOrData);
|
|
282
282
|
}
|
|
283
283
|
|
|
284
|
-
//
|
|
284
|
+
// dist/lib/fetch/read-array-buffer.js
|
|
285
285
|
async function readArrayBuffer(file, start, length) {
|
|
286
286
|
if (!(file instanceof Blob)) {
|
|
287
287
|
file = new Blob([file]);
|
|
@@ -301,7 +301,7 @@ async function readBlob(blob) {
|
|
|
301
301
|
});
|
|
302
302
|
}
|
|
303
303
|
|
|
304
|
-
//
|
|
304
|
+
// dist/lib/loader-utils/loggers.js
|
|
305
305
|
var import_log = require("@probe.gl/log");
|
|
306
306
|
var probeLog = new import_log.Log({ id: "loaders.gl" });
|
|
307
307
|
var NullLog = class {
|
|
@@ -340,7 +340,7 @@ var ConsoleLog = class {
|
|
|
340
340
|
}
|
|
341
341
|
};
|
|
342
342
|
|
|
343
|
-
//
|
|
343
|
+
// dist/lib/loader-utils/option-defaults.js
|
|
344
344
|
var import_loader_utils2 = require("@loaders.gl/loader-utils");
|
|
345
345
|
var DEFAULT_LOADER_OPTIONS = {
|
|
346
346
|
// baseUri
|
|
@@ -390,11 +390,13 @@ var REMOVED_LOADER_OPTIONS = {
|
|
|
390
390
|
signal: "fetch.signal"
|
|
391
391
|
};
|
|
392
392
|
|
|
393
|
-
//
|
|
393
|
+
// dist/lib/loader-utils/option-utils.js
|
|
394
394
|
function getGlobalLoaderState() {
|
|
395
395
|
globalThis.loaders = globalThis.loaders || {};
|
|
396
396
|
const { loaders } = globalThis;
|
|
397
|
-
|
|
397
|
+
if (!loaders._state) {
|
|
398
|
+
loaders._state = {};
|
|
399
|
+
}
|
|
398
400
|
return loaders._state;
|
|
399
401
|
}
|
|
400
402
|
function getGlobalLoaderOptions() {
|
|
@@ -431,14 +433,10 @@ function validateOptionsObject(options, id, defaultOptions, deprecatedOptions, l
|
|
|
431
433
|
const isWorkerUrlOption = key === "workerUrl" && id;
|
|
432
434
|
if (!(key in defaultOptions) && !isBaseUriOption && !isWorkerUrlOption) {
|
|
433
435
|
if (key in deprecatedOptions) {
|
|
434
|
-
probeLog.warn(
|
|
435
|
-
`${loaderName} loader option '${prefix}${key}' no longer supported, use '${deprecatedOptions[key]}'`
|
|
436
|
-
)();
|
|
436
|
+
probeLog.warn(`${loaderName} loader option '${prefix}${key}' no longer supported, use '${deprecatedOptions[key]}'`)();
|
|
437
437
|
} else if (!isSubOptions) {
|
|
438
438
|
const suggestion = findSimilarOption(key, loaders);
|
|
439
|
-
probeLog.warn(
|
|
440
|
-
`${loaderName} loader option '${prefix}${key}' not recognized. ${suggestion}`
|
|
441
|
-
)();
|
|
439
|
+
probeLog.warn(`${loaderName} loader option '${prefix}${key}' not recognized. ${suggestion}`)();
|
|
442
440
|
}
|
|
443
441
|
}
|
|
444
442
|
}
|
|
@@ -492,7 +490,7 @@ function addUrlOptions(options, url) {
|
|
|
492
490
|
}
|
|
493
491
|
}
|
|
494
492
|
|
|
495
|
-
//
|
|
493
|
+
// dist/lib/loader-utils/normalize-loader.js
|
|
496
494
|
var import_loader_utils3 = require("@loaders.gl/loader-utils");
|
|
497
495
|
function isLoaderObject(loader) {
|
|
498
496
|
if (!loader) {
|
|
@@ -525,7 +523,7 @@ function normalizeLoader(loader) {
|
|
|
525
523
|
return loader;
|
|
526
524
|
}
|
|
527
525
|
|
|
528
|
-
//
|
|
526
|
+
// dist/lib/api/register-loaders.js
|
|
529
527
|
var getGlobalLoaderRegistry = () => {
|
|
530
528
|
const state = getGlobalLoaderState();
|
|
531
529
|
state.loaderRegistry = state.loaderRegistry || [];
|
|
@@ -549,14 +547,14 @@ function _unregisterLoaders() {
|
|
|
549
547
|
state.loaderRegistry = [];
|
|
550
548
|
}
|
|
551
549
|
|
|
552
|
-
//
|
|
550
|
+
// dist/lib/api/select-loader.js
|
|
553
551
|
var import_loader_utils4 = require("@loaders.gl/loader-utils");
|
|
554
552
|
|
|
555
|
-
//
|
|
553
|
+
// dist/lib/utils/log.js
|
|
556
554
|
var import_log2 = require("@probe.gl/log");
|
|
557
555
|
var log = new import_log2.Log({ id: "loaders.gl" });
|
|
558
556
|
|
|
559
|
-
//
|
|
557
|
+
// dist/lib/api/select-loader.js
|
|
560
558
|
var EXT_PATTERN = /\.([^.]+)$/;
|
|
561
559
|
async function selectLoader(data, loaders = [], options, context) {
|
|
562
560
|
if (!validHTTPResponse(data)) {
|
|
@@ -742,15 +740,15 @@ function getMagicString(arrayBuffer, byteOffset, length) {
|
|
|
742
740
|
return magic;
|
|
743
741
|
}
|
|
744
742
|
|
|
745
|
-
//
|
|
743
|
+
// dist/lib/api/parse.js
|
|
746
744
|
var import_loader_utils8 = require("@loaders.gl/loader-utils");
|
|
747
745
|
var import_worker_utils = require("@loaders.gl/worker-utils");
|
|
748
746
|
var import_loader_utils9 = require("@loaders.gl/loader-utils");
|
|
749
747
|
|
|
750
|
-
//
|
|
748
|
+
// dist/lib/loader-utils/get-data.js
|
|
751
749
|
var import_loader_utils6 = require("@loaders.gl/loader-utils");
|
|
752
750
|
|
|
753
|
-
//
|
|
751
|
+
// dist/iterators/make-iterator/make-string-iterator.js
|
|
754
752
|
var DEFAULT_CHUNK_SIZE = 256 * 1024;
|
|
755
753
|
function* makeStringIterator(string, options) {
|
|
756
754
|
const chunkSize = (options == null ? void 0 : options.chunkSize) || DEFAULT_CHUNK_SIZE;
|
|
@@ -764,7 +762,7 @@ function* makeStringIterator(string, options) {
|
|
|
764
762
|
}
|
|
765
763
|
}
|
|
766
764
|
|
|
767
|
-
//
|
|
765
|
+
// dist/iterators/make-iterator/make-array-buffer-iterator.js
|
|
768
766
|
var DEFAULT_CHUNK_SIZE2 = 256 * 1024;
|
|
769
767
|
function* makeArrayBufferIterator(arrayBuffer, options = {}) {
|
|
770
768
|
const { chunkSize = DEFAULT_CHUNK_SIZE2 } = options;
|
|
@@ -780,7 +778,7 @@ function* makeArrayBufferIterator(arrayBuffer, options = {}) {
|
|
|
780
778
|
}
|
|
781
779
|
}
|
|
782
780
|
|
|
783
|
-
//
|
|
781
|
+
// dist/iterators/make-iterator/make-blob-iterator.js
|
|
784
782
|
var DEFAULT_CHUNK_SIZE3 = 1024 * 1024;
|
|
785
783
|
async function* makeBlobIterator(blob, options) {
|
|
786
784
|
const chunkSize = (options == null ? void 0 : options.chunkSize) || DEFAULT_CHUNK_SIZE3;
|
|
@@ -793,7 +791,7 @@ async function* makeBlobIterator(blob, options) {
|
|
|
793
791
|
}
|
|
794
792
|
}
|
|
795
793
|
|
|
796
|
-
//
|
|
794
|
+
// dist/iterators/make-iterator/make-stream-iterator.js
|
|
797
795
|
var import_loader_utils5 = require("@loaders.gl/loader-utils");
|
|
798
796
|
function makeStreamIterator(stream, options) {
|
|
799
797
|
return import_loader_utils5.isBrowser ? makeBrowserStreamIterator(stream, options) : makeNodeStreamIterator(stream, options);
|
|
@@ -823,7 +821,7 @@ async function* makeNodeStreamIterator(stream, options) {
|
|
|
823
821
|
}
|
|
824
822
|
}
|
|
825
823
|
|
|
826
|
-
//
|
|
824
|
+
// dist/iterators/make-iterator/make-iterator.js
|
|
827
825
|
function makeIterator(data, options) {
|
|
828
826
|
if (typeof data === "string") {
|
|
829
827
|
return makeStringIterator(data, options);
|
|
@@ -844,7 +842,7 @@ function makeIterator(data, options) {
|
|
|
844
842
|
throw new Error("makeIterator");
|
|
845
843
|
}
|
|
846
844
|
|
|
847
|
-
//
|
|
845
|
+
// dist/lib/loader-utils/get-data.js
|
|
848
846
|
var ERR_DATA = "Cannot convert supplied data type";
|
|
849
847
|
function getArrayBufferOrStringFromDataSync(data, loader, options) {
|
|
850
848
|
if (loader.text && typeof data === "string") {
|
|
@@ -934,7 +932,7 @@ function getIterableFromData(data) {
|
|
|
934
932
|
throw new Error(ERR_DATA);
|
|
935
933
|
}
|
|
936
934
|
|
|
937
|
-
//
|
|
935
|
+
// dist/lib/loader-utils/get-fetch-function.js
|
|
938
936
|
function getFetchFunction(options, context) {
|
|
939
937
|
const globalOptions = getGlobalLoaderOptions();
|
|
940
938
|
const loaderOptions = options || globalOptions;
|
|
@@ -950,7 +948,7 @@ function getFetchFunction(options, context) {
|
|
|
950
948
|
return fetchFile;
|
|
951
949
|
}
|
|
952
950
|
|
|
953
|
-
//
|
|
951
|
+
// dist/lib/loader-utils/loader-context.js
|
|
954
952
|
var import_loader_utils7 = require("@loaders.gl/loader-utils");
|
|
955
953
|
function getLoaderContext(context, options, parentContext) {
|
|
956
954
|
if (parentContext) {
|
|
@@ -987,7 +985,7 @@ function getLoadersFromContext(loaders, context) {
|
|
|
987
985
|
return candidateLoaders && candidateLoaders.length ? candidateLoaders : void 0;
|
|
988
986
|
}
|
|
989
987
|
|
|
990
|
-
//
|
|
988
|
+
// dist/lib/api/parse.js
|
|
991
989
|
async function parse(data, loaders, options, context) {
|
|
992
990
|
if (loaders && !Array.isArray(loaders) && !isLoaderObject(loaders)) {
|
|
993
991
|
context = void 0;
|
|
@@ -1039,7 +1037,7 @@ async function parseWithLoader(loader, data, options, context) {
|
|
|
1039
1037
|
throw new Error(`${loader.id} loader - no parser found and worker is disabled`);
|
|
1040
1038
|
}
|
|
1041
1039
|
|
|
1042
|
-
//
|
|
1040
|
+
// dist/lib/api/parse-sync.js
|
|
1043
1041
|
function parseSync(data, loaders, options, context) {
|
|
1044
1042
|
if (!Array.isArray(loaders) && !isLoaderObject(loaders)) {
|
|
1045
1043
|
context = void 0;
|
|
@@ -1058,11 +1056,7 @@ function parseSync(data, loaders, options, context) {
|
|
|
1058
1056
|
const parse2 = () => {
|
|
1059
1057
|
throw new Error("parseSync called parse (which is async");
|
|
1060
1058
|
};
|
|
1061
|
-
context = getLoaderContext(
|
|
1062
|
-
{ url, _parseSync: parse2, _parse: parse2, loaders },
|
|
1063
|
-
options,
|
|
1064
|
-
context || null
|
|
1065
|
-
);
|
|
1059
|
+
context = getLoaderContext({ url, _parseSync: parse2, _parse: parse2, loaders }, options, context || null);
|
|
1066
1060
|
return parseWithLoaderSync(loader, data, options, context);
|
|
1067
1061
|
}
|
|
1068
1062
|
function parseWithLoaderSync(loader, data, options, context) {
|
|
@@ -1073,12 +1067,10 @@ function parseWithLoaderSync(loader, data, options, context) {
|
|
|
1073
1067
|
if (loader.parseSync && data instanceof ArrayBuffer) {
|
|
1074
1068
|
return loader.parseSync(data, options, context);
|
|
1075
1069
|
}
|
|
1076
|
-
throw new Error(
|
|
1077
|
-
`${loader.name} loader: 'parseSync' not supported by this loader, use 'parse' instead. ${context.url || ""}`
|
|
1078
|
-
);
|
|
1070
|
+
throw new Error(`${loader.name} loader: 'parseSync' not supported by this loader, use 'parse' instead. ${context.url || ""}`);
|
|
1079
1071
|
}
|
|
1080
1072
|
|
|
1081
|
-
//
|
|
1073
|
+
// dist/lib/api/parse-in-batches.js
|
|
1082
1074
|
var import_schema = require("@loaders.gl/schema");
|
|
1083
1075
|
var import_loader_utils10 = require("@loaders.gl/loader-utils");
|
|
1084
1076
|
async function parseInBatches(data, loaders, options, context) {
|
|
@@ -1096,11 +1088,7 @@ async function parseInBatches(data, loaders, options, context) {
|
|
|
1096
1088
|
return [];
|
|
1097
1089
|
}
|
|
1098
1090
|
options = normalizeOptions(options, loader, loaderArray, url);
|
|
1099
|
-
context = getLoaderContext(
|
|
1100
|
-
{ url, _parseInBatches: parseInBatches, _parse: parse, loaders: loaderArray },
|
|
1101
|
-
options,
|
|
1102
|
-
context || null
|
|
1103
|
-
);
|
|
1091
|
+
context = getLoaderContext({ url, _parseInBatches: parseInBatches, _parse: parse, loaders: loaderArray }, options, context || null);
|
|
1104
1092
|
return await parseWithLoaderInBatches(loader, data, options, context);
|
|
1105
1093
|
}
|
|
1106
1094
|
async function parseWithLoaderInBatches(loader, data, options, context) {
|
|
@@ -1163,7 +1151,7 @@ async function applyInputTransforms(inputIterator, transforms = []) {
|
|
|
1163
1151
|
return iteratorChain;
|
|
1164
1152
|
}
|
|
1165
1153
|
|
|
1166
|
-
//
|
|
1154
|
+
// dist/lib/api/load.js
|
|
1167
1155
|
async function load(url, loaders, options, context) {
|
|
1168
1156
|
let resolvedLoaders;
|
|
1169
1157
|
let resolvedOptions;
|
|
@@ -1186,7 +1174,7 @@ async function load(url, loaders, options, context) {
|
|
|
1186
1174
|
return Array.isArray(resolvedLoaders) ? await parse(data, resolvedLoaders, resolvedOptions) : await parse(data, resolvedLoaders, resolvedOptions);
|
|
1187
1175
|
}
|
|
1188
1176
|
|
|
1189
|
-
//
|
|
1177
|
+
// dist/lib/api/load-in-batches.js
|
|
1190
1178
|
function loadInBatches(files, loaders, options, context) {
|
|
1191
1179
|
let loadersArray;
|
|
1192
1180
|
if (!Array.isArray(loaders) && !isLoaderObject(loaders)) {
|
|
@@ -1200,9 +1188,7 @@ function loadInBatches(files, loaders, options, context) {
|
|
|
1200
1188
|
if (!Array.isArray(files)) {
|
|
1201
1189
|
return loadOneFileInBatches(files, loadersArray, options || {}, fetch2);
|
|
1202
1190
|
}
|
|
1203
|
-
const promises = files.map(
|
|
1204
|
-
(file) => loadOneFileInBatches(file, loadersArray, options || {}, fetch2)
|
|
1205
|
-
);
|
|
1191
|
+
const promises = files.map((file) => loadOneFileInBatches(file, loadersArray, options || {}, fetch2));
|
|
1206
1192
|
return promises;
|
|
1207
1193
|
}
|
|
1208
1194
|
async function loadOneFileInBatches(file, loaders, options, fetch2) {
|
|
@@ -1214,7 +1200,7 @@ async function loadOneFileInBatches(file, loaders, options, fetch2) {
|
|
|
1214
1200
|
return Array.isArray(loaders) ? await parseInBatches(file, loaders, options) : await parseInBatches(file, loaders, options);
|
|
1215
1201
|
}
|
|
1216
1202
|
|
|
1217
|
-
//
|
|
1203
|
+
// dist/lib/api/encode-table.js
|
|
1218
1204
|
var import_loader_utils11 = require("@loaders.gl/loader-utils");
|
|
1219
1205
|
async function encodeTable(data, writer, options) {
|
|
1220
1206
|
if (writer.encode) {
|
|
@@ -1256,7 +1242,7 @@ function getIterator(data) {
|
|
|
1256
1242
|
return dataIterator;
|
|
1257
1243
|
}
|
|
1258
1244
|
|
|
1259
|
-
//
|
|
1245
|
+
// dist/lib/api/encode.js
|
|
1260
1246
|
var import_loader_utils12 = require("@loaders.gl/loader-utils");
|
|
1261
1247
|
var import_worker_utils2 = require("@loaders.gl/worker-utils");
|
|
1262
1248
|
var import_loader_utils13 = require("@loaders.gl/loader-utils");
|
|
@@ -1339,11 +1325,11 @@ function getTemporaryFilename(filename) {
|
|
|
1339
1325
|
return `/tmp/${filename}`;
|
|
1340
1326
|
}
|
|
1341
1327
|
|
|
1342
|
-
//
|
|
1328
|
+
// dist/index.js
|
|
1343
1329
|
var import_loader_utils15 = require("@loaders.gl/loader-utils");
|
|
1344
1330
|
var import_loader_utils16 = require("@loaders.gl/loader-utils");
|
|
1345
1331
|
|
|
1346
|
-
//
|
|
1332
|
+
// dist/iterators/make-stream/make-stream.js
|
|
1347
1333
|
function makeStream(source, options) {
|
|
1348
1334
|
if (globalThis.loaders.makeNodeStream) {
|
|
1349
1335
|
return globalThis.loaders.makeNodeStream(source, options);
|
|
@@ -1382,8 +1368,8 @@ function makeStream(source, options) {
|
|
|
1382
1368
|
);
|
|
1383
1369
|
}
|
|
1384
1370
|
|
|
1385
|
-
//
|
|
1386
|
-
var VERSION =
|
|
1371
|
+
// dist/null-loader.js
|
|
1372
|
+
var VERSION = true ? "4.2.0-alpha.4" : "latest";
|
|
1387
1373
|
var NullWorkerLoader = {
|
|
1388
1374
|
name: "Null loader",
|
|
1389
1375
|
id: "null",
|
|
@@ -1420,10 +1406,10 @@ function parseSync2(arrayBuffer, options, context) {
|
|
|
1420
1406
|
return null;
|
|
1421
1407
|
}
|
|
1422
1408
|
|
|
1423
|
-
//
|
|
1409
|
+
// dist/index.js
|
|
1424
1410
|
var import_loader_utils17 = require("@loaders.gl/loader-utils");
|
|
1425
1411
|
|
|
1426
|
-
//
|
|
1412
|
+
// dist/lib/progress/fetch-progress.js
|
|
1427
1413
|
async function fetchProgress(response, onProgress, onDone = () => {
|
|
1428
1414
|
}, onError = () => {
|
|
1429
1415
|
}) {
|
|
@@ -1470,7 +1456,7 @@ async function read(controller, reader, loadedBytes, totalBytes, onProgress, onD
|
|
|
1470
1456
|
}
|
|
1471
1457
|
}
|
|
1472
1458
|
|
|
1473
|
-
//
|
|
1459
|
+
// dist/lib/filesystems/browser-filesystem.js
|
|
1474
1460
|
var import_loader_utils14 = require("@loaders.gl/loader-utils");
|
|
1475
1461
|
var BrowserFileSystem = class {
|
|
1476
1462
|
/**
|
|
@@ -1565,8 +1551,9 @@ var BrowserFileSystem = class {
|
|
|
1565
1551
|
}
|
|
1566
1552
|
};
|
|
1567
1553
|
|
|
1568
|
-
//
|
|
1554
|
+
// dist/index.js
|
|
1569
1555
|
var import_loader_utils18 = require("@loaders.gl/loader-utils");
|
|
1570
1556
|
var import_loader_utils19 = require("@loaders.gl/loader-utils");
|
|
1571
1557
|
var import_loader_utils20 = require("@loaders.gl/loader-utils");
|
|
1572
1558
|
var import_loader_utils21 = require("@loaders.gl/loader-utils");
|
|
1559
|
+
//# sourceMappingURL=index.cjs.map
|