prostgles-server 3.0.87 → 3.0.89

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 (212) hide show
  1. package/.eslintignore +5 -0
  2. package/.eslintrc.json +30 -0
  3. package/dist/DBEventsManager.js +1 -1
  4. package/dist/DBEventsManager.js.map +1 -1
  5. package/dist/DBSchemaBuilder.d.ts.map +1 -1
  6. package/dist/DBSchemaBuilder.js +6 -6
  7. package/dist/DBSchemaBuilder.js.map +1 -1
  8. package/dist/DboBuilder/QueryBuilder/Functions.js +9 -9
  9. package/dist/DboBuilder/QueryBuilder/Functions.js.map +1 -1
  10. package/dist/DboBuilder/QueryBuilder/QueryBuilder.d.ts.map +1 -1
  11. package/dist/DboBuilder/QueryBuilder/QueryBuilder.js +8 -7
  12. package/dist/DboBuilder/QueryBuilder/QueryBuilder.js.map +1 -1
  13. package/dist/DboBuilder/QueryBuilder/makeSelectQuery.d.ts.map +1 -1
  14. package/dist/DboBuilder/QueryBuilder/makeSelectQuery.js +4 -4
  15. package/dist/DboBuilder/QueryBuilder/makeSelectQuery.js.map +1 -1
  16. package/dist/DboBuilder/TableHandler.d.ts.map +1 -1
  17. package/dist/DboBuilder/TableHandler.js +18 -20
  18. package/dist/DboBuilder/TableHandler.js.map +1 -1
  19. package/dist/DboBuilder/ViewHandler.d.ts +0 -10
  20. package/dist/DboBuilder/ViewHandler.d.ts.map +1 -1
  21. package/dist/DboBuilder/ViewHandler.js +50 -63
  22. package/dist/DboBuilder/ViewHandler.js.map +1 -1
  23. package/dist/DboBuilder/delete.js +0 -1
  24. package/dist/DboBuilder/delete.js.map +1 -1
  25. package/dist/DboBuilder/getColumns.js +5 -4
  26. package/dist/DboBuilder/getColumns.js.map +1 -1
  27. package/dist/DboBuilder/getCondition.d.ts.map +1 -1
  28. package/dist/DboBuilder/getCondition.js +6 -6
  29. package/dist/DboBuilder/getCondition.js.map +1 -1
  30. package/dist/DboBuilder/insert.js +15 -16
  31. package/dist/DboBuilder/insert.js.map +1 -1
  32. package/dist/DboBuilder/insertDataParse.d.ts.map +1 -1
  33. package/dist/DboBuilder/insertDataParse.js +9 -10
  34. package/dist/DboBuilder/insertDataParse.js.map +1 -1
  35. package/dist/DboBuilder/parseUpdateRules.js +2 -2
  36. package/dist/DboBuilder/parseUpdateRules.js.map +1 -1
  37. package/dist/DboBuilder/runSQL.d.ts.map +1 -1
  38. package/dist/DboBuilder/runSQL.js +5 -5
  39. package/dist/DboBuilder/runSQL.js.map +1 -1
  40. package/dist/DboBuilder/subscribe.js +3 -3
  41. package/dist/DboBuilder/subscribe.js.map +1 -1
  42. package/dist/DboBuilder/update.js +5 -6
  43. package/dist/DboBuilder/update.js.map +1 -1
  44. package/dist/DboBuilder/uploadFile.d.ts.map +1 -1
  45. package/dist/DboBuilder/uploadFile.js +1 -1
  46. package/dist/DboBuilder/uploadFile.js.map +1 -1
  47. package/dist/DboBuilder.d.ts.map +1 -1
  48. package/dist/DboBuilder.js +13 -14
  49. package/dist/DboBuilder.js.map +1 -1
  50. package/dist/FileManager.d.ts.map +1 -1
  51. package/dist/FileManager.js +3 -5
  52. package/dist/FileManager.js.map +1 -1
  53. package/dist/Filtering.js +7 -7
  54. package/dist/Filtering.js.map +1 -1
  55. package/dist/JSONBValidation/validate_jsonb_schema_sql.d.ts +3 -0
  56. package/dist/JSONBValidation/validate_jsonb_schema_sql.d.ts.map +1 -0
  57. package/dist/JSONBValidation/validate_jsonb_schema_sql.js +295 -0
  58. package/dist/JSONBValidation/validate_jsonb_schema_sql.js.map +1 -0
  59. package/dist/JSONBValidation/validation.d.ts +108 -0
  60. package/dist/JSONBValidation/validation.d.ts.map +1 -0
  61. package/dist/JSONBValidation/validation.js +222 -0
  62. package/dist/JSONBValidation/validation.js.map +1 -0
  63. package/dist/PostgresNotifListenManager.js +1 -1
  64. package/dist/PostgresNotifListenManager.js.map +1 -1
  65. package/dist/Prostgles.d.ts.map +1 -1
  66. package/dist/Prostgles.js +20 -20
  67. package/dist/Prostgles.js.map +1 -1
  68. package/dist/PubSubManager/initPubSubManager.d.ts.map +1 -1
  69. package/dist/PubSubManager/initPubSubManager.js +10 -7
  70. package/dist/PubSubManager/initPubSubManager.js.map +1 -1
  71. package/dist/PublishParser.d.ts.map +1 -1
  72. package/dist/PublishParser.js +122 -125
  73. package/dist/PublishParser.js.map +1 -1
  74. package/dist/SyncReplication.d.ts.map +1 -1
  75. package/dist/SyncReplication.js +19 -16
  76. package/dist/SyncReplication.js.map +1 -1
  77. package/dist/TableConfig.d.ts +9 -5
  78. package/dist/TableConfig.d.ts.map +1 -1
  79. package/dist/TableConfig.js +33 -12
  80. package/dist/TableConfig.js.map +1 -1
  81. package/dist/index.js +1 -1
  82. package/dist/index.js.map +1 -1
  83. package/dist/shortestPath.js +11 -11
  84. package/dist/shortestPath.js.map +1 -1
  85. package/dist/validation.d.ts +50 -24
  86. package/dist/validation.d.ts.map +1 -1
  87. package/dist/validation.js +177 -53
  88. package/dist/validation.js.map +1 -1
  89. package/lib/AuthHandler.d.ts +11 -11
  90. package/lib/AuthHandler.d.ts.map +1 -1
  91. package/lib/DBEventsManager.js +1 -1
  92. package/lib/DBEventsManager.ts +1 -1
  93. package/lib/DBSchemaBuilder.d.ts +3 -3
  94. package/lib/DBSchemaBuilder.d.ts.map +1 -1
  95. package/lib/DBSchemaBuilder.js +6 -6
  96. package/lib/DBSchemaBuilder.ts +10 -12
  97. package/lib/DboBuilder/QueryBuilder/Functions.d.ts +3 -3
  98. package/lib/DboBuilder/QueryBuilder/Functions.d.ts.map +1 -1
  99. package/lib/DboBuilder/QueryBuilder/Functions.js +9 -9
  100. package/lib/DboBuilder/QueryBuilder/Functions.ts +13 -13
  101. package/lib/DboBuilder/QueryBuilder/QueryBuilder.d.ts +3 -3
  102. package/lib/DboBuilder/QueryBuilder/QueryBuilder.d.ts.map +1 -1
  103. package/lib/DboBuilder/QueryBuilder/QueryBuilder.js +8 -7
  104. package/lib/DboBuilder/QueryBuilder/QueryBuilder.ts +12 -12
  105. package/lib/DboBuilder/QueryBuilder/makeSelectQuery.d.ts.map +1 -1
  106. package/lib/DboBuilder/QueryBuilder/makeSelectQuery.js +4 -4
  107. package/lib/DboBuilder/QueryBuilder/makeSelectQuery.ts +5 -5
  108. package/lib/DboBuilder/TableHandler.d.ts +1 -1
  109. package/lib/DboBuilder/TableHandler.d.ts.map +1 -1
  110. package/lib/DboBuilder/TableHandler.js +18 -20
  111. package/lib/DboBuilder/TableHandler.ts +21 -20
  112. package/lib/DboBuilder/ViewHandler.d.ts +1 -11
  113. package/lib/DboBuilder/ViewHandler.d.ts.map +1 -1
  114. package/lib/DboBuilder/ViewHandler.js +50 -63
  115. package/lib/DboBuilder/ViewHandler.ts +68 -97
  116. package/lib/DboBuilder/delete.js +0 -1
  117. package/lib/DboBuilder/delete.ts +1 -1
  118. package/lib/DboBuilder/getColumns.js +5 -4
  119. package/lib/DboBuilder/getColumns.ts +5 -5
  120. package/lib/DboBuilder/getCondition.d.ts.map +1 -1
  121. package/lib/DboBuilder/getCondition.js +6 -6
  122. package/lib/DboBuilder/getCondition.ts +7 -7
  123. package/lib/DboBuilder/insert.js +15 -16
  124. package/lib/DboBuilder/insert.ts +18 -18
  125. package/lib/DboBuilder/insertDataParse.d.ts.map +1 -1
  126. package/lib/DboBuilder/insertDataParse.js +9 -10
  127. package/lib/DboBuilder/insertDataParse.ts +42 -43
  128. package/lib/DboBuilder/parseUpdateRules.js +2 -2
  129. package/lib/DboBuilder/parseUpdateRules.ts +2 -2
  130. package/lib/DboBuilder/runSQL.d.ts.map +1 -1
  131. package/lib/DboBuilder/runSQL.js +5 -5
  132. package/lib/DboBuilder/runSQL.ts +6 -6
  133. package/lib/DboBuilder/subscribe.d.ts +1 -1
  134. package/lib/DboBuilder/subscribe.d.ts.map +1 -1
  135. package/lib/DboBuilder/subscribe.js +3 -3
  136. package/lib/DboBuilder/subscribe.ts +3 -3
  137. package/lib/DboBuilder/update.js +5 -6
  138. package/lib/DboBuilder/update.ts +6 -6
  139. package/lib/DboBuilder/uploadFile.d.ts.map +1 -1
  140. package/lib/DboBuilder/uploadFile.js +1 -1
  141. package/lib/DboBuilder/uploadFile.ts +2 -2
  142. package/lib/DboBuilder.d.ts +22 -22
  143. package/lib/DboBuilder.d.ts.map +1 -1
  144. package/lib/DboBuilder.js +13 -14
  145. package/lib/DboBuilder.ts +19 -19
  146. package/lib/FileManager.d.ts +6 -6
  147. package/lib/FileManager.d.ts.map +1 -1
  148. package/lib/FileManager.js +3 -5
  149. package/lib/FileManager.ts +7 -6
  150. package/lib/Filtering.d.ts +1 -1
  151. package/lib/Filtering.d.ts.map +1 -1
  152. package/lib/Filtering.js +7 -7
  153. package/lib/Filtering.ts +7 -7
  154. package/lib/JSONBValidation/validate_jsonb_schema_sql.d.ts +3 -0
  155. package/lib/JSONBValidation/validate_jsonb_schema_sql.d.ts.map +1 -0
  156. package/lib/JSONBValidation/validate_jsonb_schema_sql.js +294 -0
  157. package/lib/JSONBValidation/validate_jsonb_schema_sql.ts +293 -0
  158. package/lib/JSONBValidation/validation.d.ts +108 -0
  159. package/lib/JSONBValidation/validation.d.ts.map +1 -0
  160. package/lib/JSONBValidation/validation.js +221 -0
  161. package/lib/JSONBValidation/validation.ts +332 -0
  162. package/lib/PostgresNotifListenManager.d.ts +1 -1
  163. package/lib/PostgresNotifListenManager.d.ts.map +1 -1
  164. package/lib/PostgresNotifListenManager.js +1 -1
  165. package/lib/PostgresNotifListenManager.ts +1 -1
  166. package/lib/Prostgles.d.ts +14 -14
  167. package/lib/Prostgles.d.ts.map +1 -1
  168. package/lib/Prostgles.js +20 -20
  169. package/lib/Prostgles.ts +22 -21
  170. package/lib/PubSubManager/PubSubManager.d.ts +7 -7
  171. package/lib/PubSubManager/PubSubManager.d.ts.map +1 -1
  172. package/lib/PubSubManager/initPubSubManager.d.ts.map +1 -1
  173. package/lib/PubSubManager/initPubSubManager.js +10 -7
  174. package/lib/PubSubManager/initPubSubManager.ts +12 -7
  175. package/lib/PublishParser.d.ts +32 -32
  176. package/lib/PublishParser.d.ts.map +1 -1
  177. package/lib/PublishParser.js +121 -124
  178. package/lib/PublishParser.ts +125 -127
  179. package/lib/SchemaWatch.d.ts +1 -1
  180. package/lib/SchemaWatch.d.ts.map +1 -1
  181. package/lib/SyncReplication.d.ts +5 -5
  182. package/lib/SyncReplication.d.ts.map +1 -1
  183. package/lib/SyncReplication.js +19 -16
  184. package/lib/SyncReplication.ts +470 -471
  185. package/lib/TableConfig.d.ts +28 -24
  186. package/lib/TableConfig.d.ts.map +1 -1
  187. package/lib/TableConfig.js +33 -12
  188. package/lib/TableConfig.ts +55 -21
  189. package/lib/index.js +1 -1
  190. package/lib/index.ts +1 -1
  191. package/lib/shortestPath.d.ts +1 -1
  192. package/lib/shortestPath.d.ts.map +1 -1
  193. package/lib/shortestPath.js +11 -11
  194. package/lib/shortestPath.ts +11 -11
  195. package/package.json +10 -6
  196. package/tests/client/PID.txt +1 -1
  197. package/tests/client/package-lock.json +53 -31
  198. package/tests/client/package.json +4 -1
  199. package/tests/isomorphic_queries.d.ts +4 -1
  200. package/tests/isomorphic_queries.d.ts.map +1 -1
  201. package/tests/isomorphic_queries.js +38 -30
  202. package/tests/isomorphic_queries.ts +40 -33
  203. package/tests/server/DBoGenerated.d.ts +1 -1
  204. package/tests/server/index.js +8 -7
  205. package/tests/server/index.ts +10 -8
  206. package/tests/server/package-lock.json +76 -58
  207. package/tests/server/package.json +2 -2
  208. package/tests/server/server.ts +2 -3
  209. package/lib/validation.d.ts +0 -100
  210. package/lib/validation.d.ts.map +0 -1
  211. package/lib/validation.js +0 -280
  212. package/lib/validation.ts +0 -360
