@vived/app 5.3.0 → 6.1.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.
- package/dist/cjs/Babylon/Adapters/showBabylonInspectorAdapter.test.js +3 -0
- package/dist/cjs/Babylon/Adapters/showBabylonInspectorAdapter.test.js.map +1 -1
- package/dist/cjs/Babylon/Mocks/MockSceneRayPickUC.js.map +1 -1
- package/dist/cjs/Babylon/Mocks/ShowBabylonInspectorPmMock.js.map +1 -1
- package/dist/cjs/Babylon/PM/ShowBabylonInspectorPM.js +9 -6
- package/dist/cjs/Babylon/PM/ShowBabylonInspectorPM.js.map +1 -1
- package/dist/cjs/BaseApp/PM/IsAuthoringPM.js +6 -9
- package/dist/cjs/BaseApp/PM/IsAuthoringPM.js.map +1 -1
- package/dist/cjs/BaseApp/PM/IsAuthoringPM.test.js +2 -6
- package/dist/cjs/BaseApp/PM/IsAuthoringPM.test.js.map +1 -1
- package/dist/cjs/BaseApp/PM/IsReviewingPM.js +6 -9
- package/dist/cjs/BaseApp/PM/IsReviewingPM.js.map +1 -1
- package/dist/cjs/BaseApp/PM/IsReviewingPM.test.js +2 -6
- package/dist/cjs/BaseApp/PM/IsReviewingPM.test.js.map +1 -1
- package/dist/cjs/BaseApp/PM/SlideTextPM.js +6 -5
- package/dist/cjs/BaseApp/PM/SlideTextPM.js.map +1 -1
- package/dist/cjs/BaseApp/PM/SlideTextPM.test.js +2 -6
- package/dist/cjs/BaseApp/PM/SlideTextPM.test.js.map +1 -1
- package/dist/cjs/BaseApp/UC/EditSlideTextUC.test.js +1 -0
- package/dist/cjs/BaseApp/UC/EditSlideTextUC.test.js.map +1 -1
- package/dist/cjs/BaseApp/UC/SerializeBaseAppState.js +1 -1
- package/dist/cjs/BaseApp/UC/SerializeBaseAppState.js.map +1 -1
- package/dist/cjs/Callouts/Factories/calloutFactory.test.js +6 -0
- package/dist/cjs/Callouts/Factories/calloutFactory.test.js.map +1 -1
- package/dist/cjs/Callouts/UC/CreateCalloutUndoRedo.test.js +8 -9
- package/dist/cjs/Callouts/UC/CreateCalloutUndoRedo.test.js.map +1 -1
- package/dist/cjs/Callouts/UC/SerializeCallouts.js +1 -1
- package/dist/cjs/Callouts/UC/SerializeCallouts.js.map +1 -1
- package/dist/cjs/Callouts/UC/TryAddCallout.test.js.map +1 -1
- package/dist/cjs/Challenge/UCs/SerializeChallenge.js +1 -1
- package/dist/cjs/Challenge/UCs/SerializeChallenge.js.map +1 -1
- package/dist/cjs/Challenge/UCs/ShowChallengeHelpUC.test.js +3 -2
- package/dist/cjs/Challenge/UCs/ShowChallengeHelpUC.test.js.map +1 -1
- package/dist/cjs/ChannelModel/PMs/ActiveModelPM.js +6 -5
- package/dist/cjs/ChannelModel/PMs/ActiveModelPM.js.map +1 -1
- package/dist/cjs/ChannelModel/PMs/ActiveModelPM.test.js +2 -6
- package/dist/cjs/ChannelModel/PMs/ActiveModelPM.test.js.map +1 -1
- package/dist/cjs/ChannelModel/PMs/ModelHasCalloutsPM.js +5 -3
- package/dist/cjs/ChannelModel/PMs/ModelHasCalloutsPM.js.map +1 -1
- package/dist/cjs/ChannelModel/PMs/ModelHasCalloutsPM.test.js +1 -0
- package/dist/cjs/ChannelModel/PMs/ModelHasCalloutsPM.test.js.map +1 -1
- package/dist/cjs/ChannelModel/PMs/ModelHasLandmarksPM.js +3 -7
- package/dist/cjs/ChannelModel/PMs/ModelHasLandmarksPM.js.map +1 -1
- package/dist/cjs/ChannelModel/PMs/ModelHasLandmarksPM.test.js +1 -0
- package/dist/cjs/ChannelModel/PMs/ModelHasLandmarksPM.test.js.map +1 -1
- package/dist/cjs/ChannelModel/PMs/ModelObjectsAreHiddenPM.js +3 -9
- package/dist/cjs/ChannelModel/PMs/ModelObjectsAreHiddenPM.js.map +1 -1
- package/dist/cjs/ChannelModel/PMs/ModelObjectsAreHiddenPM.test.js +1 -0
- package/dist/cjs/ChannelModel/PMs/ModelObjectsAreHiddenPM.test.js.map +1 -1
- package/dist/cjs/ChannelModel/PMs/ModelObjectsAreStickablePM.js +3 -7
- package/dist/cjs/ChannelModel/PMs/ModelObjectsAreStickablePM.js.map +1 -1
- package/dist/cjs/ChannelModel/PMs/ModelObjectsAreStickablePM.test.js +1 -0
- package/dist/cjs/ChannelModel/PMs/ModelObjectsAreStickablePM.test.js.map +1 -1
- package/dist/cjs/ChannelModel/PMs/ModelObjectsHaveOverlayPM.js +3 -9
- package/dist/cjs/ChannelModel/PMs/ModelObjectsHaveOverlayPM.js.map +1 -1
- package/dist/cjs/ChannelModel/PMs/ModelObjectsHaveOverlayPM.test.js +1 -0
- package/dist/cjs/ChannelModel/PMs/ModelObjectsHaveOverlayPM.test.js.map +1 -1
- package/dist/cjs/ChannelModel/UC/LoadChannelModelUC.test.js +6 -6
- package/dist/cjs/ChannelModel/UC/LoadChannelModelUC.test.js.map +1 -1
- package/dist/cjs/ChannelModel/UC/SelectChannelModelUC.test.js +1 -1
- package/dist/cjs/ChannelModel/UC/SelectChannelModelUC.test.js.map +1 -1
- package/dist/cjs/ChannelModel/UC/SerializeActiveModel.js +1 -1
- package/dist/cjs/ChannelModel/UC/SerializeActiveModel.js.map +1 -1
- package/dist/cjs/Dispatcher/Entities/AppDispatcher.js +7 -0
- package/dist/cjs/Dispatcher/Entities/AppDispatcher.js.map +1 -1
- package/dist/cjs/Dispatcher/Entities/AppDispatcher.test.js +31 -0
- package/dist/cjs/Dispatcher/Entities/AppDispatcher.test.js.map +1 -1
- package/dist/cjs/Dispatcher/Factories/DispatcherFeatureFactory.js +3 -1
- package/dist/cjs/Dispatcher/Factories/DispatcherFeatureFactory.js.map +1 -1
- package/dist/cjs/Dispatcher/Mocks/GetAssetBlobURLUCMock.js +1 -1
- package/dist/cjs/Dispatcher/Mocks/GetAssetBlobURLUCMock.js.map +1 -1
- package/dist/cjs/Dispatcher/Mocks/GetLinkedAssetsUCMock.js +1 -1
- package/dist/cjs/Dispatcher/Mocks/GetLinkedAssetsUCMock.js.map +1 -1
- package/dist/cjs/Dispatcher/Mocks/MockDispatcher.js +2 -2
- package/dist/cjs/Dispatcher/Mocks/MockDispatcher.js.map +1 -1
- package/dist/cjs/Dispatcher/Mocks/MockGetAssetFolderURL.js +1 -1
- package/dist/cjs/Dispatcher/Mocks/MockGetAssetFolderURL.js.map +1 -1
- package/dist/cjs/Dispatcher/Mocks/MockShowAlert.js +1 -1
- package/dist/cjs/Dispatcher/Mocks/MockShowAlert.js.map +1 -1
- package/dist/cjs/Dispatcher/Mocks/MockShowConfirm.js +1 -1
- package/dist/cjs/Dispatcher/Mocks/MockShowConfirm.js.map +1 -1
- package/dist/cjs/Dispatcher/Mocks/MockShowMarkdown.js +1 -1
- package/dist/cjs/Dispatcher/Mocks/MockShowMarkdown.js.map +1 -1
- package/dist/cjs/Dispatcher/Mocks/MockShowSpinner.js +1 -1
- package/dist/cjs/Dispatcher/Mocks/MockShowSpinner.js.map +1 -1
- package/dist/cjs/Dispatcher/Mocks/MockSubmitResult.js +5 -5
- package/dist/cjs/Dispatcher/Mocks/MockSubmitResult.js.map +1 -1
- package/dist/cjs/Dispatcher/Mocks/ShowSelectModelUCMock.js +1 -1
- package/dist/cjs/Dispatcher/Mocks/ShowSelectModelUCMock.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/AppIsReadyUC.test.js +3 -1
- package/dist/cjs/Dispatcher/UC/AppIsReadyUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/DispatchStartZSpaceUC.test.js +2 -1
- package/dist/cjs/Dispatcher/UC/DispatchStartZSpaceUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/DispatchStateChangeUC.test.js +1 -0
- package/dist/cjs/Dispatcher/UC/DispatchStateChangeUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/DispatchStopZSpaceUC.test.js +2 -1
- package/dist/cjs/Dispatcher/UC/DispatchStopZSpaceUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/GetAssetBlobURLUC.test.js +3 -1
- package/dist/cjs/Dispatcher/UC/GetAssetBlobURLUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/GetAssetFolderURLUC.test.js +3 -1
- package/dist/cjs/Dispatcher/UC/GetAssetFolderURLUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/GetAssetMetaUC.test.js +3 -1
- package/dist/cjs/Dispatcher/UC/GetAssetMetaUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/GetAssetsForOwnerUC.test.js +3 -1
- package/dist/cjs/Dispatcher/UC/GetAssetsForOwnerUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/GetLinkedAssetsUC.test.js +3 -1
- package/dist/cjs/Dispatcher/UC/GetLinkedAssetsUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/GoToNextStateUC.test.js +3 -1
- package/dist/cjs/Dispatcher/UC/GoToNextStateUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/GoToPreviousStateUC.test.js +3 -1
- package/dist/cjs/Dispatcher/UC/GoToPreviousStateUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/HasNextStateUC.test.js +3 -1
- package/dist/cjs/Dispatcher/UC/HasNextStateUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/HasPreviousStateUC.test.js +3 -1
- package/dist/cjs/Dispatcher/UC/HasPreviousStateUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/IsAssetFetchedUC.test.js +3 -1
- package/dist/cjs/Dispatcher/UC/IsAssetFetchedUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/IsZSpaceAvailableUC.test.js +3 -1
- package/dist/cjs/Dispatcher/UC/IsZSpaceAvailableUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/RegisterExternalStylesheetsUC.test.js +3 -1
- package/dist/cjs/Dispatcher/UC/RegisterExternalStylesheetsUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/RestoreCurrentStateUC.test.js +3 -1
- package/dist/cjs/Dispatcher/UC/RestoreCurrentStateUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/StateIsCompleteUC.test.js +3 -1
- package/dist/cjs/Dispatcher/UC/StateIsCompleteUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/SubmitActivityAssetUC.test.js +5 -3
- package/dist/cjs/Dispatcher/UC/SubmitActivityAssetUC.test.js.map +1 -1
- package/dist/cjs/Dispatcher/UC/SubmitResultResultUC.test.js +11 -5
- package/dist/cjs/Dispatcher/UC/SubmitResultResultUC.test.js.map +1 -1
- package/dist/cjs/Enablement/PM/EnabledStatePM.js +5 -9
- package/dist/cjs/Enablement/PM/EnabledStatePM.js.map +1 -1
- package/dist/cjs/Enablement/PM/EnabledStatePM.test.js +1 -0
- package/dist/cjs/Enablement/PM/EnabledStatePM.test.js.map +1 -1
- package/dist/cjs/Environment/UCs/SerializeEnvironment.js +1 -1
- package/dist/cjs/Environment/UCs/SerializeEnvironment.js.map +1 -1
- package/dist/cjs/Hideable/Factories/setupHideable.test.js +6 -0
- package/dist/cjs/Hideable/Factories/setupHideable.test.js.map +1 -1
- package/dist/cjs/Hideable/UCs/SerializeHideableObjects.js +1 -1
- package/dist/cjs/Hideable/UCs/SerializeHideableObjects.js.map +1 -1
- package/dist/cjs/Hideable/UCs/TryHideWithPickUC.test.js.map +1 -1
- package/dist/cjs/HoverLabel/UseCases/SerializeAllowHoverLabel.js +1 -1
- package/dist/cjs/HoverLabel/UseCases/SerializeAllowHoverLabel.js.map +1 -1
- package/dist/cjs/HoverLabel/UseCases/TryShowHoverLabel.test.js.map +1 -1
- package/dist/cjs/Label/Controller/submitCustomLabel.test.js +3 -0
- package/dist/cjs/Label/Controller/submitCustomLabel.test.js.map +1 -1
- package/dist/cjs/Label/Controller/updateCustomLabel.test.js +3 -0
- package/dist/cjs/Label/Controller/updateCustomLabel.test.js.map +1 -1
- package/dist/cjs/Label/UC/ClearCustomLabelUC.test.js +0 -7
- package/dist/cjs/Label/UC/ClearCustomLabelUC.test.js.map +1 -1
- package/dist/cjs/Label/UC/SerializeCustomLabels.js +1 -1
- package/dist/cjs/Label/UC/SerializeCustomLabels.js.map +1 -1
- package/dist/cjs/Label/UC/SetCustomLabelUC.test.js +0 -7
- package/dist/cjs/Label/UC/SetCustomLabelUC.test.js.map +1 -1
- package/dist/cjs/LabelDrop/Controller/releaseLabelDropAnswerItemScreen.test.js.map +1 -1
- package/dist/cjs/LabelDrop/UseCases/SerializeLabelDrop.js +1 -1
- package/dist/cjs/LabelDrop/UseCases/SerializeLabelDrop.js.map +1 -1
- package/dist/cjs/LabelDrop/UseCases/ToggleLabelDropTargetUC.test.js.map +1 -1
- package/dist/cjs/Landmarks/PM/LandmarkSizePM.js +5 -8
- package/dist/cjs/Landmarks/PM/LandmarkSizePM.js.map +1 -1
- package/dist/cjs/Landmarks/UseCases/SerializeLandmarks.js +1 -1
- package/dist/cjs/Landmarks/UseCases/SerializeLandmarks.js.map +1 -1
- package/dist/cjs/Landmarks/UseCases/TryAddNewLandmarkUC.test.js +2 -0
- package/dist/cjs/Landmarks/UseCases/TryAddNewLandmarkUC.test.js.map +1 -1
- package/dist/cjs/ObjectPick/UseCases/SerializeObjectPick.js +1 -1
- package/dist/cjs/ObjectPick/UseCases/SerializeObjectPick.js.map +1 -1
- package/dist/cjs/ObjectPick/UseCases/TrySelectObjectPickUC.test.js.map +1 -1
- package/dist/cjs/ObjectPick/UseCases/TrySubmitObjectPickUC.test.js +1 -0
- package/dist/cjs/ObjectPick/UseCases/TrySubmitObjectPickUC.test.js.map +1 -1
- package/dist/cjs/OverlayColor/UC/SerializeOverlayColoredObjects.js +1 -1
- package/dist/cjs/OverlayColor/UC/SerializeOverlayColoredObjects.js.map +1 -1
- package/dist/cjs/Question/UC/SerializeQuestionChallenge.js +1 -1
- package/dist/cjs/Question/UC/SerializeQuestionChallenge.js.map +1 -1
- package/dist/cjs/Question/UC/SubmitQuestionAnswerUC.test.js +1 -0
- package/dist/cjs/Question/UC/SubmitQuestionAnswerUC.test.js.map +1 -1
- package/dist/cjs/RequestHandler/Entities/AppHandler.js +4 -0
- package/dist/cjs/RequestHandler/Entities/AppHandler.js.map +1 -1
- package/dist/cjs/RequestHandler/Entities/AppHandler.test.js +27 -0
- package/dist/cjs/RequestHandler/Entities/AppHandler.test.js.map +1 -1
- package/dist/cjs/RequestHandler/Factories/RequestHandlerFeatureFactory.js +28 -29
- package/dist/cjs/RequestHandler/Factories/RequestHandlerFeatureFactory.js.map +1 -1
- package/dist/cjs/RequestHandler/Factories/RequestHandlerFeatureFactory.test.js +128 -0
- package/dist/cjs/RequestHandler/Factories/RequestHandlerFeatureFactory.test.js.map +1 -0
- package/dist/cjs/RequestHandler/Mocks/MockAppHandlerEntity.js +1 -0
- package/dist/cjs/RequestHandler/Mocks/MockAppHandlerEntity.js.map +1 -1
- package/dist/cjs/SceneRoot/UC/SerializeSceneRoot.js +1 -1
- package/dist/cjs/SceneRoot/UC/SerializeSceneRoot.js.map +1 -1
- package/dist/cjs/Selection/Controller/MouseHoverOnAppObject.test.js.map +1 -1
- package/dist/cjs/Selection/Controller/MousePressOnAppObject.test.js.map +1 -1
- package/dist/cjs/Selection/Controller/MouseSelectAppObject.test.js.map +1 -1
- package/dist/cjs/StateMachine/Controller/clickRestorePreviousState.js +21 -0
- package/dist/cjs/StateMachine/Controller/clickRestorePreviousState.js.map +1 -0
- package/dist/cjs/StateMachine/Controller/clickRestorePreviousState.test.js +34 -0
- package/dist/cjs/StateMachine/Controller/clickRestorePreviousState.test.js.map +1 -0
- package/dist/cjs/StateMachine/Controller/index.js +1 -1
- package/dist/cjs/StateMachine/Controller/index.js.map +1 -1
- package/dist/cjs/StateMachine/Entities/StateMachineEntity.js +26 -4
- package/dist/cjs/StateMachine/Entities/StateMachineEntity.js.map +1 -1
- package/dist/cjs/StateMachine/Entities/StateMachineEntity.test.js +23 -4
- package/dist/cjs/StateMachine/Entities/StateMachineEntity.test.js.map +1 -1
- package/dist/cjs/Stick/UCs/TryStickAppObjectUC.test.js.map +1 -1
- package/dist/cjs/StoredView/PM/HasStoredViewPM.js +6 -10
- package/dist/cjs/StoredView/PM/HasStoredViewPM.js.map +1 -1
- package/dist/cjs/StoredView/PM/HasStoredViewPM.test.js +1 -0
- package/dist/cjs/StoredView/PM/HasStoredViewPM.test.js.map +1 -1
- package/dist/cjs/StoredView/UC/SerializeStoredView.js +1 -1
- package/dist/cjs/StoredView/UC/SerializeStoredView.js.map +1 -1
- package/dist/cjs/Stylus/PMs/StylusIsInUsePM.js +7 -6
- package/dist/cjs/Stylus/PMs/StylusIsInUsePM.js.map +1 -1
- package/dist/cjs/Stylus/PMs/StylusIsInUsePM.test.js +2 -6
- package/dist/cjs/Stylus/PMs/StylusIsInUsePM.test.js.map +1 -1
- package/dist/cjs/Stylus/UCs/EmulateStylusUC.test.js.map +1 -1
- package/dist/cjs/Transform3D/UC/BumpTransformScaleAboutPixelPoint.test.js.map +1 -1
- package/dist/cjs/Transform3D/UC/PinchTransform.test.js.map +1 -1
- package/dist/cjs/Transform3D/UC/TryPanTransformUC.test.js.map +1 -1
- package/dist/cjs/Transparency/UCs/SerializeTransparentObjects.js +1 -1
- package/dist/cjs/Transparency/UCs/SerializeTransparentObjects.js.map +1 -1
- package/dist/cjs/zSpace/PM/ZSpaceIsEnabledPM.js +6 -5
- package/dist/cjs/zSpace/PM/ZSpaceIsEnabledPM.js.map +1 -1
- package/dist/cjs/zSpace/PM/ZSpaceIsEnabledPM.test.js +4 -8
- package/dist/cjs/zSpace/PM/ZSpaceIsEnabledPM.test.js.map +1 -1
- package/dist/cjs/zSpace/PM/ZSpaceIsSupportedPM.js +6 -5
- package/dist/cjs/zSpace/PM/ZSpaceIsSupportedPM.js.map +1 -1
- package/dist/cjs/zSpace/PM/ZSpaceIsSupportedPM.test.js +1 -0
- package/dist/cjs/zSpace/PM/ZSpaceIsSupportedPM.test.js.map +1 -1
- package/dist/esm/Babylon/Adapters/showBabylonInspectorAdapter.test.js +3 -0
- package/dist/esm/Babylon/Adapters/showBabylonInspectorAdapter.test.js.map +1 -1
- package/dist/esm/Babylon/Mocks/MockSceneRayPickUC.js.map +1 -1
- package/dist/esm/Babylon/Mocks/ShowBabylonInspectorPmMock.js.map +1 -1
- package/dist/esm/Babylon/PM/ShowBabylonInspectorPM.js +9 -6
- package/dist/esm/Babylon/PM/ShowBabylonInspectorPM.js.map +1 -1
- package/dist/esm/BaseApp/PM/IsAuthoringPM.js +7 -10
- package/dist/esm/BaseApp/PM/IsAuthoringPM.js.map +1 -1
- package/dist/esm/BaseApp/PM/IsAuthoringPM.test.js +2 -6
- package/dist/esm/BaseApp/PM/IsAuthoringPM.test.js.map +1 -1
- package/dist/esm/BaseApp/PM/IsReviewingPM.js +7 -10
- package/dist/esm/BaseApp/PM/IsReviewingPM.js.map +1 -1
- package/dist/esm/BaseApp/PM/IsReviewingPM.test.js +2 -6
- package/dist/esm/BaseApp/PM/IsReviewingPM.test.js.map +1 -1
- package/dist/esm/BaseApp/PM/SlideTextPM.js +7 -6
- package/dist/esm/BaseApp/PM/SlideTextPM.js.map +1 -1
- package/dist/esm/BaseApp/PM/SlideTextPM.test.js +2 -6
- package/dist/esm/BaseApp/PM/SlideTextPM.test.js.map +1 -1
- package/dist/esm/BaseApp/UC/EditSlideTextUC.test.js +1 -0
- package/dist/esm/BaseApp/UC/EditSlideTextUC.test.js.map +1 -1
- package/dist/esm/BaseApp/UC/SerializeBaseAppState.js +1 -1
- package/dist/esm/BaseApp/UC/SerializeBaseAppState.js.map +1 -1
- package/dist/esm/Callouts/Factories/calloutFactory.test.js +6 -0
- package/dist/esm/Callouts/Factories/calloutFactory.test.js.map +1 -1
- package/dist/esm/Callouts/UC/CreateCalloutUndoRedo.test.js +8 -9
- package/dist/esm/Callouts/UC/CreateCalloutUndoRedo.test.js.map +1 -1
- package/dist/esm/Callouts/UC/SerializeCallouts.js +1 -1
- package/dist/esm/Callouts/UC/SerializeCallouts.js.map +1 -1
- package/dist/esm/Callouts/UC/TryAddCallout.test.js.map +1 -1
- package/dist/esm/Challenge/UCs/SerializeChallenge.js +1 -1
- package/dist/esm/Challenge/UCs/SerializeChallenge.js.map +1 -1
- package/dist/esm/Challenge/UCs/ShowChallengeHelpUC.test.js +3 -2
- package/dist/esm/Challenge/UCs/ShowChallengeHelpUC.test.js.map +1 -1
- package/dist/esm/ChannelModel/PMs/ActiveModelPM.js +7 -6
- package/dist/esm/ChannelModel/PMs/ActiveModelPM.js.map +1 -1
- package/dist/esm/ChannelModel/PMs/ActiveModelPM.test.js +2 -6
- package/dist/esm/ChannelModel/PMs/ActiveModelPM.test.js.map +1 -1
- package/dist/esm/ChannelModel/PMs/ModelHasCalloutsPM.js +5 -3
- package/dist/esm/ChannelModel/PMs/ModelHasCalloutsPM.js.map +1 -1
- package/dist/esm/ChannelModel/PMs/ModelHasCalloutsPM.test.js +1 -0
- package/dist/esm/ChannelModel/PMs/ModelHasCalloutsPM.test.js.map +1 -1
- package/dist/esm/ChannelModel/PMs/ModelHasLandmarksPM.js +3 -7
- package/dist/esm/ChannelModel/PMs/ModelHasLandmarksPM.js.map +1 -1
- package/dist/esm/ChannelModel/PMs/ModelHasLandmarksPM.test.js +1 -0
- package/dist/esm/ChannelModel/PMs/ModelHasLandmarksPM.test.js.map +1 -1
- package/dist/esm/ChannelModel/PMs/ModelObjectsAreHiddenPM.js +3 -9
- package/dist/esm/ChannelModel/PMs/ModelObjectsAreHiddenPM.js.map +1 -1
- package/dist/esm/ChannelModel/PMs/ModelObjectsAreHiddenPM.test.js +1 -0
- package/dist/esm/ChannelModel/PMs/ModelObjectsAreHiddenPM.test.js.map +1 -1
- package/dist/esm/ChannelModel/PMs/ModelObjectsAreStickablePM.js +3 -7
- package/dist/esm/ChannelModel/PMs/ModelObjectsAreStickablePM.js.map +1 -1
- package/dist/esm/ChannelModel/PMs/ModelObjectsAreStickablePM.test.js +1 -0
- package/dist/esm/ChannelModel/PMs/ModelObjectsAreStickablePM.test.js.map +1 -1
- package/dist/esm/ChannelModel/PMs/ModelObjectsHaveOverlayPM.js +3 -9
- package/dist/esm/ChannelModel/PMs/ModelObjectsHaveOverlayPM.js.map +1 -1
- package/dist/esm/ChannelModel/PMs/ModelObjectsHaveOverlayPM.test.js +1 -0
- package/dist/esm/ChannelModel/PMs/ModelObjectsHaveOverlayPM.test.js.map +1 -1
- package/dist/esm/ChannelModel/UC/LoadChannelModelUC.test.js +6 -6
- package/dist/esm/ChannelModel/UC/LoadChannelModelUC.test.js.map +1 -1
- package/dist/esm/ChannelModel/UC/SelectChannelModelUC.test.js +1 -1
- package/dist/esm/ChannelModel/UC/SelectChannelModelUC.test.js.map +1 -1
- package/dist/esm/ChannelModel/UC/SerializeActiveModel.js +1 -1
- package/dist/esm/ChannelModel/UC/SerializeActiveModel.js.map +1 -1
- package/dist/esm/Dispatcher/Entities/AppDispatcher.js +7 -0
- package/dist/esm/Dispatcher/Entities/AppDispatcher.js.map +1 -1
- package/dist/esm/Dispatcher/Entities/AppDispatcher.test.js +31 -0
- package/dist/esm/Dispatcher/Entities/AppDispatcher.test.js.map +1 -1
- package/dist/esm/Dispatcher/Factories/DispatcherFeatureFactory.js +3 -1
- package/dist/esm/Dispatcher/Factories/DispatcherFeatureFactory.js.map +1 -1
- package/dist/esm/Dispatcher/Mocks/GetAssetBlobURLUCMock.js +1 -1
- package/dist/esm/Dispatcher/Mocks/GetAssetBlobURLUCMock.js.map +1 -1
- package/dist/esm/Dispatcher/Mocks/GetLinkedAssetsUCMock.js +1 -1
- package/dist/esm/Dispatcher/Mocks/GetLinkedAssetsUCMock.js.map +1 -1
- package/dist/esm/Dispatcher/Mocks/MockDispatcher.js +2 -2
- package/dist/esm/Dispatcher/Mocks/MockDispatcher.js.map +1 -1
- package/dist/esm/Dispatcher/Mocks/MockGetAssetFolderURL.js +1 -1
- package/dist/esm/Dispatcher/Mocks/MockGetAssetFolderURL.js.map +1 -1
- package/dist/esm/Dispatcher/Mocks/MockShowAlert.js +1 -1
- package/dist/esm/Dispatcher/Mocks/MockShowAlert.js.map +1 -1
- package/dist/esm/Dispatcher/Mocks/MockShowConfirm.js +1 -1
- package/dist/esm/Dispatcher/Mocks/MockShowConfirm.js.map +1 -1
- package/dist/esm/Dispatcher/Mocks/MockShowMarkdown.js +1 -1
- package/dist/esm/Dispatcher/Mocks/MockShowMarkdown.js.map +1 -1
- package/dist/esm/Dispatcher/Mocks/MockShowSpinner.js +1 -1
- package/dist/esm/Dispatcher/Mocks/MockShowSpinner.js.map +1 -1
- package/dist/esm/Dispatcher/Mocks/MockSubmitResult.js +5 -5
- package/dist/esm/Dispatcher/Mocks/MockSubmitResult.js.map +1 -1
- package/dist/esm/Dispatcher/Mocks/ShowSelectModelUCMock.js +1 -1
- package/dist/esm/Dispatcher/Mocks/ShowSelectModelUCMock.js.map +1 -1
- package/dist/esm/Dispatcher/UC/AppIsReadyUC.test.js +3 -1
- package/dist/esm/Dispatcher/UC/AppIsReadyUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/DispatchStartZSpaceUC.test.js +2 -1
- package/dist/esm/Dispatcher/UC/DispatchStartZSpaceUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/DispatchStateChangeUC.test.js +1 -0
- package/dist/esm/Dispatcher/UC/DispatchStateChangeUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/DispatchStopZSpaceUC.test.js +2 -1
- package/dist/esm/Dispatcher/UC/DispatchStopZSpaceUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/GetAssetBlobURLUC.test.js +3 -1
- package/dist/esm/Dispatcher/UC/GetAssetBlobURLUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/GetAssetFolderURLUC.test.js +3 -1
- package/dist/esm/Dispatcher/UC/GetAssetFolderURLUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/GetAssetMetaUC.test.js +3 -1
- package/dist/esm/Dispatcher/UC/GetAssetMetaUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/GetAssetsForOwnerUC.test.js +3 -1
- package/dist/esm/Dispatcher/UC/GetAssetsForOwnerUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/GetLinkedAssetsUC.test.js +3 -1
- package/dist/esm/Dispatcher/UC/GetLinkedAssetsUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/GoToNextStateUC.test.js +3 -1
- package/dist/esm/Dispatcher/UC/GoToNextStateUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/GoToPreviousStateUC.test.js +3 -1
- package/dist/esm/Dispatcher/UC/GoToPreviousStateUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/HasNextStateUC.test.js +3 -1
- package/dist/esm/Dispatcher/UC/HasNextStateUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/HasPreviousStateUC.test.js +3 -1
- package/dist/esm/Dispatcher/UC/HasPreviousStateUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/IsAssetFetchedUC.test.js +3 -1
- package/dist/esm/Dispatcher/UC/IsAssetFetchedUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/IsZSpaceAvailableUC.test.js +3 -1
- package/dist/esm/Dispatcher/UC/IsZSpaceAvailableUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/RegisterExternalStylesheetsUC.test.js +3 -1
- package/dist/esm/Dispatcher/UC/RegisterExternalStylesheetsUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/RestoreCurrentStateUC.test.js +3 -1
- package/dist/esm/Dispatcher/UC/RestoreCurrentStateUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/StateIsCompleteUC.test.js +3 -1
- package/dist/esm/Dispatcher/UC/StateIsCompleteUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/SubmitActivityAssetUC.test.js +5 -3
- package/dist/esm/Dispatcher/UC/SubmitActivityAssetUC.test.js.map +1 -1
- package/dist/esm/Dispatcher/UC/SubmitResultResultUC.test.js +11 -5
- package/dist/esm/Dispatcher/UC/SubmitResultResultUC.test.js.map +1 -1
- package/dist/esm/Enablement/PM/EnabledStatePM.js +5 -9
- package/dist/esm/Enablement/PM/EnabledStatePM.js.map +1 -1
- package/dist/esm/Enablement/PM/EnabledStatePM.test.js +1 -0
- package/dist/esm/Enablement/PM/EnabledStatePM.test.js.map +1 -1
- package/dist/esm/Environment/UCs/SerializeEnvironment.js +1 -1
- package/dist/esm/Environment/UCs/SerializeEnvironment.js.map +1 -1
- package/dist/esm/Hideable/Factories/setupHideable.test.js +6 -0
- package/dist/esm/Hideable/Factories/setupHideable.test.js.map +1 -1
- package/dist/esm/Hideable/UCs/SerializeHideableObjects.js +1 -1
- package/dist/esm/Hideable/UCs/SerializeHideableObjects.js.map +1 -1
- package/dist/esm/Hideable/UCs/TryHideWithPickUC.test.js.map +1 -1
- package/dist/esm/HoverLabel/UseCases/SerializeAllowHoverLabel.js +1 -1
- package/dist/esm/HoverLabel/UseCases/SerializeAllowHoverLabel.js.map +1 -1
- package/dist/esm/HoverLabel/UseCases/TryShowHoverLabel.test.js.map +1 -1
- package/dist/esm/Label/Controller/submitCustomLabel.test.js +3 -0
- package/dist/esm/Label/Controller/submitCustomLabel.test.js.map +1 -1
- package/dist/esm/Label/Controller/updateCustomLabel.test.js +3 -0
- package/dist/esm/Label/Controller/updateCustomLabel.test.js.map +1 -1
- package/dist/esm/Label/UC/ClearCustomLabelUC.test.js +0 -7
- package/dist/esm/Label/UC/ClearCustomLabelUC.test.js.map +1 -1
- package/dist/esm/Label/UC/SerializeCustomLabels.js +1 -1
- package/dist/esm/Label/UC/SerializeCustomLabels.js.map +1 -1
- package/dist/esm/Label/UC/SetCustomLabelUC.test.js +0 -7
- package/dist/esm/Label/UC/SetCustomLabelUC.test.js.map +1 -1
- package/dist/esm/LabelDrop/Controller/releaseLabelDropAnswerItemScreen.test.js.map +1 -1
- package/dist/esm/LabelDrop/UseCases/SerializeLabelDrop.js +1 -1
- package/dist/esm/LabelDrop/UseCases/SerializeLabelDrop.js.map +1 -1
- package/dist/esm/LabelDrop/UseCases/ToggleLabelDropTargetUC.test.js.map +1 -1
- package/dist/esm/Landmarks/PM/LandmarkSizePM.js +5 -8
- package/dist/esm/Landmarks/PM/LandmarkSizePM.js.map +1 -1
- package/dist/esm/Landmarks/UseCases/SerializeLandmarks.js +1 -1
- package/dist/esm/Landmarks/UseCases/SerializeLandmarks.js.map +1 -1
- package/dist/esm/Landmarks/UseCases/TryAddNewLandmarkUC.test.js +2 -0
- package/dist/esm/Landmarks/UseCases/TryAddNewLandmarkUC.test.js.map +1 -1
- package/dist/esm/ObjectPick/UseCases/SerializeObjectPick.js +1 -1
- package/dist/esm/ObjectPick/UseCases/SerializeObjectPick.js.map +1 -1
- package/dist/esm/ObjectPick/UseCases/TrySelectObjectPickUC.test.js.map +1 -1
- package/dist/esm/ObjectPick/UseCases/TrySubmitObjectPickUC.test.js +1 -0
- package/dist/esm/ObjectPick/UseCases/TrySubmitObjectPickUC.test.js.map +1 -1
- package/dist/esm/OverlayColor/UC/SerializeOverlayColoredObjects.js +1 -1
- package/dist/esm/OverlayColor/UC/SerializeOverlayColoredObjects.js.map +1 -1
- package/dist/esm/Question/UC/SerializeQuestionChallenge.js +1 -1
- package/dist/esm/Question/UC/SerializeQuestionChallenge.js.map +1 -1
- package/dist/esm/Question/UC/SubmitQuestionAnswerUC.test.js +1 -0
- package/dist/esm/Question/UC/SubmitQuestionAnswerUC.test.js.map +1 -1
- package/dist/esm/RequestHandler/Entities/AppHandler.js +4 -0
- package/dist/esm/RequestHandler/Entities/AppHandler.js.map +1 -1
- package/dist/esm/RequestHandler/Entities/AppHandler.test.js +27 -0
- package/dist/esm/RequestHandler/Entities/AppHandler.test.js.map +1 -1
- package/dist/esm/RequestHandler/Factories/RequestHandlerFeatureFactory.js +28 -29
- package/dist/esm/RequestHandler/Factories/RequestHandlerFeatureFactory.js.map +1 -1
- package/dist/esm/RequestHandler/Factories/RequestHandlerFeatureFactory.test.js +126 -0
- package/dist/esm/RequestHandler/Factories/RequestHandlerFeatureFactory.test.js.map +1 -0
- package/dist/esm/RequestHandler/Mocks/MockAppHandlerEntity.js +1 -0
- package/dist/esm/RequestHandler/Mocks/MockAppHandlerEntity.js.map +1 -1
- package/dist/esm/SceneRoot/UC/SerializeSceneRoot.js +1 -1
- package/dist/esm/SceneRoot/UC/SerializeSceneRoot.js.map +1 -1
- package/dist/esm/Selection/Controller/MouseHoverOnAppObject.test.js.map +1 -1
- package/dist/esm/Selection/Controller/MousePressOnAppObject.test.js.map +1 -1
- package/dist/esm/Selection/Controller/MouseSelectAppObject.test.js.map +1 -1
- package/dist/esm/StateMachine/Controller/clickRestorePreviousState.js +17 -0
- package/dist/esm/StateMachine/Controller/clickRestorePreviousState.js.map +1 -0
- package/dist/esm/StateMachine/Controller/clickRestorePreviousState.test.js +32 -0
- package/dist/esm/StateMachine/Controller/clickRestorePreviousState.test.js.map +1 -0
- package/dist/esm/StateMachine/Controller/index.js +1 -1
- package/dist/esm/StateMachine/Controller/index.js.map +1 -1
- package/dist/esm/StateMachine/Entities/StateMachineEntity.js +26 -4
- package/dist/esm/StateMachine/Entities/StateMachineEntity.js.map +1 -1
- package/dist/esm/StateMachine/Entities/StateMachineEntity.test.js +23 -4
- package/dist/esm/StateMachine/Entities/StateMachineEntity.test.js.map +1 -1
- package/dist/esm/Stick/UCs/TryStickAppObjectUC.test.js.map +1 -1
- package/dist/esm/StoredView/PM/HasStoredViewPM.js +7 -11
- package/dist/esm/StoredView/PM/HasStoredViewPM.js.map +1 -1
- package/dist/esm/StoredView/PM/HasStoredViewPM.test.js +1 -0
- package/dist/esm/StoredView/PM/HasStoredViewPM.test.js.map +1 -1
- package/dist/esm/StoredView/UC/SerializeStoredView.js +1 -1
- package/dist/esm/StoredView/UC/SerializeStoredView.js.map +1 -1
- package/dist/esm/Stylus/PMs/StylusIsInUsePM.js +8 -7
- package/dist/esm/Stylus/PMs/StylusIsInUsePM.js.map +1 -1
- package/dist/esm/Stylus/PMs/StylusIsInUsePM.test.js +2 -6
- package/dist/esm/Stylus/PMs/StylusIsInUsePM.test.js.map +1 -1
- package/dist/esm/Stylus/UCs/EmulateStylusUC.test.js.map +1 -1
- package/dist/esm/Transform3D/UC/BumpTransformScaleAboutPixelPoint.test.js.map +1 -1
- package/dist/esm/Transform3D/UC/PinchTransform.test.js.map +1 -1
- package/dist/esm/Transform3D/UC/TryPanTransformUC.test.js.map +1 -1
- package/dist/esm/Transparency/UCs/SerializeTransparentObjects.js +1 -1
- package/dist/esm/Transparency/UCs/SerializeTransparentObjects.js.map +1 -1
- package/dist/esm/zSpace/PM/ZSpaceIsEnabledPM.js +7 -6
- package/dist/esm/zSpace/PM/ZSpaceIsEnabledPM.js.map +1 -1
- package/dist/esm/zSpace/PM/ZSpaceIsEnabledPM.test.js +4 -8
- package/dist/esm/zSpace/PM/ZSpaceIsEnabledPM.test.js.map +1 -1
- package/dist/esm/zSpace/PM/ZSpaceIsSupportedPM.js +7 -6
- package/dist/esm/zSpace/PM/ZSpaceIsSupportedPM.js.map +1 -1
- package/dist/esm/zSpace/PM/ZSpaceIsSupportedPM.test.js +1 -0
- package/dist/esm/zSpace/PM/ZSpaceIsSupportedPM.test.js.map +1 -1
- package/dist/types/Babylon/PM/ShowBabylonInspectorPM.d.ts +3 -2
- package/dist/types/Babylon/PM/ShowBabylonInspectorPM.d.ts.map +1 -1
- package/dist/types/BaseApp/PM/IsAuthoringPM.d.ts +2 -2
- package/dist/types/BaseApp/PM/IsAuthoringPM.d.ts.map +1 -1
- package/dist/types/BaseApp/PM/IsReviewingPM.d.ts +2 -2
- package/dist/types/BaseApp/PM/IsReviewingPM.d.ts.map +1 -1
- package/dist/types/BaseApp/PM/SlideTextPM.d.ts +2 -2
- package/dist/types/BaseApp/PM/SlideTextPM.d.ts.map +1 -1
- package/dist/types/BaseApp/UC/SerializeBaseAppState.d.ts +1 -1
- package/dist/types/Callouts/Controller/MouseAddCalloutMC.d.ts +1 -1
- package/dist/types/Callouts/Controller/MouseAddCalloutMC.d.ts.map +1 -1
- package/dist/types/Callouts/Controller/TouchAddCalloutTC.d.ts +1 -1
- package/dist/types/Callouts/Controller/TouchAddCalloutTC.d.ts.map +1 -1
- package/dist/types/Callouts/UC/SerializeCallouts.d.ts +1 -1
- package/dist/types/Challenge/UCs/SerializeChallenge.d.ts +1 -1
- package/dist/types/ChannelModel/PMs/ActiveModelPM.d.ts +4 -3
- package/dist/types/ChannelModel/PMs/ActiveModelPM.d.ts.map +1 -1
- package/dist/types/ChannelModel/UC/SerializeActiveModel.d.ts +2 -2
- package/dist/types/Dispatcher/Entities/AppDispatcher.d.ts +1 -0
- package/dist/types/Dispatcher/Entities/AppDispatcher.d.ts.map +1 -1
- package/dist/types/Dispatcher/Factories/DispatcherFeatureFactory.d.ts +1 -0
- package/dist/types/Dispatcher/Factories/DispatcherFeatureFactory.d.ts.map +1 -1
- package/dist/types/Dispatcher/Mocks/GetAssetBlobURLUCMock.d.ts +1 -1
- package/dist/types/Dispatcher/Mocks/GetAssetBlobURLUCMock.d.ts.map +1 -1
- package/dist/types/Dispatcher/Mocks/GetLinkedAssetsUCMock.d.ts +1 -1
- package/dist/types/Dispatcher/Mocks/GetLinkedAssetsUCMock.d.ts.map +1 -1
- package/dist/types/Dispatcher/Mocks/MockDispatcher.d.ts +2 -2
- package/dist/types/Dispatcher/Mocks/MockDispatcher.d.ts.map +1 -1
- package/dist/types/Dispatcher/Mocks/MockGetAssetFolderURL.d.ts +1 -1
- package/dist/types/Dispatcher/Mocks/MockGetAssetFolderURL.d.ts.map +1 -1
- package/dist/types/Dispatcher/Mocks/MockShowAlert.d.ts +1 -1
- package/dist/types/Dispatcher/Mocks/MockShowAlert.d.ts.map +1 -1
- package/dist/types/Dispatcher/Mocks/MockShowConfirm.d.ts +1 -1
- package/dist/types/Dispatcher/Mocks/MockShowConfirm.d.ts.map +1 -1
- package/dist/types/Dispatcher/Mocks/MockShowMarkdown.d.ts +1 -1
- package/dist/types/Dispatcher/Mocks/MockShowMarkdown.d.ts.map +1 -1
- package/dist/types/Dispatcher/Mocks/MockShowSpinner.d.ts +1 -1
- package/dist/types/Dispatcher/Mocks/MockShowSpinner.d.ts.map +1 -1
- package/dist/types/Dispatcher/Mocks/MockSubmitResult.d.ts +5 -5
- package/dist/types/Dispatcher/Mocks/MockSubmitResult.d.ts.map +1 -1
- package/dist/types/Dispatcher/Mocks/ShowSelectModelUCMock.d.ts +4 -1
- package/dist/types/Dispatcher/Mocks/ShowSelectModelUCMock.d.ts.map +1 -1
- package/dist/types/Environment/UCs/SerializeEnvironment.d.ts +1 -1
- package/dist/types/Hideable/UCs/SerializeHideableObjects.d.ts +2 -2
- package/dist/types/HoverLabel/UseCases/SerializeAllowHoverLabel.d.ts +1 -1
- package/dist/types/Label/UC/SerializeCustomLabels.d.ts +1 -2
- package/dist/types/Label/UC/SerializeCustomLabels.d.ts.map +1 -1
- package/dist/types/LabelDrop/UseCases/SerializeLabelDrop.d.ts +1 -1
- package/dist/types/Landmarks/UseCases/SerializeLandmarks.d.ts +1 -1
- package/dist/types/ObjectPick/UseCases/SerializeObjectPick.d.ts +1 -1
- package/dist/types/OverlayColor/UC/SerializeOverlayColoredObjects.d.ts +2 -2
- package/dist/types/Question/UC/SerializeQuestionChallenge.d.ts +1 -1
- package/dist/types/RequestHandler/Entities/AppHandler.d.ts +1 -0
- package/dist/types/RequestHandler/Entities/AppHandler.d.ts.map +1 -1
- package/dist/types/RequestHandler/Factories/RequestHandlerFeatureFactory.d.ts +19 -20
- package/dist/types/RequestHandler/Factories/RequestHandlerFeatureFactory.d.ts.map +1 -1
- package/dist/types/RequestHandler/Factories/RequestHandlerFeatureFactory.test.d.ts +2 -0
- package/dist/types/RequestHandler/Factories/RequestHandlerFeatureFactory.test.d.ts.map +1 -0
- package/dist/types/RequestHandler/Mocks/MockAppHandlerEntity.d.ts +1 -0
- package/dist/types/RequestHandler/Mocks/MockAppHandlerEntity.d.ts.map +1 -1
- package/dist/types/SceneRoot/UC/SerializeSceneRoot.d.ts +1 -1
- package/dist/types/StateMachine/Controller/clickRestorePreviousState.d.ts +7 -0
- package/dist/types/StateMachine/Controller/clickRestorePreviousState.d.ts.map +1 -0
- package/dist/types/StateMachine/Controller/clickRestorePreviousState.test.d.ts +2 -0
- package/dist/types/StateMachine/Controller/clickRestorePreviousState.test.d.ts.map +1 -0
- package/dist/types/StateMachine/Controller/index.d.ts +1 -1
- package/dist/types/StateMachine/Controller/index.d.ts.map +1 -1
- package/dist/types/StateMachine/Entities/StateMachineEntity.d.ts +87 -2
- package/dist/types/StateMachine/Entities/StateMachineEntity.d.ts.map +1 -1
- package/dist/types/StoredView/PM/HasStoredViewPM.d.ts +2 -2
- package/dist/types/StoredView/PM/HasStoredViewPM.d.ts.map +1 -1
- package/dist/types/StoredView/UC/SerializeStoredView.d.ts +1 -1
- package/dist/types/Stylus/PMs/StylusIsInUsePM.d.ts +2 -2
- package/dist/types/Stylus/PMs/StylusIsInUsePM.d.ts.map +1 -1
- package/dist/types/Transform3D/UC/MoveTransformUC.d.ts +3 -3
- package/dist/types/Transform3D/UC/MoveTransformUC.d.ts.map +1 -1
- package/dist/types/Transform3D/UC/PanTransformUC.d.ts +3 -3
- package/dist/types/Transform3D/UC/PanTransformUC.d.ts.map +1 -1
- package/dist/types/Transform3D/UC/TryMoveTransformUC.d.ts +1 -1
- package/dist/types/Transform3D/UC/TryMoveTransformUC.d.ts.map +1 -1
- package/dist/types/Transform3D/UC/TryPanTransformUC.d.ts +2 -2
- package/dist/types/Transform3D/UC/TryPanTransformUC.d.ts.map +1 -1
- package/dist/types/Transparency/UCs/SerializeTransparentObjects.d.ts +2 -2
- package/dist/types/zSpace/PM/ZSpaceIsEnabledPM.d.ts +2 -2
- package/dist/types/zSpace/PM/ZSpaceIsEnabledPM.d.ts.map +1 -1
- package/dist/types/zSpace/PM/ZSpaceIsSupportedPM.d.ts +2 -2
- package/dist/types/zSpace/PM/ZSpaceIsSupportedPM.d.ts.map +1 -1
- package/package.json +4 -3
- package/src/Dispatcher/README.md +652 -0
- package/src/RequestHandler/README.md +790 -0
- package/src/StateMachine/README.md +430 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TryHideWithPickUC.test.js","sourceRoot":"","sources":["../../../../src/Hideable/UCs/TryHideWithPickUC.test.ts"],"names":[],"mappings":";;AAAA,sCAAgD;AAChD,oDAAiD;AACjD,2DAA+E;AAC/E,+EAAgF;AAChF,sCAA+D;AAC/D,2CAAyD;AACzD,uCAAsD;AAEtD,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IACvC,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;IAEtE,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,EAAE,GAAG,IAAA,yCAAqB,EAAC,EAAE,CAAC,CAAC;IAErC,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG,IAAI,uBAAU,CAAC,WAAW,CAAC,CAAC;IAE/C,MAAM,WAAW,GAAG,IAAA,2CAAsB,EAAC,UAAU,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,CAAC;IAC3E,WAAW,CAAC,YAAY,GAAG,QAAQ,CAAC;IAEpC,MAAM,aAAa,GAAG,IAAA,kCAAwB,EAAC,UAAU,CAAC,CAAC;IAC3D,aAAa,CAAC,cAAc,GAAG,IAAI;SAChC,EAAE,EAAE;SACJ,eAAe,CAAC,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,CAAC;IAEnD,MAAM,QAAQ,GAAG,IAAA,oBAAY,EAAC,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3C,QAAQ,CAAC,KAAK,GAAG,iBAAS,CAAC,MAAM,CAAC;IAElC,OAAO;QACL,UAAU;QACV,EAAE;QACF,UAAU;QACV,EAAE;QACF,iBAAiB;QACjB,QAAQ;QACR,aAAa;QACb,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;IACvB,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC5B,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,WAAW,EAAE,CAAC;QAEzC,MAAM,CAAC,qCAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,EAAE,iBAAiB,EAAE,EAAE,EAAE,GAAG,WAAW,EAAE,CAAC;QAEhD,MAAM,CAAC,iBAAiB,CAAC,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC5B,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,CAAC;QAEvC,MAAM,OAAO,GAAG,qBAAc,CAAC,kBAAkB,CAC/C,IAAI,cAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EACpB,IAAI,cAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CACrB,CAAC;QAEF,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAEvB,MAAM,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE;QACtB,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,WAAW,EAAE,CAAC;QAEzC,EAAE,CAAC,UAAU,CAAC,qBAAc,CAAC,OAAO,EAAE,CAAC,CAAC;QAExC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAChE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,WAAW,EAAE,CAAC;QAEnD,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACrC,UAAU,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC;QAC1C,QAAQ,CAAC,eAAe,CAAC;YACvB,WAAW,EAAE,iBAAiB;SAC/B,CAAC,CAAC;QAEH,EAAE,CAAC,UAAU,CAAC,qBAAc,CAAC,OAAO,EAAE,CAAC,CAAC;QAExC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC5B,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,WAAW,EAAE,CAAC;QAE5C,MAAM,SAAS,GAAG,IAAI,cAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEpC,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAE3B,MAAM,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE;QACtB,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,WAAW,EAAE,CAAC;QAEzC,EAAE,CAAC,YAAY,CAAC,cAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAE/B,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACjD,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,CAAC;QACvC,QAAQ,CAAC,KAAK,GAAG,iBAAS,CAAC,MAAM,CAAC;QAElC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,CAAC;QACvC,QAAQ,CAAC,KAAK,GAAG,iBAAS,CAAC,OAAO,CAAC;QAEnC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\nimport { HideUCMock } from \"../Mocks/HideUCMock\";\nimport { makeTryHideWithPickUC, TryHideWithPickUC } from \"./TryHideWithPickUC\";\nimport { makeMockSceneRayPickUC } from \"../../Babylon/Mocks/MockSceneRayPickUC\";\nimport { ParametricLine, Vector2, Vector3 } from \"@vived/core\";\nimport { makeMockScenePixelPickUC } from \"../../Babylon\";\nimport { makeToolRepo, ToolState } from \"../../Tools\";\n\nfunction makeTestRig() {\n const appObjects = makeAppObjectRepo();\n const registerSingleton = jest.spyOn(appObjects, \"registerSingleton\");\n\n const ao = appObjects.getOrCreate(\"AO\");\n const uc = makeTryHideWithPickUC(ao);\n\n const hideableObj = appObjects.getOrCreate(\"hideableObj\");\n const mockHideUC = new HideUCMock(hideableObj);\n\n const mockRayPick = makeMockSceneRayPickUC(appObjects);\n const mockPick = jest.fn().mockReturnValue({ appObjectID: \"hideableObj\" });\n mockRayPick.sceneRayPick = mockPick;\n\n const mockPixelPick = makeMockScenePixelPickUC(appObjects);\n mockPixelPick.scenePixelPick = jest\n .fn()\n .mockReturnValue({ appObjectID: \"hideableObj\" });\n\n const toolRepo = makeToolRepo(appObjects.getOrCreate(\"ToolRepo\"));\n const hideTool = toolRepo.makeTool(\"HIDE\");\n hideTool.state = ToolState.ACTIVE;\n\n return {\n appObjects,\n ao,\n mockHideUC,\n uc,\n registerSingleton,\n mockPick,\n mockPixelPick,\n hideTool,\n };\n}\n\ndescribe(\"Hide UC\", () => {\n it(\"Gets the singleton\", () => {\n const { appObjects, uc } = makeTestRig();\n\n expect(TryHideWithPickUC.get(appObjects)).toEqual(uc);\n });\n\n it(\"Registers as the singleton\", () => {\n const { registerSingleton, uc } = makeTestRig();\n\n expect(registerSingleton).toHaveBeenCalledWith(uc);\n });\n\n it(\"Picks with the ray\", () => {\n const { uc, mockPick } = makeTestRig();\n\n const pickRay = ParametricLine.FromPointDirection(\n new Vector3(1, 2, 3),\n new Vector3(4, 5, 6)
|
|
1
|
+
{"version":3,"file":"TryHideWithPickUC.test.js","sourceRoot":"","sources":["../../../../src/Hideable/UCs/TryHideWithPickUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\nimport { HideUCMock } from \"../Mocks/HideUCMock\";\nimport { makeTryHideWithPickUC, TryHideWithPickUC } from \"./TryHideWithPickUC\";\nimport { makeMockSceneRayPickUC } from \"../../Babylon/Mocks/MockSceneRayPickUC\";\nimport { ParametricLine, Vector2, Vector3 } from \"@vived/core\";\nimport { makeMockScenePixelPickUC } from \"../../Babylon\";\nimport { makeToolRepo, ToolState } from \"../../Tools\";\n\nfunction makeTestRig() {\n const appObjects = makeAppObjectRepo();\n const registerSingleton = jest.spyOn(appObjects, \"registerSingleton\");\n\n const ao = appObjects.getOrCreate(\"AO\");\n const uc = makeTryHideWithPickUC(ao);\n\n const hideableObj = appObjects.getOrCreate(\"hideableObj\");\n const mockHideUC = new HideUCMock(hideableObj);\n\n const mockRayPick = makeMockSceneRayPickUC(appObjects);\n const mockPick = jest.fn().mockReturnValue({ appObjectID: \"hideableObj\" });\n mockRayPick.sceneRayPick = mockPick;\n\n const mockPixelPick = makeMockScenePixelPickUC(appObjects);\n mockPixelPick.scenePixelPick = jest\n .fn()\n .mockReturnValue({ appObjectID: \"hideableObj\" });\n\n const toolRepo = makeToolRepo(appObjects.getOrCreate(\"ToolRepo\"));\n const hideTool = toolRepo.makeTool(\"HIDE\");\n hideTool.state = ToolState.ACTIVE;\n\n return {\n appObjects,\n ao,\n mockHideUC,\n uc,\n registerSingleton,\n mockPick,\n mockPixelPick,\n hideTool,\n };\n}\n\ndescribe(\"Hide UC\", () => {\n it(\"Gets the singleton\", () => {\n const { appObjects, uc } = makeTestRig();\n\n expect(TryHideWithPickUC.get(appObjects)).toEqual(uc);\n });\n\n it(\"Registers as the singleton\", () => {\n const { registerSingleton, uc } = makeTestRig();\n\n expect(registerSingleton).toHaveBeenCalledWith(uc);\n });\n\n it(\"Picks with the ray\", () => {\n const { uc, mockPick } = makeTestRig();\n\n const pickRay = ParametricLine.FromPointDirection(\n new Vector3(1, 2, 3),\n new Vector3(4, 5, 6),\n );\n\n uc.tryRayPick(pickRay);\n\n expect(mockPick).toHaveBeenCalledWith(pickRay);\n });\n\n it(\"Calls the UC\", () => {\n const { uc, mockHideUC } = makeTestRig();\n\n uc.tryRayPick(ParametricLine.Forward());\n\n expect(mockHideUC.hide).toHaveBeenCalled();\n });\n\n it(\"Doesn't warn if the picked object does not have the UC\", () => {\n const { uc, mockPick, appObjects } = makeTestRig();\n\n appObjects.submitWarning = jest.fn();\n appObjects.getOrCreate(\"SomeOtherObject\");\n mockPick.mockReturnValue({\n appObjectID: \"SomeOtherObject\",\n });\n\n uc.tryRayPick(ParametricLine.Forward());\n\n expect(appObjects.submitWarning).not.toHaveBeenCalled();\n });\n\n it(\"Picks with a pixel\", () => {\n const { uc, mockPixelPick } = makeTestRig();\n\n const pickPixel = new Vector2(1, 2);\n\n uc.tryPixelPick(pickPixel);\n\n expect(mockPixelPick.scenePixelPick).toHaveBeenCalledWith(pickPixel);\n });\n\n it(\"Calls the UC\", () => {\n const { uc, mockHideUC } = makeTestRig();\n\n uc.tryPixelPick(Vector2.One());\n\n expect(mockHideUC.hide).toHaveBeenCalled();\n });\n\n it(\"Returns true if the hide tool is active\", () => {\n const { uc, hideTool } = makeTestRig();\n hideTool.state = ToolState.ACTIVE;\n\n expect(uc.allow()).toEqual(true);\n });\n\n it(\"Returns false if the hide tool is not active\", () => {\n const { uc, hideTool } = makeTestRig();\n hideTool.state = ToolState.ENABLED;\n\n expect(uc.allow()).toEqual(false);\n });\n});\n"]}
|
|
@@ -40,7 +40,7 @@ class SerializeAllowHoverLabel extends core_1.AppObjectUC {
|
|
|
40
40
|
constructor(appObj) {
|
|
41
41
|
super(appObj, SerializeAllowHoverLabel.type);
|
|
42
42
|
this.name = "allowHoverLabel";
|
|
43
|
-
this.
|
|
43
|
+
this.serializationVersion = 1;
|
|
44
44
|
this.hoverLabelEntity = this.appObject.getComponent(HoverLabelEntity_1.HoverLabelEntity.type);
|
|
45
45
|
if (!this.hoverLabelEntity) {
|
|
46
46
|
this.warn("Serializer has been added to an App Object that does not have a HoverLabelEntity. Add the Entity first");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SerializeAllowHoverLabel.js","sourceRoot":"","sources":["../../../../src/HoverLabel/UseCases/SerializeAllowHoverLabel.ts"],"names":[],"mappings":";;;AAAA,sCAAqD;AACrD,qDAA0E;AAC1E,mEAAgE;AAEhE,MAAa,wBACX,SAAQ,kBAAW;IAUnB,cAAc;QACZ,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,OAAO;gBACL,KAAK,EAAE,KAAK;aACb,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAsB;YAC/B,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,eAAe;SAC7C,CAAC;QAEF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB,CAAC,KAAa,EAAE,OAAe;QAC7C,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,KAA0B,CAAC;YAC7C,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,sBAAsB;YACtB,OAAO,CAAC,IAAI,CACV,4BAA4B,OAAO,0BAA0B,IAAI,CAAC,IAAI,8BAA8B,CACrG,CAAC;YACF,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAAE,OAAO;QAEnC,IAAI,CAAC,gBAAgB,CAAC,eAAe,GAAG,IAAI,CAAC;IAC/C,CAAC;IAEO,mBAAmB,CAAC,IAAuB;QACjD,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAAE,OAAO;QAEnC,IAAI,CAAC,gBAAgB,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC;IACrD,CAAC;IAED,YAAY,MAAiB;QAC3B,KAAK,CAAC,MAAM,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC;QA3C/C,SAAI,GAAG,iBAAiB,CAAC;QACzB,yBAAoB,GAAG,CAAC,CAAC;QA4CvB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CACjD,mCAAgB,CAAC,IAAI,CACtB,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,IAAI,CAAC,IAAI,CACP,wGAAwG,CACzG,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAC/C,iCAAkB,CAAC,IAAI,CACxB,CAAC;QACF,IAAI,YAAY,EAAE,CAAC;YACjB,YAAY,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;;AAvEH,4DAwEC;AApEiB,6BAAI,GAAG,0BAA0B,AAA7B,CAA8B","sourcesContent":["import { AppObject, AppObjectUC } from \"@vived/core\";\nimport { SerializedSystem, StateMachineEntity } from \"../../StateMachine\";\nimport { HoverLabelEntity } from \"../Entities/HoverLabelEntity\";\n\nexport class SerializeAllowHoverLabel\n extends AppObjectUC\n implements SerializedSystem\n{\n static readonly type = \"SerializeAllowHoverLabel\";\n\n private hoverLabelEntity?: HoverLabelEntity;\n\n name = \"allowHoverLabel\";\n
|
|
1
|
+
{"version":3,"file":"SerializeAllowHoverLabel.js","sourceRoot":"","sources":["../../../../src/HoverLabel/UseCases/SerializeAllowHoverLabel.ts"],"names":[],"mappings":";;;AAAA,sCAAqD;AACrD,qDAA0E;AAC1E,mEAAgE;AAEhE,MAAa,wBACX,SAAQ,kBAAW;IAUnB,cAAc;QACZ,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,OAAO;gBACL,KAAK,EAAE,KAAK;aACb,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAsB;YAC/B,KAAK,EAAE,IAAI,CAAC,gBAAgB,CAAC,eAAe;SAC7C,CAAC;QAEF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB,CAAC,KAAa,EAAE,OAAe;QAC7C,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,KAA0B,CAAC;YAC7C,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,sBAAsB;YACtB,OAAO,CAAC,IAAI,CACV,4BAA4B,OAAO,0BAA0B,IAAI,CAAC,IAAI,8BAA8B,CACrG,CAAC;YACF,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAAE,OAAO;QAEnC,IAAI,CAAC,gBAAgB,CAAC,eAAe,GAAG,IAAI,CAAC;IAC/C,CAAC;IAEO,mBAAmB,CAAC,IAAuB;QACjD,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAAE,OAAO;QAEnC,IAAI,CAAC,gBAAgB,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC;IACrD,CAAC;IAED,YAAY,MAAiB;QAC3B,KAAK,CAAC,MAAM,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC;QA3C/C,SAAI,GAAG,iBAAiB,CAAC;QACzB,yBAAoB,GAAG,CAAC,CAAC;QA4CvB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CACjD,mCAAgB,CAAC,IAAI,CACtB,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,IAAI,CAAC,IAAI,CACP,wGAAwG,CACzG,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAC/C,iCAAkB,CAAC,IAAI,CACxB,CAAC;QACF,IAAI,YAAY,EAAE,CAAC;YACjB,YAAY,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;;AAvEH,4DAwEC;AApEiB,6BAAI,GAAG,0BAA0B,AAA7B,CAA8B","sourcesContent":["import { AppObject, AppObjectUC } from \"@vived/core\";\nimport { SerializedSystem, StateMachineEntity } from \"../../StateMachine\";\nimport { HoverLabelEntity } from \"../Entities/HoverLabelEntity\";\n\nexport class SerializeAllowHoverLabel\n extends AppObjectUC\n implements SerializedSystem\n{\n static readonly type = \"SerializeAllowHoverLabel\";\n\n private hoverLabelEntity?: HoverLabelEntity;\n\n name = \"allowHoverLabel\";\n serializationVersion = 1;\n\n getSystemState(): object {\n if (!this.hoverLabelEntity) {\n return {\n allow: false,\n };\n }\n\n const state: AllowHoverLabelV1 = {\n allow: this.hoverLabelEntity.allowHoverLabel,\n };\n\n return state;\n }\n\n applySystemState(state: object, version: number): void {\n if (state && version === 1) {\n const castState = state as AllowHoverLabelV1;\n this.handleStateVersion1(castState);\n } else {\n // Unsupported version\n console.warn(\n `Unsupported data version ${version} for serialized system ${this.name}. Reverting to default state`,\n );\n this.applyDefaultState();\n }\n }\n\n applyDefaultState(): void {\n if (!this.hoverLabelEntity) return;\n\n this.hoverLabelEntity.allowHoverLabel = true;\n }\n\n private handleStateVersion1(data: AllowHoverLabelV1) {\n if (!this.hoverLabelEntity) return;\n\n this.hoverLabelEntity.allowHoverLabel = data.allow;\n }\n\n constructor(appObj: AppObject) {\n super(appObj, SerializeAllowHoverLabel.type);\n\n this.hoverLabelEntity = this.appObject.getComponent<HoverLabelEntity>(\n HoverLabelEntity.type,\n );\n if (!this.hoverLabelEntity) {\n this.warn(\n \"Serializer has been added to an App Object that does not have a HoverLabelEntity. Add the Entity first\",\n );\n return;\n }\n\n const stateMachine = this.appObjects.getSingleton<StateMachineEntity>(\n StateMachineEntity.type,\n );\n if (stateMachine) {\n stateMachine.registerSerializedSystem(this);\n } else {\n this.warn(\"Unable to find StateMachineEntity\");\n }\n }\n}\n\nexport interface AllowHoverLabelV1 {\n allow: boolean;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TryShowHoverLabel.test.js","sourceRoot":"","sources":["../../../../src/HoverLabel/UseCases/TryShowHoverLabel.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeHoverLabelEntity } from \"../Entities/HoverLabelEntity\";\nimport { makeTryShowHoverLabel } from \"./TryShowHoverLabel\";\nimport { makeAppObjectRepo } from \"@vived/core\";\nimport { ParametricLine, Vector2, Vector3 } from \"@vived/core\";\nimport { makeLabelEntity } from \"../../Label\";\nimport {\n makeMockScenePixelPickUC,\n makeMockSceneRayPickUC,\n} from \"../../Babylon\";\nimport { makeCalloutEntity } from \"../../Callouts\";\n\nfunction makeTestRig() {\n const appObjects = makeAppObjectRepo();\n\n const appObj = appObjects.getOrCreate(\"appObj\");\n const label = makeLabelEntity(appObj);\n label.custom = \"custom label\";\n\n const hoverLabel = makeHoverLabelEntity(appObj);\n\n const showScreenSpy = jest.spyOn(hoverLabel, \"showScreenHoverLabel\");\n const showWorldSpy = jest.spyOn(hoverLabel, \"showWorldHoverLabel\");\n const hideSpy = jest.spyOn(hoverLabel, \"hideHoverLabel\");\n\n const tryShowUC = makeTryShowHoverLabel(appObj);\n\n const mockPixelPickUC = makeMockScenePixelPickUC(appObjects);\n mockPixelPickUC.scenePixelPick = jest\n .fn()\n .mockReturnValue({ appObjectID: \"appObj\" });\n const mockPixelPick = mockPixelPickUC.scenePixelPick;\n\n const mockRayPick = makeMockSceneRayPickUC(appObjects);\n const mockPick = jest.fn().mockReturnValue({\n appObjectID: \"appObj\",\n worldPickPoint: new Vector3(1, 2, 3),\n });\n mockRayPick.sceneRayPick = mockPick;\n\n return {\n hoverLabel,\n label,\n tryShowUC,\n showScreenSpy,\n showWorldSpy,\n hideSpy,\n mockPick,\n mockPixelPick,\n mockPixelPickUC,\n appObj,\n };\n}\n\ndescribe(\"Try Showing the Screen Hover Label Use Case\", () => {\n it(\"Calls hide if the allow hover label is set to false\", () => {\n const { hoverLabel, tryShowUC, hideSpy } = makeTestRig();\n\n hoverLabel.allowHoverLabel = false;\n tryShowUC.tryShowScreenHoverLabel(new Vector2(1, 1));\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Calls Show Screen Hover label with the custom label and screen position\", () => {\n const { hoverLabel, label, tryShowUC, showScreenSpy } = makeTestRig();\n const position = new Vector2(1, 1);\n\n hoverLabel.allowHoverLabel = true;\n tryShowUC.tryShowScreenHoverLabel(position);\n\n expect(showScreenSpy).toHaveBeenCalledWith(label.custom, position);\n });\n\n it(\"Calls Show Screen Hover label with the default label and screen position\", () => {\n const { hoverLabel, label, tryShowUC, showScreenSpy } = makeTestRig();\n const position = new Vector2(1, 1);\n\n hoverLabel.allowHoverLabel = true;\n label.custom = \"\";\n label.default = \"default label\";\n tryShowUC.tryShowScreenHoverLabel(position);\n\n expect(showScreenSpy).toHaveBeenCalledWith(label.default, position);\n });\n\n it(\"Hide the hover label if the label has nothing to show\", () => {\n const { hoverLabel, label, tryShowUC, hideSpy } = makeTestRig();\n const position = new Vector2(1, 1);\n\n hoverLabel.allowHoverLabel = true;\n label.custom = \"\";\n label.default = \"\";\n tryShowUC.tryShowScreenHoverLabel(position);\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hide the hover label if app object ID is unknown\", () => {\n const { tryShowUC, hideSpy, mockPixelPick } = makeTestRig();\n const position = new Vector2(1, 1);\n (mockPixelPick as jest.Mock).mockReturnValue({\n appObjectID: \"someOtherObject\",\n });\n\n tryShowUC.tryShowScreenHoverLabel(position);\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hide the hover label if app object ID is undefined\", () => {\n const { tryShowUC, hideSpy, mockPixelPick } = makeTestRig();\n const position = new Vector2(1, 1);\n (mockPixelPick as jest.Mock).mockReturnValue({});\n\n tryShowUC.tryShowScreenHoverLabel(position);\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hide the hover label if pick is undefined\", () => {\n const { tryShowUC, hideSpy, mockPixelPick } = makeTestRig();\n const position = new Vector2(1, 1);\n (mockPixelPick as jest.Mock).mockReturnValue(undefined);\n\n tryShowUC.tryShowScreenHoverLabel(position);\n\n expect(hideSpy).toHaveBeenCalled();\n });\n});\n\ndescribe(\"Try Showing the World Hover Label Use Case\", () => {\n it(\"Calls hide if the allow hover label is set to false\", () => {\n const { hoverLabel, tryShowUC, hideSpy } = makeTestRig();\n\n hoverLabel.allowHoverLabel = false;\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Calls Show Screen Hover label with the custom label and screen position\", () => {\n const { hoverLabel, label, tryShowUC, showWorldSpy } = makeTestRig();\n\n hoverLabel.allowHoverLabel = true;\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(showWorldSpy).toHaveBeenCalledWith(\n label.custom,\n new Vector3(1, 2, 3)\n );\n });\n\n it(\"Calls Show Screen Hover label with the default label and screen position\", () => {\n const { hoverLabel, label, tryShowUC, showWorldSpy } = makeTestRig();\n\n hoverLabel.allowHoverLabel = true;\n label.custom = \"\";\n label.default = \"default label\";\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(showWorldSpy).toHaveBeenCalledWith(\n label.default,\n new Vector3(1, 2, 3)\n );\n });\n\n it(\"Hide the hover label if the label has nothing to show\", () => {\n const { hoverLabel, label, tryShowUC, hideSpy } = makeTestRig();\n\n hoverLabel.allowHoverLabel = true;\n label.custom = \"\";\n label.default = \"\";\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hide the hover label if app object ID is unknown\", () => {\n const { tryShowUC, hideSpy, mockPick } = makeTestRig();\n\n mockPick.mockReturnValue({\n appObjectID: \"someOtherObject\",\n worldPickPoint: new Vector3(1, 2, 3),\n });\n\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hide the hover label if app object ID is undefined\", () => {\n const { tryShowUC, hideSpy, mockPick } = makeTestRig();\n mockPick.mockReturnValue({\n worldPickPoint: new Vector3(1, 2, 3),\n });\n\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hide the world pick is undefined\", () => {\n const { tryShowUC, hideSpy, mockPick } = makeTestRig();\n mockPick.mockReturnValue({\n appObjectID: \"appObj\",\n });\n\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hide the hover label if pick is undefined\", () => {\n const { tryShowUC, hideSpy, mockPick } = makeTestRig();\n mockPick.mockReturnValue(undefined);\n\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hides the hover label if it hits a callout with a point\", () => {\n const { hoverLabel, tryShowUC, hideSpy, appObj } = makeTestRig();\n makeCalloutEntity(appObj);\n\n hoverLabel.allowHoverLabel = true;\n tryShowUC.tryShowScreenHoverLabel(Vector2.One());\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hides the hover label if it hits a callout with a ray\", () => {\n const { hoverLabel, tryShowUC, hideSpy, appObj } = makeTestRig();\n makeCalloutEntity(appObj);\n\n hoverLabel.allowHoverLabel = true;\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(hideSpy).toHaveBeenCalled();\n });\n});\n"]}
|
|
1
|
+
{"version":3,"file":"TryShowHoverLabel.test.js","sourceRoot":"","sources":["../../../../src/HoverLabel/UseCases/TryShowHoverLabel.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeHoverLabelEntity } from \"../Entities/HoverLabelEntity\";\nimport { makeTryShowHoverLabel } from \"./TryShowHoverLabel\";\nimport { makeAppObjectRepo } from \"@vived/core\";\nimport { ParametricLine, Vector2, Vector3 } from \"@vived/core\";\nimport { makeLabelEntity } from \"../../Label\";\nimport {\n makeMockScenePixelPickUC,\n makeMockSceneRayPickUC,\n} from \"../../Babylon\";\nimport { makeCalloutEntity } from \"../../Callouts\";\n\nfunction makeTestRig() {\n const appObjects = makeAppObjectRepo();\n\n const appObj = appObjects.getOrCreate(\"appObj\");\n const label = makeLabelEntity(appObj);\n label.custom = \"custom label\";\n\n const hoverLabel = makeHoverLabelEntity(appObj);\n\n const showScreenSpy = jest.spyOn(hoverLabel, \"showScreenHoverLabel\");\n const showWorldSpy = jest.spyOn(hoverLabel, \"showWorldHoverLabel\");\n const hideSpy = jest.spyOn(hoverLabel, \"hideHoverLabel\");\n\n const tryShowUC = makeTryShowHoverLabel(appObj);\n\n const mockPixelPickUC = makeMockScenePixelPickUC(appObjects);\n mockPixelPickUC.scenePixelPick = jest\n .fn()\n .mockReturnValue({ appObjectID: \"appObj\" });\n const mockPixelPick = mockPixelPickUC.scenePixelPick;\n\n const mockRayPick = makeMockSceneRayPickUC(appObjects);\n const mockPick = jest.fn().mockReturnValue({\n appObjectID: \"appObj\",\n worldPickPoint: new Vector3(1, 2, 3),\n });\n mockRayPick.sceneRayPick = mockPick;\n\n return {\n hoverLabel,\n label,\n tryShowUC,\n showScreenSpy,\n showWorldSpy,\n hideSpy,\n mockPick,\n mockPixelPick,\n mockPixelPickUC,\n appObj,\n };\n}\n\ndescribe(\"Try Showing the Screen Hover Label Use Case\", () => {\n it(\"Calls hide if the allow hover label is set to false\", () => {\n const { hoverLabel, tryShowUC, hideSpy } = makeTestRig();\n\n hoverLabel.allowHoverLabel = false;\n tryShowUC.tryShowScreenHoverLabel(new Vector2(1, 1));\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Calls Show Screen Hover label with the custom label and screen position\", () => {\n const { hoverLabel, label, tryShowUC, showScreenSpy } = makeTestRig();\n const position = new Vector2(1, 1);\n\n hoverLabel.allowHoverLabel = true;\n tryShowUC.tryShowScreenHoverLabel(position);\n\n expect(showScreenSpy).toHaveBeenCalledWith(label.custom, position);\n });\n\n it(\"Calls Show Screen Hover label with the default label and screen position\", () => {\n const { hoverLabel, label, tryShowUC, showScreenSpy } = makeTestRig();\n const position = new Vector2(1, 1);\n\n hoverLabel.allowHoverLabel = true;\n label.custom = \"\";\n label.default = \"default label\";\n tryShowUC.tryShowScreenHoverLabel(position);\n\n expect(showScreenSpy).toHaveBeenCalledWith(label.default, position);\n });\n\n it(\"Hide the hover label if the label has nothing to show\", () => {\n const { hoverLabel, label, tryShowUC, hideSpy } = makeTestRig();\n const position = new Vector2(1, 1);\n\n hoverLabel.allowHoverLabel = true;\n label.custom = \"\";\n label.default = \"\";\n tryShowUC.tryShowScreenHoverLabel(position);\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hide the hover label if app object ID is unknown\", () => {\n const { tryShowUC, hideSpy, mockPixelPick } = makeTestRig();\n const position = new Vector2(1, 1);\n (mockPixelPick as jest.Mock).mockReturnValue({\n appObjectID: \"someOtherObject\",\n });\n\n tryShowUC.tryShowScreenHoverLabel(position);\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hide the hover label if app object ID is undefined\", () => {\n const { tryShowUC, hideSpy, mockPixelPick } = makeTestRig();\n const position = new Vector2(1, 1);\n (mockPixelPick as jest.Mock).mockReturnValue({});\n\n tryShowUC.tryShowScreenHoverLabel(position);\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hide the hover label if pick is undefined\", () => {\n const { tryShowUC, hideSpy, mockPixelPick } = makeTestRig();\n const position = new Vector2(1, 1);\n (mockPixelPick as jest.Mock).mockReturnValue(undefined);\n\n tryShowUC.tryShowScreenHoverLabel(position);\n\n expect(hideSpy).toHaveBeenCalled();\n });\n});\n\ndescribe(\"Try Showing the World Hover Label Use Case\", () => {\n it(\"Calls hide if the allow hover label is set to false\", () => {\n const { hoverLabel, tryShowUC, hideSpy } = makeTestRig();\n\n hoverLabel.allowHoverLabel = false;\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Calls Show Screen Hover label with the custom label and screen position\", () => {\n const { hoverLabel, label, tryShowUC, showWorldSpy } = makeTestRig();\n\n hoverLabel.allowHoverLabel = true;\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(showWorldSpy).toHaveBeenCalledWith(\n label.custom,\n new Vector3(1, 2, 3),\n );\n });\n\n it(\"Calls Show Screen Hover label with the default label and screen position\", () => {\n const { hoverLabel, label, tryShowUC, showWorldSpy } = makeTestRig();\n\n hoverLabel.allowHoverLabel = true;\n label.custom = \"\";\n label.default = \"default label\";\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(showWorldSpy).toHaveBeenCalledWith(\n label.default,\n new Vector3(1, 2, 3),\n );\n });\n\n it(\"Hide the hover label if the label has nothing to show\", () => {\n const { hoverLabel, label, tryShowUC, hideSpy } = makeTestRig();\n\n hoverLabel.allowHoverLabel = true;\n label.custom = \"\";\n label.default = \"\";\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hide the hover label if app object ID is unknown\", () => {\n const { tryShowUC, hideSpy, mockPick } = makeTestRig();\n\n mockPick.mockReturnValue({\n appObjectID: \"someOtherObject\",\n worldPickPoint: new Vector3(1, 2, 3),\n });\n\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hide the hover label if app object ID is undefined\", () => {\n const { tryShowUC, hideSpy, mockPick } = makeTestRig();\n mockPick.mockReturnValue({\n worldPickPoint: new Vector3(1, 2, 3),\n });\n\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hide the world pick is undefined\", () => {\n const { tryShowUC, hideSpy, mockPick } = makeTestRig();\n mockPick.mockReturnValue({\n appObjectID: \"appObj\",\n });\n\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hide the hover label if pick is undefined\", () => {\n const { tryShowUC, hideSpy, mockPick } = makeTestRig();\n mockPick.mockReturnValue(undefined);\n\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hides the hover label if it hits a callout with a point\", () => {\n const { hoverLabel, tryShowUC, hideSpy, appObj } = makeTestRig();\n makeCalloutEntity(appObj);\n\n hoverLabel.allowHoverLabel = true;\n tryShowUC.tryShowScreenHoverLabel(Vector2.One());\n\n expect(hideSpy).toHaveBeenCalled();\n });\n\n it(\"Hides the hover label if it hits a callout with a ray\", () => {\n const { hoverLabel, tryShowUC, hideSpy, appObj } = makeTestRig();\n makeCalloutEntity(appObj);\n\n hoverLabel.allowHoverLabel = true;\n tryShowUC.tryShowWorldHoverLabel(ParametricLine.Forward());\n\n expect(hideSpy).toHaveBeenCalled();\n });\n});\n"]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const core_1 = require("@vived/core");
|
|
4
|
+
const Entities_1 = require("../Entities");
|
|
4
5
|
const SetCustomLabelUC_1 = require("../UC/SetCustomLabelUC");
|
|
5
6
|
const submitCustomLabel_1 = require("./submitCustomLabel");
|
|
6
7
|
function makeTestRig() {
|
|
@@ -8,6 +9,7 @@ function makeTestRig() {
|
|
|
8
9
|
const mockSubmitWarning = jest.fn();
|
|
9
10
|
appObjects.submitWarning = mockSubmitWarning;
|
|
10
11
|
const ao = appObjects.getOrCreate("App Object ID");
|
|
12
|
+
(0, Entities_1.makeLabelEntity)(ao);
|
|
11
13
|
const clearCustomLabelUC = new SetCustomLabelUC_1.SetCustomLabelUC(ao);
|
|
12
14
|
const mockSubmitCustomLabel = jest.fn();
|
|
13
15
|
clearCustomLabelUC.submit = mockSubmitCustomLabel;
|
|
@@ -32,6 +34,7 @@ describe("Submit Custom Label Controller", () => {
|
|
|
32
34
|
it("Submits warning if SetCustomLabel UC was not added", () => {
|
|
33
35
|
const { appObjects, mockSubmitWarning } = makeTestRig();
|
|
34
36
|
const ao = appObjects.getOrCreate("TEST AO");
|
|
37
|
+
(0, Entities_1.makeLabelEntity)(ao);
|
|
35
38
|
(0, submitCustomLabel_1.submitCustomLabel)(ao.id, appObjects);
|
|
36
39
|
expect(mockSubmitWarning).toHaveBeenCalled();
|
|
37
40
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"submitCustomLabel.test.js","sourceRoot":"","sources":["../../../../src/Label/Controller/submitCustomLabel.test.ts"],"names":[],"mappings":";;AAAA,sCAAgD;AAChD,6DAA0D;AAC1D,2DAAwD;AAExD,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IAEvC,MAAM,iBAAiB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACpC,UAAU,CAAC,aAAa,GAAG,iBAAiB,CAAC;IAE7C,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"submitCustomLabel.test.js","sourceRoot":"","sources":["../../../../src/Label/Controller/submitCustomLabel.test.ts"],"names":[],"mappings":";;AAAA,sCAAgD;AAChD,0CAA8C;AAC9C,6DAA0D;AAC1D,2DAAwD;AAExD,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IAEvC,MAAM,iBAAiB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACpC,UAAU,CAAC,aAAa,GAAG,iBAAiB,CAAC;IAE7C,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IACnD,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAC;IAEpB,MAAM,kBAAkB,GAAG,IAAI,mCAAgB,CAAC,EAAE,CAAC,CAAC;IACpD,MAAM,qBAAqB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACxC,kBAAkB,CAAC,MAAM,GAAG,qBAAqB,CAAC;IAElD,OAAO;QACL,UAAU;QACV,EAAE;QACF,iBAAiB;QACjB,qBAAqB;KACtB,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;IAC9C,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,qBAAqB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEhE,IAAA,qCAAiB,EAAC,EAAE,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAErC,MAAM,CAAC,qBAAqB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QAExD,IAAA,qCAAiB,EAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QAEzC,MAAM,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QACxD,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAC;QAEpB,IAAA,qCAAiB,EAAC,EAAE,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAErC,MAAM,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC/C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\nimport { makeLabelEntity } from \"../Entities\";\nimport { SetCustomLabelUC } from \"../UC/SetCustomLabelUC\";\nimport { submitCustomLabel } from \"./submitCustomLabel\";\n\nfunction makeTestRig() {\n const appObjects = makeAppObjectRepo();\n\n const mockSubmitWarning = jest.fn();\n appObjects.submitWarning = mockSubmitWarning;\n\n const ao = appObjects.getOrCreate(\"App Object ID\");\n makeLabelEntity(ao);\n\n const clearCustomLabelUC = new SetCustomLabelUC(ao);\n const mockSubmitCustomLabel = jest.fn();\n clearCustomLabelUC.submit = mockSubmitCustomLabel;\n\n return {\n appObjects,\n ao,\n mockSubmitWarning,\n mockSubmitCustomLabel,\n };\n}\n\ndescribe(\"Submit Custom Label Controller\", () => {\n it(\"Calls Submit Custom Label method\", () => {\n const { appObjects, ao, mockSubmitCustomLabel } = makeTestRig();\n\n submitCustomLabel(ao.id, appObjects);\n\n expect(mockSubmitCustomLabel).toHaveBeenCalled();\n });\n\n it(\"Submits warning if App Object is not found\", () => {\n const { appObjects, mockSubmitWarning } = makeTestRig();\n\n submitCustomLabel(\"TEST AO\", appObjects);\n\n expect(mockSubmitWarning).toHaveBeenCalled();\n });\n\n it(\"Submits warning if SetCustomLabel UC was not added\", () => {\n const { appObjects, mockSubmitWarning } = makeTestRig();\n const ao = appObjects.getOrCreate(\"TEST AO\");\n makeLabelEntity(ao);\n\n submitCustomLabel(ao.id, appObjects);\n\n expect(mockSubmitWarning).toHaveBeenCalled();\n });\n});\n"]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const core_1 = require("@vived/core");
|
|
4
|
+
const Entities_1 = require("../Entities");
|
|
4
5
|
const SetCustomLabelUC_1 = require("../UC/SetCustomLabelUC");
|
|
5
6
|
const updateCustomLabel_1 = require("./updateCustomLabel");
|
|
6
7
|
function makeTestRig() {
|
|
@@ -8,6 +9,7 @@ function makeTestRig() {
|
|
|
8
9
|
const mockSubmitWarning = jest.fn();
|
|
9
10
|
appObjects.submitWarning = mockSubmitWarning;
|
|
10
11
|
const ao = appObjects.getOrCreate("App Object ID");
|
|
12
|
+
(0, Entities_1.makeLabelEntity)(ao);
|
|
11
13
|
const clearCustomLabelUC = new SetCustomLabelUC_1.SetCustomLabelUC(ao);
|
|
12
14
|
const mockUpdateCustomLabel = jest.fn();
|
|
13
15
|
clearCustomLabelUC.update = mockUpdateCustomLabel;
|
|
@@ -32,6 +34,7 @@ describe("Update Custom Label Controller", () => {
|
|
|
32
34
|
it("Submits warning if SetCustomLabel UC was not added", () => {
|
|
33
35
|
const { appObjects, mockSubmitWarning } = makeTestRig();
|
|
34
36
|
const ao = appObjects.getOrCreate("TEST AO");
|
|
37
|
+
(0, Entities_1.makeLabelEntity)(ao);
|
|
35
38
|
(0, updateCustomLabel_1.updateCustomLabel)("custom", ao.id, appObjects);
|
|
36
39
|
expect(mockSubmitWarning).toHaveBeenCalled();
|
|
37
40
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateCustomLabel.test.js","sourceRoot":"","sources":["../../../../src/Label/Controller/updateCustomLabel.test.ts"],"names":[],"mappings":";;AAAA,sCAAgD;AAChD,6DAA0D;AAC1D,2DAAwD;AAExD,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IAEvC,MAAM,iBAAiB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACpC,UAAU,CAAC,aAAa,GAAG,iBAAiB,CAAC;IAE7C,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"updateCustomLabel.test.js","sourceRoot":"","sources":["../../../../src/Label/Controller/updateCustomLabel.test.ts"],"names":[],"mappings":";;AAAA,sCAAgD;AAChD,0CAA8C;AAC9C,6DAA0D;AAC1D,2DAAwD;AAExD,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IAEvC,MAAM,iBAAiB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACpC,UAAU,CAAC,aAAa,GAAG,iBAAiB,CAAC;IAE7C,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IACnD,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAC;IAEpB,MAAM,kBAAkB,GAAG,IAAI,mCAAgB,CAAC,EAAE,CAAC,CAAC;IACpD,MAAM,qBAAqB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACxC,kBAAkB,CAAC,MAAM,GAAG,qBAAqB,CAAC;IAElD,OAAO;QACL,UAAU;QACV,EAAE;QACF,iBAAiB;QACjB,qBAAqB;KACtB,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;IAC9C,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACvC,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,qBAAqB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEhE,IAAA,qCAAiB,EAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAE/C,MAAM,CAAC,qBAAqB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QAExD,IAAA,qCAAiB,EAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QAEnD,MAAM,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;QAC5D,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QACxD,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAC;QAEpB,IAAA,qCAAiB,EAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAE/C,MAAM,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC/C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\nimport { makeLabelEntity } from \"../Entities\";\nimport { SetCustomLabelUC } from \"../UC/SetCustomLabelUC\";\nimport { updateCustomLabel } from \"./updateCustomLabel\";\n\nfunction makeTestRig() {\n const appObjects = makeAppObjectRepo();\n\n const mockSubmitWarning = jest.fn();\n appObjects.submitWarning = mockSubmitWarning;\n\n const ao = appObjects.getOrCreate(\"App Object ID\");\n makeLabelEntity(ao);\n\n const clearCustomLabelUC = new SetCustomLabelUC(ao);\n const mockUpdateCustomLabel = jest.fn();\n clearCustomLabelUC.update = mockUpdateCustomLabel;\n\n return {\n appObjects,\n ao,\n mockSubmitWarning,\n mockUpdateCustomLabel,\n };\n}\n\ndescribe(\"Update Custom Label Controller\", () => {\n it(\"Calls Set Custom Label method\", () => {\n const { appObjects, ao, mockUpdateCustomLabel } = makeTestRig();\n\n updateCustomLabel(\"custom\", ao.id, appObjects);\n\n expect(mockUpdateCustomLabel).toHaveBeenCalled();\n });\n\n it(\"Submits warning if App Object is not found\", () => {\n const { appObjects, mockSubmitWarning } = makeTestRig();\n\n updateCustomLabel(\"custom\", \"TEST AO\", appObjects);\n\n expect(mockSubmitWarning).toHaveBeenCalled();\n });\n\n it(\"Submits warning if SetCustomLabel UC was not added\", () => {\n const { appObjects, mockSubmitWarning } = makeTestRig();\n const ao = appObjects.getOrCreate(\"TEST AO\");\n makeLabelEntity(ao);\n\n updateCustomLabel(\"custom\", ao.id, appObjects);\n\n expect(mockSubmitWarning).toHaveBeenCalled();\n });\n});\n"]}
|
|
@@ -36,13 +36,6 @@ describe("Clear Custom Label UC", () => {
|
|
|
36
36
|
clearCustomLabelUC.clearCustomLabel();
|
|
37
37
|
expect(label.custom).toEqual("");
|
|
38
38
|
});
|
|
39
|
-
it("Submits warning if label entity was not added to App Object", () => {
|
|
40
|
-
const { appObjects, mockSubmitWarning } = makeTestRig();
|
|
41
|
-
const ao = appObjects.getOrCreate("testAO");
|
|
42
|
-
const clearCustomLabel = new ClearCustomLabelUC_1.ClearCustomLabelUC(ao);
|
|
43
|
-
clearCustomLabel.clearCustomLabel();
|
|
44
|
-
expect(mockSubmitWarning).toHaveBeenCalledTimes(2);
|
|
45
|
-
});
|
|
46
39
|
it("Dispatches state chagne when clear custom label", () => {
|
|
47
40
|
const { label, clearCustomLabelUC, doDispatchMock } = makeTestRig();
|
|
48
41
|
label.custom = "custom";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClearCustomLabelUC.test.js","sourceRoot":"","sources":["../../../../src/Label/UC/ClearCustomLabelUC.test.ts"],"names":[],"mappings":";;AAAA,sCAAgD;AAChD,iDAA+D;AAC/D,oEAAiE;AACjE,0CAA8C;AAC9C,6DAA0D;AAE1D,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IAEvC,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAEzC,MAAM,QAAQ,GAAG,IAAI,2BAAY,CAAC,EAAE,CAAC,CAAC;IACtC,6CAA6C;IAC7C,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAClC,MAAM,cAAc,GAAG,IAAA,wCAA2B,EAAC,UAAU,CAAC,CAAC;IAC/D,MAAM,cAAc,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACjC,cAAc,CAAC,UAAU,GAAG,cAAc,CAAC;IAE3C,MAAM,KAAK,GAAG,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAC;IAClC,MAAM,kBAAkB,GAAG,IAAI,uCAAkB,CAAC,EAAE,CAAC,CAAC;IAEtD,MAAM,iBAAiB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACpC,UAAU,CAAC,aAAa,GAAG,iBAAiB,CAAC;IAE7C,OAAO;QACL,UAAU;QACV,EAAE;QACF,QAAQ;QACR,cAAc;QACd,cAAc;QACd,KAAK;QACL,kBAAkB;QAClB,iBAAiB;KAClB,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAC7B,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEpD,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC;QACxB,kBAAkB,CAAC,gBAAgB,EAAE,CAAC;QAEtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"ClearCustomLabelUC.test.js","sourceRoot":"","sources":["../../../../src/Label/UC/ClearCustomLabelUC.test.ts"],"names":[],"mappings":";;AAAA,sCAAgD;AAChD,iDAA+D;AAC/D,oEAAiE;AACjE,0CAA8C;AAC9C,6DAA0D;AAE1D,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IAEvC,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAEzC,MAAM,QAAQ,GAAG,IAAI,2BAAY,CAAC,EAAE,CAAC,CAAC;IACtC,6CAA6C;IAC7C,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAClC,MAAM,cAAc,GAAG,IAAA,wCAA2B,EAAC,UAAU,CAAC,CAAC;IAC/D,MAAM,cAAc,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACjC,cAAc,CAAC,UAAU,GAAG,cAAc,CAAC;IAE3C,MAAM,KAAK,GAAG,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAC;IAClC,MAAM,kBAAkB,GAAG,IAAI,uCAAkB,CAAC,EAAE,CAAC,CAAC;IAEtD,MAAM,iBAAiB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACpC,UAAU,CAAC,aAAa,GAAG,iBAAiB,CAAC;IAE7C,OAAO;QACL,UAAU;QACV,EAAE;QACF,QAAQ;QACR,cAAc;QACd,cAAc;QACd,KAAK;QACL,kBAAkB;QAClB,iBAAiB;KAClB,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,qBAAqB,EAAE,GAAG,EAAE;QAC7B,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEpD,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC;QACxB,kBAAkB,CAAC,gBAAgB,EAAE,CAAC;QAEtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,GAAG,WAAW,EAAE,CAAC;QAEpE,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC;QACxB,kBAAkB,CAAC,gBAAgB,EAAE,CAAC;QAEtC,MAAM,CAAC,cAAc,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAC1B,MAAM,EAAE,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,CAAC;QAE9D,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC;QACxB,kBAAkB,CAAC,gBAAgB,EAAE,CAAC;QAEtC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACnD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\nimport { makeMockDispatchStateChange } from \"../../Dispatcher\";\nimport { MockUndoRedo } from \"../../UndoRedo/Mocks/MockUndoRedo\";\nimport { makeLabelEntity } from \"../Entities\";\nimport { ClearCustomLabelUC } from \"./ClearCustomLabelUC\";\n\nfunction makeTestRig() {\n const appObjects = makeAppObjectRepo();\n\n const ao = appObjects.getOrCreate(\"App\");\n\n const mockUndo = new MockUndoRedo(ao);\n // Override the submitAction with a jest.fn()\n mockUndo.submitAction = jest.fn();\n const mockDispatcher = makeMockDispatchStateChange(appObjects);\n const doDispatchMock = jest.fn();\n mockDispatcher.doDispatch = doDispatchMock;\n\n const label = makeLabelEntity(ao);\n const clearCustomLabelUC = new ClearCustomLabelUC(ao);\n\n const mockSubmitWarning = jest.fn();\n appObjects.submitWarning = mockSubmitWarning;\n\n return {\n appObjects,\n ao,\n mockUndo,\n mockDispatcher,\n doDispatchMock,\n label,\n clearCustomLabelUC,\n mockSubmitWarning,\n };\n}\n\ndescribe(\"Clear Custom Label UC\", () => {\n it(\"Clears custom label\", () => {\n const { label, clearCustomLabelUC } = makeTestRig();\n\n label.custom = \"custom\";\n clearCustomLabelUC.clearCustomLabel();\n\n expect(label.custom).toEqual(\"\");\n });\n\n it(\"Dispatches state chagne when clear custom label\", () => {\n const { label, clearCustomLabelUC, doDispatchMock } = makeTestRig();\n\n label.custom = \"custom\";\n clearCustomLabelUC.clearCustomLabel();\n\n expect(doDispatchMock).toHaveBeenCalled();\n });\n\n it(\"Submits and undo\", () => {\n const { label, clearCustomLabelUC, mockUndo } = makeTestRig();\n\n label.custom = \"custom\";\n clearCustomLabelUC.clearCustomLabel();\n\n expect(mockUndo.submitAction).toHaveBeenCalled();\n });\n});\n"]}
|
|
@@ -9,6 +9,7 @@ class SerializeCustomLabels extends core_1.AppObjectUC {
|
|
|
9
9
|
constructor() {
|
|
10
10
|
super(...arguments);
|
|
11
11
|
this.name = "serialize-custom-labels";
|
|
12
|
+
this.serializationVersion = 1;
|
|
12
13
|
}
|
|
13
14
|
}
|
|
14
15
|
exports.SerializeCustomLabels = SerializeCustomLabels;
|
|
@@ -70,7 +71,6 @@ class SerializeCustomLabelsImp extends SerializeCustomLabels {
|
|
|
70
71
|
}
|
|
71
72
|
constructor(appObj) {
|
|
72
73
|
super(appObj, SerializeCustomLabels.type);
|
|
73
|
-
this.seriliziationVersion = 1;
|
|
74
74
|
const stateMachine = this.appObjects.getSingleton(StateMachine_1.StateMachineEntity.type);
|
|
75
75
|
if (stateMachine) {
|
|
76
76
|
stateMachine.registerSerializedSystem(this);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SerializeCustomLabels.js","sourceRoot":"","sources":["../../../../src/Label/UC/SerializeCustomLabels.ts"],"names":[],"mappings":";;;AAoBA,8DAIC;AAxBD,sCAAqD;AACrD,qDAA0E;AAC1E,0CAA0C;AAE1C,MAAsB,qBACpB,SAAQ,kBAAW;IADrB;;QAKE,SAAI,GAAW,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"SerializeCustomLabels.js","sourceRoot":"","sources":["../../../../src/Label/UC/SerializeCustomLabels.ts"],"names":[],"mappings":";;;AAoBA,8DAIC;AAxBD,sCAAqD;AACrD,qDAA0E;AAC1E,0CAA0C;AAE1C,MAAsB,qBACpB,SAAQ,kBAAW;IADrB;;QAKE,SAAI,GAAW,yBAAyB,CAAC;QACzC,yBAAoB,GAAW,CAAC,CAAC;IAQnC,CAAC;;AAdD,sDAcC;AAViB,0BAAI,GAAG,uBAAuB,AAA1B,CAA2B;AAYjD,SAAgB,yBAAyB,CACvC,SAAoB;IAEpB,OAAO,IAAI,wBAAwB,CAAC,SAAS,CAAC,CAAC;AACjD,CAAC;AAED,MAAa,wBAAyB,SAAQ,qBAAqB;IACjE,cAAc;QACZ,MAAM,YAAY,GAA8B,EAAE,CAAC;QAEnD,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAChD,sBAAW,CAAC,IAAI,CACjB,CAAC;QAEF,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YAC1B,IAAI,KAAK,CAAC,cAAc;gBACtB,YAAY,CAAC,IAAI,CAAC;oBAChB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE;oBAC5B,WAAW,EAAE,KAAK,CAAC,MAAM;iBAC1B,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,MAAM,KAAK,GAA6B;YACtC,YAAY;SACb,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB,CACd,KAAa,EACb,OAAe,EACf,SAAiB;QAEjB,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC,YAAY,CAAC,KAAiC,EAAE,SAAS,CAAC,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,KAA+B,EAAE,SAAiB;QACrE,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;QAE/B,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/C,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QAED,kCAAkC;QAClC,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAkB,CAAC;QACrD,YAAY,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;YACnC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAChD,sBAAW,CAAC,IAAI,CACjB,CAAC;QAEF,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YAC1B,MAAM,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACvC,KAAK,CAAC,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEH,kBAAkB,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,EAAE;YACnD,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YACxD,MAAM,KAAK,GAAG,sBAAW,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YAClD,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,iBAAiB;QACf,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAChD,sBAAW,CAAC,IAAI,CACjB,CAAC;QAEF,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YAC1B,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,YAAY,MAAiB;QAC3B,KAAK,CAAC,MAAM,EAAE,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAE1C,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAC/C,iCAAkB,CAAC,IAAI,CACxB,CAAC;QACF,IAAI,YAAY,EAAE,CAAC;YACjB,YAAY,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;CACF;AAtFD,4DAsFC","sourcesContent":["import { AppObject, AppObjectUC } from \"@vived/core\";\nimport { SerializedSystem, StateMachineEntity } from \"../../StateMachine\";\nimport { LabelEntity } from \"../Entities\";\n\nexport abstract class SerializeCustomLabels\n extends AppObjectUC\n implements SerializedSystem\n{\n static readonly type = \"SerializeCustomLabels\";\n name: string = \"serialize-custom-labels\";\n serializationVersion: number = 1;\n abstract getSystemState(): object;\n abstract applySystemState(\n state: object,\n version: number,\n transitionDuration: number,\n ): void;\n abstract applyDefaultState(transitionDuration: number): void;\n}\n\nexport function makeSerializeCustomLabels(\n appObject: AppObject,\n): SerializeCustomLabels {\n return new SerializeCustomLabelsImp(appObject);\n}\n\nexport class SerializeCustomLabelsImp extends SerializeCustomLabels {\n getSystemState(): object {\n const customLabels: SerializedCustomLabelV1[] = [];\n\n const allLabels = this.appObjects.getAllComponents<LabelEntity>(\n LabelEntity.type,\n );\n\n allLabels.forEach((label) => {\n if (label.hasCustomLabel)\n customLabels.push({\n objectId: label.appObject.id,\n customLabel: label.custom,\n });\n });\n\n const state: SerializedCustomLabelsV1 = {\n customLabels,\n };\n return state;\n }\n\n applySystemState(\n state: object,\n version: number,\n durationS: number,\n ): Promise<void> | void {\n if (version === 1) {\n return this.applyStateV1(state as SerializedCustomLabelsV1, durationS);\n } else {\n this.applyDefaultState();\n }\n }\n\n private applyStateV1(state: SerializedCustomLabelsV1, durationS: number) {\n const { customLabels } = state;\n\n if (!customLabels || customLabels.length === 0) {\n this.applyDefaultState();\n return;\n }\n\n // Create a Map for faster lookups\n const customLabelsLookup = new Map<string, string>();\n customLabels.forEach((customLabel) => {\n customLabelsLookup.set(customLabel.objectId, customLabel.customLabel);\n });\n\n const allLabels = this.appObjects.getAllComponents<LabelEntity>(\n LabelEntity.type,\n );\n\n allLabels.forEach((label) => {\n const appObjectId = label.appObject.id;\n label.custom = customLabelsLookup.get(appObjectId) ?? \"\";\n });\n\n customLabelsLookup.forEach((customLabel, objectId) => {\n const appObject = this.appObjects.getOrCreate(objectId);\n const label = LabelEntity.addIfMissing(appObject);\n label.custom = customLabel;\n });\n }\n\n applyDefaultState(): void {\n const allLabels = this.appObjects.getAllComponents<LabelEntity>(\n LabelEntity.type,\n );\n\n allLabels.forEach((label) => {\n label.custom = \"\";\n });\n }\n\n constructor(appObj: AppObject) {\n super(appObj, SerializeCustomLabels.type);\n\n const stateMachine = this.appObjects.getSingleton<StateMachineEntity>(\n StateMachineEntity.type,\n );\n if (stateMachine) {\n stateMachine.registerSerializedSystem(this);\n } else {\n this.warn(\"Unable to find StateMachineEntity\");\n }\n }\n}\n\nexport interface SerializedCustomLabelsV1 {\n customLabels: SerializedCustomLabelV1[];\n}\n\nexport interface SerializedCustomLabelV1 {\n objectId: string;\n customLabel: string;\n}\n"]}
|
|
@@ -36,13 +36,6 @@ describe("Set Custom Label UC", () => {
|
|
|
36
36
|
setCustomLabelUC.update("custom");
|
|
37
37
|
expect(label.custom).toEqual("custom");
|
|
38
38
|
});
|
|
39
|
-
it("Submits warning if label entity was not added to App Object", () => {
|
|
40
|
-
const { appObjects, mockSubmitWarning } = makeTestRig();
|
|
41
|
-
const ao = appObjects.getOrCreate("testAO");
|
|
42
|
-
const clearCustomLabel = new SetCustomLabelUC_1.SetCustomLabelUC(ao);
|
|
43
|
-
clearCustomLabel.update("custom");
|
|
44
|
-
expect(mockSubmitWarning).toHaveBeenCalledTimes(3);
|
|
45
|
-
});
|
|
46
39
|
it("Dispatches state chagne when clear custom label", () => {
|
|
47
40
|
const { setCustomLabelUC, doDispatchMock } = makeTestRig();
|
|
48
41
|
setCustomLabelUC.update("custom");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SetCustomLabelUC.test.js","sourceRoot":"","sources":["../../../../src/Label/UC/SetCustomLabelUC.test.ts"],"names":[],"mappings":";;AAAA,sCAAgD;AAChD,iDAA+D;AAC/D,oEAAiE;AACjE,0CAA8C;AAC9C,yDAAsD;AAEtD,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IAEvC,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAEzC,MAAM,QAAQ,GAAG,IAAI,2BAAY,CAAC,EAAE,CAAC,CAAC;IACtC,6CAA6C;IAC7C,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAClC,MAAM,cAAc,GAAG,IAAA,wCAA2B,EAAC,UAAU,CAAC,CAAC;IAC/D,MAAM,cAAc,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACjC,cAAc,CAAC,UAAU,GAAG,cAAc,CAAC;IAE3C,MAAM,KAAK,GAAG,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAC;IAClC,MAAM,gBAAgB,GAAG,IAAI,mCAAgB,CAAC,EAAE,CAAC,CAAC;IAElD,MAAM,iBAAiB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACpC,UAAU,CAAC,aAAa,GAAG,iBAAiB,CAAC;IAE7C,OAAO;QACL,UAAU;QACV,EAAE;QACF,QAAQ;QACR,cAAc;QACd,cAAc;QACd,KAAK;QACL,gBAAgB;QAChB,iBAAiB;KAClB,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE;QAC3B,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,WAAW,EAAE,CAAC;QAElD,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;QAClB,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAElC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"SetCustomLabelUC.test.js","sourceRoot":"","sources":["../../../../src/Label/UC/SetCustomLabelUC.test.ts"],"names":[],"mappings":";;AAAA,sCAAgD;AAChD,iDAA+D;AAC/D,oEAAiE;AACjE,0CAA8C;AAC9C,yDAAsD;AAEtD,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IAEvC,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAEzC,MAAM,QAAQ,GAAG,IAAI,2BAAY,CAAC,EAAE,CAAC,CAAC;IACtC,6CAA6C;IAC7C,QAAQ,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAClC,MAAM,cAAc,GAAG,IAAA,wCAA2B,EAAC,UAAU,CAAC,CAAC;IAC/D,MAAM,cAAc,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACjC,cAAc,CAAC,UAAU,GAAG,cAAc,CAAC;IAE3C,MAAM,KAAK,GAAG,IAAA,0BAAe,EAAC,EAAE,CAAC,CAAC;IAClC,MAAM,gBAAgB,GAAG,IAAI,mCAAgB,CAAC,EAAE,CAAC,CAAC;IAElD,MAAM,iBAAiB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACpC,UAAU,CAAC,aAAa,GAAG,iBAAiB,CAAC;IAE7C,OAAO;QACL,UAAU;QACV,EAAE;QACF,QAAQ;QACR,cAAc;QACd,cAAc;QACd,KAAK;QACL,gBAAgB;QAChB,iBAAiB;KAClB,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE;QAC3B,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,WAAW,EAAE,CAAC;QAElD,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC;QAClB,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAElC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,EAAE,gBAAgB,EAAE,cAAc,EAAE,GAAG,WAAW,EAAE,CAAC;QAE3D,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAElC,MAAM,CAAC,cAAc,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAC1B,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,CAAC;QAErD,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClC,gBAAgB,CAAC,MAAM,EAAE,CAAC;QAE1B,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QACzE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,CAAC;QAE5D,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;QACzB,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClC,gBAAgB,CAAC,MAAM,EAAE,CAAC;QAE1B,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACnD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\nimport { makeMockDispatchStateChange } from \"../../Dispatcher\";\nimport { MockUndoRedo } from \"../../UndoRedo/Mocks/MockUndoRedo\";\nimport { makeLabelEntity } from \"../Entities\";\nimport { SetCustomLabelUC } from \"./SetCustomLabelUC\";\n\nfunction makeTestRig() {\n const appObjects = makeAppObjectRepo();\n\n const ao = appObjects.getOrCreate(\"App\");\n\n const mockUndo = new MockUndoRedo(ao);\n // Override the submitAction with a jest.fn()\n mockUndo.submitAction = jest.fn();\n const mockDispatcher = makeMockDispatchStateChange(appObjects);\n const doDispatchMock = jest.fn();\n mockDispatcher.doDispatch = doDispatchMock;\n\n const label = makeLabelEntity(ao);\n const setCustomLabelUC = new SetCustomLabelUC(ao);\n\n const mockSubmitWarning = jest.fn();\n appObjects.submitWarning = mockSubmitWarning;\n\n return {\n appObjects,\n ao,\n mockUndo,\n mockDispatcher,\n doDispatchMock,\n label,\n setCustomLabelUC,\n mockSubmitWarning,\n };\n}\n\ndescribe(\"Set Custom Label UC\", () => {\n it(\"Sets custom label\", () => {\n const { label, setCustomLabelUC } = makeTestRig();\n\n label.custom = \"\";\n setCustomLabelUC.update(\"custom\");\n\n expect(label.custom).toEqual(\"custom\");\n });\n\n it(\"Dispatches state chagne when clear custom label\", () => {\n const { setCustomLabelUC, doDispatchMock } = makeTestRig();\n\n setCustomLabelUC.update(\"custom\");\n\n expect(doDispatchMock).toHaveBeenCalled();\n });\n\n it(\"Submits and undo\", () => {\n const { setCustomLabelUC, mockUndo } = makeTestRig();\n\n setCustomLabelUC.update(\"custom\");\n setCustomLabelUC.submit();\n\n expect(mockUndo.submitAction).toHaveBeenCalled();\n });\n\n it(\"Submits undo operation with correct previous and current labels\", () => {\n const { label, setCustomLabelUC, mockUndo } = makeTestRig();\n\n label.custom = \"initial\";\n setCustomLabelUC.update(\"custom\");\n setCustomLabelUC.submit();\n\n expect(mockUndo.submitAction).toHaveBeenCalled();\n });\n});\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"releaseLabelDropAnswerItemScreen.test.js","sourceRoot":"","sources":["../../../../src/LabelDrop/Controller/releaseLabelDropAnswerItemScreen.test.ts"],"names":[],"mappings":";;AAAA,sCAAgD;AAChD,sCAAsD;AACtD,qFAAsF;AACtF,0DAGqC;AACrC,+EAAgF;AAChF,6DAA8D;AAC9D,sEAAuE;AACvE,yFAAsF;AACtF,qDAAuE;AAEvE,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IAEvC,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,eAAe,GAAG,IAAA,iCAAiB,EAAC,EAAE,CAAC,CAAC;IAE9C,MAAM,MAAM,GAAG,IAAA,6CAAuB,EAAC,UAAU,CAAC,CAAC;IAEnD,eAAe,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IAErD,MAAM,iBAAiB,GAAG,IAAA,iDAAyB,EAAC,UAAU,CAAC,CAAC;IAChE,iBAAiB,CAAC,eAAe,GAAG,IAAI;SACrC,EAAE,EAAE;SACJ,eAAe,CAAC,qBAAc,CAAC,OAAO,EAAE,CAAC,CAAC;IAE7C,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC;AACxE,CAAC;AAED,QAAQ,CAAC,qCAAqC,EAAE,GAAG,EAAE;IACnD,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACjC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,WAAW,EAAE,CAAC;QAC7C,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QAE3B,IAAA,mEAAgC,EAAC,EAAE,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;QACrD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,qBAAc,CAAC,OAAO,EAAE,CAAC,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QAChE,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QAE3B,MAAM,YAAY,GAAG,IAAA,2BAAgB,EACnC,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,CACvC,CAAC;QACF,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,gDAAiC,CAAC,CAAC;QACrE,MAAM,YAAY,GAAG,IAAA,oCAAyB,EAAC,EAAE,CAAC,CAAC;QACnD,IAAA,yCAAqB,EAAC,EAAE,CAAC,CAAC;QAC1B,YAAY,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QACxC,YAAY,CAAC,QAAQ,GAAG,IAAI,cAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAE1C,MAAM,UAAU,GAAG,IAAI,cAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACvC,MAAM,cAAc,GAAG,IAAI,cAAO,CAChC,UAAU,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,EACtC,UAAU,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CACvC,CAAC;QAEF,IAAA,mEAAgC,EAAC,EAAE,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;QACrD,MAAM,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC,oBAAoB,CAC5D,cAAc,CACf,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\nimport { ParametricLine, Vector2 } from \"@vived/core\";\nimport { makeMockPixelToSceneRayUC } from \"../../Babylon/Mocks/MockPixelToSceneRayUC\";\nimport {\n makeFramedScreen,\n makeFramedScreenContainer,\n} from \"../../FramedScreen/Entities\";\nimport { makeFramedContainerPM } from \"../../FramedScreen/PM/FramedContainerPM\";\nimport { makeLabelDropRepo } from \"../Entities/LabelDropRepo\";\nimport { makeMockDragLabelDropUC } from \"../Mocks/MockDragLabelDropUC\";\nimport { releaseLabelDropAnswerItemScreen } from \"./releaseLabelDropAnswerItemScreen\";\nimport { RENDER_CANVAS_FRAMED_CONTAINER_ID } from \"../../FramedScreen\";\n\nfunction makeTestRig() {\n const appObjects = makeAppObjectRepo();\n\n const ao = appObjects.getOrCreate(\"ao\");\n const labelDropEntity = makeLabelDropRepo(ao);\n\n const mockUC = makeMockDragLabelDropUC(appObjects);\n\n labelDropEntity.makeLabelDropItem(\"labelDropTestID\");\n\n const pixelToSceneRayUC = makeMockPixelToSceneRayUC(appObjects);\n pixelToSceneRayUC.pixelToSceneRay = jest\n .fn()\n .mockReturnValue(ParametricLine.Forward());\n\n return { appObjects, ao, labelDropEntity, mockUC, pixelToSceneRayUC };\n}\n\ndescribe(\"Release Drag Label Drop Answer Item\", () => {\n it(\"Calls release on the UC\", () => {\n const { mockUC, appObjects } = makeTestRig();\n mockUC.release.mockClear();\n\n releaseLabelDropAnswerItemScreen(10, 20, appObjects);\n expect(mockUC.release).toHaveBeenCalledWith(ParametricLine.Forward());\n });\n\n it(\"Offsets with the render canvas if it exists\", () => {\n const { mockUC, appObjects, pixelToSceneRayUC } = makeTestRig();\n mockUC.release.mockClear();\n\n const framedScreen = makeFramedScreen(\n appObjects.getOrCreate(\"FramedScreen\")
|
|
1
|
+
{"version":3,"file":"releaseLabelDropAnswerItemScreen.test.js","sourceRoot":"","sources":["../../../../src/LabelDrop/Controller/releaseLabelDropAnswerItemScreen.test.ts"],"names":[],"mappings":";;AAAA,sCAAgD;AAChD,sCAAsD;AACtD,qFAAsF;AACtF,0DAGqC;AACrC,+EAAgF;AAChF,6DAA8D;AAC9D,sEAAuE;AACvE,yFAAsF;AACtF,qDAAuE;AAEvE,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IAEvC,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,eAAe,GAAG,IAAA,iCAAiB,EAAC,EAAE,CAAC,CAAC;IAE9C,MAAM,MAAM,GAAG,IAAA,6CAAuB,EAAC,UAAU,CAAC,CAAC;IAEnD,eAAe,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IAErD,MAAM,iBAAiB,GAAG,IAAA,iDAAyB,EAAC,UAAU,CAAC,CAAC;IAChE,iBAAiB,CAAC,eAAe,GAAG,IAAI;SACrC,EAAE,EAAE;SACJ,eAAe,CAAC,qBAAc,CAAC,OAAO,EAAE,CAAC,CAAC;IAE7C,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,iBAAiB,EAAE,CAAC;AACxE,CAAC;AAED,QAAQ,CAAC,qCAAqC,EAAE,GAAG,EAAE;IACnD,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACjC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,WAAW,EAAE,CAAC;QAC7C,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QAE3B,IAAA,mEAAgC,EAAC,EAAE,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;QACrD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,qBAAc,CAAC,OAAO,EAAE,CAAC,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QAChE,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QAE3B,MAAM,YAAY,GAAG,IAAA,2BAAgB,EACnC,UAAU,CAAC,WAAW,CAAC,cAAc,CAAC,CACvC,CAAC;QACF,MAAM,EAAE,GAAG,UAAU,CAAC,WAAW,CAAC,gDAAiC,CAAC,CAAC;QACrE,MAAM,YAAY,GAAG,IAAA,oCAAyB,EAAC,EAAE,CAAC,CAAC;QACnD,IAAA,yCAAqB,EAAC,EAAE,CAAC,CAAC;QAC1B,YAAY,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QACxC,YAAY,CAAC,QAAQ,GAAG,IAAI,cAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAE1C,MAAM,UAAU,GAAG,IAAI,cAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACvC,MAAM,cAAc,GAAG,IAAI,cAAO,CAChC,UAAU,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,EACtC,UAAU,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC,CACvC,CAAC;QAEF,IAAA,mEAAgC,EAAC,EAAE,EAAE,EAAE,EAAE,UAAU,CAAC,CAAC;QACrD,MAAM,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC,oBAAoB,CAC5D,cAAc,CACf,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\nimport { ParametricLine, Vector2 } from \"@vived/core\";\nimport { makeMockPixelToSceneRayUC } from \"../../Babylon/Mocks/MockPixelToSceneRayUC\";\nimport {\n makeFramedScreen,\n makeFramedScreenContainer,\n} from \"../../FramedScreen/Entities\";\nimport { makeFramedContainerPM } from \"../../FramedScreen/PM/FramedContainerPM\";\nimport { makeLabelDropRepo } from \"../Entities/LabelDropRepo\";\nimport { makeMockDragLabelDropUC } from \"../Mocks/MockDragLabelDropUC\";\nimport { releaseLabelDropAnswerItemScreen } from \"./releaseLabelDropAnswerItemScreen\";\nimport { RENDER_CANVAS_FRAMED_CONTAINER_ID } from \"../../FramedScreen\";\n\nfunction makeTestRig() {\n const appObjects = makeAppObjectRepo();\n\n const ao = appObjects.getOrCreate(\"ao\");\n const labelDropEntity = makeLabelDropRepo(ao);\n\n const mockUC = makeMockDragLabelDropUC(appObjects);\n\n labelDropEntity.makeLabelDropItem(\"labelDropTestID\");\n\n const pixelToSceneRayUC = makeMockPixelToSceneRayUC(appObjects);\n pixelToSceneRayUC.pixelToSceneRay = jest\n .fn()\n .mockReturnValue(ParametricLine.Forward());\n\n return { appObjects, ao, labelDropEntity, mockUC, pixelToSceneRayUC };\n}\n\ndescribe(\"Release Drag Label Drop Answer Item\", () => {\n it(\"Calls release on the UC\", () => {\n const { mockUC, appObjects } = makeTestRig();\n mockUC.release.mockClear();\n\n releaseLabelDropAnswerItemScreen(10, 20, appObjects);\n expect(mockUC.release).toHaveBeenCalledWith(ParametricLine.Forward());\n });\n\n it(\"Offsets with the render canvas if it exists\", () => {\n const { mockUC, appObjects, pixelToSceneRayUC } = makeTestRig();\n mockUC.release.mockClear();\n\n const framedScreen = makeFramedScreen(\n appObjects.getOrCreate(\"FramedScreen\"),\n );\n const ao = appObjects.getOrCreate(RENDER_CANVAS_FRAMED_CONTAINER_ID);\n const renderCanvas = makeFramedScreenContainer(ao);\n makeFramedContainerPM(ao);\n framedScreen.addContainer(renderCanvas);\n renderCanvas.position = new Vector2(1, 2);\n\n const releasePos = new Vector2(10, 20);\n const expectedOffSet = new Vector2(\n releasePos.x - renderCanvas.position.x,\n releasePos.y - renderCanvas.position.y,\n );\n\n releaseLabelDropAnswerItemScreen(10, 20, appObjects);\n expect(pixelToSceneRayUC.pixelToSceneRay).toHaveBeenCalledWith(\n expectedOffSet,\n );\n });\n});\n"]}
|
|
@@ -55,7 +55,7 @@ class SerializeLabelDrop extends core_1.AppObjectUC {
|
|
|
55
55
|
constructor(appObject) {
|
|
56
56
|
super(appObject, SerializeLabelDrop.type);
|
|
57
57
|
this.name = "label-drop";
|
|
58
|
-
this.
|
|
58
|
+
this.serializationVersion = 1;
|
|
59
59
|
const stateMachine = StateMachineEntity_1.StateMachineEntity.get(appObject.appObjectRepo);
|
|
60
60
|
if (stateMachine) {
|
|
61
61
|
stateMachine.registerSerializedSystem(this);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SerializeLabelDrop.js","sourceRoot":"","sources":["../../../../src/LabelDrop/UseCases/SerializeLabelDrop.ts"],"names":[],"mappings":";;;AAAA,sCAAqD;AACrD,uFAGwD;AACxD,6DAA0D;AAE1D,MAAa,kBACX,SAAQ,kBAAW;IAQnB,IAAY,SAAS;QACnB,OAAO,IAAI,CAAC,kBAAkB,CAAgB,6BAAa,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC;IAED,cAAc;QACZ,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO,EAAE,CAAC;QAE/B,MAAM,UAAU,GAAgC,IAAI,CAAC,SAAS;aAC3D,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;YAChB,OAAO;gBACL,EAAE,EAAE,QAAQ,CAAC,EAAE;gBACf,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,MAAM;gBAClC,mBAAmB,EAAE,QAAQ,CAAC,SAAS;aACxC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEL,MAAM,KAAK,GAA0B;YACnC,UAAU;SACX,CAAC;QAEF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB,CAAC,KAAa,EAAE,OAAe;QAC7C,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;YAClB,IAAI,CAAC,YAAY,CAAC,KAA8B,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,KAA4B;QAC/C,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAE5B,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACnC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;QAChC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YACpC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC5D,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC;YACzC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,mBAAmB,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAE5B,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;IAClC,CAAC;IAED,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;QA1D5C,SAAI,GAAG,YAAY,CAAC;QACpB,yBAAoB,GAAG,CAAC,CAAC;QA2DvB,MAAM,YAAY,GAAG,uCAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACrE,IAAI,YAAY,EAAE,CAAC;YACjB,YAAY,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;;AAxEH,gDAyEC;AArEiB,uBAAI,GAAG,oBAAoB,AAAvB,CAAwB","sourcesContent":["import { AppObject, AppObjectUC } from \"@vived/core\";\nimport {\n SerializedSystem,\n StateMachineEntity,\n} from \"../../StateMachine/Entities/StateMachineEntity\";\nimport { LabelDropRepo } from \"../Entities/LabelDropRepo\";\n\nexport class SerializeLabelDrop\n extends AppObjectUC\n implements SerializedSystem\n{\n static readonly type = \"SerializeLabelDrop\";\n\n name = \"label-drop\";\n
|
|
1
|
+
{"version":3,"file":"SerializeLabelDrop.js","sourceRoot":"","sources":["../../../../src/LabelDrop/UseCases/SerializeLabelDrop.ts"],"names":[],"mappings":";;;AAAA,sCAAqD;AACrD,uFAGwD;AACxD,6DAA0D;AAE1D,MAAa,kBACX,SAAQ,kBAAW;IAQnB,IAAY,SAAS;QACnB,OAAO,IAAI,CAAC,kBAAkB,CAAgB,6BAAa,CAAC,IAAI,CAAC,CAAC;IACpE,CAAC;IAED,cAAc;QACZ,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO,EAAE,CAAC;QAE/B,MAAM,UAAU,GAAgC,IAAI,CAAC,SAAS;aAC3D,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;YAChB,OAAO;gBACL,EAAE,EAAE,QAAQ,CAAC,EAAE;gBACf,KAAK,EAAE,QAAQ,CAAC,WAAW,CAAC,MAAM;gBAClC,mBAAmB,EAAE,QAAQ,CAAC,SAAS;aACxC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEL,MAAM,KAAK,GAA0B;YACnC,UAAU;SACX,CAAC;QAEF,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB,CAAC,KAAa,EAAE,OAAe;QAC7C,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;YAClB,IAAI,CAAC,YAAY,CAAC,KAA8B,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,KAA4B;QAC/C,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAE5B,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACnC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;QAChC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YACpC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAU,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC5D,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC;YACzC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,mBAAmB,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAE5B,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC;IAClC,CAAC;IAED,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;QA1D5C,SAAI,GAAG,YAAY,CAAC;QACpB,yBAAoB,GAAG,CAAC,CAAC;QA2DvB,MAAM,YAAY,GAAG,uCAAkB,CAAC,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACrE,IAAI,YAAY,EAAE,CAAC;YACjB,YAAY,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;;AAxEH,gDAyEC;AArEiB,uBAAI,GAAG,oBAAoB,AAAvB,CAAwB","sourcesContent":["import { AppObject, AppObjectUC } from \"@vived/core\";\nimport {\n SerializedSystem,\n StateMachineEntity,\n} from \"../../StateMachine/Entities/StateMachineEntity\";\nimport { LabelDropRepo } from \"../Entities/LabelDropRepo\";\n\nexport class SerializeLabelDrop\n extends AppObjectUC\n implements SerializedSystem\n{\n static readonly type = \"SerializeLabelDrop\";\n\n name = \"label-drop\";\n serializationVersion = 1;\n\n private get labelDrop() {\n return this.getCachedSingleton<LabelDropRepo>(LabelDropRepo.type);\n }\n\n getSystemState(): object {\n if (!this.labelDrop) return {};\n\n const labelDrops: SerializedLabelDropItemV1[] = this.labelDrop\n .getAll()\n .map((dropItem) => {\n return {\n id: dropItem.id,\n label: dropItem.labelEntity.custom,\n correctAppObjectIDs: dropItem.targetIds,\n };\n });\n\n const state: SerializedLabelDropV1 = {\n labelDrops,\n };\n\n return state;\n }\n\n applySystemState(state: object, version: number): void {\n if (version === 1) {\n this.applyStateV1(state as SerializedLabelDropV1);\n } else {\n this.applyDefaultState();\n }\n }\n\n private applyStateV1(state: SerializedLabelDropV1) {\n if (!this.labelDrop) return;\n\n if (state.labelDrops === undefined) {\n this.applyDefaultState();\n return;\n }\n\n this.labelDrop.deleteAllItems();\n state.labelDrops.forEach((dropItem) => {\n const item = this.labelDrop!.makeLabelDropItem(dropItem.id);\n item.labelEntity.custom = dropItem.label;\n item.targetIds = dropItem.correctAppObjectIDs;\n });\n }\n\n applyDefaultState(): void {\n if (!this.labelDrop) return;\n\n this.labelDrop.deleteAllItems();\n }\n\n constructor(appObject: AppObject) {\n super(appObject, SerializeLabelDrop.type);\n\n const stateMachine = StateMachineEntity.get(appObject.appObjectRepo);\n if (stateMachine) {\n stateMachine.registerSerializedSystem(this);\n } else {\n this.error(\"Unable to find StateMachineEntity\");\n }\n }\n}\n\nexport interface SerializedLabelDropV1 {\n labelDrops: SerializedLabelDropItemV1[];\n}\n\nexport interface SerializedLabelDropItemV1 {\n id: string;\n label: string;\n correctAppObjectIDs: string[];\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToggleLabelDropTargetUC.test.js","sourceRoot":"","sources":["../../../../src/LabelDrop/UseCases/ToggleLabelDropTargetUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\nimport { ParametricLine, Vector2, Vector3 } from \"@vived/core\";\nimport {\n makeMockPixelToSceneRayUC,\n makeMockSceneRayPickUC,\n} from \"../../Babylon/Mocks\";\nimport { makeLabelDropRepo } from \"../Entities/LabelDropRepo\";\nimport {\n makeToggleLabelDropTargetUC,\n ToggleLabelDropTargetUC,\n} from \"./ToggleLabelDropTargetUC\";\n\nfunction makeTestRig() {\n const appObjects = makeAppObjectRepo();\n const registerSpy = jest.spyOn(appObjects, \"registerSingleton\");\n\n const labelDropAO = appObjects.getOrCreate(\"repo\");\n\n const repo = makeLabelDropRepo(labelDropAO);\n const dropItem = repo.makeLabelDropItem(\"labelDropID\");\n repo.editingID = \"labelDropID\";\n\n const mockRayPick = makeMockSceneRayPickUC(appObjects);\n const mockPick = jest.fn().mockReturnValue({ appObjectID: \"hideableObj\" });\n mockRayPick.sceneRayPick = mockPick;\n\n const mockPixelToRay = makeMockPixelToSceneRayUC(appObjects);\n mockPixelToRay.pixelToSceneRay = jest.fn();\n\n const uc = makeToggleLabelDropTargetUC(labelDropAO);\n\n return {\n appObjects,\n repo,\n uc,\n dropItem,\n mockPick,\n registerSpy,\n mockPixelToRay,\n };\n}\n\ndescribe(\"Toggle Label Drop Target UC\", () => {\n it(\"Get it UC\", () => {\n const { appObjects, uc } = makeTestRig();\n\n expect(ToggleLabelDropTargetUC.get(appObjects)).toEqual(uc);\n });\n\n it(\"Registers as the singleton\", () => {\n const { uc, registerSpy } = makeTestRig();\n\n expect(registerSpy).toHaveBeenCalledWith(uc);\n });\n\n it(\"Toggles target ID\", () => {\n const { uc, dropItem } = makeTestRig();\n\n expect(dropItem.targetIds).toEqual([]);\n\n uc.toggleByID(\"target1\");\n\n expect(dropItem.targetIds).toEqual([\"target1\"]);\n\n uc.toggleByID(\"target1\");\n\n expect(dropItem.targetIds).toEqual([]);\n });\n\n it(\"Toggles the ray picked ID\", () => {\n const { uc, dropItem, mockPick } = makeTestRig();\n\n expect(dropItem.targetIds).toEqual([]);\n\n mockPick.mockReturnValue({\n appObjectID: \"target1\",\n });\n\n uc.tryToggleFromRay(ParametricLine.Forward());\n\n expect(dropItem.targetIds).toEqual([\"target1\"]);\n\n uc.tryToggleFromRay(ParametricLine.Forward());\n\n expect(dropItem.targetIds).toEqual([]);\n });\n\n it(\"Converts a pixel to a ray and then picks\", () => {\n const { uc, mockPixelToRay } = makeTestRig();\n\n uc.tryToggleFromRay = jest.fn();\n const mockRay = ParametricLine.FromTwoPoint(\n new Vector3(1, 2, 3),\n new Vector3(4, 5, 6)
|
|
1
|
+
{"version":3,"file":"ToggleLabelDropTargetUC.test.js","sourceRoot":"","sources":["../../../../src/LabelDrop/UseCases/ToggleLabelDropTargetUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\nimport { ParametricLine, Vector2, Vector3 } from \"@vived/core\";\nimport {\n makeMockPixelToSceneRayUC,\n makeMockSceneRayPickUC,\n} from \"../../Babylon/Mocks\";\nimport { makeLabelDropRepo } from \"../Entities/LabelDropRepo\";\nimport {\n makeToggleLabelDropTargetUC,\n ToggleLabelDropTargetUC,\n} from \"./ToggleLabelDropTargetUC\";\n\nfunction makeTestRig() {\n const appObjects = makeAppObjectRepo();\n const registerSpy = jest.spyOn(appObjects, \"registerSingleton\");\n\n const labelDropAO = appObjects.getOrCreate(\"repo\");\n\n const repo = makeLabelDropRepo(labelDropAO);\n const dropItem = repo.makeLabelDropItem(\"labelDropID\");\n repo.editingID = \"labelDropID\";\n\n const mockRayPick = makeMockSceneRayPickUC(appObjects);\n const mockPick = jest.fn().mockReturnValue({ appObjectID: \"hideableObj\" });\n mockRayPick.sceneRayPick = mockPick;\n\n const mockPixelToRay = makeMockPixelToSceneRayUC(appObjects);\n mockPixelToRay.pixelToSceneRay = jest.fn();\n\n const uc = makeToggleLabelDropTargetUC(labelDropAO);\n\n return {\n appObjects,\n repo,\n uc,\n dropItem,\n mockPick,\n registerSpy,\n mockPixelToRay,\n };\n}\n\ndescribe(\"Toggle Label Drop Target UC\", () => {\n it(\"Get it UC\", () => {\n const { appObjects, uc } = makeTestRig();\n\n expect(ToggleLabelDropTargetUC.get(appObjects)).toEqual(uc);\n });\n\n it(\"Registers as the singleton\", () => {\n const { uc, registerSpy } = makeTestRig();\n\n expect(registerSpy).toHaveBeenCalledWith(uc);\n });\n\n it(\"Toggles target ID\", () => {\n const { uc, dropItem } = makeTestRig();\n\n expect(dropItem.targetIds).toEqual([]);\n\n uc.toggleByID(\"target1\");\n\n expect(dropItem.targetIds).toEqual([\"target1\"]);\n\n uc.toggleByID(\"target1\");\n\n expect(dropItem.targetIds).toEqual([]);\n });\n\n it(\"Toggles the ray picked ID\", () => {\n const { uc, dropItem, mockPick } = makeTestRig();\n\n expect(dropItem.targetIds).toEqual([]);\n\n mockPick.mockReturnValue({\n appObjectID: \"target1\",\n });\n\n uc.tryToggleFromRay(ParametricLine.Forward());\n\n expect(dropItem.targetIds).toEqual([\"target1\"]);\n\n uc.tryToggleFromRay(ParametricLine.Forward());\n\n expect(dropItem.targetIds).toEqual([]);\n });\n\n it(\"Converts a pixel to a ray and then picks\", () => {\n const { uc, mockPixelToRay } = makeTestRig();\n\n uc.tryToggleFromRay = jest.fn();\n const mockRay = ParametricLine.FromTwoPoint(\n new Vector3(1, 2, 3),\n new Vector3(4, 5, 6),\n );\n (mockPixelToRay.pixelToSceneRay as jest.Mock).mockReturnValue(mockRay);\n\n uc.tryToggleFromPixel(new Vector2(7, 8));\n\n expect(mockPixelToRay.pixelToSceneRay).toHaveBeenCalledWith(\n new Vector2(7, 8),\n );\n expect(uc.tryToggleFromRay).toHaveBeenCalledWith(mockRay);\n });\n});\n"]}
|
|
@@ -25,18 +25,15 @@ class LandmarkSizePMImp extends LandmarkSizePM {
|
|
|
25
25
|
}
|
|
26
26
|
constructor(appObject) {
|
|
27
27
|
super(appObject, LandmarkSizePM.type);
|
|
28
|
-
this.
|
|
28
|
+
this.defaultVM = 0;
|
|
29
|
+
this.formVM = () => {
|
|
29
30
|
if (!this.landmarkEntity)
|
|
30
31
|
return;
|
|
31
32
|
this.doUpdateView(this.landmarkEntity.size);
|
|
32
33
|
};
|
|
33
|
-
this.
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
this.landmarkEntity?.removeOnDisposeObserver(this.dispose);
|
|
37
|
-
};
|
|
38
|
-
this.landmarkEntity?.addChangeObserver(this.onRepoChange);
|
|
39
|
-
this.onRepoChange();
|
|
34
|
+
if (this.landmarkEntity) {
|
|
35
|
+
this.observeEntity(this.landmarkEntity);
|
|
36
|
+
}
|
|
40
37
|
}
|
|
41
38
|
}
|
|
42
39
|
//# sourceMappingURL=LandmarkSizePM.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LandmarkSizePM.js","sourceRoot":"","sources":["../../../../src/Landmarks/PM/LandmarkSizePM.ts"],"names":[],"mappings":";;;AAaA,gDAEC;AAfD,sCAAoE;AACpE,+DAA4D;AAE5D,MAAsB,cAAe,SAAQ,kBAAmB;IAG9D,MAAM,CAAC,GAAG,CAAC,EAAU,EAAE,UAAyB;QAC9C,OAAO,UAAU;aACd,GAAG,CAAC,EAAE,CAAC;YACR,EAAE,YAAY,CAAiB,cAAc,CAAC,IAAI,CAAC,CAAC;IACxD,CAAC;;AAPH,wCAQC;AAPiB,mBAAI,GAAG,gBAAgB,CAAC;AAS1C,SAAgB,kBAAkB,CAAC,SAAoB;IACrD,OAAO,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,iBAAkB,SAAQ,cAAc;
|
|
1
|
+
{"version":3,"file":"LandmarkSizePM.js","sourceRoot":"","sources":["../../../../src/Landmarks/PM/LandmarkSizePM.ts"],"names":[],"mappings":";;;AAaA,gDAEC;AAfD,sCAAoE;AACpE,+DAA4D;AAE5D,MAAsB,cAAe,SAAQ,kBAAmB;IAG9D,MAAM,CAAC,GAAG,CAAC,EAAU,EAAE,UAAyB;QAC9C,OAAO,UAAU;aACd,GAAG,CAAC,EAAE,CAAC;YACR,EAAE,YAAY,CAAiB,cAAc,CAAC,IAAI,CAAC,CAAC;IACxD,CAAC;;AAPH,wCAQC;AAPiB,mBAAI,GAAG,gBAAgB,CAAC;AAS1C,SAAgB,kBAAkB,CAAC,SAAoB;IACrD,OAAO,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,iBAAkB,SAAQ,cAAc;IAG5C,IAAY,cAAc;QACxB,OAAO,IAAI,CAAC,uBAAuB,CAAiB,+BAAc,CAAC,IAAI,CAAC,CAAC;IAC3E,CAAC;IAED,WAAW,CAAC,CAAS,EAAE,CAAS;QAC9B,OAAO,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IAQD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC;QAjBxC,cAAS,GAAG,CAAC,CAAC;QAUd,WAAM,GAAG,GAAS,EAAE;YAClB,IAAI,CAAC,IAAI,CAAC,cAAc;gBAAE,OAAO;YAEjC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC,CAAC;QAKA,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;CACF","sourcesContent":["import { AppObject, AppObjectPM, AppObjectRepo } from \"@vived/core\";\nimport { LandmarkEntity } from \"../Entities/LandmarkEntity\";\n\nexport abstract class LandmarkSizePM extends AppObjectPM<number> {\n static readonly type = \"LandmarkSizePM\";\n\n static get(id: string, appObjects: AppObjectRepo) {\n return appObjects\n .get(id)\n ?.getComponent<LandmarkSizePM>(LandmarkSizePM.type);\n }\n}\n\nexport function makeLandmarkSizePM(appObject: AppObject): LandmarkSizePM {\n return new LandmarkSizePMImp(appObject);\n}\n\nclass LandmarkSizePMImp extends LandmarkSizePM {\n defaultVM = 0;\n\n private get landmarkEntity() {\n return this.getCachedLocalComponent<LandmarkEntity>(LandmarkEntity.type);\n }\n\n vmsAreEqual(a: number, b: number): boolean {\n return a === b;\n }\n\n formVM = (): void => {\n if (!this.landmarkEntity) return;\n\n this.doUpdateView(this.landmarkEntity.size);\n };\n\n constructor(appObject: AppObject) {\n super(appObject, LandmarkSizePM.type);\n\n if (this.landmarkEntity) {\n this.observeEntity(this.landmarkEntity);\n }\n }\n}\n"]}
|
|
@@ -80,7 +80,7 @@ class SerializeLandmarks extends core_1.AppObjectUC {
|
|
|
80
80
|
constructor(appObj) {
|
|
81
81
|
super(appObj, SerializeLandmarks.type);
|
|
82
82
|
this.name = "landmarks";
|
|
83
|
-
this.
|
|
83
|
+
this.serializationVersion = 1;
|
|
84
84
|
const stateMachine = this.appObjects.getSingleton(Entities_1.StateMachineEntity.type);
|
|
85
85
|
if (stateMachine) {
|
|
86
86
|
stateMachine.registerSerializedSystem(this);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SerializeLandmarks.js","sourceRoot":"","sources":["../../../../src/Landmarks/UseCases/SerializeLandmarks.ts"],"names":[],"mappings":"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","sourcesContent":["import { AppObject, AppObjectUC } from \"@vived/core\";\nimport { EnablementEntity } from \"../../Enablement/Entities\";\nimport {\n SerializedSystem,\n StateMachineEntity,\n} from \"../../StateMachine/Entities\";\nimport { LandmarkDTO, LandmarkEntity } from \"../Entities/LandmarkEntity\";\nimport { LandmarkGlobals } from \"../Entities/LandmarkGlobals\";\nimport { LandmarkRepo } from \"../Entities/LandmarkRepo\";\n\nexport class SerializeLandmarks\n extends AppObjectUC\n implements SerializedSystem\n{\n static readonly type = \"SerializeLandmarks\";\n\n name = \"landmarks\";\n
|
|
1
|
+
{"version":3,"file":"SerializeLandmarks.js","sourceRoot":"","sources":["../../../../src/Landmarks/UseCases/SerializeLandmarks.ts"],"names":[],"mappings":"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","sourcesContent":["import { AppObject, AppObjectUC } from \"@vived/core\";\nimport { EnablementEntity } from \"../../Enablement/Entities\";\nimport {\n SerializedSystem,\n StateMachineEntity,\n} from \"../../StateMachine/Entities\";\nimport { LandmarkDTO, LandmarkEntity } from \"../Entities/LandmarkEntity\";\nimport { LandmarkGlobals } from \"../Entities/LandmarkGlobals\";\nimport { LandmarkRepo } from \"../Entities/LandmarkRepo\";\n\nexport class SerializeLandmarks\n extends AppObjectUC\n implements SerializedSystem\n{\n static readonly type = \"SerializeLandmarks\";\n\n name = \"landmarks\";\n serializationVersion = 1;\n\n private get globals() {\n return this.getCachedSingleton<LandmarkGlobals>(LandmarkGlobals.type);\n }\n\n getSystemState(): object {\n const allLandmarks = this.appObjects.getAllComponents<LandmarkEntity>(\n LandmarkEntity.type,\n );\n\n const landmarks: LandmarkDTO[] = [];\n allLandmarks.forEach((landmark) => {\n if (landmark.parentID) {\n landmarks.push(landmark.data);\n }\n });\n\n return {\n landmarks,\n };\n }\n\n applySystemState(state: object, version: number): void {\n if (version === 1) {\n this.handleStateVersion1(state as SerializedLandmarksV1);\n } else {\n this.warn(\"Unsupported state version. Reverting to default\");\n this.applyDefaultState();\n }\n }\n\n private handleStateVersion1(state: SerializedLandmarksV1) {\n const { landmarks } = state;\n if (!landmarks) {\n this.warn(\"Unable to parse state. Reverting to default\");\n this.applyDefaultState();\n return;\n }\n\n const previousLandmarkLookup = new Map<string, LandmarkEntity>();\n const allLandmarks = this.appObjects.getAllComponents<LandmarkEntity>(\n LandmarkEntity.type,\n );\n\n allLandmarks.forEach((landmark) => {\n if (landmark.parentID) {\n previousLandmarkLookup.set(landmark.appObject.id, landmark);\n }\n });\n\n landmarks.forEach((landmarkData) => {\n const existing = previousLandmarkLookup.get(landmarkData.id);\n if (existing) {\n existing.data = landmarkData;\n previousLandmarkLookup.delete(landmarkData.id);\n return;\n }\n\n let repo = this.appObjects.getAppObjectComponent<LandmarkRepo>(\n landmarkData.parentID,\n LandmarkRepo.type,\n );\n\n if (!repo) {\n repo = this.globals?.landmarkRepoFactory(landmarkData.parentID);\n }\n\n const landmark = repo!.createLandmark(landmarkData.id);\n landmark.data = landmarkData;\n });\n\n previousLandmarkLookup.forEach((landmark) => {\n this.disposeLandmark(landmark);\n });\n }\n\n private disposeLandmark(landmark: LandmarkEntity) {\n const repo = LandmarkRepo.getByID(landmark.parentID, this.appObjects);\n if (repo) {\n repo.deleteLandmark(landmark.appObject.id);\n }\n }\n\n applyDefaultState(): void {\n const allLandmarks = this.appObjects.getAllComponents<LandmarkEntity>(\n LandmarkEntity.type,\n );\n allLandmarks.forEach((landmark) => {\n if (landmark.parentID) {\n this.disposeLandmark(landmark);\n }\n });\n }\n\n constructor(appObj: AppObject) {\n super(appObj, SerializeLandmarks.type);\n\n const stateMachine = this.appObjects.getSingleton<StateMachineEntity>(\n StateMachineEntity.type,\n );\n if (stateMachine) {\n stateMachine.registerSerializedSystem(this);\n } else {\n this.warn(\"Unable to find StateMachineEntity\");\n }\n }\n}\n\nexport interface SerializedLandmarksV1 {\n landmarks: LandmarkDTO[];\n}\n"]}
|
|
@@ -4,6 +4,7 @@ const core_1 = require("@vived/core");
|
|
|
4
4
|
const core_2 = require("@vived/core");
|
|
5
5
|
const Babylon_1 = require("../../Babylon");
|
|
6
6
|
const MockDispatchStateChange_1 = require("../../Dispatcher/Mocks/MockDispatchStateChange");
|
|
7
|
+
const Selection_1 = require("../../Selection/Entities/Selection");
|
|
7
8
|
const Tools_1 = require("../../Tools");
|
|
8
9
|
const MockUndoRedo_1 = require("../../UndoRedo/Mocks/MockUndoRedo");
|
|
9
10
|
const Entities_1 = require("../Entities");
|
|
@@ -28,6 +29,7 @@ function makeTestRig() {
|
|
|
28
29
|
const pickedAO = appObjects.getOrCreate("anAppObject");
|
|
29
30
|
const repo = (0, LandmarkRepo_1.makeLandmarkRepoEntity)(pickedAO);
|
|
30
31
|
const landmarkGlobals = (0, Entities_1.makeLandmarkGlobals)(appObjects.getOrCreate("LandmarkGlobals"));
|
|
32
|
+
const selection = (0, Selection_1.makeSelection)(appObjects.getOrCreate("Selection"));
|
|
31
33
|
const tryAddLandmarkUC = (0, TryAddNewLandmarkUC_1.makeTryAddLandmarkUC)(pickedAO);
|
|
32
34
|
const toolRepo = (0, Tools_1.makeToolRepo)(appObjects.getOrCreate("ToolRepo"));
|
|
33
35
|
toolRepo.makeTool("LANDMARK");
|