@duckdb/duckdb-wasm 1.13.1-dev7.0 → 1.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +70 -6
- package/dist/duckdb-browser-blocking.cjs +24 -23121
- package/dist/duckdb-browser-blocking.cjs.map +3 -3
- package/dist/duckdb-browser-blocking.mjs +23 -32
- package/dist/duckdb-browser-blocking.mjs.map +3 -3
- package/dist/duckdb-browser-coi.pthread.worker.js +26 -2
- package/dist/duckdb-browser-coi.pthread.worker.js.map +3 -3
- package/dist/duckdb-browser-coi.worker.js +33 -17
- package/dist/duckdb-browser-coi.worker.js.map +3 -3
- package/dist/duckdb-browser-eh.worker.js +31 -17
- package/dist/duckdb-browser-eh.worker.js.map +3 -3
- package/dist/duckdb-browser-mvp.worker.js +47 -0
- package/dist/duckdb-browser-mvp.worker.js.map +7 -0
- package/dist/duckdb-browser.cjs +1 -16005
- package/dist/duckdb-browser.cjs.map +3 -3
- package/dist/duckdb-browser.mjs +1 -31
- package/dist/duckdb-browser.mjs.map +3 -3
- package/dist/duckdb-coi.wasm +0 -0
- package/dist/duckdb-eh.wasm +0 -0
- package/dist/{duckdb.wasm → duckdb-mvp.wasm} +0 -0
- package/dist/duckdb-node-blocking.cjs +4 -4
- package/dist/duckdb-node-blocking.cjs.map +3 -3
- package/dist/duckdb-node-eh.worker.cjs +4 -4
- package/dist/duckdb-node-eh.worker.cjs.map +3 -3
- package/dist/duckdb-node-mvp.worker.cjs +36 -0
- package/dist/duckdb-node-mvp.worker.cjs.map +7 -0
- package/dist/duckdb-node.cjs +1 -1
- package/dist/duckdb-node.cjs.map +3 -3
- package/dist/img/duckdb_version_badge.svg +1 -1
- package/dist/tests-browser.js +13784 -15928
- package/dist/tests-browser.js.map +3 -3
- package/dist/tests-node.cjs +5229 -4847
- package/dist/tests-node.cjs.map +3 -3
- package/dist/types/src/bindings/bindings_base.d.ts +10 -2
- package/dist/types/src/bindings/{bindings_browser.d.ts → bindings_browser_mvp.d.ts} +0 -0
- package/dist/types/src/bindings/bindings_interface.d.ts +5 -3
- package/dist/types/src/bindings/{bindings_node.d.ts → bindings_node_mvp.d.ts} +0 -0
- package/dist/types/src/bindings/config.d.ts +0 -2
- package/dist/types/src/bindings/connection.d.ts +2 -0
- package/dist/types/src/bindings/index.d.ts +1 -1
- package/dist/types/src/bindings/insert_options.d.ts +3 -3
- package/dist/types/src/bindings/progress.d.ts +9 -0
- package/dist/types/src/bindings/runtime.d.ts +31 -2
- package/dist/types/src/bindings/runtime_browser.d.ts +4 -2
- package/dist/types/src/bindings/runtime_node.d.ts +1 -1
- package/dist/types/src/bindings/udf_function.d.ts +14 -0
- package/dist/types/src/bindings/udf_runtime.d.ts +3 -0
- package/dist/types/src/bindings/web_file.d.ts +1 -0
- package/dist/types/src/json_typedef.d.ts +17 -0
- package/dist/types/src/log.d.ts +5 -2
- package/dist/types/src/parallel/async_bindings.d.ts +5 -2
- package/dist/types/src/parallel/worker_dispatcher.d.ts +2 -1
- package/dist/types/src/parallel/worker_request.d.ts +4 -2
- package/dist/types/src/platform.d.ts +3 -0
- package/dist/types/src/targets/duckdb-browser-blocking.d.ts +2 -1
- package/dist/types/src/targets/{duckdb-browser.worker.d.ts → duckdb-browser-mvp.worker.d.ts} +0 -0
- package/dist/types/src/targets/duckdb-node-blocking.d.ts +3 -2
- package/dist/types/src/targets/{duckdb-node.worker.d.ts → duckdb-node-mvp.worker.d.ts} +0 -0
- package/dist/types/src/targets/duckdb.d.ts +2 -0
- package/dist/types/src/utils/index.d.ts +1 -0
- package/dist/types/src/utils/s3_helper.d.ts +27 -0
- package/package.json +28 -29
- package/dist/duckdb-browser-coi.d.ts +0 -1
- package/dist/duckdb-browser-eh.d.ts +0 -1
- package/dist/duckdb-browser.worker.js +0 -33
- package/dist/duckdb-browser.worker.js.map +0 -7
- package/dist/duckdb-node-coi.d.ts +0 -1
- package/dist/duckdb-node-eh.d.ts +0 -1
- package/dist/duckdb-node.worker.cjs +0 -36
- package/dist/duckdb-node.worker.cjs.map +0 -7
- package/dist/types/src/bindings/insert.d.ts +0 -7
- package/dist/types/src/flat_arrow.d.ts +0 -14
package/dist/duckdb-node.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var ae=Object.create;var y=Object.defineProperty;var ce=Object.getOwnPropertyDescriptor;var de=Object.getOwnPropertyNames;var le=Object.getPrototypeOf,ue=Object.prototype.hasOwnProperty;var x=s=>y(s,"__esModule",{value:!0});var j=(s,e)=>()=>(e||s((e={exports:{}}).exports,e),e.exports),Ee=(s,e)=>{for(var r in e)y(s,r,{get:e[r],enumerable:!0})},Y=(s,e,r,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of de(e))!ue.call(s,n)&&(r||n!=="default")&&y(s,n,{get:()=>e[n],enumerable:!(t=ce(e,n))||t.enumerable});return s},b=(s,e)=>Y(x(y(s!=null?ae(le(s)):{},"default",!e&&s&&s.__esModule?{get:()=>s.default,enumerable:!0}:{value:s,enumerable:!0})),s),pe=(s=>(e,r)=>s&&s.get(e)||(r=Y(x({}),e,1),s&&s.set(e,r),r))(typeof WeakMap!="undefined"?new WeakMap:0);var ee=j((Tr,X)=>{"use strict";var Ie=async s=>{try{return(await WebAssembly.instantiate(s)).instance.exports.b(BigInt(0))===BigInt(0)}catch{return!1}},ge=async s=>{try{return typeof MessageChannel!="undefined"&&new MessageChannel().port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(s)}catch{return!1}},ye={bigInt:()=>Ie(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:()=>ge(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=ye});var ne=j((yr,se)=>{var v=require("url"),Ke=require("vm"),k=require("worker_threads"),M=Symbol.for("worker"),g=Symbol.for("events"),B=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(t){console.error(t)}let r=this[g].get(e.type);r!=null&&r.forEach(t=>{try{t.call(this,e)}catch(n){console.error(n)}})}addEventListener(e,r){let t=this[g].get(e);t||this[g].set(e,t=[]),t.push(r)}removeEventListener(e,r){let t=this[g].get(e);if(t){let n=t.indexOf(r);n!==-1&&t.splice(n,1)}}};function G(s,e){this.type=s,this.timeStamp=Date.now(),this.target=this.currentTarget=this.data=null}se.exports=k.isMainThread?Je():ze();var Qe=v.pathToFileURL(process.cwd()+"/");function Je(){class s extends B{constructor(r,t){super();let{name:n,type:o}=t||{};r+="";let d;/^data:/.test(r)?d=r:d=v.fileURLToPath(new v.URL(r,Qe));let p=new k.Worker(__filename,{workerData:{mod:d,name:n,type:o}});Object.defineProperty(this,M,{value:p}),p.on("message",m=>{let E=new G("message");E.data=m,this.dispatchEvent(E)}),p.on("error",m=>{m.type="error",this.dispatchEvent(m)}),p.on("exit",()=>{this.dispatchEvent(new G("close"))})}postMessage(r,t){this[M].postMessage(r,t)}terminate(){this[M].terminate()}}return s.prototype.onmessage=s.prototype.onerror=s.prototype.onclose=null,s}function ze(){let{mod:s,name:e,type:r}=k.workerData,t=global.self=global,n=[];function o(){let E=n;n=null,E.forEach(_=>{t.dispatchEvent(_)})}k.parentPort.on("message",E=>{let _=new G("message");_.data=E,n==null?t.dispatchEvent(_):n.push(_)}),k.parentPort.on("error",E=>{E.type="Error",t.dispatchEvent(E)});class d extends B{postMessage(_,ie){k.parentPort.postMessage(_,ie)}close(){process.exit()}}let p=Object.getPrototypeOf(global);delete p.constructor,Object.defineProperties(d.prototype,p),p=Object.setPrototypeOf(global,new d),["postMessage","addEventListener","removeEventListener","dispatchEvent"].forEach(E=>{p[E]=p[E].bind(global)}),global.name=e;let m=/^data:/.test(s);if(r==="module")import(s).catch(E=>{if(m&&E.message==="Not supported")return console.warn("Worker(): Importing data: URLs requires Node 12.10+. Falling back to classic worker."),te(s,e);console.error(E)}).then(o);else{try{/^data:/.test(s)?te(s,e):require(s)}catch(E){console.error(E)}Promise.resolve().then(o)}}function te(s,e){let{data:r}=$e(s);return Ke.runInThisContext(r,{filename:"worker.<"+(e||"data:")+">"})}function $e(s){let[e,r,t,n]=s.match(/^data: *([^;,]*)(?: *; *([^,]*))? *,(.*)$/)||[];if(!e)throw Error("Invalid Data URL.");if(t)switch(t.toLowerCase()){case"base64":n=Buffer.from(n,"base64").toString();break;default:throw Error('Unknown Data URL encoding "'+t+'"')}return{type:r,data:n}}});var Xe={};Ee(Xe,{AsyncDuckDB:()=>$,AsyncDuckDBConnection:()=>S,AsyncDuckDBDispatcher:()=>Z,AsyncPreparedStatement:()=>O,AsyncResultStreamIterator:()=>h,ConsoleLogger:()=>J,LogEvent:()=>V,LogLevel:()=>q,LogOrigin:()=>K,LogTopic:()=>H,PACKAGE_NAME:()=>F,PACKAGE_VERSION:()=>P,PACKAGE_VERSION_MAJOR:()=>xe,PACKAGE_VERSION_MINOR:()=>je,PACKAGE_VERSION_PATCH:()=>Ye,StatusCode:()=>z,VoidLogger:()=>Q,WorkerRequestType:()=>N,WorkerResponseType:()=>A,WorkerTask:()=>a,createWorker:()=>Ze,getJsDelivrBundles:()=>qe,getLogEventLabel:()=>Te,getLogLevelLabel:()=>Re,getLogOriginLabel:()=>me,getLogTopicLabel:()=>_e,getPlatformFeatures:()=>re,selectBundle:()=>Ve});var q=(o=>(o[o.NONE=0]="NONE",o[o.DEBUG=1]="DEBUG",o[o.INFO=2]="INFO",o[o.WARNING=3]="WARNING",o[o.ERROR=4]="ERROR",o))(q||{}),H=(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))(H||{}),V=(d=>(d[d.NONE=0]="NONE",d[d.OK=1]="OK",d[d.ERROR=2]="ERROR",d[d.START=3]="START",d[d.RUN=4]="RUN",d[d.CAPTURE=5]="CAPTURE",d))(V||{}),K=(o=>(o[o.NONE=0]="NONE",o[o.WEB_WORKER=1]="WEB_WORKER",o[o.NODE_WORKER=2]="NODE_WORKER",o[o.BINDINGS=3]="BINDINGS",o[o.ASYNC_DUCKDB=4]="ASYNC_DUCKDB",o))(K||{}),Q=class{log(e){}},J=class{log(e){console.log(e)}};function Re(s){switch(s){case 0:return"NONE";case 1:return"DEBUG";case 2:return"INFO";case 3:return"WARNING";case 4:return"ERROR";default:return"?"}}function Te(s){switch(s){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 _e(s){switch(s){case 1:return"CONNECT";case 2:return"DISCONNECT";case 3:return"OPEN";case 4:return"QUERY";default:return"?"}}function me(s){switch(s){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 R=b(require("apache-arrow"));var S=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),t=R.RecordBatchReader.from(r);return console.assert(t.isSync()),console.assert(t.isFile()),R.Table.from(t)}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.sendQuery(this._conn,e),t=new h(this._bindings,this._conn,r),n=await R.RecordBatchReader.from(t);return console.assert(n.isAsync()),console.assert(n.isStream()),n}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 O(this._bindings,this._conn,r)}async insertArrowTable(e,r){let t=e.serialize("binary",!0);await this.insertArrowFromIPCStream(t,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)}},h=class{constructor(e,r,t){this.db=e;this.conn=r;this.header=t;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}},O=class{constructor(e,r,t){this.bindings=e,this.connectionId=r,this.statementId=t}async close(){await this.bindings.closePrepared(this.connectionId,this.statementId)}async query(...e){let r=await this.bindings.runPrepared(this.connectionId,this.statementId,e),t=R.RecordBatchReader.from(r);return console.assert(t.isSync()),console.assert(t.isFile()),R.Table.from(t)}async send(...e){let r=await this.bindings.sendPrepared(this.connectionId,this.statementId,e),t=new h(this.bindings,this.connectionId,r),n=await R.RecordBatchReader.from(t);return console.assert(n.isAsync()),console.assert(n.isStream()),n}};var N=(c=>(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.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.SEND_QUERY="SEND_QUERY",c.TOKENIZE="TOKENIZE",c))(N||{}),A=(u=>(u.CONNECTION_INFO="CONNECTION_INFO",u.ERROR="ERROR",u.FEATURE_FLAGS="FEATURE_FLAGS",u.FILE_BUFFER="FILE_BUFFER",u.FILE_INFOS="FILE_INFOS",u.FILE_SIZE="FILE_SIZE",u.FILE_STATISTICS="FILE_STATISTICS",u.LOG="LOG",u.OK="OK",u.PREPARED_STATEMENT_ID="PREPARED_STATEMENT_ID",u.QUERY_PLAN="QUERY_PLAN",u.QUERY_RESULT="QUERY_RESULT",u.QUERY_RESULT_CHUNK="QUERY_RESULT_CHUNK",u.QUERY_START="QUERY_START",u.REGISTERED_FILE="REGISTERED_FILE",u.SCRIPT_TOKENS="SCRIPT_TOKENS",u.SUCCESS="SUCCESS",u.TABLE_NAMES="TABLE_NAMES",u.VERSION_STRING="VERSION_STRING",u))(A||{}),a=class{constructor(e,r){this.promiseResolver=()=>{};this.promiseRejecter=()=>{};this.type=e,this.data=r,this.promise=new Promise((t,n)=>{this.promiseResolver=t,this.promiseRejecter=n})}};var i=b(require("apache-arrow"));function I(s,e){switch(e.typeId){case i.Type.Binary:return{name:s,type:"binary"};case i.Type.Bool:return{name:s,type:"bool"};case i.Type.Date:return{name:s,type:"date"};case i.Type.DateDay:return{name:s,type:"date32[d]"};case i.Type.DateMillisecond:return{name:s,type:"date64[ms]"};case i.Type.Decimal:{let r=e;return{name:s,type:"decimal",precision:r.precision,scale:r.scale}}case i.Type.Float:return{name:s,type:"float"};case i.Type.Float16:return{name:s,type:"float16"};case i.Type.Float32:return{name:s,type:"float32"};case i.Type.Float64:return{name:s,type:"float64"};case i.Type.Int:return{name:s,type:"int32"};case i.Type.Int16:return{name:s,type:"int16"};case i.Type.Int32:return{name:s,type:"int32"};case i.Type.Int64:return{name:s,type:"int64"};case i.Type.Uint16:return{name:s,type:"uint16"};case i.Type.Uint32:return{name:s,type:"uint32"};case i.Type.Uint64:return{name:s,type:"uint64"};case i.Type.Uint8:return{name:s,type:"uint8"};case i.Type.IntervalDayTime:return{name:s,type:"interval[dt]"};case i.Type.IntervalYearMonth:return{name:s,type:"interval[m]"};case i.Type.List:{let r=e;return{name:s,type:"list",children:[I(r.valueField.name,r.valueField.type)]}}case i.Type.FixedSizeBinary:return{name:s,type:"fixedsizebinary",byteWidth:e.byteWidth};case i.Type.Null:return{name:s,type:"null"};case i.Type.Utf8:return{name:s,type:"utf8"};case i.Type.Struct:return{name:s,type:"struct",children:e.children.map(t=>I(t.name,t.type))};case i.Type.Time:return{name:s,type:"time[s]"};case i.Type.TimeMicrosecond:return{name:s,type:"time[us]"};case i.Type.TimeMillisecond:return{name:s,type:"time[ms]"};case i.Type.TimeNanosecond:return{name:s,type:"time[ns]"};case i.Type.TimeSecond:return{name:s,type:"time[s]"};case i.Type.Timestamp:return{name:s,type:"timestamp",timezone:e.timezone||void 0};case i.Type.TimestampSecond:return{name:s,type:"timestamp[s]",timezone:e.timezone||void 0};case i.Type.TimestampMicrosecond:return{name:s,type:"timestamp[us]",timezone:e.timezone||void 0};case i.Type.TimestampNanosecond:return{name:s,type:"timestamp[ns]",timezone:e.timezone||void 0};case i.Type.TimestampMillisecond:return{name:s,type:"timestamp[ms]",timezone:e.timezone||void 0}}throw new Error(`unsupported arrow type: ${e.toString()}`)}var ke=new TextEncoder,$=class{constructor(e,r=null){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,t)=>{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 t=this._nextMessageId++;return this._pendingRequests.set(t,e),this._worker.postMessage({messageId:t,type:e.type,data:e.data}),await e.promise}onMessage(e){let r=e.data;r.type=="LOG"&&this._logger.log(r.data);let t=this._pendingRequests.get(r.requestId);if(!t){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,t.promiseRejecter(n);return}switch(t.type){case"CLOSE_PREPARED":case"COLLECT_FILE_STATISTICS":case"COPY_FILE_TO_PATH":case"DISCONNECT":case"DROP_FILES":case"FLUSH_FILES":case"INSERT_ARROW_FROM_IPC_STREAM":case"IMPORT_CSV_FROM_PATH":case"IMPORT_JSON_FROM_PATH":case"INSTANTIATE":case"OPEN":case"PING":case"REGISTER_FILE_BUFFER":case"REGISTER_FILE_HANDLE":case"REGISTER_FILE_URL":case"RESET":if(r.type=="OK"){t.promiseResolver(r.data);return}break;case"GLOB_FILE_INFOS":if(r.type=="FILE_INFOS"){t.promiseResolver(r.data);return}break;case"GET_VERSION":if(r.type=="VERSION_STRING"){t.promiseResolver(r.data);return}break;case"GET_FEATURE_FLAGS":if(r.type=="FEATURE_FLAGS"){t.promiseResolver(r.data);return}break;case"GET_TABLE_NAMES":if(r.type=="TABLE_NAMES"){t.promiseResolver(r.data);return}break;case"TOKENIZE":if(r.type=="SCRIPT_TOKENS"){t.promiseResolver(r.data);return}break;case"DROP_FILE":if(r.type=="SUCCESS"){t.promiseResolver(r.data);return}break;case"COPY_FILE_TO_BUFFER":if(r.type=="FILE_BUFFER"){t.promiseResolver(r.data);return}break;case"EXPORT_FILE_STATISTICS":if(r.type=="FILE_STATISTICS"){t.promiseResolver(r.data);return}break;case"CONNECT":if(r.type=="CONNECTION_INFO"){t.promiseResolver(r.data);return}break;case"RUN_PREPARED":case"RUN_QUERY":if(r.type=="QUERY_RESULT"){t.promiseResolver(r.data);return}break;case"SEND_PREPARED":case"SEND_QUERY":if(r.type=="QUERY_START"){t.promiseResolver(r.data);return}break;case"FETCH_QUERY_RESULTS":if(r.type=="QUERY_RESULT_CHUNK"){t.promiseResolver(r.data);return}break;case"CREATE_PREPARED":if(r.type=="PREPARED_STATEMENT_ID"){t.promiseResolver(r.data);return}break}t.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){let t=new a("INSTANTIATE",[e,r]);return await this.postTask(t)}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 S(this,e)}async disconnect(e){let r=new a("DISCONNECT",e);await this.postTask(r)}async runQuery(e,r){let t=new a("RUN_QUERY",[e,r]);return await this.postTask(t)}async sendQuery(e,r){let t=new a("SEND_QUERY",[e,r]);return await this.postTask(t)}async fetchQueryResults(e){let r=new a("FETCH_QUERY_RESULTS",e);return await this.postTask(r)}async getTableNames(e,r){let t=new a("GET_TABLE_NAMES",[e,r]);return await this.postTask(t)}async createPrepared(e,r){let t=new a("CREATE_PREPARED",[e,r]);return await this.postTask(t)}async closePrepared(e,r){let t=new a("CLOSE_PREPARED",[e,r]);await this.postTask(t)}async runPrepared(e,r,t){let n=new a("RUN_PREPARED",[e,r,t]);return await this.postTask(n)}async sendPrepared(e,r,t){let n=new a("SEND_PREPARED",[e,r,t]);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 t=ke.encode(r);await this.registerFileBuffer(e,t)}async registerFileURL(e,r){r===void 0&&(r=e);let t=new a("REGISTER_FILE_URL",[e,r]);await this.postTask(t)}async registerEmptyFileBuffer(e){let r=new a("REGISTER_FILE_BUFFER",[e,new Uint8Array]);await this.postTask(r)}async registerFileBuffer(e,r){let t=new a("REGISTER_FILE_BUFFER",[e,r]);await this.postTask(t,[r.buffer])}async registerFileHandle(e,r){let t=new a("REGISTER_FILE_HANDLE",[e,r]);await this.postTask(t,[])}async collectFileStatistics(e,r){let t=new a("COLLECT_FILE_STATISTICS",[e,r]);await this.postTask(t,[])}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 t=new a("COPY_FILE_TO_PATH",[e,r]);await this.postTask(t)}async insertArrowFromIPCStream(e,r,t){if(r.length==0)return;let n=new a("INSERT_ARROW_FROM_IPC_STREAM",[e,r,t]);await this.postTask(n,[r.buffer])}async insertCSVFromPath(e,r,t){if(t.columns!==void 0){let o=[];for(let d in t.columns){let p=t.columns[d];o.push(I(d,p))}t.columnsFlat=o,delete t.columns}let n=new a("IMPORT_CSV_FROM_PATH",[e,r,t]);await this.postTask(n)}async insertJSONFromPath(e,r,t){if(t.columns!==void 0){let o=[];for(let d in t.columns){let p=t.columns[d];o.push(I(d,p))}t.columnsFlat=o,delete t.columns}let n=new a("IMPORT_JSON_FROM_PATH",[e,r,t]);await this.postTask(n)}};var Z=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 t={name:r.name,message:r.message,stack:r.stack||void 0};this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"ERROR",data:t},[])}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]),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.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"SUCCESS",data:this._bindings.dropFile(e.data)},[]);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((t,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_START",data:r},[r.buffer]);break}case"SEND_QUERY":{let r=this._bindings.sendQuery(e.data[0],e.data[1]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_START",data:r},[r.buffer]);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 be="@duckdb/duckdb-wasm",Se="1.13.1-dev7.0",he="DuckDB powered by WebAssembly",we="MPL-2.0",Oe={type:"git",url:"https://github.com/duckdb/duckdb-wasm.git"},Ne=["sql","duckdb","relational","database","data","query","wasm","analytics","olap","arrow","parquet","json","csv"],Ae={"apache-arrow":"^6.0.1","wasm-feature-detect":"^1.2.11","fast-glob":"^3.2.10","web-worker":"^1.2.0","@types/emscripten":"^1.39.6"},Fe={"@types/jasmine":"^3.10.3","@typescript-eslint/eslint-plugin":"^5.9.1","@typescript-eslint/parser":"^5.9.1",esbuild:"^0.14.11",eslint:"^8.6.0","eslint-plugin-jasmine":"^4.1.3","eslint-plugin-react":"^7.28.0",jasmine:"^4.0.2","jasmine-core":"^4.0.0","jasmine-spec-reporter":"^7.0.0",karma:"^6.3.10","karma-chrome-launcher":"^3.1.0","karma-coverage":"^2.1.0","karma-firefox-launcher":"^2.1.2","karma-jasmine":"^4.0.1","karma-jasmine-html-reporter":"^1.7.0","karma-sourcemap-loader":"^0.3.8","karma-spec-reporter":"^0.0.33","make-dir":"^3.1.0",nyc:"^15.1.0",prettier:"^2.5.1",puppeteer:"^13.0.1",rimraf:"^3.0.2",typedoc:"^0.22.10",typescript:"^4.5.4"},Pe={fsevents:"*"},Le={"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"},fe=["dist","!dist/types/test"],Ce="dist/duckdb-browser.cjs",We="dist/duckdb-browser.mjs",De="dist/duckdb-browser.d.ts",Ue="dist/duckdb-browser.cjs",ve="dist/duckdb-browser.mjs",Me=!1,Be={fs:!1,path:!1,perf_hooks:!1,os:!1,worker_threads:!1},Ge={"./dist/duckdb.wasm":"./dist/duckdb.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.worker.js":"./dist/duckdb-browser.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.worker.cjs":"./dist/duckdb-node.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"}},w={name:be,version:Se,description:he,license:we,repository:Oe,keywords:Ne,dependencies:Ae,devDependencies:Fe,optionalDependencies:Pe,scripts:Le,files:fe,main:Ce,module:We,types:De,jsdelivr:Ue,unpkg:ve,sideEffects:Me,browser:Be,exports:Ge};var F=w.name,P=w.version,L=w.version.split("."),xe=L[0],je=L[1],Ye=L[2];function qe(){let s=`https://cdn.jsdelivr.net/npm/${F}@${P}/dist/`;return{mvp:{mainModule:`${s}duckdb.wasm`,mainWorker:`${s}duckdb-browser.worker.js`},eh:{mainModule:`${s}duckdb-eh.wasm`,mainWorker:`${s}duckdb-browser-eh.worker.js`}}}var f=null,C=null,W=null,D=null,U=null;function He(){return typeof process!="undefined"&&process.release.name==="node"}async function re(){return f==null&&(f=typeof BigInt64Array!="undefined"),C==null&&(C=await T.exceptions()),W==null&&(W=await T.threads()),D==null&&(D=await T.simd()),U==null&&(U=await T.bulkMemory()),{bigInt64Array:f,crossOriginIsolated:He()||globalThis.crossOriginIsolated||!1,wasmExceptions:C,wasmSIMD:D,wasmThreads:W,wasmBulkMemory:U}}async function Ve(s){let e=await re();if(e.wasmExceptions){if(e.wasmSIMD&&e.wasmThreads&&e.crossOriginIsolated&&s.coi)return{mainModule:s.coi.mainModule,mainWorker:s.coi.mainWorker,pthreadWorker:s.coi.pthreadWorker};if(s.eh)return{mainModule:s.eh.mainModule,mainWorker:s.eh.mainWorker,pthreadWorker:null}}return{mainModule:s.mvp.mainModule,mainWorker:s.mvp.mainWorker,pthreadWorker:null}}var oe=b(ne());async function Ze(s){let e=new Request(s),r=await fetch(e),t=URL.createObjectURL(await r.blob());return new oe.default(t)}module.exports=pe(Xe);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,selectBundle});
|
|
1
|
+
var de=Object.create;var b=Object.defineProperty;var le=Object.getOwnPropertyDescriptor;var ue=Object.getOwnPropertyNames;var Ee=Object.getPrototypeOf,pe=Object.prototype.hasOwnProperty;var K=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Te=(t,e)=>{for(var r in e)b(t,r,{get:e[r],enumerable:!0})},V=(t,e,r,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of ue(e))!pe.call(t,n)&&n!==r&&b(t,n,{get:()=>e[n],enumerable:!(s=le(e,n))||s.enumerable});return t};var S=(t,e,r)=>(r=t!=null?de(Ee(t)):{},V(e||!t||!t.__esModule?b(r,"default",{value:t,enumerable:!0}):r,t)),Re=t=>V(b({},"__esModule",{value:!0}),t);var re=K((_r,ee)=>{"use strict";var ye=async t=>{try{return(await WebAssembly.instantiate(t)).instance.exports.b(BigInt(0))===BigInt(0)}catch{return!1}},be=async t=>{try{return typeof MessageChannel<"u"&&new MessageChannel().port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(t)}catch{return!1}},Se={bigInt:()=>ye(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:()=>be(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]))};ee.exports=Se});var ae=K((Sr,oe)=>{var Y=require("url"),Je=require("vm"),k=require("worker_threads"),Q=Symbol.for("worker"),y=Symbol.for("events"),A=class{constructor(){Object.defineProperty(this,y,{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[y].get(e.type);r!=null&&r.forEach(s=>{try{s.call(this,e)}catch(n){console.error(n)}})}addEventListener(e,r){let s=this[y].get(e);s||this[y].set(e,s=[]),s.push(r)}removeEventListener(e,r){let s=this[y].get(e);if(s){let n=s.indexOf(r);n!==-1&&s.splice(n,1)}}};function H(t,e){this.type=t,this.timeStamp=Date.now(),this.target=this.currentTarget=this.data=null}oe.exports=k.isMainThread?$e():Ze();var ze=Y.pathToFileURL(process.cwd()+"/");function $e(){class t extends A{constructor(r,s){super();let{name:n,type:c}=s||{};r+="";let o;/^data:/.test(r)?o=r:o=Y.fileURLToPath(new Y.URL(r,ze));let p=new k.Worker(__filename,{workerData:{mod:o,name:n,type:c}});Object.defineProperty(this,Q,{value:p}),p.on("message",_=>{let E=new H("message");E.data=_,this.dispatchEvent(E)}),p.on("error",_=>{_.type="error",this.dispatchEvent(_)}),p.on("exit",()=>{this.dispatchEvent(new H("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 Ze(){let{mod:t,name:e,type:r}=k.workerData,s=global.self=global,n=[];function c(){let E=n;n=null,E.forEach(m=>{s.dispatchEvent(m)})}k.parentPort.on("message",E=>{let m=new H("message");m.data=E,n==null?s.dispatchEvent(m):n.push(m)}),k.parentPort.on("error",E=>{E.type="Error",s.dispatchEvent(E)});class o extends A{postMessage(m,ce){k.parentPort.postMessage(m,ce)}close(){process.exit()}}let p=Object.getPrototypeOf(global);delete p.constructor,Object.defineProperties(o.prototype,p),p=Object.setPrototypeOf(global,new o),["postMessage","addEventListener","removeEventListener","dispatchEvent"].forEach(E=>{p[E]=p[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."),ne(t,e);console.error(E)}).then(c);else{try{/^data:/.test(t)?ne(t,e):require(t)}catch(E){console.error(E)}Promise.resolve().then(c)}}function ne(t,e){let{data:r}=Xe(t);return Je.runInThisContext(r,{filename:"worker.<"+(e||"data:")+">"})}function Xe(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 rr={};Te(rr,{AsyncDuckDB:()=>C,AsyncDuckDBConnection:()=>I,AsyncDuckDBDispatcher:()=>W,AsyncPreparedStatement:()=>h,AsyncResultStreamIterator:()=>g,ConsoleLogger:()=>P,LogEvent:()=>$,LogLevel:()=>J,LogOrigin:()=>Z,LogTopic:()=>z,PACKAGE_NAME:()=>U,PACKAGE_VERSION:()=>D,PACKAGE_VERSION_MAJOR:()=>qe,PACKAGE_VERSION_MINOR:()=>je,PACKAGE_VERSION_PATCH:()=>Qe,StatusCode:()=>X,VoidLogger:()=>F,WorkerRequestType:()=>L,WorkerResponseType:()=>f,WorkerTask:()=>i,createWorker:()=>er,getJsDelivrBundles:()=>Ke,getLogEventLabel:()=>_e,getLogLevelLabel:()=>me,getLogOriginLabel:()=>Ie,getLogTopicLabel:()=>ke,getPlatformFeatures:()=>te,isFirefox:()=>Ye,isNode:()=>j,isSafari:()=>He,selectBundle:()=>Ve});module.exports=Re(rr);var J=(c=>(c[c.NONE=0]="NONE",c[c.DEBUG=1]="DEBUG",c[c.INFO=2]="INFO",c[c.WARNING=3]="WARNING",c[c.ERROR=4]="ERROR",c))(J||{}),z=(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))(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=(c=>(c[c.NONE=0]="NONE",c[c.WEB_WORKER=1]="WEB_WORKER",c[c.NODE_WORKER=2]="NODE_WORKER",c[c.BINDINGS=3]="BINDINGS",c[c.ASYNC_DUCKDB=4]="ASYNC_DUCKDB",c))(Z||{}),F=class{log(e){}},P=class{constructor(e=2){this.level=e}log(e){e.level>=this.level&&console.log(e)}};function me(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 ke(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 X=(e=>(e[e.SUCCESS=0]="SUCCESS",e))(X||{});var T=S(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=T.RecordBatchReader.from(r);return console.assert(s.isSync()),console.assert(s.isFile()),new T.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.sendQuery(this._conn,e),s=new g(this._bindings,this._conn,r),n=await T.RecordBatchReader.from(s);return console.assert(n.isAsync()),console.assert(n.isStream()),n}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 h(this._bindings,this._conn,r)}async insertArrowTable(e,r){let s=T.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)}},g=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}},h=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=T.RecordBatchReader.from(r);return console.assert(s.isSync()),console.assert(s.isFile()),new T.Table(s)}async send(...e){let r=await this.bindings.sendPrepared(this.connectionId,this.statementId,e),s=new g(this.bindings,this.connectionId,r),n=await T.RecordBatchReader.from(s);return console.assert(n.isAsync()),console.assert(n.isStream()),n}};var L=(d=>(d.CLOSE_PREPARED="CLOSE_PREPARED",d.COLLECT_FILE_STATISTICS="COLLECT_FILE_STATISTICS",d.CONNECT="CONNECT",d.COPY_FILE_TO_BUFFER="COPY_FILE_TO_BUFFER",d.COPY_FILE_TO_PATH="COPY_FILE_TO_PATH",d.CREATE_PREPARED="CREATE_PREPARED",d.DISCONNECT="DISCONNECT",d.DROP_FILE="DROP_FILE",d.DROP_FILES="DROP_FILES",d.EXPORT_FILE_STATISTICS="EXPORT_FILE_STATISTICS",d.FETCH_QUERY_RESULTS="FETCH_QUERY_RESULTS",d.FLUSH_FILES="FLUSH_FILES",d.GET_FEATURE_FLAGS="GET_FEATURE_FLAGS",d.GET_TABLE_NAMES="GET_TABLE_NAMES",d.GET_VERSION="GET_VERSION",d.GLOB_FILE_INFOS="GLOB_FILE_INFOS",d.INSERT_ARROW_FROM_IPC_STREAM="INSERT_ARROW_FROM_IPC_STREAM",d.INSERT_CSV_FROM_PATH="IMPORT_CSV_FROM_PATH",d.INSERT_JSON_FROM_PATH="IMPORT_JSON_FROM_PATH",d.INSTANTIATE="INSTANTIATE",d.OPEN="OPEN",d.PING="PING",d.REGISTER_FILE_BUFFER="REGISTER_FILE_BUFFER",d.REGISTER_FILE_HANDLE="REGISTER_FILE_HANDLE",d.REGISTER_FILE_URL="REGISTER_FILE_URL",d.RESET="RESET",d.RUN_PREPARED="RUN_PREPARED",d.RUN_QUERY="RUN_QUERY",d.SEND_PREPARED="SEND_PREPARED",d.SEND_QUERY="SEND_QUERY",d.TOKENIZE="TOKENIZE",d))(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_START="QUERY_START",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||{}),i=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 a=S(require("apache-arrow"));function w(t){switch(t.typeId){case a.Type.Binary:return{sqlType:"binary"};case a.Type.Bool:return{sqlType:"bool"};case a.Type.Date:return{sqlType:"date"};case a.Type.DateDay:return{sqlType:"date32[d]"};case a.Type.DateMillisecond:return{sqlType:"date64[ms]"};case a.Type.Decimal:{let e=t;return{sqlType:"decimal",precision:e.precision,scale:e.scale}}case a.Type.Float:return{sqlType:"float"};case a.Type.Float16:return{sqlType:"float16"};case a.Type.Float32:return{sqlType:"float32"};case a.Type.Float64:return{sqlType:"float64"};case a.Type.Int:return{sqlType:"int32"};case a.Type.Int16:return{sqlType:"int16"};case a.Type.Int32:return{sqlType:"int32"};case a.Type.Int64:return{sqlType:"int64"};case a.Type.Uint16:return{sqlType:"uint16"};case a.Type.Uint32:return{sqlType:"uint32"};case a.Type.Uint64:return{sqlType:"uint64"};case a.Type.Uint8:return{sqlType:"uint8"};case a.Type.IntervalDayTime:return{sqlType:"interval[dt]"};case a.Type.IntervalYearMonth:return{sqlType:"interval[m]"};case a.Type.List:return{sqlType:"list",valueType:w(t.valueType)};case a.Type.FixedSizeBinary:return{sqlType:"fixedsizebinary",byteWidth:t.byteWidth};case a.Type.Null:return{sqlType:"null"};case a.Type.Utf8:return{sqlType:"utf8"};case a.Type.Struct:return{sqlType:"struct",fields:t.children.map(r=>N(r.name,r.type))};case a.Type.Map:{let e=t;return{sqlType:"map",keyType:w(e.keyType),valueType:w(e.valueType)}}case a.Type.Time:return{sqlType:"time[s]"};case a.Type.TimeMicrosecond:return{sqlType:"time[us]"};case a.Type.TimeMillisecond:return{sqlType:"time[ms]"};case a.Type.TimeNanosecond:return{sqlType:"time[ns]"};case a.Type.TimeSecond:return{sqlType:"time[s]"};case a.Type.Timestamp:return{sqlType:"timestamp",timezone:t.timezone||void 0};case a.Type.TimestampSecond:return{sqlType:"timestamp[s]",timezone:t.timezone||void 0};case a.Type.TimestampMicrosecond:return{sqlType:"timestamp[us]",timezone:t.timezone||void 0};case a.Type.TimestampNanosecond:return{sqlType:"timestamp[ns]",timezone:t.timezone||void 0};case a.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=w(e);return r.name=t,r}var ge=new TextEncoder,C=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":case"SEND_QUERY":if(r.type=="QUERY_START"){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 i("RESET",null);return await this.postTask(e)}async ping(){let e=new i("PING",null);await this.postTask(e)}async dropFile(e){let r=new i("DROP_FILE",e);return await this.postTask(r)}async dropFiles(){let e=new i("DROP_FILES",null);return await this.postTask(e)}async flushFiles(){let e=new i("FLUSH_FILES",null);return await this.postTask(e)}async instantiate(e,r=null,s=n=>{}){this._onInstantiationProgress.push(s);let n=new i("INSTANTIATE",[e,r]);return await this.postTask(n)}async getVersion(){let e=new i("GET_VERSION",null);return await this.postTask(e)}async getFeatureFlags(){let e=new i("GET_FEATURE_FLAGS",null);return await this.postTask(e)}async open(e){let r=new i("OPEN",e);await this.postTask(r)}async tokenize(e){let r=new i("TOKENIZE",e);return await this.postTask(r)}async connectInternal(){let e=new i("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 i("DISCONNECT",e);await this.postTask(r)}async runQuery(e,r){let s=new i("RUN_QUERY",[e,r]);return await this.postTask(s)}async sendQuery(e,r){let s=new i("SEND_QUERY",[e,r]);return await this.postTask(s)}async fetchQueryResults(e){let r=new i("FETCH_QUERY_RESULTS",e);return await this.postTask(r)}async getTableNames(e,r){let s=new i("GET_TABLE_NAMES",[e,r]);return await this.postTask(s)}async createPrepared(e,r){let s=new i("CREATE_PREPARED",[e,r]);return await this.postTask(s)}async closePrepared(e,r){let s=new i("CLOSE_PREPARED",[e,r]);await this.postTask(s)}async runPrepared(e,r,s){let n=new i("RUN_PREPARED",[e,r,s]);return await this.postTask(n)}async sendPrepared(e,r,s){let n=new i("SEND_PREPARED",[e,r,s]);return await this.postTask(n)}async globFiles(e){let r=new i("GLOB_FILE_INFOS",e);return await this.postTask(r)}async registerFileText(e,r){let s=ge.encode(r);await this.registerFileBuffer(e,s)}async registerFileURL(e,r){r===void 0&&(r=e);let s=new i("REGISTER_FILE_URL",[e,r]);await this.postTask(s)}async registerEmptyFileBuffer(e){let r=new i("REGISTER_FILE_BUFFER",[e,new Uint8Array]);await this.postTask(r)}async registerFileBuffer(e,r){let s=new i("REGISTER_FILE_BUFFER",[e,r]);await this.postTask(s,[r.buffer])}async registerFileHandle(e,r){let s=new i("REGISTER_FILE_HANDLE",[e,r]);await this.postTask(s,[])}async collectFileStatistics(e,r){let s=new i("COLLECT_FILE_STATISTICS",[e,r]);await this.postTask(s,[])}async exportFileStatistics(e){let r=new i("EXPORT_FILE_STATISTICS",e);return await this.postTask(r,[])}async copyFileToBuffer(e){let r=new i("COPY_FILE_TO_BUFFER",e);return await this.postTask(r)}async copyFileToPath(e,r){let s=new i("COPY_FILE_TO_PATH",[e,r]);await this.postTask(s)}async insertArrowFromIPCStream(e,r,s){if(r.length==0)return;let n=new i("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 c=[];for(let o in s.columns){let p=s.columns[o];c.push(N(o,p))}s.columnsFlat=c,delete s.columns}let n=new i("IMPORT_CSV_FROM_PATH",[e,r,s]);await this.postTask(n)}async insertJSONFromPath(e,r,s){if(s.columns!==void 0){let c=[];for(let o in s.columns){let p=s.columns[o];c.push(N(o,p))}s.columnsFlat=c,delete s.columns}let n=new i("IMPORT_JSON_FROM_PATH",[e,r,s]);await this.postTask(n)}};var W=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_START",data:r},[r.buffer]);break}case"SEND_QUERY":{let r=this._bindings.sendQuery(e.data[0],e.data[1]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_START",data:r},[r.buffer]);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 R=S(re());var he="@duckdb/duckdb-wasm",we="1.14.0",Ne="DuckDB powered by WebAssembly",Oe="MPL-2.0",Ae={type:"git",url:"https://github.com/duckdb/duckdb-wasm.git"},Fe=["sql","duckdb","relational","database","data","query","wasm","analytics","olap","arrow","parquet","json","csv"],Pe={"apache-arrow":"^7.0.0"},Le={"@types/emscripten":"^1.39.6","@types/jasmine":"^4.0.3","@typescript-eslint/eslint-plugin":"^5.21.0","@typescript-eslint/parser":"^5.21.0",esbuild:"^0.14.38",eslint:"^8.14.0","eslint-plugin-jasmine":"^4.1.3","eslint-plugin-react":"^7.29.4","fast-glob":"^3.2.11",jasmine:"^4.1.0","jasmine-core":"^4.0.1","jasmine-spec-reporter":"^7.0.0","js-sha256":"^0.9.0",karma:"^6.3.19","karma-chrome-launcher":"^3.1.1","karma-coverage":"^2.2.0","karma-firefox-launcher":"^2.1.2","karma-jasmine":"^5.0.0","karma-jasmine-html-reporter":"^1.7.0","karma-sourcemap-loader":"^0.3.8","karma-spec-reporter":"^0.0.34","make-dir":"^3.1.0",nyc:"^15.1.0",prettier:"^2.6.2",puppeteer:"^13.7.0",rimraf:"^3.0.2",s3rver:"^3.7.1",typedoc:"^0.22.15",typescript:"^4.6.4","wasm-feature-detect":"^1.2.11","web-worker":"^1.2.0"},fe={"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"},Ce=["dist","!dist/types/test"],We="dist/duckdb-browser.cjs",Ue="dist/duckdb-browser.mjs",De="dist/duckdb-browser.d.ts",ve="dist/duckdb-browser.cjs",Me="dist/duckdb-browser.mjs",Be=!1,Ge={fs:!1,path:!1,perf_hooks:!1,os:!1,worker_threads:!1},xe={"./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"}},O={name:he,version:we,description:Ne,license:Oe,repository:Ae,keywords:Fe,dependencies:Pe,devDependencies:Le,scripts:fe,files:Ce,main:We,module:Ue,types:De,jsdelivr:ve,unpkg:Me,sideEffects:Be,browser:Ge,exports:xe};var U=O.name,D=O.version,v=O.version.split("."),qe=v[0],je=v[1],Qe=v[2];var j=()=>typeof navigator>"u",se=()=>j()?"node":navigator.userAgent,Ye=()=>se().includes("Firefox"),He=()=>/^((?!chrome|android).)*safari/i.test(se());function Ke(){let t=`https://cdn.jsdelivr.net/npm/${U}@${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 M=null,B=null,G=null,x=null,q=null;async function te(){return M==null&&(M=typeof BigInt64Array<"u"),B==null&&(B=await R.exceptions()),G==null&&(G=await R.threads()),x==null&&(x=await R.simd()),q==null&&(q=await R.bulkMemory()),{bigInt64Array:M,crossOriginIsolated:j()||globalThis.crossOriginIsolated||!1,wasmExceptions:B,wasmSIMD:x,wasmThreads:G,wasmBulkMemory:q}}async function Ve(t){let e=await te();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 ie=S(ae());async function er(t){let e=new Request(t),r=await fetch(e),s=URL.createObjectURL(await r.blob());return new ie.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
|