jssm 5.71.1 → 5.72.2
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/CHANGELOG.md +36 -42
- package/dist/es6/jssm.d.ts +33 -17
- package/dist/es6/jssm.js +27 -12
- package/dist/es6/jssm_types.d.ts +27 -23
- package/dist/es6/version.js +1 -1
- package/dist/jssm.es5.cjs.js +1 -1
- package/dist/jssm.es5.iife.js +1 -1
- package/jssm.d.ts +33 -17
- package/jssm_types.d.ts +27 -23
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
920 merges; 114 releases; Changlogging the last 10 commits; Full changelog at [CHANGELOG.long.md](CHANGELOG.long.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -22,13 +22,13 @@ Published tags:
|
|
|
22
22
|
|
|
23
23
|
|
|
24
24
|
|
|
25
|
-
## [Untagged] - 6/
|
|
25
|
+
## [Untagged] - 6/24/2022 4:55:33 PM
|
|
26
26
|
|
|
27
|
-
Commit [
|
|
27
|
+
Commit [547e35599ed312bf5300d3f1685e2cb16b80a73e](https://github.com/StoneCypher/jssm/commit/547e35599ed312bf5300d3f1685e2cb16b80a73e)
|
|
28
28
|
|
|
29
29
|
Author: `John Haugeland <stonecypher@gmail.com>`
|
|
30
30
|
|
|
31
|
-
*
|
|
31
|
+
* Can read data from outside, fixes StoneCypher/fsl#929
|
|
32
32
|
|
|
33
33
|
|
|
34
34
|
|
|
@@ -37,15 +37,13 @@ Author: `John Haugeland <stonecypher@gmail.com>`
|
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
|
|
40
|
-
|
|
40
|
+
## [Untagged] - 6/24/2022 4:08:35 PM
|
|
41
41
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
Commit [093db23b719161e35e477cc0fe7d9f1132bc28b8](https://github.com/StoneCypher/jssm/commit/093db23b719161e35e477cc0fe7d9f1132bc28b8)
|
|
42
|
+
Commit [a1c43e9f65f2fd8e856a2544f7c3056b4c06d9d3](https://github.com/StoneCypher/jssm/commit/a1c43e9f65f2fd8e856a2544f7c3056b4c06d9d3)
|
|
45
43
|
|
|
46
44
|
Author: `John Haugeland <stonecypher@gmail.com>`
|
|
47
45
|
|
|
48
|
-
*
|
|
46
|
+
* First steps towards being a Moore machine - initial data in constructor fixes StoneCypher/fsl#923 , can read in hooks fixes StoneCypher/fsl#924
|
|
49
47
|
|
|
50
48
|
|
|
51
49
|
|
|
@@ -54,15 +52,13 @@ Author: `John Haugeland <stonecypher@gmail.com>`
|
|
|
54
52
|
|
|
55
53
|
|
|
56
54
|
|
|
57
|
-
|
|
55
|
+
## [Untagged] - 6/23/2022 6:34:38 PM
|
|
58
56
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
Commit [13ee9eb71ca9ab868699e535abf6ba30c8ad5829](https://github.com/StoneCypher/jssm/commit/13ee9eb71ca9ab868699e535abf6ba30c8ad5829)
|
|
57
|
+
Commit [1dc7c24bfb651eec57fddc902f78db796f71a6c5](https://github.com/StoneCypher/jssm/commit/1dc7c24bfb651eec57fddc902f78db796f71a6c5)
|
|
62
58
|
|
|
63
59
|
Author: `John Haugeland <stonecypher@gmail.com>`
|
|
64
60
|
|
|
65
|
-
*
|
|
61
|
+
* Small documentation tweaks. First attempt to lodge on deno.land
|
|
66
62
|
|
|
67
63
|
|
|
68
64
|
|
|
@@ -71,13 +67,13 @@ Author: `John Haugeland <stonecypher@gmail.com>`
|
|
|
71
67
|
|
|
72
68
|
|
|
73
69
|
|
|
74
|
-
## [Untagged] - 6/
|
|
70
|
+
## [Untagged] - 6/23/2022 1:41:18 PM
|
|
75
71
|
|
|
76
|
-
Commit [
|
|
72
|
+
Commit [67c3240798d31933413aab27db7ea9fbb5de3b2a](https://github.com/StoneCypher/jssm/commit/67c3240798d31933413aab27db7ea9fbb5de3b2a)
|
|
77
73
|
|
|
78
74
|
Author: `John Haugeland <stonecypher@gmail.com>`
|
|
79
75
|
|
|
80
|
-
*
|
|
76
|
+
* Normalize arguments to hooks, fixes StoneCypher/fsl#895; more docs
|
|
81
77
|
|
|
82
78
|
|
|
83
79
|
|
|
@@ -86,15 +82,15 @@ Author: `John Haugeland <stonecypher@gmail.com>`
|
|
|
86
82
|
|
|
87
83
|
|
|
88
84
|
|
|
89
|
-
<a name="
|
|
85
|
+
<a name="5__70__36" />
|
|
90
86
|
|
|
91
|
-
## [5.70.
|
|
87
|
+
## [5.70.36] - 6/21/2022 6:53:36 PM
|
|
92
88
|
|
|
93
|
-
Commit [
|
|
89
|
+
Commit [093db23b719161e35e477cc0fe7d9f1132bc28b8](https://github.com/StoneCypher/jssm/commit/093db23b719161e35e477cc0fe7d9f1132bc28b8)
|
|
94
90
|
|
|
95
91
|
Author: `John Haugeland <stonecypher@gmail.com>`
|
|
96
92
|
|
|
97
|
-
*
|
|
93
|
+
* Another trivial build - this one to cause chain publishment
|
|
98
94
|
|
|
99
95
|
|
|
100
96
|
|
|
@@ -103,15 +99,15 @@ Author: `John Haugeland <stonecypher@gmail.com>`
|
|
|
103
99
|
|
|
104
100
|
|
|
105
101
|
|
|
106
|
-
<a name="
|
|
102
|
+
<a name="5__70__35" />
|
|
107
103
|
|
|
108
|
-
## [5.70.
|
|
104
|
+
## [5.70.35] - 6/19/2022 10:56:41 AM
|
|
109
105
|
|
|
110
|
-
Commit [
|
|
106
|
+
Commit [13ee9eb71ca9ab868699e535abf6ba30c8ad5829](https://github.com/StoneCypher/jssm/commit/13ee9eb71ca9ab868699e535abf6ba30c8ad5829)
|
|
111
107
|
|
|
112
108
|
Author: `John Haugeland <stonecypher@gmail.com>`
|
|
113
109
|
|
|
114
|
-
*
|
|
110
|
+
* new trigger with replaced token - this time with a bump
|
|
115
111
|
|
|
116
112
|
|
|
117
113
|
|
|
@@ -120,15 +116,13 @@ Author: `John Haugeland <stonecypher@gmail.com>`
|
|
|
120
116
|
|
|
121
117
|
|
|
122
118
|
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
## [5.70.32] - 6/18/2022 8:48:07 PM
|
|
119
|
+
## [Untagged] - 6/19/2022 10:37:04 AM
|
|
126
120
|
|
|
127
|
-
Commit [
|
|
121
|
+
Commit [b3e69d9745b92d845bedcfbc08f342997137af3d](https://github.com/StoneCypher/jssm/commit/b3e69d9745b92d845bedcfbc08f342997137af3d)
|
|
128
122
|
|
|
129
123
|
Author: `John Haugeland <stonecypher@gmail.com>`
|
|
130
124
|
|
|
131
|
-
*
|
|
125
|
+
* new trigger with replaced token
|
|
132
126
|
|
|
133
127
|
|
|
134
128
|
|
|
@@ -137,15 +131,15 @@ Author: `John Haugeland <stonecypher@gmail.com>`
|
|
|
137
131
|
|
|
138
132
|
|
|
139
133
|
|
|
140
|
-
<a name="
|
|
134
|
+
<a name="5__70__34" />
|
|
141
135
|
|
|
142
|
-
## [5.70.
|
|
136
|
+
## [5.70.34] - 6/18/2022 9:40:31 PM
|
|
143
137
|
|
|
144
|
-
Commit [
|
|
138
|
+
Commit [a0f295f060c7f08a8b10b2208dd1c95dc7f3c97a](https://github.com/StoneCypher/jssm/commit/a0f295f060c7f08a8b10b2208dd1c95dc7f3c97a)
|
|
145
139
|
|
|
146
140
|
Author: `John Haugeland <stonecypher@gmail.com>`
|
|
147
141
|
|
|
148
|
-
* another
|
|
142
|
+
* another trigger commit with mild doc extension
|
|
149
143
|
|
|
150
144
|
|
|
151
145
|
|
|
@@ -154,15 +148,15 @@ Author: `John Haugeland <stonecypher@gmail.com>`
|
|
|
154
148
|
|
|
155
149
|
|
|
156
150
|
|
|
157
|
-
<a name="
|
|
151
|
+
<a name="5__70__33" />
|
|
158
152
|
|
|
159
|
-
## [5.70.
|
|
153
|
+
## [5.70.33] - 6/18/2022 8:57:42 PM
|
|
160
154
|
|
|
161
|
-
Commit [
|
|
155
|
+
Commit [ca254f455f2c19f21e77834e993c310e05272822](https://github.com/StoneCypher/jssm/commit/ca254f455f2c19f21e77834e993c310e05272822)
|
|
162
156
|
|
|
163
157
|
Author: `John Haugeland <stonecypher@gmail.com>`
|
|
164
158
|
|
|
165
|
-
*
|
|
159
|
+
* holy another facile build for triggering, batman
|
|
166
160
|
|
|
167
161
|
|
|
168
162
|
|
|
@@ -171,12 +165,12 @@ Author: `John Haugeland <stonecypher@gmail.com>`
|
|
|
171
165
|
|
|
172
166
|
|
|
173
167
|
|
|
174
|
-
<a name="
|
|
168
|
+
<a name="5__70__32" />
|
|
175
169
|
|
|
176
|
-
## [5.70.
|
|
170
|
+
## [5.70.32] - 6/18/2022 8:48:07 PM
|
|
177
171
|
|
|
178
|
-
Commit [
|
|
172
|
+
Commit [8115e8b62d8ac1cff3c7eb07afabced097f1be42](https://github.com/StoneCypher/jssm/commit/8115e8b62d8ac1cff3c7eb07afabced097f1be42)
|
|
179
173
|
|
|
180
174
|
Author: `John Haugeland <stonecypher@gmail.com>`
|
|
181
175
|
|
|
182
|
-
*
|
|
176
|
+
* yet another small commit as a trigger, this time to get the extended diff
|
package/dist/es6/jssm.d.ts
CHANGED
|
@@ -208,6 +208,7 @@ declare class Machine<mDT> {
|
|
|
208
208
|
_raw_state_declaration?: Array<Object>;
|
|
209
209
|
_state_declarations: Map<StateType, JssmStateDeclaration>;
|
|
210
210
|
_instance_name: string;
|
|
211
|
+
_data?: mDT;
|
|
211
212
|
_graph_layout: JssmLayout;
|
|
212
213
|
_dot_preamble: string;
|
|
213
214
|
_arrange_declaration: Array<Array<StateType>>;
|
|
@@ -227,12 +228,12 @@ declare class Machine<mDT> {
|
|
|
227
228
|
_entry_hooks: Map<string, Function>;
|
|
228
229
|
_exit_hooks: Map<string, Function>;
|
|
229
230
|
_global_action_hooks: Map<string, Function>;
|
|
230
|
-
_any_action_hook: HookHandler | undefined;
|
|
231
|
-
_standard_transition_hook: HookHandler | undefined;
|
|
232
|
-
_main_transition_hook: HookHandler | undefined;
|
|
233
|
-
_forced_transition_hook: HookHandler | undefined;
|
|
234
|
-
_any_transition_hook: HookHandler | undefined;
|
|
235
|
-
constructor({ start_states, complete, transitions, machine_author, machine_comment, machine_contributor, machine_definition, machine_language, machine_license, machine_name, machine_version, state_declaration, fsl_version, dot_preamble, arrange_declaration, arrange_start_declaration, arrange_end_declaration, theme, flow, graph_layout, instance_name }: JssmGenericConfig<mDT>);
|
|
231
|
+
_any_action_hook: HookHandler<mDT> | undefined;
|
|
232
|
+
_standard_transition_hook: HookHandler<mDT> | undefined;
|
|
233
|
+
_main_transition_hook: HookHandler<mDT> | undefined;
|
|
234
|
+
_forced_transition_hook: HookHandler<mDT> | undefined;
|
|
235
|
+
_any_transition_hook: HookHandler<mDT> | undefined;
|
|
236
|
+
constructor({ start_states, complete, transitions, machine_author, machine_comment, machine_contributor, machine_definition, machine_language, machine_license, machine_name, machine_version, state_declaration, fsl_version, dot_preamble, arrange_declaration, arrange_start_declaration, arrange_end_declaration, theme, flow, graph_layout, instance_name, data }: JssmGenericConfig<mDT>);
|
|
236
237
|
/********
|
|
237
238
|
*
|
|
238
239
|
* Internal method for fabricating states. Not meant for external use.
|
|
@@ -259,6 +260,21 @@ declare class Machine<mDT> {
|
|
|
259
260
|
*
|
|
260
261
|
*/
|
|
261
262
|
state(): StateType;
|
|
263
|
+
/*********
|
|
264
|
+
*
|
|
265
|
+
* Get the current data of a machine.
|
|
266
|
+
*
|
|
267
|
+
* ```typescript
|
|
268
|
+
* import * as jssm from 'jssm';
|
|
269
|
+
*
|
|
270
|
+
* const switch = jssm.from('on <=> off;', {data: 1});
|
|
271
|
+
* console.log( switch.data() ); // 1
|
|
272
|
+
* ```
|
|
273
|
+
*
|
|
274
|
+
* @typeparam mDT The type of the machine data member; usually omitted
|
|
275
|
+
*
|
|
276
|
+
*/
|
|
277
|
+
data(): mDT;
|
|
262
278
|
/********
|
|
263
279
|
*
|
|
264
280
|
* Check whether a given state is final (either has no exits or is marked
|
|
@@ -522,17 +538,17 @@ declare class Machine<mDT> {
|
|
|
522
538
|
is_complete(): boolean;
|
|
523
539
|
state_is_complete(whichState: StateType): boolean;
|
|
524
540
|
has_completes(): boolean;
|
|
525
|
-
set_hook(HookDesc: HookDescription): void;
|
|
526
|
-
hook(from: string, to: string, handler: HookHandler): Machine<mDT>;
|
|
527
|
-
hook_action(from: string, to: string, action: string, handler: HookHandler): Machine<mDT>;
|
|
528
|
-
hook_global_action(action: string, handler: HookHandler): Machine<mDT>;
|
|
529
|
-
hook_any_action(handler: HookHandler): Machine<mDT>;
|
|
530
|
-
hook_standard_transition(handler: HookHandler): Machine<mDT>;
|
|
531
|
-
hook_main_transition(handler: HookHandler): Machine<mDT>;
|
|
532
|
-
hook_forced_transition(handler: HookHandler): Machine<mDT>;
|
|
533
|
-
hook_any_transition(handler: HookHandler): Machine<mDT>;
|
|
534
|
-
hook_entry(to: string, handler: HookHandler): Machine<mDT>;
|
|
535
|
-
hook_exit(from: string, handler: HookHandler): Machine<mDT>;
|
|
541
|
+
set_hook(HookDesc: HookDescription<mDT>): void;
|
|
542
|
+
hook(from: string, to: string, handler: HookHandler<mDT>): Machine<mDT>;
|
|
543
|
+
hook_action(from: string, to: string, action: string, handler: HookHandler<mDT>): Machine<mDT>;
|
|
544
|
+
hook_global_action(action: string, handler: HookHandler<mDT>): Machine<mDT>;
|
|
545
|
+
hook_any_action(handler: HookHandler<mDT>): Machine<mDT>;
|
|
546
|
+
hook_standard_transition(handler: HookHandler<mDT>): Machine<mDT>;
|
|
547
|
+
hook_main_transition(handler: HookHandler<mDT>): Machine<mDT>;
|
|
548
|
+
hook_forced_transition(handler: HookHandler<mDT>): Machine<mDT>;
|
|
549
|
+
hook_any_transition(handler: HookHandler<mDT>): Machine<mDT>;
|
|
550
|
+
hook_entry(to: string, handler: HookHandler<mDT>): Machine<mDT>;
|
|
551
|
+
hook_exit(from: string, handler: HookHandler<mDT>): Machine<mDT>;
|
|
536
552
|
edges_between(from: string, to: string): JssmTransition<mDT>[];
|
|
537
553
|
transition_impl(newStateOrAction: StateType, newData: mDT | undefined, wasForced: boolean, wasAction: boolean): boolean;
|
|
538
554
|
/********
|
package/dist/es6/jssm.js
CHANGED
|
@@ -534,7 +534,7 @@ function transfer_state_properties(state_decl) {
|
|
|
534
534
|
// TODO add a lotta docblock here
|
|
535
535
|
class Machine {
|
|
536
536
|
// whargarbl this badly needs to be broken up, monolith master
|
|
537
|
-
constructor({ start_states, complete = [], transitions, machine_author, machine_comment, machine_contributor, machine_definition, machine_language, machine_license, machine_name, machine_version, state_declaration, fsl_version, dot_preamble = undefined, arrange_declaration = [], arrange_start_declaration = [], arrange_end_declaration = [], theme = 'default', flow = 'down', graph_layout = 'dot', instance_name }) {
|
|
537
|
+
constructor({ start_states, complete = [], transitions, machine_author, machine_comment, machine_contributor, machine_definition, machine_language, machine_license, machine_name, machine_version, state_declaration, fsl_version, dot_preamble = undefined, arrange_declaration = [], arrange_start_declaration = [], arrange_end_declaration = [], theme = 'default', flow = 'down', graph_layout = 'dot', instance_name, data }) {
|
|
538
538
|
this._instance_name = instance_name;
|
|
539
539
|
this._state = start_states[0];
|
|
540
540
|
this._states = new Map();
|
|
@@ -581,6 +581,7 @@ class Machine {
|
|
|
581
581
|
this._forced_transition_hook = undefined;
|
|
582
582
|
this._any_transition_hook = undefined;
|
|
583
583
|
this._standard_transition_hook = undefined;
|
|
584
|
+
this._data = data;
|
|
584
585
|
if (state_declaration) {
|
|
585
586
|
state_declaration.map((state_decl) => {
|
|
586
587
|
if (this._state_declarations.has(state_decl.state)) { // no repeats
|
|
@@ -718,6 +719,30 @@ class Machine {
|
|
|
718
719
|
return true; // todo whargarbl
|
|
719
720
|
}
|
|
720
721
|
*/
|
|
722
|
+
/*********
|
|
723
|
+
*
|
|
724
|
+
* Get the current data of a machine.
|
|
725
|
+
*
|
|
726
|
+
* ```typescript
|
|
727
|
+
* import * as jssm from 'jssm';
|
|
728
|
+
*
|
|
729
|
+
* const switch = jssm.from('on <=> off;', {data: 1});
|
|
730
|
+
* console.log( switch.data() ); // 1
|
|
731
|
+
* ```
|
|
732
|
+
*
|
|
733
|
+
* @typeparam mDT The type of the machine data member; usually omitted
|
|
734
|
+
*
|
|
735
|
+
*/
|
|
736
|
+
data() {
|
|
737
|
+
return this._data;
|
|
738
|
+
}
|
|
739
|
+
/* whargarbl todo major
|
|
740
|
+
when we reimplement this, reintroduce this change to the is_final call
|
|
741
|
+
|
|
742
|
+
is_changing(): boolean {
|
|
743
|
+
return true; // todo whargarbl
|
|
744
|
+
}
|
|
745
|
+
*/
|
|
721
746
|
/********
|
|
722
747
|
*
|
|
723
748
|
* Check whether a given state is final (either has no exits or is marked
|
|
@@ -1229,52 +1254,42 @@ class Machine {
|
|
|
1229
1254
|
}
|
|
1230
1255
|
}
|
|
1231
1256
|
hook(from, to, handler) {
|
|
1232
|
-
// TODO: should this throw if setting the hook fails, or ignore it and continue?
|
|
1233
1257
|
this.set_hook({ kind: 'hook', from, to, handler });
|
|
1234
1258
|
return this;
|
|
1235
1259
|
}
|
|
1236
1260
|
hook_action(from, to, action, handler) {
|
|
1237
|
-
// TODO: should this throw if setting the hook fails, or ignore it and continue?
|
|
1238
1261
|
this.set_hook({ kind: 'named', from, to, action, handler });
|
|
1239
1262
|
return this;
|
|
1240
1263
|
}
|
|
1241
1264
|
hook_global_action(action, handler) {
|
|
1242
|
-
// TODO: should this throw if setting the hook fails, or ignore it and continue?
|
|
1243
1265
|
this.set_hook({ kind: 'global action', action, handler });
|
|
1244
1266
|
return this;
|
|
1245
1267
|
}
|
|
1246
1268
|
hook_any_action(handler) {
|
|
1247
|
-
// TODO: should this throw if setting the hook fails, or ignore it and continue?
|
|
1248
1269
|
this.set_hook({ kind: 'any action', handler });
|
|
1249
1270
|
return this;
|
|
1250
1271
|
}
|
|
1251
1272
|
hook_standard_transition(handler) {
|
|
1252
|
-
// TODO: should this throw if setting the hook fails, or ignore it and continue?
|
|
1253
1273
|
this.set_hook({ kind: 'standard transition', handler });
|
|
1254
1274
|
return this;
|
|
1255
1275
|
}
|
|
1256
1276
|
hook_main_transition(handler) {
|
|
1257
|
-
// TODO: should this throw if setting the hook fails, or ignore it and continue?
|
|
1258
1277
|
this.set_hook({ kind: 'main transition', handler });
|
|
1259
1278
|
return this;
|
|
1260
1279
|
}
|
|
1261
1280
|
hook_forced_transition(handler) {
|
|
1262
|
-
// TODO: should this throw if setting the hook fails, or ignore it and continue?
|
|
1263
1281
|
this.set_hook({ kind: 'forced transition', handler });
|
|
1264
1282
|
return this;
|
|
1265
1283
|
}
|
|
1266
1284
|
hook_any_transition(handler) {
|
|
1267
|
-
// TODO: should this throw if setting the hook fails, or ignore it and continue?
|
|
1268
1285
|
this.set_hook({ kind: 'any transition', handler });
|
|
1269
1286
|
return this;
|
|
1270
1287
|
}
|
|
1271
1288
|
hook_entry(to, handler) {
|
|
1272
|
-
// TODO: should this throw if setting the hook fails, or ignore it and continue?
|
|
1273
1289
|
this.set_hook({ kind: 'entry', to, handler });
|
|
1274
1290
|
return this;
|
|
1275
1291
|
}
|
|
1276
1292
|
hook_exit(from, handler) {
|
|
1277
|
-
// TODO: should this throw if setting the hook fails, or ignore it and continue?
|
|
1278
1293
|
this.set_hook({ kind: 'exit', from, handler });
|
|
1279
1294
|
return this;
|
|
1280
1295
|
}
|
|
@@ -1317,7 +1332,7 @@ class Machine {
|
|
|
1317
1332
|
// todo major incomplete whargarbl comeback
|
|
1318
1333
|
if (valid) {
|
|
1319
1334
|
if (this._has_hooks) {
|
|
1320
|
-
const hook_args = { action: fromAction, from: this._state, to: newState, forced: wasForced };
|
|
1335
|
+
const hook_args = { data: this._data, action: fromAction, from: this._state, to: newState, forced: wasForced };
|
|
1321
1336
|
if (wasAction) {
|
|
1322
1337
|
// 1. any action hook
|
|
1323
1338
|
if (this._any_action_hook !== undefined) {
|
package/dist/es6/jssm_types.d.ts
CHANGED
|
@@ -149,57 +149,61 @@ declare type JssmCompileSeStart<DataType> = {
|
|
|
149
149
|
};
|
|
150
150
|
declare type JssmParseTree = Array<JssmCompileSeStart<StateType>>;
|
|
151
151
|
declare type JssmParseFunctionType = (string: any) => JssmParseTree;
|
|
152
|
-
declare type
|
|
153
|
-
declare type BasicHookDescription = {
|
|
152
|
+
declare type BasicHookDescription<mDT> = {
|
|
154
153
|
kind: 'hook';
|
|
155
154
|
from: string;
|
|
156
155
|
to: string;
|
|
157
|
-
handler: HookHandler
|
|
156
|
+
handler: HookHandler<mDT>;
|
|
158
157
|
};
|
|
159
|
-
declare type HookDescriptionWithAction = {
|
|
158
|
+
declare type HookDescriptionWithAction<mDT> = {
|
|
160
159
|
kind: 'named';
|
|
161
160
|
from: string;
|
|
162
161
|
to: string;
|
|
163
162
|
action: string;
|
|
164
|
-
handler: HookHandler
|
|
163
|
+
handler: HookHandler<mDT>;
|
|
165
164
|
};
|
|
166
|
-
declare type StandardTransitionHook = {
|
|
165
|
+
declare type StandardTransitionHook<mDT> = {
|
|
167
166
|
kind: 'standard transition';
|
|
168
|
-
handler: HookHandler
|
|
167
|
+
handler: HookHandler<mDT>;
|
|
169
168
|
};
|
|
170
|
-
declare type MainTransitionHook = {
|
|
169
|
+
declare type MainTransitionHook<mDT> = {
|
|
171
170
|
kind: 'main transition';
|
|
172
|
-
handler: HookHandler
|
|
171
|
+
handler: HookHandler<mDT>;
|
|
173
172
|
};
|
|
174
|
-
declare type ForcedTransitionHook = {
|
|
173
|
+
declare type ForcedTransitionHook<mDT> = {
|
|
175
174
|
kind: 'forced transition';
|
|
176
|
-
handler: HookHandler
|
|
175
|
+
handler: HookHandler<mDT>;
|
|
177
176
|
};
|
|
178
|
-
declare type AnyTransitionHook = {
|
|
177
|
+
declare type AnyTransitionHook<mDT> = {
|
|
179
178
|
kind: 'any transition';
|
|
180
|
-
handler: HookHandler
|
|
179
|
+
handler: HookHandler<mDT>;
|
|
181
180
|
};
|
|
182
|
-
declare type GlobalActionHook = {
|
|
181
|
+
declare type GlobalActionHook<mDT> = {
|
|
183
182
|
kind: 'global action';
|
|
184
183
|
action: string;
|
|
185
|
-
handler: HookHandler
|
|
184
|
+
handler: HookHandler<mDT>;
|
|
186
185
|
};
|
|
187
|
-
declare type AnyActionHook = {
|
|
186
|
+
declare type AnyActionHook<mDT> = {
|
|
188
187
|
kind: 'any action';
|
|
189
|
-
handler: HookHandler
|
|
188
|
+
handler: HookHandler<mDT>;
|
|
190
189
|
};
|
|
191
|
-
declare type EntryHook = {
|
|
190
|
+
declare type EntryHook<mDT> = {
|
|
192
191
|
kind: 'entry';
|
|
193
192
|
to: string;
|
|
194
|
-
handler: HookHandler
|
|
193
|
+
handler: HookHandler<mDT>;
|
|
195
194
|
};
|
|
196
|
-
declare type ExitHook = {
|
|
195
|
+
declare type ExitHook<mDT> = {
|
|
197
196
|
kind: 'exit';
|
|
198
197
|
from: string;
|
|
199
|
-
handler: HookHandler
|
|
198
|
+
handler: HookHandler<mDT>;
|
|
200
199
|
};
|
|
201
|
-
declare type HookDescription = BasicHookDescription | HookDescriptionWithAction | GlobalActionHook | AnyActionHook | StandardTransitionHook | MainTransitionHook | ForcedTransitionHook | AnyTransitionHook | EntryHook | ExitHook
|
|
200
|
+
declare type HookDescription<mDT> = BasicHookDescription<mDT> | HookDescriptionWithAction<mDT> | GlobalActionHook<mDT> | AnyActionHook<mDT> | StandardTransitionHook<mDT> | MainTransitionHook<mDT> | ForcedTransitionHook<mDT> | AnyTransitionHook<mDT> | EntryHook<mDT> | ExitHook<mDT>;
|
|
201
|
+
declare type HookResult = true | false | undefined | void;
|
|
202
|
+
declare type HookContext<mDT> = {
|
|
203
|
+
data: mDT;
|
|
204
|
+
};
|
|
205
|
+
declare type HookHandler<mDT> = (hook_context: HookContext<mDT>) => HookResult;
|
|
202
206
|
declare type JssmErrorExtendedInfo = {
|
|
203
207
|
requested_state?: StateType | undefined;
|
|
204
208
|
};
|
|
205
|
-
export { JssmColor, JssmTransition, JssmTransitions, JssmTransitionList, JssmTransitionRule, JssmArrow, JssmArrowKind, JssmArrowDirection, JssmGenericConfig, JssmGenericState, JssmGenericMachine, JssmParseTree, JssmCompileSe, JssmCompileSeStart, JssmCompileRule, JssmPermitted, JssmPermittedOpt, JssmResult, JssmStateDeclaration, JssmStateDeclarationRule, JssmLayout, JssmParseFunctionType, JssmMachineInternalState, JssmErrorExtendedInfo, FslDirection, FslTheme, HookDescription, HookHandler };
|
|
209
|
+
export { JssmColor, JssmTransition, JssmTransitions, JssmTransitionList, JssmTransitionRule, JssmArrow, JssmArrowKind, JssmArrowDirection, JssmGenericConfig, JssmGenericState, JssmGenericMachine, JssmParseTree, JssmCompileSe, JssmCompileSeStart, JssmCompileRule, JssmPermitted, JssmPermittedOpt, JssmResult, JssmStateDeclaration, JssmStateDeclarationRule, JssmLayout, JssmParseFunctionType, JssmMachineInternalState, JssmErrorExtendedInfo, FslDirection, FslTheme, HookDescription, HookHandler, HookResult };
|
package/dist/es6/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const version = "5.
|
|
1
|
+
const version = "5.72.2";
|
|
2
2
|
export { version };
|