@loaders.gl/csv 4.3.0-alpha.7 → 4.3.0-beta.1

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/dist.min.js CHANGED
@@ -4,20 +4,20 @@
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 ze=Object.create;var Q=Object.defineProperty;var He=Object.getOwnPropertyDescriptor;var Ve=Object.getOwnPropertyNames;var We=Object.getPrototypeOf,Je=Object.prototype.hasOwnProperty;var $e=(t,e,r)=>e in t?Q(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var Ze=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ke=(t,e)=>{for(var r in e)Q(t,r,{get:e[r],enumerable:!0})},ae=(t,e,r,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Ve(e))!Je.call(t,o)&&o!==r&&Q(t,o,{get:()=>e[o],enumerable:!(a=He(e,o))||a.enumerable});return t},se=(t,e,r)=>(ae(t,e,"default"),r&&ae(r,e,"default")),Qe=(t,e,r)=>(r=t!=null?ze(We(t)):{},ae(e||!t||!t.__esModule?Q(r,"default",{value:t,enumerable:!0}):r,t)),Ye=t=>ae(Q({},"__esModule",{value:!0}),t);var Re=(t,e,r)=>($e(t,typeof e!="symbol"?e+"":e,r),r);var Ce=Ze((wt,Ae)=>{Ae.exports=globalThis.loaders});var te={};Ke(te,{CSVLoader:()=>ce,CSVWriter:()=>qe});se(te,Qe(Ce(),1));var ne=class{schema;options;shape;length=0;rows=null;cursor=0;_headers=[];constructor(e,r){if(this.options=r,this.schema=e,!Array.isArray(e)){this._headers=[];for(let a in e)this._headers[e[a].index]=e[a].name}}rowCount(){return this.length}addArrayRow(e,r){Number.isFinite(r)&&(this.cursor=r),this.shape="array-row-table",this.rows=this.rows||new Array(100),this.rows[this.length]=e,this.length++}addObjectRow(e,r){Number.isFinite(r)&&(this.cursor=r),this.shape="object-row-table",this.rows=this.rows||new Array(100),this.rows[this.length]=e,this.length++}getBatch(){let e=this.rows;return e?(e=e.slice(0,this.length),this.rows=null,{shape:this.shape||"array-row-table",batchType:"data",data:e,length:this.length,schema:this.schema,cursor:this.cursor}):null}};function Y(t,e){if(!t)throw new Error("null row");let r={};if(e)for(let a=0;a<e.length;a++)r[e[a]]=t[a];else for(let a=0;a<t.length;a++){let o=`column-${a}`;r[o]=t[a]}return r}function X(t,e){if(!t)throw new Error("null row");if(e){let r=new Array(e.length);for(let a=0;a<e.length;a++)r[a]=t[e[a]];return r}return Object.values(t)}function xe(t){let e=[];for(let r=0;r<t.length;r++){let a=`column-${r}`;e.push(a)}return e}function Ee(t){return Object.keys(t)}var je=100,oe=class{schema;options;length=0;objectRows=null;arrayRows=null;cursor=0;_headers=null;constructor(e,r){if(this.options=r,this.schema=e,e){this._headers=[];for(let a in e)this._headers[e[a].index]=e[a].name}}rowCount(){return this.length}addArrayRow(e,r){switch(Number.isFinite(r)&&(this.cursor=r),this._headers||=xe(e),this.options.shape){case"object-row-table":let a=Y(e,this._headers);this.addObjectRow(a,r);break;case"array-row-table":this.arrayRows=this.arrayRows||new Array(je),this.arrayRows[this.length]=e,this.length++;break}}addObjectRow(e,r){switch(Number.isFinite(r)&&(this.cursor=r),this._headers||=Ee(e),this.options.shape){case"array-row-table":let a=X(e,this._headers);this.addArrayRow(a,r);break;case"object-row-table":this.objectRows=this.objectRows||new Array(je),this.objectRows[this.length]=e,this.length++;break}}getBatch(){let e=this.arrayRows||this.objectRows;return e?(e=e.slice(0,this.length),this.arrayRows=null,this.objectRows=null,{shape:this.options.shape,batchType:"data",data:e,length:this.length,schema:this.schema,cursor:this.cursor}):null}};var ie=class{schema;length=0;allocated=0;columns={};constructor(e,r){this.schema=e,this._reallocateColumns()}rowCount(){return this.length}addArrayRow(e){this._reallocateColumns();let r=0;for(let a in this.columns)this.columns[a][this.length]=e[r++];this.length++}addObjectRow(e){this._reallocateColumns();for(let r in e)this.columns[r][this.length]=e[r];this.length++}getBatch(){this._pruneColumns();let e=Array.isArray(this.schema)?this.columns:{};if(!Array.isArray(this.schema))for(let a in this.schema){let o=this.schema[a];e[o.name]=this.columns[o.index]}return this.columns={},{shape:"columnar-table",batchType:"data",data:e,schema:this.schema,length:this.length}}_reallocateColumns(){if(!(this.length<this.allocated)){this.allocated=this.allocated>0?this.allocated*=2:100,this.columns={};for(let e in this.schema){let r=this.schema[e],a=r.type||Float32Array,o=this.columns[r.index];if(o&&ArrayBuffer.isView(o)){let c=new a(this.allocated);c.set(o),this.columns[r.index]=c}else o?(o.length=this.allocated,this.columns[r.index]=o):this.columns[r.index]=new a(this.allocated)}}}_pruneColumns(){for(let[e,r]of Object.entries(this.columns))this.columns[e]=r.slice(0,this.length)}};var Xe={shape:void 0,batchSize:"auto",batchDebounceMs:0,limit:0,_limitMB:0},Ge="TableBatchBuilder",le=class{schema;options;aggregator=null;batchCount=0;bytesUsed=0;isChunkComplete=!1;lastBatchEmittedMs=Date.now();totalLength=0;totalBytes=0;rowBytes=0;constructor(e,r){this.schema=e,this.options={...Xe,...r}}limitReached(){return!!(Boolean(this.options?.limit)&&this.totalLength>=this.options.limit||Boolean(this.options?._limitMB)&&this.totalBytes/1e6>=this.options._limitMB)}addRow(e){this.limitReached()||(this.totalLength++,this.rowBytes=this.rowBytes||this._estimateRowMB(e),this.totalBytes+=this.rowBytes,Array.isArray(e)?this.addArrayRow(e):this.addObjectRow(e))}addArrayRow(e){if(!this.aggregator){let r=this._getTableBatchType();this.aggregator=new r(this.schema,this.options)}this.aggregator.addArrayRow(e)}addObjectRow(e){if(!this.aggregator){let r=this._getTableBatchType();this.aggregator=new r(this.schema,this.options)}this.aggregator.addObjectRow(e)}chunkComplete(e){e instanceof ArrayBuffer&&(this.bytesUsed+=e.byteLength),typeof e=="string"&&(this.bytesUsed+=e.length),this.isChunkComplete=!0}getFullBatch(e){return this._isFull()?this._getBatch(e):null}getFinalBatch(e){return this._getBatch(e)}_estimateRowMB(e){return Array.isArray(e)?e.length*8:Object.keys(e).length*8}_isFull(){if(!this.aggregator||this.aggregator.rowCount()===0)return!1;if(this.options.batchSize==="auto"){if(!this.isChunkComplete)return!1}else if(this.options.batchSize>this.aggregator.rowCount())return!1;return this.options.batchDebounceMs>Date.now()-this.lastBatchEmittedMs?!1:(this.isChunkComplete=!1,this.lastBatchEmittedMs=Date.now(),!0)}_getBatch(e){if(!this.aggregator)return null;e?.bytesUsed&&(this.bytesUsed=e.bytesUsed);let r=this.aggregator.getBatch();return r.count=this.batchCount,r.bytesUsed=this.bytesUsed,Object.assign(r,e),this.batchCount++,this.aggregator=null,r}_getTableBatchType(){switch(this.options.shape){case"array-row-table":case"object-row-table":return oe;case"columnar-table":return ie;case"arrow-table":if(!le.ArrowBatch)throw new Error(Ge);return le.ArrowBatch;default:return ne}}},H=le;Re(H,"ArrowBatch");function ue(t){switch(t.shape){case"array-row-table":case"object-row-table":return t.data.length;case"geojson-table":return t.features.length;case"arrow-table":return t.data.numRows;case"columnar-table":for(let r of Object.values(t.data))return r.length||0;return 0;default:throw new Error("table")}}function fe(t){if(t.schema)return t.schema.fields.length;if(ue(t)===0)throw new Error("empty table");switch(t.shape){case"array-row-table":return t.data[0].length;case"object-row-table":return Object.keys(t.data[0]).length;case"geojson-table":return Object.keys(t.features[0]).length;case"columnar-table":return Object.keys(t.data).length;case"arrow-table":return t.data.numCols;default:throw new Error("table")}}function Oe(t,e,r,a){switch(t.shape){case"array-row-table":return a?Array.from(t.data[e]):t.data[e];case"object-row-table":if(t.schema){let u=r||[];for(let n=0;n<t.schema.fields.length;n++)u[n]=t.data[e][t.schema.fields[n].name];return u}return Object.values(t.data[e]);case"geojson-table":if(t.schema){let u=r||[];for(let n=0;n<t.schema.fields.length;n++)u[n]=t.features[e][t.schema.fields[n].name];return u}return Object.values(t.features[e]);case"columnar-table":if(t.schema){let u=r||[];for(let n=0;n<t.schema.fields.length;n++)u[n]=t.data[t.schema.fields[n].name][e];return u}else{let u=r||[],n=0;for(let y of Object.values(t.data))u[n]=y[e],n++;return u}case"arrow-table":let o=t.data,c=r||[],h=o.get(e),d=o.schema;for(let u=0;u<d.fields.length;u++)c[u]=h?.[d.fields[u].name];return c;default:throw new Error("shape")}}function*de(t,e=[]){let r=ue(t);for(let a=0;a<r;a++)yield Oe(t,a,e)}var he=class extends Array{enqueue(e){return this.push(e)}dequeue(){return this.shift()}},V=class{_values;_settlers;_closed;constructor(){this._values=new he,this._settlers=new he,this._closed=!1}close(){for(;this._settlers.length>0;)this._settlers.dequeue().resolve({done:!0});this._closed=!0}[Symbol.asyncIterator](){return this}enqueue(e){if(this._closed)throw new Error("Closed");if(this._settlers.length>0){if(this._values.length>0)throw new Error("Illegal internal state");let r=this._settlers.dequeue();e instanceof Error?r.reject(e):r.resolve({value:e})}else this._values.enqueue(e)}next(){if(this._values.length>0){let e=this._values.dequeue();return e instanceof Error?Promise.reject(e):Promise.resolve({value:e})}if(this._closed){if(this._settlers.length>0)throw new Error("Illegal internal state");return Promise.resolve({done:!0})}return new Promise((e,r)=>{this._settlers.enqueue({resolve:e,reject:r})})}};var Se="\uFEFF",I={parse:et,unparse:tt,RECORD_SEP:String.fromCharCode(30),UNIT_SEP:String.fromCharCode(31),BYTE_ORDER_MARK:Se,BAD_DELIMITERS:["\r",`
8
- `,'"',Se],WORKERS_SUPPORTED:!1,NODE_STREAM_INPUT:1,LocalChunkSize:10485760,RemoteChunkSize:5242880,DefaultDelimiter:",",Parser:me,ParserHandle:Fe,ChunkStreamer:ke,StringStreamer:W},J=I;function et(t,e,r){e=e||{};var a=e.dynamicTyping||!1;if(N(a)&&(e.dynamicTypingFunction=a,a={}),e.dynamicTyping=a,e.transform=N(e.transform)?e.transform:!1,e.worker&&I.WORKERS_SUPPORTED){var o=newWorker();o.userStep=e.step,o.userChunk=e.chunk,o.userComplete=e.complete,o.userError=e.error,e.step=N(e.step),e.chunk=N(e.chunk),e.complete=N(e.complete),e.error=N(e.error),delete e.worker,o.postMessage({input:t,config:e,workerId:o.id});return}var c=null;return typeof t=="string"&&(c=new W(e)),c||(c=new r(e)),c.stream(t)}function tt(t,e){var r=!1,a=!0,o=",",c=`\r
9
- `,h='"',d=h+h,u=!1,n=null;s();var y=new RegExp(G(h),"g");if(typeof t=="string"&&(t=JSON.parse(t)),Array.isArray(t)){if(!t.length||Array.isArray(t[0]))return v(null,t,u);if(typeof t[0]=="object")return v(n||i(t[0]),t,u)}else if(typeof t=="object")return typeof t.data=="string"&&(t.data=JSON.parse(t.data)),Array.isArray(t.data)&&(t.fields||(t.fields=t.meta&&t.meta.fields),t.fields||(t.fields=Array.isArray(t.data[0])?t.fields:i(t.data[0])),!Array.isArray(t.data[0])&&typeof t.data[0]!="object"&&(t.data=[t.data])),v(t.fields||[],t.data||[],u);throw new Error("Unable to serialize unrecognized input");function s(){if(typeof e=="object"){if(typeof e.delimiter=="string"&&!I.BAD_DELIMITERS.filter(function(f){return e.delimiter.indexOf(f)!==-1}).length&&(o=e.delimiter),(typeof e.quotes=="boolean"||Array.isArray(e.quotes))&&(r=e.quotes),(typeof e.skipEmptyLines=="boolean"||typeof e.skipEmptyLines=="string")&&(u=e.skipEmptyLines),typeof e.newline=="string"&&(c=e.newline),typeof e.quoteChar=="string"&&(h=e.quoteChar),typeof e.header=="boolean"&&(a=e.header),Array.isArray(e.columns)){if(e.columns.length===0)throw new Error("Option columns is empty");n=e.columns}e.escapeChar!==void 0&&(d=e.escapeChar+h)}}function i(f){if(typeof f!="object")return[];var w=[];for(var T in f)w.push(T);return w}function v(f,w,T){var b="";typeof f=="string"&&(f=JSON.parse(f)),typeof w=="string"&&(w=JSON.parse(w));var D=Array.isArray(f)&&f.length>0,C=!Array.isArray(w[0]);if(D&&a){for(var B=0;B<f.length;B++)B>0&&(b+=o),b+=j(f[B],B);w.length>0&&(b+=c)}for(var x=0;x<w.length;x++){var l=D?f.length:w[x].length,m=!1,g=D?Object.keys(w[x]).length===0:w[x].length===0;if(T&&!D&&(m=T==="greedy"?w[x].join("").trim()==="":w[x].length===1&&w[x][0].length===0),T==="greedy"&&D){for(var S=[],p=0;p<l;p++){var R=C?f[p]:p;S.push(w[x][R])}m=S.join("").trim()===""}if(!m){for(var E=0;E<l;E++){E>0&&!g&&(b+=o);var k=D&&C?f[E]:E;b+=j(w[x][k],E)}x<w.length-1&&(!T||l>0&&!g)&&(b+=c)}}return b}function j(f,w){if(typeof f>"u"||f===null)return"";if(f.constructor===Date)return JSON.stringify(f).slice(1,25);f=f.toString().replace(y,d);var T=typeof r=="boolean"&&r||Array.isArray(r)&&r[w]||A(f,I.BAD_DELIMITERS)||f.indexOf(o)>-1||f.charAt(0)===" "||f.charAt(f.length-1)===" ";return T?h+f+h:f}function A(f,w){for(var T=0;T<w.length;T++)if(f.indexOf(w[T])>-1)return!0;return!1}}function ke(t){this._handle=null,this._finished=!1,this._completed=!1,this._input=null,this._baseIndex=0,this._partialLine="",this._rowCount=0,this._start=0,this._nextChunk=null,this.isFirstChunk=!0,this._completeResults={data:[],errors:[],meta:{}},e.call(this,t),this.parseChunk=function(r,a){if(this.isFirstChunk&&N(this._config.beforeFirstChunk)){var o=this._config.beforeFirstChunk(r);o!==void 0&&(r=o)}this.isFirstChunk=!1;var c=this._partialLine+r;this._partialLine="";var h=this._handle.parse(c,this._baseIndex,!this._finished);if(!(this._handle.paused()||this._handle.aborted())){var d=h.meta.cursor;this._finished||(this._partialLine=c.substring(d-this._baseIndex),this._baseIndex=d),h&&h.data&&(this._rowCount+=h.data.length);var u=this._finished||this._config.preview&&this._rowCount>=this._config.preview;if(N(this._config.chunk)&&!a){if(this._config.chunk(h,this._handle),this._handle.paused()||this._handle.aborted())return;h=void 0,this._completeResults=void 0}return!this._config.step&&!this._config.chunk&&(this._completeResults.data=this._completeResults.data.concat(h.data),this._completeResults.errors=this._completeResults.errors.concat(h.errors),this._completeResults.meta=h.meta),!this._completed&&u&&N(this._config.complete)&&(!h||!h.meta.aborted)&&(this._config.complete(this._completeResults,this._input),this._completed=!0),!u&&(!h||!h.meta.paused)&&this._nextChunk(),h}},this._sendError=function(r){N(this._config.error)&&this._config.error(r)};function e(r){var a=pe(r);a.chunkSize=parseInt(a.chunkSize),!r.step&&!r.chunk&&(a.chunkSize=null),this._handle=new Fe(a),this._handle.streamer=this,this._config=a}}function W(t){t=t||{},ke.call(this,t);var e;this.stream=function(r){return e=r,this._nextChunk()},this._nextChunk=function(){if(!this._finished){var r=this._config.chunkSize,a=r?e.substr(0,r):e;return e=r?e.substr(r):"",this._finished=!e,this.parseChunk(a)}}}W.prototype=Object.create(W.prototype);W.prototype.constructor=W;function Fe(t){var e=/^\s*-?(\d*\.?\d+|\d+\.?\d*)(e[-+]?\d+)?\s*$/i,r=/(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))/,a=this,o=0,c=0,h,d,u=!1,n=!1,y,s=[],i={data:[],errors:[],meta:{}};if(N(t.step)){var v=t.step;t.step=function(l){if(i=l,f())A();else{if(A(),!i.data||i.data.length===0)return;o+=l.data.length,t.preview&&o>t.preview?d.abort():v(i,a)}}}this.parse=function(l,m,g){var S=t.quoteChar||'"';if(t.newline||(t.newline=B(l,S)),y=!1,t.delimiter)N(t.delimiter)&&(t.delimiter=t.delimiter(l),i.meta.delimiter=t.delimiter);else{var p=C(l,t.newline,t.skipEmptyLines,t.comments,t.delimitersToGuess);p.successful?t.delimiter=p.bestDelimiter:(y=!0,t.delimiter=I.DefaultDelimiter),i.meta.delimiter=t.delimiter}var R=pe(t);return t.preview&&t.header&&R.preview++,h=l,d=new me(R),i=d.parse(h,m,g),A(),u?{meta:{paused:!0}}:i||{meta:{paused:!1}}},this.paused=function(){return u},this.pause=function(){u=!0,d.abort(),h=h.substr(d.getCharIndex())},this.resume=function(){u=!1,a.streamer.parseChunk(h,!0)},this.aborted=function(){return n},this.abort=function(){n=!0,d.abort(),i.meta.aborted=!0,N(t.complete)&&t.complete(i),h=""};function j(l){return t.skipEmptyLines==="greedy"?l.join("").trim()==="":l.length===1&&l[0].length===0}function A(){if(i&&y&&(x("Delimiter","UndetectableDelimiter","Unable to auto-detect delimiting character; defaulted to '"+I.DefaultDelimiter+"'"),y=!1),t.skipEmptyLines)for(var l=0;l<i.data.length;l++)j(i.data[l])&&i.data.splice(l--,1);return f()&&w(),D()}function f(){return t.header&&s.length===0}function w(){if(!i)return;function l(g){N(t.transformHeader)&&(g=t.transformHeader(g)),s.push(g)}if(Array.isArray(i.data[0])){for(var m=0;f()&&m<i.data.length;m++)i.data[m].forEach(l);i.data.splice(0,1)}else i.data.forEach(l)}function T(l){return t.dynamicTypingFunction&&t.dynamicTyping[l]===void 0&&(t.dynamicTyping[l]=t.dynamicTypingFunction(l)),(t.dynamicTyping[l]||t.dynamicTyping)===!0}function b(l,m){return T(l)?m==="true"||m==="TRUE"?!0:m==="false"||m==="FALSE"?!1:e.test(m)?parseFloat(m):r.test(m)?new Date(m):m===""?null:m:m}function D(){if(!i||!i.data||!t.header&&!t.dynamicTyping&&!t.transform)return i;function l(g,S){var p=t.header?{}:[],R;for(R=0;R<g.length;R++){var E=R,k=g[R];t.header&&(E=R>=s.length?"__parsed_extra":s[R]),t.transform&&(k=t.transform(k,E)),k=b(E,k),E==="__parsed_extra"?(p[E]=p[E]||[],p[E].push(k)):p[E]=k}return t.header&&(R>s.length?x("FieldMismatch","TooManyFields","Too many fields: expected "+s.length+" fields but parsed "+R,c+S):R<s.length&&x("FieldMismatch","TooFewFields","Too few fields: expected "+s.length+" fields but parsed "+R,c+S)),p}var m=1;return!i.data[0]||Array.isArray(i.data[0])?(i.data=i.data.map(l),m=i.data.length):i.data=l(i.data,0),t.header&&i.meta&&(i.meta.fields=s),c+=m,i}function C(l,m,g,S,p){var R,E,k;p=p||[","," ","|",";",I.RECORD_SEP,I.UNIT_SEP];for(var q=0;q<p.length;q++){var M=p[q],z=0,L=0,Z=0;k=void 0;for(var O=new me({comments:S,delimiter:M,newline:m,preview:10}).parse(l),_=0;_<O.data.length;_++){if(g&&j(O.data[_])){Z++;continue}var F=O.data[_].length;if(L+=F,typeof k>"u"){k=0;continue}else F>1&&(z+=Math.abs(F-k),k=F)}O.data.length>0&&(L/=O.data.length-Z),(typeof E>"u"||z>E)&&L>1.99&&(E=z,R=M)}return t.delimiter=R,{successful:!!R,bestDelimiter:R}}function B(l,m){l=l.substr(0,1024*1024);var g=new RegExp(G(m)+"([^]*?)"+G(m),"gm");l=l.replace(g,"");var S=l.split("\r"),p=l.split(`
10
- `),R=p.length>1&&p[0].length<S[0].length;if(S.length===1||R)return`
11
- `;for(var E=0,k=0;k<S.length;k++)S[k][0]===`
12
- `&&E++;return E>=S.length/2?`\r
13
- `:"\r"}function x(l,m,g,S){i.errors.push({type:l,code:m,message:g,row:S})}}function G(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function me(t){t=t||{};var e=t.delimiter,r=t.newline,a=t.comments,o=t.step,c=t.preview,h=t.fastMode,d;t.quoteChar===void 0?d='"':d=t.quoteChar;var u=d;if(t.escapeChar!==void 0&&(u=t.escapeChar),(typeof e!="string"||I.BAD_DELIMITERS.indexOf(e)>-1)&&(e=","),a===e)throw new Error("Comment character same as delimiter");a===!0?a="#":(typeof a!="string"||I.BAD_DELIMITERS.indexOf(a)>-1)&&(a=!1),r!==`
7
+ "use strict";var __exports__=(()=>{var Pe=Object.create;var P=Object.defineProperty;var He=Object.getOwnPropertyDescriptor;var ze=Object.getOwnPropertyNames;var Ve=Object.getPrototypeOf,We=Object.prototype.hasOwnProperty;var Je=(t,e,r)=>e in t?P(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r;var $e=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ze=(t,e)=>{for(var r in e)P(t,r,{get:e[r],enumerable:!0})},Y=(t,e,r,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of ze(e))!We.call(t,n)&&n!==r&&P(t,n,{get:()=>e[n],enumerable:!(s=He(e,n))||s.enumerable});return t},K=(t,e,r)=>(Y(t,e,"default"),r&&Y(r,e,"default")),Qe=(t,e,r)=>(r=t!=null?Pe(Ve(t)):{},Y(e||!t||!t.__esModule?P(r,"default",{value:t,enumerable:!0}):r,t)),Ye=t=>Y(P({},"__esModule",{value:!0}),t);var Re=(t,e,r)=>(Je(t,typeof e!="symbol"?e+"":e,r),r);var Ce=$e((_t,Ae)=>{Ae.exports=globalThis.loaders});var $={};Ze($,{CSVLoader:()=>ne,CSVWriter:()=>qe});K($,Qe(Ce(),1));var X=class{schema;options;shape;length=0;rows=null;cursor=0;_headers=[];constructor(e,r){if(this.options=r,this.schema=e,!Array.isArray(e)){this._headers=[];for(let s in e)this._headers[e[s].index]=e[s].name}}rowCount(){return this.length}addArrayRow(e,r){Number.isFinite(r)&&(this.cursor=r),this.shape="array-row-table",this.rows=this.rows||new Array(100),this.rows[this.length]=e,this.length++}addObjectRow(e,r){Number.isFinite(r)&&(this.cursor=r),this.shape="object-row-table",this.rows=this.rows||new Array(100),this.rows[this.length]=e,this.length++}getBatch(){let e=this.rows;return e?(e=e.slice(0,this.length),this.rows=null,{shape:this.shape||"array-row-table",batchType:"data",data:e,length:this.length,schema:this.schema,cursor:this.cursor}):null}};function H(t,e){if(!t)throw new Error("null row");let r={};if(e)for(let s=0;s<e.length;s++)r[e[s]]=t[s];else for(let s=0;s<t.length;s++){let n=`column-${s}`;r[n]=t[s]}return r}function z(t,e){if(!t)throw new Error("null row");if(e){let r=new Array(e.length);for(let s=0;s<e.length;s++)r[s]=t[e[s]];return r}return Object.values(t)}function Ee(t){let e=[];for(let r=0;r<t.length;r++){let s=`column-${r}`;e.push(s)}return e}function xe(t){return Object.keys(t)}var je=100,G=class{schema;options;length=0;objectRows=null;arrayRows=null;cursor=0;_headers=null;constructor(e,r){if(this.options=r,this.schema=e,e){this._headers=[];for(let s in e)this._headers[e[s].index]=e[s].name}}rowCount(){return this.length}addArrayRow(e,r){switch(Number.isFinite(r)&&(this.cursor=r),this._headers||=Ee(e),this.options.shape){case"object-row-table":let s=H(e,this._headers);this.addObjectRow(s,r);break;case"array-row-table":this.arrayRows=this.arrayRows||new Array(je),this.arrayRows[this.length]=e,this.length++;break}}addObjectRow(e,r){switch(Number.isFinite(r)&&(this.cursor=r),this._headers||=xe(e),this.options.shape){case"array-row-table":let s=z(e,this._headers);this.addArrayRow(s,r);break;case"object-row-table":this.objectRows=this.objectRows||new Array(je),this.objectRows[this.length]=e,this.length++;break}}getBatch(){let e=this.arrayRows||this.objectRows;return e?(e=e.slice(0,this.length),this.arrayRows=null,this.objectRows=null,{shape:this.options.shape,batchType:"data",data:e,length:this.length,schema:this.schema,cursor:this.cursor}):null}};var ee=class{schema;length=0;allocated=0;columns={};constructor(e,r){this.schema=e,this._reallocateColumns()}rowCount(){return this.length}addArrayRow(e){this._reallocateColumns();let r=0;for(let s in this.columns)this.columns[s][this.length]=e[r++];this.length++}addObjectRow(e){this._reallocateColumns();for(let r in e)this.columns[r][this.length]=e[r];this.length++}getBatch(){this._pruneColumns();let e=Array.isArray(this.schema)?this.columns:{};if(!Array.isArray(this.schema))for(let s in this.schema){let n=this.schema[s];e[n.name]=this.columns[n.index]}return this.columns={},{shape:"columnar-table",batchType:"data",data:e,schema:this.schema,length:this.length}}_reallocateColumns(){if(!(this.length<this.allocated)){this.allocated=this.allocated>0?this.allocated*=2:100,this.columns={};for(let e in this.schema){let r=this.schema[e],s=r.type||Float32Array,n=this.columns[r.index];if(n&&ArrayBuffer.isView(n)){let o=new s(this.allocated);o.set(n),this.columns[r.index]=o}else n?(n.length=this.allocated,this.columns[r.index]=n):this.columns[r.index]=new s(this.allocated)}}}_pruneColumns(){for(let[e,r]of Object.entries(this.columns))this.columns[e]=r.slice(0,this.length)}};var Ke={shape:void 0,batchSize:"auto",batchDebounceMs:0,limit:0,_limitMB:0},Xe="TableBatchBuilder",te=class{schema;options;aggregator=null;batchCount=0;bytesUsed=0;isChunkComplete=!1;lastBatchEmittedMs=Date.now();totalLength=0;totalBytes=0;rowBytes=0;constructor(e,r){this.schema=e,this.options={...Ke,...r}}limitReached(){return!!(Boolean(this.options?.limit)&&this.totalLength>=this.options.limit||Boolean(this.options?._limitMB)&&this.totalBytes/1e6>=this.options._limitMB)}addRow(e){this.limitReached()||(this.totalLength++,this.rowBytes=this.rowBytes||this._estimateRowMB(e),this.totalBytes+=this.rowBytes,Array.isArray(e)?this.addArrayRow(e):this.addObjectRow(e))}addArrayRow(e){if(!this.aggregator){let r=this._getTableBatchType();this.aggregator=new r(this.schema,this.options)}this.aggregator.addArrayRow(e)}addObjectRow(e){if(!this.aggregator){let r=this._getTableBatchType();this.aggregator=new r(this.schema,this.options)}this.aggregator.addObjectRow(e)}chunkComplete(e){e instanceof ArrayBuffer&&(this.bytesUsed+=e.byteLength),typeof e=="string"&&(this.bytesUsed+=e.length),this.isChunkComplete=!0}getFullBatch(e){return this._isFull()?this._getBatch(e):null}getFinalBatch(e){return this._getBatch(e)}_estimateRowMB(e){return Array.isArray(e)?e.length*8:Object.keys(e).length*8}_isFull(){if(!this.aggregator||this.aggregator.rowCount()===0)return!1;if(this.options.batchSize==="auto"){if(!this.isChunkComplete)return!1}else if(this.options.batchSize>this.aggregator.rowCount())return!1;return this.options.batchDebounceMs>Date.now()-this.lastBatchEmittedMs?!1:(this.isChunkComplete=!1,this.lastBatchEmittedMs=Date.now(),!0)}_getBatch(e){if(!this.aggregator)return null;e?.bytesUsed&&(this.bytesUsed=e.bytesUsed);let r=this.aggregator.getBatch();return r.count=this.batchCount,r.bytesUsed=this.bytesUsed,Object.assign(r,e),this.batchCount++,this.aggregator=null,r}_getTableBatchType(){switch(this.options.shape){case"array-row-table":case"object-row-table":return G;case"columnar-table":return ee;case"arrow-table":if(!te.ArrowBatch)throw new Error(Xe);return te.ArrowBatch;default:return X}}},L=te;Re(L,"ArrowBatch");function he(t){switch(t.shape){case"array-row-table":case"object-row-table":return t.data.length;case"geojson-table":return t.features.length;case"arrow-table":return t.data.numRows;case"columnar-table":for(let r of Object.values(t.data))return r.length||0;return 0;default:throw new Error("table")}}function ce(t){if(t.schema)return t.schema.fields.length;if(he(t)===0)throw new Error("empty table");switch(t.shape){case"array-row-table":return t.data[0].length;case"object-row-table":return Object.keys(t.data[0]).length;case"geojson-table":return Object.keys(t.features[0]).length;case"columnar-table":return Object.keys(t.data).length;case"arrow-table":return t.data.numCols;default:throw new Error("table")}}function Oe(t,e,r,s){switch(t.shape){case"array-row-table":return s?Array.from(t.data[e]):t.data[e];case"object-row-table":if(t.schema){let l=r||[];for(let i=0;i<t.schema.fields.length;i++)l[i]=t.data[e][t.schema.fields[i].name];return l}return Object.values(t.data[e]);case"geojson-table":if(t.schema){let l=r||[];for(let i=0;i<t.schema.fields.length;i++)l[i]=t.features[e][t.schema.fields[i].name];return l}return Object.values(t.features[e]);case"columnar-table":if(t.schema){let l=r||[];for(let i=0;i<t.schema.fields.length;i++)l[i]=t.data[t.schema.fields[i].name][e];return l}else{let l=r||[],i=0;for(let d of Object.values(t.data))l[i]=d[e],i++;return l}case"arrow-table":let n=t.data,o=r||[],c=n.get(e),u=n.schema;for(let l=0;l<u.fields.length;l++)o[l]=c?.[u.fields[l].name];return o;default:throw new Error("shape")}}function*le(t,e=[]){let r=he(t);for(let s=0;s<r;s++)yield Oe(t,s,e)}var re=class extends Array{enqueue(e){return this.push(e)}dequeue(){return this.shift()}},M=class{_values;_settlers;_closed;constructor(){this._values=new re,this._settlers=new re,this._closed=!1}close(){for(;this._settlers.length>0;)this._settlers.dequeue().resolve({done:!0});this._closed=!0}[Symbol.asyncIterator](){return this}enqueue(e){if(this._closed)throw new Error("Closed");if(this._settlers.length>0){if(this._values.length>0)throw new Error("Illegal internal state");let r=this._settlers.dequeue();e instanceof Error?r.reject(e):r.resolve({value:e})}else this._values.enqueue(e)}next(){if(this._values.length>0){let e=this._values.dequeue();return e instanceof Error?Promise.reject(e):Promise.resolve({value:e})}if(this._closed){if(this._settlers.length>0)throw new Error("Illegal internal state");return Promise.resolve({done:!0})}return new Promise((e,r)=>{this._settlers.enqueue({resolve:e,reject:r})})}};var Fe="\uFEFF";function Ge(t,e={},r=ue){e=e||{};var s=e.dynamicTyping||!1;F(s)&&(e.dynamicTypingFunction=s,s={}),e.dynamicTyping=s,e.transform=F(e.transform)?e.transform:!1;var n=new r(e);return n.stream(t)}function et(t,e){var r=!1,s=!0,n=",",o=`\r
8
+ `,c='"',u=c+c,l=!1,i=null;a();var d=new RegExp(V(c),"g");if(typeof t=="string"&&(t=JSON.parse(t)),Array.isArray(t)){if(!t.length||Array.isArray(t[0]))return m(null,t,l);if(typeof t[0]=="object")return m(i||Object.keys(t[0]),t,l)}else if(typeof t=="object")return typeof t.data=="string"&&(t.data=JSON.parse(t.data)),Array.isArray(t.data)&&(t.fields||(t.fields=t.meta&&t.meta.fields),t.fields||(t.fields=Array.isArray(t.data[0])?t.fields:Object.keys(t.data[0])),!Array.isArray(t.data[0])&&typeof t.data[0]!="object"&&(t.data=[t.data])),m(t.fields||[],t.data||[],l);throw new Error("Unable to serialize unrecognized input");function a(){if(typeof e=="object"){if(typeof e.delimiter=="string"&&!D.BAD_DELIMITERS.filter(function(h){return e.delimiter.indexOf(h)!==-1}).length&&(n=e.delimiter),(typeof e.quotes=="boolean"||Array.isArray(e.quotes))&&(r=e.quotes),(typeof e.skipEmptyLines=="boolean"||typeof e.skipEmptyLines=="string")&&(l=e.skipEmptyLines),typeof e.newline=="string"&&(o=e.newline),typeof e.quoteChar=="string"&&(c=e.quoteChar),typeof e.header=="boolean"&&(s=e.header),Array.isArray(e.columns)){if(e.columns.length===0)throw new Error("Option columns is empty");i=e.columns}e.escapeChar!==void 0&&(u=e.escapeChar+c)}}function m(h,f,w){var T="";typeof h=="string"&&(h=JSON.parse(h)),typeof f=="string"&&(f=JSON.parse(f));var p=Array.isArray(h)&&h.length>0,S=!Array.isArray(f[0]);if(p&&s){for(var b=0;b<h.length;b++)b>0&&(T+=n),T+=g(h[b],b);f.length>0&&(T+=o)}for(var v=0;v<f.length;v++){var O=p?h.length:f[v].length,E=!1,j=p?Object.keys(f[v]).length===0:f[v].length===0;if(w&&!p&&(E=w==="greedy"?f[v].join("").trim()==="":f[v].length===1&&f[v][0].length===0),w==="greedy"&&p){for(var C=[],k=0;k<O;k++){var _=S?h[k]:k;C.push(f[v][_])}E=C.join("").trim()===""}if(!E){for(var B=0;B<O;B++){B>0&&!j&&(T+=n);var oe=p&&S?h[B]:B;T+=g(f[v][oe],B)}v<f.length-1&&(!w||O>0&&!j)&&(T+=o)}}return T}function g(h,f){if(typeof h>"u"||h===null)return"";if(h.constructor===Date)return JSON.stringify(h).slice(1,25);h=h.toString().replace(d,u);var w=typeof r=="boolean"&&r||Array.isArray(r)&&r[f]||y(h,D.BAD_DELIMITERS)||h.indexOf(n)>-1||h.charAt(0)===" "||h.charAt(h.length-1)===" ";return w?c+h+c:h}function y(h,f){for(var w=0;w<f.length;w++)if(h.indexOf(f[w])>-1)return!0;return!1}}var se=class{_handle;_config;_finished=!1;_completed=!1;_input=null;_baseIndex=0;_partialLine="";_rowCount=0;_start=0;isFirstChunk=!0;_completeResults={data:[],errors:[],meta:{}};constructor(e){var r={...e};r.chunkSize=parseInt(r.chunkSize),!e.step&&!e.chunk&&(r.chunkSize=null),this._handle=new ae(r),this._handle.streamer=this,this._config=r}parseChunk(e,r){if(this.isFirstChunk&&F(this._config.beforeFirstChunk)){var s=this._config.beforeFirstChunk(e);s!==void 0&&(e=s)}this.isFirstChunk=!1;var n=this._partialLine+e;this._partialLine="";var o=this._handle.parse(n,this._baseIndex,!this._finished);if(!(this._handle.paused()||this._handle.aborted())){var c=o.meta.cursor;this._finished||(this._partialLine=n.substring(c-this._baseIndex),this._baseIndex=c),o&&o.data&&(this._rowCount+=o.data.length);var u=this._finished||this._config.preview&&this._rowCount>=this._config.preview;if(F(this._config.chunk)&&!r){if(this._config.chunk(o,this._handle),this._handle.paused()||this._handle.aborted())return;o=void 0,this._completeResults=void 0}return!this._config.step&&!this._config.chunk&&(this._completeResults.data=this._completeResults.data.concat(o.data),this._completeResults.errors=this._completeResults.errors.concat(o.errors),this._completeResults.meta=o.meta),!this._completed&&u&&F(this._config.complete)&&(!o||!o.meta.aborted)&&(this._config.complete(this._completeResults,this._input),this._completed=!0),o}}_sendError(e){F(this._config.error)&&this._config.error(e)}},ue=class extends se{remaining;constructor(e={}){super(e)}stream(e){return this.remaining=e,this._nextChunk()}_nextChunk(){if(!this._finished){var e=this._config.chunkSize,r=e?this.remaining.substr(0,e):this.remaining;return this.remaining=e?this.remaining.substr(e):"",this._finished=!this.remaining,this.parseChunk(r)}}},tt=/^\s*-?(\d*\.?\d+|\d+\.?\d*)(e[-+]?\d+)?\s*$/i,rt=/(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))/,ae=class{_config;_stepCounter=0;_rowCounter=0;_input;_parser;_paused=!1;_aborted=!1;_delimiterError=!1;_fields=[];_results={data:[],errors:[],meta:{}};constructor(e){if(F(e.step)){var r=e.step;e.step=s=>{if(this._results=s,this.needsHeaderRow())this.processResults();else{if(this.processResults(),!this._results.data||this._results.data.length===0)return;this._stepCounter+=s.data.length,e.preview&&this._stepCounter>e.preview?this._parser.abort():r(this._results,this)}}}this._config=e}parse(e,r,s){var n=this._config.quoteChar||'"';if(this._config.newline||(this._config.newline=st(e,n)),this._delimiterError=!1,this._config.delimiter)F(this._config.delimiter)&&(this._config.delimiter=this._config.delimiter(e),this._results.meta.delimiter=this._config.delimiter);else{var o=this.guessDelimiter(e,this._config.newline,this._config.skipEmptyLines,this._config.comments,this._config.delimitersToGuess);o.successful?this._config.delimiter=o.bestDelimiter:(this._delimiterError=!0,this._config.delimiter=D.DefaultDelimiter),this._results.meta.delimiter=this._config.delimiter}var c=Se(this._config);return this._config.preview&&this._config.header&&c.preview++,this._input=e,this._parser=new fe(c),this._results=this._parser.parse(this._input,r,s),this.processResults(),this._paused?{meta:{paused:!0}}:this._results||{meta:{paused:!1}}}paused(){return this._paused}pause(){this._paused=!0,this._parser.abort(),this._input=this._input.substr(this._parser.getCharIndex())}resume(){this._paused=!1,this.streamer.parseChunk(this._input,!0)}aborted(){return this._aborted}abort(){this._aborted=!0,this._parser.abort(),this._results.meta.aborted=!0,F(this._config.complete)&&this._config.complete(this._results),this._input=""}testEmptyLine(e){return this._config.skipEmptyLines==="greedy"?e.join("").trim()==="":e.length===1&&e[0].length===0}processResults(){if(this._results&&this._delimiterError&&(this.addError("Delimiter","UndetectableDelimiter","Unable to auto-detect delimiting character; defaulted to '"+D.DefaultDelimiter+"'"),this._delimiterError=!1),this._config.skipEmptyLines)for(var e=0;e<this._results.data.length;e++)this.testEmptyLine(this._results.data[e])&&this._results.data.splice(e--,1);return this.needsHeaderRow()&&this.fillHeaderFields(),this.applyHeaderAndDynamicTypingAndTransformation()}needsHeaderRow(){return this._config.header&&this._fields.length===0}fillHeaderFields(){if(!this._results)return;let e=s=>{F(this._config.transformHeader)&&(s=this._config.transformHeader(s)),this._fields.push(s)};if(Array.isArray(this._results.data[0])){for(var r=0;this.needsHeaderRow()&&r<this._results.data.length;r++)this._results.data[r].forEach(e);this._results.data.splice(0,1)}else this._results.data.forEach(e)}shouldApplyDynamicTyping(e){return this._config.dynamicTypingFunction&&this._config.dynamicTyping[e]===void 0&&(this._config.dynamicTyping[e]=this._config.dynamicTypingFunction(e)),(this._config.dynamicTyping[e]||this._config.dynamicTyping)===!0}parseDynamic(e,r){return this.shouldApplyDynamicTyping(e)?r==="true"||r==="TRUE"?!0:r==="false"||r==="FALSE"?!1:tt.test(r)?parseFloat(r):rt.test(r)?new Date(r):r===""?null:r:r}applyHeaderAndDynamicTypingAndTransformation(){if(!this._results||!this._results.data||!this._config.header&&!this._config.dynamicTyping&&!this._config.transform)return this._results;var e=1;return!this._results.data[0]||Array.isArray(this._results.data[0])?(this._results.data=this._results.data.map(this.processRow.bind(this)),e=this._results.data.length):this._results.data=this.processRow(this._results.data,0),this._config.header&&this._results.meta&&(this._results.meta.fields=this._fields),this._rowCounter+=e,this._results}processRow(e,r){var s=this._config.header?{}:[],n;for(n=0;n<e.length;n++){var o=n,c=e[n];this._config.header&&(o=n>=this._fields.length?"__parsed_extra":this._fields[n]),this._config.transform&&(c=this._config.transform(c,o)),c=this.parseDynamic(o,c),o==="__parsed_extra"?(s[o]=s[o]||[],s[o].push(c)):s[o]=c}return this._config.header&&(n>this._fields.length?this.addError("FieldMismatch","TooManyFields","Too many fields: expected "+this._fields.length+" fields but parsed "+n,this._rowCounter+r):n<this._fields.length&&this.addError("FieldMismatch","TooFewFields","Too few fields: expected "+this._fields.length+" fields but parsed "+n,this._rowCounter+r)),s}guessDelimiter(e,r,s,n,o){var c,u,l;o=o||[","," ","|",";",D.RECORD_SEP,D.UNIT_SEP];for(var i=0;i<o.length;i++){var d=o[i],a=0,m=0,g=0;l=void 0;for(var y=new fe({comments:n,delimiter:d,newline:r,preview:10}).parse(e),h=0;h<y.data.length;h++){if(s&&this.testEmptyLine(y.data[h])){g++;continue}var f=y.data[h].length;if(m+=f,typeof l>"u"){l=0;continue}else f>1&&(a+=Math.abs(f-l),l=f)}y.data.length>0&&(m/=y.data.length-g),(typeof u>"u"||a>u)&&m>1.99&&(u=a,c=d)}return this._config.delimiter=c,{successful:!!c,bestDelimiter:c}}addError(e,r,s,n){this._results.errors.push({type:e,code:r,message:s,row:n})}};function st(t,e){t=t.substr(0,1024*1024);var r=new RegExp(V(e)+"([^]*?)"+V(e),"gm");t=t.replace(r,"");var s=t.split("\r"),n=t.split(`
9
+ `),o=n.length>1&&n[0].length<s[0].length;if(s.length===1||o)return`
10
+ `;for(var c=0,u=0;u<s.length;u++)s[u][0]===`
11
+ `&&c++;return c>=s.length/2?`\r
12
+ `:"\r"}function V(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function fe(t){t=t||{};var e=t.delimiter,r=t.newline,s=t.comments,n=t.step,o=t.preview,c=t.fastMode,u;t.quoteChar===void 0?u='"':u=t.quoteChar;var l=u;if(t.escapeChar!==void 0&&(l=t.escapeChar),(typeof e!="string"||D.BAD_DELIMITERS.indexOf(e)>-1)&&(e=","),s===e)throw new Error("Comment character same as delimiter");s===!0?s="#":(typeof s!="string"||D.BAD_DELIMITERS.indexOf(s)>-1)&&(s=!1),r!==`
14
13
  `&&r!=="\r"&&r!==`\r
15
14
  `&&(r=`
16
- `);var n=0,y=!1;this.parse=function(s,i,v){if(typeof s!="string")throw new Error("Input must be a string");var j=s.length,A=e.length,f=r.length,w=a.length,T=N(o);n=0;var b=[],D=[],C=[],B=0;if(!s)return O();if(h||h!==!1&&s.indexOf(d)===-1){for(var x=s.split(r),l=0;l<x.length;l++){if(C=x[l],n+=C.length,l!==x.length-1)n+=r.length;else if(v)return O();if(!(a&&C.substr(0,w)===a)){if(T){if(b=[],M(C.split(e)),_(),y)return O()}else M(C.split(e));if(c&&l>=c)return b=b.slice(0,c),O(!0)}}return O()}for(var m=s.indexOf(e,n),g=s.indexOf(r,n),S=new RegExp(G(u)+G(d),"g"),p;;){if(s[n]===d){for(p=n,n++;;){if(p=s.indexOf(d,p+1),p===-1)return v||D.push({type:"Quotes",code:"MissingQuotes",message:"Quoted field unterminated",row:b.length,index:n}),L();if(p===j-1){var R=s.substring(n,p).replace(S,d);return L(R)}if(d===u&&s[p+1]===u){p++;continue}if(!(d!==u&&p!==0&&s[p-1]===u)){var E=g===-1?m:Math.min(m,g),k=z(E);if(s[p+1+k]===e){if(C.push(s.substring(n,p).replace(S,d)),n=p+1+k+A,m=s.indexOf(e,n),g=s.indexOf(r,n),T&&(_(),y))return O();if(c&&b.length>=c)return O(!0);break}var q=z(g);if(s.substr(p+1+q,f)===r){if(C.push(s.substring(n,p).replace(S,d)),Z(p+1+q+f),m=s.indexOf(e,n),T&&(_(),y))return O();if(c&&b.length>=c)return O(!0);break}D.push({type:"Quotes",code:"InvalidQuotes",message:"Trailing quote on quoted field is malformed",row:b.length,index:n}),p++}}if(T&&(_(),y))return O();if(c&&b.length>=c)return O(!0);continue}if(a&&C.length===0&&s.substr(n,w)===a){if(g===-1)return O();n=g+f,g=s.indexOf(r,n),m=s.indexOf(e,n);continue}if(m!==-1&&(m<g||g===-1)){C.push(s.substring(n,m)),n=m+A,m=s.indexOf(e,n);continue}if(g!==-1){if(C.push(s.substring(n,g)),Z(g+f),T&&(_(),y))return O();if(c&&b.length>=c)return O(!0);continue}break}return L();function M(F){b.push(F),B=n}function z(F){var re=0;if(F!==-1){var K=s.substring(p+1,F);K&&K.trim()===""&&(re=K.length)}return re}function L(F){return v||(typeof F>"u"&&(F=s.substr(n)),C.push(F),n=j,M(C),T&&_()),O()}function Z(F){n=F,M(C),C=[],g=s.indexOf(r,n)}function O(F,re){var K=re||!1;return{data:K?b[0]:b,errors:D,meta:{delimiter:e,linebreak:r,aborted:y,truncated:!!F,cursor:B+(i||0)}}}function _(){o(O(void 0,!0)),b=[],D=[]}},this.abort=function(){y=!0},this.getCharIndex=function(){return n}}function pe(t){if(typeof t!="object"||t===null)return t;var e=Array.isArray(t)?[]:{};for(var r in t)e[r]=pe(t[r]);return e}function N(t){return typeof t=="function"}var{ChunkStreamer:De}=J;function $(t){t=t||{},De.call(this,t),this.textDecoder=new TextDecoder(this._config.encoding),this.stream=async function(e){this._input=e;try{for await(let r of e)this.parseChunk(this.getStringChunk(r));this._finished=!0,this.parseChunk("")}catch(r){this._sendError(r)}},this._nextChunk=function(){},this.getStringChunk=function(e){return typeof e=="string"?e:this.textDecoder.decode(e,{stream:!0})}}$.prototype=Object.create(De.prototype);$.prototype.constructor=$;var rt="4.3.0-alpha.6",ye="object-row-table",ce={dataType:null,batchType:null,id:"csv",module:"csv",name:"CSV",version:rt,extensions:["csv","tsv","dsv"],mimeTypes:["text/csv","text/tab-separated-values","text/dsv"],category:"table",parse:async(t,e)=>Be(new TextDecoder().decode(t),e),parseText:(t,e)=>Be(t,e),parseInBatches:at,options:{csv:{shape:ye,optimizeMemoryUsage:!1,header:"auto",columnPrefix:"column",quoteChar:'"',escapeChar:'"',dynamicTyping:!0,comments:!1,skipEmptyLines:!0,delimitersToGuess:[","," ","|",";"]}}};async function Be(t,e){let r={...ce.options.csv,...e?.csv},a=st(t),c=r.header==="auto"?Ne(a):Boolean(r.header),h={...r,header:c,download:!1,transformHeader:c?Ue():void 0,error:s=>{throw new Error(s)}},d=J.parse(t,h),u=d.data,n=d.meta.fields||_e(r.columnPrefix,a.length),y=r.shape||ye;switch(y){case"object-row-table":return{shape:"object-row-table",data:u.map(s=>Array.isArray(s)?Y(s,n):s)};case"array-row-table":return{shape:"array-row-table",data:u.map(s=>Array.isArray(s)?s:X(s,n))};default:throw new Error(y)}}function at(t,e){e={...e},e.batchSize==="auto"&&(e.batchSize=4e3);let r={...ce.options.csv,...e?.csv},a=new V,o=!0,c=null,h=null,d=null,u={...r,header:!1,download:!1,chunkSize:1024*1024*5,skipEmptyLines:!1,step(n){let y=n.data;if(r.skipEmptyLines&&y.flat().join("").trim()==="")return;let s=n.meta.cursor;if(o&&!c&&(r.header==="auto"?Ne(y):Boolean(r.header))){c=y.map(Ue());return}o&&(o=!1,c||(c=_e(r.columnPrefix,y.length)),d=nt(y,c)),r.optimizeMemoryUsage&&(y=JSON.parse(JSON.stringify(y)));let i=r.shape||ye;h=h||new H(d,{shape:i,...e});try{h.addRow(y);let v=h&&h.getFullBatch({bytesUsed:s});v&&a.enqueue(v)}catch(v){a.enqueue(v)}},complete(n){try{let y=n.meta.cursor,s=h&&h.getFinalBatch({bytesUsed:y});s&&a.enqueue(s)}catch(y){a.enqueue(y)}a.close()}};return J.parse(t,u,$),a}function Ne(t){return t&&t.every(e=>typeof e=="string")}function st(t){return J.parse(t,{download:!1,dynamicTyping:!0,preview:1}).data[0]}function Ue(){let t=new Set;return e=>{let r=e,a=1;for(;t.has(r);)r=`${e}.${a}`,a++;return t.add(r),r}}function _e(t,e=0){let r=[];for(let a=0;a<e;a++)r.push(`${t}${a+1}`);return r}function nt(t,e){let r=e?{}:[];for(let a=0;a<t.length;a++){let o=e&&e[a]||a;switch(typeof t[a]){case"number":case"boolean":r[o]={name:String(o),index:a,type:Float32Array};break;case"string":default:r[o]={name:String(o),index:a,type:Array}}}return r}var Ie={},we={},ge=34,ee=10,be=13;function Le(t){return new Function("d","return {"+t.map(function(e,r){return JSON.stringify(e)+": d["+r+'] || ""'}).join(",")+"}")}function ot(t,e){var r=Le(t);return function(a,o){return e(r(a),o,t)}}function Me(t){var e=Object.create(null),r=[];return t.forEach(function(a){for(var o in a)o in e||r.push(e[o]=o)}),r}function U(t,e){var r=t+"",a=r.length;return a<e?new Array(e-a+1).join(0)+r:r}function it(t){return t<0?"-"+U(-t,6):t>9999?"+"+U(t,6):U(t,4)}function lt(t){var e=t.getUTCHours(),r=t.getUTCMinutes(),a=t.getUTCSeconds(),o=t.getUTCMilliseconds();return isNaN(t)?"Invalid Date":it(t.getUTCFullYear(),4)+"-"+U(t.getUTCMonth()+1,2)+"-"+U(t.getUTCDate(),2)+(o?"T"+U(e,2)+":"+U(r,2)+":"+U(a,2)+"."+U(o,3)+"Z":a?"T"+U(e,2)+":"+U(r,2)+":"+U(a,2)+"Z":r||e?"T"+U(e,2)+":"+U(r,2)+"Z":"")}function Pe(t){var e=new RegExp('["'+t+`
17
- \r]`),r=t.charCodeAt(0);function a(s,i){var v,j,A=o(s,function(f,w){if(v)return v(f,w-1);j=f,v=i?ot(f,i):Le(f)});return A.columns=j||[],A}function o(s,i){var v=[],j=s.length,A=0,f=0,w,T=j<=0,b=!1;s.charCodeAt(j-1)===ee&&--j,s.charCodeAt(j-1)===be&&--j;function D(){if(T)return we;if(b)return b=!1,Ie;var B,x=A,l;if(s.charCodeAt(x)===ge){for(;A++<j&&s.charCodeAt(A)!==ge||s.charCodeAt(++A)===ge;);return(B=A)>=j?T=!0:(l=s.charCodeAt(A++))===ee?b=!0:l===be&&(b=!0,s.charCodeAt(A)===ee&&++A),s.slice(x+1,B-1).replace(/""/g,'"')}for(;A<j;){if((l=s.charCodeAt(B=A++))===ee)b=!0;else if(l===be)b=!0,s.charCodeAt(A)===ee&&++A;else if(l!==r)continue;return s.slice(x,B)}return T=!0,s.slice(x,j)}for(;(w=D())!==we;){for(var C=[];w!==Ie&&w!==we;)C.push(w),w=D();i&&(C=i(C,f++))==null||v.push(C)}return v}function c(s,i){return s.map(function(v){return i.map(function(j){return y(v[j])}).join(t)})}function h(s,i){return i==null&&(i=Me(s)),[i.map(y).join(t)].concat(c(s,i)).join(`
18
- `)}function d(s,i){return i==null&&(i=Me(s)),c(s,i).join(`
19
- `)}function u(s){return s.map(n).join(`
20
- `)}function n(s){return s.map(y).join(t)}function y(s){return s==null?"":s instanceof Date?lt(s):e.test(s+="")?'"'+s.replace(/"/g,'""')+'"':s}return{parse:a,parseRows:o,format:h,formatBody:d,formatRows:u,formatRow:n,formatValue:y}}var P=Pe(","),ht=P.parse,ct=P.parseRows,ut=P.format,ft=P.formatBody,ve=P.formatRows,dt=P.formatRow,mt=P.formatValue;function Te(t,e={csv:{useDisplayNames:!0}}){let r=e.useDisplayNames||e.csv?.useDisplayNames,c=[(t.schema?.fields||[]).map(h=>{let d=h.metadata?.displayName;return r&&typeof d=="string"?d:h.name})];for(let h of de(t)){let d=[];for(let u=0;u<fe(t);++u){let n=h[u];d[u]=pt(n)}c.push(d)}return ve(c)}var pt=t=>t==null?null:t instanceof Date?t.toISOString():typeof t=="object"?JSON.stringify(t):String(t);var qe={id:"csv",version:"latest",module:"csv",name:"CSV",extensions:["csv"],mimeTypes:["text/csv"],options:{csv:{useDisplayNames:!1}},text:!0,encode:async(t,e)=>new TextEncoder().encode(Te(t,e)).buffer,encodeTextSync:(t,e)=>Te(t,e)};return Ye(te);})();
15
+ `);var i=0,d=!1;this.parse=function(a,m,g){if(typeof a!="string")throw new Error("Input must be a string");var y=a.length,h=e.length,f=r.length,w=s.length,T=F(n);i=0;var p=[],S=[],b=[],v=0;if(!a)return R();if(c||c!==!1&&a.indexOf(u)===-1){for(var O=a.split(r),E=0;E<O.length;E++){let A=O[E];if(i+=A.length,E!==O.length-1)i+=r.length;else if(g)return R();if(!(s&&A.substr(0,w)===s)){if(T){if(p=[],Z(A.split(e)),U(),d)return R()}else Z(A.split(e));if(o&&E>=o)return p=p.slice(0,o),R(!0)}}return R()}for(var j=a.indexOf(e,i),C=a.indexOf(r,i),k=new RegExp(V(l)+V(u),"g"),_;;){if(a[i]===u){for(_=i,i++;;){if(_=a.indexOf(u,_+1),_===-1)return g||S.push({type:"Quotes",code:"MissingQuotes",message:"Quoted field unterminated",row:p.length,index:i}),ie();if(_===y-1){var B=a.substring(i,_).replace(k,u);return ie(B)}if(u===l&&a[_+1]===l){_++;continue}if(!(u!==l&&_!==0&&a[_-1]===l)){var oe=C===-1?j:Math.min(j,C),be=ve(oe);if(a[_+1+be]===e){if(b.push(a.substring(i,_).replace(k,u)),i=_+1+be+h,j=a.indexOf(e,i),C=a.indexOf(r,i),T&&(U(),d))return R();if(o&&p.length>=o)return R(!0);break}var _e=ve(C);if(a.substr(_+1+_e,f)===r){if(b.push(a.substring(i,_).replace(k,u)),Te(_+1+_e+f),j=a.indexOf(e,i),T&&(U(),d))return R();if(o&&p.length>=o)return R(!0);break}S.push({type:"Quotes",code:"InvalidQuotes",message:"Trailing quote on quoted field is malformed",row:p.length,index:i}),_++}}if(T&&(U(),d))return R();if(o&&p.length>=o)return R(!0);continue}if(s&&b.length===0&&a.substr(i,w)===s){if(C===-1)return R();i=C+f,C=a.indexOf(r,i),j=a.indexOf(e,i);continue}if(j!==-1&&(j<C||C===-1)){b.push(a.substring(i,j)),i=j+h,j=a.indexOf(e,i);continue}if(C!==-1){if(b.push(a.substring(i,C)),Te(C+f),T&&(U(),d))return R();if(o&&p.length>=o)return R(!0);continue}break}return ie();function Z(A){p.push(A),v=i}function ve(A){var Q=0;if(A!==-1){var q=a.substring(_+1,A);q&&q.trim()===""&&(Q=q.length)}return Q}function ie(A){return g||(typeof A>"u"&&(A=a.substr(i)),b.push(A),i=y,Z(b),T&&U()),R()}function Te(A){i=A,Z(b),b=[],C=a.indexOf(r,i)}function R(A,Q){var q=Q||!1;return{data:q?p[0]:p,errors:S,meta:{delimiter:e,linebreak:r,aborted:d,truncated:!!A,cursor:v+(m||0)}}}function U(){n(R(void 0,!0)),p=[],S=[]}},this.abort=function(){d=!0},this.getCharIndex=function(){return i}}function Se(t){if(typeof t!="object"||t===null)return t;var e=Array.isArray(t)?[]:{};for(var r in t)e[r]=Se(t[r]);return e}function F(t){return typeof t=="function"}var D={parse:Ge,unparse:et,RECORD_SEP:String.fromCharCode(30),UNIT_SEP:String.fromCharCode(31),BYTE_ORDER_MARK:Fe,BAD_DELIMITERS:["\r",`
16
+ `,'"',Fe],WORKERS_SUPPORTED:!1,NODE_STREAM_INPUT:1,LocalChunkSize:1024*1024*10,RemoteChunkSize:1024*1024*5,DefaultDelimiter:",",Parser:fe,ParserHandle:ae,ChunkStreamer:se},I=D;var{ChunkStreamer:at}=I,W=class extends at{textDecoder=new TextDecoder(this._config.encoding);constructor(e={}){super(e)}async stream(e){this._input=e;try{for await(let r of e)this.parseChunk(this.getStringChunk(r));this._finished=!0,this.parseChunk("")}catch(r){this._sendError(r)}}_nextChunk(){}getStringChunk(e){return typeof e=="string"?e:this.textDecoder.decode(e,{stream:!0})}};var nt="4.3.0-alpha.8",de="object-row-table",ne={dataType:null,batchType:null,id:"csv",module:"csv",name:"CSV",version:nt,extensions:["csv","tsv","dsv"],mimeTypes:["text/csv","text/tab-separated-values","text/dsv"],category:"table",parse:async(t,e)=>De(new TextDecoder().decode(t),e),parseText:(t,e)=>De(t,e),parseInBatches:ot,options:{csv:{shape:de,optimizeMemoryUsage:!1,header:"auto",columnPrefix:"column",quoteChar:'"',escapeChar:'"',dynamicTyping:!0,comments:!1,skipEmptyLines:!0,delimitersToGuess:[","," ","|",";"]}}};async function De(t,e){let r={...ne.options.csv,...e?.csv},s=it(t),o=r.header==="auto"?ke(s):Boolean(r.header),c={...r,header:o,download:!1,transformHeader:o?Be():void 0,error:a=>{throw new Error(a)}},u=I.parse(t,c),l=u.data,i=u.meta.fields||Ne(r.columnPrefix,s.length),d=r.shape||de;switch(d){case"object-row-table":return{shape:"object-row-table",data:l.map(a=>Array.isArray(a)?H(a,i):a)};case"array-row-table":return{shape:"array-row-table",data:l.map(a=>Array.isArray(a)?a:z(a,i))};default:throw new Error(d)}}function ot(t,e){e={...e},e.batchSize==="auto"&&(e.batchSize=4e3);let r={...ne.options.csv,...e?.csv},s=new M,n=!0,o=null,c=null,u=null,l={...r,header:!1,download:!1,chunkSize:1024*1024*5,skipEmptyLines:!1,step(i){let d=i.data;if(r.skipEmptyLines&&d.flat().join("").trim()==="")return;let a=i.meta.cursor;if(n&&!o&&(r.header==="auto"?ke(d):Boolean(r.header))){o=d.map(Be());return}n&&(n=!1,o||(o=Ne(r.columnPrefix,d.length)),u=ht(d,o)),r.optimizeMemoryUsage&&(d=JSON.parse(JSON.stringify(d)));let m=r.shape||de;c=c||new L(u,{shape:m,...e});try{c.addRow(d);let g=c&&c.getFullBatch({bytesUsed:a});g&&s.enqueue(g)}catch(g){s.enqueue(g)}},complete(i){try{let d=i.meta.cursor,a=c&&c.getFinalBatch({bytesUsed:d});a&&s.enqueue(a)}catch(d){s.enqueue(d)}s.close()}};return I.parse(t,l,W),s}function ke(t){return t&&t.every(e=>typeof e=="string")}function it(t){return I.parse(t,{dynamicTyping:!0,preview:1}).data[0]}function Be(){let t=new Set;return e=>{let r=e,s=1;for(;t.has(r);)r=`${e}.${s}`,s++;return t.add(r),r}}function Ne(t,e=0){let r=[];for(let s=0;s<e;s++)r.push(`${t}${s+1}`);return r}function ht(t,e){let r=e?{}:[];for(let s=0;s<t.length;s++){let n=e&&e[s]||s;switch(typeof t[s]){case"number":case"boolean":r[n]={name:String(n),index:s,type:Float32Array};break;case"string":default:r[n]={name:String(n),index:s,type:Array}}}return r}var Ue={},me={},pe=34,J=10,ge=13;function Me(t){return new Function("d","return {"+t.map(function(e,r){return JSON.stringify(e)+": d["+r+'] || ""'}).join(",")+"}")}function ct(t,e){var r=Me(t);return function(s,n){return e(r(s),n,t)}}function Le(t){var e=Object.create(null),r=[];return t.forEach(function(s){for(var n in s)n in e||r.push(e[n]=n)}),r}function x(t,e){var r=t+"",s=r.length;return s<e?new Array(e-s+1).join(0)+r:r}function lt(t){return t<0?"-"+x(-t,6):t>9999?"+"+x(t,6):x(t,4)}function ut(t){var e=t.getUTCHours(),r=t.getUTCMinutes(),s=t.getUTCSeconds(),n=t.getUTCMilliseconds();return isNaN(t)?"Invalid Date":lt(t.getUTCFullYear(),4)+"-"+x(t.getUTCMonth()+1,2)+"-"+x(t.getUTCDate(),2)+(n?"T"+x(e,2)+":"+x(r,2)+":"+x(s,2)+"."+x(n,3)+"Z":s?"T"+x(e,2)+":"+x(r,2)+":"+x(s,2)+"Z":r||e?"T"+x(e,2)+":"+x(r,2)+"Z":"")}function Ie(t){var e=new RegExp('["'+t+`
17
+ \r]`),r=t.charCodeAt(0);function s(a,m){var g,y,h=n(a,function(f,w){if(g)return g(f,w-1);y=f,g=m?ct(f,m):Me(f)});return h.columns=y||[],h}function n(a,m){var g=[],y=a.length,h=0,f=0,w,T=y<=0,p=!1;a.charCodeAt(y-1)===J&&--y,a.charCodeAt(y-1)===ge&&--y;function S(){if(T)return me;if(p)return p=!1,Ue;var v,O=h,E;if(a.charCodeAt(O)===pe){for(;h++<y&&a.charCodeAt(h)!==pe||a.charCodeAt(++h)===pe;);return(v=h)>=y?T=!0:(E=a.charCodeAt(h++))===J?p=!0:E===ge&&(p=!0,a.charCodeAt(h)===J&&++h),a.slice(O+1,v-1).replace(/""/g,'"')}for(;h<y;){if((E=a.charCodeAt(v=h++))===J)p=!0;else if(E===ge)p=!0,a.charCodeAt(h)===J&&++h;else if(E!==r)continue;return a.slice(O,v)}return T=!0,a.slice(O,y)}for(;(w=S())!==me;){for(var b=[];w!==Ue&&w!==me;)b.push(w),w=S();m&&(b=m(b,f++))==null||g.push(b)}return g}function o(a,m){return a.map(function(g){return m.map(function(y){return d(g[y])}).join(t)})}function c(a,m){return m==null&&(m=Le(a)),[m.map(d).join(t)].concat(o(a,m)).join(`
18
+ `)}function u(a,m){return m==null&&(m=Le(a)),o(a,m).join(`
19
+ `)}function l(a){return a.map(i).join(`
20
+ `)}function i(a){return a.map(d).join(t)}function d(a){return a==null?"":a instanceof Date?ut(a):e.test(a+="")?'"'+a.replace(/"/g,'""')+'"':a}return{parse:s,parseRows:n,format:c,formatBody:u,formatRows:l,formatRow:i,formatValue:d}}var N=Ie(","),ft=N.parse,dt=N.parseRows,mt=N.format,pt=N.formatBody,ye=N.formatRows,gt=N.formatRow,yt=N.formatValue;function we(t,e={csv:{useDisplayNames:!0}}){let r=e.useDisplayNames||e.csv?.useDisplayNames,o=[(t.schema?.fields||[]).map(c=>{let u=c.metadata?.displayName;return r&&typeof u=="string"?u:c.name})];for(let c of le(t)){let u=[];for(let l=0;l<ce(t);++l){let i=c[l];u[l]=wt(i)}o.push(u)}return ye(o)}var wt=t=>t==null?null:t instanceof Date?t.toISOString():typeof t=="object"?JSON.stringify(t):String(t);var qe={id:"csv",version:"latest",module:"csv",name:"CSV",extensions:["csv"],mimeTypes:["text/csv"],options:{csv:{useDisplayNames:!1}},text:!0,encode:async(t,e)=>new TextEncoder().encode(we(t,e)).buffer,encodeTextSync:(t,e)=>we(t,e)};return Ye($);})();
21
21
  /* @license
22
22
  Papa Parse
23
23
  v5.0.0-beta.0