@vived/app 5.1.2 → 5.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (207) hide show
  1. package/dist/cjs/Babylon/Mocks/MockBabylonRenderingUC.js +3 -3
  2. package/dist/cjs/Babylon/Mocks/MockBabylonRenderingUC.js.map +1 -1
  3. package/dist/cjs/Babylon/Mocks/MockPixelToSceneRayUC.js +1 -1
  4. package/dist/cjs/Babylon/Mocks/MockPixelToSceneRayUC.js.map +1 -1
  5. package/dist/cjs/Babylon/Mocks/MockScenePixelPickUC.js +1 -1
  6. package/dist/cjs/Babylon/Mocks/MockScenePixelPickUC.js.map +1 -1
  7. package/dist/cjs/Babylon/Mocks/MockSceneRayPickUC.js +1 -3
  8. package/dist/cjs/Babylon/Mocks/MockSceneRayPickUC.js.map +1 -1
  9. package/dist/cjs/Babylon/Mocks/ShowBabylonInspectorPmMock.js +1 -1
  10. package/dist/cjs/Babylon/Mocks/ShowBabylonInspectorPmMock.js.map +1 -1
  11. package/dist/cjs/Babylon/UC/PixelToSceneRayUC.test.js +2 -0
  12. package/dist/cjs/Babylon/UC/PixelToSceneRayUC.test.js.map +1 -1
  13. package/dist/cjs/Babylon/UC/ScenePixelPickUC.test.js +2 -0
  14. package/dist/cjs/Babylon/UC/ScenePixelPickUC.test.js.map +1 -1
  15. package/dist/cjs/BaseApp/UC/RenderCanvasUC.test.js +6 -0
  16. package/dist/cjs/BaseApp/UC/RenderCanvasUC.test.js.map +1 -1
  17. package/dist/cjs/Callouts/UC/TryAddCallout.test.js +1 -0
  18. package/dist/cjs/Callouts/UC/TryAddCallout.test.js.map +1 -1
  19. package/dist/cjs/Hideable/UCs/TryHideWithPickUC.test.js +3 -1
  20. package/dist/cjs/Hideable/UCs/TryHideWithPickUC.test.js.map +1 -1
  21. package/dist/cjs/HoverLabel/Controllers/HoverLabelMouse.js.map +1 -1
  22. package/dist/cjs/HoverLabel/Controllers/HoverLabelTouch.js.map +1 -1
  23. package/dist/cjs/HoverLabel/UseCases/TryShowHoverLabel.test.js +9 -3
  24. package/dist/cjs/HoverLabel/UseCases/TryShowHoverLabel.test.js.map +1 -1
  25. package/dist/cjs/LabelDrop/Controller/MouseLabelDropAuthor.js.map +1 -1
  26. package/dist/cjs/LabelDrop/Controller/TouchLabelDropAuthor.js.map +1 -1
  27. package/dist/cjs/LabelDrop/Controller/TouchLabelDropAuthor.test.js +4 -1
  28. package/dist/cjs/LabelDrop/Controller/TouchLabelDropAuthor.test.js.map +1 -1
  29. package/dist/cjs/LabelDrop/Controller/releaseLabelDropAnswerItemScreen.test.js +5 -2
  30. package/dist/cjs/LabelDrop/Controller/releaseLabelDropAnswerItemScreen.test.js.map +1 -1
  31. package/dist/cjs/LabelDrop/UseCases/ToggleLabelDropTargetUC.test.js +1 -0
  32. package/dist/cjs/LabelDrop/UseCases/ToggleLabelDropTargetUC.test.js.map +1 -1
  33. package/dist/cjs/Landmarks/Controller/MouseLandmark.js.map +1 -1
  34. package/dist/cjs/Landmarks/Controller/TouchLandmark.js.map +1 -1
  35. package/dist/cjs/MouseInput/Entities/MouseInput.js.map +1 -1
  36. package/dist/cjs/MouseInput/Mocks/MockMouseInput.js +4 -5
  37. package/dist/cjs/MouseInput/Mocks/MockMouseInput.js.map +1 -1
  38. package/dist/cjs/MouseInput/Mocks/index.js.map +1 -1
  39. package/dist/cjs/MouseInput/index.js.map +1 -1
  40. package/dist/cjs/ObjectPick/Controllers/MouseObjectPickMC.js.map +1 -1
  41. package/dist/cjs/ObjectPick/Controllers/StylusObjectPickSC.js.map +1 -1
  42. package/dist/cjs/ObjectPick/Controllers/TouchObjectPickTC.js.map +1 -1
  43. package/dist/cjs/ObjectPick/UseCases/TrySelectObjectPickUC.test.js +1 -0
  44. package/dist/cjs/ObjectPick/UseCases/TrySelectObjectPickUC.test.js.map +1 -1
  45. package/dist/cjs/ObjectPick/UseCases/TrySubmitObjectPickUC.test.js +1 -0
  46. package/dist/cjs/ObjectPick/UseCases/TrySubmitObjectPickUC.test.js.map +1 -1
  47. package/dist/cjs/SceneRoot/Controllers/DoubleTapToFocus.js.map +1 -1
  48. package/dist/cjs/SceneRoot/Controllers/MouseClickToFocus.js.map +1 -1
  49. package/dist/cjs/SceneRoot/Controllers/MouseOrbit.js.map +1 -1
  50. package/dist/cjs/SceneRoot/Controllers/MouseRoll.js.map +1 -1
  51. package/dist/cjs/SceneRoot/Controllers/MouseScale.js.map +1 -1
  52. package/dist/cjs/SceneRoot/Controllers/ScaleSceneRootSC.js.map +1 -1
  53. package/dist/cjs/SceneRoot/Controllers/SceneRootMoveSC.js.map +1 -1
  54. package/dist/cjs/SceneRoot/Controllers/TouchOrbit.js.map +1 -1
  55. package/dist/cjs/SceneRoot/Controllers/TouchPan.js.map +1 -1
  56. package/dist/cjs/SceneRoot/Controllers/TouchPinch.js.map +1 -1
  57. package/dist/cjs/SceneRoot/Controllers/TouchScale.js.map +1 -1
  58. package/dist/cjs/Selection/Controller/MouseHoverOnAppObject.js.map +1 -1
  59. package/dist/cjs/Selection/Controller/MouseHoverOnAppObject.test.js +1 -0
  60. package/dist/cjs/Selection/Controller/MouseHoverOnAppObject.test.js.map +1 -1
  61. package/dist/cjs/Selection/Controller/MousePressOnAppObject.js.map +1 -1
  62. package/dist/cjs/Selection/Controller/MousePressOnAppObject.test.js +1 -0
  63. package/dist/cjs/Selection/Controller/MousePressOnAppObject.test.js.map +1 -1
  64. package/dist/cjs/Selection/Controller/MouseSelectAppObject.js.map +1 -1
  65. package/dist/cjs/Selection/Controller/MouseSelectAppObject.test.js +1 -0
  66. package/dist/cjs/Selection/Controller/MouseSelectAppObject.test.js.map +1 -1
  67. package/dist/cjs/Selection/Controller/StylusHoverOnAppObjectSC.js.map +1 -1
  68. package/dist/cjs/Selection/Controller/StylusPressOnAppObjectSC.js.map +1 -1
  69. package/dist/cjs/Selection/Controller/StylusSelectAppObjectSC.js.map +1 -1
  70. package/dist/cjs/Selection/Controller/TapToSelectAppObject.js.map +1 -1
  71. package/dist/cjs/Selection/Controller/TouchPressOnAppObject.js.map +1 -1
  72. package/dist/cjs/Stick/Controllers/DoubleClickToStickMC.js.map +1 -1
  73. package/dist/cjs/Stick/Controllers/DoubleTapToStickTC.js.map +1 -1
  74. package/dist/cjs/Stick/UCs/TryStickAppObjectUC.test.js +3 -1
  75. package/dist/cjs/Stick/UCs/TryStickAppObjectUC.test.js.map +1 -1
  76. package/dist/cjs/Stylus/Entity/StylusEntity.js.map +1 -1
  77. package/dist/cjs/Stylus/Entity/StylusEntity.test.js.map +1 -1
  78. package/dist/cjs/Stylus/UCs/EmulateStylusUC.test.js +3 -1
  79. package/dist/cjs/Stylus/UCs/EmulateStylusUC.test.js.map +1 -1
  80. package/dist/cjs/TouchController/Entities/TouchInput.js.map +1 -1
  81. package/dist/cjs/Transform3D/Controllers/Mouse/DragScaleTransformMC.js.map +1 -1
  82. package/dist/cjs/Transform3D/Controllers/Mouse/MousePanTransformMC.js.map +1 -1
  83. package/dist/cjs/Transform3D/Controllers/Mouse/PanTransformMC.js.map +1 -1
  84. package/dist/cjs/Transform3D/Controllers/Mouse/RollScaleTransformMC.js.map +1 -1
  85. package/dist/cjs/Transform3D/Controllers/Stylus/MoveTransformSC.js.map +1 -1
  86. package/dist/cjs/Transform3D/Controllers/Stylus/PanScaleTransformSC.js.map +1 -1
  87. package/dist/cjs/Transform3D/Controllers/Touch/DragScaleTransformTC.js.map +1 -1
  88. package/dist/cjs/Transform3D/Controllers/Touch/PanTransformTC.js.map +1 -1
  89. package/dist/cjs/Transform3D/Controllers/Touch/PinchTransformTC.js.map +1 -1
  90. package/dist/cjs/Transform3D/Controllers/Touch/TouchPanTransformTC.js.map +1 -1
  91. package/dist/cjs/Transform3D/UC/BumpTransformScaleAboutPixelPoint.test.js +1 -0
  92. package/dist/cjs/Transform3D/UC/BumpTransformScaleAboutPixelPoint.test.js.map +1 -1
  93. package/dist/cjs/Transform3D/UC/PinchTransform.test.js +1 -0
  94. package/dist/cjs/Transform3D/UC/PinchTransform.test.js.map +1 -1
  95. package/dist/cjs/Transform3D/UC/TryPanTransformUC.test.js +1 -0
  96. package/dist/cjs/Transform3D/UC/TryPanTransformUC.test.js.map +1 -1
  97. package/dist/esm/Babylon/Mocks/MockBabylonRenderingUC.js +3 -3
  98. package/dist/esm/Babylon/Mocks/MockBabylonRenderingUC.js.map +1 -1
  99. package/dist/esm/Babylon/Mocks/MockPixelToSceneRayUC.js +1 -1
  100. package/dist/esm/Babylon/Mocks/MockPixelToSceneRayUC.js.map +1 -1
  101. package/dist/esm/Babylon/Mocks/MockScenePixelPickUC.js +1 -1
  102. package/dist/esm/Babylon/Mocks/MockScenePixelPickUC.js.map +1 -1
  103. package/dist/esm/Babylon/Mocks/MockSceneRayPickUC.js +1 -3
  104. package/dist/esm/Babylon/Mocks/MockSceneRayPickUC.js.map +1 -1
  105. package/dist/esm/Babylon/Mocks/ShowBabylonInspectorPmMock.js +1 -1
  106. package/dist/esm/Babylon/Mocks/ShowBabylonInspectorPmMock.js.map +1 -1
  107. package/dist/esm/Babylon/UC/PixelToSceneRayUC.test.js +2 -0
  108. package/dist/esm/Babylon/UC/PixelToSceneRayUC.test.js.map +1 -1
  109. package/dist/esm/Babylon/UC/ScenePixelPickUC.test.js +2 -0
  110. package/dist/esm/Babylon/UC/ScenePixelPickUC.test.js.map +1 -1
  111. package/dist/esm/BaseApp/UC/RenderCanvasUC.test.js +6 -0
  112. package/dist/esm/BaseApp/UC/RenderCanvasUC.test.js.map +1 -1
  113. package/dist/esm/Callouts/UC/TryAddCallout.test.js +1 -0
  114. package/dist/esm/Callouts/UC/TryAddCallout.test.js.map +1 -1
  115. package/dist/esm/Hideable/UCs/TryHideWithPickUC.test.js +3 -1
  116. package/dist/esm/Hideable/UCs/TryHideWithPickUC.test.js.map +1 -1
  117. package/dist/esm/HoverLabel/Controllers/HoverLabelMouse.js.map +1 -1
  118. package/dist/esm/HoverLabel/Controllers/HoverLabelTouch.js.map +1 -1
  119. package/dist/esm/HoverLabel/UseCases/TryShowHoverLabel.test.js +9 -3
  120. package/dist/esm/HoverLabel/UseCases/TryShowHoverLabel.test.js.map +1 -1
  121. package/dist/esm/LabelDrop/Controller/MouseLabelDropAuthor.js.map +1 -1
  122. package/dist/esm/LabelDrop/Controller/TouchLabelDropAuthor.js.map +1 -1
  123. package/dist/esm/LabelDrop/Controller/TouchLabelDropAuthor.test.js +4 -1
  124. package/dist/esm/LabelDrop/Controller/TouchLabelDropAuthor.test.js.map +1 -1
  125. package/dist/esm/LabelDrop/Controller/releaseLabelDropAnswerItemScreen.test.js +5 -2
  126. package/dist/esm/LabelDrop/Controller/releaseLabelDropAnswerItemScreen.test.js.map +1 -1
  127. package/dist/esm/LabelDrop/UseCases/ToggleLabelDropTargetUC.test.js +1 -0
  128. package/dist/esm/LabelDrop/UseCases/ToggleLabelDropTargetUC.test.js.map +1 -1
  129. package/dist/esm/Landmarks/Controller/MouseLandmark.js.map +1 -1
  130. package/dist/esm/Landmarks/Controller/TouchLandmark.js.map +1 -1
  131. package/dist/esm/MouseInput/Entities/MouseInput.js.map +1 -1
  132. package/dist/esm/MouseInput/Mocks/MockMouseInput.js +4 -5
  133. package/dist/esm/MouseInput/Mocks/MockMouseInput.js.map +1 -1
  134. package/dist/esm/MouseInput/Mocks/index.js.map +1 -1
  135. package/dist/esm/MouseInput/index.js.map +1 -1
  136. package/dist/esm/ObjectPick/Controllers/MouseObjectPickMC.js.map +1 -1
  137. package/dist/esm/ObjectPick/Controllers/StylusObjectPickSC.js.map +1 -1
  138. package/dist/esm/ObjectPick/Controllers/TouchObjectPickTC.js.map +1 -1
  139. package/dist/esm/ObjectPick/UseCases/TrySelectObjectPickUC.test.js +1 -0
  140. package/dist/esm/ObjectPick/UseCases/TrySelectObjectPickUC.test.js.map +1 -1
  141. package/dist/esm/ObjectPick/UseCases/TrySubmitObjectPickUC.test.js +1 -0
  142. package/dist/esm/ObjectPick/UseCases/TrySubmitObjectPickUC.test.js.map +1 -1
  143. package/dist/esm/SceneRoot/Controllers/DoubleTapToFocus.js.map +1 -1
  144. package/dist/esm/SceneRoot/Controllers/MouseClickToFocus.js.map +1 -1
  145. package/dist/esm/SceneRoot/Controllers/MouseOrbit.js.map +1 -1
  146. package/dist/esm/SceneRoot/Controllers/MouseRoll.js.map +1 -1
  147. package/dist/esm/SceneRoot/Controllers/MouseScale.js.map +1 -1
  148. package/dist/esm/SceneRoot/Controllers/ScaleSceneRootSC.js.map +1 -1
  149. package/dist/esm/SceneRoot/Controllers/SceneRootMoveSC.js.map +1 -1
  150. package/dist/esm/SceneRoot/Controllers/TouchOrbit.js.map +1 -1
  151. package/dist/esm/SceneRoot/Controllers/TouchPan.js.map +1 -1
  152. package/dist/esm/SceneRoot/Controllers/TouchPinch.js.map +1 -1
  153. package/dist/esm/SceneRoot/Controllers/TouchScale.js.map +1 -1
  154. package/dist/esm/Selection/Controller/MouseHoverOnAppObject.js.map +1 -1
  155. package/dist/esm/Selection/Controller/MouseHoverOnAppObject.test.js +1 -0
  156. package/dist/esm/Selection/Controller/MouseHoverOnAppObject.test.js.map +1 -1
  157. package/dist/esm/Selection/Controller/MousePressOnAppObject.js.map +1 -1
  158. package/dist/esm/Selection/Controller/MousePressOnAppObject.test.js +1 -0
  159. package/dist/esm/Selection/Controller/MousePressOnAppObject.test.js.map +1 -1
  160. package/dist/esm/Selection/Controller/MouseSelectAppObject.js.map +1 -1
  161. package/dist/esm/Selection/Controller/MouseSelectAppObject.test.js +1 -0
  162. package/dist/esm/Selection/Controller/MouseSelectAppObject.test.js.map +1 -1
  163. package/dist/esm/Selection/Controller/StylusHoverOnAppObjectSC.js.map +1 -1
  164. package/dist/esm/Selection/Controller/StylusPressOnAppObjectSC.js.map +1 -1
  165. package/dist/esm/Selection/Controller/StylusSelectAppObjectSC.js.map +1 -1
  166. package/dist/esm/Selection/Controller/TapToSelectAppObject.js.map +1 -1
  167. package/dist/esm/Selection/Controller/TouchPressOnAppObject.js.map +1 -1
  168. package/dist/esm/Stick/Controllers/DoubleClickToStickMC.js.map +1 -1
  169. package/dist/esm/Stick/Controllers/DoubleTapToStickTC.js.map +1 -1
  170. package/dist/esm/Stick/UCs/TryStickAppObjectUC.test.js +3 -1
  171. package/dist/esm/Stick/UCs/TryStickAppObjectUC.test.js.map +1 -1
  172. package/dist/esm/Stylus/Entity/StylusEntity.js.map +1 -1
  173. package/dist/esm/Stylus/Entity/StylusEntity.test.js.map +1 -1
  174. package/dist/esm/Stylus/UCs/EmulateStylusUC.test.js +3 -1
  175. package/dist/esm/Stylus/UCs/EmulateStylusUC.test.js.map +1 -1
  176. package/dist/esm/TouchController/Entities/TouchInput.js.map +1 -1
  177. package/dist/esm/Transform3D/Controllers/Mouse/DragScaleTransformMC.js.map +1 -1
  178. package/dist/esm/Transform3D/Controllers/Mouse/MousePanTransformMC.js.map +1 -1
  179. package/dist/esm/Transform3D/Controllers/Mouse/PanTransformMC.js.map +1 -1
  180. package/dist/esm/Transform3D/Controllers/Mouse/RollScaleTransformMC.js.map +1 -1
  181. package/dist/esm/Transform3D/Controllers/Stylus/MoveTransformSC.js.map +1 -1
  182. package/dist/esm/Transform3D/Controllers/Stylus/PanScaleTransformSC.js.map +1 -1
  183. package/dist/esm/Transform3D/Controllers/Touch/DragScaleTransformTC.js.map +1 -1
  184. package/dist/esm/Transform3D/Controllers/Touch/PanTransformTC.js.map +1 -1
  185. package/dist/esm/Transform3D/Controllers/Touch/PinchTransformTC.js.map +1 -1
  186. package/dist/esm/Transform3D/Controllers/Touch/TouchPanTransformTC.js.map +1 -1
  187. package/dist/esm/Transform3D/UC/BumpTransformScaleAboutPixelPoint.test.js +1 -0
  188. package/dist/esm/Transform3D/UC/BumpTransformScaleAboutPixelPoint.test.js.map +1 -1
  189. package/dist/esm/Transform3D/UC/PinchTransform.test.js +1 -0
  190. package/dist/esm/Transform3D/UC/PinchTransform.test.js.map +1 -1
  191. package/dist/esm/Transform3D/UC/TryPanTransformUC.test.js +1 -0
  192. package/dist/esm/Transform3D/UC/TryPanTransformUC.test.js.map +1 -1
  193. package/dist/types/Babylon/Mocks/MockBabylonRenderingUC.d.ts +3 -3
  194. package/dist/types/Babylon/Mocks/MockBabylonRenderingUC.d.ts.map +1 -1
  195. package/dist/types/Babylon/Mocks/MockPixelToSceneRayUC.d.ts +1 -1
  196. package/dist/types/Babylon/Mocks/MockPixelToSceneRayUC.d.ts.map +1 -1
  197. package/dist/types/Babylon/Mocks/MockScenePixelPickUC.d.ts +1 -1
  198. package/dist/types/Babylon/Mocks/MockScenePixelPickUC.d.ts.map +1 -1
  199. package/dist/types/Babylon/Mocks/MockSceneRayPickUC.d.ts +1 -1
  200. package/dist/types/Babylon/Mocks/MockSceneRayPickUC.d.ts.map +1 -1
  201. package/dist/types/Babylon/Mocks/ShowBabylonInspectorPmMock.d.ts +1 -1
  202. package/dist/types/Babylon/Mocks/ShowBabylonInspectorPmMock.d.ts.map +1 -1
  203. package/dist/types/MouseInput/Mocks/MockMouseInput.d.ts +5 -6
  204. package/dist/types/MouseInput/Mocks/MockMouseInput.d.ts.map +1 -1
  205. package/dist/types/MouseInput/Mocks/index.d.ts.map +1 -1
  206. package/dist/types/MouseInput/index.d.ts.map +1 -1
  207. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"PinchTransform.test.js","sourceRoot":"","sources":["../../../../src/Transform3D/UC/PinchTransform.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EACL,yBAAyB,EACzB,wBAAwB,GAEzB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAC7F,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAExD,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAC;IACvC,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,eAAe,CAAC,EAAE,CAAC,CAAC;IAEtC,MAAM,OAAO,GAAG,oBAAoB,CAAC,EAAE,CAAC,CAAC;IAEzC,MAAM,QAAQ,GAAG,wBAAwB,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,2BAA2B,CAAC,UAAU,CAAC,CAAC;IAC7D,MAAM,cAAc,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACjC,YAAY,CAAC,UAAU,GAAG,cAAc,CAAC;IAEzC,MAAM,OAAO,GAAG,yBAAyB,CAAC,UAAU,CAAsB,CAAC;IAE3E,OAAO,CAAC,eAAe,GAAG,UAAU,CAAC;IAErC,OAAO;QACL,UAAU;QACV,OAAO;QACP,SAAS;QACT,QAAQ;QACR,cAAc;QACd,OAAO;KACR,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,cAAc,CAAC,kBAAkB,CACtC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAChC,OAAO,CAAC,OAAO,EAAE,CAClB,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACzC,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,WAAW,EAAE,CAAC;QAE7C,SAAS,CAAC,aAAa,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAE/C,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAExC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAEhC,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc;QAEtD,MAAM,IAAI,GAAG,SAAS,CAAC,aAAa,CAAC;QACrC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QAChC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,CAAC;QAEvD,QAAQ,CAAC,cAAc,CAAC,eAAe,CAAC,IAAI,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAEjE,SAAS,CAAC,aAAa,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAE/C,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAExC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAEhC,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc;QAEtD,MAAM,IAAI,GAAG,SAAS,CAAC,aAAa,CAAC;QACrC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,WAAW,EAAE,CAAC;QAC7C,SAAS,CAAC,aAAa,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC/C,SAAS,CAAC,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAErC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAClC,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAExC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAClC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAEhC,MAAM,kBAAkB,GAAG,OAAO,CAAC,WAAW,GAAG,CAAC,CAAC;QAEnD,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,WAAW,EAAE,CAAC;QAC7C,SAAS,CAAC,aAAa,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC/C,SAAS,CAAC,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAErC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAClC,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAExC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAEhC,MAAM,kBAAkB,GAAG,OAAO,CAAC,WAAW,GAAG,CAAC,CAAC;QACnD,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC1E,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,WAAW,EAAE,CAAC;QAE7D,SAAS,CAAC,UAAU,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAClC,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAExC,SAAS,CAAC,UAAU,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5C,OAAO,CAAC,WAAW,EAAE,CAAC;QAEtB,MAAM,CAAC,cAAc,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACvE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,WAAW,EAAE,CAAC;QAE7D,SAAS,CAAC,UAAU,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAClC,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAExC,OAAO,CAAC,WAAW,EAAE,CAAC;QAEtB,MAAM,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IAChD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,WAAW,EAAE,CAAC;QAE7C,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC;QACxB,SAAS,CAAC,aAAa,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAEzC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,OAAO,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAExC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAEhC,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\nimport { ParametricLine, Vector2, Vector3 } from \"@vived/core\";\nimport {\n makeMockPixelToSceneRayUC,\n makeMockScenePixelPickUC,\n PixelToSceneRayUC,\n} from \"../../Babylon\";\nimport { makeMockDispatchStateChange } from \"../../Dispatcher/Mocks/MockDispatchStateChange\";\nimport { makeTransform3D } from \"../Entities\";\nimport { makePinchTransformUC } from \"./PinchTransform\";\n\nfunction makeTestRig() {\n const appObjects = makeAppObjectRepo();\n const ao = appObjects.getOrCreate(\"AO\");\n const transform = makeTransform3D(ao);\n\n const pinchUC = makePinchTransformUC(ao);\n\n const mockPick = makeMockScenePixelPickUC(appObjects);\n const mockDispatch = makeMockDispatchStateChange(appObjects);\n const doDispatchMock = jest.fn();\n mockDispatch.doDispatch = doDispatchMock;\n\n const mockRay = makeMockPixelToSceneRayUC(appObjects) as PixelToSceneRayUC;\n\n mockRay.pixelToSceneRay = mockPicker;\n\n return {\n appObjects,\n pinchUC,\n transform,\n mockPick,\n doDispatchMock,\n mockRay,\n };\n}\n\nfunction mockPicker(pixel: Vector2): ParametricLine {\n return ParametricLine.FromPointDirection(\n new Vector3(pixel.x, pixel.y, 3),\n Vector3.Forward(),\n );\n}\n\ndescribe(\"Pinch Scene Root Use Case\", () => {\n it(\"Move with no scaling adjusts the root as expected\", () => {\n const { pinchUC, transform } = makeTestRig();\n\n transform.worldPosition = new Vector3(1, 2, 3);\n\n const touch1 = new Vector2(5, 8);\n const touch2 = new Vector2(5, 0);\n pinchUC.initializePinch(touch1, touch2);\n\n const touch3 = new Vector2(0, 8);\n const touch4 = new Vector2(0, 0);\n pinchUC.doPinch(touch3, touch4);\n\n const expected = new Vector3(-4, 2, 3); // -5 in the x\n\n const wPos = transform.worldPosition;\n expect(Vector3.Close(wPos, expected)).toEqual(true);\n });\n\n it(\"Plane pick is relative\", () => {\n const { pinchUC, transform, mockPick } = makeTestRig();\n\n mockPick.scenePixelPick.mockReturnValue(new Vector3(10, 20, 60));\n\n transform.worldPosition = new Vector3(1, 2, 3);\n\n const touch1 = new Vector2(5, 8);\n const touch2 = new Vector2(5, 0);\n pinchUC.initializePinch(touch1, touch2);\n\n const touch3 = new Vector2(0, 8);\n const touch4 = new Vector2(0, 0);\n pinchUC.doPinch(touch3, touch4);\n\n const expected = new Vector3(-4, 2, 3); // -5 in the x\n\n const wPos = transform.worldPosition;\n expect(Vector3.Close(wPos, expected)).toEqual(true);\n });\n\n it(\"Scales smaller with a pinch that moves closer\", () => {\n const { pinchUC, transform } = makeTestRig();\n transform.worldPosition = new Vector3(0, 0, 0);\n transform.worldScale = Vector3.One();\n\n const touch1 = new Vector2(0, 8);\n const touch2 = new Vector2(0, -8);\n pinchUC.initializePinch(touch1, touch2);\n\n const touch3 = new Vector2(0, 4);\n const touch4 = new Vector2(0, -4);\n pinchUC.doPinch(touch3, touch4);\n\n const expectedScaleDelta = pinchUC.sensitivity * 8;\n\n expect(transform.worldScale.x).toEqual(1 - expectedScaleDelta);\n });\n\n it(\"Scales larger with a pinch that moves further\", () => {\n const { pinchUC, transform } = makeTestRig();\n transform.worldPosition = new Vector3(0, 0, 0);\n transform.worldScale = Vector3.One();\n\n const touch1 = new Vector2(0, 8);\n const touch2 = new Vector2(0, -8);\n pinchUC.initializePinch(touch1, touch2);\n\n const touch3 = new Vector2(0, 12);\n const touch4 = new Vector2(0, -12);\n pinchUC.doPinch(touch3, touch4);\n\n const expectedScaleDelta = pinchUC.sensitivity * 8;\n expect(transform.worldScale.x).toEqual(1 + expectedScaleDelta);\n });\n\n it(\"Dispatches a state change if the position has changed since init\", () => {\n const { transform, pinchUC, doDispatchMock } = makeTestRig();\n\n transform.worldScale = new Vector3(5, 5, 5);\n const touch1 = new Vector2(0, 8);\n const touch2 = new Vector2(0, -8);\n pinchUC.initializePinch(touch1, touch2);\n\n transform.worldScale = new Vector3(6, 6, 6);\n pinchUC.finishPinch();\n\n expect(doDispatchMock).toHaveBeenCalled();\n });\n\n it(\"Does not dispatch a state change if the scale has not changed\", () => {\n const { transform, pinchUC, doDispatchMock } = makeTestRig();\n\n transform.worldScale = new Vector3(5, 5, 5);\n const touch1 = new Vector2(0, 8);\n const touch2 = new Vector2(0, -8);\n pinchUC.initializePinch(touch1, touch2);\n\n pinchUC.finishPinch();\n\n expect(doDispatchMock).not.toHaveBeenCalled();\n });\n\n it(\"Does not update if not enabled\", () => {\n const { pinchUC, transform } = makeTestRig();\n\n pinchUC.enabled = false;\n transform.worldPosition = Vector3.Zero();\n\n const touch1 = new Vector2(5, 8);\n const touch2 = new Vector2(5, 0);\n pinchUC.initializePinch(touch1, touch2);\n\n const touch3 = new Vector2(0, 8);\n const touch4 = new Vector2(0, 0);\n pinchUC.doPinch(touch3, touch4);\n\n expect(transform.worldPosition).toEqual(Vector3.Zero());\n });\n});\n"]}
