@vived/core 1.4.2 → 1.4.4

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 (528) hide show
  1. package/README.md +142 -20
  2. package/dist/cjs/AppObject/AppObject.js +53 -0
  3. package/dist/cjs/AppObject/AppObject.js.map +1 -1
  4. package/dist/cjs/AppObject/AppObjectComponent.js +78 -0
  5. package/dist/cjs/AppObject/AppObjectComponent.js.map +1 -1
  6. package/dist/cjs/AppObject/AppObjectController.js +22 -0
  7. package/dist/cjs/AppObject/AppObjectController.js.map +1 -1
  8. package/dist/cjs/AppObject/AppObjectEntity.js +52 -0
  9. package/dist/cjs/AppObject/AppObjectEntity.js.map +1 -1
  10. package/dist/cjs/AppObject/AppObjectEntityRepo.js +75 -1
  11. package/dist/cjs/AppObject/AppObjectEntityRepo.js.map +1 -1
  12. package/dist/cjs/AppObject/AppObjectPM.js +46 -0
  13. package/dist/cjs/AppObject/AppObjectPM.js.map +1 -1
  14. package/dist/cjs/AppObject/AppObjectRepo.js +20 -0
  15. package/dist/cjs/AppObject/AppObjectRepo.js.map +1 -1
  16. package/dist/cjs/AppObject/AppObjectUC.js +23 -0
  17. package/dist/cjs/AppObject/AppObjectUC.js.map +1 -1
  18. package/dist/cjs/AppObject/AppObjectView.js +22 -0
  19. package/dist/cjs/AppObject/AppObjectView.js.map +1 -1
  20. package/dist/cjs/AppObject/getSingletonComponent.js +19 -0
  21. package/dist/cjs/AppObject/getSingletonComponent.js.map +1 -1
  22. package/dist/cjs/Entities/MemoizedAngle.js +21 -0
  23. package/dist/cjs/Entities/MemoizedAngle.js.map +1 -1
  24. package/dist/cjs/Entities/MemoizedBoolean.js +21 -0
  25. package/dist/cjs/Entities/MemoizedBoolean.js.map +1 -1
  26. package/dist/cjs/Entities/MemoizedColor.js +21 -0
  27. package/dist/cjs/Entities/MemoizedColor.js.map +1 -1
  28. package/dist/cjs/Entities/MemoizedNumber.js +21 -0
  29. package/dist/cjs/Entities/MemoizedNumber.js.map +1 -1
  30. package/dist/cjs/Entities/MemoizedQuaternion.js +21 -0
  31. package/dist/cjs/Entities/MemoizedQuaternion.js.map +1 -1
  32. package/dist/cjs/Entities/MemoizedString.js +21 -0
  33. package/dist/cjs/Entities/MemoizedString.js.map +1 -1
  34. package/dist/cjs/Entities/MemoizedVector2.js +21 -0
  35. package/dist/cjs/Entities/MemoizedVector2.js.map +1 -1
  36. package/dist/cjs/Entities/MemoizedVector3.js +21 -0
  37. package/dist/cjs/Entities/MemoizedVector3.js.map +1 -1
  38. package/dist/cjs/Entities/ObservableEntity.js +17 -0
  39. package/dist/cjs/Entities/ObservableEntity.js.map +1 -1
  40. package/dist/cjs/Entities/ObserverList.js +21 -0
  41. package/dist/cjs/Entities/ObserverList.js.map +1 -1
  42. package/dist/cjs/Entities/RangedNumber.js +29 -0
  43. package/dist/cjs/Entities/RangedNumber.js.map +1 -1
  44. package/dist/cjs/ExampleFeature/Adapters/examplePmAdapter.js +64 -0
  45. package/dist/cjs/ExampleFeature/Adapters/examplePmAdapter.js.map +1 -0
  46. package/dist/cjs/ExampleFeature/Adapters/exampleSingletonPmAdapter.js +60 -0
  47. package/dist/cjs/ExampleFeature/Adapters/exampleSingletonPmAdapter.js.map +1 -0
  48. package/dist/cjs/ExampleFeature/Adapters/index.js +19 -0
  49. package/dist/cjs/ExampleFeature/Adapters/index.js.map +1 -0
  50. package/dist/cjs/ExampleFeature/Controllers/index.js +19 -0
  51. package/dist/cjs/ExampleFeature/Controllers/index.js.map +1 -0
  52. package/dist/cjs/ExampleFeature/Controllers/setExampleText.js +48 -0
  53. package/dist/cjs/ExampleFeature/Controllers/setExampleText.js.map +1 -0
  54. package/dist/cjs/ExampleFeature/Controllers/toggleExampleBoolean.js +47 -0
  55. package/dist/cjs/ExampleFeature/Controllers/toggleExampleBoolean.js.map +1 -0
  56. package/dist/cjs/ExampleFeature/Entities/ExampleEntity.js +90 -0
  57. package/dist/cjs/ExampleFeature/Entities/ExampleEntity.js.map +1 -0
  58. package/dist/cjs/ExampleFeature/Entities/ExampleRepo.js +113 -0
  59. package/dist/cjs/ExampleFeature/Entities/ExampleRepo.js.map +1 -0
  60. package/dist/cjs/ExampleFeature/Entities/ExampleSingletonEntity.js +69 -0
  61. package/dist/cjs/ExampleFeature/Entities/ExampleSingletonEntity.js.map +1 -0
  62. package/dist/cjs/ExampleFeature/Entities/index.js +20 -0
  63. package/dist/cjs/ExampleFeature/Entities/index.js.map +1 -0
  64. package/dist/cjs/ExampleFeature/Factory/index.js +18 -0
  65. package/dist/cjs/ExampleFeature/Factory/index.js.map +1 -0
  66. package/dist/cjs/ExampleFeature/Factory/setupExampleFeature.js +29 -0
  67. package/dist/cjs/ExampleFeature/Factory/setupExampleFeature.js.map +1 -0
  68. package/dist/cjs/ExampleFeature/Mocks/MockEditExampleStringUC.js +47 -0
  69. package/dist/cjs/ExampleFeature/Mocks/MockEditExampleStringUC.js.map +1 -0
  70. package/dist/cjs/ExampleFeature/Mocks/MockExamplePM.js +48 -0
  71. package/dist/cjs/ExampleFeature/Mocks/MockExamplePM.js.map +1 -0
  72. package/dist/cjs/ExampleFeature/Mocks/MockExampleSingletonPM.js +59 -0
  73. package/dist/cjs/ExampleFeature/Mocks/MockExampleSingletonPM.js.map +1 -0
  74. package/dist/cjs/ExampleFeature/Mocks/MockToggleExampleBooleanUC.js +57 -0
  75. package/dist/cjs/ExampleFeature/Mocks/MockToggleExampleBooleanUC.js.map +1 -0
  76. package/dist/cjs/ExampleFeature/Mocks/index.js +21 -0
  77. package/dist/cjs/ExampleFeature/Mocks/index.js.map +1 -0
  78. package/dist/cjs/ExampleFeature/PMs/ExamplePM.js +97 -0
  79. package/dist/cjs/ExampleFeature/PMs/ExamplePM.js.map +1 -0
  80. package/dist/cjs/ExampleFeature/PMs/ExampleSingletonPM.js +102 -0
  81. package/dist/cjs/ExampleFeature/PMs/ExampleSingletonPM.js.map +1 -0
  82. package/dist/cjs/ExampleFeature/PMs/index.js +19 -0
  83. package/dist/cjs/ExampleFeature/PMs/index.js.map +1 -0
  84. package/dist/cjs/ExampleFeature/UCs/EditExampleStringUC.js +87 -0
  85. package/dist/cjs/ExampleFeature/UCs/EditExampleStringUC.js.map +1 -0
  86. package/dist/cjs/ExampleFeature/UCs/ToggleExampleBooleanUC.js +79 -0
  87. package/dist/cjs/ExampleFeature/UCs/ToggleExampleBooleanUC.js.map +1 -0
  88. package/dist/cjs/ExampleFeature/UCs/index.js +19 -0
  89. package/dist/cjs/ExampleFeature/UCs/index.js.map +1 -0
  90. package/dist/cjs/ExampleFeature/index.js +24 -0
  91. package/dist/cjs/ExampleFeature/index.js.map +1 -0
  92. package/dist/cjs/Types/PmAdapter.js.map +1 -1
  93. package/dist/cjs/Types/SingletonPmAdapter.js.map +1 -1
  94. package/dist/cjs/ValueObjects/Angle.js +1 -1
  95. package/dist/cjs/ValueObjects/Angle.js.map +1 -1
  96. package/dist/cjs/ValueObjects/LineSegment2D.js +6 -6
  97. package/dist/cjs/ValueObjects/LineSegment2D.js.map +1 -1
  98. package/dist/cjs/ValueObjects/Matrix.js +6 -6
  99. package/dist/cjs/ValueObjects/Matrix.js.map +1 -1
  100. package/dist/cjs/ValueObjects/Quaternion.js +17 -17
  101. package/dist/cjs/ValueObjects/Quaternion.js.map +1 -1
  102. package/dist/cjs/ValueObjects/Vector2.js +15 -8
  103. package/dist/cjs/ValueObjects/Vector2.js.map +1 -1
  104. package/dist/cjs/index.js +1 -0
  105. package/dist/cjs/index.js.map +1 -1
  106. package/dist/esm/AppObject/AppObject.js +53 -0
  107. package/dist/esm/AppObject/AppObject.js.map +1 -1
  108. package/dist/esm/AppObject/AppObjectComponent.js +78 -0
  109. package/dist/esm/AppObject/AppObjectComponent.js.map +1 -1
  110. package/dist/esm/AppObject/AppObjectController.js +22 -0
  111. package/dist/esm/AppObject/AppObjectController.js.map +1 -1
  112. package/dist/esm/AppObject/AppObjectEntity.js +52 -0
  113. package/dist/esm/AppObject/AppObjectEntity.js.map +1 -1
  114. package/dist/esm/AppObject/AppObjectEntityRepo.js +75 -1
  115. package/dist/esm/AppObject/AppObjectEntityRepo.js.map +1 -1
  116. package/dist/esm/AppObject/AppObjectPM.js +46 -0
  117. package/dist/esm/AppObject/AppObjectPM.js.map +1 -1
  118. package/dist/esm/AppObject/AppObjectRepo.js +20 -0
  119. package/dist/esm/AppObject/AppObjectRepo.js.map +1 -1
  120. package/dist/esm/AppObject/AppObjectUC.js +24 -1
  121. package/dist/esm/AppObject/AppObjectUC.js.map +1 -1
  122. package/dist/esm/AppObject/AppObjectView.js +23 -1
  123. package/dist/esm/AppObject/AppObjectView.js.map +1 -1
  124. package/dist/esm/AppObject/getSingletonComponent.js +19 -0
  125. package/dist/esm/AppObject/getSingletonComponent.js.map +1 -1
  126. package/dist/esm/Entities/MemoizedAngle.js +21 -0
  127. package/dist/esm/Entities/MemoizedAngle.js.map +1 -1
  128. package/dist/esm/Entities/MemoizedBoolean.js +21 -0
  129. package/dist/esm/Entities/MemoizedBoolean.js.map +1 -1
  130. package/dist/esm/Entities/MemoizedColor.js +21 -0
  131. package/dist/esm/Entities/MemoizedColor.js.map +1 -1
  132. package/dist/esm/Entities/MemoizedNumber.js +21 -0
  133. package/dist/esm/Entities/MemoizedNumber.js.map +1 -1
  134. package/dist/esm/Entities/MemoizedQuaternion.js +21 -0
  135. package/dist/esm/Entities/MemoizedQuaternion.js.map +1 -1
  136. package/dist/esm/Entities/MemoizedString.js +21 -0
  137. package/dist/esm/Entities/MemoizedString.js.map +1 -1
  138. package/dist/esm/Entities/MemoizedVector2.js +21 -0
  139. package/dist/esm/Entities/MemoizedVector2.js.map +1 -1
  140. package/dist/esm/Entities/MemoizedVector3.js +21 -0
  141. package/dist/esm/Entities/MemoizedVector3.js.map +1 -1
  142. package/dist/esm/Entities/ObservableEntity.js +17 -0
  143. package/dist/esm/Entities/ObservableEntity.js.map +1 -1
  144. package/dist/esm/Entities/ObserverList.js +21 -0
  145. package/dist/esm/Entities/ObserverList.js.map +1 -1
  146. package/dist/esm/Entities/RangedNumber.js +29 -0
  147. package/dist/esm/Entities/RangedNumber.js.map +1 -1
  148. package/dist/esm/ExampleFeature/Adapters/examplePmAdapter.js +61 -0
  149. package/dist/esm/ExampleFeature/Adapters/examplePmAdapter.js.map +1 -0
  150. package/dist/esm/ExampleFeature/Adapters/exampleSingletonPmAdapter.js +57 -0
  151. package/dist/esm/ExampleFeature/Adapters/exampleSingletonPmAdapter.js.map +1 -0
  152. package/dist/esm/ExampleFeature/Adapters/index.js +3 -0
  153. package/dist/esm/ExampleFeature/Adapters/index.js.map +1 -0
  154. package/dist/esm/ExampleFeature/Controllers/index.js +3 -0
  155. package/dist/esm/ExampleFeature/Controllers/index.js.map +1 -0
  156. package/dist/esm/ExampleFeature/Controllers/setExampleText.js +45 -0
  157. package/dist/esm/ExampleFeature/Controllers/setExampleText.js.map +1 -0
  158. package/dist/esm/ExampleFeature/Controllers/toggleExampleBoolean.js +44 -0
  159. package/dist/esm/ExampleFeature/Controllers/toggleExampleBoolean.js.map +1 -0
  160. package/dist/esm/ExampleFeature/Entities/ExampleEntity.js +85 -0
  161. package/dist/esm/ExampleFeature/Entities/ExampleEntity.js.map +1 -0
  162. package/dist/esm/ExampleFeature/Entities/ExampleRepo.js +108 -0
  163. package/dist/esm/ExampleFeature/Entities/ExampleRepo.js.map +1 -0
  164. package/dist/esm/ExampleFeature/Entities/ExampleSingletonEntity.js +64 -0
  165. package/dist/esm/ExampleFeature/Entities/ExampleSingletonEntity.js.map +1 -0
  166. package/dist/esm/ExampleFeature/Entities/index.js +4 -0
  167. package/dist/esm/ExampleFeature/Entities/index.js.map +1 -0
  168. package/dist/esm/ExampleFeature/Factory/index.js +2 -0
  169. package/dist/esm/ExampleFeature/Factory/index.js.map +1 -0
  170. package/dist/esm/ExampleFeature/Factory/setupExampleFeature.js +26 -0
  171. package/dist/esm/ExampleFeature/Factory/setupExampleFeature.js.map +1 -0
  172. package/dist/esm/ExampleFeature/Mocks/MockEditExampleStringUC.js +43 -0
  173. package/dist/esm/ExampleFeature/Mocks/MockEditExampleStringUC.js.map +1 -0
  174. package/dist/esm/ExampleFeature/Mocks/MockExamplePM.js +44 -0
  175. package/dist/esm/ExampleFeature/Mocks/MockExamplePM.js.map +1 -0
  176. package/dist/esm/ExampleFeature/Mocks/MockExampleSingletonPM.js +54 -0
  177. package/dist/esm/ExampleFeature/Mocks/MockExampleSingletonPM.js.map +1 -0
  178. package/dist/esm/ExampleFeature/Mocks/MockToggleExampleBooleanUC.js +52 -0
  179. package/dist/esm/ExampleFeature/Mocks/MockToggleExampleBooleanUC.js.map +1 -0
  180. package/dist/esm/ExampleFeature/Mocks/index.js +5 -0
  181. package/dist/esm/ExampleFeature/Mocks/index.js.map +1 -0
  182. package/dist/esm/ExampleFeature/PMs/ExamplePM.js +92 -0
  183. package/dist/esm/ExampleFeature/PMs/ExamplePM.js.map +1 -0
  184. package/dist/esm/ExampleFeature/PMs/ExampleSingletonPM.js +97 -0
  185. package/dist/esm/ExampleFeature/PMs/ExampleSingletonPM.js.map +1 -0
  186. package/dist/esm/ExampleFeature/PMs/index.js +3 -0
  187. package/dist/esm/ExampleFeature/PMs/index.js.map +1 -0
  188. package/dist/esm/ExampleFeature/UCs/EditExampleStringUC.js +82 -0
  189. package/dist/esm/ExampleFeature/UCs/EditExampleStringUC.js.map +1 -0
  190. package/dist/esm/ExampleFeature/UCs/ToggleExampleBooleanUC.js +74 -0
  191. package/dist/esm/ExampleFeature/UCs/ToggleExampleBooleanUC.js.map +1 -0
  192. package/dist/esm/ExampleFeature/UCs/index.js +3 -0
  193. package/dist/esm/ExampleFeature/UCs/index.js.map +1 -0
  194. package/dist/esm/ExampleFeature/index.js +8 -0
  195. package/dist/esm/ExampleFeature/index.js.map +1 -0
  196. package/dist/esm/Types/PmAdapter.js.map +1 -1
  197. package/dist/esm/Types/SingletonPmAdapter.js.map +1 -1
  198. package/dist/esm/ValueObjects/Angle.js +1 -1
  199. package/dist/esm/ValueObjects/Angle.js.map +1 -1
  200. package/dist/esm/ValueObjects/LineSegment2D.js +6 -6
  201. package/dist/esm/ValueObjects/LineSegment2D.js.map +1 -1
  202. package/dist/esm/ValueObjects/Matrix.js +6 -6
  203. package/dist/esm/ValueObjects/Matrix.js.map +1 -1
  204. package/dist/esm/ValueObjects/Quaternion.js +17 -17
  205. package/dist/esm/ValueObjects/Quaternion.js.map +1 -1
  206. package/dist/esm/ValueObjects/Vector2.js +15 -8
  207. package/dist/esm/ValueObjects/Vector2.js.map +1 -1
  208. package/dist/esm/index.js +1 -0
  209. package/dist/esm/index.js.map +1 -1
  210. package/dist/types/AppObject/AppObject.d.ts +42 -0
  211. package/dist/types/AppObject/AppObject.d.ts.map +1 -1
  212. package/dist/types/AppObject/AppObjectComponent.d.ts +80 -0
  213. package/dist/types/AppObject/AppObjectComponent.d.ts.map +1 -1
  214. package/dist/types/AppObject/AppObjectController.d.ts +22 -0
  215. package/dist/types/AppObject/AppObjectController.d.ts.map +1 -1
  216. package/dist/types/AppObject/AppObjectEntity.d.ts +55 -0
  217. package/dist/types/AppObject/AppObjectEntity.d.ts.map +1 -1
  218. package/dist/types/AppObject/AppObjectEntityRepo.d.ts +75 -0
  219. package/dist/types/AppObject/AppObjectEntityRepo.d.ts.map +1 -1
  220. package/dist/types/AppObject/AppObjectPM.d.ts +53 -0
  221. package/dist/types/AppObject/AppObjectPM.d.ts.map +1 -1
  222. package/dist/types/AppObject/AppObjectRepo.d.ts +124 -0
  223. package/dist/types/AppObject/AppObjectRepo.d.ts.map +1 -1
  224. package/dist/types/AppObject/AppObjectUC.d.ts +23 -0
  225. package/dist/types/AppObject/AppObjectUC.d.ts.map +1 -1
  226. package/dist/types/AppObject/AppObjectView.d.ts +22 -0
  227. package/dist/types/AppObject/AppObjectView.d.ts.map +1 -1
  228. package/dist/types/AppObject/getSingletonComponent.d.ts +19 -0
  229. package/dist/types/AppObject/getSingletonComponent.d.ts.map +1 -1
  230. package/dist/types/Entities/MemoizedAngle.d.ts +21 -0
  231. package/dist/types/Entities/MemoizedAngle.d.ts.map +1 -1
  232. package/dist/types/Entities/MemoizedBoolean.d.ts +21 -0
  233. package/dist/types/Entities/MemoizedBoolean.d.ts.map +1 -1
  234. package/dist/types/Entities/MemoizedColor.d.ts +21 -0
  235. package/dist/types/Entities/MemoizedColor.d.ts.map +1 -1
  236. package/dist/types/Entities/MemoizedNumber.d.ts +21 -0
  237. package/dist/types/Entities/MemoizedNumber.d.ts.map +1 -1
  238. package/dist/types/Entities/MemoizedQuaternion.d.ts +21 -0
  239. package/dist/types/Entities/MemoizedQuaternion.d.ts.map +1 -1
  240. package/dist/types/Entities/MemoizedString.d.ts +21 -0
  241. package/dist/types/Entities/MemoizedString.d.ts.map +1 -1
  242. package/dist/types/Entities/MemoizedVector2.d.ts +21 -0
  243. package/dist/types/Entities/MemoizedVector2.d.ts.map +1 -1
  244. package/dist/types/Entities/MemoizedVector3.d.ts +21 -0
  245. package/dist/types/Entities/MemoizedVector3.d.ts.map +1 -1
  246. package/dist/types/Entities/ObservableEntity.d.ts +20 -0
  247. package/dist/types/Entities/ObservableEntity.d.ts.map +1 -1
  248. package/dist/types/Entities/ObserverList.d.ts +21 -0
  249. package/dist/types/Entities/ObserverList.d.ts.map +1 -1
  250. package/dist/types/Entities/RangedNumber.d.ts +37 -0
  251. package/dist/types/Entities/RangedNumber.d.ts.map +1 -1
  252. package/dist/types/ExampleFeature/Adapters/examplePmAdapter.d.ts +29 -0
  253. package/dist/types/ExampleFeature/Adapters/examplePmAdapter.d.ts.map +1 -0
  254. package/dist/types/ExampleFeature/Adapters/exampleSingletonPmAdapter.d.ts +31 -0
  255. package/dist/types/ExampleFeature/Adapters/exampleSingletonPmAdapter.d.ts.map +1 -0
  256. package/dist/types/ExampleFeature/Adapters/index.d.ts +3 -0
  257. package/dist/types/ExampleFeature/Adapters/index.d.ts.map +1 -0
  258. package/dist/types/ExampleFeature/Controllers/index.d.ts +3 -0
  259. package/dist/types/ExampleFeature/Controllers/index.d.ts.map +1 -0
  260. package/dist/types/ExampleFeature/Controllers/setExampleText.d.ts +35 -0
  261. package/dist/types/ExampleFeature/Controllers/setExampleText.d.ts.map +1 -0
  262. package/dist/types/ExampleFeature/Controllers/toggleExampleBoolean.d.ts +34 -0
  263. package/dist/types/ExampleFeature/Controllers/toggleExampleBoolean.d.ts.map +1 -0
  264. package/dist/types/ExampleFeature/Entities/ExampleEntity.d.ts +55 -0
  265. package/dist/types/ExampleFeature/Entities/ExampleEntity.d.ts.map +1 -0
  266. package/dist/types/ExampleFeature/Entities/ExampleRepo.d.ts +62 -0
  267. package/dist/types/ExampleFeature/Entities/ExampleRepo.d.ts.map +1 -0
  268. package/dist/types/ExampleFeature/Entities/ExampleSingletonEntity.d.ts +43 -0
  269. package/dist/types/ExampleFeature/Entities/ExampleSingletonEntity.d.ts.map +1 -0
  270. package/dist/types/ExampleFeature/Entities/index.d.ts +4 -0
  271. package/dist/types/ExampleFeature/Entities/index.d.ts.map +1 -0
  272. package/dist/types/ExampleFeature/Factory/index.d.ts +2 -0
  273. package/dist/types/ExampleFeature/Factory/index.d.ts.map +1 -0
  274. package/dist/types/ExampleFeature/Factory/setupExampleFeature.d.ts +17 -0
  275. package/dist/types/ExampleFeature/Factory/setupExampleFeature.d.ts.map +1 -0
  276. package/dist/types/ExampleFeature/Mocks/MockEditExampleStringUC.d.ts +42 -0
  277. package/dist/types/ExampleFeature/Mocks/MockEditExampleStringUC.d.ts.map +1 -0
  278. package/dist/types/ExampleFeature/Mocks/MockExamplePM.d.ts +41 -0
  279. package/dist/types/ExampleFeature/Mocks/MockExamplePM.d.ts.map +1 -0
  280. package/dist/types/ExampleFeature/Mocks/MockExampleSingletonPM.d.ts +49 -0
  281. package/dist/types/ExampleFeature/Mocks/MockExampleSingletonPM.d.ts.map +1 -0
  282. package/dist/types/ExampleFeature/Mocks/MockToggleExampleBooleanUC.d.ts +47 -0
  283. package/dist/types/ExampleFeature/Mocks/MockToggleExampleBooleanUC.d.ts.map +1 -0
  284. package/dist/types/ExampleFeature/Mocks/index.d.ts +5 -0
  285. package/dist/types/ExampleFeature/Mocks/index.d.ts.map +1 -0
  286. package/dist/types/ExampleFeature/PMs/ExamplePM.d.ts +42 -0
  287. package/dist/types/ExampleFeature/PMs/ExamplePM.d.ts.map +1 -0
  288. package/dist/types/ExampleFeature/PMs/ExampleSingletonPM.d.ts +52 -0
  289. package/dist/types/ExampleFeature/PMs/ExampleSingletonPM.d.ts.map +1 -0
  290. package/dist/types/ExampleFeature/PMs/index.d.ts +3 -0
  291. package/dist/types/ExampleFeature/PMs/index.d.ts.map +1 -0
  292. package/dist/types/ExampleFeature/UCs/EditExampleStringUC.d.ts +52 -0
  293. package/dist/types/ExampleFeature/UCs/EditExampleStringUC.d.ts.map +1 -0
  294. package/dist/types/ExampleFeature/UCs/ToggleExampleBooleanUC.d.ts +44 -0
  295. package/dist/types/ExampleFeature/UCs/ToggleExampleBooleanUC.d.ts.map +1 -0
  296. package/dist/types/ExampleFeature/UCs/index.d.ts +3 -0
  297. package/dist/types/ExampleFeature/UCs/index.d.ts.map +1 -0
  298. package/dist/types/ExampleFeature/index.d.ts +8 -0
  299. package/dist/types/ExampleFeature/index.d.ts.map +1 -0
  300. package/dist/types/Types/PmAdapter.d.ts +60 -0
  301. package/dist/types/Types/PmAdapter.d.ts.map +1 -1
  302. package/dist/types/Types/SingletonPmAdapter.d.ts +55 -0
  303. package/dist/types/Types/SingletonPmAdapter.d.ts.map +1 -1
  304. package/dist/types/ValueObjects/Angle.d.ts +1 -1
  305. package/dist/types/ValueObjects/Matrix.d.ts +5 -5
  306. package/dist/types/ValueObjects/Matrix.d.ts.map +1 -1
  307. package/dist/types/ValueObjects/Quaternion.d.ts +17 -17
  308. package/dist/types/ValueObjects/Vector2.d.ts +8 -3
  309. package/dist/types/ValueObjects/Vector2.d.ts.map +1 -1
  310. package/dist/types/index.d.ts +1 -0
  311. package/dist/types/index.d.ts.map +1 -1
  312. package/package.json +6 -4
  313. package/dist/cjs/AppObject/AppObject.test.js +0 -113
  314. package/dist/cjs/AppObject/AppObject.test.js.map +0 -1
  315. package/dist/cjs/AppObject/AppObjectComponent.test.js +0 -132
  316. package/dist/cjs/AppObject/AppObjectComponent.test.js.map +0 -1
  317. package/dist/cjs/AppObject/AppObjectEntity.test.js +0 -108
  318. package/dist/cjs/AppObject/AppObjectEntity.test.js.map +0 -1
  319. package/dist/cjs/AppObject/AppObjectEntityRepo.test.js +0 -149
  320. package/dist/cjs/AppObject/AppObjectEntityRepo.test.js.map +0 -1
  321. package/dist/cjs/AppObject/AppObjectPM.test.js +0 -103
  322. package/dist/cjs/AppObject/AppObjectPM.test.js.map +0 -1
  323. package/dist/cjs/AppObject/AppObjectRepo.test.js +0 -213
  324. package/dist/cjs/AppObject/AppObjectRepo.test.js.map +0 -1
  325. package/dist/cjs/AppObject/getSingletonComponent.test.js +0 -13
  326. package/dist/cjs/AppObject/getSingletonComponent.test.js.map +0 -1
  327. package/dist/cjs/Entities/MemoizedAngle.test.js +0 -30
  328. package/dist/cjs/Entities/MemoizedAngle.test.js.map +0 -1
  329. package/dist/cjs/Entities/MemoizedBoolean.test.js +0 -34
  330. package/dist/cjs/Entities/MemoizedBoolean.test.js.map +0 -1
  331. package/dist/cjs/Entities/MemoizedColor.test.js +0 -32
  332. package/dist/cjs/Entities/MemoizedColor.test.js.map +0 -1
  333. package/dist/cjs/Entities/MemoizedNumber.test.js +0 -29
  334. package/dist/cjs/Entities/MemoizedNumber.test.js.map +0 -1
  335. package/dist/cjs/Entities/MemoizedQuaternion.test.js +0 -32
  336. package/dist/cjs/Entities/MemoizedQuaternion.test.js.map +0 -1
  337. package/dist/cjs/Entities/MemoizedString.test.js +0 -29
  338. package/dist/cjs/Entities/MemoizedString.test.js.map +0 -1
  339. package/dist/cjs/Entities/MemoizedVector2.test.js +0 -32
  340. package/dist/cjs/Entities/MemoizedVector2.test.js.map +0 -1
  341. package/dist/cjs/Entities/MemoizedVector3.test.js +0 -32
  342. package/dist/cjs/Entities/MemoizedVector3.test.js.map +0 -1
  343. package/dist/cjs/Entities/ObservableEntity.test.js +0 -25
  344. package/dist/cjs/Entities/ObservableEntity.test.js.map +0 -1
  345. package/dist/cjs/Entities/ObserverList.test.js +0 -44
  346. package/dist/cjs/Entities/ObserverList.test.js.map +0 -1
  347. package/dist/cjs/Entities/RangedNumber.test.js +0 -96
  348. package/dist/cjs/Entities/RangedNumber.test.js.map +0 -1
  349. package/dist/cjs/Utilities/LengthConverters.test.js +0 -24
  350. package/dist/cjs/Utilities/LengthConverters.test.js.map +0 -1
  351. package/dist/cjs/Utilities/LerpNumber.test.js +0 -90
  352. package/dist/cjs/Utilities/LerpNumber.test.js.map +0 -1
  353. package/dist/cjs/Utilities/addAlphaToHex.test.js +0 -34
  354. package/dist/cjs/Utilities/addAlphaToHex.test.js.map +0 -1
  355. package/dist/cjs/Utilities/alphaToHex.test.js +0 -75
  356. package/dist/cjs/Utilities/alphaToHex.test.js.map +0 -1
  357. package/dist/cjs/Utilities/degreesToRadians.test.js +0 -9
  358. package/dist/cjs/Utilities/degreesToRadians.test.js.map +0 -1
  359. package/dist/cjs/Utilities/easeFunctions.test.js +0 -209
  360. package/dist/cjs/Utilities/easeFunctions.test.js.map +0 -1
  361. package/dist/cjs/Utilities/interpolateNumber.test.js +0 -26
  362. package/dist/cjs/Utilities/interpolateNumber.test.js.map +0 -1
  363. package/dist/cjs/ValueObjects/Angle.test.js +0 -28
  364. package/dist/cjs/ValueObjects/Angle.test.js.map +0 -1
  365. package/dist/cjs/ValueObjects/Color.test.js +0 -147
  366. package/dist/cjs/ValueObjects/Color.test.js.map +0 -1
  367. package/dist/cjs/ValueObjects/LineSegment2D.test.js +0 -102
  368. package/dist/cjs/ValueObjects/LineSegment2D.test.js.map +0 -1
  369. package/dist/cjs/ValueObjects/Matrix.test.js +0 -385
  370. package/dist/cjs/ValueObjects/Matrix.test.js.map +0 -1
  371. package/dist/cjs/ValueObjects/ParametricLine.test.js +0 -126
  372. package/dist/cjs/ValueObjects/ParametricLine.test.js.map +0 -1
  373. package/dist/cjs/ValueObjects/ParametricPlane.test.js +0 -101
  374. package/dist/cjs/ValueObjects/ParametricPlane.test.js.map +0 -1
  375. package/dist/cjs/ValueObjects/Quaternion.test.js +0 -240
  376. package/dist/cjs/ValueObjects/Quaternion.test.js.map +0 -1
  377. package/dist/cjs/ValueObjects/Rectangle.test.js +0 -32
  378. package/dist/cjs/ValueObjects/Rectangle.test.js.map +0 -1
  379. package/dist/cjs/ValueObjects/Vector2.test.js +0 -136
  380. package/dist/cjs/ValueObjects/Vector2.test.js.map +0 -1
  381. package/dist/cjs/ValueObjects/Vector3.test.js +0 -188
  382. package/dist/cjs/ValueObjects/Vector3.test.js.map +0 -1
  383. package/dist/cjs/ValueObjects/Version.test.js +0 -310
  384. package/dist/cjs/ValueObjects/Version.test.js.map +0 -1
  385. package/dist/esm/AppObject/AppObject.test.js +0 -110
  386. package/dist/esm/AppObject/AppObject.test.js.map +0 -1
  387. package/dist/esm/AppObject/AppObjectComponent.test.js +0 -130
  388. package/dist/esm/AppObject/AppObjectComponent.test.js.map +0 -1
  389. package/dist/esm/AppObject/AppObjectEntity.test.js +0 -106
  390. package/dist/esm/AppObject/AppObjectEntity.test.js.map +0 -1
  391. package/dist/esm/AppObject/AppObjectEntityRepo.test.js +0 -147
  392. package/dist/esm/AppObject/AppObjectEntityRepo.test.js.map +0 -1
  393. package/dist/esm/AppObject/AppObjectPM.test.js +0 -101
  394. package/dist/esm/AppObject/AppObjectPM.test.js.map +0 -1
  395. package/dist/esm/AppObject/AppObjectRepo.test.js +0 -211
  396. package/dist/esm/AppObject/AppObjectRepo.test.js.map +0 -1
  397. package/dist/esm/AppObject/getSingletonComponent.test.js +0 -11
  398. package/dist/esm/AppObject/getSingletonComponent.test.js.map +0 -1
  399. package/dist/esm/Entities/MemoizedAngle.test.js +0 -28
  400. package/dist/esm/Entities/MemoizedAngle.test.js.map +0 -1
  401. package/dist/esm/Entities/MemoizedBoolean.test.js +0 -32
  402. package/dist/esm/Entities/MemoizedBoolean.test.js.map +0 -1
  403. package/dist/esm/Entities/MemoizedColor.test.js +0 -30
  404. package/dist/esm/Entities/MemoizedColor.test.js.map +0 -1
  405. package/dist/esm/Entities/MemoizedNumber.test.js +0 -27
  406. package/dist/esm/Entities/MemoizedNumber.test.js.map +0 -1
  407. package/dist/esm/Entities/MemoizedQuaternion.test.js +0 -30
  408. package/dist/esm/Entities/MemoizedQuaternion.test.js.map +0 -1
  409. package/dist/esm/Entities/MemoizedString.test.js +0 -27
  410. package/dist/esm/Entities/MemoizedString.test.js.map +0 -1
  411. package/dist/esm/Entities/MemoizedVector2.test.js +0 -30
  412. package/dist/esm/Entities/MemoizedVector2.test.js.map +0 -1
  413. package/dist/esm/Entities/MemoizedVector3.test.js +0 -30
  414. package/dist/esm/Entities/MemoizedVector3.test.js.map +0 -1
  415. package/dist/esm/Entities/ObservableEntity.test.js +0 -23
  416. package/dist/esm/Entities/ObservableEntity.test.js.map +0 -1
  417. package/dist/esm/Entities/ObserverList.test.js +0 -42
  418. package/dist/esm/Entities/ObserverList.test.js.map +0 -1
  419. package/dist/esm/Entities/RangedNumber.test.js +0 -94
  420. package/dist/esm/Entities/RangedNumber.test.js.map +0 -1
  421. package/dist/esm/Utilities/LengthConverters.test.js +0 -22
  422. package/dist/esm/Utilities/LengthConverters.test.js.map +0 -1
  423. package/dist/esm/Utilities/LerpNumber.test.js +0 -88
  424. package/dist/esm/Utilities/LerpNumber.test.js.map +0 -1
  425. package/dist/esm/Utilities/addAlphaToHex.test.js +0 -32
  426. package/dist/esm/Utilities/addAlphaToHex.test.js.map +0 -1
  427. package/dist/esm/Utilities/alphaToHex.test.js +0 -73
  428. package/dist/esm/Utilities/alphaToHex.test.js.map +0 -1
  429. package/dist/esm/Utilities/degreesToRadians.test.js +0 -7
  430. package/dist/esm/Utilities/degreesToRadians.test.js.map +0 -1
  431. package/dist/esm/Utilities/easeFunctions.test.js +0 -207
  432. package/dist/esm/Utilities/easeFunctions.test.js.map +0 -1
  433. package/dist/esm/Utilities/interpolateNumber.test.js +0 -24
  434. package/dist/esm/Utilities/interpolateNumber.test.js.map +0 -1
  435. package/dist/esm/ValueObjects/Angle.test.js +0 -26
  436. package/dist/esm/ValueObjects/Angle.test.js.map +0 -1
  437. package/dist/esm/ValueObjects/Color.test.js +0 -145
  438. package/dist/esm/ValueObjects/Color.test.js.map +0 -1
  439. package/dist/esm/ValueObjects/LineSegment2D.test.js +0 -100
  440. package/dist/esm/ValueObjects/LineSegment2D.test.js.map +0 -1
  441. package/dist/esm/ValueObjects/Matrix.test.js +0 -383
  442. package/dist/esm/ValueObjects/Matrix.test.js.map +0 -1
  443. package/dist/esm/ValueObjects/ParametricLine.test.js +0 -124
  444. package/dist/esm/ValueObjects/ParametricLine.test.js.map +0 -1
  445. package/dist/esm/ValueObjects/ParametricPlane.test.js +0 -99
  446. package/dist/esm/ValueObjects/ParametricPlane.test.js.map +0 -1
  447. package/dist/esm/ValueObjects/Quaternion.test.js +0 -238
  448. package/dist/esm/ValueObjects/Quaternion.test.js.map +0 -1
  449. package/dist/esm/ValueObjects/Rectangle.test.js +0 -30
  450. package/dist/esm/ValueObjects/Rectangle.test.js.map +0 -1
  451. package/dist/esm/ValueObjects/Vector2.test.js +0 -134
  452. package/dist/esm/ValueObjects/Vector2.test.js.map +0 -1
  453. package/dist/esm/ValueObjects/Vector3.test.js +0 -186
  454. package/dist/esm/ValueObjects/Vector3.test.js.map +0 -1
  455. package/dist/esm/ValueObjects/Version.test.js +0 -308
  456. package/dist/esm/ValueObjects/Version.test.js.map +0 -1
  457. package/dist/types/AppObject/AppObject.test.d.ts +0 -7
  458. package/dist/types/AppObject/AppObject.test.d.ts.map +0 -1
  459. package/dist/types/AppObject/AppObjectComponent.test.d.ts +0 -2
  460. package/dist/types/AppObject/AppObjectComponent.test.d.ts.map +0 -1
  461. package/dist/types/AppObject/AppObjectEntity.test.d.ts +0 -2
  462. package/dist/types/AppObject/AppObjectEntity.test.d.ts.map +0 -1
  463. package/dist/types/AppObject/AppObjectEntityRepo.test.d.ts +0 -2
  464. package/dist/types/AppObject/AppObjectEntityRepo.test.d.ts.map +0 -1
  465. package/dist/types/AppObject/AppObjectPM.test.d.ts +0 -2
  466. package/dist/types/AppObject/AppObjectPM.test.d.ts.map +0 -1
  467. package/dist/types/AppObject/AppObjectRepo.test.d.ts +0 -2
  468. package/dist/types/AppObject/AppObjectRepo.test.d.ts.map +0 -1
  469. package/dist/types/AppObject/getSingletonComponent.test.d.ts +0 -2
  470. package/dist/types/AppObject/getSingletonComponent.test.d.ts.map +0 -1
  471. package/dist/types/Entities/MemoizedAngle.test.d.ts +0 -2
  472. package/dist/types/Entities/MemoizedAngle.test.d.ts.map +0 -1
  473. package/dist/types/Entities/MemoizedBoolean.test.d.ts +0 -2
  474. package/dist/types/Entities/MemoizedBoolean.test.d.ts.map +0 -1
  475. package/dist/types/Entities/MemoizedColor.test.d.ts +0 -2
  476. package/dist/types/Entities/MemoizedColor.test.d.ts.map +0 -1
  477. package/dist/types/Entities/MemoizedNumber.test.d.ts +0 -2
  478. package/dist/types/Entities/MemoizedNumber.test.d.ts.map +0 -1
  479. package/dist/types/Entities/MemoizedQuaternion.test.d.ts +0 -2
  480. package/dist/types/Entities/MemoizedQuaternion.test.d.ts.map +0 -1
  481. package/dist/types/Entities/MemoizedString.test.d.ts +0 -2
  482. package/dist/types/Entities/MemoizedString.test.d.ts.map +0 -1
  483. package/dist/types/Entities/MemoizedVector2.test.d.ts +0 -2
  484. package/dist/types/Entities/MemoizedVector2.test.d.ts.map +0 -1
  485. package/dist/types/Entities/MemoizedVector3.test.d.ts +0 -2
  486. package/dist/types/Entities/MemoizedVector3.test.d.ts.map +0 -1
  487. package/dist/types/Entities/ObservableEntity.test.d.ts +0 -2
  488. package/dist/types/Entities/ObservableEntity.test.d.ts.map +0 -1
  489. package/dist/types/Entities/ObserverList.test.d.ts +0 -2
  490. package/dist/types/Entities/ObserverList.test.d.ts.map +0 -1
  491. package/dist/types/Entities/RangedNumber.test.d.ts +0 -2
  492. package/dist/types/Entities/RangedNumber.test.d.ts.map +0 -1
  493. package/dist/types/Utilities/LengthConverters.test.d.ts +0 -2
  494. package/dist/types/Utilities/LengthConverters.test.d.ts.map +0 -1
  495. package/dist/types/Utilities/LerpNumber.test.d.ts +0 -2
  496. package/dist/types/Utilities/LerpNumber.test.d.ts.map +0 -1
  497. package/dist/types/Utilities/addAlphaToHex.test.d.ts +0 -2
  498. package/dist/types/Utilities/addAlphaToHex.test.d.ts.map +0 -1
  499. package/dist/types/Utilities/alphaToHex.test.d.ts +0 -2
  500. package/dist/types/Utilities/alphaToHex.test.d.ts.map +0 -1
  501. package/dist/types/Utilities/degreesToRadians.test.d.ts +0 -2
  502. package/dist/types/Utilities/degreesToRadians.test.d.ts.map +0 -1
  503. package/dist/types/Utilities/easeFunctions.test.d.ts +0 -2
  504. package/dist/types/Utilities/easeFunctions.test.d.ts.map +0 -1
  505. package/dist/types/Utilities/interpolateNumber.test.d.ts +0 -2
  506. package/dist/types/Utilities/interpolateNumber.test.d.ts.map +0 -1
  507. package/dist/types/ValueObjects/Angle.test.d.ts +0 -2
  508. package/dist/types/ValueObjects/Angle.test.d.ts.map +0 -1
  509. package/dist/types/ValueObjects/Color.test.d.ts +0 -2
  510. package/dist/types/ValueObjects/Color.test.d.ts.map +0 -1
  511. package/dist/types/ValueObjects/LineSegment2D.test.d.ts +0 -2
  512. package/dist/types/ValueObjects/LineSegment2D.test.d.ts.map +0 -1
  513. package/dist/types/ValueObjects/Matrix.test.d.ts +0 -2
  514. package/dist/types/ValueObjects/Matrix.test.d.ts.map +0 -1
  515. package/dist/types/ValueObjects/ParametricLine.test.d.ts +0 -2
  516. package/dist/types/ValueObjects/ParametricLine.test.d.ts.map +0 -1
  517. package/dist/types/ValueObjects/ParametricPlane.test.d.ts +0 -2
  518. package/dist/types/ValueObjects/ParametricPlane.test.d.ts.map +0 -1
  519. package/dist/types/ValueObjects/Quaternion.test.d.ts +0 -2
  520. package/dist/types/ValueObjects/Quaternion.test.d.ts.map +0 -1
  521. package/dist/types/ValueObjects/Rectangle.test.d.ts +0 -2
  522. package/dist/types/ValueObjects/Rectangle.test.d.ts.map +0 -1
  523. package/dist/types/ValueObjects/Vector2.test.d.ts +0 -2
  524. package/dist/types/ValueObjects/Vector2.test.d.ts.map +0 -1
  525. package/dist/types/ValueObjects/Vector3.test.d.ts +0 -2
  526. package/dist/types/ValueObjects/Vector3.test.d.ts.map +0 -1
  527. package/dist/types/ValueObjects/Version.test.d.ts +0 -2
  528. package/dist/types/ValueObjects/Version.test.d.ts.map +0 -1
