@ledgerhq/device-management-kit 0.0.0-rn-hid-20250221112139 → 0.0.0-rn-ble-logs-20250416162013
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 +58 -8
- package/lib/cjs/package.json +4 -4
- package/lib/cjs/src/api/DeviceManagementKit.js +1 -1
- package/lib/cjs/src/api/DeviceManagementKit.js.map +3 -3
- package/lib/cjs/src/api/DeviceManagementKit.test.js +1 -1
- package/lib/cjs/src/api/DeviceManagementKit.test.js.map +3 -3
- package/lib/cjs/src/api/DeviceManagementKitBuilder.js +1 -1
- package/lib/cjs/src/api/DeviceManagementKitBuilder.js.map +2 -2
- package/lib/cjs/src/api/DmkConfig.js +1 -1
- package/lib/cjs/src/api/DmkConfig.js.map +1 -1
- package/lib/cjs/src/api/command/os/GetOsVersionCommand.js +1 -1
- package/lib/cjs/src/api/command/os/GetOsVersionCommand.js.map +3 -3
- package/lib/cjs/src/api/command/os/SecureElementFlagsParser.js +2 -0
- package/lib/cjs/src/api/command/os/SecureElementFlagsParser.js.map +7 -0
- package/lib/cjs/src/api/command/os/SecureElementFlagsParser.test.js +2 -0
- package/lib/cjs/src/api/command/os/SecureElementFlagsParser.test.js.map +7 -0
- package/lib/cjs/src/api/command/os/__mocks__/GetOsVersionCommand.js +1 -1
- package/lib/cjs/src/api/command/os/__mocks__/GetOsVersionCommand.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/SecureElementFlags.js +2 -0
- package/lib/cjs/src/api/device/SecureElementFlags.js.map +7 -0
- package/lib/cjs/src/api/device-action/DeviceAction.js +1 -1
- package/lib/cjs/src/api/device-action/DeviceAction.js.map +1 -1
- package/lib/cjs/src/api/device-action/__test-utils__/makeInternalApi.js +1 -1
- package/lib/cjs/src/api/device-action/__test-utils__/makeInternalApi.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-action/model/UserInteractionRequired.js +1 -1
- package/lib/cjs/src/api/device-action/model/UserInteractionRequired.js.map +2 -2
- package/lib/cjs/src/api/device-action/os/GetDeviceStatus/GetDeviceStatusDeviceAction.js +1 -1
- package/lib/cjs/src/api/device-action/os/GetDeviceStatus/GetDeviceStatusDeviceAction.js.map +2 -2
- package/lib/cjs/src/api/device-action/os/GetDeviceStatus/GetDeviceStatusDeviceAction.test.js +1 -1
- package/lib/cjs/src/api/device-action/os/GetDeviceStatus/GetDeviceStatusDeviceAction.test.js.map +2 -2
- package/lib/cjs/src/api/device-action/os/GoToDashboard/GoToDashboardDeviceAction.test.js +1 -1
- package/lib/cjs/src/api/device-action/os/GoToDashboard/GoToDashboardDeviceAction.test.js.map +2 -2
- package/lib/cjs/src/api/device-action/os/ListAppsWithMetadata/ListAppsWithMetadataDeviceAction.js +1 -1
- package/lib/cjs/src/api/device-action/os/ListAppsWithMetadata/ListAppsWithMetadataDeviceAction.js.map +3 -3
- package/lib/cjs/src/api/device-action/os/ListAppsWithMetadata/ListAppsWithMetadataDeviceAction.test.js +1 -1
- package/lib/cjs/src/api/device-action/os/ListAppsWithMetadata/ListAppsWithMetadataDeviceAction.test.js.map +3 -3
- package/lib/cjs/src/api/device-action/os/OpenAppDeviceAction/OpenAppDeviceAction.test.js +1 -1
- package/lib/cjs/src/api/device-action/os/OpenAppDeviceAction/OpenAppDeviceAction.test.js.map +2 -2
- package/lib/cjs/src/api/device-model/data/StaticDeviceModelDataSource.js.map +1 -1
- package/lib/cjs/src/api/device-session/DeviceSessionState.js +1 -1
- package/lib/cjs/src/api/device-session/DeviceSessionState.js.map +1 -1
- package/lib/cjs/src/api/device-session/use-case/DisableDeviceSessionRefresher.js +2 -0
- package/lib/cjs/src/api/device-session/use-case/DisableDeviceSessionRefresher.js.map +7 -0
- package/lib/cjs/src/api/device-session/use-case/DisableDeviceSessionRefresher.test.js +2 -0
- package/lib/cjs/src/api/device-session/use-case/DisableDeviceSessionRefresher.test.js.map +7 -0
- 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/constants.js +2 -0
- package/lib/cjs/src/api/secure-channel/constants.js.map +7 -0
- package/lib/cjs/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.js +2 -0
- package/lib/cjs/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.js.map +7 -0
- package/lib/cjs/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.js +2 -0
- package/lib/cjs/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.js.map +7 -0
- package/lib/cjs/src/api/secure-channel/device-action/GenuineCheck/types.js +2 -0
- package/lib/cjs/src/api/secure-channel/device-action/GenuineCheck/types.js.map +7 -0
- 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 +2 -0
- package/lib/cjs/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.js.map +7 -0
- package/lib/cjs/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.test.js +2 -0
- package/lib/cjs/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.test.js.map +7 -0
- package/lib/cjs/src/api/secure-channel/device-action/ListInstalledApps/types.js +2 -0
- package/lib/cjs/src/api/secure-channel/device-action/ListInstalledApps/types.js.map +7 -0
- 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/task/ConnectToSecureChannelTask.js +2 -0
- package/lib/cjs/src/api/secure-channel/task/ConnectToSecureChannelTask.js.map +7 -0
- package/lib/cjs/src/api/secure-channel/task/ConnectToSecureChannelTask.test.js +2 -0
- package/lib/cjs/src/api/secure-channel/task/ConnectToSecureChannelTask.test.js.map +7 -0
- package/lib/cjs/src/api/secure-channel/task/types.js +2 -0
- package/lib/cjs/src/api/secure-channel/task/types.js.map +7 -0
- package/lib/cjs/src/api/secure-channel/types.js +2 -0
- package/lib/cjs/src/api/secure-channel/types.js.map +7 -0
- package/lib/cjs/src/api/secure-channel/utils.js +2 -0
- package/lib/cjs/src/api/secure-channel/utils.js.map +7 -0
- package/lib/cjs/src/api/secure-channel/utils.test.js +2 -0
- package/lib/cjs/src/api/secure-channel/utils.test.js.map +7 -0
- package/lib/cjs/src/api/transport/model/DeviceConnection.js +1 -1
- package/lib/cjs/src/api/transport/model/DeviceConnection.js.map +1 -1
- package/lib/cjs/src/api/transport/model/DeviceConnectionStateMachine.js +1 -1
- package/lib/cjs/src/api/transport/model/DeviceConnectionStateMachine.js.map +3 -3
- package/lib/cjs/src/api/transport/model/Errors.js +1 -1
- package/lib/cjs/src/api/transport/model/Errors.js.map +3 -3
- 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/di.js +1 -1
- package/lib/cjs/src/di.js.map +2 -2
- 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/di/deviceSessionModule.js +1 -1
- package/lib/cjs/src/internal/device-session/di/deviceSessionModule.js.map +3 -3
- package/lib/cjs/src/internal/device-session/di/deviceSessionTypes.js +1 -1
- package/lib/cjs/src/internal/device-session/di/deviceSessionTypes.js.map +2 -2
- 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/DefaultApduSenderService.js +1 -1
- package/lib/cjs/src/internal/device-session/service/DefaultApduSenderService.js.map +2 -2
- 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 +2 -0
- package/lib/cjs/src/internal/device-session/service/RefresherService.js.map +7 -0
- package/lib/cjs/src/internal/device-session/service/RefresherService.test.js +2 -0
- package/lib/cjs/src/internal/device-session/service/RefresherService.test.js.map +7 -0
- 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/ConnectUseCase.test.js +1 -1
- package/lib/cjs/src/internal/discovery/use-case/ConnectUseCase.test.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/ListenToAvailableDevicesUseCase.js +1 -1
- package/lib/cjs/src/internal/discovery/use-case/ListenToAvailableDevicesUseCase.js.map +3 -3
- package/lib/cjs/src/internal/discovery/use-case/ListenToAvailableDevicesUseCase.test.js +1 -1
- package/lib/cjs/src/internal/discovery/use-case/ListenToAvailableDevicesUseCase.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/discovery/use-case/StartDiscoveringUseCase.js +1 -1
- package/lib/cjs/src/internal/discovery/use-case/StartDiscoveringUseCase.js.map +2 -2
- package/lib/cjs/src/internal/manager-api/data/AxiosManagerApiDataSource.js +1 -1
- package/lib/cjs/src/internal/manager-api/data/AxiosManagerApiDataSource.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 +3 -3
- package/lib/cjs/src/internal/manager-api/data/ManagerApiDataSource.js +1 -1
- package/lib/cjs/src/internal/manager-api/data/ManagerApiDataSource.js.map +1 -1
- package/lib/cjs/src/internal/manager-api/data/ManagerApiDto.js +1 -1
- package/lib/cjs/src/internal/manager-api/data/ManagerApiDto.js.map +1 -1
- package/lib/cjs/src/internal/manager-api/data/__mocks__/AxiosManagerApiDataSource.js +1 -1
- package/lib/cjs/src/internal/manager-api/data/__mocks__/AxiosManagerApiDataSource.js.map +2 -2
- package/lib/cjs/src/internal/manager-api/di/managerApiModule.js +1 -1
- package/lib/cjs/src/internal/manager-api/di/managerApiModule.js.map +3 -3
- package/lib/cjs/src/internal/manager-api/di/managerApiModule.test.js +1 -1
- package/lib/cjs/src/internal/manager-api/di/managerApiModule.test.js.map +2 -2
- package/lib/cjs/src/internal/manager-api/di/managerApiTypes.js +1 -1
- package/lib/cjs/src/internal/manager-api/di/managerApiTypes.js.map +2 -2
- package/lib/cjs/src/internal/manager-api/model/Application.js +1 -1
- package/lib/cjs/src/internal/manager-api/model/Application.js.map +1 -1
- package/lib/cjs/src/internal/manager-api/model/Const.js +1 -1
- package/lib/cjs/src/internal/manager-api/model/Const.js.map +3 -3
- package/lib/cjs/src/internal/manager-api/model/Params.js +2 -0
- package/lib/cjs/src/internal/manager-api/model/Params.js.map +7 -0
- package/lib/cjs/src/internal/manager-api/service/DefaultManagerApiService.js +1 -1
- package/lib/cjs/src/internal/manager-api/service/DefaultManagerApiService.js.map +3 -3
- package/lib/cjs/src/internal/manager-api/service/DefaultManagerApiService.test.js +1 -1
- package/lib/cjs/src/internal/manager-api/service/DefaultManagerApiService.test.js.map +3 -3
- package/lib/cjs/src/internal/manager-api/service/ManagerApiService.js +1 -1
- package/lib/cjs/src/internal/manager-api/service/ManagerApiService.js.map +1 -1
- package/lib/cjs/src/internal/manager-api/use-case/SetProviderUseCase.js +2 -0
- package/lib/cjs/src/internal/manager-api/use-case/SetProviderUseCase.js.map +7 -0
- package/lib/cjs/src/internal/manager-api/use-case/SetProviderUseCase.test.js +2 -0
- package/lib/cjs/src/internal/manager-api/use-case/SetProviderUseCase.test.js.map +7 -0
- package/lib/cjs/src/internal/secure-channel/data/DefaultSecureChannelDataSource.js +1 -1
- package/lib/cjs/src/internal/secure-channel/data/DefaultSecureChannelDataSource.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/data/SecureChannelDataSource.js.map +1 -1
- package/lib/cjs/src/internal/secure-channel/model/Errors.js +1 -1
- package/lib/cjs/src/internal/secure-channel/model/Errors.js.map +3 -3
- 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/cjs/src/internal/transport/di/transportModule.test.js +1 -1
- package/lib/cjs/src/internal/transport/di/transportModule.test.js.map +2 -2
- package/lib/esm/package.json +4 -4
- package/lib/esm/src/api/DeviceManagementKit.js +1 -1
- package/lib/esm/src/api/DeviceManagementKit.js.map +3 -3
- package/lib/esm/src/api/DeviceManagementKit.test.js +1 -1
- package/lib/esm/src/api/DeviceManagementKit.test.js.map +3 -3
- package/lib/esm/src/api/DeviceManagementKitBuilder.js +1 -1
- package/lib/esm/src/api/DeviceManagementKitBuilder.js.map +3 -3
- package/lib/esm/src/api/command/os/GetOsVersionCommand.js +1 -1
- package/lib/esm/src/api/command/os/GetOsVersionCommand.js.map +3 -3
- package/lib/esm/src/api/command/os/SecureElementFlagsParser.js +2 -0
- package/lib/esm/src/api/command/os/SecureElementFlagsParser.js.map +7 -0
- package/lib/esm/src/api/command/os/SecureElementFlagsParser.test.js +2 -0
- package/lib/esm/src/api/command/os/SecureElementFlagsParser.test.js.map +7 -0
- package/lib/esm/src/api/command/os/__mocks__/GetOsVersionCommand.js +1 -1
- package/lib/esm/src/api/command/os/__mocks__/GetOsVersionCommand.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/SecureElementFlags.js +1 -0
- package/lib/esm/src/api/device/SecureElementFlags.js.map +7 -0
- package/lib/esm/src/api/device-action/__test-utils__/makeInternalApi.js +1 -1
- package/lib/esm/src/api/device-action/__test-utils__/makeInternalApi.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-action/model/UserInteractionRequired.js +1 -1
- package/lib/esm/src/api/device-action/model/UserInteractionRequired.js.map +2 -2
- package/lib/esm/src/api/device-action/os/GetDeviceStatus/GetDeviceStatusDeviceAction.js +1 -1
- package/lib/esm/src/api/device-action/os/GetDeviceStatus/GetDeviceStatusDeviceAction.js.map +2 -2
- package/lib/esm/src/api/device-action/os/GetDeviceStatus/GetDeviceStatusDeviceAction.test.js +1 -1
- package/lib/esm/src/api/device-action/os/GetDeviceStatus/GetDeviceStatusDeviceAction.test.js.map +2 -2
- package/lib/esm/src/api/device-action/os/GoToDashboard/GoToDashboardDeviceAction.test.js +1 -1
- package/lib/esm/src/api/device-action/os/GoToDashboard/GoToDashboardDeviceAction.test.js.map +2 -2
- package/lib/esm/src/api/device-action/os/ListAppsWithMetadata/ListAppsWithMetadataDeviceAction.js +1 -1
- package/lib/esm/src/api/device-action/os/ListAppsWithMetadata/ListAppsWithMetadataDeviceAction.js.map +3 -3
- package/lib/esm/src/api/device-action/os/ListAppsWithMetadata/ListAppsWithMetadataDeviceAction.test.js +1 -1
- package/lib/esm/src/api/device-action/os/ListAppsWithMetadata/ListAppsWithMetadataDeviceAction.test.js.map +3 -3
- package/lib/esm/src/api/device-action/os/OpenAppDeviceAction/OpenAppDeviceAction.test.js +1 -1
- package/lib/esm/src/api/device-action/os/OpenAppDeviceAction/OpenAppDeviceAction.test.js.map +2 -2
- package/lib/esm/src/api/device-model/data/StaticDeviceModelDataSource.js.map +1 -1
- package/lib/esm/src/api/device-session/DeviceSessionState.js.map +1 -1
- package/lib/esm/src/api/device-session/use-case/DisableDeviceSessionRefresher.js +2 -0
- package/lib/esm/src/api/device-session/use-case/DisableDeviceSessionRefresher.js.map +7 -0
- package/lib/esm/src/api/device-session/use-case/DisableDeviceSessionRefresher.test.js +2 -0
- package/lib/esm/src/api/device-session/use-case/DisableDeviceSessionRefresher.test.js.map +7 -0
- 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/constants.js +2 -0
- package/lib/esm/src/api/secure-channel/constants.js.map +7 -0
- package/lib/esm/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.js +2 -0
- package/lib/esm/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.js.map +7 -0
- package/lib/esm/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.js +2 -0
- package/lib/esm/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.js.map +7 -0
- package/lib/esm/src/api/secure-channel/device-action/GenuineCheck/types.js +1 -0
- package/lib/esm/src/api/secure-channel/device-action/GenuineCheck/types.js.map +7 -0
- 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 +2 -0
- package/lib/esm/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.js.map +7 -0
- package/lib/esm/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.test.js +2 -0
- package/lib/esm/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.test.js.map +7 -0
- package/lib/esm/src/api/secure-channel/device-action/ListInstalledApps/types.js +2 -0
- package/lib/esm/src/api/secure-channel/device-action/ListInstalledApps/types.js.map +7 -0
- 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/task/ConnectToSecureChannelTask.js +2 -0
- package/lib/esm/src/api/secure-channel/task/ConnectToSecureChannelTask.js.map +7 -0
- package/lib/esm/src/api/secure-channel/task/ConnectToSecureChannelTask.test.js +2 -0
- package/lib/esm/src/api/secure-channel/task/ConnectToSecureChannelTask.test.js.map +7 -0
- package/lib/esm/src/api/secure-channel/task/types.js +2 -0
- package/lib/esm/src/api/secure-channel/task/types.js.map +7 -0
- package/lib/esm/src/api/secure-channel/types.js +1 -0
- package/lib/esm/src/api/secure-channel/types.js.map +7 -0
- package/lib/esm/src/api/secure-channel/utils.js +2 -0
- package/lib/esm/src/api/secure-channel/utils.js.map +7 -0
- package/lib/esm/src/api/secure-channel/utils.test.js +2 -0
- package/lib/esm/src/api/secure-channel/utils.test.js.map +7 -0
- package/lib/esm/src/api/transport/model/DeviceConnectionStateMachine.js +1 -1
- package/lib/esm/src/api/transport/model/DeviceConnectionStateMachine.js.map +3 -3
- package/lib/esm/src/api/transport/model/Errors.js +1 -1
- package/lib/esm/src/api/transport/model/Errors.js.map +3 -3
- 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/di.js +1 -1
- package/lib/esm/src/di.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/di/deviceSessionModule.js +1 -1
- package/lib/esm/src/internal/device-session/di/deviceSessionModule.js.map +3 -3
- package/lib/esm/src/internal/device-session/di/deviceSessionTypes.js +1 -1
- package/lib/esm/src/internal/device-session/di/deviceSessionTypes.js.map +2 -2
- 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/DefaultApduSenderService.js +1 -1
- package/lib/esm/src/internal/device-session/service/DefaultApduSenderService.js.map +2 -2
- 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 +2 -0
- package/lib/esm/src/internal/device-session/service/RefresherService.js.map +7 -0
- package/lib/esm/src/internal/device-session/service/RefresherService.test.js +2 -0
- package/lib/esm/src/internal/device-session/service/RefresherService.test.js.map +7 -0
- 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/ConnectUseCase.test.js +1 -1
- package/lib/esm/src/internal/discovery/use-case/ConnectUseCase.test.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/ListenToAvailableDevicesUseCase.js +1 -1
- package/lib/esm/src/internal/discovery/use-case/ListenToAvailableDevicesUseCase.js.map +3 -3
- package/lib/esm/src/internal/discovery/use-case/ListenToAvailableDevicesUseCase.test.js +1 -1
- package/lib/esm/src/internal/discovery/use-case/ListenToAvailableDevicesUseCase.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/discovery/use-case/StartDiscoveringUseCase.js +1 -1
- package/lib/esm/src/internal/discovery/use-case/StartDiscoveringUseCase.js.map +2 -2
- package/lib/esm/src/internal/manager-api/data/AxiosManagerApiDataSource.js +1 -1
- package/lib/esm/src/internal/manager-api/data/AxiosManagerApiDataSource.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 +3 -3
- package/lib/esm/src/internal/manager-api/data/ManagerApiDto.js.map +1 -1
- package/lib/esm/src/internal/manager-api/data/__mocks__/AxiosManagerApiDataSource.js +1 -1
- package/lib/esm/src/internal/manager-api/data/__mocks__/AxiosManagerApiDataSource.js.map +2 -2
- package/lib/esm/src/internal/manager-api/di/managerApiModule.js +1 -1
- package/lib/esm/src/internal/manager-api/di/managerApiModule.js.map +3 -3
- package/lib/esm/src/internal/manager-api/di/managerApiModule.test.js +1 -1
- package/lib/esm/src/internal/manager-api/di/managerApiModule.test.js.map +2 -2
- package/lib/esm/src/internal/manager-api/di/managerApiTypes.js +1 -1
- package/lib/esm/src/internal/manager-api/di/managerApiTypes.js.map +2 -2
- package/lib/esm/src/internal/manager-api/model/Application.js.map +1 -1
- package/lib/esm/src/internal/manager-api/model/Const.js +1 -1
- package/lib/esm/src/internal/manager-api/model/Const.js.map +3 -3
- package/lib/esm/src/internal/manager-api/model/Params.js +1 -0
- package/lib/esm/src/internal/manager-api/model/Params.js.map +7 -0
- package/lib/esm/src/internal/manager-api/service/DefaultManagerApiService.js +1 -1
- package/lib/esm/src/internal/manager-api/service/DefaultManagerApiService.js.map +3 -3
- package/lib/esm/src/internal/manager-api/service/DefaultManagerApiService.test.js +1 -1
- package/lib/esm/src/internal/manager-api/service/DefaultManagerApiService.test.js.map +3 -3
- package/lib/esm/src/internal/manager-api/use-case/SetProviderUseCase.js +2 -0
- package/lib/esm/src/internal/manager-api/use-case/SetProviderUseCase.js.map +7 -0
- package/lib/esm/src/internal/manager-api/use-case/SetProviderUseCase.test.js +2 -0
- package/lib/esm/src/internal/manager-api/use-case/SetProviderUseCase.test.js.map +7 -0
- package/lib/esm/src/internal/secure-channel/data/DefaultSecureChannelDataSource.js +1 -1
- package/lib/esm/src/internal/secure-channel/data/DefaultSecureChannelDataSource.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/model/Errors.js +1 -1
- package/lib/esm/src/internal/secure-channel/model/Errors.js.map +3 -3
- 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/esm/src/internal/transport/di/transportModule.test.js +1 -1
- package/lib/esm/src/internal/transport/di/transportModule.test.js.map +2 -2
- package/lib/types/src/api/DeviceManagementKit.d.ts +25 -9
- package/lib/types/src/api/DeviceManagementKit.d.ts.map +1 -1
- package/lib/types/src/api/DeviceManagementKitBuilder.d.ts.map +1 -1
- package/lib/types/src/api/DmkConfig.d.ts +1 -0
- package/lib/types/src/api/DmkConfig.d.ts.map +1 -1
- package/lib/types/src/api/command/os/GetOsVersionCommand.d.ts +8 -2
- package/lib/types/src/api/command/os/GetOsVersionCommand.d.ts.map +1 -1
- package/lib/types/src/api/command/os/SecureElementFlagsParser.d.ts +43 -0
- package/lib/types/src/api/command/os/SecureElementFlagsParser.d.ts.map +1 -0
- package/lib/types/src/api/command/os/SecureElementFlagsParser.test.d.ts +2 -0
- package/lib/types/src/api/command/os/SecureElementFlagsParser.test.d.ts.map +1 -0
- package/lib/types/src/api/command/os/__mocks__/GetOsVersionCommand.d.ts.map +1 -1
- package/lib/types/src/api/device/SecureElementFlags.d.ts +41 -0
- package/lib/types/src/api/device/SecureElementFlags.d.ts.map +1 -0
- package/lib/types/src/api/device-action/DeviceAction.d.ts +1 -0
- package/lib/types/src/api/device-action/DeviceAction.d.ts.map +1 -1
- package/lib/types/src/api/device-action/__test-utils__/makeInternalApi.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/device-action/model/UserInteractionRequired.d.ts +3 -2
- package/lib/types/src/api/device-action/model/UserInteractionRequired.d.ts.map +1 -1
- package/lib/types/src/api/device-action/os/GetDeviceStatus/GetDeviceStatusDeviceAction.d.ts.map +1 -1
- package/lib/types/src/api/device-action/os/ListAppsWithMetadata/ListAppsWithMetadataDeviceAction.d.ts +1 -1
- package/lib/types/src/api/device-action/os/ListAppsWithMetadata/ListAppsWithMetadataDeviceAction.d.ts.map +1 -1
- package/lib/types/src/api/device-session/DeviceSessionState.d.ts +4 -0
- package/lib/types/src/api/device-session/DeviceSessionState.d.ts.map +1 -1
- package/lib/types/src/api/device-session/use-case/{ToggleDeviceSessionRefresher.d.ts → DisableDeviceSessionRefresher.d.ts} +6 -6
- package/lib/types/src/api/device-session/use-case/DisableDeviceSessionRefresher.d.ts.map +1 -0
- package/lib/types/src/api/device-session/use-case/DisableDeviceSessionRefresher.test.d.ts +2 -0
- package/lib/types/src/api/device-session/use-case/DisableDeviceSessionRefresher.test.d.ts.map +1 -0
- package/lib/types/src/api/index.d.ts +5 -1
- package/lib/types/src/api/index.d.ts.map +1 -1
- package/lib/types/src/api/secure-channel/constants.d.ts +2 -0
- package/lib/types/src/api/secure-channel/constants.d.ts.map +1 -0
- package/lib/types/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.d.ts +8 -0
- package/lib/types/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.d.ts.map +1 -0
- package/lib/types/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.d.ts +2 -0
- package/lib/types/src/api/secure-channel/device-action/GenuineCheck/GenuineCheckDeviceAction.test.d.ts.map +1 -0
- package/lib/types/src/api/secure-channel/device-action/GenuineCheck/types.d.ts +48 -0
- package/lib/types/src/api/secure-channel/device-action/GenuineCheck/types.d.ts.map +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 +8 -0
- package/lib/types/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.d.ts.map +1 -0
- package/lib/types/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.test.d.ts +2 -0
- package/lib/types/src/api/secure-channel/device-action/ListInstalledApps/ListInstalledAppsDeviceAction.test.d.ts.map +1 -0
- package/lib/types/src/api/secure-channel/device-action/ListInstalledApps/types.d.ts +57 -0
- package/lib/types/src/api/secure-channel/device-action/ListInstalledApps/types.d.ts.map +1 -0
- 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/secure-channel/task/ConnectToSecureChannelTask.d.ts +23 -0
- package/lib/types/src/api/secure-channel/task/ConnectToSecureChannelTask.d.ts.map +1 -0
- package/lib/types/src/api/secure-channel/task/ConnectToSecureChannelTask.test.d.ts +2 -0
- package/lib/types/src/api/secure-channel/task/ConnectToSecureChannelTask.test.d.ts.map +1 -0
- package/lib/types/src/api/secure-channel/task/types.d.ts +105 -0
- package/lib/types/src/api/secure-channel/task/types.d.ts.map +1 -0
- package/lib/types/src/api/secure-channel/types.d.ts +4 -0
- package/lib/types/src/api/secure-channel/types.d.ts.map +1 -0
- package/lib/types/src/api/secure-channel/utils.d.ts +30 -0
- package/lib/types/src/api/secure-channel/utils.d.ts.map +1 -0
- package/lib/types/src/api/secure-channel/utils.test.d.ts +2 -0
- package/lib/types/src/api/secure-channel/utils.test.d.ts.map +1 -0
- package/lib/types/src/api/transport/model/DeviceConnection.d.ts +1 -1
- package/lib/types/src/api/transport/model/DeviceConnection.d.ts.map +1 -1
- package/lib/types/src/api/transport/model/DeviceConnectionStateMachine.d.ts +9 -7
- package/lib/types/src/api/transport/model/DeviceConnectionStateMachine.d.ts.map +1 -1
- package/lib/types/src/api/transport/model/Errors.d.ts +5 -0
- package/lib/types/src/api/transport/model/Errors.d.ts.map +1 -1
- package/lib/types/src/api/types.d.ts +4 -0
- package/lib/types/src/api/types.d.ts.map +1 -1
- package/lib/types/src/di.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/di/deviceSessionTypes.d.ts +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 +20 -8
- 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 +6 -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 +15 -0
- package/lib/types/src/internal/device-session/service/RefresherService.d.ts.map +1 -0
- package/lib/types/src/internal/device-session/service/RefresherService.test.d.ts +2 -0
- package/lib/types/src/internal/device-session/service/RefresherService.test.d.ts.map +1 -0
- 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/ListenToAvailableDevicesUseCase.d.ts +14 -3
- package/lib/types/src/internal/discovery/use-case/ListenToAvailableDevicesUseCase.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/discovery/use-case/StartDiscoveringUseCase.d.ts +1 -1
- package/lib/types/src/internal/discovery/use-case/StartDiscoveringUseCase.d.ts.map +1 -1
- package/lib/types/src/internal/manager-api/data/AxiosManagerApiDataSource.d.ts +10 -6
- package/lib/types/src/internal/manager-api/data/AxiosManagerApiDataSource.d.ts.map +1 -1
- package/lib/types/src/internal/manager-api/data/ManagerApiDataSource.d.ts +24 -9
- package/lib/types/src/internal/manager-api/data/ManagerApiDataSource.d.ts.map +1 -1
- package/lib/types/src/internal/manager-api/data/ManagerApiDto.d.ts +4 -1
- package/lib/types/src/internal/manager-api/data/ManagerApiDto.d.ts.map +1 -1
- package/lib/types/src/internal/manager-api/data/__mocks__/AxiosManagerApiDataSource.d.ts +3 -0
- package/lib/types/src/internal/manager-api/data/__mocks__/AxiosManagerApiDataSource.d.ts.map +1 -1
- package/lib/types/src/internal/manager-api/di/managerApiModule.d.ts.map +1 -1
- package/lib/types/src/internal/manager-api/di/managerApiTypes.d.ts +1 -0
- package/lib/types/src/internal/manager-api/di/managerApiTypes.d.ts.map +1 -1
- package/lib/types/src/internal/manager-api/model/Application.d.ts +4 -1
- package/lib/types/src/internal/manager-api/model/Application.d.ts.map +1 -1
- package/lib/types/src/internal/manager-api/model/Const.d.ts +1 -0
- package/lib/types/src/internal/manager-api/model/Const.d.ts.map +1 -1
- package/lib/types/src/internal/manager-api/model/Params.d.ts +37 -0
- package/lib/types/src/internal/manager-api/model/Params.d.ts.map +1 -0
- package/lib/types/src/internal/manager-api/service/DefaultManagerApiService.d.ts +7 -7
- package/lib/types/src/internal/manager-api/service/DefaultManagerApiService.d.ts.map +1 -1
- package/lib/types/src/internal/manager-api/service/ManagerApiService.d.ts +32 -4
- package/lib/types/src/internal/manager-api/service/ManagerApiService.d.ts.map +1 -1
- package/lib/types/src/internal/manager-api/use-case/SetProviderUseCase.d.ts +11 -0
- package/lib/types/src/internal/manager-api/use-case/SetProviderUseCase.d.ts.map +1 -0
- package/lib/types/src/internal/manager-api/use-case/SetProviderUseCase.test.d.ts +2 -0
- package/lib/types/src/internal/manager-api/use-case/SetProviderUseCase.test.d.ts.map +1 -0
- package/lib/types/src/internal/secure-channel/data/DefaultSecureChannelDataSource.d.ts +3 -3
- package/lib/types/src/internal/secure-channel/data/DefaultSecureChannelDataSource.d.ts.map +1 -1
- package/lib/types/src/internal/secure-channel/data/SecureChannelDataSource.d.ts +13 -13
- package/lib/types/src/internal/secure-channel/data/SecureChannelDataSource.d.ts.map +1 -1
- package/lib/types/src/internal/secure-channel/model/Errors.d.ts +6 -0
- package/lib/types/src/internal/secure-channel/model/Errors.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 +7 -7
- 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 -4
- 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 +4 -4
- package/lib/cjs/src/api/device-session/use-case/ToggleDeviceSessionRefresher.js +0 -2
- package/lib/cjs/src/api/device-session/use-case/ToggleDeviceSessionRefresher.js.map +0 -7
- package/lib/cjs/src/api/device-session/use-case/ToggleDeviceSessionRefresher.test.js +0 -2
- package/lib/cjs/src/api/device-session/use-case/ToggleDeviceSessionRefresher.test.js.map +0 -7
- package/lib/esm/src/api/device-session/use-case/ToggleDeviceSessionRefresher.js +0 -2
- package/lib/esm/src/api/device-session/use-case/ToggleDeviceSessionRefresher.js.map +0 -7
- package/lib/esm/src/api/device-session/use-case/ToggleDeviceSessionRefresher.test.js +0 -2
- package/lib/esm/src/api/device-session/use-case/ToggleDeviceSessionRefresher.test.js.map +0 -7
- package/lib/types/src/api/device-session/use-case/ToggleDeviceSessionRefresher.d.ts.map +0 -1
- package/lib/types/src/api/device-session/use-case/ToggleDeviceSessionRefresher.test.d.ts +0 -2
- package/lib/types/src/api/device-session/use-case/ToggleDeviceSessionRefresher.test.d.ts.map +0 -1
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../../src/internal/device-session/model/DeviceSessionRefresher.ts"],
|
4
|
-
"sourcesContent": ["import {
|
5
|
-
"mappings": "
|
6
|
-
"names": ["DeviceSessionRefresher_exports", "__export", "DeviceSessionRefresher", "__toCommonJS", "
|
4
|
+
"sourcesContent": ["import { type Subscription, timer } from \"rxjs\";\n\nimport { DeviceModelId } from \"@api/device/DeviceModel\";\nimport { type TransportConnectedDevice } from \"@api/transport/model/TransportConnectedDevice\";\nimport { type LoggerPublisherService } from \"@api/types\";\nimport {\n DEVICE_SESSION_REFRESHER_MINIMUM_POLLING_INTERVAL,\n DEVICE_SESSION_REFRESHER_POLLING_INTERVAL,\n} from \"@internal/device-session/data/DeviceSessionRefresherConst\";\nimport {\n type DeviceSessionEventDispatcher,\n SessionEvents,\n} from \"@internal/device-session/model/DeviceSessionEventDispatcher\";\n\nexport interface DeviceSessionRefresherOptions {\n isRefresherDisabled: boolean;\n pollingInterval?: number;\n}\n\nexport class DeviceSessionRefresher {\n private _refresherSubscription!: Subscription | undefined;\n private _refresherOptions: DeviceSessionRefresherOptions;\n private readonly _logger: LoggerPublisherService;\n private _connectedDeviceID: DeviceModelId;\n\n constructor(\n loggerModuleFactory: (tag: string) => LoggerPublisherService,\n refresherOptions: DeviceSessionRefresherOptions,\n private _sessionEventDispatcher: DeviceSessionEventDispatcher,\n connectedDevice: TransportConnectedDevice,\n ) {\n this._refresherOptions = refresherOptions;\n this._logger = loggerModuleFactory(\"device-session-refresher\");\n this._connectedDeviceID = connectedDevice.deviceModel.id;\n }\n\n public startRefresher(): void {\n if (this._refresherOptions.isRefresherDisabled) return;\n\n const pollingInterval =\n this.getValidPollingInterval(this._refresherOptions, this._logger) * 2;\n\n this._refresherSubscription = timer(0, pollingInterval).subscribe(() => {\n this._sessionEventDispatcher.dispatch({\n eventName: SessionEvents.REFRESH_NEEDED,\n });\n });\n }\n\n public stopRefresher(): void {\n if (this._refresherSubscription) {\n this._refresherSubscription.unsubscribe();\n this._refresherSubscription = undefined;\n this._logger.info(\"Refresher stopped.\");\n }\n }\n\n public restartRefresher(): void {\n this.stopRefresher();\n this.startRefresher();\n this._logger.info(\"Refresher restarted.\");\n }\n\n public destroy(): void {\n this.stopRefresher();\n }\n\n private getValidPollingInterval = (\n refresherOptions: DeviceSessionRefresherOptions,\n logger: LoggerPublisherService,\n ): number => {\n const { pollingInterval } = refresherOptions;\n switch (this._connectedDeviceID) {\n case DeviceModelId.NANO_S: {\n const defaultNanoPollingInterval =\n DEVICE_SESSION_REFRESHER_POLLING_INTERVAL * 2;\n if (\n pollingInterval !== undefined &&\n pollingInterval < defaultNanoPollingInterval\n ) {\n logger.warn(\n `Polling interval of ${pollingInterval} is too low, setting to minimum as ${defaultNanoPollingInterval}`,\n );\n return defaultNanoPollingInterval;\n }\n return pollingInterval ?? defaultNanoPollingInterval;\n }\n default:\n if (\n pollingInterval !== undefined &&\n pollingInterval < DEVICE_SESSION_REFRESHER_MINIMUM_POLLING_INTERVAL\n ) {\n logger.warn(\n `Polling interval of ${pollingInterval} is too low, setting to minimum as ${DEVICE_SESSION_REFRESHER_MINIMUM_POLLING_INTERVAL}`,\n );\n return DEVICE_SESSION_REFRESHER_MINIMUM_POLLING_INTERVAL;\n }\n\n return pollingInterval ?? DEVICE_SESSION_REFRESHER_POLLING_INTERVAL;\n }\n };\n}\n"],
|
5
|
+
"mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,4BAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAyC,gBAEzCC,EAA8B,mCAG9BC,EAGO,qEACPC,EAGO,uEAOA,MAAML,CAAuB,CAMlC,YACEM,EACAC,EACQC,EACRC,EACA,CAFQ,6BAAAD,EAGR,KAAK,kBAAoBD,EACzB,KAAK,QAAUD,EAAoB,0BAA0B,EAC7D,KAAK,mBAAqBG,EAAgB,YAAY,EACxD,CAdQ,uBACA,kBACS,QACT,mBAaD,gBAAuB,CAC5B,GAAI,KAAK,kBAAkB,oBAAqB,OAEhD,MAAMC,EACJ,KAAK,wBAAwB,KAAK,kBAAmB,KAAK,OAAO,EAAI,EAEvE,KAAK,0BAAyB,SAAM,EAAGA,CAAe,EAAE,UAAU,IAAM,CACtE,KAAK,wBAAwB,SAAS,CACpC,UAAW,gBAAc,cAC3B,CAAC,CACH,CAAC,CACH,CAEO,eAAsB,CACvB,KAAK,yBACP,KAAK,uBAAuB,YAAY,EACxC,KAAK,uBAAyB,OAC9B,KAAK,QAAQ,KAAK,oBAAoB,EAE1C,CAEO,kBAAyB,CAC9B,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,QAAQ,KAAK,sBAAsB,CAC1C,CAEO,SAAgB,CACrB,KAAK,cAAc,CACrB,CAEQ,wBAA0B,CAChCH,EACAI,IACW,CACX,KAAM,CAAE,gBAAAD,CAAgB,EAAIH,EAC5B,OAAQ,KAAK,mBAAoB,CAC/B,KAAK,gBAAc,OAAQ,CACzB,MAAMK,EACJ,4CAA4C,EAC9C,OACEF,IAAoB,QACpBA,EAAkBE,GAElBD,EAAO,KACL,uBAAuBD,CAAe,sCAAsCE,CAA0B,EACxG,EACOA,GAEFF,GAAmBE,CAC5B,CACA,QACE,OACEF,IAAoB,QACpBA,EAAkB,qDAElBC,EAAO,KACL,uBAAuBD,CAAe,sCAAsC,mDAAiD,EAC/H,EACO,qDAGFA,GAAmB,2CAC9B,CACF,CACF",
|
6
|
+
"names": ["DeviceSessionRefresher_exports", "__export", "DeviceSessionRefresher", "__toCommonJS", "import_rxjs", "import_DeviceModel", "import_DeviceSessionRefresherConst", "import_DeviceSessionEventDispatcher", "loggerModuleFactory", "refresherOptions", "_sessionEventDispatcher", "connectedDevice", "pollingInterval", "logger", "defaultNanoPollingInterval"]
|
7
7
|
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
"use strict";var
|
1
|
+
"use strict";var d=require("rxjs"),e=require("vitest"),v=require("../../../api/device/DeviceModel"),c=require("../../device-session/data/DeviceSessionRefresherConst"),h=require("../../device-session/model/DeviceSessionEventDispatcher"),n=require("./DeviceSessionRefresher");(0,e.describe)("DeviceSessionRefresher",()=>{let p,r,o;const l={deviceModel:{id:v.DeviceModelId.FLEX}},m={deviceModel:{id:v.DeviceModelId.NANO_S}},i=e.vi.fn(()=>o);let s;(0,e.beforeEach)(()=>{e.vi.useFakeTimers(),p=new d.Subject,r={listen:()=>p.asObservable(),dispatch:e.vi.fn()},o={info:e.vi.fn(),warn:e.vi.fn(),error:e.vi.fn(),debug:e.vi.fn(),subscribers:[]}}),(0,e.afterEach)(()=>{s?.destroy(),e.vi.useRealTimers(),e.vi.restoreAllMocks()}),(0,e.it)("should not start refresher if disabled",()=>{const t={isRefresherDisabled:!0,pollingInterval:1e3};s=new n.DeviceSessionRefresher(i,t,r,l),s.startRefresher(),e.vi.advanceTimersByTime(2e3),(0,e.expect)(r.dispatch).not.toHaveBeenCalled()}),(0,e.it)("should warn and use minimum polling interval for default device when provided interval is too low",()=>{const t=c.DEVICE_SESSION_REFRESHER_MINIMUM_POLLING_INTERVAL-100,a={isRefresherDisabled:!1,pollingInterval:t};s=new n.DeviceSessionRefresher(i,a,r,l),s.startRefresher();const f=`Polling interval of ${t} is too low, setting to minimum as ${c.DEVICE_SESSION_REFRESHER_MINIMUM_POLLING_INTERVAL}`;(0,e.expect)(o.warn).toHaveBeenCalledWith(f)}),(0,e.it)("should warn and use minimum polling interval for NANO_S device when provided interval is too low",()=>{const t=c.DEVICE_SESSION_REFRESHER_POLLING_INTERVAL*2,a=t-100,f={isRefresherDisabled:!1,pollingInterval:a};s=new n.DeviceSessionRefresher(i,f,r,m),s.startRefresher();const R=`Polling interval of ${a} is too low, setting to minimum as ${t}`;(0,e.expect)(o.warn).toHaveBeenCalledWith(R)}),(0,e.it)("should not warn when provided polling interval is valid for default device",()=>{const a={isRefresherDisabled:!1,pollingInterval:c.DEVICE_SESSION_REFRESHER_MINIMUM_POLLING_INTERVAL+100};s=new n.DeviceSessionRefresher(i,a,r,l),s.startRefresher(),(0,e.expect)(o.warn).not.toHaveBeenCalled()}),(0,e.it)("should dispatch refresh event on timer ticks",()=>{const t=c.DEVICE_SESSION_REFRESHER_MINIMUM_POLLING_INTERVAL+100,a={isRefresherDisabled:!1,pollingInterval:t};s=new n.DeviceSessionRefresher(i,a,r,l),s.startRefresher();const f=t*2;e.vi.advanceTimersByTime(f*3),(0,e.expect)(r.dispatch.mock.calls.length).toBe(4),(0,e.expect)(r.dispatch.mock.calls[0][0]).toEqual({eventName:h.SessionEvents.REFRESH_NEEDED})}),(0,e.it)("should stop refresher",()=>{const t={isRefresherDisabled:!1,pollingInterval:1e3};s=new n.DeviceSessionRefresher(i,t,r,l),s.startRefresher(),r.dispatch.mockClear(),s.stopRefresher(),e.vi.advanceTimersByTime(2e3),(0,e.expect)(r.dispatch).not.toHaveBeenCalled(),(0,e.expect)(o.info).toHaveBeenCalledWith("Refresher stopped.")}),(0,e.it)("should restart refresher",()=>{const t={isRefresherDisabled:!1,pollingInterval:1e3};s=new n.DeviceSessionRefresher(i,t,r,l),s.startRefresher(),r.dispatch.mockClear(),e.vi.clearAllTimers(),s.restartRefresher(),(0,e.expect)(o.info).toHaveBeenCalledWith("Refresher stopped."),(0,e.expect)(o.info).toHaveBeenCalledWith("Refresher restarted."),e.vi.advanceTimersByTime(2e3),(0,e.expect)(r.dispatch.mock.calls.length).toBeGreaterThan(0)}),(0,e.it)("should destroy refresher",()=>{const t={isRefresherDisabled:!1,pollingInterval:1e3};s=new n.DeviceSessionRefresher(i,t,r,l),s.startRefresher(),s.destroy(),e.vi.advanceTimersByTime(2e3),(0,e.expect)(r.dispatch).not.toHaveBeenCalled()})});
|
2
2
|
//# sourceMappingURL=DeviceSessionRefresher.test.js.map
|
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../../src/internal/device-session/model/DeviceSessionRefresher.test.ts"],
|
4
|
-
"sourcesContent": ["import {
|
5
|
-
"mappings": "aAAA,IAAAA,
|
6
|
-
"names": ["
|
4
|
+
"sourcesContent": ["import { Subject } from \"rxjs\";\nimport { afterEach, beforeEach, describe, expect, it, vi } from \"vitest\";\n\nimport { DeviceModelId } from \"@api/device/DeviceModel\";\nimport { type TransportConnectedDevice } from \"@api/transport/model/TransportConnectedDevice\";\nimport type { LoggerPublisherService } from \"@api/types\";\nimport {\n DEVICE_SESSION_REFRESHER_MINIMUM_POLLING_INTERVAL,\n DEVICE_SESSION_REFRESHER_POLLING_INTERVAL,\n} from \"@internal/device-session/data/DeviceSessionRefresherConst\";\nimport type {\n DeviceSessionEventDispatcher,\n NewEvent,\n} from \"@internal/device-session/model/DeviceSessionEventDispatcher\";\nimport { SessionEvents } from \"@internal/device-session/model/DeviceSessionEventDispatcher\";\n\nimport {\n DeviceSessionRefresher,\n type DeviceSessionRefresherOptions,\n} from \"./DeviceSessionRefresher\";\n\ndescribe(\"DeviceSessionRefresher\", () => {\n let subject: Subject<NewEvent>;\n let mockSessionEventDispatcher: DeviceSessionEventDispatcher;\n let mockLogger: LoggerPublisherService & {\n info: ReturnType<typeof vi.fn>;\n warn: ReturnType<typeof vi.fn>;\n error: ReturnType<typeof vi.fn>;\n debug: ReturnType<typeof vi.fn>;\n subscribers?: unknown[];\n };\n\n const stubDefaultDevice = {\n deviceModel: {\n id: DeviceModelId.FLEX,\n },\n } as TransportConnectedDevice;\n\n const stubNanoSDevice = {\n deviceModel: {\n id: DeviceModelId.NANO_S,\n },\n } as TransportConnectedDevice;\n\n const mockedLoggerModuleFactory = vi.fn(() => mockLogger);\n let refresher: DeviceSessionRefresher;\n\n beforeEach(() => {\n vi.useFakeTimers();\n subject = new Subject<NewEvent>();\n mockSessionEventDispatcher = {\n listen: () => subject.asObservable(),\n dispatch: vi.fn(),\n } as unknown as DeviceSessionEventDispatcher;\n mockLogger = {\n info: vi.fn(),\n warn: vi.fn(),\n error: vi.fn(),\n debug: vi.fn(),\n subscribers: [],\n };\n });\n\n afterEach(() => {\n refresher?.destroy();\n vi.useRealTimers();\n vi.restoreAllMocks();\n });\n\n it(\"should not start refresher if disabled\", () => {\n const options: DeviceSessionRefresherOptions = {\n isRefresherDisabled: true,\n pollingInterval: 1000,\n };\n\n refresher = new DeviceSessionRefresher(\n mockedLoggerModuleFactory,\n options,\n mockSessionEventDispatcher,\n stubDefaultDevice,\n );\n refresher.startRefresher();\n vi.advanceTimersByTime(2000);\n\n expect(mockSessionEventDispatcher.dispatch).not.toHaveBeenCalled();\n });\n\n it(\"should warn and use minimum polling interval for default device when provided interval is too low\", () => {\n const lowInterval = DEVICE_SESSION_REFRESHER_MINIMUM_POLLING_INTERVAL - 100;\n const options: DeviceSessionRefresherOptions = {\n isRefresherDisabled: false,\n pollingInterval: lowInterval,\n };\n\n refresher = new DeviceSessionRefresher(\n mockedLoggerModuleFactory,\n options,\n mockSessionEventDispatcher,\n stubDefaultDevice,\n );\n refresher.startRefresher();\n\n const expectedMessage = `Polling interval of ${lowInterval} is too low, setting to minimum as ${DEVICE_SESSION_REFRESHER_MINIMUM_POLLING_INTERVAL}`;\n expect(mockLogger.warn).toHaveBeenCalledWith(expectedMessage);\n });\n\n it(\"should warn and use minimum polling interval for NANO_S device when provided interval is too low\", () => {\n const defaultNanoPollingInterval =\n DEVICE_SESSION_REFRESHER_POLLING_INTERVAL * 2;\n const lowInterval = defaultNanoPollingInterval - 100;\n const options: DeviceSessionRefresherOptions = {\n isRefresherDisabled: false,\n pollingInterval: lowInterval,\n };\n\n refresher = new DeviceSessionRefresher(\n mockedLoggerModuleFactory,\n options,\n mockSessionEventDispatcher,\n stubNanoSDevice,\n );\n refresher.startRefresher();\n\n const expectedMessage = `Polling interval of ${lowInterval} is too low, setting to minimum as ${defaultNanoPollingInterval}`;\n expect(mockLogger.warn).toHaveBeenCalledWith(expectedMessage);\n });\n\n it(\"should not warn when provided polling interval is valid for default device\", () => {\n const validInterval =\n DEVICE_SESSION_REFRESHER_MINIMUM_POLLING_INTERVAL + 100;\n const options: DeviceSessionRefresherOptions = {\n isRefresherDisabled: false,\n pollingInterval: validInterval,\n };\n\n refresher = new DeviceSessionRefresher(\n mockedLoggerModuleFactory,\n options,\n mockSessionEventDispatcher,\n stubDefaultDevice,\n );\n refresher.startRefresher();\n\n expect(mockLogger.warn).not.toHaveBeenCalled();\n });\n\n it(\"should dispatch refresh event on timer ticks\", () => {\n const validInterval =\n DEVICE_SESSION_REFRESHER_MINIMUM_POLLING_INTERVAL + 100;\n const options: DeviceSessionRefresherOptions = {\n isRefresherDisabled: false,\n pollingInterval: validInterval,\n };\n\n refresher = new DeviceSessionRefresher(\n mockedLoggerModuleFactory,\n options,\n mockSessionEventDispatcher,\n stubDefaultDevice,\n );\n refresher.startRefresher();\n\n const timerInterval = validInterval * 2;\n\n vi.advanceTimersByTime(timerInterval * 3);\n\n expect(\n (mockSessionEventDispatcher.dispatch as ReturnType<typeof vi.fn>).mock\n .calls.length,\n ).toBe(4);\n expect(\n (mockSessionEventDispatcher.dispatch as ReturnType<typeof vi.fn>).mock\n .calls[0]![0],\n ).toEqual({\n eventName: SessionEvents.REFRESH_NEEDED,\n });\n });\n\n it(\"should stop refresher\", () => {\n const options: DeviceSessionRefresherOptions = {\n isRefresherDisabled: false,\n pollingInterval: 1000,\n };\n refresher = new DeviceSessionRefresher(\n mockedLoggerModuleFactory,\n options,\n mockSessionEventDispatcher,\n stubDefaultDevice,\n );\n refresher.startRefresher();\n (\n mockSessionEventDispatcher.dispatch as ReturnType<typeof vi.fn>\n ).mockClear();\n\n refresher.stopRefresher();\n vi.advanceTimersByTime(2000);\n\n expect(mockSessionEventDispatcher.dispatch).not.toHaveBeenCalled();\n expect(mockLogger.info).toHaveBeenCalledWith(\"Refresher stopped.\");\n });\n\n it(\"should restart refresher\", () => {\n const options: DeviceSessionRefresherOptions = {\n isRefresherDisabled: false,\n pollingInterval: 1000,\n };\n refresher = new DeviceSessionRefresher(\n mockedLoggerModuleFactory,\n options,\n mockSessionEventDispatcher,\n stubDefaultDevice,\n );\n refresher.startRefresher();\n (\n mockSessionEventDispatcher.dispatch as ReturnType<typeof vi.fn>\n ).mockClear();\n vi.clearAllTimers();\n\n refresher.restartRefresher();\n expect(mockLogger.info).toHaveBeenCalledWith(\"Refresher stopped.\");\n expect(mockLogger.info).toHaveBeenCalledWith(\"Refresher restarted.\");\n\n vi.advanceTimersByTime(2000);\n expect(\n (mockSessionEventDispatcher.dispatch as ReturnType<typeof vi.fn>).mock\n .calls.length,\n ).toBeGreaterThan(0);\n });\n\n it(\"should destroy refresher\", () => {\n const options: DeviceSessionRefresherOptions = {\n isRefresherDisabled: false,\n pollingInterval: 1000,\n };\n refresher = new DeviceSessionRefresher(\n mockedLoggerModuleFactory,\n options,\n mockSessionEventDispatcher,\n stubDefaultDevice,\n );\n refresher.startRefresher();\n\n refresher.destroy();\n vi.advanceTimersByTime(2000);\n\n expect(mockSessionEventDispatcher.dispatch).not.toHaveBeenCalled();\n });\n});\n"],
|
5
|
+
"mappings": "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",
|
6
|
+
"names": ["import_rxjs", "import_vitest", "import_DeviceModel", "import_DeviceSessionRefresherConst", "import_DeviceSessionEventDispatcher", "import_DeviceSessionRefresher", "subject", "mockSessionEventDispatcher", "mockLogger", "stubDefaultDevice", "stubNanoSDevice", "mockedLoggerModuleFactory", "refresher", "options", "lowInterval", "expectedMessage", "defaultNanoPollingInterval", "validInterval", "timerInterval"]
|
7
7
|
}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
"use strict";var c=Object.defineProperty;var S=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var u=Object.prototype.hasOwnProperty;var D=(i,e)=>{for(var s in e)c(i,s,{get:e[s],enumerable:!0})},d=(i,e,s,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of p(e))!u.call(i,n)&&n!==s&&c(i,n,{get:()=>e[n],enumerable:!(r=S(e,n))||r.enumerable});return i};var l=i=>d(c({},"__esModule",{value:!0}),i);var h={};D(h,{DeviceSessionStateHandler:()=>E});module.exports=l(h);var t=require("../../../api/index"),a=require("../../device-session/model/DeviceSessionEventDispatcher");class E{constructor(e,s,r,n,o){this._sessionEventDispatcher=s;this._connectedDevice=r;this._deviceState=n;this.setDeviceSessionState=o;this._subscription=this._sessionEventDispatcher.listen().subscribe(v=>this.mapEventAction(v)),this._logger=e("device-session-state-handler")}_subscription;_logger;_updateDeviceState(e){const s=this._parseDeviceStatus(e);if(s){const{sessionStateType:r,deviceStatus:n,currentApp:o}=s;this.setDeviceSessionState({sessionStateType:r,deviceStatus:n,deviceModelId:this._connectedDevice.deviceModel.id,currentApp:o,installedApps:[],isSecureConnectionAllowed:!1})}}mapEventAction=e=>{switch(e.eventName){case a.SessionEvents.COMMAND_SUCCEEDED:return this._updateDeviceState(e.eventData);case a.SessionEvents.DEVICE_STATE_UPDATE_BUSY:return this.setDeviceSessionState({...this._deviceState.getValue(),deviceStatus:t.DeviceStatus.BUSY});case a.SessionEvents.DEVICE_STATE_UPDATE_LOCKED:return this.setDeviceSessionState({...this._deviceState.getValue(),deviceStatus:t.DeviceStatus.LOCKED});case a.SessionEvents.DEVICE_STATE_UPDATE_CONNECTED:return this.setDeviceSessionState({...this._deviceState.getValue(),deviceStatus:t.DeviceStatus.CONNECTED});default:return null}};_parseDeviceStatus(e){return(0,t.isSuccessCommandResult)(e)?{sessionStateType:t.DeviceSessionStateType.ReadyWithoutSecureChannel,deviceStatus:t.DeviceStatus.CONNECTED,currentApp:{name:e.data.name,version:e.data.version}}:(this._logger.error("Error while parsing APDU response",{data:{parsedResponse:e}}),null)}unsubscribe(){this._subscription.unsubscribe()}}0&&(module.exports={DeviceSessionStateHandler});
|
2
|
+
//# sourceMappingURL=DeviceSessionStateHandler.js.map
|
@@ -0,0 +1,7 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../../../../src/internal/device-session/model/DeviceSessionStateHandler.ts"],
|
4
|
+
"sourcesContent": ["import { type BehaviorSubject, type Subscription } from \"rxjs\";\n\nimport { type DeviceSessionState } from \"@api/device-session/DeviceSessionState\";\nimport {\n DeviceSessionStateType,\n DeviceStatus,\n type GetAppAndVersionResponse,\n isSuccessCommandResult,\n type TransportConnectedDevice,\n} from \"@api/index\";\nimport { type CommandResult, type LoggerPublisherService } from \"@api/types\";\nimport {\n type DeviceSessionEventDispatcher,\n type NewEvent,\n SessionEvents,\n} from \"@internal/device-session/model/DeviceSessionEventDispatcher\";\n\nexport type SetDeviceSessionStateFn = (state: DeviceSessionState) => void;\n\ntype NewDeviceStatus = {\n sessionStateType: DeviceSessionStateType;\n deviceStatus: DeviceStatus;\n currentApp: {\n name: string;\n version: string;\n };\n};\n\nexport class DeviceSessionStateHandler {\n private _subscription: Subscription;\n private readonly _logger: LoggerPublisherService;\n\n constructor(\n loggerModuleFactory: (tag: string) => LoggerPublisherService,\n private _sessionEventDispatcher: DeviceSessionEventDispatcher,\n private _connectedDevice: TransportConnectedDevice,\n private _deviceState: BehaviorSubject<DeviceSessionState>,\n private setDeviceSessionState: SetDeviceSessionStateFn,\n ) {\n this._subscription = this._sessionEventDispatcher\n .listen()\n .subscribe((event) => this.mapEventAction(event));\n this._logger = loggerModuleFactory(\"device-session-state-handler\");\n }\n\n private _updateDeviceState(\n parsedResponse: CommandResult<GetAppAndVersionResponse>,\n ): void {\n const newDeviceStatus = this._parseDeviceStatus(parsedResponse);\n\n if (newDeviceStatus) {\n const { sessionStateType, deviceStatus, currentApp } = newDeviceStatus;\n\n this.setDeviceSessionState({\n sessionStateType,\n deviceStatus,\n deviceModelId: this._connectedDevice.deviceModel.id,\n currentApp,\n installedApps: [],\n isSecureConnectionAllowed: false,\n });\n }\n }\n\n private mapEventAction = (event: NewEvent) => {\n switch (event.eventName) {\n case SessionEvents.COMMAND_SUCCEEDED:\n return this._updateDeviceState(event.eventData);\n case SessionEvents.DEVICE_STATE_UPDATE_BUSY:\n return this.setDeviceSessionState({\n ...this._deviceState.getValue(),\n deviceStatus: DeviceStatus.BUSY,\n });\n case SessionEvents.DEVICE_STATE_UPDATE_LOCKED:\n return this.setDeviceSessionState({\n ...this._deviceState.getValue(),\n deviceStatus: DeviceStatus.LOCKED,\n });\n case SessionEvents.DEVICE_STATE_UPDATE_CONNECTED:\n return this.setDeviceSessionState({\n ...this._deviceState.getValue(),\n deviceStatus: DeviceStatus.CONNECTED,\n });\n default:\n return null;\n }\n };\n\n private _parseDeviceStatus(\n parsedResponse: CommandResult<GetAppAndVersionResponse>,\n ): NewDeviceStatus | null {\n if (isSuccessCommandResult(parsedResponse)) {\n return {\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n currentApp: {\n name: parsedResponse.data.name,\n version: parsedResponse.data.version,\n },\n };\n } else {\n this._logger.error(\"Error while parsing APDU response\", {\n data: { parsedResponse },\n });\n return null;\n }\n }\n\n public unsubscribe(): void {\n this._subscription.unsubscribe();\n }\n}\n"],
|
5
|
+
"mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,+BAAAE,IAAA,eAAAC,EAAAH,GAGA,IAAAI,EAMO,sBAEPC,EAIO,uEAaA,MAAMH,CAA0B,CAIrC,YACEI,EACQC,EACAC,EACAC,EACAC,EACR,CAJQ,6BAAAH,EACA,sBAAAC,EACA,kBAAAC,EACA,2BAAAC,EAER,KAAK,cAAgB,KAAK,wBACvB,OAAO,EACP,UAAWC,GAAU,KAAK,eAAeA,CAAK,CAAC,EAClD,KAAK,QAAUL,EAAoB,8BAA8B,CACnE,CAdQ,cACS,QAeT,mBACNM,EACM,CACN,MAAMC,EAAkB,KAAK,mBAAmBD,CAAc,EAE9D,GAAIC,EAAiB,CACnB,KAAM,CAAE,iBAAAC,EAAkB,aAAAC,EAAc,WAAAC,CAAW,EAAIH,EAEvD,KAAK,sBAAsB,CACzB,iBAAAC,EACA,aAAAC,EACA,cAAe,KAAK,iBAAiB,YAAY,GACjD,WAAAC,EACA,cAAe,CAAC,EAChB,0BAA2B,EAC7B,CAAC,CACH,CACF,CAEQ,eAAkBL,GAAoB,CAC5C,OAAQA,EAAM,UAAW,CACvB,KAAK,gBAAc,kBACjB,OAAO,KAAK,mBAAmBA,EAAM,SAAS,EAChD,KAAK,gBAAc,yBACjB,OAAO,KAAK,sBAAsB,CAChC,GAAG,KAAK,aAAa,SAAS,EAC9B,aAAc,eAAa,IAC7B,CAAC,EACH,KAAK,gBAAc,2BACjB,OAAO,KAAK,sBAAsB,CAChC,GAAG,KAAK,aAAa,SAAS,EAC9B,aAAc,eAAa,MAC7B,CAAC,EACH,KAAK,gBAAc,8BACjB,OAAO,KAAK,sBAAsB,CAChC,GAAG,KAAK,aAAa,SAAS,EAC9B,aAAc,eAAa,SAC7B,CAAC,EACH,QACE,OAAO,IACX,CACF,EAEQ,mBACNC,EACwB,CACxB,SAAI,0BAAuBA,CAAc,EAChC,CACL,iBAAkB,yBAAuB,0BACzC,aAAc,eAAa,UAC3B,WAAY,CACV,KAAMA,EAAe,KAAK,KAC1B,QAASA,EAAe,KAAK,OAC/B,CACF,GAEA,KAAK,QAAQ,MAAM,oCAAqC,CACtD,KAAM,CAAE,eAAAA,CAAe,CACzB,CAAC,EACM,KAEX,CAEO,aAAoB,CACzB,KAAK,cAAc,YAAY,CACjC,CACF",
|
6
|
+
"names": ["DeviceSessionStateHandler_exports", "__export", "DeviceSessionStateHandler", "__toCommonJS", "import_api", "import_DeviceSessionEventDispatcher", "loggerModuleFactory", "_sessionEventDispatcher", "_connectedDevice", "_deviceState", "setDeviceSessionState", "event", "parsedResponse", "newDeviceStatus", "sessionStateType", "deviceStatus", "currentApp"]
|
7
|
+
}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
"use strict";var r=require("rxjs"),t=require("vitest"),e=require("../../../api/index"),a=require("../../device-session/model/DeviceSessionEventDispatcher"),S=require("./DeviceSessionStateHandler");describe("DeviceSessionStateHandler",()=>{let n,d,c;const E=vi.fn(()=>c);let v,l,s,i;beforeEach(()=>{n=new r.Subject,d={listen:()=>n,dispatch:vi.fn()},c={error:vi.fn()},v={deviceModel:{id:"device-model-1"}},l=new r.BehaviorSubject({sessionStateType:e.DeviceSessionStateType.ReadyWithoutSecureChannel,deviceStatus:e.DeviceStatus.CONNECTED,deviceModelId:e.DeviceModelId.NANO_X,currentApp:{name:"",version:""},installedApps:[],isSecureConnectionAllowed:!1}),s=vi.fn(),i=new S.DeviceSessionStateHandler(E,d,v,l,s)}),afterEach(()=>{i&&typeof i.unsubscribe=="function"&&i.unsubscribe()}),it("updates device state on COMMAND_SUCCEEDED event with a successful response",()=>{const o={data:{name:"TestApp",version:"1.0.0"},status:e.CommandResultStatus.Success};n.next({eventName:a.SessionEvents.COMMAND_SUCCEEDED,eventData:o}),(0,t.expect)(s).toHaveBeenCalledWith({sessionStateType:e.DeviceSessionStateType.ReadyWithoutSecureChannel,deviceStatus:e.DeviceStatus.CONNECTED,deviceModelId:"device-model-1",currentApp:{name:"TestApp",version:"1.0.0"},installedApps:[],isSecureConnectionAllowed:!1})}),it("updates device state on DEVICE_STATE_UPDATE_BUSY event",()=>{n.next({eventName:a.SessionEvents.DEVICE_STATE_UPDATE_BUSY}),(0,t.expect)(s).toHaveBeenCalledWith(t.expect.objectContaining({deviceStatus:e.DeviceStatus.BUSY}))}),it("updates device state on DEVICE_STATE_UPDATE_CONNECTED event",()=>{n.next({eventName:a.SessionEvents.DEVICE_STATE_UPDATE_CONNECTED}),(0,t.expect)(s).toHaveBeenCalledWith(t.expect.objectContaining({deviceStatus:e.DeviceStatus.CONNECTED}))}),it("logs error and does not update state if command result is unsuccessful",()=>{const o={data:null,error:{_tag:"SomeOtherError"}};n.next({eventName:a.SessionEvents.COMMAND_SUCCEEDED,eventData:o}),(0,t.expect)(c.error).toHaveBeenCalledWith("Error while parsing APDU response",{data:{parsedResponse:o}}),(0,t.expect)(s).not.toHaveBeenCalled()}),it("does not update state if command result is not a success",()=>{const o={data:null,error:{_tag:"SomeOtherError"}};n.next({eventName:a.SessionEvents.COMMAND_SUCCEEDED,eventData:o}),(0,t.expect)(s).not.toHaveBeenCalled()})});
|
2
|
+
//# sourceMappingURL=DeviceSessionStateHandler.test.js.map
|
@@ -0,0 +1,7 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../../../../src/internal/device-session/model/DeviceSessionStateHandler.test.ts"],
|
4
|
+
"sourcesContent": ["import { BehaviorSubject, Subject } from \"rxjs\";\nimport { expect, type Mock } from \"vitest\";\n\nimport { type DeviceSessionState } from \"@api/device-session/DeviceSessionState\";\nimport {\n CommandResultStatus,\n DeviceModelId,\n DeviceSessionStateType,\n DeviceStatus,\n} from \"@api/index\";\nimport {\n type DeviceSessionEventDispatcher,\n type NewEvent,\n SessionEvents,\n} from \"@internal/device-session/model/DeviceSessionEventDispatcher\";\n\nimport {\n DeviceSessionStateHandler,\n type SetDeviceSessionStateFn,\n} from \"./DeviceSessionStateHandler\";\n\ndescribe(\"DeviceSessionStateHandler\", () => {\n let fakeEventSubject: Subject<NewEvent>;\n let fakeSessionEventDispatcher: DeviceSessionEventDispatcher;\n let mockLogger: {\n error: (message: string, meta?: Record<string, unknown>) => void;\n };\n const mockLoggerModuleFactory = vi.fn(() => mockLogger);\n let fakeConnectedDevice: { deviceModel: { id: string } };\n let deviceState: BehaviorSubject<DeviceSessionState>;\n let setDeviceSessionState: Mock<SetDeviceSessionStateFn>;\n let handler: DeviceSessionStateHandler;\n\n beforeEach(() => {\n fakeEventSubject = new Subject<NewEvent>();\n //@ts-expect-error mock\n fakeSessionEventDispatcher = {\n listen: () => fakeEventSubject,\n dispatch: vi.fn(),\n };\n\n mockLogger = {\n error: vi.fn(),\n };\n\n fakeConnectedDevice = {\n deviceModel: {\n id: \"device-model-1\",\n },\n };\n\n deviceState = new BehaviorSubject<DeviceSessionState>({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n deviceModelId: DeviceModelId.NANO_X,\n currentApp: { name: \"\", version: \"\" },\n installedApps: [],\n isSecureConnectionAllowed: false,\n });\n\n setDeviceSessionState = vi.fn();\n\n handler = new DeviceSessionStateHandler(\n //@ts-expect-error mock\n mockLoggerModuleFactory,\n fakeSessionEventDispatcher,\n fakeConnectedDevice,\n deviceState,\n setDeviceSessionState,\n );\n });\n\n afterEach(() => {\n if (handler && typeof handler.unsubscribe === \"function\") {\n handler.unsubscribe();\n }\n });\n\n it(\"updates device state on COMMAND_SUCCEEDED event with a successful response\", () => {\n // Given\n const fakeCommandResult = {\n data: {\n name: \"TestApp\",\n version: \"1.0.0\",\n },\n status: CommandResultStatus.Success,\n };\n\n // When\n fakeEventSubject.next({\n eventName: SessionEvents.COMMAND_SUCCEEDED,\n //@ts-expect-error mock\n eventData: fakeCommandResult,\n });\n\n // Then\n expect(setDeviceSessionState).toHaveBeenCalledWith({\n sessionStateType: DeviceSessionStateType.ReadyWithoutSecureChannel,\n deviceStatus: DeviceStatus.CONNECTED,\n deviceModelId: \"device-model-1\",\n currentApp: { name: \"TestApp\", version: \"1.0.0\" },\n installedApps: [],\n isSecureConnectionAllowed: false,\n });\n });\n\n it(\"updates device state on DEVICE_STATE_UPDATE_BUSY event\", () => {\n // When\n fakeEventSubject.next({\n eventName: SessionEvents.DEVICE_STATE_UPDATE_BUSY,\n });\n\n // Then\n expect(setDeviceSessionState).toHaveBeenCalledWith(\n expect.objectContaining({ deviceStatus: DeviceStatus.BUSY }),\n );\n });\n\n it(\"updates device state on DEVICE_STATE_UPDATE_CONNECTED event\", () => {\n // When\n fakeEventSubject.next({\n eventName: SessionEvents.DEVICE_STATE_UPDATE_CONNECTED,\n });\n\n // Then\n expect(setDeviceSessionState).toHaveBeenCalledWith(\n expect.objectContaining({ deviceStatus: DeviceStatus.CONNECTED }),\n );\n });\n\n it(\"logs error and does not update state if command result is unsuccessful\", () => {\n // Given\n const fakeErrorCommandResult = {\n data: null,\n error: { _tag: \"SomeOtherError\" },\n };\n\n // When\n fakeEventSubject.next({\n eventName: SessionEvents.COMMAND_SUCCEEDED,\n //@ts-expect-error mock\n eventData: fakeErrorCommandResult,\n });\n\n // Then\n expect(mockLogger.error).toHaveBeenCalledWith(\n \"Error while parsing APDU response\",\n { data: { parsedResponse: fakeErrorCommandResult } },\n );\n expect(setDeviceSessionState).not.toHaveBeenCalled();\n });\n\n it(\"does not update state if command result is not a success\", () => {\n // Given\n const fakeErrorCommandResult = {\n data: null,\n error: { _tag: \"SomeOtherError\" },\n };\n\n // When\n fakeEventSubject.next({\n eventName: SessionEvents.COMMAND_SUCCEEDED,\n //@ts-expect-error mock\n eventData: fakeErrorCommandResult,\n });\n\n // Then\n expect(setDeviceSessionState).not.toHaveBeenCalled();\n });\n});\n"],
|
5
|
+
"mappings": "aAAA,IAAAA,EAAyC,gBACzCC,EAAkC,kBAGlCC,EAKO,sBACPC,EAIO,uEAEPC,EAGO,uCAEP,SAAS,4BAA6B,IAAM,CAC1C,IAAIC,EACAC,EACAC,EAGJ,MAAMC,EAA0B,GAAG,GAAG,IAAMD,CAAU,EACtD,IAAIE,EACAC,EACAC,EACAC,EAEJ,WAAW,IAAM,CACfP,EAAmB,IAAI,UAEvBC,EAA6B,CAC3B,OAAQ,IAAMD,EACd,SAAU,GAAG,GAAG,CAClB,EAEAE,EAAa,CACX,MAAO,GAAG,GAAG,CACf,EAEAE,EAAsB,CACpB,YAAa,CACX,GAAI,gBACN,CACF,EAEAC,EAAc,IAAI,kBAAoC,CACpD,iBAAkB,yBAAuB,0BACzC,aAAc,eAAa,UAC3B,cAAe,gBAAc,OAC7B,WAAY,CAAE,KAAM,GAAI,QAAS,EAAG,EACpC,cAAe,CAAC,EAChB,0BAA2B,EAC7B,CAAC,EAEDC,EAAwB,GAAG,GAAG,EAE9BC,EAAU,IAAI,4BAEZJ,EACAF,EACAG,EACAC,EACAC,CACF,CACF,CAAC,EAED,UAAU,IAAM,CACVC,GAAW,OAAOA,EAAQ,aAAgB,YAC5CA,EAAQ,YAAY,CAExB,CAAC,EAED,GAAG,6EAA8E,IAAM,CAErF,MAAMC,EAAoB,CACxB,KAAM,CACJ,KAAM,UACN,QAAS,OACX,EACA,OAAQ,sBAAoB,OAC9B,EAGAR,EAAiB,KAAK,CACpB,UAAW,gBAAc,kBAEzB,UAAWQ,CACb,CAAC,KAGD,UAAOF,CAAqB,EAAE,qBAAqB,CACjD,iBAAkB,yBAAuB,0BACzC,aAAc,eAAa,UAC3B,cAAe,iBACf,WAAY,CAAE,KAAM,UAAW,QAAS,OAAQ,EAChD,cAAe,CAAC,EAChB,0BAA2B,EAC7B,CAAC,CACH,CAAC,EAED,GAAG,yDAA0D,IAAM,CAEjEN,EAAiB,KAAK,CACpB,UAAW,gBAAc,wBAC3B,CAAC,KAGD,UAAOM,CAAqB,EAAE,qBAC5B,SAAO,iBAAiB,CAAE,aAAc,eAAa,IAAK,CAAC,CAC7D,CACF,CAAC,EAED,GAAG,8DAA+D,IAAM,CAEtEN,EAAiB,KAAK,CACpB,UAAW,gBAAc,6BAC3B,CAAC,KAGD,UAAOM,CAAqB,EAAE,qBAC5B,SAAO,iBAAiB,CAAE,aAAc,eAAa,SAAU,CAAC,CAClE,CACF,CAAC,EAED,GAAG,yEAA0E,IAAM,CAEjF,MAAMG,EAAyB,CAC7B,KAAM,KACN,MAAO,CAAE,KAAM,gBAAiB,CAClC,EAGAT,EAAiB,KAAK,CACpB,UAAW,gBAAc,kBAEzB,UAAWS,CACb,CAAC,KAGD,UAAOP,EAAW,KAAK,EAAE,qBACvB,oCACA,CAAE,KAAM,CAAE,eAAgBO,CAAuB,CAAE,CACrD,KACA,UAAOH,CAAqB,EAAE,IAAI,iBAAiB,CACrD,CAAC,EAED,GAAG,2DAA4D,IAAM,CAEnE,MAAMG,EAAyB,CAC7B,KAAM,KACN,MAAO,CAAE,KAAM,gBAAiB,CAClC,EAGAT,EAAiB,KAAK,CACpB,UAAW,gBAAc,kBAEzB,UAAWS,CACb,CAAC,KAGD,UAAOH,CAAqB,EAAE,IAAI,iBAAiB,CACrD,CAAC,CACH,CAAC",
|
6
|
+
"names": ["import_rxjs", "import_vitest", "import_api", "import_DeviceSessionEventDispatcher", "import_DeviceSessionStateHandler", "fakeEventSubject", "fakeSessionEventDispatcher", "mockLogger", "mockLoggerModuleFactory", "fakeConnectedDevice", "deviceState", "setDeviceSessionState", "handler", "fakeCommandResult", "fakeErrorCommandResult"]
|
7
|
+
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
"use strict";var c=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var z=Object.getOwnPropertyNames;var
|
1
|
+
"use strict";var c=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var z=Object.getOwnPropertyNames;var v=Object.prototype.hasOwnProperty;var y=(a,e)=>{for(var t in e)c(a,t,{get:e[t],enumerable:!0})},E=(a,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of z(e))!v.call(a,i)&&i!==t&&c(a,i,{get:()=>e[i],enumerable:!(r=u(e,i))||r.enumerable});return a};var L=a=>E(c({},"__esModule",{value:!0}),a),f=(a,e,t,r)=>{for(var i=r>1?void 0:r?u(e,t):e,m=a.length-1,s;m>=0;m--)(s=a[m])&&(i=(r?s(e,t,i):s(i))||i);return r&&i&&c(e,t,i),i},F=(a,e)=>(t,r)=>e(t,r,a);var T={};y(T,{DefaultApduSenderService:()=>g});module.exports=L(T);var l=require("inversify"),o=require("purify-ts"),S=require("uuid"),n=require("../../../api/device-session/data/FramerConst"),d=require("../../../api/device-session/utils/FramerUtils"),h=require("../../device-session/model/Errors"),A=require("../../device-session/model/Frame"),_=require("../../device-session/model/FrameHeader"),b=require("../../logger-publisher/di/loggerTypes");let g=class{_frameSize;_channel;_padding;_logger;constructor({frameSize:e,channel:t=o.Maybe.zero(),padding:r=!1},i){this._frameSize=e,this._channel=t,this._padding=r,this._logger=i("DefaultApduSenderService")}getFrames(e){const t=[];let r=0,i=this.getFrameAtIndex(e,r);for(;i.isRight();)t.push(i.extract()),r+=1,i=this.getFrameAtIndex(e,r).mapLeft(m=>(m instanceof h.FramerOverflowError?this._logger.debug("Frames parsed",{data:{count:r}}):this._logger.error("Error while parsing frame",{data:{error:m}}),m));return t}getFrameAtIndex(e,t){const r=this.getFrameHeaderFrom(t,e.length),i=t*this._frameSize-this.getHeaderSizeSumFrom(t);if(i>e.length)return(0,o.Left)(new h.FramerOverflowError);if(r.getLength()>this._frameSize)return(0,o.Left)(new h.FramerApduError);const m=this._frameSize-r.getLength(),s=e.slice(t===0?0:i,t===0?m:i+this._frameSize-r.getLength()),p=this._padding?new Uint8Array(m).fill(0):new Uint8Array(s.length<m?s.length:m);p.set(s,0);const H=new A.Frame({header:r,data:p});return(0,o.Right)(H)}getFrameHeaderFrom(e,t){const r=new _.FrameHeader({uuid:(0,S.v4)(),channel:this._channel.map(i=>d.FramerUtils.getLastBytesFrom(i,n.CHANNEL_LENGTH)),headTag:new Uint8Array([n.HEAD_TAG]),index:d.FramerUtils.numberToByteArray(e,n.INDEX_LENGTH),length:this.getFrameHeaderSizeFromIndex(e),dataSize:o.Maybe.zero()});return e===0&&r.setDataSize(o.Maybe.of(d.FramerUtils.numberToByteArray(t,n.APDU_DATA_LENGTH_LENGTH))),r}getHeaderSizeSumFrom(e){let t=this.getFrameHeaderSizeFromIndex(0),r=1;for(;r<e;)t+=this.getFrameHeaderSizeFromIndex(r),r+=1;return t}getFrameHeaderSizeFromIndex(e){return this._channel.caseOf({Just:()=>n.CHANNEL_LENGTH,Nothing:()=>0})+n.INDEX_LENGTH+n.HEAD_TAG_LENGTH+(e===0?n.APDU_DATA_LENGTH_LENGTH:0)}};g=f([(0,l.injectable)(),F(1,(0,l.inject)(b.loggerTypes.LoggerPublisherServiceFactory))],g);0&&(module.exports={DefaultApduSenderService});
|
2
2
|
//# sourceMappingURL=DefaultApduSenderService.js.map
|
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../../src/internal/device-session/service/DefaultApduSenderService.ts"],
|
4
|
-
"sourcesContent": ["import { inject, injectable } from \"inversify\";\nimport { Either, Left, Maybe, Right } from \"purify-ts\";\nimport { v4 } from \"uuid\";\n\nimport {\n APDU_DATA_LENGTH_LENGTH,\n CHANNEL_LENGTH,\n HEAD_TAG,\n HEAD_TAG_LENGTH,\n INDEX_LENGTH,\n} from \"@api/device-session/data/FramerConst\";\nimport type {\n ApduSenderService,\n ApduSenderServiceConstructorArgs,\n} from \"@api/device-session/service/ApduSenderService\";\nimport { FramerUtils } from \"@api/device-session/utils/FramerUtils\";\nimport { LoggerPublisherService } from \"@api/logger-publisher/service/LoggerPublisherService\";\nimport {\n FramerApduError,\n FramerOverflowError,\n} from \"@internal/device-session/model/Errors\";\nimport { Frame } from \"@internal/device-session/model/Frame\";\nimport { FrameHeader } from \"@internal/device-session/model/FrameHeader\";\nimport { loggerTypes } from \"@internal/logger-publisher/di/loggerTypes\";\nimport { DmkError } from \"@root/src/api/Error\";\n/**\n * Default implementation of ApduSenderService\n *\n * Split APDU in an array of frames readies to send to a TransportConnectedDevice\n */\n@injectable()\nexport class DefaultApduSenderService implements ApduSenderService {\n protected _frameSize: number;\n protected _channel: Maybe<Uint8Array>;\n protected _padding: boolean;\n private _logger: LoggerPublisherService;\n\n /**\n * Constructor\n *\n * @param frameSize\n * @param channel\n * @param padding\n * @param loggerServiceFactory\n */\n constructor(\n {\n frameSize,\n channel = Maybe.zero(),\n padding = false,\n }: ApduSenderServiceConstructorArgs,\n @inject(loggerTypes.LoggerPublisherServiceFactory)\n loggerServiceFactory: (tag: string) => LoggerPublisherService,\n ) {\n this._frameSize = frameSize;\n this._channel = channel;\n this._padding = padding;\n this._logger = loggerServiceFactory(\"
|
5
|
-
"mappings": "okBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,8BAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAmC,qBACnCC,EAA2C,qBAC3CC,EAAmB,gBAEnBC,EAMO,gDAKPC,EAA4B,iDAE5BC,EAGO,iDACPC,EAAsB,gDACtBC,EAA4B,sDAC5BC,EAA4B,qDAQrB,IAAMC,EAAN,KAA4D,CACvD,WACA,SACA,SACF,QAUR,YACE,CACE,UAAAC,EACA,QAAAC,EAAU,QAAM,KAAK,EACrB,QAAAC,EAAU,EACZ,EAEAC,EACA,CACA,KAAK,WAAaH,EAClB,KAAK,SAAWC,EAChB,KAAK,SAAWC,EAChB,KAAK,QAAUC,EAAqB,
|
4
|
+
"sourcesContent": ["import { inject, injectable } from \"inversify\";\nimport { Either, Left, Maybe, Right } from \"purify-ts\";\nimport { v4 } from \"uuid\";\n\nimport {\n APDU_DATA_LENGTH_LENGTH,\n CHANNEL_LENGTH,\n HEAD_TAG,\n HEAD_TAG_LENGTH,\n INDEX_LENGTH,\n} from \"@api/device-session/data/FramerConst\";\nimport type {\n ApduSenderService,\n ApduSenderServiceConstructorArgs,\n} from \"@api/device-session/service/ApduSenderService\";\nimport { FramerUtils } from \"@api/device-session/utils/FramerUtils\";\nimport { LoggerPublisherService } from \"@api/logger-publisher/service/LoggerPublisherService\";\nimport {\n FramerApduError,\n FramerOverflowError,\n} from \"@internal/device-session/model/Errors\";\nimport { Frame } from \"@internal/device-session/model/Frame\";\nimport { FrameHeader } from \"@internal/device-session/model/FrameHeader\";\nimport { loggerTypes } from \"@internal/logger-publisher/di/loggerTypes\";\nimport { DmkError } from \"@root/src/api/Error\";\n/**\n * Default implementation of ApduSenderService\n *\n * Split APDU in an array of frames readies to send to a TransportConnectedDevice\n */\n@injectable()\nexport class DefaultApduSenderService implements ApduSenderService {\n protected _frameSize: number;\n protected _channel: Maybe<Uint8Array>;\n protected _padding: boolean;\n private _logger: LoggerPublisherService;\n\n /**\n * Constructor\n *\n * @param frameSize\n * @param channel\n * @param padding\n * @param loggerServiceFactory\n */\n constructor(\n {\n frameSize,\n channel = Maybe.zero(),\n padding = false,\n }: ApduSenderServiceConstructorArgs,\n @inject(loggerTypes.LoggerPublisherServiceFactory)\n loggerServiceFactory: (tag: string) => LoggerPublisherService,\n ) {\n this._frameSize = frameSize;\n this._channel = channel;\n this._padding = padding;\n this._logger = loggerServiceFactory(\"DefaultApduSenderService\");\n }\n\n /**\n * Get frames from apdu\n *\n * @param apdu\n */\n public getFrames(apdu: Uint8Array): Frame[] {\n const frames: Frame[] = [];\n let count = 0;\n let frame = this.getFrameAtIndex(apdu, count);\n\n while (frame.isRight()) {\n frames.push(frame.extract());\n count += 1;\n frame = this.getFrameAtIndex(apdu, count).mapLeft((error) => {\n if (error instanceof FramerOverflowError) {\n this._logger.debug(\"Frames parsed\", { data: { count } });\n } else {\n this._logger.error(\"Error while parsing frame\", { data: { error } });\n }\n return error;\n });\n }\n return frames;\n }\n\n /**\n * Get apdu frame at index\n * Split every {{PACKET_SIZE - HEADER_SIZE}} bytes of apdu\n * @param apdu\n * @param frameIndex\n * @private\n */\n private getFrameAtIndex(\n apdu: Uint8Array,\n frameIndex: number,\n ): Either<DmkError, Frame> {\n const header = this.getFrameHeaderFrom(frameIndex, apdu.length);\n const frameOffset =\n frameIndex * this._frameSize - this.getHeaderSizeSumFrom(frameIndex);\n\n if (frameOffset > apdu.length) {\n return Left(new FramerOverflowError());\n }\n if (header.getLength() > this._frameSize) {\n return Left(new FramerApduError());\n }\n const dataMaxSize = this._frameSize - header.getLength();\n const data = apdu.slice(\n frameIndex === 0 ? 0 : frameOffset,\n frameIndex === 0\n ? dataMaxSize\n : frameOffset + this._frameSize - header.getLength(),\n );\n const frameData = this._padding\n ? new Uint8Array(dataMaxSize).fill(0)\n : new Uint8Array(data.length < dataMaxSize ? data.length : dataMaxSize);\n frameData.set(data, 0);\n const frame = new Frame({\n header,\n data: frameData,\n });\n return Right(frame);\n }\n\n /**\n * Get frame header\n * @param frameIndex\n * @param apduSize\n * @private\n */\n private getFrameHeaderFrom(\n frameIndex: number,\n apduSize: number,\n ): FrameHeader {\n const header = new FrameHeader({\n uuid: v4(),\n channel: this._channel.map((channel) =>\n FramerUtils.getLastBytesFrom(channel, CHANNEL_LENGTH),\n ),\n headTag: new Uint8Array([HEAD_TAG]),\n index: FramerUtils.numberToByteArray(frameIndex, INDEX_LENGTH),\n length: this.getFrameHeaderSizeFromIndex(frameIndex),\n dataSize: Maybe.zero(),\n });\n if (frameIndex === 0) {\n header.setDataSize(\n Maybe.of(\n FramerUtils.numberToByteArray(apduSize, APDU_DATA_LENGTH_LENGTH),\n ),\n );\n }\n return header;\n }\n\n /**\n * Get frame offset\n * First frame has more bytes of header\n * Padding append means a 0 bytes is added at the end of each frame\n * @private\n * @param frameIndex\n */\n private getHeaderSizeSumFrom(frameIndex: number): number {\n let sum = this.getFrameHeaderSizeFromIndex(0);\n let i = 1;\n while (i < frameIndex) {\n sum += this.getFrameHeaderSizeFromIndex(i);\n i += 1;\n }\n return sum;\n }\n\n /**\n * Get frame header size\n * @private\n * @param frameIndex\n */\n private getFrameHeaderSizeFromIndex(frameIndex: number): number {\n return (\n this._channel.caseOf({\n Just: () => CHANNEL_LENGTH,\n Nothing: () => 0,\n }) +\n INDEX_LENGTH +\n HEAD_TAG_LENGTH +\n (frameIndex === 0 ? APDU_DATA_LENGTH_LENGTH : 0)\n );\n }\n}\n"],
|
5
|
+
"mappings": "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",
|
6
6
|
"names": ["DefaultApduSenderService_exports", "__export", "DefaultApduSenderService", "__toCommonJS", "import_inversify", "import_purify_ts", "import_uuid", "import_FramerConst", "import_FramerUtils", "import_Errors", "import_Frame", "import_FrameHeader", "import_loggerTypes", "DefaultApduSenderService", "frameSize", "channel", "padding", "loggerServiceFactory", "apdu", "frames", "count", "frame", "error", "frameIndex", "header", "frameOffset", "dataMaxSize", "data", "frameData", "apduSize", "sum", "i", "__decorateClass", "__decorateParam"]
|
7
7
|
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
"use strict";var r=require("purify-ts"),
|
1
|
+
"use strict";var r=require("purify-ts"),m=require("rxjs"),l=require("../../device-session/data/DeviceSessionRefresherConst"),v=require("../../device-session/model/DeviceSession.stub"),p=require("../../device-session/model/Errors"),D=require("../../logger-publisher/service/DefaultLoggerPublisherService"),f=require("../../manager-api/data/AxiosManagerApiDataSource"),g=require("../../manager-api/service/DefaultManagerApiService"),h=require("../../secure-channel/data/DefaultSecureChannelDataSource"),b=require("../../secure-channel/service/DefaultSecureChannelService"),E=require("./DefaultDeviceSessionService");vi.mock("@internal/logger-publisher/service/DefaultLoggerPublisherService");vi.mock("@internal/manager-api/data/AxiosManagerApiDataSource");let e,t,i,u,c,d,S;describe("DefaultDeviceSessionService",()=>{beforeEach(()=>{vi.restoreAllMocks(),t=new D.DefaultLoggerPublisherService([],"deviceSession"),e=new E.DefaultDeviceSessionService(()=>t),u=new f.AxiosManagerApiDataSource({}),c=new g.DefaultManagerApiService(u),d=new h.DefaultSecureChannelDataSource({}),S=new b.DefaultSecureChannelService(d),i=(0,v.deviceSessionStubBuilder)({},()=>t,c,S,l.DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS)}),afterEach(()=>{i.close()}),it("should have an empty sessions list",()=>{expect(e.getDeviceSessions()).toEqual([])}),it("should add a deviceSession",()=>{e.addDeviceSession(i),expect(e.getDeviceSessions()).toEqual([i])}),it("should not add a deviceSession if it already exists",()=>{e.addDeviceSession(i),e.addDeviceSession(i),expect(e.getDeviceSessions()).toEqual([i])}),it("should remove a deviceSession",()=>{e.addDeviceSession(i),e.removeDeviceSession(i.id),expect(e.getDeviceSessions()).toEqual([])}),it("should not remove a deviceSession if it does not exist",()=>{e.removeDeviceSession(i.id),expect(e.getDeviceSessions()).toEqual([])}),it("should get a deviceSession",()=>{e.addDeviceSession(i),expect(e.getDeviceSessionById(i.id)).toEqual(r.Either.of(i))}),it("should not get a deviceSession if it does not exist",()=>{expect(e.getDeviceSessionById(i.id)).toEqual((0,r.Left)(new p.DeviceSessionNotFound))}),it("should get all sessions",()=>{e.addDeviceSession(i),expect(e.getDeviceSessions()).toEqual([i])}),it("should retrieve sessionObs",()=>{expect(e.sessionsObs).toBeInstanceOf(m.Observable)}),it("should emit new session",()=>new Promise((s,o)=>{const n=e.sessionsObs.subscribe({next(a){try{expect(a).toStrictEqual(i),n.unsubscribe(),s()}catch(x){o(x)}}});e.addDeviceSession(i)})),it("should emit previous added session",()=>{const s=(0,v.deviceSessionStubBuilder)({id:"last-session"},()=>t,c,S,l.DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS),o=[];e.addDeviceSession(i),e.addDeviceSession(s);const n=e.sessionsObs.subscribe({next(a){o.push(a)}});s.close(),expect(o).toEqual([i,s]),n.unsubscribe()})});
|
2
2
|
//# sourceMappingURL=DefaultDeviceSessionService.test.js.map
|
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"version": 3,
|
3
3
|
"sources": ["../../../../../../src/internal/device-session/service/DefaultDeviceSessionService.test.ts"],
|
4
|
-
"sourcesContent": ["import { Either, Left } from \"purify-ts\";\nimport { Observable } from \"rxjs\";\n\nimport { type DmkConfig } from \"@api/DmkConfig\";\nimport { type DeviceSession } from \"@internal/device-session/model/DeviceSession\";\nimport { deviceSessionStubBuilder } from \"@internal/device-session/model/DeviceSession.stub\";\nimport { DeviceSessionNotFound } from \"@internal/device-session/model/Errors\";\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 { DefaultDeviceSessionService } from \"./DefaultDeviceSessionService\";\n\nvi.mock(\"@internal/logger-publisher/service/DefaultLoggerPublisherService\");\nvi.mock(\"@internal/manager-api/data/AxiosManagerApiDataSource\");\n\nlet sessionService: DefaultDeviceSessionService;\nlet loggerService: DefaultLoggerPublisherService;\nlet deviceSession: DeviceSession;\nlet managerApiDataSource: ManagerApiDataSource;\nlet managerApi: ManagerApiService;\nlet secureChannelDataSource: SecureChannelDataSource;\nlet secureChannel: SecureChannelService;\n\ndescribe(\"DefaultDeviceSessionService\", () => {\n beforeEach(() => {\n vi.restoreAllMocks();\n loggerService = new DefaultLoggerPublisherService([], \"deviceSession\");\n sessionService = new DefaultDeviceSessionService(() => loggerService);\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\n deviceSession = deviceSessionStubBuilder(\n {},\n () => loggerService,\n managerApi,\n secureChannel,\n );\n });\n\n afterEach(() => {\n deviceSession.close();\n });\n\n it(\"should have an empty sessions list\", () => {\n expect(sessionService.getDeviceSessions()).toEqual([]);\n });\n\n it(\"should add a deviceSession\", () => {\n sessionService.addDeviceSession(deviceSession);\n expect(sessionService.getDeviceSessions()).toEqual([deviceSession]);\n });\n\n it(\"should not add a deviceSession if it already exists\", () => {\n sessionService.addDeviceSession(deviceSession);\n sessionService.addDeviceSession(deviceSession);\n expect(sessionService.getDeviceSessions()).toEqual([deviceSession]);\n });\n\n it(\"should remove a deviceSession\", () => {\n sessionService.addDeviceSession(deviceSession);\n sessionService.removeDeviceSession(deviceSession.id);\n expect(sessionService.getDeviceSessions()).toEqual([]);\n });\n\n it(\"should not remove a deviceSession if it does not exist\", () => {\n sessionService.removeDeviceSession(deviceSession.id);\n expect(sessionService.getDeviceSessions()).toEqual([]);\n });\n\n it(\"should get a deviceSession\", () => {\n sessionService.addDeviceSession(deviceSession);\n expect(sessionService.getDeviceSessionById(deviceSession.id)).toEqual(\n Either.of(deviceSession),\n );\n });\n\n it(\"should not get a deviceSession if it does not exist\", () => {\n expect(sessionService.getDeviceSessionById(deviceSession.id)).toEqual(\n Left(new DeviceSessionNotFound()),\n );\n });\n\n it(\"should get all sessions\", () => {\n sessionService.addDeviceSession(deviceSession);\n expect(sessionService.getDeviceSessions()).toEqual([deviceSession]);\n });\n\n it(\"should retrieve sessionObs\", () => {\n expect(sessionService.sessionsObs).toBeInstanceOf(\n Observable<DeviceSession>,\n );\n });\n\n it(\"should emit new session\", () =>\n new Promise<void>((resolve, reject) => {\n const subscription = sessionService.sessionsObs.subscribe({\n next(emittedDeviceSession) {\n try {\n expect(emittedDeviceSession).toStrictEqual(deviceSession);\n subscription.unsubscribe();\n resolve();\n } catch (error) {\n reject(error);\n }\n },\n });\n sessionService.addDeviceSession(deviceSession);\n }));\n\n it(\"should emit previous added session\", () => {\n const lastDeviceSession = deviceSessionStubBuilder(\n { id: \"last-session\" },\n () => loggerService,\n managerApi,\n secureChannel,\n );\n const emittedSessions: DeviceSession[] = [];\n sessionService.addDeviceSession(deviceSession);\n sessionService.addDeviceSession(lastDeviceSession);\n\n const subscription = sessionService.sessionsObs.subscribe({\n next(emittedDeviceSession) {\n emittedSessions.push(emittedDeviceSession);\n },\n });\n lastDeviceSession.close();\n expect(emittedSessions).toEqual([deviceSession, lastDeviceSession]);\n subscription.unsubscribe();\n });\n});\n"],
|
5
|
-
"mappings": "aAAA,IAAAA,EAA6B,qBAC7BC,EAA2B,
|
6
|
-
"names": ["import_purify_ts", "import_rxjs", "import_DeviceSession", "import_Errors", "import_DefaultLoggerPublisherService", "import_AxiosManagerApiDataSource", "import_DefaultManagerApiService", "import_DefaultSecureChannelDataSource", "import_DefaultSecureChannelService", "import_DefaultDeviceSessionService", "sessionService", "loggerService", "deviceSession", "managerApiDataSource", "managerApi", "secureChannelDataSource", "secureChannel", "resolve", "reject", "subscription", "emittedDeviceSession", "error", "lastDeviceSession", "emittedSessions"]
|
4
|
+
"sourcesContent": ["import { Either, Left } from \"purify-ts\";\nimport { Observable } from \"rxjs\";\n\nimport { type DmkConfig } from \"@api/DmkConfig\";\nimport { DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS } from \"@internal/device-session/data/DeviceSessionRefresherConst\";\nimport { type DeviceSession } from \"@internal/device-session/model/DeviceSession\";\nimport { deviceSessionStubBuilder } from \"@internal/device-session/model/DeviceSession.stub\";\nimport { DeviceSessionNotFound } from \"@internal/device-session/model/Errors\";\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 { DefaultDeviceSessionService } from \"./DefaultDeviceSessionService\";\n\nvi.mock(\"@internal/logger-publisher/service/DefaultLoggerPublisherService\");\nvi.mock(\"@internal/manager-api/data/AxiosManagerApiDataSource\");\n\nlet sessionService: DefaultDeviceSessionService;\nlet loggerService: DefaultLoggerPublisherService;\nlet deviceSession: DeviceSession;\nlet managerApiDataSource: ManagerApiDataSource;\nlet managerApi: ManagerApiService;\nlet secureChannelDataSource: SecureChannelDataSource;\nlet secureChannel: SecureChannelService;\n\ndescribe(\"DefaultDeviceSessionService\", () => {\n beforeEach(() => {\n vi.restoreAllMocks();\n loggerService = new DefaultLoggerPublisherService([], \"deviceSession\");\n sessionService = new DefaultDeviceSessionService(() => loggerService);\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\n deviceSession = deviceSessionStubBuilder(\n {},\n () => loggerService,\n managerApi,\n secureChannel,\n DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS,\n );\n });\n\n afterEach(() => {\n deviceSession.close();\n });\n\n it(\"should have an empty sessions list\", () => {\n expect(sessionService.getDeviceSessions()).toEqual([]);\n });\n\n it(\"should add a deviceSession\", () => {\n sessionService.addDeviceSession(deviceSession);\n expect(sessionService.getDeviceSessions()).toEqual([deviceSession]);\n });\n\n it(\"should not add a deviceSession if it already exists\", () => {\n sessionService.addDeviceSession(deviceSession);\n sessionService.addDeviceSession(deviceSession);\n expect(sessionService.getDeviceSessions()).toEqual([deviceSession]);\n });\n\n it(\"should remove a deviceSession\", () => {\n sessionService.addDeviceSession(deviceSession);\n sessionService.removeDeviceSession(deviceSession.id);\n expect(sessionService.getDeviceSessions()).toEqual([]);\n });\n\n it(\"should not remove a deviceSession if it does not exist\", () => {\n sessionService.removeDeviceSession(deviceSession.id);\n expect(sessionService.getDeviceSessions()).toEqual([]);\n });\n\n it(\"should get a deviceSession\", () => {\n sessionService.addDeviceSession(deviceSession);\n expect(sessionService.getDeviceSessionById(deviceSession.id)).toEqual(\n Either.of(deviceSession),\n );\n });\n\n it(\"should not get a deviceSession if it does not exist\", () => {\n expect(sessionService.getDeviceSessionById(deviceSession.id)).toEqual(\n Left(new DeviceSessionNotFound()),\n );\n });\n\n it(\"should get all sessions\", () => {\n sessionService.addDeviceSession(deviceSession);\n expect(sessionService.getDeviceSessions()).toEqual([deviceSession]);\n });\n\n it(\"should retrieve sessionObs\", () => {\n expect(sessionService.sessionsObs).toBeInstanceOf(\n Observable<DeviceSession>,\n );\n });\n\n it(\"should emit new session\", () =>\n new Promise<void>((resolve, reject) => {\n const subscription = sessionService.sessionsObs.subscribe({\n next(emittedDeviceSession) {\n try {\n expect(emittedDeviceSession).toStrictEqual(deviceSession);\n subscription.unsubscribe();\n resolve();\n } catch (error) {\n reject(error);\n }\n },\n });\n sessionService.addDeviceSession(deviceSession);\n }));\n\n it(\"should emit previous added session\", () => {\n const lastDeviceSession = deviceSessionStubBuilder(\n { id: \"last-session\" },\n () => loggerService,\n managerApi,\n secureChannel,\n DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS,\n );\n const emittedSessions: DeviceSession[] = [];\n sessionService.addDeviceSession(deviceSession);\n sessionService.addDeviceSession(lastDeviceSession);\n\n const subscription = sessionService.sessionsObs.subscribe({\n next(emittedDeviceSession) {\n emittedSessions.push(emittedDeviceSession);\n },\n });\n lastDeviceSession.close();\n expect(emittedSessions).toEqual([deviceSession, lastDeviceSession]);\n subscription.unsubscribe();\n });\n});\n"],
|
5
|
+
"mappings": "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",
|
6
|
+
"names": ["import_purify_ts", "import_rxjs", "import_DeviceSessionRefresherConst", "import_DeviceSession", "import_Errors", "import_DefaultLoggerPublisherService", "import_AxiosManagerApiDataSource", "import_DefaultManagerApiService", "import_DefaultSecureChannelDataSource", "import_DefaultSecureChannelService", "import_DefaultDeviceSessionService", "sessionService", "loggerService", "deviceSession", "managerApiDataSource", "managerApi", "secureChannelDataSource", "secureChannel", "resolve", "reject", "subscription", "emittedDeviceSession", "error", "lastDeviceSession", "emittedSessions"]
|
7
7
|
}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
"use strict";var o=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var l=Object.prototype.hasOwnProperty;var h=(s,e)=>{for(var t in e)o(s,t,{get:e[t],enumerable:!0})},_=(s,e,t,u)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of c(e))!l.call(s,i)&&i!==t&&o(s,i,{get:()=>e[i],enumerable:!(u=r(e,i))||u.enumerable});return s};var a=s=>_(o({},"__esModule",{value:!0}),s);var n={};h(n,{MutexService:()=>d});module.exports=a(n);class d{_queue=[];_locked=!1;async lock(){return new Promise(e=>{const t=()=>{if(this._locked=!1,this._queue.length>0){const u=this._queue.shift();this._locked=!0,u()}};this._locked?this._queue.push(()=>e(t)):(this._locked=!0,e(t))})}}0&&(module.exports={MutexService});
|
2
|
+
//# sourceMappingURL=MutexService.js.map
|
@@ -0,0 +1,7 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../../../../src/internal/device-session/service/MutexService.ts"],
|
4
|
+
"sourcesContent": ["export class MutexService {\n private _queue: Array<() => void> = [];\n private _locked = false;\n\n async lock(): Promise<() => void> {\n return new Promise((resolve) => {\n const release = () => {\n this._locked = false;\n if (this._queue.length > 0) {\n const next = this._queue.shift();\n this._locked = true;\n next!();\n }\n };\n\n if (!this._locked) {\n this._locked = true;\n resolve(release);\n } else {\n this._queue.push(() => resolve(release));\n }\n });\n }\n}\n"],
|
5
|
+
"mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,kBAAAE,IAAA,eAAAC,EAAAH,GAAO,MAAME,CAAa,CAChB,OAA4B,CAAC,EAC7B,QAAU,GAElB,MAAM,MAA4B,CAChC,OAAO,IAAI,QAASE,GAAY,CAC9B,MAAMC,EAAU,IAAM,CAEpB,GADA,KAAK,QAAU,GACX,KAAK,OAAO,OAAS,EAAG,CAC1B,MAAMC,EAAO,KAAK,OAAO,MAAM,EAC/B,KAAK,QAAU,GACfA,EAAM,CACR,CACF,EAEK,KAAK,QAIR,KAAK,OAAO,KAAK,IAAMF,EAAQC,CAAO,CAAC,GAHvC,KAAK,QAAU,GACfD,EAAQC,CAAO,EAInB,CAAC,CACH,CACF",
|
6
|
+
"names": ["MutexService_exports", "__export", "MutexService", "__toCommonJS", "resolve", "release", "next"]
|
7
|
+
}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
"use strict";var e=require("vitest"),c=require("./MutexService");(0,e.describe)("MutexService",()=>{(0,e.it)("should immediately return a release function when not locked",async()=>{const t=await new c.MutexService().lock();(0,e.expect)(typeof t).toBe("function"),t()}),(0,e.it)("should queue subsequent lock calls until the lock is released",async()=>{const o=new c.MutexService,t=await o.lock();let s=!1;const l=o.lock().then(n=>{s=!0,n()});(0,e.expect)(s).toBe(!1),t(),await l,(0,e.expect)(s).toBe(!0)}),(0,e.it)("should queue multiple locks in FIFO order",async()=>{const o=new c.MutexService,t=[],s=await o.lock();t.push("first");const l=o.lock().then(r=>{t.push("second"),r()}),n=o.lock().then(r=>{t.push("third"),r()});t.push("afterqueue"),s(),await Promise.all([l,n]),(0,e.expect)(t).toEqual(["first","afterqueue","second","third"])})});
|
2
|
+
//# sourceMappingURL=MutexService.test.js.map
|
@@ -0,0 +1,7 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../../../../src/internal/device-session/service/MutexService.test.ts"],
|
4
|
+
"sourcesContent": ["import { describe, expect, it } from \"vitest\";\n\nimport { MutexService } from \"./MutexService\";\n\ndescribe(\"MutexService\", () => {\n it(\"should immediately return a release function when not locked\", async () => {\n // given\n const mutex = new MutexService();\n\n // when\n const release = await mutex.lock();\n\n // then\n expect(typeof release).toBe(\"function\");\n release();\n });\n\n it(\"should queue subsequent lock calls until the lock is released\", async () => {\n // given\n const mutex = new MutexService();\n const release1 = await mutex.lock();\n\n // when\n let lock2Resolved = false;\n const lock2Promise = mutex.lock().then((release2) => {\n lock2Resolved = true;\n release2();\n });\n\n // then\n expect(lock2Resolved).toBe(false);\n\n // when\n release1();\n await lock2Promise;\n\n // then\n expect(lock2Resolved).toBe(true);\n });\n\n it(\"should queue multiple locks in FIFO order\", async () => {\n // given\n const mutex = new MutexService();\n const order: string[] = [];\n\n // when\n const release1 = await mutex.lock();\n order.push(\"first\");\n const lock2Promise = mutex.lock().then((release2) => {\n order.push(\"second\");\n release2();\n });\n const lock3Promise = mutex.lock().then((release3) => {\n order.push(\"third\");\n release3();\n });\n\n // then\n order.push(\"afterqueue\");\n\n // when\n release1();\n await Promise.all([lock2Promise, lock3Promise]);\n\n // then\n expect(order).toEqual([\"first\", \"afterqueue\", \"second\", \"third\"]);\n });\n});\n"],
|
5
|
+
"mappings": "aAAA,IAAAA,EAAqC,kBAErCC,EAA6B,6BAE7B,YAAS,eAAgB,IAAM,IAC7B,MAAG,+DAAgE,SAAY,CAK7E,MAAMC,EAAU,MAHF,IAAI,eAAa,EAGH,KAAK,KAGjC,UAAO,OAAOA,CAAO,EAAE,KAAK,UAAU,EACtCA,EAAQ,CACV,CAAC,KAED,MAAG,gEAAiE,SAAY,CAE9E,MAAMC,EAAQ,IAAI,eACZC,EAAW,MAAMD,EAAM,KAAK,EAGlC,IAAIE,EAAgB,GACpB,MAAMC,EAAeH,EAAM,KAAK,EAAE,KAAMI,GAAa,CACnDF,EAAgB,GAChBE,EAAS,CACX,CAAC,KAGD,UAAOF,CAAa,EAAE,KAAK,EAAK,EAGhCD,EAAS,EACT,MAAME,KAGN,UAAOD,CAAa,EAAE,KAAK,EAAI,CACjC,CAAC,KAED,MAAG,4CAA6C,SAAY,CAE1D,MAAMF,EAAQ,IAAI,eACZK,EAAkB,CAAC,EAGnBJ,EAAW,MAAMD,EAAM,KAAK,EAClCK,EAAM,KAAK,OAAO,EAClB,MAAMF,EAAeH,EAAM,KAAK,EAAE,KAAMI,GAAa,CACnDC,EAAM,KAAK,QAAQ,EACnBD,EAAS,CACX,CAAC,EACKE,EAAeN,EAAM,KAAK,EAAE,KAAMO,GAAa,CACnDF,EAAM,KAAK,OAAO,EAClBE,EAAS,CACX,CAAC,EAGDF,EAAM,KAAK,YAAY,EAGvBJ,EAAS,EACT,MAAM,QAAQ,IAAI,CAACE,EAAcG,CAAY,CAAC,KAG9C,UAAOD,CAAK,EAAE,QAAQ,CAAC,QAAS,aAAc,SAAU,OAAO,CAAC,CAClE,CAAC,CACH,CAAC",
|
6
|
+
"names": ["import_vitest", "import_MutexService", "release", "mutex", "release1", "lock2Resolved", "lock2Promise", "release2", "order", "lock3Promise", "release3"]
|
7
|
+
}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
"use strict";var i=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var f=Object.prototype.hasOwnProperty;var a=(s,e)=>{for(var r in e)i(s,r,{get:e[r],enumerable:!0})},d=(s,e,r,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of c(e))!f.call(s,t)&&t!==r&&i(s,t,{get:()=>e[t],enumerable:!(o=h(e,t))||o.enumerable});return s};var n=s=>d(i({},"__esModule",{value:!0}),s);var v={};a(v,{RefresherService:()=>g});module.exports=n(v);var l=require("uuid");class g{constructor(e,r){this._refresher=r;this._logger=e("refresher-service")}_refresherBlockers=new Set;_logger;disableRefresher(e){const r=`${e}-${(0,l.v4)()}`;this.addRefresherBlocker(r),this._logger.debug("Refresher disabled",{data:{blockerId:r,blockers:Array.from(this._refresherBlockers)}});let o=!1;return()=>{o||(o=!0,this.removeRefresherBlocker(r),this._logger.debug("Refresher re-enabled",{data:{blockerId:r,blockers:Array.from(this._refresherBlockers)}}))}}addRefresherBlocker(e){const r=this._refresherBlockers.size;this._refresherBlockers.add(e),r===0&&this._refresher.stop()}removeRefresherBlocker(e){const r=this._refresherBlockers.size;this._refresherBlockers.delete(e),r>0&&this._refresherBlockers.size===0&&this._refresher.start()}}0&&(module.exports={RefresherService});
|
2
|
+
//# sourceMappingURL=RefresherService.js.map
|
@@ -0,0 +1,7 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../../../../src/internal/device-session/service/RefresherService.ts"],
|
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": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,sBAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAA6B,gBAStB,MAAMF,CAAiB,CAI5B,YACEG,EACiBC,EACjB,CADiB,gBAAAA,EAEjB,KAAK,QAAUD,EAAoB,mBAAmB,CACxD,CARiB,mBAAqB,IAAI,IACzB,QASV,iBAAiBE,EAAwB,CAC9C,MAAMC,EAAW,GAAGD,CAAE,OAAI,EAAAE,IAAO,CAAC,GAClC,KAAK,oBAAoBD,CAAQ,EAEjC,KAAK,QAAQ,MAAM,qBAAsB,CACvC,KAAM,CACJ,UAAWA,EACX,SAAU,MAAM,KAAK,KAAK,kBAAkB,CAC9C,CACF,CAAC,EAED,IAAIE,EAAmB,GAEvB,MAAO,IAAM,CACPA,IACJA,EAAmB,GACnB,KAAK,uBAAuBF,CAAQ,EAEpC,KAAK,QAAQ,MAAM,uBAAwB,CACzC,KAAM,CACJ,UAAWA,EACX,SAAU,MAAM,KAAK,KAAK,kBAAkB,CAC9C,CACF,CAAC,EACH,CACF,CAEQ,oBAAoBG,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": ["RefresherService_exports", "__export", "RefresherService", "__toCommonJS", "import_uuid", "loggerModuleFactory", "_refresher", "id", "uniqueId", "uuidv4", "hasBeenReenabled", "blockerId", "prevBlockersCount"]
|
7
|
+
}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
"use strict";var t=require("./RefresherService");let e;describe("RefresherService",()=>{let o;const s=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 t.RefresherService(s,e);expect(r).toBeDefined()}),describe("with only 1 blocker",()=>{it("should disable the refresher",()=>{new t.RefresherService(s,e).disableRefresher("test"),expect(e.stop).toHaveBeenCalled()}),it("should reenable the refresher",()=>{new t.RefresherService(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 t.RefresherService(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 t.RefresherService(s,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
|
+
//# sourceMappingURL=RefresherService.test.js.map
|
@@ -0,0 +1,7 @@
|
|
1
|
+
{
|
2
|
+
"version": 3,
|
3
|
+
"sources": ["../../../../../../src/internal/device-session/service/RefresherService.test.ts"],
|
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,IAAAA,EAA2D,8BAE3D,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,IAAI,mBAC3BD,EACAF,CACF,EACA,OAAOG,CAAgB,EAAE,YAAY,CACvC,CAAC,EAED,SAAS,sBAAuB,IAAM,CACpC,GAAG,+BAAgC,IAAM,CACd,IAAI,mBAC3BD,EACAF,CACF,EACiB,iBAAiB,MAAM,EACxC,OAAOA,EAAU,IAAI,EAAE,iBAAiB,CAC1C,CAAC,EAED,GAAG,gCAAiC,IAAM,CACf,IAAI,mBAC3BE,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,IAAI,mBAC3BD,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,IAAI,mBAC3BD,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": ["import_RefresherService", "refresher", "mockLogger", "mockedLoggerModuleFactory", "refresherService", "reenableRefresher1", "reenableRefresher2"]
|
7
|
+
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
"use strict";var S=require("../../device-session/model/DeviceSession.stub"),
|
1
|
+
"use strict";var S=require("../../device-session/data/DeviceSessionRefresherConst"),m=require("../../device-session/model/DeviceSession.stub"),p=require("../../device-session/service/DefaultDeviceSessionService"),l=require("../../device-session/use-case/CloseSessionsUseCase"),u=require("../../logger-publisher/service/DefaultLoggerPublisherService"),f=require("../../manager-api/data/AxiosManagerApiDataSource"),v=require("../../manager-api/service/DefaultManagerApiService"),D=require("../../secure-channel/data/DefaultSecureChannelDataSource"),g=require("../../secure-channel/service/DefaultSecureChannelService"),C=require("../../transport/service/__mocks__/DefaultTransportService");let o,i,t,a,n,r,c;describe("CloseSessionsUseCase",()=>{beforeEach(()=>{o=new u.DefaultLoggerPublisherService([],"close-sessions-use-case-test"),i=new f.AxiosManagerApiDataSource({}),t=new v.DefaultManagerApiService(i),a=new D.DefaultSecureChannelDataSource({}),n=new g.DefaultSecureChannelService(a),r=new p.DefaultDeviceSessionService(()=>o),c=new C.DefaultTransportService}),it("should be able to close every session",()=>{[...Array(10).keys()].map(e=>{const s=(0,m.deviceSessionStubBuilder)({id:e.toString()},()=>o,t,n,S.DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS);return vi.spyOn(s,"close"),s}).forEach(e=>r.addDeviceSession(e)),new l.CloseSessionsUseCase(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,IAAAA,EAAyC,6DACzCC,EAA4C,wEAE5CC,EAAqC,kEACrCC,EAA8C,4EAC9CC,EAA0C,gEAE1CC,EAAyC,kEAEzCC,EAA+C,wEAE/CC,EAA4C,wEAE5CC,EAAwC,yEAExC,IAAIC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAGJ,SAAS,uBAAwB,IAAM,CACrC,WAAW,IAAM,CACfN,EAAS,IAAI,gCACX,CAAC,EACD,8BACF,EACAC,EAAuB,IAAI,4BAA0B,CAAC,CAAc,EACpEC,EAAa,IAAI,2BAAyBD,CAAoB,EAC9DE,EAA0B,IAAI,iCAC5B,CAAC,CACH,EACAC,EAAgB,IAAI,8BAA4BD,CAAuB,EACvEE,EAAiB,IAAI,8BAA4B,IAAML,CAAM,EAC7DM,EAAmB,IAAI,yBACzB,CAAC,EAED,GAAG,wCAAyC,IAAM,CAE/B,CAAC,GAAG,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,IAAKC,GAAO,CACjD,MAAMC,KAAU,4BACd,CAAE,GAAID,EAAG,SAAS,CAAE,EACpB,IAAMP,EACNE,EACAE,
|
6
|
-
"names": ["import_DeviceSession", "import_DefaultDeviceSessionService", "import_CloseSessionsUseCase", "import_DefaultLoggerPublisherService", "import_AxiosManagerApiDataSource", "import_DefaultManagerApiService", "import_DefaultSecureChannelDataSource", "import_DefaultSecureChannelService", "import_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,IAAAA,EAAyD,qEACzDC,EAAyC,6DACzCC,EAA4C,wEAE5CC,EAAqC,kEACrCC,EAA8C,4EAC9CC,EAA0C,gEAE1CC,EAAyC,kEAEzCC,EAA+C,wEAE/CC,EAA4C,wEAE5CC,EAAwC,yEAExC,IAAIC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAGJ,SAAS,uBAAwB,IAAM,CACrC,WAAW,IAAM,CACfN,EAAS,IAAI,gCACX,CAAC,EACD,8BACF,EACAC,EAAuB,IAAI,4BAA0B,CAAC,CAAc,EACpEC,EAAa,IAAI,2BAAyBD,CAAoB,EAC9DE,EAA0B,IAAI,iCAC5B,CAAC,CACH,EACAC,EAAgB,IAAI,8BAA4BD,CAAuB,EACvEE,EAAiB,IAAI,8BAA4B,IAAML,CAAM,EAC7DM,EAAmB,IAAI,yBACzB,CAAC,EAED,GAAG,wCAAyC,IAAM,CAE/B,CAAC,GAAG,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,IAAKC,GAAO,CACjD,MAAMC,KAAU,4BACd,CAAE,GAAID,EAAG,SAAS,CAAE,EACpB,IAAMP,EACNE,EACAE,EACA,0CACF,EACA,UAAG,MAAMI,EAAS,OAAO,EAClBA,CACT,CAAC,EACQ,QAASA,GAAYH,EAAe,iBAAiBG,CAAO,CAAC,EACtD,IAAI,uBAAqBH,EAAgBC,CAAgB,EAEjE,QAAQ,EAEhB,UAAWE,KAAWH,EAAe,kBAAkB,EACrD,OAAOG,EAAQ,KAAK,EAAE,iBAAiB,CAE3C,CAAC,CACH,CAAC",
|
6
|
+
"names": ["import_DeviceSessionRefresherConst", "import_DeviceSession", "import_DefaultDeviceSessionService", "import_CloseSessionsUseCase", "import_DefaultLoggerPublisherService", "import_AxiosManagerApiDataSource", "import_DefaultManagerApiService", "import_DefaultSecureChannelDataSource", "import_DefaultSecureChannelService", "import_DefaultTransportService", "logger", "managerApiDataSource", "managerApi", "secureChannelDataSource", "secureChannel", "sessionService", "transportService", "id", "session"]
|
7
7
|
}
|
@@ -1,2 +1,2 @@
|
|
1
|
-
"use strict";var u=require("../../device-session/model/DeviceSession.stub"),
|
1
|
+
"use strict";var u=require("../../device-session/data/DeviceSessionRefresherConst"),p=require("../../device-session/model/DeviceSession.stub"),f=require("../../device-session/model/Errors"),l=require("../../device-session/service/DefaultDeviceSessionService"),v=require("../../logger-publisher/service/DefaultLoggerPublisherService"),D=require("../../manager-api/data/AxiosManagerApiDataSource"),d=require("../../manager-api/service/DefaultManagerApiService"),g=require("../../secure-channel/data/DefaultSecureChannelDataSource"),h=require("../../secure-channel/service/DefaultSecureChannelService"),s=require("./GetDeviceSessionStateUseCase");vi.mock("@internal/manager-api/data/AxiosManagerApiDataSource");let r,o,n,c,S,m;const t="fakeSessionId";describe("GetDeviceSessionStateUseCase",()=>{beforeEach(()=>{r=new v.DefaultLoggerPublisherService([],"get-connected-device-use-case-test"),n=new D.AxiosManagerApiDataSource({}),c=new d.DefaultManagerApiService(n),S=new g.DefaultSecureChannelDataSource({}),m=new h.DefaultSecureChannelService(S),o=new l.DefaultDeviceSessionService(()=>r)}),it("should retrieve deviceSession device state",()=>{const e=(0,p.deviceSessionStubBuilder)({id:t},()=>r,c,m,u.DEVICE_SESSION_REFRESHER_DEFAULT_OPTIONS);o.addDeviceSession(e);const i=new s.GetDeviceSessionStateUseCase(o,()=>r).execute({sessionId:t}),C=e.state;e.close(),expect(i).toStrictEqual(C)}),it("should throw error when deviceSession is not found",()=>new Promise(e=>{const a=new s.GetDeviceSessionStateUseCase(o,()=>r);try{a.execute({sessionId:t}).subscribe()}catch(i){expect(i).toBeInstanceOf(f.DeviceSessionNotFound),e()}}))});
|
2
2
|
//# sourceMappingURL=GetDeviceSessionStateUseCase.test.js.map
|