@duckdb/duckdb-wasm 1.16.0 → 1.16.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.
@@ -1,2 +1,2 @@
1
- "use strict";var ce=Object.create;var y=Object.defineProperty;var de=Object.getOwnPropertyDescriptor;var le=Object.getOwnPropertyNames;var Ee=Object.getPrototypeOf,ue=Object.prototype.hasOwnProperty;var H=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),pe=(t,e)=>{for(var r in e)y(t,r,{get:e[r],enumerable:!0})},K=(t,e,r,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of le(e))!ue.call(t,n)&&n!==r&&y(t,n,{get:()=>e[n],enumerable:!(s=de(e,n))||s.enumerable});return t};var b=(t,e,r)=>(r=t!=null?ce(Ee(t)):{},K(e||!t||!t.__esModule?y(r,"default",{value:t,enumerable:!0}):r,t)),Te=t=>K(y({},"__esModule",{value:!0}),t);var ee=H((Xe,X)=>{"use strict";var ge=async t=>{try{return(await WebAssembly.instantiate(t)).instance.exports.b(BigInt(0))===BigInt(0)}catch{return!1}},ye=async t=>{try{return typeof MessageChannel<"u"&&new MessageChannel().port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(t)}catch{return!1}},be={bigInt:()=>ge(new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,126,1,126,3,2,1,0,7,5,1,1,98,0,0,10,6,1,4,0,32,0,11])),bulkMemory:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,3,1,0,1,10,14,1,12,0,65,0,65,0,65,0,252,10,0,0,11])),exceptions:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,8,1,6,0,6,64,25,11,11])),multiValue:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,0,2,127,127,3,2,1,0,10,8,1,6,0,65,0,65,0,11])),mutableGlobals:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,2,8,1,1,97,1,98,3,127,1,6,6,1,127,1,65,0,11,7,5,1,1,97,3,1])),referenceTypes:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,7,1,5,0,208,112,26,11])),saturatedFloatToInt:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,12,1,10,0,67,0,0,0,0,252,0,26,11])),signExtensions:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,8,1,6,0,65,0,192,26,11])),simd:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11])),tailCall:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,6,1,4,0,18,0,11])),threads:()=>ye(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,4,1,3,1,1,10,11,1,9,0,65,0,254,16,2,0,26,11]))};X.exports=be});var oe=H((or,ne)=>{var Y=require("url"),Fe=require("vm"),m=require("worker_threads"),Q=Symbol.for("worker"),g=Symbol.for("events"),O=class{constructor(){Object.defineProperty(this,g,{value:new Map})}dispatchEvent(e){if(e.target=e.currentTarget=this,this["on"+e.type])try{this["on"+e.type](e)}catch(s){console.error(s)}let r=this[g].get(e.type);r!=null&&r.forEach(s=>{try{s.call(this,e)}catch(n){console.error(n)}})}addEventListener(e,r){let s=this[g].get(e);s||this[g].set(e,s=[]),s.push(r)}removeEventListener(e,r){let s=this[g].get(e);if(s){let n=s.indexOf(r);n!==-1&&s.splice(n,1)}}};function j(t,e){this.type=t,this.timeStamp=Date.now(),this.target=this.currentTarget=this.data=null}ne.exports=m.isMainThread?fe():Ce();var Ue=Y.pathToFileURL(process.cwd()+"/");function fe(){class t extends O{constructor(r,s){super();let{name:n,type:d}=s||{};r+="";let o;/^data:/.test(r)?o=r:o=Y.fileURLToPath(new Y.URL(r,Ue));let u=new m.Worker(__filename,{workerData:{mod:o,name:n,type:d}});Object.defineProperty(this,Q,{value:u}),u.on("message",_=>{let E=new j("message");E.data=_,this.dispatchEvent(E)}),u.on("error",_=>{_.type="error",this.dispatchEvent(_)}),u.on("exit",()=>{this.dispatchEvent(new j("close"))})}postMessage(r,s){this[Q].postMessage(r,s)}terminate(){this[Q].terminate()}}return t.prototype.onmessage=t.prototype.onerror=t.prototype.onclose=null,t}function Ce(){let{mod:t,name:e,type:r}=m.workerData,s=global.self=global,n=[];function d(){let E=n;n=null,E.forEach(R=>{s.dispatchEvent(R)})}m.parentPort.on("message",E=>{let R=new j("message");R.data=E,n==null?s.dispatchEvent(R):n.push(R)}),m.parentPort.on("error",E=>{E.type="Error",s.dispatchEvent(E)});class o extends O{postMessage(R,ie){m.parentPort.postMessage(R,ie)}close(){process.exit()}}let u=Object.getPrototypeOf(global);delete u.constructor,Object.defineProperties(o.prototype,u),u=Object.setPrototypeOf(global,new o),["postMessage","addEventListener","removeEventListener","dispatchEvent"].forEach(E=>{u[E]=u[E].bind(global)}),global.name=e;let _=/^data:/.test(t);if(r==="module")import(t).catch(E=>{if(_&&E.message==="Not supported")return console.warn("Worker(): Importing data: URLs requires Node 12.10+. Falling back to classic worker."),te(t,e);console.error(E)}).then(d);else{try{/^data:/.test(t)?te(t,e):require(t)}catch(E){console.error(E)}Promise.resolve().then(d)}}function te(t,e){let{data:r}=De(t);return Fe.runInThisContext(r,{filename:"worker.<"+(e||"data:")+">"})}function De(t){let[e,r,s,n]=t.match(/^data: *([^;,]*)(?: *; *([^,]*))? *,(.*)$/)||[];if(!e)throw Error("Invalid Data URL.");if(s)switch(s.toLowerCase()){case"base64":n=Buffer.from(n,"base64").toString();break;default:throw Error('Unknown Data URL encoding "'+s+'"')}return{type:r,data:n}}});var ve={};pe(ve,{AsyncDuckDB:()=>U,AsyncDuckDBConnection:()=>I,AsyncDuckDBDispatcher:()=>f,AsyncPreparedStatement:()=>S,AsyncResultStreamIterator:()=>k,ConsoleLogger:()=>P,LogEvent:()=>z,LogLevel:()=>V,LogOrigin:()=>$,LogTopic:()=>J,PACKAGE_NAME:()=>C,PACKAGE_VERSION:()=>D,PACKAGE_VERSION_MAJOR:()=>he,PACKAGE_VERSION_MINOR:()=>Ne,PACKAGE_VERSION_PATCH:()=>we,StatusCode:()=>Z,VoidLogger:()=>A,WorkerRequestType:()=>L,WorkerResponseType:()=>F,WorkerTask:()=>a,createWorker:()=>We,getJsDelivrBundles:()=>Pe,getLogEventLabel:()=>_e,getLogLevelLabel:()=>Re,getLogOriginLabel:()=>Ie,getLogTopicLabel:()=>me,getPlatformFeatures:()=>se,isFirefox:()=>Oe,isNode:()=>q,isSafari:()=>Ae,selectBundle:()=>Le});module.exports=Te(ve);var V=(d=>(d[d.NONE=0]="NONE",d[d.DEBUG=1]="DEBUG",d[d.INFO=2]="INFO",d[d.WARNING=3]="WARNING",d[d.ERROR=4]="ERROR",d))(V||{}),J=(o=>(o[o.NONE=0]="NONE",o[o.CONNECT=1]="CONNECT",o[o.DISCONNECT=2]="DISCONNECT",o[o.OPEN=3]="OPEN",o[o.QUERY=4]="QUERY",o[o.INSTANTIATE=5]="INSTANTIATE",o))(J||{}),z=(o=>(o[o.NONE=0]="NONE",o[o.OK=1]="OK",o[o.ERROR=2]="ERROR",o[o.START=3]="START",o[o.RUN=4]="RUN",o[o.CAPTURE=5]="CAPTURE",o))(z||{}),$=(d=>(d[d.NONE=0]="NONE",d[d.WEB_WORKER=1]="WEB_WORKER",d[d.NODE_WORKER=2]="NODE_WORKER",d[d.BINDINGS=3]="BINDINGS",d[d.ASYNC_DUCKDB=4]="ASYNC_DUCKDB",d))($||{}),A=class{log(e){}},P=class{constructor(e=2){this.level=e}log(e){e.level>=this.level&&console.log(e)}};function Re(t){switch(t){case 0:return"NONE";case 1:return"DEBUG";case 2:return"INFO";case 3:return"WARNING";case 4:return"ERROR";default:return"?"}}function _e(t){switch(t){case 0:return"NONE";case 1:return"OK";case 2:return"ERROR";case 3:return"START";case 4:return"RUN";case 5:return"CAPTURE";default:return"?"}}function me(t){switch(t){case 1:return"CONNECT";case 2:return"DISCONNECT";case 5:return"INSTANTIATE";case 3:return"OPEN";case 4:return"QUERY";default:return"?"}}function Ie(t){switch(t){case 0:return"NONE";case 1:return"WEB WORKER";case 2:return"NODE WORKER";case 3:return"DUCKDB BINDINGS";case 4:return"DUCKDB";default:return"?"}}var Z=(e=>(e[e.SUCCESS=0]="SUCCESS",e))(Z||{});var p=b(require("apache-arrow"));var I=class{constructor(e,r){this._bindings=e,this._conn=r}get bindings(){return this._bindings}async close(){return this._bindings.disconnect(this._conn)}useUnsafe(e){return e(this._bindings,this._conn)}async query(e){this._bindings.logger.log({timestamp:new Date,level:2,origin:4,topic:4,event:4,value:e});let r=await this._bindings.runQuery(this._conn,e),s=p.RecordBatchReader.from(r);return console.assert(s.isSync()),console.assert(s.isFile()),new p.Table(s)}async send(e){this._bindings.logger.log({timestamp:new Date,level:2,origin:4,topic:4,event:4,value:e});let r=await this._bindings.startPendingQuery(this._conn,e);for(;r==null;)r=await this._bindings.pollPendingQuery(this._conn);let s=new k(this._bindings,this._conn,r),n=await p.RecordBatchReader.from(s);return console.assert(n.isAsync()),console.assert(n.isStream()),n}async cancelSent(){return await this._bindings.cancelPendingQuery(this._conn)}async getTableNames(e){return await this._bindings.getTableNames(this._conn,e)}async prepare(e){let r=await this._bindings.createPrepared(this._conn,e);return new S(this._bindings,this._conn,r)}async insertArrowTable(e,r){let s=p.tableToIPC(e,"stream");await this.insertArrowFromIPCStream(s,r)}async insertArrowFromIPCStream(e,r){await this._bindings.insertArrowFromIPCStream(this._conn,e,r)}async insertCSVFromPath(e,r){await this._bindings.insertCSVFromPath(this._conn,e,r)}async insertJSONFromPath(e,r){await this._bindings.insertJSONFromPath(this._conn,e,r)}},k=class{constructor(e,r,s){this.db=e;this.conn=r;this.header=s;this._first=!0,this._depleted=!1,this._inFlight=null}async next(){if(this._first)return this._first=!1,{done:!1,value:this.header};if(this._depleted)return{done:!0,value:null};let e;return this._inFlight!=null?(e=await this._inFlight,this._inFlight=null):e=await this.db.fetchQueryResults(this.conn),this._depleted=e.length==0,this._depleted||(this._inFlight=this.db.fetchQueryResults(this.conn)),{done:this._depleted,value:e}}[Symbol.asyncIterator](){return this}},S=class{constructor(e,r,s){this.bindings=e,this.connectionId=r,this.statementId=s}async close(){await this.bindings.closePrepared(this.connectionId,this.statementId)}async query(...e){let r=await this.bindings.runPrepared(this.connectionId,this.statementId,e),s=p.RecordBatchReader.from(r);return console.assert(s.isSync()),console.assert(s.isFile()),new p.Table(s)}async send(...e){let r=await this.bindings.sendPrepared(this.connectionId,this.statementId,e),s=new k(this.bindings,this.connectionId,r),n=await p.RecordBatchReader.from(s);return console.assert(n.isAsync()),console.assert(n.isStream()),n}};var L=(c=>(c.CANCEL_PENDING_QUERY="CANCEL_PENDING_QUERY",c.CLOSE_PREPARED="CLOSE_PREPARED",c.COLLECT_FILE_STATISTICS="COLLECT_FILE_STATISTICS",c.CONNECT="CONNECT",c.COPY_FILE_TO_BUFFER="COPY_FILE_TO_BUFFER",c.COPY_FILE_TO_PATH="COPY_FILE_TO_PATH",c.CREATE_PREPARED="CREATE_PREPARED",c.DISCONNECT="DISCONNECT",c.DROP_FILE="DROP_FILE",c.DROP_FILES="DROP_FILES",c.EXPORT_FILE_STATISTICS="EXPORT_FILE_STATISTICS",c.FETCH_QUERY_RESULTS="FETCH_QUERY_RESULTS",c.FLUSH_FILES="FLUSH_FILES",c.GET_FEATURE_FLAGS="GET_FEATURE_FLAGS",c.GET_TABLE_NAMES="GET_TABLE_NAMES",c.GET_VERSION="GET_VERSION",c.GLOB_FILE_INFOS="GLOB_FILE_INFOS",c.INSERT_ARROW_FROM_IPC_STREAM="INSERT_ARROW_FROM_IPC_STREAM",c.INSERT_CSV_FROM_PATH="IMPORT_CSV_FROM_PATH",c.INSERT_JSON_FROM_PATH="IMPORT_JSON_FROM_PATH",c.INSTANTIATE="INSTANTIATE",c.OPEN="OPEN",c.PING="PING",c.POLL_PENDING_QUERY="POLL_PENDING_QUERY",c.REGISTER_FILE_BUFFER="REGISTER_FILE_BUFFER",c.REGISTER_FILE_HANDLE="REGISTER_FILE_HANDLE",c.REGISTER_FILE_URL="REGISTER_FILE_URL",c.RESET="RESET",c.RUN_PREPARED="RUN_PREPARED",c.RUN_QUERY="RUN_QUERY",c.SEND_PREPARED="SEND_PREPARED",c.START_PENDING_QUERY="START_PENDING_QUERY",c.TOKENIZE="TOKENIZE",c))(L||{}),F=(l=>(l.CONNECTION_INFO="CONNECTION_INFO",l.ERROR="ERROR",l.FEATURE_FLAGS="FEATURE_FLAGS",l.FILE_BUFFER="FILE_BUFFER",l.FILE_INFOS="FILE_INFOS",l.FILE_SIZE="FILE_SIZE",l.FILE_STATISTICS="FILE_STATISTICS",l.INSTANTIATE_PROGRESS="INSTANTIATE_PROGRESS",l.LOG="LOG",l.OK="OK",l.PREPARED_STATEMENT_ID="PREPARED_STATEMENT_ID",l.QUERY_PLAN="QUERY_PLAN",l.QUERY_RESULT="QUERY_RESULT",l.QUERY_RESULT_CHUNK="QUERY_RESULT_CHUNK",l.QUERY_RESULT_HEADER="QUERY_RESULT_HEADER",l.QUERY_RESULT_HEADER_OR_NULL="QUERY_RESULT_HEADER_OR_NULL",l.REGISTERED_FILE="REGISTERED_FILE",l.SCRIPT_TOKENS="SCRIPT_TOKENS",l.SUCCESS="SUCCESS",l.TABLE_NAMES="TABLE_NAMES",l.VERSION_STRING="VERSION_STRING",l))(F||{}),a=class{constructor(e,r){this.promiseResolver=()=>{};this.promiseRejecter=()=>{};this.type=e,this.data=r,this.promise=new Promise((s,n)=>{this.promiseResolver=s,this.promiseRejecter=n})}};var i=b(require("apache-arrow"));function h(t){switch(t.typeId){case i.Type.Binary:return{sqlType:"binary"};case i.Type.Bool:return{sqlType:"bool"};case i.Type.Date:return{sqlType:"date"};case i.Type.DateDay:return{sqlType:"date32[d]"};case i.Type.DateMillisecond:return{sqlType:"date64[ms]"};case i.Type.Decimal:{let e=t;return{sqlType:"decimal",precision:e.precision,scale:e.scale}}case i.Type.Float:return{sqlType:"float"};case i.Type.Float16:return{sqlType:"float16"};case i.Type.Float32:return{sqlType:"float32"};case i.Type.Float64:return{sqlType:"float64"};case i.Type.Int:return{sqlType:"int32"};case i.Type.Int16:return{sqlType:"int16"};case i.Type.Int32:return{sqlType:"int32"};case i.Type.Int64:return{sqlType:"int64"};case i.Type.Uint16:return{sqlType:"uint16"};case i.Type.Uint32:return{sqlType:"uint32"};case i.Type.Uint64:return{sqlType:"uint64"};case i.Type.Uint8:return{sqlType:"uint8"};case i.Type.IntervalDayTime:return{sqlType:"interval[dt]"};case i.Type.IntervalYearMonth:return{sqlType:"interval[m]"};case i.Type.List:return{sqlType:"list",valueType:h(t.valueType)};case i.Type.FixedSizeBinary:return{sqlType:"fixedsizebinary",byteWidth:t.byteWidth};case i.Type.Null:return{sqlType:"null"};case i.Type.Utf8:return{sqlType:"utf8"};case i.Type.Struct:return{sqlType:"struct",fields:t.children.map(r=>N(r.name,r.type))};case i.Type.Map:{let e=t;return{sqlType:"map",keyType:h(e.keyType),valueType:h(e.valueType)}}case i.Type.Time:return{sqlType:"time[s]"};case i.Type.TimeMicrosecond:return{sqlType:"time[us]"};case i.Type.TimeMillisecond:return{sqlType:"time[ms]"};case i.Type.TimeNanosecond:return{sqlType:"time[ns]"};case i.Type.TimeSecond:return{sqlType:"time[s]"};case i.Type.Timestamp:return{sqlType:"timestamp",timezone:t.timezone||void 0};case i.Type.TimestampSecond:return{sqlType:"timestamp[s]",timezone:t.timezone||void 0};case i.Type.TimestampMicrosecond:return{sqlType:"timestamp[us]",timezone:t.timezone||void 0};case i.Type.TimestampNanosecond:return{sqlType:"timestamp[ns]",timezone:t.timezone||void 0};case i.Type.TimestampMillisecond:return{sqlType:"timestamp[ms]",timezone:t.timezone||void 0}}throw new Error(`unsupported arrow type: ${t.toString()}`)}function N(t,e){let r=h(e);return r.name=t,r}var ke=new TextEncoder,U=class{constructor(e,r=null){this._onInstantiationProgress=[];this._worker=null;this._workerShutdownPromise=null;this._workerShutdownResolver=()=>{};this._nextMessageId=0;this._pendingRequests=new Map;this._logger=e,this._onMessageHandler=this.onMessage.bind(this),this._onErrorHandler=this.onError.bind(this),this._onCloseHandler=this.onClose.bind(this),r!=null&&this.attach(r)}get logger(){return this._logger}attach(e){this._worker=e,this._worker.addEventListener("message",this._onMessageHandler),this._worker.addEventListener("error",this._onErrorHandler),this._worker.addEventListener("close",this._onCloseHandler),this._workerShutdownPromise=new Promise((r,s)=>{this._workerShutdownResolver=r})}detach(){!this._worker||(this._worker.removeEventListener("message",this._onMessageHandler),this._worker.removeEventListener("error",this._onErrorHandler),this._worker.removeEventListener("close",this._onCloseHandler),this._worker=null,this._workerShutdownResolver(null),this._workerShutdownPromise=null,this._workerShutdownResolver=()=>{})}async terminate(){!this._worker||(this._worker.terminate(),this._worker=null,this._workerShutdownPromise=null,this._workerShutdownResolver=()=>{})}async postTask(e,r=[]){if(!this._worker){console.error("cannot send a message since the worker is not set!");return}let s=this._nextMessageId++;return this._pendingRequests.set(s,e),this._worker.postMessage({messageId:s,type:e.type,data:e.data},r),await e.promise}onMessage(e){let r=e.data;switch(r.type){case"LOG":{this._logger.log(r.data);return}case"INSTANTIATE_PROGRESS":{for(let n of this._onInstantiationProgress)n(r.data);return}}let s=this._pendingRequests.get(r.requestId);if(!s){console.warn(`unassociated response: [${r.requestId}, ${r.type.toString()}]`);return}if(this._pendingRequests.delete(r.requestId),r.type=="ERROR"){let n=new Error(r.data.message);n.name=r.data.name,n.stack=r.data.stack,s.promiseRejecter(n);return}switch(s.type){case"CLOSE_PREPARED":case"COLLECT_FILE_STATISTICS":case"COPY_FILE_TO_PATH":case"DISCONNECT":case"DROP_FILE":case"DROP_FILES":case"FLUSH_FILES":case"INSERT_ARROW_FROM_IPC_STREAM":case"IMPORT_CSV_FROM_PATH":case"IMPORT_JSON_FROM_PATH":case"OPEN":case"PING":case"REGISTER_FILE_BUFFER":case"REGISTER_FILE_HANDLE":case"REGISTER_FILE_URL":case"RESET":if(r.type=="OK"){s.promiseResolver(r.data);return}break;case"INSTANTIATE":if(this._onInstantiationProgress=[],r.type=="OK"){s.promiseResolver(r.data);return}break;case"GLOB_FILE_INFOS":if(r.type=="FILE_INFOS"){s.promiseResolver(r.data);return}break;case"GET_VERSION":if(r.type=="VERSION_STRING"){s.promiseResolver(r.data);return}break;case"GET_FEATURE_FLAGS":if(r.type=="FEATURE_FLAGS"){s.promiseResolver(r.data);return}break;case"GET_TABLE_NAMES":if(r.type=="TABLE_NAMES"){s.promiseResolver(r.data);return}break;case"TOKENIZE":if(r.type=="SCRIPT_TOKENS"){s.promiseResolver(r.data);return}break;case"COPY_FILE_TO_BUFFER":if(r.type=="FILE_BUFFER"){s.promiseResolver(r.data);return}break;case"EXPORT_FILE_STATISTICS":if(r.type=="FILE_STATISTICS"){s.promiseResolver(r.data);return}break;case"CONNECT":if(r.type=="CONNECTION_INFO"){s.promiseResolver(r.data);return}break;case"RUN_PREPARED":case"RUN_QUERY":if(r.type=="QUERY_RESULT"){s.promiseResolver(r.data);return}break;case"SEND_PREPARED":if(r.type=="QUERY_RESULT_HEADER"){s.promiseResolver(r.data);return}break;case"START_PENDING_QUERY":if(r.type=="QUERY_RESULT_HEADER_OR_NULL"){s.promiseResolver(r.data);return}break;case"POLL_PENDING_QUERY":if(r.type=="QUERY_RESULT_HEADER_OR_NULL"){s.promiseResolver(r.data);return}break;case"CANCEL_PENDING_QUERY":if(this._onInstantiationProgress=[],r.type=="SUCCESS"){s.promiseResolver(r.data);return}break;case"FETCH_QUERY_RESULTS":if(r.type=="QUERY_RESULT_CHUNK"){s.promiseResolver(r.data);return}break;case"CREATE_PREPARED":if(r.type=="PREPARED_STATEMENT_ID"){s.promiseResolver(r.data);return}break}s.promiseRejecter(new Error(`unexpected response type: ${r.type.toString()}`))}onError(e){console.error(e),console.error(`error in duckdb worker: ${e.message}`),this._pendingRequests.clear()}onClose(){if(this._workerShutdownResolver(null),this._pendingRequests.size!=0){console.warn(`worker terminated with ${this._pendingRequests.size} pending requests`);return}this._pendingRequests.clear()}async reset(){let e=new a("RESET",null);return await this.postTask(e)}async ping(){let e=new a("PING",null);await this.postTask(e)}async dropFile(e){let r=new a("DROP_FILE",e);return await this.postTask(r)}async dropFiles(){let e=new a("DROP_FILES",null);return await this.postTask(e)}async flushFiles(){let e=new a("FLUSH_FILES",null);return await this.postTask(e)}async instantiate(e,r=null,s=n=>{}){this._onInstantiationProgress.push(s);let n=new a("INSTANTIATE",[e,r]);return await this.postTask(n)}async getVersion(){let e=new a("GET_VERSION",null);return await this.postTask(e)}async getFeatureFlags(){let e=new a("GET_FEATURE_FLAGS",null);return await this.postTask(e)}async open(e){let r=new a("OPEN",e);await this.postTask(r)}async tokenize(e){let r=new a("TOKENIZE",e);return await this.postTask(r)}async connectInternal(){let e=new a("CONNECT",null);return await this.postTask(e)}async connect(){let e=await this.connectInternal();return new I(this,e)}async disconnect(e){let r=new a("DISCONNECT",e);await this.postTask(r)}async runQuery(e,r){let s=new a("RUN_QUERY",[e,r]);return await this.postTask(s)}async startPendingQuery(e,r){let s=new a("START_PENDING_QUERY",[e,r]);return await this.postTask(s)}async pollPendingQuery(e){let r=new a("POLL_PENDING_QUERY",e);return await this.postTask(r)}async cancelPendingQuery(e){let r=new a("CANCEL_PENDING_QUERY",e);return await this.postTask(r)}async fetchQueryResults(e){let r=new a("FETCH_QUERY_RESULTS",e);return await this.postTask(r)}async getTableNames(e,r){let s=new a("GET_TABLE_NAMES",[e,r]);return await this.postTask(s)}async createPrepared(e,r){let s=new a("CREATE_PREPARED",[e,r]);return await this.postTask(s)}async closePrepared(e,r){let s=new a("CLOSE_PREPARED",[e,r]);await this.postTask(s)}async runPrepared(e,r,s){let n=new a("RUN_PREPARED",[e,r,s]);return await this.postTask(n)}async sendPrepared(e,r,s){let n=new a("SEND_PREPARED",[e,r,s]);return await this.postTask(n)}async globFiles(e){let r=new a("GLOB_FILE_INFOS",e);return await this.postTask(r)}async registerFileText(e,r){let s=ke.encode(r);await this.registerFileBuffer(e,s)}async registerFileURL(e,r){r===void 0&&(r=e);let s=new a("REGISTER_FILE_URL",[e,r]);await this.postTask(s)}async registerEmptyFileBuffer(e){let r=new a("REGISTER_FILE_BUFFER",[e,new Uint8Array]);await this.postTask(r)}async registerFileBuffer(e,r){let s=new a("REGISTER_FILE_BUFFER",[e,r]);await this.postTask(s,[r.buffer])}async registerFileHandle(e,r){let s=new a("REGISTER_FILE_HANDLE",[e,r]);await this.postTask(s,[])}async collectFileStatistics(e,r){let s=new a("COLLECT_FILE_STATISTICS",[e,r]);await this.postTask(s,[])}async exportFileStatistics(e){let r=new a("EXPORT_FILE_STATISTICS",e);return await this.postTask(r,[])}async copyFileToBuffer(e){let r=new a("COPY_FILE_TO_BUFFER",e);return await this.postTask(r)}async copyFileToPath(e,r){let s=new a("COPY_FILE_TO_PATH",[e,r]);await this.postTask(s)}async insertArrowFromIPCStream(e,r,s){if(r.length==0)return;let n=new a("INSERT_ARROW_FROM_IPC_STREAM",[e,r,s]);await this.postTask(n,[r.buffer])}async insertCSVFromPath(e,r,s){if(s.columns!==void 0){let d=[];for(let o in s.columns){let u=s.columns[o];d.push(N(o,u))}s.columnsFlat=d,delete s.columns}let n=new a("IMPORT_CSV_FROM_PATH",[e,r,s]);await this.postTask(n)}async insertJSONFromPath(e,r,s){if(s.columns!==void 0){let d=[];for(let o in s.columns){let u=s.columns[o];d.push(N(o,u))}s.columnsFlat=d,delete s.columns}let n=new a("IMPORT_JSON_FROM_PATH",[e,r,s]);await this.postTask(n)}};var f=class{constructor(){this._bindings=null;this._nextMessageId=0}log(e){this.postMessage({messageId:this._nextMessageId++,requestId:0,type:"LOG",data:e},[])}sendOK(e){this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"OK",data:null},[])}failWith(e,r){let s={name:r.name,message:r.message,stack:r.stack||void 0};this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"ERROR",data:s},[])}async onMessage(e){switch(e.type){case"PING":this.sendOK(e);return;case"INSTANTIATE":this._bindings!=null&&this.failWith(e,new Error("duckdb already initialized"));try{this._bindings=await this.instantiate(e.data[0],e.data[1],r=>{this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"INSTANTIATE_PROGRESS",data:r},[])}),this.sendOK(e)}catch(r){this._bindings=null,this.failWith(e,r)}return;default:break}if(!this._bindings)return this.failWith(e,new Error("duckdb is not initialized"));try{switch(e.type){case"GET_VERSION":this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"VERSION_STRING",data:this._bindings.getVersion()},[]);break;case"GET_FEATURE_FLAGS":this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"FEATURE_FLAGS",data:this._bindings.getFeatureFlags()},[]);break;case"RESET":this._bindings.reset(),this.sendOK(e);break;case"OPEN":this._bindings.open(e.data),this.sendOK(e);break;case"DROP_FILE":this._bindings.dropFile(e.data),this.sendOK(e);break;case"DROP_FILES":this._bindings.dropFiles(),this.sendOK(e);break;case"FLUSH_FILES":this._bindings.flushFiles(),this.sendOK(e);break;case"CONNECT":{let r=this._bindings.connect();this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"CONNECTION_INFO",data:r.useUnsafe((s,n)=>n)},[]);break}case"DISCONNECT":this._bindings.disconnect(e.data),this.sendOK(e);break;case"CREATE_PREPARED":{let r=this._bindings.createPrepared(e.data[0],e.data[1]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"PREPARED_STATEMENT_ID",data:r},[]);break}case"CLOSE_PREPARED":{this._bindings.closePrepared(e.data[0],e.data[1]),this.sendOK(e);break}case"RUN_PREPARED":{let r=this._bindings.runPrepared(e.data[0],e.data[1],e.data[2]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT",data:r},[r.buffer]);break}case"RUN_QUERY":{let r=this._bindings.runQuery(e.data[0],e.data[1]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT",data:r},[r.buffer]);break}case"SEND_PREPARED":{let r=this._bindings.sendPrepared(e.data[0],e.data[1],e.data[2]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT_HEADER",data:r},[r.buffer]);break}case"START_PENDING_QUERY":{let r=this._bindings.startPendingQuery(e.data[0],e.data[1]),s=[];r&&s.push(r.buffer),this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT_HEADER_OR_NULL",data:r},s);break}case"POLL_PENDING_QUERY":{let r=this._bindings.pollPendingQuery(e.data),s=[];r&&s.push(r.buffer),this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT_HEADER_OR_NULL",data:r},s);break}case"CANCEL_PENDING_QUERY":{let r=this._bindings.cancelPendingQuery(e.data);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"SUCCESS",data:r},[]);break}case"FETCH_QUERY_RESULTS":{let r=this._bindings.fetchQueryResults(e.data);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT_CHUNK",data:r},[r.buffer]);break}case"GET_TABLE_NAMES":{let r=this._bindings.getTableNames(e.data[0],e.data[1]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"TABLE_NAMES",data:r},[]);break}case"GLOB_FILE_INFOS":{let r=this._bindings.globFiles(e.data);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"FILE_INFOS",data:r},[]);break}case"REGISTER_FILE_URL":this._bindings.registerFileURL(e.data[0],e.data[1]),this.sendOK(e);break;case"REGISTER_FILE_BUFFER":this._bindings.registerFileBuffer(e.data[0],e.data[1]),this.sendOK(e);break;case"REGISTER_FILE_HANDLE":this._bindings.registerFileHandle(e.data[0],e.data[1]),this.sendOK(e);break;case"COPY_FILE_TO_PATH":this._bindings.copyFileToPath(e.data[0],e.data[1]),this.sendOK(e);break;case"COPY_FILE_TO_BUFFER":{let r=this._bindings.copyFileToBuffer(e.data);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"FILE_BUFFER",data:r},[]);break}case"COLLECT_FILE_STATISTICS":this._bindings.collectFileStatistics(e.data[0],e.data[1]),this.sendOK(e);break;case"EXPORT_FILE_STATISTICS":{this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"FILE_STATISTICS",data:this._bindings.exportFileStatistics(e.data)},[]);break}case"INSERT_ARROW_FROM_IPC_STREAM":{this._bindings.insertArrowFromIPCStream(e.data[0],e.data[1],e.data[2]),this.sendOK(e);break}case"IMPORT_CSV_FROM_PATH":{this._bindings.insertCSVFromPath(e.data[0],e.data[1],e.data[2]),this.sendOK(e);break}case"IMPORT_JSON_FROM_PATH":{this._bindings.insertJSONFromPath(e.data[0],e.data[1],e.data[2]),this.sendOK(e);break}case"TOKENIZE":{let r=this._bindings.tokenize(e.data);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"SCRIPT_TOKENS",data:r},[]);break}}}catch(r){return this.failWith(e,r)}}};var T=b(ee());var w={name:"@duckdb/duckdb-wasm",version:"1.16.0",description:"DuckDB powered by WebAssembly",license:"MPL-2.0",repository:{type:"git",url:"https://github.com/duckdb/duckdb-wasm.git"},keywords:["sql","duckdb","relational","database","data","query","wasm","analytics","olap","arrow","parquet","json","csv"],dependencies:{"apache-arrow":"^8.0.0"},devDependencies:{"@types/emscripten":"^1.39.6","@types/jasmine":"^4.0.3","@typescript-eslint/eslint-plugin":"^5.30.5","@typescript-eslint/parser":"^5.30.5",esbuild:"^0.14.49",eslint:"^8.19.0","eslint-plugin-jasmine":"^4.1.3","eslint-plugin-react":"^7.30.1","fast-glob":"^3.2.11",jasmine:"^4.2.1","jasmine-core":"^4.2.0","jasmine-spec-reporter":"^7.0.0","js-sha256":"^0.9.0",karma:"^6.4.0","karma-chrome-launcher":"^3.1.1","karma-coverage":"^2.2.0","karma-firefox-launcher":"^2.1.2","karma-jasmine":"^5.1.0","karma-jasmine-html-reporter":"^2.0.0","karma-sourcemap-loader":"^0.3.8","karma-spec-reporter":"^0.0.34","make-dir":"^3.1.0",nyc:"^15.1.0",prettier:"^2.7.1",puppeteer:"^15.4.0",rimraf:"^3.0.2",s3rver:"^3.7.1",typedoc:"^0.23.7",typescript:"^4.7.4","wasm-feature-detect":"^1.2.11","web-worker":"^1.2.0"},scripts:{"build:debug":"node bundle.mjs debug && tsc --emitDeclarationOnly","build:release":"node bundle.mjs release && tsc --emitDeclarationOnly",docs:"typedoc",report:"node ./coverage.mjs","test:node":"node --enable-source-maps --experimental-wasm-eh ../../node_modules/jasmine/bin/jasmine ./dist/tests-node.cjs","test:node:debug":"node --inspect-brk --enable-source-maps --experimental-wasm-eh ../../node_modules/jasmine/bin/jasmine ./dist/tests-node.cjs","test:node:coverage":"nyc -r json --report-dir ./coverage/node node --experimental-wasm-eh ../../node_modules/jasmine/bin/jasmine ./dist/tests-node.cjs","test:firefox":"karma start ./karma/tests-firefox.cjs","test:chrome":"karma start ./karma/tests-chrome.cjs","test:chrome:eh":"karma start ./karma/tests-chrome-eh.cjs","test:chrome:coverage":"karma start ./karma/tests-chrome-coverage.cjs","test:browser":"karma start ./karma/tests-all.cjs","test:browser:debug":"karma start ./karma/tests-debug.cjs",test:"npm run test:chrome && npm run test:node","test:coverage":"npm run test:chrome:coverage && npm run test:node:coverage && npm run report",lint:"eslint src test"},files:["dist","!dist/types/test"],main:"dist/duckdb-browser.cjs",module:"dist/duckdb-browser.mjs",types:"dist/duckdb-browser.d.ts",jsdelivr:"dist/duckdb-browser.cjs",unpkg:"dist/duckdb-browser.mjs",sideEffects:!1,browser:{fs:!1,path:!1,perf_hooks:!1,os:!1,worker_threads:!1},exports:{"./dist/duckdb-mvp.wasm":"./dist/duckdb-mvp.wasm","./dist/duckdb-eh.wasm":"./dist/duckdb-eh.wasm","./dist/duckdb-coi.wasm":"./dist/duckdb-coi.wasm","./dist/duckdb-browser":"./dist/duckdb-browser.mjs","./dist/duckdb-browser.cjs":"./dist/duckdb-browser.cjs","./dist/duckdb-browser.mjs":"./dist/duckdb-browser.mjs","./dist/duckdb-browser-blocking":"./dist/duckdb-browser-blocking.mjs","./dist/duckdb-browser-blocking.mjs":"./dist/duckdb-browser-blocking.mjs","./dist/duckdb-browser-blocking.cjs":"./dist/duckdb-browser-blocking.cjs","./dist/duckdb-browser-coi.pthread.worker.js":"./dist/duckdb-browser-coi.pthread.worker.js","./dist/duckdb-browser-coi.worker.js":"./dist/duckdb-browser-coi.worker.js","./dist/duckdb-browser-eh.worker.js":"./dist/duckdb-browser-eh.worker.js","./dist/duckdb-browser-mvp.worker.js":"./dist/duckdb-browser-mvp.worker.js","./dist/duckdb-node":"./dist/duckdb-node.cjs","./dist/duckdb-node.cjs":"./dist/duckdb-node.cjs","./dist/duckdb-node-blocking":"./dist/duckdb-node-blocking.cjs","./dist/duckdb-node-blocking.cjs":"./dist/duckdb-node-blocking.cjs","./dist/duckdb-node-eh.worker.cjs":"./dist/duckdb-node-eh.worker.cjs","./dist/duckdb-node-mvp.worker.cjs":"./dist/duckdb-node-mvp.worker.cjs","./blocking":{browser:{types:"./dist/duckdb-browser-blocking.d.ts",import:"./dist/duckdb-browser-blocking.mjs",require:"./dist/duckdb-browser-blocking.cjs"},node:{types:"./dist/duckdb-node-blocking.d.ts",require:"./dist/duckdb-node-blocking.cjs",import:"./dist/duckdb-node-blocking.cjs"},types:"./dist/duckdb-browser-blocking.d.ts",import:"./dist/duckdb-browser-blocking.mjs",require:"./dist/duckdb-browser-blocking.cjs"},".":{browser:{types:"./dist/duckdb-browser.d.ts",import:"./dist/duckdb-browser.mjs",require:"./dist/duckdb-browser.cjs"},node:{types:"./dist/duckdb-node.d.ts",import:"./dist/duckdb-node.cjs",require:"./dist/duckdb-node.cjs"},types:"./dist/duckdb-browser.d.ts",import:"./dist/duckdb-browser.mjs",require:"./dist/duckdb-browser.cjs"}}};var C=w.name,D=w.version,W=w.version.split("."),he=W[0],Ne=W[1],we=W[2];var q=()=>typeof navigator>"u",re=()=>q()?"node":navigator.userAgent,Oe=()=>re().includes("Firefox"),Ae=()=>/^((?!chrome|android).)*safari/i.test(re());function Pe(){let t=`https://cdn.jsdelivr.net/npm/${C}@${D}/dist/`;return{mvp:{mainModule:`${t}duckdb-mvp.wasm`,mainWorker:`${t}duckdb-browser-mvp.worker.js`},eh:{mainModule:`${t}duckdb-eh.wasm`,mainWorker:`${t}duckdb-browser-eh.worker.js`}}}var v=null,M=null,G=null,B=null,x=null;async function se(){return v==null&&(v=typeof BigInt64Array<"u"),M==null&&(M=await T.exceptions()),G==null&&(G=await T.threads()),B==null&&(B=await T.simd()),x==null&&(x=await T.bulkMemory()),{bigInt64Array:v,crossOriginIsolated:q()||globalThis.crossOriginIsolated||!1,wasmExceptions:M,wasmSIMD:B,wasmThreads:G,wasmBulkMemory:x}}async function Le(t){let e=await se();if(e.wasmExceptions){if(e.wasmSIMD&&e.wasmThreads&&e.crossOriginIsolated&&t.coi)return{mainModule:t.coi.mainModule,mainWorker:t.coi.mainWorker,pthreadWorker:t.coi.pthreadWorker};if(t.eh)return{mainModule:t.eh.mainModule,mainWorker:t.eh.mainWorker,pthreadWorker:null}}return{mainModule:t.mvp.mainModule,mainWorker:t.mvp.mainWorker,pthreadWorker:null}}var ae=b(oe());async function We(t){let e=new Request(t),r=await fetch(e),s=URL.createObjectURL(await r.blob());return new ae.default(s)}0&&(module.exports={AsyncDuckDB,AsyncDuckDBConnection,AsyncDuckDBDispatcher,AsyncPreparedStatement,AsyncResultStreamIterator,ConsoleLogger,LogEvent,LogLevel,LogOrigin,LogTopic,PACKAGE_NAME,PACKAGE_VERSION,PACKAGE_VERSION_MAJOR,PACKAGE_VERSION_MINOR,PACKAGE_VERSION_PATCH,StatusCode,VoidLogger,WorkerRequestType,WorkerResponseType,WorkerTask,createWorker,getJsDelivrBundles,getLogEventLabel,getLogLevelLabel,getLogOriginLabel,getLogTopicLabel,getPlatformFeatures,isFirefox,isNode,isSafari,selectBundle});
1
+ "use strict";var ce=Object.create;var y=Object.defineProperty;var de=Object.getOwnPropertyDescriptor;var le=Object.getOwnPropertyNames;var Ee=Object.getPrototypeOf,ue=Object.prototype.hasOwnProperty;var H=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),pe=(t,e)=>{for(var r in e)y(t,r,{get:e[r],enumerable:!0})},K=(t,e,r,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of le(e))!ue.call(t,n)&&n!==r&&y(t,n,{get:()=>e[n],enumerable:!(s=de(e,n))||s.enumerable});return t};var b=(t,e,r)=>(r=t!=null?ce(Ee(t)):{},K(e||!t||!t.__esModule?y(r,"default",{value:t,enumerable:!0}):r,t)),Te=t=>K(y({},"__esModule",{value:!0}),t);var ee=H((Xe,X)=>{"use strict";var ge=async t=>{try{return(await WebAssembly.instantiate(t)).instance.exports.b(BigInt(0))===BigInt(0)}catch{return!1}},ye=async t=>{try{return typeof MessageChannel<"u"&&new MessageChannel().port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(t)}catch{return!1}},be={bigInt:()=>ge(new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,126,1,126,3,2,1,0,7,5,1,1,98,0,0,10,6,1,4,0,32,0,11])),bulkMemory:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,3,1,0,1,10,14,1,12,0,65,0,65,0,65,0,252,10,0,0,11])),exceptions:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,8,1,6,0,6,64,25,11,11])),multiValue:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,0,2,127,127,3,2,1,0,10,8,1,6,0,65,0,65,0,11])),mutableGlobals:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,2,8,1,1,97,1,98,3,127,1,6,6,1,127,1,65,0,11,7,5,1,1,97,3,1])),referenceTypes:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,7,1,5,0,208,112,26,11])),saturatedFloatToInt:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,12,1,10,0,67,0,0,0,0,252,0,26,11])),signExtensions:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,8,1,6,0,65,0,192,26,11])),simd:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11])),tailCall:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,6,1,4,0,18,0,11])),threads:()=>ye(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,4,1,3,1,1,10,11,1,9,0,65,0,254,16,2,0,26,11]))};X.exports=be});var oe=H((or,ne)=>{var Y=require("url"),Fe=require("vm"),m=require("worker_threads"),Q=Symbol.for("worker"),g=Symbol.for("events"),O=class{constructor(){Object.defineProperty(this,g,{value:new Map})}dispatchEvent(e){if(e.target=e.currentTarget=this,this["on"+e.type])try{this["on"+e.type](e)}catch(s){console.error(s)}let r=this[g].get(e.type);r!=null&&r.forEach(s=>{try{s.call(this,e)}catch(n){console.error(n)}})}addEventListener(e,r){let s=this[g].get(e);s||this[g].set(e,s=[]),s.push(r)}removeEventListener(e,r){let s=this[g].get(e);if(s){let n=s.indexOf(r);n!==-1&&s.splice(n,1)}}};function j(t,e){this.type=t,this.timeStamp=Date.now(),this.target=this.currentTarget=this.data=null}ne.exports=m.isMainThread?fe():Ce();var Ue=Y.pathToFileURL(process.cwd()+"/");function fe(){class t extends O{constructor(r,s){super();let{name:n,type:d}=s||{};r+="";let o;/^data:/.test(r)?o=r:o=Y.fileURLToPath(new Y.URL(r,Ue));let u=new m.Worker(__filename,{workerData:{mod:o,name:n,type:d}});Object.defineProperty(this,Q,{value:u}),u.on("message",_=>{let E=new j("message");E.data=_,this.dispatchEvent(E)}),u.on("error",_=>{_.type="error",this.dispatchEvent(_)}),u.on("exit",()=>{this.dispatchEvent(new j("close"))})}postMessage(r,s){this[Q].postMessage(r,s)}terminate(){this[Q].terminate()}}return t.prototype.onmessage=t.prototype.onerror=t.prototype.onclose=null,t}function Ce(){let{mod:t,name:e,type:r}=m.workerData,s=global.self=global,n=[];function d(){let E=n;n=null,E.forEach(R=>{s.dispatchEvent(R)})}m.parentPort.on("message",E=>{let R=new j("message");R.data=E,n==null?s.dispatchEvent(R):n.push(R)}),m.parentPort.on("error",E=>{E.type="Error",s.dispatchEvent(E)});class o extends O{postMessage(R,ie){m.parentPort.postMessage(R,ie)}close(){process.exit()}}let u=Object.getPrototypeOf(global);delete u.constructor,Object.defineProperties(o.prototype,u),u=Object.setPrototypeOf(global,new o),["postMessage","addEventListener","removeEventListener","dispatchEvent"].forEach(E=>{u[E]=u[E].bind(global)}),global.name=e;let _=/^data:/.test(t);if(r==="module")import(t).catch(E=>{if(_&&E.message==="Not supported")return console.warn("Worker(): Importing data: URLs requires Node 12.10+. Falling back to classic worker."),te(t,e);console.error(E)}).then(d);else{try{/^data:/.test(t)?te(t,e):require(t)}catch(E){console.error(E)}Promise.resolve().then(d)}}function te(t,e){let{data:r}=De(t);return Fe.runInThisContext(r,{filename:"worker.<"+(e||"data:")+">"})}function De(t){let[e,r,s,n]=t.match(/^data: *([^;,]*)(?: *; *([^,]*))? *,(.*)$/)||[];if(!e)throw Error("Invalid Data URL.");if(s)switch(s.toLowerCase()){case"base64":n=Buffer.from(n,"base64").toString();break;default:throw Error('Unknown Data URL encoding "'+s+'"')}return{type:r,data:n}}});var ve={};pe(ve,{AsyncDuckDB:()=>U,AsyncDuckDBConnection:()=>I,AsyncDuckDBDispatcher:()=>f,AsyncPreparedStatement:()=>S,AsyncResultStreamIterator:()=>k,ConsoleLogger:()=>P,LogEvent:()=>z,LogLevel:()=>V,LogOrigin:()=>$,LogTopic:()=>J,PACKAGE_NAME:()=>C,PACKAGE_VERSION:()=>D,PACKAGE_VERSION_MAJOR:()=>he,PACKAGE_VERSION_MINOR:()=>Ne,PACKAGE_VERSION_PATCH:()=>we,StatusCode:()=>Z,VoidLogger:()=>A,WorkerRequestType:()=>L,WorkerResponseType:()=>F,WorkerTask:()=>a,createWorker:()=>We,getJsDelivrBundles:()=>Pe,getLogEventLabel:()=>_e,getLogLevelLabel:()=>Re,getLogOriginLabel:()=>Ie,getLogTopicLabel:()=>me,getPlatformFeatures:()=>se,isFirefox:()=>Oe,isNode:()=>q,isSafari:()=>Ae,selectBundle:()=>Le});module.exports=Te(ve);var V=(d=>(d[d.NONE=0]="NONE",d[d.DEBUG=1]="DEBUG",d[d.INFO=2]="INFO",d[d.WARNING=3]="WARNING",d[d.ERROR=4]="ERROR",d))(V||{}),J=(o=>(o[o.NONE=0]="NONE",o[o.CONNECT=1]="CONNECT",o[o.DISCONNECT=2]="DISCONNECT",o[o.OPEN=3]="OPEN",o[o.QUERY=4]="QUERY",o[o.INSTANTIATE=5]="INSTANTIATE",o))(J||{}),z=(o=>(o[o.NONE=0]="NONE",o[o.OK=1]="OK",o[o.ERROR=2]="ERROR",o[o.START=3]="START",o[o.RUN=4]="RUN",o[o.CAPTURE=5]="CAPTURE",o))(z||{}),$=(d=>(d[d.NONE=0]="NONE",d[d.WEB_WORKER=1]="WEB_WORKER",d[d.NODE_WORKER=2]="NODE_WORKER",d[d.BINDINGS=3]="BINDINGS",d[d.ASYNC_DUCKDB=4]="ASYNC_DUCKDB",d))($||{}),A=class{log(e){}},P=class{constructor(e=2){this.level=e}log(e){e.level>=this.level&&console.log(e)}};function Re(t){switch(t){case 0:return"NONE";case 1:return"DEBUG";case 2:return"INFO";case 3:return"WARNING";case 4:return"ERROR";default:return"?"}}function _e(t){switch(t){case 0:return"NONE";case 1:return"OK";case 2:return"ERROR";case 3:return"START";case 4:return"RUN";case 5:return"CAPTURE";default:return"?"}}function me(t){switch(t){case 1:return"CONNECT";case 2:return"DISCONNECT";case 5:return"INSTANTIATE";case 3:return"OPEN";case 4:return"QUERY";default:return"?"}}function Ie(t){switch(t){case 0:return"NONE";case 1:return"WEB WORKER";case 2:return"NODE WORKER";case 3:return"DUCKDB BINDINGS";case 4:return"DUCKDB";default:return"?"}}var Z=(e=>(e[e.SUCCESS=0]="SUCCESS",e))(Z||{});var p=b(require("apache-arrow"));var I=class{constructor(e,r){this._bindings=e,this._conn=r}get bindings(){return this._bindings}async close(){return this._bindings.disconnect(this._conn)}useUnsafe(e){return e(this._bindings,this._conn)}async query(e){this._bindings.logger.log({timestamp:new Date,level:2,origin:4,topic:4,event:4,value:e});let r=await this._bindings.runQuery(this._conn,e),s=p.RecordBatchReader.from(r);return console.assert(s.isSync()),console.assert(s.isFile()),new p.Table(s)}async send(e){this._bindings.logger.log({timestamp:new Date,level:2,origin:4,topic:4,event:4,value:e});let r=await this._bindings.startPendingQuery(this._conn,e);for(;r==null;)r=await this._bindings.pollPendingQuery(this._conn);let s=new k(this._bindings,this._conn,r),n=await p.RecordBatchReader.from(s);return console.assert(n.isAsync()),console.assert(n.isStream()),n}async cancelSent(){return await this._bindings.cancelPendingQuery(this._conn)}async getTableNames(e){return await this._bindings.getTableNames(this._conn,e)}async prepare(e){let r=await this._bindings.createPrepared(this._conn,e);return new S(this._bindings,this._conn,r)}async insertArrowTable(e,r){let s=p.tableToIPC(e,"stream");await this.insertArrowFromIPCStream(s,r)}async insertArrowFromIPCStream(e,r){await this._bindings.insertArrowFromIPCStream(this._conn,e,r)}async insertCSVFromPath(e,r){await this._bindings.insertCSVFromPath(this._conn,e,r)}async insertJSONFromPath(e,r){await this._bindings.insertJSONFromPath(this._conn,e,r)}},k=class{constructor(e,r,s){this.db=e;this.conn=r;this.header=s;this._first=!0,this._depleted=!1,this._inFlight=null}async next(){if(this._first)return this._first=!1,{done:!1,value:this.header};if(this._depleted)return{done:!0,value:null};let e;return this._inFlight!=null?(e=await this._inFlight,this._inFlight=null):e=await this.db.fetchQueryResults(this.conn),this._depleted=e.length==0,this._depleted||(this._inFlight=this.db.fetchQueryResults(this.conn)),{done:this._depleted,value:e}}[Symbol.asyncIterator](){return this}},S=class{constructor(e,r,s){this.bindings=e,this.connectionId=r,this.statementId=s}async close(){await this.bindings.closePrepared(this.connectionId,this.statementId)}async query(...e){let r=await this.bindings.runPrepared(this.connectionId,this.statementId,e),s=p.RecordBatchReader.from(r);return console.assert(s.isSync()),console.assert(s.isFile()),new p.Table(s)}async send(...e){let r=await this.bindings.sendPrepared(this.connectionId,this.statementId,e),s=new k(this.bindings,this.connectionId,r),n=await p.RecordBatchReader.from(s);return console.assert(n.isAsync()),console.assert(n.isStream()),n}};var L=(c=>(c.CANCEL_PENDING_QUERY="CANCEL_PENDING_QUERY",c.CLOSE_PREPARED="CLOSE_PREPARED",c.COLLECT_FILE_STATISTICS="COLLECT_FILE_STATISTICS",c.CONNECT="CONNECT",c.COPY_FILE_TO_BUFFER="COPY_FILE_TO_BUFFER",c.COPY_FILE_TO_PATH="COPY_FILE_TO_PATH",c.CREATE_PREPARED="CREATE_PREPARED",c.DISCONNECT="DISCONNECT",c.DROP_FILE="DROP_FILE",c.DROP_FILES="DROP_FILES",c.EXPORT_FILE_STATISTICS="EXPORT_FILE_STATISTICS",c.FETCH_QUERY_RESULTS="FETCH_QUERY_RESULTS",c.FLUSH_FILES="FLUSH_FILES",c.GET_FEATURE_FLAGS="GET_FEATURE_FLAGS",c.GET_TABLE_NAMES="GET_TABLE_NAMES",c.GET_VERSION="GET_VERSION",c.GLOB_FILE_INFOS="GLOB_FILE_INFOS",c.INSERT_ARROW_FROM_IPC_STREAM="INSERT_ARROW_FROM_IPC_STREAM",c.INSERT_CSV_FROM_PATH="IMPORT_CSV_FROM_PATH",c.INSERT_JSON_FROM_PATH="IMPORT_JSON_FROM_PATH",c.INSTANTIATE="INSTANTIATE",c.OPEN="OPEN",c.PING="PING",c.POLL_PENDING_QUERY="POLL_PENDING_QUERY",c.REGISTER_FILE_BUFFER="REGISTER_FILE_BUFFER",c.REGISTER_FILE_HANDLE="REGISTER_FILE_HANDLE",c.REGISTER_FILE_URL="REGISTER_FILE_URL",c.RESET="RESET",c.RUN_PREPARED="RUN_PREPARED",c.RUN_QUERY="RUN_QUERY",c.SEND_PREPARED="SEND_PREPARED",c.START_PENDING_QUERY="START_PENDING_QUERY",c.TOKENIZE="TOKENIZE",c))(L||{}),F=(l=>(l.CONNECTION_INFO="CONNECTION_INFO",l.ERROR="ERROR",l.FEATURE_FLAGS="FEATURE_FLAGS",l.FILE_BUFFER="FILE_BUFFER",l.FILE_INFOS="FILE_INFOS",l.FILE_SIZE="FILE_SIZE",l.FILE_STATISTICS="FILE_STATISTICS",l.INSTANTIATE_PROGRESS="INSTANTIATE_PROGRESS",l.LOG="LOG",l.OK="OK",l.PREPARED_STATEMENT_ID="PREPARED_STATEMENT_ID",l.QUERY_PLAN="QUERY_PLAN",l.QUERY_RESULT="QUERY_RESULT",l.QUERY_RESULT_CHUNK="QUERY_RESULT_CHUNK",l.QUERY_RESULT_HEADER="QUERY_RESULT_HEADER",l.QUERY_RESULT_HEADER_OR_NULL="QUERY_RESULT_HEADER_OR_NULL",l.REGISTERED_FILE="REGISTERED_FILE",l.SCRIPT_TOKENS="SCRIPT_TOKENS",l.SUCCESS="SUCCESS",l.TABLE_NAMES="TABLE_NAMES",l.VERSION_STRING="VERSION_STRING",l))(F||{}),a=class{constructor(e,r){this.promiseResolver=()=>{};this.promiseRejecter=()=>{};this.type=e,this.data=r,this.promise=new Promise((s,n)=>{this.promiseResolver=s,this.promiseRejecter=n})}};var i=b(require("apache-arrow"));function h(t){switch(t.typeId){case i.Type.Binary:return{sqlType:"binary"};case i.Type.Bool:return{sqlType:"bool"};case i.Type.Date:return{sqlType:"date"};case i.Type.DateDay:return{sqlType:"date32[d]"};case i.Type.DateMillisecond:return{sqlType:"date64[ms]"};case i.Type.Decimal:{let e=t;return{sqlType:"decimal",precision:e.precision,scale:e.scale}}case i.Type.Float:return{sqlType:"float"};case i.Type.Float16:return{sqlType:"float16"};case i.Type.Float32:return{sqlType:"float32"};case i.Type.Float64:return{sqlType:"float64"};case i.Type.Int:return{sqlType:"int32"};case i.Type.Int16:return{sqlType:"int16"};case i.Type.Int32:return{sqlType:"int32"};case i.Type.Int64:return{sqlType:"int64"};case i.Type.Uint16:return{sqlType:"uint16"};case i.Type.Uint32:return{sqlType:"uint32"};case i.Type.Uint64:return{sqlType:"uint64"};case i.Type.Uint8:return{sqlType:"uint8"};case i.Type.IntervalDayTime:return{sqlType:"interval[dt]"};case i.Type.IntervalYearMonth:return{sqlType:"interval[m]"};case i.Type.List:return{sqlType:"list",valueType:h(t.valueType)};case i.Type.FixedSizeBinary:return{sqlType:"fixedsizebinary",byteWidth:t.byteWidth};case i.Type.Null:return{sqlType:"null"};case i.Type.Utf8:return{sqlType:"utf8"};case i.Type.Struct:return{sqlType:"struct",fields:t.children.map(r=>N(r.name,r.type))};case i.Type.Map:{let e=t;return{sqlType:"map",keyType:h(e.keyType),valueType:h(e.valueType)}}case i.Type.Time:return{sqlType:"time[s]"};case i.Type.TimeMicrosecond:return{sqlType:"time[us]"};case i.Type.TimeMillisecond:return{sqlType:"time[ms]"};case i.Type.TimeNanosecond:return{sqlType:"time[ns]"};case i.Type.TimeSecond:return{sqlType:"time[s]"};case i.Type.Timestamp:return{sqlType:"timestamp",timezone:t.timezone||void 0};case i.Type.TimestampSecond:return{sqlType:"timestamp[s]",timezone:t.timezone||void 0};case i.Type.TimestampMicrosecond:return{sqlType:"timestamp[us]",timezone:t.timezone||void 0};case i.Type.TimestampNanosecond:return{sqlType:"timestamp[ns]",timezone:t.timezone||void 0};case i.Type.TimestampMillisecond:return{sqlType:"timestamp[ms]",timezone:t.timezone||void 0}}throw new Error(`unsupported arrow type: ${t.toString()}`)}function N(t,e){let r=h(e);return r.name=t,r}var ke=new TextEncoder,U=class{constructor(e,r=null){this._onInstantiationProgress=[];this._worker=null;this._workerShutdownPromise=null;this._workerShutdownResolver=()=>{};this._nextMessageId=0;this._pendingRequests=new Map;this._logger=e,this._onMessageHandler=this.onMessage.bind(this),this._onErrorHandler=this.onError.bind(this),this._onCloseHandler=this.onClose.bind(this),r!=null&&this.attach(r)}get logger(){return this._logger}attach(e){this._worker=e,this._worker.addEventListener("message",this._onMessageHandler),this._worker.addEventListener("error",this._onErrorHandler),this._worker.addEventListener("close",this._onCloseHandler),this._workerShutdownPromise=new Promise((r,s)=>{this._workerShutdownResolver=r})}detach(){!this._worker||(this._worker.removeEventListener("message",this._onMessageHandler),this._worker.removeEventListener("error",this._onErrorHandler),this._worker.removeEventListener("close",this._onCloseHandler),this._worker=null,this._workerShutdownResolver(null),this._workerShutdownPromise=null,this._workerShutdownResolver=()=>{})}async terminate(){!this._worker||(this._worker.terminate(),this._worker=null,this._workerShutdownPromise=null,this._workerShutdownResolver=()=>{})}async postTask(e,r=[]){if(!this._worker){console.error("cannot send a message since the worker is not set!");return}let s=this._nextMessageId++;return this._pendingRequests.set(s,e),this._worker.postMessage({messageId:s,type:e.type,data:e.data},r),await e.promise}onMessage(e){let r=e.data;switch(r.type){case"LOG":{this._logger.log(r.data);return}case"INSTANTIATE_PROGRESS":{for(let n of this._onInstantiationProgress)n(r.data);return}}let s=this._pendingRequests.get(r.requestId);if(!s){console.warn(`unassociated response: [${r.requestId}, ${r.type.toString()}]`);return}if(this._pendingRequests.delete(r.requestId),r.type=="ERROR"){let n=new Error(r.data.message);n.name=r.data.name,n.stack=r.data.stack,s.promiseRejecter(n);return}switch(s.type){case"CLOSE_PREPARED":case"COLLECT_FILE_STATISTICS":case"COPY_FILE_TO_PATH":case"DISCONNECT":case"DROP_FILE":case"DROP_FILES":case"FLUSH_FILES":case"INSERT_ARROW_FROM_IPC_STREAM":case"IMPORT_CSV_FROM_PATH":case"IMPORT_JSON_FROM_PATH":case"OPEN":case"PING":case"REGISTER_FILE_BUFFER":case"REGISTER_FILE_HANDLE":case"REGISTER_FILE_URL":case"RESET":if(r.type=="OK"){s.promiseResolver(r.data);return}break;case"INSTANTIATE":if(this._onInstantiationProgress=[],r.type=="OK"){s.promiseResolver(r.data);return}break;case"GLOB_FILE_INFOS":if(r.type=="FILE_INFOS"){s.promiseResolver(r.data);return}break;case"GET_VERSION":if(r.type=="VERSION_STRING"){s.promiseResolver(r.data);return}break;case"GET_FEATURE_FLAGS":if(r.type=="FEATURE_FLAGS"){s.promiseResolver(r.data);return}break;case"GET_TABLE_NAMES":if(r.type=="TABLE_NAMES"){s.promiseResolver(r.data);return}break;case"TOKENIZE":if(r.type=="SCRIPT_TOKENS"){s.promiseResolver(r.data);return}break;case"COPY_FILE_TO_BUFFER":if(r.type=="FILE_BUFFER"){s.promiseResolver(r.data);return}break;case"EXPORT_FILE_STATISTICS":if(r.type=="FILE_STATISTICS"){s.promiseResolver(r.data);return}break;case"CONNECT":if(r.type=="CONNECTION_INFO"){s.promiseResolver(r.data);return}break;case"RUN_PREPARED":case"RUN_QUERY":if(r.type=="QUERY_RESULT"){s.promiseResolver(r.data);return}break;case"SEND_PREPARED":if(r.type=="QUERY_RESULT_HEADER"){s.promiseResolver(r.data);return}break;case"START_PENDING_QUERY":if(r.type=="QUERY_RESULT_HEADER_OR_NULL"){s.promiseResolver(r.data);return}break;case"POLL_PENDING_QUERY":if(r.type=="QUERY_RESULT_HEADER_OR_NULL"){s.promiseResolver(r.data);return}break;case"CANCEL_PENDING_QUERY":if(this._onInstantiationProgress=[],r.type=="SUCCESS"){s.promiseResolver(r.data);return}break;case"FETCH_QUERY_RESULTS":if(r.type=="QUERY_RESULT_CHUNK"){s.promiseResolver(r.data);return}break;case"CREATE_PREPARED":if(r.type=="PREPARED_STATEMENT_ID"){s.promiseResolver(r.data);return}break}s.promiseRejecter(new Error(`unexpected response type: ${r.type.toString()}`))}onError(e){console.error(e),console.error(`error in duckdb worker: ${e.message}`),this._pendingRequests.clear()}onClose(){if(this._workerShutdownResolver(null),this._pendingRequests.size!=0){console.warn(`worker terminated with ${this._pendingRequests.size} pending requests`);return}this._pendingRequests.clear()}async reset(){let e=new a("RESET",null);return await this.postTask(e)}async ping(){let e=new a("PING",null);await this.postTask(e)}async dropFile(e){let r=new a("DROP_FILE",e);return await this.postTask(r)}async dropFiles(){let e=new a("DROP_FILES",null);return await this.postTask(e)}async flushFiles(){let e=new a("FLUSH_FILES",null);return await this.postTask(e)}async instantiate(e,r=null,s=n=>{}){this._onInstantiationProgress.push(s);let n=new a("INSTANTIATE",[e,r]);return await this.postTask(n)}async getVersion(){let e=new a("GET_VERSION",null);return await this.postTask(e)}async getFeatureFlags(){let e=new a("GET_FEATURE_FLAGS",null);return await this.postTask(e)}async open(e){let r=new a("OPEN",e);await this.postTask(r)}async tokenize(e){let r=new a("TOKENIZE",e);return await this.postTask(r)}async connectInternal(){let e=new a("CONNECT",null);return await this.postTask(e)}async connect(){let e=await this.connectInternal();return new I(this,e)}async disconnect(e){let r=new a("DISCONNECT",e);await this.postTask(r)}async runQuery(e,r){let s=new a("RUN_QUERY",[e,r]);return await this.postTask(s)}async startPendingQuery(e,r){let s=new a("START_PENDING_QUERY",[e,r]);return await this.postTask(s)}async pollPendingQuery(e){let r=new a("POLL_PENDING_QUERY",e);return await this.postTask(r)}async cancelPendingQuery(e){let r=new a("CANCEL_PENDING_QUERY",e);return await this.postTask(r)}async fetchQueryResults(e){let r=new a("FETCH_QUERY_RESULTS",e);return await this.postTask(r)}async getTableNames(e,r){let s=new a("GET_TABLE_NAMES",[e,r]);return await this.postTask(s)}async createPrepared(e,r){let s=new a("CREATE_PREPARED",[e,r]);return await this.postTask(s)}async closePrepared(e,r){let s=new a("CLOSE_PREPARED",[e,r]);await this.postTask(s)}async runPrepared(e,r,s){let n=new a("RUN_PREPARED",[e,r,s]);return await this.postTask(n)}async sendPrepared(e,r,s){let n=new a("SEND_PREPARED",[e,r,s]);return await this.postTask(n)}async globFiles(e){let r=new a("GLOB_FILE_INFOS",e);return await this.postTask(r)}async registerFileText(e,r){let s=ke.encode(r);await this.registerFileBuffer(e,s)}async registerFileURL(e,r){r===void 0&&(r=e);let s=new a("REGISTER_FILE_URL",[e,r]);await this.postTask(s)}async registerEmptyFileBuffer(e){let r=new a("REGISTER_FILE_BUFFER",[e,new Uint8Array]);await this.postTask(r)}async registerFileBuffer(e,r){let s=new a("REGISTER_FILE_BUFFER",[e,r]);await this.postTask(s,[r.buffer])}async registerFileHandle(e,r){let s=new a("REGISTER_FILE_HANDLE",[e,r]);await this.postTask(s,[])}async collectFileStatistics(e,r){let s=new a("COLLECT_FILE_STATISTICS",[e,r]);await this.postTask(s,[])}async exportFileStatistics(e){let r=new a("EXPORT_FILE_STATISTICS",e);return await this.postTask(r,[])}async copyFileToBuffer(e){let r=new a("COPY_FILE_TO_BUFFER",e);return await this.postTask(r)}async copyFileToPath(e,r){let s=new a("COPY_FILE_TO_PATH",[e,r]);await this.postTask(s)}async insertArrowFromIPCStream(e,r,s){if(r.length==0)return;let n=new a("INSERT_ARROW_FROM_IPC_STREAM",[e,r,s]);await this.postTask(n,[r.buffer])}async insertCSVFromPath(e,r,s){if(s.columns!==void 0){let d=[];for(let o in s.columns){let u=s.columns[o];d.push(N(o,u))}s.columnsFlat=d,delete s.columns}let n=new a("IMPORT_CSV_FROM_PATH",[e,r,s]);await this.postTask(n)}async insertJSONFromPath(e,r,s){if(s.columns!==void 0){let d=[];for(let o in s.columns){let u=s.columns[o];d.push(N(o,u))}s.columnsFlat=d,delete s.columns}let n=new a("IMPORT_JSON_FROM_PATH",[e,r,s]);await this.postTask(n)}};var f=class{constructor(){this._bindings=null;this._nextMessageId=0}log(e){this.postMessage({messageId:this._nextMessageId++,requestId:0,type:"LOG",data:e},[])}sendOK(e){this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"OK",data:null},[])}failWith(e,r){let s={name:r.name,message:r.message,stack:r.stack||void 0};this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"ERROR",data:s},[])}async onMessage(e){switch(e.type){case"PING":this.sendOK(e);return;case"INSTANTIATE":this._bindings!=null&&this.failWith(e,new Error("duckdb already initialized"));try{this._bindings=await this.instantiate(e.data[0],e.data[1],r=>{this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"INSTANTIATE_PROGRESS",data:r},[])}),this.sendOK(e)}catch(r){this._bindings=null,this.failWith(e,r)}return;default:break}if(!this._bindings)return this.failWith(e,new Error("duckdb is not initialized"));try{switch(e.type){case"GET_VERSION":this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"VERSION_STRING",data:this._bindings.getVersion()},[]);break;case"GET_FEATURE_FLAGS":this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"FEATURE_FLAGS",data:this._bindings.getFeatureFlags()},[]);break;case"RESET":this._bindings.reset(),this.sendOK(e);break;case"OPEN":this._bindings.open(e.data),this.sendOK(e);break;case"DROP_FILE":this._bindings.dropFile(e.data),this.sendOK(e);break;case"DROP_FILES":this._bindings.dropFiles(),this.sendOK(e);break;case"FLUSH_FILES":this._bindings.flushFiles(),this.sendOK(e);break;case"CONNECT":{let r=this._bindings.connect();this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"CONNECTION_INFO",data:r.useUnsafe((s,n)=>n)},[]);break}case"DISCONNECT":this._bindings.disconnect(e.data),this.sendOK(e);break;case"CREATE_PREPARED":{let r=this._bindings.createPrepared(e.data[0],e.data[1]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"PREPARED_STATEMENT_ID",data:r},[]);break}case"CLOSE_PREPARED":{this._bindings.closePrepared(e.data[0],e.data[1]),this.sendOK(e);break}case"RUN_PREPARED":{let r=this._bindings.runPrepared(e.data[0],e.data[1],e.data[2]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT",data:r},[r.buffer]);break}case"RUN_QUERY":{let r=this._bindings.runQuery(e.data[0],e.data[1]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT",data:r},[r.buffer]);break}case"SEND_PREPARED":{let r=this._bindings.sendPrepared(e.data[0],e.data[1],e.data[2]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT_HEADER",data:r},[r.buffer]);break}case"START_PENDING_QUERY":{let r=this._bindings.startPendingQuery(e.data[0],e.data[1]),s=[];r&&s.push(r.buffer),this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT_HEADER_OR_NULL",data:r},s);break}case"POLL_PENDING_QUERY":{let r=this._bindings.pollPendingQuery(e.data),s=[];r&&s.push(r.buffer),this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT_HEADER_OR_NULL",data:r},s);break}case"CANCEL_PENDING_QUERY":{let r=this._bindings.cancelPendingQuery(e.data);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"SUCCESS",data:r},[]);break}case"FETCH_QUERY_RESULTS":{let r=this._bindings.fetchQueryResults(e.data);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT_CHUNK",data:r},[r.buffer]);break}case"GET_TABLE_NAMES":{let r=this._bindings.getTableNames(e.data[0],e.data[1]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"TABLE_NAMES",data:r},[]);break}case"GLOB_FILE_INFOS":{let r=this._bindings.globFiles(e.data);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"FILE_INFOS",data:r},[]);break}case"REGISTER_FILE_URL":this._bindings.registerFileURL(e.data[0],e.data[1]),this.sendOK(e);break;case"REGISTER_FILE_BUFFER":this._bindings.registerFileBuffer(e.data[0],e.data[1]),this.sendOK(e);break;case"REGISTER_FILE_HANDLE":this._bindings.registerFileHandle(e.data[0],e.data[1]),this.sendOK(e);break;case"COPY_FILE_TO_PATH":this._bindings.copyFileToPath(e.data[0],e.data[1]),this.sendOK(e);break;case"COPY_FILE_TO_BUFFER":{let r=this._bindings.copyFileToBuffer(e.data);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"FILE_BUFFER",data:r},[]);break}case"COLLECT_FILE_STATISTICS":this._bindings.collectFileStatistics(e.data[0],e.data[1]),this.sendOK(e);break;case"EXPORT_FILE_STATISTICS":{this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"FILE_STATISTICS",data:this._bindings.exportFileStatistics(e.data)},[]);break}case"INSERT_ARROW_FROM_IPC_STREAM":{this._bindings.insertArrowFromIPCStream(e.data[0],e.data[1],e.data[2]),this.sendOK(e);break}case"IMPORT_CSV_FROM_PATH":{this._bindings.insertCSVFromPath(e.data[0],e.data[1],e.data[2]),this.sendOK(e);break}case"IMPORT_JSON_FROM_PATH":{this._bindings.insertJSONFromPath(e.data[0],e.data[1],e.data[2]),this.sendOK(e);break}case"TOKENIZE":{let r=this._bindings.tokenize(e.data);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"SCRIPT_TOKENS",data:r},[]);break}}}catch(r){return this.failWith(e,r)}}};var T=b(ee());var w={name:"@duckdb/duckdb-wasm",version:"1.16.1",description:"DuckDB powered by WebAssembly",license:"MPL-2.0",repository:{type:"git",url:"https://github.com/duckdb/duckdb-wasm.git"},keywords:["sql","duckdb","relational","database","data","query","wasm","analytics","olap","arrow","parquet","json","csv"],dependencies:{"apache-arrow":"^9.0.0"},devDependencies:{"@types/emscripten":"^1.39.6","@types/jasmine":"^4.3.0","@typescript-eslint/eslint-plugin":"^5.36.1","@typescript-eslint/parser":"^5.36.1",esbuild:"^0.15.6",eslint:"^8.23.0","eslint-plugin-jasmine":"^4.1.3","eslint-plugin-react":"^7.31.1","fast-glob":"^3.2.11",jasmine:"^4.3.0","jasmine-core":"^4.3.0","jasmine-spec-reporter":"^7.0.0","js-sha256":"^0.9.0",karma:"^6.4.0","karma-chrome-launcher":"^3.1.1","karma-coverage":"^2.2.0","karma-firefox-launcher":"^2.1.2","karma-jasmine":"^5.1.0","karma-jasmine-html-reporter":"^2.0.0","karma-sourcemap-loader":"^0.3.8","karma-spec-reporter":"^0.0.34","make-dir":"^3.1.0",nyc:"^15.1.0",prettier:"^2.7.1",puppeteer:"^17.0.0",rimraf:"^3.0.2",s3rver:"^3.7.1",typedoc:"^0.23.13",typescript:"^4.7.4","wasm-feature-detect":"^1.2.11","web-worker":"^1.2.0"},scripts:{"build:debug":"node bundle.mjs debug && tsc --emitDeclarationOnly","build:release":"node bundle.mjs release && tsc --emitDeclarationOnly",docs:"typedoc",report:"node ./coverage.mjs","test:node":"node --enable-source-maps --experimental-wasm-eh ../../node_modules/jasmine/bin/jasmine ./dist/tests-node.cjs","test:node:debug":"node --inspect-brk --enable-source-maps --experimental-wasm-eh ../../node_modules/jasmine/bin/jasmine ./dist/tests-node.cjs","test:node:coverage":"nyc -r json --report-dir ./coverage/node node --experimental-wasm-eh ../../node_modules/jasmine/bin/jasmine ./dist/tests-node.cjs","test:firefox":"karma start ./karma/tests-firefox.cjs","test:chrome":"karma start ./karma/tests-chrome.cjs","test:chrome:eh":"karma start ./karma/tests-chrome-eh.cjs","test:chrome:coverage":"karma start ./karma/tests-chrome-coverage.cjs","test:browser":"karma start ./karma/tests-all.cjs","test:browser:debug":"karma start ./karma/tests-debug.cjs",test:"npm run test:chrome && npm run test:node","test:coverage":"npm run test:chrome:coverage && npm run test:node:coverage && npm run report",lint:"eslint src test"},files:["dist","!dist/types/test"],main:"dist/duckdb-browser.cjs",module:"dist/duckdb-browser.mjs",types:"dist/duckdb-browser.d.ts",jsdelivr:"dist/duckdb-browser.cjs",unpkg:"dist/duckdb-browser.mjs",sideEffects:!1,browser:{fs:!1,path:!1,perf_hooks:!1,os:!1,worker_threads:!1},exports:{"./dist/duckdb-mvp.wasm":"./dist/duckdb-mvp.wasm","./dist/duckdb-eh.wasm":"./dist/duckdb-eh.wasm","./dist/duckdb-coi.wasm":"./dist/duckdb-coi.wasm","./dist/duckdb-browser":"./dist/duckdb-browser.mjs","./dist/duckdb-browser.cjs":"./dist/duckdb-browser.cjs","./dist/duckdb-browser.mjs":"./dist/duckdb-browser.mjs","./dist/duckdb-browser-blocking":"./dist/duckdb-browser-blocking.mjs","./dist/duckdb-browser-blocking.mjs":"./dist/duckdb-browser-blocking.mjs","./dist/duckdb-browser-blocking.cjs":"./dist/duckdb-browser-blocking.cjs","./dist/duckdb-browser-coi.pthread.worker.js":"./dist/duckdb-browser-coi.pthread.worker.js","./dist/duckdb-browser-coi.worker.js":"./dist/duckdb-browser-coi.worker.js","./dist/duckdb-browser-eh.worker.js":"./dist/duckdb-browser-eh.worker.js","./dist/duckdb-browser-mvp.worker.js":"./dist/duckdb-browser-mvp.worker.js","./dist/duckdb-node":"./dist/duckdb-node.cjs","./dist/duckdb-node.cjs":"./dist/duckdb-node.cjs","./dist/duckdb-node-blocking":"./dist/duckdb-node-blocking.cjs","./dist/duckdb-node-blocking.cjs":"./dist/duckdb-node-blocking.cjs","./dist/duckdb-node-eh.worker.cjs":"./dist/duckdb-node-eh.worker.cjs","./dist/duckdb-node-mvp.worker.cjs":"./dist/duckdb-node-mvp.worker.cjs","./blocking":{browser:{types:"./dist/duckdb-browser-blocking.d.ts",import:"./dist/duckdb-browser-blocking.mjs",require:"./dist/duckdb-browser-blocking.cjs"},node:{types:"./dist/duckdb-node-blocking.d.ts",require:"./dist/duckdb-node-blocking.cjs",import:"./dist/duckdb-node-blocking.cjs"},types:"./dist/duckdb-browser-blocking.d.ts",import:"./dist/duckdb-browser-blocking.mjs",require:"./dist/duckdb-browser-blocking.cjs"},".":{browser:{types:"./dist/duckdb-browser.d.ts",import:"./dist/duckdb-browser.mjs",require:"./dist/duckdb-browser.cjs"},node:{types:"./dist/duckdb-node.d.ts",import:"./dist/duckdb-node.cjs",require:"./dist/duckdb-node.cjs"},types:"./dist/duckdb-browser.d.ts",import:"./dist/duckdb-browser.mjs",require:"./dist/duckdb-browser.cjs"}}};var C=w.name,D=w.version,W=w.version.split("."),he=W[0],Ne=W[1],we=W[2];var q=()=>typeof navigator>"u",re=()=>q()?"node":navigator.userAgent,Oe=()=>re().includes("Firefox"),Ae=()=>/^((?!chrome|android).)*safari/i.test(re());function Pe(){let t=`https://cdn.jsdelivr.net/npm/${C}@${D}/dist/`;return{mvp:{mainModule:`${t}duckdb-mvp.wasm`,mainWorker:`${t}duckdb-browser-mvp.worker.js`},eh:{mainModule:`${t}duckdb-eh.wasm`,mainWorker:`${t}duckdb-browser-eh.worker.js`}}}var v=null,M=null,G=null,B=null,x=null;async function se(){return v==null&&(v=typeof BigInt64Array<"u"),M==null&&(M=await T.exceptions()),G==null&&(G=await T.threads()),B==null&&(B=await T.simd()),x==null&&(x=await T.bulkMemory()),{bigInt64Array:v,crossOriginIsolated:q()||globalThis.crossOriginIsolated||!1,wasmExceptions:M,wasmSIMD:B,wasmThreads:G,wasmBulkMemory:x}}async function Le(t){let e=await se();if(e.wasmExceptions){if(e.wasmSIMD&&e.wasmThreads&&e.crossOriginIsolated&&t.coi)return{mainModule:t.coi.mainModule,mainWorker:t.coi.mainWorker,pthreadWorker:t.coi.pthreadWorker};if(t.eh)return{mainModule:t.eh.mainModule,mainWorker:t.eh.mainWorker,pthreadWorker:null}}return{mainModule:t.mvp.mainModule,mainWorker:t.mvp.mainWorker,pthreadWorker:null}}var ae=b(oe());async function We(t){let e=new Request(t),r=await fetch(e),s=URL.createObjectURL(await r.blob());return new ae.default(s)}0&&(module.exports={AsyncDuckDB,AsyncDuckDBConnection,AsyncDuckDBDispatcher,AsyncPreparedStatement,AsyncResultStreamIterator,ConsoleLogger,LogEvent,LogLevel,LogOrigin,LogTopic,PACKAGE_NAME,PACKAGE_VERSION,PACKAGE_VERSION_MAJOR,PACKAGE_VERSION_MINOR,PACKAGE_VERSION_PATCH,StatusCode,VoidLogger,WorkerRequestType,WorkerResponseType,WorkerTask,createWorker,getJsDelivrBundles,getLogEventLabel,getLogLevelLabel,getLogOriginLabel,getLogTopicLabel,getPlatformFeatures,isFirefox,isNode,isSafari,selectBundle});
2
2
  //# sourceMappingURL=duckdb-node.cjs.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../node_modules/wasm-feature-detect/dist/cjs/index.js", "../../../node_modules/web-worker/cjs/node.js", "../src/targets/duckdb.ts", "../src/log.ts", "../src/status.ts", "../src/parallel/async_connection.ts", "../src/parallel/worker_request.ts", "../src/json_typedef.ts", "../src/parallel/async_bindings.ts", "../src/parallel/worker_dispatcher.ts", "../src/platform.ts", "../src/version.ts", "../src/worker.ts"],
