@camcima/finita 1.0.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 (294) hide show
  1. package/README.md +176 -0
  2. package/dist/Dispatcher.d.ts +11 -0
  3. package/dist/Dispatcher.d.ts.map +1 -0
  4. package/dist/Dispatcher.js +30 -0
  5. package/dist/Dispatcher.js.map +1 -0
  6. package/dist/Event.d.ts +22 -0
  7. package/dist/Event.d.ts.map +1 -0
  8. package/dist/Event.js +54 -0
  9. package/dist/Event.js.map +1 -0
  10. package/dist/MaybePromise.d.ts +2 -0
  11. package/dist/MaybePromise.d.ts.map +1 -0
  12. package/dist/MaybePromise.js +2 -0
  13. package/dist/MaybePromise.js.map +1 -0
  14. package/dist/Process.d.ts +15 -0
  15. package/dist/Process.d.ts.map +1 -0
  16. package/dist/Process.js +43 -0
  17. package/dist/Process.js.map +1 -0
  18. package/dist/State.d.ts +22 -0
  19. package/dist/State.d.ts.map +1 -0
  20. package/dist/State.js +65 -0
  21. package/dist/State.js.map +1 -0
  22. package/dist/StateCollection.d.ts +14 -0
  23. package/dist/StateCollection.d.ts.map +1 -0
  24. package/dist/StateCollection.js +37 -0
  25. package/dist/StateCollection.js.map +1 -0
  26. package/dist/Statemachine.d.ts +45 -0
  27. package/dist/Statemachine.d.ts.map +1 -0
  28. package/dist/Statemachine.js +206 -0
  29. package/dist/Statemachine.js.map +1 -0
  30. package/dist/Transition.d.ts +19 -0
  31. package/dist/Transition.d.ts.map +1 -0
  32. package/dist/Transition.js +46 -0
  33. package/dist/Transition.js.map +1 -0
  34. package/dist/condition/AndComposite.d.ts +9 -0
  35. package/dist/condition/AndComposite.d.ts.map +1 -0
  36. package/dist/condition/AndComposite.js +23 -0
  37. package/dist/condition/AndComposite.js.map +1 -0
  38. package/dist/condition/CallbackCondition.d.ts +11 -0
  39. package/dist/condition/CallbackCondition.d.ts.map +1 -0
  40. package/dist/condition/CallbackCondition.js +15 -0
  41. package/dist/condition/CallbackCondition.js.map +1 -0
  42. package/dist/condition/Contradiction.d.ts +8 -0
  43. package/dist/condition/Contradiction.d.ts.map +1 -0
  44. package/dist/condition/Contradiction.js +13 -0
  45. package/dist/condition/Contradiction.js.map +1 -0
  46. package/dist/condition/Not.d.ts +8 -0
  47. package/dist/condition/Not.d.ts.map +1 -0
  48. package/dist/condition/Not.js +13 -0
  49. package/dist/condition/Not.js.map +1 -0
  50. package/dist/condition/OrComposite.d.ts +9 -0
  51. package/dist/condition/OrComposite.d.ts.map +1 -0
  52. package/dist/condition/OrComposite.js +23 -0
  53. package/dist/condition/OrComposite.js.map +1 -0
  54. package/dist/condition/Tautology.d.ts +8 -0
  55. package/dist/condition/Tautology.d.ts.map +1 -0
  56. package/dist/condition/Tautology.js +13 -0
  57. package/dist/condition/Tautology.js.map +1 -0
  58. package/dist/condition/Timeout.d.ts +10 -0
  59. package/dist/condition/Timeout.d.ts.map +1 -0
  60. package/dist/condition/Timeout.js +30 -0
  61. package/dist/condition/Timeout.js.map +1 -0
  62. package/dist/condition/index.d.ts +9 -0
  63. package/dist/condition/index.d.ts.map +1 -0
  64. package/dist/condition/index.js +8 -0
  65. package/dist/condition/index.js.map +1 -0
  66. package/dist/error/DuplicateStateError.d.ts +5 -0
  67. package/dist/error/DuplicateStateError.d.ts.map +1 -0
  68. package/dist/error/DuplicateStateError.js +9 -0
  69. package/dist/error/DuplicateStateError.js.map +1 -0
  70. package/dist/error/LockCanNotBeAcquiredError.d.ts +4 -0
  71. package/dist/error/LockCanNotBeAcquiredError.d.ts.map +1 -0
  72. package/dist/error/LockCanNotBeAcquiredError.js +7 -0
  73. package/dist/error/LockCanNotBeAcquiredError.js.map +1 -0
  74. package/dist/error/WrongEventForStateError.d.ts +6 -0
  75. package/dist/error/WrongEventForStateError.d.ts.map +1 -0
  76. package/dist/error/WrongEventForStateError.js +11 -0
  77. package/dist/error/WrongEventForStateError.js.map +1 -0
  78. package/dist/error/index.d.ts +4 -0
  79. package/dist/error/index.d.ts.map +1 -0
  80. package/dist/error/index.js +4 -0
  81. package/dist/error/index.js.map +1 -0
  82. package/dist/factory/AbstractNamedProcessDetector.d.ts +10 -0
  83. package/dist/factory/AbstractNamedProcessDetector.d.ts.map +1 -0
  84. package/dist/factory/AbstractNamedProcessDetector.js +18 -0
  85. package/dist/factory/AbstractNamedProcessDetector.js.map +1 -0
  86. package/dist/factory/Factory.d.ts +22 -0
  87. package/dist/factory/Factory.d.ts.map +1 -0
  88. package/dist/factory/Factory.js +42 -0
  89. package/dist/factory/Factory.js.map +1 -0
  90. package/dist/factory/SingleProcessDetector.d.ts +8 -0
  91. package/dist/factory/SingleProcessDetector.d.ts.map +1 -0
  92. package/dist/factory/SingleProcessDetector.js +10 -0
  93. package/dist/factory/SingleProcessDetector.js.map +1 -0
  94. package/dist/factory/StatefulStateNameDetector.d.ts +5 -0
  95. package/dist/factory/StatefulStateNameDetector.d.ts.map +1 -0
  96. package/dist/factory/StatefulStateNameDetector.js +15 -0
  97. package/dist/factory/StatefulStateNameDetector.js.map +1 -0
  98. package/dist/factory/index.d.ts +5 -0
  99. package/dist/factory/index.d.ts.map +1 -0
  100. package/dist/factory/index.js +5 -0
  101. package/dist/factory/index.js.map +1 -0
  102. package/dist/filter/ActiveTransitionFilter.d.ts +6 -0
  103. package/dist/filter/ActiveTransitionFilter.d.ts.map +1 -0
  104. package/dist/filter/ActiveTransitionFilter.js +12 -0
  105. package/dist/filter/ActiveTransitionFilter.js.map +1 -0
  106. package/dist/filter/FilterStateByEvent.d.ts +5 -0
  107. package/dist/filter/FilterStateByEvent.d.ts.map +1 -0
  108. package/dist/filter/FilterStateByEvent.js +10 -0
  109. package/dist/filter/FilterStateByEvent.js.map +1 -0
  110. package/dist/filter/FilterStateByFinalState.d.ts +5 -0
  111. package/dist/filter/FilterStateByFinalState.d.ts.map +1 -0
  112. package/dist/filter/FilterStateByFinalState.js +15 -0
  113. package/dist/filter/FilterStateByFinalState.js.map +1 -0
  114. package/dist/filter/FilterStateByTransition.d.ts +8 -0
  115. package/dist/filter/FilterStateByTransition.d.ts.map +1 -0
  116. package/dist/filter/FilterStateByTransition.js +16 -0
  117. package/dist/filter/FilterStateByTransition.js.map +1 -0
  118. package/dist/filter/FilterTransitionByEvent.d.ts +5 -0
  119. package/dist/filter/FilterTransitionByEvent.d.ts.map +1 -0
  120. package/dist/filter/FilterTransitionByEvent.js +10 -0
  121. package/dist/filter/FilterTransitionByEvent.js.map +1 -0
  122. package/dist/filter/index.d.ts +6 -0
  123. package/dist/filter/index.d.ts.map +1 -0
  124. package/dist/filter/index.js +6 -0
  125. package/dist/filter/index.js.map +1 -0
  126. package/dist/graph/GraphBuilder.d.ts +37 -0
  127. package/dist/graph/GraphBuilder.d.ts.map +1 -0
  128. package/dist/graph/GraphBuilder.js +132 -0
  129. package/dist/graph/GraphBuilder.js.map +1 -0
  130. package/dist/graph/index.d.ts +3 -0
  131. package/dist/graph/index.d.ts.map +1 -0
  132. package/dist/graph/index.js +2 -0
  133. package/dist/graph/index.js.map +1 -0
  134. package/dist/index.d.ts +22 -0
  135. package/dist/index.d.ts.map +1 -0
  136. package/dist/index.js +27 -0
  137. package/dist/index.js.map +1 -0
  138. package/dist/interfaces/ConditionInterface.d.ts +6 -0
  139. package/dist/interfaces/ConditionInterface.d.ts.map +1 -0
  140. package/dist/interfaces/ConditionInterface.js +2 -0
  141. package/dist/interfaces/ConditionInterface.js.map +1 -0
  142. package/dist/interfaces/DispatcherInterface.d.ts +11 -0
  143. package/dist/interfaces/DispatcherInterface.d.ts.map +1 -0
  144. package/dist/interfaces/DispatcherInterface.js +2 -0
  145. package/dist/interfaces/DispatcherInterface.js.map +1 -0
  146. package/dist/interfaces/EventInterface.d.ts +12 -0
  147. package/dist/interfaces/EventInterface.d.ts.map +1 -0
  148. package/dist/interfaces/EventInterface.js +2 -0
  149. package/dist/interfaces/EventInterface.js.map +1 -0
  150. package/dist/interfaces/FactoryInterface.d.ts +13 -0
  151. package/dist/interfaces/FactoryInterface.d.ts.map +1 -0
  152. package/dist/interfaces/FactoryInterface.js +2 -0
  153. package/dist/interfaces/FactoryInterface.js.map +1 -0
  154. package/dist/interfaces/LastStateHasChangedDateInterface.d.ts +4 -0
  155. package/dist/interfaces/LastStateHasChangedDateInterface.d.ts.map +1 -0
  156. package/dist/interfaces/LastStateHasChangedDateInterface.js +2 -0
  157. package/dist/interfaces/LastStateHasChangedDateInterface.js.map +1 -0
  158. package/dist/interfaces/LockAdapterInterface.d.ts +7 -0
  159. package/dist/interfaces/LockAdapterInterface.d.ts.map +1 -0
  160. package/dist/interfaces/LockAdapterInterface.js +2 -0
  161. package/dist/interfaces/LockAdapterInterface.js.map +1 -0
  162. package/dist/interfaces/LoggerInterface.d.ts +4 -0
  163. package/dist/interfaces/LoggerInterface.d.ts.map +1 -0
  164. package/dist/interfaces/LoggerInterface.js +2 -0
  165. package/dist/interfaces/LoggerInterface.js.map +1 -0
  166. package/dist/interfaces/Metadata.d.ts +4 -0
  167. package/dist/interfaces/Metadata.d.ts.map +1 -0
  168. package/dist/interfaces/Metadata.js +2 -0
  169. package/dist/interfaces/Metadata.js.map +1 -0
  170. package/dist/interfaces/MutexFactoryInterface.d.ts +6 -0
  171. package/dist/interfaces/MutexFactoryInterface.d.ts.map +1 -0
  172. package/dist/interfaces/MutexFactoryInterface.js +2 -0
  173. package/dist/interfaces/MutexFactoryInterface.js.map +1 -0
  174. package/dist/interfaces/MutexInterface.d.ts +8 -0
  175. package/dist/interfaces/MutexInterface.d.ts.map +1 -0
  176. package/dist/interfaces/MutexInterface.js +2 -0
  177. package/dist/interfaces/MutexInterface.js.map +1 -0
  178. package/dist/interfaces/Named.d.ts +4 -0
  179. package/dist/interfaces/Named.d.ts.map +1 -0
  180. package/dist/interfaces/Named.js +2 -0
  181. package/dist/interfaces/Named.js.map +1 -0
  182. package/dist/interfaces/Observer.d.ts +11 -0
  183. package/dist/interfaces/Observer.d.ts.map +1 -0
  184. package/dist/interfaces/Observer.js +2 -0
  185. package/dist/interfaces/Observer.js.map +1 -0
  186. package/dist/interfaces/ProcessDetectorInterface.d.ts +5 -0
  187. package/dist/interfaces/ProcessDetectorInterface.d.ts.map +1 -0
  188. package/dist/interfaces/ProcessDetectorInterface.js +2 -0
  189. package/dist/interfaces/ProcessDetectorInterface.js.map +1 -0
  190. package/dist/interfaces/ProcessInterface.d.ts +7 -0
  191. package/dist/interfaces/ProcessInterface.d.ts.map +1 -0
  192. package/dist/interfaces/ProcessInterface.js +2 -0
  193. package/dist/interfaces/ProcessInterface.js.map +1 -0
  194. package/dist/interfaces/StateCollectionInterface.d.ts +7 -0
  195. package/dist/interfaces/StateCollectionInterface.d.ts.map +1 -0
  196. package/dist/interfaces/StateCollectionInterface.js +2 -0
  197. package/dist/interfaces/StateCollectionInterface.js.map +1 -0
  198. package/dist/interfaces/StateInterface.d.ts +16 -0
  199. package/dist/interfaces/StateInterface.d.ts.map +1 -0
  200. package/dist/interfaces/StateInterface.js +2 -0
  201. package/dist/interfaces/StateInterface.js.map +1 -0
  202. package/dist/interfaces/StateNameDetectorInterface.d.ts +4 -0
  203. package/dist/interfaces/StateNameDetectorInterface.d.ts.map +1 -0
  204. package/dist/interfaces/StateNameDetectorInterface.js +2 -0
  205. package/dist/interfaces/StateNameDetectorInterface.js.map +1 -0
  206. package/dist/interfaces/StatefulInterface.d.ts +5 -0
  207. package/dist/interfaces/StatefulInterface.d.ts.map +1 -0
  208. package/dist/interfaces/StatefulInterface.js +2 -0
  209. package/dist/interfaces/StatefulInterface.js.map +1 -0
  210. package/dist/interfaces/StatemachineInterface.d.ts +20 -0
  211. package/dist/interfaces/StatemachineInterface.d.ts.map +1 -0
  212. package/dist/interfaces/StatemachineInterface.js +2 -0
  213. package/dist/interfaces/StatemachineInterface.js.map +1 -0
  214. package/dist/interfaces/TransitionInterface.d.ts +12 -0
  215. package/dist/interfaces/TransitionInterface.d.ts.map +1 -0
  216. package/dist/interfaces/TransitionInterface.js +2 -0
  217. package/dist/interfaces/TransitionInterface.js.map +1 -0
  218. package/dist/interfaces/TransitionSelectorInterface.d.ts +5 -0
  219. package/dist/interfaces/TransitionSelectorInterface.d.ts.map +1 -0
  220. package/dist/interfaces/TransitionSelectorInterface.js +2 -0
  221. package/dist/interfaces/TransitionSelectorInterface.js.map +1 -0
  222. package/dist/interfaces/Weighted.d.ts +4 -0
  223. package/dist/interfaces/Weighted.d.ts.map +1 -0
  224. package/dist/interfaces/Weighted.js +2 -0
  225. package/dist/interfaces/Weighted.js.map +1 -0
  226. package/dist/interfaces/index.d.ts +24 -0
  227. package/dist/interfaces/index.d.ts.map +1 -0
  228. package/dist/interfaces/index.js +2 -0
  229. package/dist/interfaces/index.js.map +1 -0
  230. package/dist/mutex/LockAdapterMutex.d.ts +13 -0
  231. package/dist/mutex/LockAdapterMutex.d.ts.map +1 -0
  232. package/dist/mutex/LockAdapterMutex.js +32 -0
  233. package/dist/mutex/LockAdapterMutex.js.map +1 -0
  234. package/dist/mutex/MutexFactory.d.ts +11 -0
  235. package/dist/mutex/MutexFactory.d.ts.map +1 -0
  236. package/dist/mutex/MutexFactory.js +13 -0
  237. package/dist/mutex/MutexFactory.js.map +1 -0
  238. package/dist/mutex/NullMutex.d.ts +9 -0
  239. package/dist/mutex/NullMutex.d.ts.map +1 -0
  240. package/dist/mutex/NullMutex.js +18 -0
  241. package/dist/mutex/NullMutex.js.map +1 -0
  242. package/dist/mutex/index.d.ts +5 -0
  243. package/dist/mutex/index.d.ts.map +1 -0
  244. package/dist/mutex/index.js +4 -0
  245. package/dist/mutex/index.js.map +1 -0
  246. package/dist/observer/CallbackObserver.d.ts +8 -0
  247. package/dist/observer/CallbackObserver.d.ts.map +1 -0
  248. package/dist/observer/CallbackObserver.js +14 -0
  249. package/dist/observer/CallbackObserver.js.map +1 -0
  250. package/dist/observer/OnEnterObserver.d.ts +8 -0
  251. package/dist/observer/OnEnterObserver.d.ts.map +1 -0
  252. package/dist/observer/OnEnterObserver.js +28 -0
  253. package/dist/observer/OnEnterObserver.js.map +1 -0
  254. package/dist/observer/StatefulStatusChanger.d.ts +5 -0
  255. package/dist/observer/StatefulStatusChanger.d.ts.map +1 -0
  256. package/dist/observer/StatefulStatusChanger.js +24 -0
  257. package/dist/observer/StatefulStatusChanger.js.map +1 -0
  258. package/dist/observer/TransitionLogger.d.ts +9 -0
  259. package/dist/observer/TransitionLogger.d.ts.map +1 -0
  260. package/dist/observer/TransitionLogger.js +62 -0
  261. package/dist/observer/TransitionLogger.js.map +1 -0
  262. package/dist/observer/index.d.ts +5 -0
  263. package/dist/observer/index.d.ts.map +1 -0
  264. package/dist/observer/index.js +5 -0
  265. package/dist/observer/index.js.map +1 -0
  266. package/dist/selector/OneOrNoneActiveTransition.d.ts +6 -0
  267. package/dist/selector/OneOrNoneActiveTransition.d.ts.map +1 -0
  268. package/dist/selector/OneOrNoneActiveTransition.js +14 -0
  269. package/dist/selector/OneOrNoneActiveTransition.js.map +1 -0
  270. package/dist/selector/ScoreTransition.d.ts +9 -0
  271. package/dist/selector/ScoreTransition.d.ts.map +1 -0
  272. package/dist/selector/ScoreTransition.js +33 -0
  273. package/dist/selector/ScoreTransition.js.map +1 -0
  274. package/dist/selector/WeightTransition.d.ts +9 -0
  275. package/dist/selector/WeightTransition.d.ts.map +1 -0
  276. package/dist/selector/WeightTransition.js +26 -0
  277. package/dist/selector/WeightTransition.js.map +1 -0
  278. package/dist/selector/index.d.ts +4 -0
  279. package/dist/selector/index.d.ts.map +1 -0
  280. package/dist/selector/index.js +4 -0
  281. package/dist/selector/index.js.map +1 -0
  282. package/dist/util/SetupHelper.d.ts +17 -0
  283. package/dist/util/SetupHelper.d.ts.map +1 -0
  284. package/dist/util/SetupHelper.js +48 -0
  285. package/dist/util/SetupHelper.js.map +1 -0
  286. package/dist/util/StateCollectionMerger.d.ts +23 -0
  287. package/dist/util/StateCollectionMerger.d.ts.map +1 -0
  288. package/dist/util/StateCollectionMerger.js +83 -0
  289. package/dist/util/StateCollectionMerger.js.map +1 -0
  290. package/dist/util/index.d.ts +3 -0
  291. package/dist/util/index.d.ts.map +1 -0
  292. package/dist/util/index.js +3 -0
  293. package/dist/util/index.js.map +1 -0
  294. package/package.json +52 -0
