@vived/app 4.3.0 → 4.5.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 (377) hide show
  1. package/lib/Components/App/UC/submitError.d.ts +2 -0
  2. package/lib/Components/App/UC/submitError.js +28 -0
  3. package/lib/Components/App/UC/submitFatal.d.ts +2 -0
  4. package/lib/Components/App/UC/submitFatal.js +28 -0
  5. package/lib/Components/App/UC/submitLog.d.ts +2 -0
  6. package/lib/Components/App/UC/submitLog.js +28 -0
  7. package/lib/Components/App/UC/submitWarning.d.ts +2 -0
  8. package/lib/Components/App/UC/submitWarning.js +28 -0
  9. package/lib/Components/Babylon/Mocks/MockSceneRayPickUC.d.ts +2 -0
  10. package/lib/Components/Babylon/Mocks/MockSceneRayPickUC.js +2 -2
  11. package/lib/Components/Camera/Factory/CameraFactoryImp.d.ts +4 -0
  12. package/lib/Components/Camera/Factory/CameraFactoryImp.js +25 -0
  13. package/lib/Components/Dispatcher/Mocks/MockLogUC.d.ts +10 -0
  14. package/lib/Components/Dispatcher/Mocks/MockLogUC.js +14 -0
  15. package/lib/Components/Landmarks/Controller/Mouse/MouseLandmark.d.ts +22 -0
  16. package/lib/Components/Landmarks/Controller/Mouse/MouseLandmark.js +91 -0
  17. package/lib/Components/Landmarks/Controller/MouseLandmark.d.ts +22 -0
  18. package/lib/Components/Landmarks/Controller/MouseLandmark.js +91 -0
  19. package/lib/Components/Landmarks/Controller/SetSelectedLandmarkColor.d.ts +3 -0
  20. package/lib/Components/Landmarks/Controller/SetSelectedLandmarkColor.js +24 -0
  21. package/lib/Components/Landmarks/Controller/SubmitLandmarkSize.d.ts +2 -0
  22. package/lib/Components/Landmarks/Controller/SubmitLandmarkSize.js +19 -0
  23. package/lib/Components/Landmarks/Controller/Touch/TouchLandmark.d.ts +20 -0
  24. package/lib/Components/Landmarks/Controller/Touch/TouchLandmark.js +84 -0
  25. package/lib/Components/Landmarks/Controller/TouchLandmark.d.ts +20 -0
  26. package/lib/Components/Landmarks/Controller/TouchLandmark.js +84 -0
  27. package/lib/Components/Landmarks/Controller/UpdateLandmarkSize.d.ts +2 -0
  28. package/lib/Components/Landmarks/Controller/UpdateLandmarkSize.js +19 -0
  29. package/lib/Components/Landmarks/Controller/index.d.ts +5 -0
  30. package/lib/{AppObjectComponents/Enablement → Components/Landmarks/Controller}/index.js +5 -2
  31. package/lib/Components/Landmarks/Entities/LandmarkEntity.d.ts +40 -0
  32. package/lib/Components/Landmarks/Entities/LandmarkEntity.js +111 -0
  33. package/lib/Components/Landmarks/Entities/LandmarkGlobals.d.ts +14 -0
  34. package/lib/Components/Landmarks/Entities/LandmarkGlobals.js +32 -0
  35. package/lib/Components/Landmarks/Entities/LandmarkRepo.d.ts +9 -0
  36. package/lib/Components/Landmarks/Entities/LandmarkRepo.js +33 -0
  37. package/lib/Components/Landmarks/Entities/index.d.ts +3 -0
  38. package/lib/{AppObjectComponents/ChannelModel → Components/Landmarks/Entities}/index.js +3 -2
  39. package/lib/Components/Landmarks/Mocks/MockLandmark.d.ts +27 -0
  40. package/lib/Components/Landmarks/Mocks/MockLandmark.js +50 -0
  41. package/lib/Components/Landmarks/PM/LandmarkListPM.d.ts +10 -0
  42. package/lib/Components/Landmarks/PM/LandmarkListPM.js +46 -0
  43. package/lib/Components/Landmarks/PM/LandmarkSizePM.d.ts +10 -0
  44. package/lib/Components/Landmarks/PM/LandmarkSizePM.js +44 -0
  45. package/lib/Components/Landmarks/PM/index.d.ts +2 -0
  46. package/lib/{UseCases/SceneObjects → Components/Landmarks/PM}/index.js +2 -1
  47. package/lib/Components/Landmarks/UseCases/AddLandmarkUC.d.ts +8 -0
  48. package/lib/Components/Landmarks/UseCases/AddLandmarkUC.js +67 -0
  49. package/lib/Components/Landmarks/UseCases/AddLandmarkUndoRedo.d.ts +13 -0
  50. package/lib/Components/Landmarks/UseCases/AddLandmarkUndoRedo.js +48 -0
  51. package/lib/Components/Landmarks/UseCases/DeleteLandmarkUC.d.ts +9 -0
  52. package/lib/Components/Landmarks/UseCases/DeleteLandmarkUC.js +48 -0
  53. package/lib/Components/Landmarks/UseCases/DeleteLandmarkUndoRedo.d.ts +13 -0
  54. package/lib/Components/Landmarks/UseCases/DeleteLandmarkUndoRedo.js +48 -0
  55. package/lib/Components/Landmarks/UseCases/SerializeLandmarks.d.ts +16 -0
  56. package/lib/Components/Landmarks/UseCases/SerializeLandmarks.js +108 -0
  57. package/lib/Components/Landmarks/UseCases/SetLandmarkSizeUC.d.ts +12 -0
  58. package/lib/Components/Landmarks/UseCases/SetLandmarkSizeUC.js +57 -0
  59. package/lib/Components/Landmarks/UseCases/SetLandmarkSizeUndoRedo.d.ts +11 -0
  60. package/lib/Components/Landmarks/UseCases/SetLandmarkSizeUndoRedo.js +37 -0
  61. package/lib/Components/Landmarks/UseCases/SetOverlayColorUC.d.ts +11 -0
  62. package/lib/Components/Landmarks/UseCases/SetOverlayColorUC.js +46 -0
  63. package/lib/Components/Landmarks/UseCases/SetOverlayColorUndoRedo.d.ts +12 -0
  64. package/lib/Components/Landmarks/UseCases/SetOverlayColorUndoRedo.js +37 -0
  65. package/lib/Components/Landmarks/UseCases/TryAddNewLandmarkUC.d.ts +9 -0
  66. package/lib/Components/Landmarks/UseCases/TryAddNewLandmarkUC.js +59 -0
  67. package/lib/Components/Landmarks/UseCases/TryPreviewLandmarkUC.d.ts +15 -0
  68. package/lib/Components/Landmarks/UseCases/TryPreviewLandmarkUC.js +63 -0
  69. package/lib/Components/Landmarks/UseCases/index.d.ts +11 -0
  70. package/lib/Components/Landmarks/UseCases/index.js +23 -0
  71. package/lib/Components/Landmarks/index.d.ts +4 -0
  72. package/lib/{AppObjectComponents/Hideable → Components/Landmarks}/index.js +4 -2
  73. package/lib/Components/OverlayColor/Entities/OverlayColor.d.ts +5 -5
  74. package/lib/Components/OverlayColor/Entities/OverlayColor.js +24 -24
  75. package/lib/Components/OverlayColor/PM/OverlayColorPM.d.ts +3 -3
  76. package/lib/Components/Question/Entities/QuestionAnswerEntity.d.ts +2 -1
  77. package/lib/Components/Question/Entities/QuestionAnswerEntity.js +9 -5
  78. package/lib/Components/Question/Entities/QuestionEntity.d.ts +1 -1
  79. package/lib/Components/Question/Entities/QuestionEntity.js +2 -9
  80. package/lib/Components/Question/PM/QuestionChallengePM.d.ts +2 -0
  81. package/lib/Components/Question/PM/QuestionChallengePM.js +21 -3
  82. package/lib/Components/Question/UC/ValidateQuestionChallengeStateUC.d.ts +19 -0
  83. package/lib/Components/Question/UC/ValidateQuestionChallengeStateUC.js +83 -0
  84. package/lib/Components/Question/UC/index.d.ts +1 -0
  85. package/lib/Components/Question/UC/index.js +1 -0
  86. package/lib/Components/Tools/Factory/index.d.ts +2 -0
  87. package/lib/{PresentationManagers/SceneModel → Components/Tools/Factory}/index.js +2 -1
  88. package/lib/Components/Tools/Factory/setupTool.d.ts +3 -0
  89. package/lib/Components/Tools/Factory/setupTool.js +12 -0
  90. package/lib/Components/Tools/Factory/setupToolRepo.d.ts +4 -0
  91. package/lib/Components/Tools/Factory/setupToolRepo.js +13 -0
  92. package/package.json +1 -1
  93. package/lib/AppObjectComponents/ChannelModel/Entities/ChannelModel.d.ts +0 -42
  94. package/lib/AppObjectComponents/ChannelModel/Entities/ChannelModel.js +0 -99
  95. package/lib/AppObjectComponents/ChannelModel/Entities/ChannelModelRepo.d.ts +0 -12
  96. package/lib/AppObjectComponents/ChannelModel/Entities/ChannelModelRepo.js +0 -45
  97. package/lib/AppObjectComponents/ChannelModel/index.d.ts +0 -2
  98. package/lib/AppObjectComponents/Dispatcher/Entities/AppDispatcher.d.ts +0 -16
  99. package/lib/AppObjectComponents/Dispatcher/Entities/AppDispatcher.js +0 -40
  100. package/lib/AppObjectComponents/Dispatcher/Factories/makeBasicDispatcher.d.ts +0 -5
  101. package/lib/AppObjectComponents/Dispatcher/Factories/makeBasicDispatcher.js +0 -25
  102. package/lib/AppObjectComponents/Dispatcher/UC/DispatchStartZSpaceUC.d.ts +0 -10
  103. package/lib/AppObjectComponents/Dispatcher/UC/DispatchStartZSpaceUC.js +0 -44
  104. package/lib/AppObjectComponents/Dispatcher/UC/DispatchStopZSpaceUC.d.ts +0 -10
  105. package/lib/AppObjectComponents/Dispatcher/UC/DispatchStopZSpaceUC.js +0 -44
  106. package/lib/AppObjectComponents/Dispatcher/UC/GoToNextStateUC.d.ts +0 -10
  107. package/lib/AppObjectComponents/Dispatcher/UC/GoToNextStateUC.js +0 -44
  108. package/lib/AppObjectComponents/Dispatcher/UC/GoToPreviousStateUC.d.ts +0 -10
  109. package/lib/AppObjectComponents/Dispatcher/UC/GoToPreviousStateUC.js +0 -44
  110. package/lib/AppObjectComponents/Dispatcher/UC/HasNextStateUC.d.ts +0 -10
  111. package/lib/AppObjectComponents/Dispatcher/UC/HasNextStateUC.js +0 -54
  112. package/lib/AppObjectComponents/Dispatcher/UC/HasPreviousStateUC.d.ts +0 -10
  113. package/lib/AppObjectComponents/Dispatcher/UC/HasPreviousStateUC.js +0 -54
  114. package/lib/AppObjectComponents/Dispatcher/UC/IsZSpaceAvailableUC.d.ts +0 -10
  115. package/lib/AppObjectComponents/Dispatcher/UC/IsZSpaceAvailableUC.js +0 -54
  116. package/lib/AppObjectComponents/Dispatcher/index.d.ts +0 -9
  117. package/lib/AppObjectComponents/Dispatcher/index.js +0 -21
  118. package/lib/AppObjectComponents/Enablement/Entities/EnablablementEntity.d.ts +0 -16
  119. package/lib/AppObjectComponents/Enablement/Entities/EnablablementEntity.js +0 -28
  120. package/lib/AppObjectComponents/Enablement/PM/EnablableStatePM.d.ts +0 -14
  121. package/lib/AppObjectComponents/Enablement/PM/EnablableStatePM.js +0 -41
  122. package/lib/AppObjectComponents/Enablement/index.d.ts +0 -2
  123. package/lib/AppObjectComponents/Hideable/Entities/Hideable.d.ts +0 -10
  124. package/lib/AppObjectComponents/Hideable/Entities/Hideable.js +0 -31
  125. package/lib/AppObjectComponents/Hideable/PresentationManagers/IsHiddenPM.d.ts +0 -12
  126. package/lib/AppObjectComponents/Hideable/PresentationManagers/IsHiddenPM.js +0 -43
  127. package/lib/AppObjectComponents/Hideable/index.d.ts +0 -2
  128. package/lib/AppObjectComponents/Label/Entities/Label.d.ts +0 -17
  129. package/lib/AppObjectComponents/Label/Entities/Label.js +0 -58
  130. package/lib/AppObjectComponents/Label/PresentationManagers/LabelPM.d.ts +0 -19
  131. package/lib/AppObjectComponents/Label/PresentationManagers/LabelPM.js +0 -62
  132. package/lib/AppObjectComponents/Label/index.d.ts +0 -2
  133. package/lib/AppObjectComponents/Label/index.js +0 -14
  134. package/lib/AppObjectComponents/Mesh/Entities/Mesh.d.ts +0 -21
  135. package/lib/AppObjectComponents/Mesh/Entities/Mesh.js +0 -45
  136. package/lib/AppObjectComponents/Mesh/index.d.ts +0 -1
  137. package/lib/AppObjectComponents/Mesh/index.js +0 -13
  138. package/lib/AppObjectComponents/OverlayColor/Entities/OverlayColor.d.ts +0 -25
  139. package/lib/AppObjectComponents/OverlayColor/Entities/OverlayColor.js +0 -59
  140. package/lib/AppObjectComponents/OverlayColor/PresentationManagers/OverlayColorPM.d.ts +0 -13
  141. package/lib/AppObjectComponents/OverlayColor/PresentationManagers/OverlayColorPM.js +0 -43
  142. package/lib/AppObjectComponents/OverlayColor/index.d.ts +0 -2
  143. package/lib/AppObjectComponents/OverlayColor/index.js +0 -14
  144. package/lib/AppObjectComponents/SceneRoot/Entities/SceneRoot.d.ts +0 -31
  145. package/lib/AppObjectComponents/SceneRoot/Entities/SceneRoot.js +0 -106
  146. package/lib/AppObjectComponents/SceneRoot/UC/SerializeSceneRoot.d.ts +0 -31
  147. package/lib/AppObjectComponents/SceneRoot/UC/SerializeSceneRoot.js +0 -109
  148. package/lib/AppObjectComponents/SceneRoot/index.d.ts +0 -2
  149. package/lib/AppObjectComponents/SceneRoot/index.js +0 -14
  150. package/lib/AppObjectComponents/StoredView/Entities/StoredView.d.ts +0 -13
  151. package/lib/AppObjectComponents/StoredView/Entities/StoredView.js +0 -64
  152. package/lib/AppObjectComponents/StoredView/UC/SerializeStoredView.d.ts +0 -27
  153. package/lib/AppObjectComponents/StoredView/UC/SerializeStoredView.js +0 -82
  154. package/lib/AppObjectComponents/StoredView/index.d.ts +0 -2
  155. package/lib/AppObjectComponents/StoredView/index.js +0 -14
  156. package/lib/AppObjectComponents/Transform3D/Entities/Transform3D.d.ts +0 -45
  157. package/lib/AppObjectComponents/Transform3D/Entities/Transform3D.js +0 -226
  158. package/lib/AppObjectComponents/Transform3D/PresentationManagers/CanBeStuckPM.d.ts +0 -12
  159. package/lib/AppObjectComponents/Transform3D/PresentationManagers/CanBeStuckPM.js +0 -46
  160. package/lib/AppObjectComponents/Transform3D/PresentationManagers/Transform3DPM.d.ts +0 -19
  161. package/lib/AppObjectComponents/Transform3D/PresentationManagers/Transform3DPM.js +0 -60
  162. package/lib/AppObjectComponents/Transform3D/UseCases/PeelTransform3D.d.ts +0 -20
  163. package/lib/AppObjectComponents/Transform3D/UseCases/PeelTransform3D.js +0 -67
  164. package/lib/AppObjectComponents/Transform3D/UseCases/StickTransform3D.d.ts +0 -14
  165. package/lib/AppObjectComponents/Transform3D/UseCases/StickTransform3D.js +0 -53
  166. package/lib/AppObjectComponents/Transform3D/index.d.ts +0 -5
  167. package/lib/AppObjectComponents/Transform3D/index.js +0 -17
  168. package/lib/AppObjectComponents/index.d.ts +0 -10
  169. package/lib/AppObjectComponents/index.js +0 -22
  170. package/lib/Controllers/HoverLabelMouse.d.ts +0 -10
  171. package/lib/Controllers/HoverLabelMouse.js +0 -23
  172. package/lib/Controllers/HoverLabelTouch.d.ts +0 -14
  173. package/lib/Controllers/HoverLabelTouch.js +0 -41
  174. package/lib/Controllers/ToolHotkeys.d.ts +0 -6
  175. package/lib/Controllers/ToolHotkeys.js +0 -25
  176. package/lib/Controllers/index.d.ts +0 -3
  177. package/lib/Controllers/index.js +0 -15
  178. package/lib/Entities/AppBoundary.d.ts +0 -6
  179. package/lib/Entities/AppBoundary.js +0 -2
  180. package/lib/Entities/AppDispatcher.d.ts +0 -63
  181. package/lib/Entities/AppDispatcher.js +0 -336
  182. package/lib/Entities/AppHandler.d.ts +0 -20
  183. package/lib/Entities/AppHandler.js +0 -94
  184. package/lib/Entities/Babylon.d.ts +0 -48
  185. package/lib/Entities/Babylon.js +0 -146
  186. package/lib/Entities/BaseApp.d.ts +0 -9
  187. package/lib/Entities/BaseApp.js +0 -30
  188. package/lib/Entities/DevicePreview.d.ts +0 -11
  189. package/lib/Entities/DevicePreview.js +0 -49
  190. package/lib/Entities/FocusCamera.d.ts +0 -70
  191. package/lib/Entities/FocusCamera.js +0 -272
  192. package/lib/Entities/FramedScreen.d.ts +0 -15
  193. package/lib/Entities/FramedScreen.js +0 -58
  194. package/lib/Entities/FramedScreenContainer.d.ts +0 -12
  195. package/lib/Entities/FramedScreenContainer.js +0 -41
  196. package/lib/Entities/HoverLabels.d.ts +0 -42
  197. package/lib/Entities/HoverLabels.js +0 -82
  198. package/lib/Entities/KeyboardInput.d.ts +0 -13
  199. package/lib/Entities/KeyboardInput.js +0 -68
  200. package/lib/Entities/Memoized/MemoizedAngle.d.ts +0 -9
  201. package/lib/Entities/Memoized/MemoizedAngle.js +0 -22
  202. package/lib/Entities/Memoized/MemoizedBoolean.d.ts +0 -8
  203. package/lib/Entities/Memoized/MemoizedBoolean.js +0 -22
  204. package/lib/Entities/Memoized/MemoizedColor.d.ts +0 -9
  205. package/lib/Entities/Memoized/MemoizedColor.js +0 -23
  206. package/lib/Entities/Memoized/MemoizedNumber.d.ts +0 -8
  207. package/lib/Entities/Memoized/MemoizedNumber.js +0 -22
  208. package/lib/Entities/Memoized/MemoizedQuaternion.d.ts +0 -9
  209. package/lib/Entities/Memoized/MemoizedQuaternion.js +0 -23
  210. package/lib/Entities/Memoized/MemoizedString.d.ts +0 -8
  211. package/lib/Entities/Memoized/MemoizedString.js +0 -22
  212. package/lib/Entities/Memoized/MemoizedVector2.d.ts +0 -9
  213. package/lib/Entities/Memoized/MemoizedVector2.js +0 -23
  214. package/lib/Entities/Memoized/MemoizedVector3.d.ts +0 -9
  215. package/lib/Entities/Memoized/MemoizedVector3.js +0 -23
  216. package/lib/Entities/MeshModel.d.ts +0 -68
  217. package/lib/Entities/MeshModel.js +0 -174
  218. package/lib/Entities/ModelObject.d.ts +0 -10
  219. package/lib/Entities/ModelObject.js +0 -42
  220. package/lib/Entities/MouseInput.d.ts +0 -21
  221. package/lib/Entities/MouseInput.js +0 -127
  222. package/lib/Entities/ObservableEntityRepo.d.ts +0 -20
  223. package/lib/Entities/ObservableEntityRepo.js +0 -80
  224. package/lib/Entities/QuestionChallenge.d.ts +0 -21
  225. package/lib/Entities/QuestionChallenge.js +0 -103
  226. package/lib/Entities/QuestionChallengeAnswer.d.ts +0 -32
  227. package/lib/Entities/QuestionChallengeAnswer.js +0 -51
  228. package/lib/Entities/SceneModel.d.ts +0 -85
  229. package/lib/Entities/SceneModel.js +0 -202
  230. package/lib/Entities/SceneModelMesh.d.ts +0 -40
  231. package/lib/Entities/SceneModelMesh.js +0 -75
  232. package/lib/Entities/SceneModelRepo.d.ts +0 -11
  233. package/lib/Entities/SceneModelRepo.js +0 -48
  234. package/lib/Entities/SceneObject.d.ts +0 -23
  235. package/lib/Entities/SceneObject.js +0 -79
  236. package/lib/Entities/SceneObjectsRepo.d.ts +0 -12
  237. package/lib/Entities/SceneObjectsRepo.js +0 -58
  238. package/lib/Entities/SceneRoot.d.ts +0 -29
  239. package/lib/Entities/SceneRoot.js +0 -145
  240. package/lib/Entities/StateMachine.d.ts +0 -29
  241. package/lib/Entities/StateMachine.js +0 -98
  242. package/lib/Entities/Tool.d.ts +0 -81
  243. package/lib/Entities/Tool.js +0 -94
  244. package/lib/Entities/ToolRepository.d.ts +0 -46
  245. package/lib/Entities/ToolRepository.js +0 -118
  246. package/lib/Entities/TouchInput.d.ts +0 -28
  247. package/lib/Entities/TouchInput.js +0 -144
  248. package/lib/Entities/UndoRedo.d.ts +0 -22
  249. package/lib/Entities/UndoRedo.js +0 -61
  250. package/lib/PresentationManagers/DevicePreviewPM.d.ts +0 -14
  251. package/lib/PresentationManagers/DevicePreviewPM.js +0 -30
  252. package/lib/PresentationManagers/FocusCameraPM.d.ts +0 -15
  253. package/lib/PresentationManagers/FocusCameraPM.js +0 -31
  254. package/lib/PresentationManagers/FocusCameraPosRotPM.d.ts +0 -13
  255. package/lib/PresentationManagers/FocusCameraPosRotPM.js +0 -28
  256. package/lib/PresentationManagers/FramedScreenContainerPM.d.ts +0 -18
  257. package/lib/PresentationManagers/FramedScreenContainerPM.js +0 -55
  258. package/lib/PresentationManagers/HasRedoPM.d.ts +0 -9
  259. package/lib/PresentationManagers/HasRedoPM.js +0 -22
  260. package/lib/PresentationManagers/HasUndoPM.d.ts +0 -9
  261. package/lib/PresentationManagers/HasUndoPM.js +0 -22
  262. package/lib/PresentationManagers/HoverLabels/AllowHoverLabelPM.d.ts +0 -9
  263. package/lib/PresentationManagers/HoverLabels/AllowHoverLabelPM.js +0 -19
  264. package/lib/PresentationManagers/HoverLabels/HoverLabelPM.d.ts +0 -17
  265. package/lib/PresentationManagers/HoverLabels/HoverLabelPM.js +0 -32
  266. package/lib/PresentationManagers/HoverLabels/index.d.ts +0 -2
  267. package/lib/PresentationManagers/HoverLabels/index.js +0 -14
  268. package/lib/PresentationManagers/IsAuthoringPM.d.ts +0 -9
  269. package/lib/PresentationManagers/IsAuthoringPM.js +0 -20
  270. package/lib/PresentationManagers/PresentationManager.d.ts +0 -8
  271. package/lib/PresentationManagers/PresentationManager.js +0 -16
  272. package/lib/PresentationManagers/QuestionChallenge/AuthorQuestionChallengeAnswerPM.d.ts +0 -24
  273. package/lib/PresentationManagers/QuestionChallenge/AuthorQuestionChallengeAnswerPM.js +0 -65
  274. package/lib/PresentationManagers/QuestionChallenge/AuthorQuestionChallengePM.d.ts +0 -17
  275. package/lib/PresentationManagers/QuestionChallenge/AuthorQuestionChallengePM.js +0 -46
  276. package/lib/PresentationManagers/QuestionChallenge/QuestionChallengeAnswerPM.d.ts +0 -17
  277. package/lib/PresentationManagers/QuestionChallenge/QuestionChallengeAnswerPM.js +0 -51
  278. package/lib/PresentationManagers/QuestionChallenge/QuestionChallengePM.d.ts +0 -15
  279. package/lib/PresentationManagers/QuestionChallenge/QuestionChallengePM.js +0 -34
  280. package/lib/PresentationManagers/QuestionChallenge/index.d.ts +0 -4
  281. package/lib/PresentationManagers/QuestionChallenge/index.js +0 -16
  282. package/lib/PresentationManagers/SceneModel/SceneMeshOverlayPM.d.ts +0 -15
  283. package/lib/PresentationManagers/SceneModel/SceneMeshOverlayPM.js +0 -34
  284. package/lib/PresentationManagers/SceneModel/SceneModelPM.d.ts +0 -15
  285. package/lib/PresentationManagers/SceneModel/SceneModelPM.js +0 -36
  286. package/lib/PresentationManagers/SceneModel/index.d.ts +0 -1
  287. package/lib/PresentationManagers/SceneObject/SceneObjectPM.d.ts +0 -22
  288. package/lib/PresentationManagers/SceneObject/SceneObjectPM.js +0 -57
  289. package/lib/PresentationManagers/SceneObject/index.d.ts +0 -1
  290. package/lib/PresentationManagers/SceneObject/index.js +0 -13
  291. package/lib/PresentationManagers/ShowBabylonInspectorPM.d.ts +0 -9
  292. package/lib/PresentationManagers/ShowBabylonInspectorPM.js +0 -24
  293. package/lib/PresentationManagers/ToolPM.d.ts +0 -17
  294. package/lib/PresentationManagers/ToolPM.js +0 -35
  295. package/lib/PresentationManagers/TransformNodePM.d.ts +0 -14
  296. package/lib/PresentationManagers/TransformNodePM.js +0 -23
  297. package/lib/PresentationManagers/index.d.ts +0 -13
  298. package/lib/PresentationManagers/index.js +0 -25
  299. package/lib/UseCases/FocusCamera/BumpDollyFocusCamera.d.ts +0 -17
  300. package/lib/UseCases/FocusCamera/BumpDollyFocusCamera.js +0 -64
  301. package/lib/UseCases/FocusCamera/LerpFocusCamera.d.ts +0 -36
  302. package/lib/UseCases/FocusCamera/LerpFocusCamera.js +0 -71
  303. package/lib/UseCases/FocusCamera/PinchDollyFocusCamera.d.ts +0 -11
  304. package/lib/UseCases/FocusCamera/PinchDollyFocusCamera.js +0 -36
  305. package/lib/UseCases/FocusCamera/PixelDollyFocusCamera.d.ts +0 -11
  306. package/lib/UseCases/FocusCamera/PixelDollyFocusCamera.js +0 -36
  307. package/lib/UseCases/FocusCamera/PixelOrbitFocusCamera.d.ts +0 -11
  308. package/lib/UseCases/FocusCamera/PixelOrbitFocusCamera.js +0 -26
  309. package/lib/UseCases/FocusCamera/PixelPlanePanFocusCamera.d.ts +0 -11
  310. package/lib/UseCases/FocusCamera/PixelPlanePanFocusCamera.js +0 -33
  311. package/lib/UseCases/FocusCamera/SerializeFocusCamera.d.ts +0 -22
  312. package/lib/UseCases/FocusCamera/SerializeFocusCamera.js +0 -81
  313. package/lib/UseCases/FocusCamera/index.d.ts +0 -7
  314. package/lib/UseCases/FocusCamera/index.js +0 -19
  315. package/lib/UseCases/Handlers/DisposeAppBase.d.ts +0 -8
  316. package/lib/UseCases/Handlers/DisposeAppBase.js +0 -24
  317. package/lib/UseCases/Handlers/SetAppStateBase.d.ts +0 -10
  318. package/lib/UseCases/Handlers/SetAppStateBase.js +0 -32
  319. package/lib/UseCases/Handlers/SetDevicePreviewBase.d.ts +0 -10
  320. package/lib/UseCases/Handlers/SetDevicePreviewBase.js +0 -32
  321. package/lib/UseCases/Handlers/SetIsAuthoringBase.d.ts +0 -10
  322. package/lib/UseCases/Handlers/SetIsAuthoringBase.js +0 -32
  323. package/lib/UseCases/Handlers/ShowBabylonInspectorBase.d.ts +0 -10
  324. package/lib/UseCases/Handlers/ShowBabylonInspectorBase.js +0 -32
  325. package/lib/UseCases/Handlers/StartAppBase.d.ts +0 -10
  326. package/lib/UseCases/Handlers/StartAppBase.js +0 -32
  327. package/lib/UseCases/Handlers/StartZSpaceBase.d.ts +0 -10
  328. package/lib/UseCases/Handlers/StartZSpaceBase.js +0 -35
  329. package/lib/UseCases/Handlers/StopAppBase.d.ts +0 -8
  330. package/lib/UseCases/Handlers/StopAppBase.js +0 -24
  331. package/lib/UseCases/Handlers/StopZSpaceBase.d.ts +0 -8
  332. package/lib/UseCases/Handlers/StopZSpaceBase.js +0 -24
  333. package/lib/UseCases/Handlers/index.d.ts +0 -9
  334. package/lib/UseCases/Handlers/index.js +0 -21
  335. package/lib/UseCases/HoverLabels/SerializeAllowHoverLabel.d.ts +0 -14
  336. package/lib/UseCases/HoverLabels/SerializeAllowHoverLabel.js +0 -35
  337. package/lib/UseCases/HoverLabels/trySetHoverLabel.d.ts +0 -3
  338. package/lib/UseCases/HoverLabels/trySetHoverLabel.js +0 -12
  339. package/lib/UseCases/LerpVector3.d.ts +0 -26
  340. package/lib/UseCases/LerpVector3.js +0 -66
  341. package/lib/UseCases/QuestionChallenge/SerializeQuestionChallenge.d.ts +0 -25
  342. package/lib/UseCases/QuestionChallenge/SerializeQuestionChallenge.js +0 -70
  343. package/lib/UseCases/QuestionChallenge/index.d.ts +0 -4
  344. package/lib/UseCases/QuestionChallenge/index.js +0 -16
  345. package/lib/UseCases/QuestionChallenge/setQuesionChallengeAnswerFeedback.d.ts +0 -2
  346. package/lib/UseCases/QuestionChallenge/setQuesionChallengeAnswerFeedback.js +0 -16
  347. package/lib/UseCases/QuestionChallenge/setQuesionChallengeAnswerText.d.ts +0 -2
  348. package/lib/UseCases/QuestionChallenge/setQuesionChallengeAnswerText.js +0 -16
  349. package/lib/UseCases/QuestionChallenge/toggleQuesionChallengeAnswerIsCorrect.d.ts +0 -2
  350. package/lib/UseCases/QuestionChallenge/toggleQuesionChallengeAnswerIsCorrect.js +0 -16
  351. package/lib/UseCases/SceneModel/SerializeActiveModel.d.ts +0 -18
  352. package/lib/UseCases/SceneModel/SerializeActiveModel.js +0 -74
  353. package/lib/UseCases/SceneModel/SetMeshesEnabledHook.d.ts +0 -7
  354. package/lib/UseCases/SceneModel/SetMeshesEnabledHook.js +0 -22
  355. package/lib/UseCases/SceneModel/SetSceneModelMeshOverlayColor.d.ts +0 -2
  356. package/lib/UseCases/SceneModel/SetSceneModelMeshOverlayColor.js +0 -13
  357. package/lib/UseCases/SceneModel/index.d.ts +0 -5
  358. package/lib/UseCases/SceneModel/index.js +0 -17
  359. package/lib/UseCases/SceneModel/loadNewModel.d.ts +0 -2
  360. package/lib/UseCases/SceneModel/loadNewModel.js +0 -84
  361. package/lib/UseCases/SceneModel/modelDataLoader.d.ts +0 -3
  362. package/lib/UseCases/SceneModel/modelDataLoader.js +0 -33
  363. package/lib/UseCases/SceneObjects/PeelSceneObject.d.ts +0 -18
  364. package/lib/UseCases/SceneObjects/PeelSceneObject.js +0 -61
  365. package/lib/UseCases/SceneObjects/index.d.ts +0 -1
  366. package/lib/UseCases/SceneRoot/SerializeSceneRoot.d.ts +0 -33
  367. package/lib/UseCases/SceneRoot/SerializeSceneRoot.js +0 -67
  368. package/lib/UseCases/SceneRoot/index.d.ts +0 -2
  369. package/lib/UseCases/SceneRoot/index.js +0 -14
  370. package/lib/UseCases/SceneRoot/setupSceneRoot.d.ts +0 -2
  371. package/lib/UseCases/SceneRoot/setupSceneRoot.js +0 -11
  372. package/lib/UseCases/index.d.ts +0 -7
  373. package/lib/UseCases/index.js +0 -19
  374. package/lib/UseCases/setDevicePreview.d.ts +0 -2
  375. package/lib/UseCases/setDevicePreview.js +0 -14
  376. package/lib/UseCases/setupStandardAppObjects.d.ts +0 -2
  377. package/lib/UseCases/setupStandardAppObjects.js +0 -10
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.makeTryAddLandmarkUC = exports.TryAddNewLandmarkUC = void 0;
4
+ const AppObject_1 = require("../../../AppObject");
5
+ const ValueObjects_1 = require("../../../ValueObjects");
6
+ const Babylon_1 = require("../../Babylon");
7
+ const Dispatcher_1 = require("../../Dispatcher");
8
+ const Label_1 = require("../../Label");
9
+ const LandmarkGlobals_1 = require("../Entities/LandmarkGlobals");
10
+ const AddLandmarkUC_1 = require("./AddLandmarkUC");
11
+ const AddLandmarkUndoRedo_1 = require("./AddLandmarkUndoRedo");
12
+ class TryAddNewLandmarkUC extends AppObject_1.AppObjectUC {
13
+ static get(appObj) {
14
+ return appObj.getComponent(this.type);
15
+ }
16
+ }
17
+ exports.TryAddNewLandmarkUC = TryAddNewLandmarkUC;
18
+ TryAddNewLandmarkUC.type = "TryAddNewLandmarkUC";
19
+ function makeTryAddLandmarkUC(appObject) {
20
+ return new TryAddNewLandmarkUCImp(appObject);
21
+ }
22
+ exports.makeTryAddLandmarkUC = makeTryAddLandmarkUC;
23
+ class TryAddNewLandmarkUCImp extends TryAddNewLandmarkUC {
24
+ addFromRay(ray) {
25
+ const scenePick = Babylon_1.sceneRayPick(ray, this.appObjects);
26
+ if (!scenePick ||
27
+ !scenePick.worldPickPoint ||
28
+ !scenePick.normal ||
29
+ !scenePick.appObjectID) {
30
+ return;
31
+ }
32
+ const pickAO = scenePick.appObjectID;
33
+ const addLandmarkUC = this.appObjects.getAppObjectComponent(pickAO, AddLandmarkUC_1.AddLandmarkUC.type);
34
+ if (!addLandmarkUC) {
35
+ return;
36
+ }
37
+ const newLandmark = addLandmarkUC.addNew();
38
+ if (!newLandmark) {
39
+ this.warn("Failed to add landmark");
40
+ return;
41
+ }
42
+ newLandmark.transform.worldPosition = scenePick.worldPickPoint;
43
+ newLandmark.transform.worldRotation = ValueObjects_1.Quaternion.FromDirectionVector(scenePick.normal);
44
+ const globals = this.appObjects.getSingleton(LandmarkGlobals_1.LandmarkGlobals.type);
45
+ if (globals) {
46
+ newLandmark.size = globals.lastSize;
47
+ newLandmark.overlayColor.overlayColor = globals.lastColor;
48
+ }
49
+ const label = this.appObjects.getAppObjectComponent(pickAO, Label_1.Label.type);
50
+ newLandmark.label.default = label ? label.default : "";
51
+ newLandmark.selectable.selected = true;
52
+ new AddLandmarkUndoRedo_1.AddLandmarkUndoRedo(newLandmark.data, this.appObject);
53
+ Dispatcher_1.dispatchStateChange(this.appObjects);
54
+ return newLandmark;
55
+ }
56
+ constructor(appObject) {
57
+ super(appObject, TryAddNewLandmarkUC.type);
58
+ }
59
+ }
@@ -0,0 +1,15 @@
1
+ import { AppObject, AppObjectUC } from "../../../AppObject";
2
+ import { ParametricLine } from "../../../ValueObjects";
3
+ export declare abstract class TryPreviewLandmarkUC extends AppObjectUC {
4
+ static readonly type = "TryPreviewLandmarkUC";
5
+ abstract tryPreviewLandmark: (ray: ParametricLine, pressed: boolean) => boolean | undefined;
6
+ static get(appObj: AppObject): TryPreviewLandmarkUC | undefined;
7
+ }
8
+ export declare function makeTryPreviewLandmark(appObject: AppObject): TryPreviewLandmarkUCImp;
9
+ declare class TryPreviewLandmarkUCImp extends TryPreviewLandmarkUC {
10
+ private previewLandmark?;
11
+ private hidePreview;
12
+ tryPreviewLandmark: (ray: ParametricLine, pressed: boolean) => false | undefined;
13
+ constructor(appObject: AppObject);
14
+ }
15
+ export {};
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.makeTryPreviewLandmark = exports.TryPreviewLandmarkUC = void 0;
4
+ const AppObject_1 = require("../../../AppObject");
5
+ const ValueObjects_1 = require("../../../ValueObjects");
6
+ const App_1 = require("../../App");
7
+ const Babylon_1 = require("../../Babylon");
8
+ const LandmarkGlobals_1 = require("../Entities/LandmarkGlobals");
9
+ const LandmarkRepo_1 = require("../Entities/LandmarkRepo");
10
+ class TryPreviewLandmarkUC extends AppObject_1.AppObjectUC {
11
+ static get(appObj) {
12
+ return appObj.getComponent(this.type);
13
+ }
14
+ }
15
+ exports.TryPreviewLandmarkUC = TryPreviewLandmarkUC;
16
+ TryPreviewLandmarkUC.type = "TryPreviewLandmarkUC";
17
+ function makeTryPreviewLandmark(appObject) {
18
+ const uc = new TryPreviewLandmarkUCImp(appObject);
19
+ return uc;
20
+ }
21
+ exports.makeTryPreviewLandmark = makeTryPreviewLandmark;
22
+ class TryPreviewLandmarkUCImp extends TryPreviewLandmarkUC {
23
+ constructor(appObject) {
24
+ var _a;
25
+ super(appObject, TryPreviewLandmarkUC.type);
26
+ this.tryPreviewLandmark = (ray, pressed) => {
27
+ if (!this.previewLandmark) {
28
+ return false;
29
+ }
30
+ const baseApp = this.appObjects.getSingleton(App_1.BaseAppState.type);
31
+ if (!baseApp || !baseApp.isAuthoring) {
32
+ this.hidePreview();
33
+ return false;
34
+ }
35
+ const scenePick = Babylon_1.sceneRayPick(ray, this.appObjects);
36
+ if (!scenePick ||
37
+ !scenePick.worldPickPoint ||
38
+ !scenePick.normal ||
39
+ !scenePick.appObjectID) {
40
+ this.hidePreview();
41
+ return;
42
+ }
43
+ const aoRepo = this.appObjects.getAppObjectComponent(scenePick.appObjectID, LandmarkRepo_1.LandmarkRepo.type);
44
+ if (!aoRepo) {
45
+ this.hidePreview();
46
+ return;
47
+ }
48
+ this.previewLandmark.hideable.isHidden = false;
49
+ this.previewLandmark.position = scenePick.worldPickPoint;
50
+ this.previewLandmark.rotation = ValueObjects_1.Quaternion.FromDirectionVector(scenePick.normal);
51
+ this.previewLandmark.selectable.pressed = pressed;
52
+ };
53
+ this.previewLandmark = (_a = this.appObject.getComponent(LandmarkGlobals_1.LandmarkGlobals.type)) === null || _a === void 0 ? void 0 : _a.previewLandmark;
54
+ if (!this.previewLandmark) {
55
+ console.warn("No preview landmark");
56
+ }
57
+ }
58
+ hidePreview() {
59
+ if (!this.previewLandmark)
60
+ return;
61
+ this.previewLandmark.hideable.isHidden = true;
62
+ }
63
+ }
@@ -0,0 +1,11 @@
1
+ export * from "./AddLandmarkUC";
2
+ export * from "./AddLandmarkUndoRedo";
3
+ export * from "./DeleteLandmarkUC";
4
+ export * from "./DeleteLandmarkUndoRedo";
5
+ export * from "./SerializeLandmarks";
6
+ export * from "./SetLandmarkSizeUC";
7
+ export * from "./SetLandmarkSizeUndoRedo";
8
+ export * from "./SetOverlayColorUC";
9
+ export * from "./SetOverlayColorUndoRedo";
10
+ export * from "./TryAddNewLandmarkUC";
11
+ export * from "./TryPreviewLandmarkUC";
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./AddLandmarkUC"), exports);
14
+ __exportStar(require("./AddLandmarkUndoRedo"), exports);
15
+ __exportStar(require("./DeleteLandmarkUC"), exports);
16
+ __exportStar(require("./DeleteLandmarkUndoRedo"), exports);
17
+ __exportStar(require("./SerializeLandmarks"), exports);
18
+ __exportStar(require("./SetLandmarkSizeUC"), exports);
19
+ __exportStar(require("./SetLandmarkSizeUndoRedo"), exports);
20
+ __exportStar(require("./SetOverlayColorUC"), exports);
21
+ __exportStar(require("./SetOverlayColorUndoRedo"), exports);
22
+ __exportStar(require("./TryAddNewLandmarkUC"), exports);
23
+ __exportStar(require("./TryPreviewLandmarkUC"), exports);
@@ -0,0 +1,4 @@
1
+ export * from "./Controller";
2
+ export * from "./Entities";
3
+ export * from "./PM";
4
+ export * from "./UseCases";
@@ -10,5 +10,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- __exportStar(require("./Entities/Hideable"), exports);
14
- __exportStar(require("./PresentationManagers/IsHiddenPM"), exports);
13
+ __exportStar(require("./Controller"), exports);
14
+ __exportStar(require("./Entities"), exports);
15
+ __exportStar(require("./PM"), exports);
16
+ __exportStar(require("./UseCases"), exports);
@@ -1,6 +1,6 @@
1
1
  import { AppObject, AppObjectEntity } from "../../../AppObject";