3
+ "sources": ["../../wasm-feature-detect/dist/cjs/index.js", "../../web-worker/cjs/node.js", "../src/targets/duckdb.ts", "../src/log.ts", "../src/status.ts", "../src/parallel/async_connection.ts", "../src/parallel/worker_request.ts", "../src/json_typedef.ts", "../src/parallel/async_bindings.ts", "../src/parallel/worker_dispatcher.ts", "../src/platform.ts", "../src/version.ts", "../src/worker.ts"],
4
4
  "sourcesContent": ["\"use strict\";const e=async e=>{try{return(await WebAssembly.instantiate(e)).instance.exports.b(BigInt(0))===BigInt(0)}catch(e){return!1}},a=async e=>{try{return\"undefined\"!=typeof MessageChannel&&(new MessageChannel).port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(e)}catch(e){return!1}},n={bigInt:()=>e(new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,1,126,1,126,3,2,1,0,7,5,1,1,98,0,0,10,6,1,4,0,32,0,11])),bulkMemory:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,3,1,0,1,10,14,1,12,0,65,0,65,0,65,0,252,10,0,0,11])),exceptions:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,8,1,6,0,6,64,25,11,11])),multiValue:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,6,1,96,0,2,127,127,3,2,1,0,10,8,1,6,0,65,0,65,0,11])),mutableGlobals:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,2,8,1,1,97,1,98,3,127,1,6,6,1,127,1,65,0,11,7,5,1,1,97,3,1])),referenceTypes:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,7,1,5,0,208,112,26,11])),saturatedFloatToInt:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,12,1,10,0,67,0,0,0,0,252,0,26,11])),signExtensions:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,8,1,6,0,65,0,192,26,11])),simd:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11])),tailCall:async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,6,1,4,0,18,0,11])),threads:()=>a(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,4,1,3,1,1,10,11,1,9,0,65,0,254,16,2,0,26,11]))};module.exports=n;\n", "/**\n * Copyright 2020 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nconst URL = require('url');\n\nconst VM = require('vm');\n\nconst threads = require('worker_threads');\n\nconst WORKER = Symbol.for('worker');\nconst EVENTS = Symbol.for('events');\n\nclass EventTarget {\n constructor() {\n Object.defineProperty(this, EVENTS, {\n value: new Map()\n });\n }\n\n dispatchEvent(event) {\n event.target = event.currentTarget = this;\n\n if (this['on' + event.type]) {\n try {\n this['on' + event.type](event);\n } catch (err) {\n console.error(err);\n }\n }\n\n const list = this[EVENTS].get(event.type);\n if (list == null) return;\n list.forEach(handler => {\n try {\n handler.call(this, event);\n } catch (err) {\n console.error(err);\n }\n });\n }\n\n addEventListener(type, fn) {\n let events = this[EVENTS].get(type);\n if (!events) this[EVENTS].set(type, events = []);\n events.push(fn);\n }\n\n removeEventListener(type, fn) {\n let events = this[EVENTS].get(type);\n\n if (events) {\n const index = events.indexOf(fn);\n if (index !== -1) events.splice(index, 1);\n }\n }\n\n}\n\nfunction Event(type, target) {\n this.type = type;\n this.timeStamp = Date.now();\n this.target = this.currentTarget = this.data = null;\n} // this module is used self-referentially on both sides of the\n// thread boundary, but behaves differently in each context.\n\n\nmodule.exports = threads.isMainThread ? mainThread() : workerThread();\nconst baseUrl = URL.pathToFileURL(process.cwd() + '/');\n\nfunction mainThread() {\n /**\n * A web-compatible Worker implementation atop Node's worker_threads.\n * - uses DOM-style events (Event.data, Event.type, etc)\n * - supports event handler properties (worker.onmessage)\n * - Worker() constructor accepts a module URL\n * - accepts the {type:'module'} option\n * - emulates WorkerGlobalScope within the worker\n * @param {string} url The URL or module specifier to load\n * @param {object} [options] Worker construction options\n * @param {string} [options.name] Available as `self.name` within the Worker\n * @param {string} [options.type=\"classic\"] Pass \"module\" to create a Module Worker.\n */\n class Worker extends EventTarget {\n constructor(url, options) {\n super();\n const {\n name,\n type\n } = options || {};\n url += '';\n let mod;\n\n if (/^data:/.test(url)) {\n mod = url;\n } else {\n mod = URL.fileURLToPath(new URL.URL(url, baseUrl));\n }\n\n const worker = new threads.Worker(__filename, {\n workerData: {\n mod,\n name,\n type\n }\n });\n Object.defineProperty(this, WORKER, {\n value: worker\n });\n worker.on('message', data => {\n const event = new Event('message');\n event.data = data;\n this.dispatchEvent(event);\n });\n worker.on('error', error => {\n error.type = 'error';\n this.dispatchEvent(error);\n });\n worker.on('exit', () => {\n this.dispatchEvent(new Event('close'));\n });\n }\n\n postMessage(data, transferList) {\n this[WORKER].postMessage(data, transferList);\n }\n\n terminate() {\n this[WORKER].terminate();\n }\n\n }\n\n Worker.prototype.onmessage = Worker.prototype.onerror = Worker.prototype.onclose = null;\n return Worker;\n}\n\nfunction workerThread() {\n let {\n mod,\n name,\n type\n } = threads.workerData; // turn global into a mock WorkerGlobalScope\n\n const self = global.self = global; // enqueue messages to dispatch after modules are loaded\n\n let q = [];\n\n function flush() {\n const buffered = q;\n q = null;\n buffered.forEach(event => {\n self.dispatchEvent(event);\n });\n }\n\n threads.parentPort.on('message', data => {\n const event = new Event('message');\n event.data = data;\n if (q == null) self.dispatchEvent(event);else q.push(event);\n });\n threads.parentPort.on('error', err => {\n err.type = 'Error';\n self.dispatchEvent(err);\n });\n\n class WorkerGlobalScope extends EventTarget {\n postMessage(data, transferList) {\n threads.parentPort.postMessage(data, transferList);\n } // Emulates https://developer.mozilla.org/en-US/docs/Web/API/DedicatedWorkerGlobalScope/close\n\n\n close() {\n process.exit();\n }\n\n }\n\n let proto = Object.getPrototypeOf(global);\n delete proto.constructor;\n Object.defineProperties(WorkerGlobalScope.prototype, proto);\n proto = Object.setPrototypeOf(global, new WorkerGlobalScope());\n ['postMessage', 'addEventListener', 'removeEventListener', 'dispatchEvent'].forEach(fn => {\n proto[fn] = proto[fn].bind(global);\n });\n global.name = name;\n const isDataUrl = /^data:/.test(mod);\n\n if (type === 'module') {\n import(mod).catch(err => {\n if (isDataUrl && err.message === 'Not supported') {\n console.warn('Worker(): Importing data: URLs requires Node 12.10+. Falling back to classic worker.');\n return evaluateDataUrl(mod, name);\n }\n\n console.error(err);\n }).then(flush);\n } else {\n try {\n if (/^data:/.test(mod)) {\n evaluateDataUrl(mod, name);\n } else {\n require(mod);\n }\n } catch (err) {\n console.error(err);\n }\n\n Promise.resolve().then(flush);\n }\n}\n\nfunction evaluateDataUrl(url, name) {\n const {\n data\n } = parseDataUrl(url);\n return VM.runInThisContext(data, {\n filename: 'worker.<' + (name || 'data:') + '>'\n });\n}\n\nfunction parseDataUrl(url) {\n let [m, type, encoding, data] = url.match(/^data: *([^;,]*)(?: *; *([^,]*))? *,(.*)$/) || [];\n if (!m) throw Error('Invalid Data URL.');\n if (encoding) switch (encoding.toLowerCase()) {\n case 'base64':\n data = Buffer.from(data, 'base64').toString();\n break;\n\n default:\n throw Error('Unknown Data URL encoding \"' + encoding + '\"');\n }\n return {\n type,\n data\n };\n}", "export * from '../bindings/config';\nexport * from '../log';\nexport * from '../status';\nexport * from '../parallel';\nexport * from '../platform';\nexport * from '../version';\nexport * from '../worker';\n\nexport { InstantiationProgress, InstantiationProgressHandler } from '../bindings';\n", "export enum LogLevel {\n NONE = 0,\n DEBUG = 1,\n INFO = 2,\n WARNING = 3,\n ERROR = 4,\n}\n\nexport enum LogTopic {\n NONE = 0,\n CONNECT = 1,\n DISCONNECT = 2,\n OPEN = 3,\n QUERY = 4,\n INSTANTIATE = 5,\n}\n\nexport enum LogEvent {\n NONE = 0,\n OK = 1,\n ERROR = 2,\n START = 3,\n RUN = 4,\n CAPTURE = 5,\n}\n\nexport enum LogOrigin {\n NONE = 0,\n WEB_WORKER = 1,\n NODE_WORKER = 2,\n BINDINGS = 3,\n ASYNC_DUCKDB = 4,\n}\n\nexport type LogEntry<O, T, E, V> = {\n readonly timestamp: Date;\n readonly level: LogLevel;\n readonly origin: O;\n readonly topic: T;\n readonly event: E;\n readonly value: V;\n};\n\nexport type LogEntryVariant =\n | LogEntry<LogOrigin.BINDINGS, LogTopic.INSTANTIATE, LogEvent.ERROR, string>\n | LogEntry<LogOrigin.BINDINGS, LogTopic.QUERY, LogEvent.START, void>\n | LogEntry<LogOrigin.BINDINGS, LogTopic.QUERY, LogEvent.OK, void>\n | LogEntry<LogOrigin.BINDINGS, LogTopic.QUERY, LogEvent.ERROR, void>\n | LogEntry<LogOrigin.BINDINGS, LogTopic.CONNECT, LogEvent.OK, void>\n | LogEntry<LogOrigin.BINDINGS, LogTopic.CONNECT, LogEvent.ERROR, void>\n | LogEntry<LogOrigin.BINDINGS, LogTopic.DISCONNECT, LogEvent.OK, void>\n | LogEntry<LogOrigin.BINDINGS, LogTopic.DISCONNECT, LogEvent.ERROR, void>\n | LogEntry<LogOrigin.BINDINGS, LogTopic.OPEN, LogEvent.START, void>\n | LogEntry<LogOrigin.BINDINGS, LogTopic.OPEN, LogEvent.OK, void>\n | LogEntry<LogOrigin.BINDINGS, LogTopic.OPEN, LogEvent.ERROR, void>\n | LogEntry<LogOrigin.ASYNC_DUCKDB, LogTopic.QUERY, LogEvent.RUN, string>;\n\nexport interface Logger {\n log(entry: LogEntryVariant): void;\n}\n\nexport class VoidLogger implements Logger {\n public log(_entry: LogEntryVariant): void {}\n}\n\nexport class ConsoleLogger implements Logger {\n constructor(protected level: LogLevel = LogLevel.INFO) {}\n public log(entry: LogEntryVariant): void {\n if (entry.level >= this.level) {\n console.log(entry);\n }\n }\n}\n\nexport function getLogLevelLabel(level: LogLevel): string {\n switch (level) {\n case LogLevel.NONE:\n return 'NONE';\n case LogLevel.DEBUG:\n return 'DEBUG';\n case LogLevel.INFO:\n return 'INFO';\n case LogLevel.WARNING:\n return 'WARNING';\n case LogLevel.ERROR:\n return 'ERROR';\n default:\n return '?';\n }\n}\n\nexport function getLogEventLabel(event: LogEvent): string {\n switch (event) {\n case LogEvent.NONE:\n return 'NONE';\n case LogEvent.OK:\n return 'OK';\n case LogEvent.ERROR:\n return 'ERROR';\n case LogEvent.START:\n return 'START';\n case LogEvent.RUN:\n return 'RUN';\n case LogEvent.CAPTURE:\n return 'CAPTURE';\n default:\n return '?';\n }\n}\n\nexport function getLogTopicLabel(topic: LogTopic): string {\n switch (topic) {\n case LogTopic.CONNECT:\n return 'CONNECT';\n case LogTopic.DISCONNECT:\n return 'DISCONNECT';\n case LogTopic.INSTANTIATE:\n return 'INSTANTIATE';\n case LogTopic.OPEN:\n return 'OPEN';\n case LogTopic.QUERY:\n return 'QUERY';\n default:\n return '?';\n }\n}\n\nexport function getLogOriginLabel(origin: LogOrigin): string {\n switch (origin) {\n case LogOrigin.NONE:\n return 'NONE';\n case LogOrigin.WEB_WORKER:\n return 'WEB WORKER';\n case LogOrigin.NODE_WORKER:\n return 'NODE WORKER';\n case LogOrigin.BINDINGS:\n return 'DUCKDB BINDINGS';\n case LogOrigin.ASYNC_DUCKDB:\n return 'DUCKDB';\n default:\n return '?';\n }\n}\n", "export enum StatusCode {\n SUCCESS = 0,\n}\n", "import * as arrow from 'apache-arrow';\nimport { AsyncDuckDB } from './async_bindings';\nimport { LogLevel, LogTopic, LogOrigin, LogEvent } from '../log';\nimport { ArrowInsertOptions, CSVInsertOptions, JSONInsertOptions } from '../bindings/insert_options';\n\n/** A thin helper to memoize the connection id */\nexport class AsyncDuckDBConnection {\n /** The async duckdb */\n protected readonly _bindings: AsyncDuckDB;\n /** The conn handle */\n protected readonly _conn: number;\n\n constructor(bindings: AsyncDuckDB, conn: number) {\n this._bindings = bindings;\n this._conn = conn;\n }\n\n /** Access the database bindings */\n public get bindings(): AsyncDuckDB {\n return this._bindings;\n }\n\n /** Disconnect from the database */\n public async close(): Promise<void> {\n return this._bindings.disconnect(this._conn);\n }\n\n /** Brave souls may use this function to consume the underlying connection id */\n public useUnsafe<R>(callback: (bindings: AsyncDuckDB, conn: number) => R) {\n return callback(this._bindings, this._conn);\n }\n\n /** Run a query */\n public async query<T extends { [key: string]: arrow.DataType } = any>(text: string): Promise<arrow.Table<T>> {\n this._bindings.logger.log({\n timestamp: new Date(),\n level: LogLevel.INFO,\n origin: LogOrigin.ASYNC_DUCKDB,\n topic: LogTopic.QUERY,\n event: LogEvent.RUN,\n value: text,\n });\n const buffer = await this._bindings.runQuery(this._conn, text);\n const reader = arrow.RecordBatchReader.from<T>(buffer);\n console.assert(reader.isSync());\n console.assert(reader.isFile());\n return new arrow.Table(reader as arrow.RecordBatchFileReader);\n }\n\n /** Send a query */\n public async send<T extends { [key: string]: arrow.DataType } = any>(\n text: string,\n ): Promise<arrow.AsyncRecordBatchStreamReader<T>> {\n this._bindings.logger.log({\n timestamp: new Date(),\n level: LogLevel.INFO,\n origin: LogOrigin.ASYNC_DUCKDB,\n topic: LogTopic.QUERY,\n event: LogEvent.RUN,\n value: text,\n });\n let header = await this._bindings.startPendingQuery(this._conn, text);\n while (header == null) {\n header = await this._bindings.pollPendingQuery(this._conn);\n }\n const iter = new AsyncResultStreamIterator(this._bindings, this._conn, header);\n const reader = await arrow.RecordBatchReader.from<T>(iter);\n console.assert(reader.isAsync());\n console.assert(reader.isStream());\n return reader as unknown as arrow.AsyncRecordBatchStreamReader<T>; // XXX\n }\n\n /** Cancel a query that was sent earlier */\n public async cancelSent(): Promise<boolean> {\n return await this._bindings.cancelPendingQuery(this._conn);\n }\n\n /** Get table names */\n public async getTableNames(query: string): Promise<string[]> {\n return await this._bindings.getTableNames(this._conn, query);\n }\n\n /** Create a prepared statement */\n public async prepare<T extends { [key: string]: arrow.DataType } = any>(\n text: string,\n ): Promise<AsyncPreparedStatement> {\n const stmt = await this._bindings.createPrepared(this._conn, text);\n return new AsyncPreparedStatement<T>(this._bindings, this._conn, stmt);\n }\n\n /** Insert an arrow table */\n public async insertArrowTable(table: arrow.Table, options: ArrowInsertOptions): Promise<void> {\n const buffer = arrow.tableToIPC(table, 'stream');\n await this.insertArrowFromIPCStream(buffer, options);\n }\n /** Insert an arrow table from an ipc stream */\n public async insertArrowFromIPCStream(buffer: Uint8Array, options: ArrowInsertOptions): Promise<void> {\n await this._bindings.insertArrowFromIPCStream(this._conn, buffer, options);\n }\n /** Insert csv file from path */\n public async insertCSVFromPath(text: string, options: CSVInsertOptions): Promise<void> {\n await this._bindings.insertCSVFromPath(this._conn, text, options);\n }\n /** Insert json file from path */\n public async insertJSONFromPath(text: string, options: JSONInsertOptions): Promise<void> {\n await this._bindings.insertJSONFromPath(this._conn, text, options);\n }\n}\n\n/** An async result stream iterator */\nexport class AsyncResultStreamIterator implements AsyncIterable<Uint8Array> {\n /** First chunk? */\n protected _first: boolean;\n /** Reached end of stream? */\n protected _depleted: boolean;\n /** In-flight */\n protected _inFlight: Promise<Uint8Array> | null;\n\n constructor(\n protected readonly db: AsyncDuckDB,\n protected readonly conn: number,\n protected readonly header: Uint8Array,\n ) {\n this._first = true;\n this._depleted = false;\n this._inFlight = null;\n }\n\n async next(): Promise<IteratorResult<Uint8Array>> {\n if (this._first) {\n this._first = false;\n return { done: false, value: this.header };\n }\n if (this._depleted) {\n return { done: true, value: null };\n }\n let buffer: Uint8Array;\n if (this._inFlight != null) {\n buffer = await this._inFlight;\n this._inFlight = null;\n } else {\n buffer = await this.db.fetchQueryResults(this.conn);\n }\n this._depleted = buffer.length == 0;\n if (!this._depleted) {\n this._inFlight = this.db.fetchQueryResults(this.conn);\n }\n return {\n done: this._depleted,\n value: buffer,\n };\n }\n\n [Symbol.asyncIterator]() {\n return this;\n }\n}\n\n/** A thin helper to bind the prepared statement id */\nexport class AsyncPreparedStatement<T extends { [key: string]: arrow.DataType } = any> {\n /** The bindings */\n protected readonly bindings: AsyncDuckDB;\n /** The connection id */\n protected readonly connectionId: number;\n /** The statement id */\n protected readonly statementId: number;\n\n /** Constructor */\n constructor(bindings: AsyncDuckDB, connectionId: number, statementId: number) {\n this.bindings = bindings;\n this.connectionId = connectionId;\n this.statementId = statementId;\n }\n\n /** Close a prepared statement */\n public async close() {\n await this.bindings.closePrepared(this.connectionId, this.statementId);\n }\n\n /** Run a prepared statement */\n public async query(...params: any[]): Promise<arrow.Table<T>> {\n const buffer = await this.bindings.runPrepared(this.connectionId, this.statementId, params);\n const reader = arrow.RecordBatchReader.from<T>(buffer);\n console.assert(reader.isSync());\n console.assert(reader.isFile());\n return new arrow.Table(reader as arrow.RecordBatchFileReader);\n }\n\n /** Send a prepared statement */\n public async send(...params: any[]): Promise<arrow.AsyncRecordBatchStreamReader<T>> {\n const header = await this.bindings.sendPrepared(this.connectionId, this.statementId, params);\n const iter = new AsyncResultStreamIterator(this.bindings, this.connectionId, header);\n const reader = await arrow.RecordBatchReader.from<T>(iter);\n console.assert(reader.isAsync());\n console.assert(reader.isStream());\n return reader as unknown as arrow.AsyncRecordBatchStreamReader<T>; // XXX\n }\n}\n", "import { CSVInsertOptions, JSONInsertOptions, ArrowInsertOptions } from '../bindings/insert_options';\nimport { LogEntryVariant } from '../log';\nimport { ScriptTokens } from '../bindings/tokens';\nimport { FileStatistics } from '../bindings/file_stats';\nimport { DuckDBConfig } from '../bindings/config';\nimport { WebFile } from '../bindings/web_file';\nimport { InstantiationProgress } from '../bindings/progress';\n\nexport type ConnectionID = number;\nexport type StatementID = number;\n\nexport enum WorkerRequestType {\n CANCEL_PENDING_QUERY = 'CANCEL_PENDING_QUERY',\n CLOSE_PREPARED = 'CLOSE_PREPARED',\n COLLECT_FILE_STATISTICS = 'COLLECT_FILE_STATISTICS',\n CONNECT = 'CONNECT',\n COPY_FILE_TO_BUFFER = 'COPY_FILE_TO_BUFFER',\n COPY_FILE_TO_PATH = 'COPY_FILE_TO_PATH',\n CREATE_PREPARED = 'CREATE_PREPARED',\n DISCONNECT = 'DISCONNECT',\n DROP_FILE = 'DROP_FILE',\n DROP_FILES = 'DROP_FILES',\n EXPORT_FILE_STATISTICS = 'EXPORT_FILE_STATISTICS',\n FETCH_QUERY_RESULTS = 'FETCH_QUERY_RESULTS',\n FLUSH_FILES = 'FLUSH_FILES',\n GET_FEATURE_FLAGS = 'GET_FEATURE_FLAGS',\n GET_TABLE_NAMES = 'GET_TABLE_NAMES',\n GET_VERSION = 'GET_VERSION',\n GLOB_FILE_INFOS = 'GLOB_FILE_INFOS',\n INSERT_ARROW_FROM_IPC_STREAM = 'INSERT_ARROW_FROM_IPC_STREAM',\n INSERT_CSV_FROM_PATH = 'IMPORT_CSV_FROM_PATH',\n INSERT_JSON_FROM_PATH = 'IMPORT_JSON_FROM_PATH',\n INSTANTIATE = 'INSTANTIATE',\n OPEN = 'OPEN',\n PING = 'PING',\n POLL_PENDING_QUERY = 'POLL_PENDING_QUERY',\n REGISTER_FILE_BUFFER = 'REGISTER_FILE_BUFFER',\n REGISTER_FILE_HANDLE = 'REGISTER_FILE_HANDLE',\n REGISTER_FILE_URL = 'REGISTER_FILE_URL',\n RESET = 'RESET',\n RUN_PREPARED = 'RUN_PREPARED',\n RUN_QUERY = 'RUN_QUERY',\n SEND_PREPARED = 'SEND_PREPARED',\n START_PENDING_QUERY = 'START_PENDING_QUERY',\n TOKENIZE = 'TOKENIZE',\n}\n\nexport enum WorkerResponseType {\n CONNECTION_INFO = 'CONNECTION_INFO',\n ERROR = 'ERROR',\n FEATURE_FLAGS = 'FEATURE_FLAGS',\n FILE_BUFFER = 'FILE_BUFFER',\n FILE_INFOS = 'FILE_INFOS',\n FILE_SIZE = 'FILE_SIZE',\n FILE_STATISTICS = 'FILE_STATISTICS',\n INSTANTIATE_PROGRESS = 'INSTANTIATE_PROGRESS',\n LOG = 'LOG',\n OK = 'OK',\n PREPARED_STATEMENT_ID = 'PREPARED_STATEMENT_ID',\n QUERY_PLAN = 'QUERY_PLAN',\n QUERY_RESULT = 'QUERY_RESULT',\n QUERY_RESULT_CHUNK = 'QUERY_RESULT_CHUNK',\n QUERY_RESULT_HEADER = 'QUERY_RESULT_HEADER',\n QUERY_RESULT_HEADER_OR_NULL = 'QUERY_RESULT_HEADER_OR_NULL',\n REGISTERED_FILE = 'REGISTERED_FILE',\n SCRIPT_TOKENS = 'SCRIPT_TOKENS',\n SUCCESS = 'SUCCESS',\n TABLE_NAMES = 'TABLE_NAMES',\n VERSION_STRING = 'VERSION_STRING',\n}\n\nexport type WorkerRequest<T, P> = {\n readonly messageId: number;\n readonly type: T;\n readonly data: P;\n};\n\nexport type WorkerResponse<T, P> = {\n readonly messageId: number;\n readonly requestId: number;\n readonly type: T;\n readonly data: P;\n};\n\nexport type WorkerTaskReturnType<T extends WorkerTaskVariant> = T extends WorkerTask<any, any, infer P> ? P : never;\n\nexport class WorkerTask<T, D, P> {\n readonly type: T;\n readonly data: D;\n promise: Promise<P>;\n promiseResolver: (value: P | PromiseLike<P>) => void = () => {};\n promiseRejecter: (value: any) => void = () => {};\n\n constructor(type: T, data: D) {\n this.type = type;\n this.data = data;\n this.promise = new Promise<P>(\n (resolve: (value: P | PromiseLike<P>) => void, reject: (reason?: void) => void) => {\n this.promiseResolver = resolve;\n this.promiseRejecter = reject;\n },\n );\n }\n}\n\nexport type WorkerRequestVariant =\n | WorkerRequest<WorkerRequestType.CLOSE_PREPARED, [ConnectionID, StatementID]>\n | WorkerRequest<WorkerRequestType.CANCEL_PENDING_QUERY, number>\n | WorkerRequest<WorkerRequestType.COLLECT_FILE_STATISTICS, [string, boolean]>\n | WorkerRequest<WorkerRequestType.CONNECT, null>\n | WorkerRequest<WorkerRequestType.COPY_FILE_TO_BUFFER, string>\n | WorkerRequest<WorkerRequestType.COPY_FILE_TO_PATH, [string, string]>\n | WorkerRequest<WorkerRequestType.CREATE_PREPARED, [ConnectionID, string]>\n | WorkerRequest<WorkerRequestType.DISCONNECT, number>\n | WorkerRequest<WorkerRequestType.DROP_FILE, string>\n | WorkerRequest<WorkerRequestType.DROP_FILES, null>\n | WorkerRequest<WorkerRequestType.EXPORT_FILE_STATISTICS, string>\n | WorkerRequest<WorkerRequestType.FETCH_QUERY_RESULTS, number>\n | WorkerRequest<WorkerRequestType.FLUSH_FILES, null>\n | WorkerRequest<WorkerRequestType.GET_FEATURE_FLAGS, null>\n | WorkerRequest<WorkerRequestType.GET_TABLE_NAMES, [number, string]>\n | WorkerRequest<WorkerRequestType.GET_VERSION, null>\n | WorkerRequest<WorkerRequestType.GLOB_FILE_INFOS, string>\n | WorkerRequest<\n WorkerRequestType.INSERT_ARROW_FROM_IPC_STREAM,\n [number, Uint8Array, ArrowInsertOptions | undefined]\n >\n | WorkerRequest<WorkerRequestType.INSERT_CSV_FROM_PATH, [number, string, CSVInsertOptions]>\n | WorkerRequest<WorkerRequestType.INSERT_JSON_FROM_PATH, [number, string, JSONInsertOptions]>\n | WorkerRequest<WorkerRequestType.INSTANTIATE, [string, string | null]>\n | WorkerRequest<WorkerRequestType.OPEN, DuckDBConfig>\n | WorkerRequest<WorkerRequestType.PING, null>\n | WorkerRequest<WorkerRequestType.POLL_PENDING_QUERY, number>\n | WorkerRequest<WorkerRequestType.REGISTER_FILE_BUFFER, [string, Uint8Array]>\n | WorkerRequest<WorkerRequestType.REGISTER_FILE_HANDLE, [string, any]>\n | WorkerRequest<WorkerRequestType.REGISTER_FILE_URL, [string, string]>\n | WorkerRequest<WorkerRequestType.RESET, null>\n | WorkerRequest<WorkerRequestType.RUN_PREPARED, [number, number, any[]]>\n | WorkerRequest<WorkerRequestType.RUN_QUERY, [number, string]>\n | WorkerRequest<WorkerRequestType.SEND_PREPARED, [number, number, any[]]>\n | WorkerRequest<WorkerRequestType.START_PENDING_QUERY, [number, string]>\n | WorkerRequest<WorkerRequestType.TOKENIZE, string>;\n\nexport type WorkerResponseVariant =\n | WorkerResponse<WorkerResponseType.CONNECTION_INFO, number>\n | WorkerResponse<WorkerResponseType.ERROR, any>\n | WorkerResponse<WorkerResponseType.FEATURE_FLAGS, number>\n | WorkerResponse<WorkerResponseType.FILE_BUFFER, Uint8Array>\n | WorkerResponse<WorkerResponseType.FILE_INFOS, WebFile[]>\n | WorkerResponse<WorkerResponseType.FILE_SIZE, number>\n | WorkerResponse<WorkerResponseType.FILE_STATISTICS, FileStatistics>\n | WorkerResponse<WorkerResponseType.INSTANTIATE_PROGRESS, InstantiationProgress>\n | WorkerResponse<WorkerResponseType.LOG, LogEntryVariant>\n | WorkerResponse<WorkerResponseType.OK, null>\n | WorkerResponse<WorkerResponseType.PREPARED_STATEMENT_ID, number>\n | WorkerResponse<WorkerResponseType.QUERY_PLAN, Uint8Array>\n | WorkerResponse<WorkerResponseType.QUERY_RESULT, Uint8Array>\n | WorkerResponse<WorkerResponseType.QUERY_RESULT_CHUNK, Uint8Array>\n | WorkerResponse<WorkerResponseType.QUERY_RESULT_HEADER, Uint8Array>\n | WorkerResponse<WorkerResponseType.QUERY_RESULT_HEADER_OR_NULL, Uint8Array | null>\n | WorkerResponse<WorkerResponseType.SCRIPT_TOKENS, ScriptTokens>\n | WorkerResponse<WorkerResponseType.SUCCESS, boolean>\n | WorkerResponse<WorkerResponseType.TABLE_NAMES, string[]>\n | WorkerResponse<WorkerResponseType.VERSION_STRING, string>;\n\nexport type WorkerTaskVariant =\n | WorkerTask<WorkerRequestType.COLLECT_FILE_STATISTICS, [string, boolean], null>\n | WorkerTask<WorkerRequestType.CLOSE_PREPARED, [number, number], null>\n | WorkerTask<WorkerRequestType.CONNECT, null, ConnectionID>\n | WorkerTask<WorkerRequestType.COPY_FILE_TO_BUFFER, string, Uint8Array>\n | WorkerTask<WorkerRequestType.COPY_FILE_TO_PATH, [string, string], null>\n | WorkerTask<WorkerRequestType.CREATE_PREPARED, [number, string], number>\n | WorkerTask<WorkerRequestType.DISCONNECT, ConnectionID, null>\n | WorkerTask<WorkerRequestType.DROP_FILE, string, null>\n | WorkerTask<WorkerRequestType.DROP_FILES, null, null>\n | WorkerTask<WorkerRequestType.EXPORT_FILE_STATISTICS, string, FileStatistics>\n | WorkerTask<WorkerRequestType.FETCH_QUERY_RESULTS, ConnectionID, Uint8Array>\n | WorkerTask<WorkerRequestType.FLUSH_FILES, null, null>\n | WorkerTask<WorkerRequestType.GET_FEATURE_FLAGS, null, number>\n | WorkerTask<WorkerRequestType.GET_TABLE_NAMES, [number, string], string[]>\n | WorkerTask<WorkerRequestType.GET_VERSION, null, string>\n | WorkerTask<\n WorkerRequestType.INSERT_ARROW_FROM_IPC_STREAM,\n [number, Uint8Array, ArrowInsertOptions | undefined],\n null\n >\n | WorkerTask<WorkerRequestType.INSERT_CSV_FROM_PATH, [number, string, CSVInsertOptions], null>\n | WorkerTask<WorkerRequestType.INSERT_JSON_FROM_PATH, [number, string, JSONInsertOptions], null>\n | WorkerTask<WorkerRequestType.INSTANTIATE, [string, string | null], null>\n | WorkerTask<WorkerRequestType.OPEN, DuckDBConfig, null>\n | WorkerTask<WorkerRequestType.PING, null, null>\n | WorkerTask<WorkerRequestType.REGISTER_FILE_BUFFER, [string, Uint8Array], null>\n | WorkerTask<WorkerRequestType.REGISTER_FILE_HANDLE, [string, any], null>\n | WorkerTask<WorkerRequestType.REGISTER_FILE_URL, [string, string], null>\n | WorkerTask<WorkerRequestType.GLOB_FILE_INFOS, string, WebFile[]>\n | WorkerTask<WorkerRequestType.RESET, null, null>\n | WorkerTask<WorkerRequestType.RUN_PREPARED, [number, number, any[]], Uint8Array>\n | WorkerTask<WorkerRequestType.RUN_QUERY, [ConnectionID, string], Uint8Array>\n | WorkerTask<WorkerRequestType.SEND_PREPARED, [number, number, any[]], Uint8Array>\n | WorkerTask<WorkerRequestType.START_PENDING_QUERY, [ConnectionID, string], Uint8Array | null>\n | WorkerTask<WorkerRequestType.POLL_PENDING_QUERY, ConnectionID, Uint8Array | null>\n | WorkerTask<WorkerRequestType.CANCEL_PENDING_QUERY, ConnectionID, boolean>\n | WorkerTask<WorkerRequestType.TOKENIZE, string, ScriptTokens>;\n", "import * as arrow from 'apache-arrow';\n\nexport interface SQLType {\n /// The sql type\n sqlType: string;\n /// Is nullable?\n nullable?: boolean;\n /// Decimal precision\n precision?: number;\n /// Decimal scaling\n scale?: number;\n /// Timezone\n timezone?: string;\n /// Byte width (FixedSizeBinary)\n byteWidth?: number;\n /// Key type\n keyType?: SQLType;\n /// Value type\n valueType?: SQLType;\n /// Fields\n fields?: SQLField[];\n}\n\nexport function arrowToSQLType(type: arrow.DataType): SQLType {\n switch (type.typeId) {\n case arrow.Type.Binary:\n return { sqlType: 'binary' };\n case arrow.Type.Bool:\n return { sqlType: 'bool' };\n case arrow.Type.Date:\n return { sqlType: 'date' };\n case arrow.Type.DateDay:\n return { sqlType: 'date32[d]' };\n case arrow.Type.DateMillisecond:\n return { sqlType: 'date64[ms]' };\n case arrow.Type.Decimal: {\n const dec = type as arrow.Decimal;\n return { sqlType: 'decimal', precision: dec.precision, scale: dec.scale };\n }\n case arrow.Type.Float:\n return { sqlType: 'float' };\n case arrow.Type.Float16:\n return { sqlType: 'float16' };\n case arrow.Type.Float32:\n return { sqlType: 'float32' };\n case arrow.Type.Float64:\n return { sqlType: 'float64' };\n case arrow.Type.Int:\n return { sqlType: 'int32' };\n case arrow.Type.Int16:\n return { sqlType: 'int16' };\n case arrow.Type.Int32:\n return { sqlType: 'int32' };\n case arrow.Type.Int64:\n return { sqlType: 'int64' };\n case arrow.Type.Uint16:\n return { sqlType: 'uint16' };\n case arrow.Type.Uint32:\n return { sqlType: 'uint32' };\n case arrow.Type.Uint64:\n return { sqlType: 'uint64' };\n case arrow.Type.Uint8:\n return { sqlType: 'uint8' };\n case arrow.Type.IntervalDayTime:\n return { sqlType: 'interval[dt]' };\n case arrow.Type.IntervalYearMonth:\n return { sqlType: 'interval[m]' };\n case arrow.Type.List: {\n const list = type as arrow.List;\n return {\n sqlType: 'list',\n valueType: arrowToSQLType(list.valueType),\n };\n }\n case arrow.Type.FixedSizeBinary: {\n const bin = type as arrow.FixedSizeBinary;\n return { sqlType: 'fixedsizebinary', byteWidth: bin.byteWidth };\n }\n case arrow.Type.Null:\n return { sqlType: 'null' };\n case arrow.Type.Utf8:\n return { sqlType: 'utf8' };\n case arrow.Type.Struct: {\n const struct_ = type as arrow.Struct;\n return {\n sqlType: 'struct',\n fields: struct_.children.map(c => arrowToSQLField(c.name, c.type)),\n };\n }\n case arrow.Type.Map: {\n const map_ = type as arrow.Map_;\n return {\n sqlType: 'map',\n keyType: arrowToSQLType(map_.keyType),\n valueType: arrowToSQLType(map_.valueType),\n };\n }\n case arrow.Type.Time:\n return { sqlType: 'time[s]' };\n case arrow.Type.TimeMicrosecond:\n return { sqlType: 'time[us]' };\n case arrow.Type.TimeMillisecond:\n return { sqlType: 'time[ms]' };\n case arrow.Type.TimeNanosecond:\n return { sqlType: 'time[ns]' };\n case arrow.Type.TimeSecond:\n return { sqlType: 'time[s]' };\n case arrow.Type.Timestamp: {\n const ts = type as arrow.Timestamp;\n return { sqlType: 'timestamp', timezone: ts.timezone || undefined };\n }\n case arrow.Type.TimestampSecond: {\n const ts = type as arrow.TimestampSecond;\n return { sqlType: 'timestamp[s]', timezone: ts.timezone || undefined };\n }\n case arrow.Type.TimestampMicrosecond: {\n const ts = type as arrow.TimestampMicrosecond;\n return { sqlType: 'timestamp[us]', timezone: ts.timezone || undefined };\n }\n case arrow.Type.TimestampNanosecond: {\n const ts = type as arrow.TimestampNanosecond;\n return { sqlType: 'timestamp[ns]', timezone: ts.timezone || undefined };\n }\n case arrow.Type.TimestampMillisecond: {\n const ts = type as arrow.TimestampMillisecond;\n return { sqlType: 'timestamp[ms]', timezone: ts.timezone || undefined };\n }\n }\n throw new Error(`unsupported arrow type: ${type.toString()}`);\n}\n\nexport type SQLField = SQLType & { name: string };\n\nexport function arrowToSQLField(name: string, type: arrow.DataType): SQLField {\n const t = arrowToSQLType(type) as SQLField;\n t.name = name;\n return t;\n}\n", "import {\n WorkerRequestType,\n WorkerResponseType,\n WorkerResponseVariant,\n WorkerTaskVariant,\n WorkerTask,\n ConnectionID,\n WorkerTaskReturnType,\n} from './worker_request';\nimport { AsyncDuckDBBindings } from './async_bindings_interface';\nimport { Logger } from '../log';\nimport { AsyncDuckDBConnection } from './async_connection';\nimport { CSVInsertOptions, JSONInsertOptions, ArrowInsertOptions } from '../bindings/insert_options';\nimport { ScriptTokens } from '../bindings/tokens';\nimport { FileStatistics } from '../bindings/file_stats';\nimport { DuckDBConfig } from '../bindings/config';\nimport { InstantiationProgress } from '../bindings/progress';\nimport { arrowToSQLField } from '../json_typedef';\nimport { WebFile } from '../bindings/web_file';\n\nconst TEXT_ENCODER = new TextEncoder();\n\nexport class AsyncDuckDB implements AsyncDuckDBBindings {\n /** The message handler */\n protected readonly _onMessageHandler: (event: MessageEvent) => void;\n /** The error handler */\n protected readonly _onErrorHandler: (event: ErrorEvent) => void;\n /** The close handler */\n protected readonly _onCloseHandler: () => void;\n\n /** Instantiate the module */\n protected _onInstantiationProgress: ((p: InstantiationProgress) => void)[] = [];\n\n /** The logger */\n protected readonly _logger: Logger;\n /** The worker */\n protected _worker: Worker | null = null;\n /** The promise for the worker shutdown */\n protected _workerShutdownPromise: Promise<null> | null = null;\n /** Make the worker as terminated */\n protected _workerShutdownResolver: (value: PromiseLike<null> | null) => void = () => {};\n\n /** The next message id */\n protected _nextMessageId = 0;\n /** The pending requests */\n protected _pendingRequests: Map<number, WorkerTaskVariant> = new Map();\n\n constructor(logger: Logger, worker: Worker | null = null) {\n this._logger = logger;\n this._onMessageHandler = this.onMessage.bind(this);\n this._onErrorHandler = this.onError.bind(this);\n this._onCloseHandler = this.onClose.bind(this);\n if (worker != null) this.attach(worker);\n }\n\n /** Get the logger */\n public get logger(): Logger {\n return this._logger;\n }\n\n /** Attach to worker */\n protected attach(worker: Worker): void {\n this._worker = worker;\n this._worker.addEventListener('message', this._onMessageHandler);\n this._worker.addEventListener('error', this._onErrorHandler);\n this._worker.addEventListener('close', this._onCloseHandler);\n this._workerShutdownPromise = new Promise<null>(\n (resolve: (value: PromiseLike<null> | null) => void, _reject: (reason?: void) => void) => {\n this._workerShutdownResolver = resolve;\n },\n );\n }\n\n /** Detach from worker */\n public detach(): void {\n if (!this._worker) return;\n this._worker.removeEventListener('message', this._onMessageHandler);\n this._worker.removeEventListener('error', this._onErrorHandler);\n this._worker.removeEventListener('close', this._onCloseHandler);\n this._worker = null;\n this._workerShutdownResolver(null);\n this._workerShutdownPromise = null;\n this._workerShutdownResolver = () => {};\n }\n\n /** Kill the worker */\n public async terminate(): Promise<void> {\n if (!this._worker) return;\n this._worker.terminate();\n //await this._workerShutdownPromise; TODO deadlocking in karma?\n this._worker = null;\n this._workerShutdownPromise = null;\n this._workerShutdownResolver = () => {};\n }\n\n /** Post a task */\n protected async postTask<W extends WorkerTaskVariant>(\n task: W,\n transfer: ArrayBuffer[] = [],\n ): Promise<WorkerTaskReturnType<W>> {\n if (!this._worker) {\n console.error('cannot send a message since the worker is not set!');\n return undefined as any;\n }\n const mid = this._nextMessageId++;\n this._pendingRequests.set(mid, task);\n this._worker.postMessage(\n {\n messageId: mid,\n type: task.type,\n data: task.data,\n },\n transfer,\n );\n return (await task.promise) as WorkerTaskReturnType<W>;\n }\n\n /** Received a message */\n protected onMessage(event: MessageEvent): void {\n // Unassociated responses?\n const response = event.data as WorkerResponseVariant;\n switch (response.type) {\n // Request failed?\n case WorkerResponseType.LOG: {\n this._logger.log(response.data);\n return;\n }\n // Call progress callback\n case WorkerResponseType.INSTANTIATE_PROGRESS: {\n for (const p of this._onInstantiationProgress) {\n p(response.data);\n }\n return;\n }\n }\n\n // Get associated task\n const task = this._pendingRequests.get(response.requestId);\n if (!task) {\n console.warn(`unassociated response: [${response.requestId}, ${response.type.toString()}]`);\n return;\n }\n this._pendingRequests.delete(response.requestId);\n\n // Request failed?\n if (response.type == WorkerResponseType.ERROR) {\n // Workaround for Firefox not being able to perform structured-clone on Native Errors\n // https://bugzilla.mozilla.org/show_bug.cgi?id=1556604\n const e = new Error(response.data.message);\n e.name = response.data.name;\n e.stack = response.data.stack;\n task.promiseRejecter(e);\n return;\n }\n\n // Otherwise differentiate between the tasks first\n switch (task.type) {\n case WorkerRequestType.CLOSE_PREPARED:\n case WorkerRequestType.COLLECT_FILE_STATISTICS:\n case WorkerRequestType.COPY_FILE_TO_PATH:\n case WorkerRequestType.DISCONNECT:\n case WorkerRequestType.DROP_FILE:\n case WorkerRequestType.DROP_FILES:\n case WorkerRequestType.FLUSH_FILES:\n case WorkerRequestType.INSERT_ARROW_FROM_IPC_STREAM:\n case WorkerRequestType.INSERT_CSV_FROM_PATH:\n case WorkerRequestType.INSERT_JSON_FROM_PATH:\n case WorkerRequestType.OPEN:\n case WorkerRequestType.PING:\n case WorkerRequestType.REGISTER_FILE_BUFFER:\n case WorkerRequestType.REGISTER_FILE_HANDLE:\n case WorkerRequestType.REGISTER_FILE_URL:\n case WorkerRequestType.RESET:\n if (response.type == WorkerResponseType.OK) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n case WorkerRequestType.INSTANTIATE:\n this._onInstantiationProgress = [];\n if (response.type == WorkerResponseType.OK) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n case WorkerRequestType.GLOB_FILE_INFOS:\n if (response.type == WorkerResponseType.FILE_INFOS) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n case WorkerRequestType.GET_VERSION:\n if (response.type == WorkerResponseType.VERSION_STRING) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n case WorkerRequestType.GET_FEATURE_FLAGS:\n if (response.type == WorkerResponseType.FEATURE_FLAGS) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n case WorkerRequestType.GET_TABLE_NAMES:\n if (response.type == WorkerResponseType.TABLE_NAMES) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n case WorkerRequestType.TOKENIZE:\n if (response.type == WorkerResponseType.SCRIPT_TOKENS) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n case WorkerRequestType.COPY_FILE_TO_BUFFER:\n if (response.type == WorkerResponseType.FILE_BUFFER) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n case WorkerRequestType.EXPORT_FILE_STATISTICS:\n if (response.type == WorkerResponseType.FILE_STATISTICS) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n case WorkerRequestType.CONNECT:\n if (response.type == WorkerResponseType.CONNECTION_INFO) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n case WorkerRequestType.RUN_PREPARED:\n case WorkerRequestType.RUN_QUERY:\n if (response.type == WorkerResponseType.QUERY_RESULT) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n case WorkerRequestType.SEND_PREPARED:\n if (response.type == WorkerResponseType.QUERY_RESULT_HEADER) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n case WorkerRequestType.START_PENDING_QUERY:\n if (response.type == WorkerResponseType.QUERY_RESULT_HEADER_OR_NULL) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n case WorkerRequestType.POLL_PENDING_QUERY:\n if (response.type == WorkerResponseType.QUERY_RESULT_HEADER_OR_NULL) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n case WorkerRequestType.CANCEL_PENDING_QUERY:\n this._onInstantiationProgress = [];\n if (response.type == WorkerResponseType.SUCCESS) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n case WorkerRequestType.FETCH_QUERY_RESULTS:\n if (response.type == WorkerResponseType.QUERY_RESULT_CHUNK) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n case WorkerRequestType.CREATE_PREPARED:\n if (response.type == WorkerResponseType.PREPARED_STATEMENT_ID) {\n task.promiseResolver(response.data);\n return;\n }\n break;\n }\n task.promiseRejecter(new Error(`unexpected response type: ${response.type.toString()}`));\n }\n\n /** Received an error */\n protected onError(event: ErrorEvent): void {\n console.error(event);\n console.error(`error in duckdb worker: ${event.message}`);\n this._pendingRequests.clear();\n }\n\n /** The worker was closed */\n protected onClose(): void {\n this._workerShutdownResolver(null);\n if (this._pendingRequests.size != 0) {\n console.warn(`worker terminated with ${this._pendingRequests.size} pending requests`);\n return;\n }\n this._pendingRequests.clear();\n }\n\n /** Reset the duckdb */\n public async reset(): Promise<null> {\n const task = new WorkerTask<WorkerRequestType.RESET, null, null>(WorkerRequestType.RESET, null);\n return await this.postTask(task);\n }\n\n /** Ping the worker thread */\n public async ping(): Promise<any> {\n const task = new WorkerTask<WorkerRequestType.PING, null, null>(WorkerRequestType.PING, null);\n await this.postTask(task);\n }\n /** Try to drop a file */\n public async dropFile(name: string): Promise<null> {\n const task = new WorkerTask<WorkerRequestType.DROP_FILE, string, null>(WorkerRequestType.DROP_FILE, name);\n return await this.postTask(task);\n }\n /** Try to drop files */\n public async dropFiles(): Promise<null> {\n const task = new WorkerTask<WorkerRequestType.DROP_FILES, null, null>(WorkerRequestType.DROP_FILES, null);\n return await this.postTask(task);\n }\n /** Flush all files */\n public async flushFiles(): Promise<null> {\n const task = new WorkerTask<WorkerRequestType.FLUSH_FILES, null, null>(WorkerRequestType.FLUSH_FILES, null);\n return await this.postTask(task);\n }\n\n /** Open the database */\n public async instantiate(\n mainModuleURL: string,\n pthreadWorkerURL: string | null = null,\n progress: (progress: InstantiationProgress) => void = _p => {},\n ): Promise<null> {\n this._onInstantiationProgress.push(progress);\n const task = new WorkerTask<WorkerRequestType.INSTANTIATE, [string, string | null], null>(\n WorkerRequestType.INSTANTIATE,\n [mainModuleURL, pthreadWorkerURL],\n );\n return await this.postTask(task);\n }\n\n /** Get the version */\n public async getVersion(): Promise<string> {\n const task = new WorkerTask<WorkerRequestType.GET_VERSION, null, string>(WorkerRequestType.GET_VERSION, null);\n const version = await this.postTask(task);\n return version;\n }\n\n /** Get the feature flags */\n public async getFeatureFlags(): Promise<number> {\n const task = new WorkerTask<WorkerRequestType.GET_FEATURE_FLAGS, null, number>(\n WorkerRequestType.GET_FEATURE_FLAGS,\n null,\n );\n const feature = await this.postTask(task);\n return feature;\n }\n\n /** Open a new database */\n public async open(config: DuckDBConfig): Promise<void> {\n const task = new WorkerTask<WorkerRequestType.OPEN, DuckDBConfig, null>(WorkerRequestType.OPEN, config);\n await this.postTask(task);\n }\n\n /** Tokenize a script text */\n public async tokenize(text: string): Promise<ScriptTokens> {\n const task = new WorkerTask<WorkerRequestType.TOKENIZE, string, ScriptTokens>(WorkerRequestType.TOKENIZE, text);\n const tokens = await this.postTask(task);\n return tokens;\n }\n\n /** Connect to the database */\n public async connectInternal(): Promise<number> {\n const task = new WorkerTask<WorkerRequestType.CONNECT, null, ConnectionID>(WorkerRequestType.CONNECT, null);\n return await this.postTask(task);\n }\n\n /** Connect to the database */\n public async connect(): Promise<AsyncDuckDBConnection> {\n const cid = await this.connectInternal();\n return new AsyncDuckDBConnection(this, cid);\n }\n\n /** Disconnect from the database */\n public async disconnect(conn: ConnectionID): Promise<void> {\n const task = new WorkerTask<WorkerRequestType.DISCONNECT, ConnectionID, null>(\n WorkerRequestType.DISCONNECT,\n conn,\n );\n await this.postTask(task);\n }\n\n /** Run a query */\n public async runQuery(conn: ConnectionID, text: string): Promise<Uint8Array> {\n const task = new WorkerTask<WorkerRequestType.RUN_QUERY, [ConnectionID, string], Uint8Array>(\n WorkerRequestType.RUN_QUERY,\n [conn, text],\n );\n return await this.postTask(task);\n }\n\n /** Start a pending query */\n public async startPendingQuery(conn: ConnectionID, text: string): Promise<Uint8Array | null> {\n const task = new WorkerTask<WorkerRequestType.START_PENDING_QUERY, [ConnectionID, string], Uint8Array | null>(\n WorkerRequestType.START_PENDING_QUERY,\n [conn, text],\n );\n return await this.postTask(task);\n }\n /** Poll a pending query */\n public async pollPendingQuery(conn: ConnectionID): Promise<Uint8Array | null> {\n const task = new WorkerTask<WorkerRequestType.POLL_PENDING_QUERY, ConnectionID, Uint8Array | null>(\n WorkerRequestType.POLL_PENDING_QUERY,\n conn,\n );\n return await this.postTask(task);\n }\n /** Cancel a pending query */\n public async cancelPendingQuery(conn: ConnectionID): Promise<boolean> {\n const task = new WorkerTask<WorkerRequestType.CANCEL_PENDING_QUERY, ConnectionID, boolean>(\n WorkerRequestType.CANCEL_PENDING_QUERY,\n conn,\n );\n return await this.postTask(task);\n }\n\n /** Fetch query results */\n public async fetchQueryResults(conn: ConnectionID): Promise<Uint8Array> {\n const task = new WorkerTask<WorkerRequestType.FETCH_QUERY_RESULTS, ConnectionID, Uint8Array>(\n WorkerRequestType.FETCH_QUERY_RESULTS,\n conn,\n );\n return await this.postTask(task);\n }\n\n /** Get table names */\n public async getTableNames(conn: number, text: string): Promise<string[]> {\n const task = new WorkerTask<WorkerRequestType.GET_TABLE_NAMES, [number, string], string[]>(\n WorkerRequestType.GET_TABLE_NAMES,\n [conn, text],\n );\n return await this.postTask(task);\n }\n\n /** Prepare a statement and return its identifier */\n public async createPrepared(conn: number, text: string): Promise<number> {\n const task = new WorkerTask<WorkerRequestType.CREATE_PREPARED, [number, string], number>(\n WorkerRequestType.CREATE_PREPARED,\n [conn, text],\n );\n return await this.postTask(task);\n }\n /** Close a prepared statement */\n public async closePrepared(conn: number, statement: number): Promise<void> {\n const task = new WorkerTask<WorkerRequestType.CLOSE_PREPARED, [number, number], null>(\n WorkerRequestType.CLOSE_PREPARED,\n [conn, statement],\n );\n await this.postTask(task);\n }\n /** Execute a prepared statement and return the full result */\n public async runPrepared(conn: number, statement: number, params: any[]): Promise<Uint8Array> {\n const task = new WorkerTask<WorkerRequestType.RUN_PREPARED, [ConnectionID, number, any[]], Uint8Array>(\n WorkerRequestType.RUN_PREPARED,\n [conn, statement, params],\n );\n return await this.postTask(task);\n }\n /** Execute a prepared statement and stream the result */\n public async sendPrepared(conn: number, statement: number, params: any[]): Promise<Uint8Array> {\n const task = new WorkerTask<WorkerRequestType.SEND_PREPARED, [ConnectionID, number, any[]], Uint8Array>(\n WorkerRequestType.SEND_PREPARED,\n [conn, statement, params],\n );\n return await this.postTask(task);\n }\n /** Glob file infos */\n public async globFiles(path: string): Promise<WebFile[]> {\n const task = new WorkerTask<WorkerRequestType.GLOB_FILE_INFOS, string, WebFile[]>(\n WorkerRequestType.GLOB_FILE_INFOS,\n path,\n );\n return await this.postTask(task);\n }\n /** Register file text */\n public async registerFileText(name: string, text: string): Promise<void> {\n const buffer = TEXT_ENCODER.encode(text);\n await this.registerFileBuffer(name, buffer);\n }\n /** Register a file path. */\n public async registerFileURL(name: string, url: string): Promise<void> {\n if (url === undefined) {\n url = name;\n }\n const task = new WorkerTask<WorkerRequestType.REGISTER_FILE_URL, [string, string], null>(\n WorkerRequestType.REGISTER_FILE_URL,\n [name, url],\n );\n await this.postTask(task);\n }\n\n /** Register an empty file buffer. */\n public async registerEmptyFileBuffer(name: string): Promise<void> {\n const task = new WorkerTask<WorkerRequestType.REGISTER_FILE_BUFFER, [string, Uint8Array], null>(\n WorkerRequestType.REGISTER_FILE_BUFFER,\n [name, new Uint8Array()],\n );\n await this.postTask(task);\n }\n\n /** Register a file buffer. */\n public async registerFileBuffer(name: string, buffer: Uint8Array): Promise<void> {\n const task = new WorkerTask<WorkerRequestType.REGISTER_FILE_BUFFER, [string, Uint8Array], null>(\n WorkerRequestType.REGISTER_FILE_BUFFER,\n [name, buffer],\n );\n await this.postTask(task, [buffer.buffer]);\n }\n\n /** Register a file handle. */\n public async registerFileHandle<HandleType>(name: string, handle: HandleType): Promise<void> {\n const task = new WorkerTask<WorkerRequestType.REGISTER_FILE_HANDLE, [string, any], null>(\n WorkerRequestType.REGISTER_FILE_HANDLE,\n [name, handle],\n );\n await this.postTask(task, []);\n }\n\n /** Enable file statistics */\n public async collectFileStatistics(name: string, enable: boolean): Promise<void> {\n const task = new WorkerTask<WorkerRequestType.COLLECT_FILE_STATISTICS, [string, boolean], null>(\n WorkerRequestType.COLLECT_FILE_STATISTICS,\n [name, enable],\n );\n await this.postTask(task, []);\n }\n\n /** Export file statistics */\n public async exportFileStatistics(name: string): Promise<FileStatistics> {\n const task = new WorkerTask<WorkerRequestType.EXPORT_FILE_STATISTICS, string, FileStatistics>(\n WorkerRequestType.EXPORT_FILE_STATISTICS,\n name,\n );\n return await this.postTask(task, []);\n }\n\n /** Copy a file to a buffer. */\n public async copyFileToBuffer(name: string): Promise<Uint8Array> {\n const task = new WorkerTask<WorkerRequestType.COPY_FILE_TO_BUFFER, string, Uint8Array>(\n WorkerRequestType.COPY_FILE_TO_BUFFER,\n name,\n );\n return await this.postTask(task);\n }\n\n /** Copy a file to a path. */\n public async copyFileToPath(name: string, path: string): Promise<void> {\n const task = new WorkerTask<WorkerRequestType.COPY_FILE_TO_PATH, [string, string], null>(\n WorkerRequestType.COPY_FILE_TO_PATH,\n [name, path],\n );\n await this.postTask(task);\n }\n\n /** Insert arrow from an ipc stream */\n public async insertArrowFromIPCStream(\n conn: ConnectionID,\n buffer: Uint8Array,\n options?: ArrowInsertOptions,\n ): Promise<void> {\n if (buffer.length == 0) return;\n // Pass to the worker\n const task = new WorkerTask<\n WorkerRequestType.INSERT_ARROW_FROM_IPC_STREAM,\n [number, Uint8Array, ArrowInsertOptions | undefined],\n null\n >(WorkerRequestType.INSERT_ARROW_FROM_IPC_STREAM, [conn, buffer, options]);\n await this.postTask(task, [buffer.buffer]);\n }\n /** Insert a csv file */\n public async insertCSVFromPath(conn: ConnectionID, path: string, options: CSVInsertOptions): Promise<void> {\n // Flatten the table options\n if (options.columns !== undefined) {\n const out = [];\n for (const k in options.columns) {\n const type = options.columns[k];\n out.push(arrowToSQLField(k, type));\n }\n options.columnsFlat = out;\n delete options.columns;\n }\n\n // Pass to the worker\n const task = new WorkerTask<WorkerRequestType.INSERT_CSV_FROM_PATH, [number, string, CSVInsertOptions], null>(\n WorkerRequestType.INSERT_CSV_FROM_PATH,\n [conn, path, options],\n );\n await this.postTask(task);\n }\n /** Insert a json file */\n public async insertJSONFromPath(conn: ConnectionID, path: string, options: JSONInsertOptions): Promise<void> {\n // Flatten the table options\n if (options.columns !== undefined) {\n const out = [];\n for (const k in options.columns) {\n const type = options.columns[k];\n out.push(arrowToSQLField(k, type));\n }\n options.columnsFlat = out;\n delete options.columns;\n }\n\n // Pass to the worker\n const task = new WorkerTask<WorkerRequestType.INSERT_JSON_FROM_PATH, [number, string, JSONInsertOptions], null>(\n WorkerRequestType.INSERT_JSON_FROM_PATH,\n [conn, path, options],\n );\n await this.postTask(task);\n }\n}\n", "import { DuckDBBindings } from '../bindings';\nimport { WorkerResponseVariant, WorkerRequestVariant, WorkerRequestType, WorkerResponseType } from './worker_request';\nimport { Logger, LogEntryVariant } from '../log';\nimport { InstantiationProgress } from '../bindings/progress';\n\nexport abstract class AsyncDuckDBDispatcher implements Logger {\n /** The bindings */\n protected _bindings: DuckDBBindings | null = null;\n /** The next message id */\n protected _nextMessageId = 0;\n\n /** Instantiate the wasm module */\n protected abstract instantiate(\n mainModule: string,\n pthreadWorker: string | null,\n progress: (p: InstantiationProgress) => void,\n ): Promise<DuckDBBindings>;\n /** Post a response to the main thread */\n protected abstract postMessage(response: WorkerResponseVariant, transfer: ArrayBuffer[]): void;\n\n /** Send log entry to the main thread */\n public log(entry: LogEntryVariant): void {\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: 0,\n type: WorkerResponseType.LOG,\n data: entry,\n },\n [],\n );\n }\n\n /** Send plain OK without further data */\n protected sendOK(request: WorkerRequestVariant): void {\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.OK,\n data: null,\n },\n [],\n );\n }\n\n /** Fail with an error */\n protected failWith(request: WorkerRequestVariant, e: Error): void {\n // Workaround for Firefox not being able to perform structured-clone on Native Errors\n // https://bugzilla.mozilla.org/show_bug.cgi?id=1556604\n const obj: any = {\n name: e.name,\n message: e.message,\n stack: e.stack || undefined,\n };\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.ERROR,\n data: obj,\n },\n [],\n );\n return;\n }\n\n /** Process a request from the main thread */\n public async onMessage(request: WorkerRequestVariant): Promise<void> {\n // First process those requests that don't need bindings\n switch (request.type) {\n case WorkerRequestType.PING:\n this.sendOK(request);\n return;\n case WorkerRequestType.INSTANTIATE:\n if (this._bindings != null) {\n this.failWith(request, new Error('duckdb already initialized'));\n }\n try {\n this._bindings = await this.instantiate(request.data[0], request.data[1], p => {\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.INSTANTIATE_PROGRESS,\n data: p,\n },\n [],\n );\n });\n this.sendOK(request);\n } catch (e: any) {\n this._bindings = null;\n this.failWith(request, e);\n }\n return;\n default:\n break;\n }\n\n // Bindings not initialized?\n if (!this._bindings) {\n return this.failWith(request, new Error('duckdb is not initialized'));\n }\n\n // Catch every exception and forward it as error message to the main thread\n try {\n switch (request.type) {\n case WorkerRequestType.GET_VERSION:\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.VERSION_STRING,\n data: this._bindings.getVersion(),\n },\n [],\n );\n break;\n case WorkerRequestType.GET_FEATURE_FLAGS:\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.FEATURE_FLAGS,\n data: this._bindings.getFeatureFlags(),\n },\n [],\n );\n break;\n case WorkerRequestType.RESET:\n this._bindings.reset();\n this.sendOK(request);\n break;\n\n case WorkerRequestType.OPEN:\n this._bindings.open(request.data);\n this.sendOK(request);\n break;\n case WorkerRequestType.DROP_FILE:\n this._bindings.dropFile(request.data);\n this.sendOK(request);\n break;\n case WorkerRequestType.DROP_FILES:\n this._bindings.dropFiles();\n this.sendOK(request);\n break;\n case WorkerRequestType.FLUSH_FILES:\n this._bindings.flushFiles();\n this.sendOK(request);\n break;\n case WorkerRequestType.CONNECT: {\n const conn = this._bindings.connect();\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.CONNECTION_INFO,\n data: conn.useUnsafe((_, c) => c),\n },\n [],\n );\n break;\n }\n case WorkerRequestType.DISCONNECT:\n this._bindings.disconnect(request.data);\n this.sendOK(request);\n break;\n case WorkerRequestType.CREATE_PREPARED: {\n const result = this._bindings.createPrepared(request.data[0], request.data[1]);\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.PREPARED_STATEMENT_ID,\n data: result,\n },\n [],\n );\n break;\n }\n case WorkerRequestType.CLOSE_PREPARED: {\n this._bindings.closePrepared(request.data[0], request.data[1]);\n this.sendOK(request);\n break;\n }\n case WorkerRequestType.RUN_PREPARED: {\n const result = this._bindings.runPrepared(request.data[0], request.data[1], request.data[2]);\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.QUERY_RESULT,\n data: result,\n },\n [result.buffer],\n );\n break;\n }\n case WorkerRequestType.RUN_QUERY: {\n const result = this._bindings.runQuery(request.data[0], request.data[1]);\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.QUERY_RESULT,\n data: result,\n },\n [result.buffer],\n );\n break;\n }\n case WorkerRequestType.SEND_PREPARED: {\n const result = this._bindings.sendPrepared(request.data[0], request.data[1], request.data[2]);\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.QUERY_RESULT_HEADER,\n data: result,\n },\n [result.buffer],\n );\n break;\n }\n case WorkerRequestType.START_PENDING_QUERY: {\n const result = this._bindings.startPendingQuery(request.data[0], request.data[1]);\n const transfer = [];\n if (result) {\n transfer.push(result.buffer);\n }\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.QUERY_RESULT_HEADER_OR_NULL,\n data: result,\n },\n transfer,\n );\n break;\n }\n case WorkerRequestType.POLL_PENDING_QUERY: {\n const result = this._bindings.pollPendingQuery(request.data);\n const transfer = [];\n if (result) {\n transfer.push(result.buffer);\n }\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.QUERY_RESULT_HEADER_OR_NULL,\n data: result,\n },\n transfer,\n );\n break;\n }\n case WorkerRequestType.CANCEL_PENDING_QUERY: {\n const result = this._bindings.cancelPendingQuery(request.data);\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.SUCCESS,\n data: result,\n },\n [],\n );\n break;\n }\n case WorkerRequestType.FETCH_QUERY_RESULTS: {\n const result = this._bindings.fetchQueryResults(request.data);\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.QUERY_RESULT_CHUNK,\n data: result,\n },\n [result.buffer],\n );\n break;\n }\n case WorkerRequestType.GET_TABLE_NAMES: {\n const result = this._bindings.getTableNames(request.data[0], request.data[1]);\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.TABLE_NAMES,\n data: result,\n },\n [],\n );\n break;\n }\n case WorkerRequestType.GLOB_FILE_INFOS: {\n const infos = this._bindings.globFiles(request.data);\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.FILE_INFOS,\n data: infos,\n },\n [],\n );\n break;\n }\n\n case WorkerRequestType.REGISTER_FILE_URL:\n this._bindings.registerFileURL(request.data[0], request.data[1]);\n this.sendOK(request);\n break;\n\n case WorkerRequestType.REGISTER_FILE_BUFFER:\n this._bindings.registerFileBuffer(request.data[0], request.data[1]);\n this.sendOK(request);\n break;\n\n case WorkerRequestType.REGISTER_FILE_HANDLE:\n this._bindings.registerFileHandle(request.data[0], request.data[1]);\n this.sendOK(request);\n break;\n\n case WorkerRequestType.COPY_FILE_TO_PATH:\n this._bindings.copyFileToPath(request.data[0], request.data[1]);\n this.sendOK(request);\n break;\n\n case WorkerRequestType.COPY_FILE_TO_BUFFER: {\n const buffer = this._bindings.copyFileToBuffer(request.data);\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.FILE_BUFFER,\n data: buffer,\n },\n [],\n );\n break;\n }\n case WorkerRequestType.COLLECT_FILE_STATISTICS:\n this._bindings.collectFileStatistics(request.data[0], request.data[1]);\n this.sendOK(request);\n break;\n\n case WorkerRequestType.EXPORT_FILE_STATISTICS: {\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.FILE_STATISTICS,\n data: this._bindings.exportFileStatistics(request.data),\n },\n [],\n );\n break;\n }\n case WorkerRequestType.INSERT_ARROW_FROM_IPC_STREAM: {\n this._bindings.insertArrowFromIPCStream(request.data[0], request.data[1], request.data[2]);\n this.sendOK(request);\n break;\n }\n case WorkerRequestType.INSERT_CSV_FROM_PATH: {\n this._bindings.insertCSVFromPath(request.data[0], request.data[1], request.data[2]);\n this.sendOK(request);\n break;\n }\n case WorkerRequestType.INSERT_JSON_FROM_PATH: {\n this._bindings.insertJSONFromPath(request.data[0], request.data[1], request.data[2]);\n this.sendOK(request);\n break;\n }\n case WorkerRequestType.TOKENIZE: {\n const result = this._bindings.tokenize(request.data);\n this.postMessage(\n {\n messageId: this._nextMessageId++,\n requestId: request.messageId,\n type: WorkerResponseType.SCRIPT_TOKENS,\n data: result,\n },\n [],\n );\n break;\n }\n }\n } catch (e: any) {\n return this.failWith(request, e);\n }\n }\n}\n", "import * as check from 'wasm-feature-detect';\nimport { PACKAGE_NAME, PACKAGE_VERSION } from './version';\n\n// Platform check taken from here:\n// https://github.com/xtermjs/xterm.js/blob/master/src/common/Platform.ts#L21\n\ninterface INavigator {\n userAgent: string;\n language: string;\n platform: string;\n}\n\n// We're declaring a navigator global here as we expect it in all runtimes (node and browser), but\n// we want this module to live in common.\ndeclare const navigator: INavigator;\n\nexport const isNode = () => (typeof navigator === 'undefined' ? true : false);\nconst userAgent = () => (isNode() ? 'node' : navigator.userAgent);\nexport const isFirefox = () => userAgent().includes('Firefox');\nexport const isSafari = () => /^((?!chrome|android).)*safari/i.test(userAgent());\n\nexport interface DuckDBBundles {\n mvp: {\n mainModule: string;\n mainWorker: string;\n };\n eh?: {\n mainModule: string;\n mainWorker: string;\n };\n coi?: {\n mainModule: string;\n mainWorker: string;\n pthreadWorker: string;\n };\n}\n\nexport function getJsDelivrBundles(): DuckDBBundles {\n const jsdelivr_dist_url = `https://cdn.jsdelivr.net/npm/${PACKAGE_NAME}@${PACKAGE_VERSION}/dist/`;\n return {\n mvp: {\n mainModule: `${jsdelivr_dist_url}duckdb-mvp.wasm`,\n mainWorker: `${jsdelivr_dist_url}duckdb-browser-mvp.worker.js`,\n },\n eh: {\n mainModule: `${jsdelivr_dist_url}duckdb-eh.wasm`,\n mainWorker: `${jsdelivr_dist_url}duckdb-browser-eh.worker.js`,\n },\n // COI is still experimental, let the user opt in explicitly\n };\n}\n\nexport interface DuckDBBundle {\n mainModule: string;\n mainWorker: string | null;\n pthreadWorker: string | null;\n}\n\nexport interface PlatformFeatures {\n bigInt64Array: boolean;\n crossOriginIsolated: boolean;\n wasmExceptions: boolean;\n wasmSIMD: boolean;\n wasmBulkMemory: boolean;\n wasmThreads: boolean;\n}\n\nlet bigInt64Array: boolean | null = null;\nlet wasmExceptions: boolean | null = null;\nlet wasmThreads: boolean | null = null;\nlet wasmSIMD: boolean | null = null;\nlet wasmBulkMemory: boolean | null = null;\n\n// eslint-disable-next-line @typescript-eslint/no-namespace\ndeclare namespace globalThis {\n let crossOriginIsolated: boolean;\n}\n\nexport async function getPlatformFeatures(): Promise<PlatformFeatures> {\n if (bigInt64Array == null) {\n bigInt64Array = typeof BigInt64Array != 'undefined';\n }\n if (wasmExceptions == null) {\n wasmExceptions = await check.exceptions();\n }\n if (wasmThreads == null) {\n wasmThreads = await check.threads();\n }\n if (wasmSIMD == null) {\n wasmSIMD = await check.simd();\n }\n if (wasmBulkMemory == null) {\n wasmBulkMemory = await check.bulkMemory();\n }\n return {\n bigInt64Array: bigInt64Array!,\n crossOriginIsolated: isNode() || globalThis.crossOriginIsolated || false,\n wasmExceptions: wasmExceptions!,\n wasmSIMD: wasmSIMD!,\n wasmThreads: wasmThreads!,\n wasmBulkMemory: wasmBulkMemory!,\n };\n}\n\nexport async function selectBundle(bundles: DuckDBBundles): Promise<DuckDBBundle> {\n const platform = await getPlatformFeatures();\n if (platform.wasmExceptions) {\n if (platform.wasmSIMD && platform.wasmThreads && platform.crossOriginIsolated && bundles.coi) {\n return {\n mainModule: bundles.coi.mainModule,\n mainWorker: bundles.coi.mainWorker,\n pthreadWorker: bundles.coi.pthreadWorker,\n };\n }\n if (bundles.eh) {\n return {\n mainModule: bundles.eh.mainModule,\n mainWorker: bundles.eh.mainWorker,\n pthreadWorker: null,\n };\n }\n }\n return {\n mainModule: bundles.mvp.mainModule,\n mainWorker: bundles.mvp.mainWorker,\n pthreadWorker: null,\n };\n}\n", "import config from '../package.json';\n\nexport const PACKAGE_NAME = config.name;\nexport const PACKAGE_VERSION = config.version;\n\nconst VERSION_PARTS = config.version.split('.');\nexport const PACKAGE_VERSION_MAJOR = VERSION_PARTS[0];\nexport const PACKAGE_VERSION_MINOR = VERSION_PARTS[1];\nexport const PACKAGE_VERSION_PATCH = VERSION_PARTS[2];\n", "import Worker from 'web-worker';\n\nexport async function createWorker(url: string) {\n const request = new Request(url);\n const workerScript = await fetch(request);\n const workerURL = URL.createObjectURL(await workerScript.blob());\n return new Worker(workerURL);\n}\n"],
