prostgles-server 2.0.281 → 2.0.282
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/DboBuilder/runSQL.js +3 -3
- package/dist/DboBuilder/runSQL.js.map +1 -1
- package/dist/TableConfig.d.ts.map +1 -1
- package/dist/TableConfig.js +7 -7
- package/dist/TableConfig.js.map +1 -1
- package/lib/DboBuilder/runSQL.js +3 -3
- package/lib/DboBuilder/runSQL.ts +3 -3
- package/lib/TableConfig.d.ts.map +1 -1
- package/lib/TableConfig.js +7 -7
- package/lib/TableConfig.ts +13 -12
- package/package.json +2 -2
- package/tests/client/PID.txt +1 -1
- package/tests/client/package-lock.json +15 -15
- package/tests/client/package.json +1 -1
- package/tests/client_only_queries.d.ts +1 -1
- package/tests/client_only_queries.d.ts.map +1 -1
- package/tests/client_only_queries.js +1 -0
- package/tests/client_only_queries.ts +28 -25
- package/tests/isomorphic_queries.d.ts +1 -1
- package/tests/isomorphic_queries.d.ts.map +1 -1
- package/tests/isomorphic_queries.ts +108 -108
- package/tests/server/package-lock.json +3 -3
|
@@ -12,7 +12,7 @@ async function runSQL(query, params, options, localParams) {
|
|
|
12
12
|
USER_TABLES ?? (USER_TABLES = await this.db.any("SELECT relid, relname FROM pg_catalog.pg_statio_user_tables") ?? []);
|
|
13
13
|
if (!(await (0, exports.canRunSQL)(this.prostgles, localParams)))
|
|
14
14
|
throw "Not allowed to run SQL";
|
|
15
|
-
const { returnType, allowListen } = options || {};
|
|
15
|
+
const { returnType, allowListen, hasParams = true } = options || {};
|
|
16
16
|
const { socket } = localParams || {};
|
|
17
17
|
const db = localParams?.tx?.t || this.db;
|
|
18
18
|
if (returnType === "noticeSubscription") {
|
|
@@ -30,10 +30,10 @@ async function runSQL(query, params, options, localParams) {
|
|
|
30
30
|
}
|
|
31
31
|
else if (db) {
|
|
32
32
|
let finalQuery = query + "";
|
|
33
|
-
if (returnType === "arrayMode" && !["listen ", "notify "].find(c => query.toLowerCase().trim().startsWith(c))) {
|
|
33
|
+
if (returnType === "arrayMode" && !["listen ", "notify "].find(c => query.toLowerCase().trim().startsWith(c)) && hasParams) {
|
|
34
34
|
finalQuery = new PQ({ text: DboBuilder_1.pgp.as.format(query, params), rowMode: "array" });
|
|
35
35
|
}
|
|
36
|
-
let _qres = await db.result(finalQuery, params);
|
|
36
|
+
let _qres = await db.result(finalQuery, hasParams ? params : undefined);
|
|
37
37
|
const { fields, rows, command } = _qres;
|
|
38
38
|
/**
|
|
39
39
|
* Fallback for watchSchema in case not superuser and cannot add db event listener
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runSQL.js","sourceRoot":"","sources":["../../lib/DboBuilder/runSQL.ts"],"names":[],"mappings":";;;AACA,8CAA+E;AAE/E,oDAAiD;AACjD,MAAM,EAAE,kBAAkB,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;AAEzD,IAAI,UAA0E,CAAC;AAC/E,IAAI,WAA8D,CAAC;AAE5D,KAAK,UAAU,MAAM,CAAmB,KAAa,EAAE,MAAW,EAAE,OAA+B,EAAE,WAAyB;IAE/H,kBAAkB;IAClB,UAAU,KAAV,UAAU,GAAK,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,kCAAkC,CAAC,IAAI,EAAE,EAAC;IAC3E,WAAW,KAAX,WAAW,GAAK,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,6DAA6D,CAAC,IAAI,EAAE,EAAC;IAEvG,IAAG,CAAC,CAAC,MAAM,IAAA,iBAAS,EAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAAE,MAAM,wBAAwB,CAAC;IAEnF,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,GAAe,OAAO,IAAK,EAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"runSQL.js","sourceRoot":"","sources":["../../lib/DboBuilder/runSQL.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableConfig.d.ts","sourceRoot":"","sources":["../lib/TableConfig.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"TableConfig.d.ts","sourceRoot":"","sources":["../lib/TableConfig.ts"],"names":[],"mappings":"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"}
|
package/dist/TableConfig.js
CHANGED
|
@@ -153,13 +153,13 @@ class TableConfigurator {
|
|
|
153
153
|
}
|
|
154
154
|
if (triggers) {
|
|
155
155
|
const existingTriggers = await this.dbo.sql(`
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
(0, prostgles_types_1.getKeys)(triggers).
|
|
156
|
+
SELECT event_object_table
|
|
157
|
+
,trigger_name
|
|
158
|
+
FROM information_schema.triggers
|
|
159
|
+
WHERE event_object_table = ` + "${tableName}" + `
|
|
160
|
+
ORDER BY event_object_table
|
|
161
|
+
`, { tableName: tableNameRaw }, { returnType: "rows" });
|
|
162
|
+
(0, prostgles_types_1.getKeys)(triggers).forEach(triggerName => {
|
|
163
163
|
const trigger = triggers[triggerName];
|
|
164
164
|
if (isDropped) {
|
|
165
165
|
queries.push(`DROP TRIGGER IF EXISTS ${(0, prostgles_types_1.asName)(triggerName)} ON ${tableName};`);
|
package/dist/TableConfig.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableConfig.js","sourceRoot":"","sources":["../lib/TableConfig.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TableConfig.js","sourceRoot":"","sources":["../lib/TableConfig.ts"],"names":[],"mappings":"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"}
|
package/lib/DboBuilder/runSQL.js
CHANGED
|
@@ -12,7 +12,7 @@ async function runSQL(query, params, options, localParams) {
|
|
|
12
12
|
USER_TABLES ?? (USER_TABLES = await this.db.any("SELECT relid, relname FROM pg_catalog.pg_statio_user_tables") ?? []);
|
|
13
13
|
if (!(await (0, exports.canRunSQL)(this.prostgles, localParams)))
|
|
14
14
|
throw "Not allowed to run SQL";
|
|
15
|
-
const { returnType, allowListen } = options || {};
|
|
15
|
+
const { returnType, allowListen, hasParams = true } = options || {};
|
|
16
16
|
const { socket } = localParams || {};
|
|
17
17
|
const db = localParams?.tx?.t || this.db;
|
|
18
18
|
if (returnType === "noticeSubscription") {
|
|
@@ -30,10 +30,10 @@ async function runSQL(query, params, options, localParams) {
|
|
|
30
30
|
}
|
|
31
31
|
else if (db) {
|
|
32
32
|
let finalQuery = query + "";
|
|
33
|
-
if (returnType === "arrayMode" && !["listen ", "notify "].find(c => query.toLowerCase().trim().startsWith(c))) {
|
|
33
|
+
if (returnType === "arrayMode" && !["listen ", "notify "].find(c => query.toLowerCase().trim().startsWith(c)) && hasParams) {
|
|
34
34
|
finalQuery = new PQ({ text: DboBuilder_1.pgp.as.format(query, params), rowMode: "array" });
|
|
35
35
|
}
|
|
36
|
-
let _qres = await db.result(finalQuery, params);
|
|
36
|
+
let _qres = await db.result(finalQuery, hasParams ? params : undefined);
|
|
37
37
|
const { fields, rows, command } = _qres;
|
|
38
38
|
/**
|
|
39
39
|
* Fallback for watchSchema in case not superuser and cannot add db event listener
|
package/lib/DboBuilder/runSQL.ts
CHANGED
|
@@ -15,7 +15,7 @@ export async function runSQL(this: DboBuilder, query: string, params: any, optio
|
|
|
15
15
|
|
|
16
16
|
if(!(await canRunSQL(this.prostgles, localParams))) throw "Not allowed to run SQL";
|
|
17
17
|
|
|
18
|
-
const { returnType, allowListen }: SQLOptions = options || ({} as any);
|
|
18
|
+
const { returnType, allowListen, hasParams = true }: SQLOptions = options || ({} as any);
|
|
19
19
|
const { socket } = localParams || {};
|
|
20
20
|
|
|
21
21
|
const db = localParams?.tx?.t || this.db;
|
|
@@ -31,11 +31,11 @@ export async function runSQL(this: DboBuilder, query: string, params: any, optio
|
|
|
31
31
|
} else if(db) {
|
|
32
32
|
|
|
33
33
|
let finalQuery = query + "";
|
|
34
|
-
if(returnType === "arrayMode" && !["listen ", "notify "].find(c => query.toLowerCase().trim().startsWith(c))){
|
|
34
|
+
if(returnType === "arrayMode" && !["listen ", "notify "].find(c => query.toLowerCase().trim().startsWith(c)) && hasParams){
|
|
35
35
|
finalQuery = new PQ({ text: pgp.as.format(query, params), rowMode: "array" });
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
let _qres = await db.result(finalQuery, params)
|
|
38
|
+
let _qres = await db.result(finalQuery, hasParams? params : undefined)
|
|
39
39
|
const { fields, rows, command } = _qres;
|
|
40
40
|
|
|
41
41
|
/**
|
package/lib/TableConfig.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableConfig.d.ts","sourceRoot":"","sources":["TableConfig.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"TableConfig.d.ts","sourceRoot":"","sources":["TableConfig.ts"],"names":[],"mappings":"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"}
|
package/lib/TableConfig.js
CHANGED
|
@@ -153,13 +153,13 @@ class TableConfigurator {
|
|
|
153
153
|
}
|
|
154
154
|
if (triggers) {
|
|
155
155
|
const existingTriggers = await this.dbo.sql(`
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
(0, prostgles_types_1.getKeys)(triggers).
|
|
156
|
+
SELECT event_object_table
|
|
157
|
+
,trigger_name
|
|
158
|
+
FROM information_schema.triggers
|
|
159
|
+
WHERE event_object_table = ` + "${tableName}" + `
|
|
160
|
+
ORDER BY event_object_table
|
|
161
|
+
`, { tableName: tableNameRaw }, { returnType: "rows" });
|
|
162
|
+
(0, prostgles_types_1.getKeys)(triggers).forEach(triggerName => {
|
|
163
163
|
const trigger = triggers[triggerName];
|
|
164
164
|
if (isDropped) {
|
|
165
165
|
queries.push(`DROP TRIGGER IF EXISTS ${(0, prostgles_types_1.asName)(triggerName)} ON ${tableName};`);
|
package/lib/TableConfig.ts
CHANGED
|
@@ -395,17 +395,18 @@ export default class TableConfigurator<LANG_IDS = { en: 1 }> {
|
|
|
395
395
|
|
|
396
396
|
if(triggers){
|
|
397
397
|
|
|
398
|
-
const existingTriggers
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
398
|
+
const existingTriggers = await this.dbo.sql!(`
|
|
399
|
+
SELECT event_object_table
|
|
400
|
+
,trigger_name
|
|
401
|
+
FROM information_schema.triggers
|
|
402
|
+
WHERE event_object_table = `+ "${tableName}" + `
|
|
403
|
+
ORDER BY event_object_table
|
|
404
|
+
`,
|
|
405
|
+
{ tableName: tableNameRaw },
|
|
406
|
+
{ returnType: "rows" }
|
|
407
|
+
) as { trigger_name: string }[];
|
|
408
|
+
|
|
409
|
+
getKeys(triggers).forEach(triggerName => {
|
|
409
410
|
const trigger = triggers[triggerName];
|
|
410
411
|
if(isDropped){
|
|
411
412
|
queries.push(`DROP TRIGGER IF EXISTS ${asName(triggerName)} ON ${tableName};`)
|
|
@@ -436,7 +437,7 @@ export default class TableConfigurator<LANG_IDS = { en: 1 }> {
|
|
|
436
437
|
REFERENCING NEW TABLE AS new_table
|
|
437
438
|
FOR EACH ${trigger.forEach}
|
|
438
439
|
EXECUTE PROCEDURE ${funcNameParsed}();
|
|
439
|
-
`)
|
|
440
|
+
`);
|
|
440
441
|
})
|
|
441
442
|
})
|
|
442
443
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "prostgles-server",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.282",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"check-disk-space": "^3.3.1",
|
|
32
32
|
"file-type": "^17.1.4",
|
|
33
33
|
"pg-promise": "^10.11.1",
|
|
34
|
-
"prostgles-types": "^1.5.
|
|
34
|
+
"prostgles-types": "^1.5.175",
|
|
35
35
|
"sharp": "^0.30.7"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
package/tests/client/PID.txt
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
41856
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"license": "ISC",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@types/node": "^14.14.16",
|
|
13
|
-
"prostgles-client": "^1.5.
|
|
13
|
+
"prostgles-client": "^1.5.173",
|
|
14
14
|
"prostgles-types": "^1.5.68",
|
|
15
15
|
"socket.io-client": "^4.5.1"
|
|
16
16
|
}
|
|
@@ -67,17 +67,17 @@
|
|
|
67
67
|
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
|
|
68
68
|
},
|
|
69
69
|
"node_modules/prostgles-client": {
|
|
70
|
-
"version": "1.5.
|
|
71
|
-
"resolved": "https://registry.npmjs.org/prostgles-client/-/prostgles-client-1.5.
|
|
72
|
-
"integrity": "sha512-
|
|
70
|
+
"version": "1.5.173",
|
|
71
|
+
"resolved": "https://registry.npmjs.org/prostgles-client/-/prostgles-client-1.5.173.tgz",
|
|
72
|
+
"integrity": "sha512-rf8wGFFB3+lwStLBVCNIjDL1y8AFkJ2lPHC5VZeko/nzoPDJ+mTsfw24RDcRZCM+JuJ7InZwck5e5VptWytEhQ==",
|
|
73
73
|
"dependencies": {
|
|
74
|
-
"prostgles-types": "^1.5.
|
|
74
|
+
"prostgles-types": "^1.5.175"
|
|
75
75
|
}
|
|
76
76
|
},
|
|
77
77
|
"node_modules/prostgles-types": {
|
|
78
|
-
"version": "1.5.
|
|
79
|
-
"resolved": "https://registry.npmjs.org/prostgles-types/-/prostgles-types-1.5.
|
|
80
|
-
"integrity": "sha512-
|
|
78
|
+
"version": "1.5.175",
|
|
79
|
+
"resolved": "https://registry.npmjs.org/prostgles-types/-/prostgles-types-1.5.175.tgz",
|
|
80
|
+
"integrity": "sha512-vx8ygw2tpSnlB+2N9YvA/fdL1OsSjFt73TSaMHgWoIKXp8grc0U1sVTa9ok4zO7ehgXh4u4IZNaVuUGH0yPV0g=="
|
|
81
81
|
},
|
|
82
82
|
"node_modules/socket.io-client": {
|
|
83
83
|
"version": "4.5.1",
|
|
@@ -176,17 +176,17 @@
|
|
|
176
176
|
"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
|
|
177
177
|
},
|
|
178
178
|
"prostgles-client": {
|
|
179
|
-
"version": "1.5.
|
|
180
|
-
"resolved": "https://registry.npmjs.org/prostgles-client/-/prostgles-client-1.5.
|
|
181
|
-
"integrity": "sha512-
|
|
179
|
+
"version": "1.5.173",
|
|
180
|
+
"resolved": "https://registry.npmjs.org/prostgles-client/-/prostgles-client-1.5.173.tgz",
|
|
181
|
+
"integrity": "sha512-rf8wGFFB3+lwStLBVCNIjDL1y8AFkJ2lPHC5VZeko/nzoPDJ+mTsfw24RDcRZCM+JuJ7InZwck5e5VptWytEhQ==",
|
|
182
182
|
"requires": {
|
|
183
|
-
"prostgles-types": "^1.5.
|
|
183
|
+
"prostgles-types": "^1.5.175"
|
|
184
184
|
}
|
|
185
185
|
},
|
|
186
186
|
"prostgles-types": {
|
|
187
|
-
"version": "1.5.
|
|
188
|
-
"resolved": "https://registry.npmjs.org/prostgles-types/-/prostgles-types-1.5.
|
|
189
|
-
"integrity": "sha512-
|
|
187
|
+
"version": "1.5.175",
|
|
188
|
+
"resolved": "https://registry.npmjs.org/prostgles-types/-/prostgles-types-1.5.175.tgz",
|
|
189
|
+
"integrity": "sha512-vx8ygw2tpSnlB+2N9YvA/fdL1OsSjFt73TSaMHgWoIKXp8grc0U1sVTa9ok4zO7ehgXh4u4IZNaVuUGH0yPV0g=="
|
|
190
190
|
},
|
|
191
191
|
"socket.io-client": {
|
|
192
192
|
"version": "4.5.1",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { DBHandlerClient, Auth } from "./client/index";
|
|
2
2
|
import { DBSchemaTable } from "./client/node_modules/prostgles-types/dist";
|
|
3
|
-
export default function client_only(db: DBHandlerClient
|
|
3
|
+
export default function client_only(db: Required<DBHandlerClient>, auth: Auth, log: (...args: any[]) => any, methods: any, tableSchema: DBSchemaTable[]): Promise<void>;
|
|
4
4
|
//# sourceMappingURL=client_only_queries.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client_only_queries.d.ts","sourceRoot":"","sources":["client_only_queries.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAa,MAAM,4CAA4C,CAAC;AAGtF,wBAA8B,WAAW,CAAC,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,OAAO,KAAA,EAAE,WAAW,EAAE,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"client_only_queries.d.ts","sourceRoot":"","sources":["client_only_queries.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAa,MAAM,4CAA4C,CAAC;AAGtF,wBAA8B,WAAW,CAAC,EAAE,EAAE,QAAQ,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,OAAO,KAAA,EAAE,WAAW,EAAE,aAAa,EAAE,iBAyTvJ"}
|
|
@@ -36,6 +36,7 @@ async function client_only(db, auth, log, methods, tableSchema) {
|
|
|
36
36
|
await (0, isomorphic_queries_1.tryRun)("SQL Full result", async () => {
|
|
37
37
|
const sqlStatement = await db.sql("SELECT $1", [1], { returnType: "statement" });
|
|
38
38
|
assert_1.strict.equal(sqlStatement, "SELECT 1", "db.sql statement query failed");
|
|
39
|
+
await db.sql("SELECT 1 -- ${param}", {}, { hasParams: false });
|
|
39
40
|
const arrayMode = await db.sql("SELECT 1 as a, 2 as a", undefined, { returnType: "arrayMode" });
|
|
40
41
|
assert_1.strict.equal(arrayMode.rows?.[0].join("."), "1.2", "db.sql statement arrayMode failed");
|
|
41
42
|
assert_1.strict.equal(arrayMode.fields?.map(f => f.name).join("."), "a.a", "db.sql statement arrayMode failed");
|
|
@@ -4,7 +4,7 @@ import type { DBHandlerClient, Auth } from "./client/index";
|
|
|
4
4
|
import { DBSchemaTable, isDefined } from "./client/node_modules/prostgles-types/dist";
|
|
5
5
|
import { tryRun, tryRunP } from './isomorphic_queries';
|
|
6
6
|
|
|
7
|
-
export default async function client_only(db: DBHandlerClient
|
|
7
|
+
export default async function client_only(db: Required<DBHandlerClient>, auth: Auth, log: (...args: any[]) => any, methods, tableSchema: DBSchemaTable[]){
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* onReady(dbo, methodsObj, tableSchema, _auth)
|
|
@@ -21,8 +21,8 @@ export default async function client_only(db: DBHandlerClient, auth: Auth, log:
|
|
|
21
21
|
if(missingscTbl) throw `${missingscTbl} is missing from db`;
|
|
22
22
|
|
|
23
23
|
await Promise.all(tableSchema.map(async tbl => {
|
|
24
|
-
const cols = await db[tbl.name]?.getColumns();
|
|
25
|
-
const info = await db[tbl.name]?.getInfo();
|
|
24
|
+
const cols = await db[tbl.name]?.getColumns!();
|
|
25
|
+
const info = await db[tbl.name]?.getInfo!();
|
|
26
26
|
assert.deepStrictEqual(tbl.columns, cols);
|
|
27
27
|
assert.deepStrictEqual(tbl.info, info);
|
|
28
28
|
}))
|
|
@@ -41,6 +41,9 @@ export default async function client_only(db: DBHandlerClient, auth: Auth, log:
|
|
|
41
41
|
await tryRun("SQL Full result", async () => {
|
|
42
42
|
const sqlStatement = await db.sql("SELECT $1", [1], { returnType: "statement" });
|
|
43
43
|
assert.equal(sqlStatement, "SELECT 1", "db.sql statement query failed");
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
await db.sql("SELECT 1 -- ${param}", {}, { hasParams: false });
|
|
44
47
|
|
|
45
48
|
const arrayMode = await db.sql("SELECT 1 as a, 2 as a", undefined, { returnType: "arrayMode" });
|
|
46
49
|
assert.equal(arrayMode.rows?.[0].join("."), "1.2", "db.sql statement arrayMode failed");
|
|
@@ -111,13 +114,13 @@ export default async function client_only(db: DBHandlerClient, auth: Auth, log:
|
|
|
111
114
|
log("Started testRealtime")
|
|
112
115
|
const start = Date.now();
|
|
113
116
|
|
|
114
|
-
await db.planes.delete();
|
|
117
|
+
await db.planes.delete!();
|
|
115
118
|
let inserts = new Array(100).fill(null).map((d, i) => ({ id: i, flight_number: `FN${i}`, x: Math.random(), y: i }));
|
|
116
|
-
await db.planes.insert(inserts);
|
|
119
|
+
await db.planes.insert!(inserts);
|
|
117
120
|
|
|
118
121
|
const CLOCK_DRIFT = 2000;
|
|
119
122
|
|
|
120
|
-
if((await db.planes.count()) !== 100) throw "Not 100 planes";
|
|
123
|
+
if((await db.planes.count!()) !== 100) throw "Not 100 planes";
|
|
121
124
|
|
|
122
125
|
/**
|
|
123
126
|
* Two listeners are added at the same time to dbo.planes (which has 100 records):
|
|
@@ -130,7 +133,7 @@ export default async function client_only(db: DBHandlerClient, auth: Auth, log:
|
|
|
130
133
|
*/
|
|
131
134
|
|
|
132
135
|
/* After all sync records are updated to x10 here we'll update them to x20 */
|
|
133
|
-
const sP = await db.planes.subscribe({ x: 10 }, { }, async planes => {
|
|
136
|
+
const sP = await db.planes.subscribe!({ x: 10 }, { }, async planes => {
|
|
134
137
|
|
|
135
138
|
const p10 = planes.filter(p => p.x == 10);
|
|
136
139
|
log(Date.now() + ": sub stats: x10 -> " + p10.length + " x20 ->" + planes.filter(p => p.x == 20).length);
|
|
@@ -147,8 +150,8 @@ export default async function client_only(db: DBHandlerClient, auth: Auth, log:
|
|
|
147
150
|
const dLastUpdated = Math.max(...p10.map(v => +v.last_updated))
|
|
148
151
|
const last_updated = Date.now();
|
|
149
152
|
if(dLastUpdated >= last_updated) throw "dLastUpdated >= last_updated should not happen"
|
|
150
|
-
await db.planes.update({}, { x: 20, last_updated });
|
|
151
|
-
log(Date.now() + ": sub: Updated to x20" , await db.planes.count({ x: 20 }))
|
|
153
|
+
await db.planes.update!({}, { x: 20, last_updated });
|
|
154
|
+
log(Date.now() + ": sub: Updated to x20" , await db.planes.count!({ x: 20 }))
|
|
152
155
|
|
|
153
156
|
// db.planes.findOne({}, { select: { last_updated: "$max"}}).then(log)
|
|
154
157
|
}, CLOCK_DRIFT)
|
|
@@ -156,7 +159,7 @@ export default async function client_only(db: DBHandlerClient, auth: Auth, log:
|
|
|
156
159
|
});
|
|
157
160
|
|
|
158
161
|
let updt = 0;
|
|
159
|
-
const sync = await db.planes.sync({}, { handlesOnData: true, patchText: true, }, (planes, deltas) => {
|
|
162
|
+
const sync = await db.planes.sync!({}, { handlesOnData: true, patchText: true, }, (planes, deltas) => {
|
|
160
163
|
const x20 = planes.filter(p => p.x == 20).length;
|
|
161
164
|
const x10 = planes.filter(p => p.x == 10);
|
|
162
165
|
log(Date.now() + `: sync stats: x10 -> ${x10.length} x20 -> ${x20}`);
|
|
@@ -168,7 +171,7 @@ export default async function client_only(db: DBHandlerClient, auth: Auth, log:
|
|
|
168
171
|
if(+p.x < 10){
|
|
169
172
|
updt++;
|
|
170
173
|
update = true;
|
|
171
|
-
p.$update({ x: 10 });
|
|
174
|
+
p.$update!({ x: 10 });
|
|
172
175
|
log(Date.now() + `: sync: p.$update({ x: 10 }); (id: ${p.id})`);
|
|
173
176
|
}
|
|
174
177
|
});
|
|
@@ -186,9 +189,9 @@ export default async function client_only(db: DBHandlerClient, auth: Auth, log:
|
|
|
186
189
|
const msLimit = 20000;
|
|
187
190
|
setTimeout(async () => {
|
|
188
191
|
const dbCounts = {
|
|
189
|
-
x10: await db.planes.count({ x: 10 }),
|
|
190
|
-
x20: await db.planes.count({ x: 20 }),
|
|
191
|
-
latest: await db.planes.findOne({}, { orderBy: { last_updated: -1 } }),
|
|
192
|
+
x10: await db.planes.count!({ x: 10 }),
|
|
193
|
+
x20: await db.planes.count!({ x: 20 }),
|
|
194
|
+
latest: await db.planes.findOne!({}, { orderBy: { last_updated: -1 } }),
|
|
192
195
|
}
|
|
193
196
|
const syncCounts = {
|
|
194
197
|
x10: sync?.getItems().filter(d => d.x == 10).length,
|
|
@@ -218,32 +221,32 @@ export default async function client_only(db: DBHandlerClient, auth: Auth, log:
|
|
|
218
221
|
log("Checking public data");
|
|
219
222
|
// Public data
|
|
220
223
|
await tryRun("Security rules example", async () => {
|
|
221
|
-
const vQ = await db.items4.find({}, { select: { added: 0 }});
|
|
224
|
+
const vQ = await db.items4.find!({}, { select: { added: 0 }});
|
|
222
225
|
assert.deepStrictEqual(vQ, [
|
|
223
226
|
{ id: 1, public: 'public data' },
|
|
224
227
|
{ id: 2, public: 'public data' }
|
|
225
228
|
]);
|
|
226
229
|
|
|
227
|
-
const cols = await db.insert_rules.getColumns();
|
|
230
|
+
const cols = await db.insert_rules.getColumns!();
|
|
228
231
|
assert.equal(cols.filter(({ insert, update: u, select: s, delete: d }) => insert && !u && s && !d).length, 3, "Validated getColumns failed")
|
|
229
232
|
|
|
230
233
|
/* Validated insert */
|
|
231
|
-
const expectB = await db.insert_rules.insert({ name: "a" }, { returning: "*" });
|
|
234
|
+
const expectB = await db.insert_rules.insert!({ name: "a" }, { returning: "*" });
|
|
232
235
|
assert.deepStrictEqual(expectB, { name: "b" }, "Validated insert failed");
|
|
233
236
|
|
|
234
237
|
/* forced UUID insert */
|
|
235
|
-
const row: any = await db.uuid_text.insert({}, {returning: "*"});
|
|
238
|
+
const row: any = await db.uuid_text.insert!({}, {returning: "*"});
|
|
236
239
|
assert.equal(row.id, 'c81089e1-c4c1-45d7-a73d-e2d613cb7c3e');
|
|
237
240
|
|
|
238
241
|
|
|
239
242
|
try {
|
|
240
|
-
await db.insert_rules.insert({ name: "notfail" }, { returning: "*" });
|
|
241
|
-
await db.insert_rules.insert({ name: "fail" }, { returning: "*" });
|
|
243
|
+
await db.insert_rules.insert!({ name: "notfail" }, { returning: "*" });
|
|
244
|
+
await db.insert_rules.insert!({ name: "fail" }, { returning: "*" });
|
|
242
245
|
} catch(err){
|
|
243
246
|
|
|
244
247
|
}
|
|
245
|
-
assert.equal(0, +(await db.insert_rules.count({ name: "fail" })), "postValidation failed");
|
|
246
|
-
assert.equal(1, +(await db.insert_rules.count({ name: "notfail" })), "postValidation failed");
|
|
248
|
+
assert.equal(0, +(await db.insert_rules.count!({ name: "fail" })), "postValidation failed");
|
|
249
|
+
assert.equal(1, +(await db.insert_rules.count!({ name: "notfail" })), "postValidation failed");
|
|
247
250
|
});
|
|
248
251
|
|
|
249
252
|
// await tryRun("Duplicate subscription", async () => {
|
|
@@ -283,14 +286,14 @@ export default async function client_only(db: DBHandlerClient, auth: Auth, log:
|
|
|
283
286
|
log("Checking User data");
|
|
284
287
|
// User data
|
|
285
288
|
await tryRun("Security rules example", async () => {
|
|
286
|
-
const vQ = await db.items4.find();
|
|
289
|
+
const vQ = await db.items4.find!();
|
|
287
290
|
assert.deepStrictEqual(vQ, [
|
|
288
291
|
{ id: 1, public: 'public data' },
|
|
289
292
|
{ id: 2, public: 'public data' }
|
|
290
293
|
]);
|
|
291
294
|
|
|
292
295
|
|
|
293
|
-
const dynamicCols = await db.uuid_text.getColumns(undefined, {
|
|
296
|
+
const dynamicCols = await db.uuid_text.getColumns!(undefined, {
|
|
294
297
|
rule: "update",
|
|
295
298
|
filter: {
|
|
296
299
|
id: 'c81089e1-c4c1-45d7-a73d-e2d613cb7c3e'
|
|
@@ -301,7 +304,7 @@ export default async function client_only(db: DBHandlerClient, auth: Auth, log:
|
|
|
301
304
|
});
|
|
302
305
|
assert.equal(dynamicCols.length, 1);
|
|
303
306
|
assert.equal(dynamicCols[0].name, "id");
|
|
304
|
-
const defaultCols = await db.uuid_text.getColumns(undefined, {
|
|
307
|
+
const defaultCols = await db.uuid_text.getColumns!(undefined, {
|
|
305
308
|
rule: "update",
|
|
306
309
|
filter: {
|
|
307
310
|
id: 'not matching'
|
|
@@ -2,5 +2,5 @@ import { DBHandlerServer } from "../dist/Prostgles";
|
|
|
2
2
|
import type { DBHandlerClient } from "./client/index";
|
|
3
3
|
export declare function tryRun(desc: string, func: () => any, log?: Function): Promise<void>;
|
|
4
4
|
export declare function tryRunP(desc: string, func: (resolve: any, reject: any) => any, log?: Function): Promise<unknown>;
|
|
5
|
-
export default function isomorphic(db:
|
|
5
|
+
export default function isomorphic(db: Required<DBHandlerServer> | Required<DBHandlerClient>): Promise<void>;
|
|
6
6
|
//# sourceMappingURL=isomorphic_queries.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isomorphic_queries.d.ts","sourceRoot":"","sources":["isomorphic_queries.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAC,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGtD,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,EAAE,GAAG,CAAC,EAAE,QAAQ,iBAYzE;AACD,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,KAAK,GAAG,EAAE,GAAG,CAAC,EAAE,QAAQ,oBAW7F;AAED,wBAA8B,UAAU,CAAC,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"isomorphic_queries.d.ts","sourceRoot":"","sources":["isomorphic_queries.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAC,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGtD,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,EAAE,GAAG,CAAC,EAAE,QAAQ,iBAYzE;AACD,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,KAAK,GAAG,EAAE,GAAG,CAAC,EAAE,QAAQ,oBAW7F;AAED,wBAA8B,UAAU,CAAC,EAAE,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,QAAQ,CAAC,eAAe,CAAC,iBA6zBjG"}
|
|
@@ -30,38 +30,38 @@ export function tryRunP(desc: string, func: (resolve: any, reject: any) => any,
|
|
|
30
30
|
});
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
export default async function isomorphic(db:
|
|
33
|
+
export default async function isomorphic(db: Required<DBHandlerServer> | Required<DBHandlerClient>) {
|
|
34
34
|
console.log("Starting isomorphic queries");
|
|
35
35
|
|
|
36
|
-
if(await db.items.count()){
|
|
36
|
+
if(await db.items.count!()){
|
|
37
37
|
console.log("DELETING items");
|
|
38
38
|
|
|
39
39
|
/* Access controlled */
|
|
40
|
-
await db.items4.delete({ });
|
|
40
|
+
await db.items4.delete!({ });
|
|
41
41
|
|
|
42
|
-
await db.items4_pub.delete({ });
|
|
43
|
-
await db.items3.delete({ });
|
|
44
|
-
await db.items2.delete({ });
|
|
45
|
-
await db.items.delete({ });
|
|
42
|
+
await db.items4_pub.delete!({ });
|
|
43
|
+
await db.items3.delete!({ });
|
|
44
|
+
await db.items2.delete!({ });
|
|
45
|
+
await db.items.delete!({ });
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
|
|
49
49
|
await tryRun("Prepare data", async () => {
|
|
50
|
-
await db.items.insert([{ name: "a" }, { name: "a" }, { name: "b" }]);
|
|
51
|
-
console.log(await db.items.find())
|
|
52
|
-
await db.items2.insert([{ name: "a", items_id: 1 }]);
|
|
53
|
-
await db.items3.insert([{ name: "a" }, { name: "za123" }]);
|
|
54
|
-
await db.items4.insert([
|
|
50
|
+
await db.items.insert!([{ name: "a" }, { name: "a" }, { name: "b" }]);
|
|
51
|
+
console.log(await db.items.find!())
|
|
52
|
+
await db.items2.insert!([{ name: "a", items_id: 1 }]);
|
|
53
|
+
await db.items3.insert!([{ name: "a" }, { name: "za123" }]);
|
|
54
|
+
await db.items4.insert!([
|
|
55
55
|
{ name: "abc1", public: "public data", added: new Date('04 Dec 1995 00:12:00 GMT') },
|
|
56
56
|
{ name: "abc2", public: "public data", added: new Date('04 Dec 1995 00:12:00 GMT') },
|
|
57
57
|
{ name: "abcd", public: "public data d", added: new Date('04 Dec 1996 00:12:00 GMT') }
|
|
58
58
|
]);
|
|
59
59
|
|
|
60
60
|
/* Ensure */
|
|
61
|
-
await db["*"].insert([{ "*": "a" }, { "*": "a" }, { "*": "b" }]);
|
|
62
|
-
await db[`"*"`].insert([{ [`"*"`]: "a" }, { [`"*"`]: "a" }, { [`"*"`]: "b" }]);
|
|
61
|
+
await db["*"].insert!([{ "*": "a" }, { "*": "a" }, { "*": "b" }]);
|
|
62
|
+
await db[`"*"`].insert!([{ [`"*"`]: "a" }, { [`"*"`]: "a" }, { [`"*"`]: "b" }]);
|
|
63
63
|
|
|
64
|
-
await db.various.insert([
|
|
64
|
+
await db.various.insert!([
|
|
65
65
|
{ name: "abc9", added: new Date('04 Dec 1995 00:12:00 GMT'), jsn: { "a": { "b": 2 } } },
|
|
66
66
|
{ name: "abc1", added: new Date('04 Dec 1996 00:12:00 GMT'), jsn: { "a": { "b": 3 } } },
|
|
67
67
|
{ name: "abc81 here", added: new Date('04 Dec 1997 00:12:00 GMT'), jsn: { "a": { "b": 2 } } }
|
|
@@ -71,7 +71,7 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
71
71
|
});
|
|
72
72
|
|
|
73
73
|
await tryRun("getColumns definition", async () => {
|
|
74
|
-
const res = await db.tr2.getColumns("fr");
|
|
74
|
+
const res = await db.tr2.getColumns!("fr");
|
|
75
75
|
// console.log(JSON.stringify(res, null, 2))
|
|
76
76
|
const expected = [
|
|
77
77
|
{
|
|
@@ -176,7 +176,7 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
176
176
|
expected
|
|
177
177
|
);
|
|
178
178
|
|
|
179
|
-
const resDynamic = await db.tr2.getColumns("fr", { rule: "update", filter: {}, data: { t2: "a" } });
|
|
179
|
+
const resDynamic = await db.tr2.getColumns!("fr", { rule: "update", filter: {}, data: { t2: "a" } });
|
|
180
180
|
assert.deepStrictEqual(
|
|
181
181
|
resDynamic,
|
|
182
182
|
expected
|
|
@@ -184,7 +184,7 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
184
184
|
});
|
|
185
185
|
|
|
186
186
|
await tryRun("$unnest_words", async () => {
|
|
187
|
-
const res = await db.various.find({}, { returnType: "values", select: { name: "$unnest_words" } });
|
|
187
|
+
const res = await db.various.find!({}, { returnType: "values", select: { name: "$unnest_words" } });
|
|
188
188
|
|
|
189
189
|
assert.deepStrictEqual( res, [
|
|
190
190
|
'abc9',
|
|
@@ -198,8 +198,8 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
198
198
|
* Group by/Distinct
|
|
199
199
|
*/
|
|
200
200
|
await tryRun("Group by/Distinct", async () => {
|
|
201
|
-
const res = await db.items.find({}, { select: { name: 1 }, groupBy: true });
|
|
202
|
-
const resV = await db.items.find({}, { select: { name: 1 }, groupBy: true, returnType: "values" });
|
|
201
|
+
const res = await db.items.find!({}, { select: { name: 1 }, groupBy: true });
|
|
202
|
+
const resV = await db.items.find!({}, { select: { name: 1 }, groupBy: true, returnType: "values" });
|
|
203
203
|
|
|
204
204
|
assert.deepStrictEqual(
|
|
205
205
|
res,
|
|
@@ -218,7 +218,7 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
218
218
|
* returnType "value"
|
|
219
219
|
*/
|
|
220
220
|
await tryRun("returnType: value", async () => {
|
|
221
|
-
const resVl = await db.items.find({}, { select: { name: { $array_agg: ["name"] } }, returnType: "value" });
|
|
221
|
+
const resVl = await db.items.find!({}, { select: { name: { $array_agg: ["name"] } }, returnType: "value" });
|
|
222
222
|
|
|
223
223
|
assert.deepStrictEqual(
|
|
224
224
|
resVl,
|
|
@@ -234,11 +234,11 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
234
234
|
* TODO -> ADD ALL FILTER TYPES
|
|
235
235
|
*/
|
|
236
236
|
await tryRun("FTS filtering", async () => {
|
|
237
|
-
const res = await db.various.count({ "tsv.@@.to_tsquery": ["a"] });
|
|
237
|
+
const res = await db.various.count!({ "tsv.@@.to_tsquery": ["a"] });
|
|
238
238
|
assert.equal(res, 0);
|
|
239
239
|
|
|
240
240
|
|
|
241
|
-
const d = await db.various.findOne(
|
|
241
|
+
const d = await db.various.findOne!(
|
|
242
242
|
{ "name.@@.to_tsquery": ["abc81"] },
|
|
243
243
|
{ select: {
|
|
244
244
|
h: { "$ts_headline_simple": ["name", { plainto_tsquery: "abc81" }] },
|
|
@@ -247,7 +247,7 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
247
247
|
addedY: { "$date_trunc_5minute": ["added"] }
|
|
248
248
|
}});
|
|
249
249
|
// console.log(d);
|
|
250
|
-
await db.various.findOne(
|
|
250
|
+
await db.various.findOne!(
|
|
251
251
|
{ },
|
|
252
252
|
{ select: {
|
|
253
253
|
h: { "$ts_headline_simple": ["name", { plainto_tsquery: "abc81" }] },
|
|
@@ -271,7 +271,7 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
271
271
|
|
|
272
272
|
await tryRun("$term_highlight", async () => {
|
|
273
273
|
const term = "abc81";
|
|
274
|
-
const res = await db.various.find(
|
|
274
|
+
const res = await db.various.find!(
|
|
275
275
|
{ "hIdx.>": -2 },
|
|
276
276
|
{ select: {
|
|
277
277
|
h: { $term_highlight: [["name"], term, { }] },
|
|
@@ -319,54 +319,54 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
319
319
|
|
|
320
320
|
await tryRun("funcFilters: $term_highlight", async () => {
|
|
321
321
|
const term = "abc81";
|
|
322
|
-
const res = await db.various.count(
|
|
322
|
+
const res = await db.various.count!(
|
|
323
323
|
{ $term_highlight: [["*"], term, { returnType: "boolean" }] }
|
|
324
324
|
);
|
|
325
325
|
assert.equal(+res, 1)
|
|
326
326
|
});
|
|
327
327
|
|
|
328
328
|
await tryRunP("subscribe", async (resolve, reject) => {
|
|
329
|
-
await db.various.insert({ id: 99 });
|
|
329
|
+
await db.various.insert!({ id: 99 });
|
|
330
330
|
console.log("subscribing")
|
|
331
|
-
const sub = await db.various.subscribe({ id: 99 }, { }, async items => {
|
|
331
|
+
const sub = await db.various.subscribe!({ id: 99 }, { }, async items => {
|
|
332
332
|
const item = items[0];
|
|
333
333
|
|
|
334
334
|
if(item && item.name === "zz3zz3"){
|
|
335
|
-
await db.various.delete({ name: "zz3zz3" });
|
|
335
|
+
await db.various.delete!({ name: "zz3zz3" });
|
|
336
336
|
sub.unsubscribe();
|
|
337
337
|
resolve(true)
|
|
338
338
|
}
|
|
339
339
|
});
|
|
340
|
-
await db.various.update({ id: 99 }, { name: "zz3zz1" });
|
|
341
|
-
await db.various.update({ id: 99 }, { name: "zz3zz2" });
|
|
342
|
-
await db.various.update({ id: 99 }, { name: "zz3zz3" });
|
|
340
|
+
await db.various.update!({ id: 99 }, { name: "zz3zz1" });
|
|
341
|
+
await db.various.update!({ id: 99 }, { name: "zz3zz2" });
|
|
342
|
+
await db.various.update!({ id: 99 }, { name: "zz3zz3" });
|
|
343
343
|
});
|
|
344
344
|
|
|
345
345
|
await tryRunP("subscribeOne with throttle", async (resolve, reject) => {
|
|
346
|
-
await db.various.insert({ id: 99 });
|
|
346
|
+
await db.various.insert!({ id: 99 });
|
|
347
347
|
const start = Date.now(); // name: "zz3zz"
|
|
348
|
-
const sub = await db.various.subscribeOne({ id: 99 }, { throttle: 1700 }, async item => {
|
|
348
|
+
const sub = await db.various.subscribeOne!({ id: 99 }, { throttle: 1700 }, async item => {
|
|
349
349
|
// const item = items[0]
|
|
350
350
|
// console.log(item)
|
|
351
351
|
|
|
352
352
|
const now = Date.now();
|
|
353
353
|
if(item && item.name === "zz3zz2" && now - start > 1600 && now - start < 1800){
|
|
354
|
-
await db.various.delete({ name: "zz3zz2" });
|
|
354
|
+
await db.various.delete!({ name: "zz3zz2" });
|
|
355
355
|
sub.unsubscribe()
|
|
356
356
|
resolve(true)
|
|
357
357
|
}
|
|
358
358
|
});
|
|
359
|
-
await db.various.update({ id: 99 }, { name: "zz3zz1" });
|
|
360
|
-
await db.various.update({ id: 99 }, { name: "zz3zz2" });
|
|
359
|
+
await db.various.update!({ id: 99 }, { name: "zz3zz1" });
|
|
360
|
+
await db.various.update!({ id: 99 }, { name: "zz3zz2" });
|
|
361
361
|
});
|
|
362
362
|
|
|
363
363
|
await tryRun("JSON filtering", async () => {
|
|
364
|
-
const res = await db.various.count({ "jsn->a->>b": '3' });
|
|
364
|
+
const res = await db.various.count!({ "jsn->a->>b": '3' });
|
|
365
365
|
assert.equal(res, 1)
|
|
366
366
|
});
|
|
367
367
|
|
|
368
368
|
await tryRun("Complex filtering", async () => {
|
|
369
|
-
const res = await db.various.count({
|
|
369
|
+
const res = await db.various.count!({
|
|
370
370
|
$and: [
|
|
371
371
|
{
|
|
372
372
|
$filter: [
|
|
@@ -389,13 +389,13 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
389
389
|
});
|
|
390
390
|
|
|
391
391
|
await tryRun("template_string function", async () => {
|
|
392
|
-
const res = await db.various.findOne({ name: 'abc9' }, { select: { tstr: { $template_string: ["{name} is hehe"] } } });
|
|
393
|
-
const res2 = await db.various.findOne({ name: 'abc9' }, { select: { tstr: { $template_string: ["is hehe"] } } });
|
|
392
|
+
const res = await db.various.findOne!({ name: 'abc9' }, { select: { tstr: { $template_string: ["{name} is hehe"] } } });
|
|
393
|
+
const res2 = await db.various.findOne!({ name: 'abc9' }, { select: { tstr: { $template_string: ["is hehe"] } } });
|
|
394
394
|
assert.equal(res.tstr, "'abc9 is hehe'")
|
|
395
395
|
});
|
|
396
396
|
|
|
397
397
|
await tryRun("Between filtering", async () => {
|
|
398
|
-
const res = await db.various.count({
|
|
398
|
+
const res = await db.various.count!({
|
|
399
399
|
added: { $between: [
|
|
400
400
|
new Date('06 Dec 1995 00:12:00 GMT'),
|
|
401
401
|
new Date('03 Dec 1997 00:12:00 GMT')
|
|
@@ -403,7 +403,7 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
403
403
|
assert.equal(res, 1)
|
|
404
404
|
});
|
|
405
405
|
await tryRun("In filtering", async () => {
|
|
406
|
-
const res = await db.various.count({
|
|
406
|
+
const res = await db.various.count!({
|
|
407
407
|
added: { $in: [
|
|
408
408
|
new Date('04 Dec 1996 00:12:00 GMT')
|
|
409
409
|
] } });
|
|
@@ -411,85 +411,85 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
411
411
|
});
|
|
412
412
|
|
|
413
413
|
await tryRun("Order by", async () => {
|
|
414
|
-
const res = await db.items.find({}, { select: { name: 1 }, orderBy: [{ key: "name", asc: false, nulls: "first", nullEmpty: true }] });
|
|
414
|
+
const res = await db.items.find!({}, { select: { name: 1 }, orderBy: [{ key: "name", asc: false, nulls: "first", nullEmpty: true }] });
|
|
415
415
|
assert.deepStrictEqual(res, [{ name: 'b'}, { name: 'a'}, { name: 'a'}]);
|
|
416
416
|
});
|
|
417
417
|
|
|
418
418
|
await tryRun("Order by aliased func", async () => {
|
|
419
|
-
const res = await db.items.find({ }, { select: { uname: { $upper: ["name"] }, count: { $countAll: [] } }, orderBy: { uname: -1 }});
|
|
419
|
+
const res = await db.items.find!({ }, { select: { uname: { $upper: ["name"] }, count: { $countAll: [] } }, orderBy: { uname: -1 }});
|
|
420
420
|
assert.deepStrictEqual(res, [{ uname: 'B', count: '1'}, { uname: 'A', count: '2'} ])
|
|
421
421
|
});
|
|
422
422
|
|
|
423
423
|
await tryRun("Order by aggregation", async () => {
|
|
424
|
-
const res = await db.items.find({ }, { select: { name: 1, count: { $countAll: [] } }, orderBy: { count: -1 }});
|
|
424
|
+
const res = await db.items.find!({ }, { select: { name: 1, count: { $countAll: [] } }, orderBy: { count: -1 }});
|
|
425
425
|
assert.deepStrictEqual(res, [ { name: 'a', count: '2'} , { name: 'b', count: '1'} ])
|
|
426
426
|
});
|
|
427
427
|
|
|
428
428
|
await tryRun("Order by colliding alias name", async () => {
|
|
429
|
-
const res = await db.items.find({ }, { select: { name: { $countAll: [] }, n: { $left: ["name", 1]} }, orderBy: { name: -1 }});
|
|
429
|
+
const res = await db.items.find!({ }, { select: { name: { $countAll: [] }, n: { $left: ["name", 1]} }, orderBy: { name: -1 }});
|
|
430
430
|
assert.deepStrictEqual(res, [ { name: '2', n: 'a' } , { name: '1', n: 'b'} ])
|
|
431
431
|
});
|
|
432
432
|
|
|
433
433
|
await tryRun("Update batch example", async () => {
|
|
434
434
|
|
|
435
|
-
await db.items4.updateBatch([
|
|
435
|
+
await db.items4.updateBatch!([
|
|
436
436
|
[{ name: "abc1" }, { name: "abc" }],
|
|
437
437
|
[{ name: "abc2" }, { name: "abc" }]
|
|
438
438
|
]);
|
|
439
|
-
assert.equal(await db.items4.count({ name: "abc" }), 2);
|
|
439
|
+
assert.equal(await db.items4.count!({ name: "abc" }), 2);
|
|
440
440
|
})
|
|
441
441
|
|
|
442
442
|
await tryRun("Function example", async () => {
|
|
443
443
|
|
|
444
|
-
const f = await db.items4.findOne({}, { select: { public: 1, p_5: { $left: ["public", 3] } } });
|
|
444
|
+
const f = await db.items4.findOne!({}, { select: { public: 1, p_5: { $left: ["public", 3] } } });
|
|
445
445
|
assert.equal(f.p_5.length, 3);
|
|
446
446
|
assert.equal(f.p_5, f.public.substr(0, 3));
|
|
447
447
|
|
|
448
448
|
// Nested function
|
|
449
|
-
const fg = await db.items2.findOne({}, { select: { id: 1, name: 1, items3: { name: "$upper" } } });// { $upper: ["public"] } } });
|
|
449
|
+
const fg = await db.items2.findOne!({}, { select: { id: 1, name: 1, items3: { name: "$upper" } } });// { $upper: ["public"] } } });
|
|
450
450
|
assert.deepStrictEqual(fg, { id: 1, name: 'a', items3: [ { name: 'A' } ] });
|
|
451
451
|
|
|
452
452
|
// Date utils
|
|
453
|
-
const Mon = await db.items4.findOne({ name: "abc" }, { select: { added: "$Mon" } });
|
|
453
|
+
const Mon = await db.items4.findOne!({ name: "abc" }, { select: { added: "$Mon" } });
|
|
454
454
|
assert.deepStrictEqual(Mon, { added: "Dec" });
|
|
455
455
|
|
|
456
456
|
// Date + agg
|
|
457
|
-
const MonAgg = await db.items4.find({ name: "abc" }, { select: { added: "$Mon", public: "$count" } });
|
|
457
|
+
const MonAgg = await db.items4.find!({ name: "abc" }, { select: { added: "$Mon", public: "$count" } });
|
|
458
458
|
assert.deepStrictEqual(MonAgg, [{ added: "Dec", public: '2' }]);
|
|
459
459
|
|
|
460
460
|
// Returning
|
|
461
|
-
const returningParam: Parameters<typeof db.items4_pub
|
|
462
|
-
let i = await db.items4_pub.insert( { name: "abc123", public: "public data", added: new Date('04 Dec 1995 00:12:00 GMT') }, returningParam);
|
|
461
|
+
const returningParam: Parameters<Required<typeof db.items4_pub>["insert"]>[1] = { returning: { id: 1, name: 1, public: 1 , $rowhash: 1, added_day: { "$day": ["added"] } }} ; // ctid: 1,
|
|
462
|
+
let i = await db.items4_pub.insert!( { name: "abc123", public: "public data", added: new Date('04 Dec 1995 00:12:00 GMT') }, returningParam);
|
|
463
463
|
assert.deepStrictEqual(i, { id: 1, name: 'abc123', public: 'public data', $rowhash: '347c26babad535aa697a794af89195fe', added_day: 'monday' }); // , ctid: '(0,1)'
|
|
464
464
|
|
|
465
|
-
let u = await db.items4_pub.update(
|
|
465
|
+
let u = await db.items4_pub.update! ({ name: "abc123" }, { public: "public data2" }, returningParam);
|
|
466
466
|
assert.deepStrictEqual(u, [{ id: 1, name: 'abc123', public: 'public data2', $rowhash: '9d18ddfbff9e13411d13f82d414644de', added_day: 'monday' }]);
|
|
467
467
|
|
|
468
|
-
let d = await db.items4_pub.delete( { name: "abc123" }, returningParam);
|
|
468
|
+
let d = await db.items4_pub.delete!( { name: "abc123" }, returningParam);
|
|
469
469
|
assert.deepStrictEqual(d, [{ id: 1, name: 'abc123', public: 'public data2', $rowhash: '9d18ddfbff9e13411d13f82d414644de', added_day: 'monday' }]);
|
|
470
470
|
|
|
471
471
|
console.log("TODO: socket.io stringifies dates")
|
|
472
472
|
});
|
|
473
473
|
|
|
474
474
|
await tryRun("JSONB filtering", async () => {
|
|
475
|
-
const row = await db.obj_table.insert({obj: { propName: 3232 }}, { returning: "*" });
|
|
476
|
-
const sameRow = await db.obj_table.findOne({obj: { propName: 3232 }});
|
|
477
|
-
const count = await db.obj_table.count({obj: { propName: 3232 }});
|
|
475
|
+
const row = await db.obj_table.insert!({obj: { propName: 3232 }}, { returning: "*" });
|
|
476
|
+
const sameRow = await db.obj_table.findOne!({obj: { propName: 3232 }});
|
|
477
|
+
const count = await db.obj_table.count!({obj: { propName: 3232 }});
|
|
478
478
|
assert.deepStrictEqual(row, sameRow);
|
|
479
479
|
assert.deepStrictEqual(+count, 1);
|
|
480
480
|
})
|
|
481
481
|
|
|
482
482
|
await tryRun("Postgis examples", async () => {
|
|
483
|
-
await db.shapes.delete();
|
|
483
|
+
await db.shapes.delete!();
|
|
484
484
|
const p1 = { ST_GeomFromText: ["POINT(-1 1)", 4326] },
|
|
485
485
|
p2 = { ST_GeomFromText: ["POINT(-2 2)", 4326] };
|
|
486
|
-
await db.shapes.insert([
|
|
486
|
+
await db.shapes.insert!([
|
|
487
487
|
{ geom: p1, geog: p1 },
|
|
488
488
|
{ geom: p2, geog: p2 },
|
|
489
489
|
])
|
|
490
490
|
|
|
491
491
|
/** Basic functions and extent filters */
|
|
492
|
-
const f = await db.shapes.findOne({ $and: [
|
|
492
|
+
const f = await db.shapes.findOne!({ $and: [
|
|
493
493
|
{"geom.&&.st_makeenvelope": [
|
|
494
494
|
-3, 2,
|
|
495
495
|
-2, 2
|
|
@@ -514,7 +514,7 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
514
514
|
});
|
|
515
515
|
|
|
516
516
|
/**Aggregate functions */
|
|
517
|
-
const aggs = await db.shapes.findOne({ }, {
|
|
517
|
+
const aggs = await db.shapes.findOne!({ }, {
|
|
518
518
|
select: {
|
|
519
519
|
xMin: { "$ST_XMin_Agg": ["geom"] },
|
|
520
520
|
xMax: { "$ST_XMax_Agg": ["geom"] },
|
|
@@ -545,13 +545,13 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
545
545
|
data = Buffer.from(str, "utf-8"),
|
|
546
546
|
mediaFile = { data, name: fileName }
|
|
547
547
|
|
|
548
|
-
const file = await db.media.insert(mediaFile, { returning: "*" });
|
|
548
|
+
const file = await db.media.insert!(mediaFile, { returning: "*" });
|
|
549
549
|
const _data = fs.readFileSync(__dirname + "/server/media/"+file.name);
|
|
550
550
|
assert.equal(str, _data.toString('utf8'));
|
|
551
551
|
|
|
552
552
|
await tryRun("Nested insert", async () => {
|
|
553
553
|
|
|
554
|
-
const { name, media: { extension, content_type, original_name } } = await db.items_with_one_media.insert({ name: "somename.txt", media: mediaFile }, { returning: "*" });
|
|
554
|
+
const { name, media: { extension, content_type, original_name } } = await db.items_with_one_media.insert!({ name: "somename.txt", media: mediaFile }, { returning: "*" });
|
|
555
555
|
|
|
556
556
|
assert.deepStrictEqual(
|
|
557
557
|
{ extension, content_type, original_name },
|
|
@@ -587,13 +587,13 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
587
587
|
data: Buffer.from("str", "utf-8"),
|
|
588
588
|
name: "will delete.txt"
|
|
589
589
|
}
|
|
590
|
-
await db.media.insert(file);
|
|
590
|
+
await db.media.insert!(file);
|
|
591
591
|
|
|
592
|
-
const files = await db.media.find({ original_name: file.name });
|
|
592
|
+
const files = await db.media.find!({ original_name: file.name });
|
|
593
593
|
assert.equal(files.length, 1);
|
|
594
594
|
const exists0 = fs.existsSync(__dirname + "/server/media/"+files[0].name);
|
|
595
595
|
assert.equal(exists0, true);
|
|
596
|
-
await db.media.delete({ original_name: file.name }, { returning: "*" });
|
|
596
|
+
await db.media.delete!({ original_name: file.name }, { returning: "*" });
|
|
597
597
|
const exists = fs.existsSync(__dirname + "/server/media/"+files[0].name);
|
|
598
598
|
assert.equal(exists, false);
|
|
599
599
|
})
|
|
@@ -609,18 +609,18 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
609
609
|
data: Buffer.from(newStr, "utf-8"),
|
|
610
610
|
name: "will update new.txt"
|
|
611
611
|
}
|
|
612
|
-
await db.media.insert(file);
|
|
613
|
-
const original = await db.media.findOne({ original_name: file.name });
|
|
612
|
+
await db.media.insert!(file);
|
|
613
|
+
const original = await db.media.findOne!({ original_name: file.name });
|
|
614
614
|
|
|
615
615
|
const initialFileStr = fs.readFileSync(__dirname + "/server/media/" + original.name).toString('utf8');
|
|
616
616
|
assert.equal(initialStr, initialFileStr);
|
|
617
617
|
|
|
618
|
-
await db.media.update({ id: original.id }, newFile);
|
|
618
|
+
await db.media.update!({ id: original.id }, newFile);
|
|
619
619
|
|
|
620
620
|
const newFileStr = fs.readFileSync(__dirname + "/server/media/" + original.name).toString('utf8');
|
|
621
621
|
assert.equal(newStr, newFileStr);
|
|
622
622
|
|
|
623
|
-
const newF = await db.media.findOne({ id: original.id });
|
|
623
|
+
const newF = await db.media.findOne!({ id: original.id });
|
|
624
624
|
|
|
625
625
|
assert.equal(newF.original_name, newFile.name)
|
|
626
626
|
});
|
|
@@ -642,11 +642,11 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
642
642
|
*/
|
|
643
643
|
|
|
644
644
|
const json = { a: true, arr: "2", arr1: 3, arr2: [1], arrStr: ["1123.string"] }
|
|
645
|
-
const fo = await db.tjson.insert({ colOneOf: "a", json }, { returning: "*"});
|
|
645
|
+
const fo = await db.tjson.insert!({ colOneOf: "a", json }, { returning: "*"});
|
|
646
646
|
// assert.deepStrictEqual(fo.json, json);
|
|
647
|
-
await db.tjson.insert({ colOneOf: "a", json: {...json, o: { o1: 2, o2: true } } })
|
|
647
|
+
await db.tjson.insert!({ colOneOf: "a", json: {...json, o: { o1: 2, o2: true } } })
|
|
648
648
|
try {
|
|
649
|
-
await db.tjson.insert({ colOneOf: "a", json: { a: true, arr: "22"} });
|
|
649
|
+
await db.tjson.insert!({ colOneOf: "a", json: { a: true, arr: "22"} });
|
|
650
650
|
throw "Should have failed"
|
|
651
651
|
} catch(e){
|
|
652
652
|
console.log("Perfect:", e)
|
|
@@ -656,21 +656,21 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
656
656
|
|
|
657
657
|
await tryRun("Exists filter example", async () => {
|
|
658
658
|
|
|
659
|
-
const fo = await db.items.findOne(),
|
|
660
|
-
f = await db.items.find();
|
|
659
|
+
const fo = await db.items.findOne!(),
|
|
660
|
+
f = await db.items.find!();
|
|
661
661
|
|
|
662
662
|
assert.deepStrictEqual(fo, { h: null, id: 1, name: 'a' }, "findOne query failed" );
|
|
663
663
|
assert.deepStrictEqual(f[0], { h: null, id: 1, name: 'a' }, "findOne query failed" );
|
|
664
664
|
});
|
|
665
665
|
|
|
666
666
|
await tryRun("Result size", async () => {
|
|
667
|
-
const is75bits = await db.items.size({
|
|
667
|
+
const is75bits = await db.items.size!({
|
|
668
668
|
}, { select: { name: 1 } });
|
|
669
669
|
assert.equal(is75bits, '75', "Result size query failed")
|
|
670
670
|
});
|
|
671
671
|
|
|
672
672
|
await tryRun("Basic exists", async () => {
|
|
673
|
-
const expect0 = await db.items.count({
|
|
673
|
+
const expect0 = await db.items.count!({
|
|
674
674
|
$and: [
|
|
675
675
|
{ $exists: { items2: { name: "a" } } },
|
|
676
676
|
{ $exists: { items3: { name: "b" } } },
|
|
@@ -680,7 +680,7 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
680
680
|
});
|
|
681
681
|
|
|
682
682
|
await tryRun("Basic fts with shorthand notation", async () => {
|
|
683
|
-
const res = await db.items.count({
|
|
683
|
+
const res = await db.items.count!({
|
|
684
684
|
$and: [
|
|
685
685
|
{ $exists: { items2: { "name.@@.to_tsquery": ["a"] } } },
|
|
686
686
|
{ $exists: { items3: { "name.@@.to_tsquery": ["b"] } } },
|
|
@@ -691,7 +691,7 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
691
691
|
});
|
|
692
692
|
|
|
693
693
|
await tryRun("Exists with shortest path wildcard filter example", async () => {
|
|
694
|
-
const expect2 = await db.items.find({
|
|
694
|
+
const expect2 = await db.items.find!({
|
|
695
695
|
$and: [
|
|
696
696
|
{ $existsJoined: { "**.items3": { name: "a" } } },
|
|
697
697
|
{ $existsJoined: { items2: { name: "a" } } }
|
|
@@ -702,7 +702,7 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
702
702
|
|
|
703
703
|
|
|
704
704
|
await tryRun("Exists with exact path filter example", async () => {
|
|
705
|
-
const _expect2 = await db.items.find({
|
|
705
|
+
const _expect2 = await db.items.find!({
|
|
706
706
|
$and: [
|
|
707
707
|
// { "items2": { name: "a" } },
|
|
708
708
|
// { "items2.items3": { name: "a" } },
|
|
@@ -713,7 +713,7 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
713
713
|
});
|
|
714
714
|
|
|
715
715
|
await tryRun("Not Exists with exact path filter example", async () => {
|
|
716
|
-
const _expect1 = await db.items.find({
|
|
716
|
+
const _expect1 = await db.items.find!({
|
|
717
717
|
$and: [
|
|
718
718
|
// { "items2": { name: "a" } },
|
|
719
719
|
// { "items2.items3": { name: "a" } },
|
|
@@ -725,14 +725,14 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
725
725
|
|
|
726
726
|
/* Upsert */
|
|
727
727
|
await tryRun("Upsert example", async () => {
|
|
728
|
-
await db.items.upsert({ name: "tx" }, { name: "tx" });
|
|
729
|
-
await db.items.upsert({ name: "tx" }, { name: "tx" });
|
|
730
|
-
assert.equal(await db.items.count({ name: "tx" }), 1, "upsert command failed");
|
|
728
|
+
await db.items.upsert!({ name: "tx" }, { name: "tx" });
|
|
729
|
+
await db.items.upsert!({ name: "tx" }, { name: "tx" });
|
|
730
|
+
assert.equal(await db.items.count!({ name: "tx" }), 1, "upsert command failed");
|
|
731
731
|
});
|
|
732
732
|
|
|
733
733
|
/* Joins example */
|
|
734
734
|
await tryRun("Joins example", async () => {
|
|
735
|
-
const items = await db.items.find({}, {
|
|
735
|
+
const items = await db.items.find!({}, {
|
|
736
736
|
select: {
|
|
737
737
|
"*": 1,
|
|
738
738
|
items3: "*",
|
|
@@ -748,13 +748,13 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
748
748
|
|
|
749
749
|
/* Joins duplicate table example */
|
|
750
750
|
await tryRun("Joins repeating table example", async () => {
|
|
751
|
-
const items2 = await db.items.find({}, {
|
|
751
|
+
const items2 = await db.items.find!({}, {
|
|
752
752
|
select: {
|
|
753
753
|
"*": 1,
|
|
754
754
|
items2: "*"
|
|
755
755
|
}
|
|
756
756
|
});
|
|
757
|
-
const items2j = await db.items.find({}, {
|
|
757
|
+
const items2j = await db.items.find!({}, {
|
|
758
758
|
select: {
|
|
759
759
|
"*": 1,
|
|
760
760
|
items2: "*",
|
|
@@ -771,18 +771,18 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
771
771
|
|
|
772
772
|
|
|
773
773
|
await tryRun("Join aggregate functions example", async () => {
|
|
774
|
-
const singleShortHandAgg = await db.items.findOne(
|
|
774
|
+
const singleShortHandAgg = await db.items.findOne!(
|
|
775
775
|
{},
|
|
776
776
|
{ select: { id: "$max" }}
|
|
777
777
|
);
|
|
778
|
-
const singleAgg = await db.items.findOne(
|
|
778
|
+
const singleAgg = await db.items.findOne!(
|
|
779
779
|
{},
|
|
780
780
|
{ select: { id: { "$max": ["id"] } }}
|
|
781
781
|
);
|
|
782
782
|
assert.deepStrictEqual(singleShortHandAgg, { id: 4 });
|
|
783
783
|
assert.deepStrictEqual(singleAgg, { id: 4 });
|
|
784
784
|
|
|
785
|
-
const shortHandAggJoined = await db.items.findOne(
|
|
785
|
+
const shortHandAggJoined = await db.items.findOne!(
|
|
786
786
|
{ id: 4 },
|
|
787
787
|
{ select: { id: 1, items2: { name: "$max" } }}
|
|
788
788
|
);
|
|
@@ -793,14 +793,14 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
793
793
|
|
|
794
794
|
/* $rowhash -> Custom column that returms md5(ctid + allowed select columns). Used in joins & CRUD to bypass PKey details */
|
|
795
795
|
await tryRun("$rowhash example", async () => {
|
|
796
|
-
const rowhash = await db.items.findOne({}, { select: { $rowhash: 1, "*": 1 }});
|
|
796
|
+
const rowhash = await db.items.findOne!({}, { select: { $rowhash: 1, "*": 1 }});
|
|
797
797
|
const f = { $rowhash: rowhash.$rowhash };
|
|
798
|
-
const rowhashView = await db.v_items.findOne({}, { select: { $rowhash: 1 }});
|
|
799
|
-
const rh1 = await db.items.findOne({ $rowhash: rowhash.$rowhash }, { select: { $rowhash: 1 }});
|
|
800
|
-
const rhView = await db.v_items.findOne({ $rowhash: rowhashView.$rowhash }, { select: { $rowhash: 1 }});
|
|
798
|
+
const rowhashView = await db.v_items.findOne!({}, { select: { $rowhash: 1 }});
|
|
799
|
+
const rh1 = await db.items.findOne!({ $rowhash: rowhash.$rowhash }, { select: { $rowhash: 1 }});
|
|
800
|
+
const rhView = await db.v_items.findOne!({ $rowhash: rowhashView.$rowhash }, { select: { $rowhash: 1 }});
|
|
801
801
|
// console.log({ rowhash, f });
|
|
802
802
|
|
|
803
|
-
await db.items.update(f, { name: 'a' });
|
|
803
|
+
await db.items.update!(f, { name: 'a' });
|
|
804
804
|
|
|
805
805
|
// console.log(rowhash, rh1)
|
|
806
806
|
// console.log(rowhashView, rhView)
|
|
@@ -818,24 +818,24 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
818
818
|
await tryRun("Reference column nested insert", async () => {
|
|
819
819
|
const nestedRow = { name: "nested_insert" };
|
|
820
820
|
const parentRow = { name: "parent insert" }
|
|
821
|
-
const pr = await db.items2.insert({ items_id: nestedRow, ...parentRow }, { returning: "*" });
|
|
821
|
+
const pr = await db.items2.insert!({ items_id: nestedRow, ...parentRow }, { returning: "*" });
|
|
822
822
|
|
|
823
|
-
const childRows = await db.items.find(nestedRow);
|
|
823
|
+
const childRows = await db.items.find!(nestedRow);
|
|
824
824
|
assert.equal(childRows.length, 1);
|
|
825
|
-
assert.deepStrictEqual(await db.items2.findOne(parentRow), { hh: null, id: pr.id, ...parentRow, items_id: childRows[0].id });
|
|
825
|
+
assert.deepStrictEqual(await db.items2.findOne!(parentRow), { hh: null, id: pr.id, ...parentRow, items_id: childRows[0].id });
|
|
826
826
|
|
|
827
827
|
});
|
|
828
828
|
|
|
829
829
|
await tryRun("Reference column deep nested insert", async () => {
|
|
830
830
|
|
|
831
|
-
const pr = await db.items4a.insert({
|
|
831
|
+
const pr = await db.items4a.insert!({
|
|
832
832
|
items_id: { name: "it" },
|
|
833
833
|
items2_id: { name: "it2", items_id: { name: "it" } },
|
|
834
834
|
name: "it4a"
|
|
835
835
|
}, { returning: "*" });
|
|
836
|
-
const itemsCount = await db.items.count({ name: "it" })
|
|
837
|
-
const items2Count = await db.items2.count({ name: "it2" })
|
|
838
|
-
const items4aCount = await db.items4a.count({ name: "it4a" })
|
|
836
|
+
const itemsCount = await db.items.count!({ name: "it" })
|
|
837
|
+
const items2Count = await db.items2.count!({ name: "it2" })
|
|
838
|
+
const items4aCount = await db.items4a.count!({ name: "it4a" })
|
|
839
839
|
|
|
840
840
|
assert.equal(+itemsCount, 2);
|
|
841
841
|
assert.equal(+items2Count, 1);
|
|
@@ -844,15 +844,15 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
844
844
|
});
|
|
845
845
|
|
|
846
846
|
await tryRun("Multi reference column nested insert", async () => {
|
|
847
|
-
await db.items_multi.insert({
|
|
847
|
+
await db.items_multi.insert!({
|
|
848
848
|
items0_id: { name: "multi" },
|
|
849
849
|
items1_id: { name: "multi" },
|
|
850
850
|
items2_id: { name: "multi" },
|
|
851
851
|
items3_id: { name: "multi" },
|
|
852
852
|
name: "root_multi"
|
|
853
853
|
}, { returning: "*" });
|
|
854
|
-
const itemsCount = await db.items.count({ name: "multi" })
|
|
855
|
-
const multiItem = await db.items_multi.findOne({ name: "root_multi" }, { select: { "*": 1, items: "*" } });
|
|
854
|
+
const itemsCount = await db.items.count!({ name: "multi" })
|
|
855
|
+
const multiItem = await db.items_multi.findOne!({ name: "root_multi" }, { select: { "*": 1, items: "*" } });
|
|
856
856
|
|
|
857
857
|
assert.equal(+itemsCount, 4);
|
|
858
858
|
assert.equal(multiItem?.name, "root_multi");
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
},
|
|
22
22
|
"../..": {
|
|
23
23
|
"name": "prostgles-server",
|
|
24
|
-
"version": "2.0.
|
|
24
|
+
"version": "2.0.281",
|
|
25
25
|
"license": "MIT",
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"@aws-sdk/client-s3": "^3.121.0",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"check-disk-space": "^3.3.1",
|
|
32
32
|
"file-type": "^17.1.4",
|
|
33
33
|
"pg-promise": "^10.11.1",
|
|
34
|
-
"prostgles-types": "^1.5.
|
|
34
|
+
"prostgles-types": "^1.5.175",
|
|
35
35
|
"sharp": "^0.30.7"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
@@ -1375,7 +1375,7 @@
|
|
|
1375
1375
|
"check-disk-space": "^3.3.1",
|
|
1376
1376
|
"file-type": "^17.1.4",
|
|
1377
1377
|
"pg-promise": "^10.11.1",
|
|
1378
|
-
"prostgles-types": "^1.5.
|
|
1378
|
+
"prostgles-types": "^1.5.175",
|
|
1379
1379
|
"sharp": "^0.30.7",
|
|
1380
1380
|
"typescript": "^4.7.4"
|
|
1381
1381
|
}
|