@jr200-labs/xstate-nats 0.9.8 → 0.9.10

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.
@@ -1 +1 @@
1
- {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../src/actions/connection.ts"],"names":[],"mappings":"AACA,OAAO,EACL,iBAAiB,EAEjB,GAAG,EACH,cAAc,EACd,MAAM,EAEP,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrC,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,SAAS,CAAA;AA8BzC,MAAM,MAAM,oBAAoB,GAC5B;IAAE,IAAI,EAAE,8BAA8B,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACxD;IAAE,IAAI,EAAE,2BAA2B,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,uBAAuB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACjD;IAAE,IAAI,EAAE,uBAAuB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACjD;IAAE,IAAI,EAAE,8BAA8B,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAE5D,eAAO,MAAM,aAAa;UAIP,iBAAiB;WAAS,UAAU;gCA+EtD,CAAA;AAED,eAAO,MAAM,cAAc;gBACgB,cAAc,GAAG,IAAI;gCAM/D,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,KAAK,GAAG,GAAG,OAAO,GAAG,IAAI,GAAG,KAAK,YAiBhE,CAAA"}
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../src/actions/connection.ts"],"names":[],"mappings":"AACA,OAAO,EACL,iBAAiB,EAEjB,GAAG,EACH,cAAc,EACd,MAAM,EAEP,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrC,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,SAAS,CAAA;AA8BzC,MAAM,MAAM,oBAAoB,GAC5B;IAAE,IAAI,EAAE,8BAA8B,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACxD;IAAE,IAAI,EAAE,2BAA2B,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,uBAAuB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACjD;IAAE,IAAI,EAAE,uBAAuB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACjD;IAAE,IAAI,EAAE,8BAA8B,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAE5D,eAAO,MAAM,aAAa;UAIP,iBAAiB;WAAS,UAAU;gCAoFtD,CAAA;AAED,eAAO,MAAM,cAAc;gBACgB,cAAc,GAAG,IAAI;gCAM/D,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,KAAK,GAAG,GAAG,OAAO,GAAG,IAAI,GAAG,KAAK,YAiBhE,CAAA"}
@@ -32,10 +32,13 @@ export const connectToNats = fromPromise(async ({ input, }) => {
32
32
  ...input.opts,
33
33
  ...makeAuthConfig(input.auth),
34
34
  };
35
+ const debug = Boolean(mergedOpts.debug);
35
36
  const nc = await wsconnect(mergedOpts);
36
37
  (async () => {
37
38
  for await (const status of nc.status()) {
38
- console.log('Status loop received status', status);
39
+ if (debug) {
40
+ console.log('Status loop received status', status);
41
+ }
39
42
  const { type } = status;
40
43
  switch (type) {
41
44
  case 'disconnect':
@@ -81,7 +84,9 @@ export const connectToNats = fromPromise(async ({ input, }) => {
81
84
  break;
82
85
  }
83
86
  }
84
- console.log('Exiting nats status loop');
87
+ if (debug) {
88
+ console.log('Exiting nats status loop');
89
+ }
85
90
  })();
86
91
  return nc;
87
92
  });
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/actions/connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/actions/connection.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"subject.d.ts","sourceRoot":"","sources":["../../src/actions/subject.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EACd,cAAc,EACd,cAAc,EACd,YAAY,EACZ,mBAAmB,EACpB,MAAM,oBAAoB,CAAA;AAS3B,MAAM,MAAM,yBAAyB,GAAG;IACtC,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAA;IAC7B,IAAI,CAAC,EAAE,mBAAmB,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAA;AAEtE,eAAO,MAAM,uBAAuB,GAAI,YAErC;IACD,KAAK,EAAE;QACL,UAAU,EAAE,cAAc,GAAG,IAAI,CAAA;QACjC,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;QAC/C,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAA;KAC5D,CAAA;CACF;;CA2EA,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,YAE5B;IACD,KAAK,EAAE;QACL,UAAU,EAAE,cAAc,GAAG,IAAI,CAAA;QACjC,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,GAAG,CAAA;QACZ,IAAI,CAAC,EAAE,cAAc,CAAA;QACrB,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAA;QAC7B,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;KAClD,CAAA;CACF,SA8CA,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,YAE5B;IACD,KAAK,EAAE;QACL,UAAU,EAAE,cAAc,GAAG,IAAI,CAAA;QACjC,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,GAAG,CAAA;QACZ,OAAO,CAAC,EAAE,cAAc,CAAA;QACxB,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE;YAAE,EAAE,EAAE,IAAI,CAAA;SAAE,GAAG;YAAE,EAAE,EAAE,KAAK,CAAC;YAAC,KAAK,EAAE,KAAK,CAAA;SAAE,KAAK,IAAI,CAAA;KAC/E,CAAA;CACF,SA+BA,CAAA"}
1
+ {"version":3,"file":"subject.d.ts","sourceRoot":"","sources":["../../src/actions/subject.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EACd,cAAc,EACd,cAAc,EACd,YAAY,EACZ,mBAAmB,EACpB,MAAM,oBAAoB,CAAA;AAS3B,MAAM,MAAM,yBAAyB,GAAG;IACtC,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAA;IAC7B,IAAI,CAAC,EAAE,mBAAmB,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAA;AAEtE,eAAO,MAAM,uBAAuB,GAAI,YAErC;IACD,KAAK,EAAE;QACL,UAAU,EAAE,cAAc,GAAG,IAAI,CAAA;QACjC,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;QAC/C,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAA;KAC5D,CAAA;CACF;;CA2EA,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,YAE5B;IACD,KAAK,EAAE;QACL,UAAU,EAAE,cAAc,GAAG,IAAI,CAAA;QACjC,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,GAAG,CAAA;QACZ,IAAI,CAAC,EAAE,cAAc,CAAA;QACrB,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAA;QAC7B,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAA;KAClD,CAAA;CACF,SAiDA,CAAA;AAED,eAAO,MAAM,cAAc,GAAI,YAE5B;IACD,KAAK,EAAE;QACL,UAAU,EAAE,cAAc,GAAG,IAAI,CAAA;QACjC,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,GAAG,CAAA;QACZ,OAAO,CAAC,EAAE,cAAc,CAAA;QACxB,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE;YAAE,EAAE,EAAE,IAAI,CAAA;SAAE,GAAG;YAAE,EAAE,EAAE,KAAK,CAAC;YAAC,KAAK,EAAE,KAAK,CAAA;SAAE,KAAK,IAAI,CAAA;KAC/E,CAAA;CACF,SA+BA,CAAA"}
@@ -94,8 +94,11 @@ export const subjectRequest = ({ input, }) => {
94
94
  // the original fire-and-forget API didn't propagate request errors
95
95
  // to callers and changing that now would be a breaking behaviour.
96
96
  recordError(span, 'xstate.nats.error', err);
97
- console.error(`RequestReply error for subject "${subject}"`, err);
98
- onRequestResult?.({ ok: false, error: err });
97
+ const error = err instanceof Error ? err : new Error(String(err));
98
+ onRequestResult?.({ ok: false, error });
99
+ if (!onRequestResult) {
100
+ console.error(`RequestReply error for subject "${subject}"`, err);
101
+ }
99
102
  });
100
103
  });
