@vived/app 3.8.0 → 3.9.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 (335) hide show
  1. package/lib/AppObjectComponents/App/Controller/removeRenderCanvas.d.ts +2 -0
  2. package/lib/AppObjectComponents/App/Controller/removeRenderCanvas.js +14 -0
  3. package/lib/AppObjectComponents/App/Controller/startRenderingApp.d.ts +2 -0
  4. package/lib/AppObjectComponents/App/Controller/startRenderingApp.js +14 -0
  5. package/lib/AppObjectComponents/App/Controller/stopRenderingApp.d.ts +2 -0
  6. package/lib/AppObjectComponents/App/Controller/stopRenderingApp.js +14 -0
  7. package/lib/AppObjectComponents/App/Controller/submitRenderCanvas.d.ts +2 -0
  8. package/lib/AppObjectComponents/App/Controller/submitRenderCanvas.js +14 -0
  9. package/lib/AppObjectComponents/App/Entity/BaseAppState.d.ts +14 -0
  10. package/lib/AppObjectComponents/App/Entity/BaseAppState.js +50 -0
  11. package/lib/AppObjectComponents/App/Mocks/MockAppRenderingUC.d.ts +8 -0
  12. package/lib/AppObjectComponents/App/Mocks/MockAppRenderingUC.js +12 -0
  13. package/lib/AppObjectComponents/App/Mocks/MockRenderCanvasUC.d.ts +8 -0
  14. package/lib/AppObjectComponents/App/Mocks/MockRenderCanvasUC.js +12 -0
  15. package/lib/AppObjectComponents/App/PM/IsAuthoringPM.d.ts +11 -0
  16. package/lib/AppObjectComponents/App/PM/IsAuthoringPM.js +38 -0
  17. package/lib/AppObjectComponents/App/PM/IsReviewingPM.d.ts +11 -0
  18. package/lib/AppObjectComponents/App/PM/IsReviewingPM.js +38 -0
  19. package/lib/AppObjectComponents/App/UseCase/AppRenderingUC.d.ts +8 -0
  20. package/lib/AppObjectComponents/App/UseCase/AppRenderingUC.js +20 -0
  21. package/lib/AppObjectComponents/App/UseCase/RenderCanvasUC.d.ts +10 -0
  22. package/lib/AppObjectComponents/App/UseCase/RenderCanvasUC.js +101 -0
  23. package/lib/AppObjectComponents/App/UseCase/removeRenderCanvas.d.ts +2 -0
  24. package/lib/AppObjectComponents/App/UseCase/removeRenderCanvas.js +23 -0
  25. package/lib/AppObjectComponents/App/UseCase/submitError.d.ts +2 -0
  26. package/lib/AppObjectComponents/App/UseCase/submitError.js +26 -0
  27. package/lib/AppObjectComponents/App/UseCase/submitFatal.d.ts +2 -0
  28. package/lib/AppObjectComponents/App/UseCase/submitFatal.js +26 -0
  29. package/lib/AppObjectComponents/App/UseCase/submitLog.d.ts +2 -0
  30. package/lib/AppObjectComponents/App/UseCase/submitLog.js +26 -0
  31. package/lib/AppObjectComponents/App/UseCase/submitRenderCanvas.d.ts +2 -0
  32. package/lib/AppObjectComponents/App/UseCase/submitRenderCanvas.js +26 -0
  33. package/lib/AppObjectComponents/App/UseCase/submitWarning.d.ts +2 -0
  34. package/lib/AppObjectComponents/App/UseCase/submitWarning.js +26 -0
  35. package/lib/AppObjectComponents/App/index.d.ts +11 -0
  36. package/lib/AppObjectComponents/App/index.js +23 -0
  37. package/lib/AppObjectComponents/Babylon/Entities/BabylonEntity.d.ts +16 -0
  38. package/lib/AppObjectComponents/Babylon/Entities/BabylonEntity.js +80 -0
  39. package/lib/AppObjectComponents/Babylon/Factory/makeBabylon.d.ts +2 -0
  40. package/lib/AppObjectComponents/Babylon/Factory/makeBabylon.js +11 -0
  41. package/lib/AppObjectComponents/Babylon/Mocks/MockBabylonRenderingUC.d.ts +9 -0
  42. package/lib/AppObjectComponents/Babylon/Mocks/MockBabylonRenderingUC.js +13 -0
  43. package/lib/AppObjectComponents/Babylon/PresentationManangers/ShowBabylonInspectorPM.d.ts +8 -0
  44. package/lib/AppObjectComponents/Babylon/PresentationManangers/ShowBabylonInspectorPM.js +28 -0
  45. package/lib/AppObjectComponents/Babylon/UseCases/BabylonRenderingUC.d.ts +9 -0
  46. package/lib/AppObjectComponents/Babylon/UseCases/BabylonRenderingUC.js +20 -0
  47. package/lib/AppObjectComponents/Babylon/UseCases/PixelToSceneRayUC.d.ts +9 -0
  48. package/lib/AppObjectComponents/Babylon/UseCases/PixelToSceneRayUC.js +30 -0
  49. package/lib/AppObjectComponents/Babylon/UseCases/ScenePixelPickUC.d.ts +17 -0
  50. package/lib/AppObjectComponents/Babylon/UseCases/ScenePixelPickUC.js +29 -0
  51. package/lib/AppObjectComponents/Babylon/UseCases/SceneRayPickUC.d.ts +16 -0
  52. package/lib/AppObjectComponents/Babylon/UseCases/SceneRayPickUC.js +29 -0
  53. package/lib/AppObjectComponents/Babylon/index.d.ts +7 -0
  54. package/lib/AppObjectComponents/Babylon/index.js +19 -0
  55. package/lib/AppObjectComponents/ChannelModel/UseCases/ProcessChannelModelUC.d.ts +7 -0
  56. package/lib/AppObjectComponents/ChannelModel/UseCases/ProcessChannelModelUC.js +19 -0
  57. package/lib/AppObjectComponents/ChannelModel/UseCases/SelectChannelModelUC.d.ts +9 -0
  58. package/lib/AppObjectComponents/ChannelModel/UseCases/SelectChannelModelUC.js +63 -0
  59. package/lib/AppObjectComponents/ChannelModel/UseCases/SetupChannelModelUC.d.ts +10 -0
  60. package/lib/AppObjectComponents/ChannelModel/UseCases/SetupChannelModelUC.js +21 -0
  61. package/lib/AppObjectComponents/Dispatcher/Mocks/MockDispatchStateChange.d.ts +9 -0
  62. package/lib/AppObjectComponents/Dispatcher/Mocks/MockDispatchStateChange.js +13 -0
  63. package/lib/AppObjectComponents/Dispatcher/Mocks/MockDispatcher.d.ts +8 -0
  64. package/lib/AppObjectComponents/Dispatcher/Mocks/MockDispatcher.js +12 -0
  65. package/lib/AppObjectComponents/Dispatcher/Mocks/MockLogUC.d.ts +10 -0
  66. package/lib/AppObjectComponents/Dispatcher/Mocks/MockLogUC.js +14 -0
  67. package/lib/AppObjectComponents/Dispatcher/UC/AppIsReadyUC.d.ts +11 -0
  68. package/lib/AppObjectComponents/Dispatcher/UC/AppIsReadyUC.js +55 -0
  69. package/lib/AppObjectComponents/Dispatcher/UC/DispatchStateChangeUC.d.ts +18 -0
  70. package/lib/AppObjectComponents/Dispatcher/UC/DispatchStateChangeUC.js +78 -0
  71. package/lib/AppObjectComponents/Dispatcher/UC/GetAssetBlobURLUC.d.ts +11 -0
  72. package/lib/AppObjectComponents/Dispatcher/UC/GetAssetBlobURLUC.js +72 -0
  73. package/lib/AppObjectComponents/Dispatcher/UC/GetAssetFolderURLUC.d.ts +11 -0
  74. package/lib/AppObjectComponents/Dispatcher/UC/GetAssetFolderURLUC.js +71 -0
  75. package/lib/AppObjectComponents/Dispatcher/UC/GetAssetMetaUC.d.ts +12 -0
  76. package/lib/AppObjectComponents/Dispatcher/UC/GetAssetMetaUC.js +72 -0
  77. package/lib/AppObjectComponents/Dispatcher/UC/GetAssetsForOwnerUC.d.ts +12 -0
  78. package/lib/AppObjectComponents/Dispatcher/UC/GetAssetsForOwnerUC.js +72 -0
  79. package/lib/AppObjectComponents/Dispatcher/UC/GetLinkedAssetsUC.d.ts +12 -0
  80. package/lib/AppObjectComponents/Dispatcher/UC/GetLinkedAssetsUC.js +73 -0
  81. package/lib/AppObjectComponents/Dispatcher/UC/IsAssetFetchedUC.d.ts +11 -0
  82. package/lib/AppObjectComponents/Dispatcher/UC/IsAssetFetchedUC.js +67 -0
  83. package/lib/AppObjectComponents/Dispatcher/UC/LogUC.d.ts +13 -0
  84. package/lib/AppObjectComponents/Dispatcher/UC/LogUC.js +61 -0
  85. package/lib/AppObjectComponents/Dispatcher/UC/RegisterExternalStylesheetsUC.d.ts +11 -0
  86. package/lib/AppObjectComponents/Dispatcher/UC/RegisterExternalStylesheetsUC.js +57 -0
  87. package/lib/AppObjectComponents/Dispatcher/UC/ShowAlertUC.d.ts +16 -0
  88. package/lib/AppObjectComponents/Dispatcher/UC/ShowAlertUC.js +50 -0
  89. package/lib/AppObjectComponents/Dispatcher/UC/ShowConfirmUC.d.ts +18 -0
  90. package/lib/AppObjectComponents/Dispatcher/UC/ShowConfirmUC.js +52 -0
  91. package/lib/AppObjectComponents/Dispatcher/UC/ShowMarkdownEditorUC.d.ts +15 -0
  92. package/lib/AppObjectComponents/Dispatcher/UC/ShowMarkdownEditorUC.js +52 -0
  93. package/lib/AppObjectComponents/Dispatcher/UC/ShowSelectModelUC.d.ts +13 -0
  94. package/lib/AppObjectComponents/Dispatcher/UC/ShowSelectModelUC.js +54 -0
  95. package/lib/AppObjectComponents/Dispatcher/UC/ShowSpinnerUC.d.ts +10 -0
  96. package/lib/AppObjectComponents/Dispatcher/UC/ShowSpinnerUC.js +57 -0
  97. package/lib/AppObjectComponents/Dispatcher/UC/StateHasChangedUC.d.ts +10 -0
  98. package/lib/AppObjectComponents/Dispatcher/UC/StateHasChangedUC.js +49 -0
  99. package/lib/AppObjectComponents/Dispatcher/UC/StateIsCompleteUC.d.ts +11 -0
  100. package/lib/AppObjectComponents/Dispatcher/UC/StateIsCompleteUC.js +55 -0
  101. package/lib/AppObjectComponents/Dispatcher/UC/SubmitResultResultUC.d.ts +43 -0
  102. package/lib/AppObjectComponents/Dispatcher/UC/SubmitResultResultUC.js +159 -0
  103. package/lib/AppObjectComponents/KeyboardInput/Entities/KeyboardInput.d.ts +18 -0
  104. package/lib/AppObjectComponents/KeyboardInput/Entities/KeyboardInput.js +86 -0
  105. package/lib/AppObjectComponents/KeyboardInput/Mocks/MockKeyboardInput.d.ts +12 -0
  106. package/lib/AppObjectComponents/KeyboardInput/Mocks/MockKeyboardInput.js +18 -0
  107. package/lib/AppObjectComponents/KeyboardInput/index.d.ts +1 -0
  108. package/lib/{UseCases/SceneRoot → AppObjectComponents/KeyboardInput}/index.js +1 -2
  109. package/lib/AppObjectComponents/MouseInput/Entities/MouseInput.d.ts +31 -0
  110. package/lib/AppObjectComponents/MouseInput/Entities/MouseInput.js +196 -0
  111. package/lib/AppObjectComponents/MouseInput/Mocks/MockMouseInput.d.ts +12 -0
  112. package/lib/AppObjectComponents/MouseInput/Mocks/MockMouseInput.js +18 -0
  113. package/lib/AppObjectComponents/MouseInput/index.d.ts +1 -0
  114. package/lib/{UseCases/SceneObjects → AppObjectComponents/MouseInput}/index.js +1 -1
  115. package/lib/AppObjectComponents/Question/Controllers/index.d.ts +4 -0
  116. package/lib/{UseCases/SceneModel → AppObjectComponents/Question/Controllers}/index.js +4 -5
  117. package/lib/AppObjectComponents/Question/Controllers/setAnswerFeedback.d.ts +2 -0
  118. package/lib/AppObjectComponents/Question/Controllers/setAnswerFeedback.js +25 -0
  119. package/lib/AppObjectComponents/Question/Controllers/setAnswerText.d.ts +2 -0
  120. package/lib/AppObjectComponents/Question/Controllers/setAnswerText.js +25 -0
  121. package/lib/AppObjectComponents/Question/Controllers/submitQuestionAnswer.d.ts +2 -0
  122. package/lib/AppObjectComponents/Question/Controllers/submitQuestionAnswer.js +14 -0
  123. package/lib/AppObjectComponents/Question/Controllers/toggleAnswerIsCorrect.d.ts +2 -0
  124. package/lib/AppObjectComponents/Question/Controllers/toggleAnswerIsCorrect.js +25 -0
  125. package/lib/AppObjectComponents/Question/Entities/QuestionAnswerEntity.d.ts +36 -0
  126. package/lib/AppObjectComponents/Question/Entities/QuestionAnswerEntity.js +73 -0
  127. package/lib/AppObjectComponents/Question/Entities/QuestionEntity.d.ts +24 -0
  128. package/lib/AppObjectComponents/Question/Entities/QuestionEntity.js +122 -0
  129. package/lib/AppObjectComponents/Question/Entities/index.d.ts +2 -0
  130. package/lib/{UseCases/FocusCamera → AppObjectComponents/Question/Entities}/index.js +2 -7
  131. package/lib/AppObjectComponents/Question/Factories/index.d.ts +2 -0
  132. package/lib/AppObjectComponents/Question/Factories/index.js +14 -0
  133. package/lib/AppObjectComponents/Question/Factories/setupQuestionAnswer.d.ts +3 -0
  134. package/lib/AppObjectComponents/Question/Factories/setupQuestionAnswer.js +20 -0
  135. package/lib/AppObjectComponents/Question/Factories/setupQuestionChallenge.d.ts +3 -0
  136. package/lib/AppObjectComponents/Question/Factories/setupQuestionChallenge.js +22 -0
  137. package/lib/AppObjectComponents/Question/Mocks/MockQuestionAnswerEntity.d.ts +12 -0
  138. package/lib/AppObjectComponents/Question/Mocks/MockQuestionAnswerEntity.js +21 -0
  139. package/lib/AppObjectComponents/Question/PresentationManagers/QuestionAnswerPM.d.ts +19 -0
  140. package/lib/AppObjectComponents/Question/PresentationManagers/QuestionAnswerPM.js +60 -0
  141. package/lib/AppObjectComponents/Question/PresentationManagers/QuestionChallengeAnswerPM.d.ts +20 -0
  142. package/lib/AppObjectComponents/Question/PresentationManagers/QuestionChallengeAnswerPM.js +70 -0
  143. package/lib/AppObjectComponents/Question/PresentationManagers/QuestionChallengePM.d.ts +19 -0
  144. package/lib/AppObjectComponents/Question/PresentationManagers/QuestionChallengePM.js +71 -0
  145. package/lib/AppObjectComponents/Question/PresentationManagers/index.d.ts +2 -0
  146. package/lib/AppObjectComponents/Question/PresentationManagers/index.js +14 -0
  147. package/lib/AppObjectComponents/Question/UseCases/AddQuestionAnswerUC.d.ts +10 -0
  148. package/lib/AppObjectComponents/Question/UseCases/AddQuestionAnswerUC.js +52 -0
  149. package/lib/AppObjectComponents/Question/UseCases/DeleteQuestionAnswerUC.d.ts +10 -0
  150. package/lib/AppObjectComponents/Question/UseCases/DeleteQuestionAnswerUC.js +54 -0
  151. package/lib/AppObjectComponents/Question/UseCases/SerializeQuestionChallenge.d.ts +35 -0
  152. package/lib/AppObjectComponents/Question/UseCases/SerializeQuestionChallenge.js +94 -0
  153. package/lib/AppObjectComponents/Question/UseCases/SetAnswerFeedbackUC.d.ts +7 -0
  154. package/lib/AppObjectComponents/Question/UseCases/SetAnswerFeedbackUC.js +33 -0
  155. package/lib/AppObjectComponents/Question/UseCases/SetAnswerTextUC.d.ts +7 -0
  156. package/lib/AppObjectComponents/Question/UseCases/SetAnswerTextUC.js +33 -0
  157. package/lib/AppObjectComponents/Question/UseCases/SetQuesionAnswerFeedback.d.ts +2 -0
  158. package/lib/AppObjectComponents/Question/UseCases/SetQuesionAnswerFeedback.js +16 -0
  159. package/lib/AppObjectComponents/Question/UseCases/SubmitQuestionAnswerUC.d.ts +9 -0
  160. package/lib/AppObjectComponents/Question/UseCases/SubmitQuestionAnswerUC.js +59 -0
  161. package/lib/AppObjectComponents/Question/UseCases/ToggleQuestionAnswerIsCorrect.d.ts +7 -0
  162. package/lib/AppObjectComponents/Question/UseCases/ToggleQuestionAnswerIsCorrect.js +31 -0
  163. package/lib/AppObjectComponents/Question/UseCases/index.d.ts +7 -0
  164. package/lib/AppObjectComponents/Question/UseCases/index.js +19 -0
  165. package/lib/AppObjectComponents/SceneRoot/Controllers/DoubleTapToFocus.d.ts +20 -0
  166. package/lib/AppObjectComponents/SceneRoot/Controllers/DoubleTapToFocus.js +89 -0
  167. package/lib/AppObjectComponents/SceneRoot/Controllers/MouseClickToFocus.d.ts +11 -0
  168. package/lib/AppObjectComponents/SceneRoot/Controllers/MouseClickToFocus.js +36 -0
  169. package/lib/AppObjectComponents/SceneRoot/Controllers/MouseDoubleClickToRecenter.d.ts +12 -0
  170. package/lib/AppObjectComponents/SceneRoot/Controllers/MouseDoubleClickToRecenter.js +37 -0
  171. package/lib/AppObjectComponents/SceneRoot/Controllers/MouseOrbit.d.ts +14 -0
  172. package/lib/AppObjectComponents/SceneRoot/Controllers/MouseOrbit.js +55 -0
  173. package/lib/AppObjectComponents/SceneRoot/Controllers/MousePan.d.ts +14 -0
  174. package/lib/AppObjectComponents/SceneRoot/Controllers/MousePan.js +50 -0
  175. package/lib/AppObjectComponents/SceneRoot/Controllers/MouseRoll.d.ts +11 -0
  176. package/lib/AppObjectComponents/SceneRoot/Controllers/MouseRoll.js +38 -0
  177. package/lib/AppObjectComponents/SceneRoot/Controllers/MouseScale.d.ts +14 -0
  178. package/lib/AppObjectComponents/SceneRoot/Controllers/MouseScale.js +51 -0
  179. package/lib/AppObjectComponents/SceneRoot/Controllers/TouchOrbit.d.ts +13 -0
  180. package/lib/AppObjectComponents/SceneRoot/Controllers/TouchOrbit.js +52 -0
  181. package/lib/AppObjectComponents/SceneRoot/Controllers/TouchPan.d.ts +13 -0
  182. package/lib/AppObjectComponents/SceneRoot/Controllers/TouchPan.js +53 -0
  183. package/lib/AppObjectComponents/SceneRoot/Controllers/TouchPinch.d.ts +14 -0
  184. package/lib/AppObjectComponents/SceneRoot/Controllers/TouchPinch.js +56 -0
  185. package/lib/AppObjectComponents/SceneRoot/Controllers/TouchScale.d.ts +14 -0
  186. package/lib/AppObjectComponents/SceneRoot/Controllers/TouchScale.js +57 -0
  187. package/lib/AppObjectComponents/SceneRoot/Factory/setupSceneRoot.d.ts +3 -0
  188. package/lib/AppObjectComponents/SceneRoot/Factory/setupSceneRoot.js +28 -0
  189. package/lib/AppObjectComponents/SceneRoot/UC/BumpSceneRootScaleAboutPixelPoint.d.ts +11 -0
  190. package/lib/AppObjectComponents/SceneRoot/UC/BumpSceneRootScaleAboutPixelPoint.js +60 -0
  191. package/lib/AppObjectComponents/SceneRoot/UC/CenterSceneRootOnPixelPick.d.ts +14 -0
  192. package/lib/AppObjectComponents/SceneRoot/UC/CenterSceneRootOnPixelPick.js +62 -0
  193. package/lib/AppObjectComponents/SceneRoot/UC/DragScaleSceneRoot.d.ts +12 -0
  194. package/lib/AppObjectComponents/SceneRoot/UC/DragScaleSceneRoot.js +74 -0
  195. package/lib/AppObjectComponents/SceneRoot/UC/FocusOnPixel.d.ts +13 -0
  196. package/lib/AppObjectComponents/SceneRoot/UC/FocusOnPixel.js +56 -0
  197. package/lib/AppObjectComponents/SceneRoot/UC/OrbitSceneRoot.d.ts +14 -0
  198. package/lib/AppObjectComponents/SceneRoot/UC/OrbitSceneRoot.js +92 -0
  199. package/lib/AppObjectComponents/SceneRoot/UC/PanSceneRoot.d.ts +13 -0
  200. package/lib/AppObjectComponents/SceneRoot/UC/PanSceneRoot.js +86 -0
  201. package/lib/AppObjectComponents/SceneRoot/UC/PinchSceneRoot.d.ts +13 -0
  202. package/lib/AppObjectComponents/SceneRoot/UC/PinchSceneRoot.js +102 -0
  203. package/lib/AppObjectComponents/SceneRoot/UC/ScaleSceneRootWithRay.d.ts +14 -0
  204. package/lib/AppObjectComponents/SceneRoot/UC/ScaleSceneRootWithRay.js +38 -0
  205. package/lib/AppObjectComponents/StateMachine/Entities/StateMachineEntity.d.ts +30 -0
  206. package/lib/AppObjectComponents/StateMachine/Entities/StateMachineEntity.js +105 -0
  207. package/lib/AppObjectComponents/StateMachine/index.d.ts +1 -0
  208. package/lib/AppObjectComponents/StateMachine/index.js +13 -0
  209. package/lib/AppObjectComponents/Tools/Controller/ToolHotkeys.d.ts +9 -0
  210. package/lib/AppObjectComponents/Tools/Controller/ToolHotkeys.js +43 -0
  211. package/lib/AppObjectComponents/Tools/Controller/triggerTool.d.ts +2 -0
  212. package/lib/AppObjectComponents/Tools/Controller/triggerTool.js +14 -0
  213. package/lib/AppObjectComponents/Tools/Entities/ToolEntity.d.ts +39 -0
  214. package/lib/AppObjectComponents/Tools/Entities/ToolEntity.js +95 -0
  215. package/lib/AppObjectComponents/Tools/Entities/ToolRepository.d.ts +17 -0
  216. package/lib/AppObjectComponents/Tools/Entities/ToolRepository.js +132 -0
  217. package/lib/AppObjectComponents/Tools/Factories/setupTool.d.ts +3 -0
  218. package/lib/AppObjectComponents/Tools/Factories/setupTool.js +12 -0
  219. package/lib/AppObjectComponents/Tools/Factories/setupToolRepo.d.ts +4 -0
  220. package/lib/AppObjectComponents/Tools/Factories/setupToolRepo.js +13 -0
  221. package/lib/AppObjectComponents/Tools/PresentationManagers/ToolPM.d.ts +19 -0
  222. package/lib/AppObjectComponents/Tools/PresentationManagers/ToolPM.js +66 -0
  223. package/lib/AppObjectComponents/Tools/index.d.ts +6 -0
  224. package/lib/AppObjectComponents/Tools/index.js +18 -0
  225. package/lib/AppObjectComponents/TouchController/Entities/TouchInput.d.ts +33 -0
  226. package/lib/AppObjectComponents/TouchController/Entities/TouchInput.js +161 -0
  227. package/lib/AppObjectComponents/TouchController/Mock/MockTouchInput.d.ts +13 -0
  228. package/lib/AppObjectComponents/TouchController/Mock/MockTouchInput.js +18 -0
  229. package/lib/AppObjectComponents/TouchController/Mock/mockTouchInputEvent.d.ts +3 -0
  230. package/lib/AppObjectComponents/TouchController/Mock/mockTouchInputEvent.js +26 -0
  231. package/lib/AppObjectComponents/TouchController/index.d.ts +1 -0
  232. package/lib/AppObjectComponents/TouchController/index.js +13 -0
  233. package/lib/AppObjectComponents/XR/Entity/XREntity.d.ts +13 -0
  234. package/lib/AppObjectComponents/XR/Entity/XREntity.js +24 -0
  235. package/lib/AppObjectComponents/XR/UseCase/RenderToXR.d.ts +7 -0
  236. package/lib/AppObjectComponents/XR/UseCase/RenderToXR.js +8 -0
  237. package/lib/AppObjectComponents/XR/index.d.ts +2 -0
  238. package/lib/AppObjectComponents/XR/index.js +14 -0
  239. package/lib/AppObjectComponents/zSpace/Controllers/ZSpaceScaleRoot.d.ts +14 -0
  240. package/lib/AppObjectComponents/zSpace/Controllers/ZSpaceScaleRoot.js +57 -0
  241. package/lib/AppObjectComponents/zSpace/Controllers/ZSpaceStylusRootMovement.d.ts +13 -0
  242. package/lib/AppObjectComponents/zSpace/Controllers/ZSpaceStylusRootMovement.js +51 -0
  243. package/lib/AppObjectComponents/zSpace/Entities/ZSpaceDisplayEntity.d.ts +21 -0
  244. package/lib/AppObjectComponents/zSpace/Entities/ZSpaceDisplayEntity.js +60 -0
  245. package/lib/AppObjectComponents/zSpace/Entities/ZSpaceEntity.d.ts +21 -0
  246. package/lib/AppObjectComponents/zSpace/Entities/ZSpaceEntity.js +64 -0
  247. package/lib/AppObjectComponents/zSpace/Entities/ZSpaceStylusEntity.d.ts +26 -0
  248. package/lib/AppObjectComponents/zSpace/Entities/ZSpaceStylusEntity.js +86 -0
  249. package/lib/AppObjectComponents/zSpace/Entities/ZSpaceViewEntity.d.ts +25 -0
  250. package/lib/AppObjectComponents/zSpace/Entities/ZSpaceViewEntity.js +47 -0
  251. package/lib/AppObjectComponents/zSpace/Factories/makeZSpace.d.ts +3 -0
  252. package/lib/AppObjectComponents/zSpace/Factories/makeZSpace.js +31 -0
  253. package/lib/AppObjectComponents/zSpace/PM/ZSpaceDisplayPM.d.ts +12 -0
  254. package/lib/AppObjectComponents/zSpace/PM/ZSpaceDisplayPM.js +65 -0
  255. package/lib/AppObjectComponents/zSpace/PM/ZSpaceIsEnabledPM.d.ts +6 -0
  256. package/lib/AppObjectComponents/zSpace/PM/ZSpaceIsEnabledPM.js +41 -0
  257. package/lib/AppObjectComponents/zSpace/UseCases/StylusFromGamepadHook.d.ts +18 -0
  258. package/lib/AppObjectComponents/zSpace/UseCases/StylusFromGamepadHook.js +79 -0
  259. package/lib/AppObjectComponents/zSpace/UseCases/StylusRootMovementUC.d.ts +12 -0
  260. package/lib/AppObjectComponents/zSpace/UseCases/StylusRootMovementUC.js +69 -0
  261. package/lib/AppObjectComponents/zSpace/UseCases/ViewFromPoseHook.d.ts +17 -0
  262. package/lib/AppObjectComponents/zSpace/UseCases/ViewFromPoseHook.js +84 -0
  263. package/lib/AppObjectComponents/zSpace/index.d.ts +12 -0
  264. package/lib/AppObjectComponents/zSpace/index.js +24 -0
  265. package/lib/Types/AppBoundary.d.ts +6 -0
  266. package/lib/Types/AppBoundary.js +2 -0
  267. package/lib/Types/AssetMetaDTO.d.ts +5 -0
  268. package/lib/Types/AssetMetaDTO.js +2 -0
  269. package/lib/UseCases/Handlers/SetThemeColorsBase.d.ts +13 -0
  270. package/lib/UseCases/Handlers/SetThemeColorsBase.js +32 -0
  271. package/lib/UseCases/Handlers/index.d.ts +1 -0
  272. package/lib/UseCases/Handlers/index.js +1 -0
  273. package/lib/Utilities/generateUniqueID.d.ts +1 -0
  274. package/lib/Utilities/generateUniqueID.js +8 -0
  275. package/package.json +1 -1
  276. package/lib/Entities/FocusCamera.d.ts +0 -70
  277. package/lib/Entities/FocusCamera.js +0 -272
  278. package/lib/Entities/MemoizedBoolean.d.ts +0 -8
  279. package/lib/Entities/MemoizedBoolean.js +0 -22
  280. package/lib/Entities/MemoizedNumber.d.ts +0 -8
  281. package/lib/Entities/MemoizedNumber.js +0 -22
  282. package/lib/Entities/MemoizedQuaternion.d.ts +0 -9
  283. package/lib/Entities/MemoizedQuaternion.js +0 -23
  284. package/lib/Entities/MemoizedString.d.ts +0 -8
  285. package/lib/Entities/MemoizedString.js +0 -22
  286. package/lib/Entities/MemoizedVector2.d.ts +0 -9
  287. package/lib/Entities/MemoizedVector2.js +0 -23
  288. package/lib/Entities/MemoizedVector3.d.ts +0 -9
  289. package/lib/Entities/MemoizedVector3.js +0 -23
  290. package/lib/Entities/MeshModel.d.ts +0 -68
  291. package/lib/Entities/MeshModel.js +0 -174
  292. package/lib/Entities/ModelObject.d.ts +0 -10
  293. package/lib/Entities/ModelObject.js +0 -42
  294. package/lib/Entities/SceneRoot.d.ts +0 -29
  295. package/lib/Entities/SceneRoot.js +0 -145
  296. package/lib/PresentationManagers/FocusCameraPM.d.ts +0 -15
  297. package/lib/PresentationManagers/FocusCameraPM.js +0 -31
  298. package/lib/PresentationManagers/FocusCameraPosRotPM.d.ts +0 -13
  299. package/lib/PresentationManagers/FocusCameraPosRotPM.js +0 -28
  300. package/lib/PresentationManagers/SceneModel/SceneMeshOverlayPM.d.ts +0 -15
  301. package/lib/PresentationManagers/SceneModel/SceneMeshOverlayPM.js +0 -34
  302. package/lib/UseCases/FocusCamera/BumpDollyFocusCamera.d.ts +0 -17
  303. package/lib/UseCases/FocusCamera/BumpDollyFocusCamera.js +0 -64
  304. package/lib/UseCases/FocusCamera/LerpFocusCamera.d.ts +0 -36
  305. package/lib/UseCases/FocusCamera/LerpFocusCamera.js +0 -71
  306. package/lib/UseCases/FocusCamera/PinchDollyFocusCamera.d.ts +0 -11
  307. package/lib/UseCases/FocusCamera/PinchDollyFocusCamera.js +0 -36
  308. package/lib/UseCases/FocusCamera/PixelDollyFocusCamera.d.ts +0 -11
  309. package/lib/UseCases/FocusCamera/PixelDollyFocusCamera.js +0 -36
  310. package/lib/UseCases/FocusCamera/PixelOrbitFocusCamera.d.ts +0 -11
  311. package/lib/UseCases/FocusCamera/PixelOrbitFocusCamera.js +0 -26
  312. package/lib/UseCases/FocusCamera/PixelPlanePanFocusCamera.d.ts +0 -11
  313. package/lib/UseCases/FocusCamera/PixelPlanePanFocusCamera.js +0 -33
  314. package/lib/UseCases/FocusCamera/SerializeFocusCamera.d.ts +0 -22
  315. package/lib/UseCases/FocusCamera/SerializeFocusCamera.js +0 -81
  316. package/lib/UseCases/FocusCamera/index.d.ts +0 -7
  317. package/lib/UseCases/SceneModel/SerializeActiveModel.d.ts +0 -18
  318. package/lib/UseCases/SceneModel/SerializeActiveModel.js +0 -74
  319. package/lib/UseCases/SceneModel/SetMeshesEnabledHook.d.ts +0 -7
  320. package/lib/UseCases/SceneModel/SetMeshesEnabledHook.js +0 -22
  321. package/lib/UseCases/SceneModel/SetSceneModelMeshOverlayColor.d.ts +0 -2
  322. package/lib/UseCases/SceneModel/SetSceneModelMeshOverlayColor.js +0 -13
  323. package/lib/UseCases/SceneModel/index.d.ts +0 -5
  324. package/lib/UseCases/SceneModel/loadNewModel.d.ts +0 -2
  325. package/lib/UseCases/SceneModel/loadNewModel.js +0 -84
  326. package/lib/UseCases/SceneModel/modelDataLoader.d.ts +0 -3
  327. package/lib/UseCases/SceneModel/modelDataLoader.js +0 -33
  328. package/lib/UseCases/SceneObjects/PeelSceneObject.d.ts +0 -18
  329. package/lib/UseCases/SceneObjects/PeelSceneObject.js +0 -61
  330. package/lib/UseCases/SceneObjects/index.d.ts +0 -1
  331. package/lib/UseCases/SceneRoot/SerializeSceneRoot.d.ts +0 -33
  332. package/lib/UseCases/SceneRoot/SerializeSceneRoot.js +0 -67
  333. package/lib/UseCases/SceneRoot/index.d.ts +0 -2
  334. package/lib/UseCases/SceneRoot/setupSceneRoot.d.ts +0 -2
  335. package/lib/UseCases/SceneRoot/setupSceneRoot.js +0 -11
