remult 0.21.1 → 0.22.0
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/README.md +47 -46
- package/SseSubscriptionServer.js +9 -9
- package/ably.js +1 -1
- package/esm/SseSubscriptionServer.js +11 -11
- package/esm/ably.js +2 -2
- package/esm/angular/interfaces/index.d.ts +1 -0
- package/esm/angular/interfaces/index.js +1 -0
- package/esm/angular/interfaces/src/column-collection.d.ts +70 -0
- package/esm/angular/interfaces/src/column-collection.js +341 -0
- package/esm/angular/interfaces/src/data-area-settings.d.ts +15 -0
- package/esm/angular/interfaces/src/data-area-settings.js +35 -0
- package/esm/angular/interfaces/src/data-control-interfaces.d.ts +36 -0
- package/esm/angular/interfaces/src/data-control-interfaces.js +57 -0
- package/esm/angular/interfaces/src/dataList.d.ts +13 -0
- package/esm/angular/interfaces/src/dataList.js +42 -0
- package/esm/angular/interfaces/src/filter-helper.d.ts +13 -0
- package/esm/angular/interfaces/src/filter-helper.js +59 -0
- package/esm/angular/interfaces/src/grid-settings.d.ts +145 -0
- package/esm/angular/interfaces/src/grid-settings.js +387 -0
- package/esm/angular/interfaces/src/public_api.d.ts +4 -0
- package/esm/angular/interfaces/src/public_api.js +4 -0
- package/esm/angular/src/angular/RemultAngularPluginsService.d.ts +4 -0
- package/esm/angular/src/angular/RemultAngularPluginsService.js +3 -0
- package/esm/angular/src/angular/data-control/data-control2.component.d.ts +49 -0
- package/esm/angular/src/angular/data-control/data-control2.component.js +138 -0
- package/esm/core/SseSubscriptionServer.d.ts +33 -0
- package/esm/core/SseSubscriptionServer.js +107 -0
- package/esm/core/assign.d.ts +1 -0
- package/esm/core/assign.js +5 -0
- package/esm/core/classType.d.ts +3 -0
- package/esm/core/classType.js +1 -0
- package/esm/core/index.d.ts +27 -0
- package/esm/core/index.js +25 -0
- package/esm/core/inputTypes.d.ts +9 -0
- package/esm/core/inputTypes.js +9 -0
- package/esm/core/live-query/data-provider-live-query-storage.d.ts +22 -0
- package/esm/core/live-query/data-provider-live-query-storage.js +71 -0
- package/esm/core/postgres/index.d.ts +2 -0
- package/esm/core/postgres/index.js +2 -0
- package/esm/core/postgres/postgres-data-provider.d.ts +36 -0
- package/esm/core/postgres/postgres-data-provider.js +120 -0
- package/esm/core/postgres/schema-builder.d.ts +17 -0
- package/esm/core/postgres/schema-builder.js +153 -0
- package/esm/core/remult-fresh.d.ts +17 -0
- package/esm/core/remult-fresh.js +29 -0
- package/esm/core/remult-knex/index.d.ts +30 -0
- package/esm/core/remult-knex/index.js +446 -0
- package/esm/core/remult-mongo.d.ts +24 -0
- package/esm/core/remult-mongo.js +254 -0
- package/esm/core/server/JsonEntityFileStorage.d.ts +10 -0
- package/esm/core/server/JsonEntityFileStorage.js +25 -0
- package/esm/core/server/core.d.ts +4 -0
- package/esm/core/server/core.js +4 -0
- package/esm/core/server/expressBridge.d.ts +182 -0
- package/esm/core/server/expressBridge.js +938 -0
- package/esm/core/server/index.d.ts +6 -0
- package/esm/core/server/index.js +9 -0
- package/esm/core/server/initAsyncHooks.d.ts +1 -0
- package/esm/core/server/initAsyncHooks.js +9 -0
- package/esm/core/server/initDataProvider.d.ts +2 -0
- package/esm/core/server/initDataProvider.js +14 -0
- package/esm/core/src/__EntityValueProvider.d.ts +11 -0
- package/esm/core/src/__EntityValueProvider.js +1 -0
- package/esm/core/src/__RowsOfDataForTesting.d.ts +3 -0
- package/esm/core/src/__RowsOfDataForTesting.js +1 -0
- package/esm/core/src/backend-tests/backend-database-test-setup.backend-spec.d.ts +6 -0
- package/esm/core/src/backend-tests/backend-database-test-setup.backend-spec.js +147 -0
- package/esm/core/src/backend-tests/my-test.backend-spec.d.ts +1 -0
- package/esm/core/src/backend-tests/my-test.backend-spec.js +197 -0
- package/esm/core/src/backend-tests/test-http-server.backend-spec.d.ts +1 -0
- package/esm/core/src/backend-tests/test-http-server.backend-spec.js +167 -0
- package/esm/core/src/buildRestDataProvider.d.ts +31 -0
- package/esm/core/src/buildRestDataProvider.js +113 -0
- package/esm/core/src/column-interfaces.d.ts +154 -0
- package/esm/core/src/column-interfaces.js +7 -0
- package/esm/core/src/column.d.ts +58 -0
- package/esm/core/src/column.js +174 -0
- package/esm/core/src/context.d.ts +134 -0
- package/esm/core/src/context.js +286 -0
- package/esm/core/src/data-api.d.ts +39 -0
- package/esm/core/src/data-api.js +279 -0
- package/esm/core/src/data-interfaces.d.ts +41 -0
- package/esm/core/src/data-interfaces.js +12 -0
- package/esm/core/src/data-providers/array-entity-data-provider.d.ts +22 -0
- package/esm/core/src/data-providers/array-entity-data-provider.js +252 -0
- package/esm/core/src/data-providers/in-memory-database.d.ts +9 -0
- package/esm/core/src/data-providers/in-memory-database.js +14 -0
- package/esm/core/src/data-providers/json-data-provider.d.ts +12 -0
- package/esm/core/src/data-providers/json-data-provider.js +55 -0
- package/esm/core/src/data-providers/rest-data-provider.d.ts +49 -0
- package/esm/core/src/data-providers/rest-data-provider.js +256 -0
- package/esm/core/src/data-providers/sql-database.d.ts +33 -0
- package/esm/core/src/data-providers/sql-database.js +384 -0
- package/esm/core/src/data-providers/web-sql-data-provider.d.ts +24 -0
- package/esm/core/src/data-providers/web-sql-data-provider.js +143 -0
- package/esm/core/src/entity.d.ts +91 -0
- package/esm/core/src/entity.js +1 -0
- package/esm/core/src/filter/filter-consumer-bridge-to-sql-request.d.ts +50 -0
- package/esm/core/src/filter/filter-consumer-bridge-to-sql-request.js +150 -0
- package/esm/core/src/filter/filter-consumer-bridge-to-url-builder.d.ts +1 -0
- package/esm/core/src/filter/filter-consumer-bridge-to-url-builder.js +1 -0
- package/esm/core/src/filter/filter-interfaces.d.ts +85 -0
- package/esm/core/src/filter/filter-interfaces.js +477 -0
- package/esm/core/src/live-query/LiveQueryClient.d.ts +20 -0
- package/esm/core/src/live-query/LiveQueryClient.js +188 -0
- package/esm/core/src/live-query/SseSubscriptionClient.d.ts +5 -0
- package/esm/core/src/live-query/SseSubscriptionClient.js +86 -0
- package/esm/core/src/live-query/SubscriptionChannel.d.ts +72 -0
- package/esm/core/src/live-query/SubscriptionChannel.js +123 -0
- package/esm/core/src/live-query/SubscriptionServer.d.ts +53 -0
- package/esm/core/src/live-query/SubscriptionServer.js +111 -0
- package/esm/core/src/live-query/live-query-tests.spec.d.ts +6 -0
- package/esm/core/src/live-query/live-query-tests.spec.js +952 -0
- package/esm/core/src/remult-proxy.d.ts +35 -0
- package/esm/core/src/remult-proxy.js +113 -0
- package/esm/core/src/remult3/DecoratorReplacer.d.ts +10 -0
- package/esm/core/src/remult3/DecoratorReplacer.js +20 -0
- package/esm/core/src/remult3/RepositoryImplementation.d.ts +355 -0
- package/esm/core/src/remult3/RepositoryImplementation.js +2109 -0
- package/esm/core/src/remult3/index.d.ts +2 -0
- package/esm/core/src/remult3/index.js +2 -0
- package/esm/core/src/remult3/remult3.d.ts +395 -0
- package/esm/core/src/remult3/remult3.js +2 -0
- package/esm/core/src/server-action.d.ts +81 -0
- package/esm/core/src/server-action.js +394 -0
- package/esm/core/src/shared-tests/db-tests-setup.d.ts +32 -0
- package/esm/core/src/shared-tests/db-tests-setup.js +78 -0
- package/esm/core/src/shared-tests/db-tests.db-tests.d.ts +25 -0
- package/esm/core/src/shared-tests/db-tests.db-tests.js +810 -0
- package/esm/core/src/shared-tests/deleteAll.d.ts +2 -0
- package/esm/core/src/shared-tests/deleteAll.js +4 -0
- package/esm/core/src/shared-tests/entityWithValidations.d.ts +14 -0
- package/esm/core/src/shared-tests/entityWithValidations.js +43 -0
- package/esm/core/src/shared-tests/index.d.ts +4 -0
- package/esm/core/src/shared-tests/index.js +4 -0
- package/esm/core/src/shared-tests/test-custom-id-column.spec.d.ts +1 -0
- package/esm/core/src/shared-tests/test-custom-id-column.spec.js +67 -0
- package/esm/core/src/shared-tests/test-special-value.spec.d.ts +10 -0
- package/esm/core/src/shared-tests/test-special-value.spec.js +73 -0
- package/esm/core/src/shared-tests/test-update-with-null.spec.d.ts +1 -0
- package/esm/core/src/shared-tests/test-update-with-null.spec.js +31 -0
- package/esm/core/src/sort.d.ts +16 -0
- package/esm/core/src/sort.js +103 -0
- package/esm/core/src/sql-command.d.ts +19 -0
- package/esm/core/src/sql-command.js +1 -0
- package/esm/core/src/test.d.ts +3 -0
- package/esm/core/src/test.js +12 -0
- package/esm/core/src/tests/Done.d.ts +5 -0
- package/esm/core/src/tests/Done.js +9 -0
- package/esm/core/src/tests/RowProvider.spec.d.ts +16 -0
- package/esm/core/src/tests/RowProvider.spec.js +631 -0
- package/esm/core/src/tests/TestDataApiResponse.d.ts +10 -0
- package/esm/core/src/tests/TestDataApiResponse.js +22 -0
- package/esm/core/src/tests/basicRowFunctionality.spec.d.ts +8 -0
- package/esm/core/src/tests/basicRowFunctionality.spec.js +2103 -0
- package/esm/core/src/tests/c.d.ts +8 -0
- package/esm/core/src/tests/c.js +13 -0
- package/esm/core/src/tests/createData.d.ts +7 -0
- package/esm/core/src/tests/createData.js +22 -0
- package/esm/core/src/tests/d.d.ts +6 -0
- package/esm/core/src/tests/d.js +11 -0
- package/esm/core/src/tests/dWithPrefilter.d.ts +7 -0
- package/esm/core/src/tests/dWithPrefilter.js +18 -0
- package/esm/core/src/tests/entityForCustomFilter.d.ts +16 -0
- package/esm/core/src/tests/entityForCustomFilter.js +33 -0
- package/esm/core/src/tests/entityWithValidationsOnColumn.d.ts +5 -0
- package/esm/core/src/tests/entityWithValidationsOnColumn.js +13 -0
- package/esm/core/src/tests/frontend-database-tests-setup.spec.d.ts +4 -0
- package/esm/core/src/tests/frontend-database-tests-setup.spec.js +37 -0
- package/esm/core/src/tests/h.d.ts +6 -0
- package/esm/core/src/tests/h.js +24 -0
- package/esm/core/src/tests/remult-3-basic-tests.spec.d.ts +1 -0
- package/esm/core/src/tests/remult-3-basic-tests.spec.js +236 -0
- package/esm/core/src/tests/remult-3-entities.d.ts +23 -0
- package/esm/core/src/tests/remult-3-entities.js +39 -0
- package/esm/core/src/tests/tasks.d.ts +6 -0
- package/esm/core/src/tests/tasks.js +10 -0
- package/esm/core/src/tests/test-context-as-storage.spec.d.ts +0 -0
- package/esm/core/src/tests/test-context-as-storage.spec.js +1 -0
- package/esm/core/src/tests/test-data-api/predefined-filter.spec.d.ts +1 -0
- package/esm/core/src/tests/test-data-api/predefined-filter.spec.js +389 -0
- package/esm/core/src/tests/test-data-api/test-put-with-validation.spec.d.ts +5 -0
- package/esm/core/src/tests/test-data-api/test-put-with-validation.spec.js +152 -0
- package/esm/core/src/tests/test-decorator-precedence.spec.d.ts +1 -0
- package/esm/core/src/tests/test-decorator-precedence.spec.js +38 -0
- package/esm/core/src/tests/test-default-value.spec.d.ts +1 -0
- package/esm/core/src/tests/test-default-value.spec.js +33 -0
- package/esm/core/src/tests/test-entity-inheritance.spec.d.ts +14 -0
- package/esm/core/src/tests/test-entity-inheritance.spec.js +82 -0
- package/esm/core/src/tests/test-exceptions.spec.d.ts +1 -0
- package/esm/core/src/tests/test-exceptions.spec.js +375 -0
- package/esm/core/src/tests/test-json.spec.d.ts +1 -0
- package/esm/core/src/tests/test-json.spec.js +115 -0
- package/esm/core/src/tests/test-many-to-one-relation-in-entity.spec.d.ts +9 -0
- package/esm/core/src/tests/test-many-to-one-relation-in-entity.spec.js +809 -0
- package/esm/core/src/tests/test-non-active-record.spec.d.ts +1 -0
- package/esm/core/src/tests/test-non-active-record.spec.js +66 -0
- package/esm/core/src/tests/test-object-column.spec.d.ts +1 -0
- package/esm/core/src/tests/test-object-column.spec.js +189 -0
- package/esm/core/src/tests/test-paged-foreach.spec.d.ts +1 -0
- package/esm/core/src/tests/test-paged-foreach.spec.js +328 -0
- package/esm/core/src/tests/test-remult-angular.spec.d.ts +1 -0
- package/esm/core/src/tests/test-remult-angular.spec.js +23 -0
- package/esm/core/src/tests/test-server-controller.spec.d.ts +7 -0
- package/esm/core/src/tests/test-server-controller.spec.js +489 -0
- package/esm/core/src/tests/test-server-expressions.spec.d.ts +1 -0
- package/esm/core/src/tests/test-server-expressions.spec.js +178 -0
- package/esm/core/src/tests/test-server-method-on-entity.spec.d.ts +1 -0
- package/esm/core/src/tests/test-server-method-on-entity.spec.js +306 -0
- package/esm/core/src/tests/test-sql-expression.spec.d.ts +5 -0
- package/esm/core/src/tests/test-sql-expression.spec.js +205 -0
- package/esm/core/src/tests/test-sql.spec.d.ts +1 -0
- package/esm/core/src/tests/test-sql.spec.js +170 -0
- package/esm/core/src/tests/test-subscribe.spec.d.ts +1 -0
- package/esm/core/src/tests/test-subscribe.spec.js +135 -0
- package/esm/core/src/tests/test-type-recovery.spec.d.ts +1 -0
- package/esm/core/src/tests/test-type-recovery.spec.js +49 -0
- package/esm/core/src/tests/test-where-api.spec.d.ts +1 -0
- package/esm/core/src/tests/test-where-api.spec.js +434 -0
- package/esm/core/src/tests/testHelper.spec.d.ts +36 -0
- package/esm/core/src/tests/testHelper.spec.js +226 -0
- package/esm/core/src/tests/testModel/models.d.ts +16 -0
- package/esm/core/src/tests/testModel/models.js +25 -0
- package/esm/core/src/validators.d.ts +14 -0
- package/esm/core/src/validators.js +33 -0
- package/esm/core/src/valueConverters.d.ts +13 -0
- package/esm/core/src/valueConverters.js +197 -0
- package/esm/core/urlBuilder.d.ts +6 -0
- package/esm/core/urlBuilder.js +20 -0
- package/esm/graphql.js +194 -73
- package/esm/index.d.ts +10 -10
- package/esm/index.js +8 -8
- package/esm/inputTypes.js +1 -1
- package/esm/live-query/data-provider-live-query-storage.d.ts +3 -3
- package/esm/live-query/data-provider-live-query-storage.js +12 -9
- package/esm/myLog.js +2 -2
- package/esm/postgres/postgres-data-provider.d.ts +2 -2
- package/esm/postgres/postgres-data-provider.js +20 -14
- package/esm/postgres/schema-builder.d.ts +1 -1
- package/esm/postgres/schema-builder.js +28 -21
- package/esm/remult-express.js +2 -2
- package/esm/remult-fastify.js +9 -7
- package/esm/remult-fresh.d.ts +1 -1
- package/esm/remult-fresh.js +5 -8
- package/esm/remult-knex/index.d.ts +4 -4
- package/esm/remult-knex/index.js +75 -59
- package/esm/remult-mongo.js +36 -27
- package/esm/remult-next.d.ts +3 -3
- package/esm/remult-next.js +17 -11
- package/esm/remult-sveltekit.js +10 -10
- package/esm/server/JsonEntityFileStorage.js +3 -1
- package/esm/server/core.d.ts +2 -2
- package/esm/server/core.js +2 -2
- package/esm/server/expressBridge.d.ts +3 -12
- package/esm/server/expressBridge.js +265 -278
- package/esm/server/index.d.ts +2 -2
- package/esm/server/index.js +5 -2
- package/esm/server/initAsyncHooks.js +1 -1
- package/esm/server/initDataProvider.js +1 -1
- package/esm/src/backend-tests/backend-database-test-setup.backend-spec.d.ts +1 -1
- package/esm/src/backend-tests/backend-database-test-setup.backend-spec.js +47 -38
- package/esm/src/buildRestDataProvider.d.ts +1 -1
- package/esm/src/buildRestDataProvider.js +21 -13
- package/esm/src/column-interfaces.d.ts +9 -9
- package/esm/src/column.d.ts +4 -0
- package/esm/src/column.js +23 -11
- package/esm/src/context.d.ts +20 -8
- package/esm/src/context.js +65 -24
- package/esm/src/data-api.d.ts +0 -1
- package/esm/src/data-api.js +38 -37
- package/esm/src/data-interfaces.d.ts +1 -1
- package/esm/src/data-interfaces.js +1 -1
- package/esm/src/data-providers/array-entity-data-provider.js +9 -9
- package/esm/src/data-providers/in-memory-database.d.ts +1 -1
- package/esm/src/data-providers/in-memory-database.js +3 -1
- package/esm/src/data-providers/json-data-provider.js +8 -8
- package/esm/src/data-providers/rest-data-provider.d.ts +1 -1
- package/esm/src/data-providers/rest-data-provider.js +52 -36
- package/esm/src/data-providers/sql-database.d.ts +5 -5
- package/esm/src/data-providers/sql-database.js +53 -36
- package/esm/src/data-providers/web-sql-data-provider.d.ts +4 -4
- package/esm/src/data-providers/web-sql-data-provider.js +15 -13
- package/esm/src/entity.d.ts +24 -24
- package/esm/src/filter/filter-consumer-bridge-to-sql-request.d.ts +4 -4
- package/esm/src/filter/filter-consumer-bridge-to-sql-request.js +35 -20
- package/esm/src/filter/filter-interfaces.d.ts +7 -7
- package/esm/src/filter/filter-interfaces.js +108 -88
- package/esm/src/live-query/LiveQueryClient.js +37 -29
- package/esm/src/live-query/SseSubscriptionClient.d.ts +1 -1
- package/esm/src/live-query/SseSubscriptionClient.js +14 -14
- package/esm/src/live-query/SubscriptionChannel.d.ts +3 -3
- package/esm/src/live-query/SubscriptionChannel.js +27 -25
- package/esm/src/live-query/SubscriptionServer.js +24 -20
- package/esm/src/remult-proxy.d.ts +1 -1
- package/esm/src/remult-proxy.js +87 -29
- package/esm/src/remult3/DecoratorReplacer.d.ts +2 -2
- package/esm/src/remult3/RepositoryImplementation.d.ts +51 -41
- package/esm/src/remult3/RepositoryImplementation.js +336 -206
- package/esm/src/remult3/remult3.d.ts +56 -51
- package/esm/src/remult3/remult3.js +0 -1
- package/esm/src/server-action.d.ts +12 -5
- package/esm/src/server-action.js +79 -53
- package/esm/src/shared-tests/db-tests-setup.d.ts +8 -8
- package/esm/src/shared-tests/db-tests-setup.js +10 -10
- package/esm/src/shared-tests/db-tests.db-tests.d.ts +1 -1
- package/esm/src/shared-tests/db-tests.db-tests.js +279 -177
- package/esm/src/shared-tests/deleteAll.d.ts +1 -1
- package/esm/src/shared-tests/deleteAll.js +1 -1
- package/esm/src/shared-tests/entityWithValidations.js +1 -1
- package/esm/src/shared-tests/test-custom-id-column.spec.js +4 -4
- package/esm/src/shared-tests/test-special-value.spec.js +12 -12
- package/esm/src/shared-tests/test-update-with-null.spec.js +10 -6
- package/esm/src/sort.d.ts +2 -2
- package/esm/src/sort.js +12 -10
- package/esm/src/tests/TestDataApiResponse.d.ts +1 -1
- package/esm/src/tests/TestDataApiResponse.js +3 -4
- package/esm/src/tests/createData.js +2 -2
- package/esm/src/tests/d.js +1 -1
- package/esm/src/tests/dWithPrefilter.js +1 -1
- package/esm/src/tests/entityForCustomFilter.d.ts +4 -4
- package/esm/src/tests/entityForCustomFilter.js +12 -4
- package/esm/src/tests/entityWithValidationsOnColumn.js +1 -1
- package/esm/src/tests/frontend-database-tests-setup.spec.d.ts +1 -1
- package/esm/src/tests/frontend-database-tests-setup.spec.js +14 -14
- package/esm/src/tests/h.js +4 -4
- package/esm/src/tests/remult-3-entities.d.ts +2 -2
- package/esm/src/tests/remult-3-entities.js +6 -6
- package/esm/src/tests/testHelper.spec.d.ts +7 -7
- package/esm/src/tests/testHelper.spec.js +50 -39
- package/esm/src/tests/testModel/models.js +4 -4
- package/esm/src/validators.d.ts +1 -1
- package/esm/src/validators.js +10 -7
- package/esm/src/valueConverters.d.ts +1 -1
- package/esm/src/valueConverters.js +68 -55
- package/esm/test-servers/shared/Task.d.ts +9 -0
- package/esm/test-servers/shared/Task.js +32 -0
- package/esm/test.d.ts +5 -0
- package/esm/test.js +6 -0
- package/graphql.js +157 -45
- package/index.d.ts +10 -10
- package/inputTypes.js +1 -1
- package/live-query/data-provider-live-query-storage.d.ts +3 -3
- package/live-query/data-provider-live-query-storage.js +7 -4
- package/myLog.js +2 -2
- package/package.json +2 -2
- package/postgres/postgres-data-provider.d.ts +2 -2
- package/postgres/postgres-data-provider.js +21 -16
- package/postgres/schema-builder.d.ts +1 -1
- package/postgres/schema-builder.js +22 -15
- package/remult-express.js +1 -1
- package/remult-fastify.js +7 -7
- package/remult-fresh.d.ts +1 -1
- package/remult-fresh.js +1 -4
- package/remult-knex/index.d.ts +4 -4
- package/remult-knex/index.js +50 -35
- package/remult-mongo.js +33 -23
- package/remult-next.d.ts +3 -3
- package/remult-next.js +15 -11
- package/remult-sveltekit.js +14 -15
- package/server/core.d.ts +2 -2
- package/server/expressBridge.d.ts +3 -12
- package/server/expressBridge.js +278 -279
- package/server/index.d.ts +2 -2
- package/server/index.js +5 -2
- package/server/initAsyncHooks.js +2 -2
- package/server/initDataProvider.js +1 -1
- package/src/backend-tests/backend-database-test-setup.backend-spec.d.ts +1 -1
- package/src/backend-tests/backend-database-test-setup.backend-spec.js +40 -31
- package/src/buildRestDataProvider.d.ts +1 -1
- package/src/buildRestDataProvider.js +18 -10
- package/src/column-interfaces.d.ts +9 -9
- package/src/column.d.ts +4 -0
- package/src/column.js +20 -8
- package/src/context.d.ts +20 -8
- package/src/context.js +61 -18
- package/src/data-api.d.ts +0 -1
- package/src/data-api.js +40 -43
- package/src/data-interfaces.d.ts +1 -1
- package/src/data-providers/array-entity-data-provider.js +2 -2
- package/src/data-providers/in-memory-database.d.ts +1 -1
- package/src/data-providers/in-memory-database.js +3 -1
- package/src/data-providers/json-data-provider.js +33 -15
- package/src/data-providers/rest-data-provider.d.ts +1 -1
- package/src/data-providers/rest-data-provider.js +47 -32
- package/src/data-providers/sql-database.d.ts +5 -5
- package/src/data-providers/sql-database.js +41 -24
- package/src/data-providers/web-sql-data-provider.d.ts +4 -4
- package/src/data-providers/web-sql-data-provider.js +10 -8
- package/src/entity.d.ts +24 -24
- package/src/filter/filter-consumer-bridge-to-sql-request.d.ts +4 -4
- package/src/filter/filter-consumer-bridge-to-sql-request.js +34 -17
- package/src/filter/filter-interfaces.d.ts +7 -7
- package/src/filter/filter-interfaces.js +73 -47
- package/src/live-query/LiveQueryClient.js +35 -25
- package/src/live-query/SseSubscriptionClient.d.ts +1 -1
- package/src/live-query/SseSubscriptionClient.js +80 -76
- package/src/live-query/SubscriptionChannel.d.ts +3 -3
- package/src/live-query/SubscriptionChannel.js +26 -18
- package/src/live-query/SubscriptionServer.js +23 -17
- package/src/remult-proxy.d.ts +1 -1
- package/src/remult-proxy.js +84 -35
- package/src/remult3/DecoratorReplacer.d.ts +2 -2
- package/src/remult3/RepositoryImplementation.d.ts +51 -41
- package/src/remult3/RepositoryImplementation.js +402 -257
- package/src/remult3/remult3.d.ts +56 -51
- package/src/remult3/remult3.js +0 -1
- package/src/server-action.d.ts +12 -5
- package/src/server-action.js +78 -48
- package/src/shared-tests/db-tests-setup.d.ts +8 -8
- package/src/shared-tests/db-tests-setup.js +6 -6
- package/src/shared-tests/db-tests.db-tests.d.ts +1 -1
- package/src/shared-tests/db-tests.db-tests.js +350 -153
- package/src/shared-tests/deleteAll.d.ts +1 -1
- package/src/shared-tests/entityWithValidations.js +1 -1
- package/src/shared-tests/test-custom-id-column.spec.js +4 -4
- package/src/shared-tests/test-special-value.spec.js +9 -9
- package/src/shared-tests/test-update-with-null.spec.js +8 -4
- package/src/sort.d.ts +2 -2
- package/src/sort.js +9 -7
- package/src/tests/TestDataApiResponse.d.ts +1 -1
- package/src/tests/TestDataApiResponse.js +3 -4
- package/src/tests/createData.js +1 -1
- package/src/tests/d.js +1 -1
- package/src/tests/dWithPrefilter.js +1 -1
- package/src/tests/entityForCustomFilter.d.ts +4 -4
- package/src/tests/entityForCustomFilter.js +16 -6
- package/src/tests/entityWithValidationsOnColumn.js +1 -1
- package/src/tests/frontend-database-tests-setup.spec.d.ts +1 -1
- package/src/tests/frontend-database-tests-setup.spec.js +8 -8
- package/src/tests/h.js +3 -3
- package/src/tests/remult-3-entities.d.ts +2 -2
- package/src/tests/remult-3-entities.js +8 -4
- package/src/tests/testHelper.spec.d.ts +7 -7
- package/src/tests/testHelper.spec.js +38 -27
- package/src/tests/testModel/models.js +3 -3
- package/src/validators.d.ts +1 -1
- package/src/validators.js +18 -9
- package/src/valueConverters.d.ts +1 -1
- package/src/valueConverters.js +38 -21
- package/esm/remult-svletekit.d.ts +0 -3
- package/esm/remult-svletekit.js +0 -83
- package/esm/src/id-entity.d.ts +0 -4
- package/esm/src/id-entity.js +0 -8
- package/esm/src/remult3/getId.d.ts +0 -2
- package/esm/src/remult3/getId.js +0 -7
- package/postgres/getEntityTypescriptPostgres.d.ts +0 -1
- package/postgres/getEntityTypescriptPostgres.js +0 -125
- package/src/id-entity.d.ts +0 -4
- package/src/id-entity.js +0 -17
- package/src/remult3/getId.d.ts +0 -2
- package/src/remult3/getId.js +0 -11
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { Repository } from
|
|
1
|
+
import { Repository } from '../remult3';
|
|
2
2
|
export declare function deleteAll<entityType>(r: Repository<entityType>): Promise<Repository<entityType>>;
|
|
@@ -4,8 +4,8 @@ var tslib_1 = require("tslib");
|
|
|
4
4
|
var remult3_1 = require("../remult3");
|
|
5
5
|
var DecoratorReplacer_1 = require("../remult3/DecoratorReplacer");
|
|
6
6
|
var db_tests_setup_1 = require("./db-tests-setup");
|
|
7
|
-
describe(
|
|
8
|
-
db_tests_setup_1.testAll(
|
|
7
|
+
describe('custom id column', function () {
|
|
8
|
+
db_tests_setup_1.testAll('basic test', function (_a) {
|
|
9
9
|
var createEntity = _a.createEntity;
|
|
10
10
|
return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
11
11
|
var type, c, r;
|
|
@@ -21,7 +21,7 @@ describe("custom id column", function () {
|
|
|
21
21
|
}(remult3_1.EntityBase));
|
|
22
22
|
DecoratorReplacer_1.describeClass(type, remult3_1.Entity('custom', { allowApiCrud: true }), {
|
|
23
23
|
a: remult3_1.Fields.number(),
|
|
24
|
-
b: remult3_1.Fields.number()
|
|
24
|
+
b: remult3_1.Fields.number(),
|
|
25
25
|
});
|
|
26
26
|
return [4 /*yield*/, createEntity(type)];
|
|
27
27
|
case 1:
|
|
@@ -44,7 +44,7 @@ describe("custom id column", function () {
|
|
|
44
44
|
});
|
|
45
45
|
});
|
|
46
46
|
});
|
|
47
|
-
db_tests_setup_1.testAll(
|
|
47
|
+
db_tests_setup_1.testAll('basic test id column not first column', function (_a) {
|
|
48
48
|
var createEntity = _a.createEntity;
|
|
49
49
|
return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
50
50
|
var type, c, r, _b;
|
|
@@ -21,12 +21,12 @@ var GroupsValue = /** @class */ (function () {
|
|
|
21
21
|
return this.value.split(',');
|
|
22
22
|
};
|
|
23
23
|
GroupsValue.prototype.removeGroup = function (group) {
|
|
24
|
-
var groups = this.value.split(
|
|
24
|
+
var groups = this.value.split(',').map(function (x) { return x.trim(); });
|
|
25
25
|
var index = groups.indexOf(group);
|
|
26
26
|
var result = '';
|
|
27
27
|
if (index >= 0) {
|
|
28
28
|
groups.splice(index, 1);
|
|
29
|
-
result = groups.join(
|
|
29
|
+
result = groups.join(', ');
|
|
30
30
|
}
|
|
31
31
|
return new GroupsValue_1(result);
|
|
32
32
|
};
|
|
@@ -48,10 +48,10 @@ var GroupsValue = /** @class */ (function () {
|
|
|
48
48
|
GroupsValue = GroupsValue_1 = tslib_1.__decorate([
|
|
49
49
|
remult3_1.FieldType({
|
|
50
50
|
valueConverter: {
|
|
51
|
-
toJson: function (x) { return x ? x.value : ''; },
|
|
51
|
+
toJson: function (x) { return (x ? x.value : ''); },
|
|
52
52
|
fromJson: function (x) { return new GroupsValue_1(x); },
|
|
53
|
-
displayValue: function (x) { return x.value; }
|
|
54
|
-
}
|
|
53
|
+
displayValue: function (x) { return x.value; },
|
|
54
|
+
},
|
|
55
55
|
}),
|
|
56
56
|
tslib_1.__metadata("design:paramtypes", [String])
|
|
57
57
|
], GroupsValue);
|
|
@@ -74,11 +74,11 @@ var testGroups = /** @class */ (function (_super) {
|
|
|
74
74
|
tslib_1.__metadata("design:type", GroupsValue)
|
|
75
75
|
], testGroups.prototype, "g", void 0);
|
|
76
76
|
testGroups = tslib_1.__decorate([
|
|
77
|
-
remult3_1.Entity(
|
|
77
|
+
remult3_1.Entity('testGroups', { allowApiCrud: true })
|
|
78
78
|
], testGroups);
|
|
79
79
|
return testGroups;
|
|
80
80
|
}(remult3_1.EntityBase));
|
|
81
|
-
db_tests_setup_1.testAll(
|
|
81
|
+
db_tests_setup_1.testAll('test save and load', function (_a) {
|
|
82
82
|
var createEntity = _a.createEntity;
|
|
83
83
|
return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
84
84
|
var re, x;
|
|
@@ -94,7 +94,7 @@ db_tests_setup_1.testAll("test save and load", function (_a) {
|
|
|
94
94
|
case 3:
|
|
95
95
|
x = _b.sent();
|
|
96
96
|
expect(x.g.evilGet()).toBe('');
|
|
97
|
-
x.g = x.g.addGroup(
|
|
97
|
+
x.g = x.g.addGroup('xx');
|
|
98
98
|
expect(x.$.g.valueChanged()).toBe(true);
|
|
99
99
|
return [4 /*yield*/, x.save()];
|
|
100
100
|
case 4:
|
|
@@ -105,7 +105,7 @@ db_tests_setup_1.testAll("test save and load", function (_a) {
|
|
|
105
105
|
});
|
|
106
106
|
});
|
|
107
107
|
});
|
|
108
|
-
db_tests_setup_1.testAll(
|
|
108
|
+
db_tests_setup_1.testAll('test2 save and load', function (_a) {
|
|
109
109
|
var createEntity = _a.createEntity;
|
|
110
110
|
return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
111
111
|
var re, x;
|
|
@@ -28,7 +28,7 @@ var testNull = /** @class */ (function (_super) {
|
|
|
28
28
|
], testNull);
|
|
29
29
|
return testNull;
|
|
30
30
|
}(remult3_1.EntityBase));
|
|
31
|
-
db_tests_setup_1.testAll(
|
|
31
|
+
db_tests_setup_1.testAll('test that update null works', function (_a) {
|
|
32
32
|
var createEntity = _a.createEntity;
|
|
33
33
|
return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
34
34
|
var r, i;
|
|
@@ -42,7 +42,7 @@ db_tests_setup_1.testAll("test that update null works", function (_a) {
|
|
|
42
42
|
return [4 /*yield*/, i.save()];
|
|
43
43
|
case 2:
|
|
44
44
|
_c.sent();
|
|
45
|
-
expect((_b = i.myCol) === null || _b === void 0 ? void 0 : _b.value).toBe(
|
|
45
|
+
expect((_b = i.myCol) === null || _b === void 0 ? void 0 : _b.value).toBe('abc');
|
|
46
46
|
i.myCol = null;
|
|
47
47
|
expect(i.myCol).toBe(null);
|
|
48
48
|
return [4 /*yield*/, i.save()];
|
|
@@ -54,7 +54,7 @@ db_tests_setup_1.testAll("test that update null works", function (_a) {
|
|
|
54
54
|
});
|
|
55
55
|
});
|
|
56
56
|
}, false);
|
|
57
|
-
db_tests_setup_1.testAll(
|
|
57
|
+
db_tests_setup_1.testAll('test number with null', function (_a) {
|
|
58
58
|
var createEntity = _a.createEntity;
|
|
59
59
|
return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
60
60
|
var r, i, _b, _c;
|
|
@@ -63,7 +63,11 @@ db_tests_setup_1.testAll("test number with null", function (_a) {
|
|
|
63
63
|
case 0: return [4 /*yield*/, createEntity(testNull)];
|
|
64
64
|
case 1:
|
|
65
65
|
r = _d.sent();
|
|
66
|
-
return [4 /*yield*/, r.insert({
|
|
66
|
+
return [4 /*yield*/, r.insert({
|
|
67
|
+
id: 1,
|
|
68
|
+
myCol: { value: 'abc' },
|
|
69
|
+
numberWithNull: null,
|
|
70
|
+
})];
|
|
67
71
|
case 2:
|
|
68
72
|
i = _d.sent();
|
|
69
73
|
expect(i.numberWithNull).toBe(null);
|
package/src/sort.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { FieldMetadata } from
|
|
2
|
-
import { EntityMetadata, EntityOrderBy } from
|
|
1
|
+
import { FieldMetadata } from './column-interfaces';
|
|
2
|
+
import { EntityMetadata, EntityOrderBy } from './remult3';
|
|
3
3
|
export declare class Sort {
|
|
4
4
|
toEntityOrderBy(): EntityOrderBy<any>;
|
|
5
5
|
constructor(...segments: SortSegment[]);
|
package/src/sort.js
CHANGED
|
@@ -18,10 +18,10 @@ var Sort = /** @class */ (function () {
|
|
|
18
18
|
for (var _b = tslib_1.__values(this.Segments), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
19
19
|
var seg = _c.value;
|
|
20
20
|
if (seg.isDescending) {
|
|
21
|
-
result[seg.field.key] =
|
|
21
|
+
result[seg.field.key] = 'desc';
|
|
22
22
|
}
|
|
23
23
|
else
|
|
24
|
-
result[seg.field.key] =
|
|
24
|
+
result[seg.field.key] = 'asc';
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
@@ -81,10 +81,10 @@ var Sort = /** @class */ (function () {
|
|
|
81
81
|
var field = entityDefs.fields.find(key);
|
|
82
82
|
if (field) {
|
|
83
83
|
switch (element) {
|
|
84
|
-
case
|
|
84
|
+
case 'desc':
|
|
85
85
|
sort.Segments.push({ field: field, isDescending: true });
|
|
86
86
|
break;
|
|
87
|
-
case
|
|
87
|
+
case 'asc':
|
|
88
88
|
sort.Segments.push({ field: field });
|
|
89
89
|
}
|
|
90
90
|
}
|
|
@@ -129,7 +129,9 @@ var Sort = /** @class */ (function () {
|
|
|
129
129
|
if (!orderBy || Object.keys(orderBy).length === 0)
|
|
130
130
|
orderBy = entityMetadata.options.defaultOrderBy;
|
|
131
131
|
if (!orderBy)
|
|
132
|
-
orderBy = (_a = {},
|
|
132
|
+
orderBy = (_a = {},
|
|
133
|
+
_a[entityMetadata.idMetadata.field.key] = 'asc',
|
|
134
|
+
_a);
|
|
133
135
|
else
|
|
134
136
|
orderBy = tslib_1.__assign({}, orderBy);
|
|
135
137
|
if (entityMetadata.idMetadata.field instanceof column_1.CompoundIdField) {
|
|
@@ -137,7 +139,7 @@ var Sort = /** @class */ (function () {
|
|
|
137
139
|
for (var _c = tslib_1.__values(entityMetadata.idMetadata.field.fields), _d = _c.next(); !_d.done; _d = _c.next()) {
|
|
138
140
|
var field = _d.value;
|
|
139
141
|
if (!orderBy[field.key]) {
|
|
140
|
-
orderBy[field.key] =
|
|
142
|
+
orderBy[field.key] = 'asc';
|
|
141
143
|
}
|
|
142
144
|
}
|
|
143
145
|
}
|
|
@@ -150,7 +152,7 @@ var Sort = /** @class */ (function () {
|
|
|
150
152
|
}
|
|
151
153
|
}
|
|
152
154
|
else if (!orderBy[entityMetadata.idMetadata.field.key]) {
|
|
153
|
-
orderBy[entityMetadata.idMetadata.field.key] =
|
|
155
|
+
orderBy[entityMetadata.idMetadata.field.key] = 'asc';
|
|
154
156
|
}
|
|
155
157
|
return orderBy;
|
|
156
158
|
};
|
|
@@ -4,10 +4,9 @@ exports.TestDataApiResponse = void 0;
|
|
|
4
4
|
var TestDataApiResponse = /** @class */ (function () {
|
|
5
5
|
function TestDataApiResponse() {
|
|
6
6
|
}
|
|
7
|
-
TestDataApiResponse.prototype.progress = function (progress) {
|
|
8
|
-
};
|
|
7
|
+
TestDataApiResponse.prototype.progress = function (progress) { };
|
|
9
8
|
TestDataApiResponse.prototype.success = function (data) {
|
|
10
|
-
throw new Error(
|
|
9
|
+
throw new Error('didnt expect success: ' + JSON.stringify(data));
|
|
11
10
|
};
|
|
12
11
|
TestDataApiResponse.prototype.forbidden = function () {
|
|
13
12
|
throw new Error('didnt expect forbidden:');
|
|
@@ -22,7 +21,7 @@ var TestDataApiResponse = /** @class */ (function () {
|
|
|
22
21
|
throw new Error('not found');
|
|
23
22
|
};
|
|
24
23
|
TestDataApiResponse.prototype.error = function (data) {
|
|
25
|
-
throw new Error('error: ' + data +
|
|
24
|
+
throw new Error('error: ' + data + ' ' + JSON.stringify(data));
|
|
26
25
|
};
|
|
27
26
|
return TestDataApiResponse;
|
|
28
27
|
}());
|
package/src/tests/createData.js
CHANGED
|
@@ -14,7 +14,7 @@ function createData(doInsert, entity) {
|
|
|
14
14
|
switch (_a.label) {
|
|
15
15
|
case 0:
|
|
16
16
|
remult = new context_1.Remult();
|
|
17
|
-
remult.dataProvider =
|
|
17
|
+
remult.dataProvider = new in_memory_database_1.InMemoryDataProvider();
|
|
18
18
|
if (!entity)
|
|
19
19
|
entity = remult_3_entities_1.Categories;
|
|
20
20
|
return [4 /*yield*/, deleteAll_1.deleteAll(remult.repo(entity))];
|
package/src/tests/d.js
CHANGED
|
@@ -37,7 +37,7 @@ var dWithPrefilter = /** @class */ (function (_super) {
|
|
|
37
37
|
dWithPrefilter = dWithPrefilter_1 = tslib_1.__decorate([
|
|
38
38
|
remult3_1.Entity('d', {
|
|
39
39
|
apiPrefilter: { b: 2 },
|
|
40
|
-
allowApiCrud: true
|
|
40
|
+
allowApiCrud: true,
|
|
41
41
|
})
|
|
42
42
|
], dWithPrefilter);
|
|
43
43
|
return dWithPrefilter;
|
|
@@ -5,12 +5,12 @@ export declare class entityForrawFilter extends EntityBase {
|
|
|
5
5
|
oneAndThree?: boolean;
|
|
6
6
|
dbOneOrThree?: boolean;
|
|
7
7
|
two?: boolean;
|
|
8
|
-
}) => EntityFilter<entityForrawFilter>) & import("../filter/filter-interfaces").
|
|
9
|
-
static oneAndThree: (() => EntityFilter<entityForrawFilter>) & import("../filter/filter-interfaces").
|
|
10
|
-
static testNumericValue: ((y: number) => EntityFilter<entityForrawFilter>) & import("../filter/filter-interfaces").
|
|
8
|
+
}) => EntityFilter<entityForrawFilter>) & import("../filter/filter-interfaces").customFilterInfo<entityForrawFilter>;
|
|
9
|
+
static oneAndThree: (() => EntityFilter<entityForrawFilter>) & import("../filter/filter-interfaces").customFilterInfo<entityForrawFilter>;
|
|
10
|
+
static testNumericValue: ((y: number) => EntityFilter<entityForrawFilter>) & import("../filter/filter-interfaces").customFilterInfo<entityForrawFilter>;
|
|
11
11
|
static testObjectValue: ((y: {
|
|
12
12
|
val: number;
|
|
13
|
-
}) => EntityFilter<entityForrawFilter>) & import("../filter/filter-interfaces").
|
|
13
|
+
}) => EntityFilter<entityForrawFilter>) & import("../filter/filter-interfaces").customFilterInfo<entityForrawFilter>;
|
|
14
14
|
}
|
|
15
15
|
export declare class entityForrawFilter1 extends entityForrawFilter {
|
|
16
16
|
}
|
|
@@ -30,18 +30,28 @@ var entityForrawFilter = /** @class */ (function (_super) {
|
|
|
30
30
|
e_1 = _a.sent();
|
|
31
31
|
r.push({
|
|
32
32
|
$and: [
|
|
33
|
-
sql_database_1.SqlDatabase.rawFilter(function (x) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
34
|
-
return
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
sql_database_1.SqlDatabase.rawFilter(function (x) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
34
|
+
return tslib_1.__generator(this, function (_a) {
|
|
35
|
+
return [2 /*return*/, (x.sql =
|
|
36
|
+
e_1.id +
|
|
37
|
+
' in (' +
|
|
38
|
+
x.addParameterAndReturnSqlToken(1) +
|
|
39
|
+
',' +
|
|
40
|
+
x.addParameterAndReturnSqlToken(3) +
|
|
41
|
+
')')];
|
|
42
|
+
});
|
|
43
|
+
}); }),
|
|
44
|
+
array_entity_data_provider_1.ArrayEntityDataProvider.rawFilter(function (x) { return x.id == 1 || x.id == 3; }),
|
|
45
|
+
],
|
|
38
46
|
});
|
|
39
47
|
_a.label = 2;
|
|
40
48
|
case 2: return [2 /*return*/, { $and: r }];
|
|
41
49
|
}
|
|
42
50
|
});
|
|
43
51
|
}); });
|
|
44
|
-
entityForrawFilter.oneAndThree = filter_interfaces_1.Filter.createCustom(function () { return ({
|
|
52
|
+
entityForrawFilter.oneAndThree = filter_interfaces_1.Filter.createCustom(function () { return ({
|
|
53
|
+
id: [1, 3],
|
|
54
|
+
}); });
|
|
45
55
|
entityForrawFilter.testNumericValue = filter_interfaces_1.Filter.createCustom(function (val) { return ({ id: val }); });
|
|
46
56
|
entityForrawFilter.testObjectValue = filter_interfaces_1.Filter.createCustom(function (val) { return ({ id: val.val }); });
|
|
47
57
|
tslib_1.__decorate([
|
|
@@ -17,7 +17,7 @@ var entityWithValidationsOnColumn = /** @class */ (function (_super) {
|
|
|
17
17
|
validate: function (t, c) {
|
|
18
18
|
if (!t.name || t.name.length < 3)
|
|
19
19
|
c.error = 'invalid on column';
|
|
20
|
-
}
|
|
20
|
+
},
|
|
21
21
|
}),
|
|
22
22
|
tslib_1.__metadata("design:type", String)
|
|
23
23
|
], entityWithValidationsOnColumn.prototype, "name", void 0);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { dbTestWhatSignature } from
|
|
1
|
+
import { dbTestWhatSignature } from '../shared-tests/db-tests-setup';
|
|
2
2
|
export declare function testWebSqlImpl(key: string, what: dbTestWhatSignature, focus?: boolean): void;
|
|
3
3
|
export declare function testRest(key: string, what: dbTestWhatSignature, focus?: boolean): void;
|
|
4
4
|
import '../shared-tests/';
|
|
@@ -11,7 +11,7 @@ var testHelper_spec_1 = require("./testHelper.spec");
|
|
|
11
11
|
function testWebSqlImpl(key, what, focus) {
|
|
12
12
|
var _this = this;
|
|
13
13
|
if (focus === void 0) { focus = false; }
|
|
14
|
-
db_tests_setup_1.itWithFocus(key +
|
|
14
|
+
db_tests_setup_1.itWithFocus(key + ' - WebSql', function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
15
15
|
var webSql, sql, _a, _b, r, _c, e_1_1, remult;
|
|
16
16
|
var e_1, _d;
|
|
17
17
|
var _this = this;
|
|
@@ -33,13 +33,13 @@ function testWebSqlImpl(key, what, focus) {
|
|
|
33
33
|
r = _b.value;
|
|
34
34
|
_c = r.name;
|
|
35
35
|
switch (_c) {
|
|
36
|
-
case
|
|
37
|
-
case
|
|
36
|
+
case '__WebKitDatabaseInfoTable__': return [3 /*break*/, 5];
|
|
37
|
+
case 'sqlite_sequence': return [3 /*break*/, 6];
|
|
38
38
|
}
|
|
39
39
|
return [3 /*break*/, 7];
|
|
40
40
|
case 5: return [3 /*break*/, 9];
|
|
41
41
|
case 6: return [3 /*break*/, 9];
|
|
42
|
-
case 7: return [4 /*yield*/, sql.execute(
|
|
42
|
+
case 7: return [4 /*yield*/, sql.execute('drop table if exists ' + r.name)];
|
|
43
43
|
case 8:
|
|
44
44
|
_e.sent();
|
|
45
45
|
_e.label = 9;
|
|
@@ -59,7 +59,7 @@ function testWebSqlImpl(key, what, focus) {
|
|
|
59
59
|
return [7 /*endfinally*/];
|
|
60
60
|
case 13:
|
|
61
61
|
remult = new context_1.Remult();
|
|
62
|
-
remult.dataProvider =
|
|
62
|
+
remult.dataProvider = sql;
|
|
63
63
|
return [4 /*yield*/, what({ db: sql, remult: remult, createEntity: function (x) { return tslib_1.__awaiter(_this, void 0, void 0, function () { return tslib_1.__generator(this, function (_a) {
|
|
64
64
|
return [2 /*return*/, remult.repo(x)];
|
|
65
65
|
}); }); } })];
|
|
@@ -75,16 +75,16 @@ db_tests_setup_1.addDatabaseToTest(testWebSqlImpl);
|
|
|
75
75
|
function testRest(key, what, focus) {
|
|
76
76
|
var _this = this;
|
|
77
77
|
if (focus === void 0) { focus = false; }
|
|
78
|
-
db_tests_setup_1.itWithFocus(key +
|
|
78
|
+
db_tests_setup_1.itWithFocus(key + ' - Rest Provider', function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
79
79
|
var r, db;
|
|
80
80
|
var _this = this;
|
|
81
81
|
return tslib_1.__generator(this, function (_a) {
|
|
82
82
|
switch (_a.label) {
|
|
83
83
|
case 0:
|
|
84
84
|
r = new context_1.Remult();
|
|
85
|
-
r.dataProvider =
|
|
85
|
+
r.dataProvider = new __1.InMemoryDataProvider();
|
|
86
86
|
db = new testHelper_spec_1.MockRestDataProvider(r);
|
|
87
|
-
__1.remult.dataProvider =
|
|
87
|
+
__1.remult.dataProvider = db;
|
|
88
88
|
return [4 /*yield*/, what({ db: db, remult: __1.remult, createEntity: function (x) { return tslib_1.__awaiter(_this, void 0, void 0, function () { return tslib_1.__generator(this, function (_a) {
|
|
89
89
|
return [2 /*return*/, __1.remult.repo(x)];
|
|
90
90
|
}); }); } })];
|
package/src/tests/h.js
CHANGED
|
@@ -25,8 +25,8 @@ var h = /** @class */ (function (_super) {
|
|
|
25
25
|
h = h_1 = tslib_1.__decorate([
|
|
26
26
|
remult3_1.FieldType({
|
|
27
27
|
valueConverter: {
|
|
28
|
-
toJson: function (x) { return x != undefined ? x : ''; },
|
|
29
|
-
fromJson: function (x) { return x ? x : null; }
|
|
28
|
+
toJson: function (x) { return (x != undefined ? x : ''); },
|
|
29
|
+
fromJson: function (x) { return (x ? x : null); },
|
|
30
30
|
},
|
|
31
31
|
}),
|
|
32
32
|
remult3_1.Entity('h', {
|
|
@@ -36,7 +36,7 @@ var h = /** @class */ (function (_super) {
|
|
|
36
36
|
else
|
|
37
37
|
self.refHId = '';
|
|
38
38
|
},
|
|
39
|
-
allowApiCrud: true
|
|
39
|
+
allowApiCrud: true,
|
|
40
40
|
})
|
|
41
41
|
], h);
|
|
42
42
|
return h;
|
|
@@ -43,7 +43,7 @@ var Categories = /** @class */ (function (_super) {
|
|
|
43
43
|
}
|
|
44
44
|
tslib_1.__decorate([
|
|
45
45
|
remult3_1.Fields.number({
|
|
46
|
-
dbName: 'CategoryID'
|
|
46
|
+
dbName: 'CategoryID',
|
|
47
47
|
}),
|
|
48
48
|
tslib_1.__metadata("design:type", Number)
|
|
49
49
|
], Categories.prototype, "id", void 0);
|
|
@@ -57,13 +57,17 @@ var Categories = /** @class */ (function (_super) {
|
|
|
57
57
|
], Categories.prototype, "description", void 0);
|
|
58
58
|
tslib_1.__decorate([
|
|
59
59
|
remult3_1.Fields.number({
|
|
60
|
-
serverExpression: function (c) {
|
|
60
|
+
serverExpression: function (c) {
|
|
61
|
+
return c.categoryName ? c.categoryName.length : undefined;
|
|
62
|
+
},
|
|
61
63
|
}),
|
|
62
64
|
tslib_1.__metadata("design:type", Number)
|
|
63
65
|
], Categories.prototype, "categoryNameLength", void 0);
|
|
64
66
|
tslib_1.__decorate([
|
|
65
67
|
remult3_1.Fields.number({
|
|
66
|
-
serverExpression: function (c) {
|
|
68
|
+
serverExpression: function (c) {
|
|
69
|
+
return Promise.resolve(c.categoryName ? c.categoryName.length : undefined);
|
|
70
|
+
},
|
|
67
71
|
}),
|
|
68
72
|
tslib_1.__metadata("design:type", Number)
|
|
69
73
|
], Categories.prototype, "categoryNameLengthAsync", void 0);
|
|
@@ -73,7 +77,7 @@ var Categories = /** @class */ (function (_super) {
|
|
|
73
77
|
], Categories.prototype, "status", void 0);
|
|
74
78
|
Categories = tslib_1.__decorate([
|
|
75
79
|
remult3_1.Entity('Categories', {
|
|
76
|
-
allowApiCrud: true
|
|
80
|
+
allowApiCrud: true,
|
|
77
81
|
})
|
|
78
82
|
], Categories);
|
|
79
83
|
return Categories;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import './frontend-database-tests-setup.spec';
|
|
2
|
-
import { Remult } from
|
|
3
|
-
import { DataApi } from
|
|
4
|
-
import { DataProvider, EntityDataProvider } from
|
|
5
|
-
import { InMemoryDataProvider } from
|
|
6
|
-
import { EntityMetadata } from
|
|
2
|
+
import { Remult } from '../context';
|
|
3
|
+
import { DataApi } from '../data-api';
|
|
4
|
+
import { DataProvider, EntityDataProvider } from '../data-interfaces';
|
|
5
|
+
import { InMemoryDataProvider } from '../data-providers/in-memory-database';
|
|
6
|
+
import { EntityMetadata } from '../remult3';
|
|
7
7
|
export declare function itForEach<T>(name: string, arrayOfT: T[], runAsync: (item: T) => Promise<any>): void;
|
|
8
8
|
export declare function fitForEach<T>(name: string, arrayOfT: T[], runAsync: (item: T) => Promise<any>): void;
|
|
9
9
|
export declare function testAsIfOnBackend(what: () => Promise<any>): Promise<void>;
|
|
@@ -31,6 +31,6 @@ export declare class MockRestDataProvider implements DataProvider {
|
|
|
31
31
|
constructor(remult: Remult);
|
|
32
32
|
getEntityDataProvider(metadata: EntityMetadata<any>): EntityDataProvider;
|
|
33
33
|
transaction(action: (dataProvider: DataProvider) => Promise<void>): Promise<void>;
|
|
34
|
-
|
|
34
|
+
isProxy: boolean;
|
|
35
35
|
}
|
|
36
|
-
export declare function createMockHttpDataProvider(dataApi: DataApi<any>): import(
|
|
36
|
+
export declare function createMockHttpDataProvider(dataApi: DataApi<any>): import('../data-interfaces').RestDataProviderHttpProvider;
|