@nestplatform/transactional 1.0.1 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/README.md +91 -0
  2. package/dist/decorators/index.d.ts +2 -0
  3. package/dist/decorators/index.js +2 -0
  4. package/dist/decorators/index.js.map +1 -1
  5. package/dist/decorators/transactional-event-listener.decorator.d.ts +2 -0
  6. package/dist/decorators/transactional-event-listener.decorator.js +13 -0
  7. package/dist/decorators/transactional-event-listener.decorator.js.map +1 -0
  8. package/dist/decorators/transactional-event.decorator.d.ts +2 -0
  9. package/dist/decorators/transactional-event.decorator.js +13 -0
  10. package/dist/decorators/transactional-event.decorator.js.map +1 -0
  11. package/dist/decorators/transactional.decorator.js +1 -0
  12. package/dist/decorators/transactional.decorator.js.map +1 -1
  13. package/dist/index.d.ts +4 -0
  14. package/dist/index.js +4 -0
  15. package/dist/index.js.map +1 -1
  16. package/dist/interfaces/index.d.ts +1 -0
  17. package/dist/interfaces/index.js +1 -0
  18. package/dist/interfaces/index.js.map +1 -1
  19. package/dist/interfaces/transaction-synchronization.interface.d.ts +6 -0
  20. package/dist/interfaces/transaction-synchronization.interface.js +3 -0
  21. package/dist/interfaces/transaction-synchronization.interface.js.map +1 -0
  22. package/dist/transaction-context.d.ts +13 -6
  23. package/dist/transaction-context.js +41 -0
  24. package/dist/transaction-context.js.map +1 -1
  25. package/dist/transactional-event.publisher.d.ts +14 -0
  26. package/dist/transactional-event.publisher.js +75 -0
  27. package/dist/transactional-event.publisher.js.map +1 -0
  28. package/dist/transactional-feature.decoration.js +1 -0
  29. package/dist/transactional-feature.decoration.js.map +1 -1
  30. package/dist/transactional-metadata.accessor.d.ts +11 -5
  31. package/dist/transactional-metadata.accessor.js +6 -0
  32. package/dist/transactional-metadata.accessor.js.map +1 -1
  33. package/dist/transactional-metadata.explorer.d.ts +12 -6
  34. package/dist/transactional-metadata.explorer.js +32 -5
  35. package/dist/transactional-metadata.explorer.js.map +1 -1
  36. package/dist/transactional.constant.d.ts +2 -0
  37. package/dist/transactional.constant.js +3 -1
  38. package/dist/transactional.constant.js.map +1 -1
  39. package/dist/transactional.module.js +11 -1
  40. package/dist/transactional.module.js.map +1 -1
  41. package/dist/types/transactional.type.d.ts +35 -13
  42. package/dist/types/transactional.type.js +8 -1
  43. package/dist/types/transactional.type.js.map +1 -1
  44. package/package.json +3 -3
  45. package/tsconfig.tsbuildinfo +1 -1
@@ -14,13 +14,21 @@ const providers_1 = require("./providers");
14
14
  const transactional_metadata_explorer_1 = require("./transactional-metadata.explorer");
15
15
  const transactional_feature_decoration_1 = require("./transactional-feature.decoration");
16
16
  const transactional_metadata_accessor_1 = require("./transactional-metadata.accessor");
17
+ const transactional_event_publisher_1 = require("./transactional-event.publisher");
17
18
  let TransactionalModule = TransactionalModule_1 = class TransactionalModule extends common_2.ConfigurableModule {
18
19
  static register(config) {
19
20
  return super.config(config, {
20
21
  global: true,
21
22
  module: TransactionalModule_1,
22
23
  imports: [common_2.FeatureExplorerModule],
23
- providers: [(0, providers_1.TransactionAdapterProvider)(config), transactional_metadata_explorer_1.TransactionalMetadataExplorer, transactional_metadata_accessor_1.TransactionalMetadataAccessor, transactional_feature_decoration_1.TransactionalFeatureDecoration],
24
+ providers: [
25
+ (0, providers_1.TransactionAdapterProvider)(config),
26
+ transactional_metadata_explorer_1.TransactionalMetadataExplorer,
27
+ transactional_metadata_accessor_1.TransactionalMetadataAccessor,
28
+ transactional_feature_decoration_1.TransactionalFeatureDecoration,
29
+ transactional_event_publisher_1.TransactionalEventPublisher,
30
+ ],
31
+ exports: [transactional_event_publisher_1.TransactionalEventPublisher],
24
32
  });
25
33
  }
26
34
  static registerAsync(config) {
@@ -33,7 +41,9 @@ let TransactionalModule = TransactionalModule_1 = class TransactionalModule exte
33
41
  transactional_metadata_explorer_1.TransactionalMetadataExplorer,
34
42
  transactional_metadata_accessor_1.TransactionalMetadataAccessor,
35
43
  transactional_feature_decoration_1.TransactionalFeatureDecoration,
44
+ transactional_event_publisher_1.TransactionalEventPublisher,
36
45
  ],
46
+ exports: [transactional_event_publisher_1.TransactionalEventPublisher],
37
47
  });
