prostgles-server 2.0.184 → 2.0.187
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.d.ts.map +1 -1
- package/dist/DboBuilder.js +16 -9
- package/dist/DboBuilder.js.map +1 -1
- package/dist/Prostgles.d.ts +15 -13
- package/dist/Prostgles.d.ts.map +1 -1
- package/dist/Prostgles.js +7 -7
- package/dist/Prostgles.js.map +1 -1
- package/dist/PubSubManager.d.ts +1 -0
- package/dist/PubSubManager.d.ts.map +1 -1
- package/dist/PubSubManager.js +2 -1
- package/dist/PubSubManager.js.map +1 -1
- package/dist/QueryBuilder.d.ts +7 -3
- package/dist/QueryBuilder.d.ts.map +1 -1
- package/dist/TableConfig.d.ts.map +1 -1
- package/dist/TableConfig.js +16 -1
- package/dist/TableConfig.js.map +1 -1
- package/lib/DboBuilder.d.ts.map +1 -1
- package/lib/DboBuilder.js +16 -9
- package/lib/DboBuilder.ts +17 -13
- package/lib/Prostgles.d.ts +15 -13
- package/lib/Prostgles.d.ts.map +1 -1
- package/lib/Prostgles.js +7 -7
- package/lib/Prostgles.ts +19 -17
- package/lib/PubSubManager.d.ts +1 -0
- package/lib/PubSubManager.d.ts.map +1 -1
- package/lib/PubSubManager.js +2 -1
- package/lib/PubSubManager.ts +3 -1
- package/lib/SchemaWatchManager.ts +72 -0
- package/lib/TableConfig.d.ts.map +1 -1
- package/lib/TableConfig.js +16 -1
- package/lib/TableConfig.ts +19 -2
- 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/isomorphic_queries.d.ts.map +1 -1
- package/tests/isomorphic_queries.js +1 -0
- package/tests/isomorphic_queries.ts +1 -0
- package/tests/server/package-lock.json +3 -3
package/lib/TableConfig.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { doesNotMatch } from "assert";
|
|
1
2
|
import { getKeys, asName, AnyObject, TableInfo } from "prostgles-types";
|
|
2
|
-
import { isPlainObject, JoinInfo } from "./DboBuilder";
|
|
3
|
+
import { DboBuilder, isPlainObject, JoinInfo } from "./DboBuilder";
|
|
3
4
|
import { ALLOWED_EXTENSION, ALLOWED_CONTENT_TYPE } from "./FileManager";
|
|
4
5
|
import { DB, DBHandlerServer, Prostgles } from "./Prostgles";
|
|
5
6
|
import { asValue } from "./PubSubManager";
|
|
@@ -429,8 +430,11 @@ export default class TableConfigurator<LANG_IDS = { en: 1 }> {
|
|
|
429
430
|
}
|
|
430
431
|
}
|
|
431
432
|
if ("constraints" in tableConf && tableConf.constraints) {
|
|
433
|
+
const constraints = await getTableConstraings(this.db, tableName);
|
|
432
434
|
getKeys(tableConf.constraints).map(constraintName => {
|
|
433
|
-
|
|
435
|
+
if(!constraints.some(c => c.conname === constraintName)){
|
|
436
|
+
queries.push(`ALTER TABLE ${asName(tableName)} ADD CONSTRAINT ${asName(constraintName)} ${tableConf.constraints![constraintName]} ;`);
|
|
437
|
+
}
|
|
434
438
|
});
|
|
435
439
|
}
|
|
436
440
|
if ("indexes" in tableConf && tableConf.indexes) {
|
|
@@ -461,4 +465,17 @@ async function columnExists(args: { tableName: string; colName: string; db: DB }
|
|
|
461
465
|
WHERE table_name=${asValue(tableName)} and column_name=${asValue(colName)}
|
|
462
466
|
LIMIT 1;
|
|
463
467
|
`))?.column_name);
|
|
468
|
+
}
|
|
469
|
+
|
|
470
|
+
function getTableConstraings(db: DB, tableName: string): Promise<{ oid: number; conname: string; definition: string; }[]>{
|
|
471
|
+
return db.any(`
|
|
472
|
+
SELECT con.*, pg_get_constraintdef(con.oid)
|
|
473
|
+
FROM pg_catalog.pg_constraint con
|
|
474
|
+
INNER JOIN pg_catalog.pg_class rel
|
|
475
|
+
ON rel.oid = con.conrelid
|
|
476
|
+
INNER JOIN pg_catalog.pg_namespace nsp
|
|
477
|
+
ON nsp.oid = connamespace
|
|
478
|
+
WHERE 1=1
|
|
479
|
+
AND nsp.nspname = current_schema
|
|
480
|
+
AND rel.relname = ` + "${tableName}", { tableName })
|
|
464
481
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "prostgles-server",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.187",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"bluebird": "^3.7.2",
|
|
30
30
|
"file-type": "^16.5.3",
|
|
31
31
|
"pg-promise": "^10.11.1",
|
|
32
|
-
"prostgles-types": "^1.5.
|
|
32
|
+
"prostgles-types": "^1.5.160",
|
|
33
33
|
"sharp": "^0.30.5"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
package/tests/client/PID.txt
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
3011
|
|
@@ -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.161",
|
|
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.161",
|
|
71
|
+
"resolved": "https://registry.npmjs.org/prostgles-client/-/prostgles-client-1.5.161.tgz",
|
|
72
|
+
"integrity": "sha512-/1NHXfyKtoPLquNjv8eWIvk0ezjogaL3QRJrGpUiH6vt74MFVQ5FRwtrct37fj0fBwsKS4HrHduwh33Ohv1ycw==",
|
|
73
73
|
"dependencies": {
|
|
74
|
-
"prostgles-types": "^1.5.
|
|
74
|
+
"prostgles-types": "^1.5.160"
|
|
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.160",
|
|
79
|
+
"resolved": "https://registry.npmjs.org/prostgles-types/-/prostgles-types-1.5.160.tgz",
|
|
80
|
+
"integrity": "sha512-ycX5dqkrf73qAvAylhn6jHsL0eBq3/Fmky3YEIm7vTqJFJfS+5EmFPxF4CdjPWs3WHZEhuGCoXlZZo/rWFK0eQ=="
|
|
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.161",
|
|
180
|
+
"resolved": "https://registry.npmjs.org/prostgles-client/-/prostgles-client-1.5.161.tgz",
|
|
181
|
+
"integrity": "sha512-/1NHXfyKtoPLquNjv8eWIvk0ezjogaL3QRJrGpUiH6vt74MFVQ5FRwtrct37fj0fBwsKS4HrHduwh33Ohv1ycw==",
|
|
182
182
|
"requires": {
|
|
183
|
-
"prostgles-types": "^1.5.
|
|
183
|
+
"prostgles-types": "^1.5.160"
|
|
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.160",
|
|
188
|
+
"resolved": "https://registry.npmjs.org/prostgles-types/-/prostgles-types-1.5.160.tgz",
|
|
189
|
+
"integrity": "sha512-ycX5dqkrf73qAvAylhn6jHsL0eBq3/Fmky3YEIm7vTqJFJfS+5EmFPxF4CdjPWs3WHZEhuGCoXlZZo/rWFK0eQ=="
|
|
190
190
|
},
|
|
191
191
|
"socket.io-client": {
|
|
192
192
|
"version": "4.5.1",
|
|
@@ -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,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGjD,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,EAAE,GAAG,CAAC,EAAE,QAAQ,iBAWzE;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,OAAO,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,
|
|
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,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGjD,wBAAsB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,EAAE,GAAG,CAAC,EAAE,QAAQ,iBAWzE;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,OAAO,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,iBAwrB/F"}
|
|
@@ -295,6 +295,7 @@ async function isomorphic(db) {
|
|
|
295
295
|
});
|
|
296
296
|
await tryRunP("subscribe", async (resolve, reject) => {
|
|
297
297
|
await db.various.insert({ id: 99 });
|
|
298
|
+
console.log("subscribing");
|
|
298
299
|
const sub = await db.various.subscribe({ id: 99 }, {}, async (items) => {
|
|
299
300
|
const item = items[0];
|
|
300
301
|
if (item && item.name === "zz3zz3") {
|
|
@@ -327,6 +327,7 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
|
|
|
327
327
|
|
|
328
328
|
await tryRunP("subscribe", async (resolve, reject) => {
|
|
329
329
|
await db.various.insert({ id: 99 });
|
|
330
|
+
console.log("subscribing")
|
|
330
331
|
const sub = await db.various.subscribe({ id: 99 }, { }, async items => {
|
|
331
332
|
const item = items[0];
|
|
332
333
|
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
},
|
|
22
22
|
"../..": {
|
|
23
23
|
"name": "prostgles-server",
|
|
24
|
-
"version": "2.0.
|
|
24
|
+
"version": "2.0.186",
|
|
25
25
|
"license": "MIT",
|
|
26
26
|
"dependencies": {
|
|
27
27
|
"@aws-sdk/client-s3": "^3.95.0",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"bluebird": "^3.7.2",
|
|
30
30
|
"file-type": "^16.5.3",
|
|
31
31
|
"pg-promise": "^10.11.1",
|
|
32
|
-
"prostgles-types": "^1.5.
|
|
32
|
+
"prostgles-types": "^1.5.160",
|
|
33
33
|
"sharp": "^0.30.5"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
@@ -1371,7 +1371,7 @@
|
|
|
1371
1371
|
"bluebird": "^3.7.2",
|
|
1372
1372
|
"file-type": "^16.5.3",
|
|
1373
1373
|
"pg-promise": "^10.11.1",
|
|
1374
|
-
"prostgles-types": "^1.5.
|
|
1374
|
+
"prostgles-types": "^1.5.160",
|
|
1375
1375
|
"sharp": "^0.30.5",
|
|
1376
1376
|
"typescript": "^4.7.3"
|
|
1377
1377
|
}
|