@camcima/finita 2.0.0 → 2.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.
- package/LICENSE +21 -0
- package/README.md +23 -1
- package/dist/index.cjs +1422 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +525 -0
- package/dist/index.d.ts +525 -22
- package/dist/index.js +1356 -26
- package/dist/index.js.map +1 -1
- package/package.json +27 -6
- package/dist/Dispatcher.d.ts +0 -11
- package/dist/Dispatcher.d.ts.map +0 -1
- package/dist/Dispatcher.js +0 -30
- package/dist/Dispatcher.js.map +0 -1
- package/dist/Event.d.ts +0 -22
- package/dist/Event.d.ts.map +0 -1
- package/dist/Event.js +0 -54
- package/dist/Event.js.map +0 -1
- package/dist/MaybePromise.d.ts +0 -2
- package/dist/MaybePromise.d.ts.map +0 -1
- package/dist/MaybePromise.js +0 -2
- package/dist/MaybePromise.js.map +0 -1
- package/dist/Process.d.ts +0 -15
- package/dist/Process.d.ts.map +0 -1
- package/dist/Process.js +0 -43
- package/dist/Process.js.map +0 -1
- package/dist/State.d.ts +0 -22
- package/dist/State.d.ts.map +0 -1
- package/dist/State.js +0 -65
- package/dist/State.js.map +0 -1
- package/dist/StateCollection.d.ts +0 -14
- package/dist/StateCollection.d.ts.map +0 -1
- package/dist/StateCollection.js +0 -37
- package/dist/StateCollection.js.map +0 -1
- package/dist/Statemachine.d.ts +0 -45
- package/dist/Statemachine.d.ts.map +0 -1
- package/dist/Statemachine.js +0 -206
- package/dist/Statemachine.js.map +0 -1
- package/dist/Transition.d.ts +0 -19
- package/dist/Transition.d.ts.map +0 -1
- package/dist/Transition.js +0 -46
- package/dist/Transition.js.map +0 -1
- package/dist/condition/AndComposite.d.ts +0 -9
- package/dist/condition/AndComposite.d.ts.map +0 -1
- package/dist/condition/AndComposite.js +0 -23
- package/dist/condition/AndComposite.js.map +0 -1
- package/dist/condition/CallbackCondition.d.ts +0 -11
- package/dist/condition/CallbackCondition.d.ts.map +0 -1
- package/dist/condition/CallbackCondition.js +0 -15
- package/dist/condition/CallbackCondition.js.map +0 -1
- package/dist/condition/Contradiction.d.ts +0 -8
- package/dist/condition/Contradiction.d.ts.map +0 -1
- package/dist/condition/Contradiction.js +0 -13
- package/dist/condition/Contradiction.js.map +0 -1
- package/dist/condition/Not.d.ts +0 -8
- package/dist/condition/Not.d.ts.map +0 -1
- package/dist/condition/Not.js +0 -13
- package/dist/condition/Not.js.map +0 -1
- package/dist/condition/OrComposite.d.ts +0 -9
- package/dist/condition/OrComposite.d.ts.map +0 -1
- package/dist/condition/OrComposite.js +0 -23
- package/dist/condition/OrComposite.js.map +0 -1
- package/dist/condition/Tautology.d.ts +0 -8
- package/dist/condition/Tautology.d.ts.map +0 -1
- package/dist/condition/Tautology.js +0 -13
- package/dist/condition/Tautology.js.map +0 -1
- package/dist/condition/Timeout.d.ts +0 -10
- package/dist/condition/Timeout.d.ts.map +0 -1
- package/dist/condition/Timeout.js +0 -30
- package/dist/condition/Timeout.js.map +0 -1
- package/dist/condition/index.d.ts +0 -9
- package/dist/condition/index.d.ts.map +0 -1
- package/dist/condition/index.js +0 -8
- package/dist/condition/index.js.map +0 -1
- package/dist/error/DuplicateStateError.d.ts +0 -5
- package/dist/error/DuplicateStateError.d.ts.map +0 -1
- package/dist/error/DuplicateStateError.js +0 -9
- package/dist/error/DuplicateStateError.js.map +0 -1
- package/dist/error/LockCanNotBeAcquiredError.d.ts +0 -4
- package/dist/error/LockCanNotBeAcquiredError.d.ts.map +0 -1
- package/dist/error/LockCanNotBeAcquiredError.js +0 -7
- package/dist/error/LockCanNotBeAcquiredError.js.map +0 -1
- package/dist/error/WrongEventForStateError.d.ts +0 -6
- package/dist/error/WrongEventForStateError.d.ts.map +0 -1
- package/dist/error/WrongEventForStateError.js +0 -11
- package/dist/error/WrongEventForStateError.js.map +0 -1
- package/dist/error/index.d.ts +0 -4
- package/dist/error/index.d.ts.map +0 -1
- package/dist/error/index.js +0 -4
- package/dist/error/index.js.map +0 -1
- package/dist/factory/AbstractNamedProcessDetector.d.ts +0 -10
- package/dist/factory/AbstractNamedProcessDetector.d.ts.map +0 -1
- package/dist/factory/AbstractNamedProcessDetector.js +0 -18
- package/dist/factory/AbstractNamedProcessDetector.js.map +0 -1
- package/dist/factory/Factory.d.ts +0 -22
- package/dist/factory/Factory.d.ts.map +0 -1
- package/dist/factory/Factory.js +0 -42
- package/dist/factory/Factory.js.map +0 -1
- package/dist/factory/SingleProcessDetector.d.ts +0 -8
- package/dist/factory/SingleProcessDetector.d.ts.map +0 -1
- package/dist/factory/SingleProcessDetector.js +0 -10
- package/dist/factory/SingleProcessDetector.js.map +0 -1
- package/dist/factory/StatefulStateNameDetector.d.ts +0 -6
- package/dist/factory/StatefulStateNameDetector.d.ts.map +0 -1
- package/dist/factory/StatefulStateNameDetector.js +0 -15
- package/dist/factory/StatefulStateNameDetector.js.map +0 -1
- package/dist/factory/index.d.ts +0 -5
- package/dist/factory/index.d.ts.map +0 -1
- package/dist/factory/index.js +0 -5
- package/dist/factory/index.js.map +0 -1
- package/dist/filter/ActiveTransitionFilter.d.ts +0 -6
- package/dist/filter/ActiveTransitionFilter.d.ts.map +0 -1
- package/dist/filter/ActiveTransitionFilter.js +0 -12
- package/dist/filter/ActiveTransitionFilter.js.map +0 -1
- package/dist/filter/FilterStateByEvent.d.ts +0 -5
- package/dist/filter/FilterStateByEvent.d.ts.map +0 -1
- package/dist/filter/FilterStateByEvent.js +0 -10
- package/dist/filter/FilterStateByEvent.js.map +0 -1
- package/dist/filter/FilterStateByFinalState.d.ts +0 -5
- package/dist/filter/FilterStateByFinalState.d.ts.map +0 -1
- package/dist/filter/FilterStateByFinalState.js +0 -15
- package/dist/filter/FilterStateByFinalState.js.map +0 -1
- package/dist/filter/FilterStateByTransition.d.ts +0 -8
- package/dist/filter/FilterStateByTransition.d.ts.map +0 -1
- package/dist/filter/FilterStateByTransition.js +0 -16
- package/dist/filter/FilterStateByTransition.js.map +0 -1
- package/dist/filter/FilterTransitionByEvent.d.ts +0 -5
- package/dist/filter/FilterTransitionByEvent.d.ts.map +0 -1
- package/dist/filter/FilterTransitionByEvent.js +0 -10
- package/dist/filter/FilterTransitionByEvent.js.map +0 -1
- package/dist/filter/index.d.ts +0 -6
- package/dist/filter/index.d.ts.map +0 -1
- package/dist/filter/index.js +0 -6
- package/dist/filter/index.js.map +0 -1
- package/dist/graph/GraphBuilder.d.ts +0 -37
- package/dist/graph/GraphBuilder.d.ts.map +0 -1
- package/dist/graph/GraphBuilder.js +0 -132
- package/dist/graph/GraphBuilder.js.map +0 -1
- package/dist/graph/index.d.ts +0 -3
- package/dist/graph/index.d.ts.map +0 -1
- package/dist/graph/index.js +0 -2
- package/dist/graph/index.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/interfaces/ConditionInterface.d.ts +0 -6
- package/dist/interfaces/ConditionInterface.d.ts.map +0 -1
- package/dist/interfaces/ConditionInterface.js +0 -2
- package/dist/interfaces/ConditionInterface.js.map +0 -1
- package/dist/interfaces/DispatcherInterface.d.ts +0 -11
- package/dist/interfaces/DispatcherInterface.d.ts.map +0 -1
- package/dist/interfaces/DispatcherInterface.js +0 -2
- package/dist/interfaces/DispatcherInterface.js.map +0 -1
- package/dist/interfaces/EventInterface.d.ts +0 -12
- package/dist/interfaces/EventInterface.d.ts.map +0 -1
- package/dist/interfaces/EventInterface.js +0 -2
- package/dist/interfaces/EventInterface.js.map +0 -1
- package/dist/interfaces/FactoryInterface.d.ts +0 -13
- package/dist/interfaces/FactoryInterface.d.ts.map +0 -1
- package/dist/interfaces/FactoryInterface.js +0 -2
- package/dist/interfaces/FactoryInterface.js.map +0 -1
- package/dist/interfaces/LastStateHasChangedDateInterface.d.ts +0 -4
- package/dist/interfaces/LastStateHasChangedDateInterface.d.ts.map +0 -1
- package/dist/interfaces/LastStateHasChangedDateInterface.js +0 -2
- package/dist/interfaces/LastStateHasChangedDateInterface.js.map +0 -1
- package/dist/interfaces/LockAdapterInterface.d.ts +0 -7
- package/dist/interfaces/LockAdapterInterface.d.ts.map +0 -1
- package/dist/interfaces/LockAdapterInterface.js +0 -2
- package/dist/interfaces/LockAdapterInterface.js.map +0 -1
- package/dist/interfaces/LoggerInterface.d.ts +0 -4
- package/dist/interfaces/LoggerInterface.d.ts.map +0 -1
- package/dist/interfaces/LoggerInterface.js +0 -2
- package/dist/interfaces/LoggerInterface.js.map +0 -1
- package/dist/interfaces/Metadata.d.ts +0 -4
- package/dist/interfaces/Metadata.d.ts.map +0 -1
- package/dist/interfaces/Metadata.js +0 -2
- package/dist/interfaces/Metadata.js.map +0 -1
- package/dist/interfaces/MutexFactoryInterface.d.ts +0 -6
- package/dist/interfaces/MutexFactoryInterface.d.ts.map +0 -1
- package/dist/interfaces/MutexFactoryInterface.js +0 -2
- package/dist/interfaces/MutexFactoryInterface.js.map +0 -1
- package/dist/interfaces/MutexInterface.d.ts +0 -8
- package/dist/interfaces/MutexInterface.d.ts.map +0 -1
- package/dist/interfaces/MutexInterface.js +0 -2
- package/dist/interfaces/MutexInterface.js.map +0 -1
- package/dist/interfaces/Named.d.ts +0 -4
- package/dist/interfaces/Named.d.ts.map +0 -1
- package/dist/interfaces/Named.js +0 -2
- package/dist/interfaces/Named.js.map +0 -1
- package/dist/interfaces/Observer.d.ts +0 -11
- package/dist/interfaces/Observer.d.ts.map +0 -1
- package/dist/interfaces/Observer.js +0 -2
- package/dist/interfaces/Observer.js.map +0 -1
- package/dist/interfaces/ProcessDetectorInterface.d.ts +0 -5
- package/dist/interfaces/ProcessDetectorInterface.d.ts.map +0 -1
- package/dist/interfaces/ProcessDetectorInterface.js +0 -2
- package/dist/interfaces/ProcessDetectorInterface.js.map +0 -1
- package/dist/interfaces/ProcessInterface.d.ts +0 -7
- package/dist/interfaces/ProcessInterface.d.ts.map +0 -1
- package/dist/interfaces/ProcessInterface.js +0 -2
- package/dist/interfaces/ProcessInterface.js.map +0 -1
- package/dist/interfaces/StateCollectionInterface.d.ts +0 -7
- package/dist/interfaces/StateCollectionInterface.d.ts.map +0 -1
- package/dist/interfaces/StateCollectionInterface.js +0 -2
- package/dist/interfaces/StateCollectionInterface.js.map +0 -1
- package/dist/interfaces/StateInterface.d.ts +0 -16
- package/dist/interfaces/StateInterface.d.ts.map +0 -1
- package/dist/interfaces/StateInterface.js +0 -2
- package/dist/interfaces/StateInterface.js.map +0 -1
- package/dist/interfaces/StateNameDetectorInterface.d.ts +0 -4
- package/dist/interfaces/StateNameDetectorInterface.d.ts.map +0 -1
- package/dist/interfaces/StateNameDetectorInterface.js +0 -2
- package/dist/interfaces/StateNameDetectorInterface.js.map +0 -1
- package/dist/interfaces/StatefulInterface.d.ts +0 -5
- package/dist/interfaces/StatefulInterface.d.ts.map +0 -1
- package/dist/interfaces/StatefulInterface.js +0 -2
- package/dist/interfaces/StatefulInterface.js.map +0 -1
- package/dist/interfaces/StatemachineInterface.d.ts +0 -20
- package/dist/interfaces/StatemachineInterface.d.ts.map +0 -1
- package/dist/interfaces/StatemachineInterface.js +0 -2
- package/dist/interfaces/StatemachineInterface.js.map +0 -1
- package/dist/interfaces/TransitionInterface.d.ts +0 -12
- package/dist/interfaces/TransitionInterface.d.ts.map +0 -1
- package/dist/interfaces/TransitionInterface.js +0 -2
- package/dist/interfaces/TransitionInterface.js.map +0 -1
- package/dist/interfaces/TransitionSelectorInterface.d.ts +0 -5
- package/dist/interfaces/TransitionSelectorInterface.d.ts.map +0 -1
- package/dist/interfaces/TransitionSelectorInterface.js +0 -2
- package/dist/interfaces/TransitionSelectorInterface.js.map +0 -1
- package/dist/interfaces/Weighted.d.ts +0 -4
- package/dist/interfaces/Weighted.d.ts.map +0 -1
- package/dist/interfaces/Weighted.js +0 -2
- package/dist/interfaces/Weighted.js.map +0 -1
- package/dist/interfaces/index.d.ts +0 -24
- package/dist/interfaces/index.d.ts.map +0 -1
- package/dist/interfaces/index.js +0 -2
- package/dist/interfaces/index.js.map +0 -1
- package/dist/mutex/LockAdapterMutex.d.ts +0 -13
- package/dist/mutex/LockAdapterMutex.d.ts.map +0 -1
- package/dist/mutex/LockAdapterMutex.js +0 -32
- package/dist/mutex/LockAdapterMutex.js.map +0 -1
- package/dist/mutex/MutexFactory.d.ts +0 -11
- package/dist/mutex/MutexFactory.d.ts.map +0 -1
- package/dist/mutex/MutexFactory.js +0 -13
- package/dist/mutex/MutexFactory.js.map +0 -1
- package/dist/mutex/NullMutex.d.ts +0 -9
- package/dist/mutex/NullMutex.d.ts.map +0 -1
- package/dist/mutex/NullMutex.js +0 -18
- package/dist/mutex/NullMutex.js.map +0 -1
- package/dist/mutex/index.d.ts +0 -5
- package/dist/mutex/index.d.ts.map +0 -1
- package/dist/mutex/index.js +0 -4
- package/dist/mutex/index.js.map +0 -1
- package/dist/observer/CallbackObserver.d.ts +0 -8
- package/dist/observer/CallbackObserver.d.ts.map +0 -1
- package/dist/observer/CallbackObserver.js +0 -14
- package/dist/observer/CallbackObserver.js.map +0 -1
- package/dist/observer/OnEnterObserver.d.ts +0 -8
- package/dist/observer/OnEnterObserver.d.ts.map +0 -1
- package/dist/observer/OnEnterObserver.js +0 -28
- package/dist/observer/OnEnterObserver.js.map +0 -1
- package/dist/observer/StatefulStatusChanger.d.ts +0 -5
- package/dist/observer/StatefulStatusChanger.d.ts.map +0 -1
- package/dist/observer/StatefulStatusChanger.js +0 -24
- package/dist/observer/StatefulStatusChanger.js.map +0 -1
- package/dist/observer/TransitionLogger.d.ts +0 -9
- package/dist/observer/TransitionLogger.d.ts.map +0 -1
- package/dist/observer/TransitionLogger.js +0 -62
- package/dist/observer/TransitionLogger.js.map +0 -1
- package/dist/observer/index.d.ts +0 -5
- package/dist/observer/index.d.ts.map +0 -1
- package/dist/observer/index.js +0 -5
- package/dist/observer/index.js.map +0 -1
- package/dist/selector/OneOrNoneActiveTransition.d.ts +0 -6
- package/dist/selector/OneOrNoneActiveTransition.d.ts.map +0 -1
- package/dist/selector/OneOrNoneActiveTransition.js +0 -14
- package/dist/selector/OneOrNoneActiveTransition.js.map +0 -1
- package/dist/selector/ScoreTransition.d.ts +0 -9
- package/dist/selector/ScoreTransition.d.ts.map +0 -1
- package/dist/selector/ScoreTransition.js +0 -34
- package/dist/selector/ScoreTransition.js.map +0 -1
- package/dist/selector/WeightTransition.d.ts +0 -9
- package/dist/selector/WeightTransition.d.ts.map +0 -1
- package/dist/selector/WeightTransition.js +0 -27
- package/dist/selector/WeightTransition.js.map +0 -1
- package/dist/selector/index.d.ts +0 -4
- package/dist/selector/index.d.ts.map +0 -1
- package/dist/selector/index.js +0 -4
- package/dist/selector/index.js.map +0 -1
- package/dist/util/SetupHelper.d.ts +0 -17
- package/dist/util/SetupHelper.d.ts.map +0 -1
- package/dist/util/SetupHelper.js +0 -48
- package/dist/util/SetupHelper.js.map +0 -1
- package/dist/util/StateCollectionMerger.d.ts +0 -23
- package/dist/util/StateCollectionMerger.d.ts.map +0 -1
- package/dist/util/StateCollectionMerger.js +0 -83
- package/dist/util/StateCollectionMerger.js.map +0 -1
- package/dist/util/index.d.ts +0 -3
- package/dist/util/index.d.ts.map +0 -1
- package/dist/util/index.js +0 -3
- package/dist/util/index.js.map +0 -1
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Carlos Cima
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -6,7 +6,8 @@
|
|
|
6
6
|
|
|
7
7
|
<br>
|
|
8
8
|
|
|
9
|
-
[](https://github.com/camcima/finita/actions/workflows/ci.yml)
|
|
9
|
+
[](https://github.com/camcima/finita/actions/workflows/ci.yml)
|
|
10
|
+
[](https://github.com/camcima/finita/security/code-scanning)
|
|
10
11
|
[](https://codecov.io/gh/camcima/finita)
|
|
11
12
|
[](https://www.npmjs.com/package/@camcima/finita)
|
|
12
13
|
[](https://opensource.org/licenses/MIT)
|
|
@@ -188,6 +189,27 @@ src/
|
|
|
188
189
|
error/ # Custom error classes
|
|
189
190
|
```
|
|
190
191
|
|
|
192
|
+
## Security
|
|
193
|
+
|
|
194
|
+
### CI
|
|
195
|
+
|
|
196
|
+
- **CodeQL** -- static analysis for security vulnerabilities (push, PR, weekly)
|
|
197
|
+
- **OSV-Scanner** -- dependency vulnerability scanning against the [OSV database](https://osv.dev/) (push, PR, weekly)
|
|
198
|
+
- **Dependabot** -- automated PRs for dependency and GitHub Actions updates (weekly)
|
|
199
|
+
|
|
200
|
+
### Local (via Lefthook)
|
|
201
|
+
|
|
202
|
+
- **Gitleaks** -- scans staged files for secrets on every commit (auto-skipped if not installed)
|
|
203
|
+
|
|
204
|
+
### Manual checks
|
|
205
|
+
|
|
206
|
+
```bash
|
|
207
|
+
npm run security:audit # npm dependency audit
|
|
208
|
+
npm run security:secrets # Scan full repo for secrets (requires gitleaks)
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
Install Gitleaks: <https://github.com/gitleaks/gitleaks#installing>
|
|
212
|
+
|
|
191
213
|
## Development
|
|
192
214
|
|
|
193
215
|
```bash
|