expect-cli 0.0.3 → 0.0.4
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 +5 -1
- package/dist/browser-mcp.d.ts +2 -0
- package/dist/browser-mcp.js +3 -0
- package/dist/browser-mcp.js.map +1 -0
- package/dist/chunk-wdO_pP5q.js +2 -0
- package/dist/index.js +46 -55
- package/dist/index.js.map +1 -1
- package/dist/libsql-Bb5SdTGo.js +3 -0
- package/dist/libsql-Bb5SdTGo.js.map +1 -0
- package/dist/server-Smi2kpAY-CN-mxLk6.js +193 -0
- package/dist/server-Smi2kpAY-CN-mxLk6.js.map +1 -0
- package/package.json +9 -3
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import{n as e,t}from"./chunk-wdO_pP5q.js";var n=t((t=>{var n=t&&t.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),r=t&&t.__setModuleDefault||(Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t}),i=t&&t.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var i in e)i!==`default`&&Object.prototype.hasOwnProperty.call(e,i)&&n(t,e,i);return r(t,e),t};Object.defineProperty(t,`__esModule`,{value:!0}),t.load=t.currentTarget=void 0;let a=i(e(`path`)),o=i(e(`fs`));function s(){let e=null;switch(process.platform){case`android`:switch(process.arch){case`arm`:return`android-arm-eabi`;case`arm64`:return`android-arm64`}e=`Android`;break;case`win32`:switch(process.arch){case`x64`:return`win32-x64-msvc`;case`arm64`:return`win32-arm64-msvc`;case`ia32`:return`win32-ia32-msvc`}e=`Windows`;break;case`darwin`:switch(process.arch){case`x64`:return`darwin-x64`;case`arm64`:return`darwin-arm64`}e=`macOS`;break;case`linux`:switch(process.arch){case`x64`:case`arm64`:return c()?`linux-${process.arch}-gnu`:`linux-${process.arch}-musl`;case`arm`:return`linux-arm-gnueabihf`}e=`Linux`;break;case`freebsd`:if(process.arch===`x64`)return`freebsd-x64`;e=`FreeBSD`;break}throw e?Error(`Neon: unsupported ${e} architecture: ${process.arch}`):Error(`Neon: unsupported system: ${process.platform}`)}t.currentTarget=s;function c(){let e=process.report?.getReport();if(typeof e!=`object`||!e||!(`header`in e))return!1;let t=e.header;return typeof t==`object`&&!!t&&`glibcVersionRuntime`in t}function l(t){let n=a.join(t,`index.node`);return o.existsSync(n)?e(n):null}t.load=l})),r=t(((e,t)=>{let n=()=>process.platform===`linux`,r=null;t.exports={isLinux:n,getReport:()=>(r||=n()&&process.report?process.report.getReport():{},r)}})),i=t(((t,n)=>{let r=e(`fs`);n.exports={LDD_PATH:`/usr/bin/ldd`,readFileSync:e=>r.readFileSync(e,`utf-8`),readFile:e=>new Promise((t,n)=>{r.readFile(e,`utf-8`,(e,r)=>{e?n(e):t(r)})})}})),a=t(((t,n)=>{let a=e(`child_process`),{isLinux:o,getReport:s}=r(),{LDD_PATH:c,readFile:l,readFileSync:u}=i(),d,f,p=`getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true`,m=``,h=()=>m||new Promise(e=>{a.exec(p,(t,n)=>{m=t?` `:n,e(m)})}),g=()=>{if(!m)try{m=a.execSync(p,{encoding:`utf8`})}catch{m=` `}return m},_=`glibc`,v=/GLIBC\s(\d+\.\d+)/,y=`musl`,b=e=>e.includes(`libc.musl-`)||e.includes(`ld-musl-`),x=()=>{let e=s();return e.header&&e.header.glibcVersionRuntime?_:Array.isArray(e.sharedObjects)&&e.sharedObjects.some(b)?y:null},S=e=>{let[t,n]=e.split(/[\r\n]+/);return t&&t.includes(_)?_:n&&n.includes(y)?y:null},C=e=>e.includes(`musl`)?y:e.includes(`GLIBC`)?_:null,w=async()=>{if(d!==void 0)return d;d=null;try{d=C(await l(c))}catch{}return d},T=()=>{if(d!==void 0)return d;d=null;try{d=C(u(c))}catch{}return d},E=async()=>{let e=null;return o()&&(e=await w(),e||=x(),e||=S(await h())),e},D=()=>{let e=null;return o()&&(e=T(),e||=x(),e||=S(g())),e},O=async()=>o()&&await E()!==_,k=()=>o()&&D()!==_,A=async()=>{if(f!==void 0)return f;f=null;try{let e=(await l(c)).match(v);e&&(f=e[1])}catch{}return f},j=()=>{if(f!==void 0)return f;f=null;try{let e=u(c).match(v);e&&(f=e[1])}catch{}return f},M=()=>{let e=s();return e.header&&e.header.glibcVersionRuntime?e.header.glibcVersionRuntime:null},N=e=>e.trim().split(/\s+/)[1],P=e=>{let[t,n,r]=e.split(/[\r\n]+/);return t&&t.includes(_)?N(t):n&&r&&n.includes(y)?N(r):null};n.exports={GLIBC:_,MUSL:y,family:E,familySync:D,isNonGlibcLinux:O,isNonGlibcLinuxSync:k,version:async()=>{let e=null;return o()&&(e=await A(),e||=M(),e||=P(await h())),e},versionSync:()=>{let e=null;return o()&&(e=j(),e||=M(),e||=P(g())),e}}})),o=t(((e,t)=>{t.exports={ALLOW:0,DENY:1}})),s=t(((e,t)=>{let n={value:`SqliteError`,writable:!0,enumerable:!1,configurable:!0};function r(e,t,i){if(new.target!==r)return new r(e,t);if(typeof t!=`string`)throw TypeError(`Expected second argument to be a string`);Error.call(this,e),n.value=``+e,Object.defineProperty(this,`message`,n),Error.captureStackTrace(this,r),this.code=t,this.rawCode=i}Object.setPrototypeOf(r,Error),Object.setPrototypeOf(r.prototype,Error.prototype),Object.defineProperty(r.prototype,`name`,n),t.exports=r})),c=t(((t,r)=>{let{load:i,currentTarget:c}=n(),{familySync:l,GLIBC:u,MUSL:d}=a();function f(){if(process.env.LIBSQL_JS_DEV)return i(__dirname);let t=c();if(l()==u)switch(t){case`linux-x64-musl`:t=`linux-x64-gnu`;break;case`linux-arm64-musl`:t=`linux-arm64-gnu`;break}return t===`linux-arm-gnueabihf`&&l()==d&&(t=`linux-arm-musleabihf`),e(`@libsql/${t}`)}let{databaseOpen:p,databaseOpenWithSync:m,databaseInTransaction:h,databaseInterrupt:g,databaseClose:_,databaseSyncSync:v,databaseSyncUntilSync:y,databaseExecSync:b,databasePrepareSync:x,databaseDefaultSafeIntegers:S,databaseAuthorizer:C,databaseLoadExtension:w,databaseMaxWriteReplicationIndex:T,statementRaw:E,statementIsReader:D,statementGet:O,statementRun:k,statementInterrupt:A,statementRowsSync:j,statementColumns:M,statementSafeIntegers:N,rowsNext:P}=f(),F=o(),I=s();function L(e){return e.libsqlError?new I(e.message,e.code,e.rawCode):e}var R=class{constructor(e,t){let n=t?.encryptionCipher??`aes256cbc`;if(t&&t.syncUrl){var r=``;t.syncAuth?(console.warn("Warning: The `syncAuth` option is deprecated, please use `authToken` option instead."),r=t.syncAuth):t.authToken&&(r=t.authToken);let i=t?.encryptionKey??``,a=t?.syncPeriod??0,o=t?.readYourWrites??!0,s=t?.offline??!1,c=t?.remoteEncryptionKey??``;this.db=m(e,t.syncUrl,r,n,i,a,o,s,c)}else this.db=p(e,t?.authToken??``,n,t?.encryptionKey??``,t?.timeout??0,t?.remoteEncryptionKey??``);this.memory=e===`:memory:`,this.readonly=!1,this.name=``,this.open=!0;let i=this.db;Object.defineProperties(this,{inTransaction:{get(){return h(i)}}})}sync(){return v.call(this.db)}syncUntil(e){return y.call(this.db,e)}prepare(e){try{return new z(x.call(this.db,e))}catch(e){throw L(e)}}transaction(e){if(typeof e!=`function`)throw TypeError(`Expected first argument to be a function`);let t=this,n=n=>(...r)=>{t.exec(`BEGIN `+n);try{let n=e(...r);return t.exec(`COMMIT`),n}catch(e){throw t.exec(`ROLLBACK`),e}},r={default:{value:n(``)},deferred:{value:n(`DEFERRED`)},immediate:{value:n(`IMMEDIATE`)},exclusive:{value:n(`EXCLUSIVE`)},database:{value:this,enumerable:!0}};return Object.defineProperties(r.default.value,r),Object.defineProperties(r.deferred.value,r),Object.defineProperties(r.immediate.value,r),Object.defineProperties(r.exclusive.value,r),r.default.value}pragma(e,t){if(t??={},typeof e!=`string`)throw TypeError(`Expected first argument to be a string`);if(typeof t!=`object`)throw TypeError(`Expected second argument to be an options object`);let n=t.simple,r=this.prepare(`PRAGMA ${e}`,this,!0);return n?r.pluck().get():r.all()}backup(e,t){throw Error(`not implemented`)}serialize(e){throw Error(`not implemented`)}function(e,t,n){throw t??={},typeof t==`function`&&(n=t,t={}),typeof e==`string`?typeof n==`function`?typeof t==`object`?e?Error(`not implemented`):TypeError(`User-defined function name cannot be an empty string`):TypeError(`Expected second argument to be an options object`):TypeError(`Expected last argument to be a function`):TypeError(`Expected first argument to be a string`)}aggregate(e,t){throw typeof e==`string`?typeof t!=`object`||!t?TypeError(`Expected second argument to be an options object`):e?Error(`not implemented`):TypeError(`User-defined function name cannot be an empty string`):TypeError(`Expected first argument to be a string`)}table(e,t){throw typeof e==`string`?e?Error(`not implemented`):TypeError(`Virtual table module name cannot be an empty string`):TypeError(`Expected first argument to be a string`)}authorizer(e){C.call(this.db,e)}loadExtension(...e){w.call(this.db,...e)}maxWriteReplicationIndex(){return T.call(this.db)}exec(e){try{b.call(this.db,e)}catch(e){throw L(e)}}interrupt(){g.call(this.db)}close(){_.call(this.db),this.open=!1}defaultSafeIntegers(e){return S.call(this.db,e??!0),this}unsafeMode(...e){throw Error(`not implemented`)}},z=class{constructor(e){this.stmt=e,this.pluckMode=!1}raw(e){return E.call(this.stmt,e??!0),this}pluck(e){return this.pluckMode=e??!0,this}get reader(){return D.call(this.stmt)}run(...e){try{return e.length==1&&typeof e[0]==`object`?k.call(this.stmt,e[0]):k.call(this.stmt,e.flat())}catch(e){throw L(e)}}get(...e){try{return e.length==1&&typeof e[0]==`object`?O.call(this.stmt,e[0]):O.call(this.stmt,e.flat())}catch(e){throw L(e)}}iterate(...e){var t=void 0;return t=e.length==1&&typeof e[0]==`object`?j.call(this.stmt,e[0]):j.call(this.stmt,e.flat()),{nextRows:Array(100),nextRowIndex:100,next(){try{this.nextRowIndex===100&&(P.call(t,this.nextRows),this.nextRowIndex=0);let e=this.nextRows[this.nextRowIndex];return this.nextRows[this.nextRowIndex]=void 0,e?(this.nextRowIndex++,{value:e,done:!1}):{done:!0}}catch(e){throw L(e)}},[Symbol.iterator](){return this}}}all(...e){try{let t=[];for(let n of this.iterate(...e))this.pluckMode?t.push(n[Object.keys(n)[0]]):t.push(n);return t}catch(e){throw L(e)}}interrupt(){A.call(this.stmt)}columns(){return M.call(this.stmt)}safeIntegers(e){return N.call(this.stmt,e??!0),this}};r.exports=R,r.exports.Authorization=F,r.exports.SqliteError=I}));export default c();export{};
|
|
3
|
+
//# sourceMappingURL=libsql-Bb5SdTGo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"libsql-Bb5SdTGo.js","names":["fs"],"sources":["../../../node_modules/.pnpm/@neon-rs+load@0.0.4/node_modules/@neon-rs/load/dist/index.js","../../../node_modules/.pnpm/detect-libc@2.0.2/node_modules/detect-libc/lib/process.js","../../../node_modules/.pnpm/detect-libc@2.0.2/node_modules/detect-libc/lib/filesystem.js","../../../node_modules/.pnpm/detect-libc@2.0.2/node_modules/detect-libc/lib/detect-libc.js","../../../node_modules/.pnpm/libsql@0.5.22/node_modules/libsql/auth.js","../../../node_modules/.pnpm/libsql@0.5.22/node_modules/libsql/sqlite-error.js","../../../node_modules/.pnpm/libsql@0.5.22/node_modules/libsql/index.js"],"sourcesContent":["\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.load = exports.currentTarget = void 0;\nconst path = __importStar(require(\"path\"));\nconst fs = __importStar(require(\"fs\"));\nfunction currentTarget() {\n let os = null;\n switch (process.platform) {\n case 'android':\n switch (process.arch) {\n case 'arm':\n return 'android-arm-eabi';\n case 'arm64':\n return 'android-arm64';\n }\n os = 'Android';\n break;\n case 'win32':\n switch (process.arch) {\n case 'x64':\n return 'win32-x64-msvc';\n case 'arm64':\n return 'win32-arm64-msvc';\n case 'ia32':\n return 'win32-ia32-msvc';\n }\n os = 'Windows';\n break;\n case 'darwin':\n switch (process.arch) {\n case 'x64':\n return 'darwin-x64';\n case 'arm64':\n return 'darwin-arm64';\n }\n os = 'macOS';\n break;\n case 'linux':\n switch (process.arch) {\n case 'x64':\n case 'arm64':\n return isGlibc()\n ? `linux-${process.arch}-gnu`\n : `linux-${process.arch}-musl`;\n case 'arm':\n return 'linux-arm-gnueabihf';\n }\n os = 'Linux';\n break;\n case 'freebsd':\n if (process.arch === 'x64') {\n return 'freebsd-x64';\n }\n os = 'FreeBSD';\n break;\n }\n if (os) {\n throw new Error(`Neon: unsupported ${os} architecture: ${process.arch}`);\n }\n throw new Error(`Neon: unsupported system: ${process.platform}`);\n}\nexports.currentTarget = currentTarget;\nfunction isGlibc() {\n // Cast to unknown to work around a bug in the type definition:\n // https://github.com/DefinitelyTyped/DefinitelyTyped/issues/40140\n const report = process.report?.getReport();\n if ((typeof report !== 'object') || !report || (!('header' in report))) {\n return false;\n }\n const header = report.header;\n return (typeof header === 'object') &&\n !!header &&\n ('glibcVersionRuntime' in header);\n}\nfunction load(dirname) {\n const m = path.join(dirname, \"index.node\");\n return fs.existsSync(m) ? require(m) : null;\n}\nexports.load = load;\n","// Copyright 2017 Lovell Fuller and others.\n// SPDX-License-Identifier: Apache-2.0\n\n'use strict';\n\nconst isLinux = () => process.platform === 'linux';\n\nlet report = null;\nconst getReport = () => {\n if (!report) {\n /* istanbul ignore next */\n report = isLinux() && process.report\n ? process.report.getReport()\n : {};\n }\n return report;\n};\n\nmodule.exports = { isLinux, getReport };\n","// Copyright 2017 Lovell Fuller and others.\n// SPDX-License-Identifier: Apache-2.0\n\n'use strict';\n\nconst fs = require('fs');\n\n/**\n * The path where we can find the ldd\n */\nconst LDD_PATH = '/usr/bin/ldd';\n\n/**\n * Read the content of a file synchronous\n *\n * @param {string} path\n * @returns {string}\n */\nconst readFileSync = (path) => fs.readFileSync(path, 'utf-8');\n\n/**\n * Read the content of a file\n *\n * @param {string} path\n * @returns {Promise<string>}\n */\nconst readFile = (path) => new Promise((resolve, reject) => {\n fs.readFile(path, 'utf-8', (err, data) => {\n if (err) {\n reject(err);\n } else {\n resolve(data);\n }\n });\n});\n\nmodule.exports = {\n LDD_PATH,\n readFileSync,\n readFile\n};\n","// Copyright 2017 Lovell Fuller and others.\n// SPDX-License-Identifier: Apache-2.0\n\n'use strict';\n\nconst childProcess = require('child_process');\nconst { isLinux, getReport } = require('./process');\nconst { LDD_PATH, readFile, readFileSync } = require('./filesystem');\n\nlet cachedFamilyFilesystem;\nlet cachedVersionFilesystem;\n\nconst command = 'getconf GNU_LIBC_VERSION 2>&1 || true; ldd --version 2>&1 || true';\nlet commandOut = '';\n\nconst safeCommand = () => {\n if (!commandOut) {\n return new Promise((resolve) => {\n childProcess.exec(command, (err, out) => {\n commandOut = err ? ' ' : out;\n resolve(commandOut);\n });\n });\n }\n return commandOut;\n};\n\nconst safeCommandSync = () => {\n if (!commandOut) {\n try {\n commandOut = childProcess.execSync(command, { encoding: 'utf8' });\n } catch (_err) {\n commandOut = ' ';\n }\n }\n return commandOut;\n};\n\n/**\n * A String constant containing the value `glibc`.\n * @type {string}\n * @public\n */\nconst GLIBC = 'glibc';\n\n/**\n * A Regexp constant to get the GLIBC Version.\n * @type {string}\n */\nconst RE_GLIBC_VERSION = /GLIBC\\s(\\d+\\.\\d+)/;\n\n/**\n * A String constant containing the value `musl`.\n * @type {string}\n * @public\n */\nconst MUSL = 'musl';\n\n/**\n * This string is used to find if the {@link LDD_PATH} is GLIBC\n * @type {string}\n */\nconst GLIBC_ON_LDD = GLIBC.toUpperCase();\n\n/**\n * This string is used to find if the {@link LDD_PATH} is musl\n * @type {string}\n */\nconst MUSL_ON_LDD = MUSL.toLowerCase();\n\nconst isFileMusl = (f) => f.includes('libc.musl-') || f.includes('ld-musl-');\n\nconst familyFromReport = () => {\n const report = getReport();\n if (report.header && report.header.glibcVersionRuntime) {\n return GLIBC;\n }\n if (Array.isArray(report.sharedObjects)) {\n if (report.sharedObjects.some(isFileMusl)) {\n return MUSL;\n }\n }\n return null;\n};\n\nconst familyFromCommand = (out) => {\n const [getconf, ldd1] = out.split(/[\\r\\n]+/);\n if (getconf && getconf.includes(GLIBC)) {\n return GLIBC;\n }\n if (ldd1 && ldd1.includes(MUSL)) {\n return MUSL;\n }\n return null;\n};\n\nconst getFamilyFromLddContent = (content) => {\n if (content.includes(MUSL_ON_LDD)) {\n return MUSL;\n }\n if (content.includes(GLIBC_ON_LDD)) {\n return GLIBC;\n }\n return null;\n};\n\nconst familyFromFilesystem = async () => {\n if (cachedFamilyFilesystem !== undefined) {\n return cachedFamilyFilesystem;\n }\n cachedFamilyFilesystem = null;\n try {\n const lddContent = await readFile(LDD_PATH);\n cachedFamilyFilesystem = getFamilyFromLddContent(lddContent);\n } catch (e) {}\n return cachedFamilyFilesystem;\n};\n\nconst familyFromFilesystemSync = () => {\n if (cachedFamilyFilesystem !== undefined) {\n return cachedFamilyFilesystem;\n }\n cachedFamilyFilesystem = null;\n try {\n const lddContent = readFileSync(LDD_PATH);\n cachedFamilyFilesystem = getFamilyFromLddContent(lddContent);\n } catch (e) {}\n return cachedFamilyFilesystem;\n};\n\n/**\n * Resolves with the libc family when it can be determined, `null` otherwise.\n * @returns {Promise<?string>}\n */\nconst family = async () => {\n let family = null;\n if (isLinux()) {\n family = await familyFromFilesystem();\n if (!family) {\n family = familyFromReport();\n }\n if (!family) {\n const out = await safeCommand();\n family = familyFromCommand(out);\n }\n }\n return family;\n};\n\n/**\n * Returns the libc family when it can be determined, `null` otherwise.\n * @returns {?string}\n */\nconst familySync = () => {\n let family = null;\n if (isLinux()) {\n family = familyFromFilesystemSync();\n if (!family) {\n family = familyFromReport();\n }\n if (!family) {\n const out = safeCommandSync();\n family = familyFromCommand(out);\n }\n }\n return family;\n};\n\n/**\n * Resolves `true` only when the platform is Linux and the libc family is not `glibc`.\n * @returns {Promise<boolean>}\n */\nconst isNonGlibcLinux = async () => isLinux() && await family() !== GLIBC;\n\n/**\n * Returns `true` only when the platform is Linux and the libc family is not `glibc`.\n * @returns {boolean}\n */\nconst isNonGlibcLinuxSync = () => isLinux() && familySync() !== GLIBC;\n\nconst versionFromFilesystem = async () => {\n if (cachedVersionFilesystem !== undefined) {\n return cachedVersionFilesystem;\n }\n cachedVersionFilesystem = null;\n try {\n const lddContent = await readFile(LDD_PATH);\n const versionMatch = lddContent.match(RE_GLIBC_VERSION);\n if (versionMatch) {\n cachedVersionFilesystem = versionMatch[1];\n }\n } catch (e) {}\n return cachedVersionFilesystem;\n};\n\nconst versionFromFilesystemSync = () => {\n if (cachedVersionFilesystem !== undefined) {\n return cachedVersionFilesystem;\n }\n cachedVersionFilesystem = null;\n try {\n const lddContent = readFileSync(LDD_PATH);\n const versionMatch = lddContent.match(RE_GLIBC_VERSION);\n if (versionMatch) {\n cachedVersionFilesystem = versionMatch[1];\n }\n } catch (e) {}\n return cachedVersionFilesystem;\n};\n\nconst versionFromReport = () => {\n const report = getReport();\n if (report.header && report.header.glibcVersionRuntime) {\n return report.header.glibcVersionRuntime;\n }\n return null;\n};\n\nconst versionSuffix = (s) => s.trim().split(/\\s+/)[1];\n\nconst versionFromCommand = (out) => {\n const [getconf, ldd1, ldd2] = out.split(/[\\r\\n]+/);\n if (getconf && getconf.includes(GLIBC)) {\n return versionSuffix(getconf);\n }\n if (ldd1 && ldd2 && ldd1.includes(MUSL)) {\n return versionSuffix(ldd2);\n }\n return null;\n};\n\n/**\n * Resolves with the libc version when it can be determined, `null` otherwise.\n * @returns {Promise<?string>}\n */\nconst version = async () => {\n let version = null;\n if (isLinux()) {\n version = await versionFromFilesystem();\n if (!version) {\n version = versionFromReport();\n }\n if (!version) {\n const out = await safeCommand();\n version = versionFromCommand(out);\n }\n }\n return version;\n};\n\n/**\n * Returns the libc version when it can be determined, `null` otherwise.\n * @returns {?string}\n */\nconst versionSync = () => {\n let version = null;\n if (isLinux()) {\n version = versionFromFilesystemSync();\n if (!version) {\n version = versionFromReport();\n }\n if (!version) {\n const out = safeCommandSync();\n version = versionFromCommand(out);\n }\n }\n return version;\n};\n\nmodule.exports = {\n GLIBC,\n MUSL,\n family,\n familySync,\n isNonGlibcLinux,\n isNonGlibcLinuxSync,\n version,\n versionSync\n};\n","/**\n * Authorization outcome.\n *\n * @readonly\n * @enum {number}\n * @property {number} ALLOW - Allow access to a resource.\n * @property {number} DENY - Deny access to a resource and throw an error.\n */\nconst Authorization = {\n /**\n * Allow access to a resource.\n * @type {number}\n */\n ALLOW: 0,\n\n /**\n * Deny access to a resource and throw an error in `prepare()`.\n * @type {number}\n */\n DENY: 1,\n};\nmodule.exports = Authorization;\n","'use strict';\nconst descriptor = { value: 'SqliteError', writable: true, enumerable: false, configurable: true };\n\nfunction SqliteError(message, code, rawCode) {\n if (new.target !== SqliteError) {\n return new SqliteError(message, code);\n }\n if (typeof code !== 'string') {\n throw new TypeError('Expected second argument to be a string');\n }\n Error.call(this, message);\n descriptor.value = '' + message;\n Object.defineProperty(this, 'message', descriptor);\n Error.captureStackTrace(this, SqliteError);\n this.code = code;\n this.rawCode = rawCode\n}\nObject.setPrototypeOf(SqliteError, Error);\nObject.setPrototypeOf(SqliteError.prototype, Error.prototype);\nObject.defineProperty(SqliteError.prototype, 'name', descriptor);\nmodule.exports = SqliteError;\n","\"use strict\";\n\nconst { load, currentTarget } = require(\"@neon-rs/load\");\nconst { familySync, GLIBC, MUSL } = require(\"detect-libc\");\n\nfunction requireNative() {\n if (process.env.LIBSQL_JS_DEV) {\n return load(__dirname)\n }\n let target = currentTarget();\n // Workaround for Bun, which reports a musl target, but really wants glibc...\n if (familySync() == GLIBC) {\n switch (target) {\n case \"linux-x64-musl\":\n target = \"linux-x64-gnu\";\n break;\n case \"linux-arm64-musl\":\n target = \"linux-arm64-gnu\";\n break;\n }\n }\n // @neon-rs/load doesn't detect arm musl\n if (target === \"linux-arm-gnueabihf\" && familySync() == MUSL) {\n target = \"linux-arm-musleabihf\";\n }\n return require(`@libsql/${target}`);\n}\n\nconst {\n databaseOpen,\n databaseOpenWithSync,\n databaseInTransaction,\n databaseInterrupt,\n databaseClose,\n databaseSyncSync,\n databaseSyncUntilSync,\n databaseExecSync,\n databasePrepareSync,\n databaseDefaultSafeIntegers,\n databaseAuthorizer,\n databaseLoadExtension,\n databaseMaxWriteReplicationIndex,\n statementRaw,\n statementIsReader,\n statementGet,\n statementRun,\n statementInterrupt,\n statementRowsSync,\n statementColumns,\n statementSafeIntegers,\n rowsNext,\n} = requireNative();\n\nconst Authorization = require(\"./auth\");\nconst SqliteError = require(\"./sqlite-error\");\n\nfunction convertError(err) {\n if (err.libsqlError) {\n return new SqliteError(err.message, err.code, err.rawCode);\n }\n return err;\n}\n\n/**\n * Database represents a connection that can prepare and execute SQL statements.\n */\nclass Database {\n /**\n * Creates a new database connection. If the database file pointed to by `path` does not exists, it will be created.\n *\n * @constructor\n * @param {string} path - Path to the database file.\n */\n constructor(path, opts) {\n const encryptionCipher = opts?.encryptionCipher ?? \"aes256cbc\";\n if (opts && opts.syncUrl) {\n var authToken = \"\";\n if (opts.syncAuth) {\n console.warn(\"Warning: The `syncAuth` option is deprecated, please use `authToken` option instead.\");\n authToken = opts.syncAuth;\n } else if (opts.authToken) {\n authToken = opts.authToken;\n }\n const encryptionKey = opts?.encryptionKey ?? \"\";\n const syncPeriod = opts?.syncPeriod ?? 0.0;\n const readYourWrites = opts?.readYourWrites ?? true;\n const offline = opts?.offline ?? false;\n const remoteEncryptionKey = opts?.remoteEncryptionKey ?? \"\";\n this.db = databaseOpenWithSync(path, opts.syncUrl, authToken, encryptionCipher, encryptionKey, syncPeriod, readYourWrites, offline, remoteEncryptionKey);\n } else {\n const authToken = opts?.authToken ?? \"\";\n const encryptionKey = opts?.encryptionKey ?? \"\";\n const timeout = opts?.timeout ?? 0.0;\n const remoteEncryptionKey = opts?.remoteEncryptionKey ?? \"\";\n this.db = databaseOpen(path, authToken, encryptionCipher, encryptionKey, timeout, remoteEncryptionKey);\n }\n // TODO: Use a libSQL API for this?\n this.memory = path === \":memory:\";\n this.readonly = false;\n this.name = \"\";\n this.open = true;\n\n const db = this.db;\n Object.defineProperties(this, {\n inTransaction: {\n get() {\n return databaseInTransaction(db);\n }\n },\n });\n }\n\n sync() {\n return databaseSyncSync.call(this.db);\n }\n\n syncUntil(replicationIndex) {\n return databaseSyncUntilSync.call(this.db, replicationIndex);\n }\n\n /**\n * Prepares a SQL statement for execution.\n *\n * @param {string} sql - The SQL statement string to prepare.\n */\n prepare(sql) {\n try {\n const stmt = databasePrepareSync.call(this.db, sql);\n return new Statement(stmt);\n } catch (err) {\n throw convertError(err);\n }\n }\n\n /**\n * Returns a function that executes the given function in a transaction.\n *\n * @param {function} fn - The function to wrap in a transaction.\n */\n transaction(fn) {\n if (typeof fn !== \"function\")\n throw new TypeError(\"Expected first argument to be a function\");\n\n const db = this;\n const wrapTxn = (mode) => {\n return (...bindParameters) => {\n db.exec(\"BEGIN \" + mode);\n try {\n const result = fn(...bindParameters);\n db.exec(\"COMMIT\");\n return result;\n } catch (err) {\n db.exec(\"ROLLBACK\");\n throw err;\n }\n };\n };\n const properties = {\n default: { value: wrapTxn(\"\") },\n deferred: { value: wrapTxn(\"DEFERRED\") },\n immediate: { value: wrapTxn(\"IMMEDIATE\") },\n exclusive: { value: wrapTxn(\"EXCLUSIVE\") },\n database: { value: this, enumerable: true },\n };\n Object.defineProperties(properties.default.value, properties);\n Object.defineProperties(properties.deferred.value, properties);\n Object.defineProperties(properties.immediate.value, properties);\n Object.defineProperties(properties.exclusive.value, properties);\n return properties.default.value;\n }\n\n pragma(source, options) {\n if (options == null) options = {};\n if (typeof source !== 'string') throw new TypeError('Expected first argument to be a string');\n if (typeof options !== 'object') throw new TypeError('Expected second argument to be an options object');\n const simple = options['simple'];\n const stmt = this.prepare(`PRAGMA ${source}`, this, true);\n return simple ? stmt.pluck().get() : stmt.all();\n }\n\n backup(filename, options) {\n throw new Error(\"not implemented\");\n }\n\n serialize(options) {\n throw new Error(\"not implemented\");\n }\n\n function(name, options, fn) {\n // Apply defaults\n if (options == null) options = {};\n if (typeof options === \"function\") {\n fn = options;\n options = {};\n }\n\n // Validate arguments\n if (typeof name !== \"string\")\n throw new TypeError(\"Expected first argument to be a string\");\n if (typeof fn !== \"function\")\n throw new TypeError(\"Expected last argument to be a function\");\n if (typeof options !== \"object\")\n throw new TypeError(\"Expected second argument to be an options object\");\n if (!name)\n throw new TypeError(\n \"User-defined function name cannot be an empty string\"\n );\n\n throw new Error(\"not implemented\");\n }\n\n aggregate(name, options) {\n // Validate arguments\n if (typeof name !== \"string\")\n throw new TypeError(\"Expected first argument to be a string\");\n if (typeof options !== \"object\" || options === null)\n throw new TypeError(\"Expected second argument to be an options object\");\n if (!name)\n throw new TypeError(\n \"User-defined function name cannot be an empty string\"\n );\n\n throw new Error(\"not implemented\");\n }\n\n table(name, factory) {\n // Validate arguments\n if (typeof name !== \"string\")\n throw new TypeError(\"Expected first argument to be a string\");\n if (!name)\n throw new TypeError(\n \"Virtual table module name cannot be an empty string\"\n );\n\n throw new Error(\"not implemented\");\n }\n\n authorizer(rules) {\n databaseAuthorizer.call(this.db, rules);\n }\n\n loadExtension(...args) {\n databaseLoadExtension.call(this.db, ...args);\n }\n\n maxWriteReplicationIndex() {\n return databaseMaxWriteReplicationIndex.call(this.db)\n }\n\n /**\n * Executes a SQL statement.\n *\n * @param {string} sql - The SQL statement string to execute.\n */\n exec(sql) {\n try {\n databaseExecSync.call(this.db, sql);\n } catch (err) {\n throw convertError(err);\n }\n }\n\n /**\n * Interrupts the database connection.\n */\n interrupt() {\n databaseInterrupt.call(this.db);\n }\n\n /**\n * Closes the database connection.\n */\n close() {\n databaseClose.call(this.db);\n this.open = false;\n }\n\n /**\n * Toggle 64-bit integer support.\n */\n defaultSafeIntegers(toggle) {\n databaseDefaultSafeIntegers.call(this.db, toggle ?? true);\n return this;\n }\n\n unsafeMode(...args) {\n throw new Error(\"not implemented\");\n }\n}\n\n/**\n * Statement represents a prepared SQL statement that can be executed.\n */\nclass Statement {\n constructor(stmt) {\n this.stmt = stmt;\n this.pluckMode = false;\n }\n\n /**\n * Toggle raw mode.\n *\n * @param raw Enable or disable raw mode. If you don't pass the parameter, raw mode is enabled.\n */\n raw(raw) {\n statementRaw.call(this.stmt, raw ?? true);\n return this;\n }\n\n /**\n * Toggle pluck mode.\n *\n * @param pluckMode Enable or disable pluck mode. If you don't pass the parameter, pluck mode is enabled.\n */\n pluck(pluckMode) {\n this.pluckMode = pluckMode ?? true;\n return this;\n }\n\n get reader() {\n return statementIsReader.call(this.stmt);\n }\n\n /**\n * Executes the SQL statement and returns an info object.\n */\n run(...bindParameters) {\n try {\n if (bindParameters.length == 1 && typeof bindParameters[0] === \"object\") {\n return statementRun.call(this.stmt, bindParameters[0]);\n } else {\n return statementRun.call(this.stmt, bindParameters.flat());\n }\n } catch (err) {\n throw convertError(err);\n }\n }\n\n /**\n * Executes the SQL statement and returns the first row.\n *\n * @param bindParameters - The bind parameters for executing the statement.\n */\n get(...bindParameters) {\n try {\n if (bindParameters.length == 1 && typeof bindParameters[0] === \"object\") {\n return statementGet.call(this.stmt, bindParameters[0]);\n } else {\n return statementGet.call(this.stmt, bindParameters.flat());\n }\n } catch (err) {\n throw convertError(err);\n }\n }\n\n /**\n * Executes the SQL statement and returns an iterator to the resulting rows.\n *\n * @param bindParameters - The bind parameters for executing the statement.\n */\n iterate(...bindParameters) {\n var rows = undefined;\n if (bindParameters.length == 1 && typeof bindParameters[0] === \"object\") {\n rows = statementRowsSync.call(this.stmt, bindParameters[0]);\n } else {\n rows = statementRowsSync.call(this.stmt, bindParameters.flat());\n }\n const iter = {\n nextRows: Array(100),\n nextRowIndex: 100,\n next() {\n try {\n if (this.nextRowIndex === 100) {\n rowsNext.call(rows, this.nextRows);\n this.nextRowIndex = 0;\n }\n const row = this.nextRows[this.nextRowIndex];\n this.nextRows[this.nextRowIndex] = undefined;\n if (!row) {\n return { done: true };\n }\n this.nextRowIndex++;\n return { value: row, done: false };\n } catch (err) {\n throw convertError(err);\n }\n },\n [Symbol.iterator]() {\n return this;\n },\n };\n return iter;\n }\n\n /**\n * Executes the SQL statement and returns an array of the resulting rows.\n *\n * @param bindParameters - The bind parameters for executing the statement.\n */\n all(...bindParameters) {\n try {\n const result = [];\n for (const row of this.iterate(...bindParameters)) {\n if (this.pluckMode) {\n result.push(row[Object.keys(row)[0]]);\n } else {\n result.push(row);\n }\n }\n return result;\n } catch (err) {\n throw convertError(err);\n }\n }\n\n /**\n * Interrupts the statement.\n */\n interrupt() {\n statementInterrupt.call(this.stmt);\n }\n\n /**\n * Returns the columns in the result set returned by this prepared statement.\n */\n columns() {\n return statementColumns.call(this.stmt);\n }\n\n /**\n * Toggle 64-bit integer support.\n */\n safeIntegers(toggle) {\n statementSafeIntegers.call(this.stmt, toggle ?? true);\n return this;\n }\n}\n\nmodule.exports = Database;\nmodule.exports.Authorization = Authorization;\nmodule.exports.SqliteError = SqliteError;\n"],"x_google_ignoreList":[0,1,2,3,4,5,6],"mappings":"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"}
|