remult 0.17.2 → 0.18.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/SseSubscriptionServer.d.ts +23 -0
- package/SseSubscriptionServer.js +143 -0
- package/ably.d.ts +13 -0
- package/ably.js +59 -0
- package/esm/SseSubscriptionServer.d.ts +23 -0
- package/esm/SseSubscriptionServer.js +102 -0
- package/esm/ably.d.ts +13 -0
- package/esm/ably.js +28 -0
- package/esm/graphql.js +0 -1
- package/esm/index.d.ts +7 -4
- package/esm/index.js +4 -2
- package/esm/live-query/data-provider-live-query-storage.d.ts +23 -0
- package/esm/live-query/data-provider-live-query-storage.js +78 -0
- package/esm/myLog.d.ts +1 -0
- package/esm/myLog.js +5 -0
- package/esm/postgres/postgres-data-provider.d.ts +4 -2
- package/esm/postgres/postgres-data-provider.js +18 -6
- package/esm/postgres/schema-builder.d.ts +2 -1
- package/esm/postgres/schema-builder.js +49 -29
- package/esm/remult-knex/index.d.ts +10 -32
- package/esm/remult-knex/index.js +75 -51
- package/esm/remult-mongo.d.ts +9 -2
- package/esm/remult-mongo.js +24 -8
- package/esm/remult-next.d.ts +11 -0
- package/esm/remult-next.js +27 -0
- package/esm/server/core.d.ts +2 -0
- package/esm/server/core.js +2 -0
- package/esm/server/expressBridge.d.ts +19 -7
- package/esm/server/expressBridge.js +135 -31
- package/esm/server/index.d.ts +2 -1
- package/esm/server/index.js +2 -1
- package/esm/server/initDataProvider.d.ts +2 -0
- package/esm/server/initDataProvider.js +14 -0
- package/esm/src/buildRestDataProvider.d.ts +31 -0
- package/esm/src/buildRestDataProvider.js +110 -0
- package/esm/src/column-interfaces.d.ts +44 -8
- package/esm/src/column.d.ts +3 -3
- package/esm/src/context.d.ts +39 -36
- package/esm/src/context.js +87 -117
- package/esm/src/data-api.d.ts +9 -3
- package/esm/src/data-api.js +130 -63
- package/esm/src/data-interfaces.d.ts +5 -1
- package/esm/src/data-providers/array-entity-data-provider.d.ts +1 -1
- package/esm/src/data-providers/array-entity-data-provider.js +2 -17
- package/esm/src/data-providers/rest-data-provider.d.ts +4 -3
- package/esm/src/data-providers/rest-data-provider.js +64 -23
- package/esm/src/data-providers/sql-database.d.ts +7 -3
- package/esm/src/data-providers/sql-database.js +60 -17
- package/esm/src/data-providers/web-sql-data-provider.d.ts +3 -0
- package/esm/src/data-providers/web-sql-data-provider.js +23 -9
- package/esm/src/entity.d.ts +2 -2
- package/esm/src/filter/filter-consumer-bridge-to-sql-request.d.ts +16 -16
- package/esm/src/filter/filter-consumer-bridge-to-sql-request.js +29 -21
- package/esm/src/filter/filter-interfaces.d.ts +5 -5
- package/esm/src/filter/filter-interfaces.js +31 -26
- package/esm/src/live-query/LiveQueryClient.d.ts +1 -0
- package/esm/src/live-query/LiveQueryClient.js +184 -0
- package/esm/src/live-query/SseSubscriptionClient.d.ts +5 -0
- package/esm/src/live-query/SseSubscriptionClient.js +86 -0
- package/esm/src/live-query/SubscriptionChannel.d.ts +41 -0
- package/esm/src/live-query/SubscriptionChannel.js +121 -0
- package/esm/src/live-query/SubscriptionServer.d.ts +38 -0
- package/esm/src/live-query/SubscriptionServer.js +108 -0
- package/esm/src/remult-proxy.d.ts +1 -1
- package/esm/src/remult-proxy.js +52 -7
- package/esm/src/remult3/RepositoryImplementation.d.ts +14 -5
- package/esm/src/remult3/RepositoryImplementation.js +124 -44
- package/esm/src/remult3/getId.d.ts +2 -0
- package/esm/src/remult3/getId.js +7 -0
- package/esm/src/remult3/remult3.d.ts +67 -10
- package/esm/src/remult3/remult3.js +1 -0
- package/esm/src/server-action.d.ts +5 -1
- package/esm/src/server-action.js +11 -12
- package/esm/src/shared-tests/db-tests-setup.d.ts +12 -5
- package/esm/src/shared-tests/db-tests-setup.js +14 -6
- package/esm/src/shared-tests/db-tests.db-tests.js +71 -10
- package/esm/src/sort.d.ts +1 -0
- package/esm/src/sort.js +18 -0
- package/esm/src/sql-command.d.ts +5 -2
- package/esm/src/tests/entityForCustomFilter.d.ts +6 -6
- package/esm/src/tests/entityForCustomFilter.js +20 -21
- package/esm/src/tests/frontend-database-tests-setup.spec.js +3 -4
- package/esm/src/tests/testHelper.spec.d.ts +3 -1
- package/esm/src/tests/testHelper.spec.js +63 -60
- package/esm/src/valueConverters.js +15 -7
- package/graphql.js +0 -1
- package/index.d.ts +7 -4
- package/index.js +7 -3
- package/live-query/data-provider-live-query-storage.d.ts +23 -0
- package/live-query/data-provider-live-query-storage.js +236 -0
- package/myLog.d.ts +1 -0
- package/myLog.js +20 -0
- package/package.json +18 -1
- package/postgres/postgres-data-provider.d.ts +4 -2
- package/postgres/postgres-data-provider.js +54 -39
- package/postgres/schema-builder.d.ts +2 -1
- package/postgres/schema-builder.js +118 -70
- package/remult-express.js +1 -1
- package/remult-knex/index.d.ts +10 -32
- package/remult-knex/index.js +134 -87
- package/remult-mongo.d.ts +9 -2
- package/remult-mongo.js +39 -7
- package/remult-next.d.ts +11 -0
- package/remult-next.js +73 -0
- package/server/JsonEntityFileStorage.js +2 -2
- package/server/core.d.ts +2 -0
- package/server/core.js +5 -1
- package/server/expressBridge.d.ts +19 -7
- package/server/expressBridge.js +283 -69
- package/server/index.d.ts +2 -1
- package/server/index.js +3 -1
- package/server/initDataProvider.d.ts +2 -0
- package/server/initDataProvider.js +26 -0
- package/src/buildRestDataProvider.d.ts +31 -0
- package/src/buildRestDataProvider.js +162 -0
- package/src/column-interfaces.d.ts +44 -8
- package/src/column.d.ts +3 -3
- package/src/context.d.ts +39 -36
- package/src/context.js +171 -166
- package/src/data-api.d.ts +9 -3
- package/src/data-api.js +233 -88
- package/src/data-interfaces.d.ts +5 -1
- package/src/data-providers/array-entity-data-provider.d.ts +1 -1
- package/src/data-providers/array-entity-data-provider.js +2 -17
- package/src/data-providers/rest-data-provider.d.ts +4 -3
- package/src/data-providers/rest-data-provider.js +105 -39
- package/src/data-providers/sql-database.d.ts +7 -3
- package/src/data-providers/sql-database.js +89 -16
- package/src/data-providers/web-sql-data-provider.d.ts +3 -0
- package/src/data-providers/web-sql-data-provider.js +56 -11
- package/src/entity.d.ts +2 -2
- package/src/filter/filter-consumer-bridge-to-sql-request.d.ts +16 -16
- package/src/filter/filter-consumer-bridge-to-sql-request.js +59 -50
- package/src/filter/filter-interfaces.d.ts +5 -5
- package/src/filter/filter-interfaces.js +31 -26
- package/src/live-query/LiveQueryClient.d.ts +1 -0
- package/src/live-query/LiveQueryClient.js +283 -0
- package/src/live-query/SseSubscriptionClient.d.ts +5 -0
- package/src/live-query/SseSubscriptionClient.js +150 -0
- package/src/live-query/SubscriptionChannel.d.ts +41 -0
- package/src/live-query/SubscriptionChannel.js +209 -0
- package/src/live-query/SubscriptionServer.d.ts +38 -0
- package/src/live-query/SubscriptionServer.js +258 -0
- package/src/remult-proxy.d.ts +1 -1
- package/src/remult-proxy.js +153 -8
- package/src/remult3/RepositoryImplementation.d.ts +14 -5
- package/src/remult3/RepositoryImplementation.js +200 -85
- package/src/remult3/getId.d.ts +2 -0
- package/src/remult3/getId.js +11 -0
- package/src/remult3/remult3.d.ts +67 -10
- package/src/remult3/remult3.js +1 -0
- package/src/server-action.d.ts +5 -1
- package/src/server-action.js +11 -11
- package/src/shared-tests/db-tests-setup.d.ts +12 -5
- package/src/shared-tests/db-tests-setup.js +17 -8
- package/src/shared-tests/db-tests.db-tests.js +140 -8
- package/src/sort.d.ts +1 -0
- package/src/sort.js +18 -0
- package/src/sql-command.d.ts +5 -2
- package/src/tests/entityForCustomFilter.d.ts +6 -6
- package/src/tests/entityForCustomFilter.js +30 -31
- package/src/tests/frontend-database-tests-setup.spec.js +5 -6
- package/src/tests/testHelper.spec.d.ts +3 -1
- package/src/tests/testHelper.spec.js +104 -100
- package/src/valueConverters.js +15 -7
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.entityForrawFilter1 = exports.entityForrawFilter = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
5
|
var sql_database_1 = require("../data-providers/sql-database");
|
|
6
6
|
var remult3_1 = require("../remult3");
|
|
7
7
|
var filter_interfaces_1 = require("../filter/filter-interfaces");
|
|
8
8
|
var array_entity_data_provider_1 = require("../data-providers/array-entity-data-provider");
|
|
9
9
|
var filter_consumer_bridge_to_sql_request_1 = require("../filter/filter-consumer-bridge-to-sql-request");
|
|
10
|
-
var
|
|
11
|
-
tslib_1.__extends(
|
|
12
|
-
function
|
|
10
|
+
var entityForrawFilter = /** @class */ (function (_super) {
|
|
11
|
+
tslib_1.__extends(entityForrawFilter, _super);
|
|
12
|
+
function entityForrawFilter() {
|
|
13
13
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
14
14
|
}
|
|
15
|
-
|
|
16
|
-
var
|
|
17
|
-
|
|
18
|
-
var r,
|
|
15
|
+
entityForrawFilter_1 = entityForrawFilter;
|
|
16
|
+
var entityForrawFilter_1;
|
|
17
|
+
entityForrawFilter.filter = filter_interfaces_1.Filter.createCustom(function (c, remult) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
|
|
18
|
+
var r, e_1;
|
|
19
19
|
return tslib_1.__generator(this, function (_a) {
|
|
20
20
|
switch (_a.label) {
|
|
21
21
|
case 0:
|
|
@@ -25,16 +25,15 @@ var entityForCustomFilter = /** @class */ (function (_super) {
|
|
|
25
25
|
if (c.two)
|
|
26
26
|
r.push({ id: 2 });
|
|
27
27
|
if (!c.dbOneOrThree) return [3 /*break*/, 2];
|
|
28
|
-
|
|
29
|
-
return [4 /*yield*/, filter_consumer_bridge_to_sql_request_1.getDbNameProvider(meta_1)];
|
|
28
|
+
return [4 /*yield*/, filter_consumer_bridge_to_sql_request_1.dbNamesOf(remult.repo(entityForrawFilter_1))];
|
|
30
29
|
case 1:
|
|
31
30
|
e_1 = _a.sent();
|
|
32
31
|
r.push({
|
|
33
32
|
$and: [
|
|
34
|
-
sql_database_1.SqlDatabase.
|
|
35
|
-
return [2 /*return*/, x.sql = e_1.
|
|
33
|
+
sql_database_1.SqlDatabase.rawFilter(function (x) { return tslib_1.__awaiter(void 0, void 0, void 0, function () { return tslib_1.__generator(this, function (_a) {
|
|
34
|
+
return [2 /*return*/, x.sql = e_1.id + ' in (' + x.addParameterAndReturnSqlToken(1) + "," + x.addParameterAndReturnSqlToken(3) + ")"];
|
|
36
35
|
}); }); }),
|
|
37
|
-
array_entity_data_provider_1.ArrayEntityDataProvider.
|
|
36
|
+
array_entity_data_provider_1.ArrayEntityDataProvider.rawFilter(function (x) { return x.id == 1 || x.id == 3; })
|
|
38
37
|
]
|
|
39
38
|
});
|
|
40
39
|
_a.label = 2;
|
|
@@ -42,27 +41,27 @@ var entityForCustomFilter = /** @class */ (function (_super) {
|
|
|
42
41
|
}
|
|
43
42
|
});
|
|
44
43
|
}); });
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
44
|
+
entityForrawFilter.oneAndThree = filter_interfaces_1.Filter.createCustom(function () { return ({ id: [1, 3] }); });
|
|
45
|
+
entityForrawFilter.testNumericValue = filter_interfaces_1.Filter.createCustom(function (val) { return ({ id: val }); });
|
|
46
|
+
entityForrawFilter.testObjectValue = filter_interfaces_1.Filter.createCustom(function (val) { return ({ id: val.val }); });
|
|
48
47
|
tslib_1.__decorate([
|
|
49
48
|
remult3_1.Fields.integer(),
|
|
50
49
|
tslib_1.__metadata("design:type", Number)
|
|
51
|
-
],
|
|
52
|
-
|
|
53
|
-
remult3_1.Entity('
|
|
54
|
-
],
|
|
55
|
-
return
|
|
50
|
+
], entityForrawFilter.prototype, "id", void 0);
|
|
51
|
+
entityForrawFilter = entityForrawFilter_1 = tslib_1.__decorate([
|
|
52
|
+
remult3_1.Entity('entityForrawFilter', { allowApiCrud: true })
|
|
53
|
+
], entityForrawFilter);
|
|
54
|
+
return entityForrawFilter;
|
|
56
55
|
}(remult3_1.EntityBase));
|
|
57
|
-
exports.
|
|
58
|
-
var
|
|
59
|
-
tslib_1.__extends(
|
|
60
|
-
function
|
|
56
|
+
exports.entityForrawFilter = entityForrawFilter;
|
|
57
|
+
var entityForrawFilter1 = /** @class */ (function (_super) {
|
|
58
|
+
tslib_1.__extends(entityForrawFilter1, _super);
|
|
59
|
+
function entityForrawFilter1() {
|
|
61
60
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
62
61
|
}
|
|
63
|
-
|
|
64
|
-
remult3_1.Entity('
|
|
65
|
-
],
|
|
66
|
-
return
|
|
67
|
-
}(
|
|
68
|
-
exports.
|
|
62
|
+
entityForrawFilter1 = tslib_1.__decorate([
|
|
63
|
+
remult3_1.Entity('entityForrawFilter1', { allowApiCrud: true })
|
|
64
|
+
], entityForrawFilter1);
|
|
65
|
+
return entityForrawFilter1;
|
|
66
|
+
}(entityForrawFilter));
|
|
67
|
+
exports.entityForrawFilter1 = entityForrawFilter1;
|
|
@@ -76,18 +76,17 @@ function testRest(key, what, focus) {
|
|
|
76
76
|
var _this = this;
|
|
77
77
|
if (focus === void 0) { focus = false; }
|
|
78
78
|
db_tests_setup_1.itWithFocus(key + " - Rest Provider", function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
79
|
-
var r,
|
|
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
85
|
r.dataProvider = (new __1.InMemoryDataProvider());
|
|
86
|
-
remult = new context_1.Remult();
|
|
87
86
|
db = new testHelper_spec_1.MockRestDataProvider(r);
|
|
88
|
-
remult.dataProvider = (db);
|
|
89
|
-
return [4 /*yield*/, what({ db: db, remult: remult, createEntity: function (x) { return tslib_1.__awaiter(_this, void 0, void 0, function () { return tslib_1.__generator(this, function (_a) {
|
|
90
|
-
return [2 /*return*/, remult.repo(x)];
|
|
87
|
+
__1.remult.dataProvider = (db);
|
|
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
|
+
return [2 /*return*/, __1.remult.repo(x)];
|
|
91
90
|
}); }); } })];
|
|
92
91
|
case 1:
|
|
93
92
|
_a.sent();
|
|
@@ -97,5 +96,5 @@ function testRest(key, what, focus) {
|
|
|
97
96
|
}); }, focus);
|
|
98
97
|
}
|
|
99
98
|
exports.testRest = testRest;
|
|
100
|
-
db_tests_setup_1.addDatabaseToTest(testRest);
|
|
99
|
+
db_tests_setup_1.addDatabaseToTest(testRest, db_tests_setup_1.TestDbs.restDataProvider);
|
|
101
100
|
require("../shared-tests/");
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import './frontend-database-tests-setup.spec';
|
|
2
2
|
import { Remult } from "../context";
|
|
3
|
+
import { DataApi } from "../data-api";
|
|
3
4
|
import { DataProvider, EntityDataProvider } from "../data-interfaces";
|
|
4
5
|
import { InMemoryDataProvider } from "../data-providers/in-memory-database";
|
|
5
6
|
import { EntityMetadata } from "../remult3";
|
|
@@ -30,5 +31,6 @@ export declare class MockRestDataProvider implements DataProvider {
|
|
|
30
31
|
constructor(remult: Remult);
|
|
31
32
|
getEntityDataProvider(metadata: EntityMetadata<any>): EntityDataProvider;
|
|
32
33
|
transaction(action: (dataProvider: DataProvider) => Promise<void>): Promise<void>;
|
|
33
|
-
|
|
34
|
+
supportsRawFilter: boolean;
|
|
34
35
|
}
|
|
36
|
+
export declare function createMockHttpDataProvider(dataApi: DataApi<any>): import("../data-interfaces").RestDataProviderHttpProvider;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MockRestDataProvider = exports.testAllDataProviders = exports.testRestDb = exports.testInMemoryDb = exports.testSql = exports.ActionTestConfig = exports.testAsIfOnBackend = exports.fitForEach = exports.itForEach = void 0;
|
|
3
|
+
exports.createMockHttpDataProvider = exports.MockRestDataProvider = exports.testAllDataProviders = exports.testRestDb = exports.testInMemoryDb = exports.testSql = exports.ActionTestConfig = exports.testAsIfOnBackend = exports.fitForEach = exports.itForEach = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
5
|
require("./frontend-database-tests-setup.spec");
|
|
6
6
|
var context_1 = require("../context");
|
|
@@ -13,6 +13,7 @@ var server_action_1 = require("../server-action");
|
|
|
13
13
|
var entityWithValidations_1 = require("../shared-tests/entityWithValidations");
|
|
14
14
|
var TestDataApiResponse_1 = require("./TestDataApiResponse");
|
|
15
15
|
var remult_proxy_1 = require("../remult-proxy");
|
|
16
|
+
var buildRestDataProvider_1 = require("../buildRestDataProvider");
|
|
16
17
|
jasmine.DEFAULT_TIMEOUT_INTERVAL = 999999;
|
|
17
18
|
//actionInfo.runningOnServer = false;
|
|
18
19
|
function itForEach(name, arrayOfT, runAsync) {
|
|
@@ -167,14 +168,13 @@ function testSql(runAsync) {
|
|
|
167
168
|
exports.testSql = testSql;
|
|
168
169
|
function testInMemoryDb(runAsync) {
|
|
169
170
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
170
|
-
var
|
|
171
|
+
var db;
|
|
171
172
|
return tslib_1.__generator(this, function (_a) {
|
|
172
173
|
switch (_a.label) {
|
|
173
174
|
case 0:
|
|
174
|
-
remult = new context_1.Remult();
|
|
175
175
|
db = new in_memory_database_1.InMemoryDataProvider();
|
|
176
|
-
remult.dataProvider = (db);
|
|
177
|
-
return [4 /*yield*/, runAsync({ db: db, remult: remult })];
|
|
176
|
+
remult_proxy_1.remult.dataProvider = (db);
|
|
177
|
+
return [4 /*yield*/, runAsync({ db: db, remult: remult_proxy_1.remult })];
|
|
178
178
|
case 1:
|
|
179
179
|
_a.sent();
|
|
180
180
|
return [2 /*return*/];
|
|
@@ -267,104 +267,11 @@ function urlToReq(url) {
|
|
|
267
267
|
var MockRestDataProvider = /** @class */ (function () {
|
|
268
268
|
function MockRestDataProvider(remult) {
|
|
269
269
|
this.remult = remult;
|
|
270
|
-
this.
|
|
270
|
+
this.supportsRawFilter = true;
|
|
271
271
|
}
|
|
272
272
|
MockRestDataProvider.prototype.getEntityDataProvider = function (metadata) {
|
|
273
|
-
var _this = this;
|
|
274
273
|
var dataApi = new data_api_1.DataApi(this.remult.repo(metadata.entityType), this.remult);
|
|
275
|
-
return new rest_data_provider_1.RestEntityDataProvider(function () { return ""; }, function () { return
|
|
276
|
-
delete: function (url) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
277
|
-
var urlSplit, r, result;
|
|
278
|
-
return tslib_1.__generator(this, function (_a) {
|
|
279
|
-
switch (_a.label) {
|
|
280
|
-
case 0:
|
|
281
|
-
urlSplit = url.split('/');
|
|
282
|
-
r = new TestDataApiResponse_1.TestDataApiResponse();
|
|
283
|
-
r.deleted = function () { };
|
|
284
|
-
_a.label = 1;
|
|
285
|
-
case 1:
|
|
286
|
-
_a.trys.push([1, , 3, 4]);
|
|
287
|
-
entityWithValidations_1.testConfiguration.restDbRunningOnServer = true;
|
|
288
|
-
return [4 /*yield*/, dataApi.delete(r, urlSplit[urlSplit.length - 1])];
|
|
289
|
-
case 2:
|
|
290
|
-
_a.sent();
|
|
291
|
-
return [3 /*break*/, 4];
|
|
292
|
-
case 3:
|
|
293
|
-
entityWithValidations_1.testConfiguration.restDbRunningOnServer = false;
|
|
294
|
-
return [7 /*endfinally*/];
|
|
295
|
-
case 4: return [2 /*return*/, result];
|
|
296
|
-
}
|
|
297
|
-
});
|
|
298
|
-
}); },
|
|
299
|
-
get: function (url) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
300
|
-
var r, result;
|
|
301
|
-
return tslib_1.__generator(this, function (_a) {
|
|
302
|
-
switch (_a.label) {
|
|
303
|
-
case 0:
|
|
304
|
-
r = new TestDataApiResponse_1.TestDataApiResponse();
|
|
305
|
-
r.success = function (data) { result = data; };
|
|
306
|
-
_a.label = 1;
|
|
307
|
-
case 1:
|
|
308
|
-
_a.trys.push([1, , 3, 4]);
|
|
309
|
-
entityWithValidations_1.testConfiguration.restDbRunningOnServer = true;
|
|
310
|
-
return [4 /*yield*/, dataApi.httpGet(r, urlToReq(url))];
|
|
311
|
-
case 2:
|
|
312
|
-
_a.sent();
|
|
313
|
-
return [3 /*break*/, 4];
|
|
314
|
-
case 3:
|
|
315
|
-
entityWithValidations_1.testConfiguration.restDbRunningOnServer = false;
|
|
316
|
-
return [7 /*endfinally*/];
|
|
317
|
-
case 4: return [2 /*return*/, result];
|
|
318
|
-
}
|
|
319
|
-
});
|
|
320
|
-
}); },
|
|
321
|
-
post: function (url, data) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
322
|
-
var r, result;
|
|
323
|
-
return tslib_1.__generator(this, function (_a) {
|
|
324
|
-
switch (_a.label) {
|
|
325
|
-
case 0:
|
|
326
|
-
r = new TestDataApiResponse_1.TestDataApiResponse();
|
|
327
|
-
r.created = function (data) { result = data; };
|
|
328
|
-
r.success = function (data) { result = data; };
|
|
329
|
-
_a.label = 1;
|
|
330
|
-
case 1:
|
|
331
|
-
_a.trys.push([1, , 3, 4]);
|
|
332
|
-
entityWithValidations_1.testConfiguration.restDbRunningOnServer = true;
|
|
333
|
-
return [4 /*yield*/, dataApi.httpPost(r, urlToReq(url), data)];
|
|
334
|
-
case 2:
|
|
335
|
-
_a.sent();
|
|
336
|
-
return [3 /*break*/, 4];
|
|
337
|
-
case 3:
|
|
338
|
-
entityWithValidations_1.testConfiguration.restDbRunningOnServer = false;
|
|
339
|
-
return [7 /*endfinally*/];
|
|
340
|
-
case 4: return [2 /*return*/, result];
|
|
341
|
-
}
|
|
342
|
-
});
|
|
343
|
-
}); },
|
|
344
|
-
put: function (url, data) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
345
|
-
var urlSplit, r, result;
|
|
346
|
-
return tslib_1.__generator(this, function (_a) {
|
|
347
|
-
switch (_a.label) {
|
|
348
|
-
case 0:
|
|
349
|
-
urlSplit = url.split('/');
|
|
350
|
-
r = new TestDataApiResponse_1.TestDataApiResponse();
|
|
351
|
-
r.success = function (data) { result = data; };
|
|
352
|
-
_a.label = 1;
|
|
353
|
-
case 1:
|
|
354
|
-
_a.trys.push([1, , 3, 4]);
|
|
355
|
-
entityWithValidations_1.testConfiguration.restDbRunningOnServer = true;
|
|
356
|
-
return [4 /*yield*/, dataApi.put(r, urlSplit[urlSplit.length - 1], data)];
|
|
357
|
-
case 2:
|
|
358
|
-
_a.sent();
|
|
359
|
-
return [3 /*break*/, 4];
|
|
360
|
-
case 3:
|
|
361
|
-
entityWithValidations_1.testConfiguration.restDbRunningOnServer = false;
|
|
362
|
-
return [7 /*endfinally*/];
|
|
363
|
-
case 4: return [2 /*return*/, result];
|
|
364
|
-
}
|
|
365
|
-
});
|
|
366
|
-
}); }
|
|
367
|
-
}); }, metadata);
|
|
274
|
+
return new rest_data_provider_1.RestEntityDataProvider(function () { return ""; }, function () { return createMockHttpDataProvider(dataApi); }, metadata);
|
|
368
275
|
};
|
|
369
276
|
MockRestDataProvider.prototype.transaction = function (action) {
|
|
370
277
|
throw new Error('Method not implemented.');
|
|
@@ -372,3 +279,100 @@ var MockRestDataProvider = /** @class */ (function () {
|
|
|
372
279
|
return MockRestDataProvider;
|
|
373
280
|
}());
|
|
374
281
|
exports.MockRestDataProvider = MockRestDataProvider;
|
|
282
|
+
function createMockHttpDataProvider(dataApi) {
|
|
283
|
+
var _this = this;
|
|
284
|
+
return new buildRestDataProvider_1.HttpProviderBridgeToRestDataProviderHttpProvider({
|
|
285
|
+
delete: function (url) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
286
|
+
var urlSplit, r, result;
|
|
287
|
+
return tslib_1.__generator(this, function (_a) {
|
|
288
|
+
switch (_a.label) {
|
|
289
|
+
case 0:
|
|
290
|
+
urlSplit = url.split('/');
|
|
291
|
+
r = new TestDataApiResponse_1.TestDataApiResponse();
|
|
292
|
+
r.deleted = function () { };
|
|
293
|
+
_a.label = 1;
|
|
294
|
+
case 1:
|
|
295
|
+
_a.trys.push([1, , 3, 4]);
|
|
296
|
+
entityWithValidations_1.testConfiguration.restDbRunningOnServer = true;
|
|
297
|
+
return [4 /*yield*/, dataApi.delete(r, urlSplit[urlSplit.length - 1])];
|
|
298
|
+
case 2:
|
|
299
|
+
_a.sent();
|
|
300
|
+
return [3 /*break*/, 4];
|
|
301
|
+
case 3:
|
|
302
|
+
entityWithValidations_1.testConfiguration.restDbRunningOnServer = false;
|
|
303
|
+
return [7 /*endfinally*/];
|
|
304
|
+
case 4: return [2 /*return*/, result];
|
|
305
|
+
}
|
|
306
|
+
});
|
|
307
|
+
}); },
|
|
308
|
+
get: function (url) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
309
|
+
var r, result;
|
|
310
|
+
return tslib_1.__generator(this, function (_a) {
|
|
311
|
+
switch (_a.label) {
|
|
312
|
+
case 0:
|
|
313
|
+
r = new TestDataApiResponse_1.TestDataApiResponse();
|
|
314
|
+
r.success = function (data) { result = data; };
|
|
315
|
+
_a.label = 1;
|
|
316
|
+
case 1:
|
|
317
|
+
_a.trys.push([1, , 3, 4]);
|
|
318
|
+
entityWithValidations_1.testConfiguration.restDbRunningOnServer = true;
|
|
319
|
+
return [4 /*yield*/, dataApi.httpGet(r, urlToReq(url), function () { return ""; })];
|
|
320
|
+
case 2:
|
|
321
|
+
_a.sent();
|
|
322
|
+
return [3 /*break*/, 4];
|
|
323
|
+
case 3:
|
|
324
|
+
entityWithValidations_1.testConfiguration.restDbRunningOnServer = false;
|
|
325
|
+
return [7 /*endfinally*/];
|
|
326
|
+
case 4: return [2 /*return*/, result];
|
|
327
|
+
}
|
|
328
|
+
});
|
|
329
|
+
}); },
|
|
330
|
+
post: function (url, data) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
331
|
+
var r, result;
|
|
332
|
+
return tslib_1.__generator(this, function (_a) {
|
|
333
|
+
switch (_a.label) {
|
|
334
|
+
case 0:
|
|
335
|
+
r = new TestDataApiResponse_1.TestDataApiResponse();
|
|
336
|
+
r.created = function (data) { result = data; };
|
|
337
|
+
r.success = function (data) { result = data; };
|
|
338
|
+
_a.label = 1;
|
|
339
|
+
case 1:
|
|
340
|
+
_a.trys.push([1, , 3, 4]);
|
|
341
|
+
entityWithValidations_1.testConfiguration.restDbRunningOnServer = true;
|
|
342
|
+
return [4 /*yield*/, dataApi.httpPost(r, urlToReq(url), data, function () { return ({}); })];
|
|
343
|
+
case 2:
|
|
344
|
+
_a.sent();
|
|
345
|
+
return [3 /*break*/, 4];
|
|
346
|
+
case 3:
|
|
347
|
+
entityWithValidations_1.testConfiguration.restDbRunningOnServer = false;
|
|
348
|
+
return [7 /*endfinally*/];
|
|
349
|
+
case 4: return [2 /*return*/, result];
|
|
350
|
+
}
|
|
351
|
+
});
|
|
352
|
+
}); },
|
|
353
|
+
put: function (url, data) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
354
|
+
var urlSplit, r, result;
|
|
355
|
+
return tslib_1.__generator(this, function (_a) {
|
|
356
|
+
switch (_a.label) {
|
|
357
|
+
case 0:
|
|
358
|
+
urlSplit = url.split('/');
|
|
359
|
+
r = new TestDataApiResponse_1.TestDataApiResponse();
|
|
360
|
+
r.success = function (data) { result = data; };
|
|
361
|
+
_a.label = 1;
|
|
362
|
+
case 1:
|
|
363
|
+
_a.trys.push([1, , 3, 4]);
|
|
364
|
+
entityWithValidations_1.testConfiguration.restDbRunningOnServer = true;
|
|
365
|
+
return [4 /*yield*/, dataApi.put(r, urlSplit[urlSplit.length - 1], data)];
|
|
366
|
+
case 2:
|
|
367
|
+
_a.sent();
|
|
368
|
+
return [3 /*break*/, 4];
|
|
369
|
+
case 3:
|
|
370
|
+
entityWithValidations_1.testConfiguration.restDbRunningOnServer = false;
|
|
371
|
+
return [7 /*endfinally*/];
|
|
372
|
+
case 4: return [2 /*return*/, result];
|
|
373
|
+
}
|
|
374
|
+
});
|
|
375
|
+
}); }
|
|
376
|
+
});
|
|
377
|
+
}
|
|
378
|
+
exports.createMockHttpDataProvider = createMockHttpDataProvider;
|
package/src/valueConverters.js
CHANGED
|
@@ -8,6 +8,8 @@ var ValueConverters = /** @class */ (function () {
|
|
|
8
8
|
}
|
|
9
9
|
ValueConverters.Date = {
|
|
10
10
|
toJson: function (val) {
|
|
11
|
+
if (val === null)
|
|
12
|
+
return null;
|
|
11
13
|
if (!val)
|
|
12
14
|
return '';
|
|
13
15
|
if (typeof (val) === "string")
|
|
@@ -16,11 +18,12 @@ var ValueConverters = /** @class */ (function () {
|
|
|
16
18
|
return val.toISOString();
|
|
17
19
|
}
|
|
18
20
|
else {
|
|
19
|
-
|
|
20
|
-
throw new Error("Expected date but got val");
|
|
21
|
+
throw new Error("Expected date but got " + val);
|
|
21
22
|
}
|
|
22
23
|
},
|
|
23
24
|
fromJson: function (val) {
|
|
25
|
+
if (val === null)
|
|
26
|
+
return null;
|
|
24
27
|
if (val == undefined)
|
|
25
28
|
return undefined;
|
|
26
29
|
if (val == '')
|
|
@@ -30,7 +33,15 @@ var ValueConverters = /** @class */ (function () {
|
|
|
30
33
|
return new Date(Date.parse(val));
|
|
31
34
|
},
|
|
32
35
|
toDb: function (x) { return x; },
|
|
33
|
-
fromDb: function (
|
|
36
|
+
fromDb: function (val) {
|
|
37
|
+
if (typeof val === "number")
|
|
38
|
+
val = new Date(val);
|
|
39
|
+
if (typeof (val) === "string")
|
|
40
|
+
val = new Date(val);
|
|
41
|
+
if (val && !(val instanceof Date))
|
|
42
|
+
throw "expected date but got " + val;
|
|
43
|
+
return val;
|
|
44
|
+
},
|
|
34
45
|
fromInput: function (x) { return ValueConverters.Date.fromJson(x); },
|
|
35
46
|
toInput: function (x) { return ValueConverters.Date.toJson(x); },
|
|
36
47
|
displayValue: function (val) {
|
|
@@ -68,10 +79,7 @@ var ValueConverters = /** @class */ (function () {
|
|
|
68
79
|
} //when using date storage, the database expects and returns a date local and every where else we reflect on date iso
|
|
69
80
|
,
|
|
70
81
|
fromDb: function (val) {
|
|
71
|
-
|
|
72
|
-
if (!d)
|
|
73
|
-
return null;
|
|
74
|
-
return val;
|
|
82
|
+
return ValueConverters.Date.fromDb(val);
|
|
75
83
|
},
|
|
76
84
|
fieldTypeInDb: 'date',
|
|
77
85
|
displayValue: function (value) {
|