@@ -12,16 +12,16 @@
12
12
  "@types/node": "^14.14.19",
13
13
  "express": "^4.18.2",
14
14
  "prostgles-server": "file:../..",
15
- "socket.io": "^4.5.4"
15
+ "socket.io": "^4.6.1"
16
16
  },
17
17
  "devDependencies": {
18
18
  "tsc-watch": "^4.5.0",
19
- "typescript": "^4.7.2"
19
+ "typescript": "^4.9.5"
20
20
  }
21
21
  },
22
22
  "../..": {
23
23
  "name": "prostgles-server",
24
- "version": "3.0.86",
24
+ "version": "3.0.88",
25
25
  "license": "MIT",
26
26
  "dependencies": {
27
27
  "@aws-sdk/client-s3": "^3.272.0",
@@ -30,17 +30,20 @@
30
30
  "bluebird": "^3.7.2",
31
31
  "check-disk-space": "^3.3.1",
32
32
  "file-type": "^17.1.4",
33
- "g": "^2.0.1",
34
- "pg-promise": "^10.11.1",
33
+ "pg-promise": "^11.3.0",
35
34
  "prostgles-types": "^3.0.24",
36
- "sharp": "^0.31.0",
37
- "typescript": "^4.9.5"
35
+ "sharp": "^0.31.0"
38
36
  },
39
37
  "devDependencies": {
40
38
  "@aws-sdk/types": "^3.110.0",
41
39
  "@types/bluebird": "^3.5.36",
40
+ "@types/json-schema": "^7.0.11",
42
41
  "@types/node": "^18.0.3",
43
- "@types/sharp": "^0.30.4"
42
+ "@types/sharp": "^0.30.4",
43
+ "@typescript-eslint/eslint-plugin": "^5.53.0",
44
+ "@typescript-eslint/parser": "^5.53.0",
45
+ "eslint": "^8.35.0",
46
+ "typescript": "^4.9.5"
44
47
  }
45
48
  },
