@peter.naydenov/fsm 5.1.1 → 5.2.0

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.
Files changed (34) hide show
  1. package/Changelog.md +18 -0
  2. package/coverage/lcov-report/index.html +21 -21
  3. package/coverage/lcov-report/src/index.html +10 -10
  4. package/coverage/lcov-report/src/main.js.html +310 -0
  5. package/coverage/lcov-report/src/methods/_getChain.js.html +12 -9
  6. package/coverage/lcov-report/src/methods/_onUpdateTask.js.html +15 -15
  7. package/coverage/lcov-report/src/methods/_setTransitions.js.html +27 -27
  8. package/coverage/lcov-report/src/methods/_transit.js.html +26 -17
  9. package/coverage/lcov-report/src/methods/_triggerCacheUpdate.js.html +19 -13
  10. package/coverage/lcov-report/src/methods/_updateStateData.js.html +214 -0
  11. package/coverage/lcov-report/src/methods/_updateStep.js.html +55 -64
  12. package/coverage/lcov-report/src/methods/_warn.js.html +17 -17
  13. package/coverage/lcov-report/src/methods/exportState.js.html +11 -20
  14. package/coverage/lcov-report/src/methods/extractList.js.html +163 -0
  15. package/coverage/lcov-report/src/methods/getDependencies.js.html +115 -0
  16. package/coverage/lcov-report/src/methods/getState.js.html +4 -4
  17. package/coverage/lcov-report/src/methods/ignoreCacheUpdates.js.html +3 -3
  18. package/coverage/lcov-report/src/methods/importState.js.html +12 -6
  19. package/coverage/lcov-report/src/methods/index.html +88 -43
  20. package/coverage/lcov-report/src/methods/index.js.html +43 -19
  21. package/coverage/lcov-report/src/methods/off.js.html +3 -3
  22. package/coverage/lcov-report/src/methods/on.js.html +3 -3
  23. package/coverage/lcov-report/src/methods/reset.js.html +12 -9
  24. package/coverage/lcov-report/src/methods/setDependencies.js.html +5 -5
  25. package/coverage/lcov-report/src/methods/update.js.html +51 -21
  26. package/coverage/lcov.info +515 -315
  27. package/coverage/tmp/coverage-73715-1707034637130-0.json +1 -0
  28. package/coverage/tmp/coverage-73716-1707034635507-0.json +1 -0
  29. package/dist/fsm.cjs +1 -0
  30. package/dist/fsm.esm.mjs +1 -0
  31. package/dist/fsm.umd.js +1 -0
  32. package/package.json +27 -12
  33. package/rollup.config.js +42 -0
  34. package/coverage/tmp/coverage-51040-1691437648869-0.json +0 -1
@@ -23,16 +23,16 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">94.73% </span>
26
+ <span class="strong">94.44% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>54/57</span>
28
+ <span class='fraction'>51/54</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">94.44% </span>
33
+ <span class="strong">93.75% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>17/18</span>
35
+ <span class='fraction'>15/16</span>
36
36
  </div>
37
37
 
38
38
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">94.73% </span>
47
+ <span class="strong">94.44% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>54/57</span>
49
+ <span class='fraction'>51/54</span>
50
50
  </div>
51
51
 
52
52
 
@@ -119,45 +119,43 @@
119
119
  <a name='L54'></a><a href='#L54'>54</a>
120
120
  <a name='L55'></a><a href='#L55'>55</a>
121
121
  <a name='L56'></a><a href='#L56'>56</a>
