@ledgerhq/device-management-kit 0.0.0-rnble-transport-20250324094321 → 0.0.0-rnble-transport-20250331135728
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/README.md +21 -5
- package/lib/cjs/src/api/DeviceManagementKit.js.map +2 -2
- package/lib/cjs/src/api/command/use-case/SendCommandUseCase.test.js +1 -1
- package/lib/cjs/src/api/command/use-case/SendCommandUseCase.test.js.map +3 -3
- package/lib/cjs/src/api/device-action/__test-utils__/setupTestMachine.js +1 -1
- package/lib/cjs/src/api/device-action/__test-utils__/setupTestMachine.js.map +3 -3
- package/lib/cjs/src/api/device-session/use-case/DisableDeviceSessionRefresher.test.js +1 -1
- package/lib/cjs/src/api/device-session/use-case/DisableDeviceSessionRefresher.test.js.map +3 -3
- package/lib/cjs/src/api/index.js +1 -1
- package/lib/cjs/src/api/index.js.map +3 -3
- package/lib/cjs/src/api/logger-subscriber/service/WebLogsExporterLogger.test.js +1 -1
- package/lib/cjs/src/api/logger-subscriber/service/WebLogsExporterLogger.test.js.map +3 -3
- package/lib/cjs/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.js.map +2 -2
- package/lib/cjs/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.js +1 -1
- package/lib/cjs/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.js.map +3 -3
- package/lib/cjs/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.js +2 -0
- package/lib/cjs/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.js.map +7 -0
- package/lib/cjs/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.test.js +2 -0
- package/lib/cjs/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.test.js.map +7 -0
- package/lib/cjs/src/api/secure-channel/device-action/InstallApp/types.js +2 -0
- package/lib/cjs/src/api/secure-channel/device-action/InstallApp/types.js.map +7 -0
- package/lib/cjs/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.js.map +2 -2
- package/lib/cjs/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.test.js +1 -1
- package/lib/cjs/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.test.js.map +3 -3
- package/lib/cjs/src/api/secure-channel/device-action/ListInstalledApps/types.js +1 -1
- package/lib/cjs/src/api/secure-channel/device-action/ListInstalledApps/types.js.map +2 -2
- package/lib/cjs/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.js +2 -0
- package/lib/cjs/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.js.map +7 -0
- package/lib/cjs/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.test.js +2 -0
- package/lib/cjs/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.test.js.map +7 -0
- package/lib/cjs/src/api/secure-channel/device-action/UninstallApp/types.js +2 -0
- package/lib/cjs/src/api/secure-channel/device-action/UninstallApp/types.js.map +7 -0
- package/lib/cjs/src/api/secure-channel/utils.test.js +1 -1
- package/lib/cjs/src/api/secure-channel/utils.test.js.map +2 -2
- package/lib/cjs/src/api/transport/model/TransportConnectedDevice.test.js +1 -1
- package/lib/cjs/src/api/transport/model/TransportConnectedDevice.test.js.map +3 -3
- package/lib/cjs/src/api/types.js +1 -1
- package/lib/cjs/src/api/types.js.map +1 -1
- package/lib/cjs/src/internal/device-session/data/DeviceSessionRefresherConst.js +1 -1
- package/lib/cjs/src/internal/device-session/data/DeviceSessionRefresherConst.js.map +3 -3
- package/lib/cjs/src/internal/device-session/model/DevicePinger.js +2 -0
- package/lib/cjs/src/internal/device-session/model/DevicePinger.js.map +7 -0
- package/lib/cjs/src/internal/device-session/model/DevicePinger.test.js +2 -0
- package/lib/cjs/src/internal/device-session/model/DevicePinger.test.js.map +7 -0
- package/lib/cjs/src/internal/device-session/model/DeviceSession.js +1 -1
- package/lib/cjs/src/internal/device-session/model/DeviceSession.js.map +3 -3
- package/lib/cjs/src/internal/device-session/model/DeviceSession.stub.js +1 -1
- package/lib/cjs/src/internal/device-session/model/DeviceSession.stub.js.map +3 -3
- package/lib/cjs/src/internal/device-session/model/DeviceSessionEventDispatcher.js +2 -0
- package/lib/cjs/src/internal/device-session/model/DeviceSessionEventDispatcher.js.map +7 -0
- package/lib/cjs/src/internal/device-session/model/DeviceSessionEventDispatcher.test.js +2 -0
- package/lib/cjs/src/internal/device-session/model/DeviceSessionEventDispatcher.test.js.map +7 -0
- package/lib/cjs/src/internal/device-session/model/DeviceSessionRefresher.js +1 -1
- package/lib/cjs/src/internal/device-session/model/DeviceSessionRefresher.js.map +3 -3
- package/lib/cjs/src/internal/device-session/model/DeviceSessionRefresher.test.js +1 -1
- package/lib/cjs/src/internal/device-session/model/DeviceSessionRefresher.test.js.map +3 -3
- package/lib/cjs/src/internal/device-session/model/DeviceSessionStateHandler.js +2 -0
- package/lib/cjs/src/internal/device-session/model/DeviceSessionStateHandler.js.map +7 -0
- package/lib/cjs/src/internal/device-session/model/DeviceSessionStateHandler.test.js +2 -0
- package/lib/cjs/src/internal/device-session/model/DeviceSessionStateHandler.test.js.map +7 -0
- package/lib/cjs/src/internal/device-session/service/DefaultDeviceSessionService.test.js +1 -1
- package/lib/cjs/src/internal/device-session/service/DefaultDeviceSessionService.test.js.map +3 -3
- package/lib/cjs/src/internal/device-session/service/MutexService.js +2 -0
- package/lib/cjs/src/internal/device-session/service/MutexService.js.map +7 -0
- package/lib/cjs/src/internal/device-session/service/MutexService.test.js +2 -0
- package/lib/cjs/src/internal/device-session/service/MutexService.test.js.map +7 -0
- package/lib/cjs/src/internal/device-session/service/RefresherService.js +1 -1
- package/lib/cjs/src/internal/device-session/service/RefresherService.js.map +3 -3
- package/lib/cjs/src/internal/device-session/service/RefresherService.test.js +1 -1
- package/lib/cjs/src/internal/device-session/service/RefresherService.test.js.map +3 -3
- package/lib/cjs/src/internal/device-session/use-case/CloseSessionsUseCase.test.js +1 -1
- package/lib/cjs/src/internal/device-session/use-case/CloseSessionsUseCase.test.js.map +3 -3
- package/lib/cjs/src/internal/device-session/use-case/GetDeviceSessionStateUseCase.test.js +1 -1
- package/lib/cjs/src/internal/device-session/use-case/GetDeviceSessionStateUseCase.test.js.map +3 -3
- package/lib/cjs/src/internal/device-session/utils/deviceSessionUtils.js +2 -0
- package/lib/cjs/src/internal/device-session/utils/deviceSessionUtils.js.map +7 -0
- package/lib/cjs/src/internal/discovery/use-case/ConnectUseCase.js +1 -1
- package/lib/cjs/src/internal/discovery/use-case/ConnectUseCase.js.map +3 -3
- package/lib/cjs/src/internal/discovery/use-case/DisconnectUseCase.test.js +1 -1
- package/lib/cjs/src/internal/discovery/use-case/DisconnectUseCase.test.js.map +3 -3
- package/lib/cjs/src/internal/discovery/use-case/GetConnectedDeviceUseCase.test.js +1 -1
- package/lib/cjs/src/internal/discovery/use-case/GetConnectedDeviceUseCase.test.js.map +3 -3
- package/lib/cjs/src/internal/discovery/use-case/ListConnectedDevicesUseCase.test.js +1 -1
- package/lib/cjs/src/internal/discovery/use-case/ListConnectedDevicesUseCase.test.js.map +3 -3
- package/lib/cjs/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.js +1 -1
- package/lib/cjs/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.js.map +3 -3
- package/lib/cjs/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.test.js +1 -1
- package/lib/cjs/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.test.js.map +3 -3
- package/lib/cjs/src/internal/manager-api/data/AxiosManagerApiDataSource.test.js +1 -1
- package/lib/cjs/src/internal/manager-api/data/AxiosManagerApiDataSource.test.js.map +2 -2
- package/lib/cjs/src/internal/secure-channel/data/DefaultSecureChannelDataSource.test.js +1 -1
- package/lib/cjs/src/internal/secure-channel/data/DefaultSecureChannelDataSource.test.js.map +2 -2
- package/lib/cjs/src/internal/secure-channel/model/Params.js +1 -1
- package/lib/cjs/src/internal/secure-channel/model/Params.js.map +1 -1
- package/lib/cjs/src/internal/secure-channel/service/DefaultSecureChannelService.js +1 -1
- package/lib/cjs/src/internal/secure-channel/service/DefaultSecureChannelService.js.map +3 -3
- package/lib/cjs/src/internal/secure-channel/service/DefaultSecureChannelService.test.js +1 -1
- package/lib/cjs/src/internal/secure-channel/service/DefaultSecureChannelService.test.js.map +3 -3
- package/lib/cjs/src/internal/secure-channel/service/SecureChannelService.js +1 -1
- package/lib/cjs/src/internal/secure-channel/service/SecureChannelService.js.map +1 -1
- package/lib/cjs/src/internal/send/use-case/SendApduUseCase.js +1 -1
- package/lib/cjs/src/internal/send/use-case/SendApduUseCase.js.map +3 -3
- package/lib/cjs/src/internal/send/use-case/SendApduUseCase.test.js +1 -1
- package/lib/cjs/src/internal/send/use-case/SendApduUseCase.test.js.map +3 -3
- package/lib/esm/src/api/DeviceManagementKit.js.map +2 -2
- package/lib/esm/src/api/command/use-case/SendCommandUseCase.test.js +1 -1
- package/lib/esm/src/api/command/use-case/SendCommandUseCase.test.js.map +3 -3
- package/lib/esm/src/api/device-action/__test-utils__/setupTestMachine.js +1 -1
- package/lib/esm/src/api/device-action/__test-utils__/setupTestMachine.js.map +3 -3
- package/lib/esm/src/api/device-session/use-case/DisableDeviceSessionRefresher.test.js +1 -1
- package/lib/esm/src/api/device-session/use-case/DisableDeviceSessionRefresher.test.js.map +3 -3
- package/lib/esm/src/api/index.js +1 -1
- package/lib/esm/src/api/index.js.map +3 -3
- package/lib/esm/src/api/logger-subscriber/service/WebLogsExporterLogger.test.js +1 -1
- package/lib/esm/src/api/logger-subscriber/service/WebLogsExporterLogger.test.js.map +3 -3
- package/lib/esm/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.js.map +2 -2
- package/lib/esm/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.js +1 -1
- package/lib/esm/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.js.map +3 -3
- package/lib/esm/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.js +2 -0
- package/lib/esm/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.js.map +7 -0
- package/lib/esm/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.test.js +2 -0
- package/lib/esm/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.test.js.map +7 -0
- package/lib/esm/src/api/secure-channel/device-action/InstallApp/types.js +1 -0
- package/lib/esm/src/api/secure-channel/device-action/InstallApp/types.js.map +7 -0
- package/lib/esm/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.js.map +2 -2
- package/lib/esm/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.test.js +1 -1
- package/lib/esm/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.test.js.map +3 -3
- package/lib/esm/src/api/secure-channel/device-action/ListInstalledApps/types.js.map +2 -2
- package/lib/esm/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.js +2 -0
- package/lib/esm/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.js.map +7 -0
- package/lib/esm/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.test.js +2 -0
- package/lib/esm/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.test.js.map +7 -0
- package/lib/esm/src/api/secure-channel/device-action/UninstallApp/types.js +1 -0
- package/lib/esm/src/api/secure-channel/device-action/UninstallApp/types.js.map +7 -0
- package/lib/esm/src/api/secure-channel/utils.test.js +1 -1
- package/lib/esm/src/api/secure-channel/utils.test.js.map +2 -2
- package/lib/esm/src/api/transport/model/TransportConnectedDevice.test.js +1 -1
- package/lib/esm/src/api/transport/model/TransportConnectedDevice.test.js.map +3 -3
- package/lib/esm/src/internal/device-session/data/DeviceSessionRefresherConst.js +1 -1
- package/lib/esm/src/internal/device-session/data/DeviceSessionRefresherConst.js.map +3 -3
- package/lib/esm/src/internal/device-session/model/DevicePinger.js +2 -0
- package/lib/esm/src/internal/device-session/model/DevicePinger.js.map +7 -0
- package/lib/esm/src/internal/device-session/model/DevicePinger.test.js +2 -0
- package/lib/esm/src/internal/device-session/model/DevicePinger.test.js.map +7 -0
- package/lib/esm/src/internal/device-session/model/DeviceSession.js +1 -1
- package/lib/esm/src/internal/device-session/model/DeviceSession.js.map +3 -3
- package/lib/esm/src/internal/device-session/model/DeviceSession.stub.js +1 -1
- package/lib/esm/src/internal/device-session/model/DeviceSession.stub.js.map +3 -3
- package/lib/esm/src/internal/device-session/model/DeviceSessionEventDispatcher.js +2 -0
- package/lib/esm/src/internal/device-session/model/DeviceSessionEventDispatcher.js.map +7 -0
- package/lib/esm/src/internal/device-session/model/DeviceSessionEventDispatcher.test.js +2 -0
- package/lib/esm/src/internal/device-session/model/DeviceSessionEventDispatcher.test.js.map +7 -0
- package/lib/esm/src/internal/device-session/model/DeviceSessionRefresher.js +1 -1
- package/lib/esm/src/internal/device-session/model/DeviceSessionRefresher.js.map +3 -3
- package/lib/esm/src/internal/device-session/model/DeviceSessionRefresher.test.js +1 -1
- package/lib/esm/src/internal/device-session/model/DeviceSessionRefresher.test.js.map +3 -3
- package/lib/esm/src/internal/device-session/model/DeviceSessionStateHandler.js +2 -0
- package/lib/esm/src/internal/device-session/model/DeviceSessionStateHandler.js.map +7 -0
- package/lib/esm/src/internal/device-session/model/DeviceSessionStateHandler.test.js +2 -0
- package/lib/esm/src/internal/device-session/model/DeviceSessionStateHandler.test.js.map +7 -0
- package/lib/esm/src/internal/device-session/service/DefaultDeviceSessionService.test.js +1 -1
- package/lib/esm/src/internal/device-session/service/DefaultDeviceSessionService.test.js.map +3 -3
- package/lib/esm/src/internal/device-session/service/MutexService.js +2 -0
- package/lib/esm/src/internal/device-session/service/MutexService.js.map +7 -0
- package/lib/esm/src/internal/device-session/service/MutexService.test.js +2 -0
- package/lib/esm/src/internal/device-session/service/MutexService.test.js.map +7 -0
- package/lib/esm/src/internal/device-session/service/RefresherService.js +1 -1
- package/lib/esm/src/internal/device-session/service/RefresherService.js.map +3 -3
- package/lib/esm/src/internal/device-session/service/RefresherService.test.js +1 -1
- package/lib/esm/src/internal/device-session/service/RefresherService.test.js.map +3 -3
- package/lib/esm/src/internal/device-session/use-case/CloseSessionsUseCase.test.js +1 -1
- package/lib/esm/src/internal/device-session/use-case/CloseSessionsUseCase.test.js.map +3 -3
- package/lib/esm/src/internal/device-session/use-case/GetDeviceSessionStateUseCase.test.js +1 -1
- package/lib/esm/src/internal/device-session/use-case/GetDeviceSessionStateUseCase.test.js.map +3 -3
- package/lib/esm/src/internal/device-session/utils/deviceSessionUtils.js +2 -0
- package/lib/esm/src/internal/device-session/utils/deviceSessionUtils.js.map +7 -0
- package/lib/esm/src/internal/discovery/use-case/ConnectUseCase.js +1 -1
- package/lib/esm/src/internal/discovery/use-case/ConnectUseCase.js.map +3 -3
- package/lib/esm/src/internal/discovery/use-case/DisconnectUseCase.test.js +1 -1
- package/lib/esm/src/internal/discovery/use-case/DisconnectUseCase.test.js.map +3 -3
- package/lib/esm/src/internal/discovery/use-case/GetConnectedDeviceUseCase.test.js +1 -1
- package/lib/esm/src/internal/discovery/use-case/GetConnectedDeviceUseCase.test.js.map +3 -3
- package/lib/esm/src/internal/discovery/use-case/ListConnectedDevicesUseCase.test.js +1 -1
- package/lib/esm/src/internal/discovery/use-case/ListConnectedDevicesUseCase.test.js.map +3 -3
- package/lib/esm/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.js +1 -1
- package/lib/esm/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.js.map +3 -3
- package/lib/esm/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.test.js +1 -1
- package/lib/esm/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.test.js.map +3 -3
- package/lib/esm/src/internal/manager-api/data/AxiosManagerApiDataSource.test.js +1 -1
- package/lib/esm/src/internal/manager-api/data/AxiosManagerApiDataSource.test.js.map +2 -2
- package/lib/esm/src/internal/secure-channel/data/DefaultSecureChannelDataSource.test.js +1 -1
- package/lib/esm/src/internal/secure-channel/data/DefaultSecureChannelDataSource.test.js.map +2 -2
- package/lib/esm/src/internal/secure-channel/service/DefaultSecureChannelService.js +1 -1
- package/lib/esm/src/internal/secure-channel/service/DefaultSecureChannelService.js.map +3 -3
- package/lib/esm/src/internal/secure-channel/service/DefaultSecureChannelService.test.js +1 -1
- package/lib/esm/src/internal/secure-channel/service/DefaultSecureChannelService.test.js.map +3 -3
- package/lib/esm/src/internal/send/use-case/SendApduUseCase.js +1 -1
- package/lib/esm/src/internal/send/use-case/SendApduUseCase.js.map +3 -3
- package/lib/esm/src/internal/send/use-case/SendApduUseCase.test.js +1 -1
- package/lib/esm/src/internal/send/use-case/SendApduUseCase.test.js.map +3 -3
- package/lib/types/src/api/DeviceManagementKit.d.ts +5 -1
- package/lib/types/src/api/DeviceManagementKit.d.ts.map +1 -1
- package/lib/types/src/api/device-action/__test-utils__/setupTestMachine.d.ts +4 -0
- package/lib/types/src/api/device-action/__test-utils__/setupTestMachine.d.ts.map +1 -1
- package/lib/types/src/api/index.d.ts +2 -0
- package/lib/types/src/api/index.d.ts.map +1 -1
- package/lib/types/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.d.ts +3 -3
- package/lib/types/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.d.ts.map +1 -1
- package/lib/types/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.d.ts +1 -0
- package/lib/types/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.d.ts +8 -0
- package/lib/types/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.d.ts.map +1 -0
- package/lib/types/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.test.d.ts +2 -0
- package/lib/types/src/api/secure-channel/device-action/InstallApp/InstallAppDeviceAction.test.d.ts.map +1 -0
- package/lib/types/src/api/secure-channel/device-action/InstallApp/types.d.ts +44 -0
- package/lib/types/src/api/secure-channel/device-action/InstallApp/types.d.ts.map +1 -0
- package/lib/types/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.d.ts +3 -3
- package/lib/types/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.d.ts.map +1 -1
- package/lib/types/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.test.d.ts +1 -0
- package/lib/types/src/api/secure-channel/device-action/ListInstalledApps/types.d.ts +1 -3
- package/lib/types/src/api/secure-channel/device-action/ListInstalledApps/types.d.ts.map +1 -1
- package/lib/types/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.d.ts +8 -0
- package/lib/types/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.d.ts.map +1 -0
- package/lib/types/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.test.d.ts +2 -0
- package/lib/types/src/api/secure-channel/device-action/UninstallApp/UninstallAppDeviceAction.test.d.ts.map +1 -0
- package/lib/types/src/api/secure-channel/device-action/UninstallApp/types.d.ts +41 -0
- package/lib/types/src/api/secure-channel/device-action/UninstallApp/types.d.ts.map +1 -0
- package/lib/types/src/api/types.d.ts +2 -0
- package/lib/types/src/api/types.d.ts.map +1 -1
- package/lib/types/src/internal/device-session/data/DeviceSessionRefresherConst.d.ts +6 -1
- package/lib/types/src/internal/device-session/data/DeviceSessionRefresherConst.d.ts.map +1 -1
- package/lib/types/src/internal/device-session/model/DevicePinger.d.ts +18 -0
- package/lib/types/src/internal/device-session/model/DevicePinger.d.ts.map +1 -0
- package/lib/types/src/internal/device-session/model/DevicePinger.test.d.ts +2 -0
- package/lib/types/src/internal/device-session/model/DevicePinger.test.d.ts.map +1 -0
- package/lib/types/src/internal/device-session/model/DeviceSession.d.ts +19 -11
- package/lib/types/src/internal/device-session/model/DeviceSession.d.ts.map +1 -1
- package/lib/types/src/internal/device-session/model/DeviceSession.stub.d.ts +2 -2
- package/lib/types/src/internal/device-session/model/DeviceSession.stub.d.ts.map +1 -1
- package/lib/types/src/internal/device-session/model/DeviceSessionEventDispatcher.d.ts +35 -0
- package/lib/types/src/internal/device-session/model/DeviceSessionEventDispatcher.d.ts.map +1 -0
- package/lib/types/src/internal/device-session/model/DeviceSessionEventDispatcher.test.d.ts +2 -0
- package/lib/types/src/internal/device-session/model/DeviceSessionEventDispatcher.test.d.ts.map +1 -0
- package/lib/types/src/internal/device-session/model/DeviceSessionRefresher.d.ts +17 -79
- package/lib/types/src/internal/device-session/model/DeviceSessionRefresher.d.ts.map +1 -1
- package/lib/types/src/internal/device-session/model/DeviceSessionStateHandler.d.ts +20 -0
- package/lib/types/src/internal/device-session/model/DeviceSessionStateHandler.d.ts.map +1 -0
- package/lib/types/src/internal/device-session/model/DeviceSessionStateHandler.test.d.ts +2 -0
- package/lib/types/src/internal/device-session/model/DeviceSessionStateHandler.test.d.ts.map +1 -0
- package/lib/types/src/internal/device-session/service/MutexService.d.ts +7 -0
- package/lib/types/src/internal/device-session/service/MutexService.d.ts.map +1 -0
- package/lib/types/src/internal/device-session/service/MutexService.test.d.ts +2 -0
- package/lib/types/src/internal/device-session/service/MutexService.test.d.ts.map +1 -0
- package/lib/types/src/internal/device-session/service/RefresherService.d.ts +7 -2
- package/lib/types/src/internal/device-session/service/RefresherService.d.ts.map +1 -1
- package/lib/types/src/internal/device-session/utils/deviceSessionUtils.d.ts +3 -0
- package/lib/types/src/internal/device-session/utils/deviceSessionUtils.d.ts.map +1 -0
- package/lib/types/src/internal/discovery/use-case/ConnectUseCase.d.ts +8 -1
- package/lib/types/src/internal/discovery/use-case/ConnectUseCase.d.ts.map +1 -1
- package/lib/types/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.d.ts +1 -1
- package/lib/types/src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.d.ts.map +1 -1
- package/lib/types/src/internal/secure-channel/model/Params.d.ts +3 -5
- package/lib/types/src/internal/secure-channel/model/Params.d.ts.map +1 -1
- package/lib/types/src/internal/secure-channel/service/DefaultSecureChannelService.d.ts +6 -6
- package/lib/types/src/internal/secure-channel/service/DefaultSecureChannelService.d.ts.map +1 -1
- package/lib/types/src/internal/secure-channel/service/SecureChannelService.d.ts +39 -5
- package/lib/types/src/internal/secure-channel/service/SecureChannelService.d.ts.map +1 -1
- package/lib/types/src/internal/send/use-case/SendApduUseCase.d.ts +5 -1
- package/lib/types/src/internal/send/use-case/SendApduUseCase.d.ts.map +1 -1
- package/lib/types/tsconfig.prod.tsbuildinfo +1 -1
- package/package.json +1 -1
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../../src/internal/device-session/service/RefresherService.ts"],
|
4
|
-
"sourcesContent": ["import { v4 as uuidv4 } from \"uuid\";\n\nimport { type
|
5
|
-
"mappings": "AAAA,OAAS,MAAMA,MAAc,
|
6
|
-
"names": ["uuidv4", "RefresherService", "_refresher", "id", "uniqueId", "hasBeenReenabled", "blockerId", "prevBlockersCount"]
|
4
|
+
"sourcesContent": ["import { v4 as uuidv4 } from \"uuid\";\n\nimport { type LoggerPublisherService } from \"@api/types\";\n\nexport interface RefresherController {\n start(): void;\n stop(): void;\n}\n\nexport class RefresherService {\n private readonly _refresherBlockers = new Set<string>();\n private readonly _logger: LoggerPublisherService;\n\n constructor(\n loggerModuleFactory: (tag: string) => LoggerPublisherService,\n private readonly _refresher: RefresherController,\n ) {\n this._logger = loggerModuleFactory(\"refresher-service\");\n }\n\n public disableRefresher(id: string): () => void {\n const uniqueId = `${id}-${uuidv4()}`;\n this.addRefresherBlocker(uniqueId);\n\n this._logger.debug(\"Refresher disabled\", {\n data: {\n blockerId: uniqueId,\n blockers: Array.from(this._refresherBlockers),\n },\n });\n\n let hasBeenReenabled = false;\n\n return () => {\n if (hasBeenReenabled) return;\n hasBeenReenabled = true;\n this.removeRefresherBlocker(uniqueId);\n\n this._logger.debug(\"Refresher re-enabled\", {\n data: {\n blockerId: uniqueId,\n blockers: Array.from(this._refresherBlockers),\n },\n });\n };\n }\n\n private addRefresherBlocker(blockerId: string): void {\n const prevBlockersCount = this._refresherBlockers.size;\n this._refresherBlockers.add(blockerId);\n\n if (prevBlockersCount === 0) {\n this._refresher.stop();\n }\n }\n\n private removeRefresherBlocker(blockerId: string): void {\n const prevBlockersCount = this._refresherBlockers.size;\n this._refresherBlockers.delete(blockerId);\n\n if (prevBlockersCount > 0 && this._refresherBlockers.size === 0) {\n this._refresher.start();\n }\n }\n}\n"],
|
5
|
+
"mappings": "AAAA,OAAS,MAAMA,MAAc,OAStB,MAAMC,CAAiB,CAI5B,YACEC,EACiBC,EACjB,CADiB,gBAAAA,EAEjB,KAAK,QAAUD,EAAoB,mBAAmB,CACxD,CARiB,mBAAqB,IAAI,IACzB,QASV,iBAAiBE,EAAwB,CAC9C,MAAMC,EAAW,GAAGD,CAAE,IAAIJ,EAAO,CAAC,GAClC,KAAK,oBAAoBK,CAAQ,EAEjC,KAAK,QAAQ,MAAM,qBAAsB,CACvC,KAAM,CACJ,UAAWA,EACX,SAAU,MAAM,KAAK,KAAK,kBAAkB,CAC9C,CACF,CAAC,EAED,IAAIC,EAAmB,GAEvB,MAAO,IAAM,CACPA,IACJA,EAAmB,GACnB,KAAK,uBAAuBD,CAAQ,EAEpC,KAAK,QAAQ,MAAM,uBAAwB,CACzC,KAAM,CACJ,UAAWA,EACX,SAAU,MAAM,KAAK,KAAK,kBAAkB,CAC9C,CACF,CAAC,EACH,CACF,CAEQ,oBAAoBE,EAAyB,CACnD,MAAMC,EAAoB,KAAK,mBAAmB,KAClD,KAAK,mBAAmB,IAAID,CAAS,EAEjCC,IAAsB,GACxB,KAAK,WAAW,KAAK,CAEzB,CAEQ,uBAAuBD,EAAyB,CACtD,MAAMC,EAAoB,KAAK,mBAAmB,KAClD,KAAK,mBAAmB,OAAOD,CAAS,EAEpCC,EAAoB,GAAK,KAAK,mBAAmB,OAAS,GAC5D,KAAK,WAAW,MAAM,CAE1B,CACF",
|
6
|
+
"names": ["uuidv4", "RefresherService", "loggerModuleFactory", "_refresher", "id", "uniqueId", "hasBeenReenabled", "blockerId", "prevBlockersCount"]
|
7
7
|
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{RefresherService as s}from"./RefresherService";let e;describe("RefresherService",()=>{beforeEach(()=>{e={start:vi.fn(),stop:vi.fn()}}),it("should be created",()=>{const r=new s(e);expect(r).toBeDefined()}),describe("with only 1 blocker",()=>{it("should disable the refresher",()=>{new s(e).disableRefresher("test"),expect(e.stop).toHaveBeenCalled()}),it("should reenable the refresher",()=>{new s(e).disableRefresher("test")(),expect(e.stop).toHaveBeenCalled(),expect(e.start).toHaveBeenCalled()})}),describe("with 2+ blockers",()=>{it("should not disable the refresher a second time",()=>{const r=new s(e);r.disableRefresher("test"),r.disableRefresher("test-2"),expect(e.stop).toHaveBeenCalledTimes(1)}),it("should reenable the refresher when the last blocker is removed",()=>{const r=new s(e),
|
1
|
+
import{RefresherService as s}from"./RefresherService";let e;describe("RefresherService",()=>{let o;const t=vi.fn(()=>o);beforeEach(()=>{e={start:vi.fn(),stop:vi.fn()},o={info:vi.fn(),warn:vi.fn(),error:vi.fn(),debug:vi.fn(),subscribers:[]}}),it("should be created",()=>{const r=new s(t,e);expect(r).toBeDefined()}),describe("with only 1 blocker",()=>{it("should disable the refresher",()=>{new s(t,e).disableRefresher("test"),expect(e.stop).toHaveBeenCalled()}),it("should reenable the refresher",()=>{new s(t,e).disableRefresher("test")(),expect(e.stop).toHaveBeenCalled(),expect(e.start).toHaveBeenCalled()})}),describe("with 2+ blockers",()=>{it("should not disable the refresher a second time",()=>{const r=new s(t,e);r.disableRefresher("test"),r.disableRefresher("test-2"),expect(e.stop).toHaveBeenCalledTimes(1)}),it("should reenable the refresher when the last blocker is removed",()=>{const r=new s(t,e),i=r.disableRefresher("test"),l=r.disableRefresher("test-2");expect(e.stop).toHaveBeenCalledTimes(1),i(),expect(e.start).not.toHaveBeenCalled(),l(),expect(e.start).toHaveBeenCalled()})})});
|
2
2
|
//# sourceMappingURL=RefresherService.test.js.map
|
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../../src/internal/device-session/service/RefresherService.test.ts"],
|
4
|
-
"sourcesContent": ["import { type
|
5
|
-
"mappings": "AAEA,
|
6
|
-
"names": ["RefresherService", "refresher", "refresherService", "reenableRefresher1", "reenableRefresher2"]
|
4
|
+
"sourcesContent": ["import { type LoggerPublisherService } from \"@api/types\";\n\nimport { type RefresherController, RefresherService } from \"./RefresherService\";\n\nlet refresher: RefresherController;\ndescribe(\"RefresherService\", () => {\n let mockLogger: LoggerPublisherService & {\n debug: ReturnType<typeof vi.fn>;\n };\n const mockedLoggerModuleFactory = vi.fn(() => mockLogger);\n\n beforeEach(() => {\n refresher = {\n start: vi.fn(),\n stop: vi.fn(),\n };\n mockLogger = {\n info: vi.fn(),\n warn: vi.fn(),\n error: vi.fn(),\n debug: vi.fn(),\n subscribers: [],\n };\n });\n\n it(\"should be created\", () => {\n const refresherService = new RefresherService(\n mockedLoggerModuleFactory,\n refresher,\n );\n expect(refresherService).toBeDefined();\n });\n\n describe(\"with only 1 blocker\", () => {\n it(\"should disable the refresher\", () => {\n const refresherService = new RefresherService(\n mockedLoggerModuleFactory,\n refresher,\n );\n refresherService.disableRefresher(\"test\");\n expect(refresher.stop).toHaveBeenCalled();\n });\n\n it(\"should reenable the refresher\", () => {\n const refresherService = new RefresherService(\n mockedLoggerModuleFactory,\n refresher,\n );\n const reenableRefresher = refresherService.disableRefresher(\"test\");\n reenableRefresher();\n expect(refresher.stop).toHaveBeenCalled();\n expect(refresher.start).toHaveBeenCalled();\n });\n });\n\n describe(\"with 2+ blockers\", () => {\n it(\"should not disable the refresher a second time\", () => {\n const refresherService = new RefresherService(\n mockedLoggerModuleFactory,\n refresher,\n );\n refresherService.disableRefresher(\"test\");\n refresherService.disableRefresher(\"test-2\");\n expect(refresher.stop).toHaveBeenCalledTimes(1);\n });\n\n it(\"should reenable the refresher when the last blocker is removed\", () => {\n const refresherService = new RefresherService(\n mockedLoggerModuleFactory,\n refresher,\n );\n const reenableRefresher1 = refresherService.disableRefresher(\"test\");\n const reenableRefresher2 = refresherService.disableRefresher(\"test-2\");\n expect(refresher.stop).toHaveBeenCalledTimes(1);\n reenableRefresher1();\n expect(refresher.start).not.toHaveBeenCalled();\n reenableRefresher2();\n expect(refresher.start).toHaveBeenCalled();\n });\n });\n});\n"],
|
5
|
+
"mappings": "AAEA,OAAmC,oBAAAA,MAAwB,qBAE3D,IAAIC,EACJ,SAAS,mBAAoB,IAAM,CACjC,IAAIC,EAGJ,MAAMC,EAA4B,GAAG,GAAG,IAAMD,CAAU,EAExD,WAAW,IAAM,CACfD,EAAY,CACV,MAAO,GAAG,GAAG,EACb,KAAM,GAAG,GAAG,CACd,EACAC,EAAa,CACX,KAAM,GAAG,GAAG,EACZ,KAAM,GAAG,GAAG,EACZ,MAAO,GAAG,GAAG,EACb,MAAO,GAAG,GAAG,EACb,YAAa,CAAC,CAChB,CACF,CAAC,EAED,GAAG,oBAAqB,IAAM,CAC5B,MAAME,EAAmB,IAAIJ,EAC3BG,EACAF,CACF,EACA,OAAOG,CAAgB,EAAE,YAAY,CACvC,CAAC,EAED,SAAS,sBAAuB,IAAM,CACpC,GAAG,+BAAgC,IAAM,CACd,IAAIJ,EAC3BG,EACAF,CACF,EACiB,iBAAiB,MAAM,EACxC,OAAOA,EAAU,IAAI,EAAE,iBAAiB,CAC1C,CAAC,EAED,GAAG,gCAAiC,IAAM,CACf,IAAID,EAC3BG,EACAF,CACF,EAC2C,iBAAiB,MAAM,EAChD,EAClB,OAAOA,EAAU,IAAI,EAAE,iBAAiB,EACxC,OAAOA,EAAU,KAAK,EAAE,iBAAiB,CAC3C,CAAC,CACH,CAAC,EAED,SAAS,mBAAoB,IAAM,CACjC,GAAG,iDAAkD,IAAM,CACzD,MAAMG,EAAmB,IAAIJ,EAC3BG,EACAF,CACF,EACAG,EAAiB,iBAAiB,MAAM,EACxCA,EAAiB,iBAAiB,QAAQ,EAC1C,OAAOH,EAAU,IAAI,EAAE,sBAAsB,CAAC,CAChD,CAAC,EAED,GAAG,iEAAkE,IAAM,CACzE,MAAMG,EAAmB,IAAIJ,EAC3BG,EACAF,CACF,EACMI,EAAqBD,EAAiB,iBAAiB,MAAM,EAC7DE,EAAqBF,EAAiB,iBAAiB,QAAQ,EACrE,OAAOH,EAAU,IAAI,EAAE,sBAAsB,CAAC,EAC9CI,EAAmB,EACnB,OAAOJ,EAAU,KAAK,EAAE,IAAI,iBAAiB,EAC7CK,EAAmB,EACnB,OAAOL,EAAU,KAAK,EAAE,iBAAiB,CAC3C,CAAC,CACH,CAAC,CACH,CAAC",
|
6
|
+
"names": ["RefresherService", "refresher", "mockLogger", "mockedLoggerModuleFactory", "refresherService", "reenableRefresher1", "reenableRefresher2"]
|
7
7
|
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{
|
1
|
+
import{DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS as S}from"../../device-session/data/DeviceSessionRefresherConst";import{deviceSessionStubBuilder as m}from"../../device-session/model/DeviceSession.stub";import{DefaultDeviceSessionService as p}from"../../device-session/service/DefaultDeviceSessionService";import{CloseSessionsUseCase as l}from"../../device-session/use-case/CloseSessionsUseCase";import{DefaultLoggerPublisherService as u}from"../../logger-publisher/service/DefaultLoggerPublisherService";import{AxiosManagerApiDataSource as f}from"../../manager-api/data/AxiosManagerApiDataSource";import{DefaultManagerApiService as v}from"../../manager-api/service/DefaultManagerApiService";import{DefaultSecureChannelDataSource as D}from"../../secure-channel/data/DefaultSecureChannelDataSource";import{DefaultSecureChannelService as g}from"../../secure-channel/service/DefaultSecureChannelService";import{DefaultTransportService as C}from"../../transport/service/__mocks__/DefaultTransportService";let o,i,t,a,n,r,c;describe("CloseSessionsUseCase",()=>{beforeEach(()=>{o=new u([],"close-sessions-use-case-test"),i=new f({}),t=new v(i),a=new D({}),n=new g(a),r=new p(()=>o),c=new C}),it("should be able to close every session",()=>{[...Array(10).keys()].map(e=>{const s=m({id:e.toString()},()=>o,t,n,S);return vi.spyOn(s,"close"),s}).forEach(e=>r.addDeviceSession(e)),new l(r,c).execute();for(const e of r.getDeviceSessions())expect(e.close).toHaveBeenCalled()})});
|
2
2
|
//# sourceMappingURL=CloseSessionsUseCase.test.js.map
|
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../../src/internal/device-session/use-case/CloseSessionsUseCase.test.ts"],
|
4
|
-
"sourcesContent": ["import { type DmkConfig } from \"@api/DmkConfig\";\nimport { type LoggerPublisherService } from \"@api/logger-publisher/service/LoggerPublisherService\";\nimport { deviceSessionStubBuilder } from \"@internal/device-session/model/DeviceSession.stub\";\nimport { DefaultDeviceSessionService } from \"@internal/device-session/service/DefaultDeviceSessionService\";\nimport { type DeviceSessionService } from \"@internal/device-session/service/DeviceSessionService\";\nimport { CloseSessionsUseCase } from \"@internal/device-session/use-case/CloseSessionsUseCase\";\nimport { DefaultLoggerPublisherService } from \"@internal/logger-publisher/service/DefaultLoggerPublisherService\";\nimport { AxiosManagerApiDataSource } from \"@internal/manager-api/data/AxiosManagerApiDataSource\";\nimport { type ManagerApiDataSource } from \"@internal/manager-api/data/ManagerApiDataSource\";\nimport { DefaultManagerApiService } from \"@internal/manager-api/service/DefaultManagerApiService\";\nimport { type ManagerApiService } from \"@internal/manager-api/service/ManagerApiService\";\nimport { DefaultSecureChannelDataSource } from \"@internal/secure-channel/data/DefaultSecureChannelDataSource\";\nimport { type SecureChannelDataSource } from \"@internal/secure-channel/data/SecureChannelDataSource\";\nimport { DefaultSecureChannelService } from \"@internal/secure-channel/service/DefaultSecureChannelService\";\nimport { type SecureChannelService } from \"@internal/secure-channel/service/SecureChannelService\";\nimport { DefaultTransportService } from \"@internal/transport/service/__mocks__/DefaultTransportService\";\n\nlet logger: LoggerPublisherService;\nlet managerApiDataSource: ManagerApiDataSource;\nlet managerApi: ManagerApiService;\nlet secureChannelDataSource: SecureChannelDataSource;\nlet secureChannel: SecureChannelService;\nlet sessionService: DeviceSessionService;\nlet transportService: DefaultTransportService;\n\n// @TODO Fix this test with vi.spyOn session close [SNAPSHOT PURPOSE]\ndescribe(\"CloseSessionsUseCase\", () => {\n beforeEach(() => {\n logger = new DefaultLoggerPublisherService(\n [],\n \"close-sessions-use-case-test\",\n );\n managerApiDataSource = new AxiosManagerApiDataSource({} as DmkConfig);\n managerApi = new DefaultManagerApiService(managerApiDataSource);\n secureChannelDataSource = new DefaultSecureChannelDataSource(\n {} as DmkConfig,\n );\n secureChannel = new DefaultSecureChannelService(secureChannelDataSource);\n sessionService = new DefaultDeviceSessionService(() => logger);\n transportService = new DefaultTransportService();\n });\n\n it(\"should be able to close every session\", () => {\n //given\n const sessions = [...Array(10).keys()].map((id) => {\n const session = deviceSessionStubBuilder(\n { id: id.toString() },\n () => logger,\n managerApi,\n secureChannel,\n );\n vi.spyOn(session, \"close\");\n return session;\n });\n sessions.forEach((session) => sessionService.addDeviceSession(session));\n const useCase = new CloseSessionsUseCase(sessionService, transportService);\n //when\n useCase.execute();\n //then\n for (const session of sessionService.getDeviceSessions()) {\n expect(session.close).toHaveBeenCalled();\n }\n });\n});\n"],
|
5
|
-
"mappings": "AAEA,OAAS,
|
6
|
-
"names": ["deviceSessionStubBuilder", "DefaultDeviceSessionService", "CloseSessionsUseCase", "DefaultLoggerPublisherService", "AxiosManagerApiDataSource", "DefaultManagerApiService", "DefaultSecureChannelDataSource", "DefaultSecureChannelService", "DefaultTransportService", "logger", "managerApiDataSource", "managerApi", "secureChannelDataSource", "secureChannel", "sessionService", "transportService", "id", "session"]
|
4
|
+
"sourcesContent": ["import { type DmkConfig } from \"@api/DmkConfig\";\nimport { type LoggerPublisherService } from \"@api/logger-publisher/service/LoggerPublisherService\";\nimport { DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS } from \"@internal/device-session/data/DeviceSessionRefresherConst\";\nimport { deviceSessionStubBuilder } from \"@internal/device-session/model/DeviceSession.stub\";\nimport { DefaultDeviceSessionService } from \"@internal/device-session/service/DefaultDeviceSessionService\";\nimport { type DeviceSessionService } from \"@internal/device-session/service/DeviceSessionService\";\nimport { CloseSessionsUseCase } from \"@internal/device-session/use-case/CloseSessionsUseCase\";\nimport { DefaultLoggerPublisherService } from \"@internal/logger-publisher/service/DefaultLoggerPublisherService\";\nimport { AxiosManagerApiDataSource } from \"@internal/manager-api/data/AxiosManagerApiDataSource\";\nimport { type ManagerApiDataSource } from \"@internal/manager-api/data/ManagerApiDataSource\";\nimport { DefaultManagerApiService } from \"@internal/manager-api/service/DefaultManagerApiService\";\nimport { type ManagerApiService } from \"@internal/manager-api/service/ManagerApiService\";\nimport { DefaultSecureChannelDataSource } from \"@internal/secure-channel/data/DefaultSecureChannelDataSource\";\nimport { type SecureChannelDataSource } from \"@internal/secure-channel/data/SecureChannelDataSource\";\nimport { DefaultSecureChannelService } from \"@internal/secure-channel/service/DefaultSecureChannelService\";\nimport { type SecureChannelService } from \"@internal/secure-channel/service/SecureChannelService\";\nimport { DefaultTransportService } from \"@internal/transport/service/__mocks__/DefaultTransportService\";\n\nlet logger: LoggerPublisherService;\nlet managerApiDataSource: ManagerApiDataSource;\nlet managerApi: ManagerApiService;\nlet secureChannelDataSource: SecureChannelDataSource;\nlet secureChannel: SecureChannelService;\nlet sessionService: DeviceSessionService;\nlet transportService: DefaultTransportService;\n\n// @TODO Fix this test with vi.spyOn session close [SNAPSHOT PURPOSE]\ndescribe(\"CloseSessionsUseCase\", () => {\n beforeEach(() => {\n logger = new DefaultLoggerPublisherService(\n [],\n \"close-sessions-use-case-test\",\n );\n managerApiDataSource = new AxiosManagerApiDataSource({} as DmkConfig);\n managerApi = new DefaultManagerApiService(managerApiDataSource);\n secureChannelDataSource = new DefaultSecureChannelDataSource(\n {} as DmkConfig,\n );\n secureChannel = new DefaultSecureChannelService(secureChannelDataSource);\n sessionService = new DefaultDeviceSessionService(() => logger);\n transportService = new DefaultTransportService();\n });\n\n it(\"should be able to close every session\", () => {\n //given\n const sessions = [...Array(10).keys()].map((id) => {\n const session = deviceSessionStubBuilder(\n { id: id.toString() },\n () => logger,\n managerApi,\n secureChannel,\n DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS,\n );\n vi.spyOn(session, \"close\");\n return session;\n });\n sessions.forEach((session) => sessionService.addDeviceSession(session));\n const useCase = new CloseSessionsUseCase(sessionService, transportService);\n //when\n useCase.execute();\n //then\n for (const session of sessionService.getDeviceSessions()) {\n expect(session.close).toHaveBeenCalled();\n }\n });\n});\n"],
|
5
|
+
"mappings": "AAEA,OAAS,4CAAAA,MAAgD,4DACzD,OAAS,4BAAAC,MAAgC,oDACzC,OAAS,+BAAAC,MAAmC,+DAE5C,OAAS,wBAAAC,MAA4B,yDACrC,OAAS,iCAAAC,MAAqC,mEAC9C,OAAS,6BAAAC,MAAiC,uDAE1C,OAAS,4BAAAC,MAAgC,yDAEzC,OAAS,kCAAAC,MAAsC,+DAE/C,OAAS,+BAAAC,MAAmC,+DAE5C,OAAS,2BAAAC,MAA+B,gEAExC,IAAIC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAGJ,SAAS,uBAAwB,IAAM,CACrC,WAAW,IAAM,CACfN,EAAS,IAAIN,EACX,CAAC,EACD,8BACF,EACAO,EAAuB,IAAIN,EAA0B,CAAC,CAAc,EACpEO,EAAa,IAAIN,EAAyBK,CAAoB,EAC9DE,EAA0B,IAAIN,EAC5B,CAAC,CACH,EACAO,EAAgB,IAAIN,EAA4BK,CAAuB,EACvEE,EAAiB,IAAIb,EAA4B,IAAMQ,CAAM,EAC7DM,EAAmB,IAAIP,CACzB,CAAC,EAED,GAAG,wCAAyC,IAAM,CAE/B,CAAC,GAAG,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,IAAKQ,GAAO,CACjD,MAAMC,EAAUjB,EACd,CAAE,GAAIgB,EAAG,SAAS,CAAE,EACpB,IAAMP,EACNE,EACAE,EACAd,CACF,EACA,UAAG,MAAMkB,EAAS,OAAO,EAClBA,CACT,CAAC,EACQ,QAASA,GAAYH,EAAe,iBAAiBG,CAAO,CAAC,EACtD,IAAIf,EAAqBY,EAAgBC,CAAgB,EAEjE,QAAQ,EAEhB,UAAWE,KAAWH,EAAe,kBAAkB,EACrD,OAAOG,EAAQ,KAAK,EAAE,iBAAiB,CAE3C,CAAC,CACH,CAAC",
|
6
|
+
"names": ["DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS", "deviceSessionStubBuilder", "DefaultDeviceSessionService", "CloseSessionsUseCase", "DefaultLoggerPublisherService", "AxiosManagerApiDataSource", "DefaultManagerApiService", "DefaultSecureChannelDataSource", "DefaultSecureChannelService", "DefaultTransportService", "logger", "managerApiDataSource", "managerApi", "secureChannelDataSource", "secureChannel", "sessionService", "transportService", "id", "session"]
|
7
7
|
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{
|
1
|
+
import{DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS as p}from"../../device-session/data/DeviceSessionRefresherConst";import{deviceSessionStubBuilder as f}from"../../device-session/model/DeviceSession.stub";import{DeviceSessionNotFound as l}from"../../device-session/model/Errors";import{DefaultDeviceSessionService as v}from"../../device-session/service/DefaultDeviceSessionService";import{DefaultLoggerPublisherService as D}from"../../logger-publisher/service/DefaultLoggerPublisherService";import{AxiosManagerApiDataSource as d}from"../../manager-api/data/AxiosManagerApiDataSource";import{DefaultManagerApiService as g}from"../../manager-api/service/DefaultManagerApiService";import{DefaultSecureChannelDataSource as h}from"../../secure-channel/data/DefaultSecureChannelDataSource";import{DefaultSecureChannelService as C}from"../../secure-channel/service/DefaultSecureChannelService";import{GetDeviceSessionStateUseCase as a}from"./GetDeviceSessionStateUseCase";vi.mock("@internal/manager-api/data/AxiosManagerApiDataSource");let r,o,n,c,S,m;const t="fakeSessionId";describe("GetDeviceSessionStateUseCase",()=>{beforeEach(()=>{r=new D([],"get-connected-device-use-case-test"),n=new d({}),c=new g(n),S=new h({}),m=new C(S),o=new v(()=>r)}),it("should retrieve deviceSession device state",()=>{const e=f({id:t},()=>r,c,m,p);o.addDeviceSession(e);const i=new a(o,()=>r).execute({sessionId:t}),u=e.state;e.close(),expect(i).toStrictEqual(u)}),it("should throw error when deviceSession is not found",()=>new Promise(e=>{const s=new a(o,()=>r);try{s.execute({sessionId:t}).subscribe()}catch(i){expect(i).toBeInstanceOf(l),e()}}))});
|
2
2
|
//# sourceMappingURL=GetDeviceSessionStateUseCase.test.js.map
|
package/lib/esm/src/internal/device-session/use-case/GetDeviceSessionStateUseCase.test.js.map
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../../src/internal/device-session/use-case/GetDeviceSessionStateUseCase.test.ts"],
|
4
|
-
"sourcesContent": ["import { type DmkConfig } from \"@api/DmkConfig\";\nimport { type LoggerPublisherService } from \"@api/logger-publisher/service/LoggerPublisherService\";\nimport { deviceSessionStubBuilder } from \"@internal/device-session/model/DeviceSession.stub\";\nimport { DeviceSessionNotFound } from \"@internal/device-session/model/Errors\";\nimport { DefaultDeviceSessionService } from \"@internal/device-session/service/DefaultDeviceSessionService\";\nimport { type DeviceSessionService } from \"@internal/device-session/service/DeviceSessionService\";\nimport { DefaultLoggerPublisherService } from \"@internal/logger-publisher/service/DefaultLoggerPublisherService\";\nimport { AxiosManagerApiDataSource } from \"@internal/manager-api/data/AxiosManagerApiDataSource\";\nimport { type ManagerApiDataSource } from \"@internal/manager-api/data/ManagerApiDataSource\";\nimport { DefaultManagerApiService } from \"@internal/manager-api/service/DefaultManagerApiService\";\nimport { type ManagerApiService } from \"@internal/manager-api/service/ManagerApiService\";\nimport { DefaultSecureChannelDataSource } from \"@internal/secure-channel/data/DefaultSecureChannelDataSource\";\nimport { type SecureChannelDataSource } from \"@internal/secure-channel/data/SecureChannelDataSource\";\nimport { DefaultSecureChannelService } from \"@internal/secure-channel/service/DefaultSecureChannelService\";\nimport { type SecureChannelService } from \"@internal/secure-channel/service/SecureChannelService\";\n\nimport { GetDeviceSessionStateUseCase } from \"./GetDeviceSessionStateUseCase\";\n\nvi.mock(\"@internal/manager-api/data/AxiosManagerApiDataSource\");\n\nlet logger: LoggerPublisherService;\nlet sessionService: DeviceSessionService;\nlet managerApiDataSource: ManagerApiDataSource;\nlet managerApi: ManagerApiService;\nlet secureChannelDataSource: SecureChannelDataSource;\nlet secureChannel: SecureChannelService;\n\nconst fakeSessionId = \"fakeSessionId\";\n\ndescribe(\"GetDeviceSessionStateUseCase\", () => {\n beforeEach(() => {\n logger = new DefaultLoggerPublisherService(\n [],\n \"get-connected-device-use-case-test\",\n );\n managerApiDataSource = new AxiosManagerApiDataSource({} as DmkConfig);\n managerApi = new DefaultManagerApiService(managerApiDataSource);\n secureChannelDataSource = new DefaultSecureChannelDataSource(\n {} as DmkConfig,\n );\n secureChannel = new DefaultSecureChannelService(secureChannelDataSource);\n sessionService = new DefaultDeviceSessionService(() => logger);\n });\n\n // TODO: This test does not close a subscription\n // \u00AF\\_(\u30C4)_/\u00AF I cannot find which one unfortunatly\n it(\"should retrieve deviceSession device state\", () => {\n // given\n const deviceSession = deviceSessionStubBuilder(\n { id: fakeSessionId },\n () => logger,\n managerApi,\n secureChannel,\n );\n sessionService.addDeviceSession(deviceSession);\n const useCase = new GetDeviceSessionStateUseCase(\n sessionService,\n () => logger,\n );\n\n const res = useCase.execute({ sessionId: fakeSessionId });\n const expected = deviceSession.state;\n\n deviceSession.close();\n\n // then\n expect(res).toStrictEqual(expected);\n });\n\n it(\"should throw error when deviceSession is not found\", () =>\n new Promise<void>((resolve) => {\n // given\n const useCase = new GetDeviceSessionStateUseCase(\n sessionService,\n () => logger,\n );\n\n // when\n try {\n useCase\n .execute({\n sessionId: fakeSessionId,\n })\n .subscribe();\n } catch (error) {\n // then\n expect(error).toBeInstanceOf(DeviceSessionNotFound);\n resolve();\n }\n }));\n});\n"],
|
5
|
-
"mappings": "AAEA,OAAS,
|
6
|
-
"names": ["deviceSessionStubBuilder", "DeviceSessionNotFound", "DefaultDeviceSessionService", "DefaultLoggerPublisherService", "AxiosManagerApiDataSource", "DefaultManagerApiService", "DefaultSecureChannelDataSource", "DefaultSecureChannelService", "GetDeviceSessionStateUseCase", "logger", "sessionService", "managerApiDataSource", "managerApi", "secureChannelDataSource", "secureChannel", "fakeSessionId", "deviceSession", "res", "expected", "resolve", "useCase", "error"]
|
4
|
+
"sourcesContent": ["import { type DmkConfig } from \"@api/DmkConfig\";\nimport { type LoggerPublisherService } from \"@api/logger-publisher/service/LoggerPublisherService\";\nimport { DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS } from \"@internal/device-session/data/DeviceSessionRefresherConst\";\nimport { deviceSessionStubBuilder } from \"@internal/device-session/model/DeviceSession.stub\";\nimport { DeviceSessionNotFound } from \"@internal/device-session/model/Errors\";\nimport { DefaultDeviceSessionService } from \"@internal/device-session/service/DefaultDeviceSessionService\";\nimport { type DeviceSessionService } from \"@internal/device-session/service/DeviceSessionService\";\nimport { DefaultLoggerPublisherService } from \"@internal/logger-publisher/service/DefaultLoggerPublisherService\";\nimport { AxiosManagerApiDataSource } from \"@internal/manager-api/data/AxiosManagerApiDataSource\";\nimport { type ManagerApiDataSource } from \"@internal/manager-api/data/ManagerApiDataSource\";\nimport { DefaultManagerApiService } from \"@internal/manager-api/service/DefaultManagerApiService\";\nimport { type ManagerApiService } from \"@internal/manager-api/service/ManagerApiService\";\nimport { DefaultSecureChannelDataSource } from \"@internal/secure-channel/data/DefaultSecureChannelDataSource\";\nimport { type SecureChannelDataSource } from \"@internal/secure-channel/data/SecureChannelDataSource\";\nimport { DefaultSecureChannelService } from \"@internal/secure-channel/service/DefaultSecureChannelService\";\nimport { type SecureChannelService } from \"@internal/secure-channel/service/SecureChannelService\";\n\nimport { GetDeviceSessionStateUseCase } from \"./GetDeviceSessionStateUseCase\";\n\nvi.mock(\"@internal/manager-api/data/AxiosManagerApiDataSource\");\n\nlet logger: LoggerPublisherService;\nlet sessionService: DeviceSessionService;\nlet managerApiDataSource: ManagerApiDataSource;\nlet managerApi: ManagerApiService;\nlet secureChannelDataSource: SecureChannelDataSource;\nlet secureChannel: SecureChannelService;\n\nconst fakeSessionId = \"fakeSessionId\";\n\ndescribe(\"GetDeviceSessionStateUseCase\", () => {\n beforeEach(() => {\n logger = new DefaultLoggerPublisherService(\n [],\n \"get-connected-device-use-case-test\",\n );\n managerApiDataSource = new AxiosManagerApiDataSource({} as DmkConfig);\n managerApi = new DefaultManagerApiService(managerApiDataSource);\n secureChannelDataSource = new DefaultSecureChannelDataSource(\n {} as DmkConfig,\n );\n secureChannel = new DefaultSecureChannelService(secureChannelDataSource);\n sessionService = new DefaultDeviceSessionService(() => logger);\n });\n\n // TODO: This test does not close a subscription\n // \u00AF\\_(\u30C4)_/\u00AF I cannot find which one unfortunatly\n it(\"should retrieve deviceSession device state\", () => {\n // given\n const deviceSession = deviceSessionStubBuilder(\n { id: fakeSessionId },\n () => logger,\n managerApi,\n secureChannel,\n DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS,\n );\n sessionService.addDeviceSession(deviceSession);\n const useCase = new GetDeviceSessionStateUseCase(\n sessionService,\n () => logger,\n );\n\n const res = useCase.execute({ sessionId: fakeSessionId });\n const expected = deviceSession.state;\n\n deviceSession.close();\n\n // then\n expect(res).toStrictEqual(expected);\n });\n\n it(\"should throw error when deviceSession is not found\", () =>\n new Promise<void>((resolve) => {\n // given\n const useCase = new GetDeviceSessionStateUseCase(\n sessionService,\n () => logger,\n );\n\n // when\n try {\n useCase\n .execute({\n sessionId: fakeSessionId,\n })\n .subscribe();\n } catch (error) {\n // then\n expect(error).toBeInstanceOf(DeviceSessionNotFound);\n resolve();\n }\n }));\n});\n"],
|
5
|
+
"mappings": "AAEA,OAAS,4CAAAA,MAAgD,4DACzD,OAAS,4BAAAC,MAAgC,oDACzC,OAAS,yBAAAC,MAA6B,wCACtC,OAAS,+BAAAC,MAAmC,+DAE5C,OAAS,iCAAAC,MAAqC,mEAC9C,OAAS,6BAAAC,MAAiC,uDAE1C,OAAS,4BAAAC,MAAgC,yDAEzC,OAAS,kCAAAC,MAAsC,+DAE/C,OAAS,+BAAAC,MAAmC,+DAG5C,OAAS,gCAAAC,MAAoC,iCAE7C,GAAG,KAAK,sDAAsD,EAE9D,IAAIC,EACAC,EACAC,EACAC,EACAC,EACAC,EAEJ,MAAMC,EAAgB,gBAEtB,SAAS,+BAAgC,IAAM,CAC7C,WAAW,IAAM,CACfN,EAAS,IAAIN,EACX,CAAC,EACD,oCACF,EACAQ,EAAuB,IAAIP,EAA0B,CAAC,CAAc,EACpEQ,EAAa,IAAIP,EAAyBM,CAAoB,EAC9DE,EAA0B,IAAIP,EAC5B,CAAC,CACH,EACAQ,EAAgB,IAAIP,EAA4BM,CAAuB,EACvEH,EAAiB,IAAIR,EAA4B,IAAMO,CAAM,CAC/D,CAAC,EAID,GAAG,6CAA8C,IAAM,CAErD,MAAMO,EAAgBhB,EACpB,CAAE,GAAIe,CAAc,EACpB,IAAMN,EACNG,EACAE,EACAf,CACF,EACAW,EAAe,iBAAiBM,CAAa,EAM7C,MAAMC,EALU,IAAIT,EAClBE,EACA,IAAMD,CACR,EAEoB,QAAQ,CAAE,UAAWM,CAAc,CAAC,EAClDG,EAAWF,EAAc,MAE/BA,EAAc,MAAM,EAGpB,OAAOC,CAAG,EAAE,cAAcC,CAAQ,CACpC,CAAC,EAED,GAAG,qDAAsD,IACvD,IAAI,QAAeC,GAAY,CAE7B,MAAMC,EAAU,IAAIZ,EAClBE,EACA,IAAMD,CACR,EAGA,GAAI,CACFW,EACG,QAAQ,CACP,UAAWL,CACb,CAAC,EACA,UAAU,CACf,OAASM,EAAO,CAEd,OAAOA,CAAK,EAAE,eAAepB,CAAqB,EAClDkB,EAAQ,CACV,CACF,CAAC,CAAC,CACN,CAAC",
|
6
|
+
"names": ["DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS", "deviceSessionStubBuilder", "DeviceSessionNotFound", "DefaultDeviceSessionService", "DefaultLoggerPublisherService", "AxiosManagerApiDataSource", "DefaultManagerApiService", "DefaultSecureChannelDataSource", "DefaultSecureChannelService", "GetDeviceSessionStateUseCase", "logger", "sessionService", "managerApiDataSource", "managerApi", "secureChannelDataSource", "secureChannel", "fakeSessionId", "deviceSession", "res", "expected", "resolve", "useCase", "error"]
|
7
7
|
}
|
@@ -0,0 +1,7 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../../../../src/internal/device-session/utils/deviceSessionUtils.ts"],
|
4
|
+
"sourcesContent": ["import { type GetAppAndVersionResponse } from \"@api/index\";\n\nexport const isGetAppAndVersionResponse = (\n response: unknown,\n): response is GetAppAndVersionResponse => {\n if (typeof response !== \"object\" || response === null) return false;\n const rec = response as Record<string, unknown>;\n return typeof rec[\"name\"] === \"string\" && typeof rec[\"version\"] === \"string\";\n};\n"],
|
5
|
+
"mappings": "AAEO,MAAMA,EACXC,GACyC,CACzC,GAAI,OAAOA,GAAa,UAAYA,IAAa,KAAM,MAAO,GAC9D,MAAMC,EAAMD,EACZ,OAAO,OAAOC,EAAI,MAAY,UAAY,OAAOA,EAAI,SAAe,QACtE",
|
6
|
+
"names": ["isGetAppAndVersionResponse", "response", "rec"]
|
7
|
+
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
var S=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var p=(
|
1
|
+
var S=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var p=(t,r,o,i)=>{for(var e=i>1?void 0:i?m(r,o):r,s=t.length-1,v;s>=0;s--)(v=t[s])&&(e=(i?v(r,o,e):v(e))||e);return i&&e&&S(r,o,e),e},n=(t,r)=>(o,i)=>r(o,i,t);import{inject as c,injectable as g}from"inversify";import{EitherAsync as h}from"purify-ts";import{TransportNotSupportedError as l}from"../../../api/transport/model/Errors";import{deviceSessionTypes as d}from"../../device-session/di/deviceSessionTypes";import{DeviceSession as D}from"../../device-session/model/DeviceSession";import{loggerTypes as f}from"../../logger-publisher/di/loggerTypes";import{managerApiTypes as y}from"../../manager-api/di/managerApiTypes";import{secureChannelTypes as u}from"../../secure-channel/di/secureChannelTypes";import{transportDiTypes as _}from"../../transport/di/transportDiTypes";let a=class{_transportService;_sessionService;_loggerFactory;_managerApi;_secureChannel;_logger;constructor(r,o,i,e,s){this._sessionService=o,this._transportService=r,this._loggerFactory=i,this._logger=i("ConnectUseCase"),this._managerApi=e,this._secureChannel=s}handleDeviceDisconnect(r){this._sessionService.getDeviceSessionByDeviceId(r).map(i=>{this._sessionService.removeDeviceSession(i.id)})}async execute({device:r,sessionRefresherOptions:o}){const i=this._transportService.getTransport(r.transport);return h.liftEither(i.toEither(new l(new Error("Unknown transport")))).chain(async e=>e.connect({deviceId:r.id,onDisconnect:s=>this.handleDeviceDisconnect(s)})).ifLeft(e=>{this._logger.error("Error connecting to device",{data:{deviceId:r.id,error:e}})}).map(async e=>{const s=new D({connectedDevice:e},this._loggerFactory,this._managerApi,this._secureChannel,o);return this._sessionService.addDeviceSession(s),await s.initialiseSession(),s.id}).caseOf({Left:e=>{throw e},Right:e=>e})}};a=p([g(),n(0,c(_.TransportService)),n(1,c(d.DeviceSessionService)),n(2,c(f.LoggerPublisherServiceFactory)),n(3,c(y.ManagerApiService)),n(4,c(u.SecureChannelService))],a);export{a as ConnectUseCase};
|
2
2
|
//# sourceMappingURL=ConnectUseCase.js.map
|
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../../src/internal/discovery/use-case/ConnectUseCase.ts"],
|
4
|
-
"sourcesContent": ["import { inject, injectable } from \"inversify\";\nimport { EitherAsync } from \"purify-ts\";\n\nimport { DeviceSessionId } from \"@api/device-session/types\";\nimport { LoggerPublisherService } from \"@api/logger-publisher/service/LoggerPublisherService\";\nimport { DiscoveredDevice } from \"@api/transport/model/DiscoveredDevice\";\nimport { TransportNotSupportedError } from \"@api/transport/model/Errors\";\nimport { DeviceId } from \"@api/types\";\nimport { deviceSessionTypes } from \"@internal/device-session/di/deviceSessionTypes\";\nimport {
|
5
|
-
"mappings": "iOAAA,OAAS,UAAAA,EAAQ,cAAAC,MAAkB,YACnC,OAAS,eAAAC,MAAmB,YAK5B,OAAS,8BAAAC,MAAkC,8BAE3C,OAAS,sBAAAC,MAA0B,iDACnC,
|
6
|
-
"names": ["inject", "injectable", "EitherAsync", "TransportNotSupportedError", "deviceSessionTypes", "DeviceSession", "loggerTypes", "managerApiTypes", "secureChannelTypes", "transportDiTypes", "ConnectUseCase", "transportService", "sessionService", "loggerFactory", "managerApi", "secureChannel", "deviceId", "deviceSession", "device", "transport", "EitherAsync", "TransportNotSupportedError", "t", "dId", "error", "connectedDevice", "DeviceSession", "s", "__decorateClass", "injectable", "__decorateParam", "inject", "transportDiTypes", "deviceSessionTypes", "loggerTypes", "managerApiTypes", "secureChannelTypes"]
|
4
|
+
"sourcesContent": ["import { inject, injectable } from \"inversify\";\nimport { EitherAsync } from \"purify-ts\";\n\nimport { DeviceSessionId } from \"@api/device-session/types\";\nimport { LoggerPublisherService } from \"@api/logger-publisher/service/LoggerPublisherService\";\nimport { DiscoveredDevice } from \"@api/transport/model/DiscoveredDevice\";\nimport { TransportNotSupportedError } from \"@api/transport/model/Errors\";\nimport { DeviceId } from \"@api/types\";\nimport { deviceSessionTypes } from \"@internal/device-session/di/deviceSessionTypes\";\nimport {\n DeviceSession,\n DeviceSessionRefresherOptions,\n} from \"@internal/device-session/model/DeviceSession\";\nimport type { DeviceSessionService } from \"@internal/device-session/service/DeviceSessionService\";\nimport { loggerTypes } from \"@internal/logger-publisher/di/loggerTypes\";\nimport { managerApiTypes } from \"@internal/manager-api/di/managerApiTypes\";\nimport type { ManagerApiService } from \"@internal/manager-api/service/ManagerApiService\";\nimport { secureChannelTypes } from \"@internal/secure-channel/di/secureChannelTypes\";\nimport type { SecureChannelService } from \"@internal/secure-channel/service/SecureChannelService\";\nimport { transportDiTypes } from \"@internal/transport/di/transportDiTypes\";\nimport { type TransportService } from \"@internal/transport/service/TransportService\";\n\n/**\n * The arguments for the ConnectUseCase.\n */\nexport type ConnectUseCaseArgs = {\n /**\n * UUID of the device got from device discovery `StartDiscoveringUseCase`\n */\n device: DiscoveredDevice;\n\n /**\n * sessionRefresherOptions - optional\n * isRefresherDisabled - whether the refresher is disabled\n * pollingInterval - optional - the refresh interval in milliseconds\n */\n sessionRefresherOptions?: DeviceSessionRefresherOptions;\n};\n\n/**\n * Connects to a discovered device.\n */\n@injectable()\nexport class ConnectUseCase {\n private readonly _transportService: TransportService;\n private readonly _sessionService: DeviceSessionService;\n private readonly _loggerFactory: (tag: string) => LoggerPublisherService;\n private readonly _managerApi: ManagerApiService;\n private readonly _secureChannel: SecureChannelService;\n private readonly _logger: LoggerPublisherService;\n\n constructor(\n @inject(transportDiTypes.TransportService)\n transportService: TransportService,\n @inject(deviceSessionTypes.DeviceSessionService)\n sessionService: DeviceSessionService,\n @inject(loggerTypes.LoggerPublisherServiceFactory)\n loggerFactory: (tag: string) => LoggerPublisherService,\n @inject(managerApiTypes.ManagerApiService)\n managerApi: ManagerApiService,\n @inject(secureChannelTypes.SecureChannelService)\n secureChannel: SecureChannelService,\n ) {\n this._sessionService = sessionService;\n this._transportService = transportService;\n this._loggerFactory = loggerFactory;\n this._logger = loggerFactory(\"ConnectUseCase\");\n this._managerApi = managerApi;\n this._secureChannel = secureChannel;\n }\n\n private handleDeviceDisconnect(deviceId: DeviceId) {\n const deviceSessionOrError =\n this._sessionService.getDeviceSessionByDeviceId(deviceId);\n deviceSessionOrError.map((deviceSession) => {\n this._sessionService.removeDeviceSession(deviceSession.id);\n });\n }\n\n async execute({\n device,\n sessionRefresherOptions,\n }: ConnectUseCaseArgs): Promise<DeviceSessionId> {\n const transport = this._transportService.getTransport(device.transport);\n\n return EitherAsync.liftEither(\n transport.toEither(\n new TransportNotSupportedError(new Error(\"Unknown transport\")),\n ),\n )\n .chain(async (t) => {\n return t.connect({\n deviceId: device.id,\n onDisconnect: (dId) => this.handleDeviceDisconnect(dId),\n });\n })\n .ifLeft((error) => {\n this._logger.error(\"Error connecting to device\", {\n data: { deviceId: device.id, error },\n });\n })\n .map(async (connectedDevice) => {\n const deviceSession = new DeviceSession(\n { connectedDevice },\n this._loggerFactory,\n this._managerApi,\n this._secureChannel,\n sessionRefresherOptions,\n );\n this._sessionService.addDeviceSession(deviceSession);\n await deviceSession.initialiseSession();\n return deviceSession.id;\n })\n .caseOf({\n Left: (error) => {\n throw error;\n },\n Right: (s) => s,\n });\n }\n}\n"],
|
5
|
+
"mappings": "iOAAA,OAAS,UAAAA,EAAQ,cAAAC,MAAkB,YACnC,OAAS,eAAAC,MAAmB,YAK5B,OAAS,8BAAAC,MAAkC,8BAE3C,OAAS,sBAAAC,MAA0B,iDACnC,OACE,iBAAAC,MAEK,+CAEP,OAAS,eAAAC,MAAmB,4CAC5B,OAAS,mBAAAC,MAAuB,2CAEhC,OAAS,sBAAAC,MAA0B,iDAEnC,OAAS,oBAAAC,MAAwB,0CAwB1B,IAAMC,EAAN,KAAqB,CACT,kBACA,gBACA,eACA,YACA,eACA,QAEjB,YAEEC,EAEAC,EAEAC,EAEAC,EAEAC,EACA,CACA,KAAK,gBAAkBH,EACvB,KAAK,kBAAoBD,EACzB,KAAK,eAAiBE,EACtB,KAAK,QAAUA,EAAc,gBAAgB,EAC7C,KAAK,YAAcC,EACnB,KAAK,eAAiBC,CACxB,CAEQ,uBAAuBC,EAAoB,CAE/C,KAAK,gBAAgB,2BAA2BA,CAAQ,EACrC,IAAKC,GAAkB,CAC1C,KAAK,gBAAgB,oBAAoBA,EAAc,EAAE,CAC3D,CAAC,CACH,CAEA,MAAM,QAAQ,CACZ,OAAAC,EACA,wBAAAC,CACF,EAAiD,CAC/C,MAAMC,EAAY,KAAK,kBAAkB,aAAaF,EAAO,SAAS,EAEtE,OAAOG,EAAY,WACjBD,EAAU,SACR,IAAIE,EAA2B,IAAI,MAAM,mBAAmB,CAAC,CAC/D,CACF,EACG,MAAM,MAAOC,GACLA,EAAE,QAAQ,CACf,SAAUL,EAAO,GACjB,aAAeM,GAAQ,KAAK,uBAAuBA,CAAG,CACxD,CAAC,CACF,EACA,OAAQC,GAAU,CACjB,KAAK,QAAQ,MAAM,6BAA8B,CAC/C,KAAM,CAAE,SAAUP,EAAO,GAAI,MAAAO,CAAM,CACrC,CAAC,CACH,CAAC,EACA,IAAI,MAAOC,GAAoB,CAC9B,MAAMT,EAAgB,IAAIU,EACxB,CAAE,gBAAAD,CAAgB,EAClB,KAAK,eACL,KAAK,YACL,KAAK,eACLP,CACF,EACA,YAAK,gBAAgB,iBAAiBF,CAAa,EACnD,MAAMA,EAAc,kBAAkB,EAC/BA,EAAc,EACvB,CAAC,EACA,OAAO,CACN,KAAOQ,GAAU,CACf,MAAMA,CACR,EACA,MAAQG,GAAMA,CAChB,CAAC,CACL,CACF,EA7EalB,EAANmB,EAAA,CADNC,EAAW,EAUPC,EAAA,EAAAC,EAAOC,EAAiB,gBAAgB,GAExCF,EAAA,EAAAC,EAAOE,EAAmB,oBAAoB,GAE9CH,EAAA,EAAAC,EAAOG,EAAY,6BAA6B,GAEhDJ,EAAA,EAAAC,EAAOI,EAAgB,iBAAiB,GAExCL,EAAA,EAAAC,EAAOK,EAAmB,oBAAoB,IAjBtC3B",
|
6
|
+
"names": ["inject", "injectable", "EitherAsync", "TransportNotSupportedError", "deviceSessionTypes", "DeviceSession", "loggerTypes", "managerApiTypes", "secureChannelTypes", "transportDiTypes", "ConnectUseCase", "transportService", "sessionService", "loggerFactory", "managerApi", "secureChannel", "deviceId", "deviceSession", "device", "sessionRefresherOptions", "transport", "EitherAsync", "TransportNotSupportedError", "t", "dId", "error", "connectedDevice", "DeviceSession", "s", "__decorateClass", "injectable", "__decorateParam", "inject", "transportDiTypes", "deviceSessionTypes", "loggerTypes", "managerApiTypes", "secureChannelTypes"]
|
7
7
|
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{Left as
|
1
|
+
import{Left as D,Maybe as y,Right as s}from"purify-ts";import{TransportMock as C}from"../../../api/transport/model/__mocks__/TransportMock";import{DisconnectError as S}from"../../../api/transport/model/Errors";import{connectedDeviceStubBuilder as h}from"../../../api/transport/model/TransportConnectedDevice.stub";import{DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS as v}from"../../device-session/data/DeviceSessionRefresherConst";import{deviceSessionStubBuilder as u}from"../../device-session/model/DeviceSession.stub";import{DeviceSessionNotFound as w}from"../../device-session/model/Errors";import{DefaultDeviceSessionService as g}from"../../device-session/service/DefaultDeviceSessionService";import{DefaultLoggerPublisherService as T}from"../../logger-publisher/service/DefaultLoggerPublisherService";import{AxiosManagerApiDataSource as k}from"../../manager-api/data/AxiosManagerApiDataSource";import{DefaultManagerApiService as A}from"../../manager-api/service/DefaultManagerApiService";import{DefaultSecureChannelDataSource as E}from"../../secure-channel/data/DefaultSecureChannelDataSource";import{DefaultSecureChannelService as I}from"../../secure-channel/service/DefaultSecureChannelService";import{DefaultTransportService as O}from"../../transport/service/DefaultTransportService";import{DisconnectUseCase as a}from"./DisconnectUseCase";vi.mock("@internal/transport/service/DefaultTransportService");let e,p,c=[];const r=vi.fn().mockReturnValue(new T([],"DisconnectUseCaseTest"));let i,m,f,d,l;const n="sessionId";describe("DisconnectUseCase",()=>{beforeAll(()=>{p=new C,c=[p],e=new g(r),i=new O,vi.spyOn(i,"getTransport").mockReturnValue(y.of(p))}),it("should disconnect from a device",async()=>{const t=h();f=new k({}),m=new A(f),d=new E({}),l=new I(d);const o=u({id:n,connectedDevice:t},r,m,l,v);vi.spyOn(e,"getDeviceSessionById").mockImplementation(()=>s(o)),vi.spyOn(o,"close"),vi.spyOn(e,"removeDeviceSession"),vi.spyOn(c[0],"disconnect").mockImplementation(()=>Promise.resolve(s(void 0))),await new a(i,e,r).execute({sessionId:n}),expect(o.close).toHaveBeenCalled(),expect(e.removeDeviceSession).toHaveBeenCalledWith(n),expect(c[0].disconnect).toHaveBeenCalledWith({connectedDevice:t})}),it("should throw an error when deviceSession not found",async()=>{const t=new a(i,e,r);try{await t.execute({sessionId:n})}catch(o){expect(o).toStrictEqual(new w)}}),it("should throw an error if usb hid disconnection fails",async()=>{vi.spyOn(e,"getDeviceSessionById").mockImplementation(()=>s(u({id:n},r,m,l,v))),vi.spyOn(c[0],"disconnect").mockResolvedValue(D(new S));const t=new a(i,e,r);try{await t.execute({sessionId:n})}catch(o){expect(o).toStrictEqual(new S)}})});
|
2
2
|
//# sourceMappingURL=DisconnectUseCase.test.js.map
|
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../../src/internal/discovery/use-case/DisconnectUseCase.test.ts"],
|
4
|
-
"sourcesContent": ["import { Left, Maybe, Right } from \"purify-ts\";\n\nimport { TransportMock } from \"@api/transport/model/__mocks__/TransportMock\";\nimport { DisconnectError } from \"@api/transport/model/Errors\";\nimport { connectedDeviceStubBuilder } from \"@api/transport/model/TransportConnectedDevice.stub\";\nimport type { DmkConfig, Transport } from \"@api/types\";\nimport { deviceSessionStubBuilder } from \"@internal/device-session/model/DeviceSession.stub\";\nimport { DeviceSessionNotFound } from \"@internal/device-session/model/Errors\";\nimport { DefaultDeviceSessionService } from \"@internal/device-session/service/DefaultDeviceSessionService\";\nimport { DefaultLoggerPublisherService } from \"@internal/logger-publisher/service/DefaultLoggerPublisherService\";\nimport { AxiosManagerApiDataSource } from \"@internal/manager-api/data/AxiosManagerApiDataSource\";\nimport { type ManagerApiDataSource } from \"@internal/manager-api/data/ManagerApiDataSource\";\nimport { DefaultManagerApiService } from \"@internal/manager-api/service/DefaultManagerApiService\";\nimport { type ManagerApiService } from \"@internal/manager-api/service/ManagerApiService\";\nimport { DefaultSecureChannelDataSource } from \"@internal/secure-channel/data/DefaultSecureChannelDataSource\";\nimport { type SecureChannelDataSource } from \"@internal/secure-channel/data/SecureChannelDataSource\";\nimport { DefaultSecureChannelService } from \"@internal/secure-channel/service/DefaultSecureChannelService\";\nimport { type SecureChannelService } from \"@internal/secure-channel/service/SecureChannelService\";\nimport { DefaultTransportService } from \"@internal/transport/service/DefaultTransportService\";\nimport { type TransportService } from \"@internal/transport/service/TransportService\";\n\nimport { DisconnectUseCase } from \"./DisconnectUseCase\";\n\nvi.mock(\"@internal/transport/service/DefaultTransportService\");\n\nlet sessionService: DefaultDeviceSessionService;\n// TODO test several transports\nlet transport: Transport;\nlet transports: Transport[] = [];\nconst loggerFactory = vi\n .fn()\n .mockReturnValue(\n new DefaultLoggerPublisherService([], \"DisconnectUseCaseTest\"),\n );\nlet transportService: TransportService;\nlet managerApi: ManagerApiService;\nlet managerApiDataSource: ManagerApiDataSource;\nlet secureChannelDataSource: SecureChannelDataSource;\nlet secureChannel: SecureChannelService;\n\nconst sessionId = \"sessionId\";\n\ndescribe(\"DisconnectUseCase\", () => {\n beforeAll(() => {\n transport = new TransportMock();\n transports = [transport];\n sessionService = new DefaultDeviceSessionService(loggerFactory);\n // @ts-expect-error mock\n transportService = new DefaultTransportService();\n vi.spyOn(transportService, \"getTransport\").mockReturnValue(\n Maybe.of(transport),\n );\n });\n\n it(\"should disconnect from a device\", async () => {\n // Given\n const connectedDevice = connectedDeviceStubBuilder();\n managerApiDataSource = new AxiosManagerApiDataSource({} as DmkConfig);\n managerApi = new DefaultManagerApiService(managerApiDataSource);\n secureChannelDataSource = new DefaultSecureChannelDataSource(\n {} as DmkConfig,\n );\n secureChannel = new DefaultSecureChannelService(secureChannelDataSource);\n const deviceSession = deviceSessionStubBuilder(\n {\n id: sessionId,\n connectedDevice,\n },\n loggerFactory,\n managerApi,\n secureChannel,\n );\n vi.spyOn(sessionService, \"getDeviceSessionById\").mockImplementation(() =>\n Right(deviceSession),\n );\n vi.spyOn(deviceSession, \"close\");\n vi.spyOn(sessionService, \"removeDeviceSession\");\n vi.spyOn(transports[0]!, \"disconnect\").mockImplementation(() =>\n Promise.resolve(Right(void 0)),\n );\n const disconnectUseCase = new DisconnectUseCase(\n transportService,\n sessionService,\n loggerFactory,\n );\n // When\n await disconnectUseCase.execute({ sessionId });\n\n // Then\n expect(deviceSession.close).toHaveBeenCalled();\n expect(sessionService.removeDeviceSession).toHaveBeenCalledWith(sessionId);\n expect(transports[0]!.disconnect).toHaveBeenCalledWith({\n connectedDevice,\n });\n });\n\n it(\"should throw an error when deviceSession not found\", async () => {\n // Given\n const disconnectUseCase = new DisconnectUseCase(\n transportService,\n sessionService,\n loggerFactory,\n );\n\n // When\n try {\n await disconnectUseCase.execute({ sessionId });\n } catch (e) {\n // Then\n expect(e).toStrictEqual(new DeviceSessionNotFound());\n }\n });\n\n it(\"should throw an error if usb hid disconnection fails\", async () => {\n // Given\n vi.spyOn(sessionService, \"getDeviceSessionById\").mockImplementation(() =>\n Right(\n deviceSessionStubBuilder(\n { id: sessionId },\n loggerFactory,\n managerApi,\n secureChannel,\n ),\n ),\n );\n\n vi.spyOn(transports[0]!, \"disconnect\").mockResolvedValue(\n Left(new DisconnectError()),\n );\n\n const disconnectUseCase = new DisconnectUseCase(\n transportService,\n sessionService,\n loggerFactory,\n );\n\n // When\n try {\n await disconnectUseCase.execute({ sessionId });\n } catch (e) {\n // Then\n expect(e).toStrictEqual(new DisconnectError());\n }\n });\n});\n"],
|
5
|
-
"mappings": "AAAA,OAAS,QAAAA,EAAM,SAAAC,EAAO,SAAAC,MAAa,YAEnC,OAAS,iBAAAC,MAAqB,+CAC9B,OAAS,mBAAAC,MAAuB,8BAChC,OAAS,8BAAAC,MAAkC,qDAE3C,OAAS,4BAAAC,MAAgC,oDACzC,OAAS,yBAAAC,MAA6B,wCACtC,OAAS,+BAAAC,MAAmC,+DAC5C,OAAS,iCAAAC,MAAqC,mEAC9C,OAAS,6BAAAC,MAAiC,uDAE1C,OAAS,4BAAAC,MAAgC,yDAEzC,OAAS,kCAAAC,MAAsC,+DAE/C,OAAS,+BAAAC,MAAmC,+DAE5C,OAAS,2BAAAC,MAA+B,sDAGxC,OAAS,qBAAAC,MAAyB,sBAElC,GAAG,KAAK,qDAAqD,EAE7D,IAAIC,EAEAC,EACAC,EAA0B,CAAC,EAC/B,MAAMC,EAAgB,GACnB,GAAG,EACH,gBACC,IAAIV,EAA8B,CAAC,EAAG,uBAAuB,CAC/D,EACF,IAAIW,EACAC,EACAC,EACAC,EACAC,EAEJ,MAAMC,EAAY,YAElB,SAAS,oBAAqB,IAAM,CAClC,UAAU,IAAM,CACdR,EAAY,
|
6
|
-
"names": ["Left", "Maybe", "Right", "TransportMock", "DisconnectError", "connectedDeviceStubBuilder", "deviceSessionStubBuilder", "DeviceSessionNotFound", "DefaultDeviceSessionService", "DefaultLoggerPublisherService", "AxiosManagerApiDataSource", "DefaultManagerApiService", "DefaultSecureChannelDataSource", "DefaultSecureChannelService", "DefaultTransportService", "DisconnectUseCase", "sessionService", "transport", "transports", "loggerFactory", "transportService", "managerApi", "managerApiDataSource", "secureChannelDataSource", "secureChannel", "sessionId", "connectedDevice", "deviceSession", "disconnectUseCase", "e"]
|
4
|
+
"sourcesContent": ["import { Left, Maybe, Right } from \"purify-ts\";\n\nimport { TransportMock } from \"@api/transport/model/__mocks__/TransportMock\";\nimport { DisconnectError } from \"@api/transport/model/Errors\";\nimport { connectedDeviceStubBuilder } from \"@api/transport/model/TransportConnectedDevice.stub\";\nimport type { DmkConfig, Transport } from \"@api/types\";\nimport { DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS } from \"@internal/device-session/data/DeviceSessionRefresherConst\";\nimport { deviceSessionStubBuilder } from \"@internal/device-session/model/DeviceSession.stub\";\nimport { DeviceSessionNotFound } from \"@internal/device-session/model/Errors\";\nimport { DefaultDeviceSessionService } from \"@internal/device-session/service/DefaultDeviceSessionService\";\nimport { DefaultLoggerPublisherService } from \"@internal/logger-publisher/service/DefaultLoggerPublisherService\";\nimport { AxiosManagerApiDataSource } from \"@internal/manager-api/data/AxiosManagerApiDataSource\";\nimport { type ManagerApiDataSource } from \"@internal/manager-api/data/ManagerApiDataSource\";\nimport { DefaultManagerApiService } from \"@internal/manager-api/service/DefaultManagerApiService\";\nimport { type ManagerApiService } from \"@internal/manager-api/service/ManagerApiService\";\nimport { DefaultSecureChannelDataSource } from \"@internal/secure-channel/data/DefaultSecureChannelDataSource\";\nimport { type SecureChannelDataSource } from \"@internal/secure-channel/data/SecureChannelDataSource\";\nimport { DefaultSecureChannelService } from \"@internal/secure-channel/service/DefaultSecureChannelService\";\nimport { type SecureChannelService } from \"@internal/secure-channel/service/SecureChannelService\";\nimport { DefaultTransportService } from \"@internal/transport/service/DefaultTransportService\";\nimport { type TransportService } from \"@internal/transport/service/TransportService\";\n\nimport { DisconnectUseCase } from \"./DisconnectUseCase\";\n\nvi.mock(\"@internal/transport/service/DefaultTransportService\");\n\nlet sessionService: DefaultDeviceSessionService;\n// TODO test several transports\nlet transport: Transport;\nlet transports: Transport[] = [];\nconst loggerFactory = vi\n .fn()\n .mockReturnValue(\n new DefaultLoggerPublisherService([], \"DisconnectUseCaseTest\"),\n );\nlet transportService: TransportService;\nlet managerApi: ManagerApiService;\nlet managerApiDataSource: ManagerApiDataSource;\nlet secureChannelDataSource: SecureChannelDataSource;\nlet secureChannel: SecureChannelService;\n\nconst sessionId = \"sessionId\";\n\ndescribe(\"DisconnectUseCase\", () => {\n beforeAll(() => {\n transport = new TransportMock();\n transports = [transport];\n sessionService = new DefaultDeviceSessionService(loggerFactory);\n // @ts-expect-error mock\n transportService = new DefaultTransportService();\n vi.spyOn(transportService, \"getTransport\").mockReturnValue(\n Maybe.of(transport),\n );\n });\n\n it(\"should disconnect from a device\", async () => {\n // Given\n const connectedDevice = connectedDeviceStubBuilder();\n managerApiDataSource = new AxiosManagerApiDataSource({} as DmkConfig);\n managerApi = new DefaultManagerApiService(managerApiDataSource);\n secureChannelDataSource = new DefaultSecureChannelDataSource(\n {} as DmkConfig,\n );\n secureChannel = new DefaultSecureChannelService(secureChannelDataSource);\n const deviceSession = deviceSessionStubBuilder(\n {\n id: sessionId,\n connectedDevice,\n },\n loggerFactory,\n managerApi,\n secureChannel,\n DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS,\n );\n vi.spyOn(sessionService, \"getDeviceSessionById\").mockImplementation(() =>\n Right(deviceSession),\n );\n vi.spyOn(deviceSession, \"close\");\n vi.spyOn(sessionService, \"removeDeviceSession\");\n vi.spyOn(transports[0]!, \"disconnect\").mockImplementation(() =>\n Promise.resolve(Right(void 0)),\n );\n const disconnectUseCase = new DisconnectUseCase(\n transportService,\n sessionService,\n loggerFactory,\n );\n // When\n await disconnectUseCase.execute({ sessionId });\n\n // Then\n expect(deviceSession.close).toHaveBeenCalled();\n expect(sessionService.removeDeviceSession).toHaveBeenCalledWith(sessionId);\n expect(transports[0]!.disconnect).toHaveBeenCalledWith({\n connectedDevice,\n });\n });\n\n it(\"should throw an error when deviceSession not found\", async () => {\n // Given\n const disconnectUseCase = new DisconnectUseCase(\n transportService,\n sessionService,\n loggerFactory,\n );\n\n // When\n try {\n await disconnectUseCase.execute({ sessionId });\n } catch (e) {\n // Then\n expect(e).toStrictEqual(new DeviceSessionNotFound());\n }\n });\n\n it(\"should throw an error if usb hid disconnection fails\", async () => {\n // Given\n vi.spyOn(sessionService, \"getDeviceSessionById\").mockImplementation(() =>\n Right(\n deviceSessionStubBuilder(\n { id: sessionId },\n loggerFactory,\n managerApi,\n secureChannel,\n DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS,\n ),\n ),\n );\n\n vi.spyOn(transports[0]!, \"disconnect\").mockResolvedValue(\n Left(new DisconnectError()),\n );\n\n const disconnectUseCase = new DisconnectUseCase(\n transportService,\n sessionService,\n loggerFactory,\n );\n\n // When\n try {\n await disconnectUseCase.execute({ sessionId });\n } catch (e) {\n // Then\n expect(e).toStrictEqual(new DisconnectError());\n }\n });\n});\n"],
|
5
|
+
"mappings": "AAAA,OAAS,QAAAA,EAAM,SAAAC,EAAO,SAAAC,MAAa,YAEnC,OAAS,iBAAAC,MAAqB,+CAC9B,OAAS,mBAAAC,MAAuB,8BAChC,OAAS,8BAAAC,MAAkC,qDAE3C,OAAS,4CAAAC,MAAgD,4DACzD,OAAS,4BAAAC,MAAgC,oDACzC,OAAS,yBAAAC,MAA6B,wCACtC,OAAS,+BAAAC,MAAmC,+DAC5C,OAAS,iCAAAC,MAAqC,mEAC9C,OAAS,6BAAAC,MAAiC,uDAE1C,OAAS,4BAAAC,MAAgC,yDAEzC,OAAS,kCAAAC,MAAsC,+DAE/C,OAAS,+BAAAC,MAAmC,+DAE5C,OAAS,2BAAAC,MAA+B,sDAGxC,OAAS,qBAAAC,MAAyB,sBAElC,GAAG,KAAK,qDAAqD,EAE7D,IAAIC,EAEAC,EACAC,EAA0B,CAAC,EAC/B,MAAMC,EAAgB,GACnB,GAAG,EACH,gBACC,IAAIV,EAA8B,CAAC,EAAG,uBAAuB,CAC/D,EACF,IAAIW,EACAC,EACAC,EACAC,EACAC,EAEJ,MAAMC,EAAY,YAElB,SAAS,oBAAqB,IAAM,CAClC,UAAU,IAAM,CACdR,EAAY,IAAIf,EAChBgB,EAAa,CAACD,CAAS,EACvBD,EAAiB,IAAIR,EAA4BW,CAAa,EAE9DC,EAAmB,IAAIN,EACvB,GAAG,MAAMM,EAAkB,cAAc,EAAE,gBACzCpB,EAAM,GAAGiB,CAAS,CACpB,CACF,CAAC,EAED,GAAG,kCAAmC,SAAY,CAEhD,MAAMS,EAAkBtB,EAA2B,EACnDkB,EAAuB,IAAIZ,EAA0B,CAAC,CAAc,EACpEW,EAAa,IAAIV,EAAyBW,CAAoB,EAC9DC,EAA0B,IAAIX,EAC5B,CAAC,CACH,EACAY,EAAgB,IAAIX,EAA4BU,CAAuB,EACvE,MAAMI,EAAgBrB,EACpB,CACE,GAAImB,EACJ,gBAAAC,CACF,EACAP,EACAE,EACAG,EACAnB,CACF,EACA,GAAG,MAAMW,EAAgB,sBAAsB,EAAE,mBAAmB,IAClEf,EAAM0B,CAAa,CACrB,EACA,GAAG,MAAMA,EAAe,OAAO,EAC/B,GAAG,MAAMX,EAAgB,qBAAqB,EAC9C,GAAG,MAAME,EAAW,CAAC,EAAI,YAAY,EAAE,mBAAmB,IACxD,QAAQ,QAAQjB,EAAM,MAAM,CAAC,CAC/B,EAOA,MAN0B,IAAIc,EAC5BK,EACAJ,EACAG,CACF,EAEwB,QAAQ,CAAE,UAAAM,CAAU,CAAC,EAG7C,OAAOE,EAAc,KAAK,EAAE,iBAAiB,EAC7C,OAAOX,EAAe,mBAAmB,EAAE,qBAAqBS,CAAS,EACzE,OAAOP,EAAW,CAAC,EAAG,UAAU,EAAE,qBAAqB,CACrD,gBAAAQ,CACF,CAAC,CACH,CAAC,EAED,GAAG,qDAAsD,SAAY,CAEnE,MAAME,EAAoB,IAAIb,EAC5BK,EACAJ,EACAG,CACF,EAGA,GAAI,CACF,MAAMS,EAAkB,QAAQ,CAAE,UAAAH,CAAU,CAAC,CAC/C,OAASI,EAAG,CAEV,OAAOA,CAAC,EAAE,cAAc,IAAItB,CAAuB,CACrD,CACF,CAAC,EAED,GAAG,uDAAwD,SAAY,CAErE,GAAG,MAAMS,EAAgB,sBAAsB,EAAE,mBAAmB,IAClEf,EACEK,EACE,CAAE,GAAImB,CAAU,EAChBN,EACAE,EACAG,EACAnB,CACF,CACF,CACF,EAEA,GAAG,MAAMa,EAAW,CAAC,EAAI,YAAY,EAAE,kBACrCnB,EAAK,IAAII,CAAiB,CAC5B,EAEA,MAAMyB,EAAoB,IAAIb,EAC5BK,EACAJ,EACAG,CACF,EAGA,GAAI,CACF,MAAMS,EAAkB,QAAQ,CAAE,UAAAH,CAAU,CAAC,CAC/C,OAASI,EAAG,CAEV,OAAOA,CAAC,EAAE,cAAc,IAAI1B,CAAiB,CAC/C,CACF,CAAC,CACH,CAAC",
|
6
|
+
"names": ["Left", "Maybe", "Right", "TransportMock", "DisconnectError", "connectedDeviceStubBuilder", "DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS", "deviceSessionStubBuilder", "DeviceSessionNotFound", "DefaultDeviceSessionService", "DefaultLoggerPublisherService", "AxiosManagerApiDataSource", "DefaultManagerApiService", "DefaultSecureChannelDataSource", "DefaultSecureChannelService", "DefaultTransportService", "DisconnectUseCase", "sessionService", "transport", "transports", "loggerFactory", "transportService", "managerApi", "managerApiDataSource", "secureChannelDataSource", "secureChannel", "sessionId", "connectedDevice", "deviceSession", "disconnectUseCase", "e"]
|
7
7
|
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{ConnectedDevice as s}from"../../../api/transport/model/ConnectedDevice";import{
|
1
|
+
import{ConnectedDevice as s}from"../../../api/transport/model/ConnectedDevice";import{DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS as a}from"../../device-session/data/DeviceSessionRefresherConst";import{deviceSessionStubBuilder as S}from"../../device-session/model/DeviceSession.stub";import{DefaultDeviceSessionService as f}from"../../device-session/service/DefaultDeviceSessionService";import{DefaultLoggerPublisherService as l}from"../../logger-publisher/service/DefaultLoggerPublisherService";import{AxiosManagerApiDataSource as D}from"../../manager-api/data/AxiosManagerApiDataSource";import{DefaultManagerApiService as d}from"../../manager-api/service/DefaultManagerApiService";import{DefaultSecureChannelDataSource as g}from"../../secure-channel/data/DefaultSecureChannelDataSource";import{DefaultSecureChannelService as C}from"../../secure-channel/service/DefaultSecureChannelService";import{GetConnectedDeviceUseCase as m}from"./GetConnectedDeviceUseCase";vi.mock("@internal/manager-api/data/AxiosManagerApiDataSource");let r,o,p,t,u,c;const i="fakeSessionId";describe("GetConnectedDevice",()=>{beforeEach(()=>{r=new l([],"get-connected-device-use-case"),p=new D({}),t=new d(p),u=new g({}),c=new C(u),o=new f(()=>r)}),it("should retrieve an instance of ConnectedDevice",()=>{const e=S({id:i},()=>r,t,c,a);o.addDeviceSession(e);const n=new m(o,()=>r).execute({sessionId:i});e.close(),expect(n).toBeInstanceOf(s)}),it("should retrieve correct device from session",()=>{const e=S({id:i},()=>r,t,c,a);o.addDeviceSession(e);const n=new m(o,()=>r).execute({sessionId:i});e.close(),expect(n).toStrictEqual(new s({sessionId:i,transportConnectedDevice:e.connectedDevice}))})});
|
2
2
|
//# sourceMappingURL=GetConnectedDeviceUseCase.test.js.map
|
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../../src/internal/discovery/use-case/GetConnectedDeviceUseCase.test.ts"],
|
4
|
-
"sourcesContent": ["import { type DmkConfig } from \"@api/DmkConfig\";\nimport { type LoggerPublisherService } from \"@api/logger-publisher/service/LoggerPublisherService\";\nimport { ConnectedDevice } from \"@api/transport/model/ConnectedDevice\";\nimport { deviceSessionStubBuilder } from \"@internal/device-session/model/DeviceSession.stub\";\nimport { DefaultDeviceSessionService } from \"@internal/device-session/service/DefaultDeviceSessionService\";\nimport { type DeviceSessionService } from \"@internal/device-session/service/DeviceSessionService\";\nimport { DefaultLoggerPublisherService } from \"@internal/logger-publisher/service/DefaultLoggerPublisherService\";\nimport { AxiosManagerApiDataSource } from \"@internal/manager-api/data/AxiosManagerApiDataSource\";\nimport { type ManagerApiDataSource } from \"@internal/manager-api/data/ManagerApiDataSource\";\nimport { DefaultManagerApiService } from \"@internal/manager-api/service/DefaultManagerApiService\";\nimport { type ManagerApiService } from \"@internal/manager-api/service/ManagerApiService\";\nimport { DefaultSecureChannelDataSource } from \"@internal/secure-channel/data/DefaultSecureChannelDataSource\";\nimport { type SecureChannelDataSource } from \"@internal/secure-channel/data/SecureChannelDataSource\";\nimport { DefaultSecureChannelService } from \"@internal/secure-channel/service/DefaultSecureChannelService\";\nimport { type SecureChannelService } from \"@internal/secure-channel/service/SecureChannelService\";\n\nimport { GetConnectedDeviceUseCase } from \"./GetConnectedDeviceUseCase\";\n\nvi.mock(\"@internal/manager-api/data/AxiosManagerApiDataSource\");\n\nlet logger: LoggerPublisherService;\nlet sessionService: DeviceSessionService;\nlet managerApiDataSource: ManagerApiDataSource;\nlet managerApi: ManagerApiService;\nlet secureChannelDataSource: SecureChannelDataSource;\nlet secureChannel: SecureChannelService;\n\nconst fakeSessionId = \"fakeSessionId\";\n\ndescribe(\"GetConnectedDevice\", () => {\n beforeEach(() => {\n logger = new DefaultLoggerPublisherService(\n [],\n \"get-connected-device-use-case\",\n );\n managerApiDataSource = new AxiosManagerApiDataSource({} as DmkConfig);\n managerApi = new DefaultManagerApiService(managerApiDataSource);\n secureChannelDataSource = new DefaultSecureChannelDataSource(\n {} as DmkConfig,\n );\n secureChannel = new DefaultSecureChannelService(secureChannelDataSource);\n sessionService = new DefaultDeviceSessionService(() => logger);\n });\n\n it(\"should retrieve an instance of ConnectedDevice\", () => {\n // given\n const deviceSession = deviceSessionStubBuilder(\n { id: fakeSessionId },\n () => logger,\n managerApi,\n secureChannel,\n );\n sessionService.addDeviceSession(deviceSession);\n const useCase = new GetConnectedDeviceUseCase(sessionService, () => logger);\n\n // when\n const response = useCase.execute({\n sessionId: fakeSessionId,\n });\n\n deviceSession.close();\n\n // then\n expect(response).toBeInstanceOf(ConnectedDevice);\n });\n\n it(\"should retrieve correct device from session\", () => {\n // given\n const deviceSession = deviceSessionStubBuilder(\n { id: fakeSessionId },\n () => logger,\n managerApi,\n secureChannel,\n );\n sessionService.addDeviceSession(deviceSession);\n const useCase = new GetConnectedDeviceUseCase(sessionService, () => logger);\n\n // when\n const response = useCase.execute({\n sessionId: fakeSessionId,\n });\n\n deviceSession.close();\n\n // then\n expect(response).toStrictEqual(\n new ConnectedDevice({\n sessionId: fakeSessionId,\n transportConnectedDevice: deviceSession.connectedDevice,\n }),\n );\n });\n});\n"],
|
5
|
-
"mappings": "AAEA,OAAS,mBAAAA,MAAuB,uCAChC,OAAS,4BAAAC,MAAgC,oDACzC,OAAS,+BAAAC,MAAmC,+DAE5C,OAAS,iCAAAC,MAAqC,mEAC9C,OAAS,6BAAAC,MAAiC,uDAE1C,OAAS,4BAAAC,MAAgC,yDAEzC,OAAS,kCAAAC,MAAsC,+DAE/C,OAAS,+BAAAC,MAAmC,+DAG5C,OAAS,6BAAAC,MAAiC,8BAE1C,GAAG,KAAK,sDAAsD,EAE9D,IAAIC,EACAC,EACAC,EACAC,EACAC,EACAC,EAEJ,MAAMC,EAAgB,gBAEtB,SAAS,qBAAsB,IAAM,CACnC,WAAW,IAAM,CACfN,EAAS,IAAIN,EACX,CAAC,EACD,+BACF,EACAQ,EAAuB,IAAIP,EAA0B,CAAC,CAAc,EACpEQ,EAAa,IAAIP,EAAyBM,CAAoB,EAC9DE,EAA0B,IAAIP,EAC5B,CAAC,CACH,EACAQ,EAAgB,IAAIP,EAA4BM,CAAuB,EACvEH,EAAiB,IAAIR,EAA4B,IAAMO,CAAM,CAC/D,CAAC,EAED,GAAG,iDAAkD,IAAM,CAEzD,MAAMO,EAAgBf,EACpB,CAAE,GAAIc,CAAc,EACpB,IAAMN,EACNG,EACAE,CACF,
|
6
|
-
"names": ["ConnectedDevice", "deviceSessionStubBuilder", "DefaultDeviceSessionService", "DefaultLoggerPublisherService", "AxiosManagerApiDataSource", "DefaultManagerApiService", "DefaultSecureChannelDataSource", "DefaultSecureChannelService", "GetConnectedDeviceUseCase", "logger", "sessionService", "managerApiDataSource", "managerApi", "secureChannelDataSource", "secureChannel", "fakeSessionId", "deviceSession", "response"]
|
4
|
+
"sourcesContent": ["import { type DmkConfig } from \"@api/DmkConfig\";\nimport { type LoggerPublisherService } from \"@api/logger-publisher/service/LoggerPublisherService\";\nimport { ConnectedDevice } from \"@api/transport/model/ConnectedDevice\";\nimport { DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS } from \"@internal/device-session/data/DeviceSessionRefresherConst\";\nimport { deviceSessionStubBuilder } from \"@internal/device-session/model/DeviceSession.stub\";\nimport { DefaultDeviceSessionService } from \"@internal/device-session/service/DefaultDeviceSessionService\";\nimport { type DeviceSessionService } from \"@internal/device-session/service/DeviceSessionService\";\nimport { DefaultLoggerPublisherService } from \"@internal/logger-publisher/service/DefaultLoggerPublisherService\";\nimport { AxiosManagerApiDataSource } from \"@internal/manager-api/data/AxiosManagerApiDataSource\";\nimport { type ManagerApiDataSource } from \"@internal/manager-api/data/ManagerApiDataSource\";\nimport { DefaultManagerApiService } from \"@internal/manager-api/service/DefaultManagerApiService\";\nimport { type ManagerApiService } from \"@internal/manager-api/service/ManagerApiService\";\nimport { DefaultSecureChannelDataSource } from \"@internal/secure-channel/data/DefaultSecureChannelDataSource\";\nimport { type SecureChannelDataSource } from \"@internal/secure-channel/data/SecureChannelDataSource\";\nimport { DefaultSecureChannelService } from \"@internal/secure-channel/service/DefaultSecureChannelService\";\nimport { type SecureChannelService } from \"@internal/secure-channel/service/SecureChannelService\";\n\nimport { GetConnectedDeviceUseCase } from \"./GetConnectedDeviceUseCase\";\n\nvi.mock(\"@internal/manager-api/data/AxiosManagerApiDataSource\");\n\nlet logger: LoggerPublisherService;\nlet sessionService: DeviceSessionService;\nlet managerApiDataSource: ManagerApiDataSource;\nlet managerApi: ManagerApiService;\nlet secureChannelDataSource: SecureChannelDataSource;\nlet secureChannel: SecureChannelService;\n\nconst fakeSessionId = \"fakeSessionId\";\n\ndescribe(\"GetConnectedDevice\", () => {\n beforeEach(() => {\n logger = new DefaultLoggerPublisherService(\n [],\n \"get-connected-device-use-case\",\n );\n managerApiDataSource = new AxiosManagerApiDataSource({} as DmkConfig);\n managerApi = new DefaultManagerApiService(managerApiDataSource);\n secureChannelDataSource = new DefaultSecureChannelDataSource(\n {} as DmkConfig,\n );\n secureChannel = new DefaultSecureChannelService(secureChannelDataSource);\n sessionService = new DefaultDeviceSessionService(() => logger);\n });\n\n it(\"should retrieve an instance of ConnectedDevice\", () => {\n // given\n const deviceSession = deviceSessionStubBuilder(\n { id: fakeSessionId },\n () => logger,\n managerApi,\n secureChannel,\n DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS,\n );\n sessionService.addDeviceSession(deviceSession);\n const useCase = new GetConnectedDeviceUseCase(sessionService, () => logger);\n\n // when\n const response = useCase.execute({\n sessionId: fakeSessionId,\n });\n\n deviceSession.close();\n\n // then\n expect(response).toBeInstanceOf(ConnectedDevice);\n });\n\n it(\"should retrieve correct device from session\", () => {\n // given\n const deviceSession = deviceSessionStubBuilder(\n { id: fakeSessionId },\n () => logger,\n managerApi,\n secureChannel,\n DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS,\n );\n sessionService.addDeviceSession(deviceSession);\n const useCase = new GetConnectedDeviceUseCase(sessionService, () => logger);\n\n // when\n const response = useCase.execute({\n sessionId: fakeSessionId,\n });\n\n deviceSession.close();\n\n // then\n expect(response).toStrictEqual(\n new ConnectedDevice({\n sessionId: fakeSessionId,\n transportConnectedDevice: deviceSession.connectedDevice,\n }),\n );\n });\n});\n"],
|
5
|
+
"mappings": "AAEA,OAAS,mBAAAA,MAAuB,uCAChC,OAAS,4CAAAC,MAAgD,4DACzD,OAAS,4BAAAC,MAAgC,oDACzC,OAAS,+BAAAC,MAAmC,+DAE5C,OAAS,iCAAAC,MAAqC,mEAC9C,OAAS,6BAAAC,MAAiC,uDAE1C,OAAS,4BAAAC,MAAgC,yDAEzC,OAAS,kCAAAC,MAAsC,+DAE/C,OAAS,+BAAAC,MAAmC,+DAG5C,OAAS,6BAAAC,MAAiC,8BAE1C,GAAG,KAAK,sDAAsD,EAE9D,IAAIC,EACAC,EACAC,EACAC,EACAC,EACAC,EAEJ,MAAMC,EAAgB,gBAEtB,SAAS,qBAAsB,IAAM,CACnC,WAAW,IAAM,CACfN,EAAS,IAAIN,EACX,CAAC,EACD,+BACF,EACAQ,EAAuB,IAAIP,EAA0B,CAAC,CAAc,EACpEQ,EAAa,IAAIP,EAAyBM,CAAoB,EAC9DE,EAA0B,IAAIP,EAC5B,CAAC,CACH,EACAQ,EAAgB,IAAIP,EAA4BM,CAAuB,EACvEH,EAAiB,IAAIR,EAA4B,IAAMO,CAAM,CAC/D,CAAC,EAED,GAAG,iDAAkD,IAAM,CAEzD,MAAMO,EAAgBf,EACpB,CAAE,GAAIc,CAAc,EACpB,IAAMN,EACNG,EACAE,EACAd,CACF,EACAU,EAAe,iBAAiBM,CAAa,EAI7C,MAAMC,EAHU,IAAIT,EAA0BE,EAAgB,IAAMD,CAAM,EAGjD,QAAQ,CAC/B,UAAWM,CACb,CAAC,EAEDC,EAAc,MAAM,EAGpB,OAAOC,CAAQ,EAAE,eAAelB,CAAe,CACjD,CAAC,EAED,GAAG,8CAA+C,IAAM,CAEtD,MAAMiB,EAAgBf,EACpB,CAAE,GAAIc,CAAc,EACpB,IAAMN,EACNG,EACAE,EACAd,CACF,EACAU,EAAe,iBAAiBM,CAAa,EAI7C,MAAMC,EAHU,IAAIT,EAA0BE,EAAgB,IAAMD,CAAM,EAGjD,QAAQ,CAC/B,UAAWM,CACb,CAAC,EAEDC,EAAc,MAAM,EAGpB,OAAOC,CAAQ,EAAE,cACf,IAAIlB,EAAgB,CAClB,UAAWgB,EACX,yBAA0BC,EAAc,eAC1C,CAAC,CACH,CACF,CAAC,CACH,CAAC",
|
6
|
+
"names": ["ConnectedDevice", "DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS", "deviceSessionStubBuilder", "DefaultDeviceSessionService", "DefaultLoggerPublisherService", "AxiosManagerApiDataSource", "DefaultManagerApiService", "DefaultSecureChannelDataSource", "DefaultSecureChannelService", "GetConnectedDeviceUseCase", "logger", "sessionService", "managerApiDataSource", "managerApi", "secureChannelDataSource", "secureChannel", "fakeSessionId", "deviceSession", "response"]
|
7
7
|
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{
|
1
|
+
import{ConnectedDevice as n}from"../../../api/transport/model/ConnectedDevice";import{DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS as c}from"../../device-session/data/DeviceSessionRefresherConst";import{deviceSessionStubBuilder as a}from"../../device-session/model/DeviceSession.stub";import{DefaultDeviceSessionService as l}from"../../device-session/service/DefaultDeviceSessionService";import{ListConnectedDevicesUseCase as S}from"../../discovery/use-case/ListConnectedDevicesUseCase";import{DefaultLoggerPublisherService as v}from"../../logger-publisher/service/DefaultLoggerPublisherService";import{AxiosManagerApiDataSource as D}from"../../manager-api/data/AxiosManagerApiDataSource";import{DefaultManagerApiService as f}from"../../manager-api/service/DefaultManagerApiService";import{DefaultSecureChannelDataSource as d}from"../../secure-channel/data/DefaultSecureChannelDataSource";import{DefaultSecureChannelService as C}from"../../secure-channel/service/DefaultSecureChannelService";let i,o,m,s,p,t;describe("ListDeviceSessionsUseCase",()=>{beforeEach(()=>{i=new v([],"list-device-sessions-use-case-test"),m=new D({}),s=new f(m),p=new d({}),t=new C(p),o=new l(()=>i)}),it("should list all device sessions",()=>{const r=a({id:"1"},()=>i,s,t,c),e=a({id:"2"},()=>i,s,t,c);o.addDeviceSession(r),o.addDeviceSession(e);const u=new S(o,()=>i).execute();r.close(),e.close(),expect(u).toStrictEqual([new n({transportConnectedDevice:r.connectedDevice,sessionId:r.id}),new n({transportConnectedDevice:e.connectedDevice,sessionId:e.id})])}),it("should return empty array if no device sessions",()=>{const e=new S(o,()=>i).execute();expect(e).toStrictEqual([])})});
|
2
2
|
//# sourceMappingURL=ListConnectedDevicesUseCase.test.js.map
|
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../../src/internal/discovery/use-case/ListConnectedDevicesUseCase.test.ts"],
|
4
|
-
"sourcesContent": ["import { type LoggerPublisherService } from \"@api/logger-publisher/service/LoggerPublisherService\";\nimport { deviceSessionStubBuilder } from \"@internal/device-session/model/DeviceSession.stub\";\nimport { DefaultDeviceSessionService } from \"@internal/device-session/service/DefaultDeviceSessionService\";\nimport { type DeviceSessionService } from \"@internal/device-session/service/DeviceSessionService\";\nimport { ListConnectedDevicesUseCase } from \"@internal/discovery/use-case/ListConnectedDevicesUseCase\";\nimport { DefaultLoggerPublisherService } from \"@internal/logger-publisher/service/DefaultLoggerPublisherService\";\nimport { AxiosManagerApiDataSource } from \"@internal/manager-api/data/AxiosManagerApiDataSource\";\nimport { type ManagerApiDataSource } from \"@internal/manager-api/data/ManagerApiDataSource\";\nimport { DefaultManagerApiService } from \"@internal/manager-api/service/DefaultManagerApiService\";\nimport { type ManagerApiService } from \"@internal/manager-api/service/ManagerApiService\";\nimport { DefaultSecureChannelDataSource } from \"@internal/secure-channel/data/DefaultSecureChannelDataSource\";\nimport { type SecureChannelDataSource } from \"@internal/secure-channel/data/SecureChannelDataSource\";\nimport { DefaultSecureChannelService } from \"@internal/secure-channel/service/DefaultSecureChannelService\";\nimport { type SecureChannelService } from \"@internal/secure-channel/service/SecureChannelService\";\nimport {
|
5
|
-
"mappings": "AACA,OAAS,
|
6
|
-
"names": ["deviceSessionStubBuilder", "DefaultDeviceSessionService", "ListConnectedDevicesUseCase", "DefaultLoggerPublisherService", "AxiosManagerApiDataSource", "DefaultManagerApiService", "DefaultSecureChannelDataSource", "DefaultSecureChannelService", "
|
4
|
+
"sourcesContent": ["import { type LoggerPublisherService } from \"@api/logger-publisher/service/LoggerPublisherService\";\nimport { ConnectedDevice } from \"@api/transport/model/ConnectedDevice\";\nimport { DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS } from \"@internal/device-session/data/DeviceSessionRefresherConst\";\nimport { deviceSessionStubBuilder } from \"@internal/device-session/model/DeviceSession.stub\";\nimport { DefaultDeviceSessionService } from \"@internal/device-session/service/DefaultDeviceSessionService\";\nimport { type DeviceSessionService } from \"@internal/device-session/service/DeviceSessionService\";\nimport { ListConnectedDevicesUseCase } from \"@internal/discovery/use-case/ListConnectedDevicesUseCase\";\nimport { DefaultLoggerPublisherService } from \"@internal/logger-publisher/service/DefaultLoggerPublisherService\";\nimport { AxiosManagerApiDataSource } from \"@internal/manager-api/data/AxiosManagerApiDataSource\";\nimport { type ManagerApiDataSource } from \"@internal/manager-api/data/ManagerApiDataSource\";\nimport { DefaultManagerApiService } from \"@internal/manager-api/service/DefaultManagerApiService\";\nimport { type ManagerApiService } from \"@internal/manager-api/service/ManagerApiService\";\nimport { DefaultSecureChannelDataSource } from \"@internal/secure-channel/data/DefaultSecureChannelDataSource\";\nimport { type SecureChannelDataSource } from \"@internal/secure-channel/data/SecureChannelDataSource\";\nimport { DefaultSecureChannelService } from \"@internal/secure-channel/service/DefaultSecureChannelService\";\nimport { type SecureChannelService } from \"@internal/secure-channel/service/SecureChannelService\";\nimport { type DmkConfig } from \"@root/src\";\n\nlet logger: LoggerPublisherService;\nlet sessionService: DeviceSessionService;\nlet managerApiDataSource: ManagerApiDataSource;\nlet managerApi: ManagerApiService;\nlet secureChannelDataSource: SecureChannelDataSource;\nlet secureChannel: SecureChannelService;\n\ndescribe(\"ListDeviceSessionsUseCase\", () => {\n beforeEach(() => {\n logger = new DefaultLoggerPublisherService(\n [],\n \"list-device-sessions-use-case-test\",\n );\n managerApiDataSource = new AxiosManagerApiDataSource({} as DmkConfig);\n managerApi = new DefaultManagerApiService(managerApiDataSource);\n secureChannelDataSource = new DefaultSecureChannelDataSource(\n {} as DmkConfig,\n );\n secureChannel = new DefaultSecureChannelService(secureChannelDataSource);\n sessionService = new DefaultDeviceSessionService(() => logger);\n });\n\n it(\"should list all device sessions\", () => {\n // given\n const deviceSession1 = deviceSessionStubBuilder(\n { id: \"1\" },\n () => logger,\n managerApi,\n secureChannel,\n DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS,\n );\n const deviceSession2 = deviceSessionStubBuilder(\n { id: \"2\" },\n () => logger,\n managerApi,\n secureChannel,\n DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS,\n );\n sessionService.addDeviceSession(deviceSession1);\n sessionService.addDeviceSession(deviceSession2);\n const useCase = new ListConnectedDevicesUseCase(\n sessionService,\n () => logger,\n );\n\n // when\n const response = useCase.execute();\n\n deviceSession1.close();\n deviceSession2.close();\n\n // then\n expect(response).toStrictEqual([\n new ConnectedDevice({\n transportConnectedDevice: deviceSession1.connectedDevice,\n sessionId: deviceSession1.id,\n }),\n new ConnectedDevice({\n transportConnectedDevice: deviceSession2.connectedDevice,\n sessionId: deviceSession2.id,\n }),\n ]);\n });\n\n it(\"should return empty array if no device sessions\", () => {\n // given\n const useCase = new ListConnectedDevicesUseCase(\n sessionService,\n () => logger,\n );\n\n // when\n const response = useCase.execute();\n\n // then\n expect(response).toStrictEqual([]);\n });\n});\n"],
|
5
|
+
"mappings": "AACA,OAAS,mBAAAA,MAAuB,uCAChC,OAAS,4CAAAC,MAAgD,4DACzD,OAAS,4BAAAC,MAAgC,oDACzC,OAAS,+BAAAC,MAAmC,+DAE5C,OAAS,+BAAAC,MAAmC,2DAC5C,OAAS,iCAAAC,MAAqC,mEAC9C,OAAS,6BAAAC,MAAiC,uDAE1C,OAAS,4BAAAC,MAAgC,yDAEzC,OAAS,kCAAAC,MAAsC,+DAE/C,OAAS,+BAAAC,MAAmC,+DAI5C,IAAIC,EACAC,EACAC,EACAC,EACAC,EACAC,EAEJ,SAAS,4BAA6B,IAAM,CAC1C,WAAW,IAAM,CACfL,EAAS,IAAIL,EACX,CAAC,EACD,oCACF,EACAO,EAAuB,IAAIN,EAA0B,CAAC,CAAc,EACpEO,EAAa,IAAIN,EAAyBK,CAAoB,EAC9DE,EAA0B,IAAIN,EAC5B,CAAC,CACH,EACAO,EAAgB,IAAIN,EAA4BK,CAAuB,EACvEH,EAAiB,IAAIR,EAA4B,IAAMO,CAAM,CAC/D,CAAC,EAED,GAAG,kCAAmC,IAAM,CAE1C,MAAMM,EAAiBd,EACrB,CAAE,GAAI,GAAI,EACV,IAAMQ,EACNG,EACAE,EACAd,CACF,EACMgB,EAAiBf,EACrB,CAAE,GAAI,GAAI,EACV,IAAMQ,EACNG,EACAE,EACAd,CACF,EACAU,EAAe,iBAAiBK,CAAc,EAC9CL,EAAe,iBAAiBM,CAAc,EAO9C,MAAMC,EANU,IAAId,EAClBO,EACA,IAAMD,CACR,EAGyB,QAAQ,EAEjCM,EAAe,MAAM,EACrBC,EAAe,MAAM,EAGrB,OAAOC,CAAQ,EAAE,cAAc,CAC7B,IAAIlB,EAAgB,CAClB,yBAA0BgB,EAAe,gBACzC,UAAWA,EAAe,EAC5B,CAAC,EACD,IAAIhB,EAAgB,CAClB,yBAA0BiB,EAAe,gBACzC,UAAWA,EAAe,EAC5B,CAAC,CACH,CAAC,CACH,CAAC,EAED,GAAG,kDAAmD,IAAM,CAQ1D,MAAMC,EANU,IAAId,EAClBO,EACA,IAAMD,CACR,EAGyB,QAAQ,EAGjC,OAAOQ,CAAQ,EAAE,cAAc,CAAC,CAAC,CACnC,CAAC,CACH,CAAC",
|
6
|
+
"names": ["ConnectedDevice", "DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS", "deviceSessionStubBuilder", "DefaultDeviceSessionService", "ListConnectedDevicesUseCase", "DefaultLoggerPublisherService", "AxiosManagerApiDataSource", "DefaultManagerApiService", "DefaultSecureChannelDataSource", "DefaultSecureChannelService", "logger", "sessionService", "managerApiDataSource", "managerApi", "secureChannelDataSource", "secureChannel", "deviceSession1", "deviceSession2", "response"]
|
7
7
|
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
var l=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var g=(s,e,r,o)=>{for(var i=o>1?void 0:o?m(e,r):e,t=s.length-1,n;t>=0;t--)(n=s[t])&&(i=(o?n(e,r,i):n(i))||i);return o&&i&&l(e,r,i),i},v=(s,e)=>(r,o)=>e(r,o,s);import{inject as p,injectable as S}from"inversify";import{map as a}from"rxjs";import{
|
1
|
+
var l=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var g=(s,e,r,o)=>{for(var i=o>1?void 0:o?m(e,r):e,t=s.length-1,n;t>=0;t--)(n=s[t])&&(i=(o?n(e,r,i):n(i))||i);return o&&i&&l(e,r,i),i},v=(s,e)=>(r,o)=>e(r,o,s);import{inject as p,injectable as S}from"inversify";import{map as a}from"rxjs";import{ConnectedDevice as b}from"../../../api/transport/model/ConnectedDevice";import{deviceSessionTypes as d}from"../../device-session/di/deviceSessionTypes";import{loggerTypes as f}from"../../logger-publisher/di/loggerTypes";let c=class{constructor(e,r){this._sessionService=e;this._logger=r("ListenToConnectedDeviceUseCase")}_logger;execute(){return this._logger.info("Observe connected devices"),this._sessionService.sessionsObs.pipe(a(e=>new b({transportConnectedDevice:e.connectedDevice,sessionId:e.id})))}};c=g([S(),v(0,p(d.DeviceSessionService)),v(1,p(f.LoggerPublisherServiceFactory))],c);export{c as ListenToConnectedDeviceUseCase};
|
2
2
|
//# sourceMappingURL=ListenToConnectedDeviceUseCase.js.map
|
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../../src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.ts"],
|
4
|
-
"sourcesContent": ["import { inject, injectable } from \"inversify\";\nimport { map, Observable } from \"rxjs\";\n\nimport { LoggerPublisherService } from \"@api/logger-publisher/service/LoggerPublisherService\";\nimport { deviceSessionTypes } from \"@internal/device-session/di/deviceSessionTypes\";\nimport type { DeviceSessionService } from \"@internal/device-session/service/DeviceSessionService\";\nimport { loggerTypes } from \"@internal/logger-publisher/di/loggerTypes\";\
|
5
|
-
"mappings": "iOAAA,OAAS,UAAAA,EAAQ,cAAAC,MAAkB,YACnC,OAAS,OAAAC,MAAuB,OAGhC,OAAS,sBAAAC,MAA0B,iDAEnC,OAAS,eAAAC,MAAmB,
|
6
|
-
"names": ["inject", "injectable", "map", "
|
4
|
+
"sourcesContent": ["import { inject, injectable } from \"inversify\";\nimport { map, Observable } from \"rxjs\";\n\nimport { LoggerPublisherService } from \"@api/logger-publisher/service/LoggerPublisherService\";\nimport { ConnectedDevice } from \"@api/transport/model/ConnectedDevice\";\nimport { deviceSessionTypes } from \"@internal/device-session/di/deviceSessionTypes\";\nimport type { DeviceSessionService } from \"@internal/device-session/service/DeviceSessionService\";\nimport { loggerTypes } from \"@internal/logger-publisher/di/loggerTypes\";\n\n/**\n * Listen to connected devices\n */\n@injectable()\nexport class ListenToConnectedDeviceUseCase {\n private readonly _logger: LoggerPublisherService;\n\n constructor(\n @inject(deviceSessionTypes.DeviceSessionService)\n private readonly _sessionService: DeviceSessionService,\n @inject(loggerTypes.LoggerPublisherServiceFactory)\n loggerFactory: (tag: string) => LoggerPublisherService,\n ) {\n this._logger = loggerFactory(\"ListenToConnectedDeviceUseCase\");\n }\n\n execute(): Observable<ConnectedDevice> {\n this._logger.info(\"Observe connected devices\");\n return this._sessionService.sessionsObs.pipe(\n map(\n (deviceSession) =>\n new ConnectedDevice({\n transportConnectedDevice: deviceSession.connectedDevice,\n sessionId: deviceSession.id,\n }),\n ),\n );\n }\n}\n"],
|
5
|
+
"mappings": "iOAAA,OAAS,UAAAA,EAAQ,cAAAC,MAAkB,YACnC,OAAS,OAAAC,MAAuB,OAGhC,OAAS,mBAAAC,MAAuB,uCAChC,OAAS,sBAAAC,MAA0B,iDAEnC,OAAS,eAAAC,MAAmB,4CAMrB,IAAMC,EAAN,KAAqC,CAG1C,YAEmBC,EAEjBC,EACA,CAHiB,qBAAAD,EAIjB,KAAK,QAAUC,EAAc,gCAAgC,CAC/D,CATiB,QAWjB,SAAuC,CACrC,YAAK,QAAQ,KAAK,2BAA2B,EACtC,KAAK,gBAAgB,YAAY,KACtCC,EACGC,GACC,IAAIC,EAAgB,CAClB,yBAA0BD,EAAc,gBACxC,UAAWA,EAAc,EAC3B,CAAC,CACL,CACF,CACF,CACF,EAxBaJ,EAANM,EAAA,CADNC,EAAW,EAKPC,EAAA,EAAAC,EAAOC,EAAmB,oBAAoB,GAE9CF,EAAA,EAAAC,EAAOE,EAAY,6BAA6B,IANxCX",
|
6
|
+
"names": ["inject", "injectable", "map", "ConnectedDevice", "deviceSessionTypes", "loggerTypes", "ListenToConnectedDeviceUseCase", "_sessionService", "loggerFactory", "map", "deviceSession", "ConnectedDevice", "__decorateClass", "injectable", "__decorateParam", "inject", "deviceSessionTypes", "loggerTypes"]
|
7
7
|
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import{ConnectedDevice as
|
1
|
+
import{ConnectedDevice as f}from"../../../api/transport/model/ConnectedDevice";import{connectedDeviceStubBuilder as D}from"../../../api/transport/model/TransportConnectedDevice.stub";import{DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS as d}from"../../device-session/data/DeviceSessionRefresherConst";import{deviceSessionStubBuilder as g}from"../../device-session/model/DeviceSession.stub";import{DefaultDeviceSessionService as C}from"../../device-session/service/DefaultDeviceSessionService";import{ListenToConnectedDeviceUseCase as b}from"../../discovery/use-case/ListenToConnectedDeviceUseCase";import{DefaultLoggerPublisherService as h}from"../../logger-publisher/service/DefaultLoggerPublisherService";import{AxiosManagerApiDataSource as A}from"../../manager-api/data/AxiosManagerApiDataSource";import{DefaultManagerApiService as w}from"../../manager-api/service/DefaultManagerApiService";import{DefaultSecureChannelDataSource as E}from"../../secure-channel/data/DefaultSecureChannelDataSource";import{DefaultSecureChannelService as y}from"../../secure-channel/service/DefaultSecureChannelService";vi.mock("@internal/manager-api/data/AxiosManagerApiDataSource");let e,r,t,n,c,a;const s="test-list-connected-device-session-id";describe("ListenToConnectedDevice",()=>{beforeEach(()=>{e=new h([],"listen-to-connected-device-use-case"),t=new A({}),n=new w(t),c=new E({}),a=new y(c),r=new C(()=>e)}),it("should emit an instance of ConnectedDevice",()=>new Promise((m,S)=>{const i=D({id:"test-list-connected-device-id"}),o=g({id:s,connectedDevice:i},()=>e,n,a,d),p=new b(r,()=>e).execute().subscribe({next(l){try{expect(l).toEqual(new f({transportConnectedDevice:i,sessionId:s})),u()}catch(v){S(v)}}});function u(){p.unsubscribe(),o.close(),m()}r.addDeviceSession(o)}))});
|
2
2
|
//# sourceMappingURL=ListenToConnectedDeviceUseCase.test.js.map
|
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../../src/internal/discovery/use-case/ListenToConnectedDeviceUseCase.test.ts"],
|
4
|
-
"sourcesContent": ["import { type DmkConfig } from \"@api/DmkConfig\";\nimport { type LoggerPublisherService } from \"@api/logger-publisher/service/LoggerPublisherService\";\nimport { ConnectedDevice } from \"@api/transport/model/ConnectedDevice\";\nimport { connectedDeviceStubBuilder } from \"@api/transport/model/TransportConnectedDevice.stub\";\nimport { deviceSessionStubBuilder } from \"@internal/device-session/model/DeviceSession.stub\";\nimport { DefaultDeviceSessionService } from \"@internal/device-session/service/DefaultDeviceSessionService\";\nimport { type DeviceSessionService } from \"@internal/device-session/service/DeviceSessionService\";\nimport { ListenToConnectedDeviceUseCase } from \"@internal/discovery/use-case/ListenToConnectedDeviceUseCase\";\nimport { DefaultLoggerPublisherService } from \"@internal/logger-publisher/service/DefaultLoggerPublisherService\";\nimport { AxiosManagerApiDataSource } from \"@internal/manager-api/data/AxiosManagerApiDataSource\";\nimport { type ManagerApiDataSource } from \"@internal/manager-api/data/ManagerApiDataSource\";\nimport { DefaultManagerApiService } from \"@internal/manager-api/service/DefaultManagerApiService\";\nimport { type ManagerApiService } from \"@internal/manager-api/service/ManagerApiService\";\nimport { DefaultSecureChannelDataSource } from \"@internal/secure-channel/data/DefaultSecureChannelDataSource\";\nimport { type SecureChannelDataSource } from \"@internal/secure-channel/data/SecureChannelDataSource\";\nimport { DefaultSecureChannelService } from \"@internal/secure-channel/service/DefaultSecureChannelService\";\nimport { type SecureChannelService } from \"@internal/secure-channel/service/SecureChannelService\";\n\nvi.mock(\"@internal/manager-api/data/AxiosManagerApiDataSource\");\n\nlet logger: LoggerPublisherService;\nlet sessionService: DeviceSessionService;\nlet managerApiDataSource: ManagerApiDataSource;\nlet managerApi: ManagerApiService;\nlet secureChannelDataSource: SecureChannelDataSource;\nlet secureChannel: SecureChannelService;\n\nconst fakeSessionId = \"test-list-connected-device-session-id\";\n\ndescribe(\"ListenToConnectedDevice\", () => {\n beforeEach(() => {\n logger = new DefaultLoggerPublisherService(\n [],\n \"listen-to-connected-device-use-case\",\n );\n managerApiDataSource = new AxiosManagerApiDataSource({} as DmkConfig);\n managerApi = new DefaultManagerApiService(managerApiDataSource);\n secureChannelDataSource = new DefaultSecureChannelDataSource(\n {} as DmkConfig,\n );\n secureChannel = new DefaultSecureChannelService(secureChannelDataSource);\n sessionService = new DefaultDeviceSessionService(() => logger);\n });\n\n it(\"should emit an instance of ConnectedDevice\", () =>\n new Promise<void>((resolve, reject) => {\n // given\n const connectedDevice = connectedDeviceStubBuilder({\n id: \"test-list-connected-device-id\",\n });\n const deviceSession = deviceSessionStubBuilder(\n { id: fakeSessionId, connectedDevice },\n () => logger,\n managerApi,\n secureChannel,\n );\n const observable = new ListenToConnectedDeviceUseCase(\n sessionService,\n () => logger,\n ).execute();\n\n const subscription = observable.subscribe({\n next(emittedConnectedDevice) {\n // then\n try {\n expect(emittedConnectedDevice).toEqual(\n new ConnectedDevice({\n transportConnectedDevice: connectedDevice,\n sessionId: fakeSessionId,\n }),\n );\n terminate();\n } catch (error) {\n reject(error);\n }\n },\n });\n\n function terminate() {\n subscription.unsubscribe();\n deviceSession.close();\n resolve();\n }\n\n // when\n sessionService.addDeviceSession(deviceSession);\n }));\n});\n"],
|
5
|
-
"mappings": "AAEA,OAAS,mBAAAA,MAAuB,uCAChC,OAAS,8BAAAC,MAAkC,qDAC3C,OAAS,4BAAAC,MAAgC,oDACzC,OAAS,+BAAAC,MAAmC,+DAE5C,OAAS,kCAAAC,MAAsC,8DAC/C,OAAS,iCAAAC,MAAqC,mEAC9C,OAAS,6BAAAC,MAAiC,uDAE1C,OAAS,4BAAAC,MAAgC,yDAEzC,OAAS,kCAAAC,MAAsC,+DAE/C,OAAS,+BAAAC,MAAmC,+DAG5C,GAAG,KAAK,sDAAsD,EAE9D,IAAIC,EACAC,EACAC,EACAC,EACAC,EACAC,EAEJ,MAAMC,EAAgB,wCAEtB,SAAS,0BAA2B,IAAM,CACxC,WAAW,IAAM,CACfN,EAAS,IAAIL,EACX,CAAC,EACD,qCACF,EACAO,EAAuB,IAAIN,EAA0B,CAAC,CAAc,EACpEO,EAAa,IAAIN,EAAyBK,CAAoB,EAC9DE,EAA0B,IAAIN,EAC5B,CAAC,CACH,EACAO,EAAgB,IAAIN,EAA4BK,CAAuB,EACvEH,EAAiB,IAAIR,EAA4B,IAAMO,CAAM,CAC/D,CAAC,EAED,GAAG,6CAA8C,IAC/C,IAAI,QAAc,CAACO,EAASC,IAAW,CAErC,MAAMC,
|
6
|
-
"names": ["ConnectedDevice", "connectedDeviceStubBuilder", "deviceSessionStubBuilder", "DefaultDeviceSessionService", "ListenToConnectedDeviceUseCase", "DefaultLoggerPublisherService", "AxiosManagerApiDataSource", "DefaultManagerApiService", "DefaultSecureChannelDataSource", "DefaultSecureChannelService", "logger", "sessionService", "managerApiDataSource", "managerApi", "secureChannelDataSource", "secureChannel", "fakeSessionId", "resolve", "reject", "connectedDevice", "deviceSession", "subscription", "emittedConnectedDevice", "terminate", "error"]
|
4
|
+
"sourcesContent": ["import { type DmkConfig } from \"@api/DmkConfig\";\nimport { type LoggerPublisherService } from \"@api/logger-publisher/service/LoggerPublisherService\";\nimport { ConnectedDevice } from \"@api/transport/model/ConnectedDevice\";\nimport { connectedDeviceStubBuilder } from \"@api/transport/model/TransportConnectedDevice.stub\";\nimport { DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS } from \"@internal/device-session/data/DeviceSessionRefresherConst\";\nimport { deviceSessionStubBuilder } from \"@internal/device-session/model/DeviceSession.stub\";\nimport { DefaultDeviceSessionService } from \"@internal/device-session/service/DefaultDeviceSessionService\";\nimport { type DeviceSessionService } from \"@internal/device-session/service/DeviceSessionService\";\nimport { ListenToConnectedDeviceUseCase } from \"@internal/discovery/use-case/ListenToConnectedDeviceUseCase\";\nimport { DefaultLoggerPublisherService } from \"@internal/logger-publisher/service/DefaultLoggerPublisherService\";\nimport { AxiosManagerApiDataSource } from \"@internal/manager-api/data/AxiosManagerApiDataSource\";\nimport { type ManagerApiDataSource } from \"@internal/manager-api/data/ManagerApiDataSource\";\nimport { DefaultManagerApiService } from \"@internal/manager-api/service/DefaultManagerApiService\";\nimport { type ManagerApiService } from \"@internal/manager-api/service/ManagerApiService\";\nimport { DefaultSecureChannelDataSource } from \"@internal/secure-channel/data/DefaultSecureChannelDataSource\";\nimport { type SecureChannelDataSource } from \"@internal/secure-channel/data/SecureChannelDataSource\";\nimport { DefaultSecureChannelService } from \"@internal/secure-channel/service/DefaultSecureChannelService\";\nimport { type SecureChannelService } from \"@internal/secure-channel/service/SecureChannelService\";\n\nvi.mock(\"@internal/manager-api/data/AxiosManagerApiDataSource\");\n\nlet logger: LoggerPublisherService;\nlet sessionService: DeviceSessionService;\nlet managerApiDataSource: ManagerApiDataSource;\nlet managerApi: ManagerApiService;\nlet secureChannelDataSource: SecureChannelDataSource;\nlet secureChannel: SecureChannelService;\n\nconst fakeSessionId = \"test-list-connected-device-session-id\";\n\ndescribe(\"ListenToConnectedDevice\", () => {\n beforeEach(() => {\n logger = new DefaultLoggerPublisherService(\n [],\n \"listen-to-connected-device-use-case\",\n );\n managerApiDataSource = new AxiosManagerApiDataSource({} as DmkConfig);\n managerApi = new DefaultManagerApiService(managerApiDataSource);\n secureChannelDataSource = new DefaultSecureChannelDataSource(\n {} as DmkConfig,\n );\n secureChannel = new DefaultSecureChannelService(secureChannelDataSource);\n sessionService = new DefaultDeviceSessionService(() => logger);\n });\n\n it(\"should emit an instance of ConnectedDevice\", () =>\n new Promise<void>((resolve, reject) => {\n // given\n const connectedDevice = connectedDeviceStubBuilder({\n id: \"test-list-connected-device-id\",\n });\n const deviceSession = deviceSessionStubBuilder(\n { id: fakeSessionId, connectedDevice },\n () => logger,\n managerApi,\n secureChannel,\n DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS,\n );\n const observable = new ListenToConnectedDeviceUseCase(\n sessionService,\n () => logger,\n ).execute();\n\n const subscription = observable.subscribe({\n next(emittedConnectedDevice) {\n // then\n try {\n expect(emittedConnectedDevice).toEqual(\n new ConnectedDevice({\n transportConnectedDevice: connectedDevice,\n sessionId: fakeSessionId,\n }),\n );\n terminate();\n } catch (error) {\n reject(error);\n }\n },\n });\n\n function terminate() {\n subscription.unsubscribe();\n deviceSession.close();\n resolve();\n }\n\n // when\n sessionService.addDeviceSession(deviceSession);\n }));\n});\n"],
|
5
|
+
"mappings": "AAEA,OAAS,mBAAAA,MAAuB,uCAChC,OAAS,8BAAAC,MAAkC,qDAC3C,OAAS,4CAAAC,MAAgD,4DACzD,OAAS,4BAAAC,MAAgC,oDACzC,OAAS,+BAAAC,MAAmC,+DAE5C,OAAS,kCAAAC,MAAsC,8DAC/C,OAAS,iCAAAC,MAAqC,mEAC9C,OAAS,6BAAAC,MAAiC,uDAE1C,OAAS,4BAAAC,MAAgC,yDAEzC,OAAS,kCAAAC,MAAsC,+DAE/C,OAAS,+BAAAC,MAAmC,+DAG5C,GAAG,KAAK,sDAAsD,EAE9D,IAAIC,EACAC,EACAC,EACAC,EACAC,EACAC,EAEJ,MAAMC,EAAgB,wCAEtB,SAAS,0BAA2B,IAAM,CACxC,WAAW,IAAM,CACfN,EAAS,IAAIL,EACX,CAAC,EACD,qCACF,EACAO,EAAuB,IAAIN,EAA0B,CAAC,CAAc,EACpEO,EAAa,IAAIN,EAAyBK,CAAoB,EAC9DE,EAA0B,IAAIN,EAC5B,CAAC,CACH,EACAO,EAAgB,IAAIN,EAA4BK,CAAuB,EACvEH,EAAiB,IAAIR,EAA4B,IAAMO,CAAM,CAC/D,CAAC,EAED,GAAG,6CAA8C,IAC/C,IAAI,QAAc,CAACO,EAASC,IAAW,CAErC,MAAMC,EAAkBnB,EAA2B,CACjD,GAAI,+BACN,CAAC,EACKoB,EAAgBlB,EACpB,CAAE,GAAIc,EAAe,gBAAAG,CAAgB,EACrC,IAAMT,EACNG,EACAE,EACAd,CACF,EAMMoB,EALa,IAAIjB,EACrBO,EACA,IAAMD,CACR,EAAE,QAAQ,EAEsB,UAAU,CACxC,KAAKY,EAAwB,CAE3B,GAAI,CACF,OAAOA,CAAsB,EAAE,QAC7B,IAAIvB,EAAgB,CAClB,yBAA0BoB,EAC1B,UAAWH,CACb,CAAC,CACH,EACAO,EAAU,CACZ,OAASC,EAAO,CACdN,EAAOM,CAAK,CACd,CACF,CACF,CAAC,EAED,SAASD,GAAY,CACnBF,EAAa,YAAY,EACzBD,EAAc,MAAM,EACpBH,EAAQ,CACV,CAGAN,EAAe,iBAAiBS,CAAa,CAC/C,CAAC,CAAC,CACN,CAAC",
|
6
|
+
"names": ["ConnectedDevice", "connectedDeviceStubBuilder", "DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS", "deviceSessionStubBuilder", "DefaultDeviceSessionService", "ListenToConnectedDeviceUseCase", "DefaultLoggerPublisherService", "AxiosManagerApiDataSource", "DefaultManagerApiService", "DefaultSecureChannelDataSource", "DefaultSecureChannelService", "logger", "sessionService", "managerApiDataSource", "managerApi", "secureChannelDataSource", "secureChannel", "fakeSessionId", "resolve", "reject", "connectedDevice", "deviceSession", "subscription", "emittedConnectedDevice", "terminate", "error"]
|
7
7
|
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
import
|
1
|
+
import t from"axios";import{Left as c,Right as s}from"purify-ts";import{BTC_APP as p,BTC_APP_METADATA as o,CUSTOM_LOCK_SCREEN_APP as h,CUSTOM_LOCK_SCREEN_APP_METADATA as l}from"../../../api/device-action/__test-utils__/data";import{HttpFetchApiError as n}from"../../manager-api/model/Errors";import{AxiosManagerApiDataSource as i}from"./AxiosManagerApiDataSource";vi.mock("axios");const d={id:17,target_id:"857735172"},u={id:361,perso:"perso_11"};describe("AxiosManagerApiDataSource",()=>{describe("getAppList",()=>{let r;beforeEach(()=>{r=new i({})}),afterEach(()=>{vi.clearAllMocks()}),it("should return a list of applications",async()=>{const e=[o,l];vi.spyOn(t,"get").mockResolvedValue({data:e});const a=await r.getAppList({targetId:"targetId",provider:42,firmwareVersionName:"firmwareVersionName"});expect(a).toEqual(s(e))}),it("should return an error if the request fails",async()=>{const e=new Error("fetch error");vi.spyOn(t,"get").mockRejectedValue(e);const a=await r.getAppList({targetId:"targetId",provider:42,firmwareVersionName:"firmwareVersionName"});expect(a).toEqual(c(new n(e)))})}),describe("getAppsByHash",()=>{describe("success cases",()=>{let r;beforeEach(()=>{r=new i({})}),afterEach(()=>{vi.clearAllMocks()}),it("with BTC app, should return the metadata",async()=>{vi.spyOn(t,"post").mockResolvedValue({data:[o]});const e=[p.appFullHash],a=await r.getAppsByHash({hashes:e});expect(a).toEqual(s([o]))}),it("with no apps, should return an empty list",async()=>{vi.spyOn(t,"post").mockResolvedValue({data:[]});const e=[],a=await r.getAppsByHash({hashes:e});expect(a).toEqual(s([]))}),it("with BTC app and custom lock screen, should return the metadata",async()=>{vi.spyOn(t,"post").mockResolvedValue({data:[o,l]});const e=[p.appFullHash,h.appFullHash],a=await r.getAppsByHash({hashes:e});expect(a).toEqual(s([o,l]))})}),describe("error cases",()=>{afterEach(()=>{vi.clearAllMocks()}),it("should throw an error if the request fails",async()=>{const r=new i({}),e=new Error("fetch error");vi.spyOn(t,"post").mockRejectedValue(e);const a=[p.appFullHash],m=await r.getAppsByHash({hashes:a});expect(m).toEqual(c(new n(e)))})})}),describe("getDeviceVersion",()=>{let r;beforeEach(()=>{r=new i({})}),afterEach(()=>{vi.clearAllMocks()}),it("should return a complete device version",async()=>{vi.spyOn(t,"get").mockResolvedValue({data:d});const e=await r.getDeviceVersion({targetId:"targetId",provider:42});expect(e).toEqual(s(d))}),it("should return an error if the request fails",async()=>{const e=new Error("fetch error");vi.spyOn(t,"get").mockRejectedValue(e);const a=await r.getDeviceVersion({targetId:"targetId",provider:42});expect(a).toEqual(c(new n(e)))})}),describe("getFirmwareVersion",()=>{let r;beforeEach(()=>{r=new i({})}),afterEach(()=>{vi.clearAllMocks()}),it("should return a complete firmware version",async()=>{vi.spyOn(t,"get").mockResolvedValue({data:u});const e=await r.getFirmwareVersion({version:"versionName",deviceId:42,provider:21});expect(e).toEqual(s(u))}),it("should return an error if the request fails",async()=>{const e=new Error("fetch error");vi.spyOn(t,"get").mockRejectedValue(e);const a=await r.getFirmwareVersion({version:"versionName",deviceId:42,provider:21});expect(a).toEqual(c(new n(e)))})})});
|
2
2
|
//# sourceMappingURL=AxiosManagerApiDataSource.test.js.map
|