46
49
  "node_modules/@socket.io/component-emitter": {
@@ -54,9 +57,12 @@
54
57
  "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q=="
55
58
  },
56
59
  "node_modules/@types/cors": {
57
- "version": "2.8.12",
58
- "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz",
59
- "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw=="
60
+ "version": "2.8.13",
61
+ "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.13.tgz",
62
+ "integrity": "sha512-RG8AStHlUiV5ysZQKq97copd2UmVYw3/pRMLefISZ3S1hK104Cwm7iLQ3fTKx+lsUH2CE8FlLaYeEA2LSeqYUA==",
63
+ "dependencies": {
64
+ "@types/node": "*"
65
+ }
60
66
  },
61
67
  "node_modules/@types/node": {
62
68
  "version": "14.17.18",
@@ -243,9 +249,9 @@
243
249
  }
244
250
  },
245
251
  "node_modules/engine.io": {
246
- "version": "6.2.1",
247
- "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.2.1.tgz",
248
- "integrity": "sha512-ECceEFcAaNRybd3lsGQKas3ZlMVjN3cyWwMP25D2i0zWfyiytVbTpRPa34qrr+FHddtpBVOmq4H/DCv1O0lZRA==",
252
+ "version": "6.4.1",
253
+ "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.4.1.tgz",
254
+ "integrity": "sha512-JFYQurD/nbsA5BSPmbaOSLa3tSVj8L6o4srSwXXY3NqE+gGUNmmPTbhn8tjzcCtSqhFgIeqef81ngny8JM25hw==",
249
255
  "dependencies": {
250
256
  "@types/cookie": "^0.4.1",
251
257
  "@types/cors": "^2.8.12",
@@ -256,16 +262,16 @@
256
262
  "cors": "~2.8.5",
257
263
  "debug": "~4.3.1",
258
264
  "engine.io-parser": "~5.0.3",
259
- "ws": "~8.2.3"
265
+ "ws": "~8.11.0"
260
266
  },
261
267
  "engines": {
262
268
  "node": ">=10.0.0"
263
269
  }
264
270
  },
