@mbc-cqrs-serverless/core 1.1.6 → 1.2.1
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/commands/command.module.js +3 -0
- package/dist/commands/command.module.js.map +1 -1
- package/dist/commands/command.service.d.ts +9 -1
- package/dist/commands/command.service.js +33 -2
- package/dist/commands/command.service.js.map +1 -1
- package/dist/commands/data.service.js +3 -26
- package/dist/commands/data.service.js.map +1 -1
- package/dist/commands/index.d.ts +1 -0
- package/dist/commands/index.js +1 -0
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/repository.d.ts +102 -0
- package/dist/commands/repository.js +280 -0
- package/dist/commands/repository.js.map +1 -0
- package/dist/data-store/data-store.module.js +3 -2
- package/dist/data-store/data-store.module.js.map +1 -1
- package/dist/data-store/index.d.ts +2 -0
- package/dist/data-store/index.js +2 -0
- package/dist/data-store/index.js.map +1 -1
- package/dist/data-store/session.interface.d.ts +10 -0
- package/dist/data-store/session.interface.js +3 -0
- package/dist/data-store/session.interface.js.map +1 -0
- package/dist/data-store/session.service.d.ts +52 -0
- package/dist/data-store/session.service.js +128 -0
- package/dist/data-store/session.service.js.map +1 -0
- package/dist/env.validation.d.ts +1 -0
- package/dist/env.validation.js +5 -0
- package/dist/env.validation.js.map +1 -1
- package/dist/helpers/index.d.ts +1 -0
- package/dist/helpers/index.js +1 -0
- package/dist/helpers/index.js.map +1 -1
- package/dist/helpers/key.d.ts +13 -0
- package/dist/helpers/key.js +26 -0
- package/dist/helpers/key.js.map +1 -1
- package/dist/helpers/transform.d.ts +7 -0
- package/dist/helpers/transform.js +36 -0
- package/dist/helpers/transform.js.map +1 -0
- package/dist/queue/index.d.ts +1 -0
- package/dist/queue/index.js +1 -0
- package/dist/queue/index.js.map +1 -1
- package/dist/queue/queue.module.js +4 -2
- package/dist/queue/queue.module.js.map +1 -1
- package/dist/queue/sns-client-factory.d.ts +2 -2
- package/dist/queue/sns-client-factory.js +4 -6
- package/dist/queue/sns-client-factory.js.map +1 -1
- package/dist/queue/sns.service.js +1 -1
- package/dist/queue/sns.service.js.map +1 -1
- package/dist/queue/sqs-client-factory.d.ts +8 -0
- package/dist/queue/sqs-client-factory.js +35 -0
- package/dist/queue/sqs-client-factory.js.map +1 -0
- package/dist/queue/sqs.service.d.ts +28 -0
- package/dist/queue/sqs.service.js +89 -0
- package/dist/queue/sqs.service.js.map +1 -0
- package/package.json +2 -2
|
@@ -15,6 +15,7 @@ const command_service_1 = require("./command.service");
|
|
|
15
15
|
const data_service_1 = require("./data.service");
|
|
16
16
|
const data_sync_dds_handler_1 = require("./handlers/data-sync-dds.handler");
|
|
17
17
|
const history_service_1 = require("./history.service");
|
|
18
|
+
const repository_1 = require("./repository");
|
|
18
19
|
const ttl_service_1 = require("./ttl.service");
|
|
19
20
|
let CommandModule = class CommandModule extends command_module_definition_1.ConfigurableModuleClass {
|
|
20
21
|
static register(options) {
|
|
@@ -42,6 +43,7 @@ exports.CommandModule = CommandModule = __decorate([
|
|
|
42
43
|
history_service_1.HistoryService,
|
|
43
44
|
command_event_handler_1.CommandEventHandler,
|
|
44
45
|
data_sync_dds_handler_1.DataSyncDdsHandler,
|
|
46
|
+
repository_1.Repository,
|
|
45
47
|
],
|
|
46
48
|
exports: [
|
|
47
49
|
command_service_1.CommandService,
|
|
@@ -49,6 +51,7 @@ exports.CommandModule = CommandModule = __decorate([
|
|
|
49
51
|
history_service_1.HistoryService,
|
|
50
52
|
command_event_handler_1.CommandEventHandler,
|
|
51
53
|
ttl_service_1.TtlService,
|
|
54
|
+
repository_1.Repository,
|
|
52
55
|
],
|
|
53
56
|
})
|
|
54
57
|
], CommandModule);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.module.js","sourceRoot":"","sources":["../../src/commands/command.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAsD;AAEtD,0CAA6C;AAC7C,mEAA6D;AAC7D,2EAGoC;AACpC,uDAAkD;AAClD,iDAA4C;AAC5C,4EAAqE;AACrE,uDAAkD;AAClD,+CAA0C;
|
|
1
|
+
{"version":3,"file":"command.module.js","sourceRoot":"","sources":["../../src/commands/command.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAsD;AAEtD,0CAA6C;AAC7C,mEAA6D;AAC7D,2EAGoC;AACpC,uDAAkD;AAClD,iDAA4C;AAC5C,4EAAqE;AACrE,uDAAkD;AAClD,6CAAyC;AACzC,+CAA0C;AAuBnC,IAAM,aAAa,GAAnB,MAAM,aAAc,SAAQ,mDAAuB;IACxD,MAAM,CAAC,QAAQ,CAAC,OAA4B;QAC1C,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAEtC,MAAM,EAAE,SAAS,EAAE,gBAAgB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAA;QACpD,MAAM,CAAC,SAAS,CAAC,IAAI,CACnB;YACE,2GAA2G;YAC3G,OAAO,EAAE,SAAS,GAAG,sBAAsB;YAC3C,WAAW,EAAE,2CAAmB;SACjC,EACD,GAAG,gBAAgB,CACpB,CAAA;QAED,OAAO;YACL,GAAG,MAAM;SACV,CAAA;IACH,CAAC;CACF,CAAA;AAlBY,sCAAa;wBAAb,aAAa;IArBzB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,EAAE;QACX,SAAS,EAAE;YACT,0BAAe;YACf,gCAAc;YACd,0BAAW;YACX,wBAAU;YACV,gCAAc;YACd,2CAAmB;YACnB,0CAAkB;YAClB,uBAAU;SACX;QACD,OAAO,EAAE;YACP,gCAAc;YACd,0BAAW;YACX,gCAAc;YACd,2CAAmB;YACnB,wBAAU;YACV,uBAAU;SACX;KACF,CAAC;GACW,aAAa,CAkBzB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { OnModuleInit, Type } from '@nestjs/common';
|
|
2
2
|
import { ModuleRef } from '@nestjs/core';
|
|
3
3
|
import { DynamoDbService } from '../data-store/dynamodb.service';
|
|
4
|
+
import { SessionService } from '../data-store/session.service';
|
|
4
5
|
import { CommandInputModel, CommandModel, CommandModuleOptions, CommandPartialInputModel, DetailKey, ICommandService } from '../interfaces';
|
|
5
6
|
import { ICommandOptions } from '../interfaces/command.options.interface';
|
|
6
7
|
import { IDataSyncHandler } from '../interfaces/data-sync-handler.interface';
|
|
@@ -23,10 +24,11 @@ export declare class CommandService implements OnModuleInit, ICommandService {
|
|
|
23
24
|
private readonly dataService;
|
|
24
25
|
private readonly ttlService;
|
|
25
26
|
private readonly historyService;
|
|
27
|
+
private readonly sessionService;
|
|
26
28
|
private logger;
|
|
27
29
|
private [TABLE_NAME];
|
|
28
30
|
private [DATA_SYNC_HANDLER];
|
|
29
|
-
constructor(options: CommandModuleOptions, dynamoDbService: DynamoDbService, explorerService: ExplorerService, moduleRef: ModuleRef, snsService: SnsService, dataSyncDdsHandler: DataSyncDdsHandler, dataService: DataService, ttlService: TtlService, historyService: HistoryService);
|
|
31
|
+
constructor(options: CommandModuleOptions, dynamoDbService: DynamoDbService, explorerService: ExplorerService, moduleRef: ModuleRef, snsService: SnsService, dataSyncDdsHandler: DataSyncDdsHandler, dataService: DataService, ttlService: TtlService, historyService: HistoryService, sessionService: SessionService);
|
|
30
32
|
publishItem(key: DetailKey): Promise<any | null>;
|
|
31
33
|
onModuleInit(): void;
|
|
32
34
|
set tableName(name: string);
|
|
@@ -37,6 +39,12 @@ export declare class CommandService implements OnModuleInit, ICommandService {
|
|
|
37
39
|
publishPartialUpdateAsync(input: CommandPartialInputModel, options: ICommandOptions): Promise<CommandModel | null>;
|
|
38
40
|
publishSync(input: CommandInputModel, options: ICommandOptions): Promise<CommandModel | null>;
|
|
39
41
|
publishAsync(input: CommandInputModel, options: ICommandOptions): Promise<CommandModel | null>;
|
|
42
|
+
/**
|
|
43
|
+
* Records a short-lived session row so Repository can merge pending async
|
|
44
|
+
* commands before the data table catches up. Only used after publishAsync —
|
|
45
|
+
* publishSync writes data in the same request, so no session is needed.
|
|
46
|
+
*/
|
|
47
|
+
private writeRywSessionIfApplicable;
|
|
40
48
|
duplicate(key: DetailKey, options: ICommandOptions): Promise<CommandModel>;
|
|
41
49
|
reSyncData(): Promise<void>;
|
|
42
50
|
updateStatus(key: DetailKey, status: string, notifyId?: string): Promise<void>;
|
|
@@ -21,6 +21,7 @@ const util_1 = require("util");
|
|
|
21
21
|
const constants_1 = require("../constants");
|
|
22
22
|
const user_1 = require("../context/user");
|
|
23
23
|
const dynamodb_service_1 = require("../data-store/dynamodb.service");
|
|
24
|
+
const session_service_1 = require("../data-store/session.service");
|
|
24
25
|
const decorators_1 = require("../decorators");
|
|
25
26
|
const helpers_1 = require("../helpers");
|
|
26
27
|
const key_1 = require("../helpers/key");
|
|
@@ -37,7 +38,7 @@ const ttl_service_1 = require("./ttl.service");
|
|
|
37
38
|
const TABLE_NAME = Symbol('command');
|
|
38
39
|
const DATA_SYNC_HANDLER = Symbol(decorators_1.DATA_SYNC_HANDLER_METADATA);
|
|
39
40
|
let CommandService = CommandService_1 = class CommandService {
|
|
40
|
-
constructor(options, dynamoDbService, explorerService, moduleRef, snsService, dataSyncDdsHandler, dataService, ttlService, historyService) {
|
|
41
|
+
constructor(options, dynamoDbService, explorerService, moduleRef, snsService, dataSyncDdsHandler, dataService, ttlService, historyService, sessionService) {
|
|
41
42
|
this.options = options;
|
|
42
43
|
this.dynamoDbService = dynamoDbService;
|
|
43
44
|
this.explorerService = explorerService;
|
|
@@ -47,6 +48,7 @@ let CommandService = CommandService_1 = class CommandService {
|
|
|
47
48
|
this.dataService = dataService;
|
|
48
49
|
this.ttlService = ttlService;
|
|
49
50
|
this.historyService = historyService;
|
|
51
|
+
this.sessionService = sessionService;
|
|
50
52
|
this[_a] = [];
|
|
51
53
|
this.tableName = this.dynamoDbService.getTableName(this.options.tableName, enums_1.TableType.COMMAND);
|
|
52
54
|
this.logger = new common_1.Logger(`${CommandService_1.name}:${this.tableName}`);
|
|
@@ -234,8 +236,36 @@ let CommandService = CommandService_1 = class CommandService {
|
|
|
234
236
|
};
|
|
235
237
|
this.logger.debug('publish::', command);
|
|
236
238
|
await this.dynamoDbService.putItem(this.tableName, command, 'attribute_not_exists(pk) AND attribute_not_exists(sk)');
|
|
239
|
+
await this.writeRywSessionIfApplicable(command, options);
|
|
237
240
|
return command;
|
|
238
241
|
}
|
|
242
|
+
/**
|
|
243
|
+
* Records a short-lived session row so Repository can merge pending async
|
|
244
|
+
* commands before the data table catches up. Only used after publishAsync —
|
|
245
|
+
* publishSync writes data in the same request, so no session is needed.
|
|
246
|
+
*/
|
|
247
|
+
async writeRywSessionIfApplicable(command, options) {
|
|
248
|
+
let userId;
|
|
249
|
+
try {
|
|
250
|
+
userId = (0, user_1.getUserContext)(options.invokeContext)?.userId;
|
|
251
|
+
}
|
|
252
|
+
catch {
|
|
253
|
+
return;
|
|
254
|
+
}
|
|
255
|
+
if (!userId) {
|
|
256
|
+
return;
|
|
257
|
+
}
|
|
258
|
+
const tenantCode = (0, key_1.getTenantCode)(command.pk);
|
|
259
|
+
if (!tenantCode) {
|
|
260
|
+
return;
|
|
261
|
+
}
|
|
262
|
+
try {
|
|
263
|
+
await this.sessionService.put(userId, tenantCode, this.options.tableName, command.id, command.version);
|
|
264
|
+
}
|
|
265
|
+
catch (err) {
|
|
266
|
+
this.logger.warn('RYW session write failed (non-fatal)', err);
|
|
267
|
+
}
|
|
268
|
+
}
|
|
239
269
|
async duplicate(key, options) {
|
|
240
270
|
const item = await this.getItem(key);
|
|
241
271
|
if (!item) {
|
|
@@ -397,6 +427,7 @@ exports.CommandService = CommandService = CommandService_1 = __decorate([
|
|
|
397
427
|
data_sync_dds_handler_1.DataSyncDdsHandler,
|
|
398
428
|
data_service_1.DataService,
|
|
399
429
|
ttl_service_1.TtlService,
|
|
400
|
-
history_service_1.HistoryService
|
|
430
|
+
history_service_1.HistoryService,
|
|
431
|
+
session_service_1.SessionService])
|
|
401
432
|
], CommandService);
|
|
402
433
|
//# sourceMappingURL=command.service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.service.js","sourceRoot":"","sources":["../../src/commands/command.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"command.service.js","sourceRoot":"","sources":["../../src/commands/command.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,7 @@ exports.DataService = void 0;
|
|
|
17
17
|
const common_1 = require("@nestjs/common");
|
|
18
18
|
const dynamodb_service_1 = require("../data-store/dynamodb.service");
|
|
19
19
|
const key_1 = require("../helpers/key");
|
|
20
|
+
const transform_1 = require("../helpers/transform");
|
|
20
21
|
const interfaces_1 = require("../interfaces");
|
|
21
22
|
const command_module_definition_1 = require("./command.module-definition");
|
|
22
23
|
const enums_1 = require("./enums");
|
|
@@ -60,33 +61,9 @@ let DataService = DataService_1 = class DataService {
|
|
|
60
61
|
* @returns The published data model
|
|
61
62
|
*/
|
|
62
63
|
async publish(cmd) {
|
|
63
|
-
const pk = cmd.pk;
|
|
64
64
|
const sk = (0, key_1.removeSortKeyVersion)(cmd.sk);
|
|
65
|
-
const
|
|
66
|
-
const dataModel =
|
|
67
|
-
...data,
|
|
68
|
-
pk,
|
|
69
|
-
sk,
|
|
70
|
-
id: cmd.id,
|
|
71
|
-
code: cmd.code,
|
|
72
|
-
name: cmd.name,
|
|
73
|
-
version: cmd.version,
|
|
74
|
-
tenantCode: cmd.tenantCode,
|
|
75
|
-
type: cmd.type,
|
|
76
|
-
seq: cmd.seq,
|
|
77
|
-
attributes: cmd.attributes,
|
|
78
|
-
cpk: cmd.pk,
|
|
79
|
-
csk: cmd.sk,
|
|
80
|
-
isDeleted: cmd.isDeleted,
|
|
81
|
-
ttl: cmd.ttl,
|
|
82
|
-
requestId: cmd.requestId,
|
|
83
|
-
createdAt: data?.createdAt || cmd.createdAt,
|
|
84
|
-
updatedAt: cmd.updatedAt,
|
|
85
|
-
createdBy: data?.createdBy || cmd.createdBy,
|
|
86
|
-
updatedBy: cmd.updatedBy,
|
|
87
|
-
createdIp: data?.createdIp || cmd.createdIp,
|
|
88
|
-
updatedIp: cmd.updatedIp,
|
|
89
|
-
};
|
|
65
|
+
const existing = await this.getItem({ pk: cmd.pk, sk });
|
|
66
|
+
const dataModel = (0, transform_1.transformCommandToData)(cmd, existing);
|
|
90
67
|
this.logger.debug('publish::', dataModel);
|
|
91
68
|
await this.dynamoDbService.putItem(this.tableName, dataModel);
|
|
92
69
|
return dataModel;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.service.js","sourceRoot":"","sources":["../../src/commands/data.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAA2D;AAE3D,qEAAgE;AAChE,wCAAqD;AACrD,8CAOsB;AACtB,2EAAkE;AAClE,mCAAmC;AAEnC,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;AAEjC;;;;;;;;;;;;;;;;;GAiBG;AAEI,IAAM,WAAW,mBAAjB,MAAM,WAAW;IAItB,YAEmB,OAA6B,EAC7B,eAAgC;QADhC,YAAO,GAAP,OAAO,CAAsB;QAC7B,oBAAe,GAAf,eAAe,CAAiB;QAEjD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAChD,IAAI,CAAC,OAAO,CAAC,SAAS,EACtB,iBAAS,CAAC,IAAI,CACf,CAAA;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC,GAAG,aAAW,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;IACnE,CAAC;IAED,IAAI,SAAS,CAAC,IAAY;QACxB,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAA;IACzB,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC,CAAA;IACzB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CAAC,GAAiB;QAC7B,MAAM,EAAE,GAAG,
|
|
1
|
+
{"version":3,"file":"data.service.js","sourceRoot":"","sources":["../../src/commands/data.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAA2D;AAE3D,qEAAgE;AAChE,wCAAqD;AACrD,oDAA6D;AAC7D,8CAOsB;AACtB,2EAAkE;AAClE,mCAAmC;AAEnC,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;AAEjC;;;;;;;;;;;;;;;;;GAiBG;AAEI,IAAM,WAAW,mBAAjB,MAAM,WAAW;IAItB,YAEmB,OAA6B,EAC7B,eAAgC;QADhC,YAAO,GAAP,OAAO,CAAsB;QAC7B,oBAAe,GAAf,eAAe,CAAiB;QAEjD,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAChD,IAAI,CAAC,OAAO,CAAC,SAAS,EACtB,iBAAS,CAAC,IAAI,CACf,CAAA;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,eAAM,CAAC,GAAG,aAAW,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;IACnE,CAAC;IAED,IAAI,SAAS,CAAC,IAAY;QACxB,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAA;IACzB,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC,CAAA;IACzB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,OAAO,CAAC,GAAiB;QAC7B,MAAM,EAAE,GAAG,IAAA,0BAAoB,EAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACvC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;QACvD,MAAM,SAAS,GAAG,IAAA,kCAAsB,EAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;QAEvD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,SAAS,CAAC,CAAA;QACzC,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;QAE7D,OAAO,SAAS,CAAA;IAClB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,OAAO,CAAC,GAAc;QAC1B,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAA;IAChE,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,aAAa,CACjB,EAAU,EACV,IASC;QAED,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,aAAa,CAChE,IAAI,CAAC,SAAS,EACd,EAAE,EACF,IAAI,EAAE,EAAE,EACR,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,KAAK,EACX,IAAI,EAAE,KAAK,CACZ,CAAA;QAED,OAAO,IAAI,2BAAc,CAAC;YACxB,MAAM;YACN,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,uBAAU,CAAC,IAAI,CAAC,CAAC;SACjD,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AA1FY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;IAMR,WAAA,IAAA,eAAM,EAAC,gDAAoB,CAAC,CAAA;6CAEK,kCAAe;GAPxC,WAAW,CA0FvB"}
|
package/dist/commands/index.d.ts
CHANGED
package/dist/commands/index.js
CHANGED
|
@@ -21,4 +21,5 @@ __exportStar(require("./data.service"), exports);
|
|
|
21
21
|
__exportStar(require("./enums"), exports);
|
|
22
22
|
__exportStar(require("./handlers"), exports);
|
|
23
23
|
__exportStar(require("./history.service"), exports);
|
|
24
|
+
__exportStar(require("./repository"), exports);
|
|
24
25
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAuC;AACvC,mDAAgC;AAChC,oDAAiC;AACjC,iDAA8B;AAC9B,0CAAuB;AACvB,6CAA0B;AAC1B,oDAAiC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAuC;AACvC,mDAAgC;AAChC,oDAAiC;AACjC,iDAA8B;AAC9B,0CAAuB;AACvB,6CAA0B;AAC1B,oDAAiC;AACjC,+CAA4B"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { SessionService } from '../data-store/session.service';
|
|
2
|
+
import { CommandModel, CommandModuleOptions, DataListEntity, DataModel, DetailKey, ICommandOptions } from '../interfaces';
|
|
3
|
+
import { CommandService } from './command.service';
|
|
4
|
+
import { DataService } from './data.service';
|
|
5
|
+
export interface IMergeOptions<TItem extends {
|
|
6
|
+
id: string;
|
|
7
|
+
}> {
|
|
8
|
+
/** * Set true to merge pending async commands into the result.
|
|
9
|
+
* If false/undefined -> acts as a simple passthrough.
|
|
10
|
+
*/
|
|
11
|
+
latestFlg?: boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Transform a CommandModel into the same shape as a TItem returned by the query.
|
|
14
|
+
* The `existing` parameter is provided for update cases to merge unchanged fields.
|
|
15
|
+
*/
|
|
16
|
+
transformCommand: (cmd: CommandModel, existing?: TItem) => TItem;
|
|
17
|
+
/**
|
|
18
|
+
* Optional filter applied AFTER transformCommand for "create-new" rows.
|
|
19
|
+
* Prevents newly created items from appearing in lists where they don't match the current search criteria.
|
|
20
|
+
*/
|
|
21
|
+
matchesFilter?: (item: TItem) => boolean;
|
|
22
|
+
}
|
|
23
|
+
export declare class Repository {
|
|
24
|
+
private readonly options;
|
|
25
|
+
private readonly dataService;
|
|
26
|
+
private readonly commandService;
|
|
27
|
+
private readonly sessionService;
|
|
28
|
+
private readonly logger;
|
|
29
|
+
private readonly moduleTableName;
|
|
30
|
+
constructor(options: CommandModuleOptions, dataService: DataService, commandService: CommandService, sessionService: SessionService);
|
|
31
|
+
/**
|
|
32
|
+
* Get a single data item, merging a pending async command when a session exists.
|
|
33
|
+
*/
|
|
34
|
+
getItem(key: DetailKey, options: ICommandOptions): Promise<DataModel>;
|
|
35
|
+
/**
|
|
36
|
+
* List items from the DynamoDB data table with an optional merge of pending async commands.
|
|
37
|
+
*
|
|
38
|
+
* When `mergeOptions.latestFlg` is true, the result is augmented with any
|
|
39
|
+
* pending writes the current user has not yet seen reflected in the data table:
|
|
40
|
+
*
|
|
41
|
+
* - **update** — the existing item is replaced in-place, preserving its
|
|
42
|
+
* position in the list.
|
|
43
|
+
* - **delete** — the item is removed from the result.
|
|
44
|
+
* - **create-new** — the item is prepended to the top of the list, sorted by
|
|
45
|
+
* `updatedAt` descending when there are multiple pending creates.
|
|
46
|
+
*
|
|
47
|
+
* > **Sort-order note**: Prepended create-new items are not integrated into
|
|
48
|
+
* > the caller's sort order (e.g. by `name` or `code`). They will appear
|
|
49
|
+
* > at the top of the result until the async DynamoDB Stream sync completes and
|
|
50
|
+
* > the next read returns fully sorted data. This is intentional — the
|
|
51
|
+
* > guarantee is visibility, not sort position.
|
|
52
|
+
*/
|
|
53
|
+
listItemsByPk(pk: string, opts?: {
|
|
54
|
+
sk?: {
|
|
55
|
+
skExpression: string;
|
|
56
|
+
skAttributeValues: Record<string, string>;
|
|
57
|
+
skAttributeNames?: Record<string, string>;
|
|
58
|
+
};
|
|
59
|
+
startFromSk?: string;
|
|
60
|
+
limit?: number;
|
|
61
|
+
order?: 'asc' | 'desc';
|
|
62
|
+
}, mergeOptions?: {
|
|
63
|
+
latestFlg?: boolean;
|
|
64
|
+
}, options?: ICommandOptions): Promise<DataListEntity>;
|
|
65
|
+
/**
|
|
66
|
+
* List items from an external source (e.g., RDS/Elasticsearch) with an
|
|
67
|
+
* optional merge of pending async commands.
|
|
68
|
+
*
|
|
69
|
+
* When `mergeOptions.latestFlg` is true, the result is augmented with any
|
|
70
|
+
* pending writes the current user has not yet seen reflected in the query
|
|
71
|
+
* source:
|
|
72
|
+
*
|
|
73
|
+
* - **update** — the existing item is replaced in-place via `transformCommand`,
|
|
74
|
+
* preserving its position. `existing` is passed to the transformer so join
|
|
75
|
+
* data (e.g. related RDS rows) can be carried over.
|
|
76
|
+
* - **delete** — the item is removed and `total` is decremented.
|
|
77
|
+
* - **create-new** — the item is transformed, optionally filtered by
|
|
78
|
+
* `matchesFilter`, and prepended to the top of the result sorted by
|
|
79
|
+
* `updatedAt` descending. `total` is incremented.
|
|
80
|
+
*
|
|
81
|
+
* > **Sort-order note**: Prepended create-new items are not integrated into
|
|
82
|
+
* > the caller's sort order (e.g. by `name` or `code`). They will appear
|
|
83
|
+
* > at the top of the result until the async Stream → RDS sync completes and
|
|
84
|
+
* > the next read returns fully sorted data. This is intentional — the
|
|
85
|
+
* > guarantee is visibility, not sort position.
|
|
86
|
+
*
|
|
87
|
+
* > **Pagination note**: `total` reflects the adjusted count after merge.
|
|
88
|
+
* > However, prepended items sit outside the RDS `LIMIT`/`OFFSET` window, so
|
|
89
|
+
* > on page 2+ the caller may see a one-item overlap or gap until sync
|
|
90
|
+
* > completes. For most UX patterns (redirect-after-write, optimistic UI)
|
|
91
|
+
* > this is not noticeable.
|
|
92
|
+
*/
|
|
93
|
+
listItems<TItem extends {
|
|
94
|
+
id: string;
|
|
95
|
+
}>(query: () => Promise<{
|
|
96
|
+
total: number;
|
|
97
|
+
items: TItem[];
|
|
98
|
+
}>, mergeOptions?: IMergeOptions<TItem>, options?: ICommandOptions): Promise<{
|
|
99
|
+
total: number;
|
|
100
|
+
items: TItem[];
|
|
101
|
+
}>;
|
|
102
|
+
}
|