@@ -0,0 +1,14 @@
1
+ import { AppObject } from "../../../AppObject/AppObject";
2
+ import { AppObjectController } from "../../../AppObject/AppObjectController";
3
+ import { TouchController, TouchInputEvent } from "../../TouchController";
4
+ import { DragScaleSceneRootUC } from "../UC/DragScaleSceneRoot";
5
+ export declare class TouchScale extends AppObjectController implements TouchController {
6
+ static readonly type = "TouchScale";
7
+ private isScaling;
8
+ dragScaleRootUC?: DragScaleSceneRootUC;
9
+ allow: (e: TouchInputEvent) => boolean;
10
+ onTouchStart: (e: TouchInputEvent) => void;
11
+ onTouchMove: (e: TouchInputEvent) => void;
12
+ onTouchEnd: () => void;
13
+ constructor(appObject: AppObject);
14
+ }
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TouchScale = void 0;
4
+ const AppObjectController_1 = require("../../../AppObject/AppObjectController");
5
+ const App_1 = require("../../App");
6
+ const TouchController_1 = require("../../TouchController");
7
+ const DragScaleSceneRoot_1 = require("../UC/DragScaleSceneRoot");
8
+ class TouchScale extends AppObjectController_1.AppObjectController {
9
+ constructor(appObject) {
10
+ super(appObject, TouchScale.type);
11
+ this.isScaling = false;
12
+ this.allow = (e) => {
13
+ return true;
14
+ };
15
+ this.onTouchStart = (e) => {
16
+ var _a;
17
+ this.isScaling = false;
18
+ if (e.touches.length !== 1) {
19
+ return;
20
+ }
21
+ if (!this.allow(e)) {
22
+ return;
23
+ }
24
+ const pixelPosition = e.touches[0].position;
25
+ (_a = this.dragScaleRootUC) === null || _a === void 0 ? void 0 : _a.initializeScale(pixelPosition);
26
+ this.isScaling = true;
27
+ };
28
+ this.onTouchMove = (e) => {
29
+ var _a;
30
+ if (!this.isScaling)
31
+ return;
32
+ if (e.touches.length !== 1)
33
+ return;
34
+ const pixelPosition = e.touches[0].position;
35
+ (_a = this.dragScaleRootUC) === null || _a === void 0 ? void 0 : _a.doScale(pixelPosition);
36
+ };
37
+ this.onTouchEnd = () => {
38
+ var _a;
39
+ this.isScaling = false;
40
+ (_a = this.dragScaleRootUC) === null || _a === void 0 ? void 0 : _a.finishScaling();
41
+ };
42
+ const appObjects = appObject.appObjectRepo;
43
+ this.dragScaleRootUC = DragScaleSceneRoot_1.DragScaleSceneRootUC.get(appObjects);
44
+ if (!this.dragScaleRootUC) {
45
+ App_1.submitWarning("TouchScale", "Unable to finde DragScaleSceneRootUC", appObjects);
46
+ }
47
+ const touchInput = TouchController_1.TouchInputEntity.get(appObjects);
48
+ if (touchInput) {
49
+ touchInput.registerController(this);
50
+ }
51
+ else {
52
+ App_1.submitWarning("TouchOrbit ", "Unable to find TouchInputEntity", appObjects);
53
+ }
54
+ }
55
+ }
56
+ exports.TouchScale = TouchScale;
57
+ TouchScale.type = "TouchScale";
@@ -0,0 +1,3 @@
1
+ import { AppObjectRepo } from "../../../AppObject/AppObjectRepo";
2
+ import { SceneRoot } from "../Entities/SceneRoot";
3
+ export declare function setupSceneRoot(appObjects: AppObjectRepo): SceneRoot;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setupSceneRoot = void 0;
4
+ const Transform3D_1 = require("../../Transform3D");
5
+ const SceneRoot_1 = require("../Entities/SceneRoot");
6
+ const BumpSceneRootScaleAboutPixelPoint_1 = require("../UC/BumpSceneRootScaleAboutPixelPoint");
7
+ const CenterSceneRootOnPixelPick_1 = require("../UC/CenterSceneRootOnPixelPick");
8
+ const DragScaleSceneRoot_1 = require("../UC/DragScaleSceneRoot");
9
+ const FocusOnPixel_1 = require("../UC/FocusOnPixel");
10
+ const OrbitSceneRoot_1 = require("../UC/OrbitSceneRoot");
11
+ const PanSceneRoot_1 = require("../UC/PanSceneRoot");
12
+ const PinchSceneRoot_1 = require("../UC/PinchSceneRoot");
13
+ const ScaleSceneRootWithRay_1 = require("../UC/ScaleSceneRootWithRay");
14
+ function setupSceneRoot(appObjects) {
15
+ const sceneRootAO = appObjects.getOrCreate(SceneRoot_1.SceneRoot.type);
16
+ const sceneRoot = SceneRoot_1.makeSceneRoot(sceneRootAO);
17
+ BumpSceneRootScaleAboutPixelPoint_1.makeBumpSceneRootScaleAboutPixelPointUC(sceneRootAO);
18
+ CenterSceneRootOnPixelPick_1.makeCenterSceneRootOnPixelPickUC(sceneRootAO);
19
+ DragScaleSceneRoot_1.makeDragScaleSceneRootUC(sceneRootAO);
20
+ FocusOnPixel_1.makeFocusOnPixelUC(sceneRootAO);
21
+ OrbitSceneRoot_1.makeOrbitSceneRootUC(sceneRootAO);
22
+ PanSceneRoot_1.makePanSceneRootUC(sceneRootAO);
23
+ PinchSceneRoot_1.makePinchSceneRootUC(sceneRootAO);
24
+ new Transform3D_1.Transform3DPM(sceneRootAO);
25
+ new ScaleSceneRootWithRay_1.ScaleSceneRootWithRay(sceneRootAO);
26
+ return sceneRoot;
27
+ }
28
+ exports.setupSceneRoot = setupSceneRoot;
@@ -0,0 +1,11 @@
1
+ import { AppObject } from "../../../AppObject/AppObject";
2
+ import { AppObjectRepo } from "../../../AppObject/AppObjectRepo";
3
+ import { AppObjectUC } from "../../../AppObject/AppObjectUC";
4
+ import { Vector2 } from "../../../ValueObjects";
5
+ export declare abstract class BumpSceneRootScaleAboutPixelPointUC extends AppObjectUC {
6
+ static readonly type = "BumpSceneRootScaleAboutPixelPoint";
7
+ abstract allow(): boolean;
8
+ abstract bump(direction: "IN" | "OUT", pixelPosition: Vector2): void;
9
+ static get(appObjects: AppObjectRepo): BumpSceneRootScaleAboutPixelPointUC | undefined;
10
+ }
11
+ export declare function makeBumpSceneRootScaleAboutPixelPointUC(appObject: AppObject): BumpSceneRootScaleAboutPixelPointUC;
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.makeBumpSceneRootScaleAboutPixelPointUC = exports.BumpSceneRootScaleAboutPixelPointUC = void 0;
4
+ const AppObjectUC_1 = require("../../../AppObject/AppObjectUC");
5
+ const ValueObjects_1 = require("../../../ValueObjects");
6
+ const App_1 = require("../../App");
7
+ const Babylon_1 = require("../../Babylon");
8
+ const Dispatcher_1 = require("../../Dispatcher");
9
+ const SceneRoot_1 = require("../Entities/SceneRoot");
10
+ class BumpSceneRootScaleAboutPixelPointUC extends AppObjectUC_1.AppObjectUC {
11
+ static get(appObjects) {
12
+ const selectionEntities = appObjects.getAllComponents(BumpSceneRootScaleAboutPixelPointUC.type);
13
+ if (selectionEntities.length === 0) {
14
+ App_1.submitWarning(BumpSceneRootScaleAboutPixelPointUC.type, `Unable to find component ${BumpSceneRootScaleAboutPixelPointUC.type}. Add one on Mount`, appObjects);
15
+ return undefined;
16
+ }
17
+ else if (selectionEntities.length > 1) {
18
+ App_1.submitWarning(BumpSceneRootScaleAboutPixelPointUC.type, `Multiple ${BumpSceneRootScaleAboutPixelPointUC.type} found. There should only be one. Using the first one`, appObjects);
19
+ }
20
+ return selectionEntities[0];
21
+ }
22
+ }
23
+ exports.BumpSceneRootScaleAboutPixelPointUC = BumpSceneRootScaleAboutPixelPointUC;
24
+ BumpSceneRootScaleAboutPixelPointUC.type = "BumpSceneRootScaleAboutPixelPoint";
25
+ function makeBumpSceneRootScaleAboutPixelPointUC(appObject) {
26
+ return new BumpSceneRootScaleAboutPixelPointImp(appObject);
27
+ }
28
+ exports.makeBumpSceneRootScaleAboutPixelPointUC = makeBumpSceneRootScaleAboutPixelPointUC;
29
+ class BumpSceneRootScaleAboutPixelPointImp extends BumpSceneRootScaleAboutPixelPointUC {
30
+ constructor(appObject) {
31
+ super(appObject, BumpSceneRootScaleAboutPixelPointUC.type);
32
+ this.sensitivity = 0.1;
33
+ this.allow = () => {
34
+ return true;
35
+ };
36
+ this.bump = (direction, pixelPosition) => {
37
+ var _a;
38
+ if (!this.sceneRoot)
39
+ return;
40
+ if (!this.allow())
41
+ return;
42
+ let bumpDirection = -1;
43
+ if (direction === "IN") {
44
+ bumpDirection = 1;
45
+ }
46
+ const currentScale = this.sceneRoot.scale;
47
+ const scaleDelta = bumpDirection * this.sensitivity * currentScale;
48
+ const pick = Babylon_1.scenePixelPick(pixelPosition, this.appObjects);
49
+ const pickPoint = (_a = pick === null || pick === void 0 ? void 0 : pick.worldPickPoint) !== null && _a !== void 0 ? _a : ValueObjects_1.Vector3.Zero();
50
+ this.sceneRoot.bumpScaleAboutPoint(scaleDelta, pickPoint);
51
+ Dispatcher_1.dispatchStateChange(this.appObjects);
52
+ };
53
+ this.appObjects = appObject.appObjectRepo;
54
+ this.sceneRoot = appObject.getComponent(SceneRoot_1.SceneRoot.type);
55
+ if (!this.sceneRoot) {
56
+ App_1.submitWarning("BumpSceneRootScaleAboutPixelPoint", "BumpSceneRootScaleAboutPixelPointImp UC has been added to an App Object that does not have a SceneRoot Entity", this.appObjects);
57
+ return;
58
+ }
59
+ }
60
+ }
@@ -0,0 +1,14 @@
1
+ import { AppObject } from "../../../AppObject/AppObject";
2
+ import { AppObjectRepo } from "../../../AppObject/AppObjectRepo";
3
+ import { AppObjectUC } from "../../../AppObject/AppObjectUC";
4
+ import { EaseFn } from "../../../Types";
5
+ import { Vector2 } from "../../../ValueObjects";
6
+ export declare abstract class CenterSceneRootOnPixelPickUC extends AppObjectUC {
7
+ static readonly type = "CenterSceneRootOnPixelPickUC";
8
+ abstract durationMS: number;
9
+ abstract easeFn: EaseFn;
10
+ abstract centerOnPixel: (pixel: Vector2) => void;
11
+ static get(appObjects: AppObjectRepo): CenterSceneRootOnPixelPickUC | undefined;
12
+ }
13
+ export declare function makeCenterSceneRootOnPixelPickUC(appObject: AppObject): CenterSceneRootOnPixelPickUC;
14
+ export declare function centerOnPixel(pixel: Vector2, appObjects: AppObjectRepo): void;
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.centerOnPixel = exports.makeCenterSceneRootOnPixelPickUC = exports.CenterSceneRootOnPixelPickUC = void 0;
4
+ const AppObjectUC_1 = require("../../../AppObject/AppObjectUC");
5
+ const App_1 = require("../../App");
6
+ const Babylon_1 = require("../../Babylon");
7
+ const Dispatcher_1 = require("../../Dispatcher");
8
+ const SceneRoot_1 = require("../Entities/SceneRoot");
9
+ class CenterSceneRootOnPixelPickUC extends AppObjectUC_1.AppObjectUC {
10
+ static get(appObjects) {
11
+ const components = appObjects.getAllComponents(CenterSceneRootOnPixelPickUC.type);
12
+ if (components.length === 0) {
13
+ App_1.submitWarning(CenterSceneRootOnPixelPickUC.type, `Unable to find component ${CenterSceneRootOnPixelPickUC.type}. Add one on Mount`, appObjects);
14
+ return undefined;
15
+ }
16
+ else if (components.length > 1) {
17
+ App_1.submitWarning(CenterSceneRootOnPixelPickUC.type, `Multiple ${CenterSceneRootOnPixelPickUC.type} found. There should only be one. Using the first one`, appObjects);
18
+ }
19
+ return components[0];
20
+ }
21
+ }
22
+ exports.CenterSceneRootOnPixelPickUC = CenterSceneRootOnPixelPickUC;
23
+ CenterSceneRootOnPixelPickUC.type = "CenterSceneRootOnPixelPickUC";
24
+ function makeCenterSceneRootOnPixelPickUC(appObject) {
25
+ return new CenterSceneRootOnPixelPickImp(appObject);
26
+ }
27
+ exports.makeCenterSceneRootOnPixelPickUC = makeCenterSceneRootOnPixelPickUC;
28
+ class CenterSceneRootOnPixelPickImp extends CenterSceneRootOnPixelPickUC {
29
+ constructor(appObject) {
30
+ super(appObject, CenterSceneRootOnPixelPickUC.type);
31
+ this.durationMS = 500;
32
+ this.easeFn = (val) => {
33
+ return val;
34
+ };
35
+ this.centerOnPixel = (pixel) => {
36
+ if (!this.sceneRoot)
37
+ return;
38
+ const scenePick = Babylon_1.scenePixelPick(pixel, this.appObjects);
39
+ if (!(scenePick === null || scenePick === void 0 ? void 0 : scenePick.worldPickPoint))
40
+ return;
41
+ this.sceneRoot.centerOnPoint(scenePick.worldPickPoint, this.durationMS, this.easeFn, () => this.onCenterCompleted());
42
+ };
43
+ this.onCenterCompleted = () => {
44
+ Dispatcher_1.dispatchStateChange(this.appObjects);
45
+ };
46
+ this.appObjects = appObject.appObjectRepo;
47
+ this.sceneRoot = appObject.getComponent(SceneRoot_1.SceneRoot.type);
48
+ if (!this.sceneRoot) {
49
+ App_1.submitWarning("BumpSceneRootScaleAboutPixelPoint", "BumpSceneRootScaleAboutPixelPointImp UC has been added to an App Object that does not have a SceneRoot Entity", this.appObjects);
50
+ return;
51
+ }
52
+ }
53
+ }
54
+ function centerOnPixel(pixel, appObjects) {
55
+ const uc = CenterSceneRootOnPixelPickUC.get(appObjects);
56
+ if (!uc) {
57
+ App_1.submitWarning("centerOnPixel", "Unable to find CenterSceneRootOnPixelPickUC", appObjects);
58
+ return;
59
+ }
60
+ return uc.centerOnPixel(pixel);
61
+ }
62
+ exports.centerOnPixel = centerOnPixel;
@@ -0,0 +1,12 @@
1
+ import { AppObject } from "../../../AppObject/AppObject";
2
+ import { AppObjectRepo } from "../../../AppObject/AppObjectRepo";
3
+ import { AppObjectUC } from "../../../AppObject/AppObjectUC";
4
+ import { Vector2 } from "../../../ValueObjects";
5
+ export declare abstract class DragScaleSceneRootUC extends AppObjectUC {
6
+ static readonly type = "DragScaleSceneRootUC";
7
+ abstract doScale: (pixel: Vector2) => void;
8
+ abstract initializeScale: (pixel: Vector2) => void;
9
+ abstract finishScaling: () => void;
10
+ static get(appObjects: AppObjectRepo): DragScaleSceneRootUC | undefined;
11
+ }
12
+ export declare function makeDragScaleSceneRootUC(appObject: AppObject): DragScaleSceneRootUC;
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.makeDragScaleSceneRootUC = exports.DragScaleSceneRootUC = void 0;
4
+ const AppObjectUC_1 = require("../../../AppObject/AppObjectUC");
5
+ const ValueObjects_1 = require("../../../ValueObjects");
6
+ const App_1 = require("../../App");
7
+ const Babylon_1 = require("../../Babylon");
8
+ const Dispatcher_1 = require("../../Dispatcher");
9
+ const SceneRoot_1 = require("../Entities/SceneRoot");
10
+ class DragScaleSceneRootUC extends AppObjectUC_1.AppObjectUC {
11
+ static get(appObjects) {
12
+ const components = appObjects.getAllComponents(DragScaleSceneRootUC.type);
13
+ if (components.length === 0) {
14
+ App_1.submitWarning(DragScaleSceneRootUC.type, `Unable to find component ${DragScaleSceneRootUC.type}. Add one on Mount`, appObjects);
15
+ return undefined;
16
+ }
17
+ else if (components.length > 1) {
18
+ App_1.submitWarning(DragScaleSceneRootUC.type, `Multiple ${DragScaleSceneRootUC.type} found. There should only be one. Using the first one`, appObjects);
19
+ }
20
+ return components[0];
21
+ }
22
+ }
23
+ exports.DragScaleSceneRootUC = DragScaleSceneRootUC;
24
+ DragScaleSceneRootUC.type = "DragScaleSceneRootUC";
25
+ function makeDragScaleSceneRootUC(appObject) {
26
+ return new DragScaleSceneRootImp(appObject);
27
+ }
28
+ exports.makeDragScaleSceneRootUC = makeDragScaleSceneRootUC;
29
+ class DragScaleSceneRootImp extends DragScaleSceneRootUC {
30
+ constructor(appObject) {
31
+ super(appObject, DragScaleSceneRootUC.type);
32
+ this.sensitivity = 0.01;
33
+ this.lastPixelPos = ValueObjects_1.Vector2.Zero();
34
+ this.pickPoint = ValueObjects_1.Vector3.Zero();
35
+ this.initialScale = 1;
36
+ this.isScaling = false;
37
+ this.doScale = (pixelPosition) => {
38
+ if (!this.sceneRoot)
39
+ return;
40
+ if (!this.isScaling)
41
+ return;
42
+ const pixelChange = ValueObjects_1.Vector2.Subtract(pixelPosition, this.lastPixelPos);
43
+ const currentScale = this.sceneRoot.scale;
44
+ const scaleDelta = pixelChange.y * this.sensitivity * currentScale;
45
+ this.sceneRoot.bumpScaleAboutPoint(scaleDelta, this.pickPoint);
46
+ this.lastPixelPos = pixelPosition;
47
+ };
48
+ this.initializeScale = (initialPixelPos) => {
49
+ var _a;
50
+ if (!this.sceneRoot)
51
+ return;
52
+ this.lastPixelPos = initialPixelPos;
53
+ const pick = Babylon_1.scenePixelPick(initialPixelPos, this.appObjects);
54
+ this.pickPoint = (_a = pick === null || pick === void 0 ? void 0 : pick.worldPickPoint) !== null && _a !== void 0 ? _a : ValueObjects_1.Vector3.Zero();
55
+ this.initialScale = this.sceneRoot.scale;
56
+ this.isScaling = true;
57
+ };
58
+ this.finishScaling = () => {
59
+ if (!this.sceneRoot)
60
+ return;
61
+ if (!this.isScaling)
62
+ return;
63
+ if (this.initialScale !== this.sceneRoot.scale) {
64
+ Dispatcher_1.dispatchStateChange(this.appObjects);
65
+ }
66
+ this.isScaling = false;
67
+ };
68
+ this.appObjects = appObject.appObjectRepo;
69
+ this.sceneRoot = appObject.getComponent(SceneRoot_1.SceneRoot.type);
70
+ if (!this.sceneRoot) {
71
+ App_1.submitWarning("DragScaleSceneRootImp", "DragScaleSceneRootImp UC has been added to an App Object that does not have a SceneRoot Entity", this.appObjects);
72
+ }
73
+ }
74
+ }
@@ -0,0 +1,13 @@
1
+ import { AppObject } from "../../../AppObject/AppObject";
2
+ import { AppObjectRepo } from "../../../AppObject/AppObjectRepo";
3
+ import { AppObjectUC } from "../../../AppObject/AppObjectUC";
4
+ import { EaseFn } from "../../../Types";
5
+ import { Vector2 } from "../../../ValueObjects";
6
+ export declare abstract class FocusOnPixelUC extends AppObjectUC {
7
+ static readonly type = "FocusOnPixelUC";
8
+ abstract durationMS: number;
9
+ abstract easeFn: EaseFn;
10
+ abstract centerOnPixel: (pixel: Vector2) => void;
11
+ static get(appObjects: AppObjectRepo): FocusOnPixelUC | undefined;
12
+ }
13
+ export declare function makeFocusOnPixelUC(appObject: AppObject): FocusOnPixelUC;
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.makeFocusOnPixelUC = exports.FocusOnPixelUC = void 0;
4
+ const AppObjectUC_1 = require("../../../AppObject/AppObjectUC");
5
+ const App_1 = require("../../App");
6
+ const Babylon_1 = require("../../Babylon");
7
+ const Dispatcher_1 = require("../../Dispatcher");
8
+ const SceneRoot_1 = require("../Entities/SceneRoot");
9
+ class FocusOnPixelUC extends AppObjectUC_1.AppObjectUC {
10
+ static get(appObjects) {
11
+ const components = appObjects.getAllComponents(FocusOnPixelUC.type);
12
+ if (components.length === 0) {
13
+ App_1.submitWarning(FocusOnPixelUC.type, `Unable to find component ${FocusOnPixelUC.type}. Add one on Mount`, appObjects);
14
+ return undefined;
15
+ }
16
+ else if (components.length > 1) {
17
+ App_1.submitWarning(FocusOnPixelUC.type, `Multiple ${FocusOnPixelUC.type} found. There should only be one. Using the first one`, appObjects);
18
+ }
19
+ return components[0];
20
+ }
21
+ }
22
+ exports.FocusOnPixelUC = FocusOnPixelUC;
23
+ FocusOnPixelUC.type = "FocusOnPixelUC";
24
+ function makeFocusOnPixelUC(appObject) {
25
+ return new FocusOnPixelImp(appObject);
26
+ }
27
+ exports.makeFocusOnPixelUC = makeFocusOnPixelUC;
28
+ class FocusOnPixelImp extends FocusOnPixelUC {
29
+ constructor(appObject) {
30
+ super(appObject, FocusOnPixelUC.type);
31
+ this.durationMS = 500;
32
+ this.easeFn = (val) => {
33
+ return val;
34
+ };
35
+ this.centerOnPixel = (pixel) => {
36
+ if (!this.sceneRoot)
37
+ return;
38
+ const scenePick = Babylon_1.scenePixelPick(pixel, this.appObjects);
39
+ if (scenePick === null || scenePick === void 0 ? void 0 : scenePick.worldPickPoint) {
40
+ this.sceneRoot.centerOnPoint(scenePick.worldPickPoint, this.durationMS, this.easeFn, () => this.onCenterCompleted());
41
+ }
42
+ else {
43
+ this.sceneRoot.lerpToDefault(this.durationMS, this.easeFn, () => this.onCenterCompleted());
44
+ }
45
+ };
46
+ this.onCenterCompleted = () => {
47
+ Dispatcher_1.dispatchStateChange(this.appObjects);
48
+ };
49
+ this.appObjects = appObject.appObjectRepo;
50
+ this.sceneRoot = appObject.getComponent(SceneRoot_1.SceneRoot.type);
51
+ if (!this.sceneRoot) {
52
+ App_1.submitWarning("BumpSceneRootScaleAboutPixelPoint", "BumpSceneRootScaleAboutPixelPointImp UC has been added to an App Object that does not have a SceneRoot Entity", this.appObjects);
53
+ return;
54
+ }
55
+ }
56
+ }
@@ -0,0 +1,14 @@
1
+ import { AppObject } from "../../../AppObject/AppObject";
2
+ import { AppObjectRepo } from "../../../AppObject/AppObjectRepo";
3
+ import { AppObjectUC } from "../../../AppObject/AppObjectUC";
4
+ import { Vector2 } from "../../../ValueObjects";
5
+ export declare abstract class OrbitSceneRootUC extends AppObjectUC {
6
+ static readonly type = "OrbitSceneRootUC";
7
+ abstract readonly sensitivity: number;
8
+ abstract doOrbit: (pixel: Vector2) => void;
9
+ abstract initializeOrbit: (pixel: Vector2) => void;
10
+ abstract finishOrbit: () => void;
11
+ abstract cancelOrbit: () => void;
12
+ static get(appObjects: AppObjectRepo): OrbitSceneRootUC | undefined;
13
+ }
14
+ export declare function makeOrbitSceneRootUC(appObject: AppObject): OrbitSceneRootUC;
@@ -0,0 +1,92 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.makeOrbitSceneRootUC = exports.OrbitSceneRootUC = void 0;
4
+ const AppObjectUC_1 = require("../../../AppObject/AppObjectUC");
5
+ const ValueObjects_1 = require("../../../ValueObjects");
6
+ const App_1 = require("../../App");
7
+ const Babylon_1 = require("../../Babylon");
8
+ const Dispatcher_1 = require("../../Dispatcher");
9
+ const SceneRoot_1 = require("../Entities/SceneRoot");
10
+ class OrbitSceneRootUC extends AppObjectUC_1.AppObjectUC {
11
+ static get(appObjects) {
12
+ const components = appObjects.getAllComponents(OrbitSceneRootUC.type);
13
+ if (components.length === 0) {
14
+ App_1.submitWarning(OrbitSceneRootUC.type, `Unable to find component ${OrbitSceneRootUC.type}. Add one on Mount`, appObjects);
15
+ return undefined;
16
+ }
17
+ else if (components.length > 1) {
18
+ App_1.submitWarning(OrbitSceneRootUC.type, `Multiple ${OrbitSceneRootUC.type} found. There should only be one. Using the first one`, appObjects);
19
+ }
20
+ return components[0];
21
+ }
22
+ }
23
+ exports.OrbitSceneRootUC = OrbitSceneRootUC;
24
+ OrbitSceneRootUC.type = "OrbitSceneRootUC";
25
+ function makeOrbitSceneRootUC(appObject) {
26
+ return new OrbitSceneRootImp(appObject);
27
+ }
28
+ exports.makeOrbitSceneRootUC = makeOrbitSceneRootUC;
29
+ class OrbitSceneRootImp extends OrbitSceneRootUC {
30
+ constructor(appObject) {
31
+ var _a;
32
+ super(appObject, OrbitSceneRootUC.type);
33
+ this.sensitivity = 0.1;
34
+ this.lastPixelPos = ValueObjects_1.Vector2.Zero();
35
+ this.pickPoint = ValueObjects_1.Vector3.Zero();
36
+ this.localPickOffset = ValueObjects_1.Vector3.Zero();
37
+ this.initialQuat = ValueObjects_1.Quaternion.Identity();
38
+ this.hasBeenInitialized = false;
39
+ this.doOrbit = (pixelPosition) => {
40
+ if (!this.transformNode)
41
+ return;
42
+ if (!this.hasBeenInitialized)
43
+ return;
44
+ const pixelChange = ValueObjects_1.Vector2.Subtract(pixelPosition, this.lastPixelPos);
45
+ const pitchAngle = ValueObjects_1.Angle.FromDegrees(pixelChange.y * this.sensitivity);
46
+ const pitchQuaternion = ValueObjects_1.Quaternion.FromAngleAxis(ValueObjects_1.Vector3.Left(), pitchAngle);
47
+ this.transformNode.worldRotation = ValueObjects_1.Quaternion.Multiply(pitchQuaternion, this.transformNode.worldRotation);
48
+ const worldUp = this.transformNode.localDirectionToWorld(ValueObjects_1.Vector3.Up());
49
+ let xMovement = pixelChange.x;
50
+ if (worldUp.y < 0) {
51
+ xMovement = -pixelChange.x;
52
+ }
53
+ const headingAngle = ValueObjects_1.Angle.FromDegrees(xMovement * this.sensitivity);
54
+ const headingQuaternion = ValueObjects_1.Quaternion.FromAngleAxis(ValueObjects_1.Vector3.Down(), headingAngle);
55
+ this.transformNode.localRotation = ValueObjects_1.Quaternion.Multiply(this.transformNode.localRotation, headingQuaternion);
56
+ const worldPickOffset = this.transformNode.localPointToWorld(this.localPickOffset);
57
+ const bump = ValueObjects_1.Vector3.Subtract(this.pickPoint, worldPickOffset);
58
+ this.transformNode.worldPosition = ValueObjects_1.Vector3.Add(bump, this.transformNode.worldPosition);
59
+ this.lastPixelPos = pixelPosition;
60
+ };
61
+ this.initializeOrbit = (initialPixelPos) => {
62
+ var _a;
63
+ if (!this.transformNode)
64
+ return;
65
+ this.lastPixelPos = initialPixelPos;
66
+ const pick = Babylon_1.scenePixelPick(initialPixelPos, this.appObjects);
67
+ this.pickPoint = (_a = pick === null || pick === void 0 ? void 0 : pick.worldPickPoint) !== null && _a !== void 0 ? _a : ValueObjects_1.Vector3.Zero();
68
+ this.localPickOffset = this.transformNode.worldPointToLocal(this.pickPoint);
69
+ this.transformNode.cancelLerp();
70
+ this.hasBeenInitialized = true;
71
+ this.initialQuat = this.transformNode.localRotation;
72
+ };
73
+ this.finishOrbit = () => {
74
+ this.hasBeenInitialized = false;
75
+ if (!this.transformNode)
76
+ return;
77
+ if (ValueObjects_1.Quaternion.Equal(this.initialQuat, this.transformNode.localRotation))
78
+ return;
79
+ Dispatcher_1.dispatchStateChange(this.appObjects);
80
+ };
81
+ this.cancelOrbit = () => {
82
+ this.hasBeenInitialized = false;
83
+ };
84
+ this.appObjects = appObject.appObjectRepo;
85
+ this.sceneRoot = appObject.getComponent(SceneRoot_1.SceneRoot.type);
86
+ if (!this.sceneRoot) {
87
+ App_1.submitWarning("OrbitSceneRootImp", "OrbitSceneRootImp UC has been added to an App Object that does not have a SceneRoot Entity", this.appObjects);
88
+ return;
89
+ }
90
+ this.transformNode = (_a = this.sceneRoot) === null || _a === void 0 ? void 0 : _a.transform;
91
+ }
92
+ }
@@ -0,0 +1,13 @@
1
+ import { AppObject } from "../../../AppObject/AppObject";
2
+ import { AppObjectRepo } from "../../../AppObject/AppObjectRepo";
3
+ import { AppObjectUC } from "../../../AppObject/AppObjectUC";
4
+ import { Vector2 } from "../../../ValueObjects";
5
+ export declare abstract class PanSceneRootUC extends AppObjectUC {
6
+ static readonly type = "PanSceneRootUC";
7
+ abstract doPan: (pixel: Vector2) => void;
8
+ abstract initializePan: (pixel: Vector2) => void;
9
+ abstract finishPan: () => void;
10
+ abstract cancelPan: () => void;
11
+ static get(appObjects: AppObjectRepo): PanSceneRootUC | undefined;
12
+ }
13
+ export declare function makePanSceneRootUC(appObject: AppObject): PanSceneRootUC;
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.makePanSceneRootUC = exports.PanSceneRootUC = void 0;
4
+ const AppObjectUC_1 = require("../../../AppObject/AppObjectUC");
5
+ const ValueObjects_1 = require("../../../ValueObjects");
6
+ const App_1 = require("../../App");
7
+ const Babylon_1 = require("../../Babylon");
8
+ const Dispatcher_1 = require("../../Dispatcher");
9
+ const SceneRoot_1 = require("../Entities/SceneRoot");
10
+ class PanSceneRootUC extends AppObjectUC_1.AppObjectUC {
11
+ static get(appObjects) {
12
+ const components = appObjects.getAllComponents(PanSceneRootUC.type);
13
+ if (components.length === 0) {
14
+ App_1.submitWarning(PanSceneRootUC.type, `Unable to find component ${PanSceneRootUC.type}. Add one on Mount`, appObjects);
15
+ return undefined;
16
+ }
17
+ else if (components.length > 1) {
18
+ App_1.submitWarning(PanSceneRootUC.type, `Multiple ${PanSceneRootUC.type} found. There should only be one. Using the first one`, appObjects);
19
+ }
20
+ return components[0];
21
+ }
22
+ }
23
+ exports.PanSceneRootUC = PanSceneRootUC;
24
+ PanSceneRootUC.type = "PanSceneRootUC";
25
+ function makePanSceneRootUC(appObject) {
26
+ return new PanSceneRootImp(appObject);
27
+ }
28
+ exports.makePanSceneRootUC = makePanSceneRootUC;
29
+ class PanSceneRootImp extends PanSceneRootUC {
30
+ constructor(appObject) {
31
+ var _a;
32
+ super(appObject, PanSceneRootUC.type);
33
+ this.pickOffset = ValueObjects_1.Vector3.Zero();
34
+ this.intialPosition = ValueObjects_1.Vector3.Zero();
35
+ this.hasBeenInitialized = false;
36
+ this.panPlane = ValueObjects_1.ParametricPlane.XY();
37
+ this.doPan = (pixelPosition) => {
38
+ var _a;
39
+ if (!this.transformNode)
40
+ return;
41
+ if (!this.hasBeenInitialized)
42
+ return;
43
+ const pickRay = Babylon_1.pixelToSceneRay(pixelPosition, this.appObjects);
44
+ const pick = (_a = this.panPlane.intersectLine(pickRay)) !== null && _a !== void 0 ? _a : ValueObjects_1.Vector3.Zero();
45
+ this.transformNode.worldPosition = ValueObjects_1.Vector3.Add(pick, this.pickOffset);
46
+ };
47
+ this.initializePan = (initialPixelPos) => {
48
+ var _a, _b;
49
+ if (!this.transformNode)
50
+ return;
51
+ if (!this.sceneRoot)
52
+ return;
53
+ const scenePick = Babylon_1.scenePixelPick(initialPixelPos, this.appObjects);
54
+ if (!scenePick)
55
+ return;
56
+ const pickPlaneDirection = ValueObjects_1.Vector3.Backward();
57
+ const planePickPos = (_a = scenePick === null || scenePick === void 0 ? void 0 : scenePick.worldPickPoint) !== null && _a !== void 0 ? _a : ValueObjects_1.Vector3.Zero();
58
+ this.panPlane = ValueObjects_1.ParametricPlane.FromPointNormal(planePickPos, pickPlaneDirection);
59
+ const pick = (_b = this.panPlane.intersectLine(scenePick.sceneRay)) !== null && _b !== void 0 ? _b : ValueObjects_1.Vector3.Zero();
60
+ const rootPos = this.transformNode.worldPosition;
61
+ this.pickOffset = ValueObjects_1.Vector3.Subtract(rootPos, pick);
62
+ this.hasBeenInitialized = true;
63
+ this.intialPosition = this.sceneRoot.position;
64
+ };
65
+ this.finishPan = () => {
66
+ if (!this.hasBeenInitialized)
67
+ return;
68
+ if (!this.sceneRoot)
69
+ return;
70
+ this.hasBeenInitialized = false;
71
+ if (ValueObjects_1.Vector3.Equal(this.intialPosition, this.sceneRoot.position))
72
+ return;
73
+ Dispatcher_1.dispatchStateChange(this.appObjects);
74
+ };
75
+ this.cancelPan = () => {
76
+ this.hasBeenInitialized = false;
77
+ };
78
+ this.appObjects = appObject.appObjectRepo;
79
+ this.sceneRoot = appObject.getComponent(SceneRoot_1.SceneRoot.type);
80
+ if (!this.sceneRoot) {
81
+ App_1.submitWarning("OrbitSceneRootImp", "OrbitSceneRootImp UC has been added to an App Object that does not have a SceneRoot Entity", this.appObjects);
82
+ return;
83
+ }
84
+ this.transformNode = (_a = this.sceneRoot) === null || _a === void 0 ? void 0 : _a.transform;
85
+ }
86
+ }
@@ -0,0 +1,13 @@
1
+ import { AppObject } from "../../../AppObject/AppObject";
2
+ import { AppObjectRepo } from "../../../AppObject/AppObjectRepo";
3
+ import { AppObjectUC } from "../../../AppObject/AppObjectUC";
4
+ import { Vector2 } from "../../../ValueObjects";
5
+ export declare abstract class PinchSceneRootUC extends AppObjectUC {
6
+ static readonly type = "PinchSceneRootUC";
7
+ abstract readonly sensitivity: number;
8
+ abstract doPinch: (touchPos1: Vector2, touchPos2: Vector2) => void;
9
+ abstract initializePinch: (touchPos1: Vector2, touchPos2: Vector2) => void;
10
+ abstract finishPinch: () => void;
11
+ static get(appObjects: AppObjectRepo): PinchSceneRootUC | undefined;
12
+ }
13
+ export declare function makePinchSceneRootUC(appObject: AppObject): PinchSceneRootUC;