265
271
  "node_modules/engine.io-parser": {
266
- "version": "5.0.4",
267
- "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.4.tgz",
268
- "integrity": "sha512-+nVFp+5z1E3HcToEnO7ZIj3g+3k9389DvWtvJZz0T6/eOCPIyyxehFcedoYrZQrp0LgQbD9pPXhpMBKMd5QURg==",
272
+ "version": "5.0.6",
273
+ "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.6.tgz",
274
+ "integrity": "sha512-tjuoZDMAdEhVnSFleYPCtdL2GXwVTGtNjoeJd9IhIG3C1xs9uwxqRNEu5WpnDZCaozwVlK/nuQhpodhXSIMaxw==",
269
275
  "engines": {
270
276
  "node": ">=10.0.0"
271
277
  }
@@ -799,15 +805,15 @@
799
805
  }
800
806
  },
801
807
  "node_modules/socket.io": {
802
- "version": "4.5.4",
803
- "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.5.4.tgz",
804
- "integrity": "sha512-m3GC94iK9MfIEeIBfbhJs5BqFibMtkRk8ZpKwG2QwxV0m/eEhPIV4ara6XCF1LWNAus7z58RodiZlAH71U3EhQ==",
808
+ "version": "4.6.1",
809
+ "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.6.1.tgz",
810
+ "integrity": "sha512-KMcaAi4l/8+xEjkRICl6ak8ySoxsYG+gG6/XfRCPJPQ/haCRIJBTL4wIl8YCsmtaBovcAXGLOShyVWQ/FG8GZA==",
805
811
  "dependencies": {
806
812
  "accepts": "~1.3.4",
807
813
  "base64id": "~2.0.0",
808
814
  "debug": "~4.3.2",
809
- "engine.io": "~6.2.1",
810
- "socket.io-adapter": "~2.4.0",
815
+ "engine.io": "~6.4.1",
816
+ "socket.io-adapter": "~2.5.2",
811
817
  "socket.io-parser": "~4.2.1"
812
818
  },
813
819
  "engines": {
@@ -815,9 +821,12 @@
815
821
  }
816
822
  },
