remult 0.22.3 → 0.22.4

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 (253) hide show
  1. package/esm/angular/interfaces/index.d.ts +1 -0
  2. package/esm/angular/interfaces/index.js +1 -0
  3. package/esm/angular/interfaces/src/column-collection.d.ts +70 -0
  4. package/esm/angular/interfaces/src/column-collection.js +341 -0
  5. package/esm/angular/interfaces/src/data-area-settings.d.ts +15 -0
  6. package/esm/angular/interfaces/src/data-area-settings.js +35 -0
  7. package/esm/angular/interfaces/src/data-control-interfaces.d.ts +36 -0
  8. package/esm/angular/interfaces/src/data-control-interfaces.js +57 -0
  9. package/esm/angular/interfaces/src/dataList.d.ts +13 -0
  10. package/esm/angular/interfaces/src/dataList.js +42 -0
  11. package/esm/angular/interfaces/src/filter-helper.d.ts +13 -0
  12. package/esm/angular/interfaces/src/filter-helper.js +59 -0
  13. package/esm/angular/interfaces/src/grid-settings.d.ts +145 -0
  14. package/esm/angular/interfaces/src/grid-settings.js +387 -0
  15. package/esm/angular/interfaces/src/public_api.d.ts +4 -0
  16. package/esm/angular/interfaces/src/public_api.js +4 -0
  17. package/esm/angular/src/angular/RemultAngularPluginsService.d.ts +4 -0
  18. package/esm/angular/src/angular/RemultAngularPluginsService.js +3 -0
  19. package/esm/angular/src/angular/data-control/data-control2.component.d.ts +49 -0
  20. package/esm/angular/src/angular/data-control/data-control2.component.js +138 -0
  21. package/esm/core/SseSubscriptionServer.d.ts +33 -0
  22. package/esm/core/SseSubscriptionServer.js +107 -0
  23. package/esm/core/assign.d.ts +1 -0
  24. package/esm/core/assign.js +5 -0
  25. package/esm/core/classType.d.ts +3 -0
  26. package/esm/core/classType.js +1 -0
  27. package/esm/core/index.d.ts +27 -0
  28. package/esm/core/index.js +25 -0
  29. package/esm/core/inputTypes.d.ts +9 -0
  30. package/esm/core/inputTypes.js +9 -0
  31. package/esm/core/live-query/data-provider-live-query-storage.d.ts +22 -0
  32. package/esm/core/live-query/data-provider-live-query-storage.js +71 -0
  33. package/esm/core/postgres/index.d.ts +2 -0
  34. package/esm/core/postgres/index.js +2 -0
  35. package/esm/core/postgres/postgres-data-provider.d.ts +36 -0
  36. package/esm/core/postgres/postgres-data-provider.js +120 -0
  37. package/esm/core/postgres/schema-builder.d.ts +17 -0
  38. package/esm/core/postgres/schema-builder.js +153 -0
  39. package/esm/core/remult-fresh.d.ts +17 -0
  40. package/esm/core/remult-fresh.js +29 -0
  41. package/esm/core/remult-knex/index.d.ts +30 -0
  42. package/esm/core/remult-knex/index.js +446 -0
  43. package/esm/core/remult-mongo.d.ts +24 -0
  44. package/esm/core/remult-mongo.js +254 -0
  45. package/esm/core/server/JsonEntityFileStorage.d.ts +10 -0
  46. package/esm/core/server/JsonEntityFileStorage.js +25 -0
  47. package/esm/core/server/core.d.ts +4 -0
  48. package/esm/core/server/core.js +4 -0
  49. package/esm/core/server/expressBridge.d.ts +182 -0
  50. package/esm/core/server/expressBridge.js +938 -0
  51. package/esm/core/server/index.d.ts +6 -0
  52. package/esm/core/server/index.js +9 -0
  53. package/esm/core/server/initAsyncHooks.d.ts +1 -0
  54. package/esm/core/server/initAsyncHooks.js +9 -0
  55. package/esm/core/server/initDataProvider.d.ts +2 -0
  56. package/esm/core/server/initDataProvider.js +14 -0
  57. package/esm/core/src/__EntityValueProvider.d.ts +11 -0
  58. package/esm/core/src/__EntityValueProvider.js +1 -0
  59. package/esm/core/src/__RowsOfDataForTesting.d.ts +3 -0
  60. package/esm/core/src/__RowsOfDataForTesting.js +1 -0
  61. package/esm/core/src/backend-tests/backend-database-test-setup.backend-spec.d.ts +6 -0
  62. package/esm/core/src/backend-tests/backend-database-test-setup.backend-spec.js +147 -0
  63. package/{src → esm/core/src}/backend-tests/my-test.backend-spec.d.ts +1 -1
  64. package/esm/core/src/backend-tests/my-test.backend-spec.js +197 -0
  65. package/esm/core/src/backend-tests/test-http-server.backend-spec.d.ts +1 -0
  66. package/esm/core/src/backend-tests/test-http-server.backend-spec.js +167 -0
  67. package/esm/core/src/buildRestDataProvider.d.ts +31 -0
  68. package/esm/core/src/buildRestDataProvider.js +113 -0
  69. package/esm/core/src/column-interfaces.d.ts +154 -0
  70. package/esm/core/src/column-interfaces.js +7 -0
  71. package/esm/core/src/column.d.ts +58 -0
  72. package/esm/core/src/column.js +174 -0
  73. package/esm/core/src/context.d.ts +134 -0
  74. package/esm/core/src/context.js +286 -0
  75. package/esm/core/src/data-api.d.ts +39 -0
  76. package/esm/core/src/data-api.js +279 -0
  77. package/esm/core/src/data-interfaces.d.ts +41 -0
  78. package/esm/core/src/data-interfaces.js +12 -0
  79. package/esm/core/src/data-providers/array-entity-data-provider.d.ts +22 -0
  80. package/esm/core/src/data-providers/array-entity-data-provider.js +252 -0
  81. package/esm/core/src/data-providers/in-memory-database.d.ts +9 -0
  82. package/esm/core/src/data-providers/in-memory-database.js +14 -0
  83. package/esm/core/src/data-providers/json-data-provider.d.ts +12 -0
  84. package/esm/core/src/data-providers/json-data-provider.js +55 -0
  85. package/esm/core/src/data-providers/rest-data-provider.d.ts +49 -0
  86. package/esm/core/src/data-providers/rest-data-provider.js +256 -0
  87. package/esm/core/src/data-providers/sql-database.d.ts +33 -0
  88. package/esm/core/src/data-providers/sql-database.js +384 -0
  89. package/esm/core/src/data-providers/web-sql-data-provider.d.ts +24 -0
  90. package/esm/core/src/data-providers/web-sql-data-provider.js +143 -0
  91. package/esm/core/src/entity.d.ts +91 -0
  92. package/esm/core/src/entity.js +1 -0
  93. package/esm/core/src/filter/filter-consumer-bridge-to-sql-request.d.ts +50 -0
  94. package/esm/core/src/filter/filter-consumer-bridge-to-sql-request.js +150 -0
  95. package/esm/core/src/filter/filter-consumer-bridge-to-url-builder.d.ts +1 -0
  96. package/esm/core/src/filter/filter-consumer-bridge-to-url-builder.js +1 -0
  97. package/esm/core/src/filter/filter-interfaces.d.ts +85 -0
  98. package/esm/core/src/filter/filter-interfaces.js +477 -0
  99. package/esm/core/src/live-query/LiveQueryClient.d.ts +20 -0
  100. package/esm/core/src/live-query/LiveQueryClient.js +188 -0
  101. package/esm/core/src/live-query/SseSubscriptionClient.d.ts +5 -0
  102. package/esm/core/src/live-query/SseSubscriptionClient.js +86 -0
  103. package/esm/core/src/live-query/SubscriptionChannel.d.ts +72 -0
  104. package/esm/core/src/live-query/SubscriptionChannel.js +123 -0
  105. package/esm/core/src/live-query/SubscriptionServer.d.ts +53 -0
  106. package/esm/core/src/live-query/SubscriptionServer.js +111 -0
  107. package/esm/core/src/live-query/live-query-tests.spec.d.ts +6 -0
  108. package/esm/core/src/live-query/live-query-tests.spec.js +952 -0
  109. package/esm/core/src/remult-proxy.d.ts +35 -0
  110. package/esm/core/src/remult-proxy.js +113 -0
  111. package/esm/core/src/remult3/DecoratorReplacer.d.ts +10 -0
  112. package/esm/core/src/remult3/DecoratorReplacer.js +20 -0
  113. package/esm/core/src/remult3/RepositoryImplementation.d.ts +355 -0
  114. package/esm/core/src/remult3/RepositoryImplementation.js +2109 -0
  115. package/esm/core/src/remult3/index.d.ts +2 -0
  116. package/esm/core/src/remult3/index.js +2 -0
  117. package/esm/core/src/remult3/remult3.d.ts +395 -0
  118. package/esm/core/src/remult3/remult3.js +2 -0
  119. package/esm/core/src/server-action.d.ts +81 -0
  120. package/esm/core/src/server-action.js +394 -0
  121. package/esm/core/src/shared-tests/db-tests-setup.d.ts +32 -0
  122. package/esm/core/src/shared-tests/db-tests-setup.js +78 -0
  123. package/esm/core/src/shared-tests/db-tests.db-tests.d.ts +25 -0
  124. package/esm/core/src/shared-tests/db-tests.db-tests.js +810 -0
  125. package/esm/core/src/shared-tests/deleteAll.d.ts +2 -0
  126. package/esm/core/src/shared-tests/deleteAll.js +4 -0
  127. package/esm/core/src/shared-tests/entityWithValidations.d.ts +14 -0
  128. package/esm/core/src/shared-tests/entityWithValidations.js +43 -0
  129. package/esm/core/src/shared-tests/index.d.ts +4 -0
  130. package/esm/core/src/shared-tests/index.js +4 -0
  131. package/esm/core/src/shared-tests/test-custom-id-column.spec.d.ts +1 -0
  132. package/esm/core/src/shared-tests/test-custom-id-column.spec.js +67 -0
  133. package/esm/core/src/shared-tests/test-special-value.spec.d.ts +10 -0
  134. package/esm/core/src/shared-tests/test-special-value.spec.js +73 -0
  135. package/esm/core/src/shared-tests/test-update-with-null.spec.d.ts +1 -0
  136. package/esm/core/src/shared-tests/test-update-with-null.spec.js +31 -0
  137. package/esm/core/src/sort.d.ts +16 -0
  138. package/esm/core/src/sort.js +103 -0
  139. package/esm/core/src/sql-command.d.ts +19 -0
  140. package/esm/core/src/sql-command.js +1 -0
  141. package/esm/core/src/test.d.ts +3 -0
  142. package/esm/core/src/test.js +12 -0
  143. package/esm/core/src/tests/Done.d.ts +5 -0
  144. package/esm/core/src/tests/Done.js +9 -0
  145. package/esm/core/src/tests/RowProvider.spec.d.ts +16 -0
  146. package/esm/core/src/tests/RowProvider.spec.js +631 -0
  147. package/esm/core/src/tests/TestDataApiResponse.d.ts +10 -0
  148. package/esm/core/src/tests/TestDataApiResponse.js +22 -0
  149. package/esm/core/src/tests/basicRowFunctionality.spec.d.ts +8 -0
  150. package/esm/core/src/tests/basicRowFunctionality.spec.js +2103 -0
  151. package/esm/core/src/tests/c.d.ts +8 -0
  152. package/esm/core/src/tests/c.js +13 -0
  153. package/esm/core/src/tests/createData.d.ts +7 -0
  154. package/esm/core/src/tests/createData.js +22 -0
  155. package/esm/core/src/tests/d.d.ts +6 -0
  156. package/esm/core/src/tests/d.js +11 -0
  157. package/esm/core/src/tests/dWithPrefilter.d.ts +7 -0
  158. package/esm/core/src/tests/dWithPrefilter.js +18 -0
  159. package/esm/core/src/tests/entityForCustomFilter.d.ts +16 -0
  160. package/esm/core/src/tests/entityForCustomFilter.js +33 -0
  161. package/esm/core/src/tests/entityWithValidationsOnColumn.d.ts +5 -0
  162. package/esm/core/src/tests/entityWithValidationsOnColumn.js +13 -0
  163. package/esm/core/src/tests/frontend-database-tests-setup.spec.d.ts +4 -0
  164. package/esm/core/src/tests/frontend-database-tests-setup.spec.js +37 -0
  165. package/esm/core/src/tests/h.d.ts +6 -0
  166. package/esm/core/src/tests/h.js +24 -0
  167. package/esm/core/src/tests/remult-3-basic-tests.spec.d.ts +1 -0
  168. package/esm/core/src/tests/remult-3-basic-tests.spec.js +236 -0
  169. package/esm/core/src/tests/remult-3-entities.d.ts +23 -0
  170. package/esm/core/src/tests/remult-3-entities.js +39 -0
  171. package/esm/core/src/tests/tasks.d.ts +6 -0
  172. package/esm/core/src/tests/tasks.js +10 -0
  173. package/esm/core/src/tests/test-context-as-storage.spec.d.ts +0 -0
  174. package/esm/core/src/tests/test-context-as-storage.spec.js +1 -0
  175. package/esm/core/src/tests/test-data-api/predefined-filter.spec.d.ts +1 -0
  176. package/esm/core/src/tests/test-data-api/predefined-filter.spec.js +389 -0
  177. package/esm/core/src/tests/test-data-api/test-put-with-validation.spec.d.ts +5 -0
  178. package/esm/core/src/tests/test-data-api/test-put-with-validation.spec.js +152 -0
  179. package/esm/core/src/tests/test-decorator-precedence.spec.d.ts +1 -0
  180. package/esm/core/src/tests/test-decorator-precedence.spec.js +38 -0
  181. package/esm/core/src/tests/test-default-value.spec.d.ts +1 -0
  182. package/esm/core/src/tests/test-default-value.spec.js +33 -0
  183. package/esm/core/src/tests/test-entity-inheritance.spec.d.ts +14 -0
  184. package/esm/core/src/tests/test-entity-inheritance.spec.js +82 -0
  185. package/esm/core/src/tests/test-exceptions.spec.d.ts +1 -0
  186. package/esm/core/src/tests/test-exceptions.spec.js +375 -0
  187. package/esm/core/src/tests/test-json.spec.d.ts +1 -0
  188. package/esm/core/src/tests/test-json.spec.js +115 -0
  189. package/esm/core/src/tests/test-many-to-one-relation-in-entity.spec.d.ts +9 -0
  190. package/esm/core/src/tests/test-many-to-one-relation-in-entity.spec.js +809 -0
  191. package/esm/core/src/tests/test-non-active-record.spec.d.ts +1 -0
  192. package/esm/core/src/tests/test-non-active-record.spec.js +66 -0
  193. package/esm/core/src/tests/test-object-column.spec.d.ts +1 -0
  194. package/esm/core/src/tests/test-object-column.spec.js +189 -0
  195. package/esm/core/src/tests/test-paged-foreach.spec.d.ts +1 -0
  196. package/esm/core/src/tests/test-paged-foreach.spec.js +328 -0
  197. package/esm/core/src/tests/test-remult-angular.spec.d.ts +1 -0
  198. package/esm/core/src/tests/test-remult-angular.spec.js +23 -0
  199. package/esm/core/src/tests/test-server-controller.spec.d.ts +7 -0
  200. package/esm/core/src/tests/test-server-controller.spec.js +489 -0
  201. package/esm/core/src/tests/test-server-expressions.spec.d.ts +1 -0
  202. package/esm/core/src/tests/test-server-expressions.spec.js +178 -0
  203. package/esm/core/src/tests/test-server-method-on-entity.spec.d.ts +1 -0
  204. package/esm/core/src/tests/test-server-method-on-entity.spec.js +306 -0
  205. package/esm/core/src/tests/test-sql-expression.spec.d.ts +5 -0
  206. package/esm/core/src/tests/test-sql-expression.spec.js +205 -0
  207. package/esm/core/src/tests/test-sql.spec.d.ts +1 -0
  208. package/esm/core/src/tests/test-sql.spec.js +170 -0
  209. package/esm/core/src/tests/test-subscribe.spec.d.ts +1 -0
  210. package/esm/core/src/tests/test-subscribe.spec.js +135 -0
  211. package/esm/core/src/tests/test-type-recovery.spec.d.ts +1 -0
  212. package/esm/core/src/tests/test-type-recovery.spec.js +49 -0
  213. package/esm/core/src/tests/test-where-api.spec.d.ts +1 -0
  214. package/esm/core/src/tests/test-where-api.spec.js +434 -0
  215. package/esm/core/src/tests/testHelper.spec.d.ts +36 -0
  216. package/esm/core/src/tests/testHelper.spec.js +226 -0
  217. package/esm/core/src/tests/testModel/models.d.ts +16 -0
  218. package/esm/core/src/tests/testModel/models.js +25 -0
  219. package/esm/core/src/validators.d.ts +14 -0
  220. package/esm/core/src/validators.js +33 -0
  221. package/{valueConverters.d.ts → esm/core/src/valueConverters.d.ts} +13 -12
  222. package/esm/core/src/valueConverters.js +197 -0
  223. package/esm/core/urlBuilder.d.ts +6 -0
  224. package/esm/core/urlBuilder.js +20 -0
  225. package/esm/graphql.js +27 -27
  226. package/esm/postgres/schema-builder.js +4 -4
  227. package/esm/src/remult3/RepositoryImplementation.d.ts +1 -1
  228. package/esm/src/remult3/RepositoryImplementation.js +27 -4
  229. package/esm/src/shared-tests/db-tests.db-tests.js +57 -0
  230. package/esm/test-servers/shared/Task.d.ts +9 -0
  231. package/esm/test-servers/shared/Task.js +32 -0
  232. package/esm/test.d.ts +5 -0
  233. package/esm/test.js +6 -0
  234. package/package.json +1 -1
  235. package/src/remult3/RepositoryImplementation.d.ts +1 -1
  236. package/src/remult3/RepositoryImplementation.js +88 -63
  237. package/src/shared-tests/db-tests.db-tests.js +97 -0
  238. package/esm/src/id-entity.d.ts +0 -4
  239. package/esm/src/id-entity.js +0 -8
  240. package/postgres/postgresColumnSyntax.d.ts +0 -2
  241. package/postgres/postgresColumnSyntax.js +0 -34
  242. package/remult-middleware.d.ts +0 -2
  243. package/remult-middleware.js +0 -70
  244. package/server/register-actions-on-server.d.ts +0 -3
  245. package/server/register-actions-on-server.js +0 -50
  246. package/server/register-entities-on-server.d.ts +0 -3
  247. package/server/register-entities-on-server.js +0 -19
  248. package/src/backend-tests/my-test.backend-spec.js +0 -217
  249. package/src/backend-tests/test-http-server.backend-spec.d.ts +0 -6
  250. package/src/backend-tests/test-http-server.backend-spec.js +0 -342
  251. package/src/id-entity.d.ts +0 -4
  252. package/src/id-entity.js +0 -17
  253. package/valueConverters.js +0 -168
