@cqrs-ddd/pipeline-deadletter 0.5.0 → 0.5.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.
@@ -9,21 +9,25 @@ This Commercial License Agreement ("Agreement") is a legal agreement between You
9
9
  Upon acceptance of this Agreement and compliance with the Payment Terms in Section 2, the Licensor grants You a non-exclusive, worldwide, non-transferable license to use, modify, integrate, and distribute the Software in commercial applications WITHOUT the copyleft obligations of the GNU Affero General Public License v3 (AGPLv3). Under this Agreement, You are NOT required to open-source Your proprietary code that integrates with the Software.
10
10
 
11
11
  2. PAYMENT TERMS AND REVENUE TIERS
12
- This license requires an annual fee based on Your (or Your organization's) total gross global revenue for the most recently completed fiscal year.
12
+ This license requires an annual fee based on Your (or Your organization's) total gross global revenue for the most recently completed fiscal year.
13
13
 
14
- The annual fee is calculated using the following scaled brackets:
14
+ The annual fee is calculated using the following marginal brackets. Each rate applies only to the portion of gross revenue that falls within its bracket, and the annual fee is the sum of the amounts for all brackets:
15
15
 
16
- a) Tier 1: Gross revenue up to $500,000 USD
17
- Fee: $0 (Free Commercial Use)
16
+ a) Tier 1: The portion of gross revenue up to $500,000 USD
17
+ Rate: 0% (Free Commercial Use). If gross revenue does not exceed $500,000 USD, the fee is $0.
18
18
 
19
- b) Tier 2: Gross revenue between $500,001 and $10,000,000 USD
20
- Fee: 0.1% of total gross revenue.
19
+ b) Tier 2: The portion of gross revenue above $500,000 USD and up to $10,000,000 USD
20
+ Rate: 0.1% of that portion.
21
21
 
22
- c) Tier 3: Gross revenue between $10,000,001 and $50,000,000 USD
23
- Fee: 0.05% of total gross revenue.
22
+ c) Tier 3: The portion of gross revenue above $10,000,000 USD and up to $50,000,000 USD
23
+ Rate: 0.05% of that portion.
24
24
 
25
- d) Tier 4: Gross revenue exceeding $50,000,000 USD
26
- Fee: 0.01% of total gross revenue, up to a maximum hard cap of $50,000 USD per year.
25
+ d) Tier 4: The portion of gross revenue above $50,000,000 USD
26
+ Rate: 0.01% of that portion.
27
+
28
+ The total annual fee never exceeds a maximum hard cap of $50,000 USD per year.
29
+
30
+ Example: for gross revenue of $20,000,000 USD, the annual fee is 0.1% of $9,500,000 USD ($9,500) plus 0.05% of $10,000,000 USD ($5,000), a total of $14,500 USD.
27
31
 
28
32
  3. REPORTING AND REMITTANCE
29
33
  - Fees are calculated annually and must be remitted to the Licensor within ninety (90) days following the close of Your fiscal year.
