just-bash 2.3.0 → 2.3.3
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 +16 -0
- package/dist/bin/chunks/sqlite3-PZRKN3TT.js +37 -0
- package/dist/bin/just-bash.js +62 -61
- package/dist/bin/shell/chunks/sqlite3-PZRKN3TT.js +37 -0
- package/dist/bin/shell/shell.js +81 -80
- package/dist/bundle/browser.js +194 -193
- package/dist/bundle/chunks/sqlite3-CX5D36A5.js +36 -0
- package/dist/bundle/index.js +53 -52
- package/dist/commands/browser-excluded.d.ts +16 -0
- package/dist/commands/registry.d.ts +1 -1
- package/dist/commands/sqlite3/sqlite3.d.ts +7 -1
- package/dist/commands/sqlite3/worker.d.ts +34 -0
- package/dist/limits.d.ts +2 -0
- package/package.json +3 -3
- package/dist/bin/chunks/sqlite3-J2DBDCKT.js +0 -36
- package/dist/bin/shell/chunks/sqlite3-J2DBDCKT.js +0 -36
- package/dist/bundle/chunks/sqlite3-RCPUSN3E.js +0 -35
package/README.md
CHANGED
|
@@ -322,6 +322,22 @@ const env = new Bash({
|
|
|
322
322
|
|
|
323
323
|
**Note:** The `curl` command only exists when network is configured. Without network configuration, `curl` returns "command not found".
|
|
324
324
|
|
|
325
|
+
## SQLite Support
|
|
326
|
+
|
|
327
|
+
The `sqlite3` command uses sql.js (WASM-based SQLite) which is fully sandboxed and cannot access the real filesystem:
|
|
328
|
+
|
|
329
|
+
```typescript
|
|
330
|
+
const env = new Bash();
|
|
331
|
+
|
|
332
|
+
// Query in-memory database
|
|
333
|
+
await env.exec('sqlite3 :memory: "SELECT 1 + 1"');
|
|
334
|
+
|
|
335
|
+
// Query file-based database
|
|
336
|
+
await env.exec('sqlite3 data.db "SELECT * FROM users"');
|
|
337
|
+
```
|
|
338
|
+
|
|
339
|
+
**Note:** SQLite is not available in browser environments. Queries run in a worker thread with a configurable timeout (default: 5 seconds) to prevent runaway queries from blocking execution.
|
|
340
|
+
|
|
325
341
|
### Allow-List Security
|
|
326
342
|
|
|
327
343
|
The allow-list enforces:
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import{a as ar,b as ur}from"./chunk-GTNBSMZR.js";import{a as bt,c as ln,e as fn}from"./chunk-KGOUQS5A.js";var lr=ln((Ve,le)=>{var Fe=void 0,Be=function(l){return Fe||(Fe=new Promise(function(h,d){var c=typeof l<"u"?l:{},b=c.onAbort;c.onAbort=function(e){d(new Error(e)),b&&b(e)},c.postRun=c.postRun||[],c.postRun.push(function(){h(c)}),le=void 0;var i;i||=typeof c<"u"?c:{};var w=typeof window=="object",m=typeof WorkerGlobalScope<"u",R=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string"&&process.type!="renderer";i.onRuntimeInitialized=function(){function e(s,f){switch(typeof f){case"boolean":an(s,f?1:0);break;case"number":nn(s,f);break;case"string":on(s,f,-1,-1);break;case"object":if(f===null)nr(s);else if(f.length!=null){var y=We(f,De);sn(s,y,f.length,-1),Ie(y)}else Qe(s,"Wrong API use : tried to return a value of an unknown type ("+f+").",-1);break;default:nr(s)}}function t(s,f){for(var y=[],g=0;g<s;g+=1){var E=J(f+4*g,"i32"),x=Zr(E);if(x===1||x===2)E=rn(E);else if(x===3)E=en(E);else if(x===4){x=E,E=Kr(x),x=tn(x);for(var H=new Uint8Array(E),Q=0;Q<E;Q+=1)H[Q]=$[x+Q];E=H}else E=null;y.push(E)}return y}function r(s,f){this.Qa=s,this.db=f,this.Oa=1,this.lb=[]}function n(s,f){if(this.db=f,f=ge(s)+1,this.eb=dt(f),this.eb===null)throw Error("Unable to allocate memory for the SQL string");Z(s,k,this.eb,f),this.kb=this.eb,this.Za=this.pb=null}function o(s){if(this.filename="dbfile_"+(4294967295*Math.random()>>>0),s!=null){var f=this.filename,y="/",g=f;if(y&&(y=typeof y=="string"?y:rt(y),g=f?Ke(y+"/"+f):y),f=Mt(!0,!0),g=Nr(g,f),s){if(typeof s=="string"){y=Array(s.length);for(var E=0,x=s.length;E<x;++E)y[E]=s.charCodeAt(E);s=y}$e(g,f|146),y=we(g,577),Ht(y,s,0,s.length,0),ut(y),$e(g,f)}}this.handleError(v(this.filename,a)),this.db=J(a,"i32"),or(this.db),this.fb={},this.Sa={}}var a=ne(4),u=i.cwrap,v=u("sqlite3_open","number",["string","number"]),A=u("sqlite3_close_v2","number",["number"]),S=u("sqlite3_exec","number",["number","string","number","number","number"]),j=u("sqlite3_changes","number",["number"]),U=u("sqlite3_prepare_v2","number",["number","string","number","number","number"]),Zt=u("sqlite3_sql","string",["number"]),$r=u("sqlite3_normalized_sql","string",["number"]),Kt=u("sqlite3_prepare_v2","number",["number","number","number","number","number"]),Pr=u("sqlite3_bind_text","number",["number","number","number","number","number"]),er=u("sqlite3_bind_blob","number",["number","number","number","number","number"]),Cr=u("sqlite3_bind_double","number",["number","number","number"]),Ur=u("sqlite3_bind_int","number",["number","number","number"]),Dr=u("sqlite3_bind_parameter_index","number",["number","string"]),Wr=u("sqlite3_step","number",["number"]),Ir=u("sqlite3_errmsg","string",["number"]),Qr=u("sqlite3_column_count","number",["number"]),Fr=u("sqlite3_data_count","number",["number"]),Br=u("sqlite3_column_double","number",["number","number"]),tr=u("sqlite3_column_text","string",["number","number"]),Vr=u("sqlite3_column_blob","number",["number","number"]),zr=u("sqlite3_column_bytes","number",["number","number"]),Hr=u("sqlite3_column_type","number",["number","number"]),Xr=u("sqlite3_column_name","string",["number","number"]),Yr=u("sqlite3_reset","number",["number"]),Gr=u("sqlite3_clear_bindings","number",["number"]),Jr=u("sqlite3_finalize","number",["number"]),rr=u("sqlite3_create_function_v2","number","number string number number number number number number number".split(" ")),Zr=u("sqlite3_value_type","number",["number"]),Kr=u("sqlite3_value_bytes","number",["number"]),en=u("sqlite3_value_text","string",["number"]),tn=u("sqlite3_value_blob","number",["number"]),rn=u("sqlite3_value_double","number",["number"]),nn=u("sqlite3_result_double","",["number","number"]),nr=u("sqlite3_result_null","",["number"]),on=u("sqlite3_result_text","",["number","string","number","number"]),sn=u("sqlite3_result_blob","",["number","number","number","number"]),an=u("sqlite3_result_int","",["number","number"]),Qe=u("sqlite3_result_error","",["number","string","number"]),ir=u("sqlite3_aggregate_context","number",["number","number"]),or=u("RegisterExtensionFunctions","number",["number"]),sr=u("sqlite3_update_hook","number",["number","number","number"]);r.prototype.bind=function(s){if(!this.Qa)throw"Statement closed";return this.reset(),Array.isArray(s)?this.Cb(s):s!=null&&typeof s=="object"?this.Db(s):!0},r.prototype.step=function(){if(!this.Qa)throw"Statement closed";this.Oa=1;var s=Wr(this.Qa);switch(s){case 100:return!0;case 101:return!1;default:throw this.db.handleError(s)}},r.prototype.wb=function(s){return s==null&&(s=this.Oa,this.Oa+=1),Br(this.Qa,s)},r.prototype.Gb=function(s){if(s==null&&(s=this.Oa,this.Oa+=1),s=tr(this.Qa,s),typeof BigInt!="function")throw Error("BigInt is not supported");return BigInt(s)},r.prototype.Hb=function(s){return s==null&&(s=this.Oa,this.Oa+=1),tr(this.Qa,s)},r.prototype.getBlob=function(s){s==null&&(s=this.Oa,this.Oa+=1);var f=zr(this.Qa,s);s=Vr(this.Qa,s);for(var y=new Uint8Array(f),g=0;g<f;g+=1)y[g]=$[s+g];return y},r.prototype.get=function(s,f){f=f||{},s!=null&&this.bind(s)&&this.step(),s=[];for(var y=Fr(this.Qa),g=0;g<y;g+=1)switch(Hr(this.Qa,g)){case 1:var E=f.useBigInt?this.Gb(g):this.wb(g);s.push(E);break;case 2:s.push(this.wb(g));break;case 3:s.push(this.Hb(g));break;case 4:s.push(this.getBlob(g));break;default:s.push(null)}return s},r.prototype.getColumnNames=function(){for(var s=[],f=Qr(this.Qa),y=0;y<f;y+=1)s.push(Xr(this.Qa,y));return s},r.prototype.getAsObject=function(s,f){s=this.get(s,f),f=this.getColumnNames();for(var y={},g=0;g<f.length;g+=1)y[f[g]]=s[g];return y},r.prototype.getSQL=function(){return Zt(this.Qa)},r.prototype.getNormalizedSQL=function(){return $r(this.Qa)},r.prototype.run=function(s){return s!=null&&this.bind(s),this.step(),this.reset()},r.prototype.sb=function(s,f){f==null&&(f=this.Oa,this.Oa+=1),s=xt(s);var y=We(s,De);this.lb.push(y),this.db.handleError(Pr(this.Qa,f,y,s.length-1,0))},r.prototype.Bb=function(s,f){f==null&&(f=this.Oa,this.Oa+=1);var y=We(s,De);this.lb.push(y),this.db.handleError(er(this.Qa,f,y,s.length,0))},r.prototype.rb=function(s,f){f==null&&(f=this.Oa,this.Oa+=1),this.db.handleError((s===(s|0)?Ur:Cr)(this.Qa,f,s))},r.prototype.Eb=function(s){s==null&&(s=this.Oa,this.Oa+=1),er(this.Qa,s,0,0,0)},r.prototype.tb=function(s,f){switch(f==null&&(f=this.Oa,this.Oa+=1),typeof s){case"string":this.sb(s,f);return;case"number":this.rb(s,f);return;case"bigint":this.sb(s.toString(),f);return;case"boolean":this.rb(s+0,f);return;case"object":if(s===null){this.Eb(f);return}if(s.length!=null){this.Bb(s,f);return}}throw"Wrong API use : tried to bind a value of an unknown type ("+s+")."},r.prototype.Db=function(s){var f=this;return Object.keys(s).forEach(function(y){var g=Dr(f.Qa,y);g!==0&&f.tb(s[y],g)}),!0},r.prototype.Cb=function(s){for(var f=0;f<s.length;f+=1)this.tb(s[f],f+1);return!0},r.prototype.reset=function(){return this.freemem(),Gr(this.Qa)===0&&Yr(this.Qa)===0},r.prototype.freemem=function(){for(var s;(s=this.lb.pop())!==void 0;)Ie(s)},r.prototype.free=function(){this.freemem();var s=Jr(this.Qa)===0;return delete this.db.fb[this.Qa],this.Qa=0,s},n.prototype.next=function(){if(this.eb===null)return{done:!0};if(this.Za!==null&&(this.Za.free(),this.Za=null),!this.db.db)throw this.mb(),Error("Database closed");var s=ke(),f=ne(4);ve(a),ve(f);try{this.db.handleError(Kt(this.db.db,this.kb,-1,a,f)),this.kb=J(f,"i32");var y=J(a,"i32");return y===0?(this.mb(),{done:!0}):(this.Za=new r(y,this.db),this.db.fb[y]=this.Za,{value:this.Za,done:!1})}catch(g){throw this.pb=Ze(this.kb),this.mb(),g}finally{Ae(s)}},n.prototype.mb=function(){Ie(this.eb),this.eb=null},n.prototype.getRemainingSQL=function(){return this.pb!==null?this.pb:Ze(this.kb)},typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"&&(n.prototype[Symbol.iterator]=function(){return this}),o.prototype.run=function(s,f){if(!this.db)throw"Database closed";if(f){s=this.prepare(s,f);try{s.step()}finally{s.free()}}else this.handleError(S(this.db,s,0,0,a));return this},o.prototype.exec=function(s,f,y){if(!this.db)throw"Database closed";var g=ke(),E=null;try{var x=ct(s),H=ne(4);for(s=[];J(x,"i8")!==0;){ve(a),ve(H),this.handleError(Kt(this.db,x,-1,a,H));var Q=J(a,"i32");if(x=J(H,"i32"),Q!==0){var D=null;for(E=new r(Q,this),f!=null&&E.bind(f);E.step();)D===null&&(D={columns:E.getColumnNames(),values:[]},s.push(D)),D.values.push(E.get(null,y));E.free()}}return s}catch(X){throw E&&E.free(),X}finally{Ae(g)}},o.prototype.each=function(s,f,y,g,E){typeof f=="function"&&(g=y,y=f,f=void 0),s=this.prepare(s,f);try{for(;s.step();)y(s.getAsObject(null,E))}finally{s.free()}if(typeof g=="function")return g()},o.prototype.prepare=function(s,f){if(ve(a),this.handleError(U(this.db,s,-1,a,0)),s=J(a,"i32"),s===0)throw"Nothing to prepare";var y=new r(s,this);return f!=null&&y.bind(f),this.fb[s]=y},o.prototype.iterateStatements=function(s){return new n(s,this)},o.prototype.export=function(){Object.values(this.fb).forEach(function(f){f.free()}),Object.values(this.Sa).forEach(re),this.Sa={},this.handleError(A(this.db));var s=Lr(this.filename);return this.handleError(v(this.filename,a)),this.db=J(a,"i32"),or(this.db),s},o.prototype.close=function(){this.db!==null&&(Object.values(this.fb).forEach(function(s){s.free()}),Object.values(this.Sa).forEach(re),this.Sa={},this.Ya&&(re(this.Ya),this.Ya=void 0),this.handleError(A(this.db)),Qt("/"+this.filename),this.db=null)},o.prototype.handleError=function(s){if(s===0)return null;throw s=Ir(this.db),Error(s)},o.prototype.getRowsModified=function(){return j(this.db)},o.prototype.create_function=function(s,f){Object.prototype.hasOwnProperty.call(this.Sa,s)&&(re(this.Sa[s]),delete this.Sa[s]);var y=Se(function(g,E,x){E=t(E,x);try{var H=f.apply(null,E)}catch(Q){Qe(g,Q,-1);return}e(g,H)},"viii");return this.Sa[s]=y,this.handleError(rr(this.db,s,f.length,1,0,y,0,0,0)),this},o.prototype.create_aggregate=function(s,f){var y=f.init||function(){return null},g=f.finalize||function(D){return D},E=f.step;if(!E)throw"An aggregate function must have a step function in "+s;var x={};Object.hasOwnProperty.call(this.Sa,s)&&(re(this.Sa[s]),delete this.Sa[s]),f=s+"__finalize",Object.hasOwnProperty.call(this.Sa,f)&&(re(this.Sa[f]),delete this.Sa[f]);var H=Se(function(D,X,wt){var ue=ir(D,1);Object.hasOwnProperty.call(x,ue)||(x[ue]=y()),X=t(X,wt),X=[x[ue]].concat(X);try{x[ue]=E.apply(null,X)}catch(un){delete x[ue],Qe(D,un,-1)}},"viii"),Q=Se(function(D){var X=ir(D,1);try{var wt=g(x[X])}catch(ue){delete x[X],Qe(D,ue,-1);return}e(D,wt),delete x[X]},"vi");return this.Sa[s]=H,this.Sa[f]=Q,this.handleError(rr(this.db,s,E.length-1,1,0,0,H,Q,0)),this},o.prototype.updateHook=function(s){this.Ya&&(sr(this.db,0,0),re(this.Ya),this.Ya=void 0),s&&(this.Ya=Se(function(f,y,g,E,x){switch(y){case 18:f="insert";break;case 23:f="update";break;case 9:f="delete";break;default:throw"unknown operationCode in updateHook callback: "+y}if(g=g?M(k,g):"",E=E?M(k,E):"",x>Number.MAX_SAFE_INTEGER)throw"rowId too big to fit inside a Number";s(f,g,E,Number(x))},"viiiij"),sr(this.db,this.Ya,0))},i.Database=o};var F={...i},fe="./this.program",he=(e,t)=>{throw t},B="",V,ce;if(R){var Y=bt("fs");bt("path"),B=__dirname+"/",ce=e=>(e=Me(e)?new URL(e):e,Y.readFileSync(e)),V=async e=>(e=Me(e)?new URL(e):e,Y.readFileSync(e,void 0)),!i.thisProgram&&1<process.argv.length&&(fe=process.argv[1].replace(/\\/g,"/")),process.argv.slice(2),typeof le<"u"&&(le.exports=i),he=(e,t)=>{throw process.exitCode=e,t}}else(w||m)&&(m?B=self.location.href:typeof document<"u"&&document.currentScript&&(B=document.currentScript.src),B=B.startsWith("blob:")?"":B.slice(0,B.replace(/[?#].*/,"").lastIndexOf("/")+1),m&&(ce=e=>{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),V=async e=>{if(Me(e))return new Promise((r,n)=>{var o=new XMLHttpRequest;o.open("GET",e,!0),o.responseType="arraybuffer",o.onload=()=>{o.status==200||o.status==0&&o.response?r(o.response):n(o.status)},o.onerror=n,o.send(null)});var t=await fetch(e,{credentials:"same-origin"});if(t.ok)return t.arrayBuffer();throw Error(t.status+" : "+t.url)});var be=i.print||console.log.bind(console),T=i.printErr||console.error.bind(console);Object.assign(i,F),F=null,i.thisProgram&&(fe=i.thisProgram);var xe=i.wasmBinary,Ne,Le=!1,ze,$,k,ye,N,O,He,z,Xe,Me=e=>e.startsWith("file://");function _t(){var e=Ne.buffer;i.HEAP8=$=new Int8Array(e),i.HEAP16=ye=new Int16Array(e),i.HEAPU8=k=new Uint8Array(e),i.HEAPU16=new Uint16Array(e),i.HEAP32=N=new Int32Array(e),i.HEAPU32=O=new Uint32Array(e),i.HEAPF32=He=new Float32Array(e),i.HEAPF64=Xe=new Float64Array(e),i.HEAP64=z=new BigInt64Array(e),i.HEAPU64=new BigUint64Array(e)}var ie=0,_e=null;function me(e){throw i.onAbort?.(e),e="Aborted("+e+")",T(e),Le=!0,new WebAssembly.RuntimeError(e+". Build with -sASSERTIONS for more info.")}var Ye;async function dr(e){if(!xe)try{var t=await V(e);return new Uint8Array(t)}catch{}if(e==Ye&&xe)e=new Uint8Array(xe);else if(ce)e=ce(e);else throw"both async and sync fetching of the wasm failed";return e}async function pr(e,t){try{var r=await dr(e);return await WebAssembly.instantiate(r,t)}catch(n){T(`failed to asynchronously prepare wasm: ${n}`),me(n)}}async function wr(e){var t=Ye;if(!xe&&typeof WebAssembly.instantiateStreaming=="function"&&!Me(t)&&!R)try{var r=fetch(t,{credentials:"same-origin"});return await WebAssembly.instantiateStreaming(r,e)}catch(n){T(`wasm streaming compile failed: ${n}`),T("falling back to ArrayBuffer instantiation")}return pr(t,e)}class Ge{name="ExitStatus";constructor(t){this.message=`Program terminated with exit(${t})`,this.status=t}}var vt=e=>{for(;0<e.length;)e.shift()(i)},gt=[],Et=[],br=()=>{var e=i.preRun.shift();Et.unshift(e)};function J(e,t="i8"){switch(t.endsWith("*")&&(t="*"),t){case"i1":return $[e];case"i8":return $[e];case"i16":return ye[e>>1];case"i32":return N[e>>2];case"i64":return z[e>>3];case"float":return He[e>>2];case"double":return Xe[e>>3];case"*":return O[e>>2];default:me(`invalid type for getValue: ${t}`)}}var Je=i.noExitRuntime||!0;function ve(e){var t="i32";switch(t.endsWith("*")&&(t="*"),t){case"i1":$[e]=0;break;case"i8":$[e]=0;break;case"i16":ye[e>>1]=0;break;case"i32":N[e>>2]=0;break;case"i64":z[e>>3]=BigInt(0);break;case"float":He[e>>2]=0;break;case"double":Xe[e>>3]=0;break;case"*":O[e>>2]=0;break;default:me(`invalid type for setValue: ${t}`)}}var qt=typeof TextDecoder<"u"?new TextDecoder:void 0,M=(e,t=0,r=NaN)=>{var n=t+r;for(r=t;e[r]&&!(r>=n);)++r;if(16<r-t&&e.buffer&&qt)return qt.decode(e.subarray(t,r));for(n="";t<r;){var o=e[t++];if(o&128){var a=e[t++]&63;if((o&224)==192)n+=String.fromCharCode((o&31)<<6|a);else{var u=e[t++]&63;o=(o&240)==224?(o&15)<<12|a<<6|u:(o&7)<<18|a<<12|u<<6|e[t++]&63,65536>o?n+=String.fromCharCode(o):(o-=65536,n+=String.fromCharCode(55296|o>>10,56320|o&1023))}}else n+=String.fromCharCode(o)}return n},Ze=(e,t)=>e?M(k,e,t):"",St=(e,t)=>{for(var r=0,n=e.length-1;0<=n;n--){var o=e[n];o==="."?e.splice(n,1):o===".."?(e.splice(n,1),r++):r&&(e.splice(n,1),r--)}if(t)for(;r;r--)e.unshift("..");return e},Ke=e=>{var t=e.charAt(0)==="/",r=e.slice(-1)==="/";return(e=St(e.split("/").filter(n=>!!n),!t).join("/"))||t||(e="."),e&&r&&(e+="/"),(t?"/":"")+e},At=e=>{var t=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(e).slice(1);return e=t[0],t=t[1],!e&&!t?".":(t&&=t.slice(0,-1),e+t)},Te=e=>e&&e.match(/([^\/]+|\/)\/*$/)[1],yr=()=>{if(R){var e=bt("crypto");return t=>e.randomFillSync(t)}return t=>crypto.getRandomValues(t)},kt=e=>{(kt=yr())(e)},_r=(...e)=>{for(var t="",r=!1,n=e.length-1;-1<=n&&!r;n--){if(r=0<=n?e[n]:"/",typeof r!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!r)return"";t=r+"/"+t,r=r.charAt(0)==="/"}return t=St(t.split("/").filter(o=>!!o),!r).join("/"),(r?"/":"")+t||"."},et=[],ge=e=>{for(var t=0,r=0;r<e.length;++r){var n=e.charCodeAt(r);127>=n?t++:2047>=n?t+=2:55296<=n&&57343>=n?(t+=4,++r):t+=3}return t},Z=(e,t,r,n)=>{if(!(0<n))return 0;var o=r;n=r+n-1;for(var a=0;a<e.length;++a){var u=e.charCodeAt(a);if(55296<=u&&57343>=u){var v=e.charCodeAt(++a);u=65536+((u&1023)<<10)|v&1023}if(127>=u){if(r>=n)break;t[r++]=u}else{if(2047>=u){if(r+1>=n)break;t[r++]=192|u>>6}else{if(65535>=u){if(r+2>=n)break;t[r++]=224|u>>12}else{if(r+3>=n)break;t[r++]=240|u>>18,t[r++]=128|u>>12&63}t[r++]=128|u>>6&63}t[r++]=128|u&63}}return t[r]=0,r-o},xt=(e,t)=>{var r=Array(ge(e)+1);return e=Z(e,r,0,r.length),t&&(r.length=e),r},Nt=[];function Lt(e,t){Nt[e]={input:[],output:[],cb:t},st(e,vr)}var vr={open(e){var t=Nt[e.node.rdev];if(!t)throw new p(43);e.tty=t,e.seekable=!1},close(e){e.tty.cb.fsync(e.tty)},fsync(e){e.tty.cb.fsync(e.tty)},read(e,t,r,n){if(!e.tty||!e.tty.cb.xb)throw new p(60);for(var o=0,a=0;a<n;a++){try{var u=e.tty.cb.xb(e.tty)}catch{throw new p(29)}if(u===void 0&&o===0)throw new p(6);if(u==null)break;o++,t[r+a]=u}return o&&(e.node.atime=Date.now()),o},write(e,t,r,n){if(!e.tty||!e.tty.cb.qb)throw new p(60);try{for(var o=0;o<n;o++)e.tty.cb.qb(e.tty,t[r+o])}catch{throw new p(29)}return n&&(e.node.mtime=e.node.ctime=Date.now()),o}},gr={xb(){e:{if(!et.length){var e=null;if(R){var t=Buffer.alloc(256),r=0,n=process.stdin.fd;try{r=Y.readSync(n,t,0,256)}catch(o){if(o.toString().includes("EOF"))r=0;else throw o}0<r&&(e=t.slice(0,r).toString("utf-8"))}else typeof window<"u"&&typeof window.prompt=="function"&&(e=window.prompt("Input: "),e!==null&&(e+=`
|
|
3
|
+
`));if(!e){e=null;break e}et=xt(e,!0)}e=et.shift()}return e},qb(e,t){t===null||t===10?(be(M(e.output)),e.output=[]):t!=0&&e.output.push(t)},fsync(e){0<e.output?.length&&(be(M(e.output)),e.output=[])},Tb(){return{Ob:25856,Qb:5,Nb:191,Pb:35387,Mb:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}},Ub(){return 0},Vb(){return[24,80]}},Er={qb(e,t){t===null||t===10?(T(M(e.output)),e.output=[]):t!=0&&e.output.push(t)},fsync(e){0<e.output?.length&&(T(M(e.output)),e.output=[])}},q={Wa:null,Xa(){return q.createNode(null,"/",16895,0)},createNode(e,t,r,n){if((r&61440)===24576||(r&61440)===4096)throw new p(63);return q.Wa||(q.Wa={dir:{node:{Ta:q.La.Ta,Ua:q.La.Ua,lookup:q.La.lookup,hb:q.La.hb,rename:q.La.rename,unlink:q.La.unlink,rmdir:q.La.rmdir,readdir:q.La.readdir,symlink:q.La.symlink},stream:{Va:q.Ma.Va}},file:{node:{Ta:q.La.Ta,Ua:q.La.Ua},stream:{Va:q.Ma.Va,read:q.Ma.read,write:q.Ma.write,ib:q.Ma.ib,jb:q.Ma.jb}},link:{node:{Ta:q.La.Ta,Ua:q.La.Ua,readlink:q.La.readlink},stream:{}},ub:{node:{Ta:q.La.Ta,Ua:q.La.Ua},stream:xr}}),r=$t(e,t,r,n),C(r.mode)?(r.La=q.Wa.dir.node,r.Ma=q.Wa.dir.stream,r.Na={}):(r.mode&61440)===32768?(r.La=q.Wa.file.node,r.Ma=q.Wa.file.stream,r.Ra=0,r.Na=null):(r.mode&61440)===40960?(r.La=q.Wa.link.node,r.Ma=q.Wa.link.stream):(r.mode&61440)===8192&&(r.La=q.Wa.ub.node,r.Ma=q.Wa.ub.stream),r.atime=r.mtime=r.ctime=Date.now(),e&&(e.Na[t]=r,e.atime=e.mtime=e.ctime=r.atime),r},Sb(e){return e.Na?e.Na.subarray?e.Na.subarray(0,e.Ra):new Uint8Array(e.Na):new Uint8Array(0)},La:{Ta(e){var t={};return t.dev=(e.mode&61440)===8192?e.id:1,t.ino=e.id,t.mode=e.mode,t.nlink=1,t.uid=0,t.gid=0,t.rdev=e.rdev,C(e.mode)?t.size=4096:(e.mode&61440)===32768?t.size=e.Ra:(e.mode&61440)===40960?t.size=e.link.length:t.size=0,t.atime=new Date(e.atime),t.mtime=new Date(e.mtime),t.ctime=new Date(e.ctime),t.blksize=4096,t.blocks=Math.ceil(t.size/t.blksize),t},Ua(e,t){for(var r of["mode","atime","mtime","ctime"])t[r]!=null&&(e[r]=t[r]);t.size!==void 0&&(t=t.size,e.Ra!=t&&(t==0?(e.Na=null,e.Ra=0):(r=e.Na,e.Na=new Uint8Array(t),r&&e.Na.set(r.subarray(0,Math.min(t,e.Ra))),e.Ra=t)))},lookup(){throw q.vb},hb(e,t,r,n){return q.createNode(e,t,r,n)},rename(e,t,r){try{var n=oe(t,r)}catch{}if(n){if(C(e.mode))for(var o in n.Na)throw new p(55);it(n)}delete e.parent.Na[e.name],t.Na[r]=e,e.name=r,t.ctime=t.mtime=e.parent.ctime=e.parent.mtime=Date.now()},unlink(e,t){delete e.Na[t],e.ctime=e.mtime=Date.now()},rmdir(e,t){var r=oe(e,t),n;for(n in r.Na)throw new p(55);delete e.Na[t],e.ctime=e.mtime=Date.now()},readdir(e){return[".","..",...Object.keys(e.Na)]},symlink(e,t,r){return e=q.createNode(e,t,41471,0),e.link=r,e},readlink(e){if((e.mode&61440)!==40960)throw new p(28);return e.link}},Ma:{read(e,t,r,n,o){var a=e.node.Na;if(o>=e.node.Ra)return 0;if(e=Math.min(e.node.Ra-o,n),8<e&&a.subarray)t.set(a.subarray(o,o+e),r);else for(n=0;n<e;n++)t[r+n]=a[o+n];return e},write(e,t,r,n,o,a){if(t.buffer===$.buffer&&(a=!1),!n)return 0;if(e=e.node,e.mtime=e.ctime=Date.now(),t.subarray&&(!e.Na||e.Na.subarray)){if(a)return e.Na=t.subarray(r,r+n),e.Ra=n;if(e.Ra===0&&o===0)return e.Na=t.slice(r,r+n),e.Ra=n;if(o+n<=e.Ra)return e.Na.set(t.subarray(r,r+n),o),n}a=o+n;var u=e.Na?e.Na.length:0;if(u>=a||(a=Math.max(a,u*(1048576>u?2:1.125)>>>0),u!=0&&(a=Math.max(a,256)),u=e.Na,e.Na=new Uint8Array(a),0<e.Ra&&e.Na.set(u.subarray(0,e.Ra),0)),e.Na.subarray&&t.subarray)e.Na.set(t.subarray(r,r+n),o);else for(a=0;a<n;a++)e.Na[o+a]=t[r+a];return e.Ra=Math.max(e.Ra,o+n),n},Va(e,t,r){if(r===1?t+=e.position:r===2&&(e.node.mode&61440)===32768&&(t+=e.node.Ra),0>t)throw new p(28);return t},ib(e,t,r,n,o){if((e.node.mode&61440)!==32768)throw new p(43);if(e=e.node.Na,o&2||!e||e.buffer!==$.buffer){o=!0,n=65536*Math.ceil(t/65536);var a=Gt(65536,n);if(a&&k.fill(0,a,a+n),n=a,!n)throw new p(48);e&&((0<r||r+t<e.length)&&(e.subarray?e=e.subarray(r,r+t):e=Array.prototype.slice.call(e,r,r+t)),$.set(e,n))}else o=!1,n=e.byteOffset;return{Kb:n,Ab:o}},jb(e,t,r,n){return q.Ma.write(e,t,0,n,r,!1),0}}},Mt=(e,t)=>{var r=0;return e&&(r|=365),t&&(r|=146),r},tt=null,Tt={},de=[],qr=1,ee=null,jt=!1,Rt=!0,Ot={},p=class{name="ErrnoError";constructor(e){this.Pa=e}},Sr=class{gb={};node=null;get flags(){return this.gb.flags}set flags(e){this.gb.flags=e}get position(){return this.gb.position}set position(e){this.gb.position=e}},Ar=class{La={};Ma={};ab=null;constructor(e,t,r,n){e||=this,this.parent=e,this.Xa=e.Xa,this.id=qr++,this.name=t,this.mode=r,this.rdev=n,this.atime=this.mtime=this.ctime=Date.now()}get read(){return(this.mode&365)===365}set read(e){e?this.mode|=365:this.mode&=-366}get write(){return(this.mode&146)===146}set write(e){e?this.mode|=146:this.mode&=-147}};function I(e,t={}){if(!e)throw new p(44);t.nb??(t.nb=!0),e.charAt(0)==="/"||(e="//"+e);var r=0;e:for(;40>r;r++){e=e.split("/").filter(v=>!!v);for(var n=tt,o="/",a=0;a<e.length;a++){var u=a===e.length-1;if(u&&t.parent)break;if(e[a]!==".")if(e[a]==="..")o=At(o),n=n.parent;else{o=Ke(o+"/"+e[a]);try{n=oe(n,e[a])}catch(v){if(v?.Pa===44&&u&&t.Jb)return{path:o};throw v}if(!n.ab||u&&!t.nb||(n=n.ab.root),(n.mode&61440)===40960&&(!u||t.$a)){if(!n.La.readlink)throw new p(52);n=n.La.readlink(n),n.charAt(0)==="/"||(n=At(o)+"/"+n),e=n+"/"+e.slice(a+1).join("/");continue e}}}return{path:o,node:n}}throw new p(32)}function rt(e){for(var t;;){if(e===e.parent)return e=e.Xa.zb,t?e[e.length-1]!=="/"?`${e}/${t}`:e+t:e;t=t?`${e.name}/${t}`:e.name,e=e.parent}}function nt(e,t){for(var r=0,n=0;n<t.length;n++)r=(r<<5)-r+t.charCodeAt(n)|0;return(e+r>>>0)%ee.length}function it(e){var t=nt(e.parent.id,e.name);if(ee[t]===e)ee[t]=e.bb;else for(t=ee[t];t;){if(t.bb===e){t.bb=e.bb;break}t=t.bb}}function oe(e,t){var r=C(e.mode)?(r=pe(e,"x"))?r:e.La.lookup?0:2:54;if(r)throw new p(r);for(r=ee[nt(e.id,t)];r;r=r.bb){var n=r.name;if(r.parent.id===e.id&&n===t)return r}return e.La.lookup(e,t)}function $t(e,t,r,n){return e=new Ar(e,t,r,n),t=nt(e.parent.id,e.name),e.bb=ee[t],ee[t]=e}function C(e){return(e&61440)===16384}function Pt(e){var t=["r","w","rw"][e&3];return e&512&&(t+="w"),t}function pe(e,t){if(Rt)return 0;if(!t.includes("r")||e.mode&292){if(t.includes("w")&&!(e.mode&146)||t.includes("x")&&!(e.mode&73))return 2}else return 2;return 0}function Ct(e,t){if(!C(e.mode))return 54;try{return oe(e,t),20}catch{}return pe(e,"wx")}function Ut(e,t,r){try{var n=oe(e,t)}catch(o){return o.Pa}if(e=pe(e,"wx"))return e;if(r){if(!C(n.mode))return 54;if(n===n.parent||rt(n)==="/")return 10}else if(C(n.mode))return 31;return 0}function je(e){if(!e)throw new p(63);return e}function P(e){if(e=de[e],!e)throw new p(8);return e}function Dt(e,t=-1){if(e=Object.assign(new Sr,e),t==-1)e:{for(t=0;4096>=t;t++)if(!de[t])break e;throw new p(33)}return e.fd=t,de[t]=e}function kr(e,t=-1){return e=Dt(e,t),e.Ma?.Rb?.(e),e}function ot(e,t,r){var n=e?.Ma.Ua;e=n?e:t,n??=t.La.Ua,je(n),n(e,r)}var xr={open(e){e.Ma=Tt[e.node.rdev].Ma,e.Ma.open?.(e)},Va(){throw new p(70)}};function st(e,t){Tt[e]={Ma:t}}function Wt(e,t){var r=t==="/";if(r&&tt)throw new p(10);if(!r&&t){var n=I(t,{nb:!1});if(t=n.path,n=n.node,n.ab)throw new p(10);if(!C(n.mode))throw new p(54)}t={type:e,Wb:{},zb:t,Ib:[]},e=e.Xa(t),e.Xa=t,t.root=e,r?tt=e:n&&(n.ab=t,n.Xa&&n.Xa.Ib.push(t))}function Re(e,t,r){var n=I(e,{parent:!0}).node;if(e=Te(e),!e)throw new p(28);if(e==="."||e==="..")throw new p(20);var o=Ct(n,e);if(o)throw new p(o);if(!n.La.hb)throw new p(63);return n.La.hb(n,e,t,r)}function Nr(e,t=438){return Re(e,t&4095|32768,0)}function G(e,t=511){return Re(e,t&1023|16384,0)}function Oe(e,t,r){typeof r>"u"&&(r=t,t=438),Re(e,t|8192,r)}function at(e,t){if(!_r(e))throw new p(44);var r=I(t,{parent:!0}).node;if(!r)throw new p(44);t=Te(t);var n=Ct(r,t);if(n)throw new p(n);if(!r.La.symlink)throw new p(63);r.La.symlink(r,t,e)}function It(e){var t=I(e,{parent:!0}).node;e=Te(e);var r=oe(t,e),n=Ut(t,e,!0);if(n)throw new p(n);if(!t.La.rmdir)throw new p(63);if(r.ab)throw new p(10);t.La.rmdir(t,e),it(r)}function Qt(e){var t=I(e,{parent:!0}).node;if(!t)throw new p(44);e=Te(e);var r=oe(t,e),n=Ut(t,e,!1);if(n)throw new p(n);if(!t.La.unlink)throw new p(63);if(r.ab)throw new p(10);t.La.unlink(t,e),it(r)}function Ee(e,t){return e=I(e,{$a:!t}).node,je(e.La.Ta)(e)}function Ft(e,t,r,n){ot(e,t,{mode:r&4095|t.mode&-4096,ctime:Date.now(),Fb:n})}function $e(e,t){e=typeof e=="string"?I(e,{$a:!0}).node:e,Ft(null,e,t)}function Bt(e,t,r){if(C(t.mode))throw new p(31);if((t.mode&61440)!==32768)throw new p(28);var n=pe(t,"w");if(n)throw new p(n);ot(e,t,{size:r,timestamp:Date.now()})}function we(e,t,r=438){if(e==="")throw new p(44);if(typeof t=="string"){var n={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[t];if(typeof n>"u")throw Error(`Unknown file open mode: ${t}`);t=n}if(r=t&64?r&4095|32768:0,typeof e=="object")n=e;else{var o=e.endsWith("/");e=I(e,{$a:!(t&131072),Jb:!0}),n=e.node,e=e.path}var a=!1;if(t&64)if(n){if(t&128)throw new p(20)}else{if(o)throw new p(31);n=Re(e,r|511,0),a=!0}if(!n)throw new p(44);if((n.mode&61440)===8192&&(t&=-513),t&65536&&!C(n.mode))throw new p(54);if(!a&&(o=n?(n.mode&61440)===40960?32:C(n.mode)&&(Pt(t)!=="r"||t&576)?31:pe(n,Pt(t)):44))throw new p(o);return t&512&&!a&&(o=n,o=typeof o=="string"?I(o,{$a:!0}).node:o,Bt(null,o,0)),t&=-131713,o=Dt({node:n,path:rt(n),flags:t,seekable:!0,position:0,Ma:n.Ma,Lb:[],error:!1}),o.Ma.open&&o.Ma.open(o),a&&$e(n,r&511),!i.logReadFiles||t&1||e in Ot||(Ot[e]=1),o}function ut(e){if(e.fd===null)throw new p(8);e.ob&&(e.ob=null);try{e.Ma.close&&e.Ma.close(e)}catch(t){throw t}finally{de[e.fd]=null}e.fd=null}function Vt(e,t,r){if(e.fd===null)throw new p(8);if(!e.seekable||!e.Ma.Va)throw new p(70);if(r!=0&&r!=1&&r!=2)throw new p(28);e.position=e.Ma.Va(e,t,r),e.Lb=[]}function zt(e,t,r,n,o){if(0>n||0>o)throw new p(28);if(e.fd===null)throw new p(8);if((e.flags&2097155)===1)throw new p(8);if(C(e.node.mode))throw new p(31);if(!e.Ma.read)throw new p(28);var a=typeof o<"u";if(!a)o=e.position;else if(!e.seekable)throw new p(70);return t=e.Ma.read(e,t,r,n,o),a||(e.position+=t),t}function Ht(e,t,r,n,o){if(0>n||0>o)throw new p(28);if(e.fd===null)throw new p(8);if((e.flags&2097155)===0)throw new p(8);if(C(e.node.mode))throw new p(31);if(!e.Ma.write)throw new p(28);e.seekable&&e.flags&1024&&Vt(e,0,2);var a=typeof o<"u";if(!a)o=e.position;else if(!e.seekable)throw new p(70);return t=e.Ma.write(e,t,r,n,o,void 0),a||(e.position+=t),t}function Lr(e){var t="binary";if(t!=="utf8"&&t!=="binary")throw Error(`Invalid encoding type "${t}"`);var r,n=we(e,n||0);e=Ee(e).size;var o=new Uint8Array(e);return zt(n,o,0,e,0),t==="utf8"?r=M(o):t==="binary"&&(r=o),ut(n),r}function te(e,t,r){e=Ke("/dev/"+e);var n=Mt(!!t,!!r);te.yb??(te.yb=64);var o=te.yb++<<8|0;st(o,{open(a){a.seekable=!1},close(){r?.buffer?.length&&r(10)},read(a,u,v,A){for(var S=0,j=0;j<A;j++){try{var U=t()}catch{throw new p(29)}if(U===void 0&&S===0)throw new p(6);if(U==null)break;S++,u[v+j]=U}return S&&(a.node.atime=Date.now()),S},write(a,u,v,A){for(var S=0;S<A;S++)try{r(u[v+S])}catch{throw new p(29)}return A&&(a.node.mtime=a.node.ctime=Date.now()),S}}),Oe(e,n,o)}var L={};function se(e,t,r){if(t.charAt(0)==="/")return t;if(e=e===-100?"/":P(e).path,t.length==0){if(!r)throw new p(44);return e}return e+"/"+t}function Pe(e,t){N[e>>2]=t.dev,N[e+4>>2]=t.mode,O[e+8>>2]=t.nlink,N[e+12>>2]=t.uid,N[e+16>>2]=t.gid,N[e+20>>2]=t.rdev,z[e+24>>3]=BigInt(t.size),N[e+32>>2]=4096,N[e+36>>2]=t.blocks;var r=t.atime.getTime(),n=t.mtime.getTime(),o=t.ctime.getTime();return z[e+40>>3]=BigInt(Math.floor(r/1e3)),O[e+48>>2]=r%1e3*1e6,z[e+56>>3]=BigInt(Math.floor(n/1e3)),O[e+64>>2]=n%1e3*1e6,z[e+72>>3]=BigInt(Math.floor(o/1e3)),O[e+80>>2]=o%1e3*1e6,z[e+88>>3]=BigInt(t.ino),0}var Ce=void 0,Ue=()=>{var e=N[+Ce>>2];return Ce+=4,e},lt=0,Mr=[0,31,60,91,121,152,182,213,244,274,305,335],Tr=[0,31,59,90,120,151,181,212,243,273,304,334],qe={},Xt=e=>{ze=e,Je||0<lt||(i.onExit?.(e),Le=!0),he(e,new Ge(e))},jr=e=>{if(!Le)try{if(e(),!(Je||0<lt))try{ze=e=ze,Xt(e)}catch(t){t instanceof Ge||t=="unwind"||he(1,t)}}catch(t){t instanceof Ge||t=="unwind"||he(1,t)}},ft={},Yt=()=>{if(!ht){var e={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:fe||"./this.program"},t;for(t in ft)ft[t]===void 0?delete e[t]:e[t]=ft[t];var r=[];for(t in e)r.push(`${t}=${e[t]}`);ht=r}return ht},ht,ct=e=>{var t=ge(e)+1,r=ne(t);return Z(e,k,r,t),r},Rr=(e,t,r,n)=>{var o={string:S=>{var j=0;return S!=null&&S!==0&&(j=ct(S)),j},array:S=>{var j=ne(S.length);return $.set(S,j),j}};e=i["_"+e];var a=[],u=0;if(n)for(var v=0;v<n.length;v++){var A=o[r[v]];A?(u===0&&(u=ke()),a[v]=A(n[v])):a[v]=n[v]}return r=e(...a),r=(function(S){return u!==0&&Ae(u),t==="string"?S?M(k,S):"":t==="boolean"?!!S:S})(r)},De=0,We=(e,t)=>(t=t==1?ne(e.length):dt(e.length),e.subarray||e.slice||(e=new Uint8Array(e)),k.set(e,t),t),ae,mt=[],K,re=e=>{ae.delete(K.get(e)),K.set(e,null),mt.push(e)},Se=(e,t)=>{if(!ae){ae=new WeakMap;var r=K.length;if(ae)for(var n=0;n<0+r;n++){var o=K.get(n);o&&ae.set(o,n)}}if(r=ae.get(e)||0)return r;if(mt.length)r=mt.pop();else{try{K.grow(1)}catch(A){throw A instanceof RangeError?"Unable to grow wasm table. Set ALLOW_TABLE_GROWTH.":A}r=K.length-1}try{K.set(r,e)}catch(A){if(!(A instanceof TypeError))throw A;if(typeof WebAssembly.Function=="function"){var a=WebAssembly.Function;n={i:"i32",j:"i64",f:"f32",d:"f64",e:"externref",p:"i32"},o={parameters:[],results:t[0]=="v"?[]:[n[t[0]]]};for(var u=1;u<t.length;++u)o.parameters.push(n[t[u]]);t=new a(o,e)}else{n=[1],o=t.slice(0,1),t=t.slice(1),u={i:127,p:127,j:126,f:125,d:124,e:111},n.push(96);var v=t.length;128>v?n.push(v):n.push(v%128|128,v>>7);for(a of t)n.push(u[a]);o=="v"?n.push(0):n.push(1,u[o]),t=[0,97,115,109,1,0,0,0,1],a=n.length,128>a?t.push(a):t.push(a%128|128,a>>7),t.push(...n),t.push(2,7,1,1,101,1,102,0,0,7,5,1,1,102,0,0),t=new WebAssembly.Module(new Uint8Array(t)),t=new WebAssembly.Instance(t,{e:{f:e}}).exports.f}K.set(r,t)}return ae.set(e,r),r};ee=Array(4096),Wt(q,"/"),G("/tmp"),G("/home"),G("/home/web_user"),(function(){G("/dev"),st(259,{read:()=>0,write:(n,o,a,u)=>u,Va:()=>0}),Oe("/dev/null",259),Lt(1280,gr),Lt(1536,Er),Oe("/dev/tty",1280),Oe("/dev/tty1",1536);var e=new Uint8Array(1024),t=0,r=()=>(t===0&&(kt(e),t=e.byteLength),e[--t]);te("random",r),te("urandom",r),G("/dev/shm"),G("/dev/shm/tmp")})(),(function(){G("/proc");var e=G("/proc/self");G("/proc/self/fd"),Wt({Xa(){var t=$t(e,"fd",16895,73);return t.Ma={Va:q.Ma.Va},t.La={lookup(r,n){r=+n;var o=P(r);return r={parent:null,Xa:{zb:"fake"},La:{readlink:()=>o.path},id:r+1},r.parent=r},readdir(){return Array.from(de.entries()).filter(([,r])=>r).map(([r])=>r.toString())}},t}},"/proc/self/fd")})(),q.vb=new p(44),q.vb.stack="<generic error, no stack>";var Or={a:(e,t,r,n)=>me(`Assertion failed: ${e?M(k,e):""}, at: `+[t?t?M(k,t):"":"unknown filename",r,n?n?M(k,n):"":"unknown function"]),i:function(e,t){try{return e=e?M(k,e):"",$e(e,t),0}catch(r){if(typeof L>"u"||r.name!=="ErrnoError")throw r;return-r.Pa}},L:function(e,t,r){try{if(t=t?M(k,t):"",t=se(e,t),r&-8)return-28;var n=I(t,{$a:!0}).node;return n?(e="",r&4&&(e+="r"),r&2&&(e+="w"),r&1&&(e+="x"),e&&pe(n,e)?-2:0):-44}catch(o){if(typeof L>"u"||o.name!=="ErrnoError")throw o;return-o.Pa}},j:function(e,t){try{var r=P(e);return Ft(r,r.node,t,!1),0}catch(n){if(typeof L>"u"||n.name!=="ErrnoError")throw n;return-n.Pa}},h:function(e){try{var t=P(e);return ot(t,t.node,{timestamp:Date.now(),Fb:!1}),0}catch(r){if(typeof L>"u"||r.name!=="ErrnoError")throw r;return-r.Pa}},b:function(e,t,r){Ce=r;try{var n=P(e);switch(t){case 0:var o=Ue();if(0>o)break;for(;de[o];)o++;return kr(n,o).fd;case 1:case 2:return 0;case 3:return n.flags;case 4:return o=Ue(),n.flags|=o,0;case 12:return o=Ue(),ye[o+0>>1]=2,0;case 13:case 14:return 0}return-28}catch(a){if(typeof L>"u"||a.name!=="ErrnoError")throw a;return-a.Pa}},g:function(e,t){try{var r=P(e),n=r.node,o=r.Ma.Ta;e=o?r:n,o??=n.La.Ta,je(o);var a=o(e);return Pe(t,a)}catch(u){if(typeof L>"u"||u.name!=="ErrnoError")throw u;return-u.Pa}},H:function(e,t){t=-9007199254740992>t||9007199254740992<t?NaN:Number(t);try{if(isNaN(t))return 61;var r=P(e);if(0>t||(r.flags&2097155)===0)throw new p(28);return Bt(r,r.node,t),0}catch(n){if(typeof L>"u"||n.name!=="ErrnoError")throw n;return-n.Pa}},G:function(e,t){try{if(t===0)return-28;var r=ge("/")+1;return t<r?-68:(Z("/",k,e,t),r)}catch(n){if(typeof L>"u"||n.name!=="ErrnoError")throw n;return-n.Pa}},K:function(e,t){try{return e=e?M(k,e):"",Pe(t,Ee(e,!0))}catch(r){if(typeof L>"u"||r.name!=="ErrnoError")throw r;return-r.Pa}},C:function(e,t,r){try{return t=t?M(k,t):"",t=se(e,t),G(t,r),0}catch(n){if(typeof L>"u"||n.name!=="ErrnoError")throw n;return-n.Pa}},J:function(e,t,r,n){try{t=t?M(k,t):"";var o=n&256;return t=se(e,t,n&4096),Pe(r,o?Ee(t,!0):Ee(t))}catch(a){if(typeof L>"u"||a.name!=="ErrnoError")throw a;return-a.Pa}},x:function(e,t,r,n){Ce=n;try{t=t?M(k,t):"",t=se(e,t);var o=n?Ue():0;return we(t,r,o).fd}catch(a){if(typeof L>"u"||a.name!=="ErrnoError")throw a;return-a.Pa}},v:function(e,t,r,n){try{if(t=t?M(k,t):"",t=se(e,t),0>=n)return-28;var o=I(t).node;if(!o)throw new p(44);if(!o.La.readlink)throw new p(28);var a=o.La.readlink(o),u=Math.min(n,ge(a)),v=$[r+u];return Z(a,k,r,n+1),$[r+u]=v,u}catch(A){if(typeof L>"u"||A.name!=="ErrnoError")throw A;return-A.Pa}},u:function(e){try{return e=e?M(k,e):"",It(e),0}catch(t){if(typeof L>"u"||t.name!=="ErrnoError")throw t;return-t.Pa}},f:function(e,t){try{return e=e?M(k,e):"",Pe(t,Ee(e))}catch(r){if(typeof L>"u"||r.name!=="ErrnoError")throw r;return-r.Pa}},r:function(e,t,r){try{return t=t?M(k,t):"",t=se(e,t),r===0?Qt(t):r===512?It(t):me("Invalid flags passed to unlinkat"),0}catch(n){if(typeof L>"u"||n.name!=="ErrnoError")throw n;return-n.Pa}},q:function(e,t,r){try{t=t?M(k,t):"",t=se(e,t,!0);var n=Date.now(),o,a;if(r){var u=O[r>>2]+4294967296*N[r+4>>2],v=N[r+8>>2];v==1073741823?o=n:v==1073741822?o=null:o=1e3*u+v/1e6,r+=16,u=O[r>>2]+4294967296*N[r+4>>2],v=N[r+8>>2],v==1073741823?a=n:v==1073741822?a=null:a=1e3*u+v/1e6}else a=o=n;if((a??o)!==null){e=o;var A=I(t,{$a:!0}).node;je(A.La.Ua)(A,{atime:e,mtime:a})}return 0}catch(S){if(typeof L>"u"||S.name!=="ErrnoError")throw S;return-S.Pa}},m:()=>me(""),l:()=>{Je=!1,lt=0},A:function(e,t){e=-9007199254740992>e||9007199254740992<e?NaN:Number(e),e=new Date(1e3*e),N[t>>2]=e.getSeconds(),N[t+4>>2]=e.getMinutes(),N[t+8>>2]=e.getHours(),N[t+12>>2]=e.getDate(),N[t+16>>2]=e.getMonth(),N[t+20>>2]=e.getFullYear()-1900,N[t+24>>2]=e.getDay();var r=e.getFullYear();N[t+28>>2]=(r%4!==0||r%100===0&&r%400!==0?Tr:Mr)[e.getMonth()]+e.getDate()-1|0,N[t+36>>2]=-(60*e.getTimezoneOffset()),r=new Date(e.getFullYear(),6,1).getTimezoneOffset();var n=new Date(e.getFullYear(),0,1).getTimezoneOffset();N[t+32>>2]=(r!=n&&e.getTimezoneOffset()==Math.min(n,r))|0},y:function(e,t,r,n,o,a,u){o=-9007199254740992>o||9007199254740992<o?NaN:Number(o);try{if(isNaN(o))return 61;var v=P(n);if((t&2)!==0&&(r&2)===0&&(v.flags&2097155)!==2)throw new p(2);if((v.flags&2097155)===1)throw new p(2);if(!v.Ma.ib)throw new p(43);if(!e)throw new p(28);var A=v.Ma.ib(v,e,o,t,r),S=A.Kb;return N[a>>2]=A.Ab,O[u>>2]=S,0}catch(j){if(typeof L>"u"||j.name!=="ErrnoError")throw j;return-j.Pa}},z:function(e,t,r,n,o,a){a=-9007199254740992>a||9007199254740992<a?NaN:Number(a);try{var u=P(o);if(r&2){if(r=a,(u.node.mode&61440)!==32768)throw new p(43);if(!(n&2)){var v=k.slice(e,e+t);u.Ma.jb&&u.Ma.jb(u,v,r,t,n)}}}catch(A){if(typeof L>"u"||A.name!=="ErrnoError")throw A;return-A.Pa}},n:(e,t)=>{if(qe[e]&&(clearTimeout(qe[e].id),delete qe[e]),!t)return 0;var r=setTimeout(()=>{delete qe[e],jr(()=>Jt(e,performance.now()))},t);return qe[e]={id:r,Xb:t},0},B:(e,t,r,n)=>{var o=new Date().getFullYear(),a=new Date(o,0,1).getTimezoneOffset();o=new Date(o,6,1).getTimezoneOffset(),O[e>>2]=60*Math.max(a,o),N[t>>2]=+(a!=o),t=u=>{var v=Math.abs(u);return`UTC${0<=u?"-":"+"}${String(Math.floor(v/60)).padStart(2,"0")}${String(v%60).padStart(2,"0")}`},e=t(a),t=t(o),o<a?(Z(e,k,r,17),Z(t,k,n,17)):(Z(e,k,n,17),Z(t,k,r,17))},d:()=>Date.now(),s:()=>2147483648,c:()=>performance.now(),o:e=>{var t=k.length;if(e>>>=0,2147483648<e)return!1;for(var r=1;4>=r;r*=2){var n=t*(1+.2/r);n=Math.min(n,e+100663296);e:{n=(Math.min(2147483648,65536*Math.ceil(Math.max(e,n)/65536))-Ne.buffer.byteLength+65535)/65536|0;try{Ne.grow(n),_t();var o=1;break e}catch{}o=void 0}if(o)return!0}return!1},E:(e,t)=>{var r=0;return Yt().forEach((n,o)=>{var a=t+r;for(o=O[e+4*o>>2]=a,a=0;a<n.length;++a)$[o++]=n.charCodeAt(a);$[o]=0,r+=n.length+1}),0},F:(e,t)=>{var r=Yt();O[e>>2]=r.length;var n=0;return r.forEach(o=>n+=o.length+1),O[t>>2]=n,0},e:function(e){try{var t=P(e);return ut(t),0}catch(r){if(typeof L>"u"||r.name!=="ErrnoError")throw r;return r.Pa}},p:function(e,t){try{var r=P(e);return $[t]=r.tty?2:C(r.mode)?3:(r.mode&61440)===40960?7:4,ye[t+2>>1]=0,z[t+8>>3]=BigInt(0),z[t+16>>3]=BigInt(0),0}catch(n){if(typeof L>"u"||n.name!=="ErrnoError")throw n;return n.Pa}},w:function(e,t,r,n){try{e:{var o=P(e);e=t;for(var a,u=t=0;u<r;u++){var v=O[e>>2],A=O[e+4>>2];e+=8;var S=zt(o,$,v,A,a);if(0>S){var j=-1;break e}if(t+=S,S<A)break;typeof a<"u"&&(a+=S)}j=t}return O[n>>2]=j,0}catch(U){if(typeof L>"u"||U.name!=="ErrnoError")throw U;return U.Pa}},D:function(e,t,r,n){t=-9007199254740992>t||9007199254740992<t?NaN:Number(t);try{if(isNaN(t))return 61;var o=P(e);return Vt(o,t,r),z[n>>3]=BigInt(o.position),o.ob&&t===0&&r===0&&(o.ob=null),0}catch(a){if(typeof L>"u"||a.name!=="ErrnoError")throw a;return a.Pa}},I:function(e){try{var t=P(e);return t.Ma?.fsync?t.Ma.fsync(t):0}catch(r){if(typeof L>"u"||r.name!=="ErrnoError")throw r;return r.Pa}},t:function(e,t,r,n){try{e:{var o=P(e);e=t;for(var a,u=t=0;u<r;u++){var v=O[e>>2],A=O[e+4>>2];e+=8;var S=Ht(o,$,v,A,a);if(0>S){var j=-1;break e}if(t+=S,S<A)break;typeof a<"u"&&(a+=S)}j=t}return O[n>>2]=j,0}catch(U){if(typeof L>"u"||U.name!=="ErrnoError")throw U;return U.Pa}},k:Xt},_;(async function(){function e(r){return _=r.exports,Ne=_.M,_t(),K=_.O,ie--,i.monitorRunDependencies?.(ie),ie==0&&_e&&(r=_e,_e=null,r()),_}ie++,i.monitorRunDependencies?.(ie);var t={a:Or};return i.instantiateWasm?new Promise(r=>{i.instantiateWasm(t,(n,o)=>{e(n,o),r(n.exports)})}):(Ye??=i.locateFile?i.locateFile("sql-wasm.wasm",B):B+"sql-wasm.wasm",e((await wr(t)).instance))})(),i._sqlite3_free=e=>(i._sqlite3_free=_.P)(e),i._sqlite3_value_text=e=>(i._sqlite3_value_text=_.Q)(e),i._sqlite3_prepare_v2=(e,t,r,n,o)=>(i._sqlite3_prepare_v2=_.R)(e,t,r,n,o),i._sqlite3_step=e=>(i._sqlite3_step=_.S)(e),i._sqlite3_reset=e=>(i._sqlite3_reset=_.T)(e),i._sqlite3_exec=(e,t,r,n,o)=>(i._sqlite3_exec=_.U)(e,t,r,n,o),i._sqlite3_finalize=e=>(i._sqlite3_finalize=_.V)(e),i._sqlite3_column_name=(e,t)=>(i._sqlite3_column_name=_.W)(e,t),i._sqlite3_column_text=(e,t)=>(i._sqlite3_column_text=_.X)(e,t),i._sqlite3_column_type=(e,t)=>(i._sqlite3_column_type=_.Y)(e,t),i._sqlite3_errmsg=e=>(i._sqlite3_errmsg=_.Z)(e),i._sqlite3_clear_bindings=e=>(i._sqlite3_clear_bindings=_._)(e),i._sqlite3_value_blob=e=>(i._sqlite3_value_blob=_.$)(e),i._sqlite3_value_bytes=e=>(i._sqlite3_value_bytes=_.aa)(e),i._sqlite3_value_double=e=>(i._sqlite3_value_double=_.ba)(e),i._sqlite3_value_int=e=>(i._sqlite3_value_int=_.ca)(e),i._sqlite3_value_type=e=>(i._sqlite3_value_type=_.da)(e),i._sqlite3_result_blob=(e,t,r,n)=>(i._sqlite3_result_blob=_.ea)(e,t,r,n),i._sqlite3_result_double=(e,t)=>(i._sqlite3_result_double=_.fa)(e,t),i._sqlite3_result_error=(e,t,r)=>(i._sqlite3_result_error=_.ga)(e,t,r),i._sqlite3_result_int=(e,t)=>(i._sqlite3_result_int=_.ha)(e,t),i._sqlite3_result_int64=(e,t)=>(i._sqlite3_result_int64=_.ia)(e,t),i._sqlite3_result_null=e=>(i._sqlite3_result_null=_.ja)(e),i._sqlite3_result_text=(e,t,r,n)=>(i._sqlite3_result_text=_.ka)(e,t,r,n),i._sqlite3_aggregate_context=(e,t)=>(i._sqlite3_aggregate_context=_.la)(e,t),i._sqlite3_column_count=e=>(i._sqlite3_column_count=_.ma)(e),i._sqlite3_data_count=e=>(i._sqlite3_data_count=_.na)(e),i._sqlite3_column_blob=(e,t)=>(i._sqlite3_column_blob=_.oa)(e,t),i._sqlite3_column_bytes=(e,t)=>(i._sqlite3_column_bytes=_.pa)(e,t),i._sqlite3_column_double=(e,t)=>(i._sqlite3_column_double=_.qa)(e,t),i._sqlite3_bind_blob=(e,t,r,n,o)=>(i._sqlite3_bind_blob=_.ra)(e,t,r,n,o),i._sqlite3_bind_double=(e,t,r)=>(i._sqlite3_bind_double=_.sa)(e,t,r),i._sqlite3_bind_int=(e,t,r)=>(i._sqlite3_bind_int=_.ta)(e,t,r),i._sqlite3_bind_text=(e,t,r,n,o)=>(i._sqlite3_bind_text=_.ua)(e,t,r,n,o),i._sqlite3_bind_parameter_index=(e,t)=>(i._sqlite3_bind_parameter_index=_.va)(e,t),i._sqlite3_sql=e=>(i._sqlite3_sql=_.wa)(e),i._sqlite3_normalized_sql=e=>(i._sqlite3_normalized_sql=_.xa)(e),i._sqlite3_changes=e=>(i._sqlite3_changes=_.ya)(e),i._sqlite3_close_v2=e=>(i._sqlite3_close_v2=_.za)(e),i._sqlite3_create_function_v2=(e,t,r,n,o,a,u,v,A)=>(i._sqlite3_create_function_v2=_.Aa)(e,t,r,n,o,a,u,v,A),i._sqlite3_update_hook=(e,t,r)=>(i._sqlite3_update_hook=_.Ba)(e,t,r),i._sqlite3_open=(e,t)=>(i._sqlite3_open=_.Ca)(e,t);var dt=i._malloc=e=>(dt=i._malloc=_.Da)(e),Ie=i._free=e=>(Ie=i._free=_.Ea)(e);i._RegisterExtensionFunctions=e=>(i._RegisterExtensionFunctions=_.Fa)(e);var Gt=(e,t)=>(Gt=_.Ga)(e,t),Jt=(e,t)=>(Jt=_.Ha)(e,t),Ae=e=>(Ae=_.Ia)(e),ne=e=>(ne=_.Ja)(e),ke=()=>(ke=_.Ka)();i.stackSave=()=>ke(),i.stackRestore=e=>Ae(e),i.stackAlloc=e=>ne(e),i.cwrap=(e,t,r,n)=>{var o=!r||r.every(a=>a==="number"||a==="boolean");return t!=="string"&&o&&!n?i["_"+e]:(...a)=>Rr(e,t,r,a)},i.addFunction=Se,i.removeFunction=re,i.UTF8ToString=Ze,i.ALLOC_NORMAL=De,i.allocate=We,i.allocateUTF8OnStack=ct;function pt(){function e(){if(i.calledRun=!0,!Le){if(!i.noFSInit&&!jt){var t,r;jt=!0,n??=i.stdin,t??=i.stdout,r??=i.stderr,n?te("stdin",n):at("/dev/tty","/dev/stdin"),t?te("stdout",null,t):at("/dev/tty","/dev/stdout"),r?te("stderr",null,r):at("/dev/tty1","/dev/stderr"),we("/dev/stdin",0),we("/dev/stdout",1),we("/dev/stderr",1)}if(_.N(),Rt=!1,i.onRuntimeInitialized?.(),i.postRun)for(typeof i.postRun=="function"&&(i.postRun=[i.postRun]);i.postRun.length;){var n=i.postRun.shift();gt.unshift(n)}vt(gt)}}if(0<ie)_e=pt;else{if(i.preRun)for(typeof i.preRun=="function"&&(i.preRun=[i.preRun]);i.preRun.length;)br();vt(Et),0<ie?_e=pt:i.setStatus?(i.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>i.setStatus(""),1),e()},1)):e()}}if(i.preInit)for(typeof i.preInit=="function"&&(i.preInit=[i.preInit]);0<i.preInit.length;)i.preInit.pop()();return pt(),c}),Fe)};typeof Ve=="object"&&typeof le=="object"?(le.exports=Be,le.exports.default=Be):typeof define=="function"&&define.amd?define([],function(){return Be}):typeof Ve=="object"&&(Ve.Module=Be)});var yt=fn(lr(),1);import{fileURLToPath as Sn}from"node:url";import{Worker as An}from"node:worker_threads";function cr(l,h,d){switch(d.mode){case"list":return hn(l,h,d);case"csv":return cn(l,h,d);case"json":return dn(l,h);case"line":return pn(l,h,d);case"column":return wn(l,h,d);case"table":return bn(l,h,d);case"markdown":return yn(l,h,d);case"tabs":return _n(l,h,d);case"box":return vn(l,h,d);case"quote":return gn(l,h,d);case"html":return En(l,h,d);case"ascii":return qn(l,h,d)}}function W(l,h){return l==null?h:l instanceof Uint8Array||Buffer.isBuffer(l)?Buffer.from(l).toString("utf8"):typeof l=="number"&&!Number.isInteger(l)?l.toPrecision(17).replace(/\.?0+$/,""):String(l)}function hn(l,h,d){let c=[];d.header&&l.length>0&&c.push(l.join(d.separator));for(let b of h)c.push(b.map(i=>W(i,d.nullValue)).join(d.separator));return c.length>0?`${c.join(d.newline)}${d.newline}`:""}function cn(l,h,d){let c=[];d.header&&l.length>0&&c.push(l.map(fr).join(","));for(let b of h)c.push(b.map(i=>fr(W(i,d.nullValue))).join(","));return c.length>0?`${c.join(`
|
|
4
|
+
`)}
|
|
5
|
+
`:""}function fr(l){return l.includes(",")||l.includes('"')||l.includes("'")||l.includes(`
|
|
6
|
+
`)?`"${l.replace(/"/g,'""')}"`:l}function mr(l){return l.toPrecision(17).replace(/\.?0+$/,"")}function mn(l){return l===null?"null":typeof l=="number"?Number.isInteger(l)?String(l):mr(l):JSON.stringify(l)}function dn(l,h){return h.length===0?"":`[${h.map(c=>`{${l.map((i,w)=>`${JSON.stringify(i)}:${mn(c[w])}`).join(",")}}`).join(`,
|
|
7
|
+
`)}]
|
|
8
|
+
`}function pn(l,h,d){if(l.length===0||h.length===0)return"";let c=Math.max(5,...l.map(i=>i.length)),b=[];for(let i of h)for(let w=0;w<l.length;w++){let m=l[w].padStart(c);b.push(`${m} = ${W(i[w],d.nullValue)}`)}return`${b.join(`
|
|
9
|
+
`)}
|
|
10
|
+
`}function wn(l,h,d){if(l.length===0)return"";let c=l.map(i=>i.length);for(let i of h)for(let w=0;w<i.length;w++){let m=W(i[w],d.nullValue).length;m>c[w]&&(c[w]=m)}let b=[];d.header&&(b.push(l.map((i,w)=>i.padEnd(c[w])).join(" ")),b.push(c.map(i=>"-".repeat(i)).join(" ")));for(let i of h)b.push(i.map((w,m)=>W(w,d.nullValue).padEnd(c[m])).join(" "));return b.length>0?`${b.join(`
|
|
11
|
+
`)}
|
|
12
|
+
`:""}function bn(l,h,d){if(l.length===0)return"";let c=l.map(w=>w.length);for(let w of h)for(let m=0;m<w.length;m++){let R=W(w[m],d.nullValue).length;R>c[m]&&(c[m]=R)}let b=[],i=`+${c.map(w=>"-".repeat(w+2)).join("+")}+`;b.push(i),d.header&&(b.push(`| ${l.map((w,m)=>w.padEnd(c[m])).join(" | ")} |`),b.push(i));for(let w of h)b.push(`| ${w.map((m,R)=>W(m,d.nullValue).padEnd(c[R])).join(" | ")} |`);return b.push(i),`${b.join(`
|
|
13
|
+
`)}
|
|
14
|
+
`}function yn(l,h,d){if(l.length===0)return"";let c=[];d.header&&(c.push(`| ${l.join(" | ")} |`),c.push(`|${l.map(()=>"---").join("|")}|`));for(let b of h)c.push(`| ${b.map(i=>W(i,d.nullValue)).join(" | ")} |`);return c.length>0?`${c.join(`
|
|
15
|
+
`)}
|
|
16
|
+
`:""}function _n(l,h,d){let c=[];d.header&&l.length>0&&c.push(l.join(" "));for(let b of h)c.push(b.map(i=>W(i,d.nullValue)).join(" "));return c.length>0?`${c.join(d.newline)}${d.newline}`:""}function vn(l,h,d){if(l.length===0)return"";let c=l.map(i=>i.length);for(let i of h)for(let w=0;w<i.length;w++){let m=W(i[w],d.nullValue).length;m>c[w]&&(c[w]=m)}let b=[];b.push(`\u250C${c.map(i=>"\u2500".repeat(i+2)).join("\u252C")}\u2510`),b.push(`\u2502 ${l.map((i,w)=>i.padEnd(c[w])).join(" \u2502 ")} \u2502`),b.push(`\u251C${c.map(i=>"\u2500".repeat(i+2)).join("\u253C")}\u2524`);for(let i of h)b.push(`\u2502 ${i.map((w,m)=>W(w,d.nullValue).padEnd(c[m])).join(" \u2502 ")} \u2502`);return b.push(`\u2514${c.map(i=>"\u2500".repeat(i+2)).join("\u2534")}\u2518`),`${b.join(`
|
|
17
|
+
`)}
|
|
18
|
+
`}function gn(l,h,d){let c=[];d.header&&l.length>0&&c.push(l.map(b=>`'${b}'`).join(","));for(let b of h)c.push(b.map(i=>i==null?"NULL":typeof i=="number"?Number.isInteger(i)?String(i):mr(i):`'${String(i)}'`).join(","));return c.length>0?`${c.join(d.newline)}${d.newline}`:""}function En(l,h,d){let c=[];d.header&&l.length>0&&(c.push(`<TR>${l.map(b=>`<TH>${hr(b)}</TH>`).join("")}`),c.push("</TR>"));for(let b of h)c.push(`<TR>${b.map(i=>`<TD>${hr(W(i,d.nullValue))}</TD>`).join("")}`),c.push("</TR>");return c.length>0?`${c.join(`
|
|
19
|
+
`)}
|
|
20
|
+
`:""}function hr(l){return l.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""")}function qn(l,h,d){let i=[];d.header&&l.length>0&&i.push(l.join(""));for(let w of h)i.push(w.map(m=>W(m,d.nullValue)).join(""));return i.length>0?i.join("")+"":""}var kn=5e3,xn={name:"sqlite3",summary:"SQLite database CLI",usage:"sqlite3 [OPTIONS] DATABASE [SQL]",options:["-list output in list mode (default)","-csv output in CSV mode","-json output in JSON mode","-line output in line mode","-column output in column mode","-table output as ASCII table","-markdown output as markdown table","-tabs output in tab-separated mode","-box output in Unicode box mode","-quote output in SQL quote mode","-html output as HTML table","-ascii output in ASCII mode (control chars)","-header show column headers","-noheader hide column headers","-separator SEP field separator for list mode (default: |)","-newline SEP row separator (default: \\n)","-nullvalue TEXT text for NULL values (default: empty)","-readonly open database read-only (no writeback)","-bail stop on first error","-echo print SQL before execution","-cmd COMMAND run SQL command before main SQL","-version show SQLite version","-- end of options","--help show this help"],examples:['sqlite3 :memory: "CREATE TABLE t(x); INSERT INTO t VALUES(1); SELECT * FROM t"','sqlite3 -json data.db "SELECT * FROM users"','sqlite3 -csv -header data.db "SELECT id, name FROM products"','sqlite3 -box data.db "SELECT * FROM users"']};function Nn(l){let h={mode:"list",header:!1,separator:"|",newline:`
|
|
21
|
+
`,nullValue:"",readonly:!1,bail:!1,echo:!1,cmd:null},d=null,c=null,b=!1,i=!1;for(let w=0;w<l.length;w++){let m=l[w];if(i){d===null?d=m:c===null&&(c=m);continue}if(m==="--")i=!0;else if(m==="-version")b=!0;else if(m==="-list")h.mode="list";else if(m==="-csv")h.mode="csv";else if(m==="-json")h.mode="json";else if(m==="-line")h.mode="line";else if(m==="-column")h.mode="column";else if(m==="-table")h.mode="table";else if(m==="-markdown")h.mode="markdown";else if(m==="-tabs")h.mode="tabs";else if(m==="-box")h.mode="box";else if(m==="-quote")h.mode="quote";else if(m==="-html")h.mode="html";else if(m==="-ascii")h.mode="ascii";else if(m==="-header")h.header=!0;else if(m==="-noheader")h.header=!1;else if(m==="-readonly")h.readonly=!0;else if(m==="-bail")h.bail=!0;else if(m==="-echo")h.echo=!0;else if(m==="-separator"){if(w+1>=l.length)return{stdout:"",stderr:`sqlite3: Error: missing argument to -separator
|
|
22
|
+
`,exitCode:1};h.separator=l[++w]}else if(m==="-newline"){if(w+1>=l.length)return{stdout:"",stderr:`sqlite3: Error: missing argument to -newline
|
|
23
|
+
`,exitCode:1};h.newline=l[++w]}else if(m==="-nullvalue"){if(w+1>=l.length)return{stdout:"",stderr:`sqlite3: Error: missing argument to -nullvalue
|
|
24
|
+
`,exitCode:1};h.nullValue=l[++w]}else if(m==="-cmd"){if(w+1>=l.length)return{stdout:"",stderr:`sqlite3: Error: missing argument to -cmd
|
|
25
|
+
`,exitCode:1};h.cmd=l[++w]}else{if(m.startsWith("-"))return{stdout:"",stderr:`sqlite3: Error: unknown option: ${m.startsWith("--")?m.slice(1):m}
|
|
26
|
+
Use -help for a list of options.
|
|
27
|
+
`,exitCode:1};d===null?d=m:c===null&&(c=m)}}return{options:h,database:d,sql:c,showVersion:b}}async function Ln(){let l=await(0,yt.default)(),h=new l.Database;try{let d=h.exec("SELECT sqlite_version()");return d.length>0&&d[0].values.length>0?String(d[0].values[0][0]):"unknown"}finally{h.close()}}function Mn(l){let h=l.trim().toUpperCase();return h.startsWith("INSERT")||h.startsWith("UPDATE")||h.startsWith("DELETE")||h.startsWith("CREATE")||h.startsWith("DROP")||h.startsWith("ALTER")||h.startsWith("REPLACE")||h.startsWith("VACUUM")}function Tn(l){let h=[],d="",c=!1,b="";for(let w=0;w<l.length;w++){let m=l[w];if(c)d+=m,m===b&&(l[w+1]===b?d+=l[++w]:c=!1);else if(m==="'"||m==='"')d+=m,c=!0,b=m;else if(m===";"){let R=d.trim();R&&h.push(R),d=""}else d+=m}let i=d.trim();return i&&h.push(i),h}async function jn(l){let h;try{let b=await(0,yt.default)();l.dbBuffer?h=new b.Database(l.dbBuffer):h=new b.Database}catch(b){return{success:!1,error:b.message}}let d=[],c=!1;try{let b=Tn(l.sql);for(let w of b)try{if(Mn(w))h.run(w),c=!0,d.push({type:"data",columns:[],rows:[]});else{let m=h.prepare(w),R=m.getColumnNames(),F=[];for(;m.step();)F.push(m.get());m.free(),d.push({type:"data",columns:R,rows:F})}}catch(m){let R=m.message;if(d.push({type:"error",error:R}),l.options.bail)break}let i=null;return c&&(i=h.export()),h.close(),{success:!0,results:d,hasModifications:c,dbBuffer:i}}catch(b){return h.close(),{success:!1,error:b.message}}}async function Rn(l,h){try{let d=Sn(new URL("./worker.js",import.meta.url));return await new Promise((c,b)=>{let i=new An(d,{workerData:l}),w=setTimeout(()=>{i.terminate(),c({success:!1,error:`Query timeout: execution exceeded ${h}ms limit`})},h);i.on("message",m=>{clearTimeout(w),c(m)}),i.on("error",m=>{clearTimeout(w),b(m)}),i.on("exit",m=>{clearTimeout(w),m!==0&&c({success:!1,error:`Worker exited with code ${m}`})})})}catch{return jn(l)}}var Qn={name:"sqlite3",async execute(l,h){if(ur(l)||l.includes("-help"))return ar(xn);let d=Nn(l);if("exitCode"in d)return d;let{options:c,database:b,sql:i,showVersion:w}=d;if(w)return{stdout:`${await Ln()}
|
|
28
|
+
`,stderr:"",exitCode:0};if(!b)return{stdout:"",stderr:`sqlite3: missing database argument
|
|
29
|
+
`,exitCode:1};let m=i||h.stdin.trim();if(c.cmd&&(m=c.cmd+(m?`; ${m}`:"")),!m)return{stdout:"",stderr:`sqlite3: no SQL provided
|
|
30
|
+
`,exitCode:1};let R=b===":memory:",F="",fe=null;try{R||(F=h.fs.resolvePath(h.cwd,b),await h.fs.exists(F)&&(fe=await h.fs.readFileBuffer(F)))}catch(T){return{stdout:"",stderr:`sqlite3: unable to open database "${b}": ${T.message}
|
|
31
|
+
`,exitCode:1}}let he=h.limits?.maxSqliteTimeoutMs??kn,B={dbBuffer:fe,sql:m,options:{bail:c.bail,echo:c.echo}},V;try{V=await Rn(B,he)}catch(T){return{stdout:"",stderr:`sqlite3: worker error: ${T.message}
|
|
32
|
+
`,exitCode:1}}if(!V.success)return{stdout:"",stderr:`sqlite3: ${V.error}
|
|
33
|
+
`,exitCode:1};let ce={mode:c.mode,header:c.header,separator:c.separator,newline:c.newline,nullValue:c.nullValue},Y="";c.echo&&(Y+=`${m}
|
|
34
|
+
`);let be=!1;for(let T of V.results)if(T.type==="error"){if(c.bail)return{stdout:Y,stderr:`Error: ${T.error}
|
|
35
|
+
`,exitCode:1};Y+=`Error: ${T.error}
|
|
36
|
+
`,be=!0}else T.columns&&T.rows&&(T.rows.length>0||c.header)&&(Y+=cr(T.columns,T.rows,ce));if(V.hasModifications&&!c.readonly&&!R&&F&&V.dbBuffer)try{await h.fs.writeFile(F,V.dbBuffer)}catch(T){return{stdout:Y,stderr:`sqlite3: failed to write database: ${T.message}
|
|
37
|
+
`,exitCode:1}}return{stdout:Y,stderr:"",exitCode:be&&c.bail?1:0}}};export{Qn as sqlite3Command};
|