@horizon-republic/nestjs-jetstream 2.1.1 → 2.2.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.
package/README.md CHANGED
@@ -252,6 +252,9 @@ interface JetstreamModuleOptions {
252
252
  /** Transport lifecycle hook handlers. Unset hooks fall back to NestJS Logger. */
253
253
  hooks?: Partial<TransportHooks>;
254
254
 
255
+ /** Async callback for dead letter handling. See Dead Letter Queue section below. */
256
+ onDeadLetter?: (info: DeadLetterInfo) => Promise<void>;
257
+
255
258
  /**
256
259
  * Graceful shutdown timeout in ms.
257
260
  * @default 10_000
@@ -610,6 +613,53 @@ JetstreamModule.forRoot({
610
613
  | `messageRouted` | `(subject: string, kind: 'rpc' \| 'event')` | `Logger.debug` |
611
614
  | `shutdownStart` | `()` | `Logger.log` |
612
615
  | `shutdownComplete` | `()` | `Logger.log` |
616
+ | `deadLetter` | `(info: DeadLetterInfo)` | `Logger.warn` |
617
+
618
+ ### Dead Letter Queue (DLQ)
619
+
620
+ When an event handler fails on every delivery attempt (`max_deliver`), the message becomes a "dead letter." By default, NATS terminates it silently. Configure `onDeadLetter` to intercept these messages:
621
+
622
+ ```typescript
623
+ JetstreamModule.forRoot({
624
+ name: 'my-service',
625
+ servers: ['nats://localhost:4222'],
626
+ onDeadLetter: async (info) => {
627
+ // Persist to your DLQ store (database, S3, another queue, etc.)
628
+ await dlqRepository.save({
629
+ subject: info.subject,
630
+ data: info.data,
631
+ error: String(info.error),
632
+ deliveryCount: info.deliveryCount,
633
+ stream: info.stream,
634
+ timestamp: info.timestamp,
635
+ });
636
+ },
637
+ });
638
+ ```
639
+
640
+ **Behavior:**
641
+ - Hook is awaited before `msg.term()` — if it succeeds, the message is terminated
642
+ - If the hook throws, the message is `nak()`'d for retry (NATS redelivers it)
643
+ - `TransportEvent.DeadLetter` is emitted for observability regardless of the hook
644
+ - Applies only to events (workqueue + broadcast), not RPC
645
+
646
+ **With dependency injection (`forRootAsync`):**
647
+
648
+ ```typescript
649
+ import { JETSTREAM_CONNECTION } from '@horizon-republic/nestjs-jetstream';
650
+
651
+ JetstreamModule.forRootAsync({
652
+ name: 'my-service',
653
+ imports: [DlqModule],
654
+ inject: [DlqService, JETSTREAM_CONNECTION],
655
+ useFactory: (dlqService: DlqService, connection: ConnectionProvider) => ({
656
+ servers: ['nats://localhost:4222'],
657
+ onDeadLetter: async (info) => {
658
+ await dlqService.persist(info);
659
+ },
660
+ }),
661
+ });
662
+ ```
613
663
 
614
664
  ## Health Checks
615
665
 
@@ -646,9 +696,9 @@ const status = await this.jetstream.check();
646
696
  // { connected: true, server: 'nats://localhost:4222', latency: 2 }
647
697
  ```
648
698
 
649
- | Method | Returns | Throws |
650
- |--------|---------|--------|
651
- | `check()` | `JetstreamHealthStatus` | Never |
699
+ | Method | Returns | Throws |
700
+ |-------------------|------------------------------------|------------------------------------|
701
+ | `check()` | `JetstreamHealthStatus` | Never |
652
702
  | `isHealthy(key?)` | `{ [key]: { status: 'up', ... } }` | On unhealthy (Terminus convention) |
653
703
 
654
704
  ## Graceful Shutdown
@@ -891,6 +941,7 @@ nanos
891
941
 
892
942
  // Types
893
943
  Codec
944
+ DeadLetterInfo
894
945
  JetstreamModuleOptions
895
946
  JetstreamModuleAsyncOptions
896
947
  JetstreamFeatureOptions
@@ -30,6 +30,8 @@ export declare class JetstreamClient extends ClientProxy {
30
30
  private readonly pendingMessages;
31
31
  /** Pending JetStream-mode RPC timeouts, keyed by correlation ID. */
32
32
  private readonly pendingTimeouts;
33
+ /** Subscription to connection status events for disconnect handling. */
34
+ private statusSubscription;
33
35
  constructor(rootOptions: JetstreamModuleOptions, targetServiceName: string, connection: ConnectionProvider, codec: Codec, eventBus: EventBus);
34
36
  /** Establish connection. Called automatically by NestJS on first use. */
35
37
  connect(): Promise<NatsConnection>;
@@ -55,6 +57,8 @@ export declare class JetstreamClient extends ClientProxy {
55
57
  private publishCoreRpc;
56
58
  /** JetStream mode: publish to stream + wait for inbox response. */
57
59
  private publishJetStreamRpc;
60
+ /** Fail-fast all pending JetStream RPC callbacks on connection loss. */
61
+ private handleDisconnect;
58
62
  /** Setup shared inbox subscription for JetStream RPC responses. */
59
63
  private setupInbox;
60
64
  /** Route an inbox reply to the matching pending callback. */
@@ -1 +1 @@
1
- {"version":3,"file":"jetstream.client.d.ts","sourceRoot":"","sources":["../../src/client/jetstream.client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAKL,cAAc,EAEf,MAAM,MAAM,CAAC;AAEd,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,OAAO,KAAK,EACV,KAAK,EAEL,sBAAsB,EAEvB,MAAM,eAAe,CAAC;AAYvB;;;;;;;;;;;GAWG;AACH,qBAAa,eAAgB,SAAQ,WAAW;IAiB5C,OAAO,CAAC,QAAQ,CAAC,WAAW;IAE5B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IApB3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkC;IAEzD,yDAAyD;IACzD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IAEpC,qDAAqD;IACrD,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,iBAAiB,CAA6B;IAEtD,qEAAqE;IACrE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA+C;IAE/E,oEAAoE;IACpE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAoD;gBAGjE,WAAW,EAAE,sBAAsB,EACpD,iBAAiB,EAAE,MAAM,EACR,UAAU,EAAE,kBAAkB,EAC9B,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ;IAMrC,yEAAyE;IAC5D,OAAO,IAAI,OAAO,CAAC,cAAc,CAAC;IAW/C,0BAA0B;IACb,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAYnC,gDAAgD;IAChC,MAAM,CAAC,CAAC,GAAG,cAAc,KAAK,CAAC;IAI/C;;;;;OAKG;cACa,aAAa,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC;IAkB1E;;;;;OAKG;IACH,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,GAAG,MAAM,IAAI;IA0CrF,4CAA4C;YAC9B,cAAc;IAyC5B,mEAAmE;YACrD,mBAAmB;IAqDjC,mEAAmE;IACnE,OAAO,CAAC,UAAU;IAiBlB,6DAA6D;IAC7D,OAAO,CAAC,eAAe;IAyCvB,oDAAoD;IACpD,OAAO,CAAC,iBAAiB;IAWzB,wEAAwE;IACxE,OAAO,CAAC,YAAY;IA6BpB,kFAAkF;IAClF,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,aAAa;CAStB"}
1
+ {"version":3,"file":"jetstream.client.d.ts","sourceRoot":"","sources":["../../src/client/jetstream.client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAML,cAAc,EAEf,MAAM,MAAM,CAAC;AAGd,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,OAAO,KAAK,EACV,KAAK,EAEL,sBAAsB,EAEvB,MAAM,eAAe,CAAC;AAYvB;;;;;;;;;;;GAWG;AACH,qBAAa,eAAgB,SAAQ,WAAW;IAoB5C,OAAO,CAAC,QAAQ,CAAC,WAAW;IAE5B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAvB3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkC;IAEzD,yDAAyD;IACzD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IAEpC,qDAAqD;IACrD,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,iBAAiB,CAA6B;IAEtD,qEAAqE;IACrE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA+C;IAE/E,oEAAoE;IACpE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAoD;IAEpF,wEAAwE;IACxE,OAAO,CAAC,kBAAkB,CAA+B;gBAGtC,WAAW,EAAE,sBAAsB,EACpD,iBAAiB,EAAE,MAAM,EACR,UAAU,EAAE,kBAAkB,EAC9B,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ;IAMrC,yEAAyE;IAC5D,OAAO,IAAI,OAAO,CAAC,cAAc,CAAC;IAkB/C,0BAA0B;IACb,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAqBnC,gDAAgD;IAChC,MAAM,CAAC,CAAC,GAAG,cAAc,KAAK,CAAC;IAI/C;;;;;OAKG;cACa,aAAa,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC;IAkB1E;;;;;OAKG;IACH,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,GAAG,MAAM,IAAI;IA0CrF,4CAA4C;YAC9B,cAAc;IAmC5B,mEAAmE;YACrD,mBAAmB;IAwDjC,wEAAwE;IACxE,OAAO,CAAC,gBAAgB;IAsBxB,mEAAmE;IACnE,OAAO,CAAC,UAAU;IAiBlB,6DAA6D;IAC7D,OAAO,CAAC,eAAe;IAyCvB,oDAAoD;IACpD,OAAO,CAAC,iBAAiB;IAWzB,wEAAwE;IACxE,OAAO,CAAC,YAAY;IA6BpB,kFAAkF;IAClF,OAAO,CAAC,iBAAiB;IAYzB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,aAAa;CAStB"}
@@ -34,6 +34,8 @@ class JetstreamClient extends microservices_1.ClientProxy {
34
34
  this.pendingMessages = new Map();
35
35
  /** Pending JetStream-mode RPC timeouts, keyed by correlation ID. */
36
36
  this.pendingTimeouts = new Map();
37
+ /** Subscription to connection status events for disconnect handling. */
38
+ this.statusSubscription = null;
37
39
  this.targetName = targetServiceName;
38
40
  }
39
41
  /** Establish connection. Called automatically by NestJS on first use. */
@@ -43,17 +45,30 @@ class JetstreamClient extends microservices_1.ClientProxy {
43
45
  if (this.isJetStreamRpcMode() && !this.inboxSubscription) {
44
46
  this.setupInbox(nc);
45
47
  }
48
+ // Subscribe to disconnect events (once)
49
+ this.statusSubscription ??= this.connection.status$.subscribe((status) => {
50
+ if (status.type === nats_1.Events.Disconnect) {
51
+ this.handleDisconnect();
52
+ }
53
+ });
46
54
  return nc;
47
55
  }
48
56
  /** Clean up resources. */
49
57
  async close() {
50
- this.inboxSubscription?.unsubscribe();
51
- this.inboxSubscription = null;
58
+ this.statusSubscription?.unsubscribe();
59
+ this.statusSubscription = null;
60
+ // Reject all pending JetStream RPC callbacks before clearing
61
+ const error = new Error('Client closed');
62
+ for (const callback of this.pendingMessages.values()) {
63
+ callback({ err: error, response: null, isDisposed: true });
64
+ }
52
65
  for (const timeoutId of this.pendingTimeouts.values()) {
53
66
  clearTimeout(timeoutId);
54
67
  }
55
- this.pendingTimeouts.clear();
56
68
  this.pendingMessages.clear();
69
+ this.pendingTimeouts.clear();
70
+ this.inboxSubscription?.unsubscribe();
71
+ this.inboxSubscription = null;
57
72
  }
58
73
  /** Direct access to the raw NATS connection. */
59
74
  unwrap() {
@@ -89,7 +104,7 @@ class JetstreamClient extends microservices_1.ClientProxy {
89
104
  const { data, hdrs, timeout } = this.extractRecordData(packet.data);
90
105
  const onUnhandled = (err) => {
91
106
  this.logger.error('Unhandled publish error:', err);
92
- callback({ err: 'Internal transport error', response: null, isDisposed: true });
107
+ callback({ err: new Error('Internal transport error'), response: null, isDisposed: true });
93
108
  };
94
109
  // Track correlation ID for cleanup in JetStream mode
95
110
  let jetStreamCorrelationId = null;
@@ -133,13 +148,10 @@ class JetstreamClient extends microservices_1.ClientProxy {
133
148
  }
134
149
  }
135
150
  catch (err) {
151
+ const error = err instanceof Error ? err : new Error('Unknown error');
136
152
  this.logger.error(`Core RPC error (${subject}):`, err);
137
- this.eventBus.emit(interfaces_1.TransportEvent.Error, err instanceof Error ? err : new Error(String(err)), 'client-rpc');
138
- callback({
139
- err: err instanceof Error ? err.message : 'Unknown error',
140
- response: null,
141
- isDisposed: true,
142
- });
153
+ this.eventBus.emit(interfaces_1.TransportEvent.Error, error, 'client-rpc');
154
+ callback({ err: error, response: null, isDisposed: true });
143
155
  }
144
156
  }
145
157
  /** JetStream mode: publish to stream + wait for inbox response. */
@@ -148,11 +160,13 @@ class JetstreamClient extends microservices_1.ClientProxy {
148
160
  const effectiveTimeout = timeout ?? this.getRpcTimeout();
149
161
  this.pendingMessages.set(correlationId, callback);
150
162
  const timeoutId = setTimeout(() => {
163
+ if (!this.pendingMessages.has(correlationId))
164
+ return;
151
165
  this.pendingTimeouts.delete(correlationId);
152
166
  this.pendingMessages.delete(correlationId);
153
167
  this.logger.error(`JetStream RPC timeout (${effectiveTimeout}ms): ${subject}`);
154
168
  this.eventBus.emit(interfaces_1.TransportEvent.RpcTimeout, subject, correlationId);
155
- callback({ err: 'RPC timeout', response: null, isDisposed: true });
169
+ callback({ err: new Error('RPC timeout'), response: null, isDisposed: true });
156
170
  }, effectiveTimeout);
157
171
  this.pendingTimeouts.set(correlationId, timeoutId);
158
172
  try {
@@ -173,14 +187,31 @@ class JetstreamClient extends microservices_1.ClientProxy {
173
187
  catch (err) {
174
188
  clearTimeout(timeoutId);
175
189
  this.pendingTimeouts.delete(correlationId);
176
- this.logger.error(`JetStream RPC publish error (${subject}):`, err);
177
- callback({
178
- err: err instanceof Error ? err.message : 'Unknown error',
179
- response: null,
180
- isDisposed: true,
181
- });
190
+ if (!this.pendingMessages.has(correlationId))
191
+ return;
182
192
  this.pendingMessages.delete(correlationId);
193
+ const error = err instanceof Error ? err : new Error('Unknown error');
194
+ this.logger.error(`JetStream RPC publish error (${subject}):`, err);
195
+ callback({ err: error, response: null, isDisposed: true });
196
+ }
197
+ }
198
+ /** Fail-fast all pending JetStream RPC callbacks on connection loss. */
199
+ handleDisconnect() {
200
+ const error = new Error('Connection lost');
201
+ // Reject all pending callbacks
202
+ for (const callback of this.pendingMessages.values()) {
203
+ callback({ err: error, response: null, isDisposed: true });
204
+ }
205
+ // Clear timeouts
206
+ for (const timeoutId of this.pendingTimeouts.values()) {
207
+ clearTimeout(timeoutId);
183
208
  }
209
+ this.pendingMessages.clear();
210
+ this.pendingTimeouts.clear();
211
+ // Reset inbox — will be recreated on next connect()
212
+ this.inboxSubscription?.unsubscribe();
213
+ this.inboxSubscription = null;
214
+ this.inbox = null;
184
215
  }
185
216
  /** Setup shared inbox subscription for JetStream RPC responses. */
186
217
  setupInbox(nc) {
@@ -224,7 +255,7 @@ class JetstreamClient extends microservices_1.ClientProxy {
224
255
  }
225
256
  catch (err) {
226
257
  callback({
227
- err: err instanceof Error ? err.message : 'Decode error',
258
+ err: err instanceof Error ? err : new Error('Decode error'),
228
259
  response: null,
229
260
  isDisposed: true,
230
261
  });
@@ -1 +1 @@
1
- {"version":3,"file":"jetstream.client.js","sourceRoot":"","sources":["../../src/client/jetstream.client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jetstream.client.js","sourceRoot":"","sources":["../../src/client/jetstream.client.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus.d.ts","sourceRoot":"","sources":["../../src/hooks/event-bus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAGxC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA0B;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAEb,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;IAKlE,4EAA4E;IACrE,IAAI,CAAC,CAAC,SAAS,MAAM,cAAc,EACxC,KAAK,EAAE,CAAC,EACR,GAAG,IAAI,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GACrC,IAAI;IAkBP,yDAAyD;IACzD,OAAO,CAAC,cAAc;CA4BvB"}
1
+ {"version":3,"file":"event-bus.d.ts","sourceRoot":"","sources":["../../src/hooks/event-bus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAGxC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA0B;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAEb,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;IAKlE,4EAA4E;IACrE,IAAI,CAAC,CAAC,SAAS,MAAM,cAAc,EACxC,KAAK,EAAE,CAAC,EACR,GAAG,IAAI,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GACrC,IAAI;IAkBP,yDAAyD;IACzD,OAAO,CAAC,cAAc;CAmCvB"}
@@ -67,6 +67,11 @@ class EventBus {
67
67
  case interfaces_1.TransportEvent.ShutdownComplete:
68
68
  this.logger.log('Graceful shutdown complete');
69
69
  break;
70
+ case interfaces_1.TransportEvent.DeadLetter: {
71
+ const info = args[0];
72
+ this.logger.warn(`Dead letter: ${info?.subject ?? 'unknown'}`);
73
+ break;
74
+ }
70
75
  }
71
76
  }
72
77
  }
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus.js","sourceRoot":"","sources":["../../src/hooks/event-bus.ts"],"names":[],"mappings":";;;AAEA,8CAA+C;AAG/C;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAa,QAAQ;IAInB,YAAmB,MAAc,EAAE,KAA+B;QAChE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,4EAA4E;IACrE,IAAI,CACT,KAAQ,EACR,GAAG,IAAmC;QAEtC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAE/B,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC;gBACF,IAAkC,CAAC,GAAG,IAAI,CAAC,CAAC;YAC/C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,SAAS,KAAK,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAC9E,CAAC;YACJ,CAAC;YAED,OAAO;QACT,CAAC;QAED,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,yDAAyD;IACjD,cAAc,CAAC,KAA2B,EAAE,IAAe;QACjE,QAAQ,KAAK,EAAE,CAAC;YACd,KAAK,2BAAc,CAAC,OAAO;gBACzB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,sBAAsB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACjD,MAAM;YACR,KAAK,2BAAc,CAAC,UAAU;gBAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;gBACzC,MAAM;YACR,KAAK,2BAAc,CAAC,SAAS;gBAC3B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wBAAwB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACnD,MAAM;YACR,KAAK,2BAAc,CAAC,KAAK;gBACvB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBAChE,MAAM;YACR,KAAK,2BAAc,CAAC,UAAU;gBAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC9D,MAAM;YACR,KAAK,2BAAc,CAAC,aAAa;gBAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC7D,MAAM;YACR,KAAK,2BAAc,CAAC,aAAa;gBAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;gBAC/C,MAAM;YACR,KAAK,2BAAc,CAAC,gBAAgB;gBAClC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;gBAC9C,MAAM;QACV,CAAC;IACH,CAAC;CACF;AA5DD,4BA4DC"}
1
+ {"version":3,"file":"event-bus.js","sourceRoot":"","sources":["../../src/hooks/event-bus.ts"],"names":[],"mappings":";;;AAEA,8CAA+C;AAG/C;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAa,QAAQ;IAInB,YAAmB,MAAc,EAAE,KAA+B;QAChE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,4EAA4E;IACrE,IAAI,CACT,KAAQ,EACR,GAAG,IAAmC;QAEtC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAE/B,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC;gBACF,IAAkC,CAAC,GAAG,IAAI,CAAC,CAAC;YAC/C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,SAAS,KAAK,qBAAqB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAC9E,CAAC;YACJ,CAAC;YAED,OAAO;QACT,CAAC;QAED,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,yDAAyD;IACjD,cAAc,CAAC,KAA2B,EAAE,IAAe;QACjE,QAAQ,KAAK,EAAE,CAAC;YACd,KAAK,2BAAc,CAAC,OAAO;gBACzB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,sBAAsB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACjD,MAAM;YACR,KAAK,2BAAc,CAAC,UAAU;gBAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;gBACzC,MAAM;YACR,KAAK,2BAAc,CAAC,SAAS;gBAC3B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wBAAwB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBACnD,MAAM;YACR,KAAK,2BAAc,CAAC,KAAK;gBACvB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBAChE,MAAM;YACR,KAAK,2BAAc,CAAC,UAAU;gBAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC9D,MAAM;YACR,KAAK,2BAAc,CAAC,aAAa;gBAC/B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC7D,MAAM;YACR,KAAK,2BAAc,CAAC,aAAa;gBAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;gBAC/C,MAAM;YACR,KAAK,2BAAc,CAAC,gBAAgB;gBAClC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;gBAC9C,MAAM;YAER,KAAK,2BAAc,CAAC,UAAU,CAAC,CAAC,CAAC;gBAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAqC,CAAC;gBAEzD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,IAAI,EAAE,OAAO,IAAI,SAAS,EAAE,CAAC,CAAC;gBAC/D,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;CACF;AAnED,4BAmEC"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { JetstreamModule } from './jetstream.module';
2
2
  export { TransportEvent } from './interfaces';
3
- export type { Codec, JetstreamFeatureOptions, JetstreamModuleAsyncOptions, JetstreamModuleOptions, RpcConfig, StreamConsumerOverrides, TransportHooks, } from './interfaces';
3
+ export type { Codec, DeadLetterInfo, JetstreamFeatureOptions, JetstreamModuleAsyncOptions, JetstreamModuleOptions, RpcConfig, StreamConsumerOverrides, TransportHooks, } from './interfaces';
4
4
  export { JetstreamClient } from './client';
5
5
  export { JetstreamRecord, JetstreamRecordBuilder } from './client';
6
6
  export { JsonCodec } from './codec';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,YAAY,EACV,KAAK,EACL,uBAAuB,EACvB,2BAA2B,EAC3B,sBAAsB,EACtB,SAAS,EACT,uBAAuB,EACvB,cAAc,GACf,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAGnE,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGpC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAGvC,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAEpD,YAAY,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAGtD,OAAO,EACL,cAAc,EACd,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,KAAK,GACN,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGrD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,YAAY,EACV,KAAK,EACL,cAAc,EACd,uBAAuB,EACvB,2BAA2B,EAC3B,sBAAsB,EACtB,SAAS,EACT,uBAAuB,EACvB,cAAc,GACf,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAGnE,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAGpC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAGvC,OAAO,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAEpD,YAAY,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAGtD,OAAO,EACL,cAAc,EACd,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,KAAK,GACN,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,SAAS;AACT,uDAAqD;AAA5C,mHAAA,eAAe,OAAA;AAExB,aAAa;AACb,2CAA8C;AAArC,4GAAA,cAAc,OAAA;AAYvB,SAAS;AACT,mCAA2C;AAAlC,yGAAA,eAAe,OAAA;AAExB,mCAAmE;AAA1D,yGAAA,eAAe,OAAA;AAAE,gHAAA,sBAAsB,OAAA;AAEhD,QAAQ;AACR,iCAAoC;AAA3B,kGAAA,SAAS,OAAA;AAElB,UAAU;AACV,qCAAuC;AAA9B,qGAAA,UAAU,OAAA;AAEnB,SAAS;AACT,mCAAoD;AAA3C,kHAAA,wBAAwB,OAAA;AAIjC,+CAA+C;AAC/C,6DAQ+B;AAP7B,qHAAA,cAAc,OAAA;AACd,sHAAA,eAAe,OAAA;AACf,sHAAA,eAAe,OAAA;AACf,2HAAA,oBAAoB,OAAA;AACpB,0HAAA,mBAAmB,OAAA;AACnB,wHAAA,iBAAiB,OAAA;AACjB,4GAAA,KAAK,OAAA;AAGP,QAAQ;AACR,iCAAmC;AAA1B,iGAAA,QAAQ,OAAA;AAEjB,kCAAkC;AAClC,mCAA6C;AAApC,2GAAA,iBAAiB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,SAAS;AACT,uDAAqD;AAA5C,mHAAA,eAAe,OAAA;AAExB,aAAa;AACb,2CAA8C;AAArC,4GAAA,cAAc,OAAA;AAavB,SAAS;AACT,mCAA2C;AAAlC,yGAAA,eAAe,OAAA;AAExB,mCAAmE;AAA1D,yGAAA,eAAe,OAAA;AAAE,gHAAA,sBAAsB,OAAA;AAEhD,QAAQ;AACR,iCAAoC;AAA3B,kGAAA,SAAS,OAAA;AAElB,UAAU;AACV,qCAAuC;AAA9B,qGAAA,UAAU,OAAA;AAEnB,SAAS;AACT,mCAAoD;AAA3C,kHAAA,wBAAwB,OAAA;AAIjC,+CAA+C;AAC/C,6DAQ+B;AAP7B,qHAAA,cAAc,OAAA;AACd,sHAAA,eAAe,OAAA;AACf,sHAAA,eAAe,OAAA;AACf,2HAAA,oBAAoB,OAAA;AACpB,0HAAA,mBAAmB,OAAA;AACnB,wHAAA,iBAAiB,OAAA;AACjB,4GAAA,KAAK,OAAA;AAGP,QAAQ;AACR,iCAAmC;AAA1B,iGAAA,QAAQ,OAAA;AAEjB,kCAAkC;AAClC,mCAA6C;AAApC,2GAAA,iBAAiB,OAAA"}
@@ -1,3 +1,4 @@
1
+ import type { MsgHdrs } from 'nats';
1
2
  export declare enum TransportEvent {
2
3
  Connect = "connect",
3
4
  Disconnect = "disconnect",
@@ -6,7 +7,8 @@ export declare enum TransportEvent {
6
7
  RpcTimeout = "rpcTimeout",
7
8
  MessageRouted = "messageRouted",
8
9
  ShutdownStart = "shutdownStart",
9
- ShutdownComplete = "shutdownComplete"
10
+ ShutdownComplete = "shutdownComplete",
11
+ DeadLetter = "deadLetter"
10
12
  }
11
13
  /**
12
14
  * Hook callbacks for transport lifecycle and operational events.
@@ -42,5 +44,28 @@ export interface TransportHooks {
42
44
  [TransportEvent.ShutdownStart](): void;
43
45
  /** Fired after graceful shutdown completes. */
44
46
  [TransportEvent.ShutdownComplete](): void;
47
+ /** Fired when a message exhausts all delivery attempts (dead letter). */
48
+ [TransportEvent.DeadLetter](info: DeadLetterInfo): void;
49
+ }
50
+ /**
51
+ * Context passed to the onDeadLetter callback when a message exhausts all delivery attempts.
52
+ */
53
+ export interface DeadLetterInfo {
54
+ /** The NATS subject the message was published to. */
55
+ subject: string;
56
+ /** Decoded message payload. */
57
+ data: unknown;
58
+ /** Message headers (raw NATS MsgHdrs). */
59
+ headers: MsgHdrs | undefined;
60
+ /** The error that caused the last handler failure. */
61
+ error: unknown;
62
+ /** How many times this message was delivered. */
63
+ deliveryCount: number;
64
+ /** The stream this message belongs to. */
65
+ stream: string;
66
+ /** The stream sequence number. */
67
+ streamSequence: number;
68
+ /** ISO timestamp of the message (derived from msg.info.timestampNanos). */
69
+ timestamp: string;
45
70
  }
46
71
  //# sourceMappingURL=hooks.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/hooks.interface.ts"],"names":[],"mappings":"AAAA,oBAAY,cAAc;IACxB,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,KAAK,UAAU;IACf,UAAU,eAAe;IACzB,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,gBAAgB,qBAAqB;CACtC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,cAAc;IAC7B,iDAAiD;IACjD,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/C,0CAA0C;IAC1C,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC;IAEpC,uEAAuE;IACvE,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjD,0CAA0C;IAC1C,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7D,qDAAqD;IACrD,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1E,mEAAmE;IACnE,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,OAAO,GAAG,IAAI,CAAC;IAE7E,4DAA4D;IAC5D,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC;IAEvC,+CAA+C;IAC/C,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC;CAC3C"}
1
+ {"version":3,"file":"hooks.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/hooks.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,oBAAY,cAAc;IACxB,OAAO,YAAY;IACnB,UAAU,eAAe;IACzB,SAAS,cAAc;IACvB,KAAK,UAAU;IACf,UAAU,eAAe;IACzB,aAAa,kBAAkB;IAC/B,aAAa,kBAAkB;IAC/B,gBAAgB,qBAAqB;IACrC,UAAU,eAAe;CAC1B;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,cAAc;IAC7B,iDAAiD;IACjD,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/C,0CAA0C;IAC1C,CAAC,cAAc,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC;IAEpC,uEAAuE;IACvE,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjD,0CAA0C;IAC1C,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7D,qDAAqD;IACrD,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1E,mEAAmE;IACnE,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,OAAO,GAAG,IAAI,CAAC;IAE7E,4DAA4D;IAC5D,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC;IAEvC,+CAA+C;IAC/C,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC;IAE1C,yEAAyE;IACzE,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI,CAAC;CACzD;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,qDAAqD;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,0CAA0C;IAC1C,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,sDAAsD;IACtD,KAAK,EAAE,OAAO,CAAC;IACf,iDAAiD;IACjD,aAAa,EAAE,MAAM,CAAC;IACtB,0CAA0C;IAC1C,MAAM,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,2EAA2E;IAC3E,SAAS,EAAE,MAAM,CAAC;CACnB"}
@@ -11,5 +11,6 @@ var TransportEvent;
11
11
  TransportEvent["MessageRouted"] = "messageRouted";
12
12
  TransportEvent["ShutdownStart"] = "shutdownStart";
13
13
  TransportEvent["ShutdownComplete"] = "shutdownComplete";
14
+ TransportEvent["DeadLetter"] = "deadLetter";
14
15
  })(TransportEvent || (exports.TransportEvent = TransportEvent = {}));
15
16
  //# sourceMappingURL=hooks.interface.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.interface.js","sourceRoot":"","sources":["../../src/interfaces/hooks.interface.ts"],"names":[],"mappings":";;;AAAA,IAAY,cASX;AATD,WAAY,cAAc;IACxB,qCAAmB,CAAA;IACnB,2CAAyB,CAAA;IACzB,yCAAuB,CAAA;IACvB,iCAAe,CAAA;IACf,2CAAyB,CAAA;IACzB,iDAA+B,CAAA;IAC/B,iDAA+B,CAAA;IAC/B,uDAAqC,CAAA;AACvC,CAAC,EATW,cAAc,8BAAd,cAAc,QASzB"}
1
+ {"version":3,"file":"hooks.interface.js","sourceRoot":"","sources":["../../src/interfaces/hooks.interface.ts"],"names":[],"mappings":";;;AAEA,IAAY,cAUX;AAVD,WAAY,cAAc;IACxB,qCAAmB,CAAA;IACnB,2CAAyB,CAAA;IACzB,yCAAuB,CAAA;IACvB,iCAAe,CAAA;IACf,2CAAyB,CAAA;IACzB,iDAA+B,CAAA;IAC/B,iDAA+B,CAAA;IAC/B,uDAAqC,CAAA;IACrC,2CAAyB,CAAA;AAC3B,CAAC,EAVW,cAAc,8BAAd,cAAc,QAUzB"}
@@ -1,6 +1,6 @@
1
1
  export type { Codec } from './codec.interface';
2
2
  export { TransportEvent } from './hooks.interface';
3
- export type { TransportHooks } from './hooks.interface';
3
+ export type { DeadLetterInfo, TransportHooks } from './hooks.interface';
4
4
  export type { JetstreamFeatureOptions, JetstreamModuleAsyncOptions, JetstreamModuleOptions, RpcConfig, StreamConsumerOverrides, } from './options.interface';
5
5
  export type { StreamKind, SubjectKind } from './stream.interface';
6
6
  export type { TransportHeaderOptions, ExtractedRecordData } from './client.interface';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/interfaces/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD,YAAY,EACV,uBAAuB,EACvB,2BAA2B,EAC3B,sBAAsB,EACtB,SAAS,EACT,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAElE,YAAY,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEtF,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/interfaces/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExE,YAAY,EACV,uBAAuB,EACvB,2BAA2B,EAC3B,sBAAsB,EACtB,SAAS,EACT,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAE7B,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAElE,YAAY,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEtF,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { FactoryProvider, ModuleMetadata, Type } from '@nestjs/common';
2
2
  import { ConnectionOptions, ConsumerConfig, StreamConfig } from 'nats';
3
3
  import { Codec } from './codec.interface';
4
+ import type { DeadLetterInfo } from './hooks.interface';
4
5
  import { TransportHooks } from './hooks.interface';
5
6
  /**
6
7
  * RPC transport configuration.
@@ -66,6 +67,29 @@ export interface JetstreamModuleOptions {
66
67
  * Unset hooks fall back to NestJS Logger.
67
68
  */
68
69
  hooks?: Partial<TransportHooks>;
70
+ /**
71
+ * Async callback invoked when an event message exhausts all delivery attempts.
72
+ * Called before msg.term(). If it throws, the message is nak'd for retry.
73
+ *
74
+ * Use this to persist dead letters to an external store (DB, S3, another queue).
75
+ * The NATS connection is available via `JETSTREAM_CONNECTION` token in forRootAsync.
76
+ *
77
+ * @example
78
+ * ```typescript
79
+ * JetstreamModule.forRootAsync({
80
+ * name: 'my-service',
81
+ * imports: [DlqModule],
82
+ * inject: [DlqService, JETSTREAM_CONNECTION],
83
+ * useFactory: (dlqService, connection) => ({
84
+ * servers: ['nats://localhost:4222'],
85
+ * onDeadLetter: async (info) => {
86
+ * await dlqService.persist(info);
87
+ * },
88
+ * }),
89
+ * })
90
+ * ```
91
+ */
92
+ onDeadLetter?(info: DeadLetterInfo): Promise<void>;
69
93
  /**
70
94
  * Graceful shutdown timeout in ms.
71
95
  * Handlers exceeding this are abandoned.
@@ -1 +1 @@
1
- {"version":3,"file":"options.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/options.interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"options.interface.d.ts","sourceRoot":"","sources":["../../src/interfaces/options.interface.ts"],"names":[],"mappings":"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"}
@@ -70,6 +70,12 @@ export declare class JetstreamModule implements OnApplicationShutdown {
70
70
  */
71
71
  static forFeature(options: JetstreamFeatureOptions): DynamicModule;
72
72
  /** Create all providers for synchronous forRoot(). */
73
+ /**
74
+ * Build a map of stream name -> max_deliver for dead letter detection.
75
+ * Each stream kind (ev, broadcast) has its own consumer config with potentially
76
+ * different max_deliver values.
77
+ */
78
+ private static buildMaxDeliverMap;
73
79
  private static createCoreProviders;
74
80
  /** Create providers that depend on JETSTREAM_OPTIONS (shared by sync and async). */
75
81
  private static createCoreDependentProviders;
@@ -1 +1 @@
1
- {"version":3,"file":"jetstream.module.d.ts","sourceRoot":"","sources":["../src/jetstream.module.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAKb,qBAAqB,EAGtB,MAAM,gBAAgB,CAAC;AAOxB,OAAO,KAAK,EAEV,uBAAuB,EACvB,2BAA2B,EAC3B,sBAAsB,EACvB,MAAM,cAAc,CAAC;AAYtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,qBAEa,eAAgB,YAAW,qBAAqB;IAIzD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IACM,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBADhD,eAAe,CAAC,EAAE,eAAe,YAAA,EACM,QAAQ,CAAC,GAAE,iBAAiB,GAAG,IAAI,aAAA;IAO7F;;;;;;;;OAQG;WACW,OAAO,CAAC,OAAO,EAAE,sBAAsB,GAAG,aAAa;IAuBrE;;;;;;;;OAQG;WACW,YAAY,CAAC,YAAY,EAAE,2BAA2B,GAAG,aAAa;IAyBpF;;;;;;;;OAQG;WACW,UAAU,CAAC,OAAO,EAAE,uBAAuB,GAAG,aAAa;IA6BzE,sDAAsD;IACtD,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAUlC,oFAAoF;IACpF,OAAO,CAAC,MAAM,CAAC,4BAA4B;IAiP3C,0EAA0E;IAC1E,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAkDzC;;OAEG;IACU,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;CAKpD"}
1
+ {"version":3,"file":"jetstream.module.d.ts","sourceRoot":"","sources":["../src/jetstream.module.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAKb,qBAAqB,EAGtB,MAAM,gBAAgB,CAAC;AAOxB,OAAO,KAAK,EAEV,uBAAuB,EACvB,2BAA2B,EAC3B,sBAAsB,EACvB,MAAM,cAAc,CAAC;AAgBtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,qBAEa,eAAgB,YAAW,qBAAqB;IAIzD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IACM,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBADhD,eAAe,CAAC,EAAE,eAAe,YAAA,EACM,QAAQ,CAAC,GAAE,iBAAiB,GAAG,IAAI,aAAA;IAO7F;;;;;;;;OAQG;WACW,OAAO,CAAC,OAAO,EAAE,sBAAsB,GAAG,aAAa;IAuBrE;;;;;;;;OAQG;WACW,YAAY,CAAC,YAAY,EAAE,2BAA2B,GAAG,aAAa;IAyBpF;;;;;;;;OAQG;WACW,UAAU,CAAC,OAAO,EAAE,uBAAuB,GAAG,aAAa;IA6BzE,sDAAsD;IACtD;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAkBjC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAUlC,oFAAoF;IACpF,OAAO,CAAC,MAAM,CAAC,4BAA4B;IA8P3C,0EAA0E;IAC1E,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAkDzC;;OAEG;IACU,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;CAKpD"}
@@ -156,6 +156,19 @@ let JetstreamModule = JetstreamModule_1 = class JetstreamModule {
156
156
  // Provider factories
157
157
  // -------------------------------------------------------------------
158
158
  /** Create all providers for synchronous forRoot(). */
159
+ /**
160
+ * Build a map of stream name -> max_deliver for dead letter detection.
161
+ * Each stream kind (ev, broadcast) has its own consumer config with potentially
162
+ * different max_deliver values.
163
+ */
164
+ static buildMaxDeliverMap(options) {
165
+ const map = new Map();
166
+ const defaultEventMax = jetstream_constants_1.DEFAULT_EVENT_CONSUMER_CONFIG.max_deliver ?? 3;
167
+ const defaultBroadcastMax = jetstream_constants_1.DEFAULT_BROADCAST_CONSUMER_CONFIG.max_deliver ?? 3;
168
+ map.set((0, jetstream_constants_1.streamName)(options.name, 'ev'), options.events?.consumer?.max_deliver ?? defaultEventMax);
169
+ map.set((0, jetstream_constants_1.streamName)(options.name, 'broadcast'), options.broadcast?.consumer?.max_deliver ?? defaultBroadcastMax);
170
+ return map;
171
+ }
159
172
  static createCoreProviders(options) {
160
173
  return [
161
174
  {
@@ -266,7 +279,13 @@ let JetstreamModule = JetstreamModule_1 = class JetstreamModule {
266
279
  useFactory: (options, messageProvider, patternRegistry, codec, eventBus) => {
267
280
  if (options.consumer === false)
268
281
  return null;
269
- return new routing_1.EventRouter(messageProvider, patternRegistry, codec, eventBus);
282
+ const deadLetterConfig = options.onDeadLetter
283
+ ? {
284
+ maxDeliverByStream: JetstreamModule_1.buildMaxDeliverMap(options),
285
+ onDeadLetter: options.onDeadLetter,
286
+ }
287
+ : undefined;
288
+ return new routing_1.EventRouter(messageProvider, patternRegistry, codec, eventBus, deadLetterConfig);
270
289
  },
271
290
  },
272
291
  // RpcRouter — routes RPC command messages in JetStream mode
@@ -1 +1 @@
1
- {"version":3,"file":"jetstream.module.js","sourceRoot":"","sources":["../src/jetstream.module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jetstream.module.js","sourceRoot":"","sources":["../src/jetstream.module.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,17 @@
1
1
  import { EventBus } from '../../hooks';
2
- import type { Codec } from '../../interfaces';
2
+ import type { Codec, DeadLetterInfo } from '../../interfaces';
3
3
  import { MessageProvider } from '../infrastructure/message.provider';
4
4
  import { PatternRegistry } from './pattern-registry';
5
+ /** Options for dead letter queue handling. */
6
+ export interface DeadLetterConfig {
7
+ /**
8
+ * Map of stream name -> max_deliver value.
9
+ * Used to detect when a message from a given stream has exhausted all delivery attempts.
10
+ */
11
+ maxDeliverByStream: Map<string, number>;
12
+ /** Async callback invoked when a message exhausts all deliveries. */
13
+ onDeadLetter(info: DeadLetterInfo): Promise<void>;
14
+ }
5
15
  /**
6
16
  * Routes incoming event messages (workqueue and broadcast) to NestJS handlers.
7
17
  *
@@ -9,6 +19,7 @@ import { PatternRegistry } from './pattern-registry';
9
19
  * - Handler executes first
10
20
  * - Success -> ack (message consumed)
11
21
  * - Handler error -> nak (NATS redelivers, up to `max_deliver` times)
22
+ * - Dead letter (max_deliver reached) -> onDeadLetter hook -> term or nak
12
23
  * - Decode error -> term (no retry for malformed payloads)
13
24
  * - No handler found -> term (configuration error)
14
25
  *
@@ -23,9 +34,10 @@ export declare class EventRouter {
23
34
  private readonly patternRegistry;
24
35
  private readonly codec;
25
36
  private readonly eventBus;
37
+ private readonly deadLetterConfig?;
26
38
  private readonly logger;
27
39
  private readonly subscriptions;
28
- constructor(messageProvider: MessageProvider, patternRegistry: PatternRegistry, codec: Codec, eventBus: EventBus);
40
+ constructor(messageProvider: MessageProvider, patternRegistry: PatternRegistry, codec: Codec, eventBus: EventBus, deadLetterConfig?: DeadLetterConfig | undefined);
29
41
  /** Start routing event and broadcast messages to handlers. */
30
42
  start(): void;
31
43
  /** Stop routing and unsubscribe from all streams. */
@@ -34,7 +46,11 @@ export declare class EventRouter {
34
46
  private subscribeToStream;
35
47
  /** Handle a single event message: decode -> execute handler -> ack/nak. */
36
48
  private handle;
37
- /** Execute handler, then ack on success or nak on failure. */
49
+ /** Execute handler, then ack on success or nak/dead-letter on failure. */
38
50
  private executeHandler;
51
+ /** Check if the message has exhausted all delivery attempts. */
52
+ private isDeadLetter;
53
+ /** Handle a dead letter: invoke callback, then term or nak based on result. */
54
+ private handleDeadLetter;
39
55
  }
40
56
  //# sourceMappingURL=event.router.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event.router.d.ts","sourceRoot":"","sources":["../../../src/server/routing/event.router.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,WAAW;IAKpB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAP3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuC;IAC9D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;gBAGjC,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,eAAe,EAChC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ;IAGrC,8DAA8D;IACvD,KAAK,IAAI,IAAI;IAKpB,qDAAqD;IAC9C,OAAO,IAAI,IAAI;IAQtB,4DAA4D;IAC5D,OAAO,CAAC,iBAAiB;IAczB,2EAA2E;IAC3E,OAAO,CAAC,MAAM;IA0Bd,8DAA8D;YAChD,cAAc;CAmB7B"}
1
+ {"version":3,"file":"event.router.d.ts","sourceRoot":"","sources":["../../../src/server/routing/event.router.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,8CAA8C;AAC9C,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,qEAAqE;IACrE,YAAY,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,WAAW;IAKpB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IARpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuC;IAC9D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;gBAGjC,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,eAAe,EAChC,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,gBAAgB,CAAC,EAAE,gBAAgB,YAAA;IAGtD,8DAA8D;IACvD,KAAK,IAAI,IAAI;IAKpB,qDAAqD;IAC9C,OAAO,IAAI,IAAI;IAQtB,4DAA4D;IAC5D,OAAO,CAAC,iBAAiB;IAczB,2EAA2E;IAC3E,OAAO,CAAC,MAAM;IA0Bd,0EAA0E;YAC5D,cAAc;IAyB5B,gEAAgE;IAChE,OAAO,CAAC,YAAY;IAUpB,+EAA+E;YACjE,gBAAgB;CAwB/B"}
@@ -12,6 +12,7 @@ const interfaces_1 = require("../../interfaces");
12
12
  * - Handler executes first
13
13
  * - Success -> ack (message consumed)
14
14
  * - Handler error -> nak (NATS redelivers, up to `max_deliver` times)
15
+ * - Dead letter (max_deliver reached) -> onDeadLetter hook -> term or nak
15
16
  * - Decode error -> term (no retry for malformed payloads)
16
17
  * - No handler found -> term (configuration error)
17
18
  *
@@ -22,11 +23,12 @@ const interfaces_1 = require("../../interfaces");
22
23
  * Handlers must be idempotent — NATS may redeliver on failure or timeout.
23
24
  */
24
25
  class EventRouter {
25
- constructor(messageProvider, patternRegistry, codec, eventBus) {
26
+ constructor(messageProvider, patternRegistry, codec, eventBus, deadLetterConfig) {
26
27
  this.messageProvider = messageProvider;
27
28
  this.patternRegistry = patternRegistry;
28
29
  this.codec = codec;
29
30
  this.eventBus = eventBus;
31
+ this.deadLetterConfig = deadLetterConfig;
30
32
  this.logger = new common_1.Logger('Jetstream:EventRouter');
31
33
  this.subscriptions = [];
32
34
  }
@@ -73,7 +75,7 @@ class EventRouter {
73
75
  const ctx = new context_1.RpcContext([msg]);
74
76
  return (0, rxjs_1.from)(this.executeHandler(handler, data, ctx, msg));
75
77
  }
76
- /** Execute handler, then ack on success or nak on failure. */
78
+ /** Execute handler, then ack on success or nak/dead-letter on failure. */
77
79
  async executeHandler(handler, data, ctx, msg) {
78
80
  try {
79
81
  const result = await handler(data, ctx);
@@ -84,6 +86,44 @@ class EventRouter {
84
86
  }
85
87
  catch (err) {
86
88
  this.logger.error(`Event handler error (${msg.subject}):`, err);
89
+ if (this.isDeadLetter(msg)) {
90
+ await this.handleDeadLetter(msg, data, err);
91
+ }
92
+ else {
93
+ msg.nak();
94
+ }
95
+ }
96
+ }
97
+ /** Check if the message has exhausted all delivery attempts. */
98
+ isDeadLetter(msg) {
99
+ if (!this.deadLetterConfig)
100
+ return false;
101
+ const maxDeliver = this.deadLetterConfig.maxDeliverByStream.get(msg.info.stream);
102
+ if (maxDeliver === undefined)
103
+ return false;
104
+ return msg.info.deliveryCount >= maxDeliver;
105
+ }
106
+ /** Handle a dead letter: invoke callback, then term or nak based on result. */
107
+ async handleDeadLetter(msg, data, error) {
108
+ const info = {
109
+ subject: msg.subject,
110
+ data,
111
+ headers: msg.headers,
112
+ error,
113
+ deliveryCount: msg.info.deliveryCount,
114
+ stream: msg.info.stream,
115
+ streamSequence: msg.info.streamSequence,
116
+ timestamp: new Date(msg.info.timestampNanos / 1_000_000).toISOString(),
117
+ };
118
+ this.eventBus.emit(interfaces_1.TransportEvent.DeadLetter, info);
119
+ if (!this.deadLetterConfig)
120
+ return;
121
+ try {
122
+ await this.deadLetterConfig.onDeadLetter(info);
123
+ msg.term('Dead letter processed');
124
+ }
125
+ catch (hookErr) {
126
+ this.logger.error(`onDeadLetter callback failed for ${msg.subject}, nak for retry:`, hookErr);
87
127
  msg.nak();
88
128
  }
89
129
  }
@@ -1 +1 @@
1
- {"version":3,"file":"event.router.js","sourceRoot":"","sources":["../../../src/server/routing/event.router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event.router.js","sourceRoot":"","sources":["../../../src/server/routing/event.router.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export { PatternRegistry } from './pattern-registry';
2
2
  export { EventRouter } from './event.router';
3
+ export type { DeadLetterConfig } from './event.router';
3
4
  export { RpcRouter } from './rpc.router';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/routing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/routing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,YAAY,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/routing/index.ts"],"names":[],"mappings":";;;AAAA,uDAAqD;AAA5C,mHAAA,eAAe,OAAA;AAExB,+CAA6C;AAApC,2GAAA,WAAW,OAAA;AAEpB,2CAAyC;AAAhC,uGAAA,SAAS,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/routing/index.ts"],"names":[],"mappings":";;;AAAA,uDAAqD;AAA5C,mHAAA,eAAe,OAAA;AAExB,+CAA6C;AAApC,2GAAA,WAAW,OAAA;AAIpB,2CAAyC;AAAhC,uGAAA,SAAS,OAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@horizon-republic/nestjs-jetstream",
3
- "version": "2.1.1",
3
+ "version": "2.2.0",
4
4
  "description": "A NestJS transport for NATS with JetStream events, broadcast fan-out, and Core/JetStream RPC.",
5
5
  "repository": {
6
6
  "type": "git",