817
823
  "node_modules/socket.io-adapter": {
818
- "version": "2.4.0",
819
- "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.4.0.tgz",
820
- "integrity": "sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg=="
824
+ "version": "2.5.2",
825
+ "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.2.tgz",
826
+ "integrity": "sha512-87C3LO/NOMc+eMcpcxUBebGjkpMDkNBS9tf7KJqcDsmL936EChtVva71Dw2q4tQcuVC+hAUy4an2NO/sYXmwRA==",
827
+ "dependencies": {
828
+ "ws": "~8.11.0"
829
+ }
821
830
  },
822
831
  "node_modules/socket.io-parser": {
823
832
  "version": "4.2.1",
@@ -972,9 +981,9 @@
972
981
  }
973
982
  },
974
983
  "node_modules/typescript": {
975
- "version": "4.7.2",
976
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.2.tgz",
977
- "integrity": "sha512-Mamb1iX2FDUpcTRzltPxgWMKy3fhg0TN378ylbktPGPK/99KbDtMQ4W1hwgsbPAsG3a0xKa1vmw4VKZQbkvz5A==",
984
+ "version": "4.9.5",
985
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz",
986
+ "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==",
978
987
  "dev": true,
979
988
  "bin": {
980
989
  "tsc": "bin/tsc",
@@ -1024,9 +1033,9 @@
1024
1033
  }
1025
1034
  },
