@punks/backend-entity-manager 0.0.348 → 0.0.350
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/dist/cjs/index.js +425 -292
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/abstractions/actions.d.ts +5 -0
- package/dist/cjs/types/abstractions/commands.d.ts +4 -0
- package/dist/cjs/types/abstractions/import.d.ts +8 -0
- package/dist/cjs/types/abstractions/index.d.ts +5 -3
- package/dist/cjs/types/abstractions/manager.d.ts +2 -1
- package/dist/cjs/types/abstractions/parse.d.ts +24 -0
- package/dist/cjs/types/abstractions/serializer.d.ts +20 -3
- package/dist/cjs/types/abstractions/session.d.ts +7 -0
- package/dist/cjs/types/actions/parse.d.ts +9 -0
- package/dist/cjs/types/base/serializer.d.ts +1 -0
- package/dist/cjs/types/commands/parse.d.ts +14 -0
- package/dist/cjs/types/concrete/index.d.ts +4 -2
- package/dist/cjs/types/platforms/nest/__test__/server/app/foos/foo.controller.d.ts +2 -1
- package/dist/cjs/types/platforms/nest/__test__/server/app/foos/foo.dto.d.ts +7 -0
- package/dist/cjs/types/platforms/nest/index.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/models/index.d.ts +1 -0
- package/dist/cjs/types/platforms/nest/models/parsing.d.ts +12 -0
- package/dist/cjs/types/platforms/nest/services/session/index.d.ts +2 -1
- package/dist/cjs/types/providers/{services.d.ts → services/entities-locator.d.ts} +33 -72
- package/dist/cjs/types/providers/services/entity-locator.d.ts +73 -0
- package/dist/cjs/types/providers/services/index.d.ts +2 -0
- package/dist/cjs/types/symbols/ioc.d.ts +2 -0
- package/dist/cjs/types/testing/mocks/index.d.ts +1 -0
- package/dist/cjs/types/testing/mocks/session.d.ts +10 -0
- package/dist/esm/index.js +423 -293
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/abstractions/actions.d.ts +5 -0
- package/dist/esm/types/abstractions/commands.d.ts +4 -0
- package/dist/esm/types/abstractions/import.d.ts +8 -0
- package/dist/esm/types/abstractions/index.d.ts +5 -3
- package/dist/esm/types/abstractions/manager.d.ts +2 -1
- package/dist/esm/types/abstractions/parse.d.ts +24 -0
- package/dist/esm/types/abstractions/serializer.d.ts +20 -3
- package/dist/esm/types/abstractions/session.d.ts +7 -0
- package/dist/esm/types/actions/parse.d.ts +9 -0
- package/dist/esm/types/base/serializer.d.ts +1 -0
- package/dist/esm/types/commands/parse.d.ts +14 -0
- package/dist/esm/types/concrete/index.d.ts +4 -2
- package/dist/esm/types/platforms/nest/__test__/server/app/foos/foo.controller.d.ts +2 -1
- package/dist/esm/types/platforms/nest/__test__/server/app/foos/foo.dto.d.ts +7 -0
- package/dist/esm/types/platforms/nest/index.d.ts +1 -0
- package/dist/esm/types/platforms/nest/models/index.d.ts +1 -0
- package/dist/esm/types/platforms/nest/models/parsing.d.ts +12 -0
- package/dist/esm/types/platforms/nest/services/session/index.d.ts +2 -1
- package/dist/esm/types/providers/{services.d.ts → services/entities-locator.d.ts} +33 -72
- package/dist/esm/types/providers/services/entity-locator.d.ts +73 -0
- package/dist/esm/types/providers/services/index.d.ts +2 -0
- package/dist/esm/types/symbols/ioc.d.ts +2 -0
- package/dist/esm/types/testing/mocks/index.d.ts +1 -0
- package/dist/esm/types/testing/mocks/session.d.ts +10 -0
- package/dist/index.d.ts +581 -486
- package/package.json +1 -1
package/dist/cjs/index.js
CHANGED
|
@@ -19,6 +19,7 @@ var schedule = require('@nestjs/schedule');
|
|
|
19
19
|
var require$$0 = require('child_process');
|
|
20
20
|
var cqrs = require('@nestjs/cqrs');
|
|
21
21
|
var require$$1 = require('fs');
|
|
22
|
+
var swagger = require('@nestjs/swagger');
|
|
22
23
|
var clientS3 = require('@aws-sdk/client-s3');
|
|
23
24
|
var s3RequestPresigner = require('@aws-sdk/s3-request-presigner');
|
|
24
25
|
var clientSes = require('@aws-sdk/client-ses');
|
|
@@ -225,13 +226,13 @@ class EntitySerializer {
|
|
|
225
226
|
}
|
|
226
227
|
parseCsv(data, definition) {
|
|
227
228
|
const records = backendCore.csvParse(data, DEFAULT_DELIMITER);
|
|
228
|
-
return records.map((x) => this.convertSheetRecord(x, definition));
|
|
229
|
+
return records.map((x, i) => this.convertSheetRecord(x, definition, i));
|
|
229
230
|
}
|
|
230
231
|
parseXlsx(data, definition) {
|
|
231
232
|
const records = backendCore.excelParse(data);
|
|
232
|
-
return records.map((x) => this.convertSheetRecord(x, definition));
|
|
233
|
+
return records.map((x, i) => this.convertSheetRecord(x, definition, i));
|
|
233
234
|
}
|
|
234
|
-
convertSheetRecord(record, definition) {
|
|
235
|
+
convertSheetRecord(record, definition, rowIndex) {
|
|
235
236
|
if (!record._type || record._type !== this.entityName) {
|
|
236
237
|
throw new Error(`Invalid record type ${record._type} -> record: \n${JSON.stringify(record)}`);
|
|
237
238
|
}
|
|
@@ -244,10 +245,26 @@ class EntitySerializer {
|
|
|
244
245
|
entity[column.selector] = this.parseColumnValue(record, column);
|
|
245
246
|
}
|
|
246
247
|
}
|
|
248
|
+
const validationErrors = [];
|
|
249
|
+
for (const column of definition.columns) {
|
|
250
|
+
for (const validator of column.validators ?? []) {
|
|
251
|
+
const result = validator.fn((item) => item[column.selector]);
|
|
252
|
+
if (!result.isValid) {
|
|
253
|
+
validationErrors.push({
|
|
254
|
+
errorCode: validator.key,
|
|
255
|
+
});
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
}
|
|
247
259
|
const idField = definition.columns.find((x) => x.idColumn || x.selector === "id");
|
|
248
260
|
return {
|
|
249
261
|
id: idField ? entity[idField.selector] : undefined,
|
|
250
262
|
item: entity,
|
|
263
|
+
rowIndex,
|
|
264
|
+
status: {
|
|
265
|
+
isValid: validationErrors.length === 0,
|
|
266
|
+
validationErrors,
|
|
267
|
+
},
|
|
251
268
|
};
|
|
252
269
|
}
|
|
253
270
|
parseColumnValue(row, definition) {
|
|
@@ -309,6 +326,7 @@ class EntitySerializer {
|
|
|
309
326
|
async serialize(data, format) {
|
|
310
327
|
return await this.buildExportFile(data, format);
|
|
311
328
|
}
|
|
329
|
+
validateSheetItem(item, allItems, context) { }
|
|
312
330
|
async getContext() {
|
|
313
331
|
return (await this.services
|
|
314
332
|
.resolveAuthenticationContextProvider()
|
|
@@ -499,6 +517,19 @@ class EntitiesImportAction {
|
|
|
499
517
|
}
|
|
500
518
|
}
|
|
501
519
|
|
|
520
|
+
class EntitiesParseAction {
|
|
521
|
+
constructor(services) {
|
|
522
|
+
this.services = services;
|
|
523
|
+
this.logger = backendCore.Log.getLogger(`${services.getEntityName()} -> Import`);
|
|
524
|
+
}
|
|
525
|
+
async execute(input) {
|
|
526
|
+
this.logger.debug("Parse action started", { input });
|
|
527
|
+
const result = await this.services.resolveParseCommand().execute(input);
|
|
528
|
+
this.logger.debug("Parse action completed", { input });
|
|
529
|
+
return result;
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
|
|
502
533
|
class EntitiesSampleDownloadAction {
|
|
503
534
|
constructor(services) {
|
|
504
535
|
this.services = services;
|
|
@@ -813,6 +844,12 @@ class EntitiesExportCommand {
|
|
|
813
844
|
}
|
|
814
845
|
}
|
|
815
846
|
|
|
847
|
+
var InvalidEntityHandling;
|
|
848
|
+
(function (InvalidEntityHandling) {
|
|
849
|
+
InvalidEntityHandling["Skip"] = "skip";
|
|
850
|
+
InvalidEntityHandling["Fail"] = "fail";
|
|
851
|
+
})(InvalidEntityHandling || (InvalidEntityHandling = {}));
|
|
852
|
+
|
|
816
853
|
class EntitiesImportCommand {
|
|
817
854
|
constructor(services, settings) {
|
|
818
855
|
this.services = services;
|
|
@@ -825,10 +862,19 @@ class EntitiesImportCommand {
|
|
|
825
862
|
fileName: input.file.fileName,
|
|
826
863
|
});
|
|
827
864
|
const importEntities = await this.parseImportFile(input.file.content, input.format);
|
|
828
|
-
|
|
865
|
+
const validEntities = importEntities.filter((x) => x.status.isValid);
|
|
866
|
+
const invalidEntities = importEntities.filter((x) => !x.status.isValid);
|
|
867
|
+
if (invalidEntities.length > 0 &&
|
|
868
|
+
input.options?.invalidEntitiesHandling !== InvalidEntityHandling.Skip) {
|
|
869
|
+
throw new Error(`Cannot import file due to invalid entities: ${invalidEntities
|
|
870
|
+
.map((x) => x.id)
|
|
871
|
+
.join(", ")}`);
|
|
872
|
+
}
|
|
873
|
+
await this.services.resolveSerializer().import(validEntities.map((x) => x.item), input.payload);
|
|
829
874
|
return {
|
|
830
875
|
statistics: {
|
|
831
|
-
importedCount:
|
|
876
|
+
importedCount: validEntities.length,
|
|
877
|
+
skippedCount: invalidEntities.length,
|
|
832
878
|
createdCount: 0,
|
|
833
879
|
unchangedCount: 0,
|
|
834
880
|
updatedCount: 0,
|
|
@@ -854,6 +900,41 @@ class EntitiesImportCommand {
|
|
|
854
900
|
}
|
|
855
901
|
}
|
|
856
902
|
|
|
903
|
+
class EntitiesParseCommand {
|
|
904
|
+
constructor(services, settings) {
|
|
905
|
+
this.services = services;
|
|
906
|
+
this.settings = settings;
|
|
907
|
+
}
|
|
908
|
+
async execute(input) {
|
|
909
|
+
await this.uploadImportFile({
|
|
910
|
+
content: input.file.content,
|
|
911
|
+
contentType: input.file.contentType,
|
|
912
|
+
fileName: input.file.fileName,
|
|
913
|
+
});
|
|
914
|
+
const entries = await this.parseImportFile(input.file.content, input.format);
|
|
915
|
+
return {
|
|
916
|
+
entries,
|
|
917
|
+
};
|
|
918
|
+
}
|
|
919
|
+
async parseImportFile(content, format) {
|
|
920
|
+
return await this.services.resolveSerializer().parse(content, format);
|
|
921
|
+
}
|
|
922
|
+
async uploadImportFile(file) {
|
|
923
|
+
await this.bucket.fileUpload({
|
|
924
|
+
bucket: this.settings.exportBucket.bucket,
|
|
925
|
+
filePath: this.buildAbsoluteBucketPath(file.fileName),
|
|
926
|
+
content: file.content,
|
|
927
|
+
contentType: file.contentType,
|
|
928
|
+
});
|
|
929
|
+
}
|
|
930
|
+
buildAbsoluteBucketPath(relativePath) {
|
|
931
|
+
return `${this.settings.exportBucket.rootFolderPath ?? ""}/parsers/${createDayPath$1(new Date())}/${relativePath}`;
|
|
932
|
+
}
|
|
933
|
+
get bucket() {
|
|
934
|
+
return this.services.getRootServices().resolveDefaultBucketProvider();
|
|
935
|
+
}
|
|
936
|
+
}
|
|
937
|
+
|
|
857
938
|
class EntitiesSampleDownloadCommand {
|
|
858
939
|
constructor(services, settings) {
|
|
859
940
|
this.services = services;
|
|
@@ -1130,6 +1211,9 @@ class EntityManager {
|
|
|
1130
1211
|
get import() {
|
|
1131
1212
|
return this.services.resolveImportCommand();
|
|
1132
1213
|
}
|
|
1214
|
+
get parse() {
|
|
1215
|
+
return this.services.resolveParseCommand();
|
|
1216
|
+
}
|
|
1133
1217
|
get sampleDownload() {
|
|
1134
1218
|
return this.services.resolveSampleDownloadCommand();
|
|
1135
1219
|
}
|
|
@@ -1174,6 +1258,9 @@ class EntityActions {
|
|
|
1174
1258
|
get import() {
|
|
1175
1259
|
return this.services.resolveImportAction();
|
|
1176
1260
|
}
|
|
1261
|
+
get parse() {
|
|
1262
|
+
return this.services.resolveParseAction();
|
|
1263
|
+
}
|
|
1177
1264
|
get sampleDownload() {
|
|
1178
1265
|
return this.services.resolveSampleDownloadAction();
|
|
1179
1266
|
}
|
|
@@ -1262,6 +1349,7 @@ const EntityServices = {
|
|
|
1262
1349
|
IEntityDeleteAction: "IEntityDeleteAction",
|
|
1263
1350
|
IEntityMergeAction: "IEntityMergeAction",
|
|
1264
1351
|
IEntitiesExportAction: "IEntitiesExportAction",
|
|
1352
|
+
IEntitiesParseAction: "IEntitiesParseAction",
|
|
1265
1353
|
IEntitiesImportAction: "IEntitiesImportAction",
|
|
1266
1354
|
IEntitiesSampleDownloadAction: "IEntitiesSampleDownloadAction",
|
|
1267
1355
|
IEntityVersionsSearchAction: "IEntityVersionsSearchAction",
|
|
@@ -1280,6 +1368,7 @@ const EntityServices = {
|
|
|
1280
1368
|
IEntitiesDeleteCommand: "IEntitiesDeleteCommand",
|
|
1281
1369
|
IEntitiesExportCommand: "IEntitiesExportCommand",
|
|
1282
1370
|
IEntitiesImportCommand: "IEntitiesImportCommand",
|
|
1371
|
+
IEntitiesParseCommand: "IEntitiesParseCommand",
|
|
1283
1372
|
IEntitiesSampleDownloadCommand: "IEntitiesSampleDownloadCommand",
|
|
1284
1373
|
},
|
|
1285
1374
|
Converters: {
|
|
@@ -1360,162 +1449,6 @@ const GlobalServices = {
|
|
|
1360
1449
|
},
|
|
1361
1450
|
};
|
|
1362
1451
|
|
|
1363
|
-
class EntityServiceLocator {
|
|
1364
|
-
constructor(services, entityName) {
|
|
1365
|
-
this.services = services;
|
|
1366
|
-
this.entityName = entityName;
|
|
1367
|
-
}
|
|
1368
|
-
getRootServices() {
|
|
1369
|
-
return this.services;
|
|
1370
|
-
}
|
|
1371
|
-
resolveAuthenticationContextProvider() {
|
|
1372
|
-
return this.services.resolveAuthenticationContextProvider();
|
|
1373
|
-
}
|
|
1374
|
-
resolveEntityManager() {
|
|
1375
|
-
return this.services.resolveEntityManager(this.entityName);
|
|
1376
|
-
}
|
|
1377
|
-
resolveEntityActions() {
|
|
1378
|
-
return this.services.resolveEntityActions(this.entityName);
|
|
1379
|
-
}
|
|
1380
|
-
resolveRepository() {
|
|
1381
|
-
return this.services.resolveRepository(this.entityName);
|
|
1382
|
-
}
|
|
1383
|
-
resolveEventsManager() {
|
|
1384
|
-
return this.services.resolveEventsManager(this.entityName);
|
|
1385
|
-
}
|
|
1386
|
-
resolveVersioningProvider() {
|
|
1387
|
-
return this.services.resolveEntityVersioningProvider();
|
|
1388
|
-
}
|
|
1389
|
-
resolveEntityConfiguration() {
|
|
1390
|
-
return this.services.resolveEntityConfiguration(this.entityName);
|
|
1391
|
-
}
|
|
1392
|
-
resolveReplicaSyncManager() {
|
|
1393
|
-
return this.services.resolveReplicaSyncManager(this.entityName);
|
|
1394
|
-
}
|
|
1395
|
-
resolveReplicaConfiguration() {
|
|
1396
|
-
return this.services.resolveReplicaConfiguration(this.entityName);
|
|
1397
|
-
}
|
|
1398
|
-
resolveReplicaDeleteManager() {
|
|
1399
|
-
return this.services.resolveReplicaDeleteManager(this.entityName);
|
|
1400
|
-
}
|
|
1401
|
-
resolveConnectorSyncManager() {
|
|
1402
|
-
return this.services.resolveConnectorSyncManager(this.entityName);
|
|
1403
|
-
}
|
|
1404
|
-
resolveConnectorDeleteManager() {
|
|
1405
|
-
return this.services.resolveConnectorDeleteManager(this.entityName);
|
|
1406
|
-
}
|
|
1407
|
-
resolveConnectorsConfiguration() {
|
|
1408
|
-
return this.services.resolveConnectorsConfiguration(this.entityName);
|
|
1409
|
-
}
|
|
1410
|
-
resolveConverter() {
|
|
1411
|
-
return this.services.resolveConverter(this.entityName);
|
|
1412
|
-
}
|
|
1413
|
-
resolveSerializer() {
|
|
1414
|
-
return this.services.resolveSerializer(this.entityName);
|
|
1415
|
-
}
|
|
1416
|
-
resolveSnapshotService() {
|
|
1417
|
-
return this.services.resolveSnapshotService(this.entityName);
|
|
1418
|
-
}
|
|
1419
|
-
resolveAdapter() {
|
|
1420
|
-
return this.services.resolveAdapter(this.entityName);
|
|
1421
|
-
}
|
|
1422
|
-
resolveAuthorizationMiddleware() {
|
|
1423
|
-
return this.services.resolveAuthorizationMiddleware(this.entityName);
|
|
1424
|
-
}
|
|
1425
|
-
resolveGetQuery() {
|
|
1426
|
-
return this.services.resolveGetQuery(this.entityName);
|
|
1427
|
-
}
|
|
1428
|
-
resolveExistsQuery() {
|
|
1429
|
-
return this.services.resolveExistsQuery(this.entityName);
|
|
1430
|
-
}
|
|
1431
|
-
resolveCountQuery() {
|
|
1432
|
-
return this.services.resolveCountQuery(this.entityName);
|
|
1433
|
-
}
|
|
1434
|
-
resolveVersionsSearchQuery() {
|
|
1435
|
-
return this.services.resolveVersionsSearchQuery(this.entityName);
|
|
1436
|
-
}
|
|
1437
|
-
resolveSearchQuery() {
|
|
1438
|
-
return this.services.resolveSearchQuery(this.entityName);
|
|
1439
|
-
}
|
|
1440
|
-
resolveFindQuery() {
|
|
1441
|
-
return this.services.resolveFindQuery(this.entityName);
|
|
1442
|
-
}
|
|
1443
|
-
resolveCreateCommand() {
|
|
1444
|
-
return this.services.resolveCreateCommand(this.entityName);
|
|
1445
|
-
}
|
|
1446
|
-
resolveUpdateCommand() {
|
|
1447
|
-
return this.services.resolveUpdateCommand(this.entityName);
|
|
1448
|
-
}
|
|
1449
|
-
resolveUpsertCommand() {
|
|
1450
|
-
return this.services.resolveUpsertCommand(this.entityName);
|
|
1451
|
-
}
|
|
1452
|
-
resolveUpsertByCommand() {
|
|
1453
|
-
return this.services.resolveUpsertByCommand(this.entityName);
|
|
1454
|
-
}
|
|
1455
|
-
resolveDeleteCommand() {
|
|
1456
|
-
return this.services.resolveDeleteCommand(this.entityName);
|
|
1457
|
-
}
|
|
1458
|
-
resolveDeleteItemsCommand() {
|
|
1459
|
-
return this.services.resolveDeleteItemsCommand(this.entityName);
|
|
1460
|
-
}
|
|
1461
|
-
resolveVersionCommand() {
|
|
1462
|
-
return this.services.resolveVersionCommand(this.entityName);
|
|
1463
|
-
}
|
|
1464
|
-
resolveSampleDownloadCommand() {
|
|
1465
|
-
return this.services.resolveSampleDownloadCommand(this.entityName);
|
|
1466
|
-
}
|
|
1467
|
-
resolveImportCommand() {
|
|
1468
|
-
return this.services.resolveImportCommand(this.entityName);
|
|
1469
|
-
}
|
|
1470
|
-
resolveExportCommand() {
|
|
1471
|
-
return this.services.resolveExportCommand(this.entityName);
|
|
1472
|
-
}
|
|
1473
|
-
resolveGetAction() {
|
|
1474
|
-
return this.services.resolveGetAction(this.entityName);
|
|
1475
|
-
}
|
|
1476
|
-
resolveExistsAction() {
|
|
1477
|
-
return this.services.resolveExistsAction(this.entityName);
|
|
1478
|
-
}
|
|
1479
|
-
resolveCountAction() {
|
|
1480
|
-
return this.services.resolveCountAction(this.entityName);
|
|
1481
|
-
}
|
|
1482
|
-
resolveSearchAction() {
|
|
1483
|
-
return this.services.resolveSearchAction(this.entityName);
|
|
1484
|
-
}
|
|
1485
|
-
resolveVersionsSearchAction() {
|
|
1486
|
-
return this.services.resolveVersionsSearchAction(this.entityName);
|
|
1487
|
-
}
|
|
1488
|
-
resolveCreateAction() {
|
|
1489
|
-
return this.services.resolveCreateAction(this.entityName);
|
|
1490
|
-
}
|
|
1491
|
-
resolveUpdateAction() {
|
|
1492
|
-
return this.services.resolveUpdateAction(this.entityName);
|
|
1493
|
-
}
|
|
1494
|
-
resolveUpsertAction() {
|
|
1495
|
-
return this.services.resolveUpsertAction(this.entityName);
|
|
1496
|
-
}
|
|
1497
|
-
resolveDeleteAction() {
|
|
1498
|
-
return this.services.resolveDeleteAction(this.entityName);
|
|
1499
|
-
}
|
|
1500
|
-
resolveDeleteItemsAction() {
|
|
1501
|
-
return this.services.resolveDeleteItemsAction(this.entityName);
|
|
1502
|
-
}
|
|
1503
|
-
resolveImportAction() {
|
|
1504
|
-
return this.services.resolveImportAction(this.entityName);
|
|
1505
|
-
}
|
|
1506
|
-
resolveSampleDownloadAction() {
|
|
1507
|
-
return this.services.resolveSampleDownloadAction(this.entityName);
|
|
1508
|
-
}
|
|
1509
|
-
resolveExportAction() {
|
|
1510
|
-
return this.services.resolveExportAction(this.entityName);
|
|
1511
|
-
}
|
|
1512
|
-
resolveQueryBuilder() {
|
|
1513
|
-
return this.services.resolveQueryBuilder(this.entityName);
|
|
1514
|
-
}
|
|
1515
|
-
getEntityName() {
|
|
1516
|
-
return this.entityName;
|
|
1517
|
-
}
|
|
1518
|
-
}
|
|
1519
1452
|
class EntitiesServiceLocator {
|
|
1520
1453
|
constructor(provider) {
|
|
1521
1454
|
this.provider = provider;
|
|
@@ -1867,6 +1800,12 @@ class EntitiesServiceLocator {
|
|
|
1867
1800
|
registerImportCommand(entityName, instance) {
|
|
1868
1801
|
this.provider.registerEntityService(EntityServices.Commands.IEntitiesImportCommand, entityName, instance);
|
|
1869
1802
|
}
|
|
1803
|
+
resolveParseCommand(entityName) {
|
|
1804
|
+
return this.provider.resolveEntityService(EntityServices.Commands.IEntitiesParseCommand, entityName);
|
|
1805
|
+
}
|
|
1806
|
+
registerParseCommand(entityName, instance) {
|
|
1807
|
+
this.provider.registerEntityService(EntityServices.Commands.IEntitiesParseCommand, entityName, instance);
|
|
1808
|
+
}
|
|
1870
1809
|
resolveSampleDownloadCommand(entityName) {
|
|
1871
1810
|
return this.provider.resolveEntityService(EntityServices.Commands.IEntitiesSampleDownloadCommand, entityName);
|
|
1872
1811
|
}
|
|
@@ -1951,6 +1890,12 @@ class EntitiesServiceLocator {
|
|
|
1951
1890
|
registerImportAction(entityName, instance) {
|
|
1952
1891
|
this.provider.registerEntityService(EntityServices.Actions.IEntitiesImportAction, entityName, instance);
|
|
1953
1892
|
}
|
|
1893
|
+
resolveParseAction(entityName) {
|
|
1894
|
+
return this.provider.resolveEntityService(EntityServices.Actions.IEntitiesParseAction, entityName);
|
|
1895
|
+
}
|
|
1896
|
+
registerParseAction(entityName, instance) {
|
|
1897
|
+
this.provider.registerEntityService(EntityServices.Actions.IEntitiesParseAction, entityName, instance);
|
|
1898
|
+
}
|
|
1954
1899
|
resolveQueryBuilder(entityName) {
|
|
1955
1900
|
return this.provider.resolveEntityService(EntityServices.Queries.IEntitiesQueryBuilder, entityName);
|
|
1956
1901
|
}
|
|
@@ -1959,6 +1904,169 @@ class EntitiesServiceLocator {
|
|
|
1959
1904
|
}
|
|
1960
1905
|
}
|
|
1961
1906
|
|
|
1907
|
+
class EntityServiceLocator {
|
|
1908
|
+
constructor(services, entityName) {
|
|
1909
|
+
this.services = services;
|
|
1910
|
+
this.entityName = entityName;
|
|
1911
|
+
}
|
|
1912
|
+
getRootServices() {
|
|
1913
|
+
return this.services;
|
|
1914
|
+
}
|
|
1915
|
+
resolveAuthenticationContextProvider() {
|
|
1916
|
+
return this.services.resolveAuthenticationContextProvider();
|
|
1917
|
+
}
|
|
1918
|
+
resolveEntityManager() {
|
|
1919
|
+
return this.services.resolveEntityManager(this.entityName);
|
|
1920
|
+
}
|
|
1921
|
+
resolveEntityActions() {
|
|
1922
|
+
return this.services.resolveEntityActions(this.entityName);
|
|
1923
|
+
}
|
|
1924
|
+
resolveRepository() {
|
|
1925
|
+
return this.services.resolveRepository(this.entityName);
|
|
1926
|
+
}
|
|
1927
|
+
resolveEventsManager() {
|
|
1928
|
+
return this.services.resolveEventsManager(this.entityName);
|
|
1929
|
+
}
|
|
1930
|
+
resolveVersioningProvider() {
|
|
1931
|
+
return this.services.resolveEntityVersioningProvider();
|
|
1932
|
+
}
|
|
1933
|
+
resolveEntityConfiguration() {
|
|
1934
|
+
return this.services.resolveEntityConfiguration(this.entityName);
|
|
1935
|
+
}
|
|
1936
|
+
resolveReplicaSyncManager() {
|
|
1937
|
+
return this.services.resolveReplicaSyncManager(this.entityName);
|
|
1938
|
+
}
|
|
1939
|
+
resolveReplicaConfiguration() {
|
|
1940
|
+
return this.services.resolveReplicaConfiguration(this.entityName);
|
|
1941
|
+
}
|
|
1942
|
+
resolveReplicaDeleteManager() {
|
|
1943
|
+
return this.services.resolveReplicaDeleteManager(this.entityName);
|
|
1944
|
+
}
|
|
1945
|
+
resolveConnectorSyncManager() {
|
|
1946
|
+
return this.services.resolveConnectorSyncManager(this.entityName);
|
|
1947
|
+
}
|
|
1948
|
+
resolveConnectorDeleteManager() {
|
|
1949
|
+
return this.services.resolveConnectorDeleteManager(this.entityName);
|
|
1950
|
+
}
|
|
1951
|
+
resolveConnectorsConfiguration() {
|
|
1952
|
+
return this.services.resolveConnectorsConfiguration(this.entityName);
|
|
1953
|
+
}
|
|
1954
|
+
resolveConverter() {
|
|
1955
|
+
return this.services.resolveConverter(this.entityName);
|
|
1956
|
+
}
|
|
1957
|
+
resolveSerializer() {
|
|
1958
|
+
return this.services.resolveSerializer(this.entityName);
|
|
1959
|
+
}
|
|
1960
|
+
resolveSnapshotService() {
|
|
1961
|
+
return this.services.resolveSnapshotService(this.entityName);
|
|
1962
|
+
}
|
|
1963
|
+
resolveAdapter() {
|
|
1964
|
+
return this.services.resolveAdapter(this.entityName);
|
|
1965
|
+
}
|
|
1966
|
+
resolveAuthorizationMiddleware() {
|
|
1967
|
+
return this.services.resolveAuthorizationMiddleware(this.entityName);
|
|
1968
|
+
}
|
|
1969
|
+
resolveGetQuery() {
|
|
1970
|
+
return this.services.resolveGetQuery(this.entityName);
|
|
1971
|
+
}
|
|
1972
|
+
resolveExistsQuery() {
|
|
1973
|
+
return this.services.resolveExistsQuery(this.entityName);
|
|
1974
|
+
}
|
|
1975
|
+
resolveCountQuery() {
|
|
1976
|
+
return this.services.resolveCountQuery(this.entityName);
|
|
1977
|
+
}
|
|
1978
|
+
resolveVersionsSearchQuery() {
|
|
1979
|
+
return this.services.resolveVersionsSearchQuery(this.entityName);
|
|
1980
|
+
}
|
|
1981
|
+
resolveSearchQuery() {
|
|
1982
|
+
return this.services.resolveSearchQuery(this.entityName);
|
|
1983
|
+
}
|
|
1984
|
+
resolveFindQuery() {
|
|
1985
|
+
return this.services.resolveFindQuery(this.entityName);
|
|
1986
|
+
}
|
|
1987
|
+
resolveCreateCommand() {
|
|
1988
|
+
return this.services.resolveCreateCommand(this.entityName);
|
|
1989
|
+
}
|
|
1990
|
+
resolveUpdateCommand() {
|
|
1991
|
+
return this.services.resolveUpdateCommand(this.entityName);
|
|
1992
|
+
}
|
|
1993
|
+
resolveUpsertCommand() {
|
|
1994
|
+
return this.services.resolveUpsertCommand(this.entityName);
|
|
1995
|
+
}
|
|
1996
|
+
resolveUpsertByCommand() {
|
|
1997
|
+
return this.services.resolveUpsertByCommand(this.entityName);
|
|
1998
|
+
}
|
|
1999
|
+
resolveDeleteCommand() {
|
|
2000
|
+
return this.services.resolveDeleteCommand(this.entityName);
|
|
2001
|
+
}
|
|
2002
|
+
resolveDeleteItemsCommand() {
|
|
2003
|
+
return this.services.resolveDeleteItemsCommand(this.entityName);
|
|
2004
|
+
}
|
|
2005
|
+
resolveVersionCommand() {
|
|
2006
|
+
return this.services.resolveVersionCommand(this.entityName);
|
|
2007
|
+
}
|
|
2008
|
+
resolveSampleDownloadCommand() {
|
|
2009
|
+
return this.services.resolveSampleDownloadCommand(this.entityName);
|
|
2010
|
+
}
|
|
2011
|
+
resolveImportCommand() {
|
|
2012
|
+
return this.services.resolveImportCommand(this.entityName);
|
|
2013
|
+
}
|
|
2014
|
+
resolveParseCommand() {
|
|
2015
|
+
return this.services.resolveParseCommand(this.entityName);
|
|
2016
|
+
}
|
|
2017
|
+
resolveExportCommand() {
|
|
2018
|
+
return this.services.resolveExportCommand(this.entityName);
|
|
2019
|
+
}
|
|
2020
|
+
resolveGetAction() {
|
|
2021
|
+
return this.services.resolveGetAction(this.entityName);
|
|
2022
|
+
}
|
|
2023
|
+
resolveExistsAction() {
|
|
2024
|
+
return this.services.resolveExistsAction(this.entityName);
|
|
2025
|
+
}
|
|
2026
|
+
resolveCountAction() {
|
|
2027
|
+
return this.services.resolveCountAction(this.entityName);
|
|
2028
|
+
}
|
|
2029
|
+
resolveSearchAction() {
|
|
2030
|
+
return this.services.resolveSearchAction(this.entityName);
|
|
2031
|
+
}
|
|
2032
|
+
resolveVersionsSearchAction() {
|
|
2033
|
+
return this.services.resolveVersionsSearchAction(this.entityName);
|
|
2034
|
+
}
|
|
2035
|
+
resolveCreateAction() {
|
|
2036
|
+
return this.services.resolveCreateAction(this.entityName);
|
|
2037
|
+
}
|
|
2038
|
+
resolveUpdateAction() {
|
|
2039
|
+
return this.services.resolveUpdateAction(this.entityName);
|
|
2040
|
+
}
|
|
2041
|
+
resolveUpsertAction() {
|
|
2042
|
+
return this.services.resolveUpsertAction(this.entityName);
|
|
2043
|
+
}
|
|
2044
|
+
resolveDeleteAction() {
|
|
2045
|
+
return this.services.resolveDeleteAction(this.entityName);
|
|
2046
|
+
}
|
|
2047
|
+
resolveDeleteItemsAction() {
|
|
2048
|
+
return this.services.resolveDeleteItemsAction(this.entityName);
|
|
2049
|
+
}
|
|
2050
|
+
resolveImportAction() {
|
|
2051
|
+
return this.services.resolveImportAction(this.entityName);
|
|
2052
|
+
}
|
|
2053
|
+
resolveParseAction() {
|
|
2054
|
+
return this.services.resolveParseAction(this.entityName);
|
|
2055
|
+
}
|
|
2056
|
+
resolveSampleDownloadAction() {
|
|
2057
|
+
return this.services.resolveSampleDownloadAction(this.entityName);
|
|
2058
|
+
}
|
|
2059
|
+
resolveExportAction() {
|
|
2060
|
+
return this.services.resolveExportAction(this.entityName);
|
|
2061
|
+
}
|
|
2062
|
+
resolveQueryBuilder() {
|
|
2063
|
+
return this.services.resolveQueryBuilder(this.entityName);
|
|
2064
|
+
}
|
|
2065
|
+
getEntityName() {
|
|
2066
|
+
return this.entityName;
|
|
2067
|
+
}
|
|
2068
|
+
}
|
|
2069
|
+
|
|
1962
2070
|
class EntitiesCountQuery {
|
|
1963
2071
|
constructor(services) {
|
|
1964
2072
|
this.services = services;
|
|
@@ -2515,7 +2623,9 @@ class EntityManagerServiceCollection {
|
|
|
2515
2623
|
this.locator.registerExportCommand(this.entityName, new EntitiesExportCommand(this.resolver, settings));
|
|
2516
2624
|
this.locator.registerExportAction(this.entityName, new EntitiesExportAction(this.resolver));
|
|
2517
2625
|
this.locator.registerImportCommand(this.entityName, new EntitiesImportCommand(this.resolver, settings));
|
|
2626
|
+
this.locator.registerParseCommand(this.entityName, new EntitiesParseCommand(this.resolver, settings));
|
|
2518
2627
|
this.locator.registerImportAction(this.entityName, new EntitiesImportAction(this.resolver));
|
|
2628
|
+
this.locator.registerParseAction(this.entityName, new EntitiesParseAction(this.resolver));
|
|
2519
2629
|
this.locator.registerSampleDownloadCommand(this.entityName, new EntitiesSampleDownloadCommand(this.resolver, settings));
|
|
2520
2630
|
this.locator.registerSampleDownloadAction(this.entityName, new EntitiesSampleDownloadAction(this.resolver));
|
|
2521
2631
|
return this;
|
|
@@ -22085,6 +22195,26 @@ exports.MediaLibraryService = __decorate([
|
|
|
22085
22195
|
__metadata("design:paramtypes", [exports.EntityManagerRegistry])
|
|
22086
22196
|
], exports.MediaLibraryService);
|
|
22087
22197
|
|
|
22198
|
+
function toInteger(dirtyNumber) {
|
|
22199
|
+
if (dirtyNumber === null || dirtyNumber === true || dirtyNumber === false) {
|
|
22200
|
+
return NaN;
|
|
22201
|
+
}
|
|
22202
|
+
|
|
22203
|
+
var number = Number(dirtyNumber);
|
|
22204
|
+
|
|
22205
|
+
if (isNaN(number)) {
|
|
22206
|
+
return number;
|
|
22207
|
+
}
|
|
22208
|
+
|
|
22209
|
+
return number < 0 ? Math.ceil(number) : Math.floor(number);
|
|
22210
|
+
}
|
|
22211
|
+
|
|
22212
|
+
function requiredArgs(required, args) {
|
|
22213
|
+
if (args.length < required) {
|
|
22214
|
+
throw new TypeError(required + ' argument' + (required > 1 ? 's' : '') + ' required, but only ' + args.length + ' present');
|
|
22215
|
+
}
|
|
22216
|
+
}
|
|
22217
|
+
|
|
22088
22218
|
/**
|
|
22089
22219
|
* @name toDate
|
|
22090
22220
|
* @category Common Helpers
|
|
@@ -22101,11 +22231,9 @@ exports.MediaLibraryService = __decorate([
|
|
|
22101
22231
|
*
|
|
22102
22232
|
* **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.
|
|
22103
22233
|
*
|
|
22104
|
-
* @
|
|
22105
|
-
*
|
|
22106
|
-
* @
|
|
22107
|
-
*
|
|
22108
|
-
* @returns The parsed date in the local time zone
|
|
22234
|
+
* @param {Date|Number} argument - the value to convert
|
|
22235
|
+
* @returns {Date} the parsed date in the local time zone
|
|
22236
|
+
* @throws {TypeError} 1 argument required
|
|
22109
22237
|
*
|
|
22110
22238
|
* @example
|
|
22111
22239
|
* // Clone the date:
|
|
@@ -22117,65 +22245,25 @@ exports.MediaLibraryService = __decorate([
|
|
|
22117
22245
|
* const result = toDate(1392098430000)
|
|
22118
22246
|
* //=> Tue Feb 11 2014 11:30:30
|
|
22119
22247
|
*/
|
|
22248
|
+
|
|
22120
22249
|
function toDate(argument) {
|
|
22121
|
-
|
|
22250
|
+
requiredArgs(1, arguments);
|
|
22251
|
+
var argStr = Object.prototype.toString.call(argument); // Clone the date
|
|
22122
22252
|
|
|
22123
|
-
|
|
22124
|
-
if (
|
|
22125
|
-
argument instanceof Date ||
|
|
22126
|
-
(typeof argument === "object" && argStr === "[object Date]")
|
|
22127
|
-
) {
|
|
22253
|
+
if (argument instanceof Date || typeof argument === 'object' && argStr === '[object Date]') {
|
|
22128
22254
|
// Prevent the date to lose the milliseconds when passed to new Date() in IE10
|
|
22129
|
-
return new argument.
|
|
22130
|
-
} else if (
|
|
22131
|
-
typeof argument === "number" ||
|
|
22132
|
-
argStr === "[object Number]" ||
|
|
22133
|
-
typeof argument === "string" ||
|
|
22134
|
-
argStr === "[object String]"
|
|
22135
|
-
) {
|
|
22136
|
-
// TODO: Can we get rid of as?
|
|
22255
|
+
return new Date(argument.getTime());
|
|
22256
|
+
} else if (typeof argument === 'number' || argStr === '[object Number]') {
|
|
22137
22257
|
return new Date(argument);
|
|
22138
22258
|
} else {
|
|
22139
|
-
|
|
22140
|
-
|
|
22141
|
-
|
|
22142
|
-
}
|
|
22259
|
+
if ((typeof argument === 'string' || argStr === '[object String]') && typeof console !== 'undefined') {
|
|
22260
|
+
// eslint-disable-next-line no-console
|
|
22261
|
+
console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://git.io/fjule"); // eslint-disable-next-line no-console
|
|
22143
22262
|
|
|
22144
|
-
|
|
22145
|
-
|
|
22146
|
-
|
|
22147
|
-
|
|
22148
|
-
*
|
|
22149
|
-
* @description
|
|
22150
|
-
* The function constructs a new date using the constructor from the reference
|
|
22151
|
-
* date and the given value. It helps to build generic functions that accept
|
|
22152
|
-
* date extensions.
|
|
22153
|
-
*
|
|
22154
|
-
* It defaults to `Date` if the passed reference date is a number or a string.
|
|
22155
|
-
*
|
|
22156
|
-
* @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).
|
|
22157
|
-
*
|
|
22158
|
-
* @param date - The reference date to take constructor from
|
|
22159
|
-
* @param value - The value to create the date
|
|
22160
|
-
*
|
|
22161
|
-
* @returns Date initialized using the given date and value
|
|
22162
|
-
*
|
|
22163
|
-
* @example
|
|
22164
|
-
* import { constructFrom } from 'date-fns'
|
|
22165
|
-
*
|
|
22166
|
-
* // A function that clones a date preserving the original type
|
|
22167
|
-
* function cloneDate<DateType extends Date(date: DateType): DateType {
|
|
22168
|
-
* return constructFrom(
|
|
22169
|
-
* date, // Use contrustor from the given date
|
|
22170
|
-
* date.getTime() // Use the date value to create a new date
|
|
22171
|
-
* )
|
|
22172
|
-
* }
|
|
22173
|
-
*/
|
|
22174
|
-
function constructFrom(date, value) {
|
|
22175
|
-
if (date instanceof Date) {
|
|
22176
|
-
return new date.constructor(value);
|
|
22177
|
-
} else {
|
|
22178
|
-
return new Date(value);
|
|
22263
|
+
console.warn(new Error().stack);
|
|
22264
|
+
}
|
|
22265
|
+
|
|
22266
|
+
return new Date(NaN);
|
|
22179
22267
|
}
|
|
22180
22268
|
}
|
|
22181
22269
|
|
|
@@ -22187,60 +22275,37 @@ function constructFrom(date, value) {
|
|
|
22187
22275
|
* @description
|
|
22188
22276
|
* Add the specified number of days to the given date.
|
|
22189
22277
|
*
|
|
22190
|
-
*
|
|
22278
|
+
* ### v2.0.0 breaking changes:
|
|
22191
22279
|
*
|
|
22192
|
-
*
|
|
22193
|
-
* @param amount - The amount of days to be added.
|
|
22280
|
+
* - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).
|
|
22194
22281
|
*
|
|
22195
|
-
* @
|
|
22282
|
+
* @param {Date|Number} date - the date to be changed
|
|
22283
|
+
* @param {Number} amount - the amount of days to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.
|
|
22284
|
+
* @returns {Date} the new date with the days added
|
|
22285
|
+
* @throws {TypeError} 2 arguments required
|
|
22196
22286
|
*
|
|
22197
22287
|
* @example
|
|
22198
22288
|
* // Add 10 days to 1 September 2014:
|
|
22199
|
-
*
|
|
22289
|
+
* var result = addDays(new Date(2014, 8, 1), 10)
|
|
22200
22290
|
* //=> Thu Sep 11 2014 00:00:00
|
|
22201
22291
|
*/
|
|
22202
|
-
|
|
22203
|
-
|
|
22204
|
-
|
|
22292
|
+
|
|
22293
|
+
function addDays(dirtyDate, dirtyAmount) {
|
|
22294
|
+
requiredArgs(2, arguments);
|
|
22295
|
+
var date = toDate(dirtyDate);
|
|
22296
|
+
var amount = toInteger(dirtyAmount);
|
|
22297
|
+
|
|
22298
|
+
if (isNaN(amount)) {
|
|
22299
|
+
return new Date(NaN);
|
|
22300
|
+
}
|
|
22301
|
+
|
|
22205
22302
|
if (!amount) {
|
|
22206
22303
|
// If 0 days, no-op to avoid changing times in the hour before end of DST
|
|
22207
|
-
return
|
|
22304
|
+
return date;
|
|
22208
22305
|
}
|
|
22209
|
-
_date.setDate(_date.getDate() + amount);
|
|
22210
|
-
return _date;
|
|
22211
|
-
}
|
|
22212
22306
|
|
|
22213
|
-
|
|
22214
|
-
|
|
22215
|
-
* @summary Useful constants
|
|
22216
|
-
* @description
|
|
22217
|
-
* Collection of useful date constants.
|
|
22218
|
-
*
|
|
22219
|
-
* The constants could be imported from `date-fns/constants`:
|
|
22220
|
-
*
|
|
22221
|
-
* ```ts
|
|
22222
|
-
* import { maxTime, minTime } from "./constants/date-fns/constants";
|
|
22223
|
-
*
|
|
22224
|
-
* function isAllowedTime(time) {
|
|
22225
|
-
* return time <= maxTime && time >= minTime;
|
|
22226
|
-
* }
|
|
22227
|
-
* ```
|
|
22228
|
-
*/
|
|
22229
|
-
|
|
22230
|
-
/**
|
|
22231
|
-
* @constant
|
|
22232
|
-
* @name millisecondsInMinute
|
|
22233
|
-
* @summary Milliseconds in 1 minute
|
|
22234
|
-
*/
|
|
22235
|
-
const millisecondsInMinute = 60000;
|
|
22236
|
-
|
|
22237
|
-
function getRoundingMethod(method) {
|
|
22238
|
-
return (number) => {
|
|
22239
|
-
const round = method ? Math[method] : Math.trunc;
|
|
22240
|
-
const result = round(number);
|
|
22241
|
-
// Prevent negative zero
|
|
22242
|
-
return result === 0 ? 0 : result;
|
|
22243
|
-
};
|
|
22307
|
+
date.setDate(date.getDate() + amount);
|
|
22308
|
+
return date;
|
|
22244
22309
|
}
|
|
22245
22310
|
|
|
22246
22311
|
/**
|
|
@@ -22251,30 +22316,33 @@ function getRoundingMethod(method) {
|
|
|
22251
22316
|
* @description
|
|
22252
22317
|
* Get the number of milliseconds between the given dates.
|
|
22253
22318
|
*
|
|
22254
|
-
*
|
|
22319
|
+
* ### v2.0.0 breaking changes:
|
|
22255
22320
|
*
|
|
22256
|
-
*
|
|
22257
|
-
* @param dateRight - The earlier date
|
|
22321
|
+
* - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).
|
|
22258
22322
|
*
|
|
22259
|
-
* @
|
|
22323
|
+
* @param {Date|Number} dateLeft - the later date
|
|
22324
|
+
* @param {Date|Number} dateRight - the earlier date
|
|
22325
|
+
* @returns {Number} the number of milliseconds
|
|
22326
|
+
* @throws {TypeError} 2 arguments required
|
|
22260
22327
|
*
|
|
22261
22328
|
* @example
|
|
22262
22329
|
* // How many milliseconds are between
|
|
22263
22330
|
* // 2 July 2014 12:30:20.600 and 2 July 2014 12:30:21.700?
|
|
22264
|
-
*
|
|
22331
|
+
* var result = differenceInMilliseconds(
|
|
22265
22332
|
* new Date(2014, 6, 2, 12, 30, 21, 700),
|
|
22266
22333
|
* new Date(2014, 6, 2, 12, 30, 20, 600)
|
|
22267
22334
|
* )
|
|
22268
22335
|
* //=> 1100
|
|
22269
22336
|
*/
|
|
22270
|
-
function differenceInMilliseconds(dateLeft, dateRight) {
|
|
22271
|
-
return +toDate(dateLeft) - +toDate(dateRight);
|
|
22272
|
-
}
|
|
22273
22337
|
|
|
22274
|
-
|
|
22275
|
-
|
|
22276
|
-
|
|
22338
|
+
function differenceInMilliseconds(dirtyDateLeft, dirtyDateRight) {
|
|
22339
|
+
requiredArgs(2, arguments);
|
|
22340
|
+
var dateLeft = toDate(dirtyDateLeft);
|
|
22341
|
+
var dateRight = toDate(dirtyDateRight);
|
|
22342
|
+
return dateLeft.getTime() - dateRight.getTime();
|
|
22343
|
+
}
|
|
22277
22344
|
|
|
22345
|
+
var MILLISECONDS_IN_MINUTE = 60000;
|
|
22278
22346
|
/**
|
|
22279
22347
|
* @name differenceInMinutes
|
|
22280
22348
|
* @category Minute Helpers
|
|
@@ -22283,34 +22351,36 @@ function differenceInMilliseconds(dateLeft, dateRight) {
|
|
|
22283
22351
|
* @description
|
|
22284
22352
|
* Get the signed number of full (rounded towards 0) minutes between the given dates.
|
|
22285
22353
|
*
|
|
22286
|
-
*
|
|
22354
|
+
* ### v2.0.0 breaking changes:
|
|
22287
22355
|
*
|
|
22288
|
-
*
|
|
22289
|
-
* @param dateRight - The earlier date
|
|
22290
|
-
* @param options - An object with options.
|
|
22356
|
+
* - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).
|
|
22291
22357
|
*
|
|
22292
|
-
* @
|
|
22358
|
+
* @param {Date|Number} dateLeft - the later date
|
|
22359
|
+
* @param {Date|Number} dateRight - the earlier date
|
|
22360
|
+
* @returns {Number} the number of minutes
|
|
22361
|
+
* @throws {TypeError} 2 arguments required
|
|
22293
22362
|
*
|
|
22294
22363
|
* @example
|
|
22295
22364
|
* // How many minutes are between 2 July 2014 12:07:59 and 2 July 2014 12:20:00?
|
|
22296
|
-
*
|
|
22365
|
+
* var result = differenceInMinutes(
|
|
22297
22366
|
* new Date(2014, 6, 2, 12, 20, 0),
|
|
22298
22367
|
* new Date(2014, 6, 2, 12, 7, 59)
|
|
22299
22368
|
* )
|
|
22300
22369
|
* //=> 12
|
|
22301
22370
|
*
|
|
22302
22371
|
* @example
|
|
22303
|
-
* // How many minutes are
|
|
22304
|
-
*
|
|
22372
|
+
* // How many minutes are from 10:01:59 to 10:00:00
|
|
22373
|
+
* var result = differenceInMinutes(
|
|
22305
22374
|
* new Date(2000, 0, 1, 10, 0, 0),
|
|
22306
22375
|
* new Date(2000, 0, 1, 10, 1, 59)
|
|
22307
22376
|
* )
|
|
22308
22377
|
* //=> -1
|
|
22309
22378
|
*/
|
|
22310
|
-
|
|
22311
|
-
|
|
22312
|
-
|
|
22313
|
-
|
|
22379
|
+
|
|
22380
|
+
function differenceInMinutes(dirtyDateLeft, dirtyDateRight) {
|
|
22381
|
+
requiredArgs(2, arguments);
|
|
22382
|
+
var diff = differenceInMilliseconds(dirtyDateLeft, dirtyDateRight) / MILLISECONDS_IN_MINUTE;
|
|
22383
|
+
return diff > 0 ? Math.floor(diff) : Math.ceil(diff);
|
|
22314
22384
|
}
|
|
22315
22385
|
|
|
22316
22386
|
/**
|
|
@@ -22321,20 +22391,25 @@ function differenceInMinutes(dateLeft, dateRight, options) {
|
|
|
22321
22391
|
* @description
|
|
22322
22392
|
* Subtract the specified number of days from the given date.
|
|
22323
22393
|
*
|
|
22324
|
-
*
|
|
22394
|
+
* ### v2.0.0 breaking changes:
|
|
22325
22395
|
*
|
|
22326
|
-
*
|
|
22327
|
-
* @param amount - The amount of days to be subtracted.
|
|
22396
|
+
* - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).
|
|
22328
22397
|
*
|
|
22329
|
-
* @
|
|
22398
|
+
* @param {Date|Number} date - the date to be changed
|
|
22399
|
+
* @param {Number} amount - the amount of days to be subtracted. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.
|
|
22400
|
+
* @returns {Date} the new date with the days subtracted
|
|
22401
|
+
* @throws {TypeError} 2 arguments required
|
|
22330
22402
|
*
|
|
22331
22403
|
* @example
|
|
22332
22404
|
* // Subtract 10 days from 1 September 2014:
|
|
22333
|
-
*
|
|
22405
|
+
* var result = subDays(new Date(2014, 8, 1), 10)
|
|
22334
22406
|
* //=> Fri Aug 22 2014 00:00:00
|
|
22335
22407
|
*/
|
|
22336
|
-
|
|
22337
|
-
|
|
22408
|
+
|
|
22409
|
+
function subDays(dirtyDate, dirtyAmount) {
|
|
22410
|
+
requiredArgs(2, arguments);
|
|
22411
|
+
var amount = toInteger(dirtyAmount);
|
|
22412
|
+
return addDays(dirtyDate, -amount);
|
|
22338
22413
|
}
|
|
22339
22414
|
|
|
22340
22415
|
const WpOperationLockService = (props = {}) => common.applyDecorators(common.Injectable(), common.SetMetadata(EntityManagerSymbols.OperationLockService, {
|
|
@@ -34757,6 +34832,37 @@ class AppExceptionsFilterBase {
|
|
|
34757
34832
|
}
|
|
34758
34833
|
}
|
|
34759
34834
|
|
|
34835
|
+
class EntityParseValidationError {
|
|
34836
|
+
}
|
|
34837
|
+
__decorate([
|
|
34838
|
+
swagger.ApiProperty(),
|
|
34839
|
+
__metadata("design:type", String)
|
|
34840
|
+
], EntityParseValidationError.prototype, "errorCode", void 0);
|
|
34841
|
+
class EntityParseStatus {
|
|
34842
|
+
}
|
|
34843
|
+
__decorate([
|
|
34844
|
+
swagger.ApiProperty(),
|
|
34845
|
+
__metadata("design:type", Boolean)
|
|
34846
|
+
], EntityParseStatus.prototype, "isValid", void 0);
|
|
34847
|
+
__decorate([
|
|
34848
|
+
swagger.ApiProperty({ type: [EntityParseValidationError] }),
|
|
34849
|
+
__metadata("design:type", Array)
|
|
34850
|
+
], EntityParseStatus.prototype, "validationErrors", void 0);
|
|
34851
|
+
class EntityParseResult {
|
|
34852
|
+
}
|
|
34853
|
+
__decorate([
|
|
34854
|
+
swagger.ApiProperty(),
|
|
34855
|
+
__metadata("design:type", Number)
|
|
34856
|
+
], EntityParseResult.prototype, "rowIndex", void 0);
|
|
34857
|
+
__decorate([
|
|
34858
|
+
swagger.ApiProperty({ type: Object }),
|
|
34859
|
+
__metadata("design:type", Object)
|
|
34860
|
+
], EntityParseResult.prototype, "item", void 0);
|
|
34861
|
+
__decorate([
|
|
34862
|
+
swagger.ApiProperty(),
|
|
34863
|
+
__metadata("design:type", EntityParseStatus)
|
|
34864
|
+
], EntityParseResult.prototype, "status", void 0);
|
|
34865
|
+
|
|
34760
34866
|
const buildCompletedStepsSequence = (step) => {
|
|
34761
34867
|
const steps = [];
|
|
34762
34868
|
let currentStep = step;
|
|
@@ -44193,6 +44299,30 @@ exports.InMemorySecretsProvider = __decorate([
|
|
|
44193
44299
|
WpSecretsProvider("inMemorySecretsManager")
|
|
44194
44300
|
], exports.InMemorySecretsProvider);
|
|
44195
44301
|
|
|
44302
|
+
class TestingAppSessionService {
|
|
44303
|
+
constructor() {
|
|
44304
|
+
this.values = new Map();
|
|
44305
|
+
}
|
|
44306
|
+
getValue(key) {
|
|
44307
|
+
return this.values.get(key);
|
|
44308
|
+
}
|
|
44309
|
+
setValue(key, value) {
|
|
44310
|
+
this.values.set(key, value);
|
|
44311
|
+
}
|
|
44312
|
+
clearValue(key) {
|
|
44313
|
+
this.values.set(key, undefined);
|
|
44314
|
+
}
|
|
44315
|
+
getRequest() {
|
|
44316
|
+
return this.values.get("request");
|
|
44317
|
+
}
|
|
44318
|
+
mockRequest(request) {
|
|
44319
|
+
this.values.set("request", request);
|
|
44320
|
+
}
|
|
44321
|
+
retrieveRequest() {
|
|
44322
|
+
return this.getRequest();
|
|
44323
|
+
}
|
|
44324
|
+
}
|
|
44325
|
+
|
|
44196
44326
|
exports.AUTHENTICATION_EVENTS_NAMESPACE = AUTHENTICATION_EVENTS_NAMESPACE;
|
|
44197
44327
|
exports.ApiKeyAccess = ApiKeyAccess;
|
|
44198
44328
|
exports.AppExceptionsFilterBase = AppExceptionsFilterBase;
|
|
@@ -44215,6 +44345,8 @@ exports.EntityManagerSymbols = EntityManagerSymbols;
|
|
|
44215
44345
|
exports.EntityManagerUnauthorizedException = EntityManagerUnauthorizedException;
|
|
44216
44346
|
exports.EntityNotFoundException = EntityNotFoundException;
|
|
44217
44347
|
exports.EntityOperationUnauthorizedException = EntityOperationUnauthorizedException;
|
|
44348
|
+
exports.EntityParseResult = EntityParseResult;
|
|
44349
|
+
exports.EntityParseValidationError = EntityParseValidationError;
|
|
44218
44350
|
exports.EntitySeeder = EntitySeeder;
|
|
44219
44351
|
exports.EntitySerializer = EntitySerializer;
|
|
44220
44352
|
exports.EntitySnapshotService = EntitySnapshotService;
|
|
@@ -44247,6 +44379,7 @@ exports.QueryBuilderBase = QueryBuilderBase;
|
|
|
44247
44379
|
exports.Roles = Roles;
|
|
44248
44380
|
exports.SanityMediaError = SanityMediaError;
|
|
44249
44381
|
exports.SendgridEmailTemplate = SendgridEmailTemplate;
|
|
44382
|
+
exports.TestingAppSessionService = TestingAppSessionService;
|
|
44250
44383
|
exports.TypeOrmQueryBuilder = TypeOrmQueryBuilder;
|
|
44251
44384
|
exports.TypeOrmRepository = TypeOrmRepository;
|
|
44252
44385
|
exports.TypeormCacheInstance = TypeormCacheInstance;
|