@vived/host 4.0.2 → 4.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/AppSandbox/Factories/setupAppSandbox.js +6 -0
- package/dist/cjs/AppSandbox/Factories/setupAppSandbox.js.map +1 -1
- package/dist/cjs/AppSandbox/UCs/submitActivityAssetHandlerSandbox.js +37 -0
- package/dist/cjs/AppSandbox/UCs/submitActivityAssetHandlerSandbox.js.map +1 -0
- package/dist/cjs/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.js +55 -0
- package/dist/cjs/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.js.map +1 -0
- package/dist/cjs/Assets/Factories/setupAssetsForSandbox.js +1 -0
- package/dist/cjs/Assets/Factories/setupAssetsForSandbox.js.map +1 -1
- package/dist/cjs/Assets/Mocks/MockNewAssetUC.js +16 -0
- package/dist/cjs/Assets/Mocks/MockNewAssetUC.js.map +1 -0
- package/dist/cjs/Assets/Mocks/index.js +1 -0
- package/dist/cjs/Assets/Mocks/index.js.map +1 -1
- package/dist/cjs/Assets/UCs/NewAppAssetUC.js.map +1 -1
- package/dist/cjs/Assets/UCs/NewAppAssetUC.test.js.map +1 -1
- package/dist/cjs/Assets/UCs/NewAssetUC.js +53 -0
- package/dist/cjs/Assets/UCs/NewAssetUC.js.map +1 -0
- package/dist/cjs/Assets/UCs/NewAssetUC.test.js +104 -0
- package/dist/cjs/Assets/UCs/NewAssetUC.test.js.map +1 -0
- package/dist/cjs/Assets/UCs/index.js +1 -0
- package/dist/cjs/Assets/UCs/index.js.map +1 -1
- package/dist/cjs/Dialog/Entities/Alert.js +2 -0
- package/dist/cjs/Dialog/Entities/Alert.js.map +1 -1
- package/dist/cjs/Dialog/Entities/Alert.test.js +6 -0
- package/dist/cjs/Dialog/Entities/Alert.test.js.map +1 -1
- package/dist/cjs/Dialog/Entities/Confirm.js +3 -0
- package/dist/cjs/Dialog/Entities/Confirm.js.map +1 -1
- package/dist/cjs/Dialog/Entities/Confirm.test.js +12 -0
- package/dist/cjs/Dialog/Entities/Confirm.test.js.map +1 -1
- package/dist/cjs/Dialog/Entities/DialogQueue.js +16 -3
- package/dist/cjs/Dialog/Entities/DialogQueue.js.map +1 -1
- package/dist/cjs/Dialog/Entities/DialogQueue.test.js +21 -0
- package/dist/cjs/Dialog/Entities/DialogQueue.test.js.map +1 -1
- package/dist/cjs/Dialog/Entities/MarkDownEditor.js +3 -0
- package/dist/cjs/Dialog/Entities/MarkDownEditor.js.map +1 -1
- package/dist/cjs/Dialog/Entities/MarkDownEditor.test.js +12 -0
- package/dist/cjs/Dialog/Entities/MarkDownEditor.test.js.map +1 -1
- package/dist/cjs/Dialog/Entities/SelectModel.js +1 -0
- package/dist/cjs/Dialog/Entities/SelectModel.js.map +1 -1
- package/dist/cjs/Dialog/Entities/Spinner.js +2 -0
- package/dist/cjs/Dialog/Entities/Spinner.js.map +1 -1
- package/dist/cjs/Dialog/Entities/Spinner.test.js +17 -0
- package/dist/cjs/Dialog/Entities/Spinner.test.js.map +1 -1
- package/dist/cjs/Handler/setupStandardHostHandlers.js +1 -0
- package/dist/cjs/Handler/setupStandardHostHandlers.js.map +1 -1
- package/dist/cjs/StateMachine/Adapters/hostStateAdapter.js +24 -0
- package/dist/cjs/StateMachine/Adapters/hostStateAdapter.js.map +1 -0
- package/dist/cjs/StateMachine/Adapters/hostStateAdapter.test.js +49 -0
- package/dist/cjs/StateMachine/Adapters/hostStateAdapter.test.js.map +1 -0
- package/dist/cjs/StateMachine/Adapters/index.js +1 -0
- package/dist/cjs/StateMachine/Adapters/index.js.map +1 -1
- package/dist/cjs/StateMachine/Controllers/editStateName.js +13 -0
- package/dist/cjs/StateMachine/Controllers/editStateName.js.map +1 -0
- package/dist/cjs/StateMachine/Controllers/editStateName.test.js +49 -0
- package/dist/cjs/StateMachine/Controllers/editStateName.test.js.map +1 -0
- package/dist/cjs/StateMachine/Controllers/index.js +1 -0
- package/dist/cjs/StateMachine/Controllers/index.js.map +1 -1
- package/dist/cjs/StateMachine/Entities/HostStateMachine.js +67 -24
- package/dist/cjs/StateMachine/Entities/HostStateMachine.js.map +1 -1
- package/dist/cjs/StateMachine/Entities/HostStateMachine.test.js +174 -0
- package/dist/cjs/StateMachine/Entities/HostStateMachine.test.js.map +1 -1
- package/dist/cjs/StateMachine/Mocks/MockEditStateNameUC.js +12 -0
- package/dist/cjs/StateMachine/Mocks/MockEditStateNameUC.js.map +1 -0
- package/dist/cjs/StateMachine/Mocks/MockHostStatePM.js +23 -0
- package/dist/cjs/StateMachine/Mocks/MockHostStatePM.js.map +1 -0
- package/dist/cjs/StateMachine/PMs/HostStateMachinePM.js +21 -15
- package/dist/cjs/StateMachine/PMs/HostStateMachinePM.js.map +1 -1
- package/dist/cjs/StateMachine/PMs/HostStateMachinePM.test.js +65 -56
- package/dist/cjs/StateMachine/PMs/HostStateMachinePM.test.js.map +1 -1
- package/dist/cjs/StateMachine/PMs/HostStatePM.js +136 -0
- package/dist/cjs/StateMachine/PMs/HostStatePM.js.map +1 -0
- package/dist/cjs/StateMachine/PMs/HostStatePM.test.js +405 -0
- package/dist/cjs/StateMachine/PMs/HostStatePM.test.js.map +1 -0
- package/dist/cjs/StateMachine/PMs/index.js +1 -0
- package/dist/cjs/StateMachine/PMs/index.js.map +1 -1
- package/dist/cjs/StateMachine/UCs/EditStateNameUC.js +35 -0
- package/dist/cjs/StateMachine/UCs/EditStateNameUC.js.map +1 -0
- package/dist/cjs/StateMachine/UCs/EditStateNameUC.test.js +58 -0
- package/dist/cjs/StateMachine/UCs/EditStateNameUC.test.js.map +1 -0
- package/dist/cjs/StateMachine/UCs/index.js +1 -0
- package/dist/cjs/StateMachine/UCs/index.js.map +1 -1
- package/dist/cjs/VivedAPI/Mocks/MockSignedAuthToken.js +1 -2
- package/dist/cjs/VivedAPI/Mocks/MockSignedAuthToken.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/DeleteAssetOnAPIUC.js +1 -1
- package/dist/cjs/VivedAPI/UCs/DeleteAssetOnAPIUC.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/DeleteAssetOnAPIUC.test.js +2 -2
- package/dist/cjs/VivedAPI/UCs/DeleteAssetOnAPIUC.test.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/GetAppFromAPIUC.js +1 -1
- package/dist/cjs/VivedAPI/UCs/GetAppFromAPIUC.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/GetAppFromAPIUC.test.js +2 -2
- package/dist/cjs/VivedAPI/UCs/GetAppFromAPIUC.test.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.js +1 -1
- package/dist/cjs/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.test.js +2 -2
- package/dist/cjs/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.test.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetFileUC.js +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetFileUC.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetFileUC.test.js +2 -2
- package/dist/cjs/VivedAPI/UCs/PatchAssetFileUC.test.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetIsArchivedUC.js +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetIsArchivedUC.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetIsArchivedUC.test.js +2 -2
- package/dist/cjs/VivedAPI/UCs/PatchAssetIsArchivedUC.test.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetMetaUC.js +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetMetaUC.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetMetaUC.test.js +2 -2
- package/dist/cjs/VivedAPI/UCs/PatchAssetMetaUC.test.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetUC.js +2 -3
- package/dist/cjs/VivedAPI/UCs/PatchAssetUC.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PatchAssetUC.test.js +2 -2
- package/dist/cjs/VivedAPI/UCs/PatchAssetUC.test.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PostNewAssetUC.js +2 -3
- package/dist/cjs/VivedAPI/UCs/PostNewAssetUC.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/PostNewAssetUC.test.js +2 -2
- package/dist/cjs/VivedAPI/UCs/PostNewAssetUC.test.js.map +1 -1
- package/dist/cjs/VivedAPI/UCs/SignedAuthTokenUC.js.map +1 -1
- package/dist/esm/AppSandbox/Factories/setupAppSandbox.js +6 -0
- package/dist/esm/AppSandbox/Factories/setupAppSandbox.js.map +1 -1
- package/dist/esm/AppSandbox/UCs/submitActivityAssetHandlerSandbox.js +34 -0
- package/dist/esm/AppSandbox/UCs/submitActivityAssetHandlerSandbox.js.map +1 -0
- package/dist/esm/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.js +53 -0
- package/dist/esm/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.js.map +1 -0
- package/dist/esm/Assets/Factories/setupAssetsForSandbox.js +2 -1
- package/dist/esm/Assets/Factories/setupAssetsForSandbox.js.map +1 -1
- package/dist/esm/Assets/Mocks/MockNewAssetUC.js +11 -0
- package/dist/esm/Assets/Mocks/MockNewAssetUC.js.map +1 -0
- package/dist/esm/Assets/Mocks/index.js +1 -0
- package/dist/esm/Assets/Mocks/index.js.map +1 -1
- package/dist/esm/Assets/UCs/NewAppAssetUC.js.map +1 -1
- package/dist/esm/Assets/UCs/NewAppAssetUC.test.js.map +1 -1
- package/dist/esm/Assets/UCs/NewAssetUC.js +48 -0
- package/dist/esm/Assets/UCs/NewAssetUC.js.map +1 -0
- package/dist/esm/Assets/UCs/NewAssetUC.test.js +102 -0
- package/dist/esm/Assets/UCs/NewAssetUC.test.js.map +1 -0
- package/dist/esm/Assets/UCs/index.js +1 -0
- package/dist/esm/Assets/UCs/index.js.map +1 -1
- package/dist/esm/Dialog/Entities/Alert.js +2 -0
- package/dist/esm/Dialog/Entities/Alert.js.map +1 -1
- package/dist/esm/Dialog/Entities/Alert.test.js +6 -0
- package/dist/esm/Dialog/Entities/Alert.test.js.map +1 -1
- package/dist/esm/Dialog/Entities/Confirm.js +3 -0
- package/dist/esm/Dialog/Entities/Confirm.js.map +1 -1
- package/dist/esm/Dialog/Entities/Confirm.test.js +12 -0
- package/dist/esm/Dialog/Entities/Confirm.test.js.map +1 -1
- package/dist/esm/Dialog/Entities/DialogQueue.js +17 -4
- package/dist/esm/Dialog/Entities/DialogQueue.js.map +1 -1
- package/dist/esm/Dialog/Entities/DialogQueue.test.js +21 -0
- package/dist/esm/Dialog/Entities/DialogQueue.test.js.map +1 -1
- package/dist/esm/Dialog/Entities/MarkDownEditor.js +3 -0
- package/dist/esm/Dialog/Entities/MarkDownEditor.js.map +1 -1
- package/dist/esm/Dialog/Entities/MarkDownEditor.test.js +12 -0
- package/dist/esm/Dialog/Entities/MarkDownEditor.test.js.map +1 -1
- package/dist/esm/Dialog/Entities/SelectModel.js +1 -0
- package/dist/esm/Dialog/Entities/SelectModel.js.map +1 -1
- package/dist/esm/Dialog/Entities/Spinner.js +2 -0
- package/dist/esm/Dialog/Entities/Spinner.js.map +1 -1
- package/dist/esm/Dialog/Entities/Spinner.test.js +17 -0
- package/dist/esm/Dialog/Entities/Spinner.test.js.map +1 -1
- package/dist/esm/Handler/setupStandardHostHandlers.js +2 -1
- package/dist/esm/Handler/setupStandardHostHandlers.js.map +1 -1
- package/dist/esm/StateMachine/Adapters/hostStateAdapter.js +21 -0
- package/dist/esm/StateMachine/Adapters/hostStateAdapter.js.map +1 -0
- package/dist/esm/StateMachine/Adapters/hostStateAdapter.test.js +47 -0
- package/dist/esm/StateMachine/Adapters/hostStateAdapter.test.js.map +1 -0
- package/dist/esm/StateMachine/Adapters/index.js +1 -0
- package/dist/esm/StateMachine/Adapters/index.js.map +1 -1
- package/dist/esm/StateMachine/Controllers/editStateName.js +10 -0
- package/dist/esm/StateMachine/Controllers/editStateName.js.map +1 -0
- package/dist/esm/StateMachine/Controllers/editStateName.test.js +47 -0
- package/dist/esm/StateMachine/Controllers/editStateName.test.js.map +1 -0
- package/dist/esm/StateMachine/Controllers/index.js +1 -0
- package/dist/esm/StateMachine/Controllers/index.js.map +1 -1
- package/dist/esm/StateMachine/Entities/HostStateMachine.js +67 -24
- package/dist/esm/StateMachine/Entities/HostStateMachine.js.map +1 -1
- package/dist/esm/StateMachine/Entities/HostStateMachine.test.js +174 -0
- package/dist/esm/StateMachine/Entities/HostStateMachine.test.js.map +1 -1
- package/dist/esm/StateMachine/Mocks/MockEditStateNameUC.js +8 -0
- package/dist/esm/StateMachine/Mocks/MockEditStateNameUC.js.map +1 -0
- package/dist/esm/StateMachine/Mocks/MockHostStatePM.js +18 -0
- package/dist/esm/StateMachine/Mocks/MockHostStatePM.js.map +1 -0
- package/dist/esm/StateMachine/PMs/HostStateMachinePM.js +21 -15
- package/dist/esm/StateMachine/PMs/HostStateMachinePM.js.map +1 -1
- package/dist/esm/StateMachine/PMs/HostStateMachinePM.test.js +65 -56
- package/dist/esm/StateMachine/PMs/HostStateMachinePM.test.js.map +1 -1
- package/dist/esm/StateMachine/PMs/HostStatePM.js +131 -0
- package/dist/esm/StateMachine/PMs/HostStatePM.js.map +1 -0
- package/dist/esm/StateMachine/PMs/HostStatePM.test.js +403 -0
- package/dist/esm/StateMachine/PMs/HostStatePM.test.js.map +1 -0
- package/dist/esm/StateMachine/PMs/index.js +1 -0
- package/dist/esm/StateMachine/PMs/index.js.map +1 -1
- package/dist/esm/StateMachine/UCs/EditStateNameUC.js +30 -0
- package/dist/esm/StateMachine/UCs/EditStateNameUC.js.map +1 -0
- package/dist/esm/StateMachine/UCs/EditStateNameUC.test.js +56 -0
- package/dist/esm/StateMachine/UCs/EditStateNameUC.test.js.map +1 -0
- package/dist/esm/StateMachine/UCs/index.js +1 -0
- package/dist/esm/StateMachine/UCs/index.js.map +1 -1
- package/dist/esm/VivedAPI/Mocks/MockSignedAuthToken.js +1 -2
- package/dist/esm/VivedAPI/Mocks/MockSignedAuthToken.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/DeleteAssetOnAPIUC.js +1 -1
- package/dist/esm/VivedAPI/UCs/DeleteAssetOnAPIUC.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/DeleteAssetOnAPIUC.test.js +2 -2
- package/dist/esm/VivedAPI/UCs/DeleteAssetOnAPIUC.test.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/GetAppFromAPIUC.js +1 -1
- package/dist/esm/VivedAPI/UCs/GetAppFromAPIUC.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/GetAppFromAPIUC.test.js +2 -2
- package/dist/esm/VivedAPI/UCs/GetAppFromAPIUC.test.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.js +1 -1
- package/dist/esm/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.test.js +2 -2
- package/dist/esm/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.test.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetFileUC.js +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetFileUC.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetFileUC.test.js +2 -2
- package/dist/esm/VivedAPI/UCs/PatchAssetFileUC.test.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetIsArchivedUC.js +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetIsArchivedUC.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetIsArchivedUC.test.js +2 -2
- package/dist/esm/VivedAPI/UCs/PatchAssetIsArchivedUC.test.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetMetaUC.js +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetMetaUC.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetMetaUC.test.js +2 -2
- package/dist/esm/VivedAPI/UCs/PatchAssetMetaUC.test.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetUC.js +2 -3
- package/dist/esm/VivedAPI/UCs/PatchAssetUC.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PatchAssetUC.test.js +2 -2
- package/dist/esm/VivedAPI/UCs/PatchAssetUC.test.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PostNewAssetUC.js +2 -3
- package/dist/esm/VivedAPI/UCs/PostNewAssetUC.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/PostNewAssetUC.test.js +2 -2
- package/dist/esm/VivedAPI/UCs/PostNewAssetUC.test.js.map +1 -1
- package/dist/esm/VivedAPI/UCs/SignedAuthTokenUC.js +1 -1
- package/dist/esm/VivedAPI/UCs/SignedAuthTokenUC.js.map +1 -1
- package/dist/types/AppSandbox/Factories/setupAppSandbox.d.ts.map +1 -1
- package/dist/types/AppSandbox/UCs/submitActivityAssetHandlerSandbox.d.ts +4 -0
- package/dist/types/AppSandbox/UCs/submitActivityAssetHandlerSandbox.d.ts.map +1 -0
- package/dist/types/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.d.ts +2 -0
- package/dist/types/AppSandbox/UCs/submitActivityAssetHandlerSandbox.test.d.ts.map +1 -0
- package/dist/types/Assets/Factories/setupAssetsForSandbox.d.ts.map +1 -1
- package/dist/types/Assets/Mocks/MockNewAssetUC.d.ts +8 -0
- package/dist/types/Assets/Mocks/MockNewAssetUC.d.ts.map +1 -0
- package/dist/types/Assets/Mocks/index.d.ts +1 -0
- package/dist/types/Assets/Mocks/index.d.ts.map +1 -1
- package/dist/types/Assets/UCs/NewAssetUC.d.ts +14 -0
- package/dist/types/Assets/UCs/NewAssetUC.d.ts.map +1 -0
- package/dist/types/Assets/UCs/NewAssetUC.test.d.ts +2 -0
- package/dist/types/Assets/UCs/NewAssetUC.test.d.ts.map +1 -0
- package/dist/types/Assets/UCs/index.d.ts +1 -0
- package/dist/types/Assets/UCs/index.d.ts.map +1 -1
- package/dist/types/Dialog/Entities/Alert.d.ts +1 -0
- package/dist/types/Dialog/Entities/Alert.d.ts.map +1 -1
- package/dist/types/Dialog/Entities/Confirm.d.ts +1 -0
- package/dist/types/Dialog/Entities/Confirm.d.ts.map +1 -1
- package/dist/types/Dialog/Entities/DialogQueue.d.ts +1 -0
- package/dist/types/Dialog/Entities/DialogQueue.d.ts.map +1 -1
- package/dist/types/Dialog/Entities/MarkDownEditor.d.ts +1 -0
- package/dist/types/Dialog/Entities/MarkDownEditor.d.ts.map +1 -1
- package/dist/types/Dialog/Entities/SelectModel.d.ts +1 -0
- package/dist/types/Dialog/Entities/SelectModel.d.ts.map +1 -1
- package/dist/types/Dialog/Entities/Spinner.d.ts +1 -0
- package/dist/types/Dialog/Entities/Spinner.d.ts.map +1 -1
- package/dist/types/Handler/setupStandardHostHandlers.d.ts.map +1 -1
- package/dist/types/StateMachine/Adapters/hostStateAdapter.d.ts +4 -0
- package/dist/types/StateMachine/Adapters/hostStateAdapter.d.ts.map +1 -0
- package/dist/types/StateMachine/Adapters/hostStateAdapter.test.d.ts +2 -0
- package/dist/types/StateMachine/Adapters/hostStateAdapter.test.d.ts.map +1 -0
- package/dist/types/StateMachine/Adapters/index.d.ts +1 -0
- package/dist/types/StateMachine/Adapters/index.d.ts.map +1 -1
- package/dist/types/StateMachine/Controllers/editStateName.d.ts +3 -0
- package/dist/types/StateMachine/Controllers/editStateName.d.ts.map +1 -0
- package/dist/types/StateMachine/Controllers/editStateName.test.d.ts +2 -0
- package/dist/types/StateMachine/Controllers/editStateName.test.d.ts.map +1 -0
- package/dist/types/StateMachine/Controllers/index.d.ts +1 -0
- package/dist/types/StateMachine/Controllers/index.d.ts.map +1 -1
- package/dist/types/StateMachine/Entities/HostStateMachine.d.ts +6 -0
- package/dist/types/StateMachine/Entities/HostStateMachine.d.ts.map +1 -1
- package/dist/types/StateMachine/Mocks/MockEditStateNameUC.d.ts +7 -0
- package/dist/types/StateMachine/Mocks/MockEditStateNameUC.d.ts.map +1 -0
- package/dist/types/StateMachine/Mocks/MockHostStatePM.d.ts +9 -0
- package/dist/types/StateMachine/Mocks/MockHostStatePM.d.ts.map +1 -0
- package/dist/types/StateMachine/PMs/HostStateMachinePM.d.ts +3 -4
- package/dist/types/StateMachine/PMs/HostStateMachinePM.d.ts.map +1 -1
- package/dist/types/StateMachine/PMs/HostStatePM.d.ts +18 -0
- package/dist/types/StateMachine/PMs/HostStatePM.d.ts.map +1 -0
- package/dist/types/StateMachine/PMs/HostStatePM.test.d.ts +2 -0
- package/dist/types/StateMachine/PMs/HostStatePM.test.d.ts.map +1 -0
- package/dist/types/StateMachine/PMs/index.d.ts +1 -0
- package/dist/types/StateMachine/PMs/index.d.ts.map +1 -1
- package/dist/types/StateMachine/UCs/EditStateNameUC.d.ts +9 -0
- package/dist/types/StateMachine/UCs/EditStateNameUC.d.ts.map +1 -0
- package/dist/types/StateMachine/UCs/EditStateNameUC.test.d.ts +2 -0
- package/dist/types/StateMachine/UCs/EditStateNameUC.test.d.ts.map +1 -0
- package/dist/types/StateMachine/UCs/index.d.ts +1 -0
- package/dist/types/StateMachine/UCs/index.d.ts.map +1 -1
- package/dist/types/VivedAPI/Mocks/MockSignedAuthToken.d.ts +1 -2
- package/dist/types/VivedAPI/Mocks/MockSignedAuthToken.d.ts.map +1 -1
- package/dist/types/VivedAPI/UCs/PatchAssetUC.d.ts.map +1 -1
- package/dist/types/VivedAPI/UCs/PostNewAssetUC.d.ts +2 -2
- package/dist/types/VivedAPI/UCs/PostNewAssetUC.d.ts.map +1 -1
- package/dist/types/VivedAPI/UCs/SignedAuthTokenUC.d.ts +1 -2
- package/dist/types/VivedAPI/UCs/SignedAuthTokenUC.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EditStateNameUC = void 0;
|
|
4
|
+
exports.makeEditStateNameUC = makeEditStateNameUC;
|
|
5
|
+
const core_1 = require("@vived/core");
|
|
6
|
+
const HostStateEntity_1 = require("../Entities/HostStateEntity");
|
|
7
|
+
class EditStateNameUC extends core_1.AppObjectUC {
|
|
8
|
+
static get(appObj) {
|
|
9
|
+
return appObj.getComponent(this.type);
|
|
10
|
+
}
|
|
11
|
+
static getById(id, appObjects) {
|
|
12
|
+
return appObjects.get(id)?.getComponent(this.type);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
exports.EditStateNameUC = EditStateNameUC;
|
|
16
|
+
EditStateNameUC.type = "EditStateNameUC";
|
|
17
|
+
function makeEditStateNameUC(appObject) {
|
|
18
|
+
return new EditStateNameUCImp(appObject);
|
|
19
|
+
}
|
|
20
|
+
class EditStateNameUCImp extends EditStateNameUC {
|
|
21
|
+
get hostStateEntity() {
|
|
22
|
+
return this.getCachedLocalComponent(HostStateEntity_1.HostStateEntity.type);
|
|
23
|
+
}
|
|
24
|
+
constructor(appObject) {
|
|
25
|
+
super(appObject, EditStateNameUC.type);
|
|
26
|
+
this.editStateName = (name) => {
|
|
27
|
+
if (!this.hostStateEntity) {
|
|
28
|
+
this.warn("Unable to find HostStateEntity");
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
this.hostStateEntity.name = name;
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=EditStateNameUC.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EditStateNameUC.js","sourceRoot":"","sources":["../../../../src/StateMachine/UCs/EditStateNameUC.ts"],"names":[],"mappings":";;;AAoBA,kDAEC;AAtBD,sCAAoE;AACpE,iEAA8D;AAE9D,MAAsB,eAAgB,SAAQ,kBAAW;IAKvD,MAAM,CAAC,GAAG,CAAC,MAAiB;QAC1B,OAAO,MAAM,CAAC,YAAY,CAAkB,IAAI,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;IAED,MAAM,CAAC,OAAO,CACZ,EAAU,EACV,UAAyB;QAEzB,OAAO,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,YAAY,CAAkB,IAAI,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC;;AAdH,0CAeC;AAdiB,oBAAI,GAAG,iBAAiB,CAAC;AAgB3C,SAAgB,mBAAmB,CAAC,SAAoB;IACtD,OAAO,IAAI,kBAAkB,CAAC,SAAS,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,kBAAmB,SAAQ,eAAe;IAC9C,IAAY,eAAe;QACzB,OAAO,IAAI,CAAC,uBAAuB,CAAkB,iCAAe,CAAC,IAAI,CAAC,CAAC;IAC7E,CAAC;IAWD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;QAVzC,kBAAa,GAAG,CAAC,IAAY,EAAE,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;gBAC1B,IAAI,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;gBAC5C,OAAO;YACT,CAAC;YAED,IAAI,CAAC,eAAe,CAAC,IAAI,GAAG,IAAI,CAAC;QACnC,CAAC,CAAC;IAIF,CAAC;CACF","sourcesContent":["import { AppObject, AppObjectRepo, AppObjectUC } from \"@vived/core\";\r\nimport { HostStateEntity } from \"../Entities/HostStateEntity\";\r\n\r\nexport abstract class EditStateNameUC extends AppObjectUC {\r\n static readonly type = \"EditStateNameUC\";\r\n\r\n abstract editStateName(name: string): void;\r\n\r\n static get(appObj: AppObject): EditStateNameUC | undefined {\r\n return appObj.getComponent<EditStateNameUC>(this.type);\r\n }\r\n\r\n static getById(\r\n id: string,\r\n appObjects: AppObjectRepo\r\n ): EditStateNameUC | undefined {\r\n return appObjects.get(id)?.getComponent<EditStateNameUC>(this.type);\r\n }\r\n}\r\n\r\nexport function makeEditStateNameUC(appObject: AppObject): EditStateNameUC {\r\n return new EditStateNameUCImp(appObject);\r\n}\r\n\r\nclass EditStateNameUCImp extends EditStateNameUC {\r\n private get hostStateEntity() {\r\n return this.getCachedLocalComponent<HostStateEntity>(HostStateEntity.type);\r\n }\r\n\r\n editStateName = (name: string) => {\r\n if (!this.hostStateEntity) {\r\n this.warn(\"Unable to find HostStateEntity\");\r\n return;\r\n }\r\n\r\n this.hostStateEntity.name = name;\r\n };\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, EditStateNameUC.type);\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const core_1 = require("@vived/core");
|
|
4
|
+
const HostStateEntity_1 = require("../Entities/HostStateEntity");
|
|
5
|
+
const EditStateNameUC_1 = require("./EditStateNameUC");
|
|
6
|
+
describe("EditStateNameUC", () => {
|
|
7
|
+
let appObjects;
|
|
8
|
+
let appObject;
|
|
9
|
+
let uc;
|
|
10
|
+
let entity;
|
|
11
|
+
const testId = "test-state-id";
|
|
12
|
+
const initialName = "Initial State Name";
|
|
13
|
+
const newName = "Updated State Name";
|
|
14
|
+
beforeEach(() => {
|
|
15
|
+
// Create a fresh repository and app object for each test
|
|
16
|
+
appObjects = (0, core_1.makeAppObjectRepo)();
|
|
17
|
+
appObject = appObjects.getOrCreate(testId);
|
|
18
|
+
// Create the entity on the same app object
|
|
19
|
+
entity = (0, HostStateEntity_1.makeHostStateEntity)(appObject);
|
|
20
|
+
entity.name = initialName;
|
|
21
|
+
// Create the use case
|
|
22
|
+
uc = (0, EditStateNameUC_1.makeEditStateNameUC)(appObject);
|
|
23
|
+
});
|
|
24
|
+
it("should edit the state name in the entity", () => {
|
|
25
|
+
// Test the main functionality
|
|
26
|
+
uc.editStateName(newName);
|
|
27
|
+
// Verify the entity was updated
|
|
28
|
+
expect(entity.name).toBe(newName);
|
|
29
|
+
});
|
|
30
|
+
it("should log a warning when entity is not found", () => {
|
|
31
|
+
// Create a new app object without the required entity
|
|
32
|
+
const newAppObject = appObjects.getOrCreate("another-id");
|
|
33
|
+
// Spy on the warn method
|
|
34
|
+
const warnSpy = jest.spyOn(appObjects, "submitWarning");
|
|
35
|
+
// Create a use case without the dependency
|
|
36
|
+
const isolatedUC = (0, EditStateNameUC_1.makeEditStateNameUC)(newAppObject);
|
|
37
|
+
// Execute the use case
|
|
38
|
+
isolatedUC.editStateName(newName);
|
|
39
|
+
// Verify warning was logged
|
|
40
|
+
expect(warnSpy).toHaveBeenCalled();
|
|
41
|
+
});
|
|
42
|
+
it("should be retrievable via static get method", () => {
|
|
43
|
+
// Test the component access pattern
|
|
44
|
+
const retrievedUC = EditStateNameUC_1.EditStateNameUC.get(appObject);
|
|
45
|
+
expect(retrievedUC).toBe(uc);
|
|
46
|
+
});
|
|
47
|
+
it("should be retrievable via static getById method", () => {
|
|
48
|
+
// Test ID-based retrieval
|
|
49
|
+
const retrievedUC = EditStateNameUC_1.EditStateNameUC.getById(testId, appObjects);
|
|
50
|
+
expect(retrievedUC).toBe(uc);
|
|
51
|
+
});
|
|
52
|
+
it("should return undefined when getById is called with non-existent id", () => {
|
|
53
|
+
// Test graceful handling of missing components
|
|
54
|
+
const retrievedUC = EditStateNameUC_1.EditStateNameUC.getById("non-existent-id", appObjects);
|
|
55
|
+
expect(retrievedUC).toBeUndefined();
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
//# sourceMappingURL=EditStateNameUC.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EditStateNameUC.test.js","sourceRoot":"","sources":["../../../../src/StateMachine/UCs/EditStateNameUC.test.ts"],"names":[],"mappings":";;AAAA,sCAA0E;AAC1E,iEAGqC;AACrC,uDAAyE;AAEzE,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,IAAI,UAAyB,CAAC;IAC9B,IAAI,SAAoB,CAAC;IACzB,IAAI,EAAmB,CAAC;IACxB,IAAI,MAAuB,CAAC;IAC5B,MAAM,MAAM,GAAG,eAAe,CAAC;IAC/B,MAAM,WAAW,GAAG,oBAAoB,CAAC;IACzC,MAAM,OAAO,GAAG,oBAAoB,CAAC;IAErC,UAAU,CAAC,GAAG,EAAE;QACd,yDAAyD;QACzD,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;QACjC,SAAS,GAAG,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAE3C,2CAA2C;QAC3C,MAAM,GAAG,IAAA,qCAAmB,EAAC,SAAS,CAAC,CAAC;QACxC,MAAM,CAAC,IAAI,GAAG,WAAW,CAAC;QAE1B,sBAAsB;QACtB,EAAE,GAAG,IAAA,qCAAmB,EAAC,SAAS,CAAC,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,8BAA8B;QAC9B,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAE1B,gCAAgC;QAChC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,sDAAsD;QACtD,MAAM,YAAY,GAAG,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAE1D,yBAAyB;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;QAExD,2CAA2C;QAC3C,MAAM,UAAU,GAAG,IAAA,qCAAmB,EAAC,YAAY,CAAC,CAAC;QAErD,uBAAuB;QACvB,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAElC,4BAA4B;QAC5B,MAAM,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,oCAAoC;QACpC,MAAM,WAAW,GAAG,iCAAe,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,0BAA0B;QAC1B,MAAM,WAAW,GAAG,iCAAe,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAChE,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC7E,+CAA+C;QAC/C,MAAM,WAAW,GAAG,iCAAe,CAAC,OAAO,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;QAC3E,MAAM,CAAC,WAAW,CAAC,CAAC,aAAa,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { AppObject, AppObjectRepo, makeAppObjectRepo } from \"@vived/core\";\r\nimport {\r\n HostStateEntity,\r\n makeHostStateEntity\r\n} from \"../Entities/HostStateEntity\";\r\nimport { EditStateNameUC, makeEditStateNameUC } from \"./EditStateNameUC\";\r\n\r\ndescribe(\"EditStateNameUC\", () => {\r\n let appObjects: AppObjectRepo;\r\n let appObject: AppObject;\r\n let uc: EditStateNameUC;\r\n let entity: HostStateEntity;\r\n const testId = \"test-state-id\";\r\n const initialName = \"Initial State Name\";\r\n const newName = \"Updated State Name\";\r\n\r\n beforeEach(() => {\r\n // Create a fresh repository and app object for each test\r\n appObjects = makeAppObjectRepo();\r\n appObject = appObjects.getOrCreate(testId);\r\n\r\n // Create the entity on the same app object\r\n entity = makeHostStateEntity(appObject);\r\n entity.name = initialName;\r\n\r\n // Create the use case\r\n uc = makeEditStateNameUC(appObject);\r\n });\r\n\r\n it(\"should edit the state name in the entity\", () => {\r\n // Test the main functionality\r\n uc.editStateName(newName);\r\n\r\n // Verify the entity was updated\r\n expect(entity.name).toBe(newName);\r\n });\r\n\r\n it(\"should log a warning when entity is not found\", () => {\r\n // Create a new app object without the required entity\r\n const newAppObject = appObjects.getOrCreate(\"another-id\");\r\n\r\n // Spy on the warn method\r\n const warnSpy = jest.spyOn(appObjects, \"submitWarning\");\r\n\r\n // Create a use case without the dependency\r\n const isolatedUC = makeEditStateNameUC(newAppObject);\r\n\r\n // Execute the use case\r\n isolatedUC.editStateName(newName);\r\n\r\n // Verify warning was logged\r\n expect(warnSpy).toHaveBeenCalled();\r\n });\r\n\r\n it(\"should be retrievable via static get method\", () => {\r\n // Test the component access pattern\r\n const retrievedUC = EditStateNameUC.get(appObject);\r\n expect(retrievedUC).toBe(uc);\r\n });\r\n\r\n it(\"should be retrievable via static getById method\", () => {\r\n // Test ID-based retrieval\r\n const retrievedUC = EditStateNameUC.getById(testId, appObjects);\r\n expect(retrievedUC).toBe(uc);\r\n });\r\n\r\n it(\"should return undefined when getById is called with non-existent id\", () => {\r\n // Test graceful handling of missing components\r\n const retrievedUC = EditStateNameUC.getById(\"non-existent-id\", appObjects);\r\n expect(retrievedUC).toBeUndefined();\r\n });\r\n});\r\n"]}
|
|
@@ -18,6 +18,7 @@ __exportStar(require("./CancelEditing"), exports);
|
|
|
18
18
|
__exportStar(require("./ConsumeState"), exports);
|
|
19
19
|
__exportStar(require("./DeleteStateUC"), exports);
|
|
20
20
|
__exportStar(require("./DuplicateStateUC"), exports);
|
|
21
|
+
__exportStar(require("./EditStateNameUC"), exports);
|
|
21
22
|
__exportStar(require("./EditActiveState"), exports);
|
|
22
23
|
__exportStar(require("./EditState"), exports);
|
|
23
24
|
__exportStar(require("./EndActivity"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/StateMachine/UCs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,iDAA+B;AAC/B,kDAAgC;AAChC,qDAAmC;AACnC,oDAAkC;AAClC,8CAA4B;AAC5B,gDAA8B;AAC9B,6CAA2B;AAC3B,kDAAgC;AAChC,sDAAoC;AACpC,yDAAuC;AACvC,6DAA2C;AAC3C,mEAAiD","sourcesContent":["export * from \"./CancelEditing\";\r\nexport * from \"./ConsumeState\";\r\nexport * from \"./DeleteStateUC\";\r\nexport * from \"./DuplicateStateUC\";\r\nexport * from \"./EditActiveState\";\r\nexport * from \"./EditState\";\r\nexport * from \"./EndActivity\";\r\nexport * from \"./NewState\";\r\nexport * from \"./SaveAuthoring\";\r\nexport * from \"./TransitionToState\";\r\nexport * from \"./SavePersistentStates\";\r\nexport * from \"./setSandboxStatesFromData\";\r\nexport * from \"./setSandboxStatesFromStringData\";\r\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/StateMachine/UCs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,iDAA+B;AAC/B,kDAAgC;AAChC,qDAAmC;AACnC,oDAAkC;AAClC,oDAAkC;AAClC,8CAA4B;AAC5B,gDAA8B;AAC9B,6CAA2B;AAC3B,kDAAgC;AAChC,sDAAoC;AACpC,yDAAuC;AACvC,6DAA2C;AAC3C,mEAAiD","sourcesContent":["export * from \"./CancelEditing\";\r\nexport * from \"./ConsumeState\";\r\nexport * from \"./DeleteStateUC\";\r\nexport * from \"./DuplicateStateUC\";\r\nexport * from \"./EditStateNameUC\";\r\nexport * from \"./EditActiveState\";\r\nexport * from \"./EditState\";\r\nexport * from \"./EndActivity\";\r\nexport * from \"./NewState\";\r\nexport * from \"./SaveAuthoring\";\r\nexport * from \"./TransitionToState\";\r\nexport * from \"./SavePersistentStates\";\r\nexport * from \"./setSandboxStatesFromData\";\r\nexport * from \"./setSandboxStatesFromStringData\";\r\n"]}
|
|
@@ -6,8 +6,7 @@ const SignedAuthTokenUC_1 = require("../UCs/SignedAuthTokenUC");
|
|
|
6
6
|
class MockSignedAuthTokenUC extends SignedAuthTokenUC_1.SignedAuthTokenUC {
|
|
7
7
|
constructor(appObject) {
|
|
8
8
|
super(appObject, SignedAuthTokenUC_1.SignedAuthTokenUC.type);
|
|
9
|
-
this.
|
|
10
|
-
this.getUserAuthToken = jest.fn();
|
|
9
|
+
this.getAuthToken = jest.fn();
|
|
11
10
|
}
|
|
12
11
|
}
|
|
13
12
|
exports.MockSignedAuthTokenUC = MockSignedAuthTokenUC;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MockSignedAuthToken.js","sourceRoot":"","sources":["../../../../src/VivedAPI/Mocks/MockSignedAuthToken.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"MockSignedAuthToken.js","sourceRoot":"","sources":["../../../../src/VivedAPI/Mocks/MockSignedAuthToken.ts"],"names":[],"mappings":";;;AAWA,8DAIC;AAdD,gEAA6D;AAE7D,MAAa,qBAAsB,SAAQ,qCAAiB;IAG1D,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,qCAAiB,CAAC,IAAI,CAAC,CAAC;QAH3C,iBAAY,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAIzB,CAAC;CACF;AAND,sDAMC;AAED,SAAgB,yBAAyB,CAAC,UAAyB;IACjE,OAAO,IAAI,qBAAqB,CAC9B,UAAU,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAChD,CAAC;AACJ,CAAC","sourcesContent":["import { AppObject, AppObjectRepo } from \"@vived/core\";\r\nimport { SignedAuthTokenUC } from \"../UCs/SignedAuthTokenUC\";\r\n\r\nexport class MockSignedAuthTokenUC extends SignedAuthTokenUC {\r\n getAuthToken = jest.fn();\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, SignedAuthTokenUC.type);\r\n }\r\n}\r\n\r\nexport function makeMockSignedAuthTokenUC(appObjects: AppObjectRepo) {\r\n return new MockSignedAuthTokenUC(\r\n appObjects.getOrCreate(\"MockSignedAuthTokenUC\")\r\n );\r\n}\r\n"]}
|
|
@@ -23,7 +23,7 @@ class DeleteAssetUCImp extends DeleteAssetOnAPIUC {
|
|
|
23
23
|
}
|
|
24
24
|
get getAuthToken() {
|
|
25
25
|
return this.getCachedSingleton(SignedAuthTokenUC_1.SignedAuthTokenUC.type)
|
|
26
|
-
?.
|
|
26
|
+
?.getAuthToken;
|
|
27
27
|
}
|
|
28
28
|
get vivedAPI() {
|
|
29
29
|
return this.getCachedSingleton(VivedAPIEntity_1.VivedAPIEntity.type);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeleteAssetOnAPIUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/DeleteAssetOnAPIUC.ts"],"names":[],"mappings":";;;AAoBA,wDAIC;AAxBD,sCAKqB;AACrB,+DAA4D;AAC5D,mDAAoE;AACpE,2DAAwD;AAExD,MAAsB,kBAAmB,SAAQ,kBAAW;IAK1D,MAAM,CAAC,GAAG,CAAC,UAAyB;QAClC,OAAO,IAAA,4BAAqB,EAAC,kBAAkB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACpE,CAAC;;AAPH,gDAQC;AAPQ,uBAAI,GAAG,oBAAoB,CAAC;AASrC,SAAgB,sBAAsB,CACpC,SAAoB;IAEpB,OAAO,IAAI,gBAAgB,CAAC,SAAS,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,gBAAiB,SAAQ,kBAAkB;IAC/C,IAAY,aAAa;QACvB,OAAO,IAAI,CAAC,kBAAkB,CAAgB,6BAAa,CAAC,IAAI,CAAC;YAC/D,EAAE,SAAS,CAAC;IAChB,CAAC;IAED,IAAY,YAAY;QACtB,OAAO,IAAI,CAAC,kBAAkB,CAAoB,qCAAiB,CAAC,IAAI,CAAC;YACvE,EAAE,
|
|
1
|
+
{"version":3,"file":"DeleteAssetOnAPIUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/DeleteAssetOnAPIUC.ts"],"names":[],"mappings":";;;AAoBA,wDAIC;AAxBD,sCAKqB;AACrB,+DAA4D;AAC5D,mDAAoE;AACpE,2DAAwD;AAExD,MAAsB,kBAAmB,SAAQ,kBAAW;IAK1D,MAAM,CAAC,GAAG,CAAC,UAAyB;QAClC,OAAO,IAAA,4BAAqB,EAAC,kBAAkB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACpE,CAAC;;AAPH,gDAQC;AAPQ,uBAAI,GAAG,oBAAoB,CAAC;AASrC,SAAgB,sBAAsB,CACpC,SAAoB;IAEpB,OAAO,IAAI,gBAAgB,CAAC,SAAS,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,gBAAiB,SAAQ,kBAAkB;IAC/C,IAAY,aAAa;QACvB,OAAO,IAAI,CAAC,kBAAkB,CAAgB,6BAAa,CAAC,IAAI,CAAC;YAC/D,EAAE,SAAS,CAAC;IAChB,CAAC;IAED,IAAY,YAAY;QACtB,OAAO,IAAI,CAAC,kBAAkB,CAAoB,qCAAiB,CAAC,IAAI,CAAC;YACvE,EAAE,YAAY,CAAC;IACnB,CAAC;IAED,IAAY,QAAQ;QAClB,OAAO,IAAI,CAAC,kBAAkB,CAAiB,+BAAc,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC;IAmCD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAlC5C,aAAQ,GAAG,CAAC,OAAe,EAAiB,EAAE;YAC5C,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;YACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;YAEzC,IAAI,CAAC,YAAY,IAAI,CAAC,QAAQ,IAAI,CAAC,aAAa,EAAE,CAAC;gBACjD,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;YAC1B,CAAC;YAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACrC,YAAY,EAAE;qBACX,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;oBACd,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,UAAU,OAAO,EAAE,CAAC,CAAC;oBAE7D,MAAM,OAAO,GAAuB;wBAClC,MAAM,EAAE,QAAQ;wBAChB,OAAO,EAAE;4BACP,aAAa,EAAE,SAAS,GAAG,KAAK;yBACjC;qBACF,CAAC;oBAEF,OAAO,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACzC,CAAC,CAAC;qBACD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;oBACV,OAAO,EAAE,CAAC;gBACZ,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;oBACX,MAAM,CAAC,CAAC,CAAC,CAAC;oBACV,OAAO;gBACT,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAIA,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;CACF","sourcesContent":["import {\r\n getSingletonComponent,\r\n AppObject,\r\n AppObjectRepo,\r\n AppObjectUC\r\n} from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { JsonRequestUC, RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport { SignedAuthTokenUC } from \"./SignedAuthTokenUC\";\r\n\r\nexport abstract class DeleteAssetOnAPIUC extends AppObjectUC {\r\n static type = \"DeleteAssetOnAPIUC\";\r\n\r\n abstract doDelete(assetID: string): Promise<void>;\r\n\r\n static get(appObjects: AppObjectRepo): DeleteAssetOnAPIUC | undefined {\r\n return getSingletonComponent(DeleteAssetOnAPIUC.type, appObjects);\r\n }\r\n}\r\n\r\nexport function makeDeleteAssetOnAPIUC(\r\n appObject: AppObject\r\n): DeleteAssetOnAPIUC {\r\n return new DeleteAssetUCImp(appObject);\r\n}\r\n\r\nclass DeleteAssetUCImp extends DeleteAssetOnAPIUC {\r\n private get jsonRequester() {\r\n return this.getCachedSingleton<JsonRequestUC>(JsonRequestUC.type)\r\n ?.doRequest;\r\n }\r\n\r\n private get getAuthToken() {\r\n return this.getCachedSingleton<SignedAuthTokenUC>(SignedAuthTokenUC.type)\r\n ?.getAuthToken;\r\n }\r\n\r\n private get vivedAPI() {\r\n return this.getCachedSingleton<VivedAPIEntity>(VivedAPIEntity.type);\r\n }\r\n\r\n doDelete = (assetID: string): Promise<void> => {\r\n const getAuthToken = this.getAuthToken;\r\n const vivedAPI = this.vivedAPI;\r\n const jsonRequester = this.jsonRequester;\r\n\r\n if (!getAuthToken || !vivedAPI || !jsonRequester) {\r\n return Promise.reject();\r\n }\r\n\r\n return new Promise((resolve, reject) => {\r\n getAuthToken()\r\n .then((token) => {\r\n const postURL = vivedAPI.getEndpointURL(`assets/${assetID}`);\r\n\r\n const options: RequestJSONOptions = {\r\n method: \"DELETE\",\r\n headers: {\r\n Authorization: \"Bearer \" + token\r\n }\r\n };\r\n\r\n return jsonRequester(postURL, options);\r\n })\r\n .then((_) => {\r\n resolve();\r\n })\r\n .catch((e) => {\r\n reject(e);\r\n return;\r\n });\r\n });\r\n };\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, DeleteAssetOnAPIUC.type);\r\n this.appObjects.registerSingleton(this);\r\n }\r\n}\r\n"]}
|
|
@@ -12,7 +12,7 @@ function makeTestRig() {
|
|
|
12
12
|
const mockJsonRequester = (0, MockJsonRequestUC_1.makeMockJsonRequestUC)(appObjects);
|
|
13
13
|
mockJsonRequester.doRequest.mockResolvedValue({});
|
|
14
14
|
const mockAuth = (0, MockSignedAuthToken_1.makeMockSignedAuthTokenUC)(appObjects);
|
|
15
|
-
mockAuth.
|
|
15
|
+
mockAuth.getAuthToken.mockResolvedValue("mockAuthToken");
|
|
16
16
|
const uc = (0, DeleteAssetOnAPIUC_1.makeDeleteAssetOnAPIUC)(appObjects.getOrCreate("ao"));
|
|
17
17
|
return {
|
|
18
18
|
uc,
|
|
@@ -59,7 +59,7 @@ describe("Patch Asset Is Archived UC", () => {
|
|
|
59
59
|
});
|
|
60
60
|
it("Rejects if the get auth token fails", () => {
|
|
61
61
|
const { uc, mockAuth } = makeTestRig();
|
|
62
|
-
mockAuth.
|
|
62
|
+
mockAuth.getAuthToken.mockRejectedValue(new Error("Some Auth token error Error"));
|
|
63
63
|
return expect(uc.doDelete("asset1")).rejects.toEqual(new Error("Some Auth token error Error"));
|
|
64
64
|
});
|
|
65
65
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeleteAssetOnAPIUC.test.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/DeleteAssetOnAPIUC.test.ts"],"names":[],"mappings":";;AAAA,+DAA4D;AAC5D,kEAAmE;AACnE,sEAAyE;AAEzE,6DAG8B;AAC9B,sCAAgD;AAEhD,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IACvC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;IAEjE,MAAM,QAAQ,GAAG,IAAI,+BAAc,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnE,MAAM,iBAAiB,GAAG,IAAA,yCAAqB,EAAC,UAAU,CAAC,CAAC;IAC5D,iBAAiB,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAElD,MAAM,QAAQ,GAAG,IAAA,+CAAyB,EAAC,UAAU,CAAC,CAAC;IACvD,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"DeleteAssetOnAPIUC.test.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/DeleteAssetOnAPIUC.test.ts"],"names":[],"mappings":";;AAAA,+DAA4D;AAC5D,kEAAmE;AACnE,sEAAyE;AAEzE,6DAG8B;AAC9B,sCAAgD;AAEhD,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IACvC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;IAEjE,MAAM,QAAQ,GAAG,IAAI,+BAAc,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnE,MAAM,iBAAiB,GAAG,IAAA,yCAAqB,EAAC,UAAU,CAAC,CAAC;IAC5D,iBAAiB,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAElD,MAAM,QAAQ,GAAG,IAAA,+CAAyB,EAAC,UAAU,CAAC,CAAC;IACvD,QAAQ,CAAC,YAAY,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;IAEzD,MAAM,EAAE,GAAG,IAAA,2CAAsB,EAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IAEhE,OAAO;QACL,EAAE;QACF,UAAU;QACV,YAAY;QACZ,QAAQ;QACR,iBAAiB;QACjB,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,WAAW,EAAE,CAAC;QAE3C,MAAM,CAAC,YAAY,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC5B,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,WAAW,EAAE,CAAC;QAEzC,MAAM,CAAC,uCAAkB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;QACxB,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,EAAE,CAAC;QAE7B,OAAO,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,EAAE,EAAE,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEhD,iBAAiB,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAE5E,OAAO,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAClD,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAC7B,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,EAAE,EAAE,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEhD,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAE5B,MAAM,OAAO,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAQ,CAAC;QACpE,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAChC,6CAA6C,CAC9C,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,EAAE,EAAE,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEhD,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAE5B,MAAM,OAAO,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI;aAC7C,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAuB,CAAC;QACrC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACzC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;YAC9B,aAAa,EAAE,sBAAsB;SACtC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,CAAC;QAEvC,QAAQ,CAAC,YAAY,CAAC,iBAAiB,CACrC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CACzC,CAAC;QAEF,OAAO,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAClD,IAAI,KAAK,CAAC,6BAA6B,CAAC,CACzC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { makeMockJsonRequestUC } from \"../Mocks/MockJsonRequestUC\";\r\nimport { makeMockSignedAuthTokenUC } from \"../Mocks/MockSignedAuthToken\";\r\nimport { RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport {\r\n makeDeleteAssetOnAPIUC,\r\n DeleteAssetOnAPIUC\r\n} from \"./DeleteAssetOnAPIUC\";\r\nimport { makeAppObjectRepo } from \"@vived/core\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const singletonSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n\r\n const vivedAPI = new VivedAPIEntity(appObjects.getOrCreate(\"API\"));\r\n\r\n const mockJsonRequester = makeMockJsonRequestUC(appObjects);\r\n mockJsonRequester.doRequest.mockResolvedValue({});\r\n\r\n const mockAuth = makeMockSignedAuthTokenUC(appObjects);\r\n mockAuth.getAuthToken.mockResolvedValue(\"mockAuthToken\");\r\n\r\n const uc = makeDeleteAssetOnAPIUC(appObjects.getOrCreate(\"ao\"));\r\n\r\n return {\r\n uc,\r\n appObjects,\r\n singletonSpy,\r\n vivedAPI,\r\n mockJsonRequester,\r\n mockAuth\r\n };\r\n}\r\n\r\ndescribe(\"Patch Asset Is Archived UC\", () => {\r\n it(\"Registers itself as the Singleton\", () => {\r\n const { uc, singletonSpy } = makeTestRig();\r\n\r\n expect(singletonSpy).toBeCalledWith(uc);\r\n });\r\n\r\n it(\"Gets the singleton\", () => {\r\n const { uc, appObjects } = makeTestRig();\r\n\r\n expect(DeleteAssetOnAPIUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Resolves\", async () => {\r\n const { uc } = makeTestRig();\r\n\r\n return expect(uc.doDelete(\"asset1\")).resolves.toEqual(undefined);\r\n });\r\n\r\n it(\"Warns and rejects if the JSON Request rejects\", () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n mockJsonRequester.doRequest.mockRejectedValue(new Error(\"Some JSON Error\"));\r\n\r\n return expect(uc.doDelete(\"asset1\")).rejects.toEqual(\r\n new Error(\"Some JSON Error\")\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected url\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n await uc.doDelete(\"asset1\");\r\n\r\n const postURL = mockJsonRequester.doRequest.mock.calls[0][0] as URL;\r\n expect(postURL.toString()).toEqual(\r\n \"https://api.vivedlearning.com/assets/asset1\"\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected options\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n await uc.doDelete(\"asset1\");\r\n\r\n const postURL = mockJsonRequester.doRequest.mock\r\n .calls[0][1] as RequestJSONOptions;\r\n expect(postURL.method).toEqual(\"DELETE\");\r\n expect(postURL.headers).toEqual({\r\n Authorization: \"Bearer mockAuthToken\"\r\n });\r\n });\r\n\r\n it(\"Rejects if the get auth token fails\", () => {\r\n const { uc, mockAuth } = makeTestRig();\r\n\r\n mockAuth.getAuthToken.mockRejectedValue(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n\r\n return expect(uc.doDelete(\"asset1\")).rejects.toEqual(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n });\r\n});\r\n"]}
|
|
@@ -23,7 +23,7 @@ class GetAppUCImp extends GetAppFromAPIUC {
|
|
|
23
23
|
}
|
|
24
24
|
get getAuthToken() {
|
|
25
25
|
return this.getCachedSingleton(SignedAuthTokenUC_1.SignedAuthTokenUC.type)
|
|
26
|
-
?.
|
|
26
|
+
?.getAuthToken;
|
|
27
27
|
}
|
|
28
28
|
get vivedAPI() {
|
|
29
29
|
return this.getCachedSingleton(VivedAPIEntity_1.VivedAPIEntity.type);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GetAppFromAPIUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/GetAppFromAPIUC.ts"],"names":[],"mappings":";;;AA0BA,kDAEC;AA5BD,sCAKqB;AACrB,+DAA4D;AAC5D,mDAAoE;AACpE,2DAAwD;AAQxD,MAAsB,eAAgB,SAAQ,kBAAW;IAKvD,MAAM,CAAC,GAAG,CAAC,UAAyB;QAClC,OAAO,IAAA,4BAAqB,EAAC,eAAe,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACjE,CAAC;;AAPH,0CAQC;AAPQ,oBAAI,GAAG,iBAAiB,CAAC;AASlC,SAAgB,mBAAmB,CAAC,SAAoB;IACtD,OAAO,IAAI,WAAW,CAAC,SAAS,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,WAAY,SAAQ,eAAe;IACvC,IAAY,aAAa;QACvB,OAAO,IAAI,CAAC,kBAAkB,CAAgB,6BAAa,CAAC,IAAI,CAAC;YAC/D,EAAE,SAAS,CAAC;IAChB,CAAC;IAED,IAAY,YAAY;QACtB,OAAO,IAAI,CAAC,kBAAkB,CAAoB,qCAAiB,CAAC,IAAI,CAAC;YACvE,EAAE,
|
|
1
|
+
{"version":3,"file":"GetAppFromAPIUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/GetAppFromAPIUC.ts"],"names":[],"mappings":";;;AA0BA,kDAEC;AA5BD,sCAKqB;AACrB,+DAA4D;AAC5D,mDAAoE;AACpE,2DAAwD;AAQxD,MAAsB,eAAgB,SAAQ,kBAAW;IAKvD,MAAM,CAAC,GAAG,CAAC,UAAyB;QAClC,OAAO,IAAA,4BAAqB,EAAC,eAAe,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACjE,CAAC;;AAPH,0CAQC;AAPQ,oBAAI,GAAG,iBAAiB,CAAC;AASlC,SAAgB,mBAAmB,CAAC,SAAoB;IACtD,OAAO,IAAI,WAAW,CAAC,SAAS,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,WAAY,SAAQ,eAAe;IACvC,IAAY,aAAa;QACvB,OAAO,IAAI,CAAC,kBAAkB,CAAgB,6BAAa,CAAC,IAAI,CAAC;YAC/D,EAAE,SAAS,CAAC;IAChB,CAAC;IAED,IAAY,YAAY;QACtB,OAAO,IAAI,CAAC,kBAAkB,CAAoB,qCAAiB,CAAC,IAAI,CAAC;YACvE,EAAE,YAAY,CAAC;IACnB,CAAC;IAED,IAAY,QAAQ;QAClB,OAAO,IAAI,CAAC,kBAAkB,CAAiB,+BAAc,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC;IA8CD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;QA7CzC,WAAM,GAAG,CAAC,KAAa,EAAE,OAAe,EAA8B,EAAE;YACtE,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;YACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;YAEzC,IAAI,CAAC,YAAY,IAAI,CAAC,QAAQ,IAAI,CAAC,aAAa,EAAE,CAAC;gBACjD,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;YAC1B,CAAC;YAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACrC,YAAY,EAAE;qBACX,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;oBACd,MAAM,WAAW,GAAG,QAAQ,CAAC,cAAc,CACzC,QAAQ,KAAK,IAAI,OAAO,EAAE,CAC3B,CAAC;oBACF,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;oBAEtD,MAAM,OAAO,GAAuB;wBAClC,MAAM,EAAE,KAAK;wBACb,OAAO,EAAE;4BACP,aAAa,EAAE,SAAS,GAAG,KAAK;yBACjC;qBACF,CAAC;oBAEF,OAAO,aAAa,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;gBAC7C,CAAC,CAAC;qBACD,IAAI,CAAC,CAAC,IAAoB,EAAE,EAAE;oBAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;oBAErB,MAAM,MAAM,GAAsB;wBAChC,gBAAgB,EAAE,GAAG,CAAC,mBAAmB;wBACzC,cAAc,EAAE,GAAG,CAAC,aAAa;wBACjC,WAAW,EAAE,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC;qBAC5B,CAAC;oBAEF,OAAO,CAAC,MAAM,CAAC,CAAC;gBAClB,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;oBACX,MAAM,CAAC,CAAC,CAAC,CAAC;oBACV,OAAO;gBACT,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAIA,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;CACF","sourcesContent":["import {\r\n getSingletonComponent,\r\n AppObject,\r\n AppObjectRepo,\r\n AppObjectUC\r\n} from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { JsonRequestUC, RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport { SignedAuthTokenUC } from \"./SignedAuthTokenUC\";\r\n\r\nexport interface GetAppResponseDTO {\r\n interfaceVersion: string;\r\n assetFolderURL: string;\r\n entrypoints: string[];\r\n}\r\n\r\nexport abstract class GetAppFromAPIUC extends AppObjectUC {\r\n static type = \"GetAppFromAPIUC\";\r\n\r\n abstract getApp(appID: string, version: string): Promise<GetAppResponseDTO>;\r\n\r\n static get(appObjects: AppObjectRepo): GetAppFromAPIUC | undefined {\r\n return getSingletonComponent(GetAppFromAPIUC.type, appObjects);\r\n }\r\n}\r\n\r\nexport function makeGetAppFromAPIUC(appObject: AppObject): GetAppFromAPIUC {\r\n return new GetAppUCImp(appObject);\r\n}\r\n\r\nclass GetAppUCImp extends GetAppFromAPIUC {\r\n private get jsonRequester() {\r\n return this.getCachedSingleton<JsonRequestUC>(JsonRequestUC.type)\r\n ?.doRequest;\r\n }\r\n\r\n private get getAuthToken() {\r\n return this.getCachedSingleton<SignedAuthTokenUC>(SignedAuthTokenUC.type)\r\n ?.getAuthToken;\r\n }\r\n\r\n private get vivedAPI() {\r\n return this.getCachedSingleton<VivedAPIEntity>(VivedAPIEntity.type);\r\n }\r\n\r\n getApp = (appID: string, version: string): Promise<GetAppResponseDTO> => {\r\n const getAuthToken = this.getAuthToken;\r\n const vivedAPI = this.vivedAPI;\r\n const jsonRequester = this.jsonRequester;\r\n\r\n if (!getAuthToken || !vivedAPI || !jsonRequester) {\r\n return Promise.reject();\r\n }\r\n\r\n return new Promise((resolve, reject) => {\r\n getAuthToken()\r\n .then((token) => {\r\n const endpointURL = vivedAPI.getEndpointURL(\r\n `apps/${appID}/${version}`\r\n );\r\n endpointURL.searchParams.set(\"function_version\", \"2\");\r\n\r\n const options: RequestJSONOptions = {\r\n method: \"GET\",\r\n headers: {\r\n Authorization: \"Bearer \" + token\r\n }\r\n };\r\n\r\n return jsonRequester(endpointURL, options);\r\n })\r\n .then((resp: GetAppResponse) => {\r\n const app = resp.app;\r\n\r\n const appDTO: GetAppResponseDTO = {\r\n interfaceVersion: app.appInterfaceVersion,\r\n assetFolderURL: app.baseAssetsUrl,\r\n entrypoints: [...app.files]\r\n };\r\n\r\n resolve(appDTO);\r\n })\r\n .catch((e) => {\r\n reject(e);\r\n return;\r\n });\r\n });\r\n };\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, GetAppFromAPIUC.type);\r\n this.appObjects.registerSingleton(this);\r\n }\r\n}\r\n\r\nexport interface GetAppResponse {\r\n app: App;\r\n}\r\n\r\nexport interface App {\r\n PK: string;\r\n SK: string;\r\n title?: string;\r\n description?: string;\r\n image?: string;\r\n versions: string[];\r\n files: string[];\r\n mount_app: string;\r\n mount_name: string;\r\n appInterfaceVersion: string;\r\n baseAssetsUrl: string;\r\n}\r\n"]}
|
|
@@ -18,7 +18,7 @@ function makeTestRig() {
|
|
|
18
18
|
}
|
|
19
19
|
});
|
|
20
20
|
const mockAuth = (0, MockSignedAuthToken_1.makeMockSignedAuthTokenUC)(appObjects);
|
|
21
|
-
mockAuth.
|
|
21
|
+
mockAuth.getAuthToken.mockResolvedValue("mockAuthToken");
|
|
22
22
|
const uc = (0, GetAppFromAPIUC_1.makeGetAppFromAPIUC)(appObjects.getOrCreate("ao"));
|
|
23
23
|
return {
|
|
24
24
|
uc,
|
|
@@ -70,7 +70,7 @@ describe("Patch Asset Is Archived UC", () => {
|
|
|
70
70
|
});
|
|
71
71
|
it("Rejects if the get auth token fails", () => {
|
|
72
72
|
const { uc, mockAuth } = makeTestRig();
|
|
73
|
-
mockAuth.
|
|
73
|
+
mockAuth.getAuthToken.mockRejectedValue(new Error("Some Auth token error Error"));
|
|
74
74
|
return expect(uc.getApp("app1", "1.2.3")).rejects.toEqual(new Error("Some Auth token error Error"));
|
|
75
75
|
});
|
|
76
76
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GetAppFromAPIUC.test.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/GetAppFromAPIUC.test.ts"],"names":[],"mappings":";;AAAA,+DAA4D;AAC5D,kEAAmE;AACnE,sEAAyE;AAEzE,uDAAyE;AACzE,sCAAgD;AAEhD,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IACvC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;IAEjE,MAAM,QAAQ,GAAG,IAAI,+BAAc,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnE,MAAM,iBAAiB,GAAG,IAAA,yCAAqB,EAAC,UAAU,CAAC,CAAC;IAC5D,iBAAiB,CAAC,SAAS,CAAC,iBAAiB,CAAC;QAC5C,GAAG,EAAE;YACH,mBAAmB,EAAE,OAAO;YAC5B,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;YAC3B,aAAa,EAAE,eAAe;SAC/B;KACF,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,IAAA,+CAAyB,EAAC,UAAU,CAAC,CAAC;IACvD,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"GetAppFromAPIUC.test.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/GetAppFromAPIUC.test.ts"],"names":[],"mappings":";;AAAA,+DAA4D;AAC5D,kEAAmE;AACnE,sEAAyE;AAEzE,uDAAyE;AACzE,sCAAgD;AAEhD,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IACvC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;IAEjE,MAAM,QAAQ,GAAG,IAAI,+BAAc,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnE,MAAM,iBAAiB,GAAG,IAAA,yCAAqB,EAAC,UAAU,CAAC,CAAC;IAC5D,iBAAiB,CAAC,SAAS,CAAC,iBAAiB,CAAC;QAC5C,GAAG,EAAE;YACH,mBAAmB,EAAE,OAAO;YAC5B,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;YAC3B,aAAa,EAAE,eAAe;SAC/B;KACF,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,IAAA,+CAAyB,EAAC,UAAU,CAAC,CAAC;IACvD,QAAQ,CAAC,YAAY,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;IAEzD,MAAM,EAAE,GAAG,IAAA,qCAAmB,EAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IAE7D,OAAO;QACL,EAAE;QACF,UAAU;QACV,YAAY;QACZ,QAAQ;QACR,iBAAiB;QACjB,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,GAAG,WAAW,EAAE,CAAC;QAE3C,MAAM,CAAC,YAAY,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAC5B,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,WAAW,EAAE,CAAC;QAEzC,MAAM,CAAC,iCAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;QACxB,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,EAAE,CAAC;QAE7B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAEhD,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;YACrB,gBAAgB,EAAE,OAAO;YACzB,cAAc,EAAE,eAAe;YAC/B,WAAW,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;SAClC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACvD,MAAM,EAAE,EAAE,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEhD,iBAAiB,CAAC,SAAS,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAE5E,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CACvD,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAC7B,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,EAAE,EAAE,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEhD,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAEjC,MAAM,OAAO,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAQ,CAAC;QACpE,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAChC,kEAAkE,CACnE,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,EAAE,EAAE,EAAE,iBAAiB,EAAE,GAAG,WAAW,EAAE,CAAC;QAEhD,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAEjC,MAAM,OAAO,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI;aAC7C,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAuB,CAAC;QACrC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;YAC9B,aAAa,EAAE,sBAAsB;SACtC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,WAAW,EAAE,CAAC;QAEvC,QAAQ,CAAC,YAAY,CAAC,iBAAiB,CACrC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CACzC,CAAC;QAEF,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CACvD,IAAI,KAAK,CAAC,6BAA6B,CAAC,CACzC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { makeMockJsonRequestUC } from \"../Mocks/MockJsonRequestUC\";\r\nimport { makeMockSignedAuthTokenUC } from \"../Mocks/MockSignedAuthToken\";\r\nimport { RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport { makeGetAppFromAPIUC, GetAppFromAPIUC } from \"./GetAppFromAPIUC\";\r\nimport { makeAppObjectRepo } from \"@vived/core\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const singletonSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n\r\n const vivedAPI = new VivedAPIEntity(appObjects.getOrCreate(\"API\"));\r\n\r\n const mockJsonRequester = makeMockJsonRequestUC(appObjects);\r\n mockJsonRequester.doRequest.mockResolvedValue({\r\n app: {\r\n appInterfaceVersion: \"1.2.3\",\r\n files: [\"file.1\", \"file.2\"],\r\n baseAssetsUrl: \"url.to.assets\"\r\n }\r\n });\r\n\r\n const mockAuth = makeMockSignedAuthTokenUC(appObjects);\r\n mockAuth.getAuthToken.mockResolvedValue(\"mockAuthToken\");\r\n\r\n const uc = makeGetAppFromAPIUC(appObjects.getOrCreate(\"ao\"));\r\n\r\n return {\r\n uc,\r\n appObjects,\r\n singletonSpy,\r\n vivedAPI,\r\n mockJsonRequester,\r\n mockAuth\r\n };\r\n}\r\n\r\ndescribe(\"Patch Asset Is Archived UC\", () => {\r\n it(\"Registers itself as the Singleton\", () => {\r\n const { uc, singletonSpy } = makeTestRig();\r\n\r\n expect(singletonSpy).toBeCalledWith(uc);\r\n });\r\n\r\n it(\"Gets the singleton\", () => {\r\n const { uc, appObjects } = makeTestRig();\r\n\r\n expect(GetAppFromAPIUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Resolves\", async () => {\r\n const { uc } = makeTestRig();\r\n\r\n const appDTO = await uc.getApp(\"app1\", \"1.2.3\");\r\n\r\n expect(appDTO).toEqual({\r\n interfaceVersion: \"1.2.3\",\r\n assetFolderURL: \"url.to.assets\",\r\n entrypoints: [\"file.1\", \"file.2\"]\r\n });\r\n });\r\n\r\n it(\"Warns and rejects if the JSON Request rejects\", () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n mockJsonRequester.doRequest.mockRejectedValue(new Error(\"Some JSON Error\"));\r\n\r\n return expect(uc.getApp(\"app1\", \"1.2.3\")).rejects.toEqual(\r\n new Error(\"Some JSON Error\")\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected url\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n await uc.getApp(\"app1\", \"1.2.3\");\r\n\r\n const postURL = mockJsonRequester.doRequest.mock.calls[0][0] as URL;\r\n expect(postURL.toString()).toEqual(\r\n \"https://api.vivedlearning.com/apps/app1/1.2.3?function_version=2\"\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected options\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n await uc.getApp(\"app1\", \"1.2.3\");\r\n\r\n const postURL = mockJsonRequester.doRequest.mock\r\n .calls[0][1] as RequestJSONOptions;\r\n expect(postURL.method).toEqual(\"GET\");\r\n expect(postURL.headers).toEqual({\r\n Authorization: \"Bearer mockAuthToken\"\r\n });\r\n });\r\n\r\n it(\"Rejects if the get auth token fails\", () => {\r\n const { uc, mockAuth } = makeTestRig();\r\n\r\n mockAuth.getAuthToken.mockRejectedValue(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n\r\n return expect(uc.getApp(\"app1\", \"1.2.3\")).rejects.toEqual(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n });\r\n});\r\n"]}
|
|
@@ -23,7 +23,7 @@ class GetAssetsForOwnerUCImp extends GetAssetsForOwnerFromAPIUC {
|
|
|
23
23
|
}
|
|
24
24
|
get getAuthToken() {
|
|
25
25
|
return this.getCachedSingleton(SignedAuthTokenUC_1.SignedAuthTokenUC.type)
|
|
26
|
-
?.
|
|
26
|
+
?.getAuthToken;
|
|
27
27
|
}
|
|
28
28
|
get vivedAPI() {
|
|
29
29
|
return this.getCachedSingleton(VivedAPIEntity_1.VivedAPIEntity.type);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GetAssetsForOwnerFromAPIUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.ts"],"names":[],"mappings":";;;AAuBA,wEAIC;AA3BD,sCAKqB;AAErB,+DAA4D;AAC5D,mDAAoE;AACpE,2DAAwD;AAExD,MAAsB,0BAA2B,SAAQ,kBAAW;IAKlE,MAAM,CAAC,GAAG,CACR,UAAyB;QAEzB,OAAO,IAAA,4BAAqB,EAAC,0BAA0B,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC5E,CAAC;;AATH,gEAUC;AATQ,+BAAI,GAAG,4BAA4B,CAAC;AAW7C,SAAgB,8BAA8B,CAC5C,SAAoB;IAEpB,OAAO,IAAI,sBAAsB,CAAC,SAAS,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,sBAAuB,SAAQ,0BAA0B;IAC7D,IAAY,aAAa;QACvB,OAAO,IAAI,CAAC,kBAAkB,CAAgB,6BAAa,CAAC,IAAI,CAAC;YAC/D,EAAE,SAAS,CAAC;IAChB,CAAC;IAED,IAAY,YAAY;QACtB,OAAO,IAAI,CAAC,kBAAkB,CAAoB,qCAAiB,CAAC,IAAI,CAAC;YACvE,EAAE,
|
|
1
|
+
{"version":3,"file":"GetAssetsForOwnerFromAPIUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.ts"],"names":[],"mappings":"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","sourcesContent":["import {\r\n getSingletonComponent,\r\n AppObject,\r\n AppObjectRepo,\r\n AppObjectUC\r\n} from \"@vived/core\";\r\nimport { AssetDTO } from \"../../Assets\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { JsonRequestUC, RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport { SignedAuthTokenUC } from \"./SignedAuthTokenUC\";\r\n\r\nexport abstract class GetAssetsForOwnerFromAPIUC extends AppObjectUC {\r\n static type = \"GetAssetsForOwnerFromAPIUC\";\r\n\r\n abstract getAssets(ownerID: string): Promise<AssetDTO[]>;\r\n\r\n static get(\r\n appObjects: AppObjectRepo\r\n ): GetAssetsForOwnerFromAPIUC | undefined {\r\n return getSingletonComponent(GetAssetsForOwnerFromAPIUC.type, appObjects);\r\n }\r\n}\r\n\r\nexport function makeGetAssetsForOwnerFromAPIUC(\r\n appObject: AppObject\r\n): GetAssetsForOwnerFromAPIUC {\r\n return new GetAssetsForOwnerUCImp(appObject);\r\n}\r\n\r\nclass GetAssetsForOwnerUCImp extends GetAssetsForOwnerFromAPIUC {\r\n private get jsonRequester() {\r\n return this.getCachedSingleton<JsonRequestUC>(JsonRequestUC.type)\r\n ?.doRequest;\r\n }\r\n\r\n private get getAuthToken() {\r\n return this.getCachedSingleton<SignedAuthTokenUC>(SignedAuthTokenUC.type)\r\n ?.getAuthToken;\r\n }\r\n\r\n private get vivedAPI() {\r\n return this.getCachedSingleton<VivedAPIEntity>(VivedAPIEntity.type);\r\n }\r\n\r\n getAssets = (ownerID: string): Promise<AssetDTO[]> => {\r\n const getAuthToken = this.getAuthToken;\r\n const vivedAPI = this.vivedAPI;\r\n const jsonRequester = this.jsonRequester;\r\n\r\n if (!getAuthToken || !vivedAPI || !jsonRequester) {\r\n return Promise.reject();\r\n }\r\n\r\n return new Promise((resolve, reject) => {\r\n getAuthToken()\r\n .then((token) => {\r\n const url = vivedAPI.getEndpointURL(`assets/group/${ownerID}`);\r\n const page = 1;\r\n const itemsPerPage = 100;\r\n url.searchParams.append(\"page\", page.toString());\r\n url.searchParams.append(\"itemsPerPage\", itemsPerPage.toString());\r\n\r\n const options: RequestJSONOptions = {\r\n method: \"GET\"\r\n };\r\n\r\n return jsonRequester(url, options);\r\n })\r\n .then((resp: APIResp) => {\r\n const ownerAssets: AssetDTO[] = resp.assets.map((asset) => {\r\n return this.responseToDTO(asset);\r\n });\r\n\r\n resolve(ownerAssets);\r\n })\r\n .catch((e) => {\r\n reject(e);\r\n return;\r\n });\r\n });\r\n };\r\n\r\n private responseToDTO(resp: BaseAssetResp): AssetDTO {\r\n const linkedAssets = resp.linkedAssets.map((linkedAssetResp) => {\r\n return {\r\n type: linkedAssetResp.type,\r\n asset: this.responseToDTO(linkedAssetResp.asset)\r\n };\r\n });\r\n\r\n const dto: AssetDTO = {\r\n archived: resp.archived,\r\n description: resp.description,\r\n fileURL: resp.fileURL,\r\n filename: resp.filename,\r\n id: resp.id,\r\n name: resp.name,\r\n linkedAssets,\r\n ownerId: resp.ownerId\r\n };\r\n\r\n return dto;\r\n }\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, GetAssetsForOwnerFromAPIUC.type);\r\n this.appObjects.registerSingleton(this);\r\n }\r\n}\r\n\r\ninterface APIResp {\r\n assets: BaseAssetResp[];\r\n}\r\n\r\ninterface BaseAssetResp {\r\n id: string;\r\n ownerId: string;\r\n name: string;\r\n description: string;\r\n archived: boolean;\r\n fileURL: string;\r\n filename: string;\r\n linkedAssets: { type: string; asset: BaseAssetResp }[];\r\n}\r\n"]}
|
|
@@ -12,7 +12,7 @@ function makeTestRig() {
|
|
|
12
12
|
const mockJsonRequester = (0, MockJsonRequestUC_1.makeMockJsonRequestUC)(appObjects);
|
|
13
13
|
mockJsonRequester.doRequest.mockResolvedValue(makeMockResp());
|
|
14
14
|
const mockAuth = (0, MockSignedAuthToken_1.makeMockSignedAuthTokenUC)(appObjects);
|
|
15
|
-
mockAuth.
|
|
15
|
+
mockAuth.getAuthToken.mockResolvedValue("mockAuthToken");
|
|
16
16
|
const uc = (0, GetAssetsForOwnerFromAPIUC_1.makeGetAssetsForOwnerFromAPIUC)(appObjects.getOrCreate("ao"));
|
|
17
17
|
return {
|
|
18
18
|
uc,
|
|
@@ -71,7 +71,7 @@ describe("Get Assets for Owner UC", () => {
|
|
|
71
71
|
});
|
|
72
72
|
it("Rejects if the get auth token fails", () => {
|
|
73
73
|
const { uc, mockAuth } = makeTestRig();
|
|
74
|
-
mockAuth.
|
|
74
|
+
mockAuth.getAuthToken.mockRejectedValue(new Error("Some Auth token error Error"));
|
|
75
75
|
return expect(uc.getAssets("owner")).rejects.toEqual(new Error("Some Auth token error Error"));
|
|
76
76
|
});
|
|
77
77
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GetAssetsForOwnerFromAPIUC.test.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.test.ts"],"names":[],"mappings":";;AAAA,+DAA4D;AAC5D,kEAAmE;AACnE,sEAAyE;AAEzE,6EAGsC;AACtC,sCAAgD;AAEhD,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IACvC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;IAEjE,MAAM,QAAQ,GAAG,IAAI,+BAAc,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnE,MAAM,iBAAiB,GAAG,IAAA,yCAAqB,EAAC,UAAU,CAAC,CAAC;IAC5D,iBAAiB,CAAC,SAAS,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC,CAAC;IAE9D,MAAM,QAAQ,GAAG,IAAA,+CAAyB,EAAC,UAAU,CAAC,CAAC;IACvD,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"GetAssetsForOwnerFromAPIUC.test.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/GetAssetsForOwnerFromAPIUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { makeMockJsonRequestUC } from \"../Mocks/MockJsonRequestUC\";\r\nimport { makeMockSignedAuthTokenUC } from \"../Mocks/MockSignedAuthToken\";\r\nimport { RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport {\r\n makeGetAssetsForOwnerFromAPIUC,\r\n GetAssetsForOwnerFromAPIUC\r\n} from \"./GetAssetsForOwnerFromAPIUC\";\r\nimport { makeAppObjectRepo } from \"@vived/core\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const singletonSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n\r\n const vivedAPI = new VivedAPIEntity(appObjects.getOrCreate(\"API\"));\r\n\r\n const mockJsonRequester = makeMockJsonRequestUC(appObjects);\r\n mockJsonRequester.doRequest.mockResolvedValue(makeMockResp());\r\n\r\n const mockAuth = makeMockSignedAuthTokenUC(appObjects);\r\n mockAuth.getAuthToken.mockResolvedValue(\"mockAuthToken\");\r\n\r\n const uc = makeGetAssetsForOwnerFromAPIUC(appObjects.getOrCreate(\"ao\"));\r\n\r\n return {\r\n uc,\r\n appObjects,\r\n singletonSpy,\r\n vivedAPI,\r\n mockJsonRequester,\r\n mockAuth\r\n };\r\n}\r\n\r\ndescribe(\"Get Assets for Owner UC\", () => {\r\n it(\"Registers itself as the Singleton\", () => {\r\n const { uc, singletonSpy } = makeTestRig();\r\n\r\n expect(singletonSpy).toBeCalledWith(uc);\r\n });\r\n\r\n it(\"Gets the singleton\", () => {\r\n const { uc, appObjects } = makeTestRig();\r\n\r\n expect(GetAssetsForOwnerFromAPIUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Resolves\", async () => {\r\n const { uc } = makeTestRig();\r\n\r\n const assets = await uc.getAssets(\"owner\");\r\n\r\n expect(assets).toHaveLength(2);\r\n });\r\n\r\n it(\"Forms the DTO as expected\", async () => {\r\n const { uc } = makeTestRig();\r\n\r\n const assets = await uc.getAssets(\"owner\");\r\n\r\n const asset1 = assets[0];\r\n\r\n expect(asset1.id).toEqual(\"asset1\");\r\n expect(asset1.ownerId).toEqual(\"asset1 Owner\");\r\n expect(asset1.archived).toEqual(false);\r\n expect(asset1.description).toEqual(\"asset1 Description\");\r\n expect(asset1.fileURL).toEqual(\"www.asset1.com\");\r\n expect(asset1.filename).toEqual(\"asset1_file.name\");\r\n\r\n expect(asset1.linkedAssets).toHaveLength(2);\r\n\r\n expect(asset1.linkedAssets[0].type).toEqual(\"someLinkType\");\r\n expect(asset1.linkedAssets[0].asset.id).toEqual(\"linkedAsset1\");\r\n });\r\n\r\n it(\"Warns and rejects if the JSON Request rejects\", () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n mockJsonRequester.doRequest.mockRejectedValue(new Error(\"Some JSON Error\"));\r\n\r\n return expect(uc.getAssets(\"owner\")).rejects.toEqual(\r\n new Error(\"Some JSON Error\")\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected url\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n await uc.getAssets(\"owner\");\r\n\r\n const postURL = mockJsonRequester.doRequest.mock.calls[0][0] as URL;\r\n expect(postURL.toString()).toEqual(\r\n \"https://api.vivedlearning.com/assets/group/owner?page=1&itemsPerPage=100\"\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected options\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n await uc.getAssets(\"owner\");\r\n\r\n const postURL = mockJsonRequester.doRequest.mock\r\n .calls[0][1] as RequestJSONOptions;\r\n expect(postURL.method).toEqual(\"GET\");\r\n });\r\n\r\n it(\"Rejects if the get auth token fails\", () => {\r\n const { uc, mockAuth } = makeTestRig();\r\n\r\n mockAuth.getAuthToken.mockRejectedValue(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n\r\n return expect(uc.getAssets(\"owner\")).rejects.toEqual(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n });\r\n});\r\n\r\nfunction makeMockResp() {\r\n const asset1 = makeBaseAssetResp(\"asset1\");\r\n const asset2 = makeBaseAssetResp(\"asset2\");\r\n\r\n (asset1.linkedAssets as any) = [\r\n { type: \"someLinkType\", asset: makeBaseAssetResp(\"linkedAsset1\") },\r\n { type: \"someOtherLink\", asset: makeBaseAssetResp(\"linkedAsset2\") }\r\n ];\r\n\r\n return { assets: [asset1, asset2] };\r\n}\r\n\r\nfunction makeBaseAssetResp(id: string) {\r\n return {\r\n id,\r\n ownerId: `${id} Owner`,\r\n name: `${id} Name`,\r\n description: `${id} Description`,\r\n archived: false,\r\n fileURL: `www.${id}.com`,\r\n filename: `${id}_file.name`,\r\n linkedAssets: []\r\n };\r\n}\r\n"]}
|
|
@@ -25,7 +25,7 @@ class PatchAssetFileUCImp extends PatchAssetFileUC {
|
|
|
25
25
|
}
|
|
26
26
|
get getAuthToken() {
|
|
27
27
|
return this.getCachedSingleton(SignedAuthTokenUC_1.SignedAuthTokenUC.type)
|
|
28
|
-
?.
|
|
28
|
+
?.getAuthToken;
|
|
29
29
|
}
|
|
30
30
|
get fileUpload() {
|
|
31
31
|
return this.getCachedSingleton(FileUploadUC_1.FileUploadUC.type)?.doUpload;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PatchAssetFileUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PatchAssetFileUC.ts"],"names":[],"mappings":";;;AAsBA,oDAEC;AAxBD,sCAKqB;AACrB,sCAA+C;AAC/C,+DAA4D;AAC5D,iDAA8C;AAC9C,mDAAoE;AACpE,2DAAwD;AAExD,MAAsB,gBAAiB,SAAQ,kBAAW;IAKxD,MAAM,CAAC,GAAG,CAAC,UAAyB;QAClC,OAAO,IAAA,4BAAqB,EAAC,gBAAgB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAClE,CAAC;;AAPH,4CAQC;AAPQ,qBAAI,GAAG,kBAAkB,CAAC;AASnC,SAAgB,oBAAoB,CAAC,SAAoB;IACvD,OAAO,IAAI,mBAAmB,CAAC,SAAS,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,mBAAoB,SAAQ,gBAAgB;IAChD,IAAY,aAAa;QACvB,OAAO,IAAI,CAAC,kBAAkB,CAAgB,6BAAa,CAAC,IAAI,CAAC;YAC/D,EAAE,SAAS,CAAC;IAChB,CAAC;IAED,IAAY,YAAY;QACtB,OAAO,IAAI,CAAC,kBAAkB,CAAoB,qCAAiB,CAAC,IAAI,CAAC;YACvE,EAAE,
|
|
1
|
+
{"version":3,"file":"PatchAssetFileUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PatchAssetFileUC.ts"],"names":[],"mappings":"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","sourcesContent":["import {\r\n getSingletonComponent,\r\n AppObject,\r\n AppObjectRepo,\r\n AppObjectUC\r\n} from \"@vived/core\";\r\nimport { generateUniqueID } from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { FileUploadUC } from \"./FileUploadUC\";\r\nimport { JsonRequestUC, RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport { SignedAuthTokenUC } from \"./SignedAuthTokenUC\";\r\n\r\nexport abstract class PatchAssetFileUC extends AppObjectUC {\r\n static type = \"PatchAssetFileUC\";\r\n\r\n abstract doPatch(assetId: string, file: File): Promise<string>;\r\n\r\n static get(appObjects: AppObjectRepo): PatchAssetFileUC | undefined {\r\n return getSingletonComponent(PatchAssetFileUC.type, appObjects);\r\n }\r\n}\r\n\r\nexport function makePatchAssetFileUC(appObject: AppObject): PatchAssetFileUC {\r\n return new PatchAssetFileUCImp(appObject);\r\n}\r\n\r\nclass PatchAssetFileUCImp extends PatchAssetFileUC {\r\n private get jsonRequester() {\r\n return this.getCachedSingleton<JsonRequestUC>(JsonRequestUC.type)\r\n ?.doRequest;\r\n }\r\n\r\n private get getAuthToken() {\r\n return this.getCachedSingleton<SignedAuthTokenUC>(SignedAuthTokenUC.type)\r\n ?.getAuthToken;\r\n }\r\n\r\n private get fileUpload() {\r\n return this.getCachedSingleton<FileUploadUC>(FileUploadUC.type)?.doUpload;\r\n }\r\n\r\n private get vivedAPI() {\r\n return this.getCachedSingleton<VivedAPIEntity>(VivedAPIEntity.type);\r\n }\r\n\r\n doPatch = (assetId: string, file: File): Promise<string> => {\r\n const getAuthToken = this.getAuthToken;\r\n const vivedAPI = this.vivedAPI;\r\n const jsonRequester = this.jsonRequester;\r\n const fileUpload = this.fileUpload;\r\n\r\n if (!getAuthToken || !vivedAPI || !jsonRequester || !fileUpload) {\r\n return Promise.reject();\r\n }\r\n\r\n let extension: string = \"\";\r\n const strArr = file.name.split(\".\");\r\n extension = strArr[strArr.length - 1];\r\n const filename = `${generateUniqueID()}.${extension}`;\r\n\r\n const assetFile = new File([file], `${filename}`, {\r\n lastModified: Date.now()\r\n });\r\n\r\n return new Promise((resolve, reject) => {\r\n fileUpload(assetFile)\r\n .then((_) => {\r\n return getAuthToken();\r\n })\r\n .then((token) => {\r\n const url = vivedAPI.getEndpointURL(`assets/${assetId}`);\r\n const body = {\r\n filename\r\n };\r\n\r\n const options: RequestJSONOptions = {\r\n method: \"PATCH\",\r\n body: JSON.stringify(body),\r\n headers: {\r\n Authorization: \"Bearer \" + token\r\n }\r\n };\r\n\r\n return jsonRequester(url, options);\r\n })\r\n .then((_) => {\r\n resolve(filename);\r\n })\r\n .catch((e) => {\r\n reject(e);\r\n return;\r\n });\r\n });\r\n };\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, PatchAssetFileUC.type);\r\n this.appObjects.registerSingleton(this);\r\n }\r\n}\r\n"]}
|
|
@@ -13,7 +13,7 @@ function makeTestRig() {
|
|
|
13
13
|
const mockJsonRequester = (0, MockJsonRequestUC_1.makeMockJsonRequestUC)(appObjects);
|
|
14
14
|
mockJsonRequester.doRequest.mockResolvedValue({});
|
|
15
15
|
const mockAuth = (0, MockSignedAuthToken_1.makeMockSignedAuthTokenUC)(appObjects);
|
|
16
|
-
mockAuth.
|
|
16
|
+
mockAuth.getAuthToken.mockResolvedValue("mockAuthToken");
|
|
17
17
|
const mockFileUpload = (0, MockFileUpload_1.makeMockFileUploadUC)(appObjects);
|
|
18
18
|
const uc = (0, PatchAssetFileUC_1.makePatchAssetFileUC)(appObjects.getOrCreate("ao"));
|
|
19
19
|
return {
|
|
@@ -64,7 +64,7 @@ describe("Patch Asset Is Archived UC", () => {
|
|
|
64
64
|
});
|
|
65
65
|
it("Rejects if the get auth token fails", () => {
|
|
66
66
|
const { uc, mockAuth } = makeTestRig();
|
|
67
|
-
mockAuth.
|
|
67
|
+
mockAuth.getAuthToken.mockRejectedValue(new Error("Some Auth token error Error"));
|
|
68
68
|
return expect(uc.doPatch("asset1", new File([], "some.filename"))).rejects.toEqual(new Error("Some Auth token error Error"));
|
|
69
69
|
});
|
|
70
70
|
it("Rejects if the file upload fails", () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PatchAssetFileUC.test.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PatchAssetFileUC.test.ts"],"names":[],"mappings":";;AAAA,sCAAgD;AAChD,+DAA4D;AAC5D,4DAA+D;AAC/D,kEAAmE;AACnE,sEAAyE;AAEzE,yDAA4E;AAE5E,SAAS,WAAW;IAClB,MAAM,UAAU,GAAG,IAAA,wBAAiB,GAAE,CAAC;IACvC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;IAEjE,MAAM,QAAQ,GAAG,IAAI,+BAAc,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAEnE,MAAM,iBAAiB,GAAG,IAAA,yCAAqB,EAAC,UAAU,CAAC,CAAC;IAC5D,iBAAiB,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAElD,MAAM,QAAQ,GAAG,IAAA,+CAAyB,EAAC,UAAU,CAAC,CAAC;IACvD,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"PatchAssetFileUC.test.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PatchAssetFileUC.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { makeAppObjectRepo } from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { makeMockFileUploadUC } from \"../Mocks/MockFileUpload\";\r\nimport { makeMockJsonRequestUC } from \"../Mocks/MockJsonRequestUC\";\r\nimport { makeMockSignedAuthTokenUC } from \"../Mocks/MockSignedAuthToken\";\r\nimport { RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport { makePatchAssetFileUC, PatchAssetFileUC } from \"./PatchAssetFileUC\";\r\n\r\nfunction makeTestRig() {\r\n const appObjects = makeAppObjectRepo();\r\n const singletonSpy = jest.spyOn(appObjects, \"registerSingleton\");\r\n\r\n const vivedAPI = new VivedAPIEntity(appObjects.getOrCreate(\"API\"));\r\n\r\n const mockJsonRequester = makeMockJsonRequestUC(appObjects);\r\n mockJsonRequester.doRequest.mockResolvedValue({});\r\n\r\n const mockAuth = makeMockSignedAuthTokenUC(appObjects);\r\n mockAuth.getAuthToken.mockResolvedValue(\"mockAuthToken\");\r\n\r\n const mockFileUpload = makeMockFileUploadUC(appObjects);\r\n\r\n const uc = makePatchAssetFileUC(appObjects.getOrCreate(\"ao\"));\r\n\r\n return {\r\n uc,\r\n appObjects,\r\n singletonSpy,\r\n vivedAPI,\r\n mockJsonRequester,\r\n mockAuth,\r\n mockFileUpload\r\n };\r\n}\r\n\r\ndescribe(\"Patch Asset Is Archived UC\", () => {\r\n it(\"Registers itself as the Singleton\", () => {\r\n const { uc, singletonSpy } = makeTestRig();\r\n\r\n expect(singletonSpy).toBeCalledWith(uc);\r\n });\r\n\r\n it(\"Gets the singleton\", () => {\r\n const { uc, appObjects } = makeTestRig();\r\n\r\n expect(PatchAssetFileUC.get(appObjects)).toEqual(uc);\r\n });\r\n\r\n it(\"Resolves with a new filename\", async () => {\r\n const { uc } = makeTestRig();\r\n\r\n const filename = await uc.doPatch(\"asset1\", new File([], \"some.filename\"));\r\n\r\n expect(filename).not.toEqual(\"some.filename\");\r\n expect(filename).toContain(\".filename\");\r\n });\r\n\r\n it(\"Warns and rejects if the JSON Request rejects\", () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n mockJsonRequester.doRequest.mockRejectedValue(new Error(\"Some JSON Error\"));\r\n\r\n return expect(\r\n uc.doPatch(\"asset1\", new File([], \"some.filename\"))\r\n ).rejects.toEqual(new Error(\"Some JSON Error\"));\r\n });\r\n\r\n it(\"Requests the JSON with the expected url\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n await uc.doPatch(\"asset1\", new File([], \"some.filename\"));\r\n\r\n const postURL = mockJsonRequester.doRequest.mock.calls[0][0] as URL;\r\n expect(postURL.toString()).toEqual(\r\n \"https://api.vivedlearning.com/assets/asset1\"\r\n );\r\n });\r\n\r\n it(\"Requests the JSON with the expected options\", async () => {\r\n const { uc, mockJsonRequester } = makeTestRig();\r\n\r\n await uc.doPatch(\"asset1\", new File([], \"some.filename\"));\r\n\r\n const postURL = mockJsonRequester.doRequest.mock\r\n .calls[0][1] as RequestJSONOptions;\r\n expect(postURL.method).toEqual(\"PATCH\");\r\n expect(postURL.headers).toEqual({\r\n Authorization: \"Bearer mockAuthToken\"\r\n });\r\n });\r\n\r\n it(\"Rejects if the get auth token fails\", () => {\r\n const { uc, mockAuth } = makeTestRig();\r\n\r\n mockAuth.getAuthToken.mockRejectedValue(\r\n new Error(\"Some Auth token error Error\")\r\n );\r\n\r\n return expect(\r\n uc.doPatch(\"asset1\", new File([], \"some.filename\"))\r\n ).rejects.toEqual(new Error(\"Some Auth token error Error\"));\r\n });\r\n\r\n it(\"Rejects if the file upload fails\", () => {\r\n const { uc, mockFileUpload } = makeTestRig();\r\n\r\n mockFileUpload.doUpload.mockRejectedValue(new Error(\"Some upload error\"));\r\n\r\n return expect(\r\n uc.doPatch(\"asset1\", new File([], \"some.filename\"))\r\n ).rejects.toEqual(new Error(\"Some upload error\"));\r\n });\r\n\r\n it(\"Calls file upload as expected\", async () => {\r\n const { uc, mockFileUpload } = makeTestRig();\r\n\r\n const file = new File([], \"some.filename\");\r\n await uc.doPatch(\"asset1\", file);\r\n\r\n expect(mockFileUpload.doUpload).toBeCalledWith(file);\r\n });\r\n});\r\n"]}
|
|
@@ -23,7 +23,7 @@ class PatchAssetIsArchivedUCImp extends PatchAssetIsArchivedUC {
|
|
|
23
23
|
}
|
|
24
24
|
get getAuthToken() {
|
|
25
25
|
return this.getCachedSingleton(SignedAuthTokenUC_1.SignedAuthTokenUC.type)
|
|
26
|
-
?.
|
|
26
|
+
?.getAuthToken;
|
|
27
27
|
}
|
|
28
28
|
get vivedAPI() {
|
|
29
29
|
return this.getCachedSingleton(VivedAPIEntity_1.VivedAPIEntity.type);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PatchAssetIsArchivedUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PatchAssetIsArchivedUC.ts"],"names":[],"mappings":";;;AAoBA,gEAIC;AAxBD,sCAKqB;AACrB,+DAA4D;AAC5D,mDAAoE;AACpE,2DAAwD;AAExD,MAAsB,sBAAuB,SAAQ,kBAAW;IAK9D,MAAM,CAAC,GAAG,CAAC,UAAyB;QAClC,OAAO,IAAA,4BAAqB,EAAC,sBAAsB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACxE,CAAC;;AAPH,wDAQC;AAPQ,2BAAI,GAAG,wBAAwB,CAAC;AASzC,SAAgB,0BAA0B,CACxC,SAAoB;IAEpB,OAAO,IAAI,yBAAyB,CAAC,SAAS,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,yBAA0B,SAAQ,sBAAsB;IAC5D,IAAY,aAAa;QACvB,OAAO,IAAI,CAAC,kBAAkB,CAAgB,6BAAa,CAAC,IAAI,CAAC;YAC/D,EAAE,SAAS,CAAC;IAChB,CAAC;IAED,IAAY,YAAY;QACtB,OAAO,IAAI,CAAC,kBAAkB,CAAoB,qCAAiB,CAAC,IAAI,CAAC;YACvE,EAAE,
|
|
1
|
+
{"version":3,"file":"PatchAssetIsArchivedUC.js","sourceRoot":"","sources":["../../../../src/VivedAPI/UCs/PatchAssetIsArchivedUC.ts"],"names":[],"mappings":";;;AAoBA,gEAIC;AAxBD,sCAKqB;AACrB,+DAA4D;AAC5D,mDAAoE;AACpE,2DAAwD;AAExD,MAAsB,sBAAuB,SAAQ,kBAAW;IAK9D,MAAM,CAAC,GAAG,CAAC,UAAyB;QAClC,OAAO,IAAA,4BAAqB,EAAC,sBAAsB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACxE,CAAC;;AAPH,wDAQC;AAPQ,2BAAI,GAAG,wBAAwB,CAAC;AASzC,SAAgB,0BAA0B,CACxC,SAAoB;IAEpB,OAAO,IAAI,yBAAyB,CAAC,SAAS,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,yBAA0B,SAAQ,sBAAsB;IAC5D,IAAY,aAAa;QACvB,OAAO,IAAI,CAAC,kBAAkB,CAAgB,6BAAa,CAAC,IAAI,CAAC;YAC/D,EAAE,SAAS,CAAC;IAChB,CAAC;IAED,IAAY,YAAY;QACtB,OAAO,IAAI,CAAC,kBAAkB,CAAoB,qCAAiB,CAAC,IAAI,CAAC;YACvE,EAAE,YAAY,CAAC;IACnB,CAAC;IAED,IAAY,QAAQ;QAClB,OAAO,IAAI,CAAC,kBAAkB,CAAiB,+BAAc,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC;IAwCD,YAAY,SAAoB;QAC9B,KAAK,CAAC,SAAS,EAAE,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAvChD,YAAO,GAAG,CAAC,OAAe,EAAE,UAAmB,EAAiB,EAAE;YAChE,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;YACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC/B,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;YAEzC,IAAI,CAAC,YAAY,IAAI,CAAC,QAAQ,IAAI,CAAC,aAAa,EAAE,CAAC;gBACjD,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;YAC1B,CAAC;YAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACrC,YAAY,EAAE;qBACX,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;oBACd,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,UAAU,OAAO,EAAE,CAAC,CAAC;oBAE7D,MAAM,IAAI,GAAG;wBACX,QAAQ,EAAE,UAAU;qBACrB,CAAC;oBAEF,MAAM,OAAO,GAAuB;wBAClC,MAAM,EAAE,OAAO;wBACf,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;wBAC1B,OAAO,EAAE;4BACP,aAAa,EAAE,SAAS,GAAG,KAAK;yBACjC;qBACF,CAAC;oBAEF,OAAO,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACzC,CAAC,CAAC;qBACD,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;oBACV,OAAO,EAAE,CAAC;gBACZ,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;oBACX,MAAM,CAAC,CAAC,CAAC,CAAC;oBACV,OAAO;gBACT,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAIA,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;CACF","sourcesContent":["import {\r\n getSingletonComponent,\r\n AppObject,\r\n AppObjectRepo,\r\n AppObjectUC\r\n} from \"@vived/core\";\r\nimport { VivedAPIEntity } from \"../Entities/VivedAPIEntity\";\r\nimport { JsonRequestUC, RequestJSONOptions } from \"./JsonRequestUC\";\r\nimport { SignedAuthTokenUC } from \"./SignedAuthTokenUC\";\r\n\r\nexport abstract class PatchAssetIsArchivedUC extends AppObjectUC {\r\n static type = \"PatchAssetIsArchivedUC\";\r\n\r\n abstract doPatch(assetID: string, isArchived: boolean): Promise<void>;\r\n\r\n static get(appObjects: AppObjectRepo): PatchAssetIsArchivedUC | undefined {\r\n return getSingletonComponent(PatchAssetIsArchivedUC.type, appObjects);\r\n }\r\n}\r\n\r\nexport function makePatchAssetIsArchivedUC(\r\n appObject: AppObject\r\n): PatchAssetIsArchivedUC {\r\n return new PatchAssetIsArchivedUCImp(appObject);\r\n}\r\n\r\nclass PatchAssetIsArchivedUCImp extends PatchAssetIsArchivedUC {\r\n private get jsonRequester() {\r\n return this.getCachedSingleton<JsonRequestUC>(JsonRequestUC.type)\r\n ?.doRequest;\r\n }\r\n\r\n private get getAuthToken() {\r\n return this.getCachedSingleton<SignedAuthTokenUC>(SignedAuthTokenUC.type)\r\n ?.getAuthToken;\r\n }\r\n\r\n private get vivedAPI() {\r\n return this.getCachedSingleton<VivedAPIEntity>(VivedAPIEntity.type);\r\n }\r\n\r\n doPatch = (assetID: string, isArchived: boolean): Promise<void> => {\r\n const getAuthToken = this.getAuthToken;\r\n const vivedAPI = this.vivedAPI;\r\n const jsonRequester = this.jsonRequester;\r\n\r\n if (!getAuthToken || !vivedAPI || !jsonRequester) {\r\n return Promise.reject();\r\n }\r\n\r\n return new Promise((resolve, reject) => {\r\n getAuthToken()\r\n .then((token) => {\r\n const postURL = vivedAPI.getEndpointURL(`assets/${assetID}`);\r\n\r\n const body = {\r\n archived: isArchived\r\n };\r\n\r\n const options: RequestJSONOptions = {\r\n method: \"PATCH\",\r\n body: JSON.stringify(body),\r\n headers: {\r\n Authorization: \"Bearer \" + token\r\n }\r\n };\r\n\r\n return jsonRequester(postURL, options);\r\n })\r\n .then((_) => {\r\n resolve();\r\n })\r\n .catch((e) => {\r\n reject(e);\r\n return;\r\n });\r\n });\r\n };\r\n\r\n constructor(appObject: AppObject) {\r\n super(appObject, PatchAssetIsArchivedUC.type);\r\n this.appObjects.registerSingleton(this);\r\n }\r\n}\r\n"]}
|