@vived/core 1.3.0 → 1.4.1

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 (191) hide show
  1. package/dist/esm/Utilities/addAlphaToHex.js +13 -0
  2. package/dist/esm/Utilities/addAlphaToHex.js.map +1 -0
  3. package/dist/esm/Utilities/addAlphaToHex.test.js +32 -0
  4. package/dist/esm/Utilities/addAlphaToHex.test.js.map +1 -0
  5. package/dist/esm/Utilities/alphaToHex.js +17 -0
  6. package/dist/esm/Utilities/alphaToHex.js.map +1 -0
  7. package/dist/esm/Utilities/alphaToHex.test.js +73 -0
  8. package/dist/esm/Utilities/alphaToHex.test.js.map +1 -0
  9. package/dist/esm/Utilities/downloadFile.js +11 -0
  10. package/dist/esm/Utilities/downloadFile.js.map +1 -0
  11. package/dist/esm/Utilities/index.js +3 -0
  12. package/dist/esm/Utilities/index.js.map +1 -1
  13. package/dist/types/Utilities/addAlphaToHex.d.ts +2 -0
  14. package/dist/types/Utilities/addAlphaToHex.d.ts.map +1 -0
  15. package/dist/types/Utilities/addAlphaToHex.test.d.ts +2 -0
  16. package/dist/types/Utilities/addAlphaToHex.test.d.ts.map +1 -0
  17. package/dist/types/Utilities/alphaToHex.d.ts +3 -0
  18. package/dist/types/Utilities/alphaToHex.d.ts.map +1 -0
  19. package/dist/types/Utilities/alphaToHex.test.d.ts +2 -0
  20. package/dist/types/Utilities/alphaToHex.test.d.ts.map +1 -0
  21. package/dist/types/Utilities/downloadFile.d.ts +2 -0
  22. package/dist/types/Utilities/downloadFile.d.ts.map +1 -0
  23. package/dist/types/Utilities/index.d.ts +3 -0
  24. package/dist/types/Utilities/index.d.ts.map +1 -1
  25. package/package.json +3 -6
  26. package/dist/cjs/AppObject/AppObject.js +0 -59
  27. package/dist/cjs/AppObject/AppObject.js.map +0 -1
  28. package/dist/cjs/AppObject/AppObject.test.js +0 -113
  29. package/dist/cjs/AppObject/AppObject.test.js.map +0 -1
  30. package/dist/cjs/AppObject/AppObjectComponent.js +0 -82
  31. package/dist/cjs/AppObject/AppObjectComponent.js.map +0 -1
  32. package/dist/cjs/AppObject/AppObjectComponent.test.js +0 -132
  33. package/dist/cjs/AppObject/AppObjectComponent.test.js.map +0 -1
  34. package/dist/cjs/AppObject/AppObjectController.js +0 -12
  35. package/dist/cjs/AppObject/AppObjectController.js.map +0 -1
  36. package/dist/cjs/AppObject/AppObjectEntity.js +0 -38
  37. package/dist/cjs/AppObject/AppObjectEntity.js.map +0 -1
  38. package/dist/cjs/AppObject/AppObjectEntity.test.js +0 -108
  39. package/dist/cjs/AppObject/AppObjectEntity.test.js.map +0 -1
  40. package/dist/cjs/AppObject/AppObjectEntityRepo.js +0 -56
  41. package/dist/cjs/AppObject/AppObjectEntityRepo.js.map +0 -1
  42. package/dist/cjs/AppObject/AppObjectEntityRepo.test.js +0 -149
  43. package/dist/cjs/AppObject/AppObjectEntityRepo.test.js.map +0 -1
  44. package/dist/cjs/AppObject/AppObjectPM.js +0 -40
  45. package/dist/cjs/AppObject/AppObjectPM.js.map +0 -1
  46. package/dist/cjs/AppObject/AppObjectPM.test.js +0 -103
  47. package/dist/cjs/AppObject/AppObjectPM.test.js.map +0 -1
  48. package/dist/cjs/AppObject/AppObjectRepo.js +0 -133
  49. package/dist/cjs/AppObject/AppObjectRepo.js.map +0 -1
  50. package/dist/cjs/AppObject/AppObjectRepo.test.js +0 -213
  51. package/dist/cjs/AppObject/AppObjectRepo.test.js.map +0 -1
  52. package/dist/cjs/AppObject/AppObjectUC.js +0 -12
  53. package/dist/cjs/AppObject/AppObjectUC.js.map +0 -1
  54. package/dist/cjs/AppObject/AppObjectView.js +0 -12
  55. package/dist/cjs/AppObject/AppObjectView.js.map +0 -1
  56. package/dist/cjs/AppObject/getSingletonComponent.js +0 -7
  57. package/dist/cjs/AppObject/getSingletonComponent.js.map +0 -1
  58. package/dist/cjs/AppObject/getSingletonComponent.test.js +0 -13
  59. package/dist/cjs/AppObject/getSingletonComponent.test.js.map +0 -1
  60. package/dist/cjs/AppObject/index.js +0 -27
  61. package/dist/cjs/AppObject/index.js.map +0 -1
  62. package/dist/cjs/AppObject/printAppObjectDetails.js +0 -18
  63. package/dist/cjs/AppObject/printAppObjectDetails.js.map +0 -1
  64. package/dist/cjs/Entities/MemoizedAngle.js +0 -23
  65. package/dist/cjs/Entities/MemoizedAngle.js.map +0 -1
  66. package/dist/cjs/Entities/MemoizedAngle.test.js +0 -30
  67. package/dist/cjs/Entities/MemoizedAngle.test.js.map +0 -1
  68. package/dist/cjs/Entities/MemoizedBoolean.js +0 -23
  69. package/dist/cjs/Entities/MemoizedBoolean.js.map +0 -1
  70. package/dist/cjs/Entities/MemoizedBoolean.test.js +0 -34
  71. package/dist/cjs/Entities/MemoizedBoolean.test.js.map +0 -1
  72. package/dist/cjs/Entities/MemoizedColor.js +0 -24
  73. package/dist/cjs/Entities/MemoizedColor.js.map +0 -1
  74. package/dist/cjs/Entities/MemoizedColor.test.js +0 -32
  75. package/dist/cjs/Entities/MemoizedColor.test.js.map +0 -1
  76. package/dist/cjs/Entities/MemoizedNumber.js +0 -23
  77. package/dist/cjs/Entities/MemoizedNumber.js.map +0 -1
  78. package/dist/cjs/Entities/MemoizedNumber.test.js +0 -29
  79. package/dist/cjs/Entities/MemoizedNumber.test.js.map +0 -1
  80. package/dist/cjs/Entities/MemoizedQuaternion.js +0 -24
  81. package/dist/cjs/Entities/MemoizedQuaternion.js.map +0 -1
  82. package/dist/cjs/Entities/MemoizedQuaternion.test.js +0 -32
  83. package/dist/cjs/Entities/MemoizedQuaternion.test.js.map +0 -1
  84. package/dist/cjs/Entities/MemoizedString.js +0 -23
  85. package/dist/cjs/Entities/MemoizedString.js.map +0 -1
  86. package/dist/cjs/Entities/MemoizedString.test.js +0 -29
  87. package/dist/cjs/Entities/MemoizedString.test.js.map +0 -1
  88. package/dist/cjs/Entities/MemoizedVector2.js +0 -24
  89. package/dist/cjs/Entities/MemoizedVector2.js.map +0 -1
  90. package/dist/cjs/Entities/MemoizedVector2.test.js +0 -32
  91. package/dist/cjs/Entities/MemoizedVector2.test.js.map +0 -1
  92. package/dist/cjs/Entities/MemoizedVector3.js +0 -24
  93. package/dist/cjs/Entities/MemoizedVector3.js.map +0 -1
  94. package/dist/cjs/Entities/MemoizedVector3.test.js +0 -32
  95. package/dist/cjs/Entities/MemoizedVector3.test.js.map +0 -1
  96. package/dist/cjs/Entities/ObservableEntity.js +0 -20
  97. package/dist/cjs/Entities/ObservableEntity.js.map +0 -1
  98. package/dist/cjs/Entities/ObservableEntity.test.js +0 -25
  99. package/dist/cjs/Entities/ObservableEntity.test.js.map +0 -1
  100. package/dist/cjs/Entities/ObserverList.js +0 -27
  101. package/dist/cjs/Entities/ObserverList.js.map +0 -1
  102. package/dist/cjs/Entities/ObserverList.test.js +0 -44
  103. package/dist/cjs/Entities/ObserverList.test.js.map +0 -1
  104. package/dist/cjs/Entities/RangedNumber.js +0 -36
  105. package/dist/cjs/Entities/RangedNumber.js.map +0 -1
  106. package/dist/cjs/Entities/RangedNumber.test.js +0 -96
  107. package/dist/cjs/Entities/RangedNumber.test.js.map +0 -1
  108. package/dist/cjs/Entities/index.js +0 -28
  109. package/dist/cjs/Entities/index.js.map +0 -1
  110. package/dist/cjs/Types/AppBoundary.js +0 -3
  111. package/dist/cjs/Types/AppBoundary.js.map +0 -1
  112. package/dist/cjs/Types/EaseFn.js +0 -3
  113. package/dist/cjs/Types/EaseFn.js.map +0 -1
  114. package/dist/cjs/Types/PmAdapter.js +0 -3
  115. package/dist/cjs/Types/PmAdapter.js.map +0 -1
  116. package/dist/cjs/Types/SingletonPmAdapter.js +0 -3
  117. package/dist/cjs/Types/SingletonPmAdapter.js.map +0 -1
  118. package/dist/cjs/Types/index.js +0 -21
  119. package/dist/cjs/Types/index.js.map +0 -1
  120. package/dist/cjs/Utilities/LengthConverters.js +0 -21
  121. package/dist/cjs/Utilities/LengthConverters.js.map +0 -1
  122. package/dist/cjs/Utilities/LengthConverters.test.js +0 -24
  123. package/dist/cjs/Utilities/LengthConverters.test.js.map +0 -1
  124. package/dist/cjs/Utilities/LerpNumber.js +0 -85
  125. package/dist/cjs/Utilities/LerpNumber.js.map +0 -1
  126. package/dist/cjs/Utilities/LerpNumber.test.js +0 -90
  127. package/dist/cjs/Utilities/LerpNumber.test.js.map +0 -1
  128. package/dist/cjs/Utilities/degreesToRadians.js +0 -7
  129. package/dist/cjs/Utilities/degreesToRadians.js.map +0 -1
  130. package/dist/cjs/Utilities/degreesToRadians.test.js +0 -9
  131. package/dist/cjs/Utilities/degreesToRadians.test.js.map +0 -1
  132. package/dist/cjs/Utilities/easeFunctions.js +0 -208
  133. package/dist/cjs/Utilities/easeFunctions.js.map +0 -1
  134. package/dist/cjs/Utilities/easeFunctions.test.js +0 -209
  135. package/dist/cjs/Utilities/easeFunctions.test.js.map +0 -1
  136. package/dist/cjs/Utilities/generateUniqueID.js +0 -8
  137. package/dist/cjs/Utilities/generateUniqueID.js.map +0 -1
  138. package/dist/cjs/Utilities/index.js +0 -22
  139. package/dist/cjs/Utilities/index.js.map +0 -1
  140. package/dist/cjs/Utilities/interpolateNumber.js +0 -18
  141. package/dist/cjs/Utilities/interpolateNumber.js.map +0 -1
  142. package/dist/cjs/Utilities/interpolateNumber.test.js +0 -26
  143. package/dist/cjs/Utilities/interpolateNumber.test.js.map +0 -1
  144. package/dist/cjs/ValueObjects/Angle.js +0 -47
  145. package/dist/cjs/ValueObjects/Angle.js.map +0 -1
  146. package/dist/cjs/ValueObjects/Angle.test.js +0 -28
  147. package/dist/cjs/ValueObjects/Angle.test.js.map +0 -1
  148. package/dist/cjs/ValueObjects/Color.js +0 -859
  149. package/dist/cjs/ValueObjects/Color.js.map +0 -1
  150. package/dist/cjs/ValueObjects/Color.test.js +0 -147
  151. package/dist/cjs/ValueObjects/Color.test.js.map +0 -1
  152. package/dist/cjs/ValueObjects/LineSegment2D.js +0 -72
  153. package/dist/cjs/ValueObjects/LineSegment2D.js.map +0 -1
  154. package/dist/cjs/ValueObjects/LineSegment2D.test.js +0 -102
  155. package/dist/cjs/ValueObjects/LineSegment2D.test.js.map +0 -1
  156. package/dist/cjs/ValueObjects/Matrix.js +0 -466
  157. package/dist/cjs/ValueObjects/Matrix.js.map +0 -1
  158. package/dist/cjs/ValueObjects/Matrix.test.js +0 -385
  159. package/dist/cjs/ValueObjects/Matrix.test.js.map +0 -1
  160. package/dist/cjs/ValueObjects/ParametricLine.js +0 -77
  161. package/dist/cjs/ValueObjects/ParametricLine.js.map +0 -1
  162. package/dist/cjs/ValueObjects/ParametricLine.test.js +0 -126
  163. package/dist/cjs/ValueObjects/ParametricLine.test.js.map +0 -1
  164. package/dist/cjs/ValueObjects/ParametricPlane.js +0 -65
  165. package/dist/cjs/ValueObjects/ParametricPlane.js.map +0 -1
  166. package/dist/cjs/ValueObjects/ParametricPlane.test.js +0 -101
  167. package/dist/cjs/ValueObjects/ParametricPlane.test.js.map +0 -1
  168. package/dist/cjs/ValueObjects/Quaternion.js +0 -290
  169. package/dist/cjs/ValueObjects/Quaternion.js.map +0 -1
  170. package/dist/cjs/ValueObjects/Quaternion.test.js +0 -240
  171. package/dist/cjs/ValueObjects/Quaternion.test.js.map +0 -1
  172. package/dist/cjs/ValueObjects/Rectangle.js +0 -24
  173. package/dist/cjs/ValueObjects/Rectangle.js.map +0 -1
  174. package/dist/cjs/ValueObjects/Rectangle.test.js +0 -32
  175. package/dist/cjs/ValueObjects/Rectangle.test.js.map +0 -1
  176. package/dist/cjs/ValueObjects/Vector2.js +0 -184
  177. package/dist/cjs/ValueObjects/Vector2.js.map +0 -1
  178. package/dist/cjs/ValueObjects/Vector2.test.js +0 -136
  179. package/dist/cjs/ValueObjects/Vector2.test.js.map +0 -1
  180. package/dist/cjs/ValueObjects/Vector3.js +0 -231
  181. package/dist/cjs/ValueObjects/Vector3.js.map +0 -1
  182. package/dist/cjs/ValueObjects/Vector3.test.js +0 -188
  183. package/dist/cjs/ValueObjects/Vector3.test.js.map +0 -1
  184. package/dist/cjs/ValueObjects/Version.js +0 -171
  185. package/dist/cjs/ValueObjects/Version.js.map +0 -1
  186. package/dist/cjs/ValueObjects/Version.test.js +0 -310
  187. package/dist/cjs/ValueObjects/Version.test.js.map +0 -1
  188. package/dist/cjs/ValueObjects/index.js +0 -28
  189. package/dist/cjs/ValueObjects/index.js.map +0 -1
  190. package/dist/cjs/index.js +0 -22
  191. package/dist/cjs/index.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/AppObject/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA2B;AAC3B,oDAAiC;AACjC,wDAAqC;AACrC,gDAA6B;AAC7B,kDAA+B;AAC/B,gDAA6B;AAC7B,wDAAqC;AACrC,kDAA+B;AAC/B,0DAAwC;AACxC,0DAAwC","sourcesContent":["export * from \"./AppObject\"\r\nexport * from \"./AppObjectEntity\"\r\nexport * from \"./AppObjectEntityRepo\"\r\nexport * from \"./AppObjectPM\"\r\nexport * from \"./AppObjectRepo\"\r\nexport * from \"./AppObjectUC\"\r\nexport * from \"./AppObjectController\"\r\nexport * from \"./AppObjectView\"\r\nexport * from \"./getSingletonComponent\";\r\nexport * from \"./printAppObjectDetails\";"]}
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.printAppObjectDetails = printAppObjectDetails;
4
- function printAppObjectDetails(id, appObjects) {
5
- const appObject = appObjects.get(id);
6
- if (!appObject) {
7
- console.warn("[printAppObjectDetails] Unable to find App Object by ID");
8
- return;
9
- }
10
- console.log("[printAppObjectDetails] Start App Object Details ---");
11
- console.log(`id: ${appObject.id}`);
12
- const components = appObject.allComponents();
13
- components.forEach((component) => {
14
- console.log(`Has Component: ${component.type}`);
15
- });
16
- console.log("[printAppObjectDetails] End App Object Details ---");
17
- }
18
- //# sourceMappingURL=printAppObjectDetails.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"printAppObjectDetails.js","sourceRoot":"","sources":["../../../src/AppObject/printAppObjectDetails.ts"],"names":[],"mappings":";;AAEA,sDAcC;AAdD,SAAgB,qBAAqB,CAAC,EAAU,EAAE,UAAyB;IACzE,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACrC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;QACxE,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;IACpE,OAAO,CAAC,GAAG,CAAC,OAAO,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;IACnC,MAAM,UAAU,GAAG,SAAS,CAAC,aAAa,EAAE,CAAC;IAC7C,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;QAC/B,OAAO,CAAC,GAAG,CAAC,kBAAkB,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;AACpE,CAAC","sourcesContent":["import { AppObjectRepo } from \"./AppObjectRepo\";\r\n\r\nexport function printAppObjectDetails(id: string, appObjects: AppObjectRepo) {\r\n const appObject = appObjects.get(id);\r\n if (!appObject) {\r\n console.warn(\"[printAppObjectDetails] Unable to find App Object by ID\");\r\n return;\r\n }\r\n\r\n console.log(\"[printAppObjectDetails] Start App Object Details ---\");\r\n console.log(`id: ${appObject.id}`);\r\n const components = appObject.allComponents();\r\n components.forEach((component) => {\r\n console.log(`Has Component: ${component.type}`);\r\n });\r\n console.log(\"[printAppObjectDetails] End App Object Details ---\");\r\n}\r\n"]}
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MemoizedAngle = void 0;
4
- class MemoizedAngle {
5
- get val() {
6
- return this._val;
7
- }
8
- set val(b) {
9
- if (this._val.degrees === b.degrees)
10
- return;
11
- this._val = b;
12
- this.onChangeCallback();
13
- }
14
- setValQuietly(val) {
15
- this._val = val;
16
- }
17
- constructor(initialValue, onChangeCallback) {
18
- this._val = initialValue;
19
- this.onChangeCallback = onChangeCallback;
20
- }
21
- }
22
- exports.MemoizedAngle = MemoizedAngle;
23
- //# sourceMappingURL=MemoizedAngle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoizedAngle.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedAngle.ts"],"names":[],"mappings":";;;AAEA,MAAa,aAAa;IAExB,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IACD,IAAI,GAAG,CAAC,CAAQ;QACd,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO;YAAE,OAAO;QAE5C,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAEM,aAAa,CAAC,GAAU;QAC7B,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;IAClB,CAAC;IAID,YAAY,YAAmB,EAAE,gBAA4B;QAC3D,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;CACF;AAtBD,sCAsBC","sourcesContent":["import { Angle } from \"../ValueObjects\";\r\n\r\nexport class MemoizedAngle {\r\n private _val: Angle;\r\n get val(): Angle {\r\n return this._val;\r\n }\r\n set val(b: Angle) {\r\n if (this._val.degrees === b.degrees) return;\r\n\r\n this._val = b;\r\n this.onChangeCallback();\r\n }\r\n\r\n public setValQuietly(val: Angle) {\r\n this._val = val;\r\n }\r\n\r\n private onChangeCallback: () => void;\r\n\r\n constructor(initialValue: Angle, onChangeCallback: () => void) {\r\n this._val = initialValue;\r\n this.onChangeCallback = onChangeCallback;\r\n }\r\n}\r\n"]}
@@ -1,30 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const ValueObjects_1 = require("../ValueObjects");
4
- const MemoizedAngle_1 = require("./MemoizedAngle");
5
- test("Initial value is stored", () => {
6
- const memoizedNumber = new MemoizedAngle_1.MemoizedAngle(ValueObjects_1.Angle.FromDegrees(55), jest.fn());
7
- expect(memoizedNumber.val.degrees).toEqual(55);
8
- });
9
- test("Callback is called when something changes", () => {
10
- const cb = jest.fn();
11
- const memoizedNumber = new MemoizedAngle_1.MemoizedAngle(ValueObjects_1.Angle.FromDegrees(33), cb);
12
- expect(cb).not.toBeCalled();
13
- memoizedNumber.val = ValueObjects_1.Angle.FromDegrees(55);
14
- expect(cb).toBeCalled();
15
- });
16
- test("CB is only called when something has changed", () => {
17
- const cb = jest.fn();
18
- const memoizedNumber = new MemoizedAngle_1.MemoizedAngle(ValueObjects_1.Angle.FromDegrees(33), cb);
19
- memoizedNumber.val = ValueObjects_1.Angle.FromDegrees(33);
20
- memoizedNumber.val = ValueObjects_1.Angle.FromDegrees(33);
21
- memoizedNumber.val = ValueObjects_1.Angle.FromDegrees(33);
22
- expect(cb).not.toBeCalled();
23
- });
24
- test("Setting the value quietly should not notify", () => {
25
- const cb = jest.fn();
26
- const memoizedBoolean = new MemoizedAngle_1.MemoizedAngle(ValueObjects_1.Angle.FromDegrees(33), cb);
27
- memoizedBoolean.setValQuietly(ValueObjects_1.Angle.FromDegrees(55));
28
- expect(cb).not.toBeCalled();
29
- });
30
- //# sourceMappingURL=MemoizedAngle.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoizedAngle.test.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedAngle.test.ts"],"names":[],"mappings":";;AAAA,kDAAwC;AACxC,mDAAgD;AAEhD,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACnC,MAAM,cAAc,GAAG,IAAI,6BAAa,CAAC,oBAAK,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC3E,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2CAA2C,EAAE,GAAG,EAAE;IACrD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,cAAc,GAAG,IAAI,6BAAa,CAAC,oBAAK,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAEpE,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;IAE5B,cAAc,CAAC,GAAG,GAAG,oBAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAE3C,MAAM,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;IACxD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,cAAc,GAAG,IAAI,6BAAa,CAAC,oBAAK,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAEpE,cAAc,CAAC,GAAG,GAAG,oBAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC3C,cAAc,CAAC,GAAG,GAAG,oBAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC3C,cAAc,CAAC,GAAG,GAAG,oBAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAE3C,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;IACvD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,eAAe,GAAG,IAAI,6BAAa,CAAC,oBAAK,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAErE,eAAe,CAAC,aAAa,CAAC,oBAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;IAErD,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC","sourcesContent":["import { Angle } from \"../ValueObjects\";\r\nimport { MemoizedAngle } from \"./MemoizedAngle\";\r\n\r\ntest(\"Initial value is stored\", () => {\r\n const memoizedNumber = new MemoizedAngle(Angle.FromDegrees(55), jest.fn());\r\n expect(memoizedNumber.val.degrees).toEqual(55);\r\n});\r\n\r\ntest(\"Callback is called when something changes\", () => {\r\n const cb = jest.fn();\r\n const memoizedNumber = new MemoizedAngle(Angle.FromDegrees(33), cb);\r\n\r\n expect(cb).not.toBeCalled();\r\n\r\n memoizedNumber.val = Angle.FromDegrees(55);\r\n\r\n expect(cb).toBeCalled();\r\n});\r\n\r\ntest(\"CB is only called when something has changed\", () => {\r\n const cb = jest.fn();\r\n const memoizedNumber = new MemoizedAngle(Angle.FromDegrees(33), cb);\r\n\r\n memoizedNumber.val = Angle.FromDegrees(33);\r\n memoizedNumber.val = Angle.FromDegrees(33);\r\n memoizedNumber.val = Angle.FromDegrees(33);\r\n\r\n expect(cb).not.toBeCalled();\r\n});\r\n\r\ntest(\"Setting the value quietly should not notify\", () => {\r\n const cb = jest.fn();\r\n const memoizedBoolean = new MemoizedAngle(Angle.FromDegrees(33), cb);\r\n\r\n memoizedBoolean.setValQuietly(Angle.FromDegrees(55));\r\n\r\n expect(cb).not.toBeCalled();\r\n});\r\n"]}
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MemoizedBoolean = void 0;
4
- class MemoizedBoolean {
5
- get val() {
6
- return this._val;
7
- }
8
- set val(b) {
9
- if (this._val === b)
10
- return;
11
- this._val = b;
12
- this.onChangeCallback();
13
- }
14
- setValQuietly(val) {
15
- this._val = val;
16
- }
17
- constructor(initialValue, onChangeCallback) {
18
- this._val = initialValue;
19
- this.onChangeCallback = onChangeCallback;
20
- }
21
- }
22
- exports.MemoizedBoolean = MemoizedBoolean;
23
- //# sourceMappingURL=MemoizedBoolean.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoizedBoolean.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedBoolean.ts"],"names":[],"mappings":";;;AAAA,MAAa,eAAe;IAE1B,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IACD,IAAI,GAAG,CAAC,CAAU;QAChB,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO;QAE5B,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAEM,aAAa,CAAC,GAAY;QAC/B,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;IAClB,CAAC;IAID,YAAY,YAAqB,EAAE,gBAA4B;QAC7D,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;CACF;AAtBD,0CAsBC","sourcesContent":["export class MemoizedBoolean {\r\n private _val: boolean;\r\n get val(): boolean {\r\n return this._val;\r\n }\r\n set val(b: boolean) {\r\n if (this._val === b) return;\r\n\r\n this._val = b;\r\n this.onChangeCallback();\r\n }\r\n\r\n public setValQuietly(val: boolean) {\r\n this._val = val;\r\n }\r\n\r\n private onChangeCallback: () => void;\r\n\r\n constructor(initialValue: boolean, onChangeCallback: () => void) {\r\n this._val = initialValue;\r\n this.onChangeCallback = onChangeCallback;\r\n }\r\n}\r\n"]}
@@ -1,34 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const MemoizedBoolean_1 = require("./MemoizedBoolean");
4
- test("Initial value is stored", () => {
5
- const memoizedTrue = new MemoizedBoolean_1.MemoizedBoolean(true, jest.fn());
6
- expect(memoizedTrue.val).toEqual(true);
7
- const memoizedFalse = new MemoizedBoolean_1.MemoizedBoolean(false, jest.fn());
8
- expect(memoizedFalse.val).toEqual(false);
9
- });
10
- test("Callback is called when something changes", () => {
11
- const cb = jest.fn();
12
- const memoizedBoolean = new MemoizedBoolean_1.MemoizedBoolean(true, cb);
13
- expect(cb).not.toBeCalled();
14
- memoizedBoolean.val = false;
15
- expect(cb).toBeCalled();
16
- cb.mockClear();
17
- memoizedBoolean.val = true;
18
- expect(cb).toBeCalled();
19
- });
20
- test("CB is only called when something has changed", () => {
21
- const cb = jest.fn();
22
- const memoizedBoolean = new MemoizedBoolean_1.MemoizedBoolean(true, cb);
23
- memoizedBoolean.val = true;
24
- memoizedBoolean.val = true;
25
- memoizedBoolean.val = true;
26
- expect(cb).not.toBeCalled();
27
- });
28
- test("Setting the value quietly should not notify", () => {
29
- const cb = jest.fn();
30
- const memoizedBoolean = new MemoizedBoolean_1.MemoizedBoolean(true, cb);
31
- memoizedBoolean.setValQuietly(false);
32
- expect(cb).not.toBeCalled();
33
- });
34
- //# sourceMappingURL=MemoizedBoolean.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoizedBoolean.test.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedBoolean.test.ts"],"names":[],"mappings":";;AAAA,uDAAoD;AAEpD,IAAI,CAAC,yBAAyB,EAAE,GAAE,EAAE;IAClC,MAAM,YAAY,GAAG,IAAI,iCAAe,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1D,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvC,MAAM,aAAa,GAAG,IAAI,iCAAe,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5D,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC3C,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,2CAA2C,EAAE,GAAE,EAAE;IACpD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,eAAe,GAAG,IAAI,iCAAe,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAEtD,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;IAE5B,eAAe,CAAC,GAAG,GAAG,KAAK,CAAC;IAE5B,MAAM,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;IACxB,EAAE,CAAC,SAAS,EAAE,CAAC;IAEf,eAAe,CAAC,GAAG,GAAG,IAAI,CAAC;IAE3B,MAAM,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;AAC1B,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,8CAA8C,EAAE,GAAE,EAAE;IACvD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,eAAe,GAAG,IAAI,iCAAe,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAEtD,eAAe,CAAC,GAAG,GAAG,IAAI,CAAC;IAC3B,eAAe,CAAC,GAAG,GAAG,IAAI,CAAC;IAC3B,eAAe,CAAC,GAAG,GAAG,IAAI,CAAC;IAE3B,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,6CAA6C,EAAE,GAAE,EAAE;IACtD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,eAAe,GAAG,IAAI,iCAAe,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAEtD,eAAe,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAErC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAA","sourcesContent":["import { MemoizedBoolean } from \"./MemoizedBoolean\";\r\n\r\ntest(\"Initial value is stored\", ()=>{\r\n const memoizedTrue = new MemoizedBoolean(true, jest.fn());\r\n expect(memoizedTrue.val).toEqual(true);\r\n\r\n const memoizedFalse = new MemoizedBoolean(false, jest.fn());\r\n expect(memoizedFalse.val).toEqual(false);\r\n})\r\n\r\ntest(\"Callback is called when something changes\", ()=>{\r\n const cb = jest.fn();\r\n const memoizedBoolean = new MemoizedBoolean(true, cb);\r\n\r\n expect(cb).not.toBeCalled();\r\n\r\n memoizedBoolean.val = false;\r\n\r\n expect(cb).toBeCalled();\r\n cb.mockClear();\r\n\r\n memoizedBoolean.val = true;\r\n\r\n expect(cb).toBeCalled();\r\n})\r\n\r\ntest(\"CB is only called when something has changed\", ()=>{\r\n const cb = jest.fn();\r\n const memoizedBoolean = new MemoizedBoolean(true, cb);\r\n\r\n memoizedBoolean.val = true;\r\n memoizedBoolean.val = true;\r\n memoizedBoolean.val = true;\r\n\r\n expect(cb).not.toBeCalled();\r\n})\r\n\r\ntest(\"Setting the value quietly should not notify\", ()=>{\r\n const cb = jest.fn();\r\n const memoizedBoolean = new MemoizedBoolean(true, cb);\r\n\r\n memoizedBoolean.setValQuietly(false);\r\n\r\n expect(cb).not.toBeCalled();\r\n})"]}
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MemoizedColor = void 0;
4
- const ValueObjects_1 = require("../ValueObjects");
5
- class MemoizedColor {
6
- get val() {
7
- return this._val;
8
- }
9
- set val(v) {
10
- if (ValueObjects_1.Color.Equal(v, this._val))
11
- return;
12
- this._val = v;
13
- this.onChangeCallback();
14
- }
15
- setValQuietly(val) {
16
- this._val = val;
17
- }
18
- constructor(initialValue, onChangeCallback) {
19
- this._val = initialValue;
20
- this.onChangeCallback = onChangeCallback;
21
- }
22
- }
23
- exports.MemoizedColor = MemoizedColor;
24
- //# sourceMappingURL=MemoizedColor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoizedColor.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedColor.ts"],"names":[],"mappings":";;;AAAA,kDAAwC;AAExC,MAAa,aAAa;IAGxB,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,IAAI,GAAG,CAAC,CAAQ;QACd,IAAI,oBAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO;QAEtC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAEM,aAAa,CAAC,GAAU;QAC7B,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;IAClB,CAAC;IAID,YAAY,YAAmB,EAAE,gBAA4B;QAC3D,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;CACF;AAxBD,sCAwBC","sourcesContent":["import { Color } from \"../ValueObjects\";\r\n\r\nexport class MemoizedColor {\r\n private _val: Color;\r\n\r\n get val(): Color {\r\n return this._val;\r\n }\r\n\r\n set val(v: Color) {\r\n if (Color.Equal(v, this._val)) return;\r\n\r\n this._val = v;\r\n this.onChangeCallback();\r\n }\r\n\r\n public setValQuietly(val: Color) {\r\n this._val = val;\r\n }\r\n\r\n private onChangeCallback: () => void;\r\n\r\n constructor(initialValue: Color, onChangeCallback: () => void) {\r\n this._val = initialValue;\r\n this.onChangeCallback = onChangeCallback;\r\n }\r\n}\r\n"]}
@@ -1,32 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const ValueObjects_1 = require("../ValueObjects");
4
- const MemoizedColor_1 = require("./MemoizedColor");
5
- test("Initial value is stored", () => {
6
- const initialColor = ValueObjects_1.Color.RGBA(5, 6, 7, 8);
7
- const memoizedVector = new MemoizedColor_1.MemoizedColor(initialColor, jest.fn());
8
- expect(memoizedVector.val).toEqual(ValueObjects_1.Color.RGBA(5, 6, 7, 8));
9
- });
10
- test("Callback is called when the val changes", () => {
11
- const cb = jest.fn();
12
- const initialColor = ValueObjects_1.Color.RGBA(5, 6, 7, 8);
13
- const memoizedQuat = new MemoizedColor_1.MemoizedColor(initialColor, cb);
14
- memoizedQuat.val = ValueObjects_1.Color.RGBA(8, 9, 10, 11);
15
- expect(cb).toBeCalled();
16
- });
17
- test("Callback is called only when the val changes", () => {
18
- const cb = jest.fn();
19
- const initialColor = ValueObjects_1.Color.RGBA(5, 6, 7, 8);
20
- const memoizedQuat = new MemoizedColor_1.MemoizedColor(initialColor, cb);
21
- memoizedQuat.val = ValueObjects_1.Color.RGBA(5, 6, 7, 8);
22
- memoizedQuat.val = ValueObjects_1.Color.RGBA(5, 6, 7, 8);
23
- memoizedQuat.val = ValueObjects_1.Color.RGBA(5, 6, 7, 8);
24
- expect(cb).not.toBeCalled();
25
- });
26
- test("Setting the value quietly should not notify", () => {
27
- const cb = jest.fn();
28
- const memoizedQuat = new MemoizedColor_1.MemoizedColor(ValueObjects_1.Color.RGBA(5, 6, 7, 8), cb);
29
- memoizedQuat.setValQuietly(ValueObjects_1.Color.RGBA(0, 0, 0, 0));
30
- expect(cb).not.toBeCalled();
31
- });
32
- //# sourceMappingURL=MemoizedColor.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoizedColor.test.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedColor.test.ts"],"names":[],"mappings":";;AAAA,kDAAwC;AACxC,mDAAgD;AAEhD,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACnC,MAAM,YAAY,GAAG,oBAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5C,MAAM,cAAc,GAAG,IAAI,6BAAa,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClE,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,oBAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC7D,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;IACnD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,YAAY,GAAG,oBAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5C,MAAM,YAAY,GAAG,IAAI,6BAAa,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAEzD,YAAY,CAAC,GAAG,GAAG,oBAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAE5C,MAAM,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;IACxD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,YAAY,GAAG,oBAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5C,MAAM,YAAY,GAAG,IAAI,6BAAa,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAEzD,YAAY,CAAC,GAAG,GAAG,oBAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1C,YAAY,CAAC,GAAG,GAAG,oBAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1C,YAAY,CAAC,GAAG,GAAG,oBAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE1C,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;IACvD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,YAAY,GAAG,IAAI,6BAAa,CAAC,oBAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEnE,YAAY,CAAC,aAAa,CAAC,oBAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAEnD,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC","sourcesContent":["import { Color } from \"../ValueObjects\";\r\nimport { MemoizedColor } from \"./MemoizedColor\";\r\n\r\ntest(\"Initial value is stored\", () => {\r\n const initialColor = Color.RGBA(5, 6, 7, 8);\r\n const memoizedVector = new MemoizedColor(initialColor, jest.fn());\r\n expect(memoizedVector.val).toEqual(Color.RGBA(5, 6, 7, 8));\r\n});\r\n\r\ntest(\"Callback is called when the val changes\", () => {\r\n const cb = jest.fn();\r\n const initialColor = Color.RGBA(5, 6, 7, 8);\r\n const memoizedQuat = new MemoizedColor(initialColor, cb);\r\n\r\n memoizedQuat.val = Color.RGBA(8, 9, 10, 11);\r\n\r\n expect(cb).toBeCalled();\r\n});\r\n\r\ntest(\"Callback is called only when the val changes\", () => {\r\n const cb = jest.fn();\r\n const initialColor = Color.RGBA(5, 6, 7, 8);\r\n const memoizedQuat = new MemoizedColor(initialColor, cb);\r\n\r\n memoizedQuat.val = Color.RGBA(5, 6, 7, 8);\r\n memoizedQuat.val = Color.RGBA(5, 6, 7, 8);\r\n memoizedQuat.val = Color.RGBA(5, 6, 7, 8);\r\n\r\n expect(cb).not.toBeCalled();\r\n});\r\n\r\ntest(\"Setting the value quietly should not notify\", () => {\r\n const cb = jest.fn();\r\n const memoizedQuat = new MemoizedColor(Color.RGBA(5, 6, 7, 8), cb);\r\n\r\n memoizedQuat.setValQuietly(Color.RGBA(0, 0, 0, 0));\r\n\r\n expect(cb).not.toBeCalled();\r\n});\r\n"]}
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MemoizedNumber = void 0;
4
- class MemoizedNumber {
5
- get val() {
6
- return this._val;
7
- }
8
- set val(b) {
9
- if (this._val === b)
10
- return;
11
- this._val = b;
12
- this.onChangeCallback();
13
- }
14
- setValQuietly(val) {
15
- this._val = val;
16
- }
17
- constructor(initialValue, onChangeCallback) {
18
- this._val = initialValue;
19
- this.onChangeCallback = onChangeCallback;
20
- }
21
- }
22
- exports.MemoizedNumber = MemoizedNumber;
23
- //# sourceMappingURL=MemoizedNumber.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoizedNumber.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedNumber.ts"],"names":[],"mappings":";;;AAAA,MAAa,cAAc;IAEzB,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IACD,IAAI,GAAG,CAAC,CAAS;QACf,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO;QAE5B,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAEM,aAAa,CAAC,GAAW;QAC9B,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;IAClB,CAAC;IAID,YAAY,YAAoB,EAAE,gBAA4B;QAC5D,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;CACF;AAtBD,wCAsBC","sourcesContent":["export class MemoizedNumber {\r\n private _val: number;\r\n get val(): number {\r\n return this._val;\r\n }\r\n set val(b: number) {\r\n if (this._val === b) return;\r\n\r\n this._val = b;\r\n this.onChangeCallback();\r\n }\r\n\r\n public setValQuietly(val: number) {\r\n this._val = val;\r\n }\r\n \r\n private onChangeCallback: () => void;\r\n\r\n constructor(initialValue: number, onChangeCallback: () => void) {\r\n this._val = initialValue;\r\n this.onChangeCallback = onChangeCallback;\r\n }\r\n}\r\n"]}
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const MemoizedNumber_1 = require("./MemoizedNumber");
4
- test("Initial value is stored", () => {
5
- const memoizedNumber = new MemoizedNumber_1.MemoizedNumber(33, jest.fn());
6
- expect(memoizedNumber.val).toEqual(33);
7
- });
8
- test("Callback is called when something changes", () => {
9
- const cb = jest.fn();
10
- const memoizedNumber = new MemoizedNumber_1.MemoizedNumber(33, cb);
11
- expect(cb).not.toBeCalled();
12
- memoizedNumber.val = 55;
13
- expect(cb).toBeCalled();
14
- });
15
- test("CB is only called when something has changed", () => {
16
- const cb = jest.fn();
17
- const memoizedNumber = new MemoizedNumber_1.MemoizedNumber(33, cb);
18
- memoizedNumber.val = 33;
19
- memoizedNumber.val = 33;
20
- memoizedNumber.val = 33;
21
- expect(cb).not.toBeCalled();
22
- });
23
- test("Setting the value quietly should not notify", () => {
24
- const cb = jest.fn();
25
- const memoizedBoolean = new MemoizedNumber_1.MemoizedNumber(2, cb);
26
- memoizedBoolean.setValQuietly(3);
27
- expect(cb).not.toBeCalled();
28
- });
29
- //# sourceMappingURL=MemoizedNumber.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoizedNumber.test.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedNumber.test.ts"],"names":[],"mappings":";;AAAA,qDAAkD;AAElD,IAAI,CAAC,yBAAyB,EAAE,GAAE,EAAE;IAClC,MAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACzD,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AACzC,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,2CAA2C,EAAE,GAAE,EAAE;IACpD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAElD,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;IAE5B,cAAc,CAAC,GAAG,GAAG,EAAE,CAAC;IAExB,MAAM,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;AAC1B,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,8CAA8C,EAAE,GAAE,EAAE;IACvD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAElD,cAAc,CAAC,GAAG,GAAG,EAAE,CAAC;IACxB,cAAc,CAAC,GAAG,GAAG,EAAE,CAAC;IACxB,cAAc,CAAC,GAAG,GAAG,EAAE,CAAC;IAExB,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,6CAA6C,EAAE,GAAE,EAAE;IACtD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,eAAe,GAAG,IAAI,+BAAc,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAElD,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAEjC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAA","sourcesContent":["import { MemoizedNumber } from \"./MemoizedNumber\";\r\n\r\ntest(\"Initial value is stored\", ()=>{\r\n const memoizedNumber = new MemoizedNumber(33, jest.fn());\r\n expect(memoizedNumber.val).toEqual(33);\r\n})\r\n\r\ntest(\"Callback is called when something changes\", ()=>{\r\n const cb = jest.fn();\r\n const memoizedNumber = new MemoizedNumber(33, cb);\r\n\r\n expect(cb).not.toBeCalled();\r\n\r\n memoizedNumber.val = 55;\r\n\r\n expect(cb).toBeCalled();\r\n})\r\n\r\ntest(\"CB is only called when something has changed\", ()=>{\r\n const cb = jest.fn();\r\n const memoizedNumber = new MemoizedNumber(33, cb);\r\n\r\n memoizedNumber.val = 33;\r\n memoizedNumber.val = 33;\r\n memoizedNumber.val = 33;\r\n\r\n expect(cb).not.toBeCalled();\r\n})\r\n\r\ntest(\"Setting the value quietly should not notify\", ()=>{\r\n const cb = jest.fn();\r\n const memoizedBoolean = new MemoizedNumber(2, cb);\r\n\r\n memoizedBoolean.setValQuietly(3);\r\n\r\n expect(cb).not.toBeCalled();\r\n})"]}
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MemoizedQuaternion = void 0;
4
- const ValueObjects_1 = require("../ValueObjects");
5
- class MemoizedQuaternion {
6
- get val() {
7
- return this._val;
8
- }
9
- set val(v) {
10
- if (ValueObjects_1.Quaternion.Equal(v, this._val))
11
- return;
12
- this._val = v;
13
- this.onChangeCallback();
14
- }
15
- setValQuietly(val) {
16
- this._val = val;
17
- }
18
- constructor(initialValue, onChangeCallback) {
19
- this._val = initialValue;
20
- this.onChangeCallback = onChangeCallback;
21
- }
22
- }
23
- exports.MemoizedQuaternion = MemoizedQuaternion;
24
- //# sourceMappingURL=MemoizedQuaternion.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoizedQuaternion.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedQuaternion.ts"],"names":[],"mappings":";;;AAAA,kDAA6C;AAE7C,MAAa,kBAAkB;IAG7B,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,IAAI,GAAG,CAAC,CAAa;QACnB,IAAI,yBAAU,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO;QAE3C,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAEM,aAAa,CAAC,GAAe;QAClC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;IAClB,CAAC;IAID,YAAY,YAAwB,EAAE,gBAA4B;QAChE,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;CACF;AAxBD,gDAwBC","sourcesContent":["import { Quaternion } from \"../ValueObjects\";\r\n\r\nexport class MemoizedQuaternion {\r\n private _val: Quaternion;\r\n\r\n get val(): Quaternion {\r\n return this._val;\r\n }\r\n\r\n set val(v: Quaternion) {\r\n if (Quaternion.Equal(v, this._val)) return;\r\n\r\n this._val = v;\r\n this.onChangeCallback();\r\n }\r\n\r\n public setValQuietly(val: Quaternion) {\r\n this._val = val;\r\n }\r\n\r\n private onChangeCallback: () => void;\r\n\r\n constructor(initialValue: Quaternion, onChangeCallback: () => void) {\r\n this._val = initialValue;\r\n this.onChangeCallback = onChangeCallback;\r\n }\r\n}\r\n"]}
@@ -1,32 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const ValueObjects_1 = require("../ValueObjects");
4
- const MemoizedQuaternion_1 = require("./MemoizedQuaternion");
5
- test("Initial value is stored", () => {
6
- const initialQuat = new ValueObjects_1.Quaternion(5, 6, 7, 8);
7
- const memoizedVector = new MemoizedQuaternion_1.MemoizedQuaternion(initialQuat, jest.fn());
8
- expect(memoizedVector.val).toEqual(new ValueObjects_1.Quaternion(5, 6, 7, 8));
9
- });
10
- test("Callback is called when the val changes", () => {
11
- const cb = jest.fn();
12
- const initialQuat = new ValueObjects_1.Quaternion(5, 6, 7, 8);
13
- const memoizedQuat = new MemoizedQuaternion_1.MemoizedQuaternion(initialQuat, cb);
14
- memoizedQuat.val = new ValueObjects_1.Quaternion(8, 9, 10, 11);
15
- expect(cb).toBeCalled();
16
- });
17
- test("Callback is called only when the val changes", () => {
18
- const cb = jest.fn();
19
- const initialQuat = new ValueObjects_1.Quaternion(5, 6, 7, 8);
20
- const memoizedQuat = new MemoizedQuaternion_1.MemoizedQuaternion(initialQuat, cb);
21
- memoizedQuat.val = new ValueObjects_1.Quaternion(5, 6, 7, 8);
22
- memoizedQuat.val = new ValueObjects_1.Quaternion(5, 6, 7, 8);
23
- memoizedQuat.val = new ValueObjects_1.Quaternion(5, 6, 7, 8);
24
- expect(cb).not.toBeCalled();
25
- });
26
- test("Setting the value quietly should not notify", () => {
27
- const cb = jest.fn();
28
- const memoizedQuat = new MemoizedQuaternion_1.MemoizedQuaternion(ValueObjects_1.Quaternion.Identity(), cb);
29
- memoizedQuat.setValQuietly(ValueObjects_1.Quaternion.Identity());
30
- expect(cb).not.toBeCalled();
31
- });
32
- //# sourceMappingURL=MemoizedQuaternion.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoizedQuaternion.test.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedQuaternion.test.ts"],"names":[],"mappings":";;AAAA,kDAA6C;AAC7C,6DAA0D;AAE1D,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACnC,MAAM,WAAW,GAAG,IAAI,yBAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,MAAM,cAAc,GAAG,IAAI,uCAAkB,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACtE,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,yBAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACjE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;IACnD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,WAAW,GAAG,IAAI,yBAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,IAAI,uCAAkB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAE7D,YAAY,CAAC,GAAG,GAAG,IAAI,yBAAU,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAEhD,MAAM,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;IACxD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,WAAW,GAAG,IAAI,yBAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,IAAI,uCAAkB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAE7D,YAAY,CAAC,GAAG,GAAG,IAAI,yBAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9C,YAAY,CAAC,GAAG,GAAG,IAAI,yBAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9C,YAAY,CAAC,GAAG,GAAG,IAAI,yBAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE9C,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;IACvD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,YAAY,GAAG,IAAI,uCAAkB,CAAC,yBAAU,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IAEvE,YAAY,CAAC,aAAa,CAAC,yBAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;IAElD,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC","sourcesContent":["import { Quaternion } from \"../ValueObjects\";\r\nimport { MemoizedQuaternion } from \"./MemoizedQuaternion\";\r\n\r\ntest(\"Initial value is stored\", () => {\r\n const initialQuat = new Quaternion(5, 6, 7, 8);\r\n const memoizedVector = new MemoizedQuaternion(initialQuat, jest.fn());\r\n expect(memoizedVector.val).toEqual(new Quaternion(5, 6, 7, 8));\r\n});\r\n\r\ntest(\"Callback is called when the val changes\", () => {\r\n const cb = jest.fn();\r\n const initialQuat = new Quaternion(5, 6, 7, 8);\r\n const memoizedQuat = new MemoizedQuaternion(initialQuat, cb);\r\n\r\n memoizedQuat.val = new Quaternion(8, 9, 10, 11);\r\n\r\n expect(cb).toBeCalled();\r\n});\r\n\r\ntest(\"Callback is called only when the val changes\", () => {\r\n const cb = jest.fn();\r\n const initialQuat = new Quaternion(5, 6, 7, 8);\r\n const memoizedQuat = new MemoizedQuaternion(initialQuat, cb);\r\n\r\n memoizedQuat.val = new Quaternion(5, 6, 7, 8);\r\n memoizedQuat.val = new Quaternion(5, 6, 7, 8);\r\n memoizedQuat.val = new Quaternion(5, 6, 7, 8);\r\n\r\n expect(cb).not.toBeCalled();\r\n});\r\n\r\ntest(\"Setting the value quietly should not notify\", () => {\r\n const cb = jest.fn();\r\n const memoizedQuat = new MemoizedQuaternion(Quaternion.Identity(), cb);\r\n\r\n memoizedQuat.setValQuietly(Quaternion.Identity());\r\n\r\n expect(cb).not.toBeCalled();\r\n});\r\n"]}
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MemoizedString = void 0;
4
- class MemoizedString {
5
- get val() {
6
- return this._val;
7
- }
8
- set val(b) {
9
- if (this._val === b)
10
- return;
11
- this._val = b;
12
- this.onChangeCallback();
13
- }
14
- setValQuietly(val) {
15
- this._val = val;
16
- }
17
- constructor(initialValue, onChangeCallback) {
18
- this._val = initialValue;
19
- this.onChangeCallback = onChangeCallback;
20
- }
21
- }
22
- exports.MemoizedString = MemoizedString;
23
- //# sourceMappingURL=MemoizedString.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoizedString.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedString.ts"],"names":[],"mappings":";;;AAAA,MAAa,cAAc;IAEzB,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IACD,IAAI,GAAG,CAAC,CAAS;QACf,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO;QAE5B,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAEM,aAAa,CAAC,GAAW;QAC9B,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;IAClB,CAAC;IAID,YAAY,YAAoB,EAAE,gBAA4B;QAC5D,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;CACF;AAtBD,wCAsBC","sourcesContent":["export class MemoizedString {\r\n private _val: string;\r\n get val(): string {\r\n return this._val;\r\n }\r\n set val(b: string) {\r\n if (this._val === b) return;\r\n\r\n this._val = b;\r\n this.onChangeCallback();\r\n }\r\n\r\n public setValQuietly(val: string) {\r\n this._val = val;\r\n }\r\n \r\n private onChangeCallback: () => void;\r\n\r\n constructor(initialValue: string, onChangeCallback: () => void) {\r\n this._val = initialValue;\r\n this.onChangeCallback = onChangeCallback;\r\n }\r\n}\r\n"]}
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const MemoizedString_1 = require("./MemoizedString");
4
- test("Initial value is stored", () => {
5
- const memoizedNumber = new MemoizedString_1.MemoizedString("string1", jest.fn());
6
- expect(memoizedNumber.val).toEqual("string1");
7
- });
8
- test("Callback is called when something changes", () => {
9
- const cb = jest.fn();
10
- const memoizedNumber = new MemoizedString_1.MemoizedString("string1", cb);
11
- expect(cb).not.toBeCalled();
12
- memoizedNumber.val = "string2";
13
- expect(cb).toBeCalled();
14
- });
15
- test("CB is only called when something has changed", () => {
16
- const cb = jest.fn();
17
- const memoizedNumber = new MemoizedString_1.MemoizedString("string1", cb);
18
- memoizedNumber.val = "string1";
19
- memoizedNumber.val = "string1";
20
- memoizedNumber.val = "string1";
21
- expect(cb).not.toBeCalled();
22
- });
23
- test("Setting the value quietly should not notify", () => {
24
- const cb = jest.fn();
25
- const memoizedBoolean = new MemoizedString_1.MemoizedString("string1", cb);
26
- memoizedBoolean.setValQuietly("string2");
27
- expect(cb).not.toBeCalled();
28
- });
29
- //# sourceMappingURL=MemoizedString.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoizedString.test.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedString.test.ts"],"names":[],"mappings":";;AAAA,qDAAkD;AAElD,IAAI,CAAC,yBAAyB,EAAE,GAAE,EAAE;IAClC,MAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAChE,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAChD,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,2CAA2C,EAAE,GAAE,EAAE;IACpD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzD,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;IAE5B,cAAc,CAAC,GAAG,GAAG,SAAS,CAAC;IAE/B,MAAM,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;AAC1B,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,8CAA8C,EAAE,GAAE,EAAE;IACvD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAEzD,cAAc,CAAC,GAAG,GAAG,SAAS,CAAC;IAC/B,cAAc,CAAC,GAAG,GAAG,SAAS,CAAC;IAC/B,cAAc,CAAC,GAAG,GAAG,SAAS,CAAC;IAE/B,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,6CAA6C,EAAE,GAAE,EAAE;IACtD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,eAAe,GAAG,IAAI,+BAAc,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAE1D,eAAe,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAEzC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAA","sourcesContent":["import { MemoizedString } from \"./MemoizedString\";\r\n\r\ntest(\"Initial value is stored\", ()=>{\r\n const memoizedNumber = new MemoizedString(\"string1\", jest.fn());\r\n expect(memoizedNumber.val).toEqual(\"string1\");\r\n})\r\n\r\ntest(\"Callback is called when something changes\", ()=>{\r\n const cb = jest.fn();\r\n const memoizedNumber = new MemoizedString(\"string1\", cb);\r\n\r\n expect(cb).not.toBeCalled();\r\n\r\n memoizedNumber.val = \"string2\";\r\n\r\n expect(cb).toBeCalled();\r\n})\r\n\r\ntest(\"CB is only called when something has changed\", ()=>{\r\n const cb = jest.fn();\r\n const memoizedNumber = new MemoizedString(\"string1\", cb);\r\n\r\n memoizedNumber.val = \"string1\";\r\n memoizedNumber.val = \"string1\";\r\n memoizedNumber.val = \"string1\";\r\n\r\n expect(cb).not.toBeCalled();\r\n})\r\n\r\ntest(\"Setting the value quietly should not notify\", ()=>{\r\n const cb = jest.fn();\r\n const memoizedBoolean = new MemoizedString(\"string1\", cb);\r\n\r\n memoizedBoolean.setValQuietly(\"string2\");\r\n\r\n expect(cb).not.toBeCalled();\r\n})"]}
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MemoizedVector2 = void 0;
4
- const ValueObjects_1 = require("../ValueObjects");
5
- class MemoizedVector2 {
6
- get val() {
7
- return this._val;
8
- }
9
- set val(v) {
10
- if (ValueObjects_1.Vector2.Equal(v, this._val))
11
- return;
12
- this._val = v;
13
- this.onChangeCallback();
14
- }
15
- setValQuietly(val) {
16
- this._val = val;
17
- }
18
- constructor(initialValue, onChangeCallback) {
19
- this._val = initialValue;
20
- this.onChangeCallback = onChangeCallback;
21
- }
22
- }
23
- exports.MemoizedVector2 = MemoizedVector2;
24
- //# sourceMappingURL=MemoizedVector2.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoizedVector2.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedVector2.ts"],"names":[],"mappings":";;;AAAA,kDAA0C;AAE1C,MAAa,eAAe;IAG1B,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,IAAI,GAAG,CAAC,CAAU;QAChB,IAAI,sBAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO;QAExC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAEM,aAAa,CAAC,GAAY;QAC/B,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;IAClB,CAAC;IAID,YAAY,YAAqB,EAAE,gBAA4B;QAC7D,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;CACF;AAxBD,0CAwBC","sourcesContent":["import { Vector2 } from \"../ValueObjects\";\r\n\r\nexport class MemoizedVector2 {\r\n private _val: Vector2;\r\n\r\n get val(): Vector2 {\r\n return this._val;\r\n }\r\n\r\n set val(v: Vector2) {\r\n if (Vector2.Equal(v, this._val)) return;\r\n\r\n this._val = v;\r\n this.onChangeCallback();\r\n }\r\n\r\n public setValQuietly(val: Vector2) {\r\n this._val = val;\r\n }\r\n\r\n private onChangeCallback: () => void;\r\n\r\n constructor(initialValue: Vector2, onChangeCallback: () => void) {\r\n this._val = initialValue;\r\n this.onChangeCallback = onChangeCallback;\r\n }\r\n}\r\n"]}
@@ -1,32 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const ValueObjects_1 = require("../ValueObjects");
4
- const MemoizedVector2_1 = require("./MemoizedVector2");
5
- test("Initial value is stored", () => {
6
- const initialVec = new ValueObjects_1.Vector2(5, 6);
7
- const memoizedVector = new MemoizedVector2_1.MemoizedVector2(initialVec, jest.fn());
8
- expect(memoizedVector.val).toEqual(new ValueObjects_1.Vector2(5, 6));
9
- });
10
- test("Callback is called when the val changes", () => {
11
- const cb = jest.fn();
12
- const initialVec = new ValueObjects_1.Vector2(5, 6);
13
- const memoizedVector = new MemoizedVector2_1.MemoizedVector2(initialVec, cb);
14
- memoizedVector.val = new ValueObjects_1.Vector2(8, 9);
15
- expect(cb).toBeCalled();
16
- });
17
- test("Callback is called only when the val changes", () => {
18
- const cb = jest.fn();
19
- const initialVec = new ValueObjects_1.Vector2(5, 6);
20
- const memoizedVector = new MemoizedVector2_1.MemoizedVector2(initialVec, cb);
21
- memoizedVector.val = new ValueObjects_1.Vector2(5, 6);
22
- memoizedVector.val = new ValueObjects_1.Vector2(5, 6);
23
- memoizedVector.val = new ValueObjects_1.Vector2(5, 6);
24
- expect(cb).not.toBeCalled();
25
- });
26
- test("Setting the value quietly should not notify", () => {
27
- const cb = jest.fn();
28
- const memoizedBoolean = new MemoizedVector2_1.MemoizedVector2(ValueObjects_1.Vector2.One(), cb);
29
- memoizedBoolean.setValQuietly(ValueObjects_1.Vector2.Zero());
30
- expect(cb).not.toBeCalled();
31
- });
32
- //# sourceMappingURL=MemoizedVector2.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoizedVector2.test.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedVector2.test.ts"],"names":[],"mappings":";;AAAA,kDAA0C;AAC1C,uDAAoD;AAEpD,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACnC,MAAM,UAAU,GAAG,IAAI,sBAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrC,MAAM,cAAc,GAAG,IAAI,iCAAe,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClE,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,sBAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACxD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;IACnD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,UAAU,GAAG,IAAI,sBAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrC,MAAM,cAAc,GAAG,IAAI,iCAAe,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAE3D,cAAc,CAAC,GAAG,GAAG,IAAI,sBAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAEvC,MAAM,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;IACxD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,UAAU,GAAG,IAAI,sBAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACrC,MAAM,cAAc,GAAG,IAAI,iCAAe,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAE3D,cAAc,CAAC,GAAG,GAAG,IAAI,sBAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACvC,cAAc,CAAC,GAAG,GAAG,IAAI,sBAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACvC,cAAc,CAAC,GAAG,GAAG,IAAI,sBAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAEvC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;IACvD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,eAAe,GAAG,IAAI,iCAAe,CAAC,sBAAO,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IAE/D,eAAe,CAAC,aAAa,CAAC,sBAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAE9C,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC","sourcesContent":["import { Vector2 } from \"../ValueObjects\";\r\nimport { MemoizedVector2 } from \"./MemoizedVector2\";\r\n\r\ntest(\"Initial value is stored\", () => {\r\n const initialVec = new Vector2(5, 6);\r\n const memoizedVector = new MemoizedVector2(initialVec, jest.fn());\r\n expect(memoizedVector.val).toEqual(new Vector2(5, 6));\r\n});\r\n\r\ntest(\"Callback is called when the val changes\", () => {\r\n const cb = jest.fn();\r\n const initialVec = new Vector2(5, 6);\r\n const memoizedVector = new MemoizedVector2(initialVec, cb);\r\n\r\n memoizedVector.val = new Vector2(8, 9);\r\n\r\n expect(cb).toBeCalled();\r\n});\r\n\r\ntest(\"Callback is called only when the val changes\", () => {\r\n const cb = jest.fn();\r\n const initialVec = new Vector2(5, 6);\r\n const memoizedVector = new MemoizedVector2(initialVec, cb);\r\n\r\n memoizedVector.val = new Vector2(5, 6);\r\n memoizedVector.val = new Vector2(5, 6);\r\n memoizedVector.val = new Vector2(5, 6);\r\n\r\n expect(cb).not.toBeCalled();\r\n});\r\n\r\ntest(\"Setting the value quietly should not notify\", () => {\r\n const cb = jest.fn();\r\n const memoizedBoolean = new MemoizedVector2(Vector2.One(), cb);\r\n\r\n memoizedBoolean.setValQuietly(Vector2.Zero());\r\n\r\n expect(cb).not.toBeCalled();\r\n});\r\n"]}
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MemoizedVector3 = void 0;
4
- const ValueObjects_1 = require("../ValueObjects");
5
- class MemoizedVector3 {
6
- get val() {
7
- return this._val;
8
- }
9
- set val(v) {
10
- if (ValueObjects_1.Vector3.Equal(v, this._val))
11
- return;
12
- this._val = v;
13
- this.onChangeCallback();
14
- }
15
- setValQuietly(val) {
16
- this._val = val;
17
- }
18
- constructor(initialValue, onChangeCallback) {
19
- this._val = initialValue;
20
- this.onChangeCallback = onChangeCallback;
21
- }
22
- }
23
- exports.MemoizedVector3 = MemoizedVector3;
24
- //# sourceMappingURL=MemoizedVector3.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoizedVector3.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedVector3.ts"],"names":[],"mappings":";;;AAAA,kDAA0C;AAE1C,MAAa,eAAe;IAG1B,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,IAAI,GAAG,CAAC,CAAU;QAChB,IAAI,sBAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO;QAExC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;QACd,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAEM,aAAa,CAAC,GAAY;QAC/B,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;IAClB,CAAC;IAID,YAAY,YAAqB,EAAE,gBAA4B;QAC7D,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;CACF;AAxBD,0CAwBC","sourcesContent":["import { Vector3 } from \"../ValueObjects\";\r\n\r\nexport class MemoizedVector3 {\r\n private _val: Vector3;\r\n\r\n get val(): Vector3 {\r\n return this._val;\r\n }\r\n\r\n set val(v: Vector3) {\r\n if (Vector3.Equal(v, this._val)) return;\r\n\r\n this._val = v;\r\n this.onChangeCallback();\r\n }\r\n\r\n public setValQuietly(val: Vector3) {\r\n this._val = val;\r\n }\r\n\r\n private onChangeCallback: () => void;\r\n\r\n constructor(initialValue: Vector3, onChangeCallback: () => void) {\r\n this._val = initialValue;\r\n this.onChangeCallback = onChangeCallback;\r\n }\r\n}\r\n"]}
@@ -1,32 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const ValueObjects_1 = require("../ValueObjects");
4
- const MemoizedVector3_1 = require("./MemoizedVector3");
5
- test("Initial value is stored", () => {
6
- const initialVec = new ValueObjects_1.Vector3(5, 6, 7);
7
- const memoizedVector = new MemoizedVector3_1.MemoizedVector3(initialVec, jest.fn());
8
- expect(memoizedVector.val).toEqual(new ValueObjects_1.Vector3(5, 6, 7));
9
- });
10
- test("Callback is called when the val changes", () => {
11
- const cb = jest.fn();
12
- const initialVec = new ValueObjects_1.Vector3(5, 6, 7);
13
- const memoizedVector = new MemoizedVector3_1.MemoizedVector3(initialVec, cb);
14
- memoizedVector.val = new ValueObjects_1.Vector3(8, 9, 10);
15
- expect(cb).toBeCalled();
16
- });
17
- test("Callback is called only when the val changes", () => {
18
- const cb = jest.fn();
19
- const initialVec = new ValueObjects_1.Vector3(5, 6, 7);
20
- const memoizedVector = new MemoizedVector3_1.MemoizedVector3(initialVec, cb);
21
- memoizedVector.val = new ValueObjects_1.Vector3(5, 6, 7);
22
- memoizedVector.val = new ValueObjects_1.Vector3(5, 6, 7);
23
- memoizedVector.val = new ValueObjects_1.Vector3(5, 6, 7);
24
- expect(cb).not.toBeCalled();
25
- });
26
- test("Setting the value quietly should not notify", () => {
27
- const cb = jest.fn();
28
- const memoizedBoolean = new MemoizedVector3_1.MemoizedVector3(ValueObjects_1.Vector3.One(), cb);
29
- memoizedBoolean.setValQuietly(ValueObjects_1.Vector3.Zero());
30
- expect(cb).not.toBeCalled();
31
- });
32
- //# sourceMappingURL=MemoizedVector3.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MemoizedVector3.test.js","sourceRoot":"","sources":["../../../src/Entities/MemoizedVector3.test.ts"],"names":[],"mappings":";;AAAA,kDAA0C;AAC1C,uDAAoD;AAEpD,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;IACnC,MAAM,UAAU,GAAG,IAAI,sBAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACxC,MAAM,cAAc,GAAG,IAAI,iCAAe,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClE,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,sBAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE;IACnD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,UAAU,GAAG,IAAI,sBAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACxC,MAAM,cAAc,GAAG,IAAI,iCAAe,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAE3D,cAAc,CAAC,GAAG,GAAG,IAAI,sBAAO,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAE3C,MAAM,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;IACxD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,UAAU,GAAG,IAAI,sBAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACxC,MAAM,cAAc,GAAG,IAAI,iCAAe,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAE3D,cAAc,CAAC,GAAG,GAAG,IAAI,sBAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1C,cAAc,CAAC,GAAG,GAAG,IAAI,sBAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1C,cAAc,CAAC,GAAG,GAAG,IAAI,sBAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE1C,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;IACvD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACrB,MAAM,eAAe,GAAG,IAAI,iCAAe,CAAC,sBAAO,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IAE/D,eAAe,CAAC,aAAa,CAAC,sBAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAE9C,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC","sourcesContent":["import { Vector3 } from \"../ValueObjects\";\r\nimport { MemoizedVector3 } from \"./MemoizedVector3\";\r\n\r\ntest(\"Initial value is stored\", () => {\r\n const initialVec = new Vector3(5, 6, 7);\r\n const memoizedVector = new MemoizedVector3(initialVec, jest.fn());\r\n expect(memoizedVector.val).toEqual(new Vector3(5, 6, 7));\r\n});\r\n\r\ntest(\"Callback is called when the val changes\", () => {\r\n const cb = jest.fn();\r\n const initialVec = new Vector3(5, 6, 7);\r\n const memoizedVector = new MemoizedVector3(initialVec, cb);\r\n\r\n memoizedVector.val = new Vector3(8, 9, 10);\r\n\r\n expect(cb).toBeCalled();\r\n});\r\n\r\ntest(\"Callback is called only when the val changes\", () => {\r\n const cb = jest.fn();\r\n const initialVec = new Vector3(5, 6, 7);\r\n const memoizedVector = new MemoizedVector3(initialVec, cb);\r\n\r\n memoizedVector.val = new Vector3(5, 6, 7);\r\n memoizedVector.val = new Vector3(5, 6, 7);\r\n memoizedVector.val = new Vector3(5, 6, 7);\r\n\r\n expect(cb).not.toBeCalled();\r\n});\r\n\r\ntest(\"Setting the value quietly should not notify\", () => {\r\n const cb = jest.fn();\r\n const memoizedBoolean = new MemoizedVector3(Vector3.One(), cb);\r\n\r\n memoizedBoolean.setValQuietly(Vector3.Zero());\r\n\r\n expect(cb).not.toBeCalled();\r\n});\r\n"]}
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ObservableEntity = void 0;
4
- const ObserverList_1 = require("./ObserverList");
5
- class ObservableEntity {
6
- constructor() {
7
- this.observerList = new ObserverList_1.ObserverList();
8
- this.addObserver = (observer) => {
9
- this.observerList.add(observer);
10
- };
11
- this.removeObserver = (observer) => {
12
- this.observerList.remove(observer);
13
- };
14
- this.notify = () => {
15
- this.observerList.notify();
16
- };
17
- }
18
- }
19
- exports.ObservableEntity = ObservableEntity;
20
- //# sourceMappingURL=ObservableEntity.js.map