prostgles-server 2.0.200 → 2.0.203

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.
Files changed (66) hide show
  1. package/dist/DboBuilder/delete.d.ts +5 -0
  2. package/dist/DboBuilder/delete.d.ts.map +1 -0
  3. package/dist/DboBuilder/delete.js +121 -0
  4. package/dist/DboBuilder/delete.js.map +1 -0
  5. package/dist/DboBuilder/insert.d.ts.map +1 -1
  6. package/dist/DboBuilder/insert.js +0 -4
  7. package/dist/DboBuilder/insert.js.map +1 -1
  8. package/dist/DboBuilder/insertDataParse.d.ts.map +1 -1
  9. package/dist/DboBuilder/insertDataParse.js +2 -43
  10. package/dist/DboBuilder/insertDataParse.js.map +1 -1
  11. package/dist/DboBuilder/update.d.ts +5 -0
  12. package/dist/DboBuilder/update.d.ts.map +1 -0
  13. package/dist/DboBuilder/update.js +114 -0
  14. package/dist/DboBuilder/update.js.map +1 -0
  15. package/dist/DboBuilder/uploadFile.d.ts +6 -0
  16. package/dist/DboBuilder/uploadFile.d.ts.map +1 -0
  17. package/dist/DboBuilder/uploadFile.js +48 -0
  18. package/dist/DboBuilder/uploadFile.js.map +1 -0
  19. package/dist/DboBuilder.d.ts +4 -2
  20. package/dist/DboBuilder.d.ts.map +1 -1
  21. package/dist/DboBuilder.js +12 -174
  22. package/dist/DboBuilder.js.map +1 -1
  23. package/dist/FileManager.d.ts.map +1 -1
  24. package/dist/FileManager.js +2 -0
  25. package/dist/FileManager.js.map +1 -1
  26. package/dist/PubSubManager.d.ts +2 -4
  27. package/dist/PubSubManager.d.ts.map +1 -1
  28. package/dist/PubSubManager.js +12 -7
  29. package/dist/PubSubManager.js.map +1 -1
  30. package/dist/QueryBuilder.d.ts +5 -1
  31. package/dist/QueryBuilder.d.ts.map +1 -1
  32. package/lib/DboBuilder/delete.d.ts +5 -0
  33. package/lib/DboBuilder/delete.d.ts.map +1 -0
  34. package/lib/DboBuilder/delete.js +120 -0
  35. package/lib/DboBuilder/delete.ts +127 -0
  36. package/lib/DboBuilder/insert.d.ts.map +1 -1
  37. package/lib/DboBuilder/insert.js +0 -4
  38. package/lib/DboBuilder/insert.ts +0 -4
  39. package/lib/DboBuilder/insertDataParse.d.ts.map +1 -1
  40. package/lib/DboBuilder/insertDataParse.js +2 -43
  41. package/lib/DboBuilder/insertDataParse.ts +2 -46
  42. package/lib/DboBuilder/update.d.ts +5 -0
  43. package/lib/DboBuilder/update.d.ts.map +1 -0
  44. package/lib/DboBuilder/update.js +113 -0
  45. package/lib/DboBuilder/update.ts +129 -0
  46. package/lib/DboBuilder/uploadFile.d.ts +6 -0
  47. package/lib/DboBuilder/uploadFile.d.ts.map +1 -0
  48. package/lib/DboBuilder/uploadFile.js +47 -0
  49. package/lib/DboBuilder/uploadFile.ts +50 -0
  50. package/lib/DboBuilder.d.ts +4 -2
  51. package/lib/DboBuilder.d.ts.map +1 -1
  52. package/lib/DboBuilder.js +12 -174
  53. package/lib/DboBuilder.ts +16 -200
  54. package/lib/FileManager.d.ts.map +1 -1
  55. package/lib/FileManager.js +2 -0
  56. package/lib/FileManager.ts +1 -0
  57. package/lib/PubSubManager.d.ts +2 -4
  58. package/lib/PubSubManager.d.ts.map +1 -1
  59. package/lib/PubSubManager.js +12 -7
  60. package/lib/PubSubManager.ts +16 -10
  61. package/package.json +2 -2
  62. package/tests/client/PID.txt +1 -1
  63. package/tests/isomorphic_queries.d.ts.map +1 -1
  64. package/tests/isomorphic_queries.js +33 -1
  65. package/tests/isomorphic_queries.ts +39 -2
  66. package/tests/server/package-lock.json +3 -3