2
2
  import { Color } from "../../../ValueObjects";
3
- export declare enum OverlayColorEmums {
3
+ export declare enum OverlayColorEnums {
4
4
  GREEN = "Green",
5
5
  PINK = "Pink",
6
6
  YELLOW = "Yellow",
@@ -14,12 +14,12 @@ export declare enum OverlayColorEmums {
14
14
  }
15
15
  export declare class OverlayColor extends AppObjectEntity {
16
16
  static readonly type = "OVERLAY_COLOR";
17
- static enumToColorLookup: Map<OverlayColorEmums, Color>;
18
- static overlayColorEnumToColor(colorEnum: OverlayColorEmums): Color | undefined;
17
+ static enumToColorLookup: Map<OverlayColorEnums, Color>;
18
+ static overlayColorEnumToColor(colorEnum: OverlayColorEnums): Color | undefined;
19
19
  static addIfMissing(appObj: AppObject): OverlayColor;
20
20
  static get(appObj: AppObject): OverlayColor | undefined;
21
21
  private memoizedColor;
22
- get overlayColor(): OverlayColorEmums;
23
- set overlayColor(val: OverlayColorEmums);
22
+ get overlayColor(): OverlayColorEnums;
23
+ set overlayColor(val: OverlayColorEnums);
24
24
  constructor(appObject: AppObject);
25
25
  }
@@ -1,26 +1,26 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.OverlayColor = exports.OverlayColorEmums = void 0;
3
+ exports.OverlayColor = exports.OverlayColorEnums = void 0;
4
4
  const AppObject_1 = require("../../../AppObject");
5
5
  const Entities_1 = require("../../../Entities");
6
6
  const ValueObjects_1 = require("../../../ValueObjects");
7
- var OverlayColorEmums;
8
- (function (OverlayColorEmums) {
9
- OverlayColorEmums["GREEN"] = "Green";
10
- OverlayColorEmums["PINK"] = "Pink";
11
- OverlayColorEmums["YELLOW"] = "Yellow";
12
- OverlayColorEmums["RED"] = "Red";
13
- OverlayColorEmums["BLUE"] = "Blue";
14
- OverlayColorEmums["WHITE"] = "White";
15
- OverlayColorEmums["PURPLE"] = "Purple";
16
- OverlayColorEmums["BLACK"] = "Black";
17
- OverlayColorEmums["ORANGE"] = "Orange";
18
- OverlayColorEmums["NONE"] = "None";
19
- })(OverlayColorEmums = exports.OverlayColorEmums || (exports.OverlayColorEmums = {}));
7
+ var OverlayColorEnums;
8
+ (function (OverlayColorEnums) {
9
+ OverlayColorEnums["GREEN"] = "Green";
10
+ OverlayColorEnums["PINK"] = "Pink";
11
+ OverlayColorEnums["YELLOW"] = "Yellow";
12
+ OverlayColorEnums["RED"] = "Red";
13
+ OverlayColorEnums["BLUE"] = "Blue";
14
+ OverlayColorEnums["WHITE"] = "White";
15
+ OverlayColorEnums["PURPLE"] = "Purple";
16
+ OverlayColorEnums["BLACK"] = "Black";
17
+ OverlayColorEnums["ORANGE"] = "Orange";
18
+ OverlayColorEnums["NONE"] = "None";
19
+ })(OverlayColorEnums = exports.OverlayColorEnums || (exports.OverlayColorEnums = {}));
20
20
  class OverlayColor extends AppObject_1.AppObjectEntity {
21
21
  constructor(appObject) {
22
22
  super(appObject, OverlayColor.type);
23
- this.memoizedColor = new Entities_1.MemoizedString(OverlayColorEmums.NONE, this.notifyOnChange);
23
+ this.memoizedColor = new Entities_1.MemoizedString(OverlayColorEnums.NONE, this.notifyOnChange);
24
24
  }
25
25
  static overlayColorEnumToColor(colorEnum) {
26
26
  return this.enumToColorLookup.get(colorEnum);
@@ -47,13 +47,13 @@ class OverlayColor extends AppObject_1.AppObjectEntity {
47
47
  exports.OverlayColor = OverlayColor;
48
48
  OverlayColor.type = "OVERLAY_COLOR";
49
49
  OverlayColor.enumToColorLookup = new Map([
50
- [OverlayColorEmums.GREEN, ValueObjects_1.Color.Hex("#008000")],
51
- [OverlayColorEmums.PINK, ValueObjects_1.Color.Hex("#FFC0CB")],
52
- [OverlayColorEmums.YELLOW, ValueObjects_1.Color.Hex("#FFFF00")],
53
- [OverlayColorEmums.RED, ValueObjects_1.Color.Hex("#FF0000")],
54
- [OverlayColorEmums.BLUE, ValueObjects_1.Color.Hex("#0000FF")],
55
- [OverlayColorEmums.WHITE, ValueObjects_1.Color.Hex("#FFFFFF")],
56
- [OverlayColorEmums.PURPLE, ValueObjects_1.Color.Hex("#800080")],
57
- [OverlayColorEmums.BLACK, ValueObjects_1.Color.Hex("#000000")],
58
- [OverlayColorEmums.ORANGE, ValueObjects_1.Color.Hex("#FFA500")]
50
+ [OverlayColorEnums.GREEN, ValueObjects_1.Color.Hex("#008000")],
51
+ [OverlayColorEnums.PINK, ValueObjects_1.Color.Hex("#FFC0CB")],
52
+ [OverlayColorEnums.YELLOW, ValueObjects_1.Color.Hex("#FFFF00")],
53
+ [OverlayColorEnums.RED, ValueObjects_1.Color.Hex("#FF0000")],
54
+ [OverlayColorEnums.BLUE, ValueObjects_1.Color.Hex("#0000FF")],
55
+ [OverlayColorEnums.WHITE, ValueObjects_1.Color.Hex("#FFFFFF")],
56
+ [OverlayColorEnums.PURPLE, ValueObjects_1.Color.Hex("#800080")],
57
+ [OverlayColorEnums.BLACK, ValueObjects_1.Color.Hex("#000000")],
58
+ [OverlayColorEnums.ORANGE, ValueObjects_1.Color.Hex("#FFA500")],
59
59
  ]);
@@ -1,12 +1,12 @@
1
1
  import { AppObject } from "../../../AppObject/AppObject";
2
2
  import { AppObjectPM } from "../../../AppObject/AppObjectPM";
3
3
  import { AppObjectRepo } from "../../../AppObject/AppObjectRepo";
4
- import { OverlayColorEmums } from "../Entities/OverlayColor";
5
- export declare class OverlayColorPM extends AppObjectPM<OverlayColorEmums> {
4
+ import { OverlayColorEnums } from "../Entities/OverlayColor";
5
+ export declare class OverlayColorPM extends AppObjectPM<OverlayColorEnums> {
6
6
  static readonly type = "OverlayColorPM";
7
7
  private overlayColor?;
8
8
  onColorChange: () => void;
9
- vmsAreEqual(a: OverlayColorEmums, b: OverlayColorEmums): boolean;
9
+ vmsAreEqual(a: OverlayColorEnums, b: OverlayColorEnums): boolean;
10
10
  dispose: () => void;
11
11
  constructor(appObject: AppObject);
12
12
  static getForID(appObjID: string, appObjects: AppObjectRepo): OverlayColorPM | undefined;
@@ -1,10 +1,11 @@
1
1
  import { AppObject } from "../../../AppObject/AppObject";
2
2
  import { AppObjectEntity } from "../../../AppObject/AppObjectEntity";
3
- export declare const EMPTY_TEXT_VALIDATION_MESSAGE = "Question answer text cannot be empty";
3
+ export declare const EMPTY_TEXT_VALIDATION_MESSAGE = "Answer text is required.";
4
4
  export declare const MAX_QUESTION_LENGTH = 40;
5
5
  export declare const LONG_TEXT_VALIDATION_MESSAGE: string;
6
6
  export declare const MAX_FEEDBACK_LENGTH = 200;
7
7
  export declare const LONG_FEEDBACK_VALIDATION_MESSAGE: string;
8
+ export declare const FEEDBACK_STRING_CANNOT_BE_0_CHARACTERS = "Feedback string cannot be 0 characters.";
8
9
  export declare abstract class QuestionAnswerEntity extends AppObjectEntity {
9
10
  static readonly type = "QuestionAnswerEntity";
10
11
  abstract readonly id: string;
@@ -1,13 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.makeQuestionAnswerEntity = exports.QuestionAnswerEntity = exports.LONG_FEEDBACK_VALIDATION_MESSAGE = exports.MAX_FEEDBACK_LENGTH = exports.LONG_TEXT_VALIDATION_MESSAGE = exports.MAX_QUESTION_LENGTH = exports.EMPTY_TEXT_VALIDATION_MESSAGE = void 0;
3
+ exports.makeQuestionAnswerEntity = exports.QuestionAnswerEntity = exports.FEEDBACK_STRING_CANNOT_BE_0_CHARACTERS = exports.LONG_FEEDBACK_VALIDATION_MESSAGE = exports.MAX_FEEDBACK_LENGTH = exports.LONG_TEXT_VALIDATION_MESSAGE = exports.MAX_QUESTION_LENGTH = exports.EMPTY_TEXT_VALIDATION_MESSAGE = void 0;
4
4
  const AppObjectEntity_1 = require("../../../AppObject/AppObjectEntity");
5
5
  const Entities_1 = require("../../../Entities");
6
- exports.EMPTY_TEXT_VALIDATION_MESSAGE = "Question answer text cannot be empty";
6
+ exports.EMPTY_TEXT_VALIDATION_MESSAGE = "Answer text is required.";
7
7
  exports.MAX_QUESTION_LENGTH = 40;
8
- exports.LONG_TEXT_VALIDATION_MESSAGE = `Question answer text is limited to ${exports.MAX_QUESTION_LENGTH} characters`;
8
+ exports.LONG_TEXT_VALIDATION_MESSAGE = `Answer text may not exceed ${exports.MAX_QUESTION_LENGTH} characters.`;
9
9
  exports.MAX_FEEDBACK_LENGTH = 200;
10
- exports.LONG_FEEDBACK_VALIDATION_MESSAGE = `Feedback text is limited to ${exports.MAX_FEEDBACK_LENGTH} characters`;
10
+ exports.LONG_FEEDBACK_VALIDATION_MESSAGE = `Answer feedback may not exceed ${exports.MAX_FEEDBACK_LENGTH} characters.`;
11
+ exports.FEEDBACK_STRING_CANNOT_BE_0_CHARACTERS = "Feedback string cannot be 0 characters.";
11
12
  class QuestionAnswerEntity extends AppObjectEntity_1.AppObjectEntity {
12
13
  }
13
14
  exports.QuestionAnswerEntity = QuestionAnswerEntity;
@@ -51,7 +52,10 @@ class QuestionAnswerEntityImp extends QuestionAnswerEntity {
51
52
  this.memoizedFeedback.val = val;
52
53
  }
53
54
  get feedbackValidationMessage() {
54
- if (this.feedbackText.length > exports.MAX_FEEDBACK_LENGTH) {
55
+ if (this.feedbackText.length === 0) {
56
+ return exports.FEEDBACK_STRING_CANNOT_BE_0_CHARACTERS;
57
+ }
58
+ else if (this.feedbackText.length > exports.MAX_FEEDBACK_LENGTH) {
55
59
  return exports.LONG_FEEDBACK_VALIDATION_MESSAGE;
56
60
  }
57
61
  else {
@@ -2,7 +2,7 @@ import { AppObject } from "../../../AppObject/AppObject";
2
2
  import { AppObjectEntity } from "../../../AppObject/AppObjectEntity";
3
3
  import { AppObjectRepo } from "../../../AppObject/AppObjectRepo";
4
4
  import { QuestionAnswerEntity } from "./QuestionAnswerEntity";
5
- export declare const VALIDATION_NO_CORRECT = "At least one answer must be marked as correct";
5
+ export declare const VALIDATION_NO_CORRECT = "At least one answer must be correct.";
6
6
  export declare const VALIDATION_NOT_ENOUGH_ANSWERS = "Question must have at least two answers";
7
7
  export declare abstract class QuestionEntity extends AppObjectEntity {
8
8
  static readonly type = "QuestionEntity";
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.makeQuestionEntity = exports.QuestionEntity = exports.VALIDATION_NOT_ENOUGH_ANSWERS = exports.VALIDATION_NO_CORRECT = void 0;
4
4
  const AppObject_1 = require("../../../AppObject");
5
5
  const AppObjectEntity_1 = require("../../../AppObject/AppObjectEntity");
6
- exports.VALIDATION_NO_CORRECT = "At least one answer must be marked as correct";
6
+ exports.VALIDATION_NO_CORRECT = "At least one answer must be correct.";
7
7
  exports.VALIDATION_NOT_ENOUGH_ANSWERS = "Question must have at least two answers";
8
8
  class QuestionEntity extends AppObjectEntity_1.AppObjectEntity {
9
9
  }
@@ -97,21 +97,14 @@ class QuestionChallengeImp extends QuestionEntity {
97
97
  return exports.VALIDATION_NOT_ENOUGH_ANSWERS;
98
98
  }
99
99
  let hasCorrect = false;
100
- let answerValidationMsg;
101
100
  this.answerLookup.forEach((ans) => {
102
101
  if (ans.isCorrect) {
103
102
  hasCorrect = true;
104
103
  }
105
- if (ans.textValidationMessage) {
106
- answerValidationMsg = ans.textValidationMessage;
107
- }
108
- if (ans.feedbackValidationMessage) {
109
- answerValidationMsg = ans.feedbackValidationMessage;
110
- }
111
104
  });
112
105
  if (!hasCorrect) {
113
106
  return exports.VALIDATION_NO_CORRECT;
114
107
  }
115
- return answerValidationMsg;
108
+ return;
116
109
  }
117
110
  }
@@ -1,6 +1,7 @@
1
1
  import { AppObject } from "../../../AppObject/AppObject";
2
2
  import { AppObjectPM } from "../../../AppObject/AppObjectPM";
3
3
  import { AppObjectRepo } from "../../../AppObject/AppObjectRepo";
4
+ export declare const SLIDE_TEXT_CANNOT_BE_FALSY = "Slide text is required.";
4
5
  export declare const defaultQuestionChallengeVM: QuestionChallengeVM;
5
6
  export interface QuestionChallengeVM {
6
7
  gotItRight: boolean;
@@ -12,6 +13,7 @@ export declare class QuestionChallengePM extends AppObjectPM<QuestionChallengeVM
12
13
  static readonly type = "QuestionChallengePM";
13
14
  static get: (appObjects: AppObjectRepo) => QuestionChallengePM | undefined;
14
15
  private questionEntity?;
16
+ private baseAppState?;
15
17
  private onEntityChange;
16
18
  vmsAreEqual(a: QuestionChallengeVM, b: QuestionChallengeVM): boolean;
17
19
  dispose: () => void;
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.QuestionChallengePM = exports.defaultQuestionChallengeVM = void 0;
3
+ exports.QuestionChallengePM = exports.defaultQuestionChallengeVM = exports.SLIDE_TEXT_CANNOT_BE_FALSY = void 0;
4
4
  const AppObject_1 = require("../../../AppObject");
5
5
  const AppObjectPM_1 = require("../../../AppObject/AppObjectPM");
6
+ const App_1 = require("../../App");
6
7
  const QuestionEntity_1 = require("../Entities/QuestionEntity");
8
+ exports.SLIDE_TEXT_CANNOT_BE_FALSY = "Slide text is required.";
7
9
  exports.defaultQuestionChallengeVM = {
8
10
  answerIds: [],
9
11
  gotItRight: false,
@@ -13,23 +15,39 @@ class QuestionChallengePM extends AppObjectPM_1.AppObjectPM {
13
15
  constructor(appObject) {
14
16
  super(appObject, QuestionChallengePM.type);
15
17
  this.onEntityChange = () => {
18
+ if (!this.baseAppState)
19
+ return;
16
20
  if (!this.questionEntity)
17
21
  return;
22
+ let slideTextValidationMessage;
23
+ if (this.baseAppState.slideText.length === 0) {
24
+ slideTextValidationMessage = exports.SLIDE_TEXT_CANNOT_BE_FALSY;
25
+ }
18
26
  const { gotItRight } = this.questionEntity;
19
27
  const answerIds = this.questionEntity.getAllAnswers().map((ans) => ans.id);
20
28
  const vm = {
21
29
  gotItRight,
22
30
  answerIds,
23
31
  reviewFeedback: this.questionEntity.reviewFeedback,
24
- validationMessage: this.questionEntity.validationMessage,
32
+ validationMessage: slideTextValidationMessage !== null && slideTextValidationMessage !== void 0 ? slideTextValidationMessage : this.questionEntity.validationMessage,
25
33
  };
26
34
  this.doUpdateView(vm);
27
35
  };
28
36
  this.dispose = () => {
29
- var _a;
37
+ var _a, _b;
30
38
  super.dispose();
31
39
  (_a = this.questionEntity) === null || _a === void 0 ? void 0 : _a.removeChangeObserver(this.onEntityChange);
40
+ (_b = this.baseAppState) === null || _b === void 0 ? void 0 : _b.removeChangeObserver(this.onEntityChange);
32
41
  };
42
+ this.baseAppState = App_1.BaseAppState.get(this.appObjects);
43
+ if (!this.baseAppState) {
44
+ this.warn("QuestionChallengePM has been added to an app object that does not have BaseAppStateEntity");
45
+ return;
46
+ }
47
+ else {
48
+ this.baseAppState.addChangeObserver(this.onEntityChange);
49
+ this.onEntityChange();
50
+ }
33
51
  this.questionEntity = appObject.getComponent(QuestionEntity_1.QuestionEntity.type);
34
52
  if (this.questionEntity) {
35
53
  this.questionEntity.addChangeObserver(this.onEntityChange);
@@ -0,0 +1,19 @@
1
+ import { AppObject, AppObjectRepo, AppObjectUC } from "../../../AppObject";
2
+ export declare abstract class ValidateQuestionChallengeStateUC extends AppObjectUC {
3
+ static readonly type = "ValidateQuestionChallengeStateUC";
4
+ SLIDE_TEXT_CANNOT_BE_FALSY: string;
5
+ IF_QUESTION_AT_LEAST_TWO_ANSWERS: string;
6
+ QUESTION_CHALLENGE_NO_CORRECT_ANSWER: string;
7
+ ANSWER_STRING_CANNOT_BE_0_CHARACTERS: string;
8
+ FEEDBACK_STRING_CANNOT_BE_LONGER_THAN_200_CHARACTERS: string;
9
+ ANSWER_STRING_CANNOT_BE_LONGER_THAN_40_CHARACTERS: string;
10
+ abstract validate(): string | undefined;
11
+ static get: (appObjects: AppObjectRepo) => ValidateQuestionChallengeStateUC | undefined;
12
+ }
13
+ export declare function makeValidateQuestionChallengeStateUC(appObject: AppObject): ValidateQuestionChallengeStateUC;
14
+ export declare class ValidateQuestionChallengeStateImp extends ValidateQuestionChallengeStateUC {
15
+ private baseAppState?;
16
+ private questionEntity?;
17
+ validate(): string | undefined;
18
+ constructor(appObject: AppObject);
19
+ }
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ValidateQuestionChallengeStateImp = exports.makeValidateQuestionChallengeStateUC = exports.ValidateQuestionChallengeStateUC = void 0;
4
+ const AppObject_1 = require("../../../AppObject");
5
+ const App_1 = require("../../App");
6
+ const Entities_1 = require("../Entities");
7
+ class ValidateQuestionChallengeStateUC extends AppObject_1.AppObjectUC {
8
+ constructor() {
9
+ super(...arguments);
10
+ this.SLIDE_TEXT_CANNOT_BE_FALSY = "Slide text is required.";
11
+ this.IF_QUESTION_AT_LEAST_TWO_ANSWERS = "A question must have at lest two answers.";
12
+ this.QUESTION_CHALLENGE_NO_CORRECT_ANSWER = "At least one answer must be correct.";
13
+ this.ANSWER_STRING_CANNOT_BE_0_CHARACTERS = "Answer text is required.";
14
+ this.FEEDBACK_STRING_CANNOT_BE_LONGER_THAN_200_CHARACTERS = "Answer feedback may not exceed 200 characters.";
15
+ this.ANSWER_STRING_CANNOT_BE_LONGER_THAN_40_CHARACTERS = "Answer text may not exceed 40 characters.";
16
+ }
17
+ }
18
+ exports.ValidateQuestionChallengeStateUC = ValidateQuestionChallengeStateUC;
19
+ ValidateQuestionChallengeStateUC.type = "ValidateQuestionChallengeStateUC";
20
+ ValidateQuestionChallengeStateUC.get = (appObjects) => AppObject_1.getSingletonComponent(ValidateQuestionChallengeStateUC.type, appObjects);
21
+ function makeValidateQuestionChallengeStateUC(appObject) {
22
+ return new ValidateQuestionChallengeStateImp(appObject);
23
+ }
24
+ exports.makeValidateQuestionChallengeStateUC = makeValidateQuestionChallengeStateUC;
25
+ class ValidateQuestionChallengeStateImp extends ValidateQuestionChallengeStateUC {
26
+ constructor(appObject) {
27
+ super(appObject, ValidateQuestionChallengeStateUC.type);
28
+ this.baseAppState = App_1.BaseAppState.get(this.appObjects);
29
+ if (!this.baseAppState) {
30
+ this.warn("ToggleQuestionChallengeAnswerIsCorrectUC has been added to an app object that does not have BaseAppSateEntity");
31
+ return;
32
+ }
33
+ this.questionEntity = Entities_1.QuestionEntity.get(this.appObjects);
34
+ if (!this.questionEntity) {
35
+ this.warn("ToggleQuestionChallengeAnswerIsCorrectUC has been added to an app object that does not have QuestionEntity");
36
+ return;
37
+ }
38
+ }
39
+ validate() {
40
+ if (!this.baseAppState)
41
+ return;
42
+ if (!this.questionEntity)
43
+ return;
44
+ if (!this.baseAppState.slideText) {
45
+ return this.SLIDE_TEXT_CANNOT_BE_FALSY;
46
+ }
47
+ if (this.questionEntity.getAllAnswers().length < 2) {
48
+ return this.IF_QUESTION_AT_LEAST_TWO_ANSWERS;
49
+ }
50
+ let emptyAnswerTest = false;
51
+ let hasCorrect = false;
52
+ let hasLongFeedback = false;
53
+ let hasLongText = false;
54
+ this.questionEntity.getAllAnswers().forEach((ans) => {
55
+ if (ans.text === "") {
56
+ emptyAnswerTest = true;
57
+ }
58
+ if (ans.text.length > 40) {
59
+ hasLongText = true;
60
+ }
61
+ if (ans.feedbackText.length > 200) {
62
+ hasLongFeedback = true;
63
+ }
64
+ if (ans.isCorrect) {
65
+ hasCorrect = true;
66
+ }
67
+ });
68
+ if (!hasCorrect) {
69
+ return this.QUESTION_CHALLENGE_NO_CORRECT_ANSWER;
70
+ }
71
+ if (emptyAnswerTest) {
72
+ return this.ANSWER_STRING_CANNOT_BE_0_CHARACTERS;
73
+ }
74
+ if (hasLongFeedback) {
75
+ return this.FEEDBACK_STRING_CANNOT_BE_LONGER_THAN_200_CHARACTERS;
76
+ }
77
+ if (hasLongText) {
78
+ return this.ANSWER_STRING_CANNOT_BE_LONGER_THAN_40_CHARACTERS;
79
+ }
80
+ return;
81
+ }
82
+ }
83
+ exports.ValidateQuestionChallengeStateImp = ValidateQuestionChallengeStateImp;
@@ -5,3 +5,4 @@ export * from "./SetAnswerFeedbackUC";
5
5
  export * from "./SetAnswerTextUC";
6
6
  export * from "./SubmitQuestionAnswerUC";
7
7
  export * from "./ToggleQuestionAnswerIsCorrect";
8
+ export * from "./ValidateQuestionChallengeStateUC";
@@ -17,3 +17,4 @@ __exportStar(require("./SetAnswerFeedbackUC"), exports);
17
17
  __exportStar(require("./SetAnswerTextUC"), exports);
18
18
  __exportStar(require("./SubmitQuestionAnswerUC"), exports);
19
19
  __exportStar(require("./ToggleQuestionAnswerIsCorrect"), exports);
20
+ __exportStar(require("./ValidateQuestionChallengeStateUC"), exports);
@@ -0,0 +1,2 @@
1
+ export * from "./setupTool";
2
+ export * from "./setupToolRepo";
@@ -10,4 +10,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- __exportStar(require("./SceneModelPM"), exports);
13
+ __exportStar(require("./setupTool"), exports);
14
+ __exportStar(require("./setupToolRepo"), exports);
@@ -0,0 +1,3 @@
1
+ import { AppObjectRepo } from "../../../AppObject/AppObjectRepo";
2
+ import { ToolData, ToolEntity } from "../Entities/ToolEntity";
3
+ export declare function setupTool<ToolTypes>(toolData: ToolData<ToolTypes>, appObjects: AppObjectRepo): ToolEntity<ToolTypes>;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setupTool = void 0;
4
+ const ToolEntity_1 = require("../Entities/ToolEntity");
5
+ const ToolPM_1 = require("../PM/ToolPM");
6
+ function setupTool(toolData, appObjects) {
7
+ const tool = appObjects.getOrCreate(toolData.label);
8
+ const toolEntity = ToolEntity_1.makeToolEntity(toolData, tool);
9
+ const pm = new ToolPM_1.ToolPM(tool);
10
+ return toolEntity;
11
+ }
12
+ exports.setupTool = setupTool;
@@ -0,0 +1,4 @@
1
+ import { AppObjectRepo } from "../../../AppObject/AppObjectRepo";
2
+ import { ToolData } from "../Entities/ToolEntity";
3
+ import { ToolRepository } from "../Entities/ToolRepository";
4
+ export declare function setupToolRepo<ToolTypes>(data: ToolData<ToolTypes>[], appObjects: AppObjectRepo): ToolRepository<ToolTypes>;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.setupToolRepo = void 0;
4
+ const ToolHotkeys_1 = require("../Controller/ToolHotkeys");
5
+ const ToolRepository_1 = require("../Entities/ToolRepository");
6
+ function setupToolRepo(data, appObjects) {
7
+ const toolRepo = appObjects.getOrCreate("ToolRepo");
8
+ const entity = ToolRepository_1.makeToolRepo(toolRepo);
9
+ entity.setupToolsFromData(data);
10
+ new ToolHotkeys_1.ToolHotkeys(toolRepo);
11
+ return entity;
12
+ }
13
+ exports.setupToolRepo = setupToolRepo;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vived/app",
3
- "version": "4.3.0",
3
+ "version": "4.5.0",
4
4
  "description": "Public package for the VIVED Learning App system",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",