jssm 5.85.10 → 5.85.11
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 +39 -39
- package/README.md +2 -2
- package/dist/es6/jssm.d.ts +9 -2
- package/dist/es6/jssm.js +20 -8
- 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 +9 -2
- 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
|
+
1063 merges; 172 releases; Changlogging the last 10 commits; Full changelog at [CHANGELOG.long.md](CHANGELOG.long.md)
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -12,12 +12,48 @@ All notable changes to this project will be documented in this file.
|
|
|
12
12
|
|
|
13
13
|
Published tags:
|
|
14
14
|
|
|
15
|
-
<a href="#5__85__9">5.85.9</a>, <a href="#5__85__8">5.85.8</a>, <a href="#5__85__7">5.85.7</a>, <a href="#5__85__6">5.85.6</a>, <a href="#5__85__5">5.85.5</a>, <a href="#5__85__4">5.85.4</a>, <a href="#5__85__3">5.85.3</a>, <a href="#5__85__2">5.85.2</a>, <a href="#5__85__1">5.85.1</a>, <a href="#5__85__0">5.85.0</a>, <a href="#5__84__1">5.84.1</a>, <a href="#5__84__0">5.84.0</a>, <a href="#5__83__2">5.83.2</a>, <a href="#5__83__1">5.83.1</a>, <a href="#5__83__0">5.83.0</a>, <a href="#5__82__5">5.82.5</a>, <a href="#5__82__4">5.82.4</a>, <a href="#5__82__3">5.82.3</a>, <a href="#5__82__2">5.82.2</a>, <a href="#5__82__1">5.82.1</a>, <a href="#5__82__0">5.82.0</a>, <a href="#5__81__2">5.81.2</a>, <a href="#5__81__0">5.81.0</a>, <a href="#5__80__1">5.80.1</a>, <a href="#5__80__0">5.80.0</a>, <a href="#5__79__18">5.79.18</a>, <a href="#5__79__17">5.79.17</a>, <a href="#5__79__16">5.79.16</a>, <a href="#5__79__15">5.79.15</a>, <a href="#5__79__11">5.79.11</a>, <a href="#5__79__10">5.79.10</a>, <a href="#5__79__9">5.79.9</a>, <a href="#5__79__8">5.79.8</a>, <a href="#5__79__6">5.79.6</a>, <a href="#5__79__4">5.79.4</a>, <a href="#5__79__3">5.79.3</a>, <a href="#5__79__2">5.79.2</a>, <a href="#5__79__1">5.79.1</a>, <a href="#5__79__0">5.79.0</a>, <a href="#5__78__0">5.78.0</a>, <a href="#5__77__1">5.77.1</a>, <a href="#5__77__0">5.77.0</a>, <a href="#5__76__2">5.76.2</a>, <a href="#5__76__0">5.76.0</a>, <a href="#5__75__1">5.75.1</a>, <a href="#5__75__0">5.75.0</a>, <a href="#5__74__0">5.74.0</a>, <a href="#5__73__1">5.73.1</a>, <a href="#5__73__0">5.73.0</a>, <a href="#5__72__5">5.72.5</a>, <a href="#5__72__4">5.72.4</a>, <a href="#5__72__3">5.72.3</a>, <a href="#5__72__2">5.72.2</a>, <a href="#5__72__1">5.72.1</a>, <a href="#5__72__0">5.72.0</a>, <a href="#5__71__1">5.71.1</a>, <a href="#5__71__0">5.71.0</a>, <a href="#5__70__36">5.70.36</a>, <a href="#5__70__35">5.70.35</a>, <a href="#5__70__34">5.70.34</a>, <a href="#5__70__33">5.70.33</a>, <a href="#5__70__32">5.70.32</a>, <a href="#5__70__31">5.70.31</a>, <a href="#5__70__30">5.70.30</a>, <a href="#5__70__29">5.70.29</a>, <a href="#5__70__28">5.70.28</a>, <a href="#5__70__27">5.70.27</a>, <a href="#5__70__26">5.70.26</a>, <a href="#5__70__25">5.70.25</a>, <a href="#5__70__24">5.70.24</a>, <a href="#5__70__23">5.70.23</a>, <a href="#5__70__22">5.70.22</a>, <a href="#5__70__21">5.70.21</a>, <a href="#5__70__20">5.70.20</a>, <a href="#5__70__19">5.70.19</a>, <a href="#5__70__18">5.70.18</a>, <a href="#5__70__16">5.70.16</a>, <a href="#5__70__15">5.70.15</a>, <a href="#5__70__14">5.70.14</a>, <a href="#5__70__13">5.70.13</a>, <a href="#5__70__12">5.70.12</a>, <a href="#5__70__11">5.70.11</a>, <a href="#5__70__10">5.70.10</a>, <a href="#5__70__9">5.70.9</a>, <a href="#5__70__8">5.70.8</a>, <a href="#5__70__7">5.70.7</a>, <a href="#5__70__6">5.70.6</a>, <a href="#5__70__5">5.70.5</a>, <a href="#5__70__4">5.70.4</a>, <a href="#5__70__3">5.70.3</a>, <a href="#5__70__2">5.70.2</a>, <a href="#5__70__1">5.70.1</a>, <a href="#5__70__0">5.70.0</a>, <a href="#5__69__4">5.69.4</a>, <a href="#5__69__3">5.69.3</a>, <a href="#5__69__2">5.69.2</a>, <a href="#5__69__0">5.69.0</a>, <a href="#5__68__0">5.68.0</a>, <a href="#5__67__2">5.67.2</a>, <a href="#5__67__0">5.67.0</a>, <a href="#5__66__0">5.66.0</a>, <a href="#5__65__14">5.65.14</a>, <a href="#5__65__12">5.65.12</a>, <a href="#5__65__11">5.65.11</a>, <a href="#5__65__10">5.65.10</a>, <a href="#5__65__9">5.65.9</a>, <a href="#5__65__8">5.65.8</a>, <a href="#5__65__7">5.65.7</a>, <a href="#5__65__5">5.65.5</a>, <a href="#5__65__4">5.65.4</a>, <a href="#5__65__3">5.65.3</a>, <a href="#5__65__2">5.65.2</a>, <a href="#5__65__1">5.65.1</a>, <a href="#5__65__0">5.65.0</a>, <a href="#5__64__2">5.64.2</a>, <a href="#5__64__1">5.64.1</a>, <a href="#5__64__0">5.64.0</a>, <a href="#5__63__0">5.63.0</a>, <a href="#5__62__0">5.62.0</a>, <a href="#5__61__4">5.61.4</a>, <a href="#5__61__3">5.61.3</a>, <a href="#5__61__2">5.61.2</a>, <a href="#5__61__1">5.61.1</a>, <a href="#5__60__4">5.60.4</a>, <a href="#5__60__3">5.60.3</a>, <a href="#5__60__0">5.60.0</a>, <a href="#5__59__1">5.59.1</a>, <a href="#5__59__0">5.59.0</a>, <a href="#5__58__1">5.58.1</a>, <a href="#5__58__0">5.58.0</a>, <a href="#5__57__1">5.57.1</a>, <a href="#5__57__0">5.57.0</a>, <a href="#5__56__2">5.56.2</a>, <a href="#5__56__1">5.56.1</a>, <a href="#5__55__0">5.55.0</a>, <a href="#5__54__0">5.54.0</a>, <a href="#5__53__0">5.53.0</a>, <a href="#5__52__0">5.52.0</a>, <a href="#5__51__0">5.51.0</a>, <a href="#5__50__0">5.50.0</a>, <a href="#5__49__0">5.49.0</a>, <a href="#5__48__0">5.48.0</a>, <a href="#5__47__0">5.47.0</a>, <a href="#5__46__0">5.46.0</a>, <a href="#5__45__2">5.45.2</a>, <a href="#5__45__0">5.45.0</a>, <a href="#5__44__0">5.44.0</a>, <a href="#5__43__2">5.43.2</a>, <a href="#v5__42__0">v5.42.0</a>, <a href="#5__42__0">5.42.0</a>, <a href="#v5__41__15">v5.41.15</a>, <a href="#5__41__15">5.41.15</a>, <a href="#v5__41__14">v5.41.14</a>, <a href="#5__41__14">5.41.14</a>, <a href="#v5__41__12">v5.41.12</a>, <a href="#5__41__12">5.41.12</a>, <a href="#v5__41__10">v5.41.10</a>, <a href="#5__41__10">5.41.10</a>, <a href="#v5__41__9">v5.41.9</a>, <a href="#5__41__9">5.41.9</a>, <a href="#v5__41__8">v5.41.8</a>, <a href="#5__41__8">5.41.8</a>, <a href="#v5__41__7">v5.41.7</a>, <a href="#v5__41__2">v5.41.2</a>, <a href="#v5__41__1">v5.41.1</a>, <a href="#v5__32__14">v5.32.14</a>, <a href="#5__14__0">5.14.0</a>, <a href="#5__12__0">5.12.0</a>, <a href="#5__11__12">5.11.12</a>, <a href="#5__11__1">5.11.1</a>, <a href="#5__11__0">5.11.0</a>
|
|
15
|
+
<a href="#5__85__10">5.85.10</a>, <a href="#5__85__9">5.85.9</a>, <a href="#5__85__8">5.85.8</a>, <a href="#5__85__7">5.85.7</a>, <a href="#5__85__6">5.85.6</a>, <a href="#5__85__5">5.85.5</a>, <a href="#5__85__4">5.85.4</a>, <a href="#5__85__3">5.85.3</a>, <a href="#5__85__2">5.85.2</a>, <a href="#5__85__1">5.85.1</a>, <a href="#5__85__0">5.85.0</a>, <a href="#5__84__1">5.84.1</a>, <a href="#5__84__0">5.84.0</a>, <a href="#5__83__2">5.83.2</a>, <a href="#5__83__1">5.83.1</a>, <a href="#5__83__0">5.83.0</a>, <a href="#5__82__5">5.82.5</a>, <a href="#5__82__4">5.82.4</a>, <a href="#5__82__3">5.82.3</a>, <a href="#5__82__2">5.82.2</a>, <a href="#5__82__1">5.82.1</a>, <a href="#5__82__0">5.82.0</a>, <a href="#5__81__2">5.81.2</a>, <a href="#5__81__0">5.81.0</a>, <a href="#5__80__1">5.80.1</a>, <a href="#5__80__0">5.80.0</a>, <a href="#5__79__18">5.79.18</a>, <a href="#5__79__17">5.79.17</a>, <a href="#5__79__16">5.79.16</a>, <a href="#5__79__15">5.79.15</a>, <a href="#5__79__11">5.79.11</a>, <a href="#5__79__10">5.79.10</a>, <a href="#5__79__9">5.79.9</a>, <a href="#5__79__8">5.79.8</a>, <a href="#5__79__6">5.79.6</a>, <a href="#5__79__4">5.79.4</a>, <a href="#5__79__3">5.79.3</a>, <a href="#5__79__2">5.79.2</a>, <a href="#5__79__1">5.79.1</a>, <a href="#5__79__0">5.79.0</a>, <a href="#5__78__0">5.78.0</a>, <a href="#5__77__1">5.77.1</a>, <a href="#5__77__0">5.77.0</a>, <a href="#5__76__2">5.76.2</a>, <a href="#5__76__0">5.76.0</a>, <a href="#5__75__1">5.75.1</a>, <a href="#5__75__0">5.75.0</a>, <a href="#5__74__0">5.74.0</a>, <a href="#5__73__1">5.73.1</a>, <a href="#5__73__0">5.73.0</a>, <a href="#5__72__5">5.72.5</a>, <a href="#5__72__4">5.72.4</a>, <a href="#5__72__3">5.72.3</a>, <a href="#5__72__2">5.72.2</a>, <a href="#5__72__1">5.72.1</a>, <a href="#5__72__0">5.72.0</a>, <a href="#5__71__1">5.71.1</a>, <a href="#5__71__0">5.71.0</a>, <a href="#5__70__36">5.70.36</a>, <a href="#5__70__35">5.70.35</a>, <a href="#5__70__34">5.70.34</a>, <a href="#5__70__33">5.70.33</a>, <a href="#5__70__32">5.70.32</a>, <a href="#5__70__31">5.70.31</a>, <a href="#5__70__30">5.70.30</a>, <a href="#5__70__29">5.70.29</a>, <a href="#5__70__28">5.70.28</a>, <a href="#5__70__27">5.70.27</a>, <a href="#5__70__26">5.70.26</a>, <a href="#5__70__25">5.70.25</a>, <a href="#5__70__24">5.70.24</a>, <a href="#5__70__23">5.70.23</a>, <a href="#5__70__22">5.70.22</a>, <a href="#5__70__21">5.70.21</a>, <a href="#5__70__20">5.70.20</a>, <a href="#5__70__19">5.70.19</a>, <a href="#5__70__18">5.70.18</a>, <a href="#5__70__16">5.70.16</a>, <a href="#5__70__15">5.70.15</a>, <a href="#5__70__14">5.70.14</a>, <a href="#5__70__13">5.70.13</a>, <a href="#5__70__12">5.70.12</a>, <a href="#5__70__11">5.70.11</a>, <a href="#5__70__10">5.70.10</a>, <a href="#5__70__9">5.70.9</a>, <a href="#5__70__8">5.70.8</a>, <a href="#5__70__7">5.70.7</a>, <a href="#5__70__6">5.70.6</a>, <a href="#5__70__5">5.70.5</a>, <a href="#5__70__4">5.70.4</a>, <a href="#5__70__3">5.70.3</a>, <a href="#5__70__2">5.70.2</a>, <a href="#5__70__1">5.70.1</a>, <a href="#5__70__0">5.70.0</a>, <a href="#5__69__4">5.69.4</a>, <a href="#5__69__3">5.69.3</a>, <a href="#5__69__2">5.69.2</a>, <a href="#5__69__0">5.69.0</a>, <a href="#5__68__0">5.68.0</a>, <a href="#5__67__2">5.67.2</a>, <a href="#5__67__0">5.67.0</a>, <a href="#5__66__0">5.66.0</a>, <a href="#5__65__14">5.65.14</a>, <a href="#5__65__12">5.65.12</a>, <a href="#5__65__11">5.65.11</a>, <a href="#5__65__10">5.65.10</a>, <a href="#5__65__9">5.65.9</a>, <a href="#5__65__8">5.65.8</a>, <a href="#5__65__7">5.65.7</a>, <a href="#5__65__5">5.65.5</a>, <a href="#5__65__4">5.65.4</a>, <a href="#5__65__3">5.65.3</a>, <a href="#5__65__2">5.65.2</a>, <a href="#5__65__1">5.65.1</a>, <a href="#5__65__0">5.65.0</a>, <a href="#5__64__2">5.64.2</a>, <a href="#5__64__1">5.64.1</a>, <a href="#5__64__0">5.64.0</a>, <a href="#5__63__0">5.63.0</a>, <a href="#5__62__0">5.62.0</a>, <a href="#5__61__4">5.61.4</a>, <a href="#5__61__3">5.61.3</a>, <a href="#5__61__2">5.61.2</a>, <a href="#5__61__1">5.61.1</a>, <a href="#5__60__4">5.60.4</a>, <a href="#5__60__3">5.60.3</a>, <a href="#5__60__0">5.60.0</a>, <a href="#5__59__1">5.59.1</a>, <a href="#5__59__0">5.59.0</a>, <a href="#5__58__1">5.58.1</a>, <a href="#5__58__0">5.58.0</a>, <a href="#5__57__1">5.57.1</a>, <a href="#5__57__0">5.57.0</a>, <a href="#5__56__2">5.56.2</a>, <a href="#5__56__1">5.56.1</a>, <a href="#5__55__0">5.55.0</a>, <a href="#5__54__0">5.54.0</a>, <a href="#5__53__0">5.53.0</a>, <a href="#5__52__0">5.52.0</a>, <a href="#5__51__0">5.51.0</a>, <a href="#5__50__0">5.50.0</a>, <a href="#5__49__0">5.49.0</a>, <a href="#5__48__0">5.48.0</a>, <a href="#5__47__0">5.47.0</a>, <a href="#5__46__0">5.46.0</a>, <a href="#5__45__2">5.45.2</a>, <a href="#5__45__0">5.45.0</a>, <a href="#5__44__0">5.44.0</a>, <a href="#5__43__2">5.43.2</a>, <a href="#v5__42__0">v5.42.0</a>, <a href="#5__42__0">5.42.0</a>, <a href="#v5__41__15">v5.41.15</a>, <a href="#5__41__15">5.41.15</a>, <a href="#v5__41__14">v5.41.14</a>, <a href="#5__41__14">5.41.14</a>, <a href="#v5__41__12">v5.41.12</a>, <a href="#5__41__12">5.41.12</a>, <a href="#v5__41__10">v5.41.10</a>, <a href="#5__41__10">5.41.10</a>, <a href="#v5__41__9">v5.41.9</a>, <a href="#5__41__9">5.41.9</a>, <a href="#v5__41__8">v5.41.8</a>, <a href="#5__41__8">5.41.8</a>, <a href="#v5__41__7">v5.41.7</a>, <a href="#v5__41__2">v5.41.2</a>, <a href="#v5__41__1">v5.41.1</a>, <a href="#v5__32__14">v5.32.14</a>, <a href="#5__14__0">5.14.0</a>, <a href="#5__12__0">5.12.0</a>, <a href="#5__11__12">5.11.12</a>, <a href="#5__11__1">5.11.1</a>, <a href="#5__11__0">5.11.0</a>
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
<a name="5__85__10" />
|
|
26
|
+
|
|
27
|
+
## [5.85.10] - 9/16/2022 5:34:40 PM
|
|
28
|
+
|
|
29
|
+
Commit [ab43e02152256d19579efdb73c9fa6cb04d1b2b3](https://github.com/StoneCypher/jssm/commit/ab43e02152256d19579efdb73c9fa6cb04d1b2b3)
|
|
30
|
+
|
|
31
|
+
Author: `John Haugeland <stonecypher@gmail.com>`
|
|
32
|
+
|
|
33
|
+
Merges [c0c574b, a6026d0]
|
|
34
|
+
|
|
35
|
+
* Merge pull request #545 from StoneCypher/PullThemesOutIntoModule
|
|
36
|
+
* Pull themes out into module
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
## [Untagged] - 9/16/2022 5:30:09 PM
|
|
46
|
+
|
|
47
|
+
Commit [a6026d0bdbec44c03303950130ed34df3a78576e](https://github.com/StoneCypher/jssm/commit/a6026d0bdbec44c03303950130ed34df3a78576e)
|
|
48
|
+
|
|
49
|
+
Author: `John Haugeland <stonecypher@gmail.com>`
|
|
50
|
+
|
|
51
|
+
* Pull themes out into module
|
|
52
|
+
* Fixes StoneCypher/fsl#1210
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
|
|
21
57
|
|
|
22
58
|
|
|
23
59
|
|
|
@@ -151,40 +187,4 @@ Commit [3a01b8d7ae2cee185e4f36c90a95338bf30002cb](https://github.com/StoneCypher
|
|
|
151
187
|
|
|
152
188
|
Author: `John Haugeland <stonecypher@gmail.com>`
|
|
153
189
|
|
|
154
|
-
* that wasn't supposed to be removed...
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
<a name="5__85__6" />
|
|
164
|
-
|
|
165
|
-
## [5.85.6] - 9/12/2022 6:43:57 PM
|
|
166
|
-
|
|
167
|
-
Commit [7d741ba17ccee77138537f732b833efa028dbda7](https://github.com/StoneCypher/jssm/commit/7d741ba17ccee77138537f732b833efa028dbda7)
|
|
168
|
-
|
|
169
|
-
Author: `John Haugeland <stonecypher@gmail.com>`
|
|
170
|
-
|
|
171
|
-
Merges [4b9fefd, 37c0bdf]
|
|
172
|
-
|
|
173
|
-
* Merge pull request #541 from StoneCypher/StartStateRefining
|
|
174
|
-
* Prevent request of illegal state as start state
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
## [Untagged] - 9/12/2022 6:39:19 PM
|
|
184
|
-
|
|
185
|
-
Commit [37c0bdf33263bf4b9dd60ba329108297cf5ea68f](https://github.com/StoneCypher/jssm/commit/37c0bdf33263bf4b9dd60ba329108297cf5ea68f)
|
|
186
|
-
|
|
187
|
-
Author: `John Haugeland <stonecypher@gmail.com>`
|
|
188
|
-
|
|
189
|
-
* Prevent request of illegal state as start state
|
|
190
|
-
* Fixes StoneCypher/fsl#1203, fixes StoneCypher/fsl#1204, fixes StoneCypher/fsl#1205
|
|
190
|
+
* that wasn't supposed to be removed...
|
package/README.md
CHANGED
|
@@ -18,7 +18,7 @@ Please edit the file it's derived from, instead: `./src/md/readme_base.md`
|
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
|
|
21
|
-
* Generated for version 5.85.
|
|
21
|
+
* Generated for version 5.85.11 at 9/16/2022, 11:12:58 PM
|
|
22
22
|
|
|
23
23
|
-->
|
|
24
24
|
# jssm
|
|
@@ -29,7 +29,7 @@ share online. Easy to embed.
|
|
|
29
29
|
|
|
30
30
|
Readable, useful state machines as one-liner strings.
|
|
31
31
|
|
|
32
|
-
***4,
|
|
32
|
+
***4,877 tests*** run 5,768 times. 4,868 specs with 100.0% coverage, 9 fuzz tests with 13.5% coverage. With 2,761 lines, that's about 1.8 tests per line, or 2.1 generated tests per line.
|
|
33
33
|
|
|
34
34
|
***Meet your new state machine library.***
|
|
35
35
|
|
package/dist/es6/jssm.d.ts
CHANGED
|
@@ -56,6 +56,7 @@ declare class Machine<mDT> {
|
|
|
56
56
|
_has_exit_hooks: boolean;
|
|
57
57
|
_has_global_action_hooks: boolean;
|
|
58
58
|
_has_transition_hooks: boolean;
|
|
59
|
+
_has_forced_transitions: boolean;
|
|
59
60
|
_hooks: Map<string, HookHandler<mDT>>;
|
|
60
61
|
_named_hooks: Map<string, HookHandler<mDT>>;
|
|
61
62
|
_entry_hooks: Map<string, HookHandler<mDT>>;
|
|
@@ -481,6 +482,7 @@ declare class Machine<mDT> {
|
|
|
481
482
|
list_named_transitions(): Map<StateType, number>;
|
|
482
483
|
list_actions(): Array<StateType>;
|
|
483
484
|
get uses_actions(): boolean;
|
|
485
|
+
get uses_forced_transitions(): boolean;
|
|
484
486
|
all_themes(): FslTheme[];
|
|
485
487
|
get themes(): FslTheme | FslTheme[];
|
|
486
488
|
set themes(to: FslTheme | FslTheme[]);
|
|
@@ -511,7 +513,10 @@ declare class Machine<mDT> {
|
|
|
511
513
|
/********
|
|
512
514
|
*
|
|
513
515
|
* List all entrances attached to the current state. Please note that the
|
|
514
|
-
* order of the list is not defined.
|
|
516
|
+
* order of the list is not defined. This list includes both unforced and
|
|
517
|
+
* forced entrances; if this isn't desired, consider
|
|
518
|
+
* {@link list_unforced_entrances} or {@link list_forced_entrances} as
|
|
519
|
+
* appropriate.
|
|
515
520
|
*
|
|
516
521
|
* ```typescript
|
|
517
522
|
* import { sm } from 'jssm';
|
|
@@ -531,7 +536,9 @@ declare class Machine<mDT> {
|
|
|
531
536
|
/********
|
|
532
537
|
*
|
|
533
538
|
* List all exits attached to the current state. Please note that the order
|
|
534
|
-
* of the list is not defined.
|
|
539
|
+
* of the list is not defined. This list includes both unforced and forced
|
|
540
|
+
* exits; if this isn't desired, consider {@link list_unforced_exits} or
|
|
541
|
+
* {@link list_forced_exits} as appropriate.
|
|
535
542
|
*
|
|
536
543
|
* ```typescript
|
|
537
544
|
* import { sm } from 'jssm';
|
package/dist/es6/jssm.js
CHANGED
|
@@ -164,6 +164,7 @@ class Machine {
|
|
|
164
164
|
this._has_global_action_hooks = false;
|
|
165
165
|
this._has_transition_hooks = true;
|
|
166
166
|
// no need for a boolean for single hooks, just test for undefinedness
|
|
167
|
+
this._has_forced_transitions = false;
|
|
167
168
|
this._hooks = new Map();
|
|
168
169
|
this._named_hooks = new Map();
|
|
169
170
|
this._entry_hooks = new Map();
|
|
@@ -255,6 +256,9 @@ class Machine {
|
|
|
255
256
|
// add the edge; note its id
|
|
256
257
|
this._edges.push(tr);
|
|
257
258
|
const thisEdgeId = this._edges.length - 1;
|
|
259
|
+
if (tr.forced_only) {
|
|
260
|
+
this._has_forced_transitions = true;
|
|
261
|
+
}
|
|
258
262
|
// guard against repeating a transition name
|
|
259
263
|
if (tr.name) {
|
|
260
264
|
if (this._named_transitions.has(tr.name)) {
|
|
@@ -893,6 +897,9 @@ class Machine {
|
|
|
893
897
|
get uses_actions() {
|
|
894
898
|
return Array.from(this._actions.keys()).length > 0;
|
|
895
899
|
}
|
|
900
|
+
get uses_forced_transitions() {
|
|
901
|
+
return this._has_forced_transitions;
|
|
902
|
+
}
|
|
896
903
|
all_themes() {
|
|
897
904
|
return [...theme_mapping.keys()]; // constructor sets this to "default" otherwise
|
|
898
905
|
}
|
|
@@ -952,7 +959,10 @@ class Machine {
|
|
|
952
959
|
/********
|
|
953
960
|
*
|
|
954
961
|
* List all entrances attached to the current state. Please note that the
|
|
955
|
-
* order of the list is not defined.
|
|
962
|
+
* order of the list is not defined. This list includes both unforced and
|
|
963
|
+
* forced entrances; if this isn't desired, consider
|
|
964
|
+
* {@link list_unforced_entrances} or {@link list_forced_entrances} as
|
|
965
|
+
* appropriate.
|
|
956
966
|
*
|
|
957
967
|
* ```typescript
|
|
958
968
|
* import { sm } from 'jssm';
|
|
@@ -969,14 +979,16 @@ class Machine {
|
|
|
969
979
|
*
|
|
970
980
|
*/
|
|
971
981
|
list_entrances(whichState = this.state()) {
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
982
|
+
var _a, _b;
|
|
983
|
+
const guaranteed = ((_a = this._states.get(whichState)) !== null && _a !== void 0 ? _a : { from: undefined });
|
|
984
|
+
return (_b = guaranteed.from) !== null && _b !== void 0 ? _b : [];
|
|
975
985
|
}
|
|
976
986
|
/********
|
|
977
987
|
*
|
|
978
988
|
* List all exits attached to the current state. Please note that the order
|
|
979
|
-
* of the list is not defined.
|
|
989
|
+
* of the list is not defined. This list includes both unforced and forced
|
|
990
|
+
* exits; if this isn't desired, consider {@link list_unforced_exits} or
|
|
991
|
+
* {@link list_forced_exits} as appropriate.
|
|
980
992
|
*
|
|
981
993
|
* ```typescript
|
|
982
994
|
* import { sm } from 'jssm';
|
|
@@ -993,9 +1005,9 @@ class Machine {
|
|
|
993
1005
|
*
|
|
994
1006
|
*/
|
|
995
1007
|
list_exits(whichState = this.state()) {
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
1008
|
+
var _a, _b;
|
|
1009
|
+
const guaranteed = ((_a = this._states.get(whichState)) !== null && _a !== void 0 ? _a : { to: undefined });
|
|
1010
|
+
return (_b = guaranteed.to) !== null && _b !== void 0 ? _b : [];
|
|
999
1011
|
}
|
|
1000
1012
|
probable_exits_for(whichState) {
|
|
1001
1013
|
const wstate = this._states.get(whichState);
|
package/dist/es6/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const version = "5.85.
|
|
1
|
+
const version = "5.85.11", build_time = 1663395098701;
|
|
2
2
|
export { version, build_time };
|