1
+ {"version":3,"file":"PinchTransform.test.js","sourceRoot":"","sources":["../../../../src/Transform3D/UC/PinchTransform.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\nimport { ParametricLine, Vector2, Vector3 } from \"@vived/core\";\nimport {\n makeMockPixelToSceneRayUC,\n makeMockScenePixelPickUC,\n PixelToSceneRayUC,\n} from \"../../Babylon\";\nimport { makeMockDispatchStateChange } from \"../../Dispatcher/Mocks/MockDispatchStateChange\";\nimport { makeTransform3D } from \"../Entities\";\nimport { makePinchTransformUC } from \"./PinchTransform\";\n\nfunction makeTestRig() {\n const appObjects = makeAppObjectRepo();\n const ao = appObjects.getOrCreate(\"AO\");\n const transform = makeTransform3D(ao);\n\n const pinchUC = makePinchTransformUC(ao);\n\n const mockPick = makeMockScenePixelPickUC(appObjects);\n mockPick.scenePixelPick = jest.fn();\n const mockDispatch = makeMockDispatchStateChange(appObjects);\n const doDispatchMock = jest.fn();\n mockDispatch.doDispatch = doDispatchMock;\n\n const mockRay = makeMockPixelToSceneRayUC(appObjects) as PixelToSceneRayUC;\n\n mockRay.pixelToSceneRay = mockPicker;\n\n return {\n appObjects,\n pinchUC,\n transform,\n mockPick,\n doDispatchMock,\n mockRay,\n };\n}\n\nfunction mockPicker(pixel: Vector2): ParametricLine {\n return ParametricLine.FromPointDirection(\n new Vector3(pixel.x, pixel.y, 3),\n Vector3.Forward()\n );\n}\n\ndescribe(\"Pinch Scene Root Use Case\", () => {\n it(\"Move with no scaling adjusts the root as expected\", () => {\n const { pinchUC, transform } = makeTestRig();\n\n transform.worldPosition = new Vector3(1, 2, 3);\n\n const touch1 = new Vector2(5, 8);\n const touch2 = new Vector2(5, 0);\n pinchUC.initializePinch(touch1, touch2);\n\n const touch3 = new Vector2(0, 8);\n const touch4 = new Vector2(0, 0);\n pinchUC.doPinch(touch3, touch4);\n\n const expected = new Vector3(-4, 2, 3); // -5 in the x\n\n const wPos = transform.worldPosition;\n expect(Vector3.Close(wPos, expected)).toEqual(true);\n });\n\n it(\"Plane pick is relative\", () => {\n const { pinchUC, transform, mockPick } = makeTestRig();\n\n (mockPick.scenePixelPick as jest.Mock).mockReturnValue(\n new Vector3(10, 20, 60)\n );\n\n transform.worldPosition = new Vector3(1, 2, 3);\n\n const touch1 = new Vector2(5, 8);\n const touch2 = new Vector2(5, 0);\n pinchUC.initializePinch(touch1, touch2);\n\n const touch3 = new Vector2(0, 8);\n const touch4 = new Vector2(0, 0);\n pinchUC.doPinch(touch3, touch4);\n\n const expected = new Vector3(-4, 2, 3); // -5 in the x\n\n const wPos = transform.worldPosition;\n expect(Vector3.Close(wPos, expected)).toEqual(true);\n });\n\n it(\"Scales smaller with a pinch that moves closer\", () => {\n const { pinchUC, transform } = makeTestRig();\n transform.worldPosition = new Vector3(0, 0, 0);\n transform.worldScale = Vector3.One();\n\n const touch1 = new Vector2(0, 8);\n const touch2 = new Vector2(0, -8);\n pinchUC.initializePinch(touch1, touch2);\n\n const touch3 = new Vector2(0, 4);\n const touch4 = new Vector2(0, -4);\n pinchUC.doPinch(touch3, touch4);\n\n const expectedScaleDelta = pinchUC.sensitivity * 8;\n\n expect(transform.worldScale.x).toEqual(1 - expectedScaleDelta);\n });\n\n it(\"Scales larger with a pinch that moves further\", () => {\n const { pinchUC, transform } = makeTestRig();\n transform.worldPosition = new Vector3(0, 0, 0);\n transform.worldScale = Vector3.One();\n\n const touch1 = new Vector2(0, 8);\n const touch2 = new Vector2(0, -8);\n pinchUC.initializePinch(touch1, touch2);\n\n const touch3 = new Vector2(0, 12);\n const touch4 = new Vector2(0, -12);\n pinchUC.doPinch(touch3, touch4);\n\n const expectedScaleDelta = pinchUC.sensitivity * 8;\n expect(transform.worldScale.x).toEqual(1 + expectedScaleDelta);\n });\n\n it(\"Dispatches a state change if the position has changed since init\", () => {\n const { transform, pinchUC, doDispatchMock } = makeTestRig();\n\n transform.worldScale = new Vector3(5, 5, 5);\n const touch1 = new Vector2(0, 8);\n const touch2 = new Vector2(0, -8);\n pinchUC.initializePinch(touch1, touch2);\n\n transform.worldScale = new Vector3(6, 6, 6);\n pinchUC.finishPinch();\n\n expect(doDispatchMock).toHaveBeenCalled();\n });\n\n it(\"Does not dispatch a state change if the scale has not changed\", () => {\n const { transform, pinchUC, doDispatchMock } = makeTestRig();\n\n transform.worldScale = new Vector3(5, 5, 5);\n const touch1 = new Vector2(0, 8);\n const touch2 = new Vector2(0, -8);\n pinchUC.initializePinch(touch1, touch2);\n\n pinchUC.finishPinch();\n\n expect(doDispatchMock).not.toHaveBeenCalled();\n });\n\n it(\"Does not update if not enabled\", () => {\n const { pinchUC, transform } = makeTestRig();\n\n pinchUC.enabled = false;\n transform.worldPosition = Vector3.Zero();\n\n const touch1 = new Vector2(5, 8);\n const touch2 = new Vector2(5, 0);\n pinchUC.initializePinch(touch1, touch2);\n\n const touch3 = new Vector2(0, 8);\n const touch4 = new Vector2(0, 0);\n pinchUC.doPinch(touch3, touch4);\n\n expect(transform.worldPosition).toEqual(Vector3.Zero());\n });\n});\n"]}
@@ -9,6 +9,7 @@ function makeTestRig() {
9
9
  const appObj = appObjects.getOrCreate("appObj");
10
10
  const screenPeelUC = new MockPanTransformUC(appObj);
11
11
  const mockPixelToRay = makeMockPixelToSceneRayUC(appObjects);
12
+ mockPixelToRay.pixelToSceneRay = jest.fn();
12
13
  const mockPickResult = {
13
14
  hit: true,
14
15
  worldPickPoint: new Vector3(1, 2, 3),
@@ -1 +1 @@
1
- {"version":3,"file":"TryPanTransformUC.test.js","sourceRoot":"","sources":["../../../../src/Transform3D/UC/TryPanTransformUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n makeAppObjectRepo,\n ParametricLine,\n Vector2,\n Vector3,\n} from \"@vived/core\";\nimport {\n makeMockPixelToSceneRayUC,\n makeMockSceneRayPickUC,\n SceneRayPick,\n} from \"../../Babylon\";\nimport { MockPanTransformUC } from \"../Mocks\";\nimport { makeTryPanTransformUC } from \"./TryPanTransformUC\";\n\nfunction makeTestRig() {\n const appObjects = makeAppObjectRepo();\n\n const tryDragAO = appObjects.getOrCreate(\"tryDragAO\");\n const uc = makeTryPanTransformUC(tryDragAO);\n\n const appObj = appObjects.getOrCreate(\"appObj\");\n const screenPeelUC = new MockPanTransformUC(appObj);\n\n const mockPixelToRay = makeMockPixelToSceneRayUC(appObjects);\n\n const mockPickResult: SceneRayPick = {\n hit: true,\n worldPickPoint: new Vector3(1, 2, 3),\n appObjectID: \"appObj\",\n };\n\n const mockRayPick = makeMockSceneRayPickUC(appObjects);\n const mockPick = jest.fn().mockReturnValue(mockPickResult);\n mockRayPick.sceneRayPick = mockPick;\n\n mockPick.mockReturnValue(mockPickResult);\n\n return { appObjects, uc, mockPickResult, screenPeelUC, mockPixelToRay };\n}\n\ndescribe(\"Default Try Screen Drag Transform UC\", () => {\n it(\"Returns true if the initialization is successful\", () => {\n const { uc } = makeTestRig();\n expect(uc.tryWithRay(ParametricLine.Forward())).toEqual(true);\n });\n\n it(\"Returns false if the pick doesn't return an app id\", () => {\n const { mockPickResult, uc } = makeTestRig();\n mockPickResult.appObjectID = undefined;\n\n expect(uc.tryWithRay(ParametricLine.Forward())).toEqual(false);\n });\n\n it(\"Returns false if the picked app object doesn't have a ScreenPeelTransformUC\", () => {\n const { mockPickResult, uc } = makeTestRig();\n mockPickResult.appObjectID = \"somethingElse\";\n\n expect(uc.tryWithRay(ParametricLine.Forward())).toEqual(false);\n });\n\n it(\"Initializes the peel UC\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.tryWithRay(ParametricLine.Forward());\n\n expect(screenPeelUC.initializeRay).toHaveBeenCalledWith(\n ParametricLine.Forward(),\n );\n });\n\n it(\"Updates the screenPeelUC\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.tryWithRay(ParametricLine.Forward());\n uc.moveWithRay(ParametricLine.Forward());\n\n expect(screenPeelUC.updateRay).toHaveBeenCalledWith(\n ParametricLine.Forward(),\n );\n });\n\n it(\"Doesn't update if the init did not happen the screenPeelUC\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.moveWithRay(ParametricLine.Forward());\n\n expect(screenPeelUC.updateRay).not.toHaveBeenCalled();\n });\n\n it(\"Stop the UC\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.tryWithRay(ParametricLine.Forward());\n uc.stop();\n\n expect(screenPeelUC.finish).toHaveBeenCalled();\n });\n\n it(\"Doesn't stop if the init did not happen the screenPeelUC\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.stop();\n\n expect(screenPeelUC.finish).not.toHaveBeenCalled();\n });\n\n it(\"Cancels the UC\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.tryWithRay(ParametricLine.Forward());\n uc.cancel();\n\n expect(screenPeelUC.cancelPan).toHaveBeenCalled();\n });\n\n it(\"Doesn't cancel if the init did not happen the screenPeelUC\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.cancel();\n\n expect(screenPeelUC.cancelPan).not.toHaveBeenCalled();\n });\n\n it(\"Doesn't update or stop after a cancel\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.tryWithRay(ParametricLine.Forward());\n uc.cancel();\n\n uc.moveWithRay(ParametricLine.Forward());\n uc.stop();\n\n expect(screenPeelUC.updateRay).not.toHaveBeenCalled();\n expect(screenPeelUC.finish).not.toHaveBeenCalled();\n });\n\n it(\"Doesn't update or stop if not allowed\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.allow = () => {\n return false;\n };\n\n uc.tryWithRay(ParametricLine.Forward());\n uc.moveWithRay(ParametricLine.Forward());\n uc.stop();\n\n expect(screenPeelUC.updateRay).not.toHaveBeenCalled();\n expect(screenPeelUC.finish).not.toHaveBeenCalled();\n });\n\n it(\"Forms the ray and initializes with it when a pixel is passed in\", () => {\n const { uc, mockPixelToRay } = makeTestRig();\n\n const initSpy = jest.spyOn(uc, \"tryWithRay\");\n const ray = ParametricLine.FromTwoPoint(\n new Vector3(1, 2, 3),\n new Vector3(4, 5, 6),\n );\n mockPixelToRay.pixelToSceneRay.mockReturnValue(ray);\n\n uc.tryWithPixel(new Vector2(8, 9));\n\n expect(mockPixelToRay.pixelToSceneRay).toHaveBeenCalledWith(\n new Vector2(8, 9),\n );\n expect(initSpy).toHaveBeenCalledWith(ray);\n });\n\n it(\"Forms the ray and moves with it when a pixel is passed in\", () => {\n const { uc, mockPixelToRay } = makeTestRig();\n\n const moveSpy = jest.spyOn(uc, \"moveWithRay\");\n const ray = ParametricLine.FromTwoPoint(\n new Vector3(1, 2, 3),\n new Vector3(4, 5, 6),\n );\n mockPixelToRay.pixelToSceneRay.mockReturnValue(ray);\n\n uc.moveWithPixel(new Vector2(8, 9));\n\n expect(mockPixelToRay.pixelToSceneRay).toHaveBeenCalledWith(\n new Vector2(8, 9),\n );\n expect(moveSpy).toHaveBeenCalledWith(ray);\n });\n});\n"]}
1
+ {"version":3,"file":"TryPanTransformUC.test.js","sourceRoot":"","sources":["../../../../src/Transform3D/UC/TryPanTransformUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n makeAppObjectRepo,\n ParametricLine,\n Vector2,\n Vector3,\n} from \"@vived/core\";\nimport {\n makeMockPixelToSceneRayUC,\n makeMockSceneRayPickUC,\n SceneRayPick,\n} from \"../../Babylon\";\nimport { MockPanTransformUC } from \"../Mocks\";\nimport { makeTryPanTransformUC } from \"./TryPanTransformUC\";\n\nfunction makeTestRig() {\n const appObjects = makeAppObjectRepo();\n\n const tryDragAO = appObjects.getOrCreate(\"tryDragAO\");\n const uc = makeTryPanTransformUC(tryDragAO);\n\n const appObj = appObjects.getOrCreate(\"appObj\");\n const screenPeelUC = new MockPanTransformUC(appObj);\n\n const mockPixelToRay = makeMockPixelToSceneRayUC(appObjects);\n mockPixelToRay.pixelToSceneRay = jest.fn();\n\n const mockPickResult: SceneRayPick = {\n hit: true,\n worldPickPoint: new Vector3(1, 2, 3),\n appObjectID: \"appObj\",\n };\n\n const mockRayPick = makeMockSceneRayPickUC(appObjects);\n const mockPick = jest.fn().mockReturnValue(mockPickResult);\n mockRayPick.sceneRayPick = mockPick;\n\n mockPick.mockReturnValue(mockPickResult);\n\n return { appObjects, uc, mockPickResult, screenPeelUC, mockPixelToRay };\n}\n\ndescribe(\"Default Try Screen Drag Transform UC\", () => {\n it(\"Returns true if the initialization is successful\", () => {\n const { uc } = makeTestRig();\n expect(uc.tryWithRay(ParametricLine.Forward())).toEqual(true);\n });\n\n it(\"Returns false if the pick doesn't return an app id\", () => {\n const { mockPickResult, uc } = makeTestRig();\n mockPickResult.appObjectID = undefined;\n\n expect(uc.tryWithRay(ParametricLine.Forward())).toEqual(false);\n });\n\n it(\"Returns false if the picked app object doesn't have a ScreenPeelTransformUC\", () => {\n const { mockPickResult, uc } = makeTestRig();\n mockPickResult.appObjectID = \"somethingElse\";\n\n expect(uc.tryWithRay(ParametricLine.Forward())).toEqual(false);\n });\n\n it(\"Initializes the peel UC\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.tryWithRay(ParametricLine.Forward());\n\n expect(screenPeelUC.initializeRay).toHaveBeenCalledWith(\n ParametricLine.Forward()\n );\n });\n\n it(\"Updates the screenPeelUC\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.tryWithRay(ParametricLine.Forward());\n uc.moveWithRay(ParametricLine.Forward());\n\n expect(screenPeelUC.updateRay).toHaveBeenCalledWith(\n ParametricLine.Forward()\n );\n });\n\n it(\"Doesn't update if the init did not happen the screenPeelUC\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.moveWithRay(ParametricLine.Forward());\n\n expect(screenPeelUC.updateRay).not.toHaveBeenCalled();\n });\n\n it(\"Stop the UC\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.tryWithRay(ParametricLine.Forward());\n uc.stop();\n\n expect(screenPeelUC.finish).toHaveBeenCalled();\n });\n\n it(\"Doesn't stop if the init did not happen the screenPeelUC\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.stop();\n\n expect(screenPeelUC.finish).not.toHaveBeenCalled();\n });\n\n it(\"Cancels the UC\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.tryWithRay(ParametricLine.Forward());\n uc.cancel();\n\n expect(screenPeelUC.cancelPan).toHaveBeenCalled();\n });\n\n it(\"Doesn't cancel if the init did not happen the screenPeelUC\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.cancel();\n\n expect(screenPeelUC.cancelPan).not.toHaveBeenCalled();\n });\n\n it(\"Doesn't update or stop after a cancel\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.tryWithRay(ParametricLine.Forward());\n uc.cancel();\n\n uc.moveWithRay(ParametricLine.Forward());\n uc.stop();\n\n expect(screenPeelUC.updateRay).not.toHaveBeenCalled();\n expect(screenPeelUC.finish).not.toHaveBeenCalled();\n });\n\n it(\"Doesn't update or stop if not allowed\", () => {\n const { uc, screenPeelUC } = makeTestRig();\n\n uc.allow = () => {\n return false;\n };\n\n uc.tryWithRay(ParametricLine.Forward());\n uc.moveWithRay(ParametricLine.Forward());\n uc.stop();\n\n expect(screenPeelUC.updateRay).not.toHaveBeenCalled();\n expect(screenPeelUC.finish).not.toHaveBeenCalled();\n });\n\n it(\"Forms the ray and initializes with it when a pixel is passed in\", () => {\n const { uc, mockPixelToRay } = makeTestRig();\n\n const initSpy = jest.spyOn(uc, \"tryWithRay\");\n const ray = ParametricLine.FromTwoPoint(\n new Vector3(1, 2, 3),\n new Vector3(4, 5, 6)\n );\n (mockPixelToRay.pixelToSceneRay as jest.Mock).mockReturnValue(ray);\n\n uc.tryWithPixel(new Vector2(8, 9));\n\n expect(mockPixelToRay.pixelToSceneRay).toHaveBeenCalledWith(\n new Vector2(8, 9)\n );\n expect(initSpy).toHaveBeenCalledWith(ray);\n });\n\n it(\"Forms the ray and moves with it when a pixel is passed in\", () => {\n const { uc, mockPixelToRay } = makeTestRig();\n\n const moveSpy = jest.spyOn(uc, \"moveWithRay\");\n const ray = ParametricLine.FromTwoPoint(\n new Vector3(1, 2, 3),\n new Vector3(4, 5, 6)\n );\n (mockPixelToRay.pixelToSceneRay as jest.Mock).mockReturnValue(ray);\n\n uc.moveWithPixel(new Vector2(8, 9));\n\n expect(mockPixelToRay.pixelToSceneRay).toHaveBeenCalledWith(\n new Vector2(8, 9)\n );\n expect(moveSpy).toHaveBeenCalledWith(ray);\n });\n});\n"]}
@@ -1,9 +1,9 @@
1
1
  import { AppObject, AppObjectRepo } from "@vived/core";
2
2
  import { BabylonRenderingUC } from "../UC";
3
3
  export declare class MockBabylonRenderingUC extends BabylonRenderingUC {
4
- submitRenderCanvas: jest.Mock<any, any, any>;
5
- clearRenderCanvas: jest.Mock<any, any, any>;
6
- resize: jest.Mock<any, any, any>;
4
+ submitRenderCanvas: (_canvas: HTMLCanvasElement) => void;
5
+ clearRenderCanvas: () => void;
6
+ resize: () => void;
7
7
  constructor(appObject: AppObject);
8
8
  }
9
9
  export declare function makeMockBabylonRenderingUC(appObjects: AppObjectRepo): MockBabylonRenderingUC;
@@ -1 +1 @@
1
- {"version":3,"file":"MockBabylonRenderingUC.d.ts","sourceRoot":"","sources":["../../../../src/Babylon/Mocks/MockBabylonRenderingUC.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAE3C,qBAAa,sBAAuB,SAAQ,kBAAkB;IAC5D,kBAAkB,2BAAa;IAC/B,iBAAiB,2BAAa;IAC9B,MAAM,2BAAa;gBAEP,SAAS,EAAE,SAAS;CAGjC;AAED,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,aAAa,0BAEnE"}
1
+ {"version":3,"file":"MockBabylonRenderingUC.d.ts","sourceRoot":"","sources":["../../../../src/Babylon/Mocks/MockBabylonRenderingUC.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAE3C,qBAAa,sBAAuB,SAAQ,kBAAkB;IAC5D,kBAAkB,GAAI,SAAS,iBAAiB,KAAG,IAAI,CAAO;IAC9D,iBAAiB,QAAO,IAAI,CAAO;IACnC,MAAM,QAAO,IAAI,CAAO;gBAEZ,SAAS,EAAE,SAAS;CAGjC;AAED,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,aAAa,0BAEnE"}
@@ -1,7 +1,7 @@
1
1
  import { AppObject, AppObjectRepo } from "@vived/core";
2
2
  import { PixelToSceneRayUC } from "../UC";
3
3
  export declare class MockPixelToSceneRayUC extends PixelToSceneRayUC {
4
- pixelToSceneRay: jest.Mock<any, any, any>;
4
+ pixelToSceneRay: (_pixelPos: any) => any;
5
5
  constructor(appObject: AppObject);
6
6
  }
7
7
  export declare function makeMockPixelToSceneRayUC(appObjects: AppObjectRepo): MockPixelToSceneRayUC;
@@ -1 +1 @@
1
- {"version":3,"file":"MockPixelToSceneRayUC.d.ts","sourceRoot":"","sources":["../../../../src/Babylon/Mocks/MockPixelToSceneRayUC.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAE1C,qBAAa,qBAAsB,SAAQ,iBAAiB;IAC1D,eAAe,2BAAa;gBAEhB,SAAS,EAAE,SAAS;CAGjC;AAED,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,aAAa,yBAElE"}
1
+ {"version":3,"file":"MockPixelToSceneRayUC.d.ts","sourceRoot":"","sources":["../../../../src/Babylon/Mocks/MockPixelToSceneRayUC.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAE1C,qBAAa,qBAAsB,SAAQ,iBAAiB;IAC1D,eAAe,GAAI,WAAW,GAAG,KAAG,GAAG,CAAc;gBAEzC,SAAS,EAAE,SAAS;CAGjC;AAED,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,aAAa,yBAElE"}
@@ -1,7 +1,7 @@
1
1
  import { AppObject, AppObjectRepo } from "@vived/core";
2
2
  import { ScenePixelPickUC } from "../UC";
3
3
  export declare class MockScenePixelPickUC extends ScenePixelPickUC {
4
- scenePixelPick: jest.Mock<any, any, any>;
4
+ scenePixelPick: (_pixelPos: any) => any;
5
5
  constructor(appObject: AppObject);
6
6
  }
7
7
  export declare function makeMockScenePixelPickUC(appObjects: AppObjectRepo): MockScenePixelPickUC;
@@ -1 +1 @@
1
- {"version":3,"file":"MockScenePixelPickUC.d.ts","sourceRoot":"","sources":["../../../../src/Babylon/Mocks/MockScenePixelPickUC.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAEzC,qBAAa,oBAAqB,SAAQ,gBAAgB;IACxD,cAAc,2BAAa;gBAEf,SAAS,EAAE,SAAS;CAGjC;AAED,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,aAAa,wBAEjE"}
1
+ {"version":3,"file":"MockScenePixelPickUC.d.ts","sourceRoot":"","sources":["../../../../src/Babylon/Mocks/MockScenePixelPickUC.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAEzC,qBAAa,oBAAqB,SAAQ,gBAAgB;IACxD,cAAc,GAAI,WAAW,GAAG,KAAG,GAAG,CAAc;gBAExC,SAAS,EAAE,SAAS;CAGjC;AAED,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,aAAa,wBAEjE"}
@@ -1,7 +1,7 @@
1
1
  import { AppObject, AppObjectRepo } from "@vived/core";
2
2
  import { SceneRayPickUC } from "../UC";
3
3
  export declare class MockSceneRayPickUC extends SceneRayPickUC {
4
- sceneRayPick: () => undefined;
4
+ sceneRayPick: (_ray: any) => any;
5
5
  constructor(appObject: AppObject);
6
6
  }
7
7
  export declare function makeMockSceneRayPickUC(appObjects: AppObjectRepo): MockSceneRayPickUC;
@@ -1 +1 @@
1
- {"version":3,"file":"MockSceneRayPickUC.d.ts","sourceRoot":"","sources":["../../../../src/Babylon/Mocks/MockSceneRayPickUC.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC,qBAAa,kBAAmB,SAAQ,cAAc;IACpD,YAAY,kBAEV;gBAEU,SAAS,EAAE,SAAS;CAGjC;AAED,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,aAAa,GACxB,kBAAkB,CAEpB"}
1
+ {"version":3,"file":"MockSceneRayPickUC.d.ts","sourceRoot":"","sources":["../../../../src/Babylon/Mocks/MockSceneRayPickUC.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC,qBAAa,kBAAmB,SAAQ,cAAc;IACpD,YAAY,GAAI,MAAM,GAAG,KAAG,GAAG,CAAc;gBAEjC,SAAS,EAAE,SAAS;CAGjC;AAED,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,aAAa,GACxB,kBAAkB,CAEpB"}
@@ -1,7 +1,7 @@
1
1
  import { AppObject, AppObjectRepo } from "@vived/core";
2
2
  import { ShowBabylonInspectorPM } from "../PM/ShowBabylonInspectorPM";
3
3
  export declare class ShowBabylonInspectorPmMock extends ShowBabylonInspectorPM {
4
- vmsAreEqual: jest.Mock<any, any, any>;
4
+ vmsAreEqual: (_vm1: any, _vm2: any) => boolean;
5
5
  constructor(appObject: AppObject);
6
6
  }
7
7
  export declare function makeShowBabylonInspectorPmMock(appObjects: AppObjectRepo): ShowBabylonInspectorPmMock;
@@ -1 +1 @@
1
- {"version":3,"file":"ShowBabylonInspectorPmMock.d.ts","sourceRoot":"","sources":["../../../../src/Babylon/Mocks/ShowBabylonInspectorPmMock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,qBAAa,0BAA2B,SAAQ,sBAAsB;IACpE,WAAW,2BAAa;gBAEZ,SAAS,EAAE,SAAS;CAGjC;AAED,wBAAgB,8BAA8B,CAAC,UAAU,EAAE,aAAa,8BAIvE"}
1
+ {"version":3,"file":"ShowBabylonInspectorPmMock.d.ts","sourceRoot":"","sources":["../../../../src/Babylon/Mocks/ShowBabylonInspectorPmMock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,qBAAa,0BAA2B,SAAQ,sBAAsB;IACpE,WAAW,GAAI,MAAM,GAAG,EAAE,MAAM,GAAG,KAAG,OAAO,CAAU;gBAE3C,SAAS,EAAE,SAAS;CAGjC;AAED,wBAAgB,8BAA8B,CAAC,UAAU,EAAE,aAAa,8BAIvE"}
@@ -1,12 +1,11 @@
1
1
  import { AppObject } from "@vived/core";
2
- import { MouseInputEntity } from "../Entities/MouseInput";
2
+ import { MouseInputEntity, MouseEventHandler } from "../Entities/MouseInput";
3
3
  export declare class MockMouseInput extends MouseInputEntity {
4
4
  get eventElement(): HTMLElement | undefined;
5
- setEventElement: jest.Mock<any, any, any>;
6
- clearInputElement: jest.Mock<any, any, any>;
7
- registerController: jest.Mock<any, any, any>;
8
- removeController: jest.Mock<any, any, any>;
9
- isKeyPressed: jest.Mock<any, any, any>;
5
+ setEventElement: (_eventElement: HTMLElement) => void;
6
+ clearInputElement: () => void;
7
+ registerController: (_controller: MouseEventHandler) => void;
8
+ removeController: (_controller: MouseEventHandler) => void;
10
9
  constructor(appObject: AppObject);
11
10
  }
12
11
  //# sourceMappingURL=MockMouseInput.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MockMouseInput.d.ts","sourceRoot":"","sources":["../../../../src/MouseInput/Mocks/MockMouseInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,qBAAa,cAAe,SAAQ,gBAAgB;IAClD,IAAI,YAAY,IAAI,WAAW,GAAG,SAAS,CAE1C;IACD,eAAe,2BAAa;IAC5B,iBAAiB,2BAAa;IAC9B,kBAAkB,2BAAa;IAC/B,gBAAgB,2BAAa;IAC7B,YAAY,2BAAa;gBAEb,SAAS,EAAE,SAAS;CAGjC"}
1
+ {"version":3,"file":"MockMouseInput.d.ts","sourceRoot":"","sources":["../../../../src/MouseInput/Mocks/MockMouseInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE7E,qBAAa,cAAe,SAAQ,gBAAgB;IAClD,IAAI,YAAY,IAAI,WAAW,GAAG,SAAS,CAE1C;IACD,eAAe,GAAI,eAAe,WAAW,KAAG,IAAI,CAAO;IAC3D,iBAAiB,QAAO,IAAI,CAAO;IACnC,kBAAkB,GAAI,aAAa,iBAAiB,KAAG,IAAI,CAAO;IAClE,gBAAgB,GAAI,aAAa,iBAAiB,KAAG,IAAI,CAAO;gBAEpD,SAAS,EAAE,SAAS;CAGjC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/MouseInput/Mocks/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/MouseInput/Mocks/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/MouseInput/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/MouseInput/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vived/app",
3
- "version": "5.1.2",
3
+ "version": "5.3.0",
4
4
  "description": "Public package of VIVED App Components",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",