122
- <a name='L57'></a><a href='#L57'>57</a>
123
- <a name='L58'></a><a href='#L58'>58</a>
124
- <a name='L59'></a><a href='#L59'>59</a>
125
- <a name='L60'></a><a href='#L60'>60</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">17x</span>
126
- <span class="cline-any cline-yes">17x</span>
127
- <span class="cline-any cline-yes">23x</span>
128
- <span class="cline-any cline-yes">23x</span>
129
- <span class="cline-any cline-yes">23x</span>
130
- <span class="cline-any cline-yes">23x</span>
131
- <span class="cline-any cline-yes">23x</span>
132
- <span class="cline-any cline-yes">23x</span>
133
- <span class="cline-any cline-yes">23x</span>
134
- <span class="cline-any cline-yes">23x</span>
135
- <span class="cline-any cline-yes">23x</span>
136
- <span class="cline-any cline-yes">23x</span>
137
- <span class="cline-any cline-yes">23x</span>
138
- <span class="cline-any cline-yes">23x</span>
139
- <span class="cline-any cline-yes">23x</span>
140
- <span class="cline-any cline-yes">23x</span>
141
- <span class="cline-any cline-yes">23x</span>
142
- <span class="cline-any cline-yes">23x</span>
143
- <span class="cline-any cline-yes">23x</span>
144
- <span class="cline-any cline-yes">23x</span>
145
- <span class="cline-any cline-yes">23x</span>
146
- <span class="cline-any cline-yes">23x</span>
147
- <span class="cline-any cline-yes">23x</span>
148
- <span class="cline-any cline-yes">23x</span>
149
- <span class="cline-any cline-yes">23x</span>
150
- <span class="cline-any cline-yes">23x</span>
151
- <span class="cline-any cline-yes">23x</span>
152
- <span class="cline-any cline-yes">17x</span>
153
- <span class="cline-any cline-yes">17x</span>
154
- <span class="cline-any cline-yes">17x</span>
155
- <span class="cline-any cline-yes">17x</span>
156
- <span class="cline-any cline-yes">17x</span>
122
+ <a name='L57'></a><a href='#L57'>57</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">19x</span>
123
+ <span class="cline-any cline-yes">19x</span>
124
+ <span class="cline-any cline-yes">25x</span>
125
+ <span class="cline-any cline-yes">25x</span>
126
+ <span class="cline-any cline-yes">25x</span>
127
+ <span class="cline-any cline-yes">25x</span>
128
+ <span class="cline-any cline-yes">25x</span>
129
+ <span class="cline-any cline-yes">25x</span>
130
+ <span class="cline-any cline-yes">25x</span>
131
+ <span class="cline-any cline-yes">25x</span>
132
+ <span class="cline-any cline-yes">25x</span>
133
+ <span class="cline-any cline-yes">25x</span>
134
+ <span class="cline-any cline-yes">25x</span>
135
+ <span class="cline-any cline-yes">25x</span>
136
+ <span class="cline-any cline-yes">25x</span>
137
+ <span class="cline-any cline-yes">25x</span>
138
+ <span class="cline-any cline-yes">25x</span>
139
+ <span class="cline-any cline-yes">25x</span>
140
+ <span class="cline-any cline-yes">25x</span>
141
+ <span class="cline-any cline-yes">25x</span>
142
+ <span class="cline-any cline-yes">25x</span>
143
+ <span class="cline-any cline-yes">25x</span>
144
+ <span class="cline-any cline-yes">25x</span>
145
+ <span class="cline-any cline-yes">25x</span>
146
+ <span class="cline-any cline-yes">25x</span>
147
+ <span class="cline-any cline-yes">25x</span>
148
+ <span class="cline-any cline-yes">25x</span>
149
+ <span class="cline-any cline-yes">19x</span>
150
+ <span class="cline-any cline-yes">19x</span>
151
+ <span class="cline-any cline-yes">19x</span>
152
+ <span class="cline-any cline-yes">19x</span>
153
+ <span class="cline-any cline-yes">19x</span>
154
+ <span class="cline-any cline-yes">19x</span>
157
155
  <span class="cline-any cline-no">&nbsp;</span>
158
156
  <span class="cline-any cline-no">&nbsp;</span>
159
157
  <span class="cline-any cline-no">&nbsp;</span>
