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.
@@ -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
- queries.push(`ALTER TABLE ${asName(tableName)} ADD CONSTRAINT ${asName(constraintName)} ${tableConf.constraints![constraintName]} ;`);
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.184",
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.158",
32
+ "prostgles-types": "^1.5.160",
33
33
  "sharp": "^0.30.5"
34
34
  },
35
35
  "devDependencies": {
@@ -1 +1 @@
1
- 10213
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.155",
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.155",
71
- "resolved": "https://registry.npmjs.org/prostgles-client/-/prostgles-client-1.5.155.tgz",
72
- "integrity": "sha512-orBcUdhUN3Y2RUnNWPqlZEQ123UJIQQ59e3cx873Tx58UlKnSKzRiY2Gi9WVaUF4fW157Rvfay3Rsb0qRRgbeQ==",
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.157"
74
+ "prostgles-types": "^1.5.160"
75
75
  }
76
76
  },
77
77
  "node_modules/prostgles-types": {
78
- "version": "1.5.157",
79
- "resolved": "https://registry.npmjs.org/prostgles-types/-/prostgles-types-1.5.157.tgz",
80
- "integrity": "sha512-+EyjDatAoAFlEglsBH7wjzIQMixRgyJB/ST3/ibH2/+EOr6RQFzTt4maJUVborcUhlQCj7MKjl/ddYcbch6vTQ=="
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.155",
180
- "resolved": "https://registry.npmjs.org/prostgles-client/-/prostgles-client-1.5.155.tgz",
181
- "integrity": "sha512-orBcUdhUN3Y2RUnNWPqlZEQ123UJIQQ59e3cx873Tx58UlKnSKzRiY2Gi9WVaUF4fW157Rvfay3Rsb0qRRgbeQ==",
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.157"
183
+ "prostgles-types": "^1.5.160"
184
184
  }
185
185
  },
186
186
  "prostgles-types": {
187
- "version": "1.5.157",
188
- "resolved": "https://registry.npmjs.org/prostgles-types/-/prostgles-types-1.5.157.tgz",
189
- "integrity": "sha512-+EyjDatAoAFlEglsBH7wjzIQMixRgyJB/ST3/ibH2/+EOr6RQFzTt4maJUVborcUhlQCj7MKjl/ddYcbch6vTQ=="
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",
@@ -13,7 +13,7 @@
13
13
  "license": "ISC",
14
14
  "dependencies": {
15
15
  "@types/node": "^14.14.16",
16
- "prostgles-client": "^1.5.155",
16
+ "prostgles-client": "^1.5.161",
17
17
  "prostgles-types": "^1.5.68",
18
18
  "socket.io-client": "^4.5.1"
19
19
  }
@@ -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,iBAurB/F"}
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.183",
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.158",
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.158",
1374
+ "prostgles-types": "^1.5.160",
1375
1375
  "sharp": "^0.30.5",
1376
1376
  "typescript": "^4.7.3"
1377
1377
  }