@genesislcap/foundation-state-machine 14.490.0 → 14.491.0-GENC-1390.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -157,6 +157,13 @@ export interface Machine<TContext extends MachineContext, TEvent extends EventOb
|
|
|
157
157
|
* Stop the machine.
|
|
158
158
|
*/
|
|
159
159
|
stop(): void;
|
|
160
|
+
/**
|
|
161
|
+
* Capture a JSON-serialisable snapshot of the running machine — its state
|
|
162
|
+
* value, context (minus the framework's non-serialisable error plumbing), and
|
|
163
|
+
* any child actors — suitable for persistence. Pass it back via
|
|
164
|
+
* `start({ state })` to resume the machine in the exact same place.
|
|
165
|
+
*/
|
|
166
|
+
getPersistedSnapshot(): unknown;
|
|
160
167
|
/**
|
|
161
168
|
* Recreate the internal machine with the provided implementations.
|
|
162
169
|
*
|
|
@@ -321,6 +328,8 @@ export declare abstract class AbstractMachine<TContext extends MachineContext, T
|
|
|
321
328
|
start(options?: InterpreterOptions<typeof this.machine>): void;
|
|
322
329
|
/** {@inheritDoc Machine.stop} */
|
|
323
330
|
stop(): void;
|
|
331
|
+
/** {@inheritDoc Machine.getPersistedSnapshot} */
|
|
332
|
+
getPersistedSnapshot(): unknown;
|
|
324
333
|
/**
|
|
325
334
|
* @internal
|
|
326
335
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"machine.d.ts","sourceRoot":"","sources":["../../../src/core/machine.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"machine.d.ts","sourceRoot":"","sources":["../../../src/core/machine.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/core/machine.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __decorate } from "tslib";
|
|
1
|
+
import { __decorate, __rest } from "tslib";
|
|
2
2
|
import { createErrorMap } from '@genesislcap/foundation-utils';
|
|
3
3
|
import { defaultExecutionContext, observable, Observable, } from '@microsoft/fast-element';
|
|
4
4
|
import { Container } from '@microsoft/fast-foundation';
|
|
@@ -27,6 +27,21 @@ export class AbstractMachine {
|
|
|
27
27
|
this.stopActor();
|
|
28
28
|
this.unsubscribe();
|
|
29
29
|
}
|
|
30
|
+
/** {@inheritDoc Machine.getPersistedSnapshot} */
|
|
31
|
+
getPersistedSnapshot() {
|
|
32
|
+
var _a, _b, _c;
|
|
33
|
+
if (!this.actor) {
|
|
34
|
+
throw new Error('Call start() before getPersistedSnapshot()');
|
|
35
|
+
}
|
|
36
|
+
const persisted = (_b = (_a = this.actor).getPersistedState) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
37
|
+
if (!persisted) {
|
|
38
|
+
return persisted;
|
|
39
|
+
}
|
|
40
|
+
// Strip the non-serialisable error plumbing (an ErrorMap of live functions);
|
|
41
|
+
// it is re-created fresh on restore — see interpret().
|
|
42
|
+
const _d = (_c = persisted.context) !== null && _c !== void 0 ? _c : {}, { errors: _errors, error: _error } = _d, context = __rest(_d, ["errors", "error"]);
|
|
43
|
+
return Object.assign(Object.assign({}, persisted), { context });
|
|
44
|
+
}
|
|
30
45
|
/**
|
|
31
46
|
* @internal
|
|
32
47
|
*/
|
|
@@ -41,7 +56,15 @@ export class AbstractMachine {
|
|
|
41
56
|
this.startingState = options === null || options === void 0 ? void 0 : options.state;
|
|
42
57
|
this.startingContext = (options.input
|
|
43
58
|
? Object.assign(Object.assign({}, contextWithErrors), options.input) : contextWithErrors);
|
|
44
|
-
|
|
59
|
+
// Restoring from a persisted snapshot: xstate uses the snapshot's own
|
|
60
|
+
// context and ignores `input`, so re-establish the (non-serialised) error
|
|
61
|
+
// plumbing here — forcing `errors`/`error` to win over the snapshot — and
|
|
62
|
+
// default `children` so xstate's restoreState (`Object.keys(state.children)`)
|
|
63
|
+
// doesn't choke on a snapshot captured without it.
|
|
64
|
+
const persistedState = options === null || options === void 0 ? void 0 : options.state;
|
|
65
|
+
const restoreState = persistedState
|
|
66
|
+
? Object.assign(Object.assign({ children: {} }, persistedState), { context: Object.assign(Object.assign({}, persistedState.context), contextWithErrors) }) : undefined;
|
|
67
|
+
this.actor = interpret(this.machine, Object.assign(Object.assign({}, options), { input: this.startingContext, state: (restoreState !== null && restoreState !== void 0 ? restoreState : this.startingState) }));
|
|
45
68
|
this.snapshot = this.actor.getSnapshot();
|
|
46
69
|
this.state = this.snapshot.value;
|
|
47
70
|
this.context = this.snapshot.context;
|
|
@@ -80,13 +103,13 @@ export class AbstractMachine {
|
|
|
80
103
|
* @internal
|
|
81
104
|
*/
|
|
82
105
|
applySnapshot(snapshot = this.actor.getSnapshot()) {
|
|
83
|
-
var _a;
|
|
106
|
+
var _a, _b;
|
|
84
107
|
this.snapshot = snapshot;
|
|
85
108
|
this.state = this.snapshot.value;
|
|
86
109
|
this.context = this.snapshot.context;
|
|
87
110
|
this.meta = this.snapshot.meta;
|
|
88
111
|
this.errors = this.context.errors;
|
|
89
|
-
this.error = (_a = this.context.error) !== null && _a !== void 0 ? _a : this.errors.lastError;
|
|
112
|
+
this.error = (_a = this.context.error) !== null && _a !== void 0 ? _a : (_b = this.errors) === null || _b === void 0 ? void 0 : _b.lastError;
|
|
90
113
|
}
|
|
91
114
|
/**
|
|
92
115
|
* @internal
|
|
@@ -801,6 +801,37 @@
|
|
|
801
801
|
"isAbstract": false,
|
|
802
802
|
"name": "getMetaValuesByKey"
|
|
803
803
|
},
|
|
804
|
+
{
|
|
805
|
+
"kind": "Method",
|
|
806
|
+
"canonicalReference": "@genesislcap/foundation-state-machine!AbstractMachine#getPersistedSnapshot:member(1)",
|
|
807
|
+
"docComment": "/**\n * Capture a JSON-serialisable snapshot of the running machine — its state value, context (minus the framework's non-serialisable error plumbing), and any child actors — suitable for persistence. Pass it back via `start({ state })` to resume the machine in the exact same place.\n */\n",
|
|
808
|
+
"excerptTokens": [
|
|
809
|
+
{
|
|
810
|
+
"kind": "Content",
|
|
811
|
+
"text": "getPersistedSnapshot(): "
|
|
812
|
+
},
|
|
813
|
+
{
|
|
814
|
+
"kind": "Content",
|
|
815
|
+
"text": "unknown"
|
|
816
|
+
},
|
|
817
|
+
{
|
|
818
|
+
"kind": "Content",
|
|
819
|
+
"text": ";"
|
|
820
|
+
}
|
|
821
|
+
],
|
|
822
|
+
"isStatic": false,
|
|
823
|
+
"returnTypeTokenRange": {
|
|
824
|
+
"startIndex": 1,
|
|
825
|
+
"endIndex": 2
|
|
826
|
+
},
|
|
827
|
+
"releaseTag": "Public",
|
|
828
|
+
"isProtected": false,
|
|
829
|
+
"overloadIndex": 1,
|
|
830
|
+
"parameters": [],
|
|
831
|
+
"isOptional": false,
|
|
832
|
+
"isAbstract": false,
|
|
833
|
+
"name": "getPersistedSnapshot"
|
|
834
|
+
},
|
|
804
835
|
{
|
|
805
836
|
"kind": "Method",
|
|
806
837
|
"canonicalReference": "@genesislcap/foundation-state-machine!AbstractMachine#hasTag:member(1)",
|
|
@@ -5225,6 +5256,34 @@
|
|
|
5225
5256
|
],
|
|
5226
5257
|
"name": "getMetaValuesByKey"
|
|
5227
5258
|
},
|
|
5259
|
+
{
|
|
5260
|
+
"kind": "MethodSignature",
|
|
5261
|
+
"canonicalReference": "@genesislcap/foundation-state-machine!Machine#getPersistedSnapshot:member(1)",
|
|
5262
|
+
"docComment": "/**\n * Capture a JSON-serialisable snapshot of the running machine — its state value, context (minus the framework's non-serialisable error plumbing), and any child actors — suitable for persistence. Pass it back via `start({ state })` to resume the machine in the exact same place.\n */\n",
|
|
5263
|
+
"excerptTokens": [
|
|
5264
|
+
{
|
|
5265
|
+
"kind": "Content",
|
|
5266
|
+
"text": "getPersistedSnapshot(): "
|
|
5267
|
+
},
|
|
5268
|
+
{
|
|
5269
|
+
"kind": "Content",
|
|
5270
|
+
"text": "unknown"
|
|
5271
|
+
},
|
|
5272
|
+
{
|
|
5273
|
+
"kind": "Content",
|
|
5274
|
+
"text": ";"
|
|
5275
|
+
}
|
|
5276
|
+
],
|
|
5277
|
+
"isOptional": false,
|
|
5278
|
+
"returnTypeTokenRange": {
|
|
5279
|
+
"startIndex": 1,
|
|
5280
|
+
"endIndex": 2
|
|
5281
|
+
},
|
|
5282
|
+
"releaseTag": "Public",
|
|
5283
|
+
"overloadIndex": 1,
|
|
5284
|
+
"parameters": [],
|
|
5285
|
+
"name": "getPersistedSnapshot"
|
|
5286
|
+
},
|
|
5228
5287
|
{
|
|
5229
5288
|
"kind": "MethodSignature",
|
|
5230
5289
|
"canonicalReference": "@genesislcap/foundation-state-machine!Machine#hasTag:member(1)",
|
|
@@ -87,6 +87,8 @@ export declare abstract class AbstractMachine<TContext extends MachineContext, T
|
|
|
87
87
|
start(options?: InterpreterOptions<typeof AbstractMachine.machine>): void;
|
|
88
88
|
/** {@inheritDoc Machine.stop} */
|
|
89
89
|
stop(): void;
|
|
90
|
+
/** {@inheritDoc Machine.getPersistedSnapshot} */
|
|
91
|
+
getPersistedSnapshot(): unknown;
|
|
90
92
|
/**
|
|
91
93
|
* @internal
|
|
92
94
|
*/
|
|
@@ -686,6 +688,13 @@ export declare interface Machine<TContext extends MachineContext, TEvent extends
|
|
|
686
688
|
* Stop the machine.
|
|
687
689
|
*/
|
|
688
690
|
stop(): void;
|
|
691
|
+
/**
|
|
692
|
+
* Capture a JSON-serialisable snapshot of the running machine — its state
|
|
693
|
+
* value, context (minus the framework's non-serialisable error plumbing), and
|
|
694
|
+
* any child actors — suitable for persistence. Pass it back via
|
|
695
|
+
* `start({ state })` to resume the machine in the exact same place.
|
|
696
|
+
*/
|
|
697
|
+
getPersistedSnapshot(): unknown;
|
|
689
698
|
/**
|
|
690
699
|
* Recreate the internal machine with the provided implementations.
|
|
691
700
|
*
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@genesislcap/foundation-state-machine",
|
|
3
3
|
"description": "Genesis Foundation State Machine",
|
|
4
|
-
"version": "14.
|
|
4
|
+
"version": "14.491.0-GENC-1390.1",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"license": "SEE LICENSE IN license.txt",
|
|
7
7
|
"main": "dist/esm/index.js",
|
|
@@ -54,18 +54,18 @@
|
|
|
54
54
|
}
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
|
-
"@genesislcap/foundation-testing": "14.
|
|
58
|
-
"@genesislcap/genx": "14.
|
|
59
|
-
"@genesislcap/rollup-builder": "14.
|
|
60
|
-
"@genesislcap/ts-builder": "14.
|
|
61
|
-
"@genesislcap/uvu-playwright-builder": "14.
|
|
62
|
-
"@genesislcap/vite-builder": "14.
|
|
63
|
-
"@genesislcap/webpack-builder": "14.
|
|
57
|
+
"@genesislcap/foundation-testing": "14.491.0-GENC-1390.1",
|
|
58
|
+
"@genesislcap/genx": "14.491.0-GENC-1390.1",
|
|
59
|
+
"@genesislcap/rollup-builder": "14.491.0-GENC-1390.1",
|
|
60
|
+
"@genesislcap/ts-builder": "14.491.0-GENC-1390.1",
|
|
61
|
+
"@genesislcap/uvu-playwright-builder": "14.491.0-GENC-1390.1",
|
|
62
|
+
"@genesislcap/vite-builder": "14.491.0-GENC-1390.1",
|
|
63
|
+
"@genesislcap/webpack-builder": "14.491.0-GENC-1390.1"
|
|
64
64
|
},
|
|
65
65
|
"dependencies": {
|
|
66
|
-
"@genesislcap/foundation-comms": "14.
|
|
67
|
-
"@genesislcap/foundation-logger": "14.
|
|
68
|
-
"@genesislcap/foundation-utils": "14.
|
|
66
|
+
"@genesislcap/foundation-comms": "14.491.0-GENC-1390.1",
|
|
67
|
+
"@genesislcap/foundation-logger": "14.491.0-GENC-1390.1",
|
|
68
|
+
"@genesislcap/foundation-utils": "14.491.0-GENC-1390.1",
|
|
69
69
|
"@microsoft/fast-element": "1.14.0",
|
|
70
70
|
"@microsoft/fast-foundation": "2.50.0",
|
|
71
71
|
"cockatiel": "^3.1.1",
|
|
@@ -80,5 +80,5 @@
|
|
|
80
80
|
"publishConfig": {
|
|
81
81
|
"access": "public"
|
|
82
82
|
},
|
|
83
|
-
"gitHead": "
|
|
83
|
+
"gitHead": "ed95a678a68288884d53b845318ddfc2f433b823"
|
|
84
84
|
}
|