160
- <span class="cline-any cline-yes">17x</span>
158
+ <span class="cline-any cline-yes">19x</span>
161
159
  <span class="cline-any cline-yes">6x</span>
162
160
  <span class="cline-any cline-yes">6x</span>
163
161
  <span class="cline-any cline-yes">6x</span>
@@ -166,14 +164,10 @@
166
164
  <span class="cline-any cline-yes">3x</span>
167
165
  <span class="cline-any cline-yes">3x</span>
168
166
  <span class="cline-any cline-yes">6x</span>
169
- <span class="cline-any cline-yes">23x</span>
170
- <span class="cline-any cline-yes">1x</span>
171
- <span class="cline-any cline-yes">1x</span>
172
- <span class="cline-any cline-yes">1x</span>
173
- <span class="cline-any cline-yes">19x</span>
174
- <span class="cline-any cline-yes">23x</span>
175
- <span class="cline-any cline-yes">23x</span>
176
- <span class="cline-any cline-yes">23x</span>
167
+ <span class="cline-any cline-yes">22x</span>
168
+ <span class="cline-any cline-yes">25x</span>
169
+ <span class="cline-any cline-yes">25x</span>
170
+ <span class="cline-any cline-yes">25x</span>
177
171
  <span class="cline-any cline-yes">1x</span>
178
172
  <span class="cline-any cline-yes">1x</span>
179
173
  <span class="cline-any cline-yes">1x</span>
@@ -182,14 +176,16 @@
182
176
  <span class="cline-any cline-neutral">&nbsp;</span>
183
177
  <span class="cline-any cline-neutral">&nbsp;</span>