1026
1035
  "node_modules/ws": {
1027
- "version": "8.2.3",
1028
- "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz",
1029
- "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==",
1036
+ "version": "8.11.0",
1037
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz",
1038
+ "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==",
1030
1039
  "engines": {
1031
1040
  "node": ">=10.0.0"
1032
1041
  },
@@ -1056,9 +1065,12 @@
1056
1065
  "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q=="
1057
1066
  },
1058
1067
  "@types/cors": {
1059
- "version": "2.8.12",
1060
- "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.12.tgz",
1061
- "integrity": "sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw=="
1068
+ "version": "2.8.13",
1069
+ "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.13.tgz",
1070
+ "integrity": "sha512-RG8AStHlUiV5ysZQKq97copd2UmVYw3/pRMLefISZ3S1hK104Cwm7iLQ3fTKx+lsUH2CE8FlLaYeEA2LSeqYUA==",
1071
+ "requires": {
1072
+ "@types/node": "*"
1073
+ }
1062
1074
  },
1063
1075
  "@types/node": {
1064
1076
  "version": "14.17.18",
@@ -1201,9 +1213,9 @@
1201
1213
  "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w=="
1202
1214
  },
1203
1215
  "engine.io": {
1204
- "version": "6.2.1",
1205
- "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.2.1.tgz",
1206
- "integrity": "sha512-ECceEFcAaNRybd3lsGQKas3ZlMVjN3cyWwMP25D2i0zWfyiytVbTpRPa34qrr+FHddtpBVOmq4H/DCv1O0lZRA==",
1216
+ "version": "6.4.1",
1217
+ "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.4.1.tgz",
1218
+ "integrity": "sha512-JFYQurD/nbsA5BSPmbaOSLa3tSVj8L6o4srSwXXY3NqE+gGUNmmPTbhn8tjzcCtSqhFgIeqef81ngny8JM25hw==",
1207
1219
  "requires": {
1208
1220
  "@types/cookie": "^0.4.1",
1209
1221
  "@types/cors": "^2.8.12",
@@ -1214,7 +1226,7 @@
1214
1226
  "cors": "~2.8.5",
1215
1227
  "debug": "~4.3.1",
1216
1228
  "engine.io-parser": "~5.0.3",
1217
- "ws": "~8.2.3"
1229
+ "ws": "~8.11.0"
1218
1230
  },
1219
1231
  "dependencies": {
1220
1232
  "cookie": {
@@ -1238,9 +1250,9 @@
1238
1250
  }
1239
1251
  },
1240
1252
  "engine.io-parser": {
1241
- "version": "5.0.4",
1242
- "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.4.tgz",
1243
- "integrity": "sha512-+nVFp+5z1E3HcToEnO7ZIj3g+3k9389DvWtvJZz0T6/eOCPIyyxehFcedoYrZQrp0LgQbD9pPXhpMBKMd5QURg=="
1253
+ "version": "5.0.6",
1254
+ "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.0.6.tgz",
1255
+ "integrity": "sha512-tjuoZDMAdEhVnSFleYPCtdL2GXwVTGtNjoeJd9IhIG3C1xs9uwxqRNEu5WpnDZCaozwVlK/nuQhpodhXSIMaxw=="
1244
1256
  },
1245
1257
  "escape-html": {
1246
1258
  "version": "1.0.3",
@@ -1504,14 +1516,17 @@
1504
1516
  "@aws-sdk/types": "^3.110.0",
1505
1517
  "@types/bluebird": "^3.5.36",
1506
1518
  "@types/express": "^4.17.13",
1519
+ "@types/json-schema": "^7.0.11",
1507
1520
  "@types/node": "^18.0.3",
1508
1521
  "@types/sharp": "^0.30.4",
1522
+ "@typescript-eslint/eslint-plugin": "^5.53.0",
1523
+ "@typescript-eslint/parser": "^5.53.0",
1509
1524
  "aws-sdk": "^2.1318.0",
1510
1525
  "bluebird": "^3.7.2",
1511
1526
  "check-disk-space": "^3.3.1",
1527
+ "eslint": "^8.35.0",
1512
1528
  "file-type": "^17.1.4",
1513
- "g": "^2.0.1",
1514
- "pg-promise": "^10.11.1",
1529
+ "pg-promise": "^11.3.0",
1515
1530
  "prostgles-types": "^3.0.24",
1516
1531
  "sharp": "^0.31.0",
1517
1532
  "typescript": "^4.9.5"
@@ -1638,15 +1653,15 @@
1638
1653
  }
1639
1654
  },