@@ -1,186 +0,0 @@
1
- import { Vector3 } from ".";
2
- import { Angle } from "./Angle";
3
- import { Matrix } from "./Matrix";
4
- import { Quaternion } from "./Quaternion";
5
- describe("Vector 3 Value object - Creation", () => {
6
- it("Creates a zero vector", () => {
7
- const v = Vector3.Zero();
8
- expect(v).toEqual(new Vector3(0, 0, 0));
9
- });
10
- it("Creates a one vector", () => {
11
- const v = Vector3.One();
12
- expect(v).toEqual(new Vector3(1, 1, 1));
13
- });
14
- it("Creates a vector from an array", () => {
15
- const v = Vector3.FromArray([2, 5, 7]);
16
- expect(v).toEqual(new Vector3(2, 5, 7));
17
- });
18
- it("Creates a unit right vector", () => {
19
- const v = Vector3.Right();
20
- expect(v).toEqual(new Vector3(1, 0, 0));
21
- });
22
- it("Creates a right vector with length", () => {
23
- const v = Vector3.Right(3);
24
- expect(v).toEqual(new Vector3(3, 0, 0));
25
- });
26
- it("Creates a unit left vector", () => {
27
- const v = Vector3.Left();
28
- expect(v).toEqual(new Vector3(-1, 0, 0));
29
- });
30
- it("Creates a left vector with length", () => {
31
- const v = Vector3.Left(3);
32
- expect(v).toEqual(new Vector3(-3, 0, 0));
33
- });
34
- it("Creates a unit up vector", () => {
35
- const v = Vector3.Up();
36
- expect(v).toEqual(new Vector3(0, 1, 0));
37
- });
38
- it("Creates a up vector with length", () => {
39
- const v = Vector3.Up(3);
40
- expect(v).toEqual(new Vector3(0, 3, 0));
41
- });
42
- it("Creates a unit down vector", () => {
43
- const v = Vector3.Down();
44
- expect(v).toEqual(new Vector3(0, -1, 0));
45
- });
46
- it("Creates a down vector with length", () => {
47
- const v = Vector3.Down(3);
48
- expect(v).toEqual(new Vector3(0, -3, 0));
49
- });
50
- it("Creates a unit forward vector", () => {
51
- const v = Vector3.Forward();
52
- expect(v).toEqual(new Vector3(0, 0, 1));
53
- });
54
- it("Creates a forward vector with length", () => {
55
- const v = Vector3.Forward(3);
56
- expect(v).toEqual(new Vector3(0, 0, 3));
57
- });
58
- it("Creates a unit backward vector", () => {
59
- const v = Vector3.Backward();
60
- expect(v).toEqual(new Vector3(0, 0, -1));
61
- });
62
- it("Creates a backward vector with length", () => {
63
- const v = Vector3.Backward(3);
64
- expect(v).toEqual(new Vector3(0, 0, -3));
65
- });
66
- });
67
- describe("Vector 3 Value object - Static actions", () => {
68
- it("Adds two vectors", () => {
69
- const v1 = new Vector3(1, 2, 3);
70
- const v2 = new Vector3(4, 5, 6);
71
- const v3 = Vector3.Add(v1, v2);
72
- expect(v3).toEqual(new Vector3(5, 7, 9));
73
- });
74
- test("Subtracts two vectors", () => {
75
- const v1 = new Vector3(1, 2, 3);
76
- const v2 = new Vector3(6, 5, 4);
77
- const v3 = Vector3.Subtract(v1, v2);
78
- expect(v3).toEqual(new Vector3(-5, -3, -1));
79
- });
80
- test("Checks if two vectors are equal", () => {
81
- const v1 = new Vector3(1, 2, 3);
82
- const v2 = new Vector3(4, 5, 6);
83
- const v3 = new Vector3(1, 2, 3);
84
- expect(Vector3.Equal(v1, v2)).toEqual(false);
85
- expect(Vector3.Equal(v1, v3)).toEqual(true);
86
- });
87
- it("Checks if Vectors are close without a tolerance", () => {
88
- const v1 = new Vector3(1, 2, 3);
89
- const v2 = new Vector3(1.1, 2.2, 3.3);
90
- const v3 = new Vector3(1.001, 2.001, 3.001);
91
- expect(Vector3.Close(v1, v2)).toEqual(false);
92
- expect(Vector3.Close(v1, v3)).toEqual(true);
93
- });
94
- it("Checks if Vectors are close with a tolerance", () => {
95
- const v1 = new Vector3(1, 2, 3);
96
- const v2 = new Vector3(1.1, 2.2, 3.3);
97
- expect(Vector3.Close(v1, v2, 0.3)).toEqual(false);
98
- expect(Vector3.Close(v1, v2, 0.4)).toEqual(true);
99
- });
100
- it("Computes the cross product", () => {
101
- // From https://www.symbolab.com/solver/vector-cross-product-calculator
102
- const v1 = new Vector3(1, 2, 3);
103
- const v2 = new Vector3(4, 5, -6);
104
- const cross = Vector3.Cross(v1, v2);
105
- expect(cross).toEqual(new Vector3(-27, 18, -3));
106
- });
107
- test("Cross product", () => {
108
- // From https://www.symbolab.com/solver/vector-cross-product-calculator
109
- const v1 = new Vector3(1, 2, 3);
110
- const v2 = new Vector3(4, 5, -6);
111
- const cross = Vector3.Cross(v2, v1);
112
- expect(cross).toEqual(new Vector3(27, -18, 3));
113
- });
114
- test("Dot product", () => {
115
- // From https://www.calculatorsoup.com/calculators/algebra/dot-product-calculator.php
116
- const v1 = new Vector3(1, 5, 3);
117
- const v2 = new Vector3(2, 3, 6);
118
- const dot = Vector3.Dot(v1, v2);
119
- expect(dot).toEqual(35);
120
- });
121
- test("New vector of length", () => {
122
- const v1 = new Vector3(1, -5, 3);
123
- const v2 = Vector3.NewVectorOfLength(v1, 10);
124
- expect(v2.x).toBeCloseTo(1.69);
125
- expect(v2.y).toBeCloseTo(-8.45);
126
- expect(v2.z).toBeCloseTo(5.07);
127
- });
128
- });
129
- describe("Vector 3 Value object - parameters", () => {
130
- it("Gets the vector components", () => {
131
- const v = new Vector3(2, 5, 7);
132
- expect(v.x).toEqual(2);
133
- expect(v.y).toEqual(5);
134
- expect(v.z).toEqual(7);
135
- });
136
- it("Gets the magnitue", () => {
137
- // https://www.omnicalculator.com/math/unit-vector
138
- const v1 = new Vector3(1, -5, 3);
139
- expect(v1.magnitude).toBeCloseTo(5.916);
140
- });
141
- it("Gets the unit vector", () => {
142
- // https://www.omnicalculator.com/math/unit-vector
143
- const v1 = new Vector3(1, -5, 3);
144
- expect(v1.unit.x).toBeCloseTo(0.169);
145
- expect(v1.unit.y).toBeCloseTo(-0.845);
146
- expect(v1.unit.z).toBeCloseTo(0.507);
147
- });
148
- it("Gets the vector as an array", () => {
149
- const v1 = new Vector3(1, -5, 3);
150
- expect(v1.array).toEqual([1, -5, 3]);
151
- });
152
- it("Lerps", () => {
153
- const start = new Vector3(10, 20, 30);
154
- const end = new Vector3(20, 30, 40);
155
- const lerped = Vector3.Lerp(start, end, 0.5);
156
- expect(lerped).toEqual(new Vector3(15, 25, 35));
157
- });
158
- it("Transforms a Vector with a matrix", () => {
159
- const pos = new Vector3(5, 0, 0);
160
- const rot = Quaternion.FromAngleAxis(Vector3.Up(), Angle.FromDegrees(-90));
161
- const scale = new Vector3(2, 2, 2);
162
- const matrix = Matrix.Compose(scale, rot, pos);
163
- const transformed = Vector3.Transform(new Vector3(2, 1, -1), matrix);
164
- const expected = new Vector3(7, 2, 4);
165
- expect(Vector3.Close(transformed, expected)).toEqual(true);
166
- });
167
- it("Gets the Data Transfer Object", () => {
168
- const vec = new Vector3(1, 2, 3);
169
- expect(vec.dto).toEqual({
170
- x: 1,
171
- y: 2,
172
- z: 3,
173
- });
174
- });
175
- it("Makes a vector from a DTO", () => {
176
- const vec = Vector3.FromDTO({
177
- x: 1,
178
- y: 2,
179
- z: 3,
180
- });
181
- expect(vec.x).toEqual(1);
182
- expect(vec.y).toEqual(2);
183
- expect(vec.z).toEqual(3);
184
- });
185
- });
186
- //# sourceMappingURL=Vector3.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Vector3.test.js","sourceRoot":"","sources":["../../../src/ValueObjects/Vector3.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { Vector3 } from \".\";\r\nimport { Angle } from \"./Angle\";\r\nimport { Matrix } from \"./Matrix\";\r\nimport { Quaternion } from \"./Quaternion\";\r\n\r\ndescribe(\"Vector 3 Value object - Creation\", () => {\r\n it(\"Creates a zero vector\", () => {\r\n const v = Vector3.Zero();\r\n expect(v).toEqual(new Vector3(0, 0, 0));\r\n });\r\n it(\"Creates a one vector\", () => {\r\n const v = Vector3.One();\r\n expect(v).toEqual(new Vector3(1, 1, 1));\r\n });\r\n\r\n it(\"Creates a vector from an array\", () => {\r\n const v = Vector3.FromArray([2, 5, 7]);\r\n expect(v).toEqual(new Vector3(2, 5, 7));\r\n });\r\n\r\n it(\"Creates a unit right vector\", () => {\r\n const v = Vector3.Right();\r\n expect(v).toEqual(new Vector3(1, 0, 0));\r\n });\r\n\r\n it(\"Creates a right vector with length\", () => {\r\n const v = Vector3.Right(3);\r\n expect(v).toEqual(new Vector3(3, 0, 0));\r\n });\r\n\r\n it(\"Creates a unit left vector\", () => {\r\n const v = Vector3.Left();\r\n expect(v).toEqual(new Vector3(-1, 0, 0));\r\n });\r\n\r\n it(\"Creates a left vector with length\", () => {\r\n const v = Vector3.Left(3);\r\n expect(v).toEqual(new Vector3(-3, 0, 0));\r\n });\r\n\r\n it(\"Creates a unit up vector\", () => {\r\n const v = Vector3.Up();\r\n expect(v).toEqual(new Vector3(0, 1, 0));\r\n });\r\n\r\n it(\"Creates a up vector with length\", () => {\r\n const v = Vector3.Up(3);\r\n expect(v).toEqual(new Vector3(0, 3, 0));\r\n });\r\n\r\n it(\"Creates a unit down vector\", () => {\r\n const v = Vector3.Down();\r\n expect(v).toEqual(new Vector3(0, -1, 0));\r\n });\r\n\r\n it(\"Creates a down vector with length\", () => {\r\n const v = Vector3.Down(3);\r\n expect(v).toEqual(new Vector3(0, -3, 0));\r\n });\r\n\r\n it(\"Creates a unit forward vector\", () => {\r\n const v = Vector3.Forward();\r\n expect(v).toEqual(new Vector3(0, 0, 1));\r\n });\r\n\r\n it(\"Creates a forward vector with length\", () => {\r\n const v = Vector3.Forward(3);\r\n expect(v).toEqual(new Vector3(0, 0, 3));\r\n });\r\n\r\n it(\"Creates a unit backward vector\", () => {\r\n const v = Vector3.Backward();\r\n expect(v).toEqual(new Vector3(0, 0, -1));\r\n });\r\n\r\n it(\"Creates a backward vector with length\", () => {\r\n const v = Vector3.Backward(3);\r\n expect(v).toEqual(new Vector3(0, 0, -3));\r\n });\r\n});\r\n\r\ndescribe(\"Vector 3 Value object - Static actions\", () => {\r\n it(\"Adds two vectors\", () => {\r\n const v1 = new Vector3(1, 2, 3);\r\n const v2 = new Vector3(4, 5, 6);\r\n\r\n const v3 = Vector3.Add(v1, v2);\r\n expect(v3).toEqual(new Vector3(5, 7, 9));\r\n });\r\n\r\n test(\"Subtracts two vectors\", () => {\r\n const v1 = new Vector3(1, 2, 3);\r\n const v2 = new Vector3(6, 5, 4);\r\n\r\n const v3 = Vector3.Subtract(v1, v2);\r\n expect(v3).toEqual(new Vector3(-5, -3, -1));\r\n });\r\n\r\n test(\"Checks if two vectors are equal\", () => {\r\n const v1 = new Vector3(1, 2, 3);\r\n const v2 = new Vector3(4, 5, 6);\r\n const v3 = new Vector3(1, 2, 3);\r\n expect(Vector3.Equal(v1, v2)).toEqual(false);\r\n expect(Vector3.Equal(v1, v3)).toEqual(true);\r\n });\r\n\r\n it(\"Checks if Vectors are close without a tolerance\", () => {\r\n const v1 = new Vector3(1, 2, 3);\r\n const v2 = new Vector3(1.1, 2.2, 3.3);\r\n const v3 = new Vector3(1.001, 2.001, 3.001);\r\n expect(Vector3.Close(v1, v2)).toEqual(false);\r\n expect(Vector3.Close(v1, v3)).toEqual(true);\r\n });\r\n\r\n it(\"Checks if Vectors are close with a tolerance\", () => {\r\n const v1 = new Vector3(1, 2, 3);\r\n const v2 = new Vector3(1.1, 2.2, 3.3);\r\n expect(Vector3.Close(v1, v2, 0.3)).toEqual(false);\r\n expect(Vector3.Close(v1, v2, 0.4)).toEqual(true);\r\n });\r\n\r\n it(\"Computes the cross product\", () => {\r\n // From https://www.symbolab.com/solver/vector-cross-product-calculator\r\n const v1 = new Vector3(1, 2, 3);\r\n const v2 = new Vector3(4, 5, -6);\r\n\r\n const cross = Vector3.Cross(v1, v2);\r\n expect(cross).toEqual(new Vector3(-27, 18, -3));\r\n });\r\n\r\n test(\"Cross product\", () => {\r\n // From https://www.symbolab.com/solver/vector-cross-product-calculator\r\n const v1 = new Vector3(1, 2, 3);\r\n const v2 = new Vector3(4, 5, -6);\r\n\r\n const cross = Vector3.Cross(v2, v1);\r\n expect(cross).toEqual(new Vector3(27, -18, 3));\r\n });\r\n\r\n test(\"Dot product\", () => {\r\n // From https://www.calculatorsoup.com/calculators/algebra/dot-product-calculator.php\r\n const v1 = new Vector3(1, 5, 3);\r\n const v2 = new Vector3(2, 3, 6);\r\n\r\n const dot = Vector3.Dot(v1, v2);\r\n expect(dot).toEqual(35);\r\n });\r\n\r\n test(\"New vector of length\", () => {\r\n const v1 = new Vector3(1, -5, 3);\r\n const v2 = Vector3.NewVectorOfLength(v1, 10);\r\n\r\n expect(v2.x).toBeCloseTo(1.69);\r\n expect(v2.y).toBeCloseTo(-8.45);\r\n expect(v2.z).toBeCloseTo(5.07);\r\n });\r\n});\r\n\r\ndescribe(\"Vector 3 Value object - parameters\", () => {\r\n it(\"Gets the vector components\", () => {\r\n const v = new Vector3(2, 5, 7);\r\n expect(v.x).toEqual(2);\r\n expect(v.y).toEqual(5);\r\n expect(v.z).toEqual(7);\r\n });\r\n\r\n it(\"Gets the magnitue\", () => {\r\n // https://www.omnicalculator.com/math/unit-vector\r\n const v1 = new Vector3(1, -5, 3);\r\n expect(v1.magnitude).toBeCloseTo(5.916);\r\n });\r\n\r\n it(\"Gets the unit vector\", () => {\r\n // https://www.omnicalculator.com/math/unit-vector\r\n const v1 = new Vector3(1, -5, 3);\r\n\r\n expect(v1.unit.x).toBeCloseTo(0.169);\r\n expect(v1.unit.y).toBeCloseTo(-0.845);\r\n expect(v1.unit.z).toBeCloseTo(0.507);\r\n });\r\n\r\n it(\"Gets the vector as an array\", () => {\r\n const v1 = new Vector3(1, -5, 3);\r\n expect(v1.array).toEqual([1, -5, 3]);\r\n });\r\n\r\n it(\"Lerps\", () => {\r\n const start = new Vector3(10, 20, 30);\r\n const end = new Vector3(20, 30, 40);\r\n const lerped = Vector3.Lerp(start, end, 0.5);\r\n\r\n expect(lerped).toEqual(new Vector3(15, 25, 35));\r\n });\r\n\r\n it(\"Transforms a Vector with a matrix\", () => {\r\n const pos = new Vector3(5, 0, 0);\r\n const rot = Quaternion.FromAngleAxis(Vector3.Up(), Angle.FromDegrees(-90));\r\n const scale = new Vector3(2, 2, 2);\r\n const matrix = Matrix.Compose(scale, rot, pos);\r\n\r\n const transformed = Vector3.Transform(new Vector3(2, 1, -1), matrix);\r\n const expected = new Vector3(7, 2, 4);\r\n\r\n expect(Vector3.Close(transformed, expected)).toEqual(true);\r\n });\r\n\r\n it(\"Gets the Data Transfer Object\", () => {\r\n const vec = new Vector3(1, 2, 3);\r\n\r\n expect(vec.dto).toEqual({\r\n x: 1,\r\n y: 2,\r\n z: 3,\r\n });\r\n });\r\n\r\n it(\"Makes a vector from a DTO\", () => {\r\n const vec = Vector3.FromDTO({\r\n x: 1,\r\n y: 2,\r\n z: 3,\r\n });\r\n\r\n expect(vec.x).toEqual(1);\r\n expect(vec.y).toEqual(2);\r\n expect(vec.z).toEqual(3);\r\n });\r\n});\r\n"]}
@@ -1,308 +0,0 @@
1
- import { Version, VersionStage } from './Version';
2
- test('Initialization', () => {
3
- const version = new Version(1, 2, 3, VersionStage.BETA, 'yo');
4
- expect(version.major).toEqual(1);
5
- expect(version.minor).toEqual(2);
6
- expect(version.patch).toEqual(3);
7
- expect(version.stage).toEqual(VersionStage.BETA);
8
- expect(version.label).toEqual('yo');
9
- });
10
- test('Without a label', () => {
11
- const version = new Version(1, 2, 3, VersionStage.ALPHA);
12
- expect(version.major).toEqual(1);
13
- expect(version.minor).toEqual(2);
14
- expect(version.patch).toEqual(3);
15
- expect(version.stage).toEqual(VersionStage.ALPHA);
16
- expect(version.label).toBeUndefined();
17
- });
18
- describe('Version strings', () => {
19
- it('Shows alpha after the version', () => {
20
- const version = new Version(1, 2, 3, VersionStage.ALPHA);
21
- expect(version.displayString).toEqual('1.2.3-alpha');
22
- });
23
- it('Appends the label after alpha', () => {
24
- const version = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');
25
- expect(version.displayString).toEqual('1.2.3-alpha-yo');
26
- });
27
- it('Shows beta after the version', () => {
28
- const version = new Version(1, 2, 3, VersionStage.BETA);
29
- expect(version.displayString).toEqual('1.2.3-beta');
30
- });
31
- it('Appends the label after beta', () => {
32
- const version = new Version(1, 2, 3, VersionStage.BETA, 'yo');
33
- expect(version.displayString).toEqual('1.2.3-beta-yo');
34
- });
35
- it('Does not show a release string', () => {
36
- const version = new Version(1, 2, 3, VersionStage.RELEASED);
37
- expect(version.displayString).toEqual('1.2.3');
38
- });
39
- it('Appends the label after version for release', () => {
40
- const version = new Version(1, 2, 3, VersionStage.RELEASED, 'yo');
41
- expect(version.displayString).toEqual('1.2.3-yo');
42
- });
43
- });
44
- describe('Version strings', () => {
45
- it('Returns the stripped string for a release without label', () => {
46
- const version = new Version(1, 2, 3, VersionStage.RELEASED);
47
- expect(version.baseVersionString).toEqual('1.2.3');
48
- });
49
- it('Returns the stripped string for a release with a label', () => {
50
- const version = new Version(1, 2, 3, VersionStage.RELEASED, 'yo');
51
- expect(version.baseVersionString).toEqual('1.2.3');
52
- });
53
- it('Returns the stripped string for an alpha without label', () => {
54
- const version = new Version(1, 2, 3, VersionStage.ALPHA);
55
- expect(version.baseVersionString).toEqual('1.2.3');
56
- });
57
- it('Returns the stripped string for an alpha with a label', () => {
58
- const version = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');
59
- expect(version.baseVersionString).toEqual('1.2.3');
60
- });
61
- it('Returns the stripped string for a beta without label', () => {
62
- const version = new Version(1, 2, 3, VersionStage.BETA);
63
- expect(version.baseVersionString).toEqual('1.2.3');
64
- });
65
- it('Returns the stripped string for a beta with a label', () => {
66
- const version = new Version(1, 2, 3, VersionStage.BETA, 'yo');
67
- expect(version.baseVersionString).toEqual('1.2.3');
68
- });
69
- });
70
- describe('Getting the latest from a list', () => {
71
- it('Gets the latest from list', () => {
72
- const version1 = new Version(1, 2, 3, VersionStage.RELEASED);
73
- const version2 = new Version(0, 2, 3, VersionStage.RELEASED);
74
- const version3 = new Version(1, 2, 4, VersionStage.RELEASED);
75
- const version4 = new Version(0, 0, 4, VersionStage.RELEASED);
76
- const versions = [version1, version2, version3, version4];
77
- const latest = Version.GetLatest(versions);
78
- expect(latest).toEqual(version3);
79
- });
80
- it('Returns the latest regardless of the stage', () => {
81
- const version1 = new Version(1, 2, 3, VersionStage.ALPHA);
82
- const version2 = new Version(0, 2, 3, VersionStage.BETA);
83
- const version3 = new Version(1, 2, 4, VersionStage.ALPHA);
84
- const version4 = new Version(0, 0, 4, VersionStage.BETA);
85
- const versions = [version1, version2, version3, version4];
86
- const latest = Version.GetLatest(versions);
87
- expect(latest).toEqual(version3);
88
- });
89
- it('Returns undefined if the list is empty', () => {
90
- const latest = Version.GetLatest([]);
91
- expect(latest).toBeUndefined();
92
- });
93
- });
94
- describe('Getting the latest major', () => {
95
- it('Gets the latest major', () => {
96
- const version1 = new Version(2, 2, 3, VersionStage.RELEASED);
97
- const version2 = new Version(0, 2, 3, VersionStage.RELEASED);
98
- const version3 = new Version(1, 2, 4, VersionStage.RELEASED);
99
- const version4 = new Version(0, 3, 4, VersionStage.RELEASED);
100
- const versions = [version1, version2, version3, version4];
101
- const latest = Version.GetLatestWithMajor(versions, 0);
102
- expect(latest).toEqual(version4);
103
- });
104
- it('Returns undefined if there are no majors that match', () => {
105
- const version1 = new Version(2, 2, 3, VersionStage.RELEASED);
106
- const version2 = new Version(0, 2, 3, VersionStage.RELEASED);
107
- const version3 = new Version(1, 2, 4, VersionStage.RELEASED);
108
- const version4 = new Version(0, 3, 4, VersionStage.RELEASED);
109
- const versions = [version1, version2, version3, version4];
110
- const latest = Version.GetLatestWithMajor(versions, 4);
111
- expect(latest).toBeUndefined();
112
- });
113
- it('Gets the latest major regardless of stage', () => {
114
- const version1 = new Version(2, 2, 3, VersionStage.ALPHA);
115
- const version2 = new Version(0, 2, 3, VersionStage.BETA);
116
- const version3 = new Version(1, 2, 4, VersionStage.ALPHA);
117
- const version4 = new Version(0, 3, 4, VersionStage.BETA);
118
- const versions = [version1, version2, version3, version4];
119
- const latest = Version.GetLatestWithMajor(versions, 0);
120
- expect(latest).toEqual(version4);
121
- });
122
- });
123
- describe('Get the latest major/minor', () => {
124
- it('Get the latest major/minor combo', () => {
125
- const version1 = new Version(1, 2, 3, VersionStage.RELEASED);
126
- const version2 = new Version(0, 2, 3, VersionStage.RELEASED);
127
- const version3 = new Version(1, 2, 4, VersionStage.RELEASED);
128
- const version4 = new Version(0, 3, 4, VersionStage.RELEASED);
129
- const versions = [version1, version2, version3, version4];
130
- const latest = Version.GetLatestWithMajorMinor(versions, 1, 2);
131
- expect(latest).toEqual(version3);
132
- });
133
- it('Returns undefined if there are no major/minor combos', () => {
134
- const version1 = new Version(1, 2, 3, VersionStage.RELEASED);
135
- const version2 = new Version(0, 2, 3, VersionStage.RELEASED);
136
- const version3 = new Version(1, 2, 4, VersionStage.RELEASED);
137
- const version4 = new Version(0, 3, 4, VersionStage.RELEASED);
138
- const versions = [version1, version2, version3, version4];
139
- const latest = Version.GetLatestWithMajorMinor(versions, 1, 3);
140
- expect(latest).toBeUndefined();
141
- });
142
- it('Get the latest major/minor combo regardless of stage', () => {
143
- const version1 = new Version(1, 2, 2, VersionStage.RELEASED);
144
- const version2 = new Version(1, 2, 3, VersionStage.BETA);
145
- const version3 = new Version(1, 2, 4, VersionStage.ALPHA);
146
- const versions = [version1, version2, version3];
147
- const latest = Version.GetLatestWithMajorMinor(versions, 1, 2);
148
- expect(latest).toEqual(version3);
149
- });
150
- });
151
- describe('Version from string', () => {
152
- it('Forms the version from string', () => {
153
- const version = Version.FromString('1.2.3');
154
- expect(version.major).toEqual(1);
155
- expect(version.minor).toEqual(2);
156
- expect(version.patch).toEqual(3);
157
- expect(version.label).toBeUndefined();
158
- expect(version.stage).toEqual(VersionStage.RELEASED);
159
- });
160
- it('Gets the alpha stage from the string', () => {
161
- const version = Version.FromString('1.2.3-alpha');
162
- expect(version.major).toEqual(1);
163
- expect(version.minor).toEqual(2);
164
- expect(version.patch).toEqual(3);
165
- expect(version.label).toBeUndefined();
166
- expect(version.stage).toEqual(VersionStage.ALPHA);
167
- });
168
- it('Gets the alpha stage and label from the string', () => {
169
- const version = Version.FromString('1.2.3-alpha-your-mom');
170
- expect(version.major).toEqual(1);
171
- expect(version.minor).toEqual(2);
172
- expect(version.patch).toEqual(3);
173
- expect(version.label).toEqual('your-mom');
174
- expect(version.stage).toEqual(VersionStage.ALPHA);
175
- });
176
- it('Gets the beta stage from the string', () => {
177
- const version = Version.FromString('1.2.3-beta');
178
- expect(version.major).toEqual(1);
179
- expect(version.minor).toEqual(2);
180
- expect(version.patch).toEqual(3);
181
- expect(version.label).toBeUndefined();
182
- expect(version.stage).toEqual(VersionStage.BETA);
183
- });
184
- it('Gets the beta stage and label from the string', () => {
185
- const version = Version.FromString('1.2.3-beta-your-mom');
186
- expect(version.major).toEqual(1);
187
- expect(version.minor).toEqual(2);
188
- expect(version.patch).toEqual(3);
189
- expect(version.label).toEqual('your-mom');
190
- expect(version.stage).toEqual(VersionStage.BETA);
191
- });
192
- it('Gets the label for a released stage from the string', () => {
193
- const version = Version.FromString('1.2.3-yo');
194
- expect(version.major).toEqual(1);
195
- expect(version.minor).toEqual(2);
196
- expect(version.patch).toEqual(3);
197
- expect(version.label).toEqual('yo');
198
- expect(version.stage).toEqual(VersionStage.RELEASED);
199
- });
200
- it('Forms the version from string with a hyphenated label', () => {
201
- const version = Version.FromString('1.2.3-your-mom');
202
- expect(version.major).toEqual(1);
203
- expect(version.minor).toEqual(2);
204
- expect(version.patch).toEqual(3);
205
- expect(version.label).toEqual('your-mom');
206
- expect(version.stage).toEqual(VersionStage.RELEASED);
207
- });
208
- it('Throws if there are not enough parts', () => {
209
- expect.assertions(1);
210
- try {
211
- Version.FromString('1.2');
212
- }
213
- catch (e) {
214
- expect(e).not.toBeUndefined();
215
- }
216
- });
217
- it('Throws if there are too many parts', () => {
218
- expect.assertions(1);
219
- try {
220
- Version.FromString('1.2.3.4');
221
- }
222
- catch (e) {
223
- expect(e).not.toBeUndefined();
224
- }
225
- });
226
- it('Throws if major is not a number', () => {
227
- expect.assertions(1);
228
- try {
229
- Version.FromString('boo.2.3');
230
- }
231
- catch (e) {
232
- expect(e).not.toBeUndefined();
233
- }
234
- });
235
- it('Throws if minor is not a number', () => {
236
- expect.assertions(1);
237
- try {
238
- Version.FromString('1.boo.3');
239
- }
240
- catch (e) {
241
- expect(e).not.toBeUndefined();
242
- }
243
- });
244
- it('Throws if patch is not a number', () => {
245
- expect.assertions(1);
246
- try {
247
- Version.FromString('1.2.boo');
248
- }
249
- catch (e) {
250
- expect(e).not.toBeUndefined();
251
- }
252
- });
253
- });
254
- describe('Testing are equal', () => {
255
- it('Returns true if equal', () => {
256
- const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');
257
- const v2 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');
258
- expect(Version.AreEqual(v1, v2)).toEqual(true);
259
- });
260
- it('Returns false if the majors are different', () => {
261
- const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');
262
- const v2 = new Version(2, 2, 3, VersionStage.ALPHA, 'yo');
263
- expect(Version.AreEqual(v1, v2)).toEqual(false);
264
- });
265
- it('Returns false if the minors are different', () => {
266
- const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');
267
- const v2 = new Version(1, 1, 3, VersionStage.ALPHA, 'yo');
268
- expect(Version.AreEqual(v1, v2)).toEqual(false);
269
- });
270
- it('Returns false if the patches are different', () => {
271
- const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');
272
- const v2 = new Version(1, 2, 2, VersionStage.ALPHA, 'yo');
273
- expect(Version.AreEqual(v1, v2)).toEqual(false);
274
- });
275
- it('Returns false if the stages are different', () => {
276
- const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');
277
- const v2 = new Version(1, 2, 3, VersionStage.BETA, 'yo');
278
- expect(Version.AreEqual(v1, v2)).toEqual(false);
279
- });
280
- it('Returns false if the labels are different', () => {
281
- const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');
282
- const v2 = new Version(1, 2, 3, VersionStage.ALPHA);
283
- expect(Version.AreEqual(v1, v2)).toEqual(false);
284
- });
285
- });
286
- describe('Testing for a newer version', () => {
287
- it('Returns true if the major version is larger', () => {
288
- const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');
289
- const v2 = new Version(2, 2, 3, VersionStage.BETA);
290
- expect(Version.IsNewerVersion(v1, v2)).toEqual(true);
291
- });
292
- it('Returns true if the minor version is larger', () => {
293
- const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');
294
- const v2 = new Version(1, 3, 3, VersionStage.BETA);
295
- expect(Version.IsNewerVersion(v1, v2)).toEqual(true);
296
- });
297
- it('Returns true if the patch version is larger', () => {
298
- const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');
299
- const v2 = new Version(1, 2, 4, VersionStage.BETA);
300
- expect(Version.IsNewerVersion(v1, v2)).toEqual(true);
301
- });
302
- it('Returns false if equal', () => {
303
- const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');
304
- const v2 = new Version(1, 2, 3, VersionStage.BETA);
305
- expect(Version.IsNewerVersion(v1, v2)).toEqual(false);
306
- });
307
- });
308
- //# sourceMappingURL=Version.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Version.test.js","sourceRoot":"","sources":["../../../src/ValueObjects/Version.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { Version, VersionStage } from './Version';\r\n\r\ntest('Initialization', () => {\r\n const version = new Version(1, 2, 3, VersionStage.BETA, 'yo');\r\n expect(version.major).toEqual(1);\r\n expect(version.minor).toEqual(2);\r\n expect(version.patch).toEqual(3);\r\n expect(version.stage).toEqual(VersionStage.BETA);\r\n expect(version.label).toEqual('yo');\r\n});\r\n\r\ntest('Without a label', () => {\r\n const version = new Version(1, 2, 3, VersionStage.ALPHA);\r\n expect(version.major).toEqual(1);\r\n expect(version.minor).toEqual(2);\r\n expect(version.patch).toEqual(3);\r\n expect(version.stage).toEqual(VersionStage.ALPHA);\r\n expect(version.label).toBeUndefined();\r\n});\r\n\r\ndescribe('Version strings', () => {\r\n it('Shows alpha after the version', () => {\r\n const version = new Version(1, 2, 3, VersionStage.ALPHA);\r\n expect(version.displayString).toEqual('1.2.3-alpha');\r\n });\r\n\r\n it('Appends the label after alpha', () => {\r\n const version = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');\r\n expect(version.displayString).toEqual('1.2.3-alpha-yo');\r\n });\r\n\r\n it('Shows beta after the version', () => {\r\n const version = new Version(1, 2, 3, VersionStage.BETA);\r\n expect(version.displayString).toEqual('1.2.3-beta');\r\n });\r\n\r\n it('Appends the label after beta', () => {\r\n const version = new Version(1, 2, 3, VersionStage.BETA, 'yo');\r\n expect(version.displayString).toEqual('1.2.3-beta-yo');\r\n });\r\n\r\n it('Does not show a release string', () => {\r\n const version = new Version(1, 2, 3, VersionStage.RELEASED);\r\n expect(version.displayString).toEqual('1.2.3');\r\n });\r\n\r\n it('Appends the label after version for release', () => {\r\n const version = new Version(1, 2, 3, VersionStage.RELEASED, 'yo');\r\n expect(version.displayString).toEqual('1.2.3-yo');\r\n });\r\n});\r\n\r\ndescribe('Version strings', () => {\r\n it('Returns the stripped string for a release without label', () => {\r\n const version = new Version(1, 2, 3, VersionStage.RELEASED);\r\n expect(version.baseVersionString).toEqual('1.2.3');\r\n });\r\n\r\n it('Returns the stripped string for a release with a label', () => {\r\n const version = new Version(1, 2, 3, VersionStage.RELEASED, 'yo');\r\n expect(version.baseVersionString).toEqual('1.2.3');\r\n });\r\n\r\n it('Returns the stripped string for an alpha without label', () => {\r\n const version = new Version(1, 2, 3, VersionStage.ALPHA);\r\n expect(version.baseVersionString).toEqual('1.2.3');\r\n });\r\n\r\n it('Returns the stripped string for an alpha with a label', () => {\r\n const version = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');\r\n expect(version.baseVersionString).toEqual('1.2.3');\r\n });\r\n\r\n it('Returns the stripped string for a beta without label', () => {\r\n const version = new Version(1, 2, 3, VersionStage.BETA);\r\n expect(version.baseVersionString).toEqual('1.2.3');\r\n });\r\n\r\n it('Returns the stripped string for a beta with a label', () => {\r\n const version = new Version(1, 2, 3, VersionStage.BETA, 'yo');\r\n expect(version.baseVersionString).toEqual('1.2.3');\r\n });\r\n});\r\n\r\ndescribe('Getting the latest from a list', () => {\r\n it('Gets the latest from list', () => {\r\n const version1 = new Version(1, 2, 3, VersionStage.RELEASED);\r\n const version2 = new Version(0, 2, 3, VersionStage.RELEASED);\r\n const version3 = new Version(1, 2, 4, VersionStage.RELEASED);\r\n const version4 = new Version(0, 0, 4, VersionStage.RELEASED);\r\n const versions = [version1, version2, version3, version4];\r\n\r\n const latest = Version.GetLatest(versions);\r\n\r\n expect(latest).toEqual(version3);\r\n });\r\n\r\n it('Returns the latest regardless of the stage', () => {\r\n const version1 = new Version(1, 2, 3, VersionStage.ALPHA);\r\n const version2 = new Version(0, 2, 3, VersionStage.BETA);\r\n const version3 = new Version(1, 2, 4, VersionStage.ALPHA);\r\n const version4 = new Version(0, 0, 4, VersionStage.BETA);\r\n const versions = [version1, version2, version3, version4];\r\n\r\n const latest = Version.GetLatest(versions);\r\n\r\n expect(latest).toEqual(version3);\r\n });\r\n\r\n it('Returns undefined if the list is empty', () => {\r\n const latest = Version.GetLatest([]);\r\n expect(latest).toBeUndefined();\r\n });\r\n});\r\n\r\ndescribe('Getting the latest major', () => {\r\n it('Gets the latest major', () => {\r\n const version1 = new Version(2, 2, 3, VersionStage.RELEASED);\r\n const version2 = new Version(0, 2, 3, VersionStage.RELEASED);\r\n const version3 = new Version(1, 2, 4, VersionStage.RELEASED);\r\n const version4 = new Version(0, 3, 4, VersionStage.RELEASED);\r\n const versions = [version1, version2, version3, version4];\r\n\r\n const latest = Version.GetLatestWithMajor(versions, 0);\r\n\r\n expect(latest).toEqual(version4);\r\n });\r\n\r\n it('Returns undefined if there are no majors that match', () => {\r\n const version1 = new Version(2, 2, 3, VersionStage.RELEASED);\r\n const version2 = new Version(0, 2, 3, VersionStage.RELEASED);\r\n const version3 = new Version(1, 2, 4, VersionStage.RELEASED);\r\n const version4 = new Version(0, 3, 4, VersionStage.RELEASED);\r\n const versions = [version1, version2, version3, version4];\r\n\r\n const latest = Version.GetLatestWithMajor(versions, 4);\r\n\r\n expect(latest).toBeUndefined();\r\n });\r\n\r\n it('Gets the latest major regardless of stage', () => {\r\n const version1 = new Version(2, 2, 3, VersionStage.ALPHA);\r\n const version2 = new Version(0, 2, 3, VersionStage.BETA);\r\n const version3 = new Version(1, 2, 4, VersionStage.ALPHA);\r\n const version4 = new Version(0, 3, 4, VersionStage.BETA);\r\n const versions = [version1, version2, version3, version4];\r\n\r\n const latest = Version.GetLatestWithMajor(versions, 0);\r\n\r\n expect(latest).toEqual(version4);\r\n });\r\n});\r\n\r\ndescribe('Get the latest major/minor', () => {\r\n it('Get the latest major/minor combo', () => {\r\n const version1 = new Version(1, 2, 3, VersionStage.RELEASED);\r\n const version2 = new Version(0, 2, 3, VersionStage.RELEASED);\r\n const version3 = new Version(1, 2, 4, VersionStage.RELEASED);\r\n const version4 = new Version(0, 3, 4, VersionStage.RELEASED);\r\n const versions = [version1, version2, version3, version4];\r\n\r\n const latest = Version.GetLatestWithMajorMinor(versions, 1, 2);\r\n\r\n expect(latest).toEqual(version3);\r\n });\r\n\r\n it('Returns undefined if there are no major/minor combos', () => {\r\n const version1 = new Version(1, 2, 3, VersionStage.RELEASED);\r\n const version2 = new Version(0, 2, 3, VersionStage.RELEASED);\r\n const version3 = new Version(1, 2, 4, VersionStage.RELEASED);\r\n const version4 = new Version(0, 3, 4, VersionStage.RELEASED);\r\n const versions = [version1, version2, version3, version4];\r\n\r\n const latest = Version.GetLatestWithMajorMinor(versions, 1, 3);\r\n\r\n expect(latest).toBeUndefined();\r\n });\r\n\r\n it('Get the latest major/minor combo regardless of stage', () => {\r\n const version1 = new Version(1, 2, 2, VersionStage.RELEASED);\r\n const version2 = new Version(1, 2, 3, VersionStage.BETA);\r\n const version3 = new Version(1, 2, 4, VersionStage.ALPHA);\r\n const versions = [version1, version2, version3];\r\n\r\n const latest = Version.GetLatestWithMajorMinor(versions, 1, 2);\r\n\r\n expect(latest).toEqual(version3);\r\n });\r\n});\r\n\r\ndescribe('Version from string', () => {\r\n it('Forms the version from string', () => {\r\n const version = Version.FromString('1.2.3');\r\n\r\n expect(version.major).toEqual(1);\r\n expect(version.minor).toEqual(2);\r\n expect(version.patch).toEqual(3);\r\n expect(version.label).toBeUndefined();\r\n expect(version.stage).toEqual(VersionStage.RELEASED);\r\n });\r\n\r\n it('Gets the alpha stage from the string', () => {\r\n const version = Version.FromString('1.2.3-alpha');\r\n\r\n expect(version.major).toEqual(1);\r\n expect(version.minor).toEqual(2);\r\n expect(version.patch).toEqual(3);\r\n expect(version.label).toBeUndefined();\r\n expect(version.stage).toEqual(VersionStage.ALPHA);\r\n });\r\n\r\n it('Gets the alpha stage and label from the string', () => {\r\n const version = Version.FromString('1.2.3-alpha-your-mom');\r\n\r\n expect(version.major).toEqual(1);\r\n expect(version.minor).toEqual(2);\r\n expect(version.patch).toEqual(3);\r\n expect(version.label).toEqual('your-mom');\r\n expect(version.stage).toEqual(VersionStage.ALPHA);\r\n });\r\n\r\n it('Gets the beta stage from the string', () => {\r\n const version = Version.FromString('1.2.3-beta');\r\n\r\n expect(version.major).toEqual(1);\r\n expect(version.minor).toEqual(2);\r\n expect(version.patch).toEqual(3);\r\n expect(version.label).toBeUndefined();\r\n expect(version.stage).toEqual(VersionStage.BETA);\r\n });\r\n\r\n it('Gets the beta stage and label from the string', () => {\r\n const version = Version.FromString('1.2.3-beta-your-mom');\r\n\r\n expect(version.major).toEqual(1);\r\n expect(version.minor).toEqual(2);\r\n expect(version.patch).toEqual(3);\r\n expect(version.label).toEqual('your-mom');\r\n expect(version.stage).toEqual(VersionStage.BETA);\r\n });\r\n\r\n it('Gets the label for a released stage from the string', () => {\r\n const version = Version.FromString('1.2.3-yo');\r\n\r\n expect(version.major).toEqual(1);\r\n expect(version.minor).toEqual(2);\r\n expect(version.patch).toEqual(3);\r\n expect(version.label).toEqual('yo');\r\n expect(version.stage).toEqual(VersionStage.RELEASED);\r\n });\r\n\r\n it('Forms the version from string with a hyphenated label', () => {\r\n const version = Version.FromString('1.2.3-your-mom');\r\n\r\n expect(version.major).toEqual(1);\r\n expect(version.minor).toEqual(2);\r\n expect(version.patch).toEqual(3);\r\n expect(version.label).toEqual('your-mom');\r\n expect(version.stage).toEqual(VersionStage.RELEASED);\r\n });\r\n\r\n it('Throws if there are not enough parts', () => {\r\n expect.assertions(1);\r\n\r\n try {\r\n Version.FromString('1.2');\r\n } catch (e) {\r\n expect(e).not.toBeUndefined();\r\n }\r\n });\r\n\r\n it('Throws if there are too many parts', () => {\r\n expect.assertions(1);\r\n try {\r\n Version.FromString('1.2.3.4');\r\n } catch (e) {\r\n expect(e).not.toBeUndefined();\r\n }\r\n });\r\n\r\n it('Throws if major is not a number', () => {\r\n expect.assertions(1);\r\n try {\r\n Version.FromString('boo.2.3');\r\n } catch (e) {\r\n expect(e).not.toBeUndefined();\r\n }\r\n });\r\n\r\n it('Throws if minor is not a number', () => {\r\n expect.assertions(1);\r\n try {\r\n Version.FromString('1.boo.3');\r\n } catch (e) {\r\n expect(e).not.toBeUndefined();\r\n }\r\n });\r\n\r\n it('Throws if patch is not a number', () => {\r\n expect.assertions(1);\r\n try {\r\n Version.FromString('1.2.boo');\r\n } catch (e) {\r\n expect(e).not.toBeUndefined();\r\n }\r\n });\r\n});\r\n\r\ndescribe('Testing are equal', () => {\r\n it('Returns true if equal', () => {\r\n const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');\r\n const v2 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');\r\n expect(Version.AreEqual(v1, v2)).toEqual(true);\r\n });\r\n\r\n it('Returns false if the majors are different', () => {\r\n const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');\r\n const v2 = new Version(2, 2, 3, VersionStage.ALPHA, 'yo');\r\n expect(Version.AreEqual(v1, v2)).toEqual(false);\r\n });\r\n\r\n it('Returns false if the minors are different', () => {\r\n const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');\r\n const v2 = new Version(1, 1, 3, VersionStage.ALPHA, 'yo');\r\n expect(Version.AreEqual(v1, v2)).toEqual(false);\r\n });\r\n\r\n it('Returns false if the patches are different', () => {\r\n const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');\r\n const v2 = new Version(1, 2, 2, VersionStage.ALPHA, 'yo');\r\n expect(Version.AreEqual(v1, v2)).toEqual(false);\r\n });\r\n\r\n it('Returns false if the stages are different', () => {\r\n const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');\r\n const v2 = new Version(1, 2, 3, VersionStage.BETA, 'yo');\r\n expect(Version.AreEqual(v1, v2)).toEqual(false);\r\n });\r\n\r\n it('Returns false if the labels are different', () => {\r\n const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');\r\n const v2 = new Version(1, 2, 3, VersionStage.ALPHA);\r\n expect(Version.AreEqual(v1, v2)).toEqual(false);\r\n });\r\n});\r\n\r\ndescribe('Testing for a newer version', () => {\r\n it('Returns true if the major version is larger', () => {\r\n const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');\r\n const v2 = new Version(2, 2, 3, VersionStage.BETA);\r\n expect(Version.IsNewerVersion(v1, v2)).toEqual(true);\r\n });\r\n\r\n it('Returns true if the minor version is larger', () => {\r\n const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');\r\n const v2 = new Version(1, 3, 3, VersionStage.BETA);\r\n expect(Version.IsNewerVersion(v1, v2)).toEqual(true);\r\n });\r\n\r\n it('Returns true if the patch version is larger', () => {\r\n const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');\r\n const v2 = new Version(1, 2, 4, VersionStage.BETA);\r\n expect(Version.IsNewerVersion(v1, v2)).toEqual(true);\r\n });\r\n\r\n it('Returns false if equal', () => {\r\n const v1 = new Version(1, 2, 3, VersionStage.ALPHA, 'yo');\r\n const v2 = new Version(1, 2, 3, VersionStage.BETA);\r\n expect(Version.IsNewerVersion(v1, v2)).toEqual(false);\r\n });\r\n});\r\n"]}
@@ -1,7 +0,0 @@
1
- import { AppObject } from "./AppObject";
2
- export declare function makeTestRig(): {
3
- repo: import("./AppObjectRepo").AppObjectRepo;
4
- appObj: AppObject;
5
- observer: jest.Mock<any, any, any>;
6
- };
7
- //# sourceMappingURL=AppObject.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AppObject.test.d.ts","sourceRoot":"","sources":["../../../src/AppObject/AppObject.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAiB,MAAM,aAAa,CAAC;AAIvD,wBAAgB,WAAW;;;;EAO1B"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=AppObjectComponent.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AppObjectComponent.test.d.ts","sourceRoot":"","sources":["../../../src/AppObject/AppObjectComponent.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=AppObjectEntity.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AppObjectEntity.test.d.ts","sourceRoot":"","sources":["../../../src/AppObject/AppObjectEntity.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=AppObjectEntityRepo.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AppObjectEntityRepo.test.d.ts","sourceRoot":"","sources":["../../../src/AppObject/AppObjectEntityRepo.test.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=AppObjectPM.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AppObjectPM.test.d.ts","sourceRoot":"","sources":["../../../src/AppObject/AppObjectPM.test.ts"],"names":[],"mappings":""}