@saltcorn/db-common 0.9.6-beta.11 → 0.9.6-beta.12
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-commons.d.ts
CHANGED
|
@@ -9,14 +9,14 @@ import { Row, Value, Where } from "./internal";
|
|
|
9
9
|
* @returns
|
|
10
10
|
* @function
|
|
11
11
|
*/
|
|
12
|
-
export declare const reprAsJson: (v: any) => boolean;
|
|
12
|
+
export declare const reprAsJson: (v: any, jsonCol?: boolean) => boolean;
|
|
13
13
|
/**
|
|
14
14
|
* @param opts
|
|
15
15
|
* @param opts.k
|
|
16
16
|
* @param opts.v
|
|
17
17
|
* @returns
|
|
18
18
|
*/
|
|
19
|
-
export declare const mkVal: ([k, v]: [string, any]) => Value;
|
|
19
|
+
export declare const mkVal: ([k, v]: [string, any], jsonCol?: boolean) => Value;
|
|
20
20
|
/**
|
|
21
21
|
* return type of buildInsertSql()
|
|
22
22
|
* wraps the INSERT sql string and the values to insert
|
|
@@ -36,6 +36,7 @@ export declare const buildInsertSql: (tbl: string, obj: Row, opts?: {
|
|
|
36
36
|
noid?: boolean;
|
|
37
37
|
ignoreExisting?: boolean;
|
|
38
38
|
replace?: boolean;
|
|
39
|
+
jsonCols?: string[];
|
|
39
40
|
}) => SqlAndValues;
|
|
40
41
|
declare type SqlAndValuesBulk = {
|
|
41
42
|
sql: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-commons.d.ts","sourceRoot":"","sources":["../sqlite-commons.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,GAAG,EAAe,KAAK,EAAW,KAAK,EAAE,MAAM,YAAY,CAAC;AAErE;;;;GAIG;AACH,eAAO,MAAM,UAAU,MAAO,GAAG,KAAG,
|
|
1
|
+
{"version":3,"file":"sqlite-commons.d.ts","sourceRoot":"","sources":["../sqlite-commons.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,GAAG,EAAe,KAAK,EAAW,KAAK,EAAE,MAAM,YAAY,CAAC;AAErE;;;;GAIG;AACH,eAAO,MAAM,UAAU,MAAO,GAAG,YAAY,OAAO,KAAG,OAEQ,CAAC;AAEhE;;;;;GAKG;AACH,eAAO,MAAM,KAAK,WAAY,CAAC,MAAM,EAAE,GAAG,CAAC,YAAY,OAAO,KAAG,KACjB,CAAC;AAEjD;;;GAGG;AACH,oBAAY,YAAY,GAAG;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;CACrB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,QACpB,MAAM,OACN,GAAG,SACF;IACJ,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB,KACA,YA6BF,CAAC;AAEF,aAAK,gBAAgB,GAAG;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,QACxB,MAAM,QACL,GAAG,EAAE,SACL;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,KACpE,MAAM,gBAAgB,CAgCxB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,QAAe,MAAM,YAAY,KAAK,aAAa,GAAG,oBAKzE,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,aAAa,QACnB,MAAM,YACD,KAAK,aACJ,GAAG,kBAKf,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,eACX,MAAM,eACL,MAAM,EAAE,cACT,GAAG,aACJ,OAAO,WACT,GAAG,KACX,QAAQ,IAAI,CAUd,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,aAAa,eACZ,MAAM,eACL,MAAM,EAAE,cACT,GAAG,aACJ,OAAO,WACT,GAAG,KACX,QAAQ,IAAI,CAMd,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,cAAqB,GAAG,iBAIhD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,cAAqB,GAAG,iBAI3D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,cAAqB,GAAG,iBAIlD,CAAC"}
|
package/dist/sqlite-commons.js
CHANGED
|
@@ -12,7 +12,8 @@ const internal_1 = require("./internal");
|
|
|
12
12
|
* @returns
|
|
13
13
|
* @function
|
|
14
14
|
*/
|
|
15
|
-
const reprAsJson = (v) =>
|
|
15
|
+
const reprAsJson = (v, jsonCol) => (jsonCol && (v === true || v === false)) ||
|
|
16
|
+
(typeof v === "object" && v !== null && !(v instanceof Date));
|
|
16
17
|
exports.reprAsJson = reprAsJson;
|
|
17
18
|
/**
|
|
18
19
|
* @param opts
|
|
@@ -20,7 +21,7 @@ exports.reprAsJson = reprAsJson;
|
|
|
20
21
|
* @param opts.v
|
|
21
22
|
* @returns
|
|
22
23
|
*/
|
|
23
|
-
const mkVal = ([k, v]) => (0, exports.reprAsJson)(v) ? JSON.stringify(v) : v;
|
|
24
|
+
const mkVal = ([k, v], jsonCol) => (0, exports.reprAsJson)(v, jsonCol) ? JSON.stringify(v) : v;
|
|
24
25
|
exports.mkVal = mkVal;
|
|
25
26
|
/**
|
|
26
27
|
* Build a INSERT INTO sql statement for one row
|
|
@@ -35,13 +36,15 @@ const buildInsertSql = (tbl, obj, opts = {}) => {
|
|
|
35
36
|
const valPosList = kvs
|
|
36
37
|
.map(([k, v], ix) => v && v.next_version_by_id
|
|
37
38
|
? `coalesce((select max(_version) from "${(0, internal_1.sqlsanitize)(tbl)}" where id=${+v.next_version_by_id}), 0)+1`
|
|
38
|
-
: (0, exports.reprAsJson)(v)
|
|
39
|
+
: (0, exports.reprAsJson)(v, opts.jsonCols?.includes(k))
|
|
39
40
|
? "json(?)"
|
|
40
41
|
: "?")
|
|
41
42
|
.join();
|
|
42
43
|
const valList = kvs
|
|
43
44
|
.filter(([k, v]) => !(v && v.next_version_by_id))
|
|
44
|
-
.map(
|
|
45
|
+
.map(([k, v]) => {
|
|
46
|
+
return (0, exports.mkVal)([k, v], opts.jsonCols?.includes(k));
|
|
47
|
+
});
|
|
45
48
|
const ignoreExisting = opts.ignoreExisting ? "or ignore" : "";
|
|
46
49
|
const replace = opts.replace ? "or replace" : "";
|
|
47
50
|
const sql = `insert ${ignoreExisting} ${replace} into "${(0, internal_1.sqlsanitize)(tbl)}"(${fnameList}) values(${valPosList})`;
|
|
@@ -70,7 +73,7 @@ const buildInsertBulkSql = (tbl, objs, opts = {}) => {
|
|
|
70
73
|
const fnames = kvs.map(([k, v]) => `"${(0, internal_1.sqlsanitize)(k)}"`).join(",");
|
|
71
74
|
const vals = kvs
|
|
72
75
|
.filter(([k, v]) => !(v && v.next_version_by_id))
|
|
73
|
-
.map(exports.mkVal);
|
|
76
|
+
.map(([k, v]) => (0, exports.mkVal)([k, v]));
|
|
74
77
|
if (!fieldsWithRows[fnames])
|
|
75
78
|
fieldsWithRows[fnames] = {
|
|
76
79
|
valPattern: `(${kvs
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-commons.js","sourceRoot":"","sources":["../sqlite-commons.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,yCAAqE;AAErE;;;;GAIG;AACI,MAAM,UAAU,GAAG,CAAC,CAAM,EAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"sqlite-commons.js","sourceRoot":"","sources":["../sqlite-commons.ts"],"names":[],"mappings":"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"}
|