@@ -0,0 +1,24 @@
1
+ export type { MaybePromise } from "../MaybePromise.js";
2
+ export type { Named } from "./Named.js";
3
+ export type { Metadata } from "./Metadata.js";
4
+ export type { Weighted } from "./Weighted.js";
5
+ export type { Observer, ObservableSubject } from "./Observer.js";
6
+ export type { ConditionInterface } from "./ConditionInterface.js";
7
+ export type { EventInterface } from "./EventInterface.js";
8
+ export type { TransitionInterface } from "./TransitionInterface.js";
9
+ export type { StateInterface } from "./StateInterface.js";
10
+ export type { StateCollectionInterface } from "./StateCollectionInterface.js";
11
+ export type { ProcessInterface } from "./ProcessInterface.js";
12
+ export type { StatemachineInterface } from "./StatemachineInterface.js";
13
+ export type { MutexInterface } from "./MutexInterface.js";
14
+ export type { MutexFactoryInterface } from "./MutexFactoryInterface.js";
15
+ export type { LockAdapterInterface } from "./LockAdapterInterface.js";
16
+ export type { TransitionSelectorInterface } from "./TransitionSelectorInterface.js";
17
+ export type { ProcessDetectorInterface } from "./ProcessDetectorInterface.js";
18
+ export type { StateNameDetectorInterface } from "./StateNameDetectorInterface.js";
19
+ export type { FactoryInterface } from "./FactoryInterface.js";
20
+ export type { StatefulInterface } from "./StatefulInterface.js";
21
+ export type { LastStateHasChangedDateInterface } from "./LastStateHasChangedDateInterface.js";
22
+ export type { DispatcherInterface, CallbackInterface, } from "./DispatcherInterface.js";
23
+ export type { LoggerInterface } from "./LoggerInterface.js";
24
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/interfaces/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,YAAY,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACjE,YAAY,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,YAAY,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,YAAY,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9E,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,YAAY,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,YAAY,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,YAAY,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtE,YAAY,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AACpF,YAAY,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAC9E,YAAY,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAClF,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,YAAY,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAChE,YAAY,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAC;AAC9F,YAAY,EACV,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/interfaces/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ import type { MutexInterface } from "../interfaces/MutexInterface.js";
2
+ import type { LockAdapterInterface } from "../interfaces/LockAdapterInterface.js";
3
+ export declare class LockAdapterMutex implements MutexInterface {
4
+ private readonly lockAdapter;
5
+ private readonly resourceName;
6
+ private acquired;
7
+ constructor(lockAdapter: LockAdapterInterface, resourceName: string);
8
+ acquireLock(): Promise<boolean>;
9
+ releaseLock(): Promise<boolean>;
10
+ isAcquired(): boolean;
11
+ isLocked(): Promise<boolean>;
12
+ }
13
+ //# sourceMappingURL=LockAdapterMutex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LockAdapterMutex.d.ts","sourceRoot":"","sources":["../../src/mutex/LockAdapterMutex.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAElF,qBAAa,gBAAiB,YAAW,cAAc;IACrD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAuB;IACnD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAS;gBAEb,WAAW,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM;IAK7D,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAO/B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAWrC,UAAU,IAAI,OAAO;IAIf,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;CAGnC"}
@@ -0,0 +1,32 @@
1
+ export class LockAdapterMutex {
2
+ lockAdapter;
3
+ resourceName;
4
+ acquired = false;
5
+ constructor(lockAdapter, resourceName) {
6
+ this.lockAdapter = lockAdapter;
7
+ this.resourceName = resourceName;
8
+ }
9
+ async acquireLock() {
10
+ if (!this.acquired) {
11
+ this.acquired = await this.lockAdapter.acquireLock(this.resourceName);
12
+ }
13
+ return this.acquired;
14
+ }
15
+ async releaseLock() {
16
+ if (this.acquired) {
17
+ const result = await this.lockAdapter.releaseLock(this.resourceName);
18
+ if (result) {
19
+ this.acquired = false;
20
+ }
21
+ return result;
22
+ }
23
+ return false;
24
+ }
25
+ isAcquired() {
26
+ return this.acquired;
27
+ }
28
+ async isLocked() {
29
+ return this.lockAdapter.isLocked(this.resourceName);
30
+ }
31
+ }
32
+ //# sourceMappingURL=LockAdapterMutex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LockAdapterMutex.js","sourceRoot":"","sources":["../../src/mutex/LockAdapterMutex.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,gBAAgB;IACV,WAAW,CAAuB;IAClC,YAAY,CAAS;IAC9B,QAAQ,GAAG,KAAK,CAAC;IAEzB,YAAY,WAAiC,EAAE,YAAoB;QACjE,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAED,KAAK,CAAC,WAAW;QACf,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,WAAW;QACf,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACrE,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;YACxB,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACtD,CAAC;CACF"}
@@ -0,0 +1,11 @@
1
+ import type { MutexFactoryInterface } from "../interfaces/MutexFactoryInterface.js";
2
+ import type { MutexInterface } from "../interfaces/MutexInterface.js";
3
+ import type { LockAdapterInterface } from "../interfaces/LockAdapterInterface.js";
4
+ export type StringConverter = (subject: unknown) => string;
5
+ export declare class MutexFactory implements MutexFactoryInterface {
6
+ private readonly lockAdapter;
7
+ private readonly stringConverter;
8
+ constructor(lockAdapter: LockAdapterInterface, stringConverter: StringConverter);
9
+ createMutex(subject: unknown): MutexInterface;
10
+ }
11
+ //# sourceMappingURL=MutexFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MutexFactory.d.ts","sourceRoot":"","sources":["../../src/mutex/MutexFactory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AACpF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAGlF,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC;AAE3D,qBAAa,YAAa,YAAW,qBAAqB;IACxD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAuB;IACnD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;gBAGhD,WAAW,EAAE,oBAAoB,EACjC,eAAe,EAAE,eAAe;IAMlC,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,cAAc;CAM9C"}
@@ -0,0 +1,13 @@
1
+ import { LockAdapterMutex } from "./LockAdapterMutex.js";
2
+ export class MutexFactory {
3
+ lockAdapter;
4
+ stringConverter;
5
+ constructor(lockAdapter, stringConverter) {
6
+ this.lockAdapter = lockAdapter;
7
+ this.stringConverter = stringConverter;
8
+ }
9
+ createMutex(subject) {
10
+ return new LockAdapterMutex(this.lockAdapter, this.stringConverter(subject));
11
+ }
12
+ }
13
+ //# sourceMappingURL=MutexFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MutexFactory.js","sourceRoot":"","sources":["../../src/mutex/MutexFactory.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAIzD,MAAM,OAAO,YAAY;IACN,WAAW,CAAuB;IAClC,eAAe,CAAkB;IAElD,YACE,WAAiC,EACjC,eAAgC;QAEhC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACzC,CAAC;IAED,WAAW,CAAC,OAAgB;QAC1B,OAAO,IAAI,gBAAgB,CACzB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAC9B,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,9 @@
1
+ import type { MutexInterface } from "../interfaces/MutexInterface.js";
2
+ export declare class NullMutex implements MutexInterface {
3
+ private acquired;
4
+ acquireLock(): boolean;
5
+ releaseLock(): boolean;
6
+ isAcquired(): boolean;
7
+ isLocked(): boolean;
8
+ }
9
+ //# sourceMappingURL=NullMutex.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NullMutex.d.ts","sourceRoot":"","sources":["../../src/mutex/NullMutex.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEtE,qBAAa,SAAU,YAAW,cAAc;IAC9C,OAAO,CAAC,QAAQ,CAAS;IAEzB,WAAW,IAAI,OAAO;IAKtB,WAAW,IAAI,OAAO;IAKtB,UAAU,IAAI,OAAO;IAIrB,QAAQ,IAAI,OAAO;CAGpB"}
@@ -0,0 +1,18 @@
1
+ export class NullMutex {
2
+ acquired = false;
3
+ acquireLock() {
4
+ this.acquired = true;
5
+ return true;
6
+ }
7
+ releaseLock() {
8
+ this.acquired = false;
9
+ return true;
10
+ }
11
+ isAcquired() {
12
+ return this.acquired;
13
+ }
14
+ isLocked() {
15
+ return false;
16
+ }
17
+ }
18
+ //# sourceMappingURL=NullMutex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NullMutex.js","sourceRoot":"","sources":["../../src/mutex/NullMutex.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,SAAS;IACZ,QAAQ,GAAG,KAAK,CAAC;IAEzB,WAAW;QACT,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW;QACT,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,QAAQ;QACN,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
@@ -0,0 +1,5 @@
1
+ export { NullMutex } from "./NullMutex.js";
2
+ export { LockAdapterMutex } from "./LockAdapterMutex.js";
3
+ export { MutexFactory } from "./MutexFactory.js";
4
+ export type { StringConverter } from "./MutexFactory.js";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mutex/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { NullMutex } from "./NullMutex.js";
2
+ export { LockAdapterMutex } from "./LockAdapterMutex.js";
3
+ export { MutexFactory } from "./MutexFactory.js";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mutex/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { Observer, ObservableSubject } from "../interfaces/Observer.js";
2
+ import type { MaybePromise } from "../MaybePromise.js";
3
+ export declare class CallbackObserver implements Observer {
4
+ private readonly callback;
5
+ constructor(callback: (...args: unknown[]) => MaybePromise<void>);
6
+ update(subject: ObservableSubject): MaybePromise<void>;
7
+ }
8
+ //# sourceMappingURL=CallbackObserver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CallbackObserver.d.ts","sourceRoot":"","sources":["../../src/observer/CallbackObserver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,qBAAa,gBAAiB,YAAW,QAAQ;IAC/C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA6C;gBAE1D,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,YAAY,CAAC,IAAI,CAAC;IAIhE,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,YAAY,CAAC,IAAI,CAAC;CAOvD"}
@@ -0,0 +1,14 @@
1
+ export class CallbackObserver {
2
+ callback;
3
+ constructor(callback) {
4
+ this.callback = callback;
5
+ }
6
+ update(subject) {
7
+ const event = subject;
8
+ if (typeof event.getInvokeArgs === "function") {
9
+ return this.callback(...event.getInvokeArgs());
10
+ }
11
+ return this.callback(subject);
12
+ }
13
+ }
14
+ //# sourceMappingURL=CallbackObserver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CallbackObserver.js","sourceRoot":"","sources":["../../src/observer/CallbackObserver.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,gBAAgB;IACV,QAAQ,CAA6C;IAEtE,YAAY,QAAoD;QAC9D,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,OAA0B;QAC/B,MAAM,KAAK,GAAG,OAAyB,CAAC;QACxC,IAAI,OAAO,KAAK,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;YAC9C,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;CACF"}
@@ -0,0 +1,8 @@
1
+ import type { Observer, ObservableSubject } from "../interfaces/Observer.js";
2
+ export declare class OnEnterObserver implements Observer {
3
+ static readonly DEFAULT_EVENT_NAME = "onEnter";
4
+ private readonly eventName;
5
+ constructor(eventName?: string);
6
+ update(subject: ObservableSubject): Promise<void>;
7
+ }
8
+ //# sourceMappingURL=OnEnterObserver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OnEnterObserver.d.ts","sourceRoot":"","sources":["../../src/observer/OnEnterObserver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAY7E,qBAAa,eAAgB,YAAW,QAAQ;IAC9C,MAAM,CAAC,QAAQ,CAAC,kBAAkB,aAAa;IAE/C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,SAAS,SAAqC;IAIpD,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;CAkBxD"}
@@ -0,0 +1,28 @@
1
+ function isStatemachine(obj) {
2
+ return (typeof obj === "object" &&
3
+ obj !== null &&
4
+ "getCurrentState" in obj &&
5
+ "triggerEvent" in obj);
6
+ }
7
+ export class OnEnterObserver {
8
+ static DEFAULT_EVENT_NAME = "onEnter";
9
+ eventName;
10
+ constructor(eventName = OnEnterObserver.DEFAULT_EVENT_NAME) {
11
+ this.eventName = eventName;
12
+ }
13
+ async update(subject) {
14
+ if (isStatemachine(subject) &&
15
+ subject.getCurrentState().hasEvent(this.eventName)) {
16
+ const sm = subject;
17
+ const autorelease = sm.isAutoreleaseLock();
18
+ sm.setAutoreleaseLock(false);
19
+ try {
20
+ await sm.triggerEvent(this.eventName, sm.getCurrentContext() ?? undefined);
21
+ }
22
+ finally {
23
+ sm.setAutoreleaseLock(autorelease);
24
+ }
25
+ }
26
+ }
27
+ }
28
+ //# sourceMappingURL=OnEnterObserver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OnEnterObserver.js","sourceRoot":"","sources":["../../src/observer/OnEnterObserver.ts"],"names":[],"mappings":"AAGA,SAAS,cAAc,CAAC,GAAY;IAClC,OAAO,CACL,OAAO,GAAG,KAAK,QAAQ;QACvB,GAAG,KAAK,IAAI;QACZ,iBAAiB,IAAI,GAAG;QACxB,cAAc,IAAI,GAAG,CACtB,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,eAAe;IAC1B,MAAM,CAAU,kBAAkB,GAAG,SAAS,CAAC;IAE9B,SAAS,CAAS;IAEnC,YAAY,SAAS,GAAG,eAAe,CAAC,kBAAkB;QACxD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAA0B;QACrC,IACE,cAAc,CAAC,OAAO,CAAC;YACvB,OAAO,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAClD,CAAC;YACD,MAAM,EAAE,GAAG,OAAgC,CAAC;YAC5C,MAAM,WAAW,GAAG,EAAE,CAAC,iBAAiB,EAAE,CAAC;YAC3C,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAC7B,IAAI,CAAC;gBACH,MAAM,EAAE,CAAC,YAAY,CACnB,IAAI,CAAC,SAAS,EACd,EAAE,CAAC,iBAAiB,EAAE,IAAI,SAAS,CACpC,CAAC;YACJ,CAAC;oBAAS,CAAC;gBACT,EAAE,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;IACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { Observer, ObservableSubject } from "../interfaces/Observer.js";
2
+ export declare class StatefulStatusChanger implements Observer {
3
+ update(subject: ObservableSubject): void;
4
+ }
5
+ //# sourceMappingURL=StatefulStatusChanger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StatefulStatusChanger.d.ts","sourceRoot":"","sources":["../../src/observer/StatefulStatusChanger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAsB7E,qBAAa,qBAAsB,YAAW,QAAQ;IACpD,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;CASzC"}
@@ -0,0 +1,24 @@
1
+ function isStatemachine(obj) {
2
+ return (typeof obj === "object" &&
3
+ obj !== null &&
4
+ "getCurrentState" in obj &&
5
+ "getSubject" in obj);
6
+ }
7
+ function isStateful(obj) {
8
+ return (typeof obj === "object" &&
9
+ obj !== null &&
10
+ "setCurrentStateName" in obj &&
11
+ typeof obj.setCurrentStateName === "function");
12
+ }
13
+ export class StatefulStatusChanger {
14
+ update(subject) {
15
+ if (isStatemachine(subject)) {
16
+ const subjectObj = subject.getSubject();
17
+ if (isStateful(subjectObj)) {
18
+ const stateName = subject.getCurrentState().getName();
19
+ subjectObj.setCurrentStateName(stateName);
20
+ }
21
+ }
22
+ }
23
+ }
24
+ //# sourceMappingURL=StatefulStatusChanger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StatefulStatusChanger.js","sourceRoot":"","sources":["../../src/observer/StatefulStatusChanger.ts"],"names":[],"mappings":"AAIA,SAAS,cAAc,CAAC,GAAY;IAClC,OAAO,CACL,OAAO,GAAG,KAAK,QAAQ;QACvB,GAAG,KAAK,IAAI;QACZ,iBAAiB,IAAI,GAAG;QACxB,YAAY,IAAI,GAAG,CACpB,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,GAAY;IAC9B,OAAO,CACL,OAAO,GAAG,KAAK,QAAQ;QACvB,GAAG,KAAK,IAAI;QACZ,qBAAqB,IAAI,GAAG;QAC5B,OAAQ,GAAyB,CAAC,mBAAmB,KAAK,UAAU,CACrE,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,qBAAqB;IAChC,MAAM,CAAC,OAA0B;QAC/B,IAAI,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;YACxC,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC3B,MAAM,SAAS,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,OAAO,EAAE,CAAC;gBACtD,UAAU,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,9 @@
1
+ import type { Observer, ObservableSubject } from "../interfaces/Observer.js";
2
+ import type { LoggerInterface } from "../interfaces/LoggerInterface.js";
3
+ export declare class TransitionLogger implements Observer {
4
+ private readonly logger;
5
+ private readonly loggerLevel;
6
+ constructor(logger: LoggerInterface, loggerLevel?: string);
7
+ update(subject: ObservableSubject): void;
8
+ }
9
+ //# sourceMappingURL=TransitionLogger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TransitionLogger.d.ts","sourceRoot":"","sources":["../../src/observer/TransitionLogger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE7E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AA4BxE,qBAAa,gBAAiB,YAAW,QAAQ;IAC/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IACzC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;gBAEzB,MAAM,EAAE,eAAe,EAAE,WAAW,SAAS;IAKzD,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;CA6CzC"}
@@ -0,0 +1,62 @@
1
+ function isStatemachine(obj) {
2
+ return (typeof obj === "object" &&
3
+ obj !== null &&
4
+ "getCurrentState" in obj &&
5
+ "getSubject" in obj);
6
+ }
7
+ function isNamed(obj) {
8
+ return (typeof obj === "object" &&
9
+ obj !== null &&
10
+ "getName" in obj &&
11
+ typeof obj.getName === "function");
12
+ }
13
+ function convertToString(obj) {
14
+ if (isNamed(obj)) {
15
+ return obj.getName();
16
+ }
17
+ return String(obj);
18
+ }
19
+ export class TransitionLogger {
20
+ logger;
21
+ loggerLevel;
22
+ constructor(logger, loggerLevel = "info") {
23
+ this.logger = logger;
24
+ this.loggerLevel = loggerLevel;
25
+ }
26
+ update(subject) {
27
+ if (!isStatemachine(subject)) {
28
+ return;
29
+ }
30
+ const context = {};
31
+ context["subject"] = subject.getSubject();
32
+ context["currentState"] = subject.getCurrentState();
33
+ context["lastState"] = subject.getLastState();
34
+ context["transition"] = subject.getSelectedTransition();
35
+ let message = "Transition";
36
+ if (context["subject"] != null) {
37
+ message += ` for "${convertToString(context["subject"])}"`;
38
+ }
39
+ if (context["lastState"] != null) {
40
+ message += ` from "${convertToString(context["lastState"])}"`;
41
+ }
42
+ if (context["currentState"] != null) {
43
+ message += ` to "${convertToString(context["currentState"])}"`;
44
+ }
45
+ const transition = context["transition"];
46
+ if (transition && typeof transition.getEventName === "function") {
47
+ const eventName = transition.getEventName();
48
+ const condition = transition.getConditionName?.();
49
+ if (eventName || condition) {
50
+ message += " with";
51
+ if (eventName) {
52
+ message += ` event "${eventName}"`;
53
+ }
54
+ if (condition) {
55
+ message += ` condition "${condition}"`;
56
+ }
57
+ }
58
+ }
59
+ this.logger.log(this.loggerLevel, message, context);
60
+ }
61
+ }
62
+ //# sourceMappingURL=TransitionLogger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TransitionLogger.js","sourceRoot":"","sources":["../../src/observer/TransitionLogger.ts"],"names":[],"mappings":"AAKA,SAAS,cAAc,CAAC,GAAY;IAClC,OAAO,CACL,OAAO,GAAG,KAAK,QAAQ;QACvB,GAAG,KAAK,IAAI;QACZ,iBAAiB,IAAI,GAAG;QACxB,YAAY,IAAI,GAAG,CACpB,CAAC;AACJ,CAAC;AAED,SAAS,OAAO,CAAC,GAAY;IAC3B,OAAO,CACL,OAAO,GAAG,KAAK,QAAQ;QACvB,GAAG,KAAK,IAAI;QACZ,SAAS,IAAI,GAAG;QAChB,OAAQ,GAAa,CAAC,OAAO,KAAK,UAAU,CAC7C,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,GAAY;IACnC,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACjB,OAAO,GAAG,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;IACD,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC;AAED,MAAM,OAAO,gBAAgB;IACV,MAAM,CAAkB;IACxB,WAAW,CAAS;IAErC,YAAY,MAAuB,EAAE,WAAW,GAAG,MAAM;QACvD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,OAA0B;QAC/B,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAA4B,EAAE,CAAC;QAC5C,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;QAC1C,OAAO,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;QACpD,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;QAC9C,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;QAExD,IAAI,OAAO,GAAG,YAAY,CAAC;QAE3B,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC;YAC/B,OAAO,IAAI,SAAS,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC;QAC7D,CAAC;QAED,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,EAAE,CAAC;YACjC,OAAO,IAAI,UAAU,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC;QAChE,CAAC;QAED,IAAI,OAAO,CAAC,cAAc,CAAC,IAAI,IAAI,EAAE,CAAC;YACpC,OAAO,IAAI,QAAQ,eAAe,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC;QACjE,CAAC;QAED,MAAM,UAAU,GAAG,OAAO,CAAC,YAAY,CAG/B,CAAC;QACT,IAAI,UAAU,IAAI,OAAO,UAAU,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;YAChE,MAAM,SAAS,GAAG,UAAU,CAAC,YAAY,EAAE,CAAC;YAC5C,MAAM,SAAS,GAAG,UAAU,CAAC,gBAAgB,EAAE,EAAE,CAAC;YAClD,IAAI,SAAS,IAAI,SAAS,EAAE,CAAC;gBAC3B,OAAO,IAAI,OAAO,CAAC;gBACnB,IAAI,SAAS,EAAE,CAAC;oBACd,OAAO,IAAI,WAAW,SAAS,GAAG,CAAC;gBACrC,CAAC;gBACD,IAAI,SAAS,EAAE,CAAC;oBACd,OAAO,IAAI,eAAe,SAAS,GAAG,CAAC;gBACzC,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;CACF"}
@@ -0,0 +1,5 @@
1
+ export { CallbackObserver } from "./CallbackObserver.js";
2
+ export { StatefulStatusChanger } from "./StatefulStatusChanger.js";
3
+ export { OnEnterObserver } from "./OnEnterObserver.js";
4
+ export { TransitionLogger } from "./TransitionLogger.js";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/observer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { CallbackObserver } from "./CallbackObserver.js";
2
+ export { StatefulStatusChanger } from "./StatefulStatusChanger.js";
3
+ export { OnEnterObserver } from "./OnEnterObserver.js";
4
+ export { TransitionLogger } from "./TransitionLogger.js";
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/observer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { TransitionSelectorInterface } from "../interfaces/TransitionSelectorInterface.js";
2
+ import type { TransitionInterface } from "../interfaces/TransitionInterface.js";
3
+ export declare class OneOrNoneActiveTransition implements TransitionSelectorInterface {
4
+ selectTransition(transitions: Iterable<TransitionInterface>): TransitionInterface | null;
5
+ }
6
+ //# sourceMappingURL=OneOrNoneActiveTransition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OneOrNoneActiveTransition.d.ts","sourceRoot":"","sources":["../../src/selector/OneOrNoneActiveTransition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAChG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAEhF,qBAAa,yBAA0B,YAAW,2BAA2B;IAC3E,gBAAgB,CACd,WAAW,EAAE,QAAQ,CAAC,mBAAmB,CAAC,GACzC,mBAAmB,GAAG,IAAI;CAW9B"}
@@ -0,0 +1,14 @@
1
+ export class OneOrNoneActiveTransition {
2
+ selectTransition(transitions) {
3
+ const arr = Array.from(transitions);
4
+ switch (arr.length) {
5
+ case 0:
6
+ return null;
7
+ case 1:
8
+ return arr[0];
9
+ default:
10
+ throw new Error("More than one transition is active!");
11
+ }
12
+ }
13
+ }
14
+ //# sourceMappingURL=OneOrNoneActiveTransition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OneOrNoneActiveTransition.js","sourceRoot":"","sources":["../../src/selector/OneOrNoneActiveTransition.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,yBAAyB;IACpC,gBAAgB,CACd,WAA0C;QAE1C,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpC,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;YACnB,KAAK,CAAC;gBACJ,OAAO,IAAI,CAAC;YACd,KAAK,CAAC;gBACJ,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;YAChB;gBACE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,9 @@
1
+ import type { TransitionSelectorInterface } from "../interfaces/TransitionSelectorInterface.js";
2
+ import type { TransitionInterface } from "../interfaces/TransitionInterface.js";
3
+ export declare class ScoreTransition implements TransitionSelectorInterface {
4
+ private readonly innerSelector;
5
+ constructor(innerSelector?: TransitionSelectorInterface);
6
+ protected calculateScore(transition: TransitionInterface): number;
7
+ selectTransition(transitions: Iterable<TransitionInterface>): TransitionInterface | null;
8
+ }
9
+ //# sourceMappingURL=ScoreTransition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScoreTransition.d.ts","sourceRoot":"","sources":["../../src/selector/ScoreTransition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAChG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAGhF,qBAAa,eAAgB,YAAW,2BAA2B;IACjE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA8B;gBAEhD,aAAa,CAAC,EAAE,2BAA2B;IAIvD,SAAS,CAAC,cAAc,CAAC,UAAU,EAAE,mBAAmB,GAAG,MAAM;IAWjE,gBAAgB,CACd,WAAW,EAAE,QAAQ,CAAC,mBAAmB,CAAC,GACzC,mBAAmB,GAAG,IAAI;CAc9B"}
@@ -0,0 +1,33 @@
1
+ import { OneOrNoneActiveTransition } from "./OneOrNoneActiveTransition.js";
2
+ export class ScoreTransition {
3
+ innerSelector;
4
+ constructor(innerSelector) {
5
+ this.innerSelector = innerSelector ?? new OneOrNoneActiveTransition();
6
+ }
7
+ calculateScore(transition) {
8
+ let score = 0;
9
+ if (transition.getEventName()) {
10
+ score += 2;
11
+ }
12
+ if (transition.getConditionName()) {
13
+ score += 1;
14
+ }
15
+ return score;
16
+ }
17
+ selectTransition(transitions) {
18
+ let bestTransitions = [];
19
+ let bestScore = -1;
20
+ for (const transition of transitions) {
21
+ const score = this.calculateScore(transition);
22
+ if (score > bestScore) {
23
+ bestScore = score;
24
+ bestTransitions = [transition];
25
+ }
26
+ else if (score === bestScore) {
27
+ bestTransitions.push(transition);
28
+ }
29
+ }
30
+ return this.innerSelector.selectTransition(bestTransitions);
31
+ }
32
+ }
33
+ //# sourceMappingURL=ScoreTransition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScoreTransition.js","sourceRoot":"","sources":["../../src/selector/ScoreTransition.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,MAAM,OAAO,eAAe;IACT,aAAa,CAA8B;IAE5D,YAAY,aAA2C;QACrD,IAAI,CAAC,aAAa,GAAG,aAAa,IAAI,IAAI,yBAAyB,EAAE,CAAC;IACxE,CAAC;IAES,cAAc,CAAC,UAA+B;QACtD,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,UAAU,CAAC,YAAY,EAAE,EAAE,CAAC;YAC9B,KAAK,IAAI,CAAC,CAAC;QACb,CAAC;QACD,IAAI,UAAU,CAAC,gBAAgB,EAAE,EAAE,CAAC;YAClC,KAAK,IAAI,CAAC,CAAC;QACb,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB,CACd,WAA0C;QAE1C,IAAI,eAAe,GAA0B,EAAE,CAAC;QAChD,IAAI,SAAS,GAAG,CAAC,CAAC,CAAC;QACnB,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;YAC9C,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;gBACtB,SAAS,GAAG,KAAK,CAAC;gBAClB,eAAe,GAAG,CAAC,UAAU,CAAC,CAAC;YACjC,CAAC;iBAAM,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC/B,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC;IAC9D,CAAC;CACF"}
@@ -0,0 +1,9 @@
1
+ import type { TransitionSelectorInterface } from "../interfaces/TransitionSelectorInterface.js";
2
+ import type { TransitionInterface } from "../interfaces/TransitionInterface.js";
3
+ export declare class WeightTransition implements TransitionSelectorInterface {
4
+ private readonly innerSelector;
5
+ private readonly epsilon;
6
+ constructor(innerSelector?: TransitionSelectorInterface, epsilon?: number);
7
+ selectTransition(transitions: Iterable<TransitionInterface>): TransitionInterface | null;
8
+ }
9
+ //# sourceMappingURL=WeightTransition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WeightTransition.d.ts","sourceRoot":"","sources":["../../src/selector/WeightTransition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAChG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAGhF,qBAAa,gBAAiB,YAAW,2BAA2B;IAClE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA8B;IAC5D,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,aAAa,CAAC,EAAE,2BAA2B,EAAE,OAAO,SAAQ;IAKxE,gBAAgB,CACd,WAAW,EAAE,QAAQ,CAAC,mBAAmB,CAAC,GACzC,mBAAmB,GAAG,IAAI;CAe9B"}
@@ -0,0 +1,26 @@
1
+ import { OneOrNoneActiveTransition } from "./OneOrNoneActiveTransition.js";
2
+ export class WeightTransition {
3
+ innerSelector;
4
+ epsilon;
5
+ constructor(innerSelector, epsilon = 0.001) {
6
+ this.innerSelector = innerSelector ?? new OneOrNoneActiveTransition();
7
+ this.epsilon = epsilon;
8
+ }
9
+ selectTransition(transitions) {
10
+ let bestTransitions = [];
11
+ let bestWeight = null;
12
+ for (const transition of transitions) {
13
+ const weight = transition.getWeight();
14
+ const diff = weight - (bestWeight ?? 0);
15
+ if (bestWeight === null || diff >= this.epsilon) {
16
+ bestWeight = weight;
17
+ bestTransitions = [transition];
18
+ }
19
+ else if (Math.abs(diff) < this.epsilon) {
20
+ bestTransitions.push(transition);
21
+ }
22
+ }
23
+ return this.innerSelector.selectTransition(bestTransitions);
24
+ }
25
+ }
26
+ //# sourceMappingURL=WeightTransition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WeightTransition.js","sourceRoot":"","sources":["../../src/selector/WeightTransition.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,MAAM,OAAO,gBAAgB;IACV,aAAa,CAA8B;IAC3C,OAAO,CAAS;IAEjC,YAAY,aAA2C,EAAE,OAAO,GAAG,KAAK;QACtE,IAAI,CAAC,aAAa,GAAG,aAAa,IAAI,IAAI,yBAAyB,EAAE,CAAC;QACtE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,gBAAgB,CACd,WAA0C;QAE1C,IAAI,eAAe,GAA0B,EAAE,CAAC;QAChD,IAAI,UAAU,GAAkB,IAAI,CAAC;QACrC,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;YACxC,IAAI,UAAU,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBAChD,UAAU,GAAG,MAAM,CAAC;gBACpB,eAAe,GAAG,CAAC,UAAU,CAAC,CAAC;YACjC,CAAC;iBAAM,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;gBACzC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACnC,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC;IAC9D,CAAC;CACF"}
@@ -0,0 +1,4 @@
1
+ export { OneOrNoneActiveTransition } from "./OneOrNoneActiveTransition.js";
2
+ export { ScoreTransition } from "./ScoreTransition.js";
3
+ export { WeightTransition } from "./WeightTransition.js";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/selector/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export { OneOrNoneActiveTransition } from "./OneOrNoneActiveTransition.js";
2
+ export { ScoreTransition } from "./ScoreTransition.js";
3
+ export { WeightTransition } from "./WeightTransition.js";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/selector/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { StateInterface } from "../interfaces/StateInterface.js";
2
+ import type { TransitionInterface } from "../interfaces/TransitionInterface.js";
3
+ import type { ConditionInterface } from "../interfaces/ConditionInterface.js";
4
+ import type { EventInterface } from "../interfaces/EventInterface.js";
5
+ import type { Observer } from "../interfaces/Observer.js";
6
+ import { StateCollection } from "../StateCollection.js";
7
+ export declare class SetupHelper {
8
+ protected readonly stateCollection: StateCollection;
9
+ constructor(stateCollection: StateCollection);
10
+ findOrCreateState(name: string): StateInterface;
11
+ protected findTransition(sourceState: StateInterface, targetState: StateInterface, eventName?: string | null, condition?: ConditionInterface | null): TransitionInterface | null;
12
+ findOrCreateTransition(sourceStateName: string, targetStateName: string, eventName?: string | null, condition?: ConditionInterface | null): TransitionInterface;
13
+ findOrCreateEvent(sourceStateName: string, eventName: string): EventInterface;
14
+ addCommand(sourceStateName: string, eventName: string, command: Observer): void;
15
+ addCommandAndSelfTransition(sourceStateName: string, eventName: string, command: Observer): void;
16
+ }
17
+ //# sourceMappingURL=SetupHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SetupHelper.d.ts","sourceRoot":"","sources":["../../src/util/SetupHelper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAChF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAG1D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,qBAAa,WAAW;IACtB,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;gBAExC,eAAe,EAAE,eAAe;IAI5C,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc;IAO/C,SAAS,CAAC,cAAc,CACtB,WAAW,EAAE,cAAc,EAC3B,WAAW,EAAE,cAAc,EAC3B,SAAS,GAAE,MAAM,GAAG,IAAW,EAC/B,SAAS,GAAE,kBAAkB,GAAG,IAAW,GAC1C,mBAAmB,GAAG,IAAI;IAa7B,sBAAsB,CACpB,eAAe,EAAE,MAAM,EACvB,eAAe,EAAE,MAAM,EACvB,SAAS,GAAE,MAAM,GAAG,IAAW,EAC/B,SAAS,GAAE,kBAAkB,GAAG,IAAW,GAC1C,mBAAmB;IAgBtB,iBAAiB,CACf,eAAe,EAAE,MAAM,EACvB,SAAS,EAAE,MAAM,GAChB,cAAc;IAKjB,UAAU,CACR,eAAe,EAAE,MAAM,EACvB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,QAAQ,GAChB,IAAI;IAIP,2BAA2B,CACzB,eAAe,EAAE,MAAM,EACvB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,QAAQ,GAChB,IAAI;CAIR"}