184
178
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">function _updateStep ( fsm ) {
185
- return function ( updateTask, action, dt ) {
179
+ return function ( updateTask, action, data ) {
186
180
  const
187
- task = fsm.askForPromise ()
181
+ { askForPromise } = fsm.dependencies
182
+ , task = askForPromise ()
188
183
  , key = `${fsm.state}/${action}`
189
- , cb = fsm.callback
184
+ , cb = fsm.callback // Event-based callbacks
190
185
  ;
186
+ &nbsp;
191
187
  fsm.lock = true
192
- fsm._transit ( task, key, dt )
188
+ fsm._transit ( task, key, data )
193
189
  task.onComplete (
194
190
  result =&gt; {
195
191
  /**
@@ -198,18 +194,17 @@ return function ( updateTask, action, dt ) {
198
194
  * success - boolean. Is it transition successful.
199
195
  * ? stateData - object. Flat object with fsm state values.
200
196
  * ? response - object. External data as response of transition if needed.
201
- * ? command - string. Next action if function-chaining. (depricated!) Use a chainAction inside the logic table
202
197
  * }
203
198
  */
204
-
199
+ &nbsp;
205
200
  let
206
- chainActions = fsm._getChain ( fsm.chainActions, key)
201
+ chainActions = fsm._getChain ( key )
207
202
  , data = result.response
208
203
  ;
209
-
210
204
  if ( result.success ) {
211
205
  fsm.state = fsm.nextState [ key ]
212
- if ( result.stateData ) fsm.stateData = result.stateData
206
+ if ( result.stateData != null ) fsm.stateData = fsm._updateStateData ( result.stateData )
207
+
213
208
  cb [ 'positive' ].forEach ( fn =&gt; fn ( fsm.state, data) )
214
209
  cb [ 'transition' ].forEach ( fn =&gt; fn ( fsm.state, data) )
215
210
  if ( chainActions &amp;&amp; chainActions[0] ) <span class="branch-0 cbranch-no" title="branch not covered" >{</span>
@@ -225,10 +220,6 @@ return function ( updateTask, action, dt ) {
225
220
  return
226
221
  }
227
222
  }
228
- if ( result.command ) {
229
- fsm._updateStep ( updateTask, result.command, data )
230
- return
231
- }
232
223
  updateTask.done ( data )
233
224
  }) // task onComplete
234
225
  &nbsp;
@@ -247,7 +238,7 @@ export default _updateStep
247
238
  <div class='footer quiet pad2 space-top1 center small'>
248
239
  Code coverage generated by
249
240
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
250
- at 2023-08-07T19:47:29.021Z
241
+ at 2024-02-04T08:17:17.198Z
251
242
  </div>
252
243
  <script src="../../prettify.js"></script>
253
244
  <script>
@@ -23,16 +23,16 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">63.63% </span>
26
+ <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>7/11</span>
28
+ <span class='fraction'>11/11</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
33
  <span class="strong">100% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>2/2</span>
35
+ <span class='fraction'>5/5</span>
36
36
  </div>
37
37
 
38
38
 
@@ -44,9 +44,9 @@
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">63.63% </span>
47
+ <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>7/11</span>
49
+ <span class='fraction'>11/11</span>
50
50
  </div>
51
51
 
52
52
 
@@ -61,7 +61,7 @@
61
61
  </div>
62
62
  </template>
63
63
  </div>
64
- <div class='status-line medium'></div>
64
+ <div class='status-line high'></div>
65
65
  <pre><table class="coverage">
66
66
  <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
67
  <a name='L2'></a><a href='#L2'>2</a>
@@ -76,12 +76,12 @@
76
76
  <a name='L11'></a><a href='#L11'>11</a>
77
77
  <a name='L12'></a><a href='#L12'>12</a>
78
78
  <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">17x</span>
80
- <span class="cline-any cline-yes">17x</span>
81
- <span class="cline-any cline-no">&nbsp;</span>
82
- <span class="cline-any cline-no">&nbsp;</span>
83
- <span class="cline-any cline-no">&nbsp;</span>
84
- <span class="cline-any cline-no">&nbsp;</span>
79
+ <a name='L14'></a><a href='#L14'>14</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">19x</span>
80
+ <span class="cline-any cline-yes">19x</span>
81
+ <span class="cline-any cline-yes">1x</span>
82
+ <span class="cline-any cline-yes">1x</span>
83
+ <span class="cline-any cline-yes">2x</span>
84
+ <span class="cline-any cline-yes">1x</span>
85
85
  <span class="cline-any cline-yes">1x</span>
86
86
  <span class="cline-any cline-yes">1x</span>
87
87
  <span class="cline-any cline-yes">1x</span>
@@ -91,10 +91,10 @@
91
91
  <span class="cline-any cline-neutral">&nbsp;</span>
92
92
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">function _warn ( fsm ) {
93
93
  return function ( transitions ) {
94
- <span class="cstat-no" title="statement not covered" > // *** Warn if transition function used in description table is not defined.</span>
95
- <span class="cstat-no" title="statement not covered" > Object.entries ( transitions ).forEach ( ([v,k]) =&gt; {</span>
96
- <span class="cstat-no" title="statement not covered" > if ( v == null ) console.log ( `Warning: Transition for ${k} is not defined` )</span>
97
- <span class="cstat-no" title="statement not covered" > })</span>
94
+ // *** Warn if transition function used in description table is not defined.
95
+ Object.entries ( transitions ).forEach ( ([k,v]) =&gt; {
96
+ if ( v == null ) console.log ( `Warning: Transition for ${k} is not defined` )
97
+ })
98
98
  }} // warn func.
99
99
  &nbsp;
100
100
  &nbsp;
@@ -109,7 +109,7 @@ export default _warn
109
109
  <div class='footer quiet pad2 space-top1 center small'>
110
110
  Code coverage generated by
111
111
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
112
- at 2023-08-07T19:47:29.021Z
112
+ at 2024-02-04T08:17:17.198Z
113
113
  </div>
114
114
  <script src="../../prettify.js"></script>
115
115
  <script>
@@ -25,7 +25,7 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>16/16</span>
28
+ <span class='fraction'>13/13</span>
29
29
  </div>
30
30
 
31
31
 
@@ -39,14 +39,14 @@
39
39
  <div class='fl pad1y space-right2'>
40
40
  <span class="strong">100% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>1/1</span>
42
+ <span class='fraction'>2/2</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>16/16</span>
49
+ <span class='fraction'>13/13</span>
50
50
  </div>
51
51
 
52
52
 
@@ -78,14 +78,8 @@
78
78
  <a name='L13'></a><a href='#L13'>13</a>
79
79
  <a name='L14'></a><a href='#L14'>14</a>
80
80
  <a name='L15'></a><a href='#L15'>15</a>
81
- <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">17x</span>
85
- <span class="cline-any cline-yes">17x</span>
86
- <span class="cline-any cline-yes">2x</span>
87
- <span class="cline-any cline-yes">2x</span>
88
- <span class="cline-any cline-yes">2x</span>
81
+ <a name='L16'></a><a href='#L16'>16</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">19x</span>
82
+ <span class="cline-any cline-yes">19x</span>
89
83
  <span class="cline-any cline-yes">2x</span>
90
84
  <span class="cline-any cline-yes">2x</span>
91
85
  <span class="cline-any cline-yes">2x</span>
@@ -99,16 +93,13 @@
99
93
  <span class="cline-any cline-yes">1x</span>
100
94
  <span class="cline-any cline-neutral">&nbsp;</span>
101
95
  <span class="cline-any cline-neutral">&nbsp;</span>
102
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">function exportState (fsm) {
103
- return function () {
96
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">function exportState ( fsm ) {
97
+ return function exportState () {
98
+ const { query } = fsm.dependencies;
104
99
  // *** Export internal flags and state as an object
105
- const
106
- state = fsm.state
107
- , stateData = { ...fsm.stateData }
108
- ;
109
100
  return {
110
- state
111
- , stateData
101
+ state: fsm.state
102
+ , stateData : fsm.stateData.query ( query.joinSegments ).export ()
112
103
  }
113
104
  }} // exportState func.
114
105
  &nbsp;
@@ -124,7 +115,7 @@ export default exportState
124
115
  <div class='footer quiet pad2 space-top1 center small'>
125
116
  Code coverage generated by
126
117
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
127
- at 2023-08-07T19:47:29.021Z
118
+ at 2024-02-04T08:17:17.198Z
128
119
  </div>
129
120
  <script src="../../prettify.js"></script>
130
121
  <script>
@@ -0,0 +1,163 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for src/methods/extractList.js</title>
7
+ <meta charset="utf-8" />
8
+ <link rel="stylesheet" href="../../prettify.css" />
9
+ <link rel="stylesheet" href="../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
11
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
12
+ <style type='text/css'>
13
+ .coverage-summary .sorter {
14
+ background-image: url(../../sort-arrow-sprite.png);
15
+ }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <div class='wrapper'>
21
+ <div class='pad1'>
22
+ <h1><a href="../../index.html">All files</a> / <a href="index.html">src/methods</a> extractList.js</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">100% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>24/24</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">100% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>8/8</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">100% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>2/2</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">100% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>24/24</span>
50
+ </div>
51
+
52
+
53
+ </div>
54
+ <p class="quiet">
55
+ Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
+ </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
63
+ </div>
64
+ <div class='status-line high'></div>
65
+ <pre><table class="coverage">
66
+ <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
+ <a name='L2'></a><a href='#L2'>2</a>
68
+ <a name='L3'></a><a href='#L3'>3</a>
69
+ <a name='L4'></a><a href='#L4'>4</a>
70
+ <a name='L5'></a><a href='#L5'>5</a>
71
+ <a name='L6'></a><a href='#L6'>6</a>
72
+ <a name='L7'></a><a href='#L7'>7</a>
73
+ <a name='L8'></a><a href='#L8'>8</a>
74
+ <a name='L9'></a><a href='#L9'>9</a>
75
+ <a name='L10'></a><a href='#L10'>10</a>
76
+ <a name='L11'></a><a href='#L11'>11</a>
77
+ <a name='L12'></a><a href='#L12'>12</a>
78
+ <a name='L13'></a><a href='#L13'>13</a>
79
+ <a name='L14'></a><a href='#L14'>14</a>
80
+ <a name='L15'></a><a href='#L15'>15</a>
81
+ <a name='L16'></a><a href='#L16'>16</a>
82
+ <a name='L17'></a><a href='#L17'>17</a>
83
+ <a name='L18'></a><a href='#L18'>18</a>
84
+ <a name='L19'></a><a href='#L19'>19</a>
85
+ <a name='L20'></a><a href='#L20'>20</a>
86
+ <a name='L21'></a><a href='#L21'>21</a>
87
+ <a name='L22'></a><a href='#L22'>22</a>
88
+ <a name='L23'></a><a href='#L23'>23</a>
89
+ <a name='L24'></a><a href='#L24'>24</a>
90
+ <a name='L25'></a><a href='#L25'>25</a>
91
+ <a name='L26'></a><a href='#L26'>26</a>
92
+ <a name='L27'></a><a href='#L27'>27</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
93
+ <span class="cline-any cline-yes">1x</span>
94
+ <span class="cline-any cline-yes">19x</span>
95
+ <span class="cline-any cline-yes">19x</span>
96
+ <span class="cline-any cline-yes">19x</span>
97
+ <span class="cline-any cline-yes">19x</span>
98
+ <span class="cline-any cline-yes">19x</span>
99
+ <span class="cline-any cline-yes">19x</span>
100
+ <span class="cline-any cline-yes">19x</span>
101
+ <span class="cline-any cline-yes">19x</span>
102
+ <span class="cline-any cline-yes">11x</span>
103
+ <span class="cline-any cline-yes">11x</span>
104
+ <span class="cline-any cline-yes">11x</span>
105
+ <span class="cline-any cline-yes">11x</span>
106
+ <span class="cline-any cline-yes">11x</span>
107
+ <span class="cline-any cline-yes">11x</span>
108
+ <span class="cline-any cline-yes">7x</span>
109
+ <span class="cline-any cline-yes">11x</span>
110
+ <span class="cline-any cline-yes">1x</span>
111
+ <span class="cline-any cline-yes">1x</span>
112
+ <span class="cline-any cline-yes">1x</span>
113
+ <span class="cline-any cline-yes">1x</span>
114
+ <span class="cline-any cline-yes">1x</span>
115
+ <span class="cline-any cline-yes">1x</span>
116
+ <span class="cline-any cline-neutral">&nbsp;</span>
117
+ <span class="cline-any cline-neutral">&nbsp;</span>
118
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">'use strict'
119
+ &nbsp;
120
+ function extractList ( fsm ) {
121
+ /**
122
+ * Returns a list of requested segments from the state data.
123
+ * @param {array.&lt;string&gt;} requestedSegments - The list of requested segments.
124
+ * @param {string|boolean} [options=false] - The model option for the query.
125
+ * @returns {array.&lt;[object,dt-object,string,number,null]&gt;} - The list of requested segments.
126
+ */
127
+ return function extractList ( requestedSegments, options=false ) {
128
+ // *** Returns a list of requested segments
129
+
130
+ &nbsp;
131
+ const query = fsm.dependencies.query;
132
+ // v--- It's a debug case. Return all data to see what is available.
133
+ if ( arguments.length == 0 ) return fsm.stateData.query ( query.joinSegments ).model (() =&gt; ({as:'std'}))
134
+ &nbsp;
135
+ if ( !options ) return fsm.stateData.extractList ( requestedSegments, fsm.stateDataFormat )
136
+ else return fsm.stateData.extractList ( requestedSegments, options )
137
+ }} // extractList func.
138
+ &nbsp;
139
+ &nbsp;
140
+ &nbsp;
141
+ export default extractList
142
+ &nbsp;
143
+ &nbsp;
144
+ &nbsp;</pre></td></tr></table></pre>
145
+
146
+ <div class='push'></div><!-- for sticky footer -->
147
+ </div><!-- /wrapper -->
148
+ <div class='footer quiet pad2 space-top1 center small'>
149
+ Code coverage generated by
150
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
151
+ at 2024-02-04T08:17:17.198Z
152
+ </div>
153
+ <script src="../../prettify.js"></script>
154
+ <script>
155
+ window.onload = function () {
156
+ prettyPrint();
157
+ };
158
+ </script>
159
+ <script src="../../sorter.js"></script>
160
+ <script src="../../block-navigation.js"></script>
161
+ </body>
162
+ </html>
163
+
@@ -0,0 +1,115 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for src/methods/getDependencies.js</title>
7
+ <meta charset="utf-8" />
8
+ <link rel="stylesheet" href="../../prettify.css" />
9
+ <link rel="stylesheet" href="../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
11
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
12
+ <style type='text/css'>
13
+ .coverage-summary .sorter {
14
+ background-image: url(../../sort-arrow-sprite.png);
15
+ }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <div class='wrapper'>
21
+ <div class='pad1'>
22
+ <h1><a href="../../index.html">All files</a> / <a href="index.html">src/methods</a> getDependencies.js</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">100% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>8/8</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">100% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>3/3</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">100% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>2/2</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">100% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>8/8</span>
50
+ </div>
51
+
52
+
53
+ </div>
54
+ <p class="quiet">
55
+ Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
+ </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
63
+ </div>
64
+ <div class='status-line high'></div>
65
+ <pre><table class="coverage">
66
+ <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
+ <a name='L2'></a><a href='#L2'>2</a>
68
+ <a name='L3'></a><a href='#L3'>3</a>
69
+ <a name='L4'></a><a href='#L4'>4</a>
70
+ <a name='L5'></a><a href='#L5'>5</a>
71
+ <a name='L6'></a><a href='#L6'>6</a>
72
+ <a name='L7'></a><a href='#L7'>7</a>
73
+ <a name='L8'></a><a href='#L8'>8</a>
74
+ <a name='L9'></a><a href='#L9'>9</a>
75
+ <a name='L10'></a><a href='#L10'>10</a>
76
+ <a name='L11'></a><a href='#L11'>11</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">19x</span>
77
+ <span class="cline-any cline-yes">19x</span>
78
+ <span class="cline-any cline-yes">2x</span>
79
+ <span class="cline-any cline-yes">1x</span>
80
+ <span class="cline-any cline-yes">1x</span>
81
+ <span class="cline-any cline-yes">1x</span>
82
+ <span class="cline-any cline-yes">1x</span>
83
+ <span class="cline-any cline-yes">1x</span>
84
+ <span class="cline-any cline-neutral">&nbsp;</span>
85
+ <span class="cline-any cline-neutral">&nbsp;</span>
86
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">function getDependencies (fsm) {
87
+ return function getDependencies () {
88
+ return fsm.dependencies
89
+ }} // getDependencies func.
90
+ &nbsp;
91
+ &nbsp;
92
+ &nbsp;
93
+ export default getDependencies
94
+ &nbsp;
95
+ &nbsp;
96
+ &nbsp;</pre></td></tr></table></pre>
97
+
98
+ <div class='push'></div><!-- for sticky footer -->
99
+ </div><!-- /wrapper -->
100
+ <div class='footer quiet pad2 space-top1 center small'>
101
+ Code coverage generated by
102
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
103
+ at 2024-02-04T08:17:17.198Z
104
+ </div>
105
+ <script src="../../prettify.js"></script>
106
+ <script>
107
+ window.onload = function () {
108
+ prettyPrint();
109
+ };
110
+ </script>
111
+ <script src="../../sorter.js"></script>
112
+ <script src="../../block-navigation.js"></script>
113
+ </body>
114
+ </html>
115
+