@jr200-labs/xstate-nats 0.9.10 → 0.9.12

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
@@ -233,6 +233,7 @@ and request/reply replier.
233
233
  | `xstate.nats.publish` | `SUBJECT.PUBLISH` | `subject`, `payload.bytes` |
234
234
  | `xstate.nats.request` | `SUBJECT.REQUEST` | `subject`, `payload.bytes`, `timeout.ms` |
235
235
  | `xstate.nats.reconnect` | NATS status loop | `reconnect.type` |
236
+ | `xstate.nats.lifecycle` | root machine | `xstate.state`, `xstate.event` |
236
237
  | `xstate.nats.kv.watch` | `KV.SUBSCRIBE` | `bucket`, `key` |
237
238
  | `xstate.nats.kv.entry` | per KV watch entry | `bucket`, `key`, `operation` |
238
239
 
@@ -240,6 +241,29 @@ All error paths record exceptions on the active span, set span status to
240
241
  `ERROR`, and emit a named event (`xstate.nats.error` / `xstate.nats.kv.error`)
241
242
  with a truncated stack.
242
243
 
244
+ ### Lifecycle diagnostics
245
+
246
+ Root machine lifecycle diagnostics are opt-in and separate from raw NATS
247
+ protocol frame logging. Enable them on the connection config:
248
+
249
+ ```ts
250
+ send({
251
+ type: 'CONFIGURE',
252
+ config: {
253
+ opts: { servers: ['wss://example-nats'] },
254
+ diagnostics: { lifecycle: true },
255
+ maxRetries: 3,
256
+ },
257
+ })
258
+ ```
259
+
260
+ When enabled, the root machine emits sanitized `xstate.nats.lifecycle` spans and
261
+ `console.debug('xstate-nats lifecycle', attributes)` breadcrumbs for configure,
262
+ connect, close, manager initialization, and NATS status events. Diagnostics
263
+ include state, event type, server URLs, debug/verbose flags, retry count, auth
264
+ type, and manager readiness flags. They do not include credentials, JWTs, nkeys,
265
+ signatures, passwords, tokens, or raw protocol frames.
266
+
243
267
  ### Enabling tracing
244
268
 
245
269
  `@opentelemetry/api` is a peer dependency — the consumer controls the installed
