@peter.naydenov/fsm 2.2.3 → 2.2.4
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/.nyc_output/86959cba-5ea6-46d1-a68b-aa782a39cf80.json +1 -0
- package/.nyc_output/processinfo/{b455f38b-b488-4973-b068-7b61e4c704dd.json → 86959cba-5ea6-46d1-a68b-aa782a39cf80.json} +1 -1
- package/.nyc_output/processinfo/index.json +1 -1
- package/README.md +9 -3
- package/coverage/lcov-report/index.html +10 -10
- package/coverage/lcov-report/src/index.html +1 -1
- package/coverage/lcov-report/src/index.js.html +26 -32
- package/coverage/lcov-report/src/methods/_getChain.js.html +2 -2
- package/coverage/lcov-report/src/methods/_onUpdateTask.js.html +2 -2
- package/coverage/lcov-report/src/methods/_setTransitions.js.html +14 -14
- package/coverage/lcov-report/src/methods/_transit.js.html +9 -6
- package/coverage/lcov-report/src/methods/_triggerCacheUpdate.js.html +2 -2
- package/coverage/lcov-report/src/methods/_updateStep.js.html +2 -2
- package/coverage/lcov-report/src/methods/_warn.js.html +13 -10
- package/coverage/lcov-report/src/methods/exportState.js.html +9 -6
- package/coverage/lcov-report/src/methods/getState.js.html +2 -2
- package/coverage/lcov-report/src/methods/ignoreCacheUpdates.js.html +2 -2
- package/coverage/lcov-report/src/methods/importState.js.html +12 -6
- package/coverage/lcov-report/src/methods/index.html +19 -19
- package/coverage/lcov-report/src/methods/index.js.html +1 -1
- package/coverage/lcov-report/src/methods/off.js.html +2 -2
- package/coverage/lcov-report/src/methods/on.js.html +2 -2
- package/coverage/lcov-report/src/methods/reset.js.html +9 -6
- package/coverage/lcov-report/src/methods/setDependencies.js.html +2 -2
- package/coverage/lcov-report/src/methods/update.js.html +2 -2
- package/coverage/lcov.info +109 -104
- package/package.json +4 -3
- package/src/index.js +7 -9
- package/src/methods/_transit.js +2 -1
- package/src/methods/_warn.js +4 -3
- package/src/methods/exportState.js +2 -1
- package/src/methods/importState.js +3 -1
- package/src/methods/reset.js +2 -1
- package/.nyc_output/b455f38b-b488-4973-b068-7b61e4c704dd.json +0 -1
package/coverage/lcov.info
CHANGED
|
@@ -1,41 +1,41 @@
|
|
|
1
1
|
TN:
|
|
2
2
|
SF:src/index.js
|
|
3
|
-
FN:
|
|
4
|
-
FN:
|
|
3
|
+
FN:9,Fsm
|
|
4
|
+
FN:28,(anonymous_1)
|
|
5
5
|
FNF:2
|
|
6
6
|
FNH:2
|
|
7
|
-
FNDA:
|
|
8
|
-
FNDA:
|
|
7
|
+
FNDA:17,Fsm
|
|
8
|
+
FNDA:272,(anonymous_1)
|
|
9
9
|
DA:3,1
|
|
10
10
|
DA:4,1
|
|
11
11
|
DA:5,1
|
|
12
|
-
DA:
|
|
13
|
-
DA:
|
|
14
|
-
DA:
|
|
15
|
-
DA:
|
|
16
|
-
DA:
|
|
17
|
-
DA:17
|
|
18
|
-
DA:
|
|
19
|
-
DA:
|
|
20
|
-
DA:
|
|
21
|
-
DA:
|
|
22
|
-
DA:
|
|
23
|
-
DA:
|
|
24
|
-
DA:
|
|
25
|
-
DA:
|
|
26
|
-
DA:
|
|
27
|
-
DA:
|
|
28
|
-
DA:
|
|
29
|
-
DA:
|
|
12
|
+
DA:6,1
|
|
13
|
+
DA:10,17
|
|
14
|
+
DA:12,17
|
|
15
|
+
DA:13,17
|
|
16
|
+
DA:14,17
|
|
17
|
+
DA:15,17
|
|
18
|
+
DA:16,17
|
|
19
|
+
DA:18,17
|
|
20
|
+
DA:19,17
|
|
21
|
+
DA:20,17
|
|
22
|
+
DA:21,17
|
|
23
|
+
DA:28,272
|
|
24
|
+
DA:30,17
|
|
25
|
+
DA:31,17
|
|
26
|
+
DA:32,17
|
|
27
|
+
DA:33,17
|
|
28
|
+
DA:34,17
|
|
29
|
+
DA:40,1
|
|
30
30
|
LF:21
|
|
31
31
|
LH:21
|
|
32
|
-
BRDA:
|
|
33
|
-
BRDA:
|
|
34
|
-
BRDA:
|
|
35
|
-
BRDA:
|
|
36
|
-
BRDA:
|
|
37
|
-
BRDA:
|
|
38
|
-
BRDA:
|
|
32
|
+
BRDA:9,0,0,2
|
|
33
|
+
BRDA:12,1,0,17
|
|
34
|
+
BRDA:12,1,1,1
|
|
35
|
+
BRDA:13,2,0,17
|
|
36
|
+
BRDA:13,2,1,1
|
|
37
|
+
BRDA:31,3,0,0
|
|
38
|
+
BRDA:31,3,1,17
|
|
39
39
|
BRF:7
|
|
40
40
|
BRH:6
|
|
41
41
|
end_of_record
|
|
@@ -45,9 +45,9 @@ FN:1,_getChain
|
|
|
45
45
|
FN:2,(anonymous_1)
|
|
46
46
|
FNF:2
|
|
47
47
|
FNH:2
|
|
48
|
-
FNDA:
|
|
48
|
+
FNDA:17,_getChain
|
|
49
49
|
FNDA:23,(anonymous_1)
|
|
50
|
-
DA:2,
|
|
50
|
+
DA:2,17
|
|
51
51
|
DA:3,23
|
|
52
52
|
DA:4,4
|
|
53
53
|
DA:9,1
|
|
@@ -66,11 +66,11 @@ FN:8,(anonymous_2)
|
|
|
66
66
|
FN:13,(anonymous_3)
|
|
67
67
|
FNF:4
|
|
68
68
|
FNH:4
|
|
69
|
-
FNDA:
|
|
69
|
+
FNDA:17,_onUpdateTask
|
|
70
70
|
FNDA:19,_onUpdateTask
|
|
71
71
|
FNDA:4,(anonymous_2)
|
|
72
72
|
FNDA:19,(anonymous_3)
|
|
73
|
-
DA:2,
|
|
73
|
+
DA:2,17
|
|
74
74
|
DA:4,19
|
|
75
75
|
DA:5,19
|
|
76
76
|
DA:8,19
|
|
@@ -94,27 +94,27 @@ FN:30,_isAltValid
|
|
|
94
94
|
FN:34,(anonymous_4)
|
|
95
95
|
FNF:5
|
|
96
96
|
FNH:5
|
|
97
|
-
FNDA:
|
|
98
|
-
FNDA:
|
|
99
|
-
FNDA:
|
|
100
|
-
FNDA:
|
|
97
|
+
FNDA:17,_setTransitions
|
|
98
|
+
FNDA:17,(anonymous_1)
|
|
99
|
+
FNDA:39,(anonymous_2)
|
|
100
|
+
FNDA:39,_isAltValid
|
|
101
101
|
FNDA:8,(anonymous_4)
|
|
102
|
-
DA:2,
|
|
103
|
-
DA:5,
|
|
104
|
-
DA:6,
|
|
105
|
-
DA:7,
|
|
106
|
-
DA:9,
|
|
107
|
-
DA:11,
|
|
108
|
-
DA:12,
|
|
109
|
-
DA:13,
|
|
110
|
-
DA:15,
|
|
111
|
-
DA:16,
|
|
112
|
-
DA:17,
|
|
102
|
+
DA:2,17
|
|
103
|
+
DA:5,17
|
|
104
|
+
DA:6,17
|
|
105
|
+
DA:7,17
|
|
106
|
+
DA:9,17
|
|
107
|
+
DA:11,39
|
|
108
|
+
DA:12,39
|
|
109
|
+
DA:13,39
|
|
110
|
+
DA:15,39
|
|
111
|
+
DA:16,39
|
|
112
|
+
DA:17,39
|
|
113
113
|
DA:18,4
|
|
114
114
|
DA:19,4
|
|
115
115
|
DA:20,4
|
|
116
|
-
DA:23,
|
|
117
|
-
DA:32,
|
|
116
|
+
DA:23,17
|
|
117
|
+
DA:32,39
|
|
118
118
|
DA:33,4
|
|
119
119
|
DA:34,4
|
|
120
120
|
DA:35,8
|
|
@@ -122,11 +122,11 @@ DA:37,4
|
|
|
122
122
|
DA:42,1
|
|
123
123
|
LF:21
|
|
124
124
|
LH:21
|
|
125
|
-
BRDA:15,0,0,
|
|
126
|
-
BRDA:15,0,1,
|
|
125
|
+
BRDA:15,0,0,39
|
|
126
|
+
BRDA:15,0,1,8
|
|
127
127
|
BRDA:17,1,0,4
|
|
128
|
-
BRDA:17,1,1,
|
|
129
|
-
BRDA:32,2,0,
|
|
128
|
+
BRDA:17,1,1,35
|
|
129
|
+
BRDA:32,2,0,35
|
|
130
130
|
BRDA:32,2,1,4
|
|
131
131
|
BRDA:33,3,0,0
|
|
132
132
|
BRDA:33,3,1,4
|
|
@@ -143,19 +143,20 @@ FN:1,_transit
|
|
|
143
143
|
FN:2,(anonymous_1)
|
|
144
144
|
FNF:2
|
|
145
145
|
FNH:2
|
|
146
|
-
FNDA:
|
|
146
|
+
FNDA:17,_transit
|
|
147
147
|
FNDA:23,(anonymous_1)
|
|
148
|
-
DA:2,
|
|
148
|
+
DA:2,17
|
|
149
149
|
DA:5,23
|
|
150
150
|
DA:6,23
|
|
151
151
|
DA:7,23
|
|
152
|
-
DA:
|
|
153
|
-
DA:10,
|
|
154
|
-
DA:
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
BRDA:
|
|
152
|
+
DA:8,23
|
|
153
|
+
DA:10,23
|
|
154
|
+
DA:11,4
|
|
155
|
+
DA:16,1
|
|
156
|
+
LF:8
|
|
157
|
+
LH:8
|
|
158
|
+
BRDA:10,0,0,19
|
|
159
|
+
BRDA:10,0,1,4
|
|
159
160
|
BRF:2
|
|
160
161
|
BRH:2
|
|
161
162
|
end_of_record
|
|
@@ -167,11 +168,11 @@ FN:5,(anonymous_2)
|
|
|
167
168
|
FN:11,(anonymous_3)
|
|
168
169
|
FNF:4
|
|
169
170
|
FNH:4
|
|
170
|
-
FNDA:
|
|
171
|
+
FNDA:17,_triggerCacheUpdate
|
|
171
172
|
FNDA:19,(anonymous_1)
|
|
172
173
|
FNDA:6,(anonymous_2)
|
|
173
174
|
FNDA:5,(anonymous_3)
|
|
174
|
-
DA:2,
|
|
175
|
+
DA:2,17
|
|
175
176
|
DA:3,19
|
|
176
177
|
DA:4,5
|
|
177
178
|
DA:5,5
|
|
@@ -201,7 +202,7 @@ FN:39,(anonymous_6)
|
|
|
201
202
|
FN:52,(anonymous_7)
|
|
202
203
|
FNF:8
|
|
203
204
|
FNH:7
|
|
204
|
-
FNDA:
|
|
205
|
+
FNDA:17,_updateStep
|
|
205
206
|
FNDA:23,(anonymous_1)
|
|
206
207
|
FNDA:23,(anonymous_2)
|
|
207
208
|
FNDA:1,(anonymous_3)
|
|
@@ -209,7 +210,7 @@ FNDA:1,(anonymous_4)
|
|
|
209
210
|
FNDA:1,(anonymous_5)
|
|
210
211
|
FNDA:1,(anonymous_6)
|
|
211
212
|
FNDA:0,(anonymous_7)
|
|
212
|
-
DA:2,
|
|
213
|
+
DA:2,17
|
|
213
214
|
DA:4,23
|
|
214
215
|
DA:5,23
|
|
215
216
|
DA:6,23
|
|
@@ -260,20 +261,21 @@ TN:
|
|
|
260
261
|
SF:src/methods/_warn.js
|
|
261
262
|
FN:1,_warn
|
|
262
263
|
FN:2,(anonymous_1)
|
|
263
|
-
FN:
|
|
264
|
+
FN:5,(anonymous_2)
|
|
264
265
|
FNF:3
|
|
265
266
|
FNH:1
|
|
266
|
-
FNDA:
|
|
267
|
+
FNDA:17,_warn
|
|
267
268
|
FNDA:0,(anonymous_1)
|
|
268
269
|
FNDA:0,(anonymous_2)
|
|
269
|
-
DA:2,
|
|
270
|
+
DA:2,17
|
|
270
271
|
DA:4,0
|
|
271
272
|
DA:5,0
|
|
272
|
-
DA:
|
|
273
|
-
|
|
273
|
+
DA:6,0
|
|
274
|
+
DA:12,1
|
|
275
|
+
LF:5
|
|
274
276
|
LH:2
|
|
275
|
-
BRDA:
|
|
276
|
-
BRDA:
|
|
277
|
+
BRDA:6,0,0,0
|
|
278
|
+
BRDA:6,0,1,0
|
|
277
279
|
BRF:2
|
|
278
280
|
BRH:0
|
|
279
281
|
end_of_record
|
|
@@ -283,15 +285,16 @@ FN:1,exportState
|
|
|
283
285
|
FN:2,(anonymous_1)
|
|
284
286
|
FNF:2
|
|
285
287
|
FNH:2
|
|
286
|
-
FNDA:
|
|
288
|
+
FNDA:17,exportState
|
|
287
289
|
FNDA:2,(anonymous_1)
|
|
288
|
-
DA:2,
|
|
290
|
+
DA:2,17
|
|
289
291
|
DA:5,2
|
|
290
292
|
DA:6,2
|
|
291
|
-
DA:
|
|
292
|
-
DA:
|
|
293
|
-
|
|
294
|
-
|
|
293
|
+
DA:7,2
|
|
294
|
+
DA:9,2
|
|
295
|
+
DA:17,1
|
|
296
|
+
LF:6
|
|
297
|
+
LH:6
|
|
295
298
|
BRF:0
|
|
296
299
|
BRH:0
|
|
297
300
|
end_of_record
|
|
@@ -301,9 +304,9 @@ FN:1,getState
|
|
|
301
304
|
FN:2,(anonymous_1)
|
|
302
305
|
FNF:2
|
|
303
306
|
FNH:2
|
|
304
|
-
FNDA:
|
|
307
|
+
FNDA:17,getState
|
|
305
308
|
FNDA:7,(anonymous_1)
|
|
306
|
-
DA:2,
|
|
309
|
+
DA:2,17
|
|
307
310
|
DA:3,7
|
|
308
311
|
DA:8,1
|
|
309
312
|
LF:3
|
|
@@ -318,10 +321,10 @@ FN:2,(anonymous_1)
|
|
|
318
321
|
FN:5,(anonymous_2)
|
|
319
322
|
FNF:3
|
|
320
323
|
FNH:3
|
|
321
|
-
FNDA:
|
|
324
|
+
FNDA:17,ignoreCachedUpdates
|
|
322
325
|
FNDA:1,(anonymous_1)
|
|
323
326
|
FNDA:1,(anonymous_2)
|
|
324
|
-
DA:2,
|
|
327
|
+
DA:2,17
|
|
325
328
|
DA:4,1
|
|
326
329
|
DA:5,1
|
|
327
330
|
DA:6,1
|
|
@@ -337,17 +340,18 @@ FN:1,importState
|
|
|
337
340
|
FN:2,(anonymous_1)
|
|
338
341
|
FNF:2
|
|
339
342
|
FNH:2
|
|
340
|
-
FNDA:
|
|
343
|
+
FNDA:17,importState
|
|
341
344
|
FNDA:1,(anonymous_1)
|
|
342
|
-
DA:2,
|
|
345
|
+
DA:2,17
|
|
343
346
|
DA:4,1
|
|
344
347
|
DA:5,1
|
|
345
348
|
DA:6,1
|
|
346
|
-
DA:
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
BRDA:
|
|
349
|
+
DA:7,1
|
|
350
|
+
DA:14,1
|
|
351
|
+
LF:6
|
|
352
|
+
LH:6
|
|
353
|
+
BRDA:5,0,0,1
|
|
354
|
+
BRDA:5,0,1,0
|
|
351
355
|
BRF:2
|
|
352
356
|
BRH:1
|
|
353
357
|
end_of_record
|
|
@@ -384,9 +388,9 @@ FN:1,off
|
|
|
384
388
|
FN:2,(anonymous_1)
|
|
385
389
|
FNF:2
|
|
386
390
|
FNH:1
|
|
387
|
-
FNDA:
|
|
391
|
+
FNDA:17,off
|
|
388
392
|
FNDA:0,(anonymous_1)
|
|
389
|
-
DA:2,
|
|
393
|
+
DA:2,17
|
|
390
394
|
DA:3,0
|
|
391
395
|
DA:4,0
|
|
392
396
|
DA:9,1
|
|
@@ -403,9 +407,9 @@ FN:1,on
|
|
|
403
407
|
FN:2,(anonymous_1)
|
|
404
408
|
FNF:2
|
|
405
409
|
FNH:2
|
|
406
|
-
FNDA:
|
|
410
|
+
FNDA:17,on
|
|
407
411
|
FNDA:6,(anonymous_1)
|
|
408
|
-
DA:2,
|
|
412
|
+
DA:2,17
|
|
409
413
|
DA:4,6
|
|
410
414
|
DA:5,6
|
|
411
415
|
DA:10,1
|
|
@@ -422,14 +426,15 @@ FN:1,reset
|
|
|
422
426
|
FN:2,(anonymous_1)
|
|
423
427
|
FNF:2
|
|
424
428
|
FNH:2
|
|
425
|
-
FNDA:
|
|
429
|
+
FNDA:17,reset
|
|
426
430
|
FNDA:1,(anonymous_1)
|
|
427
|
-
DA:2,
|
|
431
|
+
DA:2,17
|
|
428
432
|
DA:3,1
|
|
429
433
|
DA:4,1
|
|
430
|
-
DA:
|
|
431
|
-
|
|
432
|
-
|
|
434
|
+
DA:5,1
|
|
435
|
+
DA:10,1
|
|
436
|
+
LF:5
|
|
437
|
+
LH:5
|
|
433
438
|
BRF:0
|
|
434
439
|
BRH:0
|
|
435
440
|
end_of_record
|
|
@@ -439,9 +444,9 @@ FN:1,setDependencies
|
|
|
439
444
|
FN:2,(anonymous_1)
|
|
440
445
|
FNF:2
|
|
441
446
|
FNH:2
|
|
442
|
-
FNDA:
|
|
447
|
+
FNDA:17,setDependencies
|
|
443
448
|
FNDA:1,(anonymous_1)
|
|
444
|
-
DA:2,
|
|
449
|
+
DA:2,17
|
|
445
450
|
DA:3,1
|
|
446
451
|
DA:7,1
|
|
447
452
|
LF:3
|
|
@@ -456,10 +461,10 @@ FN:2,(anonymous_1)
|
|
|
456
461
|
FN:12,(anonymous_2)
|
|
457
462
|
FNF:3
|
|
458
463
|
FNH:3
|
|
459
|
-
FNDA:
|
|
464
|
+
FNDA:17,update
|
|
460
465
|
FNDA:20,(anonymous_1)
|
|
461
466
|
FNDA:14,(anonymous_2)
|
|
462
|
-
DA:2,
|
|
467
|
+
DA:2,17
|
|
463
468
|
DA:4,20
|
|
464
469
|
DA:6,20
|
|
465
470
|
DA:7,6
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@peter.naydenov/fsm",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.4",
|
|
4
4
|
"description": "Simple Finite State Machine",
|
|
5
5
|
"main": "src/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -10,12 +10,13 @@
|
|
|
10
10
|
"author": "Peter Naydenov",
|
|
11
11
|
"license": "MIT",
|
|
12
12
|
"dependencies": {
|
|
13
|
+
"@peter.naydenov/walk": "1.1.0",
|
|
13
14
|
"ask-for-promise": "1.3.1"
|
|
14
15
|
},
|
|
15
16
|
"devDependencies": {
|
|
16
|
-
"chai": "4.3.
|
|
17
|
+
"chai": "4.3.6",
|
|
17
18
|
"expect.js": "0.3.1",
|
|
18
|
-
"mocha": "
|
|
19
|
+
"mocha": "10.0.0",
|
|
19
20
|
"nyc": "15.1.0"
|
|
20
21
|
},
|
|
21
22
|
"repository": {
|
package/src/index.js
CHANGED
|
@@ -2,14 +2,12 @@
|
|
|
2
2
|
const
|
|
3
3
|
MISSING_STATE = 'N/A'
|
|
4
4
|
, askForPromise = require ( 'ask-for-promise' )
|
|
5
|
-
, methods
|
|
5
|
+
, methods = require ( './methods/index' )
|
|
6
|
+
, walk = require ( '@peter.naydenov/walk' )
|
|
6
7
|
;
|
|
7
8
|
|
|
8
9
|
function Fsm ({init, table, stateData, debug }, lib={} ) {
|
|
9
|
-
const
|
|
10
|
-
fsm = this
|
|
11
|
-
, fnKeys = Object.keys ( methods )
|
|
12
|
-
;
|
|
10
|
+
const fsm = this;
|
|
13
11
|
|
|
14
12
|
fsm.state = init || MISSING_STATE
|
|
15
13
|
fsm.initialState = init || MISSING_STATE
|
|
@@ -17,9 +15,9 @@ function Fsm ({init, table, stateData, debug }, lib={} ) {
|
|
|
17
15
|
fsm.cache = [] // cached 'update' commands
|
|
18
16
|
fsm.askForPromise = askForPromise
|
|
19
17
|
|
|
20
|
-
fsm.stateData =
|
|
21
|
-
fsm.initialStateData =
|
|
22
|
-
fsm.dependencies = {}
|
|
18
|
+
fsm.stateData = walk ( stateData )
|
|
19
|
+
fsm.initialStateData = walk ( stateData )
|
|
20
|
+
fsm.dependencies = { walk, askForPromise }
|
|
23
21
|
fsm.callback = {
|
|
24
22
|
update : []
|
|
25
23
|
, transition : []
|
|
@@ -27,7 +25,7 @@ function Fsm ({init, table, stateData, debug }, lib={} ) {
|
|
|
27
25
|
, negative : []
|
|
28
26
|
}
|
|
29
27
|
|
|
30
|
-
|
|
28
|
+
walk ( methods, (v,k) => fsm[k] = methods[k](fsm) ) // Attach methods to fsm
|
|
31
29
|
|
|
32
30
|
const {transitions, nextState, chainActions } = fsm._setTransitions ( table, lib );
|
|
33
31
|
if ( debug ) fsm._warn ( transitions )
|
package/src/methods/_transit.js
CHANGED
|
@@ -3,7 +3,8 @@ return function ( task, key, dt ) { // ( promiseObj, transitionKey, addition
|
|
|
3
3
|
// *** Execute transition if exists. Ignore all non-predefined cases
|
|
4
4
|
const
|
|
5
5
|
dependencies = fsm.dependencies
|
|
6
|
-
,
|
|
6
|
+
, { walk } = dependencies
|
|
7
|
+
, stateData = walk ( fsm.stateData )
|
|
7
8
|
, transition = fsm.transitions [ key ]
|
|
8
9
|
;
|
|
9
10
|
if ( typeof transition === 'function' ) transition ( task, dependencies, stateData, dt )
|
package/src/methods/_warn.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
function _warn ( fsm ) {
|
|
2
2
|
return function ( transitions ) {
|
|
3
3
|
// *** Warn if transition function used in description table is not defined.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
const { walk } = fsm.dependencies;
|
|
5
|
+
walk ( transitions, (v,k) => {
|
|
6
|
+
if (v == null) console.log ( `Warning: Transition for ${k} is not defined` )
|
|
7
|
+
})
|
|
7
8
|
}} // warn func.
|
|
8
9
|
|
|
9
10
|
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
function importState (fsm) {
|
|
2
2
|
return function ( {state, stateData} ) {
|
|
3
3
|
// *** Import existing state to fsm
|
|
4
|
+
const { walk } = fsm.dependencies;
|
|
4
5
|
if ( state ) {
|
|
5
6
|
fsm.state = state
|
|
6
|
-
fsm.stateData =
|
|
7
|
+
fsm.stateData = walk ( stateData )
|
|
8
|
+
// TODO: test if stateData exist ??!
|
|
7
9
|
}
|
|
8
10
|
}} // importState func.
|
|
9
11
|
|