@@ -90,8 +90,8 @@ type AddSubscriptionParams = SubscriptionParams & {
90
90
 
91
91
  export type PubSubManagerOptions = {
92
92
  dboBuilder: DboBuilder;
93
- db: DB;
94
- dbo: DBHandlerServer;
93
+ // db: DB;
94
+ // dbo: DBHandlerServer;
95
95
  wsChannelNamePrefix?: string;
96
96
  pgChannelName?: string;
97
97
  onSchemaChange?: (event: { command: string; query: string }) => void;
@@ -101,8 +101,13 @@ export class PubSubManager {
101
101
  static DELIMITER = '|$prstgls$|';
102
102
 
103
103
  dboBuilder: DboBuilder;
104
- db: DB;
105
- dbo: DBHandlerServer;
104
+ get db(): DB {
105
+ return this.dboBuilder.db;
106
+ }
107
+ get dbo(): DBHandlerServer {
108
+ return this.dboBuilder.dbo;
109
+ }
110
+
106
111
  _triggers?: Record<string, string[]>;
107
112
  sockets: any;
108
113
  subs: { [ke: string]: { [ke: string]: { subs: SubscriptionParams[] } } };
@@ -113,12 +118,11 @@ export class PubSubManager {
113
118
  postgresNotifListenManager?: PostgresNotifListenManager;
114
119
 
115
120
  private constructor(options: PubSubManagerOptions) {
116
- const { db, dbo, wsChannelNamePrefix, pgChannelName, onSchemaChange, dboBuilder } = options;
117
- if (!db || !dbo) {
121
+ const { wsChannelNamePrefix, pgChannelName, onSchemaChange, dboBuilder } = options;
122
+ if (!dboBuilder.db || !dboBuilder.dbo) {
118
123
  throw 'MISSING: db_pg, db';
119
124
  }
120
- this.db = db;
121
- this.dbo = dbo;
125
+
122
126
  this.onSchemaChange = onSchemaChange;
123
127
  this.dboBuilder = dboBuilder;
124
128
 
@@ -1117,7 +1121,9 @@ export class PubSubManager {
1117
1121
  return new Promise(async (resolve, reject) => {
1118
1122
  /* TODO: Retire subOne -> it's redundant */
1119
1123
  // this.dbo[table_name][subOne? "findOne" : "find"](filter, params, null, table_rules)
1120
- if (!this.dbo?.[table_name]?.find) throw "1107 this.dbo[table_name].find";
1124
+ if (!this.dbo?.[table_name]?.find) {
1125
+ throw new Error(`1107 this.dbo.${table_name}.find`);
1126
+ }
1121
1127
 
1122
1128
  this.dbo?.[table_name]?.find?.(filter, params, undefined, table_rules)
1123
1129
  .then(data => {
@@ -1128,7 +1134,7 @@ export class PubSubManager {
1128
1134
  resolve(data);
1129
1135
  });
1130
1136
  /* TO DO: confirm receiving data or server will unsubscribe
1131
- { data }, (cb)=> { console.log(cb) });
1137
+ { data }, (cb)=> { console.log(cb) });
1132
1138
  */
1133
1139
  } else if (func) {
1134
1140
  func(data);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prostgles-server",
3
- "version": "2.0.200",
3
+ "version": "2.0.203",
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": "^17.1.2",
31
31
  "pg-promise": "^10.11.1",
32
- "prostgles-types": "^1.5.163",
32
+ "prostgles-types": "^1.5.165",
33
33
  "sharp": "^0.30.7"
34
34
  },
35
35
  "devDependencies": {
@@ -1 +1 @@
1
- 14222
1
+ 66713
@@ -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,OAAO,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,iBA2vB/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,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,OAAO,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,iBAgyB/F"}
@@ -510,7 +510,39 @@ async function isomorphic(db) {
510
510
  // });
511
511
  });
512
512
  await tryRun("Local file delete", async () => {
513
- const file = await db.media.delete({ name: fileName }, { returning: "*" });
513
+ const file = {
514
+ data: Buffer.from("str", "utf-8"),
515
+ name: "will delete.txt"
516
+ };
517
+ await db.media.insert(file);
518
+ const files = await db.media.find({ original_name: file.name });
519
+ assert_1.strict.equal(files.length, 1);
520
+ const exists0 = fs.existsSync(__dirname + "/server/media/" + files[0].name);
521
+ assert_1.strict.equal(exists0, true);
522
+ await db.media.delete({ original_name: file.name }, { returning: "*" });
523
+ const exists = fs.existsSync(__dirname + "/server/media/" + files[0].name);
524
+ assert_1.strict.equal(exists, false);
525
+ });
526
+ await tryRun("Local file update", async () => {
527
+ const initialStr = "str";
528
+ const newStr = "str new";
529
+ const file = {
530
+ data: Buffer.from(initialStr, "utf-8"),
531
+ name: "will update.txt"
532
+ };
533
+ const newFile = {
534
+ data: Buffer.from(newStr, "utf-8"),
535
+ name: "will update new.txt"
536
+ };
537
+ await db.media.insert(file);
538
+ const original = await db.media.findOne({ original_name: file.name });
539
+ const initialFileStr = fs.readFileSync(__dirname + "/server/media/" + original.name).toString('utf8');
540
+ assert_1.strict.equal(initialStr, initialFileStr);
541
+ await db.media.update({ id: original.id }, newFile);
542
+ const newFileStr = fs.readFileSync(__dirname + "/server/media/" + original.name).toString('utf8');
543
+ assert_1.strict.equal(newStr, newFileStr);
544
+ const newF = await db.media.findOne({ id: original.id });
545
+ assert_1.strict.equal(newF.original_name, newFile.name);
514
546
  });
515
547
  await tryRun("Exists filter example", async () => {
516
548
  const fo = await db.items.findOne(), f = await db.items.find();
@@ -581,12 +581,49 @@ export default async function isomorphic(db: Partial<DBHandlerServer> | Partial<
581
581
  // });
582
582
  });
583
583
 
584
- await tryRun("Local file delete", async () => {
585
584
 
586
- const file = await db.media.delete({ name: fileName }, { returning: "*" });
585
+ await tryRun("Local file delete", async () => {
586
+ const file = {
587
+ data: Buffer.from("str", "utf-8"),
588
+ name: "will delete.txt"
589
+ }
590
+ await db.media.insert(file);
587
591
 
592
+ const files = await db.media.find({ original_name: file.name });
593
+ assert.equal(files.length, 1);
594
+ const exists0 = fs.existsSync(__dirname + "/server/media/"+files[0].name);
595
+ assert.equal(exists0, true);
596
+ await db.media.delete({ original_name: file.name }, { returning: "*" });
597
+ const exists = fs.existsSync(__dirname + "/server/media/"+files[0].name);
598
+ assert.equal(exists, false);
588
599
  })
589
600
 
601
+ await tryRun("Local file update", async () => {
602
+ const initialStr = "str";
603
+ const newStr = "str new";
604
+ const file = {
605
+ data: Buffer.from(initialStr, "utf-8"),
606
+ name: "will update.txt"
607
+ }
608
+ const newFile = {
609
+ data: Buffer.from(newStr, "utf-8"),
610
+ name: "will update new.txt"
611
+ }
612
+ await db.media.insert(file);
613
+ const original = await db.media.findOne({ original_name: file.name });
614
+
615
+ const initialFileStr = fs.readFileSync(__dirname + "/server/media/" + original.name).toString('utf8');
616
+ assert.equal(initialStr, initialFileStr);
617
+
618
+ await db.media.update({ id: original.id }, newFile);
619
+
620
+ const newFileStr = fs.readFileSync(__dirname + "/server/media/" + original.name).toString('utf8');
621
+ assert.equal(newStr, newFileStr);
622
+
623
+ const newF = await db.media.findOne({ id: original.id });
624
+
625
+ assert.equal(newF.original_name, newFile.name)
626
+ })
590
627
 
591
628
  await tryRun("Exists filter example", async () => {
592
629
 
@@ -21,7 +21,7 @@
21
21
  },
22
22
  "../..": {
23
23
  "name": "prostgles-server",
24
- "version": "2.0.199",
24
+ "version": "2.0.202",
25
25
  "license": "MIT",
26
26
  "dependencies": {
27
27
  "@aws-sdk/client-s3": "^3.121.0",
@@ -29,7 +29,7 @@
29
29
  "bluebird": "^3.7.2",
30
30
  "file-type": "^17.1.2",
31
31
  "pg-promise": "^10.11.1",
32
- "prostgles-types": "^1.5.163",
32
+ "prostgles-types": "^1.5.165",
33
33
  "sharp": "^0.30.7"
34
34
  },
35
35
  "devDependencies": {
@@ -1371,7 +1371,7 @@
1371
1371
  "bluebird": "^3.7.2",
1372
1372
  "file-type": "^17.1.2",
1373
1373
  "pg-promise": "^10.11.1",
1374
- "prostgles-types": "^1.5.163",
1374
+ "prostgles-types": "^1.5.165",
1375
1375
  "sharp": "^0.30.7",
1376
1376
  "typescript": "^4.7.4"
1377
1377
  }