5
- "mappings": "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",
6
- "names": []
5
+ "mappings": "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",
6
+ "names": ["require_cjs", "__commonJSMin", "exports", "module", "e", "a", "n", "require_node", "__commonJSMin", "exports", "module", "URL", "VM", "threads", "WORKER", "EVENTS", "EventTarget", "event", "err", "list", "handler", "type", "fn", "events", "index", "Event", "target", "mainThread", "workerThread", "baseUrl", "Worker", "url", "options", "name", "mod", "worker", "data", "error", "transferList", "self", "q", "flush", "buffered", "WorkerGlobalScope", "proto", "isDataUrl", "evaluateDataUrl", "parseDataUrl", "m", "encoding", "duckdb_exports", "__export", "AsyncDuckDB", "AsyncDuckDBConnection", "AsyncDuckDBDispatcher", "AsyncPreparedStatement", "AsyncResultStreamIterator", "ConsoleLogger", "LogEvent", "LogLevel", "LogOrigin", "LogTopic", "PACKAGE_NAME", "PACKAGE_VERSION", "PACKAGE_VERSION_MAJOR", "PACKAGE_VERSION_MINOR", "PACKAGE_VERSION_PATCH", "StatusCode", "VoidLogger", "WorkerRequestType", "WorkerResponseType", "WorkerTask", "createWorker", "getJsDelivrBundles", "getLogEventLabel", "getLogLevelLabel", "getLogOriginLabel", "getLogTopicLabel", "getPlatformFeatures", "isFirefox", "isNode", "isSafari", "selectBundle", "__toCommonJS", "LogLevel", "LogTopic", "LogEvent", "LogOrigin", "VoidLogger", "_entry", "ConsoleLogger", "level", "entry", "getLogLevelLabel", "getLogEventLabel", "event", "getLogTopicLabel", "topic", "getLogOriginLabel", "origin", "StatusCode", "arrow", "AsyncDuckDBConnection", "bindings", "conn", "callback", "text", "buffer", "reader", "header", "iter", "AsyncResultStreamIterator", "query", "stmt", "AsyncPreparedStatement", "table", "options", "db", "connectionId", "statementId", "params", "WorkerRequestType", "WorkerResponseType", "WorkerTask", "type", "data", "resolve", "reject", "arrow", "arrowToSQLType", "type", "dec", "c", "arrowToSQLField", "map_", "name", "t", "TEXT_ENCODER", "AsyncDuckDB", "logger", "worker", "resolve", "_reject", "task", "transfer", "mid", "event", "response", "p", "e", "WorkerTask", "name", "mainModuleURL", "pthreadWorkerURL", "progress", "_p", "config", "text", "cid", "AsyncDuckDBConnection", "conn", "statement", "params", "path", "buffer", "url", "handle", "enable", "options", "out", "k", "type", "arrowToSQLField", "AsyncDuckDBDispatcher", "entry", "request", "e", "obj", "p", "conn", "_", "c", "result", "transfer", "infos", "buffer", "check", "PACKAGE_NAME", "package_default", "PACKAGE_VERSION", "VERSION_PARTS", "PACKAGE_VERSION_MAJOR", "PACKAGE_VERSION_MINOR", "PACKAGE_VERSION_PATCH", "isNode", "userAgent", "isFirefox", "isSafari", "getJsDelivrBundles", "jsdelivr_dist_url", "PACKAGE_NAME", "PACKAGE_VERSION", "bigInt64Array", "wasmExceptions", "wasmThreads", "wasmSIMD", "wasmBulkMemory", "getPlatformFeatures", "selectBundle", "bundles", "platform", "import_web_worker", "createWorker", "url", "request", "workerScript", "workerURL", "Worker"]
7
7
  }