1640
1655
  "socket.io": {
1641
- "version": "4.5.4",
1642
- "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.5.4.tgz",
1643
- "integrity": "sha512-m3GC94iK9MfIEeIBfbhJs5BqFibMtkRk8ZpKwG2QwxV0m/eEhPIV4ara6XCF1LWNAus7z58RodiZlAH71U3EhQ==",
1656
+ "version": "4.6.1",
1657
+ "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.6.1.tgz",
1658
+ "integrity": "sha512-KMcaAi4l/8+xEjkRICl6ak8ySoxsYG+gG6/XfRCPJPQ/haCRIJBTL4wIl8YCsmtaBovcAXGLOShyVWQ/FG8GZA==",
1644
1659
  "requires": {
1645
1660
  "accepts": "~1.3.4",
1646
1661
  "base64id": "~2.0.0",
1647
1662
  "debug": "~4.3.2",
1648
- "engine.io": "~6.2.1",
1649
- "socket.io-adapter": "~2.4.0",
1663
+ "engine.io": "~6.4.1",
1664
+ "socket.io-adapter": "~2.5.2",
1650
1665
  "socket.io-parser": "~4.2.1"
1651
1666
  },
1652
1667
  "dependencies": {
@@ -1666,9 +1681,12 @@
1666
1681
  }
1667
1682
  },
1668
1683
  "socket.io-adapter": {
1669
- "version": "2.4.0",
1670
- "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.4.0.tgz",
1671
- "integrity": "sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg=="
1684
+ "version": "2.5.2",
1685
+ "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.2.tgz",
1686
+ "integrity": "sha512-87C3LO/NOMc+eMcpcxUBebGjkpMDkNBS9tf7KJqcDsmL936EChtVva71Dw2q4tQcuVC+hAUy4an2NO/sYXmwRA==",
1687
+ "requires": {
1688
+ "ws": "~8.11.0"
1689
+ }
1672
1690
  },
1673
1691
  "socket.io-parser": {
1674
1692
  "version": "4.2.1",
@@ -1766,9 +1784,9 @@
1766
1784
  }
1767
1785
  },
1768
1786
  "typescript": {
1769
- "version": "4.7.2",
1770
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.7.2.tgz",
1771
- "integrity": "sha512-Mamb1iX2FDUpcTRzltPxgWMKy3fhg0TN378ylbktPGPK/99KbDtMQ4W1hwgsbPAsG3a0xKa1vmw4VKZQbkvz5A==",
1787
+ "version": "4.9.5",
1788
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz",
1789
+ "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==",
1772
1790
  "dev": true
1773
1791
  },
1774
1792
  "unpipe": {
@@ -1796,9 +1814,9 @@
1796
1814
  }
1797
1815
  },
1798
1816
  "ws": {
1799
- "version": "8.2.3",
1800
- "resolved": "https://registry.npmjs.org/ws/-/ws-8.2.3.tgz",
1801
- "integrity": "sha512-wBuoj1BDpC6ZQ1B7DWQBYVLphPWkm8i9Y0/3YdHjHKHiohOJ1ws+3OccDWtH+PoC9DZD5WOTrJvNbWvjS6JWaA==",
1817
+ "version": "8.11.0",
1818
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz",
1819
+ "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==",
1802
1820
  "requires": {}
1803
1821
  }
1804
1822
  }
@@ -16,10 +16,10 @@
16
16
  "@types/node": "^14.14.19",
17
17
  "express": "^4.18.2",
18
18
  "prostgles-server": "file:../..",
19
- "socket.io": "^4.5.4"
19
+ "socket.io": "^4.6.1"
20
20
  },
21
21
  "devDependencies": {
22
22
  "tsc-watch": "^4.5.0",
23
- "typescript": "^4.7.2"
23
+ "typescript": "^4.9.5"
24
24
  }
25
25
  }
@@ -1,7 +1,6 @@
1
1
 
2
2
  import path from 'path';
3
- import prostgles from "prostgles-server";
4
- import { omitKeys } from "../../dist/PubSubManager";
3
+ import prostgles from "prostgles-server";
5
4
  import { DBSchemaGenerated } from "./DBoGenerated";
6
5
 