38
48
  }
39
49
  };
@@ -1 +1 @@
1
- {"version":3,"file":"transactional.module.js","sourceRoot":"","sources":["../src/transactional.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAuD;AAEvD,iDAAiF;AAEjF,2CAA0F;AAE1F,uFAAkF;AAClF,yFAAoF;AACpF,uFAAkF;AAG3E,IAAM,mBAAmB,2BAAzB,MAAM,mBAAoB,SAAQ,2BAAkB;IACzD,MAAM,CAAC,QAAQ,CAAC,MAAqC;QACnD,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE;YAC1B,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,qBAAmB;YAC3B,OAAO,EAAE,CAAC,8BAAqB,CAAC;YAChC,SAAS,EAAE,CAAC,IAAA,sCAA0B,EAAC,MAAM,CAAC,EAAE,+DAA6B,EAAE,+DAA6B,EAAE,iEAA8B,CAAC;SAC9I,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,MAAsC;QACzD,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE;YAC1B,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,qBAAmB;YAC3B,OAAO,EAAE,CAAC,8BAAqB,CAAC;YAChC,SAAS,EAAE;gBACT,IAAA,2CAA+B,EAAC,MAAM,CAAC;gBACvC,+DAA6B;gBAC7B,+DAA6B;gBAC7B,iEAA8B;aAC/B;SACF,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAvBY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,mBAAmB,CAuB/B"}
1
+ {"version":3,"file":"transactional.module.js","sourceRoot":"","sources":["../src/transactional.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAuD;AAEvD,iDAAiF;AAEjF,2CAA0F;AAE1F,uFAAkF;AAClF,yFAAoF;AACpF,uFAAkF;AAClF,mFAA8E;AAGvE,IAAM,mBAAmB,2BAAzB,MAAM,mBAAoB,SAAQ,2BAAkB;IACzD,MAAM,CAAC,QAAQ,CAAC,MAAqC;QACnD,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE;YAC1B,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,qBAAmB;YAC3B,OAAO,EAAE,CAAC,8BAAqB,CAAC;YAChC,SAAS,EAAE;gBACT,IAAA,sCAA0B,EAAC,MAAM,CAAC;gBAClC,+DAA6B;gBAC7B,+DAA6B;gBAC7B,iEAA8B;gBAC9B,2DAA2B;aAC5B;YACD,OAAO,EAAE,CAAC,2DAA2B,CAAC;SACvC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,MAAsC;QACzD,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE;YAC1B,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,qBAAmB;YAC3B,OAAO,EAAE,CAAC,8BAAqB,CAAC;YAChC,SAAS,EAAE;gBACT,IAAA,2CAA+B,EAAC,MAAM,CAAC;gBACvC,+DAA6B;gBAC7B,+DAA6B;gBAC7B,iEAA8B;gBAC9B,2DAA2B;aAC5B;YACD,OAAO,EAAE,CAAC,2DAA2B,CAAC;SACvC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAhCY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,mBAAmB,CAgC/B"}
@@ -1,23 +1,45 @@
1
1
  import { ITransactionAdapter } from "../interfaces";
2
2
  export declare enum TransactionPropagation {
3
- REQUIRED = "REQUIRED",
4
- REQUIRES_NEW = "REQUIRES_NEW",
5
- NESTED = "NESTED"
3
+ REQUIRED = "REQUIRED",
4
+ REQUIRES_NEW = "REQUIRES_NEW",
5
+ NESTED = "NESTED",
6
6
  }
7
7
  export declare enum TransactionIsolation {
8
- READ_UNCOMMITTED = "READ UNCOMMITTED",
9
- READ_COMMITTED = "READ COMMITTED",
10
- REPEATABLE_READ = "REPEATABLE READ",
11
- SERIALIZABLE = "SERIALIZABLE"
8
+ READ_UNCOMMITTED = "READ UNCOMMITTED",
9
+ READ_COMMITTED = "READ COMMITTED",
10
+ REPEATABLE_READ = "REPEATABLE READ",
11
+ SERIALIZABLE = "SERIALIZABLE",
12
12
  }
13
+ export type RollbackOnErrorPredicate = (error: any) => boolean;
14
+ export type RollbackOnError =
15
+ | boolean
16
+ | string
17
+ | (new (...args: any[]) => any)
18
+ | Array<string | (new (...args: any[]) => any)>
19
+ | RollbackOnErrorPredicate;
20
+ export declare enum TransactionPhase {
21
+ BEFORE_COMMIT = "BEFORE_COMMIT",
22
+ AFTER_COMMIT = "AFTER_COMMIT",
23
+ AFTER_ROLLBACK = "AFTER_ROLLBACK",
24
+ AFTER_COMPLETION = "AFTER_COMPLETION",
25
+ }
26
+ export type TransactionalEventListenerOptions = {
27
+ phase?: TransactionPhase;
28
+ fallbackExecution?: boolean;
29
+ };
30
+ export type TransactionalEventOptions = {
31
+ payload?: (result: any) => any;
32
+ };
13
33
  export type TransactionalOptions = {
14
- propagation?: TransactionPropagation;
15
- isolation?: TransactionIsolation;
16
- adapter?: string;
17
- logging?: boolean;
34
+ propagation?: TransactionPropagation;
35
+ isolation?: TransactionIsolation;
36
+ adapter?: string;
37
+ logging?: boolean;
38
+ rollbackOnError?: RollbackOnError;
18
39
  };
19
40
  export type TransactionExecuteOptions = {
20
- propagation: TransactionPropagation;
21
- isolation?: TransactionIsolation;
41
+ propagation: TransactionPropagation;
42
+ isolation?: TransactionIsolation;
43
+ rollbackOnError?: RollbackOnError;
22
44
  };
23
45
  export type TransactionAdapters = Record<string, ITransactionAdapter>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TransactionIsolation = exports.TransactionPropagation = void 0;
3
+ exports.TransactionPhase = exports.TransactionIsolation = exports.TransactionPropagation = void 0;
4
4
  var TransactionPropagation;
5
5
  (function (TransactionPropagation) {
6
6
  TransactionPropagation["REQUIRED"] = "REQUIRED";
@@ -14,4 +14,11 @@ var TransactionIsolation;
14
14
  TransactionIsolation["REPEATABLE_READ"] = "REPEATABLE READ";
15
15
  TransactionIsolation["SERIALIZABLE"] = "SERIALIZABLE";
16
16
  })(TransactionIsolation || (exports.TransactionIsolation = TransactionIsolation = {}));
17
+ var TransactionPhase;
18
+ (function (TransactionPhase) {
19
+ TransactionPhase["BEFORE_COMMIT"] = "BEFORE_COMMIT";
20
+ TransactionPhase["AFTER_COMMIT"] = "AFTER_COMMIT";
21
+ TransactionPhase["AFTER_ROLLBACK"] = "AFTER_ROLLBACK";
22
+ TransactionPhase["AFTER_COMPLETION"] = "AFTER_COMPLETION";
23
+ })(TransactionPhase || (exports.TransactionPhase = TransactionPhase = {}));
17
24
  //# sourceMappingURL=transactional.type.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transactional.type.js","sourceRoot":"","sources":["../../src/types/transactional.type.ts"],"names":[],"mappings":";;;AAEA,IAAY,sBASX;AATD,WAAY,sBAAsB;IAEhC,+CAAqB,CAAA;IAGrB,uDAA6B,CAAA;IAG7B,2CAAiB,CAAA;AACnB,CAAC,EATW,sBAAsB,sCAAtB,sBAAsB,QASjC;AAED,IAAY,oBAKX;AALD,WAAY,oBAAoB;IAC9B,6DAAqC,CAAA;IACrC,yDAAiC,CAAA;IACjC,2DAAmC,CAAA;IACnC,qDAA6B,CAAA;AAC/B,CAAC,EALW,oBAAoB,oCAApB,oBAAoB,QAK/B"}
1
+ {"version":3,"file":"transactional.type.js","sourceRoot":"","sources":["../../src/types/transactional.type.ts"],"names":[],"mappings":";;;AAEA,IAAY,sBASX;AATD,WAAY,sBAAsB;IAEhC,+CAAqB,CAAA;IAGrB,uDAA6B,CAAA;IAG7B,2CAAiB,CAAA;AACnB,CAAC,EATW,sBAAsB,sCAAtB,sBAAsB,QASjC;AAED,IAAY,oBAKX;AALD,WAAY,oBAAoB;IAC9B,6DAAqC,CAAA;IACrC,yDAAiC,CAAA;IACjC,2DAAmC,CAAA;IACnC,qDAA6B,CAAA;AAC/B,CAAC,EALW,oBAAoB,oCAApB,oBAAoB,QAK/B;AAsBD,IAAY,gBAYX;AAZD,WAAY,gBAAgB;IAE1B,mDAA+B,CAAA;IAG/B,iDAA6B,CAAA;IAG7B,qDAAiC,CAAA;IAGjC,yDAAqC,CAAA;AACvC,CAAC,EAZW,gBAAgB,gCAAhB,gBAAgB,QAY3B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nestplatform/transactional",
3
- "version": "1.0.1",
3
+ "version": "1.1.0",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -20,6 +20,6 @@
20
20
  "transactional"
21
21
  ],
22
22
  "author": "Đường Trung Nguyên",
23
- "license": "ISC",
23
+ "license": "MIT",
24
24
  "type": "commonjs"
25
- }
25
+ }