flatsql 0.2.1 → 0.3.6
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/package.json +2 -2
- package/wasm/flatsql.js +16 -2
- package/wasm/flatsql.wasm +0 -0
- package/wasm/index.d.ts +63 -0
- package/wasm/index.js +126 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "flatsql",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.6",
|
|
4
4
|
"description": "SQL queries over raw FlatBuffer storage - zero conversion, real-time indexing, pure streaming",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"author": "Digital Arsenal <tj@digitalarsenal.io>",
|
|
60
60
|
"license": "Apache-2.0",
|
|
61
61
|
"dependencies": {
|
|
62
|
-
"flatc-wasm": "^26.1.
|
|
62
|
+
"flatc-wasm": "^26.1.15",
|
|
63
63
|
"sql.js": "^1.10.0"
|
|
64
64
|
},
|
|
65
65
|
"devDependencies": {
|
package/wasm/flatsql.js
CHANGED
|
@@ -1,2 +1,16 @@
|
|
|
1
|
-
async function FlatSQL(moduleArg={}){var moduleRtn;var Module=moduleArg;var ENVIRONMENT_IS_WEB=!!globalThis.window;var ENVIRONMENT_IS_WORKER=!!globalThis.WorkerGlobalScope;var ENVIRONMENT_IS_NODE=globalThis.process?.versions?.node&&globalThis.process?.type!="renderer";if(ENVIRONMENT_IS_NODE){const{createRequire}=await import("module");var require=createRequire(import.meta.url)}var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var _scriptName=import.meta.url;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var readAsync,readBinary;if(ENVIRONMENT_IS_NODE){var fs=require("fs");if(_scriptName.startsWith("file:")){scriptDirectory=require("path").dirname(require("url").fileURLToPath(_scriptName))+"/"}readBinary=filename=>{filename=isFileURI(filename)?new URL(filename):filename;var ret=fs.readFileSync(filename);return ret};readAsync=async(filename,binary=true)=>{filename=isFileURI(filename)?new URL(filename):filename;var ret=fs.readFileSync(filename,binary?undefined:"utf8");return ret};if(process.argv.length>1){thisProgram=process.argv[1].replace(/\\/g,"/")}arguments_=process.argv.slice(2);quit_=(status,toThrow)=>{process.exitCode=status;throw toThrow}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){try{scriptDirectory=new URL(".",_scriptName).href}catch{}{if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=async url=>{var response=await fetch(url,{credentials:"same-origin"});if(response.ok){return response.arrayBuffer()}throw new Error(response.status+" : "+response.url)}}}else{}var out=console.log.bind(console);var err=console.error.bind(console);var wasmBinary;var ABORT=false;var isFileURI=filename=>filename.startsWith("file://");var readyPromiseResolve,readyPromiseReject;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;var HEAP64,HEAPU64;var runtimeInitialized=false;function updateMemoryViews(){var b=wasmMemory.buffer;HEAP8=new Int8Array(b);HEAP16=new Int16Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);HEAPU16=new Uint16Array(b);HEAP32=new Int32Array(b);HEAPU32=new Uint32Array(b);HEAPF32=new Float32Array(b);HEAPF64=new Float64Array(b);HEAP64=new BigInt64Array(b);HEAPU64=new BigUint64Array(b)}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(onPreRuns)}function initRuntime(){runtimeInitialized=true;wasmExports["ua"]()}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(onPostRuns)}function abort(what){Module["onAbort"]?.(what);what="Aborted("+what+")";err(what);ABORT=true;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject?.(e);throw e}var wasmBinaryFile;function findWasmBinary(){if(Module["locateFile"]){return locateFile("flatsql.wasm")}return new URL("flatsql.wasm",import.meta.url).href}function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}async function getWasmBinary(binaryFile){if(!wasmBinary){try{var response=await readAsync(binaryFile);return new Uint8Array(response)}catch{}}return getBinarySync(binaryFile)}async function instantiateArrayBuffer(binaryFile,imports){try{var binary=await getWasmBinary(binaryFile);var instance=await WebAssembly.instantiate(binary,imports);return instance}catch(reason){err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)}}async function instantiateAsync(binary,binaryFile,imports){if(!binary&&!ENVIRONMENT_IS_NODE){try{var response=fetch(binaryFile,{credentials:"same-origin"});var instantiationResult=await WebAssembly.instantiateStreaming(response,imports);return instantiationResult}catch(reason){err(`wasm streaming compile failed: ${reason}`);err("falling back to ArrayBuffer instantiation")}}return instantiateArrayBuffer(binaryFile,imports)}function getWasmImports(){var imports={a:wasmImports};return imports}async function createWasm(){function receiveInstance(instance,module){wasmExports=instance.exports;assignWasmExports(wasmExports);updateMemoryViews();return wasmExports}function receiveInstantiationResult(result){return receiveInstance(result["instance"])}var info=getWasmImports();if(Module["instantiateWasm"]){return new Promise((resolve,reject)=>{Module["instantiateWasm"](info,(inst,mod)=>{resolve(receiveInstance(inst,mod))})})}wasmBinaryFile??=findWasmBinary();var result=await instantiateAsync(wasmBinary,wasmBinaryFile,info);var exports=receiveInstantiationResult(result);return exports}class ExitStatus{name="ExitStatus";constructor(status){this.message=`Program terminated with exit(${status})`;this.status=status}}var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};var onPostRuns=[];var addOnPostRun=cb=>onPostRuns.push(cb);var onPreRuns=[];var addOnPreRun=cb=>onPreRuns.push(cb);var noExitRuntime=true;var stackRestore=val=>__emscripten_stack_restore(val);var stackSave=()=>_emscripten_stack_get_current();var exceptionCaught=[];var uncaughtExceptionCount=0;var ___cxa_begin_catch=ptr=>{var info=new ExceptionInfo(ptr);if(!info.get_caught()){info.set_caught(true);uncaughtExceptionCount--}info.set_rethrown(false);exceptionCaught.push(info);return ___cxa_get_exception_ptr(ptr)};var exceptionLast=0;var ___cxa_end_catch=()=>{_setThrew(0,0);var info=exceptionCaught.pop();___cxa_decrement_exception_refcount(info.excPtr);exceptionLast=0};class ExceptionInfo{constructor(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24}set_type(type){HEAPU32[this.ptr+4>>2]=type}get_type(){return HEAPU32[this.ptr+4>>2]}set_destructor(destructor){HEAPU32[this.ptr+8>>2]=destructor}get_destructor(){return HEAPU32[this.ptr+8>>2]}set_caught(caught){caught=caught?1:0;HEAP8[this.ptr+12]=caught}get_caught(){return HEAP8[this.ptr+12]!=0}set_rethrown(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13]=rethrown}get_rethrown(){return HEAP8[this.ptr+13]!=0}init(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor)}set_adjusted_ptr(adjustedPtr){HEAPU32[this.ptr+16>>2]=adjustedPtr}get_adjusted_ptr(){return HEAPU32[this.ptr+16>>2]}}var setTempRet0=val=>__emscripten_tempret_set(val);var findMatchingCatch=args=>{var thrown=exceptionLast;if(!thrown){setTempRet0(0);return 0}var info=new ExceptionInfo(thrown);info.set_adjusted_ptr(thrown);var thrownType=info.get_type();if(!thrownType){setTempRet0(0);return thrown}for(var caughtType of args){if(caughtType===0||caughtType===thrownType){break}var adjusted_ptr_addr=info.ptr+16;if(___cxa_can_catch(caughtType,thrownType,adjusted_ptr_addr)){setTempRet0(caughtType);return thrown}}setTempRet0(thrownType);return thrown};var ___cxa_find_matching_catch_2=()=>findMatchingCatch([]);var ___cxa_find_matching_catch_3=arg0=>findMatchingCatch([arg0]);var ___cxa_rethrow=()=>{var info=exceptionCaught.pop();if(!info){abort("no exception to throw")}var ptr=info.excPtr;if(!info.get_rethrown()){exceptionCaught.push(info);info.set_rethrown(true);info.set_caught(false);uncaughtExceptionCount++}___cxa_increment_exception_refcount(ptr);exceptionLast=ptr;throw exceptionLast};var ___cxa_throw=(ptr,type,destructor)=>{var info=new ExceptionInfo(ptr);info.init(type,destructor);___cxa_increment_exception_refcount(ptr);exceptionLast=ptr;uncaughtExceptionCount++;throw exceptionLast};var ___cxa_uncaught_exceptions=()=>uncaughtExceptionCount;var ___resumeException=ptr=>{if(!exceptionLast){exceptionLast=ptr}throw exceptionLast};var ___syscall_chmod=(path,mode)=>{};var ___syscall_faccessat=(dirfd,path,amode,flags)=>{};var ___syscall_fchmod=(fd,mode)=>{};var ___syscall_fchown32=(fd,owner,group)=>{};var UTF8Decoder=globalThis.TextDecoder&&new TextDecoder;var findStringEnd=(heapOrArray,idx,maxBytesToRead,ignoreNul)=>{var maxIdx=idx+maxBytesToRead;if(ignoreNul)return maxIdx;while(heapOrArray[idx]&&!(idx>=maxIdx))++idx;return idx};var UTF8ArrayToString=(heapOrArray,idx=0,maxBytesToRead,ignoreNul)=>{var endPtr=findStringEnd(heapOrArray,idx,maxBytesToRead,ignoreNul);if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx<endPtr){var u0=heapOrArray[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=heapOrArray[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=heapOrArray[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u0=(u0&7)<<18|u1<<12|u2<<6|heapOrArray[idx++]&63}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}return str};var UTF8ToString=(ptr,maxBytesToRead,ignoreNul)=>ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead,ignoreNul):"";var SYSCALLS={varargs:undefined,getStr(ptr){var ret=UTF8ToString(ptr);return ret}};function ___syscall_fcntl64(fd,cmd,varargs){SYSCALLS.varargs=varargs;return 0}var ___syscall_fstat64=(fd,buf)=>{};var INT53_MAX=9007199254740992;var INT53_MIN=-9007199254740992;var bigintToI53Checked=num=>num<INT53_MIN||num>INT53_MAX?NaN:Number(num);function ___syscall_ftruncate64(fd,length){length=bigintToI53Checked(length)}var ___syscall_getcwd=(buf,size)=>{};var ___syscall_lstat64=(path,buf)=>{};var ___syscall_mkdirat=(dirfd,path,mode)=>{};var ___syscall_newfstatat=(dirfd,path,buf,flags)=>{};function ___syscall_openat(dirfd,path,flags,varargs){SYSCALLS.varargs=varargs}var ___syscall_readlinkat=(dirfd,path,buf,bufsize)=>{};var ___syscall_rmdir=path=>{};var ___syscall_stat64=(path,buf)=>{};var ___syscall_unlinkat=(dirfd,path,flags)=>{};var ___syscall_utimensat=(dirfd,path,times,flags)=>{};var __abort_js=()=>abort("");var isLeapYear=year=>year%4===0&&(year%100!==0||year%400===0);var MONTH_DAYS_LEAP_CUMULATIVE=[0,31,60,91,121,152,182,213,244,274,305,335];var MONTH_DAYS_REGULAR_CUMULATIVE=[0,31,59,90,120,151,181,212,243,273,304,334];var ydayFromDate=date=>{var leap=isLeapYear(date.getFullYear());var monthDaysCumulative=leap?MONTH_DAYS_LEAP_CUMULATIVE:MONTH_DAYS_REGULAR_CUMULATIVE;var yday=monthDaysCumulative[date.getMonth()]+date.getDate()-1;return yday};function __localtime_js(time,tmPtr){time=bigintToI53Checked(time);var date=new Date(time*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var yday=ydayFromDate(date)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var start=new Date(date.getFullYear(),0,1);var summerOffset=new Date(date.getFullYear(),6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst}var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.codePointAt(i);if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63;i++}}heap[outIdx]=0;return outIdx-startIdx};var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite);var __tzset_js=(timezone,daylight,std_name,dst_name)=>{var currentYear=(new Date).getFullYear();var winter=new Date(currentYear,0,1);var summer=new Date(currentYear,6,1);var winterOffset=winter.getTimezoneOffset();var summerOffset=summer.getTimezoneOffset();var stdTimezoneOffset=Math.max(winterOffset,summerOffset);HEAPU32[timezone>>2]=stdTimezoneOffset*60;HEAP32[daylight>>2]=Number(winterOffset!=summerOffset);var extractZone=timezoneOffset=>{var sign=timezoneOffset>=0?"-":"+";var absOffset=Math.abs(timezoneOffset);var hours=String(Math.floor(absOffset/60)).padStart(2,"0");var minutes=String(absOffset%60).padStart(2,"0");return`UTC${sign}${hours}${minutes}`};var winterName=extractZone(winterOffset);var summerName=extractZone(summerOffset);if(summerOffset<winterOffset){stringToUTF8(winterName,std_name,17);stringToUTF8(summerName,dst_name,17)}else{stringToUTF8(winterName,dst_name,17);stringToUTF8(summerName,std_name,17)}};var _emscripten_get_now=()=>performance.now();var _emscripten_date_now=()=>Date.now();var getHeapMax=()=>2147483648;var alignMemory=(size,alignment)=>Math.ceil(size/alignment)*alignment;var growMemory=size=>{var oldHeapSize=wasmMemory.buffer.byteLength;var pages=(size-oldHeapSize+65535)/65536|0;try{wasmMemory.grow(pages);updateMemoryViews();return 1}catch(e){}};var _emscripten_resize_heap=requestedSize=>{var oldSize=HEAPU8.length;requestedSize>>>=0;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignMemory(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=growMemory(newSize);if(replacement){return true}}return false};var ENV={};var getExecutableName=()=>thisProgram||"./this.program";var getEnvStrings=()=>{if(!getEnvStrings.strings){var lang=(globalThis.navigator?.language??"C").replace("-","_")+".UTF-8";var env={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:lang,_:getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(`${x}=${env[x]}`)}getEnvStrings.strings=strings}return getEnvStrings.strings};var _environ_get=(__environ,environ_buf)=>{var bufSize=0;var envp=0;for(var string of getEnvStrings()){var ptr=environ_buf+bufSize;HEAPU32[__environ+envp>>2]=ptr;bufSize+=stringToUTF8(string,ptr,Infinity)+1;envp+=4}return 0};var lengthBytesUTF8=str=>{var len=0;for(var i=0;i<str.length;++i){var c=str.charCodeAt(i);if(c<=127){len++}else if(c<=2047){len+=2}else if(c>=55296&&c<=57343){len+=4;++i}else{len+=3}}return len};var _environ_sizes_get=(penviron_count,penviron_buf_size)=>{var strings=getEnvStrings();HEAPU32[penviron_count>>2]=strings.length;var bufSize=0;for(var string of strings){bufSize+=lengthBytesUTF8(string)+1}HEAPU32[penviron_buf_size>>2]=bufSize;return 0};var _fd_close=fd=>52;var _fd_fdstat_get=(fd,pbuf)=>{var rightsBase=0;var rightsInheriting=0;var flags=0;{var type=2;if(fd==0){rightsBase=2}else if(fd==1||fd==2){rightsBase=64}flags=1}HEAP8[pbuf]=type;HEAP16[pbuf+2>>1]=flags;HEAP64[pbuf+8>>3]=BigInt(rightsBase);HEAP64[pbuf+16>>3]=BigInt(rightsInheriting);return 0};var _fd_read=(fd,iov,iovcnt,pnum)=>52;function _fd_seek(fd,offset,whence,newOffset){offset=bigintToI53Checked(offset);return 70}var _fd_sync=fd=>52;var printCharBuffers=[null,[],[]];var printChar=(stream,curr)=>{var buffer=printCharBuffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer));buffer.length=0}else{buffer.push(curr)}};var _fd_write=(fd,iov,iovcnt,pnum)=>{var num=0;for(var i=0;i<iovcnt;i++){var ptr=HEAPU32[iov>>2];var len=HEAPU32[iov+4>>2];iov+=8;for(var j=0;j<len;j++){printChar(fd,HEAPU8[ptr+j])}num+=len}HEAPU32[pnum>>2]=num;return 0};var _llvm_eh_typeid_for=type=>type;var getCFunc=ident=>{var func=Module["_"+ident];return func};var writeArrayToMemory=(array,buffer)=>{HEAP8.set(array,buffer)};var stackAlloc=sz=>__emscripten_stack_alloc(sz);var stringToUTF8OnStack=str=>{var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8(str,ret,size);return ret};var ccall=(ident,returnType,argTypes,args,opts)=>{var toC={string:str=>{var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=stringToUTF8OnStack(str)}return ret},array:arr=>{var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string"){return UTF8ToString(ret)}if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func(...cArgs);function onDone(ret){if(stack!==0)stackRestore(stack);return convertReturnValue(ret)}ret=onDone(ret);return ret};var cwrap=(ident,returnType,argTypes,opts)=>{var numericArgs=!argTypes||argTypes.every(type=>type==="number"||type==="boolean");var numericRet=returnType!=="string";if(numericRet&&numericArgs&&!opts){return getCFunc(ident)}return(...args)=>ccall(ident,returnType,argTypes,args,opts)};{if(Module["noExitRuntime"])noExitRuntime=Module["noExitRuntime"];if(Module["print"])out=Module["print"];if(Module["printErr"])err=Module["printErr"];if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].shift()()}}}Module["ccall"]=ccall;Module["cwrap"]=cwrap;Module["UTF8ToString"]=UTF8ToString;Module["stringToUTF8"]=stringToUTF8;Module["lengthBytesUTF8"]=lengthBytesUTF8;var _flatsql_create_db,_flatsql_destroy_db,_flatsql_register_file_id,_flatsql_enable_demo_extractors,_flatsql_ingest,_flatsql_ingest_one,_flatsql_register_source,_flatsql_create_unified_views,_flatsql_ingest_with_source,_flatsql_ingest_one_with_source,_flatsql_query,_flatsql_get_error,_flatsql_result_column_count,_flatsql_result_row_count,_flatsql_result_column_name,_flatsql_result_cell_type,_flatsql_result_cell_number,_flatsql_result_cell_string,_flatsql_result_cell_blob,_flatsql_result_cell_blob_size,_flatsql_export_data,_flatsql_export_size,_flatsql_load_and_rebuild,_flatsql_create_test_user,_flatsql_test_buffer_size,_flatsql_create_test_post,_flatsql_get_stats_count,_flatsql_get_stat_table_name,_flatsql_get_stat_file_id,_flatsql_get_stat_record_count,_flatsql_mark_deleted,_flatsql_get_deleted_count,_flatsql_clear_tombstones,_flatsql_get_sources_count,_flatsql_get_source_name,_flatsql_get_flatbuffer_by_id,_flatsql_get_flatbuffer_by_email,_flatsql_get_raw_flatbuffer_size,_flatsql_get_raw_flatbuffer_sequence,_flatsql_get_storage_buffer,_flatsql_get_storage_size,_malloc,_free,_setThrew,__emscripten_tempret_set,__emscripten_stack_restore,__emscripten_stack_alloc,_emscripten_stack_get_current,___cxa_decrement_exception_refcount,___cxa_increment_exception_refcount,___cxa_can_catch,___cxa_get_exception_ptr,dynCall_v,dynCall_ii,dynCall_iii,dynCall_viiiiii,dynCall_vii,dynCall_viii,dynCall_jiij,dynCall_vij,dynCall_iiii,dynCall_iij,dynCall_viji,dynCall_vijii,dynCall_iiiiii,dynCall_viiiii,dynCall_viiii,dynCall_iiiiiii,dynCall_iiiii,dynCall_vi,dynCall_viijij,dynCall_viiijj,dynCall_jiiii,dynCall_viiiiiiiiii,dynCall_iiji,dynCall_i,dynCall_jii,dynCall_dii,dynCall_viij,dynCall_iiiij,dynCall_iijii,dynCall_viijii,dynCall_iidiiii,dynCall_iiiiiiii,dynCall_iiiiiiiiiii,dynCall_iiiiiiiiiiiii,dynCall_fiii,dynCall_diii,dynCall_viiiiiii,dynCall_iiiiiiiiiiii,dynCall_viiiiiiiiiiiiiii,dynCall_iiiiiiiii,dynCall_iiiiij,dynCall_iiiiid,dynCall_iiiiijj,dynCall_iiiiiijj,memory,__indirect_function_table,wasmMemory,wasmTable;function assignWasmExports(wasmExports){_flatsql_create_db=Module["_flatsql_create_db"]=wasmExports["wa"];_flatsql_destroy_db=Module["_flatsql_destroy_db"]=wasmExports["xa"];_flatsql_register_file_id=Module["_flatsql_register_file_id"]=wasmExports["ya"];_flatsql_enable_demo_extractors=Module["_flatsql_enable_demo_extractors"]=wasmExports["za"];_flatsql_ingest=Module["_flatsql_ingest"]=wasmExports["Aa"];_flatsql_ingest_one=Module["_flatsql_ingest_one"]=wasmExports["Ba"];_flatsql_register_source=Module["_flatsql_register_source"]=wasmExports["Ca"];_flatsql_create_unified_views=Module["_flatsql_create_unified_views"]=wasmExports["Da"];_flatsql_ingest_with_source=Module["_flatsql_ingest_with_source"]=wasmExports["Ea"];_flatsql_ingest_one_with_source=Module["_flatsql_ingest_one_with_source"]=wasmExports["Fa"];_flatsql_query=Module["_flatsql_query"]=wasmExports["Ga"];_flatsql_get_error=Module["_flatsql_get_error"]=wasmExports["Ha"];_flatsql_result_column_count=Module["_flatsql_result_column_count"]=wasmExports["Ia"];_flatsql_result_row_count=Module["_flatsql_result_row_count"]=wasmExports["Ja"];_flatsql_result_column_name=Module["_flatsql_result_column_name"]=wasmExports["Ka"];_flatsql_result_cell_type=Module["_flatsql_result_cell_type"]=wasmExports["La"];_flatsql_result_cell_number=Module["_flatsql_result_cell_number"]=wasmExports["Ma"];_flatsql_result_cell_string=Module["_flatsql_result_cell_string"]=wasmExports["Na"];_flatsql_result_cell_blob=Module["_flatsql_result_cell_blob"]=wasmExports["Oa"];_flatsql_result_cell_blob_size=Module["_flatsql_result_cell_blob_size"]=wasmExports["Pa"];_flatsql_export_data=Module["_flatsql_export_data"]=wasmExports["Qa"];_flatsql_export_size=Module["_flatsql_export_size"]=wasmExports["Ra"];_flatsql_load_and_rebuild=Module["_flatsql_load_and_rebuild"]=wasmExports["Sa"];_flatsql_create_test_user=Module["_flatsql_create_test_user"]=wasmExports["Ta"];_flatsql_test_buffer_size=Module["_flatsql_test_buffer_size"]=wasmExports["Ua"];_flatsql_create_test_post=Module["_flatsql_create_test_post"]=wasmExports["Va"];_flatsql_get_stats_count=Module["_flatsql_get_stats_count"]=wasmExports["Wa"];_flatsql_get_stat_table_name=Module["_flatsql_get_stat_table_name"]=wasmExports["Xa"];_flatsql_get_stat_file_id=Module["_flatsql_get_stat_file_id"]=wasmExports["Ya"];_flatsql_get_stat_record_count=Module["_flatsql_get_stat_record_count"]=wasmExports["Za"];_flatsql_mark_deleted=Module["_flatsql_mark_deleted"]=wasmExports["_a"];_flatsql_get_deleted_count=Module["_flatsql_get_deleted_count"]=wasmExports["$a"];_flatsql_clear_tombstones=Module["_flatsql_clear_tombstones"]=wasmExports["ab"];_flatsql_get_sources_count=Module["_flatsql_get_sources_count"]=wasmExports["bb"];_flatsql_get_source_name=Module["_flatsql_get_source_name"]=wasmExports["cb"];_flatsql_get_flatbuffer_by_id=Module["_flatsql_get_flatbuffer_by_id"]=wasmExports["db"];_flatsql_get_flatbuffer_by_email=Module["_flatsql_get_flatbuffer_by_email"]=wasmExports["eb"];_flatsql_get_raw_flatbuffer_size=Module["_flatsql_get_raw_flatbuffer_size"]=wasmExports["fb"];_flatsql_get_raw_flatbuffer_sequence=Module["_flatsql_get_raw_flatbuffer_sequence"]=wasmExports["gb"];_flatsql_get_storage_buffer=Module["_flatsql_get_storage_buffer"]=wasmExports["hb"];_flatsql_get_storage_size=Module["_flatsql_get_storage_size"]=wasmExports["ib"];_malloc=Module["_malloc"]=wasmExports["jb"];_free=Module["_free"]=wasmExports["kb"];_setThrew=wasmExports["lb"];__emscripten_tempret_set=wasmExports["mb"];__emscripten_stack_restore=wasmExports["nb"];__emscripten_stack_alloc=wasmExports["ob"];_emscripten_stack_get_current=wasmExports["pb"];___cxa_decrement_exception_refcount=wasmExports["qb"];___cxa_increment_exception_refcount=wasmExports["rb"];___cxa_can_catch=wasmExports["sb"];___cxa_get_exception_ptr=wasmExports["tb"];dynCall_v=wasmExports["ub"];dynCall_ii=wasmExports["vb"];dynCall_iii=wasmExports["wb"];dynCall_viiiiii=wasmExports["xb"];dynCall_vii=wasmExports["yb"];dynCall_viii=wasmExports["zb"];dynCall_jiij=wasmExports["Ab"];dynCall_vij=wasmExports["Bb"];dynCall_iiii=wasmExports["Cb"];dynCall_iij=wasmExports["Db"];dynCall_viji=wasmExports["Eb"];dynCall_vijii=wasmExports["Fb"];dynCall_iiiiii=wasmExports["Gb"];dynCall_viiiii=wasmExports["Hb"];dynCall_viiii=wasmExports["Ib"];dynCall_iiiiiii=wasmExports["Jb"];dynCall_iiiii=wasmExports["Kb"];dynCall_vi=wasmExports["Lb"];dynCall_viijij=wasmExports["Mb"];dynCall_viiijj=wasmExports["Nb"];dynCall_jiiii=wasmExports["Ob"];dynCall_viiiiiiiiii=wasmExports["Pb"];dynCall_iiji=wasmExports["Qb"];dynCall_i=wasmExports["Rb"];dynCall_jii=wasmExports["Sb"];dynCall_dii=wasmExports["Tb"];dynCall_viij=wasmExports["Ub"];dynCall_iiiij=wasmExports["dynCall_iiiij"];dynCall_iijii=wasmExports["dynCall_iijii"];dynCall_viijii=wasmExports["dynCall_viijii"];dynCall_iidiiii=wasmExports["dynCall_iidiiii"];dynCall_iiiiiiii=wasmExports["Vb"];dynCall_iiiiiiiiiii=wasmExports["dynCall_iiiiiiiiiii"];dynCall_iiiiiiiiiiiii=wasmExports["dynCall_iiiiiiiiiiiii"];dynCall_fiii=wasmExports["Wb"];dynCall_diii=wasmExports["Xb"];dynCall_viiiiiii=wasmExports["Yb"];dynCall_iiiiiiiiiiii=wasmExports["Zb"];dynCall_viiiiiiiiiiiiiii=wasmExports["_b"];dynCall_iiiiiiiii=wasmExports["dynCall_iiiiiiiii"];dynCall_iiiiij=wasmExports["dynCall_iiiiij"];dynCall_iiiiid=wasmExports["dynCall_iiiiid"];dynCall_iiiiijj=wasmExports["dynCall_iiiiijj"];dynCall_iiiiiijj=wasmExports["dynCall_iiiiiijj"];memory=wasmMemory=wasmExports["ta"];__indirect_function_table=wasmTable=wasmExports["va"]}var wasmImports={t:___cxa_begin_catch,x:___cxa_end_catch,a:___cxa_find_matching_catch_2,h:___cxa_find_matching_catch_3,L:___cxa_rethrow,k:___cxa_throw,P:___cxa_uncaught_exceptions,c:___resumeException,la:___syscall_chmod,na:___syscall_faccessat,ma:___syscall_fchmod,ka:___syscall_fchown32,u:___syscall_fcntl64,ja:___syscall_fstat64,ea:___syscall_ftruncate64,da:___syscall_getcwd,ga:___syscall_lstat64,$:___syscall_mkdirat,ha:___syscall_newfstatat,Y:___syscall_openat,W:___syscall_readlinkat,V:___syscall_rmdir,ia:___syscall_stat64,U:___syscall_unlinkat,T:___syscall_utimensat,O:__abort_js,Z:__localtime_js,_:__tzset_js,I:_emscripten_date_now,H:_emscripten_get_now,Q:_emscripten_resize_heap,ba:_environ_get,ca:_environ_sizes_get,J:_fd_close,S:_fd_fdstat_get,X:_fd_read,aa:_fd_seek,fa:_fd_sync,R:_fd_write,oa:invoke_dii,E:invoke_diii,F:invoke_fiii,o:invoke_i,d:invoke_ii,e:invoke_iii,i:invoke_iiii,j:invoke_iiiii,m:invoke_iiiiii,p:invoke_iiiiiii,G:invoke_iiiiiiii,A:invoke_iiiiiiiiiiii,y:invoke_iij,B:invoke_iiji,pa:invoke_jii,w:invoke_jiiii,N:invoke_jiij,f:invoke_v,r:invoke_vi,b:invoke_vii,g:invoke_viii,l:invoke_viiii,s:invoke_viiiii,n:invoke_viiiiii,q:invoke_viiiiiii,v:invoke_viiiiiiiiii,z:invoke_viiiiiiiiiiiiiii,M:invoke_viiijj,qa:invoke_viij,ra:invoke_viijij,D:invoke_vij,C:invoke_viji,sa:invoke_vijii,K:_llvm_eh_typeid_for};function invoke_v(index){var sp=stackSave();try{dynCall_v(index)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ii(index,a1){var sp=stackSave();try{return dynCall_ii(index,a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iii(index,a1,a2){var sp=stackSave();try{return dynCall_iii(index,a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{dynCall_viiiiii(index,a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vii(index,a1,a2){var sp=stackSave();try{dynCall_vii(index,a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vij(index,a1,a2){var sp=stackSave();try{dynCall_vij(index,a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiii(index,a1,a2,a3){var sp=stackSave();try{return dynCall_iiii(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viii(index,a1,a2,a3){var sp=stackSave();try{dynCall_viii(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_jiij(index,a1,a2,a3){var sp=stackSave();try{return dynCall_jiij(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_iij(index,a1,a2){var sp=stackSave();try{return dynCall_iij(index,a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viji(index,a1,a2,a3){var sp=stackSave();try{dynCall_viji(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vijii(index,a1,a2,a3,a4){var sp=stackSave();try{dynCall_vijii(index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return dynCall_iiiiii(index,a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{dynCall_viiiii(index,a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiii(index,a1,a2,a3,a4){var sp=stackSave();try{dynCall_viiii(index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{return dynCall_iiiiiii(index,a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return dynCall_iiiii(index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vi(index,a1){var sp=stackSave();try{dynCall_vi(index,a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viijij(index,a1,a2,a3,a4,a5){var sp=stackSave();try{dynCall_viijij(index,a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viij(index,a1,a2,a3){var sp=stackSave();try{dynCall_viij(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiijj(index,a1,a2,a3,a4,a5){var sp=stackSave();try{dynCall_viiijj(index,a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_jiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return dynCall_jiiii(index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_viiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){var sp=stackSave();try{dynCall_viiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiji(index,a1,a2,a3){var sp=stackSave();try{return dynCall_iiji(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_i(index){var sp=stackSave();try{return dynCall_i(index)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_jii(index,a1,a2){var sp=stackSave();try{return dynCall_jii(index,a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0);return 0n}}function invoke_dii(index,a1,a2){var sp=stackSave();try{return dynCall_dii(index,a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{return dynCall_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_fiii(index,a1,a2,a3){var sp=stackSave();try{return dynCall_fiii(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_diii(index,a1,a2,a3){var sp=stackSave();try{return dynCall_diii(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{dynCall_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){var sp=stackSave();try{return dynCall_iiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15){var sp=stackSave();try{dynCall_viiiiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function run(){preRun();function doRun(){Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve?.(Module);Module["onRuntimeInitialized"]?.();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(()=>{setTimeout(()=>Module["setStatus"](""),1);doRun()},1)}else{doRun()}}var wasmExports;wasmExports=await (createWasm());run();if(runtimeInitialized){moduleRtn=Module}else{moduleRtn=new Promise((resolve,reject)=>{readyPromiseResolve=resolve;readyPromiseReject=reject})}
|
|
2
|
-
|
|
1
|
+
|
|
2
|
+
var FlatSQL = (() => {
|
|
3
|
+
var _scriptDir = import.meta.url;
|
|
4
|
+
|
|
5
|
+
return (
|
|
6
|
+
async function(moduleArg = {}) {
|
|
7
|
+
|
|
8
|
+
var Module=moduleArg;var readyPromiseResolve,readyPromiseReject;Module["ready"]=new Promise((resolve,reject)=>{readyPromiseResolve=resolve;readyPromiseReject=reject});var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof importScripts=="function";var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary;if(ENVIRONMENT_IS_NODE){const{createRequire:createRequire}=await import("module");var require=createRequire(import.meta.url);var fs=require("fs");var nodePath=require("path");if(ENVIRONMENT_IS_WORKER){scriptDirectory=nodePath.dirname(scriptDirectory)+"/"}else{scriptDirectory=require("url").fileURLToPath(new URL("./",import.meta.url))}read_=(filename,binary)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return fs.readFileSync(filename,binary?undefined:"utf8")};readBinary=filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}return ret};readAsync=(filename,onload,onerror,binary=true)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);fs.readFile(filename,binary?undefined:"utf8",(err,data)=>{if(err)onerror(err);else onload(binary?data.buffer:data)})};if(!Module["thisProgram"]&&process.argv.length>1){thisProgram=process.argv[1].replace(/\\/g,"/")}arguments_=process.argv.slice(2);quit_=(status,toThrow)=>{process.exitCode=status;throw toThrow};Module["inspect"]=()=>"[Emscripten Module object]"}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=(url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.error.bind(console);Object.assign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];if(typeof WebAssembly!="object"){abort("no native wasm support detected")}var wasmMemory;var ABORT=false;var EXITSTATUS;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateMemoryViews(){var b=wasmMemory.buffer;Module["HEAP8"]=HEAP8=new Int8Array(b);Module["HEAP16"]=HEAP16=new Int16Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);Module["HEAPU16"]=HEAPU16=new Uint16Array(b);Module["HEAP32"]=HEAP32=new Int32Array(b);Module["HEAPU32"]=HEAPU32=new Uint32Array(b);Module["HEAPF32"]=HEAPF32=new Float32Array(b);Module["HEAPF64"]=HEAPF64=new Float64Array(b)}var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix="data:application/octet-stream;base64,";var isDataURI=filename=>filename.startsWith(dataURIPrefix);var isFileURI=filename=>filename.startsWith("file://");var wasmBinaryFile;if(Module["locateFile"]){wasmBinaryFile="flatsql.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}}else{wasmBinaryFile=new URL("flatsql.wasm",import.meta.url).href}function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}function getBinaryPromise(binaryFile){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch=="function"){return fetch(binaryFile,{credentials:"same-origin"}).then(response=>{if(!response["ok"]){throw"failed to load wasm binary file at '"+binaryFile+"'"}return response["arrayBuffer"]()}).catch(()=>getBinarySync(binaryFile))}}return Promise.resolve().then(()=>getBinarySync(binaryFile))}function instantiateArrayBuffer(binaryFile,imports,receiver){return getBinaryPromise(binaryFile).then(binary=>WebAssembly.instantiate(binary,imports)).then(instance=>instance).then(receiver,reason=>{err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)})}function instantiateAsync(binary,binaryFile,imports,callback){if(!binary&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(binaryFile)&&!ENVIRONMENT_IS_NODE&&typeof fetch=="function"){return fetch(binaryFile,{credentials:"same-origin"}).then(response=>{var result=WebAssembly.instantiateStreaming(response,imports);return result.then(callback,function(reason){err(`wasm streaming compile failed: ${reason}`);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(binaryFile,imports,callback)})})}return instantiateArrayBuffer(binaryFile,imports,callback)}function createWasm(){var info={"a":wasmImports};function receiveInstance(instance,module){wasmExports=instance.exports;wasmMemory=wasmExports["ra"];updateMemoryViews();wasmTable=wasmExports["ta"];addOnInit(wasmExports["sa"]);removeRunDependency("wasm-instantiate");return wasmExports}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}if(Module["instantiateWasm"]){try{return Module["instantiateWasm"](info,receiveInstance)}catch(e){err(`Module.instantiateWasm callback failed with error: ${e}`);readyPromiseReject(e)}}instantiateAsync(wasmBinary,wasmBinaryFile,info,receiveInstantiationResult).catch(readyPromiseReject);return{}}var tempDouble;var tempI64;var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};var noExitRuntime=Module["noExitRuntime"]||true;var exceptionCaught=[];var uncaughtExceptionCount=0;var ___cxa_begin_catch=ptr=>{var info=new ExceptionInfo(ptr);if(!info.get_caught()){info.set_caught(true);uncaughtExceptionCount--}info.set_rethrown(false);exceptionCaught.push(info);___cxa_increment_exception_refcount(info.excPtr);return info.get_exception_ptr()};var exceptionLast=0;var ___cxa_end_catch=()=>{_setThrew(0,0);var info=exceptionCaught.pop();___cxa_decrement_exception_refcount(info.excPtr);exceptionLast=0};function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24;this.set_type=function(type){HEAPU32[this.ptr+4>>2]=type};this.get_type=function(){return HEAPU32[this.ptr+4>>2]};this.set_destructor=function(destructor){HEAPU32[this.ptr+8>>2]=destructor};this.get_destructor=function(){return HEAPU32[this.ptr+8>>2]};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+12>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor)};this.set_adjusted_ptr=function(adjustedPtr){HEAPU32[this.ptr+16>>2]=adjustedPtr};this.get_adjusted_ptr=function(){return HEAPU32[this.ptr+16>>2]};this.get_exception_ptr=function(){var isPointer=___cxa_is_pointer_type(this.get_type());if(isPointer){return HEAPU32[this.excPtr>>2]}var adjusted=this.get_adjusted_ptr();if(adjusted!==0)return adjusted;return this.excPtr}}var ___resumeException=ptr=>{if(!exceptionLast){exceptionLast=ptr}throw exceptionLast};var findMatchingCatch=args=>{var thrown=exceptionLast;if(!thrown){setTempRet0(0);return 0}var info=new ExceptionInfo(thrown);info.set_adjusted_ptr(thrown);var thrownType=info.get_type();if(!thrownType){setTempRet0(0);return thrown}for(var arg in args){var caughtType=args[arg];if(caughtType===0||caughtType===thrownType){break}var adjusted_ptr_addr=info.ptr+16;if(___cxa_can_catch(caughtType,thrownType,adjusted_ptr_addr)){setTempRet0(caughtType);return thrown}}setTempRet0(thrownType);return thrown};var ___cxa_find_matching_catch_2=()=>findMatchingCatch([]);var ___cxa_find_matching_catch_3=arg0=>findMatchingCatch([arg0]);var ___cxa_rethrow=()=>{var info=exceptionCaught.pop();if(!info){abort("no exception to throw")}var ptr=info.excPtr;if(!info.get_rethrown()){exceptionCaught.push(info);info.set_rethrown(true);info.set_caught(false);uncaughtExceptionCount++}exceptionLast=ptr;throw exceptionLast};var ___cxa_throw=(ptr,type,destructor)=>{var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw exceptionLast};var ___cxa_uncaught_exceptions=()=>uncaughtExceptionCount;var UTF8Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf8"):undefined;var UTF8ArrayToString=(heapOrArray,idx,maxBytesToRead)=>{var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx<endPtr){var u0=heapOrArray[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=heapOrArray[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=heapOrArray[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u0=(u0&7)<<18|u1<<12|u2<<6|heapOrArray[idx++]&63}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}return str};var UTF8ToString=(ptr,maxBytesToRead)=>ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):"";var SYSCALLS={varargs:undefined,get(){var ret=HEAP32[+SYSCALLS.varargs>>2];SYSCALLS.varargs+=4;return ret},getp(){return SYSCALLS.get()},getStr(ptr){var ret=UTF8ToString(ptr);return ret}};var ___syscall_chmod=(path,mode)=>{};var ___syscall_faccessat=(dirfd,path,amode,flags)=>{};var ___syscall_fchmod=(fd,mode)=>{};var ___syscall_fchown32=(fd,owner,group)=>{};function ___syscall_fcntl64(fd,cmd,varargs){SYSCALLS.varargs=varargs;return 0}var ___syscall_fstat64=(fd,buf)=>{};var convertI32PairToI53Checked=(lo,hi)=>hi+2097152>>>0<4194305-!!lo?(lo>>>0)+hi*4294967296:NaN;function ___syscall_ftruncate64(fd,length_low,length_high){var length=convertI32PairToI53Checked(length_low,length_high)}var lengthBytesUTF8=str=>{var len=0;for(var i=0;i<str.length;++i){var c=str.charCodeAt(i);if(c<=127){len++}else if(c<=2047){len+=2}else if(c>=55296&&c<=57343){len+=4;++i}else{len+=3}}return len};var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx};var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite);var ___syscall_getcwd=(buf,size)=>{};var ___syscall_lstat64=(path,buf)=>{};var ___syscall_mkdirat=(dirfd,path,mode)=>{};var ___syscall_newfstatat=(dirfd,path,buf,flags)=>{};function ___syscall_openat(dirfd,path,flags,varargs){SYSCALLS.varargs=varargs}var ___syscall_readlinkat=(dirfd,path,buf,bufsize)=>{};var ___syscall_rmdir=path=>{};var ___syscall_stat64=(path,buf)=>{};var ___syscall_unlinkat=(dirfd,path,flags)=>{};var ___syscall_utimensat=(dirfd,path,times,flags)=>{};var nowIsMonotonic=1;var __emscripten_get_now_is_monotonic=()=>nowIsMonotonic;var isLeapYear=year=>year%4===0&&(year%100!==0||year%400===0);var MONTH_DAYS_LEAP_CUMULATIVE=[0,31,60,91,121,152,182,213,244,274,305,335];var MONTH_DAYS_REGULAR_CUMULATIVE=[0,31,59,90,120,151,181,212,243,273,304,334];var ydayFromDate=date=>{var leap=isLeapYear(date.getFullYear());var monthDaysCumulative=leap?MONTH_DAYS_LEAP_CUMULATIVE:MONTH_DAYS_REGULAR_CUMULATIVE;var yday=monthDaysCumulative[date.getMonth()]+date.getDate()-1;return yday};function __localtime_js(time_low,time_high,tmPtr){var time=convertI32PairToI53Checked(time_low,time_high);var date=new Date(time*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var yday=ydayFromDate(date)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var start=new Date(date.getFullYear(),0,1);var summerOffset=new Date(date.getFullYear(),6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst}var stringToNewUTF8=str=>{var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8(str,ret,size);return ret};var __tzset_js=(timezone,daylight,tzname)=>{var currentYear=(new Date).getFullYear();var winter=new Date(currentYear,0,1);var summer=new Date(currentYear,6,1);var winterOffset=winter.getTimezoneOffset();var summerOffset=summer.getTimezoneOffset();var stdTimezoneOffset=Math.max(winterOffset,summerOffset);HEAPU32[timezone>>2]=stdTimezoneOffset*60;HEAP32[daylight>>2]=Number(winterOffset!=summerOffset);function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=stringToNewUTF8(winterName);var summerNamePtr=stringToNewUTF8(summerName);if(summerOffset<winterOffset){HEAPU32[tzname>>2]=winterNamePtr;HEAPU32[tzname+4>>2]=summerNamePtr}else{HEAPU32[tzname>>2]=summerNamePtr;HEAPU32[tzname+4>>2]=winterNamePtr}};var _abort=()=>{abort("")};var _emscripten_date_now=()=>Date.now();var _emscripten_get_now;_emscripten_get_now=()=>performance.now();var _emscripten_memcpy_js=(dest,src,num)=>HEAPU8.copyWithin(dest,src,src+num);var getHeapMax=()=>2147483648;var growMemory=size=>{var b=wasmMemory.buffer;var pages=(size-b.byteLength+65535)/65536;try{wasmMemory.grow(pages);updateMemoryViews();return 1}catch(e){}};var _emscripten_resize_heap=requestedSize=>{var oldSize=HEAPU8.length;requestedSize>>>=0;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}var alignUp=(x,multiple)=>x+(multiple-x%multiple)%multiple;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=growMemory(newSize);if(replacement){return true}}return false};var ENV={};var getExecutableName=()=>thisProgram||"./this.program";var getEnvStrings=()=>{if(!getEnvStrings.strings){var lang=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";var env={"USER":"web_user","LOGNAME":"web_user","PATH":"/","PWD":"/","HOME":"/home/web_user","LANG":lang,"_":getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(`${x}=${env[x]}`)}getEnvStrings.strings=strings}return getEnvStrings.strings};var stringToAscii=(str,buffer)=>{for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}HEAP8[buffer>>0]=0};var _environ_get=(__environ,environ_buf)=>{var bufSize=0;getEnvStrings().forEach((string,i)=>{var ptr=environ_buf+bufSize;HEAPU32[__environ+i*4>>2]=ptr;stringToAscii(string,ptr);bufSize+=string.length+1});return 0};var _environ_sizes_get=(penviron_count,penviron_buf_size)=>{var strings=getEnvStrings();HEAPU32[penviron_count>>2]=strings.length;var bufSize=0;strings.forEach(string=>bufSize+=string.length+1);HEAPU32[penviron_buf_size>>2]=bufSize;return 0};var _fd_close=fd=>52;var _fd_fdstat_get=(fd,pbuf)=>{var rightsBase=0;var rightsInheriting=0;var flags=0;{var type=2;if(fd==0){rightsBase=2}else if(fd==1||fd==2){rightsBase=64}flags=1}HEAP8[pbuf>>0]=type;HEAP16[pbuf+2>>1]=flags;tempI64=[rightsBase>>>0,(tempDouble=rightsBase,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[pbuf+8>>2]=tempI64[0],HEAP32[pbuf+12>>2]=tempI64[1];tempI64=[rightsInheriting>>>0,(tempDouble=rightsInheriting,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[pbuf+16>>2]=tempI64[0],HEAP32[pbuf+20>>2]=tempI64[1];return 0};var _fd_read=(fd,iov,iovcnt,pnum)=>52;function _fd_seek(fd,offset_low,offset_high,whence,newOffset){var offset=convertI32PairToI53Checked(offset_low,offset_high);return 70}var _fd_sync=fd=>52;var printCharBuffers=[null,[],[]];var printChar=(stream,curr)=>{var buffer=printCharBuffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}};var _fd_write=(fd,iov,iovcnt,pnum)=>{var num=0;for(var i=0;i<iovcnt;i++){var ptr=HEAPU32[iov>>2];var len=HEAPU32[iov+4>>2];iov+=8;for(var j=0;j<len;j++){printChar(fd,HEAPU8[ptr+j])}num+=len}HEAPU32[pnum>>2]=num;return 0};var _llvm_eh_typeid_for=type=>type;var arraySum=(array,index)=>{var sum=0;for(var i=0;i<=index;sum+=array[i++]){}return sum};var MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];var addDays=(date,days)=>{var newDate=new Date(date.getTime());while(days>0){var leap=isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate};function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var writeArrayToMemory=(array,buffer)=>{HEAP8.set(array,buffer)};var _strftime=(s,maxsize,format,tm)=>{var tm_zone=HEAPU32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?UTF8ToString(tm_zone):""};var pattern=UTF8ToString(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value=="number"?value.toString():value||"";while(str.length<digits){str=character[0]+str}return str}function leadingNulls(value,digits){return leadingSomething(value,digits,"0")}function compareByDay(date1,date2){function sgn(value){return value<0?-1:value>0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}return thisDate.getFullYear()}return thisDate.getFullYear()-1}var EXPANSION_RULES_2={"%a":date=>WEEKDAYS[date.tm_wday].substring(0,3),"%A":date=>WEEKDAYS[date.tm_wday],"%b":date=>MONTHS[date.tm_mon].substring(0,3),"%B":date=>MONTHS[date.tm_mon],"%C":date=>{var year=date.tm_year+1900;return leadingNulls(year/100|0,2)},"%d":date=>leadingNulls(date.tm_mday,2),"%e":date=>leadingSomething(date.tm_mday,2," "),"%g":date=>getWeekBasedYear(date).toString().substring(2),"%G":date=>getWeekBasedYear(date),"%H":date=>leadingNulls(date.tm_hour,2),"%I":date=>{var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)},"%j":date=>leadingNulls(date.tm_mday+arraySum(isLeapYear(date.tm_year+1900)?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR,date.tm_mon-1),3),"%m":date=>leadingNulls(date.tm_mon+1,2),"%M":date=>leadingNulls(date.tm_min,2),"%n":()=>"\n","%p":date=>{if(date.tm_hour>=0&&date.tm_hour<12){return"AM"}return"PM"},"%S":date=>leadingNulls(date.tm_sec,2),"%t":()=>"\t","%u":date=>date.tm_wday||7,"%U":date=>{var days=date.tm_yday+7-date.tm_wday;return leadingNulls(Math.floor(days/7),2)},"%V":date=>{var val=Math.floor((date.tm_yday+7-(date.tm_wday+6)%7)/7);if((date.tm_wday+371-date.tm_yday-2)%7<=2){val++}if(!val){val=52;var dec31=(date.tm_wday+7-date.tm_yday-1)%7;if(dec31==4||dec31==5&&isLeapYear(date.tm_year%400-1)){val++}}else if(val==53){var jan1=(date.tm_wday+371-date.tm_yday)%7;if(jan1!=4&&(jan1!=3||!isLeapYear(date.tm_year)))val=1}return leadingNulls(val,2)},"%w":date=>date.tm_wday,"%W":date=>{var days=date.tm_yday+7-(date.tm_wday+6)%7;return leadingNulls(Math.floor(days/7),2)},"%y":date=>(date.tm_year+1900).toString().substring(2),"%Y":date=>date.tm_year+1900,"%z":date=>{var off=date.tm_gmtoff;var ahead=off>=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)},"%Z":date=>date.tm_zone,"%%":()=>"%"};pattern=pattern.replace(/%%/g,"\0\0");for(var rule in EXPANSION_RULES_2){if(pattern.includes(rule)){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}pattern=pattern.replace(/\0\0/g,"%");var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1};var _strftime_l=(s,maxsize,format,tm,loc)=>_strftime(s,maxsize,format,tm);var wasmTable;var getCFunc=ident=>{var func=Module["_"+ident];return func};var stringToUTF8OnStack=str=>{var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8(str,ret,size);return ret};var ccall=(ident,returnType,argTypes,args,opts)=>{var toC={"string":str=>{var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=stringToUTF8OnStack(str)}return ret},"array":arr=>{var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string"){return UTF8ToString(ret)}if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);function onDone(ret){if(stack!==0)stackRestore(stack);return convertReturnValue(ret)}ret=onDone(ret);return ret};var cwrap=(ident,returnType,argTypes,opts)=>{var numericArgs=!argTypes||argTypes.every(type=>type==="number"||type==="boolean");var numericRet=returnType!=="string";if(numericRet&&numericArgs&&!opts){return getCFunc(ident)}return function(){return ccall(ident,returnType,argTypes,arguments,opts)}};var wasmImports={s:___cxa_begin_catch,u:___cxa_end_catch,a:___cxa_find_matching_catch_2,g:___cxa_find_matching_catch_3,H:___cxa_rethrow,l:___cxa_throw,S:___cxa_uncaught_exceptions,c:___resumeException,la:___syscall_chmod,pa:___syscall_faccessat,ma:___syscall_fchmod,ka:___syscall_fchown32,v:___syscall_fcntl64,ja:___syscall_fstat64,K:___syscall_ftruncate64,ea:___syscall_getcwd,ga:___syscall_lstat64,ba:___syscall_mkdirat,ha:___syscall_newfstatat,aa:___syscall_openat,_:___syscall_readlinkat,Z:___syscall_rmdir,ia:___syscall_stat64,W:___syscall_unlinkat,V:___syscall_utimensat,na:__emscripten_get_now_is_monotonic,I:__localtime_js,X:__tzset_js,A:_abort,B:_emscripten_date_now,F:_emscripten_get_now,oa:_emscripten_memcpy_js,T:_emscripten_resize_heap,ca:_environ_get,da:_environ_sizes_get,G:_fd_close,U:_fd_fdstat_get,$:_fd_read,J:_fd_seek,fa:_fd_sync,Y:_fd_write,qa:invoke_dii,C:invoke_diii,D:invoke_fiii,o:invoke_i,d:invoke_ii,e:invoke_iii,h:invoke_iiii,k:invoke_iiiii,m:invoke_iiiiii,p:invoke_iiiiiii,E:invoke_iiiiiiii,y:invoke_iiiiiiiiiiii,L:invoke_iiji,P:invoke_jii,M:invoke_jiiii,j:invoke_v,i:invoke_vi,b:invoke_vii,f:invoke_viii,n:invoke_viiii,t:invoke_viiiii,q:invoke_viiiiii,r:invoke_viiiiiii,w:invoke_viiiiiiiiii,x:invoke_viiiiiiiiiiiiiii,N:invoke_viiijj,Q:invoke_viij,O:invoke_viijij,z:_llvm_eh_typeid_for,R:_strftime_l};var wasmExports=createWasm();var ___wasm_call_ctors=()=>(___wasm_call_ctors=wasmExports["sa"])();var ___cxa_free_exception=a0=>(___cxa_free_exception=wasmExports["__cxa_free_exception"])(a0);var _free=Module["_free"]=a0=>(_free=Module["_free"]=wasmExports["ua"])(a0);var _malloc=Module["_malloc"]=a0=>(_malloc=Module["_malloc"]=wasmExports["va"])(a0);var _flatsql_create_db=Module["_flatsql_create_db"]=(a0,a1)=>(_flatsql_create_db=Module["_flatsql_create_db"]=wasmExports["wa"])(a0,a1);var _flatsql_destroy_db=Module["_flatsql_destroy_db"]=a0=>(_flatsql_destroy_db=Module["_flatsql_destroy_db"]=wasmExports["xa"])(a0);var _flatsql_register_file_id=Module["_flatsql_register_file_id"]=(a0,a1,a2)=>(_flatsql_register_file_id=Module["_flatsql_register_file_id"]=wasmExports["ya"])(a0,a1,a2);var _flatsql_enable_demo_extractors=Module["_flatsql_enable_demo_extractors"]=a0=>(_flatsql_enable_demo_extractors=Module["_flatsql_enable_demo_extractors"]=wasmExports["za"])(a0);var _flatsql_ingest=Module["_flatsql_ingest"]=(a0,a1,a2)=>(_flatsql_ingest=Module["_flatsql_ingest"]=wasmExports["Aa"])(a0,a1,a2);var _flatsql_ingest_one=Module["_flatsql_ingest_one"]=(a0,a1,a2)=>(_flatsql_ingest_one=Module["_flatsql_ingest_one"]=wasmExports["Ba"])(a0,a1,a2);var _flatsql_register_source=Module["_flatsql_register_source"]=(a0,a1)=>(_flatsql_register_source=Module["_flatsql_register_source"]=wasmExports["Ca"])(a0,a1);var _flatsql_create_unified_views=Module["_flatsql_create_unified_views"]=a0=>(_flatsql_create_unified_views=Module["_flatsql_create_unified_views"]=wasmExports["Da"])(a0);var _flatsql_ingest_with_source=Module["_flatsql_ingest_with_source"]=(a0,a1,a2,a3)=>(_flatsql_ingest_with_source=Module["_flatsql_ingest_with_source"]=wasmExports["Ea"])(a0,a1,a2,a3);var _flatsql_ingest_one_with_source=Module["_flatsql_ingest_one_with_source"]=(a0,a1,a2,a3)=>(_flatsql_ingest_one_with_source=Module["_flatsql_ingest_one_with_source"]=wasmExports["Fa"])(a0,a1,a2,a3);var _flatsql_query=Module["_flatsql_query"]=(a0,a1)=>(_flatsql_query=Module["_flatsql_query"]=wasmExports["Ga"])(a0,a1);var _flatsql_get_error=Module["_flatsql_get_error"]=()=>(_flatsql_get_error=Module["_flatsql_get_error"]=wasmExports["Ha"])();var _flatsql_result_column_count=Module["_flatsql_result_column_count"]=()=>(_flatsql_result_column_count=Module["_flatsql_result_column_count"]=wasmExports["Ia"])();var _flatsql_result_row_count=Module["_flatsql_result_row_count"]=()=>(_flatsql_result_row_count=Module["_flatsql_result_row_count"]=wasmExports["Ja"])();var _flatsql_result_column_name=Module["_flatsql_result_column_name"]=a0=>(_flatsql_result_column_name=Module["_flatsql_result_column_name"]=wasmExports["Ka"])(a0);var _flatsql_result_cell_type=Module["_flatsql_result_cell_type"]=(a0,a1)=>(_flatsql_result_cell_type=Module["_flatsql_result_cell_type"]=wasmExports["La"])(a0,a1);var _flatsql_result_cell_number=Module["_flatsql_result_cell_number"]=(a0,a1)=>(_flatsql_result_cell_number=Module["_flatsql_result_cell_number"]=wasmExports["Ma"])(a0,a1);var _flatsql_result_cell_string=Module["_flatsql_result_cell_string"]=(a0,a1)=>(_flatsql_result_cell_string=Module["_flatsql_result_cell_string"]=wasmExports["Na"])(a0,a1);var _flatsql_result_cell_blob=Module["_flatsql_result_cell_blob"]=(a0,a1)=>(_flatsql_result_cell_blob=Module["_flatsql_result_cell_blob"]=wasmExports["Oa"])(a0,a1);var _flatsql_result_cell_blob_size=Module["_flatsql_result_cell_blob_size"]=(a0,a1)=>(_flatsql_result_cell_blob_size=Module["_flatsql_result_cell_blob_size"]=wasmExports["Pa"])(a0,a1);var _flatsql_export_data=Module["_flatsql_export_data"]=a0=>(_flatsql_export_data=Module["_flatsql_export_data"]=wasmExports["Qa"])(a0);var _flatsql_export_size=Module["_flatsql_export_size"]=()=>(_flatsql_export_size=Module["_flatsql_export_size"]=wasmExports["Ra"])();var _flatsql_load_and_rebuild=Module["_flatsql_load_and_rebuild"]=(a0,a1,a2)=>(_flatsql_load_and_rebuild=Module["_flatsql_load_and_rebuild"]=wasmExports["Sa"])(a0,a1,a2);var _flatsql_create_test_user=Module["_flatsql_create_test_user"]=(a0,a1,a2,a3)=>(_flatsql_create_test_user=Module["_flatsql_create_test_user"]=wasmExports["Ta"])(a0,a1,a2,a3);var _flatsql_test_buffer_size=Module["_flatsql_test_buffer_size"]=()=>(_flatsql_test_buffer_size=Module["_flatsql_test_buffer_size"]=wasmExports["Ua"])();var _flatsql_create_test_post=Module["_flatsql_create_test_post"]=(a0,a1,a2)=>(_flatsql_create_test_post=Module["_flatsql_create_test_post"]=wasmExports["Va"])(a0,a1,a2);var _flatsql_get_stats_count=Module["_flatsql_get_stats_count"]=a0=>(_flatsql_get_stats_count=Module["_flatsql_get_stats_count"]=wasmExports["Wa"])(a0);var _flatsql_get_stat_table_name=Module["_flatsql_get_stat_table_name"]=a0=>(_flatsql_get_stat_table_name=Module["_flatsql_get_stat_table_name"]=wasmExports["Xa"])(a0);var _flatsql_get_stat_file_id=Module["_flatsql_get_stat_file_id"]=a0=>(_flatsql_get_stat_file_id=Module["_flatsql_get_stat_file_id"]=wasmExports["Ya"])(a0);var _flatsql_get_stat_record_count=Module["_flatsql_get_stat_record_count"]=a0=>(_flatsql_get_stat_record_count=Module["_flatsql_get_stat_record_count"]=wasmExports["Za"])(a0);var _flatsql_mark_deleted=Module["_flatsql_mark_deleted"]=(a0,a1,a2)=>(_flatsql_mark_deleted=Module["_flatsql_mark_deleted"]=wasmExports["_a"])(a0,a1,a2);var _flatsql_get_deleted_count=Module["_flatsql_get_deleted_count"]=(a0,a1)=>(_flatsql_get_deleted_count=Module["_flatsql_get_deleted_count"]=wasmExports["$a"])(a0,a1);var _flatsql_clear_tombstones=Module["_flatsql_clear_tombstones"]=(a0,a1)=>(_flatsql_clear_tombstones=Module["_flatsql_clear_tombstones"]=wasmExports["ab"])(a0,a1);var _flatsql_get_sources_count=Module["_flatsql_get_sources_count"]=a0=>(_flatsql_get_sources_count=Module["_flatsql_get_sources_count"]=wasmExports["bb"])(a0);var _flatsql_get_source_name=Module["_flatsql_get_source_name"]=a0=>(_flatsql_get_source_name=Module["_flatsql_get_source_name"]=wasmExports["cb"])(a0);var _flatsql_get_flatbuffer_by_id=Module["_flatsql_get_flatbuffer_by_id"]=(a0,a1,a2)=>(_flatsql_get_flatbuffer_by_id=Module["_flatsql_get_flatbuffer_by_id"]=wasmExports["db"])(a0,a1,a2);var _flatsql_get_flatbuffer_by_email=Module["_flatsql_get_flatbuffer_by_email"]=(a0,a1,a2)=>(_flatsql_get_flatbuffer_by_email=Module["_flatsql_get_flatbuffer_by_email"]=wasmExports["eb"])(a0,a1,a2);var _flatsql_get_raw_flatbuffer_size=Module["_flatsql_get_raw_flatbuffer_size"]=()=>(_flatsql_get_raw_flatbuffer_size=Module["_flatsql_get_raw_flatbuffer_size"]=wasmExports["fb"])();var _flatsql_get_raw_flatbuffer_sequence=Module["_flatsql_get_raw_flatbuffer_sequence"]=()=>(_flatsql_get_raw_flatbuffer_sequence=Module["_flatsql_get_raw_flatbuffer_sequence"]=wasmExports["gb"])();var _flatsql_get_storage_buffer=Module["_flatsql_get_storage_buffer"]=a0=>(_flatsql_get_storage_buffer=Module["_flatsql_get_storage_buffer"]=wasmExports["hb"])(a0);var _flatsql_get_storage_size=Module["_flatsql_get_storage_size"]=a0=>(_flatsql_get_storage_size=Module["_flatsql_get_storage_size"]=wasmExports["ib"])(a0);var _flatsql_set_encryption_key=Module["_flatsql_set_encryption_key"]=(a0,a1,a2)=>(_flatsql_set_encryption_key=Module["_flatsql_set_encryption_key"]=wasmExports["jb"])(a0,a1,a2);var _flatsql_is_encrypted=Module["_flatsql_is_encrypted"]=a0=>(_flatsql_is_encrypted=Module["_flatsql_is_encrypted"]=wasmExports["kb"])(a0);var _flatsql_encrypt_buffer=Module["_flatsql_encrypt_buffer"]=(a0,a1,a2,a3,a4)=>(_flatsql_encrypt_buffer=Module["_flatsql_encrypt_buffer"]=wasmExports["lb"])(a0,a1,a2,a3,a4);var _flatsql_decrypt_buffer=Module["_flatsql_decrypt_buffer"]=(a0,a1,a2,a3,a4)=>(_flatsql_decrypt_buffer=Module["_flatsql_decrypt_buffer"]=wasmExports["mb"])(a0,a1,a2,a3,a4);var _flatsql_set_hmac_verification=Module["_flatsql_set_hmac_verification"]=(a0,a1)=>(_flatsql_set_hmac_verification=Module["_flatsql_set_hmac_verification"]=wasmExports["nb"])(a0,a1);var _flatsql_is_hmac_enabled=Module["_flatsql_is_hmac_enabled"]=a0=>(_flatsql_is_hmac_enabled=Module["_flatsql_is_hmac_enabled"]=wasmExports["ob"])(a0);var _flatsql_compute_hmac=Module["_flatsql_compute_hmac"]=(a0,a1,a2,a3)=>(_flatsql_compute_hmac=Module["_flatsql_compute_hmac"]=wasmExports["pb"])(a0,a1,a2,a3);var _flatsql_verify_hmac=Module["_flatsql_verify_hmac"]=(a0,a1,a2,a3)=>(_flatsql_verify_hmac=Module["_flatsql_verify_hmac"]=wasmExports["qb"])(a0,a1,a2,a3);var ___errno_location=()=>(___errno_location=wasmExports["__errno_location"])();var _setThrew=(a0,a1)=>(_setThrew=wasmExports["rb"])(a0,a1);var setTempRet0=a0=>(setTempRet0=wasmExports["sb"])(a0);var stackSave=()=>(stackSave=wasmExports["tb"])();var stackRestore=a0=>(stackRestore=wasmExports["ub"])(a0);var stackAlloc=a0=>(stackAlloc=wasmExports["vb"])(a0);var ___cxa_decrement_exception_refcount=a0=>(___cxa_decrement_exception_refcount=wasmExports["wb"])(a0);var ___cxa_increment_exception_refcount=a0=>(___cxa_increment_exception_refcount=wasmExports["xb"])(a0);var ___cxa_can_catch=(a0,a1,a2)=>(___cxa_can_catch=wasmExports["yb"])(a0,a1,a2);var ___cxa_is_pointer_type=a0=>(___cxa_is_pointer_type=wasmExports["zb"])(a0);var dynCall_vi=Module["dynCall_vi"]=(a0,a1)=>(dynCall_vi=Module["dynCall_vi"]=wasmExports["Ab"])(a0,a1);var dynCall_ii=Module["dynCall_ii"]=(a0,a1)=>(dynCall_ii=Module["dynCall_ii"]=wasmExports["Bb"])(a0,a1);var dynCall_viij=Module["dynCall_viij"]=(a0,a1,a2,a3,a4)=>(dynCall_viij=Module["dynCall_viij"]=wasmExports["Cb"])(a0,a1,a2,a3,a4);var dynCall_vii=Module["dynCall_vii"]=(a0,a1,a2)=>(dynCall_vii=Module["dynCall_vii"]=wasmExports["Db"])(a0,a1,a2);var dynCall_viii=Module["dynCall_viii"]=(a0,a1,a2,a3)=>(dynCall_viii=Module["dynCall_viii"]=wasmExports["Eb"])(a0,a1,a2,a3);var dynCall_iii=Module["dynCall_iii"]=(a0,a1,a2)=>(dynCall_iii=Module["dynCall_iii"]=wasmExports["Fb"])(a0,a1,a2);var dynCall_iiii=Module["dynCall_iiii"]=(a0,a1,a2,a3)=>(dynCall_iiii=Module["dynCall_iiii"]=wasmExports["Gb"])(a0,a1,a2,a3);var dynCall_iiiiii=Module["dynCall_iiiiii"]=(a0,a1,a2,a3,a4,a5)=>(dynCall_iiiiii=Module["dynCall_iiiiii"]=wasmExports["Hb"])(a0,a1,a2,a3,a4,a5);var dynCall_viiii=Module["dynCall_viiii"]=(a0,a1,a2,a3,a4)=>(dynCall_viiii=Module["dynCall_viiii"]=wasmExports["Ib"])(a0,a1,a2,a3,a4);var dynCall_jii=Module["dynCall_jii"]=(a0,a1,a2)=>(dynCall_jii=Module["dynCall_jii"]=wasmExports["Jb"])(a0,a1,a2);var dynCall_v=Module["dynCall_v"]=a0=>(dynCall_v=Module["dynCall_v"]=wasmExports["Kb"])(a0);var dynCall_viiiii=Module["dynCall_viiiii"]=(a0,a1,a2,a3,a4,a5)=>(dynCall_viiiii=Module["dynCall_viiiii"]=wasmExports["Lb"])(a0,a1,a2,a3,a4,a5);var dynCall_iiiiiii=Module["dynCall_iiiiiii"]=(a0,a1,a2,a3,a4,a5,a6)=>(dynCall_iiiiiii=Module["dynCall_iiiiiii"]=wasmExports["Mb"])(a0,a1,a2,a3,a4,a5,a6);var dynCall_iiiii=Module["dynCall_iiiii"]=(a0,a1,a2,a3,a4)=>(dynCall_iiiii=Module["dynCall_iiiii"]=wasmExports["Nb"])(a0,a1,a2,a3,a4);var dynCall_viiiiii=Module["dynCall_viiiiii"]=(a0,a1,a2,a3,a4,a5,a6)=>(dynCall_viiiiii=Module["dynCall_viiiiii"]=wasmExports["Ob"])(a0,a1,a2,a3,a4,a5,a6);var dynCall_viijij=Module["dynCall_viijij"]=(a0,a1,a2,a3,a4,a5,a6,a7)=>(dynCall_viijij=Module["dynCall_viijij"]=wasmExports["Pb"])(a0,a1,a2,a3,a4,a5,a6,a7);var dynCall_viiijj=Module["dynCall_viiijj"]=(a0,a1,a2,a3,a4,a5,a6,a7)=>(dynCall_viiijj=Module["dynCall_viiijj"]=wasmExports["Qb"])(a0,a1,a2,a3,a4,a5,a6,a7);var dynCall_jiiii=Module["dynCall_jiiii"]=(a0,a1,a2,a3,a4)=>(dynCall_jiiii=Module["dynCall_jiiii"]=wasmExports["Rb"])(a0,a1,a2,a3,a4);var dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)=>(dynCall_viiiiiiiiii=Module["dynCall_viiiiiiiiii"]=wasmExports["Sb"])(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10);var dynCall_iiji=Module["dynCall_iiji"]=(a0,a1,a2,a3,a4)=>(dynCall_iiji=Module["dynCall_iiji"]=wasmExports["Tb"])(a0,a1,a2,a3,a4);var dynCall_i=Module["dynCall_i"]=a0=>(dynCall_i=Module["dynCall_i"]=wasmExports["Ub"])(a0);var dynCall_dii=Module["dynCall_dii"]=(a0,a1,a2)=>(dynCall_dii=Module["dynCall_dii"]=wasmExports["Vb"])(a0,a1,a2);var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=(a0,a1,a2,a3,a4,a5,a6,a7)=>(dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=wasmExports["Wb"])(a0,a1,a2,a3,a4,a5,a6,a7);var dynCall_fiii=Module["dynCall_fiii"]=(a0,a1,a2,a3)=>(dynCall_fiii=Module["dynCall_fiii"]=wasmExports["Xb"])(a0,a1,a2,a3);var dynCall_diii=Module["dynCall_diii"]=(a0,a1,a2,a3)=>(dynCall_diii=Module["dynCall_diii"]=wasmExports["Yb"])(a0,a1,a2,a3);var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=(a0,a1,a2,a3,a4,a5,a6,a7)=>(dynCall_viiiiiii=Module["dynCall_viiiiiii"]=wasmExports["Zb"])(a0,a1,a2,a3,a4,a5,a6,a7);var dynCall_iiiiiiiiiiii=Module["dynCall_iiiiiiiiiiii"]=(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)=>(dynCall_iiiiiiiiiiii=Module["dynCall_iiiiiiiiiiii"]=wasmExports["_b"])(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11);var dynCall_viiiiiiiiiiiiiii=Module["dynCall_viiiiiiiiiiiiiii"]=(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15)=>(dynCall_viiiiiiiiiiiiiii=Module["dynCall_viiiiiiiiiiiiiii"]=wasmExports["$b"])(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15);function invoke_vi(index,a1){var sp=stackSave();try{dynCall_vi(index,a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_ii(index,a1){var sp=stackSave();try{return dynCall_ii(index,a1)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{dynCall_viiiiii(index,a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iii(index,a1,a2){var sp=stackSave();try{return dynCall_iii(index,a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_vii(index,a1,a2){var sp=stackSave();try{dynCall_vii(index,a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiii(index,a1,a2,a3){var sp=stackSave();try{return dynCall_iiii(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viii(index,a1,a2,a3){var sp=stackSave();try{dynCall_viii(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_v(index){var sp=stackSave();try{dynCall_v(index)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{return dynCall_iiiiii(index,a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiii(index,a1,a2,a3,a4){var sp=stackSave();try{dynCall_viiii(index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiii(index,a1,a2,a3,a4,a5){var sp=stackSave();try{dynCall_viiiii(index,a1,a2,a3,a4,a5)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiii(index,a1,a2,a3,a4,a5,a6){var sp=stackSave();try{return dynCall_iiiiiii(index,a1,a2,a3,a4,a5,a6)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return dynCall_iiiii(index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10){var sp=stackSave();try{dynCall_viiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_i(index){var sp=stackSave();try{return dynCall_i(index)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_dii(index,a1,a2){var sp=stackSave();try{return dynCall_dii(index,a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{return dynCall_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_fiii(index,a1,a2,a3){var sp=stackSave();try{return dynCall_fiii(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_diii(index,a1,a2,a3){var sp=stackSave();try{return dynCall_diii(index,a1,a2,a3)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{dynCall_viiiiiii(index,a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){var sp=stackSave();try{return dynCall_iiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiiiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15){var sp=stackSave();try{dynCall_viiiiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viij(index,a1,a2,a3,a4){var sp=stackSave();try{dynCall_viij(index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_jii(index,a1,a2){var sp=stackSave();try{return dynCall_jii(index,a1,a2)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viijij(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{dynCall_viijij(index,a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_viiijj(index,a1,a2,a3,a4,a5,a6,a7){var sp=stackSave();try{dynCall_viiijj(index,a1,a2,a3,a4,a5,a6,a7)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_jiiii(index,a1,a2,a3,a4){var sp=stackSave();try{return dynCall_jiiii(index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}function invoke_iiji(index,a1,a2,a3,a4){var sp=stackSave();try{return dynCall_iiji(index,a1,a2,a3,a4)}catch(e){stackRestore(sp);if(e!==e+0)throw e;_setThrew(1,0)}}Module["ccall"]=ccall;Module["cwrap"]=cwrap;Module["UTF8ToString"]=UTF8ToString;Module["stringToUTF8"]=stringToUTF8;Module["lengthBytesUTF8"]=lengthBytesUTF8;var calledRun;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function run(){if(runDependencies>0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve(Module);if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run();
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
return moduleArg.ready
|
|
12
|
+
}
|
|
13
|
+
);
|
|
14
|
+
})();
|
|
15
|
+
;
|
|
16
|
+
export default FlatSQL;
|
package/wasm/flatsql.wasm
CHANGED
|
Binary file
|
package/wasm/index.d.ts
CHANGED
|
@@ -142,6 +142,69 @@ export interface FlatSQLDatabase {
|
|
|
142
142
|
* Destroy the database and free memory
|
|
143
143
|
*/
|
|
144
144
|
destroy(): void;
|
|
145
|
+
|
|
146
|
+
// ==================== Encryption ====================
|
|
147
|
+
|
|
148
|
+
/**
|
|
149
|
+
* Set the encryption key for field-level FlatBuffer decryption.
|
|
150
|
+
* Fields marked with (encrypted) in the schema will be transparently
|
|
151
|
+
* decrypted when read through SQL queries.
|
|
152
|
+
* @param key 32-byte AES-256 key
|
|
153
|
+
*/
|
|
154
|
+
setEncryptionKey(key: Uint8Array): void;
|
|
155
|
+
|
|
156
|
+
/**
|
|
157
|
+
* Check if encryption is enabled
|
|
158
|
+
*/
|
|
159
|
+
isEncrypted(): boolean;
|
|
160
|
+
|
|
161
|
+
/**
|
|
162
|
+
* Encrypt a FlatBuffer using the database's encryption key
|
|
163
|
+
* @param buffer FlatBuffer data
|
|
164
|
+
* @param schema Binary schema (.bfbs)
|
|
165
|
+
* @returns Encrypted buffer copy
|
|
166
|
+
*/
|
|
167
|
+
encryptBuffer(buffer: Uint8Array, schema: Uint8Array): Uint8Array;
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* Decrypt a FlatBuffer using the database's encryption key
|
|
171
|
+
* @param buffer Encrypted FlatBuffer data
|
|
172
|
+
* @param schema Binary schema (.bfbs)
|
|
173
|
+
* @returns Decrypted buffer copy
|
|
174
|
+
*/
|
|
175
|
+
decryptBuffer(buffer: Uint8Array, schema: Uint8Array): Uint8Array;
|
|
176
|
+
|
|
177
|
+
// ==================== HMAC Authentication ====================
|
|
178
|
+
|
|
179
|
+
/**
|
|
180
|
+
* Enable or disable HMAC-SHA256 verification on ingest.
|
|
181
|
+
* When enabled, buffers can be verified for integrity before processing.
|
|
182
|
+
* Requires an encryption key to be set first.
|
|
183
|
+
* @param enabled true to enable, false to disable
|
|
184
|
+
*/
|
|
185
|
+
setHMACVerification(enabled: boolean): void;
|
|
186
|
+
|
|
187
|
+
/**
|
|
188
|
+
* Check if HMAC verification is enabled
|
|
189
|
+
*/
|
|
190
|
+
isHMACEnabled(): boolean;
|
|
191
|
+
|
|
192
|
+
/**
|
|
193
|
+
* Compute HMAC-SHA256 for a FlatBuffer.
|
|
194
|
+
* Use this to sign buffers before transmission/storage.
|
|
195
|
+
* @param buffer FlatBuffer data
|
|
196
|
+
* @returns 32-byte HMAC
|
|
197
|
+
*/
|
|
198
|
+
computeHMAC(buffer: Uint8Array): Uint8Array;
|
|
199
|
+
|
|
200
|
+
/**
|
|
201
|
+
* Verify HMAC-SHA256 for a FlatBuffer.
|
|
202
|
+
* Use this to verify buffer integrity before ingestion.
|
|
203
|
+
* @param buffer FlatBuffer data
|
|
204
|
+
* @param mac 32-byte HMAC to verify against
|
|
205
|
+
* @returns true if the MAC is valid
|
|
206
|
+
*/
|
|
207
|
+
verifyHMAC(buffer: Uint8Array, mac: Uint8Array): boolean;
|
|
145
208
|
}
|
|
146
209
|
|
|
147
210
|
export interface FlatSQL {
|
package/wasm/index.js
CHANGED
|
@@ -255,6 +255,18 @@ export async function initFlatSQL(moduleFactoryOrOptions) {
|
|
|
255
255
|
markDeleted: Module.cwrap('flatsql_mark_deleted', null, ['number', 'string', 'number']),
|
|
256
256
|
getDeletedCount: Module.cwrap('flatsql_get_deleted_count', 'number', ['number', 'string']),
|
|
257
257
|
clearTombstones: Module.cwrap('flatsql_clear_tombstones', null, ['number', 'string']),
|
|
258
|
+
|
|
259
|
+
// Encryption
|
|
260
|
+
setEncryptionKey: Module.cwrap('flatsql_set_encryption_key', 'number', ['number', 'number', 'number']),
|
|
261
|
+
isEncrypted: Module.cwrap('flatsql_is_encrypted', 'number', ['number']),
|
|
262
|
+
encryptBuffer: Module.cwrap('flatsql_encrypt_buffer', 'number', ['number', 'number', 'number', 'number', 'number']),
|
|
263
|
+
decryptBuffer: Module.cwrap('flatsql_decrypt_buffer', 'number', ['number', 'number', 'number', 'number', 'number']),
|
|
264
|
+
|
|
265
|
+
// HMAC Authentication
|
|
266
|
+
setHMACVerification: Module.cwrap('flatsql_set_hmac_verification', 'number', ['number', 'number']),
|
|
267
|
+
isHMACEnabled: Module.cwrap('flatsql_is_hmac_enabled', 'number', ['number']),
|
|
268
|
+
computeHMAC: Module.cwrap('flatsql_compute_hmac', 'number', ['number', 'number', 'number', 'number']),
|
|
269
|
+
verifyHMAC: Module.cwrap('flatsql_verify_hmac', 'number', ['number', 'number', 'number', 'number']),
|
|
258
270
|
};
|
|
259
271
|
|
|
260
272
|
return new FlatSQL();
|
|
@@ -458,6 +470,120 @@ export class FlatSQLDatabase {
|
|
|
458
470
|
clearTombstones(tableName) {
|
|
459
471
|
api.clearTombstones(this._handle, tableName);
|
|
460
472
|
}
|
|
473
|
+
|
|
474
|
+
// ==================== Encryption API ====================
|
|
475
|
+
|
|
476
|
+
/**
|
|
477
|
+
* Set the encryption key for field-level FlatBuffer decryption.
|
|
478
|
+
* @param {Uint8Array} key - 32-byte AES-256 key
|
|
479
|
+
*/
|
|
480
|
+
setEncryptionKey(key) {
|
|
481
|
+
const ptr = Module._malloc(key.length);
|
|
482
|
+
Module.HEAPU8.set(key, ptr);
|
|
483
|
+
const result = api.setEncryptionKey(this._handle, ptr, key.length);
|
|
484
|
+
Module._free(ptr);
|
|
485
|
+
if (!result) throw new Error(api.getError());
|
|
486
|
+
}
|
|
487
|
+
|
|
488
|
+
/**
|
|
489
|
+
* Check if encryption is enabled.
|
|
490
|
+
* @returns {boolean}
|
|
491
|
+
*/
|
|
492
|
+
isEncrypted() {
|
|
493
|
+
return api.isEncrypted(this._handle) !== 0;
|
|
494
|
+
}
|
|
495
|
+
|
|
496
|
+
/**
|
|
497
|
+
* Encrypt a FlatBuffer in-place using the database's encryption key.
|
|
498
|
+
* @param {Uint8Array} buffer - FlatBuffer data
|
|
499
|
+
* @param {Uint8Array} schema - Binary schema (.bfbs)
|
|
500
|
+
* @returns {Uint8Array} Encrypted buffer (copy)
|
|
501
|
+
*/
|
|
502
|
+
encryptBuffer(buffer, schema) {
|
|
503
|
+
const bufPtr = Module._malloc(buffer.length);
|
|
504
|
+
Module.HEAPU8.set(buffer, bufPtr);
|
|
505
|
+
const schemaPtr = Module._malloc(schema.length);
|
|
506
|
+
Module.HEAPU8.set(schema, schemaPtr);
|
|
507
|
+
const result = api.encryptBuffer(this._handle, bufPtr, buffer.length, schemaPtr, schema.length);
|
|
508
|
+
const encrypted = new Uint8Array(Module.HEAPU8.buffer, bufPtr, buffer.length).slice();
|
|
509
|
+
Module._free(bufPtr);
|
|
510
|
+
Module._free(schemaPtr);
|
|
511
|
+
if (!result) throw new Error(api.getError());
|
|
512
|
+
return encrypted;
|
|
513
|
+
}
|
|
514
|
+
|
|
515
|
+
/**
|
|
516
|
+
* Decrypt a FlatBuffer in-place using the database's encryption key.
|
|
517
|
+
* @param {Uint8Array} buffer - Encrypted FlatBuffer data
|
|
518
|
+
* @param {Uint8Array} schema - Binary schema (.bfbs)
|
|
519
|
+
* @returns {Uint8Array} Decrypted buffer (copy)
|
|
520
|
+
*/
|
|
521
|
+
decryptBuffer(buffer, schema) {
|
|
522
|
+
const bufPtr = Module._malloc(buffer.length);
|
|
523
|
+
Module.HEAPU8.set(buffer, bufPtr);
|
|
524
|
+
const schemaPtr = Module._malloc(schema.length);
|
|
525
|
+
Module.HEAPU8.set(schema, schemaPtr);
|
|
526
|
+
const result = api.decryptBuffer(this._handle, bufPtr, buffer.length, schemaPtr, schema.length);
|
|
527
|
+
const decrypted = new Uint8Array(Module.HEAPU8.buffer, bufPtr, buffer.length).slice();
|
|
528
|
+
Module._free(bufPtr);
|
|
529
|
+
Module._free(schemaPtr);
|
|
530
|
+
if (!result) throw new Error(api.getError());
|
|
531
|
+
return decrypted;
|
|
532
|
+
}
|
|
533
|
+
|
|
534
|
+
// ==================== HMAC Authentication API ====================
|
|
535
|
+
|
|
536
|
+
/**
|
|
537
|
+
* Enable or disable HMAC verification on ingest.
|
|
538
|
+
* Requires an encryption key to be set first.
|
|
539
|
+
* @param {boolean} enabled
|
|
540
|
+
*/
|
|
541
|
+
setHMACVerification(enabled) {
|
|
542
|
+
const result = api.setHMACVerification(this._handle, enabled ? 1 : 0);
|
|
543
|
+
if (!result) throw new Error(api.getError());
|
|
544
|
+
}
|
|
545
|
+
|
|
546
|
+
/**
|
|
547
|
+
* Check if HMAC verification is enabled.
|
|
548
|
+
* @returns {boolean}
|
|
549
|
+
*/
|
|
550
|
+
isHMACEnabled() {
|
|
551
|
+
return api.isHMACEnabled(this._handle) !== 0;
|
|
552
|
+
}
|
|
553
|
+
|
|
554
|
+
/**
|
|
555
|
+
* Compute HMAC-SHA256 for a FlatBuffer.
|
|
556
|
+
* @param {Uint8Array} buffer - FlatBuffer data
|
|
557
|
+
* @returns {Uint8Array} 32-byte HMAC
|
|
558
|
+
*/
|
|
559
|
+
computeHMAC(buffer) {
|
|
560
|
+
const bufPtr = Module._malloc(buffer.length);
|
|
561
|
+
Module.HEAPU8.set(buffer, bufPtr);
|
|
562
|
+
const macPtr = Module._malloc(32);
|
|
563
|
+
const result = api.computeHMAC(this._handle, bufPtr, buffer.length, macPtr);
|
|
564
|
+
const mac = new Uint8Array(Module.HEAPU8.buffer, macPtr, 32).slice();
|
|
565
|
+
Module._free(bufPtr);
|
|
566
|
+
Module._free(macPtr);
|
|
567
|
+
if (!result) throw new Error('HMAC computation failed - is encryption key set?');
|
|
568
|
+
return mac;
|
|
569
|
+
}
|
|
570
|
+
|
|
571
|
+
/**
|
|
572
|
+
* Verify HMAC-SHA256 for a FlatBuffer.
|
|
573
|
+
* @param {Uint8Array} buffer - FlatBuffer data
|
|
574
|
+
* @param {Uint8Array} mac - 32-byte HMAC to verify
|
|
575
|
+
* @returns {boolean} true if valid
|
|
576
|
+
*/
|
|
577
|
+
verifyHMAC(buffer, mac) {
|
|
578
|
+
const bufPtr = Module._malloc(buffer.length);
|
|
579
|
+
Module.HEAPU8.set(buffer, bufPtr);
|
|
580
|
+
const macPtr = Module._malloc(32);
|
|
581
|
+
Module.HEAPU8.set(mac, macPtr);
|
|
582
|
+
const result = api.verifyHMAC(this._handle, bufPtr, buffer.length, macPtr);
|
|
583
|
+
Module._free(bufPtr);
|
|
584
|
+
Module._free(macPtr);
|
|
585
|
+
return result !== 0;
|
|
586
|
+
}
|
|
461
587
|
}
|
|
462
588
|
|
|
463
589
|
export default initFlatSQL;
|