@plurnk/plurnk-execs-sqlite 0.1.2 → 0.1.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/dist/Sqlite.d.ts.map +1 -1
- package/dist/Sqlite.js +13 -3
- package/dist/Sqlite.js.map +1 -1
- package/package.json +18 -7
package/dist/Sqlite.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sqlite.d.ts","sourceRoot":"","sources":["../src/Sqlite.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Sqlite.d.ts","sourceRoot":"","sources":["../src/Sqlite.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAkC3G,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,YAAY;IAC5C,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAEpD;IAGc,KAAK,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAM3C,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM;IAIxC,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC;CA4BpF"}
|
package/dist/Sqlite.js
CHANGED
|
@@ -1,13 +1,23 @@
|
|
|
1
|
+
import { statSync } from "node:fs";
|
|
1
2
|
import { DatabaseSync } from "node:sqlite";
|
|
2
3
|
import { BaseExecutor } from "@plurnk/plurnk-execs";
|
|
3
4
|
const MEMORY = ":memory:";
|
|
5
|
+
// Resolve the EXEC target slot (delivered as `cwd`) to a db path. The consuming
|
|
6
|
+
// scheme defaults a target-less EXEC's `cwd` to the session project_root — a
|
|
7
|
+
// *directory*, sensible for subprocess runtimes but not a database. A directory
|
|
8
|
+
// is never a valid sqlite target, so null/empty OR a directory means "no
|
|
9
|
+
// target" → ephemeral :memory:; only a file path (extant or to-be-created) is a
|
|
10
|
+
// persistent db. statSync only suppresses ENOENT (a new db file) — any other
|
|
11
|
+
// stat failure (e.g. EACCES) still surfaces.
|
|
12
|
+
const dbTarget = (cwd) => (cwd && !statSync(cwd, { throwIfNoEntry: false })?.isDirectory() ? cwd : MEMORY);
|
|
4
13
|
// node:sqlite can return bigint for large integers; stringify them so the
|
|
5
14
|
// JSON output is always serializable.
|
|
6
15
|
const jsonReplacer = (_key, value) => (typeof value === "bigint" ? value.toString() : value);
|
|
7
16
|
// In-process SQLite executor (a logical runtime, not subprocess). Runs one SQL
|
|
8
17
|
// statement via node:sqlite against the EXEC target db — defaulting to an
|
|
9
|
-
// ephemeral `:memory:` when no target is given
|
|
10
|
-
//
|
|
18
|
+
// ephemeral `:memory:` when no file target is given (including the consumer's
|
|
19
|
+
// project_root directory default) — and writes the result to the `results`
|
|
20
|
+
// channel as application/json, ready for the jsonpath body-matcher.
|
|
11
21
|
//
|
|
12
22
|
// <<EXEC[sqlite]:SELECT * FROM users:EXEC → :memory: (ephemeral)
|
|
13
23
|
// <<EXEC[sqlite](./app.db):SELECT * FROM users:EXEC → ./app.db (persistent)
|
|
@@ -32,7 +42,7 @@ export default class Sqlite extends BaseExecutor {
|
|
|
32
42
|
return target === null || target === MEMORY ? "pure" : "host";
|
|
33
43
|
}
|
|
34
44
|
async run({ command, cwd, write, setState, emit }) {
|
|
35
|
-
const path = cwd
|
|
45
|
+
const path = dbTarget(cwd);
|
|
36
46
|
const sql = command.trim();
|
|
37
47
|
const fail = (kind, message) => {
|
|
38
48
|
emit({ source: "exec:sqlite", kind, message });
|
package/dist/Sqlite.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sqlite.js","sourceRoot":"","sources":["../src/Sqlite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGpD,MAAM,MAAM,GAAG,UAAU,CAAC;AAE1B,0EAA0E;AAC1E,sCAAsC;AACtC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,KAAc,EAAW,EAAE,CAC3D,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAE3D,+EAA+E;AAC/E,0EAA0E;AAC1E,8EAA8E;AAC9E,
|
|
1
|
+
{"version":3,"file":"Sqlite.js","sourceRoot":"","sources":["../src/Sqlite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGpD,MAAM,MAAM,GAAG,UAAU,CAAC;AAE1B,gFAAgF;AAChF,6EAA6E;AAC7E,gFAAgF;AAChF,yEAAyE;AACzE,gFAAgF;AAChF,6EAA6E;AAC7E,6CAA6C;AAC7C,MAAM,QAAQ,GAAG,CAAC,GAAkB,EAAU,EAAE,CAC5C,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAErF,0EAA0E;AAC1E,sCAAsC;AACtC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,KAAc,EAAW,EAAE,CAC3D,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAE3D,+EAA+E;AAC/E,0EAA0E;AAC1E,8EAA8E;AAC9E,2EAA2E;AAC3E,oEAAoE;AACpE,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,EAAE;AACF,6EAA6E;AAC7E,8EAA8E;AAC9E,8DAA8D;AAC9D,EAAE;AACF,8EAA8E;AAC9E,gFAAgF;AAChF,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,YAAY;IAC5C,IAAI,QAAQ;QACR,OAAO,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,kBAAkB,EAAE,EAAE,CAAC;IACzD,CAAC;IAED,mEAAmE;IAC1D,KAAK,CAAC,KAAK;QAChB,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;IACtD,CAAC;IAED,uEAAuE;IACvE,+DAA+D;IACtD,MAAM,CAAC,MAAqB;QACjC,OAAO,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAY;QACvD,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC3B,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,OAAe,EAAc,EAAE;YACvD,IAAI,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;YAC/C,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAC/B,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QAC3B,CAAC,CAAC;QAEF,IAAI,EAAgB,CAAC;QACrB,IAAI,CAAC;YACD,EAAE,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;QAChC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,OAAO,IAAI,CAAC,oBAAoB,EAAE,yBAAyB,IAAI,MAAO,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QACnG,CAAC;QACD,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC7B,qEAAqE;YACrE,MAAM,MAAM,GAAY,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAC5E,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;YACvD,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAC9B,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QAC3B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,OAAO,IAAI,CAAC,cAAc,EAAE,GAAI,GAAa,CAAC,OAAO,SAAS,IAAI,GAAG,CAAC,CAAC;QAC3E,CAAC;gBAAS,CAAC;YACP,EAAE,CAAC,KAAK,EAAE,CAAC;QACf,CAAC;IACL,CAAC;CACJ"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plurnk/plurnk-execs-sqlite",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"description": "SQLite runtime executor for plurnk-service's exec scheme — runs the sqlite runtime tag in-process via node:sqlite, results as application/json.",
|
|
5
|
-
"keywords": [
|
|
5
|
+
"keywords": [
|
|
6
|
+
"plurnk",
|
|
7
|
+
"exec",
|
|
8
|
+
"runtime",
|
|
9
|
+
"executor",
|
|
10
|
+
"sqlite",
|
|
11
|
+
"sql"
|
|
12
|
+
],
|
|
6
13
|
"homepage": "https://github.com/plurnk/plurnk-execs-sqlite#readme",
|
|
7
14
|
"bugs": {
|
|
8
15
|
"url": "https://github.com/plurnk/plurnk-execs-sqlite/issues"
|
|
@@ -23,7 +30,10 @@
|
|
|
23
30
|
"plurnk": {
|
|
24
31
|
"kind": "exec",
|
|
25
32
|
"runtimes": [
|
|
26
|
-
{
|
|
33
|
+
{
|
|
34
|
+
"name": "sqlite",
|
|
35
|
+
"glyph": "🗃"
|
|
36
|
+
}
|
|
27
37
|
]
|
|
28
38
|
},
|
|
29
39
|
"exports": {
|
|
@@ -45,11 +55,12 @@
|
|
|
45
55
|
"build": "npm run build:dist",
|
|
46
56
|
"prepare": "npm run build"
|
|
47
57
|
},
|
|
48
|
-
"dependencies": {
|
|
49
|
-
"@plurnk/plurnk-execs": "0.4.1"
|
|
50
|
-
},
|
|
51
58
|
"devDependencies": {
|
|
52
59
|
"@types/node": "^25.8.0",
|
|
53
|
-
"typescript": "^6.0.3"
|
|
60
|
+
"typescript": "^6.0.3",
|
|
61
|
+
"@plurnk/plurnk-execs": "0.4.1"
|
|
62
|
+
},
|
|
63
|
+
"peerDependencies": {
|
|
64
|
+
"@plurnk/plurnk-execs": "0.4.1"
|
|
54
65
|
}
|
|
55
66
|
}
|