@@ -48,6 +48,8 @@ export declare class DeadLetterBehavior implements IPipelineBehavior {
48
48
  private readonly defaults;
49
49
  constructor(transport: DeadLetterTransport, defaults?: DeadLetterBehaviorOptions, logger?: PipelineLogger);
50
50
  handle(context: IPipelineContext, next: NextDelegate): Promise<unknown>;
51
+ /** Captures the failure when its request kind and error are configured for capture. */
52
+ private captureIfConfigured;
51
53
  /** Forwards the failed request; returns the record id once the transport has it. */
52
54
  private capture;
53
55
  /** Whether this request kind and error are configured to be captured. */
@@ -1 +1 @@
1
- {"version":3,"file":"dead-letter.behavior.d.ts","sourceRoot":"","sources":["../src/dead-letter.behavior.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,0BAA0B,EAG1B,KAAK,iBAAiB,EACtB,KAAK,cAAc,EAEpB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+CAA+C,CAAC;AAC/F,OAAO,KAAK,EAEV,mBAAmB,EACpB,MAAM,iDAAiD,CAAC;AASzD;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,eAA6B,CAAC;AAE3D;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,iBAAiB,CAAC,OAAO,CACK,CAAC;AAEpE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,kBAAmB,YAAW,iBAAiB;IA0BxD,OAAO,CAAC,QAAQ,CAAC,SAAS;IAzB5B,MAAM,CAAC,QAAQ,CAAC,CAAC,0BAA0B,CAAC,EAAE,yBAAyB,CAmBrE;IAEF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4B;IAErD,YACmB,SAAS,EAAE,mBAAmB,EAC/C,QAAQ,CAAC,EAAE,yBAAyB,EACpC,MAAM,CAAC,EAAE,cAAc,EAUxB;IAEK,MAAM,CACV,OAAO,EAAE,gBAAgB,EACzB,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,OAAO,CAAC,CAuClB;IAED,oFAAoF;YACtE,OAAO;IAyBrB,yEAAyE;IACzE,OAAO,CAAC,aAAa;IAiBrB,gEAAgE;IAChE,OAAO,CAAC,cAAc;CAoCvB"}
1
+ {"version":3,"file":"dead-letter.behavior.d.ts","sourceRoot":"","sources":["../src/dead-letter.behavior.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,0BAA0B,EAG1B,KAAK,iBAAiB,EACtB,KAAK,cAAc,EAEpB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+CAA+C,CAAC;AAC/F,OAAO,KAAK,EAEV,mBAAmB,EACpB,MAAM,iDAAiD,CAAC;AASzD;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,eAA6B,CAAC;AAE3D;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,iBAAiB,CAAC,OAAO,CACK,CAAC;AAEpE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,kBAAmB,YAAW,iBAAiB;IA0BxD,OAAO,CAAC,QAAQ,CAAC,SAAS;IAzB5B,MAAM,CAAC,QAAQ,CAAC,CAAC,0BAA0B,CAAC,EAAE,yBAAyB,CAmBrE;IAEF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4B;IAErD,YACmB,SAAS,EAAE,mBAAmB,EAC/C,QAAQ,CAAC,EAAE,yBAAyB,EACpC,MAAM,CAAC,EAAE,cAAc,EAUxB;IAEK,MAAM,CACV,OAAO,EAAE,gBAAgB,EACzB,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,OAAO,CAAC,CA6BlB;IAED,uFAAuF;YACzE,mBAAmB;IAajC,oFAAoF;YACtE,OAAO;IAyBrB,yEAAyE;IACzE,OAAO,CAAC,aAAa;IAkBrB,gEAAgE;IAChE,OAAO,CAAC,cAAc;CAoCvB"}
@@ -86,12 +86,7 @@ export class DeadLetterBehavior {
86
86
  if (currentRedriveId() !== undefined)
87
87
  throw error;
88
88
  const options = this.resolveOptions(context);
89
- const shouldCapture = this.shouldCapture(context, options, error);
90
- let recordId;
91
- if (shouldCapture) {
92
- recordId = await this.capture(context, error, options);
93
- setPipelineItem(context, DEAD_LETTER_ITEM_TOKEN, recordId !== undefined);
94
- }
89
+ const recordId = await this.captureIfConfigured(context, error, options);
95
90
  // Excluding a request kind or ignoring an error means this behavior is inactive
96
91
  // for that failure; it must not silently swallow an error it did not capture.
97
92
  // Only an event's error is ever swallowed: a command or query has a caller.
@@ -105,6 +100,14 @@ export class DeadLetterBehavior {
105
100
  return undefined;
106
101
  }
107
102
  }
103
+ /** Captures the failure when its request kind and error are configured for capture. */
104
+ async captureIfConfigured(context, error, options) {
105
+ if (!this.shouldCapture(context, options, error))
106
+ return undefined;
107
+ const recordId = await this.capture(context, error, options);
108
+ setPipelineItem(context, DEAD_LETTER_ITEM_TOKEN, recordId !== undefined);
109
+ return recordId;
110
+ }
108
111
  /** Forwards the failed request; returns the record id once the transport has it. */
109
112
  async capture(context, error, options) {
110
113
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"dead-letter.behavior.js","sourceRoot":"","sources":["../src/dead-letter.behavior.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dead-letter.behavior.js","sourceRoot":"","sources":["../src/dead-letter.behavior.ts"],"names":[],"mappings":"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"}
@@ -65,6 +65,12 @@ export declare class DeadLetterRedriver {
65
65
  * @throws The handling error when the redrive fails; the attempt is counted.
66
66
  */
67
67
  redrive(id: string): Promise<DeadLetterRedriveResult>;
68
+ /**
69
+ * The request class and the dispatch that redrive `record`.
70
+ *
71
+ * @throws DeadLetterRedriveError when the record cannot be redriven.
72
+ */
73
+ private targetOf;
68
74
  /** Closes the dead letter `id` without replaying it. */
69
75
  resolve(id: string): Promise<void>;
70
76
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dead-letter.redriver.d.ts","sourceRoot":"","sources":["../src/dead-letter.redriver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,KAAK,EACV,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EAChB,MAAM,iDAAiD,CAAC;AAEzD;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAC/B,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,gBAAgB,KACrB,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;AAEhC,6CAA6C;AAC7C,MAAM,WAAW,yBAAyB;IACxC;;;OAGG;IACH,YAAY,EAAE,SAAS,WAAW,EAAE,CAAC;IACrC,2DAA2D;IAC3D,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,CAAC,CAAC;IACrE;;;;;OAKG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,KAAK,OAAO,CAAC;CAC3E;AAED,kEAAkE;AAClE,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,kCAAkC;IAClC,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,kBAAkB;IAI3B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAJ1B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmC;IAEzD,YACmB,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,yBAAyB,EAGpD;IAED;;;;;OAKG;IACG,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CA+C1D;IAED,wDAAwD;IACxD,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjC;CACF"}
1
+ {"version":3,"file":"dead-letter.redriver.d.ts","sourceRoot":"","sources":["../src/dead-letter.redriver.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,KAAK,EACV,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EAChB,MAAM,iDAAiD,CAAC;AAEzD;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAC/B,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,gBAAgB,KACrB,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;AAEhC,6CAA6C;AAC7C,MAAM,WAAW,yBAAyB;IACxC;;;OAGG;IACH,YAAY,EAAE,SAAS,WAAW,EAAE,CAAC;IACrC,2DAA2D;IAC3D,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,CAAC,CAAC;IACrE;;;;;OAKG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,gBAAgB,EAAE,WAAW,EAAE,WAAW,KAAK,OAAO,CAAC;CAC3E;AAED,kEAAkE;AAClE,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,kCAAkC;IAClC,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,kBAAkB;IAI3B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAJ1B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAmC;IAEzD,YACmB,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,yBAAyB,EAGpD;IAED;;;;;OAKG;IACG,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CA0B1D;IAED;;;;OAIG;IACH,OAAO,CAAC,QAAQ;IA8BhB,wDAAwD;IACxD,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjC;CACF"}
@@ -42,20 +42,7 @@ export class DeadLetterRedriver {
42
42
  const record = await this.store.get(id);
43
43
  if (!record)
44
44
  throw new DeadLetterRedriveError(id, 'no such dead letter');
45
- if (record.status === 'resolved') {
46
- throw new DeadLetterRedriveError(id, 'it is already resolved');
47
- }
48
- const requestType = this.types.get(record.requestName);
49
- if (!requestType) {
50
- throw new DeadLetterRedriveError(id, `request type ${record.requestName} is not registered in requestTypes`);
51
- }
52
- const dispatch = this.options.dispatch[record.requestKind];
53
- if (!dispatch) {
54
- throw new DeadLetterRedriveError(id, `no dispatch is configured for ${record.requestKind} requests`);
55
- }
56
- if (record.payloadRedacted && !this.options.rebuild) {
57
- throw new DeadLetterRedriveError(id, 'its payload was redacted; configure rebuild to restore the redacted values');
58
- }
45
+ const { requestType, dispatch } = this.targetOf(id, record);
59
46
  const request = this.options.rebuild
60
47
  ? this.options.rebuild(record, requestType)
61
48
  : Object.assign(Object.create(requestType.prototype), record.payload);
@@ -73,6 +60,28 @@ export class DeadLetterRedriver {
73
60
  await this.store.markResolved(id);
74
61
  return { id, response };
75
62
  }
63
+ /**
64
+ * The request class and the dispatch that redrive `record`.
65
+ *
66
+ * @throws DeadLetterRedriveError when the record cannot be redriven.
67
+ */
68
+ targetOf(id, record) {
69
+ if (record.status === 'resolved') {
70
+ throw new DeadLetterRedriveError(id, 'it is already resolved');
71
+ }
72
+ const requestType = this.types.get(record.requestName);
73
+ if (!requestType) {
74
+ throw new DeadLetterRedriveError(id, `request type ${record.requestName} is not registered in requestTypes`);
75
+ }
76
+ const dispatch = this.options.dispatch[record.requestKind];
77
+ if (!dispatch) {
78
+ throw new DeadLetterRedriveError(id, `no dispatch is configured for ${record.requestKind} requests`);
79
+ }
80
+ if (record.payloadRedacted && !this.options.rebuild) {
81
+ throw new DeadLetterRedriveError(id, 'its payload was redacted; configure rebuild to restore the redacted values');
82
+ }
83
+ return { requestType, dispatch };
84
+ }
76
85
  /** Closes the dead letter `id` without replaying it. */
77
86
  resolve(id) {
78
87
  return this.store.markResolved(id);
@@ -1 +1 @@
1
- {"version":3,"file":"dead-letter.redriver.js","sourceRoot":"","sources":["../src/dead-letter.redriver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dead-letter.redriver.js","sourceRoot":"","sources":["../src/dead-letter.redriver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"rabbitmq.transport.d.ts","sourceRoot":"","sources":["../../src/transports/rabbitmq.transport.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,kDAAkD,CAAC;AAE1D;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC,OAAO,CACL,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC;IACX,gFAAgF;IAChF,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,oEAAoE;IACpE,IAAI,CAAC,CACH,KAAK,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,EAClC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,GAChC,OAAO,CAAC;IACX,uEAAuE;IACvE,cAAc,CAAC,CACb,KAAK,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,EAClC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,GAChC,OAAO,CAAC;CACZ;AAED,uDAAuD;AACvD,MAAM,WAAW,kCAAkC;IACjD;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sFAAsF;IACtF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,2BAA4B,YAAW,mBAAmB;IAMnE,OAAO,CAAC,QAAQ,CAAC,OAAO;IAL1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0B;IAEzD,YACmB,OAAO,EAAE,0BAA0B,EACpD,OAAO,GAAE,kCAAuC,EAUjD;IAEK,IAAI,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyBlD;IAED,8EAA8E;YAChE,YAAY;CA2C3B"}
1
+ {"version":3,"file":"rabbitmq.transport.d.ts","sourceRoot":"","sources":["../../src/transports/rabbitmq.transport.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,kDAAkD,CAAC;AAE1D;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC,OAAO,CACL,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC;IACX,gFAAgF;IAChF,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,oEAAoE;IACpE,IAAI,CAAC,CACH,KAAK,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,EAClC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,GAChC,OAAO,CAAC;IACX,uEAAuE;IACvE,cAAc,CAAC,CACb,KAAK,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,EAClC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,GAChC,OAAO,CAAC;CACZ;AAED,uDAAuD;AACvD,MAAM,WAAW,kCAAkC;IACjD;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sFAAsF;IACtF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,2BAA4B,YAAW,mBAAmB;IAMnE,OAAO,CAAC,QAAQ,CAAC,OAAO;IAL1B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0B;IAEzD,YACmB,OAAO,EAAE,0BAA0B,EACpD,OAAO,GAAE,kCAAuC,EAUjD;IAEK,IAAI,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyBlD;IAED,8EAA8E;YAChE,YAAY;CAwC3B"}
@@ -54,16 +54,13 @@ export class RabbitMqDeadLetterTransport {
54
54
  }
55
55
  await new Promise((resolve, reject) => {
56
56
  let settled = false;
57
- const cleanup = () => {
58
- removeListener.call(this.channel, 'drain', onDrain);
59
- removeListener.call(this.channel, 'close', onClose);
60
- removeListener.call(this.channel, 'error', onError);
61
- };
62
57
  const finish = (error) => {
63
58
  if (settled)
64
59
  return;
65
60
  settled = true;
66
- cleanup();
61
+ removeListener.call(this.channel, 'drain', onDrain);
62
+ removeListener.call(this.channel, 'close', onClose);
63
+ removeListener.call(this.channel, 'error', onError);
67
64
  if (error)
68
65
  reject(error);
69
66
  else
@@ -1 +1 @@
1
- {"version":3,"file":"rabbitmq.transport.js","sourceRoot":"","sources":["../../src/transports/rabbitmq.transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rabbitmq.transport.js","sourceRoot":"","sources":["../../src/transports/rabbitmq.transport.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cqrs-ddd/pipeline-deadletter",
3
- "version": "0.5.0",
3
+ "version": "0.5.1",
4
4
  "description": "Dead letters for @cqrs-ddd/pipeline: captures failed commands and events with their context to a queue or table, and redrives them",
5
5
  "author": "Aristotelis",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -48,16 +48,16 @@
48
48
  "access": "public"
49
49
  },
50
50
  "peerDependencies": {
51
- "@cqrs-ddd/pipeline": "^0.5.0"
51
+ "@cqrs-ddd/pipeline": "^0.5.1"
52
52
  },
53
53
  "devDependencies": {
54
- "@vitest/coverage-v8": "^5.0.3",
55
- "vitest": "^5.0.3",
56
- "@cqrs-ddd/pipeline": "0.5.0"
54
+ "@vitest/coverage-v8": "^5.0.5",
55
+ "vitest": "^5.0.5",
56
+ "@cqrs-ddd/pipeline": "0.5.1"
57
57
  },
58
58
  "dependencies": {
59
- "@cqrs-ddd/uuidv7": "^0.5.0",
60
- "@cqrs-ddd/safe-stringify": "^0.5.0"
59
+ "@cqrs-ddd/safe-stringify": "^0.5.1",
60
+ "@cqrs-ddd/uuidv7": "^0.5.1"
61
61
  },
62
62
  "scripts": {
63
63
  "build": "tsc -p tsconfig.build.json",