@@ -1,70 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.remultMiddleware = void 0;
4
- var expressBridge_1 = require("./server/expressBridge");
5
- function remultMiddleware(options) {
6
- var m = new middleware();
7
- var app = Object.assign(function (req, res, next) { return m.handleRequest(req, res, next); }, {
8
- route: function (path) { return m.route(path); }
9
- });
10
- return expressBridge_1.remultMiddlewareBase(app, options);
11
- }
12
- exports.remultMiddleware = remultMiddleware;
13
- var middleware = /** @class */ (function () {
14
- function middleware() {
15
- this.map = new Map();
16
- }
17
- middleware.prototype.route = function (path) {
18
- //consider using:
19
- //* https://raw.githubusercontent.com/cmorten/opine/main/src/utils/pathToRegex.ts
20
- //* https://github.com/pillarjs/path-to-regexp
21
- var r = path.toLowerCase();
22
- var m = new Map();
23
- this.map.set(r, m);
24
- var route = {
25
- get: function (h) {
26
- m.set("get", h);
27
- return route;
28
- },
29
- put: function (h) {
30
- m.set("put", h);
31
- return route;
32
- },
33
- post: function (h) {
34
- m.set("post", h);
35
- return route;
36
- },
37
- delete: function (h) {
38
- m.set("delete", h);
39
- return route;
40
- }
41
- };
42
- return route;
43
- };
44
- middleware.prototype.handleRequest = function (req, res, next) {
45
- var lowerPath = req.path.toLowerCase();
46
- var m = this.map.get(lowerPath);
47
- if (m) {
48
- var h = m.get(req.method.toLowerCase());
49
- if (h) {
50
- h(req, res, next);
51
- return;
52
- }
53
- }
54
- var idPosition = req.path.lastIndexOf('/');
55
- if (idPosition >= 0) {
56
- lowerPath = req.path.substring(0, idPosition) + '/:id';
57
- m = this.map.get(lowerPath);
58
- if (m) {
59
- var h = m.get(req.method.toLowerCase());
60
- if (h) {
61
- req.params.id = req.path.substring(idPosition + 1);
62
- h(req, res, next);
63
- return;
64
- }
65
- }
66
- }
67
- next();
68
- };
69
- return middleware;
70
- }());
@@ -1,3 +0,0 @@
1
- import { SiteArea } from "./expressBridge";
2
- import { ClassType } from "../classType";
3
- export declare function registerActionsOnServer(area: SiteArea, controllers?: ClassType<any>[]): void;
@@ -1,50 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.registerActionsOnServer = void 0;
4
- var tslib_1 = require("tslib");
5
- var server_action_1 = require("../src/server-action");
6
- function registerActionsOnServer(area, controllers) {
7
- var e_1, _a, e_2, _b;
8
- var addAction = function (a) {
9
- var x = a[server_action_1.serverActionField];
10
- if (!x) {
11
- throw 'failed to set server action, did you forget the BackendMethod Decorator?';
12
- }
13
- area.addAction(x);
14
- };
15
- server_action_1.actionInfo.runningOnServer = true;
16
- if (controllers && controllers.length > 0) {
17
- try {
18
- for (var controllers_1 = tslib_1.__values(controllers), controllers_1_1 = controllers_1.next(); !controllers_1_1.done; controllers_1_1 = controllers_1.next()) {
19
- var c = controllers_1_1.value;
20
- var z = c[server_action_1.classBackendMethodsArray];
21
- if (z)
22
- try {
23
- for (var z_1 = (e_2 = void 0, tslib_1.__values(z)), z_1_1 = z_1.next(); !z_1_1.done; z_1_1 = z_1.next()) {
24
- var a = z_1_1.value;
25
- addAction(a);
26
- }
27
- }
28
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
29
- finally {
30
- try {
31
- if (z_1_1 && !z_1_1.done && (_b = z_1.return)) _b.call(z_1);
32
- }
33
- finally { if (e_2) throw e_2.error; }
34
- }
35
- }
36
- }
37
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
38
- finally {
39
- try {
40
- if (controllers_1_1 && !controllers_1_1.done && (_a = controllers_1.return)) _a.call(controllers_1);
41
- }
42
- finally { if (e_1) throw e_1.error; }
43
- }
44
- }
45
- else
46
- server_action_1.actionInfo.allActions.forEach(function (a) {
47
- addAction(a);
48
- });
49
- }
50
- exports.registerActionsOnServer = registerActionsOnServer;
@@ -1,3 +0,0 @@
1
- import { SiteArea } from "./expressBridge";
2
- import { ClassType } from "../classType";
3
- export declare function registerEntitiesOnServer(area: SiteArea, entities?: ClassType<any>[]): void;
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.registerEntitiesOnServer = void 0;
4
- var remult3_1 = require("../src/remult3");
5
- var context_1 = require("../src/context");
6
- var data_api_1 = require("../src/data-api");
7
- function registerEntitiesOnServer(area, entities) {
8
- if (!entities)
9
- entities = context_1.allEntities;
10
- //add Api Entries
11
- entities.forEach(function (e) {
12
- var key = remult3_1.getEntityKey(e);
13
- if (key != undefined)
14
- area.add(key, function (c) {
15
- return new data_api_1.DataApi(c.repo(e), c);
16
- });
17
- });
18
- }
19
- exports.registerEntitiesOnServer = registerEntitiesOnServer;
@@ -1,217 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
4
- var context_1 = require("../context");
5
- var remult_knex_1 = require("../../remult-knex");
6
- var dotenv_1 = require("dotenv");
7
- var backend_database_test_setup_backend_spec_1 = require("./backend-database-test-setup.backend-spec");
8
- var entityWithValidations_1 = require("../shared-tests/entityWithValidations");
9
- var sql_database_1 = require("../data-providers/sql-database");
10
- var expressBridge_1 = require("../../server/expressBridge");
11
- var initAsyncHooks_1 = require("../../server/initAsyncHooks");
12
- var remult_proxy_1 = require("../remult-proxy");
13
- dotenv_1.config();
14
- backend_database_test_setup_backend_spec_1.testPostgresImplementation("default order by", function (_a) {
15
- var createEntity = _a.createEntity;
16
- return tslib_1.__awaiter(void 0, void 0, void 0, function () {
17
- var s, _b;
18
- return tslib_1.__generator(this, function (_c) {
19
- switch (_c.label) {
20
- case 0: return [4 /*yield*/, entityWithValidations_1.entityWithValidations.create4RowsInDp(createEntity)];
21
- case 1:
22
- s = _c.sent();
23
- return [4 /*yield*/, s.update(1, { name: "updated name" })];
24
- case 2:
25
- _c.sent();
26
- _b = expect;
27
- return [4 /*yield*/, s.find()];
28
- case 3:
29
- _b.apply(void 0, [(_c.sent()).map(function (x) { return x.myId; })]).toEqual([1, 2, 3, 4]);
30
- return [2 /*return*/];
31
- }
32
- });
33
- });
34
- }, false);
35
- backend_database_test_setup_backend_spec_1.testKnexPGSqlImpl("default order by", function (_a) {
36
- var createEntity = _a.createEntity;
37
- return tslib_1.__awaiter(void 0, void 0, void 0, function () {
38
- var s, _b;
39
- return tslib_1.__generator(this, function (_c) {
40
- switch (_c.label) {
41
- case 0: return [4 /*yield*/, entityWithValidations_1.entityWithValidations.create4RowsInDp(createEntity)];
42
- case 1:
43
- s = _c.sent();
44
- return [4 /*yield*/, s.update(1, { name: "updated name" })];
45
- case 2:
46
- _c.sent();
47
- _b = expect;
48
- return [4 /*yield*/, s.find()];
49
- case 3:
50
- _b.apply(void 0, [(_c.sent()).map(function (x) { return x.myId; })]).toEqual([1, 2, 3, 4]);
51
- return [2 /*return*/];
52
- }
53
- });
54
- });
55
- }, false);
56
- backend_database_test_setup_backend_spec_1.testPostgresImplementation("sql filter", function (_a) {
57
- var createEntity = _a.createEntity;
58
- return tslib_1.__awaiter(void 0, void 0, void 0, function () {
59
- var s, _b;
60
- return tslib_1.__generator(this, function (_c) {
61
- switch (_c.label) {
62
- case 0: return [4 /*yield*/, entityWithValidations_1.entityWithValidations.create4RowsInDp(createEntity)];
63
- case 1:
64
- s = _c.sent();
65
- _b = expect;
66
- return [4 /*yield*/, s.find({
67
- where: sql_database_1.SqlDatabase.customFilter(function (build) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
68
- return tslib_1.__generator(this, function (_a) {
69
- build.sql = s.metadata.fields.myId.options.dbName + ' in (1,3)';
70
- return [2 /*return*/];
71
- });
72
- }); })
73
- })];
74
- case 2:
75
- _b.apply(void 0, [(_c.sent()).length]).toBe(2);
76
- return [2 /*return*/];
77
- }
78
- });
79
- });
80
- }, false);
81
- backend_database_test_setup_backend_spec_1.testPostgresImplementation("sql filter2", function (_a) {
82
- var createEntity = _a.createEntity;
83
- return tslib_1.__awaiter(void 0, void 0, void 0, function () {
84
- var s, _b;
85
- return tslib_1.__generator(this, function (_c) {
86
- switch (_c.label) {
87
- case 0: return [4 /*yield*/, entityWithValidations_1.entityWithValidations.create4RowsInDp(createEntity)];
88
- case 1:
89
- s = _c.sent();
90
- _b = expect;
91
- return [4 /*yield*/, s.find({
92
- where: {
93
- $or: [
94
- sql_database_1.SqlDatabase.customFilter(function (build) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
95
- return tslib_1.__generator(this, function (_a) {
96
- build.sql = s.metadata.fields.myId.options.dbName + ' in (1,3)';
97
- return [2 /*return*/];
98
- });
99
- }); }),
100
- {
101
- myId: 2
102
- }
103
- ]
104
- }
105
- })];
106
- case 2:
107
- _b.apply(void 0, [(_c.sent()).length]).toBe(3);
108
- return [2 /*return*/];
109
- }
110
- });
111
- });
112
- }, false);
113
- backend_database_test_setup_backend_spec_1.testKnexPGSqlImpl("knex filter", function (_a) {
114
- var createEntity = _a.createEntity;
115
- return tslib_1.__awaiter(void 0, void 0, void 0, function () {
116
- var s, _b;
117
- return tslib_1.__generator(this, function (_c) {
118
- switch (_c.label) {
119
- case 0: return [4 /*yield*/, entityWithValidations_1.entityWithValidations.create4RowsInDp(createEntity)];
120
- case 1:
121
- s = _c.sent();
122
- _b = expect;
123
- return [4 /*yield*/, s.find({
124
- where: remult_knex_1.KnexDataProvider.customFilter(function () { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
125
- return tslib_1.__generator(this, function (_a) {
126
- return [2 /*return*/, function (build) { return build.whereIn(s.metadata.fields.myId.options.dbName, [1, 3]); }];
127
- });
128
- }); })
129
- })];
130
- case 2:
131
- _b.apply(void 0, [(_c.sent()).length]).toBe(2);
132
- return [2 /*return*/];
133
- }
134
- });
135
- });
136
- }, false);
137
- backend_database_test_setup_backend_spec_1.testKnexPGSqlImpl("knex filter2", function (_a) {
138
- var createEntity = _a.createEntity;
139
- return tslib_1.__awaiter(void 0, void 0, void 0, function () {
140
- var s, _b;
141
- return tslib_1.__generator(this, function (_c) {
142
- switch (_c.label) {
143
- case 0: return [4 /*yield*/, entityWithValidations_1.entityWithValidations.create4RowsInDp(createEntity)];
144
- case 1:
145
- s = _c.sent();
146
- _b = expect;
147
- return [4 /*yield*/, s.find({
148
- where: {
149
- $or: [remult_knex_1.KnexDataProvider.customFilter(function () { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
150
- return tslib_1.__generator(this, function (_a) {
151
- return [2 /*return*/, function (build) { return build.whereIn(s.metadata.fields.myId.options.dbName, [1, 3]); }];
152
- });
153
- }); }), {
154
- myId: 4
155
- }]
156
- }
157
- })];
158
- case 2:
159
- _b.apply(void 0, [(_c.sent()).length]).toBe(3);
160
- return [2 /*return*/];
161
- }
162
- });
163
- });
164
- }, false);
165
- it("test async hooks and static remult", function () { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
166
- var gotException, promises;
167
- return tslib_1.__generator(this, function (_a) {
168
- switch (_a.label) {
169
- case 0:
170
- gotException = true;
171
- try {
172
- expressBridge_1.RemultAsyncLocalStorage.instance.getRemult();
173
- gotException = false;
174
- }
175
- catch (_b) { }
176
- expect(gotException).toBe(true);
177
- initAsyncHooks_1.initAsyncHooks();
178
- expect(expressBridge_1.RemultAsyncLocalStorage.instance.getRemult()).toBe(undefined);
179
- expressBridge_1.RemultAsyncLocalStorage.enable();
180
- try {
181
- remult_proxy_1.remult.isAllowed(false);
182
- gotException = false;
183
- }
184
- catch (_c) { }
185
- expect(gotException).toBe(true);
186
- promises = [];
187
- expressBridge_1.RemultAsyncLocalStorage.instance.run(new context_1.Remult(), function () {
188
- remult_proxy_1.remult.user = { id: 'noam' };
189
- promises.push(new Promise(function (res) {
190
- setTimeout(function () {
191
- expect(remult_proxy_1.remult.user.id).toBe('noam');
192
- res({});
193
- }, 10);
194
- }));
195
- expressBridge_1.RemultAsyncLocalStorage.instance.run(new context_1.Remult(), function () {
196
- remult_proxy_1.remult.user = { id: 'yoni' };
197
- promises.push(new Promise(function (res) {
198
- setTimeout(function () {
199
- expect(remult_proxy_1.remult.user.id).toBe('yoni');
200
- res({});
201
- }, 10);
202
- }));
203
- });
204
- promises.push(new Promise(function (res) {
205
- setTimeout(function () {
206
- expect(remult_proxy_1.remult.user.id).toBe('noam');
207
- res({});
208
- }, 10);
209
- }));
210
- });
211
- return [4 /*yield*/, Promise.all(promises)];
212
- case 1:
213
- _a.sent();
214
- return [2 /*return*/];
215
- }
216
- });
217
- }); });
@@ -1,6 +0,0 @@
1
- export declare class Task {
2
- id: string;
3
- title: string;
4
- completed: boolean;
5
- static testForbidden(): void;
6
- }