@@ -1 +1 @@
1
- {"version":3,"file":"kv.d.ts","sourceRoot":"","sources":["../../src/machines/kv.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kv.d.ts","sourceRoot":"","sources":["../../src/machines/kv.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,7 @@ export const kvManagerLogic = setup({
63
63
  states: {
64
64
  kv_idle: {
65
65
  on: {
66
+ 'KV.DISCONNECTED': {},
66
67
  'KV.CONNECT': {
67
68
  target: 'kv_check_sync',
68
69
  actions: [
@@ -75,7 +76,6 @@ export const kvManagerLogic = setup({
75
76
  },
76
77
  },
77
78
  kv_disconnecting: {
78
- target: 'kv_idle',
79
79
  entry: [
80
80
  // dont close the connection here, it will be closed by the nats connection machine
81
81
  assign({
@@ -85,6 +85,9 @@ export const kvManagerLogic = setup({
85
85
  }),
86
86
  sendParent({ type: 'KV.DISCONNECTED' }),
87
87
  ],
88
+ always: {
89
+ target: 'kv_idle',
90
+ },
88
91
  },
89
92
  kv_connected: {
90
93
  entry: [sendParent({ type: 'KV.CONNECTED' })],
@@ -93,6 +96,18 @@ export const kvManagerLogic = setup({
93
96
  guard: 'hasPendingSync',
94
97
  },
95
98
  on: {
99
+ 'KV.CONNECT': {
100
+ target: 'kv_check_sync',
101
+ actions: [
102
+ assign({
103
+ cachedConnection: ({ event }) => event.connection,
104
+ cachedKvm: ({ event }) => new Kvm(event.connection),
105
+ }),
106
+ ],
107
+ },
108
+ 'KV.DISCONNECTED': {
109
+ target: 'kv_disconnecting',
110
+ },
96
111
  'KV.BUCKET_LIST': {
97
112
  actions: async ({ context, event }) => {
98
113
  try {
@@ -211,6 +226,11 @@ export const kvManagerLogic = setup({
211
226
  },
212
227
  },
213
228
  kv_check_sync: {
229
+ on: {
230
+ 'KV.DISCONNECTED': {
231
+ target: 'kv_disconnecting',
232
+ },
233
+ },
214
234
  always: [
215
235
  {
216
236
  target: 'kv_syncing',
@@ -222,6 +242,11 @@ export const kvManagerLogic = setup({
222
242
  ],
223
243
  },
224
244
  kv_syncing: {
245
+ on: {
246
+ 'KV.DISCONNECTED': {
247
+ target: 'kv_disconnecting',
248
+ },
249
+ },
225
250
  entry: [
226
251
  ({ context }) => {
227
252
  // either going to be 0 or 1 (if there were multiple syncs pending)
@@ -263,8 +288,17 @@ export const kvManagerLogic = setup({
263
288
  },
264
289
  kv_error: {
265
290
  on: {
291
+ 'KV.DISCONNECTED': {
292
+ target: 'kv_disconnecting',
293
+ },
266
294
  'KV.CONNECT': {
267
295
  target: 'kv_check_sync',
296
+ actions: [
297
+ assign({
298
+ cachedConnection: ({ event }) => event.connection,
299
+ cachedKvm: ({ event }) => new Kvm(event.connection),
300
+ }),
301
+ ],
268
302
  },
269
303
  },
270
304
  },
@@ -1 +1 @@
1
- {"version":3,"file":"kv.js","sourceRoot":"","sources":["../../src/machines/kv.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kv.js","sourceRoot":"","sources":["../../src/machines/kv.ts"],"names":[],"mappings":"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"}
@@ -2,10 +2,14 @@ import { ConnectionOptions, NatsConnection } from '@nats-io/nats-core';
2
2
  import { ExternalEvents as KvExternalEvents } from './kv';
3
3
  import { ExternalEvents as SubjectExternalEvents } from './subject';
4
4
  import { type AuthConfig } from '../actions/types';
5
+ export interface NatsDiagnosticsConfig {
6
+ lifecycle?: boolean;
7
+ }
5
8
  export interface NatsConnectionConfig {
6
9
  opts: ConnectionOptions;
7
10
  auth?: AuthConfig;
8
11
  maxRetries: number;
12
+ diagnostics?: NatsDiagnosticsConfig;
9
13
  }
10
14
  export interface Context {
11
15
  connection: NatsConnection | null;
@@ -518,7 +522,7 @@ export declare const natsMachine: import("xstate").StateMachine<Context, {
518
522
  } | {
519
523
  type: "shouldConfigureAfterClose";
520
524
  params: unknown;
521
- }, never, "error" | "not_configured" | "configured" | "connecting" | "initialise_managers" | "connected" | "closing" | "closed", string, import("xstate").NonReducibleUnknown, import("xstate").NonReducibleUnknown, import("xstate").EventObject, import("xstate").MetaObject, {
525
+ }, never, "error" | "not_configured" | "configured" | "connecting" | "initialise_managers" | "closing" | "connected" | "closed", string, import("xstate").NonReducibleUnknown, import("xstate").NonReducibleUnknown, import("xstate").EventObject, import("xstate").MetaObject, {
522
526
  states: {
523
527
  readonly not_configured: {};
524
528
  readonly configured: {};
@@ -1 +1 @@
1
- {"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../src/machines/root.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEtE,OAAO,EAAkB,cAAc,IAAI,gBAAgB,EAAE,MAAM,MAAM,CAAA;AACzE,OAAO,EAAuB,cAAc,IAAI,qBAAqB,EAAE,MAAM,WAAW,CAAA;AAExF,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAGlD,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,iBAAiB,CAAA;IACvB,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,OAAO;IACtB,UAAU,EAAE,cAAc,GAAG,IAAI,CAAA;IACjC,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,UAAU,CAAC,EAAE,oBAAoB,CAAA;IACjC,OAAO,EAAE,MAAM,CAAA;IACf,mBAAmB,EAAE,OAAO,CAAA;IAC5B,cAAc,EAAE,OAAO,CAAA;IACvB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,iBAAiB,EAAE,OAAO,CAAA;CAC3B;AAYD,MAAM,MAAM,cAAc,GACtB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,oBAAoB,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB,qBAAqB,GACrB,gBAAgB,CAAA;AAIpB,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAlBZ,WAAW;gBAAc,cAAc;;UACvC,cAAc;;UACd,MAAM;WAAS,KAAK;;UACpB,WAAW;;UACX,OAAO;;UAKP,WAAW;YAAU,oBAAoB;;UACzC,SAAS;;UACT,YAAY;;UACZ,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2VjB,CAAA"}
1
+ {"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../../src/machines/root.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEtE,OAAO,EAAkB,cAAc,IAAI,gBAAgB,EAAE,MAAM,MAAM,CAAA;AACzE,OAAO,EAAuB,cAAc,IAAI,qBAAqB,EAAE,MAAM,WAAW,CAAA;AAExF,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAIlD,MAAM,WAAW,qBAAqB;IACpC,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,iBAAiB,CAAA;IACvB,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,qBAAqB,CAAA;CACpC;AAED,MAAM,WAAW,OAAO;IACtB,UAAU,EAAE,cAAc,GAAG,IAAI,CAAA;IACjC,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,UAAU,CAAC,EAAE,oBAAoB,CAAA;IACjC,OAAO,EAAE,MAAM,CAAA;IACf,mBAAmB,EAAE,OAAO,CAAA;IAC5B,cAAc,EAAE,OAAO,CAAA;IACvB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,iBAAiB,EAAE,OAAO,CAAA;CAC3B;AAYD,MAAM,MAAM,cAAc,GACtB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,oBAAoB,CAAA;CAAE,GACnD;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB,qBAAqB,GACrB,gBAAgB,CAAA;AAkDpB,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UAhEZ,WAAW;gBAAc,cAAc;;UACvC,cAAc;;UACd,MAAM;WAAS,KAAK;;UACpB,WAAW;;UACX,OAAO;;UAKP,WAAW;YAAU,oBAAoB;;UACzC,SAAS;;UACT,YAAY;;UACZ,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6bjB,CAAA"}
@@ -2,6 +2,44 @@ import { assign, sendTo, setup } from 'xstate';
2
2
  import { kvManagerLogic } from './kv';
3
3
  import { subjectManagerLogic } from './subject';
4
4
  import { connectToNats, disconnectNats } from '../actions/connection';
5
+ import { withSpan } from '../telemetry';
6
+ function lifecycleDiagnosticsEnabled(context) {
7
+ return Boolean(context.natsConfig?.diagnostics?.lifecycle);
8
+ }
9
+ function serverUrls(config) {
10
+ const servers = config?.opts.servers;
11
+ return Array.isArray(servers) ? servers.join(',') : servers;
12
+ }
13
+ function lifecycleAttributes(context, event, state) {
14
+ return {
15
+ 'xstate.state': state,
16
+ 'xstate.event': event.type,
17
+ 'nats.server.urls': serverUrls(context.natsConfig),
18
+ 'nats.debug': Boolean(context.natsConfig?.opts.debug),
19
+ 'nats.verbose': Boolean(context.natsConfig?.opts.verbose),
20
+ 'nats.max_retries': context.natsConfig?.maxRetries,
21
+ 'nats.auth.type': context.natsConfig?.auth?.type,
22
+ 'nats.has_connection': context.connection !== null,
23
+ 'nats.subject_manager_ready': context.subjectManagerReady,
24
+ 'nats.kv_manager_ready': context.kvManagerReady,
25
+ 'nats.configure_after_close': context.configureAfterClose,
26
+ 'nats.connect_after_close': context.connectAfterClose,
27
+ };
28
+ }
29
+ function recordLifecycle(context, event, state) {
30
+ if (!lifecycleDiagnosticsEnabled(context))
31
+ return;
32
+ const attributes = lifecycleAttributes(context, event, state);
33
+ console.debug('xstate-nats lifecycle', attributes);
34
+ withSpan('xstate.nats.lifecycle', 'xstate.nats.error', attributes, (span) => {
35
+ span.addEvent(`xstate.nats.${state}.${event.type}`, attributes);
36
+ });
37
+ }
38
+ function lifecycleAction(state) {
39
+ return ({ context, event }) => {
40
+ recordLifecycle(context, event, state);
41
+ };
42
+ }
5
43
  export const natsMachine = setup({
6
44
  types: {
7
45
  context: {},
@@ -95,6 +133,7 @@ export const natsMachine = setup({
95
133
  'NATS_CONNECTION.*': {
96
134
  actions: [
97
135
  ({ context, event }) => {
136
+ recordLifecycle(context, event, 'status');
98
137
  if (context.natsConfig?.opts.debug) {
99
138
  console.log('root received NATS status event', event);
100
139
  }
@@ -122,10 +161,11 @@ export const natsMachine = setup({
122
161
  entry: ['clearDeferredCloseActions'],
123
162
  on: {
124
163
  CONFIGURE: {
125
- actions: ['configureNats'],
164
+ actions: ['configureNats', lifecycleAction('configured')],
126
165
  },
127
166
  CONNECT: {
128
167
  target: 'connecting',
168
+ actions: lifecycleAction('configured'),
129
169
  },
130
170
  RESET: {
131
171
  target: 'not_configured',
@@ -141,7 +181,17 @@ export const natsMachine = setup({
141
181
  },
142
182
  },
143
183
  connecting: {
144
- entry: ['clearDeferredCloseActions'],
184
+ entry: ['clearDeferredCloseActions', lifecycleAction('connecting')],
185
+ on: {
186
+ CONFIGURE: {
187
+ target: 'connecting',
188
+ reenter: true,
189
+ actions: ['configureNats', lifecycleAction('connecting')],
190
+ },
191
+ CONNECT: {
192
+ actions: lifecycleAction('connecting'),
193
+ },
194
+ },
145
195
  invoke: [
146
196
  {
147
197
  src: 'connectToNats',
@@ -152,6 +202,7 @@ export const natsMachine = setup({
152
202
  onDone: {
153
203
  target: 'initialise_managers',
154
204
  actions: [
205
+ lifecycleAction('connecting'),
155
206
  assign({
156
207
  connection: ({ event }) => event.output,
157
208
  retries: (_) => 0,
@@ -160,16 +211,20 @@ export const natsMachine = setup({
160
211
  },
161
212
  onError: {
162
213
  target: 'error',
163
- actions: assign({
164
- error: ({ event }) => event.error,
165
- retries: ({ context }) => context.retries + 1,
166
- }),
214
+ actions: [
215
+ lifecycleAction('connecting'),
216
+ assign({
217
+ error: ({ event }) => event.error,
218
+ retries: ({ context }) => context.retries + 1,
219
+ }),
220
+ ],
167
221
  },
168
222
  },
169
223
  ],
170
224
  },
171
225
  initialise_managers: {
172
226
  entry: [
227
+ lifecycleAction('initialise_managers'),
173
228
  sendTo('subject', ({ context }) => ({
174
229
  type: 'SUBJECT.CONNECT',
175
230
  connection: context.connection,
@@ -177,11 +232,36 @@ export const natsMachine = setup({
177
232
  sendTo('kv', ({ context }) => ({ type: 'KV.CONNECT', connection: context.connection })),
178
233
  ],
179
234
  on: {
235
+ CONFIGURE: {
236
+ target: 'closing',
237
+ actions: [
238
+ 'configureNatsAfterClose',
239
+ 'reconnectAfterClose',
240
+ lifecycleAction('initialise_managers'),
241
+ ],
242
+ },
243
+ CONNECT: {
244
+ actions: lifecycleAction('initialise_managers'),
245
+ },
246
+ DISCONNECT: {
247
+ target: 'closing',
248
+ actions: ['clearDeferredCloseActions', lifecycleAction('initialise_managers')],
249
+ },
250
+ CLOSE: {
251
+ target: 'closing',
252
+ actions: ['clearDeferredCloseActions', lifecycleAction('initialise_managers')],
253
+ },
180
254
  'SUBJECT.CONNECTED': {
181
- actions: [assign({ subjectManagerReady: (_) => true })],
255
+ actions: [
256
+ assign({ subjectManagerReady: (_) => true }),
257
+ lifecycleAction('initialise_managers'),
258
+ ],
182
259
  },
183
260
  'KV.CONNECTED': {
184
- actions: [assign({ kvManagerReady: (_) => true })],
261
+ actions: [
262
+ assign({ kvManagerReady: (_) => true }),
263
+ lifecycleAction('initialise_managers'),
264
+ ],
185
265
  },
186
266
  },
187
267
  always: [
@@ -194,6 +274,7 @@ export const natsMachine = setup({
194
274
  connected: {
195
275
  entry: [
196
276
  'clearDeferredCloseActions',
277
+ lifecycleAction('connected'),
197
278
  (event) => {
198
279
  if (event.context.natsConfig?.opts.debug) {
199
280
  console.log('CONNECTED', event.context.connection?.getServer());
@@ -203,15 +284,15 @@ export const natsMachine = setup({
203
284
  on: {
204
285
  CONFIGURE: {
205
286
  target: 'closing',
206
- actions: ['configureNatsAfterClose', 'reconnectAfterClose'],
287
+ actions: ['configureNatsAfterClose', 'reconnectAfterClose', lifecycleAction('connected')],
207
288
  },
208
289
  DISCONNECT: {
209
290
  target: 'closing',
210
- actions: ['clearDeferredCloseActions'],
291
+ actions: ['clearDeferredCloseActions', lifecycleAction('connected')],
211
292
  },
212
293
  CLOSE: {
213
294
  target: 'closing',
214
- actions: ['clearDeferredCloseActions'],
295
+ actions: ['clearDeferredCloseActions', lifecycleAction('connected')],
215
296
  },
216
297
  'SUBJECT.*': {
217
298
  actions: [
@@ -253,6 +334,7 @@ export const natsMachine = setup({
253
334
  console.log('CLOSING', event.context.connection?.getServer());
254
335
  }
255
336
  },
337
+ lifecycleAction('closing'),
256
338
  sendTo('subject', { type: 'SUBJECT.DISCONNECTED' }),
257
339
  sendTo('kv', { type: 'KV.DISCONNECTED' }),
258
340
  ],
@@ -263,33 +345,40 @@ export const natsMachine = setup({
263
345
  {
264
346
  guard: 'shouldConnectAfterClose',
265
347
  target: 'connecting',
348
+ actions: lifecycleAction('closing'),
266
349
  },
267
350
  {
268
351
  guard: 'shouldConfigureAfterClose',
269
352
  target: 'configured',
353
+ actions: lifecycleAction('closing'),
270
354
  },
271
355
  {
272
356
  target: 'closed',
357
+ actions: lifecycleAction('closing'),
273
358
  },
274
359
  ],
275
360
  onError: {
276
361
  target: 'error',
277
- actions: assign({
278
- error: ({ event }) => event.error,
279
- }),
362
+ actions: [
363
+ lifecycleAction('closing'),
364
+ assign({
365
+ error: ({ event }) => event.error,
366
+ }),
367
+ ],
280
368
  },
281
369
  },
282
370
  on: {
283
371
  CONFIGURE: {
284
- actions: ['configureNatsAfterClose'],
372
+ actions: ['configureNatsAfterClose', lifecycleAction('closing')],
285
373
  },
286
374
  CONNECT: {
287
- actions: ['reconnectAfterClose'],
375
+ actions: ['reconnectAfterClose', lifecycleAction('closing')],
288
376
  },
289
377
  },
290
378
  },
291
379
  closed: {
292
380
  entry: [
381
+ lifecycleAction('closed'),
293
382
  assign({
294
383
  connection: (_) => null,
295
384
  subjectManagerReady: (_) => false,
@@ -301,7 +390,7 @@ export const natsMachine = setup({
301
390
  on: {
302
391
  CONFIGURE: {
303
392
  target: 'configured',
304
- actions: ['configureNats'],
393
+ actions: ['configureNats', lifecycleAction('closed')],
305
394
  },
306
395
  RESET: {
307
396
  target: 'not_configured',
@@ -309,6 +398,7 @@ export const natsMachine = setup({
309
398
  },
310
399
  CONNECT: {
311
400
  target: 'connecting',
401
+ actions: lifecycleAction('closed'),
312
402
  },
313
403
  },
314
404
  '*': {
@@ -320,11 +410,11 @@ export const natsMachine = setup({
320
410
  },
321
411
  },
322
412
  error: {
323
- entry: ['clearDeferredCloseActions'],
413
+ entry: ['clearDeferredCloseActions', lifecycleAction('error')],
324
414
  on: {
325
415
  CONFIGURE: {
326
416
  target: 'configured',
327
- actions: ['configureNats'],
417
+ actions: ['configureNats', lifecycleAction('error')],
328
418
  },
329
419
  RESET: {
330
420
  target: 'not_configured',
@@ -1 +1 @@
1
- {"version":3,"file":"root.js","sourceRoot":"","sources":["../../src/machines/root.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"root.js","sourceRoot":"","sources":["../../src/machines/root.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"subject.d.ts","sourceRoot":"","sources":["../../src/machines/subject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEjG,OAAO,EACL,aAAa,EACb,yBAAyB,EAI1B,MAAM,oBAAoB,CAAA;AAG3B,KAAK,cAAc,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAA;AAGrD,MAAM,MAAM,cAAc,GACtB;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,UAAU,EAAE,cAAc,CAAA;CAAE,GACvD;IAAE,IAAI,EAAE,mBAAmB,CAAA;CAAE,GAC7B;IAAE,IAAI,EAAE,sBAAsB,CAAA;CAAE,GAChC;IACE,IAAI,EAAE,iBAAiB,CAAA;IACvB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,GAAG,CAAA;IACZ,IAAI,CAAC,EAAE,cAAc,CAAA;IACrB,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,IAAI,CAAA;CAC/E,GACD;IACE,IAAI,EAAE,iBAAiB,CAAA;IACvB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,GAAG,CAAA;IACZ,IAAI,CAAC,EAAE,cAAc,CAAA;IACrB,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAA;IAC7B,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;CAClD,GACD;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,MAAM,EAAE,yBAAyB,CAAA;CAAE,GAChE;IAAE,IAAI,EAAE,qBAAqB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,yBAAyB,CAAA;CAAE,CAAA;AAEvC,MAAM,MAAM,MAAM,GAAG,cAAc,GAAG,cAAc,CAAA;AAEpD,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,MAAM,CAAA;IACX,gBAAgB,EAAE,cAAc,GAAG,IAAI,CAAA;IACvC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IACxC,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAA;IAC3D,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,KAAK,CAAA;CACd;AAED,eAAO,MAAM,mBAAmB;UAjCpB,iBAAiB;gBAAc,cAAc;;UAC7C,mBAAmB;;UACnB,sBAAsB;;UAEtB,iBAAiB;aACd,MAAM;aACN,GAAG;WACL,cAAc;sBACH,CAAC,MAAM,EAAE;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,IAAI;;UAGxE,iBAAiB;aACd,MAAM;aACN,GAAG;WACL,cAAc;cACX,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI;sBACX,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI;;UAE3C,mBAAmB;YAAU,yBAAyB;;UACtD,qBAAqB;aAAW,MAAM;;UACtC,yBAAyB;;;;;;;;;;;;;EA4KnC,CAAA"}
1
+ {"version":3,"file":"subject.d.ts","sourceRoot":"","sources":["../../src/machines/subject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEjG,OAAO,EACL,aAAa,EACb,yBAAyB,EAI1B,MAAM,oBAAoB,CAAA;AAG3B,KAAK,cAAc,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAA;AAGrD,MAAM,MAAM,cAAc,GACtB;IAAE,IAAI,EAAE,iBAAiB,CAAC;IAAC,UAAU,EAAE,cAAc,CAAA;CAAE,GACvD;IAAE,IAAI,EAAE,mBAAmB,CAAA;CAAE,GAC7B;IAAE,IAAI,EAAE,sBAAsB,CAAA;CAAE,GAChC;IACE,IAAI,EAAE,iBAAiB,CAAA;IACvB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,GAAG,CAAA;IACZ,IAAI,CAAC,EAAE,cAAc,CAAA;IACrB,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,IAAI,CAAA;CAC/E,GACD;IACE,IAAI,EAAE,iBAAiB,CAAA;IACvB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,GAAG,CAAA;IACZ,IAAI,CAAC,EAAE,cAAc,CAAA;IACrB,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAA;IAC7B,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;CAClD,GACD;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,MAAM,EAAE,yBAAyB,CAAA;CAAE,GAChE;IAAE,IAAI,EAAE,qBAAqB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAChD;IAAE,IAAI,EAAE,yBAAyB,CAAA;CAAE,CAAA;AAEvC,MAAM,MAAM,MAAM,GAAG,cAAc,GAAG,cAAc,CAAA;AAEpD,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,MAAM,CAAA;IACX,gBAAgB,EAAE,cAAc,GAAG,IAAI,CAAA;IACvC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IACxC,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAA;IAC3D,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,KAAK,CAAA;CACd;AAED,eAAO,MAAM,mBAAmB;UAjCpB,iBAAiB;gBAAc,cAAc;;UAC7C,mBAAmB;;UACnB,sBAAsB;;UAEtB,iBAAiB;aACd,MAAM;aACN,GAAG;WACL,cAAc;sBACH,CAAC,MAAM,EAAE;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,IAAI;;UAGxE,iBAAiB;aACd,MAAM;aACN,GAAG;WACL,cAAc;cACX,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI;sBACX,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI;;UAE3C,mBAAmB;YAAU,yBAAyB;;UACtD,qBAAqB;aAAW,MAAM;;UACtC,yBAAyB;;;;;;;;;;;;;EA4MnC,CAAA"}
@@ -57,6 +57,7 @@ export const subjectManagerLogic = setup({
57
57
  states: {
58
58
  subject_idle: {
59
59
  on: {
60
+ 'SUBJECT.DISCONNECTED': {},
60
61
  'SUBJECT.CONNECT': {
61
62
  target: 'subject_check_sync',
62
63
  actions: [
@@ -68,7 +69,6 @@ export const subjectManagerLogic = setup({
68
69
  },
69
70
  },
70
71
  subject_disconnecting: {
71
- target: 'subject_idle',
72
72
  entry: [
73
73
  // dont close the connection here, it will be closed by the nats connection machine
74
74
  assign({
@@ -77,6 +77,9 @@ export const subjectManagerLogic = setup({
77
77
  }),
78
78
  sendParent({ type: 'SUBJECT.DISCONNECTED' }),
79
79
  ],
80
+ always: {
81
+ target: 'subject_idle',
82
+ },
80
83
  },
81
84
  subject_connected: {
82
85
  entry: [sendParent({ type: 'SUBJECT.CONNECTED' })],
@@ -85,6 +88,17 @@ export const subjectManagerLogic = setup({
85
88
  guard: 'hasPendingSync',
86
89
  },
87
90
  on: {
91
+ 'SUBJECT.CONNECT': {
92
+ target: 'subject_check_sync',
93
+ actions: [
94
+ assign({
95
+ cachedConnection: ({ event }) => event.connection,
96
+ }),
97
+ ],
98
+ },
99
+ 'SUBJECT.DISCONNECTED': {
100
+ target: 'subject_disconnecting',
101
+ },
88
102
  'SUBJECT.REQUEST': {
89
103
  actions: assign(({ event, context }) => {
90
104
  subjectRequest({
@@ -118,6 +132,11 @@ export const subjectManagerLogic = setup({
118
132
  },
119
133
  },
120
134
  subject_check_sync: {
135
+ on: {
136
+ 'SUBJECT.DISCONNECTED': {
137
+ target: 'subject_disconnecting',
138
+ },
139
+ },
121
140
  always: [
122
141
  {
123
142
  target: 'subject_syncing',
@@ -129,6 +148,11 @@ export const subjectManagerLogic = setup({
129
148
  ],
130
149
  },
131
150
  subject_syncing: {
151
+ on: {
152
+ 'SUBJECT.DISCONNECTED': {
153
+ target: 'subject_disconnecting',
154
+ },
155
+ },
132
156
  entry: [
133
157
  ({ context }) => {
134
158
  // either going to be 0 or 1 (if there were multiple syncs pending)
@@ -153,8 +177,16 @@ export const subjectManagerLogic = setup({
153
177
  },
154
178
  subject_error: {
155
179
  on: {
180
+ 'SUBJECT.DISCONNECTED': {
181
+ target: 'subject_disconnecting',
182
+ },
156
183
  'SUBJECT.CONNECT': {
157
184
  target: 'subject_check_sync',
185
+ actions: [
186
+ assign({
187
+ cachedConnection: ({ event }) => event.connection,
188
+ }),
189
+ ],
158
190
  },
159
191
  },
160
192
  },
@@ -1 +1 @@
1
- {"version":3,"file":"subject.js","sourceRoot":"","sources":["../../src/machines/subject.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subject.js","sourceRoot":"","sources":["../../src/machines/subject.ts"],"names":[],"mappings":"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"}