7
6
  prostgles<DBSchemaGenerated>({
@@ -16,7 +15,7 @@ prostgles<DBSchemaGenerated>({
16
15
  email: "TEXT NOT NULL",
17
16
  status: { enum: ["active", "disabled", "pending"] },
18
17
  preferences: {
19
- jsonbSchema: {
18
+ jsonbSchemaType: {
20
19
  showIntro: { type: "boolean", optional: true },
21
20
  theme: { enum: ["light", "dark", "auto"], optional: true },
22
21
  two_factor_auth: { oneOf: [
@@ -1,100 +0,0 @@
1
- import { AnyObject } from "prostgles-types";
2
- import { BaseColumn, JSONBColumnDef } from "./TableConfig";
3
- declare type BaseOptions = {
4
- optional?: boolean;
5
- nullable?: boolean;
6
- description?: string;
7
- allowedValues?: any[];
8
- title?: string;
9
- };
10
- declare type SimpleType = BaseOptions & ({
11
- type: "number" | "boolean" | "integer" | "string" | "number[]" | "boolean[]" | "integer[]" | "string[]" | "any[]" | "any" | ValidationSchema;
12
- } | {
13
- enum: readonly any[];
14
- });
15
- export declare type OneOf = BaseOptions & {
16
- oneOf: readonly ValidationSchema[];
17
- };
18
- declare type FieldType = SimpleType | OneOf;
19
- declare type GetType<T extends FieldType> = T extends {
20
- type: ValidationSchema;
21
- } ? SchemaObject<T["type"]> : T extends {
22
- type: "number";
23
- } ? number : T extends {
24
- type: "boolean";
25
- } ? boolean : T extends {
26
- type: "integer";
27
- } ? number : T extends {
28
- type: "string";
29
- } ? string : T extends {
30
- type: "any";
31
- } ? any : T extends {
32
- type: "number[]";
33
- } ? number[] : T extends {
34
- type: "boolean[]";
35
- } ? boolean[] : T extends {
36
- type: "integer[]";
37
- } ? number[] : T extends {
38
- type: "string[]";
39
- } ? string[] : T extends {
40
- type: "any[]";
41
- } ? any[] : T extends {
42
- enum: readonly any[];
43
- } ? T["enum"][number] :
44
- /** This needs fixing */
45
- T extends {
46
- oneOf: readonly ValidationSchema[];
47
- } ? SchemaObject<T["oneOf"][number]> : any;
48
- export declare type ValidationSchema = Record<string, FieldType>;
49
- export declare type SchemaObject<S extends ValidationSchema> = ({
50
- [K in keyof S as S[K]["optional"] extends true ? K : never]?: GetType<S[K]>;
51
- } & {
52
- [K in keyof S as S[K]["optional"] extends true ? never : K]: GetType<S[K]>;
53
- });
54
- export declare function validate<T>(obj: T, key: keyof T, validation: FieldType): boolean;
55
- export declare function validateSchema<S extends ValidationSchema>(schema: S, obj: SchemaObject<S>, objName?: string, optional?: boolean): void;
56
- export declare function getPGCheckConstraint(args: {
57
- escapedFieldName: string;
58
- schema: ValidationSchema | OneOf;
59
- nullable: boolean;
60
- isRootQuery?: boolean;
61
- optional?: boolean;
62
- }, depth: number): string;
63
- declare type ColOpts = {
64
- nullable?: boolean;
65
- };
66
- export declare function getSchemaTSTypes(schema: ValidationSchema, leading?: string, isOneOf?: boolean): string;
67
- export declare function getJSONBSchemaTSTypes(schema: ValidationSchema | OneOf, colOpts: ColOpts, leading?: string, isOneOf?: boolean): string;
68
- declare namespace JSTypes {
69
- type Base = {
70
- $id?: string;
71
- $schema?: string;
72
- title?: string;
73
- description?: string;
74
- required?: boolean;
75
- };
76
- export type Any = {};
77
- export type Object<T extends AnyObject = AnyObject> = Base & {
78
- type: "object";
79
- properties: Record<keyof T, Schema>;
80
- };
81
- export type Enum = Base & {
82
- type: "string" | "number";
83
- enum: (string | number)[];
84
- };
85
- export type Array = Base & {
86
- type: "array";
87
- items: (string | number)[];
88
- };
89
- export type OneOf = {
90
- oneOf: (Any | Object | Enum | Array)[];
91
- };
92
- export type Schema = Any | Object | Enum | Array | OneOf;
93
- export {};
94
- }
95
- declare type JSONSchema = JSTypes.Schema;
96
- export declare function getJSONBSchemaAsJSONSchema(tableName: string, colName: string, columnConfig: BaseColumn<{
97
- en: 1;
98
- }> & JSONBColumnDef): JSONSchema;
99
- export {};
100
- //# sourceMappingURL=validation.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["validation.ts"],"names":[],"mappings":"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"}