101
104
  };
@@ -1 +1 @@
1
- {"version":3,"file":"subject.js","sourceRoot":"","sources":["../../src/actions/subject.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subject.js","sourceRoot":"","sources":["../../src/actions/subject.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,8 @@ export interface Context {
14
14
  retries: number;
15
15
  subjectManagerReady: boolean;
16
16
  kvManagerReady: boolean;
17
+ configureAfterClose: boolean;
18
+ connectAfterClose: boolean;
17
19
  }
18
20
  export type ExternalEvents = {
19
21
  type: 'CONFIGURE';
@@ -495,9 +497,27 @@ export declare const natsMachine: import("xstate").StateMachine<Context, {
495
497
  }, {
496
498
  type: "doReset";
497
499
  params: import("xstate").NonReducibleUnknown;
500
+ } | {
501
+ type: "configureNats";
502
+ params: import("xstate").NonReducibleUnknown;
503
+ } | {
504
+ type: "configureNatsAfterClose";
505
+ params: import("xstate").NonReducibleUnknown;
506
+ } | {
507
+ type: "reconnectAfterClose";
508
+ params: import("xstate").NonReducibleUnknown;
509
+ } | {
510
+ type: "clearDeferredCloseActions";
511
+ params: import("xstate").NonReducibleUnknown;
498
512
  }, {
499
513
  type: "allManagersReady";
500
514
  params: unknown;
515
+ } | {
516
+ type: "shouldConnectAfterClose";
517
+ params: unknown;
518
+ } | {
519
+ type: "shouldConfigureAfterClose";
520
+ params: unknown;
501
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, {
502
522
  states: {
503
523
  readonly not_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;CACxB;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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwPjB,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;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"}
@@ -15,6 +15,43 @@ export const natsMachine = setup({
15
15
  retries: (_) => 0,
16
16
  subjectManagerReady: (_) => false,
17
17
  kvManagerReady: (_) => false,
18
+ configureAfterClose: (_) => false,
19
+ connectAfterClose: (_) => false,
20
+ }),
21
+ configureNats: assign({
22
+ natsConfig: ({ event }) => {
23
+ if (event.type !== 'CONFIGURE') {
24
+ return undefined;
25
+ }
26
+ return event.config;
27
+ },
28
+ connection: (_) => null,
29
+ error: (_) => undefined,
30
+ retries: (_) => 0,
31
+ subjectManagerReady: (_) => false,
32
+ kvManagerReady: (_) => false,
33
+ configureAfterClose: (_) => false,
34
+ connectAfterClose: (_) => false,
35
+ }),
36
+ configureNatsAfterClose: assign({
37
+ natsConfig: ({ event }) => {
38
+ if (event.type !== 'CONFIGURE') {
39
+ return undefined;
40
+ }
41
+ return event.config;
42
+ },
43
+ error: (_) => undefined,
44
+ retries: (_) => 0,
45
+ subjectManagerReady: (_) => false,
46
+ kvManagerReady: (_) => false,
47
+ configureAfterClose: (_) => true,
48
+ }),
49
+ reconnectAfterClose: assign({
50
+ connectAfterClose: (_) => true,
51
+ }),
52
+ clearDeferredCloseActions: assign({
53
+ configureAfterClose: (_) => false,
54
+ connectAfterClose: (_) => false,
18
55
  }),
19
56
  },
20
57
  guards: {
@@ -24,6 +61,12 @@ export const natsMachine = setup({
24
61
  const kvReady = context.kvManagerReady;
25
62
  return hasValidConnection && subjectReady && kvReady;
26
63
  },
64
+ shouldConnectAfterClose: ({ context }) => {
65
+ return context.connectAfterClose && context.natsConfig !== undefined;
66
+ },
67
+ shouldConfigureAfterClose: ({ context }) => {
68
+ return context.configureAfterClose && context.natsConfig !== undefined;
69
+ },
27
70
  },
28
71
  actors: {
29
72
  connectToNats: connectToNats,
@@ -41,6 +84,8 @@ export const natsMachine = setup({
41
84
  retries: 0,
42
85
  subjectManagerReady: false,
43
86
  kvManagerReady: false,
87
+ configureAfterClose: false,
88
+ connectAfterClose: false,
44
89
  },
45
90
  invoke: [
46
91
  { src: 'subject', id: 'subject', systemId: 'subject' },
@@ -49,8 +94,10 @@ export const natsMachine = setup({
49
94
  on: {
50
95
  'NATS_CONNECTION.*': {
51
96
  actions: [
52
- ({ event }) => {
53
- console.log('root received NATS status event', event);
97
+ ({ context, event }) => {
98
+ if (context.natsConfig?.opts.debug) {
99
+ console.log('root received NATS status event', event);
100
+ }
54
101
  },
55
102
  ],
56
103
  },
@@ -60,11 +107,7 @@ export const natsMachine = setup({
60
107
  on: {
61
108
  CONFIGURE: {
62
109
  target: 'configured',
63
- actions: [
64
- assign({
65
- natsConfig: ({ event }) => event.config,
66
- }),
67
- ],
110
+ actions: ['configureNats'],
68
111
  '*': {
69
112
  actions: [
70
113
  ({ event }) => {
@@ -76,7 +119,11 @@ export const natsMachine = setup({
76
119
  },
77
120
  },
78
121
  configured: {
122
+ entry: ['clearDeferredCloseActions'],
79
123
  on: {
124
+ CONFIGURE: {
125
+ actions: ['configureNats'],
126
+ },
80
127
  CONNECT: {
81
128
  target: 'connecting',
82
129
  },
@@ -94,6 +141,7 @@ export const natsMachine = setup({
94
141
  },
95
142
  },
96
143
  connecting: {
144
+ entry: ['clearDeferredCloseActions'],
97
145
  invoke: [
98
146
  {
99
147
  src: 'connectToNats',
@@ -145,21 +193,32 @@ export const natsMachine = setup({
145
193
  },
146
194
  connected: {
147
195
  entry: [
196
+ 'clearDeferredCloseActions',
148
197
  (event) => {
149
- console.log('CONNECTED', event.context.connection?.getServer());
198
+ if (event.context.natsConfig?.opts.debug) {
199
+ console.log('CONNECTED', event.context.connection?.getServer());
200
+ }
150
201
  },
151
202
  ],
152
203
  on: {
204
+ CONFIGURE: {
205
+ target: 'closing',
206
+ actions: ['configureNatsAfterClose', 'reconnectAfterClose'],
207
+ },
153
208
  DISCONNECT: {
154
209
  target: 'closing',
210
+ actions: ['clearDeferredCloseActions'],
155
211
  },
156
212
  CLOSE: {
157
213
  target: 'closing',
214
+ actions: ['clearDeferredCloseActions'],
158
215
  },
159
216
  'SUBJECT.*': {
160
217
  actions: [
161
- ({ event }) => {
162
- console.log('xstat-nats forwarding subject event', event);
218
+ ({ context, event }) => {
219
+ if (context.natsConfig?.opts.debug) {
220
+ console.log('xstate-nats forwarding subject event', event);
221
+ }
163
222
  },
164
223
  sendTo('subject', ({ event, context }) => {
165
224
  return { ...event, connection: context.connection };
@@ -168,8 +227,10 @@ export const natsMachine = setup({
168
227
  },
169
228
  'KV.*': {
170
229
  actions: [
171
- ({ event }) => {
172
- console.log('xstat-nats forwarding kv event', event);
230
+ ({ context, event }) => {
231
+ if (context.natsConfig?.opts.debug) {
232
+ console.log('xstate-nats forwarding kv event', event);
233
+ }
173
234
  },
174
235
  sendTo('kv', ({ event, context }) => {
175
236
  return { ...event, connection: context.connection };
@@ -188,7 +249,9 @@ export const natsMachine = setup({
188
249
  closing: {
189
250
  entry: [
190
251
  (event) => {
191
- console.log('CLOSING', event.context.connection?.getServer());
252
+ if (event.context.natsConfig?.opts.debug) {
253
+ console.log('CLOSING', event.context.connection?.getServer());
254
+ }
192
255
  },
193
256
  sendTo('subject', { type: 'SUBJECT.DISCONNECTED' }),
194
257
  sendTo('kv', { type: 'KV.DISCONNECTED' }),
@@ -196,9 +259,19 @@ export const natsMachine = setup({
196
259
  invoke: {
197
260
  src: 'disconnectNats',
198
261
  input: ({ context }) => ({ connection: context.connection }),
199
- onDone: {
200
- target: 'closed',
201
- },
262
+ onDone: [
263
+ {
264
+ guard: 'shouldConnectAfterClose',
265
+ target: 'connecting',
266
+ },
267
+ {
268
+ guard: 'shouldConfigureAfterClose',
269
+ target: 'configured',
270
+ },
271
+ {
272
+ target: 'closed',
273
+ },
274
+ ],
202
275
  onError: {
203
276
  target: 'error',
204
277
  actions: assign({
@@ -206,9 +279,30 @@ export const natsMachine = setup({
206
279
  }),
207
280
  },
208
281
  },
282
+ on: {
283
+ CONFIGURE: {
284
+ actions: ['configureNatsAfterClose'],
285
+ },
286
+ CONNECT: {
287
+ actions: ['reconnectAfterClose'],
288
+ },
289
+ },
209
290
  },
210
291
  closed: {
292
+ entry: [
293
+ assign({
294
+ connection: (_) => null,
295
+ subjectManagerReady: (_) => false,
296
+ kvManagerReady: (_) => false,
297
+ configureAfterClose: (_) => false,
298
+ connectAfterClose: (_) => false,
299
+ }),
300
+ ],
211
301
  on: {
302
+ CONFIGURE: {
303
+ target: 'configured',
304
+ actions: ['configureNats'],
305
+ },
212
306
  RESET: {
213
307
  target: 'not_configured',
214
308
  actions: ['doReset'],
@@ -226,7 +320,12 @@ export const natsMachine = setup({
226
320
  },
227
321
  },
228
322
  error: {
323
+ entry: ['clearDeferredCloseActions'],
229
324
  on: {
325
+ CONFIGURE: {
326
+ target: 'configured',
327
+ actions: ['configureNats'],
328
+ },
230
329
  RESET: {
231
330
  target: 'not_configured',
232
331
  actions: ['doReset'],
@@ -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":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC9C,OAAO,EAAE,cAAc,EAAsC,MAAM,MAAM,CAAA;AACzE,OAAO,EAAE,mBAAmB,EAA2C,MAAM,WAAW,CAAA;AACxF,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAyCrE,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC;IAC/B,KAAK,EAAE;QACL,OAAO,EAAE,EAAa;QACtB,MAAM,EAAE,EAAY;KACrB;IACD,OAAO,EAAE;QACP,OAAO,EAAE,MAAM,CAAC;YACd,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS;YAC5B,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI;YACvB,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS;YACvB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACjB,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;YACjC,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;YAC5B,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;YACjC,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;SAChC,CAAC;QACF,aAAa,EAAE,MAAM,CAAC;YACpB,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;gBACxB,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAC/B,OAAO,SAAS,CAAA;gBAClB,CAAC;gBACD,OAAO,KAAK,CAAC,MAAM,CAAA;YACrB,CAAC;YACD,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI;YACvB,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS;YACvB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACjB,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;YACjC,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;YAC5B,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;YACjC,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;SAChC,CAAC;QACF,uBAAuB,EAAE,MAAM,CAAC;YAC9B,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;gBACxB,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAC/B,OAAO,SAAS,CAAA;gBAClB,CAAC;gBACD,OAAO,KAAK,CAAC,MAAM,CAAA;YACrB,CAAC;YACD,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS;YACvB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACjB,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;YACjC,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;YAC5B,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI;SACjC,CAAC;QACF,mBAAmB,EAAE,MAAM,CAAC;YAC1B,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI;SAC/B,CAAC;QACF,yBAAyB,EAAE,MAAM,CAAC;YAChC,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;YACjC,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;SAChC,CAAC;KACH;IACD,MAAM,EAAE;QACN,gBAAgB,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;YAChC,MAAM,kBAAkB,GAAG,OAAO,CAAC,UAAU,KAAK,IAAI,CAAA;YACtD,MAAM,YAAY,GAAG,OAAO,CAAC,mBAAmB,CAAA;YAChD,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,CAAA;YACtC,OAAO,kBAAkB,IAAI,YAAY,IAAI,OAAO,CAAA;QACtD,CAAC;QACD,uBAAuB,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;YACvC,OAAO,OAAO,CAAC,iBAAiB,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,CAAA;QACtE,CAAC;QACD,yBAAyB,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;YACzC,OAAO,OAAO,CAAC,mBAAmB,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,CAAA;QACxE,CAAC;KACF;IACD,MAAM,EAAE;QACN,aAAa,EAAE,aAAa;QAC5B,cAAc,EAAE,cAAc;QAC9B,OAAO,EAAE,mBAAmB;QAC5B,EAAE,EAAE,cAAc;KACnB;CACF,CAAC,CAAC,aAAa,CAAC;IACf,mnCAAmnC;IACnnC,OAAO,EAAE,gBAAgB;IACzB,OAAO,EAAE;QACP,UAAU,EAAE,IAAI;QAChB,KAAK,EAAE,SAAS;QAChB,UAAU,EAAE,SAAS;QACrB,OAAO,EAAE,CAAC;QACV,mBAAmB,EAAE,KAAK;QAC1B,cAAc,EAAE,KAAK;QACrB,mBAAmB,EAAE,KAAK;QAC1B,iBAAiB,EAAE,KAAK;KACzB;IACD,MAAM,EAAE;QACN,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE;QACtD,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE;KACxB;IACD,EAAE,EAAE;QACF,mBAAmB,EAAE;YACnB,OAAO,EAAE;gBACP,CAAC,EAAE,OAAO,EAAE,KAAK,EAAoC,EAAE,EAAE;oBACvD,IAAI,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;wBACnC,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAA;oBACvD,CAAC;gBACH,CAAC;aACF;SACF;KACF;IACD,MAAM,EAAE;QACN,cAAc,EAAE;YACd,EAAE,EAAE;gBACF,SAAS,EAAE;oBACT,MAAM,EAAE,YAAY;oBACpB,OAAO,EAAE,CAAC,eAAe,CAAC;oBAC1B,GAAG,EAAE;wBACH,OAAO,EAAE;4BACP,CAAC,EAAE,KAAK,EAAkB,EAAE,EAAE;gCAC5B,OAAO,CAAC,KAAK,CAAC,+CAA+C,EAAE,KAAK,CAAC,CAAA;4BACvE,CAAC;yBACF;qBACF;iBACF;aACF;SACF;QACD,UAAU,EAAE;YACV,KAAK,EAAE,CAAC,2BAA2B,CAAC;YACpC,EAAE,EAAE;gBACF,SAAS,EAAE;oBACT,OAAO,EAAE,CAAC,eAAe,CAAC;iBAC3B;gBACD,OAAO,EAAE;oBACP,MAAM,EAAE,YAAY;iBACrB;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,gBAAgB;oBACxB,OAAO,EAAE,CAAC,SAAS,CAAC;iBACrB;gBACD,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,EAAE,KAAK,EAAkB,EAAE,EAAE;4BAC5B,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,KAAK,CAAC,CAAA;wBACnE,CAAC;qBACF;iBACF;aACF;SACF;QACD,UAAU,EAAE;YACV,KAAK,EAAE,CAAC,2BAA2B,CAAC;YACpC,MAAM,EAAE;gBACN;oBACE,GAAG,EAAE,eAAe;oBACpB,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;wBACvB,IAAI,EAAE,OAAO,CAAC,UAAW,CAAC,IAAI;wBAC9B,IAAI,EAAE,OAAO,CAAC,UAAW,CAAC,IAAI;qBAC/B,CAAC;oBACF,MAAM,EAAE;wBACN,MAAM,EAAE,qBAAqB;wBAC7B,OAAO,EAAE;4BACP,MAAM,CAAC;gCACL,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM;gCACvC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;6BAClB,CAAC;yBACH;qBACF;oBACD,OAAO,EAAE;wBACP,MAAM,EAAE,OAAO;wBACf,OAAO,EAAE,MAAM,CAAC;4BACd,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,KAAc;4BAC1C,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC;yBAC9C,CAAC;qBACH;iBACF;aACF;SACF;QACD,mBAAmB,EAAE;YACnB,KAAK,EAAE;gBACL,MAAM,CAAC,SAAS,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;oBAClC,IAAI,EAAE,iBAAiB;oBACvB,UAAU,EAAE,OAAO,CAAC,UAAW;iBAChC,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,CAAC,UAAW,EAAE,CAAC,CAAC;aACzF;YACD,EAAE,EAAE;gBACF,mBAAmB,EAAE;oBACnB,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;iBACxD;gBACD,cAAc,EAAE;oBACd,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;iBACnD;aACF;YACD,MAAM,EAAE;gBACN;oBACE,KAAK,EAAE,kBAAkB;oBACzB,MAAM,EAAE,WAAW;iBACpB;aACF;SACF;QACD,SAAS,EAAE;YACT,KAAK,EAAE;gBACL,2BAA2B;gBAC3B,CAAC,KAAK,EAAE,EAAE;oBACR,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;wBACzC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,CAAA;oBACjE,CAAC;gBACH,CAAC;aACF;YACD,EAAE,EAAE;gBACF,SAAS,EAAE;oBACT,MAAM,EAAE,SAAS;oBACjB,OAAO,EAAE,CAAC,yBAAyB,EAAE,qBAAqB,CAAC;iBAC5D;gBACD,UAAU,EAAE;oBACV,MAAM,EAAE,SAAS;oBACjB,OAAO,EAAE,CAAC,2BAA2B,CAAC;iBACvC;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,SAAS;oBACjB,OAAO,EAAE,CAAC,2BAA2B,CAAC;iBACvC;gBACD,WAAW,EAAE;oBACX,OAAO,EAAE;wBACP,CAAC,EAAE,OAAO,EAAE,KAAK,EAAoC,EAAE,EAAE;4BACvD,IAAI,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;gCACnC,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAA;4BAC5D,CAAC;wBACH,CAAC;wBACD,MAAM,CACJ,SAAS,EACT,CAAC,EAAE,KAAK,EAAE,OAAO,EAAsD,EAAE,EAAE;4BACzE,OAAO,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAA;wBACrD,CAAC,CACF;qBACF;iBACF;gBACD,MAAM,EAAE;oBACN,OAAO,EAAE;wBACP,CAAC,EAAE,OAAO,EAAE,KAAK,EAAoC,EAAE,EAAE;4BACvD,IAAI,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;gCACnC,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAA;4BACvD,CAAC;wBACH,CAAC;wBACD,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAiD,EAAE,EAAE;4BACjF,OAAO,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAA;wBACrD,CAAC,CAAC;qBACH;iBACF;gBACD,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,EAAE,KAAK,EAAkB,EAAE,EAAE;4BAC5B,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,KAAK,CAAC,CAAA;wBAClE,CAAC;qBACF;iBACF;aACF;SACF;QACD,OAAO,EAAE;YACP,KAAK,EAAE;gBACL,CAAC,KAAK,EAAE,EAAE;oBACR,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;wBACzC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,CAAA;oBAC/D,CAAC;gBACH,CAAC;gBACD,MAAM,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC;gBACnD,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;aAC1C;YACD,MAAM,EAAE;gBACN,GAAG,EAAE,gBAAgB;gBACrB,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC;gBAC5D,MAAM,EAAE;oBACN;wBACE,KAAK,EAAE,yBAAyB;wBAChC,MAAM,EAAE,YAAY;qBACrB;oBACD;wBACE,KAAK,EAAE,2BAA2B;wBAClC,MAAM,EAAE,YAAY;qBACrB;oBACD;wBACE,MAAM,EAAE,QAAQ;qBACjB;iBACF;gBACD,OAAO,EAAE;oBACP,MAAM,EAAE,OAAO;oBACf,OAAO,EAAE,MAAM,CAAC;wBACd,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,KAAc;qBAC3C,CAAC;iBACH;aACF;YACD,EAAE,EAAE;gBACF,SAAS,EAAE;oBACT,OAAO,EAAE,CAAC,yBAAyB,CAAC;iBACrC;gBACD,OAAO,EAAE;oBACP,OAAO,EAAE,CAAC,qBAAqB,CAAC;iBACjC;aACF;SACF;QACD,MAAM,EAAE;YACN,KAAK,EAAE;gBACL,MAAM,CAAC;oBACL,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI;oBACvB,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;oBACjC,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;oBAC5B,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;oBACjC,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;iBAChC,CAAC;aACH;YACD,EAAE,EAAE;gBACF,SAAS,EAAE;oBACT,MAAM,EAAE,YAAY;oBACpB,OAAO,EAAE,CAAC,eAAe,CAAC;iBAC3B;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,gBAAgB;oBACxB,OAAO,EAAE,CAAC,SAAS,CAAC;iBACrB;gBACD,OAAO,EAAE;oBACP,MAAM,EAAE,YAAY;iBACrB;aACF;YACD,GAAG,EAAE;gBACH,OAAO,EAAE;oBACP,CAAC,EAAE,KAAK,EAAkB,EAAE,EAAE;wBAC5B,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAA;oBAChE,CAAC;iBACF;aACF;SACF;QACD,KAAK,EAAE;YACL,KAAK,EAAE,CAAC,2BAA2B,CAAC;YACpC,EAAE,EAAE;gBACF,SAAS,EAAE;oBACT,MAAM,EAAE,YAAY;oBACpB,OAAO,EAAE,CAAC,eAAe,CAAC;iBAC3B;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,gBAAgB;oBACxB,OAAO,EAAE,CAAC,SAAS,CAAC;iBACrB;aACF;YACD,GAAG,EAAE;gBACH,OAAO,EAAE;oBACP,CAAC,EAAE,KAAK,EAAkB,EAAE,EAAE;wBAC5B,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAA;oBAC9D,CAAC;iBACF;aACF;SACF;KACF;CACF,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jr200-labs/xstate-nats",
3
- "version": "0.9.8",
3
+ "version": "0.9.10",
4
4
  "description": "XState machine for NATS",
5
5
  "license": "MIT",
6
6
  "author": "Jayshan Raghunandan",
@@ -222,7 +222,7 @@ describe('connectToNats', () => {
222
222
  const debugSpy = vi.spyOn(console, 'debug').mockImplementation(() => {})
223
223
 
224
224
  const actor = createActor(connectToNats, {
225
- input: { opts: { servers: ['ws://localhost:4222'] } },
225
+ input: { opts: { servers: ['ws://localhost:4222'], debug: true } },
226
226
  })
227
227
 
228
228
  const outputPromise = new Promise<any>((resolve) => {
@@ -55,13 +55,16 @@ export const connectToNats = fromPromise(
55
55
  ...input.opts,
56
56
  ...makeAuthConfig(input.auth),
57
57
  }
58
+ const debug = Boolean(mergedOpts.debug)
58
59
  const nc = await wsconnect(mergedOpts)
59
60
 
60
61
  // bug: self refers to 'this' promise, which is short-lived....
61
62
  // TODO: Emit status events into the machine instead
62
63
  ;(async () => {
63
64
  for await (const status of nc.status()) {
64
- console.log('Status loop received status', status)
65
+ if (debug) {
66
+ console.log('Status loop received status', status)
67
+ }
65
68
  const { type } = status
66
69
 
67
70
  switch (type) {
@@ -123,7 +126,9 @@ export const connectToNats = fromPromise(
123
126
  break
124
127
  }
125
128
  }
126
- console.log('Exiting nats status loop')
129
+ if (debug) {
130
+ console.log('Exiting nats status loop')
131
+ }
127
132
  })()
128
133
 
129
134
  return nc
@@ -344,7 +344,8 @@ describe('subjectRequest', () => {
344
344
 
345
345
  it('should handle request errors', async () => {
346
346
  const connection = createMockConnection()
347
- connection.request.mockRejectedValue(new Error('request failed'))
347
+ const requestError = new Error('request failed')
348
+ connection.request.mockRejectedValue(requestError)
348
349
 
349
350
  const callback = vi.fn()
350
351
  const onRequestResult = vi.fn()
@@ -360,6 +361,34 @@ describe('subjectRequest', () => {
360
361
  },
361
362
  })
362
363
 
364
+ await vi.waitFor(() => {
365
+ expect(onRequestResult).toHaveBeenCalledWith({ ok: false, error: requestError })
366
+ })
367
+
368
+ expect(consoleSpy).not.toHaveBeenCalledWith(
369
+ expect.stringContaining('RequestReply error'),
370
+ expect.any(Error),
371
+ )
372
+ consoleSpy.mockRestore()
373
+ expect(callback).not.toHaveBeenCalled()
374
+ })
375
+
376
+ it('should log request errors for callers without onRequestResult', async () => {
377
+ const connection = createMockConnection()
378
+ connection.request.mockRejectedValue(new Error('request failed'))
379
+
380
+ const callback = vi.fn()
381
+ const consoleSpy = vi.spyOn(console, 'error').mockImplementation(() => {})
382
+
383
+ subjectRequest({
384
+ input: {
385
+ connection,
386
+ subject: 'test.fail',
387
+ payload: {},
388
+ callback,
389
+ },
390
+ })
391
+
363
392
  await vi.waitFor(() => {
364
393
  expect(consoleSpy).toHaveBeenCalledWith(
365
394
  expect.stringContaining('RequestReply error'),
@@ -369,7 +398,6 @@ describe('subjectRequest', () => {
369
398
 
370
399
  consoleSpy.mockRestore()
371
400
  expect(callback).not.toHaveBeenCalled()
372
- expect(onRequestResult).toHaveBeenCalledWith({ ok: false, error: expect.any(Error) })
373
401
  })
374
402
  })
375
403
 
@@ -159,8 +159,11 @@ export const subjectRequest = ({
159
159
  // the original fire-and-forget API didn't propagate request errors
160
160
  // to callers and changing that now would be a breaking behaviour.
161
161
  recordError(span, 'xstate.nats.error', err)
162
- console.error(`RequestReply error for subject "${subject}"`, err)
163
- onRequestResult?.({ ok: false, error: err as Error })
162
+ const error = err instanceof Error ? err : new Error(String(err))
163
+ onRequestResult?.({ ok: false, error })
164
+ if (!onRequestResult) {
165
+ console.error(`RequestReply error for subject "${subject}"`, err)
166
+ }
164
167
  })
165
168
  },
166
169
  )
@@ -64,6 +64,17 @@ const mockConnection = {
64
64
  }),
65
65
  } as any
66
66
 
67
+ function createDeferred<T>() {
68
+ let resolve!: (value: T) => void
69
+ let reject!: (reason?: unknown) => void
70
+ const promise = new Promise<T>((res, rej) => {
71
+ resolve = res
72
+ reject = rej
73
+ })
74
+
75
+ return { promise, resolve, reject }
76
+ }
77
+
67
78
  function createTestMachine() {
68
79
  return natsMachine.provide({
69
80
  actors: {
@@ -230,6 +241,32 @@ describe('natsMachine', () => {
230
241
  actor.stop()
231
242
  })
232
243
 
244
+ it('should reconfigure from closed state', async () => {
245
+ const actor = createActor(createTestMachine())
246
+ actor.start()
247
+ configureAndConnect(actor)
248
+
249
+ await vi.waitFor(() => {
250
+ expect(actor.getSnapshot().value).toBe('connected')
251
+ })
252
+ actor.send({ type: 'DISCONNECT' })
253
+ await vi.waitFor(() => {
254
+ expect(actor.getSnapshot().value).toBe('closed')
255
+ })
256
+
257
+ actor.send({
258
+ type: 'CONFIGURE',
259
+ config: { opts: { debug: true, servers: ['ws://localhost:4223'] }, maxRetries: 5 },
260
+ })
261
+
262
+ expect(actor.getSnapshot().value).toBe('configured')
263
+ expect(actor.getSnapshot().context.natsConfig).toEqual({
264
+ opts: { debug: true, servers: ['ws://localhost:4223'] },
265
+ maxRetries: 5,
266
+ })
267
+ actor.stop()
268
+ })
269
+
233
270
  it('should reset from closed state', async () => {
234
271
  const actor = createActor(createTestMachine())
235
272
  actor.start()
@@ -293,6 +330,121 @@ describe('natsMachine', () => {
293
330
  actor.stop()
294
331
  })
295
332
 
333
+ it('should reconfigure from error state', async () => {
334
+ const failMachine = natsMachine.provide({
335
+ actors: {
336
+ connectToNats: fromPromise(async () => {
337
+ throw new Error('fail')
338
+ }),
339
+ disconnectNats: fromPromise(async () => {}),
340
+ subject: mockSubjectMachine,
341
+ kv: mockKvMachine,
342
+ },
343
+ })
344
+
345
+ const actor = createActor(failMachine)
346
+ actor.start()
347
+ configureAndConnect(actor)
348
+
349
+ await vi.waitFor(() => {
350
+ expect(actor.getSnapshot().value).toBe('error')
351
+ })
352
+
353
+ actor.send({
354
+ type: 'CONFIGURE',
355
+ config: { opts: { debug: true, servers: ['ws://localhost:4224'] }, maxRetries: 1 },
356
+ })
357
+
358
+ expect(actor.getSnapshot().value).toBe('configured')
359
+ expect(actor.getSnapshot().context.error).toBeUndefined()
360
+ expect(actor.getSnapshot().context.natsConfig).toEqual({
361
+ opts: { debug: true, servers: ['ws://localhost:4224'] },
362
+ maxRetries: 1,
363
+ })
364
+ actor.stop()
365
+ })
366
+
367
+ it('should reconnect when configured while connected', async () => {
368
+ const connectInputs: any[] = []
369
+ const machine = natsMachine.provide({
370
+ actors: {
371
+ connectToNats: fromPromise(async ({ input }) => {
372
+ connectInputs.push(input)
373
+ return mockConnection
374
+ }),
375
+ disconnectNats: fromPromise(async () => {}),
376
+ subject: mockSubjectMachine,
377
+ kv: mockKvMachine,
378
+ },
379
+ })
380
+ const actor = createActor(machine)
381
+ actor.start()
382
+ configureAndConnect(actor)
383
+
384
+ await vi.waitFor(() => {
385
+ expect(actor.getSnapshot().value).toBe('connected')
386
+ })
387
+
388
+ actor.send({
389
+ type: 'CONFIGURE',
390
+ config: { opts: { debug: true, servers: ['ws://localhost:4225'] }, maxRetries: 2 },
391
+ })
392
+
393
+ await vi.waitFor(() => {
394
+ expect(actor.getSnapshot().value).toBe('connected')
395
+ })
396
+ expect(connectInputs).toHaveLength(2)
397
+ expect(connectInputs[1].opts).toEqual({ debug: true, servers: ['ws://localhost:4225'] })
398
+ expect(actor.getSnapshot().context.natsConfig).toEqual({
399
+ opts: { debug: true, servers: ['ws://localhost:4225'] },
400
+ maxRetries: 2,
401
+ })
402
+ actor.stop()
403
+ })
404
+
405
+ it('should apply CONFIGURE and CONNECT sent while closing', async () => {
406
+ const disconnect = createDeferred<void>()
407
+ const connectInputs: any[] = []
408
+ const machine = natsMachine.provide({
409
+ actors: {
410
+ connectToNats: fromPromise(async ({ input }) => {
411
+ connectInputs.push(input)
412
+ return mockConnection
413
+ }),
414
+ disconnectNats: fromPromise(async () => disconnect.promise),
415
+ subject: mockSubjectMachine,
416
+ kv: mockKvMachine,
417
+ },
418
+ })
419
+ const actor = createActor(machine)
420
+ actor.start()
421
+ configureAndConnect(actor)
422
+
423
+ await vi.waitFor(() => {
424
+ expect(actor.getSnapshot().value).toBe('connected')
425
+ })
426
+ actor.send({ type: 'DISCONNECT' })
427
+ expect(actor.getSnapshot().value).toBe('closing')
428
+
429
+ actor.send({
430
+ type: 'CONFIGURE',
431
+ config: { opts: { debug: true, servers: ['ws://localhost:4226'] }, maxRetries: 2 },
432
+ })
433
+ actor.send({ type: 'CONNECT' })
434
+ disconnect.resolve()
435
+
436
+ await vi.waitFor(() => {
437
+ expect(actor.getSnapshot().value).toBe('connected')
438
+ })
439
+ expect(connectInputs).toHaveLength(2)
440
+ expect(connectInputs[1].opts).toEqual({ debug: true, servers: ['ws://localhost:4226'] })
441
+ expect(actor.getSnapshot().context.natsConfig).toEqual({
442
+ opts: { debug: true, servers: ['ws://localhost:4226'] },
443
+ maxRetries: 2,
444
+ })
445
+ actor.stop()
446
+ })
447
+
296
448
  it('should forward SUBJECT.* events when connected', async () => {
297
449
  const actor = createActor(createTestMachine())
298
450
  actor.start()
@@ -19,6 +19,8 @@ export interface Context {
19
19
  retries: number
20
20
  subjectManagerReady: boolean
21
21
  kvManagerReady: boolean
22
+ configureAfterClose: boolean
23
+ connectAfterClose: boolean
22
24
  }
23
25
 
24
26
  // internal events and events from nats connection
@@ -54,6 +56,43 @@ export const natsMachine = setup({
54
56
  retries: (_) => 0,
55
57
  subjectManagerReady: (_) => false,
56
58
  kvManagerReady: (_) => false,
59
+ configureAfterClose: (_) => false,
60
+ connectAfterClose: (_) => false,
61
+ }),
62
+ configureNats: assign({
63
+ natsConfig: ({ event }) => {
64
+ if (event.type !== 'CONFIGURE') {
65
+ return undefined
66
+ }
67
+ return event.config
68
+ },
69
+ connection: (_) => null,
70
+ error: (_) => undefined,
71
+ retries: (_) => 0,
72
+ subjectManagerReady: (_) => false,
73
+ kvManagerReady: (_) => false,
74
+ configureAfterClose: (_) => false,
75
+ connectAfterClose: (_) => false,
76
+ }),
77
+ configureNatsAfterClose: assign({
78
+ natsConfig: ({ event }) => {
79
+ if (event.type !== 'CONFIGURE') {
80
+ return undefined
81
+ }
82
+ return event.config
83
+ },
84
+ error: (_) => undefined,
85
+ retries: (_) => 0,
86
+ subjectManagerReady: (_) => false,
87
+ kvManagerReady: (_) => false,
88
+ configureAfterClose: (_) => true,
89
+ }),
90
+ reconnectAfterClose: assign({
91
+ connectAfterClose: (_) => true,
92
+ }),
93
+ clearDeferredCloseActions: assign({
94
+ configureAfterClose: (_) => false,
95
+ connectAfterClose: (_) => false,
57
96
  }),
58
97
  },
59
98
  guards: {
@@ -63,6 +102,12 @@ export const natsMachine = setup({
63
102
  const kvReady = context.kvManagerReady
64
103
  return hasValidConnection && subjectReady && kvReady
65
104
  },
105
+ shouldConnectAfterClose: ({ context }) => {
106
+ return context.connectAfterClose && context.natsConfig !== undefined
107
+ },
108
+ shouldConfigureAfterClose: ({ context }) => {
109
+ return context.configureAfterClose && context.natsConfig !== undefined
110
+ },
66
111
  },
67
112
  actors: {
68
113
  connectToNats: connectToNats,
@@ -80,6 +125,8 @@ export const natsMachine = setup({
80
125
  retries: 0,
81
126
  subjectManagerReady: false,
82
127
  kvManagerReady: false,
128
+ configureAfterClose: false,
129
+ connectAfterClose: false,
83
130
  },
84
131
  invoke: [
85
132
  { src: 'subject', id: 'subject', systemId: 'subject' },
@@ -88,8 +135,10 @@ export const natsMachine = setup({
88
135
  on: {
89
136
  'NATS_CONNECTION.*': {
90
137
  actions: [
91
- ({ event }: { event: any }) => {
92
- console.log('root received NATS status event', event)
138
+ ({ context, event }: { context: Context; event: any }) => {
139
+ if (context.natsConfig?.opts.debug) {
140
+ console.log('root received NATS status event', event)
141
+ }
93
142
  },
94
143
  ],
95
144
  },
@@ -99,11 +148,7 @@ export const natsMachine = setup({
99
148
  on: {
100
149
  CONFIGURE: {
101
150
  target: 'configured',
102
- actions: [
103
- assign({
104
- natsConfig: ({ event }) => event.config,
105
- }),
106
- ],
151
+ actions: ['configureNats'],
107
152
  '*': {
108
153
  actions: [
109
154
  ({ event }: { event: any }) => {
@@ -115,7 +160,11 @@ export const natsMachine = setup({
115
160
  },
116
161
  },
117
162
  configured: {
163
+ entry: ['clearDeferredCloseActions'],
118
164
  on: {
165
+ CONFIGURE: {
166
+ actions: ['configureNats'],
167
+ },
119
168
  CONNECT: {
120
169
  target: 'connecting',
121
170
  },
@@ -133,6 +182,7 @@ export const natsMachine = setup({
133
182
  },
134
183
  },
135
184
  connecting: {
185
+ entry: ['clearDeferredCloseActions'],
136
186
  invoke: [
137
187
  {
138
188
  src: 'connectToNats',
@@ -184,21 +234,32 @@ export const natsMachine = setup({
184
234
  },
185
235
  connected: {
186
236
  entry: [
237
+ 'clearDeferredCloseActions',
187
238
  (event) => {
188
- console.log('CONNECTED', event.context.connection?.getServer())
239
+ if (event.context.natsConfig?.opts.debug) {
240
+ console.log('CONNECTED', event.context.connection?.getServer())
241
+ }
189
242
  },
190
243
  ],
191
244
  on: {
245
+ CONFIGURE: {
246
+ target: 'closing',
247
+ actions: ['configureNatsAfterClose', 'reconnectAfterClose'],
248
+ },
192
249
  DISCONNECT: {
193
250
  target: 'closing',
251
+ actions: ['clearDeferredCloseActions'],
194
252
  },
195
253
  CLOSE: {
196
254
  target: 'closing',
255
+ actions: ['clearDeferredCloseActions'],
197
256
  },
198
257
  'SUBJECT.*': {
199
258
  actions: [
200
- ({ event }: any) => {
201
- console.log('xstat-nats forwarding subject event', event)
259
+ ({ context, event }: { context: Context; event: any }) => {
260
+ if (context.natsConfig?.opts.debug) {
261
+ console.log('xstate-nats forwarding subject event', event)
262
+ }
202
263
  },
203
264
  sendTo(
204
265
  'subject',
@@ -210,8 +271,10 @@ export const natsMachine = setup({
210
271
  },
211
272
  'KV.*': {
212
273
  actions: [
213
- ({ event }: any) => {
214
- console.log('xstat-nats forwarding kv event', event)
274
+ ({ context, event }: { context: Context; event: any }) => {
275
+ if (context.natsConfig?.opts.debug) {
276
+ console.log('xstate-nats forwarding kv event', event)
277
+ }
215
278
  },
216
279
  sendTo('kv', ({ event, context }: { event: KvExternalEvents; context: Context }) => {
217
280
  return { ...event, connection: context.connection }
@@ -230,7 +293,9 @@ export const natsMachine = setup({
230
293
  closing: {
231
294
  entry: [
232
295
  (event) => {
233
- console.log('CLOSING', event.context.connection?.getServer())
296
+ if (event.context.natsConfig?.opts.debug) {
297
+ console.log('CLOSING', event.context.connection?.getServer())
298
+ }
234
299
  },
235
300
  sendTo('subject', { type: 'SUBJECT.DISCONNECTED' }),
236
301
  sendTo('kv', { type: 'KV.DISCONNECTED' }),
@@ -238,9 +303,19 @@ export const natsMachine = setup({
238
303
  invoke: {
239
304
  src: 'disconnectNats',
240
305
  input: ({ context }) => ({ connection: context.connection }),
241
- onDone: {
242
- target: 'closed',
243
- },
306
+ onDone: [
307
+ {
308
+ guard: 'shouldConnectAfterClose',
309
+ target: 'connecting',
310
+ },
311
+ {
312
+ guard: 'shouldConfigureAfterClose',
313
+ target: 'configured',
314
+ },
315
+ {
316
+ target: 'closed',
317
+ },
318
+ ],
244
319
  onError: {
245
320
  target: 'error',
246
321
  actions: assign({
@@ -248,9 +323,30 @@ export const natsMachine = setup({
248
323
  }),
249
324
  },
250
325
  },
326
+ on: {
327
+ CONFIGURE: {
328
+ actions: ['configureNatsAfterClose'],
329
+ },
330
+ CONNECT: {
331
+ actions: ['reconnectAfterClose'],
332
+ },
333
+ },
251
334
  },
252
335
  closed: {
336
+ entry: [
337
+ assign({
338
+ connection: (_) => null,
339
+ subjectManagerReady: (_) => false,
340
+ kvManagerReady: (_) => false,
341
+ configureAfterClose: (_) => false,
342
+ connectAfterClose: (_) => false,
343
+ }),
344
+ ],
253
345
  on: {
346
+ CONFIGURE: {
347
+ target: 'configured',
348
+ actions: ['configureNats'],
349
+ },
254
350
  RESET: {
255
351
  target: 'not_configured',
256
352
  actions: ['doReset'],
@@ -268,7 +364,12 @@ export const natsMachine = setup({
268
364
  },
269
365
  },
270
366
  error: {
367
+ entry: ['clearDeferredCloseActions'],
271
368
  on: {
369
+ CONFIGURE: {
370
+ target: 'configured',
371
+ actions: ['configureNats'],
372
+ },
272
373
  RESET: {
273
374
  target: 'not_configured',
274
375
  actions: ['doReset'],