remult 3.3.19-next.2 → 3.4.0-next.2
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 +2 -0
- package/SseSubscriptionServer.js +4 -2
- package/esm/SseSubscriptionServer.js +3 -1
- package/esm/index.js +6 -7
- package/esm/live-query/data-provider-live-query-storage.js +3 -1
- package/esm/remult-d1.js +0 -1
- package/esm/remult-knex/index.js +2 -112
- package/esm/remult-mongo.js +8 -17
- package/esm/remult-sqlite-core.js +0 -1
- package/esm/server/remult-api-server.js +6 -1
- package/esm/src/data-api.js +1 -0
- package/esm/src/data-interfaces.js +4 -4
- package/esm/src/data-providers/array-entity-data-provider.js +2 -14
- package/esm/src/data-providers/json-data-provider.js +2 -2
- package/esm/src/data-providers/rest-data-provider.js +12 -11
- package/esm/src/data-providers/sql-database.js +43 -110
- package/esm/src/live-query/LiveQueryClient.js +163 -52
- package/esm/src/live-query/SseSubscriptionClient.js +101 -43
- package/esm/src/live-query/SubscriptionChannel.js +37 -3
- package/esm/src/live-query/SubscriptionServer.js +11 -3
- package/esm/src/remult3/RepositoryImplementation.js +60 -90
- package/esm/src/remult3/remult3.js +6 -0
- package/index.d.ts +17 -31
- package/index.js +2 -5
- package/live-query/data-provider-live-query-storage.d.ts +4 -1
- package/live-query/data-provider-live-query-storage.js +18 -15
- package/package.json +1 -1
- package/remult-d1.d.ts +0 -1
- package/remult-d1.js +0 -1
- package/remult-knex/index.js +44 -329
- package/remult-mongo.js +36 -80
- package/remult-sqlite-core.d.ts +0 -1
- package/remult-sqlite-core.js +0 -1
- package/server/remult-api-server.js +13 -9
- package/src/data-api.js +1 -0
- package/src/data-interfaces.d.ts +3 -2
- package/src/data-interfaces.js +4 -4
- package/src/data-providers/array-entity-data-provider.d.ts +2 -2
- package/src/data-providers/array-entity-data-provider.js +14 -92
- package/src/data-providers/json-data-provider.js +2 -2
- package/src/data-providers/rest-data-provider.d.ts +3 -2
- package/src/data-providers/rest-data-provider.js +17 -18
- package/src/data-providers/sql-database.js +105 -254
- package/src/live-query/LiveQueryClient.js +215 -97
- package/src/live-query/SseSubscriptionClient.js +143 -83
- package/src/live-query/SubscriptionChannel.d.ts +8 -0
- package/src/live-query/SubscriptionChannel.js +47 -9
- package/src/live-query/SubscriptionServer.d.ts +7 -2
- package/src/live-query/SubscriptionServer.js +20 -10
- package/src/remult3/RepositoryImplementation.d.ts +1 -1
- package/src/remult3/RepositoryImplementation.js +270 -384
- package/src/remult3/remult3.d.ts +8 -2
- package/src/remult3/remult3.js +6 -0
- package/src/sql-command.d.ts +0 -2
- package/src/standard-schema/index.d.ts +1 -1
- package/esm/src/data-providers/indexed-db-data-provider.js +0 -811
- package/src/data-providers/indexed-db-data-provider.d.ts +0 -39
- package/src/data-providers/indexed-db-data-provider.js +0 -1387
package/remult-mongo.js
CHANGED
|
@@ -521,27 +521,23 @@ var MongoEntityDataProvider = /** @class */ (function () {
|
|
|
521
521
|
});
|
|
522
522
|
});
|
|
523
523
|
};
|
|
524
|
-
MongoEntityDataProvider.prototype.delete = function (
|
|
524
|
+
MongoEntityDataProvider.prototype.delete = function (id) {
|
|
525
525
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
526
526
|
var _a, e, collection, f, _b, _c;
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
case 0:
|
|
531
|
-
if (ids.length === 0)
|
|
532
|
-
return [2 /*return*/];
|
|
533
|
-
return [4 /*yield*/, this.collection()];
|
|
527
|
+
return tslib_1.__generator(this, function (_d) {
|
|
528
|
+
switch (_d.label) {
|
|
529
|
+
case 0: return [4 /*yield*/, this.collection()];
|
|
534
530
|
case 1:
|
|
535
|
-
_a =
|
|
531
|
+
_a = _d.sent(), e = _a.e, collection = _a.collection;
|
|
536
532
|
f = new FilterConsumerBridgeToMongo(e);
|
|
537
|
-
index_js_1.Filter.fromEntityFilter(this.entity,
|
|
538
|
-
_c = (_b = collection).
|
|
533
|
+
index_js_1.Filter.fromEntityFilter(this.entity, this.entity.idMetadata.getIdFilter(id)).__applyToConsumer(f);
|
|
534
|
+
_c = (_b = collection).deleteOne;
|
|
539
535
|
return [4 /*yield*/, f.resolveWhere()];
|
|
540
|
-
case 2: return [4 /*yield*/, _c.apply(_b, [
|
|
536
|
+
case 2: return [4 /*yield*/, _c.apply(_b, [_d.sent(), {
|
|
541
537
|
session: this.session,
|
|
542
538
|
}])];
|
|
543
539
|
case 3:
|
|
544
|
-
|
|
540
|
+
_d.sent();
|
|
545
541
|
return [2 /*return*/];
|
|
546
542
|
}
|
|
547
543
|
});
|
|
@@ -549,65 +545,25 @@ var MongoEntityDataProvider = /** @class */ (function () {
|
|
|
549
545
|
};
|
|
550
546
|
MongoEntityDataProvider.prototype.insert = function (data, options) {
|
|
551
547
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
552
|
-
var _a, collection, e,
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
case 0:
|
|
557
|
-
if (data.length === 0)
|
|
558
|
-
return [2 /*return*/, []];
|
|
559
|
-
return [4 /*yield*/, this.collection()];
|
|
548
|
+
var _a, collection, e, r, _b, _c, _d;
|
|
549
|
+
return tslib_1.__generator(this, function (_e) {
|
|
550
|
+
switch (_e.label) {
|
|
551
|
+
case 0: return [4 /*yield*/, this.collection()];
|
|
560
552
|
case 1:
|
|
561
|
-
_a =
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
case 2:
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
_h.label = 3;
|
|
553
|
+
_a = _e.sent(), collection = _a.collection, e = _a.e;
|
|
554
|
+
_c = (_b = collection).insertOne;
|
|
555
|
+
return [4 /*yield*/, this.translateToDb(data, e)];
|
|
556
|
+
case 2: return [4 /*yield*/, _c.apply(_b, [_e.sent(), {
|
|
557
|
+
session: this.session,
|
|
558
|
+
}])];
|
|
568
559
|
case 3:
|
|
569
|
-
|
|
570
|
-
row = data_1_1.value;
|
|
571
|
-
_c = (_b = docs).push;
|
|
572
|
-
return [4 /*yield*/, this.translateToDb(row, e)];
|
|
573
|
-
case 4:
|
|
574
|
-
_c.apply(_b, [_h.sent()]);
|
|
575
|
-
_h.label = 5;
|
|
576
|
-
case 5:
|
|
577
|
-
data_1_1 = data_1.next();
|
|
578
|
-
return [3 /*break*/, 3];
|
|
579
|
-
case 6: return [3 /*break*/, 9];
|
|
580
|
-
case 7:
|
|
581
|
-
e_12_1 = _h.sent();
|
|
582
|
-
e_12 = { error: e_12_1 };
|
|
583
|
-
return [3 /*break*/, 9];
|
|
584
|
-
case 8:
|
|
585
|
-
try {
|
|
586
|
-
if (data_1_1 && !data_1_1.done && (_g = data_1.return)) _g.call(data_1);
|
|
587
|
-
}
|
|
588
|
-
finally { if (e_12) throw e_12.error; }
|
|
589
|
-
return [7 /*endfinally*/];
|
|
590
|
-
case 9: return [4 /*yield*/, collection.insertMany(docs, { session: this.session })];
|
|
591
|
-
case 10:
|
|
592
|
-
r = _h.sent();
|
|
560
|
+
r = _e.sent();
|
|
593
561
|
if ((options === null || options === void 0 ? void 0 : options.select) === 'none')
|
|
594
|
-
return [2 /*return*/,
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
case
|
|
599
|
-
if (!(i < data.length)) return [3 /*break*/, 15];
|
|
600
|
-
_e = (_d = result).push;
|
|
601
|
-
_f = this.translateFromDb;
|
|
602
|
-
return [4 /*yield*/, collection.findOne({ _id: r.insertedIds[i] }, { session: this.session })];
|
|
603
|
-
case 12: return [4 /*yield*/, _f.apply(this, [_h.sent(), e])];
|
|
604
|
-
case 13:
|
|
605
|
-
_e.apply(_d, [_h.sent()]);
|
|
606
|
-
_h.label = 14;
|
|
607
|
-
case 14:
|
|
608
|
-
i++;
|
|
609
|
-
return [3 /*break*/, 11];
|
|
610
|
-
case 15: return [2 /*return*/, result];
|
|
562
|
+
return [2 /*return*/, undefined];
|
|
563
|
+
_d = this.translateFromDb;
|
|
564
|
+
return [4 /*yield*/, collection.findOne({ _id: r.insertedId }, { session: this.session })];
|
|
565
|
+
case 4: return [4 /*yield*/, _d.apply(this, [_e.sent(), e])];
|
|
566
|
+
case 5: return [2 /*return*/, _e.sent()];
|
|
611
567
|
}
|
|
612
568
|
});
|
|
613
569
|
});
|
|
@@ -637,8 +593,8 @@ var FilterConsumerBridgeToMongo = /** @class */ (function () {
|
|
|
637
593
|
}
|
|
638
594
|
FilterConsumerBridgeToMongo.prototype.resolveWhere = function () {
|
|
639
595
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
640
|
-
var p, p_1, p_1_1, pr,
|
|
641
|
-
var
|
|
596
|
+
var p, p_1, p_1_1, pr, e_12_1;
|
|
597
|
+
var e_12, _a;
|
|
642
598
|
return tslib_1.__generator(this, function (_b) {
|
|
643
599
|
switch (_b.label) {
|
|
644
600
|
case 0:
|
|
@@ -648,7 +604,7 @@ var FilterConsumerBridgeToMongo = /** @class */ (function () {
|
|
|
648
604
|
_b.label = 1;
|
|
649
605
|
case 1:
|
|
650
606
|
_b.trys.push([1, 6, 7, 8]);
|
|
651
|
-
p_1 = (
|
|
607
|
+
p_1 = (e_12 = void 0, tslib_1.__values(p)), p_1_1 = p_1.next();
|
|
652
608
|
_b.label = 2;
|
|
653
609
|
case 2:
|
|
654
610
|
if (!!p_1_1.done) return [3 /*break*/, 5];
|
|
@@ -662,14 +618,14 @@ var FilterConsumerBridgeToMongo = /** @class */ (function () {
|
|
|
662
618
|
return [3 /*break*/, 2];
|
|
663
619
|
case 5: return [3 /*break*/, 8];
|
|
664
620
|
case 6:
|
|
665
|
-
|
|
666
|
-
|
|
621
|
+
e_12_1 = _b.sent();
|
|
622
|
+
e_12 = { error: e_12_1 };
|
|
667
623
|
return [3 /*break*/, 8];
|
|
668
624
|
case 7:
|
|
669
625
|
try {
|
|
670
626
|
if (p_1_1 && !p_1_1.done && (_a = p_1.return)) _a.call(p_1);
|
|
671
627
|
}
|
|
672
|
-
finally { if (
|
|
628
|
+
finally { if (e_12) throw e_12.error; }
|
|
673
629
|
return [7 /*endfinally*/];
|
|
674
630
|
case 8: return [3 /*break*/, 0];
|
|
675
631
|
case 9:
|
|
@@ -688,8 +644,8 @@ var FilterConsumerBridgeToMongo = /** @class */ (function () {
|
|
|
688
644
|
FilterConsumerBridgeToMongo.prototype.or = function (orElements) {
|
|
689
645
|
var _this = this;
|
|
690
646
|
this.promises.push((function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
691
|
-
var result, orElements_1, orElements_1_1, element, f, where,
|
|
692
|
-
var
|
|
647
|
+
var result, orElements_1, orElements_1_1, element, f, where, e_13_1;
|
|
648
|
+
var e_13, _a;
|
|
693
649
|
var _b;
|
|
694
650
|
return tslib_1.__generator(this, function (_c) {
|
|
695
651
|
switch (_c.label) {
|
|
@@ -720,14 +676,14 @@ var FilterConsumerBridgeToMongo = /** @class */ (function () {
|
|
|
720
676
|
return [3 /*break*/, 2];
|
|
721
677
|
case 5: return [3 /*break*/, 8];
|
|
722
678
|
case 6:
|
|
723
|
-
|
|
724
|
-
|
|
679
|
+
e_13_1 = _c.sent();
|
|
680
|
+
e_13 = { error: e_13_1 };
|
|
725
681
|
return [3 /*break*/, 8];
|
|
726
682
|
case 7:
|
|
727
683
|
try {
|
|
728
684
|
if (orElements_1_1 && !orElements_1_1.done && (_a = orElements_1.return)) _a.call(orElements_1);
|
|
729
685
|
}
|
|
730
|
-
finally { if (
|
|
686
|
+
finally { if (e_13) throw e_13.error; }
|
|
731
687
|
return [7 /*endfinally*/];
|
|
732
688
|
case 8:
|
|
733
689
|
this.result.push(function () { return ({
|
package/remult-sqlite-core.d.ts
CHANGED
|
@@ -9,7 +9,6 @@ export declare class SqliteCoreDataProvider implements SqlImplementation, CanBui
|
|
|
9
9
|
doesNotSupportReturningSyntaxOnlyForUpdate: boolean;
|
|
10
10
|
constructor(createCommand: () => SqlCommand, end: () => Promise<void>, doesNotSupportReturningSyntax?: boolean, doesNotSupportReturningSyntaxOnlyForUpdate?: boolean);
|
|
11
11
|
orderByNullsFirst?: boolean;
|
|
12
|
-
maxParametersInOneSqlStatement: number;
|
|
13
12
|
getLimitSqlSyntax(limit: number, offset: number): string;
|
|
14
13
|
afterMutation?: VoidFunction;
|
|
15
14
|
provideMigrationBuilder(builder: MigrationCode): MigrationBuilder;
|
package/remult-sqlite-core.js
CHANGED
|
@@ -13,7 +13,6 @@ var SqliteCoreDataProvider = /** @class */ (function () {
|
|
|
13
13
|
this.end = end;
|
|
14
14
|
this.doesNotSupportReturningSyntax = doesNotSupportReturningSyntax;
|
|
15
15
|
this.doesNotSupportReturningSyntaxOnlyForUpdate = doesNotSupportReturningSyntaxOnlyForUpdate;
|
|
16
|
-
this.maxParametersInOneSqlStatement = 999;
|
|
17
16
|
}
|
|
18
17
|
SqliteCoreDataProvider.prototype.getLimitSqlSyntax = function (limit, offset) {
|
|
19
18
|
return ' limit ' + limit + ' offset ' + offset;
|
|
@@ -482,16 +482,20 @@ var RemultServerImplementation = /** @class */ (function () {
|
|
|
482
482
|
}); }));
|
|
483
483
|
}
|
|
484
484
|
r.route(this.options.rootPath + '/' + SubscriptionChannel_js_1.liveQueryKeepAliveRoute).post(this.process(function (remult, req, res, reqInfo, origRes, origReq) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
485
|
-
var
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
485
|
+
var body, queryIds, result;
|
|
486
|
+
var _a;
|
|
487
|
+
return tslib_1.__generator(this, function (_b) {
|
|
488
|
+
switch (_b.label) {
|
|
489
|
+
case 0: return [4 /*yield*/, this.coreOptions.getRequestBody(origReq)];
|
|
490
|
+
case 1:
|
|
491
|
+
body = _b.sent();
|
|
492
|
+
queryIds = Array.isArray(body)
|
|
493
|
+
? body
|
|
494
|
+
: ((_a = body === null || body === void 0 ? void 0 : body.queryIds) !== null && _a !== void 0 ? _a : []);
|
|
495
|
+
return [4 /*yield*/, remult.liveQueryStorage.keepAliveAndReturnUnknownQueryIds(queryIds)];
|
|
493
496
|
case 2:
|
|
494
|
-
_b.
|
|
497
|
+
result = _b.sent();
|
|
498
|
+
res.success(Array.isArray(body) ? result.unknownQueryIds : result);
|
|
495
499
|
return [2 /*return*/];
|
|
496
500
|
}
|
|
497
501
|
});
|
package/src/data-api.js
CHANGED
|
@@ -687,6 +687,7 @@ var DataApi = /** @class */ (function () {
|
|
|
687
687
|
data = (_a.requestJson = _b.sent(),
|
|
688
688
|
_a.findOptionsJson = (0, rest_data_provider_js_1.findOptionsToJson)(r.findOptions, this.repository.metadata),
|
|
689
689
|
_a.lastIds = r.r.map(function (y) { return _this.repository.metadata.idMetadata.getId(y); }),
|
|
690
|
+
_a.version = 0,
|
|
690
691
|
_a);
|
|
691
692
|
return [4 /*yield*/, this.remult.liveQueryStorage.add({
|
|
692
693
|
entityKey: this.repository.metadata.key,
|
package/src/data-interfaces.d.ts
CHANGED
|
@@ -29,10 +29,11 @@ export interface EntityDataProvider {
|
|
|
29
29
|
find(options?: EntityDataProviderFindOptions): Promise<Array<any>>;
|
|
30
30
|
groupBy(options?: EntityDataProviderGroupByOptions): Promise<any[]>;
|
|
31
31
|
update(id: any, data: any, options?: InsertOrUpdateOptions): Promise<any>;
|
|
32
|
-
delete(
|
|
33
|
-
insert(data: any
|
|
32
|
+
delete(id: any): Promise<void>;
|
|
33
|
+
insert(data: any, options?: InsertOrUpdateOptions): Promise<any>;
|
|
34
34
|
}
|
|
35
35
|
export interface ProxyEntityDataProvider {
|
|
36
|
+
insertMany(data: any[], options?: InsertOrUpdateOptions): Promise<any[]>;
|
|
36
37
|
deleteMany(where: Filter | 'all'): Promise<number>;
|
|
37
38
|
updateMany(where: Filter | 'all', data: any): Promise<number>;
|
|
38
39
|
query(options: EntityDataProviderFindOptions, aggregateOptions: EntityDataProviderGroupByOptions): Promise<{
|
package/src/data-interfaces.js
CHANGED
|
@@ -44,11 +44,11 @@ var EntityDataProviderPromiseWrapper = /** @class */ (function () {
|
|
|
44
44
|
function EntityDataProviderPromiseWrapper(dataProvider) {
|
|
45
45
|
this.dataProvider = dataProvider;
|
|
46
46
|
}
|
|
47
|
-
EntityDataProviderPromiseWrapper.prototype.delete = function (
|
|
48
|
-
return this.dataProvider.then(function (dp) { return dp.delete(
|
|
47
|
+
EntityDataProviderPromiseWrapper.prototype.delete = function (id) {
|
|
48
|
+
return this.dataProvider.then(function (dp) { return dp.delete(id); });
|
|
49
49
|
};
|
|
50
|
-
EntityDataProviderPromiseWrapper.prototype.insert = function (data
|
|
51
|
-
return this.dataProvider.then(function (dp) { return dp.insert(data
|
|
50
|
+
EntityDataProviderPromiseWrapper.prototype.insert = function (data) {
|
|
51
|
+
return this.dataProvider.then(function (dp) { return dp.insert(data); });
|
|
52
52
|
};
|
|
53
53
|
EntityDataProviderPromiseWrapper.prototype.count = function (where) {
|
|
54
54
|
return this.dataProvider.then(function (dp) { return dp.count(where); });
|
|
@@ -10,8 +10,8 @@ export declare class ArrayEntityDataProvider implements EntityDataProvider {
|
|
|
10
10
|
count(where?: Filter): Promise<number>;
|
|
11
11
|
find(options?: EntityDataProviderFindOptions): Promise<any[]>;
|
|
12
12
|
update(id: any, data: any): Promise<any>;
|
|
13
|
-
delete(
|
|
14
|
-
insert(data: any
|
|
13
|
+
delete(id: any): Promise<void>;
|
|
14
|
+
insert(data: any): Promise<any>;
|
|
15
15
|
}
|
|
16
16
|
export type CustomArrayFilter = (item: any) => boolean;
|
|
17
17
|
export interface CustomArrayFilterObject {
|
|
@@ -539,44 +539,7 @@ var ArrayEntityDataProvider = /** @class */ (function () {
|
|
|
539
539
|
});
|
|
540
540
|
});
|
|
541
541
|
};
|
|
542
|
-
ArrayEntityDataProvider.prototype.delete = function (
|
|
543
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
544
|
-
var ids_1, ids_1_1, id, e_16_1;
|
|
545
|
-
var e_16, _a;
|
|
546
|
-
return tslib_1.__generator(this, function (_b) {
|
|
547
|
-
switch (_b.label) {
|
|
548
|
-
case 0:
|
|
549
|
-
_b.trys.push([0, 5, 6, 7]);
|
|
550
|
-
ids_1 = tslib_1.__values(ids), ids_1_1 = ids_1.next();
|
|
551
|
-
_b.label = 1;
|
|
552
|
-
case 1:
|
|
553
|
-
if (!!ids_1_1.done) return [3 /*break*/, 4];
|
|
554
|
-
id = ids_1_1.value;
|
|
555
|
-
return [4 /*yield*/, this.deleteOne(id)];
|
|
556
|
-
case 2:
|
|
557
|
-
_b.sent();
|
|
558
|
-
_b.label = 3;
|
|
559
|
-
case 3:
|
|
560
|
-
ids_1_1 = ids_1.next();
|
|
561
|
-
return [3 /*break*/, 1];
|
|
562
|
-
case 4: return [3 /*break*/, 7];
|
|
563
|
-
case 5:
|
|
564
|
-
e_16_1 = _b.sent();
|
|
565
|
-
e_16 = { error: e_16_1 };
|
|
566
|
-
return [3 /*break*/, 7];
|
|
567
|
-
case 6:
|
|
568
|
-
try {
|
|
569
|
-
if (ids_1_1 && !ids_1_1.done && (_a = ids_1.return)) _a.call(ids_1);
|
|
570
|
-
}
|
|
571
|
-
finally { if (e_16) throw e_16.error; }
|
|
572
|
-
return [7 /*endfinally*/];
|
|
573
|
-
case 7: return [2 /*return*/];
|
|
574
|
-
}
|
|
575
|
-
});
|
|
576
|
-
});
|
|
577
|
-
};
|
|
578
|
-
//@internal
|
|
579
|
-
ArrayEntityDataProvider.prototype.deleteOne = function (id) {
|
|
542
|
+
ArrayEntityDataProvider.prototype.delete = function (id) {
|
|
580
543
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
581
544
|
var names, idMatches, i;
|
|
582
545
|
return tslib_1.__generator(this, function (_a) {
|
|
@@ -588,7 +551,7 @@ var ArrayEntityDataProvider = /** @class */ (function () {
|
|
|
588
551
|
for (i = 0; i < this.rows().length; i++) {
|
|
589
552
|
if (idMatches(this.rows()[i])) {
|
|
590
553
|
this.rows().splice(i, 1);
|
|
591
|
-
return [2 /*return
|
|
554
|
+
return [2 /*return*/, Promise.resolve()];
|
|
592
555
|
}
|
|
593
556
|
}
|
|
594
557
|
throw new Error("ArrayEntityDataProvider: Couldn't find row with id \"".concat(id, "\" in entity \"").concat(this.entity.key, "\" to delete"));
|
|
@@ -597,50 +560,9 @@ var ArrayEntityDataProvider = /** @class */ (function () {
|
|
|
597
560
|
});
|
|
598
561
|
};
|
|
599
562
|
ArrayEntityDataProvider.prototype.insert = function (data) {
|
|
600
|
-
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
601
|
-
var result, data_1, data_1_1, row, _a, _b, e_17_1;
|
|
602
|
-
var e_17, _c;
|
|
603
|
-
return tslib_1.__generator(this, function (_d) {
|
|
604
|
-
switch (_d.label) {
|
|
605
|
-
case 0:
|
|
606
|
-
result = [];
|
|
607
|
-
_d.label = 1;
|
|
608
|
-
case 1:
|
|
609
|
-
_d.trys.push([1, 6, 7, 8]);
|
|
610
|
-
data_1 = tslib_1.__values(data), data_1_1 = data_1.next();
|
|
611
|
-
_d.label = 2;
|
|
612
|
-
case 2:
|
|
613
|
-
if (!!data_1_1.done) return [3 /*break*/, 5];
|
|
614
|
-
row = data_1_1.value;
|
|
615
|
-
_b = (_a = result).push;
|
|
616
|
-
return [4 /*yield*/, this.insertOne(row)];
|
|
617
|
-
case 3:
|
|
618
|
-
_b.apply(_a, [_d.sent()]);
|
|
619
|
-
_d.label = 4;
|
|
620
|
-
case 4:
|
|
621
|
-
data_1_1 = data_1.next();
|
|
622
|
-
return [3 /*break*/, 2];
|
|
623
|
-
case 5: return [3 /*break*/, 8];
|
|
624
|
-
case 6:
|
|
625
|
-
e_17_1 = _d.sent();
|
|
626
|
-
e_17 = { error: e_17_1 };
|
|
627
|
-
return [3 /*break*/, 8];
|
|
628
|
-
case 7:
|
|
629
|
-
try {
|
|
630
|
-
if (data_1_1 && !data_1_1.done && (_c = data_1.return)) _c.call(data_1);
|
|
631
|
-
}
|
|
632
|
-
finally { if (e_17) throw e_17.error; }
|
|
633
|
-
return [7 /*endfinally*/];
|
|
634
|
-
case 8: return [2 /*return*/, result];
|
|
635
|
-
}
|
|
636
|
-
});
|
|
637
|
-
});
|
|
638
|
-
};
|
|
639
|
-
//@internal
|
|
640
|
-
ArrayEntityDataProvider.prototype.insertOne = function (data) {
|
|
641
563
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
642
564
|
var names, j, idf, idDbName, _a, _b, row;
|
|
643
|
-
var
|
|
565
|
+
var e_16, _c;
|
|
644
566
|
var _this = this;
|
|
645
567
|
return tslib_1.__generator(this, function (_d) {
|
|
646
568
|
switch (_d.label) {
|
|
@@ -660,17 +582,17 @@ var ArrayEntityDataProvider = /** @class */ (function () {
|
|
|
660
582
|
j[idDbName] = row[idDbName] + 1;
|
|
661
583
|
}
|
|
662
584
|
}
|
|
663
|
-
catch (
|
|
585
|
+
catch (e_16_1) { e_16 = { error: e_16_1 }; }
|
|
664
586
|
finally {
|
|
665
587
|
try {
|
|
666
588
|
if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
|
|
667
589
|
}
|
|
668
|
-
finally { if (
|
|
590
|
+
finally { if (e_16) throw e_16.error; }
|
|
669
591
|
}
|
|
670
592
|
}
|
|
671
593
|
else {
|
|
672
594
|
if (this.rows().find(function (x) {
|
|
673
|
-
var
|
|
595
|
+
var e_17, _a;
|
|
674
596
|
try {
|
|
675
597
|
for (var _b = tslib_1.__values(_this.entity.idMetadata.fields), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
676
598
|
var f = _c.value;
|
|
@@ -678,12 +600,12 @@ var ArrayEntityDataProvider = /** @class */ (function () {
|
|
|
678
600
|
return false;
|
|
679
601
|
}
|
|
680
602
|
}
|
|
681
|
-
catch (
|
|
603
|
+
catch (e_17_1) { e_17 = { error: e_17_1 }; }
|
|
682
604
|
finally {
|
|
683
605
|
try {
|
|
684
606
|
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
685
607
|
}
|
|
686
|
-
finally { if (
|
|
608
|
+
finally { if (e_17) throw e_17.error; }
|
|
687
609
|
}
|
|
688
610
|
return true;
|
|
689
611
|
})) {
|
|
@@ -734,7 +656,7 @@ var FilterConsumerBridgeToObject = /** @class */ (function () {
|
|
|
734
656
|
throw new Error('Custom Filter should be translated before it gets here');
|
|
735
657
|
};
|
|
736
658
|
FilterConsumerBridgeToObject.prototype.or = function (orElements) {
|
|
737
|
-
var
|
|
659
|
+
var e_18, _a;
|
|
738
660
|
try {
|
|
739
661
|
for (var orElements_1 = tslib_1.__values(orElements), orElements_1_1 = orElements_1.next(); !orElements_1_1.done; orElements_1_1 = orElements_1.next()) {
|
|
740
662
|
var element = orElements_1_1.value;
|
|
@@ -745,12 +667,12 @@ var FilterConsumerBridgeToObject = /** @class */ (function () {
|
|
|
745
667
|
}
|
|
746
668
|
}
|
|
747
669
|
}
|
|
748
|
-
catch (
|
|
670
|
+
catch (e_18_1) { e_18 = { error: e_18_1 }; }
|
|
749
671
|
finally {
|
|
750
672
|
try {
|
|
751
673
|
if (orElements_1_1 && !orElements_1_1.done && (_a = orElements_1.return)) _a.call(orElements_1);
|
|
752
674
|
}
|
|
753
|
-
finally { if (
|
|
675
|
+
finally { if (e_18) throw e_18.error; }
|
|
754
676
|
}
|
|
755
677
|
this.ok = false;
|
|
756
678
|
};
|
|
@@ -769,7 +691,7 @@ var FilterConsumerBridgeToObject = /** @class */ (function () {
|
|
|
769
691
|
this.ok = false;
|
|
770
692
|
};
|
|
771
693
|
FilterConsumerBridgeToObject.prototype.isIn = function (col, val) {
|
|
772
|
-
var
|
|
694
|
+
var e_19, _a;
|
|
773
695
|
try {
|
|
774
696
|
for (var val_1 = tslib_1.__values(val), val_1_1 = val_1.next(); !val_1_1.done; val_1_1 = val_1.next()) {
|
|
775
697
|
var v = val_1_1.value;
|
|
@@ -778,12 +700,12 @@ var FilterConsumerBridgeToObject = /** @class */ (function () {
|
|
|
778
700
|
}
|
|
779
701
|
}
|
|
780
702
|
}
|
|
781
|
-
catch (
|
|
703
|
+
catch (e_19_1) { e_19 = { error: e_19_1 }; }
|
|
782
704
|
finally {
|
|
783
705
|
try {
|
|
784
706
|
if (val_1_1 && !val_1_1.done && (_a = val_1.return)) _a.call(val_1);
|
|
785
707
|
}
|
|
786
|
-
finally { if (
|
|
708
|
+
finally { if (e_19) throw e_19.error; }
|
|
787
709
|
}
|
|
788
710
|
this.ok = false;
|
|
789
711
|
};
|
|
@@ -100,11 +100,11 @@ var JsonEntityDataProvider = /** @class */ (function () {
|
|
|
100
100
|
});
|
|
101
101
|
}));
|
|
102
102
|
};
|
|
103
|
-
JsonEntityDataProvider.prototype.delete = function (
|
|
103
|
+
JsonEntityDataProvider.prototype.delete = function (id) {
|
|
104
104
|
var _this = this;
|
|
105
105
|
return (this.p = this.p.then(function () {
|
|
106
106
|
return _this.loadEntityData(function (dp, save) {
|
|
107
|
-
return dp.delete(
|
|
107
|
+
return dp.delete(id).then(function (x) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
108
108
|
return tslib_1.__generator(this, function (_a) {
|
|
109
109
|
switch (_a.label) {
|
|
110
110
|
case 0: return [4 /*yield*/, save()];
|
|
@@ -35,8 +35,9 @@ export declare class RestEntityDataProvider implements EntityDataProvider, Proxy
|
|
|
35
35
|
find(options?: EntityDataProviderFindOptions): Promise<Array<any>>;
|
|
36
36
|
update(id: any, data: any, options?: InsertOrUpdateOptions): Promise<any>;
|
|
37
37
|
private toJsonOfIncludedKeys;
|
|
38
|
-
delete(
|
|
39
|
-
insert(data: any
|
|
38
|
+
delete(id: any): Promise<void>;
|
|
39
|
+
insert(data: any, options?: InsertOrUpdateOptions): Promise<any>;
|
|
40
|
+
insertMany(data: any[], options?: InsertOrUpdateOptions): Promise<any[]>;
|
|
40
41
|
}
|
|
41
42
|
export declare function addFilterToUrlAndReturnTrueIfSuccessful(filter: any, url: UrlBuilder): boolean;
|
|
42
43
|
export declare const liveQueryAction = "liveQuery-";
|
|
@@ -441,20 +441,18 @@ var RestEntityDataProvider = /** @class */ (function () {
|
|
|
441
441
|
}
|
|
442
442
|
return result;
|
|
443
443
|
};
|
|
444
|
-
RestEntityDataProvider.prototype.delete = function (
|
|
444
|
+
RestEntityDataProvider.prototype.delete = function (id) {
|
|
445
445
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
switch (_b.label) {
|
|
446
|
+
return tslib_1.__generator(this, function (_a) {
|
|
447
|
+
switch (_a.label) {
|
|
449
448
|
case 0:
|
|
450
|
-
if (
|
|
451
|
-
|
|
452
|
-
if (ids.length === 1 && ids[0] !== '')
|
|
453
|
-
return [2 /*return*/, this.http().delete(this.url() + '/' + encodeURIComponent(ids[0]))];
|
|
454
|
-
return [4 /*yield*/, this.deleteMany(filter_interfaces_js_1.Filter.fromEntityFilter(this.entity, (_a = this.entity.idMetadata).getIdFilter.apply(_a, tslib_1.__spreadArray([], tslib_1.__read(ids), false))))];
|
|
449
|
+
if (!(id == '')) return [3 /*break*/, 2];
|
|
450
|
+
return [4 /*yield*/, this.deleteMany(filter_interfaces_js_1.Filter.fromEntityFilter(this.entity, this.entity.idMetadata.getIdFilter(id)))];
|
|
455
451
|
case 1:
|
|
456
|
-
|
|
457
|
-
return [
|
|
452
|
+
_a.sent();
|
|
453
|
+
return [3 /*break*/, 3];
|
|
454
|
+
case 2: return [2 /*return*/, this.http().delete(this.url() + '/' + encodeURIComponent(id))];
|
|
455
|
+
case 3: return [2 /*return*/];
|
|
458
456
|
}
|
|
459
457
|
});
|
|
460
458
|
});
|
|
@@ -462,13 +460,14 @@ var RestEntityDataProvider = /** @class */ (function () {
|
|
|
462
460
|
RestEntityDataProvider.prototype.insert = function (data, options) {
|
|
463
461
|
var _this = this;
|
|
464
462
|
return this.http()
|
|
465
|
-
.post(this.url() + ((options === null || options === void 0 ? void 0 : options.select) === 'none' ? '?_select=$none' : ''),
|
|
466
|
-
.then(function (y) {
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
463
|
+
.post(this.url() + ((options === null || options === void 0 ? void 0 : options.select) === 'none' ? '?_select=$none' : ''), this.translateToJson(data))
|
|
464
|
+
.then(function (y) { return _this.translateFromJson(y); });
|
|
465
|
+
};
|
|
466
|
+
RestEntityDataProvider.prototype.insertMany = function (data, options) {
|
|
467
|
+
var _this = this;
|
|
468
|
+
return this.http()
|
|
469
|
+
.post(this.url() + ((options === null || options === void 0 ? void 0 : options.select) === 'none' ? '?_select=$none' : ''), data.map(function (data) { return _this.translateToJson(data); }))
|
|
470
|
+
.then(function (y) { return y.map(function (y) { return _this.translateFromJson(y); }); });
|
|
472
471
|
};
|
|
473
472
|
return RestEntityDataProvider;
|
|
474
473
|
}());
|