Comparing version 5.79.18 to 5.80.0
@@ -5,3 +5,3 @@ # Changelog | ||
1019 merges; 145 releases; Changlogging the last 10 commits; Full changelog at [CHANGELOG.long.md](CHANGELOG.long.md) | ||
1025 merges; 146 releases; Changlogging the last 10 commits; Full changelog at [CHANGELOG.long.md](CHANGELOG.long.md) | ||
@@ -16,3 +16,3 @@ | ||
<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> | ||
<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> | ||
@@ -27,11 +27,9 @@ | ||
<a name="5__79__17" /> | ||
## [Untagged] - 8/4/2022 9:15:50 PM | ||
## [5.79.17] - 7/28/2022 10:21:48 PM | ||
Commit [63304cd9d1dd4ea5801edb6437f361023e3d6c32](https://github.com/StoneCypher/jssm/commit/63304cd9d1dd4ea5801edb6437f361023e3d6c32) | ||
Commit [80a5f0821ce4e866bfdb6ed9123ee3e409fdfd99](https://github.com/StoneCypher/jssm/commit/80a5f0821ce4e866bfdb6ed9123ee3e409fdfd99) | ||
Author: `John Haugeland <stonecypher@gmail.com>` | ||
* Definitions for language features in feature comparison matrix | ||
* Styling now works for start, end, and terminal state types too. Fixes StoneCypher/fsl#1143, fixes StoneCypher/fsl#1141, fixes StoneCypher/fsl#1156, fixes StoneCypher/fsl#1157, fixes StoneCypher/fsl#242 | ||
@@ -45,18 +43,13 @@ | ||
<a name="5__79__16" /> | ||
## [Untagged] - 8/4/2022 1:50:52 AM | ||
## [5.79.16] - 7/28/2022 7:04:27 PM | ||
Commit [89948de7b9857909a6132c95cd6019be08e82d18](https://github.com/StoneCypher/jssm/commit/89948de7b9857909a6132c95cd6019be08e82d18) | ||
Commit [a76a9d87b7f1d691e982d9b5da8a5bc0d68fc1ea](https://github.com/StoneCypher/jssm/commit/a76a9d87b7f1d691e982d9b5da8a5bc0d68fc1ea) | ||
Author: `John Haugeland <stonecypher@gmail.com>` | ||
Merges [3cceb0a, 3363432] | ||
* Semi-working implementation of style condensation, fixes StoneCypher/fsl#1141; added base stylesheet, fixes StoneCypher/fsl#1142 | ||
* Merge pull request #525 from StoneCypher/FinishComparisonMatrix | ||
* Adds `stent`, `fsm`, `fsm-event`, `node-state`, `state-machine`, `stately.js` to feature comparison table, fixes StoneCypher/fsl#1118, fixes StoneCypher/fsl#1119, fixes StoneCypher/fsl#1120, fixes StoneCypher/fsl#1121, fixes StoneCypher/fsl#1122, fixes StoneCypher/fsl#1123 | ||
| ||
@@ -66,9 +59,9 @@ | ||
## [Untagged] - 7/28/2022 7:01:10 PM | ||
## [Untagged] - 8/2/2022 3:50:45 PM | ||
Commit [3363432b1abe446798ca41beff6ce7a9f3b6cee6](https://github.com/StoneCypher/jssm/commit/3363432b1abe446798ca41beff6ce7a9f3b6cee6) | ||
Commit [9001216af66f3fc719a406402d1d07f66cea465c](https://github.com/StoneCypher/jssm/commit/9001216af66f3fc719a406402d1d07f66cea465c) | ||
Author: `John Haugeland <stonecypher@gmail.com>` | ||
* Adds `stent`, `fsm`, `fsm-event`, `node-state`, `state-machine`, `stately.js`, `node-state` to feature comparison table, fixes StoneCypher/fsl#1118, fixes StoneCypher/fsl#1119, fixes StoneCypher/fsl#1120, fixes StoneCypher/fsl#1121, fixes StoneCypher/fsl#1122, fixes StoneCypher/fsl#1123 | ||
* Six style modalities exposed, fixes StoneCypher/fsl#1136, fixes StoneCypher/fsl#1137, fixes StoneCypher/fsl#1138, fixes StoneCypher/fsl#1139, fixes StoneCypher/fsl#1140 | ||
@@ -82,18 +75,13 @@ | ||
<a name="5__79__15" /> | ||
## [Untagged] - 8/1/2022 12:08:55 PM | ||
## [5.79.15] - 7/28/2022 3:47:24 PM | ||
Commit [1c4fcaaf1b15087b8d2aaa4fcf08ee386fb7c90c](https://github.com/StoneCypher/jssm/commit/1c4fcaaf1b15087b8d2aaa4fcf08ee386fb7c90c) | ||
Commit [3cceb0ab8a9d56f7f3cd79b6ff64beb882e7bc86](https://github.com/StoneCypher/jssm/commit/3cceb0ab8a9d56f7f3cd79b6ff64beb882e7bc86) | ||
Author: `John Haugeland <stonecypher@gmail.com>` | ||
Merges [bc39f54, 3ace82f] | ||
* all six state styles (start end standard hooked terminal current) now make it through to the machine, fixes StoneCypher/fsl#1131, fixes StoneCypher/fsl#1132, fixes StoneCypher/fsl#1133, fixes StoneCypher/fsl#1134, fixes StoneCypher/fsl#1135 | ||
* Merge pull request #524 from StoneCypher/MoreTryingToFixTwitterTweeter | ||
* More trying to fix twitter tweeter | ||
| ||
@@ -103,9 +91,9 @@ | ||
## [Untagged] - 7/28/2022 3:37:38 PM | ||
## [Untagged] - 8/1/2022 12:08:55 PM | ||
Commit [3ace82f3e03403765c72ffda4e4e8819bcd1e1ca](https://github.com/StoneCypher/jssm/commit/3ace82f3e03403765c72ffda4e4e8819bcd1e1ca) | ||
Commit [2fb6d05732af642351819a635e43415afab184ce](https://github.com/StoneCypher/jssm/commit/2fb6d05732af642351819a635e43415afab184ce) | ||
Author: `John Haugeland <stonecypher@gmail.com>` | ||
* Working on the Twitter release message | ||
* all six state styles (start end standard hooked terminal current) now make it through to the machine | ||
@@ -119,16 +107,15 @@ | ||
## [Untagged] - 7/28/2022 3:28:23 PM | ||
<a name="5__79__18" /> | ||
Commit [bc39f54865c2eb421261ee1a6ff9e3f6cc3f0b66](https://github.com/StoneCypher/jssm/commit/bc39f54865c2eb421261ee1a6ff9e3f6cc3f0b66) | ||
## [5.79.18] - 7/28/2022 11:21:27 PM | ||
Commit [4d79b09ceed3385fbfd237092c5befd0b120f589](https://github.com/StoneCypher/jssm/commit/4d79b09ceed3385fbfd237092c5befd0b120f589) | ||
Author: `John Haugeland <stonecypher@gmail.com>` | ||
Merges [98eb7eb, 6324d89] | ||
* Compile benchmark, fixes StoneCypher/fsl#1130 | ||
* Merge pull request #523 from StoneCypher/MoreComparisonChart | ||
* More comparison chart | ||
| ||
@@ -138,15 +125,15 @@ | ||
## [Untagged] - 7/28/2022 3:25:12 PM | ||
<a name="5__79__17" /> | ||
Commit [6483abdffc869f010f866110c55295da1bee022d](https://github.com/StoneCypher/jssm/commit/6483abdffc869f010f866110c55295da1bee022d) | ||
## [5.79.17] - 7/28/2022 10:21:48 PM | ||
Commit [80a5f0821ce4e866bfdb6ed9123ee3e409fdfd99](https://github.com/StoneCypher/jssm/commit/80a5f0821ce4e866bfdb6ed9123ee3e409fdfd99) | ||
Author: `John Haugeland <stonecypher@gmail.com>` | ||
Merges [6324d89, 98eb7eb] | ||
* Definitions for language features in feature comparison matrix | ||
* Merge branch 'main' into MoreComparisonChart | ||
| ||
@@ -156,13 +143,18 @@ | ||
## [Untagged] - 7/28/2022 3:24:41 PM | ||
<a name="5__79__16" /> | ||
Commit [6324d89f41053d8129df931d56ef4a0fdf499500](https://github.com/StoneCypher/jssm/commit/6324d89f41053d8129df931d56ef4a0fdf499500) | ||
## [5.79.16] - 7/28/2022 7:04:27 PM | ||
Commit [a76a9d87b7f1d691e982d9b5da8a5bc0d68fc1ea](https://github.com/StoneCypher/jssm/commit/a76a9d87b7f1d691e982d9b5da8a5bc0d68fc1ea) | ||
Author: `John Haugeland <stonecypher@gmail.com>` | ||
* try to fix the broken publish env | ||
Merges [3cceb0a, 3363432] | ||
* Merge pull request #525 from StoneCypher/FinishComparisonMatrix | ||
* Adds `stent`, `fsm`, `fsm-event`, `node-state`, `state-machine`, `stately.js` to feature comparison table, fixes StoneCypher/fsl#1118, fixes StoneCypher/fsl#1119, fixes StoneCypher/fsl#1120, fixes StoneCypher/fsl#1121, fixes StoneCypher/fsl#1122, fixes StoneCypher/fsl#1123 | ||
| ||
@@ -172,9 +164,9 @@ | ||
## [Untagged] - 7/28/2022 3:19:37 PM | ||
## [Untagged] - 7/28/2022 7:01:10 PM | ||
Commit [915482bf57474c05cb0b8722e89d782eda4ea61c](https://github.com/StoneCypher/jssm/commit/915482bf57474c05cb0b8722e89d782eda4ea61c) | ||
Commit [3363432b1abe446798ca41beff6ce7a9f3b6cee6](https://github.com/StoneCypher/jssm/commit/3363432b1abe446798ca41beff6ce7a9f3b6cee6) | ||
Author: `John Haugeland <stonecypher@gmail.com>` | ||
* Adds `machina`, `finity`, `fsm-iterator`, `fsm-as-promised` to feature comparison table, fixes StoneCypher/fsl#1114, fixes StoneCypher/fsl#1115, fixes StoneCypher/fsl#1116, fixes StoneCypher/fsl#1117 | ||
* Adds `stent`, `fsm`, `fsm-event`, `node-state`, `state-machine`, `stately.js`, `node-state` to feature comparison table, fixes StoneCypher/fsl#1118, fixes StoneCypher/fsl#1119, fixes StoneCypher/fsl#1120, fixes StoneCypher/fsl#1121, fixes StoneCypher/fsl#1122, fixes StoneCypher/fsl#1123 | ||
@@ -188,11 +180,13 @@ | ||
## [Untagged] - 7/28/2022 1:46:09 PM | ||
<a name="5__79__15" /> | ||
Commit [98eb7eb745ed5b8593e7695764ddee37eb8ecf9e](https://github.com/StoneCypher/jssm/commit/98eb7eb745ed5b8593e7695764ddee37eb8ecf9e) | ||
## [5.79.15] - 7/28/2022 3:47:24 PM | ||
Commit [3cceb0ab8a9d56f7f3cd79b6ff64beb882e7bc86](https://github.com/StoneCypher/jssm/commit/3cceb0ab8a9d56f7f3cd79b6ff64beb882e7bc86) | ||
Author: `John Haugeland <stonecypher@gmail.com>` | ||
Merges [66cbb1d, 16920b1] | ||
Merges [bc39f54, 3ace82f] | ||
* Merge pull request #522 from StoneCypher/MoreComparisonChart | ||
* More comparison chart | ||
* Merge pull request #524 from StoneCypher/MoreTryingToFixTwitterTweeter | ||
* More trying to fix twitter tweeter |
@@ -108,3 +108,3 @@ import { circular_buffer } from 'circular_buffer_js'; | ||
corners?: JssmCorner; | ||
linestyle?: JssmLineStyle; | ||
lineStyle?: JssmLineStyle; | ||
textColor?: JssmColor; | ||
@@ -119,2 +119,33 @@ backgroundColor?: JssmColor; | ||
}; | ||
declare type JssmStateConfig = Partial<JssmStateDeclaration>; | ||
declare type JssmStateStyleShape = { | ||
key: 'shape'; | ||
value: JssmShape; | ||
}; | ||
declare type JssmStateStyleColor = { | ||
key: 'color'; | ||
value: JssmColor; | ||
}; | ||
declare type JssmStateStyleTextColor = { | ||
key: 'text-color'; | ||
value: JssmColor; | ||
}; | ||
declare type JssmStateStyleCorners = { | ||
key: 'corners'; | ||
value: JssmCorner; | ||
}; | ||
declare type JssmStateStyleLineStyle = { | ||
key: 'line-style'; | ||
value: JssmLineStyle; | ||
}; | ||
declare type JssmStateStyleBackgroundColor = { | ||
key: 'background-color'; | ||
value: JssmColor; | ||
}; | ||
declare type JssmStateStyleBorderColor = { | ||
key: 'border-color'; | ||
value: JssmColor; | ||
}; | ||
declare type JssmStateStyleKey = JssmStateStyleShape | JssmStateStyleColor | JssmStateStyleTextColor | JssmStateStyleCorners | JssmStateStyleLineStyle | JssmStateStyleBackgroundColor | JssmStateStyleBorderColor; | ||
declare type JssmStateStyleKeyList = JssmStateStyleKey[]; | ||
declare type JssmGenericConfig<DataType> = { | ||
@@ -157,2 +188,8 @@ graph_layout?: JssmLayout; | ||
instance_name?: string | undefined; | ||
default_state_config?: JssmStateStyleKeyList; | ||
default_start_state_config?: JssmStateStyleKeyList; | ||
default_end_state_config?: JssmStateStyleKeyList; | ||
default_hooked_state_config?: JssmStateStyleKeyList; | ||
default_terminal_state_config?: JssmStateStyleKeyList; | ||
default_active_state_config?: JssmStateStyleKeyList; | ||
}; | ||
@@ -296,2 +333,2 @@ declare type JssmCompileRule = { | ||
declare type JssmHistory<mDT> = circular_buffer<[StateType, mDT]>; | ||
export { JssmColor, JssmShape, JssmTransition, JssmTransitions, JssmTransitionList, JssmTransitionRule, JssmArrow, JssmArrowKind, JssmArrowDirection, JssmGenericConfig, JssmGenericState, JssmGenericMachine, JssmParseTree, JssmCompileSe, JssmCompileSeStart, JssmCompileRule, JssmPermitted, JssmPermittedOpt, JssmResult, JssmStateDeclaration, JssmStateDeclarationRule, JssmLayout, JssmHistory, JssmSerialization, JssmPropertyDefinition, JssmParseFunctionType, JssmMachineInternalState, JssmErrorExtendedInfo, FslDirection, FslTheme, HookDescription, HookHandler, HookContext, HookResult, HookComplexResult }; | ||
export { JssmColor, JssmShape, JssmTransition, JssmTransitions, JssmTransitionList, JssmTransitionRule, JssmArrow, JssmArrowKind, JssmArrowDirection, JssmGenericConfig, JssmGenericState, JssmGenericMachine, JssmParseTree, JssmCompileSe, JssmCompileSeStart, JssmCompileRule, JssmPermitted, JssmPermittedOpt, JssmResult, JssmStateDeclaration, JssmStateDeclarationRule, JssmStateConfig, JssmStateStyleKey, JssmStateStyleKeyList, JssmLayout, JssmHistory, JssmSerialization, JssmPropertyDefinition, JssmParseFunctionType, JssmMachineInternalState, JssmErrorExtendedInfo, FslDirection, FslTheme, HookDescription, HookHandler, HookContext, HookResult, HookComplexResult }; |
declare type StateType = string; | ||
import { JssmGenericState, JssmGenericConfig, JssmTransition, JssmTransitionList, // JssmTransitionRule, | ||
JssmMachineInternalState, JssmParseTree, JssmStateDeclaration, JssmArrow, JssmArrowDirection, JssmArrowKind, JssmLayout, JssmHistory, JssmSerialization, FslDirection, FslTheme, HookDescription, HookHandler, HookContext, HookResult, HookComplexResult } from './jssm_types'; | ||
import { JssmGenericState, JssmGenericConfig, JssmStateConfig, JssmTransition, JssmTransitionList, // JssmTransitionRule, | ||
JssmMachineInternalState, JssmParseTree, JssmStateDeclaration, JssmStateStyleKeyList, JssmArrow, JssmArrowDirection, JssmArrowKind, JssmLayout, JssmHistory, JssmSerialization, FslDirection, FslTheme, HookDescription, HookHandler, HookContext, HookResult, HookComplexResult } from './jssm_types'; | ||
import { seq, unique, find_repeated, weighted_rand_select, weighted_sample_select, histograph, weighted_histo_key } from './jssm_util'; | ||
@@ -191,2 +191,3 @@ import * as constants from './jssm_constants'; | ||
declare function transfer_state_properties(state_decl: JssmStateDeclaration): JssmStateDeclaration; | ||
declare function state_style_condense(jssk: JssmStateStyleKeyList): JssmStateConfig; | ||
declare class Machine<mDT> { | ||
@@ -201,2 +202,4 @@ _state: StateType; | ||
_reverse_action_targets: Map<StateType, Map<StateType, number>>; | ||
_start_states: Set<StateType>; | ||
_end_states: Set<StateType>; | ||
_machine_author?: Array<string>; | ||
@@ -262,3 +265,9 @@ _machine_comment?: string; | ||
_history_length: number; | ||
constructor({ start_states, complete, transitions, machine_author, machine_comment, machine_contributor, machine_definition, machine_language, machine_license, machine_name, machine_version, state_declaration, property_definition, state_property, fsl_version, dot_preamble, arrange_declaration, arrange_start_declaration, arrange_end_declaration, theme, flow, graph_layout, instance_name, history, data }: JssmGenericConfig<mDT>); | ||
_state_style: JssmStateConfig; | ||
_active_state_style: JssmStateConfig; | ||
_hooked_state_style: JssmStateConfig; | ||
_terminal_state_style: JssmStateConfig; | ||
_start_state_style: JssmStateConfig; | ||
_end_state_style: JssmStateConfig; | ||
constructor({ start_states, end_states, complete, transitions, machine_author, machine_comment, machine_contributor, machine_definition, machine_language, machine_license, machine_name, machine_version, state_declaration, property_definition, state_property, fsl_version, dot_preamble, arrange_declaration, arrange_start_declaration, arrange_end_declaration, theme, flow, graph_layout, instance_name, history, data, default_state_config, default_active_state_config, default_hooked_state_config, default_terminal_state_config, default_start_state_config, default_end_state_config }: JssmGenericConfig<mDT>); | ||
/******** | ||
@@ -423,2 +432,52 @@ * | ||
* | ||
* Check whether a given state is a valid start state (either because it was | ||
* explicitly named as such, or because it was the first mentioned state.) | ||
* | ||
* ```typescript | ||
* import { sm, is_start_state } from 'jssm'; | ||
* | ||
* const example = sm`a -> b;`; | ||
* | ||
* console.log( final_test.is_start_state('a') ); // true | ||
* console.log( final_test.is_start_state('b') ); // false | ||
* | ||
* const example = sm`start_states: [a b]; a -> b;`; | ||
* | ||
* console.log( final_test.is_start_state('a') ); // true | ||
* console.log( final_test.is_start_state('b') ); // true | ||
* ``` | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
* @param whichState The name of the state to check | ||
* | ||
*/ | ||
is_start_state(whichState: StateType): boolean; | ||
/******** | ||
* | ||
* Check whether a given state is a valid start state (either because it was | ||
* explicitly named as such, or because it was the first mentioned state.) | ||
* | ||
* ```typescript | ||
* import { sm, is_end_state } from 'jssm'; | ||
* | ||
* const example = sm`a -> b;`; | ||
* | ||
* console.log( final_test.is_start_state('a') ); // false | ||
* console.log( final_test.is_start_state('b') ); // true | ||
* | ||
* const example = sm`end_states: [a b]; a -> b;`; | ||
* | ||
* console.log( final_test.is_start_state('a') ); // true | ||
* console.log( final_test.is_start_state('b') ); // true | ||
* ``` | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
* @param whichState The name of the state to check | ||
* | ||
*/ | ||
is_end_state(whichState: StateType): boolean; | ||
/******** | ||
* | ||
* Check whether a given state is final (either has no exits or is marked | ||
@@ -448,3 +507,3 @@ * `complete`.) | ||
* ```typescript | ||
* import { sm, state_is_final } from 'jssm'; | ||
* import { sm, is_final } from 'jssm'; | ||
* | ||
@@ -822,2 +881,160 @@ * const final_test = sm`first -> second;`; | ||
* | ||
* Get the standard style for a single state. ***Does not*** include | ||
* composition from an applied theme, or things from the underlying base | ||
* stylesheet; only the modifications applied by this machine. | ||
* | ||
* ```typescript | ||
* const light = sm`a -> b;`; | ||
* console.log(light.standard_state_style); | ||
* // {} | ||
* | ||
* const light = sm`a -> b; state: { shape: circle; };`; | ||
* console.log(light.standard_state_style); | ||
* // { shape: 'circle' } | ||
* ``` | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
*/ | ||
get standard_state_style(): JssmStateConfig; | ||
/******** | ||
* | ||
* Get the hooked state style. ***Does not*** include | ||
* composition from an applied theme, or things from the underlying base | ||
* stylesheet; only the modifications applied by this machine. | ||
* | ||
* The hooked style is only applied to nodes which have a named hook in the | ||
* graph. Open hooks set through the external API aren't graphed, because | ||
* that would be literally every node. | ||
* | ||
* ```typescript | ||
* const light = sm`a -> b;`; | ||
* console.log(light.hooked_state_style); | ||
* // {} | ||
* | ||
* const light = sm`a -> b; hooked_state: { shape: circle; };`; | ||
* console.log(light.hooked_state_style); | ||
* // { shape: 'circle' } | ||
* ``` | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
*/ | ||
get hooked_state_style(): JssmStateConfig; | ||
/******** | ||
* | ||
* Get the start state style. ***Does not*** include composition from an | ||
* applied theme, or things from the underlying base stylesheet; only the | ||
* modifications applied by this machine. | ||
* | ||
* Start states are defined by the directive `start_states`, or in absentia, | ||
* are the first mentioned state. | ||
* | ||
* ```typescript | ||
* const light = sm`a -> b;`; | ||
* console.log(light.start_state_style); | ||
* // {} | ||
* | ||
* const light = sm`a -> b; start_state: { shape: circle; };`; | ||
* console.log(light.start_state_style); | ||
* // { shape: 'circle' } | ||
* ``` | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
*/ | ||
get start_state_style(): JssmStateConfig; | ||
/******** | ||
* | ||
* Get the end state style. ***Does not*** include | ||
* composition from an applied theme, or things from the underlying base | ||
* stylesheet; only the modifications applied by this machine. | ||
* | ||
* End states are defined in the directive `end_states`, and are distinct | ||
* from terminal states. End states are voluntary successful endpoints for a | ||
* process. Terminal states are states that cannot be exited. By example, | ||
* most error states are terminal states, but not end states. Also, since | ||
* some end states can be exited and are determined by hooks, such as | ||
* recursive or iterative nodes, there is such a thing as an end state that | ||
* is not a terminal state. | ||
* | ||
* ```typescript | ||
* const light = sm`a -> b;`; | ||
* console.log(light.standard_state_style); | ||
* // {} | ||
* | ||
* const light = sm`a -> b; end_state: { shape: circle; };`; | ||
* console.log(light.standard_state_style); | ||
* // { shape: 'circle' } | ||
* ``` | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
*/ | ||
get end_state_style(): JssmStateConfig; | ||
/******** | ||
* | ||
* Get the terminal state style. ***Does not*** include | ||
* composition from an applied theme, or things from the underlying base | ||
* stylesheet; only the modifications applied by this machine. | ||
* | ||
* Terminal state styles are automatically determined by the machine. Any | ||
* state without a valid exit transition is terminal. | ||
* | ||
* ```typescript | ||
* const light = sm`a -> b;`; | ||
* console.log(light.terminal_state_style); | ||
* // {} | ||
* | ||
* const light = sm`a -> b; terminal_state: { shape: circle; };`; | ||
* console.log(light.terminal_state_style); | ||
* // { shape: 'circle' } | ||
* ``` | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
*/ | ||
get terminal_state_style(): JssmStateConfig; | ||
/******** | ||
* | ||
* Get the style for the active state. ***Does not*** include | ||
* composition from an applied theme, or things from the underlying base | ||
* stylesheet; only the modifications applied by this machine. | ||
* | ||
* ```typescript | ||
* const light = sm`a -> b;`; | ||
* console.log(light.active_state_style); | ||
* // {} | ||
* | ||
* const light = sm`a -> b; active_state: { shape: circle; };`; | ||
* console.log(light.active_state_style); | ||
* // { shape: 'circle' } | ||
* ``` | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
*/ | ||
get active_state_style(): JssmStateConfig; | ||
/******** | ||
* | ||
* Gets the composite style for a specific node by individually imposing the | ||
* style layers on a given object, after determining which layers are | ||
* appropriate. | ||
* | ||
* The order of composition is base, then theme, then user content. Each | ||
* item in the stack will be composited independently. First, the base state | ||
* style, then the theme state style, then the user state style. | ||
* | ||
* After the three state styles, we'll composite the hooked styles; then the | ||
* terminal styles; then the start styles; then the end styles; finally, the | ||
* active styles. Remember, last wins. | ||
* | ||
* The base state style must exist. All other styles are optional. | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
*/ | ||
style_for(state: StateType): JssmStateConfig; | ||
/******** | ||
* | ||
* Instruct the machine to complete an action. Synonym for {@link action}. | ||
@@ -985,2 +1202,2 @@ * | ||
declare function deserialize<mDT>(machine_string: string, ser: JssmSerialization<mDT>): Machine<mDT>; | ||
export { version, transfer_state_properties, Machine, deserialize, make, wrap_parse as parse, compile, sm, from, arrow_direction, arrow_left_kind, arrow_right_kind, seq, unique, find_repeated, weighted_rand_select, histograph, weighted_sample_select, weighted_histo_key, constants, shapes, gviz_shapes, named_colors, is_hook_rejection, is_hook_complex_result, abstract_hook_step }; | ||
export { version, transfer_state_properties, Machine, deserialize, make, wrap_parse as parse, compile, sm, from, arrow_direction, arrow_left_kind, arrow_right_kind, seq, unique, find_repeated, weighted_rand_select, histograph, weighted_sample_select, weighted_histo_key, constants, shapes, gviz_shapes, named_colors, is_hook_rejection, is_hook_complex_result, abstract_hook_step, state_style_condense }; |
@@ -1,2 +0,2 @@ | ||
const version = "5.79.18"; | ||
const version = "5.80.0"; | ||
export { version }; |
@@ -108,3 +108,3 @@ import { circular_buffer } from 'circular_buffer_js'; | ||
corners?: JssmCorner; | ||
linestyle?: JssmLineStyle; | ||
lineStyle?: JssmLineStyle; | ||
textColor?: JssmColor; | ||
@@ -119,2 +119,33 @@ backgroundColor?: JssmColor; | ||
}; | ||
declare type JssmStateConfig = Partial<JssmStateDeclaration>; | ||
declare type JssmStateStyleShape = { | ||
key: 'shape'; | ||
value: JssmShape; | ||
}; | ||
declare type JssmStateStyleColor = { | ||
key: 'color'; | ||
value: JssmColor; | ||
}; | ||
declare type JssmStateStyleTextColor = { | ||
key: 'text-color'; | ||
value: JssmColor; | ||
}; | ||
declare type JssmStateStyleCorners = { | ||
key: 'corners'; | ||
value: JssmCorner; | ||
}; | ||
declare type JssmStateStyleLineStyle = { | ||
key: 'line-style'; | ||
value: JssmLineStyle; | ||
}; | ||
declare type JssmStateStyleBackgroundColor = { | ||
key: 'background-color'; | ||
value: JssmColor; | ||
}; | ||
declare type JssmStateStyleBorderColor = { | ||
key: 'border-color'; | ||
value: JssmColor; | ||
}; | ||
declare type JssmStateStyleKey = JssmStateStyleShape | JssmStateStyleColor | JssmStateStyleTextColor | JssmStateStyleCorners | JssmStateStyleLineStyle | JssmStateStyleBackgroundColor | JssmStateStyleBorderColor; | ||
declare type JssmStateStyleKeyList = JssmStateStyleKey[]; | ||
declare type JssmGenericConfig<DataType> = { | ||
@@ -157,2 +188,8 @@ graph_layout?: JssmLayout; | ||
instance_name?: string | undefined; | ||
default_state_config?: JssmStateStyleKeyList; | ||
default_start_state_config?: JssmStateStyleKeyList; | ||
default_end_state_config?: JssmStateStyleKeyList; | ||
default_hooked_state_config?: JssmStateStyleKeyList; | ||
default_terminal_state_config?: JssmStateStyleKeyList; | ||
default_active_state_config?: JssmStateStyleKeyList; | ||
}; | ||
@@ -296,2 +333,2 @@ declare type JssmCompileRule = { | ||
declare type JssmHistory<mDT> = circular_buffer<[StateType, mDT]>; | ||
export { JssmColor, JssmShape, JssmTransition, JssmTransitions, JssmTransitionList, JssmTransitionRule, JssmArrow, JssmArrowKind, JssmArrowDirection, JssmGenericConfig, JssmGenericState, JssmGenericMachine, JssmParseTree, JssmCompileSe, JssmCompileSeStart, JssmCompileRule, JssmPermitted, JssmPermittedOpt, JssmResult, JssmStateDeclaration, JssmStateDeclarationRule, JssmLayout, JssmHistory, JssmSerialization, JssmPropertyDefinition, JssmParseFunctionType, JssmMachineInternalState, JssmErrorExtendedInfo, FslDirection, FslTheme, HookDescription, HookHandler, HookContext, HookResult, HookComplexResult }; | ||
export { JssmColor, JssmShape, JssmTransition, JssmTransitions, JssmTransitionList, JssmTransitionRule, JssmArrow, JssmArrowKind, JssmArrowDirection, JssmGenericConfig, JssmGenericState, JssmGenericMachine, JssmParseTree, JssmCompileSe, JssmCompileSeStart, JssmCompileRule, JssmPermitted, JssmPermittedOpt, JssmResult, JssmStateDeclaration, JssmStateDeclarationRule, JssmStateConfig, JssmStateStyleKey, JssmStateStyleKeyList, JssmLayout, JssmHistory, JssmSerialization, JssmPropertyDefinition, JssmParseFunctionType, JssmMachineInternalState, JssmErrorExtendedInfo, FslDirection, FslTheme, HookDescription, HookHandler, HookContext, HookResult, HookComplexResult }; |
227
jssm.d.ts
declare type StateType = string; | ||
import { JssmGenericState, JssmGenericConfig, JssmTransition, JssmTransitionList, // JssmTransitionRule, | ||
JssmMachineInternalState, JssmParseTree, JssmStateDeclaration, JssmArrow, JssmArrowDirection, JssmArrowKind, JssmLayout, JssmHistory, JssmSerialization, FslDirection, FslTheme, HookDescription, HookHandler, HookContext, HookResult, HookComplexResult } from './jssm_types'; | ||
import { JssmGenericState, JssmGenericConfig, JssmStateConfig, JssmTransition, JssmTransitionList, // JssmTransitionRule, | ||
JssmMachineInternalState, JssmParseTree, JssmStateDeclaration, JssmStateStyleKeyList, JssmArrow, JssmArrowDirection, JssmArrowKind, JssmLayout, JssmHistory, JssmSerialization, FslDirection, FslTheme, HookDescription, HookHandler, HookContext, HookResult, HookComplexResult } from './jssm_types'; | ||
import { seq, unique, find_repeated, weighted_rand_select, weighted_sample_select, histograph, weighted_histo_key } from './jssm_util'; | ||
@@ -191,2 +191,3 @@ import * as constants from './jssm_constants'; | ||
declare function transfer_state_properties(state_decl: JssmStateDeclaration): JssmStateDeclaration; | ||
declare function state_style_condense(jssk: JssmStateStyleKeyList): JssmStateConfig; | ||
declare class Machine<mDT> { | ||
@@ -201,2 +202,4 @@ _state: StateType; | ||
_reverse_action_targets: Map<StateType, Map<StateType, number>>; | ||
_start_states: Set<StateType>; | ||
_end_states: Set<StateType>; | ||
_machine_author?: Array<string>; | ||
@@ -262,3 +265,9 @@ _machine_comment?: string; | ||
_history_length: number; | ||
constructor({ start_states, complete, transitions, machine_author, machine_comment, machine_contributor, machine_definition, machine_language, machine_license, machine_name, machine_version, state_declaration, property_definition, state_property, fsl_version, dot_preamble, arrange_declaration, arrange_start_declaration, arrange_end_declaration, theme, flow, graph_layout, instance_name, history, data }: JssmGenericConfig<mDT>); | ||
_state_style: JssmStateConfig; | ||
_active_state_style: JssmStateConfig; | ||
_hooked_state_style: JssmStateConfig; | ||
_terminal_state_style: JssmStateConfig; | ||
_start_state_style: JssmStateConfig; | ||
_end_state_style: JssmStateConfig; | ||
constructor({ start_states, end_states, complete, transitions, machine_author, machine_comment, machine_contributor, machine_definition, machine_language, machine_license, machine_name, machine_version, state_declaration, property_definition, state_property, fsl_version, dot_preamble, arrange_declaration, arrange_start_declaration, arrange_end_declaration, theme, flow, graph_layout, instance_name, history, data, default_state_config, default_active_state_config, default_hooked_state_config, default_terminal_state_config, default_start_state_config, default_end_state_config }: JssmGenericConfig<mDT>); | ||
/******** | ||
@@ -423,2 +432,52 @@ * | ||
* | ||
* Check whether a given state is a valid start state (either because it was | ||
* explicitly named as such, or because it was the first mentioned state.) | ||
* | ||
* ```typescript | ||
* import { sm, is_start_state } from 'jssm'; | ||
* | ||
* const example = sm`a -> b;`; | ||
* | ||
* console.log( final_test.is_start_state('a') ); // true | ||
* console.log( final_test.is_start_state('b') ); // false | ||
* | ||
* const example = sm`start_states: [a b]; a -> b;`; | ||
* | ||
* console.log( final_test.is_start_state('a') ); // true | ||
* console.log( final_test.is_start_state('b') ); // true | ||
* ``` | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
* @param whichState The name of the state to check | ||
* | ||
*/ | ||
is_start_state(whichState: StateType): boolean; | ||
/******** | ||
* | ||
* Check whether a given state is a valid start state (either because it was | ||
* explicitly named as such, or because it was the first mentioned state.) | ||
* | ||
* ```typescript | ||
* import { sm, is_end_state } from 'jssm'; | ||
* | ||
* const example = sm`a -> b;`; | ||
* | ||
* console.log( final_test.is_start_state('a') ); // false | ||
* console.log( final_test.is_start_state('b') ); // true | ||
* | ||
* const example = sm`end_states: [a b]; a -> b;`; | ||
* | ||
* console.log( final_test.is_start_state('a') ); // true | ||
* console.log( final_test.is_start_state('b') ); // true | ||
* ``` | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
* @param whichState The name of the state to check | ||
* | ||
*/ | ||
is_end_state(whichState: StateType): boolean; | ||
/******** | ||
* | ||
* Check whether a given state is final (either has no exits or is marked | ||
@@ -448,3 +507,3 @@ * `complete`.) | ||
* ```typescript | ||
* import { sm, state_is_final } from 'jssm'; | ||
* import { sm, is_final } from 'jssm'; | ||
* | ||
@@ -822,2 +881,160 @@ * const final_test = sm`first -> second;`; | ||
* | ||
* Get the standard style for a single state. ***Does not*** include | ||
* composition from an applied theme, or things from the underlying base | ||
* stylesheet; only the modifications applied by this machine. | ||
* | ||
* ```typescript | ||
* const light = sm`a -> b;`; | ||
* console.log(light.standard_state_style); | ||
* // {} | ||
* | ||
* const light = sm`a -> b; state: { shape: circle; };`; | ||
* console.log(light.standard_state_style); | ||
* // { shape: 'circle' } | ||
* ``` | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
*/ | ||
get standard_state_style(): JssmStateConfig; | ||
/******** | ||
* | ||
* Get the hooked state style. ***Does not*** include | ||
* composition from an applied theme, or things from the underlying base | ||
* stylesheet; only the modifications applied by this machine. | ||
* | ||
* The hooked style is only applied to nodes which have a named hook in the | ||
* graph. Open hooks set through the external API aren't graphed, because | ||
* that would be literally every node. | ||
* | ||
* ```typescript | ||
* const light = sm`a -> b;`; | ||
* console.log(light.hooked_state_style); | ||
* // {} | ||
* | ||
* const light = sm`a -> b; hooked_state: { shape: circle; };`; | ||
* console.log(light.hooked_state_style); | ||
* // { shape: 'circle' } | ||
* ``` | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
*/ | ||
get hooked_state_style(): JssmStateConfig; | ||
/******** | ||
* | ||
* Get the start state style. ***Does not*** include composition from an | ||
* applied theme, or things from the underlying base stylesheet; only the | ||
* modifications applied by this machine. | ||
* | ||
* Start states are defined by the directive `start_states`, or in absentia, | ||
* are the first mentioned state. | ||
* | ||
* ```typescript | ||
* const light = sm`a -> b;`; | ||
* console.log(light.start_state_style); | ||
* // {} | ||
* | ||
* const light = sm`a -> b; start_state: { shape: circle; };`; | ||
* console.log(light.start_state_style); | ||
* // { shape: 'circle' } | ||
* ``` | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
*/ | ||
get start_state_style(): JssmStateConfig; | ||
/******** | ||
* | ||
* Get the end state style. ***Does not*** include | ||
* composition from an applied theme, or things from the underlying base | ||
* stylesheet; only the modifications applied by this machine. | ||
* | ||
* End states are defined in the directive `end_states`, and are distinct | ||
* from terminal states. End states are voluntary successful endpoints for a | ||
* process. Terminal states are states that cannot be exited. By example, | ||
* most error states are terminal states, but not end states. Also, since | ||
* some end states can be exited and are determined by hooks, such as | ||
* recursive or iterative nodes, there is such a thing as an end state that | ||
* is not a terminal state. | ||
* | ||
* ```typescript | ||
* const light = sm`a -> b;`; | ||
* console.log(light.standard_state_style); | ||
* // {} | ||
* | ||
* const light = sm`a -> b; end_state: { shape: circle; };`; | ||
* console.log(light.standard_state_style); | ||
* // { shape: 'circle' } | ||
* ``` | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
*/ | ||
get end_state_style(): JssmStateConfig; | ||
/******** | ||
* | ||
* Get the terminal state style. ***Does not*** include | ||
* composition from an applied theme, or things from the underlying base | ||
* stylesheet; only the modifications applied by this machine. | ||
* | ||
* Terminal state styles are automatically determined by the machine. Any | ||
* state without a valid exit transition is terminal. | ||
* | ||
* ```typescript | ||
* const light = sm`a -> b;`; | ||
* console.log(light.terminal_state_style); | ||
* // {} | ||
* | ||
* const light = sm`a -> b; terminal_state: { shape: circle; };`; | ||
* console.log(light.terminal_state_style); | ||
* // { shape: 'circle' } | ||
* ``` | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
*/ | ||
get terminal_state_style(): JssmStateConfig; | ||
/******** | ||
* | ||
* Get the style for the active state. ***Does not*** include | ||
* composition from an applied theme, or things from the underlying base | ||
* stylesheet; only the modifications applied by this machine. | ||
* | ||
* ```typescript | ||
* const light = sm`a -> b;`; | ||
* console.log(light.active_state_style); | ||
* // {} | ||
* | ||
* const light = sm`a -> b; active_state: { shape: circle; };`; | ||
* console.log(light.active_state_style); | ||
* // { shape: 'circle' } | ||
* ``` | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
*/ | ||
get active_state_style(): JssmStateConfig; | ||
/******** | ||
* | ||
* Gets the composite style for a specific node by individually imposing the | ||
* style layers on a given object, after determining which layers are | ||
* appropriate. | ||
* | ||
* The order of composition is base, then theme, then user content. Each | ||
* item in the stack will be composited independently. First, the base state | ||
* style, then the theme state style, then the user state style. | ||
* | ||
* After the three state styles, we'll composite the hooked styles; then the | ||
* terminal styles; then the start styles; then the end styles; finally, the | ||
* active styles. Remember, last wins. | ||
* | ||
* The base state style must exist. All other styles are optional. | ||
* | ||
* @typeparam mDT The type of the machine data member; usually omitted | ||
* | ||
*/ | ||
style_for(state: StateType): JssmStateConfig; | ||
/******** | ||
* | ||
* Instruct the machine to complete an action. Synonym for {@link action}. | ||
@@ -985,2 +1202,2 @@ * | ||
declare function deserialize<mDT>(machine_string: string, ser: JssmSerialization<mDT>): Machine<mDT>; | ||
export { version, transfer_state_properties, Machine, deserialize, make, wrap_parse as parse, compile, sm, from, arrow_direction, arrow_left_kind, arrow_right_kind, seq, unique, find_repeated, weighted_rand_select, histograph, weighted_sample_select, weighted_histo_key, constants, shapes, gviz_shapes, named_colors, is_hook_rejection, is_hook_complex_result, abstract_hook_step }; | ||
export { version, transfer_state_properties, Machine, deserialize, make, wrap_parse as parse, compile, sm, from, arrow_direction, arrow_left_kind, arrow_right_kind, seq, unique, find_repeated, weighted_rand_select, histograph, weighted_sample_select, weighted_histo_key, constants, shapes, gviz_shapes, named_colors, is_hook_rejection, is_hook_complex_result, abstract_hook_step, state_style_condense }; |
{ | ||
"name": "jssm", | ||
"version": "5.79.18", | ||
"version": "5.80.0", | ||
"engines": { | ||
@@ -5,0 +5,0 @@ "node": ">=10.0.0" |
@@ -21,3 +21,3 @@ <!-- | ||
* Generated for version 5.79.18 at 7/28/2022, 11:12:18 PM | ||
* Generated for version 5.80.0 at 8/4/2022, 9:28:13 PM | ||
@@ -33,3 +33,3 @@ --> | ||
***4,763 tests*** run 5,654 times. 4,754 specs with 100.0% coverage, 9 fuzz tests with 5.4% coverage. With 1,965 lines, that's about 2.4 tests per line, or 2.9 generated tests per line. | ||
***4,798 tests*** run 5,689 times. 4,789 specs with 100.0% coverage, 9 fuzz tests with 5.4% coverage. With 2,175 lines, that's about 2.2 tests per line, or 2.6 generated tests per line. | ||
@@ -36,0 +36,0 @@ ***Meet your new state machine library.*** |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
1225059
41
10104